piral-ng 1.0.0-pre.2296 → 1.0.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/LICENSE +1 -1
- package/README.md +701 -42
- package/common/NgExtension.d.ts +14 -0
- package/common/ResourceUrlPipe.d.ts +10 -0
- package/common/SharedModule.d.ts +10 -0
- package/common/esm2022/NgExtension.mjs +47 -0
- package/common/esm2022/ResourceUrlPipe.mjs +23 -0
- package/common/esm2022/SharedModule.mjs +25 -0
- package/common/esm2022/piral-ng-common.mjs +5 -0
- package/common/esm2022/public_api.mjs +4 -0
- package/common/fesm2022/piral-ng-common.mjs +93 -0
- package/common/fesm2022/piral-ng-common.mjs.map +1 -0
- package/common/index.d.ts +1 -0
- package/common/package.json +35 -0
- package/common/piral-ng-common.js +3 -0
- package/common/public_api.d.ts +3 -0
- package/convert.d.ts +17 -7
- package/convert.js +17 -11
- package/esm/RoutingService.d.ts +13 -0
- package/esm/RoutingService.js +109 -0
- package/esm/RoutingService.js.map +1 -0
- package/esm/bootstrap.d.ts +6 -5
- package/esm/bootstrap.js +52 -87
- package/esm/bootstrap.js.map +1 -1
- package/esm/common/NgExtension.d.ts +11 -0
- package/esm/common/NgExtension.js +41 -0
- package/esm/common/NgExtension.js.map +1 -0
- package/esm/common/ResourceUrlPipe.d.ts +7 -0
- package/esm/common/ResourceUrlPipe.js +18 -0
- package/esm/common/ResourceUrlPipe.js.map +1 -0
- package/esm/common/SharedModule.d.ts +3 -0
- package/esm/common/SharedModule.js +21 -0
- package/esm/common/SharedModule.js.map +1 -0
- package/esm/common/public_api.d.ts +3 -0
- package/esm/common/public_api.js +4 -0
- package/esm/common/public_api.js.map +1 -0
- package/esm/converter.d.ts +10 -2
- package/esm/converter.js +35 -16
- package/esm/converter.js.map +1 -1
- package/esm/create.d.ts +2 -16
- package/esm/create.js +9 -13
- package/esm/create.js.map +1 -1
- package/esm/module.d.ts +24 -0
- package/esm/module.js +131 -0
- package/esm/module.js.map +1 -0
- package/esm/queue.d.ts +1 -1
- package/esm/queue.js +3 -3
- package/esm/queue.js.map +1 -1
- package/esm/startup.d.ts +8 -0
- package/esm/startup.js +115 -0
- package/esm/startup.js.map +1 -0
- package/esm/types.d.ts +71 -3
- package/esm/utils.d.ts +18 -0
- package/esm/utils.js +46 -0
- package/esm/utils.js.map +1 -0
- package/extend-webpack.js +107 -0
- package/lib/RoutingService.d.ts +13 -0
- package/lib/RoutingService.js +112 -0
- package/lib/RoutingService.js.map +1 -0
- package/lib/bootstrap.d.ts +6 -5
- package/lib/bootstrap.js +55 -91
- package/lib/bootstrap.js.map +1 -1
- package/lib/common/NgExtension.d.ts +11 -0
- package/lib/common/NgExtension.js +44 -0
- package/lib/common/NgExtension.js.map +1 -0
- package/lib/common/ResourceUrlPipe.d.ts +7 -0
- package/lib/common/ResourceUrlPipe.js +21 -0
- package/lib/common/ResourceUrlPipe.js.map +1 -0
- package/lib/common/SharedModule.d.ts +3 -0
- package/lib/common/SharedModule.js +24 -0
- package/lib/common/SharedModule.js.map +1 -0
- package/lib/common/public_api.d.ts +3 -0
- package/lib/common/public_api.js +7 -0
- package/lib/common/public_api.js.map +1 -0
- package/lib/converter.d.ts +10 -2
- package/lib/converter.js +36 -17
- package/lib/converter.js.map +1 -1
- package/lib/create.d.ts +2 -16
- package/lib/create.js +10 -14
- package/lib/create.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/module.d.ts +24 -0
- package/lib/module.js +139 -0
- package/lib/module.js.map +1 -0
- package/lib/queue.d.ts +1 -1
- package/lib/queue.js +3 -3
- package/lib/queue.js.map +1 -1
- package/lib/startup.d.ts +8 -0
- package/lib/startup.js +120 -0
- package/lib/startup.js.map +1 -0
- package/lib/types.d.ts +71 -3
- package/lib/utils.d.ts +18 -0
- package/lib/utils.js +55 -0
- package/lib/utils.js.map +1 -0
- package/package.json +51 -16
- package/src/RoutingService.ts +114 -0
- package/src/bootstrap.ts +57 -104
- package/src/common/NgExtension.ts +33 -0
- package/src/common/ResourceUrlPipe.ts +12 -0
- package/src/common/SharedModule.ts +18 -0
- package/src/common/index.d.ts +1 -0
- package/src/common/ng-package.json +11 -0
- package/src/common/package.json +19 -0
- package/src/common/piral-ng-common.js +3 -0
- package/src/common/public_api.ts +3 -0
- package/src/converter.ts +58 -20
- package/src/create.ts +6 -23
- package/src/module.ts +163 -0
- package/src/queue.ts +1 -1
- package/src/startup.ts +148 -0
- package/src/types.ts +73 -3
- package/src/utils.ts +69 -0
- package/convert.ts +0 -16
- package/esm/extension.d.ts +0 -1
- package/esm/extension.js +0 -41
- package/esm/extension.js.map +0 -1
- package/lib/extension.d.ts +0 -1
- package/lib/extension.js +0 -45
- package/lib/extension.js.map +0 -1
- package/src/extension.ts +0 -29
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { PiletApi } from 'piral-core';
|
|
2
|
+
import { ElementRef, OnChanges } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgExtension implements OnChanges {
|
|
5
|
+
private elRef;
|
|
6
|
+
private piral;
|
|
7
|
+
name: string | undefined;
|
|
8
|
+
params: object | undefined;
|
|
9
|
+
constructor(elRef: ElementRef<HTMLElement>, piral: PiletApi);
|
|
10
|
+
ngOnChanges(): void;
|
|
11
|
+
ngAfterContentInit(): void;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgExtension, never>;
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgExtension, "extension-component", never, { "name": { "alias": "name"; "required": false; }; "params": { "alias": "params"; "required": false; }; }, {}, never, never, false, never>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { PiletApi } from 'piral-core';
|
|
2
|
+
import { PipeTransform } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class ResourceUrlPipe implements PipeTransform {
|
|
5
|
+
private piral;
|
|
6
|
+
constructor(piral: PiletApi);
|
|
7
|
+
transform(value: string): string;
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ResourceUrlPipe, never>;
|
|
9
|
+
static ɵpipe: i0.ɵɵPipeDeclaration<ResourceUrlPipe, "resourceUrl", false>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./NgExtension";
|
|
3
|
+
import * as i2 from "./ResourceUrlPipe";
|
|
4
|
+
import * as i3 from "@angular/common";
|
|
5
|
+
export declare class SharedModule {
|
|
6
|
+
static props: {};
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SharedModule, never>;
|
|
8
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedModule, [typeof i1.NgExtension, typeof i2.ResourceUrlPipe], [typeof i3.CommonModule], [typeof i1.NgExtension, typeof i2.ResourceUrlPipe]>;
|
|
9
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<SharedModule>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Component, Input, Inject } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
const selector = 'extension-component';
|
|
4
|
+
class NgExtension {
|
|
5
|
+
elRef;
|
|
6
|
+
piral;
|
|
7
|
+
name;
|
|
8
|
+
params;
|
|
9
|
+
constructor(elRef, piral) {
|
|
10
|
+
this.elRef = elRef;
|
|
11
|
+
this.piral = piral;
|
|
12
|
+
}
|
|
13
|
+
ngOnChanges() {
|
|
14
|
+
this.elRef.nativeElement.dispatchEvent(new CustomEvent('extension-props-changed', {
|
|
15
|
+
detail: {
|
|
16
|
+
name: this.name,
|
|
17
|
+
params: this.params,
|
|
18
|
+
},
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
21
|
+
ngAfterContentInit() {
|
|
22
|
+
this.piral.renderHtmlExtension(this.elRef.nativeElement, {
|
|
23
|
+
name: this.name,
|
|
24
|
+
params: this.params,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgExtension, deps: [{ token: i0.ElementRef }, { token: 'piral' }], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: NgExtension, selector: "extension-component", inputs: { name: "name", params: "params" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
|
|
29
|
+
}
|
|
30
|
+
export { NgExtension };
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgExtension, decorators: [{
|
|
32
|
+
type: Component,
|
|
33
|
+
args: [{
|
|
34
|
+
selector,
|
|
35
|
+
template: '',
|
|
36
|
+
}]
|
|
37
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
38
|
+
type: Inject,
|
|
39
|
+
args: ['piral']
|
|
40
|
+
}] }]; }, propDecorators: { name: [{
|
|
41
|
+
type: Input,
|
|
42
|
+
args: ['name']
|
|
43
|
+
}], params: [{
|
|
44
|
+
type: Input,
|
|
45
|
+
args: ['params']
|
|
46
|
+
}] } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmdFeHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbW9uL05nRXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLE1BQU0sRUFBYSxNQUFNLGVBQWUsQ0FBQzs7QUFFaEYsTUFBTSxRQUFRLEdBQUcscUJBQXFCLENBQUM7QUFFdkMsTUFJYSxXQUFXO0lBSUY7SUFBeUQ7SUFIdkQsSUFBSSxDQUFxQjtJQUN2QixNQUFNLENBQXFCO0lBRW5ELFlBQW9CLEtBQThCLEVBQTJCLEtBQWU7UUFBeEUsVUFBSyxHQUFMLEtBQUssQ0FBeUI7UUFBMkIsVUFBSyxHQUFMLEtBQUssQ0FBVTtJQUFHLENBQUM7SUFFaEcsV0FBVztRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FDcEMsSUFBSSxXQUFXLENBQUMseUJBQXlCLEVBQUU7WUFDekMsTUFBTSxFQUFFO2dCQUNOLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtnQkFDZixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07YUFDcEI7U0FDRixDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRTtZQUN2RCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0F0QlUsV0FBVyw0Q0FJc0MsT0FBTzsyRkFKeEQsV0FBVyw0SEFGWixFQUFFOztTQUVELFdBQVc7MkZBQVgsV0FBVztrQkFKdkIsU0FBUzttQkFBQztvQkFDVCxRQUFRO29CQUNSLFFBQVEsRUFBRSxFQUFFO2lCQUNiOzswQkFLc0QsTUFBTTsyQkFBQyxPQUFPOzRDQUg3QyxJQUFJO3NCQUF6QixLQUFLO3VCQUFDLE1BQU07Z0JBQ1csTUFBTTtzQkFBN0IsS0FBSzt1QkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQaWxldEFwaSB9IGZyb20gJ3BpcmFsLWNvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgSW5qZWN0LCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuY29uc3Qgc2VsZWN0b3IgPSAnZXh0ZW5zaW9uLWNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcixcbiAgdGVtcGxhdGU6ICcnLFxufSlcbmV4cG9ydCBjbGFzcyBOZ0V4dGVuc2lvbiBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgnbmFtZScpIHB1YmxpYyBuYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgncGFyYW1zJykgcHVibGljIHBhcmFtczogb2JqZWN0IHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LCBASW5qZWN0KCdwaXJhbCcpIHByaXZhdGUgcGlyYWw6IFBpbGV0QXBpKSB7fVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KFxuICAgICAgbmV3IEN1c3RvbUV2ZW50KCdleHRlbnNpb24tcHJvcHMtY2hhbmdlZCcsIHtcbiAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgICAgIHBhcmFtczogdGhpcy5wYXJhbXMsXG4gICAgICAgIH0sXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMucGlyYWwucmVuZGVySHRtbEV4dGVuc2lvbih0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgIHBhcmFtczogdGhpcy5wYXJhbXMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Inject, Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
class ResourceUrlPipe {
|
|
4
|
+
piral;
|
|
5
|
+
constructor(piral) {
|
|
6
|
+
this.piral = piral;
|
|
7
|
+
}
|
|
8
|
+
transform(value) {
|
|
9
|
+
const { basePath = '/' } = this.piral.meta;
|
|
10
|
+
return basePath + value;
|
|
11
|
+
}
|
|
12
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ResourceUrlPipe, deps: [{ token: 'piral' }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
13
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.0.1", ngImport: i0, type: ResourceUrlPipe, name: "resourceUrl" });
|
|
14
|
+
}
|
|
15
|
+
export { ResourceUrlPipe };
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ResourceUrlPipe, decorators: [{
|
|
17
|
+
type: Pipe,
|
|
18
|
+
args: [{ name: 'resourceUrl' }]
|
|
19
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
20
|
+
type: Inject,
|
|
21
|
+
args: ['piral']
|
|
22
|
+
}] }]; } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzb3VyY2VVcmxQaXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1vbi9SZXNvdXJjZVVybFBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUU1RCxNQUNhLGVBQWU7SUFDVztJQUFyQyxZQUFxQyxLQUFlO1FBQWYsVUFBSyxHQUFMLEtBQUssQ0FBVTtJQUFHLENBQUM7SUFFeEQsU0FBUyxDQUFDLEtBQWE7UUFDckIsTUFBTSxFQUFFLFFBQVEsR0FBRyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztRQUMzQyxPQUFPLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDMUIsQ0FBQzt1R0FOVSxlQUFlLGtCQUNOLE9BQU87cUdBRGhCLGVBQWU7O1NBQWYsZUFBZTsyRkFBZixlQUFlO2tCQUQzQixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRTs7MEJBRWQsTUFBTTsyQkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQaWxldEFwaSB9IGZyb20gJ3BpcmFsLWNvcmUnO1xuaW1wb3J0IHsgSW5qZWN0LCBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHsgbmFtZTogJ3Jlc291cmNlVXJsJyB9KVxuZXhwb3J0IGNsYXNzIFJlc291cmNlVXJsUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBjb25zdHJ1Y3RvcihASW5qZWN0KCdwaXJhbCcpIHByaXZhdGUgcGlyYWw6IFBpbGV0QXBpKSB7fVxuXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCB7IGJhc2VQYXRoID0gJy8nIH0gPSB0aGlzLnBpcmFsLm1ldGE7XG4gICAgcmV0dXJuIGJhc2VQYXRoICsgdmFsdWU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { NgExtension } from './NgExtension';
|
|
4
|
+
import { ResourceUrlPipe } from './ResourceUrlPipe';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
const declarationsDef = [NgExtension, ResourceUrlPipe];
|
|
7
|
+
const exportsDef = [NgExtension, ResourceUrlPipe];
|
|
8
|
+
const importsDef = [CommonModule];
|
|
9
|
+
class SharedModule {
|
|
10
|
+
static props = {};
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
12
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.1", ngImport: i0, type: SharedModule, declarations: [NgExtension, ResourceUrlPipe], imports: [CommonModule], exports: [NgExtension, ResourceUrlPipe] });
|
|
13
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SharedModule, imports: [importsDef] });
|
|
14
|
+
}
|
|
15
|
+
export { SharedModule };
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SharedModule, decorators: [{
|
|
17
|
+
type: NgModule,
|
|
18
|
+
args: [{
|
|
19
|
+
declarations: declarationsDef,
|
|
20
|
+
providers: [],
|
|
21
|
+
imports: importsDef,
|
|
22
|
+
exports: exportsDef,
|
|
23
|
+
}]
|
|
24
|
+
}] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2hhcmVkTW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1vbi9TaGFyZWRNb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRXBELE1BQU0sZUFBZSxHQUFHLENBQUMsV0FBVyxFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBQ3ZELE1BQU0sVUFBVSxHQUFHLENBQUMsV0FBVyxFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBQ2xELE1BQU0sVUFBVSxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7QUFFbEMsTUFNYSxZQUFZO0lBQ3ZCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO3VHQURQLFlBQVk7d0dBQVosWUFBWSxpQkFWQSxXQUFXLEVBQUUsZUFBZSxhQUVqQyxZQUFZLGFBRFosV0FBVyxFQUFFLGVBQWU7d0dBU25DLFlBQVksWUFIZCxVQUFVOztTQUdSLFlBQVk7MkZBQVosWUFBWTtrQkFOeEIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsZUFBZTtvQkFDN0IsU0FBUyxFQUFFLEVBQUU7b0JBQ2IsT0FBTyxFQUFFLFVBQVU7b0JBQ25CLE9BQU8sRUFBRSxVQUFVO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdFeHRlbnNpb24gfSBmcm9tICcuL05nRXh0ZW5zaW9uJztcbmltcG9ydCB7IFJlc291cmNlVXJsUGlwZSB9IGZyb20gJy4vUmVzb3VyY2VVcmxQaXBlJztcblxuY29uc3QgZGVjbGFyYXRpb25zRGVmID0gW05nRXh0ZW5zaW9uLCBSZXNvdXJjZVVybFBpcGVdO1xuY29uc3QgZXhwb3J0c0RlZiA9IFtOZ0V4dGVuc2lvbiwgUmVzb3VyY2VVcmxQaXBlXTtcbmNvbnN0IGltcG9ydHNEZWYgPSBbQ29tbW9uTW9kdWxlXTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBkZWNsYXJhdGlvbnNEZWYsXG4gIHByb3ZpZGVyczogW10sXG4gIGltcG9ydHM6IGltcG9ydHNEZWYsXG4gIGV4cG9ydHM6IGV4cG9ydHNEZWYsXG59KVxuZXhwb3J0IGNsYXNzIFNoYXJlZE1vZHVsZSB7XG4gIHN0YXRpYyBwcm9wcyA9IHt9O1xufVxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public_api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlyYWwtbmctY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1vbi9waXJhbC1uZy1jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './SharedModule';
|
|
2
|
+
export * from './NgExtension';
|
|
3
|
+
export * from './ResourceUrlPipe';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tb24vcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL1NoYXJlZE1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL05nRXh0ZW5zaW9uJztcbmV4cG9ydCAqIGZyb20gJy4vUmVzb3VyY2VVcmxQaXBlJztcbiJdfQ==
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { Component, Inject, Input, Pipe, NgModule } from '@angular/core';
|
|
4
|
+
|
|
5
|
+
const selector = 'extension-component';
|
|
6
|
+
class NgExtension {
|
|
7
|
+
elRef;
|
|
8
|
+
piral;
|
|
9
|
+
name;
|
|
10
|
+
params;
|
|
11
|
+
constructor(elRef, piral) {
|
|
12
|
+
this.elRef = elRef;
|
|
13
|
+
this.piral = piral;
|
|
14
|
+
}
|
|
15
|
+
ngOnChanges() {
|
|
16
|
+
this.elRef.nativeElement.dispatchEvent(new CustomEvent('extension-props-changed', {
|
|
17
|
+
detail: {
|
|
18
|
+
name: this.name,
|
|
19
|
+
params: this.params,
|
|
20
|
+
},
|
|
21
|
+
}));
|
|
22
|
+
}
|
|
23
|
+
ngAfterContentInit() {
|
|
24
|
+
this.piral.renderHtmlExtension(this.elRef.nativeElement, {
|
|
25
|
+
name: this.name,
|
|
26
|
+
params: this.params,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgExtension, deps: [{ token: i0.ElementRef }, { token: 'piral' }], target: i0.ɵɵFactoryTarget.Component });
|
|
30
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: NgExtension, selector: "extension-component", inputs: { name: "name", params: "params" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
|
|
31
|
+
}
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgExtension, decorators: [{
|
|
33
|
+
type: Component,
|
|
34
|
+
args: [{
|
|
35
|
+
selector,
|
|
36
|
+
template: '',
|
|
37
|
+
}]
|
|
38
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
39
|
+
type: Inject,
|
|
40
|
+
args: ['piral']
|
|
41
|
+
}] }]; }, propDecorators: { name: [{
|
|
42
|
+
type: Input,
|
|
43
|
+
args: ['name']
|
|
44
|
+
}], params: [{
|
|
45
|
+
type: Input,
|
|
46
|
+
args: ['params']
|
|
47
|
+
}] } });
|
|
48
|
+
|
|
49
|
+
class ResourceUrlPipe {
|
|
50
|
+
piral;
|
|
51
|
+
constructor(piral) {
|
|
52
|
+
this.piral = piral;
|
|
53
|
+
}
|
|
54
|
+
transform(value) {
|
|
55
|
+
const { basePath = '/' } = this.piral.meta;
|
|
56
|
+
return basePath + value;
|
|
57
|
+
}
|
|
58
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ResourceUrlPipe, deps: [{ token: 'piral' }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
59
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.0.1", ngImport: i0, type: ResourceUrlPipe, name: "resourceUrl" });
|
|
60
|
+
}
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ResourceUrlPipe, decorators: [{
|
|
62
|
+
type: Pipe,
|
|
63
|
+
args: [{ name: 'resourceUrl' }]
|
|
64
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
65
|
+
type: Inject,
|
|
66
|
+
args: ['piral']
|
|
67
|
+
}] }]; } });
|
|
68
|
+
|
|
69
|
+
const declarationsDef = [NgExtension, ResourceUrlPipe];
|
|
70
|
+
const exportsDef = [NgExtension, ResourceUrlPipe];
|
|
71
|
+
const importsDef = [CommonModule];
|
|
72
|
+
class SharedModule {
|
|
73
|
+
static props = {};
|
|
74
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
75
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.1", ngImport: i0, type: SharedModule, declarations: [NgExtension, ResourceUrlPipe], imports: [CommonModule], exports: [NgExtension, ResourceUrlPipe] });
|
|
76
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SharedModule, imports: [importsDef] });
|
|
77
|
+
}
|
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SharedModule, decorators: [{
|
|
79
|
+
type: NgModule,
|
|
80
|
+
args: [{
|
|
81
|
+
declarations: declarationsDef,
|
|
82
|
+
providers: [],
|
|
83
|
+
imports: importsDef,
|
|
84
|
+
exports: exportsDef,
|
|
85
|
+
}]
|
|
86
|
+
}] });
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Generated bundle index. Do not edit.
|
|
90
|
+
*/
|
|
91
|
+
|
|
92
|
+
export { NgExtension, ResourceUrlPipe, SharedModule };
|
|
93
|
+
//# sourceMappingURL=piral-ng-common.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"piral-ng-common.mjs","sources":["../../src/common/NgExtension.ts","../../src/common/ResourceUrlPipe.ts","../../src/common/SharedModule.ts","../../src/common/piral-ng-common.ts"],"sourcesContent":["import type { PiletApi } from 'piral-core';\nimport { Component, ElementRef, Input, Inject, OnChanges } from '@angular/core';\n\nconst selector = 'extension-component';\n\n@Component({\n selector,\n template: '',\n})\nexport class NgExtension implements OnChanges {\n @Input('name') public name: string | undefined;\n @Input('params') public params: object | undefined;\n\n constructor(private elRef: ElementRef<HTMLElement>, @Inject('piral') private piral: PiletApi) {}\n\n ngOnChanges() {\n this.elRef.nativeElement.dispatchEvent(\n new CustomEvent('extension-props-changed', {\n detail: {\n name: this.name,\n params: this.params,\n },\n }),\n );\n }\n\n ngAfterContentInit() {\n this.piral.renderHtmlExtension(this.elRef.nativeElement, {\n name: this.name,\n params: this.params,\n });\n }\n}\n","import type { PiletApi } from 'piral-core';\nimport { Inject, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'resourceUrl' })\nexport class ResourceUrlPipe implements PipeTransform {\n constructor(@Inject('piral') private piral: PiletApi) {}\n\n transform(value: string): string {\n const { basePath = '/' } = this.piral.meta;\n return basePath + value;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NgExtension } from './NgExtension';\nimport { ResourceUrlPipe } from './ResourceUrlPipe';\n\nconst declarationsDef = [NgExtension, ResourceUrlPipe];\nconst exportsDef = [NgExtension, ResourceUrlPipe];\nconst importsDef = [CommonModule];\n\n@NgModule({\n declarations: declarationsDef,\n providers: [],\n imports: importsDef,\n exports: exportsDef,\n})\nexport class SharedModule {\n static props = {};\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './public_api';
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "piral-ng-common",
|
|
3
|
+
"version": "0.15.0",
|
|
4
|
+
"description": "Common module for piral-ng.",
|
|
5
|
+
"keywords": [],
|
|
6
|
+
"author": "smapiot",
|
|
7
|
+
"main": "piral-ng-common.js",
|
|
8
|
+
"homepage": "https://piral.io",
|
|
9
|
+
"license": "MIT",
|
|
10
|
+
"repository": {
|
|
11
|
+
"type": "git",
|
|
12
|
+
"url": "git+https://github.com/smapiot/piral.git"
|
|
13
|
+
},
|
|
14
|
+
"bugs": {
|
|
15
|
+
"url": "https://github.com/smapiot/piral/issues"
|
|
16
|
+
},
|
|
17
|
+
"peerDependencies": {},
|
|
18
|
+
"module": "fesm2022/piral-ng-common.mjs",
|
|
19
|
+
"typings": "index.d.ts",
|
|
20
|
+
"exports": {
|
|
21
|
+
"./package.json": {
|
|
22
|
+
"default": "./package.json"
|
|
23
|
+
},
|
|
24
|
+
".": {
|
|
25
|
+
"types": "./index.d.ts",
|
|
26
|
+
"esm2022": "./esm2022/piral-ng-common.mjs",
|
|
27
|
+
"esm": "./esm2022/piral-ng-common.mjs",
|
|
28
|
+
"default": "./fesm2022/piral-ng-common.mjs"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"sideEffects": false,
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"tslib": "^2.3.0"
|
|
34
|
+
}
|
|
35
|
+
}
|
package/convert.d.ts
CHANGED
|
@@ -1,9 +1,19 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { createConverter } from './esm/converter';
|
|
2
|
+
export interface HtmlComponent<TProps> {
|
|
3
|
+
component: {
|
|
4
|
+
mount(element: HTMLElement, props: TProps, ctx: any, locals: any): void;
|
|
5
|
+
update?(element: HTMLElement, props: TProps, ctx: any, locals: any): void;
|
|
6
|
+
unmount?(element: HTMLElement, locals: any): void;
|
|
7
|
+
};
|
|
8
|
+
type: 'html';
|
|
9
|
+
}
|
|
4
10
|
export interface NgConverter {
|
|
5
|
-
(...params: Parameters<typeof
|
|
11
|
+
(...params: Parameters<ReturnType<typeof createConverter>>): HtmlComponent<any>;
|
|
6
12
|
}
|
|
7
|
-
export declare
|
|
8
|
-
|
|
9
|
-
|
|
13
|
+
export declare function createNgConverter(...params: Parameters<typeof createConverter>): {
|
|
14
|
+
from: NgConverter;
|
|
15
|
+
Extension: any;
|
|
16
|
+
defineModule: import("./esm/types").NgModuleDefiner;
|
|
17
|
+
};
|
|
18
|
+
declare const fromNg: NgConverter, NgExtension: any, defineNgModule: import("./esm/types").NgModuleDefiner;
|
|
19
|
+
export { fromNg, NgExtension, defineNgModule };
|
package/convert.js
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import { createConverter } from './esm/converter';
|
|
2
|
+
export function createNgConverter() {
|
|
3
|
+
var params = [];
|
|
4
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
5
|
+
params[_i] = arguments[_i];
|
|
6
|
+
}
|
|
7
|
+
var convert = createConverter.apply(void 0, params);
|
|
8
|
+
var Extension = convert.Extension;
|
|
9
|
+
var defineModule = convert.defineModule;
|
|
10
|
+
var from = function (component) { return ({
|
|
11
|
+
type: 'html',
|
|
12
|
+
component: convert(component),
|
|
13
|
+
}); };
|
|
14
|
+
return { from: from, Extension: Extension, defineModule: defineModule };
|
|
15
|
+
}
|
|
16
|
+
var _a = createNgConverter(), fromNg = _a.from, NgExtension = _a.Extension, defineNgModule = _a.defineModule;
|
|
17
|
+
export { fromNg, NgExtension, defineNgModule };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ComponentContext } from 'piral-core';
|
|
2
|
+
import { NgZone, OnDestroy } from '@angular/core';
|
|
3
|
+
import { Router } from '@angular/router';
|
|
4
|
+
export declare class RoutingService implements OnDestroy {
|
|
5
|
+
context: ComponentContext;
|
|
6
|
+
private router;
|
|
7
|
+
private zone;
|
|
8
|
+
private dispose;
|
|
9
|
+
private subscription;
|
|
10
|
+
private invalidRoutes;
|
|
11
|
+
constructor(context: ComponentContext, router: Router, zone: NgZone);
|
|
12
|
+
ngOnDestroy(): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { __decorate, __metadata, __param } from "tslib";
|
|
2
|
+
import { Inject, Injectable, NgZone, Optional } from '@angular/core';
|
|
3
|
+
import { NavigationError, Router } from '@angular/router';
|
|
4
|
+
import { BrowserPlatformLocation as ɵBrowserPlatformLocation } from '@angular/common';
|
|
5
|
+
let skipNavigation = false;
|
|
6
|
+
const noop = function () { };
|
|
7
|
+
const navigateByUrl = Router.prototype.navigateByUrl;
|
|
8
|
+
// deactivates the usual platform behavior; all these operations are performed via the RoutingService
|
|
9
|
+
// to avoid any conflict, e.g., double-booking URL changes in React and Angular
|
|
10
|
+
ɵBrowserPlatformLocation.prototype.pushState = noop;
|
|
11
|
+
ɵBrowserPlatformLocation.prototype.replaceState = noop;
|
|
12
|
+
ɵBrowserPlatformLocation.prototype.forward = noop;
|
|
13
|
+
ɵBrowserPlatformLocation.prototype.back = noop;
|
|
14
|
+
ɵBrowserPlatformLocation.prototype.historyGo = noop;
|
|
15
|
+
// required to detect / react to hidden URL change (see #554 for details)
|
|
16
|
+
Router.prototype.navigateByUrl = function (url, extras) {
|
|
17
|
+
var _a;
|
|
18
|
+
skipNavigation = (_a = extras === null || extras === void 0 ? void 0 : extras.skipLocationChange) !== null && _a !== void 0 ? _a : false;
|
|
19
|
+
const result = navigateByUrl.call(this, url, extras);
|
|
20
|
+
skipNavigation = false;
|
|
21
|
+
return result;
|
|
22
|
+
};
|
|
23
|
+
function normalize(url) {
|
|
24
|
+
const search = url.indexOf('?');
|
|
25
|
+
const hash = url.indexOf('#');
|
|
26
|
+
if (search !== -1 || hash !== -1) {
|
|
27
|
+
if (search === -1) {
|
|
28
|
+
return url.substring(0, hash);
|
|
29
|
+
}
|
|
30
|
+
else if (hash === -1) {
|
|
31
|
+
return url.substring(0, search);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
return url.substring(0, Math.min(search, hash));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return url;
|
|
38
|
+
}
|
|
39
|
+
let RoutingService = class RoutingService {
|
|
40
|
+
constructor(context, router, zone) {
|
|
41
|
+
this.context = context;
|
|
42
|
+
this.router = router;
|
|
43
|
+
this.zone = zone;
|
|
44
|
+
this.invalidRoutes = [];
|
|
45
|
+
if (this.router) {
|
|
46
|
+
this.router.errorHandler = (error) => {
|
|
47
|
+
if (error.message.match('Cannot match any routes')) {
|
|
48
|
+
// ignore this special error
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
throw error;
|
|
52
|
+
};
|
|
53
|
+
const skipIds = [];
|
|
54
|
+
const nav = this.context.navigation;
|
|
55
|
+
this.dispose = nav.listen(({ location }) => {
|
|
56
|
+
const path = location.pathname;
|
|
57
|
+
if (!this.invalidRoutes.includes(path)) {
|
|
58
|
+
const url = `${path}${location.search}${location.hash}`;
|
|
59
|
+
this.zone.run(() => navigateByUrl.call(this.router, url));
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
this.subscription = this.router.events.subscribe((e) => {
|
|
63
|
+
if (e instanceof NavigationError) {
|
|
64
|
+
const routerUrl = e.url;
|
|
65
|
+
const path = normalize(routerUrl);
|
|
66
|
+
const locationUrl = nav.url;
|
|
67
|
+
if (!this.invalidRoutes.includes(path)) {
|
|
68
|
+
this.invalidRoutes.push(path);
|
|
69
|
+
}
|
|
70
|
+
if (routerUrl !== locationUrl) {
|
|
71
|
+
nav.push(routerUrl);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
else if (e.type === 0 && skipNavigation) {
|
|
75
|
+
skipIds.push(e.id);
|
|
76
|
+
}
|
|
77
|
+
else if (e.type === 15) {
|
|
78
|
+
const index = skipIds.indexOf(e.routerEvent.id);
|
|
79
|
+
if (index === -1) {
|
|
80
|
+
// consistency check to avoid #535 and other Angular-specific issues
|
|
81
|
+
const locationUrl = nav.url;
|
|
82
|
+
const routerUrl = e.routerEvent.url;
|
|
83
|
+
if (routerUrl !== locationUrl) {
|
|
84
|
+
nav.push(routerUrl);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
skipIds.splice(index, 1);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
ngOnDestroy() {
|
|
95
|
+
var _a, _b;
|
|
96
|
+
(_a = this.dispose) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
97
|
+
(_b = this.subscription) === null || _b === void 0 ? void 0 : _b.unsubscribe();
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
RoutingService = __decorate([
|
|
101
|
+
Injectable(),
|
|
102
|
+
__param(0, Inject('Context')),
|
|
103
|
+
__param(1, Optional()),
|
|
104
|
+
__param(2, Optional()),
|
|
105
|
+
__metadata("design:paramtypes", [Object, Router,
|
|
106
|
+
NgZone])
|
|
107
|
+
], RoutingService);
|
|
108
|
+
export { RoutingService };
|
|
109
|
+
//# sourceMappingURL=RoutingService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RoutingService.js","sourceRoot":"","sources":["../src/RoutingService.ts"],"names":[],"mappings":"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"}
|
package/esm/bootstrap.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export declare function
|
|
1
|
+
import type { BaseComponentProps, ComponentContext, Disposable, PiletApi } from 'piral-core';
|
|
2
|
+
import type { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import type { Type } from '@angular/core';
|
|
4
|
+
import type { NgLazyType, PrepareBootstrapResult } from './types';
|
|
5
|
+
export declare function prepareBootstrap(moduleOrComponent: Type<any> | NgLazyType, piral: PiletApi): Promise<PrepareBootstrapResult>;
|
|
6
|
+
export declare function bootstrap<TProps extends BaseComponentProps>(result: PrepareBootstrapResult, node: HTMLElement, props: BehaviorSubject<TProps>, context: ComponentContext): Promise<Disposable>;
|