@alauda/ui 6.4.2-beta.7 → 6.4.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 (200) hide show
  1. package/autocomplete/autocomplete.module.d.ts +4 -5
  2. package/button/button.component.d.ts +0 -1
  3. package/card/helper-directives.d.ts +2 -1
  4. package/checkbox/checkbox.component.d.ts +2 -2
  5. package/dialog/confirm-dialog/confirm-dialog-config.d.ts +2 -1
  6. package/dialog/confirm-dialog/confirm-dialog.component.d.ts +2 -0
  7. package/dropdown/dropdown.directive.d.ts +0 -1
  8. package/esm2020/accordion/accordion-item/accordion-item.component.mjs +9 -9
  9. package/esm2020/accordion/accordion.component.mjs +3 -3
  10. package/esm2020/accordion/accordion.module.mjs +4 -4
  11. package/esm2020/anchor/anchor.component.mjs +6 -6
  12. package/esm2020/anchor/anchor.directive.mjs +9 -9
  13. package/esm2020/anchor/anchor.module.mjs +4 -4
  14. package/esm2020/autocomplete/autocomplete-placeholder.component.mjs +3 -3
  15. package/esm2020/autocomplete/autocomplete.component.mjs +4 -4
  16. package/esm2020/autocomplete/autocomplete.directive.mjs +13 -8
  17. package/esm2020/autocomplete/autocomplete.module.mjs +6 -9
  18. package/esm2020/autocomplete/helper-directives.mjs +3 -3
  19. package/esm2020/autocomplete/suggestion/suggestion.component.mjs +5 -6
  20. package/esm2020/autocomplete/suggestion-group/suggestion-group.component.mjs +3 -3
  21. package/esm2020/back-top/back-top.component.mjs +3 -3
  22. package/esm2020/back-top/back-top.module.mjs +4 -4
  23. package/esm2020/breadcrumb/breadcrumb-item.component.mjs +3 -3
  24. package/esm2020/breadcrumb/breadcrumb.component.mjs +3 -3
  25. package/esm2020/breadcrumb/breadcrumb.module.mjs +4 -4
  26. package/esm2020/button/button-group/button-group.component.mjs +3 -3
  27. package/esm2020/button/button.component.mjs +6 -13
  28. package/esm2020/button/button.module.mjs +4 -4
  29. package/esm2020/card/card.component.mjs +4 -4
  30. package/esm2020/card/card.module.mjs +4 -4
  31. package/esm2020/card/helper-directives.mjs +18 -12
  32. package/esm2020/card/section.component.mjs +4 -4
  33. package/esm2020/checkbox/checkbox-group/checkbox-group.component.mjs +3 -3
  34. package/esm2020/checkbox/checkbox.component.mjs +10 -13
  35. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  36. package/esm2020/color-picker/color-picker.component.mjs +3 -3
  37. package/esm2020/color-picker/color-picker.module.mjs +4 -4
  38. package/esm2020/date-picker/calendar/date-picker-panel/component.mjs +3 -3
  39. package/esm2020/date-picker/calendar/footer/component.mjs +3 -3
  40. package/esm2020/date-picker/calendar/header/component.mjs +3 -3
  41. package/esm2020/date-picker/calendar/panel/picker-panel.mjs +3 -3
  42. package/esm2020/date-picker/calendar/range-picker-panel/component.mjs +3 -3
  43. package/esm2020/date-picker/date-picker/date-picker.component.mjs +3 -3
  44. package/esm2020/date-picker/date-picker.module.mjs +4 -4
  45. package/esm2020/date-picker/range-picker/range-picker.component.mjs +3 -3
  46. package/esm2020/date-picker/trigger/trigger.component.mjs +3 -3
  47. package/esm2020/dialog/confirm-dialog/confirm-dialog-config.mjs +1 -1
  48. package/esm2020/dialog/confirm-dialog/confirm-dialog.component.mjs +8 -6
  49. package/esm2020/dialog/dialog-content/dialog-close.directive.mjs +3 -3
  50. package/esm2020/dialog/dialog-content/dialog-content.component.mjs +3 -3
  51. package/esm2020/dialog/dialog-content/dialog-footer.component.mjs +3 -3
  52. package/esm2020/dialog/dialog-content/dialog-header.component.mjs +3 -3
  53. package/esm2020/dialog/dialog.component.mjs +5 -5
  54. package/esm2020/dialog/dialog.module.mjs +4 -4
  55. package/esm2020/dialog/dialog.service.mjs +3 -3
  56. package/esm2020/drawer/component/drawer.component.mjs +3 -3
  57. package/esm2020/drawer/component/helper-directives.mjs +9 -9
  58. package/esm2020/drawer/drawer.module.mjs +4 -4
  59. package/esm2020/drawer/drawer.service.mjs +3 -3
  60. package/esm2020/dropdown/dropdown-active.directive.mjs +3 -3
  61. package/esm2020/dropdown/dropdown-button/dropdown-button.component.mjs +5 -5
  62. package/esm2020/dropdown/dropdown.directive.mjs +6 -14
  63. package/esm2020/dropdown/dropdown.module.mjs +4 -4
  64. package/esm2020/dropdown/helper-directives.mjs +3 -3
  65. package/esm2020/dropdown/menu/menu-content.directive.mjs +3 -3
  66. package/esm2020/dropdown/menu/menu.component.mjs +3 -3
  67. package/esm2020/dropdown/menu-group/menu-group.component.mjs +3 -3
  68. package/esm2020/dropdown/menu-item/menu-item.component.mjs +3 -3
  69. package/esm2020/dropdown/submenu/submenu.component.mjs +3 -3
  70. package/esm2020/form/common-form.mjs +7 -16
  71. package/esm2020/form/form-item/form-item.component.mjs +3 -3
  72. package/esm2020/form/form.directive.mjs +3 -3
  73. package/esm2020/form/form.module.mjs +4 -4
  74. package/esm2020/form/helper-directives.mjs +15 -15
  75. package/esm2020/i18n/i18n.module.mjs +4 -4
  76. package/esm2020/i18n/i18n.pipe.mjs +3 -3
  77. package/esm2020/i18n/i18n.service.mjs +3 -3
  78. package/esm2020/icon/icon-register.service.mjs +3 -3
  79. package/esm2020/icon/icon.component.mjs +5 -8
  80. package/esm2020/icon/icon.module.mjs +4 -4
  81. package/esm2020/inline-alert/helper-directives.mjs +3 -3
  82. package/esm2020/inline-alert/inline-alert.component.mjs +3 -3
  83. package/esm2020/inline-alert/inline-alert.module.mjs +4 -4
  84. package/esm2020/input/autosize.directive.mjs +3 -3
  85. package/esm2020/input/helper-directives.mjs +12 -12
  86. package/esm2020/input/input-group/input-group.component.mjs +3 -3
  87. package/esm2020/input/input.component.mjs +6 -15
  88. package/esm2020/input/input.module.mjs +4 -4
  89. package/esm2020/input/number-input/number-input.component.mjs +3 -3
  90. package/esm2020/input/search/search.component.mjs +3 -3
  91. package/esm2020/input/tags-input/tags-input.component.mjs +9 -9
  92. package/esm2020/message/message-wrapper.component.mjs +3 -3
  93. package/esm2020/message/message.component.mjs +3 -3
  94. package/esm2020/message/message.module.mjs +4 -4
  95. package/esm2020/message/message.service.mjs +3 -3
  96. package/esm2020/notification/notification-wrapper.component.mjs +3 -3
  97. package/esm2020/notification/notification.component.mjs +5 -5
  98. package/esm2020/notification/notification.module.mjs +4 -4
  99. package/esm2020/notification/notification.service.mjs +3 -3
  100. package/esm2020/paginator/paginator-intl.mjs +3 -3
  101. package/esm2020/paginator/paginator.component.mjs +4 -4
  102. package/esm2020/paginator/paginator.module.mjs +4 -4
  103. package/esm2020/radio/base-radio.mjs +5 -11
  104. package/esm2020/radio/radio-button/radio-button.component.mjs +3 -3
  105. package/esm2020/radio/radio-group/radio-group.component.mjs +3 -3
  106. package/esm2020/radio/radio.component.mjs +3 -3
  107. package/esm2020/radio/radio.module.mjs +4 -4
  108. package/esm2020/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +3 -3
  109. package/esm2020/scrolling/fixed-size-table-virtual-scroll.directive.mjs +3 -3
  110. package/esm2020/scrolling/fixed-size-virtual-scroll.directive.mjs +3 -3
  111. package/esm2020/scrolling/scrolling.module.mjs +4 -4
  112. package/esm2020/scrolling/virtual-for-of.directive.mjs +3 -3
  113. package/esm2020/scrolling/virtual-scroll-viewport.component.mjs +3 -3
  114. package/esm2020/select/base-select.mjs +3 -3
  115. package/esm2020/select/helper-directives.mjs +6 -6
  116. package/esm2020/select/multi-select/multi-select.component.mjs +9 -9
  117. package/esm2020/select/option/option.component.mjs +5 -11
  118. package/esm2020/select/option-group/option-group.component.mjs +3 -3
  119. package/esm2020/select/option-placeholder.component.mjs +3 -3
  120. package/esm2020/select/select.component.mjs +6 -6
  121. package/esm2020/select/select.module.mjs +4 -4
  122. package/esm2020/select/validators.mjs +3 -3
  123. package/esm2020/shared/click-outside.directive.mjs +3 -3
  124. package/esm2020/shared/shared.module.mjs +4 -4
  125. package/esm2020/sort/sort-header.component.mjs +3 -3
  126. package/esm2020/sort/sort.directive.mjs +3 -3
  127. package/esm2020/sort/sort.module.mjs +4 -4
  128. package/esm2020/status-bar/status-bar.component.mjs +3 -3
  129. package/esm2020/status-bar/status-bar.module.mjs +4 -4
  130. package/esm2020/steps/steps.component.mjs +3 -3
  131. package/esm2020/steps/steps.module.mjs +4 -4
  132. package/esm2020/switch/switch.component.mjs +3 -3
  133. package/esm2020/switch/switch.module.mjs +4 -4
  134. package/esm2020/table/table-cell-def.directive.mjs +3 -3
  135. package/esm2020/table/table-cell.component.mjs +6 -6
  136. package/esm2020/table/table-cell.directive.mjs +10 -6
  137. package/esm2020/table/table-column-def.directive.mjs +3 -3
  138. package/esm2020/table/table-header-cell-def.directive.mjs +3 -3
  139. package/esm2020/table/table-header-cell.directive.mjs +3 -3
  140. package/esm2020/table/table-header-row-def.directive.mjs +3 -3
  141. package/esm2020/table/table-header-row.component.mjs +3 -3
  142. package/esm2020/table/table-placeholder.directive.mjs +6 -6
  143. package/esm2020/table/table-row-def.directive.mjs +3 -3
  144. package/esm2020/table/table-row.component.mjs +3 -3
  145. package/esm2020/table/table-scroll.directive.mjs +17 -9
  146. package/esm2020/table/table.component.mjs +5 -5
  147. package/esm2020/table/table.module.mjs +4 -4
  148. package/esm2020/table-of-contents/table-of-contents.module.mjs +4 -4
  149. package/esm2020/table-of-contents/toc-container.directive.mjs +3 -3
  150. package/esm2020/table-of-contents/toc-content.directive.mjs +3 -3
  151. package/esm2020/table-of-contents/toc-link.directive.mjs +3 -3
  152. package/esm2020/tabs/tab-body.component.mjs +21 -21
  153. package/esm2020/tabs/tab-context.service.mjs +3 -3
  154. package/esm2020/tabs/tab-group.component.mjs +3 -3
  155. package/esm2020/tabs/tab-header-active-indicator.component.mjs +3 -3
  156. package/esm2020/tabs/tab-header.component.mjs +3 -3
  157. package/esm2020/tabs/tab.component.mjs +3 -3
  158. package/esm2020/tabs/tabs.module.mjs +4 -4
  159. package/esm2020/tag/check-tag/check-tag.component.mjs +4 -4
  160. package/esm2020/tag/tag.component.mjs +3 -3
  161. package/esm2020/tag/tag.module.mjs +4 -4
  162. package/esm2020/theme/theme.module.mjs +4 -4
  163. package/esm2020/theme/theme.pipe.mjs +12 -12
  164. package/esm2020/theme/theme.service.mjs +3 -3
  165. package/esm2020/time-picker/component.mjs +3 -3
  166. package/esm2020/time-picker/panel/panel.component.mjs +9 -9
  167. package/esm2020/time-picker/time-picker.module.mjs +4 -4
  168. package/esm2020/tooltip/base-tooltip.mjs +3 -3
  169. package/esm2020/tooltip/tooltip-active.directive.mjs +3 -3
  170. package/esm2020/tooltip/tooltip-copy.directive.mjs +3 -3
  171. package/esm2020/tooltip/tooltip-intl.mjs +3 -3
  172. package/esm2020/tooltip/tooltip.component.mjs +3 -3
  173. package/esm2020/tooltip/tooltip.directive.mjs +3 -3
  174. package/esm2020/tooltip/tooltip.module.mjs +4 -4
  175. package/esm2020/tree-select/tree-node-placeholder.component.mjs +3 -3
  176. package/esm2020/tree-select/tree-select.component.mjs +11 -11
  177. package/esm2020/tree-select/tree-select.module.mjs +4 -4
  178. package/esm2020/utils/fn.mjs +2 -10
  179. package/esm2020/utils/index.mjs +1 -2
  180. package/esm2020/utils/operators.mjs +15 -12
  181. package/fesm2015/alauda-ui.mjs +747 -810
  182. package/fesm2015/alauda-ui.mjs.map +1 -1
  183. package/fesm2020/alauda-ui.mjs +747 -810
  184. package/fesm2020/alauda-ui.mjs.map +1 -1
  185. package/form/common-form.d.ts +2 -4
  186. package/input/input.component.d.ts +0 -1
  187. package/input/tags-input/tags-input.component.d.ts +1 -1
  188. package/package.json +1 -1
  189. package/radio/base-radio.d.ts +0 -1
  190. package/select/multi-select/multi-select.component.d.ts +1 -1
  191. package/select/option/option.component.d.ts +0 -1
  192. package/table/table-cell.directive.d.ts +2 -1
  193. package/table/table-scroll.directive.d.ts +2 -1
  194. package/theme/_mixin.scss +4 -0
  195. package/time-picker/panel/panel.component.d.ts +1 -1
  196. package/utils/fn.d.ts +1 -1
  197. package/utils/index.d.ts +0 -1
  198. package/utils/operators.d.ts +7 -8
  199. package/esm2020/utils/e2e-attribute-binding.directive.mjs +0 -34
  200. package/utils/e2e-attribute-binding.directive.d.ts +0 -10
@@ -5,12 +5,11 @@ import * as i3 from "./suggestion/suggestion.component";
5
5
  import * as i4 from "./autocomplete-placeholder.component";
6
6
  import * as i5 from "./suggestion-group/suggestion-group.component";
7
7
  import * as i6 from "./helper-directives";
8
- import * as i7 from "../utils/e2e-attribute-binding.directive";
9
- import * as i8 from "@angular/common";
10
- import * as i9 from "@angular/cdk/overlay";
11
- import * as i10 from "../tooltip/tooltip.module";
8
+ import * as i7 from "@angular/common";
9
+ import * as i8 from "@angular/cdk/overlay";
10
+ import * as i9 from "../tooltip/tooltip.module";
12
11
  export declare class AutocompleteModule {
13
12
  static ɵfac: i0.ɵɵFactoryDeclaration<AutocompleteModule, never>;
14
- static ɵmod: i0.ɵɵNgModuleDeclaration<AutocompleteModule, [typeof i1.AutoCompleteDirective, typeof i1.CustomAutoCompleteDirective, typeof i2.AutocompleteComponent, typeof i3.SuggestionComponent, typeof i4.AutocompletePlaceholderComponent, typeof i5.SuggestionGroupComponent, typeof i6.SuggestionGroupTitleDirective, typeof i7.E2eAttributeBindingDirective], [typeof i8.CommonModule, typeof i9.OverlayModule, typeof i10.TooltipModule], [typeof i1.AutoCompleteDirective, typeof i1.CustomAutoCompleteDirective, typeof i2.AutocompleteComponent, typeof i3.SuggestionComponent, typeof i4.AutocompletePlaceholderComponent, typeof i5.SuggestionGroupComponent, typeof i6.SuggestionGroupTitleDirective]>;
13
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AutocompleteModule, [typeof i1.AutoCompleteDirective, typeof i1.CustomAutoCompleteDirective, typeof i2.AutocompleteComponent, typeof i3.SuggestionComponent, typeof i4.AutocompletePlaceholderComponent, typeof i5.SuggestionGroupComponent, typeof i6.SuggestionGroupTitleDirective], [typeof i7.CommonModule, typeof i8.OverlayModule, typeof i9.TooltipModule], [typeof i1.AutoCompleteDirective, typeof i1.CustomAutoCompleteDirective, typeof i2.AutocompleteComponent, typeof i3.SuggestionComponent, typeof i4.AutocompletePlaceholderComponent, typeof i5.SuggestionGroupComponent, typeof i6.SuggestionGroupTitleDirective]>;
15
14
  static ɵinj: i0.ɵɵInjectorDeclaration<AutocompleteModule>;
16
15
  }
@@ -7,7 +7,6 @@ export declare class ButtonComponent implements OnDestroy {
7
7
  private readonly el;
8
8
  private readonly renderer;
9
9
  private readonly focusMonitor;
10
- get testId(): string;
11
10
  get type(): ButtonType;
12
11
  set type(val: ButtonType);
13
12
  get size(): ComponentSize;
@@ -1,7 +1,8 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class CardHeaderDirective {
3
+ size: 'default' | 'secondary';
3
4
  static ɵfac: i0.ɵɵFactoryDeclaration<CardHeaderDirective, never>;
4
- static ɵdir: i0.ɵɵDirectiveDeclaration<CardHeaderDirective, "[auiCardHeader]", never, {}, {}, never>;
5
+ static ɵdir: i0.ɵɵDirectiveDeclaration<CardHeaderDirective, "[auiCardHeader]", never, { "size": "size"; }, {}, never>;
5
6
  }
6
7
  export declare class CardFooterDirective {
7
8
  static ɵfac: i0.ɵɵFactoryDeclaration<CardFooterDirective, never>;
@@ -18,11 +18,11 @@ export declare class CheckboxComponent<T> extends CommonFormControl<boolean> imp
18
18
  private readonly label$$;
19
19
  private _indeterminate;
20
20
  private readonly destroy$$;
21
- constructor(cdr: ChangeDetectorRef, checkboxGroup: CheckboxGroupComponent<T>, focusMonitor: FocusMonitor, elementRef: ElementRef);
21
+ constructor(cdr: ChangeDetectorRef, checkboxGroup: CheckboxGroupComponent<T>, focusMonitor: FocusMonitor);
22
22
  ngAfterViewInit(): void;
23
23
  ngOnDestroy(): void;
24
24
  onClick(): void;
25
25
  onBlur(): void;
26
- static ɵfac: i0.ɵɵFactoryDeclaration<CheckboxComponent<any>, [null, { optional: true; }, null, null]>;
26
+ static ɵfac: i0.ɵɵFactoryDeclaration<CheckboxComponent<any>, [null, { optional: true; }, null]>;
27
27
  static ɵcmp: i0.ɵɵComponentDeclaration<CheckboxComponent<any>, "aui-checkbox", never, { "name": "name"; "type": "type"; "label": "label"; "indeterminate": "indeterminate"; }, {}, never, ["*"]>;
28
28
  }
@@ -1,7 +1,8 @@
1
+ import { TemplateRef, Type } from '@angular/core';
1
2
  import { BeforeAction, ConfirmType } from '../dialog.types';
2
3
  export declare class ConfirmDialogConfig<T = unknown, R = unknown> {
3
4
  title: string;
4
- content?: string;
5
+ content?: string | TemplateRef<any> | Type<any>;
5
6
  cancelButton?: boolean;
6
7
  confirmType?: ConfirmType;
7
8
  confirmText?: string;
@@ -11,6 +11,8 @@ export declare class ConfirmDialogComponent<T = unknown, R = unknown> {
11
11
  config: ConfirmDialogConfig<T, R>;
12
12
  waitConfirm: boolean;
13
13
  waitCancel: boolean;
14
+ isTemplateRef: (label: any) => label is import("@angular/core").TemplateRef<unknown>;
15
+ isString: (label: any) => label is string;
14
16
  constructor(dialogRef: DialogRef<any>, cdr: ChangeDetectorRef);
15
17
  setConfig(config: ConfirmDialogConfig<T, R>): void;
16
18
  iconMap(type: ConfirmType): "check_circle_s" | "exclamation_triangle_s" | "exclamation_circle_s";
@@ -4,7 +4,6 @@ import { BaseTooltip } from '../tooltip';
4
4
  import { MenuComponent } from './menu/menu.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class DropdownDirective extends BaseTooltip implements OnInit {
7
- get testId(): string;
8
7
  get menu(): MenuComponent;
9
8
  set menu(value: MenuComponent);
10
9
  lazyContentContext: any;
@@ -9,9 +9,9 @@ import * as i3 from "../../icon/icon.component";
9
9
  import * as i4 from "@angular/common";
10
10
  export class AccordionItemHeaderDirective {
11
11
  }
12
- AccordionItemHeaderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionItemHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13
- AccordionItemHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AccordionItemHeaderDirective, selector: "[auiAccordionItemHeader]", ngImport: i0 });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionItemHeaderDirective, decorators: [{
12
+ AccordionItemHeaderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionItemHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13
+ AccordionItemHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: AccordionItemHeaderDirective, selector: "[auiAccordionItemHeader]", ngImport: i0 });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionItemHeaderDirective, decorators: [{
15
15
  type: Directive,
16
16
  args: [{
17
17
  selector: '[auiAccordionItemHeader]',
@@ -19,9 +19,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
19
19
  }] });
20
20
  export class AccordionItemContentDirective {
21
21
  }
22
- AccordionItemContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionItemContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
23
- AccordionItemContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AccordionItemContentDirective, selector: "[auiAccordionContent]", ngImport: i0 });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionItemContentDirective, decorators: [{
22
+ AccordionItemContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionItemContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
23
+ AccordionItemContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: AccordionItemContentDirective, selector: "[auiAccordionContent]", ngImport: i0 });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionItemContentDirective, decorators: [{
25
25
  type: Directive,
26
26
  args: [{
27
27
  selector: '[auiAccordionContent]',
@@ -44,15 +44,15 @@ export class AccordionItemComponent extends CdkAccordionItem {
44
44
  }
45
45
  }
46
46
  }
47
- AccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionItemComponent, deps: [{ token: i1.AccordionComponent }, { token: i0.ChangeDetectorRef }, { token: i2.UniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component });
48
- AccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: AccordionItemComponent, selector: "aui-accordion-item", inputs: { background: "background" }, queries: [{ propertyName: "_lazyContentTpl", first: true, predicate: AccordionItemContentDirective, descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"aui-accordion-item\">\n <div class=\"aui-accordion-item__header\">\n <button\n type=\"button\"\n class=\"aui-accordion-item__expand-button\"\n [class.isExpanded]=\"expanded\"\n [disabled]=\"disabled\"\n (click)=\"toggle()\"\n >\n <aui-icon icon=\"angle_right\"></aui-icon>\n </button>\n <div\n class=\"aui-accordion-item__header-content\"\n [class.aui-accordion-item__header-content--expanded]=\"expanded\"\n >\n <ng-content select=\"[auiAccordionItemHeader]\"></ng-content>\n </div>\n </div>\n <div\n *ngIf=\"expanded\"\n class=\"aui-accordion-item__body\"\n [id]=\"id\"\n [@expand]=\"expanded ? 'expanded' : 'collapsed'\"\n >\n <div\n class=\"aui-accordion-item__content\"\n [class.hasBackground]=\"background\"\n >\n <ng-content></ng-content>\n <ng-template [ngTemplateOutlet]=\"lazyContentTpl\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [".aui-accordion-item{display:block;padding:20px;border:1px solid rgb(var(--aui-color-n-7));border-radius:var(--aui-border-radius-l);background-color:rgb(var(--aui-color-n-10))}.aui-accordion-item__expand-button{display:inline-flex;justify-content:center;align-items:center;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m);font-size:var(--aui-icon-size-m);line-height:var(--aui-icon-size-m);color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6));border-radius:50%;border:none;cursor:pointer;transition:transform .1s ease-in-out}.aui-accordion-item__expand-button aui-icon{display:block;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m)}.aui-accordion-item__expand-button:hover{background-color:rgb(var(--aui-color-p-7))}.aui-accordion-item__expand-button:active{background-color:rgb(var(--aui-color-p-5))}.aui-accordion-item__expand-button.isExpanded{transform:rotate(90deg);color:#fff;background-color:rgb(var(--aui-color-primary))}.aui-accordion-item__expand-button.isExpanded:hover{background-color:rgb(var(--aui-color-p-1))}.aui-accordion-item__expand-button.isExpanded:active{background-color:rgb(var(--aui-color-p-0))}.aui-accordion-item__expand-button[disabled],.aui-accordion-item__expand-button.isExpanded[disabled]{background-color:rgb(var(--aui-color-n-8));color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-accordion-item__expand-button:first-child{margin-right:20px}.aui-accordion-item__expand-button:last-child{margin-left:20px}.aui-accordion-item__header{display:inline-flex;align-items:center;width:100%;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);color:rgb(var(--aui-color-main-text))}.aui-accordion-item__header-content{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-accordion-item__body{border-radius:var(--aui-border-radius-l);overflow:hidden}.aui-accordion-item__content{margin-top:16px;border-radius:var(--aui-border-radius-l);overflow:hidden}.aui-accordion-item__content.hasBackground{padding:16px;background-color:rgb(var(--aui-color-n-9))}aui-accordion-item+aui-accordion-item .aui-accordion-item{margin-top:var(--aui-spacing-m)}\n"], components: [{ type: i3.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], viewProviders: [AccordionItemComponent], animations: [
47
+ AccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionItemComponent, deps: [{ token: i1.AccordionComponent }, { token: i0.ChangeDetectorRef }, { token: i2.UniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component });
48
+ AccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: AccordionItemComponent, selector: "aui-accordion-item", inputs: { background: "background" }, queries: [{ propertyName: "_lazyContentTpl", first: true, predicate: AccordionItemContentDirective, descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"aui-accordion-item\">\n <div class=\"aui-accordion-item__header\">\n <button\n type=\"button\"\n class=\"aui-accordion-item__expand-button\"\n [class.isExpanded]=\"expanded\"\n [disabled]=\"disabled\"\n (click)=\"toggle()\"\n >\n <aui-icon icon=\"angle_right\"></aui-icon>\n </button>\n <div\n class=\"aui-accordion-item__header-content\"\n [class.aui-accordion-item__header-content--expanded]=\"expanded\"\n >\n <ng-content select=\"[auiAccordionItemHeader]\"></ng-content>\n </div>\n </div>\n <div\n *ngIf=\"expanded\"\n class=\"aui-accordion-item__body\"\n [id]=\"id\"\n [@expand]=\"expanded ? 'expanded' : 'collapsed'\"\n >\n <div\n class=\"aui-accordion-item__content\"\n [class.hasBackground]=\"background\"\n >\n <ng-content></ng-content>\n <ng-template [ngTemplateOutlet]=\"lazyContentTpl\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [".aui-accordion-item{display:block;padding:20px;border:1px solid rgb(var(--aui-color-n-7));border-radius:var(--aui-border-radius-l);background-color:rgb(var(--aui-color-n-10))}.aui-accordion-item__expand-button{display:inline-flex;justify-content:center;align-items:center;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m);font-size:var(--aui-icon-size-m);line-height:var(--aui-icon-size-m);color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6));border-radius:50%;border:none;cursor:pointer;transition:transform .1s ease-in-out}.aui-accordion-item__expand-button aui-icon{display:block;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m)}.aui-accordion-item__expand-button:hover{background-color:rgb(var(--aui-color-p-7))}.aui-accordion-item__expand-button:active{background-color:rgb(var(--aui-color-p-5))}.aui-accordion-item__expand-button.isExpanded{transform:rotate(90deg);color:#fff;background-color:rgb(var(--aui-color-primary))}.aui-accordion-item__expand-button.isExpanded:hover{background-color:rgb(var(--aui-color-p-1))}.aui-accordion-item__expand-button.isExpanded:active{background-color:rgb(var(--aui-color-p-0))}.aui-accordion-item__expand-button[disabled],.aui-accordion-item__expand-button.isExpanded[disabled]{background-color:rgb(var(--aui-color-n-8));color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-accordion-item__expand-button:first-child{margin-right:20px}.aui-accordion-item__expand-button:last-child{margin-left:20px}.aui-accordion-item__header{display:inline-flex;align-items:center;width:100%;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);color:rgb(var(--aui-color-main-text))}.aui-accordion-item__header-content{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-accordion-item__body{border-radius:var(--aui-border-radius-l);overflow:hidden}.aui-accordion-item__content{margin-top:16px;border-radius:var(--aui-border-radius-l);overflow:hidden}.aui-accordion-item__content.hasBackground{padding:16px;background-color:rgb(var(--aui-color-n-9))}aui-accordion-item+aui-accordion-item .aui-accordion-item{margin-top:var(--aui-spacing-m)}\n"], components: [{ type: i3.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], viewProviders: [AccordionItemComponent], animations: [
49
49
  trigger('expand', [
50
50
  state('*', style({ height: 0 })),
51
51
  state('expanded', style({ height: '*' })),
52
52
  transition('* <=> expanded', [animate('0.1s ease-in-out')]),
53
53
  ]),
54
54
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionItemComponent, decorators: [{
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionItemComponent, decorators: [{
56
56
  type: Component,
57
57
  args: [{ selector: 'aui-accordion-item', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, animations: [
58
58
  trigger('expand', [
@@ -9,9 +9,9 @@ export class AccordionComponent extends CdkAccordion {
9
9
  this.depth = parent ? parent.depth + 1 : 0;
10
10
  }
11
11
  }
12
- AccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionComponent, deps: [{ token: AccordionComponent, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
13
- AccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: AccordionComponent, selector: "aui-accordion", inputs: { background: "background" }, host: { properties: { "attr.accordion-depth": "this.depth" } }, usesInheritance: true, ngImport: i0, template: "<div\n class=\"aui-accordion\"\n [class.hasBg]=\"background\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".aui-accordion.hasBg{padding:12px;border-radius:var(--aui-border-radius-l);background-color:rgb(var(--aui-color-n-9))}aui-accordion+aui-accordion .aui-accordion{margin-top:var(--aui-spacing-xl)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionComponent, decorators: [{
12
+ AccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionComponent, deps: [{ token: AccordionComponent, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
13
+ AccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: AccordionComponent, selector: "aui-accordion", inputs: { background: "background" }, host: { properties: { "attr.accordion-depth": "this.depth" } }, usesInheritance: true, ngImport: i0, template: "<div\n class=\"aui-accordion\"\n [class.hasBg]=\"background\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".aui-accordion.hasBg{padding:12px;border-radius:var(--aui-border-radius-l);background-color:rgb(var(--aui-color-n-9))}aui-accordion+aui-accordion .aui-accordion{margin-top:var(--aui-spacing-xl)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionComponent, decorators: [{
15
15
  type: Component,
16
16
  args: [{ selector: 'aui-accordion', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, template: "<div\n class=\"aui-accordion\"\n [class.hasBg]=\"background\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".aui-accordion.hasBg{padding:12px;border-radius:var(--aui-border-radius-l);background-color:rgb(var(--aui-color-n-9))}aui-accordion+aui-accordion .aui-accordion{margin-top:var(--aui-spacing-xl)}\n"] }]
17
17
  }], ctorParameters: function () { return [{ type: AccordionComponent, decorators: [{
@@ -8,16 +8,16 @@ import { AccordionComponent } from './accordion.component';
8
8
  import * as i0 from "@angular/core";
9
9
  export class AccordionModule {
10
10
  }
11
- AccordionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- AccordionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionModule, declarations: [AccordionComponent,
11
+ AccordionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ AccordionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionModule, declarations: [AccordionComponent,
13
13
  AccordionItemComponent,
14
14
  AccordionItemHeaderDirective,
15
15
  AccordionItemContentDirective], imports: [CommonModule, CdkAccordionModule, IconModule, ButtonModule], exports: [AccordionComponent,
16
16
  AccordionItemComponent,
17
17
  AccordionItemHeaderDirective,
18
18
  AccordionItemContentDirective] });
19
- AccordionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionModule, providers: [], imports: [[CommonModule, CdkAccordionModule, IconModule, ButtonModule]] });
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AccordionModule, decorators: [{
19
+ AccordionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionModule, providers: [], imports: [[CommonModule, CdkAccordionModule, IconModule, ButtonModule]] });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AccordionModule, decorators: [{
21
21
  type: NgModule,
22
22
  args: [{
23
23
  declarations: [
@@ -53,9 +53,9 @@ export class AnchorTreeComponent extends AnchorDirectiveChild {
53
53
  return item.id;
54
54
  }
55
55
  }
56
- AnchorTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorTreeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
57
- AnchorTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: AnchorTreeComponent, selector: "aui-anchor-tree", inputs: { treeItems: "treeItems", activeId: "activeId" }, outputs: { activeIdChange: "activeIdChange" }, usesInheritance: true, ngImport: i0, template: "<div\n [class]=\"bem.element('item')\"\n [class.active]=\"isActive(item)\"\n *ngFor=\"let item of treeItems; trackBy: trackById\"\n>\n <a\n *ngIf=\"item.label as label\"\n [href]=\"parent.injectId ? '#' + item.id : undefined\"\n (click)=\"onItemClick($event, item)\"\n >\n <ng-container *ngIf=\"isTemplateRef(label); else plain\">\n <ng-container\n *ngTemplateOutlet=\"label; context: item.labelContext\"\n ></ng-container>\n </ng-container>\n <ng-template #plain>\n {{ item.label }}\n </ng-template>\n </a>\n <aui-anchor-tree\n *ngIf=\"item.children?.length\"\n [treeItems]=\"item.children\"\n [(activeId)]=\"activeId\"\n ></aui-anchor-tree>\n</div>\n", components: [{ type: AnchorTreeComponent, selector: "aui-anchor-tree", inputs: ["treeItems", "activeId"], outputs: ["activeIdChange"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorTreeComponent, decorators: [{
56
+ AnchorTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorTreeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
57
+ AnchorTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: AnchorTreeComponent, selector: "aui-anchor-tree", inputs: { treeItems: "treeItems", activeId: "activeId" }, outputs: { activeIdChange: "activeIdChange" }, usesInheritance: true, ngImport: i0, template: "<div\n [class]=\"bem.element('item')\"\n [class.active]=\"isActive(item)\"\n *ngFor=\"let item of treeItems; trackBy: trackById\"\n>\n <a\n *ngIf=\"item.label as label\"\n [href]=\"parent.injectId ? '#' + item.id : undefined\"\n (click)=\"onItemClick($event, item)\"\n >\n <ng-container *ngIf=\"isTemplateRef(label); else plain\">\n <ng-container\n *ngTemplateOutlet=\"label; context: item.labelContext\"\n ></ng-container>\n </ng-container>\n <ng-template #plain>\n {{ item.label }}\n </ng-template>\n </a>\n <aui-anchor-tree\n *ngIf=\"item.children?.length\"\n [treeItems]=\"item.children\"\n [(activeId)]=\"activeId\"\n ></aui-anchor-tree>\n</div>\n", components: [{ type: AnchorTreeComponent, selector: "aui-anchor-tree", inputs: ["treeItems", "activeId"], outputs: ["activeIdChange"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorTreeComponent, decorators: [{
59
59
  type: Component,
60
60
  args: [{ selector: 'aui-anchor-tree', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n [class]=\"bem.element('item')\"\n [class.active]=\"isActive(item)\"\n *ngFor=\"let item of treeItems; trackBy: trackById\"\n>\n <a\n *ngIf=\"item.label as label\"\n [href]=\"parent.injectId ? '#' + item.id : undefined\"\n (click)=\"onItemClick($event, item)\"\n >\n <ng-container *ngIf=\"isTemplateRef(label); else plain\">\n <ng-container\n *ngTemplateOutlet=\"label; context: item.labelContext\"\n ></ng-container>\n </ng-container>\n <ng-template #plain>\n {{ item.label }}\n </ng-template>\n </a>\n <aui-anchor-tree\n *ngIf=\"item.children?.length\"\n [treeItems]=\"item.children\"\n [(activeId)]=\"activeId\"\n ></aui-anchor-tree>\n</div>\n" }]
61
61
  }], propDecorators: { treeItems: [{
@@ -123,9 +123,9 @@ export class AnchorComponent extends AnchorDirectiveChild {
123
123
  this.destroy$$.complete();
124
124
  }
125
125
  }
126
- AnchorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorComponent, deps: [{ token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
127
- AnchorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: AnchorComponent, selector: "aui-anchor", inputs: { items: "items", treeItems: "treeItems", activeId: "activeId" }, usesInheritance: true, ngImport: i0, template: "<div [class]=\"bem.block()\">\n <aui-anchor-tree\n [treeItems]=\"treeItems\"\n [(activeId)]=\"activeId\"\n ></aui-anchor-tree>\n</div>\n", styles: ["aui-anchor{display:block;position:fixed;z-index:1;white-space:nowrap}.aui-anchor{padding:30px 16px;border-left:1px solid rgb(var(--aui-color-border))}.aui-anchor:before{content:\"\";position:absolute;left:0;top:0;transform:translate(-50%,-50%);width:5px;height:5px;border-radius:50%;background-color:rgb(var(--aui-color-border))}.aui-anchor:after{content:\"\";position:absolute;left:0;bottom:0;transform:translate(-50%,50%);width:5px;height:5px;border-radius:50%;background-color:rgb(var(--aui-color-border))}.aui-anchor__label{scroll-margin-top:20px}.aui-anchor__item{position:relative;margin-bottom:12px}.aui-anchor__item:before{content:\"\";position:absolute;top:9px;left:-16px;transform:translate(-50%,-50%);box-sizing:border-box;border:1px solid rgb(var(--aui-color-help-text));width:9px;height:9px;border-radius:50%;background-color:rgb(var(--aui-color-n-1))}.aui-anchor__item a{color:rgb(var(--aui-color-main-text))}.aui-anchor__item a:hover{color:rgb(var(--aui-color-primary))}.aui-anchor__item.active:before{border:0;width:9px;height:9px;border-radius:50%;background-color:rgb(var(--aui-color-primary))}.aui-anchor__item.active a,.aui-anchor__item.active .aui-anchor__item.active a{color:rgb(var(--aui-color-primary))}.aui-anchor__item.active .aui-anchor__item:not(.active) a{color:rgb(var(--aui-color-secondary-text))}.aui-anchor__item .aui-anchor__item{margin-top:4px;margin-bottom:0;margin-left:14px;font-size:10px}.aui-anchor__item .aui-anchor__item:before{display:none}.aui-anchor__item .aui-anchor__item a{color:rgb(var(--aui-color-help-text))}.aui-anchor__item .aui-anchor__item a:hover{color:rgb(var(--aui-color-primary))}\n"], components: [{ type: AnchorTreeComponent, selector: "aui-anchor-tree", inputs: ["treeItems", "activeId"], outputs: ["activeIdChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
128
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorComponent, decorators: [{
126
+ AnchorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorComponent, deps: [{ token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
127
+ AnchorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: AnchorComponent, selector: "aui-anchor", inputs: { items: "items", treeItems: "treeItems", activeId: "activeId" }, usesInheritance: true, ngImport: i0, template: "<div [class]=\"bem.block()\">\n <aui-anchor-tree\n [treeItems]=\"treeItems\"\n [(activeId)]=\"activeId\"\n ></aui-anchor-tree>\n</div>\n", styles: ["aui-anchor{display:block;position:fixed;z-index:1;white-space:nowrap}.aui-anchor{padding:30px 16px;border-left:1px solid rgb(var(--aui-color-border))}.aui-anchor:before{content:\"\";position:absolute;left:0;top:0;transform:translate(-50%,-50%);width:5px;height:5px;border-radius:50%;background-color:rgb(var(--aui-color-border))}.aui-anchor:after{content:\"\";position:absolute;left:0;bottom:0;transform:translate(-50%,50%);width:5px;height:5px;border-radius:50%;background-color:rgb(var(--aui-color-border))}.aui-anchor__label{scroll-margin-top:20px}.aui-anchor__item{position:relative;margin-bottom:12px}.aui-anchor__item:before{content:\"\";position:absolute;top:9px;left:-16px;transform:translate(-50%,-50%);box-sizing:border-box;border:1px solid rgb(var(--aui-color-help-text));width:9px;height:9px;border-radius:50%;background-color:rgb(var(--aui-color-n-1))}.aui-anchor__item a{color:rgb(var(--aui-color-main-text))}.aui-anchor__item a:hover{color:rgb(var(--aui-color-primary))}.aui-anchor__item.active:before{border:0;width:9px;height:9px;border-radius:50%;background-color:rgb(var(--aui-color-primary))}.aui-anchor__item.active a,.aui-anchor__item.active .aui-anchor__item.active a{color:rgb(var(--aui-color-primary))}.aui-anchor__item.active .aui-anchor__item:not(.active) a{color:rgb(var(--aui-color-secondary-text))}.aui-anchor__item .aui-anchor__item{margin-top:4px;margin-bottom:0;margin-left:14px;font-size:10px}.aui-anchor__item .aui-anchor__item:before{display:none}.aui-anchor__item .aui-anchor__item a{color:rgb(var(--aui-color-help-text))}.aui-anchor__item .aui-anchor__item a:hover{color:rgb(var(--aui-color-primary))}\n"], components: [{ type: AnchorTreeComponent, selector: "aui-anchor-tree", inputs: ["treeItems", "activeId"], outputs: ["activeIdChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorComponent, decorators: [{
129
129
  type: Component,
130
130
  args: [{ selector: 'aui-anchor', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"bem.block()\">\n <aui-anchor-tree\n [treeItems]=\"treeItems\"\n [(activeId)]=\"activeId\"\n ></aui-anchor-tree>\n</div>\n", styles: ["aui-anchor{display:block;position:fixed;z-index:1;white-space:nowrap}.aui-anchor{padding:30px 16px;border-left:1px solid rgb(var(--aui-color-border))}.aui-anchor:before{content:\"\";position:absolute;left:0;top:0;transform:translate(-50%,-50%);width:5px;height:5px;border-radius:50%;background-color:rgb(var(--aui-color-border))}.aui-anchor:after{content:\"\";position:absolute;left:0;bottom:0;transform:translate(-50%,50%);width:5px;height:5px;border-radius:50%;background-color:rgb(var(--aui-color-border))}.aui-anchor__label{scroll-margin-top:20px}.aui-anchor__item{position:relative;margin-bottom:12px}.aui-anchor__item:before{content:\"\";position:absolute;top:9px;left:-16px;transform:translate(-50%,-50%);box-sizing:border-box;border:1px solid rgb(var(--aui-color-help-text));width:9px;height:9px;border-radius:50%;background-color:rgb(var(--aui-color-n-1))}.aui-anchor__item a{color:rgb(var(--aui-color-main-text))}.aui-anchor__item a:hover{color:rgb(var(--aui-color-primary))}.aui-anchor__item.active:before{border:0;width:9px;height:9px;border-radius:50%;background-color:rgb(var(--aui-color-primary))}.aui-anchor__item.active a,.aui-anchor__item.active .aui-anchor__item.active a{color:rgb(var(--aui-color-primary))}.aui-anchor__item.active .aui-anchor__item:not(.active) a{color:rgb(var(--aui-color-secondary-text))}.aui-anchor__item .aui-anchor__item{margin-top:4px;margin-bottom:0;margin-left:14px;font-size:10px}.aui-anchor__item .aui-anchor__item:before{display:none}.aui-anchor__item .aui-anchor__item a{color:rgb(var(--aui-color-help-text))}.aui-anchor__item .aui-anchor__item a:hover{color:rgb(var(--aui-color-primary))}\n"] }]
131
131
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { items: [{
@@ -12,9 +12,9 @@ export class AnchorDirectiveChild {
12
12
  this.parent = this.injector.get(AnchorDirective);
13
13
  }
14
14
  }
15
- AnchorDirectiveChild.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorDirectiveChild, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive });
16
- AnchorDirectiveChild.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AnchorDirectiveChild, ngImport: i0 });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorDirectiveChild, decorators: [{
15
+ AnchorDirectiveChild.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorDirectiveChild, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive });
16
+ AnchorDirectiveChild.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: AnchorDirectiveChild, ngImport: i0 });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorDirectiveChild, decorators: [{
18
18
  type: Directive
19
19
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
20
20
  export class AnchorLabelDirective extends AnchorDirectiveChild {
@@ -62,9 +62,9 @@ export class AnchorLabelDirective extends AnchorDirectiveChild {
62
62
  }
63
63
  }
64
64
  }
65
- AnchorLabelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorLabelDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
66
- AnchorLabelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AnchorLabelDirective, selector: "[auiAnchorLabel]", inputs: { label: ["auiAnchorLabel", "label"], labelContext: ["auiAnchorLabelContext", "labelContext"], id: "id", level: "level" }, outputs: { labelChange: "labelChange" }, host: { properties: { "class.aui-anchor__label": "this.label" } }, usesInheritance: true, ngImport: i0 });
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorLabelDirective, decorators: [{
65
+ AnchorLabelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorLabelDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
66
+ AnchorLabelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: AnchorLabelDirective, selector: "[auiAnchorLabel]", inputs: { label: ["auiAnchorLabel", "label"], labelContext: ["auiAnchorLabelContext", "labelContext"], id: "id", level: "level" }, outputs: { labelChange: "labelChange" }, host: { properties: { "class.aui-anchor__label": "this.label" } }, usesInheritance: true, ngImport: i0 });
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorLabelDirective, decorators: [{
68
68
  type: Directive,
69
69
  args: [{
70
70
  selector: '[auiAnchorLabel]',
@@ -156,9 +156,9 @@ export class AnchorDirective {
156
156
  }
157
157
  }
158
158
  }
159
- AnchorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorDirective, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }, { token: i0.ElementRef }, { token: i1.CdkScrollable, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
160
- AnchorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AnchorDirective, selector: "[auiAnchor]", inputs: { auiAnchor: "auiAnchor", adaptPosition: "adaptPosition", padding: "padding", minTop: "minTop", injectId: "injectId" }, queries: [{ propertyName: "anchorLabels", predicate: AnchorLabelDirective, descendants: true }], ngImport: i0 });
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorDirective, decorators: [{
159
+ AnchorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorDirective, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }, { token: i0.ElementRef }, { token: i1.CdkScrollable, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
160
+ AnchorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: AnchorDirective, selector: "[auiAnchor]", inputs: { auiAnchor: "auiAnchor", adaptPosition: "adaptPosition", padding: "padding", minTop: "minTop", injectId: "injectId" }, queries: [{ propertyName: "anchorLabels", predicate: AnchorLabelDirective, descendants: true }], ngImport: i0 });
161
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorDirective, decorators: [{
162
162
  type: Directive,
163
163
  args: [{
164
164
  selector: '[auiAnchor]',
@@ -5,16 +5,16 @@ import { AnchorDirective, AnchorLabelDirective } from './anchor.directive';
5
5
  import * as i0 from "@angular/core";
6
6
  export class AnchorModule {
7
7
  }
8
- AnchorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- AnchorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorModule, declarations: [AnchorComponent,
8
+ AnchorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ AnchorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorModule, declarations: [AnchorComponent,
10
10
  AnchorTreeComponent,
11
11
  AnchorDirective,
12
12
  AnchorLabelDirective], imports: [CommonModule], exports: [AnchorComponent,
13
13
  AnchorTreeComponent,
14
14
  AnchorDirective,
15
15
  AnchorLabelDirective] });
16
- AnchorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorModule, imports: [[CommonModule]] });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AnchorModule, decorators: [{
16
+ AnchorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorModule, imports: [[CommonModule]] });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AnchorModule, decorators: [{
18
18
  type: NgModule,
19
19
  args: [{
20
20
  imports: [CommonModule],
@@ -2,9 +2,9 @@ import { ChangeDetectionStrategy, Component, ViewEncapsulation, } from '@angular
2
2
  import * as i0 from "@angular/core";
3
3
  export class AutocompletePlaceholderComponent {
4
4
  }
5
- AutocompletePlaceholderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AutocompletePlaceholderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
- AutocompletePlaceholderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: AutocompletePlaceholderComponent, selector: "aui-autocomplete-placeholder", ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AutocompletePlaceholderComponent, decorators: [{
5
+ AutocompletePlaceholderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AutocompletePlaceholderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ AutocompletePlaceholderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: AutocompletePlaceholderComponent, selector: "aui-autocomplete-placeholder", ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AutocompletePlaceholderComponent, decorators: [{
8
8
  type: Component,
9
9
  args: [{
10
10
  selector: 'aui-autocomplete-placeholder',
@@ -25,11 +25,11 @@ export class AutocompleteComponent {
25
25
  ]).pipe(map(([hasVisibleSuggestion, hasPlaceholder]) => hasVisibleSuggestion || hasPlaceholder));
26
26
  }
27
27
  }
28
- AutocompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AutocompleteComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
29
- AutocompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: AutocompleteComponent, selector: "aui-autocomplete", queries: [{ propertyName: "suggestions", predicate: SuggestionComponent, descendants: true }, { propertyName: "placeholder", predicate: AutocompletePlaceholderComponent }], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }, { propertyName: "suggestionListRef", first: true, predicate: ["suggestionListRef"], descendants: true, static: true }], ngImport: i0, template: "<ng-template let-width=\"width\">\n <div\n [hidden]=\"!(hasContent$ | async)\"\n class=\"aui-autocomplete\"\n [style.minWidth]=\"width\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #suggestionListRef\n class=\"aui-autocomplete__content\"\n >\n <ng-content></ng-content>\n </div>\n <div\n [hidden]=\"hasVisibleSuggestion$ | async\"\n class=\"aui-autocomplete__placeholder\"\n >\n <ng-content select=\"aui-autocomplete-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-autocomplete{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-autocomplete__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-autocomplete__content::-webkit-scrollbar{width:4px;height:4px}.aui-autocomplete__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-autocomplete__content .divider{border:none;border-top:1px solid rgb(var(--aui-color-n-8))}.aui-autocomplete__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-autocomplete--small .aui-autocomplete__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-autocomplete--small .aui-autocomplete__placeholder{font-size:var(--aui-font-size-s)}aui-autocomplete{display:none}\n"], pipes: { "async": i1.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AutocompleteComponent, decorators: [{
28
+ AutocompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AutocompleteComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
29
+ AutocompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: AutocompleteComponent, selector: "aui-autocomplete", queries: [{ propertyName: "suggestions", predicate: SuggestionComponent, descendants: true }, { propertyName: "placeholder", predicate: AutocompletePlaceholderComponent }], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }, { propertyName: "suggestionListRef", first: true, predicate: ["suggestionListRef"], descendants: true, static: true }], ngImport: i0, template: "<ng-template let-width=\"width\">\n <div\n [hidden]=\"!(hasContent$ | async)\"\n class=\"aui-autocomplete\"\n [style.minWidth]=\"width\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #suggestionListRef\n class=\"aui-autocomplete__content\"\n >\n <ng-content></ng-content>\n </div>\n <div\n [hidden]=\"hasVisibleSuggestion$ | async\"\n class=\"aui-autocomplete__placeholder\"\n >\n <ng-content select=\"aui-autocomplete-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-autocomplete{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-autocomplete__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-autocomplete__content::-webkit-scrollbar{width:4px;height:4px}.aui-autocomplete__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-autocomplete__content::-webkit-scrollbar-corner{background-color:transparent}.aui-autocomplete__content .divider{border:none;border-top:1px solid rgb(var(--aui-color-n-8))}.aui-autocomplete__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-autocomplete--small .aui-autocomplete__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-autocomplete--small .aui-autocomplete__placeholder{font-size:var(--aui-font-size-s)}aui-autocomplete{display:none}\n"], pipes: { "async": i1.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AutocompleteComponent, decorators: [{
31
31
  type: Component,
32
- args: [{ selector: 'aui-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, template: "<ng-template let-width=\"width\">\n <div\n [hidden]=\"!(hasContent$ | async)\"\n class=\"aui-autocomplete\"\n [style.minWidth]=\"width\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #suggestionListRef\n class=\"aui-autocomplete__content\"\n >\n <ng-content></ng-content>\n </div>\n <div\n [hidden]=\"hasVisibleSuggestion$ | async\"\n class=\"aui-autocomplete__placeholder\"\n >\n <ng-content select=\"aui-autocomplete-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-autocomplete{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-autocomplete__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-autocomplete__content::-webkit-scrollbar{width:4px;height:4px}.aui-autocomplete__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-autocomplete__content .divider{border:none;border-top:1px solid rgb(var(--aui-color-n-8))}.aui-autocomplete__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-autocomplete--small .aui-autocomplete__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-autocomplete--small .aui-autocomplete__placeholder{font-size:var(--aui-font-size-s)}aui-autocomplete{display:none}\n"] }]
32
+ args: [{ selector: 'aui-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, template: "<ng-template let-width=\"width\">\n <div\n [hidden]=\"!(hasContent$ | async)\"\n class=\"aui-autocomplete\"\n [style.minWidth]=\"width\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #suggestionListRef\n class=\"aui-autocomplete__content\"\n >\n <ng-content></ng-content>\n </div>\n <div\n [hidden]=\"hasVisibleSuggestion$ | async\"\n class=\"aui-autocomplete__placeholder\"\n >\n <ng-content select=\"aui-autocomplete-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-autocomplete{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-autocomplete__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-autocomplete__content::-webkit-scrollbar{width:4px;height:4px}.aui-autocomplete__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-autocomplete__content::-webkit-scrollbar-corner{background-color:transparent}.aui-autocomplete__content .divider{border:none;border-top:1px solid rgb(var(--aui-color-n-8))}.aui-autocomplete__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-autocomplete--small .aui-autocomplete__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-autocomplete--small .aui-autocomplete__placeholder{font-size:var(--aui-font-size-s)}aui-autocomplete{display:none}\n"] }]
33
33
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { suggestions: [{
34
34
  type: ContentChildren,
35
35
  args: [SuggestionComponent, { descendants: true }]
@@ -1,5 +1,5 @@
1
1
  import { Directive, EventEmitter, Host, Input, Optional, Output, } from '@angular/core';
2
- import { BehaviorSubject, Subject, fromEvent, merge, takeUntil, debounceTime, } from 'rxjs';
2
+ import { BehaviorSubject, Subject, fromEvent, merge, takeUntil, debounceTime, startWith, } from 'rxjs';
3
3
  import { BaseTooltip, TooltipTrigger, TooltipType } from '../tooltip';
4
4
  import { scrollIntoView } from '../utils';
5
5
  import * as i0 from "@angular/core";
@@ -63,6 +63,11 @@ export class AutoCompleteDirective extends BaseTooltip {
63
63
  this.inputValue$$.next(value);
64
64
  }
65
65
  });
66
+ this.ngControl.statusChanges
67
+ .pipe(startWith(this.ngControl.status), takeUntil(this.unsubscribe$))
68
+ .subscribe(status => {
69
+ this.disabled = status === 'DISABLED';
70
+ });
66
71
  }
67
72
  }
68
73
  ngAfterViewInit() {
@@ -210,9 +215,9 @@ export class AutoCompleteDirective extends BaseTooltip {
210
215
  return suggestion?.toLowerCase().includes(inputValue?.toLowerCase() ?? '');
211
216
  }
212
217
  }
213
- AutoCompleteDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AutoCompleteDirective, deps: [{ token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i2.NgControl, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
214
- AutoCompleteDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AutoCompleteDirective, selector: "input[auiAutocomplete],textarea[auiAutocomplete]", inputs: { class: ["auiAutocompleteClass", "class"], autocomplete: ["auiAutocomplete", "autocomplete"], filterFn: "filterFn", defaultFirstSuggestion: ["auiAutocompleteDefaultFirstSuggestion", "defaultFirstSuggestion"], suggestionTrigger: ["auiAutocompleteTrigger", "suggestionTrigger"] }, outputs: { show: "auiAutocompleteShow", hide: "auiAutocompleteHide", selected: "auiAutocompleteSelected" }, host: { attributes: { "autocomplete": "off" } }, exportAs: ["auiAutocomplete"], usesInheritance: true, ngImport: i0 });
215
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AutoCompleteDirective, decorators: [{
218
+ AutoCompleteDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AutoCompleteDirective, deps: [{ token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i2.NgControl, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
219
+ AutoCompleteDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: AutoCompleteDirective, selector: "input[auiAutocomplete],textarea[auiAutocomplete]", inputs: { class: ["auiAutocompleteClass", "class"], autocomplete: ["auiAutocomplete", "autocomplete"], filterFn: "filterFn", defaultFirstSuggestion: ["auiAutocompleteDefaultFirstSuggestion", "defaultFirstSuggestion"], suggestionTrigger: ["auiAutocompleteTrigger", "suggestionTrigger"] }, outputs: { show: "auiAutocompleteShow", hide: "auiAutocompleteHide", selected: "auiAutocompleteSelected" }, host: { attributes: { "autocomplete": "off" } }, exportAs: ["auiAutocomplete"], usesInheritance: true, ngImport: i0 });
220
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: AutoCompleteDirective, decorators: [{
216
221
  type: Directive,
217
222
  args: [{
218
223
  selector: 'input[auiAutocomplete],textarea[auiAutocomplete]',
@@ -256,9 +261,9 @@ export class CustomAutoCompleteDirective extends AutoCompleteDirective {
256
261
  this.innerSelector = 'input,textarea';
257
262
  }
258
263
  }
259
- CustomAutoCompleteDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: CustomAutoCompleteDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
260
- CustomAutoCompleteDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: CustomAutoCompleteDirective, selector: "[auiAutocomplete]:not(input):not(textarea)", inputs: { class: ["auiAutocompleteClass", "class"], innerSelector: ["auiAutocompleteInnerSelector", "innerSelector"] }, host: { attributes: { "autocomplete": "off" } }, exportAs: ["auiAutocomplete"], usesInheritance: true, ngImport: i0 });
261
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: CustomAutoCompleteDirective, decorators: [{
264
+ CustomAutoCompleteDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: CustomAutoCompleteDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
265
+ CustomAutoCompleteDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: CustomAutoCompleteDirective, selector: "[auiAutocomplete]:not(input):not(textarea)", inputs: { class: ["auiAutocompleteClass", "class"], innerSelector: ["auiAutocompleteInnerSelector", "innerSelector"] }, host: { attributes: { "autocomplete": "off" } }, exportAs: ["auiAutocomplete"], usesInheritance: true, ngImport: i0 });
266
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: CustomAutoCompleteDirective, decorators: [{
262
267
  type: Directive,
263
268
  args: [{
264
269
  selector: '[auiAutocomplete]:not(input):not(textarea)',
@@ -272,4 +277,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
272
277
  type: Input,
273
278
  args: ['auiAutocompleteInnerSelector']
274
279
  }] } });
275
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBR0wsU0FBUyxFQUVULFlBQVksRUFDWixJQUFJLEVBQ0osS0FBSyxFQUlMLFFBQVEsRUFDUixNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLGVBQWUsRUFFZixPQUFPLEVBQ1AsU0FBUyxFQUNULEtBQUssRUFDTCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7QUFjMUMsTUFBTSxPQUFPLHFCQUNYLFNBQVEsV0FBZ0M7SUFpRXhDLFlBQ0UsT0FBZ0IsRUFDaEIsZ0JBQWtDLEVBQ2xDLEtBQW1DLEVBQ25DLFFBQW1CLEVBQ25CLEdBQXNCLEVBQ3RCLE1BQWMsRUFHRyxTQUFvQjtRQUVyQyxLQUFLLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRjlDLGNBQVMsR0FBVCxTQUFTLENBQVc7UUEzQ3ZDLDJCQUFzQixHQUFHLElBQUksQ0FBQztRQUc5QixzQkFBaUIsR0FBcUIsTUFBTSxDQUFDO1FBS3BDLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBR2hDLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBR3pDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBS3JCLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDL0MsZUFBVSxHQUFHLElB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O1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0LFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgT2JzZXJ2YWJsZSxcbiAgU3ViamVjdCxcbiAgZnJvbUV2ZW50LFxuICBtZXJnZSxcbiAgdGFrZVVudGlsLFxuICBkZWJvdW5jZVRpbWUsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBCYXNlVG9vbHRpcCwgVG9vbHRpcFRyaWdnZXIsIFRvb2x0aXBUeXBlIH0gZnJvbSAnLi4vdG9vbHRpcCc7XG5pbXBvcnQgeyBzY3JvbGxJbnRvVmlldyB9IGZyb20gJy4uL3V0aWxzJztcblxuaW1wb3J0IHsgQXV0b2NvbXBsZXRlQ29tcG9uZW50IH0gZnJvbSAnLi9hdXRvY29tcGxldGUuY29tcG9uZW50JztcbmltcG9ydCB7IEF1dG9Db21wbGV0ZUNvbnRleHQsIFN1Z2dlc3Rpb25GaWx0ZXJGbiB9IGZyb20gJy4vYXV0b2NvbXBsZXRlLnR5cGVzJztcbmltcG9ydCB7IFN1Z2dlc3Rpb25Db21wb25lbnQgfSBmcm9tICcuL3N1Z2dlc3Rpb24vc3VnZ2VzdGlvbi5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdpbnB1dFthdWlBdXRvY29tcGxldGVdLHRleHRhcmVhW2F1aUF1dG9jb21wbGV0ZV0nLFxuICBleHBvcnRBczogJ2F1aUF1dG9jb21wbGV0ZScsXG4gIGlucHV0czogWydjbGFzczphdWlBdXRvY29tcGxldGVDbGFzcyddLFxuICBob3N0OiB7XG4gICAgYXV0b2NvbXBsZXRlOiAnb2ZmJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b0NvbXBsZXRlRGlyZWN0aXZlXG4gIGV4dGVuZHMgQmFzZVRvb2x0aXA8QXV0b0NvbXBsZXRlQ29udGV4dD5cbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdFxue1xuICBASW5wdXQoJ2F1aUF1dG9jb21wbGV0ZScpXG4gIGdldCBhdXRvY29tcGxldGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dG9jb21wbGV0ZTtcbiAgfVxuXG4gIHNldCBhdXRvY29tcGxldGUodmFsKSB7XG4gICAgaWYgKHZhbCA9PT0gdGhpcy5fYXV0b2NvbXBsZXRlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhbC5kaXJlY3RpdmUkJC5uZXh0KHRoaXMpO1xuICAgIHRoaXMuX2F1dG9jb21wbGV0ZSA9IHZhbDtcbiAgICB0aGlzLmNvbnRlbnQgPSB2YWwudGVtcGxhdGU7XG4gIH1cblxuICBASW5wdXQoJ2F1aUF1dG9jb21wbGV0ZUZpbHRlckZuJylcbiAgQElucHV0KClcbiAgZ2V0IGZpbHRlckZuKCkge1xuICAgIHJldHVybiB0aGlzLl9maWx0ZXJGbjtcbiAgfVxuXG4gIHNldCBmaWx0ZXJGbih2YWwpIHtcbiAgICBpZiAodmFsICE9PSB0aGlzLl9maWx0ZXJGbikge1xuICAgICAgdGhpcy5fZmlsdGVyRm4gPSB2YWw7XG4gICAgICB0aGlzLmZpbHRlckZuJCQubmV4dCh2YWwpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgnYXVpQXV0b2NvbXBsZXRlRGVmYXVsdEZpcnN0U3VnZ2VzdGlvbicpXG4gIGRlZmF1bHRGaXJzdFN1Z2dlc3Rpb24gPSB0cnVlO1xuXG4gIEBJbnB1dCgnYXVpQXV0b2NvbXBsZXRlVHJpZ2dlcicpXG4gIHN1Z2dlc3Rpb25UcmlnZ2VyOiAnYXV0bycgfCAnaW5wdXQnID0gJ2F1dG8nO1xuXG4gIGRlY2xhcmUgaW5uZXJTZWxlY3Rvcjogc3RyaW5nO1xuXG4gIEBPdXRwdXQoJ2F1aUF1dG9jb21wbGV0ZVNob3cnKVxuICBvdmVycmlkZSBzaG93ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoJ2F1aUF1dG9jb21wbGV0ZUhpZGUnKVxuICBvdmVycmlkZSBoaWRlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoJ2F1aUF1dG9jb21wbGV0ZVNlbGVjdGVkJylcbiAgc2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBwcml2YXRlIF9hdXRvY29tcGxldGU6IEF1dG9jb21wbGV0ZUNvbXBvbmVudDtcbiAgcHJpdmF0ZSBmb2N1c2VkU3VnZ2VzdGlvbjogU3VnZ2VzdGlvbkNvbXBvbmVudDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGlucHV0VmFsdWUkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmlsdGVyRm4kJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U3VnZ2VzdGlvbkZpbHRlckZuPihcbiAgICB0aGlzLmZpbHRlckZuLFxuICApO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdW5zdWJzY3JpYmUkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBpbnB1dFZhbHVlJDogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gdGhpcy5pbnB1dFZhbHVlJCQuYXNPYnNlcnZhYmxlKCk7XG4gIGZpbHRlckZuJDogT2JzZXJ2YWJsZTxTdWdnZXN0aW9uRmlsdGVyRm4+ID0gdGhpcy5maWx0ZXJGbiQkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIGdldCBpbnB1dCgpOiBIVE1MSW5wdXRFbGVtZW50IHtcbiAgICBjb25zdCBlbCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudDtcbiAgICByZXR1cm4gdGhpcy5pbm5lclNlbGVjdG9yID8gZWwucXVlcnlTZWxlY3Rvcih0aGlzLmlubmVyU2VsZWN0b3IpIDogZWw7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBvdmVybGF5OiBPdmVybGF5LFxuICAgIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgZWxSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4sXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIG5nWm9uZTogTmdab25lLFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEhvc3QoKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmdDb250cm9sOiBOZ0NvbnRyb2wsXG4gICkge1xuICAgIHN1cGVyKG92ZXJsYXksIHZpZXdDb250YWluZXJSZWYsIGVsUmVmLCByZW5kZXJlciwgY2RyLCBuZ1pvbmUpO1xuICAgIHRoaXMudHlwZSA9IFRvb2x0aXBUeXBlLlBsYWluO1xuICAgIHRoaXMudHJpZ2dlciA9IFRvb2x0aXBUcmlnZ2VyLk1hbnVhbDtcbiAgICB0aGlzLnBvc2l0aW9uID0gJ2JvdHRvbSBzdGFydCc7XG4gICAgdGhpcy5oaWRlT25DbGljayA9IHRydWU7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNob3cuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlU3VnZ2VzdGlvbnNDb250ZXh0KCk7XG4gICAgfSk7XG4gICAgdGhpcy5oaWRlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlc2V0Rm9jdXNlZFN1Z2dlc3Rpb24oKTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLm5nQ29udHJvbCkge1xuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVDaGFuZ2VzXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSkgPT4ge1xuICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuaW5wdXRWYWx1ZSQkLm5leHQodmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5pbnB1dDtcblxuICAgIG1lcmdlKFxuICAgICAgZnJvbUV2ZW50KHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCwgJ2NsaWNrJyksXG4gICAgICBmcm9tRXZlbnQoaW5wdXQsICdmb2N1cycpLFxuICAgIClcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgwKSwgdGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkZvY3VzKCkpO1xuXG4gICAgZnJvbUV2ZW50KGlucHV0LCAnYmx1cicpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSQpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uQmx1cigpKTtcblxuICAgIGZyb21FdmVudChpbnB1dCwgJ2lucHV0JylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCkpXG4gICAgICAuc3Vic2NyaWJlKGV2ID0+IHRoaXMub25JbnB1dChldikpO1xuXG4gICAgZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KGlucHV0LCAna2V5ZG93bicpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSQpKVxuICAgICAgLnN1YnNjcmliZShldiA9PiB0aGlzLm9uS2V5RG93bihldikpO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy51bnN1YnNjcmliZSQubmV4dCgpO1xuICAgIHRoaXMudW5zdWJzY3JpYmUkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBvdmVycmlkZSBvbkZvY3VzKCkge1xuICAgIGlmICh0aGlzLnN1Z2dlc3Rpb25UcmlnZ2VyID09PSAnYXV0bycpIHtcbiAgICAgIHN1cGVyLm9uRm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIGNvbnN0IHZhbHVlID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZTtcbiAgICB0aGlzLmlucHV0VmFsdWUkJC5uZXh0KHZhbHVlKTtcbiAgICB0aGlzLmNyZWF0ZVRvb2x0aXAoKTtcbiAgfVxuXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICB0aGlzLmZvY3VzU3VnZ2VzdGlvbkRpcignZG93bicpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgdGhpcy5mb2N1c1N1Z2dlc3Rpb25EaXIoJ3VwJyk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0VudGVyJzpcbiAgICAgICAgaWYgKHRoaXMuZm9jdXNlZFN1Z2dlc3Rpb24pIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdEZvY3VzZWRPcHRpb24oKTtcbiAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnRXNjYXBlJzpcbiAgICAgICAgdGhpcy5kaXNwb3NlVG9vbHRpcCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlU3VnZ2VzdGlvbnNDb250ZXh0KCkge1xuICAgIHRoaXMuY29udGV4dCA9IHtcbiAgICAgIC4uLnRoaXMuY29udGV4dCxcbiAgICAgIHdpZHRoOiB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggKyAncHgnLFxuICAgIH07XG4gIH1cblxuICBvblN1Z2dlc3Rpb25DbGljayh2YWx1ZTogc3RyaW5nKSB7XG4gICAgbGV0IGlzQXJyQ3RybCA9IGZhbHNlO1xuXG4gICAgaWYgKHRoaXMubmdDb250cm9sKSB7XG4gICAgICBjb25zdCB7IGNvbnRyb2wgfSA9IHRoaXMubmdDb250cm9sO1xuICAgICAgaXNBcnJDdHJsID0gQXJyYXkuaXNBcnJheShjb250cm9sLnZhbHVlKTtcbiAgICAgIGNvbnRyb2wucGF0Y2hWYWx1ZShpc0FyckN0cmwgPyBbLi4uY29udHJvbC52YWx1ZSwgdmFsdWVdIDogdmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlucHV0LnZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgdGhpcy5pbnB1dFZhbHVlJCQubmV4dChpc0FyckN0cmwgPyAnJyA6IHZhbHVlKTtcblxuICAgIHRoaXMuc2VsZWN0ZWQuZW1pdCh2YWx1ZSk7XG4gICAgdGhpcy5kaXNwb3NlVG9vbHRpcCgpO1xuICB9XG5cbiAgb3ZlcnJpZGUgY3JlYXRlVG9vbHRpcCgpIHtcbiAgICBzdXBlci5jcmVhdGVUb29sdGlwKCk7XG4gICAgdGhpcy5hdXRvRm9jdXNGaXJzdFN1Z2dlc3Rpb24oKTtcbiAgfVxuXG4gIGF1dG9Gb2N1c0ZpcnN0U3VnZ2VzdGlvbigpIHtcbiAgICBjb25zdCBmb2N1c2VkU3VnZ2VzdGlvbiA9IHRoaXMuYXV0b2NvbXBsZXRlLnN1Z2dlc3Rpb25zLmZpbmQoXG4gICAgICBzdWdnZXN0aW9uID0+IHN1Z2dlc3Rpb24uZm9jdXNlZCxcbiAgICApO1xuICAgIGlmIChmb2N1c2VkU3VnZ2VzdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBzZWxlY3RlZFN1Z2dlc3Rpb24gPSB0aGlzLmF1dG9jb21wbGV0ZS5zdWdnZXN0aW9ucy5maW5kKFxuICAgICAgc3VnZ2VzdGlvbiA9PiBzdWdnZXN0aW9uLnNlbGVjdGVkLFxuICAgICk7XG4gICAgaWYgKHNlbGVjdGVkU3VnZ2VzdGlvbikge1xuICAgICAgdGhpcy5yZXNldEZvY3VzZWRTdWdnZXN0aW9uKHNlbGVjdGVkU3VnZ2VzdGlvbik7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLnNjcm9sbFRvU3VnZ2VzdGlvbihzZWxlY3RlZFN1Z2dlc3Rpb24pO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmRlZmF1bHRGaXJzdFN1Z2dlc3Rpb24pIHtcbiAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlU3VnZ2VzdGlvbiA9IHRoaXMuYXV0b2NvbXBsZXRlLnN1Z2dlc3Rpb25zLmZpbmQoXG4gICAgICAgIHN1Z2dlc3Rpb24gPT4gc3VnZ2VzdGlvbi52aXNpYmxlICYmICFzdWdnZXN0aW9uLmRpc2FibGVkLFxuICAgICAgKTtcbiAgICAgIHRoaXMucmVzZXRGb2N1c2VkU3VnZ2VzdGlvbihmaXJzdEZvY3VzYWJsZVN1Z2dlc3Rpb24pO1xuICAgICAgaWYgKGZpcnN0Rm9jdXNhYmxlU3VnZ2VzdGlvbikge1xuICAgICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuc2Nyb2xsVG9TdWdnZXN0aW9uKGZpcnN0Rm9jdXNhYmxlU3VnZ2VzdGlvbik7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9jdXNTdWdnZXN0aW9uRGlyKGRpcjogJ2Rvd24nIHwgJ3VwJykge1xuICAgIGlmICghdGhpcy5pc0NyZWF0ZWQpIHtcbiAgICAgIHRoaXMuY3JlYXRlVG9vbHRpcCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB2aXNpYmxlU3VnZ2VzdGlvbnMgPSB0aGlzLmF1dG9jb21wbGV0ZS5zdWdnZXN0aW9ucy5maWx0ZXIoXG4gICAgICBzdWdnZXN0aW9uID0+IHN1Z2dlc3Rpb24udmlzaWJsZSAmJiAhc3VnZ2VzdGlvbi5kaXNhYmxlZCxcbiAgICApO1xuICAgIGlmICh2aXNpYmxlU3VnZ2VzdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHN0ZXAgPSBkaXIgPT09ICdkb3duJyA/IDEgOiAtMTtcbiAgICBsZXQgaSA9IHZpc2libGVTdWdnZXN0aW9ucy5pbmRleE9mKHRoaXMuZm9jdXNlZFN1Z2dlc3Rpb24pO1xuICAgIGkgPSBpICsgc3RlcDtcbiAgICBpZiAoaSA+PSB2aXNpYmxlU3VnZ2VzdGlvbnMubGVuZ3RoKSB7XG4gICAgICBpID0gMDtcbiAgICB9IGVsc2UgaWYgKGkgPCAwKSB7XG4gICAgICBpID0gdmlzaWJsZVN1Z2dlc3Rpb25zLmxlbmd0aCAtIDE7XG4gICAgfVxuICAgIHRoaXMucmVzZXRGb2N1c2VkU3VnZ2VzdGlvbih2aXNpYmxlU3VnZ2VzdGlvbnNbaV0pO1xuICAgIHRoaXMuc2Nyb2xsVG9TdWdnZXN0aW9uKHRoaXMuZm9jdXNlZFN1Z2dlc3Rpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNldEZvY3VzZWRTdWdnZXN0aW9uKFxuICAgIGZvY3VzZWRTdWdnZXN0aW9uOiBTdWdnZXN0aW9uQ29tcG9uZW50ID0gbnVsbCxcbiAgKSB7XG4gICAgaWYgKHRoaXMuZm9jdXNlZFN1Z2dlc3Rpb24pIHtcbiAgICAgIHRoaXMuZm9jdXNlZFN1Z2dlc3Rpb24uYmx1cigpO1xuICAgIH1cbiAgICB0aGlzLmZvY3VzZWRTdWdnZXN0aW9uID0gZm9jdXNlZFN1Z2dlc3Rpb247XG4gICAgaWYgKHRoaXMuZm9jdXNlZFN1Z2dlc3Rpb24pIHtcbiAgICAgIHRoaXMuZm9jdXNlZFN1Z2dlc3Rpb24uZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNjcm9sbFRvU3VnZ2VzdGlvbihzdWdnZXN0aW9uOiBTdWdnZXN0aW9uQ29tcG9uZW50KSB7XG4gICAgaWYgKHRoaXMuYXV0b2NvbXBsZXRlLnN1Z2dlc3Rpb25MaXN0UmVmKSB7XG4gICAgICBzY3JvbGxJbnRvVmlldyhcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGUuc3VnZ2VzdGlvbkxpc3RSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgc3VnZ2VzdGlvbi5lbFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VsZWN0Rm9jdXNlZE9wdGlvbigpIHtcbiAgICBpZiAodGhpcy5mb2N1c2VkU3VnZ2VzdGlvbikge1xuICAgICAgdGhpcy5vblN1Z2dlc3Rpb25DbGljayh0aGlzLmZvY3VzZWRTdWdnZXN0aW9uLnZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9maWx0ZXJGbihpbnB1dFZhbHVlOiBzdHJpbmcsIHN1Z2dlc3Rpb246IHN0cmluZykge1xuICAgIHJldHVybiBzdWdnZXN0aW9uPy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGlucHV0VmFsdWU/LnRvTG93ZXJDYXNlKCkgPz8gJycpO1xuICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thdWlBdXRvY29tcGxldGVdOm5vdChpbnB1dCk6bm90KHRleHRhcmVhKScsXG4gIGV4cG9ydEFzOiAnYXVpQXV0b2NvbXBsZXRlJyxcbiAgaW5wdXRzOiBbJ2NsYXNzOmF1aUF1dG9jb21wbGV0ZUNsYXNzJ10sXG4gIGhvc3Q6IHtcbiAgICBhdXRvY29tcGxldGU6ICdvZmYnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21BdXRvQ29tcGxldGVEaXJlY3RpdmUgZXh0ZW5kcyBBdXRvQ29tcGxldGVEaXJlY3RpdmUge1xuICBASW5wdXQoJ2F1aUF1dG9jb21wbGV0ZUlubmVyU2VsZWN0b3InKVxuICBvdmVycmlkZSBpbm5lclNlbGVjdG9yID0gJ2lucHV0LHRleHRhcmVhJztcbn1cbiJdfQ==
280
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBR0wsU0FBUyxFQUVULFlBQVksRUFDWixJQUFJLEVBQ0osS0FBSyxFQUlMLFFBQVEsRUFDUixNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLGVBQWUsRUFFZixPQUFPLEVBQ1AsU0FBUyxFQUNULEtBQUssRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFNBQVMsR0FDVixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7O0FBYzFDLE1BQU0sT0FBTyxxQkFDWCxTQUFRLFdBQWdDO0lBaUV4QyxZQUNFLE9BQWdCLEVBQ2hCLGdCQUFrQyxFQUNsQyxLQUFtQyxFQUNuQyxRQUFtQixFQUNuQixHQUFzQixFQUN0QixNQUFjLEVBR0csU0FBb0I7UUFFckMsS0FBSyxDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUY5QyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBM0N2QywyQkFBc0IsR0FBRyxJQUFJLENBQUM7UUFHOUIsc0JBQWlCLEdBQXFCLE1BQU0sQ0FBQztRQUtwQyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUdoQyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUd6QyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUtyQixpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLGVB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QUM7b0JBQ1QsUUFBUSxFQUFFLDRDQUE0QztvQkFDdEQsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsTUFBTSxFQUFFLENBQUMsNEJBQTRCLENBQUM7b0JBQ3RDLElBQUksRUFBRTt3QkFDSixZQUFZLEVBQUUsS0FBSztxQkFDcEI7aUJBQ0Y7OEJBR1UsYUFBYTtzQkFEckIsS0FBSzt1QkFBQyw4QkFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0LFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgT2JzZXJ2YWJsZSxcbiAgU3ViamVjdCxcbiAgZnJvbUV2ZW50LFxuICBtZXJnZSxcbiAgdGFrZVVudGlsLFxuICBkZWJvdW5jZVRpbWUsXG4gIHN0YXJ0V2l0aCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEJhc2VUb29sdGlwLCBUb29sdGlwVHJpZ2dlciwgVG9vbHRpcFR5cGUgfSBmcm9tICcuLi90b29sdGlwJztcbmltcG9ydCB7IHNjcm9sbEludG9WaWV3IH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5pbXBvcnQgeyBBdXRvY29tcGxldGVDb21wb25lbnQgfSBmcm9tICcuL2F1dG9jb21wbGV0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0b0NvbXBsZXRlQ29udGV4dCwgU3VnZ2VzdGlvbkZpbHRlckZuIH0gZnJvbSAnLi9hdXRvY29tcGxldGUudHlwZXMnO1xuaW1wb3J0IHsgU3VnZ2VzdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vc3VnZ2VzdGlvbi9zdWdnZXN0aW9uLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2lucHV0W2F1aUF1dG9jb21wbGV0ZV0sdGV4dGFyZWFbYXVpQXV0b2NvbXBsZXRlXScsXG4gIGV4cG9ydEFzOiAnYXVpQXV0b2NvbXBsZXRlJyxcbiAgaW5wdXRzOiBbJ2NsYXNzOmF1aUF1dG9jb21wbGV0ZUNsYXNzJ10sXG4gIGhvc3Q6IHtcbiAgICBhdXRvY29tcGxldGU6ICdvZmYnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvQ29tcGxldGVEaXJlY3RpdmVcbiAgZXh0ZW5kcyBCYXNlVG9vbHRpcDxBdXRvQ29tcGxldGVDb250ZXh0PlxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0XG57XG4gIEBJbnB1dCgnYXVpQXV0b2NvbXBsZXRlJylcbiAgZ2V0IGF1dG9jb21wbGV0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0b2NvbXBsZXRlO1xuICB9XG5cbiAgc2V0IGF1dG9jb21wbGV0ZSh2YWwpIHtcbiAgICBpZiAodmFsID09PSB0aGlzLl9hdXRvY29tcGxldGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFsLmRpcmVjdGl2ZSQkLm5leHQodGhpcyk7XG4gICAgdGhpcy5fYXV0b2NvbXBsZXRlID0gdmFsO1xuICAgIHRoaXMuY29udGVudCA9IHZhbC50ZW1wbGF0ZTtcbiAgfVxuXG4gIEBJbnB1dCgnYXVpQXV0b2NvbXBsZXRlRmlsdGVyRm4nKVxuICBASW5wdXQoKVxuICBnZXQgZmlsdGVyRm4oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlckZuO1xuICB9XG5cbiAgc2V0IGZpbHRlckZuKHZhbCkge1xuICAgIGlmICh2YWwgIT09IHRoaXMuX2ZpbHRlckZuKSB7XG4gICAgICB0aGlzLl9maWx0ZXJGbiA9IHZhbDtcbiAgICAgIHRoaXMuZmlsdGVyRm4kJC5uZXh0KHZhbCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCdhdWlBdXRvY29tcGxldGVEZWZhdWx0Rmlyc3RTdWdnZXN0aW9uJylcbiAgZGVmYXVsdEZpcnN0U3VnZ2VzdGlvbiA9IHRydWU7XG5cbiAgQElucHV0KCdhdWlBdXRvY29tcGxldGVUcmlnZ2VyJylcbiAgc3VnZ2VzdGlvblRyaWdnZXI6ICdhdXRvJyB8ICdpbnB1dCcgPSAnYXV0byc7XG5cbiAgZGVjbGFyZSBpbm5lclNlbGVjdG9yOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgnYXVpQXV0b2NvbXBsZXRlU2hvdycpXG4gIG92ZXJyaWRlIHNob3cgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgnYXVpQXV0b2NvbXBsZXRlSGlkZScpXG4gIG92ZXJyaWRlIGhpZGUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgnYXVpQXV0b2NvbXBsZXRlU2VsZWN0ZWQnKVxuICBzZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIHByaXZhdGUgX2F1dG9jb21wbGV0ZTogQXV0b2NvbXBsZXRlQ29tcG9uZW50O1xuICBwcml2YXRlIGZvY3VzZWRTdWdnZXN0aW9uOiBTdWdnZXN0aW9uQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRWYWx1ZSQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcHJpdmF0ZSByZWFkb25seSBmaWx0ZXJGbiQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTdWdnZXN0aW9uRmlsdGVyRm4+KFxuICAgIHRoaXMuZmlsdGVyRm4sXG4gICk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGlucHV0VmFsdWUkOiBPYnNlcnZhYmxlPHN0cmluZz4gPSB0aGlzLmlucHV0VmFsdWUkJC5hc09ic2VydmFibGUoKTtcbiAgZmlsdGVyRm4kOiBPYnNlcnZhYmxlPFN1Z2dlc3Rpb25GaWx0ZXJGbj4gPSB0aGlzLmZpbHRlckZuJCQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgZ2V0IGlucHV0KCk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgIGNvbnN0IGVsID0gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIHJldHVybiB0aGlzLmlubmVyU2VsZWN0b3IgPyBlbC5xdWVyeVNlbGVjdG9yKHRoaXMuaW5uZXJTZWxlY3RvcikgOiBlbDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBlbFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PixcbiAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgbmdab25lOiBOZ1pvbmUsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASG9zdCgpXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgKSB7XG4gICAgc3VwZXIob3ZlcmxheSwgdmlld0NvbnRhaW5lclJlZiwgZWxSZWYsIHJlbmRlcmVyLCBjZHIsIG5nWm9uZSk7XG4gICAgdGhpcy50eXBlID0gVG9vbHRpcFR5cGUuUGxhaW47XG4gICAgdGhpcy50cmlnZ2VyID0gVG9vbHRpcFRyaWdnZXIuTWFudWFsO1xuICAgIHRoaXMucG9zaXRpb24gPSAnYm90dG9tIHN0YXJ0JztcbiAgICB0aGlzLmhpZGVPbkNsaWNrID0gdHJ1ZTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2hvdy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVTdWdnZXN0aW9uc0NvbnRleHQoKTtcbiAgICB9KTtcbiAgICB0aGlzLmhpZGUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRGb2N1c2VkU3VnZ2VzdGlvbigpO1xuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMubmdDb250cm9sKSB7XG4gICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSlcbiAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdKSA9PiB7XG4gICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5pbnB1dFZhbHVlJCQubmV4dCh2YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgdGhpcy5uZ0NvbnRyb2wuc3RhdHVzQ2hhbmdlc1xuICAgICAgICAucGlwZShzdGFydFdpdGgodGhpcy5uZ0NvbnRyb2wuc3RhdHVzKSwgdGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSlcbiAgICAgICAgLnN1YnNjcmliZShzdGF0dXMgPT4ge1xuICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPSBzdGF0dXMgPT09ICdESVNBQkxFRCc7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXQ7XG5cbiAgICBtZXJnZShcbiAgICAgIGZyb21FdmVudCh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsICdjbGljaycpLFxuICAgICAgZnJvbUV2ZW50KGlucHV0LCAnZm9jdXMnKSxcbiAgICApXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMCksIHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMub25Gb2N1cygpKTtcblxuICAgIGZyb21FdmVudChpbnB1dCwgJ2JsdXInKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkJsdXIoKSk7XG5cbiAgICBmcm9tRXZlbnQoaW5wdXQsICdpbnB1dCcpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSQpKVxuICAgICAgLnN1YnNjcmliZShldiA9PiB0aGlzLm9uSW5wdXQoZXYpKTtcblxuICAgIGZyb21FdmVudDxLZXlib2FyZEV2ZW50PihpbnB1dCwgJ2tleWRvd24nKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSlcbiAgICAgIC5zdWJzY3JpYmUoZXYgPT4gdGhpcy5vbktleURvd24oZXYpKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMudW5zdWJzY3JpYmUkLm5leHQoKTtcbiAgICB0aGlzLnVuc3Vic2NyaWJlJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgb3ZlcnJpZGUgb25Gb2N1cygpIHtcbiAgICBpZiAodGhpcy5zdWdnZXN0aW9uVHJpZ2dlciA9PT0gJ2F1dG8nKSB7XG4gICAgICBzdXBlci5vbkZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgb25JbnB1dChldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCB2YWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gICAgdGhpcy5pbnB1dFZhbHVlJCQubmV4dCh2YWx1ZSk7XG4gICAgdGhpcy5jcmVhdGVUb29sdGlwKCk7XG4gIH1cblxuICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgICAgdGhpcy5mb2N1c1N1Z2dlc3Rpb25EaXIoJ2Rvd24nKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnQXJyb3dVcCc6XG4gICAgICAgIHRoaXMuZm9jdXNTdWdnZXN0aW9uRGlyKCd1cCcpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICAgIGlmICh0aGlzLmZvY3VzZWRTdWdnZXN0aW9uKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RGb2N1c2VkT3B0aW9uKCk7XG4gICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XG4gICAgICAgIHRoaXMuZGlzcG9zZVRvb2x0aXAoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVN1Z2dlc3Rpb25zQ29udGV4dCgpIHtcbiAgICB0aGlzLmNvbnRleHQgPSB7XG4gICAgICAuLi50aGlzLmNvbnRleHQsXG4gICAgICB3aWR0aDogdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoICsgJ3B4JyxcbiAgICB9O1xuICB9XG5cbiAgb25TdWdnZXN0aW9uQ2xpY2sodmFsdWU6IHN0cmluZykge1xuICAgIGxldCBpc0FyckN0cmwgPSBmYWxzZTtcblxuICAgIGlmICh0aGlzLm5nQ29udHJvbCkge1xuICAgICAgY29uc3QgeyBjb250cm9sIH0gPSB0aGlzLm5nQ29udHJvbDtcbiAgICAgIGlzQXJyQ3RybCA9IEFycmF5LmlzQXJyYXkoY29udHJvbC52YWx1ZSk7XG4gICAgICBjb250cm9sLnBhdGNoVmFsdWUoaXNBcnJDdHJsID8gWy4uLmNvbnRyb2wudmFsdWUsIHZhbHVlXSA6IHZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnB1dC52YWx1ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIHRoaXMuaW5wdXRWYWx1ZSQkLm5leHQoaXNBcnJDdHJsID8gJycgOiB2YWx1ZSk7XG5cbiAgICB0aGlzLnNlbGVjdGVkLmVtaXQodmFsdWUpO1xuICAgIHRoaXMuZGlzcG9zZVRvb2x0aXAoKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGNyZWF0ZVRvb2x0aXAoKSB7XG4gICAgc3VwZXIuY3JlYXRlVG9vbHRpcCgpO1xuICAgIHRoaXMuYXV0b0ZvY3VzRmlyc3RTdWdnZXN0aW9uKCk7XG4gIH1cblxuICBhdXRvRm9jdXNGaXJzdFN1Z2dlc3Rpb24oKSB7XG4gICAgY29uc3QgZm9jdXNlZFN1Z2dlc3Rpb24gPSB0aGlzLmF1dG9jb21wbGV0ZS5zdWdnZXN0aW9ucy5maW5kKFxuICAgICAgc3VnZ2VzdGlvbiA9PiBzdWdnZXN0aW9uLmZvY3VzZWQsXG4gICAgKTtcbiAgICBpZiAoZm9jdXNlZFN1Z2dlc3Rpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgc2VsZWN0ZWRTdWdnZXN0aW9uID0gdGhpcy5hdXRvY29tcGxldGUuc3VnZ2VzdGlvbnMuZmluZChcbiAgICAgIHN1Z2dlc3Rpb24gPT4gc3VnZ2VzdGlvbi5zZWxlY3RlZCxcbiAgICApO1xuICAgIGlmIChzZWxlY3RlZFN1Z2dlc3Rpb24pIHtcbiAgICAgIHRoaXMucmVzZXRGb2N1c2VkU3VnZ2VzdGlvbihzZWxlY3RlZFN1Z2dlc3Rpb24pO1xuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgdGhpcy5zY3JvbGxUb1N1Z2dlc3Rpb24oc2VsZWN0ZWRTdWdnZXN0aW9uKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAodGhpcy5kZWZhdWx0Rmlyc3RTdWdnZXN0aW9uKSB7XG4gICAgICBjb25zdCBmaXJzdEZvY3VzYWJsZVN1Z2dlc3Rpb24gPSB0aGlzLmF1dG9jb21wbGV0ZS5zdWdnZXN0aW9ucy5maW5kKFxuICAgICAgICBzdWdnZXN0aW9uID0+IHN1Z2dlc3Rpb24udmlzaWJsZSAmJiAhc3VnZ2VzdGlvbi5kaXNhYmxlZCxcbiAgICAgICk7XG4gICAgICB0aGlzLnJlc2V0Rm9jdXNlZFN1Z2dlc3Rpb24oZmlyc3RGb2N1c2FibGVTdWdnZXN0aW9uKTtcbiAgICAgIGlmIChmaXJzdEZvY3VzYWJsZVN1Z2dlc3Rpb24pIHtcbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnNjcm9sbFRvU3VnZ2VzdGlvbihmaXJzdEZvY3VzYWJsZVN1Z2dlc3Rpb24pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZvY3VzU3VnZ2VzdGlvbkRpcihkaXI6ICdkb3duJyB8ICd1cCcpIHtcbiAgICBpZiAoIXRoaXMuaXNDcmVhdGVkKSB7XG4gICAgICB0aGlzLmNyZWF0ZVRvb2x0aXAoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgdmlzaWJsZVN1Z2dlc3Rpb25zID0gdGhpcy5hdXRvY29tcGxldGUuc3VnZ2VzdGlvbnMuZmlsdGVyKFxuICAgICAgc3VnZ2VzdGlvbiA9PiBzdWdnZXN0aW9uLnZpc2libGUgJiYgIXN1Z2dlc3Rpb24uZGlzYWJsZWQsXG4gICAgKTtcbiAgICBpZiAodmlzaWJsZVN1Z2dlc3Rpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBzdGVwID0gZGlyID09PSAnZG93bicgPyAxIDogLTE7XG4gICAgbGV0IGkgPSB2aXNpYmxlU3VnZ2VzdGlvbnMuaW5kZXhPZih0aGlzLmZvY3VzZWRTdWdnZXN0aW9uKTtcbiAgICBpID0gaSArIHN0ZXA7XG4gICAgaWYgKGkgPj0gdmlzaWJsZVN1Z2dlc3Rpb25zLmxlbmd0aCkge1xuICAgICAgaSA9IDA7XG4gICAgfSBlbHNlIGlmIChpIDwgMCkge1xuICAgICAgaSA9IHZpc2libGVTdWdnZXN0aW9ucy5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLnJlc2V0Rm9jdXNlZFN1Z2dlc3Rpb24odmlzaWJsZVN1Z2dlc3Rpb25zW2ldKTtcbiAgICB0aGlzLnNjcm9sbFRvU3VnZ2VzdGlvbih0aGlzLmZvY3VzZWRTdWdnZXN0aW9uKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzZXRGb2N1c2VkU3VnZ2VzdGlvbihcbiAgICBmb2N1c2VkU3VnZ2VzdGlvbjogU3VnZ2VzdGlvbkNvbXBvbmVudCA9IG51bGwsXG4gICkge1xuICAgIGlmICh0aGlzLmZvY3VzZWRTdWdnZXN0aW9uKSB7XG4gICAgICB0aGlzLmZvY3VzZWRTdWdnZXN0aW9uLmJsdXIoKTtcbiAgICB9XG4gICAgdGhpcy5mb2N1c2VkU3VnZ2VzdGlvbiA9IGZvY3VzZWRTdWdnZXN0aW9uO1xuICAgIGlmICh0aGlzLmZvY3VzZWRTdWdnZXN0aW9uKSB7XG4gICAgICB0aGlzLmZvY3VzZWRTdWdnZXN0aW9uLmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzY3JvbGxUb1N1Z2dlc3Rpb24oc3VnZ2VzdGlvbjogU3VnZ2VzdGlvbkNvbXBvbmVudCkge1xuICAgIGlmICh0aGlzLmF1dG9jb21wbGV0ZS5zdWdnZXN0aW9uTGlzdFJlZikge1xuICAgICAgc2Nyb2xsSW50b1ZpZXcoXG4gICAgICAgIHRoaXMuYXV0b2NvbXBsZXRlLnN1Z2dlc3Rpb25MaXN0UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgIHN1Z2dlc3Rpb24uZWxSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHNlbGVjdEZvY3VzZWRPcHRpb24oKSB7XG4gICAgaWYgKHRoaXMuZm9jdXNlZFN1Z2dlc3Rpb24pIHtcbiAgICAgIHRoaXMub25TdWdnZXN0aW9uQ2xpY2sodGhpcy5mb2N1c2VkU3VnZ2VzdGlvbi52YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZmlsdGVyRm4oaW5wdXRWYWx1ZTogc3RyaW5nLCBzdWdnZXN0aW9uOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gc3VnZ2VzdGlvbj8udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhpbnB1dFZhbHVlPy50b0xvd2VyQ2FzZSgpID8/ICcnKTtcbiAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXVpQXV0b2NvbXBsZXRlXTpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSknLFxuICBleHBvcnRBczogJ2F1aUF1dG9jb21wbGV0ZScsXG4gIGlucHV0czogWydjbGFzczphdWlBdXRvY29tcGxldGVDbGFzcyddLFxuICBob3N0OiB7XG4gICAgYXV0b2NvbXBsZXRlOiAnb2ZmJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tQXV0b0NvbXBsZXRlRGlyZWN0aXZlIGV4dGVuZHMgQXV0b0NvbXBsZXRlRGlyZWN0aXZlIHtcbiAgQElucHV0KCdhdWlBdXRvY29tcGxldGVJbm5lclNlbGVjdG9yJylcbiAgb3ZlcnJpZGUgaW5uZXJTZWxlY3RvciA9ICdpbnB1dCx0ZXh0YXJlYSc7XG59XG4iXX0=