bullmq 1.85.2 → 1.86.0
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/dist/cjs/classes/child-processor.js +1 -1
- package/dist/cjs/classes/child-processor.js.map +1 -1
- package/dist/cjs/classes/compat.d.ts +1 -1
- package/dist/cjs/classes/job.d.ts +16 -1
- package/dist/cjs/classes/job.js +17 -1
- package/dist/cjs/classes/job.js.map +1 -1
- package/dist/cjs/classes/queue-base.d.ts +36 -0
- package/dist/cjs/classes/queue-base.js +36 -0
- package/dist/cjs/classes/queue-base.js.map +1 -1
- package/dist/cjs/classes/queue-events.d.ts +9 -0
- package/dist/cjs/classes/queue-events.js +9 -0
- package/dist/cjs/classes/queue-events.js.map +1 -1
- package/dist/cjs/classes/queue-getters.d.ts +55 -2
- package/dist/cjs/classes/queue-getters.js +55 -2
- package/dist/cjs/classes/queue-getters.js.map +1 -1
- package/dist/cjs/classes/queue-scheduler.d.ts +19 -0
- package/dist/cjs/classes/queue-scheduler.js +19 -0
- package/dist/cjs/classes/queue-scheduler.js.map +1 -1
- package/dist/cjs/classes/queue.d.ts +33 -4
- package/dist/cjs/classes/queue.js +30 -1
- package/dist/cjs/classes/queue.js.map +1 -1
- package/dist/cjs/classes/repeat.d.ts +2 -1
- package/dist/cjs/classes/repeat.js +1 -1
- package/dist/cjs/classes/repeat.js.map +1 -1
- package/dist/cjs/classes/scripts.js +1 -0
- package/dist/cjs/classes/scripts.js.map +1 -1
- package/dist/cjs/classes/worker.d.ts +2 -1
- package/dist/cjs/classes/worker.js +2 -1
- package/dist/cjs/classes/worker.js.map +1 -1
- package/dist/cjs/commands/addJob-9.lua +17 -7
- package/dist/cjs/commands/cleanJobsInSet-2.lua +2 -83
- package/dist/cjs/commands/includes/cleanList.lua +44 -0
- package/dist/cjs/commands/includes/cleanSet.lua +38 -0
- package/dist/cjs/commands/includes/getTimestamp.lua +19 -0
- package/dist/cjs/commands/includes/getZSetItems.lua +0 -1
- package/dist/cjs/interfaces/job-json.d.ts +2 -0
- package/dist/cjs/interfaces/jobs-options.d.ts +4 -0
- package/dist/cjs/utils.d.ts +1 -1
- package/dist/esm/classes/child-processor.js +1 -1
- package/dist/esm/classes/child-processor.js.map +1 -1
- package/dist/esm/classes/compat.d.ts +1 -1
- package/dist/esm/classes/job.d.ts +16 -1
- package/dist/esm/classes/job.js +17 -1
- package/dist/esm/classes/job.js.map +1 -1
- package/dist/esm/classes/queue-base.d.ts +36 -0
- package/dist/esm/classes/queue-base.js +36 -0
- package/dist/esm/classes/queue-base.js.map +1 -1
- package/dist/esm/classes/queue-events.d.ts +9 -0
- package/dist/esm/classes/queue-events.js +9 -0
- package/dist/esm/classes/queue-events.js.map +1 -1
- package/dist/esm/classes/queue-getters.d.ts +55 -2
- package/dist/esm/classes/queue-getters.js +55 -2
- package/dist/esm/classes/queue-getters.js.map +1 -1
- package/dist/esm/classes/queue-scheduler.d.ts +19 -0
- package/dist/esm/classes/queue-scheduler.js +19 -0
- package/dist/esm/classes/queue-scheduler.js.map +1 -1
- package/dist/esm/classes/queue.d.ts +33 -4
- package/dist/esm/classes/queue.js +30 -1
- package/dist/esm/classes/queue.js.map +1 -1
- package/dist/esm/classes/repeat.d.ts +2 -1
- package/dist/esm/classes/repeat.js +1 -1
- package/dist/esm/classes/repeat.js.map +1 -1
- package/dist/esm/classes/scripts.js +1 -0
- package/dist/esm/classes/scripts.js.map +1 -1
- package/dist/esm/classes/worker.d.ts +2 -1
- package/dist/esm/classes/worker.js +2 -1
- package/dist/esm/classes/worker.js.map +1 -1
- package/dist/esm/commands/addJob-9.lua +17 -7
- package/dist/esm/commands/cleanJobsInSet-2.lua +2 -83
- package/dist/esm/commands/includes/cleanList.lua +44 -0
- package/dist/esm/commands/includes/cleanSet.lua +38 -0
- package/dist/esm/commands/includes/getTimestamp.lua +19 -0
- package/dist/esm/commands/includes/getZSetItems.lua +0 -1
- package/dist/esm/interfaces/job-json.d.ts +2 -0
- package/dist/esm/interfaces/jobs-options.d.ts +4 -0
- package/dist/esm/utils.d.ts +1 -1
- package/package.json +1 -1
@@ -27,89 +27,8 @@ if limit > 0 then
|
|
27
27
|
end
|
28
28
|
|
29
29
|
-- Includes
|
30
|
-
--- @include "includes/
|
31
|
-
--- @include "includes/
|
32
|
-
|
33
|
-
local function getTimestamp(jobKey, attributes)
|
34
|
-
if #attributes == 1 then
|
35
|
-
return rcall("HGET", jobKey, attributes[1])
|
36
|
-
end
|
37
|
-
|
38
|
-
local jobTs
|
39
|
-
for _, ts in ipairs(rcall("HMGET", jobKey, unpack(attributes))) do
|
40
|
-
if (ts) then
|
41
|
-
jobTs = ts
|
42
|
-
break
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
return jobTs
|
47
|
-
end
|
48
|
-
|
49
|
-
local function cleanList(listKey, jobKeyPrefix, rangeStart, rangeEnd, timestamp, skipCheckLock)
|
50
|
-
local jobs = rcall("LRANGE", listKey, rangeStart, rangeEnd)
|
51
|
-
local deleted = {}
|
52
|
-
local deletedCount = 0
|
53
|
-
local jobTS
|
54
|
-
local deletionMarker = ''
|
55
|
-
local jobIdsLen = #jobs
|
56
|
-
for i, job in ipairs(jobs) do
|
57
|
-
if limit > 0 and deletedCount >= limit then
|
58
|
-
break
|
59
|
-
end
|
60
|
-
|
61
|
-
local jobKey = jobKeyPrefix .. job
|
62
|
-
if (skipCheckLock or rcall("EXISTS", jobKey .. ":lock") == 0) then
|
63
|
-
-- Find the right timestamp of the job to compare to maxTimestamp:
|
64
|
-
-- * finishedOn says when the job was completed, but it isn't set unless the job has actually completed
|
65
|
-
-- * processedOn represents when the job was last attempted, but it doesn't get populated until the job is first tried
|
66
|
-
-- * timestamp is the original job submission time
|
67
|
-
-- Fetch all three of these (in that order) and use the first one that is set so that we'll leave jobs that have been active within the grace period:
|
68
|
-
jobTS = getTimestamp(jobKey, {"finishedOn", "processedOn", "timestamp"})
|
69
|
-
if (not jobTS or jobTS < timestamp) then
|
70
|
-
-- replace the entry with a deletion marker; the actual deletion will
|
71
|
-
-- occur at the end of the script
|
72
|
-
rcall("LSET", listKey, rangeEnd - jobIdsLen + i, deletionMarker)
|
73
|
-
removeJob(job, true, jobKeyPrefix)
|
74
|
-
deletedCount = deletedCount + 1
|
75
|
-
table.insert(deleted, job)
|
76
|
-
end
|
77
|
-
end
|
78
|
-
end
|
79
|
-
|
80
|
-
rcall("LREM", listKey, 0, deletionMarker)
|
81
|
-
|
82
|
-
return {deleted, deletedCount}
|
83
|
-
end
|
84
|
-
|
85
|
-
local function cleanSet(setKey, jobKeyPrefix, rangeStart, rangeEnd, timestamp, attributes)
|
86
|
-
local jobs = rcall("ZRANGE", setKey, rangeStart, rangeEnd)
|
87
|
-
local deleted = {}
|
88
|
-
local deletedCount = 0
|
89
|
-
local jobTS
|
90
|
-
for i, job in ipairs(jobs) do
|
91
|
-
if limit > 0 and deletedCount >= limit then
|
92
|
-
break
|
93
|
-
end
|
94
|
-
|
95
|
-
local jobKey = jobKeyPrefix .. job
|
96
|
-
-- * finishedOn says when the job was completed, but it isn't set unless the job has actually completed
|
97
|
-
jobTS = getTimestamp(jobKey, attributes)
|
98
|
-
if (not jobTS or jobTS < timestamp) then
|
99
|
-
removeJob(job, true, jobKeyPrefix)
|
100
|
-
deletedCount = deletedCount + 1
|
101
|
-
table.insert(deleted, job)
|
102
|
-
end
|
103
|
-
end
|
104
|
-
|
105
|
-
if(#deleted > 0) then
|
106
|
-
for from, to in batches(#deleted, 7000) do
|
107
|
-
rcall("ZREM", setKey, unpack(deleted, from, to))
|
108
|
-
end
|
109
|
-
end
|
110
|
-
|
111
|
-
return {deleted, deletedCount}
|
112
|
-
end
|
30
|
+
--- @include "includes/cleanList"
|
31
|
+
--- @include "includes/cleanSet"
|
113
32
|
|
114
33
|
local result
|
115
34
|
if ARGV[4] == "active" then
|
@@ -0,0 +1,44 @@
|
|
1
|
+
--[[
|
2
|
+
Function to clean job list.
|
3
|
+
Returns jobIds and deleted count number.
|
4
|
+
]]
|
5
|
+
|
6
|
+
-- Includes
|
7
|
+
--- @include "getTimestamp"
|
8
|
+
--- @include "removeJob"
|
9
|
+
|
10
|
+
local function cleanList(listKey, jobKeyPrefix, rangeStart, rangeEnd, timestamp, skipCheckLock)
|
11
|
+
local jobs = rcall("LRANGE", listKey, rangeStart, rangeEnd)
|
12
|
+
local deleted = {}
|
13
|
+
local deletedCount = 0
|
14
|
+
local jobTS
|
15
|
+
local deletionMarker = ''
|
16
|
+
local jobIdsLen = #jobs
|
17
|
+
for i, job in ipairs(jobs) do
|
18
|
+
if limit > 0 and deletedCount >= limit then
|
19
|
+
break
|
20
|
+
end
|
21
|
+
|
22
|
+
local jobKey = jobKeyPrefix .. job
|
23
|
+
if (skipCheckLock or rcall("EXISTS", jobKey .. ":lock") == 0) then
|
24
|
+
-- Find the right timestamp of the job to compare to maxTimestamp:
|
25
|
+
-- * finishedOn says when the job was completed, but it isn't set unless the job has actually completed
|
26
|
+
-- * processedOn represents when the job was last attempted, but it doesn't get populated until the job is first tried
|
27
|
+
-- * timestamp is the original job submission time
|
28
|
+
-- Fetch all three of these (in that order) and use the first one that is set so that we'll leave jobs that have been active within the grace period:
|
29
|
+
jobTS = getTimestamp(jobKey, {"finishedOn", "processedOn", "timestamp"})
|
30
|
+
if (not jobTS or jobTS < timestamp) then
|
31
|
+
-- replace the entry with a deletion marker; the actual deletion will
|
32
|
+
-- occur at the end of the script
|
33
|
+
rcall("LSET", listKey, rangeEnd - jobIdsLen + i, deletionMarker)
|
34
|
+
removeJob(job, true, jobKeyPrefix)
|
35
|
+
deletedCount = deletedCount + 1
|
36
|
+
table.insert(deleted, job)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
rcall("LREM", listKey, 0, deletionMarker)
|
42
|
+
|
43
|
+
return {deleted, deletedCount}
|
44
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
--[[
|
2
|
+
Function to clean job set.
|
3
|
+
Returns jobIds and deleted count number.
|
4
|
+
]]
|
5
|
+
|
6
|
+
-- Includes
|
7
|
+
--- @include "batches"
|
8
|
+
--- @include "getTimestamp"
|
9
|
+
--- @include "removeJob"
|
10
|
+
|
11
|
+
local function cleanSet(setKey, jobKeyPrefix, rangeStart, rangeEnd, timestamp, attributes)
|
12
|
+
local jobs = rcall("ZRANGE", setKey, rangeStart, rangeEnd)
|
13
|
+
local deleted = {}
|
14
|
+
local deletedCount = 0
|
15
|
+
local jobTS
|
16
|
+
for i, job in ipairs(jobs) do
|
17
|
+
if limit > 0 and deletedCount >= limit then
|
18
|
+
break
|
19
|
+
end
|
20
|
+
|
21
|
+
local jobKey = jobKeyPrefix .. job
|
22
|
+
-- * finishedOn says when the job was completed, but it isn't set unless the job has actually completed
|
23
|
+
jobTS = getTimestamp(jobKey, attributes)
|
24
|
+
if (not jobTS or jobTS < timestamp) then
|
25
|
+
removeJob(job, true, jobKeyPrefix)
|
26
|
+
deletedCount = deletedCount + 1
|
27
|
+
table.insert(deleted, job)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
if(#deleted > 0) then
|
32
|
+
for from, to in batches(#deleted, 7000) do
|
33
|
+
rcall("ZREM", setKey, unpack(deleted, from, to))
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
return {deleted, deletedCount}
|
38
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
--[[
|
2
|
+
Function to get the latest saved timestamp.
|
3
|
+
]]
|
4
|
+
|
5
|
+
local function getTimestamp(jobKey, attributes)
|
6
|
+
if #attributes == 1 then
|
7
|
+
return rcall("HGET", jobKey, attributes[1])
|
8
|
+
end
|
9
|
+
|
10
|
+
local jobTs
|
11
|
+
for _, ts in ipairs(rcall("HMGET", jobKey, unpack(attributes))) do
|
12
|
+
if (ts) then
|
13
|
+
jobTs = ts
|
14
|
+
break
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
return jobTs
|
19
|
+
end
|
@@ -13,6 +13,7 @@ export interface JobJson {
|
|
13
13
|
stacktrace: string;
|
14
14
|
returnvalue: string;
|
15
15
|
parentKey?: string;
|
16
|
+
repeatJobKey?: string;
|
16
17
|
}
|
17
18
|
export interface JobJsonRaw {
|
18
19
|
id: string;
|
@@ -29,4 +30,5 @@ export interface JobJsonRaw {
|
|
29
30
|
returnvalue: string;
|
30
31
|
parentKey?: string;
|
31
32
|
parent?: string;
|
33
|
+
rjk?: string;
|
32
34
|
}
|
@@ -27,6 +27,10 @@ export interface JobsOptions {
|
|
27
27
|
* Repeat this job, for example based on a `cron` schedule.
|
28
28
|
*/
|
29
29
|
repeat?: RepeatOptions;
|
30
|
+
/**
|
31
|
+
* Base repeat job key.
|
32
|
+
*/
|
33
|
+
repeatJobKey?: string;
|
30
34
|
/**
|
31
35
|
* Rate limiter key to use if rate limiter enabled.
|
32
36
|
*
|
package/dist/cjs/utils.d.ts
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/// <reference types="node" />
|
2
2
|
import { Cluster, Redis } from 'ioredis';
|
3
|
-
import {
|
3
|
+
import { ChildMessage, JobsOptions, ParentMessage, QueueOptions, RedisClient } from './interfaces';
|
4
4
|
import { ChildProcess } from 'child_process';
|
5
5
|
export declare const errorObject: {
|
6
6
|
[index: string]: any;
|
@@ -95,7 +95,7 @@ export class ChildProcessor {
|
|
95
95
|
// https://stackoverflow.com/questions/18391212/is-it-not-possible-to-stringify-an-error-using-json-stringify
|
96
96
|
if (!('toJSON' in Error.prototype)) {
|
97
97
|
Object.defineProperty(Error.prototype, 'toJSON', {
|
98
|
-
value: function () {
|
98
|
+
value: function toJSONByBull() {
|
99
99
|
const alt = {};
|
100
100
|
const _this = this;
|
101
101
|
Object.getOwnPropertyNames(_this).forEach(function (key) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"child-processor.js","sourceRoot":"","sources":["../../../src/classes/child-processor.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"child-processor.js","sourceRoot":"","sources":["../../../src/classes/child-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAW,aAAa,EAAgB,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,IAAK,WAKJ;AALD,WAAK,WAAW;IACd,6CAAI,CAAA;IACJ,mDAAO,CAAA;IACP,2DAAW,CAAA;IACX,mDAAO,CAAA;AACT,CAAC,EALI,WAAW,KAAX,WAAW,QAKf;AAED;;;;;;GAMG;AACH,MAAM,OAAO,cAAc;IAKlB,KAAK,CAAC,IAAI,CAAC,aAAqB;QACrC,IAAI,SAAS,CAAC;QACd,IAAI;YACF,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;SACpC;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC;YAClC,OAAO,SAAS,CAAC,OAAO,EAAE;gBACxB,GAAG,EAAE,aAAa,CAAC,UAAU;gBAC7B,GAAG,EAAS,GAAG;aAChB,CAAC,CAAC;SACJ;QAED,IAAI,SAAS,CAAC,OAAO,EAAE;YACrB,yBAAyB;YACzB,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC;SAC/B;QACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YACxB,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;SAClC;aAAM;YACL,MAAM,aAAa,GAAG,SAAS,CAAC;YAChC,SAAS,GAAG,UAAU,GAAG,IAAW;gBAClC,IAAI;oBACF,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;iBAChD;gBAAC,OAAO,GAAG,EAAE;oBACZ,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;iBAC5B;YACH,CAAC,CAAC;SACH;QACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC;QAC/B,MAAM,SAAS,CAAC,OAAO,EAAE;YACvB,GAAG,EAAE,aAAa,CAAC,aAAa;SACjC,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,OAAgB;QACjC,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,IAAI,EAAE;YACpC,OAAO,SAAS,CAAC,OAAO,EAAE;gBACxB,GAAG,EAAE,aAAa,CAAC,KAAK;gBACxB,GAAG,EAAE,IAAI,KAAK,CAAC,yCAAyC,CAAC;aAC1D,CAAC,CAAC;SACJ;QACD,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAK,IAAI,EAAE;YACnC,IAAI;gBACF,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC7B,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjD,MAAM,SAAS,CAAC,OAAO,EAAE;oBACvB,GAAG,EAAE,aAAa,CAAC,SAAS;oBAC5B,KAAK,EAAE,MAAM;iBACd,CAAC,CAAC;aACJ;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,SAAS,CAAC,OAAO,EAAE;oBACvB,GAAG,EAAE,aAAa,CAAC,MAAM;oBACzB,KAAK,EAAE,CAAS,GAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG;iBACzD,CAAC,CAAC;aACJ;oBAAS;gBACR,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC;gBAC/B,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;aACpC;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAEM,KAAK,CAAC,IAAI,KAAmB,CAAC;IAErC,KAAK,CAAC,wBAAwB;QAC5B,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC;QACtC,IAAI;YACF,MAAM,IAAI,CAAC,iBAAiB,CAAC;SAC9B;gBAAS;YACR,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;SACrC;IACH,CAAC;CACF;AAED,6GAA6G;AAC7G,IAAI,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE;IAClC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE;QAC/C,KAAK,EAAE,SAAS,YAAY;YAC1B,MAAM,GAAG,GAAQ,EAAE,CAAC;YACpB,MAAM,KAAK,GAAG,IAAI,CAAC;YAEnB,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAU,GAAG;gBACrD,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC,EAAE,IAAI,CAAC,CAAC;YAET,OAAO,GAAG,CAAC;QACb,CAAC;QACD,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;CACJ;AAED;;;;;;;;GAQG;AACH,SAAS,OAAO,CAAC,GAAY;IAC3B,IAAI,aAAa,GAAG,GAAG,CAAC,QAAQ,CAAC;IAEjC,MAAM,cAAc,GAAG,KAAK,EAAE,QAAyB,EAAE,EAAE;QACzD,gDAAgD;QAChD,4DAA4D;QAC5D,aAAa,GAAG,QAAQ,CAAC;QACzB,uCAAuC;QACvC,MAAM,SAAS,CAAC,OAAO,EAAE;YACvB,GAAG,EAAE,aAAa,CAAC,QAAQ;YAC3B,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,QAA0B,EAAE,EAAE;QAC9C,OAAO,CAAC,IAAI,CACV;YACE,gGAAgG;YAChG,qFAAqF;SACtF,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAC;QAEF,IAAI,QAAQ,EAAE;YACZ,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC;SACjC;aAAM;YACL,wCAAwC;YACxC,OAAO,aAAa,CAAC;SACtB;IACH,CAAC,CAAC;IAEF,uCACK,GAAG,KACN,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,EAClC,IAAI,EAAE,GAAG,CAAC,IAAI,EACd,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,IAAI,IAAI,CAAC;QAChD;;;;;WAKG;QACH,QAAQ;QACR;;WAEG;QACH,cAAc;QACd;;WAEG;QACH,GAAG,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACtB,SAAS,CAAC,OAAO,EAAE;gBACjB,GAAG,EAAE,aAAa,CAAC,GAAG;gBACtB,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC,IACD;AACJ,CAAC"}
|
@@ -3,7 +3,7 @@ import { EventEmitter } from 'events';
|
|
3
3
|
import { JobType } from '../types';
|
4
4
|
import { Job } from './job';
|
5
5
|
import { QueueEvents } from './queue-events';
|
6
|
-
import { JobsOptions,
|
6
|
+
import { JobsOptions, Processor, QueueOptions, QueueEventsOptions, QueueSchedulerOptions, RepeatOptions, WorkerOptions } from '../interfaces';
|
7
7
|
declare type CommonOptions = QueueSchedulerOptions & QueueOptions & WorkerOptions & QueueEventsOptions;
|
8
8
|
/**
|
9
9
|
* @deprecated Use Queue class instead {@link https://docs.bullmq.io/guide/queues}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { Pipeline } from 'ioredis';
|
1
2
|
import { JobJson, JobJsonRaw, JobsOptions, ParentKeys, RedisClient } from '../interfaces';
|
2
3
|
import { FinishedStatus, JobState, JobJsonSandbox } from '../types';
|
3
4
|
import { QueueEvents } from './queue-events';
|
@@ -19,6 +20,16 @@ export interface DependenciesOpts {
|
|
19
20
|
count?: number;
|
20
21
|
};
|
21
22
|
}
|
23
|
+
/**
|
24
|
+
* Job
|
25
|
+
*
|
26
|
+
* This class represents a Job in the queue. Normally job are implicitly created when
|
27
|
+
* you add a job to the queue with methods such as Queue.addJob( ... )
|
28
|
+
*
|
29
|
+
* A Job instance is also passed to the Worker's process function.
|
30
|
+
*
|
31
|
+
* @class Job
|
32
|
+
*/
|
22
33
|
export declare class Job<DataType = any, ReturnType = any, NameType extends string = string> {
|
23
34
|
protected queue: MinimalQueue;
|
24
35
|
/**
|
@@ -78,6 +89,10 @@ export declare class Job<DataType = any, ReturnType = any, NameType extends stri
|
|
78
89
|
* Object that contains parentId (id) and parent queueKey.
|
79
90
|
*/
|
80
91
|
parent?: ParentKeys;
|
92
|
+
/**
|
93
|
+
* Base repeat job key.
|
94
|
+
*/
|
95
|
+
repeatJobKey?: string;
|
81
96
|
protected toKey: (type: string) => string;
|
82
97
|
private discarded;
|
83
98
|
protected scripts: Scripts;
|
@@ -319,5 +334,5 @@ export declare class Job<DataType = any, ReturnType = any, NameType extends stri
|
|
319
334
|
* @returns
|
320
335
|
*/
|
321
336
|
addJob(client: RedisClient, parentOpts?: ParentOpts): Promise<string>;
|
322
|
-
|
337
|
+
protected saveStacktrace(multi: Pipeline, err: Error): void;
|
323
338
|
}
|
package/dist/esm/classes/job.js
CHANGED
@@ -6,6 +6,16 @@ import { Backoffs } from './backoffs';
|
|
6
6
|
import { Scripts } from './scripts';
|
7
7
|
import { UnrecoverableError } from './unrecoverable-error';
|
8
8
|
const logger = debuglog('bull');
|
9
|
+
/**
|
10
|
+
* Job
|
11
|
+
*
|
12
|
+
* This class represents a Job in the queue. Normally job are implicitly created when
|
13
|
+
* you add a job to the queue with methods such as Queue.addJob( ... )
|
14
|
+
*
|
15
|
+
* A Job instance is also passed to the Worker's process function.
|
16
|
+
*
|
17
|
+
* @class Job
|
18
|
+
*/
|
9
19
|
export class Job {
|
10
20
|
constructor(queue,
|
11
21
|
/**
|
@@ -45,10 +55,12 @@ export class Job {
|
|
45
55
|
* @defaultValue 0
|
46
56
|
*/
|
47
57
|
this.attemptsMade = 0;
|
58
|
+
const _a = this.opts, { repeatJobKey } = _a, restOpts = __rest(_a, ["repeatJobKey"]);
|
48
59
|
this.opts = Object.assign({
|
49
60
|
attempts: 0,
|
50
61
|
delay: 0,
|
51
|
-
},
|
62
|
+
}, restOpts);
|
63
|
+
this.repeatJobKey = repeatJobKey;
|
52
64
|
this.timestamp = opts.timestamp ? opts.timestamp : Date.now();
|
53
65
|
this.opts.backoff = Backoffs.normalize(opts.backoff);
|
54
66
|
this.parentKey = getParentKey(opts.parent);
|
@@ -128,6 +140,9 @@ export class Job {
|
|
128
140
|
if (json.processedOn) {
|
129
141
|
job.processedOn = parseInt(json.processedOn);
|
130
142
|
}
|
143
|
+
if (json.rjk) {
|
144
|
+
job.repeatJobKey = json.rjk;
|
145
|
+
}
|
131
146
|
job.failedReason = json.failedReason;
|
132
147
|
job.attemptsMade = parseInt(json.attemptsMade || '0');
|
133
148
|
job.stacktrace = getTraces(json.stacktrace);
|
@@ -180,6 +195,7 @@ export class Job {
|
|
180
195
|
timestamp: this.timestamp,
|
181
196
|
failedReason: JSON.stringify(this.failedReason),
|
182
197
|
stacktrace: JSON.stringify(this.stacktrace),
|
198
|
+
repeatJobKey: this.repeatJobKey,
|
183
199
|
returnvalue: JSON.stringify(this.returnvalue),
|
184
200
|
};
|
185
201
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/classes/job.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/classes/job.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAWhC,OAAO,EACL,WAAW,EACX,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,QAAQ,GACT,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAA4B,OAAO,EAAW,MAAM,WAAW,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;AAsBhC;;;;;;;;;GASG;AACH,MAAM,OAAO,GAAG;IAsEd,YACY,KAAmB;IAC7B;;OAEG;IACI,IAAc;IAErB;;OAEG;IACI,IAAc;IAErB;;OAEG;IACI,OAAoB,EAAE,EACtB,EAAW;QAfR,UAAK,GAAL,KAAK,CAAc;QAItB,SAAI,GAAJ,IAAI,CAAU;QAKd,SAAI,GAAJ,IAAI,CAAU;QAKd,SAAI,GAAJ,IAAI,CAAkB;QACtB,OAAE,GAAF,EAAE,CAAS;QAjFpB;;;WAGG;QACH,aAAQ,GAAoB,CAAC,CAAC;QAE9B;;;WAGG;QACH,gBAAW,GAAe,IAAI,CAAC;QAE/B;;;WAGG;QACH,eAAU,GAAa,IAAI,CAAC;QAO5B;;;WAGG;QACH,iBAAY,GAAG,CAAC,CAAC;QAwDf,MAAM,KAAgC,IAAI,CAAC,IAAI,EAAzC,EAAE,YAAY,OAA2B,EAAtB,QAAQ,cAA3B,gBAA6B,CAAY,CAAC;QAEhD,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CACvB;YACE,QAAQ,EAAE,CAAC;YACX,KAAK,EAAE,CAAC;SACT,EACD,QAAQ,CACT,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QAEjC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAE9D,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM;YACvB,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACrD,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,KAAmB,EACnB,IAAO,EACP,IAAO,EACP,IAAkB;QAElB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;QAElC,MAAM,GAAG,GAAG,IAAI,IAAI,CAAU,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAE3E,GAAG,CAAC,EAAE,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;YAChC,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,qBAAqB,EAAE,GAAG,CAAC,SAAS;gBAClC,CAAC,CAAC,GAAG,GAAG,CAAC,SAAS,eAAe;gBACjC,CAAC,CAAC,EAAE;SACP,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU,CACrB,KAAmB,EACnB,IAIG;QAEH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;QAElC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,GAAG,CAAC,EAAE,WACJ,OAAA,IAAI,IAAI,CAAU,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAA,GAAG,CAAC,IAAI,0CAAE,KAAK,CAAC,CAAA,EAAA,CAC1E,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAE7B,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE;YAC9B,GAAG,CAAC,MAAM,CAAe,KAAiB,EAAE;gBAC1C,SAAS,EAAE,GAAG,CAAC,SAAS;gBACxB,qBAAqB,EAAE,GAAG,CAAC,SAAS;oBAClC,CAAC,CAAC,GAAG,GAAG,CAAC,SAAS,eAAe;oBACjC,CAAC,CAAC,EAAE;aACP,CAAC,CAAC;SACJ;QAED,MAAM,OAAO,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAA6B,CAAC;QACjE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE;YACnD,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YACjC,IAAI,GAAG,EAAE;gBACP,MAAM,GAAG,CAAC;aACX;YAED,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;SAC7B;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAQ,CACb,KAAmB,EACnB,IAAgB,EAChB,KAAc;QAEd,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QAE3C,MAAM,GAAG,GAAG,IAAI,IAAI,CAClB,KAAK,EACL,IAAI,CAAC,IAAS,EACd,IAAI,EACJ,IAAI,EACJ,IAAI,CAAC,EAAE,IAAI,KAAK,CACjB,CAAC;QAEF,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAC;QAEhD,oCAAoC;QACpC,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEzC,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC5C;QAED,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,GAAG,CAAC,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC9C;QAED,IAAI,IAAI,CAAC,GAAG,EAAE;YACZ,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC;SAC7B;QAED,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACrC,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,IAAI,GAAG,CAAC,CAAC;QAEtD,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE5C,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE;YACxC,GAAG,CAAC,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SACpD;QAED,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;SAChC;QAED,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACtC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,KAAmB,EACnB,KAAa;QAEb,sDAAsD;QACtD,IAAI,KAAK,EAAE;YACT,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;YAClC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YACzD,OAAO,OAAO,CAAC,OAAO,CAAC;gBACrB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,IAAI,CAAC,QAAQ,CACX,KAAK,EACK,OAAsB,EAChC,KAAK,CACN,CAAC;SACP;IACH,CAAC;IAED,MAAM;QACJ,MAAM,KAAgD,IAAI,EAApD,EAAE,KAAK,EAAE,OAAO,OAAoC,EAA/B,sBAAsB,cAA3C,oBAA6C,CAAO,CAAC;QAC3D,OAAO,sBAAsB,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACvE,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC;YAC/C,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;YAC3C,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;SAC9C,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,uCACK,IAAI,CAAC,MAAM,EAAE,KAChB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,mBAAM,IAAI,CAAC,MAAM,EAAG,CAAC,CAAC,SAAS,EACpD,MAAM,EAAE,IAAI,CAAC,MAAM,IACnB;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,IAAc;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAiC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,QAAyB;QACtC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAC,MAAc;QACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;QAC9C,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;QAElC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC;QAEjB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,OAAO,EAAE;YACX,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;SAC5B;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;SACnD;IACH,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAC,KAAa,EAAE,QAAgB;QACxC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,eAAe,CACnB,WAAuB,EACvB,KAAa,EACb,SAAS,GAAG,IAAI;QAEhB,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;QAElC,IAAI,CAAC,WAAW,GAAG,WAAW,IAAI,KAAK,CAAC,CAAC;QAEzC,MAAM,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE;YAC5D,WAAW;SACZ,CAAC,CAAC;QACH,IAAI,sBAAsB,KAAK,WAAW,EAAE;YAC1C,MAAM,WAAW,CAAC,KAAK,CAAC;SACzB;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CACjC,IAAI,EACJ,sBAAsB,EACtB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAC1B,KAAK,EACL,SAAS,CACV,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,YAAY,CAChB,GAAM,EACN,KAAa,EACb,SAAS,GAAG,KAAK;QAEjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QACvC,MAAM,OAAO,GAAG,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC;QAE7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAE5B,IAAI,OAAe,CAAC;QACpB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAEhC,EAAE;QACF,kDAAkD;QAClD,EAAE;QACF,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,UAAU,CAAC;QACf,IACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ;YACtC,CAAC,IAAI,CAAC,SAAS;YACf,CAAC,CAAC,GAAG,YAAY,kBAAkB,CAAC,EACpC;YACA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAqB,CAAC;YAEzC,6BAA6B;YAC7B,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,SAAS,CACpB,IAAI,CAAC,IAAI,CAAC,OAAO,EACjC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAChD,GAAG,EACH,IAAI,CACL,CAAC;YAEF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;gBAChB,YAAY,GAAG,IAAI,CAAC;aACrB;iBAAM,IAAI,KAAK,EAAE;gBAChB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CACzC,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAClB,KAAK,CACN,CAAC;gBACI,KAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBACjC,OAAO,GAAG,SAAS,CAAC;aACrB;iBAAM;gBACL,oBAAoB;gBACd,KAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;gBACvD,OAAO,GAAG,OAAO,CAAC;aACnB;SACF;aAAM;YACL,yBAAyB;YACzB,YAAY,GAAG,IAAI,CAAC;SACrB;QAED,IAAI,YAAY,EAAE;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CACxC,IAAI,EACJ,OAAO,EACP,IAAI,CAAC,IAAI,CAAC,YAAY,EACtB,KAAK,EACL,SAAS,CACV,CAAC;YACI,KAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAClC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;YACtB,OAAO,GAAG,QAAQ,CAAC;SACpB;QAED,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,IAAI,GAAG,CAAC,EAAE;YACZ,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;SACrE;QAED,IAAI,UAAU,EAAE;YACd,IAAI,CAAC,UAAU,GAAG,UAAoB,CAAC;SACxC;IACH,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAC,KAAa;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB;QACrB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAEvC,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,OAAO,CAClC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,YAAY,CAAC,CACnC,CAAW,CAAC;QAEb,IAAI,MAAM,EAAE;YACV,OAAO,SAAS,CACd,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAC3D,CAAC;SACH;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAC,OAAyB,EAAE;QAM/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACxC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;YAClD,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;YAEtD,MAAM,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAGnE,CAAC;YAEF,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAC3D,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC5B,uCAAY,WAAW,KAAE,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAG;YACtD,CAAC,EACD,EAAE,CACH,CAAC;YAEF,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,CAAC;SACzD;aAAM;YACL,MAAM,WAAW,GAAG;gBAClB,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,EAAE;aACV,CAAC;YAEF,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,mBAAM,WAAW,GAAI,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxE,KAAK,CAAC,KAAK,CACT,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,YAAY,CAAC,EAClC,aAAa,CAAC,MAAM,EACpB,OAAO,EACP,aAAa,CAAC,KAAK,CACpB,CAAC;aACH;YAED,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,mBAC9B,WAAW,GAChB,IAAI,CAAC,WAAW,CACjB,CAAC;gBACF,KAAK,CAAC,KAAK,CACT,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,eAAe,CAAC,EACrC,eAAe,CAAC,MAAM,EACtB,OAAO,EACP,eAAe,CAAC,KAAK,CACtB,CAAC;aACH;YAED,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;YAE9C,MAAM,CAAC,eAAe,EAAE,SAAS,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS;gBACtD,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;gBACZ,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,CAAC,iBAAiB,EAAE,WAAW,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW;gBAC5D,CAAC,CAAC,IAAI,CAAC,SAAS;oBACd,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;oBACZ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;gBACd,CAAC,CAAC,EAAE,CAAC;YAEP,MAAM,oBAAoB,GAAG,SAAS,CAAC,MAAM,CAC3C,CACE,WAAgC,EAChC,YAAoB,EACpB,KAAa,EACb,EAAE;gBACF,IAAI,KAAK,GAAG,CAAC,EAAE;oBACb,uCACK,WAAW,KACd,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAChD;iBACH;gBACD,OAAO,WAAW,CAAC;YACrB,CAAC,EACD,EAAE,CACH,CAAC;YAEF,uCACK,CAAC,eAAe;gBACjB,CAAC,CAAC;oBACE,SAAS,EAAE,oBAAoB;oBAC/B,mBAAmB,EAAE,MAAM,CAAC,eAAe,CAAC;iBAC7C;gBACH,CAAC,CAAC,EAAE,CAAC,GACJ,CAAC,iBAAiB;gBACnB,CAAC,CAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,CAAC,iBAAiB,CAAC,EAAE;gBACnE,CAAC,CAAC,EAAE,CAAC,EACP;SACH;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,oBAAoB,CACxB,OAGI,EAAE;QAKN,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAE7B,MAAM,WAAW,GACf,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW;YAClC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE;YACxC,CAAC,CAAC,IAAI,CAAC;QAEX,IAAI,WAAW,CAAC,SAAS,EAAE;YACzB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;SAChD;QAED,IAAI,WAAW,CAAC,WAAW,EAAE;YAC3B,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;SACpD;QAED,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,GAChD,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAqD,CAAC;QAE3E,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9D,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW;YACzC,CAAC,CAAC,WAAW,CAAC,SAAS;gBACrB,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,OAAO;YACX,CAAC,CAAC,SAAS,CAAC;QAEd,uCACK,CAAC,WAAW,CAAC,SAAS;YACvB,CAAC,CAAC;gBACE,SAAS;aACV;YACH,CAAC,CAAC,EAAE,CAAC,GACJ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACnD;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CACrB,WAAwB,EACxB,GAAY;QAEZ,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;QAElC,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,OAAO,CAAM,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAChD,IAAI,OAAuB,CAAC;YAC5B,IAAI,GAAG,EAAE;gBACP,OAAO,GAAG,UAAU,CAClB,GAAG,EAAE,CACH,QAAQ;gBACN,4BAA4B;gBAC5B,YAAY,IAAI,CAAC,IAAI,qEAAqE,GAAG,UAAU,KAAK,GAAG,CAEhH,EACH,GAAG,CACJ,CAAC;aACH;YAED,SAAS,WAAW,CAAC,IAAS;gBAC5B,eAAe,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC5B,CAAC;YAED,SAAS,QAAQ,CAAC,IAAS;gBACzB,eAAe,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,cAAc,GAAG,aAAa,KAAK,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,UAAU,KAAK,EAAE,CAAC;YAEtC,WAAW,CAAC,EAAE,CAAC,cAAqB,EAAE,WAAW,CAAC,CAAC;YACnD,WAAW,CAAC,EAAE,CAAC,WAAkB,EAAE,QAAQ,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAEnC,MAAM,eAAe,GAAG,GAAG,EAAE;gBAC3B,aAAa,CAAC,OAAO,CAAC,CAAC;gBACvB,WAAW,CAAC,cAAc,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;gBACxD,WAAW,CAAC,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;gBAClD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YACjD,CAAC,CAAC;YAEF,kHAAkH;YAClH,kHAAkH;YAClH,8GAA8G;YAC9G,uDAAuD;YACvD,MAAM,WAAW,CAAC,cAAc,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAGnE,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,CAAC;YAC7B,IAAI,QAAQ,EAAE;gBACZ,IAAI,MAAM,IAAI,CAAC,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE;oBAC/B,QAAQ,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;iBACpC;qBAAM;oBACL,WAAW,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;iBACtD;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAAC,SAAiB,EAAE,KAAc;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CACnB,KAAa,EACb,OAAkC,EAAE;QAEpC,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC;QAEtB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,IAAI,GAAG,CAAC,EAAE;YACZ,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;SACxE;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,KAAK,CAAC,QAAwB,QAAQ;QAC1C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,GAAW;QAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAEvC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,OAAO,KAAK,KAAK,IAAI,CAAC;IACxB,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,IAAY;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,MAAmB,EAAE,UAAuB;;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAE9B,MAAM,WAAW,GACf,IAAI,CAAC,IAAI,CAAC,SAAS;YACnB,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QAExD,IAAI,WAAW,EAAE;YACf,MAAM,IAAI,KAAK,CACb,mBAAmB,IAAI,CAAC,IAAI,sBAAsB,IAAI,CAAC,IAAI,CAAC,SAAS,QAAQ,CAC9E,CAAC;SACH;QAED,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,KAAK,CAAA,EAAE;YACnE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;SACxE;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IAC9E,CAAC;IAES,cAAc,CAAC,KAAe,EAAE,GAAU;QAClD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;QAExC,IAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,EAAE;YACd,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;gBAC7B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aACvE;SACF;QAED,MAAM,MAAM,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;YAC3C,YAAY,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO;SAC3B,CAAC;QAEF,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;CACF;AAED,SAAS,SAAS,CAAC,UAAoB;IACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAExD,IAAI,MAAM,KAAK,WAAW,IAAI,CAAC,CAAC,MAAM,YAAY,KAAK,CAAC,EAAE;QACxD,OAAO,EAAE,CAAC;KACX;SAAM;QACL,OAAO,MAAM,CAAC;KACf;AACH,CAAC;AAED,SAAS,cAAc,CAAC,MAAW;IACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,IAAI,KAAK,KAAK,WAAW,EAAE;QACzB,OAAO,KAAK,CAAC;KACd;SAAM;QACL,MAAM,CAAC,yBAAyB,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC;KACnD;AACH,CAAC"}
|
@@ -5,6 +5,14 @@ import { RedisConnection } from './redis-connection';
|
|
5
5
|
import { Job } from './job';
|
6
6
|
import { KeysMap } from './queue-keys';
|
7
7
|
import { Scripts } from './scripts';
|
8
|
+
/**
|
9
|
+
* @class QueueBase
|
10
|
+
* @extends EventEmitter
|
11
|
+
*
|
12
|
+
* @description Base class for all classes that need to interact with queues.
|
13
|
+
* This class is normally not used directly, but extended by the other classes.
|
14
|
+
*
|
15
|
+
*/
|
8
16
|
export declare class QueueBase extends EventEmitter {
|
9
17
|
readonly name: string;
|
10
18
|
opts: QueueBaseOptions;
|
@@ -13,18 +21,46 @@ export declare class QueueBase extends EventEmitter {
|
|
13
21
|
closing: Promise<void>;
|
14
22
|
protected scripts: Scripts;
|
15
23
|
protected connection: RedisConnection;
|
24
|
+
/**
|
25
|
+
*
|
26
|
+
* @param name - The name of the queue.
|
27
|
+
* @param opts - Options for the queue.
|
28
|
+
* @param Connection - An optional "Connection" class used to instantiate a Connection. This is useful for
|
29
|
+
* testing with mockups and/or extending the Connection class and passing an alternate implementation.
|
30
|
+
*/
|
16
31
|
constructor(name: string, opts?: QueueBaseOptions, Connection?: typeof RedisConnection);
|
32
|
+
/**
|
33
|
+
* Returns a promise that resolves to a redis client. Normally used only by subclasses.
|
34
|
+
*/
|
17
35
|
get client(): Promise<RedisClient>;
|
36
|
+
/**
|
37
|
+
* Returns the version of the Redis instance the client is connected to,
|
38
|
+
*/
|
18
39
|
get redisVersion(): string;
|
19
40
|
/**
|
20
41
|
* Helper to easily extend Job class calls.
|
21
42
|
*/
|
22
43
|
protected get Job(): typeof Job;
|
44
|
+
/**
|
45
|
+
* Emits an event. Normally used by subclasses to emit events.
|
46
|
+
*
|
47
|
+
* @param event - The emitted event.
|
48
|
+
* @param args -
|
49
|
+
* @returns
|
50
|
+
*/
|
23
51
|
emit(event: string | symbol, ...args: any[]): boolean;
|
24
52
|
waitUntilReady(): Promise<RedisClient>;
|
25
53
|
protected base64Name(): string;
|
26
54
|
protected clientName(suffix?: string): string;
|
55
|
+
/**
|
56
|
+
*
|
57
|
+
* @returns Closes the connection and returns a promise that resolves when the connection is closed.
|
58
|
+
*/
|
27
59
|
close(): Promise<void>;
|
60
|
+
/**
|
61
|
+
*
|
62
|
+
* Force disconnects a connection.
|
63
|
+
*/
|
28
64
|
disconnect(): Promise<void>;
|
29
65
|
protected checkConnectionError<T>(fn: () => Promise<T>, delayInMs?: number): Promise<T>;
|
30
66
|
}
|
@@ -4,7 +4,22 @@ import { RedisConnection } from './redis-connection';
|
|
4
4
|
import { Job } from './job';
|
5
5
|
import { QueueKeys } from './queue-keys';
|
6
6
|
import { Scripts } from './scripts';
|
7
|
+
/**
|
8
|
+
* @class QueueBase
|
9
|
+
* @extends EventEmitter
|
10
|
+
*
|
11
|
+
* @description Base class for all classes that need to interact with queues.
|
12
|
+
* This class is normally not used directly, but extended by the other classes.
|
13
|
+
*
|
14
|
+
*/
|
7
15
|
export class QueueBase extends EventEmitter {
|
16
|
+
/**
|
17
|
+
*
|
18
|
+
* @param name - The name of the queue.
|
19
|
+
* @param opts - Options for the queue.
|
20
|
+
* @param Connection - An optional "Connection" class used to instantiate a Connection. This is useful for
|
21
|
+
* testing with mockups and/or extending the Connection class and passing an alternate implementation.
|
22
|
+
*/
|
8
23
|
constructor(name, opts = {}, Connection = RedisConnection) {
|
9
24
|
super();
|
10
25
|
this.name = name;
|
@@ -29,9 +44,15 @@ export class QueueBase extends EventEmitter {
|
|
29
44
|
this.toKey = (type) => queueKeys.toKey(name, type);
|
30
45
|
this.scripts = new Scripts(this);
|
31
46
|
}
|
47
|
+
/**
|
48
|
+
* Returns a promise that resolves to a redis client. Normally used only by subclasses.
|
49
|
+
*/
|
32
50
|
get client() {
|
33
51
|
return this.connection.client;
|
34
52
|
}
|
53
|
+
/**
|
54
|
+
* Returns the version of the Redis instance the client is connected to,
|
55
|
+
*/
|
35
56
|
get redisVersion() {
|
36
57
|
return this.connection.redisVersion;
|
37
58
|
}
|
@@ -41,6 +62,13 @@ export class QueueBase extends EventEmitter {
|
|
41
62
|
get Job() {
|
42
63
|
return Job;
|
43
64
|
}
|
65
|
+
/**
|
66
|
+
* Emits an event. Normally used by subclasses to emit events.
|
67
|
+
*
|
68
|
+
* @param event - The emitted event.
|
69
|
+
* @param args -
|
70
|
+
* @returns
|
71
|
+
*/
|
44
72
|
emit(event, ...args) {
|
45
73
|
try {
|
46
74
|
return super.emit(event, ...args);
|
@@ -65,12 +93,20 @@ export class QueueBase extends EventEmitter {
|
|
65
93
|
const queueNameBase64 = this.base64Name();
|
66
94
|
return `${this.opts.prefix}:${queueNameBase64}${suffix}`;
|
67
95
|
}
|
96
|
+
/**
|
97
|
+
*
|
98
|
+
* @returns Closes the connection and returns a promise that resolves when the connection is closed.
|
99
|
+
*/
|
68
100
|
close() {
|
69
101
|
if (!this.closing) {
|
70
102
|
this.closing = this.connection.close();
|
71
103
|
}
|
72
104
|
return this.closing;
|
73
105
|
}
|
106
|
+
/**
|
107
|
+
*
|
108
|
+
* Force disconnects a connection.
|
109
|
+
*/
|
74
110
|
disconnect() {
|
75
111
|
return this.connection.disconnect();
|
76
112
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"queue-base.js","sourceRoot":"","sources":["../../../src/classes/queue-base.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"queue-base.js","sourceRoot":"","sources":["../../../src/classes/queue-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAW,SAAS,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;;;;;;GAOG;AACH,MAAM,OAAO,SAAU,SAAQ,YAAY;IAQzC;;;;;;OAMG;IACH,YACkB,IAAY,EACrB,OAAyB,EAAE,EAClC,aAAqC,eAAe;QAEpD,KAAK,EAAE,CAAC;QAJQ,SAAI,GAAJ,IAAI,CAAQ;QACrB,SAAI,GAAJ,IAAI,CAAuB;QAKlC,IAAI,CAAC,IAAI,mBACP,MAAM,EAAE,MAAM,IACX,IAAI,CACR,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,OAAO,CAAC,IAAI,CACV;gBACE,sGAAsG;gBACtG,oGAAoG;gBACpG,sCAAsC;aACvC,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAC;SACH;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAC9B,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,kBAAkB,CACxB,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aAC5B;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,IAAc,GAAG;QACf,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;OAMG;IACH,IAAI,CAAC,KAAsB,EAAE,GAAG,IAAW;QACzC,IAAI;YACF,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;SACnC;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI;gBACF,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;aACjC;YAAC,OAAO,GAAG,EAAE;gBACZ,0DAA0D;gBAC1D,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;aACpB;SACF;IACH,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAES,UAAU;QAClB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAES,UAAU,CAAC,MAAM,GAAG,EAAE;QAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1C,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,eAAe,GAAG,MAAM,EAAE,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;SACxC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;IACtC,CAAC;IAES,KAAK,CAAC,oBAAoB,CAClC,EAAoB,EACpB,SAAS,GAAG,YAAY;QAExB,IAAI;YACF,OAAO,MAAM,EAAE,EAAE,CAAC;SACnB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,oBAAoB,CAAC,KAAc,CAAC,EAAE;gBACxC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAS,KAAK,CAAC,CAAC;aAClC;YAED,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,SAAS,EAAE;gBAC9B,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;aACxB;iBAAM;gBACL,OAAO;aACR;SACF;IACH,CAAC;CACF"}
|
@@ -157,7 +157,16 @@ export declare class QueueEvents extends QueueBase {
|
|
157
157
|
off<U extends keyof QueueEventsListener>(eventName: U, listener: QueueEventsListener[U]): this;
|
158
158
|
on<U extends keyof QueueEventsListener>(event: U, listener: QueueEventsListener[U]): this;
|
159
159
|
once<U extends keyof QueueEventsListener>(event: U, listener: QueueEventsListener[U]): this;
|
160
|
+
/**
|
161
|
+
* Manually starts running the event consumming loop. This shall be used if you do not
|
162
|
+
* use the default "autorun" option on the constructor.
|
163
|
+
*/
|
160
164
|
run(): Promise<void>;
|
161
165
|
private consumeEvents;
|
166
|
+
/**
|
167
|
+
* Stops consuming events and close the underlying Redis connection if necessary.
|
168
|
+
*
|
169
|
+
* @returns
|
170
|
+
*/
|
162
171
|
close(): Promise<void>;
|
163
172
|
}
|
@@ -37,6 +37,10 @@ export class QueueEvents extends QueueBase {
|
|
37
37
|
super.once(event, listener);
|
38
38
|
return this;
|
39
39
|
}
|
40
|
+
/**
|
41
|
+
* Manually starts running the event consumming loop. This shall be used if you do not
|
42
|
+
* use the default "autorun" option on the constructor.
|
43
|
+
*/
|
40
44
|
async run() {
|
41
45
|
if (!this.running) {
|
42
46
|
try {
|
@@ -97,6 +101,11 @@ export class QueueEvents extends QueueBase {
|
|
97
101
|
}
|
98
102
|
}
|
99
103
|
}
|
104
|
+
/**
|
105
|
+
* Stops consuming events and close the underlying Redis connection if necessary.
|
106
|
+
*
|
107
|
+
* @returns
|
108
|
+
*/
|
100
109
|
close() {
|
101
110
|
if (!this.closing) {
|
102
111
|
this.closing = this.disconnect();
|