@ng-doc/app 16.4.0 → 16.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/page/index.d.ts +0 -1
- package/esm2022/components/page/index.mjs +1 -2
- package/esm2022/components/page/page.component.mjs +14 -2
- package/esm2022/components/playground/playground-demo/playground-demo.component.mjs +3 -3
- package/esm2022/helpers/provide-type-control.mjs +12 -7
- package/esm2022/processors/html-processor/html-processor.directive.mjs +4 -2
- package/fesm2022/ng-doc-app-components-page.mjs +16 -30
- package/fesm2022/ng-doc-app-components-page.mjs.map +1 -1
- package/fesm2022/ng-doc-app-components-playground.mjs +2 -2
- package/fesm2022/ng-doc-app-components-playground.mjs.map +1 -1
- package/fesm2022/ng-doc-app-helpers.mjs +11 -6
- package/fesm2022/ng-doc-app-helpers.mjs.map +1 -1
- package/fesm2022/ng-doc-app-processors-html-processor.mjs +3 -1
- package/fesm2022/ng-doc-app-processors-html-processor.mjs.map +1 -1
- package/package.json +3 -3
- package/processors/html-processor/html-processor.directive.d.ts +2 -1
- package/components/page/page.module.d.ts +0 -9
- package/esm2022/components/page/page.module.mjs +0 -32
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
export * from './page.component';
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcGFnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wYWdlLm1vZHVsZSc7XG4iXX0=
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcGFnZS5jb21wb25lbnQnO1xuIl19
|
|
@@ -4,9 +4,11 @@ import { Router, RouterLink } from '@angular/router';
|
|
|
4
4
|
import { NgDocRootPage } from '@ng-doc/app/classes/root-page';
|
|
5
5
|
import { NgDocBreadcrumbComponent } from '@ng-doc/app/components/breadcrumb';
|
|
6
6
|
import { NgDocTocComponent } from '@ng-doc/app/components/toc';
|
|
7
|
+
import { provideTypeControl } from '@ng-doc/app/helpers';
|
|
7
8
|
import { NgDocSanitizeHtmlPipe } from '@ng-doc/app/pipes/sanitize-html';
|
|
8
9
|
import { NgDocBlockquoteProcessorDirective, NgDocCodeProcessorDirective, NgDocDemoPaneProcessorDirective, NgDocDemoProcessorDirective, NgDocIconProcessorDirective, NgDocLinkProcessorDirective, NgDocPlaygroundProcessorDirective, NgDocTooltipProcessorDirective, } from '@ng-doc/app/processors';
|
|
9
10
|
import { NG_DOC_CONTEXT } from '@ng-doc/app/tokens';
|
|
11
|
+
import { NgDocBooleanControlComponent, NgDocNumberControlComponent, NgDocStringControlComponent, NgDocTypeAliasControlComponent, } from '@ng-doc/app/type-controls';
|
|
10
12
|
import { NgDocButtonIconComponent, NgDocIconComponent, NgDocMediaQueryDirective, NgDocTextComponent, NgDocTextLeftDirective, NgDocTextRightDirective, NgDocTooltipDirective, } from '@ng-doc/ui-kit';
|
|
11
13
|
import * as i0 from "@angular/core";
|
|
12
14
|
import * as i1 from "@angular/router";
|
|
@@ -30,7 +32,12 @@ class NgDocPageComponent {
|
|
|
30
32
|
return urlTree.toString();
|
|
31
33
|
}
|
|
32
34
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageComponent, deps: [{ token: NG_DOC_CONTEXT }, { token: i1.Router }, { token: i2.NgDocRootPage }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocPageComponent, isStandalone: true, selector: "ng-doc-page",
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocPageComponent, isStandalone: true, selector: "ng-doc-page", providers: [
|
|
36
|
+
provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 }),
|
|
37
|
+
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
38
|
+
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
39
|
+
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
40
|
+
], ngImport: i0, template: "<article>\n\t<ng-doc-breadcrumb *ngIf=\"rootPage.pageType === 'guide'\"></ng-doc-breadcrumb>\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>\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>\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div\n\t\tclass=\"ng-doc-page-wrapper\"\n\t\t[innerHTML]=\"rootPage.pageContent | ngDocSanitizeHtml\"\n\t\tngDocBlockquoteProcessor\n\t\tngDocLinkProcessor\n\t\tngDocCodeProcessor\n\t\tngDocIconProcessor\n\t\tngDocTooltipProcessor\n\t\tngDocDemoProcessor\n\t\tngDocDemoPaneProcessor\n\t\tngDocPlaygroundProcessor\n\t\t#pageContainer\n\t></div>\n\n\t<div class=\"ng-doc-navigation-controls\" *ngIf=\"rootPage.pageType === 'guide'\">\n\t\t<a class=\"ng-doc-prev-page\" *ngIf=\"prevPage\" [routerLink]=\"prevPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\t<ng-doc-icon icon=\"arrow-left\" ngDocTextLeft></ng-doc-icon>\n\t\t\t\tPrevious\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ prevPage.title }}</div>\n\t\t</a>\n\t\t<a class=\"ng-doc-next-page\" *ngIf=\"nextPage\" [routerLink]=\"nextPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\tNext\n\t\t\t\t<ng-doc-icon icon=\"arrow-right\" ngDocTextRight></ng-doc-icon>\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ nextPage.title }}</div>\n\t\t</a>\n\t</div>\n</article>\n\n<ng-template\n\t[ngDocMediaQuery]=\"[mediaQuery.breakpoints.Large, mediaQuery.breakpoints.XLarge]\"\n\t#mediaQuery=\"ngDocMediaQuery\"\n>\n\t<ng-doc-toc [pageContainer]=\"pageContainer\"></ng-doc-toc>\n</ng-template>\n", styles: [":host{display:flex}: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}:host ng-doc-toc{--ng-doc-toc-margin: calc(var(--ng-doc-base-gutter) * 3);flex-shrink:0}@media screen and (max-width: 1200px){:host ng-doc-toc{display:none}}: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-10);--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: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocBreadcrumbComponent, selector: "ng-doc-breadcrumb" }, { 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", "size"] }, { kind: "directive", type: NgDocBlockquoteProcessorDirective, selector: "[ngDocBlockquoteProcessor]" }, { kind: "directive", type: NgDocIconProcessorDirective, selector: "[ngDocIconProcessor]" }, { kind: "directive", type: NgDocLinkProcessorDirective, selector: "[ngDocLinkProcessor]" }, { kind: "directive", type: NgDocCodeProcessorDirective, selector: "[ngDocCodeProcessor]" }, { kind: "directive", type: NgDocTooltipProcessorDirective, selector: "[ngDocTooltipProcessor]" }, { kind: "directive", type: NgDocDemoProcessorDirective, selector: "[ngDocDemoProcessor]" }, { kind: "directive", type: NgDocDemoPaneProcessorDirective, selector: "[ngDocDemoPaneProcessor]" }, { kind: "directive", type: NgDocPlaygroundProcessorDirective, selector: "[ngDocPlaygroundProcessor]" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { 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: NgDocMediaQueryDirective, selector: "[ngDocMediaQuery]", inputs: ["ngDocMediaQuery"], exportAs: ["ngDocMediaQuery"] }, { kind: "component", type: NgDocTocComponent, selector: "ng-doc-toc", inputs: ["pageContainer"] }, { kind: "pipe", type: NgDocSanitizeHtmlPipe, name: "ngDocSanitizeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34
41
|
}
|
|
35
42
|
export { NgDocPageComponent };
|
|
36
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageComponent, decorators: [{
|
|
@@ -56,9 +63,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
56
63
|
NgDocMediaQueryDirective,
|
|
57
64
|
NgDocTocComponent,
|
|
58
65
|
NgDocSanitizeHtmlPipe,
|
|
66
|
+
], providers: [
|
|
67
|
+
provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 }),
|
|
68
|
+
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
69
|
+
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
70
|
+
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
59
71
|
], template: "<article>\n\t<ng-doc-breadcrumb *ngIf=\"rootPage.pageType === 'guide'\"></ng-doc-breadcrumb>\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>\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>\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div\n\t\tclass=\"ng-doc-page-wrapper\"\n\t\t[innerHTML]=\"rootPage.pageContent | ngDocSanitizeHtml\"\n\t\tngDocBlockquoteProcessor\n\t\tngDocLinkProcessor\n\t\tngDocCodeProcessor\n\t\tngDocIconProcessor\n\t\tngDocTooltipProcessor\n\t\tngDocDemoProcessor\n\t\tngDocDemoPaneProcessor\n\t\tngDocPlaygroundProcessor\n\t\t#pageContainer\n\t></div>\n\n\t<div class=\"ng-doc-navigation-controls\" *ngIf=\"rootPage.pageType === 'guide'\">\n\t\t<a class=\"ng-doc-prev-page\" *ngIf=\"prevPage\" [routerLink]=\"prevPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\t<ng-doc-icon icon=\"arrow-left\" ngDocTextLeft></ng-doc-icon>\n\t\t\t\tPrevious\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ prevPage.title }}</div>\n\t\t</a>\n\t\t<a class=\"ng-doc-next-page\" *ngIf=\"nextPage\" [routerLink]=\"nextPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\tNext\n\t\t\t\t<ng-doc-icon icon=\"arrow-right\" ngDocTextRight></ng-doc-icon>\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ nextPage.title }}</div>\n\t\t</a>\n\t</div>\n</article>\n\n<ng-template\n\t[ngDocMediaQuery]=\"[mediaQuery.breakpoints.Large, mediaQuery.breakpoints.XLarge]\"\n\t#mediaQuery=\"ngDocMediaQuery\"\n>\n\t<ng-doc-toc [pageContainer]=\"pageContainer\"></ng-doc-toc>\n</ng-template>\n", styles: [":host{display:flex}: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}:host ng-doc-toc{--ng-doc-toc-margin: calc(var(--ng-doc-base-gutter) * 3);flex-shrink:0}@media screen and (max-width: 1200px){:host ng-doc-toc{display:none}}: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-10);--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"] }]
|
|
60
72
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
61
73
|
type: Inject,
|
|
62
74
|
args: [NG_DOC_CONTEXT]
|
|
63
75
|
}] }, { type: i1.Router }, { type: i2.NgDocRootPage }]; } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDckMsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDNUQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDM0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFN0QsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDdEUsT0FBTyxFQUNOLGlDQUFpQyxFQUNqQywyQkFBMkIsRUFDM0IsK0JBQStCLEVBQy9CLDJCQUEyQixFQUMzQiwyQkFBMkIsRUFDM0IsMkJBQTJCLEVBQzNCLGlDQUFpQyxFQUNqQyw4QkFBOEIsR0FDOUIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUNOLHdCQUF3QixFQUN4QixrQkFBa0IsRUFDbEIsd0JBQXdCLEVBQ3hCLGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLHFCQUFxQixHQUNyQixNQUFNLGdCQUFnQixDQUFDOzs7O0FBRXhCLE1BNkJhLGtCQUFrQjtJQUk5QixZQUVrQixPQUFxQixFQUNyQixNQUFjLEVBQ3RCLFFBQXVCO1FBRmYsWUFBTyxHQUFQLE9BQU8sQ0FBYztRQUNyQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ3RCLGFBQVEsR0FBUixRQUFRLENBQWU7UUFFaEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTFELElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFxQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN2RyxJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBcUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVPLFNBQVMsQ0FBQyxLQUF3QjtRQUN6QyxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFxQixFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckgsQ0FBQztJQUVELElBQVksR0FBRztRQUNkLE1BQU0sT0FBTyxHQUFZLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFL0QsT0FBTyxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDekIsT0FBTyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFFeEIsT0FBTyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs4R0EzQlcsa0JBQWtCLGtCQUtyQixjQUFjO2tHQUxYLGtCQUFrQix1RUMxRC9CLGloRUE2REEsczJDRHpCRSxJQUFJLDZGQUNKLHdCQUF3Qiw4REFDeEIsd0JBQXdCLDJIQUN4QixxQkFBcUIsMFVBQ3JCLGtCQUFrQixrRkFDbEIsaUNBQWlDLHVFQUNqQywyQkFBMkIsaUVBQzNCLDJCQUEyQixpRUFDM0IsMkJBQTJCLGlFQUMzQiw4QkFBOEIsb0VBQzlCLDJCQUEyQixpRUFDM0IsK0JBQStCLHFFQUMvQixpQ0FBaUMsdUVBQ2pDLFVBQVUsNE5BQ1Ysa0JBQWtCLGlIQUNsQixzQkFBc0IsNERBQ3RCLHVCQUF1Qiw2REFDdkIsd0JBQXdCLDBIQUN4QixpQkFBaUIsNkVBQ2pCLHFCQUFxQjs7U0FHVixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkE3QjlCLFNBQVM7K0JBQ0MsYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUixJQUFJO3dCQUNKLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLGtCQUFrQjt3QkFDbEIsaUNBQWlDO3dCQUNqQywyQkFBMkI7d0JBQzNCLDJCQUEyQjt3QkFDM0IsMkJBQTJCO3dCQUMzQiw4QkFBOEI7d0JBQzlCLDJCQUEyQjt3QkFDM0IsK0JBQStCO3dCQUMvQixpQ0FBaUM7d0JBQ2pDLFVBQVU7d0JBQ1Ysa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLHVCQUF1Qjt3QkFDdkIsd0JBQXdCO3dCQUN4QixpQkFBaUI7d0JBQ2pCLHFCQUFxQjtxQkFDckI7OzBCQU9DLE1BQU07MkJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Um91dGVyLCBSb3V0ZXJMaW5rLCBVcmxUcmVlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtOZ0RvY1Jvb3RQYWdlfSBmcm9tICdAbmctZG9jL2FwcC9jbGFzc2VzL3Jvb3QtcGFnZSc7XG5pbXBvcnQge05nRG9jQnJlYWRjcnVtYkNvbXBvbmVudH0gZnJvbSAnQG5nLWRvYy9hcHAvY29tcG9uZW50cy9icmVhZGNydW1iJztcbmltcG9ydCB7TmdEb2NUb2NDb21wb25lbnR9IGZyb20gJ0BuZy1kb2MvYXBwL2NvbXBvbmVudHMvdG9jJztcbmltcG9ydCB7TmdEb2NDb250ZXh0LCBOZ0RvY05hdmlnYXRpb259IGZyb20gJ0BuZy1kb2MvYXBwL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtOZ0RvY1Nhbml0aXplSHRtbFBpcGV9IGZyb20gJ0BuZy1kb2MvYXBwL3BpcGVzL3Nhbml0aXplLWh0bWwnO1xuaW1wb3J0IHtcblx0TmdEb2NCbG9ja3F1b3RlUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHROZ0RvY0NvZGVQcm9jZXNzb3JEaXJlY3RpdmUsXG5cdE5nRG9jRGVtb1BhbmVQcm9jZXNzb3JEaXJlY3RpdmUsXG5cdE5nRG9jRGVtb1Byb2Nlc3NvckRpcmVjdGl2ZSxcblx0TmdEb2NJY29uUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHROZ0RvY0xpbmtQcm9jZXNzb3JEaXJlY3RpdmUsXG5cdE5nRG9jUGxheWdyb3VuZFByb2Nlc3NvckRpcmVjdGl2ZSxcblx0TmdEb2NUb29sdGlwUHJvY2Vzc29yRGlyZWN0aXZlLFxufSBmcm9tICdAbmctZG9jL2FwcC9wcm9jZXNzb3JzJztcbmltcG9ydCB7TkdfRE9DX0NPTlRFWFR9IGZyb20gJ0BuZy1kb2MvYXBwL3Rva2Vucyc7XG5pbXBvcnQge1xuXHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0TmdEb2NNZWRpYVF1ZXJ5RGlyZWN0aXZlLFxuXHROZ0RvY1RleHRDb21wb25lbnQsXG5cdE5nRG9jVGV4dExlZnREaXJlY3RpdmUsXG5cdE5nRG9jVGV4dFJpZ2h0RGlyZWN0aXZlLFxuXHROZ0RvY1Rvb2x0aXBEaXJlY3RpdmUsXG59IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmctZG9jLXBhZ2UnLFxuXHR0ZW1wbGF0ZVVybDogJy4vcGFnZS5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL3BhZ2UuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtcblx0XHROZ0lmLFxuXHRcdE5nRG9jQnJlYWRjcnVtYkNvbXBvbmVudCxcblx0XHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdFx0TmdEb2NUb29sdGlwRGlyZWN0aXZlLFxuXHRcdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY0Jsb2NrcXVvdGVQcm9jZXNzb3JEaXJlY3RpdmUsXG5cdFx0TmdEb2NJY29uUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHRcdE5nRG9jTGlua1Byb2Nlc3NvckRpcmVjdGl2ZSxcblx0XHROZ0RvY0NvZGVQcm9jZXNzb3JEaXJlY3RpdmUsXG5cdFx0TmdEb2NUb29sdGlwUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHRcdE5nRG9jRGVtb1Byb2Nlc3NvckRpcmVjdGl2ZSxcblx0XHROZ0RvY0RlbW9QYW5lUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHRcdE5nRG9jUGxheWdyb3VuZFByb2Nlc3NvckRpcmVjdGl2ZSxcblx0XHRSb3V0ZXJMaW5rLFxuXHRcdE5nRG9jVGV4dENvbXBvbmVudCxcblx0XHROZ0RvY1RleHRMZWZ0RGlyZWN0aXZlLFxuXHRcdE5nRG9jVGV4dFJpZ2h0RGlyZWN0aXZlLFxuXHRcdE5nRG9jTWVkaWFRdWVyeURpcmVjdGl2ZSxcblx0XHROZ0RvY1RvY0NvbXBvbmVudCxcblx0XHROZ0RvY1Nhbml0aXplSHRtbFBpcGUsXG5cdF0sXG59KVxuZXhwb3J0IGNsYXNzIE5nRG9jUGFnZUNvbXBvbmVudCB7XG5cdHJlYWRvbmx5IHByZXZQYWdlPzogTmdEb2NOYXZpZ2F0aW9uO1xuXHRyZWFkb25seSBuZXh0UGFnZT86IE5nRG9jTmF2aWdhdGlvbjtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRASW5qZWN0KE5HX0RPQ19DT05URVhUKVxuXHRcdHByaXZhdGUgcmVhZG9ubHkgY29udGV4dDogTmdEb2NDb250ZXh0LFxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG5cdFx0cmVhZG9ubHkgcm9vdFBhZ2U6IE5nRG9jUm9vdFBhZ2UsXG5cdCkge1xuXHRcdGNvbnN0IGZsYXRQYWdlcyA9IHRoaXMuZmxhdFBhZ2VzKHRoaXMuY29udGV4dC5uYXZpZ2F0aW9uKTtcblxuXHRcdHRoaXMucHJldlBhZ2UgPSBmbGF0UGFnZXNbZmxhdFBhZ2VzLmZpbmRJbmRleCgoaXRlbTogTmdEb2NOYXZpZ2F0aW9uKSA9PiB0aGlzLnVybCA9PT0gaXRlbS5yb3V0ZSkgLSAxXTtcblx0XHR0aGlzLm5leHRQYWdlID0gZmxhdFBhZ2VzW2ZsYXRQYWdlcy5maW5kSW5kZXgoKGl0ZW06IE5nRG9jTmF2aWdhdGlvbikgPT4gdGhpcy51cmwgPT09IGl0ZW0ucm91dGUpICsgMV07XG5cdH1cblxuXHRwcml2YXRlIGZsYXRQYWdlcyhpdGVtczogTmdEb2NOYXZpZ2F0aW9uW10pOiBOZ0RvY05hdmlnYXRpb25bXSB7XG5cdFx0cmV0dXJuIGl0ZW1zLm1hcCgoaXRlbTogTmdEb2NOYXZpZ2F0aW9uKSA9PiBbaXRlbS5jaGlsZHJlbj8ubGVuZ3RoID8gdGhpcy5mbGF0UGFnZXMoaXRlbS5jaGlsZHJlbikgOiBpdGVtXSkuZmxhdCgyKTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0IHVybCgpOiBzdHJpbmcge1xuXHRcdGNvbnN0IHVybFRyZWU6IFVybFRyZWUgPSB0aGlzLnJvdXRlci5wYXJzZVVybCh0aGlzLnJvdXRlci51cmwpO1xuXG5cdFx0dXJsVHJlZS5xdWVyeVBhcmFtcyA9IHt9O1xuXHRcdHVybFRyZWUuZnJhZ21lbnQgPSBudWxsO1xuXG5cdFx0cmV0dXJuIHVybFRyZWUudG9TdHJpbmcoKTtcblx0fVxufVxuIiwiPGFydGljbGU+XG5cdDxuZy1kb2MtYnJlYWRjcnVtYiAqbmdJZj1cInJvb3RQYWdlLnBhZ2VUeXBlID09PSAnZ3VpZGUnXCI+PC9uZy1kb2MtYnJlYWRjcnVtYj5cblx0PGRpdiBjbGFzcz1cIm5nLWRvYy1wYWdlLWNvbnRyb2xzXCI+XG5cdFx0PGFcblx0XHRcdG5nLWRvYy1idXR0b24taWNvblxuXHRcdFx0Km5nSWY9XCJyb290UGFnZS5lZGl0U291cmNlRmlsZVVybFwiXG5cdFx0XHRbaHJlZl09XCJyb290UGFnZS5lZGl0U291cmNlRmlsZVVybFwiXG5cdFx0XHR0YXJnZXQ9XCJfYmxhbmtcIlxuXHRcdFx0bmdEb2NUb29sdGlwPVwiU3VnZ2VzdCBFZGl0c1wiXG5cdFx0PlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJlZGl0LTJcIj48L25nLWRvYy1pY29uPlxuXHRcdDwvYT5cblx0XHQ8YVxuXHRcdFx0bmctZG9jLWJ1dHRvbi1pY29uXG5cdFx0XHQqbmdJZj1cInJvb3RQYWdlLnZpZXdTb3VyY2VGaWxlVXJsXCJcblx0XHRcdFtocmVmXT1cInJvb3RQYWdlLnZpZXdTb3VyY2VGaWxlVXJsXCJcblx0XHRcdHRhcmdldD1cIl9ibGFua1wiXG5cdFx0XHRuZ0RvY1Rvb2x0aXA9XCJWaWV3IFNvdXJjZVwiXG5cdFx0PlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJjb2RlXCI+PC9uZy1kb2MtaWNvbj5cblx0XHQ8L2E+XG5cdDwvZGl2PlxuXG5cdDxkaXZcblx0XHRjbGFzcz1cIm5nLWRvYy1wYWdlLXdyYXBwZXJcIlxuXHRcdFtpbm5lckhUTUxdPVwicm9vdFBhZ2UucGFnZUNvbnRlbnQgfCBuZ0RvY1Nhbml0aXplSHRtbFwiXG5cdFx0bmdEb2NCbG9ja3F1b3RlUHJvY2Vzc29yXG5cdFx0bmdEb2NMaW5rUHJvY2Vzc29yXG5cdFx0bmdEb2NDb2RlUHJvY2Vzc29yXG5cdFx0bmdEb2NJY29uUHJvY2Vzc29yXG5cdFx0bmdEb2NUb29sdGlwUHJvY2Vzc29yXG5cdFx0bmdEb2NEZW1vUHJvY2Vzc29yXG5cdFx0bmdEb2NEZW1vUGFuZVByb2Nlc3NvclxuXHRcdG5nRG9jUGxheWdyb3VuZFByb2Nlc3NvclxuXHRcdCNwYWdlQ29udGFpbmVyXG5cdD48L2Rpdj5cblxuXHQ8ZGl2IGNsYXNzPVwibmctZG9jLW5hdmlnYXRpb24tY29udHJvbHNcIiAqbmdJZj1cInJvb3RQYWdlLnBhZ2VUeXBlID09PSAnZ3VpZGUnXCI+XG5cdFx0PGEgY2xhc3M9XCJuZy1kb2MtcHJldi1wYWdlXCIgKm5nSWY9XCJwcmV2UGFnZVwiIFtyb3V0ZXJMaW5rXT1cInByZXZQYWdlLnJvdXRlXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLW5hdmlnYXRpb24tcGFnZS1sYWJlbFwiIG5nLWRvYy10ZXh0IHNpemU9XCJzbWFsbFwiPlxuXHRcdFx0XHQ8bmctZG9jLWljb24gaWNvbj1cImFycm93LWxlZnRcIiBuZ0RvY1RleHRMZWZ0PjwvbmctZG9jLWljb24+XG5cdFx0XHRcdFByZXZpb3VzXG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJuZy1kb2MtbmF2aWdhdGlvbi1wYWdlLXRpdGxlXCIgbmctZG9jLXRleHQ+e3sgcHJldlBhZ2UudGl0bGUgfX08L2Rpdj5cblx0XHQ8L2E+XG5cdFx0PGEgY2xhc3M9XCJuZy1kb2MtbmV4dC1wYWdlXCIgKm5nSWY9XCJuZXh0UGFnZVwiIFtyb3V0ZXJMaW5rXT1cIm5leHRQYWdlLnJvdXRlXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLW5hdmlnYXRpb24tcGFnZS1sYWJlbFwiIG5nLWRvYy10ZXh0IHNpemU9XCJzbWFsbFwiPlxuXHRcdFx0XHROZXh0XG5cdFx0XHRcdDxuZy1kb2MtaWNvbiBpY29uPVwiYXJyb3ctcmlnaHRcIiBuZ0RvY1RleHRSaWdodD48L25nLWRvYy1pY29uPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLW5hdmlnYXRpb24tcGFnZS10aXRsZVwiIG5nLWRvYy10ZXh0Pnt7IG5leHRQYWdlLnRpdGxlIH19PC9kaXY+XG5cdFx0PC9hPlxuXHQ8L2Rpdj5cbjwvYXJ0aWNsZT5cblxuPG5nLXRlbXBsYXRlXG5cdFtuZ0RvY01lZGlhUXVlcnldPVwiW21lZGlhUXVlcnkuYnJlYWtwb2ludHMuTGFyZ2UsIG1lZGlhUXVlcnkuYnJlYWtwb2ludHMuWExhcmdlXVwiXG5cdCNtZWRpYVF1ZXJ5PVwibmdEb2NNZWRpYVF1ZXJ5XCJcbj5cblx0PG5nLWRvYy10b2MgW3BhZ2VDb250YWluZXJdPVwicGFnZUNvbnRhaW5lclwiPjwvbmctZG9jLXRvYz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDckMsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDNUQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDM0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDdEUsT0FBTyxFQUNOLGlDQUFpQyxFQUNqQywyQkFBMkIsRUFDM0IsK0JBQStCLEVBQy9CLDJCQUEyQixFQUMzQiwyQkFBMkIsRUFDM0IsMkJBQTJCLEVBQzNCLGlDQUFpQyxFQUNqQyw4QkFBOEIsR0FDOUIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUNOLDRCQUE0QixFQUM1QiwyQkFBMkIsRUFDM0IsMkJBQTJCLEVBQzNCLDhCQUE4QixHQUM5QixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFDTix3QkFBd0IsRUFDeEIsa0JBQWtC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Q0osd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHFCQUFxQjt3QkFDckIsa0JBQWtCO3dCQUNsQixpQ0FBaUM7d0JBQ2pDLDJCQUEyQjt3QkFDM0IsMkJBQTJCO3dCQUMzQiwyQkFBMkI7d0JBQzNCLDhCQUE4Qjt3QkFDOUIsMkJBQTJCO3dCQUMzQiwrQkFBK0I7d0JBQy9CLGlDQUFpQzt3QkFDakMsVUFBVTt3QkFDVixrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLGlCQUFpQjt3QkFDakIscUJBQXFCO3FCQUNyQixhQUNVO3dCQUNWLGtCQUFrQixDQUFDLGdCQUFnQixFQUFFLDhCQUE4QixFQUFFLEVBQUMsS0FBSyxFQUFFLEVBQUUsRUFBQyxDQUFDO3dCQUNqRixrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsMkJBQTJCLEVBQUUsRUFBQyxLQUFLLEVBQUUsRUFBRSxFQUFDLENBQUM7d0JBQ3RFLGtCQUFrQixDQUFDLFFBQVEsRUFBRSwyQkFBMkIsRUFBRSxFQUFDLEtBQUssRUFBRSxFQUFFLEVBQUMsQ0FBQzt3QkFDdEUsa0JBQWtCLENBQUMsU0FBUyxFQUFFLDRCQUE0QixFQUFFLEVBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFDLENBQUM7cUJBQ3pGOzswQkFPQyxNQUFNOzJCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1JvdXRlciwgUm91dGVyTGluaywgVXJsVHJlZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7TmdEb2NSb290UGFnZX0gZnJvbSAnQG5nLWRvYy9hcHAvY2xhc3Nlcy9yb290LXBhZ2UnO1xuaW1wb3J0IHtOZ0RvY0JyZWFkY3J1bWJDb21wb25lbnR9IGZyb20gJ0BuZy1kb2MvYXBwL2NvbXBvbmVudHMvYnJlYWRjcnVtYic7XG5pbXBvcnQge05nRG9jVG9jQ29tcG9uZW50fSBmcm9tICdAbmctZG9jL2FwcC9jb21wb25lbnRzL3RvYyc7XG5pbXBvcnQge3Byb3ZpZGVUeXBlQ29udHJvbH0gZnJvbSAnQG5nLWRvYy9hcHAvaGVscGVycyc7XG5pbXBvcnQge05nRG9jQ29udGV4dCwgTmdEb2NOYXZpZ2F0aW9ufSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcbmltcG9ydCB7TmdEb2NTYW5pdGl6ZUh0bWxQaXBlfSBmcm9tICdAbmctZG9jL2FwcC9waXBlcy9zYW5pdGl6ZS1odG1sJztcbmltcG9ydCB7XG5cdE5nRG9jQmxvY2txdW90ZVByb2Nlc3NvckRpcmVjdGl2ZSxcblx0TmdEb2NDb2RlUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHROZ0RvY0RlbW9QYW5lUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHROZ0RvY0RlbW9Qcm9jZXNzb3JEaXJlY3RpdmUsXG5cdE5nRG9jSWNvblByb2Nlc3NvckRpcmVjdGl2ZSxcblx0TmdEb2NMaW5rUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHROZ0RvY1BsYXlncm91bmRQcm9jZXNzb3JEaXJlY3RpdmUsXG5cdE5nRG9jVG9vbHRpcFByb2Nlc3NvckRpcmVjdGl2ZSxcbn0gZnJvbSAnQG5nLWRvYy9hcHAvcHJvY2Vzc29ycyc7XG5pbXBvcnQge05HX0RPQ19DT05URVhUfSBmcm9tICdAbmctZG9jL2FwcC90b2tlbnMnO1xuaW1wb3J0IHtcblx0TmdEb2NCb29sZWFuQ29udHJvbENvbXBvbmVudCxcblx0TmdEb2NOdW1iZXJDb250cm9sQ29tcG9uZW50LFxuXHROZ0RvY1N0cmluZ0NvbnRyb2xDb21wb25lbnQsXG5cdE5nRG9jVHlwZUFsaWFzQ29udHJvbENvbXBvbmVudCxcbn0gZnJvbSAnQG5nLWRvYy9hcHAvdHlwZS1jb250cm9scyc7XG5pbXBvcnQge1xuXHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0TmdEb2NNZWRpYVF1ZXJ5RGlyZWN0aXZlLFxuXHROZ0RvY1RleHRDb21wb25lbnQsXG5cdE5nRG9jVGV4dExlZnREaXJlY3RpdmUsXG5cdE5nRG9jVGV4dFJpZ2h0RGlyZWN0aXZlLFxuXHROZ0RvY1Rvb2x0aXBEaXJlY3RpdmUsXG59IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmctZG9jLXBhZ2UnLFxuXHR0ZW1wbGF0ZVVybDogJy4vcGFnZS5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL3BhZ2UuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtcblx0XHROZ0lmLFxuXHRcdE5nRG9jQnJlYWRjcnVtYkNvbXBvbmVudCxcblx0XHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdFx0TmdEb2NUb29sdGlwRGlyZWN0aXZlLFxuXHRcdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY0Jsb2NrcXVvdGVQcm9jZXNzb3JEaXJlY3RpdmUsXG5cdFx0TmdEb2NJY29uUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHRcdE5nRG9jTGlua1Byb2Nlc3NvckRpcmVjdGl2ZSxcblx0XHROZ0RvY0NvZGVQcm9jZXNzb3JEaXJlY3RpdmUsXG5cdFx0TmdEb2NUb29sdGlwUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHRcdE5nRG9jRGVtb1Byb2Nlc3NvckRpcmVjdGl2ZSxcblx0XHROZ0RvY0RlbW9QYW5lUHJvY2Vzc29yRGlyZWN0aXZlLFxuXHRcdE5nRG9jUGxheWdyb3VuZFByb2Nlc3NvckRpcmVjdGl2ZSxcblx0XHRSb3V0ZXJMaW5rLFxuXHRcdE5nRG9jVGV4dENvbXBvbmVudCxcblx0XHROZ0RvY1RleHRMZWZ0RGlyZWN0aXZlLFxuXHRcdE5nRG9jVGV4dFJpZ2h0RGlyZWN0aXZlLFxuXHRcdE5nRG9jTWVkaWFRdWVyeURpcmVjdGl2ZSxcblx0XHROZ0RvY1RvY0NvbXBvbmVudCxcblx0XHROZ0RvY1Nhbml0aXplSHRtbFBpcGUsXG5cdF0sXG5cdHByb3ZpZGVyczogW1xuXHRcdHByb3ZpZGVUeXBlQ29udHJvbCgnTmdEb2NUeXBlQWxpYXMnLCBOZ0RvY1R5cGVBbGlhc0NvbnRyb2xDb21wb25lbnQsIHtvcmRlcjogMTB9KSxcblx0XHRwcm92aWRlVHlwZUNvbnRyb2woJ3N0cmluZycsIE5nRG9jU3RyaW5nQ29udHJvbENvbXBvbmVudCwge29yZGVyOiAyMH0pLFxuXHRcdHByb3ZpZGVUeXBlQ29udHJvbCgnbnVtYmVyJywgTmdEb2NOdW1iZXJDb250cm9sQ29tcG9uZW50LCB7b3JkZXI6IDMwfSksXG5cdFx0cHJvdmlkZVR5cGVDb250cm9sKCdib29sZWFuJywgTmdEb2NCb29sZWFuQ29udHJvbENvbXBvbmVudCwge2hpZGVMYWJlbDogdHJ1ZSwgb3JkZXI6IDQwfSksXG5cdF0sXG59KVxuZXhwb3J0IGNsYXNzIE5nRG9jUGFnZUNvbXBvbmVudCB7XG5cdHJlYWRvbmx5IHByZXZQYWdlPzogTmdEb2NOYXZpZ2F0aW9uO1xuXHRyZWFkb25seSBuZXh0UGFnZT86IE5nRG9jTmF2aWdhdGlvbjtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRASW5qZWN0KE5HX0RPQ19DT05URVhUKVxuXHRcdHByaXZhdGUgcmVhZG9ubHkgY29udGV4dDogTmdEb2NDb250ZXh0LFxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG5cdFx0cmVhZG9ubHkgcm9vdFBhZ2U6IE5nRG9jUm9vdFBhZ2UsXG5cdCkge1xuXHRcdGNvbnN0IGZsYXRQYWdlcyA9IHRoaXMuZmxhdFBhZ2VzKHRoaXMuY29udGV4dC5uYXZpZ2F0aW9uKTtcblxuXHRcdHRoaXMucHJldlBhZ2UgPSBmbGF0UGFnZXNbZmxhdFBhZ2VzLmZpbmRJbmRleCgoaXRlbTogTmdEb2NOYXZpZ2F0aW9uKSA9PiB0aGlzLnVybCA9PT0gaXRlbS5yb3V0ZSkgLSAxXTtcblx0XHR0aGlzLm5leHRQYWdlID0gZmxhdFBhZ2VzW2ZsYXRQYWdlcy5maW5kSW5kZXgoKGl0ZW06IE5nRG9jTmF2aWdhdGlvbikgPT4gdGhpcy51cmwgPT09IGl0ZW0ucm91dGUpICsgMV07XG5cdH1cblxuXHRwcml2YXRlIGZsYXRQYWdlcyhpdGVtczogTmdEb2NOYXZpZ2F0aW9uW10pOiBOZ0RvY05hdmlnYXRpb25bXSB7XG5cdFx0cmV0dXJuIGl0ZW1zLm1hcCgoaXRlbTogTmdEb2NOYXZpZ2F0aW9uKSA9PiBbaXRlbS5jaGlsZHJlbj8ubGVuZ3RoID8gdGhpcy5mbGF0UGFnZXMoaXRlbS5jaGlsZHJlbikgOiBpdGVtXSkuZmxhdCgyKTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0IHVybCgpOiBzdHJpbmcge1xuXHRcdGNvbnN0IHVybFRyZWU6IFVybFRyZWUgPSB0aGlzLnJvdXRlci5wYXJzZVVybCh0aGlzLnJvdXRlci51cmwpO1xuXG5cdFx0dXJsVHJlZS5xdWVyeVBhcmFtcyA9IHt9O1xuXHRcdHVybFRyZWUuZnJhZ21lbnQgPSBudWxsO1xuXG5cdFx0cmV0dXJuIHVybFRyZWUudG9TdHJpbmcoKTtcblx0fVxufVxuIiwiPGFydGljbGU+XG5cdDxuZy1kb2MtYnJlYWRjcnVtYiAqbmdJZj1cInJvb3RQYWdlLnBhZ2VUeXBlID09PSAnZ3VpZGUnXCI+PC9uZy1kb2MtYnJlYWRjcnVtYj5cblx0PGRpdiBjbGFzcz1cIm5nLWRvYy1wYWdlLWNvbnRyb2xzXCI+XG5cdFx0PGFcblx0XHRcdG5nLWRvYy1idXR0b24taWNvblxuXHRcdFx0Km5nSWY9XCJyb290UGFnZS5lZGl0U291cmNlRmlsZVVybFwiXG5cdFx0XHRbaHJlZl09XCJyb290UGFnZS5lZGl0U291cmNlRmlsZVVybFwiXG5cdFx0XHR0YXJnZXQ9XCJfYmxhbmtcIlxuXHRcdFx0bmdEb2NUb29sdGlwPVwiU3VnZ2VzdCBFZGl0c1wiXG5cdFx0PlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJlZGl0LTJcIj48L25nLWRvYy1pY29uPlxuXHRcdDwvYT5cblx0XHQ8YVxuXHRcdFx0bmctZG9jLWJ1dHRvbi1pY29uXG5cdFx0XHQqbmdJZj1cInJvb3RQYWdlLnZpZXdTb3VyY2VGaWxlVXJsXCJcblx0XHRcdFtocmVmXT1cInJvb3RQYWdlLnZpZXdTb3VyY2VGaWxlVXJsXCJcblx0XHRcdHRhcmdldD1cIl9ibGFua1wiXG5cdFx0XHRuZ0RvY1Rvb2x0aXA9XCJWaWV3IFNvdXJjZVwiXG5cdFx0PlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJjb2RlXCI+PC9uZy1kb2MtaWNvbj5cblx0XHQ8L2E+XG5cdDwvZGl2PlxuXG5cdDxkaXZcblx0XHRjbGFzcz1cIm5nLWRvYy1wYWdlLXdyYXBwZXJcIlxuXHRcdFtpbm5lckhUTUxdPVwicm9vdFBhZ2UucGFnZUNvbnRlbnQgfCBuZ0RvY1Nhbml0aXplSHRtbFwiXG5cdFx0bmdEb2NCbG9ja3F1b3RlUHJvY2Vzc29yXG5cdFx0bmdEb2NMaW5rUHJvY2Vzc29yXG5cdFx0bmdEb2NDb2RlUHJvY2Vzc29yXG5cdFx0bmdEb2NJY29uUHJvY2Vzc29yXG5cdFx0bmdEb2NUb29sdGlwUHJvY2Vzc29yXG5cdFx0bmdEb2NEZW1vUHJvY2Vzc29yXG5cdFx0bmdEb2NEZW1vUGFuZVByb2Nlc3NvclxuXHRcdG5nRG9jUGxheWdyb3VuZFByb2Nlc3NvclxuXHRcdCNwYWdlQ29udGFpbmVyXG5cdD48L2Rpdj5cblxuXHQ8ZGl2IGNsYXNzPVwibmctZG9jLW5hdmlnYXRpb24tY29udHJvbHNcIiAqbmdJZj1cInJvb3RQYWdlLnBhZ2VUeXBlID09PSAnZ3VpZGUnXCI+XG5cdFx0PGEgY2xhc3M9XCJuZy1kb2MtcHJldi1wYWdlXCIgKm5nSWY9XCJwcmV2UGFnZVwiIFtyb3V0ZXJMaW5rXT1cInByZXZQYWdlLnJvdXRlXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLW5hdmlnYXRpb24tcGFnZS1sYWJlbFwiIG5nLWRvYy10ZXh0IHNpemU9XCJzbWFsbFwiPlxuXHRcdFx0XHQ8bmctZG9jLWljb24gaWNvbj1cImFycm93LWxlZnRcIiBuZ0RvY1RleHRMZWZ0PjwvbmctZG9jLWljb24+XG5cdFx0XHRcdFByZXZpb3VzXG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJuZy1kb2MtbmF2aWdhdGlvbi1wYWdlLXRpdGxlXCIgbmctZG9jLXRleHQ+e3sgcHJldlBhZ2UudGl0bGUgfX08L2Rpdj5cblx0XHQ8L2E+XG5cdFx0PGEgY2xhc3M9XCJuZy1kb2MtbmV4dC1wYWdlXCIgKm5nSWY9XCJuZXh0UGFnZVwiIFtyb3V0ZXJMaW5rXT1cIm5leHRQYWdlLnJvdXRlXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLW5hdmlnYXRpb24tcGFnZS1sYWJlbFwiIG5nLWRvYy10ZXh0IHNpemU9XCJzbWFsbFwiPlxuXHRcdFx0XHROZXh0XG5cdFx0XHRcdDxuZy1kb2MtaWNvbiBpY29uPVwiYXJyb3ctcmlnaHRcIiBuZ0RvY1RleHRSaWdodD48L25nLWRvYy1pY29uPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibmctZG9jLW5hdmlnYXRpb24tcGFnZS10aXRsZVwiIG5nLWRvYy10ZXh0Pnt7IG5leHRQYWdlLnRpdGxlIH19PC9kaXY+XG5cdFx0PC9hPlxuXHQ8L2Rpdj5cbjwvYXJ0aWNsZT5cblxuPG5nLXRlbXBsYXRlXG5cdFtuZ0RvY01lZGlhUXVlcnldPVwiW21lZGlhUXVlcnkuYnJlYWtwb2ludHMuTGFyZ2UsIG1lZGlhUXVlcnkuYnJlYWtwb2ludHMuWExhcmdlXVwiXG5cdCNtZWRpYVF1ZXJ5PVwibmdEb2NNZWRpYVF1ZXJ5XCJcbj5cblx0PG5nLWRvYy10b2MgW3BhZ2VDb250YWluZXJdPVwicGFnZUNvbnRhaW5lclwiPjwvbmctZG9jLXRvYz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -9,7 +9,7 @@ import { formatHtml } from '@ng-doc/core/helpers/format-html';
|
|
|
9
9
|
import { objectKeys } from '@ng-doc/core/helpers/object-keys';
|
|
10
10
|
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
|
11
11
|
import { of, Subject } from 'rxjs';
|
|
12
|
-
import { takeUntil } from 'rxjs/operators';
|
|
12
|
+
import { startWith, takeUntil } from 'rxjs/operators';
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
14
|
let NgDocPlaygroundDemoComponent = class NgDocPlaygroundDemoComponent {
|
|
15
15
|
constructor(injector) {
|
|
@@ -31,7 +31,7 @@ let NgDocPlaygroundDemoComponent = class NgDocPlaygroundDemoComponent {
|
|
|
31
31
|
}
|
|
32
32
|
this.updateDemo();
|
|
33
33
|
this.form?.valueChanges
|
|
34
|
-
.pipe(takeUntil(this.unsubscribe$), untilDestroyed(this))
|
|
34
|
+
.pipe(takeUntil(this.unsubscribe$), untilDestroyed(this), startWith(this.form?.value))
|
|
35
35
|
.subscribe((data) => this.updateDemo(data));
|
|
36
36
|
}
|
|
37
37
|
}
|
|
@@ -115,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
115
115
|
type: ViewChild,
|
|
116
116
|
args: ['demoOutlet', { static: true, read: ViewContainerRef }]
|
|
117
117
|
}] } });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL2NvbXBvbmVudHMvcGxheWdyb3VuZC9wbGF5Z3JvdW5kLWRlbW8vcGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL2NvbXBvbmVudHMvcGxheWdyb3VuZC9wbGF5Z3JvdW5kLWRlbW8vcGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixTQUFTLEVBR1QsUUFBUSxFQUNSLEtBQUssRUFLTCxTQUFTLEVBQ1QsZ0JBQWdCLEdBQ2hCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNsRixPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUzRCxPQUFPLEVBQ04sK0JBQStCLEVBQy9CLDJCQUEyQixHQUMzQixNQUFNLHFEQUFxRCxDQUFDO0FBQzdELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFHNUQsT0FBTyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQWEsRUFBRSxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBS3pDLElBU2EsNEJBQTRCLEdBVHpDLE1BU2EsNEJB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IHtBc3luY1BpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q29tcG9uZW50LFxuXHRDb21wb25lbnRSZWYsXG5cdEluamVjdGlvblRva2VuLFxuXHRJbmplY3Rvcixcblx0SW5wdXQsXG5cdE9uQ2hhbmdlcyxcblx0T25EZXN0cm95LFxuXHRTaW1wbGVDaGFuZ2VzLFxuXHRUeXBlLFxuXHRWaWV3Q2hpbGQsXG5cdFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TmdEb2NEZW1vRGlzcGxheWVyQ29tcG9uZW50fSBmcm9tICdAbmctZG9jL2FwcC9jb21wb25lbnRzL2RlbW8tZGlzcGxheWVyJztcbmltcG9ydCB7Z2V0UGxheWdyb3VuZERlbW9Ub2tlbn0gZnJvbSAnQG5nLWRvYy9hcHAvaGVscGVycyc7XG5pbXBvcnQge05nRG9jRm9ybVBhcnRpYWxWYWx1ZX0gZnJvbSAnQG5nLWRvYy9hcHAvdHlwZXMnO1xuaW1wb3J0IHtcblx0YnVpbGRQbGF5Z3JvdW5kRGVtb1BpcGVUZW1wbGF0ZSxcblx0YnVpbGRQbGF5Z3JvdW5kRGVtb1RlbXBsYXRlLFxufSBmcm9tICdAbmctZG9jL2NvcmUvaGVscGVycy9idWlsZC1wbGF5Z3JvdW5kLWRlbW8tdGVtcGxhdGUnO1xuaW1wb3J0IHtmb3JtYXRIdG1sfSBmcm9tICdAbmctZG9jL2NvcmUvaGVscGVycy9mb3JtYXQtaHRtbCc7XG5pbXBvcnQge29iamVjdEtleXN9IGZyb20gJ0BuZy1kb2MvY29yZS9oZWxwZXJzL29iamVjdC1rZXlzJztcbmltcG9ydCB7TmdEb2NQbGF5Z3JvdW5kQ29uZmlnLCBOZ0RvY1BsYXlncm91bmRQcm9wZXJ0aWVzLCBOZ0RvY1BsYXlncm91bmRQcm9wZXJ0eX0gZnJvbSAnQG5nLWRvYy9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtOZ0RvY0V4dHJhY3RlZFZhbHVlfSBmcm9tICdAbmctZG9jL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3Rha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge05nRG9jQmFzZVBsYXlncm91bmR9IGZyb20gJy4uL2Jhc2UtcGxheWdyb3VuZCc7XG5pbXBvcnQge05nRG9jUGxheWdyb3VuZEZvcm19IGZyb20gJy4uL3BsYXlncm91bmQtZm9ybSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy1wbGF5Z3JvdW5kLWRlbW8nLFxuXHR0ZW1wbGF0ZVVybDogJy4vcGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vcGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbTmdEb2NEZW1vRGlzcGxheWVyQ29tcG9uZW50LCBBc3luY1BpcGVdLFxufSlcbkBVbnRpbERlc3Ryb3koKVxuZXhwb3J0IGNsYXNzIE5nRG9jUGxheWdyb3VuZERlbW9Db21wb25lbnQ8VCBleHRlbmRzIE5nRG9jUGxheWdyb3VuZFByb3BlcnRpZXMgPSBOZ0RvY1BsYXlncm91bmRQcm9wZXJ0aWVzPlxuXHRpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95XG57XG5cdEBJbnB1dCgpXG5cdGlkOiBzdHJpbmcgPSAnJztcblxuXHRASW5wdXQoKVxuXHRwaXBlTmFtZTogc3RyaW5nID0gJyc7XG5cblx0QElucHV0KClcblx0c2VsZWN0b3I6IHN0cmluZyA9ICcnO1xuXG5cdEBJbnB1dCgpXG5cdGNvbmZpZ3VyYXRpb24/OiBOZ0RvY1BsYXlncm91bmRDb25maWc7XG5cblx0QElucHV0KClcblx0cHJvcGVydGllcz86IFQ7XG5cblx0QElucHV0KClcblx0cmVjcmVhdGVEZW1vOiBib29sZWFuID0gZmFsc2U7XG5cblx0QElucHV0KClcblx0Zm9ybSE6IEZvcm1Hcm91cDxOZ0RvY1BsYXlncm91bmRGb3JtPjtcblxuXHRAVmlld0NoaWxkKCdkZW1vT3V0bGV0Jywge3N0YXRpYzogdHJ1ZSwgcmVhZDogVmlld0NvbnRhaW5lclJlZn0pXG5cdGRlbW9PdXRsZXQ/OiBWaWV3Q29udGFpbmVyUmVmO1xuXG5cdHBsYXlncm91bmREZW1vPzogdHlwZW9mIE5nRG9jQmFzZVBsYXlncm91bmQ7XG5cblx0Y29kZTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gb2YoJycpO1xuXG5cdHByaXZhdGUgZGVtb1JlZj86IENvbXBvbmVudFJlZjxOZ0RvY0Jhc2VQbGF5Z3JvdW5kPjtcblx0cHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yKSB7fVxuXG5cdG5nT25DaGFuZ2VzKHtmb3JtLCBpZH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcblx0XHRpZiAoZm9ybSAmJiBpZCkge1xuXHRcdFx0dGhpcy51bnN1YnNjcmliZSQubmV4dCgpO1xuXG5cdFx0XHRjb25zdCBkZW1vSW5qZWN0b3I6IEluamVjdGlvblRva2VuPEFycmF5PHR5cGVvZiBOZ0RvY0Jhc2VQbGF5Z3JvdW5kPj4gfCB1bmRlZmluZWQgPSBnZXRQbGF5Z3JvdW5kRGVtb1Rva2VuKFxuXHRcdFx0XHR0aGlzLmlkLFxuXHRcdFx0KTtcblxuXHRcdFx0aWYgKGRlbW9JbmplY3Rvcikge1xuXHRcdFx0XHRjb25zdCBkZW1vczogQXJyYXk8dHlwZW9mIE5nRG9jQmFzZVBsYXlncm91bmQ+ID0gdGhpcy5pbmplY3Rvci5nZXQoZGVtb0luamVjdG9yLCBbXSk7XG5cdFx0XHRcdHRoaXMucGxheWdyb3VuZERlbW8gPSBkZW1vcy5maW5kKFxuXHRcdFx0XHRcdChkZW1vOiB0eXBlb2YgTmdEb2NCYXNlUGxheWdyb3VuZCkgPT4gZGVtby5zZWxlY3RvciA9PT0gdGhpcy5zZWxlY3RvciB8fCBkZW1vLnNlbGVjdG9yID09PSB0aGlzLnBpcGVOYW1lLFxuXHRcdFx0XHQpO1xuXHRcdFx0fVxuXG5cdFx0XHR0aGlzLnVwZGF0ZURlbW8oKTtcblxuXHRcdFx0dGhpcy5mb3JtPy52YWx1ZUNoYW5nZXNcblx0XHRcdFx0LnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSwgdW50aWxEZXN0cm95ZWQodGhpcykpXG5cdFx0XHRcdC5zdWJzY3JpYmUoKGRhdGE6IE5nRG9jRm9ybVBhcnRpYWxWYWx1ZTx0eXBlb2YgdGhpcy5mb3JtPikgPT4gdGhpcy51cGRhdGVEZW1vKGRhdGEpKTtcblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIHVwZGF0ZURlbW8oZGF0YT86IE5nRG9jRm9ybVBhcnRpYWxWYWx1ZTx0eXBlb2YgdGhpcy5mb3JtPik6IHZvaWQge1xuXHRcdGlmICh0aGlzLnJlY3JlYXRlRGVtbyB8fCAhdGhpcy5kZW1vUmVmKSB7XG5cdFx0XHR0aGlzLnJlbmRlckRlbW8oKTtcblx0XHR9XG5cblx0XHRpZiAoZGF0YSkge1xuXHRcdFx0dGhpcy5kZW1vUmVmPy5zZXRJbnB1dCgncHJvcGVydGllcycsIGRhdGEucHJvcGVydGllcyA/PyB7fSk7XG5cdFx0XHR0aGlzLmRlbW9SZWY/LnNldElucHV0KCdjb250ZW50JywgZGF0YS5jb250ZW50ID8/IHt9KTtcblx0XHR9XG5cblx0XHR0aGlzLnVwZGF0ZUNvZGVWaWV3KCk7XG5cdH1cblxuXHRwcml2YXRlIHJlbmRlckRlbW8oKTogdm9pZCB7XG5cdFx0aWYgKHRoaXMucGxheWdyb3VuZERlbW8pIHtcblx0XHRcdHRoaXMuZGVtb1JlZj8uZGVzdHJveSgpO1xuXG5cdFx0XHRpZiAodGhpcy5wbGF5Z3JvdW5kRGVtbykge1xuXHRcdFx0XHR0aGlzLmRlbW9SZWYgPSB0aGlzLmRlbW9PdXRsZXQ/LmNyZWF0ZUNvbXBvbmVudCh0aGlzLnBsYXlncm91bmREZW1vIGFzIHVua25vd24gYXMgVHlwZTxOZ0RvY0Jhc2VQbGF5Z3JvdW5kPik7XG5cdFx0XHR9XG5cblx0XHRcdHRoaXMuZGVtb1JlZj8uY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgdXBkYXRlQ29kZVZpZXcoKTogdm9pZCB7XG5cdFx0Y29uc3QgdGVtcGxhdGU6IHN0cmluZyA9IHRoaXMucGlwZU5hbWVcblx0XHRcdD8gYnVpbGRQbGF5Z3JvdW5kRGVtb1BpcGVUZW1wbGF0ZShcblx0XHRcdFx0XHR0aGlzLmNvbmZpZ3VyYXRpb24/LnRlbXBsYXRlID8/ICcnLFxuXHRcdFx0XHRcdHRoaXMucGlwZU5hbWUsXG5cdFx0XHRcdFx0dGhpcy5nZXRBY3RpdmVDb250ZW50KCksXG5cdFx0XHRcdFx0dGhpcy5nZXRBY3RpdmVJbnB1dHMoKSxcblx0XHRcdCAgKVxuXHRcdFx0OiBidWlsZFBsYXlncm91bmREZW1vVGVtcGxhdGUoXG5cdFx0XHRcdFx0dGhpcy5jb25maWd1cmF0aW9uPy50ZW1wbGF0ZSA/PyAnJyxcblx0XHRcdFx0XHR0aGlzLnNlbGVjdG9yLFxuXHRcdFx0XHRcdHRoaXMuZ2V0QWN0aXZlQ29udGVudCgpLFxuXHRcdFx0XHRcdHRoaXMuZ2V0QWN0aXZlSW5wdXRzKCksXG5cdFx0XHQgICk7XG5cblx0XHR0aGlzLmNvZGUgPSBmb3JtYXRIdG1sKHRlbXBsYXRlKTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0QWN0aXZlQ29udGVudCgpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcblx0XHRjb25zdCBmb3JtRGF0YTogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4gPSAodGhpcy5mb3JtPy5jb250cm9scy5jb250ZW50LnZhbHVlIGFzIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+KSA/PyB7fTtcblxuXHRcdHJldHVybiBvYmplY3RLZXlzKGZvcm1EYXRhKS5yZWR1Y2UoKHJlc3VsdDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiwga2V5OiBzdHJpbmcpID0+IHtcblx0XHRcdHJlc3VsdFtrZXldID0gZm9ybURhdGFba2V5XSA/IHRoaXMuY29uZmlndXJhdGlvbj8uY29udGVudD8uW2tleV0udGVtcGxhdGUgPz8gJycgOiAnJztcblxuXHRcdFx0cmV0dXJuIHJlc3VsdDtcblx0XHR9LCB7fSk7XG5cdH1cblxuXHRwcml2YXRlIGdldEFjdGl2ZUlucHV0cygpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcblx0XHRjb25zdCBmb3JtRGF0YTogUmVjb3JkPHN0cmluZywgTmdEb2NFeHRyYWN0ZWRWYWx1ZT4gPVxuXHRcdFx0KHRoaXMuZm9ybT8uY29udHJvbHMucHJvcGVydGllcy52YWx1ZSBhcyBSZWNvcmQ8c3RyaW5nLCBOZ0RvY0V4dHJhY3RlZFZhbHVlPikgPz8ge307XG5cblx0XHRyZXR1cm4gb2JqZWN0S2V5cyhmb3JtRGF0YSkucmVkdWNlKChyZXN1bHQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sIGtleTogc3RyaW5nKSA9PiB7XG5cdFx0XHRjb25zdCBwcm9wZXJ0eTogTmdEb2NQbGF5Z3JvdW5kUHJvcGVydHkgfCB1bmRlZmluZWQgPSB0aGlzLnByb3BlcnRpZXM/LltrZXldO1xuXG5cdFx0XHRpZiAocHJvcGVydHkpIHtcblx0XHRcdFx0Y29uc3QgdmFsdWU6IE5nRG9jRXh0cmFjdGVkVmFsdWUgPSBmb3JtRGF0YVtrZXldO1xuXHRcdFx0XHRjb25zdCBpc1N0cmluZzogYm9vbGVhbiA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZyc7XG5cdFx0XHRcdGNvbnN0IGlucHV0VmFsdWU6IHN0cmluZyA9IGlzU3RyaW5nID8gYCcke3ZhbHVlfSdgIDogYCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfWA7XG5cblx0XHRcdFx0aWYgKChwcm9wZXJ0eS5kZWZhdWx0ID8/ICcnKSAhPT0gaW5wdXRWYWx1ZSkge1xuXHRcdFx0XHRcdHJlc3VsdFtwcm9wZXJ0eS5pbnB1dE5hbWVdID0gaW5wdXRWYWx1ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gcmVzdWx0O1xuXHRcdH0sIHt9KTtcblx0fVxuXG5cdG5nT25EZXN0cm95KCk6IHZvaWQge1xuXHRcdHRoaXMudW5zdWJzY3JpYmUkLm5leHQoKTtcblx0XHR0aGlzLnVuc3Vic2NyaWJlJC5jb21wbGV0ZSgpO1xuXHR9XG59XG4iLCI8bmctZG9jLWRlbW8tZGlzcGxheWVyIFtjb2RlXT1cIihjb2RlIHwgYXN5bmMpID8/ICcnXCIgW2JvcmRlcl09XCJmYWxzZVwiIGxhbmd1YWdlPVwiaHRtbFwiPlxuXHQ8bmctY29udGFpbmVyICNkZW1vT3V0bGV0PjwvbmctY29udGFpbmVyPlxuPC9uZy1kb2MtZGVtby1kaXNwbGF5ZXI+XG4iXX0=
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL2NvbXBvbmVudHMvcGxheWdyb3VuZC9wbGF5Z3JvdW5kLWRlbW8vcGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL2NvbXBvbmVudHMvcGxheWdyb3VuZC9wbGF5Z3JvdW5kLWRlbW8vcGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixTQUFTLEVBR1QsUUFBUSxFQUNSLEtBQUssRUFLTCxTQUFTLEVBQ1QsZ0JBQWdCLEdBQ2hCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNsRixPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUzRCxPQUFPLEVBQ04sK0JBQStCLEVBQy9CLDJCQUEyQixHQUMzQixNQUFNLHFEQUFxRCxDQUFDO0FBQzdELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFHNUQsT0FBTyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQWEsRUFBRSxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUMsU0FBUyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDOztBQUtwRCxJQVNhLDRCQUE0QixHQVR6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SSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXN5bmNQaXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0Q29tcG9uZW50UmVmLFxuXHRJbmplY3Rpb25Ub2tlbixcblx0SW5qZWN0b3IsXG5cdElucHV0LFxuXHRPbkNoYW5nZXMsXG5cdE9uRGVzdHJveSxcblx0U2ltcGxlQ2hhbmdlcyxcblx0VHlwZSxcblx0Vmlld0NoaWxkLFxuXHRWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUdyb3VwfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge05nRG9jRGVtb0Rpc3BsYXllckNvbXBvbmVudH0gZnJvbSAnQG5nLWRvYy9hcHAvY29tcG9uZW50cy9kZW1vLWRpc3BsYXllcic7XG5pbXBvcnQge2dldFBsYXlncm91bmREZW1vVG9rZW59IGZyb20gJ0BuZy1kb2MvYXBwL2hlbHBlcnMnO1xuaW1wb3J0IHtOZ0RvY0Zvcm1QYXJ0aWFsVmFsdWV9IGZyb20gJ0BuZy1kb2MvYXBwL3R5cGVzJztcbmltcG9ydCB7XG5cdGJ1aWxkUGxheWdyb3VuZERlbW9QaXBlVGVtcGxhdGUsXG5cdGJ1aWxkUGxheWdyb3VuZERlbW9UZW1wbGF0ZSxcbn0gZnJvbSAnQG5nLWRvYy9jb3JlL2hlbHBlcnMvYnVpbGQtcGxheWdyb3VuZC1kZW1vLXRlbXBsYXRlJztcbmltcG9ydCB7Zm9ybWF0SHRtbH0gZnJvbSAnQG5nLWRvYy9jb3JlL2hlbHBlcnMvZm9ybWF0LWh0bWwnO1xuaW1wb3J0IHtvYmplY3RLZXlzfSBmcm9tICdAbmctZG9jL2NvcmUvaGVscGVycy9vYmplY3Qta2V5cyc7XG5pbXBvcnQge05nRG9jUGxheWdyb3VuZENvbmZpZywgTmdEb2NQbGF5Z3JvdW5kUHJvcGVydGllcywgTmdEb2NQbGF5Z3JvdW5kUHJvcGVydHl9IGZyb20gJ0BuZy1kb2MvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7TmdEb2NFeHRyYWN0ZWRWYWx1ZX0gZnJvbSAnQG5nLWRvYy9jb3JlL3R5cGVzJztcbmltcG9ydCB7VW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgb2YsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtzdGFydFdpdGgsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge05nRG9jQmFzZVBsYXlncm91bmR9IGZyb20gJy4uL2Jhc2UtcGxheWdyb3VuZCc7XG5pbXBvcnQge05nRG9jUGxheWdyb3VuZEZvcm19IGZyb20gJy4uL3BsYXlncm91bmQtZm9ybSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy1wbGF5Z3JvdW5kLWRlbW8nLFxuXHR0ZW1wbGF0ZVVybDogJy4vcGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vcGxheWdyb3VuZC1kZW1vLmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbTmdEb2NEZW1vRGlzcGxheWVyQ29tcG9uZW50LCBBc3luY1BpcGVdLFxufSlcbkBVbnRpbERlc3Ryb3koKVxuZXhwb3J0IGNsYXNzIE5nRG9jUGxheWdyb3VuZERlbW9Db21wb25lbnQ8VCBleHRlbmRzIE5nRG9jUGxheWdyb3VuZFByb3BlcnRpZXMgPSBOZ0RvY1BsYXlncm91bmRQcm9wZXJ0aWVzPlxuXHRpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95XG57XG5cdEBJbnB1dCgpXG5cdGlkOiBzdHJpbmcgPSAnJztcblxuXHRASW5wdXQoKVxuXHRwaXBlTmFtZTogc3RyaW5nID0gJyc7XG5cblx0QElucHV0KClcblx0c2VsZWN0b3I6IHN0cmluZyA9ICcnO1xuXG5cdEBJbnB1dCgpXG5cdGNvbmZpZ3VyYXRpb24/OiBOZ0RvY1BsYXlncm91bmRDb25maWc7XG5cblx0QElucHV0KClcblx0cHJvcGVydGllcz86IFQ7XG5cblx0QElucHV0KClcblx0cmVjcmVhdGVEZW1vOiBib29sZWFuID0gZmFsc2U7XG5cblx0QElucHV0KClcblx0Zm9ybSE6IEZvcm1Hcm91cDxOZ0RvY1BsYXlncm91bmRGb3JtPjtcblxuXHRAVmlld0NoaWxkKCdkZW1vT3V0bGV0Jywge3N0YXRpYzogdHJ1ZSwgcmVhZDogVmlld0NvbnRhaW5lclJlZn0pXG5cdGRlbW9PdXRsZXQ/OiBWaWV3Q29udGFpbmVyUmVmO1xuXG5cdHBsYXlncm91bmREZW1vPzogdHlwZW9mIE5nRG9jQmFzZVBsYXlncm91bmQ7XG5cblx0Y29kZTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gb2YoJycpO1xuXG5cdHByaXZhdGUgZGVtb1JlZj86IENvbXBvbmVudFJlZjxOZ0RvY0Jhc2VQbGF5Z3JvdW5kPjtcblx0cHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yKSB7fVxuXG5cdG5nT25DaGFuZ2VzKHtmb3JtLCBpZH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcblx0XHRpZiAoZm9ybSAmJiBpZCkge1xuXHRcdFx0dGhpcy51bnN1YnNjcmliZSQubmV4dCgpO1xuXG5cdFx0XHRjb25zdCBkZW1vSW5qZWN0b3I6IEluamVjdGlvblRva2VuPEFycmF5PHR5cGVvZiBOZ0RvY0Jhc2VQbGF5Z3JvdW5kPj4gfCB1bmRlZmluZWQgPSBnZXRQbGF5Z3JvdW5kRGVtb1Rva2VuKFxuXHRcdFx0XHR0aGlzLmlkLFxuXHRcdFx0KTtcblxuXHRcdFx0aWYgKGRlbW9JbmplY3Rvcikge1xuXHRcdFx0XHRjb25zdCBkZW1vczogQXJyYXk8dHlwZW9mIE5nRG9jQmFzZVBsYXlncm91bmQ+ID0gdGhpcy5pbmplY3Rvci5nZXQoZGVtb0luamVjdG9yLCBbXSk7XG5cdFx0XHRcdHRoaXMucGxheWdyb3VuZERlbW8gPSBkZW1vcy5maW5kKFxuXHRcdFx0XHRcdChkZW1vOiB0eXBlb2YgTmdEb2NCYXNlUGxheWdyb3VuZCkgPT4gZGVtby5zZWxlY3RvciA9PT0gdGhpcy5zZWxlY3RvciB8fCBkZW1vLnNlbGVjdG9yID09PSB0aGlzLnBpcGVOYW1lLFxuXHRcdFx0XHQpO1xuXHRcdFx0fVxuXG5cdFx0XHR0aGlzLnVwZGF0ZURlbW8oKTtcblxuXHRcdFx0dGhpcy5mb3JtPy52YWx1ZUNoYW5nZXNcblx0XHRcdFx0LnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSwgdW50aWxEZXN0cm95ZWQodGhpcyksIHN0YXJ0V2l0aCh0aGlzLmZvcm0/LnZhbHVlKSlcblx0XHRcdFx0LnN1YnNjcmliZSgoZGF0YTogTmdEb2NGb3JtUGFydGlhbFZhbHVlPHR5cGVvZiB0aGlzLmZvcm0+KSA9PiB0aGlzLnVwZGF0ZURlbW8oZGF0YSkpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgdXBkYXRlRGVtbyhkYXRhPzogTmdEb2NGb3JtUGFydGlhbFZhbHVlPHR5cGVvZiB0aGlzLmZvcm0+KTogdm9pZCB7XG5cdFx0aWYgKHRoaXMucmVjcmVhdGVEZW1vIHx8ICF0aGlzLmRlbW9SZWYpIHtcblx0XHRcdHRoaXMucmVuZGVyRGVtbygpO1xuXHRcdH1cblxuXHRcdGlmIChkYXRhKSB7XG5cdFx0XHR0aGlzLmRlbW9SZWY/LnNldElucHV0KCdwcm9wZXJ0aWVzJywgZGF0YS5wcm9wZXJ0aWVzID8/IHt9KTtcblx0XHRcdHRoaXMuZGVtb1JlZj8uc2V0SW5wdXQoJ2NvbnRlbnQnLCBkYXRhLmNvbnRlbnQgPz8ge30pO1xuXHRcdH1cblxuXHRcdHRoaXMudXBkYXRlQ29kZVZpZXcoKTtcblx0fVxuXG5cdHByaXZhdGUgcmVuZGVyRGVtbygpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5wbGF5Z3JvdW5kRGVtbykge1xuXHRcdFx0dGhpcy5kZW1vUmVmPy5kZXN0cm95KCk7XG5cblx0XHRcdGlmICh0aGlzLnBsYXlncm91bmREZW1vKSB7XG5cdFx0XHRcdHRoaXMuZGVtb1JlZiA9IHRoaXMuZGVtb091dGxldD8uY3JlYXRlQ29tcG9uZW50KHRoaXMucGxheWdyb3VuZERlbW8gYXMgdW5rbm93biBhcyBUeXBlPE5nRG9jQmFzZVBsYXlncm91bmQ+KTtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy5kZW1vUmVmPy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSB1cGRhdGVDb2RlVmlldygpOiB2b2lkIHtcblx0XHRjb25zdCB0ZW1wbGF0ZTogc3RyaW5nID0gdGhpcy5waXBlTmFtZVxuXHRcdFx0PyBidWlsZFBsYXlncm91bmREZW1vUGlwZVRlbXBsYXRlKFxuXHRcdFx0XHRcdHRoaXMuY29uZmlndXJhdGlvbj8udGVtcGxhdGUgPz8gJycsXG5cdFx0XHRcdFx0dGhpcy5waXBlTmFtZSxcblx0XHRcdFx0XHR0aGlzLmdldEFjdGl2ZUNvbnRlbnQoKSxcblx0XHRcdFx0XHR0aGlzLmdldEFjdGl2ZUlucHV0cygpLFxuXHRcdFx0ICApXG5cdFx0XHQ6IGJ1aWxkUGxheWdyb3VuZERlbW9UZW1wbGF0ZShcblx0XHRcdFx0XHR0aGlzLmNvbmZpZ3VyYXRpb24/LnRlbXBsYXRlID8/ICcnLFxuXHRcdFx0XHRcdHRoaXMuc2VsZWN0b3IsXG5cdFx0XHRcdFx0dGhpcy5nZXRBY3RpdmVDb250ZW50KCksXG5cdFx0XHRcdFx0dGhpcy5nZXRBY3RpdmVJbnB1dHMoKSxcblx0XHRcdCAgKTtcblxuXHRcdHRoaXMuY29kZSA9IGZvcm1hdEh0bWwodGVtcGxhdGUpO1xuXHR9XG5cblx0cHJpdmF0ZSBnZXRBY3RpdmVDb250ZW50KCk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuXHRcdGNvbnN0IGZvcm1EYXRhOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9ICh0aGlzLmZvcm0/LmNvbnRyb2xzLmNvbnRlbnQudmFsdWUgYXMgUmVjb3JkPHN0cmluZywgYm9vbGVhbj4pID8/IHt9O1xuXG5cdFx0cmV0dXJuIG9iamVjdEtleXMoZm9ybURhdGEpLnJlZHVjZSgocmVzdWx0OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LCBrZXk6IHN0cmluZykgPT4ge1xuXHRcdFx0cmVzdWx0W2tleV0gPSBmb3JtRGF0YVtrZXldID8gdGhpcy5jb25maWd1cmF0aW9uPy5jb250ZW50Py5ba2V5XS50ZW1wbGF0ZSA/PyAnJyA6ICcnO1xuXG5cdFx0XHRyZXR1cm4gcmVzdWx0O1xuXHRcdH0sIHt9KTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0QWN0aXZlSW5wdXRzKCk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuXHRcdGNvbnN0IGZvcm1EYXRhOiBSZWNvcmQ8c3RyaW5nLCBOZ0RvY0V4dHJhY3RlZFZhbHVlPiA9XG5cdFx0XHQodGhpcy5mb3JtPy5jb250cm9scy5wcm9wZXJ0aWVzLnZhbHVlIGFzIFJlY29yZDxzdHJpbmcsIE5nRG9jRXh0cmFjdGVkVmFsdWU+KSA/PyB7fTtcblxuXHRcdHJldHVybiBvYmplY3RLZXlzKGZvcm1EYXRhKS5yZWR1Y2UoKHJlc3VsdDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiwga2V5OiBzdHJpbmcpID0+IHtcblx0XHRcdGNvbnN0IHByb3BlcnR5OiBOZ0RvY1BsYXlncm91bmRQcm9wZXJ0eSB8IHVuZGVmaW5lZCA9IHRoaXMucHJvcGVydGllcz8uW2tleV07XG5cblx0XHRcdGlmIChwcm9wZXJ0eSkge1xuXHRcdFx0XHRjb25zdCB2YWx1ZTogTmdEb2NFeHRyYWN0ZWRWYWx1ZSA9IGZvcm1EYXRhW2tleV07XG5cdFx0XHRcdGNvbnN0IGlzU3RyaW5nOiBib29sZWFuID0gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJztcblx0XHRcdFx0Y29uc3QgaW5wdXRWYWx1ZTogc3RyaW5nID0gaXNTdHJpbmcgPyBgJyR7dmFsdWV9J2AgOiBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDtcblxuXHRcdFx0XHRpZiAoKHByb3BlcnR5LmRlZmF1bHQgPz8gJycpICE9PSBpbnB1dFZhbHVlKSB7XG5cdFx0XHRcdFx0cmVzdWx0W3Byb3BlcnR5LmlucHV0TmFtZV0gPSBpbnB1dFZhbHVlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiByZXN1bHQ7XG5cdFx0fSwge30pO1xuXHR9XG5cblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cdFx0dGhpcy51bnN1YnNjcmliZSQubmV4dCgpO1xuXHRcdHRoaXMudW5zdWJzY3JpYmUkLmNvbXBsZXRlKCk7XG5cdH1cbn1cbiIsIjxuZy1kb2MtZGVtby1kaXNwbGF5ZXIgW2NvZGVdPVwiKGNvZGUgfCBhc3luYykgPz8gJydcIiBbYm9yZGVyXT1cImZhbHNlXCIgbGFuZ3VhZ2U9XCJodG1sXCI+XG5cdDxuZy1jb250YWluZXIgI2RlbW9PdXRsZXQ+PC9uZy1jb250YWluZXI+XG48L25nLWRvYy1kZW1vLWRpc3BsYXllcj5cbiJdfQ==
|
|
@@ -7,14 +7,19 @@ const tokenStore = new Map();
|
|
|
7
7
|
* @param options
|
|
8
8
|
*/
|
|
9
9
|
export function provideTypeControl(type, control, options) {
|
|
10
|
-
const token = new InjectionToken(`NG_DOC_TYPE_CONTROL_${type}
|
|
10
|
+
const token = new InjectionToken(`NG_DOC_TYPE_CONTROL_${type}`, {
|
|
11
|
+
providedIn: 'root',
|
|
12
|
+
factory: () => {
|
|
13
|
+
return {
|
|
14
|
+
control,
|
|
15
|
+
options,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
});
|
|
11
19
|
tokenStore.set(type, token);
|
|
12
20
|
return {
|
|
13
|
-
provide:
|
|
14
|
-
useValue:
|
|
15
|
-
control,
|
|
16
|
-
options,
|
|
17
|
-
},
|
|
21
|
+
provide: 'nothing',
|
|
22
|
+
useValue: null,
|
|
18
23
|
};
|
|
19
24
|
}
|
|
20
25
|
/**
|
|
@@ -25,4 +30,4 @@ export function provideTypeControl(type, control, options) {
|
|
|
25
30
|
export function getTokenForType(type) {
|
|
26
31
|
return tokenStore.get(type);
|
|
27
32
|
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS10eXBlLWNvbnRyb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9oZWxwZXJzL3Byb3ZpZGUtdHlwZS1jb250cm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQVcsTUFBTSxlQUFlLENBQUM7QUFJdkQsTUFBTSxVQUFVLEdBQTBELElBQUksR0FBRyxFQUc5RSxDQUFDO0FBRUo7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQ2pDLElBQVksRUFDWixPQUFzQyxFQUN0QyxPQUF5QztJQUV6QyxNQUFNLEtBQUssR0FBNkMsSUFBSSxjQUFjLENBQ3pFLHVCQUF1QixJQUFJLEVBQUUsRUFDN0I7UUFDQyxVQUFVLEVBQUUsTUFBTTtRQUNsQixPQUFPLEVBQUUsR0FBRyxFQUFFO1lBQ2IsT0FBTztnQkFDTixPQUFPO2dCQUNQLE9BQU87YUFDUCxDQUFDO1FBQ0gsQ0FBQztLQUNELENBQ0QsQ0FBQztJQUNGLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRTVCLE9BQU87UUFDTixPQUFPLEVBQUUsU0FBUztRQUNsQixRQUFRLEVBQUUsSUFBSTtLQUNkLENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQUMsSUFBWTtJQUMzQyxPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdEb2NQcm92aWRlZFR5cGVDb250cm9sLCBOZ0RvY1R5cGVDb250cm9sLCBOZ0RvY1R5cGVDb250cm9sUHJvdmlkZXJPcHRpb25zfSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcbmltcG9ydCB7Q29uc3RydWN0b3J9IGZyb20gJ0BuZy1kb2MvY29yZS90eXBlcy9jb25zdHJ1Y3Rvcic7XG5cbmNvbnN0IHRva2VuU3RvcmU6IE1hcDxzdHJpbmcsIEluamVjdGlvblRva2VuPE5nRG9jUHJvdmlkZWRUeXBlQ29udHJvbD4+ID0gbmV3IE1hcDxcblx0c3RyaW5nLFxuXHRJbmplY3Rpb25Ub2tlbjxOZ0RvY1Byb3ZpZGVkVHlwZUNvbnRyb2w+XG4+KCk7XG5cbi8qKlxuICpcbiAqIEBwYXJhbSB0eXBlXG4gKiBAcGFyYW0gY29udHJvbFxuICogQHBhcmFtIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVUeXBlQ29udHJvbChcblx0dHlwZTogc3RyaW5nLFxuXHRjb250cm9sOiBDb25zdHJ1Y3RvcjxOZ0RvY1R5cGVDb250cm9sPixcblx0b3B0aW9ucz86IE5nRG9jVHlwZUNvbnRyb2xQcm92aWRlck9wdGlvbnMsXG4pOiBQcm92aWRlciB7XG5cdGNvbnN0IHRva2VuOiBJbmplY3Rpb25Ub2tlbjxOZ0RvY1Byb3ZpZGVkVHlwZUNvbnRyb2w+ID0gbmV3IEluamVjdGlvblRva2VuPE5nRG9jUHJvdmlkZWRUeXBlQ29udHJvbD4oXG5cdFx0YE5HX0RPQ19UWVBFX0NPTlRST0xfJHt0eXBlfWAsXG5cdFx0e1xuXHRcdFx0cHJvdmlkZWRJbjogJ3Jvb3QnLFxuXHRcdFx0ZmFjdG9yeTogKCkgPT4ge1xuXHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdGNvbnRyb2wsXG5cdFx0XHRcdFx0b3B0aW9ucyxcblx0XHRcdFx0fTtcblx0XHRcdH1cblx0XHR9XG5cdCk7XG5cdHRva2VuU3RvcmUuc2V0KHR5cGUsIHRva2VuKTtcblxuXHRyZXR1cm4ge1xuXHRcdHByb3ZpZGU6ICdub3RoaW5nJyxcblx0XHR1c2VWYWx1ZTogbnVsbCxcblx0fTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRva2VuIGZvciB0eXBlIGNvbnRyb2wgYmFzZWQgb24gcHJvdmlkZWQgdHlwZVxuICpcbiAqIEBwYXJhbSB0eXBlIC0gdHlwZSBmb3Igc2VhcmNoZWQgY29udHJvbCAoZS5nLiBgc3RyaW5nYClcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFRva2VuRm9yVHlwZSh0eXBlOiBzdHJpbmcpOiBJbmplY3Rpb25Ub2tlbjxOZ0RvY1Byb3ZpZGVkVHlwZUNvbnRyb2w+IHwgdW5kZWZpbmVkIHtcblx0cmV0dXJuIHRva2VuU3RvcmUuZ2V0KHR5cGUpO1xufVxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Directive, ElementRef, Type, ViewContainerRef } from '@angular/core';
|
|
1
|
+
import { Directive, ElementRef, inject, Injector, Type, ViewContainerRef } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
/**
|
|
4
4
|
* Base processor class to create a processor directive that will be used to replace
|
|
@@ -10,6 +10,7 @@ class NgDocHtmlProcessor {
|
|
|
10
10
|
this.viewContainerRef = viewContainerRef;
|
|
11
11
|
this.selector = selector;
|
|
12
12
|
this.component = component;
|
|
13
|
+
this.injector = inject(Injector);
|
|
13
14
|
}
|
|
14
15
|
ngOnInit() {
|
|
15
16
|
this.elementRef.nativeElement.querySelectorAll(this.selector).forEach((elementNode) => {
|
|
@@ -17,6 +18,7 @@ class NgDocHtmlProcessor {
|
|
|
17
18
|
// create component
|
|
18
19
|
const componentRef = this.viewContainerRef.createComponent(this.component, {
|
|
19
20
|
projectableNodes: options.content,
|
|
21
|
+
injector: this.injector,
|
|
20
22
|
});
|
|
21
23
|
// set component options
|
|
22
24
|
Object.assign(componentRef.instance, options.inputs);
|
|
@@ -36,4 +38,4 @@ export { NgDocHtmlProcessor };
|
|
|
36
38
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocHtmlProcessor, decorators: [{
|
|
37
39
|
type: Directive
|
|
38
40
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: undefined }, { type: i0.Type }]; } });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1wcm9jZXNzb3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvcHJvY2Vzc29ycy9odG1sLXByb2Nlc3Nvci9odG1sLXByb2Nlc3Nvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBVSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBR3BIOzs7R0FHRztBQUNILE1BQ3NCLGtCQUFrQjtJQUd2QyxZQUNvQixVQUFtQyxFQUNuQyxnQkFBa0MsRUFDbEMsUUFBZ0IsRUFDaEIsU0FBa0I7UUFIbEIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQVM7UUFOdEMsYUFBUSxHQUFhLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQU9uQyxDQUFDO0lBRUosUUFBUTtRQUNQLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFvQixFQUFFLEVBQUU7WUFDOUYsTUFBTSxPQUFPLEdBQTZCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUVwRixtQkFBbUI7WUFDbkIsTUFBTSxZQUFZLEdBQW9CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtnQkFDM0YsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ2pDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTthQUN2QixDQUFDLENBQUM7WUFFSCx3QkFBd0I7WUFDeEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFL0QsMkNBQTJDO1lBQzNDLE1BQU0sY0FBYyxHQUFZLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDakUsY0FBYyxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFFN0YsWUFBWSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVTLGNBQWMsQ0FBQyxPQUFnQjtRQUN4QyxPQUFPLE9BQU8sQ0FBQztJQUNoQixDQUFDOzhHQWpDb0Isa0JBQWtCO2tHQUFsQixrQkFBa0I7O1NBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUR2QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnRSZWYsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbmplY3RvciwgT25Jbml0LCBUeXBlLCBWaWV3Q29udGFpbmVyUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdEb2NQcm9jZXNzb3JPcHRpb25zfSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcblxuLyoqXG4gKiBCYXNlIHByb2Nlc3NvciBjbGFzcyB0byBjcmVhdGUgYSBwcm9jZXNzb3IgZGlyZWN0aXZlIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHJlcGxhY2VcbiAqIGh0bWwgbm9kZXMgd2l0aCBhbiBBbmd1bGFyIGNvbXBvbmVudC5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTmdEb2NIdG1sUHJvY2Vzc29yPFQ+IGltcGxlbWVudHMgT25Jbml0IHtcblx0aW5qZWN0b3I6IEluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuXHRwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG5cdFx0cHJvdGVjdGVkIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuXHRcdHByb3RlY3RlZCByZWFkb25seSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuXHRcdHByb3RlY3RlZCByZWFkb25seSBzZWxlY3Rvcjogc3RyaW5nLFxuXHRcdHByb3RlY3RlZCByZWFkb25seSBjb21wb25lbnQ6IFR5cGU8VD4sXG5cdCkge31cblxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKHRoaXMuc2VsZWN0b3IpLmZvckVhY2goKGVsZW1lbnROb2RlOiBFbGVtZW50KSA9PiB7XG5cdFx0XHRjb25zdCBvcHRpb25zOiBOZ0RvY1Byb2Nlc3Nvck9wdGlvbnM8VD4gPSB0aGlzLmV4dHJhY3RDb21wb25lbnRPcHRpb25zKGVsZW1lbnROb2RlKTtcblxuXHRcdFx0Ly8gY3JlYXRlIGNvbXBvbmVudFxuXHRcdFx0Y29uc3QgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8VD4gPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KHRoaXMuY29tcG9uZW50LCB7XG5cdFx0XHRcdHByb2plY3RhYmxlTm9kZXM6IG9wdGlvbnMuY29udGVudCxcblx0XHRcdFx0aW5qZWN0b3I6IHRoaXMuaW5qZWN0b3IsXG5cdFx0XHR9KTtcblxuXHRcdFx0Ly8gc2V0IGNvbXBvbmVudCBvcHRpb25zXG5cdFx0XHRPYmplY3QuYXNzaWduKGNvbXBvbmVudFJlZi5pbnN0YW5jZSBhcyBvYmplY3QsIG9wdGlvbnMuaW5wdXRzKTtcblxuXHRcdFx0Ly8gcmVwbGFjZSBlbGVtZW50IG5vZGUgd2l0aCBjb21wb25lbnQgbm9kZVxuXHRcdFx0Y29uc3QgcmVwbGFjZUVsZW1lbnQ6IEVsZW1lbnQgPSB0aGlzLnJlcGxhY2VFbGVtZW50KGVsZW1lbnROb2RlKTtcblx0XHRcdHJlcGxhY2VFbGVtZW50LnBhcmVudE5vZGU/LnJlcGxhY2VDaGlsZChjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCwgcmVwbGFjZUVsZW1lbnQpO1xuXG5cdFx0XHRjb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG5cdFx0fSk7XG5cdH1cblxuXHRwcm90ZWN0ZWQgcmVwbGFjZUVsZW1lbnQoZWxlbWVudDogRWxlbWVudCk6IEVsZW1lbnQge1xuXHRcdHJldHVybiBlbGVtZW50O1xuXHR9XG5cblx0cHJvdGVjdGVkIGFic3RyYWN0IGV4dHJhY3RDb21wb25lbnRPcHRpb25zKGVsZW1lbnQ6IEVsZW1lbnQpOiBOZ0RvY1Byb2Nlc3Nvck9wdGlvbnM8VD47XG59XG4iXX0=
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { NgIf
|
|
1
|
+
import { NgIf } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { Component, ChangeDetectionStrategy, Inject
|
|
3
|
+
import { Component, ChangeDetectionStrategy, Inject } from '@angular/core';
|
|
4
4
|
import * as i1 from '@angular/router';
|
|
5
5
|
import { RouterLink } from '@angular/router';
|
|
6
6
|
import * as i2 from '@ng-doc/app/classes/root-page';
|
|
7
7
|
import { NgDocBreadcrumbComponent } from '@ng-doc/app/components/breadcrumb';
|
|
8
8
|
import { NgDocTocComponent } from '@ng-doc/app/components/toc';
|
|
9
|
+
import { provideTypeControl } from '@ng-doc/app/helpers';
|
|
9
10
|
import { NgDocSanitizeHtmlPipe } from '@ng-doc/app/pipes/sanitize-html';
|
|
10
11
|
import { NgDocBlockquoteProcessorDirective, NgDocIconProcessorDirective, NgDocLinkProcessorDirective, NgDocCodeProcessorDirective, NgDocTooltipProcessorDirective, NgDocDemoProcessorDirective, NgDocDemoPaneProcessorDirective, NgDocPlaygroundProcessorDirective } from '@ng-doc/app/processors';
|
|
11
12
|
import { NG_DOC_CONTEXT } from '@ng-doc/app/tokens';
|
|
12
|
-
import { NgDocButtonIconComponent, NgDocTooltipDirective, NgDocIconComponent, NgDocTextComponent, NgDocTextLeftDirective, NgDocTextRightDirective, NgDocMediaQueryDirective } from '@ng-doc/ui-kit';
|
|
13
|
-
import { provideTypeControl } from '@ng-doc/app/helpers';
|
|
14
13
|
import { NgDocTypeAliasControlComponent, NgDocStringControlComponent, NgDocNumberControlComponent, NgDocBooleanControlComponent } from '@ng-doc/app/type-controls';
|
|
14
|
+
import { NgDocButtonIconComponent, NgDocTooltipDirective, NgDocIconComponent, NgDocTextComponent, NgDocTextLeftDirective, NgDocTextRightDirective, NgDocMediaQueryDirective } from '@ng-doc/ui-kit';
|
|
15
15
|
|
|
16
16
|
class NgDocPageComponent {
|
|
17
17
|
constructor(context, router, rootPage) {
|
|
@@ -32,7 +32,12 @@ class NgDocPageComponent {
|
|
|
32
32
|
return urlTree.toString();
|
|
33
33
|
}
|
|
34
34
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageComponent, deps: [{ token: NG_DOC_CONTEXT }, { token: i1.Router }, { token: i2.NgDocRootPage }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocPageComponent, isStandalone: true, selector: "ng-doc-page",
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocPageComponent, isStandalone: true, selector: "ng-doc-page", providers: [
|
|
36
|
+
provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 }),
|
|
37
|
+
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
38
|
+
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
39
|
+
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
40
|
+
], ngImport: i0, template: "<article>\n\t<ng-doc-breadcrumb *ngIf=\"rootPage.pageType === 'guide'\"></ng-doc-breadcrumb>\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>\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>\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div\n\t\tclass=\"ng-doc-page-wrapper\"\n\t\t[innerHTML]=\"rootPage.pageContent | ngDocSanitizeHtml\"\n\t\tngDocBlockquoteProcessor\n\t\tngDocLinkProcessor\n\t\tngDocCodeProcessor\n\t\tngDocIconProcessor\n\t\tngDocTooltipProcessor\n\t\tngDocDemoProcessor\n\t\tngDocDemoPaneProcessor\n\t\tngDocPlaygroundProcessor\n\t\t#pageContainer\n\t></div>\n\n\t<div class=\"ng-doc-navigation-controls\" *ngIf=\"rootPage.pageType === 'guide'\">\n\t\t<a class=\"ng-doc-prev-page\" *ngIf=\"prevPage\" [routerLink]=\"prevPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\t<ng-doc-icon icon=\"arrow-left\" ngDocTextLeft></ng-doc-icon>\n\t\t\t\tPrevious\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ prevPage.title }}</div>\n\t\t</a>\n\t\t<a class=\"ng-doc-next-page\" *ngIf=\"nextPage\" [routerLink]=\"nextPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\tNext\n\t\t\t\t<ng-doc-icon icon=\"arrow-right\" ngDocTextRight></ng-doc-icon>\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ nextPage.title }}</div>\n\t\t</a>\n\t</div>\n</article>\n\n<ng-template\n\t[ngDocMediaQuery]=\"[mediaQuery.breakpoints.Large, mediaQuery.breakpoints.XLarge]\"\n\t#mediaQuery=\"ngDocMediaQuery\"\n>\n\t<ng-doc-toc [pageContainer]=\"pageContainer\"></ng-doc-toc>\n</ng-template>\n", styles: [":host{display:flex}: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}:host ng-doc-toc{--ng-doc-toc-margin: calc(var(--ng-doc-base-gutter) * 3);flex-shrink:0}@media screen and (max-width: 1200px){:host ng-doc-toc{display:none}}: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-10);--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: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocBreadcrumbComponent, selector: "ng-doc-breadcrumb" }, { 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", "size"] }, { kind: "directive", type: NgDocBlockquoteProcessorDirective, selector: "[ngDocBlockquoteProcessor]" }, { kind: "directive", type: NgDocIconProcessorDirective, selector: "[ngDocIconProcessor]" }, { kind: "directive", type: NgDocLinkProcessorDirective, selector: "[ngDocLinkProcessor]" }, { kind: "directive", type: NgDocCodeProcessorDirective, selector: "[ngDocCodeProcessor]" }, { kind: "directive", type: NgDocTooltipProcessorDirective, selector: "[ngDocTooltipProcessor]" }, { kind: "directive", type: NgDocDemoProcessorDirective, selector: "[ngDocDemoProcessor]" }, { kind: "directive", type: NgDocDemoPaneProcessorDirective, selector: "[ngDocDemoPaneProcessor]" }, { kind: "directive", type: NgDocPlaygroundProcessorDirective, selector: "[ngDocPlaygroundProcessor]" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { 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: NgDocMediaQueryDirective, selector: "[ngDocMediaQuery]", inputs: ["ngDocMediaQuery"], exportAs: ["ngDocMediaQuery"] }, { kind: "component", type: NgDocTocComponent, selector: "ng-doc-toc", inputs: ["pageContainer"] }, { kind: "pipe", type: NgDocSanitizeHtmlPipe, name: "ngDocSanitizeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
36
41
|
}
|
|
37
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageComponent, decorators: [{
|
|
38
43
|
type: Component,
|
|
@@ -57,39 +62,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
57
62
|
NgDocMediaQueryDirective,
|
|
58
63
|
NgDocTocComponent,
|
|
59
64
|
NgDocSanitizeHtmlPipe,
|
|
65
|
+
], providers: [
|
|
66
|
+
provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 }),
|
|
67
|
+
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
68
|
+
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
69
|
+
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
60
70
|
], template: "<article>\n\t<ng-doc-breadcrumb *ngIf=\"rootPage.pageType === 'guide'\"></ng-doc-breadcrumb>\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>\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>\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div\n\t\tclass=\"ng-doc-page-wrapper\"\n\t\t[innerHTML]=\"rootPage.pageContent | ngDocSanitizeHtml\"\n\t\tngDocBlockquoteProcessor\n\t\tngDocLinkProcessor\n\t\tngDocCodeProcessor\n\t\tngDocIconProcessor\n\t\tngDocTooltipProcessor\n\t\tngDocDemoProcessor\n\t\tngDocDemoPaneProcessor\n\t\tngDocPlaygroundProcessor\n\t\t#pageContainer\n\t></div>\n\n\t<div class=\"ng-doc-navigation-controls\" *ngIf=\"rootPage.pageType === 'guide'\">\n\t\t<a class=\"ng-doc-prev-page\" *ngIf=\"prevPage\" [routerLink]=\"prevPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\t<ng-doc-icon icon=\"arrow-left\" ngDocTextLeft></ng-doc-icon>\n\t\t\t\tPrevious\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ prevPage.title }}</div>\n\t\t</a>\n\t\t<a class=\"ng-doc-next-page\" *ngIf=\"nextPage\" [routerLink]=\"nextPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\tNext\n\t\t\t\t<ng-doc-icon icon=\"arrow-right\" ngDocTextRight></ng-doc-icon>\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ nextPage.title }}</div>\n\t\t</a>\n\t</div>\n</article>\n\n<ng-template\n\t[ngDocMediaQuery]=\"[mediaQuery.breakpoints.Large, mediaQuery.breakpoints.XLarge]\"\n\t#mediaQuery=\"ngDocMediaQuery\"\n>\n\t<ng-doc-toc [pageContainer]=\"pageContainer\"></ng-doc-toc>\n</ng-template>\n", styles: [":host{display:flex}: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}:host ng-doc-toc{--ng-doc-toc-margin: calc(var(--ng-doc-base-gutter) * 3);flex-shrink:0}@media screen and (max-width: 1200px){:host ng-doc-toc{display:none}}: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-10);--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"] }]
|
|
61
71
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
62
72
|
type: Inject,
|
|
63
73
|
args: [NG_DOC_CONTEXT]
|
|
64
74
|
}] }, { type: i1.Router }, { type: i2.NgDocRootPage }]; } });
|
|
65
75
|
|
|
66
|
-
class NgDocPageModule {
|
|
67
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
68
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageModule, imports: [CommonModule, RouterLink, NgDocPageComponent], exports: [NgDocPageComponent] }); }
|
|
69
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageModule, providers: [
|
|
70
|
-
provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 }),
|
|
71
|
-
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
72
|
-
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
73
|
-
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
74
|
-
], imports: [CommonModule, NgDocPageComponent] }); }
|
|
75
|
-
}
|
|
76
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageModule, decorators: [{
|
|
77
|
-
type: NgModule,
|
|
78
|
-
args: [{
|
|
79
|
-
imports: [CommonModule, RouterLink, NgDocPageComponent],
|
|
80
|
-
providers: [
|
|
81
|
-
provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 }),
|
|
82
|
-
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
83
|
-
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
84
|
-
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
85
|
-
],
|
|
86
|
-
exports: [NgDocPageComponent],
|
|
87
|
-
}]
|
|
88
|
-
}] });
|
|
89
|
-
|
|
90
76
|
/**
|
|
91
77
|
* Generated bundle index. Do not edit.
|
|
92
78
|
*/
|
|
93
79
|
|
|
94
|
-
export { NgDocPageComponent
|
|
80
|
+
export { NgDocPageComponent };
|
|
95
81
|
//# sourceMappingURL=ng-doc-app-components-page.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-doc-app-components-page.mjs","sources":["../../../../libs/app/components/page/page.component.ts","../../../../libs/app/components/page/page.component.html","../../../../libs/app/components/page/page.module.ts","../../../../libs/app/components/page/ng-doc-app-components-page.ts"],"sourcesContent":["import {NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {Router, RouterLink, UrlTree} from '@angular/router';\nimport {NgDocRootPage} from '@ng-doc/app/classes/root-page';\nimport {NgDocBreadcrumbComponent} from '@ng-doc/app/components/breadcrumb';\nimport {NgDocTocComponent} from '@ng-doc/app/components/toc';\nimport {NgDocContext, NgDocNavigation} from '@ng-doc/app/interfaces';\nimport {NgDocSanitizeHtmlPipe} from '@ng-doc/app/pipes/sanitize-html';\nimport {\n\tNgDocBlockquoteProcessorDirective,\n\tNgDocCodeProcessorDirective,\n\tNgDocDemoPaneProcessorDirective,\n\tNgDocDemoProcessorDirective,\n\tNgDocIconProcessorDirective,\n\tNgDocLinkProcessorDirective,\n\tNgDocPlaygroundProcessorDirective,\n\tNgDocTooltipProcessorDirective,\n} from '@ng-doc/app/processors';\nimport {NG_DOC_CONTEXT} from '@ng-doc/app/tokens';\nimport {\n\tNgDocButtonIconComponent,\n\tNgDocIconComponent,\n\tNgDocMediaQueryDirective,\n\tNgDocTextComponent,\n\tNgDocTextLeftDirective,\n\tNgDocTextRightDirective,\n\tNgDocTooltipDirective,\n} from '@ng-doc/ui-kit';\n\n@Component({\n\tselector: 'ng-doc-page',\n\ttemplateUrl: './page.component.html',\n\tstyleUrls: ['./page.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tNgIf,\n\t\tNgDocBreadcrumbComponent,\n\t\tNgDocButtonIconComponent,\n\t\tNgDocTooltipDirective,\n\t\tNgDocIconComponent,\n\t\tNgDocBlockquoteProcessorDirective,\n\t\tNgDocIconProcessorDirective,\n\t\tNgDocLinkProcessorDirective,\n\t\tNgDocCodeProcessorDirective,\n\t\tNgDocTooltipProcessorDirective,\n\t\tNgDocDemoProcessorDirective,\n\t\tNgDocDemoPaneProcessorDirective,\n\t\tNgDocPlaygroundProcessorDirective,\n\t\tRouterLink,\n\t\tNgDocTextComponent,\n\t\tNgDocTextLeftDirective,\n\t\tNgDocTextRightDirective,\n\t\tNgDocMediaQueryDirective,\n\t\tNgDocTocComponent,\n\t\tNgDocSanitizeHtmlPipe,\n\t],\n})\nexport class NgDocPageComponent {\n\treadonly prevPage?: NgDocNavigation;\n\treadonly nextPage?: NgDocNavigation;\n\n\tconstructor(\n\t\t@Inject(NG_DOC_CONTEXT)\n\t\tprivate readonly context: NgDocContext,\n\t\tprivate readonly router: Router,\n\t\treadonly rootPage: NgDocRootPage,\n\t) {\n\t\tconst flatPages = this.flatPages(this.context.navigation);\n\n\t\tthis.prevPage = flatPages[flatPages.findIndex((item: NgDocNavigation) => this.url === item.route) - 1];\n\t\tthis.nextPage = flatPages[flatPages.findIndex((item: NgDocNavigation) => this.url === item.route) + 1];\n\t}\n\n\tprivate flatPages(items: NgDocNavigation[]): NgDocNavigation[] {\n\t\treturn items.map((item: NgDocNavigation) => [item.children?.length ? this.flatPages(item.children) : item]).flat(2);\n\t}\n\n\tprivate get url(): string {\n\t\tconst urlTree: UrlTree = this.router.parseUrl(this.router.url);\n\n\t\turlTree.queryParams = {};\n\t\turlTree.fragment = null;\n\n\t\treturn urlTree.toString();\n\t}\n}\n","<article>\n\t<ng-doc-breadcrumb *ngIf=\"rootPage.pageType === 'guide'\"></ng-doc-breadcrumb>\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>\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>\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div\n\t\tclass=\"ng-doc-page-wrapper\"\n\t\t[innerHTML]=\"rootPage.pageContent | ngDocSanitizeHtml\"\n\t\tngDocBlockquoteProcessor\n\t\tngDocLinkProcessor\n\t\tngDocCodeProcessor\n\t\tngDocIconProcessor\n\t\tngDocTooltipProcessor\n\t\tngDocDemoProcessor\n\t\tngDocDemoPaneProcessor\n\t\tngDocPlaygroundProcessor\n\t\t#pageContainer\n\t></div>\n\n\t<div class=\"ng-doc-navigation-controls\" *ngIf=\"rootPage.pageType === 'guide'\">\n\t\t<a class=\"ng-doc-prev-page\" *ngIf=\"prevPage\" [routerLink]=\"prevPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\t<ng-doc-icon icon=\"arrow-left\" ngDocTextLeft></ng-doc-icon>\n\t\t\t\tPrevious\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ prevPage.title }}</div>\n\t\t</a>\n\t\t<a class=\"ng-doc-next-page\" *ngIf=\"nextPage\" [routerLink]=\"nextPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\tNext\n\t\t\t\t<ng-doc-icon icon=\"arrow-right\" ngDocTextRight></ng-doc-icon>\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ nextPage.title }}</div>\n\t\t</a>\n\t</div>\n</article>\n\n<ng-template\n\t[ngDocMediaQuery]=\"[mediaQuery.breakpoints.Large, mediaQuery.breakpoints.XLarge]\"\n\t#mediaQuery=\"ngDocMediaQuery\"\n>\n\t<ng-doc-toc [pageContainer]=\"pageContainer\"></ng-doc-toc>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {RouterLink} from '@angular/router';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {\n\tNgDocBooleanControlComponent,\n\tNgDocNumberControlComponent,\n\tNgDocStringControlComponent,\n\tNgDocTypeAliasControlComponent,\n} from '@ng-doc/app/type-controls';\n\nimport {NgDocPageComponent} from './page.component';\n\n@NgModule({\n\timports: [CommonModule, RouterLink, NgDocPageComponent],\n\tproviders: [\n\t\tprovideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, {order: 10}),\n\t\tprovideTypeControl('string', NgDocStringControlComponent, {order: 20}),\n\t\tprovideTypeControl('number', NgDocNumberControlComponent, {order: 30}),\n\t\tprovideTypeControl('boolean', NgDocBooleanControlComponent, {hideLabel: true, order: 40}),\n\t],\n\texports: [NgDocPageComponent],\n})\nexport class NgDocPageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-doc-app-components-page.mjs","sources":["../../../../libs/app/components/page/page.component.ts","../../../../libs/app/components/page/page.component.html","../../../../libs/app/components/page/ng-doc-app-components-page.ts"],"sourcesContent":["import {NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {Router, RouterLink, UrlTree} from '@angular/router';\nimport {NgDocRootPage} from '@ng-doc/app/classes/root-page';\nimport {NgDocBreadcrumbComponent} from '@ng-doc/app/components/breadcrumb';\nimport {NgDocTocComponent} from '@ng-doc/app/components/toc';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {NgDocContext, NgDocNavigation} from '@ng-doc/app/interfaces';\nimport {NgDocSanitizeHtmlPipe} from '@ng-doc/app/pipes/sanitize-html';\nimport {\n\tNgDocBlockquoteProcessorDirective,\n\tNgDocCodeProcessorDirective,\n\tNgDocDemoPaneProcessorDirective,\n\tNgDocDemoProcessorDirective,\n\tNgDocIconProcessorDirective,\n\tNgDocLinkProcessorDirective,\n\tNgDocPlaygroundProcessorDirective,\n\tNgDocTooltipProcessorDirective,\n} from '@ng-doc/app/processors';\nimport {NG_DOC_CONTEXT} from '@ng-doc/app/tokens';\nimport {\n\tNgDocBooleanControlComponent,\n\tNgDocNumberControlComponent,\n\tNgDocStringControlComponent,\n\tNgDocTypeAliasControlComponent,\n} from '@ng-doc/app/type-controls';\nimport {\n\tNgDocButtonIconComponent,\n\tNgDocIconComponent,\n\tNgDocMediaQueryDirective,\n\tNgDocTextComponent,\n\tNgDocTextLeftDirective,\n\tNgDocTextRightDirective,\n\tNgDocTooltipDirective,\n} from '@ng-doc/ui-kit';\n\n@Component({\n\tselector: 'ng-doc-page',\n\ttemplateUrl: './page.component.html',\n\tstyleUrls: ['./page.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tNgIf,\n\t\tNgDocBreadcrumbComponent,\n\t\tNgDocButtonIconComponent,\n\t\tNgDocTooltipDirective,\n\t\tNgDocIconComponent,\n\t\tNgDocBlockquoteProcessorDirective,\n\t\tNgDocIconProcessorDirective,\n\t\tNgDocLinkProcessorDirective,\n\t\tNgDocCodeProcessorDirective,\n\t\tNgDocTooltipProcessorDirective,\n\t\tNgDocDemoProcessorDirective,\n\t\tNgDocDemoPaneProcessorDirective,\n\t\tNgDocPlaygroundProcessorDirective,\n\t\tRouterLink,\n\t\tNgDocTextComponent,\n\t\tNgDocTextLeftDirective,\n\t\tNgDocTextRightDirective,\n\t\tNgDocMediaQueryDirective,\n\t\tNgDocTocComponent,\n\t\tNgDocSanitizeHtmlPipe,\n\t],\n\tproviders: [\n\t\tprovideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, {order: 10}),\n\t\tprovideTypeControl('string', NgDocStringControlComponent, {order: 20}),\n\t\tprovideTypeControl('number', NgDocNumberControlComponent, {order: 30}),\n\t\tprovideTypeControl('boolean', NgDocBooleanControlComponent, {hideLabel: true, order: 40}),\n\t],\n})\nexport class NgDocPageComponent {\n\treadonly prevPage?: NgDocNavigation;\n\treadonly nextPage?: NgDocNavigation;\n\n\tconstructor(\n\t\t@Inject(NG_DOC_CONTEXT)\n\t\tprivate readonly context: NgDocContext,\n\t\tprivate readonly router: Router,\n\t\treadonly rootPage: NgDocRootPage,\n\t) {\n\t\tconst flatPages = this.flatPages(this.context.navigation);\n\n\t\tthis.prevPage = flatPages[flatPages.findIndex((item: NgDocNavigation) => this.url === item.route) - 1];\n\t\tthis.nextPage = flatPages[flatPages.findIndex((item: NgDocNavigation) => this.url === item.route) + 1];\n\t}\n\n\tprivate flatPages(items: NgDocNavigation[]): NgDocNavigation[] {\n\t\treturn items.map((item: NgDocNavigation) => [item.children?.length ? this.flatPages(item.children) : item]).flat(2);\n\t}\n\n\tprivate get url(): string {\n\t\tconst urlTree: UrlTree = this.router.parseUrl(this.router.url);\n\n\t\turlTree.queryParams = {};\n\t\turlTree.fragment = null;\n\n\t\treturn urlTree.toString();\n\t}\n}\n","<article>\n\t<ng-doc-breadcrumb *ngIf=\"rootPage.pageType === 'guide'\"></ng-doc-breadcrumb>\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>\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>\n\t\t\t<ng-doc-icon icon=\"code\"></ng-doc-icon>\n\t\t</a>\n\t</div>\n\n\t<div\n\t\tclass=\"ng-doc-page-wrapper\"\n\t\t[innerHTML]=\"rootPage.pageContent | ngDocSanitizeHtml\"\n\t\tngDocBlockquoteProcessor\n\t\tngDocLinkProcessor\n\t\tngDocCodeProcessor\n\t\tngDocIconProcessor\n\t\tngDocTooltipProcessor\n\t\tngDocDemoProcessor\n\t\tngDocDemoPaneProcessor\n\t\tngDocPlaygroundProcessor\n\t\t#pageContainer\n\t></div>\n\n\t<div class=\"ng-doc-navigation-controls\" *ngIf=\"rootPage.pageType === 'guide'\">\n\t\t<a class=\"ng-doc-prev-page\" *ngIf=\"prevPage\" [routerLink]=\"prevPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\t<ng-doc-icon icon=\"arrow-left\" ngDocTextLeft></ng-doc-icon>\n\t\t\t\tPrevious\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ prevPage.title }}</div>\n\t\t</a>\n\t\t<a class=\"ng-doc-next-page\" *ngIf=\"nextPage\" [routerLink]=\"nextPage.route\">\n\t\t\t<div class=\"ng-doc-navigation-page-label\" ng-doc-text size=\"small\">\n\t\t\t\tNext\n\t\t\t\t<ng-doc-icon icon=\"arrow-right\" ngDocTextRight></ng-doc-icon>\n\t\t\t</div>\n\t\t\t<div class=\"ng-doc-navigation-page-title\" ng-doc-text>{{ nextPage.title }}</div>\n\t\t</a>\n\t</div>\n</article>\n\n<ng-template\n\t[ngDocMediaQuery]=\"[mediaQuery.breakpoints.Large, mediaQuery.breakpoints.XLarge]\"\n\t#mediaQuery=\"ngDocMediaQuery\"\n>\n\t<ng-doc-toc [pageContainer]=\"pageContainer\"></ng-doc-toc>\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@ import { buildPlaygroundDemoPipeTemplate, buildPlaygroundDemoTemplate } from '@n
|
|
|
14
14
|
import { formatHtml } from '@ng-doc/core/helpers/format-html';
|
|
15
15
|
import { untilDestroyed, UntilDestroy } from '@ngneat/until-destroy';
|
|
16
16
|
import { of, Subject } from 'rxjs';
|
|
17
|
-
import { takeUntil, pluck } from 'rxjs/operators';
|
|
17
|
+
import { takeUntil, startWith, pluck } from 'rxjs/operators';
|
|
18
18
|
import * as i1 from '@angular/cdk/layout';
|
|
19
19
|
import { Breakpoints } from '@angular/cdk/layout';
|
|
20
20
|
import { objectKeys as objectKeys$1, isPresent, extractValueOrThrow } from '@ng-doc/core';
|
|
@@ -63,7 +63,7 @@ let NgDocPlaygroundDemoComponent = class NgDocPlaygroundDemoComponent {
|
|
|
63
63
|
}
|
|
64
64
|
this.updateDemo();
|
|
65
65
|
this.form?.valueChanges
|
|
66
|
-
.pipe(takeUntil(this.unsubscribe$), untilDestroyed(this))
|
|
66
|
+
.pipe(takeUntil(this.unsubscribe$), untilDestroyed(this), startWith(this.form?.value))
|
|
67
67
|
.subscribe((data) => this.updateDemo(data));
|
|
68
68
|
}
|
|
69
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-doc-app-components-playground.mjs","sources":["../../../../libs/app/components/playground/base-playground.ts","../../../../libs/app/components/playground/playground-demo/playground-demo.component.ts","../../../../libs/app/components/playground/playground-demo/playground-demo.component.html","../../../../libs/app/components/playground/playground-property/playground-property.component.ts","../../../../libs/app/components/playground/playground-property/playground-property.component.html","../../../../libs/app/components/playground/playground-properties/playground-properties.component.ts","../../../../libs/app/components/playground/playground-properties/playground-properties.component.html","../../../../libs/app/components/playground/playground.component.ts","../../../../libs/app/components/playground/playground.component.html","../../../../libs/app/components/playground/ng-doc-app-components-playground.ts"],"sourcesContent":["import {Directive, Input, Type, ViewContainerRef} from '@angular/core';\nimport {NgDocPlaygroundConfig} from '@ng-doc/core/interfaces';\n\n/**\n * Base class for playgrounds components.\n */\n@Directive()\nexport abstract class NgDocBasePlayground implements Pick<NgDocPlaygroundConfig, 'data'> {\n\tstatic readonly selector: string = 'unknown';\n\tabstract readonly playground?: Type<unknown>;\n\tabstract readonly viewContainerRef?: ViewContainerRef;\n\n\t@Input()\n\tproperties: Record<string, any> = {};\n\n\t@Input()\n\tdata: Record<string, any> = {};\n\n\t@Input()\n\tcontent: any = {};\n}\n","import {AsyncPipe} from '@angular/common';\nimport {\n\tChangeDetectionStrategy,\n\tComponent,\n\tComponentRef,\n\tInjectionToken,\n\tInjector,\n\tInput,\n\tOnChanges,\n\tOnDestroy,\n\tSimpleChanges,\n\tType,\n\tViewChild,\n\tViewContainerRef,\n} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport {NgDocDemoDisplayerComponent} from '@ng-doc/app/components/demo-displayer';\nimport {getPlaygroundDemoToken} from '@ng-doc/app/helpers';\nimport {NgDocFormPartialValue} from '@ng-doc/app/types';\nimport {\n\tbuildPlaygroundDemoPipeTemplate,\n\tbuildPlaygroundDemoTemplate,\n} from '@ng-doc/core/helpers/build-playground-demo-template';\nimport {formatHtml} from '@ng-doc/core/helpers/format-html';\nimport {objectKeys} from '@ng-doc/core/helpers/object-keys';\nimport {NgDocPlaygroundConfig, NgDocPlaygroundProperties, NgDocPlaygroundProperty} from '@ng-doc/core/interfaces';\nimport {NgDocExtractedValue} from '@ng-doc/core/types';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {Observable, of, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {NgDocBasePlayground} from '../base-playground';\nimport {NgDocPlaygroundForm} from '../playground-form';\n\n@Component({\n\tselector: 'ng-doc-playground-demo',\n\ttemplateUrl: './playground-demo.component.html',\n\tstyleUrls: ['./playground-demo.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [NgDocDemoDisplayerComponent, AsyncPipe],\n})\n@UntilDestroy()\nexport class NgDocPlaygroundDemoComponent<T extends NgDocPlaygroundProperties = NgDocPlaygroundProperties>\n\timplements OnChanges, OnDestroy\n{\n\t@Input()\n\tid: string = '';\n\n\t@Input()\n\tpipeName: string = '';\n\n\t@Input()\n\tselector: string = '';\n\n\t@Input()\n\tconfiguration?: NgDocPlaygroundConfig;\n\n\t@Input()\n\tproperties?: T;\n\n\t@Input()\n\trecreateDemo: boolean = false;\n\n\t@Input()\n\tform!: FormGroup<NgDocPlaygroundForm>;\n\n\t@ViewChild('demoOutlet', {static: true, read: ViewContainerRef})\n\tdemoOutlet?: ViewContainerRef;\n\n\tplaygroundDemo?: typeof NgDocBasePlayground;\n\n\tcode: Observable<string> = of('');\n\n\tprivate demoRef?: ComponentRef<NgDocBasePlayground>;\n\tprivate readonly unsubscribe$: Subject<void> = new Subject<void>();\n\n\tconstructor(private readonly injector: Injector) {}\n\n\tngOnChanges({form, id}: SimpleChanges): void {\n\t\tif (form && id) {\n\t\t\tthis.unsubscribe$.next();\n\n\t\t\tconst demoInjector: InjectionToken<Array<typeof NgDocBasePlayground>> | undefined = getPlaygroundDemoToken(\n\t\t\t\tthis.id,\n\t\t\t);\n\n\t\t\tif (demoInjector) {\n\t\t\t\tconst demos: Array<typeof NgDocBasePlayground> = this.injector.get(demoInjector, []);\n\t\t\t\tthis.playgroundDemo = demos.find(\n\t\t\t\t\t(demo: typeof NgDocBasePlayground) => demo.selector === this.selector || demo.selector === this.pipeName,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthis.updateDemo();\n\n\t\t\tthis.form?.valueChanges\n\t\t\t\t.pipe(takeUntil(this.unsubscribe$), untilDestroyed(this))\n\t\t\t\t.subscribe((data: NgDocFormPartialValue<typeof this.form>) => this.updateDemo(data));\n\t\t}\n\t}\n\n\tprivate updateDemo(data?: NgDocFormPartialValue<typeof this.form>): void {\n\t\tif (this.recreateDemo || !this.demoRef) {\n\t\t\tthis.renderDemo();\n\t\t}\n\n\t\tif (data) {\n\t\t\tthis.demoRef?.setInput('properties', data.properties ?? {});\n\t\t\tthis.demoRef?.setInput('content', data.content ?? {});\n\t\t}\n\n\t\tthis.updateCodeView();\n\t}\n\n\tprivate renderDemo(): void {\n\t\tif (this.playgroundDemo) {\n\t\t\tthis.demoRef?.destroy();\n\n\t\t\tif (this.playgroundDemo) {\n\t\t\t\tthis.demoRef = this.demoOutlet?.createComponent(this.playgroundDemo as unknown as Type<NgDocBasePlayground>);\n\t\t\t}\n\n\t\t\tthis.demoRef?.changeDetectorRef.detectChanges();\n\t\t}\n\t}\n\n\tprivate updateCodeView(): void {\n\t\tconst template: string = this.pipeName\n\t\t\t? buildPlaygroundDemoPipeTemplate(\n\t\t\t\t\tthis.configuration?.template ?? '',\n\t\t\t\t\tthis.pipeName,\n\t\t\t\t\tthis.getActiveContent(),\n\t\t\t\t\tthis.getActiveInputs(),\n\t\t\t )\n\t\t\t: buildPlaygroundDemoTemplate(\n\t\t\t\t\tthis.configuration?.template ?? '',\n\t\t\t\t\tthis.selector,\n\t\t\t\t\tthis.getActiveContent(),\n\t\t\t\t\tthis.getActiveInputs(),\n\t\t\t );\n\n\t\tthis.code = formatHtml(template);\n\t}\n\n\tprivate getActiveContent(): Record<string, string> {\n\t\tconst formData: Record<string, boolean> = (this.form?.controls.content.value as Record<string, boolean>) ?? {};\n\n\t\treturn objectKeys(formData).reduce((result: Record<string, string>, key: string) => {\n\t\t\tresult[key] = formData[key] ? this.configuration?.content?.[key].template ?? '' : '';\n\n\t\t\treturn result;\n\t\t}, {});\n\t}\n\n\tprivate getActiveInputs(): Record<string, string> {\n\t\tconst formData: Record<string, NgDocExtractedValue> =\n\t\t\t(this.form?.controls.properties.value as Record<string, NgDocExtractedValue>) ?? {};\n\n\t\treturn objectKeys(formData).reduce((result: Record<string, string>, key: string) => {\n\t\t\tconst property: NgDocPlaygroundProperty | undefined = this.properties?.[key];\n\n\t\t\tif (property) {\n\t\t\t\tconst value: NgDocExtractedValue = formData[key];\n\t\t\t\tconst isString: boolean = typeof value === 'string';\n\t\t\t\tconst inputValue: string = isString ? `'${value}'` : `${JSON.stringify(value)}`;\n\n\t\t\t\tif ((property.default ?? '') !== inputValue) {\n\t\t\t\t\tresult[property.inputName] = inputValue;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}, {});\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.unsubscribe$.next();\n\t\tthis.unsubscribe$.complete();\n\t}\n}\n","<ng-doc-demo-displayer [code]=\"(code | async) ?? ''\" [border]=\"false\" language=\"html\">\n\t<ng-container #demoOutlet></ng-container>\n</ng-doc-demo-displayer>\n","import {\n\tChangeDetectionStrategy,\n\tComponent,\n\tComponentRef,\n\tHostBinding,\n\tInput,\n\tOnChanges,\n\tSimpleChanges,\n\tViewChild,\n\tViewContainerRef,\n} from '@angular/core';\nimport {FormControl} from '@angular/forms';\nimport {isPlaygroundProperty} from '@ng-doc/app/helpers';\nimport {NgDocProvidedTypeControl, NgDocTypeControl, NgDocTypeControlProviderOptions} from '@ng-doc/app/interfaces';\nimport {NgDocSanitizeHtmlPipe} from '@ng-doc/app/pipes';\nimport {NgDocPlaygroundContent, NgDocPlaygroundProperty} from '@ng-doc/core/interfaces';\nimport {NgDocLabelComponent, NgDocTooltipDirective} from '@ng-doc/ui-kit';\n\n@Component({\n\tselector: 'ng-doc-playground-property',\n\ttemplateUrl: './playground-property.component.html',\n\tstyleUrls: ['./playground-property.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [NgDocLabelComponent, NgDocTooltipDirective, NgDocSanitizeHtmlPipe],\n})\nexport class NgDocPlaygroundPropertyComponent implements OnChanges {\n\t@Input()\n\tname: string = '';\n\n\t@Input()\n\tproperty?: NgDocPlaygroundProperty | NgDocPlaygroundContent;\n\n\t@Input()\n\ttypeControl?: NgDocProvidedTypeControl;\n\n\t@Input()\n\tcontrol?: FormControl;\n\n\t@ViewChild('propertyOutlet', {read: ViewContainerRef, static: true})\n\tpropertyOutlet?: ViewContainerRef;\n\n\tprotected option?: NgDocTypeControlProviderOptions;\n\tprivate propertyTypeControl?: ComponentRef<NgDocTypeControl>;\n\n\tngOnChanges({property, control, typeControl}: SimpleChanges): void {\n\t\tif ((property || control || typeControl) && this.property && this.typeControl) {\n\t\t\tthis.propertyTypeControl?.destroy();\n\t\t\tthis.propertyTypeControl = undefined;\n\n\t\t\tif (this.typeControl && this.propertyOutlet) {\n\t\t\t\tthis.propertyTypeControl = this.propertyOutlet.createComponent(this.typeControl.control);\n\t\t\t\tthis.propertyTypeControl.instance.name = this.name;\n\t\t\t\tthis.propertyTypeControl.instance.description = this.tooltipContent;\n\t\t\t\tthis.propertyTypeControl.instance.options = isPlaygroundProperty(this.property)\n\t\t\t\t\t? this.property.options\n\t\t\t\t\t: undefined;\n\t\t\t\tthis.propertyTypeControl.instance.default = isPlaygroundProperty(this.property)\n\t\t\t\t\t? this.property.default\n\t\t\t\t\t: undefined;\n\t\t\t\tthis.propertyTypeControl.instance.writeValue(this.control?.value);\n\n\t\t\t\tthis.option = this.typeControl.options;\n\t\t\t}\n\t\t}\n\n\t\tif (control) {\n\t\t\tthis.control?.registerOnChange((value: string) => this.propertyTypeControl?.instance?.writeValue(value));\n\t\t\tthis.propertyTypeControl?.instance.registerOnChange((value: unknown) => this.control?.setValue(value));\n\t\t\tthis.propertyTypeControl?.instance.registerOnTouched(() => this.control?.markAsTouched());\n\t\t}\n\t}\n\n\t@HostBinding('attr.data-has-property-control')\n\tget hasPropertyControl(): boolean {\n\t\treturn !!this.propertyTypeControl;\n\t}\n\n\tget tooltipContent(): string {\n\t\treturn this.property && isPlaygroundProperty(this.property) ? this.property.description ?? '' : '';\n\t}\n}\n","<label [ng-doc-label]=\"option?.hideLabel ? '' : labelContent\">\n\t<ng-template #labelContent>\n\t\t<span [ngDocTooltip]=\"tooltipTemplate\" [canOpen]=\"!!tooltipContent\"\n\t\t\t [positions]=\"['left-center', 'top-right', 'bottom-right']\">{{name}}</span>\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","import {BreakpointObserver, Breakpoints} from '@angular/cdk/layout';\nimport {AsyncPipe, KeyValuePipe, NgFor, NgIf} from '@angular/common';\nimport {\n\tChangeDetectionStrategy,\n\tComponent,\n\tEventEmitter,\n\tInjectionToken,\n\tInjector,\n\tInput,\n\tisDevMode,\n\tOnChanges,\n\tOutput,\n\tSimpleChanges,\n} from '@angular/core';\nimport {FormControl, FormGroup, FormsModule} from '@angular/forms';\nimport {getTokenForType, isPlaygroundProperty} from '@ng-doc/app/helpers';\nimport {NgDocProvidedTypeControl} from '@ng-doc/app/interfaces';\nimport {extractValueOrThrow, isPresent, objectKeys} from '@ng-doc/core';\nimport {NgDocPlaygroundContent, NgDocPlaygroundProperties, NgDocPlaygroundProperty} from '@ng-doc/core/interfaces';\nimport {\n\tNgDocBindPipe,\n\tNgDocButtonComponent,\n\tNgDocCheckboxComponent,\n\tNgDocIconComponent,\n\tNgDocRunPipe,\n\tNgDocTextComponent,\n\tNgDocTextRightDirective,\n\tNgDocTooltipDirective,\n} from '@ng-doc/ui-kit';\nimport {Observable} from 'rxjs';\nimport {pluck} from 'rxjs/operators';\n\nimport {NgDocPlaygroundForm} from '../playground-form';\nimport {NgDocPlaygroundPropertyComponent} from '../playground-property/playground-property.component';\nimport {NgDocPlaygroundPropertyControl} from '../playground-property-control';\n\n@Component({\n\tselector: 'ng-doc-playground-properties',\n\ttemplateUrl: './playground-properties.component.html',\n\tstyleUrls: ['./playground-properties.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tNgDocTextComponent,\n\t\tNgDocButtonComponent,\n\t\tNgDocCheckboxComponent,\n\t\tFormsModule,\n\t\tNgDocTooltipDirective,\n\t\tNgDocIconComponent,\n\t\tNgDocTextRightDirective,\n\t\tNgIf,\n\t\tNgFor,\n\t\tNgDocPlaygroundPropertyComponent,\n\t\tAsyncPipe,\n\t\tKeyValuePipe,\n\t\tNgDocBindPipe,\n\t\tNgDocRunPipe,\n\t],\n})\nexport class NgDocPlaygroundPropertiesComponent<\n\tP extends NgDocPlaygroundProperties,\n\tC extends Record<string, NgDocPlaygroundContent>,\n> implements OnChanges\n{\n\t@Input()\n\tform!: FormGroup<NgDocPlaygroundForm>;\n\n\t@Input()\n\tproperties?: P;\n\n\t@Input()\n\tdynamicContent?: C;\n\n\t@Input()\n\trecreateDemo: boolean = false;\n\n\t@Output()\n\trecreateDemoChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n\t@Output()\n\tresetForm: EventEmitter<void> = new EventEmitter<void>();\n\n\treadonly breakpoints: string[] = [Breakpoints.XSmall];\n\treadonly observer: Observable<boolean>;\n\n\tprotected propertyControls: NgDocPlaygroundPropertyControl[] = [];\n\tprotected contentTypeControl?: NgDocProvidedTypeControl = this.getControlForType('boolean');\n\n\tconstructor(protected readonly breakpointObserver: BreakpointObserver, private injector: Injector) {\n\t\tthis.observer = this.breakpointObserver.observe(this.breakpoints).pipe(pluck('matches'));\n\t}\n\n\tngOnChanges({properties}: SimpleChanges): void {\n\t\tif (properties && this.properties) {\n\t\t\tthis.propertyControls = objectKeys(this.properties)\n\t\t\t\t.map((key: keyof P) => {\n\t\t\t\t\tif (this.properties) {\n\t\t\t\t\t\tconst property: NgDocPlaygroundProperty = this.properties[key];\n\t\t\t\t\t\tconst typeControl: NgDocProvidedTypeControl | undefined = this.getTypeControl(property);\n\n\t\t\t\t\t\tif (typeControl) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tpropertyName: String(key),\n\t\t\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\t\ttypeControl,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn null;\n\t\t\t\t})\n\t\t\t\t.filter(isPresent)\n\t\t\t\t.sort((a: NgDocPlaygroundPropertyControl, b: NgDocPlaygroundPropertyControl) => {\n\t\t\t\t\tconst aOrder: number | undefined = a.typeControl.options?.order;\n\t\t\t\t\tconst bOrder: number | undefined = b.typeControl.options?.order;\n\n\t\t\t\t\tif (isPresent(aOrder) && isPresent(bOrder)) {\n\t\t\t\t\t\treturn aOrder - bOrder;\n\t\t\t\t\t}\n\t\t\t\t\tif (isPresent(aOrder)) {\n\t\t\t\t\t\treturn -1;\n\t\t\t\t\t}\n\t\t\t\t\tif (isPresent(bOrder)) {\n\t\t\t\t\t\treturn 1;\n\t\t\t\t\t}\n\t\t\t\t\treturn a.property.inputName.localeCompare(b.property.inputName);\n\t\t\t\t});\n\t\t}\n\t}\n\n\tgetFormControl(controlType: keyof typeof this.form.controls, key: string): FormControl {\n\t\treturn this.form.get(controlType)?.get(key) as FormControl;\n\t}\n\n\tprivate getTypeControl(property: NgDocPlaygroundProperty): NgDocProvidedTypeControl | undefined {\n\t\tconst type: string = property.type;\n\t\tconst typeControl: NgDocProvidedTypeControl | undefined =\n\t\t\tthis.getControlForType(type) ??\n\t\t\tthis.getControlForTypeAlias(isPlaygroundProperty(property) ? property.options : undefined);\n\n\t\tif (!typeControl && isDevMode()) {\n\t\t\tconsole.warn(\n\t\t\t\t`NgDocPlayground didn't find the control for the @Input \"${property.inputName}\", the type \"${type}\" was not recognized'`,\n\t\t\t);\n\t\t}\n\n\t\treturn typeControl;\n\t}\n\n\tprivate getControlForType(type: string): NgDocProvidedTypeControl | undefined {\n\t\tconst token: InjectionToken<NgDocProvidedTypeControl> | undefined = getTokenForType(type);\n\n\t\treturn token ? this.injector.get(token) : undefined;\n\t}\n\n\tprivate getControlForTypeAlias(options?: string[]): NgDocProvidedTypeControl | undefined {\n\t\tif (options && options.length) {\n\t\t\tlet optionsIsValid: boolean = true;\n\n\t\t\ttry {\n\t\t\t\t// checking that all values are extractable\n\t\t\t\toptions.forEach((item: string) => extractValueOrThrow(item));\n\t\t\t} catch {\n\t\t\t\toptionsIsValid = false;\n\t\t\t}\n\n\t\t\tif (optionsIsValid) {\n\t\t\t\tconst token: InjectionToken<NgDocProvidedTypeControl> | undefined = getTokenForType('NgDocTypeAlias');\n\n\t\t\t\treturn token ? this.injector.get(token) : undefined;\n\t\t\t}\n\t\t}\n\n\t\treturn undefined;\n\t}\n}\n","<div class=\"ng-doc-playground-properties-wrapper\" [class.vertical]=\"observer | async\">\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\">\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=\"red\" (click)=\"resetForm.emit()\">Reset</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>\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[control]=\"getFormControl | ngDocBind: this | ngDocRun: 'properties': propertyControl.propertyName\"\n\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 | ngDocBind: this | ngDocRun: 'content': content.key\"\n\t\t\t>\n\t\t\t</ng-doc-playground-property>\n\t\t</ng-container>\n\t</div>\n</div>\n","import {NgFor, NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, OnInit} from '@angular/core';\nimport {FormBuilder, FormGroup} from '@angular/forms';\nimport {NgDocRootPage} from '@ng-doc/app/classes/root-page';\nimport {extractValue} from '@ng-doc/core/helpers/extract-value';\nimport {objectKeys} from '@ng-doc/core/helpers/object-keys';\nimport {NgDocPlaygroundConfig, NgDocPlaygroundProperties} from '@ng-doc/core/interfaces';\nimport {NgDocExtractedValue} from '@ng-doc/core/types';\nimport {NgDocAsArrayPipe} from '@ng-doc/ui-kit';\n\nimport {NgDocPlaygroundDemoComponent} from './playground-demo/playground-demo.component';\nimport {NgDocPlaygroundForm} from './playground-form';\nimport {NgDocPlaygroundPropertiesComponent} from './playground-properties/playground-properties.component';\n\n@Component({\n\tselector: 'ng-doc-playground',\n\ttemplateUrl: './playground.component.html',\n\tstyleUrls: ['./playground.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [NgIf, NgDocPlaygroundPropertiesComponent, NgFor, NgDocPlaygroundDemoComponent, NgDocAsArrayPipe],\n})\nexport class NgDocPlaygroundComponent<T extends NgDocPlaygroundProperties = NgDocPlaygroundProperties>\n\timplements OnInit\n{\n\tid: string = '';\n\tpipeName: string = '';\n\tselectors: string[] = [];\n\tproperties?: T;\n\tformGroup!: FormGroup<NgDocPlaygroundForm>;\n\trecreateDemo: boolean = false;\n\n\tconstructor(private readonly rootPage: NgDocRootPage, private readonly formBuilder: FormBuilder) {}\n\n\tngOnInit(): void {\n\t\tconst propertiesForm: FormGroup = this.formBuilder.group(this.getPropertiesFormValues());\n\t\tconst contentForm: FormGroup = this.formBuilder.group(this.getContentFormValues());\n\n\t\tthis.formGroup = this.formBuilder.group({\n\t\t\tproperties: propertiesForm,\n\t\t\tcontent: contentForm,\n\t\t});\n\t}\n\n\tget configuration(): NgDocPlaygroundConfig | undefined {\n\t\treturn this.rootPage.page?.playgrounds?.[this.id];\n\t}\n\n\tprivate getPropertiesFormValues<K extends keyof T>(): Record<K, NgDocExtractedValue> {\n\t\treturn objectKeys(this.properties ?? {}).reduce((controls: Record<K, NgDocExtractedValue>, key: K) => {\n\t\t\tif (this.properties) {\n\t\t\t\tcontrols[key] = extractValue(this.properties[key]?.default ?? 'undefined');\n\t\t\t}\n\n\t\t\treturn controls;\n\t\t}, {} as Record<K, NgDocExtractedValue>);\n\t}\n\n\tprivate getContentFormValues(): Record<string, boolean> {\n\t\treturn objectKeys(this.configuration?.content ?? {}).reduce((controls: Record<string, boolean>, key: string) => {\n\t\t\tif (this.configuration?.content) {\n\t\t\t\tcontrols[key] = false;\n\t\t\t}\n\n\t\t\treturn controls;\n\t\t}, {} as Record<keyof T, boolean>);\n\t\treturn {};\n\t}\n\n\tresetForm(): void {\n\t\tthis.formGroup?.reset({\n\t\t\tproperties: this.getPropertiesFormValues(),\n\t\t\tcontent: this.getContentFormValues(),\n\t\t});\n\t}\n}\n","<ng-container *ngIf=\"configuration\">\n\t<ng-doc-playground-properties\n\t\t[form]=\"formGroup\"\n\t\t[properties]=\"properties\"\n\t\t[dynamicContent]=\"configuration.content\"\n\t\t[(recreateDemo)]=\"recreateDemo\"\n\t\t(resetForm)=\"resetForm()\"\n\t>\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>\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>\n\t\t</ng-doc-playground-demo>\n\t</ng-doc-playground-properties>\n</ng-container>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["objectKeys","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-doc-app-components-playground.mjs","sources":["../../../../libs/app/components/playground/base-playground.ts","../../../../libs/app/components/playground/playground-demo/playground-demo.component.ts","../../../../libs/app/components/playground/playground-demo/playground-demo.component.html","../../../../libs/app/components/playground/playground-property/playground-property.component.ts","../../../../libs/app/components/playground/playground-property/playground-property.component.html","../../../../libs/app/components/playground/playground-properties/playground-properties.component.ts","../../../../libs/app/components/playground/playground-properties/playground-properties.component.html","../../../../libs/app/components/playground/playground.component.ts","../../../../libs/app/components/playground/playground.component.html","../../../../libs/app/components/playground/ng-doc-app-components-playground.ts"],"sourcesContent":["import {Directive, Input, Type, ViewContainerRef} from '@angular/core';\nimport {NgDocPlaygroundConfig} from '@ng-doc/core/interfaces';\n\n/**\n * Base class for playgrounds components.\n */\n@Directive()\nexport abstract class NgDocBasePlayground implements Pick<NgDocPlaygroundConfig, 'data'> {\n\tstatic readonly selector: string = 'unknown';\n\tabstract readonly playground?: Type<unknown>;\n\tabstract readonly viewContainerRef?: ViewContainerRef;\n\n\t@Input()\n\tproperties: Record<string, any> = {};\n\n\t@Input()\n\tdata: Record<string, any> = {};\n\n\t@Input()\n\tcontent: any = {};\n}\n","import {AsyncPipe} from '@angular/common';\nimport {\n\tChangeDetectionStrategy,\n\tComponent,\n\tComponentRef,\n\tInjectionToken,\n\tInjector,\n\tInput,\n\tOnChanges,\n\tOnDestroy,\n\tSimpleChanges,\n\tType,\n\tViewChild,\n\tViewContainerRef,\n} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport {NgDocDemoDisplayerComponent} from '@ng-doc/app/components/demo-displayer';\nimport {getPlaygroundDemoToken} from '@ng-doc/app/helpers';\nimport {NgDocFormPartialValue} from '@ng-doc/app/types';\nimport {\n\tbuildPlaygroundDemoPipeTemplate,\n\tbuildPlaygroundDemoTemplate,\n} from '@ng-doc/core/helpers/build-playground-demo-template';\nimport {formatHtml} from '@ng-doc/core/helpers/format-html';\nimport {objectKeys} from '@ng-doc/core/helpers/object-keys';\nimport {NgDocPlaygroundConfig, NgDocPlaygroundProperties, NgDocPlaygroundProperty} from '@ng-doc/core/interfaces';\nimport {NgDocExtractedValue} from '@ng-doc/core/types';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {Observable, of, Subject} from 'rxjs';\nimport {startWith, takeUntil} from 'rxjs/operators';\n\nimport {NgDocBasePlayground} from '../base-playground';\nimport {NgDocPlaygroundForm} from '../playground-form';\n\n@Component({\n\tselector: 'ng-doc-playground-demo',\n\ttemplateUrl: './playground-demo.component.html',\n\tstyleUrls: ['./playground-demo.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [NgDocDemoDisplayerComponent, AsyncPipe],\n})\n@UntilDestroy()\nexport class NgDocPlaygroundDemoComponent<T extends NgDocPlaygroundProperties = NgDocPlaygroundProperties>\n\timplements OnChanges, OnDestroy\n{\n\t@Input()\n\tid: string = '';\n\n\t@Input()\n\tpipeName: string = '';\n\n\t@Input()\n\tselector: string = '';\n\n\t@Input()\n\tconfiguration?: NgDocPlaygroundConfig;\n\n\t@Input()\n\tproperties?: T;\n\n\t@Input()\n\trecreateDemo: boolean = false;\n\n\t@Input()\n\tform!: FormGroup<NgDocPlaygroundForm>;\n\n\t@ViewChild('demoOutlet', {static: true, read: ViewContainerRef})\n\tdemoOutlet?: ViewContainerRef;\n\n\tplaygroundDemo?: typeof NgDocBasePlayground;\n\n\tcode: Observable<string> = of('');\n\n\tprivate demoRef?: ComponentRef<NgDocBasePlayground>;\n\tprivate readonly unsubscribe$: Subject<void> = new Subject<void>();\n\n\tconstructor(private readonly injector: Injector) {}\n\n\tngOnChanges({form, id}: SimpleChanges): void {\n\t\tif (form && id) {\n\t\t\tthis.unsubscribe$.next();\n\n\t\t\tconst demoInjector: InjectionToken<Array<typeof NgDocBasePlayground>> | undefined = getPlaygroundDemoToken(\n\t\t\t\tthis.id,\n\t\t\t);\n\n\t\t\tif (demoInjector) {\n\t\t\t\tconst demos: Array<typeof NgDocBasePlayground> = this.injector.get(demoInjector, []);\n\t\t\t\tthis.playgroundDemo = demos.find(\n\t\t\t\t\t(demo: typeof NgDocBasePlayground) => demo.selector === this.selector || demo.selector === this.pipeName,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthis.updateDemo();\n\n\t\t\tthis.form?.valueChanges\n\t\t\t\t.pipe(takeUntil(this.unsubscribe$), untilDestroyed(this), startWith(this.form?.value))\n\t\t\t\t.subscribe((data: NgDocFormPartialValue<typeof this.form>) => this.updateDemo(data));\n\t\t}\n\t}\n\n\tprivate updateDemo(data?: NgDocFormPartialValue<typeof this.form>): void {\n\t\tif (this.recreateDemo || !this.demoRef) {\n\t\t\tthis.renderDemo();\n\t\t}\n\n\t\tif (data) {\n\t\t\tthis.demoRef?.setInput('properties', data.properties ?? {});\n\t\t\tthis.demoRef?.setInput('content', data.content ?? {});\n\t\t}\n\n\t\tthis.updateCodeView();\n\t}\n\n\tprivate renderDemo(): void {\n\t\tif (this.playgroundDemo) {\n\t\t\tthis.demoRef?.destroy();\n\n\t\t\tif (this.playgroundDemo) {\n\t\t\t\tthis.demoRef = this.demoOutlet?.createComponent(this.playgroundDemo as unknown as Type<NgDocBasePlayground>);\n\t\t\t}\n\n\t\t\tthis.demoRef?.changeDetectorRef.detectChanges();\n\t\t}\n\t}\n\n\tprivate updateCodeView(): void {\n\t\tconst template: string = this.pipeName\n\t\t\t? buildPlaygroundDemoPipeTemplate(\n\t\t\t\t\tthis.configuration?.template ?? '',\n\t\t\t\t\tthis.pipeName,\n\t\t\t\t\tthis.getActiveContent(),\n\t\t\t\t\tthis.getActiveInputs(),\n\t\t\t )\n\t\t\t: buildPlaygroundDemoTemplate(\n\t\t\t\t\tthis.configuration?.template ?? '',\n\t\t\t\t\tthis.selector,\n\t\t\t\t\tthis.getActiveContent(),\n\t\t\t\t\tthis.getActiveInputs(),\n\t\t\t );\n\n\t\tthis.code = formatHtml(template);\n\t}\n\n\tprivate getActiveContent(): Record<string, string> {\n\t\tconst formData: Record<string, boolean> = (this.form?.controls.content.value as Record<string, boolean>) ?? {};\n\n\t\treturn objectKeys(formData).reduce((result: Record<string, string>, key: string) => {\n\t\t\tresult[key] = formData[key] ? this.configuration?.content?.[key].template ?? '' : '';\n\n\t\t\treturn result;\n\t\t}, {});\n\t}\n\n\tprivate getActiveInputs(): Record<string, string> {\n\t\tconst formData: Record<string, NgDocExtractedValue> =\n\t\t\t(this.form?.controls.properties.value as Record<string, NgDocExtractedValue>) ?? {};\n\n\t\treturn objectKeys(formData).reduce((result: Record<string, string>, key: string) => {\n\t\t\tconst property: NgDocPlaygroundProperty | undefined = this.properties?.[key];\n\n\t\t\tif (property) {\n\t\t\t\tconst value: NgDocExtractedValue = formData[key];\n\t\t\t\tconst isString: boolean = typeof value === 'string';\n\t\t\t\tconst inputValue: string = isString ? `'${value}'` : `${JSON.stringify(value)}`;\n\n\t\t\t\tif ((property.default ?? '') !== inputValue) {\n\t\t\t\t\tresult[property.inputName] = inputValue;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}, {});\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.unsubscribe$.next();\n\t\tthis.unsubscribe$.complete();\n\t}\n}\n","<ng-doc-demo-displayer [code]=\"(code | async) ?? ''\" [border]=\"false\" language=\"html\">\n\t<ng-container #demoOutlet></ng-container>\n</ng-doc-demo-displayer>\n","import {\n\tChangeDetectionStrategy,\n\tComponent,\n\tComponentRef,\n\tHostBinding,\n\tInput,\n\tOnChanges,\n\tSimpleChanges,\n\tViewChild,\n\tViewContainerRef,\n} from '@angular/core';\nimport {FormControl} from '@angular/forms';\nimport {isPlaygroundProperty} from '@ng-doc/app/helpers';\nimport {NgDocProvidedTypeControl, NgDocTypeControl, NgDocTypeControlProviderOptions} from '@ng-doc/app/interfaces';\nimport {NgDocSanitizeHtmlPipe} from '@ng-doc/app/pipes';\nimport {NgDocPlaygroundContent, NgDocPlaygroundProperty} from '@ng-doc/core/interfaces';\nimport {NgDocLabelComponent, NgDocTooltipDirective} from '@ng-doc/ui-kit';\n\n@Component({\n\tselector: 'ng-doc-playground-property',\n\ttemplateUrl: './playground-property.component.html',\n\tstyleUrls: ['./playground-property.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [NgDocLabelComponent, NgDocTooltipDirective, NgDocSanitizeHtmlPipe],\n})\nexport class NgDocPlaygroundPropertyComponent implements OnChanges {\n\t@Input()\n\tname: string = '';\n\n\t@Input()\n\tproperty?: NgDocPlaygroundProperty | NgDocPlaygroundContent;\n\n\t@Input()\n\ttypeControl?: NgDocProvidedTypeControl;\n\n\t@Input()\n\tcontrol?: FormControl;\n\n\t@ViewChild('propertyOutlet', {read: ViewContainerRef, static: true})\n\tpropertyOutlet?: ViewContainerRef;\n\n\tprotected option?: NgDocTypeControlProviderOptions;\n\tprivate propertyTypeControl?: ComponentRef<NgDocTypeControl>;\n\n\tngOnChanges({property, control, typeControl}: SimpleChanges): void {\n\t\tif ((property || control || typeControl) && this.property && this.typeControl) {\n\t\t\tthis.propertyTypeControl?.destroy();\n\t\t\tthis.propertyTypeControl = undefined;\n\n\t\t\tif (this.typeControl && this.propertyOutlet) {\n\t\t\t\tthis.propertyTypeControl = this.propertyOutlet.createComponent(this.typeControl.control);\n\t\t\t\tthis.propertyTypeControl.instance.name = this.name;\n\t\t\t\tthis.propertyTypeControl.instance.description = this.tooltipContent;\n\t\t\t\tthis.propertyTypeControl.instance.options = isPlaygroundProperty(this.property)\n\t\t\t\t\t? this.property.options\n\t\t\t\t\t: undefined;\n\t\t\t\tthis.propertyTypeControl.instance.default = isPlaygroundProperty(this.property)\n\t\t\t\t\t? this.property.default\n\t\t\t\t\t: undefined;\n\t\t\t\tthis.propertyTypeControl.instance.writeValue(this.control?.value);\n\n\t\t\t\tthis.option = this.typeControl.options;\n\t\t\t}\n\t\t}\n\n\t\tif (control) {\n\t\t\tthis.control?.registerOnChange((value: string) => this.propertyTypeControl?.instance?.writeValue(value));\n\t\t\tthis.propertyTypeControl?.instance.registerOnChange((value: unknown) => this.control?.setValue(value));\n\t\t\tthis.propertyTypeControl?.instance.registerOnTouched(() => this.control?.markAsTouched());\n\t\t}\n\t}\n\n\t@HostBinding('attr.data-has-property-control')\n\tget hasPropertyControl(): boolean {\n\t\treturn !!this.propertyTypeControl;\n\t}\n\n\tget tooltipContent(): string {\n\t\treturn this.property && isPlaygroundProperty(this.property) ? this.property.description ?? '' : '';\n\t}\n}\n","<label [ng-doc-label]=\"option?.hideLabel ? '' : labelContent\">\n\t<ng-template #labelContent>\n\t\t<span [ngDocTooltip]=\"tooltipTemplate\" [canOpen]=\"!!tooltipContent\"\n\t\t\t [positions]=\"['left-center', 'top-right', 'bottom-right']\">{{name}}</span>\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","import {BreakpointObserver, Breakpoints} from '@angular/cdk/layout';\nimport {AsyncPipe, KeyValuePipe, NgFor, NgIf} from '@angular/common';\nimport {\n\tChangeDetectionStrategy,\n\tComponent,\n\tEventEmitter,\n\tInjectionToken,\n\tInjector,\n\tInput,\n\tisDevMode,\n\tOnChanges,\n\tOutput,\n\tSimpleChanges,\n} from '@angular/core';\nimport {FormControl, FormGroup, FormsModule} from '@angular/forms';\nimport {getTokenForType, isPlaygroundProperty} from '@ng-doc/app/helpers';\nimport {NgDocProvidedTypeControl} from '@ng-doc/app/interfaces';\nimport {extractValueOrThrow, isPresent, objectKeys} from '@ng-doc/core';\nimport {NgDocPlaygroundContent, NgDocPlaygroundProperties, NgDocPlaygroundProperty} from '@ng-doc/core/interfaces';\nimport {\n\tNgDocBindPipe,\n\tNgDocButtonComponent,\n\tNgDocCheckboxComponent,\n\tNgDocIconComponent,\n\tNgDocRunPipe,\n\tNgDocTextComponent,\n\tNgDocTextRightDirective,\n\tNgDocTooltipDirective,\n} from '@ng-doc/ui-kit';\nimport {Observable} from 'rxjs';\nimport {pluck} from 'rxjs/operators';\n\nimport {NgDocPlaygroundForm} from '../playground-form';\nimport {NgDocPlaygroundPropertyComponent} from '../playground-property/playground-property.component';\nimport {NgDocPlaygroundPropertyControl} from '../playground-property-control';\n\n@Component({\n\tselector: 'ng-doc-playground-properties',\n\ttemplateUrl: './playground-properties.component.html',\n\tstyleUrls: ['./playground-properties.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tNgDocTextComponent,\n\t\tNgDocButtonComponent,\n\t\tNgDocCheckboxComponent,\n\t\tFormsModule,\n\t\tNgDocTooltipDirective,\n\t\tNgDocIconComponent,\n\t\tNgDocTextRightDirective,\n\t\tNgIf,\n\t\tNgFor,\n\t\tNgDocPlaygroundPropertyComponent,\n\t\tAsyncPipe,\n\t\tKeyValuePipe,\n\t\tNgDocBindPipe,\n\t\tNgDocRunPipe,\n\t],\n})\nexport class NgDocPlaygroundPropertiesComponent<\n\tP extends NgDocPlaygroundProperties,\n\tC extends Record<string, NgDocPlaygroundContent>,\n> implements OnChanges\n{\n\t@Input()\n\tform!: FormGroup<NgDocPlaygroundForm>;\n\n\t@Input()\n\tproperties?: P;\n\n\t@Input()\n\tdynamicContent?: C;\n\n\t@Input()\n\trecreateDemo: boolean = false;\n\n\t@Output()\n\trecreateDemoChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n\t@Output()\n\tresetForm: EventEmitter<void> = new EventEmitter<void>();\n\n\treadonly breakpoints: string[] = [Breakpoints.XSmall];\n\treadonly observer: Observable<boolean>;\n\n\tprotected propertyControls: NgDocPlaygroundPropertyControl[] = [];\n\tprotected contentTypeControl?: NgDocProvidedTypeControl = this.getControlForType('boolean');\n\n\tconstructor(protected readonly breakpointObserver: BreakpointObserver, private injector: Injector) {\n\t\tthis.observer = this.breakpointObserver.observe(this.breakpoints).pipe(pluck('matches'));\n\t}\n\n\tngOnChanges({properties}: SimpleChanges): void {\n\t\tif (properties && this.properties) {\n\t\t\tthis.propertyControls = objectKeys(this.properties)\n\t\t\t\t.map((key: keyof P) => {\n\t\t\t\t\tif (this.properties) {\n\t\t\t\t\t\tconst property: NgDocPlaygroundProperty = this.properties[key];\n\t\t\t\t\t\tconst typeControl: NgDocProvidedTypeControl | undefined = this.getTypeControl(property);\n\n\t\t\t\t\t\tif (typeControl) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tpropertyName: String(key),\n\t\t\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\t\ttypeControl,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn null;\n\t\t\t\t})\n\t\t\t\t.filter(isPresent)\n\t\t\t\t.sort((a: NgDocPlaygroundPropertyControl, b: NgDocPlaygroundPropertyControl) => {\n\t\t\t\t\tconst aOrder: number | undefined = a.typeControl.options?.order;\n\t\t\t\t\tconst bOrder: number | undefined = b.typeControl.options?.order;\n\n\t\t\t\t\tif (isPresent(aOrder) && isPresent(bOrder)) {\n\t\t\t\t\t\treturn aOrder - bOrder;\n\t\t\t\t\t}\n\t\t\t\t\tif (isPresent(aOrder)) {\n\t\t\t\t\t\treturn -1;\n\t\t\t\t\t}\n\t\t\t\t\tif (isPresent(bOrder)) {\n\t\t\t\t\t\treturn 1;\n\t\t\t\t\t}\n\t\t\t\t\treturn a.property.inputName.localeCompare(b.property.inputName);\n\t\t\t\t});\n\t\t}\n\t}\n\n\tgetFormControl(controlType: keyof typeof this.form.controls, key: string): FormControl {\n\t\treturn this.form.get(controlType)?.get(key) as FormControl;\n\t}\n\n\tprivate getTypeControl(property: NgDocPlaygroundProperty): NgDocProvidedTypeControl | undefined {\n\t\tconst type: string = property.type;\n\t\tconst typeControl: NgDocProvidedTypeControl | undefined =\n\t\t\tthis.getControlForType(type) ??\n\t\t\tthis.getControlForTypeAlias(isPlaygroundProperty(property) ? property.options : undefined);\n\n\t\tif (!typeControl && isDevMode()) {\n\t\t\tconsole.warn(\n\t\t\t\t`NgDocPlayground didn't find the control for the @Input \"${property.inputName}\", the type \"${type}\" was not recognized'`,\n\t\t\t);\n\t\t}\n\n\t\treturn typeControl;\n\t}\n\n\tprivate getControlForType(type: string): NgDocProvidedTypeControl | undefined {\n\t\tconst token: InjectionToken<NgDocProvidedTypeControl> | undefined = getTokenForType(type);\n\n\t\treturn token ? this.injector.get(token) : undefined;\n\t}\n\n\tprivate getControlForTypeAlias(options?: string[]): NgDocProvidedTypeControl | undefined {\n\t\tif (options && options.length) {\n\t\t\tlet optionsIsValid: boolean = true;\n\n\t\t\ttry {\n\t\t\t\t// checking that all values are extractable\n\t\t\t\toptions.forEach((item: string) => extractValueOrThrow(item));\n\t\t\t} catch {\n\t\t\t\toptionsIsValid = false;\n\t\t\t}\n\n\t\t\tif (optionsIsValid) {\n\t\t\t\tconst token: InjectionToken<NgDocProvidedTypeControl> | undefined = getTokenForType('NgDocTypeAlias');\n\n\t\t\t\treturn token ? this.injector.get(token) : undefined;\n\t\t\t}\n\t\t}\n\n\t\treturn undefined;\n\t}\n}\n","<div class=\"ng-doc-playground-properties-wrapper\" [class.vertical]=\"observer | async\">\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\">\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=\"red\" (click)=\"resetForm.emit()\">Reset</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>\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[control]=\"getFormControl | ngDocBind: this | ngDocRun: 'properties': propertyControl.propertyName\"\n\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 | ngDocBind: this | ngDocRun: 'content': content.key\"\n\t\t\t>\n\t\t\t</ng-doc-playground-property>\n\t\t</ng-container>\n\t</div>\n</div>\n","import {NgFor, NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, OnInit} from '@angular/core';\nimport {FormBuilder, FormGroup} from '@angular/forms';\nimport {NgDocRootPage} from '@ng-doc/app/classes/root-page';\nimport {extractValue} from '@ng-doc/core/helpers/extract-value';\nimport {objectKeys} from '@ng-doc/core/helpers/object-keys';\nimport {NgDocPlaygroundConfig, NgDocPlaygroundProperties} from '@ng-doc/core/interfaces';\nimport {NgDocExtractedValue} from '@ng-doc/core/types';\nimport {NgDocAsArrayPipe} from '@ng-doc/ui-kit';\n\nimport {NgDocPlaygroundDemoComponent} from './playground-demo/playground-demo.component';\nimport {NgDocPlaygroundForm} from './playground-form';\nimport {NgDocPlaygroundPropertiesComponent} from './playground-properties/playground-properties.component';\n\n@Component({\n\tselector: 'ng-doc-playground',\n\ttemplateUrl: './playground.component.html',\n\tstyleUrls: ['./playground.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [NgIf, NgDocPlaygroundPropertiesComponent, NgFor, NgDocPlaygroundDemoComponent, NgDocAsArrayPipe],\n})\nexport class NgDocPlaygroundComponent<T extends NgDocPlaygroundProperties = NgDocPlaygroundProperties>\n\timplements OnInit\n{\n\tid: string = '';\n\tpipeName: string = '';\n\tselectors: string[] = [];\n\tproperties?: T;\n\tformGroup!: FormGroup<NgDocPlaygroundForm>;\n\trecreateDemo: boolean = false;\n\n\tconstructor(private readonly rootPage: NgDocRootPage, private readonly formBuilder: FormBuilder) {}\n\n\tngOnInit(): void {\n\t\tconst propertiesForm: FormGroup = this.formBuilder.group(this.getPropertiesFormValues());\n\t\tconst contentForm: FormGroup = this.formBuilder.group(this.getContentFormValues());\n\n\t\tthis.formGroup = this.formBuilder.group({\n\t\t\tproperties: propertiesForm,\n\t\t\tcontent: contentForm,\n\t\t});\n\t}\n\n\tget configuration(): NgDocPlaygroundConfig | undefined {\n\t\treturn this.rootPage.page?.playgrounds?.[this.id];\n\t}\n\n\tprivate getPropertiesFormValues<K extends keyof T>(): Record<K, NgDocExtractedValue> {\n\t\treturn objectKeys(this.properties ?? {}).reduce((controls: Record<K, NgDocExtractedValue>, key: K) => {\n\t\t\tif (this.properties) {\n\t\t\t\tcontrols[key] = extractValue(this.properties[key]?.default ?? 'undefined');\n\t\t\t}\n\n\t\t\treturn controls;\n\t\t}, {} as Record<K, NgDocExtractedValue>);\n\t}\n\n\tprivate getContentFormValues(): Record<string, boolean> {\n\t\treturn objectKeys(this.configuration?.content ?? {}).reduce((controls: Record<string, boolean>, key: string) => {\n\t\t\tif (this.configuration?.content) {\n\t\t\t\tcontrols[key] = false;\n\t\t\t}\n\n\t\t\treturn controls;\n\t\t}, {} as Record<keyof T, boolean>);\n\t\treturn {};\n\t}\n\n\tresetForm(): void {\n\t\tthis.formGroup?.reset({\n\t\t\tproperties: this.getPropertiesFormValues(),\n\t\t\tcontent: this.getContentFormValues(),\n\t\t});\n\t}\n}\n","<ng-container *ngIf=\"configuration\">\n\t<ng-doc-playground-properties\n\t\t[form]=\"formGroup\"\n\t\t[properties]=\"properties\"\n\t\t[dynamicContent]=\"configuration.content\"\n\t\t[(recreateDemo)]=\"recreateDemo\"\n\t\t(resetForm)=\"resetForm()\"\n\t>\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>\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>\n\t\t</ng-doc-playground-demo>\n\t</ng-doc-playground-properties>\n</ng-container>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["objectKeys","i1"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAGA;;AAEG;AACH,MACsB,mBAAmB,CAAA;AADzC,IAAA,WAAA,GAAA;QAOC,IAAU,CAAA,UAAA,GAAwB,EAAE,CAAC;QAGrC,IAAI,CAAA,IAAA,GAAwB,EAAE,CAAC;QAG/B,IAAO,CAAA,OAAA,GAAQ,EAAE,CAAC;AAClB,KAAA;aAZgB,IAAQ,CAAA,QAAA,GAAW,SAAX,CAAqB,EAAA;8GADxB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAnB,mBAAmB,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBADxC,SAAS;8BAOT,UAAU,EAAA,CAAA;sBADT,KAAK;gBAIN,IAAI,EAAA,CAAA;sBADH,KAAK;gBAIN,OAAO,EAAA,CAAA;sBADN,KAAK;;;ACyBM,IAAA,4BAA4B,GATzC,MASa,4BAA4B,CAAA;AAkCxC,IAAA,WAAA,CAA6B,QAAkB,EAAA;QAAlB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAU;QA9B/C,IAAE,CAAA,EAAA,GAAW,EAAE,CAAC;QAGhB,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;QAGtB,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;QAStB,IAAY,CAAA,YAAA,GAAY,KAAK,CAAC;AAU9B,QAAA,IAAA,CAAA,IAAI,GAAuB,EAAE,CAAC,EAAE,CAAC,CAAC;AAGjB,QAAA,IAAA,CAAA,YAAY,GAAkB,IAAI,OAAO,EAAQ,CAAC;KAEhB;AAEnD,IAAA,WAAW,CAAC,EAAC,IAAI,EAAE,EAAE,EAAgB,EAAA;QACpC,IAAI,IAAI,IAAI,EAAE,EAAE;AACf,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YAEzB,MAAM,YAAY,GAAkE,sBAAsB,CACzG,IAAI,CAAC,EAAE,CACP,CAAC;AAEF,YAAA,IAAI,YAAY,EAAE;AACjB,gBAAA,MAAM,KAAK,GAAsC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACrF,gBAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAC/B,CAAC,IAAgC,KAAK,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,CACxG,CAAC;AACF,aAAA;YAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAElB,IAAI,CAAC,IAAI,EAAE,YAAY;iBACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACrF,iBAAA,SAAS,CAAC,CAAC,IAA6C,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACtF,SAAA;KACD;AAEO,IAAA,UAAU,CAAC,IAA8C,EAAA;QAChE,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACvC,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,SAAA;AAED,QAAA,IAAI,IAAI,EAAE;AACT,YAAA,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;AACtD,SAAA;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;KACtB;IAEO,UAAU,GAAA;QACjB,IAAI,IAAI,CAAC,cAAc,EAAE;AACxB,YAAA,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;YAExB,IAAI,IAAI,CAAC,cAAc,EAAE;AACxB,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,IAAI,CAAC,cAAsD,CAAC,CAAC;AAC7G,aAAA;AAED,YAAA,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,aAAa,EAAE,CAAC;AAChD,SAAA;KACD;IAEO,cAAc,GAAA;AACrB,QAAA,MAAM,QAAQ,GAAW,IAAI,CAAC,QAAQ;cACnC,+BAA+B,CAC/B,IAAI,CAAC,aAAa,EAAE,QAAQ,IAAI,EAAE,EAClC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,gBAAgB,EAAE,EACvB,IAAI,CAAC,eAAe,EAAE,CACrB;cACD,2BAA2B,CAC3B,IAAI,CAAC,aAAa,EAAE,QAAQ,IAAI,EAAE,EAClC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,gBAAgB,EAAE,EACvB,IAAI,CAAC,eAAe,EAAE,CACrB,CAAC;AAEL,QAAA,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;KACjC;IAEO,gBAAgB,GAAA;AACvB,QAAA,MAAM,QAAQ,GAA6B,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAiC,IAAI,EAAE,CAAC;AAE/G,QAAA,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,MAA8B,EAAE,GAAW,KAAI;AAClF,YAAA,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,GAAG,CAAC,CAAC,QAAQ,IAAI,EAAE,GAAG,EAAE,CAAC;AAErF,YAAA,OAAO,MAAM,CAAC;SACd,EAAE,EAAE,CAAC,CAAC;KACP;IAEO,eAAe,GAAA;AACtB,QAAA,MAAM,QAAQ,GACZ,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,KAA6C,IAAI,EAAE,CAAC;AAErF,QAAA,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,MAA8B,EAAE,GAAW,KAAI;YAClF,MAAM,QAAQ,GAAwC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;AAE7E,YAAA,IAAI,QAAQ,EAAE;AACb,gBAAA,MAAM,KAAK,GAAwB,QAAQ,CAAC,GAAG,CAAC,CAAC;AACjD,gBAAA,MAAM,QAAQ,GAAY,OAAO,KAAK,KAAK,QAAQ,CAAC;gBACpD,MAAM,UAAU,GAAW,QAAQ,GAAG,CAAA,CAAA,EAAI,KAAK,CAAG,CAAA,CAAA,GAAG,CAAA,EAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBAEhF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,MAAM,UAAU,EAAE;AAC5C,oBAAA,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC;AACxC,iBAAA;AACD,aAAA;AAED,YAAA,OAAO,MAAM,CAAC;SACd,EAAE,EAAE,CAAC,CAAC;KACP;IAED,WAAW,GAAA;AACV,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;AACzB,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;KAC7B;8GAxIW,4BAA4B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,+UAwBM,gBAAgB,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECnE/D,uKAGA,EDqCW,MAAA,EAAA,CAAA,uTAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,2BAA2B,6IAAE,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;AAGpC,4BAA4B,GAAA,UAAA,CAAA;AADxC,IAAA,YAAY,EAAE;qCAmCyB,QAAQ,CAAA,CAAA;AAlCnC,CAAA,EAAA,4BAA4B,CAyIxC,CAAA;2FAzIY,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBATxC,SAAS;+BACC,wBAAwB,EAAA,eAAA,EAGjB,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EAAA,OAAA,EACP,CAAC,2BAA2B,EAAE,SAAS,CAAC,EAAA,QAAA,EAAA,uKAAA,EAAA,MAAA,EAAA,CAAA,uTAAA,CAAA,EAAA,CAAA;+FAOjD,EAAE,EAAA,CAAA;sBADD,KAAK;gBAIN,QAAQ,EAAA,CAAA;sBADP,KAAK;gBAIN,QAAQ,EAAA,CAAA;sBADP,KAAK;gBAIN,aAAa,EAAA,CAAA;sBADZ,KAAK;gBAIN,UAAU,EAAA,CAAA;sBADT,KAAK;gBAIN,YAAY,EAAA,CAAA;sBADX,KAAK;gBAIN,IAAI,EAAA,CAAA;sBADH,KAAK;gBAIN,UAAU,EAAA,CAAA;sBADT,SAAS;uBAAC,YAAY,EAAE,EAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAC,CAAA;;;AEjDhE,MAQa,gCAAgC,CAAA;AAR7C,IAAA,WAAA,GAAA;QAUC,IAAI,CAAA,IAAA,GAAW,EAAE,CAAC;AAqDlB,KAAA;AApCA,IAAA,WAAW,CAAC,EAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAgB,EAAA;AAC1D,QAAA,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,WAAW,KAAK,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE;AAC9E,YAAA,IAAI,CAAC,mBAAmB,EAAE,OAAO,EAAE,CAAC;AACpC,YAAA,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;AAErC,YAAA,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,cAAc,EAAE;AAC5C,gBAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACzF,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACnD,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC;AACpE,gBAAA,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC9E,sBAAE,IAAI,CAAC,QAAQ,CAAC,OAAO;sBACrB,SAAS,CAAC;AACb,gBAAA,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC9E,sBAAE,IAAI,CAAC,QAAQ,CAAC,OAAO;sBACrB,SAAS,CAAC;AACb,gBAAA,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAElE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;AACvC,aAAA;AACD,SAAA;AAED,QAAA,IAAI,OAAO,EAAE;YACZ,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,KAAa,KAAK,IAAI,CAAC,mBAAmB,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YACzG,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC,KAAc,KAAK,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACvG,YAAA,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;AAC1F,SAAA;KACD;AAED,IAAA,IACI,kBAAkB,GAAA;AACrB,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;KAClC;AAED,IAAA,IAAI,cAAc,GAAA;QACjB,OAAO,IAAI,CAAC,QAAQ,IAAI,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,GAAG,EAAE,CAAC;KACnG;8GAtDW,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAhC,gCAAgC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gCAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAaR,gBAAgB,ECvCrD,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,idAUA,oIDcW,mBAAmB,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,qBAAqB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,OAAA,EAAA,eAAA,EAAA,eAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,WAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,qBAAqB,EAAA,IAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAE/D,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAR5C,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,4BAA4B,EAGrB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACnC,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,mBAAmB,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,EAAA,QAAA,EAAA,idAAA,EAAA,MAAA,EAAA,CAAA,4EAAA,CAAA,EAAA,CAAA;8BAI5E,IAAI,EAAA,CAAA;sBADH,KAAK;gBAIN,QAAQ,EAAA,CAAA;sBADP,KAAK;gBAIN,WAAW,EAAA,CAAA;sBADV,KAAK;gBAIN,OAAO,EAAA,CAAA;sBADN,KAAK;gBAIN,cAAc,EAAA,CAAA;sBADb,SAAS;uBAAC,gBAAgB,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAC,CAAA;gBAmC/D,kBAAkB,EAAA,CAAA;sBADrB,WAAW;uBAAC,gCAAgC,CAAA;;;AErC9C,MAuBa,kCAAkC,CAAA;IA6B9C,WAA+B,CAAA,kBAAsC,EAAU,QAAkB,EAAA;QAAlE,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;QAAU,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAU;QAdjG,IAAY,CAAA,YAAA,GAAY,KAAK,CAAC;AAG9B,QAAA,IAAA,CAAA,kBAAkB,GAA0B,IAAI,YAAY,EAAW,CAAC;AAGxE,QAAA,IAAA,CAAA,SAAS,GAAuB,IAAI,YAAY,EAAQ,CAAC;AAEhD,QAAA,IAAA,CAAA,WAAW,GAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAG5C,IAAgB,CAAA,gBAAA,GAAqC,EAAE,CAAC;AACxD,QAAA,IAAA,CAAA,kBAAkB,GAA8B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAG3F,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;KACzF;IAED,WAAW,CAAC,EAAC,UAAU,EAAgB,EAAA;AACtC,QAAA,IAAI,UAAU,IAAI,IAAI,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,gBAAgB,GAAGA,YAAU,CAAC,IAAI,CAAC,UAAU,CAAC;AACjD,iBAAA,GAAG,CAAC,CAAC,GAAY,KAAI;gBACrB,IAAI,IAAI,CAAC,UAAU,EAAE;oBACpB,MAAM,QAAQ,GAA4B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;oBAC/D,MAAM,WAAW,GAAyC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;AAExF,oBAAA,IAAI,WAAW,EAAE;wBAChB,OAAO;AACN,4BAAA,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC;4BACzB,QAAQ;4BACR,WAAW;yBACX,CAAC;AACF,qBAAA;AACD,iBAAA;AAED,gBAAA,OAAO,IAAI,CAAC;AACb,aAAC,CAAC;iBACD,MAAM,CAAC,SAAS,CAAC;AACjB,iBAAA,IAAI,CAAC,CAAC,CAAiC,EAAE,CAAiC,KAAI;gBAC9E,MAAM,MAAM,GAAuB,CAAC,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC;gBAChE,MAAM,MAAM,GAAuB,CAAC,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC;gBAEhE,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE;oBAC3C,OAAO,MAAM,GAAG,MAAM,CAAC;AACvB,iBAAA;AACD,gBAAA,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE;oBACtB,OAAO,CAAC,CAAC,CAAC;AACV,iBAAA;AACD,gBAAA,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE;AACtB,oBAAA,OAAO,CAAC,CAAC;AACT,iBAAA;AACD,gBAAA,OAAO,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACjE,aAAC,CAAC,CAAC;AACJ,SAAA;KACD;IAED,cAAc,CAAC,WAA4C,EAAE,GAAW,EAAA;AACvE,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,GAAG,CAAgB,CAAC;KAC3D;AAEO,IAAA,cAAc,CAAC,QAAiC,EAAA;AACvD,QAAA,MAAM,IAAI,GAAW,QAAQ,CAAC,IAAI,CAAC;AACnC,QAAA,MAAM,WAAW,GAChB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;AAC5B,YAAA,IAAI,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;AAE5F,QAAA,IAAI,CAAC,WAAW,IAAI,SAAS,EAAE,EAAE;YAChC,OAAO,CAAC,IAAI,CACX,CAA2D,wDAAA,EAAA,QAAQ,CAAC,SAAS,CAAgB,aAAA,EAAA,IAAI,CAAuB,qBAAA,CAAA,CACxH,CAAC;AACF,SAAA;AAED,QAAA,OAAO,WAAW,CAAC;KACnB;AAEO,IAAA,iBAAiB,CAAC,IAAY,EAAA;AACrC,QAAA,MAAM,KAAK,GAAyD,eAAe,CAAC,IAAI,CAAC,CAAC;AAE1F,QAAA,OAAO,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;KACpD;AAEO,IAAA,sBAAsB,CAAC,OAAkB,EAAA;AAChD,QAAA,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE;YAC9B,IAAI,cAAc,GAAY,IAAI,CAAC;YAEnC,IAAI;;AAEH,gBAAA,OAAO,CAAC,OAAO,CAAC,CAAC,IAAY,KAAK,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,aAAA;YAAC,MAAM;gBACP,cAAc,GAAG,KAAK,CAAC;AACvB,aAAA;AAED,YAAA,IAAI,cAAc,EAAE;AACnB,gBAAA,MAAM,KAAK,GAAyD,eAAe,CAAC,gBAAgB,CAAC,CAAC;AAEtG,gBAAA,OAAO,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;AACpD,aAAA;AACD,SAAA;AAED,QAAA,OAAO,SAAS,CAAC;KACjB;8GAnHW,kCAAkC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAlC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kCAAkC,EC3D/C,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,OAAA,EAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,w+DA+CA,EDJE,MAAA,EAAA,CAAA,61DAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,kBAAkB,EAClB,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,OAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,oBAAoB,EACpB,QAAA,EAAA,+IAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,sBAAsB,EACtB,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,qBAAqB,EACrB,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,OAAA,EAAA,eAAA,EAAA,eAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,WAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,kBAAkB,EAClB,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,uBAAuB,EACvB,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAI,EACJ,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,KAAK,EACL,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,gCAAgC,EAChC,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,aAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,SAAS,EACT,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,YAAY,EACZ,IAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,aAAa,6CACb,YAAY,EAAA,IAAA,EAAA,UAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAGD,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAvB9C,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,8BAA8B,mBAGvB,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EACP,OAAA,EAAA;wBACR,kBAAkB;wBAClB,oBAAoB;wBACpB,sBAAsB;wBACtB,WAAW;wBACX,qBAAqB;wBACrB,kBAAkB;wBAClB,uBAAuB;wBACvB,IAAI;wBACJ,KAAK;wBACL,gCAAgC;wBAChC,SAAS;wBACT,YAAY;wBACZ,aAAa;wBACb,YAAY;AACZ,qBAAA,EAAA,QAAA,EAAA,w+DAAA,EAAA,MAAA,EAAA,CAAA,61DAAA,CAAA,EAAA,CAAA;gIAQD,IAAI,EAAA,CAAA;sBADH,KAAK;gBAIN,UAAU,EAAA,CAAA;sBADT,KAAK;gBAIN,cAAc,EAAA,CAAA;sBADb,KAAK;gBAIN,YAAY,EAAA,CAAA;sBADX,KAAK;gBAIN,kBAAkB,EAAA,CAAA;sBADjB,MAAM;gBAIP,SAAS,EAAA,CAAA;sBADR,MAAM;;;AEjER,MAQa,wBAAwB,CAAA;IAUpC,WAA6B,CAAA,QAAuB,EAAmB,WAAwB,EAAA;QAAlE,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAe;QAAmB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAa;QAP/F,IAAE,CAAA,EAAA,GAAW,EAAE,CAAC;QAChB,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;QACtB,IAAS,CAAA,SAAA,GAAa,EAAE,CAAC;QAGzB,IAAY,CAAA,YAAA,GAAY,KAAK,CAAC;KAEqE;IAEnG,QAAQ,GAAA;AACP,QAAA,MAAM,cAAc,GAAc,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;AACzF,QAAA,MAAM,WAAW,GAAc,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAEnF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AACvC,YAAA,UAAU,EAAE,cAAc;AAC1B,YAAA,OAAO,EAAE,WAAW;AACpB,SAAA,CAAC,CAAC;KACH;AAED,IAAA,IAAI,aAAa,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;KAClD;IAEO,uBAAuB,GAAA;AAC9B,QAAA,OAAO,UAAU,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,QAAwC,EAAE,GAAM,KAAI;YACpG,IAAI,IAAI,CAAC,UAAU,EAAE;AACpB,gBAAA,QAAQ,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,CAAC,CAAC;AAC3E,aAAA;AAED,YAAA,OAAO,QAAQ,CAAC;SAChB,EAAE,EAAoC,CAAC,CAAC;KACzC;IAEO,oBAAoB,GAAA;AAC3B,QAAA,OAAO,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,QAAiC,EAAE,GAAW,KAAI;AAC9G,YAAA,IAAI,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE;AAChC,gBAAA,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AACtB,aAAA;AAED,YAAA,OAAO,QAAQ,CAAC;SAChB,EAAE,EAA8B,CAAC,CAAC;AACnC,QAAA,OAAO,EAAE,CAAC;KACV;IAED,SAAS,GAAA;AACR,QAAA,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;AACrB,YAAA,UAAU,EAAE,IAAI,CAAC,uBAAuB,EAAE;AAC1C,YAAA,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE;AACpC,SAAA,CAAC,CAAC;KACH;8GApDW,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,aAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECtBrC,46BA+BA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDXW,IAAI,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kCAAkC,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,oBAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,KAAK,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,4BAA4B,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,UAAA,EAAA,UAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,gBAAgB,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAE7F,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBARpC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,mBAGZ,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EACP,OAAA,EAAA,CAAC,IAAI,EAAE,kCAAkC,EAAE,KAAK,EAAE,4BAA4B,EAAE,gBAAgB,CAAC,EAAA,QAAA,EAAA,46BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;;;AEpB3G;;AAEG;;;;"}
|
|
@@ -123,14 +123,19 @@ const tokenStore = new Map();
|
|
|
123
123
|
* @param options
|
|
124
124
|
*/
|
|
125
125
|
function provideTypeControl(type, control, options) {
|
|
126
|
-
const token = new InjectionToken(`NG_DOC_TYPE_CONTROL_${type}
|
|
126
|
+
const token = new InjectionToken(`NG_DOC_TYPE_CONTROL_${type}`, {
|
|
127
|
+
providedIn: 'root',
|
|
128
|
+
factory: () => {
|
|
129
|
+
return {
|
|
130
|
+
control,
|
|
131
|
+
options,
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
});
|
|
127
135
|
tokenStore.set(type, token);
|
|
128
136
|
return {
|
|
129
|
-
provide:
|
|
130
|
-
useValue:
|
|
131
|
-
control,
|
|
132
|
-
options,
|
|
133
|
-
},
|
|
137
|
+
provide: 'nothing',
|
|
138
|
+
useValue: null,
|
|
134
139
|
};
|
|
135
140
|
}
|
|
136
141
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-doc-app-helpers.mjs","sources":["../../../../libs/app/helpers/as-boolean.ts","../../../../libs/app/helpers/generate-toc.ts","../../../../libs/app/helpers/is-dark-os-theme.ts","../../../../libs/app/helpers/is-external-link.ts","../../../../libs/app/helpers/is-playground-property.ts","../../../../libs/app/helpers/provide-playground-demo.ts","../../../../libs/app/helpers/provide-search-engine.ts","../../../../libs/app/helpers/provide-type-control.ts","../../../../libs/app/helpers/ng-doc-app-helpers.ts"],"sourcesContent":["/**\n *\n * @param value\n */\nexport function asBoolean(value: unknown): boolean {\n\tif (typeof value === 'string') {\n\t\treturn value.toLowerCase() === 'true' ? true : value.toLowerCase() === 'false' ? false : !!value;\n\t}\n\treturn !!value;\n}\n","import {NgDocTocItem} from '@ng-doc/app/interfaces';\nimport {asArray} from '@ng-doc/core/helpers/as-array';\nimport {NgDocHeading} from '@ng-doc/core/types';\n\n/**\n * Generate table of contents, only for headings with id\n *\n * @param container\n * @param headings\n */\nexport function generateToc(container: HTMLElement): NgDocTocItem[] {\n\tconst headings: NgDocHeading[] = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];\n\n\tconst headingElements: HTMLHeadingElement[] = Array.from(\n\t\tcontainer.querySelectorAll<HTMLHeadingElement>(headings.join(', ')),\n\t).filter((heading: HTMLHeadingElement) => heading.id);\n\n\tconst levels: number[] = asArray(new Set(headingElements.map(levelFromTagName).sort()));\n\n\treturn headingElements.reduce((map: NgDocTocItem[], heading: HTMLHeadingElement) => {\n\t\tconst headingLevel: number = levelFromTagName(heading);\n\t\tconst anchor: HTMLAnchorElement | null = heading.querySelector<HTMLAnchorElement>('a.ng-doc-header-link');\n\n\t\tif (anchor) {\n\t\t\tmap.push({\n\t\t\t\ttitle: heading.textContent?.trim() ?? '',\n\t\t\t\telement: heading,\n\t\t\t\tpath: anchor.pathname + anchor.hash,\n\t\t\t\tlevel: levels.indexOf(headingLevel) + 1,\n\t\t\t});\n\t\t}\n\n\t\treturn map;\n\t}, []);\n}\n\n/**\n *\n * @param heading\n */\nfunction levelFromTagName(heading: HTMLHeadingElement): number {\n\treturn Number(heading.tagName.toLowerCase().replace(/[a-z]*/g, '') || 1);\n}\n","/**\n * Check if the OS theme is dark\n */\nexport function isDarkOsTheme(): boolean {\n\treturn window.matchMedia('(prefers-color-scheme: dark)').matches;\n}\n","/**\n *\n * @param url\n */\nexport function isExternalLink(url: string): boolean {\n\tconst anchorElement: HTMLAnchorElement = document.createElement('a');\n\n\tanchorElement.href = url;\n\n\treturn anchorElement.host !== window.location.host;\n}\n","import {objectKeys} from '@ng-doc/core/helpers/object-keys';\nimport {NgDocPlaygroundProperty} from '@ng-doc/core/interfaces';\n\n/**\n *\n * @param obj\n */\nexport function isPlaygroundProperty(obj: Record<string, any>): obj is NgDocPlaygroundProperty {\n\treturn objectKeys(obj).includes('type');\n}\n","import {InjectionToken, Provider} from '@angular/core';\nimport {Constructor} from '@ng-doc/core/types';\n\nconst tokenStore: Map<string, InjectionToken<unknown>> = new Map<string, InjectionToken<unknown>>();\n\n/**\n *\n * @param type\n * @param control\n * @param options\n * @param playgroundId\n * @param selector\n * @param component\n */\nexport function providePlaygroundDemo(playgroundId: string, component: Constructor<unknown>): Provider {\n\tconst token: InjectionToken<unknown> =\n\t\ttokenStore.get(playgroundId) ?? new InjectionToken<unknown>(`NG_DOC_PLAYGROUND_DEMO_${playgroundId}`);\n\n\ttokenStore.set(playgroundId, token);\n\n\treturn {\n\t\tprovide: token,\n\t\tuseValue: component,\n\t\tmulti: true,\n\t};\n}\n\n/**\n * Returns the token for the given playground id.\n *\n * @param playgroundId\n */\nexport function getPlaygroundDemoToken<T>(playgroundId: string): InjectionToken<T[]> | undefined {\n\treturn tokenStore.get(playgroundId) as InjectionToken<T[]> | undefined;\n}\n","import {Provider} from '@angular/core';\nimport {NgDocSearchEngine} from '@ng-doc/app/classes/search-engine';\nimport {Constructor} from '@ng-doc/core';\n\n/**\n * Provides the `NgDocSearchEngine` to enable search in the documentation.\n *\n * You can create and provide your own `NgDocSearchEngine` if you want to handle the search yourself.\n *\n * @param engine - The search engine class.\n * @param args - The arguments for the search engine class.\n * @returns The provider for the search engine.\n */\nexport function provideSearchEngine<E extends Constructor<NgDocSearchEngine>>(\n\tengine: E,\n\t...args: ConstructorParameters<E>\n): Provider {\n\treturn {\n\t\tprovide: NgDocSearchEngine,\n\t\tuseValue: new engine(...args),\n\t};\n}\n","import {InjectionToken, Provider} from '@angular/core';\nimport {NgDocProvidedTypeControl, NgDocTypeControl, NgDocTypeControlProviderOptions} from '@ng-doc/app/interfaces';\nimport {Constructor} from '@ng-doc/core/types/constructor';\n\nconst tokenStore: Map<string, InjectionToken<NgDocProvidedTypeControl>> = new Map<\n\tstring,\n\tInjectionToken<NgDocProvidedTypeControl>\n>();\n\n/**\n *\n * @param type\n * @param control\n * @param options\n */\nexport function provideTypeControl(\n\ttype: string,\n\tcontrol: Constructor<NgDocTypeControl>,\n\toptions?: NgDocTypeControlProviderOptions,\n): Provider {\n\tconst token: InjectionToken<NgDocProvidedTypeControl> = new InjectionToken<NgDocProvidedTypeControl>(\n\t\t`NG_DOC_TYPE_CONTROL_${type}`,\n\t
|
|
1
|
+
{"version":3,"file":"ng-doc-app-helpers.mjs","sources":["../../../../libs/app/helpers/as-boolean.ts","../../../../libs/app/helpers/generate-toc.ts","../../../../libs/app/helpers/is-dark-os-theme.ts","../../../../libs/app/helpers/is-external-link.ts","../../../../libs/app/helpers/is-playground-property.ts","../../../../libs/app/helpers/provide-playground-demo.ts","../../../../libs/app/helpers/provide-search-engine.ts","../../../../libs/app/helpers/provide-type-control.ts","../../../../libs/app/helpers/ng-doc-app-helpers.ts"],"sourcesContent":["/**\n *\n * @param value\n */\nexport function asBoolean(value: unknown): boolean {\n\tif (typeof value === 'string') {\n\t\treturn value.toLowerCase() === 'true' ? true : value.toLowerCase() === 'false' ? false : !!value;\n\t}\n\treturn !!value;\n}\n","import {NgDocTocItem} from '@ng-doc/app/interfaces';\nimport {asArray} from '@ng-doc/core/helpers/as-array';\nimport {NgDocHeading} from '@ng-doc/core/types';\n\n/**\n * Generate table of contents, only for headings with id\n *\n * @param container\n * @param headings\n */\nexport function generateToc(container: HTMLElement): NgDocTocItem[] {\n\tconst headings: NgDocHeading[] = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];\n\n\tconst headingElements: HTMLHeadingElement[] = Array.from(\n\t\tcontainer.querySelectorAll<HTMLHeadingElement>(headings.join(', ')),\n\t).filter((heading: HTMLHeadingElement) => heading.id);\n\n\tconst levels: number[] = asArray(new Set(headingElements.map(levelFromTagName).sort()));\n\n\treturn headingElements.reduce((map: NgDocTocItem[], heading: HTMLHeadingElement) => {\n\t\tconst headingLevel: number = levelFromTagName(heading);\n\t\tconst anchor: HTMLAnchorElement | null = heading.querySelector<HTMLAnchorElement>('a.ng-doc-header-link');\n\n\t\tif (anchor) {\n\t\t\tmap.push({\n\t\t\t\ttitle: heading.textContent?.trim() ?? '',\n\t\t\t\telement: heading,\n\t\t\t\tpath: anchor.pathname + anchor.hash,\n\t\t\t\tlevel: levels.indexOf(headingLevel) + 1,\n\t\t\t});\n\t\t}\n\n\t\treturn map;\n\t}, []);\n}\n\n/**\n *\n * @param heading\n */\nfunction levelFromTagName(heading: HTMLHeadingElement): number {\n\treturn Number(heading.tagName.toLowerCase().replace(/[a-z]*/g, '') || 1);\n}\n","/**\n * Check if the OS theme is dark\n */\nexport function isDarkOsTheme(): boolean {\n\treturn window.matchMedia('(prefers-color-scheme: dark)').matches;\n}\n","/**\n *\n * @param url\n */\nexport function isExternalLink(url: string): boolean {\n\tconst anchorElement: HTMLAnchorElement = document.createElement('a');\n\n\tanchorElement.href = url;\n\n\treturn anchorElement.host !== window.location.host;\n}\n","import {objectKeys} from '@ng-doc/core/helpers/object-keys';\nimport {NgDocPlaygroundProperty} from '@ng-doc/core/interfaces';\n\n/**\n *\n * @param obj\n */\nexport function isPlaygroundProperty(obj: Record<string, any>): obj is NgDocPlaygroundProperty {\n\treturn objectKeys(obj).includes('type');\n}\n","import {InjectionToken, Provider} from '@angular/core';\nimport {Constructor} from '@ng-doc/core/types';\n\nconst tokenStore: Map<string, InjectionToken<unknown>> = new Map<string, InjectionToken<unknown>>();\n\n/**\n *\n * @param type\n * @param control\n * @param options\n * @param playgroundId\n * @param selector\n * @param component\n */\nexport function providePlaygroundDemo(playgroundId: string, component: Constructor<unknown>): Provider {\n\tconst token: InjectionToken<unknown> =\n\t\ttokenStore.get(playgroundId) ?? new InjectionToken<unknown>(`NG_DOC_PLAYGROUND_DEMO_${playgroundId}`);\n\n\ttokenStore.set(playgroundId, token);\n\n\treturn {\n\t\tprovide: token,\n\t\tuseValue: component,\n\t\tmulti: true,\n\t};\n}\n\n/**\n * Returns the token for the given playground id.\n *\n * @param playgroundId\n */\nexport function getPlaygroundDemoToken<T>(playgroundId: string): InjectionToken<T[]> | undefined {\n\treturn tokenStore.get(playgroundId) as InjectionToken<T[]> | undefined;\n}\n","import {Provider} from '@angular/core';\nimport {NgDocSearchEngine} from '@ng-doc/app/classes/search-engine';\nimport {Constructor} from '@ng-doc/core';\n\n/**\n * Provides the `NgDocSearchEngine` to enable search in the documentation.\n *\n * You can create and provide your own `NgDocSearchEngine` if you want to handle the search yourself.\n *\n * @param engine - The search engine class.\n * @param args - The arguments for the search engine class.\n * @returns The provider for the search engine.\n */\nexport function provideSearchEngine<E extends Constructor<NgDocSearchEngine>>(\n\tengine: E,\n\t...args: ConstructorParameters<E>\n): Provider {\n\treturn {\n\t\tprovide: NgDocSearchEngine,\n\t\tuseValue: new engine(...args),\n\t};\n}\n","import {InjectionToken, Provider} from '@angular/core';\nimport {NgDocProvidedTypeControl, NgDocTypeControl, NgDocTypeControlProviderOptions} from '@ng-doc/app/interfaces';\nimport {Constructor} from '@ng-doc/core/types/constructor';\n\nconst tokenStore: Map<string, InjectionToken<NgDocProvidedTypeControl>> = new Map<\n\tstring,\n\tInjectionToken<NgDocProvidedTypeControl>\n>();\n\n/**\n *\n * @param type\n * @param control\n * @param options\n */\nexport function provideTypeControl(\n\ttype: string,\n\tcontrol: Constructor<NgDocTypeControl>,\n\toptions?: NgDocTypeControlProviderOptions,\n): Provider {\n\tconst token: InjectionToken<NgDocProvidedTypeControl> = new InjectionToken<NgDocProvidedTypeControl>(\n\t\t`NG_DOC_TYPE_CONTROL_${type}`,\n\t\t{\n\t\t\tprovidedIn: 'root',\n\t\t\tfactory: () => {\n\t\t\t\treturn {\n\t\t\t\t\tcontrol,\n\t\t\t\t\toptions,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t);\n\ttokenStore.set(type, token);\n\n\treturn {\n\t\tprovide: 'nothing',\n\t\tuseValue: null,\n\t};\n}\n\n/**\n * Returns token for type control based on provided type\n *\n * @param type - type for searched control (e.g. `string`)\n */\nexport function getTokenForType(type: string): InjectionToken<NgDocProvidedTypeControl> | undefined {\n\treturn tokenStore.get(type);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["tokenStore"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive } from '@angular/core';
|
|
2
|
+
import { inject, Injector, Directive } from '@angular/core';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Base processor class to create a processor directive that will be used to replace
|
|
@@ -11,6 +11,7 @@ class NgDocHtmlProcessor {
|
|
|
11
11
|
this.viewContainerRef = viewContainerRef;
|
|
12
12
|
this.selector = selector;
|
|
13
13
|
this.component = component;
|
|
14
|
+
this.injector = inject(Injector);
|
|
14
15
|
}
|
|
15
16
|
ngOnInit() {
|
|
16
17
|
this.elementRef.nativeElement.querySelectorAll(this.selector).forEach((elementNode) => {
|
|
@@ -18,6 +19,7 @@ class NgDocHtmlProcessor {
|
|
|
18
19
|
// create component
|
|
19
20
|
const componentRef = this.viewContainerRef.createComponent(this.component, {
|
|
20
21
|
projectableNodes: options.content,
|
|
22
|
+
injector: this.injector,
|
|
21
23
|
});
|
|
22
24
|
// set component options
|
|
23
25
|
Object.assign(componentRef.instance, options.inputs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-doc-app-processors-html-processor.mjs","sources":["../../../../libs/app/processors/html-processor/html-processor.directive.ts","../../../../libs/app/processors/html-processor/ng-doc-app-processors-html-processor.ts"],"sourcesContent":["import {ComponentRef, Directive, ElementRef, OnInit, Type, ViewContainerRef} from '@angular/core';\nimport {NgDocProcessorOptions} from '@ng-doc/app/interfaces';\n\n/**\n * Base processor class to create a processor directive that will be used to replace\n * html nodes with an Angular component.\n */\n@Directive()\nexport abstract class NgDocHtmlProcessor<T> implements OnInit {\n\tprotected constructor(\n\t\tprotected readonly elementRef: ElementRef<HTMLElement>,\n\t\tprotected readonly viewContainerRef: ViewContainerRef,\n\t\tprotected readonly selector: string,\n\t\tprotected readonly component: Type<T>,\n\t) {}\n\n\tngOnInit(): void {\n\t\tthis.elementRef.nativeElement.querySelectorAll(this.selector).forEach((elementNode: Element) => {\n\t\t\tconst options: NgDocProcessorOptions<T> = this.extractComponentOptions(elementNode);\n\n\t\t\t// create component\n\t\t\tconst componentRef: ComponentRef<T> = this.viewContainerRef.createComponent(this.component, {\n\t\t\t\tprojectableNodes: options.content,\n\t\t\t});\n\n\t\t\t// set component options\n\t\t\tObject.assign(componentRef.instance as object, options.inputs);\n\n\t\t\t// replace element node with component node\n\t\t\tconst replaceElement: Element = this.replaceElement(elementNode);\n\t\t\treplaceElement.parentNode?.replaceChild(componentRef.location.nativeElement, replaceElement);\n\n\t\t\tcomponentRef.changeDetectorRef.markForCheck();\n\t\t});\n\t}\n\n\tprotected replaceElement(element: Element): Element {\n\t\treturn element;\n\t}\n\n\tprotected abstract extractComponentOptions(element: Element): NgDocProcessorOptions<T>;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAGA;;;AAGG;AACH,MACsB,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"ng-doc-app-processors-html-processor.mjs","sources":["../../../../libs/app/processors/html-processor/html-processor.directive.ts","../../../../libs/app/processors/html-processor/ng-doc-app-processors-html-processor.ts"],"sourcesContent":["import {ComponentRef, Directive, ElementRef, inject, Injector, OnInit, Type, ViewContainerRef} from '@angular/core';\nimport {NgDocProcessorOptions} from '@ng-doc/app/interfaces';\n\n/**\n * Base processor class to create a processor directive that will be used to replace\n * html nodes with an Angular component.\n */\n@Directive()\nexport abstract class NgDocHtmlProcessor<T> implements OnInit {\n\tinjector: Injector = inject(Injector);\n\n\tprotected constructor(\n\t\tprotected readonly elementRef: ElementRef<HTMLElement>,\n\t\tprotected readonly viewContainerRef: ViewContainerRef,\n\t\tprotected readonly selector: string,\n\t\tprotected readonly component: Type<T>,\n\t) {}\n\n\tngOnInit(): void {\n\t\tthis.elementRef.nativeElement.querySelectorAll(this.selector).forEach((elementNode: Element) => {\n\t\t\tconst options: NgDocProcessorOptions<T> = this.extractComponentOptions(elementNode);\n\n\t\t\t// create component\n\t\t\tconst componentRef: ComponentRef<T> = this.viewContainerRef.createComponent(this.component, {\n\t\t\t\tprojectableNodes: options.content,\n\t\t\t\tinjector: this.injector,\n\t\t\t});\n\n\t\t\t// set component options\n\t\t\tObject.assign(componentRef.instance as object, options.inputs);\n\n\t\t\t// replace element node with component node\n\t\t\tconst replaceElement: Element = this.replaceElement(elementNode);\n\t\t\treplaceElement.parentNode?.replaceChild(componentRef.location.nativeElement, replaceElement);\n\n\t\t\tcomponentRef.changeDetectorRef.markForCheck();\n\t\t});\n\t}\n\n\tprotected replaceElement(element: Element): Element {\n\t\treturn element;\n\t}\n\n\tprotected abstract extractComponentOptions(element: Element): NgDocProcessorOptions<T>;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAGA;;;AAGG;AACH,MACsB,kBAAkB,CAAA;AAGvC,IAAA,WAAA,CACoB,UAAmC,EACnC,gBAAkC,EAClC,QAAgB,EAChB,SAAkB,EAAA;QAHlB,IAAU,CAAA,UAAA,GAAV,UAAU,CAAyB;QACnC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QAClC,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAQ;QAChB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAS;AANtC,QAAA,IAAA,CAAA,QAAQ,GAAa,MAAM,CAAC,QAAQ,CAAC,CAAC;KAOlC;IAEJ,QAAQ,GAAA;AACP,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,WAAoB,KAAI;YAC9F,MAAM,OAAO,GAA6B,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;;YAGpF,MAAM,YAAY,GAAoB,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE;gBAC3F,gBAAgB,EAAE,OAAO,CAAC,OAAO;gBACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;AACvB,aAAA,CAAC,CAAC;;YAGH,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;;YAG/D,MAAM,cAAc,GAAY,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;AACjE,YAAA,cAAc,CAAC,UAAU,EAAE,YAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AAE7F,YAAA,YAAY,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;AAC/C,SAAC,CAAC,CAAC;KACH;AAES,IAAA,cAAc,CAAC,OAAgB,EAAA;AACxC,QAAA,OAAO,OAAO,CAAC;KACf;8GAjCoB,kBAAkB,EAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAlB,kBAAkB,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBADvC,SAAS;;;ACPV;;AAEG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ng-doc/app",
|
|
3
|
-
"version": "16.4.
|
|
3
|
+
"version": "16.4.2",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": ">=16.0.0",
|
|
6
6
|
"@angular/core": ">=16.0.0",
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"tslib": "^2.3.0",
|
|
15
|
-
"@ng-doc/core": "16.4.
|
|
16
|
-
"@ng-doc/ui-kit": "16.4.
|
|
15
|
+
"@ng-doc/core": "16.4.2",
|
|
16
|
+
"@ng-doc/ui-kit": "16.4.2",
|
|
17
17
|
"@orama/plugin-match-highlight": "1.0.2",
|
|
18
18
|
"@orama/stemmers": "1.0.2",
|
|
19
19
|
"highlight.js": "11.5.1",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ElementRef, OnInit, Type, ViewContainerRef } from '@angular/core';
|
|
1
|
+
import { ElementRef, Injector, OnInit, Type, ViewContainerRef } from '@angular/core';
|
|
2
2
|
import { NgDocProcessorOptions } from '@ng-doc/app/interfaces';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
/**
|
|
@@ -10,6 +10,7 @@ export declare abstract class NgDocHtmlProcessor<T> implements OnInit {
|
|
|
10
10
|
protected readonly viewContainerRef: ViewContainerRef;
|
|
11
11
|
protected readonly selector: string;
|
|
12
12
|
protected readonly component: Type<T>;
|
|
13
|
+
injector: Injector;
|
|
13
14
|
protected constructor(elementRef: ElementRef<HTMLElement>, viewContainerRef: ViewContainerRef, selector: string, component: Type<T>);
|
|
14
15
|
ngOnInit(): void;
|
|
15
16
|
protected replaceElement(element: Element): Element;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "@angular/common";
|
|
3
|
-
import * as i2 from "@angular/router";
|
|
4
|
-
import * as i3 from "./page.component";
|
|
5
|
-
export declare class NgDocPageModule {
|
|
6
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<NgDocPageModule, never>;
|
|
7
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<NgDocPageModule, never, [typeof i1.CommonModule, typeof i2.RouterLink, typeof i3.NgDocPageComponent], [typeof i3.NgDocPageComponent]>;
|
|
8
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<NgDocPageModule>;
|
|
9
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { RouterLink } from '@angular/router';
|
|
4
|
-
import { provideTypeControl } from '@ng-doc/app/helpers';
|
|
5
|
-
import { NgDocBooleanControlComponent, NgDocNumberControlComponent, NgDocStringControlComponent, NgDocTypeAliasControlComponent, } from '@ng-doc/app/type-controls';
|
|
6
|
-
import { NgDocPageComponent } from './page.component';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
class NgDocPageModule {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageModule, imports: [CommonModule, RouterLink, NgDocPageComponent], exports: [NgDocPageComponent] }); }
|
|
11
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageModule, providers: [
|
|
12
|
-
provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 }),
|
|
13
|
-
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
14
|
-
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
15
|
-
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
16
|
-
], imports: [CommonModule, NgDocPageComponent] }); }
|
|
17
|
-
}
|
|
18
|
-
export { NgDocPageModule };
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocPageModule, decorators: [{
|
|
20
|
-
type: NgModule,
|
|
21
|
-
args: [{
|
|
22
|
-
imports: [CommonModule, RouterLink, NgDocPageComponent],
|
|
23
|
-
providers: [
|
|
24
|
-
provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 }),
|
|
25
|
-
provideTypeControl('string', NgDocStringControlComponent, { order: 20 }),
|
|
26
|
-
provideTypeControl('number', NgDocNumberControlComponent, { order: 30 }),
|
|
27
|
-
provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 }),
|
|
28
|
-
],
|
|
29
|
-
exports: [NgDocPageComponent],
|
|
30
|
-
}]
|
|
31
|
-
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL3BhZ2UvcGFnZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFDTiw0QkFBNEIsRUFDNUIsMkJBQTJCLEVBQzNCLDJCQUEyQixFQUMzQiw4QkFBOEIsR0FDOUIsTUFBTSwyQkFBMkIsQ0FBQztBQUVuQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFcEQsTUFVYSxlQUFlOzhHQUFmLGVBQWU7K0dBQWYsZUFBZSxZQVRqQixZQUFZLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixhQU81QyxrQkFBa0I7K0dBRWhCLGVBQWUsYUFSaEI7WUFDVixrQkFBa0IsQ0FBQyxnQkFBZ0IsRUFBRSw4QkFBOEIsRUFBRSxFQUFDLEtBQUssRUFBRSxFQUFFLEVBQUMsQ0FBQztZQUNqRixrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsMkJBQTJCLEVBQUUsRUFBQyxLQUFLLEVBQUUsRUFBRSxFQUFDLENBQUM7WUFDdEUsa0JBQWtCLENBQUMsUUFBUSxFQUFFLDJCQUEyQixFQUFFLEVBQUMsS0FBSyxFQUFFLEVBQUUsRUFBQyxDQUFDO1lBQ3RFLGtCQUFrQixDQUFDLFNBQVMsRUFBRSw0QkFBNEIsRUFBRSxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBQyxDQUFDO1NBQ3pGLFlBTlMsWUFBWSxFQUFjLGtCQUFrQjs7U0FTMUMsZUFBZTsyRkFBZixlQUFlO2tCQVYzQixRQUFRO21CQUFDO29CQUNULE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsa0JBQWtCLENBQUM7b0JBQ3ZELFNBQVMsRUFBRTt3QkFDVixrQkFBa0IsQ0FBQyxnQkFBZ0IsRUFBRSw4QkFBOEIsRUFBRSxFQUFDLEtBQUssRUFBRSxFQUFFLEVBQUMsQ0FBQzt3QkFDakYsa0JBQWtCLENBQUMsUUFBUSxFQUFFLDJCQUEyQixFQUFFLEVBQUMsS0FBSyxFQUFFLEVBQUUsRUFBQyxDQUFDO3dCQUN0RSxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsMkJBQTJCLEVBQUUsRUFBQyxLQUFLLEVBQUUsRUFBRSxFQUFDLENBQUM7d0JBQ3RFLGtCQUFrQixDQUFDLFNBQVMsRUFBRSw0QkFBNEIsRUFBRSxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBQyxDQUFDO3FCQUN6RjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtSb3V0ZXJMaW5rfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtwcm92aWRlVHlwZUNvbnRyb2x9IGZyb20gJ0BuZy1kb2MvYXBwL2hlbHBlcnMnO1xuaW1wb3J0IHtcblx0TmdEb2NCb29sZWFuQ29udHJvbENvbXBvbmVudCxcblx0TmdEb2NOdW1iZXJDb250cm9sQ29tcG9uZW50LFxuXHROZ0RvY1N0cmluZ0NvbnRyb2xDb21wb25lbnQsXG5cdE5nRG9jVHlwZUFsaWFzQ29udHJvbENvbXBvbmVudCxcbn0gZnJvbSAnQG5nLWRvYy9hcHAvdHlwZS1jb250cm9scyc7XG5cbmltcG9ydCB7TmdEb2NQYWdlQ29tcG9uZW50fSBmcm9tICcuL3BhZ2UuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcblx0aW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUm91dGVyTGluaywgTmdEb2NQYWdlQ29tcG9uZW50XSxcblx0cHJvdmlkZXJzOiBbXG5cdFx0cHJvdmlkZVR5cGVDb250cm9sKCdOZ0RvY1R5cGVBbGlhcycsIE5nRG9jVHlwZUFsaWFzQ29udHJvbENvbXBvbmVudCwge29yZGVyOiAxMH0pLFxuXHRcdHByb3ZpZGVUeXBlQ29udHJvbCgnc3RyaW5nJywgTmdEb2NTdHJpbmdDb250cm9sQ29tcG9uZW50LCB7b3JkZXI6IDIwfSksXG5cdFx0cHJvdmlkZVR5cGVDb250cm9sKCdudW1iZXInLCBOZ0RvY051bWJlckNvbnRyb2xDb21wb25lbnQsIHtvcmRlcjogMzB9KSxcblx0XHRwcm92aWRlVHlwZUNvbnRyb2woJ2Jvb2xlYW4nLCBOZ0RvY0Jvb2xlYW5Db250cm9sQ29tcG9uZW50LCB7aGlkZUxhYmVsOiB0cnVlLCBvcmRlcjogNDB9KSxcblx0XSxcblx0ZXhwb3J0czogW05nRG9jUGFnZUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIE5nRG9jUGFnZU1vZHVsZSB7fVxuIl19
|