@ecodev/natural 60.1.1 → 61.0.1

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 (123) hide show
  1. package/esm2022/lib/classes/abstract-detail.mjs +2 -3
  2. package/esm2022/lib/classes/abstract-editable-list.mjs +3 -5
  3. package/esm2022/lib/classes/abstract-list.mjs +6 -5
  4. package/esm2022/lib/classes/abstract-navigable-list.mjs +4 -3
  5. package/esm2022/lib/classes/rxjs.mjs +11 -5
  6. package/esm2022/lib/modules/alert/alert.service.mjs +9 -9
  7. package/esm2022/lib/modules/alert/confirm.component.mjs +6 -9
  8. package/esm2022/lib/modules/avatar/component/avatar.component.mjs +9 -9
  9. package/esm2022/lib/modules/columns-picker/columns-picker.component.mjs +30 -35
  10. package/esm2022/lib/modules/columns-picker/public-api.mjs +1 -1
  11. package/esm2022/lib/modules/common/directives/background-density.directive.mjs +7 -7
  12. package/esm2022/lib/modules/common/directives/linkable-tab.directive.mjs +16 -19
  13. package/esm2022/lib/modules/common/directives/src-density.directive.mjs +7 -7
  14. package/esm2022/lib/modules/common/pipes/enum.pipe.mjs +7 -7
  15. package/esm2022/lib/modules/common/public-api.mjs +2 -2
  16. package/esm2022/lib/modules/common/services/seo.service.mjs +13 -22
  17. package/esm2022/lib/modules/dialog-trigger/dialog-trigger.component.mjs +10 -10
  18. package/esm2022/lib/modules/dropdown-components/public-api.mjs +3 -3
  19. package/esm2022/lib/modules/dropdown-components/type-boolean/type-boolean.component.mjs +10 -13
  20. package/esm2022/lib/modules/dropdown-components/type-date/type-date.component.mjs +14 -19
  21. package/esm2022/lib/modules/dropdown-components/type-date-range/type-date-range.component.mjs +14 -20
  22. package/esm2022/lib/modules/dropdown-components/type-number/type-number.component.mjs +14 -16
  23. package/esm2022/lib/modules/dropdown-components/type-options/type-options.component.mjs +10 -10
  24. package/esm2022/lib/modules/dropdown-components/type-select/type-select.component.mjs +14 -16
  25. package/esm2022/lib/modules/dropdown-components/type-text/type-text.component.mjs +12 -14
  26. package/esm2022/lib/modules/file/abstract-file.mjs +3 -6
  27. package/esm2022/lib/modules/file/component/file.component.mjs +14 -17
  28. package/esm2022/lib/modules/file/file-drop.directive.mjs +6 -4
  29. package/esm2022/lib/modules/file/file.service.mjs +6 -9
  30. package/esm2022/lib/modules/file/public-api.mjs +1 -1
  31. package/esm2022/lib/modules/fixed-button-detail/fixed-button-detail.component.mjs +9 -8
  32. package/esm2022/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.component.mjs +19 -20
  33. package/esm2022/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.service.mjs +6 -6
  34. package/esm2022/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.component.mjs +8 -10
  35. package/esm2022/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.service.mjs +7 -7
  36. package/esm2022/lib/modules/icon/icon.directive.mjs +12 -20
  37. package/esm2022/lib/modules/logger/error-handler.mjs +10 -24
  38. package/esm2022/lib/modules/logger/public-api.mjs +2 -2
  39. package/esm2022/lib/modules/matomo/matomo.service.mjs +11 -19
  40. package/esm2022/lib/modules/panels/abstract-panel.mjs +9 -9
  41. package/esm2022/lib/modules/panels/panels.component.mjs +9 -8
  42. package/esm2022/lib/modules/panels/panels.service.mjs +13 -17
  43. package/esm2022/lib/modules/relations/relations.component.mjs +34 -34
  44. package/esm2022/lib/modules/search/dropdown-container/dropdown-container.component.mjs +12 -15
  45. package/esm2022/lib/modules/search/dropdown-container/dropdown.service.mjs +8 -9
  46. package/esm2022/lib/modules/search/facet-selector/facet-selector.component.mjs +11 -14
  47. package/esm2022/lib/modules/search/input/input.component.mjs +26 -27
  48. package/esm2022/lib/modules/search/public-api.mjs +1 -1
  49. package/esm2022/lib/modules/search/search/search.component.mjs +19 -20
  50. package/esm2022/lib/modules/select/abstract-select.component.mjs +3 -5
  51. package/esm2022/lib/modules/select/select/select.component.mjs +7 -5
  52. package/esm2022/lib/modules/select/select-enum/select-enum.component.mjs +15 -18
  53. package/esm2022/lib/modules/select/select-hierarchic/select-hierarchic.component.mjs +16 -19
  54. package/esm2022/lib/modules/sidenav/sidenav-container/sidenav-container.component.mjs +9 -10
  55. package/esm2022/lib/modules/sidenav/sidenav.service.mjs +18 -23
  56. package/esm2022/lib/services/enum.service.mjs +7 -8
  57. package/esm2022/lib/services/link-mutation.service.mjs +7 -8
  58. package/esm2022/lib/services/persistence.service.mjs +9 -19
  59. package/esm2022/public-api.mjs +2 -3
  60. package/fesm2022/ecodev-natural.mjs +377 -504
  61. package/fesm2022/ecodev-natural.mjs.map +1 -1
  62. package/lib/classes/abstract-detail.d.ts +0 -1
  63. package/lib/classes/abstract-editable-list.d.ts +1 -2
  64. package/lib/classes/abstract-list.d.ts +2 -2
  65. package/lib/classes/abstract-navigable-list.d.ts +2 -2
  66. package/lib/classes/rxjs.d.ts +9 -2
  67. package/lib/modules/alert/alert.service.d.ts +1 -3
  68. package/lib/modules/alert/confirm.component.d.ts +1 -2
  69. package/lib/modules/avatar/component/avatar.component.d.ts +0 -2
  70. package/lib/modules/columns-picker/columns-picker.component.d.ts +3 -6
  71. package/lib/modules/columns-picker/public-api.d.ts +1 -1
  72. package/lib/modules/common/directives/background-density.directive.d.ts +0 -2
  73. package/lib/modules/common/directives/linkable-tab.directive.d.ts +3 -5
  74. package/lib/modules/common/directives/src-density.directive.d.ts +0 -2
  75. package/lib/modules/common/pipes/enum.pipe.d.ts +0 -2
  76. package/lib/modules/common/public-api.d.ts +2 -1
  77. package/lib/modules/common/services/seo.service.d.ts +2 -3
  78. package/lib/modules/dialog-trigger/dialog-trigger.component.d.ts +3 -3
  79. package/lib/modules/dropdown-components/public-api.d.ts +9 -9
  80. package/lib/modules/dropdown-components/type-boolean/type-boolean.component.d.ts +1 -3
  81. package/lib/modules/dropdown-components/type-date/type-date.component.d.ts +1 -3
  82. package/lib/modules/dropdown-components/type-date-range/type-date-range.component.d.ts +2 -3
  83. package/lib/modules/dropdown-components/type-number/type-number.component.d.ts +1 -2
  84. package/lib/modules/dropdown-components/type-options/type-options.component.d.ts +3 -3
  85. package/lib/modules/dropdown-components/type-select/type-select.component.d.ts +4 -5
  86. package/lib/modules/dropdown-components/type-text/type-text.component.d.ts +1 -2
  87. package/lib/modules/file/abstract-file.d.ts +1 -2
  88. package/lib/modules/file/component/file.component.d.ts +0 -3
  89. package/lib/modules/file/file-drop.directive.d.ts +1 -0
  90. package/lib/modules/file/file.service.d.ts +0 -1
  91. package/lib/modules/file/public-api.d.ts +1 -1
  92. package/lib/modules/fixed-button-detail/fixed-button-detail.component.d.ts +1 -2
  93. package/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.component.d.ts +3 -4
  94. package/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.service.d.ts +0 -2
  95. package/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.component.d.ts +1 -2
  96. package/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.service.d.ts +1 -2
  97. package/lib/modules/icon/icon.directive.d.ts +3 -5
  98. package/lib/modules/logger/error-handler.d.ts +3 -4
  99. package/lib/modules/logger/public-api.d.ts +2 -1
  100. package/lib/modules/matomo/matomo.service.d.ts +2 -5
  101. package/lib/modules/panels/abstract-panel.d.ts +3 -2
  102. package/lib/modules/panels/panels.component.d.ts +1 -3
  103. package/lib/modules/panels/panels.service.d.ts +2 -6
  104. package/lib/modules/relations/relations.component.d.ts +4 -6
  105. package/lib/modules/search/dropdown-container/dropdown-container.component.d.ts +3 -4
  106. package/lib/modules/search/dropdown-container/dropdown.service.d.ts +1 -3
  107. package/lib/modules/search/facet-selector/facet-selector.component.d.ts +1 -2
  108. package/lib/modules/search/input/input.component.d.ts +1 -3
  109. package/lib/modules/search/public-api.d.ts +5 -5
  110. package/lib/modules/search/search/search.component.d.ts +0 -2
  111. package/lib/modules/select/abstract-select.component.d.ts +2 -3
  112. package/lib/modules/select/select/select.component.d.ts +3 -2
  113. package/lib/modules/select/select-enum/select-enum.component.d.ts +4 -4
  114. package/lib/modules/select/select-hierarchic/select-hierarchic.component.d.ts +6 -6
  115. package/lib/modules/sidenav/sidenav-container/sidenav-container.component.d.ts +0 -1
  116. package/lib/modules/sidenav/sidenav.service.d.ts +3 -8
  117. package/lib/services/enum.service.d.ts +0 -2
  118. package/lib/services/link-mutation.service.d.ts +0 -2
  119. package/lib/services/persistence.service.d.ts +2 -4
  120. package/package.json +1 -1
  121. package/public-api.d.ts +3 -3
  122. package/esm2022/lib/classes/abstract-controller.mjs +0 -31
  123. package/lib/classes/abstract-controller.d.ts +0 -21
@@ -1,12 +1,9 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { RouteConfigLoadEnd, RouteConfigLoadStart } from '@angular/router';
1
+ import { DestroyRef, Directive, Input, inject } from '@angular/core';
2
+ import { MatTabGroup } from '@angular/material/tabs';
3
+ import { ActivatedRoute, RouteConfigLoadEnd, RouteConfigLoadStart, Router } from '@angular/router';
3
4
  import { clone } from 'lodash-es';
4
- import { takeUntil } from 'rxjs/operators';
5
- import { NaturalAbstractController } from '../../../classes/abstract-controller';
6
5
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
7
6
  import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/material/tabs";
9
- import * as i2 from "@angular/router";
10
7
  /**
11
8
  * Returns an identifier for the tab
12
9
  */
@@ -24,18 +21,18 @@ function getTabId(tab) {
24
21
  * </mat-tab-group>
25
22
  * ```
26
23
  */
27
- export class NaturalLinkableTabDirective extends NaturalAbstractController {
28
- constructor(component, route, router) {
29
- super();
30
- this.component = component;
31
- this.route = route;
32
- this.router = router;
24
+ export class NaturalLinkableTabDirective {
25
+ constructor() {
26
+ this.destroyRef = inject(DestroyRef);
27
+ this.component = inject(MatTabGroup);
28
+ this.route = inject(ActivatedRoute);
29
+ this.router = inject(Router);
33
30
  /**
34
31
  * If false, disables the persistent navigation
35
32
  */
36
33
  this.naturalLinkableTab = true;
37
34
  this.isLoadingRouteConfig = false;
38
- router.events.pipe(takeUntilDestroyed()).subscribe(event => {
35
+ this.router.events.pipe(takeUntilDestroyed()).subscribe(event => {
39
36
  if (event instanceof RouteConfigLoadStart) {
40
37
  this.isLoadingRouteConfig = true;
41
38
  }
@@ -49,7 +46,7 @@ export class NaturalLinkableTabDirective extends NaturalAbstractController {
49
46
  return;
50
47
  }
51
48
  // When url params change, update the mat-tab-group selected tab
52
- this.route.fragment.pipe(takeUntil(this.ngUnsubscribe)).subscribe(fragment => {
49
+ this.route.fragment.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(fragment => {
53
50
  // Get index of tab that matches wanted name
54
51
  const tabIndex = this.getTabIndex(fragment);
55
52
  // If tab index is valid (>= 0) go to given fragment
@@ -59,7 +56,7 @@ export class NaturalLinkableTabDirective extends NaturalAbstractController {
59
56
  }
60
57
  });
61
58
  // When mat-tab-groups selected tab change, update url
62
- this.component.selectedTabChange.pipe(takeUntil(this.ngUnsubscribe)).subscribe(event => {
59
+ this.component.selectedTabChange.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(event => {
63
60
  if (this.isLoadingRouteConfig) {
64
61
  return;
65
62
  }
@@ -81,8 +78,8 @@ export class NaturalLinkableTabDirective extends NaturalAbstractController {
81
78
  getTabIndex(fragment) {
82
79
  return this.component._tabs.toArray().findIndex(tab => fragment === getTabId(tab));
83
80
  }
84
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalLinkableTabDirective, deps: [{ token: i1.MatTabGroup }, { token: i2.ActivatedRoute }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Directive }); }
85
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.3", type: NaturalLinkableTabDirective, isStandalone: true, selector: "mat-tab-group[naturalLinkableTab]", inputs: { naturalLinkableTab: "naturalLinkableTab" }, usesInheritance: true, ngImport: i0 }); }
81
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalLinkableTabDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
82
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.3", type: NaturalLinkableTabDirective, isStandalone: true, selector: "mat-tab-group[naturalLinkableTab]", inputs: { naturalLinkableTab: "naturalLinkableTab" }, ngImport: i0 }); }
86
83
  }
87
84
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalLinkableTabDirective, decorators: [{
88
85
  type: Directive,
@@ -90,7 +87,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImpor
90
87
  selector: 'mat-tab-group[naturalLinkableTab]',
91
88
  standalone: true,
92
89
  }]
93
- }], ctorParameters: () => [{ type: i1.MatTabGroup }, { type: i2.ActivatedRoute }, { type: i2.Router }], propDecorators: { naturalLinkableTab: [{
90
+ }], ctorParameters: () => [], propDecorators: { naturalLinkableTab: [{
94
91
  type: Input
95
92
  }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2FibGUtdGFiLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2NvbW1vbi9kaXJlY3RpdmVzL2xpbmthYmxlLXRhYi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBaUIsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQVMsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRyxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQUU5RDs7R0FFRztBQUNILFNBQVMsUUFBUSxDQUFDLEdBQVc7SUFDekIsT0FBTyxHQUFHLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUN4RSxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUtILE1BQU0sT0FBTywyQkFBNEIsU0FBUSx5QkFBeUI7SUFPdEUsWUFDcUIsU0FBc0IsRUFDdEIsS0FBcUIsRUFDckIsTUFBYztRQUUvQixLQUFLLEVBQUUsQ0FBQztRQUpTLGNBQVMsR0FBVCxTQUFTLENBQWE7UUFDdEIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVRuQzs7V0FFRztRQUNhLHVCQUFrQixHQUFpQixJQUFJLENBQUM7UUFDaEQseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBU2pDLE1BQU0sQ0FBQyxNQUFNLENB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ZSwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXRUYWIsIE1hdFRhYkdyb3VwfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlQ29uZmlnTG9hZEVuZCwgUm91dGVDb25maWdMb2FkU3RhcnQsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7Y2xvbmV9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge3Rha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtOYXR1cmFsQWJzdHJhY3RDb250cm9sbGVyfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Fic3RyYWN0LWNvbnRyb2xsZXInO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuLyoqXG4gKiBSZXR1cm5zIGFuIGlkZW50aWZpZXIgZm9yIHRoZSB0YWJcbiAqL1xuZnVuY3Rpb24gZ2V0VGFiSWQodGFiOiBNYXRUYWIpOiBzdHJpbmcge1xuICAgIHJldHVybiB0YWIuY29udGVudD8udmlld0NvbnRhaW5lclJlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuaWQgPz8gJyc7XG59XG5cbi8qKlxuICogVXNhZ2UgOlxuICpcbiAqIGBgYGh0bWxcbiAqIDxtYXQtdGFiLWdyb3VwIFtuYXR1cmFsTGlua2FibGVUYWJdPVwiIWlzUGFuZWxcIj5cbiAqICAgICA8bWF0LXRhYiBsYWJlbD1cIlRhYiAxXCI+VGFiIDE8L21hdC10YWI+IC8vIEZpcnN0IHRhYiBkb2Vzbid0IG5lZWQgaWQuIFRoaXMga2VlcHMgdXJsIGNsZWFuIG9uIGRlZmF1bHQgb25lXG4gKiAgICAgPG1hdC10YWIgbGFiZWw9XCJUYWIgMlwiIGlkPVwic2Vjb25kLXRhYlwiPlRhYiAyPC9tYXQtdGFiPlxuICogICAgIC4uLlxuICogPC9tYXQtdGFiLWdyb3VwPlxuICogYGBgXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnbWF0LXRhYi1ncm91cFtuYXR1cmFsTGlua2FibGVUYWJdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsTGlua2FibGVUYWJEaXJlY3RpdmUgZXh0ZW5kcyBOYXR1cmFsQWJzdHJhY3RDb250cm9sbGVyIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgLyoqXG4gICAgICogSWYgZmFsc2UsIGRpc2FibGVzIHRoZSBwZXJzaXN0ZW50IG5hdmlnYXRpb25cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgbmF0dXJhbExpbmthYmxlVGFiOiBib29sZWFuIHwgJycgPSB0cnVlO1xuICAgIHByaXZhdGUgaXNMb2FkaW5nUm91dGVDb25maWcgPSBmYWxzZTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjb21wb25lbnQ6IE1hdFRhYkdyb3VwLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcblxuICAgICAgICByb3V0ZXIuZXZlbnRzLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBSb3V0ZUNvbmZpZ0xvYWRTdGFydCkge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nUm91dGVDb25maWcgPSB0cnVlO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIFJvdXRlQ29uZmlnTG9hZEVuZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nUm91dGVDb25maWcgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubmF0dXJhbExpbmthYmxlVGFiID09PSBmYWxzZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gV2hlbiB1cmwgcGFyYW1zIGNoYW5nZSwgdXBkYXRlIHRoZSBtYXQtdGFiLWdyb3VwIHNlbGVjdGVkIHRhYlxuICAgICAgICB0aGlzLnJvdXRlLmZyYWdtZW50LnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZShmcmFnbWVudCA9PiB7XG4gICAgICAgICAgICAvLyBHZXQgaW5kZXggb2YgdGFiIHRoYXQgbWF0Y2hlcyB3YW50ZWQgbmFtZVxuICAgICAgICAgICAgY29uc3QgdGFiSW5kZXggPSB0aGlzLmdldFRhYkluZGV4KGZyYWdtZW50KTtcblxuICAgICAgICAgICAgLy8gSWYgdGFiIGluZGV4IGlzIHZhbGlkICg+PSAwKSBnbyB0byBnaXZlbiBmcmFnbWVudFxuICAgICAgICAgICAgLy8gSWYgdGhlcmUgaXMgbm8gZnJhZ21lbnQgYXQgYWxsLCBnbyB0byBmaXJzdCB0YWIgKGluZGV4IGlzIC0xIGluIHRoaXMgY2FzZSlcbiAgICAgICAgICAgIGlmICh0YWJJbmRleCA+PSAwIHx8ICFmcmFnbWVudCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50LnNlbGVjdGVkSW5kZXggPSB0YWJJbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gV2hlbiBtYXQtdGFiLWdyb3VwcyBzZWxlY3RlZCB0YWIgY2hhbmdlLCB1cGRhdGUgdXJsXG4gICAgICAgIHRoaXMuY29tcG9uZW50LnNlbGVjdGVkVGFiQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0xvYWRpbmdSb3V0ZUNvbmZpZykge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgYWN0aXZhdGVkVGFiTmFtZSA9IGdldFRhYklkKGV2ZW50LnRhYik7XG4gICAgICAgICAgICBjb25zdCBzZWdtZW50cyA9IHRoaXMucm91dGUuc25hcHNob3QudXJsO1xuICAgICAgICAgICAgaWYgKCFzZWdtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAvLyBUaGlzIHNob3VsZCBuZXZlciBoYXBwZW4gaW4gbm9ybWFsIHVzYWdlLCBiZWNhdXNlIGl0IHdvdWxkIG1lYW5zIHRoZXJlIGlzIG5vIHJvdXRlIGF0IGFsbCBpbiB0aGUgYXBwXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgdXBkYXRlIFVSTCBmb3IgdGFicyB3aXRob3V0IGFueSBzZWdtZW50cyBpbiBVUkwnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gR2V0IHVybCBtYXRyaXggcGFyYW1zICgvc2VnbWVudDttYXRyaXg9cGFyYW0pIG9ubHkgd2l0aG91dCByb3V0ZSBwYXJhbXMgKHNlZ21lbnQvOmlkKVxuICAgICAgICAgICAgY29uc3QgcGFyYW1zID0gY2xvbmUoc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0ucGFyYW1ldGVycyk7XG5cbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLicsIHBhcmFtc10sIHtcbiAgICAgICAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLFxuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6ICdwcmVzZXJ2ZScsXG4gICAgICAgICAgICAgICAgZnJhZ21lbnQ6IGFjdGl2YXRlZFRhYk5hbWU/Lmxlbmd0aCA/IGFjdGl2YXRlZFRhYk5hbWUgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRUYWJJbmRleChmcmFnbWVudDogc3RyaW5nIHwgbnVsbCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXBvbmVudC5fdGFicy50b0FycmF5KCkuZmluZEluZGV4KHRhYiA9PiBmcmFnbWVudCA9PT0gZ2V0VGFiSWQodGFiKSk7XG4gICAgfVxufVxuIl19
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2FibGUtdGFiLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2NvbW1vbi9kaXJlY3RpdmVzL2xpbmthYmxlLXRhYi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixVQUFVLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFTLFdBQVcsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBQyxjQUFjLEVBQUUsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDakcsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUNoQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFOUQ7O0dBRUc7QUFDSCxTQUFTLFFBQVEsQ0FBQyxHQUFXO0lBQ3pCLE9BQU8sR0FBRyxDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDeEUsQ0FBQztBQUVEOzs7Ozs7Ozs7O0dBVUc7QUFLSCxNQUFNLE9BQU8sMkJBQTJCO0lBWXBDO1FBWGlCLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEMsY0FBUyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNoQyxVQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9CLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekM7O1dBRUc7UUFDYSx1QkFBa0IsR0FBaUIsSUFBSSxDQUFDO1FBQ2hELHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUdqQyxJQUFJLENB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e0FmdGVyVmlld0luaXQsIERlc3Ryb3lSZWYsIERpcmVjdGl2ZSwgSW5wdXQsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdFRhYiwgTWF0VGFiR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZSwgUm91dGVDb25maWdMb2FkRW5kLCBSb3V0ZUNvbmZpZ0xvYWRTdGFydCwgUm91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtjbG9uZX0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbi8qKlxuICogUmV0dXJucyBhbiBpZGVudGlmaWVyIGZvciB0aGUgdGFiXG4gKi9cbmZ1bmN0aW9uIGdldFRhYklkKHRhYjogTWF0VGFiKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGFiLmNvbnRlbnQ/LnZpZXdDb250YWluZXJSZWYuZWxlbWVudC5uYXRpdmVFbGVtZW50LmlkID8/ICcnO1xufVxuXG4vKipcbiAqIFVzYWdlIDpcbiAqXG4gKiBgYGBodG1sXG4gKiA8bWF0LXRhYi1ncm91cCBbbmF0dXJhbExpbmthYmxlVGFiXT1cIiFpc1BhbmVsXCI+XG4gKiAgICAgPG1hdC10YWIgbGFiZWw9XCJUYWIgMVwiPlRhYiAxPC9tYXQtdGFiPiAvLyBGaXJzdCB0YWIgZG9lc24ndCBuZWVkIGlkLiBUaGlzIGtlZXBzIHVybCBjbGVhbiBvbiBkZWZhdWx0IG9uZVxuICogICAgIDxtYXQtdGFiIGxhYmVsPVwiVGFiIDJcIiBpZD1cInNlY29uZC10YWJcIj5UYWIgMjwvbWF0LXRhYj5cbiAqICAgICAuLi5cbiAqIDwvbWF0LXRhYi1ncm91cD5cbiAqIGBgYFxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ21hdC10YWItZ3JvdXBbbmF0dXJhbExpbmthYmxlVGFiXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbExpbmthYmxlVGFiRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29tcG9uZW50ID0gaW5qZWN0KE1hdFRhYkdyb3VwKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG4gICAgLyoqXG4gICAgICogSWYgZmFsc2UsIGRpc2FibGVzIHRoZSBwZXJzaXN0ZW50IG5hdmlnYXRpb25cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgbmF0dXJhbExpbmthYmxlVGFiOiBib29sZWFuIHwgJycgPSB0cnVlO1xuICAgIHByaXZhdGUgaXNMb2FkaW5nUm91dGVDb25maWcgPSBmYWxzZTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBSb3V0ZUNvbmZpZ0xvYWRTdGFydCkge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nUm91dGVDb25maWcgPSB0cnVlO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIFJvdXRlQ29uZmlnTG9hZEVuZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nUm91dGVDb25maWcgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubmF0dXJhbExpbmthYmxlVGFiID09PSBmYWxzZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gV2hlbiB1cmwgcGFyYW1zIGNoYW5nZSwgdXBkYXRlIHRoZSBtYXQtdGFiLWdyb3VwIHNlbGVjdGVkIHRhYlxuICAgICAgICB0aGlzLnJvdXRlLmZyYWdtZW50LnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZShmcmFnbWVudCA9PiB7XG4gICAgICAgICAgICAvLyBHZXQgaW5kZXggb2YgdGFiIHRoYXQgbWF0Y2hlcyB3YW50ZWQgbmFtZVxuICAgICAgICAgICAgY29uc3QgdGFiSW5kZXggPSB0aGlzLmdldFRhYkluZGV4KGZyYWdtZW50KTtcblxuICAgICAgICAgICAgLy8gSWYgdGFiIGluZGV4IGlzIHZhbGlkICg+PSAwKSBnbyB0byBnaXZlbiBmcmFnbWVudFxuICAgICAgICAgICAgLy8gSWYgdGhlcmUgaXMgbm8gZnJhZ21lbnQgYXQgYWxsLCBnbyB0byBmaXJzdCB0YWIgKGluZGV4IGlzIC0xIGluIHRoaXMgY2FzZSlcbiAgICAgICAgICAgIGlmICh0YWJJbmRleCA+PSAwIHx8ICFmcmFnbWVudCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50LnNlbGVjdGVkSW5kZXggPSB0YWJJbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gV2hlbiBtYXQtdGFiLWdyb3VwcyBzZWxlY3RlZCB0YWIgY2hhbmdlLCB1cGRhdGUgdXJsXG4gICAgICAgIHRoaXMuY29tcG9uZW50LnNlbGVjdGVkVGFiQ2hhbmdlLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0xvYWRpbmdSb3V0ZUNvbmZpZykge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgYWN0aXZhdGVkVGFiTmFtZSA9IGdldFRhYklkKGV2ZW50LnRhYik7XG4gICAgICAgICAgICBjb25zdCBzZWdtZW50cyA9IHRoaXMucm91dGUuc25hcHNob3QudXJsO1xuICAgICAgICAgICAgaWYgKCFzZWdtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAvLyBUaGlzIHNob3VsZCBuZXZlciBoYXBwZW4gaW4gbm9ybWFsIHVzYWdlLCBiZWNhdXNlIGl0IHdvdWxkIG1lYW5zIHRoZXJlIGlzIG5vIHJvdXRlIGF0IGFsbCBpbiB0aGUgYXBwXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgdXBkYXRlIFVSTCBmb3IgdGFicyB3aXRob3V0IGFueSBzZWdtZW50cyBpbiBVUkwnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gR2V0IHVybCBtYXRyaXggcGFyYW1zICgvc2VnbWVudDttYXRyaXg9cGFyYW0pIG9ubHkgd2l0aG91dCByb3V0ZSBwYXJhbXMgKHNlZ21lbnQvOmlkKVxuICAgICAgICAgICAgY29uc3QgcGFyYW1zID0gY2xvbmUoc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0ucGFyYW1ldGVycyk7XG5cbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLicsIHBhcmFtc10sIHtcbiAgICAgICAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLFxuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6ICdwcmVzZXJ2ZScsXG4gICAgICAgICAgICAgICAgZnJhZ21lbnQ6IGFjdGl2YXRlZFRhYk5hbWU/Lmxlbmd0aCA/IGFjdGl2YXRlZFRhYk5hbWUgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRUYWJJbmRleChmcmFnbWVudDogc3RyaW5nIHwgbnVsbCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXBvbmVudC5fdGFicy50b0FycmF5KCkuZmluZEluZGV4KHRhYiA9PiBmcmFnbWVudCA9PT0gZ2V0VGFiSWQodGFiKSk7XG4gICAgfVxufVxuIl19
@@ -1,4 +1,4 @@
1
- import { Directive, Input } from '@angular/core';
1
+ import { Directive, ElementRef, Input, inject } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export function densities(src, forImageSet) {
4
4
  const match = /^(.*\/)(\d+)$/.exec(src);
@@ -23,6 +23,9 @@ export function densities(src, forImageSet) {
23
23
  return result;
24
24
  }
25
25
  export class NaturalSrcDensityDirective {
26
+ constructor() {
27
+ this.elementRef = inject(ElementRef);
28
+ }
26
29
  /**
27
30
  * Automatically apply image selection based on screen density.
28
31
  *
@@ -55,10 +58,7 @@ export class NaturalSrcDensityDirective {
55
58
  this.elementRef.nativeElement.src = src;
56
59
  this.elementRef.nativeElement.srcset = densities(src, false);
57
60
  }
58
- constructor(elementRef) {
59
- this.elementRef = elementRef;
60
- }
61
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalSrcDensityDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
61
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalSrcDensityDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
62
62
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.3", type: NaturalSrcDensityDirective, isStandalone: true, selector: "img[naturalSrcDensity]", inputs: { naturalSrcDensity: "naturalSrcDensity" }, ngImport: i0 }); }
63
63
  }
64
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalSrcDensityDirective, decorators: [{
@@ -67,8 +67,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImpor
67
67
  selector: 'img[naturalSrcDensity]',
68
68
  standalone: true,
69
69
  }]
70
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { naturalSrcDensity: [{
70
+ }], propDecorators: { naturalSrcDensity: [{
71
71
  type: Input,
72
72
  args: [{ required: true }]
73
73
  }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWRlbnNpdHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvY29tbW9uL2RpcmVjdGl2ZXMvc3JjLWRlbnNpdHkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQUUzRCxNQUFNLFVBQVUsU0FBUyxDQUFDLEdBQVcsRUFBRSxXQUFvQjtJQUN2RCxNQUFNLEtBQUssR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sSUFBSSxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3hCLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUVoQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDakIsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRUQscUZBQXFGO0lBQ3JGLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN6QixHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDWCxJQUFJLEdBQUcsR0FBRyxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ2pELElBQUksV0FBVyxFQUFFLENBQUM7WUFDZCxHQUFHLEdBQUcsUUFBUSxHQUFHLElBQUksQ0FBQztRQUMxQixDQUFDO1FBRUQsT0FBTyxHQUFHLEdBQUcsSUFBSSxPQUFPLEdBQUcsQ0FBQztJQUNoQyxDQUFDLENBQUM7U0FDRCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFaEIsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNkLE1BQU0sR0FBRyxhQUFhLE1BQU0sR0FBRyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNsQixDQUFDO0FBTUQsTUFBTSxPQUFPLDBCQUEwQjtJQUNuQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09Bd0JHO0lBQ0gsSUFDVyxpQkFBaUIsQ0FBQyxHQUFXO1FBQ3BDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNQLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUN4QyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsWUFBb0MsVUFBd0M7UUFBeEMsZUFBVSxHQUFWLFVBQVUsQ0FBOEI7SUFBRyxDQUFDOzhHQXBDdkUsMEJBQTBCO2tHQUExQiwwQkFBMEI7OzJGQUExQiwwQkFBMEI7a0JBSnRDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsVUFBVSxFQUFFLElBQUk7aUJBQ25COytFQTRCYyxpQkFBaUI7c0JBRDNCLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGRlbnNpdGllcyhzcmM6IHN0cmluZywgZm9ySW1hZ2VTZXQ6IGJvb2xlYW4pOiBzdHJpbmcge1xuICAgIGNvbnN0IG1hdGNoID0gL14oLipcXC8pKFxcZCspJC8uZXhlYyhzcmMpO1xuICAgIGNvbnN0IGJhc2UgPSBtYXRjaD8uWzFdO1xuICAgIGNvbnN0IHNpemUgPSArKG1hdGNoPy5bMl0gPz8gMCk7XG5cbiAgICBpZiAoIWJhc2UgfHwgIXNpemUpIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIC8vIFRoaXMgc2hvdWxkIGNvdmVyIG1vc3QgY29tbW9uIGRlbnNpdGllcyBhY2NvcmRpbmcgdG8gaHR0cHM6Ly93d3cubXlkZXZpY2UuaW8vI3RhYjFcbiAgICBsZXQgcmVzdWx0ID0gWzEsIDEuNSwgMiwgMywgNF1cbiAgICAgICAgLm1hcChkZW5zaXR5ID0+IHtcbiAgICAgICAgICAgIGxldCB1cmwgPSBgJHtiYXNlfSR7TWF0aC5yb3VuZChzaXplICogZGVuc2l0eSl9YDtcbiAgICAgICAgICAgIGlmIChmb3JJbWFnZVNldCkge1xuICAgICAgICAgICAgICAgIHVybCA9IGB1cmwoXCIke3VybH1cIilgO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYCR7dXJsfSAke2RlbnNpdHl9eGA7XG4gICAgICAgIH0pXG4gICAgICAgIC5qb2luKCcsICcpO1xuXG4gICAgaWYgKGZvckltYWdlU2V0KSB7XG4gICAgICAgIHJlc3VsdCA9IGBpbWFnZS1zZXQoJHtyZXN1bHR9KWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdpbWdbbmF0dXJhbFNyY0RlbnNpdHldJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsU3JjRGVuc2l0eURpcmVjdGl2ZSB7XG4gICAgLyoqXG4gICAgICogQXV0b21hdGljYWxseSBhcHBseSBpbWFnZSBzZWxlY3Rpb24gYmFzZWQgb24gc2NyZWVuIGRlbnNpdHkuXG4gICAgICpcbiAgICAgKiBUaGUgZ2l2ZW4gVVJMICoqTVVTVCoqIGJlIHRoZSBub3JtYWwgZGVuc2l0eSBVUkwuIEFuZCBpdCAqKk1VU1QqKiBpbmNsdWRlXG4gICAgICogdGhlIHNpemUgYXMgbGFzdCBwYXRoIHNlZ21lbnQuIFRoYXQgc2l6ZSB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgY2hhbmdlZFxuICAgICAqIGZvciBvdGhlciBzY3JlZW4gZGVuc2l0aWVzLiBUaGF0IG1lYW5zIHRoYXQgdGhlIHNlcnZlciAqKk1VU1QqKiBiZSBhYmxlIHRvXG4gICAgICogc2VydmUgYW4gaW1hZ2Ugb2YgdGhlIGdpdmVuIHNpemUuXG4gICAgICpcbiAgICAgKiBVc2FnZTpcbiAgICAgKlxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8aW1nIG5hdHVyYWxTcmNEZW5zaXR5PVwiL2FwaS9pbWFnZS8xMjMvMjAwXCIgLz5cbiAgICAgKiBgYGBcbiAgICAgKlxuICAgICAqIFdpbGwgZ2VuZXJhdGUgc29tZXRoaW5nIGxpa2U6XG4gICAgICpcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGltZ1xuICAgICAqICAgICBzcmM9XCIvYXBpL2ltYWdlLzEyMy8yMDBcIlxuICAgICAqICAgICBzcmNzZXQ9XCIvYXBpL2ltYWdlLzEyMy8yMDAsIC9hcGkvaW1hZ2UvMTIzLzMwMCAxLjV4LCAvYXBpL2ltYWdlLzEyMy80MDAgMngsIC9hcGkvaW1hZ2UvMTIzLzYwMCAzeCwgL2FwaS9pbWFnZS8xMjMvODAwIDR4XCJcbiAgICAgKiAvPlxuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogU2VlIGh0dHBzOi8vd2ViLmRldi9jb2RlbGFiLWRlbnNpdHktZGVzY3JpcHRvcnMvXG4gICAgICovXG4gICAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pXG4gICAgcHVibGljIHNldCBuYXR1cmFsU3JjRGVuc2l0eShzcmM6IHN0cmluZykge1xuICAgICAgICBpZiAoIXNyYykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3JjID0gc3JjO1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zcmNzZXQgPSBkZW5zaXRpZXMoc3JjLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MSW1hZ2VFbGVtZW50Pikge31cbn1cbiJdfQ==
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWRlbnNpdHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvY29tbW9uL2RpcmVjdGl2ZXMvc3JjLWRlbnNpdHkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBRW5FLE1BQU0sVUFBVSxTQUFTLENBQUMsR0FBVyxFQUFFLFdBQW9CO0lBQ3ZELE1BQU0sS0FBSyxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEMsTUFBTSxJQUFJLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEIsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRWhDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNqQixPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxxRkFBcUY7SUFDckYsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3pCLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUNYLElBQUksR0FBRyxHQUFHLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDakQsSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUNkLEdBQUcsR0FBRyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQzFCLENBQUM7UUFFRCxPQUFPLEdBQUcsR0FBRyxJQUFJLE9BQU8sR0FBRyxDQUFDO0lBQ2hDLENBQUMsQ0FBQztTQUNELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVoQixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2QsTUFBTSxHQUFHLGFBQWEsTUFBTSxHQUFHLENBQUM7SUFDcEMsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2xCLENBQUM7QUFNRCxNQUFNLE9BQU8sMEJBQTBCO0lBSnZDO1FBS3FCLGVBQVUsR0FBRyxNQUFNLENBQStCLFVBQVUsQ0FBQyxDQUFDO0tBb0NsRjtJQWxDRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09Bd0JHO0lBQ0gsSUFDVyxpQkFBaUIsQ0FBQyxHQUFXO1FBQ3BDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNQLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUN4QyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRSxDQUFDOzhHQXBDUSwwQkFBMEI7a0dBQTFCLDBCQUEwQjs7MkZBQTFCLDBCQUEwQjtrQkFKdEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxVQUFVLEVBQUUsSUFBSTtpQkFDbkI7OEJBOEJjLGlCQUFpQjtzQkFEM0IsS0FBSzt1QkFBQyxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBkZW5zaXRpZXMoc3JjOiBzdHJpbmcsIGZvckltYWdlU2V0OiBib29sZWFuKTogc3RyaW5nIHtcbiAgICBjb25zdCBtYXRjaCA9IC9eKC4qXFwvKShcXGQrKSQvLmV4ZWMoc3JjKTtcbiAgICBjb25zdCBiYXNlID0gbWF0Y2g/LlsxXTtcbiAgICBjb25zdCBzaXplID0gKyhtYXRjaD8uWzJdID8/IDApO1xuXG4gICAgaWYgKCFiYXNlIHx8ICFzaXplKSB7XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICAvLyBUaGlzIHNob3VsZCBjb3ZlciBtb3N0IGNvbW1vbiBkZW5zaXRpZXMgYWNjb3JkaW5nIHRvIGh0dHBzOi8vd3d3Lm15ZGV2aWNlLmlvLyN0YWIxXG4gICAgbGV0IHJlc3VsdCA9IFsxLCAxLjUsIDIsIDMsIDRdXG4gICAgICAgIC5tYXAoZGVuc2l0eSA9PiB7XG4gICAgICAgICAgICBsZXQgdXJsID0gYCR7YmFzZX0ke01hdGgucm91bmQoc2l6ZSAqIGRlbnNpdHkpfWA7XG4gICAgICAgICAgICBpZiAoZm9ySW1hZ2VTZXQpIHtcbiAgICAgICAgICAgICAgICB1cmwgPSBgdXJsKFwiJHt1cmx9XCIpYDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGAke3VybH0gJHtkZW5zaXR5fXhgO1xuICAgICAgICB9KVxuICAgICAgICAuam9pbignLCAnKTtcblxuICAgIGlmIChmb3JJbWFnZVNldCkge1xuICAgICAgICByZXN1bHQgPSBgaW1hZ2Utc2V0KCR7cmVzdWx0fSlgO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnaW1nW25hdHVyYWxTcmNEZW5zaXR5XScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbFNyY0RlbnNpdHlEaXJlY3RpdmUge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxJbWFnZUVsZW1lbnQ+PihFbGVtZW50UmVmKTtcblxuICAgIC8qKlxuICAgICAqIEF1dG9tYXRpY2FsbHkgYXBwbHkgaW1hZ2Ugc2VsZWN0aW9uIGJhc2VkIG9uIHNjcmVlbiBkZW5zaXR5LlxuICAgICAqXG4gICAgICogVGhlIGdpdmVuIFVSTCAqKk1VU1QqKiBiZSB0aGUgbm9ybWFsIGRlbnNpdHkgVVJMLiBBbmQgaXQgKipNVVNUKiogaW5jbHVkZVxuICAgICAqIHRoZSBzaXplIGFzIGxhc3QgcGF0aCBzZWdtZW50LiBUaGF0IHNpemUgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIGNoYW5nZWRcbiAgICAgKiBmb3Igb3RoZXIgc2NyZWVuIGRlbnNpdGllcy4gVGhhdCBtZWFucyB0aGF0IHRoZSBzZXJ2ZXIgKipNVVNUKiogYmUgYWJsZSB0b1xuICAgICAqIHNlcnZlIGFuIGltYWdlIG9mIHRoZSBnaXZlbiBzaXplLlxuICAgICAqXG4gICAgICogVXNhZ2U6XG4gICAgICpcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGltZyBuYXR1cmFsU3JjRGVuc2l0eT1cIi9hcGkvaW1hZ2UvMTIzLzIwMFwiIC8+XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBXaWxsIGdlbmVyYXRlIHNvbWV0aGluZyBsaWtlOlxuICAgICAqXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpbWdcbiAgICAgKiAgICAgc3JjPVwiL2FwaS9pbWFnZS8xMjMvMjAwXCJcbiAgICAgKiAgICAgc3Jjc2V0PVwiL2FwaS9pbWFnZS8xMjMvMjAwLCAvYXBpL2ltYWdlLzEyMy8zMDAgMS41eCwgL2FwaS9pbWFnZS8xMjMvNDAwIDJ4LCAvYXBpL2ltYWdlLzEyMy82MDAgM3gsIC9hcGkvaW1hZ2UvMTIzLzgwMCA0eFwiXG4gICAgICogLz5cbiAgICAgKiBgYGBcbiAgICAgKlxuICAgICAqIFNlZSBodHRwczovL3dlYi5kZXYvY29kZWxhYi1kZW5zaXR5LWRlc2NyaXB0b3JzL1xuICAgICAqL1xuICAgIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KVxuICAgIHB1YmxpYyBzZXQgbmF0dXJhbFNyY0RlbnNpdHkoc3JjOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKCFzcmMpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNyYyA9IHNyYztcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3Jjc2V0ID0gZGVuc2l0aWVzKHNyYywgZmFsc2UpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,19 +1,19 @@
1
- import { Pipe } from '@angular/core';
1
+ import { Pipe, inject } from '@angular/core';
2
+ import { NaturalEnumService } from '../../../services/enum.service';
2
3
  import * as i0 from "@angular/core";
3
- import * as i1 from "../../../services/enum.service";
4
4
  /**
5
5
  * A pipe to output an enum user-friendly name, instead of its value.
6
6
  *
7
7
  * Usage would be: {{ element.priority | enum: 'Priority' | async }}
8
8
  */
9
9
  export class NaturalEnumPipe {
10
- constructor(enumService) {
11
- this.enumService = enumService;
10
+ constructor() {
11
+ this.enumService = inject(NaturalEnumService);
12
12
  }
13
13
  transform(value, enumName) {
14
14
  return this.enumService.getValueName(value, enumName);
15
15
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalEnumPipe, deps: [{ token: i1.NaturalEnumService }], target: i0.ɵɵFactoryTarget.Pipe }); }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalEnumPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
17
17
  static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.3", ngImport: i0, type: NaturalEnumPipe, isStandalone: true, name: "enum" }); }
18
18
  }
19
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalEnumPipe, decorators: [{
@@ -22,5 +22,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImpor
22
22
  name: 'enum',
23
23
  standalone: true,
24
24
  }]
25
- }], ctorParameters: () => [{ type: i1.NaturalEnumService }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvY29tbW9uL3BpcGVzL2VudW0ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQzs7O0FBSWxEOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sZUFBZTtJQUN4QixZQUFvQyxXQUErQjtRQUEvQixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7SUFBRyxDQUFDO0lBRWhFLFNBQVMsQ0FBQyxLQUFVLEVBQUUsUUFBZ0I7UUFDekMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDMUQsQ0FBQzs4R0FMUSxlQUFlOzRHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBSjNCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLE1BQU07b0JBQ1osVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmF0dXJhbEVudW1TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9lbnVtLnNlcnZpY2UnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBBIHBpcGUgdG8gb3V0cHV0IGFuIGVudW0gdXNlci1mcmllbmRseSBuYW1lLCBpbnN0ZWFkIG9mIGl0cyB2YWx1ZS5cbiAqXG4gKiBVc2FnZSB3b3VsZCBiZToge3sgZWxlbWVudC5wcmlvcml0eSB8IGVudW06ICdQcmlvcml0eScgfCBhc3luYyB9fVxuICovXG5AUGlwZSh7XG4gICAgbmFtZTogJ2VudW0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxFbnVtUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGVudW1TZXJ2aWNlOiBOYXR1cmFsRW51bVNlcnZpY2UpIHt9XG5cbiAgICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBhbnksIGVudW1OYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbnVtU2VydmljZS5nZXRWYWx1ZU5hbWUodmFsdWUsIGVudW1OYW1lKTtcbiAgICB9XG59XG4iXX0=
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvY29tbW9uL3BpcGVzL2VudW0ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFpQixNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7O0FBR2xFOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sZUFBZTtJQUo1QjtRQUtxQixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0tBSzdEO0lBSFUsU0FBUyxDQUFDLEtBQVUsRUFBRSxRQUFnQjtRQUN6QyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMxRCxDQUFDOzhHQUxRLGVBQWU7NEdBQWYsZUFBZTs7MkZBQWYsZUFBZTtrQkFKM0IsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsTUFBTTtvQkFDWixVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm0sIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05hdHVyYWxFbnVtU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZW51bS5zZXJ2aWNlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQSBwaXBlIHRvIG91dHB1dCBhbiBlbnVtIHVzZXItZnJpZW5kbHkgbmFtZSwgaW5zdGVhZCBvZiBpdHMgdmFsdWUuXG4gKlxuICogVXNhZ2Ugd291bGQgYmU6IHt7IGVsZW1lbnQucHJpb3JpdHkgfCBlbnVtOiAnUHJpb3JpdHknIHwgYXN5bmMgfX1cbiAqL1xuQFBpcGUoe1xuICAgIG5hbWU6ICdlbnVtJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsRW51bVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVudW1TZXJ2aWNlID0gaW5qZWN0KE5hdHVyYWxFbnVtU2VydmljZSk7XG5cbiAgICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBhbnksIGVudW1OYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbnVtU2VydmljZS5nZXRWYWx1ZU5hbWUodmFsdWUsIGVudW1OYW1lKTtcbiAgICB9XG59XG4iXX0=
@@ -9,6 +9,6 @@ export { NaturalTimeAgoPipe } from './pipes/time-ago.pipe';
9
9
  export * from './services/memory-storage';
10
10
  export { NaturalSrcDensityDirective } from './directives/src-density.directive';
11
11
  export { NaturalBackgroundDensityDirective } from './directives/background-density.directive';
12
- export { NATURAL_SEO_CONFIG, NaturalSeoService, } from './services/seo.service';
12
+ export { NATURAL_SEO_CONFIG, NaturalSeoService } from './services/seo.service';
13
13
  export { provideSeo } from './services/seo.provider';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2NvbW1vbi9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzVGLE9BQU8sRUFDSCxrQkFBa0IsRUFFbEIsaUJBQWlCLEdBTXBCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuYXR1cmFsXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2xpbmthYmxlLXRhYi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9jYXBpdGFsaXplLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9lbGxpcHNpcy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvZW51bS5waXBlJztcbmV4cG9ydCB7TmF0dXJhbFRpbWVBZ29QaXBlfSBmcm9tICcuL3BpcGVzL3RpbWUtYWdvLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9tZW1vcnktc3RvcmFnZSc7XG5leHBvcnQge05hdHVyYWxTcmNEZW5zaXR5RGlyZWN0aXZlfSBmcm9tICcuL2RpcmVjdGl2ZXMvc3JjLWRlbnNpdHkuZGlyZWN0aXZlJztcbmV4cG9ydCB7TmF0dXJhbEJhY2tncm91bmREZW5zaXR5RGlyZWN0aXZlfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFja2dyb3VuZC1kZW5zaXR5LmRpcmVjdGl2ZSc7XG5leHBvcnQge1xuICAgIE5BVFVSQUxfU0VPX0NPTkZJRyxcbiAgICBOYXR1cmFsU2VvQ29uZmlnLFxuICAgIE5hdHVyYWxTZW9TZXJ2aWNlLFxuICAgIE5hdHVyYWxTZW8sXG4gICAgTmF0dXJhbFNlb0Jhc2ljLFxuICAgIE5hdHVyYWxTZW9SZXNvbHZlLFxuICAgIE5hdHVyYWxTZW9DYWxsYmFjayxcbiAgICBOYXR1cmFsU2VvUmVzb2x2ZURhdGEsXG59IGZyb20gJy4vc2VydmljZXMvc2VvLnNlcnZpY2UnO1xuZXhwb3J0IHtwcm92aWRlU2VvfSBmcm9tICcuL3NlcnZpY2VzL3Nlby5wcm92aWRlcic7XG4iXX0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2NvbW1vbi9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzVGLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBUzdFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbmF0dXJhbFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9saW5rYWJsZS10YWIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvY2FwaXRhbGl6ZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvZWxsaXBzaXMucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL2VudW0ucGlwZSc7XG5leHBvcnQge05hdHVyYWxUaW1lQWdvUGlwZX0gZnJvbSAnLi9waXBlcy90aW1lLWFnby5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvbWVtb3J5LXN0b3JhZ2UnO1xuZXhwb3J0IHtOYXR1cmFsU3JjRGVuc2l0eURpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL3NyYy1kZW5zaXR5LmRpcmVjdGl2ZSc7XG5leHBvcnQge05hdHVyYWxCYWNrZ3JvdW5kRGVuc2l0eURpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL2JhY2tncm91bmQtZGVuc2l0eS5kaXJlY3RpdmUnO1xuZXhwb3J0IHtOQVRVUkFMX1NFT19DT05GSUcsIE5hdHVyYWxTZW9TZXJ2aWNlfSBmcm9tICcuL3NlcnZpY2VzL3Nlby5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgICBOYXR1cmFsU2VvQ29uZmlnLFxuICAgIE5hdHVyYWxTZW8sXG4gICAgTmF0dXJhbFNlb0Jhc2ljLFxuICAgIE5hdHVyYWxTZW9SZXNvbHZlLFxuICAgIE5hdHVyYWxTZW9DYWxsYmFjayxcbiAgICBOYXR1cmFsU2VvUmVzb2x2ZURhdGEsXG59IGZyb20gJy4vc2VydmljZXMvc2VvLnNlcnZpY2UnO1xuZXhwb3J0IHtwcm92aWRlU2VvfSBmcm9tICcuL3NlcnZpY2VzL3Nlby5wcm92aWRlcic7XG4iXX0=
@@ -1,12 +1,11 @@
1
1
  import { DOCUMENT } from '@angular/common';
2
- import { Inject, Injectable, InjectionToken, LOCALE_ID } from '@angular/core';
3
- import { NavigationEnd, PRIMARY_OUTLET } from '@angular/router';
2
+ import { Injectable, InjectionToken, LOCALE_ID, inject } from '@angular/core';
3
+ import { Meta, Title } from '@angular/platform-browser';
4
+ import { NavigationEnd, PRIMARY_OUTLET, Router } from '@angular/router';
4
5
  import { NaturalDialogTriggerComponent } from '../../dialog-trigger/dialog-trigger.component';
5
6
  import { combineLatest, filter, map, Observable, of, startWith, switchMap } from 'rxjs';
6
7
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
7
8
  import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/router";
9
- import * as i2 from "@angular/platform-browser";
10
9
  export const NATURAL_SEO_CONFIG = new InjectionToken('Configuration for SEO service');
11
10
  export function stripTags(str) {
12
11
  return str.replace(/<\/?[^>]*>/g, '');
@@ -26,15 +25,16 @@ export function stripTags(str) {
26
25
  * configured for it in the routing.
27
26
  */
28
27
  export class NaturalSeoService {
29
- constructor(configToken, router, titleService, metaTagService, document, locale) {
30
- this.router = router;
31
- this.titleService = titleService;
32
- this.metaTagService = metaTagService;
33
- this.document = document;
34
- this.locale = locale;
28
+ constructor() {
29
+ this.router = inject(Router);
30
+ this.titleService = inject(Title);
31
+ this.metaTagService = inject(Meta);
32
+ this.document = inject(DOCUMENT);
33
+ this.locale = inject(LOCALE_ID);
35
34
  this.config = {
36
35
  applicationName: '',
37
36
  };
37
+ const configToken = inject(NATURAL_SEO_CONFIG);
38
38
  combineLatest({
39
39
  config: configToken instanceof Observable ? configToken.pipe(startWith(this.config)) : of(configToken),
40
40
  navigationEnd: this.router.events.pipe(filter(event => event instanceof NavigationEnd)),
@@ -222,7 +222,7 @@ export class NaturalSeoService {
222
222
  }
223
223
  return of(seo);
224
224
  }
225
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalSeoService, deps: [{ token: NATURAL_SEO_CONFIG }, { token: i1.Router }, { token: i2.Title }, { token: i2.Meta }, { token: DOCUMENT }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
225
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalSeoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
226
226
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalSeoService, providedIn: 'root' }); }
227
227
  }
228
228
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalSeoService, decorators: [{
@@ -230,14 +230,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImpor
230
230
  args: [{
231
231
  providedIn: 'root',
232
232
  }]
233
- }], ctorParameters: () => [{ type: undefined, decorators: [{
234
- type: Inject,
235
- args: [NATURAL_SEO_CONFIG]
236
- }] }, { type: i1.Router }, { type: i2.Title }, { type: i2.Meta }, { type: Document, decorators: [{
237
- type: Inject,
238
- args: [DOCUMENT]
239
- }] }, { type: undefined, decorators: [{
240
- type: Inject,
241
- args: [LOCALE_ID]
242
- }] }] });
243
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VvLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9jb21tb24vc2VydmljZXMvc2VvLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFNUUsT0FBTyxFQUErQixhQUFhLEVBQUUsY0FBYyxFQUFTLE1BQU0saUJBQWlCLENBQUM7QUFDcEcsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDNUYsT0FBTyxFQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN0RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQTZHOUQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQW1CLCtCQUErQixDQUFDLENBQUM7QUFFeEcsTUFBTSxVQUFVLFNBQVMsQ0FBQyxHQUFXO0lBQ2pDLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDMUMsQ0FBQztBQVlEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFJSCxNQUFNLE9BQU8saUJBQWlCO0lBTTFCLFlBQ2dDLFdBQTZCLEVBQ3hDLE1BQWMsRUFDZCxZQUFtQixFQUNuQixjQUFvQixFQUNGLFFBQWtCLEVBQzFCLE1BQWM7UUFKeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGlCQUFZLEdBQVosWUFBWSxDQUFPO1FBQ25CLG1CQUFjLEdBQWQsY0FBYyxDQUFNO1FB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QU8sSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7WUFDNUUsQ0FBQztZQUVELE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUM7WUFFOUIsT0FBTyxDQUFDLEtBQUssWUFBWSxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN6RCxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ1IsT0FBTztvQkFDSCxLQUFLLEVBQUUsS0FBSyxFQUFFLFFBQVEsSUFBSSxLQUFLLEVBQUUsSUFBSSxJQUFJLEVBQUU7b0JBQzNDLFdBQVcsRUFBRSxLQUFLLEVBQUUsV0FBVztvQkFDL0IsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO2lCQUNyQixDQUFDO1lBQ04sQ0FBQyxDQUFDLENBQ0wsQ0FBQztRQUNOLENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQixDQUFDOzhHQTlPUSxpQkFBaUIsa0JBT2Qsa0JBQWtCLDRFQUlsQixRQUFRLGFBQ1IsU0FBUztrSEFaWixpQkFBaUIsY0FGZCxNQUFNOzsyRkFFVCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFRUSxNQUFNOzJCQUFDLGtCQUFrQjs7MEJBSXpCLE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsTUFBTTsyQkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgTE9DQUxFX0lEfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWV0YSwgVGl0bGV9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBEYXRhLCBOYXZpZ2F0aW9uRW5kLCBQUklNQVJZX09VVExFVCwgUm91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtOYXR1cmFsRGlhbG9nVHJpZ2dlckNvbXBvbmVudH0gZnJvbSAnLi4vLi4vZGlhbG9nLXRyaWdnZXIvZGlhbG9nLXRyaWdnZXIuY29tcG9uZW50JztcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgZmlsdGVyLCBtYXAsIE9ic2VydmFibGUsIG9mLCBzdGFydFdpdGgsIHN3aXRjaE1hcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5leHBvcnQgdHlwZSBOYXR1cmFsU2VvID0gTmF0dXJhbFNlb0Jhc2ljIHwgTmF0dXJhbFNlb0NhbGxiYWNrIHwgTmF0dXJhbFNlb1Jlc29sdmU7XG5cbi8qKlxuICogVHlwaWNhbGx5IHVzZWQgZm9yIFwic3RhdGljXCIgcGFnZXMgd2hlcmUgdGhlcmUgaXMgbm90IGEgc2luZ2xlIHJlc29sdmVkIG9iamVjdC4gU29cbiAqIGFsbCBwYWdlcyBzdWNoIGFzIFwiQWJvdXRcIiwgb3IgbGlzdCBvZiBvYmplY3RzIChsaXN0IG9mIHJpc2tzLCBldGMuKS5cbiAqXG4gKiBUaGlzIHNob3VsZCBiZSB0aGUgbW9zdCBjb21tb24gdXNlZCB2YXJpYW50LlxuICovXG5leHBvcnQgdHlwZSBOYXR1cmFsU2VvQmFzaWMgPSBSb2JvdHMgJiB7XG4gICAgLyoqXG4gICAgICogVGhlIHBhZ2UgdGl0bGUsIHRoYXQgd2lsbCBiZSBjb25jYXRlbmF0ZWQgd2l0aCBhcHBsaWNhdGlvbiBuYW1lXG4gICAgICovXG4gICAgdGl0bGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIElmIGdpdmVuIHdpbGwgYmUgdXNlZCBhcyBwYWdlIGRlc2NyaXB0aW9uLCBvdGhlcndpc2UgZmFsbGJhY2sgb24gZGVmYXVsdCB2YWx1ZVxuICAgICAqL1xuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogTGlzdCBvZiBwYXJhbWV0ZXJzIGluY2x1ZGVkIGluIHRoZSBjYW5vbmljYWwgdGFnJ3MgdXJsXG4gICAgICovXG4gICAgY2Fub25pY2FsUXVlcnlQYXJhbXNXaGl0ZWxpc3Q/OiBzdHJpbmdbXTtcbn07XG5cbnR5cGUgTmF0dXJhbExpbmtEZWZpbml0aW9uID0ge1xuICAgIGNoYXJzZXQ/OiBzdHJpbmc7XG4gICAgY3Jvc3NvcmlnaW4/OiBzdHJpbmc7XG4gICAgaHJlZj86IHN0cmluZztcbiAgICBocmVmbGFuZz86IHN0cmluZztcbiAgICBtZWRpYT86IHN0cmluZztcbiAgICByZWw/OiBzdHJpbmc7XG4gICAgcmV2Pzogc3RyaW5nO1xuICAgIHNpemVzPzogc3RyaW5nO1xuICAgIHRhcmdldD86IHN0cmluZztcbiAgICB0eXBlPzogc3RyaW5nO1xufSAmIFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4vKipcbiAqIFR5cGljYWxseSB1c2VkIGZvciBhIFwiZHluYW1pY1wiIHBhZ2Ugd2hlcmUgYSBzaW5nbGUgb2JqZWN0IGlzIHJlc29sdmVkLiBTbyBhIGRldGFpbCBwYWdlLCBzdWNoXG4gKiBhcyB0aGUgZGV0YWlsIG9mIGEgcmlzayBhbmQgc28gb24uXG4gKi9cbmV4cG9ydCB0eXBlIE5hdHVyYWxTZW9SZXNvbHZlID0gUm9ib3RzICYge1xuICAgIC8qKlxuICAgICAqIFRoZSBrZXkgYG1vZGVsYCB3aWxsIGJlIHVzZWQgaW4gdGhlIHJlc29sdmVkIGRhdGEgdG8gZmluZCB0aGUgcmVzb2x2ZWQgb2JqZWN0LiBUaGUgZnVsbE5hbWVcbiAgICAgKiBvciBuYW1lIG9mIHRoZSBvYmplY3Qgd2lsbCBiZSB1c2VkIGZvciBwYWdlIHRpdGxlLCBhbmQgdGhlIG9iamVjdCBkZXNjcmlwdGlvbiwgaWYgYW55LFxuICAgICAqIHdpbGwgYmUgdXNlZCBmb3IgcGFnZSBkZXNjcmlwdGlvbi5cbiAgICAgKi9cbiAgICByZXNvbHZlOiB0cnVlO1xufTtcblxuLyoqXG4gKiBSYXJlbHkgdXNlZCBmb3IgYSBwYWdlIHRoYXQgaGFzIHZlcnkgc3BlY2lmaWMgbmVlZHMgYW5kIG5lZWQgdG8gYnVpbGQgdGl0bGUgYW5kIGRlc2NyaXB0aW9uIGluIGEgY3VzdG9tIHdheS5cbiAqIFRoZSBjYWxsYmFjayBiYWNrIHdpbGwgYmUgZ2l2ZW4gdGhlIHJlc29sdmVkIGRhdGEsIGFuZCBpdCBpcyB1cCB0byB0aGUgY2FsbGJhY2sgdG8gZmluZCB3aGF0ZXZlciBpdCBuZWVkcy5cbiAqL1xuZXhwb3J0IHR5cGUgTmF0dXJhbFNlb0NhbGxiYWNrID0gKHJvdXRlRGF0YTogRGF0YSkgPT4gTmF0dXJhbFNlb0Jhc2ljIHwgT2JzZXJ2YWJsZTxOYXR1cmFsU2VvQmFzaWM+O1xuXG4vKipcbiAqIFR5cGljYWxseSB1c2VkIHRvIHR5cGUgdGhlIHJvdXRpbmcgZGF0YSByZWNlaXZlZCBpbiB0aGUgY29tcG9uZW50LCBlZzpcbiAqXG4gKiBgYGB0c1xuICogY2xhc3MgTXlDb21wb25lbnQgZXh0ZW5kcyBOYXR1cmFsQWJzdHJhY3REZXRhaWw8TXlTZXJ2aWNlLCBOYXR1cmFsU2VvUmVzb2x2ZURhdGE+IHt9XG4gKiBgYGBcbiAqL1xuZXhwb3J0IHR5cGUgTmF0dXJhbFNlb1Jlc29sdmVEYXRhID0ge1xuICAgIHNlbzogTmF0dXJhbFNlb0Jhc2ljO1xufTtcblxudHlwZSBSb2JvdHMgPSB7XG4gICAgLyoqXG4gICAgICogSWYgZ2l2ZW4gd2lsbCBiZSB1c2VkIGFzIHJvYm90cyBtZXRhIHRhZywgb3RoZXJ3aXNlIGZhbGxiYWNrIG9uIGRlZmF1bHQgdmFsdWVcbiAgICAgKi9cbiAgICByb2JvdHM/OiBzdHJpbmc7XG59O1xuXG50eXBlIE5hdHVyYWxTZW9Db25maWdQbGFpbiA9IHtcbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGUgYXBwbGljYXRpb24gdGhhdCB3aWxsIGFsd2F5cyBhcHBlYXIgaW4gdGhlIHBhZ2UgdGl0bGVcbiAgICAgKi9cbiAgICByZWFkb25seSBhcHBsaWNhdGlvbk5hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIERlZmF1bHQgdmFsdWUgZm9yIGRlc2NyaXB0aW9uIG1ldGEgdGhhdCBpcyB1c2VkIGZvciBwYWdlcyB3aXRob3V0IHZhbHVlXG4gICAgICovXG4gICAgcmVhZG9ubHkgZGVmYXVsdERlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogRGVmYXVsdCB2YWx1ZSBmb3Igcm9ib3RzIG1ldGEgdGhhdCBpcyB1c2VkIGZvciBwYWdlcyB3aXRob3V0IHZhbHVlXG4gICAgICovXG4gICAgcmVhZG9ubHkgZGVmYXVsdFJvYm90cz86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIElmIGdpdmVuLCB0aGUgY2FsbGJhY2sgd2lsbCBiZSBjYWxsZWQgZm9yIGVhY2ggcm91dGUgYW5kIG11c3QgcmV0dXJuIGEgc3RyaW5nIHRoYXQgd2lsbFxuICAgICAqIGJlIGluc2VydGVkIGJldHdlZW4gdGhlIHBhZ2UgdGl0bGUgYW5kIHRoZSBhcHBsaWNhdGlvbiBuYW1lLlxuICAgICAqXG4gICAgICogSXQgc2hvdWxkIGJlIHVzZWQgdG8gY29tcGxldGUgdGhlIHRpdGxlIHdpdGggaW5mbyB0aGF0IGFyZSBvZnRlbiwgYnV0IG5vdCBuZWNlc3NhcmlseSBhbHdheXMsXG4gICAgICogYXZhaWxhYmxlIHRocm91Z2hvdXQgdGhlIGVudGlyZSBhcHBsaWNhdGlvbi4gVHlwaWNhbGx5IHVzZWQgZm9yIHRoZSBzaXRlL3N0YXRlIGluIE9LcGlsb3QuXG4gICAgICovXG4gICAgcmVhZG9ubHkgZXh0cmFQYXJ0PzogKHJvdXRlRGF0YTogRGF0YSkgPT4gc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVXNlZCB0byBnZW5lcmF0ZSBhbHRlcm5hdGl2ZSB0YWdzXG4gICAgICogPGxpbmsgcmVsPVwiYWx0ZXJuYXRlXCIgaHJlZmxhbmc9XCJlblwiIGhyZWY9XCJodHRwczovL3d3dy5leGFtcGxlLmNvbS9lbi9wYWdlXCI+XG4gICAgICovXG4gICAgcmVhZG9ubHkgbGFuZ3VhZ2VzPzogcmVhZG9ubHkgc3RyaW5nW107XG59O1xuXG5leHBvcnQgdHlwZSBOYXR1cmFsU2VvQ29uZmlnID0gTmF0dXJhbFNlb0NvbmZpZ1BsYWluIHwgT2JzZXJ2YWJsZTxOYXR1cmFsU2VvQ29uZmlnUGxhaW4+O1xuZXhwb3J0IGNvbnN0IE5BVFVSQUxfU0VPX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOYXR1cmFsU2VvQ29uZmlnPignQ29uZmlndXJhdGlvbiBmb3IgU0VPIHNlcnZpY2UnKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHN0cmlwVGFncyhzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlKC88XFwvP1tePl0qPi9nLCAnJyk7XG59XG5cbnR5cGUgTW9kZWwgPSB7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICBmdWxsTmFtZT86IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcbn07XG5cbnR5cGUgUmVzb2x2ZWREYXRhID0ge1xuICAgIG1vZGVsPzogTW9kZWwgfCBPYnNlcnZhYmxlPE1vZGVsPjtcbn07XG5cbi8qKlxuICogVGhpcyBzZXJ2aWNlIGlzIHJlc3BvbnNpYmxlIHRvIGtlZXAgdXAgdG8gZGF0ZSB0aGUgcGFnZSB0aXRsZSBhbmQgcGFnZSBkZXNjcmlwdGlvbiBhY2NvcmRpbmdcbiAqIHRvIHdoYXQgaXMgY29uZmlndXJlZCBpbiByb3V0aW5nIG9yIGRlZmF1bHQgdmFsdWVzLlxuICpcbiAqIEl0ICoqbXVzdCoqIGJlIGluamVjdGVkIGluIHRoZSByb290IG1vZHVsZSBvZiB0aGUgYXBwbGljYXRpb24gdG8gaGF2ZSBlZmZlY3RzIGluIGFsbCBtb2R1bGVzLiBBbmQgaXRcbiAqIG11c3QgYmUgcHJvdmlkZWQgYSBjb25maWd1cmF0aW9uLlxuICpcbiAqIFRoZSBmdWxsIHRpdGxlIGhhcyB0aGUgZm9sbG93aW5nIHN0cnVjdHVyZTpcbiAqXG4gKiAgICAgZGlhbG9nIHRpdGxlIC0gcGFnZSB0aXRsZSAtIGV4dHJhIHBhcnQgLSBhcHAgbmFtZVxuICpcbiAqIGBkaWFsb2cgdGl0bGVgIG9ubHkgZXhpc3RzIGlmIGEgYE5hdHVyYWxEaWFsb2dUcmlnZ2VyQ29tcG9uZW50YCBpcyBjdXJyZW50bHkgb3BlbiwgYW5kIHRoYXQgc29tZSBTRU8gaXNcbiAqIGNvbmZpZ3VyZWQgZm9yIGl0IGluIHRoZSByb3V0aW5nLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsU2VvU2VydmljZSB7XG4gICAgcHJpdmF0ZSByb3V0ZURhdGE/OiBEYXRhO1xuICAgIHByaXZhdGUgY29uZmlnOiBOYXR1cmFsU2VvQ29uZmlnUGxhaW4gPSB7XG4gICAgICAgIGFwcGxpY2F0aW9uTmFtZTogJycsXG4gICAgfTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChOQVRVUkFMX1NFT19DT05GSUcpIGNvbmZpZ1Rva2VuOiBOYXR1cmFsU2VvQ29uZmlnLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRpdGxlU2VydmljZTogVGl0bGUsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbWV0YVRhZ1NlcnZpY2U6IE1ldGEsXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQ6IERvY3VtZW50LFxuICAgICAgICBASW5qZWN0KExPQ0FMRV9JRCkgcHJpdmF0ZSBsb2NhbGU6IHN0cmluZyxcbiAgICApIHtcbiAgICAgICAgY29tYmluZUxhdGVzdCh7XG4gICAgICAgICAgICBjb25maWc6IGNvbmZpZ1Rva2VuIGluc3RhbmNlb2YgT2JzZXJ2YWJsZSA/IGNvbmZpZ1Rva2VuLnBpcGUoc3RhcnRXaXRoKHRoaXMuY29uZmlnKSkgOiBvZihjb25maWdUb2tlbiksXG4gICAgICAgICAgICBuYXZpZ2F0aW9uRW5kOiB0aGlzLnJvdXRlci5ldmVudHMucGlwZShmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSksXG4gICAgICAgIH0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKHtjb25maWd9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByb290ID0gdGhpcy5yb3V0ZXIucm91dGVyU3RhdGUucm9vdC5zbmFwc2hvdDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yb3V0ZURhdGEgPSB0aGlzLmdldFJvdXRlRGF0YShyb290KTtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBzZW86IE5hdHVyYWxTZW8gPSB0aGlzLnJvdXRlRGF0YS5zZW8gPz8ge3RpdGxlOiAnJ307XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRpYWxvZ1JvdXRlRGF0YSA9IHRoaXMuZ2V0RGlhbG9nUm91dGVEYXRhKHJvb3QpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkaWFsb2dTZW86IE5hdHVyYWxTZW8gPSBkaWFsb2dSb3V0ZURhdGE/LnNlbztcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBiYXNpYyA9IHRoaXMudG9CYXNpYyhzZW8sIHRoaXMucm91dGVEYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGlhbG9nQmFzaWMgPVxuICAgICAgICAgICAgICAgICAgICAgICAgZGlhbG9nUm91dGVEYXRhICYmIGRpYWxvZ1NlbyA/IHRoaXMudG9CYXNpYyhkaWFsb2dTZW8sIGRpYWxvZ1JvdXRlRGF0YSkgOiBvZihudWxsKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gY29tYmluZUxhdGVzdCh7YmFzaWMsIGRpYWxvZ0Jhc2ljfSk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh7YmFzaWMsIGRpYWxvZ0Jhc2ljfSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChkaWFsb2dCYXNpYykge1xuICAgICAgICAgICAgICAgICAgICBiYXNpYyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmRpYWxvZ0Jhc2ljLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHRoaXMuam9pbihbZGlhbG9nQmFzaWMudGl0bGUsIGJhc2ljLnRpdGxlXSksXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGUoYmFzaWMpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlIHRoZSBTRU8gd2l0aCBnaXZlbiBpbmZvLiBUaGUgZXh0cmEgcGFydCBhbmQgYXBwIG5hbWUgd2lsbCBiZSBhcHBlbmRlZCBhdXRvbWF0aWNhbGx5LlxuICAgICAqXG4gICAgICogSW4gbW9zdCBjYXNlcywgdGhpcyBzaG91bGQgbm90IGJlIHVzZWQuIEFuZCBpbnN0ZWFkLCB0aGUgU0VPIHNob3VsZCBiZSBjb25maWd1cmVkIGluIHRoZSByb3V0aW5nLFxuICAgICAqIHBvc3NpYmx5IHdpdGggdGhlIGNhbGxiYWNrIHZhcmlhbnQgZm9yIHNvbWUgZHluYW1pc20uXG4gICAgICpcbiAgICAgKiBCdXQgaW4gcmFyZSBjYXNlcywgb25seSB0aGUgQ29tcG9uZW50IGlzIGFibGUgdG8gYnVpbGQgYSBwcm9wZXIgcGFnZSB0aXRsZSwgYWZ0ZXIgaXQgZ2F0aGVyZWQgZXZlcnl0aGluZyBpdFxuICAgICAqIG5lZWRlZC4gRm9yIHRob3NlIGNhc2VzLCB0aGUgQ29tcG9uZW50IGNhbiBpbmplY3QgdGhpcyBzZXJ2aWNlIGFuZCB1cGRhdGUgdGhlIFNFTyBkaXJlY3RseS5cbiAgICAgKi9cbiAgICBwdWJsaWMgdXBkYXRlKHNlbzogTmF0dXJhbFNlb0Jhc2ljKTogdm9pZCB7XG4gICAgICAgIC8vIFRpdGxlXG4gICAgICAgIGNvbnN0IHBhcnRzID0gW1xuICAgICAgICAgICAgc2VvLnRpdGxlLFxuICAgICAgICAgICAgdGhpcy5jb25maWcuZXh0cmFQYXJ0ICYmIHRoaXMucm91dGVEYXRhID8gdGhpcy5jb25maWcuZXh0cmFQYXJ0KHRoaXMucm91dGVEYXRhKSA6ICcnLFxuICAgICAgICAgICAgdGhpcy5jb25maWcuYXBwbGljYXRpb25OYW1lLFxuICAgICAgICBdO1xuXG4gICAgICAgIGNvbnN0IHRpdGxlID0gdGhpcy5qb2luKHBhcnRzKTtcbiAgICAgICAgdGhpcy50aXRsZVNlcnZpY2Uuc2V0VGl0bGUodGl0bGUpO1xuXG4gICAgICAgIC8vIERlc2NyaXB0aW9uXG4gICAgICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gc2VvPy5kZXNjcmlwdGlvbiA/PyB0aGlzLmNvbmZpZy5kZWZhdWx0RGVzY3JpcHRpb247XG4gICAgICAgIHRoaXMudXBkYXRlVGFnKCdkZXNjcmlwdGlvbicsIGRlc2NyaXB0aW9uKTtcblxuICAgICAgICAvLyBSb2JvdHNcbiAgICAgICAgY29uc3Qgcm9ib3RzID0gc2VvPy5yb2JvdHMgPz8gdGhpcy5jb25maWcuZGVmYXVsdFJvYm90cztcbiAgICAgICAgdGhpcy51cGRhdGVUYWcoJ3JvYm90cycsIHJvYm90cyk7XG5cbiAgICAgICAgLy8gQ2Fub25pY2FsXG4gICAgICAgIC8vIEFkZCBsYW5ndWFnZSBpbiB1cmwgKGFmdGVyIGRvbWFpbikgaWYgc29tZSBsYW5ndWFnZXMgYXJlIHByb3ZpZGVkIG9ubHlcbiAgICAgICAgY29uc3QgbGFuZ3VhZ2UgPSB0aGlzLmNvbmZpZy5sYW5ndWFnZXM/Lmxlbmd0aCAmJiB0aGlzLmxvY2FsZSA/IHRoaXMubG9jYWxlLnNwbGl0KCctJylbMF0gOiAnJztcbiAgICAgICAgY29uc3QgdXJsUGFydHMgPSB0aGlzLmdldFVybFBhcnRzKHNlby5jYW5vbmljYWxRdWVyeVBhcmFtc1doaXRlbGlzdCA/PyBbXSk7XG4gICAgICAgIHRoaXMudXBkYXRlTGlua1RhZyh7cmVsOiAnY2Fub25pY2FsJywgaHJlZjogdGhpcy5nZXRVcmwodXJsUGFydHMsIGxhbmd1YWdlKX0pO1xuICAgICAgICB0aGlzLnVwZGF0ZUFsdGVybmF0ZXModXJsUGFydHMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQWx0ZXJuYXRlcyh1cmxQYXJ0czoge3VybDogc3RyaW5nOyBwYXJhbXM6IHN0cmluZ30pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb25maWcubGFuZ3VhZ2VzPy5mb3JFYWNoKGxhbmd1YWdlID0+IHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlTGlua1RhZyh7cmVsOiAnYWx0ZXJuYXRlJywgaHJlZjogdGhpcy5nZXRVcmwodXJsUGFydHMsIGxhbmd1YWdlKSwgaHJlZmxhbmc6IGxhbmd1YWdlfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VXJsUGFydHMod2hpdGVMaXN0ZWRQYXJhbXM6IHN0cmluZ1tdKToge3VybDogc3RyaW5nOyBwYXJhbXM6IHN0cmluZ30ge1xuICAgICAgICBsZXQgdXJsID0gJ2h0dHBzOi8vJyArIHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXc/LndpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZTtcbiAgICAgICAgY29uc3QgdXJsVHJlZSA9IHRoaXMucm91dGVyLnBhcnNlVXJsKHRoaXMucm91dGVyLnVybCk7XG5cbiAgICAgICAgLy8gbmVlZCBiZXR0ZXIgbGlrZSBzb21ldGhpbmcgcmVjdXJzaXZlID9cbiAgICAgICAgaWYgKHVybFRyZWUucm9vdC5oYXNDaGlsZHJlbigpKSB7XG4gICAgICAgICAgICBjb25zdCBzZWdtZW50cyA9IHVybFRyZWUucm9vdC5jaGlsZHJlbi5wcmltYXJ5Py5zZWdtZW50cztcbiAgICAgICAgICAgIGlmIChzZWdtZW50cyAmJiBzZWdtZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdXJsICs9ICcvJyArIHNlZ21lbnRzLm1hcChzZWdtZW50ID0+IHNlZ21lbnQucGF0aCkuam9pbignLycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUXVlcnkgUGFyYW1zXG4gICAgICAgIGxldCBwYXJhbXMgPSAnJztcbiAgICAgICAgZm9yIChjb25zdCB3aGl0ZUxpc3RlZFBhcmFtIG9mIHdoaXRlTGlzdGVkUGFyYW1zKSB7XG4gICAgICAgICAgICBpZiAod2hpdGVMaXN0ZWRQYXJhbSBpbiB1cmxUcmVlLnF1ZXJ5UGFyYW1zKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qga2V5ID0gZW5jb2RlVVJJQ29tcG9uZW50KHdoaXRlTGlzdGVkUGFyYW0pO1xuICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gZW5jb2RlVVJJQ29tcG9uZW50KHVybFRyZWUucXVlcnlQYXJhbXNbd2hpdGVMaXN0ZWRQYXJhbV0pO1xuICAgICAgICAgICAgICAgIGlmIChwYXJhbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtcyArPSAnJic7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHBhcmFtcyArPSBgJHtrZXl9PSR7dmFsdWV9YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwYXJhbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSAnPycgKyBwYXJhbXM7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge3VybCwgcGFyYW1zfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgbGFuZ3VhZ2UgYmV0d2VlbiBkb21haW4gYW5kIHVyaSBodHRwczovL2V4YW1wbGUuY29tL2ZyL2ZvbGRlci9wYWdlXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRVcmwodXJsUGFydHM6IHt1cmw6IHN0cmluZzsgcGFyYW1zOiBzdHJpbmd9LCBsYW5ndWFnZT86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGxldCB1cmwgPSB1cmxQYXJ0cy51cmw7XG5cbiAgICAgICAgaWYgKGxhbmd1YWdlKSB7XG4gICAgICAgICAgICB1cmwgPSB0aGlzLmFkZExhbmd1YWdlU2VnbWVudCh1cmwsIGxhbmd1YWdlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh1cmxQYXJ0cy5wYXJhbXMpIHtcbiAgICAgICAgICAgIHVybCArPSB1cmxQYXJ0cy5wYXJhbXM7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdXJsO1xuICAgIH1cblxuICAgIHByaXZhdGUgYWRkTGFuZ3VhZ2VTZWdtZW50KHVybDogc3RyaW5nLCBsYW5ndWFnZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgdXJsT2JqID0gbmV3IFVSTCh1cmwpO1xuICAgICAgICBjb25zdCBuZXdQYXRoID0gdXJsT2JqLnBhdGhuYW1lID09PSAnLycgPyBgLyR7bGFuZ3VhZ2V9YCA6IGAvJHtsYW5ndWFnZX0ke3VybE9iai5wYXRobmFtZX1gO1xuICAgICAgICByZXR1cm4gdXJsT2JqLm9yaWdpbiArIG5ld1BhdGggKyB1cmxPYmouc2VhcmNoICsgdXJsT2JqLmhhc2g7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBqb2luKHBhcnRzOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBwYXJ0cy5maWx0ZXIocyA9PiAhIXMpLmpvaW4oJyAtICcpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlVGFnKG5hbWU6IHN0cmluZywgdmFsdWU/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLm1ldGFUYWdTZXJ2aWNlLnVwZGF0ZVRhZyh7XG4gICAgICAgICAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgICAgICAgICB2YWx1ZTogc3RyaXBUYWdzKHZhbHVlKSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5tZXRhVGFnU2VydmljZS5yZW1vdmVUYWcoYG5hbWU9XCIke25hbWV9XCJgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlTGlua1RhZyhkZWZpbml0aW9uOiBOYXR1cmFsTGlua0RlZmluaXRpb24pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbGlua0VsZW1lbnQgPVxuICAgICAgICAgICAgdGhpcy5kb2N1bWVudC5oZWFkLnF1ZXJ5U2VsZWN0b3I8SFRNTExpbmtFbGVtZW50Pih0aGlzLnBhcnNlU2VsZWN0b3IoZGVmaW5pdGlvbikpID8/XG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaW5rJykpO1xuXG4gICAgICAgIGlmIChsaW5rRWxlbWVudCkge1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoZGVmaW5pdGlvbikuZm9yRWFjaCgoYXR0cmlidXRlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICBsaW5rRWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0cmlidXRlLCBkZWZpbml0aW9uW2F0dHJpYnV0ZV0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHNlbGVjdG9yIHRvIHVzZSBpbiBxdWVyeVNlbGVjdG9yIHRvIGdldCB0aGUgZ2l2ZW4gbGlua1xuICAgICAqL1xuICAgIHByaXZhdGUgcGFyc2VTZWxlY3RvcihkZWZpbml0aW9uOiBOYXR1cmFsTGlua0RlZmluaXRpb24pOiBzdHJpbmcge1xuICAgICAgICBsZXQgYXR0cmlidXRlcyA9ICdsaW5rJztcbiAgICAgICAgT2JqZWN0LmtleXMoZGVmaW5pdGlvbikuZm9yRWFjaChhdHRyID0+IHtcbiAgICAgICAgICAgIGlmIChhdHRyICE9PSAnaHJlZicpIHtcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzICs9IGBbJHthdHRyfT1cIiR7ZGVmaW5pdGlvblthdHRyXX1cIl1gO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gYXR0cmlidXRlcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBkYXRhIGZyb20gdGhlIG1vc3QgZGVlcC9zcGVjaWZpYyBhY3RpdmF0ZWQgcm91dGVcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFJvdXRlRGF0YShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IERhdGEge1xuICAgICAgICBpZiAocm91dGUuZmlyc3RDaGlsZCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Um91dGVEYXRhKHJvdXRlLmZpcnN0Q2hpbGQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHJvdXRlLmRhdGE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBkYXRhIGZyb20gdGhlIGBOYXR1cmFsRGlhbG9nVHJpZ2dlckNvbXBvbmVudGAgaWYgb25lIGlzIG9wZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIGdldERpYWxvZ1JvdXRlRGF0YShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IERhdGEgfCBudWxsIHtcbiAgICAgICAgaWYgKHJvdXRlLmNvbXBvbmVudCA9PT0gTmF0dXJhbERpYWxvZ1RyaWdnZXJDb21wb25lbnQgJiYgcm91dGUub3V0bGV0ICE9PSBQUklNQVJZX09VVExFVCkge1xuICAgICAgICAgICAgcmV0dXJuIHJvdXRlLmRhdGE7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIHJvdXRlLmNoaWxkcmVuKSB7XG4gICAgICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5nZXREaWFsb2dSb3V0ZURhdGEoY2hpbGQpO1xuICAgICAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgdG9CYXNpYyhzZW86IE5hdHVyYWxTZW8sIHJvdXRlRGF0YTogUmVzb2x2ZWREYXRhKTogT2JzZXJ2YWJsZTxOYXR1cmFsU2VvQmFzaWM+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBzZW8gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHNlbyhyb3V0ZURhdGEpO1xuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdCBpbnN0YW5jZW9mIE9ic2VydmFibGUgPyByZXN1bHQgOiBvZihyZXN1bHQpO1xuICAgICAgICB9IGVsc2UgaWYgKCdyZXNvbHZlJyBpbiBzZW8pIHtcbiAgICAgICAgICAgIGlmICghKCdtb2RlbCcgaW4gcm91dGVEYXRhKSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IGZpbmQgcmVzb2x2ZWQgZGF0YSBgbW9kZWxgIGZvciBTRU8gc2VydmljZScpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBtb2RlbCA9IHJvdXRlRGF0YS5tb2RlbDtcblxuICAgICAgICAgICAgcmV0dXJuIChtb2RlbCBpbnN0YW5jZW9mIE9ic2VydmFibGUgPyBtb2RlbCA6IG9mKG1vZGVsKSkucGlwZShcbiAgICAgICAgICAgICAgICBtYXAodmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHZhbHVlPy5mdWxsTmFtZSA/PyB2YWx1ZT8ubmFtZSA/PyAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB2YWx1ZT8uZGVzY3JpcHRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICByb2JvdHM6IHNlby5yb2JvdHMsXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG9mKHNlbyk7XG4gICAgfVxufVxuIl19
233
+ }], ctorParameters: () => [] });
234
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VvLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9jb21tb24vc2VydmljZXMvc2VvLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxVQUFVLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFDLElBQUksRUFBRSxLQUFLLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN0RCxPQUFPLEVBQStCLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDcEcsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDNUYsT0FBTyxFQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN0RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7QUE2RzlELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFtQiwrQkFBK0IsQ0FBQyxDQUFDO0FBRXhHLE1BQU0sVUFBVSxTQUFTLENBQUMsR0FBVztJQUNqQyxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQzFDLENBQUM7QUFZRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBSUgsTUFBTSxPQUFPLGlCQUFpQjtJQVkxQjtRQVhpQixXQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hCLGlCQUFZLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdC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Q0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5RCxDQUFDO2FBQU0sSUFBSSxTQUFTLElBQUksR0FBRyxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztZQUM1RSxDQUFDO1lBRUQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUU5QixPQUFPLENBQUMsS0FBSyxZQUFZLFVBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3pELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDUixPQUFPO29CQUNILEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxJQUFJLEtBQUssRUFBRSxJQUFJLElBQUksRUFBRTtvQkFDM0MsV0FBVyxFQUFFLEtBQUssRUFBRSxXQUFXO29CQUMvQixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07aUJBQ3JCLENBQUM7WUFDTixDQUFDLENBQUMsQ0FDTCxDQUFDO1FBQ04sQ0FBQztRQUVELE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLENBQUM7OEdBL09RLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBRmQsTUFBTTs7MkZBRVQsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0luamVjdGFibGUsIEluamVjdGlvblRva2VuLCBMT0NBTEVfSUQsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01ldGEsIFRpdGxlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgRGF0YSwgTmF2aWdhdGlvbkVuZCwgUFJJTUFSWV9PVVRMRVQsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7TmF0dXJhbERpYWxvZ1RyaWdnZXJDb21wb25lbnR9IGZyb20gJy4uLy4uL2RpYWxvZy10cmlnZ2VyL2RpYWxvZy10cmlnZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3QsIGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBvZiwgc3RhcnRXaXRoLCBzd2l0Y2hNYXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuZXhwb3J0IHR5cGUgTmF0dXJhbFNlbyA9IE5hdHVyYWxTZW9CYXNpYyB8IE5hdHVyYWxTZW9DYWxsYmFjayB8IE5hdHVyYWxTZW9SZXNvbHZlO1xuXG4vKipcbiAqIFR5cGljYWxseSB1c2VkIGZvciBcInN0YXRpY1wiIHBhZ2VzIHdoZXJlIHRoZXJlIGlzIG5vdCBhIHNpbmdsZSByZXNvbHZlZCBvYmplY3QuIFNvXG4gKiBhbGwgcGFnZXMgc3VjaCBhcyBcIkFib3V0XCIsIG9yIGxpc3Qgb2Ygb2JqZWN0cyAobGlzdCBvZiByaXNrcywgZXRjLikuXG4gKlxuICogVGhpcyBzaG91bGQgYmUgdGhlIG1vc3QgY29tbW9uIHVzZWQgdmFyaWFudC5cbiAqL1xuZXhwb3J0IHR5cGUgTmF0dXJhbFNlb0Jhc2ljID0gUm9ib3RzICYge1xuICAgIC8qKlxuICAgICAqIFRoZSBwYWdlIHRpdGxlLCB0aGF0IHdpbGwgYmUgY29uY2F0ZW5hdGVkIHdpdGggYXBwbGljYXRpb24gbmFtZVxuICAgICAqL1xuICAgIHRpdGxlOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBJZiBnaXZlbiB3aWxsIGJlIHVzZWQgYXMgcGFnZSBkZXNjcmlwdGlvbiwgb3RoZXJ3aXNlIGZhbGxiYWNrIG9uIGRlZmF1bHQgdmFsdWVcbiAgICAgKi9cbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIExpc3Qgb2YgcGFyYW1ldGVycyBpbmNsdWRlZCBpbiB0aGUgY2Fub25pY2FsIHRhZydzIHVybFxuICAgICAqL1xuICAgIGNhbm9uaWNhbFF1ZXJ5UGFyYW1zV2hpdGVsaXN0Pzogc3RyaW5nW107XG59O1xuXG50eXBlIE5hdHVyYWxMaW5rRGVmaW5pdGlvbiA9IHtcbiAgICBjaGFyc2V0Pzogc3RyaW5nO1xuICAgIGNyb3Nzb3JpZ2luPzogc3RyaW5nO1xuICAgIGhyZWY/OiBzdHJpbmc7XG4gICAgaHJlZmxhbmc/OiBzdHJpbmc7XG4gICAgbWVkaWE/OiBzdHJpbmc7XG4gICAgcmVsPzogc3RyaW5nO1xuICAgIHJldj86IHN0cmluZztcbiAgICBzaXplcz86IHN0cmluZztcbiAgICB0YXJnZXQ/OiBzdHJpbmc7XG4gICAgdHlwZT86IHN0cmluZztcbn0gJiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuLyoqXG4gKiBUeXBpY2FsbHkgdXNlZCBmb3IgYSBcImR5bmFtaWNcIiBwYWdlIHdoZXJlIGEgc2luZ2xlIG9iamVjdCBpcyByZXNvbHZlZC4gU28gYSBkZXRhaWwgcGFnZSwgc3VjaFxuICogYXMgdGhlIGRldGFpbCBvZiBhIHJpc2sgYW5kIHNvIG9uLlxuICovXG5leHBvcnQgdHlwZSBOYXR1cmFsU2VvUmVzb2x2ZSA9IFJvYm90cyAmIHtcbiAgICAvKipcbiAgICAgKiBUaGUga2V5IGBtb2RlbGAgd2lsbCBiZSB1c2VkIGluIHRoZSByZXNvbHZlZCBkYXRhIHRvIGZpbmQgdGhlIHJlc29sdmVkIG9iamVjdC4gVGhlIGZ1bGxOYW1lXG4gICAgICogb3IgbmFtZSBvZiB0aGUgb2JqZWN0IHdpbGwgYmUgdXNlZCBmb3IgcGFnZSB0aXRsZSwgYW5kIHRoZSBvYmplY3QgZGVzY3JpcHRpb24sIGlmIGFueSxcbiAgICAgKiB3aWxsIGJlIHVzZWQgZm9yIHBhZ2UgZGVzY3JpcHRpb24uXG4gICAgICovXG4gICAgcmVzb2x2ZTogdHJ1ZTtcbn07XG5cbi8qKlxuICogUmFyZWx5IHVzZWQgZm9yIGEgcGFnZSB0aGF0IGhhcyB2ZXJ5IHNwZWNpZmljIG5lZWRzIGFuZCBuZWVkIHRvIGJ1aWxkIHRpdGxlIGFuZCBkZXNjcmlwdGlvbiBpbiBhIGN1c3RvbSB3YXkuXG4gKiBUaGUgY2FsbGJhY2sgYmFjayB3aWxsIGJlIGdpdmVuIHRoZSByZXNvbHZlZCBkYXRhLCBhbmQgaXQgaXMgdXAgdG8gdGhlIGNhbGxiYWNrIHRvIGZpbmQgd2hhdGV2ZXIgaXQgbmVlZHMuXG4gKi9cbmV4cG9ydCB0eXBlIE5hdHVyYWxTZW9DYWxsYmFjayA9IChyb3V0ZURhdGE6IERhdGEpID0+IE5hdHVyYWxTZW9CYXNpYyB8IE9ic2VydmFibGU8TmF0dXJhbFNlb0Jhc2ljPjtcblxuLyoqXG4gKiBUeXBpY2FsbHkgdXNlZCB0byB0eXBlIHRoZSByb3V0aW5nIGRhdGEgcmVjZWl2ZWQgaW4gdGhlIGNvbXBvbmVudCwgZWc6XG4gKlxuICogYGBgdHNcbiAqIGNsYXNzIE15Q29tcG9uZW50IGV4dGVuZHMgTmF0dXJhbEFic3RyYWN0RGV0YWlsPE15U2VydmljZSwgTmF0dXJhbFNlb1Jlc29sdmVEYXRhPiB7fVxuICogYGBgXG4gKi9cbmV4cG9ydCB0eXBlIE5hdHVyYWxTZW9SZXNvbHZlRGF0YSA9IHtcbiAgICBzZW86IE5hdHVyYWxTZW9CYXNpYztcbn07XG5cbnR5cGUgUm9ib3RzID0ge1xuICAgIC8qKlxuICAgICAqIElmIGdpdmVuIHdpbGwgYmUgdXNlZCBhcyByb2JvdHMgbWV0YSB0YWcsIG90aGVyd2lzZSBmYWxsYmFjayBvbiBkZWZhdWx0IHZhbHVlXG4gICAgICovXG4gICAgcm9ib3RzPzogc3RyaW5nO1xufTtcblxudHlwZSBOYXR1cmFsU2VvQ29uZmlnUGxhaW4gPSB7XG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIGFwcGxpY2F0aW9uIHRoYXQgd2lsbCBhbHdheXMgYXBwZWFyIGluIHRoZSBwYWdlIHRpdGxlXG4gICAgICovXG4gICAgcmVhZG9ubHkgYXBwbGljYXRpb25OYW1lOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBEZWZhdWx0IHZhbHVlIGZvciBkZXNjcmlwdGlvbiBtZXRhIHRoYXQgaXMgdXNlZCBmb3IgcGFnZXMgd2l0aG91dCB2YWx1ZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlZmF1bHREZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIERlZmF1bHQgdmFsdWUgZm9yIHJvYm90cyBtZXRhIHRoYXQgaXMgdXNlZCBmb3IgcGFnZXMgd2l0aG91dCB2YWx1ZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlZmF1bHRSb2JvdHM/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBJZiBnaXZlbiwgdGhlIGNhbGxiYWNrIHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoIHJvdXRlIGFuZCBtdXN0IHJldHVybiBhIHN0cmluZyB0aGF0IHdpbGxcbiAgICAgKiBiZSBpbnNlcnRlZCBiZXR3ZWVuIHRoZSBwYWdlIHRpdGxlIGFuZCB0aGUgYXBwbGljYXRpb24gbmFtZS5cbiAgICAgKlxuICAgICAqIEl0IHNob3VsZCBiZSB1c2VkIHRvIGNvbXBsZXRlIHRoZSB0aXRsZSB3aXRoIGluZm8gdGhhdCBhcmUgb2Z0ZW4sIGJ1dCBub3QgbmVjZXNzYXJpbHkgYWx3YXlzLFxuICAgICAqIGF2YWlsYWJsZSB0aHJvdWdob3V0IHRoZSBlbnRpcmUgYXBwbGljYXRpb24uIFR5cGljYWxseSB1c2VkIGZvciB0aGUgc2l0ZS9zdGF0ZSBpbiBPS3BpbG90LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGV4dHJhUGFydD86IChyb3V0ZURhdGE6IERhdGEpID0+IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFVzZWQgdG8gZ2VuZXJhdGUgYWx0ZXJuYXRpdmUgdGFnc1xuICAgICAqIDxsaW5rIHJlbD1cImFsdGVybmF0ZVwiIGhyZWZsYW5nPVwiZW5cIiBocmVmPVwiaHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vZW4vcGFnZVwiPlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGxhbmd1YWdlcz86IHJlYWRvbmx5IHN0cmluZ1tdO1xufTtcblxuZXhwb3J0IHR5cGUgTmF0dXJhbFNlb0NvbmZpZyA9IE5hdHVyYWxTZW9Db25maWdQbGFpbiB8IE9ic2VydmFibGU8TmF0dXJhbFNlb0NvbmZpZ1BsYWluPjtcbmV4cG9ydCBjb25zdCBOQVRVUkFMX1NFT19DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48TmF0dXJhbFNlb0NvbmZpZz4oJ0NvbmZpZ3VyYXRpb24gZm9yIFNFTyBzZXJ2aWNlJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJpcFRhZ3Moc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBzdHIucmVwbGFjZSgvPFxcLz9bXj5dKj4vZywgJycpO1xufVxuXG50eXBlIE1vZGVsID0ge1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgZnVsbE5hbWU/OiBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG59O1xuXG50eXBlIFJlc29sdmVkRGF0YSA9IHtcbiAgICBtb2RlbD86IE1vZGVsIHwgT2JzZXJ2YWJsZTxNb2RlbD47XG59O1xuXG4vKipcbiAqIFRoaXMgc2VydmljZSBpcyByZXNwb25zaWJsZSB0byBrZWVwIHVwIHRvIGRhdGUgdGhlIHBhZ2UgdGl0bGUgYW5kIHBhZ2UgZGVzY3JpcHRpb24gYWNjb3JkaW5nXG4gKiB0byB3aGF0IGlzIGNvbmZpZ3VyZWQgaW4gcm91dGluZyBvciBkZWZhdWx0IHZhbHVlcy5cbiAqXG4gKiBJdCAqKm11c3QqKiBiZSBpbmplY3RlZCBpbiB0aGUgcm9vdCBtb2R1bGUgb2YgdGhlIGFwcGxpY2F0aW9uIHRvIGhhdmUgZWZmZWN0cyBpbiBhbGwgbW9kdWxlcy4gQW5kIGl0XG4gKiBtdXN0IGJlIHByb3ZpZGVkIGEgY29uZmlndXJhdGlvbi5cbiAqXG4gKiBUaGUgZnVsbCB0aXRsZSBoYXMgdGhlIGZvbGxvd2luZyBzdHJ1Y3R1cmU6XG4gKlxuICogICAgIGRpYWxvZyB0aXRsZSAtIHBhZ2UgdGl0bGUgLSBleHRyYSBwYXJ0IC0gYXBwIG5hbWVcbiAqXG4gKiBgZGlhbG9nIHRpdGxlYCBvbmx5IGV4aXN0cyBpZiBhIGBOYXR1cmFsRGlhbG9nVHJpZ2dlckNvbXBvbmVudGAgaXMgY3VycmVudGx5IG9wZW4sIGFuZCB0aGF0IHNvbWUgU0VPIGlzXG4gKiBjb25maWd1cmVkIGZvciBpdCBpbiB0aGUgcm91dGluZy5cbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbFNlb1NlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0aXRsZVNlcnZpY2UgPSBpbmplY3QoVGl0bGUpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbWV0YVRhZ1NlcnZpY2UgPSBpbmplY3QoTWV0YSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudCA9IGluamVjdDxEb2N1bWVudD4oRE9DVU1FTlQpO1xuICAgIHByaXZhdGUgbG9jYWxlID0gaW5qZWN0KExPQ0FMRV9JRCk7XG5cbiAgICBwcml2YXRlIHJvdXRlRGF0YT86IERhdGE7XG4gICAgcHJpdmF0ZSBjb25maWc6IE5hdHVyYWxTZW9Db25maWdQbGFpbiA9IHtcbiAgICAgICAgYXBwbGljYXRpb25OYW1lOiAnJyxcbiAgICB9O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBjb25zdCBjb25maWdUb2tlbiA9IGluamVjdDxOYXR1cmFsU2VvQ29uZmlnPihOQVRVUkFMX1NFT19DT05GSUcpO1xuXG4gICAgICAgIGNvbWJpbmVMYXRlc3Qoe1xuICAgICAgICAgICAgY29uZmlnOiBjb25maWdUb2tlbiBpbnN0YW5jZW9mIE9ic2VydmFibGUgPyBjb25maWdUb2tlbi5waXBlKHN0YXJ0V2l0aCh0aGlzLmNvbmZpZykpIDogb2YoY29uZmlnVG9rZW4pLFxuICAgICAgICAgICAgbmF2aWdhdGlvbkVuZDogdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoZmlsdGVyKGV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpLFxuICAgICAgICB9KVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKCh7Y29uZmlnfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZztcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm9vdCA9IHRoaXMucm91dGVyLnJvdXRlclN0YXRlLnJvb3Quc25hcHNob3Q7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVEYXRhID0gdGhpcy5nZXRSb3V0ZURhdGEocm9vdCk7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VvOiBOYXR1cmFsU2VvID0gdGhpcy5yb3V0ZURhdGEuc2VvID8/IHt0aXRsZTogJyd9O1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkaWFsb2dSb3V0ZURhdGEgPSB0aGlzLmdldERpYWxvZ1JvdXRlRGF0YShyb290KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGlhbG9nU2VvOiBOYXR1cmFsU2VvID0gZGlhbG9nUm91dGVEYXRhPy5zZW87XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYmFzaWMgPSB0aGlzLnRvQmFzaWMoc2VvLCB0aGlzLnJvdXRlRGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRpYWxvZ0Jhc2ljID1cbiAgICAgICAgICAgICAgICAgICAgICAgIGRpYWxvZ1JvdXRlRGF0YSAmJiBkaWFsb2dTZW8gPyB0aGlzLnRvQmFzaWMoZGlhbG9nU2VvLCBkaWFsb2dSb3V0ZURhdGEpIDogb2YobnVsbCk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3Qoe2Jhc2ljLCBkaWFsb2dCYXNpY30pO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoe2Jhc2ljLCBkaWFsb2dCYXNpY30pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZGlhbG9nQmFzaWMpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFzaWMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5kaWFsb2dCYXNpYyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiB0aGlzLmpvaW4oW2RpYWxvZ0Jhc2ljLnRpdGxlLCBiYXNpYy50aXRsZV0pLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlKGJhc2ljKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSB0aGUgU0VPIHdpdGggZ2l2ZW4gaW5mby4gVGhlIGV4dHJhIHBhcnQgYW5kIGFwcCBuYW1lIHdpbGwgYmUgYXBwZW5kZWQgYXV0b21hdGljYWxseS5cbiAgICAgKlxuICAgICAqIEluIG1vc3QgY2FzZXMsIHRoaXMgc2hvdWxkIG5vdCBiZSB1c2VkLiBBbmQgaW5zdGVhZCwgdGhlIFNFTyBzaG91bGQgYmUgY29uZmlndXJlZCBpbiB0aGUgcm91dGluZyxcbiAgICAgKiBwb3NzaWJseSB3aXRoIHRoZSBjYWxsYmFjayB2YXJpYW50IGZvciBzb21lIGR5bmFtaXNtLlxuICAgICAqXG4gICAgICogQnV0IGluIHJhcmUgY2FzZXMsIG9ubHkgdGhlIENvbXBvbmVudCBpcyBhYmxlIHRvIGJ1aWxkIGEgcHJvcGVyIHBhZ2UgdGl0bGUsIGFmdGVyIGl0IGdhdGhlcmVkIGV2ZXJ5dGhpbmcgaXRcbiAgICAgKiBuZWVkZWQuIEZvciB0aG9zZSBjYXNlcywgdGhlIENvbXBvbmVudCBjYW4gaW5qZWN0IHRoaXMgc2VydmljZSBhbmQgdXBkYXRlIHRoZSBTRU8gZGlyZWN0bHkuXG4gICAgICovXG4gICAgcHVibGljIHVwZGF0ZShzZW86IE5hdHVyYWxTZW9CYXNpYyk6IHZvaWQge1xuICAgICAgICAvLyBUaXRsZVxuICAgICAgICBjb25zdCBwYXJ0cyA9IFtcbiAgICAgICAgICAgIHNlby50aXRsZSxcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLmV4dHJhUGFydCAmJiB0aGlzLnJvdXRlRGF0YSA/IHRoaXMuY29uZmlnLmV4dHJhUGFydCh0aGlzLnJvdXRlRGF0YSkgOiAnJyxcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLmFwcGxpY2F0aW9uTmFtZSxcbiAgICAgICAgXTtcblxuICAgICAgICBjb25zdCB0aXRsZSA9IHRoaXMuam9pbihwYXJ0cyk7XG4gICAgICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldFRpdGxlKHRpdGxlKTtcblxuICAgICAgICAvLyBEZXNjcmlwdGlvblxuICAgICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IHNlbz8uZGVzY3JpcHRpb24gPz8gdGhpcy5jb25maWcuZGVmYXVsdERlc2NyaXB0aW9uO1xuICAgICAgICB0aGlzLnVwZGF0ZVRhZygnZGVzY3JpcHRpb24nLCBkZXNjcmlwdGlvbik7XG5cbiAgICAgICAgLy8gUm9ib3RzXG4gICAgICAgIGNvbnN0IHJvYm90cyA9IHNlbz8ucm9ib3RzID8/IHRoaXMuY29uZmlnLmRlZmF1bHRSb2JvdHM7XG4gICAgICAgIHRoaXMudXBkYXRlVGFnKCdyb2JvdHMnLCByb2JvdHMpO1xuXG4gICAgICAgIC8vIENhbm9uaWNhbFxuICAgICAgICAvLyBBZGQgbGFuZ3VhZ2UgaW4gdXJsIChhZnRlciBkb21haW4pIGlmIHNvbWUgbGFuZ3VhZ2VzIGFyZSBwcm92aWRlZCBvbmx5XG4gICAgICAgIGNvbnN0IGxhbmd1YWdlID0gdGhpcy5jb25maWcubGFuZ3VhZ2VzPy5sZW5ndGggJiYgdGhpcy5sb2NhbGUgPyB0aGlzLmxvY2FsZS5zcGxpdCgnLScpWzBdIDogJyc7XG4gICAgICAgIGNvbnN0IHVybFBhcnRzID0gdGhpcy5nZXRVcmxQYXJ0cyhzZW8uY2Fub25pY2FsUXVlcnlQYXJhbXNXaGl0ZWxpc3QgPz8gW10pO1xuICAgICAgICB0aGlzLnVwZGF0ZUxpbmtUYWcoe3JlbDogJ2Nhbm9uaWNhbCcsIGhyZWY6IHRoaXMuZ2V0VXJsKHVybFBhcnRzLCBsYW5ndWFnZSl9KTtcbiAgICAgICAgdGhpcy51cGRhdGVBbHRlcm5hdGVzKHVybFBhcnRzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUFsdGVybmF0ZXModXJsUGFydHM6IHt1cmw6IHN0cmluZzsgcGFyYW1zOiBzdHJpbmd9KTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29uZmlnLmxhbmd1YWdlcz8uZm9yRWFjaChsYW5ndWFnZSA9PiB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUxpbmtUYWcoe3JlbDogJ2FsdGVybmF0ZScsIGhyZWY6IHRoaXMuZ2V0VXJsKHVybFBhcnRzLCBsYW5ndWFnZSksIGhyZWZsYW5nOiBsYW5ndWFnZX0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFVybFBhcnRzKHdoaXRlTGlzdGVkUGFyYW1zOiBzdHJpbmdbXSk6IHt1cmw6IHN0cmluZzsgcGFyYW1zOiBzdHJpbmd9IHtcbiAgICAgICAgbGV0IHVybCA9ICdodHRwczovLycgKyB0aGlzLmRvY3VtZW50LmRlZmF1bHRWaWV3Py53aW5kb3cubG9jYXRpb24uaG9zdG5hbWU7XG4gICAgICAgIGNvbnN0IHVybFRyZWUgPSB0aGlzLnJvdXRlci5wYXJzZVVybCh0aGlzLnJvdXRlci51cmwpO1xuXG4gICAgICAgIC8vIG5lZWQgYmV0dGVyIGxpa2Ugc29tZXRoaW5nIHJlY3Vyc2l2ZSA/XG4gICAgICAgIGlmICh1cmxUcmVlLnJvb3QuaGFzQ2hpbGRyZW4oKSkge1xuICAgICAgICAgICAgY29uc3Qgc2VnbWVudHMgPSB1cmxUcmVlLnJvb3QuY2hpbGRyZW4ucHJpbWFyeT8uc2VnbWVudHM7XG4gICAgICAgICAgICBpZiAoc2VnbWVudHMgJiYgc2VnbWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHVybCArPSAnLycgKyBzZWdtZW50cy5tYXAoc2VnbWVudCA9PiBzZWdtZW50LnBhdGgpLmpvaW4oJy8nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFF1ZXJ5IFBhcmFtc1xuICAgICAgICBsZXQgcGFyYW1zID0gJyc7XG4gICAgICAgIGZvciAoY29uc3Qgd2hpdGVMaXN0ZWRQYXJhbSBvZiB3aGl0ZUxpc3RlZFBhcmFtcykge1xuICAgICAgICAgICAgaWYgKHdoaXRlTGlzdGVkUGFyYW0gaW4gdXJsVHJlZS5xdWVyeVBhcmFtcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGtleSA9IGVuY29kZVVSSUNvbXBvbmVudCh3aGl0ZUxpc3RlZFBhcmFtKTtcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGVuY29kZVVSSUNvbXBvbmVudCh1cmxUcmVlLnF1ZXJ5UGFyYW1zW3doaXRlTGlzdGVkUGFyYW1dKTtcbiAgICAgICAgICAgICAgICBpZiAocGFyYW1zLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXMgKz0gJyYnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwYXJhbXMgKz0gYCR7a2V5fT0ke3ZhbHVlfWA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocGFyYW1zLmxlbmd0aCkge1xuICAgICAgICAgICAgcGFyYW1zID0gJz8nICsgcGFyYW1zO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHt1cmwsIHBhcmFtc307XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIGxhbmd1YWdlIGJldHdlZW4gZG9tYWluIGFuZCB1cmkgaHR0cHM6Ly9leGFtcGxlLmNvbS9mci9mb2xkZXIvcGFnZVxuICAgICAqL1xuICAgIHByaXZhdGUgZ2V0VXJsKHVybFBhcnRzOiB7dXJsOiBzdHJpbmc7IHBhcmFtczogc3RyaW5nfSwgbGFuZ3VhZ2U/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBsZXQgdXJsID0gdXJsUGFydHMudXJsO1xuXG4gICAgICAgIGlmIChsYW5ndWFnZSkge1xuICAgICAgICAgICAgdXJsID0gdGhpcy5hZGRMYW5ndWFnZVNlZ21lbnQodXJsLCBsYW5ndWFnZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXJsUGFydHMucGFyYW1zKSB7XG4gICAgICAgICAgICB1cmwgKz0gdXJsUGFydHMucGFyYW1zO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHVybDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZExhbmd1YWdlU2VnbWVudCh1cmw6IHN0cmluZywgbGFuZ3VhZ2U6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHVybE9iaiA9IG5ldyBVUkwodXJsKTtcbiAgICAgICAgY29uc3QgbmV3UGF0aCA9IHVybE9iai5wYXRobmFtZSA9PT0gJy8nID8gYC8ke2xhbmd1YWdlfWAgOiBgLyR7bGFuZ3VhZ2V9JHt1cmxPYmoucGF0aG5hbWV9YDtcbiAgICAgICAgcmV0dXJuIHVybE9iai5vcmlnaW4gKyBuZXdQYXRoICsgdXJsT2JqLnNlYXJjaCArIHVybE9iai5oYXNoO1xuICAgIH1cblxuICAgIHByaXZhdGUgam9pbihwYXJ0czogc3RyaW5nW10pOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gcGFydHMuZmlsdGVyKHMgPT4gISFzKS5qb2luKCcgLSAnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVRhZyhuYW1lOiBzdHJpbmcsIHZhbHVlPzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5tZXRhVGFnU2VydmljZS51cGRhdGVUYWcoe1xuICAgICAgICAgICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHN0cmlwVGFncyh2YWx1ZSksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubWV0YVRhZ1NlcnZpY2UucmVtb3ZlVGFnKGBuYW1lPVwiJHtuYW1lfVwiYCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUxpbmtUYWcoZGVmaW5pdGlvbjogTmF0dXJhbExpbmtEZWZpbml0aW9uKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGxpbmtFbGVtZW50ID1cbiAgICAgICAgICAgIHRoaXMuZG9jdW1lbnQuaGVhZC5xdWVyeVNlbGVjdG9yPEhUTUxMaW5rRWxlbWVudD4odGhpcy5wYXJzZVNlbGVjdG9yKGRlZmluaXRpb24pKSA/P1xuICAgICAgICAgICAgdGhpcy5kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGluaycpKTtcblxuICAgICAgICBpZiAobGlua0VsZW1lbnQpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGRlZmluaXRpb24pLmZvckVhY2goKGF0dHJpYnV0ZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgbGlua0VsZW1lbnQuc2V0QXR0cmlidXRlKGF0dHJpYnV0ZSwgZGVmaW5pdGlvblthdHRyaWJ1dGVdKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBzZWxlY3RvciB0byB1c2UgaW4gcXVlcnlTZWxlY3RvciB0byBnZXQgdGhlIGdpdmVuIGxpbmtcbiAgICAgKi9cbiAgICBwcml2YXRlIHBhcnNlU2VsZWN0b3IoZGVmaW5pdGlvbjogTmF0dXJhbExpbmtEZWZpbml0aW9uKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGF0dHJpYnV0ZXMgPSAnbGluayc7XG4gICAgICAgIE9iamVjdC5rZXlzKGRlZmluaXRpb24pLmZvckVhY2goYXR0ciA9PiB7XG4gICAgICAgICAgICBpZiAoYXR0ciAhPT0gJ2hyZWYnKSB7XG4gICAgICAgICAgICAgICAgYXR0cmlidXRlcyArPSBgWyR7YXR0cn09XCIke2RlZmluaXRpb25bYXR0cl19XCJdYDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGF0dHJpYnV0ZXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgZGF0YSBmcm9tIHRoZSBtb3N0IGRlZXAvc3BlY2lmaWMgYWN0aXZhdGVkIHJvdXRlXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRSb3V0ZURhdGEocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBEYXRhIHtcbiAgICAgICAgaWYgKHJvdXRlLmZpcnN0Q2hpbGQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFJvdXRlRGF0YShyb3V0ZS5maXJzdENoaWxkKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiByb3V0ZS5kYXRhO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgZGF0YSBmcm9tIHRoZSBgTmF0dXJhbERpYWxvZ1RyaWdnZXJDb21wb25lbnRgIGlmIG9uZSBpcyBvcGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXREaWFsb2dSb3V0ZURhdGEocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBEYXRhIHwgbnVsbCB7XG4gICAgICAgIGlmIChyb3V0ZS5jb21wb25lbnQgPT09IE5hdHVyYWxEaWFsb2dUcmlnZ2VyQ29tcG9uZW50ICYmIHJvdXRlLm91dGxldCAhPT0gUFJJTUFSWV9PVVRMRVQpIHtcbiAgICAgICAgICAgIHJldHVybiByb3V0ZS5kYXRhO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiByb3V0ZS5jaGlsZHJlbikge1xuICAgICAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZ2V0RGlhbG9nUm91dGVEYXRhKGNoaWxkKTtcbiAgICAgICAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHRvQmFzaWMoc2VvOiBOYXR1cmFsU2VvLCByb3V0ZURhdGE6IFJlc29sdmVkRGF0YSk6IE9ic2VydmFibGU8TmF0dXJhbFNlb0Jhc2ljPiB7XG4gICAgICAgIGlmICh0eXBlb2Ygc2VvID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBzZW8ocm91dGVEYXRhKTtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQgaW5zdGFuY2VvZiBPYnNlcnZhYmxlID8gcmVzdWx0IDogb2YocmVzdWx0KTtcbiAgICAgICAgfSBlbHNlIGlmICgncmVzb2x2ZScgaW4gc2VvKSB7XG4gICAgICAgICAgICBpZiAoISgnbW9kZWwnIGluIHJvdXRlRGF0YSkpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvdWxkIG5vdCBmaW5kIHJlc29sdmVkIGRhdGEgYG1vZGVsYCBmb3IgU0VPIHNlcnZpY2UnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgbW9kZWwgPSByb3V0ZURhdGEubW9kZWw7XG5cbiAgICAgICAgICAgIHJldHVybiAobW9kZWwgaW5zdGFuY2VvZiBPYnNlcnZhYmxlID8gbW9kZWwgOiBvZihtb2RlbCkpLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiB2YWx1ZT8uZnVsbE5hbWUgPz8gdmFsdWU/Lm5hbWUgPz8gJycsXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdmFsdWU/LmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgcm9ib3RzOiBzZW8ucm9ib3RzLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBvZihzZW8pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,12 +1,12 @@
1
- import { Component } from '@angular/core';
1
+ import { Component, inject } from '@angular/core';
2
+ import { MatDialog } from '@angular/material/dialog';
3
+ import { ActivatedRoute, Router } from '@angular/router';
2
4
  import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/dialog";
4
- import * as i2 from "@angular/router";
5
5
  export class NaturalDialogTriggerComponent {
6
- constructor(dialog, route, router) {
7
- this.dialog = dialog;
8
- this.route = route;
9
- this.router = router;
6
+ constructor() {
7
+ this.dialog = inject(MatDialog);
8
+ this.route = inject(ActivatedRoute);
9
+ this.router = inject(Router);
10
10
  // Data from activated route
11
11
  this.triggerConfig = this.route.snapshot.data.trigger;
12
12
  // Get data relative to dialog service configuration
@@ -57,7 +57,7 @@ export class NaturalDialogTriggerComponent {
57
57
  this.router.navigate(['.'], { relativeTo: this.route.parent });
58
58
  }
59
59
  }
60
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalDialogTriggerComponent, deps: [{ token: i1.MatDialog }, { token: i2.ActivatedRoute }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
60
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalDialogTriggerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
61
61
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.3", type: NaturalDialogTriggerComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '', isInline: true }); }
62
62
  }
63
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NaturalDialogTriggerComponent, decorators: [{
@@ -66,5 +66,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImpor
66
66
  template: '',
67
67
  standalone: true,
68
68
  }]
69
- }], ctorParameters: () => [{ type: i1.MatDialog }, { type: i2.ActivatedRoute }, { type: i2.Router }] });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXRyaWdnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvZGlhbG9nLXRyaWdnZXIvZGlhbG9nLXRyaWdnZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxTQUFTLEVBQVksTUFBTSxlQUFlLENBQUM7Ozs7QUFzQm5ELE1BQU0sT0FBTyw2QkFBNkI7SUFLdEMsWUFDcUIsTUFBaUIsRUFDakIsS0FBcUIsRUFDckIsTUFBYztRQUZkLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUUvQiw0QkFBNEI7UUFDNUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBZ0QsQ0FBQztRQUUvRixvREFBb0Q7UUFDcEQsTUFBTSxFQUFDLElBQUksRUFBRSxHQUFHLE1BQU0sRUFBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDO1FBQzFELE1BQU0sWUFBWSxHQUF5RDtZQUN2RSxHQUFHLE1BQU07WUFDVCxJQUFJLEVBQUU7Z0JBQ0YsSUFBSSxFQUFFLElBQUk7Z0JBQ1Ysd0VBQXdFO2dCQUN4RSxjQUFjLEVBQUUsSUFBSSxDQUFDLEtBQUs7YUFDN0I7U0FDSixDQUFDO1FBRUYsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FJL0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFFOUMsc0NBQXNDO1FBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVc7UUFDZCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsc0JBQXNCO1FBQ3BELENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksUUFBUSxDQUFDLFNBQWdEO1FBQzVELE1BQU0sZ0JBQWdCLEdBQUcsU0FBUyxJQUFJLElBQUksSUFBSSxTQUFTLEtBQUssRUFBRSxDQUFDLENBQUMsd0JBQXdCO1FBRXhGLElBQUksU0FBUyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDbkIsd0JBQXdCO1lBQ3hCLE9BQU87UUFDWCxDQUFDO2FBQU0sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDM0IsNENBQTRDO1lBQzVDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQWtCLENBQUMsQ0FBQztRQUM3QyxDQUFDO2FBQU0sSUFBSSxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDakUsaUdBQWlHO1lBQ2pHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQXlCLENBQUMsQ0FBQztRQUN2RSxDQUFDO2FBQU0sSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1lBQzFCLG1IQUFtSDtZQUNuSCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFDLENBQUMsQ0FBQztRQUNqRSxDQUFDO0lBQ0wsQ0FBQzs4R0FsRVEsNkJBQTZCO2tHQUE3Qiw2QkFBNkIsd0VBSDVCLEVBQUU7OzJGQUdILDZCQUE2QjtrQkFKekMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsRUFBRTtvQkFDWixVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudFR5cGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtDb21wb25lbnQsIE9uRGVzdHJveX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdERpYWxvZywgTWF0RGlhbG9nQ29uZmlnLCBNYXREaWFsb2dSZWZ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlLCBSb3V0ZXIsIFJvdXRlckxpbmt9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmV4cG9ydCB0eXBlIE5hdHVyYWxEaWFsb2dUcmlnZ2VyUm91dGluZ0RhdGE8VCwgRD4gPSB7XG4gICAgY29tcG9uZW50OiBDb21wb25lbnRUeXBlPFQ+O1xuICAgIGFmdGVyQ2xvc2VkUm91dGU/OiBSb3V0ZXJMaW5rWydyb3V0ZXJMaW5rJ107XG4gICAgZGlhbG9nQ29uZmlnOiBNYXREaWFsb2dDb25maWc8RD47XG59O1xuXG5leHBvcnQgdHlwZSBOYXR1cmFsRGlhbG9nVHJpZ2dlclByb3ZpZGVkRGF0YTxEPiA9IHtcbiAgICBkYXRhPzogUmVhZG9ubHk8RD4gfCBudWxsO1xuICAgIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZTtcbn07XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVkdW5kYW50LXR5cGUtY29uc3RpdHVlbnRzXG5leHBvcnQgdHlwZSBOYXR1cmFsRGlhbG9nVHJpZ2dlclJlZGlyZWN0aW9uVmFsdWVzID0gUm91dGVyTGlua1sncm91dGVyTGluayddIHwgbnVsbCB8IHVuZGVmaW5lZCB8ICcnIHwgLTE7XG5cbkBDb21wb25lbnQoe1xuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsRGlhbG9nVHJpZ2dlckNvbXBvbmVudDxULCBEPiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxULCBOYXR1cmFsRGlhbG9nVHJpZ2dlclJlZGlyZWN0aW9uVmFsdWVzPjtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJpZ2dlckNvbmZpZzogTmF0dXJhbERpYWxvZ1RyaWdnZXJSb3V0aW5nRGF0YTxULCBEPjtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgKSB7XG4gICAgICAgIC8vIERhdGEgZnJvbSBhY3RpdmF0ZWQgcm91dGVcbiAgICAgICAgdGhpcy50cmlnZ2VyQ29uZmlnID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLnRyaWdnZXIgYXMgTmF0dXJhbERpYWxvZ1RyaWdnZXJSb3V0aW5nRGF0YTxULCBEPjtcblxuICAgICAgICAvLyBHZXQgZGF0YSByZWxhdGl2ZSB0byBkaWFsb2cgc2VydmljZSBjb25maWd1cmF0aW9uXG4gICAgICAgIGNvbnN0IHtkYXRhLCAuLi5jb25maWd9ID0gdGhpcy50cmlnZ2VyQ29uZmlnLmRpYWxvZ0NvbmZpZztcbiAgICAgICAgY29uc3QgZGlhbG9nQ29uZmlnOiBNYXREaWFsb2dDb25maWc8TmF0dXJhbERpYWxvZ1RyaWdnZXJQcm92aWRlZERhdGE8RD4+ID0ge1xuICAgICAgICAgICAgLi4uY29uZmlnLFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIGRhdGE6IGRhdGEsXG4gICAgICAgICAgICAgICAgLy8gU2V0IGRhdGEgYWNjZXNzaWJsZSBpbnRvIGNvbXBvbmVudCBpbnN0YW50aWF0ZWQgYnkgdGhlIGRpYWxvZyBzZXJ2aWNlXG4gICAgICAgICAgICAgICAgYWN0aXZhdGVkUm91dGU6IHRoaXMucm91dGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbjxcbiAgICAgICAgICAgIFQsXG4gICAgICAgICAgICBOYXR1cmFsRGlhbG9nVHJpZ2dlclByb3ZpZGVkRGF0YTxEPixcbiAgICAgICAgICAgIE5hdHVyYWxEaWFsb2dUcmlnZ2VyUmVkaXJlY3Rpb25WYWx1ZXNcbiAgICAgICAgPih0aGlzLnRyaWdnZXJDb25maWcuY29tcG9uZW50LCBkaWFsb2dDb25maWcpO1xuXG4gICAgICAgIC8vIFJlZGlyZWN0IG9uIGNsb3NpbmcgKGlmIGFwcGxpY2FibGUpXG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmJlZm9yZUNsb3NlZCgpLnN1YnNjcmliZShleGl0VmFsdWUgPT4gdGhpcy5yZWRpcmVjdChleGl0VmFsdWUpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxsZWQgd2hlbiByb3V0ZXIgbGVhdmVzIHJvdXRlLCBhbmQgc28gb24sIGNsb3NlcyB0aGUgbW9kYWwgd2l0aCB1bmRlZmluZWQgdmFsdWUgdG8gcHJldmVudCBhIG5ldyByZWRpcmVjdGlvblxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlhbG9nUmVmKSB7XG4gICAgICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSgtMSk7IC8vIC0xID0gbm8gcmVkaXJlY3Rpb25cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlZGlyZWN0cyBvbiBtb2RhbCBjbG9zaW5nIHVuZGVyIGZvbGxvd2luZyBydWxlcy9jb25kaXRpb25zXG4gICAgICpcbiAgICAgKiBJZiAtMSA6IG5vIHJlZGlyZWN0aW9uXG4gICAgICogSWYgdW5kZWZpbmVkLCBudWxsIG9yIGVtcHR5IHN0cmluZyA6IHVzZXMgdGhlIHJvdXRlciBwcm92aWRlZCByZWRpcmVjdGlvbiByb3V0ZSBvciBmYWxsYmFja3Mgb24gcGFyZW50IHJvdXRlIGlmIHJvdXRlciBkb24ndCBwcm92aWRlXG4gICAgICogSWYgYSB2YWx1ZSBpcyBwcm92aWRlZCwgc2hvdWxkIGJlIG9mIHR5cGUgYW55W10gYW5kIGl0J3MgdXNlZCBmb3IgcmVkaXJlY3Rpb24uXG4gICAgICovXG4gICAgcHVibGljIHJlZGlyZWN0KGV4aXRWYWx1ZTogTmF0dXJhbERpYWxvZ1RyaWdnZXJSZWRpcmVjdGlvblZhbHVlcyk6IHZvaWQge1xuICAgICAgICBjb25zdCBpc0VtcHR5RXhpdFZhbHVlID0gZXhpdFZhbHVlID09IG51bGwgfHwgZXhpdFZhbHVlID09PSAnJzsgLy8gdW5kZWZpbmVkLCBudWxsIG9yICcnXG5cbiAgICAgICAgaWYgKGV4aXRWYWx1ZSA9PT0gLTEpIHtcbiAgICAgICAgICAgIC8vIGlmIC0xLCBkb24ndCByZWRpcmVjdFxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2UgaWYgKCFpc0VtcHR5RXhpdFZhbHVlKSB7XG4gICAgICAgICAgICAvLyBJZiB2YWx1ZSBwcm92aWRlZCwgcmVkaXJlY3QgdG8gdGhhdCByb3V0ZVxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoZXhpdFZhbHVlIGFzIGFueVtdKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0VtcHR5RXhpdFZhbHVlICYmIHRoaXMudHJpZ2dlckNvbmZpZy5hZnRlckNsb3NlZFJvdXRlKSB7XG4gICAgICAgICAgICAvLyBJZiB2YWx1ZSBpcyBub3QgcHJvdmlkZWQgKG51bGwpIGFuZCByb3V0ZXIgY29udGV4dCBzcGVjaWZpZWQgZGVmYXVsdCByZWRpcmVjdGlvbiByb3V0ZSwgdXNlIGl0XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZSh0aGlzLnRyaWdnZXJDb25maWcuYWZ0ZXJDbG9zZWRSb3V0ZSBhcyBhbnlbXSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNFbXB0eUV4aXRWYWx1ZSkge1xuICAgICAgICAgICAgLy8gSWYgbmVpdGhlciBvZiBjb21wb25lbnQgb3Igcm91dGVyIHByb3ZpZGVzIHJlZGlyZWN0aW9uLCBnbyB0byBwYXJlbnQgKGNhcmUgOiBwYXJlbnQgY2FuJ3QgaGF2ZSBlbXB0eSBwYXRoIDogJycpLFxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycuJ10sIHtyZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLnBhcmVudH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
69
+ }], ctorParameters: () => [] });
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXRyaWdnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvZGlhbG9nLXRyaWdnZXIvZGlhbG9nLXRyaWdnZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxTQUFTLEVBQWEsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBQyxTQUFTLEVBQWdDLE1BQU0sMEJBQTBCLENBQUM7QUFDbEYsT0FBTyxFQUFDLGNBQWMsRUFBRSxNQUFNLEVBQWEsTUFBTSxpQkFBaUIsQ0FBQzs7QUFvQm5FLE1BQU0sT0FBTyw2QkFBNkI7SUFTdEM7UUFSaUIsV0FBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzQixVQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9CLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFPckMsNEJBQTRCO1FBQzVCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQWdELENBQUM7UUFFL0Ysb0RBQW9EO1FBQ3BELE1BQU0sRUFBQyxJQUFJLEVBQUUsR0FBRyxNQUFNLEVBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQztRQUMxRCxNQUFNLFlBQVksR0FBeUQ7WUFDdkUsR0FBRyxNQUFNO1lBQ1QsSUFBSSxFQUFFO2dCQUNGLElBQUksRUFBRSxJQUFJO2dCQUNWLHdFQUF3RTtnQkFDeEUsY0FBYyxFQUFFLElBQUksQ0FBQyxLQUFLO2FBQzdCO1NBQ0osQ0FBQztRQUVGLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBSS9CLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRTlDLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBQ2QsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLHNCQUFzQjtRQUNwRCxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLFFBQVEsQ0FBQyxTQUFnRDtRQUM1RCxNQUFNLGdCQUFnQixHQUFHLFNBQVMsSUFBSSxJQUFJLElBQUksU0FBUyxLQUFLLEVBQUUsQ0FBQyxDQUFDLHdCQUF3QjtRQUV4RixJQUFJLFNBQVMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ25CLHdCQUF3QjtZQUN4QixPQUFPO1FBQ1gsQ0FBQzthQUFNLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzNCLDRDQUE0QztZQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFrQixDQUFDLENBQUM7UUFDN0MsQ0FBQzthQUFNLElBQUksZ0JBQWdCLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ2pFLGlHQUFpRztZQUNqRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUF5QixDQUFDLENBQUM7UUFDdkUsQ0FBQzthQUFNLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUMxQixtSEFBbUg7WUFDbkgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBQyxDQUFDLENBQUM7UUFDakUsQ0FBQztJQUNMLENBQUM7OEdBbEVRLDZCQUE2QjtrR0FBN0IsNkJBQTZCLHdFQUg1QixFQUFFOzsyRkFHSCw2QkFBNkI7a0JBSnpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLEVBQUU7b0JBQ1osVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnRUeXBlfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7Q29tcG9uZW50LCBPbkRlc3Ryb3ksIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdERpYWxvZywgTWF0RGlhbG9nQ29uZmlnLCBNYXREaWFsb2dSZWZ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlLCBSb3V0ZXIsIFJvdXRlckxpbmt9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmV4cG9ydCB0eXBlIE5hdHVyYWxEaWFsb2dUcmlnZ2VyUm91dGluZ0RhdGE8VCwgRD4gPSB7XG4gICAgY29tcG9uZW50OiBDb21wb25lbnRUeXBlPFQ+O1xuICAgIGFmdGVyQ2xvc2VkUm91dGU/OiBSb3V0ZXJMaW5rWydyb3V0ZXJMaW5rJ107XG4gICAgZGlhbG9nQ29uZmlnOiBNYXREaWFsb2dDb25maWc8RD47XG59O1xuXG5leHBvcnQgdHlwZSBOYXR1cmFsRGlhbG9nVHJpZ2dlclByb3ZpZGVkRGF0YTxEPiA9IHtcbiAgICBkYXRhPzogUmVhZG9ubHk8RD4gfCBudWxsO1xuICAgIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZTtcbn07XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVkdW5kYW50LXR5cGUtY29uc3RpdHVlbnRzXG5leHBvcnQgdHlwZSBOYXR1cmFsRGlhbG9nVHJpZ2dlclJlZGlyZWN0aW9uVmFsdWVzID0gUm91dGVyTGlua1sncm91dGVyTGluayddIHwgbnVsbCB8IHVuZGVmaW5lZCB8ICcnIHwgLTE7XG5cbkBDb21wb25lbnQoe1xuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsRGlhbG9nVHJpZ2dlckNvbXBvbmVudDxULCBEPiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2cgPSBpbmplY3QoTWF0RGlhbG9nKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxULCBOYXR1cmFsRGlhbG9nVHJpZ2dlclJlZGlyZWN0aW9uVmFsdWVzPjtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJpZ2dlckNvbmZpZzogTmF0dXJhbERpYWxvZ1RyaWdnZXJSb3V0aW5nRGF0YTxULCBEPjtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgLy8gRGF0YSBmcm9tIGFjdGl2YXRlZCByb3V0ZVxuICAgICAgICB0aGlzLnRyaWdnZXJDb25maWcgPSB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEudHJpZ2dlciBhcyBOYXR1cmFsRGlhbG9nVHJpZ2dlclJvdXRpbmdEYXRhPFQsIEQ+O1xuXG4gICAgICAgIC8vIEdldCBkYXRhIHJlbGF0aXZlIHRvIGRpYWxvZyBzZXJ2aWNlIGNvbmZpZ3VyYXRpb25cbiAgICAgICAgY29uc3Qge2RhdGEsIC4uLmNvbmZpZ30gPSB0aGlzLnRyaWdnZXJDb25maWcuZGlhbG9nQ29uZmlnO1xuICAgICAgICBjb25zdCBkaWFsb2dDb25maWc6IE1hdERpYWxvZ0NvbmZpZzxOYXR1cmFsRGlhbG9nVHJpZ2dlclByb3ZpZGVkRGF0YTxEPj4gPSB7XG4gICAgICAgICAgICAuLi5jb25maWcsXG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgZGF0YTogZGF0YSxcbiAgICAgICAgICAgICAgICAvLyBTZXQgZGF0YSBhY2Nlc3NpYmxlIGludG8gY29tcG9uZW50IGluc3RhbnRpYXRlZCBieSB0aGUgZGlhbG9nIHNlcnZpY2VcbiAgICAgICAgICAgICAgICBhY3RpdmF0ZWRSb3V0ZTogdGhpcy5yb3V0ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5kaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuPFxuICAgICAgICAgICAgVCxcbiAgICAgICAgICAgIE5hdHVyYWxEaWFsb2dUcmlnZ2VyUHJvdmlkZWREYXRhPEQ+LFxuICAgICAgICAgICAgTmF0dXJhbERpYWxvZ1RyaWdnZXJSZWRpcmVjdGlvblZhbHVlc1xuICAgICAgICA+KHRoaXMudHJpZ2dlckNvbmZpZy5jb21wb25lbnQsIGRpYWxvZ0NvbmZpZyk7XG5cbiAgICAgICAgLy8gUmVkaXJlY3Qgb24gY2xvc2luZyAoaWYgYXBwbGljYWJsZSlcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuYmVmb3JlQ2xvc2VkKCkuc3Vic2NyaWJlKGV4aXRWYWx1ZSA9PiB0aGlzLnJlZGlyZWN0KGV4aXRWYWx1ZSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGxlZCB3aGVuIHJvdXRlciBsZWF2ZXMgcm91dGUsIGFuZCBzbyBvbiwgY2xvc2VzIHRoZSBtb2RhbCB3aXRoIHVuZGVmaW5lZCB2YWx1ZSB0byBwcmV2ZW50IGEgbmV3IHJlZGlyZWN0aW9uXG4gICAgICovXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaWFsb2dSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKC0xKTsgLy8gLTEgPSBubyByZWRpcmVjdGlvblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVkaXJlY3RzIG9uIG1vZGFsIGNsb3NpbmcgdW5kZXIgZm9sbG93aW5nIHJ1bGVzL2NvbmRpdGlvbnNcbiAgICAgKlxuICAgICAqIElmIC0xIDogbm8gcmVkaXJlY3Rpb25cbiAgICAgKiBJZiB1bmRlZmluZWQsIG51bGwgb3IgZW1wdHkgc3RyaW5nIDogdXNlcyB0aGUgcm91dGVyIHByb3ZpZGVkIHJlZGlyZWN0aW9uIHJvdXRlIG9yIGZhbGxiYWNrcyBvbiBwYXJlbnQgcm91dGUgaWYgcm91dGVyIGRvbid0IHByb3ZpZGVcbiAgICAgKiBJZiBhIHZhbHVlIGlzIHByb3ZpZGVkLCBzaG91bGQgYmUgb2YgdHlwZSBhbnlbXSBhbmQgaXQncyB1c2VkIGZvciByZWRpcmVjdGlvbi5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVkaXJlY3QoZXhpdFZhbHVlOiBOYXR1cmFsRGlhbG9nVHJpZ2dlclJlZGlyZWN0aW9uVmFsdWVzKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGlzRW1wdHlFeGl0VmFsdWUgPSBleGl0VmFsdWUgPT0gbnVsbCB8fCBleGl0VmFsdWUgPT09ICcnOyAvLyB1bmRlZmluZWQsIG51bGwgb3IgJydcblxuICAgICAgICBpZiAoZXhpdFZhbHVlID09PSAtMSkge1xuICAgICAgICAgICAgLy8gaWYgLTEsIGRvbid0IHJlZGlyZWN0XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSBpZiAoIWlzRW1wdHlFeGl0VmFsdWUpIHtcbiAgICAgICAgICAgIC8vIElmIHZhbHVlIHByb3ZpZGVkLCByZWRpcmVjdCB0byB0aGF0IHJvdXRlXG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShleGl0VmFsdWUgYXMgYW55W10pO1xuICAgICAgICB9IGVsc2UgaWYgKGlzRW1wdHlFeGl0VmFsdWUgJiYgdGhpcy50cmlnZ2VyQ29uZmlnLmFmdGVyQ2xvc2VkUm91dGUpIHtcbiAgICAgICAgICAgIC8vIElmIHZhbHVlIGlzIG5vdCBwcm92aWRlZCAobnVsbCkgYW5kIHJvdXRlciBjb250ZXh0IHNwZWNpZmllZCBkZWZhdWx0IHJlZGlyZWN0aW9uIHJvdXRlLCB1c2UgaXRcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKHRoaXMudHJpZ2dlckNvbmZpZy5hZnRlckNsb3NlZFJvdXRlIGFzIGFueVtdKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0VtcHR5RXhpdFZhbHVlKSB7XG4gICAgICAgICAgICAvLyBJZiBuZWl0aGVyIG9mIGNvbXBvbmVudCBvciByb3V0ZXIgcHJvdmlkZXMgcmVkaXJlY3Rpb24sIGdvIHRvIHBhcmVudCAoY2FyZSA6IHBhcmVudCBjYW4ndCBoYXZlIGVtcHR5IHBhdGggOiAnJyksXG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy4nXSwge3JlbGF0aXZlVG86IHRoaXMucm91dGUucGFyZW50fSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * Public API Surface of natural-search dropdown components
3
3
  */
4
- export { TypeSelectComponent } from './type-select/type-select.component';
4
+ export { TypeSelectComponent, } from './type-select/type-select.component';
5
5
  export { TypeNaturalSelectComponent, } from './type-natural-select/type-natural-select.component';
6
6
  export { TypeNumberComponent } from './type-number/type-number.component';
7
7
  export { TypeHierarchicSelectorComponent, } from './type-hierarchic-selector/type-hierarchic-selector.component';
@@ -9,6 +9,6 @@ export { TypeDateComponent } from './type-date/type-date.component';
9
9
  export { TypeDateRangeComponent } from './type-date-range/type-date-range.component';
10
10
  export { TypeTextComponent, InvalidWithValueStateMatcher } from './type-text/type-text.component';
11
11
  export { TypeBooleanComponent } from './type-boolean/type-boolean.component';
12
- export { TypeOptionsComponent } from './type-options/type-options.component';
12
+ export { TypeOptionsComponent, } from './type-options/type-options.component';
13
13
  export { possibleComparableOperators } from './types';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE9BQU8sRUFBMEMsbUJBQW1CLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUVqSCxPQUFPLEVBRUgsMEJBQTBCLEdBQzdCLE1BQU0scURBQXFELENBQUM7QUFFN0QsT0FBTyxFQUEwQixtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRWpHLE9BQU8sRUFFSCwrQkFBK0IsR0FDbEMsTUFBTSwrREFBK0QsQ0FBQztBQUV2RSxPQUFPLEVBQXdCLGlCQUFpQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFFekYsT0FBTyxFQUE2QixzQkFBc0IsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBRS9HLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSw0QkFBNEIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRWhHLE9BQU8sRUFBMkIsb0JBQW9CLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNyRyxPQUFPLEVBQXVDLG9CQUFvQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDakgsT0FBTyxFQUFDLDJCQUEyQixFQUFnQyxNQUFNLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbmF0dXJhbC1zZWFyY2ggZHJvcGRvd24gY29tcG9uZW50c1xuICovXG5leHBvcnQge1R5cGVTZWxlY3RDb25maWd1cmF0aW9uLCBUeXBlU2VsZWN0SXRlbSwgVHlwZVNlbGVjdENvbXBvbmVudH0gZnJvbSAnLi90eXBlLXNlbGVjdC90eXBlLXNlbGVjdC5jb21wb25lbnQnO1xuXG5leHBvcnQge1xuICAgIFR5cGVTZWxlY3ROYXR1cmFsQ29uZmlndXJhdGlvbixcbiAgICBUeXBlTmF0dXJhbFNlbGVjdENvbXBvbmVudCxcbn0gZnJvbSAnLi90eXBlLW5hdHVyYWwtc2VsZWN0L3R5cGUtbmF0dXJhbC1zZWxlY3QuY29tcG9uZW50JztcblxuZXhwb3J0IHtUeXBlTnVtYmVyQ29uZmlndXJhdGlvbiwgVHlwZU51bWJlckNvbXBvbmVudH0gZnJvbSAnLi90eXBlLW51bWJlci90eXBlLW51bWJlci5jb21wb25lbnQnO1xuXG5leHBvcnQge1xuICAgIFR5cGVIaWVyYXJjaGljU2VsZWN0b3JDb25maWd1cmF0aW9uLFxuICAgIFR5cGVIaWVyYXJjaGljU2VsZWN0b3JDb21wb25lbnQsXG59IGZyb20gJy4vdHlwZS1oaWVyYXJjaGljLXNlbGVjdG9yL3R5cGUtaGllcmFyY2hpYy1zZWxlY3Rvci5jb21wb25lbnQnO1xuXG5leHBvcnQge1R5cGVEYXRlQ29uZmlndXJhdGlvbiwgVHlwZURhdGVDb21wb25lbnR9IGZyb20gJy4vdHlwZS1kYXRlL3R5cGUtZGF0ZS5jb21wb25lbnQnO1xuXG5leHBvcnQge1R5cGVEYXRlUmFuZ2VDb25maWd1cmF0aW9uLCBUeXBlRGF0ZVJhbmdlQ29tcG9uZW50fSBmcm9tICcuL3R5cGUtZGF0ZS1yYW5nZS90eXBlLWRhdGUtcmFuZ2UuY29tcG9uZW50JztcblxuZXhwb3J0IHtUeXBlVGV4dENvbXBvbmVudCwgSW52YWxpZFdpdGhWYWx1ZVN0YXRlTWF0Y2hlcn0gZnJvbSAnLi90eXBlLXRleHQvdHlwZS10ZXh0LmNvbXBvbmVudCc7XG5cbmV4cG9ydCB7VHlwZUJvb2xlYW5Db25maWd1cmF0aW9uLCBUeXBlQm9vbGVhbkNvbXBvbmVudH0gZnJvbSAnLi90eXBlLWJvb2xlYW4vdHlwZS1ib29sZWFuLmNvbXBvbmVudCc7XG5leHBvcnQge1R5cGVPcHRpb25zQ29uZmlndXJhdGlvbiwgVHlwZU9wdGlvbiwgVHlwZU9wdGlvbnNDb21wb25lbnR9IGZyb20gJy4vdHlwZS1vcHRpb25zL3R5cGUtb3B0aW9ucy5jb21wb25lbnQnO1xuZXhwb3J0IHtwb3NzaWJsZUNvbXBhcmFibGVPcGVyYXRvcnMsIFBvc3NpYmxlQ29tcGFyYWJsZU9wZXJ0b3JLZXlzfSBmcm9tICcuL3R5cGVzJztcbiJdfQ==
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE9BQU8sRUFHSCxtQkFBbUIsR0FDdEIsTUFBTSxxQ0FBcUMsQ0FBQztBQUU3QyxPQUFPLEVBRUgsMEJBQTBCLEdBQzdCLE1BQU0scURBQXFELENBQUM7QUFFN0QsT0FBTyxFQUErQixtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRXRHLE9BQU8sRUFFSCwrQkFBK0IsR0FDbEMsTUFBTSwrREFBK0QsQ0FBQztBQUV2RSxPQUFPLEVBQTZCLGlCQUFpQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFFOUYsT0FBTyxFQUFrQyxzQkFBc0IsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBRXBILE9BQU8sRUFBQyxpQkFBaUIsRUFBRSw0QkFBNEIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRWhHLE9BQU8sRUFBZ0Msb0JBQW9CLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUMxRyxPQUFPLEVBR0gsb0JBQW9CLEdBQ3ZCLE1BQU0sdUNBQXVDLENBQUM7QUFDL0MsT0FBTyxFQUFDLDJCQUEyQixFQUFxQyxNQUFNLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbmF0dXJhbC1zZWFyY2ggZHJvcGRvd24gY29tcG9uZW50c1xuICovXG5leHBvcnQge1xuICAgIHR5cGUgVHlwZVNlbGVjdENvbmZpZ3VyYXRpb24sXG4gICAgdHlwZSBUeXBlU2VsZWN0SXRlbSxcbiAgICBUeXBlU2VsZWN0Q29tcG9uZW50LFxufSBmcm9tICcuL3R5cGUtc2VsZWN0L3R5cGUtc2VsZWN0LmNvbXBvbmVudCc7XG5cbmV4cG9ydCB7XG4gICAgdHlwZSBUeXBlU2VsZWN0TmF0dXJhbENvbmZpZ3VyYXRpb24sXG4gICAgVHlwZU5hdHVyYWxTZWxlY3RDb21wb25lbnQsXG59IGZyb20gJy4vdHlwZS1uYXR1cmFsLXNlbGVjdC90eXBlLW5hdHVyYWwtc2VsZWN0LmNvbXBvbmVudCc7XG5cbmV4cG9ydCB7dHlwZSBUeXBlTnVtYmVyQ29uZmlndXJhdGlvbiwgVHlwZU51bWJlckNvbXBvbmVudH0gZnJvbSAnLi90eXBlLW51bWJlci90eXBlLW51bWJlci5jb21wb25lbnQnO1xuXG5leHBvcnQge1xuICAgIHR5cGUgVHlwZUhpZXJhcmNoaWNTZWxlY3RvckNvbmZpZ3VyYXRpb24sXG4gICAgVHlwZUhpZXJhcmNoaWNTZWxlY3RvckNvbXBvbmVudCxcbn0gZnJvbSAnLi90eXBlLWhpZXJhcmNoaWMtc2VsZWN0b3IvdHlwZS1oaWVyYXJjaGljLXNlbGVjdG9yLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB7dHlwZSBUeXBlRGF0ZUNvbmZpZ3VyYXRpb24sIFR5cGVEYXRlQ29tcG9uZW50fSBmcm9tICcuL3R5cGUtZGF0ZS90eXBlLWRhdGUuY29tcG9uZW50JztcblxuZXhwb3J0IHt0eXBlIFR5cGVEYXRlUmFuZ2VDb25maWd1cmF0aW9uLCBUeXBlRGF0ZVJhbmdlQ29tcG9uZW50fSBmcm9tICcuL3R5cGUtZGF0ZS1yYW5nZS90eXBlLWRhdGUtcmFuZ2UuY29tcG9uZW50JztcblxuZXhwb3J0IHtUeXBlVGV4dENvbXBvbmVudCwgSW52YWxpZFdpdGhWYWx1ZVN0YXRlTWF0Y2hlcn0gZnJvbSAnLi90eXBlLXRleHQvdHlwZS10ZXh0LmNvbXBvbmVudCc7XG5cbmV4cG9ydCB7dHlwZSBUeXBlQm9vbGVhbkNvbmZpZ3VyYXRpb24sIFR5cGVCb29sZWFuQ29tcG9uZW50fSBmcm9tICcuL3R5cGUtYm9vbGVhbi90eXBlLWJvb2xlYW4uY29tcG9uZW50JztcbmV4cG9ydCB7XG4gICAgdHlwZSBUeXBlT3B0aW9uc0NvbmZpZ3VyYXRpb24sXG4gICAgdHlwZSBUeXBlT3B0aW9uLFxuICAgIFR5cGVPcHRpb25zQ29tcG9uZW50LFxufSBmcm9tICcuL3R5cGUtb3B0aW9ucy90eXBlLW9wdGlvbnMuY29tcG9uZW50JztcbmV4cG9ydCB7cG9zc2libGVDb21wYXJhYmxlT3BlcmF0b3JzLCB0eXBlIFBvc3NpYmxlQ29tcGFyYWJsZU9wZXJ0b3JLZXlzfSBmcm9tICcuL3R5cGVzJztcbiJdfQ==