@ng-doc/app 17.6.7 → 17.6.9

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 (86) hide show
  1. package/components/toc/toc-element/toc-element.component.d.ts +3 -2
  2. package/esm2022/components/api-list/api-list.component.mjs +3 -3
  3. package/esm2022/components/breadcrumb/breadcrumb.component.mjs +3 -3
  4. package/esm2022/components/code/code.component.mjs +3 -3
  5. package/esm2022/components/demo/demo.component.mjs +3 -3
  6. package/esm2022/components/demo-displayer/demo-displayer.component.mjs +3 -3
  7. package/esm2022/components/demo-pane/demo-pane.component.mjs +3 -3
  8. package/esm2022/components/fullscreen-button/fullscreen-button.component.mjs +3 -3
  9. package/esm2022/components/kind-icon/kind-icon.component.mjs +3 -3
  10. package/esm2022/components/link/link.component.mjs +3 -3
  11. package/esm2022/components/navbar/navbar.component.mjs +3 -3
  12. package/esm2022/components/page/page.component.mjs +3 -3
  13. package/esm2022/components/page-link/page-link.component.mjs +3 -3
  14. package/esm2022/components/page-navigation/page-navigation.component.mjs +3 -3
  15. package/esm2022/components/playground/base-playground.mjs +3 -3
  16. package/esm2022/components/playground/playground-demo/playground-demo.component.mjs +3 -3
  17. package/esm2022/components/playground/playground-properties/playground-properties.component.mjs +3 -3
  18. package/esm2022/components/playground/playground-property/playground-property.component.mjs +3 -3
  19. package/esm2022/components/playground/playground.component.mjs +3 -3
  20. package/esm2022/components/root/root.component.mjs +9 -9
  21. package/esm2022/components/search/search.component.mjs +3 -3
  22. package/esm2022/components/search-result/search-result.component.mjs +3 -3
  23. package/esm2022/components/sidebar/sidebar-category/sidebar-category.component.mjs +3 -3
  24. package/esm2022/components/sidebar/sidebar-item/sidebar-item.component.mjs +3 -3
  25. package/esm2022/components/sidebar/sidebar.component.mjs +3 -3
  26. package/esm2022/components/tabs/tabs.component.mjs +3 -3
  27. package/esm2022/components/theme-toggle/theme-toggle.component.mjs +3 -3
  28. package/esm2022/components/toc/toc-element/toc-element.component.mjs +11 -7
  29. package/esm2022/components/toc/toc.component.mjs +5 -5
  30. package/esm2022/directives/code-highlighter/code-highlighter.directive.mjs +3 -3
  31. package/esm2022/directives/route-active/route-active.directive.mjs +3 -3
  32. package/esm2022/helpers/generate-toc.mjs +3 -2
  33. package/esm2022/interfaces/toc-item.mjs +1 -1
  34. package/esm2022/pipes/extract-value/extract-value.pipe.mjs +3 -3
  35. package/esm2022/pipes/filter-by-text/filter-by-text.pipe.mjs +3 -3
  36. package/esm2022/pipes/sanitize-html/sanitize-html.pipe.mjs +3 -3
  37. package/esm2022/processors/page-processor/page-processor.directive.mjs +3 -3
  38. package/esm2022/processors/processors/tooltip.processor.mjs +3 -3
  39. package/esm2022/services/sidebar/sidebar.service.mjs +3 -3
  40. package/esm2022/services/store/store.service.mjs +3 -3
  41. package/esm2022/services/theme/theme.service.mjs +3 -3
  42. package/esm2022/type-controls/boolean-control/boolean-control.component.mjs +3 -3
  43. package/esm2022/type-controls/number-control/number-control.component.mjs +3 -3
  44. package/esm2022/type-controls/string-control/string-control.component.mjs +3 -3
  45. package/esm2022/type-controls/type-alias-control/type-alias-control.component.mjs +3 -3
  46. package/fesm2022/ng-doc-app-classes-default-search-engine.mjs +1 -1
  47. package/fesm2022/ng-doc-app-components-api-list.mjs +4 -4
  48. package/fesm2022/ng-doc-app-components-breadcrumb.mjs +3 -3
  49. package/fesm2022/ng-doc-app-components-code.mjs +3 -3
  50. package/fesm2022/ng-doc-app-components-demo-displayer.mjs +3 -3
  51. package/fesm2022/ng-doc-app-components-demo-pane.mjs +3 -3
  52. package/fesm2022/ng-doc-app-components-demo.mjs +3 -3
  53. package/fesm2022/ng-doc-app-components-fullscreen-button.mjs +3 -3
  54. package/fesm2022/ng-doc-app-components-kind-icon.mjs +3 -3
  55. package/fesm2022/ng-doc-app-components-link.mjs +3 -3
  56. package/fesm2022/ng-doc-app-components-navbar.mjs +5 -5
  57. package/fesm2022/ng-doc-app-components-page-link.mjs +4 -4
  58. package/fesm2022/ng-doc-app-components-page-navigation.mjs +3 -3
  59. package/fesm2022/ng-doc-app-components-page.mjs +3 -3
  60. package/fesm2022/ng-doc-app-components-playground.mjs +17 -17
  61. package/fesm2022/ng-doc-app-components-root.mjs +12 -12
  62. package/fesm2022/ng-doc-app-components-search-result.mjs +3 -3
  63. package/fesm2022/ng-doc-app-components-search.mjs +4 -4
  64. package/fesm2022/ng-doc-app-components-sidebar.mjs +10 -10
  65. package/fesm2022/ng-doc-app-components-tabs.mjs +3 -3
  66. package/fesm2022/ng-doc-app-components-theme-toggle.mjs +4 -4
  67. package/fesm2022/ng-doc-app-components-toc.mjs +16 -13
  68. package/fesm2022/ng-doc-app-components-toc.mjs.map +1 -1
  69. package/fesm2022/ng-doc-app-directives-code-highlighter.mjs +3 -3
  70. package/fesm2022/ng-doc-app-directives-route-active.mjs +4 -4
  71. package/fesm2022/ng-doc-app-helpers.mjs +2 -1
  72. package/fesm2022/ng-doc-app-helpers.mjs.map +1 -1
  73. package/fesm2022/ng-doc-app-pipes-extract-value.mjs +3 -3
  74. package/fesm2022/ng-doc-app-pipes-filter-by-text.mjs +3 -3
  75. package/fesm2022/ng-doc-app-pipes-sanitize-html.mjs +3 -3
  76. package/fesm2022/ng-doc-app-processors-page-processor.mjs +3 -3
  77. package/fesm2022/ng-doc-app-processors-processors.mjs +3 -3
  78. package/fesm2022/ng-doc-app-services-sidebar.mjs +4 -4
  79. package/fesm2022/ng-doc-app-services-store.mjs +3 -3
  80. package/fesm2022/ng-doc-app-services-theme.mjs +4 -4
  81. package/fesm2022/ng-doc-app-type-controls-boolean-control.mjs +3 -3
  82. package/fesm2022/ng-doc-app-type-controls-number-control.mjs +3 -3
  83. package/fesm2022/ng-doc-app-type-controls-string-control.mjs +3 -3
  84. package/fesm2022/ng-doc-app-type-controls-type-alias-control.mjs +3 -3
  85. package/interfaces/toc-item.d.ts +1 -0
  86. package/package.json +3 -3
@@ -41,10 +41,10 @@ export class NgDocPlaygroundPropertyComponent {
41
41
  ? this.property.description ?? ''
42
42
  : '';
43
43
  }
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocPlaygroundPropertyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocPlaygroundPropertyComponent, isStandalone: true, selector: "ng-doc-playground-property", inputs: { name: "name", property: "property", typeControl: "typeControl", control: "control", defaultValue: "defaultValue" }, host: { properties: { "attr.data-has-property-control": "this.hasPropertyControl" } }, viewQueries: [{ propertyName: "propertyOutlet", first: true, predicate: ["propertyOutlet"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<label [ng-doc-label]=\"option?.hideLabel ? '' : labelContent\">\n\t<ng-template #labelContent>\n\t\t<span\n\t\t\t[ngDocTooltip]=\"tooltipTemplate\"\n\t\t\t[canOpen]=\"!!tooltipContent\"\n\t\t\t[positions]=\"['left-center', 'top-right', 'bottom-right']\"\n\t\t\t>{{ name }}</span\n\t\t>\n\t\t<ng-template #tooltipTemplate>\n\t\t\t<div [innerHTML]=\"tooltipContent | ngDocSanitizeHtml\"></div>\n\t\t</ng-template>\n\t</ng-template>\n\t<ng-container #propertyOutlet></ng-container>\n</label>\n", styles: [":host{display:block}:host[data-has-property-control=false]{display:none}\n"], dependencies: [{ kind: "component", type: NgDocLabelComponent, selector: "label[ng-doc-label]", inputs: ["ng-doc-label", "align"] }, { 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: "pipe", type: NgDocSanitizeHtmlPipe, name: "ngDocSanitizeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocPlaygroundPropertyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocPlaygroundPropertyComponent, isStandalone: true, selector: "ng-doc-playground-property", inputs: { name: "name", property: "property", typeControl: "typeControl", control: "control", defaultValue: "defaultValue" }, host: { properties: { "attr.data-has-property-control": "this.hasPropertyControl" } }, viewQueries: [{ propertyName: "propertyOutlet", first: true, predicate: ["propertyOutlet"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<label [ng-doc-label]=\"option?.hideLabel ? '' : labelContent\">\n\t<ng-template #labelContent>\n\t\t<span\n\t\t\t[ngDocTooltip]=\"tooltipTemplate\"\n\t\t\t[canOpen]=\"!!tooltipContent\"\n\t\t\t[positions]=\"['left-center', 'top-right', 'bottom-right']\"\n\t\t\t>{{ name }}</span\n\t\t>\n\t\t<ng-template #tooltipTemplate>\n\t\t\t<div [innerHTML]=\"tooltipContent | ngDocSanitizeHtml\"></div>\n\t\t</ng-template>\n\t</ng-template>\n\t<ng-container #propertyOutlet></ng-container>\n</label>\n", styles: [":host{display:block}:host[data-has-property-control=false]{display:none}\n"], dependencies: [{ kind: "component", type: NgDocLabelComponent, selector: "label[ng-doc-label]", inputs: ["ng-doc-label", "align"] }, { 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: "pipe", type: NgDocSanitizeHtmlPipe, name: "ngDocSanitizeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
46
46
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocPlaygroundPropertyComponent, decorators: [{
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocPlaygroundPropertyComponent, decorators: [{
48
48
  type: Component,
49
49
  args: [{ selector: 'ng-doc-playground-property', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgDocLabelComponent, NgDocTooltipDirective, NgDocSanitizeHtmlPipe], template: "<label [ng-doc-label]=\"option?.hideLabel ? '' : labelContent\">\n\t<ng-template #labelContent>\n\t\t<span\n\t\t\t[ngDocTooltip]=\"tooltipTemplate\"\n\t\t\t[canOpen]=\"!!tooltipContent\"\n\t\t\t[positions]=\"['left-center', 'top-right', 'bottom-right']\"\n\t\t\t>{{ name }}</span\n\t\t>\n\t\t<ng-template #tooltipTemplate>\n\t\t\t<div [innerHTML]=\"tooltipContent | ngDocSanitizeHtml\"></div>\n\t\t</ng-template>\n\t</ng-template>\n\t<ng-container #propertyOutlet></ng-container>\n</label>\n", styles: [":host{display:block}:host[data-has-property-control=false]{display:none}\n"] }]
50
50
  }], propDecorators: { name: [{
@@ -74,10 +74,10 @@ export class NgDocPlaygroundComponent {
74
74
  content: this.defaultContent,
75
75
  });
76
76
  }
77
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocPlaygroundComponent, deps: [{ token: i1.NgDocRootPage }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
78
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocPlaygroundComponent, isStandalone: true, selector: "ng-doc-playground", inputs: { id: "id", pipeName: "pipeName", selectors: "selectors", properties: "properties", options: "options" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"configuration\">\n\t<ng-doc-playground-properties\n\t\t[form]=\"formGroup\"\n\t\t[properties]=\"properties\"\n\t\t[ignoreInputs]=\"configuration.hiddenInputs\"\n\t\t[dynamicContent]=\"configuration.content\"\n\t\t[hideSidePanel]=\"configuration.hideSidePanel ?? false\"\n\t\t[defaultValues]=\"defaultValues\"\n\t\t[showResetButton]=\"!isDefaultState()\"\n\t\t[(recreateDemo)]=\"recreateDemo\"\n\t\t(resetForm)=\"resetForm()\">\n\t\t<ng-doc-playground-demo\n\t\t\t*ngFor=\"let selector of configuration.selectors ?? selectors | asArray\"\n\t\t\t[id]=\"id\"\n\t\t\t[selector]=\"selector\"\n\t\t\t[properties]=\"properties\"\n\t\t\t[configuration]=\"configuration\"\n\t\t\t[recreateDemo]=\"recreateDemo\"\n\t\t\t[form]=\"formGroup\"\n\t\t\t[expanded]=\"configuration.expanded ?? false\">\n\t\t</ng-doc-playground-demo>\n\n\t\t<ng-doc-playground-demo\n\t\t\t*ngIf=\"pipeName\"\n\t\t\t[id]=\"id\"\n\t\t\t[pipeName]=\"pipeName\"\n\t\t\t[properties]=\"properties\"\n\t\t\t[configuration]=\"configuration\"\n\t\t\t[recreateDemo]=\"recreateDemo\"\n\t\t\t[form]=\"formGroup\">\n\t\t</ng-doc-playground-demo>\n\t</ng-doc-playground-properties>\n</ng-container>\n", styles: [":host{display:block;margin:var(--ng-doc-playground-margin)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocPlaygroundPropertiesComponent, selector: "ng-doc-playground-properties", inputs: ["form", "properties", "ignoreInputs", "dynamicContent", "defaultValues", "hideSidePanel", "recreateDemo", "showResetButton"], outputs: ["recreateDemoChange", "resetForm"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocPlaygroundDemoComponent, selector: "ng-doc-playground-demo", inputs: ["id", "pipeName", "selector", "configuration", "properties", "recreateDemo", "form", "expanded"] }, { kind: "pipe", type: NgDocAsArrayPipe, name: "asArray" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
77
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocPlaygroundComponent, deps: [{ token: i1.NgDocRootPage }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
78
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocPlaygroundComponent, isStandalone: true, selector: "ng-doc-playground", inputs: { id: "id", pipeName: "pipeName", selectors: "selectors", properties: "properties", options: "options" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"configuration\">\n\t<ng-doc-playground-properties\n\t\t[form]=\"formGroup\"\n\t\t[properties]=\"properties\"\n\t\t[ignoreInputs]=\"configuration.hiddenInputs\"\n\t\t[dynamicContent]=\"configuration.content\"\n\t\t[hideSidePanel]=\"configuration.hideSidePanel ?? false\"\n\t\t[defaultValues]=\"defaultValues\"\n\t\t[showResetButton]=\"!isDefaultState()\"\n\t\t[(recreateDemo)]=\"recreateDemo\"\n\t\t(resetForm)=\"resetForm()\">\n\t\t<ng-doc-playground-demo\n\t\t\t*ngFor=\"let selector of configuration.selectors ?? selectors | asArray\"\n\t\t\t[id]=\"id\"\n\t\t\t[selector]=\"selector\"\n\t\t\t[properties]=\"properties\"\n\t\t\t[configuration]=\"configuration\"\n\t\t\t[recreateDemo]=\"recreateDemo\"\n\t\t\t[form]=\"formGroup\"\n\t\t\t[expanded]=\"configuration.expanded ?? false\">\n\t\t</ng-doc-playground-demo>\n\n\t\t<ng-doc-playground-demo\n\t\t\t*ngIf=\"pipeName\"\n\t\t\t[id]=\"id\"\n\t\t\t[pipeName]=\"pipeName\"\n\t\t\t[properties]=\"properties\"\n\t\t\t[configuration]=\"configuration\"\n\t\t\t[recreateDemo]=\"recreateDemo\"\n\t\t\t[form]=\"formGroup\">\n\t\t</ng-doc-playground-demo>\n\t</ng-doc-playground-properties>\n</ng-container>\n", styles: [":host{display:block;margin:var(--ng-doc-playground-margin)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocPlaygroundPropertiesComponent, selector: "ng-doc-playground-properties", inputs: ["form", "properties", "ignoreInputs", "dynamicContent", "defaultValues", "hideSidePanel", "recreateDemo", "showResetButton"], outputs: ["recreateDemoChange", "resetForm"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocPlaygroundDemoComponent, selector: "ng-doc-playground-demo", inputs: ["id", "pipeName", "selector", "configuration", "properties", "recreateDemo", "form", "expanded"] }, { kind: "pipe", type: NgDocAsArrayPipe, name: "asArray" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
79
79
  }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocPlaygroundComponent, decorators: [{
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocPlaygroundComponent, decorators: [{
81
81
  type: Component,
82
82
  args: [{ selector: 'ng-doc-playground', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
83
83
  NgIf,
@@ -24,10 +24,10 @@ import * as i2 from "@tinkoff/ng-polymorpheus";
24
24
  * ```
25
25
  */
26
26
  export class NgDocCustomNavbarDirective {
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocCustomNavbarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
28
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: NgDocCustomNavbarDirective, isStandalone: true, selector: "[ngDocCustomNavbar]", ngImport: i0 }); }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocCustomNavbarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
28
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: NgDocCustomNavbarDirective, isStandalone: true, selector: "[ngDocCustomNavbar]", ngImport: i0 }); }
29
29
  }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocCustomNavbarDirective, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocCustomNavbarDirective, decorators: [{
31
31
  type: Directive,
32
32
  args: [{
33
33
  selector: '[ngDocCustomNavbar]',
@@ -48,10 +48,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
48
48
  * ```
49
49
  */
50
50
  export class NgDocCustomSidebarDirective {
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocCustomSidebarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
52
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: NgDocCustomSidebarDirective, isStandalone: true, selector: "[ngDocCustomSidebar]", ngImport: i0 }); }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocCustomSidebarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
52
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: NgDocCustomSidebarDirective, isStandalone: true, selector: "[ngDocCustomSidebar]", ngImport: i0 }); }
53
53
  }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocCustomSidebarDirective, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocCustomSidebarDirective, decorators: [{
55
55
  type: Directive,
56
56
  args: [{
57
57
  selector: '[ngDocCustomSidebar]',
@@ -89,15 +89,15 @@ let NgDocRootComponent = class NgDocRootComponent {
89
89
  hasBackdrop: isMobile,
90
90
  })), delay(0));
91
91
  }
92
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocRootComponent, deps: [{ token: i1.NgDocSidebarService }], target: i0.ɵɵFactoryTarget.Component }); }
93
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocRootComponent, isStandalone: true, selector: "ng-doc-root", inputs: { sidebar: "sidebar", footerContent: "footerContent", noWidthLimit: "noWidthLimit" }, host: { properties: { "attr.data-ng-doc-no-width-limit": "this.noWidthLimit" } }, providers: [], viewQueries: [{ propertyName: "sidenav", first: true, predicate: NgDocSidenavComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngDocLet=\"!!(sidebarService.isMobileMode() | async) as isMobileMode\">\n\t<div class=\"ng-doc-root-wrapper\" [class.collapsable]=\"isMobileMode\">\n\t\t<div class=\"ng-doc-header\">\n\t\t\t<ng-content select=\"ng-doc-navbar\"></ng-content>\n\t\t\t<ng-content select=\"[ngDocCustomNavbar]\"></ng-content>\n\t\t</div>\n\t\t<main *ngDocLet=\"sidebar && !!(sidebarService.isExpanded() | async) as opened\">\n\t\t\t<ng-doc-sidenav\n\t\t\t\t*ngDocLet=\"sidenavState$ | async as sidenavState\"\n\t\t\t\t[sidebar]=\"sidebarContent\"\n\t\t\t\t[opened]=\"opened\"\n\t\t\t\t[over]=\"sidenavState?.over ?? false\"\n\t\t\t\t[align]=\"sidenavState?.align ?? 'left'\"\n\t\t\t\t[hasBackdrop]=\"sidenavState?.hasBackdrop ?? false\"\n\t\t\t\t(closeEvent)=\"sidebarService.hide()\">\n\t\t\t\t<ng-template #sidebarContent>\n\t\t\t\t\t<ng-content select=\"ng-doc-sidebar\"></ng-content>\n\t\t\t\t\t<ng-content select=\"[ngDocCustomSidebar]\"></ng-content>\n\t\t\t\t</ng-template>\n\n\t\t\t\t<ng-content></ng-content>\n\t\t\t</ng-doc-sidenav>\n\t\t</main>\n\t\t<footer *ngIf=\"footerContent\">\n\t\t\t<ng-container *polymorpheusOutlet=\"footerContent as text\"> {{ text }} </ng-container>\n\t\t</footer>\n\t</div>\n</ng-container>\n", styles: [":host[data-ng-doc-no-width-limit=true] .ng-doc-root-wrapper main{max-width:none}:host .ng-doc-root-wrapper{display:flex;flex-direction:column;height:100%}:host .ng-doc-root-wrapper main{display:flex;width:100%;margin-left:auto;margin-right:auto;max-width:var(--ng-doc-app-max-width);padding:var(--ng-doc-main-padding);--ng-doc-sidenav-top: var(--ng-doc-navbar-height);--ng-doc-sidenav-width: var(--ng-doc-sidebar-width);--ng-doc-sidenav-content-padding: var(--ng-doc-page-padding)}:host .ng-doc-root-wrapper footer{margin-top:auto}:host .ng-doc-root-wrapper .ng-doc-header{position:fixed;top:0;height:var(--ng-doc-navbar-height);width:100%;z-index:10}\n"], dependencies: [{ kind: "directive", type: NgDocLetDirective, selector: "[ngDocLet]", inputs: ["ngDocLet"] }, { kind: "component", type: NgDocSidenavComponent, selector: "ng-doc-sidenav", inputs: ["sidebar", "align", "over", "opened", "hasBackdrop"], outputs: ["openedChange", "closeEvent", "beforeOpen", "beforeClose", "afterOpen", "afterClose"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: PolymorpheusModule }, { kind: "directive", type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
92
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocRootComponent, deps: [{ token: i1.NgDocSidebarService }], target: i0.ɵɵFactoryTarget.Component }); }
93
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocRootComponent, isStandalone: true, selector: "ng-doc-root", inputs: { sidebar: "sidebar", footerContent: "footerContent", noWidthLimit: "noWidthLimit" }, host: { properties: { "attr.data-ng-doc-no-width-limit": "this.noWidthLimit" } }, providers: [], viewQueries: [{ propertyName: "sidenav", first: true, predicate: NgDocSidenavComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngDocLet=\"!!(sidebarService.isMobileMode() | async) as isMobileMode\">\n\t<div class=\"ng-doc-root-wrapper\" [class.collapsable]=\"isMobileMode\">\n\t\t<div class=\"ng-doc-header\">\n\t\t\t<ng-content select=\"ng-doc-navbar\"></ng-content>\n\t\t\t<ng-content select=\"[ngDocCustomNavbar]\"></ng-content>\n\t\t</div>\n\t\t<main *ngDocLet=\"sidebar && !!(sidebarService.isExpanded() | async) as opened\">\n\t\t\t<ng-doc-sidenav\n\t\t\t\t*ngDocLet=\"sidenavState$ | async as sidenavState\"\n\t\t\t\t[sidebar]=\"sidebarContent\"\n\t\t\t\t[opened]=\"opened\"\n\t\t\t\t[over]=\"sidenavState?.over ?? false\"\n\t\t\t\t[align]=\"sidenavState?.align ?? 'left'\"\n\t\t\t\t[hasBackdrop]=\"sidenavState?.hasBackdrop ?? false\"\n\t\t\t\t(closeEvent)=\"sidebarService.hide()\">\n\t\t\t\t<ng-template #sidebarContent>\n\t\t\t\t\t<ng-content select=\"ng-doc-sidebar\"></ng-content>\n\t\t\t\t\t<ng-content select=\"[ngDocCustomSidebar]\"></ng-content>\n\t\t\t\t</ng-template>\n\n\t\t\t\t<ng-content></ng-content>\n\t\t\t</ng-doc-sidenav>\n\t\t</main>\n\t\t<footer *ngIf=\"footerContent\">\n\t\t\t<ng-container *polymorpheusOutlet=\"footerContent as text\"> {{ text }} </ng-container>\n\t\t</footer>\n\t</div>\n</ng-container>\n", styles: [":host[data-ng-doc-no-width-limit=true] .ng-doc-root-wrapper main{max-width:none}:host .ng-doc-root-wrapper{display:flex;flex-direction:column;height:100%}:host .ng-doc-root-wrapper main{display:flex;width:100%;margin-left:auto;margin-right:auto;max-width:var(--ng-doc-app-max-width);padding:var(--ng-doc-main-padding);--ng-doc-sidenav-top: var(--ng-doc-navbar-height);--ng-doc-sidenav-width: var(--ng-doc-sidebar-width);--ng-doc-sidenav-content-padding: var(--ng-doc-page-padding)}:host .ng-doc-root-wrapper footer{margin-top:auto}:host .ng-doc-root-wrapper .ng-doc-header{position:fixed;top:0;height:var(--ng-doc-navbar-height);width:100%;z-index:10}\n"], dependencies: [{ kind: "directive", type: NgDocLetDirective, selector: "[ngDocLet]", inputs: ["ngDocLet"] }, { kind: "component", type: NgDocSidenavComponent, selector: "ng-doc-sidenav", inputs: ["sidebar", "align", "over", "opened", "hasBackdrop"], outputs: ["openedChange", "closeEvent", "beforeOpen", "beforeClose", "afterOpen", "afterClose"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: PolymorpheusModule }, { kind: "directive", type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
94
94
  };
95
95
  NgDocRootComponent = __decorate([
96
96
  UntilDestroy(),
97
97
  __metadata("design:paramtypes", [NgDocSidebarService])
98
98
  ], NgDocRootComponent);
99
99
  export { NgDocRootComponent };
100
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocRootComponent, decorators: [{
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocRootComponent, decorators: [{
101
101
  type: Component,
102
102
  args: [{ selector: 'ng-doc-root', providers: [], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgDocLetDirective, NgDocSidenavComponent, NgIf, PolymorpheusModule, AsyncPipe], template: "<ng-container *ngDocLet=\"!!(sidebarService.isMobileMode() | async) as isMobileMode\">\n\t<div class=\"ng-doc-root-wrapper\" [class.collapsable]=\"isMobileMode\">\n\t\t<div class=\"ng-doc-header\">\n\t\t\t<ng-content select=\"ng-doc-navbar\"></ng-content>\n\t\t\t<ng-content select=\"[ngDocCustomNavbar]\"></ng-content>\n\t\t</div>\n\t\t<main *ngDocLet=\"sidebar && !!(sidebarService.isExpanded() | async) as opened\">\n\t\t\t<ng-doc-sidenav\n\t\t\t\t*ngDocLet=\"sidenavState$ | async as sidenavState\"\n\t\t\t\t[sidebar]=\"sidebarContent\"\n\t\t\t\t[opened]=\"opened\"\n\t\t\t\t[over]=\"sidenavState?.over ?? false\"\n\t\t\t\t[align]=\"sidenavState?.align ?? 'left'\"\n\t\t\t\t[hasBackdrop]=\"sidenavState?.hasBackdrop ?? false\"\n\t\t\t\t(closeEvent)=\"sidebarService.hide()\">\n\t\t\t\t<ng-template #sidebarContent>\n\t\t\t\t\t<ng-content select=\"ng-doc-sidebar\"></ng-content>\n\t\t\t\t\t<ng-content select=\"[ngDocCustomSidebar]\"></ng-content>\n\t\t\t\t</ng-template>\n\n\t\t\t\t<ng-content></ng-content>\n\t\t\t</ng-doc-sidenav>\n\t\t</main>\n\t\t<footer *ngIf=\"footerContent\">\n\t\t\t<ng-container *polymorpheusOutlet=\"footerContent as text\"> {{ text }} </ng-container>\n\t\t</footer>\n\t</div>\n</ng-container>\n", styles: [":host[data-ng-doc-no-width-limit=true] .ng-doc-root-wrapper main{max-width:none}:host .ng-doc-root-wrapper{display:flex;flex-direction:column;height:100%}:host .ng-doc-root-wrapper main{display:flex;width:100%;margin-left:auto;margin-right:auto;max-width:var(--ng-doc-app-max-width);padding:var(--ng-doc-main-padding);--ng-doc-sidenav-top: var(--ng-doc-navbar-height);--ng-doc-sidenav-width: var(--ng-doc-sidebar-width);--ng-doc-sidenav-content-padding: var(--ng-doc-page-padding)}:host .ng-doc-root-wrapper footer{margin-top:auto}:host .ng-doc-root-wrapper .ng-doc-header{position:fixed;top:0;height:var(--ng-doc-navbar-height);width:100%;z-index:10}\n"] }]
103
103
  }], ctorParameters: () => [{ type: i1.NgDocSidebarService }], propDecorators: { sidebar: [{
@@ -33,8 +33,8 @@ let NgDocSearchComponent = class NgDocSearchComponent {
33
33
  getPositions(key, item) {
34
34
  return item.positions[key] ?? [];
35
35
  }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSearchComponent, deps: [{ token: i0.ElementRef }, { token: i1.NgDocSearchEngine, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
37
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocSearchComponent, isStandalone: true, selector: "ng-doc-search", inputs: { mod: "mod" }, host: { properties: { "attr.data-ng-doc-mod": "this.mod" } }, providers: [
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSearchComponent, deps: [{ token: i0.ElementRef }, { token: i1.NgDocSearchEngine, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
37
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocSearchComponent, isStandalone: true, selector: "ng-doc-search", inputs: { mod: "mod" }, host: { properties: { "attr.data-ng-doc-mod": "this.mod" } }, providers: [
38
38
  {
39
39
  provide: NgDocListHost,
40
40
  useExisting: forwardRef(() => NgDocSearchComponent),
@@ -47,7 +47,7 @@ NgDocSearchComponent = __decorate([
47
47
  NgDocSearchEngine])
48
48
  ], NgDocSearchComponent);
49
49
  export { NgDocSearchComponent };
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSearchComponent, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSearchComponent, decorators: [{
51
51
  type: Component,
52
52
  args: [{ selector: 'ng-doc-search', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
53
53
  {
@@ -30,10 +30,10 @@ export class NgDocSearchResultComponent {
30
30
  return 'Unknown';
31
31
  }
32
32
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSearchResultComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocSearchResultComponent, isStandalone: true, selector: "ng-doc-search-result", inputs: { result: "result" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"ng-doc-search-result-wrapper\" *ngIf=\"groupedResult | keyvalue as results\">\n\t<ng-container *ngIf=\"results.length; else emptyTemplate\">\n\t\t<div class=\"ng-doc-search-result-category\" *ngFor=\"let item of results\">\n\t\t\t<h4 class=\"ng-doc-search-result-title\" ng-doc-text>{{ typeToLabel(item.key) }}</h4>\n\t\t\t<ul class=\"ng-doc-search-result-pages\">\n\t\t\t\t<li class=\"ng-doc-search-result-page\" *ngFor=\"let page of item.value\">\n\t\t\t\t\t<a class=\"ng-doc-search-result-page-link\" [routerLink]=\"[page.route]\">\n\t\t\t\t\t\t<ng-doc-kind-icon\n\t\t\t\t\t\t\t*ngIf=\"page.kind\"\n\t\t\t\t\t\t\t[kind]=\"page.kind\"\n\t\t\t\t\t\t\t[ngDocTooltip]=\"page.kind\"></ng-doc-kind-icon>\n\t\t\t\t\t\t{{ page.title }}\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</div>\n\t</ng-container>\n\t<ng-template #emptyTemplate>\n\t\t<div ng-doc-text color=\"muted\">Nothing was found...</div>\n\t</ng-template>\n</div>\n", styles: [":host{display:block}:host .ng-doc-search-result-wrapper{display:flex;flex-direction:row}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category:not(:last-child){margin-right:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-title{margin:0 0 calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-pages{list-style:none;padding:0;margin:0}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-pages .ng-doc-search-result-page{margin-bottom:var(--ng-doc-base-gutter)}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-pages .ng-doc-search-result-page .ng-doc-search-result-page-link{display:flex;align-items:center;text-decoration:none;color:var(--ng-doc-text)}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-pages .ng-doc-search-result-page .ng-doc-search-result-page-link ng-doc-kind-icon{margin-right:var(--ng-doc-base-gutter)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: NgDocKindIconComponent, selector: "ng-doc-kind-icon", inputs: ["kind", "type"] }, { 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: "pipe", type: KeyValuePipe, name: "keyvalue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSearchResultComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocSearchResultComponent, isStandalone: true, selector: "ng-doc-search-result", inputs: { result: "result" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"ng-doc-search-result-wrapper\" *ngIf=\"groupedResult | keyvalue as results\">\n\t<ng-container *ngIf=\"results.length; else emptyTemplate\">\n\t\t<div class=\"ng-doc-search-result-category\" *ngFor=\"let item of results\">\n\t\t\t<h4 class=\"ng-doc-search-result-title\" ng-doc-text>{{ typeToLabel(item.key) }}</h4>\n\t\t\t<ul class=\"ng-doc-search-result-pages\">\n\t\t\t\t<li class=\"ng-doc-search-result-page\" *ngFor=\"let page of item.value\">\n\t\t\t\t\t<a class=\"ng-doc-search-result-page-link\" [routerLink]=\"[page.route]\">\n\t\t\t\t\t\t<ng-doc-kind-icon\n\t\t\t\t\t\t\t*ngIf=\"page.kind\"\n\t\t\t\t\t\t\t[kind]=\"page.kind\"\n\t\t\t\t\t\t\t[ngDocTooltip]=\"page.kind\"></ng-doc-kind-icon>\n\t\t\t\t\t\t{{ page.title }}\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</div>\n\t</ng-container>\n\t<ng-template #emptyTemplate>\n\t\t<div ng-doc-text color=\"muted\">Nothing was found...</div>\n\t</ng-template>\n</div>\n", styles: [":host{display:block}:host .ng-doc-search-result-wrapper{display:flex;flex-direction:row}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category:not(:last-child){margin-right:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-title{margin:0 0 calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-pages{list-style:none;padding:0;margin:0}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-pages .ng-doc-search-result-page{margin-bottom:var(--ng-doc-base-gutter)}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-pages .ng-doc-search-result-page .ng-doc-search-result-page-link{display:flex;align-items:center;text-decoration:none;color:var(--ng-doc-text)}:host .ng-doc-search-result-wrapper .ng-doc-search-result-category .ng-doc-search-result-pages .ng-doc-search-result-page .ng-doc-search-result-page-link ng-doc-kind-icon{margin-right:var(--ng-doc-base-gutter)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: NgDocKindIconComponent, selector: "ng-doc-kind-icon", inputs: ["kind", "type"] }, { 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: "pipe", type: KeyValuePipe, name: "keyvalue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSearchResultComponent, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSearchResultComponent, decorators: [{
37
37
  type: Component,
38
38
  args: [{ selector: 'ng-doc-search-result', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
39
39
  NgIf,
@@ -42,8 +42,8 @@ let NgDocSidebarCategoryComponent = class NgDocSidebarCategoryComponent {
42
42
  this.changeDetectorRef.markForCheck();
43
43
  }
44
44
  }
45
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSidebarCategoryComponent, deps: [{ token: i1.Router }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
46
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocSidebarCategoryComponent, isStandalone: true, selector: "ng-doc-sidebar-category", inputs: { category: "category", isRoot: "isRoot", content: "content", expandable: "expandable", expanded: "expanded" }, host: { properties: { "attr.data-ng-doc-is-root": "this.isRoot", "attr.data-ng-doc-expandable": "this.expandable" } }, ngImport: i0, template: "<div class=\"ng-doc-sidebar-category-wrapper\">\n\t<div class=\"ng-doc-sidebar-category-button\" (click)=\"toggle()\">\n\t\t<div\n\t\t\tclass=\"ng-doc-sidebar-category\"\n\t\t\t[ngDocRouteActive]=\"category?.route ?? ''\"\n\t\t\tactiveClass=\"active\">\n\t\t\t<ng-doc-dot *ngIf=\"!expandable\"></ng-doc-dot>\n\t\t\t<span ng-doc-text [color]=\"expandable ? 'normal' : 'muted'\">\n\t\t\t\t<ng-doc-icon\n\t\t\t\t\ticon=\"chevron-right\"\n\t\t\t\t\t*ngIf=\"category?.expandable\"\n\t\t\t\t\t[ngDocRotator]=\"expanded\"\n\t\t\t\t\tngDocTextLeft>\n\t\t\t\t</ng-doc-icon>\n\t\t\t\t{{ category?.title }}\n\t\t\t</span>\n\t\t</div>\n\t\t<!--\t\t<div ng-doc-text color=\"muted\" size=\"small\">Some description</div>-->\n\t</div>\n\t<ng-doc-expander [expanded]=\"expanded\" [content]=\"contentTemplate\">\n\t\t<ng-template #contentTemplate>\n\t\t\t<div class=\"ng-doc-sidebar-category-children\">\n\t\t\t\t<!--We wrap content via ng-template to save state of the child components -->\n\t\t\t\t<ng-content></ng-content>\n\t\t\t\t<ng-container *polymorpheusOutlet=\"content\"></ng-container>\n\t\t\t</div>\n\t\t</ng-template>\n\t</ng-doc-expander>\n</div>\n", styles: [":host{display:flex;flex-direction:column;--ng-doc-sidebar-category-indent: calc( var(--ng-doc-sidebar-item-indent) + calc(var(--ng-doc-base-gutter) * 2) );--ng-doc-icon-color: var(--ng-doc-text)}:host[data-ng-doc-expandable=false] .ng-doc-sidebar-category-button{padding:var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-base-gutter) var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-item-indent)}:host[data-ng-doc-expandable=false] .ng-doc-sidebar-category-button .ng-doc-sidebar-category{--ng-doc-font-weight: 500}:host[data-ng-doc-expandable=true] .ng-doc-sidebar-category-button{padding:var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-base-gutter) var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-item-indent);cursor:pointer;border-radius:var(--ng-doc-base-gutter)}:host[data-ng-doc-expandable=true] .ng-doc-sidebar-category-button:hover{background-color:var(--ng-doc-base-1)}:host .ng-doc-sidebar-category-button{display:flex;flex-direction:column}:host .ng-doc-sidebar-category-button .ng-doc-sidebar-category{display:flex;align-items:center;--ng-doc-dot-background: var(--ng-doc-base-4);--ng-doc-font-weight: 500}:host .ng-doc-sidebar-category-button .ng-doc-sidebar-category ng-doc-dot{margin-right:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-sidebar-category-button .ng-doc-sidebar-category.active{--ng-doc-font-weight: 600;--ng-doc-dot-background: var(--ng-doc-primary)}:host .ng-doc-sidebar-category-button span[ng-doc-text]{flex-shrink:0;margin-right:var(--ng-doc-base-gutter)}:host .ng-doc-sidebar-category-children{padding-bottom:calc(var(--ng-doc-base-gutter) * 2);--ng-doc-sidebar-item-indent: var(--ng-doc-sidebar-category-indent)}\n"], dependencies: [{ kind: "directive", type: NgDocRouteActiveDirective, selector: "[ngDocRouteActive]", inputs: ["ngDocRouteActive", "activeClass", "matchOptions"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocDotComponent, selector: "ng-doc-dot", inputs: ["color", "size"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "directive", type: NgDocTextLeftDirective, selector: "[ngDocTextLeft]" }, { kind: "directive", type: NgDocRotatorDirective, selector: "[ngDocRotator]", inputs: ["ngDocRotator", "from", "to"] }, { kind: "component", type: NgDocExpanderComponent, selector: "ng-doc-expander", inputs: ["expanded", "content", "from"] }, { kind: "ngmodule", type: PolymorpheusModule }, { kind: "directive", type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
45
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSidebarCategoryComponent, deps: [{ token: i1.Router }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
46
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocSidebarCategoryComponent, isStandalone: true, selector: "ng-doc-sidebar-category", inputs: { category: "category", isRoot: "isRoot", content: "content", expandable: "expandable", expanded: "expanded" }, host: { properties: { "attr.data-ng-doc-is-root": "this.isRoot", "attr.data-ng-doc-expandable": "this.expandable" } }, ngImport: i0, template: "<div class=\"ng-doc-sidebar-category-wrapper\">\n\t<div class=\"ng-doc-sidebar-category-button\" (click)=\"toggle()\">\n\t\t<div\n\t\t\tclass=\"ng-doc-sidebar-category\"\n\t\t\t[ngDocRouteActive]=\"category?.route ?? ''\"\n\t\t\tactiveClass=\"active\">\n\t\t\t<ng-doc-dot *ngIf=\"!expandable\"></ng-doc-dot>\n\t\t\t<span ng-doc-text [color]=\"expandable ? 'normal' : 'muted'\">\n\t\t\t\t<ng-doc-icon\n\t\t\t\t\ticon=\"chevron-right\"\n\t\t\t\t\t*ngIf=\"category?.expandable\"\n\t\t\t\t\t[ngDocRotator]=\"expanded\"\n\t\t\t\t\tngDocTextLeft>\n\t\t\t\t</ng-doc-icon>\n\t\t\t\t{{ category?.title }}\n\t\t\t</span>\n\t\t</div>\n\t\t<!--\t\t<div ng-doc-text color=\"muted\" size=\"small\">Some description</div>-->\n\t</div>\n\t<ng-doc-expander [expanded]=\"expanded\" [content]=\"contentTemplate\">\n\t\t<ng-template #contentTemplate>\n\t\t\t<div class=\"ng-doc-sidebar-category-children\">\n\t\t\t\t<!--We wrap content via ng-template to save state of the child components -->\n\t\t\t\t<ng-content></ng-content>\n\t\t\t\t<ng-container *polymorpheusOutlet=\"content\"></ng-container>\n\t\t\t</div>\n\t\t</ng-template>\n\t</ng-doc-expander>\n</div>\n", styles: [":host{display:flex;flex-direction:column;--ng-doc-sidebar-category-indent: calc( var(--ng-doc-sidebar-item-indent) + calc(var(--ng-doc-base-gutter) * 2) );--ng-doc-icon-color: var(--ng-doc-text)}:host[data-ng-doc-expandable=false] .ng-doc-sidebar-category-button{padding:var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-base-gutter) var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-item-indent)}:host[data-ng-doc-expandable=false] .ng-doc-sidebar-category-button .ng-doc-sidebar-category{--ng-doc-font-weight: 500}:host[data-ng-doc-expandable=true] .ng-doc-sidebar-category-button{padding:var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-base-gutter) var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-item-indent);cursor:pointer;border-radius:var(--ng-doc-base-gutter)}:host[data-ng-doc-expandable=true] .ng-doc-sidebar-category-button:hover{background-color:var(--ng-doc-base-1)}:host .ng-doc-sidebar-category-button{display:flex;flex-direction:column}:host .ng-doc-sidebar-category-button .ng-doc-sidebar-category{display:flex;align-items:center;--ng-doc-dot-background: var(--ng-doc-base-4);--ng-doc-font-weight: 500}:host .ng-doc-sidebar-category-button .ng-doc-sidebar-category ng-doc-dot{margin-right:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-sidebar-category-button .ng-doc-sidebar-category.active{--ng-doc-font-weight: 600;--ng-doc-dot-background: var(--ng-doc-primary)}:host .ng-doc-sidebar-category-button span[ng-doc-text]{flex-shrink:0;margin-right:var(--ng-doc-base-gutter)}:host .ng-doc-sidebar-category-children{padding-bottom:calc(var(--ng-doc-base-gutter) * 2);--ng-doc-sidebar-item-indent: var(--ng-doc-sidebar-category-indent)}\n"], dependencies: [{ kind: "directive", type: NgDocRouteActiveDirective, selector: "[ngDocRouteActive]", inputs: ["ngDocRouteActive", "activeClass", "matchOptions"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocDotComponent, selector: "ng-doc-dot", inputs: ["color", "size"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "directive", type: NgDocTextLeftDirective, selector: "[ngDocTextLeft]" }, { kind: "directive", type: NgDocRotatorDirective, selector: "[ngDocRotator]", inputs: ["ngDocRotator", "from", "to"] }, { kind: "component", type: NgDocExpanderComponent, selector: "ng-doc-expander", inputs: ["expanded", "content", "from"] }, { kind: "ngmodule", type: PolymorpheusModule }, { kind: "directive", type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
47
47
  };
48
48
  NgDocSidebarCategoryComponent = __decorate([
49
49
  UntilDestroy(),
@@ -51,7 +51,7 @@ NgDocSidebarCategoryComponent = __decorate([
51
51
  ChangeDetectorRef])
52
52
  ], NgDocSidebarCategoryComponent);
53
53
  export { NgDocSidebarCategoryComponent };
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSidebarCategoryComponent, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSidebarCategoryComponent, decorators: [{
55
55
  type: Component,
56
56
  args: [{ selector: 'ng-doc-sidebar-category', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
57
57
  NgDocRouteActiveDirective,
@@ -3,10 +3,10 @@ import { RouterLink, RouterLinkActive } from '@angular/router';
3
3
  import { NgDocDotComponent, NgDocTextComponent } from '@ng-doc/ui-kit';
4
4
  import * as i0 from "@angular/core";
5
5
  export class NgDocSidebarItemComponent {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSidebarItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocSidebarItemComponent, isStandalone: true, selector: "ng-doc-sidebar-item", inputs: { item: "item" }, ngImport: i0, template: "<a class=\"ng-doc-sidebar-link\" [routerLink]=\"[item?.route ?? '']\" routerLinkActive=\"active\">\n\t<ng-doc-dot></ng-doc-dot>\n\t<span ng-doc-text [absoluteContent]=\"true\">\n\t\t{{ item?.title }}\n\t</span>\n</a>\n", styles: [":host{display:block}.ng-doc-sidebar-link{font-family:var(--ng-doc-heading-font-family);font-variant:no-contextual;color:var(--ng-doc-text);line-height:var(--ng-doc-line-height);font-size:var(--ng-doc-font-size);font-weight:var(--ng-doc-font-weight);display:flex;align-items:center;padding:var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-horizontal-padding) var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-item-indent);text-decoration:inherit;cursor:pointer;--ng-doc-icon-color: var(--ng-doc-text);--ng-doc-dot-background: var(--ng-doc-base-4);--ng-doc-font-weight: 400}.ng-doc-sidebar-link ng-doc-dot{margin-right:calc(var(--ng-doc-base-gutter) * 2)}.ng-doc-sidebar-link:hover:not(.active){--ng-doc-text: var(--ng-doc-text-muted)}.ng-doc-sidebar-link.active{--ng-doc-font-weight: 500;--ng-doc-dot-background: var(--ng-doc-primary)}.ng-doc-sidebar-link.active ng-doc-dot{animation:animation .5s ease-out}@keyframes animation{0%{transform:scale(1)}50%{transform:scale(2)}to{transform:scale(1)}}\n"], dependencies: [{ kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: NgDocDotComponent, selector: "ng-doc-dot", inputs: ["color", "size"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSidebarItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocSidebarItemComponent, isStandalone: true, selector: "ng-doc-sidebar-item", inputs: { item: "item" }, ngImport: i0, template: "<a class=\"ng-doc-sidebar-link\" [routerLink]=\"[item?.route ?? '']\" routerLinkActive=\"active\">\n\t<ng-doc-dot></ng-doc-dot>\n\t<span ng-doc-text [absoluteContent]=\"true\">\n\t\t{{ item?.title }}\n\t</span>\n</a>\n", styles: [":host{display:block}.ng-doc-sidebar-link{font-family:var(--ng-doc-heading-font-family);font-variant:no-contextual;color:var(--ng-doc-text);line-height:var(--ng-doc-line-height);font-size:var(--ng-doc-font-size);font-weight:var(--ng-doc-font-weight);display:flex;align-items:center;padding:var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-horizontal-padding) var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-item-indent);text-decoration:inherit;cursor:pointer;--ng-doc-icon-color: var(--ng-doc-text);--ng-doc-dot-background: var(--ng-doc-base-4);--ng-doc-font-weight: 400}.ng-doc-sidebar-link ng-doc-dot{margin-right:calc(var(--ng-doc-base-gutter) * 2)}.ng-doc-sidebar-link:hover:not(.active){--ng-doc-text: var(--ng-doc-text-muted)}.ng-doc-sidebar-link.active{--ng-doc-font-weight: 500;--ng-doc-dot-background: var(--ng-doc-primary)}.ng-doc-sidebar-link.active ng-doc-dot{animation:animation .5s ease-out}@keyframes animation{0%{transform:scale(1)}50%{transform:scale(2)}to{transform:scale(1)}}\n"], dependencies: [{ kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: NgDocDotComponent, selector: "ng-doc-dot", inputs: ["color", "size"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSidebarItemComponent, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSidebarItemComponent, decorators: [{
10
10
  type: Component,
11
11
  args: [{ selector: 'ng-doc-sidebar-item', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [RouterLinkActive, RouterLink, NgDocDotComponent, NgDocTextComponent], template: "<a class=\"ng-doc-sidebar-link\" [routerLink]=\"[item?.route ?? '']\" routerLinkActive=\"active\">\n\t<ng-doc-dot></ng-doc-dot>\n\t<span ng-doc-text [absoluteContent]=\"true\">\n\t\t{{ item?.title }}\n\t</span>\n</a>\n", styles: [":host{display:block}.ng-doc-sidebar-link{font-family:var(--ng-doc-heading-font-family);font-variant:no-contextual;color:var(--ng-doc-text);line-height:var(--ng-doc-line-height);font-size:var(--ng-doc-font-size);font-weight:var(--ng-doc-font-weight);display:flex;align-items:center;padding:var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-horizontal-padding) var(--ng-doc-sidebar-vetical-padding) var(--ng-doc-sidebar-item-indent);text-decoration:inherit;cursor:pointer;--ng-doc-icon-color: var(--ng-doc-text);--ng-doc-dot-background: var(--ng-doc-base-4);--ng-doc-font-weight: 400}.ng-doc-sidebar-link ng-doc-dot{margin-right:calc(var(--ng-doc-base-gutter) * 2)}.ng-doc-sidebar-link:hover:not(.active){--ng-doc-text: var(--ng-doc-text-muted)}.ng-doc-sidebar-link.active{--ng-doc-font-weight: 500;--ng-doc-dot-background: var(--ng-doc-primary)}.ng-doc-sidebar-link.active ng-doc-dot{animation:animation .5s ease-out}@keyframes animation{0%{transform:scale(1)}50%{transform:scale(2)}to{transform:scale(1)}}\n"] }]
12
12
  }], propDecorators: { item: [{
@@ -12,10 +12,10 @@ export class NgDocSidebarComponent {
12
12
  getNavigation(nav) {
13
13
  return nav ? nav.children ?? [] : this.context.navigation;
14
14
  }
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSidebarComponent, deps: [{ token: NG_DOC_CONTEXT }], target: i0.ɵɵFactoryTarget.Component }); }
16
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocSidebarComponent, isStandalone: true, selector: "ng-doc-sidebar", host: { attributes: { "ngSkipHydration": "true" } }, ngImport: i0, template: "<div class=\"ng-doc-side-bar-wrapper\">\n\t<ng-container *ngFor=\"let item of getNavigation | bind: this | execute\">\n\t\t<ng-container\n\t\t\t*ngTemplateOutlet=\"sidebarTemplate; context: { item: this.item, root: true }\"></ng-container>\n\t</ng-container>\n\n\t<ng-template let-item=\"item\" let-root=\"root\" #sidebarTemplate>\n\t\t<ng-container *ngIf=\"item.children?.length; else itemTemplate\">\n\t\t\t<ng-doc-sidebar-category\n\t\t\t\t*ngIf=\"!item.hidden\"\n\t\t\t\t[category]=\"item\"\n\t\t\t\t[expandable]=\"!!item?.expandable\"\n\t\t\t\t[expanded]=\"!!item?.expanded || !item?.expandable\"\n\t\t\t\t[isRoot]=\"!!root\"\n\t\t\t\t[content]=\"categoryContent\">\n\t\t\t\t<ng-template #categoryContent>\n\t\t\t\t\t<ng-container *ngFor=\"let child of getNavigation | bind: this | execute: item\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\n\t\t\t\t\t\t\t\tsidebarTemplate;\n\t\t\t\t\t\t\t\tcontext: { item: child, root: false }\n\t\t\t\t\t\t\t\"></ng-container>\n\t\t\t\t\t</ng-container>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-sidebar-category>\n\t\t</ng-container>\n\n\t\t<ng-template #itemTemplate>\n\t\t\t<ng-doc-sidebar-item [item]=\"item\" *ngIf=\"!item.hidden\"></ng-doc-sidebar-item>\n\t\t</ng-template>\n\t</ng-template>\n</div>\n", styles: [":host{display:block;height:calc(100vh - var(--ng-doc-navbar-height));width:100%;overflow:auto;padding:var(--ng-doc-sidebar-padding) 0;background:var(--ng-doc-sidebar-background);box-shadow:var(--ng-doc-sidebar-shadow);--ng-doc-sidebar-category-indent: var(--ng-doc-sidebar-horizontal-padding);--ng-doc-sidebar-item-indent: var(--ng-doc-sidebar-horizontal-padding)}:host .ng-doc-side-bar-wrapper{position:relative}\n"], dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocSidebarCategoryComponent, selector: "ng-doc-sidebar-category", inputs: ["category", "isRoot", "content", "expandable", "expanded"] }, { kind: "component", type: NgDocSidebarItemComponent, selector: "ng-doc-sidebar-item", inputs: ["item"] }, { kind: "pipe", type: NgDocExecutePipe, name: "execute" }, { kind: "pipe", type: NgDocBindPipe, name: "bind" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSidebarComponent, deps: [{ token: NG_DOC_CONTEXT }], target: i0.ɵɵFactoryTarget.Component }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocSidebarComponent, isStandalone: true, selector: "ng-doc-sidebar", host: { attributes: { "ngSkipHydration": "true" } }, ngImport: i0, template: "<div class=\"ng-doc-side-bar-wrapper\">\n\t<ng-container *ngFor=\"let item of getNavigation | bind: this | execute\">\n\t\t<ng-container\n\t\t\t*ngTemplateOutlet=\"sidebarTemplate; context: { item: this.item, root: true }\"></ng-container>\n\t</ng-container>\n\n\t<ng-template let-item=\"item\" let-root=\"root\" #sidebarTemplate>\n\t\t<ng-container *ngIf=\"item.children?.length; else itemTemplate\">\n\t\t\t<ng-doc-sidebar-category\n\t\t\t\t*ngIf=\"!item.hidden\"\n\t\t\t\t[category]=\"item\"\n\t\t\t\t[expandable]=\"!!item?.expandable\"\n\t\t\t\t[expanded]=\"!!item?.expanded || !item?.expandable\"\n\t\t\t\t[isRoot]=\"!!root\"\n\t\t\t\t[content]=\"categoryContent\">\n\t\t\t\t<ng-template #categoryContent>\n\t\t\t\t\t<ng-container *ngFor=\"let child of getNavigation | bind: this | execute: item\">\n\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\n\t\t\t\t\t\t\t\tsidebarTemplate;\n\t\t\t\t\t\t\t\tcontext: { item: child, root: false }\n\t\t\t\t\t\t\t\"></ng-container>\n\t\t\t\t\t</ng-container>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-sidebar-category>\n\t\t</ng-container>\n\n\t\t<ng-template #itemTemplate>\n\t\t\t<ng-doc-sidebar-item [item]=\"item\" *ngIf=\"!item.hidden\"></ng-doc-sidebar-item>\n\t\t</ng-template>\n\t</ng-template>\n</div>\n", styles: [":host{display:block;height:calc(100vh - var(--ng-doc-navbar-height));width:100%;overflow:auto;padding:var(--ng-doc-sidebar-padding) 0;background:var(--ng-doc-sidebar-background);box-shadow:var(--ng-doc-sidebar-shadow);--ng-doc-sidebar-category-indent: var(--ng-doc-sidebar-horizontal-padding);--ng-doc-sidebar-item-indent: var(--ng-doc-sidebar-horizontal-padding)}:host .ng-doc-side-bar-wrapper{position:relative}\n"], dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocSidebarCategoryComponent, selector: "ng-doc-sidebar-category", inputs: ["category", "isRoot", "content", "expandable", "expanded"] }, { kind: "component", type: NgDocSidebarItemComponent, selector: "ng-doc-sidebar-item", inputs: ["item"] }, { kind: "pipe", type: NgDocExecutePipe, name: "execute" }, { kind: "pipe", type: NgDocBindPipe, name: "bind" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocSidebarComponent, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocSidebarComponent, decorators: [{
19
19
  type: Component,
20
20
  args: [{ selector: 'ng-doc-sidebar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
21
21
  NgFor,
@@ -14,10 +14,10 @@ export class NgDocTabsComponent {
14
14
  appendElement(element, parent) {
15
15
  parent.appendChild(element);
16
16
  }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocTabsComponent, isStandalone: true, selector: "ng-doc-tabs", inputs: { tabs: "tabs" }, ngImport: i0, template: "<ng-doc-tab-group [openedTab]=\"getActiveIndex | execute: tabs\">\n\t<ng-doc-tab *ngFor=\"let tab of tabs; let i = index\" [label]=\"label\" [content]=\"content\" [id]=\"i\">\n\t\t<ng-template #label>\n\t\t\t<ng-doc-icon [customIcon]=\"tab.icon\" *ngIf=\"tab.icon\"></ng-doc-icon>\n\t\t\t{{ tab.title }}\n\t\t</ng-template>\n\t\t<ng-template #content>\n\t\t\t<div #element>\n\t\t\t\t{{ appendElement | execute: tab.content:element }}\n\t\t\t</div>\n\t\t</ng-template>\n\t</ng-doc-tab>\n</ng-doc-tab-group>\n", styles: [":host{display:block;border-radius:var(--ng-doc-tabs-border-radius);border:var(--ng-doc-tabs-border);margin:var(--ng-doc-tabs-margin);overflow:hidden;--ng-doc-code-margin: 0;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none;--ng-doc-tab-group-header-background: var(--ng-doc-base-2)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocTabGroupComponent, selector: "ng-doc-tab-group", inputs: ["openedTab"] }, { kind: "component", type: NgDocTabComponent, selector: "ng-doc-tab", inputs: ["label", "id", "content"] }, { kind: "pipe", type: NgDocExecutePipe, name: "execute" }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocTabsComponent, isStandalone: true, selector: "ng-doc-tabs", inputs: { tabs: "tabs" }, ngImport: i0, template: "<ng-doc-tab-group [openedTab]=\"getActiveIndex | execute: tabs\">\n\t<ng-doc-tab *ngFor=\"let tab of tabs; let i = index\" [label]=\"label\" [content]=\"content\" [id]=\"i\">\n\t\t<ng-template #label>\n\t\t\t<ng-doc-icon [customIcon]=\"tab.icon\" *ngIf=\"tab.icon\"></ng-doc-icon>\n\t\t\t{{ tab.title }}\n\t\t</ng-template>\n\t\t<ng-template #content>\n\t\t\t<div #element>\n\t\t\t\t{{ appendElement | execute: tab.content:element }}\n\t\t\t</div>\n\t\t</ng-template>\n\t</ng-doc-tab>\n</ng-doc-tab-group>\n", styles: [":host{display:block;border-radius:var(--ng-doc-tabs-border-radius);border:var(--ng-doc-tabs-border);margin:var(--ng-doc-tabs-margin);overflow:hidden;--ng-doc-code-margin: 0;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none;--ng-doc-tab-group-header-background: var(--ng-doc-base-2)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocTabGroupComponent, selector: "ng-doc-tab-group", inputs: ["openedTab"] }, { kind: "component", type: NgDocTabComponent, selector: "ng-doc-tab", inputs: ["label", "id", "content"] }, { kind: "pipe", type: NgDocExecutePipe, name: "execute" }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocTabsComponent, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocTabsComponent, decorators: [{
21
21
  type: Component,
22
22
  args: [{ selector: 'ng-doc-tabs', standalone: true, imports: [
23
23
  CommonModule,
@@ -38,8 +38,8 @@ export class NgDocThemeToggleComponent {
38
38
  this.themeService.set(theme?.id);
39
39
  }
40
40
  }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocThemeToggleComponent, deps: [{ token: i1.NgDocThemeService }], target: i0.ɵɵFactoryTarget.Component }); }
42
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocThemeToggleComponent, isStandalone: true, selector: "ng-doc-theme-toggle", ngImport: i0, template: "<button ng-doc-button-icon size=\"large\" (click)=\"toggleTheme()\" [ngDocTooltip]=\"tooltipContent\">\n\t<ng-template #tooltipContent>\n\t\t<ng-doc-smooth-resize [trigger]=\"nextTheme.name\">\n\t\t\tSet \"{{ nextTheme.name }}\" theme\n\t\t</ng-doc-smooth-resize>\n\t</ng-template>\n\t<ng-doc-icon\n\t\t[@switchIcon]=\"{ value: ':enter', params: { from: '-100%', to: '100%' } }\"\n\t\ticon=\"sun\"\n\t\t[size]=\"24\"\n\t\t*ngIf=\"nextTheme === themes[1]\"></ng-doc-icon>\n\t<ng-doc-icon\n\t\t[@switchIcon]=\"{ value: ':enter', params: { from: '-100%', to: '100%' } }\"\n\t\ticon=\"moon\"\n\t\t[size]=\"24\"\n\t\t*ngIf=\"nextTheme === themes[2]\"></ng-doc-icon>\n\t<div\n\t\tclass=\"letter\"\n\t\t[@switchIcon]=\"{ value: ':enter', params: { from: '-100%', to: '100%' } }\"\n\t\t*ngIf=\"nextTheme === themes[0]\">\n\t\tA\n\t</div>\n</button>\n", styles: [":host{display:inline-block;height:40px;width:40px}:host .letter{font-family:var(--ng-doc-font-family);font-variant:no-contextual;color:var(--ng-doc-text);line-height:var(--ng-doc-line-height);font-size:var(--ng-doc-font-size);font-weight:var(--ng-doc-font-weight);--ng-doc-font-size: 26px;--ng-doc-font-weight: 600}\n"], dependencies: [{ 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: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "component", type: NgDocSmoothResizeComponent, selector: "ng-doc-smooth-resize", inputs: ["trigger", "animateOpacity"] }], animations: [
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocThemeToggleComponent, deps: [{ token: i1.NgDocThemeService }], target: i0.ɵɵFactoryTarget.Component }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocThemeToggleComponent, isStandalone: true, selector: "ng-doc-theme-toggle", ngImport: i0, template: "<button ng-doc-button-icon size=\"large\" (click)=\"toggleTheme()\" [ngDocTooltip]=\"tooltipContent\">\n\t<ng-template #tooltipContent>\n\t\t<ng-doc-smooth-resize [trigger]=\"nextTheme.name\">\n\t\t\tSet \"{{ nextTheme.name }}\" theme\n\t\t</ng-doc-smooth-resize>\n\t</ng-template>\n\t<ng-doc-icon\n\t\t[@switchIcon]=\"{ value: ':enter', params: { from: '-100%', to: '100%' } }\"\n\t\ticon=\"sun\"\n\t\t[size]=\"24\"\n\t\t*ngIf=\"nextTheme === themes[1]\"></ng-doc-icon>\n\t<ng-doc-icon\n\t\t[@switchIcon]=\"{ value: ':enter', params: { from: '-100%', to: '100%' } }\"\n\t\ticon=\"moon\"\n\t\t[size]=\"24\"\n\t\t*ngIf=\"nextTheme === themes[2]\"></ng-doc-icon>\n\t<div\n\t\tclass=\"letter\"\n\t\t[@switchIcon]=\"{ value: ':enter', params: { from: '-100%', to: '100%' } }\"\n\t\t*ngIf=\"nextTheme === themes[0]\">\n\t\tA\n\t</div>\n</button>\n", styles: [":host{display:inline-block;height:40px;width:40px}:host .letter{font-family:var(--ng-doc-font-family);font-variant:no-contextual;color:var(--ng-doc-text);line-height:var(--ng-doc-line-height);font-size:var(--ng-doc-font-size);font-weight:var(--ng-doc-font-weight);--ng-doc-font-size: 26px;--ng-doc-font-weight: 600}\n"], dependencies: [{ 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: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "component", type: NgDocSmoothResizeComponent, selector: "ng-doc-smooth-resize", inputs: ["trigger", "animateOpacity"] }], animations: [
43
43
  trigger('switchIcon', [
44
44
  transition(':enter', [
45
45
  style({ transform: 'translateX({{from}})', position: 'absolute', opacity: 0 }),
@@ -52,7 +52,7 @@ export class NgDocThemeToggleComponent {
52
52
  ]),
53
53
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
54
54
  }
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocThemeToggleComponent, decorators: [{
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocThemeToggleComponent, decorators: [{
56
56
  type: Component,
57
57
  args: [{ animations: [
58
58
  trigger('switchIcon', [
@@ -1,19 +1,23 @@
1
1
  import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, inject, Input, } from '@angular/core';
2
+ import { RouterLink } from '@angular/router';
2
3
  import * as i0 from "@angular/core";
3
4
  export class NgDocTocElementComponent {
4
5
  constructor() {
5
- this.href = '';
6
+ this.path = '';
7
+ this.hash = '';
6
8
  this.selected = false;
7
9
  this.level = 1;
8
10
  this.elementRef = inject(ElementRef);
9
11
  }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocTocElementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NgDocTocElementComponent, isStandalone: true, selector: "li[ng-doc-toc-element]", inputs: { href: "href", selected: "selected", level: "level" }, host: { properties: { "attr.data-ng-doc-selected": "this.selected", "attr.data-ng-doc-level": "this.level" } }, ngImport: i0, template: "<a [href]=\"href\" [style.padding-left]=\"'calc(var(--ng-doc-toc-indent) * ' + level + ')'\">\n\t<ng-content></ng-content>\n</a>\n", styles: [":host{display:flex;margin:0;color:var(--ng-doc-text)}:host[data-ng-doc-level=\"1\"] a{padding-left:var(--ng-doc-base-gutter)}:host[data-ng-doc-selected=true]{color:var(--ng-doc-primary)}:host:hover{cursor:pointer;color:var(--ng-doc-primary)}:host a{font-family:var(--ng-doc-font-family);font-variant:no-contextual;color:var(--ng-doc-text);line-height:var(--ng-doc-line-height);font-size:var(--ng-doc-font-size);font-weight:var(--ng-doc-font-weight);padding:calc(var(--ng-doc-base-gutter) / 2);color:inherit;width:100%;text-decoration:none;word-break:break-word;--ng-doc-font-size: 14px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocTocElementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: NgDocTocElementComponent, isStandalone: true, selector: "li[ng-doc-toc-element]", inputs: { path: "path", hash: "hash", selected: "selected", level: "level" }, host: { properties: { "attr.data-ng-doc-selected": "this.selected", "attr.data-ng-doc-level": "this.level" } }, ngImport: i0, template: "<a\n\t[routerLink]=\"[path]\"\n\t[fragment]=\"hash\"\n\t[style.padding-left]=\"'calc(var(--ng-doc-toc-indent) * ' + level + ')'\">\n\t<ng-content></ng-content>\n</a>\n", styles: [":host{display:flex;margin:0;color:var(--ng-doc-text)}:host[data-ng-doc-level=\"1\"] a{padding-left:var(--ng-doc-base-gutter)}:host[data-ng-doc-selected=true]{color:var(--ng-doc-primary)}:host:hover{cursor:pointer;color:var(--ng-doc-primary)}:host a{font-family:var(--ng-doc-font-family);font-variant:no-contextual;color:var(--ng-doc-text);line-height:var(--ng-doc-line-height);font-size:var(--ng-doc-font-size);font-weight:var(--ng-doc-font-weight);padding:calc(var(--ng-doc-base-gutter) / 2);color:inherit;width:100%;text-decoration:none;word-break:break-word;--ng-doc-font-size: 14px}\n"], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
14
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocTocElementComponent, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocTocElementComponent, decorators: [{
14
16
  type: Component,
15
- args: [{ selector: 'li[ng-doc-toc-element]', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<a [href]=\"href\" [style.padding-left]=\"'calc(var(--ng-doc-toc-indent) * ' + level + ')'\">\n\t<ng-content></ng-content>\n</a>\n", styles: [":host{display:flex;margin:0;color:var(--ng-doc-text)}:host[data-ng-doc-level=\"1\"] a{padding-left:var(--ng-doc-base-gutter)}:host[data-ng-doc-selected=true]{color:var(--ng-doc-primary)}:host:hover{cursor:pointer;color:var(--ng-doc-primary)}:host a{font-family:var(--ng-doc-font-family);font-variant:no-contextual;color:var(--ng-doc-text);line-height:var(--ng-doc-line-height);font-size:var(--ng-doc-font-size);font-weight:var(--ng-doc-font-weight);padding:calc(var(--ng-doc-base-gutter) / 2);color:inherit;width:100%;text-decoration:none;word-break:break-word;--ng-doc-font-size: 14px}\n"] }]
16
- }], propDecorators: { href: [{
17
+ args: [{ selector: 'li[ng-doc-toc-element]', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [RouterLink], template: "<a\n\t[routerLink]=\"[path]\"\n\t[fragment]=\"hash\"\n\t[style.padding-left]=\"'calc(var(--ng-doc-toc-indent) * ' + level + ')'\">\n\t<ng-content></ng-content>\n</a>\n", styles: [":host{display:flex;margin:0;color:var(--ng-doc-text)}:host[data-ng-doc-level=\"1\"] a{padding-left:var(--ng-doc-base-gutter)}:host[data-ng-doc-selected=true]{color:var(--ng-doc-primary)}:host:hover{cursor:pointer;color:var(--ng-doc-primary)}:host a{font-family:var(--ng-doc-font-family);font-variant:no-contextual;color:var(--ng-doc-text);line-height:var(--ng-doc-line-height);font-size:var(--ng-doc-font-size);font-weight:var(--ng-doc-font-weight);padding:calc(var(--ng-doc-base-gutter) / 2);color:inherit;width:100%;text-decoration:none;word-break:break-word;--ng-doc-font-size: 14px}\n"] }]
18
+ }], propDecorators: { path: [{
19
+ type: Input
20
+ }], hash: [{
17
21
  type: Input
18
22
  }], selected: [{
19
23
  type: Input
@@ -26,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
26
30
  type: HostBinding,
27
31
  args: ['attr.data-ng-doc-level']
28
32
  }] } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jLWVsZW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvY29tcG9uZW50cy90b2MvdG9jLWVsZW1lbnQvdG9jLWVsZW1lbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvY29tcG9uZW50cy90b2MvdG9jLWVsZW1lbnQvdG9jLWVsZW1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxHQUNMLE1BQU0sZUFBZSxDQUFDOztBQVN2QixNQUFNLE9BQU8sd0JBQXdCO0lBUHJDO1FBU0MsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUlsQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBSTFCLFVBQUssR0FBVyxDQUFDLENBQUM7UUFFVCxlQUFVLEdBQTRCLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztLQUNsRTs4R0FiWSx3QkFBd0I7a0dBQXhCLHdCQUF3QixrUUNoQnJDLG9JQUdBOzsyRkRhYSx3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0Msd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUk7OEJBSWhCLElBQUk7c0JBREgsS0FBSztnQkFLTixRQUFRO3NCQUZQLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsMkJBQTJCO2dCQUt4QyxLQUFLO3NCQUZKLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0RWxlbWVudFJlZixcblx0SG9zdEJpbmRpbmcsXG5cdGluamVjdCxcblx0SW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdsaVtuZy1kb2MtdG9jLWVsZW1lbnRdJyxcblx0dGVtcGxhdGVVcmw6ICcuL3RvYy1lbGVtZW50LmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vdG9jLWVsZW1lbnQuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIE5nRG9jVG9jRWxlbWVudENvbXBvbmVudCB7XG5cdEBJbnB1dCgpXG5cdGhyZWY6IHN0cmluZyA9ICcnO1xuXG5cdEBJbnB1dCgpXG5cdEBIb3N0QmluZGluZygnYXR0ci5kYXRhLW5nLWRvYy1zZWxlY3RlZCcpXG5cdHNlbGVjdGVkOiBib29sZWFuID0gZmFsc2U7XG5cblx0QElucHV0KClcblx0QEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtbmctZG9jLWxldmVsJylcblx0bGV2ZWw6IG51bWJlciA9IDE7XG5cblx0cmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gPSBpbmplY3QoRWxlbWVudFJlZik7XG59XG4iLCI8YSBbaHJlZl09XCJocmVmXCIgW3N0eWxlLnBhZGRpbmctbGVmdF09XCInY2FsYyh2YXIoLS1uZy1kb2MtdG9jLWluZGVudCkgKiAnICsgbGV2ZWwgKyAnKSdcIj5cblx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9hPlxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jLWVsZW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvY29tcG9uZW50cy90b2MvdG9jLWVsZW1lbnQvdG9jLWVsZW1lbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvY29tcG9uZW50cy90b2MvdG9jLWVsZW1lbnQvdG9jLWVsZW1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxHQUNMLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFVN0MsTUFBTSxPQUFPLHdCQUF3QjtJQVJyQztRQVVDLFNBQUksR0FBVyxFQUFFLENBQUM7UUFHbEIsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUlsQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBSTFCLFVBQUssR0FBVyxDQUFDLENBQUM7UUFFVCxlQUFVLEdBQTRCLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztLQUNsRTs4R0FoQlksd0JBQXdCO2tHQUF4Qix3QkFBd0IsZ1JDbEJyQyx5S0FNQSxzb0JEVVcsVUFBVTs7MkZBRVIsd0JBQXdCO2tCQVJwQyxTQUFTOytCQUNDLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxVQUFVLENBQUM7OEJBSXJCLElBQUk7c0JBREgsS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUs7Z0JBS04sUUFBUTtzQkFGUCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLDJCQUEyQjtnQkFLeEMsS0FBSztzQkFGSixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDb21wb25lbnQsXG5cdEVsZW1lbnRSZWYsXG5cdEhvc3RCaW5kaW5nLFxuXHRpbmplY3QsXG5cdElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdsaVtuZy1kb2MtdG9jLWVsZW1lbnRdJyxcblx0dGVtcGxhdGVVcmw6ICcuL3RvYy1lbGVtZW50LmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vdG9jLWVsZW1lbnQuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtSb3V0ZXJMaW5rXSxcbn0pXG5leHBvcnQgY2xhc3MgTmdEb2NUb2NFbGVtZW50Q29tcG9uZW50IHtcblx0QElucHV0KClcblx0cGF0aDogc3RyaW5nID0gJyc7XG5cblx0QElucHV0KClcblx0aGFzaDogc3RyaW5nID0gJyc7XG5cblx0QElucHV0KClcblx0QEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtbmctZG9jLXNlbGVjdGVkJylcblx0c2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuXHRASW5wdXQoKVxuXHRASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1uZy1kb2MtbGV2ZWwnKVxuXHRsZXZlbDogbnVtYmVyID0gMTtcblxuXHRyZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiA9IGluamVjdChFbGVtZW50UmVmKTtcbn1cbiIsIjxhXG5cdFtyb3V0ZXJMaW5rXT1cIltwYXRoXVwiXG5cdFtmcmFnbWVudF09XCJoYXNoXCJcblx0W3N0eWxlLnBhZGRpbmctbGVmdF09XCInY2FsYyh2YXIoLS1uZy1kb2MtdG9jLWluZGVudCkgKiAnICsgbGV2ZWwgKyAnKSdcIj5cblx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9hPlxuIl19
@@ -68,17 +68,17 @@ let NgDocTocComponent = class NgDocTocComponent {
68
68
  }
69
69
  this.activeItem.set(item);
70
70
  }
71
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocTocComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
72
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.2", type: NgDocTocComponent, isStandalone: true, selector: "ng-doc-toc", inputs: { tableOfContent: "tableOfContent" }, viewQueries: [{ propertyName: "selection", first: true, predicate: ["selection"], descendants: true, read: ElementRef }, { propertyName: "elements", predicate: NgDocTocElementComponent, descendants: true }], ngImport: i0, template: "<div class=\"ng-doc-toc-wrapper\">\n\t<div class=\"ng-doc-toc-container\">\n\t\t<div class=\"ng-doc-toc-selection\" #selection></div>\n\t\t<ul class=\"ng-doc-toc\">\n\t\t\t@for (item of tableOfContent; track item) {\n\t\t\t<li\n\t\t\t\tng-doc-toc-element\n\t\t\t\t[href]=\"item.path\"\n\t\t\t\t[level]=\"item.level\"\n\t\t\t\t[selected]=\"item === activeItem()\">\n\t\t\t\t{{ item.title }}\n\t\t\t</li>\n\t\t\t}\n\t\t</ul>\n\t</div>\n</div>\n", styles: [":host .ng-doc-toc-wrapper{position:relative;width:var(--ng-doc-toc-width)}:host .ng-doc-toc-wrapper .ng-doc-toc-container{position:fixed;overflow-y:auto;height:calc(100% - var(--ng-doc-navbar-height) - var(--ng-doc-base-gutter) * 5);width:var(--ng-doc-toc-width)}:host .ng-doc-toc-wrapper .ng-doc-toc-selection{position:absolute;transform:translate(-50%);width:calc(var(--ng-doc-base-gutter) / 2);border-radius:calc(var(--ng-doc-base-gutter) / 2);background-color:var(--ng-doc-primary);left:calc(var(--ng-doc-toc-margin) + 1px);transition:var(--ng-doc-transition)}:host .ng-doc-toc-wrapper .ng-doc-toc{list-style:none;margin:0 0 0 var(--ng-doc-toc-margin);border-left:1px solid var(--ng-doc-base-3);padding:0 0 0 var(--ng-doc-base-gutter)}@media (max-width: 1200px){:host .ng-doc-toc-wrapper{display:none}}\n"], dependencies: [{ kind: "component", type: NgDocTocElementComponent, selector: "li[ng-doc-toc-element]", inputs: ["href", "selected", "level"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
71
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocTocComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
72
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.0", type: NgDocTocComponent, isStandalone: true, selector: "ng-doc-toc", inputs: { tableOfContent: "tableOfContent" }, viewQueries: [{ propertyName: "selection", first: true, predicate: ["selection"], descendants: true, read: ElementRef }, { propertyName: "elements", predicate: NgDocTocElementComponent, descendants: true }], ngImport: i0, template: "<div class=\"ng-doc-toc-wrapper\">\n\t<div class=\"ng-doc-toc-container\">\n\t\t<div class=\"ng-doc-toc-selection\" #selection></div>\n\t\t<ul class=\"ng-doc-toc\">\n\t\t\t@for (item of tableOfContent; track item) {\n\t\t\t\t<li\n\t\t\t\t\tng-doc-toc-element\n\t\t\t\t\t[path]=\"item.path\"\n\t\t\t\t\t[hash]=\"item.hash\"\n\t\t\t\t\t[level]=\"item.level\"\n\t\t\t\t\t[selected]=\"item === activeItem()\">\n\t\t\t\t\t{{ item.title }}\n\t\t\t\t</li>\n\t\t\t}\n\t\t</ul>\n\t</div>\n</div>\n", styles: [":host .ng-doc-toc-wrapper{position:relative;width:var(--ng-doc-toc-width)}:host .ng-doc-toc-wrapper .ng-doc-toc-container{position:fixed;overflow-y:auto;height:calc(100% - var(--ng-doc-navbar-height) - var(--ng-doc-base-gutter) * 5);width:var(--ng-doc-toc-width)}:host .ng-doc-toc-wrapper .ng-doc-toc-selection{position:absolute;transform:translate(-50%);width:calc(var(--ng-doc-base-gutter) / 2);border-radius:calc(var(--ng-doc-base-gutter) / 2);background-color:var(--ng-doc-primary);left:calc(var(--ng-doc-toc-margin) + 1px);transition:var(--ng-doc-transition)}:host .ng-doc-toc-wrapper .ng-doc-toc{list-style:none;margin:0 0 0 var(--ng-doc-toc-margin);border-left:1px solid var(--ng-doc-base-3);padding:0 0 0 var(--ng-doc-base-gutter)}@media (max-width: 1200px){:host .ng-doc-toc-wrapper{display:none}}\n"], dependencies: [{ kind: "component", type: NgDocTocElementComponent, selector: "li[ng-doc-toc-element]", inputs: ["path", "hash", "selected", "level"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
73
73
  };
74
74
  NgDocTocComponent = __decorate([
75
75
  UntilDestroy(),
76
76
  __metadata("design:paramtypes", [])
77
77
  ], NgDocTocComponent);
78
78
  export { NgDocTocComponent };
79
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocTocComponent, decorators: [{
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocTocComponent, decorators: [{
80
80
  type: Component,
81
- args: [{ selector: 'ng-doc-toc', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgFor, NgDocTocElementComponent, NgDocMediaQueryDirective], template: "<div class=\"ng-doc-toc-wrapper\">\n\t<div class=\"ng-doc-toc-container\">\n\t\t<div class=\"ng-doc-toc-selection\" #selection></div>\n\t\t<ul class=\"ng-doc-toc\">\n\t\t\t@for (item of tableOfContent; track item) {\n\t\t\t<li\n\t\t\t\tng-doc-toc-element\n\t\t\t\t[href]=\"item.path\"\n\t\t\t\t[level]=\"item.level\"\n\t\t\t\t[selected]=\"item === activeItem()\">\n\t\t\t\t{{ item.title }}\n\t\t\t</li>\n\t\t\t}\n\t\t</ul>\n\t</div>\n</div>\n", styles: [":host .ng-doc-toc-wrapper{position:relative;width:var(--ng-doc-toc-width)}:host .ng-doc-toc-wrapper .ng-doc-toc-container{position:fixed;overflow-y:auto;height:calc(100% - var(--ng-doc-navbar-height) - var(--ng-doc-base-gutter) * 5);width:var(--ng-doc-toc-width)}:host .ng-doc-toc-wrapper .ng-doc-toc-selection{position:absolute;transform:translate(-50%);width:calc(var(--ng-doc-base-gutter) / 2);border-radius:calc(var(--ng-doc-base-gutter) / 2);background-color:var(--ng-doc-primary);left:calc(var(--ng-doc-toc-margin) + 1px);transition:var(--ng-doc-transition)}:host .ng-doc-toc-wrapper .ng-doc-toc{list-style:none;margin:0 0 0 var(--ng-doc-toc-margin);border-left:1px solid var(--ng-doc-base-3);padding:0 0 0 var(--ng-doc-base-gutter)}@media (max-width: 1200px){:host .ng-doc-toc-wrapper{display:none}}\n"] }]
81
+ args: [{ selector: 'ng-doc-toc', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgFor, NgDocTocElementComponent, NgDocMediaQueryDirective], template: "<div class=\"ng-doc-toc-wrapper\">\n\t<div class=\"ng-doc-toc-container\">\n\t\t<div class=\"ng-doc-toc-selection\" #selection></div>\n\t\t<ul class=\"ng-doc-toc\">\n\t\t\t@for (item of tableOfContent; track item) {\n\t\t\t\t<li\n\t\t\t\t\tng-doc-toc-element\n\t\t\t\t\t[path]=\"item.path\"\n\t\t\t\t\t[hash]=\"item.hash\"\n\t\t\t\t\t[level]=\"item.level\"\n\t\t\t\t\t[selected]=\"item === activeItem()\">\n\t\t\t\t\t{{ item.title }}\n\t\t\t\t</li>\n\t\t\t}\n\t\t</ul>\n\t</div>\n</div>\n", styles: [":host .ng-doc-toc-wrapper{position:relative;width:var(--ng-doc-toc-width)}:host .ng-doc-toc-wrapper .ng-doc-toc-container{position:fixed;overflow-y:auto;height:calc(100% - var(--ng-doc-navbar-height) - var(--ng-doc-base-gutter) * 5);width:var(--ng-doc-toc-width)}:host .ng-doc-toc-wrapper .ng-doc-toc-selection{position:absolute;transform:translate(-50%);width:calc(var(--ng-doc-base-gutter) / 2);border-radius:calc(var(--ng-doc-base-gutter) / 2);background-color:var(--ng-doc-primary);left:calc(var(--ng-doc-toc-margin) + 1px);transition:var(--ng-doc-transition)}:host .ng-doc-toc-wrapper .ng-doc-toc{list-style:none;margin:0 0 0 var(--ng-doc-toc-margin);border-left:1px solid var(--ng-doc-base-3);padding:0 0 0 var(--ng-doc-base-gutter)}@media (max-width: 1200px){:host .ng-doc-toc-wrapper{display:none}}\n"] }]
82
82
  }], ctorParameters: () => [], propDecorators: { tableOfContent: [{
83
83
  type: Input
84
84
  }], selection: [{
@@ -88,4 +88,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
88
88
  type: ViewChildren,
89
89
  args: [NgDocTocElementComponent]
90
90
  }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL2NvbXBvbmVudHMvdG9jL3RvYy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3RvYy90b2MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUNOLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUVOLFNBQVMsRUFDVCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFNBQVMsRUFDVCxZQUFZLEdBRVosTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQixNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTVGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOztBQVd4RSxJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFpQjtJQWtCN0I7UUFoQkEsbUJBQWMsR0FBbUIsRUFB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QUksQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLEtBQUssRUFBRSxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDO2dCQUN0RixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUUsR0FBRyxPQUFPLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQztnQkFFNUYsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1lBQzlDLENBQUM7UUFDRixDQUFDO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQzs4R0F0R1csaUJBQWlCO2tHQUFqQixpQkFBaUIsdU1BSUcsVUFBVSwyQ0FHNUIsd0JBQXdCLGdEQzdDdkMsNGJBZ0JBLGsyQkRtQmtCLHdCQUF3Qjs7QUFHN0IsaUJBQWlCO0lBRDdCLFlBQVksRUFBRTs7R0FDRixpQkFBaUIsQ0F1RzdCOzsyRkF2R1ksaUJBQWlCO2tCQVQ3QixTQUFTOytCQUNDLFlBQVksbUJBR0wsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsd0JBQXdCLENBQUM7d0RBS3BFLGNBQWM7c0JBRGIsS0FBSztnQkFJTixTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFJNUMsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5ULCBOZ0ZvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuXHRhZnRlck5leHRSZW5kZXIsXG5cdEFmdGVyUmVuZGVyUGhhc2UsXG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDaGFuZ2VEZXRlY3RvclJlZixcblx0Q29tcG9uZW50LFxuXHRFbGVtZW50UmVmLFxuXHRpbmplY3QsXG5cdElucHV0LFxuXHROZ1pvbmUsXG5cdE9uSW5pdCxcblx0UXVlcnlMaXN0LFxuXHRSZW5kZXJlcjIsXG5cdHNpZ25hbCxcblx0Vmlld0NoaWxkLFxuXHRWaWV3Q2hpbGRyZW4sXG5cdFdyaXRhYmxlU2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV2ZW50IGFzIFJFdmVudCwgUm91dGVyLCBTY3JvbGwgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTmdEb2NQYWdlVG9jLCBOZ0RvY1RvY0l0ZW0gfSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGlzUHJlc2VudCB9IGZyb20gJ0BuZy1kb2MvY29yZS9oZWxwZXJzL2lzLXByZXNlbnQnO1xuaW1wb3J0IHsgTmdEb2NNZWRpYVF1ZXJ5RGlyZWN0aXZlLCBuZ0RvY1pvbmVPcHRpbWl6ZSB9IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcbmltcG9ydCB7IFVudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBtZXJnZSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTmdEb2NUb2NFbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi90b2MtZWxlbWVudC90b2MtZWxlbWVudC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZy1kb2MtdG9jJyxcblx0dGVtcGxhdGVVcmw6ICcuL3RvYy5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL3RvYy5jb21wb25lbnQuc2NzcyddLFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW05nRm9yLCBOZ0RvY1RvY0VsZW1lbnRDb21wb25lbnQsIE5nRG9jTWVkaWFRdWVyeURpcmVjdGl2ZV0sXG59KVxuQFVudGlsRGVzdHJveSgpXG5leHBvcnQgY2xhc3MgTmdEb2NUb2NDb21wb25lbnQgaW1wbGVtZW50cyBOZ0RvY1BhZ2VUb2MsIE9uSW5pdCB7XG5cdEBJbnB1dCgpXG5cdHRhYmxlT2ZDb250ZW50OiBOZ0RvY1RvY0l0ZW1bXSA9IFtdO1xuXG5cdEBWaWV3Q2hpbGQoJ3NlbGVjdGlvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuXHRzZWxlY3Rpb24/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuXHRAVmlld0NoaWxkcmVuKE5nRG9jVG9jRWxlbWVudENvbXBvbmVudClcblx0ZWxlbWVudHM6IFF1ZXJ5TGlzdDxOZ0RvY1RvY0VsZW1lbnRDb21wb25lbnQ+ID0gbmV3IFF1ZXJ5TGlzdDxOZ0RvY1RvY0VsZW1lbnRDb21wb25lbnQ+KCk7XG5cblx0YWN0aXZlSXRlbTogV3JpdGFibGVTaWduYWw8TmdEb2NUb2NJdGVtIHwgdW5kZWZpbmVkPiA9IHNpZ25hbCh1bmRlZmluZWQpO1xuXG5cdHByb3RlY3RlZCByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXHRwcm90ZWN0ZWQgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUgPSBpbmplY3QoTmdab25lKTtcblx0cHJvdGVjdGVkIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cdHByb3RlY3RlZCByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyID0gaW5qZWN0KFJlbmRlcmVyMik7XG5cdHByb3RlY3RlZCByZWFkb25seSByb3V0ZXI6IFJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGFmdGVyTmV4dFJlbmRlcihcblx0XHRcdCgpID0+IHtcblx0XHRcdFx0Y29uc3Qgc2Nyb2xsU2VsZWN0aW9uOiBPYnNlcnZhYmxlPE5nRG9jVG9jSXRlbT4gPSBmcm9tRXZlbnQodGhpcy5kb2N1bWVudCwgJ3Njcm9sbCcpLnBpcGUoXG5cdFx0XHRcdFx0ZmlsdGVyKCgpID0+ICEhdGhpcy50YWJsZU9mQ29udGVudC5sZW5ndGgpLFxuXHRcdFx0XHRcdG1hcCgoZXZlbnQ6IEV2ZW50KSA9PiAoZXZlbnQudGFyZ2V0IGFzIERvY3VtZW50KS5zY3JvbGxpbmdFbGVtZW50IGFzIEhUTUxFbGVtZW50KSxcblx0XHRcdFx0XHRzdGFydFdpdGgodGhpcy5kb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50IGFzIEhUTUxFbGVtZW50KSxcblx0XHRcdFx0XHRtYXAoKHRhcmdldDogSFRNTEVsZW1lbnQpID0+IHtcblx0XHRcdFx0XHRcdGNvbnN0IHBlcmNlbnRhZ2U6IG51bWJlciA9XG5cdFx0XHRcdFx0XHRcdCh0YXJnZXQuc2Nyb2xsVG9wICogMTAwKSAvICh0YXJnZXQuc2Nyb2xsSGVpZ2h0IC0gdGFyZ2V0Lm9mZnNldEhlaWdodCk7XG5cdFx0XHRcdFx0XHRjb25zdCBzZWxlY3Rpb25MaW5lOiBudW1iZXIgPVxuXHRcdFx0XHRcdFx0XHR0YXJnZXQuc2Nyb2xsVG9wICsgKHRhcmdldC5vZmZzZXRIZWlnaHQgKiBwZXJjZW50YWdlKSAvIDEwMDtcblxuXHRcdFx0XHRcdFx0aWYgKCF0aGlzLnRhYmxlT2ZDb250ZW50Lmxlbmd0aCkge1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gbnVsbDtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0cmV0dXJuIHRoaXMudGFibGVPZkNvbnRlbnQucmVkdWNlKChwVGFyZ2V0OiBOZ0RvY1RvY0l0ZW0sIGNUYXJnZXQ6IE5nRG9jVG9jSXRlbSkgPT4ge1xuXHRcdFx0XHRcdFx0XHRjb25zdCBwVG9wOiBudW1iZXIgPSBwVGFyZ2V0LmVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wICsgdGFyZ2V0LnNjcm9sbFRvcDtcblx0XHRcdFx0XHRcdFx0Y29uc3QgY1RvcDogbnVtYmVyID0gY1RhcmdldC5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCArIHRhcmdldC5zY3JvbGxUb3A7XG5cblx0XHRcdFx0XHRcdFx0cmV0dXJuIE1hdGguYWJzKGNUb3AgLSBzZWxlY3Rpb25MaW5lKSA8IE1hdGguYWJzKHBUb3AgLSBzZWxlY3Rpb25MaW5lKVxuXHRcdFx0XHRcdFx0XHRcdD8gY1RhcmdldFxuXHRcdFx0XHRcdFx0XHRcdDogcFRhcmdldDtcblx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdH0pLFxuXHRcdFx0XHRcdGZpbHRlcihpc1ByZXNlbnQpLFxuXHRcdFx0XHQpO1xuXG5cdFx0XHRcdGNvbnN0IHJvdXRlclNlbGVjdGlvbjogT2JzZXJ2YWJsZTxOZ0RvY1RvY0l0ZW0+ID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXG5cdFx0XHRcdFx0bWFwKChldmVudDogUkV2ZW50KSA9PiB7XG5cdFx0XHRcdFx0XHRpZiAoZXZlbnQgaW5zdGFuY2VvZiBTY3JvbGwpIHtcblx0XHRcdFx0XHRcdFx0Y29uc3QgaXRlbTogTmdEb2NUb2NJdGVtIHwgdW5kZWZpbmVkID0gdGhpcy50YWJsZU9mQ29udGVudC5maW5kKFxuXHRcdFx0XHRcdFx0XHRcdChpdGVtOiBOZ0RvY1RvY0l0ZW0pID0+IGl0ZW0ucGF0aC5pbmNsdWRlcyhldmVudC5yb3V0ZXJFdmVudC51cmwpLFxuXHRcdFx0XHRcdFx0XHQpO1xuXG5cdFx0XHRcdFx0XHRcdGlmIChpdGVtKSB7XG5cdFx0XHRcdFx0XHRcdFx0cmV0dXJuIGl0ZW07XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0cmV0dXJuIG51bGw7XG5cdFx0XHRcdFx0fSksXG5cdFx0XHRcdFx0ZmlsdGVyKGlzUHJlc2VudCksXG5cdFx0XHRcdFx0ZGVib3VuY2VUaW1lKDIwKSxcblx0XHRcdFx0KTtcblxuXHRcdFx0XHRjb25zdCBlbGVtZW50c0NoYW5nZXMgPSB0aGlzLmVsZW1lbnRzLmNoYW5nZXMucGlwZShcblx0XHRcdFx0XHRtYXAoKCkgPT4gdGhpcy5hY3RpdmVJdGVtKCkpLFxuXHRcdFx0XHRcdGZpbHRlcihpc1ByZXNlbnQpLFxuXHRcdFx0XHQpO1xuXG5cdFx0XHRcdG1lcmdlKG1lcmdlKHNjcm9sbFNlbGVjdGlvbiwgcm91dGVyU2VsZWN0aW9uKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLCBlbGVtZW50c0NoYW5nZXMpXG5cdFx0XHRcdFx0LnBpcGUoZGVib3VuY2VUaW1lKDApLCBuZ0RvY1pvbmVPcHRpbWl6ZSh0aGlzLm5nWm9uZSksIHVudGlsRGVzdHJveWVkKHRoaXMpKVxuXHRcdFx0XHRcdC5zdWJzY3JpYmUodGhpcy5zZWxlY3QuYmluZCh0aGlzKSk7XG5cdFx0XHR9LFxuXHRcdFx0eyBwaGFzZTogQWZ0ZXJSZW5kZXJQaGFzZS5Xcml0ZSB9LFxuXHRcdCk7XG5cdH1cblxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLmFjdGl2ZUl0ZW0uc2V0KHRoaXMudGFibGVPZkNvbnRlbnRbMF0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFNlbGVjdHMgdGhlIGl0ZW0gaW4gdGhlIHRhYmxlIG9mIGNvbnRlbnQuXG5cdCAqIEBwYXJhbSBpdGVtIC0gSXRlbSB0byBzZWxlY3QuXG5cdCAqL1xuXHRwcm90ZWN0ZWQgc2VsZWN0KGl0ZW06IE5nRG9jVG9jSXRlbSk6IHZvaWQge1xuXHRcdGNvbnN0IGluZGV4OiBudW1iZXIgPSB0aGlzLnRhYmxlT2ZDb250ZW50LmluZGV4T2YoaXRlbSk7XG5cblx0XHRpZiAodGhpcy5zZWxlY3Rpb24pIHtcblx0XHRcdGNvbnN0IGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkID1cblx0XHRcdFx0dGhpcy5lbGVtZW50cy50b0FycmF5KClbaW5kZXhdPy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cblx0XHRcdGlmIChlbGVtZW50KSB7XG5cdFx0XHRcdHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zZWxlY3Rpb24ubmF0aXZlRWxlbWVudCwgJ3RvcCcsIGAke2VsZW1lbnQub2Zmc2V0VG9wfXB4YCk7XG5cdFx0XHRcdHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zZWxlY3Rpb24ubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke2VsZW1lbnQub2Zmc2V0SGVpZ2h0fXB4YCk7XG5cblx0XHRcdFx0ZWxlbWVudC5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpcy5hY3RpdmVJdGVtLnNldChpdGVtKTtcblx0fVxufVxuIiwiPGRpdiBjbGFzcz1cIm5nLWRvYy10b2Mtd3JhcHBlclwiPlxuXHQ8ZGl2IGNsYXNzPVwibmctZG9jLXRvYy1jb250YWluZXJcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLXRvYy1zZWxlY3Rpb25cIiAjc2VsZWN0aW9uPjwvZGl2PlxuXHRcdDx1bCBjbGFzcz1cIm5nLWRvYy10b2NcIj5cblx0XHRcdEBmb3IgKGl0ZW0gb2YgdGFibGVPZkNvbnRlbnQ7IHRyYWNrIGl0ZW0pIHtcblx0XHRcdDxsaVxuXHRcdFx0XHRuZy1kb2MtdG9jLWVsZW1lbnRcblx0XHRcdFx0W2hyZWZdPVwiaXRlbS5wYXRoXCJcblx0XHRcdFx0W2xldmVsXT1cIml0ZW0ubGV2ZWxcIlxuXHRcdFx0XHRbc2VsZWN0ZWRdPVwiaXRlbSA9PT0gYWN0aXZlSXRlbSgpXCI+XG5cdFx0XHRcdHt7IGl0ZW0udGl0bGUgfX1cblx0XHRcdDwvbGk+XG5cdFx0XHR9XG5cdFx0PC91bD5cblx0PC9kaXY+XG48L2Rpdj5cbiJdfQ==
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL2NvbXBvbmVudHMvdG9jL3RvYy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3RvYy90b2MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUNOLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUVOLFNBQVMsRUFDVCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFNBQVMsRUFDVCxZQUFZLEdBRVosTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQixNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTVGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOztBQVd4RSxJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFpQjtJQWtCN0I7UUFoQkEsbUJBQWMsR0FBbUIsRUFB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QUksQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLEtBQUssRUFBRSxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDO2dCQUN0RixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUUsR0FBRyxPQUFPLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQztnQkFFNUYsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1lBQzlDLENBQUM7UUFDRixDQUFDO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQzs4R0F0R1csaUJBQWlCO2tHQUFqQixpQkFBaUIsdU1BSUcsVUFBVSwyQ0FHNUIsd0JBQXdCLGdEQzdDdkMsMGVBaUJBLGsyQkRrQmtCLHdCQUF3Qjs7QUFHN0IsaUJBQWlCO0lBRDdCLFlBQVksRUFBRTs7R0FDRixpQkFBaUIsQ0F1RzdCOzsyRkF2R1ksaUJBQWlCO2tCQVQ3QixTQUFTOytCQUNDLFlBQVksbUJBR0wsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsd0JBQXdCLENBQUM7d0RBS3BFLGNBQWM7c0JBRGIsS0FBSztnQkFJTixTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFJNUMsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5ULCBOZ0ZvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuXHRhZnRlck5leHRSZW5kZXIsXG5cdEFmdGVyUmVuZGVyUGhhc2UsXG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDaGFuZ2VEZXRlY3RvclJlZixcblx0Q29tcG9uZW50LFxuXHRFbGVtZW50UmVmLFxuXHRpbmplY3QsXG5cdElucHV0LFxuXHROZ1pvbmUsXG5cdE9uSW5pdCxcblx0UXVlcnlMaXN0LFxuXHRSZW5kZXJlcjIsXG5cdHNpZ25hbCxcblx0Vmlld0NoaWxkLFxuXHRWaWV3Q2hpbGRyZW4sXG5cdFdyaXRhYmxlU2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV2ZW50IGFzIFJFdmVudCwgUm91dGVyLCBTY3JvbGwgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTmdEb2NQYWdlVG9jLCBOZ0RvY1RvY0l0ZW0gfSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGlzUHJlc2VudCB9IGZyb20gJ0BuZy1kb2MvY29yZS9oZWxwZXJzL2lzLXByZXNlbnQnO1xuaW1wb3J0IHsgTmdEb2NNZWRpYVF1ZXJ5RGlyZWN0aXZlLCBuZ0RvY1pvbmVPcHRpbWl6ZSB9IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcbmltcG9ydCB7IFVudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBtZXJnZSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTmdEb2NUb2NFbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi90b2MtZWxlbWVudC90b2MtZWxlbWVudC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZy1kb2MtdG9jJyxcblx0dGVtcGxhdGVVcmw6ICcuL3RvYy5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL3RvYy5jb21wb25lbnQuc2NzcyddLFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW05nRm9yLCBOZ0RvY1RvY0VsZW1lbnRDb21wb25lbnQsIE5nRG9jTWVkaWFRdWVyeURpcmVjdGl2ZV0sXG59KVxuQFVudGlsRGVzdHJveSgpXG5leHBvcnQgY2xhc3MgTmdEb2NUb2NDb21wb25lbnQgaW1wbGVtZW50cyBOZ0RvY1BhZ2VUb2MsIE9uSW5pdCB7XG5cdEBJbnB1dCgpXG5cdHRhYmxlT2ZDb250ZW50OiBOZ0RvY1RvY0l0ZW1bXSA9IFtdO1xuXG5cdEBWaWV3Q2hpbGQoJ3NlbGVjdGlvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuXHRzZWxlY3Rpb24/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuXHRAVmlld0NoaWxkcmVuKE5nRG9jVG9jRWxlbWVudENvbXBvbmVudClcblx0ZWxlbWVudHM6IFF1ZXJ5TGlzdDxOZ0RvY1RvY0VsZW1lbnRDb21wb25lbnQ+ID0gbmV3IFF1ZXJ5TGlzdDxOZ0RvY1RvY0VsZW1lbnRDb21wb25lbnQ+KCk7XG5cblx0YWN0aXZlSXRlbTogV3JpdGFibGVTaWduYWw8TmdEb2NUb2NJdGVtIHwgdW5kZWZpbmVkPiA9IHNpZ25hbCh1bmRlZmluZWQpO1xuXG5cdHByb3RlY3RlZCByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXHRwcm90ZWN0ZWQgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUgPSBpbmplY3QoTmdab25lKTtcblx0cHJvdGVjdGVkIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cdHByb3RlY3RlZCByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyID0gaW5qZWN0KFJlbmRlcmVyMik7XG5cdHByb3RlY3RlZCByZWFkb25seSByb3V0ZXI6IFJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGFmdGVyTmV4dFJlbmRlcihcblx0XHRcdCgpID0+IHtcblx0XHRcdFx0Y29uc3Qgc2Nyb2xsU2VsZWN0aW9uOiBPYnNlcnZhYmxlPE5nRG9jVG9jSXRlbT4gPSBmcm9tRXZlbnQodGhpcy5kb2N1bWVudCwgJ3Njcm9sbCcpLnBpcGUoXG5cdFx0XHRcdFx0ZmlsdGVyKCgpID0+ICEhdGhpcy50YWJsZU9mQ29udGVudC5sZW5ndGgpLFxuXHRcdFx0XHRcdG1hcCgoZXZlbnQ6IEV2ZW50KSA9PiAoZXZlbnQudGFyZ2V0IGFzIERvY3VtZW50KS5zY3JvbGxpbmdFbGVtZW50IGFzIEhUTUxFbGVtZW50KSxcblx0XHRcdFx0XHRzdGFydFdpdGgodGhpcy5kb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50IGFzIEhUTUxFbGVtZW50KSxcblx0XHRcdFx0XHRtYXAoKHRhcmdldDogSFRNTEVsZW1lbnQpID0+IHtcblx0XHRcdFx0XHRcdGNvbnN0IHBlcmNlbnRhZ2U6IG51bWJlciA9XG5cdFx0XHRcdFx0XHRcdCh0YXJnZXQuc2Nyb2xsVG9wICogMTAwKSAvICh0YXJnZXQuc2Nyb2xsSGVpZ2h0IC0gdGFyZ2V0Lm9mZnNldEhlaWdodCk7XG5cdFx0XHRcdFx0XHRjb25zdCBzZWxlY3Rpb25MaW5lOiBudW1iZXIgPVxuXHRcdFx0XHRcdFx0XHR0YXJnZXQuc2Nyb2xsVG9wICsgKHRhcmdldC5vZmZzZXRIZWlnaHQgKiBwZXJjZW50YWdlKSAvIDEwMDtcblxuXHRcdFx0XHRcdFx0aWYgKCF0aGlzLnRhYmxlT2ZDb250ZW50Lmxlbmd0aCkge1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gbnVsbDtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0cmV0dXJuIHRoaXMudGFibGVPZkNvbnRlbnQucmVkdWNlKChwVGFyZ2V0OiBOZ0RvY1RvY0l0ZW0sIGNUYXJnZXQ6IE5nRG9jVG9jSXRlbSkgPT4ge1xuXHRcdFx0XHRcdFx0XHRjb25zdCBwVG9wOiBudW1iZXIgPSBwVGFyZ2V0LmVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wICsgdGFyZ2V0LnNjcm9sbFRvcDtcblx0XHRcdFx0XHRcdFx0Y29uc3QgY1RvcDogbnVtYmVyID0gY1RhcmdldC5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCArIHRhcmdldC5zY3JvbGxUb3A7XG5cblx0XHRcdFx0XHRcdFx0cmV0dXJuIE1hdGguYWJzKGNUb3AgLSBzZWxlY3Rpb25MaW5lKSA8IE1hdGguYWJzKHBUb3AgLSBzZWxlY3Rpb25MaW5lKVxuXHRcdFx0XHRcdFx0XHRcdD8gY1RhcmdldFxuXHRcdFx0XHRcdFx0XHRcdDogcFRhcmdldDtcblx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdH0pLFxuXHRcdFx0XHRcdGZpbHRlcihpc1ByZXNlbnQpLFxuXHRcdFx0XHQpO1xuXG5cdFx0XHRcdGNvbnN0IHJvdXRlclNlbGVjdGlvbjogT2JzZXJ2YWJsZTxOZ0RvY1RvY0l0ZW0+ID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXG5cdFx0XHRcdFx0bWFwKChldmVudDogUkV2ZW50KSA9PiB7XG5cdFx0XHRcdFx0XHRpZiAoZXZlbnQgaW5zdGFuY2VvZiBTY3JvbGwpIHtcblx0XHRcdFx0XHRcdFx0Y29uc3QgaXRlbTogTmdEb2NUb2NJdGVtIHwgdW5kZWZpbmVkID0gdGhpcy50YWJsZU9mQ29udGVudC5maW5kKFxuXHRcdFx0XHRcdFx0XHRcdChpdGVtOiBOZ0RvY1RvY0l0ZW0pID0+IGl0ZW0ucGF0aC5pbmNsdWRlcyhldmVudC5yb3V0ZXJFdmVudC51cmwpLFxuXHRcdFx0XHRcdFx0XHQpO1xuXG5cdFx0XHRcdFx0XHRcdGlmIChpdGVtKSB7XG5cdFx0XHRcdFx0XHRcdFx0cmV0dXJuIGl0ZW07XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0cmV0dXJuIG51bGw7XG5cdFx0XHRcdFx0fSksXG5cdFx0XHRcdFx0ZmlsdGVyKGlzUHJlc2VudCksXG5cdFx0XHRcdFx0ZGVib3VuY2VUaW1lKDIwKSxcblx0XHRcdFx0KTtcblxuXHRcdFx0XHRjb25zdCBlbGVtZW50c0NoYW5nZXMgPSB0aGlzLmVsZW1lbnRzLmNoYW5nZXMucGlwZShcblx0XHRcdFx0XHRtYXAoKCkgPT4gdGhpcy5hY3RpdmVJdGVtKCkpLFxuXHRcdFx0XHRcdGZpbHRlcihpc1ByZXNlbnQpLFxuXHRcdFx0XHQpO1xuXG5cdFx0XHRcdG1lcmdlKG1lcmdlKHNjcm9sbFNlbGVjdGlvbiwgcm91dGVyU2VsZWN0aW9uKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLCBlbGVtZW50c0NoYW5nZXMpXG5cdFx0XHRcdFx0LnBpcGUoZGVib3VuY2VUaW1lKDApLCBuZ0RvY1pvbmVPcHRpbWl6ZSh0aGlzLm5nWm9uZSksIHVudGlsRGVzdHJveWVkKHRoaXMpKVxuXHRcdFx0XHRcdC5zdWJzY3JpYmUodGhpcy5zZWxlY3QuYmluZCh0aGlzKSk7XG5cdFx0XHR9LFxuXHRcdFx0eyBwaGFzZTogQWZ0ZXJSZW5kZXJQaGFzZS5Xcml0ZSB9LFxuXHRcdCk7XG5cdH1cblxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLmFjdGl2ZUl0ZW0uc2V0KHRoaXMudGFibGVPZkNvbnRlbnRbMF0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFNlbGVjdHMgdGhlIGl0ZW0gaW4gdGhlIHRhYmxlIG9mIGNvbnRlbnQuXG5cdCAqIEBwYXJhbSBpdGVtIC0gSXRlbSB0byBzZWxlY3QuXG5cdCAqL1xuXHRwcm90ZWN0ZWQgc2VsZWN0KGl0ZW06IE5nRG9jVG9jSXRlbSk6IHZvaWQge1xuXHRcdGNvbnN0IGluZGV4OiBudW1iZXIgPSB0aGlzLnRhYmxlT2ZDb250ZW50LmluZGV4T2YoaXRlbSk7XG5cblx0XHRpZiAodGhpcy5zZWxlY3Rpb24pIHtcblx0XHRcdGNvbnN0IGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkID1cblx0XHRcdFx0dGhpcy5lbGVtZW50cy50b0FycmF5KClbaW5kZXhdPy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cblx0XHRcdGlmIChlbGVtZW50KSB7XG5cdFx0XHRcdHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zZWxlY3Rpb24ubmF0aXZlRWxlbWVudCwgJ3RvcCcsIGAke2VsZW1lbnQub2Zmc2V0VG9wfXB4YCk7XG5cdFx0XHRcdHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zZWxlY3Rpb24ubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke2VsZW1lbnQub2Zmc2V0SGVpZ2h0fXB4YCk7XG5cblx0XHRcdFx0ZWxlbWVudC5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpcy5hY3RpdmVJdGVtLnNldChpdGVtKTtcblx0fVxufVxuIiwiPGRpdiBjbGFzcz1cIm5nLWRvYy10b2Mtd3JhcHBlclwiPlxuXHQ8ZGl2IGNsYXNzPVwibmctZG9jLXRvYy1jb250YWluZXJcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLXRvYy1zZWxlY3Rpb25cIiAjc2VsZWN0aW9uPjwvZGl2PlxuXHRcdDx1bCBjbGFzcz1cIm5nLWRvYy10b2NcIj5cblx0XHRcdEBmb3IgKGl0ZW0gb2YgdGFibGVPZkNvbnRlbnQ7IHRyYWNrIGl0ZW0pIHtcblx0XHRcdFx0PGxpXG5cdFx0XHRcdFx0bmctZG9jLXRvYy1lbGVtZW50XG5cdFx0XHRcdFx0W3BhdGhdPVwiaXRlbS5wYXRoXCJcblx0XHRcdFx0XHRbaGFzaF09XCJpdGVtLmhhc2hcIlxuXHRcdFx0XHRcdFtsZXZlbF09XCJpdGVtLmxldmVsXCJcblx0XHRcdFx0XHRbc2VsZWN0ZWRdPVwiaXRlbSA9PT0gYWN0aXZlSXRlbSgpXCI+XG5cdFx0XHRcdFx0e3sgaXRlbS50aXRsZSB9fVxuXHRcdFx0XHQ8L2xpPlxuXHRcdFx0fVxuXHRcdDwvdWw+XG5cdDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -21,10 +21,10 @@ export class NgDocCodeHighlighterDirective {
21
21
  this.elementRef.nativeElement.innerHTML = this.html;
22
22
  }
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocCodeHighlighterDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
25
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: NgDocCodeHighlighterDirective, isStandalone: true, selector: "code[ngDocCodeHighlighter]", inputs: { code: ["ngDocCodeHighlighter", "code"], html: "html", language: "language" }, host: { properties: { "class.hljs": "this.highlightJsClass" } }, usesOnChanges: true, ngImport: i0 }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocCodeHighlighterDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
25
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: NgDocCodeHighlighterDirective, isStandalone: true, selector: "code[ngDocCodeHighlighter]", inputs: { code: ["ngDocCodeHighlighter", "code"], html: "html", language: "language" }, host: { properties: { "class.hljs": "this.highlightJsClass" } }, usesOnChanges: true, ngImport: i0 }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocCodeHighlighterDirective, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocCodeHighlighterDirective, decorators: [{
28
28
  type: Directive,
29
29
  args: [{
30
30
  selector: 'code[ngDocCodeHighlighter]',
@@ -27,8 +27,8 @@ let NgDocRouteActiveDirective = class NgDocRouteActiveDirective {
27
27
  : asArray(this.activeClass).forEach((cls) => this.renderer.removeClass(this.elementRef.nativeElement, cls));
28
28
  });
29
29
  }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocRouteActiveDirective, deps: [{ token: i0.ElementRef }, { token: i1.Router }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
31
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: NgDocRouteActiveDirective, isStandalone: true, selector: "[ngDocRouteActive]", inputs: { link: ["ngDocRouteActive", "link"], activeClass: "activeClass", matchOptions: "matchOptions" }, ngImport: i0 }); }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocRouteActiveDirective, deps: [{ token: i0.ElementRef }, { token: i1.Router }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
31
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: NgDocRouteActiveDirective, isStandalone: true, selector: "[ngDocRouteActive]", inputs: { link: ["ngDocRouteActive", "link"], activeClass: "activeClass", matchOptions: "matchOptions" }, ngImport: i0 }); }
32
32
  };
33
33
  NgDocRouteActiveDirective = __decorate([
34
34
  UntilDestroy(),
@@ -37,7 +37,7 @@ NgDocRouteActiveDirective = __decorate([
37
37
  Renderer2])
38
38
  ], NgDocRouteActiveDirective);
39
39
  export { NgDocRouteActiveDirective };
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NgDocRouteActiveDirective, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NgDocRouteActiveDirective, decorators: [{
41
41
  type: Directive,
42
42
  args: [{
43
43
  selector: '[ngDocRouteActive]',
@@ -15,7 +15,8 @@ export function generateToc(container) {
15
15
  map.push({
16
16
  title: heading.textContent?.trim() ?? '',
17
17
  element: heading,
18
- path: anchor.pathname + anchor.hash,
18
+ path: anchor.pathname,
19
+ hash: anchor.hash.replace('#', ''),
19
20
  level: levels.indexOf(headingLevel) + 1,
20
21
  });
21
22
  }
@@ -29,4 +30,4 @@ export function generateToc(container) {
29
30
  function levelFromTagName(heading) {
30
31
  return Number(heading.tagName.toLowerCase().replace(/[a-z]*/g, '') || 1);
31
32
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtdG9jLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvaGVscGVycy9nZW5lcmF0ZS10b2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBR3hEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLFNBQXNCO0lBQ2pELE1BQU0sUUFBUSxHQUFtQixDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFdEUsTUFBTSxlQUFlLEdBQXlCLEtBQUssQ0FBQyxJQUFJLENBQ3ZELFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBcUIsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUNuRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQTJCLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUV0RCxNQUFNLE1BQU0sR0FBYSxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUV4RixPQUFPLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFtQixFQUFFLE9BQTJCLEVBQUUsRUFBRTtRQUNsRixNQUFNLFlBQVksR0FBVyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2RCxNQUFNLE1BQU0sR0FDWCxPQUFPLENBQUMsYUFBYSxDQUFvQixzQkFBc0IsQ0FBQyxDQUFDO1FBRWxFLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWixHQUFHLENBQUMsSUFBSSxDQUFDO2dCQUNSLEtBQUssRUFBRSxPQUFPLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7Z0JBQ3hDLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixJQUFJLEVBQUUsTUFBTSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSTtnQkFDbkMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQzthQUN2QyxDQUFDLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxHQUFHLENBQUM7SUFDWixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDUixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxnQkFBZ0IsQ0FBQyxPQUEyQjtJQUNwRCxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDMUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nRG9jVG9jSXRlbSB9IGZyb20gJ0BuZy1kb2MvYXBwL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgYXNBcnJheSB9IGZyb20gJ0BuZy1kb2MvY29yZS9oZWxwZXJzL2FzLWFycmF5JztcbmltcG9ydCB7IE5nRG9jSGVhZGluZyB9IGZyb20gJ0BuZy1kb2MvY29yZS90eXBlcyc7XG5cbi8qKlxuICogR2VuZXJhdGUgdGFibGUgb2YgY29udGVudHMsIG9ubHkgZm9yIGhlYWRpbmdzIHdpdGggaWRcbiAqIEBwYXJhbSBjb250YWluZXJcbiAqIEBwYXJhbSBoZWFkaW5nc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVUb2MoY29udGFpbmVyOiBIVE1MRWxlbWVudCk6IE5nRG9jVG9jSXRlbVtdIHtcblx0Y29uc3QgaGVhZGluZ3M6IE5nRG9jSGVhZGluZ1tdID0gWydoMScsICdoMicsICdoMycsICdoNCcsICdoNScsICdoNiddO1xuXG5cdGNvbnN0IGhlYWRpbmdFbGVtZW50czogSFRNTEhlYWRpbmdFbGVtZW50W10gPSBBcnJheS5mcm9tKFxuXHRcdGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yQWxsPEhUTUxIZWFkaW5nRWxlbWVudD4oaGVhZGluZ3Muam9pbignLCAnKSksXG5cdCkuZmlsdGVyKChoZWFkaW5nOiBIVE1MSGVhZGluZ0VsZW1lbnQpID0+IGhlYWRpbmcuaWQpO1xuXG5cdGNvbnN0IGxldmVsczogbnVtYmVyW10gPSBhc0FycmF5KG5ldyBTZXQoaGVhZGluZ0VsZW1lbnRzLm1hcChsZXZlbEZyb21UYWdOYW1lKS5zb3J0KCkpKTtcblxuXHRyZXR1cm4gaGVhZGluZ0VsZW1lbnRzLnJlZHVjZSgobWFwOiBOZ0RvY1RvY0l0ZW1bXSwgaGVhZGluZzogSFRNTEhlYWRpbmdFbGVtZW50KSA9PiB7XG5cdFx0Y29uc3QgaGVhZGluZ0xldmVsOiBudW1iZXIgPSBsZXZlbEZyb21UYWdOYW1lKGhlYWRpbmcpO1xuXHRcdGNvbnN0IGFuY2hvcjogSFRNTEFuY2hvckVsZW1lbnQgfCBudWxsID1cblx0XHRcdGhlYWRpbmcucXVlcnlTZWxlY3RvcjxIVE1MQW5jaG9yRWxlbWVudD4oJ2EubmctZG9jLWhlYWRlci1saW5rJyk7XG5cblx0XHRpZiAoYW5jaG9yKSB7XG5cdFx0XHRtYXAucHVzaCh7XG5cdFx0XHRcdHRpdGxlOiBoZWFkaW5nLnRleHRDb250ZW50Py50cmltKCkgPz8gJycsXG5cdFx0XHRcdGVsZW1lbnQ6IGhlYWRpbmcsXG5cdFx0XHRcdHBhdGg6IGFuY2hvci5wYXRobmFtZSArIGFuY2hvci5oYXNoLFxuXHRcdFx0XHRsZXZlbDogbGV2ZWxzLmluZGV4T2YoaGVhZGluZ0xldmVsKSArIDEsXG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRyZXR1cm4gbWFwO1xuXHR9LCBbXSk7XG59XG5cbi8qKlxuICpcbiAqIEBwYXJhbSBoZWFkaW5nXG4gKi9cbmZ1bmN0aW9uIGxldmVsRnJvbVRhZ05hbWUoaGVhZGluZzogSFRNTEhlYWRpbmdFbGVtZW50KTogbnVtYmVyIHtcblx0cmV0dXJuIE51bWJlcihoZWFkaW5nLnRhZ05hbWUudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9bYS16XSovZywgJycpIHx8IDEpO1xufVxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtdG9jLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvaGVscGVycy9nZW5lcmF0ZS10b2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBR3hEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLFNBQXNCO0lBQ2pELE1BQU0sUUFBUSxHQUFtQixDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFdEUsTUFBTSxlQUFlLEdBQXlCLEtBQUssQ0FBQyxJQUFJLENBQ3ZELFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBcUIsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUNuRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQTJCLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUV0RCxNQUFNLE1BQU0sR0FBYSxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUV4RixPQUFPLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFtQixFQUFFLE9BQTJCLEVBQUUsRUFBRTtRQUNsRixNQUFNLFlBQVksR0FBVyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2RCxNQUFNLE1BQU0sR0FDWCxPQUFPLENBQUMsYUFBYSxDQUFvQixzQkFBc0IsQ0FBQyxDQUFDO1FBRWxFLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWixHQUFHLENBQUMsSUFBSSxDQUFDO2dCQUNSLEtBQUssRUFBRSxPQUFPLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7Z0JBQ3hDLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixJQUFJLEVBQUUsTUFBTSxDQUFDLFFBQVE7Z0JBQ3JCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDO2dCQUNsQyxLQUFLLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDO2FBQ3ZDLENBQUMsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNaLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNSLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLGdCQUFnQixDQUFDLE9BQTJCO0lBQ3BELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUMxRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdEb2NUb2NJdGVtIH0gZnJvbSAnQG5nLWRvYy9hcHAvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBhc0FycmF5IH0gZnJvbSAnQG5nLWRvYy9jb3JlL2hlbHBlcnMvYXMtYXJyYXknO1xuaW1wb3J0IHsgTmdEb2NIZWFkaW5nIH0gZnJvbSAnQG5nLWRvYy9jb3JlL3R5cGVzJztcblxuLyoqXG4gKiBHZW5lcmF0ZSB0YWJsZSBvZiBjb250ZW50cywgb25seSBmb3IgaGVhZGluZ3Mgd2l0aCBpZFxuICogQHBhcmFtIGNvbnRhaW5lclxuICogQHBhcmFtIGhlYWRpbmdzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVRvYyhjb250YWluZXI6IEhUTUxFbGVtZW50KTogTmdEb2NUb2NJdGVtW10ge1xuXHRjb25zdCBoZWFkaW5nczogTmdEb2NIZWFkaW5nW10gPSBbJ2gxJywgJ2gyJywgJ2gzJywgJ2g0JywgJ2g1JywgJ2g2J107XG5cblx0Y29uc3QgaGVhZGluZ0VsZW1lbnRzOiBIVE1MSGVhZGluZ0VsZW1lbnRbXSA9IEFycmF5LmZyb20oXG5cdFx0Y29udGFpbmVyLnF1ZXJ5U2VsZWN0b3JBbGw8SFRNTEhlYWRpbmdFbGVtZW50PihoZWFkaW5ncy5qb2luKCcsICcpKSxcblx0KS5maWx0ZXIoKGhlYWRpbmc6IEhUTUxIZWFkaW5nRWxlbWVudCkgPT4gaGVhZGluZy5pZCk7XG5cblx0Y29uc3QgbGV2ZWxzOiBudW1iZXJbXSA9IGFzQXJyYXkobmV3IFNldChoZWFkaW5nRWxlbWVudHMubWFwKGxldmVsRnJvbVRhZ05hbWUpLnNvcnQoKSkpO1xuXG5cdHJldHVybiBoZWFkaW5nRWxlbWVudHMucmVkdWNlKChtYXA6IE5nRG9jVG9jSXRlbVtdLCBoZWFkaW5nOiBIVE1MSGVhZGluZ0VsZW1lbnQpID0+IHtcblx0XHRjb25zdCBoZWFkaW5nTGV2ZWw6IG51bWJlciA9IGxldmVsRnJvbVRhZ05hbWUoaGVhZGluZyk7XG5cdFx0Y29uc3QgYW5jaG9yOiBIVE1MQW5jaG9yRWxlbWVudCB8IG51bGwgPVxuXHRcdFx0aGVhZGluZy5xdWVyeVNlbGVjdG9yPEhUTUxBbmNob3JFbGVtZW50PignYS5uZy1kb2MtaGVhZGVyLWxpbmsnKTtcblxuXHRcdGlmIChhbmNob3IpIHtcblx0XHRcdG1hcC5wdXNoKHtcblx0XHRcdFx0dGl0bGU6IGhlYWRpbmcudGV4dENvbnRlbnQ/LnRyaW0oKSA/PyAnJyxcblx0XHRcdFx0ZWxlbWVudDogaGVhZGluZyxcblx0XHRcdFx0cGF0aDogYW5jaG9yLnBhdGhuYW1lLFxuXHRcdFx0XHRoYXNoOiBhbmNob3IuaGFzaC5yZXBsYWNlKCcjJywgJycpLFxuXHRcdFx0XHRsZXZlbDogbGV2ZWxzLmluZGV4T2YoaGVhZGluZ0xldmVsKSArIDEsXG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRyZXR1cm4gbWFwO1xuXHR9LCBbXSk7XG59XG5cbi8qKlxuICpcbiAqIEBwYXJhbSBoZWFkaW5nXG4gKi9cbmZ1bmN0aW9uIGxldmVsRnJvbVRhZ05hbWUoaGVhZGluZzogSFRNTEhlYWRpbmdFbGVtZW50KTogbnVtYmVyIHtcblx0cmV0dXJuIE51bWJlcihoZWFkaW5nLnRhZ05hbWUudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9bYS16XSovZywgJycpIHx8IDEpO1xufVxuIl19