@ng-doc/app 16.14.0 → 16.15.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/assets/themes/ng-doc-night.css +20 -19
  2. package/components/playground/playground-demo/playground-demo.component.d.ts +1 -0
  3. package/components/playground/playground-properties/playground-properties.component.d.ts +2 -1
  4. package/components/playground/playground.component.d.ts +3 -0
  5. package/components/theme-toggle/theme-toggle.component.d.ts +8 -2
  6. package/constants/themes.d.ts +8 -8
  7. package/esm2022/components/api-list/api-list.component.mjs +7 -5
  8. package/esm2022/components/code/code.component.mjs +3 -3
  9. package/esm2022/components/demo/demo.component.mjs +7 -6
  10. package/esm2022/components/demo-displayer/demo-displayer.component.mjs +3 -3
  11. package/esm2022/components/demo-pane/demo-pane.component.mjs +6 -5
  12. package/esm2022/components/kind-icon/kind-icon.component.mjs +3 -3
  13. package/esm2022/components/link/link.component.mjs +1 -1
  14. package/esm2022/components/navbar/navbar.component.mjs +3 -3
  15. package/esm2022/components/page/page.component.mjs +4 -4
  16. package/esm2022/components/page-link/page-link.component.mjs +4 -4
  17. package/esm2022/components/page-navigation/page-navigation.component.mjs +3 -3
  18. package/esm2022/components/playground/base-playground.mjs +9 -4
  19. package/esm2022/components/playground/playground-demo/playground-demo.component.mjs +20 -2
  20. package/esm2022/components/playground/playground-form.mjs +1 -1
  21. package/esm2022/components/playground/playground-properties/playground-properties.component.mjs +6 -3
  22. package/esm2022/components/playground/playground-property/playground-property.component.mjs +4 -2
  23. package/esm2022/components/playground/playground-property-control.mjs +1 -1
  24. package/esm2022/components/playground/playground.component.mjs +30 -10
  25. package/esm2022/components/search/search.component.mjs +3 -3
  26. package/esm2022/components/search-result/search-result.component.mjs +10 -2
  27. package/esm2022/components/sidebar/sidebar-category/sidebar-category.component.mjs +6 -5
  28. package/esm2022/components/sidebar/sidebar-item/sidebar-item.component.mjs +3 -3
  29. package/esm2022/components/sidebar/sidebar.component.mjs +3 -3
  30. package/esm2022/components/tabs/tabs.component.mjs +3 -3
  31. package/esm2022/components/theme-toggle/theme-toggle.component.mjs +34 -7
  32. package/esm2022/components/toc/toc-element/toc-element.component.mjs +3 -3
  33. package/esm2022/components/toc/toc.component.mjs +5 -2
  34. package/esm2022/constants/themes.mjs +9 -9
  35. package/esm2022/directives/code-highlighter/code-highlighter.directive.mjs +1 -1
  36. package/esm2022/directives/route-active/route-active.directive.mjs +1 -1
  37. package/esm2022/helpers/as-boolean.mjs +6 -2
  38. package/esm2022/helpers/generate-toc.mjs +1 -1
  39. package/esm2022/interfaces/provided-type-control.mjs +1 -1
  40. package/esm2022/pipes/extract-value/extract-value.pipe.mjs +1 -1
  41. package/esm2022/pipes/filter-by-text/filter-by-text.pipe.mjs +1 -1
  42. package/esm2022/pipes/sanitize-html/sanitize-html.pipe.mjs +1 -1
  43. package/esm2022/processors/processors/code.processor.mjs +1 -1
  44. package/esm2022/processors/processors/demo-pane.processor.mjs +1 -1
  45. package/esm2022/processors/processors/demo.processor.mjs +1 -1
  46. package/esm2022/processors/processors/icon.processor.mjs +1 -1
  47. package/esm2022/processors/processors/link.processor.mjs +1 -1
  48. package/esm2022/processors/processors/playground.processor.mjs +3 -2
  49. package/esm2022/processors/processors/tabs.processor.mjs +1 -1
  50. package/esm2022/providers/ng-doc-app/provide-ng-doc-app.mjs +8 -6
  51. package/esm2022/services/store/store.service.mjs +1 -1
  52. package/esm2022/services/theme/theme.service.mjs +62 -33
  53. package/esm2022/tokens/api-list.mjs +1 -1
  54. package/esm2022/tokens/context.mjs +1 -1
  55. package/esm2022/tokens/theme.mjs +7 -7
  56. package/esm2022/tokens/type-control.mjs +1 -1
  57. package/esm2022/type-controls/boolean-control/boolean-control.component.mjs +1 -1
  58. package/esm2022/type-controls/number-control/number-control.component.mjs +1 -1
  59. package/esm2022/type-controls/string-control/string-control.component.mjs +1 -1
  60. package/esm2022/type-controls/type-alias-control/type-alias-control.component.mjs +1 -1
  61. package/esm2022/types/typed-form.mjs +1 -1
  62. package/fesm2022/ng-doc-app-components-api-list.mjs +5 -3
  63. package/fesm2022/ng-doc-app-components-api-list.mjs.map +1 -1
  64. package/fesm2022/ng-doc-app-components-code.mjs +2 -2
  65. package/fesm2022/ng-doc-app-components-code.mjs.map +1 -1
  66. package/fesm2022/ng-doc-app-components-demo-displayer.mjs +2 -2
  67. package/fesm2022/ng-doc-app-components-demo-displayer.mjs.map +1 -1
  68. package/fesm2022/ng-doc-app-components-demo-pane.mjs +4 -3
  69. package/fesm2022/ng-doc-app-components-demo-pane.mjs.map +1 -1
  70. package/fesm2022/ng-doc-app-components-demo.mjs +4 -3
  71. package/fesm2022/ng-doc-app-components-demo.mjs.map +1 -1
  72. package/fesm2022/ng-doc-app-components-kind-icon.mjs +2 -2
  73. package/fesm2022/ng-doc-app-components-kind-icon.mjs.map +1 -1
  74. package/fesm2022/ng-doc-app-components-link.mjs.map +1 -1
  75. package/fesm2022/ng-doc-app-components-navbar.mjs +2 -2
  76. package/fesm2022/ng-doc-app-components-navbar.mjs.map +1 -1
  77. package/fesm2022/ng-doc-app-components-page-link.mjs +2 -2
  78. package/fesm2022/ng-doc-app-components-page-link.mjs.map +1 -1
  79. package/fesm2022/ng-doc-app-components-page-navigation.mjs +2 -2
  80. package/fesm2022/ng-doc-app-components-page-navigation.mjs.map +1 -1
  81. package/fesm2022/ng-doc-app-components-page.mjs +3 -3
  82. package/fesm2022/ng-doc-app-components-page.mjs.map +1 -1
  83. package/fesm2022/ng-doc-app-components-playground.mjs +63 -16
  84. package/fesm2022/ng-doc-app-components-playground.mjs.map +1 -1
  85. package/fesm2022/ng-doc-app-components-search-result.mjs +9 -1
  86. package/fesm2022/ng-doc-app-components-search-result.mjs.map +1 -1
  87. package/fesm2022/ng-doc-app-components-search.mjs +2 -2
  88. package/fesm2022/ng-doc-app-components-search.mjs.map +1 -1
  89. package/fesm2022/ng-doc-app-components-sidebar.mjs +8 -7
  90. package/fesm2022/ng-doc-app-components-sidebar.mjs.map +1 -1
  91. package/fesm2022/ng-doc-app-components-tabs.mjs +2 -2
  92. package/fesm2022/ng-doc-app-components-tabs.mjs.map +1 -1
  93. package/fesm2022/ng-doc-app-components-theme-toggle.mjs +33 -6
  94. package/fesm2022/ng-doc-app-components-theme-toggle.mjs.map +1 -1
  95. package/fesm2022/ng-doc-app-components-toc.mjs +6 -3
  96. package/fesm2022/ng-doc-app-components-toc.mjs.map +1 -1
  97. package/fesm2022/ng-doc-app-constants.mjs +8 -8
  98. package/fesm2022/ng-doc-app-constants.mjs.map +1 -1
  99. package/fesm2022/ng-doc-app-directives-code-highlighter.mjs.map +1 -1
  100. package/fesm2022/ng-doc-app-directives-route-active.mjs.map +1 -1
  101. package/fesm2022/ng-doc-app-helpers.mjs +5 -1
  102. package/fesm2022/ng-doc-app-helpers.mjs.map +1 -1
  103. package/fesm2022/ng-doc-app-pipes-extract-value.mjs.map +1 -1
  104. package/fesm2022/ng-doc-app-pipes-filter-by-text.mjs.map +1 -1
  105. package/fesm2022/ng-doc-app-pipes-sanitize-html.mjs.map +1 -1
  106. package/fesm2022/ng-doc-app-processors-processors.mjs +2 -1
  107. package/fesm2022/ng-doc-app-processors-processors.mjs.map +1 -1
  108. package/fesm2022/ng-doc-app-providers-ng-doc-app.mjs +7 -5
  109. package/fesm2022/ng-doc-app-providers-ng-doc-app.mjs.map +1 -1
  110. package/fesm2022/ng-doc-app-services-store.mjs.map +1 -1
  111. package/fesm2022/ng-doc-app-services-theme.mjs +61 -32
  112. package/fesm2022/ng-doc-app-services-theme.mjs.map +1 -1
  113. package/fesm2022/ng-doc-app-tokens.mjs +6 -6
  114. package/fesm2022/ng-doc-app-tokens.mjs.map +1 -1
  115. package/fesm2022/ng-doc-app-type-controls-boolean-control.mjs.map +1 -1
  116. package/fesm2022/ng-doc-app-type-controls-number-control.mjs.map +1 -1
  117. package/fesm2022/ng-doc-app-type-controls-string-control.mjs.map +1 -1
  118. package/fesm2022/ng-doc-app-type-controls-type-alias-control.mjs.map +1 -1
  119. package/package.json +3 -3
  120. package/services/theme/theme.service.d.ts +24 -7
  121. package/styles/global.css +141 -436
  122. package/styles/main.css +138 -433
  123. package/tokens/theme.d.ts +6 -6
@@ -83,28 +83,29 @@ code.hljs {
83
83
  }
84
84
 
85
85
  :root {
86
- --ng-doc-base-0: var(--ng-doc-grey-180);
87
- --ng-doc-base-1: var(--ng-doc-grey-170);
88
- --ng-doc-base-2: var(--ng-doc-grey-160);
89
- --ng-doc-base-3: var(--ng-doc-grey-150);
90
- --ng-doc-base-4: var(--ng-doc-grey-150);
91
- --ng-doc-base-5: var(--ng-doc-grey-140);
92
- --ng-doc-base-6: var(--ng-doc-grey-130);
93
- --ng-doc-base-7: var(--ng-doc-grey-120);
94
- --ng-doc-base-8: var(--ng-doc-grey-110);
95
- --ng-doc-base-9: var(--ng-doc-grey-100);
96
- --ng-doc-base-10: var(--ng-doc-grey-90);
97
- --ng-doc-base-11: var(--ng-doc-grey-80);
86
+ --ng-doc-base-0: #2b2b2b;
87
+ --ng-doc-base-1: #333333;
88
+ --ng-doc-base-2: #3a3a3a;
89
+ --ng-doc-base-3: #424242;
90
+ --ng-doc-base-4: #4b4b4b;
91
+ --ng-doc-base-5: #555555;
92
+ --ng-doc-base-6: #5e5e5e;
93
+ --ng-doc-base-7: #686868;
94
+ --ng-doc-base-8: #727272;
95
+ --ng-doc-base-9: #7d7d7d;
96
+ --ng-doc-base-10: #888888;
98
97
  --ng-doc-text: #f6f6f6;
99
- --ng-doc-shadow-color: rgb(var(--ng-doc-grey-rgb));
100
- --ng-doc-link-color: var(--ng-doc-light-blue-100);
101
- --ng-doc-link-color-rgb: var(--ng-doc-light-blue-rgb);
102
- --ng-doc-primary: var(--ng-doc-ember-140);
103
- --ng-doc-primary-rgb: var(--ng-doc-ember-rgb);
104
- --ng-doc-mark-background: var(--ng-doc-blue-40);
98
+ --ng-doc-text-muted: var(--ng-doc-base-10);
99
+ --ng-doc-text-selection: rgba(110, 110, 110, 0.81);
100
+ --ng-doc-shadow-color: rgba(0, 0, 0, 0.4);
101
+ --ng-doc-link-color: #30a5ff;
102
+ --ng-doc-inline-code-background: #b9b9b9;
103
+ --ng-doc-primary: #faab00;
104
+ --ng-doc-info: #7095ff;
105
+ --ng-doc-mark-background: rgba(48, 165, 255, 0.3);
105
106
  --ng-doc-search-result-color: #c6c6c6;
106
107
  --ng-doc-api-tag-background: #ff5959;
107
108
  --ng-doc-api-tag-color: var(--ng-doc-base-0);
108
- --ng-doc-guide-tag-background: var(--ng-doc-ember-140);
109
+ --ng-doc-guide-tag-background: #faab00;
109
110
  --ng-doc-guide-tag-color: var(--ng-doc-base-0);
110
111
  }
@@ -27,6 +27,7 @@ export declare class NgDocPlaygroundDemoComponent<T extends NgDocPlaygroundPrope
27
27
  private updateCodeView;
28
28
  private getActiveContent;
29
29
  private getActiveInputs;
30
+ private getPipeActiveInputs;
30
31
  ngOnDestroy(): void;
31
32
  static ɵfac: i0.ɵɵFactoryDeclaration<NgDocPlaygroundDemoComponent<any>, never>;
32
33
  static ɵcmp: i0.ɵɵComponentDeclaration<NgDocPlaygroundDemoComponent<any>, "ng-doc-playground-demo", never, { "id": { "alias": "id"; "required": false; }; "pipeName": { "alias": "pipeName"; "required": false; }; "selector": { "alias": "selector"; "required": false; }; "configuration": { "alias": "configuration"; "required": false; }; "properties": { "alias": "properties"; "required": false; }; "recreateDemo": { "alias": "recreateDemo"; "required": false; }; "form": { "alias": "form"; "required": false; }; "expanded": { "alias": "expanded"; "required": false; }; }, {}, never, never, true, never>;
@@ -17,6 +17,7 @@ export declare class NgDocPlaygroundPropertiesComponent<P extends NgDocPlaygroun
17
17
  defaultValues?: Record<string, unknown>;
18
18
  hideSidePanel: boolean;
19
19
  recreateDemo: boolean;
20
+ showResetButton: boolean;
20
21
  recreateDemoChange: EventEmitter<boolean>;
21
22
  resetForm: EventEmitter<void>;
22
23
  readonly breakpoints: string[];
@@ -30,5 +31,5 @@ export declare class NgDocPlaygroundPropertiesComponent<P extends NgDocPlaygroun
30
31
  private getControlForType;
31
32
  private getControlForTypeAlias;
32
33
  static ɵfac: i0.ɵɵFactoryDeclaration<NgDocPlaygroundPropertiesComponent<any, any>, never>;
33
- static ɵcmp: i0.ɵɵComponentDeclaration<NgDocPlaygroundPropertiesComponent<any, any>, "ng-doc-playground-properties", never, { "form": { "alias": "form"; "required": false; }; "properties": { "alias": "properties"; "required": false; }; "ignoreInputs": { "alias": "ignoreInputs"; "required": false; }; "dynamicContent": { "alias": "dynamicContent"; "required": false; }; "defaultValues": { "alias": "defaultValues"; "required": false; }; "hideSidePanel": { "alias": "hideSidePanel"; "required": false; }; "recreateDemo": { "alias": "recreateDemo"; "required": false; }; }, { "recreateDemoChange": "recreateDemoChange"; "resetForm": "resetForm"; }, never, ["*"], true, never>;
34
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgDocPlaygroundPropertiesComponent<any, any>, "ng-doc-playground-properties", never, { "form": { "alias": "form"; "required": false; }; "properties": { "alias": "properties"; "required": false; }; "ignoreInputs": { "alias": "ignoreInputs"; "required": false; }; "dynamicContent": { "alias": "dynamicContent"; "required": false; }; "defaultValues": { "alias": "defaultValues"; "required": false; }; "hideSidePanel": { "alias": "hideSidePanel"; "required": false; }; "recreateDemo": { "alias": "recreateDemo"; "required": false; }; "showResetButton": { "alias": "showResetButton"; "required": false; }; }, { "recreateDemoChange": "recreateDemoChange"; "resetForm": "resetForm"; }, never, ["*"], true, never>;
34
35
  }
@@ -16,9 +16,12 @@ export declare class NgDocPlaygroundComponent<T extends NgDocPlaygroundPropertie
16
16
  formGroup: FormGroup<NgDocPlaygroundForm>;
17
17
  defaultValues?: Record<string, unknown>;
18
18
  configuration: NgDocPlaygroundConfig;
19
+ private defaultProperties;
20
+ private defaultContent;
19
21
  constructor(rootPage: NgDocRootPage, formBuilder: FormBuilder);
20
22
  ngOnChanges({ options }: SimpleChanges): void;
21
23
  ngAfterViewInit(): void;
24
+ protected isDefaultState(): boolean;
22
25
  private getPropertiesFormValues;
23
26
  private getContentFormValues;
24
27
  resetForm(): void;
@@ -1,12 +1,18 @@
1
1
  import { NgDocTheme } from '@ng-doc/app/interfaces';
2
2
  import { NgDocThemeService } from '@ng-doc/app/services';
3
3
  import * as i0 from "@angular/core";
4
+ interface ToggleTheme {
5
+ name: string;
6
+ theme: NgDocTheme | 'auto' | undefined;
7
+ }
4
8
  export declare class NgDocThemeToggleComponent {
5
9
  protected readonly themeService: NgDocThemeService;
6
- protected readonly themes: Array<NgDocTheme | undefined>;
10
+ protected readonly themes: ToggleTheme[];
7
11
  constructor(themeService: NgDocThemeService);
8
- get nextTheme(): NgDocTheme | undefined;
12
+ get currentTheme(): ToggleTheme;
13
+ get nextTheme(): ToggleTheme;
9
14
  toggleTheme(): void;
10
15
  static ɵfac: i0.ɵɵFactoryDeclaration<NgDocThemeToggleComponent, never>;
11
16
  static ɵcmp: i0.ɵɵComponentDeclaration<NgDocThemeToggleComponent, "ng-doc-theme-toggle", never, {}, {}, never, never, true, never>;
12
17
  }
18
+ export {};
@@ -8,11 +8,11 @@ import { NgDocTheme } from '@ng-doc/app/interfaces';
8
8
  *
9
9
  * @Component()
10
10
  * export class AppComponent {
11
- * constructor(
12
- * private readonly themeService: NgDocThemeService,
13
- * ) {
14
- * this.themeService.setTheme(NG_DOC_NIGHT_THEME.id);
15
- * }
11
+ * constructor(
12
+ * private readonly themeService: NgDocThemeService,
13
+ * ) {
14
+ * this.themeService.setTheme(NG_DOC_NIGHT_THEME.id);
15
+ * }
16
16
  * }
17
17
  * ```
18
18
  *
@@ -23,9 +23,9 @@ import { NgDocTheme } from '@ng-doc/app/interfaces';
23
23
  * import {AppComponent} from './app.component';
24
24
  *
25
25
  * @NgModule({
26
- * declarations: [AppComponent],
27
- * imports: [NgDocModule.forRoot({defaultTheme: NG_DOC_NIGHT_THEME.id})],
28
- * bootstrap: [AppComponent],
26
+ * declarations: [AppComponent],
27
+ * imports: [NgDocModule.forRoot({defaultTheme: NG_DOC_NIGHT_THEME.id})],
28
+ * bootstrap: [AppComponent],
29
29
  * })
30
30
  * export class AppModule {}
31
31
  * ```
@@ -1,7 +1,7 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import { AsyncPipe, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
3
3
  import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
4
- import { FormBuilder, FormsModule, ReactiveFormsModule } from '@angular/forms';
4
+ import { FormBuilder, FormsModule, ReactiveFormsModule, } from '@angular/forms';
5
5
  import { ActivatedRoute, Router, RouterLink } from '@angular/router';
6
6
  import { NgDocKindIconComponent } from '@ng-doc/app/components/kind-icon';
7
7
  import { NG_DOC_API_LIST_TOKEN } from '@ng-doc/app/tokens';
@@ -51,10 +51,12 @@ let NgDocApiListComponent = class NgDocApiListComponent {
51
51
  return asArray(new Set(this.apiList.flatMap((api) => api.title))).sort();
52
52
  }
53
53
  get types() {
54
- return asArray(new Set(this.apiList.flatMap((api) => api.items).flatMap((item) => item.type))).sort();
54
+ return asArray(new Set(this.apiList
55
+ .flatMap((api) => api.items)
56
+ .flatMap((item) => item.type))).sort();
55
57
  }
56
58
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocApiListComponent, deps: [{ token: NG_DOC_API_LIST_TOKEN }, { token: i1.FormBuilder }, { token: i2.ActivatedRoute }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
57
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocApiListComponent, isStandalone: true, selector: "ng-doc-api-list", ngImport: i0, template: "<h1 ng-doc-text>API List</h1>\n<div class=\"ng-doc-api-list-wrapper\" *ngIf=\"api$ | async as api\">\n\t<form class=\"ng-doc-api-filter\" [formGroup]=\"formGroup\">\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Filter\">\n\t\t\t<ng-doc-input-wrapper [leftContent]=\"leftContent\">\n\t\t\t\t<ng-template #leftContent>\n\t\t\t\t\t<ng-doc-icon icon=\"search\"></ng-doc-icon>\n\t\t\t\t</ng-template>\n\t\t\t\t<input\n\t\t\t\t\tngDocInputString\n\t\t\t\t\t[formControl]=\"formGroup.controls.filter\"\n\t\t\t\t\tplaceholder=\"Type the name\"\n\t\t\t\t\tngDocAutofocus />\n\t\t\t</ng-doc-input-wrapper>\n\t\t</label>\n\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Scope\" *ngIf=\"scopes.length\">\n\t\t\t<ng-doc-combobox\n\t\t\t\t[formControl]=\"formGroup.controls.scope\"\n\t\t\t\t[valueContent]=\"comboboxScopeItem\"\n\t\t\t\t[readonly]=\"true\"\n\t\t\t\tplaceholder=\"Choose the scope\">\n\t\t\t\t<ng-doc-list *ngDocData>\n\t\t\t\t\t<ng-doc-option *ngFor=\"let scope of scopes\" [value]=\"scope\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"comboboxScopeItem; context: { $implicit: scope }\"></ng-container>\n\t\t\t\t\t</ng-doc-option>\n\t\t\t\t</ng-doc-list>\n\t\t\t\t<ng-template let-value #comboboxScopeItem>\n\t\t\t\t\t{{ value }}\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-combobox>\n\t\t</label>\n\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Type\">\n\t\t\t<ng-doc-combobox\n\t\t\t\t[formControl]=\"formGroup.controls.type\"\n\t\t\t\t[valueContent]=\"comboboxTypeItem\"\n\t\t\t\t[readonly]=\"true\"\n\t\t\t\tplaceholder=\"Choose the entity type\">\n\t\t\t\t<ng-doc-list *ngDocData>\n\t\t\t\t\t<ng-doc-option *ngFor=\"let type of types\" [value]=\"type\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"comboboxTypeItem; context: { $implicit: type }\"></ng-container>\n\t\t\t\t\t</ng-doc-option>\n\t\t\t\t</ng-doc-list>\n\t\t\t\t<ng-template let-value #comboboxTypeItem>\n\t\t\t\t\t<div ng-doc-text>\n\t\t\t\t\t\t<ng-doc-kind-icon\n\t\t\t\t\t\t\t[kind]=\"value\"\n\t\t\t\t\t\t\t[ngDocTooltip]=\"value\"\n\t\t\t\t\t\t\t[positions]=\"['left-center', 'right-center']\"\n\t\t\t\t\t\t\tngDocTextLeft>\n\t\t\t\t\t\t</ng-doc-kind-icon>\n\t\t\t\t\t\t{{ value }}\n\t\t\t\t\t</div>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-combobox>\n\t\t</label>\n\t</form>\n\t<div class=\"ng-doc-api-list\">\n\t\t<div class=\"ng-doc-api-scope\" *ngFor=\"let scope of api\">\n\t\t\t<h3 class=\"ng-doc-scope-title\" ng-doc-text>{{ scope.title }}</h3>\n\t\t\t<ul class=\"ng-doc-scope-items\" *ngIf=\"scope.items.length\">\n\t\t\t\t<li class=\"ng-doc-scope-item\" *ngFor=\"let apiReference of scope.items\">\n\t\t\t\t\t<a class=\"ng-doc-scope-item-link\" [routerLink]=\"[apiReference.route]\">\n\t\t\t\t\t\t<ng-doc-kind-icon [kind]=\"apiReference.type\" [ngDocTooltip]=\"apiReference.type\">\n\t\t\t\t\t\t</ng-doc-kind-icon>\n\t\t\t\t\t\t{{ apiReference.name }}\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>\n", styles: [":host h1{margin-top:0}:host .ng-doc-api-list-wrapper .ng-doc-api-filter{display:flex;margin-top:calc(var(--ng-doc-base-gutter) * 3);flex-wrap:wrap;grid-gap:calc(var(--ng-doc-base-gutter) * 2);gap:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-api-list-wrapper .ng-doc-api-filter .ng-doc-api-filter-item{width:200px}:host .ng-doc-api-list-wrapper .ng-doc-api-list{margin-top:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope{display:flex;flex-direction:column}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items{margin-top:calc(var(--ng-doc-base-gutter) * 3);list-style:none;padding:0}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item{margin:var(--ng-doc-base-gutter) 0;float:left;width:33%;overflow:hidden;min-width:330px;text-overflow:ellipsis;white-space:nowrap}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link{display:flex;align-items:center;color:var(--ng-doc-text);text-decoration:none}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link:hover{text-decoration:underline}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link ng-doc-kind-icon{margin-right:var(--ng-doc-base-gutter);text-decoration:none!important}\n"], dependencies: [{ kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: NgDocLabelComponent, selector: "label[ng-doc-label]", inputs: ["ng-doc-label", "align"] }, { kind: "component", type: NgDocInputWrapperComponent, selector: "ng-doc-input-wrapper", inputs: ["blurContent", "blurContext", "leftContent", "rightContent", "align"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "directive", type: NgDocInputStringDirective, selector: "input[ngDocInputString]" }, { kind: "directive", type: NgDocAutofocusDirective, selector: "[ngDocAutofocus]", inputs: ["selectAll"] }, { kind: "component", type: NgDocComboboxComponent, selector: "ng-doc-combobox", inputs: ["readonly", "placeholder", "clearButton", "rightContent", "valueContent"] }, { kind: "directive", type: NgDocDataDirective, selector: "[ngDocData]" }, { kind: "component", type: NgDocListComponent, selector: "ng-doc-list" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocOptionComponent, selector: "ng-doc-option" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: NgDocKindIconComponent, selector: "ng-doc-kind-icon", inputs: ["kind", "type"] }, { kind: "directive", type: NgDocTextLeftDirective, selector: "[ngDocTextLeft]" }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocApiListComponent, isStandalone: true, selector: "ng-doc-api-list", ngImport: i0, template: "<h1 ng-doc-text>API List</h1>\n<div class=\"ng-doc-api-list-wrapper\" *ngIf=\"api$ | async as api\">\n\t<form class=\"ng-doc-api-filter\" [formGroup]=\"formGroup\">\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Filter\">\n\t\t\t<ng-doc-input-wrapper [leftContent]=\"leftContent\">\n\t\t\t\t<ng-template #leftContent>\n\t\t\t\t\t<ng-doc-icon icon=\"search\"></ng-doc-icon>\n\t\t\t\t</ng-template>\n\t\t\t\t<input\n\t\t\t\t\tngDocInputString\n\t\t\t\t\t[formControl]=\"formGroup.controls.filter\"\n\t\t\t\t\tplaceholder=\"Type the name\"\n\t\t\t\t\tngDocAutofocus />\n\t\t\t</ng-doc-input-wrapper>\n\t\t</label>\n\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Scope\" *ngIf=\"scopes.length\">\n\t\t\t<ng-doc-combobox\n\t\t\t\t[formControl]=\"formGroup.controls.scope\"\n\t\t\t\t[valueContent]=\"comboboxScopeItem\"\n\t\t\t\t[readonly]=\"true\"\n\t\t\t\tplaceholder=\"Choose the scope\">\n\t\t\t\t<ng-doc-list *ngDocData>\n\t\t\t\t\t<ng-doc-option *ngFor=\"let scope of scopes\" [value]=\"scope\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"comboboxScopeItem; context: { $implicit: scope }\"></ng-container>\n\t\t\t\t\t</ng-doc-option>\n\t\t\t\t</ng-doc-list>\n\t\t\t\t<ng-template let-value #comboboxScopeItem>\n\t\t\t\t\t{{ value }}\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-combobox>\n\t\t</label>\n\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Type\">\n\t\t\t<ng-doc-combobox\n\t\t\t\t[formControl]=\"formGroup.controls.type\"\n\t\t\t\t[valueContent]=\"comboboxTypeItem\"\n\t\t\t\t[readonly]=\"true\"\n\t\t\t\tplaceholder=\"Choose the entity type\">\n\t\t\t\t<ng-doc-list *ngDocData>\n\t\t\t\t\t<ng-doc-option *ngFor=\"let type of types\" [value]=\"type\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"comboboxTypeItem; context: { $implicit: type }\"></ng-container>\n\t\t\t\t\t</ng-doc-option>\n\t\t\t\t</ng-doc-list>\n\t\t\t\t<ng-template let-value #comboboxTypeItem>\n\t\t\t\t\t<div ng-doc-text>\n\t\t\t\t\t\t<ng-doc-kind-icon\n\t\t\t\t\t\t\t[kind]=\"value\"\n\t\t\t\t\t\t\t[ngDocTooltip]=\"value\"\n\t\t\t\t\t\t\t[positions]=\"['left-center', 'right-center']\"\n\t\t\t\t\t\t\tngDocTextLeft>\n\t\t\t\t\t\t</ng-doc-kind-icon>\n\t\t\t\t\t\t{{ value }}\n\t\t\t\t\t</div>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-combobox>\n\t\t</label>\n\t</form>\n\t<div class=\"ng-doc-api-list\">\n\t\t<div class=\"ng-doc-api-scope\" *ngFor=\"let scope of api\">\n\t\t\t<h3 class=\"ng-doc-scope-title\" ng-doc-text>{{ scope.title }}</h3>\n\t\t\t<ul class=\"ng-doc-scope-items\" *ngIf=\"scope.items.length\">\n\t\t\t\t<li class=\"ng-doc-scope-item\" *ngFor=\"let apiReference of scope.items\">\n\t\t\t\t\t<a class=\"ng-doc-scope-item-link\" [routerLink]=\"[apiReference.route]\">\n\t\t\t\t\t\t<ng-doc-kind-icon [kind]=\"apiReference.type\" [ngDocTooltip]=\"apiReference.type\">\n\t\t\t\t\t\t</ng-doc-kind-icon>\n\t\t\t\t\t\t{{ apiReference.name }}\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>\n", styles: [":host h1{margin-top:0}:host .ng-doc-api-list-wrapper .ng-doc-api-filter{display:flex;margin-top:calc(var(--ng-doc-base-gutter) * 3);flex-wrap:wrap;grid-gap:calc(var(--ng-doc-base-gutter) * 2);gap:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-api-list-wrapper .ng-doc-api-filter .ng-doc-api-filter-item{width:200px}:host .ng-doc-api-list-wrapper .ng-doc-api-list{margin-top:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope{display:flex;flex-direction:column}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items{margin-top:calc(var(--ng-doc-base-gutter) * 3);list-style:none;padding:0}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item{margin:var(--ng-doc-base-gutter) 0;float:left;width:33%;overflow:hidden;min-width:330px;text-overflow:ellipsis;white-space:nowrap}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link{display:flex;align-items:center;color:var(--ng-doc-text);text-decoration:none}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link:hover{text-decoration:underline}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link ng-doc-kind-icon{margin-right:var(--ng-doc-base-gutter);text-decoration:none!important}:host ng-doc-input-wrapper ng-doc-icon{--ng-doc-icon-color: var(--ng-doc-text-muted)}\n"], dependencies: [{ kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: NgDocLabelComponent, selector: "label[ng-doc-label]", inputs: ["ng-doc-label", "align"] }, { kind: "component", type: NgDocInputWrapperComponent, selector: "ng-doc-input-wrapper", inputs: ["blurContent", "blurContext", "leftContent", "rightContent", "align"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "directive", type: NgDocInputStringDirective, selector: "input[ngDocInputString]" }, { kind: "directive", type: NgDocAutofocusDirective, selector: "[ngDocAutofocus]", inputs: ["selectAll"] }, { kind: "component", type: NgDocComboboxComponent, selector: "ng-doc-combobox", inputs: ["readonly", "placeholder", "clearButton", "rightContent", "valueContent"] }, { kind: "directive", type: NgDocDataDirective, selector: "[ngDocData]" }, { kind: "component", type: NgDocListComponent, selector: "ng-doc-list" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocOptionComponent, selector: "ng-doc-option" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: NgDocKindIconComponent, selector: "ng-doc-kind-icon", inputs: ["kind", "type"] }, { kind: "directive", type: NgDocTextLeftDirective, selector: "[ngDocTextLeft]" }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
58
60
  };
59
61
  __decorate([
60
62
  ngDocMakePure,
@@ -96,9 +98,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
96
98
  NgDocTooltipDirective,
97
99
  RouterLink,
98
100
  AsyncPipe,
99
- ], template: "<h1 ng-doc-text>API List</h1>\n<div class=\"ng-doc-api-list-wrapper\" *ngIf=\"api$ | async as api\">\n\t<form class=\"ng-doc-api-filter\" [formGroup]=\"formGroup\">\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Filter\">\n\t\t\t<ng-doc-input-wrapper [leftContent]=\"leftContent\">\n\t\t\t\t<ng-template #leftContent>\n\t\t\t\t\t<ng-doc-icon icon=\"search\"></ng-doc-icon>\n\t\t\t\t</ng-template>\n\t\t\t\t<input\n\t\t\t\t\tngDocInputString\n\t\t\t\t\t[formControl]=\"formGroup.controls.filter\"\n\t\t\t\t\tplaceholder=\"Type the name\"\n\t\t\t\t\tngDocAutofocus />\n\t\t\t</ng-doc-input-wrapper>\n\t\t</label>\n\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Scope\" *ngIf=\"scopes.length\">\n\t\t\t<ng-doc-combobox\n\t\t\t\t[formControl]=\"formGroup.controls.scope\"\n\t\t\t\t[valueContent]=\"comboboxScopeItem\"\n\t\t\t\t[readonly]=\"true\"\n\t\t\t\tplaceholder=\"Choose the scope\">\n\t\t\t\t<ng-doc-list *ngDocData>\n\t\t\t\t\t<ng-doc-option *ngFor=\"let scope of scopes\" [value]=\"scope\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"comboboxScopeItem; context: { $implicit: scope }\"></ng-container>\n\t\t\t\t\t</ng-doc-option>\n\t\t\t\t</ng-doc-list>\n\t\t\t\t<ng-template let-value #comboboxScopeItem>\n\t\t\t\t\t{{ value }}\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-combobox>\n\t\t</label>\n\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Type\">\n\t\t\t<ng-doc-combobox\n\t\t\t\t[formControl]=\"formGroup.controls.type\"\n\t\t\t\t[valueContent]=\"comboboxTypeItem\"\n\t\t\t\t[readonly]=\"true\"\n\t\t\t\tplaceholder=\"Choose the entity type\">\n\t\t\t\t<ng-doc-list *ngDocData>\n\t\t\t\t\t<ng-doc-option *ngFor=\"let type of types\" [value]=\"type\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"comboboxTypeItem; context: { $implicit: type }\"></ng-container>\n\t\t\t\t\t</ng-doc-option>\n\t\t\t\t</ng-doc-list>\n\t\t\t\t<ng-template let-value #comboboxTypeItem>\n\t\t\t\t\t<div ng-doc-text>\n\t\t\t\t\t\t<ng-doc-kind-icon\n\t\t\t\t\t\t\t[kind]=\"value\"\n\t\t\t\t\t\t\t[ngDocTooltip]=\"value\"\n\t\t\t\t\t\t\t[positions]=\"['left-center', 'right-center']\"\n\t\t\t\t\t\t\tngDocTextLeft>\n\t\t\t\t\t\t</ng-doc-kind-icon>\n\t\t\t\t\t\t{{ value }}\n\t\t\t\t\t</div>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-combobox>\n\t\t</label>\n\t</form>\n\t<div class=\"ng-doc-api-list\">\n\t\t<div class=\"ng-doc-api-scope\" *ngFor=\"let scope of api\">\n\t\t\t<h3 class=\"ng-doc-scope-title\" ng-doc-text>{{ scope.title }}</h3>\n\t\t\t<ul class=\"ng-doc-scope-items\" *ngIf=\"scope.items.length\">\n\t\t\t\t<li class=\"ng-doc-scope-item\" *ngFor=\"let apiReference of scope.items\">\n\t\t\t\t\t<a class=\"ng-doc-scope-item-link\" [routerLink]=\"[apiReference.route]\">\n\t\t\t\t\t\t<ng-doc-kind-icon [kind]=\"apiReference.type\" [ngDocTooltip]=\"apiReference.type\">\n\t\t\t\t\t\t</ng-doc-kind-icon>\n\t\t\t\t\t\t{{ apiReference.name }}\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>\n", styles: [":host h1{margin-top:0}:host .ng-doc-api-list-wrapper .ng-doc-api-filter{display:flex;margin-top:calc(var(--ng-doc-base-gutter) * 3);flex-wrap:wrap;grid-gap:calc(var(--ng-doc-base-gutter) * 2);gap:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-api-list-wrapper .ng-doc-api-filter .ng-doc-api-filter-item{width:200px}:host .ng-doc-api-list-wrapper .ng-doc-api-list{margin-top:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope{display:flex;flex-direction:column}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items{margin-top:calc(var(--ng-doc-base-gutter) * 3);list-style:none;padding:0}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item{margin:var(--ng-doc-base-gutter) 0;float:left;width:33%;overflow:hidden;min-width:330px;text-overflow:ellipsis;white-space:nowrap}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link{display:flex;align-items:center;color:var(--ng-doc-text);text-decoration:none}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link:hover{text-decoration:underline}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link ng-doc-kind-icon{margin-right:var(--ng-doc-base-gutter);text-decoration:none!important}\n"] }]
101
+ ], template: "<h1 ng-doc-text>API List</h1>\n<div class=\"ng-doc-api-list-wrapper\" *ngIf=\"api$ | async as api\">\n\t<form class=\"ng-doc-api-filter\" [formGroup]=\"formGroup\">\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Filter\">\n\t\t\t<ng-doc-input-wrapper [leftContent]=\"leftContent\">\n\t\t\t\t<ng-template #leftContent>\n\t\t\t\t\t<ng-doc-icon icon=\"search\"></ng-doc-icon>\n\t\t\t\t</ng-template>\n\t\t\t\t<input\n\t\t\t\t\tngDocInputString\n\t\t\t\t\t[formControl]=\"formGroup.controls.filter\"\n\t\t\t\t\tplaceholder=\"Type the name\"\n\t\t\t\t\tngDocAutofocus />\n\t\t\t</ng-doc-input-wrapper>\n\t\t</label>\n\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Scope\" *ngIf=\"scopes.length\">\n\t\t\t<ng-doc-combobox\n\t\t\t\t[formControl]=\"formGroup.controls.scope\"\n\t\t\t\t[valueContent]=\"comboboxScopeItem\"\n\t\t\t\t[readonly]=\"true\"\n\t\t\t\tplaceholder=\"Choose the scope\">\n\t\t\t\t<ng-doc-list *ngDocData>\n\t\t\t\t\t<ng-doc-option *ngFor=\"let scope of scopes\" [value]=\"scope\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"comboboxScopeItem; context: { $implicit: scope }\"></ng-container>\n\t\t\t\t\t</ng-doc-option>\n\t\t\t\t</ng-doc-list>\n\t\t\t\t<ng-template let-value #comboboxScopeItem>\n\t\t\t\t\t{{ value }}\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-combobox>\n\t\t</label>\n\n\t\t<label class=\"ng-doc-api-filter-item\" ng-doc-label=\"Type\">\n\t\t\t<ng-doc-combobox\n\t\t\t\t[formControl]=\"formGroup.controls.type\"\n\t\t\t\t[valueContent]=\"comboboxTypeItem\"\n\t\t\t\t[readonly]=\"true\"\n\t\t\t\tplaceholder=\"Choose the entity type\">\n\t\t\t\t<ng-doc-list *ngDocData>\n\t\t\t\t\t<ng-doc-option *ngFor=\"let type of types\" [value]=\"type\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"comboboxTypeItem; context: { $implicit: type }\"></ng-container>\n\t\t\t\t\t</ng-doc-option>\n\t\t\t\t</ng-doc-list>\n\t\t\t\t<ng-template let-value #comboboxTypeItem>\n\t\t\t\t\t<div ng-doc-text>\n\t\t\t\t\t\t<ng-doc-kind-icon\n\t\t\t\t\t\t\t[kind]=\"value\"\n\t\t\t\t\t\t\t[ngDocTooltip]=\"value\"\n\t\t\t\t\t\t\t[positions]=\"['left-center', 'right-center']\"\n\t\t\t\t\t\t\tngDocTextLeft>\n\t\t\t\t\t\t</ng-doc-kind-icon>\n\t\t\t\t\t\t{{ value }}\n\t\t\t\t\t</div>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-combobox>\n\t\t</label>\n\t</form>\n\t<div class=\"ng-doc-api-list\">\n\t\t<div class=\"ng-doc-api-scope\" *ngFor=\"let scope of api\">\n\t\t\t<h3 class=\"ng-doc-scope-title\" ng-doc-text>{{ scope.title }}</h3>\n\t\t\t<ul class=\"ng-doc-scope-items\" *ngIf=\"scope.items.length\">\n\t\t\t\t<li class=\"ng-doc-scope-item\" *ngFor=\"let apiReference of scope.items\">\n\t\t\t\t\t<a class=\"ng-doc-scope-item-link\" [routerLink]=\"[apiReference.route]\">\n\t\t\t\t\t\t<ng-doc-kind-icon [kind]=\"apiReference.type\" [ngDocTooltip]=\"apiReference.type\">\n\t\t\t\t\t\t</ng-doc-kind-icon>\n\t\t\t\t\t\t{{ apiReference.name }}\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>\n", styles: [":host h1{margin-top:0}:host .ng-doc-api-list-wrapper .ng-doc-api-filter{display:flex;margin-top:calc(var(--ng-doc-base-gutter) * 3);flex-wrap:wrap;grid-gap:calc(var(--ng-doc-base-gutter) * 2);gap:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-api-list-wrapper .ng-doc-api-filter .ng-doc-api-filter-item{width:200px}:host .ng-doc-api-list-wrapper .ng-doc-api-list{margin-top:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope{display:flex;flex-direction:column}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items{margin-top:calc(var(--ng-doc-base-gutter) * 3);list-style:none;padding:0}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item{margin:var(--ng-doc-base-gutter) 0;float:left;width:33%;overflow:hidden;min-width:330px;text-overflow:ellipsis;white-space:nowrap}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link{display:flex;align-items:center;color:var(--ng-doc-text);text-decoration:none}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link:hover{text-decoration:underline}:host .ng-doc-api-list-wrapper .ng-doc-api-list .ng-doc-api-scope .ng-doc-scope-items .ng-doc-scope-item .ng-doc-scope-item-link ng-doc-kind-icon{margin-right:var(--ng-doc-base-gutter);text-decoration:none!important}:host ng-doc-input-wrapper ng-doc-icon{--ng-doc-icon-color: var(--ng-doc-text-muted)}\n"] }]
100
102
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
101
103
  type: Inject,
102
104
  args: [NG_DOC_API_LIST_TOKEN]
103
105
  }] }, { type: i1.FormBuilder }, { type: i2.ActivatedRoute }, { type: i2.Router }]; }, propDecorators: { scopes: [], types: [] } });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvY29tcG9uZW50cy9hcGktbGlzdC9hcGktbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2FwaS1saXN0L2FwaS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUMsV0FBVyxFQUEwQixXQUFXLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRyxPQUFPLEVBQUMsY0FBYyxFQUFZLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUV6RCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFFdEQsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIsa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQix5QkFBeUIsRUFDekIsMEJBQTBCLEVBQzFCLG1CQUFtQixFQUNuQixrQkFBa0IsRUFDbEIsb0JBQW9CLEVBQ3BCLGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIscUJBQXFCLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FB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O0FBaUVWO0lBQUMsYUFBYTs7O21EQUdiO0FBRUQ7SUFBQyxhQUFhOzs7a0RBS2I7QUF2RVcscUJBQXFCO0lBRGpDLFlBQVksRUFBRTs0Q0FRaUIsV0FBVztRQUNqQixjQUFjO1FBQ2IsTUFBTTtHQVRwQixxQkFBcUIsQ0F3RWpDO1NBeEVZLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQTlCakMsU0FBUzsrQkFDQyxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1Isa0JBQWtCO3dCQUNsQixJQUFJO3dCQUNKLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLDBCQUEwQjt3QkFDMUIsa0JBQWtCO3dCQUNsQix5QkFBeUI7d0JBQ3pCLHVCQUF1Qjt3QkFDdkIsc0JBQXNCO3dCQUN0QixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsS0FBSzt3QkFDTCxvQkFBb0I7d0JBQ3BCLGdCQUFnQjt3QkFDaEIsc0JBQXNCO3dCQUN0QixzQkFBc0I7d0JBQ3RCLHFCQUFxQjt3QkFDckIsVUFBVTt3QkFDVixTQUFTO3FCQUNUOzswQkFRQyxNQUFNOzJCQUFDLHFCQUFxQjt3SEF5RDFCLE1BQU0sTUFLTixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIE5nRm9yLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFBhcmFtTWFwLCBSb3V0ZXIsIFJvdXRlckxpbmt9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge05nRG9jS2luZEljb25Db21wb25lbnR9IGZyb20gJ0BuZy1kb2MvYXBwL2NvbXBvbmVudHMva2luZC1pY29uJztcbmltcG9ydCB7TkdfRE9DX0FQSV9MSVNUX1RPS0VOfSBmcm9tICdAbmctZG9jL2FwcC90b2tlbnMnO1xuaW1wb3J0IHtOZ0RvY0Zvcm1QYXJ0aWFsVmFsdWV9IGZyb20gJ0BuZy1kb2MvYXBwL3R5cGVzJztcbmltcG9ydCB7YXNBcnJheX0gZnJvbSAnQG5nLWRvYy9jb3JlL2hlbHBlcnMvYXMtYXJyYXknO1xuaW1wb3J0IHtOZ0RvY0FwaUxpc3QsIE5nRG9jQXBpTGlzdEl0ZW19IGZyb20gJ0BuZy1kb2MvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG5cdE5nRG9jQXV0b2ZvY3VzRGlyZWN0aXZlLFxuXHROZ0RvY0NvbWJvYm94Q29tcG9uZW50LFxuXHROZ0RvY0RhdGFEaXJlY3RpdmUsXG5cdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0TmdEb2NJbnB1dFN0cmluZ0RpcmVjdGl2ZSxcblx0TmdEb2NJbnB1dFdyYXBwZXJDb21wb25lbnQsXG5cdE5nRG9jTGFiZWxDb21wb25lbnQsXG5cdE5nRG9jTGlzdENvbXBvbmVudCxcblx0TmdEb2NPcHRpb25Db21wb25lbnQsXG5cdE5nRG9jVGV4dENvbXBvbmVudCxcblx0TmdEb2NUZXh0TGVmdERpcmVjdGl2ZSxcblx0TmdEb2NUb29sdGlwRGlyZWN0aXZlLFxufSBmcm9tICdAbmctZG9jL3VpLWtpdCc7XG5pbXBvcnQge25nRG9jTWFrZVB1cmV9IGZyb20gJ0BuZy1kb2MvdWkta2l0L2RlY29yYXRvcnMnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCBtYXAsIHN0YXJ0V2l0aH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbnRlcmZhY2UgQXBpRmlsdGVyRm9ybSB7XG5cdGZpbHRlcjogRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD47XG5cdHNjb3BlOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcblx0dHlwZTogRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD47XG59XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy1hcGktbGlzdCcsXG5cdHRlbXBsYXRlVXJsOiAnLi9hcGktbGlzdC5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL2FwaS1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbXG5cdFx0TmdEb2NUZXh0Q29tcG9uZW50LFxuXHRcdE5nSWYsXG5cdFx0Rm9ybXNNb2R1bGUsXG5cdFx0UmVhY3RpdmVGb3Jtc01vZHVsZSxcblx0XHROZ0RvY0xhYmVsQ29tcG9uZW50LFxuXHRcdE5nRG9jSW5wdXRXcmFwcGVyQ29tcG9uZW50LFxuXHRcdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY0lucHV0U3RyaW5nRGlyZWN0aXZlLFxuXHRcdE5nRG9jQXV0b2ZvY3VzRGlyZWN0aXZlLFxuXHRcdE5nRG9jQ29tYm9ib3hDb21wb25lbnQsXG5cdFx0TmdEb2NEYXRhRGlyZWN0aXZlLFxuXHRcdE5nRG9jTGlzdENvbXBvbmVudCxcblx0XHROZ0Zvcixcblx0XHROZ0RvY09wdGlvbkNvbXBvbmVudCxcblx0XHROZ1RlbXBsYXRlT3V0bGV0LFxuXHRcdE5nRG9jS2luZEljb25Db21wb25lbnQsXG5cdFx0TmdEb2NUZXh0TGVmdERpcmVjdGl2ZSxcblx0XHROZ0RvY1Rvb2x0aXBEaXJlY3RpdmUsXG5cdFx0Um91dGVyTGluayxcblx0XHRBc3luY1BpcGUsXG5cdF0sXG59KVxuQFVudGlsRGVzdHJveSgpXG5leHBvcnQgY2xhc3MgTmdEb2NBcGlMaXN0Q29tcG9uZW50IHtcblx0Zm9ybUdyb3VwOiBGb3JtR3JvdXA8QXBpRmlsdGVyRm9ybT47XG5cdGFwaSQ6IE9ic2VydmFibGU8TmdEb2NBcGlMaXN0W10+O1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdEBJbmplY3QoTkdfRE9DX0FQSV9MSVNUX1RPS0VOKVxuXHRcdHByaXZhdGUgcmVhZG9ubHkgYXBpTGlzdDogTmdEb2NBcGlMaXN0W10sXG5cdFx0cHJpdmF0ZSByZWFkb25seSBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXG5cdFx0cHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG5cdFx0cHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcblx0KSB7XG5cdFx0dGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcblx0XHRcdGZpbHRlcjogWycnXSxcblx0XHRcdHNjb3BlOiBbJyddLFxuXHRcdFx0dHlwZTogWycnXSxcblx0XHR9KTtcblxuXHRcdHRoaXMucm91dGUucXVlcnlQYXJhbU1hcC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKHBhcmFtTWFwOiBQYXJhbU1hcCkgPT5cblx0XHRcdHRoaXMuZm9ybUdyb3VwLnNldFZhbHVlKHtcblx0XHRcdFx0ZmlsdGVyOiBwYXJhbU1hcC5nZXQoJ2ZpbHRlcicpIHx8IG51bGwsXG5cdFx0XHRcdHNjb3BlOiBwYXJhbU1hcC5nZXQoJ3Njb3BlJykgfHwgbnVsbCxcblx0XHRcdFx0dHlwZTogcGFyYW1NYXAuZ2V0KCd0eXBlJykgfHwgbnVsbCxcblx0XHRcdH0pLFxuXHRcdCk7XG5cblx0XHR0aGlzLmZvcm1Hcm91cC52YWx1ZUNoYW5nZXNcblx0XHRcdC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxuXHRcdFx0LnN1YnNjcmliZSgoZm9ybVZhbHVlOiBOZ0RvY0Zvcm1QYXJ0aWFsVmFsdWU8dHlwZW9mIHRoaXMuZm9ybUdyb3VwPikgPT5cblx0XHRcdFx0dGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcblx0XHRcdFx0XHRyZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLFxuXHRcdFx0XHRcdHF1ZXJ5UGFyYW1zOiBmb3JtVmFsdWUsXG5cdFx0XHRcdFx0cXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJyxcblx0XHRcdFx0fSksXG5cdFx0XHQpO1xuXG5cdFx0dGhpcy5hcGkkID0gdGhpcy5mb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnBpcGUoXG5cdFx0XHRkZWJvdW5jZVRpbWUoMTAwKSxcblx0XHRcdHN0YXJ0V2l0aChudWxsKSxcblx0XHRcdG1hcCgoKSA9PiB0aGlzLmZvcm1Hcm91cC52YWx1ZSksXG5cdFx0XHRtYXAoKGZvcm06IE5nRG9jRm9ybVBhcnRpYWxWYWx1ZTx0eXBlb2YgdGhpcy5mb3JtR3JvdXA+KSA9PlxuXHRcdFx0XHR0aGlzLmFwaUxpc3Rcblx0XHRcdFx0XHQuZmlsdGVyKChhcGk6IE5nRG9jQXBpTGlzdCkgPT4gIWZvcm0/LnNjb3BlIHx8IGFwaS50aXRsZSA9PT0gZm9ybT8uc2NvcGUpXG5cdFx0XHRcdFx0Lm1hcCgoYXBpOiBOZ0RvY0FwaUxpc3QpID0+ICh7XG5cdFx0XHRcdFx0XHQuLi5hcGksXG5cdFx0XHRcdFx0XHRpdGVtczogYXBpLml0ZW1zXG5cdFx0XHRcdFx0XHRcdC5maWx0ZXIoXG5cdFx0XHRcdFx0XHRcdFx0KGl0ZW06IE5nRG9jQXBpTGlzdEl0ZW0pID0+XG5cdFx0XHRcdFx0XHRcdFx0XHRpdGVtLm5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhmb3JtPy5maWx0ZXI/LnRvTG93ZXJDYXNlKCkgPz8gJycpICYmXG5cdFx0XHRcdFx0XHRcdFx0XHQoIWZvcm0/LnR5cGUgfHwgaXRlbS50eXBlID09PSBmb3JtPy50eXBlKSxcblx0XHRcdFx0XHRcdFx0KVxuXHRcdFx0XHRcdFx0XHQuc29ydChcblx0XHRcdFx0XHRcdFx0XHQoYTogTmdEb2NBcGlMaXN0SXRlbSwgYjogTmdEb2NBcGlMaXN0SXRlbSkgPT5cblx0XHRcdFx0XHRcdFx0XHRcdGEudHlwZS5sb2NhbGVDb21wYXJlKGIudHlwZSkgfHwgYS5uYW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKSxcblx0XHRcdFx0XHRcdFx0KSxcblx0XHRcdFx0XHR9KSlcblx0XHRcdFx0XHQuZmlsdGVyKChhcGk6IE5nRG9jQXBpTGlzdCkgPT4gYXBpLml0ZW1zLmxlbmd0aCksXG5cdFx0XHQpLFxuXHRcdFx0dW50aWxEZXN0cm95ZWQodGhpcyksXG5cdFx0KTtcblx0fVxuXG5cdEBuZ0RvY01ha2VQdXJlXG5cdGdldCBzY29wZXMoKTogc3RyaW5nW10ge1xuXHRcdHJldHVybiBhc0FycmF5KG5ldyBTZXQodGhpcy5hcGlMaXN0LmZsYXRNYXAoKGFwaTogTmdEb2NBcGlMaXN0KSA9PiBhcGkudGl0bGUpKSkuc29ydCgpO1xuXHR9XG5cblx0QG5nRG9jTWFrZVB1cmVcblx0Z2V0IHR5cGVzKCk6IHN0cmluZ1tdIHtcblx0XHRyZXR1cm4gYXNBcnJheShcblx0XHRcdG5ldyBTZXQodGhpcy5hcGlMaXN0LmZsYXRNYXAoKGFwaTogTmdEb2NBcGlMaXN0KSA9PiBhcGkuaXRlbXMpLmZsYXRNYXAoKGl0ZW06IE5nRG9jQXBpTGlzdEl0ZW0pID0+IGl0ZW0udHlwZSkpLFxuXHRcdCkuc29ydCgpO1xuXHR9XG59XG4iLCI8aDEgbmctZG9jLXRleHQ+QVBJIExpc3Q8L2gxPlxuPGRpdiBjbGFzcz1cIm5nLWRvYy1hcGktbGlzdC13cmFwcGVyXCIgKm5nSWY9XCJhcGkkIHwgYXN5bmMgYXMgYXBpXCI+XG5cdDxmb3JtIGNsYXNzPVwibmctZG9jLWFwaS1maWx0ZXJcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuXHRcdDxsYWJlbCBjbGFzcz1cIm5nLWRvYy1hcGktZmlsdGVyLWl0ZW1cIiBuZy1kb2MtbGFiZWw9XCJGaWx0ZXJcIj5cblx0XHRcdDxuZy1kb2MtaW5wdXQtd3JhcHBlciBbbGVmdENvbnRlbnRdPVwibGVmdENvbnRlbnRcIj5cblx0XHRcdFx0PG5nLXRlbXBsYXRlICNsZWZ0Q29udGVudD5cblx0XHRcdFx0XHQ8bmctZG9jLWljb24gaWNvbj1cInNlYXJjaFwiPjwvbmctZG9jLWljb24+XG5cdFx0XHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdDxpbnB1dFxuXHRcdFx0XHRcdG5nRG9jSW5wdXRTdHJpbmdcblx0XHRcdFx0XHRbZm9ybUNvbnRyb2xdPVwiZm9ybUdyb3VwLmNvbnRyb2xzLmZpbHRlclwiXG5cdFx0XHRcdFx0cGxhY2Vob2xkZXI9XCJUeXBlIHRoZSBuYW1lXCJcblx0XHRcdFx0XHRuZ0RvY0F1dG9mb2N1cyAvPlxuXHRcdFx0PC9uZy1kb2MtaW5wdXQtd3JhcHBlcj5cblx0XHQ8L2xhYmVsPlxuXG5cdFx0PGxhYmVsIGNsYXNzPVwibmctZG9jLWFwaS1maWx0ZXItaXRlbVwiIG5nLWRvYy1sYWJlbD1cIlNjb3BlXCIgKm5nSWY9XCJzY29wZXMubGVuZ3RoXCI+XG5cdFx0XHQ8bmctZG9jLWNvbWJvYm94XG5cdFx0XHRcdFtmb3JtQ29udHJvbF09XCJmb3JtR3JvdXAuY29udHJvbHMuc2NvcGVcIlxuXHRcdFx0XHRbdmFsdWVDb250ZW50XT1cImNvbWJvYm94U2NvcGVJdGVtXCJcblx0XHRcdFx0W3JlYWRvbmx5XT1cInRydWVcIlxuXHRcdFx0XHRwbGFjZWhvbGRlcj1cIkNob29zZSB0aGUgc2NvcGVcIj5cblx0XHRcdFx0PG5nLWRvYy1saXN0ICpuZ0RvY0RhdGE+XG5cdFx0XHRcdFx0PG5nLWRvYy1vcHRpb24gKm5nRm9yPVwibGV0IHNjb3BlIG9mIHNjb3Blc1wiIFt2YWx1ZV09XCJzY29wZVwiPlxuXHRcdFx0XHRcdFx0PG5nLWNvbnRhaW5lclxuXHRcdFx0XHRcdFx0XHQqbmdUZW1wbGF0ZU91dGxldD1cImNvbWJvYm94U2NvcGVJdGVtOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogc2NvcGUgfVwiPjwvbmctY29udGFpbmVyPlxuXHRcdFx0XHRcdDwvbmctZG9jLW9wdGlvbj5cblx0XHRcdFx0PC9uZy1kb2MtbGlzdD5cblx0XHRcdFx0PG5nLXRlbXBsYXRlIGxldC12YWx1ZSAjY29tYm9ib3hTY29wZUl0ZW0+XG5cdFx0XHRcdFx0e3sgdmFsdWUgfX1cblx0XHRcdFx0PC9uZy10ZW1wbGF0ZT5cblx0XHRcdDwvbmctZG9jLWNvbWJvYm94PlxuXHRcdDwvbGFiZWw+XG5cblx0XHQ8bGFiZWwgY2xhc3M9XCJuZy1kb2MtYXBpLWZpbHRlci1pdGVtXCIgbmctZG9jLWxhYmVsPVwiVHlwZVwiPlxuXHRcdFx0PG5nLWRvYy1jb21ib2JveFxuXHRcdFx0XHRbZm9ybUNvbnRyb2xdPVwiZm9ybUdyb3VwLmNvbnRyb2xzLnR5cGVcIlxuXHRcdFx0XHRbdmFsdWVDb250ZW50XT1cImNvbWJvYm94VHlwZUl0ZW1cIlxuXHRcdFx0XHRbcmVhZG9ubHldPVwidHJ1ZVwiXG5cdFx0XHRcdHBsYWNlaG9sZGVyPVwiQ2hvb3NlIHRoZSBlbnRpdHkgdHlwZVwiPlxuXHRcdFx0XHQ8bmctZG9jLWxpc3QgKm5nRG9jRGF0YT5cblx0XHRcdFx0XHQ8bmctZG9jLW9wdGlvbiAqbmdGb3I9XCJsZXQgdHlwZSBvZiB0eXBlc1wiIFt2YWx1ZV09XCJ0eXBlXCI+XG5cdFx0XHRcdFx0XHQ8bmctY29udGFpbmVyXG5cdFx0XHRcdFx0XHRcdCpuZ1RlbXBsYXRlT3V0bGV0PVwiY29tYm9ib3hUeXBlSXRlbTsgY29udGV4dDogeyAkaW1wbGljaXQ6IHR5cGUgfVwiPjwvbmctY29udGFpbmVyPlxuXHRcdFx0XHRcdDwvbmctZG9jLW9wdGlvbj5cblx0XHRcdFx0PC9uZy1kb2MtbGlzdD5cblx0XHRcdFx0PG5nLXRlbXBsYXRlIGxldC12YWx1ZSAjY29tYm9ib3hUeXBlSXRlbT5cblx0XHRcdFx0XHQ8ZGl2IG5nLWRvYy10ZXh0PlxuXHRcdFx0XHRcdFx0PG5nLWRvYy1raW5kLWljb25cblx0XHRcdFx0XHRcdFx0W2tpbmRdPVwidmFsdWVcIlxuXHRcdFx0XHRcdFx0XHRbbmdEb2NUb29sdGlwXT1cInZhbHVlXCJcblx0XHRcdFx0XHRcdFx0W3Bvc2l0aW9uc109XCJbJ2xlZnQtY2VudGVyJywgJ3JpZ2h0LWNlbnRlciddXCJcblx0XHRcdFx0XHRcdFx0bmdEb2NUZXh0TGVmdD5cblx0XHRcdFx0XHRcdDwvbmctZG9jLWtpbmQtaWNvbj5cblx0XHRcdFx0XHRcdHt7IHZhbHVlIH19XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0XHQ8L25nLWRvYy1jb21ib2JveD5cblx0XHQ8L2xhYmVsPlxuXHQ8L2Zvcm0+XG5cdDxkaXYgY2xhc3M9XCJuZy1kb2MtYXBpLWxpc3RcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLWFwaS1zY29wZVwiICpuZ0Zvcj1cImxldCBzY29wZSBvZiBhcGlcIj5cblx0XHRcdDxoMyBjbGFzcz1cIm5nLWRvYy1zY29wZS10aXRsZVwiIG5nLWRvYy10ZXh0Pnt7IHNjb3BlLnRpdGxlIH19PC9oMz5cblx0XHRcdDx1bCBjbGFzcz1cIm5nLWRvYy1zY29wZS1pdGVtc1wiICpuZ0lmPVwic2NvcGUuaXRlbXMubGVuZ3RoXCI+XG5cdFx0XHRcdDxsaSBjbGFzcz1cIm5nLWRvYy1zY29wZS1pdGVtXCIgKm5nRm9yPVwibGV0IGFwaVJlZmVyZW5jZSBvZiBzY29wZS5pdGVtc1wiPlxuXHRcdFx0XHRcdDxhIGNsYXNzPVwibmctZG9jLXNjb3BlLWl0ZW0tbGlua1wiIFtyb3V0ZXJMaW5rXT1cIlthcGlSZWZlcmVuY2Uucm91dGVdXCI+XG5cdFx0XHRcdFx0XHQ8bmctZG9jLWtpbmQtaWNvbiBba2luZF09XCJhcGlSZWZlcmVuY2UudHlwZVwiIFtuZ0RvY1Rvb2x0aXBdPVwiYXBpUmVmZXJlbmNlLnR5cGVcIj5cblx0XHRcdFx0XHRcdDwvbmctZG9jLWtpbmQtaWNvbj5cblx0XHRcdFx0XHRcdHt7IGFwaVJlZmVyZW5jZS5uYW1lIH19XG5cdFx0XHRcdFx0PC9hPlxuXHRcdFx0XHQ8L2xpPlxuXHRcdFx0PC91bD5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG48L2Rpdj5cbiJdfQ==
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvY29tcG9uZW50cy9hcGktbGlzdC9hcGktbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2FwaS1saXN0L2FwaS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQ04sV0FBVyxFQUdYLFdBQVcsRUFDWCxtQkFBbUIsR0FDbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsY0FBYyxFQUFZLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFeEQsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIsa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQix5QkFBeUIsRUFDekIsMEJBQTBCLEVBQzFCLG1CQUFtQixFQUNuQixrQkFBa0IsRUFDbEIsb0JBQW9CLEVBQ3BCLGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIscUJBQXFCLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FB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OztBQWlFVjtJQUFDLGFBQWE7OzttREFHYjtBQUVEO0lBQUMsYUFBYTs7O2tEQVNiO0FBM0VXLHFCQUFxQjtJQURqQyxZQUFZLEVBQUU7NENBUWlCLFdBQVc7UUFDakIsY0FBYztRQUNiLE1BQU07R0FUcEIscUJBQXFCLENBNEVqQztTQTVFWSxxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkE5QmpDLFNBQVM7K0JBQ0MsaUJBQWlCLG1CQUdWLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNSLGtCQUFrQjt3QkFDbEIsSUFBSTt3QkFDSixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQiwwQkFBMEI7d0JBQzFCLGtCQUFrQjt3QkFDbEIseUJBQXlCO3dCQUN6Qix1QkFBdUI7d0JBQ3ZCLHNCQUFzQjt3QkFDdEIsa0JBQWtCO3dCQUNsQixrQkFBa0I7d0JBQ2xCLEtBQUs7d0JBQ0wsb0JBQW9CO3dCQUNwQixnQkFBZ0I7d0JBQ2hCLHNCQUFzQjt3QkFDdEIsc0JBQXNCO3dCQUN0QixxQkFBcUI7d0JBQ3JCLFVBQVU7d0JBQ1YsU0FBUztxQkFDVDs7MEJBUUMsTUFBTTsyQkFBQyxxQkFBcUI7d0hBeUQxQixNQUFNLE1BS04sS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdGb3IsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuXHRGb3JtQnVpbGRlcixcblx0Rm9ybUNvbnRyb2wsXG5cdEZvcm1Hcm91cCxcblx0Rm9ybXNNb2R1bGUsXG5cdFJlYWN0aXZlRm9ybXNNb2R1bGUsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBQYXJhbU1hcCwgUm91dGVyLCBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5nRG9jS2luZEljb25Db21wb25lbnQgfSBmcm9tICdAbmctZG9jL2FwcC9jb21wb25lbnRzL2tpbmQtaWNvbic7XG5pbXBvcnQgeyBOR19ET0NfQVBJX0xJU1RfVE9LRU4gfSBmcm9tICdAbmctZG9jL2FwcC90b2tlbnMnO1xuaW1wb3J0IHsgTmdEb2NGb3JtUGFydGlhbFZhbHVlIH0gZnJvbSAnQG5nLWRvYy9hcHAvdHlwZXMnO1xuaW1wb3J0IHsgYXNBcnJheSB9IGZyb20gJ0BuZy1kb2MvY29yZS9oZWxwZXJzL2FzLWFycmF5JztcbmltcG9ydCB7IE5nRG9jQXBpTGlzdCwgTmdEb2NBcGlMaXN0SXRlbSB9IGZyb20gJ0BuZy1kb2MvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG5cdE5nRG9jQXV0b2ZvY3VzRGlyZWN0aXZlLFxuXHROZ0RvY0NvbWJvYm94Q29tcG9uZW50LFxuXHROZ0RvY0RhdGFEaXJlY3RpdmUsXG5cdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0TmdEb2NJbnB1dFN0cmluZ0RpcmVjdGl2ZSxcblx0TmdEb2NJbnB1dFdyYXBwZXJDb21wb25lbnQsXG5cdE5nRG9jTGFiZWxDb21wb25lbnQsXG5cdE5nRG9jTGlzdENvbXBvbmVudCxcblx0TmdEb2NPcHRpb25Db21wb25lbnQsXG5cdE5nRG9jVGV4dENvbXBvbmVudCxcblx0TmdEb2NUZXh0TGVmdERpcmVjdGl2ZSxcblx0TmdEb2NUb29sdGlwRGlyZWN0aXZlLFxufSBmcm9tICdAbmctZG9jL3VpLWtpdCc7XG5pbXBvcnQgeyBuZ0RvY01ha2VQdXJlIH0gZnJvbSAnQG5nLWRvYy91aS1raXQvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmludGVyZmFjZSBBcGlGaWx0ZXJGb3JtIHtcblx0ZmlsdGVyOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcblx0c2NvcGU6IEZvcm1Db250cm9sPHN0cmluZyB8IG51bGw+O1xuXHR0eXBlOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcbn1cblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmctZG9jLWFwaS1saXN0Jyxcblx0dGVtcGxhdGVVcmw6ICcuL2FwaS1saXN0LmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vYXBpLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtcblx0XHROZ0RvY1RleHRDb21wb25lbnQsXG5cdFx0TmdJZixcblx0XHRGb3Jtc01vZHVsZSxcblx0XHRSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuXHRcdE5nRG9jTGFiZWxDb21wb25lbnQsXG5cdFx0TmdEb2NJbnB1dFdyYXBwZXJDb21wb25lbnQsXG5cdFx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHRcdE5nRG9jSW5wdXRTdHJpbmdEaXJlY3RpdmUsXG5cdFx0TmdEb2NBdXRvZm9jdXNEaXJlY3RpdmUsXG5cdFx0TmdEb2NDb21ib2JveENvbXBvbmVudCxcblx0XHROZ0RvY0RhdGFEaXJlY3RpdmUsXG5cdFx0TmdEb2NMaXN0Q29tcG9uZW50LFxuXHRcdE5nRm9yLFxuXHRcdE5nRG9jT3B0aW9uQ29tcG9uZW50LFxuXHRcdE5nVGVtcGxhdGVPdXRsZXQsXG5cdFx0TmdEb2NLaW5kSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY1RleHRMZWZ0RGlyZWN0aXZlLFxuXHRcdE5nRG9jVG9vbHRpcERpcmVjdGl2ZSxcblx0XHRSb3V0ZXJMaW5rLFxuXHRcdEFzeW5jUGlwZSxcblx0XSxcbn0pXG5AVW50aWxEZXN0cm95KClcbmV4cG9ydCBjbGFzcyBOZ0RvY0FwaUxpc3RDb21wb25lbnQge1xuXHRmb3JtR3JvdXA6IEZvcm1Hcm91cDxBcGlGaWx0ZXJGb3JtPjtcblx0YXBpJDogT2JzZXJ2YWJsZTxOZ0RvY0FwaUxpc3RbXT47XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0QEluamVjdChOR19ET0NfQVBJX0xJU1RfVE9LRU4pXG5cdFx0cHJpdmF0ZSByZWFkb25seSBhcGlMaXN0OiBOZ0RvY0FwaUxpc3RbXSxcblx0XHRwcml2YXRlIHJlYWRvbmx5IGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcblx0XHRwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcblx0XHRwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuXHQpIHtcblx0XHR0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuXHRcdFx0ZmlsdGVyOiBbJyddLFxuXHRcdFx0c2NvcGU6IFsnJ10sXG5cdFx0XHR0eXBlOiBbJyddLFxuXHRcdH0pO1xuXG5cdFx0dGhpcy5yb3V0ZS5xdWVyeVBhcmFtTWFwLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgocGFyYW1NYXA6IFBhcmFtTWFwKSA9PlxuXHRcdFx0dGhpcy5mb3JtR3JvdXAuc2V0VmFsdWUoe1xuXHRcdFx0XHRmaWx0ZXI6IHBhcmFtTWFwLmdldCgnZmlsdGVyJykgfHwgbnVsbCxcblx0XHRcdFx0c2NvcGU6IHBhcmFtTWFwLmdldCgnc2NvcGUnKSB8fCBudWxsLFxuXHRcdFx0XHR0eXBlOiBwYXJhbU1hcC5nZXQoJ3R5cGUnKSB8fCBudWxsLFxuXHRcdFx0fSksXG5cdFx0KTtcblxuXHRcdHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlc1xuXHRcdFx0LnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG5cdFx0XHQuc3Vic2NyaWJlKChmb3JtVmFsdWU6IE5nRG9jRm9ybVBhcnRpYWxWYWx1ZTx0eXBlb2YgdGhpcy5mb3JtR3JvdXA+KSA9PlxuXHRcdFx0XHR0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXSwge1xuXHRcdFx0XHRcdHJlbGF0aXZlVG86IHRoaXMucm91dGUsXG5cdFx0XHRcdFx0cXVlcnlQYXJhbXM6IGZvcm1WYWx1ZSxcblx0XHRcdFx0XHRxdWVyeVBhcmFtc0hhbmRsaW5nOiAnbWVyZ2UnLFxuXHRcdFx0XHR9KSxcblx0XHRcdCk7XG5cblx0XHR0aGlzLmFwaSQgPSB0aGlzLmZvcm1Hcm91cC52YWx1ZUNoYW5nZXMucGlwZShcblx0XHRcdGRlYm91bmNlVGltZSgxMDApLFxuXHRcdFx0c3RhcnRXaXRoKG51bGwpLFxuXHRcdFx0bWFwKCgpID0+IHRoaXMuZm9ybUdyb3VwLnZhbHVlKSxcblx0XHRcdG1hcCgoZm9ybTogTmdEb2NGb3JtUGFydGlhbFZhbHVlPHR5cGVvZiB0aGlzLmZvcm1Hcm91cD4pID0+XG5cdFx0XHRcdHRoaXMuYXBpTGlzdFxuXHRcdFx0XHRcdC5maWx0ZXIoKGFwaTogTmdEb2NBcGlMaXN0KSA9PiAhZm9ybT8uc2NvcGUgfHwgYXBpLnRpdGxlID09PSBmb3JtPy5zY29wZSlcblx0XHRcdFx0XHQubWFwKChhcGk6IE5nRG9jQXBpTGlzdCkgPT4gKHtcblx0XHRcdFx0XHRcdC4uLmFwaSxcblx0XHRcdFx0XHRcdGl0ZW1zOiBhcGkuaXRlbXNcblx0XHRcdFx0XHRcdFx0LmZpbHRlcihcblx0XHRcdFx0XHRcdFx0XHQoaXRlbTogTmdEb2NBcGlMaXN0SXRlbSkgPT5cblx0XHRcdFx0XHRcdFx0XHRcdGl0ZW0ubmFtZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGZvcm0/LmZpbHRlcj8udG9Mb3dlckNhc2UoKSA/PyAnJykgJiZcblx0XHRcdFx0XHRcdFx0XHRcdCghZm9ybT8udHlwZSB8fCBpdGVtLnR5cGUgPT09IGZvcm0/LnR5cGUpLFxuXHRcdFx0XHRcdFx0XHQpXG5cdFx0XHRcdFx0XHRcdC5zb3J0KFxuXHRcdFx0XHRcdFx0XHRcdChhOiBOZ0RvY0FwaUxpc3RJdGVtLCBiOiBOZ0RvY0FwaUxpc3RJdGVtKSA9PlxuXHRcdFx0XHRcdFx0XHRcdFx0YS50eXBlLmxvY2FsZUNvbXBhcmUoYi50eXBlKSB8fCBhLm5hbWUubG9jYWxlQ29tcGFyZShiLm5hbWUpLFxuXHRcdFx0XHRcdFx0XHQpLFxuXHRcdFx0XHRcdH0pKVxuXHRcdFx0XHRcdC5maWx0ZXIoKGFwaTogTmdEb2NBcGlMaXN0KSA9PiBhcGkuaXRlbXMubGVuZ3RoKSxcblx0XHRcdCksXG5cdFx0XHR1bnRpbERlc3Ryb3llZCh0aGlzKSxcblx0XHQpO1xuXHR9XG5cblx0QG5nRG9jTWFrZVB1cmVcblx0Z2V0IHNjb3BlcygpOiBzdHJpbmdbXSB7XG5cdFx0cmV0dXJuIGFzQXJyYXkobmV3IFNldCh0aGlzLmFwaUxpc3QuZmxhdE1hcCgoYXBpOiBOZ0RvY0FwaUxpc3QpID0+IGFwaS50aXRsZSkpKS5zb3J0KCk7XG5cdH1cblxuXHRAbmdEb2NNYWtlUHVyZVxuXHRnZXQgdHlwZXMoKTogc3RyaW5nW10ge1xuXHRcdHJldHVybiBhc0FycmF5KFxuXHRcdFx0bmV3IFNldChcblx0XHRcdFx0dGhpcy5hcGlMaXN0XG5cdFx0XHRcdFx0LmZsYXRNYXAoKGFwaTogTmdEb2NBcGlMaXN0KSA9PiBhcGkuaXRlbXMpXG5cdFx0XHRcdFx0LmZsYXRNYXAoKGl0ZW06IE5nRG9jQXBpTGlzdEl0ZW0pID0+IGl0ZW0udHlwZSksXG5cdFx0XHQpLFxuXHRcdCkuc29ydCgpO1xuXHR9XG59XG4iLCI8aDEgbmctZG9jLXRleHQ+QVBJIExpc3Q8L2gxPlxuPGRpdiBjbGFzcz1cIm5nLWRvYy1hcGktbGlzdC13cmFwcGVyXCIgKm5nSWY9XCJhcGkkIHwgYXN5bmMgYXMgYXBpXCI+XG5cdDxmb3JtIGNsYXNzPVwibmctZG9jLWFwaS1maWx0ZXJcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuXHRcdDxsYWJlbCBjbGFzcz1cIm5nLWRvYy1hcGktZmlsdGVyLWl0ZW1cIiBuZy1kb2MtbGFiZWw9XCJGaWx0ZXJcIj5cblx0XHRcdDxuZy1kb2MtaW5wdXQtd3JhcHBlciBbbGVmdENvbnRlbnRdPVwibGVmdENvbnRlbnRcIj5cblx0XHRcdFx0PG5nLXRlbXBsYXRlICNsZWZ0Q29udGVudD5cblx0XHRcdFx0XHQ8bmctZG9jLWljb24gaWNvbj1cInNlYXJjaFwiPjwvbmctZG9jLWljb24+XG5cdFx0XHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdDxpbnB1dFxuXHRcdFx0XHRcdG5nRG9jSW5wdXRTdHJpbmdcblx0XHRcdFx0XHRbZm9ybUNvbnRyb2xdPVwiZm9ybUdyb3VwLmNvbnRyb2xzLmZpbHRlclwiXG5cdFx0XHRcdFx0cGxhY2Vob2xkZXI9XCJUeXBlIHRoZSBuYW1lXCJcblx0XHRcdFx0XHRuZ0RvY0F1dG9mb2N1cyAvPlxuXHRcdFx0PC9uZy1kb2MtaW5wdXQtd3JhcHBlcj5cblx0XHQ8L2xhYmVsPlxuXG5cdFx0PGxhYmVsIGNsYXNzPVwibmctZG9jLWFwaS1maWx0ZXItaXRlbVwiIG5nLWRvYy1sYWJlbD1cIlNjb3BlXCIgKm5nSWY9XCJzY29wZXMubGVuZ3RoXCI+XG5cdFx0XHQ8bmctZG9jLWNvbWJvYm94XG5cdFx0XHRcdFtmb3JtQ29udHJvbF09XCJmb3JtR3JvdXAuY29udHJvbHMuc2NvcGVcIlxuXHRcdFx0XHRbdmFsdWVDb250ZW50XT1cImNvbWJvYm94U2NvcGVJdGVtXCJcblx0XHRcdFx0W3JlYWRvbmx5XT1cInRydWVcIlxuXHRcdFx0XHRwbGFjZWhvbGRlcj1cIkNob29zZSB0aGUgc2NvcGVcIj5cblx0XHRcdFx0PG5nLWRvYy1saXN0ICpuZ0RvY0RhdGE+XG5cdFx0XHRcdFx0PG5nLWRvYy1vcHRpb24gKm5nRm9yPVwibGV0IHNjb3BlIG9mIHNjb3Blc1wiIFt2YWx1ZV09XCJzY29wZVwiPlxuXHRcdFx0XHRcdFx0PG5nLWNvbnRhaW5lclxuXHRcdFx0XHRcdFx0XHQqbmdUZW1wbGF0ZU91dGxldD1cImNvbWJvYm94U2NvcGVJdGVtOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogc2NvcGUgfVwiPjwvbmctY29udGFpbmVyPlxuXHRcdFx0XHRcdDwvbmctZG9jLW9wdGlvbj5cblx0XHRcdFx0PC9uZy1kb2MtbGlzdD5cblx0XHRcdFx0PG5nLXRlbXBsYXRlIGxldC12YWx1ZSAjY29tYm9ib3hTY29wZUl0ZW0+XG5cdFx0XHRcdFx0e3sgdmFsdWUgfX1cblx0XHRcdFx0PC9uZy10ZW1wbGF0ZT5cblx0XHRcdDwvbmctZG9jLWNvbWJvYm94PlxuXHRcdDwvbGFiZWw+XG5cblx0XHQ8bGFiZWwgY2xhc3M9XCJuZy1kb2MtYXBpLWZpbHRlci1pdGVtXCIgbmctZG9jLWxhYmVsPVwiVHlwZVwiPlxuXHRcdFx0PG5nLWRvYy1jb21ib2JveFxuXHRcdFx0XHRbZm9ybUNvbnRyb2xdPVwiZm9ybUdyb3VwLmNvbnRyb2xzLnR5cGVcIlxuXHRcdFx0XHRbdmFsdWVDb250ZW50XT1cImNvbWJvYm94VHlwZUl0ZW1cIlxuXHRcdFx0XHRbcmVhZG9ubHldPVwidHJ1ZVwiXG5cdFx0XHRcdHBsYWNlaG9sZGVyPVwiQ2hvb3NlIHRoZSBlbnRpdHkgdHlwZVwiPlxuXHRcdFx0XHQ8bmctZG9jLWxpc3QgKm5nRG9jRGF0YT5cblx0XHRcdFx0XHQ8bmctZG9jLW9wdGlvbiAqbmdGb3I9XCJsZXQgdHlwZSBvZiB0eXBlc1wiIFt2YWx1ZV09XCJ0eXBlXCI+XG5cdFx0XHRcdFx0XHQ8bmctY29udGFpbmVyXG5cdFx0XHRcdFx0XHRcdCpuZ1RlbXBsYXRlT3V0bGV0PVwiY29tYm9ib3hUeXBlSXRlbTsgY29udGV4dDogeyAkaW1wbGljaXQ6IHR5cGUgfVwiPjwvbmctY29udGFpbmVyPlxuXHRcdFx0XHRcdDwvbmctZG9jLW9wdGlvbj5cblx0XHRcdFx0PC9uZy1kb2MtbGlzdD5cblx0XHRcdFx0PG5nLXRlbXBsYXRlIGxldC12YWx1ZSAjY29tYm9ib3hUeXBlSXRlbT5cblx0XHRcdFx0XHQ8ZGl2IG5nLWRvYy10ZXh0PlxuXHRcdFx0XHRcdFx0PG5nLWRvYy1raW5kLWljb25cblx0XHRcdFx0XHRcdFx0W2tpbmRdPVwidmFsdWVcIlxuXHRcdFx0XHRcdFx0XHRbbmdEb2NUb29sdGlwXT1cInZhbHVlXCJcblx0XHRcdFx0XHRcdFx0W3Bvc2l0aW9uc109XCJbJ2xlZnQtY2VudGVyJywgJ3JpZ2h0LWNlbnRlciddXCJcblx0XHRcdFx0XHRcdFx0bmdEb2NUZXh0TGVmdD5cblx0XHRcdFx0XHRcdDwvbmctZG9jLWtpbmQtaWNvbj5cblx0XHRcdFx0XHRcdHt7IHZhbHVlIH19XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0XHQ8L25nLWRvYy1jb21ib2JveD5cblx0XHQ8L2xhYmVsPlxuXHQ8L2Zvcm0+XG5cdDxkaXYgY2xhc3M9XCJuZy1kb2MtYXBpLWxpc3RcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLWFwaS1zY29wZVwiICpuZ0Zvcj1cImxldCBzY29wZSBvZiBhcGlcIj5cblx0XHRcdDxoMyBjbGFzcz1cIm5nLWRvYy1zY29wZS10aXRsZVwiIG5nLWRvYy10ZXh0Pnt7IHNjb3BlLnRpdGxlIH19PC9oMz5cblx0XHRcdDx1bCBjbGFzcz1cIm5nLWRvYy1zY29wZS1pdGVtc1wiICpuZ0lmPVwic2NvcGUuaXRlbXMubGVuZ3RoXCI+XG5cdFx0XHRcdDxsaSBjbGFzcz1cIm5nLWRvYy1zY29wZS1pdGVtXCIgKm5nRm9yPVwibGV0IGFwaVJlZmVyZW5jZSBvZiBzY29wZS5pdGVtc1wiPlxuXHRcdFx0XHRcdDxhIGNsYXNzPVwibmctZG9jLXNjb3BlLWl0ZW0tbGlua1wiIFtyb3V0ZXJMaW5rXT1cIlthcGlSZWZlcmVuY2Uucm91dGVdXCI+XG5cdFx0XHRcdFx0XHQ8bmctZG9jLWtpbmQtaWNvbiBba2luZF09XCJhcGlSZWZlcmVuY2UudHlwZVwiIFtuZ0RvY1Rvb2x0aXBdPVwiYXBpUmVmZXJlbmNlLnR5cGVcIj5cblx0XHRcdFx0XHRcdDwvbmctZG9jLWtpbmQtaWNvbj5cblx0XHRcdFx0XHRcdHt7IGFwaVJlZmVyZW5jZS5uYW1lIH19XG5cdFx0XHRcdFx0PC9hPlxuXHRcdFx0XHQ8L2xpPlxuXHRcdFx0PC91bD5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -25,7 +25,7 @@ class NgDocCodeComponent {
25
25
  this.clipboard.copy(this.codeElement?.textContent ?? '');
26
26
  }
27
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocCodeComponent, deps: [{ token: i0.ElementRef }, { token: i1.Clipboard }], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocCodeComponent, isStandalone: true, selector: "ng-doc-code", inputs: { html: "html", copyButton: "copyButton", name: "name", icon: "icon", lineNumbers: "lineNumbers" }, host: { properties: { "attr.data-ng-doc-has-header": "this.hasHeader" } }, ngImport: i0, template: "<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>\n\t\t<ng-doc-icon [customIcon]=\"icon\" *ngIf=\"icon\"></ng-doc-icon>\n\t\t{{ name }}\n\t</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocPageProcessor\n\t\t*ngIf=\"html\"></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\">\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n", styles: [":host{position:relative;display:block;margin:var(--ng-doc-code-margin)}:host:hover .ng-doc-copy-button{opacity:1}:host[data-ng-doc-has-header=true]{--ng-doc-code-border-radius: 0 0 var(--ng-doc-base-gutter) var(--ng-doc-base-gutter);--ng-doc-code-shadow: none}:host .ng-doc-code-wrapper{--ng-doc-code-margin: 0}:host .ng-doc-code-header{display:flex;align-items:center;padding:var(--ng-doc-base-gutter) calc(var(--ng-doc-base-gutter) * 2);background:var(--ng-doc-code-header-background, var(--ng-doc-base-2));border-radius:var(--ng-doc-base-gutter) var(--ng-doc-base-gutter) 0 0}:host .ng-doc-code-header .ng-doc-code-file-name{--ng-doc-text: var(--ng-doc-code-header-color);--ng-doc-font-weight: 600;--ng-doc-font-size: 13px}:host .ng-doc-code-header .ng-doc-code-file-name ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host .ng-doc-code-body{position:relative;height:100%}:host .ng-doc-copy-button{position:absolute;top:var(--ng-doc-base-gutter);right:var(--ng-doc-base-gutter);transition:var(--ng-doc-transition);opacity:0;--ng-doc-icon-color: var(--ng-doc-text-muted);--ng-doc-button-background: transparent;--ng-doc-button-hover-background: var( --ng-doc-code-copy-button-hover-background, var(--ng-doc-base-2) );--ng-doc-button-active-background: var( --ng-doc-code-copy-button-active-background, var(--ng-doc-base-3) )}:host .ng-doc-code-wrapper{height:100%}:host ::ng-deep pre{display:flex;margin:var(--ng-doc-code-margin);border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));overflow:hidden;height:100%}:host ::ng-deep pre code{display:block;padding:calc(var(--ng-doc-base-gutter) * 2);width:100%;font-family:var(--ng-doc-code-font);font-size:var(--ng-doc-code-font-size);line-height:var(--ng-doc-code-line-height);max-height:var(--ng-doc-code-max-height);overflow:auto;height:100%}:host ::ng-deep pre code.code-lines{display:grid;padding:calc(var(--ng-doc-base-gutter) * 2) 0}:host ::ng-deep pre code .line{position:relative;padding:0 calc(var(--ng-doc-base-gutter) * 2)}:host ::ng-deep pre code .line.highlighted{background:var(--ng-doc-code-highlight-background, rgba(var(--ng-doc-primary-rgb), .15))}:host ::ng-deep pre code .line.highlighted:before{content:\"\";position:absolute;top:0;left:0;width:2px;height:100%;background:var(--ng-doc-code-highlight-border, var(--ng-doc-primary))}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "component", type: NgDocSmoothResizeComponent, selector: "ng-doc-smooth-resize", inputs: ["trigger", "animateOpacity"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "pipe", type: NgDocSanitizeHtmlPipe, name: "ngDocSanitizeHtml" }, { kind: "directive", type: NgDocPageProcessorDirective, selector: "[ngDocPageProcessor]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocCodeComponent, isStandalone: true, selector: "ng-doc-code", inputs: { html: "html", copyButton: "copyButton", name: "name", icon: "icon", lineNumbers: "lineNumbers" }, host: { properties: { "attr.data-ng-doc-has-header": "this.hasHeader" } }, ngImport: i0, template: "<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>\n\t\t<ng-doc-icon [customIcon]=\"icon\" *ngIf=\"icon\"></ng-doc-icon>\n\t\t{{ name }}\n\t</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocPageProcessor\n\t\t*ngIf=\"html\"></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\">\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n", styles: [":host{position:relative;display:block;margin:var(--ng-doc-code-margin)}:host:hover .ng-doc-copy-button{opacity:1}:host[data-ng-doc-has-header=true]{--ng-doc-code-border-radius: 0 0 var(--ng-doc-base-gutter) var(--ng-doc-base-gutter);--ng-doc-code-shadow: none}:host .ng-doc-code-wrapper{--ng-doc-code-margin: 0;--ng-doc-code-border: none}:host .ng-doc-code-header{display:flex;align-items:center;padding:var(--ng-doc-base-gutter) calc(var(--ng-doc-base-gutter) * 2);background:var(--ng-doc-code-header-background, var(--ng-doc-base-2));border-radius:var(--ng-doc-base-gutter) var(--ng-doc-base-gutter) 0 0;border-top:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color));border-left:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color));border-right:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color))}:host .ng-doc-code-header .ng-doc-code-file-name{--ng-doc-text: var(--ng-doc-code-header-color);--ng-doc-font-weight: 600;--ng-doc-font-size: 13px}:host .ng-doc-code-header .ng-doc-code-file-name ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host .ng-doc-code-body{position:relative;height:100%;border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));border:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color))}:host .ng-doc-copy-button{position:absolute;top:var(--ng-doc-base-gutter);right:var(--ng-doc-base-gutter);transition:var(--ng-doc-transition);opacity:0;--ng-doc-icon-color: var(--ng-doc-text-muted);--ng-doc-button-background: transparent;--ng-doc-button-hover-background: var( --ng-doc-code-copy-button-hover-background, var(--ng-doc-base-2) );--ng-doc-button-active-background: var( --ng-doc-code-copy-button-active-background, var(--ng-doc-base-3) )}:host .ng-doc-code-wrapper{height:100%}:host ::ng-deep pre{display:flex;margin:var(--ng-doc-code-margin);border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));border:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color));overflow:hidden;height:100%}:host ::ng-deep pre code{display:block;padding:calc(var(--ng-doc-base-gutter) * 2);width:100%;font-family:var(--ng-doc-code-font);font-size:var(--ng-doc-code-font-size);line-height:var(--ng-doc-code-line-height);max-height:var(--ng-doc-code-max-height);overflow:auto;height:100%}:host ::ng-deep pre code.code-lines{display:grid;padding:calc(var(--ng-doc-base-gutter) * 2) 0}:host ::ng-deep pre code .line{padding:0 calc(var(--ng-doc-base-gutter) * 2)}:host ::ng-deep pre code .line.highlighted{position:relative}:host ::ng-deep pre code .line.highlighted:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--ng-doc-code-highlight-color);opacity:.05;border-radius:inherit;overflow:hidden;pointer-events:none}:host ::ng-deep pre code .line.highlighted:after{content:\"\";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--ng-doc-code-highlight-color);opacity:.8}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "component", type: NgDocSmoothResizeComponent, selector: "ng-doc-smooth-resize", inputs: ["trigger", "animateOpacity"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "pipe", type: NgDocSanitizeHtmlPipe, name: "ngDocSanitizeHtml" }, { kind: "directive", type: NgDocPageProcessorDirective, selector: "[ngDocPageProcessor]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
29
29
  }
30
30
  export { NgDocCodeComponent };
31
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocCodeComponent, decorators: [{
@@ -39,7 +39,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
39
39
  NgDocIconComponent,
40
40
  NgDocSanitizeHtmlPipe,
41
41
  NgDocPageProcessorDirective,
42
- ], template: "<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>\n\t\t<ng-doc-icon [customIcon]=\"icon\" *ngIf=\"icon\"></ng-doc-icon>\n\t\t{{ name }}\n\t</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocPageProcessor\n\t\t*ngIf=\"html\"></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\">\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n", styles: [":host{position:relative;display:block;margin:var(--ng-doc-code-margin)}:host:hover .ng-doc-copy-button{opacity:1}:host[data-ng-doc-has-header=true]{--ng-doc-code-border-radius: 0 0 var(--ng-doc-base-gutter) var(--ng-doc-base-gutter);--ng-doc-code-shadow: none}:host .ng-doc-code-wrapper{--ng-doc-code-margin: 0}:host .ng-doc-code-header{display:flex;align-items:center;padding:var(--ng-doc-base-gutter) calc(var(--ng-doc-base-gutter) * 2);background:var(--ng-doc-code-header-background, var(--ng-doc-base-2));border-radius:var(--ng-doc-base-gutter) var(--ng-doc-base-gutter) 0 0}:host .ng-doc-code-header .ng-doc-code-file-name{--ng-doc-text: var(--ng-doc-code-header-color);--ng-doc-font-weight: 600;--ng-doc-font-size: 13px}:host .ng-doc-code-header .ng-doc-code-file-name ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host .ng-doc-code-body{position:relative;height:100%}:host .ng-doc-copy-button{position:absolute;top:var(--ng-doc-base-gutter);right:var(--ng-doc-base-gutter);transition:var(--ng-doc-transition);opacity:0;--ng-doc-icon-color: var(--ng-doc-text-muted);--ng-doc-button-background: transparent;--ng-doc-button-hover-background: var( --ng-doc-code-copy-button-hover-background, var(--ng-doc-base-2) );--ng-doc-button-active-background: var( --ng-doc-code-copy-button-active-background, var(--ng-doc-base-3) )}:host .ng-doc-code-wrapper{height:100%}:host ::ng-deep pre{display:flex;margin:var(--ng-doc-code-margin);border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));overflow:hidden;height:100%}:host ::ng-deep pre code{display:block;padding:calc(var(--ng-doc-base-gutter) * 2);width:100%;font-family:var(--ng-doc-code-font);font-size:var(--ng-doc-code-font-size);line-height:var(--ng-doc-code-line-height);max-height:var(--ng-doc-code-max-height);overflow:auto;height:100%}:host ::ng-deep pre code.code-lines{display:grid;padding:calc(var(--ng-doc-base-gutter) * 2) 0}:host ::ng-deep pre code .line{position:relative;padding:0 calc(var(--ng-doc-base-gutter) * 2)}:host ::ng-deep pre code .line.highlighted{background:var(--ng-doc-code-highlight-background, rgba(var(--ng-doc-primary-rgb), .15))}:host ::ng-deep pre code .line.highlighted:before{content:\"\";position:absolute;top:0;left:0;width:2px;height:100%;background:var(--ng-doc-code-highlight-border, var(--ng-doc-primary))}\n"] }]
42
+ ], template: "<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>\n\t\t<ng-doc-icon [customIcon]=\"icon\" *ngIf=\"icon\"></ng-doc-icon>\n\t\t{{ name }}\n\t</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocPageProcessor\n\t\t*ngIf=\"html\"></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\">\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n", styles: [":host{position:relative;display:block;margin:var(--ng-doc-code-margin)}:host:hover .ng-doc-copy-button{opacity:1}:host[data-ng-doc-has-header=true]{--ng-doc-code-border-radius: 0 0 var(--ng-doc-base-gutter) var(--ng-doc-base-gutter);--ng-doc-code-shadow: none}:host .ng-doc-code-wrapper{--ng-doc-code-margin: 0;--ng-doc-code-border: none}:host .ng-doc-code-header{display:flex;align-items:center;padding:var(--ng-doc-base-gutter) calc(var(--ng-doc-base-gutter) * 2);background:var(--ng-doc-code-header-background, var(--ng-doc-base-2));border-radius:var(--ng-doc-base-gutter) var(--ng-doc-base-gutter) 0 0;border-top:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color));border-left:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color));border-right:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color))}:host .ng-doc-code-header .ng-doc-code-file-name{--ng-doc-text: var(--ng-doc-code-header-color);--ng-doc-font-weight: 600;--ng-doc-font-size: 13px}:host .ng-doc-code-header .ng-doc-code-file-name ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host .ng-doc-code-body{position:relative;height:100%;border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));border:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color))}:host .ng-doc-copy-button{position:absolute;top:var(--ng-doc-base-gutter);right:var(--ng-doc-base-gutter);transition:var(--ng-doc-transition);opacity:0;--ng-doc-icon-color: var(--ng-doc-text-muted);--ng-doc-button-background: transparent;--ng-doc-button-hover-background: var( --ng-doc-code-copy-button-hover-background, var(--ng-doc-base-2) );--ng-doc-button-active-background: var( --ng-doc-code-copy-button-active-background, var(--ng-doc-base-3) )}:host .ng-doc-code-wrapper{height:100%}:host ::ng-deep pre{display:flex;margin:var(--ng-doc-code-margin);border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));border:var(--ng-doc-code-border, 1px solid var(--ng-doc-border-color));overflow:hidden;height:100%}:host ::ng-deep pre code{display:block;padding:calc(var(--ng-doc-base-gutter) * 2);width:100%;font-family:var(--ng-doc-code-font);font-size:var(--ng-doc-code-font-size);line-height:var(--ng-doc-code-line-height);max-height:var(--ng-doc-code-max-height);overflow:auto;height:100%}:host ::ng-deep pre code.code-lines{display:grid;padding:calc(var(--ng-doc-base-gutter) * 2) 0}:host ::ng-deep pre code .line{padding:0 calc(var(--ng-doc-base-gutter) * 2)}:host ::ng-deep pre code .line.highlighted{position:relative}:host ::ng-deep pre code .line.highlighted:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--ng-doc-code-highlight-color);opacity:.05;border-radius:inherit;overflow:hidden;pointer-events:none}:host ::ng-deep pre code .line.highlighted:after{content:\"\";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--ng-doc-code-highlight-color);opacity:.8}\n"] }]
43
43
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Clipboard }]; }, propDecorators: { html: [{
44
44
  type: Input
45
45
  }], copyButton: [{
@@ -54,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
54
54
  type: HostBinding,
55
55
  args: ['attr.data-ng-doc-has-header']
56
56
  }] } });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2NvZGUvY29kZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2NvZGUvY29kZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3JDLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDdEUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDbEYsT0FBTyxFQUNOLHdCQUF3QixFQUN4QixrQkFBa0IsRUFDbEIsMEJBQTBCLEVBQzFCLGtCQUFrQixFQUNsQixxQkFBcUIsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRXhCLE1BaUJhLGtCQUFrQjtJQWtCOUIsWUFBb0IsVUFBbUMsRUFBbUIsU0FBb0I7UUFBMUUsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFBbUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQWhCOUYsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUdsQixlQUFVLEdBQVksSUFBSSxDQUFDO1FBUzNCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBRTdCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO0lBRXdFLENBQUM7SUFFbEcsSUFDSSxTQUFTO1FBQ1osT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2QsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ3JFLENBQUM7SUFFRCxRQUFRO1FBQ1AsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUQsQ0FBQzs4R0EvQlcsa0JBQWtCO2tHQUFsQixrQkFBa0IsOFBDOUIvQiwwOEJBK0JBLDQxRURYRSxJQUFJLDZGQUNKLGtCQUFrQixpSEFDbEIsd0JBQXdCLDJIQUN4QixxQkFBcUIsMFVBQ3JCLDBCQUEwQix3R0FDMUIsa0JBQWtCLDJGQUNsQixxQkFBcUIsMERBQ3JCLDJCQUEyQjs7U0FHaEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBakI5QixTQUFTOytCQUNDLGFBQWEsbUJBR04sdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1IsSUFBSTt3QkFDSixrQkFBa0I7d0JBQ2xCLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLGtCQUFrQjt3QkFDbEIscUJBQXFCO3dCQUNyQiwyQkFBMkI7cUJBQzNCO3lIQUlELElBQUk7c0JBREgsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBUUYsU0FBUztzQkFEWixXQUFXO3VCQUFDLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xpcGJvYXJkfSBmcm9tICdAYW5ndWxhci9jZGsvY2xpcGJvYXJkJztcbmltcG9ydCB7TmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdEb2NTYW5pdGl6ZUh0bWxQaXBlfSBmcm9tICdAbmctZG9jL2FwcC9waXBlcy9zYW5pdGl6ZS1odG1sJztcbmltcG9ydCB7TmdEb2NQYWdlUHJvY2Vzc29yRGlyZWN0aXZlfSBmcm9tICdAbmctZG9jL2FwcC9wcm9jZXNzb3JzL3BhZ2UtcHJvY2Vzc29yJztcbmltcG9ydCB7XG5cdE5nRG9jQnV0dG9uSWNvbkNvbXBvbmVudCxcblx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHROZ0RvY1Ntb290aFJlc2l6ZUNvbXBvbmVudCxcblx0TmdEb2NUZXh0Q29tcG9uZW50LFxuXHROZ0RvY1Rvb2x0aXBEaXJlY3RpdmUsXG59IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmctZG9jLWNvZGUnLFxuXHR0ZW1wbGF0ZVVybDogJy4vY29kZS5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL2NvZGUuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtcblx0XHROZ0lmLFxuXHRcdE5nRG9jVGV4dENvbXBvbmVudCxcblx0XHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdFx0TmdEb2NUb29sdGlwRGlyZWN0aXZlLFxuXHRcdE5nRG9jU21vb3RoUmVzaXplQ29tcG9uZW50LFxuXHRcdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY1Nhbml0aXplSHRtbFBpcGUsXG5cdFx0TmdEb2NQYWdlUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHRdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ0RvY0NvZGVDb21wb25lbnQge1xuXHRASW5wdXQoKVxuXHRodG1sOiBzdHJpbmcgPSAnJztcblxuXHRASW5wdXQoKVxuXHRjb3B5QnV0dG9uOiBib29sZWFuID0gdHJ1ZTtcblxuXHRASW5wdXQoKVxuXHRuYW1lPzogc3RyaW5nO1xuXG5cdEBJbnB1dCgpXG5cdGljb24/OiBzdHJpbmc7XG5cblx0QElucHV0KClcblx0bGluZU51bWJlcnM6IGJvb2xlYW4gPSBmYWxzZTtcblxuXHR0b29sdGlwVGV4dDogc3RyaW5nID0gJyc7XG5cblx0Y29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiwgcHJpdmF0ZSByZWFkb25seSBjbGlwYm9hcmQ6IENsaXBib2FyZCkge31cblxuXHRASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1uZy1kb2MtaGFzLWhlYWRlcicpXG5cdGdldCBoYXNIZWFkZXIoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuICEhdGhpcy5uYW1lIHx8ICEhdGhpcy5pY29uO1xuXHR9XG5cblx0Z2V0IGNvZGVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG5cdFx0cmV0dXJuIHRoaXMuZWxlbWVudFJlZj8ubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdjb2RlJykgPz8gbnVsbDtcblx0fVxuXG5cdGNvcHlDb2RlKCk6IHZvaWQge1xuXHRcdHRoaXMuY2xpcGJvYXJkLmNvcHkodGhpcy5jb2RlRWxlbWVudD8udGV4dENvbnRlbnQgPz8gJycpO1xuXHR9XG59XG4iLCI8ZGl2IGNsYXNzPVwibmctZG9jLWNvZGUtaGVhZGVyXCIgKm5nSWY9XCJoYXNIZWFkZXJcIj5cblx0PHNwYW4gY2xhc3M9XCJuZy1kb2MtY29kZS1maWxlLW5hbWVcIiBuZy1kb2MtdGV4dD5cblx0XHQ8bmctZG9jLWljb24gW2N1c3RvbUljb25dPVwiaWNvblwiICpuZ0lmPVwiaWNvblwiPjwvbmctZG9jLWljb24+XG5cdFx0e3sgbmFtZSB9fVxuXHQ8L3NwYW4+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJuZy1kb2MtY29kZS1ib2R5XCI+XG5cdDxkaXZcblx0XHRjbGFzcz1cIm5nLWRvYy1jb2RlLXdyYXBwZXJcIlxuXHRcdFtpbm5lckhUTUxdPVwiaHRtbCB8IG5nRG9jU2FuaXRpemVIdG1sXCJcblx0XHRuZ0RvY1BhZ2VQcm9jZXNzb3Jcblx0XHQqbmdJZj1cImh0bWxcIj48L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm5nLWRvYy1jb2RlLXdyYXBwZXJcIiAqbmdJZj1cIiFodG1sXCI+XG5cdFx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXHQ8L2Rpdj5cblxuXHQ8YnV0dG9uXG5cdFx0Y2xhc3M9XCJuZy1kb2MtY29weS1idXR0b25cIlxuXHRcdG5nLWRvYy1idXR0b24taWNvblxuXHRcdCpuZ0lmPVwiY29weUJ1dHRvblwiXG5cdFx0KGNsaWNrKT1cImNvcHlDb2RlKCk7IHRvb2x0aXBUZXh0ID0gJ0NvcGllZCEnXCJcblx0XHRbbmdEb2NUb29sdGlwXT1cInRvb2x0aXBDb250ZW50XCJcblx0XHQobW91c2VlbnRlcik9XCJ0b29sdGlwVGV4dCA9ICdDb3B5IHRvIGNsaXBib2FyZCdcIj5cblx0XHQ8bmctdGVtcGxhdGUgI3Rvb2x0aXBDb250ZW50PlxuXHRcdFx0PG5nLWRvYy1zbW9vdGgtcmVzaXplIFt0cmlnZ2VyXT1cInRvb2x0aXBUZXh0XCI+XG5cdFx0XHRcdHt7IHRvb2x0aXBUZXh0IH19XG5cdFx0XHQ8L25nLWRvYy1zbW9vdGgtcmVzaXplPlxuXHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0PG5nLWRvYy1pY29uIGljb249XCJjb3B5XCI+PC9uZy1kb2MtaWNvbj5cblx0PC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2NvZGUvY29kZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2NvZGUvY29kZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDcEYsT0FBTyxFQUNOLHdCQUF3QixFQUN4QixrQkFBa0IsRUFDbEIsMEJBQTBCLEVBQzFCLGtCQUFrQixFQUNsQixxQkFBcUIsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRXhCLE1BaUJhLGtCQUFrQjtJQWtCOUIsWUFBb0IsVUFBbUMsRUFBbUIsU0FBb0I7UUFBMUUsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFBbUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQWhCOUYsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUdsQixlQUFVLEdBQVksSUFBSSxDQUFDO1FBUzNCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBRTdCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO0lBRXdFLENBQUM7SUFFbEcsSUFDSSxTQUFTO1FBQ1osT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2QsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ3JFLENBQUM7SUFFRCxRQUFRO1FBQ1AsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUQsQ0FBQzs4R0EvQlcsa0JBQWtCO2tHQUFsQixrQkFBa0IsOFBDOUIvQiwwOEJBK0JBLDI3RkRYRSxJQUFJLDZGQUNKLGtCQUFrQixpSEFDbEIsd0JBQXdCLDJIQUN4QixxQkFBcUIsMFVBQ3JCLDBCQUEwQix3R0FDMUIsa0JBQWtCLDJGQUNsQixxQkFBcUIsMERBQ3JCLDJCQUEyQjs7U0FHaEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBakI5QixTQUFTOytCQUNDLGFBQWEsbUJBR04sdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1IsSUFBSTt3QkFDSixrQkFBa0I7d0JBQ2xCLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLGtCQUFrQjt3QkFDbEIscUJBQXFCO3dCQUNyQiwyQkFBMkI7cUJBQzNCO3lIQUlELElBQUk7c0JBREgsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBUUYsU0FBUztzQkFEWixXQUFXO3VCQUFDLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaXBib2FyZCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jbGlwYm9hcmQnO1xuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nRG9jU2FuaXRpemVIdG1sUGlwZSB9IGZyb20gJ0BuZy1kb2MvYXBwL3BpcGVzL3Nhbml0aXplLWh0bWwnO1xuaW1wb3J0IHsgTmdEb2NQYWdlUHJvY2Vzc29yRGlyZWN0aXZlIH0gZnJvbSAnQG5nLWRvYy9hcHAvcHJvY2Vzc29ycy9wYWdlLXByb2Nlc3Nvcic7XG5pbXBvcnQge1xuXHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0TmdEb2NTbW9vdGhSZXNpemVDb21wb25lbnQsXG5cdE5nRG9jVGV4dENvbXBvbmVudCxcblx0TmdEb2NUb29sdGlwRGlyZWN0aXZlLFxufSBmcm9tICdAbmctZG9jL3VpLWtpdCc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy1jb2RlJyxcblx0dGVtcGxhdGVVcmw6ICcuL2NvZGUuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9jb2RlLmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbXG5cdFx0TmdJZixcblx0XHROZ0RvY1RleHRDb21wb25lbnQsXG5cdFx0TmdEb2NCdXR0b25JY29uQ29tcG9uZW50LFxuXHRcdE5nRG9jVG9vbHRpcERpcmVjdGl2ZSxcblx0XHROZ0RvY1Ntb290aFJlc2l6ZUNvbXBvbmVudCxcblx0XHROZ0RvY0ljb25Db21wb25lbnQsXG5cdFx0TmdEb2NTYW5pdGl6ZUh0bWxQaXBlLFxuXHRcdE5nRG9jUGFnZVByb2Nlc3NvckRpcmVjdGl2ZSxcblx0XSxcbn0pXG5leHBvcnQgY2xhc3MgTmdEb2NDb2RlQ29tcG9uZW50IHtcblx0QElucHV0KClcblx0aHRtbDogc3RyaW5nID0gJyc7XG5cblx0QElucHV0KClcblx0Y29weUJ1dHRvbjogYm9vbGVhbiA9IHRydWU7XG5cblx0QElucHV0KClcblx0bmFtZT86IHN0cmluZztcblxuXHRASW5wdXQoKVxuXHRpY29uPzogc3RyaW5nO1xuXG5cdEBJbnB1dCgpXG5cdGxpbmVOdW1iZXJzOiBib29sZWFuID0gZmFsc2U7XG5cblx0dG9vbHRpcFRleHQ6IHN0cmluZyA9ICcnO1xuXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sIHByaXZhdGUgcmVhZG9ubHkgY2xpcGJvYXJkOiBDbGlwYm9hcmQpIHt9XG5cblx0QEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtbmctZG9jLWhhcy1oZWFkZXInKVxuXHRnZXQgaGFzSGVhZGVyKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiAhIXRoaXMubmFtZSB8fCAhIXRoaXMuaWNvbjtcblx0fVxuXG5cdGdldCBjb2RlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuXHRcdHJldHVybiB0aGlzLmVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignY29kZScpID8/IG51bGw7XG5cdH1cblxuXHRjb3B5Q29kZSgpOiB2b2lkIHtcblx0XHR0aGlzLmNsaXBib2FyZC5jb3B5KHRoaXMuY29kZUVsZW1lbnQ/LnRleHRDb250ZW50ID8/ICcnKTtcblx0fVxufVxuIiwiPGRpdiBjbGFzcz1cIm5nLWRvYy1jb2RlLWhlYWRlclwiICpuZ0lmPVwiaGFzSGVhZGVyXCI+XG5cdDxzcGFuIGNsYXNzPVwibmctZG9jLWNvZGUtZmlsZS1uYW1lXCIgbmctZG9jLXRleHQ+XG5cdFx0PG5nLWRvYy1pY29uIFtjdXN0b21JY29uXT1cImljb25cIiAqbmdJZj1cImljb25cIj48L25nLWRvYy1pY29uPlxuXHRcdHt7IG5hbWUgfX1cblx0PC9zcGFuPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwibmctZG9jLWNvZGUtYm9keVwiPlxuXHQ8ZGl2XG5cdFx0Y2xhc3M9XCJuZy1kb2MtY29kZS13cmFwcGVyXCJcblx0XHRbaW5uZXJIVE1MXT1cImh0bWwgfCBuZ0RvY1Nhbml0aXplSHRtbFwiXG5cdFx0bmdEb2NQYWdlUHJvY2Vzc29yXG5cdFx0Km5nSWY9XCJodG1sXCI+PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJuZy1kb2MtY29kZS13cmFwcGVyXCIgKm5nSWY9XCIhaHRtbFwiPlxuXHRcdDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblx0PC9kaXY+XG5cblx0PGJ1dHRvblxuXHRcdGNsYXNzPVwibmctZG9jLWNvcHktYnV0dG9uXCJcblx0XHRuZy1kb2MtYnV0dG9uLWljb25cblx0XHQqbmdJZj1cImNvcHlCdXR0b25cIlxuXHRcdChjbGljayk9XCJjb3B5Q29kZSgpOyB0b29sdGlwVGV4dCA9ICdDb3BpZWQhJ1wiXG5cdFx0W25nRG9jVG9vbHRpcF09XCJ0b29sdGlwQ29udGVudFwiXG5cdFx0KG1vdXNlZW50ZXIpPVwidG9vbHRpcFRleHQgPSAnQ29weSB0byBjbGlwYm9hcmQnXCI+XG5cdFx0PG5nLXRlbXBsYXRlICN0b29sdGlwQ29udGVudD5cblx0XHRcdDxuZy1kb2Mtc21vb3RoLXJlc2l6ZSBbdHJpZ2dlcl09XCJ0b29sdGlwVGV4dFwiPlxuXHRcdFx0XHR7eyB0b29sdGlwVGV4dCB9fVxuXHRcdFx0PC9uZy1kb2Mtc21vb3RoLXJlc2l6ZT5cblx0XHQ8L25nLXRlbXBsYXRlPlxuXHRcdDxuZy1kb2MtaWNvbiBpY29uPVwiY29weVwiPjwvbmctZG9jLWljb24+XG5cdDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -1,10 +1,10 @@
1
1
  import { NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, HostBinding, Input, } from '@angular/core';
3
3
  import { NgDocRootPage } from '@ng-doc/app/classes/root-page';
4
4
  import { NgDocCodeComponent } from '@ng-doc/app/components/code';
5
5
  import { NgDocDemoDisplayerComponent } from '@ng-doc/app/components/demo-displayer';
6
6
  import { asArray } from '@ng-doc/core/helpers/as-array';
7
- import { NgDocExecutePipe, NgDocIconComponent, NgDocTabComponent, NgDocTabGroupComponent } from '@ng-doc/ui-kit';
7
+ import { NgDocExecutePipe, NgDocIconComponent, NgDocTabComponent, NgDocTabGroupComponent, } from '@ng-doc/ui-kit';
8
8
  import { PolymorpheusComponent, PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
9
9
  import * as i0 from "@angular/core";
10
10
  import * as i1 from "@ng-doc/app/classes/root-page";
@@ -34,12 +34,13 @@ class NgDocDemoComponent {
34
34
  }
35
35
  getAssets() {
36
36
  if (this.componentName) {
37
- return ((this.rootPage.demoAssets && this.rootPage.demoAssets[this.componentName]) ?? []).filter((asset) => !this.options.tabs?.length || asArray(this.options.tabs).includes(asset.title));
37
+ return ((this.rootPage.demoAssets && this.rootPage.demoAssets[this.componentName]) ??
38
+ []).filter((asset) => !this.options.tabs?.length || asArray(this.options.tabs).includes(asset.title));
38
39
  }
39
40
  return [];
40
41
  }
41
42
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocDemoComponent, deps: [{ token: i1.NgDocRootPage }], target: i0.ɵɵFactoryTarget.Component }); }
42
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocDemoComponent, isStandalone: true, selector: "ng-doc-demo", inputs: { componentName: "componentName", options: "options" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-container *ngIf=\"options.container ?? true; else demoTemplate\">\n\t<ng-doc-demo-displayer [codeContent]=\"codeContent\" [expanded]=\"!!options.expanded\">\n\t\t<ng-container *ngTemplateOutlet=\"demoTemplate\"></ng-container>\n\t\t<ng-template #codeContent>\n\t\t\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t\t\t</ng-container>\n\n\t\t\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t\t\t<ng-doc-tab-group [openedTab]=\"(getOpenedAssetId | execute: assets) ?? options.defaultTab\">\n\t\t\t\t\t<ng-doc-tab\n\t\t\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t\t\t<ng-template #label>\n\t\t\t\t\t\t\t<ng-doc-icon [customIcon]=\"asset.icon\" *ngIf=\"asset.icon\"></ng-doc-icon>\n\t\t\t\t\t\t\t{{ asset.title }}\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t</ng-doc-tab>\n\t\t\t\t</ng-doc-tab-group>\n\t\t\t</ng-container>\n\t\t</ng-template>\n\t</ng-doc-demo-displayer>\n</ng-container>\n\n<ng-template #demoTemplate>\n\t<ng-container *polymorpheusOutlet=\"demo ?? ''; context: {}\"></ng-container>\n</ng-template>\n", styles: [":host{display:block;margin:var(--ng-doc-demo-margin);--ng-doc-tab-group-background: var(--ng-doc-code-background)}:host .ng-doc-example{padding:calc(var(--ng-doc-base-gutter) * 3)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocDemoDisplayerComponent, selector: "ng-doc-demo-displayer", inputs: ["codeContent", "code", "language", "container", "border", "expanded"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocCodeComponent, selector: "ng-doc-code", inputs: ["html", "copyButton", "name", "icon", "lineNumbers"] }, { kind: "component", type: NgDocTabGroupComponent, selector: "ng-doc-tab-group", inputs: ["openedTab"] }, { kind: "component", type: NgDocTabComponent, selector: "ng-doc-tab", inputs: ["label", "id", "content"] }, { kind: "ngmodule", type: PolymorpheusModule }, { kind: "directive", type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "pipe", type: NgDocExecutePipe, name: "execute" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocDemoComponent, isStandalone: true, selector: "ng-doc-demo", inputs: { componentName: "componentName", options: "options" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-container *ngIf=\"options.container ?? true; else demoTemplate\">\n\t<ng-doc-demo-displayer [codeContent]=\"codeContent\" [expanded]=\"!!options.expanded\">\n\t\t<ng-container *ngTemplateOutlet=\"demoTemplate\"></ng-container>\n\t\t<ng-template #codeContent>\n\t\t\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t\t\t</ng-container>\n\n\t\t\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t\t\t<ng-doc-tab-group [openedTab]=\"(getOpenedAssetId | execute: assets) ?? options.defaultTab\">\n\t\t\t\t\t<ng-doc-tab\n\t\t\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t\t\t<ng-template #label>\n\t\t\t\t\t\t\t<ng-doc-icon [customIcon]=\"asset.icon\" *ngIf=\"asset.icon\"></ng-doc-icon>\n\t\t\t\t\t\t\t{{ asset.title }}\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t</ng-doc-tab>\n\t\t\t\t</ng-doc-tab-group>\n\t\t\t</ng-container>\n\t\t</ng-template>\n\t</ng-doc-demo-displayer>\n</ng-container>\n\n<ng-template #demoTemplate>\n\t<ng-container *polymorpheusOutlet=\"demo ?? ''; context: {}\"></ng-container>\n</ng-template>\n", styles: [":host{display:block;margin:var(--ng-doc-demo-margin);--ng-doc-tab-group-background: var(--ng-doc-code-background);--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border-radius: 0;--ng-doc-tab-group-border: none;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none}:host .ng-doc-example{padding:calc(var(--ng-doc-base-gutter) * 3)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host ng-doc-tab-group{border-top:1px solid var(--ng-doc-border-color)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocDemoDisplayerComponent, selector: "ng-doc-demo-displayer", inputs: ["codeContent", "code", "language", "container", "border", "expanded"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocCodeComponent, selector: "ng-doc-code", inputs: ["html", "copyButton", "name", "icon", "lineNumbers"] }, { kind: "component", type: NgDocTabGroupComponent, selector: "ng-doc-tab-group", inputs: ["openedTab"] }, { kind: "component", type: NgDocTabComponent, selector: "ng-doc-tab", inputs: ["label", "id", "content"] }, { kind: "ngmodule", type: PolymorpheusModule }, { kind: "directive", type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "pipe", type: NgDocExecutePipe, name: "execute" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43
44
  }
44
45
  export { NgDocDemoComponent };
45
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocDemoComponent, decorators: [{
@@ -55,7 +56,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
55
56
  PolymorpheusModule,
56
57
  NgDocIconComponent,
57
58
  NgDocExecutePipe,
58
- ], template: "<ng-container *ngIf=\"options.container ?? true; else demoTemplate\">\n\t<ng-doc-demo-displayer [codeContent]=\"codeContent\" [expanded]=\"!!options.expanded\">\n\t\t<ng-container *ngTemplateOutlet=\"demoTemplate\"></ng-container>\n\t\t<ng-template #codeContent>\n\t\t\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t\t\t</ng-container>\n\n\t\t\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t\t\t<ng-doc-tab-group [openedTab]=\"(getOpenedAssetId | execute: assets) ?? options.defaultTab\">\n\t\t\t\t\t<ng-doc-tab\n\t\t\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t\t\t<ng-template #label>\n\t\t\t\t\t\t\t<ng-doc-icon [customIcon]=\"asset.icon\" *ngIf=\"asset.icon\"></ng-doc-icon>\n\t\t\t\t\t\t\t{{ asset.title }}\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t</ng-doc-tab>\n\t\t\t\t</ng-doc-tab-group>\n\t\t\t</ng-container>\n\t\t</ng-template>\n\t</ng-doc-demo-displayer>\n</ng-container>\n\n<ng-template #demoTemplate>\n\t<ng-container *polymorpheusOutlet=\"demo ?? ''; context: {}\"></ng-container>\n</ng-template>\n", styles: [":host{display:block;margin:var(--ng-doc-demo-margin);--ng-doc-tab-group-background: var(--ng-doc-code-background)}:host .ng-doc-example{padding:calc(var(--ng-doc-base-gutter) * 3)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}\n"] }]
59
+ ], template: "<ng-container *ngIf=\"options.container ?? true; else demoTemplate\">\n\t<ng-doc-demo-displayer [codeContent]=\"codeContent\" [expanded]=\"!!options.expanded\">\n\t\t<ng-container *ngTemplateOutlet=\"demoTemplate\"></ng-container>\n\t\t<ng-template #codeContent>\n\t\t\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t\t\t</ng-container>\n\n\t\t\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t\t\t<ng-doc-tab-group [openedTab]=\"(getOpenedAssetId | execute: assets) ?? options.defaultTab\">\n\t\t\t\t\t<ng-doc-tab\n\t\t\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t\t\t<ng-template #label>\n\t\t\t\t\t\t\t<ng-doc-icon [customIcon]=\"asset.icon\" *ngIf=\"asset.icon\"></ng-doc-icon>\n\t\t\t\t\t\t\t{{ asset.title }}\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t</ng-doc-tab>\n\t\t\t\t</ng-doc-tab-group>\n\t\t\t</ng-container>\n\t\t</ng-template>\n\t</ng-doc-demo-displayer>\n</ng-container>\n\n<ng-template #demoTemplate>\n\t<ng-container *polymorpheusOutlet=\"demo ?? ''; context: {}\"></ng-container>\n</ng-template>\n", styles: [":host{display:block;margin:var(--ng-doc-demo-margin);--ng-doc-tab-group-background: var(--ng-doc-code-background);--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border-radius: 0;--ng-doc-tab-group-border: none;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none}:host .ng-doc-example{padding:calc(var(--ng-doc-base-gutter) * 3)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host ng-doc-tab-group{border-top:1px solid var(--ng-doc-border-color)}\n"] }]
59
60
  }], ctorParameters: function () { return [{ type: i1.NgDocRootPage }]; }, propDecorators: { componentName: [{
60
61
  type: Input
61
62
  }], options: [{
@@ -64,4 +65,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
64
65
  type: HostBinding,
65
66
  args: ['class']
66
67
  }] } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVtby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2RlbW8vZGVtby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2RlbW8vZGVtby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDNUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFFbEYsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBRXRELE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRS9HLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDOzs7O0FBRW5GLE1BbUJhLGtCQUFrQjtJQVU5QixZQUE2QixRQUF1QjtRQUF2QixhQUFRLEdBQVIsUUFBUSxDQUFlO1FBTHBELFlBQU8sR0FBMkIsRUFBRSxDQUFDO1FBR3JDLFdBQU0sR0FBcUIsRUFBRSxDQUFDO0lBRXlCLENBQUM7SUFFeEQsSUFDYyxPQUFPO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxRQUFRO1FBQ1AsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQXdCO1FBQ3hDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQXFCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLENBQUM7SUFDcEUsQ0FBQztJQUVPLE9BQU87UUFDZCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdkIsTUFBTSxTQUFTLEdBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFFM0UsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUkscUJBQXFCLENBQUMsU0FBeUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7U0FDcEY7UUFFRCxPQUFPLFNBQVMsQ0FBQztJQUNsQixDQUFDO0lBRU8sU0FBUztRQUNoQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdkIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUMvRixDQUFDLEtBQXFCLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQ3pHLENBQUM7U0FDRjtRQUVELE9BQU8sRUFBRSxDQUFDO0lBQ1gsQ0FBQzs4R0E3Q1csa0JBQWtCO2tHQUFsQixrQkFBa0IsMExDL0IvQixzMENBZ0NBLG1URGJFLElBQUksNkZBQ0osMkJBQTJCLGtKQUMzQixnQkFBZ0Isb0pBQ2hCLEtBQUssbUhBQ0wsa0JBQWtCLHVIQUNsQixzQkFBc0Isb0ZBQ3RCLGlCQUFpQiwwRkFDakIsa0JBQWtCLDJMQUNsQixrQkFBa0IsMkZBQ2xCLGdCQUFnQjs7U0FHTCxrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFuQjlCLFNBQVM7K0JBQ0MsYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUixJQUFJO3dCQUNKLDJCQUEyQjt3QkFDM0IsZ0JBQWdCO3dCQUNoQixLQUFLO3dCQUNMLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7cUJBQ2hCO29HQUlELGFBQWE7c0JBRFosS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBU1EsT0FBTztzQkFEcEIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0ZvciwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIFR5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0RvY1Jvb3RQYWdlfSBmcm9tICdAbmctZG9jL2FwcC9jbGFzc2VzL3Jvb3QtcGFnZSc7XG5pbXBvcnQge05nRG9jQ29kZUNvbXBvbmVudH0gZnJvbSAnQG5nLWRvYy9hcHAvY29tcG9uZW50cy9jb2RlJztcbmltcG9ydCB7TmdEb2NEZW1vRGlzcGxheWVyQ29tcG9uZW50fSBmcm9tICdAbmctZG9jL2FwcC9jb21wb25lbnRzL2RlbW8tZGlzcGxheWVyJztcbmltcG9ydCB7TmdEb2NEZW1vQXNzZXR9IGZyb20gJ0BuZy1kb2MvYXBwL2ludGVyZmFjZXMnO1xuaW1wb3J0IHthc0FycmF5fSBmcm9tICdAbmctZG9jL2NvcmUvaGVscGVycy9hcy1hcnJheSc7XG5pbXBvcnQge05nRG9jRGVtb0FjdGlvbk9wdGlvbnN9IGZyb20gJ0BuZy1kb2MvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7TmdEb2NFeGVjdXRlUGlwZSwgTmdEb2NJY29uQ29tcG9uZW50LCBOZ0RvY1RhYkNvbXBvbmVudCwgTmdEb2NUYWJHcm91cENvbXBvbmVudH0gZnJvbSAnQG5nLWRvYy91aS1raXQnO1xuaW1wb3J0IHtOZ0RvY0NvbnRlbnR9IGZyb20gJ0BuZy1kb2MvdWkta2l0L3R5cGVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29tcG9uZW50LCBQb2x5bW9ycGhldXNNb2R1bGV9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy1kZW1vJyxcblx0dGVtcGxhdGVVcmw6ICcuL2RlbW8uY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9kZW1vLmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbXG5cdFx0TmdJZixcblx0XHROZ0RvY0RlbW9EaXNwbGF5ZXJDb21wb25lbnQsXG5cdFx0TmdUZW1wbGF0ZU91dGxldCxcblx0XHROZ0Zvcixcblx0XHROZ0RvY0NvZGVDb21wb25lbnQsXG5cdFx0TmdEb2NUYWJHcm91cENvbXBvbmVudCxcblx0XHROZ0RvY1RhYkNvbXBvbmVudCxcblx0XHRQb2x5bW9ycGhldXNNb2R1bGUsXG5cdFx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHRcdE5nRG9jRXhlY3V0ZVBpcGUsXG5cdF0sXG59KVxuZXhwb3J0IGNsYXNzIE5nRG9jRGVtb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cdEBJbnB1dCgpXG5cdGNvbXBvbmVudE5hbWU/OiBzdHJpbmc7XG5cblx0QElucHV0KClcblx0b3B0aW9uczogTmdEb2NEZW1vQWN0aW9uT3B0aW9ucyA9IHt9O1xuXG5cdGRlbW8/OiBOZ0RvY0NvbnRlbnQ8b2JqZWN0Pjtcblx0YXNzZXRzOiBOZ0RvY0RlbW9Bc3NldFtdID0gW107XG5cblx0Y29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSByb290UGFnZTogTmdEb2NSb290UGFnZSkge31cblxuXHRASG9zdEJpbmRpbmcoJ2NsYXNzJylcblx0cHJvdGVjdGVkIGdldCBjbGFzc2VzKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcblx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmNsYXNzID8/ICcnO1xuXHR9XG5cblx0bmdPbkluaXQoKTogdm9pZCB7XG5cdFx0dGhpcy5kZW1vID0gdGhpcy5nZXREZW1vKCk7XG5cdFx0dGhpcy5hc3NldHMgPSB0aGlzLmdldEFzc2V0cygpO1xuXHR9XG5cblx0Z2V0T3BlbmVkQXNzZXRJZChhc3NldHM6IE5nRG9jRGVtb0Fzc2V0W10pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHRcdHJldHVybiBhc3NldHMuZmluZCgoYXNzZXQ6IE5nRG9jRGVtb0Fzc2V0KSA9PiBhc3NldC5vcGVuZWQpPy50aXRsZTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0RGVtbygpOiBOZ0RvY0NvbnRlbnQ8b2JqZWN0PiB8IHVuZGVmaW5lZCB7XG5cdFx0aWYgKHRoaXMuY29tcG9uZW50TmFtZSkge1xuXHRcdFx0Y29uc3QgY29tcG9uZW50OiBUeXBlPHVua25vd24+IHwgdW5kZWZpbmVkID1cblx0XHRcdFx0dGhpcy5yb290UGFnZS5wYWdlPy5kZW1vcyAmJiB0aGlzLnJvb3RQYWdlLnBhZ2UuZGVtb3NbdGhpcy5jb21wb25lbnROYW1lXTtcblxuXHRcdFx0cmV0dXJuIGNvbXBvbmVudCA/IG5ldyBQb2x5bW9ycGhldXNDb21wb25lbnQoY29tcG9uZW50IGFzIFR5cGU8b2JqZWN0PikgOiB1bmRlZmluZWQ7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHVuZGVmaW5lZDtcblx0fVxuXG5cdHByaXZhdGUgZ2V0QXNzZXRzKCk6IE5nRG9jRGVtb0Fzc2V0W10ge1xuXHRcdGlmICh0aGlzLmNvbXBvbmVudE5hbWUpIHtcblx0XHRcdHJldHVybiAoKHRoaXMucm9vdFBhZ2UuZGVtb0Fzc2V0cyAmJiB0aGlzLnJvb3RQYWdlLmRlbW9Bc3NldHNbdGhpcy5jb21wb25lbnROYW1lXSkgPz8gW10pLmZpbHRlcihcblx0XHRcdFx0KGFzc2V0OiBOZ0RvY0RlbW9Bc3NldCkgPT4gIXRoaXMub3B0aW9ucy50YWJzPy5sZW5ndGggfHwgYXNBcnJheSh0aGlzLm9wdGlvbnMudGFicykuaW5jbHVkZXMoYXNzZXQudGl0bGUpLFxuXHRcdFx0KTtcblx0XHR9XG5cblx0XHRyZXR1cm4gW107XG5cdH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb25zLmNvbnRhaW5lciA/PyB0cnVlOyBlbHNlIGRlbW9UZW1wbGF0ZVwiPlxuXHQ8bmctZG9jLWRlbW8tZGlzcGxheWVyIFtjb2RlQ29udGVudF09XCJjb2RlQ29udGVudFwiIFtleHBhbmRlZF09XCIhIW9wdGlvbnMuZXhwYW5kZWRcIj5cblx0XHQ8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGVtb1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG5cdFx0PG5nLXRlbXBsYXRlICNjb2RlQ29udGVudD5cblx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJhc3NldHMubGVuZ3RoID09PSAxXCI+XG5cdFx0XHRcdDxuZy1kb2MtY29kZSAqbmdGb3I9XCJsZXQgYXNzZXQgb2YgYXNzZXRzXCIgW2h0bWxdPVwiYXNzZXQuY29kZVwiPjwvbmctZG9jLWNvZGU+XG5cdFx0XHQ8L25nLWNvbnRhaW5lcj5cblxuXHRcdFx0PG5nLWNvbnRhaW5lciAqbmdJZj1cImFzc2V0cy5sZW5ndGggPiAxXCI+XG5cdFx0XHRcdDxuZy1kb2MtdGFiLWdyb3VwIFtvcGVuZWRUYWJdPVwiKGdldE9wZW5lZEFzc2V0SWQgfCBleGVjdXRlOiBhc3NldHMpID8/IG9wdGlvbnMuZGVmYXVsdFRhYlwiPlxuXHRcdFx0XHRcdDxuZy1kb2MtdGFiXG5cdFx0XHRcdFx0XHQqbmdGb3I9XCJsZXQgYXNzZXQgb2YgYXNzZXRzXCJcblx0XHRcdFx0XHRcdFtpZF09XCJhc3NldC50aXRsZVwiXG5cdFx0XHRcdFx0XHRbbGFiZWxdPVwibGFiZWxcIlxuXHRcdFx0XHRcdFx0W2NvbnRlbnRdPVwiYXNzZXRDb250ZW50XCI+XG5cdFx0XHRcdFx0XHQ8bmctdGVtcGxhdGUgI2xhYmVsPlxuXHRcdFx0XHRcdFx0XHQ8bmctZG9jLWljb24gW2N1c3RvbUljb25dPVwiYXNzZXQuaWNvblwiICpuZ0lmPVwiYXNzZXQuaWNvblwiPjwvbmctZG9jLWljb24+XG5cdFx0XHRcdFx0XHRcdHt7IGFzc2V0LnRpdGxlIH19XG5cdFx0XHRcdFx0XHQ8L25nLXRlbXBsYXRlPlxuXHRcdFx0XHRcdFx0PG5nLXRlbXBsYXRlICNhc3NldENvbnRlbnQ+XG5cdFx0XHRcdFx0XHRcdDxuZy1kb2MtY29kZSBbaHRtbF09XCJhc3NldC5jb2RlXCI+PC9uZy1kb2MtY29kZT5cblx0XHRcdFx0XHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdFx0PC9uZy1kb2MtdGFiPlxuXHRcdFx0XHQ8L25nLWRvYy10YWItZ3JvdXA+XG5cdFx0XHQ8L25nLWNvbnRhaW5lcj5cblx0XHQ8L25nLXRlbXBsYXRlPlxuXHQ8L25nLWRvYy1kZW1vLWRpc3BsYXllcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2RlbW9UZW1wbGF0ZT5cblx0PG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiZGVtbyA/PyAnJzsgY29udGV4dDoge31cIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVtby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2RlbW8vZGVtby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2RlbW8vZGVtby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hFLE9BQU8sRUFDTix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFdBQVcsRUFDWCxLQUFLLEdBR0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV4RCxPQUFPLEVBQ04sZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsc0JBQXNCLEdBQ3RCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFFckYsTUFtQmEsa0JBQWtCO0lBVTlCLFlBQTZCLFFBQXVCO1FBQXZCLGFBQVEsR0FBUixRQUFRLENBQWU7UUFMcEQsWUFBTyxHQUEyQixFQUFFLENBQUM7UUFHckMsV0FBTSxHQUFxQixFQUFFLENBQUM7SUFFeUIsQ0FBQztJQUV4RCxJQUNjLE9BQU87UUFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELFFBQVE7UUFDUCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBd0I7UUFDeEMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBcUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssQ0FBQztJQUNwRSxDQUFDO0lBRU8sT0FBTztRQUNkLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixNQUFNLFNBQVMsR0FDZCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUUzRSxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyxTQUF5QixDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztTQUNwRjtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ2xCLENBQUM7SUFFTyxTQUFTO1FBQ2hCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixPQUFPLENBQ04sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQzFFLEVBQUUsQ0FDRixDQUFDLE1BQU0sQ0FDUCxDQUFDLEtBQXFCLEVBQUUsRUFBRSxDQUN6QixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLE1BQU0sSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUMvRSxDQUFDO1NBQ0Y7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNYLENBQUM7OEdBakRXLGtCQUFrQjtrR0FBbEIsa0JBQWtCLDBMQzNDL0IsczBDQWdDQSxpakJEREUsSUFBSSw2RkFDSiwyQkFBMkIsa0pBQzNCLGdCQUFnQixvSkFDaEIsS0FBSyxtSEFDTCxrQkFBa0IsdUhBQ2xCLHNCQUFzQixvRkFDdEIsaUJBQWlCLDBGQUNqQixrQkFBa0IsMkxBQ2xCLGtCQUFrQiwyRkFDbEIsZ0JBQWdCOztTQUdMLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQW5COUIsU0FBUzsrQkFDQyxhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNSLElBQUk7d0JBQ0osMkJBQTJCO3dCQUMzQixnQkFBZ0I7d0JBQ2hCLEtBQUs7d0JBQ0wsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQixrQkFBa0I7d0JBQ2xCLGdCQUFnQjtxQkFDaEI7b0dBSUQsYUFBYTtzQkFEWixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFTUSxPQUFPO3NCQURwQixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0ZvciwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q29tcG9uZW50LFxuXHRIb3N0QmluZGluZyxcblx0SW5wdXQsXG5cdE9uSW5pdCxcblx0VHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0RvY1Jvb3RQYWdlIH0gZnJvbSAnQG5nLWRvYy9hcHAvY2xhc3Nlcy9yb290LXBhZ2UnO1xuaW1wb3J0IHsgTmdEb2NDb2RlQ29tcG9uZW50IH0gZnJvbSAnQG5nLWRvYy9hcHAvY29tcG9uZW50cy9jb2RlJztcbmltcG9ydCB7IE5nRG9jRGVtb0Rpc3BsYXllckNvbXBvbmVudCB9IGZyb20gJ0BuZy1kb2MvYXBwL2NvbXBvbmVudHMvZGVtby1kaXNwbGF5ZXInO1xuaW1wb3J0IHsgTmdEb2NEZW1vQXNzZXQgfSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGFzQXJyYXkgfSBmcm9tICdAbmctZG9jL2NvcmUvaGVscGVycy9hcy1hcnJheSc7XG5pbXBvcnQgeyBOZ0RvY0RlbW9BY3Rpb25PcHRpb25zIH0gZnJvbSAnQG5nLWRvYy9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcblx0TmdEb2NFeGVjdXRlUGlwZSxcblx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHROZ0RvY1RhYkNvbXBvbmVudCxcblx0TmdEb2NUYWJHcm91cENvbXBvbmVudCxcbn0gZnJvbSAnQG5nLWRvYy91aS1raXQnO1xuaW1wb3J0IHsgTmdEb2NDb250ZW50IH0gZnJvbSAnQG5nLWRvYy91aS1raXQvdHlwZXMnO1xuaW1wb3J0IHsgUG9seW1vcnBoZXVzQ29tcG9uZW50LCBQb2x5bW9ycGhldXNNb2R1bGUgfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZy1kb2MtZGVtbycsXG5cdHRlbXBsYXRlVXJsOiAnLi9kZW1vLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vZGVtby5jb21wb25lbnQuc2NzcyddLFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW1xuXHRcdE5nSWYsXG5cdFx0TmdEb2NEZW1vRGlzcGxheWVyQ29tcG9uZW50LFxuXHRcdE5nVGVtcGxhdGVPdXRsZXQsXG5cdFx0TmdGb3IsXG5cdFx0TmdEb2NDb2RlQ29tcG9uZW50LFxuXHRcdE5nRG9jVGFiR3JvdXBDb21wb25lbnQsXG5cdFx0TmdEb2NUYWJDb21wb25lbnQsXG5cdFx0UG9seW1vcnBoZXVzTW9kdWxlLFxuXHRcdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY0V4ZWN1dGVQaXBlLFxuXHRdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ0RvY0RlbW9Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXHRASW5wdXQoKVxuXHRjb21wb25lbnROYW1lPzogc3RyaW5nO1xuXG5cdEBJbnB1dCgpXG5cdG9wdGlvbnM6IE5nRG9jRGVtb0FjdGlvbk9wdGlvbnMgPSB7fTtcblxuXHRkZW1vPzogTmdEb2NDb250ZW50PG9iamVjdD47XG5cdGFzc2V0czogTmdEb2NEZW1vQXNzZXRbXSA9IFtdO1xuXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcm9vdFBhZ2U6IE5nRG9jUm9vdFBhZ2UpIHt9XG5cblx0QEhvc3RCaW5kaW5nKCdjbGFzcycpXG5cdHByb3RlY3RlZCBnZXQgY2xhc3NlcygpOiBzdHJpbmcgfCBzdHJpbmdbXSB7XG5cdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5jbGFzcyA/PyAnJztcblx0fVxuXG5cdG5nT25Jbml0KCk6IHZvaWQge1xuXHRcdHRoaXMuZGVtbyA9IHRoaXMuZ2V0RGVtbygpO1xuXHRcdHRoaXMuYXNzZXRzID0gdGhpcy5nZXRBc3NldHMoKTtcblx0fVxuXG5cdGdldE9wZW5lZEFzc2V0SWQoYXNzZXRzOiBOZ0RvY0RlbW9Bc3NldFtdKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblx0XHRyZXR1cm4gYXNzZXRzLmZpbmQoKGFzc2V0OiBOZ0RvY0RlbW9Bc3NldCkgPT4gYXNzZXQub3BlbmVkKT8udGl0bGU7XG5cdH1cblxuXHRwcml2YXRlIGdldERlbW8oKTogTmdEb2NDb250ZW50PG9iamVjdD4gfCB1bmRlZmluZWQge1xuXHRcdGlmICh0aGlzLmNvbXBvbmVudE5hbWUpIHtcblx0XHRcdGNvbnN0IGNvbXBvbmVudDogVHlwZTx1bmtub3duPiB8IHVuZGVmaW5lZCA9XG5cdFx0XHRcdHRoaXMucm9vdFBhZ2UucGFnZT8uZGVtb3MgJiYgdGhpcy5yb290UGFnZS5wYWdlLmRlbW9zW3RoaXMuY29tcG9uZW50TmFtZV07XG5cblx0XHRcdHJldHVybiBjb21wb25lbnQgPyBuZXcgUG9seW1vcnBoZXVzQ29tcG9uZW50KGNvbXBvbmVudCBhcyBUeXBlPG9iamVjdD4pIDogdW5kZWZpbmVkO1xuXHRcdH1cblxuXHRcdHJldHVybiB1bmRlZmluZWQ7XG5cdH1cblxuXHRwcml2YXRlIGdldEFzc2V0cygpOiBOZ0RvY0RlbW9Bc3NldFtdIHtcblx0XHRpZiAodGhpcy5jb21wb25lbnROYW1lKSB7XG5cdFx0XHRyZXR1cm4gKFxuXHRcdFx0XHQodGhpcy5yb290UGFnZS5kZW1vQXNzZXRzICYmIHRoaXMucm9vdFBhZ2UuZGVtb0Fzc2V0c1t0aGlzLmNvbXBvbmVudE5hbWVdKSA/P1xuXHRcdFx0XHRbXVxuXHRcdFx0KS5maWx0ZXIoXG5cdFx0XHRcdChhc3NldDogTmdEb2NEZW1vQXNzZXQpID0+XG5cdFx0XHRcdFx0IXRoaXMub3B0aW9ucy50YWJzPy5sZW5ndGggfHwgYXNBcnJheSh0aGlzLm9wdGlvbnMudGFicykuaW5jbHVkZXMoYXNzZXQudGl0bGUpLFxuXHRcdFx0KTtcblx0XHR9XG5cblx0XHRyZXR1cm4gW107XG5cdH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb25zLmNvbnRhaW5lciA/PyB0cnVlOyBlbHNlIGRlbW9UZW1wbGF0ZVwiPlxuXHQ8bmctZG9jLWRlbW8tZGlzcGxheWVyIFtjb2RlQ29udGVudF09XCJjb2RlQ29udGVudFwiIFtleHBhbmRlZF09XCIhIW9wdGlvbnMuZXhwYW5kZWRcIj5cblx0XHQ8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGVtb1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG5cdFx0PG5nLXRlbXBsYXRlICNjb2RlQ29udGVudD5cblx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJhc3NldHMubGVuZ3RoID09PSAxXCI+XG5cdFx0XHRcdDxuZy1kb2MtY29kZSAqbmdGb3I9XCJsZXQgYXNzZXQgb2YgYXNzZXRzXCIgW2h0bWxdPVwiYXNzZXQuY29kZVwiPjwvbmctZG9jLWNvZGU+XG5cdFx0XHQ8L25nLWNvbnRhaW5lcj5cblxuXHRcdFx0PG5nLWNvbnRhaW5lciAqbmdJZj1cImFzc2V0cy5sZW5ndGggPiAxXCI+XG5cdFx0XHRcdDxuZy1kb2MtdGFiLWdyb3VwIFtvcGVuZWRUYWJdPVwiKGdldE9wZW5lZEFzc2V0SWQgfCBleGVjdXRlOiBhc3NldHMpID8/IG9wdGlvbnMuZGVmYXVsdFRhYlwiPlxuXHRcdFx0XHRcdDxuZy1kb2MtdGFiXG5cdFx0XHRcdFx0XHQqbmdGb3I9XCJsZXQgYXNzZXQgb2YgYXNzZXRzXCJcblx0XHRcdFx0XHRcdFtpZF09XCJhc3NldC50aXRsZVwiXG5cdFx0XHRcdFx0XHRbbGFiZWxdPVwibGFiZWxcIlxuXHRcdFx0XHRcdFx0W2NvbnRlbnRdPVwiYXNzZXRDb250ZW50XCI+XG5cdFx0XHRcdFx0XHQ8bmctdGVtcGxhdGUgI2xhYmVsPlxuXHRcdFx0XHRcdFx0XHQ8bmctZG9jLWljb24gW2N1c3RvbUljb25dPVwiYXNzZXQuaWNvblwiICpuZ0lmPVwiYXNzZXQuaWNvblwiPjwvbmctZG9jLWljb24+XG5cdFx0XHRcdFx0XHRcdHt7IGFzc2V0LnRpdGxlIH19XG5cdFx0XHRcdFx0XHQ8L25nLXRlbXBsYXRlPlxuXHRcdFx0XHRcdFx0PG5nLXRlbXBsYXRlICNhc3NldENvbnRlbnQ+XG5cdFx0XHRcdFx0XHRcdDxuZy1kb2MtY29kZSBbaHRtbF09XCJhc3NldC5jb2RlXCI+PC9uZy1kb2MtY29kZT5cblx0XHRcdFx0XHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdFx0PC9uZy1kb2MtdGFiPlxuXHRcdFx0XHQ8L25nLWRvYy10YWItZ3JvdXA+XG5cdFx0XHQ8L25nLWNvbnRhaW5lcj5cblx0XHQ8L25nLXRlbXBsYXRlPlxuXHQ8L25nLWRvYy1kZW1vLWRpc3BsYXllcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2RlbW9UZW1wbGF0ZT5cblx0PG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiZGVtbyA/PyAnJzsgY29udGV4dDoge31cIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=