@clairejs/server 3.17.4 → 3.17.6

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,8 +1,10 @@
1
1
  ## Change Log
2
2
 
3
- #### 3.17.4:
3
+ #### 3.17.6:
4
4
 
5
- - mount socket metadata from onMessage
5
+ - fix missing controller & handleFunctionName in EndpointMetadata
6
+ - remove AbstractController
7
+ - mount socket metadata from getChannelName
6
8
  - refactor EndpointMetadata, remove MountedEndpointInfo
7
9
  - add putFile in AbstractFileService
8
10
 
@@ -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);
@@ -16,6 +16,6 @@ export class AbstractHttpController extends AbstractController {
16
16
  }
17
17
  return controllerMetadata.fields
18
18
  .filter((f) => isEndpoint(f))
19
- .map((f) => ({ ...f, apiGroup: controllerMetadata.permissionGroup }));
19
+ .map((f) => ({ ...f, apiGroup: controllerMetadata.permissionGroup, controller: this }));
20
20
  }
21
21
  }
@@ -8,6 +8,7 @@ export const Endpoint = (config) => (prototype, propertyKey) => {
8
8
  endpointMetadata.method = config.method;
9
9
  //-- default to "/" if empty string is provided
10
10
  endpointMetadata.mount = config.url || "/";
11
+ endpointMetadata.handlerFunctionName = propertyKey;
11
12
  };
12
13
  const HttpMethodDecoratorFactory = (method) => (url) => (prototype, propertyKey, _descriptor) => Endpoint({ method, url })(prototype, propertyKey);
13
14
  export const Post = HttpMethodDecoratorFactory(HttpMethod.POST);
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
@@ -283,9 +283,9 @@ export class AbstractServerSocketManager {
283
283
  await injector.initInstances();
284
284
  this.mountedEndpointInfo = socketController.map((controller) => {
285
285
  const controllerMetadata = getObjectMetadata(controller.constructor);
286
- const onMessageMetadata = controllerMetadata?.fields.find((f) => f.name === controller.onMessage.name);
286
+ const getChannelNameMetadata = controllerMetadata?.fields.find((f) => f.name === controller.getChannelName.name);
287
287
  return {
288
- ...onMessageMetadata,
288
+ ...getChannelNameMetadata,
289
289
  id: `${SocketMethod.MESSAGE}:${controller.getChannelName()}`,
290
290
  readOnly: false,
291
291
  controller: socketController,
@@ -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.4",
3
+ "version": "3.17.6",
4
4
  "description": "Claire server NodeJs framework written in Typescript.",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
@@ -33,8 +33,8 @@
33
33
  "ws": "^7.5.5"
34
34
  },
35
35
  "peerDependencies": {
36
- "@clairejs/core": "^3.7.1",
37
- "@clairejs/orm": "^3.11.0"
36
+ "@clairejs/core": "^3.7.2",
37
+ "@clairejs/orm": "^3.12.4"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@types/cookie-parser": "^1.4.3",
@@ -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
- }