@ng-doc/app 17.3.2 → 17.5.0
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/demo/demo.component.d.ts +2 -3
- package/components/demo-pane/demo-pane.component.d.ts +2 -3
- package/esm2022/components/demo/demo.component.mjs +6 -9
- package/esm2022/components/demo-pane/demo-pane.component.mjs +6 -9
- package/fesm2022/ng-doc-app-components-demo-pane.mjs +5 -8
- package/fesm2022/ng-doc-app-components-demo-pane.mjs.map +1 -1
- package/fesm2022/ng-doc-app-components-demo.mjs +5 -8
- package/fesm2022/ng-doc-app-components-demo.mjs.map +1 -1
- package/package.json +9 -9
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import { OnInit } from '@angular/core';
|
|
1
|
+
import { OnInit, Type } from '@angular/core';
|
|
2
2
|
import { NgDocRootPage } from '@ng-doc/app/classes/root-page';
|
|
3
3
|
import { NgDocDemoAsset } from '@ng-doc/app/interfaces';
|
|
4
4
|
import { NgDocDemoActionOptions } from '@ng-doc/core/interfaces';
|
|
5
|
-
import { NgDocContent } from '@ng-doc/ui-kit/types';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
6
|
export declare class NgDocDemoComponent implements OnInit {
|
|
8
7
|
private readonly rootPage;
|
|
9
8
|
componentName?: string;
|
|
10
9
|
options: NgDocDemoActionOptions;
|
|
11
|
-
demo?:
|
|
10
|
+
demo?: Type<unknown>;
|
|
12
11
|
assets: NgDocDemoAsset[];
|
|
13
12
|
constructor(rootPage: NgDocRootPage);
|
|
14
13
|
protected get classes(): string | string[];
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import { OnInit } from '@angular/core';
|
|
1
|
+
import { OnInit, Type } from '@angular/core';
|
|
2
2
|
import { NgDocRootPage } from '@ng-doc/app/classes/root-page';
|
|
3
3
|
import { NgDocDemoAsset } from '@ng-doc/app/interfaces';
|
|
4
4
|
import { NgDocDemoPaneActionOptions } from '@ng-doc/core/interfaces';
|
|
5
|
-
import { NgDocContent } from '@ng-doc/ui-kit/types';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
6
|
export declare class NgDocDemoPaneComponent implements OnInit {
|
|
8
7
|
private readonly rootPage;
|
|
9
8
|
componentName?: string;
|
|
10
9
|
options: NgDocDemoPaneActionOptions;
|
|
11
|
-
demo?:
|
|
10
|
+
demo?: Type<unknown>;
|
|
12
11
|
assets: NgDocDemoAsset[];
|
|
13
12
|
constructor(rootPage: NgDocRootPage);
|
|
14
13
|
protected get classes(): string | string[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
1
|
+
import { NgComponentOutlet, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
2
2
|
import { ChangeDetectionStrategy, Component, HostBinding, Input, } from '@angular/core';
|
|
3
3
|
import { NgDocRootPage } from '@ng-doc/app/classes/root-page';
|
|
4
4
|
import { NgDocCodeComponent } from '@ng-doc/app/components/code';
|
|
@@ -6,10 +6,8 @@ import { NgDocDemoDisplayerComponent } from '@ng-doc/app/components/demo-display
|
|
|
6
6
|
import { NgDocFullscreenButtonComponent } from '@ng-doc/app/components/fullscreen-button';
|
|
7
7
|
import { asArray } from '@ng-doc/core/helpers/as-array';
|
|
8
8
|
import { NgDocExecutePipe, NgDocIconComponent, NgDocTabComponent, NgDocTabGroupComponent, } from '@ng-doc/ui-kit';
|
|
9
|
-
import { PolymorpheusComponent, PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
10
9
|
import * as i0 from "@angular/core";
|
|
11
10
|
import * as i1 from "@ng-doc/app/classes/root-page";
|
|
12
|
-
import * as i2 from "@tinkoff/ng-polymorpheus";
|
|
13
11
|
export class NgDocDemoComponent {
|
|
14
12
|
constructor(rootPage) {
|
|
15
13
|
this.rootPage = rootPage;
|
|
@@ -28,8 +26,7 @@ export class NgDocDemoComponent {
|
|
|
28
26
|
}
|
|
29
27
|
getDemo() {
|
|
30
28
|
if (this.componentName) {
|
|
31
|
-
|
|
32
|
-
return component ? new PolymorpheusComponent(component) : undefined;
|
|
29
|
+
return this.rootPage.page?.demos && this.rootPage.page.demos[this.componentName];
|
|
33
30
|
}
|
|
34
31
|
return undefined;
|
|
35
32
|
}
|
|
@@ -41,7 +38,7 @@ export class NgDocDemoComponent {
|
|
|
41
38
|
return [];
|
|
42
39
|
}
|
|
43
40
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NgDocDemoComponent, deps: [{ token: i1.NgDocRootPage }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.0", type: NgDocDemoComponent, isStandalone: true, selector: "ng-doc-demo", inputs: { componentName: "componentName", options: "options" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-container *ngIf=\"options.container ?? true; else demoTemplate\">\n\t<ng-doc-demo-displayer [codeContent]=\"codeContent\" [expanded]=\"!!options.expanded\">\n\t\t<ng-container *ngTemplateOutlet=\"demoTemplate\"></ng-container>\n\t\t<ng-template #codeContent>\n\t\t\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t\t\t</ng-container>\n\n\t\t\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t\t\t<ng-doc-tab-group [openedTab]=\"(getOpenedAssetId | execute : assets) ?? options.defaultTab\">\n\t\t\t\t\t<ng-doc-tab\n\t\t\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t\t\t<ng-template #label>\n\t\t\t\t\t\t\t<ng-doc-icon [customIcon]=\"asset.icon\" *ngIf=\"asset.icon\"></ng-doc-icon>\n\t\t\t\t\t\t\t{{ asset.title }}\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t</ng-doc-tab>\n\t\t\t\t</ng-doc-tab-group>\n\t\t\t</ng-container>\n\t\t</ng-template>\n\t</ng-doc-demo-displayer>\n</ng-container>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n", styles: [":host{display:block;margin:var(--ng-doc-demo-margin);--ng-doc-tab-group-background: var(--ng-doc-code-background);--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border-radius: 0;--ng-doc-tab-group-border: none;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none}:host .ng-doc-example{padding:calc(var(--ng-doc-base-gutter) * 3)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host ng-doc-tab-group{border-top:1px solid var(--ng-doc-border-color)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocDemoDisplayerComponent, selector: "ng-doc-demo-displayer", inputs: ["codeContent", "code", "language", "container", "border", "expanded"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocCodeComponent, selector: "ng-doc-code", inputs: ["html", "copyButton", "name", "icon", "lineNumbers"] }, { kind: "component", type: NgDocTabGroupComponent, selector: "ng-doc-tab-group", inputs: ["openedTab"] }, { kind: "component", type: NgDocTabComponent, selector: "ng-doc-tab", inputs: ["label", "id", "content"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "pipe", type: NgDocExecutePipe, name: "execute" }, { kind: "component", type: NgDocFullscreenButtonComponent, selector: "ng-doc-fullscreen-button", inputs: ["route"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
45
42
|
}
|
|
46
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NgDocDemoComponent, decorators: [{
|
|
47
44
|
type: Component,
|
|
@@ -53,11 +50,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImpor
|
|
|
53
50
|
NgDocCodeComponent,
|
|
54
51
|
NgDocTabGroupComponent,
|
|
55
52
|
NgDocTabComponent,
|
|
56
|
-
PolymorpheusModule,
|
|
57
53
|
NgDocIconComponent,
|
|
58
54
|
NgDocExecutePipe,
|
|
59
55
|
NgDocFullscreenButtonComponent,
|
|
60
|
-
|
|
56
|
+
NgComponentOutlet,
|
|
57
|
+
], template: "<ng-container *ngIf=\"options.container ?? true; else demoTemplate\">\n\t<ng-doc-demo-displayer [codeContent]=\"codeContent\" [expanded]=\"!!options.expanded\">\n\t\t<ng-container *ngTemplateOutlet=\"demoTemplate\"></ng-container>\n\t\t<ng-template #codeContent>\n\t\t\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t\t\t</ng-container>\n\n\t\t\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t\t\t<ng-doc-tab-group [openedTab]=\"(getOpenedAssetId | execute : assets) ?? options.defaultTab\">\n\t\t\t\t\t<ng-doc-tab\n\t\t\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t\t\t<ng-template #label>\n\t\t\t\t\t\t\t<ng-doc-icon [customIcon]=\"asset.icon\" *ngIf=\"asset.icon\"></ng-doc-icon>\n\t\t\t\t\t\t\t{{ asset.title }}\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t</ng-doc-tab>\n\t\t\t\t</ng-doc-tab-group>\n\t\t\t</ng-container>\n\t\t</ng-template>\n\t</ng-doc-demo-displayer>\n</ng-container>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n", styles: [":host{display:block;margin:var(--ng-doc-demo-margin);--ng-doc-tab-group-background: var(--ng-doc-code-background);--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border-radius: 0;--ng-doc-tab-group-border: none;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none}:host .ng-doc-example{padding:calc(var(--ng-doc-base-gutter) * 3)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host ng-doc-tab-group{border-top:1px solid var(--ng-doc-border-color)}\n"] }]
|
|
61
58
|
}], ctorParameters: () => [{ type: i1.NgDocRootPage }], propDecorators: { componentName: [{
|
|
62
59
|
type: Input
|
|
63
60
|
}], options: [{
|
|
@@ -66,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImpor
|
|
|
66
63
|
type: HostBinding,
|
|
67
64
|
args: ['class']
|
|
68
65
|
}] } });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVtby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2RlbW8vZGVtby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2RlbW8vZGVtby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25GLE9BQU8sRUFDTix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFdBQVcsRUFDWCxLQUFLLEdBR0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTFGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV4RCxPQUFPLEVBQ04sZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsc0JBQXNCLEdBQ3RCLE1BQU0sZ0JBQWdCLENBQUM7OztBQXNCeEIsTUFBTSxPQUFPLGtCQUFrQjtJQVU5QixZQUE2QixRQUF1QjtRQUF2QixhQUFRLEdBQVIsUUFBUSxDQUFlO1FBTHBELFlBQU8sR0FBMkIsRUFBRSxDQUFDO1FBR3JDLFdBQU0sR0FBcUIsRUFBRSxDQUFDO0lBRXlCLENBQUM7SUFFeEQsSUFDYyxPQUFPO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxRQUFRO1FBQ1AsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQXdCO1FBQ3hDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQXFCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLENBQUM7SUFDcEUsQ0FBQztJQUVPLE9BQU87UUFDZCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUNqRjtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ2xCLENBQUM7SUFFTyxTQUFTO1FBQ2hCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixPQUFPLENBQ04sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQzFFLEVBQUUsQ0FDRixDQUFDLE1BQU0sQ0FDUCxDQUFDLEtBQXFCLEVBQUUsRUFBRSxDQUN6QixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLE1BQU0sSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUMvRSxDQUFDO1NBQ0Y7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNYLENBQUM7OEdBOUNXLGtCQUFrQjtrR0FBbEIsa0JBQWtCLDBMQzNDL0IsdytDQW9DQSxpakJETkUsSUFBSSw2RkFDSiwyQkFBMkIsa0pBQzNCLGdCQUFnQixvSkFDaEIsS0FBSyxtSEFDTCxrQkFBa0IsdUhBQ2xCLHNCQUFzQixvRkFDdEIsaUJBQWlCLDJGQUNqQixrQkFBa0IsMkZBQ2xCLGdCQUFnQixnREFDaEIsOEJBQThCLHdGQUM5QixpQkFBaUI7OzJGQUdOLGtCQUFrQjtrQkFwQjlCLFNBQVM7K0JBQ0MsYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUixJQUFJO3dCQUNKLDJCQUEyQjt3QkFDM0IsZ0JBQWdCO3dCQUNoQixLQUFLO3dCQUNMLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQiw4QkFBOEI7d0JBQzlCLGlCQUFpQjtxQkFDakI7a0ZBSUQsYUFBYTtzQkFEWixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFTUSxPQUFPO3NCQURwQixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NvbXBvbmVudE91dGxldCwgTmdGb3IsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0SG9zdEJpbmRpbmcsXG5cdElucHV0LFxuXHRPbkluaXQsXG5cdFR5cGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdEb2NSb290UGFnZSB9IGZyb20gJ0BuZy1kb2MvYXBwL2NsYXNzZXMvcm9vdC1wYWdlJztcbmltcG9ydCB7IE5nRG9jQ29kZUNvbXBvbmVudCB9IGZyb20gJ0BuZy1kb2MvYXBwL2NvbXBvbmVudHMvY29kZSc7XG5pbXBvcnQgeyBOZ0RvY0RlbW9EaXNwbGF5ZXJDb21wb25lbnQgfSBmcm9tICdAbmctZG9jL2FwcC9jb21wb25lbnRzL2RlbW8tZGlzcGxheWVyJztcbmltcG9ydCB7IE5nRG9jRnVsbHNjcmVlbkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BuZy1kb2MvYXBwL2NvbXBvbmVudHMvZnVsbHNjcmVlbi1idXR0b24nO1xuaW1wb3J0IHsgTmdEb2NEZW1vQXNzZXQgfSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGFzQXJyYXkgfSBmcm9tICdAbmctZG9jL2NvcmUvaGVscGVycy9hcy1hcnJheSc7XG5pbXBvcnQgeyBOZ0RvY0RlbW9BY3Rpb25PcHRpb25zIH0gZnJvbSAnQG5nLWRvYy9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcblx0TmdEb2NFeGVjdXRlUGlwZSxcblx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHROZ0RvY1RhYkNvbXBvbmVudCxcblx0TmdEb2NUYWJHcm91cENvbXBvbmVudCxcbn0gZnJvbSAnQG5nLWRvYy91aS1raXQnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZy1kb2MtZGVtbycsXG5cdHRlbXBsYXRlVXJsOiAnLi9kZW1vLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vZGVtby5jb21wb25lbnQuc2NzcyddLFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW1xuXHRcdE5nSWYsXG5cdFx0TmdEb2NEZW1vRGlzcGxheWVyQ29tcG9uZW50LFxuXHRcdE5nVGVtcGxhdGVPdXRsZXQsXG5cdFx0TmdGb3IsXG5cdFx0TmdEb2NDb2RlQ29tcG9uZW50LFxuXHRcdE5nRG9jVGFiR3JvdXBDb21wb25lbnQsXG5cdFx0TmdEb2NUYWJDb21wb25lbnQsXG5cdFx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHRcdE5nRG9jRXhlY3V0ZVBpcGUsXG5cdFx0TmdEb2NGdWxsc2NyZWVuQnV0dG9uQ29tcG9uZW50LFxuXHRcdE5nQ29tcG9uZW50T3V0bGV0LFxuXHRdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ0RvY0RlbW9Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXHRASW5wdXQoKVxuXHRjb21wb25lbnROYW1lPzogc3RyaW5nO1xuXG5cdEBJbnB1dCgpXG5cdG9wdGlvbnM6IE5nRG9jRGVtb0FjdGlvbk9wdGlvbnMgPSB7fTtcblxuXHRkZW1vPzogVHlwZTx1bmtub3duPjtcblx0YXNzZXRzOiBOZ0RvY0RlbW9Bc3NldFtdID0gW107XG5cblx0Y29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSByb290UGFnZTogTmdEb2NSb290UGFnZSkge31cblxuXHRASG9zdEJpbmRpbmcoJ2NsYXNzJylcblx0cHJvdGVjdGVkIGdldCBjbGFzc2VzKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcblx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmNsYXNzID8/ICcnO1xuXHR9XG5cblx0bmdPbkluaXQoKTogdm9pZCB7XG5cdFx0dGhpcy5kZW1vID0gdGhpcy5nZXREZW1vKCk7XG5cdFx0dGhpcy5hc3NldHMgPSB0aGlzLmdldEFzc2V0cygpO1xuXHR9XG5cblx0Z2V0T3BlbmVkQXNzZXRJZChhc3NldHM6IE5nRG9jRGVtb0Fzc2V0W10pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHRcdHJldHVybiBhc3NldHMuZmluZCgoYXNzZXQ6IE5nRG9jRGVtb0Fzc2V0KSA9PiBhc3NldC5vcGVuZWQpPy50aXRsZTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0RGVtbygpOiBUeXBlPHVua25vd24+IHwgdW5kZWZpbmVkIHtcblx0XHRpZiAodGhpcy5jb21wb25lbnROYW1lKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5yb290UGFnZS5wYWdlPy5kZW1vcyAmJiB0aGlzLnJvb3RQYWdlLnBhZ2UuZGVtb3NbdGhpcy5jb21wb25lbnROYW1lXTtcblx0XHR9XG5cblx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHR9XG5cblx0cHJpdmF0ZSBnZXRBc3NldHMoKTogTmdEb2NEZW1vQXNzZXRbXSB7XG5cdFx0aWYgKHRoaXMuY29tcG9uZW50TmFtZSkge1xuXHRcdFx0cmV0dXJuIChcblx0XHRcdFx0KHRoaXMucm9vdFBhZ2UuZGVtb0Fzc2V0cyAmJiB0aGlzLnJvb3RQYWdlLmRlbW9Bc3NldHNbdGhpcy5jb21wb25lbnROYW1lXSkgPz9cblx0XHRcdFx0W11cblx0XHRcdCkuZmlsdGVyKFxuXHRcdFx0XHQoYXNzZXQ6IE5nRG9jRGVtb0Fzc2V0KSA9PlxuXHRcdFx0XHRcdCF0aGlzLm9wdGlvbnMudGFicz8ubGVuZ3RoIHx8IGFzQXJyYXkodGhpcy5vcHRpb25zLnRhYnMpLmluY2x1ZGVzKGFzc2V0LnRpdGxlKSxcblx0XHRcdCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIFtdO1xuXHR9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9ucy5jb250YWluZXIgPz8gdHJ1ZTsgZWxzZSBkZW1vVGVtcGxhdGVcIj5cblx0PG5nLWRvYy1kZW1vLWRpc3BsYXllciBbY29kZUNvbnRlbnRdPVwiY29kZUNvbnRlbnRcIiBbZXhwYW5kZWRdPVwiISFvcHRpb25zLmV4cGFuZGVkXCI+XG5cdFx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRlbW9UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuXHRcdDxuZy10ZW1wbGF0ZSAjY29kZUNvbnRlbnQ+XG5cdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwiYXNzZXRzLmxlbmd0aCA9PT0gMVwiPlxuXHRcdFx0XHQ8bmctZG9jLWNvZGUgKm5nRm9yPVwibGV0IGFzc2V0IG9mIGFzc2V0c1wiIFtodG1sXT1cImFzc2V0LmNvZGVcIj48L25nLWRvYy1jb2RlPlxuXHRcdFx0PC9uZy1jb250YWluZXI+XG5cblx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJhc3NldHMubGVuZ3RoID4gMVwiPlxuXHRcdFx0XHQ8bmctZG9jLXRhYi1ncm91cCBbb3BlbmVkVGFiXT1cIihnZXRPcGVuZWRBc3NldElkIHwgZXhlY3V0ZSA6IGFzc2V0cykgPz8gb3B0aW9ucy5kZWZhdWx0VGFiXCI+XG5cdFx0XHRcdFx0PG5nLWRvYy10YWJcblx0XHRcdFx0XHRcdCpuZ0Zvcj1cImxldCBhc3NldCBvZiBhc3NldHNcIlxuXHRcdFx0XHRcdFx0W2lkXT1cImFzc2V0LnRpdGxlXCJcblx0XHRcdFx0XHRcdFtsYWJlbF09XCJsYWJlbFwiXG5cdFx0XHRcdFx0XHRbY29udGVudF09XCJhc3NldENvbnRlbnRcIj5cblx0XHRcdFx0XHRcdDxuZy10ZW1wbGF0ZSAjbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxuZy1kb2MtaWNvbiBbY3VzdG9tSWNvbl09XCJhc3NldC5pY29uXCIgKm5nSWY9XCJhc3NldC5pY29uXCI+PC9uZy1kb2MtaWNvbj5cblx0XHRcdFx0XHRcdFx0e3sgYXNzZXQudGl0bGUgfX1cblx0XHRcdFx0XHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdFx0XHQ8bmctdGVtcGxhdGUgI2Fzc2V0Q29udGVudD5cblx0XHRcdFx0XHRcdFx0PG5nLWRvYy1jb2RlIFtodG1sXT1cImFzc2V0LmNvZGVcIj48L25nLWRvYy1jb2RlPlxuXHRcdFx0XHRcdFx0PC9uZy10ZW1wbGF0ZT5cblx0XHRcdFx0XHQ8L25nLWRvYy10YWI+XG5cdFx0XHRcdDwvbmctZG9jLXRhYi1ncm91cD5cblx0XHRcdDwvbmctY29udGFpbmVyPlxuXHRcdDwvbmctdGVtcGxhdGU+XG5cdDwvbmctZG9jLWRlbW8tZGlzcGxheWVyPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy10ZW1wbGF0ZSAjZGVtb1RlbXBsYXRlPlxuXHRAaWYgKG9wdGlvbnMuZnVsbHNjcmVlblJvdXRlKSB7XG5cdDxuZy1kb2MtZnVsbHNjcmVlbi1idXR0b24gW3JvdXRlXT1cIm9wdGlvbnMuZnVsbHNjcmVlblJvdXRlIVwiPjwvbmctZG9jLWZ1bGxzY3JlZW4tYnV0dG9uPlxuXHR9IEBlbHNlIGlmIChkZW1vKSB7XG5cdDxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiZGVtbzsgaW5wdXRzOiBvcHRpb25zLmlucHV0c1wiPjwvbmctY29udGFpbmVyPlxuXHR9XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
import { NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
1
|
+
import { NgComponentOutlet, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
2
2
|
import { ChangeDetectionStrategy, Component, HostBinding, Input, } from '@angular/core';
|
|
3
3
|
import { NgDocRootPage } from '@ng-doc/app/classes/root-page';
|
|
4
4
|
import { NgDocCodeComponent } from '@ng-doc/app/components/code';
|
|
5
5
|
import { NgDocFullscreenButtonComponent } from '@ng-doc/app/components/fullscreen-button';
|
|
6
6
|
import { asArray } from '@ng-doc/core/helpers/as-array';
|
|
7
7
|
import { NgDocPaneBackDirective, NgDocPaneComponent, NgDocPaneFrontDirective, NgDocTabComponent, NgDocTabGroupComponent, } from '@ng-doc/ui-kit';
|
|
8
|
-
import { PolymorpheusComponent, PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
9
8
|
import * as i0 from "@angular/core";
|
|
10
9
|
import * as i1 from "@ng-doc/app/classes/root-page";
|
|
11
|
-
import * as i2 from "@tinkoff/ng-polymorpheus";
|
|
12
10
|
export class NgDocDemoPaneComponent {
|
|
13
11
|
constructor(rootPage) {
|
|
14
12
|
this.rootPage = rootPage;
|
|
@@ -24,8 +22,7 @@ export class NgDocDemoPaneComponent {
|
|
|
24
22
|
}
|
|
25
23
|
getDemo() {
|
|
26
24
|
if (this.componentName) {
|
|
27
|
-
|
|
28
|
-
return component ? new PolymorpheusComponent(component) : undefined;
|
|
25
|
+
return this.rootPage.page?.demos && this.rootPage.page.demos[this.componentName];
|
|
29
26
|
}
|
|
30
27
|
return undefined;
|
|
31
28
|
}
|
|
@@ -37,7 +34,7 @@ export class NgDocDemoPaneComponent {
|
|
|
37
34
|
return [];
|
|
38
35
|
}
|
|
39
36
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NgDocDemoPaneComponent, deps: [{ token: i1.NgDocRootPage }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.0", type: NgDocDemoPaneComponent, isStandalone: true, selector: "ng-doc-demo-pane", inputs: { componentName: "componentName", options: "options" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-doc-pane [expanded]=\"options.expanded ?? false\">\n\t<ng-container *ngTemplateOutlet=\"codeContent\" ngDocPaneBack></ng-container>\n\t<ng-container *ngTemplateOutlet=\"demoTemplate\" ngDocPaneFront></ng-container>\n</ng-doc-pane>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n\n<ng-template #codeContent>\n\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t</ng-container>\n\n\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t<ng-doc-tab-group [openedTab]=\"options.defaultTab\">\n\t\t\t<ng-doc-tab\n\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t[label]=\"asset.title\"\n\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-tab>\n\t\t</ng-doc-tab-group>\n\t</ng-container>\n</ng-template>\n", styles: [":host{display:block;height:var(--ng-doc-demo-pane-height);margin:var(--ng-doc-demo-pane-margin);--ng-doc-code-margin: 0;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none;--ng-doc-smooth-resize-height: var(--ng-doc-demo-pane-height);--ng-doc-smooth-resize-max-height: 100%;--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border: none;--ng-doc-tab-group-border-radius: 0}:host ng-doc-tab-group,:host ng-doc-code,:host ng-doc-pane{width:100%;height:100%}\n"], dependencies: [{ kind: "component", type: NgDocPaneComponent, selector: "ng-doc-pane", inputs: ["expanded"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgDocPaneBackDirective, selector: "[ngDocPaneBack]" }, { kind: "directive", type: NgDocPaneFrontDirective, selector: "[ngDocPaneFront]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocCodeComponent, selector: "ng-doc-code", inputs: ["html", "copyButton", "name", "icon", "lineNumbers"] }, { kind: "component", type: NgDocTabGroupComponent, selector: "ng-doc-tab-group", inputs: ["openedTab"] }, { kind: "component", type: NgDocTabComponent, selector: "ng-doc-tab", inputs: ["label", "id", "content"] }, { kind: "component", type: NgDocFullscreenButtonComponent, selector: "ng-doc-fullscreen-button", inputs: ["route"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
41
38
|
}
|
|
42
39
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NgDocDemoPaneComponent, decorators: [{
|
|
43
40
|
type: Component,
|
|
@@ -46,14 +43,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImpor
|
|
|
46
43
|
NgTemplateOutlet,
|
|
47
44
|
NgDocPaneBackDirective,
|
|
48
45
|
NgDocPaneFrontDirective,
|
|
49
|
-
PolymorpheusModule,
|
|
50
46
|
NgIf,
|
|
51
47
|
NgFor,
|
|
52
48
|
NgDocCodeComponent,
|
|
53
49
|
NgDocTabGroupComponent,
|
|
54
50
|
NgDocTabComponent,
|
|
55
51
|
NgDocFullscreenButtonComponent,
|
|
56
|
-
|
|
52
|
+
NgComponentOutlet,
|
|
53
|
+
], template: "<ng-doc-pane [expanded]=\"options.expanded ?? false\">\n\t<ng-container *ngTemplateOutlet=\"codeContent\" ngDocPaneBack></ng-container>\n\t<ng-container *ngTemplateOutlet=\"demoTemplate\" ngDocPaneFront></ng-container>\n</ng-doc-pane>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n\n<ng-template #codeContent>\n\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t</ng-container>\n\n\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t<ng-doc-tab-group [openedTab]=\"options.defaultTab\">\n\t\t\t<ng-doc-tab\n\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t[label]=\"asset.title\"\n\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-tab>\n\t\t</ng-doc-tab-group>\n\t</ng-container>\n</ng-template>\n", styles: [":host{display:block;height:var(--ng-doc-demo-pane-height);margin:var(--ng-doc-demo-pane-margin);--ng-doc-code-margin: 0;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none;--ng-doc-smooth-resize-height: var(--ng-doc-demo-pane-height);--ng-doc-smooth-resize-max-height: 100%;--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border: none;--ng-doc-tab-group-border-radius: 0}:host ng-doc-tab-group,:host ng-doc-code,:host ng-doc-pane{width:100%;height:100%}\n"] }]
|
|
57
54
|
}], ctorParameters: () => [{ type: i1.NgDocRootPage }], propDecorators: { componentName: [{
|
|
58
55
|
type: Input
|
|
59
56
|
}], options: [{
|
|
@@ -62,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImpor
|
|
|
62
59
|
type: HostBinding,
|
|
63
60
|
args: ['class']
|
|
64
61
|
}] } });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVtby1wYW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL2NvbXBvbmVudHMvZGVtby1wYW5lL2RlbW8tcGFuZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9jb21wb25lbnRzL2RlbW8tcGFuZS9kZW1vLXBhbmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRixPQUFPLEVBQ04sdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxHQUdMLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUUxRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFeEQsT0FBTyxFQUNOLHNCQUFzQixFQUN0QixrQkFBa0IsRUFDbEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixzQkFBc0IsR0FDdEIsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBc0J4QixNQUFNLE9BQU8sc0JBQXNCO0lBVWxDLFlBQTZCLFFBQXVCO1FBQXZCLGFBQVEsR0FBUixRQUFRLENBQWU7UUFMcEQsWUFBTyxHQUErQixFQUFFLENBQUM7UUFHekMsV0FBTSxHQUFxQixFQUFFLENBQUM7SUFFeUIsQ0FBQztJQUV4RCxJQUNjLE9BQU87UUFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELFFBQVE7UUFDUCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU8sT0FBTztRQUNkLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ2pGO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbEIsQ0FBQztJQUVPLFNBQVM7UUFDaEIsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3ZCLE9BQU8sQ0FDTixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDMUUsRUFBRSxDQUNGLENBQUMsTUFBTSxDQUNQLENBQUMsS0FBcUIsRUFBRSxFQUFFLENBQ3pCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQy9FLENBQUM7U0FDRjtRQUVELE9BQU8sRUFBRSxDQUFDO0lBQ1gsQ0FBQzs4R0ExQ1csc0JBQXNCO2tHQUF0QixzQkFBc0IsK0xDM0NuQywycENBZ0NBLG1pQkRGRSxrQkFBa0IsOEVBQ2xCLGdCQUFnQixvSkFDaEIsc0JBQXNCLDREQUN0Qix1QkFBdUIsNkRBQ3ZCLElBQUksNkZBQ0osS0FBSyxtSEFDTCxrQkFBa0IsdUhBQ2xCLHNCQUFzQixvRkFDdEIsaUJBQWlCLDJGQUNqQiw4QkFBOEIsd0ZBQzlCLGlCQUFpQjs7MkZBR04sc0JBQXNCO2tCQXBCbEMsU0FBUzsrQkFDQyxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1Isa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2QixJQUFJO3dCQUNKLEtBQUs7d0JBQ0wsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsOEJBQThCO3dCQUM5QixpQkFBaUI7cUJBQ2pCO2tGQUlELGFBQWE7c0JBRFosS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBU1EsT0FBTztzQkFEcEIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDb21wb25lbnRPdXRsZXQsIE5nRm9yLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDb21wb25lbnQsXG5cdEhvc3RCaW5kaW5nLFxuXHRJbnB1dCxcblx0T25Jbml0LFxuXHRUeXBlLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nRG9jUm9vdFBhZ2UgfSBmcm9tICdAbmctZG9jL2FwcC9jbGFzc2VzL3Jvb3QtcGFnZSc7XG5pbXBvcnQgeyBOZ0RvY0NvZGVDb21wb25lbnQgfSBmcm9tICdAbmctZG9jL2FwcC9jb21wb25lbnRzL2NvZGUnO1xuaW1wb3J0IHsgTmdEb2NGdWxsc2NyZWVuQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQG5nLWRvYy9hcHAvY29tcG9uZW50cy9mdWxsc2NyZWVuLWJ1dHRvbic7XG5pbXBvcnQgeyBOZ0RvY0RlbW9Bc3NldCB9IGZyb20gJ0BuZy1kb2MvYXBwL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgYXNBcnJheSB9IGZyb20gJ0BuZy1kb2MvY29yZS9oZWxwZXJzL2FzLWFycmF5JztcbmltcG9ydCB7IE5nRG9jRGVtb1BhbmVBY3Rpb25PcHRpb25zIH0gZnJvbSAnQG5nLWRvYy9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcblx0TmdEb2NQYW5lQmFja0RpcmVjdGl2ZSxcblx0TmdEb2NQYW5lQ29tcG9uZW50LFxuXHROZ0RvY1BhbmVGcm9udERpcmVjdGl2ZSxcblx0TmdEb2NUYWJDb21wb25lbnQsXG5cdE5nRG9jVGFiR3JvdXBDb21wb25lbnQsXG59IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmctZG9jLWRlbW8tcGFuZScsXG5cdHRlbXBsYXRlVXJsOiAnLi9kZW1vLXBhbmUuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9kZW1vLXBhbmUuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtcblx0XHROZ0RvY1BhbmVDb21wb25lbnQsXG5cdFx0TmdUZW1wbGF0ZU91dGxldCxcblx0XHROZ0RvY1BhbmVCYWNrRGlyZWN0aXZlLFxuXHRcdE5nRG9jUGFuZUZyb250RGlyZWN0aXZlLFxuXHRcdE5nSWYsXG5cdFx0TmdGb3IsXG5cdFx0TmdEb2NDb2RlQ29tcG9uZW50LFxuXHRcdE5nRG9jVGFiR3JvdXBDb21wb25lbnQsXG5cdFx0TmdEb2NUYWJDb21wb25lbnQsXG5cdFx0TmdEb2NGdWxsc2NyZWVuQnV0dG9uQ29tcG9uZW50LFxuXHRcdE5nQ29tcG9uZW50T3V0bGV0LFxuXHRdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ0RvY0RlbW9QYW5lQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblx0QElucHV0KClcblx0Y29tcG9uZW50TmFtZT86IHN0cmluZztcblxuXHRASW5wdXQoKVxuXHRvcHRpb25zOiBOZ0RvY0RlbW9QYW5lQWN0aW9uT3B0aW9ucyA9IHt9O1xuXG5cdGRlbW8/OiBUeXBlPHVua25vd24+O1xuXHRhc3NldHM6IE5nRG9jRGVtb0Fzc2V0W10gPSBbXTtcblxuXHRjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJvb3RQYWdlOiBOZ0RvY1Jvb3RQYWdlKSB7fVxuXG5cdEBIb3N0QmluZGluZygnY2xhc3MnKVxuXHRwcm90ZWN0ZWQgZ2V0IGNsYXNzZXMoKTogc3RyaW5nIHwgc3RyaW5nW10ge1xuXHRcdHJldHVybiB0aGlzLm9wdGlvbnMuY2xhc3MgPz8gJyc7XG5cdH1cblxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLmRlbW8gPSB0aGlzLmdldERlbW8oKTtcblx0XHR0aGlzLmFzc2V0cyA9IHRoaXMuZ2V0QXNzZXRzKCk7XG5cdH1cblxuXHRwcml2YXRlIGdldERlbW8oKTogVHlwZTx1bmtub3duPiB8IHVuZGVmaW5lZCB7XG5cdFx0aWYgKHRoaXMuY29tcG9uZW50TmFtZSkge1xuXHRcdFx0cmV0dXJuIHRoaXMucm9vdFBhZ2UucGFnZT8uZGVtb3MgJiYgdGhpcy5yb290UGFnZS5wYWdlLmRlbW9zW3RoaXMuY29tcG9uZW50TmFtZV07XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHVuZGVmaW5lZDtcblx0fVxuXG5cdHByaXZhdGUgZ2V0QXNzZXRzKCk6IE5nRG9jRGVtb0Fzc2V0W10ge1xuXHRcdGlmICh0aGlzLmNvbXBvbmVudE5hbWUpIHtcblx0XHRcdHJldHVybiAoXG5cdFx0XHRcdCh0aGlzLnJvb3RQYWdlLmRlbW9Bc3NldHMgJiYgdGhpcy5yb290UGFnZS5kZW1vQXNzZXRzW3RoaXMuY29tcG9uZW50TmFtZV0pID8/XG5cdFx0XHRcdFtdXG5cdFx0XHQpLmZpbHRlcihcblx0XHRcdFx0KGFzc2V0OiBOZ0RvY0RlbW9Bc3NldCkgPT5cblx0XHRcdFx0XHQhdGhpcy5vcHRpb25zLnRhYnM/Lmxlbmd0aCB8fCBhc0FycmF5KHRoaXMub3B0aW9ucy50YWJzKS5pbmNsdWRlcyhhc3NldC50aXRsZSksXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdHJldHVybiBbXTtcblx0fVxufVxuIiwiPG5nLWRvYy1wYW5lIFtleHBhbmRlZF09XCJvcHRpb25zLmV4cGFuZGVkID8/IGZhbHNlXCI+XG5cdDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2RlQ29udGVudFwiIG5nRG9jUGFuZUJhY2s+PC9uZy1jb250YWluZXI+XG5cdDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZW1vVGVtcGxhdGVcIiBuZ0RvY1BhbmVGcm9udD48L25nLWNvbnRhaW5lcj5cbjwvbmctZG9jLXBhbmU+XG5cbjxuZy10ZW1wbGF0ZSAjZGVtb1RlbXBsYXRlPlxuXHRAaWYgKG9wdGlvbnMuZnVsbHNjcmVlblJvdXRlKSB7XG5cdDxuZy1kb2MtZnVsbHNjcmVlbi1idXR0b24gW3JvdXRlXT1cIm9wdGlvbnMuZnVsbHNjcmVlblJvdXRlIVwiPjwvbmctZG9jLWZ1bGxzY3JlZW4tYnV0dG9uPlxuXHR9IEBlbHNlIGlmIChkZW1vKSB7XG5cdDxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiZGVtbzsgaW5wdXRzOiBvcHRpb25zLmlucHV0c1wiPjwvbmctY29udGFpbmVyPlxuXHR9XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NvZGVDb250ZW50PlxuXHQ8bmctY29udGFpbmVyICpuZ0lmPVwiYXNzZXRzLmxlbmd0aCA9PT0gMVwiPlxuXHRcdDxuZy1kb2MtY29kZSAqbmdGb3I9XCJsZXQgYXNzZXQgb2YgYXNzZXRzXCIgW2h0bWxdPVwiYXNzZXQuY29kZVwiPjwvbmctZG9jLWNvZGU+XG5cdDwvbmctY29udGFpbmVyPlxuXG5cdDxuZy1jb250YWluZXIgKm5nSWY9XCJhc3NldHMubGVuZ3RoID4gMVwiPlxuXHRcdDxuZy1kb2MtdGFiLWdyb3VwIFtvcGVuZWRUYWJdPVwib3B0aW9ucy5kZWZhdWx0VGFiXCI+XG5cdFx0XHQ8bmctZG9jLXRhYlxuXHRcdFx0XHQqbmdGb3I9XCJsZXQgYXNzZXQgb2YgYXNzZXRzXCJcblx0XHRcdFx0W2lkXT1cImFzc2V0LnRpdGxlXCJcblx0XHRcdFx0W2xhYmVsXT1cImFzc2V0LnRpdGxlXCJcblx0XHRcdFx0W2NvbnRlbnRdPVwiYXNzZXRDb250ZW50XCI+XG5cdFx0XHRcdDxuZy10ZW1wbGF0ZSAjYXNzZXRDb250ZW50PlxuXHRcdFx0XHRcdDxuZy1kb2MtY29kZSBbaHRtbF09XCJhc3NldC5jb2RlXCI+PC9uZy1kb2MtY29kZT5cblx0XHRcdFx0PC9uZy10ZW1wbGF0ZT5cblx0XHRcdDwvbmctZG9jLXRhYj5cblx0XHQ8L25nLWRvYy10YWItZ3JvdXA+XG5cdDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NgTemplateOutlet, NgIf, NgFor } from '@angular/common';
|
|
1
|
+
import { NgTemplateOutlet, NgIf, NgFor, NgComponentOutlet } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
3
|
import { Component, ChangeDetectionStrategy, Input, HostBinding } from '@angular/core';
|
|
4
4
|
import * as i1 from '@ng-doc/app/classes/root-page';
|
|
@@ -6,8 +6,6 @@ import { NgDocCodeComponent } from '@ng-doc/app/components/code';
|
|
|
6
6
|
import { NgDocFullscreenButtonComponent } from '@ng-doc/app/components/fullscreen-button';
|
|
7
7
|
import { asArray } from '@ng-doc/core/helpers/as-array';
|
|
8
8
|
import { NgDocPaneComponent, NgDocPaneBackDirective, NgDocPaneFrontDirective, NgDocTabGroupComponent, NgDocTabComponent } from '@ng-doc/ui-kit';
|
|
9
|
-
import * as i2 from '@tinkoff/ng-polymorpheus';
|
|
10
|
-
import { PolymorpheusComponent, PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
11
9
|
|
|
12
10
|
class NgDocDemoPaneComponent {
|
|
13
11
|
constructor(rootPage) {
|
|
@@ -24,8 +22,7 @@ class NgDocDemoPaneComponent {
|
|
|
24
22
|
}
|
|
25
23
|
getDemo() {
|
|
26
24
|
if (this.componentName) {
|
|
27
|
-
|
|
28
|
-
return component ? new PolymorpheusComponent(component) : undefined;
|
|
25
|
+
return this.rootPage.page?.demos && this.rootPage.page.demos[this.componentName];
|
|
29
26
|
}
|
|
30
27
|
return undefined;
|
|
31
28
|
}
|
|
@@ -37,7 +34,7 @@ class NgDocDemoPaneComponent {
|
|
|
37
34
|
return [];
|
|
38
35
|
}
|
|
39
36
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NgDocDemoPaneComponent, deps: [{ token: i1.NgDocRootPage }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.0", type: NgDocDemoPaneComponent, isStandalone: true, selector: "ng-doc-demo-pane", inputs: { componentName: "componentName", options: "options" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-doc-pane [expanded]=\"options.expanded ?? false\">\n\t<ng-container *ngTemplateOutlet=\"codeContent\" ngDocPaneBack></ng-container>\n\t<ng-container *ngTemplateOutlet=\"demoTemplate\" ngDocPaneFront></ng-container>\n</ng-doc-pane>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n\n<ng-template #codeContent>\n\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t</ng-container>\n\n\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t<ng-doc-tab-group [openedTab]=\"options.defaultTab\">\n\t\t\t<ng-doc-tab\n\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t[label]=\"asset.title\"\n\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-tab>\n\t\t</ng-doc-tab-group>\n\t</ng-container>\n</ng-template>\n", styles: [":host{display:block;height:var(--ng-doc-demo-pane-height);margin:var(--ng-doc-demo-pane-margin);--ng-doc-code-margin: 0;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none;--ng-doc-smooth-resize-height: var(--ng-doc-demo-pane-height);--ng-doc-smooth-resize-max-height: 100%;--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border: none;--ng-doc-tab-group-border-radius: 0}:host ng-doc-tab-group,:host ng-doc-code,:host ng-doc-pane{width:100%;height:100%}\n"], dependencies: [{ kind: "component", type: NgDocPaneComponent, selector: "ng-doc-pane", inputs: ["expanded"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgDocPaneBackDirective, selector: "[ngDocPaneBack]" }, { kind: "directive", type: NgDocPaneFrontDirective, selector: "[ngDocPaneFront]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocCodeComponent, selector: "ng-doc-code", inputs: ["html", "copyButton", "name", "icon", "lineNumbers"] }, { kind: "component", type: NgDocTabGroupComponent, selector: "ng-doc-tab-group", inputs: ["openedTab"] }, { kind: "component", type: NgDocTabComponent, selector: "ng-doc-tab", inputs: ["label", "id", "content"] }, { kind: "component", type: NgDocFullscreenButtonComponent, selector: "ng-doc-fullscreen-button", inputs: ["route"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
41
38
|
}
|
|
42
39
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NgDocDemoPaneComponent, decorators: [{
|
|
43
40
|
type: Component,
|
|
@@ -46,14 +43,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImpor
|
|
|
46
43
|
NgTemplateOutlet,
|
|
47
44
|
NgDocPaneBackDirective,
|
|
48
45
|
NgDocPaneFrontDirective,
|
|
49
|
-
PolymorpheusModule,
|
|
50
46
|
NgIf,
|
|
51
47
|
NgFor,
|
|
52
48
|
NgDocCodeComponent,
|
|
53
49
|
NgDocTabGroupComponent,
|
|
54
50
|
NgDocTabComponent,
|
|
55
51
|
NgDocFullscreenButtonComponent,
|
|
56
|
-
|
|
52
|
+
NgComponentOutlet,
|
|
53
|
+
], template: "<ng-doc-pane [expanded]=\"options.expanded ?? false\">\n\t<ng-container *ngTemplateOutlet=\"codeContent\" ngDocPaneBack></ng-container>\n\t<ng-container *ngTemplateOutlet=\"demoTemplate\" ngDocPaneFront></ng-container>\n</ng-doc-pane>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n\n<ng-template #codeContent>\n\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t</ng-container>\n\n\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t<ng-doc-tab-group [openedTab]=\"options.defaultTab\">\n\t\t\t<ng-doc-tab\n\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t[label]=\"asset.title\"\n\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-tab>\n\t\t</ng-doc-tab-group>\n\t</ng-container>\n</ng-template>\n", styles: [":host{display:block;height:var(--ng-doc-demo-pane-height);margin:var(--ng-doc-demo-pane-margin);--ng-doc-code-margin: 0;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none;--ng-doc-smooth-resize-height: var(--ng-doc-demo-pane-height);--ng-doc-smooth-resize-max-height: 100%;--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border: none;--ng-doc-tab-group-border-radius: 0}:host ng-doc-tab-group,:host ng-doc-code,:host ng-doc-pane{width:100%;height:100%}\n"] }]
|
|
57
54
|
}], ctorParameters: () => [{ type: i1.NgDocRootPage }], propDecorators: { componentName: [{
|
|
58
55
|
type: Input
|
|
59
56
|
}], options: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-doc-app-components-demo-pane.mjs","sources":["../../../../libs/app/components/demo-pane/demo-pane.component.ts","../../../../libs/app/components/demo-pane/demo-pane.component.html","../../../../libs/app/components/demo-pane/ng-doc-app-components-demo-pane.ts"],"sourcesContent":["import { NgFor, NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n\tChangeDetectionStrategy,\n\tComponent,\n\tHostBinding,\n\tInput,\n\tOnInit,\n\tType,\n} from '@angular/core';\nimport { NgDocRootPage } from '@ng-doc/app/classes/root-page';\nimport { NgDocCodeComponent } from '@ng-doc/app/components/code';\nimport { NgDocFullscreenButtonComponent } from '@ng-doc/app/components/fullscreen-button';\nimport { NgDocDemoAsset } from '@ng-doc/app/interfaces';\nimport { asArray } from '@ng-doc/core/helpers/as-array';\nimport { NgDocDemoPaneActionOptions } from '@ng-doc/core/interfaces';\nimport {\n\tNgDocPaneBackDirective,\n\tNgDocPaneComponent,\n\tNgDocPaneFrontDirective,\n\tNgDocTabComponent,\n\tNgDocTabGroupComponent,\n} from '@ng-doc/ui-kit';\
|
|
1
|
+
{"version":3,"file":"ng-doc-app-components-demo-pane.mjs","sources":["../../../../libs/app/components/demo-pane/demo-pane.component.ts","../../../../libs/app/components/demo-pane/demo-pane.component.html","../../../../libs/app/components/demo-pane/ng-doc-app-components-demo-pane.ts"],"sourcesContent":["import { NgComponentOutlet, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n\tChangeDetectionStrategy,\n\tComponent,\n\tHostBinding,\n\tInput,\n\tOnInit,\n\tType,\n} from '@angular/core';\nimport { NgDocRootPage } from '@ng-doc/app/classes/root-page';\nimport { NgDocCodeComponent } from '@ng-doc/app/components/code';\nimport { NgDocFullscreenButtonComponent } from '@ng-doc/app/components/fullscreen-button';\nimport { NgDocDemoAsset } from '@ng-doc/app/interfaces';\nimport { asArray } from '@ng-doc/core/helpers/as-array';\nimport { NgDocDemoPaneActionOptions } from '@ng-doc/core/interfaces';\nimport {\n\tNgDocPaneBackDirective,\n\tNgDocPaneComponent,\n\tNgDocPaneFrontDirective,\n\tNgDocTabComponent,\n\tNgDocTabGroupComponent,\n} from '@ng-doc/ui-kit';\n\n@Component({\n\tselector: 'ng-doc-demo-pane',\n\ttemplateUrl: './demo-pane.component.html',\n\tstyleUrls: ['./demo-pane.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tNgDocPaneComponent,\n\t\tNgTemplateOutlet,\n\t\tNgDocPaneBackDirective,\n\t\tNgDocPaneFrontDirective,\n\t\tNgIf,\n\t\tNgFor,\n\t\tNgDocCodeComponent,\n\t\tNgDocTabGroupComponent,\n\t\tNgDocTabComponent,\n\t\tNgDocFullscreenButtonComponent,\n\t\tNgComponentOutlet,\n\t],\n})\nexport class NgDocDemoPaneComponent implements OnInit {\n\t@Input()\n\tcomponentName?: string;\n\n\t@Input()\n\toptions: NgDocDemoPaneActionOptions = {};\n\n\tdemo?: Type<unknown>;\n\tassets: NgDocDemoAsset[] = [];\n\n\tconstructor(private readonly rootPage: NgDocRootPage) {}\n\n\t@HostBinding('class')\n\tprotected get classes(): string | string[] {\n\t\treturn this.options.class ?? '';\n\t}\n\n\tngOnInit(): void {\n\t\tthis.demo = this.getDemo();\n\t\tthis.assets = this.getAssets();\n\t}\n\n\tprivate getDemo(): Type<unknown> | undefined {\n\t\tif (this.componentName) {\n\t\t\treturn this.rootPage.page?.demos && this.rootPage.page.demos[this.componentName];\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tprivate getAssets(): NgDocDemoAsset[] {\n\t\tif (this.componentName) {\n\t\t\treturn (\n\t\t\t\t(this.rootPage.demoAssets && this.rootPage.demoAssets[this.componentName]) ??\n\t\t\t\t[]\n\t\t\t).filter(\n\t\t\t\t(asset: NgDocDemoAsset) =>\n\t\t\t\t\t!this.options.tabs?.length || asArray(this.options.tabs).includes(asset.title),\n\t\t\t);\n\t\t}\n\n\t\treturn [];\n\t}\n}\n","<ng-doc-pane [expanded]=\"options.expanded ?? false\">\n\t<ng-container *ngTemplateOutlet=\"codeContent\" ngDocPaneBack></ng-container>\n\t<ng-container *ngTemplateOutlet=\"demoTemplate\" ngDocPaneFront></ng-container>\n</ng-doc-pane>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n\n<ng-template #codeContent>\n\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t</ng-container>\n\n\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t<ng-doc-tab-group [openedTab]=\"options.defaultTab\">\n\t\t\t<ng-doc-tab\n\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t[label]=\"asset.title\"\n\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t</ng-template>\n\t\t\t</ng-doc-tab>\n\t\t</ng-doc-tab-group>\n\t</ng-container>\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NgIf, NgTemplateOutlet, NgFor } from '@angular/common';
|
|
1
|
+
import { NgIf, NgTemplateOutlet, NgFor, NgComponentOutlet } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
3
|
import { Component, ChangeDetectionStrategy, Input, HostBinding } from '@angular/core';
|
|
4
4
|
import * as i1 from '@ng-doc/app/classes/root-page';
|
|
@@ -7,8 +7,6 @@ import { NgDocDemoDisplayerComponent } from '@ng-doc/app/components/demo-display
|
|
|
7
7
|
import { NgDocFullscreenButtonComponent } from '@ng-doc/app/components/fullscreen-button';
|
|
8
8
|
import { asArray } from '@ng-doc/core/helpers/as-array';
|
|
9
9
|
import { NgDocTabGroupComponent, NgDocTabComponent, NgDocIconComponent, NgDocExecutePipe } from '@ng-doc/ui-kit';
|
|
10
|
-
import * as i2 from '@tinkoff/ng-polymorpheus';
|
|
11
|
-
import { PolymorpheusComponent, PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
12
10
|
|
|
13
11
|
class NgDocDemoComponent {
|
|
14
12
|
constructor(rootPage) {
|
|
@@ -28,8 +26,7 @@ class NgDocDemoComponent {
|
|
|
28
26
|
}
|
|
29
27
|
getDemo() {
|
|
30
28
|
if (this.componentName) {
|
|
31
|
-
|
|
32
|
-
return component ? new PolymorpheusComponent(component) : undefined;
|
|
29
|
+
return this.rootPage.page?.demos && this.rootPage.page.demos[this.componentName];
|
|
33
30
|
}
|
|
34
31
|
return undefined;
|
|
35
32
|
}
|
|
@@ -41,7 +38,7 @@ class NgDocDemoComponent {
|
|
|
41
38
|
return [];
|
|
42
39
|
}
|
|
43
40
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NgDocDemoComponent, deps: [{ token: i1.NgDocRootPage }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.0", type: NgDocDemoComponent, isStandalone: true, selector: "ng-doc-demo", inputs: { componentName: "componentName", options: "options" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<ng-container *ngIf=\"options.container ?? true; else demoTemplate\">\n\t<ng-doc-demo-displayer [codeContent]=\"codeContent\" [expanded]=\"!!options.expanded\">\n\t\t<ng-container *ngTemplateOutlet=\"demoTemplate\"></ng-container>\n\t\t<ng-template #codeContent>\n\t\t\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t\t\t</ng-container>\n\n\t\t\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t\t\t<ng-doc-tab-group [openedTab]=\"(getOpenedAssetId | execute : assets) ?? options.defaultTab\">\n\t\t\t\t\t<ng-doc-tab\n\t\t\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t\t\t<ng-template #label>\n\t\t\t\t\t\t\t<ng-doc-icon [customIcon]=\"asset.icon\" *ngIf=\"asset.icon\"></ng-doc-icon>\n\t\t\t\t\t\t\t{{ asset.title }}\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t</ng-doc-tab>\n\t\t\t\t</ng-doc-tab-group>\n\t\t\t</ng-container>\n\t\t</ng-template>\n\t</ng-doc-demo-displayer>\n</ng-container>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n", styles: [":host{display:block;margin:var(--ng-doc-demo-margin);--ng-doc-tab-group-background: var(--ng-doc-code-background);--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border-radius: 0;--ng-doc-tab-group-border: none;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none}:host .ng-doc-example{padding:calc(var(--ng-doc-base-gutter) * 3)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host ng-doc-tab-group{border-top:1px solid var(--ng-doc-border-color)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocDemoDisplayerComponent, selector: "ng-doc-demo-displayer", inputs: ["codeContent", "code", "language", "container", "border", "expanded"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: NgDocCodeComponent, selector: "ng-doc-code", inputs: ["html", "copyButton", "name", "icon", "lineNumbers"] }, { kind: "component", type: NgDocTabGroupComponent, selector: "ng-doc-tab-group", inputs: ["openedTab"] }, { kind: "component", type: NgDocTabComponent, selector: "ng-doc-tab", inputs: ["label", "id", "content"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }, { kind: "pipe", type: NgDocExecutePipe, name: "execute" }, { kind: "component", type: NgDocFullscreenButtonComponent, selector: "ng-doc-fullscreen-button", inputs: ["route"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
45
42
|
}
|
|
46
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NgDocDemoComponent, decorators: [{
|
|
47
44
|
type: Component,
|
|
@@ -53,11 +50,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImpor
|
|
|
53
50
|
NgDocCodeComponent,
|
|
54
51
|
NgDocTabGroupComponent,
|
|
55
52
|
NgDocTabComponent,
|
|
56
|
-
PolymorpheusModule,
|
|
57
53
|
NgDocIconComponent,
|
|
58
54
|
NgDocExecutePipe,
|
|
59
55
|
NgDocFullscreenButtonComponent,
|
|
60
|
-
|
|
56
|
+
NgComponentOutlet,
|
|
57
|
+
], template: "<ng-container *ngIf=\"options.container ?? true; else demoTemplate\">\n\t<ng-doc-demo-displayer [codeContent]=\"codeContent\" [expanded]=\"!!options.expanded\">\n\t\t<ng-container *ngTemplateOutlet=\"demoTemplate\"></ng-container>\n\t\t<ng-template #codeContent>\n\t\t\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t\t\t</ng-container>\n\n\t\t\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t\t\t<ng-doc-tab-group [openedTab]=\"(getOpenedAssetId | execute : assets) ?? options.defaultTab\">\n\t\t\t\t\t<ng-doc-tab\n\t\t\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t\t\t<ng-template #label>\n\t\t\t\t\t\t\t<ng-doc-icon [customIcon]=\"asset.icon\" *ngIf=\"asset.icon\"></ng-doc-icon>\n\t\t\t\t\t\t\t{{ asset.title }}\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t</ng-doc-tab>\n\t\t\t\t</ng-doc-tab-group>\n\t\t\t</ng-container>\n\t\t</ng-template>\n\t</ng-doc-demo-displayer>\n</ng-container>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n", styles: [":host{display:block;margin:var(--ng-doc-demo-margin);--ng-doc-tab-group-background: var(--ng-doc-code-background);--ng-doc-tab-group-tabs-background: var(--ng-doc-base-2);--ng-doc-tab-group-border-radius: 0;--ng-doc-tab-group-border: none;--ng-doc-code-border-radius: 0;--ng-doc-code-border: none}:host .ng-doc-example{padding:calc(var(--ng-doc-base-gutter) * 3)}:host ng-doc-icon{margin-right:calc(var(--ng-doc-base-gutter) / 2)}:host ng-doc-tab-group{border-top:1px solid var(--ng-doc-border-color)}\n"] }]
|
|
61
58
|
}], ctorParameters: () => [{ type: i1.NgDocRootPage }], propDecorators: { componentName: [{
|
|
62
59
|
type: Input
|
|
63
60
|
}], options: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-doc-app-components-demo.mjs","sources":["../../../../libs/app/components/demo/demo.component.ts","../../../../libs/app/components/demo/demo.component.html","../../../../libs/app/components/demo/ng-doc-app-components-demo.ts"],"sourcesContent":["import { NgFor, NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n\tChangeDetectionStrategy,\n\tComponent,\n\tHostBinding,\n\tInput,\n\tOnInit,\n\tType,\n} from '@angular/core';\nimport { NgDocRootPage } from '@ng-doc/app/classes/root-page';\nimport { NgDocCodeComponent } from '@ng-doc/app/components/code';\nimport { NgDocDemoDisplayerComponent } from '@ng-doc/app/components/demo-displayer';\nimport { NgDocFullscreenButtonComponent } from '@ng-doc/app/components/fullscreen-button';\nimport { NgDocDemoAsset } from '@ng-doc/app/interfaces';\nimport { asArray } from '@ng-doc/core/helpers/as-array';\nimport { NgDocDemoActionOptions } from '@ng-doc/core/interfaces';\nimport {\n\tNgDocExecutePipe,\n\tNgDocIconComponent,\n\tNgDocTabComponent,\n\tNgDocTabGroupComponent,\n} from '@ng-doc/ui-kit';\
|
|
1
|
+
{"version":3,"file":"ng-doc-app-components-demo.mjs","sources":["../../../../libs/app/components/demo/demo.component.ts","../../../../libs/app/components/demo/demo.component.html","../../../../libs/app/components/demo/ng-doc-app-components-demo.ts"],"sourcesContent":["import { NgComponentOutlet, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n\tChangeDetectionStrategy,\n\tComponent,\n\tHostBinding,\n\tInput,\n\tOnInit,\n\tType,\n} from '@angular/core';\nimport { NgDocRootPage } from '@ng-doc/app/classes/root-page';\nimport { NgDocCodeComponent } from '@ng-doc/app/components/code';\nimport { NgDocDemoDisplayerComponent } from '@ng-doc/app/components/demo-displayer';\nimport { NgDocFullscreenButtonComponent } from '@ng-doc/app/components/fullscreen-button';\nimport { NgDocDemoAsset } from '@ng-doc/app/interfaces';\nimport { asArray } from '@ng-doc/core/helpers/as-array';\nimport { NgDocDemoActionOptions } from '@ng-doc/core/interfaces';\nimport {\n\tNgDocExecutePipe,\n\tNgDocIconComponent,\n\tNgDocTabComponent,\n\tNgDocTabGroupComponent,\n} from '@ng-doc/ui-kit';\n\n@Component({\n\tselector: 'ng-doc-demo',\n\ttemplateUrl: './demo.component.html',\n\tstyleUrls: ['./demo.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tNgIf,\n\t\tNgDocDemoDisplayerComponent,\n\t\tNgTemplateOutlet,\n\t\tNgFor,\n\t\tNgDocCodeComponent,\n\t\tNgDocTabGroupComponent,\n\t\tNgDocTabComponent,\n\t\tNgDocIconComponent,\n\t\tNgDocExecutePipe,\n\t\tNgDocFullscreenButtonComponent,\n\t\tNgComponentOutlet,\n\t],\n})\nexport class NgDocDemoComponent implements OnInit {\n\t@Input()\n\tcomponentName?: string;\n\n\t@Input()\n\toptions: NgDocDemoActionOptions = {};\n\n\tdemo?: Type<unknown>;\n\tassets: NgDocDemoAsset[] = [];\n\n\tconstructor(private readonly rootPage: NgDocRootPage) {}\n\n\t@HostBinding('class')\n\tprotected get classes(): string | string[] {\n\t\treturn this.options.class ?? '';\n\t}\n\n\tngOnInit(): void {\n\t\tthis.demo = this.getDemo();\n\t\tthis.assets = this.getAssets();\n\t}\n\n\tgetOpenedAssetId(assets: NgDocDemoAsset[]): string | undefined {\n\t\treturn assets.find((asset: NgDocDemoAsset) => asset.opened)?.title;\n\t}\n\n\tprivate getDemo(): Type<unknown> | undefined {\n\t\tif (this.componentName) {\n\t\t\treturn this.rootPage.page?.demos && this.rootPage.page.demos[this.componentName];\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tprivate getAssets(): NgDocDemoAsset[] {\n\t\tif (this.componentName) {\n\t\t\treturn (\n\t\t\t\t(this.rootPage.demoAssets && this.rootPage.demoAssets[this.componentName]) ??\n\t\t\t\t[]\n\t\t\t).filter(\n\t\t\t\t(asset: NgDocDemoAsset) =>\n\t\t\t\t\t!this.options.tabs?.length || asArray(this.options.tabs).includes(asset.title),\n\t\t\t);\n\t\t}\n\n\t\treturn [];\n\t}\n}\n","<ng-container *ngIf=\"options.container ?? true; else demoTemplate\">\n\t<ng-doc-demo-displayer [codeContent]=\"codeContent\" [expanded]=\"!!options.expanded\">\n\t\t<ng-container *ngTemplateOutlet=\"demoTemplate\"></ng-container>\n\t\t<ng-template #codeContent>\n\t\t\t<ng-container *ngIf=\"assets.length === 1\">\n\t\t\t\t<ng-doc-code *ngFor=\"let asset of assets\" [html]=\"asset.code\"></ng-doc-code>\n\t\t\t</ng-container>\n\n\t\t\t<ng-container *ngIf=\"assets.length > 1\">\n\t\t\t\t<ng-doc-tab-group [openedTab]=\"(getOpenedAssetId | execute : assets) ?? options.defaultTab\">\n\t\t\t\t\t<ng-doc-tab\n\t\t\t\t\t\t*ngFor=\"let asset of assets\"\n\t\t\t\t\t\t[id]=\"asset.title\"\n\t\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t\t[content]=\"assetContent\">\n\t\t\t\t\t\t<ng-template #label>\n\t\t\t\t\t\t\t<ng-doc-icon [customIcon]=\"asset.icon\" *ngIf=\"asset.icon\"></ng-doc-icon>\n\t\t\t\t\t\t\t{{ asset.title }}\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t<ng-template #assetContent>\n\t\t\t\t\t\t\t<ng-doc-code [html]=\"asset.code\"></ng-doc-code>\n\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t</ng-doc-tab>\n\t\t\t\t</ng-doc-tab-group>\n\t\t\t</ng-container>\n\t\t</ng-template>\n\t</ng-doc-demo-displayer>\n</ng-container>\n\n<ng-template #demoTemplate>\n\t@if (options.fullscreenRoute) {\n\t<ng-doc-fullscreen-button [route]=\"options.fullscreenRoute!\"></ng-doc-fullscreen-button>\n\t} @else if (demo) {\n\t<ng-container *ngComponentOutlet=\"demo; inputs: options.inputs\"></ng-container>\n\t}\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ng-doc/app",
|
|
3
|
-
"version": "17.
|
|
3
|
+
"version": "17.5.0",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": ">=17.0.0",
|
|
6
6
|
"@angular/core": ">=17.0.0",
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"tslib": "^2.6.2",
|
|
15
|
-
"@ng-doc/core": "17.
|
|
16
|
-
"@ng-doc/ui-kit": "17.
|
|
15
|
+
"@ng-doc/core": "17.5.0",
|
|
16
|
+
"@ng-doc/ui-kit": "17.5.0",
|
|
17
17
|
"@orama/plugin-match-highlight": "1.0.2",
|
|
18
18
|
"@orama/stemmers": "1.0.2",
|
|
19
19
|
"highlight.js": "11.5.1"
|
|
@@ -39,18 +39,18 @@
|
|
|
39
39
|
"esm": "./esm2022/classes/ng-doc-app-classes.mjs",
|
|
40
40
|
"default": "./fesm2022/ng-doc-app-classes.mjs"
|
|
41
41
|
},
|
|
42
|
-
"./components": {
|
|
43
|
-
"types": "./components/index.d.ts",
|
|
44
|
-
"esm2022": "./esm2022/components/ng-doc-app-components.mjs",
|
|
45
|
-
"esm": "./esm2022/components/ng-doc-app-components.mjs",
|
|
46
|
-
"default": "./fesm2022/ng-doc-app-components.mjs"
|
|
47
|
-
},
|
|
48
42
|
"./constants": {
|
|
49
43
|
"types": "./constants/index.d.ts",
|
|
50
44
|
"esm2022": "./esm2022/constants/ng-doc-app-constants.mjs",
|
|
51
45
|
"esm": "./esm2022/constants/ng-doc-app-constants.mjs",
|
|
52
46
|
"default": "./fesm2022/ng-doc-app-constants.mjs"
|
|
53
47
|
},
|
|
48
|
+
"./components": {
|
|
49
|
+
"types": "./components/index.d.ts",
|
|
50
|
+
"esm2022": "./esm2022/components/ng-doc-app-components.mjs",
|
|
51
|
+
"esm": "./esm2022/components/ng-doc-app-components.mjs",
|
|
52
|
+
"default": "./fesm2022/ng-doc-app-components.mjs"
|
|
53
|
+
},
|
|
54
54
|
"./defaults": {
|
|
55
55
|
"types": "./defaults/index.d.ts",
|
|
56
56
|
"esm2022": "./esm2022/defaults/ng-doc-app-defaults.mjs",
|