@venizia/ignis-boot 0.2.0-6 → 0.2.0-8

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 (174) hide show
  1. package/README.md +87 -158
  2. package/dist/cjs/cli.d.ts +3 -0
  3. package/dist/cjs/cli.d.ts.map +1 -0
  4. package/dist/cjs/cli.js +50 -0
  5. package/dist/cjs/cli.js.map +1 -0
  6. package/dist/cjs/generator/common/constants.d.ts +39 -0
  7. package/dist/cjs/generator/common/constants.d.ts.map +1 -0
  8. package/dist/cjs/generator/common/constants.js +76 -0
  9. package/dist/cjs/generator/common/constants.js.map +1 -0
  10. package/dist/{esm → cjs/generator}/common/index.d.ts +1 -1
  11. package/dist/cjs/generator/common/index.d.ts.map +1 -0
  12. package/dist/cjs/{common → generator/common}/index.js +1 -1
  13. package/dist/cjs/generator/common/index.js.map +1 -0
  14. package/dist/cjs/generator/common/types.d.ts +13 -0
  15. package/dist/cjs/generator/common/types.d.ts.map +1 -0
  16. package/dist/cjs/generator/common/types.js +3 -0
  17. package/dist/cjs/generator/common/types.js.map +1 -0
  18. package/dist/cjs/generator/emitter.d.ts +16 -0
  19. package/dist/cjs/generator/emitter.d.ts.map +1 -0
  20. package/dist/cjs/generator/emitter.js +53 -0
  21. package/dist/cjs/generator/emitter.js.map +1 -0
  22. package/dist/cjs/generator/index.d.ts +24 -0
  23. package/dist/cjs/generator/index.d.ts.map +1 -0
  24. package/dist/cjs/generator/index.js +55 -0
  25. package/dist/cjs/generator/index.js.map +1 -0
  26. package/dist/cjs/generator/scanner.d.ts +18 -0
  27. package/dist/cjs/generator/scanner.d.ts.map +1 -0
  28. package/dist/cjs/generator/scanner.js +173 -0
  29. package/dist/cjs/generator/scanner.js.map +1 -0
  30. package/dist/cjs/index.d.ts +1 -6
  31. package/dist/cjs/index.d.ts.map +1 -1
  32. package/dist/cjs/index.js +1 -6
  33. package/dist/cjs/index.js.map +1 -1
  34. package/dist/esm/cli.d.ts +3 -0
  35. package/dist/esm/cli.d.ts.map +1 -0
  36. package/dist/esm/cli.js +48 -0
  37. package/dist/esm/cli.js.map +1 -0
  38. package/dist/esm/generator/common/constants.d.ts +39 -0
  39. package/dist/esm/generator/common/constants.d.ts.map +1 -0
  40. package/dist/esm/generator/common/constants.js +70 -0
  41. package/dist/esm/generator/common/constants.js.map +1 -0
  42. package/dist/{cjs → esm/generator}/common/index.d.ts +1 -1
  43. package/dist/esm/generator/common/index.d.ts.map +1 -0
  44. package/dist/esm/{common → generator/common}/index.js +1 -1
  45. package/dist/esm/generator/common/index.js.map +1 -0
  46. package/dist/esm/generator/common/types.d.ts +13 -0
  47. package/dist/esm/generator/common/types.d.ts.map +1 -0
  48. package/dist/esm/generator/common/types.js +2 -0
  49. package/dist/esm/generator/common/types.js.map +1 -0
  50. package/dist/esm/generator/emitter.d.ts +16 -0
  51. package/dist/esm/generator/emitter.d.ts.map +1 -0
  52. package/dist/esm/generator/emitter.js +49 -0
  53. package/dist/esm/generator/emitter.js.map +1 -0
  54. package/dist/esm/generator/index.d.ts +24 -0
  55. package/dist/esm/generator/index.d.ts.map +1 -0
  56. package/dist/esm/generator/index.js +36 -0
  57. package/dist/esm/generator/index.js.map +1 -0
  58. package/dist/esm/generator/scanner.d.ts +18 -0
  59. package/dist/esm/generator/scanner.d.ts.map +1 -0
  60. package/dist/esm/generator/scanner.js +166 -0
  61. package/dist/esm/generator/scanner.js.map +1 -0
  62. package/dist/esm/index.d.ts +1 -6
  63. package/dist/esm/index.d.ts.map +1 -1
  64. package/dist/esm/index.js +1 -6
  65. package/dist/esm/index.js.map +1 -1
  66. package/package.json +26 -45
  67. package/dist/cjs/base/base-artifact-booter.d.ts +0 -18
  68. package/dist/cjs/base/base-artifact-booter.d.ts.map +0 -1
  69. package/dist/cjs/base/base-artifact-booter.js +0 -85
  70. package/dist/cjs/base/base-artifact-booter.js.map +0 -1
  71. package/dist/cjs/base/index.d.ts +0 -2
  72. package/dist/cjs/base/index.d.ts.map +0 -1
  73. package/dist/cjs/base/index.js +0 -18
  74. package/dist/cjs/base/index.js.map +0 -1
  75. package/dist/cjs/boot.mixin.d.ts +0 -65
  76. package/dist/cjs/boot.mixin.d.ts.map +0 -1
  77. package/dist/cjs/boot.mixin.js +0 -29
  78. package/dist/cjs/boot.mixin.js.map +0 -1
  79. package/dist/cjs/booters/controller.booter.d.ts +0 -10
  80. package/dist/cjs/booters/controller.booter.d.ts.map +0 -1
  81. package/dist/cjs/booters/controller.booter.js +0 -45
  82. package/dist/cjs/booters/controller.booter.js.map +0 -1
  83. package/dist/cjs/booters/datasource.booter.d.ts +0 -10
  84. package/dist/cjs/booters/datasource.booter.d.ts.map +0 -1
  85. package/dist/cjs/booters/datasource.booter.js +0 -45
  86. package/dist/cjs/booters/datasource.booter.js.map +0 -1
  87. package/dist/cjs/booters/index.d.ts +0 -5
  88. package/dist/cjs/booters/index.d.ts.map +0 -1
  89. package/dist/cjs/booters/index.js +0 -21
  90. package/dist/cjs/booters/index.js.map +0 -1
  91. package/dist/cjs/booters/repository.booter.d.ts +0 -10
  92. package/dist/cjs/booters/repository.booter.d.ts.map +0 -1
  93. package/dist/cjs/booters/repository.booter.js +0 -45
  94. package/dist/cjs/booters/repository.booter.js.map +0 -1
  95. package/dist/cjs/booters/service.booter.d.ts +0 -10
  96. package/dist/cjs/booters/service.booter.d.ts.map +0 -1
  97. package/dist/cjs/booters/service.booter.js +0 -45
  98. package/dist/cjs/booters/service.booter.js.map +0 -1
  99. package/dist/cjs/bootstrapper.d.ts +0 -14
  100. package/dist/cjs/bootstrapper.d.ts.map +0 -1
  101. package/dist/cjs/bootstrapper.js +0 -121
  102. package/dist/cjs/bootstrapper.js.map +0 -1
  103. package/dist/cjs/common/constants.d.ts +0 -6
  104. package/dist/cjs/common/constants.d.ts.map +0 -1
  105. package/dist/cjs/common/constants.js +0 -10
  106. package/dist/cjs/common/constants.js.map +0 -1
  107. package/dist/cjs/common/index.d.ts.map +0 -1
  108. package/dist/cjs/common/index.js.map +0 -1
  109. package/dist/cjs/common/types.d.ts +0 -52
  110. package/dist/cjs/common/types.d.ts.map +0 -1
  111. package/dist/cjs/common/types.js +0 -5
  112. package/dist/cjs/common/types.js.map +0 -1
  113. package/dist/cjs/utilities/boot.utility.d.ts +0 -9
  114. package/dist/cjs/utilities/boot.utility.d.ts.map +0 -1
  115. package/dist/cjs/utilities/boot.utility.js +0 -51
  116. package/dist/cjs/utilities/boot.utility.js.map +0 -1
  117. package/dist/cjs/utilities/index.d.ts +0 -2
  118. package/dist/cjs/utilities/index.d.ts.map +0 -1
  119. package/dist/cjs/utilities/index.js +0 -18
  120. package/dist/cjs/utilities/index.js.map +0 -1
  121. package/dist/esm/base/base-artifact-booter.d.ts +0 -18
  122. package/dist/esm/base/base-artifact-booter.d.ts.map +0 -1
  123. package/dist/esm/base/base-artifact-booter.js +0 -81
  124. package/dist/esm/base/base-artifact-booter.js.map +0 -1
  125. package/dist/esm/base/index.d.ts +0 -2
  126. package/dist/esm/base/index.d.ts.map +0 -1
  127. package/dist/esm/base/index.js +0 -2
  128. package/dist/esm/base/index.js.map +0 -1
  129. package/dist/esm/boot.mixin.d.ts +0 -65
  130. package/dist/esm/boot.mixin.d.ts.map +0 -1
  131. package/dist/esm/boot.mixin.js +0 -25
  132. package/dist/esm/boot.mixin.js.map +0 -1
  133. package/dist/esm/booters/controller.booter.d.ts +0 -10
  134. package/dist/esm/booters/controller.booter.d.ts.map +0 -1
  135. package/dist/esm/booters/controller.booter.js +0 -42
  136. package/dist/esm/booters/controller.booter.js.map +0 -1
  137. package/dist/esm/booters/datasource.booter.d.ts +0 -10
  138. package/dist/esm/booters/datasource.booter.d.ts.map +0 -1
  139. package/dist/esm/booters/datasource.booter.js +0 -42
  140. package/dist/esm/booters/datasource.booter.js.map +0 -1
  141. package/dist/esm/booters/index.d.ts +0 -5
  142. package/dist/esm/booters/index.d.ts.map +0 -1
  143. package/dist/esm/booters/index.js +0 -5
  144. package/dist/esm/booters/index.js.map +0 -1
  145. package/dist/esm/booters/repository.booter.d.ts +0 -10
  146. package/dist/esm/booters/repository.booter.d.ts.map +0 -1
  147. package/dist/esm/booters/repository.booter.js +0 -42
  148. package/dist/esm/booters/repository.booter.js.map +0 -1
  149. package/dist/esm/booters/service.booter.d.ts +0 -10
  150. package/dist/esm/booters/service.booter.d.ts.map +0 -1
  151. package/dist/esm/booters/service.booter.js +0 -42
  152. package/dist/esm/booters/service.booter.js.map +0 -1
  153. package/dist/esm/bootstrapper.d.ts +0 -14
  154. package/dist/esm/bootstrapper.d.ts.map +0 -1
  155. package/dist/esm/bootstrapper.js +0 -118
  156. package/dist/esm/bootstrapper.js.map +0 -1
  157. package/dist/esm/common/constants.d.ts +0 -6
  158. package/dist/esm/common/constants.d.ts.map +0 -1
  159. package/dist/esm/common/constants.js +0 -6
  160. package/dist/esm/common/constants.js.map +0 -1
  161. package/dist/esm/common/index.d.ts.map +0 -1
  162. package/dist/esm/common/index.js.map +0 -1
  163. package/dist/esm/common/types.d.ts +0 -52
  164. package/dist/esm/common/types.d.ts.map +0 -1
  165. package/dist/esm/common/types.js +0 -2
  166. package/dist/esm/common/types.js.map +0 -1
  167. package/dist/esm/utilities/boot.utility.d.ts +0 -9
  168. package/dist/esm/utilities/boot.utility.d.ts.map +0 -1
  169. package/dist/esm/utilities/boot.utility.js +0 -46
  170. package/dist/esm/utilities/boot.utility.js.map +0 -1
  171. package/dist/esm/utilities/index.d.ts +0 -2
  172. package/dist/esm/utilities/index.d.ts.map +0 -1
  173. package/dist/esm/utilities/index.js +0 -2
  174. package/dist/esm/utilities/index.js.map +0 -1
@@ -1,65 +0,0 @@
1
- import { IBootOptions, IBootReport } from './common/types';
2
- import { TMixinTarget } from '@venizia/ignis-helpers';
3
- import { Container } from '@venizia/ignis-inversion';
4
- export declare const BootMixin: <T extends TMixinTarget<Container>>(baseClass: T) => {
5
- new (...args: any[]): {
6
- bootOptions?: IBootOptions | undefined;
7
- projectRoot?: string;
8
- boot(): Promise<IBootReport>;
9
- instantiate: <T_1>(cls: import("@venizia/ignis-inversion").TClass<T_1>) => T_1;
10
- getMetadataRegistry: () => import("@venizia/ignis-inversion").MetadataRegistry;
11
- bind: <T_1>(opts: {
12
- key: import("@venizia/ignis-inversion").TBindingKey;
13
- }) => import("@venizia/ignis-inversion").Binding<T_1>;
14
- isBound: (opts: {
15
- key: import("@venizia/ignis-inversion").TBindingKey;
16
- }) => boolean;
17
- getBinding: <T_1>(opts: {
18
- key: import("@venizia/ignis-inversion").TBindingKey | {
19
- namespace: string;
20
- key: string;
21
- };
22
- }) => import("@venizia/ignis-inversion").TNullable<import("@venizia/ignis-inversion").Binding<T_1>>;
23
- unbind: (opts: {
24
- key: import("@venizia/ignis-inversion").TBindingKey;
25
- }) => boolean;
26
- set: <T_1>(opts: {
27
- binding: import("@venizia/ignis-inversion").Binding<T_1>;
28
- }) => void;
29
- get: {
30
- <T_1>(opts: {
31
- key: import("@venizia/ignis-inversion").TBindingKey | {
32
- namespace: string;
33
- key: string;
34
- };
35
- isOptional?: false;
36
- }): T_1;
37
- <T_1>(opts: {
38
- key: import("@venizia/ignis-inversion").TBindingKey | {
39
- namespace: string;
40
- key: string;
41
- };
42
- isOptional?: boolean;
43
- }): T_1 | undefined;
44
- };
45
- gets: <T_1 extends unknown[]>(opts: {
46
- bindings: { [K in keyof T_1]: {
47
- key: import("@venizia/ignis-inversion").TBindingKey | {
48
- namespace: string;
49
- key: string;
50
- };
51
- isOptional?: boolean;
52
- }; };
53
- }) => { [K in keyof T_1]: T_1[K] | undefined; };
54
- resolve: <T_1>(cls: import("@venizia/ignis-inversion").TClass<T_1>) => T_1;
55
- findByTag: <T_1 = any>(opts: {
56
- tag: string;
57
- exclude?: Array<string> | Set<string>;
58
- }) => import("@venizia/ignis-inversion").Binding<T_1>[];
59
- clear: () => void;
60
- reset: () => void;
61
- scope: string;
62
- identifier: string;
63
- };
64
- } & T;
65
- //# sourceMappingURL=boot.mixin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"boot.mixin.d.ts","sourceRoot":"","sources":["../../src/boot.mixin.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAiB,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAEpE,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,YAAY,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC;kBAEhD,GAAG,EAAE;sBAaZ,YAAY,GAAG,SAAS;sBACxB,MAAM;gBAEZ,OAAO,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;0BARwB,CAAC;;;;;;;0BAKlD,CAAC;;;;;;;;;0BAOA,CAAC;;;;;;mBAOwD,CAAC;;;;;;;KADjE,CAAC"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BootMixin = void 0;
4
- // Never '@venizia/ignis-boot' here: importing the package from inside itself resolves through its own dist, so the source would depend on a build of itself.
5
- const booters_1 = require("./booters");
6
- const bootstrapper_1 = require("./bootstrapper");
7
- const ignis_inversion_1 = require("@venizia/ignis-inversion");
8
- const BootMixin = (baseClass) => {
9
- class Mixed extends baseClass {
10
- constructor(...args) {
11
- super(...args);
12
- this.bind({ key: '@app/instance' }).toProvider(() => this);
13
- this.bind({ key: 'booter.DatasourceBooter' }).toClass(booters_1.DatasourceBooter).setTags('booter');
14
- this.bind({ key: 'booter.RepositoryBooter' }).toClass(booters_1.RepositoryBooter).setTags('booter');
15
- this.bind({ key: 'booter.ServiceBooter' }).toClass(booters_1.ServiceBooter).setTags('booter');
16
- this.bind({ key: 'booter.ControllerBooter' }).toClass(booters_1.ControllerBooter).setTags('booter');
17
- this.bind({ key: 'bootstrapper' }).toClass(bootstrapper_1.Bootstrapper).setScope(ignis_inversion_1.BindingScopes.SINGLETON);
18
- }
19
- boot() {
20
- this.bind({ key: '@app/boot-options' }).toValue(this.bootOptions ?? {});
21
- this.bind({ key: '@app/project_root' }).toValue(this.projectRoot ?? process.cwd());
22
- const bootstrapper = this.get({ key: 'bootstrapper' });
23
- return bootstrapper.boot({});
24
- }
25
- }
26
- return Mixed;
27
- };
28
- exports.BootMixin = BootMixin;
29
- //# sourceMappingURL=boot.mixin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"boot.mixin.js","sourceRoot":"","sources":["../../src/boot.mixin.ts"],"names":[],"mappings":";;;AAAA,6JAA6J;AAC7J,uCAAgG;AAChG,iDAA8C;AAG9C,8DAAoE;AAE7D,MAAM,SAAS,GAAG,CAAoC,SAAY,EAAE,EAAE;IAC3E,MAAM,KAAM,SAAQ,SAAS;QAC3B,YAAY,GAAG,IAAW;YACxB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YAEf,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAE3D,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,OAAO,CAAC,0BAAgB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC1F,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,OAAO,CAAC,0BAAgB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC1F,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,OAAO,CAAC,uBAAa,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACpF,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,OAAO,CAAC,0BAAgB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAE1F,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,2BAAY,CAAC,CAAC,QAAQ,CAAC,+BAAa,CAAC,SAAS,CAAC,CAAC;QAC7F,CAAC;QAKD,IAAI;YACF,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAEnF,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAe,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC;YACrE,OAAO,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/B,CAAC;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AA5BW,QAAA,SAAS,aA4BpB"}
@@ -1,10 +0,0 @@
1
- import { BaseArtifactBooter } from '../base/base-artifact-booter';
2
- import { IApplication, IBootOptions } from '../common';
3
- export declare class ControllerBooter extends BaseArtifactBooter {
4
- private readonly application;
5
- constructor(root: string, application: IApplication, bootOptions: IBootOptions);
6
- protected getDefaultDirs(): string[];
7
- protected getDefaultExtensions(): string[];
8
- protected bind(): Promise<void>;
9
- }
10
- //# sourceMappingURL=controller.booter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"controller.booter.d.ts","sourceRoot":"","sources":["../../../src/booters/controller.booter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGtD,qBAAa,gBAAiB,SAAQ,kBAAkB;IAGlB,OAAO,CAAC,QAAQ,CAAC,WAAW;gBADxB,IAAI,EAAE,MAAM,EACC,WAAW,EAAE,YAAY,EACtC,WAAW,EAAE,YAAY;cAK9C,cAAc,IAAI,MAAM,EAAE;cAI1B,oBAAoB,IAAI,MAAM,EAAE;cAI1B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAO/C"}
@@ -1,45 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
- var ControllerBooter_1;
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.ControllerBooter = void 0;
17
- const base_artifact_booter_1 = require("../base/base-artifact-booter");
18
- const ignis_inversion_1 = require("@venizia/ignis-inversion");
19
- let ControllerBooter = ControllerBooter_1 = class ControllerBooter extends base_artifact_booter_1.BaseArtifactBooter {
20
- constructor(root, application, bootOptions) {
21
- super({ scope: ControllerBooter_1.name, root, artifactOptions: bootOptions.controllers ?? {} });
22
- this.application = application;
23
- }
24
- getDefaultDirs() {
25
- return ['controllers'];
26
- }
27
- getDefaultExtensions() {
28
- return ['.controller.js'];
29
- }
30
- async bind() {
31
- for (const cls of this.loadedClasses) {
32
- const key = ignis_inversion_1.BindingKeys.build({ namespace: 'controllers', key: cls.name });
33
- this.application.bind({ key }).toClass(cls).setTags('controllers');
34
- this.logger.for(this.bind.name).debug('Bound key: %s', key);
35
- }
36
- }
37
- };
38
- exports.ControllerBooter = ControllerBooter;
39
- exports.ControllerBooter = ControllerBooter = ControllerBooter_1 = __decorate([
40
- __param(0, (0, ignis_inversion_1.inject)({ key: '@app/project_root' })),
41
- __param(1, (0, ignis_inversion_1.inject)({ key: '@app/instance' })),
42
- __param(2, (0, ignis_inversion_1.inject)({ key: '@app/boot-options' })),
43
- __metadata("design:paramtypes", [String, Object, Object])
44
- ], ControllerBooter);
45
- //# sourceMappingURL=controller.booter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"controller.booter.js","sourceRoot":"","sources":["../../../src/booters/controller.booter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAiE;AAEjE,8DAA+D;AAE/D,IAAa,gBAAgB,wBAA7B,MAAa,gBAAiB,SAAQ,yCAAkB;IACtD,YACwC,IAAY,EACC,WAAyB,EACtC,WAAyB;QAE/D,KAAK,CAAC,EAAE,KAAK,EAAE,kBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC;QAH3C,gBAAW,GAAX,WAAW,CAAc;IAI9E,CAAC;IAEkB,cAAc;QAC/B,OAAO,CAAC,aAAa,CAAC,CAAC;IACzB,CAAC;IAEkB,oBAAoB;QACrC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5B,CAAC;IAEkB,KAAK,CAAC,IAAI;QAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,6BAAW,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACnE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;CACF,CAAA;AAxBY,4CAAgB;2BAAhB,gBAAgB;IAExB,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;IACpC,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAA;IAChC,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;;GAJ5B,gBAAgB,CAwB5B"}
@@ -1,10 +0,0 @@
1
- import { BaseArtifactBooter } from '../base/base-artifact-booter';
2
- import { IApplication, IBootOptions } from '../common';
3
- export declare class DatasourceBooter extends BaseArtifactBooter {
4
- private readonly application;
5
- constructor(root: string, application: IApplication, bootOptions: IBootOptions);
6
- protected getDefaultDirs(): string[];
7
- protected getDefaultExtensions(): string[];
8
- protected bind(): Promise<void>;
9
- }
10
- //# sourceMappingURL=datasource.booter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"datasource.booter.d.ts","sourceRoot":"","sources":["../../../src/booters/datasource.booter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGtD,qBAAa,gBAAiB,SAAQ,kBAAkB;IAGlB,OAAO,CAAC,QAAQ,CAAC,WAAW;gBADxB,IAAI,EAAE,MAAM,EACC,WAAW,EAAE,YAAY,EACtC,WAAW,EAAE,YAAY;cAK9C,cAAc,IAAI,MAAM,EAAE;cAI1B,oBAAoB,IAAI,MAAM,EAAE;cAI1B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAO/C"}
@@ -1,45 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
- var DatasourceBooter_1;
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.DatasourceBooter = void 0;
17
- const base_artifact_booter_1 = require("../base/base-artifact-booter");
18
- const ignis_inversion_1 = require("@venizia/ignis-inversion");
19
- let DatasourceBooter = DatasourceBooter_1 = class DatasourceBooter extends base_artifact_booter_1.BaseArtifactBooter {
20
- constructor(root, application, bootOptions) {
21
- super({ scope: DatasourceBooter_1.name, root, artifactOptions: bootOptions.datasources ?? {} });
22
- this.application = application;
23
- }
24
- getDefaultDirs() {
25
- return ['datasources'];
26
- }
27
- getDefaultExtensions() {
28
- return ['.datasource.js'];
29
- }
30
- async bind() {
31
- for (const cls of this.loadedClasses) {
32
- const key = ignis_inversion_1.BindingKeys.build({ namespace: 'datasources', key: cls.name });
33
- this.application.bind({ key }).toClass(cls).setTags('datasources').setScope('singleton');
34
- this.logger.for(this.bind.name).debug('Bound key: %s', key);
35
- }
36
- }
37
- };
38
- exports.DatasourceBooter = DatasourceBooter;
39
- exports.DatasourceBooter = DatasourceBooter = DatasourceBooter_1 = __decorate([
40
- __param(0, (0, ignis_inversion_1.inject)({ key: '@app/project_root' })),
41
- __param(1, (0, ignis_inversion_1.inject)({ key: '@app/instance' })),
42
- __param(2, (0, ignis_inversion_1.inject)({ key: '@app/boot-options' })),
43
- __metadata("design:paramtypes", [String, Object, Object])
44
- ], DatasourceBooter);
45
- //# sourceMappingURL=datasource.booter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"datasource.booter.js","sourceRoot":"","sources":["../../../src/booters/datasource.booter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAiE;AAEjE,8DAA+D;AAE/D,IAAa,gBAAgB,wBAA7B,MAAa,gBAAiB,SAAQ,yCAAkB;IACtD,YACwC,IAAY,EACC,WAAyB,EACtC,WAAyB;QAE/D,KAAK,CAAC,EAAE,KAAK,EAAE,kBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC;QAH3C,gBAAW,GAAX,WAAW,CAAc;IAI9E,CAAC;IAEkB,cAAc;QAC/B,OAAO,CAAC,aAAa,CAAC,CAAC;IACzB,CAAC;IAEkB,oBAAoB;QACrC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5B,CAAC;IAEkB,KAAK,CAAC,IAAI;QAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,6BAAW,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACzF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;CACF,CAAA;AAxBY,4CAAgB;2BAAhB,gBAAgB;IAExB,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;IACpC,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAA;IAChC,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;;GAJ5B,gBAAgB,CAwB5B"}
@@ -1,5 +0,0 @@
1
- export * from './controller.booter';
2
- export * from './datasource.booter';
3
- export * from './repository.booter';
4
- export * from './service.booter';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/booters/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC"}
@@ -1,21 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./controller.booter"), exports);
18
- __exportStar(require("./datasource.booter"), exports);
19
- __exportStar(require("./repository.booter"), exports);
20
- __exportStar(require("./service.booter"), exports);
21
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/booters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,sDAAoC;AACpC,sDAAoC;AACpC,mDAAiC"}
@@ -1,10 +0,0 @@
1
- import { BaseArtifactBooter } from '../base/base-artifact-booter';
2
- import { IApplication, IBootOptions } from '../common';
3
- export declare class RepositoryBooter extends BaseArtifactBooter {
4
- protected application: IApplication;
5
- constructor(root: string, application: IApplication, bootOptions: IBootOptions);
6
- protected getDefaultDirs(): string[];
7
- protected getDefaultExtensions(): string[];
8
- protected bind(): Promise<void>;
9
- }
10
- //# sourceMappingURL=repository.booter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repository.booter.d.ts","sourceRoot":"","sources":["../../../src/booters/repository.booter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGtD,qBAAa,gBAAiB,SAAQ,kBAAkB;IAGlB,SAAS,CAAC,WAAW,EAAE,YAAY;gBAD/B,IAAI,EAAE,MAAM,EACN,WAAW,EAAE,YAAY,EAC/B,WAAW,EAAE,YAAY;cAK9C,cAAc,IAAI,MAAM,EAAE;cAI1B,oBAAoB,IAAI,MAAM,EAAE;cAI1B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAO/C"}
@@ -1,45 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
- var RepositoryBooter_1;
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.RepositoryBooter = void 0;
17
- const base_artifact_booter_1 = require("../base/base-artifact-booter");
18
- const ignis_inversion_1 = require("@venizia/ignis-inversion");
19
- let RepositoryBooter = RepositoryBooter_1 = class RepositoryBooter extends base_artifact_booter_1.BaseArtifactBooter {
20
- constructor(root, application, bootOptions) {
21
- super({ scope: RepositoryBooter_1.name, root, artifactOptions: bootOptions.repositories ?? {} });
22
- this.application = application;
23
- }
24
- getDefaultDirs() {
25
- return ['repositories'];
26
- }
27
- getDefaultExtensions() {
28
- return ['.repository.js'];
29
- }
30
- async bind() {
31
- for (const cls of this.loadedClasses) {
32
- const key = ignis_inversion_1.BindingKeys.build({ namespace: 'repositories', key: cls.name });
33
- this.application.bind({ key }).toClass(cls).setTags('repositories');
34
- this.logger.for(this.bind.name).debug('Bound key: %s', key);
35
- }
36
- }
37
- };
38
- exports.RepositoryBooter = RepositoryBooter;
39
- exports.RepositoryBooter = RepositoryBooter = RepositoryBooter_1 = __decorate([
40
- __param(0, (0, ignis_inversion_1.inject)({ key: '@app/project_root' })),
41
- __param(1, (0, ignis_inversion_1.inject)({ key: '@app/instance' })),
42
- __param(2, (0, ignis_inversion_1.inject)({ key: '@app/boot-options' })),
43
- __metadata("design:paramtypes", [String, Object, Object])
44
- ], RepositoryBooter);
45
- //# sourceMappingURL=repository.booter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repository.booter.js","sourceRoot":"","sources":["../../../src/booters/repository.booter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAiE;AAEjE,8DAA+D;AAE/D,IAAa,gBAAgB,wBAA7B,MAAa,gBAAiB,SAAQ,yCAAkB;IACtD,YACwC,IAAY,EACN,WAAyB,EAC/B,WAAyB;QAE/D,KAAK,CAAC,EAAE,KAAK,EAAE,kBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC,CAAC;QAHnD,gBAAW,GAAX,WAAW,CAAc;IAIvE,CAAC;IAEkB,cAAc;QAC/B,OAAO,CAAC,cAAc,CAAC,CAAC;IAC1B,CAAC;IAEkB,oBAAoB;QACrC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5B,CAAC;IAEkB,KAAK,CAAC,IAAI;QAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,6BAAW,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5E,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YACpE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;CACF,CAAA;AAxBY,4CAAgB;2BAAhB,gBAAgB;IAExB,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;IACpC,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAA;IAChC,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;;GAJ5B,gBAAgB,CAwB5B"}
@@ -1,10 +0,0 @@
1
- import { BaseArtifactBooter } from '../base/base-artifact-booter';
2
- import { IApplication, IBootOptions } from '../common';
3
- export declare class ServiceBooter extends BaseArtifactBooter {
4
- protected application: IApplication;
5
- constructor(root: string, application: IApplication, bootOptions: IBootOptions);
6
- protected getDefaultDirs(): string[];
7
- protected getDefaultExtensions(): string[];
8
- protected bind(): Promise<void>;
9
- }
10
- //# sourceMappingURL=service.booter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"service.booter.d.ts","sourceRoot":"","sources":["../../../src/booters/service.booter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGtD,qBAAa,aAAc,SAAQ,kBAAkB;IAGf,SAAS,CAAC,WAAW,EAAE,YAAY;gBAD/B,IAAI,EAAE,MAAM,EACN,WAAW,EAAE,YAAY,EAC/B,WAAW,EAAE,YAAY;cAK9C,cAAc,IAAI,MAAM,EAAE;cAI1B,oBAAoB,IAAI,MAAM,EAAE;cAI1B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAO/C"}
@@ -1,45 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
- var ServiceBooter_1;
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.ServiceBooter = void 0;
17
- const base_artifact_booter_1 = require("../base/base-artifact-booter");
18
- const ignis_inversion_1 = require("@venizia/ignis-inversion");
19
- let ServiceBooter = ServiceBooter_1 = class ServiceBooter extends base_artifact_booter_1.BaseArtifactBooter {
20
- constructor(root, application, bootOptions) {
21
- super({ scope: ServiceBooter_1.name, root, artifactOptions: bootOptions.services ?? {} });
22
- this.application = application;
23
- }
24
- getDefaultDirs() {
25
- return ['services'];
26
- }
27
- getDefaultExtensions() {
28
- return ['.service.js'];
29
- }
30
- async bind() {
31
- for (const cls of this.loadedClasses) {
32
- const key = ignis_inversion_1.BindingKeys.build({ namespace: 'services', key: cls.name });
33
- this.application.bind({ key }).toClass(cls).setTags('services');
34
- this.logger.for(this.bind.name).debug('Bound key: %s', key);
35
- }
36
- }
37
- };
38
- exports.ServiceBooter = ServiceBooter;
39
- exports.ServiceBooter = ServiceBooter = ServiceBooter_1 = __decorate([
40
- __param(0, (0, ignis_inversion_1.inject)({ key: '@app/project_root' })),
41
- __param(1, (0, ignis_inversion_1.inject)({ key: '@app/instance' })),
42
- __param(2, (0, ignis_inversion_1.inject)({ key: '@app/boot-options' })),
43
- __metadata("design:paramtypes", [String, Object, Object])
44
- ], ServiceBooter);
45
- //# sourceMappingURL=service.booter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"service.booter.js","sourceRoot":"","sources":["../../../src/booters/service.booter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAiE;AAEjE,8DAA+D;AAE/D,IAAa,aAAa,qBAA1B,MAAa,aAAc,SAAQ,yCAAkB;IACnD,YACwC,IAAY,EACN,WAAyB,EAC/B,WAAyB;QAE/D,KAAK,CAAC,EAAE,KAAK,EAAE,eAAa,CAAC,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,CAAC;QAH5C,gBAAW,GAAX,WAAW,CAAc;IAIvE,CAAC;IAEkB,cAAc;QAC/B,OAAO,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAEkB,oBAAoB;QACrC,OAAO,CAAC,aAAa,CAAC,CAAC;IACzB,CAAC;IAEkB,KAAK,CAAC,IAAI;QAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,6BAAW,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;CACF,CAAA;AAxBY,sCAAa;wBAAb,aAAa;IAErB,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;IACpC,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAA;IAChC,WAAA,IAAA,wBAAM,EAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;;GAJ5B,aAAa,CAwBzB"}
@@ -1,14 +0,0 @@
1
- import { IApplication, IBootExecutionOptions, IBootReport, IBootstrapper } from './common/types';
2
- import { BaseHelper } from '@venizia/ignis-helpers';
3
- export declare class Bootstrapper extends BaseHelper implements IBootstrapper {
4
- private readonly application;
5
- private booters;
6
- private phaseStartTimings;
7
- private phaseEndTimings;
8
- constructor(application: IApplication);
9
- boot(opts: IBootExecutionOptions): Promise<IBootReport>;
10
- private discoverBooters;
11
- private runPhase;
12
- private generateReport;
13
- }
14
- //# sourceMappingURL=bootstrapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bootstrapper.d.ts","sourceRoot":"","sources":["../../src/bootstrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EAEZ,qBAAqB,EACrB,WAAW,EACX,aAAa,EAEd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAY,MAAM,wBAAwB,CAAC;AAG9D,qBAAa,YAAa,SAAQ,UAAW,YAAW,aAAa;IAKrB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAJ1E,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,eAAe,CAAkC;gBAEM,WAAW,EAAE,YAAY;IAIlF,IAAI,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC;YAgB/C,eAAe;YA2Bf,QAAQ;IAsDtB,OAAO,CAAC,cAAc;CAiBvB"}
@@ -1,121 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
- var Bootstrapper_1;
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.Bootstrapper = void 0;
17
- const types_1 = require("./common/types");
18
- const ignis_helpers_1 = require("@venizia/ignis-helpers");
19
- const ignis_inversion_1 = require("@venizia/ignis-inversion");
20
- let Bootstrapper = Bootstrapper_1 = class Bootstrapper extends ignis_helpers_1.BaseHelper {
21
- constructor(application) {
22
- super({ scope: Bootstrapper_1.name });
23
- this.application = application;
24
- this.booters = [];
25
- this.phaseStartTimings = new Map();
26
- this.phaseEndTimings = new Map();
27
- }
28
- async boot(opts) {
29
- const { phases = types_1.BOOT_PHASES, booters } = opts;
30
- const startedAt = performance.now();
31
- await this.discoverBooters({ booterNames: booters });
32
- this.logger
33
- .for(this.boot.name)
34
- .debug(`Starting boot | Number of booters: %d`, this.booters.length);
35
- for (const phase of phases) {
36
- await this.runPhase({ phase });
37
- }
38
- return this.generateReport({ phases, totalDurationMs: performance.now() - startedAt });
39
- }
40
- async discoverBooters(opts) {
41
- const { booterNames } = opts;
42
- // Reset first: on a second boot(), pushing onto the previous run's list registers every artifact again.
43
- this.booters = [];
44
- this.phaseStartTimings.clear();
45
- this.phaseEndTimings.clear();
46
- const wanted = booterNames?.length ? new Set(booterNames) : undefined;
47
- const booterBindings = this.application.findByTag({ tag: 'booter' });
48
- for (const binding of booterBindings) {
49
- const booter = binding.getValue(this.application);
50
- // An ignored filter is worse than no filter: the caller believes it scoped the boot.
51
- if (wanted && !wanted.has(booter.constructor.name)) {
52
- this.logger
53
- .for(this.discoverBooters.name)
54
- .debug(`SKIP booter not in filter | Booter: %s`, booter.constructor.name);
55
- continue;
56
- }
57
- this.booters.push(booter);
58
- this.logger.for(this.discoverBooters.name).debug(`Discovered booter: %s`, binding.key);
59
- }
60
- }
61
- async runPhase(opts) {
62
- const { phase } = opts;
63
- this.phaseStartTimings.set(phase, performance.now());
64
- this.logger.for(this.runPhase.name).debug(`Starting phase: %s`, phase.toUpperCase());
65
- for (const booter of this.booters) {
66
- const phaseMethod = booter[phase];
67
- if (!phaseMethod) {
68
- this.logger
69
- .for(this.runPhase.name)
70
- .debug(`SKIP not implemented booter | Phase: %s | Booter: %s`, phase, booter.constructor.name);
71
- continue;
72
- }
73
- if (typeof phaseMethod !== 'function') {
74
- this.logger
75
- .for(this.runPhase.name)
76
- .debug(`SKIP not a function booter | Phase: %s | Booter: %s`, phase, booter.constructor.name);
77
- continue;
78
- }
79
- try {
80
- this.logger
81
- .for(this.runPhase.name)
82
- .debug(`Running | Phase: %s | Booter: %s`, phase, booter.constructor.name);
83
- await phaseMethod.call(booter);
84
- }
85
- catch (error) {
86
- const errorMessage = error?.message || String(error);
87
- // Without the cause, the stack of the booter that actually threw - the real diagnosis - is gone.
88
- throw (0, ignis_helpers_1.getError)({
89
- message: `[Bootstrapper][runPhase] Error during phase '${phase}' on booter '${booter.constructor.name}': ${errorMessage}`,
90
- cause: error,
91
- });
92
- }
93
- }
94
- this.phaseEndTimings.set(phase, performance.now());
95
- const start = this.phaseStartTimings.get(phase) ?? 0;
96
- const end = this.phaseEndTimings.get(phase) ?? 0;
97
- const duration = end - start;
98
- this.logger
99
- .for(this.runPhase.name)
100
- .debug(`Completed phase: %s | Took: %d ms`, phase.toUpperCase(), duration);
101
- }
102
- generateReport(opts) {
103
- const { phases, totalDurationMs } = opts;
104
- const report = {
105
- booters: this.booters.map(booter => booter.constructor.name),
106
- phases: phases.map(phase => ({
107
- phase,
108
- durationMs: (this.phaseEndTimings.get(phase) ?? 0) - (this.phaseStartTimings.get(phase) ?? 0),
109
- })),
110
- totalDurationMs,
111
- };
112
- this.logger.for(this.generateReport.name).debug(`Boot report: %j`, report);
113
- return report;
114
- }
115
- };
116
- exports.Bootstrapper = Bootstrapper;
117
- exports.Bootstrapper = Bootstrapper = Bootstrapper_1 = __decorate([
118
- __param(0, (0, ignis_inversion_1.inject)({ key: '@app/instance' })),
119
- __metadata("design:paramtypes", [Object])
120
- ], Bootstrapper);
121
- //# sourceMappingURL=bootstrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bootstrapper.js","sourceRoot":"","sources":["../../src/bootstrapper.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- export declare class BootPhases {
2
- static readonly CONFIGURE = "configure";
3
- static readonly DISCOVER = "discover";
4
- static readonly LOAD = "load";
5
- }
6
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/common/constants.ts"],"names":[],"mappings":"AAAA,qBAAa,UAAU;IACrB,MAAM,CAAC,QAAQ,CAAC,SAAS,eAAe;IACxC,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAc;IACtC,MAAM,CAAC,QAAQ,CAAC,IAAI,UAAU;CAC/B"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BootPhases = void 0;
4
- class BootPhases {
5
- static { this.CONFIGURE = 'configure'; }
6
- static { this.DISCOVER = 'discover'; }
7
- static { this.LOAD = 'load'; }
8
- }
9
- exports.BootPhases = BootPhases;
10
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/common/constants.ts"],"names":[],"mappings":";;;AAAA,MAAa,UAAU;aACL,cAAS,GAAG,WAAW,CAAC;aACxB,aAAQ,GAAG,UAAU,CAAC;aACtB,SAAI,GAAG,MAAM,CAAC;;AAHhC,gCAIC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,8CAA4B"}