@ruiapp/rapid-core 0.6.3 → 0.6.5
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/core/routeContext.d.ts +1 -1
- package/dist/index.js +3 -1
- package/dist/types.d.ts +1 -1
- package/package.json +1 -1
- package/src/core/routeContext.ts +2 -3
- package/src/server.ts +3 -0
- package/src/types.ts +1 -1
|
@@ -21,7 +21,7 @@ export declare class RouteContext {
|
|
|
21
21
|
set(headerName: string, headerValue: string): void;
|
|
22
22
|
json(obj: any, status?: HttpStatus, headers?: HeadersInit): void;
|
|
23
23
|
redirect(url: string, status?: HttpStatus): void;
|
|
24
|
-
getDbTransactionClient(): IDatabaseClient |
|
|
24
|
+
getDbTransactionClient(): IDatabaseClient | undefined;
|
|
25
25
|
beginDbTransaction(): Promise<IDatabaseClient>;
|
|
26
26
|
commitDbTransaction(): Promise<void>;
|
|
27
27
|
rollbackDbTransaction(): Promise<void>;
|
package/dist/index.js
CHANGED
|
@@ -1067,7 +1067,6 @@ class RouteContext {
|
|
|
1067
1067
|
}
|
|
1068
1068
|
constructor(server, request) {
|
|
1069
1069
|
this.#server = server;
|
|
1070
|
-
this.#dbTransactionClient = null;
|
|
1071
1070
|
this.databaseAccessor = server.getDatabaseAccessor();
|
|
1072
1071
|
this.request = request;
|
|
1073
1072
|
this.state = {};
|
|
@@ -4586,6 +4585,9 @@ class RapidServer {
|
|
|
4586
4585
|
}
|
|
4587
4586
|
async #handleEntityEvent(eventName, sender, payload, routerContext) {
|
|
4588
4587
|
const { modelSingularCode, baseModelSingularCode } = payload;
|
|
4588
|
+
if (!routerContext) {
|
|
4589
|
+
routerContext = new RouteContext(this);
|
|
4590
|
+
}
|
|
4589
4591
|
const entityWatchHandlerContext = {
|
|
4590
4592
|
server: this,
|
|
4591
4593
|
payload,
|
package/dist/types.d.ts
CHANGED
|
@@ -618,7 +618,7 @@ export type EntityWatchHandler<TEventName extends keyof RpdServerEventTypes> = (
|
|
|
618
618
|
export type EntityWatchHandlerContext<TEventName extends keyof RpdServerEventTypes> = {
|
|
619
619
|
server: IRpdServer;
|
|
620
620
|
payload: RpdServerEventTypes[TEventName][1];
|
|
621
|
-
routerContext
|
|
621
|
+
routerContext: RouteContext;
|
|
622
622
|
};
|
|
623
623
|
export interface EntityWatchPluginInitOptions {
|
|
624
624
|
watchers: EntityWatcherType[];
|
package/package.json
CHANGED
package/src/core/routeContext.ts
CHANGED
|
@@ -20,7 +20,7 @@ export class RouteContext {
|
|
|
20
20
|
params: Record<string, string>;
|
|
21
21
|
routeConfig: any;
|
|
22
22
|
#server: IRpdServer;
|
|
23
|
-
#dbTransactionClient: IDatabaseClient |
|
|
23
|
+
#dbTransactionClient: IDatabaseClient | undefined;
|
|
24
24
|
|
|
25
25
|
static newSystemOperationContext(server: IRpdServer) {
|
|
26
26
|
return new RouteContext(server);
|
|
@@ -28,7 +28,6 @@ export class RouteContext {
|
|
|
28
28
|
|
|
29
29
|
constructor(server: IRpdServer, request?: RapidRequest) {
|
|
30
30
|
this.#server = server;
|
|
31
|
-
this.#dbTransactionClient = null;
|
|
32
31
|
this.databaseAccessor = server.getDatabaseAccessor();
|
|
33
32
|
this.request = request;
|
|
34
33
|
this.state = {};
|
|
@@ -68,7 +67,7 @@ export class RouteContext {
|
|
|
68
67
|
this.response.redirect(url, status);
|
|
69
68
|
}
|
|
70
69
|
|
|
71
|
-
getDbTransactionClient(): IDatabaseClient |
|
|
70
|
+
getDbTransactionClient(): IDatabaseClient | undefined {
|
|
72
71
|
return this.#dbTransactionClient;
|
|
73
72
|
}
|
|
74
73
|
|
package/src/server.ts
CHANGED
|
@@ -445,6 +445,9 @@ export class RapidServer implements IRpdServer {
|
|
|
445
445
|
|
|
446
446
|
async #handleEntityEvent(eventName: keyof RpdServerEventTypes, sender: RapidPlugin, payload: RpdEntityCreateEventPayload, routerContext?: RouteContext) {
|
|
447
447
|
const { modelSingularCode, baseModelSingularCode } = payload;
|
|
448
|
+
if (!routerContext) {
|
|
449
|
+
routerContext = new RouteContext(this);
|
|
450
|
+
}
|
|
448
451
|
const entityWatchHandlerContext: EntityWatchHandlerContext<typeof eventName> = {
|
|
449
452
|
server: this,
|
|
450
453
|
payload,
|
package/src/types.ts
CHANGED
|
@@ -788,7 +788,7 @@ export type EntityWatchHandler<TEventName extends keyof RpdServerEventTypes> = (
|
|
|
788
788
|
export type EntityWatchHandlerContext<TEventName extends keyof RpdServerEventTypes> = {
|
|
789
789
|
server: IRpdServer;
|
|
790
790
|
payload: RpdServerEventTypes[TEventName][1];
|
|
791
|
-
routerContext
|
|
791
|
+
routerContext: RouteContext;
|
|
792
792
|
};
|
|
793
793
|
|
|
794
794
|
export interface EntityWatchPluginInitOptions {
|