@ng-doc/app 17.1.3 → 17.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/page/page.component.d.ts +4 -3
- package/components/page-link/page-link.component.d.ts +3 -3
- package/components/toc/toc-element/toc-element.component.d.ts +1 -2
- package/components/toc/toc.component.d.ts +5 -4
- package/esm2022/components/api-list/api-list.component.mjs +3 -3
- package/esm2022/components/breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2022/components/code/code.component.mjs +5 -7
- package/esm2022/components/demo/demo.component.mjs +3 -3
- package/esm2022/components/demo-displayer/demo-displayer.component.mjs +3 -3
- package/esm2022/components/demo-pane/demo-pane.component.mjs +3 -3
- package/esm2022/components/fullscreen-button/fullscreen-button.component.mjs +3 -3
- package/esm2022/components/kind-icon/kind-icon.component.mjs +3 -3
- package/esm2022/components/link/link.component.mjs +3 -3
- package/esm2022/components/navbar/navbar.component.mjs +17 -15
- package/esm2022/components/page/page.component.mjs +15 -18
- package/esm2022/components/page-link/page-link.component.mjs +10 -9
- package/esm2022/components/page-navigation/page-navigation.component.mjs +3 -3
- package/esm2022/components/playground/base-playground.mjs +3 -3
- package/esm2022/components/playground/playground-demo/playground-demo.component.mjs +3 -3
- package/esm2022/components/playground/playground-properties/playground-properties.component.mjs +3 -3
- package/esm2022/components/playground/playground-property/playground-property.component.mjs +3 -3
- package/esm2022/components/playground/playground.component.mjs +3 -3
- package/esm2022/components/root/root.component.mjs +9 -9
- package/esm2022/components/search/search.component.mjs +3 -3
- package/esm2022/components/search-result/search-result.component.mjs +3 -3
- package/esm2022/components/sidebar/sidebar-category/sidebar-category.component.mjs +3 -3
- package/esm2022/components/sidebar/sidebar-item/sidebar-item.component.mjs +3 -3
- package/esm2022/components/sidebar/sidebar.component.mjs +5 -5
- package/esm2022/components/tabs/tabs.component.mjs +3 -3
- package/esm2022/components/theme-toggle/theme-toggle.component.mjs +3 -3
- package/esm2022/components/toc/toc-element/toc-element.component.mjs +8 -8
- package/esm2022/components/toc/toc.component.mjs +43 -39
- package/esm2022/directives/code-highlighter/code-highlighter.directive.mjs +3 -3
- package/esm2022/directives/route-active/route-active.directive.mjs +3 -3
- package/esm2022/helpers/create-component.mjs +1 -2
- package/esm2022/interfaces/page-processor.mjs +1 -1
- package/esm2022/pipes/extract-value/extract-value.pipe.mjs +3 -3
- package/esm2022/pipes/filter-by-text/filter-by-text.pipe.mjs +3 -3
- package/esm2022/pipes/sanitize-html/sanitize-html.pipe.mjs +3 -3
- package/esm2022/processors/page-processor/page-processor.directive.mjs +19 -13
- package/esm2022/processors/processors/icon.processor.mjs +2 -2
- package/esm2022/processors/processors/tabs.processor.mjs +5 -3
- package/esm2022/processors/processors/tooltip.processor.mjs +3 -3
- package/esm2022/providers/ng-doc-app/provide-ng-doc-app.mjs +5 -5
- package/esm2022/services/sidebar/sidebar.service.mjs +3 -3
- package/esm2022/services/store/store.service.mjs +13 -7
- package/esm2022/services/theme/theme.service.mjs +12 -9
- package/esm2022/type-controls/boolean-control/boolean-control.component.mjs +3 -3
- package/esm2022/type-controls/number-control/number-control.component.mjs +3 -3
- package/esm2022/type-controls/string-control/string-control.component.mjs +3 -3
- package/esm2022/type-controls/type-alias-control/type-alias-control.component.mjs +3 -3
- package/fesm2022/ng-doc-app-components-api-list.mjs +3 -3
- package/fesm2022/ng-doc-app-components-breadcrumb.mjs +3 -3
- package/fesm2022/ng-doc-app-components-code.mjs +4 -6
- package/fesm2022/ng-doc-app-components-code.mjs.map +1 -1
- package/fesm2022/ng-doc-app-components-demo-displayer.mjs +3 -3
- package/fesm2022/ng-doc-app-components-demo-pane.mjs +3 -3
- package/fesm2022/ng-doc-app-components-demo.mjs +3 -3
- package/fesm2022/ng-doc-app-components-fullscreen-button.mjs +3 -3
- package/fesm2022/ng-doc-app-components-kind-icon.mjs +3 -3
- package/fesm2022/ng-doc-app-components-link.mjs +3 -3
- package/fesm2022/ng-doc-app-components-navbar.mjs +16 -14
- package/fesm2022/ng-doc-app-components-navbar.mjs.map +1 -1
- package/fesm2022/ng-doc-app-components-page-link.mjs +9 -8
- package/fesm2022/ng-doc-app-components-page-link.mjs.map +1 -1
- package/fesm2022/ng-doc-app-components-page-navigation.mjs +3 -3
- package/fesm2022/ng-doc-app-components-page.mjs +14 -17
- package/fesm2022/ng-doc-app-components-page.mjs.map +1 -1
- package/fesm2022/ng-doc-app-components-playground.mjs +15 -15
- package/fesm2022/ng-doc-app-components-root.mjs +9 -9
- package/fesm2022/ng-doc-app-components-search-result.mjs +3 -3
- package/fesm2022/ng-doc-app-components-search.mjs +3 -3
- package/fesm2022/ng-doc-app-components-sidebar.mjs +10 -10
- package/fesm2022/ng-doc-app-components-sidebar.mjs.map +1 -1
- package/fesm2022/ng-doc-app-components-tabs.mjs +3 -3
- package/fesm2022/ng-doc-app-components-theme-toggle.mjs +3 -3
- package/fesm2022/ng-doc-app-components-toc.mjs +48 -44
- package/fesm2022/ng-doc-app-components-toc.mjs.map +1 -1
- package/fesm2022/ng-doc-app-directives-code-highlighter.mjs +3 -3
- package/fesm2022/ng-doc-app-directives-route-active.mjs +3 -3
- package/fesm2022/ng-doc-app-helpers.mjs +0 -1
- package/fesm2022/ng-doc-app-helpers.mjs.map +1 -1
- package/fesm2022/ng-doc-app-pipes-extract-value.mjs +3 -3
- package/fesm2022/ng-doc-app-pipes-filter-by-text.mjs +3 -3
- package/fesm2022/ng-doc-app-pipes-sanitize-html.mjs +3 -3
- package/fesm2022/ng-doc-app-processors-page-processor.mjs +18 -12
- package/fesm2022/ng-doc-app-processors-page-processor.mjs.map +1 -1
- package/fesm2022/ng-doc-app-processors-processors.mjs +9 -8
- package/fesm2022/ng-doc-app-processors-processors.mjs.map +1 -1
- package/fesm2022/ng-doc-app-providers-ng-doc-app.mjs +4 -4
- package/fesm2022/ng-doc-app-providers-ng-doc-app.mjs.map +1 -1
- package/fesm2022/ng-doc-app-services-sidebar.mjs +3 -3
- package/fesm2022/ng-doc-app-services-store.mjs +12 -6
- package/fesm2022/ng-doc-app-services-store.mjs.map +1 -1
- package/fesm2022/ng-doc-app-services-theme.mjs +11 -8
- package/fesm2022/ng-doc-app-services-theme.mjs.map +1 -1
- package/fesm2022/ng-doc-app-type-controls-boolean-control.mjs +3 -3
- package/fesm2022/ng-doc-app-type-controls-number-control.mjs +3 -3
- package/fesm2022/ng-doc-app-type-controls-string-control.mjs +3 -3
- package/fesm2022/ng-doc-app-type-controls-type-alias-control.mjs +3 -3
- package/interfaces/page-processor.d.ts +3 -2
- package/package.json +3 -3
- package/processors/page-processor/page-processor.directive.d.ts +7 -6
- package/services/store/store.service.d.ts +1 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
2
|
import { AsyncPipe, NgIf } from '@angular/common';
|
|
3
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostBinding, Inject, Input, NgZone, } from '@angular/core';
|
|
3
|
+
import { afterNextRender, ChangeDetectionStrategy, ChangeDetectorRef, Component, HostBinding, Inject, Input, NgZone, } from '@angular/core';
|
|
4
4
|
import { NgDocSearchComponent } from '@ng-doc/app/components/search';
|
|
5
5
|
import { NgDocSidebarService } from '@ng-doc/app/services';
|
|
6
6
|
import { NgDocButtonIconComponent, NgDocIconComponent, NgDocLetDirective, ngDocZoneOptimize, } from '@ng-doc/ui-kit';
|
|
@@ -49,19 +49,21 @@ let NgDocNavbarComponent = class NgDocNavbarComponent {
|
|
|
49
49
|
* Indicates if navbar has shadow
|
|
50
50
|
*/
|
|
51
51
|
this.hasShadow = false;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
52
|
+
afterNextRender(() => {
|
|
53
|
+
combineLatest([
|
|
54
|
+
fromEvent(this.window, 'scroll').pipe(map((e) => (e.target?.scrollingElement?.scrollTop ?? 0) > 0), distinctUntilChanged(), startWith(false), ngDocZoneOptimize(this.ngZone)),
|
|
55
|
+
this.sidebarService.isMobileMode(),
|
|
56
|
+
this.sidebarService.isExpanded(),
|
|
57
|
+
])
|
|
58
|
+
.pipe(map(([scrolled, isMobileMode, isExpanded]) => scrolled || (isMobileMode && isExpanded)), untilDestroyed(this))
|
|
59
|
+
.subscribe((hasShadow) => {
|
|
60
|
+
this.hasShadow = hasShadow;
|
|
61
|
+
this.changeDetectorRef.markForCheck();
|
|
62
|
+
});
|
|
61
63
|
});
|
|
62
64
|
}
|
|
63
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
64
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocNavbarComponent, deps: [{ token: WINDOW }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i1.NgDocSidebarService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.7", type: NgDocNavbarComponent, isStandalone: true, selector: "ng-doc-navbar", inputs: { leftContent: "leftContent", centerContent: "centerContent", rightContent: "rightContent", search: "search", hamburger: "hamburger", glassEffect: "glassEffect" }, host: { attributes: { "ngSkipHydration": "true" }, properties: { "attr.data-glass-effect": "this.glassEffect", "class.has-shadow": "this.hasShadow" } }, ngImport: i0, template: "<div class=\"navbar-container\" *ngDocLet=\"false as isMobileMode\">\n\t<div class=\"ng-doc-navbar-left\">\n\t\t<ng-container *polymorpheusOutlet=\"leftContent\"></ng-container>\n\t</div>\n\t<div class=\"ng-doc-navbar-center\">\n\t\t<ng-container *polymorpheusOutlet=\"centerContent\"></ng-container>\n\t\t@if (search && !isMobileMode) {\n\t\t<ng-doc-search></ng-doc-search>\n\t\t}\n\t</div>\n\t<div class=\"ng-doc-navbar-right\">\n\t\t@if (search && isMobileMode) {\n\t\t<ng-doc-search mod=\"icon\"></ng-doc-search>\n\t\t}\n\t\t<ng-container *polymorpheusOutlet=\"rightContent\"></ng-container>\n\t\t<button\n\t\t\tclass=\"ng-doc-menu\"\n\t\t\t*ngIf=\"isMobileMode && hamburger\"\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t(click)=\"sidebarService.toggle()\">\n\t\t\t<ng-doc-icon icon=\"menu\" [size]=\"24\"></ng-doc-icon>\n\t\t</button>\n\t</div>\n</div>\n", styles: [":host{position:relative;display:flex;justify-content:center;height:100%;transition:var(--ng-doc-transition) box-shadow}:host:not([data-glass-effect=false]){-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}:host:not([data-glass-effect=false]){position:relative}:host:not([data-glass-effect=false]):before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--ng-doc-navbar-background);opacity:.6;border-radius:inherit;overflow:hidden;pointer-events:none}@supports not ((-webkit-backdrop-filter: none) or (backdrop-filter: none)){:host{background-color:var(--ng-doc-navbar-background)}}:host[data-glass-effect=false]{background-color:var(--ng-doc-navbar-background)}:host.has-shadow{box-shadow:var(--ng-doc-shadow-color) 0 5px 20px -5px}:host .navbar-container{display:flex;height:100%;width:100%;padding:0 var(--ng-doc-navbar-horizontal-padding);z-index:10;max-width:var(--ng-doc-app-max-width)}:host .ng-doc-navbar-left,:host .ng-doc-navbar-center,:host .ng-doc-navbar-right{display:flex;align-items:center}:host .ng-doc-navbar-left{justify-content:flex-start;width:100%;max-width:var(--ng-doc-navbar-left-width)}:host .ng-doc-navbar-center{padding:0 var(--ng-doc-app-horizontal-padding);justify-content:flex-start;max-width:calc(100% - var(--ng-doc-toc-width))}:host .ng-doc-navbar-right{justify-content:flex-end;margin-left:auto}:host .ng-doc-menu{margin-left:calc(var(--ng-doc-base-gutter) * 2)}\n"], dependencies: [{ kind: "directive", type: NgDocLetDirective, selector: "[ngDocLet]", inputs: ["ngDocLet"] }, { kind: "ngmodule", type: PolymorpheusModule }, { kind: "directive", type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocSearchComponent, selector: "ng-doc-search", inputs: ["mod"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
65
67
|
};
|
|
66
68
|
NgDocNavbarComponent = __decorate([
|
|
67
69
|
UntilDestroy(),
|
|
@@ -71,7 +73,7 @@ NgDocNavbarComponent = __decorate([
|
|
|
71
73
|
NgDocSidebarService])
|
|
72
74
|
], NgDocNavbarComponent);
|
|
73
75
|
export { NgDocNavbarComponent };
|
|
74
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
76
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocNavbarComponent, decorators: [{
|
|
75
77
|
type: Component,
|
|
76
78
|
args: [{ selector: 'ng-doc-navbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
77
79
|
NgDocLetDirective,
|
|
@@ -81,7 +83,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
81
83
|
NgDocButtonIconComponent,
|
|
82
84
|
NgDocIconComponent,
|
|
83
85
|
AsyncPipe,
|
|
84
|
-
], template: "<div class=\"navbar-container\" *ngDocLet=\"
|
|
86
|
+
], host: { ngSkipHydration: 'true' }, template: "<div class=\"navbar-container\" *ngDocLet=\"false as isMobileMode\">\n\t<div class=\"ng-doc-navbar-left\">\n\t\t<ng-container *polymorpheusOutlet=\"leftContent\"></ng-container>\n\t</div>\n\t<div class=\"ng-doc-navbar-center\">\n\t\t<ng-container *polymorpheusOutlet=\"centerContent\"></ng-container>\n\t\t@if (search && !isMobileMode) {\n\t\t<ng-doc-search></ng-doc-search>\n\t\t}\n\t</div>\n\t<div class=\"ng-doc-navbar-right\">\n\t\t@if (search && isMobileMode) {\n\t\t<ng-doc-search mod=\"icon\"></ng-doc-search>\n\t\t}\n\t\t<ng-container *polymorpheusOutlet=\"rightContent\"></ng-container>\n\t\t<button\n\t\t\tclass=\"ng-doc-menu\"\n\t\t\t*ngIf=\"isMobileMode && hamburger\"\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t(click)=\"sidebarService.toggle()\">\n\t\t\t<ng-doc-icon icon=\"menu\" [size]=\"24\"></ng-doc-icon>\n\t\t</button>\n\t</div>\n</div>\n", styles: [":host{position:relative;display:flex;justify-content:center;height:100%;transition:var(--ng-doc-transition) box-shadow}:host:not([data-glass-effect=false]){-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}:host:not([data-glass-effect=false]){position:relative}:host:not([data-glass-effect=false]):before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--ng-doc-navbar-background);opacity:.6;border-radius:inherit;overflow:hidden;pointer-events:none}@supports not ((-webkit-backdrop-filter: none) or (backdrop-filter: none)){:host{background-color:var(--ng-doc-navbar-background)}}:host[data-glass-effect=false]{background-color:var(--ng-doc-navbar-background)}:host.has-shadow{box-shadow:var(--ng-doc-shadow-color) 0 5px 20px -5px}:host .navbar-container{display:flex;height:100%;width:100%;padding:0 var(--ng-doc-navbar-horizontal-padding);z-index:10;max-width:var(--ng-doc-app-max-width)}:host .ng-doc-navbar-left,:host .ng-doc-navbar-center,:host .ng-doc-navbar-right{display:flex;align-items:center}:host .ng-doc-navbar-left{justify-content:flex-start;width:100%;max-width:var(--ng-doc-navbar-left-width)}:host .ng-doc-navbar-center{padding:0 var(--ng-doc-app-horizontal-padding);justify-content:flex-start;max-width:calc(100% - var(--ng-doc-toc-width))}:host .ng-doc-navbar-right{justify-content:flex-end;margin-left:auto}:host .ng-doc-menu{margin-left:calc(var(--ng-doc-base-gutter) * 2)}\n"] }]
|
|
85
87
|
}], ctorParameters: () => [{ type: Window, decorators: [{
|
|
86
88
|
type: Inject,
|
|
87
89
|
args: [WINDOW]
|
|
@@ -104,4 +106,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
104
106
|
type: HostBinding,
|
|
105
107
|
args: ['class.has-shadow']
|
|
106
108
|
}] } });
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL25hdmJhci9uYXZiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUNOLGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUNOLHdCQUF3QixFQUV4QixrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLGlCQUFpQixHQUNqQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFFdEU7O0dBRUc7QUFtQkksSUFBTSxvQkFBb0IsR0FBMUIsTUFBTSxvQkFBb0I7SUE0Q2hDLFlBRWtCLE1BQWMs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bXBvcnQgeyBBc3luY1BpcGUsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcblx0YWZ0ZXJOZXh0UmVuZGVyLFxuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXG5cdENvbXBvbmVudCxcblx0SG9zdEJpbmRpbmcsXG5cdEluamVjdCxcblx0SW5wdXQsXG5cdE5nWm9uZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0RvY1NlYXJjaENvbXBvbmVudCB9IGZyb20gJ0BuZy1kb2MvYXBwL2NvbXBvbmVudHMvc2VhcmNoJztcbmltcG9ydCB7IE5nRG9jU2lkZWJhclNlcnZpY2UgfSBmcm9tICdAbmctZG9jL2FwcC9zZXJ2aWNlcyc7XG5pbXBvcnQge1xuXHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdE5nRG9jQ29udGVudCxcblx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHROZ0RvY0xldERpcmVjdGl2ZSxcblx0bmdEb2Nab25lT3B0aW1pemUsXG59IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcbmltcG9ydCB7IFdJTkRPVyB9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHsgVW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQgeyBQb2x5bW9ycGhldXNNb2R1bGUgfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8qKlxuICogTmF2YmFyIGNvbXBvbmVudCBmb3IgbmctZG9jIGFwcGxpY2F0aW9uXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy1uYXZiYXInLFxuXHR0ZW1wbGF0ZVVybDogJy4vbmF2YmFyLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vbmF2YmFyLmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbXG5cdFx0TmdEb2NMZXREaXJlY3RpdmUsXG5cdFx0UG9seW1vcnBoZXVzTW9kdWxlLFxuXHRcdE5nSWYsXG5cdFx0TmdEb2NTZWFyY2hDb21wb25lbnQsXG5cdFx0TmdEb2NCdXR0b25JY29uQ29tcG9uZW50LFxuXHRcdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0XHRBc3luY1BpcGUsXG5cdF0sXG5cdGhvc3Q6IHsgbmdTa2lwSHlkcmF0aW9uOiAndHJ1ZScgfSxcbn0pXG5AVW50aWxEZXN0cm95KClcbmV4cG9ydCBjbGFzcyBOZ0RvY05hdmJhckNvbXBvbmVudCB7XG5cdC8qKlxuXHQgKiBDb250ZW50IGZvciBsZWZ0IHNpZGUgb2YgbmF2YmFyXG5cdCAqL1xuXHRASW5wdXQoKVxuXHRsZWZ0Q29udGVudDogTmdEb2NDb250ZW50ID0gJyc7XG5cblx0LyoqXG5cdCAqIENvbnRlbnQgZm9yIGNlbnRlciBzaWRlIG9mIG5hdmJhclxuXHQgKi9cblx0QElucHV0KClcblx0Y2VudGVyQ29udGVudDogTmdEb2NDb250ZW50ID0gJyc7XG5cblx0LyoqXG5cdCAqIENvbnRlbnQgZm9yIHJpZ2h0IHNpZGUgb2YgbmF2YmFyXG5cdCAqL1xuXHRASW5wdXQoKVxuXHRyaWdodENvbnRlbnQ6IE5nRG9jQ29udGVudCA9ICcnO1xuXG5cdC8qKlxuXHQgKiBTaG93IHNlYXJjaCBpbnB1dFxuXHQgKi9cblx0QElucHV0KClcblx0c2VhcmNoOiBib29sZWFuID0gdHJ1ZTtcblxuXHQvKipcblx0ICogU2hvdyBoYW1idXJnZXIgYnV0dG9uXG5cdCAqL1xuXHRASW5wdXQoKVxuXHRoYW1idXJnZXI6IGJvb2xlYW4gPSB0cnVlO1xuXG5cdC8qKlxuXHQgKiBVc2UgZ2xhc3MgZWZmZWN0IGZvciBuYXZiYXJcblx0ICovXG5cdEBJbnB1dCgpXG5cdEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWdsYXNzLWVmZmVjdCcpXG5cdGdsYXNzRWZmZWN0OiBib29sZWFuID0gdHJ1ZTtcblxuXHQvKipcblx0ICogSW5kaWNhdGVzIGlmIG5hdmJhciBoYXMgc2hhZG93XG5cdCAqL1xuXHRASG9zdEJpbmRpbmcoJ2NsYXNzLmhhcy1zaGFkb3cnKVxuXHRoYXNTaGFkb3c6IGJvb2xlYW4gPSBmYWxzZTtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRASW5qZWN0KFdJTkRPVylcblx0XHRwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogV2luZG93LFxuXHRcdHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsXG5cdFx0cHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG5cdFx0cHJvdGVjdGVkIHJlYWRvbmx5IHNpZGViYXJTZXJ2aWNlOiBOZ0RvY1NpZGViYXJTZXJ2aWNlLFxuXHQpIHtcblx0XHRhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuXHRcdFx0Y29tYmluZUxhdGVzdChbXG5cdFx0XHRcdGZyb21FdmVudCh0aGlzLndpbmRvdywgJ3Njcm9sbCcpLnBpcGUoXG5cdFx0XHRcdFx0bWFwKChlOiBFdmVudCkgPT4gKChlLnRhcmdldCBhcyBEb2N1bWVudCk/LnNjcm9sbGluZ0VsZW1lbnQ/LnNjcm9sbFRvcCA/PyAwKSA+IDApLFxuXHRcdFx0XHRcdGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG5cdFx0XHRcdFx0c3RhcnRXaXRoKGZhbHNlKSxcblx0XHRcdFx0XHRuZ0RvY1pvbmVPcHRpbWl6ZSh0aGlzLm5nWm9uZSksXG5cdFx0XHRcdCksXG5cdFx0XHRcdHRoaXMuc2lkZWJhclNlcnZpY2UuaXNNb2JpbGVNb2RlKCksXG5cdFx0XHRcdHRoaXMuc2lkZWJhclNlcnZpY2UuaXNFeHBhbmRlZCgpLFxuXHRcdFx0XSlcblx0XHRcdFx0LnBpcGUoXG5cdFx0XHRcdFx0bWFwKFxuXHRcdFx0XHRcdFx0KFtzY3JvbGxlZCwgaXNNb2JpbGVNb2RlLCBpc0V4cGFuZGVkXTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dKSA9PlxuXHRcdFx0XHRcdFx0XHRzY3JvbGxlZCB8fCAoaXNNb2JpbGVNb2RlICYmIGlzRXhwYW5kZWQpLFxuXHRcdFx0XHRcdCksXG5cdFx0XHRcdFx0dW50aWxEZXN0cm95ZWQodGhpcyksXG5cdFx0XHRcdClcblx0XHRcdFx0LnN1YnNjcmliZSgoaGFzU2hhZG93OiBib29sZWFuKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5oYXNTaGFkb3cgPSBoYXNTaGFkb3c7XG5cdFx0XHRcdFx0dGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcblx0XHRcdFx0fSk7XG5cdFx0fSk7XG5cdH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJuYXZiYXItY29udGFpbmVyXCIgKm5nRG9jTGV0PVwiZmFsc2UgYXMgaXNNb2JpbGVNb2RlXCI+XG5cdDxkaXYgY2xhc3M9XCJuZy1kb2MtbmF2YmFyLWxlZnRcIj5cblx0XHQ8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJsZWZ0Q29udGVudFwiPjwvbmctY29udGFpbmVyPlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm5nLWRvYy1uYXZiYXItY2VudGVyXCI+XG5cdFx0PG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY2VudGVyQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuXHRcdEBpZiAoc2VhcmNoICYmICFpc01vYmlsZU1vZGUpIHtcblx0XHQ8bmctZG9jLXNlYXJjaD48L25nLWRvYy1zZWFyY2g+XG5cdFx0fVxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm5nLWRvYy1uYXZiYXItcmlnaHRcIj5cblx0XHRAaWYgKHNlYXJjaCAmJiBpc01vYmlsZU1vZGUpIHtcblx0XHQ8bmctZG9jLXNlYXJjaCBtb2Q9XCJpY29uXCI+PC9uZy1kb2Mtc2VhcmNoPlxuXHRcdH1cblx0XHQ8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJyaWdodENvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cblx0XHQ8YnV0dG9uXG5cdFx0XHRjbGFzcz1cIm5nLWRvYy1tZW51XCJcblx0XHRcdCpuZ0lmPVwiaXNNb2JpbGVNb2RlICYmIGhhbWJ1cmdlclwiXG5cdFx0XHRuZy1kb2MtYnV0dG9uLWljb25cblx0XHRcdHNpemU9XCJsYXJnZVwiXG5cdFx0XHQoY2xpY2spPVwic2lkZWJhclNlcnZpY2UudG9nZ2xlKClcIj5cblx0XHRcdDxuZy1kb2MtaWNvbiBpY29uPVwibWVudVwiIFtzaXplXT1cIjI0XCI+PC9uZy1kb2MtaWNvbj5cblx0XHQ8L2J1dHRvbj5cblx0PC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { NgComponentOutlet, NgIf } from '@angular/common';
|
|
3
|
-
import { ChangeDetectionStrategy, Component, ElementRef, inject, TemplateRef, ViewChild, ViewContainerRef, } from '@angular/core';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, ElementRef, inject, Renderer2, TemplateRef, ViewChild, ViewContainerRef, } from '@angular/core';
|
|
4
4
|
import { ActivatedRoute, Router, RouterOutlet } from '@angular/router';
|
|
5
5
|
import { NgDocRootPage } from '@ng-doc/app/classes/root-page';
|
|
6
6
|
import { NgDocBreadcrumbComponent } from '@ng-doc/app/components/breadcrumb';
|
|
7
7
|
import { NgDocTocComponent } from '@ng-doc/app/components/toc';
|
|
8
8
|
import { createComponent, generateToc } from '@ng-doc/app/helpers';
|
|
9
|
-
import { NgDocSanitizeHtmlPipe } from '@ng-doc/app/pipes/sanitize-html';
|
|
10
9
|
import { NgDocPageProcessorDirective } from '@ng-doc/app/processors';
|
|
11
10
|
import { provideTypeControl } from '@ng-doc/app/providers/type-control';
|
|
12
11
|
import { NG_DOC_CONTEXT, NG_DOC_PAGE_SKELETON } from '@ng-doc/app/tokens';
|
|
@@ -20,13 +19,14 @@ let NgDocPageComponent = class NgDocPageComponent {
|
|
|
20
19
|
this.rootPage = inject(NgDocRootPage);
|
|
21
20
|
this.skeleton = inject(NG_DOC_PAGE_SKELETON);
|
|
22
21
|
this.context = inject(NG_DOC_CONTEXT);
|
|
22
|
+
this.renderer = inject(Renderer2);
|
|
23
23
|
this.router = inject(Router);
|
|
24
24
|
this.breadcrumbs = inject(ActivatedRoute)
|
|
25
25
|
.pathFromRoot.filter((route) => !route.snapshot.url.length)
|
|
26
26
|
.map((route) => route.snapshot.title)
|
|
27
27
|
.filter(isPresent);
|
|
28
28
|
}
|
|
29
|
-
|
|
29
|
+
ngOnInit() {
|
|
30
30
|
if (this.rootPage.pageType === 'guide') {
|
|
31
31
|
if (this.skeleton.breadcrumbs) {
|
|
32
32
|
createComponent(this.pageBreadcrumbs, this.skeleton.breadcrumbs, {
|
|
@@ -37,13 +37,11 @@ let NgDocPageComponent = class NgDocPageComponent {
|
|
|
37
37
|
createComponent(this.pageNavigation, this.skeleton.navigation, this.navigationInputs());
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
});
|
|
40
|
+
if (this.pageToc && this.skeleton.toc) {
|
|
41
|
+
createComponent(this.pageToc, this.skeleton.toc, {
|
|
42
|
+
tableOfContent: generateToc(this.pageContainer.nativeElement) ?? [],
|
|
43
|
+
});
|
|
44
|
+
}
|
|
47
45
|
}
|
|
48
46
|
navigationInputs() {
|
|
49
47
|
const flatItems = (items) => items
|
|
@@ -61,19 +59,19 @@ let NgDocPageComponent = class NgDocPageComponent {
|
|
|
61
59
|
urlTree.fragment = null;
|
|
62
60
|
return urlTree.toString();
|
|
63
61
|
}
|
|
64
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
65
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
62
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
63
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: NgDocPageComponent, isStandalone: true, selector: "ng-doc-page", host: { attributes: { "ngSkipHydration": "true" } }, providers: [
|
|
66
64
|
provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 }),
|
|
67
65
|
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
68
66
|
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
69
67
|
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
70
|
-
], viewQueries: [{ propertyName: "pageContainer", first: true, predicate: ["pageContainer"], descendants: true, read: ElementRef, static: true }, { propertyName: "pageBreadcrumbs", first: true, predicate: ["pageBreadcrumbs"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "pageNavigation", first: true, predicate: ["pageNavigation"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "pageToc", first: true, predicate: ["pageToc"], descendants: true, read: ViewContainerRef }, { propertyName: "childOutlet", first: true, predicate: ["childOutlet"], descendants: true }], ngImport: i0, template: "<article>\n\t<ng-container #pageBreadcrumbs></ng-container>\n\n\t<div class=\"ng-doc-page-controls\">\n\t\t<a\n\t\t\tng-doc-button-icon\n\t\t\t*ngIf=\"rootPage.editSourceFileUrl\"\n\t\t\t[href]=\"rootPage.editSourceFileUrl\"\n\t\t\ttarget=\"_blank\"\n\t\t\tngDocTooltip=\"Suggest Edits\">\n\t\t\t<ng-doc-icon icon=\"edit-2\"></ng-doc-icon>\n\t\t</a>\n\t\t<a\n\t\t\tng-doc-button-icon\n\t\t\t*ngIf=\"rootPage.viewSourceFileUrl\"\n\t\t\t[href]=\"rootPage.viewSourceFileUrl\"\n\t\t\ttarget=\"_blank\"\n\t\t\tngDocTooltip=\"View Source\">\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div
|
|
68
|
+
], viewQueries: [{ propertyName: "pageContainer", first: true, predicate: ["pageContainer"], descendants: true, read: ElementRef, static: true }, { propertyName: "pageBreadcrumbs", first: true, predicate: ["pageBreadcrumbs"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "pageNavigation", first: true, predicate: ["pageNavigation"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "pageToc", first: true, predicate: ["pageToc"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "childOutlet", first: true, predicate: ["childOutlet"], descendants: true }], ngImport: i0, template: "<article>\n\t<ng-container #pageBreadcrumbs></ng-container>\n\n\t<div class=\"ng-doc-page-controls\">\n\t\t<a\n\t\t\tng-doc-button-icon\n\t\t\t*ngIf=\"rootPage.editSourceFileUrl\"\n\t\t\t[href]=\"rootPage.editSourceFileUrl\"\n\t\t\ttarget=\"_blank\"\n\t\t\tngDocTooltip=\"Suggest Edits\">\n\t\t\t<ng-doc-icon icon=\"edit-2\"></ng-doc-icon>\n\t\t</a>\n\t\t<a\n\t\t\tng-doc-button-icon\n\t\t\t*ngIf=\"rootPage.viewSourceFileUrl\"\n\t\t\t[href]=\"rootPage.viewSourceFileUrl\"\n\t\t\ttarget=\"_blank\"\n\t\t\tngDocTooltip=\"View Source\">\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div class=\"ng-doc-page-wrapper\" [ngDocPageProcessor]=\"rootPage.pageContent\" #pageContainer></div>\n\n\t<ng-container #pageNavigation></ng-container>\n</article>\n\n<ng-doc-dialog-outlet\n\t*ngIf=\"!rootPage.page?.disableFullscreenRoutes\"\n\t[config]=\"{ width: '100vw', height: '100vh' }\">\n\t<div class=\"ng-doc-fullscreen-wrapper\">\n\t\t<router-outlet></router-outlet>\n\t</div>\n</ng-doc-dialog-outlet>\n\n<ng-container #pageToc></ng-container>\n", styles: [":host{display:flex;--ng-doc-toc-margin: calc(var(--ng-doc-base-gutter) * 5)}:host article{position:relative;width:var(--ng-doc-article-width, 100%);margin-left:auto;margin-right:auto;overflow:hidden}:host article .ng-doc-page-controls{position:absolute;display:flex;grid-gap:var(--ng-doc-base-gutter);top:0;right:0}.ng-doc-fullscreen-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "directive", type: NgDocPageProcessorDirective, selector: "[ngDocPageProcessor]", inputs: ["ngDocPageProcessor"] }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: DialogOutletComponent, selector: "ng-doc-dialog-outlet", inputs: ["config"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
71
69
|
};
|
|
72
70
|
NgDocPageComponent = __decorate([
|
|
73
71
|
UntilDestroy()
|
|
74
72
|
], NgDocPageComponent);
|
|
75
73
|
export { NgDocPageComponent };
|
|
76
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPageComponent, decorators: [{
|
|
77
75
|
type: Component,
|
|
78
76
|
args: [{ selector: 'ng-doc-page', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
79
77
|
NgIf,
|
|
@@ -86,7 +84,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
86
84
|
NgDocTextRightDirective,
|
|
87
85
|
NgDocMediaQueryDirective,
|
|
88
86
|
NgDocTocComponent,
|
|
89
|
-
NgDocSanitizeHtmlPipe,
|
|
90
87
|
NgDocPageProcessorDirective,
|
|
91
88
|
NgComponentOutlet,
|
|
92
89
|
RouterOutlet,
|
|
@@ -96,7 +93,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
96
93
|
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
97
94
|
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
98
95
|
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
99
|
-
], template: "<article>\n\t<ng-container #pageBreadcrumbs></ng-container>\n\n\t<div class=\"ng-doc-page-controls\">\n\t\t<a\n\t\t\tng-doc-button-icon\n\t\t\t*ngIf=\"rootPage.editSourceFileUrl\"\n\t\t\t[href]=\"rootPage.editSourceFileUrl\"\n\t\t\ttarget=\"_blank\"\n\t\t\tngDocTooltip=\"Suggest Edits\">\n\t\t\t<ng-doc-icon icon=\"edit-2\"></ng-doc-icon>\n\t\t</a>\n\t\t<a\n\t\t\tng-doc-button-icon\n\t\t\t*ngIf=\"rootPage.viewSourceFileUrl\"\n\t\t\t[href]=\"rootPage.viewSourceFileUrl\"\n\t\t\ttarget=\"_blank\"\n\t\t\tngDocTooltip=\"View Source\">\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div
|
|
96
|
+
], host: { ngSkipHydration: 'true' }, template: "<article>\n\t<ng-container #pageBreadcrumbs></ng-container>\n\n\t<div class=\"ng-doc-page-controls\">\n\t\t<a\n\t\t\tng-doc-button-icon\n\t\t\t*ngIf=\"rootPage.editSourceFileUrl\"\n\t\t\t[href]=\"rootPage.editSourceFileUrl\"\n\t\t\ttarget=\"_blank\"\n\t\t\tngDocTooltip=\"Suggest Edits\">\n\t\t\t<ng-doc-icon icon=\"edit-2\"></ng-doc-icon>\n\t\t</a>\n\t\t<a\n\t\t\tng-doc-button-icon\n\t\t\t*ngIf=\"rootPage.viewSourceFileUrl\"\n\t\t\t[href]=\"rootPage.viewSourceFileUrl\"\n\t\t\ttarget=\"_blank\"\n\t\t\tngDocTooltip=\"View Source\">\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div class=\"ng-doc-page-wrapper\" [ngDocPageProcessor]=\"rootPage.pageContent\" #pageContainer></div>\n\n\t<ng-container #pageNavigation></ng-container>\n</article>\n\n<ng-doc-dialog-outlet\n\t*ngIf=\"!rootPage.page?.disableFullscreenRoutes\"\n\t[config]=\"{ width: '100vw', height: '100vh' }\">\n\t<div class=\"ng-doc-fullscreen-wrapper\">\n\t\t<router-outlet></router-outlet>\n\t</div>\n</ng-doc-dialog-outlet>\n\n<ng-container #pageToc></ng-container>\n", styles: [":host{display:flex;--ng-doc-toc-margin: calc(var(--ng-doc-base-gutter) * 5)}:host article{position:relative;width:var(--ng-doc-article-width, 100%);margin-left:auto;margin-right:auto;overflow:hidden}:host article .ng-doc-page-controls{position:absolute;display:flex;grid-gap:var(--ng-doc-base-gutter);top:0;right:0}.ng-doc-fullscreen-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}\n"] }]
|
|
100
97
|
}], propDecorators: { pageContainer: [{
|
|
101
98
|
type: ViewChild,
|
|
102
99
|
args: ['pageContainer', { read: ElementRef, static: true }]
|
|
@@ -108,9 +105,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
108
105
|
args: ['pageNavigation', { read: ViewContainerRef, static: true }]
|
|
109
106
|
}], pageToc: [{
|
|
110
107
|
type: ViewChild,
|
|
111
|
-
args: ['pageToc', { read: ViewContainerRef }]
|
|
108
|
+
args: ['pageToc', { read: ViewContainerRef, static: true }]
|
|
112
109
|
}], childOutlet: [{
|
|
113
110
|
type: ViewChild,
|
|
114
111
|
args: ['childOutlet']
|
|
115
112
|
}] } });
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFFTix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sV0FBVyxFQUNYLFNBQVMsRUFDVCxnQkFBZ0IsR0FDaEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFXLE1BQU0saUJBQWlCLENBQUM7QUFDaEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFPbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFFLE9BQU8sRUFDTiw0QkFBNEIsRUFDNUIsMkJBQTJCLEVBQzNCLDJCQUEyQixFQUMzQiw4QkFBOEIsR0FDOUIsTUFBTSwyQkFBMkIs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LE9BQU87c0JBRE4sU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBSWhELFdBQVc7c0JBRFYsU0FBUzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDb21wb25lbnRPdXRsZXQsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcblx0QWZ0ZXJWaWV3SW5pdCxcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0RWxlbWVudFJlZixcblx0aW5qZWN0LFxuXHRUZW1wbGF0ZVJlZixcblx0Vmlld0NoaWxkLFxuXHRWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIsIFJvdXRlck91dGxldCwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBOZ0RvY1Jvb3RQYWdlIH0gZnJvbSAnQG5nLWRvYy9hcHAvY2xhc3Nlcy9yb290LXBhZ2UnO1xuaW1wb3J0IHsgTmdEb2NCcmVhZGNydW1iQ29tcG9uZW50IH0gZnJvbSAnQG5nLWRvYy9hcHAvY29tcG9uZW50cy9icmVhZGNydW1iJztcbmltcG9ydCB7IE5nRG9jVG9jQ29tcG9uZW50IH0gZnJvbSAnQG5nLWRvYy9hcHAvY29tcG9uZW50cy90b2MnO1xuaW1wb3J0IHsgY3JlYXRlQ29tcG9uZW50LCBnZW5lcmF0ZVRvYyB9IGZyb20gJ0BuZy1kb2MvYXBwL2hlbHBlcnMnO1xuaW1wb3J0IHtcblx0TmdEb2NDb250ZXh0LFxuXHROZ0RvY05hdmlnYXRpb24sXG5cdE5nRG9jUGFnZU5hdmlnYXRpb24sXG5cdE5nRG9jUGFnZVNrZWxldG9uLFxufSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IE5nRG9jU2FuaXRpemVIdG1sUGlwZSB9IGZyb20gJ0BuZy1kb2MvYXBwL3BpcGVzL3Nhbml0aXplLWh0bWwnO1xuaW1wb3J0IHsgTmdEb2NQYWdlUHJvY2Vzc29yRGlyZWN0aXZlIH0gZnJvbSAnQG5nLWRvYy9hcHAvcHJvY2Vzc29ycyc7XG5pbXBvcnQgeyBwcm92aWRlVHlwZUNvbnRyb2wgfSBmcm9tICdAbmctZG9jL2FwcC9wcm92aWRlcnMvdHlwZS1jb250cm9sJztcbmltcG9ydCB7IE5HX0RPQ19DT05URVhULCBOR19ET0NfUEFHRV9TS0VMRVRPTiB9IGZyb20gJ0BuZy1kb2MvYXBwL3Rva2Vucyc7XG5pbXBvcnQge1xuXHROZ0RvY0Jvb2xlYW5Db250cm9sQ29tcG9uZW50LFxuXHROZ0RvY051bWJlckNvbnRyb2xDb21wb25lbnQsXG5cdE5nRG9jU3RyaW5nQ29udHJvbENvbXBvbmVudCxcblx0TmdEb2NUeXBlQWxpYXNDb250cm9sQ29tcG9uZW50LFxufSBmcm9tICdAbmctZG9jL2FwcC90eXBlLWNvbnRyb2xzJztcbmltcG9ydCB7IGlzUHJlc2VudCB9IGZyb20gJ0BuZy1kb2MvY29yZSc7XG5pbXBvcnQge1xuXHREaWFsb2dPdXRsZXRDb21wb25lbnQsXG5cdE5nRG9jQnV0dG9uSWNvbkNvbXBvbmVudCxcblx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHROZ0RvY01lZGlhUXVlcnlEaXJlY3RpdmUsXG5cdE5nRG9jVGV4dENvbXBvbmVudCxcblx0TmdEb2NUZXh0TGVmdERpcmVjdGl2ZSxcblx0TmdEb2NUZXh0UmlnaHREaXJlY3RpdmUsXG5cdE5nRG9jVG9vbHRpcERpcmVjdGl2ZSxcbn0gZnJvbSAnQG5nLWRvYy91aS1raXQnO1xuaW1wb3J0IHsgVW50aWxEZXN0cm95IH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmctZG9jLXBhZ2UnLFxuXHR0ZW1wbGF0ZVVybDogJy4vcGFnZS5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL3BhZ2UuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtcblx0XHROZ0lmLFxuXHRcdE5nRG9jQnJlYWRjcnVtYkNvbXBvbmVudCxcblx0XHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdFx0TmdEb2NUb29sdGlwRGlyZWN0aXZlLFxuXHRcdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY1RleHRDb21wb25lbnQsXG5cdFx0TmdEb2NUZXh0TGVmdERpcmVjdGl2ZSxcblx0XHROZ0RvY1RleHRSaWdodERpcmVjdGl2ZSxcblx0XHROZ0RvY01lZGlhUXVlcnlEaXJlY3RpdmUsXG5cdFx0TmdEb2NUb2NDb21wb25lbnQsXG5cdFx0TmdEb2NTYW5pdGl6ZUh0bWxQaXBlLFxuXHRcdE5nRG9jUGFnZVByb2Nlc3NvckRpcmVjdGl2ZSxcblx0XHROZ0NvbXBvbmVudE91dGxldCxcblx0XHRSb3V0ZXJPdXRsZXQsXG5cdFx0RGlhbG9nT3V0bGV0Q29tcG9uZW50LFxuXHRdLFxuXHRwcm92aWRlcnM6IFtcblx0XHRwcm92aWRlVHlwZUNvbnRyb2woJ05nRG9jVHlwZUFsaWFzJywgTmdEb2NUeXBlQWxpYXNDb250cm9sQ29tcG9uZW50LCB7IG9yZGVyOiAxMCB9KSxcblx0XHRwcm92aWRlVHlwZUNvbnRyb2woJ3N0cmluZycsIE5nRG9jU3RyaW5nQ29udHJvbENvbXBvbmVudCwgeyBvcmRlcjogMjAgfSksXG5cdFx0cHJvdmlkZVR5cGVDb250cm9sKCdudW1iZXInLCBOZ0RvY051bWJlckNvbnRyb2xDb21wb25lbnQsIHsgb3JkZXI6IDMwIH0pLFxuXHRcdHByb3ZpZGVUeXBlQ29udHJvbCgnYm9vbGVhbicsIE5nRG9jQm9vbGVhbkNvbnRyb2xDb21wb25lbnQsIHsgaGlkZUxhYmVsOiB0cnVlLCBvcmRlcjogNDAgfSksXG5cdF0sXG59KVxuQFVudGlsRGVzdHJveSgpXG5leHBvcnQgY2xhc3MgTmdEb2NQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG5cdEBWaWV3Q2hpbGQoJ3BhZ2VDb250YWluZXInLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuXHRwYWdlQ29udGFpbmVyITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cblx0QFZpZXdDaGlsZCgncGFnZUJyZWFkY3J1bWJzJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWUgfSlcblx0cGFnZUJyZWFkY3J1bWJzITogVmlld0NvbnRhaW5lclJlZjtcblxuXHRAVmlld0NoaWxkKCdwYWdlTmF2aWdhdGlvbicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pXG5cdHBhZ2VOYXZpZ2F0aW9uITogVmlld0NvbnRhaW5lclJlZjtcblxuXHRAVmlld0NoaWxkKCdwYWdlVG9jJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pXG5cdHBhZ2VUb2M/OiBWaWV3Q29udGFpbmVyUmVmO1xuXG5cdEBWaWV3Q2hpbGQoJ2NoaWxkT3V0bGV0Jylcblx0Y2hpbGRPdXRsZXQ/OiBUZW1wbGF0ZVJlZjxuZXZlcj47XG5cblx0cHJvdGVjdGVkIHJvb3RQYWdlOiBOZ0RvY1Jvb3RQYWdlID0gaW5qZWN0KE5nRG9jUm9vdFBhZ2UpO1xuXHRwcm90ZWN0ZWQgc2tlbGV0b246IE5nRG9jUGFnZVNrZWxldG9uID0gaW5qZWN0KE5HX0RPQ19QQUdFX1NLRUxFVE9OKTtcblx0cHJvdGVjdGVkIGNvbnRleHQ6IE5nRG9jQ29udGV4dCA9IGluamVjdChOR19ET0NfQ09OVEVYVCk7XG5cdHByb3RlY3RlZCByb3V0ZXI6IFJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG5cdHByaXZhdGUgYnJlYWRjcnVtYnM6IHN0cmluZ1tdID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKVxuXHRcdC5wYXRoRnJvbVJvb3QuZmlsdGVyKChyb3V0ZTogQWN0aXZhdGVkUm91dGUpID0+ICFyb3V0ZS5zbmFwc2hvdC51cmwubGVuZ3RoKVxuXHRcdC5tYXAoKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkgPT4gcm91dGUuc25hcHNob3QudGl0bGUpXG5cdFx0LmZpbHRlcihpc1ByZXNlbnQpO1xuXG5cdG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5yb290UGFnZS5wYWdlVHlwZSA9PT0gJ2d1aWRlJykge1xuXHRcdFx0aWYgKHRoaXMuc2tlbGV0b24uYnJlYWRjcnVtYnMpIHtcblx0XHRcdFx0Y3JlYXRlQ29tcG9uZW50KHRoaXMucGFnZUJyZWFkY3J1bWJzLCB0aGlzLnNrZWxldG9uLmJyZWFkY3J1bWJzLCB7XG5cdFx0XHRcdFx0YnJlYWRjcnVtYnM6IHRoaXMuYnJlYWRjcnVtYnMsXG5cdFx0XHRcdH0pO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAodGhpcy5za2VsZXRvbi5uYXZpZ2F0aW9uKSB7XG5cdFx0XHRcdGNyZWF0ZUNvbXBvbmVudCh0aGlzLnBhZ2VOYXZpZ2F0aW9uLCB0aGlzLnNrZWxldG9uLm5hdmlnYXRpb24sIHRoaXMubmF2aWdhdGlvbklucHV0cygpKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcblx0XHRcdGlmICh0aGlzLnBhZ2VUb2MgJiYgdGhpcy5za2VsZXRvbi50b2MpIHtcblx0XHRcdFx0Y3JlYXRlQ29tcG9uZW50KHRoaXMucGFnZVRvYywgdGhpcy5za2VsZXRvbi50b2MsIHtcblx0XHRcdFx0XHR0YWJsZU9mQ29udGVudDogZ2VuZXJhdGVUb2ModGhpcy5wYWdlQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQpID8/IFtdLFxuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxuXG5cdHByaXZhdGUgbmF2aWdhdGlvbklucHV0cygpOiBOZ0RvY1BhZ2VOYXZpZ2F0aW9uIHtcblx0XHRjb25zdCBmbGF0SXRlbXMgPSAoaXRlbXM6IE5nRG9jTmF2aWdhdGlvbltdKTogTmdEb2NOYXZpZ2F0aW9uW10gPT5cblx0XHRcdGl0ZW1zXG5cdFx0XHRcdC5tYXAoKGl0ZW06IE5nRG9jTmF2aWdhdGlvbikgPT4gW2l0ZW0uY2hpbGRyZW4/Lmxlbmd0aCA/IGZsYXRJdGVtcyhpdGVtLmNoaWxkcmVuKSA6IGl0ZW1dKVxuXHRcdFx0XHQuZmxhdCgyKTtcblx0XHRjb25zdCBmbGF0UGFnZXM6IE5nRG9jTmF2aWdhdGlvbltdID0gZmxhdEl0ZW1zKHRoaXMuY29udGV4dC5uYXZpZ2F0aW9uKTtcblxuXHRcdHJldHVybiB7XG5cdFx0XHRwcmV2UGFnZTpcblx0XHRcdFx0ZmxhdFBhZ2VzW2ZsYXRQYWdlcy5maW5kSW5kZXgoKGl0ZW06IE5nRG9jTmF2aWdhdGlvbikgPT4gdGhpcy51cmwgPT09IGl0ZW0ucm91dGUpIC0gMV0sXG5cdFx0XHRuZXh0UGFnZTpcblx0XHRcdFx0ZmxhdFBhZ2VzW2ZsYXRQYWdlcy5maW5kSW5kZXgoKGl0ZW06IE5nRG9jTmF2aWdhdGlvbikgPT4gdGhpcy51cmwgPT09IGl0ZW0ucm91dGUpICsgMV0sXG5cdFx0fTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0IHVybCgpOiBzdHJpbmcge1xuXHRcdGNvbnN0IHVybFRyZWU6IFVybFRyZWUgPSB0aGlzLnJvdXRlci5wYXJzZVVybCh0aGlzLnJvdXRlci51cmwpO1xuXG5cdFx0dXJsVHJlZS5xdWVyeVBhcmFtcyA9IHt9O1xuXHRcdHVybFRyZWUuZnJhZ21lbnQgPSBudWxsO1xuXG5cdFx0cmV0dXJuIHVybFRyZWUudG9TdHJpbmcoKTtcblx0fVxufVxuIiwiPGFydGljbGU+XG5cdDxuZy1jb250YWluZXIgI3BhZ2VCcmVhZGNydW1icz48L25nLWNvbnRhaW5lcj5cblxuXHQ8ZGl2IGNsYXNzPVwibmctZG9jLXBhZ2UtY29udHJvbHNcIj5cblx0XHQ8YVxuXHRcdFx0bmctZG9jLWJ1dHRvbi1pY29uXG5cdFx0XHQqbmdJZj1cInJvb3RQYWdlLmVkaXRTb3VyY2VGaWxlVXJsXCJcblx0XHRcdFtocmVmXT1cInJvb3RQYWdlLmVkaXRTb3VyY2VGaWxlVXJsXCJcblx0XHRcdHRhcmdldD1cIl9ibGFua1wiXG5cdFx0XHRuZ0RvY1Rvb2x0aXA9XCJTdWdnZXN0IEVkaXRzXCI+XG5cdFx0XHQ8bmctZG9jLWljb24gaWNvbj1cImVkaXQtMlwiPjwvbmctZG9jLWljb24+XG5cdFx0PC9hPlxuXHRcdDxhXG5cdFx0XHRuZy1kb2MtYnV0dG9uLWljb25cblx0XHRcdCpuZ0lmPVwicm9vdFBhZ2Uudmlld1NvdXJjZUZpbGVVcmxcIlxuXHRcdFx0W2hyZWZdPVwicm9vdFBhZ2Uudmlld1NvdXJjZUZpbGVVcmxcIlxuXHRcdFx0dGFyZ2V0PVwiX2JsYW5rXCJcblx0XHRcdG5nRG9jVG9vbHRpcD1cIlZpZXcgU291cmNlXCI+XG5cdFx0XHQ8bmctZG9jLWljb24gaWNvbj1cImNvZGVcIj48L25nLWRvYy1pY29uPlxuXHRcdDwvYT5cblx0PC9kaXY+XG5cblx0PGRpdlxuXHRcdGNsYXNzPVwibmctZG9jLXBhZ2Utd3JhcHBlclwiXG5cdFx0W2lubmVySFRNTF09XCJyb290UGFnZS5wYWdlQ29udGVudCB8IG5nRG9jU2FuaXRpemVIdG1sXCJcblx0XHRuZ0RvY1BhZ2VQcm9jZXNzb3Jcblx0XHQjcGFnZUNvbnRhaW5lcj48L2Rpdj5cblxuXHQ8bmctY29udGFpbmVyICNwYWdlTmF2aWdhdGlvbj48L25nLWNvbnRhaW5lcj5cbjwvYXJ0aWNsZT5cblxuPG5nLWRvYy1kaWFsb2ctb3V0bGV0XG5cdCpuZ0lmPVwiIXJvb3RQYWdlLnBhZ2U/LmRpc2FibGVGdWxsc2NyZWVuUm91dGVzXCJcblx0W2NvbmZpZ109XCJ7IHdpZHRoOiAnMTAwdncnLCBoZWlnaHQ6ICcxMDB2aCcgfVwiPlxuXHQ8ZGl2IGNsYXNzPVwibmctZG9jLWZ1bGxzY3JlZW4td3JhcHBlclwiPlxuXHRcdDxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cblx0PC9kaXY+XG48L25nLWRvYy1kaWFsb2ctb3V0bGV0PlxuXG48bmctY29udGFpbmVyICNwYWdlVG9jPjwvbmctY29udGFpbmVyPlxuIl19
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFDTix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBRU4sU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEVBQ1QsZ0JBQWdCLEdBQ2hCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBVyxNQUFNLGlCQUFpQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBT25FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxRSxPQUFPLEVBQ04sNEJBQTRCLEVBQzVCLDJCQUEyQixFQUMzQiwyQkFBMkIsRUFDM0IsOEJBQThCLEdBQzlCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFN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TSxFQUFFLElBQUksRUFBRTtnQkFJOUQsV0FBVztzQkFEVixTQUFTO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NvbXBvbmVudE91dGxldCwgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q29tcG9uZW50LFxuXHRFbGVtZW50UmVmLFxuXHRpbmplY3QsXG5cdE9uSW5pdCxcblx0UmVuZGVyZXIyLFxuXHRUZW1wbGF0ZVJlZixcblx0Vmlld0NoaWxkLFxuXHRWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIsIFJvdXRlck91dGxldCwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBOZ0RvY1Jvb3RQYWdlIH0gZnJvbSAnQG5nLWRvYy9hcHAvY2xhc3Nlcy9yb290LXBhZ2UnO1xuaW1wb3J0IHsgTmdEb2NCcmVhZGNydW1iQ29tcG9uZW50IH0gZnJvbSAnQG5nLWRvYy9hcHAvY29tcG9uZW50cy9icmVhZGNydW1iJztcbmltcG9ydCB7IE5nRG9jVG9jQ29tcG9uZW50IH0gZnJvbSAnQG5nLWRvYy9hcHAvY29tcG9uZW50cy90b2MnO1xuaW1wb3J0IHsgY3JlYXRlQ29tcG9uZW50LCBnZW5lcmF0ZVRvYyB9IGZyb20gJ0BuZy1kb2MvYXBwL2hlbHBlcnMnO1xuaW1wb3J0IHtcblx0TmdEb2NDb250ZXh0LFxuXHROZ0RvY05hdmlnYXRpb24sXG5cdE5nRG9jUGFnZU5hdmlnYXRpb24sXG5cdE5nRG9jUGFnZVNrZWxldG9uLFxufSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IE5nRG9jUGFnZVByb2Nlc3NvckRpcmVjdGl2ZSB9IGZyb20gJ0BuZy1kb2MvYXBwL3Byb2Nlc3NvcnMnO1xuaW1wb3J0IHsgcHJvdmlkZVR5cGVDb250cm9sIH0gZnJvbSAnQG5nLWRvYy9hcHAvcHJvdmlkZXJzL3R5cGUtY29udHJvbCc7XG5pbXBvcnQgeyBOR19ET0NfQ09OVEVYVCwgTkdfRE9DX1BBR0VfU0tFTEVUT04gfSBmcm9tICdAbmctZG9jL2FwcC90b2tlbnMnO1xuaW1wb3J0IHtcblx0TmdEb2NCb29sZWFuQ29udHJvbENvbXBvbmVudCxcblx0TmdEb2NOdW1iZXJDb250cm9sQ29tcG9uZW50LFxuXHROZ0RvY1N0cmluZ0NvbnRyb2xDb21wb25lbnQsXG5cdE5nRG9jVHlwZUFsaWFzQ29udHJvbENvbXBvbmVudCxcbn0gZnJvbSAnQG5nLWRvYy9hcHAvdHlwZS1jb250cm9scyc7XG5pbXBvcnQgeyBpc1ByZXNlbnQgfSBmcm9tICdAbmctZG9jL2NvcmUnO1xuaW1wb3J0IHtcblx0RGlhbG9nT3V0bGV0Q29tcG9uZW50LFxuXHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0TmdEb2NNZWRpYVF1ZXJ5RGlyZWN0aXZlLFxuXHROZ0RvY1RleHRDb21wb25lbnQsXG5cdE5nRG9jVGV4dExlZnREaXJlY3RpdmUsXG5cdE5nRG9jVGV4dFJpZ2h0RGlyZWN0aXZlLFxuXHROZ0RvY1Rvb2x0aXBEaXJlY3RpdmUsXG59IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcbmltcG9ydCB7IFVudGlsRGVzdHJveSB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy1wYWdlJyxcblx0dGVtcGxhdGVVcmw6ICcuL3BhZ2UuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9wYWdlLmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbXG5cdFx0TmdJZixcblx0XHROZ0RvY0JyZWFkY3J1bWJDb21wb25lbnQsXG5cdFx0TmdEb2NCdXR0b25JY29uQ29tcG9uZW50LFxuXHRcdE5nRG9jVG9vbHRpcERpcmVjdGl2ZSxcblx0XHROZ0RvY0ljb25Db21wb25lbnQsXG5cdFx0TmdEb2NUZXh0Q29tcG9uZW50LFxuXHRcdE5nRG9jVGV4dExlZnREaXJlY3RpdmUsXG5cdFx0TmdEb2NUZXh0UmlnaHREaXJlY3RpdmUsXG5cdFx0TmdEb2NNZWRpYVF1ZXJ5RGlyZWN0aXZlLFxuXHRcdE5nRG9jVG9jQ29tcG9uZW50LFxuXHRcdE5nRG9jUGFnZVByb2Nlc3NvckRpcmVjdGl2ZSxcblx0XHROZ0NvbXBvbmVudE91dGxldCxcblx0XHRSb3V0ZXJPdXRsZXQsXG5cdFx0RGlhbG9nT3V0bGV0Q29tcG9uZW50LFxuXHRdLFxuXHRwcm92aWRlcnM6IFtcblx0XHRwcm92aWRlVHlwZUNvbnRyb2woJ05nRG9jVHlwZUFsaWFzJywgTmdEb2NUeXBlQWxpYXNDb250cm9sQ29tcG9uZW50LCB7IG9yZGVyOiAxMCB9KSxcblx0XHRwcm92aWRlVHlwZUNvbnRyb2woJ3N0cmluZycsIE5nRG9jU3RyaW5nQ29udHJvbENvbXBvbmVudCwgeyBvcmRlcjogMjAgfSksXG5cdFx0cHJvdmlkZVR5cGVDb250cm9sKCdudW1iZXInLCBOZ0RvY051bWJlckNvbnRyb2xDb21wb25lbnQsIHsgb3JkZXI6IDMwIH0pLFxuXHRcdHByb3ZpZGVUeXBlQ29udHJvbCgnYm9vbGVhbicsIE5nRG9jQm9vbGVhbkNvbnRyb2xDb21wb25lbnQsIHsgaGlkZUxhYmVsOiB0cnVlLCBvcmRlcjogNDAgfSksXG5cdF0sXG5cdGhvc3Q6IHsgbmdTa2lwSHlkcmF0aW9uOiAndHJ1ZScgfSxcbn0pXG5AVW50aWxEZXN0cm95KClcbmV4cG9ydCBjbGFzcyBOZ0RvY1BhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXHRAVmlld0NoaWxkKCdwYWdlQ29udGFpbmVyJywgeyByZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWUgfSlcblx0cGFnZUNvbnRhaW5lciE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG5cdEBWaWV3Q2hpbGQoJ3BhZ2VCcmVhZGNydW1icycsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pXG5cdHBhZ2VCcmVhZGNydW1icyE6IFZpZXdDb250YWluZXJSZWY7XG5cblx0QFZpZXdDaGlsZCgncGFnZU5hdmlnYXRpb24nLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuXHRwYWdlTmF2aWdhdGlvbiE6IFZpZXdDb250YWluZXJSZWY7XG5cblx0QFZpZXdDaGlsZCgncGFnZVRvYycsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pXG5cdHBhZ2VUb2M/OiBWaWV3Q29udGFpbmVyUmVmO1xuXG5cdEBWaWV3Q2hpbGQoJ2NoaWxkT3V0bGV0Jylcblx0Y2hpbGRPdXRsZXQ/OiBUZW1wbGF0ZVJlZjxuZXZlcj47XG5cblx0cHJvdGVjdGVkIHJvb3RQYWdlOiBOZ0RvY1Jvb3RQYWdlID0gaW5qZWN0KE5nRG9jUm9vdFBhZ2UpO1xuXHRwcm90ZWN0ZWQgc2tlbGV0b246IE5nRG9jUGFnZVNrZWxldG9uID0gaW5qZWN0KE5HX0RPQ19QQUdFX1NLRUxFVE9OKTtcblx0cHJvdGVjdGVkIGNvbnRleHQ6IE5nRG9jQ29udGV4dCA9IGluamVjdChOR19ET0NfQ09OVEVYVCk7XG5cdHByb3RlY3RlZCByZW5kZXJlcjogUmVuZGVyZXIyID0gaW5qZWN0KFJlbmRlcmVyMik7XG5cdHByb3RlY3RlZCByb3V0ZXI6IFJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG5cdHByaXZhdGUgYnJlYWRjcnVtYnM6IHN0cmluZ1tdID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKVxuXHRcdC5wYXRoRnJvbVJvb3QuZmlsdGVyKChyb3V0ZTogQWN0aXZhdGVkUm91dGUpID0+ICFyb3V0ZS5zbmFwc2hvdC51cmwubGVuZ3RoKVxuXHRcdC5tYXAoKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkgPT4gcm91dGUuc25hcHNob3QudGl0bGUpXG5cdFx0LmZpbHRlcihpc1ByZXNlbnQpO1xuXG5cdG5nT25Jbml0KCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLnJvb3RQYWdlLnBhZ2VUeXBlID09PSAnZ3VpZGUnKSB7XG5cdFx0XHRpZiAodGhpcy5za2VsZXRvbi5icmVhZGNydW1icykge1xuXHRcdFx0XHRjcmVhdGVDb21wb25lbnQodGhpcy5wYWdlQnJlYWRjcnVtYnMsIHRoaXMuc2tlbGV0b24uYnJlYWRjcnVtYnMsIHtcblx0XHRcdFx0XHRicmVhZGNydW1iczogdGhpcy5icmVhZGNydW1icyxcblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cblx0XHRcdGlmICh0aGlzLnNrZWxldG9uLm5hdmlnYXRpb24pIHtcblx0XHRcdFx0Y3JlYXRlQ29tcG9uZW50KHRoaXMucGFnZU5hdmlnYXRpb24sIHRoaXMuc2tlbGV0b24ubmF2aWdhdGlvbiwgdGhpcy5uYXZpZ2F0aW9uSW5wdXRzKCkpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlmICh0aGlzLnBhZ2VUb2MgJiYgdGhpcy5za2VsZXRvbi50b2MpIHtcblx0XHRcdGNyZWF0ZUNvbXBvbmVudCh0aGlzLnBhZ2VUb2MsIHRoaXMuc2tlbGV0b24udG9jLCB7XG5cdFx0XHRcdHRhYmxlT2ZDb250ZW50OiBnZW5lcmF0ZVRvYyh0aGlzLnBhZ2VDb250YWluZXIubmF0aXZlRWxlbWVudCkgPz8gW10sXG5cdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIG5hdmlnYXRpb25JbnB1dHMoKTogTmdEb2NQYWdlTmF2aWdhdGlvbiB7XG5cdFx0Y29uc3QgZmxhdEl0ZW1zID0gKGl0ZW1zOiBOZ0RvY05hdmlnYXRpb25bXSk6IE5nRG9jTmF2aWdhdGlvbltdID0+XG5cdFx0XHRpdGVtc1xuXHRcdFx0XHQubWFwKChpdGVtOiBOZ0RvY05hdmlnYXRpb24pID0+IFtpdGVtLmNoaWxkcmVuPy5sZW5ndGggPyBmbGF0SXRlbXMoaXRlbS5jaGlsZHJlbikgOiBpdGVtXSlcblx0XHRcdFx0LmZsYXQoMik7XG5cdFx0Y29uc3QgZmxhdFBhZ2VzOiBOZ0RvY05hdmlnYXRpb25bXSA9IGZsYXRJdGVtcyh0aGlzLmNvbnRleHQubmF2aWdhdGlvbik7XG5cblx0XHRyZXR1cm4ge1xuXHRcdFx0cHJldlBhZ2U6XG5cdFx0XHRcdGZsYXRQYWdlc1tmbGF0UGFnZXMuZmluZEluZGV4KChpdGVtOiBOZ0RvY05hdmlnYXRpb24pID0+IHRoaXMudXJsID09PSBpdGVtLnJvdXRlKSAtIDFdLFxuXHRcdFx0bmV4dFBhZ2U6XG5cdFx0XHRcdGZsYXRQYWdlc1tmbGF0UGFnZXMuZmluZEluZGV4KChpdGVtOiBOZ0RvY05hdmlnYXRpb24pID0+IHRoaXMudXJsID09PSBpdGVtLnJvdXRlKSArIDFdLFxuXHRcdH07XG5cdH1cblxuXHRwcml2YXRlIGdldCB1cmwoKTogc3RyaW5nIHtcblx0XHRjb25zdCB1cmxUcmVlOiBVcmxUcmVlID0gdGhpcy5yb3V0ZXIucGFyc2VVcmwodGhpcy5yb3V0ZXIudXJsKTtcblxuXHRcdHVybFRyZWUucXVlcnlQYXJhbXMgPSB7fTtcblx0XHR1cmxUcmVlLmZyYWdtZW50ID0gbnVsbDtcblxuXHRcdHJldHVybiB1cmxUcmVlLnRvU3RyaW5nKCk7XG5cdH1cbn1cbiIsIjxhcnRpY2xlPlxuXHQ8bmctY29udGFpbmVyICNwYWdlQnJlYWRjcnVtYnM+PC9uZy1jb250YWluZXI+XG5cblx0PGRpdiBjbGFzcz1cIm5nLWRvYy1wYWdlLWNvbnRyb2xzXCI+XG5cdFx0PGFcblx0XHRcdG5nLWRvYy1idXR0b24taWNvblxuXHRcdFx0Km5nSWY9XCJyb290UGFnZS5lZGl0U291cmNlRmlsZVVybFwiXG5cdFx0XHRbaHJlZl09XCJyb290UGFnZS5lZGl0U291cmNlRmlsZVVybFwiXG5cdFx0XHR0YXJnZXQ9XCJfYmxhbmtcIlxuXHRcdFx0bmdEb2NUb29sdGlwPVwiU3VnZ2VzdCBFZGl0c1wiPlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJlZGl0LTJcIj48L25nLWRvYy1pY29uPlxuXHRcdDwvYT5cblx0XHQ8YVxuXHRcdFx0bmctZG9jLWJ1dHRvbi1pY29uXG5cdFx0XHQqbmdJZj1cInJvb3RQYWdlLnZpZXdTb3VyY2VGaWxlVXJsXCJcblx0XHRcdFtocmVmXT1cInJvb3RQYWdlLnZpZXdTb3VyY2VGaWxlVXJsXCJcblx0XHRcdHRhcmdldD1cIl9ibGFua1wiXG5cdFx0XHRuZ0RvY1Rvb2x0aXA9XCJWaWV3IFNvdXJjZVwiPlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJjb2RlXCI+PC9uZy1kb2MtaWNvbj5cblx0XHQ8L2E+XG5cdDwvZGl2PlxuXG5cdDxkaXYgY2xhc3M9XCJuZy1kb2MtcGFnZS13cmFwcGVyXCIgW25nRG9jUGFnZVByb2Nlc3Nvcl09XCJyb290UGFnZS5wYWdlQ29udGVudFwiICNwYWdlQ29udGFpbmVyPjwvZGl2PlxuXG5cdDxuZy1jb250YWluZXIgI3BhZ2VOYXZpZ2F0aW9uPjwvbmctY29udGFpbmVyPlxuPC9hcnRpY2xlPlxuXG48bmctZG9jLWRpYWxvZy1vdXRsZXRcblx0Km5nSWY9XCIhcm9vdFBhZ2UucGFnZT8uZGlzYWJsZUZ1bGxzY3JlZW5Sb3V0ZXNcIlxuXHRbY29uZmlnXT1cInsgd2lkdGg6ICcxMDB2dycsIGhlaWdodDogJzEwMHZoJyB9XCI+XG5cdDxkaXYgY2xhc3M9XCJuZy1kb2MtZnVsbHNjcmVlbi13cmFwcGVyXCI+XG5cdFx0PHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuXHQ8L2Rpdj5cbjwvbmctZG9jLWRpYWxvZy1vdXRsZXQ+XG5cbjxuZy1jb250YWluZXIgI3BhZ2VUb2M+PC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
import { NgIf, NgTemplateOutlet } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, ElementRef, Input, } from '@angular/core';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, ElementRef, inject, Input, Renderer2, } from '@angular/core';
|
|
3
3
|
import { RouterLink } from '@angular/router';
|
|
4
4
|
import { NgDocIconComponent } from '@ng-doc/ui-kit';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class NgDocPageLinkComponent {
|
|
7
|
-
constructor(
|
|
8
|
-
this.elementRef = elementRef;
|
|
7
|
+
constructor() {
|
|
9
8
|
this.href = '';
|
|
10
9
|
this.classes = '';
|
|
11
10
|
this.isInCode = false;
|
|
11
|
+
this.elementRef = inject(ElementRef);
|
|
12
|
+
this.renderer = inject(Renderer2);
|
|
12
13
|
}
|
|
13
14
|
ngOnInit() {
|
|
14
15
|
this.isInCode = this.elementRef.nativeElement.closest('code') !== null;
|
|
15
16
|
}
|
|
16
17
|
ngOnChanges() {
|
|
17
|
-
this.link =
|
|
18
|
+
this.link = this.renderer.createElement('a');
|
|
18
19
|
this.link.href = this.href;
|
|
19
20
|
}
|
|
20
21
|
get isExternalLink() {
|
|
@@ -29,16 +30,16 @@ export class NgDocPageLinkComponent {
|
|
|
29
30
|
get queryParams() {
|
|
30
31
|
return Object.fromEntries(new URLSearchParams(this.link?.search.replace(/^\?/, '') ?? '').entries());
|
|
31
32
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPageLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: NgDocPageLinkComponent, isStandalone: true, selector: "ng-doc-page-link", inputs: { href: "href", classes: "classes" }, usesOnChanges: true, ngImport: i0, template: "<a\n\t[class]=\"classes\"\n\t[routerLink]=\"path\"\n\t[fragment]=\"fragment\"\n\t[queryParams]=\"queryParams\"\n\t*ngIf=\"!isExternalLink\">\n\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n\n<a [class]=\"classes\" [href]=\"path\" *ngIf=\"isExternalLink\" target=\"_blank\">\n\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n\t<ng-doc-icon icon=\"external-link\" *ngIf=\"!isInCode\"></ng-doc-icon>\n</a>\n\n<ng-template #content>\n\t<ng-content></ng-content>\n</ng-template>\n", styles: [":host{white-space:nowrap}:host ng-doc-icon{margin-left:calc(var(--ng-doc-base-gutter) / 2);--ng-doc-icon-color: currentColor}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34
35
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPageLinkComponent, decorators: [{
|
|
36
37
|
type: Component,
|
|
37
38
|
args: [{ selector: 'ng-doc-page-link', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, RouterLink, NgTemplateOutlet, NgDocIconComponent], template: "<a\n\t[class]=\"classes\"\n\t[routerLink]=\"path\"\n\t[fragment]=\"fragment\"\n\t[queryParams]=\"queryParams\"\n\t*ngIf=\"!isExternalLink\">\n\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n\n<a [class]=\"classes\" [href]=\"path\" *ngIf=\"isExternalLink\" target=\"_blank\">\n\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n\t<ng-doc-icon icon=\"external-link\" *ngIf=\"!isInCode\"></ng-doc-icon>\n</a>\n\n<ng-template #content>\n\t<ng-content></ng-content>\n</ng-template>\n", styles: [":host{white-space:nowrap}:host ng-doc-icon{margin-left:calc(var(--ng-doc-base-gutter) / 2);--ng-doc-icon-color: currentColor}\n"] }]
|
|
38
|
-
}],
|
|
39
|
+
}], propDecorators: { href: [{
|
|
39
40
|
type: Input,
|
|
40
41
|
args: [{ required: true }]
|
|
41
42
|
}], classes: [{
|
|
42
43
|
type: Input
|
|
43
44
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1saW5rLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL2NvbXBvbmVudHMvcGFnZS1saW5rL3BhZ2UtbGluay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UtbGluay9wYWdlLWxpbmsuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFDTix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUdMLFNBQVMsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBVXBELE1BQU0sT0FBTyxzQkFBc0I7SUFSbkM7UUFVQyxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBR2xCLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFFWCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBSW5CLGVBQVUsR0FBNEIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pELGFBQVEsR0FBYyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7S0E0QnpEO0lBMUJBLFFBQVE7UUFDUCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLENBQUM7SUFDeEUsQ0FBQztJQUVELFdBQVc7UUFDVixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBc0IsQ0FBQztRQUNsRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDakIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ1AsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkUsQ0FBQztJQUVELElBQUksUUFBUTtRQUNYLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxTQUFTLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksV0FBVztRQUNkLE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FDeEIsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FDekUsQ0FBQztJQUNILENBQUM7OEdBdkNXLHNCQUFzQjtrR0FBdEIsc0JBQXNCLCtJQ3RCbkMsaWdCQWlCQSx5TERHVyxJQUFJLDZGQUFFLFVBQVUsNE5BQUUsZ0JBQWdCLG9KQUFFLGtCQUFrQjs7MkZBRXBELHNCQUFzQjtrQkFSbEMsU0FBUzsrQkFDQyxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixDQUFDOzhCQUlqRSxJQUFJO3NCQURILEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUl6QixPQUFPO3NCQUROLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDb21wb25lbnQsXG5cdEVsZW1lbnRSZWYsXG5cdGluamVjdCxcblx0SW5wdXQsXG5cdE9uQ2hhbmdlcyxcblx0T25Jbml0LFxuXHRSZW5kZXJlcjIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGFyYW1zLCBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5nRG9jSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmctZG9jLXBhZ2UtbGluaycsXG5cdHRlbXBsYXRlVXJsOiAnLi9wYWdlLWxpbmsuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9wYWdlLWxpbmsuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtOZ0lmLCBSb3V0ZXJMaW5rLCBOZ1RlbXBsYXRlT3V0bGV0LCBOZ0RvY0ljb25Db21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ0RvY1BhZ2VMaW5rQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuXHRASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuXHRocmVmOiBzdHJpbmcgPSAnJztcblxuXHRASW5wdXQoKVxuXHRjbGFzc2VzOiBzdHJpbmcgPSAnJztcblxuXHRwcm90ZWN0ZWQgaXNJbkNvZGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuXHRwcml2YXRlIGxpbms6IEhUTUxBbmNob3JFbGVtZW50IHwgdW5kZWZpbmVkO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gPSBpbmplY3QoRWxlbWVudFJlZik7XG5cdHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMiA9IGluamVjdChSZW5kZXJlcjIpO1xuXG5cdG5nT25Jbml0KCk6IHZvaWQge1xuXHRcdHRoaXMuaXNJbkNvZGUgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbG9zZXN0KCdjb2RlJykgIT09IG51bGw7XG5cdH1cblxuXHRuZ09uQ2hhbmdlcygpOiB2b2lkIHtcblx0XHR0aGlzLmxpbmsgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2EnKSBhcyBIVE1MQW5jaG9yRWxlbWVudDtcblx0XHR0aGlzLmxpbmsuaHJlZiA9IHRoaXMuaHJlZjtcblx0fVxuXG5cdGdldCBpc0V4dGVybmFsTGluaygpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gdGhpcy5ocmVmLnN0YXJ0c1dpdGgoJ2h0dHAnKTtcblx0fVxuXG5cdGdldCBwYXRoKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuICghdGhpcy5pc0V4dGVybmFsTGluayA/IHRoaXMubGluaz8ucGF0aG5hbWUgOiB0aGlzLmhyZWYpID8/ICcnO1xuXHR9XG5cblx0Z2V0IGZyYWdtZW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdFx0cmV0dXJuIHRoaXMubGluaz8uaGFzaC5yZXBsYWNlKC9eIy8sICcnKSB8fCB1bmRlZmluZWQ7XG5cdH1cblxuXHRnZXQgcXVlcnlQYXJhbXMoKTogUGFyYW1zIHtcblx0XHRyZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuXHRcdFx0bmV3IFVSTFNlYXJjaFBhcmFtcyh0aGlzLmxpbms/LnNlYXJjaC5yZXBsYWNlKC9eXFw/LywgJycpID8/ICcnKS5lbnRyaWVzKCksXG5cdFx0KTtcblx0fVxufVxuIiwiPGFcblx0W2NsYXNzXT1cImNsYXNzZXNcIlxuXHRbcm91dGVyTGlua109XCJwYXRoXCJcblx0W2ZyYWdtZW50XT1cImZyYWdtZW50XCJcblx0W3F1ZXJ5UGFyYW1zXT1cInF1ZXJ5UGFyYW1zXCJcblx0Km5nSWY9XCIhaXNFeHRlcm5hbExpbmtcIj5cblx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbjwvYT5cblxuPGEgW2NsYXNzXT1cImNsYXNzZXNcIiBbaHJlZl09XCJwYXRoXCIgKm5nSWY9XCJpc0V4dGVybmFsTGlua1wiIHRhcmdldD1cIl9ibGFua1wiPlxuXHQ8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuXHQ8bmctZG9jLWljb24gaWNvbj1cImV4dGVybmFsLWxpbmtcIiAqbmdJZj1cIiFpc0luQ29kZVwiPjwvbmctZG9jLWljb24+XG48L2E+XG5cbjxuZy10ZW1wbGF0ZSAjY29udGVudD5cblx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -5,10 +5,10 @@ import { NgDocIconComponent, NgDocTextComponent, NgDocTextLeftDirective, NgDocTe
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/common";
|
|
7
7
|
export class NgDocPageNavigationComponent {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
9
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPageNavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: NgDocPageNavigationComponent, isStandalone: true, selector: "ng-doc-page-navigation", inputs: { prevPage: "prevPage", nextPage: "nextPage" }, ngImport: i0, template: "<div class=\"ng-doc-navigation-controls\">\n\t<a class=\"ng-doc-prev-page\" *ngIf=\"prevPage\" [routerLink]=\"prevPage.route\">\n\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t<ng-doc-icon icon=\"arrow-left\" ngDocTextLeft></ng-doc-icon>\n\t\t\tPrevious\n\t\t</div>\n\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ prevPage.title }}</div>\n\t</a>\n\t<a class=\"ng-doc-next-page\" *ngIf=\"nextPage\" [routerLink]=\"nextPage.route\">\n\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\tNext\n\t\t\t<ng-doc-icon icon=\"arrow-right\" ngDocTextRight></ng-doc-icon>\n\t\t</div>\n\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ nextPage.title }}</div>\n\t</a>\n</div>\n", styles: [":host .ng-doc-navigation-controls{display:flex;margin-top:calc(var(--ng-doc-base-gutter) * 12);border-top:1px solid var(--ng-doc-base-2);padding-top:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-navigation-controls a{display:flex;flex-direction:column;text-decoration:unset;transition:var(--ng-doc-transition);--ng-doc-button-hover-background: var(--ng-doc-base-1);--ng-doc-button-active-background: var(--ng-doc-base-2);--ng-doc-text: var(--ng-doc-base-9);--ng-doc-icon-color: var(--ng-doc-text)}:host .ng-doc-navigation-controls a:hover{opacity:.6}:host .ng-doc-navigation-controls a.ng-doc-next-page{margin-left:auto}:host .ng-doc-navigation-controls a.ng-doc-prev-page{align-items:flex-start}:host .ng-doc-navigation-controls a.ng-doc-next-page{align-items:flex-end}:host .ng-doc-navigation-controls a .ng-doc-navigation-page-title{--ng-doc-font-weight: 600;--ng-doc-text: var(--ng-doc-link-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "directive", type: NgDocTextLeftDirective, selector: "[ngDocTextLeft]" }, { kind: "directive", type: NgDocTextRightDirective, selector: "[ngDocTextRight]" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
10
10
|
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPageNavigationComponent, decorators: [{
|
|
12
12
|
type: Component,
|
|
13
13
|
args: [{ selector: 'ng-doc-page-navigation', standalone: true, imports: [
|
|
14
14
|
CommonModule,
|
|
@@ -57,10 +57,10 @@ export class NgDocBasePlayground {
|
|
|
57
57
|
get data() {
|
|
58
58
|
return Object.assign({}, this.configData, this.actionData);
|
|
59
59
|
}
|
|
60
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
61
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.
|
|
60
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocBasePlayground, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
|
|
61
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.7", type: NgDocBasePlayground, inputs: { properties: "properties", actionData: "actionData", content: "content" }, ngImport: i0 }); }
|
|
62
62
|
}
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocBasePlayground, decorators: [{
|
|
64
64
|
type: Directive
|
|
65
65
|
}], ctorParameters: () => [{ type: undefined }], propDecorators: { properties: [{
|
|
66
66
|
type: Input
|
|
@@ -102,15 +102,15 @@ let NgDocPlaygroundDemoComponent = class NgDocPlaygroundDemoComponent {
|
|
|
102
102
|
this.unsubscribe$.next();
|
|
103
103
|
this.unsubscribe$.complete();
|
|
104
104
|
}
|
|
105
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
106
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
105
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPlaygroundDemoComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
106
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: NgDocPlaygroundDemoComponent, isStandalone: true, selector: "ng-doc-playground-demo", inputs: { id: "id", pipeName: "pipeName", selector: "selector", configuration: "configuration", properties: "properties", recreateDemo: "recreateDemo", form: "form", expanded: "expanded" }, viewQueries: [{ propertyName: "demoOutlet", first: true, predicate: ["demoOutlet"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<ng-doc-smooth-resize *ngDocLet=\"code | async as codeContent\" [trigger]=\"codeContent\">\n\t<ng-doc-demo-displayer\n\t\t[code]=\"codeContent ?? ''\"\n\t\t[border]=\"false\"\n\t\t[expanded]=\"expanded\"\n\t\tlanguage=\"html\">\n\t\t<ng-container #demoOutlet></ng-container>\n\t</ng-doc-demo-displayer>\n</ng-doc-smooth-resize>\n", styles: [":host{display:block;border:var(--ng-doc-demo-displayer-border);border-radius:var(--ng-doc-demo-displayer-border-radius);overflow:hidden}:host:not(:last-child){border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}:host:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}\n"], dependencies: [{ kind: "component", type: NgDocDemoDisplayerComponent, selector: "ng-doc-demo-displayer", inputs: ["codeContent", "code", "language", "container", "border", "expanded"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: NgDocSmoothResizeComponent, selector: "ng-doc-smooth-resize", inputs: ["trigger", "animateOpacity"] }, { kind: "directive", type: NgDocLetDirective, selector: "[ngDocLet]", inputs: ["ngDocLet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
107
107
|
};
|
|
108
108
|
NgDocPlaygroundDemoComponent = __decorate([
|
|
109
109
|
UntilDestroy(),
|
|
110
110
|
__metadata("design:paramtypes", [Injector])
|
|
111
111
|
], NgDocPlaygroundDemoComponent);
|
|
112
112
|
export { NgDocPlaygroundDemoComponent };
|
|
113
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
113
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPlaygroundDemoComponent, decorators: [{
|
|
114
114
|
type: Component,
|
|
115
115
|
args: [{ selector: 'ng-doc-playground-demo', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgDocDemoDisplayerComponent, AsyncPipe, NgDocSmoothResizeComponent, NgDocLetDirective], template: "<ng-doc-smooth-resize *ngDocLet=\"code | async as codeContent\" [trigger]=\"codeContent\">\n\t<ng-doc-demo-displayer\n\t\t[code]=\"codeContent ?? ''\"\n\t\t[border]=\"false\"\n\t\t[expanded]=\"expanded\"\n\t\tlanguage=\"html\">\n\t\t<ng-container #demoOutlet></ng-container>\n\t</ng-doc-demo-displayer>\n</ng-doc-smooth-resize>\n", styles: [":host{display:block;border:var(--ng-doc-demo-displayer-border);border-radius:var(--ng-doc-demo-displayer-border-radius);overflow:hidden}:host:not(:last-child){border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}:host:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}\n"] }]
|
|
116
116
|
}], ctorParameters: () => [{ type: i0.Injector }], propDecorators: { id: [{
|
package/esm2022/components/playground/playground-properties/playground-properties.component.mjs
CHANGED
|
@@ -96,10 +96,10 @@ export class NgDocPlaygroundPropertiesComponent {
|
|
|
96
96
|
}
|
|
97
97
|
return undefined;
|
|
98
98
|
}
|
|
99
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
100
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
99
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPlaygroundPropertiesComponent, deps: [{ token: i1.BreakpointObserver }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
100
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: NgDocPlaygroundPropertiesComponent, isStandalone: true, selector: "ng-doc-playground-properties", inputs: { form: "form", properties: "properties", ignoreInputs: "ignoreInputs", dynamicContent: "dynamicContent", defaultValues: "defaultValues", hideSidePanel: "hideSidePanel", recreateDemo: "recreateDemo", showResetButton: "showResetButton" }, outputs: { recreateDemoChange: "recreateDemoChange", resetForm: "resetForm" }, usesOnChanges: true, ngImport: i0, template: "<div\n\tclass=\"ng-doc-playground-properties-wrapper\"\n\t[class.vertical]=\"observer | async\"\n\t*ngIf=\"defaultValues\">\n\t<div class=\"ng-doc-playground-demos\">\n\t\t<ng-content></ng-content>\n\t</div>\n\t<div class=\"ng-doc-playground-properties\" *ngIf=\"!hideSidePanel\">\n\t\t<div class=\"ng-doc-playground-header\">\n\t\t\t<h4 ng-doc-text>Playground</h4>\n\t\t\t<button ng-doc-button color=\"alert\" (click)=\"resetForm.emit()\" *ngIf=\"showResetButton\">\n\t\t\t\tReset\n\t\t\t</button>\n\t\t</div>\n\t\t<div class=\"ng-doc-playground-setting\">\n\t\t\t<ng-doc-checkbox [(ngModel)]=\"recreateDemo\" (ngModelChange)=\"recreateDemoChange.emit($event)\">\n\t\t\t\t<span\n\t\t\t\t\tng-doc-text\n\t\t\t\t\t[ngDocTooltip]=\"'Recreates demo everytime\\none of the input has changed'\"\n\t\t\t\t\t[positions]=\"['bottom-right', 'left-center']\">\n\t\t\t\t\tRecreate\n\t\t\t\t\t<ng-doc-icon icon=\"info\" ngDocTextRight></ng-doc-icon>\n\t\t\t\t</span>\n\t\t\t</ng-doc-checkbox>\n\t\t</div>\n\t\t<div class=\"ng-doc-playground-divider\"></div>\n\t\t<ng-container *ngIf=\"propertyControls.length\">\n\t\t\t<h5 class=\"ng-doc-title\" ng-doc-text>Settings</h5>\n\t\t\t<ng-doc-playground-property\n\t\t\t\t*ngFor=\"let propertyControl of propertyControls\"\n\t\t\t\t[name]=\"propertyControl.property.inputName\"\n\t\t\t\t[property]=\"propertyControl.property\"\n\t\t\t\t[typeControl]=\"propertyControl.typeControl\"\n\t\t\t\t[defaultValue]=\"defaultValues[propertyControl.propertyName]\"\n\t\t\t\t[control]=\"\n\t\t\t\t\tgetFormControl | bind: this | execute: 'properties':propertyControl.propertyName\n\t\t\t\t\">\n\t\t\t</ng-doc-playground-property>\n\t\t</ng-container>\n\n\t\t<ng-container *ngIf=\"(dynamicContent | keyvalue)?.length\">\n\t\t\t<h5 class=\"ng-doc-title\" ng-doc-text>Content</h5>\n\t\t\t<ng-doc-playground-property\n\t\t\t\t*ngFor=\"let content of dynamicContent | keyvalue\"\n\t\t\t\t[name]=\"content.value.label\"\n\t\t\t\t[property]=\"content.value\"\n\t\t\t\t[typeControl]=\"contentTypeControl\"\n\t\t\t\t[control]=\"getFormControl | bind: this | execute: 'content':content.key\">\n\t\t\t</ng-doc-playground-property>\n\t\t</ng-container>\n\t</div>\n</div>\n", styles: [":host .ng-doc-playground-properties-wrapper{position:relative;display:flex;grid-gap:calc(var(--ng-doc-base-gutter) * 2);gap:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-playground-properties-wrapper.vertical{flex-direction:column}:host .ng-doc-playground-properties-wrapper.vertical .ng-doc-playground-demos{margin-right:0;margin-bottom:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-playground-properties-wrapper.vertical .ng-doc-playground-properties{width:100%}:host .ng-doc-playground-properties-wrapper .ng-doc-playground-demos{display:flex;flex-direction:column;width:100%;overflow:hidden}:host .ng-doc-playground-properties-wrapper .ng-doc-playground-properties{flex-shrink:0;width:300px;padding:calc(var(--ng-doc-base-gutter) * 2) calc(var(--ng-doc-base-gutter) * 3);background-color:var(--ng-doc-base-1);border-radius:var(--ng-doc-base-gutter);border:1px solid var(--ng-doc-border-color)}:host .ng-doc-playground-properties-wrapper .ng-doc-playground-properties ng-doc-playground-property:not(:last-child){margin-bottom:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-playground-properties-wrapper .ng-doc-playground-properties .ng-doc-playground-controls{display:flex;justify-content:flex-end}:host .ng-doc-playground-properties-wrapper .ng-doc-playground-properties .ng-doc-playground-header{display:flex;align-items:center;justify-content:space-between;height:40px;margin-bottom:calc(var(--ng-doc-base-gutter) * 2)}:host .ng-doc-playground-properties-wrapper .ng-doc-playground-properties .ng-doc-playground-header h4{margin:0}:host .ng-doc-playground-properties-wrapper .ng-doc-playground-properties .ng-doc-playground-setting{display:flex;flex-direction:column}:host .ng-doc-playground-properties-wrapper .ng-doc-title{margin-top:0;margin-bottom:calc(var(--ng-doc-base-gutter) + var(--ng-doc-base-gutter) / 2)}:host .ng-doc-playground-divider{margin:calc(var(--ng-doc-base-gutter) * 2) 0;height:1px;background-color:var(--ng-doc-base-2)}\n"], dependencies: [{ kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "component", type: NgDocButtonComponent, selector: "button[ng-doc-button], a[ng-doc-button], button[ng-doc-button-flat], a[ng-doc-button-flat], button[ng-doc-button-text], a[ng-doc-button-text]", inputs: ["size", "color", "rounded"] }, { kind: "component", type: NgDocCheckboxComponent, selector: "ng-doc-checkbox", inputs: ["color"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "directive", type: NgDocTextRightDirective, selector: "[ngDocTextRight]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocPlaygroundPropertyComponent, selector: "ng-doc-playground-property", inputs: ["name", "property", "typeControl", "control", "defaultValue"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: NgDocBindPipe, name: "bind" }, { kind: "pipe", type: NgDocExecutePipe, name: "execute" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
101
101
|
}
|
|
102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPlaygroundPropertiesComponent, decorators: [{
|
|
103
103
|
type: Component,
|
|
104
104
|
args: [{ selector: 'ng-doc-playground-properties', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
105
105
|
NgDocTextComponent,
|
|
@@ -38,10 +38,10 @@ export class NgDocPlaygroundPropertyComponent {
|
|
|
38
38
|
? this.property.description ?? ''
|
|
39
39
|
: '';
|
|
40
40
|
}
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
42
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPlaygroundPropertyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", 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 }); }
|
|
43
43
|
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: NgDocPlaygroundPropertyComponent, decorators: [{
|
|
45
45
|
type: Component,
|
|
46
46
|
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"] }]
|
|
47
47
|
}], propDecorators: { name: [{
|