@dnax/core 0.18.9 → 0.19.1

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/app/index.ts CHANGED
@@ -25,16 +25,16 @@ async function runApp(config?: configRunApp, clb?: Function) {
25
25
  await loadCfg(); // Load Config
26
26
 
27
27
  const PORT = Cfg.server?.port || process.env?.PORT || 4000;
28
- const PORT_SOCKET = Cfg.server?.socket?.port || 9000;
28
+ /* const PORT_SOCKET = Cfg.server?.socket?.port || 9000;
29
29
 
30
30
  // available port Socket
31
31
  await findPort.isAvailable(PORT_SOCKET).then(async (available: boolean) => {
32
32
  if (!available) {
33
33
  console.error(`⚠️ Socket Port ${PORT_SOCKET} is not available`);
34
34
  console.log("");
35
- process.exit();
35
+ process.exit(1);
36
36
  }
37
- });
37
+ }); */
38
38
 
39
39
  // available port Server
40
40
  await findPort.isAvailable(PORT).then(async (available: boolean) => {
@@ -114,6 +114,6 @@ async function runApp(config?: configRunApp, clb?: Function) {
114
114
  });
115
115
  }
116
116
 
117
- process.on("exit", async () => {});
117
+ //process.on("exit", async () => {});
118
118
 
119
119
  export { runApp };
@@ -24,6 +24,10 @@ async function connectToMongo(t: Tenant) {
24
24
  t.database.isConnected = false;
25
25
  });
26
26
 
27
+ client.on("error", (err) => {
28
+ console.error(` Tenant ${t.id} : `, err?.message);
29
+ });
30
+
27
31
  client.on("close", () => {
28
32
  t.database.isConnected = false;
29
33
  connectToMongo(t);
@@ -4,7 +4,7 @@ import { getCollection } from "../../lib/collection";
4
4
  import { getTenant } from "../../lib/tenant";
5
5
  import type { Actions, Collection, Tenant } from "./../../types/index";
6
6
  import { isArray, omit } from "radash";
7
- import { ClientSession, MongoClient, ObjectId } from "mongodb";
7
+ import { ChangeStream, ClientSession, MongoClient, ObjectId } from "mongodb";
8
8
  import { contextError, fn, toJson, dotJson } from "../../utils";
9
9
  import v, { type Schema } from "joi";
10
10
  import type { Context } from "hono";
@@ -743,6 +743,11 @@ class useRest {
743
743
  return resolve(result);
744
744
  }
745
745
 
746
+ params.$limit = 0;
747
+ params.$project = {
748
+ _id: 1,
749
+ };
750
+
746
751
  result.docs = await this.#tenant.database.db
747
752
  ?.collection(collection)
748
753
  .aggregate(formatData(buildPipeline(params, col)), {
@@ -1603,6 +1608,16 @@ class useRest {
1603
1608
  }
1604
1609
  });
1605
1610
  }
1611
+
1612
+ async stats() {
1613
+ return await this.#tenant.database.db?.stats().then((e) => e);
1614
+ }
1615
+
1616
+ watch(collection: string, pipeline: Array<any>): ChangeStream {
1617
+ return this.#tenant.database.db
1618
+ ?.collection(collection)
1619
+ .watch(pipeline) as ChangeStream;
1620
+ }
1606
1621
  }
1607
1622
 
1608
1623
  const restActivity = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dnax/core",
3
- "version": "0.18.9",
3
+ "version": "0.19.1",
4
4
  "module": "index.ts",
5
5
  "type": "module",
6
6
  "bin": {
package/types/index.ts CHANGED
@@ -251,7 +251,7 @@ export type Collection = {
251
251
  deleteMany?: (ctx: ctxApi) => object | null | undefined;
252
252
  find?: (ctx: ctxApi) => Array<object> | null | undefined;
253
253
  findOne?: (ctx: ctxApi) => object;
254
- count: (ctx: ctxApi) => number;
254
+ count?: (ctx: ctxApi) => number;
255
255
  };
256
256
  cache?: {
257
257
  ttl?: string;
@@ -397,13 +397,6 @@ export type Config = {
397
397
  allowMethods?: string[];
398
398
  allowHeaders?: string[];
399
399
  };
400
- socket?: {
401
- /**
402
- * Socket port
403
- * Default port is 9000
404
- */
405
- port?: Number;
406
- };
407
400
 
408
401
  /**
409
402
  * Port to run the server
package/utils/index.ts CHANGED
@@ -330,6 +330,8 @@ const password = {
330
330
  verify: verifyHashPassword,
331
331
  };
332
332
 
333
+
334
+
333
335
  export {
334
336
  dotJson,
335
337
  uuid,
package/utils/os.ts ADDED
@@ -0,0 +1 @@
1
+ function Os() {}
package/utils/test.js DELETED
@@ -1,23 +0,0 @@
1
- function isDate(date) {
2
- const dateRegex = /^\d{4}-\d{2}-\d{2}$/;
3
- let isDate_ = !isNaN(Date.parse(date)) && dateRegex.test(date);
4
- return isDate_;
5
- }
6
-
7
- function transformAllDate(data) {
8
- try {
9
- if (typeof data == "object" && data !== null && data !== undefined) {
10
- mapKeys(data, (key, value) => {
11
- if (typeof value == "string" && value && isDate(value)) {
12
- data[key] = new Date(value);
13
- } else {
14
- return transformAllDate(data[key]);
15
- }
16
- });
17
- }
18
- //console.log(data);
19
- return data;
20
- } catch (error) {
21
- throw error;
22
- }
23
- }