@stamhoofd/queues 2.16.0 → 2.17.3

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.
@@ -20,6 +20,11 @@ export declare class QueueHandler {
20
20
  static asyncLocalStorage: AsyncLocalStorage<string[]>;
21
21
  static cancel(queue: string): void;
22
22
  static schedule<T>(queue: string, handler: () => Promise<T>, parallel?: number): Promise<T>;
23
+ static isRunning(queue: string): boolean;
24
+ /**
25
+ * Returns amount of running jobs + pending jobs for a given queue
26
+ */
27
+ static getSize(queue: string): number;
23
28
  private static runNext;
24
29
  }
25
30
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"QueueHandler.d.ts","sourceRoot":"","sources":["../../src/QueueHandler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,cAAM,KAAK;IACP,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAK;IAC5B,QAAQ,SAAI;IACZ,QAAQ,SAAI;gBAEA,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAI;IAKtC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC;CAG/B;AAED,cAAM,SAAS,CAAC,CAAC;IACb,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAA;IACzB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;IAC3B,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,IAAI,CAAA;CACjC;AAED;;GAEG;AACH,qBAAa,YAAY;IACrB,MAAM,CAAC,MAAM,qBAA2B;IACxC,MAAM,CAAC,iBAAiB,8BAAqC;IAE7D,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM;WAYd,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,SAAI,GAAG,OAAO,CAAC,CAAC,CAAC;mBAuCvE,OAAO;CAoC/B"}
1
+ {"version":3,"file":"QueueHandler.d.ts","sourceRoot":"","sources":["../../src/QueueHandler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,cAAM,KAAK;IACP,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAK;IAC5B,QAAQ,SAAI;IACZ,QAAQ,SAAI;gBAEA,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAI;IAKtC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC;CAG/B;AAED,cAAM,SAAS,CAAC,CAAC;IACb,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAA;IACzB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;IAC3B,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,IAAI,CAAA;CACjC;AAED;;GAEG;AACH,qBAAa,YAAY;IACrB,MAAM,CAAC,MAAM,qBAA2B;IACxC,MAAM,CAAC,iBAAiB,8BAAqC;IAE7D,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM;WAYd,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,SAAI,GAAG,OAAO,CAAC,CAAC,CAAC;IAuC5F,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM;IAI9B;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM;mBAKP,OAAO;CAoC/B"}
@@ -68,6 +68,16 @@ class QueueHandler {
68
68
  });
69
69
  return promise;
70
70
  }
71
+ static isRunning(queue) {
72
+ return this.getSize(queue) > 0;
73
+ }
74
+ /**
75
+ * Returns amount of running jobs + pending jobs for a given queue
76
+ */
77
+ static getSize(queue) {
78
+ const q = this.queues.get(queue);
79
+ return !!q ? (q.runCount + q.items.length) : 0;
80
+ }
71
81
  static async runNext(queue) {
72
82
  const q = this.queues.get(queue);
73
83
  if (!q) {
@@ -1 +1 @@
1
- {"version":3,"file":"QueueHandler.js","sourceRoot":"","sources":["../../src/QueueHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueueHandler.js","sourceRoot":"","sources":["../../src/QueueHandler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stamhoofd/queues",
3
- "version": "2.16.0",
3
+ "version": "2.17.3",
4
4
  "main": "./dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "license": "UNLICENCED",
@@ -13,5 +13,8 @@
13
13
  "build": "tsc -b",
14
14
  "test": "jest --runInBand"
15
15
  },
16
- "gitHead": "d5f1a4dda2c1623058e96e8ff25d837b28e51bd6"
16
+ "publishConfig": {
17
+ "access": "public"
18
+ },
19
+ "gitHead": "9aa2fbb9c268c4c5c45efd68a9dc55f5d48eb621"
17
20
  }
@@ -81,6 +81,18 @@ export class QueueHandler {
81
81
  return promise
82
82
  }
83
83
 
84
+ static isRunning(queue: string) {
85
+ return this.getSize(queue) > 0
86
+ }
87
+
88
+ /**
89
+ * Returns amount of running jobs + pending jobs for a given queue
90
+ */
91
+ static getSize(queue: string) {
92
+ const q = this.queues.get(queue)
93
+ return !!q ? (q.runCount + q.items.length) : 0
94
+ }
95
+
84
96
  private static async runNext(queue: string) {
85
97
  const q = this.queues.get(queue)
86
98
  if (!q) {