@microzord/angular 2.0.0 → 2.2.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.
Files changed (51) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +12 -9
  3. package/child/index.d.ts +2 -1
  4. package/child/index.d.ts.map +1 -0
  5. package/child/microzord-angular-child.d.ts.map +1 -0
  6. package/child/src/create-app.d.ts +4 -2
  7. package/child/src/create-app.d.ts.map +1 -0
  8. package/child/src/enable-prod-mode.d.ts +1 -0
  9. package/child/src/enable-prod-mode.d.ts.map +1 -0
  10. package/esm2022/child/index.mjs +2 -2
  11. package/esm2022/child/src/create-app.mjs +7 -6
  12. package/esm2022/child/src/enable-prod-mode.mjs +1 -1
  13. package/esm2022/index.mjs +2 -2
  14. package/esm2022/lib/microzord-app/microzord-app.directive.mjs +12 -12
  15. package/esm2022/lib/microzord-app/microzord-app.module.mjs +5 -5
  16. package/esm2022/lib/microzord-host.module.mjs +11 -11
  17. package/esm2022/lib/microzord-module/microzord-ng-compiler.service.mjs +6 -6
  18. package/esm2022/lib/microzord-module/microzord-ng-module.directive.mjs +10 -10
  19. package/esm2022/lib/microzord-module/microzord-ng-module.module.mjs +5 -5
  20. package/esm2022/lib/operators/complete.mjs +1 -1
  21. package/esm2022/lib/services/registry.service.mjs +5 -5
  22. package/esm2022/lib/tokens/microzord-apps.mjs +3 -3
  23. package/esm2022/lib/types/ng-module.mjs +1 -1
  24. package/fesm2022/microzord-angular-child.mjs +19 -17
  25. package/fesm2022/microzord-angular-child.mjs.map +1 -1
  26. package/fesm2022/microzord-angular.mjs +50 -50
  27. package/fesm2022/microzord-angular.mjs.map +1 -1
  28. package/index.d.ts +2 -1
  29. package/index.d.ts.map +1 -0
  30. package/lib/microzord-app/microzord-app.directive.d.ts +6 -5
  31. package/lib/microzord-app/microzord-app.directive.d.ts.map +1 -0
  32. package/lib/microzord-app/microzord-app.module.d.ts +1 -0
  33. package/lib/microzord-app/microzord-app.module.d.ts.map +1 -0
  34. package/lib/microzord-host.module.d.ts +2 -1
  35. package/lib/microzord-host.module.d.ts.map +1 -0
  36. package/lib/microzord-module/microzord-ng-compiler.service.d.ts +5 -4
  37. package/lib/microzord-module/microzord-ng-compiler.service.d.ts.map +1 -0
  38. package/lib/microzord-module/microzord-ng-module.directive.d.ts +7 -6
  39. package/lib/microzord-module/microzord-ng-module.directive.d.ts.map +1 -0
  40. package/lib/microzord-module/microzord-ng-module.module.d.ts +1 -0
  41. package/lib/microzord-module/microzord-ng-module.module.d.ts.map +1 -0
  42. package/lib/operators/complete.d.ts +1 -0
  43. package/lib/operators/complete.d.ts.map +1 -0
  44. package/lib/services/registry.service.d.ts +1 -0
  45. package/lib/services/registry.service.d.ts.map +1 -0
  46. package/lib/tokens/microzord-apps.d.ts +4 -3
  47. package/lib/tokens/microzord-apps.d.ts.map +1 -0
  48. package/lib/types/ng-module.d.ts +3 -2
  49. package/lib/types/ng-module.d.ts.map +1 -0
  50. package/microzord-angular.d.ts.map +1 -0
  51. package/package.json +22 -21
@@ -1,7 +1,7 @@
1
1
  import { Directive, ErrorHandler, Input, NgModuleRef, NgZone, Output, } from '@angular/core';
2
+ import { loadEntity } from '@microzord/core';
2
3
  import { Observable, of, Subject } from 'rxjs';
3
4
  import { catchError, map, shareReplay, switchMap, takeUntil, tap } from 'rxjs/operators';
4
- import { loadEntity } from '@microzord/core';
5
5
  import { complete } from '../operators/complete';
6
6
  import { MicrozordNgCompilerService } from './microzord-ng-compiler.service';
7
7
  import * as i0 from "@angular/core";
@@ -16,16 +16,16 @@ export class MicrozordNgModuleDirective {
16
16
  this.errorHandler = errorHandler;
17
17
  this.name$ = new Subject();
18
18
  this.destroy$ = new Subject();
19
- this.module = this.name$.pipe(tap(() => NgZone.assertNotInAngularZone()), switchMap(name => name
20
- ? this.loadModuleAndBootstrap(name).pipe(catchError(error => {
19
+ this.module = this.name$.pipe(tap(() => NgZone.assertNotInAngularZone()), switchMap((name) => name
20
+ ? this.loadModuleAndBootstrap(name).pipe(catchError((error) => {
21
21
  this.errorHandler.handleError(error);
22
22
  return of(null);
23
23
  }))
24
- : of(null)), map(componentRef => componentRef?.injector.get(NgModuleRef) ?? null), shareReplay(1), takeUntil(this.destroy$));
24
+ : of(null)), map((componentRef) => componentRef?.injector.get(NgModuleRef) ?? null), shareReplay(1), takeUntil(this.destroy$));
25
25
  this.module.subscribe();
26
26
  }
27
27
  loadModuleAndBootstrap(name) {
28
- return loadEntity(name).pipe(switchMap(Module => this.mzNgCompiler.createEntryPointFromModule(Module)), complete(componentRef => this.destroyComponentAndModule(componentRef)));
28
+ return loadEntity(name).pipe(switchMap(async (Module) => this.mzNgCompiler.createEntryPointFromModule(Module)), complete((componentRef) => this.destroyComponentAndModule(componentRef)));
29
29
  }
30
30
  destroyComponentAndModule(componentRef) {
31
31
  componentRef.destroy();
@@ -35,19 +35,19 @@ export class MicrozordNgModuleDirective {
35
35
  this.destroy$.next();
36
36
  this.destroy$.complete();
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleDirective, deps: [{ token: i0.NgZone }, { token: i1.MicrozordNgCompilerService }, { token: i0.ErrorHandler }], target: i0.ɵɵFactoryTarget.Directive }); }
39
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.8", type: MicrozordNgModuleDirective, selector: "[microzordNgModule]", inputs: { name: ["microzordNgModule", "name"] }, outputs: { module: "module" }, providers: [MicrozordNgCompilerService], ngImport: i0 }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleDirective, deps: [{ token: i0.NgZone }, { token: i1.MicrozordNgCompilerService }, { token: i0.ErrorHandler }], target: i0.ɵɵFactoryTarget.Directive }); }
39
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: MicrozordNgModuleDirective, selector: "[microzordNgModule]", inputs: { name: ["microzordNgModule", "name"] }, outputs: { module: "module" }, providers: [MicrozordNgCompilerService], ngImport: i0 }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleDirective, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleDirective, decorators: [{
42
42
  type: Directive,
43
43
  args: [{
44
44
  selector: '[microzordNgModule]',
45
45
  providers: [MicrozordNgCompilerService],
46
46
  }]
47
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.MicrozordNgCompilerService }, { type: i0.ErrorHandler }]; }, propDecorators: { module: [{
47
+ }], ctorParameters: () => [{ type: i0.NgZone }, { type: i1.MicrozordNgCompilerService }, { type: i0.ErrorHandler }], propDecorators: { module: [{
48
48
  type: Output
49
49
  }], name: [{
50
50
  type: Input,
51
51
  args: ['microzordNgModule']
52
52
  }] } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm96b3JkLW5nLW1vZHVsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9taWNyb3pvcmQtbW9kdWxlL21pY3Jvem9yZC1uZy1tb2R1bGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxXQUFXLEVBQ1gsTUFBTSxFQUVOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsVUFBVSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkYsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRTNDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQyxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBTTNFLE1BQU0sT0FBTywwQkFBMEI7SUFPckMsSUFDSSxJQUFJLENBQUMsVUFBeUI7UUFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxZQUNVLE1BQWMsRUFDZCxZQUF3QyxFQUN4QyxZQUEwQjtRQUYxQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsaUJBQVksR0FBWixZQUFZLENBQTRCO1FBQ3hDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBZDVCLFVBQUssR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQUNyQyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQWVyQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUMzQixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHNCQUFzQixFQUFFLENBQUMsRUFDMUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ2YsSUFBSTtZQUNGLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUNwQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNyQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQixDQUFDLENBQUMsQ0FDSDtZQUNILENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQ2IsRUFDRCxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLENBQUMsRUFDcEUsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUNkLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQ3pCLENBQUM7UUFFRixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxJQUFZO1FBQ3pDLE9BQU8sVUFBVSxDQUF5QixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQ2xELFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsMEJBQTBCLENBQUMsTUFBTSxDQUFDLENBQUMsRUFDekUsUUFBUSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQ3ZFLENBQUM7SUFDSixDQUFDO0lBRU8seUJBQXlCLENBQy9CLFlBQTZCO1FBRTdCLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN2QixZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQXREVSwwQkFBMEI7a0dBQTFCLDBCQUEwQiw4SEFGMUIsQ0FBQywwQkFBMEIsQ0FBQzs7MkZBRTVCLDBCQUEwQjtrQkFKdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixTQUFTLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDeEM7aUtBTUMsTUFBTTtzQkFETCxNQUFNO2dCQUlILElBQUk7c0JBRFAsS0FBSzt1QkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnRSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRXJyb3JIYW5kbGVyLFxuICBJbnB1dCxcbiAgTmdNb2R1bGVSZWYsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NhdGNoRXJyb3IsIG1hcCwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7bG9hZEVudGl0eX0gZnJvbSAnQG1pY3Jvem9yZC9jb3JlJztcbmltcG9ydCB7RW50cnlQb2ludCwgTWljcm96b3JkTmdNb2R1bGV9IGZyb20gJy4uL3R5cGVzL25nLW1vZHVsZSc7XG5pbXBvcnQge2NvbXBsZXRlfSBmcm9tICcuLi9vcGVyYXRvcnMvY29tcGxldGUnO1xuaW1wb3J0IHtNaWNyb3pvcmROZ0NvbXBpbGVyU2VydmljZX0gZnJvbSAnLi9taWNyb3pvcmQtbmctY29tcGlsZXIuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttaWNyb3pvcmROZ01vZHVsZV0nLFxuICBwcm92aWRlcnM6IFtNaWNyb3pvcmROZ0NvbXBpbGVyU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIE1pY3Jvem9yZE5nTW9kdWxlRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBuYW1lJCA9IG5ldyBTdWJqZWN0PHN0cmluZyB8IG51bGw+KCk7XG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICBtb2R1bGU6IE9ic2VydmFibGU8TmdNb2R1bGVSZWY8YW55PiB8IG51bGw+O1xuXG4gIEBJbnB1dCgnbWljcm96b3JkTmdNb2R1bGUnKVxuICBzZXQgbmFtZShtb2R1bGVOYW1lOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gdGhpcy5uYW1lJC5uZXh0KG1vZHVsZU5hbWUpKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSBtek5nQ29tcGlsZXI6IE1pY3Jvem9yZE5nQ29tcGlsZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyOiBFcnJvckhhbmRsZXIsXG4gICkge1xuICAgIHRoaXMubW9kdWxlID0gdGhpcy5uYW1lJC5waXBlKFxuICAgICAgdGFwKCgpID0+IE5nWm9uZS5hc3NlcnROb3RJbkFuZ3VsYXJab25lKCkpLFxuICAgICAgc3dpdGNoTWFwKG5hbWUgPT5cbiAgICAgICAgbmFtZVxuICAgICAgICAgID8gdGhpcy5sb2FkTW9kdWxlQW5kQm9vdHN0cmFwKG5hbWUpLnBpcGUoXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUVycm9yKGVycm9yKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIDogb2YobnVsbCksXG4gICAgICApLFxuICAgICAgbWFwKGNvbXBvbmVudFJlZiA9PiBjb21wb25lbnRSZWY/LmluamVjdG9yLmdldChOZ01vZHVsZVJlZikgPz8gbnVsbCksXG4gICAgICBzaGFyZVJlcGxheSgxKSxcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICApO1xuXG4gICAgdGhpcy5tb2R1bGUuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGxvYWRNb2R1bGVBbmRCb290c3RyYXAobmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxDb21wb25lbnRSZWY8RW50cnlQb2ludD4+IHtcbiAgICByZXR1cm4gbG9hZEVudGl0eTxhbnksIE1pY3Jvem9yZE5nTW9kdWxlPihuYW1lKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKE1vZHVsZSA9PiB0aGlzLm16TmdDb21waWxlci5jcmVhdGVFbnRyeVBvaW50RnJvbU1vZHVsZShNb2R1bGUpKSxcbiAgICAgIGNvbXBsZXRlKGNvbXBvbmVudFJlZiA9PiB0aGlzLmRlc3Ryb3lDb21wb25lbnRBbmRNb2R1bGUoY29tcG9uZW50UmVmKSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveUNvbXBvbmVudEFuZE1vZHVsZTxUIGV4dGVuZHMgRW50cnlQb2ludCA9IEVudHJ5UG9pbnQ+KFxuICAgIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFQ+LFxuICApIHtcbiAgICBjb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgIGNvbXBvbmVudFJlZi5pbmplY3Rvci5nZXQoTmdNb2R1bGVSZWYpLmRlc3Ryb3koKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm96b3JkLW5nLW1vZHVsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9taWNyb3pvcmQtbW9kdWxlL21pY3Jvem9yZC1uZy1tb2R1bGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxXQUFXLEVBQ1gsTUFBTSxFQUVOLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFDLFVBQVUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBQyxVQUFVLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXZGLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUUvQyxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBTTNFLE1BQU0sT0FBTywwQkFBMEI7SUFPbkMsSUFDVyxJQUFJLENBQUMsVUFBeUI7UUFDckMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxZQUNxQixNQUFjLEVBQ2QsWUFBd0MsRUFDeEMsWUFBMEI7UUFGMUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGlCQUFZLEdBQVosWUFBWSxDQUE0QjtRQUN4QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQWQ5QixVQUFLLEdBQUcsSUFBSSxPQUFPLEVBQWlCLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFlNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDekIsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLEVBQzFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ2YsSUFBSTtZQUNBLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUNsQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBRXJDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxDQUNMO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDakIsRUFDRCxHQUFHLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUN0RSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQ2QsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDM0IsQ0FBQztRQUVGLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLHNCQUFzQixDQUFDLElBQVk7UUFDdkMsT0FBTyxVQUFVLENBQTZCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FDcEQsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUN2QixJQUFJLENBQUMsWUFBWSxDQUFDLDBCQUEwQixDQUFDLE1BQU0sQ0FBQyxDQUN2RCxFQUNELFFBQVEsQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQzNFLENBQUM7SUFDTixDQUFDO0lBRU8seUJBQXlCLENBQzdCLFlBQTZCO1FBRTdCLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN2QixZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNyRCxDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM3QixDQUFDOzhHQXpEUSwwQkFBMEI7a0dBQTFCLDBCQUEwQiw4SEFGeEIsQ0FBQywwQkFBMEIsQ0FBQzs7MkZBRTlCLDBCQUEwQjtrQkFKdEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixTQUFTLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDMUM7K0lBTVUsTUFBTTtzQkFEWixNQUFNO2dCQUlJLElBQUk7c0JBRGQsS0FBSzt1QkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudFJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRXJyb3JIYW5kbGVyLFxuICAgIElucHV0LFxuICAgIE5nTW9kdWxlUmVmLFxuICAgIE5nWm9uZSxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7bG9hZEVudGl0eX0gZnJvbSAnQG1pY3Jvem9yZC9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgb2YsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCBtYXAsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7Y29tcGxldGV9IGZyb20gJy4uL29wZXJhdG9ycy9jb21wbGV0ZSc7XG5pbXBvcnQge0VudHJ5UG9pbnQsIE1pY3Jvem9yZE5nTW9kdWxlfSBmcm9tICcuLi90eXBlcy9uZy1tb2R1bGUnO1xuaW1wb3J0IHtNaWNyb3pvcmROZ0NvbXBpbGVyU2VydmljZX0gZnJvbSAnLi9taWNyb3pvcmQtbmctY29tcGlsZXIuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW21pY3Jvem9yZE5nTW9kdWxlXScsXG4gICAgcHJvdmlkZXJzOiBbTWljcm96b3JkTmdDb21waWxlclNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBNaWNyb3pvcmROZ01vZHVsZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBuYW1lJCA9IG5ldyBTdWJqZWN0PHN0cmluZyB8IG51bGw+KCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgbW9kdWxlOiBPYnNlcnZhYmxlPE5nTW9kdWxlUmVmPHVua25vd24+IHwgbnVsbD47XG5cbiAgICBASW5wdXQoJ21pY3Jvem9yZE5nTW9kdWxlJylcbiAgICBwdWJsaWMgc2V0IG5hbWUobW9kdWxlTmFtZTogc3RyaW5nIHwgbnVsbCkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB0aGlzLm5hbWUkLm5leHQobW9kdWxlTmFtZSkpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG16TmdDb21waWxlcjogTWljcm96b3JkTmdDb21waWxlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZXJyb3JIYW5kbGVyOiBFcnJvckhhbmRsZXIsXG4gICAgKSB7XG4gICAgICAgIHRoaXMubW9kdWxlID0gdGhpcy5uYW1lJC5waXBlKFxuICAgICAgICAgICAgdGFwKCgpID0+IE5nWm9uZS5hc3NlcnROb3RJbkFuZ3VsYXJab25lKCkpLFxuICAgICAgICAgICAgc3dpdGNoTWFwKChuYW1lKSA9PlxuICAgICAgICAgICAgICAgIG5hbWVcbiAgICAgICAgICAgICAgICAgICAgPyB0aGlzLmxvYWRNb2R1bGVBbmRCb290c3RyYXAobmFtZSkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUVycm9yKGVycm9yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIDogb2YobnVsbCksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgbWFwKChjb21wb25lbnRSZWYpID0+IGNvbXBvbmVudFJlZj8uaW5qZWN0b3IuZ2V0KE5nTW9kdWxlUmVmKSA/PyBudWxsKSxcbiAgICAgICAgICAgIHNoYXJlUmVwbGF5KDEpLFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMubW9kdWxlLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbG9hZE1vZHVsZUFuZEJvb3RzdHJhcChuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPENvbXBvbmVudFJlZjxFbnRyeVBvaW50Pj4ge1xuICAgICAgICByZXR1cm4gbG9hZEVudGl0eTx1bmtub3duLCBNaWNyb3pvcmROZ01vZHVsZT4obmFtZSkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcChhc3luYyAoTW9kdWxlKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMubXpOZ0NvbXBpbGVyLmNyZWF0ZUVudHJ5UG9pbnRGcm9tTW9kdWxlKE1vZHVsZSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgY29tcGxldGUoKGNvbXBvbmVudFJlZikgPT4gdGhpcy5kZXN0cm95Q29tcG9uZW50QW5kTW9kdWxlKGNvbXBvbmVudFJlZikpLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVzdHJveUNvbXBvbmVudEFuZE1vZHVsZTxUIGV4dGVuZHMgRW50cnlQb2ludCA9IEVudHJ5UG9pbnQ+KFxuICAgICAgICBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxUPixcbiAgICApIHtcbiAgICAgICAgY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluamVjdG9yLmdldChOZ01vZHVsZVJlZikuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB9XG59XG4iXX0=
@@ -2,15 +2,15 @@ import { NgModule } from '@angular/core';
2
2
  import { MicrozordNgModuleDirective } from './microzord-ng-module.directive';
3
3
  import * as i0 from "@angular/core";
4
4
  export class MicrozordNgModuleModule {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleModule, declarations: [MicrozordNgModuleDirective], exports: [MicrozordNgModuleDirective] }); }
7
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleModule }); }
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleModule, declarations: [MicrozordNgModuleDirective], exports: [MicrozordNgModuleDirective] }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleModule }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleModule, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  declarations: [MicrozordNgModuleDirective],
13
13
  exports: [MicrozordNgModuleDirective],
14
14
  }]
15
15
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm96b3JkLW5nLW1vZHVsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9taWNyb3pvcmQtbW9kdWxlL21pY3Jvem9yZC1uZy1tb2R1bGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0saUNBQWlDLENBQUM7O0FBTTNFLE1BQU0sT0FBTyx1QkFBdUI7OEdBQXZCLHVCQUF1QjsrR0FBdkIsdUJBQXVCLGlCQUhuQiwwQkFBMEIsYUFDL0IsMEJBQTBCOytHQUV6Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQzFDLE9BQU8sRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUN0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNaWNyb3pvcmROZ01vZHVsZURpcmVjdGl2ZX0gZnJvbSAnLi9taWNyb3pvcmQtbmctbW9kdWxlLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW01pY3Jvem9yZE5nTW9kdWxlRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW01pY3Jvem9yZE5nTW9kdWxlRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgTWljcm96b3JkTmdNb2R1bGVNb2R1bGUge31cbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm96b3JkLW5nLW1vZHVsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9taWNyb3pvcmQtbW9kdWxlL21pY3Jvem9yZC1uZy1tb2R1bGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0saUNBQWlDLENBQUM7O0FBTTNFLE1BQU0sT0FBTyx1QkFBdUI7OEdBQXZCLHVCQUF1QjsrR0FBdkIsdUJBQXVCLGlCQUhqQiwwQkFBMEIsYUFDL0IsMEJBQTBCOytHQUUzQix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQzFDLE9BQU8sRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUN4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge01pY3Jvem9yZE5nTW9kdWxlRGlyZWN0aXZlfSBmcm9tICcuL21pY3Jvem9yZC1uZy1tb2R1bGUuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtNaWNyb3pvcmROZ01vZHVsZURpcmVjdGl2ZV0sXG4gICAgZXhwb3J0czogW01pY3Jvem9yZE5nTW9kdWxlRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgTWljcm96b3JkTmdNb2R1bGVNb2R1bGUge31cbiJdfQ==
@@ -3,4 +3,4 @@ import { finalize, startWith, switchMap } from 'rxjs/operators';
3
3
  export const complete = (fn) => switchMap((value) => NEVER.pipe(startWith(value), finalize(() => {
4
4
  fn(value);
5
5
  })));
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGxldGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9vcGVyYXRvcnMvY29tcGxldGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLEVBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5RCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBSSxFQUFzQixFQUFFLEVBQUUsQ0FDcEQsU0FBUyxDQUFDLENBQUMsS0FBUSxFQUFFLEVBQUUsQ0FDckIsS0FBSyxDQUFDLElBQUksQ0FDUixTQUFTLENBQUMsS0FBSyxDQUFDLEVBQ2hCLFFBQVEsQ0FBQyxHQUFHLEVBQUU7SUFDWixFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDWixDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05FVkVSfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmluYWxpemUsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBjb25zdCBjb21wbGV0ZSA9IDxUPihmbjogKHZhbHVlOiBUKSA9PiB2b2lkKSA9PlxuICBzd2l0Y2hNYXAoKHZhbHVlOiBUKSA9PlxuICAgIE5FVkVSLnBpcGUoXG4gICAgICBzdGFydFdpdGgodmFsdWUpLFxuICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICBmbih2YWx1ZSk7XG4gICAgICB9KSxcbiAgICApLFxuICApO1xuIl19
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGxldGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9vcGVyYXRvcnMvY29tcGxldGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLEVBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5RCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBSSxFQUFzQixFQUFFLEVBQUUsQ0FDbEQsU0FBUyxDQUFDLENBQUMsS0FBUSxFQUFFLEVBQUUsQ0FDbkIsS0FBSyxDQUFDLElBQUksQ0FDTixTQUFTLENBQUMsS0FBSyxDQUFDLEVBQ2hCLFFBQVEsQ0FBQyxHQUFHLEVBQUU7SUFDVixFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDZCxDQUFDLENBQUMsQ0FDTCxDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05FVkVSfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmluYWxpemUsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBjb25zdCBjb21wbGV0ZSA9IDxUPihmbjogKHZhbHVlOiBUKSA9PiB2b2lkKSA9PlxuICAgIHN3aXRjaE1hcCgodmFsdWU6IFQpID0+XG4gICAgICAgIE5FVkVSLnBpcGUoXG4gICAgICAgICAgICBzdGFydFdpdGgodmFsdWUpLFxuICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGZuKHZhbHVlKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApLFxuICAgICk7XG4iXX0=
@@ -3,18 +3,18 @@ import { registerEntity } from '@microzord/core';
3
3
  import * as i0 from "@angular/core";
4
4
  export class RegistryService {
5
5
  registerMany(apps) {
6
- apps.forEach(app => this.register(app));
6
+ apps.forEach((app) => this.register(app));
7
7
  }
8
8
  register(options) {
9
9
  registerEntity(options);
10
10
  }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: RegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
12
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: RegistryService, providedIn: 'root' }); }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: RegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
12
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: RegistryService, providedIn: 'root' }); }
13
13
  }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: RegistryService, decorators: [{
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: RegistryService, decorators: [{
15
15
  type: Injectable,
16
16
  args: [{
17
17
  providedIn: 'root',
18
18
  }]
19
19
  }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL3NlcnZpY2VzL3JlZ2lzdHJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQXlCLGNBQWMsRUFBQyxNQUFNLGlCQUFpQixDQUFDOztBQU12RSxNQUFNLE9BQU8sZUFBZTtJQUMxQixZQUFZLENBQ1YsSUFBeUU7UUFFekUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsUUFBUSxDQUFDLE9BQTZEO1FBQ3BFLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQixDQUFDOzhHQVRVLGVBQWU7a0hBQWYsZUFBZSxjQUZkLE1BQU07OzJGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QXBwUmVnaXN0cmF0aW9uT3B0aW9ucywgcmVnaXN0ZXJFbnRpdHl9IGZyb20gJ0BtaWNyb3pvcmQvY29yZSc7XG5pbXBvcnQge05nTW9kdWxlUmVnaXN0cmF0aW9uT3B0aW9uc30gZnJvbSAnLi4vdHlwZXMvbmctbW9kdWxlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFJlZ2lzdHJ5U2VydmljZSB7XG4gIHJlZ2lzdGVyTWFueShcbiAgICBhcHBzOiBSZWFkb25seUFycmF5PEFwcFJlZ2lzdHJhdGlvbk9wdGlvbnMgfCBOZ01vZHVsZVJlZ2lzdHJhdGlvbk9wdGlvbnM+LFxuICApIHtcbiAgICBhcHBzLmZvckVhY2goYXBwID0+IHRoaXMucmVnaXN0ZXIoYXBwKSk7XG4gIH1cblxuICByZWdpc3RlcihvcHRpb25zOiBBcHBSZWdpc3RyYXRpb25PcHRpb25zIHwgTmdNb2R1bGVSZWdpc3RyYXRpb25PcHRpb25zKSB7XG4gICAgcmVnaXN0ZXJFbnRpdHkob3B0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL3NlcnZpY2VzL3JlZ2lzdHJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQXlCLGNBQWMsRUFBQyxNQUFNLGlCQUFpQixDQUFDOztBQU92RSxNQUFNLE9BQU8sZUFBZTtJQUNqQixZQUFZLENBQ2YsSUFBeUU7UUFFekUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxRQUFRLENBQUMsT0FBNkQ7UUFDekUsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVCLENBQUM7OEdBVFEsZUFBZTtrSEFBZixlQUFlLGNBRlosTUFBTTs7MkZBRVQsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBcHBSZWdpc3RyYXRpb25PcHRpb25zLCByZWdpc3RlckVudGl0eX0gZnJvbSAnQG1pY3Jvem9yZC9jb3JlJztcblxuaW1wb3J0IHtOZ01vZHVsZVJlZ2lzdHJhdGlvbk9wdGlvbnN9IGZyb20gJy4uL3R5cGVzL25nLW1vZHVsZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFJlZ2lzdHJ5U2VydmljZSB7XG4gICAgcHVibGljIHJlZ2lzdGVyTWFueShcbiAgICAgICAgYXBwczogUmVhZG9ubHlBcnJheTxBcHBSZWdpc3RyYXRpb25PcHRpb25zIHwgTmdNb2R1bGVSZWdpc3RyYXRpb25PcHRpb25zPixcbiAgICApIHtcbiAgICAgICAgYXBwcy5mb3JFYWNoKChhcHApID0+IHRoaXMucmVnaXN0ZXIoYXBwKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyKG9wdGlvbnM6IEFwcFJlZ2lzdHJhdGlvbk9wdGlvbnMgfCBOZ01vZHVsZVJlZ2lzdHJhdGlvbk9wdGlvbnMpIHtcbiAgICAgICAgcmVnaXN0ZXJFbnRpdHkob3B0aW9ucyk7XG4gICAgfVxufVxuIl19
@@ -1,8 +1,8 @@
1
1
  import { InjectionToken } from '@angular/core';
2
- export const MICROZORD_APPS = new InjectionToken('Microzord apps', {
2
+ export const MICROZORD_APPS = new InjectionToken('[MICROZORD_APPS]: Microzord apps', {
3
3
  factory: () => [],
4
4
  });
5
- export const MICROZORD_NG_MODULES = new InjectionToken('Microzord Angular modules', {
5
+ export const MICROZORD_NG_MODULES = new InjectionToken('[MICROZORD_NG_MODULES]: Microzord Angular modules', {
6
6
  factory: () => [],
7
7
  });
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm96b3JkLWFwcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi90b2tlbnMvbWljcm96b3JkLWFwcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUc3QyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQzlDLGdCQUFnQixFQUNoQjtJQUNFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFO0NBQ2xCLENBQ0YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUNwRCwyQkFBMkIsRUFDM0I7SUFDRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRTtDQUNsQixDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FwcFJlZ2lzdHJhdGlvbk9wdGlvbnN9IGZyb20gJ0BtaWNyb3pvcmQvY29yZSc7XG5pbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdNb2R1bGVSZWdpc3RyYXRpb25PcHRpb25zfSBmcm9tICcuLi90eXBlcy9uZy1tb2R1bGUnO1xuXG5leHBvcnQgY29uc3QgTUlDUk9aT1JEX0FQUFMgPSBuZXcgSW5qZWN0aW9uVG9rZW48QXBwUmVnaXN0cmF0aW9uT3B0aW9uc1tdW10+KFxuICAnTWljcm96b3JkIGFwcHMnLFxuICB7XG4gICAgZmFjdG9yeTogKCkgPT4gW10sXG4gIH0sXG4pO1xuXG5leHBvcnQgY29uc3QgTUlDUk9aT1JEX05HX01PRFVMRVMgPSBuZXcgSW5qZWN0aW9uVG9rZW48TmdNb2R1bGVSZWdpc3RyYXRpb25PcHRpb25zW11bXT4oXG4gICdNaWNyb3pvcmQgQW5ndWxhciBtb2R1bGVzJyxcbiAge1xuICAgIGZhY3Rvcnk6ICgpID0+IFtdLFxuICB9LFxuKTtcbiJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm96b3JkLWFwcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi90b2tlbnMvbWljcm96b3JkLWFwcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUs3QyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQzVDLGtDQUFrQyxFQUNsQztJQUNJLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFO0NBQ3BCLENBQ0osQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUNsRCxtREFBbUQsRUFDbkQ7SUFDSSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRTtDQUNwQixDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHtBcHBSZWdpc3RyYXRpb25PcHRpb25zfSBmcm9tICdAbWljcm96b3JkL2NvcmUnO1xuXG5pbXBvcnQgdHlwZSB7TmdNb2R1bGVSZWdpc3RyYXRpb25PcHRpb25zfSBmcm9tICcuLi90eXBlcy9uZy1tb2R1bGUnO1xuXG5leHBvcnQgY29uc3QgTUlDUk9aT1JEX0FQUFMgPSBuZXcgSW5qZWN0aW9uVG9rZW48QXBwUmVnaXN0cmF0aW9uT3B0aW9uc1tdW10+KFxuICAgICdbTUlDUk9aT1JEX0FQUFNdOiBNaWNyb3pvcmQgYXBwcycsXG4gICAge1xuICAgICAgICBmYWN0b3J5OiAoKSA9PiBbXSxcbiAgICB9LFxuKTtcblxuZXhwb3J0IGNvbnN0IE1JQ1JPWk9SRF9OR19NT0RVTEVTID0gbmV3IEluamVjdGlvblRva2VuPE5nTW9kdWxlUmVnaXN0cmF0aW9uT3B0aW9uc1tdW10+KFxuICAgICdbTUlDUk9aT1JEX05HX01PRFVMRVNdOiBNaWNyb3pvcmQgQW5ndWxhciBtb2R1bGVzJyxcbiAgICB7XG4gICAgICAgIGZhY3Rvcnk6ICgpID0+IFtdLFxuICAgIH0sXG4pO1xuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctbW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy9saWIvdHlwZXMvbmctbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFbnRpdHlSZWdpc3RyYXRpb25PcHRpb25zfSBmcm9tICdAbWljcm96b3JkL2NvcmUnO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZVxuZXhwb3J0IGludGVyZmFjZSBFbnRyeVBvaW50IHtcbiAgLy9cbn1cblxuZXhwb3J0IGludGVyZmFjZSBNaWNyb3pvcmROZ01vZHVsZTxUIGV4dGVuZHMgRW50cnlQb2ludCA9IEVudHJ5UG9pbnQ+IHtcbiAgZ2V0RW50cnlQb2ludCgpOiBUeXBlPFQ+O1xufVxuXG5leHBvcnQgdHlwZSBOZ01vZHVsZVJlZ2lzdHJhdGlvbk9wdGlvbnMgPSBFbnRpdHlSZWdpc3RyYXRpb25PcHRpb25zPFxuICBUeXBlPE1pY3Jvem9yZE5nTW9kdWxlPlxuPjtcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctbW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy9saWIvdHlwZXMvbmctbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7VHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7RW50aXR5UmVnaXN0cmF0aW9uT3B0aW9uc30gZnJvbSAnQG1pY3Jvem9yZC9jb3JlJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1pbnRlcmZhY2VcbmV4cG9ydCBpbnRlcmZhY2UgRW50cnlQb2ludCB7XG4gICAgLy9cbn1cblxuZXhwb3J0IGludGVyZmFjZSBNaWNyb3pvcmROZ01vZHVsZTxUIGV4dGVuZHMgRW50cnlQb2ludCA9IEVudHJ5UG9pbnQ+IHtcbiAgICBnZXRFbnRyeVBvaW50KCk6IFR5cGU8VD47XG59XG5cbmV4cG9ydCB0eXBlIE5nTW9kdWxlUmVnaXN0cmF0aW9uT3B0aW9ucyA9IEVudGl0eVJlZ2lzdHJhdGlvbk9wdGlvbnM8XG4gICAgVHlwZTxNaWNyb3pvcmROZ01vZHVsZT5cbj47XG4iXX0=
@@ -1,21 +1,9 @@
1
- import { enableProdMode as enableProdMode$1, InjectionToken, InjectFlags } from '@angular/core';
2
- import { Application, MicrozordLifecycleEvent } from '@microzord/core';
1
+ import { InjectionToken, InjectFlags, enableProdMode as enableProdMode$1 } from '@angular/core';
3
2
  import { Router } from '@angular/router';
3
+ import { Application, MicrozordLifecycleEvent } from '@microzord/core';
4
4
 
5
- /**
6
- * Disable Angular's development mode safely
7
- */
8
- function enableProdMode() {
9
- try {
10
- enableProdMode$1();
11
- }
12
- catch (e) {
13
- //
14
- }
15
- }
16
-
17
- const APP_NAME = new InjectionToken('App name');
18
- const ROOT_SELECTOR = new InjectionToken('Root selector');
5
+ const APP_NAME = new InjectionToken('[APP_NAME]: App name');
6
+ const ROOT_SELECTOR = new InjectionToken('[ROOT_SELECTOR]: Root selector');
19
7
  // todo: очень грубая имплементация
20
8
  function createApp(bootstrapFn, rootSelector) {
21
9
  // todo: не хватает имплементации хуков, сообщений и навигации
@@ -34,7 +22,9 @@ function createApp(bootstrapFn, rootSelector) {
34
22
  this.emitHook(MicrozordLifecycleEvent.destroyed());
35
23
  }
36
24
  async bootstrap(container, props) {
37
- const containerElement = typeof container === 'string' ? document.querySelector(container) : container;
25
+ const containerElement = typeof container === 'string'
26
+ ? document.querySelector(container)
27
+ : container;
38
28
  if (!containerElement) {
39
29
  throw new Error(`No container found for ${container}`);
40
30
  }
@@ -57,6 +47,18 @@ function createApp(bootstrapFn, rootSelector) {
57
47
  return AngularApp;
58
48
  }
59
49
 
50
+ /**
51
+ * Disable Angular's development mode safely
52
+ */
53
+ function enableProdMode() {
54
+ try {
55
+ enableProdMode$1();
56
+ }
57
+ catch (e) {
58
+ //
59
+ }
60
+ }
61
+
60
62
  /**
61
63
  * Generated bundle index. Do not edit.
62
64
  */
@@ -1 +1 @@
1
- {"version":3,"file":"microzord-angular-child.mjs","sources":["../../../../libs/angular/child/src/enable-prod-mode.ts","../../../../libs/angular/child/src/create-app.ts","../../../../libs/angular/child/microzord-angular-child.ts"],"sourcesContent":["import {enableProdMode as angularEnableProdMode} from '@angular/core';\n\n/**\n * Disable Angular's development mode safely\n */\nexport function enableProdMode() {\n try {\n angularEnableProdMode();\n } catch (e) {\n //\n }\n}\n","import {CompilerOptions, InjectFlags, InjectionToken, NgModuleRef} from '@angular/core';\nimport {Application, ApplicationConstructor} from '@microzord/core';\nimport {Router} from '@angular/router';\nimport {MicrozordLifecycleEvent, MicrozordMessageEvent} from '@microzord/core';\n\nexport const APP_NAME = new InjectionToken<string>('App name');\nexport const ROOT_SELECTOR = new InjectionToken<string>('Root selector');\n\n// todo: очень грубая имплементация\nexport function createApp<\n TModule,\n Props extends Record<string, unknown> = Record<string, unknown>,\n>(\n bootstrapFn: (props?: CompilerOptions) => Promise<NgModuleRef<TModule>>,\n rootSelector: string,\n): ApplicationConstructor {\n // todo: не хватает имплементации хуков, сообщений и навигации\n class AngularApp<T extends Record<string, unknown> = Props> extends Application<T> {\n private router: Router | null = null;\n private ngModule: NgModuleRef<TModule> | null = null;\n\n destroy() {\n super.destroy();\n\n if (this.ngModule) {\n this.ngModule.destroy();\n this.ngModule = null;\n }\n\n this.emitHook(MicrozordLifecycleEvent.destroyed());\n }\n\n async bootstrap(container: string | Element, props?: T): Promise<void> {\n const containerElement =\n typeof container === 'string' ? document.querySelector(container) : container;\n\n if (!containerElement) {\n throw new Error(`No container found for ${container}`);\n }\n\n const rootElement = document.createElement(rootSelector);\n\n containerElement.appendChild(rootElement);\n\n this.ngModule = await bootstrapFn(props);\n this.router = this.ngModule.injector.get(Router, null, InjectFlags.Optional);\n\n await super.bootstrap(container, props);\n\n this.emitHook(MicrozordLifecycleEvent.bootstrapped());\n }\n\n async navigate(url: string, _props: unknown | undefined): Promise<void> {\n if (this.router) {\n await this.router.navigateByUrl(url);\n }\n }\n\n async send(_msg: string | MicrozordMessageEvent): Promise<void> {\n //\n }\n }\n\n return AngularApp;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["angularEnableProdMode"],"mappings":";;;;AAEA;;AAEG;SACa,cAAc,GAAA;IAC5B,IAAI;AACF,QAAAA,gBAAqB,EAAE,CAAC;AACzB,KAAA;AAAC,IAAA,OAAO,CAAC,EAAE;;AAEX,KAAA;AACH;;MCNa,QAAQ,GAAG,IAAI,cAAc,CAAS,UAAU,EAAE;MAClD,aAAa,GAAG,IAAI,cAAc,CAAS,eAAe,EAAE;AAEzE;AACgB,SAAA,SAAS,CAIvB,WAAuE,EACvE,YAAoB,EAAA;;IAGpB,MAAM,UAAsD,SAAQ,WAAc,CAAA;AAAlF,QAAA,WAAA,GAAA;;YACU,IAAM,CAAA,MAAA,GAAkB,IAAI,CAAC;YAC7B,IAAQ,CAAA,QAAA,GAAgC,IAAI,CAAC;SA0CtD;QAxCC,OAAO,GAAA;YACL,KAAK,CAAC,OAAO,EAAE,CAAC;YAEhB,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;AACxB,gBAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AACtB,aAAA;YAED,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,SAAS,EAAE,CAAC,CAAC;SACpD;AAED,QAAA,MAAM,SAAS,CAAC,SAA2B,EAAE,KAAS,EAAA;AACpD,YAAA,MAAM,gBAAgB,GACpB,OAAO,SAAS,KAAK,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;YAEhF,IAAI,CAAC,gBAAgB,EAAE;AACrB,gBAAA,MAAM,IAAI,KAAK,CAAC,0BAA0B,SAAS,CAAA,CAAE,CAAC,CAAC;AACxD,aAAA;YAED,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;AAEzD,YAAA,gBAAgB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAE1C,IAAI,CAAC,QAAQ,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,CAAC;AACzC,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;YAE7E,MAAM,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAExC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,YAAY,EAAE,CAAC,CAAC;SACvD;AAED,QAAA,MAAM,QAAQ,CAAC,GAAW,EAAE,MAA2B,EAAA;YACrD,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AACtC,aAAA;SACF;QAED,MAAM,IAAI,CAAC,IAAoC,EAAA;;SAE9C;AACF,KAAA;AAED,IAAA,OAAO,UAAU,CAAC;AACpB;;AChEA;;AAEG;;;;"}
1
+ {"version":3,"file":"microzord-angular-child.mjs","sources":["../../../../libs/angular/child/src/create-app.ts","../../../../libs/angular/child/src/enable-prod-mode.ts","../../../../libs/angular/child/microzord-angular-child.ts"],"sourcesContent":["import type {CompilerOptions, NgModuleRef} from '@angular/core';\nimport {InjectFlags, InjectionToken} from '@angular/core';\nimport {Router} from '@angular/router';\nimport type {ApplicationConstructor, MicrozordMessageEvent} from '@microzord/core';\nimport {Application, MicrozordLifecycleEvent} from '@microzord/core';\n\nexport const APP_NAME = new InjectionToken<string>('[APP_NAME]: App name');\nexport const ROOT_SELECTOR = new InjectionToken<string>('[ROOT_SELECTOR]: Root selector');\n\n// todo: очень грубая имплементация\nexport function createApp<\n TModule,\n Props extends Record<string, unknown> = Record<string, unknown>,\n>(\n bootstrapFn: (props?: CompilerOptions) => Promise<NgModuleRef<TModule>>,\n rootSelector: string,\n): ApplicationConstructor {\n // todo: не хватает имплементации хуков, сообщений и навигации\n class AngularApp<T extends Record<string, unknown> = Props> extends Application<T> {\n private router: Router | null = null;\n private ngModule: NgModuleRef<TModule> | null = null;\n\n public destroy() {\n super.destroy();\n\n if (this.ngModule) {\n this.ngModule.destroy();\n this.ngModule = null;\n }\n\n this.emitHook(MicrozordLifecycleEvent.destroyed());\n }\n\n public async bootstrap(container: Element | string, props?: T): Promise<void> {\n const containerElement =\n typeof container === 'string'\n ? document.querySelector(container)\n : container;\n\n if (!containerElement) {\n throw new Error(`No container found for ${container}`);\n }\n\n const rootElement = document.createElement(rootSelector);\n\n containerElement.appendChild(rootElement);\n\n this.ngModule = await bootstrapFn(props);\n this.router = this.ngModule.injector.get(Router, null, InjectFlags.Optional);\n\n await super.bootstrap(container, props);\n\n this.emitHook(MicrozordLifecycleEvent.bootstrapped());\n }\n\n public async navigate(url: string, _props: unknown | undefined): Promise<void> {\n if (this.router) {\n await this.router.navigateByUrl(url);\n }\n }\n\n public async send(_msg: MicrozordMessageEvent | string): Promise<void> {\n //\n }\n }\n\n return AngularApp;\n}\n","import {enableProdMode as angularEnableProdMode} from '@angular/core';\n\n/**\n * Disable Angular's development mode safely\n */\nexport function enableProdMode() {\n try {\n angularEnableProdMode();\n } catch (e) {\n //\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["angularEnableProdMode"],"mappings":";;;;MAMa,QAAQ,GAAG,IAAI,cAAc,CAAS,sBAAsB,EAAE;MAC9D,aAAa,GAAG,IAAI,cAAc,CAAS,gCAAgC,EAAE;AAE1F;AACgB,SAAA,SAAS,CAIrB,WAAuE,EACvE,YAAoB,EAAA;;IAGpB,MAAM,UAAsD,SAAQ,WAAc,CAAA;AAAlF,QAAA,WAAA,GAAA;;YACY,IAAM,CAAA,MAAA,GAAkB,IAAI,CAAC;YAC7B,IAAQ,CAAA,QAAA,GAAgC,IAAI,CAAC;SA4CxD;QA1CU,OAAO,GAAA;YACV,KAAK,CAAC,OAAO,EAAE,CAAC;YAEhB,IAAI,IAAI,CAAC,QAAQ,EAAE;AACf,gBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;AACxB,gBAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AACxB,aAAA;YAED,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,SAAS,EAAE,CAAC,CAAC;SACtD;AAEM,QAAA,MAAM,SAAS,CAAC,SAA2B,EAAE,KAAS,EAAA;AACzD,YAAA,MAAM,gBAAgB,GAClB,OAAO,SAAS,KAAK,QAAQ;AACzB,kBAAE,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC;kBACjC,SAAS,CAAC;YAEpB,IAAI,CAAC,gBAAgB,EAAE;AACnB,gBAAA,MAAM,IAAI,KAAK,CAAC,0BAA0B,SAAS,CAAA,CAAE,CAAC,CAAC;AAC1D,aAAA;YAED,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;AAEzD,YAAA,gBAAgB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAE1C,IAAI,CAAC,QAAQ,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,CAAC;AACzC,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;YAE7E,MAAM,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAExC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,YAAY,EAAE,CAAC,CAAC;SACzD;AAEM,QAAA,MAAM,QAAQ,CAAC,GAAW,EAAE,MAA2B,EAAA;YAC1D,IAAI,IAAI,CAAC,MAAM,EAAE;gBACb,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AACxC,aAAA;SACJ;QAEM,MAAM,IAAI,CAAC,IAAoC,EAAA;;SAErD;AACJ,KAAA;AAED,IAAA,OAAO,UAAU,CAAC;AACtB;;ACjEA;;AAEG;SACa,cAAc,GAAA;IAC1B,IAAI;AACA,QAAAA,gBAAqB,EAAE,CAAC;AAC3B,KAAA;AAAC,IAAA,OAAO,CAAC,EAAE;;AAEX,KAAA;AACL;;ACXA;;AAEG;;;;"}
@@ -18,14 +18,14 @@ class MicrozordAppDirective {
18
18
  this.errorHandler = errorHandler;
19
19
  this.destroy$ = new Subject();
20
20
  this.name$ = new Subject();
21
- const app$ = this.name$.pipe(tap(() => NgZone.assertNotInAngularZone()), switchMap(name => (name ? constructApp(name) : of(null))), catchError(error => this.handleError(error)), takeUntil(this.destroy$), shareReplay(1));
22
- this.application = app$.pipe(complete(app => {
21
+ const app$ = this.name$.pipe(tap(() => NgZone.assertNotInAngularZone()), switchMap((name) => (name ? constructApp(name) : of(null))), catchError((error) => this.handleError(error)), takeUntil(this.destroy$), shareReplay(1));
22
+ this.application = app$.pipe(complete((app) => {
23
23
  app?.destroy();
24
- }), switchMap(name => name
25
- ? bootstrapApp(name, this.elementRef.nativeElement).pipe(catchError(error => this.handleError(error)))
24
+ }), switchMap((name) => name
25
+ ? bootstrapApp(name, this.elementRef.nativeElement).pipe(catchError((error) => this.handleError(error)))
26
26
  : of(null)), takeUntil(this.destroy$), shareReplay(1));
27
- this.hook = app$.pipe(switchMap(app => app
28
- ? new Observable(subscriber => app.onHook(event => subscriber.next(event)))
27
+ this.hook = app$.pipe(switchMap((app) => app
28
+ ? new Observable((subscriber) => app.onHook((event) => subscriber.next(event)))
29
29
  : NEVER));
30
30
  this.application.subscribe();
31
31
  }
@@ -37,15 +37,15 @@ class MicrozordAppDirective {
37
37
  this.errorHandler.handleError(error);
38
38
  return of(null);
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordAppDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.ErrorHandler }], target: i0.ɵɵFactoryTarget.Directive }); }
41
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.8", type: MicrozordAppDirective, selector: "[microzordApp]:not(ng-container)", inputs: { name: ["microzordApp", "name"] }, outputs: { hook: "hook", application: "application" }, ngImport: i0 }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordAppDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.ErrorHandler }], target: i0.ɵɵFactoryTarget.Directive }); }
41
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: MicrozordAppDirective, selector: "[microzordApp]:not(ng-container)", inputs: { name: ["microzordApp", "name"] }, outputs: { hook: "hook", application: "application" }, ngImport: i0 }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordAppDirective, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordAppDirective, decorators: [{
44
44
  type: Directive,
45
45
  args: [{
46
46
  selector: '[microzordApp]:not(ng-container)',
47
47
  }]
48
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.ErrorHandler }]; }, propDecorators: { hook: [{
48
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.ErrorHandler }], propDecorators: { hook: [{
49
49
  type: Output
50
50
  }], application: [{
51
51
  type: Output
@@ -55,11 +55,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImpor
55
55
  }] } });
56
56
 
57
57
  class MicrozordAppModule {
58
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordAppModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
59
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.8", ngImport: i0, type: MicrozordAppModule, declarations: [MicrozordAppDirective], exports: [MicrozordAppDirective] }); }
60
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordAppModule }); }
58
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordAppModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
59
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.9", ngImport: i0, type: MicrozordAppModule, declarations: [MicrozordAppDirective], exports: [MicrozordAppDirective] }); }
60
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordAppModule }); }
61
61
  }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordAppModule, decorators: [{
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordAppModule, decorators: [{
63
63
  type: NgModule,
64
64
  args: [{
65
65
  declarations: [MicrozordAppDirective],
@@ -87,16 +87,16 @@ class MicrozordNgCompilerService {
87
87
  const moduleRef = await this.createModule(Module, injector);
88
88
  return this.createEntryPoint(moduleRef, injector, viewContainerRef);
89
89
  }
90
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgCompilerService, deps: [{ token: i0.Compiler }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector, optional: true }, { token: i0.ViewContainerRef, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
91
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgCompilerService }); }
90
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgCompilerService, deps: [{ token: i0.Compiler }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector, optional: true }, { token: i0.ViewContainerRef, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
91
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgCompilerService }); }
92
92
  }
93
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgCompilerService, decorators: [{
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgCompilerService, decorators: [{
94
94
  type: Injectable
95
- }], ctorParameters: function () { return [{ type: i0.Compiler }, { type: i0.ComponentFactoryResolver }, { type: i0.Injector, decorators: [{
95
+ }], ctorParameters: () => [{ type: i0.Compiler }, { type: i0.ComponentFactoryResolver }, { type: i0.Injector, decorators: [{
96
96
  type: Optional
97
97
  }] }, { type: i0.ViewContainerRef, decorators: [{
98
98
  type: Optional
99
- }] }]; } });
99
+ }] }] });
100
100
 
101
101
  class MicrozordNgModuleDirective {
102
102
  set name(moduleName) {
@@ -108,16 +108,16 @@ class MicrozordNgModuleDirective {
108
108
  this.errorHandler = errorHandler;
109
109
  this.name$ = new Subject();
110
110
  this.destroy$ = new Subject();
111
- this.module = this.name$.pipe(tap(() => NgZone.assertNotInAngularZone()), switchMap(name => name
112
- ? this.loadModuleAndBootstrap(name).pipe(catchError(error => {
111
+ this.module = this.name$.pipe(tap(() => NgZone.assertNotInAngularZone()), switchMap((name) => name
112
+ ? this.loadModuleAndBootstrap(name).pipe(catchError((error) => {
113
113
  this.errorHandler.handleError(error);
114
114
  return of(null);
115
115
  }))
116
- : of(null)), map(componentRef => componentRef?.injector.get(NgModuleRef) ?? null), shareReplay(1), takeUntil(this.destroy$));
116
+ : of(null)), map((componentRef) => componentRef?.injector.get(NgModuleRef) ?? null), shareReplay(1), takeUntil(this.destroy$));
117
117
  this.module.subscribe();
118
118
  }
119
119
  loadModuleAndBootstrap(name) {
120
- return loadEntity(name).pipe(switchMap(Module => this.mzNgCompiler.createEntryPointFromModule(Module)), complete(componentRef => this.destroyComponentAndModule(componentRef)));
120
+ return loadEntity(name).pipe(switchMap(async (Module) => this.mzNgCompiler.createEntryPointFromModule(Module)), complete((componentRef) => this.destroyComponentAndModule(componentRef)));
121
121
  }
122
122
  destroyComponentAndModule(componentRef) {
123
123
  componentRef.destroy();
@@ -127,16 +127,16 @@ class MicrozordNgModuleDirective {
127
127
  this.destroy$.next();
128
128
  this.destroy$.complete();
129
129
  }
130
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleDirective, deps: [{ token: i0.NgZone }, { token: MicrozordNgCompilerService }, { token: i0.ErrorHandler }], target: i0.ɵɵFactoryTarget.Directive }); }
131
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.8", type: MicrozordNgModuleDirective, selector: "[microzordNgModule]", inputs: { name: ["microzordNgModule", "name"] }, outputs: { module: "module" }, providers: [MicrozordNgCompilerService], ngImport: i0 }); }
130
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleDirective, deps: [{ token: i0.NgZone }, { token: MicrozordNgCompilerService }, { token: i0.ErrorHandler }], target: i0.ɵɵFactoryTarget.Directive }); }
131
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: MicrozordNgModuleDirective, selector: "[microzordNgModule]", inputs: { name: ["microzordNgModule", "name"] }, outputs: { module: "module" }, providers: [MicrozordNgCompilerService], ngImport: i0 }); }
132
132
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleDirective, decorators: [{
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleDirective, decorators: [{
134
134
  type: Directive,
135
135
  args: [{
136
136
  selector: '[microzordNgModule]',
137
137
  providers: [MicrozordNgCompilerService],
138
138
  }]
139
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: MicrozordNgCompilerService }, { type: i0.ErrorHandler }]; }, propDecorators: { module: [{
139
+ }], ctorParameters: () => [{ type: i0.NgZone }, { type: MicrozordNgCompilerService }, { type: i0.ErrorHandler }], propDecorators: { module: [{
140
140
  type: Output
141
141
  }], name: [{
142
142
  type: Input,
@@ -144,11 +144,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImpor
144
144
  }] } });
145
145
 
146
146
  class MicrozordNgModuleModule {
147
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
148
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleModule, declarations: [MicrozordNgModuleDirective], exports: [MicrozordNgModuleDirective] }); }
149
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleModule }); }
147
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
148
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleModule, declarations: [MicrozordNgModuleDirective], exports: [MicrozordNgModuleDirective] }); }
149
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleModule }); }
150
150
  }
151
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordNgModuleModule, decorators: [{
151
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordNgModuleModule, decorators: [{
152
152
  type: NgModule,
153
153
  args: [{
154
154
  declarations: [MicrozordNgModuleDirective],
@@ -156,34 +156,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImpor
156
156
  }]
157
157
  }] });
158
158
 
159
- const MICROZORD_APPS = new InjectionToken('Microzord apps', {
160
- factory: () => [],
161
- });
162
- const MICROZORD_NG_MODULES = new InjectionToken('Microzord Angular modules', {
163
- factory: () => [],
164
- });
165
-
166
159
  class RegistryService {
167
160
  registerMany(apps) {
168
- apps.forEach(app => this.register(app));
161
+ apps.forEach((app) => this.register(app));
169
162
  }
170
163
  register(options) {
171
164
  registerEntity(options);
172
165
  }
173
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: RegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
174
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: RegistryService, providedIn: 'root' }); }
166
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: RegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
167
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: RegistryService, providedIn: 'root' }); }
175
168
  }
176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: RegistryService, decorators: [{
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: RegistryService, decorators: [{
177
170
  type: Injectable,
178
171
  args: [{
179
172
  providedIn: 'root',
180
173
  }]
181
174
  }] });
182
175
 
176
+ const MICROZORD_APPS = new InjectionToken('[MICROZORD_APPS]: Microzord apps', {
177
+ factory: () => [],
178
+ });
179
+ const MICROZORD_NG_MODULES = new InjectionToken('[MICROZORD_NG_MODULES]: Microzord Angular modules', {
180
+ factory: () => [],
181
+ });
182
+
183
183
  class MicrozordHostModule {
184
184
  constructor(allApps, allModules, registry) {
185
- allApps.forEach(apps => registry.registerMany(apps));
186
- allModules.forEach(modules => registry.registerMany(modules));
185
+ allApps.forEach((apps) => registry.registerMany(apps));
186
+ allModules.forEach((modules) => registry.registerMany(modules));
187
187
  }
188
188
  static register({ apps, modules, }) {
189
189
  return {
@@ -206,22 +206,22 @@ class MicrozordHostModule {
206
206
  ],
207
207
  };
208
208
  }
209
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordHostModule, deps: [{ token: MICROZORD_APPS }, { token: MICROZORD_NG_MODULES }, { token: RegistryService }], target: i0.ɵɵFactoryTarget.NgModule }); }
210
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.8", ngImport: i0, type: MicrozordHostModule, exports: [MicrozordAppModule, MicrozordNgModuleModule] }); }
211
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordHostModule, imports: [MicrozordAppModule, MicrozordNgModuleModule] }); }
209
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordHostModule, deps: [{ token: MICROZORD_APPS }, { token: MICROZORD_NG_MODULES }, { token: RegistryService }], target: i0.ɵɵFactoryTarget.NgModule }); }
210
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.9", ngImport: i0, type: MicrozordHostModule, exports: [MicrozordAppModule, MicrozordNgModuleModule] }); }
211
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordHostModule, imports: [MicrozordAppModule, MicrozordNgModuleModule] }); }
212
212
  }
213
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: MicrozordHostModule, decorators: [{
213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MicrozordHostModule, decorators: [{
214
214
  type: NgModule,
215
215
  args: [{
216
216
  exports: [MicrozordAppModule, MicrozordNgModuleModule],
217
217
  }]
218
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
218
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
219
219
  type: Inject,
220
220
  args: [MICROZORD_APPS]
221
221
  }] }, { type: undefined, decorators: [{
222
222
  type: Inject,
223
223
  args: [MICROZORD_NG_MODULES]
224
- }] }, { type: RegistryService }]; } });
224
+ }] }, { type: RegistryService }] });
225
225
 
226
226
  /**
227
227
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"microzord-angular.mjs","sources":["../../../../libs/angular/src/lib/operators/complete.ts","../../../../libs/angular/src/lib/microzord-app/microzord-app.directive.ts","../../../../libs/angular/src/lib/microzord-app/microzord-app.module.ts","../../../../libs/angular/src/lib/microzord-module/microzord-ng-compiler.service.ts","../../../../libs/angular/src/lib/microzord-module/microzord-ng-module.directive.ts","../../../../libs/angular/src/lib/microzord-module/microzord-ng-module.module.ts","../../../../libs/angular/src/lib/tokens/microzord-apps.ts","../../../../libs/angular/src/lib/services/registry.service.ts","../../../../libs/angular/src/lib/microzord-host.module.ts","../../../../libs/angular/src/microzord-angular.ts"],"sourcesContent":["import {NEVER} from 'rxjs';\nimport {finalize, startWith, switchMap} from 'rxjs/operators';\n\nexport const complete = <T>(fn: (value: T) => void) =>\n switchMap((value: T) =>\n NEVER.pipe(\n startWith(value),\n finalize(() => {\n fn(value);\n }),\n ),\n );\n","import {\n Directive,\n ElementRef,\n ErrorHandler,\n Input,\n NgZone,\n OnDestroy,\n Output,\n} from '@angular/core';\nimport {\n Application,\n MicrozordLifecycleEvent,\n bootstrapApp,\n constructApp,\n} from '@microzord/core';\nimport {NEVER, Observable, Subject, of} from 'rxjs';\nimport {catchError, shareReplay, switchMap, takeUntil, tap} from 'rxjs/operators';\nimport {complete} from '../operators/complete';\n\n@Directive({\n selector: '[microzordApp]:not(ng-container)',\n})\nexport class MicrozordAppDirective implements OnDestroy {\n @Output()\n hook: Observable<MicrozordLifecycleEvent>;\n\n @Output()\n application: Observable<Application | null>;\n\n @Input('microzordApp')\n set name(appName: string) {\n this.ngZone.runOutsideAngular(() => this.name$.next(appName));\n }\n\n private destroy$ = new Subject<void>();\n private name$ = new Subject<string>();\n\n constructor(\n private elementRef: ElementRef,\n private ngZone: NgZone,\n private errorHandler: ErrorHandler,\n ) {\n const app$ = this.name$.pipe(\n tap(() => NgZone.assertNotInAngularZone()),\n switchMap(name => (name ? constructApp(name) : of(null))),\n catchError(error => this.handleError(error)),\n takeUntil(this.destroy$),\n shareReplay(1),\n );\n\n this.application = app$.pipe(\n complete(app => {\n app?.destroy();\n }),\n switchMap(name =>\n name\n ? bootstrapApp(name, this.elementRef.nativeElement).pipe(\n catchError(error => this.handleError(error)),\n )\n : of(null),\n ),\n takeUntil(this.destroy$),\n shareReplay(1),\n );\n\n this.hook = app$.pipe(\n switchMap(app =>\n app\n ? new Observable<MicrozordLifecycleEvent>(subscriber =>\n app.onHook(event => subscriber.next(event)),\n )\n : NEVER,\n ),\n );\n\n this.application.subscribe();\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n private handleError(error: unknown): Observable<null> {\n this.errorHandler.handleError(error);\n return of(null);\n }\n}\n","import {NgModule} from '@angular/core';\nimport {MicrozordAppDirective} from './microzord-app.directive';\n\n@NgModule({\n declarations: [MicrozordAppDirective],\n exports: [MicrozordAppDirective],\n})\nexport class MicrozordAppModule {}\n","import {\n Compiler,\n ComponentFactoryResolver,\n ComponentRef,\n Injectable,\n Injector,\n NgModuleRef,\n Optional,\n Type,\n ViewContainerRef,\n} from '@angular/core';\nimport {EntryPoint, MicrozordNgModule} from '../types/ng-module';\n\n@Injectable()\nexport class MicrozordNgCompilerService {\n constructor(\n private compiler: Compiler,\n private componentFactoryResolver: ComponentFactoryResolver,\n @Optional()\n private injector: Injector,\n @Optional()\n private viewContainerRef: ViewContainerRef,\n ) {}\n\n async createModule<\n T extends EntryPoint = EntryPoint,\n M extends MicrozordNgModule<T> = MicrozordNgModule<T>,\n >(Module: Type<M>, injector: Injector = this.injector): Promise<NgModuleRef<M>> {\n const moduleFactory = await this.compiler.compileModuleAsync(Module);\n return moduleFactory.create(injector);\n }\n\n async createEntryPoint<\n T extends EntryPoint = EntryPoint,\n M extends MicrozordNgModule<T> = MicrozordNgModule<T>,\n >(\n moduleRef: NgModuleRef<M>,\n injector: Injector = this.injector,\n viewContainerRef: ViewContainerRef = this.viewContainerRef,\n ): Promise<ComponentRef<T>> {\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(\n moduleRef.instance.getEntryPoint(),\n );\n\n viewContainerRef.clear();\n return viewContainerRef.createComponent(\n componentFactory,\n undefined,\n injector,\n [],\n moduleRef,\n );\n }\n\n async createEntryPointFromModule<\n T extends EntryPoint = EntryPoint,\n M extends MicrozordNgModule<T> = MicrozordNgModule<T>,\n >(\n Module: Type<M>,\n injector: Injector = this.injector,\n viewContainerRef: ViewContainerRef = this.viewContainerRef,\n ): Promise<ComponentRef<T>> {\n const moduleRef = await this.createModule(Module, injector);\n return this.createEntryPoint(moduleRef, injector, viewContainerRef);\n }\n}\n","import {\n ComponentRef,\n Directive,\n ErrorHandler,\n Input,\n NgModuleRef,\n NgZone,\n OnDestroy,\n Output,\n} from '@angular/core';\nimport {Observable, of, Subject} from 'rxjs';\nimport {catchError, map, shareReplay, switchMap, takeUntil, tap} from 'rxjs/operators';\nimport {loadEntity} from '@microzord/core';\nimport {EntryPoint, MicrozordNgModule} from '../types/ng-module';\nimport {complete} from '../operators/complete';\nimport {MicrozordNgCompilerService} from './microzord-ng-compiler.service';\n\n@Directive({\n selector: '[microzordNgModule]',\n providers: [MicrozordNgCompilerService],\n})\nexport class MicrozordNgModuleDirective implements OnDestroy {\n private name$ = new Subject<string | null>();\n private destroy$ = new Subject<void>();\n\n @Output()\n module: Observable<NgModuleRef<any> | null>;\n\n @Input('microzordNgModule')\n set name(moduleName: string | null) {\n this.ngZone.runOutsideAngular(() => this.name$.next(moduleName));\n }\n\n constructor(\n private ngZone: NgZone,\n private mzNgCompiler: MicrozordNgCompilerService,\n private errorHandler: ErrorHandler,\n ) {\n this.module = this.name$.pipe(\n tap(() => NgZone.assertNotInAngularZone()),\n switchMap(name =>\n name\n ? this.loadModuleAndBootstrap(name).pipe(\n catchError(error => {\n this.errorHandler.handleError(error);\n return of(null);\n }),\n )\n : of(null),\n ),\n map(componentRef => componentRef?.injector.get(NgModuleRef) ?? null),\n shareReplay(1),\n takeUntil(this.destroy$),\n );\n\n this.module.subscribe();\n }\n\n private loadModuleAndBootstrap(name: string): Observable<ComponentRef<EntryPoint>> {\n return loadEntity<any, MicrozordNgModule>(name).pipe(\n switchMap(Module => this.mzNgCompiler.createEntryPointFromModule(Module)),\n complete(componentRef => this.destroyComponentAndModule(componentRef)),\n );\n }\n\n private destroyComponentAndModule<T extends EntryPoint = EntryPoint>(\n componentRef: ComponentRef<T>,\n ) {\n componentRef.destroy();\n componentRef.injector.get(NgModuleRef).destroy();\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n","import {NgModule} from '@angular/core';\nimport {MicrozordNgModuleDirective} from './microzord-ng-module.directive';\n\n@NgModule({\n declarations: [MicrozordNgModuleDirective],\n exports: [MicrozordNgModuleDirective],\n})\nexport class MicrozordNgModuleModule {}\n","import {AppRegistrationOptions} from '@microzord/core';\nimport {InjectionToken} from '@angular/core';\nimport {NgModuleRegistrationOptions} from '../types/ng-module';\n\nexport const MICROZORD_APPS = new InjectionToken<AppRegistrationOptions[][]>(\n 'Microzord apps',\n {\n factory: () => [],\n },\n);\n\nexport const MICROZORD_NG_MODULES = new InjectionToken<NgModuleRegistrationOptions[][]>(\n 'Microzord Angular modules',\n {\n factory: () => [],\n },\n);\n","import {Injectable} from '@angular/core';\nimport {AppRegistrationOptions, registerEntity} from '@microzord/core';\nimport {NgModuleRegistrationOptions} from '../types/ng-module';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RegistryService {\n registerMany(\n apps: ReadonlyArray<AppRegistrationOptions | NgModuleRegistrationOptions>,\n ) {\n apps.forEach(app => this.register(app));\n }\n\n register(options: AppRegistrationOptions | NgModuleRegistrationOptions) {\n registerEntity(options);\n }\n}\n","import {Inject, ModuleWithProviders, NgModule, Type} from '@angular/core';\nimport {AppRegistrationOptions, EntityRegistrationOptions} from '@microzord/core';\n\nimport {MICROZORD_APPS, MICROZORD_NG_MODULES} from './tokens/microzord-apps';\nimport {RegistryService} from './services/registry.service';\nimport {MicrozordAppModule} from './microzord-app/microzord-app.module';\nimport {MicrozordNgModuleModule} from './microzord-module/microzord-ng-module.module';\nimport {NgModuleRegistrationOptions} from './types/ng-module';\n\nexport interface MicrozordHostModuleOptions {\n apps?: AppRegistrationOptions[];\n modules?: EntityRegistrationOptions<Type<any>>[];\n}\n\n@NgModule({\n exports: [MicrozordAppModule, MicrozordNgModuleModule],\n})\nexport class MicrozordHostModule {\n constructor(\n @Inject(MICROZORD_APPS) allApps: AppRegistrationOptions[][],\n @Inject(MICROZORD_NG_MODULES) allModules: NgModuleRegistrationOptions[][],\n registry: RegistryService,\n ) {\n allApps.forEach(apps => registry.registerMany(apps));\n allModules.forEach(modules => registry.registerMany(modules));\n }\n\n static register({\n apps,\n modules,\n }: MicrozordHostModuleOptions): ModuleWithProviders<MicrozordHostModule> {\n return {\n ngModule: MicrozordHostModule,\n providers: [\n apps\n ? {\n provide: MICROZORD_APPS,\n useValue: apps,\n multi: true,\n }\n : [],\n modules\n ? {\n provide: MICROZORD_NG_MODULES,\n useValue: modules,\n multi: true,\n }\n : [],\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.MicrozordNgCompilerService","i1.RegistryService"],"mappings":"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"}
1
+ {"version":3,"file":"microzord-angular.mjs","sources":["../../../../libs/angular/src/lib/operators/complete.ts","../../../../libs/angular/src/lib/microzord-app/microzord-app.directive.ts","../../../../libs/angular/src/lib/microzord-app/microzord-app.module.ts","../../../../libs/angular/src/lib/microzord-module/microzord-ng-compiler.service.ts","../../../../libs/angular/src/lib/microzord-module/microzord-ng-module.directive.ts","../../../../libs/angular/src/lib/microzord-module/microzord-ng-module.module.ts","../../../../libs/angular/src/lib/services/registry.service.ts","../../../../libs/angular/src/lib/tokens/microzord-apps.ts","../../../../libs/angular/src/lib/microzord-host.module.ts","../../../../libs/angular/src/microzord-angular.ts"],"sourcesContent":["import {NEVER} from 'rxjs';\nimport {finalize, startWith, switchMap} from 'rxjs/operators';\n\nexport const complete = <T>(fn: (value: T) => void) =>\n switchMap((value: T) =>\n NEVER.pipe(\n startWith(value),\n finalize(() => {\n fn(value);\n }),\n ),\n );\n","import {\n Directive,\n ElementRef,\n ErrorHandler,\n Input,\n NgZone,\n OnDestroy,\n Output,\n} from '@angular/core';\nimport {\n Application,\n bootstrapApp,\n constructApp,\n MicrozordLifecycleEvent,\n} from '@microzord/core';\nimport {NEVER, Observable, of, Subject} from 'rxjs';\nimport {catchError, shareReplay, switchMap, takeUntil, tap} from 'rxjs/operators';\n\nimport {complete} from '../operators/complete';\n\n@Directive({\n selector: '[microzordApp]:not(ng-container)',\n})\nexport class MicrozordAppDirective implements OnDestroy {\n @Output()\n public hook: Observable<MicrozordLifecycleEvent>;\n\n @Output()\n public application: Observable<Application | null>;\n\n @Input('microzordApp')\n public set name(appName: string) {\n this.ngZone.runOutsideAngular(() => this.name$.next(appName));\n }\n\n private readonly destroy$ = new Subject<void>();\n private readonly name$ = new Subject<string>();\n\n constructor(\n private readonly elementRef: ElementRef,\n private readonly ngZone: NgZone,\n private readonly errorHandler: ErrorHandler,\n ) {\n const app$ = this.name$.pipe(\n tap(() => NgZone.assertNotInAngularZone()),\n switchMap((name) => (name ? constructApp(name) : of(null))),\n catchError((error) => this.handleError(error)),\n takeUntil(this.destroy$),\n shareReplay(1),\n );\n\n this.application = app$.pipe(\n complete((app) => {\n app?.destroy();\n }),\n switchMap((name) =>\n name\n ? bootstrapApp(name, this.elementRef.nativeElement).pipe(\n catchError((error) => this.handleError(error)),\n )\n : of(null),\n ),\n takeUntil(this.destroy$),\n shareReplay(1),\n );\n\n this.hook = app$.pipe(\n switchMap((app) =>\n app\n ? new Observable<MicrozordLifecycleEvent>((subscriber) =>\n app.onHook((event) => subscriber.next(event)),\n )\n : NEVER,\n ),\n );\n\n this.application.subscribe();\n }\n\n public ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n private handleError(error: unknown): Observable<null> {\n this.errorHandler.handleError(error);\n\n return of(null);\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {MicrozordAppDirective} from './microzord-app.directive';\n\n@NgModule({\n declarations: [MicrozordAppDirective],\n exports: [MicrozordAppDirective],\n})\nexport class MicrozordAppModule {}\n","import {\n Compiler,\n ComponentFactoryResolver,\n ComponentRef,\n Injectable,\n Injector,\n NgModuleRef,\n Optional,\n Type,\n ViewContainerRef,\n} from '@angular/core';\n\nimport {EntryPoint, MicrozordNgModule} from '../types/ng-module';\n\n@Injectable()\nexport class MicrozordNgCompilerService {\n constructor(\n private readonly compiler: Compiler,\n private readonly componentFactoryResolver: ComponentFactoryResolver,\n @Optional()\n private readonly injector: Injector,\n @Optional()\n private readonly viewContainerRef: ViewContainerRef,\n ) {}\n\n public async createModule<\n T extends EntryPoint = EntryPoint,\n M extends MicrozordNgModule<T> = MicrozordNgModule<T>,\n >(Module: Type<M>, injector: Injector = this.injector): Promise<NgModuleRef<M>> {\n const moduleFactory = await this.compiler.compileModuleAsync(Module);\n\n return moduleFactory.create(injector);\n }\n\n public async createEntryPoint<\n T extends EntryPoint = EntryPoint,\n M extends MicrozordNgModule<T> = MicrozordNgModule<T>,\n >(\n moduleRef: NgModuleRef<M>,\n injector: Injector = this.injector,\n viewContainerRef: ViewContainerRef = this.viewContainerRef,\n ): Promise<ComponentRef<T>> {\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(\n moduleRef.instance.getEntryPoint(),\n );\n\n viewContainerRef.clear();\n\n return viewContainerRef.createComponent(\n componentFactory,\n undefined,\n injector,\n [],\n moduleRef,\n );\n }\n\n public async createEntryPointFromModule<\n T extends EntryPoint = EntryPoint,\n M extends MicrozordNgModule<T> = MicrozordNgModule<T>,\n >(\n Module: Type<M>,\n injector: Injector = this.injector,\n viewContainerRef: ViewContainerRef = this.viewContainerRef,\n ): Promise<ComponentRef<T>> {\n const moduleRef = await this.createModule(Module, injector);\n\n return this.createEntryPoint(moduleRef, injector, viewContainerRef);\n }\n}\n","import {\n ComponentRef,\n Directive,\n ErrorHandler,\n Input,\n NgModuleRef,\n NgZone,\n OnDestroy,\n Output,\n} from '@angular/core';\nimport {loadEntity} from '@microzord/core';\nimport {Observable, of, Subject} from 'rxjs';\nimport {catchError, map, shareReplay, switchMap, takeUntil, tap} from 'rxjs/operators';\n\nimport {complete} from '../operators/complete';\nimport {EntryPoint, MicrozordNgModule} from '../types/ng-module';\nimport {MicrozordNgCompilerService} from './microzord-ng-compiler.service';\n\n@Directive({\n selector: '[microzordNgModule]',\n providers: [MicrozordNgCompilerService],\n})\nexport class MicrozordNgModuleDirective implements OnDestroy {\n private readonly name$ = new Subject<string | null>();\n private readonly destroy$ = new Subject<void>();\n\n @Output()\n public module: Observable<NgModuleRef<unknown> | null>;\n\n @Input('microzordNgModule')\n public set name(moduleName: string | null) {\n this.ngZone.runOutsideAngular(() => this.name$.next(moduleName));\n }\n\n constructor(\n private readonly ngZone: NgZone,\n private readonly mzNgCompiler: MicrozordNgCompilerService,\n private readonly errorHandler: ErrorHandler,\n ) {\n this.module = this.name$.pipe(\n tap(() => NgZone.assertNotInAngularZone()),\n switchMap((name) =>\n name\n ? this.loadModuleAndBootstrap(name).pipe(\n catchError((error) => {\n this.errorHandler.handleError(error);\n\n return of(null);\n }),\n )\n : of(null),\n ),\n map((componentRef) => componentRef?.injector.get(NgModuleRef) ?? null),\n shareReplay(1),\n takeUntil(this.destroy$),\n );\n\n this.module.subscribe();\n }\n\n private loadModuleAndBootstrap(name: string): Observable<ComponentRef<EntryPoint>> {\n return loadEntity<unknown, MicrozordNgModule>(name).pipe(\n switchMap(async (Module) =>\n this.mzNgCompiler.createEntryPointFromModule(Module),\n ),\n complete((componentRef) => this.destroyComponentAndModule(componentRef)),\n );\n }\n\n private destroyComponentAndModule<T extends EntryPoint = EntryPoint>(\n componentRef: ComponentRef<T>,\n ) {\n componentRef.destroy();\n componentRef.injector.get(NgModuleRef).destroy();\n }\n\n public ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {MicrozordNgModuleDirective} from './microzord-ng-module.directive';\n\n@NgModule({\n declarations: [MicrozordNgModuleDirective],\n exports: [MicrozordNgModuleDirective],\n})\nexport class MicrozordNgModuleModule {}\n","import {Injectable} from '@angular/core';\nimport {AppRegistrationOptions, registerEntity} from '@microzord/core';\n\nimport {NgModuleRegistrationOptions} from '../types/ng-module';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RegistryService {\n public registerMany(\n apps: ReadonlyArray<AppRegistrationOptions | NgModuleRegistrationOptions>,\n ) {\n apps.forEach((app) => this.register(app));\n }\n\n public register(options: AppRegistrationOptions | NgModuleRegistrationOptions) {\n registerEntity(options);\n }\n}\n","import {InjectionToken} from '@angular/core';\nimport type {AppRegistrationOptions} from '@microzord/core';\n\nimport type {NgModuleRegistrationOptions} from '../types/ng-module';\n\nexport const MICROZORD_APPS = new InjectionToken<AppRegistrationOptions[][]>(\n '[MICROZORD_APPS]: Microzord apps',\n {\n factory: () => [],\n },\n);\n\nexport const MICROZORD_NG_MODULES = new InjectionToken<NgModuleRegistrationOptions[][]>(\n '[MICROZORD_NG_MODULES]: Microzord Angular modules',\n {\n factory: () => [],\n },\n);\n","import {Inject, ModuleWithProviders, NgModule, Type} from '@angular/core';\nimport {AppRegistrationOptions, EntityRegistrationOptions} from '@microzord/core';\n\nimport {MicrozordAppModule} from './microzord-app/microzord-app.module';\nimport {MicrozordNgModuleModule} from './microzord-module/microzord-ng-module.module';\nimport {RegistryService} from './services/registry.service';\nimport {MICROZORD_APPS, MICROZORD_NG_MODULES} from './tokens/microzord-apps';\nimport {NgModuleRegistrationOptions} from './types/ng-module';\n\nexport interface MicrozordHostModuleOptions {\n apps?: AppRegistrationOptions[];\n modules?: Array<EntityRegistrationOptions<Type<unknown>>>;\n}\n\n@NgModule({\n exports: [MicrozordAppModule, MicrozordNgModuleModule],\n})\nexport class MicrozordHostModule {\n constructor(\n @Inject(MICROZORD_APPS) allApps: AppRegistrationOptions[][],\n @Inject(MICROZORD_NG_MODULES) allModules: NgModuleRegistrationOptions[][],\n registry: RegistryService,\n ) {\n allApps.forEach((apps) => registry.registerMany(apps));\n allModules.forEach((modules) => registry.registerMany(modules));\n }\n\n public static register({\n apps,\n modules,\n }: MicrozordHostModuleOptions): ModuleWithProviders<MicrozordHostModule> {\n return {\n ngModule: MicrozordHostModule,\n providers: [\n apps\n ? {\n provide: MICROZORD_APPS,\n useValue: apps,\n multi: true,\n }\n : [],\n modules\n ? {\n provide: MICROZORD_NG_MODULES,\n useValue: modules,\n multi: true,\n }\n : [],\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.MicrozordNgCompilerService","i1.RegistryService"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  export * from './lib/microzord-app/microzord-app.directive';
2
2
  export * from './lib/microzord-app/microzord-app.module';
3
+ export * from './lib/microzord-host.module';
3
4
  export * from './lib/microzord-module/microzord-ng-module.directive';
4
5
  export * from './lib/microzord-module/microzord-ng-module.module';
5
- export * from './lib/microzord-host.module';
6
6
  export * from './lib/services/registry.service';
7
7
  export * from './lib/tokens/microzord-apps';
8
8
  export * from './lib/types/ng-module';
9
9
  export { AppRegistrationOptions } from '@microzord/core';
10
+ //# sourceMappingURL=index.d.ts.map