@tsed/bullmq 8.0.0-alpha.4 → 8.0.0-alpha.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.
Files changed (69) hide show
  1. package/package.json +9 -10
  2. package/lib/cjs/BullMQModule.js +0 -131
  3. package/lib/cjs/BullMQModule.js.map +0 -1
  4. package/lib/cjs/config/config.js +0 -3
  5. package/lib/cjs/config/config.js.map +0 -1
  6. package/lib/cjs/constants/BullMQTypes.js +0 -12
  7. package/lib/cjs/constants/BullMQTypes.js.map +0 -1
  8. package/lib/cjs/constants/constants.js +0 -5
  9. package/lib/cjs/constants/constants.js.map +0 -1
  10. package/lib/cjs/contracts/JobMethods.js +0 -3
  11. package/lib/cjs/contracts/JobMethods.js.map +0 -1
  12. package/lib/cjs/contracts/JobStore.js +0 -3
  13. package/lib/cjs/contracts/JobStore.js.map +0 -1
  14. package/lib/cjs/contracts/index.js +0 -9
  15. package/lib/cjs/contracts/index.js.map +0 -1
  16. package/lib/cjs/decorators/InjectQueue.js +0 -10
  17. package/lib/cjs/decorators/InjectQueue.js.map +0 -1
  18. package/lib/cjs/decorators/InjectWorker.js +0 -10
  19. package/lib/cjs/decorators/InjectWorker.js.map +0 -1
  20. package/lib/cjs/decorators/JobController.js +0 -29
  21. package/lib/cjs/decorators/JobController.js.map +0 -1
  22. package/lib/cjs/decorators/index.js +0 -10
  23. package/lib/cjs/decorators/index.js.map +0 -1
  24. package/lib/cjs/dispatchers/JobDispatcher.js +0 -73
  25. package/lib/cjs/dispatchers/JobDispatcher.js.map +0 -1
  26. package/lib/cjs/dispatchers/JobDispatcherOptions.js +0 -3
  27. package/lib/cjs/dispatchers/JobDispatcherOptions.js.map +0 -1
  28. package/lib/cjs/dispatchers/index.js +0 -9
  29. package/lib/cjs/dispatchers/index.js.map +0 -1
  30. package/lib/cjs/index.js +0 -28
  31. package/lib/cjs/index.js.map +0 -1
  32. package/lib/cjs/package.json +0 -3
  33. package/lib/cjs/utils/createQueueProvider.js +0 -20
  34. package/lib/cjs/utils/createQueueProvider.js.map +0 -1
  35. package/lib/cjs/utils/createWorkerProvider.js +0 -20
  36. package/lib/cjs/utils/createWorkerProvider.js.map +0 -1
  37. package/lib/cjs/utils/getJobToken.js +0 -12
  38. package/lib/cjs/utils/getJobToken.js.map +0 -1
  39. package/lib/cjs/utils/getQueueToken.js +0 -8
  40. package/lib/cjs/utils/getQueueToken.js.map +0 -1
  41. package/lib/cjs/utils/getWorkerToken.js +0 -8
  42. package/lib/cjs/utils/getWorkerToken.js.map +0 -1
  43. package/lib/cjs/utils/mapQueueOptions.js +0 -12
  44. package/lib/cjs/utils/mapQueueOptions.js.map +0 -1
  45. package/lib/cjs/utils/mapWorkerOptions.js +0 -12
  46. package/lib/cjs/utils/mapWorkerOptions.js.map +0 -1
  47. package/lib/esm/package.json +0 -3
  48. package/lib/types-esm/BullMQModule.d.ts +0 -23
  49. package/lib/types-esm/config/config.d.ts +0 -50
  50. package/lib/types-esm/constants/BullMQTypes.d.ts +0 -7
  51. package/lib/types-esm/constants/constants.d.ts +0 -1
  52. package/lib/types-esm/contracts/JobMethods.d.ts +0 -5
  53. package/lib/types-esm/contracts/JobStore.d.ts +0 -6
  54. package/lib/types-esm/contracts/index.d.ts +0 -5
  55. package/lib/types-esm/decorators/InjectQueue.d.ts +0 -1
  56. package/lib/types-esm/decorators/InjectWorker.d.ts +0 -1
  57. package/lib/types-esm/decorators/JobController.d.ts +0 -3
  58. package/lib/types-esm/decorators/index.d.ts +0 -6
  59. package/lib/types-esm/dispatchers/JobDispatcher.d.ts +0 -14
  60. package/lib/types-esm/dispatchers/JobDispatcherOptions.d.ts +0 -4
  61. package/lib/types-esm/dispatchers/index.d.ts +0 -5
  62. package/lib/types-esm/index.d.ts +0 -24
  63. package/lib/types-esm/utils/createQueueProvider.d.ts +0 -3
  64. package/lib/types-esm/utils/createWorkerProvider.d.ts +0 -3
  65. package/lib/types-esm/utils/getJobToken.d.ts +0 -2
  66. package/lib/types-esm/utils/getQueueToken.d.ts +0 -1
  67. package/lib/types-esm/utils/getWorkerToken.d.ts +0 -1
  68. package/lib/types-esm/utils/mapQueueOptions.d.ts +0 -3
  69. package/lib/types-esm/utils/mapWorkerOptions.d.ts +0 -3
package/package.json CHANGED
@@ -1,21 +1,20 @@
1
1
  {
2
2
  "name": "@tsed/bullmq",
3
3
  "description": "BullMQ integration for Ts.ED",
4
- "type": "commonjs",
5
- "version": "8.0.0-alpha.4",
4
+ "type": "module",
5
+ "version": "8.0.0-alpha.6",
6
6
  "keywords": [
7
7
  "Ts.ED",
8
8
  "BullMQ"
9
9
  ],
10
10
  "source": "./src/index.ts",
11
- "main": "./lib/cjs/index.js",
11
+ "main": "./lib/esm/index.js",
12
12
  "module": "./lib/esm/index.js",
13
13
  "typings": "./lib/types/index.d.ts",
14
14
  "exports": {
15
15
  ".": {
16
16
  "types": "./lib/types/index.d.ts",
17
17
  "import": "./lib/esm/index.js",
18
- "require": "./lib/cjs/index.js",
19
18
  "default": "./lib/cjs/index.js"
20
19
  }
21
20
  },
@@ -30,12 +29,12 @@
30
29
  "tslib": "2.6.1"
31
30
  },
32
31
  "devDependencies": {
33
- "@tsed/barrels": "8.0.0-alpha.4",
34
- "@tsed/common": "8.0.0-alpha.4",
35
- "@tsed/core": "8.0.0-alpha.4",
36
- "@tsed/di": "8.0.0-alpha.4",
37
- "@tsed/schema": "8.0.0-alpha.4",
38
- "@tsed/typescript": "8.0.0-alpha.4",
32
+ "@tsed/barrels": "8.0.0-alpha.6",
33
+ "@tsed/common": "8.0.0-alpha.6",
34
+ "@tsed/core": "8.0.0-alpha.6",
35
+ "@tsed/di": "8.0.0-alpha.6",
36
+ "@tsed/schema": "8.0.0-alpha.6",
37
+ "@tsed/typescript": "8.0.0-alpha.6",
39
38
  "bullmq": "^4.12.3 || ^5.1.1",
40
39
  "eslint": "^8.57.0",
41
40
  "ts-mockito": "^2.6.1",
@@ -1,131 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BullMQModule = void 0;
4
- const tslib_1 = require("tslib");
5
- const common_1 = require("@tsed/common");
6
- const di_1 = require("@tsed/di");
7
- const schema_1 = require("@tsed/schema");
8
- const uuid_1 = require("uuid");
9
- const BullMQTypes_js_1 = require("./constants/BullMQTypes.js");
10
- const constants_js_1 = require("./constants/constants.js");
11
- const index_js_1 = require("./dispatchers/index.js");
12
- const createQueueProvider_js_1 = require("./utils/createQueueProvider.js");
13
- const createWorkerProvider_js_1 = require("./utils/createWorkerProvider.js");
14
- const getJobToken_js_1 = require("./utils/getJobToken.js");
15
- const mapQueueOptions_js_1 = require("./utils/mapQueueOptions.js");
16
- const mapWorkerOptions_js_1 = require("./utils/mapWorkerOptions.js");
17
- let BullMQModule = class BullMQModule {
18
- constructor(injector, dispatcher) {
19
- this.injector = injector;
20
- this.dispatcher = dispatcher;
21
- this.onProcess = async (job) => {
22
- const jobService = this.getJob(job.name, job.queueName);
23
- if (!jobService) {
24
- this.injector.logger.warn({
25
- event: "BULLMQ_JOB_NOT_FOUND",
26
- message: `Job ${job.name} ${job.queueName} not found`
27
- });
28
- return;
29
- }
30
- const $ctx = new common_1.DIContext({
31
- injector: this.injector,
32
- logger: this.injector.logger,
33
- id: job.id || (0, uuid_1.v4)().split("-").join(""),
34
- additionalProps: {
35
- logType: "bullmq",
36
- name: job.name,
37
- queue: job.queueName,
38
- attempt: job.attemptsMade
39
- }
40
- });
41
- $ctx.set("BULLMQ_JOB", job);
42
- try {
43
- return await (0, common_1.runInContext)($ctx, () => {
44
- $ctx.logger.info("Processing job");
45
- try {
46
- return jobService.handle(job.data, job);
47
- }
48
- finally {
49
- $ctx.logger.info("Finished processing job");
50
- }
51
- });
52
- }
53
- catch (er) {
54
- $ctx.logger.error({
55
- event: "BULLMQ_JOB_ERROR",
56
- message: er.message,
57
- stack: er.stack
58
- });
59
- throw er;
60
- }
61
- finally {
62
- await $ctx.destroy();
63
- }
64
- };
65
- // build providers allow @Inject(queue) usage in JobController instance
66
- if (this.isEnabled()) {
67
- const queues = [...this.getUniqQueueNames()];
68
- this.buildQueues(queues);
69
- if (!this.isWorkerEnabled()) {
70
- const workers = this.config.workerQueues?.length ? this.config.workerQueues : queues;
71
- this.buildWorkers(workers);
72
- }
73
- }
74
- }
75
- get config() {
76
- return this.injector.settings.get("bullmq");
77
- }
78
- $beforeInit() {
79
- if (this.isEnabled()) {
80
- this.injector.getMany(BullMQTypes_js_1.BullMQTypes.CRON).map((job) => this.dispatcher.dispatch((0, schema_1.getComputedType)(job)));
81
- }
82
- }
83
- async $onDestroy() {
84
- if (!this.isEnabled()) {
85
- return;
86
- }
87
- await Promise.all(this.injector.getMany(BullMQTypes_js_1.BullMQTypes.QUEUE).map((queue) => queue.close()));
88
- await Promise.all(this.injector.getMany(BullMQTypes_js_1.BullMQTypes.WORKER).map((worker) => worker.close()));
89
- }
90
- isEnabled() {
91
- return !!this.config;
92
- }
93
- isWorkerEnabled() {
94
- return this.config.disableWorker;
95
- }
96
- buildQueues(queues) {
97
- queues.forEach((queue) => {
98
- const opts = (0, mapQueueOptions_js_1.mapQueueOptions)(queue, this.config);
99
- (0, createQueueProvider_js_1.createQueueProvider)(this.injector, queue, opts);
100
- });
101
- }
102
- buildWorkers(workers) {
103
- workers.forEach((worker) => {
104
- const opts = (0, mapWorkerOptions_js_1.mapWorkerOptions)(worker, this.config);
105
- (0, createWorkerProvider_js_1.createWorkerProvider)(this.injector, worker, this.onProcess, opts);
106
- });
107
- }
108
- /**
109
- * Auto discover queue names from provider and merge it with queue names from global configuration.
110
- * @private
111
- */
112
- getUniqQueueNames() {
113
- return new Set(this.injector
114
- .getProviders([BullMQTypes_js_1.BullMQTypes.JOB, BullMQTypes_js_1.BullMQTypes.CRON, BullMQTypes_js_1.BullMQTypes.FALLBACK_JOB])
115
- .map((provider) => provider.store.get(constants_js_1.BULLMQ)?.queue)
116
- .concat(this.config.queues)
117
- .filter(Boolean));
118
- }
119
- getJob(name, queueName) {
120
- return (this.injector.get((0, getJobToken_js_1.getJobToken)(queueName, name)) ||
121
- this.injector.get((0, getJobToken_js_1.getFallbackJobToken)(queueName)) ||
122
- this.injector.get((0, getJobToken_js_1.getFallbackJobToken)()));
123
- }
124
- };
125
- BullMQModule = tslib_1.__decorate([
126
- (0, di_1.Module)(),
127
- tslib_1.__metadata("design:paramtypes", [di_1.InjectorService,
128
- index_js_1.JobDispatcher])
129
- ], BullMQModule);
130
- exports.BullMQModule = BullMQModule;
131
- //# sourceMappingURL=BullMQModule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BullMQModule.js","sourceRoot":"","sources":["../../src/BullMQModule.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":""}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BullMQTypes = void 0;
4
- var BullMQTypes;
5
- (function (BullMQTypes) {
6
- BullMQTypes["CRON"] = "bullmq:cron";
7
- BullMQTypes["QUEUE"] = "bullmq:queue";
8
- BullMQTypes["JOB"] = "bullmq:job";
9
- BullMQTypes["WORKER"] = "bullmq:worker";
10
- BullMQTypes["FALLBACK_JOB"] = "bullmq:fallback-job";
11
- })(BullMQTypes = exports.BullMQTypes || (exports.BullMQTypes = {}));
12
- //# sourceMappingURL=BullMQTypes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BullMQTypes.js","sourceRoot":"","sources":["../../../src/constants/BullMQTypes.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,mCAAoB,CAAA;IACpB,qCAAsB,CAAA;IACtB,iCAAkB,CAAA;IAClB,uCAAwB,CAAA;IACxB,mDAAoC,CAAA;AACtC,CAAC,EANW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAMtB"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BULLMQ = void 0;
4
- exports.BULLMQ = "bullmq";
5
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG,QAAQ,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=JobMethods.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"JobMethods.js","sourceRoot":"","sources":["../../../src/contracts/JobMethods.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=JobStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"JobStore.js","sourceRoot":"","sources":["../../../src/contracts/JobStore.ts"],"names":[],"mappings":""}
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- /**
5
- * @file Automatically generated by @tsed/barrels.
6
- */
7
- tslib_1.__exportStar(require("./JobMethods.js"), exports);
8
- tslib_1.__exportStar(require("./JobStore.js"), exports);
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/contracts/index.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,0DAAgC;AAChC,wDAA8B"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InjectQueue = void 0;
4
- const common_1 = require("@tsed/common");
5
- const getQueueToken_js_1 = require("../utils/getQueueToken.js");
6
- function InjectQueue(name) {
7
- return (0, common_1.Inject)((0, getQueueToken_js_1.getQueueToken)(name));
8
- }
9
- exports.InjectQueue = InjectQueue;
10
- //# sourceMappingURL=InjectQueue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InjectQueue.js","sourceRoot":"","sources":["../../../src/decorators/InjectQueue.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,gEAAwD;AAExD,SAAgB,WAAW,CAAC,IAAY;IACtC,OAAO,IAAA,eAAM,EAAC,IAAA,gCAAa,EAAC,IAAI,CAAC,CAAC,CAAC;AACrC,CAAC;AAFD,kCAEC"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InjectWorker = void 0;
4
- const common_1 = require("@tsed/common");
5
- const getWorkerToken_js_1 = require("../utils/getWorkerToken.js");
6
- function InjectWorker(name) {
7
- return (0, common_1.Inject)((0, getWorkerToken_js_1.getWorkerToken)(name));
8
- }
9
- exports.InjectWorker = InjectWorker;
10
- //# sourceMappingURL=InjectWorker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InjectWorker.js","sourceRoot":"","sources":["../../../src/decorators/InjectWorker.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,kEAA0D;AAE1D,SAAgB,YAAY,CAAC,IAAY;IACvC,OAAO,IAAA,eAAM,EAAC,IAAA,kCAAc,EAAC,IAAI,CAAC,CAAC,CAAC;AACtC,CAAC;AAFD,oCAEC"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FallbackJobController = exports.JobController = void 0;
4
- const core_1 = require("@tsed/core");
5
- const di_1 = require("@tsed/di");
6
- const BullMQTypes_js_1 = require("../constants/BullMQTypes.js");
7
- const constants_js_1 = require("../constants/constants.js");
8
- const getJobToken_js_1 = require("../utils/getJobToken.js");
9
- function JobController(name, queue = "default", opts = {}) {
10
- return (0, core_1.useDecorators)((0, core_1.StoreMerge)(constants_js_1.BULLMQ, {
11
- name,
12
- queue,
13
- opts
14
- }), (0, di_1.Injectable)({
15
- provide: (0, getJobToken_js_1.getJobToken)(queue, name),
16
- type: opts.repeat ? BullMQTypes_js_1.BullMQTypes.CRON : BullMQTypes_js_1.BullMQTypes.JOB
17
- }));
18
- }
19
- exports.JobController = JobController;
20
- function FallbackJobController(queue) {
21
- return (0, core_1.useDecorators)((0, core_1.StoreMerge)(constants_js_1.BULLMQ, {
22
- queue
23
- }), (0, di_1.Injectable)({
24
- provide: (0, getJobToken_js_1.getFallbackJobToken)(queue),
25
- type: BullMQTypes_js_1.BullMQTypes.FALLBACK_JOB
26
- }));
27
- }
28
- exports.FallbackJobController = FallbackJobController;
29
- //# sourceMappingURL=JobController.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"JobController.js","sourceRoot":"","sources":["../../../src/decorators/JobController.ts"],"names":[],"mappings":";;;AAAA,qCAAqD;AACrD,iCAAoC;AAEpC,gEAAwD;AACxD,4DAAiD;AACjD,4DAAyE;AAEzE,SAAgB,aAAa,CAAC,IAAY,EAAE,QAAgB,SAAS,EAAE,OAAoB,EAAE;IAC3F,OAAO,IAAA,oBAAa,EAClB,IAAA,iBAAU,EAAC,qBAAM,EAAE;QACjB,IAAI;QACJ,KAAK;QACL,IAAI;KACL,CAAC,EACF,IAAA,eAAU,EAAC;QACT,OAAO,EAAE,IAAA,4BAAW,EAAC,KAAK,EAAE,IAAI,CAAC;QACjC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,4BAAW,CAAC,IAAI,CAAC,CAAC,CAAC,4BAAW,CAAC,GAAG;KACvD,CAAC,CACH,CAAC;AACJ,CAAC;AAZD,sCAYC;AAED,SAAgB,qBAAqB,CAAC,KAAc;IAClD,OAAO,IAAA,oBAAa,EAClB,IAAA,iBAAU,EAAC,qBAAM,EAAE;QACjB,KAAK;KACN,CAAC,EACF,IAAA,eAAU,EAAC;QACT,OAAO,EAAE,IAAA,oCAAmB,EAAC,KAAK,CAAC;QACnC,IAAI,EAAE,4BAAW,CAAC,YAAY;KAC/B,CAAC,CACH,CAAC;AACJ,CAAC;AAVD,sDAUC"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- /**
5
- * @file Automatically generated by @tsed/barrels.
6
- */
7
- tslib_1.__exportStar(require("./InjectQueue.js"), exports);
8
- tslib_1.__exportStar(require("./InjectWorker.js"), exports);
9
- tslib_1.__exportStar(require("./JobController.js"), exports);
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/decorators/index.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,2DAAiC;AACjC,4DAAkC;AAClC,6DAAmC"}
@@ -1,73 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.JobDispatcher = void 0;
4
- const tslib_1 = require("tslib");
5
- /* eslint-disable require-await */
6
- const core_1 = require("@tsed/core");
7
- const di_1 = require("@tsed/di");
8
- const constants_js_1 = require("../constants/constants.js");
9
- const getJobToken_js_1 = require("../utils/getJobToken.js");
10
- const getQueueToken_js_1 = require("../utils/getQueueToken.js");
11
- let JobDispatcher = class JobDispatcher {
12
- constructor(injector) {
13
- this.injector = injector;
14
- }
15
- async dispatch(job, payload, options = {}) {
16
- const { queueName, jobName, defaultJobOptions } = await this.resolveDispatchArgs(job, payload);
17
- const queue = this.injector.get((0, getQueueToken_js_1.getQueueToken)(queueName));
18
- if (!queue) {
19
- throw new Error(`Queue(${queueName}) not defined`);
20
- }
21
- return queue.add(jobName, payload, {
22
- ...defaultJobOptions,
23
- ...options
24
- });
25
- }
26
- async resolveDispatchArgs(job, payload) {
27
- let queueName;
28
- let jobName;
29
- let defaultJobOptions;
30
- if (typeof job === "function") {
31
- // job is passed as a Type
32
- const store = core_1.Store.from(job).get(constants_js_1.BULLMQ);
33
- queueName = store.queue;
34
- jobName = store.name;
35
- defaultJobOptions = await this.retrieveJobOptionsFromClassBasedJob(store, payload);
36
- }
37
- else if (typeof job === "object") {
38
- // job is passed as JobDispatcherOptions
39
- queueName = job.queue;
40
- jobName = job.name;
41
- }
42
- else {
43
- // job is passed as a string
44
- queueName = "default";
45
- jobName = job;
46
- }
47
- return {
48
- queueName,
49
- jobName,
50
- defaultJobOptions
51
- };
52
- }
53
- async retrieveJobOptionsFromClassBasedJob(store, payload) {
54
- const job = this.injector.get((0, getJobToken_js_1.getJobToken)(store.queue, store.name));
55
- if (!job) {
56
- return store.opts;
57
- }
58
- const jobId = await job.jobId?.(payload);
59
- if (jobId === undefined) {
60
- return store.opts;
61
- }
62
- return {
63
- ...store.opts,
64
- jobId
65
- };
66
- }
67
- };
68
- JobDispatcher = tslib_1.__decorate([
69
- (0, di_1.Injectable)(),
70
- tslib_1.__metadata("design:paramtypes", [di_1.InjectorService])
71
- ], JobDispatcher);
72
- exports.JobDispatcher = JobDispatcher;
73
- //# sourceMappingURL=JobDispatcher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"JobDispatcher.js","sourceRoot":"","sources":["../../../src/dispatchers/JobDispatcher.ts"],"names":[],"mappings":";;;;AAAA,kCAAkC;AAClC,qCAAuC;AACvC,iCAAqD;AAErD,4DAAiD;AAEjD,4DAAoD;AACpD,gEAAwD;AAIjD,IAAM,aAAa,GAAnB,MAAM,aAAa;IACxB,YAA6B,QAAyB;QAAzB,aAAQ,GAAR,QAAQ,CAAiB;IAAG,CAAC;IASnD,KAAK,CAAC,QAAQ,CAAC,GAAyC,EAAE,OAAgB,EAAE,UAAuB,EAAE;QAC1G,MAAM,EAAC,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAC,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAE7F,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAQ,IAAA,gCAAa,EAAC,SAAS,CAAC,CAAC,CAAC;QAEjE,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,SAAS,SAAS,eAAe,CAAC,CAAC;SACpD;QAED,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE;YACjC,GAAG,iBAAiB;YACpB,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,GAAyC,EAAE,OAAgB;QAC3F,IAAI,SAAiB,CAAC;QACtB,IAAI,OAAe,CAAC;QACpB,IAAI,iBAA0C,CAAC;QAE/C,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;YAC7B,0BAA0B;YAC1B,MAAM,KAAK,GAAG,YAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAW,qBAAM,CAAC,CAAC;YACpD,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;YACxB,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;YACrB,iBAAiB,GAAG,MAAM,IAAI,CAAC,mCAAmC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SACpF;aAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAClC,wCAAwC;YACxC,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC;YACtB,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC;SACpB;aAAM;YACL,4BAA4B;YAC5B,SAAS,GAAG,SAAS,CAAC;YACtB,OAAO,GAAG,GAAG,CAAC;SACf;QAED,OAAO;YACL,SAAS;YACT,OAAO;YACP,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,mCAAmC,CAAC,KAAe,EAAE,OAAgB;QACjF,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAa,IAAA,4BAAW,EAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhF,IAAI,CAAC,GAAG,EAAE;YACR,OAAO,KAAK,CAAC,IAAI,CAAC;SACnB;QAED,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,OAAO,KAAK,CAAC,IAAI,CAAC;SACnB;QAED,OAAO;YACL,GAAG,KAAK,CAAC,IAAI;YACb,KAAK;SACN,CAAC;IACJ,CAAC;CACF,CAAA;AAtEY,aAAa;IADzB,IAAA,eAAU,GAAE;6CAE4B,oBAAe;GAD3C,aAAa,CAsEzB;AAtEY,sCAAa"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=JobDispatcherOptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"JobDispatcherOptions.js","sourceRoot":"","sources":["../../../src/dispatchers/JobDispatcherOptions.ts"],"names":[],"mappings":""}
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- /**
5
- * @file Automatically generated by @tsed/barrels.
6
- */
7
- tslib_1.__exportStar(require("./JobDispatcher.js"), exports);
8
- tslib_1.__exportStar(require("./JobDispatcherOptions.js"), exports);
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dispatchers/index.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,6DAAmC;AACnC,oEAA0C"}
package/lib/cjs/index.js DELETED
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- /**
5
- * @file Automatically generated by @tsed/barrels.
6
- */
7
- tslib_1.__exportStar(require("./BullMQModule.js"), exports);
8
- tslib_1.__exportStar(require("./config/config.js"), exports);
9
- tslib_1.__exportStar(require("./constants/BullMQTypes.js"), exports);
10
- tslib_1.__exportStar(require("./constants/constants.js"), exports);
11
- tslib_1.__exportStar(require("./contracts/index.js"), exports);
12
- tslib_1.__exportStar(require("./contracts/JobMethods.js"), exports);
13
- tslib_1.__exportStar(require("./contracts/JobStore.js"), exports);
14
- tslib_1.__exportStar(require("./decorators/index.js"), exports);
15
- tslib_1.__exportStar(require("./decorators/InjectQueue.js"), exports);
16
- tslib_1.__exportStar(require("./decorators/InjectWorker.js"), exports);
17
- tslib_1.__exportStar(require("./decorators/JobController.js"), exports);
18
- tslib_1.__exportStar(require("./dispatchers/index.js"), exports);
19
- tslib_1.__exportStar(require("./dispatchers/JobDispatcher.js"), exports);
20
- tslib_1.__exportStar(require("./dispatchers/JobDispatcherOptions.js"), exports);
21
- tslib_1.__exportStar(require("./utils/createQueueProvider.js"), exports);
22
- tslib_1.__exportStar(require("./utils/createWorkerProvider.js"), exports);
23
- tslib_1.__exportStar(require("./utils/getJobToken.js"), exports);
24
- tslib_1.__exportStar(require("./utils/getQueueToken.js"), exports);
25
- tslib_1.__exportStar(require("./utils/getWorkerToken.js"), exports);
26
- tslib_1.__exportStar(require("./utils/mapQueueOptions.js"), exports);
27
- tslib_1.__exportStar(require("./utils/mapWorkerOptions.js"), exports);
28
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,4DAAkC;AAClC,6DAAmC;AACnC,qEAA2C;AAC3C,mEAAyC;AACzC,+DAAqC;AACrC,oEAA0C;AAC1C,kEAAwC;AACxC,gEAAsC;AACtC,sEAA4C;AAC5C,uEAA6C;AAC7C,wEAA8C;AAC9C,iEAAuC;AACvC,yEAA+C;AAC/C,gFAAsD;AACtD,yEAA+C;AAC/C,0EAAgD;AAChD,iEAAuC;AACvC,mEAAyC;AACzC,oEAA0C;AAC1C,qEAA2C;AAC3C,sEAA4C"}
@@ -1,3 +0,0 @@
1
- {
2
- "type": "commonjs"
3
- }
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createQueueProvider = void 0;
4
- const bullmq_1 = require("bullmq");
5
- const BullMQTypes_js_1 = require("../constants/BullMQTypes.js");
6
- const getQueueToken_js_1 = require("./getQueueToken.js");
7
- function createQueueProvider(injector, queue, opts) {
8
- const token = (0, getQueueToken_js_1.getQueueToken)(queue);
9
- return injector
10
- .add(token, {
11
- type: BullMQTypes_js_1.BullMQTypes.QUEUE,
12
- useValue: new bullmq_1.Queue(queue, opts),
13
- hooks: {
14
- $onDestroy: (queue) => queue.close()
15
- }
16
- })
17
- .invoke(token);
18
- }
19
- exports.createQueueProvider = createQueueProvider;
20
- //# sourceMappingURL=createQueueProvider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createQueueProvider.js","sourceRoot":"","sources":["../../../src/utils/createQueueProvider.ts"],"names":[],"mappings":";;;AACA,mCAA2C;AAC3C,gEAAwD;AACxD,yDAAiD;AAEjD,SAAgB,mBAAmB,CAAC,QAAyB,EAAE,KAAa,EAAE,IAAkB;IAC9F,MAAM,KAAK,GAAG,IAAA,gCAAa,EAAC,KAAK,CAAC,CAAC;IAEnC,OAAO,QAAQ;SACZ,GAAG,CAAC,KAAK,EAAE;QACV,IAAI,EAAE,4BAAW,CAAC,KAAK;QACvB,QAAQ,EAAE,IAAI,cAAK,CAAC,KAAK,EAAE,IAAI,CAAC;QAChC,KAAK,EAAE;YACL,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE;SACrC;KACF,CAAC;SACD,MAAM,CAAQ,KAAK,CAAC,CAAC;AAC1B,CAAC;AAZD,kDAYC"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createWorkerProvider = void 0;
4
- const bullmq_1 = require("bullmq");
5
- const BullMQTypes_js_1 = require("../constants/BullMQTypes.js");
6
- const getWorkerToken_js_1 = require("./getWorkerToken.js");
7
- function createWorkerProvider(injector, worker, process, opts) {
8
- const token = (0, getWorkerToken_js_1.getWorkerToken)(worker);
9
- return injector
10
- .add(token, {
11
- type: BullMQTypes_js_1.BullMQTypes.WORKER,
12
- useValue: new bullmq_1.Worker(worker, process, opts),
13
- hooks: {
14
- $onDestroy: (worker) => worker.close()
15
- }
16
- })
17
- .invoke(token);
18
- }
19
- exports.createWorkerProvider = createWorkerProvider;
20
- //# sourceMappingURL=createWorkerProvider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createWorkerProvider.js","sourceRoot":"","sources":["../../../src/utils/createWorkerProvider.ts"],"names":[],"mappings":";;;AACA,mCAAkD;AAClD,gEAAwD;AACxD,2DAAmD;AAEnD,SAAgB,oBAAoB,CAAC,QAAyB,EAAE,MAAc,EAAE,OAA0B,EAAE,IAAmB;IAC7H,MAAM,KAAK,GAAG,IAAA,kCAAc,EAAC,MAAM,CAAC,CAAC;IAErC,OAAO,QAAQ;SACZ,GAAG,CAAC,KAAK,EAAE;QACV,IAAI,EAAE,4BAAW,CAAC,MAAM;QACxB,QAAQ,EAAE,IAAI,eAAM,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;QAC3C,KAAK,EAAE;YACL,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE;SACvC;KACF,CAAC;SACD,MAAM,CAAS,KAAK,CAAC,CAAC;AAC3B,CAAC;AAZD,oDAYC"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFallbackJobToken = exports.getJobToken = void 0;
4
- function getJobToken(queue, name) {
5
- return `bullmq.job.${queue}.${name}`;
6
- }
7
- exports.getJobToken = getJobToken;
8
- function getFallbackJobToken(queue) {
9
- return ["bullmq.fallback-job", queue].filter(Boolean).join(".");
10
- }
11
- exports.getFallbackJobToken = getFallbackJobToken;
12
- //# sourceMappingURL=getJobToken.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getJobToken.js","sourceRoot":"","sources":["../../../src/utils/getJobToken.ts"],"names":[],"mappings":";;;AAAA,SAAgB,WAAW,CAAC,KAAa,EAAE,IAAY;IACrD,OAAO,cAAc,KAAK,IAAI,IAAI,EAAE,CAAC;AACvC,CAAC;AAFD,kCAEC;AAED,SAAgB,mBAAmB,CAAC,KAAc;IAChD,OAAO,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClE,CAAC;AAFD,kDAEC"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getQueueToken = void 0;
4
- function getQueueToken(queue) {
5
- return `bullmq.queue.${queue}`;
6
- }
7
- exports.getQueueToken = getQueueToken;
8
- //# sourceMappingURL=getQueueToken.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getQueueToken.js","sourceRoot":"","sources":["../../../src/utils/getQueueToken.ts"],"names":[],"mappings":";;;AAAA,SAAgB,aAAa,CAAC,KAAa;IACzC,OAAO,gBAAgB,KAAK,EAAE,CAAC;AACjC,CAAC;AAFD,sCAEC"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getWorkerToken = void 0;
4
- function getWorkerToken(worker) {
5
- return `bullmq.worker.${worker}`;
6
- }
7
- exports.getWorkerToken = getWorkerToken;
8
- //# sourceMappingURL=getWorkerToken.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getWorkerToken.js","sourceRoot":"","sources":["../../../src/utils/getWorkerToken.ts"],"names":[],"mappings":";;;AAAA,SAAgB,cAAc,CAAC,MAAc;IAC3C,OAAO,iBAAiB,MAAM,EAAE,CAAC;AACnC,CAAC;AAFD,wCAEC"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapQueueOptions = void 0;
4
- const core_1 = require("@tsed/core");
5
- function mapQueueOptions(queue, bullMQConfig) {
6
- return (0, core_1.deepMerge)({
7
- connection: bullMQConfig.connection,
8
- ...bullMQConfig.defaultQueueOptions
9
- }, bullMQConfig.queueOptions?.[queue]);
10
- }
11
- exports.mapQueueOptions = mapQueueOptions;
12
- //# sourceMappingURL=mapQueueOptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapQueueOptions.js","sourceRoot":"","sources":["../../../src/utils/mapQueueOptions.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAIrC,SAAgB,eAAe,CAAC,KAAa,EAAE,YAA0B;IACvE,OAAO,IAAA,gBAAS,EACd;QACE,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,GAAG,YAAY,CAAC,mBAAmB;KACpC,EACD,YAAY,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAClC,CAAC;AACL,CAAC;AARD,0CAQC"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapWorkerOptions = void 0;
4
- const core_1 = require("@tsed/core");
5
- function mapWorkerOptions(queue, bullMQConfig) {
6
- return (0, core_1.deepMerge)({
7
- connection: bullMQConfig.connection,
8
- ...bullMQConfig.defaultWorkerOptions
9
- }, bullMQConfig.workerOptions?.[queue]);
10
- }
11
- exports.mapWorkerOptions = mapWorkerOptions;
12
- //# sourceMappingURL=mapWorkerOptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapWorkerOptions.js","sourceRoot":"","sources":["../../../src/utils/mapWorkerOptions.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAIrC,SAAgB,gBAAgB,CAAC,KAAa,EAAE,YAA0B;IACxE,OAAO,IAAA,gBAAS,EACd;QACE,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,GAAG,YAAY,CAAC,oBAAoB;KACrC,EACD,YAAY,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,CACnC,CAAC;AACL,CAAC;AARD,4CAQC"}
@@ -1,3 +0,0 @@
1
- {
2
- "type": "module"
3
- }
@@ -1,23 +0,0 @@
1
- import { BeforeInit, OnDestroy } from "@tsed/common";
2
- import { InjectorService } from "@tsed/di";
3
- import { BullMQConfig } from "./config/config.js";
4
- import { JobDispatcher } from "./dispatchers/index.js";
5
- export declare class BullMQModule implements BeforeInit, OnDestroy {
6
- private readonly injector;
7
- private readonly dispatcher;
8
- constructor(injector: InjectorService, dispatcher: JobDispatcher);
9
- get config(): BullMQConfig;
10
- $beforeInit(): void;
11
- $onDestroy(): Promise<void>;
12
- isEnabled(): boolean;
13
- isWorkerEnabled(): boolean | undefined;
14
- private buildQueues;
15
- private buildWorkers;
16
- /**
17
- * Auto discover queue names from provider and merge it with queue names from global configuration.
18
- * @private
19
- */
20
- private getUniqQueueNames;
21
- private getJob;
22
- private onProcess;
23
- }
@@ -1,50 +0,0 @@
1
- import type { ConnectionOptions, QueueOptions, WorkerOptions } from "bullmq";
2
- export type BullMQConfig = {
3
- /**
4
- * Specify queue name's to create
5
- */
6
- queues?: string[];
7
- /**
8
- * Default connection to use for queue's and worker's
9
- */
10
- connection: ConnectionOptions;
11
- /**
12
- * Default queue options which are applied to every queue
13
- *
14
- * Can be extended/overridden by `queueOptions`
15
- */
16
- defaultQueueOptions?: Partial<QueueOptions>;
17
- /**
18
- * Specify additional queue options by queue name
19
- */
20
- queueOptions?: Record<string, Partial<QueueOptions>>;
21
- /**
22
- * Disable the creation of any worker.
23
- *
24
- * All other worker configuration will be ignored
25
- */
26
- disableWorker?: boolean;
27
- /**
28
- * Specify for which queues to start a worker for.
29
- *
30
- * Defaultly for every queue added in the `queues` parameter
31
- */
32
- workerQueues?: string[];
33
- /**
34
- * Default worker options which are applied to every worker
35
- *
36
- * Can be extended/overridden by `workerOptions`
37
- */
38
- defaultWorkerOptions?: Partial<WorkerOptions>;
39
- /**
40
- * Specify additional worker options by queue name
41
- */
42
- workerOptions?: Record<string, Partial<WorkerOptions>>;
43
- };
44
- declare global {
45
- namespace TsED {
46
- interface Configuration {
47
- bullmq?: BullMQConfig;
48
- }
49
- }
50
- }
@@ -1,7 +0,0 @@
1
- export declare enum BullMQTypes {
2
- CRON = "bullmq:cron",
3
- QUEUE = "bullmq:queue",
4
- JOB = "bullmq:job",
5
- WORKER = "bullmq:worker",
6
- FALLBACK_JOB = "bullmq:fallback-job"
7
- }
@@ -1 +0,0 @@
1
- export declare const BULLMQ = "bullmq";
@@ -1,5 +0,0 @@
1
- import { Job } from "bullmq";
2
- export interface JobMethods<DataType = unknown, ReturnType = unknown> {
3
- handle(payload: DataType, job: Job<DataType, ReturnType>): ReturnType | Promise<ReturnType>;
4
- jobId?(payload: DataType): string | Promise<string>;
5
- }
@@ -1,6 +0,0 @@
1
- import { JobsOptions } from "bullmq";
2
- export interface JobStore {
3
- name: string;
4
- queue: string;
5
- opts: JobsOptions;
6
- }
@@ -1,5 +0,0 @@
1
- /**
2
- * @file Automatically generated by @tsed/barrels.
3
- */
4
- export * from "./JobMethods.js";
5
- export * from "./JobStore.js";
@@ -1 +0,0 @@
1
- export declare function InjectQueue(name: string): any;
@@ -1 +0,0 @@
1
- export declare function InjectWorker(name: string): any;
@@ -1,3 +0,0 @@
1
- import { JobsOptions } from "bullmq";
2
- export declare function JobController(name: string, queue?: string, opts?: JobsOptions): any;
3
- export declare function FallbackJobController(queue?: string): any;
@@ -1,6 +0,0 @@
1
- /**
2
- * @file Automatically generated by @tsed/barrels.
3
- */
4
- export * from "./InjectQueue.js";
5
- export * from "./InjectWorker.js";
6
- export * from "./JobController.js";
@@ -1,14 +0,0 @@
1
- import { Type } from "@tsed/core";
2
- import { InjectorService } from "@tsed/di";
3
- import { Job as BullMQJob, JobsOptions } from "bullmq";
4
- import { JobMethods } from "../contracts/index.js";
5
- import type { JobDispatcherOptions } from "./JobDispatcherOptions.js";
6
- export declare class JobDispatcher {
7
- private readonly injector;
8
- constructor(injector: InjectorService);
9
- dispatch<T extends JobMethods>(job: Type<T>, payload?: Parameters<T["handle"]>[0], options?: JobsOptions): Promise<BullMQJob>;
10
- dispatch<P = unknown>(job: JobDispatcherOptions, payload?: P, options?: JobsOptions): Promise<BullMQJob>;
11
- dispatch<P = unknown>(job: string, payload?: P, options?: JobsOptions): Promise<BullMQJob>;
12
- private resolveDispatchArgs;
13
- private retrieveJobOptionsFromClassBasedJob;
14
- }
@@ -1,4 +0,0 @@
1
- export interface JobDispatcherOptions {
2
- queue: string;
3
- name: string;
4
- }
@@ -1,5 +0,0 @@
1
- /**
2
- * @file Automatically generated by @tsed/barrels.
3
- */
4
- export * from "./JobDispatcher.js";
5
- export * from "./JobDispatcherOptions.js";
@@ -1,24 +0,0 @@
1
- /**
2
- * @file Automatically generated by @tsed/barrels.
3
- */
4
- export * from "./BullMQModule.js";
5
- export * from "./config/config.js";
6
- export * from "./constants/BullMQTypes.js";
7
- export * from "./constants/constants.js";
8
- export * from "./contracts/index.js";
9
- export * from "./contracts/JobMethods.js";
10
- export * from "./contracts/JobStore.js";
11
- export * from "./decorators/index.js";
12
- export * from "./decorators/InjectQueue.js";
13
- export * from "./decorators/InjectWorker.js";
14
- export * from "./decorators/JobController.js";
15
- export * from "./dispatchers/index.js";
16
- export * from "./dispatchers/JobDispatcher.js";
17
- export * from "./dispatchers/JobDispatcherOptions.js";
18
- export * from "./utils/createQueueProvider.js";
19
- export * from "./utils/createWorkerProvider.js";
20
- export * from "./utils/getJobToken.js";
21
- export * from "./utils/getQueueToken.js";
22
- export * from "./utils/getWorkerToken.js";
23
- export * from "./utils/mapQueueOptions.js";
24
- export * from "./utils/mapWorkerOptions.js";
@@ -1,3 +0,0 @@
1
- import { InjectorService } from "@tsed/di";
2
- import { Queue, QueueOptions } from "bullmq";
3
- export declare function createQueueProvider(injector: InjectorService, queue: string, opts: QueueOptions): Queue<any, any, string>;
@@ -1,3 +0,0 @@
1
- import { InjectorService } from "@tsed/di";
2
- import { Job, Worker, WorkerOptions } from "bullmq";
3
- export declare function createWorkerProvider(injector: InjectorService, worker: string, process: (job: Job) => any, opts: WorkerOptions): Worker<any, any, string>;
@@ -1,2 +0,0 @@
1
- export declare function getJobToken(queue: string, name: string): string;
2
- export declare function getFallbackJobToken(queue?: string): string;
@@ -1 +0,0 @@
1
- export declare function getQueueToken(queue: string): string;
@@ -1 +0,0 @@
1
- export declare function getWorkerToken(worker: string): string;
@@ -1,3 +0,0 @@
1
- import type { QueueOptions } from "bullmq";
2
- import { BullMQConfig } from "../config/config.js";
3
- export declare function mapQueueOptions(queue: string, bullMQConfig: BullMQConfig): QueueOptions;
@@ -1,3 +0,0 @@
1
- import type { WorkerOptions } from "bullmq";
2
- import { BullMQConfig } from "../config/config.js";
3
- export declare function mapWorkerOptions(queue: string, bullMQConfig: BullMQConfig): WorkerOptions;