@asenajs/asena 0.4.0 → 0.6.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/adapter/AsenaAdapter.js.map +1 -1
- package/dist/lib/adapter/AsenaWebsocketAdapter.js.map +1 -1
- package/dist/lib/ioc/CircularDependencyDetector.js.map +1 -1
- package/dist/lib/ioc/Container.d.ts +7 -0
- package/dist/lib/ioc/Container.js +25 -6
- package/dist/lib/ioc/Container.js.map +1 -1
- package/dist/lib/ioc/CoreContainer.d.ts +1 -1
- package/dist/lib/ioc/CoreContainer.js +12 -1
- package/dist/lib/ioc/CoreContainer.js.map +1 -1
- package/dist/lib/ioc/IocEngine.js +0 -2
- package/dist/lib/ioc/IocEngine.js.map +1 -1
- package/dist/lib/ioc/component/componentUtils.js.map +1 -1
- package/dist/lib/ioc/component/decorators/Inject.d.ts +24 -4
- package/dist/lib/ioc/component/decorators/Inject.js +44 -7
- package/dist/lib/ioc/component/decorators/Inject.js.map +1 -1
- package/dist/lib/ioc/constants/ComponentConstants.d.ts +2 -0
- package/dist/lib/ioc/constants/ComponentConstants.js +3 -0
- package/dist/lib/ioc/constants/ComponentConstants.js.map +1 -1
- package/dist/lib/ioc/types/ICoreServiceNamesType.d.ts +4 -0
- package/dist/lib/ioc/types/ICoreServiceNamesType.js +6 -0
- package/dist/lib/ioc/types/ICoreServiceNamesType.js.map +1 -1
- package/dist/lib/ioc/types/decorators/ComponentType.d.ts +2 -1
- package/dist/lib/ioc/types/decorators/ComponentType.js +1 -0
- package/dist/lib/ioc/types/decorators/ComponentType.js.map +1 -1
- package/dist/lib/server/AsenaServer.d.ts +1 -0
- package/dist/lib/server/AsenaServer.js +16 -10
- package/dist/lib/server/AsenaServer.js.map +1 -1
- package/dist/lib/server/AsenaServerFactory.js +8 -0
- package/dist/lib/server/AsenaServerFactory.js.map +1 -1
- package/dist/lib/server/decorators/components/Controller.js +1 -2
- package/dist/lib/server/decorators/components/Controller.js.map +1 -1
- package/dist/lib/server/decorators/components/EventService.d.ts +37 -0
- package/dist/lib/server/decorators/components/EventService.js +47 -0
- package/dist/lib/server/decorators/components/EventService.js.map +1 -0
- package/dist/lib/server/decorators/components/Middleware.js +1 -2
- package/dist/lib/server/decorators/components/Middleware.js.map +1 -1
- package/dist/lib/server/decorators/components/Schedule.js +1 -2
- package/dist/lib/server/decorators/components/Schedule.js.map +1 -1
- package/dist/lib/server/decorators/components/StaticServe.js +1 -1
- package/dist/lib/server/decorators/components/StaticServe.js.map +1 -1
- package/dist/lib/server/decorators/components/WebSocket.js +1 -2
- package/dist/lib/server/decorators/components/WebSocket.js.map +1 -1
- package/dist/lib/server/decorators/components/index.d.ts +1 -0
- package/dist/lib/server/decorators/components/index.js +1 -0
- package/dist/lib/server/decorators/components/index.js.map +1 -1
- package/dist/lib/server/decorators/index.d.ts +1 -0
- package/dist/lib/server/decorators/index.js +1 -0
- package/dist/lib/server/decorators/index.js.map +1 -1
- package/dist/lib/server/event/EventDispatchService.d.ts +104 -0
- package/dist/lib/server/event/EventDispatchService.js +203 -0
- package/dist/lib/server/event/EventDispatchService.js.map +1 -0
- package/dist/lib/server/event/EventEmitter.d.ts +67 -0
- package/dist/lib/server/event/EventEmitter.js +88 -0
- package/dist/lib/server/event/EventEmitter.js.map +1 -0
- package/dist/lib/server/event/EventService.d.ts +5 -0
- package/dist/lib/server/event/EventService.js +6 -0
- package/dist/lib/server/event/EventService.js.map +1 -0
- package/dist/lib/server/event/decorators/On.d.ts +38 -0
- package/dist/lib/server/event/decorators/On.js +56 -0
- package/dist/lib/server/event/decorators/On.js.map +1 -0
- package/dist/lib/server/event/decorators/index.d.ts +1 -0
- package/dist/lib/server/event/decorators/index.js +2 -0
- package/dist/lib/server/event/decorators/index.js.map +1 -0
- package/dist/lib/server/event/emitter.d.ts +21 -0
- package/dist/lib/server/event/emitter.js +25 -0
- package/dist/lib/server/event/emitter.js.map +1 -0
- package/dist/lib/server/event/eventPatternMatcher.d.ts +24 -0
- package/dist/lib/server/event/eventPatternMatcher.js +112 -0
- package/dist/lib/server/event/eventPatternMatcher.js.map +1 -0
- package/dist/lib/server/event/index.d.ts +6 -0
- package/dist/lib/server/event/index.js +12 -0
- package/dist/lib/server/event/index.js.map +1 -0
- package/dist/lib/server/event/types.d.ts +70 -0
- package/dist/lib/server/event/types.js +2 -0
- package/dist/lib/server/event/types.js.map +1 -0
- package/dist/lib/server/index.d.ts +0 -1
- package/dist/lib/server/index.js +0 -1
- package/dist/lib/server/index.js.map +1 -1
- package/dist/lib/server/messaging/Ulak.d.ts +224 -0
- package/dist/lib/server/messaging/Ulak.js +351 -0
- package/dist/lib/server/messaging/Ulak.js.map +1 -0
- package/dist/lib/server/messaging/index.d.ts +8 -0
- package/dist/lib/server/messaging/index.js +9 -0
- package/dist/lib/server/messaging/index.js.map +1 -0
- package/dist/lib/server/messaging/types.d.ts +73 -0
- package/dist/lib/server/messaging/types.js +35 -0
- package/dist/lib/server/messaging/types.js.map +1 -0
- package/dist/lib/server/src/services/PrepareConfigService.js.map +1 -1
- package/dist/lib/server/src/services/PrepareEventService.d.ts +40 -0
- package/dist/lib/server/src/services/PrepareEventService.js +103 -0
- package/dist/lib/server/src/services/PrepareEventService.js.map +1 -0
- package/dist/lib/server/src/services/PrepareMiddlewareService.js +1 -2
- package/dist/lib/server/src/services/PrepareMiddlewareService.js.map +1 -1
- package/dist/lib/server/src/services/PrepareStaticServeConfigService.js +3 -3
- package/dist/lib/server/src/services/PrepareStaticServeConfigService.js.map +1 -1
- package/dist/lib/server/src/services/PrepareValidatorService.js.map +1 -1
- package/dist/lib/server/src/services/PrepareWebsocketService.d.ts +4 -3
- package/dist/lib/server/src/services/PrepareWebsocketService.js +11 -4
- package/dist/lib/server/src/services/PrepareWebsocketService.js.map +1 -1
- package/dist/lib/server/web/decorators/http.base.d.ts +1 -1
- package/dist/lib/server/web/decorators/http.base.js +1 -1
- package/dist/lib/server/web/decorators/http.base.js.map +1 -1
- package/dist/lib/server/web/helper/middlewareHelper.d.ts +1 -1
- package/dist/lib/server/web/helper/middlewareHelper.js +1 -1
- package/dist/lib/server/web/helper/middlewareHelper.js.map +1 -1
- package/dist/lib/server/web/middleware/AsenaMiddlewareService.js.map +1 -1
- package/dist/lib/server/web/middleware/AsenaStaticServeService.d.ts +1 -1
- package/dist/lib/server/web/middleware/AsenaStaticServeService.js.map +1 -1
- package/dist/lib/server/web/websocket/AsenaSocket.d.ts +237 -4
- package/dist/lib/server/web/websocket/AsenaSocket.js +234 -32
- package/dist/lib/server/web/websocket/AsenaSocket.js.map +1 -1
- package/dist/lib/server/web/websocket/AsenaWebSocketServer.d.ts +3 -16
- package/dist/lib/server/web/websocket/AsenaWebSocketServer.js +3 -20
- package/dist/lib/server/web/websocket/AsenaWebSocketServer.js.map +1 -1
- package/dist/lib/server/web/websocket/AsenaWebSocketService.d.ts +0 -13
- package/dist/lib/server/web/websocket/AsenaWebSocketService.js +1 -21
- package/dist/lib/server/web/websocket/AsenaWebSocketService.js.map +1 -1
- package/dist/lib/utils/index.d.ts +2 -0
- package/dist/lib/utils/index.js +3 -0
- package/dist/lib/utils/index.js.map +1 -0
- package/dist/lib/utils/typedMetadata.js +0 -1
- package/dist/lib/utils/typedMetadata.js.map +1 -1
- package/package.json +32 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsenaServer.js","sourceRoot":"","sources":["../../../lib/server/AsenaServer.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EACL,aAAa,EACb,kBAAkB,EAElB,WAAW,EAEX,iBAAiB,GAClB,MAAM,QAAQ,CAAC;AAUhB,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,KAAK,EAAqB,MAAM,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"AsenaServer.js","sourceRoot":"","sources":["../../../lib/server/AsenaServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,14 @@ export class AsenaServerFactory {
|
|
|
14
14
|
*/
|
|
15
15
|
static async create(options) {
|
|
16
16
|
const { adapter, logger, port, components, gc } = options;
|
|
17
|
+
logger.info(`
|
|
18
|
+
___ _____ ______ _ __ ___
|
|
19
|
+
/ | / ___/ / ____// | / // |
|
|
20
|
+
/ /| | \\__ \\ / __/ / |/ // /| |
|
|
21
|
+
/ ___ | ___/ // /___ / /| // ___ |
|
|
22
|
+
/_/ |_|/____//_____//_/ |_//_/ |_|
|
|
23
|
+
------------------------------------------------------------
|
|
24
|
+
`);
|
|
17
25
|
// Read config file
|
|
18
26
|
const config = await readConfigFile();
|
|
19
27
|
if (!config) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsenaServerFactory.js","sourceRoot":"","sources":["../../../lib/server/AsenaServerFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAK9E,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAa1D;;;GAGG;AACH,MAAM,OAAO,kBAAkB;
|
|
1
|
+
{"version":3,"file":"AsenaServerFactory.js","sourceRoot":"","sources":["../../../lib/server/AsenaServerFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAK9E,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAa1D;;;GAGG;AACH,MAAM,OAAO,kBAAkB;IAC7B;;;;OAIG;IACI,MAAM,CAAC,KAAK,CAAC,MAAM,CACxB,OAA8B;QAE9B,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;QAE1D,MAAM,CAAC,IAAI,CAAC;;;;;;;KAOX,CAAC,CAAC;QAEH,mBAAmB;QACnB,MAAM,MAAM,GAAG,MAAM,cAAc,EAAE,CAAC;QAEtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QAC7C,CAAC;QAED,uBAAuB;QACvB,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAE1C,qCAAqC;QACrC,MAAM,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAE/C,0DAA0D;QAC1D,MAAM,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;QAEhG,oCAAoC;QACpC,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,OAAO,CAAY,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAEvF,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAE5B,IAAI,UAAU,EAAE,MAAM,EAAE,CAAC;YACvB,MAAM,oBAAoB,GAA0B,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC1E,MAAM,IAAI,GAAW,gBAAgB,CAAS,kBAAkB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;gBAErF,OAAO;oBACL,KAAK,EAAE,IAAI;oBACX,SAAS,EAAE,IAAI;iBAChB,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,SAAS,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;QAC1D,CAAC;aAAM,IAAI,MAAM,EAAE,CAAC;YAClB,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;QACtC,CAAC;QAED,aAAa,CAAC,QAAQ,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;QAEhE,uCAAuC;QACvC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QAEtD,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QAE1F,uDAAuD;QACvD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAiB,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAE3F,mBAAmB;QACnB,IAAI,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5B,IAAI,EAAE,KAAK,SAAS;YAAG,MAAc,CAAC,GAAG,GAAG,EAAE,CAAC;QAE/C,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { ComponentType } from '../../../ioc';
|
|
1
|
+
import { ComponentConstants, ComponentType } from '../../../ioc';
|
|
2
2
|
import { defineComponent } from '../../../ioc/component';
|
|
3
|
-
import { ComponentConstants } from '../../../ioc';
|
|
4
3
|
import { defineMiddleware } from '../../web/helper';
|
|
5
4
|
import { defineTypedMetadata } from '../../../utils/typedMetadata';
|
|
6
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/Controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAyB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/Controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAyB,MAAM,cAAc,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAInE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAkC,EAAkB,EAAE;IAC/E,MAAM,OAAO,GACX,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAE3G,OAAO,eAAe,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;QACnE,mBAAmB,CAAS,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,CAAC;QAE1G,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAEpD,mBAAmB,CACjB,kBAAkB,CAAC,cAAc,EACjC,OAAO,CAAC,WAAW,IAAK,EAAwB,EAChD,MAAM,CACP,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { EventServiceParams } from '../../event';
|
|
2
|
+
/**
|
|
3
|
+
* @description EventService decorator - Marks a class as an event service
|
|
4
|
+
*
|
|
5
|
+
* Event services contain @On decorated methods that handle events.
|
|
6
|
+
*
|
|
7
|
+
* @param params - Optional configuration or prefix string
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* // With prefix
|
|
11
|
+
* @EventService({ prefix: 'user' })
|
|
12
|
+
* export class UserEventService {
|
|
13
|
+
* @On('created') // Handles 'user.created' event
|
|
14
|
+
* handleUserCreated(eventName: string, data: any) {
|
|
15
|
+
* console.log('User created:', data);
|
|
16
|
+
* }
|
|
17
|
+
* }
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* // Without prefix
|
|
21
|
+
* @EventService()
|
|
22
|
+
* export class GlobalEventService {
|
|
23
|
+
* @On('app.started')
|
|
24
|
+
* handleAppStarted() {
|
|
25
|
+
* console.log('App started');
|
|
26
|
+
* }
|
|
27
|
+
* }
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* // Shorthand with prefix string
|
|
31
|
+
* @EventService('download')
|
|
32
|
+
* export class DownloadEventService {
|
|
33
|
+
* @On('complete') // Handles 'download.complete'
|
|
34
|
+
* handleComplete(eventName: string, data: any) { }
|
|
35
|
+
* }
|
|
36
|
+
*/
|
|
37
|
+
export declare const EventService: (params?: EventServiceParams | string) => ClassDecorator;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ComponentConstants, ComponentType } from '../../../ioc';
|
|
2
|
+
import { defineComponent } from '../../../ioc/component';
|
|
3
|
+
import { defineTypedMetadata } from '../../../utils';
|
|
4
|
+
/**
|
|
5
|
+
* @description EventService decorator - Marks a class as an event service
|
|
6
|
+
*
|
|
7
|
+
* Event services contain @On decorated methods that handle events.
|
|
8
|
+
*
|
|
9
|
+
* @param params - Optional configuration or prefix string
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* // With prefix
|
|
13
|
+
* @EventService({ prefix: 'user' })
|
|
14
|
+
* export class UserEventService {
|
|
15
|
+
* @On('created') // Handles 'user.created' event
|
|
16
|
+
* handleUserCreated(eventName: string, data: any) {
|
|
17
|
+
* console.log('User created:', data);
|
|
18
|
+
* }
|
|
19
|
+
* }
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* // Without prefix
|
|
23
|
+
* @EventService()
|
|
24
|
+
* export class GlobalEventService {
|
|
25
|
+
* @On('app.started')
|
|
26
|
+
* handleAppStarted() {
|
|
27
|
+
* console.log('App started');
|
|
28
|
+
* }
|
|
29
|
+
* }
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* // Shorthand with prefix string
|
|
33
|
+
* @EventService('download')
|
|
34
|
+
* export class DownloadEventService {
|
|
35
|
+
* @On('complete') // Handles 'download.complete'
|
|
36
|
+
* handleComplete(eventName: string, data: any) { }
|
|
37
|
+
* }
|
|
38
|
+
*/
|
|
39
|
+
export const EventService = (params) => {
|
|
40
|
+
// Normalize params - support both object and string
|
|
41
|
+
const _params = typeof params === 'string' ? { prefix: params, name: undefined } : params || { prefix: undefined, name: undefined };
|
|
42
|
+
return defineComponent(ComponentType.EVENT, _params, (target) => {
|
|
43
|
+
// Store prefix metadata for PrepareEventService
|
|
44
|
+
defineTypedMetadata(ComponentConstants.EventPrefixKey, _params.prefix || '', target);
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=EventService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventService.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/EventService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAGrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAoC,EAAkB,EAAE;IACnF,oDAAoD;IACpD,MAAM,OAAO,GACX,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAEtH,OAAO,eAAe,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;QAC9D,gDAAgD;QAChD,mBAAmB,CAAS,kBAAkB,CAAC,cAAc,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { defineComponent } from '../../../ioc/component';
|
|
2
|
-
import { ComponentType } from '../../../ioc';
|
|
3
|
-
import { ComponentConstants } from '../../../ioc';
|
|
2
|
+
import { ComponentConstants, ComponentType } from '../../../ioc';
|
|
4
3
|
import { defineTypedMetadata } from '../../../utils/typedMetadata';
|
|
5
4
|
import { VALIDATOR_METHODS } from '../../../adapter';
|
|
6
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Middleware.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/Middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Middleware.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/Middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAyB,EAAkB,EAAE;IACtE,OAAO,eAAe,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;QAClE,mBAAmB,CAAU,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,IAAI,KAAK,EAAE,MAAM,CAAC,CAAC;QAElG,IAAI,MAAM,EAAE,SAAS,EAAE,CAAC;YACtB,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,UAAU,CAAC,CAAC;YAE9G,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,OAAO,CAAC,KAAK,CACX,SAAS,MAAM,CAAC,IAAI,0DAA0D,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC9G,CAAC;gBACF,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACzD,OAAO,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,IAAI,mDAAmD,CAAC,CAAC;YACvF,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { ComponentType } from '../../../ioc';
|
|
1
|
+
import { ComponentConstants, ComponentType } from '../../../ioc';
|
|
2
2
|
import { defineComponent } from '../../../ioc/component';
|
|
3
3
|
import { parseCron } from '../../../ioc/helper/cronParser';
|
|
4
|
-
import { ComponentConstants } from '../../../ioc';
|
|
5
4
|
import { defineTypedMetadata } from '../../../utils/typedMetadata';
|
|
6
5
|
/**
|
|
7
6
|
* @deprecated Not working right now.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Schedule.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/Schedule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAuB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Schedule.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/Schedule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAuB,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAmB,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAEnE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAAsB,EAAkB,EAAE;IACjE,OAAO,eAAe,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;QAChE,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE1C,mBAAmB,CAAa,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -19,7 +19,7 @@ import { ComponentType } from '../../../ioc/types';
|
|
|
19
19
|
*/
|
|
20
20
|
export const StaticServe = (name) => {
|
|
21
21
|
return defineComponent(ComponentType.MIDDLEWARE, name, (target) => {
|
|
22
|
-
if (typeof name !== 'string' && name
|
|
22
|
+
if (typeof name !== 'string' && name?.root) {
|
|
23
23
|
defineTypedMetadata(ComponentConstants.StaticServeRootKey, name.root, target);
|
|
24
24
|
}
|
|
25
25
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StaticServe.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/StaticServe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAiC,EAAkB,EAAE;IAC/E,OAAO,eAAe,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE;QAChE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,
|
|
1
|
+
{"version":3,"file":"StaticServe.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/StaticServe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAiC,EAAkB,EAAE;IAC/E,OAAO,eAAe,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE;QAChE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,EAAE,IAAI,EAAE,CAAC;YAC3C,mBAAmB,CAAS,kBAAkB,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxF,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { ComponentType } from '../../../ioc';
|
|
1
|
+
import { ComponentConstants, ComponentType } from '../../../ioc';
|
|
2
2
|
import { defineComponent } from '../../../ioc/component';
|
|
3
|
-
import { ComponentConstants } from '../../../ioc';
|
|
4
3
|
import { defineMiddleware } from '../../web/helper';
|
|
5
4
|
import { defineTypedMetadata } from '../../../utils/typedMetadata';
|
|
6
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSocket.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/WebSocket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAyB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"WebSocket.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/WebSocket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAyB,MAAM,cAAc,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAInE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAiC,EAAkB,EAAE;IAC7E,OAAO,eAAe,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;QACjE,IAAI,IAAI,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QAE7D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAC5C,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,CAAC;QAED,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAEhC,mBAAmB,CAAS,kBAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAEtE,gBAAgB,CAAC,MAAM,EAAG,MAA2B,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAEzE,mBAAmB,CACjB,kBAAkB,CAAC,cAAc,EAChC,MAA2B,CAAC,WAAW,IAAI,EAAE,EAC9C,MAAM,CACP,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,6CAA6C,CAAC;AAC5D,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/server/decorators/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,6CAA6C,CAAC;AAC5D,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/server/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/server/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import type { ICoreService } from '../../ioc';
|
|
2
|
+
import type { EventHandler, EventSubscription } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* @description Internal event dispatch service
|
|
5
|
+
* Handles pattern matching, storage, and dispatching of events
|
|
6
|
+
*
|
|
7
|
+
* Architecture:
|
|
8
|
+
* - EventEmitter (public API) → EventDispatchService (internal logic)
|
|
9
|
+
* - Similar to: AsenaWebSocketService → AsenaWebSocketServer
|
|
10
|
+
*
|
|
11
|
+
* Performance:
|
|
12
|
+
* - Exact patterns: O(1) lookup via Map
|
|
13
|
+
* - Wildcard patterns: O(n) check via Array
|
|
14
|
+
* - Lazy warmup: Indexes built on first dispatch
|
|
15
|
+
*
|
|
16
|
+
* @internal This service should not be used directly by users
|
|
17
|
+
*/
|
|
18
|
+
export declare class EventDispatchService implements ICoreService {
|
|
19
|
+
readonly serviceName = "EventDispatchService";
|
|
20
|
+
/**
|
|
21
|
+
* All registered event subscriptions
|
|
22
|
+
*/
|
|
23
|
+
private handlers;
|
|
24
|
+
/**
|
|
25
|
+
* Warmup state - lazy initialization on first dispatch
|
|
26
|
+
*/
|
|
27
|
+
private warmedUp;
|
|
28
|
+
/**
|
|
29
|
+
* Exact pattern cache for O(1) lookup
|
|
30
|
+
* Key: exact event pattern, Value: handlers for that pattern
|
|
31
|
+
*/
|
|
32
|
+
private exactMatches;
|
|
33
|
+
/**
|
|
34
|
+
* Wildcard patterns that need O(n) matching
|
|
35
|
+
*/
|
|
36
|
+
private wildcardPatterns;
|
|
37
|
+
/**
|
|
38
|
+
* Register a handler for an event pattern
|
|
39
|
+
*
|
|
40
|
+
* @param pattern - Event pattern (supports wildcards: 'user.*', '*.error')
|
|
41
|
+
* @param handler - Handler function to execute
|
|
42
|
+
* @param once - If true, handler will be removed after first execution
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* registerHandler('user.created', (eventName, data) => { ... });
|
|
46
|
+
* registerHandler('download.*', (eventName, data) => { ... });
|
|
47
|
+
*/
|
|
48
|
+
registerHandler(pattern: string, handler: EventHandler, once?: boolean): void;
|
|
49
|
+
/**
|
|
50
|
+
* Unregister a specific handler for a pattern
|
|
51
|
+
*
|
|
52
|
+
* @param pattern - Event pattern to unregister from
|
|
53
|
+
* @param handler - Handler function to remove
|
|
54
|
+
* @returns true if handler was found and removed, false otherwise
|
|
55
|
+
*/
|
|
56
|
+
unregisterHandler(pattern: string, handler: EventHandler): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Dispatch an event to all matching handlers
|
|
59
|
+
*
|
|
60
|
+
* Fire-and-forget pattern:
|
|
61
|
+
* - Returns immediately, doesn't wait for async handlers
|
|
62
|
+
* - Async handler errors are caught and logged
|
|
63
|
+
* - Handlers are isolated (one error doesn't affect others)
|
|
64
|
+
*
|
|
65
|
+
* @param eventName - Event name to dispatch
|
|
66
|
+
* @param data - Optional data to pass to handlers
|
|
67
|
+
* @returns true if any handler was called, false if no handlers matched
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* dispatch('user.created', { id: 123, name: 'John' }); // Returns true/false
|
|
71
|
+
*/
|
|
72
|
+
dispatch(eventName: string, data?: any): boolean;
|
|
73
|
+
/**
|
|
74
|
+
* Warmup - Build indexes for faster lookup
|
|
75
|
+
*
|
|
76
|
+
* Strategy (Hybrid):
|
|
77
|
+
* - Exact patterns → Map (O(1) lookup)
|
|
78
|
+
* - Wildcard patterns → Array (O(n) check needed)
|
|
79
|
+
*
|
|
80
|
+
* This is lazy initialization:
|
|
81
|
+
* - Called automatically on first dispatch
|
|
82
|
+
* - Invalidated when handlers change
|
|
83
|
+
*
|
|
84
|
+
* Performance:
|
|
85
|
+
* - Exact patterns: O(1) - Most common case
|
|
86
|
+
* - Wildcard patterns: O(n) - Less common, smaller n
|
|
87
|
+
*
|
|
88
|
+
* @private
|
|
89
|
+
*/
|
|
90
|
+
private warmup;
|
|
91
|
+
/**
|
|
92
|
+
* Get all registered handlers (for debugging/testing)
|
|
93
|
+
*
|
|
94
|
+
* @returns Array of all event subscriptions
|
|
95
|
+
* @internal
|
|
96
|
+
*/
|
|
97
|
+
getHandlers(): EventSubscription[];
|
|
98
|
+
/**
|
|
99
|
+
* Clear all registered handlers
|
|
100
|
+
*
|
|
101
|
+
* @internal Used for testing and cleanup
|
|
102
|
+
*/
|
|
103
|
+
clearHandlers(): void;
|
|
104
|
+
}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { CoreService } from '../../ioc';
|
|
8
|
+
import { ICoreServiceNames } from '../../ioc';
|
|
9
|
+
import { matchesEventPattern } from './eventPatternMatcher';
|
|
10
|
+
/**
|
|
11
|
+
* @description Internal event dispatch service
|
|
12
|
+
* Handles pattern matching, storage, and dispatching of events
|
|
13
|
+
*
|
|
14
|
+
* Architecture:
|
|
15
|
+
* - EventEmitter (public API) → EventDispatchService (internal logic)
|
|
16
|
+
* - Similar to: AsenaWebSocketService → AsenaWebSocketServer
|
|
17
|
+
*
|
|
18
|
+
* Performance:
|
|
19
|
+
* - Exact patterns: O(1) lookup via Map
|
|
20
|
+
* - Wildcard patterns: O(n) check via Array
|
|
21
|
+
* - Lazy warmup: Indexes built on first dispatch
|
|
22
|
+
*
|
|
23
|
+
* @internal This service should not be used directly by users
|
|
24
|
+
*/
|
|
25
|
+
let EventDispatchService = class EventDispatchService {
|
|
26
|
+
serviceName = 'EventDispatchService';
|
|
27
|
+
/**
|
|
28
|
+
* All registered event subscriptions
|
|
29
|
+
*/
|
|
30
|
+
handlers = [];
|
|
31
|
+
/**
|
|
32
|
+
* Warmup state - lazy initialization on first dispatch
|
|
33
|
+
*/
|
|
34
|
+
warmedUp = false;
|
|
35
|
+
/**
|
|
36
|
+
* Exact pattern cache for O(1) lookup
|
|
37
|
+
* Key: exact event pattern, Value: handlers for that pattern
|
|
38
|
+
*/
|
|
39
|
+
exactMatches = new Map();
|
|
40
|
+
/**
|
|
41
|
+
* Wildcard patterns that need O(n) matching
|
|
42
|
+
*/
|
|
43
|
+
wildcardPatterns = [];
|
|
44
|
+
/**
|
|
45
|
+
* Register a handler for an event pattern
|
|
46
|
+
*
|
|
47
|
+
* @param pattern - Event pattern (supports wildcards: 'user.*', '*.error')
|
|
48
|
+
* @param handler - Handler function to execute
|
|
49
|
+
* @param once - If true, handler will be removed after first execution
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* registerHandler('user.created', (eventName, data) => { ... });
|
|
53
|
+
* registerHandler('download.*', (eventName, data) => { ... });
|
|
54
|
+
*/
|
|
55
|
+
registerHandler(pattern, handler, once = false) {
|
|
56
|
+
this.handlers.push({ pattern, handler, once });
|
|
57
|
+
// Invalidate warmup cache - will rebuild on next dispatch
|
|
58
|
+
this.warmedUp = false;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Unregister a specific handler for a pattern
|
|
62
|
+
*
|
|
63
|
+
* @param pattern - Event pattern to unregister from
|
|
64
|
+
* @param handler - Handler function to remove
|
|
65
|
+
* @returns true if handler was found and removed, false otherwise
|
|
66
|
+
*/
|
|
67
|
+
unregisterHandler(pattern, handler) {
|
|
68
|
+
const index = this.handlers.findIndex((sub) => sub.pattern === pattern && sub.handler === handler);
|
|
69
|
+
if (index !== -1) {
|
|
70
|
+
this.handlers.splice(index, 1);
|
|
71
|
+
// Invalidate warmup cache
|
|
72
|
+
this.warmedUp = false;
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Dispatch an event to all matching handlers
|
|
79
|
+
*
|
|
80
|
+
* Fire-and-forget pattern:
|
|
81
|
+
* - Returns immediately, doesn't wait for async handlers
|
|
82
|
+
* - Async handler errors are caught and logged
|
|
83
|
+
* - Handlers are isolated (one error doesn't affect others)
|
|
84
|
+
*
|
|
85
|
+
* @param eventName - Event name to dispatch
|
|
86
|
+
* @param data - Optional data to pass to handlers
|
|
87
|
+
* @returns true if any handler was called, false if no handlers matched
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* dispatch('user.created', { id: 123, name: 'John' }); // Returns true/false
|
|
91
|
+
*/
|
|
92
|
+
dispatch(eventName, data) {
|
|
93
|
+
// Lazy warmup - build indexes on first dispatch
|
|
94
|
+
if (!this.warmedUp) {
|
|
95
|
+
this.warmup();
|
|
96
|
+
}
|
|
97
|
+
const handlersToCall = [];
|
|
98
|
+
// 1. Check exact match cache - O(1)
|
|
99
|
+
const exactHandlers = this.exactMatches.get(eventName);
|
|
100
|
+
if (exactHandlers) {
|
|
101
|
+
for (const handler of exactHandlers) {
|
|
102
|
+
// Find full subscription info (for 'once' support)
|
|
103
|
+
const sub = this.handlers.find((s) => s.handler === handler && s.pattern === eventName);
|
|
104
|
+
if (sub) {
|
|
105
|
+
handlersToCall.push(sub);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
// 2. Check wildcard patterns - O(n) but smaller n
|
|
110
|
+
for (const sub of this.wildcardPatterns) {
|
|
111
|
+
if (matchesEventPattern(eventName, sub.pattern)) {
|
|
112
|
+
handlersToCall.push(sub);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
// 3. No handlers matched
|
|
116
|
+
if (handlersToCall.length === 0) {
|
|
117
|
+
return false;
|
|
118
|
+
}
|
|
119
|
+
// 4. Call all matching handlers (fire-and-forget, error isolation)
|
|
120
|
+
for (const sub of handlersToCall) {
|
|
121
|
+
try {
|
|
122
|
+
const result = sub.handler(eventName, data);
|
|
123
|
+
// Smart async detection: If Promise, handle errors but DON'T await
|
|
124
|
+
// Benchmark showed await Promise.resolve(syncHandler()) is 13x slower!
|
|
125
|
+
if (result instanceof Promise) {
|
|
126
|
+
result.catch((error) => {
|
|
127
|
+
console.error(`[EventDispatchService] Async error in handler for event "${eventName}":`, error);
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
catch (error) {
|
|
132
|
+
// Sync handler error - log but continue with other handlers
|
|
133
|
+
console.error(`[EventDispatchService] Sync error in handler for event "${eventName}":`, error);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
// 5. Remove 'once' handlers
|
|
137
|
+
for (const sub of handlersToCall) {
|
|
138
|
+
if (sub.once) {
|
|
139
|
+
this.unregisterHandler(sub.pattern, sub.handler);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
return true;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Warmup - Build indexes for faster lookup
|
|
146
|
+
*
|
|
147
|
+
* Strategy (Hybrid):
|
|
148
|
+
* - Exact patterns → Map (O(1) lookup)
|
|
149
|
+
* - Wildcard patterns → Array (O(n) check needed)
|
|
150
|
+
*
|
|
151
|
+
* This is lazy initialization:
|
|
152
|
+
* - Called automatically on first dispatch
|
|
153
|
+
* - Invalidated when handlers change
|
|
154
|
+
*
|
|
155
|
+
* Performance:
|
|
156
|
+
* - Exact patterns: O(1) - Most common case
|
|
157
|
+
* - Wildcard patterns: O(n) - Less common, smaller n
|
|
158
|
+
*
|
|
159
|
+
* @private
|
|
160
|
+
*/
|
|
161
|
+
warmup() {
|
|
162
|
+
this.exactMatches.clear();
|
|
163
|
+
this.wildcardPatterns = [];
|
|
164
|
+
for (const sub of this.handlers) {
|
|
165
|
+
if (sub.pattern.includes('*')) {
|
|
166
|
+
// Wildcard pattern - needs O(n) matching on dispatch
|
|
167
|
+
this.wildcardPatterns.push(sub);
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
// Exact pattern - O(1) lookup on dispatch
|
|
171
|
+
const handlers = this.exactMatches.get(sub.pattern) || [];
|
|
172
|
+
handlers.push(sub.handler);
|
|
173
|
+
this.exactMatches.set(sub.pattern, handlers);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
this.warmedUp = true;
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Get all registered handlers (for debugging/testing)
|
|
180
|
+
*
|
|
181
|
+
* @returns Array of all event subscriptions
|
|
182
|
+
* @internal
|
|
183
|
+
*/
|
|
184
|
+
getHandlers() {
|
|
185
|
+
return [...this.handlers];
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Clear all registered handlers
|
|
189
|
+
*
|
|
190
|
+
* @internal Used for testing and cleanup
|
|
191
|
+
*/
|
|
192
|
+
clearHandlers() {
|
|
193
|
+
this.handlers = [];
|
|
194
|
+
this.exactMatches.clear();
|
|
195
|
+
this.wildcardPatterns = [];
|
|
196
|
+
this.warmedUp = false;
|
|
197
|
+
}
|
|
198
|
+
};
|
|
199
|
+
EventDispatchService = __decorate([
|
|
200
|
+
CoreService(ICoreServiceNames.EVENT_DISPATCH_SERVICE)
|
|
201
|
+
], EventDispatchService);
|
|
202
|
+
export { EventDispatchService };
|
|
203
|
+
//# sourceMappingURL=EventDispatchService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventDispatchService.js","sourceRoot":"","sources":["../../../../lib/server/event/EventDispatchService.ts"],"names":[],"mappings":"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"}
|