From 3e49de7a0ff47a6a37a5cd4925858e91a71b1297 Mon Sep 17 00:00:00 2001 From: SrGooglo Date: Wed, 17 May 2023 16:58:34 +0000 Subject: [PATCH] added `ComtyClient` --- packages/marketplace_server/src/api.js | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/packages/marketplace_server/src/api.js b/packages/marketplace_server/src/api.js index 1fe59474..80d265f1 100644 --- a/packages/marketplace_server/src/api.js +++ b/packages/marketplace_server/src/api.js @@ -4,12 +4,15 @@ import path from "path" import DbManager from "@classes/DbManager" import RedisClient from "@classes/RedisClient" import StorageClient from "@classes/StorageClient" +import ComtyClient from "./classes/ComtyClient" import hyperexpress from "hyper-express" import pkg from "../package.json" export default class WidgetsAPI { + static useMiddlewaresOrder = ["useLogger", "useCors", "useAuth"] + server = global.server = new hyperexpress.Server() listenIp = process.env.HTTP_LISTEN_IP ?? "0.0.0.0" @@ -19,6 +22,10 @@ export default class WidgetsAPI { db = new DbManager() + comty = global.comty = ComtyClient({ + useWs: false, + }) + redis = global.redis = RedisClient() storage = global.storage = StorageClient() @@ -52,6 +59,22 @@ export default class WidgetsAPI { async __registerInternalMiddlewares() { let middlewaresPath = fs.readdirSync(path.resolve(__dirname, "useMiddlewares")) + // sort middlewares + middlewaresPath = middlewaresPath.sort((a, b) => { + const aIndex = this.constructor.useMiddlewaresOrder.indexOf(a.replace(".js", "")) + const bIndex = this.constructor.useMiddlewaresOrder.indexOf(b.replace(".js", "")) + + if (aIndex === -1) { + return 1 + } + + if (bIndex === -1) { + return -1 + } + + return aIndex - bIndex + }) + for await (const middlewarePath of middlewaresPath) { const middleware = require(path.resolve(__dirname, "useMiddlewares", middlewarePath)).default