@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.
@@ -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 | null;
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?: RouteContext;
621
+ routerContext: RouteContext;
622
622
  };
623
623
  export interface EntityWatchPluginInitOptions {
624
624
  watchers: EntityWatcherType[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ruiapp/rapid-core",
3
- "version": "0.6.3",
3
+ "version": "0.6.5",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -20,7 +20,7 @@ export class RouteContext {
20
20
  params: Record<string, string>;
21
21
  routeConfig: any;
22
22
  #server: IRpdServer;
23
- #dbTransactionClient: IDatabaseClient | null;
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 | null {
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?: RouteContext;
791
+ routerContext: RouteContext;
792
792
  };
793
793
 
794
794
  export interface EntityWatchPluginInitOptions {