@clairejs/server 3.17.3 → 3.17.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/README.md CHANGED
@@ -1,7 +1,9 @@
1
1
  ## Change Log
2
2
 
3
- #### 3.17.3:
3
+ #### 3.17.5:
4
4
 
5
+ - remove AbstractController
6
+ - mount socket metadata from getChannelName
5
7
  - refactor EndpointMetadata, remove MountedEndpointInfo
6
8
  - add putFile in AbstractFileService
7
9
 
@@ -1,5 +1,6 @@
1
1
  import { Constructor } from "@clairejs/core";
2
- import { AbstractController } from "./AbstractController";
2
+ import { AbstractSocketController } from "../socket/AbstractSocketController";
3
+ import { AbstractHttpController } from "../http/controller/AbstractHttpController";
3
4
  export declare const Controller: (config?: {
4
5
  permissionGroup?: string;
5
- }) => <T extends AbstractController>(constructor: Constructor<T>) => void;
6
+ }) => <T extends AbstractSocketController | AbstractHttpController>(constructor: Constructor<T>) => void;
@@ -1,7 +1,7 @@
1
1
  import { type ITransactionFactory } from "@clairejs/orm";
2
- import { AbstractController } from "../../common/AbstractController";
3
2
  import { type EndpointMetadata } from "../../common/request/endpoint-metadata";
4
- export declare abstract class AbstractHttpController extends AbstractController {
3
+ import { Transactionable } from "../../common/Transactionable";
4
+ export declare abstract class AbstractHttpController extends Transactionable {
5
5
  protected readonly databaseAdapter: ITransactionFactory;
6
6
  constructor(databaseAdapter: ITransactionFactory);
7
7
  getEndpointMetadata(): Readonly<EndpointMetadata>[];
@@ -1,9 +1,9 @@
1
1
  import { getObjectMetadata } from "@clairejs/core";
2
- import { AbstractController } from "../../common/AbstractController";
2
+ import { Transactionable } from "../../common/Transactionable";
3
3
  const isEndpoint = (metadata) => {
4
4
  return !!metadata.method || metadata.description !== undefined;
5
5
  };
6
- export class AbstractHttpController extends AbstractController {
6
+ export class AbstractHttpController extends Transactionable {
7
7
  databaseAdapter;
8
8
  constructor(databaseAdapter) {
9
9
  super(databaseAdapter);
@@ -35,9 +35,9 @@ export class AbstractHttpRequestHandler {
35
35
  : this.resolveMountPoint(controllerMetadata, [this.mountPoint || "/", endpoint.mount]);
36
36
  return {
37
37
  ...endpoint,
38
- readOnly: endpoint.method === HttpMethod.GET,
39
- mount,
40
38
  id: `${endpoint.method}:${mount}`,
39
+ mount,
40
+ readOnly: endpoint.method === HttpMethod.GET,
41
41
  };
42
42
  }));
43
43
  }
package/dist/index.d.ts CHANGED
@@ -3,7 +3,6 @@ export * from "./common/auth/AbstractPrincipalResolver";
3
3
  export * from "./common/auth/IPrincipal";
4
4
  export * from "./common/request/endpoint-metadata";
5
5
  export * from "./common/request/RequestOptions";
6
- export * from "./common/AbstractController";
7
6
  export * from "./common/ControllerMetadata";
8
7
  export * from "./common/decorator";
9
8
  export * from "./http/common/HttpResponse";
package/dist/index.js CHANGED
@@ -4,7 +4,6 @@ export * from "./common/auth/AbstractPrincipalResolver";
4
4
  export * from "./common/auth/IPrincipal";
5
5
  export * from "./common/request/endpoint-metadata";
6
6
  export * from "./common/request/RequestOptions";
7
- export * from "./common/AbstractController";
8
7
  export * from "./common/ControllerMetadata";
9
8
  export * from "./common/decorator";
10
9
  //-- http & security
@@ -1,4 +1,4 @@
1
- import { DataType, Errors, getServiceProvider, MessageType, SocketMethod, } from "@clairejs/core";
1
+ import { DataType, Errors, getObjectMetadata, getServiceProvider, MessageType, SocketMethod, } from "@clairejs/core";
2
2
  import { HttpRequest } from "../http/common/HttpRequest";
3
3
  import { AbstractSocketConnectionHandler } from "./AbstractSocketConnectionHandler";
4
4
  import { AbstractSocketController } from "./AbstractSocketController";
@@ -282,13 +282,16 @@ export class AbstractServerSocketManager {
282
282
  const socketController = injector.resolveMultiple(AbstractSocketController);
283
283
  await injector.initInstances();
284
284
  this.mountedEndpointInfo = socketController.map((controller) => {
285
+ const controllerMetadata = getObjectMetadata(controller.constructor);
286
+ const getChannelNameMetadata = controllerMetadata?.fields.find((f) => f.name === controller.getChannelName.name);
285
287
  return {
288
+ ...getChannelNameMetadata,
286
289
  id: `${SocketMethod.MESSAGE}:${controller.getChannelName()}`,
287
290
  readOnly: false,
288
291
  controller: socketController,
292
+ handlerFunctionName: controller.onMessage.name,
289
293
  method: SocketMethod.MESSAGE,
290
294
  mount: controller.getChannelName(),
291
- handlerFunctionName: controller.onMessage.name,
292
295
  description: "Send / Receive message to / from channel",
293
296
  name: controller.getChannelName(),
294
297
  dataType: DataType.OBJECT,
@@ -1,6 +1,5 @@
1
- import { AbstractController } from "../common/AbstractController";
2
1
  import { IServerSocket } from "./IServerSocket";
3
- export declare abstract class AbstractSocketController extends AbstractController {
2
+ export declare abstract class AbstractSocketController {
4
3
  abstract getChannelName(): string;
5
4
  onChannelJoin(_socket: IServerSocket): Promise<void>;
6
5
  onChannelLeave(_socket: IServerSocket): Promise<void>;
@@ -1,5 +1,4 @@
1
- import { AbstractController } from "../common/AbstractController";
2
- export class AbstractSocketController extends AbstractController {
1
+ export class AbstractSocketController {
3
2
  async onChannelJoin(_socket) { }
4
3
  async onChannelLeave(_socket) { }
5
4
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clairejs/server",
3
- "version": "3.17.3",
3
+ "version": "3.17.5",
4
4
  "description": "Claire server NodeJs framework written in Typescript.",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
@@ -1,3 +0,0 @@
1
- import { Transactionable } from "./Transactionable";
2
- export declare class AbstractController extends Transactionable {
3
- }
@@ -1,3 +0,0 @@
1
- import { Transactionable } from "./Transactionable";
2
- export class AbstractController extends Transactionable {
3
- }