@kithinji/orca 1.0.33 → 1.0.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/node/index.cjs +30 -10
- package/dist/node/index.cjs.map +2 -2
- package/dist/node/index.mjs +30 -10
- package/dist/node/index.mjs.map +2 -2
- package/dist/types/node/factory.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/node/index.cjs
CHANGED
|
@@ -2579,7 +2579,7 @@ var ControllerRegistrationService = class {
|
|
|
2579
2579
|
this.injector = injector;
|
|
2580
2580
|
this.app = app;
|
|
2581
2581
|
}
|
|
2582
|
-
registerEventHandlers(CtrlCls, instance, actor) {
|
|
2582
|
+
async registerEventHandlers(CtrlCls, instance, actor) {
|
|
2583
2583
|
const eventHandlers = Reflect.ownKeys(CtrlCls.prototype).filter(
|
|
2584
2584
|
(key) => Reflect.hasOwnMetadata(EVENT_HANDLER, CtrlCls.prototype, key)
|
|
2585
2585
|
);
|
|
@@ -2590,7 +2590,16 @@ var ControllerRegistrationService = class {
|
|
|
2590
2590
|
methodKey
|
|
2591
2591
|
);
|
|
2592
2592
|
const handler = instance[methodKey];
|
|
2593
|
-
actor.subscribe(eventName, (data) =>
|
|
2593
|
+
actor.subscribe(eventName, async (data) => {
|
|
2594
|
+
try {
|
|
2595
|
+
await handler.call(instance, data);
|
|
2596
|
+
} catch (err) {
|
|
2597
|
+
console.error(
|
|
2598
|
+
`Unhandled error in event handler "${eventName}":`,
|
|
2599
|
+
err
|
|
2600
|
+
);
|
|
2601
|
+
}
|
|
2602
|
+
});
|
|
2594
2603
|
}
|
|
2595
2604
|
}
|
|
2596
2605
|
buildMethodArgs(req, res, paramsMeta, designParams) {
|
|
@@ -2734,7 +2743,7 @@ var ControllerRegistrationService = class {
|
|
|
2734
2743
|
const instance = await this.injector.resolve(CtrlCls);
|
|
2735
2744
|
const prefix = Reflect.getMetadata(CONTROLLER_PREFIX_KEY, CtrlCls) ?? "/";
|
|
2736
2745
|
const actor = await this.injector.resolve(Actor);
|
|
2737
|
-
this.registerEventHandlers(CtrlCls, instance, actor);
|
|
2746
|
+
await this.registerEventHandlers(CtrlCls, instance, actor);
|
|
2738
2747
|
this.registerHttpMethods(CtrlCls, instance, prefix);
|
|
2739
2748
|
}
|
|
2740
2749
|
};
|
|
@@ -2926,7 +2935,7 @@ var NodeFactory = class {
|
|
|
2926
2935
|
{ provide: Actor, useClass: Actor, eager: true }
|
|
2927
2936
|
]);
|
|
2928
2937
|
}
|
|
2929
|
-
static registerControllers(appNode, injector, app) {
|
|
2938
|
+
static async registerControllers(appNode, injector, app) {
|
|
2930
2939
|
const registrationService = new ControllerRegistrationService(
|
|
2931
2940
|
injector,
|
|
2932
2941
|
app
|
|
@@ -2934,18 +2943,29 @@ var NodeFactory = class {
|
|
|
2934
2943
|
const rootControllers = [
|
|
2935
2944
|
...store.get("root_controllers")
|
|
2936
2945
|
];
|
|
2937
|
-
|
|
2946
|
+
await Promise.all(
|
|
2947
|
+
rootControllers.map((ctrl) => registrationService.register(ctrl))
|
|
2948
|
+
);
|
|
2949
|
+
const nodeRegistrationPromises = [];
|
|
2938
2950
|
appNode.traverse((node) => {
|
|
2939
2951
|
const providers = [...node.getProviders().values()];
|
|
2940
2952
|
const controllers = providers.filter((provider) => {
|
|
2941
2953
|
const token = provider.provide;
|
|
2942
2954
|
return typeof token === "function" && Reflect.getMetadata(CONTROLLER, token);
|
|
2943
2955
|
});
|
|
2944
|
-
controllers.forEach(
|
|
2945
|
-
|
|
2946
|
-
|
|
2947
|
-
|
|
2956
|
+
controllers.forEach(
|
|
2957
|
+
(c) => nodeRegistrationPromises.push(
|
|
2958
|
+
registrationService.register(c.useClass)
|
|
2959
|
+
)
|
|
2960
|
+
);
|
|
2961
|
+
providers.filter((provider) => provider.eager).forEach(
|
|
2962
|
+
(p) => nodeRegistrationPromises.push(
|
|
2963
|
+
injector.resolve(p.provide).then(() => {
|
|
2964
|
+
})
|
|
2965
|
+
)
|
|
2966
|
+
);
|
|
2948
2967
|
});
|
|
2968
|
+
await Promise.all(nodeRegistrationPromises);
|
|
2949
2969
|
}
|
|
2950
2970
|
static setupOscRoute(app, injector, rootModule) {
|
|
2951
2971
|
const componentResolver = new ComponentResolver(rootModule);
|
|
@@ -2966,7 +2986,7 @@ var NodeFactory = class {
|
|
|
2966
2986
|
scanner
|
|
2967
2987
|
);
|
|
2968
2988
|
setCurrentInjector(rootInjector);
|
|
2969
|
-
this.registerControllers(appNode, rootInjector, app);
|
|
2989
|
+
await this.registerControllers(appNode, rootInjector, app);
|
|
2970
2990
|
this.setupOscRoute(app, rootInjector, rootModule);
|
|
2971
2991
|
SocketService.setup(server, rootInjector);
|
|
2972
2992
|
return server;
|