velocious 1.0.589 → 1.0.591
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/README.md +24 -0
- package/build/background-jobs/job-runner.js +20 -1
- package/build/background-jobs/job.js +15 -0
- package/build/background-jobs/main.js +39 -0
- package/build/background-jobs/pooled-runner-broker-identity.js +76 -0
- package/build/background-jobs/pooled-runner-child.js +17 -7
- package/build/background-jobs/reschedule-signal.js +14 -0
- package/build/background-jobs/status-reporter.js +9 -6
- package/build/background-jobs/store.js +80 -14
- package/build/background-jobs/types.js +2 -1
- package/build/background-jobs/worker.js +38 -8
- package/build/database/pool/base.js +18 -1
- package/build/environment-handlers/base.js +8 -0
- package/build/environment-handlers/node.js +12 -0
- package/build/src/background-jobs/job-runner.d.ts +2 -2
- package/build/src/background-jobs/job-runner.d.ts.map +1 -1
- package/build/src/background-jobs/job-runner.js +19 -2
- package/build/src/background-jobs/job.d.ts +7 -0
- package/build/src/background-jobs/job.d.ts.map +1 -1
- package/build/src/background-jobs/job.js +14 -1
- package/build/src/background-jobs/main.d.ts +11 -0
- package/build/src/background-jobs/main.d.ts.map +1 -1
- package/build/src/background-jobs/main.js +38 -1
- package/build/src/background-jobs/pooled-runner-broker-identity.d.ts +44 -0
- package/build/src/background-jobs/pooled-runner-broker-identity.d.ts.map +1 -0
- package/build/src/background-jobs/pooled-runner-broker-identity.js +76 -0
- package/build/src/background-jobs/pooled-runner-child.js +18 -8
- package/build/src/background-jobs/reschedule-signal.d.ts +10 -0
- package/build/src/background-jobs/reschedule-signal.d.ts.map +1 -0
- package/build/src/background-jobs/reschedule-signal.js +14 -0
- package/build/src/background-jobs/status-reporter.d.ts +10 -6
- package/build/src/background-jobs/status-reporter.d.ts.map +1 -1
- package/build/src/background-jobs/status-reporter.js +10 -7
- package/build/src/background-jobs/store.d.ts +30 -0
- package/build/src/background-jobs/store.d.ts.map +1 -1
- package/build/src/background-jobs/store.js +75 -14
- package/build/src/background-jobs/types.d.ts +11 -2
- package/build/src/background-jobs/types.d.ts.map +1 -1
- package/build/src/background-jobs/types.js +3 -2
- package/build/src/background-jobs/worker.d.ts +16 -6
- package/build/src/background-jobs/worker.d.ts.map +1 -1
- package/build/src/background-jobs/worker.js +37 -9
- package/build/src/database/pool/base.d.ts +6 -0
- package/build/src/database/pool/base.d.ts.map +1 -1
- package/build/src/database/pool/base.js +18 -2
- package/build/src/environment-handlers/base.d.ts +12 -0
- package/build/src/environment-handlers/base.d.ts.map +1 -1
- package/build/src/environment-handlers/base.js +8 -1
- package/build/src/environment-handlers/node.d.ts +11 -0
- package/build/src/environment-handlers/node.d.ts.map +1 -1
- package/build/src/environment-handlers/node.js +13 -1
- package/build/src/testing/shared-transaction-broker-client.d.ts +53 -0
- package/build/src/testing/shared-transaction-broker-client.d.ts.map +1 -0
- package/build/src/testing/shared-transaction-broker-client.js +105 -0
- package/build/src/testing/shared-transaction-broker.d.ts +153 -0
- package/build/src/testing/shared-transaction-broker.d.ts.map +1 -0
- package/build/src/testing/shared-transaction-broker.js +414 -0
- package/build/src/testing/shared-transaction-codec.d.ts +21 -0
- package/build/src/testing/shared-transaction-codec.d.ts.map +1 -0
- package/build/src/testing/shared-transaction-codec.js +114 -0
- package/build/src/testing/shared-transaction-connection-coordinator.d.ts +23 -0
- package/build/src/testing/shared-transaction-connection-coordinator.d.ts.map +1 -0
- package/build/src/testing/shared-transaction-connection-coordinator.js +36 -0
- package/build/src/testing/shared-transaction-proxy-driver.d.ts +42 -0
- package/build/src/testing/shared-transaction-proxy-driver.d.ts.map +1 -0
- package/build/src/testing/shared-transaction-proxy-driver.js +195 -0
- package/build/src/testing/test-runner.d.ts +20 -0
- package/build/src/testing/test-runner.d.ts.map +1 -1
- package/build/src/testing/test-runner.js +64 -3
- package/build/testing/shared-transaction-broker-client.js +107 -0
- package/build/testing/shared-transaction-broker.js +401 -0
- package/build/testing/shared-transaction-codec.js +110 -0
- package/build/testing/shared-transaction-connection-coordinator.js +38 -0
- package/build/testing/shared-transaction-proxy-driver.js +205 -0
- package/build/testing/test-runner.js +65 -2
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -2
- package/src/background-jobs/job-runner.js +20 -1
- package/src/background-jobs/job.js +15 -0
- package/src/background-jobs/main.js +39 -0
- package/src/background-jobs/pooled-runner-broker-identity.js +76 -0
- package/src/background-jobs/pooled-runner-child.js +17 -7
- package/src/background-jobs/reschedule-signal.js +14 -0
- package/src/background-jobs/status-reporter.js +9 -6
- package/src/background-jobs/store.js +80 -14
- package/src/background-jobs/types.js +2 -1
- package/src/background-jobs/worker.js +38 -8
- package/src/database/pool/base.js +18 -1
- package/src/environment-handlers/base.js +8 -0
- package/src/environment-handlers/node.js +12 -0
- package/src/testing/shared-transaction-broker-client.js +107 -0
- package/src/testing/shared-transaction-broker.js +401 -0
- package/src/testing/shared-transaction-codec.js +110 -0
- package/src/testing/shared-transaction-connection-coordinator.js +38 -0
- package/src/testing/shared-transaction-proxy-driver.js +205 -0
- package/src/testing/test-runner.js +65 -2
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export default class PooledRunnerBrokerIdentity {
|
|
2
|
+
closeConnections: () => Promise<void>;
|
|
3
|
+
/** @type {string | undefined} */
|
|
4
|
+
activeIdentity: string | undefined;
|
|
5
|
+
/** @type {{identity: string, promise: Promise<void>} | undefined} */
|
|
6
|
+
pending: {
|
|
7
|
+
identity: string;
|
|
8
|
+
promise: Promise<void>;
|
|
9
|
+
} | undefined;
|
|
10
|
+
activeUsers: number;
|
|
11
|
+
/**
|
|
12
|
+
* Creates a pooled runner identity coordinator.
|
|
13
|
+
* @param {{closeConnections: () => Promise<void>}} args - Connection cleanup hook.
|
|
14
|
+
*/
|
|
15
|
+
constructor({ closeConnections }: {
|
|
16
|
+
closeConnections: () => Promise<void>;
|
|
17
|
+
});
|
|
18
|
+
/**
|
|
19
|
+
* Gets the current prepared identity.
|
|
20
|
+
* @returns {string | undefined} - Current prepared identity.
|
|
21
|
+
*/
|
|
22
|
+
current(): string | undefined;
|
|
23
|
+
/**
|
|
24
|
+
* Prepares one identity, sharing an in-flight same-identity rotation.
|
|
25
|
+
* @param {import("../testing/shared-transaction-proxy-driver.js").SharedTransactionBrokerJobConfig} config - Dispatch configuration.
|
|
26
|
+
* @returns {Promise<void>} - Resolves after stale connections close.
|
|
27
|
+
*/
|
|
28
|
+
prepare(config: import("../testing/shared-transaction-proxy-driver.js").SharedTransactionBrokerJobConfig): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Runs work while preventing a different identity from replacing its connections.
|
|
31
|
+
* @template T
|
|
32
|
+
* @param {import("../testing/shared-transaction-proxy-driver.js").SharedTransactionBrokerJobConfig} config - Dispatch configuration.
|
|
33
|
+
* @param {() => Promise<T>} callback - Job callback.
|
|
34
|
+
* @returns {Promise<T>} - Job result.
|
|
35
|
+
*/
|
|
36
|
+
run<T>(config: import("../testing/shared-transaction-proxy-driver.js").SharedTransactionBrokerJobConfig, callback: () => Promise<T>): Promise<T>;
|
|
37
|
+
/**
|
|
38
|
+
* Rotates retained connection state to an identity.
|
|
39
|
+
* @param {string} identity - Target identity.
|
|
40
|
+
* @returns {Promise<void>} - Resolves after rotation.
|
|
41
|
+
*/
|
|
42
|
+
rotate(identity: string): Promise<void>;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=pooled-runner-broker-identity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pooled-runner-broker-identity.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/pooled-runner-broker-identity.js"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,0BAA0B;IAMtC,gBAAgB,QAHa,OAAO,CAAC,IAAI,CAAC;IAI/C,iCAAiC;IAC5B,cAAc,EADR,MAAM,GAAG,SAAS;IAE7B,qEAAqE;IAChE,OAAO,EADD;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,GAAG,SAAS;IAE5D,WAAW;IAVlB;;;OAGG;IACH,YAAY,EAAC,gBAAgB,EAAC,EAFnB;QAAC,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAEnB,EAO7B;IAED;;;OAGG;IACH,OAAO,IAFM,MAAM,GAAG,SAAS,CAES;IAExC;;;;OAIG;IACG,OAAO,CAAC,MAAM,EAHT,OAAO,+CAA+C,EAAE,gCAG/C,GAFP,OAAO,CAAC,IAAI,CAAC,CAsBzB;IAED;;;;;;OAMG;IACG,GAAG,CALI,CAAC,EAKJ,MAAM,EAJL,OAAO,+CAA+C,EAAE,gCAInD,EAAE,QAAQ,EAHf,MAAM,OAAO,CAAC,CAAC,CAGA,GAFb,OAAO,CAAC,CAAC,CAAC,CAUtB;IAED;;;;OAIG;IACG,MAAM,CAAC,QAAQ,EAHV,MAGU,GAFR,OAAO,CAAC,IAAI,CAAC,CAKzB;CACF"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
export default class PooledRunnerBrokerIdentity {
|
|
3
|
+
/**
|
|
4
|
+
* Creates a pooled runner identity coordinator.
|
|
5
|
+
* @param {{closeConnections: () => Promise<void>}} args - Connection cleanup hook.
|
|
6
|
+
*/
|
|
7
|
+
constructor({ closeConnections }) {
|
|
8
|
+
this.closeConnections = closeConnections;
|
|
9
|
+
/** @type {string | undefined} */
|
|
10
|
+
this.activeIdentity = undefined;
|
|
11
|
+
/** @type {{identity: string, promise: Promise<void>} | undefined} */
|
|
12
|
+
this.pending = undefined;
|
|
13
|
+
this.activeUsers = 0;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Gets the current prepared identity.
|
|
17
|
+
* @returns {string | undefined} - Current prepared identity.
|
|
18
|
+
*/
|
|
19
|
+
current() { return this.activeIdentity; }
|
|
20
|
+
/**
|
|
21
|
+
* Prepares one identity, sharing an in-flight same-identity rotation.
|
|
22
|
+
* @param {import("../testing/shared-transaction-proxy-driver.js").SharedTransactionBrokerJobConfig} config - Dispatch configuration.
|
|
23
|
+
* @returns {Promise<void>} - Resolves after stale connections close.
|
|
24
|
+
*/
|
|
25
|
+
async prepare(config) {
|
|
26
|
+
const identity = JSON.stringify(config);
|
|
27
|
+
if (this.pending) {
|
|
28
|
+
if (this.pending.identity !== identity)
|
|
29
|
+
throw new Error("Pooled runner cannot mix shared transaction broker capabilities concurrently");
|
|
30
|
+
return await this.pending.promise;
|
|
31
|
+
}
|
|
32
|
+
if (this.activeIdentity === identity)
|
|
33
|
+
return;
|
|
34
|
+
if (this.activeUsers > 0)
|
|
35
|
+
throw new Error("Pooled runner cannot mix shared transaction broker capabilities concurrently");
|
|
36
|
+
if (this.activeIdentity === undefined) {
|
|
37
|
+
this.activeIdentity = identity;
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
const promise = this.rotate(identity);
|
|
41
|
+
this.pending = { identity, promise };
|
|
42
|
+
try {
|
|
43
|
+
await promise;
|
|
44
|
+
}
|
|
45
|
+
finally {
|
|
46
|
+
this.pending = undefined;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Runs work while preventing a different identity from replacing its connections.
|
|
51
|
+
* @template T
|
|
52
|
+
* @param {import("../testing/shared-transaction-proxy-driver.js").SharedTransactionBrokerJobConfig} config - Dispatch configuration.
|
|
53
|
+
* @param {() => Promise<T>} callback - Job callback.
|
|
54
|
+
* @returns {Promise<T>} - Job result.
|
|
55
|
+
*/
|
|
56
|
+
async run(config, callback) {
|
|
57
|
+
await this.prepare(config);
|
|
58
|
+
this.activeUsers++;
|
|
59
|
+
try {
|
|
60
|
+
return await callback();
|
|
61
|
+
}
|
|
62
|
+
finally {
|
|
63
|
+
this.activeUsers--;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Rotates retained connection state to an identity.
|
|
68
|
+
* @param {string} identity - Target identity.
|
|
69
|
+
* @returns {Promise<void>} - Resolves after rotation.
|
|
70
|
+
*/
|
|
71
|
+
async rotate(identity) {
|
|
72
|
+
await this.closeConnections();
|
|
73
|
+
this.activeIdentity = identity;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9vbGVkLXJ1bm5lci1icm9rZXItaWRlbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFja2dyb3VuZC1qb2JzL3Bvb2xlZC1ydW5uZXItYnJva2VyLWlkZW50aXR5LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixNQUFNLENBQUMsT0FBTyxPQUFPLDBCQUEwQjtJQUM3Qzs7O09BR0c7SUFDSCxZQUFZLEVBQUMsZ0JBQWdCLEVBQUM7UUFDNUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFBO1FBQ3hDLGlDQUFpQztRQUNqQyxJQUFJLENBQUMsY0FBYyxHQUFHLFNBQVMsQ0FBQTtRQUMvQixxRUFBcUU7UUFDckUsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUE7UUFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUE7SUFDdEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUEsQ0FBQyxDQUFDO0lBRXhDOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU07UUFDbEIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUN2QyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxLQUFLLFFBQVE7Z0JBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw4RUFBOEUsQ0FBQyxDQUFBO1lBQ3ZJLE9BQU8sTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQTtRQUNuQyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLFFBQVE7WUFBRSxPQUFNO1FBQzVDLElBQUksSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw4RUFBOEUsQ0FBQyxDQUFBO1FBQ3pILElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQTtZQUM5QixPQUFNO1FBQ1IsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDckMsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUMsQ0FBQTtRQUNsQyxJQUFJLENBQUM7WUFDSCxNQUFNLE9BQU8sQ0FBQTtRQUNmLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFBO1FBQzFCLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsUUFBUTtRQUN4QixNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDMUIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFBO1FBQ2xCLElBQUksQ0FBQztZQUNILE9BQU8sTUFBTSxRQUFRLEVBQUUsQ0FBQTtRQUN6QixDQUFDO2dCQUFTLENBQUM7WUFDVCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDcEIsQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRO1FBQ25CLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUE7UUFDN0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxRQUFRLENBQUE7SUFDaEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBvb2xlZFJ1bm5lckJyb2tlcklkZW50aXR5IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBwb29sZWQgcnVubmVyIGlkZW50aXR5IGNvb3JkaW5hdG9yLlxuICAgKiBAcGFyYW0ge3tjbG9zZUNvbm5lY3Rpb25zOiAoKSA9PiBQcm9taXNlPHZvaWQ+fX0gYXJncyAtIENvbm5lY3Rpb24gY2xlYW51cCBob29rLlxuICAgKi9cbiAgY29uc3RydWN0b3Ioe2Nsb3NlQ29ubmVjdGlvbnN9KSB7XG4gICAgdGhpcy5jbG9zZUNvbm5lY3Rpb25zID0gY2xvc2VDb25uZWN0aW9uc1xuICAgIC8qKiBAdHlwZSB7c3RyaW5nIHwgdW5kZWZpbmVkfSAqL1xuICAgIHRoaXMuYWN0aXZlSWRlbnRpdHkgPSB1bmRlZmluZWRcbiAgICAvKiogQHR5cGUge3tpZGVudGl0eTogc3RyaW5nLCBwcm9taXNlOiBQcm9taXNlPHZvaWQ+fSB8IHVuZGVmaW5lZH0gKi9cbiAgICB0aGlzLnBlbmRpbmcgPSB1bmRlZmluZWRcbiAgICB0aGlzLmFjdGl2ZVVzZXJzID0gMFxuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgcHJlcGFyZWQgaWRlbnRpdHkuXG4gICAqIEByZXR1cm5zIHtzdHJpbmcgfCB1bmRlZmluZWR9IC0gQ3VycmVudCBwcmVwYXJlZCBpZGVudGl0eS5cbiAgICovXG4gIGN1cnJlbnQoKSB7IHJldHVybiB0aGlzLmFjdGl2ZUlkZW50aXR5IH1cblxuICAvKipcbiAgICogUHJlcGFyZXMgb25lIGlkZW50aXR5LCBzaGFyaW5nIGFuIGluLWZsaWdodCBzYW1lLWlkZW50aXR5IHJvdGF0aW9uLlxuICAgKiBAcGFyYW0ge2ltcG9ydChcIi4uL3Rlc3Rpbmcvc2hhcmVkLXRyYW5zYWN0aW9uLXByb3h5LWRyaXZlci5qc1wiKS5TaGFyZWRUcmFuc2FjdGlvbkJyb2tlckpvYkNvbmZpZ30gY29uZmlnIC0gRGlzcGF0Y2ggY29uZmlndXJhdGlvbi5cbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IC0gUmVzb2x2ZXMgYWZ0ZXIgc3RhbGUgY29ubmVjdGlvbnMgY2xvc2UuXG4gICAqL1xuICBhc3luYyBwcmVwYXJlKGNvbmZpZykge1xuICAgIGNvbnN0IGlkZW50aXR5ID0gSlNPTi5zdHJpbmdpZnkoY29uZmlnKVxuICAgIGlmICh0aGlzLnBlbmRpbmcpIHtcbiAgICAgIGlmICh0aGlzLnBlbmRpbmcuaWRlbnRpdHkgIT09IGlkZW50aXR5KSB0aHJvdyBuZXcgRXJyb3IoXCJQb29sZWQgcnVubmVyIGNhbm5vdCBtaXggc2hhcmVkIHRyYW5zYWN0aW9uIGJyb2tlciBjYXBhYmlsaXRpZXMgY29uY3VycmVudGx5XCIpXG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5wZW5kaW5nLnByb21pc2VcbiAgICB9XG4gICAgaWYgKHRoaXMuYWN0aXZlSWRlbnRpdHkgPT09IGlkZW50aXR5KSByZXR1cm5cbiAgICBpZiAodGhpcy5hY3RpdmVVc2VycyA+IDApIHRocm93IG5ldyBFcnJvcihcIlBvb2xlZCBydW5uZXIgY2Fubm90IG1peCBzaGFyZWQgdHJhbnNhY3Rpb24gYnJva2VyIGNhcGFiaWxpdGllcyBjb25jdXJyZW50bHlcIilcbiAgICBpZiAodGhpcy5hY3RpdmVJZGVudGl0eSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmFjdGl2ZUlkZW50aXR5ID0gaWRlbnRpdHlcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IHByb21pc2UgPSB0aGlzLnJvdGF0ZShpZGVudGl0eSlcbiAgICB0aGlzLnBlbmRpbmcgPSB7aWRlbnRpdHksIHByb21pc2V9XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHByb21pc2VcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5wZW5kaW5nID0gdW5kZWZpbmVkXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bnMgd29yayB3aGlsZSBwcmV2ZW50aW5nIGEgZGlmZmVyZW50IGlkZW50aXR5IGZyb20gcmVwbGFjaW5nIGl0cyBjb25uZWN0aW9ucy5cbiAgICogQHRlbXBsYXRlIFRcbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuLi90ZXN0aW5nL3NoYXJlZC10cmFuc2FjdGlvbi1wcm94eS1kcml2ZXIuanNcIikuU2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJKb2JDb25maWd9IGNvbmZpZyAtIERpc3BhdGNoIGNvbmZpZ3VyYXRpb24uXG4gICAqIEBwYXJhbSB7KCkgPT4gUHJvbWlzZTxUPn0gY2FsbGJhY2sgLSBKb2IgY2FsbGJhY2suXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPFQ+fSAtIEpvYiByZXN1bHQuXG4gICAqL1xuICBhc3luYyBydW4oY29uZmlnLCBjYWxsYmFjaykge1xuICAgIGF3YWl0IHRoaXMucHJlcGFyZShjb25maWcpXG4gICAgdGhpcy5hY3RpdmVVc2VycysrXG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBjYWxsYmFjaygpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuYWN0aXZlVXNlcnMtLVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSb3RhdGVzIHJldGFpbmVkIGNvbm5lY3Rpb24gc3RhdGUgdG8gYW4gaWRlbnRpdHkuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpZGVudGl0eSAtIFRhcmdldCBpZGVudGl0eS5cbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IC0gUmVzb2x2ZXMgYWZ0ZXIgcm90YXRpb24uXG4gICAqL1xuICBhc3luYyByb3RhdGUoaWRlbnRpdHkpIHtcbiAgICBhd2FpdCB0aGlzLmNsb3NlQ29ubmVjdGlvbnMoKVxuICAgIHRoaXMuYWN0aXZlSWRlbnRpdHkgPSBpZGVudGl0eVxuICB9XG59XG4iXX0=
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
import runJobPayload, { BackgroundJobPerformedFailure } from "./job-runner.js";
|
|
3
3
|
import { closeRunnerConnections, currentConfigurationOrNull } from "./runner-graceful-shutdown.js";
|
|
4
4
|
import setRunnerProcessTitle from "./runner-process-title.js";
|
|
5
|
+
import PooledRunnerBrokerIdentity from "./pooled-runner-broker-identity.js";
|
|
6
|
+
import { runWithSharedTransactionBrokerConfig } from "../testing/shared-transaction-proxy-driver.js";
|
|
5
7
|
const BASE_PROCESS_TITLE = "velocious background-jobs-runner";
|
|
6
8
|
setRunnerProcessTitle();
|
|
7
9
|
let shuttingDown = false;
|
|
@@ -27,6 +29,9 @@ async function shutdownRunner(exitCode) {
|
|
|
27
29
|
* @type {Set<string>}
|
|
28
30
|
*/
|
|
29
31
|
const runningJobIds = new Set();
|
|
32
|
+
const brokerIdentity = new PooledRunnerBrokerIdentity({
|
|
33
|
+
closeConnections: async () => await closeRunnerConnections(currentConfigurationOrNull())
|
|
34
|
+
});
|
|
30
35
|
/**
|
|
31
36
|
* Sets an aggregate process title from the current in-flight count. A child runs
|
|
32
37
|
* jobs concurrently, so a per-job title (which `runJobPayload` would snapshot and
|
|
@@ -42,12 +47,12 @@ function updateProcessTitle() {
|
|
|
42
47
|
/**
|
|
43
48
|
* Checks whether an IPC value is a runnable pooled job message.
|
|
44
49
|
* @param {ReturnType<typeof JSON.parse>} message - IPC message.
|
|
45
|
-
* @returns {message is {type: "job", payload: import("./types.js").BackgroundJobPayload & {id: string}}} - Whether this is a valid job message.
|
|
50
|
+
* @returns {message is {type: "job", payload: import("./types.js").BackgroundJobPayload & {id: string}, sharedTransactionBroker?: import("../testing/shared-transaction-proxy-driver.js").SharedTransactionBrokerJobConfig}} - Whether this is a valid job message.
|
|
46
51
|
*/
|
|
47
52
|
function isJobMessage(message) {
|
|
48
53
|
if (!message || typeof message !== "object")
|
|
49
54
|
return false;
|
|
50
|
-
const record = /** @type {{type?: ReturnType<typeof JSON.parse>, payload?: ReturnType<typeof JSON.parse>}} */ (message);
|
|
55
|
+
const record = /** @type {{type?: ReturnType<typeof JSON.parse>, payload?: ReturnType<typeof JSON.parse>, sharedTransactionBroker?: ReturnType<typeof JSON.parse>}} */ (message);
|
|
51
56
|
return record.type === "job" && !!record.payload && typeof record.payload === "object" && typeof record.payload.id === "string";
|
|
52
57
|
}
|
|
53
58
|
/**
|
|
@@ -55,7 +60,7 @@ function isJobMessage(message) {
|
|
|
55
60
|
* @param {object} args - Outcome.
|
|
56
61
|
* @param {string} args.jobId - Job id.
|
|
57
62
|
* @param {boolean} args.acknowledged - Whether the terminal report was acknowledged.
|
|
58
|
-
* @param {"completed" | "failed"} [args.status] - Acknowledged
|
|
63
|
+
* @param {"completed" | "failed" | "rescheduled"} [args.status] - Acknowledged outcome.
|
|
59
64
|
* @param {Error} [args.error] - Reporting error when acknowledgement was not obtained.
|
|
60
65
|
* @returns {Promise<void>} - Resolves after IPC accepts the message.
|
|
61
66
|
*/
|
|
@@ -83,12 +88,17 @@ function sendOutcome({ jobId, acknowledged, status, error }) {
|
|
|
83
88
|
* per-job try/catch) ends the child, which the worker sees as an exit and
|
|
84
89
|
* reclaims for the whole in-flight set.
|
|
85
90
|
* @param {import("./types.js").BackgroundJobPayload & {id: string}} payload - Job payload.
|
|
91
|
+
* @param {import("../testing/shared-transaction-proxy-driver.js").SharedTransactionBrokerJobConfig} sharedTransactionBroker - Per-job broker configuration.
|
|
86
92
|
* @returns {Promise<void>} - Resolves after reporting.
|
|
87
93
|
*/
|
|
88
|
-
async function runJob(payload) {
|
|
94
|
+
async function runJob(payload, sharedTransactionBroker) {
|
|
89
95
|
try {
|
|
90
|
-
await
|
|
91
|
-
|
|
96
|
+
const status = await runWithSharedTransactionBrokerConfig(sharedTransactionBroker, async () => {
|
|
97
|
+
return await brokerIdentity.run(sharedTransactionBroker, async () => {
|
|
98
|
+
return await runJobPayload(payload, { closeConnections: false, manageProcessTitle: false });
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
await sendOutcome({ jobId: payload.id, acknowledged: true, status });
|
|
92
102
|
}
|
|
93
103
|
catch (error) {
|
|
94
104
|
if (error instanceof BackgroundJobPerformedFailure) {
|
|
@@ -115,10 +125,10 @@ function handleMessage(message) {
|
|
|
115
125
|
return;
|
|
116
126
|
runningJobIds.add(message.payload.id);
|
|
117
127
|
updateProcessTitle();
|
|
118
|
-
void runJob(message.payload);
|
|
128
|
+
void runJob(message.payload, message.sharedTransactionBroker || { expected: false });
|
|
119
129
|
}
|
|
120
130
|
process.on("message", (message) => handleMessage(message));
|
|
121
131
|
process.once("disconnect", () => void shutdownRunner(0));
|
|
122
132
|
for (const signal of ["SIGTERM", "SIGINT"])
|
|
123
133
|
process.once(signal, () => void shutdownRunner(1));
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9vbGVkLXJ1bm5lci1jaGlsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYWNrZ3JvdW5kLWpvYnMvcG9vbGVkLXJ1bm5lci1jaGlsZC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBRVosT0FBTyxhQUFhLEVBQUUsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ2xHLE9BQU8scUJBQXFCLE1BQU0sMkJBQTJCLENBQUE7QUFFN0QsTUFBTSxrQkFBa0IsR0FBRyxrQ0FBa0MsQ0FBQTtBQUU3RCxxQkFBcUIsRUFBRSxDQUFBO0FBRXZCLElBQUksWUFBWSxHQUFHLEtBQUssQ0FBQTtBQUV4Qjs7Ozs7O0dBTUc7QUFDSCxLQUFLLFVBQVUsY0FBYyxDQUFDLFFBQVE7SUFDcEMsSUFBSSxZQUFZO1FBQUUsT0FBTTtJQUN4QixZQUFZLEdBQUcsSUFBSSxDQUFBO0lBRW5CLE1BQU0sc0JBQXNCLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxDQUFBO0lBQzFELE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7QUFDeEIsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQU0sYUFBYSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUE7QUFFL0I7Ozs7Ozs7R0FPRztBQUNILFNBQVMsa0JBQWtCO0lBQ3pCLE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUE7SUFFaEMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLGtCQUFrQixLQUFLLEtBQUssSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQTtBQUNwSCxDQUFD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QUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUNyQyxrQkFBa0IsRUFBRSxDQUFBO0lBQ3BCLEtBQUssTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQTtBQUM5QixDQUFDO0FBRUQsT0FBTyxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO0FBQzFELE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDeEQsS0FBSyxNQUFNLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUM7SUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5cbmltcG9ydCBydW5Kb2JQYXlsb2FkLCB7IEJhY2tncm91bmRKb2JQZXJmb3JtZWRGYWlsdXJlIH0gZnJvbSBcIi4vam9iLXJ1bm5lci5qc1wiXG5pbXBvcnQgeyBjbG9zZVJ1bm5lckNvbm5lY3Rpb25zLCBjdXJyZW50Q29uZmlndXJhdGlvbk9yTnVsbCB9IGZyb20gXCIuL3J1bm5lci1ncmFjZWZ1bC1zaHV0ZG93bi5qc1wiXG5pbXBvcnQgc2V0UnVubmVyUHJvY2Vzc1RpdGxlIGZyb20gXCIuL3J1bm5lci1wcm9jZXNzLXRpdGxlLmpzXCJcblxuY29uc3QgQkFTRV9QUk9DRVNTX1RJVExFID0gXCJ2ZWxvY2lvdXMgYmFja2dyb3VuZC1qb2JzLXJ1bm5lclwiXG5cbnNldFJ1bm5lclByb2Nlc3NUaXRsZSgpXG5cbmxldCBzaHV0dGluZ0Rvd24gPSBmYWxzZVxuXG4vKipcbiAqIENsb3NlcyB0aGUgcnVubmVyJ3MgY29ubmVjdGlvbnMg4oCUIHJlbGVhc2luZyBhbnkgYWR2aXNvcnkgbG9jayBhIGtpbGxlZC1taWQtcGFzc1xuICogam9iIHN0aWxsIGhvbGRzIOKAlCBiZWZvcmUgZXhpdGluZywgaW5zdGVhZCBvZiBsZWF2aW5nIGEgaGFsZi1vcGVuIHNlc3Npb24gdGhhdFxuICoga2VlcHMgdGhlIGxvY2sgdW50aWwgdGhlIERCIHNlcnZlcidzIGB3YWl0X3RpbWVvdXRgLlxuICogQHBhcmFtIHtudW1iZXJ9IGV4aXRDb2RlIC0gUHJvY2VzcyBleGl0IGNvZGUuXG4gKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn1cbiAqL1xuYXN5bmMgZnVuY3Rpb24gc2h1dGRvd25SdW5uZXIoZXhpdENvZGUpIHtcbiAgaWYgKHNodXR0aW5nRG93bikgcmV0dXJuXG4gIHNodXR0aW5nRG93biA9IHRydWVcblxuICBhd2FpdCBjbG9zZVJ1bm5lckNvbm5lY3Rpb25zKGN1cnJlbnRDb25maWd1cmF0aW9uT3JOdWxsKCkpXG4gIHByb2Nlc3MuZXhpdChleGl0Q29kZSlcbn1cblxuLyoqXG4gKiBJZHMgb2Ygam9icyBjdXJyZW50bHkgcnVubmluZyBpbiB0aGlzIGNoaWxkLiBBIHBvb2xlZCBjaGlsZCBydW5zIHVwIHRvXG4gKiBgcG9vbGVkUnVubmVyQ29uY3VycmVuY3lgIGpvYnMgYXQgb25jZSAodGhlIHdvcmtlciBvbmx5IGRpc3BhdGNoZXMgd2l0aGluIHRoYXRcbiAqIGJvdW5kKTsgdGhlIHNldCBkZWR1cGVzIGEgcmVkZWxpdmVyZWQgam9iIGlkIGFuZCBsZXRzIGVhY2ggam9iIHNldHRsZVxuICogaW5kZXBlbmRlbnRseS5cbiAqIEB0eXBlIHtTZXQ8c3RyaW5nPn1cbiAqL1xuY29uc3QgcnVubmluZ0pvYklkcyA9IG5ldyBTZXQoKVxuXG4vKipcbiAqIFNldHMgYW4gYWdncmVnYXRlIHByb2Nlc3MgdGl0bGUgZnJvbSB0aGUgY3VycmVudCBpbi1mbGlnaHQgY291bnQuIEEgY2hpbGQgcnVuc1xuICogam9icyBjb25jdXJyZW50bHksIHNvIGEgcGVyLWpvYiB0aXRsZSAod2hpY2ggYHJ1bkpvYlBheWxvYWRgIHdvdWxkIHNuYXBzaG90IGFuZFxuICogcmVzdG9yZSBhcm91bmQgYSBzaW5nbGUgam9iKSBjYW5ub3QgcmVwcmVzZW50IHRoZSBwcm9jZXNzIOKAlCBpbnRlcmxlYXZlZFxuICogY29tcGxldGlvbnMgd291bGQgbGVhdmUgYSBzdGFsZSBsYWJlbC4gUmVjb21wdXRpbmcgZnJvbSBgcnVubmluZ0pvYklkcy5zaXplYCBpc1xuICogY29uY3VycmVuY3ktc2FmZSBhbmQgaG9uZXN0OiBgcHNgL2B0b3BgIHNob3cgaG93IG1hbnkgam9icyB0aGUgY2hpbGQgaXMgcnVubmluZy5cbiAqIEByZXR1cm5zIHt2b2lkfVxuICovXG5mdW5jdGlvbiB1cGRhdGVQcm9jZXNzVGl0bGUoKSB7XG4gIGNvbnN0IGNvdW50ID0gcnVubmluZ0pvYklkcy5zaXplXG5cbiAgcHJvY2Vzcy50aXRsZSA9IGNvdW50ID4gMCA/IGAke0JBU0VfUFJPQ0VTU19USVRMRX06ICR7Y291bnR9ICR7Y291bnQgPT09IDEgPyBcImpvYlwiIDogXCJqb2JzXCJ9YCA6IEJBU0VfUFJPQ0VTU19USVRMRVxufVxuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIGFuIElQQyB2YWx1ZSBpcyBhIHJ1bm5hYmxlIHBvb2xlZCBqb2IgbWVzc2FnZS5cbiAqIEBwYXJhbSB7UmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59IG1lc3NhZ2UgLSBJUEMgbWVzc2FnZS5cbiAqIEByZXR1cm5zIHttZXNzYWdlIGlzIHt0eXBlOiBcImpvYlwiLCBwYXlsb2FkOiBpbXBvcnQoXCIuL3R5cGVzLmpzXCIpLkJhY2tncm91bmRKb2JQYXlsb2FkICYge2lkOiBzdHJpbmd9fX0gLSBXaGV0aGVyIHRoaXMgaXMgYSB2YWxpZCBqb2IgbWVzc2FnZS5cbiAqL1xuZnVuY3Rpb24gaXNKb2JNZXNzYWdlKG1lc3NhZ2UpIHtcbiAgaWYgKCFtZXNzYWdlIHx8IHR5cGVvZiBtZXNzYWdlICE9PSBcIm9iamVjdFwiKSByZXR1cm4gZmFsc2VcbiAgY29uc3QgcmVjb3JkID0gLyoqIEB0eXBlIHt7dHlwZT86IFJldHVyblR5cGU8dHlwZW9mIEpTT04ucGFyc2U+LCBwYXlsb2FkPzogUmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59fSAqLyAobWVzc2FnZSlcblxuICByZXR1cm4gcmVjb3JkLnR5cGUgPT09IFwiam9iXCIgJiYgISFyZWNvcmQucGF5bG9hZCAmJiB0eXBlb2YgcmVjb3JkLnBheWxvYWQgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIHJlY29yZC5wYXlsb2FkLmlkID09PSBcInN0cmluZ1wiXG59XG5cbi8qKlxuICogU2VuZHMgdGhlIHRlcm1pbmFsIG91dGNvbWUgYWZ0ZXIgdGhlIG1haW4vREIgcmVwb3J0IGhhcyBiZWVuIGFja25vd2xlZGdlZCBvciByZWplY3RlZC5cbiAqIEBwYXJhbSB7b2JqZWN0fSBhcmdzIC0gT3V0Y29tZS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBhcmdzLmpvYklkIC0gSm9iIGlkLlxuICogQHBhcmFtIHtib29sZWFufSBhcmdzLmFja25vd2xlZGdlZCAtIFdoZXRoZXIgdGhlIHRlcm1pbmFsIHJlcG9ydCB3YXMgYWNrbm93bGVkZ2VkLlxuICogQHBhcmFtIHtcImNvbXBsZXRlZFwiIHwgXCJmYWlsZWRcIn0gW2FyZ3Muc3RhdHVzXSAtIEFja25vd2xlZGdlZCB0ZXJtaW5hbCBzdGF0dXMuXG4gKiBAcGFyYW0ge0Vycm9yfSBbYXJncy5lcnJvcl0gLSBSZXBvcnRpbmcgZXJyb3Igd2hlbiBhY2tub3dsZWRnZW1lbnQgd2FzIG5vdCBvYnRhaW5lZC5cbiAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSAtIFJlc29sdmVzIGFmdGVyIElQQyBhY2NlcHRzIHRoZSBtZXNzYWdlLlxuICovXG5mdW5jdGlvbiBzZW5kT3V0Y29tZSh7am9iSWQsIGFja25vd2xlZGdlZCwgc3RhdHVzLCBlcnJvcn0pIHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgaWYgKCFwcm9jZXNzLnNlbmQpIHtcbiAgICAgIHJlc29sdmUodW5kZWZpbmVkKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgcHJvY2Vzcy5zZW5kKHtcbiAgICAgIHR5cGU6IFwiam9iLW91dGNvbWVcIixcbiAgICAgIGpvYklkLFxuICAgICAgYWNrbm93bGVkZ2VkLFxuICAgICAgc3RhdHVzLFxuICAgICAgcnNzQnl0ZXM6IHByb2Nlc3MubWVtb3J5VXNhZ2UoKS5yc3MsXG4gICAgICBlcnJvcjogZXJyb3I/Lm1lc3NhZ2VcbiAgICB9LCAoKSA9PiByZXNvbHZlKHVuZGVmaW5lZCkpXG4gIH0pXG59XG5cbi8qKlxuICogUnVucyBvbmUgam9iIGNvbmN1cnJlbnRseSB3aXRoIGFueSBzaWJsaW5ncyBhbmQgcmVwb3J0cyBpdHMgb3duIHRlcm1pbmFsXG4gKiBvdXRjb21lLiBBIHNpbmdsZSBqb2IncyB1bmV4cGVjdGVkIGZhaWx1cmUgcmVwb3J0cyB0aGF0IGpvYiBmb3IgcmVjbGFtYXRpb25cbiAqIChgYWNrbm93bGVkZ2VkOiBmYWxzZWApIGJ1dCBkb2VzIE5PVCB0YWtlIGRvd24gdGhlIGNoaWxkIOKAlCBpdHMgY29uY3VycmVudFxuICogc2libGluZ3Mga2VlcCBydW5uaW5nLiBPbmx5IGEgcHJvY2Vzcy1sZXZlbCBmYXVsdCAod2hpY2ggZXNjYXBlcyBldmVyeVxuICogcGVyLWpvYiB0cnkvY2F0Y2gpIGVuZHMgdGhlIGNoaWxkLCB3aGljaCB0aGUgd29ya2VyIHNlZXMgYXMgYW4gZXhpdCBhbmRcbiAqIHJlY2xhaW1zIGZvciB0aGUgd2hvbGUgaW4tZmxpZ2h0IHNldC5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi90eXBlcy5qc1wiKS5CYWNrZ3JvdW5kSm9iUGF5bG9hZCAmIHtpZDogc3RyaW5nfX0gcGF5bG9hZCAtIEpvYiBwYXlsb2FkLlxuICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IC0gUmVzb2x2ZXMgYWZ0ZXIgcmVwb3J0aW5nLlxuICovXG5hc3luYyBmdW5jdGlvbiBydW5Kb2IocGF5bG9hZCkge1xuICB0cnkge1xuICAgIGF3YWl0IHJ1bkpvYlBheWxvYWQocGF5bG9hZCwge2Nsb3NlQ29ubmVjdGlvbnM6IGZhbHNlLCBtYW5hZ2VQcm9jZXNzVGl0bGU6IGZhbHNlfSlcbiAgICBhd2FpdCBzZW5kT3V0Y29tZSh7am9iSWQ6IHBheWxvYWQuaWQsIGFja25vd2xlZGdlZDogdHJ1ZSwgc3RhdHVzOiBcImNvbXBsZXRlZFwifSlcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBCYWNrZ3JvdW5kSm9iUGVyZm9ybWVkRmFpbHVyZSkge1xuICAgICAgYXdhaXQgc2VuZE91dGNvbWUoe2pvYklkOiBwYXlsb2FkLmlkLCBhY2tub3dsZWRnZWQ6IHRydWUsIHN0YXR1czogXCJmYWlsZWRcIn0pXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHJlcG9ydEVycm9yID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yIDogbmV3IEVycm9yKFN0cmluZyhlcnJvcikpXG4gICAgICBjb25zb2xlLmVycm9yKFwiUG9vbGVkIGJhY2tncm91bmQgam9iIHJ1bm5lciBmYWlsZWQgYmVmb3JlIHRlcm1pbmFsIGFja25vd2xlZGdlbWVudDpcIiwgcmVwb3J0RXJyb3IpXG4gICAgICBhd2FpdCBzZW5kT3V0Y29tZSh7am9iSWQ6IHBheWxvYWQuaWQsIGFja25vd2xlZGdlZDogZmFsc2UsIGVycm9yOiByZXBvcnRFcnJvcn0pXG4gICAgfVxuICB9IGZpbmFsbHkge1xuICAgIHJ1bm5pbmdKb2JJZHMuZGVsZXRlKHBheWxvYWQuaWQpXG4gICAgdXBkYXRlUHJvY2Vzc1RpdGxlKClcbiAgfVxufVxuXG4vKipcbiAqIEhhbmRsZXMgYSBqb2IgbWVzc2FnZSwgc3RhcnRpbmcgaXQgYWxvbmdzaWRlIGFueSBjb25jdXJyZW50IHNpYmxpbmdzLlxuICogQHBhcmFtIHtSZXR1cm5UeXBlPHR5cGVvZiBKU09OLnBhcnNlPn0gbWVzc2FnZSAtIElQQyBtZXNzYWdlLlxuICogQHJldHVybnMge3ZvaWR9XG4gKi9cbmZ1bmN0aW9uIGhhbmRsZU1lc3NhZ2UobWVzc2FnZSkge1xuICBpZiAoIWlzSm9iTWVzc2FnZShtZXNzYWdlKSB8fCBydW5uaW5nSm9iSWRzLmhhcyhtZXNzYWdlLnBheWxvYWQuaWQpKSByZXR1cm5cblxuICBydW5uaW5nSm9iSWRzLmFkZChtZXNzYWdlLnBheWxvYWQuaWQpXG4gIHVwZGF0ZVByb2Nlc3NUaXRsZSgpXG4gIHZvaWQgcnVuSm9iKG1lc3NhZ2UucGF5bG9hZClcbn1cblxucHJvY2Vzcy5vbihcIm1lc3NhZ2VcIiwgKG1lc3NhZ2UpID0+IGhhbmRsZU1lc3NhZ2UobWVzc2FnZSkpXG5wcm9jZXNzLm9uY2UoXCJkaXNjb25uZWN0XCIsICgpID0+IHZvaWQgc2h1dGRvd25SdW5uZXIoMCkpXG5mb3IgKGNvbnN0IHNpZ25hbCBvZiBbXCJTSUdURVJNXCIsIFwiU0lHSU5UXCJdKSBwcm9jZXNzLm9uY2Uoc2lnbmFsLCAoKSA9PiB2b2lkIHNodXRkb3duUnVubmVyKDEpKVxuIl19
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9vbGVkLXJ1bm5lci1jaGlsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYWNrZ3JvdW5kLWpvYnMvcG9vbGVkLXJ1bm5lci1jaGlsZC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBRVosT0FBTyxhQUFhLEVBQUUsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ2xHLE9BQU8scUJBQXFCLE1BQU0sMkJBQTJCLENBQUE7QUFDN0QsT0FBTywwQkFBMEIsTUFBTSxvQ0FBb0MsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQTtBQUVwRyxNQUFNLGtCQUFrQixHQUFHLGtDQUFrQyxDQUFBO0FBRTdELHFCQUFxQixFQUFFLENBQUE7QUFFdkIsSUFBSSxZQUFZLEdBQUcsS0FBSyxDQUFBO0FBRXhCOzs7Ozs7R0FNRztBQUNILEtBQUssVUFBVSxjQUFjLENBQUMsUUFBUTtJQUNwQyxJQUFJLFlBQVk7UUFBRSxPQUFNO0lBQ3hCLFlBQVksR0FBRyxJQUFJLENBQUE7SUFFbkIsTUFBTSxzQkFBc0IsQ0FBQywwQkFBMEIsRUFBRSxDQUFDLENBQUE7SUFDMUQsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtBQUN4QixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxhQUFhLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQTtBQUMvQixNQUFNLGNBQWMsR0FBRyxJQUFJLDBCQUEwQixDQUFDO0lBQ3BELGdCQUFnQixFQUFFLEtBQUssSUFBSSxFQUFFLENBQUMsTUFBTSxzQkFBc0IsQ0FBQywwQkFBMEIsRUFBRSxDQUFDO0NBQ3pGLENBQUMsQ0FBQTtBQUVGOzs7Ozs7O0dBT0c7QUFDSCxTQUFTLGtCQUFrQjtJQUN6QixNQUFNLEtBQUss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aW1wb3J0IHJ1bkpvYlBheWxvYWQsIHsgQmFja2dyb3VuZEpvYlBlcmZvcm1lZEZhaWx1cmUgfSBmcm9tIFwiLi9qb2ItcnVubmVyLmpzXCJcbmltcG9ydCB7IGNsb3NlUnVubmVyQ29ubmVjdGlvbnMsIGN1cnJlbnRDb25maWd1cmF0aW9uT3JOdWxsIH0gZnJvbSBcIi4vcnVubmVyLWdyYWNlZnVsLXNodXRkb3duLmpzXCJcbmltcG9ydCBzZXRSdW5uZXJQcm9jZXNzVGl0bGUgZnJvbSBcIi4vcnVubmVyLXByb2Nlc3MtdGl0bGUuanNcIlxuaW1wb3J0IFBvb2xlZFJ1bm5lckJyb2tlcklkZW50aXR5IGZyb20gXCIuL3Bvb2xlZC1ydW5uZXItYnJva2VyLWlkZW50aXR5LmpzXCJcbmltcG9ydCB7IHJ1bldpdGhTaGFyZWRUcmFuc2FjdGlvbkJyb2tlckNvbmZpZyB9IGZyb20gXCIuLi90ZXN0aW5nL3NoYXJlZC10cmFuc2FjdGlvbi1wcm94eS1kcml2ZXIuanNcIlxuXG5jb25zdCBCQVNFX1BST0NFU1NfVElUTEUgPSBcInZlbG9jaW91cyBiYWNrZ3JvdW5kLWpvYnMtcnVubmVyXCJcblxuc2V0UnVubmVyUHJvY2Vzc1RpdGxlKClcblxubGV0IHNodXR0aW5nRG93biA9IGZhbHNlXG5cbi8qKlxuICogQ2xvc2VzIHRoZSBydW5uZXIncyBjb25uZWN0aW9ucyDigJQgcmVsZWFzaW5nIGFueSBhZHZpc29yeSBsb2NrIGEga2lsbGVkLW1pZC1wYXNzXG4gKiBqb2Igc3RpbGwgaG9sZHMg4oCUIGJlZm9yZSBleGl0aW5nLCBpbnN0ZWFkIG9mIGxlYXZpbmcgYSBoYWxmLW9wZW4gc2Vzc2lvbiB0aGF0XG4gKiBrZWVwcyB0aGUgbG9jayB1bnRpbCB0aGUgREIgc2VydmVyJ3MgYHdhaXRfdGltZW91dGAuXG4gKiBAcGFyYW0ge251bWJlcn0gZXhpdENvZGUgLSBQcm9jZXNzIGV4aXQgY29kZS5cbiAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fVxuICovXG5hc3luYyBmdW5jdGlvbiBzaHV0ZG93blJ1bm5lcihleGl0Q29kZSkge1xuICBpZiAoc2h1dHRpbmdEb3duKSByZXR1cm5cbiAgc2h1dHRpbmdEb3duID0gdHJ1ZVxuXG4gIGF3YWl0IGNsb3NlUnVubmVyQ29ubmVjdGlvbnMoY3VycmVudENvbmZpZ3VyYXRpb25Pck51bGwoKSlcbiAgcHJvY2Vzcy5leGl0KGV4aXRDb2RlKVxufVxuXG4vKipcbiAqIElkcyBvZiBqb2JzIGN1cnJlbnRseSBydW5uaW5nIGluIHRoaXMgY2hpbGQuIEEgcG9vbGVkIGNoaWxkIHJ1bnMgdXAgdG9cbiAqIGBwb29sZWRSdW5uZXJDb25jdXJyZW5jeWAgam9icyBhdCBvbmNlICh0aGUgd29ya2VyIG9ubHkgZGlzcGF0Y2hlcyB3aXRoaW4gdGhhdFxuICogYm91bmQpOyB0aGUgc2V0IGRlZHVwZXMgYSByZWRlbGl2ZXJlZCBqb2IgaWQgYW5kIGxldHMgZWFjaCBqb2Igc2V0dGxlXG4gKiBpbmRlcGVuZGVudGx5LlxuICogQHR5cGUge1NldDxzdHJpbmc+fVxuICovXG5jb25zdCBydW5uaW5nSm9iSWRzID0gbmV3IFNldCgpXG5jb25zdCBicm9rZXJJZGVudGl0eSA9IG5ldyBQb29sZWRSdW5uZXJCcm9rZXJJZGVudGl0eSh7XG4gIGNsb3NlQ29ubmVjdGlvbnM6IGFzeW5jICgpID0+IGF3YWl0IGNsb3NlUnVubmVyQ29ubmVjdGlvbnMoY3VycmVudENvbmZpZ3VyYXRpb25Pck51bGwoKSlcbn0pXG5cbi8qKlxuICogU2V0cyBhbiBhZ2dyZWdhdGUgcHJvY2VzcyB0aXRsZSBmcm9tIHRoZSBjdXJyZW50IGluLWZsaWdodCBjb3VudC4gQSBjaGlsZCBydW5zXG4gKiBqb2JzIGNvbmN1cnJlbnRseSwgc28gYSBwZXItam9iIHRpdGxlICh3aGljaCBgcnVuSm9iUGF5bG9hZGAgd291bGQgc25hcHNob3QgYW5kXG4gKiByZXN0b3JlIGFyb3VuZCBhIHNpbmdsZSBqb2IpIGNhbm5vdCByZXByZXNlbnQgdGhlIHByb2Nlc3Mg4oCUIGludGVybGVhdmVkXG4gKiBjb21wbGV0aW9ucyB3b3VsZCBsZWF2ZSBhIHN0YWxlIGxhYmVsLiBSZWNvbXB1dGluZyBmcm9tIGBydW5uaW5nSm9iSWRzLnNpemVgIGlzXG4gKiBjb25jdXJyZW5jeS1zYWZlIGFuZCBob25lc3Q6IGBwc2AvYHRvcGAgc2hvdyBob3cgbWFueSBqb2JzIHRoZSBjaGlsZCBpcyBydW5uaW5nLlxuICogQHJldHVybnMge3ZvaWR9XG4gKi9cbmZ1bmN0aW9uIHVwZGF0ZVByb2Nlc3NUaXRsZSgpIHtcbiAgY29uc3QgY291bnQgPSBydW5uaW5nSm9iSWRzLnNpemVcblxuICBwcm9jZXNzLnRpdGxlID0gY291bnQgPiAwID8gYCR7QkFTRV9QUk9DRVNTX1RJVExFfTogJHtjb3VudH0gJHtjb3VudCA9PT0gMSA/IFwiam9iXCIgOiBcImpvYnNcIn1gIDogQkFTRV9QUk9DRVNTX1RJVExFXG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgYW4gSVBDIHZhbHVlIGlzIGEgcnVubmFibGUgcG9vbGVkIGpvYiBtZXNzYWdlLlxuICogQHBhcmFtIHtSZXR1cm5UeXBlPHR5cGVvZiBKU09OLnBhcnNlPn0gbWVzc2FnZSAtIElQQyBtZXNzYWdlLlxuICogQHJldHVybnMge21lc3NhZ2UgaXMge3R5cGU6IFwiam9iXCIsIHBheWxvYWQ6IGltcG9ydChcIi4vdHlwZXMuanNcIikuQmFja2dyb3VuZEpvYlBheWxvYWQgJiB7aWQ6IHN0cmluZ30sIHNoYXJlZFRyYW5zYWN0aW9uQnJva2VyPzogaW1wb3J0KFwiLi4vdGVzdGluZy9zaGFyZWQtdHJhbnNhY3Rpb24tcHJveHktZHJpdmVyLmpzXCIpLlNoYXJlZFRyYW5zYWN0aW9uQnJva2VySm9iQ29uZmlnfX0gLSBXaGV0aGVyIHRoaXMgaXMgYSB2YWxpZCBqb2IgbWVzc2FnZS5cbiAqL1xuZnVuY3Rpb24gaXNKb2JNZXNzYWdlKG1lc3NhZ2UpIHtcbiAgaWYgKCFtZXNzYWdlIHx8IHR5cGVvZiBtZXNzYWdlICE9PSBcIm9iamVjdFwiKSByZXR1cm4gZmFsc2VcbiAgY29uc3QgcmVjb3JkID0gLyoqIEB0eXBlIHt7dHlwZT86IFJldHVyblR5cGU8dHlwZW9mIEpTT04ucGFyc2U+LCBwYXlsb2FkPzogUmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT4sIHNoYXJlZFRyYW5zYWN0aW9uQnJva2VyPzogUmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59fSAqLyAobWVzc2FnZSlcblxuICByZXR1cm4gcmVjb3JkLnR5cGUgPT09IFwiam9iXCIgJiYgISFyZWNvcmQucGF5bG9hZCAmJiB0eXBlb2YgcmVjb3JkLnBheWxvYWQgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIHJlY29yZC5wYXlsb2FkLmlkID09PSBcInN0cmluZ1wiXG59XG5cbi8qKlxuICogU2VuZHMgdGhlIHRlcm1pbmFsIG91dGNvbWUgYWZ0ZXIgdGhlIG1haW4vREIgcmVwb3J0IGhhcyBiZWVuIGFja25vd2xlZGdlZCBvciByZWplY3RlZC5cbiAqIEBwYXJhbSB7b2JqZWN0fSBhcmdzIC0gT3V0Y29tZS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBhcmdzLmpvYklkIC0gSm9iIGlkLlxuICogQHBhcmFtIHtib29sZWFufSBhcmdzLmFja25vd2xlZGdlZCAtIFdoZXRoZXIgdGhlIHRlcm1pbmFsIHJlcG9ydCB3YXMgYWNrbm93bGVkZ2VkLlxuICogQHBhcmFtIHtcImNvbXBsZXRlZFwiIHwgXCJmYWlsZWRcIiB8IFwicmVzY2hlZHVsZWRcIn0gW2FyZ3Muc3RhdHVzXSAtIEFja25vd2xlZGdlZCBvdXRjb21lLlxuICogQHBhcmFtIHtFcnJvcn0gW2FyZ3MuZXJyb3JdIC0gUmVwb3J0aW5nIGVycm9yIHdoZW4gYWNrbm93bGVkZ2VtZW50IHdhcyBub3Qgb2J0YWluZWQuXG4gKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyBhZnRlciBJUEMgYWNjZXB0cyB0aGUgbWVzc2FnZS5cbiAqL1xuZnVuY3Rpb24gc2VuZE91dGNvbWUoe2pvYklkLCBhY2tub3dsZWRnZWQsIHN0YXR1cywgZXJyb3J9KSB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgIGlmICghcHJvY2Vzcy5zZW5kKSB7XG4gICAgICByZXNvbHZlKHVuZGVmaW5lZClcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHByb2Nlc3Muc2VuZCh7XG4gICAgICB0eXBlOiBcImpvYi1vdXRjb21lXCIsXG4gICAgICBqb2JJZCxcbiAgICAgIGFja25vd2xlZGdlZCxcbiAgICAgIHN0YXR1cyxcbiAgICAgIHJzc0J5dGVzOiBwcm9jZXNzLm1lbW9yeVVzYWdlKCkucnNzLFxuICAgICAgZXJyb3I6IGVycm9yPy5tZXNzYWdlXG4gICAgfSwgKCkgPT4gcmVzb2x2ZSh1bmRlZmluZWQpKVxuICB9KVxufVxuXG4vKipcbiAqIFJ1bnMgb25lIGpvYiBjb25jdXJyZW50bHkgd2l0aCBhbnkgc2libGluZ3MgYW5kIHJlcG9ydHMgaXRzIG93biB0ZXJtaW5hbFxuICogb3V0Y29tZS4gQSBzaW5nbGUgam9iJ3MgdW5leHBlY3RlZCBmYWlsdXJlIHJlcG9ydHMgdGhhdCBqb2IgZm9yIHJlY2xhbWF0aW9uXG4gKiAoYGFja25vd2xlZGdlZDogZmFsc2VgKSBidXQgZG9lcyBOT1QgdGFrZSBkb3duIHRoZSBjaGlsZCDigJQgaXRzIGNvbmN1cnJlbnRcbiAqIHNpYmxpbmdzIGtlZXAgcnVubmluZy4gT25seSBhIHByb2Nlc3MtbGV2ZWwgZmF1bHQgKHdoaWNoIGVzY2FwZXMgZXZlcnlcbiAqIHBlci1qb2IgdHJ5L2NhdGNoKSBlbmRzIHRoZSBjaGlsZCwgd2hpY2ggdGhlIHdvcmtlciBzZWVzIGFzIGFuIGV4aXQgYW5kXG4gKiByZWNsYWltcyBmb3IgdGhlIHdob2xlIGluLWZsaWdodCBzZXQuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vdHlwZXMuanNcIikuQmFja2dyb3VuZEpvYlBheWxvYWQgJiB7aWQ6IHN0cmluZ319IHBheWxvYWQgLSBKb2IgcGF5bG9hZC5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vdGVzdGluZy9zaGFyZWQtdHJhbnNhY3Rpb24tcHJveHktZHJpdmVyLmpzXCIpLlNoYXJlZFRyYW5zYWN0aW9uQnJva2VySm9iQ29uZmlnfSBzaGFyZWRUcmFuc2FjdGlvbkJyb2tlciAtIFBlci1qb2IgYnJva2VyIGNvbmZpZ3VyYXRpb24uXG4gKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyBhZnRlciByZXBvcnRpbmcuXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHJ1bkpvYihwYXlsb2FkLCBzaGFyZWRUcmFuc2FjdGlvbkJyb2tlcikge1xuICB0cnkge1xuICAgIGNvbnN0IHN0YXR1cyA9IGF3YWl0IHJ1bldpdGhTaGFyZWRUcmFuc2FjdGlvbkJyb2tlckNvbmZpZyhzaGFyZWRUcmFuc2FjdGlvbkJyb2tlciwgYXN5bmMgKCkgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJyb2tlcklkZW50aXR5LnJ1bihzaGFyZWRUcmFuc2FjdGlvbkJyb2tlciwgYXN5bmMgKCkgPT4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgcnVuSm9iUGF5bG9hZChwYXlsb2FkLCB7Y2xvc2VDb25uZWN0aW9uczogZmFsc2UsIG1hbmFnZVByb2Nlc3NUaXRsZTogZmFsc2V9KVxuICAgICAgfSlcbiAgICB9KVxuICAgIGF3YWl0IHNlbmRPdXRjb21lKHtqb2JJZDogcGF5bG9hZC5pZCwgYWNrbm93bGVkZ2VkOiB0cnVlLCBzdGF0dXN9KVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEJhY2tncm91bmRKb2JQZXJmb3JtZWRGYWlsdXJlKSB7XG4gICAgICBhd2FpdCBzZW5kT3V0Y29tZSh7am9iSWQ6IHBheWxvYWQuaWQsIGFja25vd2xlZGdlZDogdHJ1ZSwgc3RhdHVzOiBcImZhaWxlZFwifSlcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgcmVwb3J0RXJyb3IgPSBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IgOiBuZXcgRXJyb3IoU3RyaW5nKGVycm9yKSlcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJQb29sZWQgYmFja2dyb3VuZCBqb2IgcnVubmVyIGZhaWxlZCBiZWZvcmUgdGVybWluYWwgYWNrbm93bGVkZ2VtZW50OlwiLCByZXBvcnRFcnJvcilcbiAgICAgIGF3YWl0IHNlbmRPdXRjb21lKHtqb2JJZDogcGF5bG9hZC5pZCwgYWNrbm93bGVkZ2VkOiBmYWxzZSwgZXJyb3I6IHJlcG9ydEVycm9yfSlcbiAgICB9XG4gIH0gZmluYWxseSB7XG4gICAgcnVubmluZ0pvYklkcy5kZWxldGUocGF5bG9hZC5pZClcbiAgICB1cGRhdGVQcm9jZXNzVGl0bGUoKVxuICB9XG59XG5cbi8qKlxuICogSGFuZGxlcyBhIGpvYiBtZXNzYWdlLCBzdGFydGluZyBpdCBhbG9uZ3NpZGUgYW55IGNvbmN1cnJlbnQgc2libGluZ3MuXG4gKiBAcGFyYW0ge1JldHVyblR5cGU8dHlwZW9mIEpTT04ucGFyc2U+fSBtZXNzYWdlIC0gSVBDIG1lc3NhZ2UuXG4gKiBAcmV0dXJucyB7dm9pZH1cbiAqL1xuZnVuY3Rpb24gaGFuZGxlTWVzc2FnZShtZXNzYWdlKSB7XG4gIGlmICghaXNKb2JNZXNzYWdlKG1lc3NhZ2UpIHx8IHJ1bm5pbmdKb2JJZHMuaGFzKG1lc3NhZ2UucGF5bG9hZC5pZCkpIHJldHVyblxuXG4gIHJ1bm5pbmdKb2JJZHMuYWRkKG1lc3NhZ2UucGF5bG9hZC5pZClcbiAgdXBkYXRlUHJvY2Vzc1RpdGxlKClcbiAgdm9pZCBydW5Kb2IobWVzc2FnZS5wYXlsb2FkLCBtZXNzYWdlLnNoYXJlZFRyYW5zYWN0aW9uQnJva2VyIHx8IHtleHBlY3RlZDogZmFsc2V9KVxufVxuXG5wcm9jZXNzLm9uKFwibWVzc2FnZVwiLCAobWVzc2FnZSkgPT4gaGFuZGxlTWVzc2FnZShtZXNzYWdlKSlcbnByb2Nlc3Mub25jZShcImRpc2Nvbm5lY3RcIiwgKCkgPT4gdm9pZCBzaHV0ZG93blJ1bm5lcigwKSlcbmZvciAoY29uc3Qgc2lnbmFsIG9mIFtcIlNJR1RFUk1cIiwgXCJTSUdJTlRcIl0pIHByb2Nlc3Mub25jZShzaWduYWwsICgpID0+IHZvaWQgc2h1dGRvd25SdW5uZXIoMSkpXG4iXX0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** Internal control flow raised by `VelociousJob#rescheduleIn`. */
|
|
2
|
+
export default class BackgroundJobRescheduleSignal extends Error {
|
|
3
|
+
delayMs: number;
|
|
4
|
+
/**
|
|
5
|
+
* Creates a reschedule control signal.
|
|
6
|
+
* @param {number} delayMs - Reschedule delay in milliseconds.
|
|
7
|
+
*/
|
|
8
|
+
constructor(delayMs: number);
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=reschedule-signal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reschedule-signal.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/reschedule-signal.js"],"names":[],"mappings":"AAEA,mEAAmE;AACnE,MAAM,CAAC,OAAO,OAAO,6BAA8B,SAAQ,KAAK;IAQvD,OAAO;IAPd;;;OAGG;IACH,YAAY,OAAO,EAFR,MAEQ,EAIlB;CACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
/** Internal control flow raised by `VelociousJob#rescheduleIn`. */
|
|
3
|
+
export default class BackgroundJobRescheduleSignal extends Error {
|
|
4
|
+
/**
|
|
5
|
+
* Creates a reschedule control signal.
|
|
6
|
+
* @param {number} delayMs - Reschedule delay in milliseconds.
|
|
7
|
+
*/
|
|
8
|
+
constructor(delayMs) {
|
|
9
|
+
super(`Reschedule background job in ${delayMs}ms`);
|
|
10
|
+
this.name = "BackgroundJobRescheduleSignal";
|
|
11
|
+
this.delayMs = delayMs;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzY2hlZHVsZS1zaWduYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFja2dyb3VuZC1qb2JzL3Jlc2NoZWR1bGUtc2lnbmFsLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixtRUFBbUU7QUFDbkUsTUFBTSxDQUFDLE9BQU8sT0FBTyw2QkFBOEIsU0FBUSxLQUFLO0lBQzlEOzs7T0FHRztJQUNILFlBQVksT0FBTztRQUNqQixLQUFLLENBQUMsZ0NBQWdDLE9BQU8sSUFBSSxDQUFDLENBQUE7UUFDbEQsSUFBSSxDQUFDLElBQUksR0FBRywrQkFBK0IsQ0FBQTtRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQTtJQUN4QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuLyoqIEludGVybmFsIGNvbnRyb2wgZmxvdyByYWlzZWQgYnkgYFZlbG9jaW91c0pvYiNyZXNjaGVkdWxlSW5gLiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQmFja2dyb3VuZEpvYlJlc2NoZWR1bGVTaWduYWwgZXh0ZW5kcyBFcnJvciB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgcmVzY2hlZHVsZSBjb250cm9sIHNpZ25hbC5cbiAgICogQHBhcmFtIHtudW1iZXJ9IGRlbGF5TXMgLSBSZXNjaGVkdWxlIGRlbGF5IGluIG1pbGxpc2Vjb25kcy5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGRlbGF5TXMpIHtcbiAgICBzdXBlcihgUmVzY2hlZHVsZSBiYWNrZ3JvdW5kIGpvYiBpbiAke2RlbGF5TXN9bXNgKVxuICAgIHRoaXMubmFtZSA9IFwiQmFja2dyb3VuZEpvYlJlc2NoZWR1bGVTaWduYWxcIlxuICAgIHRoaXMuZGVsYXlNcyA9IGRlbGF5TXNcbiAgfVxufVxuIl19
|
|
@@ -31,16 +31,18 @@ export default class BackgroundJobsStatusReporter {
|
|
|
31
31
|
* Runs report.
|
|
32
32
|
* @param {object} args - Options.
|
|
33
33
|
* @param {string} args.jobId - Job id.
|
|
34
|
-
* @param {"completed" | "failed"} args.status - Status.
|
|
34
|
+
* @param {"completed" | "failed" | "rescheduled"} args.status - Status.
|
|
35
|
+
* @param {number} [args.delayMs] - Reschedule delay in milliseconds.
|
|
35
36
|
* @param {ReturnType<typeof JSON.parse>} [args.error] - Error.
|
|
36
37
|
* @param {string} [args.handoffId] - Handoff lease id.
|
|
37
38
|
* @param {number} [args.handedOffAtMs] - Handed off timestamp.
|
|
38
39
|
* @param {string} [args.workerId] - Worker id.
|
|
39
40
|
* @returns {Promise<void>} - Resolves when reported.
|
|
40
41
|
*/
|
|
41
|
-
report({ jobId, status, error, handoffId, handedOffAtMs, workerId }: {
|
|
42
|
+
report({ jobId, status, delayMs, error, handoffId, handedOffAtMs, workerId }: {
|
|
42
43
|
jobId: string;
|
|
43
|
-
status: "completed" | "failed";
|
|
44
|
+
status: "completed" | "failed" | "rescheduled";
|
|
45
|
+
delayMs?: number;
|
|
44
46
|
error?: ReturnType<typeof JSON.parse>;
|
|
45
47
|
handoffId?: string;
|
|
46
48
|
handedOffAtMs?: number;
|
|
@@ -50,7 +52,8 @@ export default class BackgroundJobsStatusReporter {
|
|
|
50
52
|
* Runs report with retry.
|
|
51
53
|
* @param {object} args - Options.
|
|
52
54
|
* @param {string} args.jobId - Job id.
|
|
53
|
-
* @param {"completed" | "failed"} args.status - Status.
|
|
55
|
+
* @param {"completed" | "failed" | "rescheduled"} args.status - Status.
|
|
56
|
+
* @param {number} [args.delayMs] - Reschedule delay in milliseconds.
|
|
54
57
|
* @param {ReturnType<typeof JSON.parse>} [args.error] - Error.
|
|
55
58
|
* @param {string} [args.handoffId] - Handoff lease id.
|
|
56
59
|
* @param {number} [args.handedOffAtMs] - Handed off timestamp.
|
|
@@ -59,9 +62,10 @@ export default class BackgroundJobsStatusReporter {
|
|
|
59
62
|
* @param {boolean} [args.retryPersistErrors] - Retry a `BackgroundJobUpdateError` (main's `job-update-error`, i.e. a transient DB failure while persisting the terminal status) instead of throwing immediately. Off by default so short-lived forked/spawned runners keep failing loudly and exit non-zero to be reclaimed; on for the long-lived worker, which cannot exit-to-reclaim and would otherwise strand the job in `handed_off`.
|
|
60
63
|
* @returns {Promise<void>} - Resolves when reported.
|
|
61
64
|
*/
|
|
62
|
-
reportWithRetry({ jobId, status, error, handoffId, handedOffAtMs, workerId, maxDurationMs, retryPersistErrors }: {
|
|
65
|
+
reportWithRetry({ jobId, status, delayMs, error, handoffId, handedOffAtMs, workerId, maxDurationMs, retryPersistErrors }: {
|
|
63
66
|
jobId: string;
|
|
64
|
-
status: "completed" | "failed";
|
|
67
|
+
status: "completed" | "failed" | "rescheduled";
|
|
68
|
+
delayMs?: number;
|
|
65
69
|
error?: ReturnType<typeof JSON.parse>;
|
|
66
70
|
handoffId?: string;
|
|
67
71
|
handedOffAtMs?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-reporter.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/status-reporter.js"],"names":[],"mappings":"AAIA,OAAO,MAAM,MAAM,cAAc,CAAA;AAEjC,OAAO,2BAA2B,MAAM,qBAAqB,CAAA;AAI7D,MAAM,CAAC,OAAO,OAAO,4BAA4B;IAUxC,aAAa;IACb,IAAI;IACJ,IAAI;IACJ,gBAAgB;IACrB;;;;;OAKG;IACE,YAAY,EAFP,2BAA2B,GAAG,SAAS;IAG5C,MAAM;IApBb;;;;;;;OAOG;IACH,YAAY,EAAC,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAuB,EAAC,EAL7D;QAAoD,aAAa,EAAzD,OAAO,qBAAqB,EAAE,OAAO,CAC7C;QAAsB,IAAI,AAA1B,CACA,EADQ,MAAM,CACd;QAAsB,IAAI,AAA1B,CACA,EADQ,MAAM,CACd;QAAsB,gBAAgB,AAAtC,CACF,EADU,MAAM,CAChB;KAC+D,EAa/D;IAED
|
|
1
|
+
{"version":3,"file":"status-reporter.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/status-reporter.js"],"names":[],"mappings":"AAIA,OAAO,MAAM,MAAM,cAAc,CAAA;AAEjC,OAAO,2BAA2B,MAAM,qBAAqB,CAAA;AAI7D,MAAM,CAAC,OAAO,OAAO,4BAA4B;IAUxC,aAAa;IACb,IAAI;IACJ,IAAI;IACJ,gBAAgB;IACrB;;;;;OAKG;IACE,YAAY,EAFP,2BAA2B,GAAG,SAAS;IAG5C,MAAM;IApBb;;;;;;;OAOG;IACH,YAAY,EAAC,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAuB,EAAC,EAL7D;QAAoD,aAAa,EAAzD,OAAO,qBAAqB,EAAE,OAAO,CAC7C;QAAsB,IAAI,AAA1B,CACA,EADQ,MAAM,CACd;QAAsB,IAAI,AAA1B,CACA,EADQ,MAAM,CACd;QAAsB,gBAAgB,AAAtC,CACF,EADU,MAAM,CAChB;KAC+D,EAa/D;IAED;;;;;;;;;;;OAWG;IACG,MAAM,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAC,EAT7E;QAAqB,KAAK,EAAlB,MAAM,CACd;QAAqD,MAAM,EAAnD,WAAW,GAAG,QAAQ,GAAG,aAAa,CAC9C;QAAsB,OAAO,AAA7B,CACA,EADQ,MAAM,CACd;QAA6C,KAAK,AAAlD,CACA,EADQ,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CACrC;QAAsB,SAAS,AAA/B,CACA,EADQ,MAAM,CACd;QAAsB,aAAa,AAAnC,CACA,EADQ,MAAM,CACd;QAAsB,QAAQ,AAA9B,CACA,EADQ,MAAM,CACd;KAE6E,GAFnE,OAAO,CAAC,IAAI,CAAC,CAqCzB;IAED;;;;;;;;;;;;;OAaG;IACG,eAAe,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,kBAA0B,EAAC,EAXjI;QAAqB,KAAK,EAAlB,MAAM,CACd;QAAqD,MAAM,EAAnD,WAAW,GAAG,QAAQ,GAAG,aAAa,CAC9C;QAAsB,OAAO,AAA7B,CACA,EADQ,MAAM,CACd;QAA6C,KAAK,AAAlD,CACA,EADQ,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CACrC;QAAsB,SAAS,AAA/B,CACA,EADQ,MAAM,CACd;QAAsB,aAAa,AAAnC,CACA,EADQ,MAAM,CACd;QAAsB,QAAQ,AAA9B,CACA,EADQ,MAAM,CACd;QAAsB,aAAa,AAAnC,CACA,EADQ,MAAM,CACd;QAAuB,kBAAkB,AAAzC,CACA,EADQ,OAAO,CACf;KAEiI,GAFvH,OAAO,CAAC,IAAI,CAAC,CAsCzB;CAEF"}
|
|
@@ -33,14 +33,15 @@ export default class BackgroundJobsStatusReporter {
|
|
|
33
33
|
* Runs report.
|
|
34
34
|
* @param {object} args - Options.
|
|
35
35
|
* @param {string} args.jobId - Job id.
|
|
36
|
-
* @param {"completed" | "failed"} args.status - Status.
|
|
36
|
+
* @param {"completed" | "failed" | "rescheduled"} args.status - Status.
|
|
37
|
+
* @param {number} [args.delayMs] - Reschedule delay in milliseconds.
|
|
37
38
|
* @param {ReturnType<typeof JSON.parse>} [args.error] - Error.
|
|
38
39
|
* @param {string} [args.handoffId] - Handoff lease id.
|
|
39
40
|
* @param {number} [args.handedOffAtMs] - Handed off timestamp.
|
|
40
41
|
* @param {string} [args.workerId] - Worker id.
|
|
41
42
|
* @returns {Promise<void>} - Resolves when reported.
|
|
42
43
|
*/
|
|
43
|
-
async report({ jobId, status, error, handoffId, handedOffAtMs, workerId }) {
|
|
44
|
+
async report({ jobId, status, delayMs, error, handoffId, handedOffAtMs, workerId }) {
|
|
44
45
|
const config = this.configuration.getBackgroundJobsConfig();
|
|
45
46
|
const host = this.host || config.host;
|
|
46
47
|
const port = typeof this.port === "number" ? this.port : config.port;
|
|
@@ -51,8 +52,9 @@ export default class BackgroundJobsStatusReporter {
|
|
|
51
52
|
signal: control.signal,
|
|
52
53
|
onConnect: (jsonSocket) => {
|
|
53
54
|
jsonSocket.send({
|
|
54
|
-
type: status === "completed" ? "job-complete" : "job-failed",
|
|
55
|
+
type: status === "completed" ? "job-complete" : status === "rescheduled" ? "job-reschedule" : "job-failed",
|
|
55
56
|
jobId,
|
|
57
|
+
delayMs,
|
|
56
58
|
handoffId,
|
|
57
59
|
workerId,
|
|
58
60
|
handedOffAtMs,
|
|
@@ -75,7 +77,8 @@ export default class BackgroundJobsStatusReporter {
|
|
|
75
77
|
* Runs report with retry.
|
|
76
78
|
* @param {object} args - Options.
|
|
77
79
|
* @param {string} args.jobId - Job id.
|
|
78
|
-
* @param {"completed" | "failed"} args.status - Status.
|
|
80
|
+
* @param {"completed" | "failed" | "rescheduled"} args.status - Status.
|
|
81
|
+
* @param {number} [args.delayMs] - Reschedule delay in milliseconds.
|
|
79
82
|
* @param {ReturnType<typeof JSON.parse>} [args.error] - Error.
|
|
80
83
|
* @param {string} [args.handoffId] - Handoff lease id.
|
|
81
84
|
* @param {number} [args.handedOffAtMs] - Handed off timestamp.
|
|
@@ -84,12 +87,12 @@ export default class BackgroundJobsStatusReporter {
|
|
|
84
87
|
* @param {boolean} [args.retryPersistErrors] - Retry a `BackgroundJobUpdateError` (main's `job-update-error`, i.e. a transient DB failure while persisting the terminal status) instead of throwing immediately. Off by default so short-lived forked/spawned runners keep failing loudly and exit non-zero to be reclaimed; on for the long-lived worker, which cannot exit-to-reclaim and would otherwise strand the job in `handed_off`.
|
|
85
88
|
* @returns {Promise<void>} - Resolves when reported.
|
|
86
89
|
*/
|
|
87
|
-
async reportWithRetry({ jobId, status, error, handoffId, handedOffAtMs, workerId, maxDurationMs, retryPersistErrors = false }) {
|
|
90
|
+
async reportWithRetry({ jobId, status, delayMs, error, handoffId, handedOffAtMs, workerId, maxDurationMs, retryPersistErrors = false }) {
|
|
88
91
|
let attempt = 0;
|
|
89
92
|
const startTime = Date.now();
|
|
90
93
|
while (true) {
|
|
91
94
|
try {
|
|
92
|
-
await this.report({ jobId, status, error, handoffId, handedOffAtMs, workerId });
|
|
95
|
+
await this.report({ jobId, status, delayMs, error, handoffId, handedOffAtMs, workerId });
|
|
93
96
|
return;
|
|
94
97
|
}
|
|
95
98
|
catch (error) {
|
|
@@ -119,4 +122,4 @@ export default class BackgroundJobsStatusReporter {
|
|
|
119
122
|
}
|
|
120
123
|
}
|
|
121
124
|
}
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXJlcG9ydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhY2tncm91bmQtam9icy9zdGF0dXMtcmVwb3J0ZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sT0FBTyxNQUFNLDJCQUEyQixDQUFBO0FBQy9DLE9BQU8sSUFBSSxNQUFNLHdCQUF3QixDQUFBO0FBQ3pDLE9BQU8sTUFBTSxNQUFNLGNBQWMsQ0FBQTtBQUNqQyxPQUFPLDJCQUEyQixNQUFNLHNCQUFzQixDQUFBO0FBQzlELE9BQU8sMkJBQTJCLE1BQU0scUJBQXFCLENBQUE7QUFFN0QsTUFBTSx3QkFBeUIsU0FBUSxLQUFLO0NBQUc7QUFFL0MsTUFBTSxDQUFDLE9BQU8sT0FBTyw0QkFBNEI7SUFDL0M7Ozs7Ozs7T0FPRztJQUNILFlBQVksRUFBQyxhQUFhLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsR0FBRyxJQUFJLEVBQUM7UUFDOUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUE7UUFDbEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUE7UUFDaEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUE7UUFDaEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFBO1FBQ3hDOzs7OztXQUtHO1FBQ0gsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUE7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNILEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBQztRQUNyRSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLHVCQUF1QixFQUFFLENBQUE7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QkFBRSxNQUFNLEtBQUssQ0FBQTtnQkFFakYsT0FBTyxJQUFJLENBQUMsQ0FBQTtnQkFDWixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFHLEdBQUcsT0FBTyxDQUFDLENBQUE7Z0JBRWhELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsK0NBQStDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQTtnQkFFakYsSUFBSSxhQUFhLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLFNBQVMsSUFBSSxhQUFhLEVBQUUsQ0FBQztvQkFDN0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxtREFBbUQsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFBO29CQUNwRixNQUFNLEtBQUssQ0FBQTtnQkFDYixDQUFDO2dCQUVELE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFBO1lBQzFCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5cbmltcG9ydCB0aW1lb3V0IGZyb20gXCJhd2FpdGVyeS9idWlsZC90aW1lb3V0LmpzXCJcbmltcG9ydCB3YWl0IGZyb20gXCJhd2FpdGVyeS9idWlsZC93YWl0LmpzXCJcbmltcG9ydCBMb2dnZXIgZnJvbSBcIi4uL2xvZ2dlci5qc1wiXG5pbXBvcnQgbm9ybWFsaXplQmFja2dyb3VuZEpvYkVycm9yIGZyb20gXCIuL25vcm1hbGl6ZS1lcnJvci5qc1wiXG5pbXBvcnQgQmFja2dyb3VuZEpvYnNTb2NrZXRSZXF1ZXN0IGZyb20gXCIuL3NvY2tldC1yZXF1ZXN0LmpzXCJcblxuY2xhc3MgQmFja2dyb3VuZEpvYlVwZGF0ZUVycm9yIGV4dGVuZHMgRXJyb3Ige31cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQmFja2dyb3VuZEpvYnNTdGF0dXNSZXBvcnRlciB7XG4gIC8qKlxuICAgKiBSdW5zIGNvbnN0cnVjdG9yLlxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJncyAtIE9wdGlvbnMuXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vY29uZmlndXJhdGlvbi5qc1wiKS5kZWZhdWx0fSBhcmdzLmNvbmZpZ3VyYXRpb24gLSBDb25maWd1cmF0aW9uLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FyZ3MuaG9zdF0gLSBIb3N0LlxuICAgKiBAcGFyYW0ge251bWJlcn0gW2FyZ3MucG9ydF0gLSBQb3J0LlxuICAgKiBAcGFyYW0ge251bWJlcn0gW2FyZ3MuYXR0ZW1wdFRpbWVvdXRNc10gLSBQZXItYXR0ZW1wdCBzb2NrZXQtcmVxdWVzdCB0aW1lb3V0IGluIG1pbGxpc2Vjb25kcyAoZGVmYXVsdDogNTAwMCkuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcih7Y29uZmlndXJhdGlvbiwgaG9zdCwgcG9ydCwgYXR0ZW1wdFRpbWVvdXRNcyA9IDUwMDB9KSB7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uID0gY29uZmlndXJhdGlvblxuICAgIHRoaXMuaG9zdCA9IGhvc3RcbiAgICB0aGlzLnBvcnQgPSBwb3J0XG4gICAgdGhpcy5hdHRlbXB0VGltZW91dE1zID0gYXR0ZW1wdFRpbWVvdXRNc1xuICAgIC8qKlxuICAgICAqIEludGVybmFsIHRlc3Qtb25seSBvYnNlcnZhYmlsaXR5IHN0YXRlIOKAlCBOT1QgcHVibGljIEFQSS4gUmVmZXJlbmNlcyB0aGUgbW9zdFxuICAgICAqIHJlY2VudCBzb2NrZXQgcmVxdWVzdCBzbyB0aGUgdGltZW91dCBzcGVjIGNhbiBpbnNwZWN0IGhvdyBpdHMgc29ja2V0IHdhcyB0b3JuXG4gICAgICogZG93bi4gRG8gbm90IGV4cG9zZSBvciBkZXBlbmQgb24gdGhpcyBvdXRzaWRlIHRlc3RzLlxuICAgICAqIEB0eXBlIHtCYWNrZ3JvdW5kSm9ic1NvY2tldFJlcXVlc3QgfCB1bmRlZmluZWR9XG4gICAgICovXG4gICAgdGhpcy5fbGFzdFJlcXVlc3QgPSB1bmRlZmluZWRcbiAgICB0aGlzLmxvZ2dlciA9IG5ldyBMb2dnZXIodGhpcylcbiAgfVxuXG4gIC8qKlxuICAgKiBSdW5zIHJlcG9ydC5cbiAgICogQHBhcmFtIHtvYmplY3R9IGFyZ3MgLSBPcHRpb25zLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy5qb2JJZCAtIEpvYiBpZC5cbiAgICogQHBhcmFtIHtcImNvbXBsZXRlZFwiIHwgXCJmYWlsZWRcIn0gYXJncy5zdGF0dXMgLSBTdGF0dXMuXG4gICAqIEBwYXJhbSB7UmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59IFthcmdzLmVycm9yXSAtIEVycm9yLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FyZ3MuaGFuZG9mZklkXSAtIEhhbmRvZmYgbGVhc2UgaWQuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbYXJncy5oYW5kZWRPZmZBdE1zXSAtIEhhbmRlZCBvZmYgdGltZXN0YW1wLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FyZ3Mud29ya2VySWRdIC0gV29ya2VyIGlkLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aGVuIHJlcG9ydGVkLlxuICAgKi9cbiAgYXN5bmMgcmVwb3J0KHtqb2JJZCwgc3RhdHVzLCBlcnJvciwgaGFuZG9mZklkLCBoYW5kZWRPZmZBdE1zLCB3b3JrZXJJZH0pIHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbmZpZ3VyYXRpb24uZ2V0QmFja2dyb3VuZEpvYnNDb25maWcoKVxuICAgIGNvbnN0IGhvc3QgPSB0aGlzLmhvc3QgfHwgY29uZmlnLmhvc3RcbiAgICBjb25zdCBwb3J0ID0gdHlwZW9mIHRoaXMucG9ydCA9PT0gXCJudW1iZXJcIiA/IHRoaXMucG9ydCA6IGNvbmZpZy5wb3J0XG5cbiAgICBhd2FpdCB0aW1lb3V0KHt0aW1lb3V0OiB0aGlzLmF0dGVtcHRUaW1lb3V0TXN9LCBhc3luYyAoe2NvbnRyb2x9KSA9PiB7XG4gICAgICBjb25zdCByZXF1ZXN0ID0gbmV3IEJhY2tncm91bmRKb2JzU29ja2V0UmVxdWVzdCh7aG9zdCwgcG9ydCwgcm9sZTogXCJyZXBvcnRlclwifSlcblxuICAgICAgdGhpcy5fbGFzdFJlcXVlc3QgPSByZXF1ZXN0XG5cbiAgICAgIGF3YWl0IHJlcXVlc3QucnVuKHtcbiAgICAgICAgc2lnbmFsOiBjb250cm9sLnNpZ25hbCxcbiAgICAgICAgb25Db25uZWN0OiAoanNvblNvY2tldCkgPT4ge1xuICAgICAgICAgIGpzb25Tb2NrZXQuc2VuZCh7XG4gICAgICAgICAgICB0eXBlOiBzdGF0dXMgPT09IFwiY29tcGxldGVkXCIgPyBcImpvYi1jb21wbGV0ZVwiIDogXCJqb2ItZmFpbGVkXCIsXG4gICAgICAgICAgICBqb2JJZCxcbiAgICAgICAgICAgIGhhbmRvZmZJZCxcbiAgICAgICAgICAgIHdvcmtlcklkLFxuICAgICAgICAgICAgaGFuZGVkT2ZmQXRNcyxcbiAgICAgICAgICAgIGVycm9yOiBlcnJvciA/IG5vcm1hbGl6ZUJhY2tncm91bmRKb2JFcnJvcihlcnJvcikgOiB1bmRlZmluZWRcbiAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgICAgICBvbk1lc3NhZ2U6ICh7bWVzc2FnZSwgcmVzb2x2ZSwgcmVqZWN0fSkgPT4ge1xuICAgICAgICAgIGlmIChtZXNzYWdlPy50eXBlID09PSBcImpvYi11cGRhdGVkXCIgJiYgbWVzc2FnZS5qb2JJZCA9PT0gam9iSWQpIHtcbiAgICAgICAgICAgIHJlc29sdmUodW5kZWZpbmVkKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKG1lc3NhZ2U/LnR5cGUgPT09IFwiam9iLXVwZGF0ZS1lcnJvclwiICYmIG1lc3NhZ2Uuam9iSWQgPT09IGpvYklkKSB7XG4gICAgICAgICAgICByZWplY3QobmV3IEJhY2tncm91bmRKb2JVcGRhdGVFcnJvcihtZXNzYWdlLmVycm9yIHx8IFwiSm9iIHVwZGF0ZSBmYWlsZWRcIikpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogUnVucyByZXBvcnQgd2l0aCByZXRyeS5cbiAgICogQHBhcmFtIHtvYmplY3R9IGFyZ3MgLSBPcHRpb25zLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy5qb2JJZCAtIEpvYiBpZC5cbiAgICogQHBhcmFtIHtcImNvbXBsZXRlZFwiIHwgXCJmYWlsZWRcIn0gYXJncy5zdGF0dXMgLSBTdGF0dXMuXG4gICAqIEBwYXJhbSB7UmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59IFthcmdzLmVycm9yXSAtIEVycm9yLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FyZ3MuaGFuZG9mZklkXSAtIEhhbmRvZmYgbGVhc2UgaWQuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbYXJncy5oYW5kZWRPZmZBdE1zXSAtIEhhbmRlZCBvZmYgdGltZXN0YW1wLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FyZ3Mud29ya2VySWRdIC0gV29ya2VyIGlkLlxuICAgKiBAcGFyYW0ge251bWJlcn0gW2FyZ3MubWF4RHVyYXRpb25Nc10gLSBNYXggZHVyYXRpb24gZm9yIHJldHJpZXMuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gW2FyZ3MucmV0cnlQZXJzaXN0RXJyb3JzXSAtIFJldHJ5IGEgYEJhY2tncm91bmRKb2JVcGRhdGVFcnJvcmAgKG1haW4ncyBgam9iLXVwZGF0ZS1lcnJvcmAsIGkuZS4gYSB0cmFuc2llbnQgREIgZmFpbHVyZSB3aGlsZSBwZXJzaXN0aW5nIHRoZSB0ZXJtaW5hbCBzdGF0dXMpIGluc3RlYWQgb2YgdGhyb3dpbmcgaW1tZWRpYXRlbHkuIE9mZiBieSBkZWZhdWx0IHNvIHNob3J0LWxpdmVkIGZvcmtlZC9zcGF3bmVkIHJ1bm5lcnMga2VlcCBmYWlsaW5nIGxvdWRseSBhbmQgZXhpdCBub24temVybyB0byBiZSByZWNsYWltZWQ7IG9uIGZvciB0aGUgbG9uZy1saXZlZCB3b3JrZXIsIHdoaWNoIGNhbm5vdCBleGl0LXRvLXJlY2xhaW0gYW5kIHdvdWxkIG90aGVyd2lzZSBzdHJhbmQgdGhlIGpvYiBpbiBgaGFuZGVkX29mZmAuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSAtIFJlc29sdmVzIHdoZW4gcmVwb3J0ZWQuXG4gICAqL1xuICBhc3luYyByZXBvcnRXaXRoUmV0cnkoe2pvYklkLCBzdGF0dXMsIGVycm9yLCBoYW5kb2ZmSWQsIGhhbmRlZE9mZkF0TXMsIHdvcmtlcklkLCBtYXhEdXJhdGlvbk1zLCByZXRyeVBlcnNpc3RFcnJvcnMgPSBmYWxzZX0pIHtcbiAgICBsZXQgYXR0ZW1wdCA9IDBcbiAgICBjb25zdCBzdGFydFRpbWUgPSBEYXRlLm5vdygpXG5cbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgdGhpcy5yZXBvcnQoe2pvYklkLCBzdGF0dXMsIGVycm9yLCBoYW5kb2ZmSWQsIGhhbmRlZE9mZkF0TXMsIHdvcmtlcklkfSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAvLyBBIGBCYWNrZ3JvdW5kSm9iVXBkYXRlRXJyb3JgIG1lYW5zIG1haW4gYW5zd2VyZWQgYGpvYi11cGRhdGUtZXJyb3JgLCB3aGljaCBpdFxuICAgICAgICAvLyBvbmx5IHNlbmRzIHdoZW4gYHN0b3JlLm1hcmtDb21wbGV0ZWRgL2BtYXJrRmFpbGVkYCBUSFJPV1Mg4oCUIGEgdHJhbnNpZW50IERCXG4gICAgICAgIC8vIGZhaWx1cmUgKGRlYWRsb2NrLCBjb25uZWN0aW9uIHJlc2V0LCBsb2NrLXdhaXQgdGltZW91dCwgb3IgbWFpbidzIGNvbGRcbiAgICAgICAgLy8gY29ubmVjdGlvbiBwb29sIHJpZ2h0IGFmdGVyIGEgZGVwbG95IHJlc3RhcnQpLiBFdmVyeSBsb2dpY2FsIHJlamVjdGlvbiAoam9iXG4gICAgICAgIC8vIGdvbmUsIHN0YWxlIGhhbmRvZmYgbGVhc2UsIGFscmVhZHkgdGVybWluYWwpIGluc3RlYWQgYW5zd2VycyBgam9iLXVwZGF0ZWRgLFxuICAgICAgICAvLyBzbyBhbiB1cGRhdGUgZXJyb3IgaXMgYWx3YXlzIHRoZSB0cmFuc2llbnQsIHJldHJ5YWJsZSBraW5kLiBJdCBpcyByZXRyaWVkXG4gICAgICAgIC8vIG9ubHkgZm9yIHRoZSBsb25nLWxpdmVkIHdvcmtlciAoYHJldHJ5UGVyc2lzdEVycm9yc2ApLCB3aGljaCBjYW5ub3QgZXhpdCB0b1xuICAgICAgICAvLyB0cmlnZ2VyIG9ycGhhbiByZWNsYWltIGFuZCB3b3VsZCBvdGhlcndpc2UgZHJvcCB0aGUgY29tcGxldGlvbiBhbmQgc3RyYW5kIHRoZVxuICAgICAgICAvLyByb3cgaW4gYGhhbmRlZF9vZmZgIGZvcmV2ZXIg4oCUIGZhdGFsIGZvciBhIGBtYXhfY29uY3VycmVuY3k6IDFgIGpvYiBzdWNoIGFzIGFcbiAgICAgICAgLy8gYnVpbGQvcXVldWUgcGxhbm5lciwgd2hvc2Ugc2luZ2xlIHN0cmFuZGVkIHJvdyBibG9ja3MgZXZlcnkgZnV0dXJlIHJ1bi5cbiAgICAgICAgLy8gRm9ya2VkL3NwYXduZWQgcnVubmVycyBrZWVwIHRocm93aW5nIGl0IHNvIHRoZXkgZXhpdCBub24temVybyBhbmQgYXJlXG4gICAgICAgIC8vIHJlY2xhaW1lZCBpbnN0ZWFkLiBCb3VuZGVkIGJ5IGBtYXhEdXJhdGlvbk1zYCBlaXRoZXIgd2F5LlxuICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBCYWNrZ3JvdW5kSm9iVXBkYXRlRXJyb3IgJiYgIXJldHJ5UGVyc2lzdEVycm9ycykgdGhyb3cgZXJyb3JcblxuICAgICAgICBhdHRlbXB0ICs9IDFcbiAgICAgICAgY29uc3QgZGVsYXlTZWNvbmRzID0gTWF0aC5taW4oMzAsIDAuNSAqIGF0dGVtcHQpXG5cbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoKCkgPT4gW1wiQmFja2dyb3VuZCBqb2Igc3RhdHVzIHJlcG9ydCBmYWlsZWQsIHJldHJ5aW5nXCIsIGVycm9yXSlcblxuICAgICAgICBpZiAobWF4RHVyYXRpb25NcyAmJiBEYXRlLm5vdygpIC0gc3RhcnRUaW1lID49IG1heER1cmF0aW9uTXMpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci53YXJuKCgpID0+IFtcIkJhY2tncm91bmQgam9iIHN0YXR1cyByZXBvcnQgdGltZWQgb3V0LCBnaXZpbmcgdXBcIiwgZXJyb3JdKVxuICAgICAgICAgIHRocm93IGVycm9yXG4gICAgICAgIH1cblxuICAgICAgICBhd2FpdCB3YWl0KGRlbGF5U2Vjb25kcylcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIl19
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXJlcG9ydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhY2tncm91bmQtam9icy9zdGF0dXMtcmVwb3J0ZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sT0FBTyxNQUFNLDJCQUEyQixDQUFBO0FBQy9DLE9BQU8sSUFBSSxNQUFNLHdCQUF3QixDQUFBO0FBQ3pDLE9BQU8sTUFBTSxNQUFNLGNBQWMsQ0FBQTtBQUNqQyxPQUFPLDJCQUEyQixNQUFNLHNCQUFzQixDQUFBO0FBQzlELE9BQU8sMkJBQTJCLE1BQU0scUJBQXFCLENBQUE7QUFFN0QsTUFBTSx3QkFBeUIsU0FBUSxLQUFLO0NBQUc7QUFFL0MsTUFBTSxDQUFDLE9BQU8sT0FBTyw0QkFBNEI7SUFDL0M7Ozs7Ozs7T0FPRztJQUNILFlBQVksRUFBQyxhQUFhLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsR0FBRyxJQUFJLEVBQUM7UUFDOUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUE7UUFDbEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUE7UUFDaEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUE7UUFDaEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFBO1FBQ3hDOzs7OztXQUtHO1FBQ0gsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUE7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFDO1FBQzlFLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVC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RUFBK0U7Z0JBQy9FLDBFQUEwRTtnQkFDMUUsd0VBQXdFO2dCQUN4RSw0REFBNEQ7Z0JBQzVELElBQUksS0FBSyxZQUFZLHdCQUF3QixJQUFJLENBQUMsa0JBQWtCO29CQUFFLE1BQU0sS0FBSyxDQUFBO2dCQUVqRixPQUFPLElBQUksQ0FBQyxDQUFBO2dCQUNaLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEdBQUcsR0FBRyxPQUFPLENBQUMsQ0FBQTtnQkFFaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQywrQ0FBK0MsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFBO2dCQUVqRixJQUFJLGFBQWEsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsU0FBUyxJQUFJLGFBQWEsRUFBRSxDQUFDO29CQUM3RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLG1EQUFtRCxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUE7b0JBQ3BGLE1BQU0sS0FBSyxDQUFBO2dCQUNiLENBQUM7Z0JBRUQsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUE7WUFDMUIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0NBRUYiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IHRpbWVvdXQgZnJvbSBcImF3YWl0ZXJ5L2J1aWxkL3RpbWVvdXQuanNcIlxuaW1wb3J0IHdhaXQgZnJvbSBcImF3YWl0ZXJ5L2J1aWxkL3dhaXQuanNcIlxuaW1wb3J0IExvZ2dlciBmcm9tIFwiLi4vbG9nZ2VyLmpzXCJcbmltcG9ydCBub3JtYWxpemVCYWNrZ3JvdW5kSm9iRXJyb3IgZnJvbSBcIi4vbm9ybWFsaXplLWVycm9yLmpzXCJcbmltcG9ydCBCYWNrZ3JvdW5kSm9ic1NvY2tldFJlcXVlc3QgZnJvbSBcIi4vc29ja2V0LXJlcXVlc3QuanNcIlxuXG5jbGFzcyBCYWNrZ3JvdW5kSm9iVXBkYXRlRXJyb3IgZXh0ZW5kcyBFcnJvciB7fVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBCYWNrZ3JvdW5kSm9ic1N0YXR1c1JlcG9ydGVyIHtcbiAgLyoqXG4gICAqIFJ1bnMgY29uc3RydWN0b3IuXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBhcmdzIC0gT3B0aW9ucy5cbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuLi9jb25maWd1cmF0aW9uLmpzXCIpLmRlZmF1bHR9IGFyZ3MuY29uZmlndXJhdGlvbiAtIENvbmZpZ3VyYXRpb24uXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbYXJncy5ob3N0XSAtIEhvc3QuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbYXJncy5wb3J0XSAtIFBvcnQuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbYXJncy5hdHRlbXB0VGltZW91dE1zXSAtIFBlci1hdHRlbXB0IHNvY2tldC1yZXF1ZXN0IHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzIChkZWZhdWx0OiA1MDAwKS5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHtjb25maWd1cmF0aW9uLCBob3N0LCBwb3J0LCBhdHRlbXB0VGltZW91dE1zID0gNTAwMH0pIHtcbiAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSBjb25maWd1cmF0aW9uXG4gICAgdGhpcy5ob3N0ID0gaG9zdFxuICAgIHRoaXMucG9ydCA9IHBvcnRcbiAgICB0aGlzLmF0dGVtcHRUaW1lb3V0TXMgPSBhdHRlbXB0VGltZW91dE1zXG4gICAgLyoqXG4gICAgICogSW50ZXJuYWwgdGVzdC1vbmx5IG9ic2VydmFiaWxpdHkgc3RhdGUg4oCUIE5PVCBwdWJsaWMgQVBJLiBSZWZlcmVuY2VzIHRoZSBtb3N0XG4gICAgICogcmVjZW50IHNvY2tldCByZXF1ZXN0IHNvIHRoZSB0aW1lb3V0IHNwZWMgY2FuIGluc3BlY3QgaG93IGl0cyBzb2NrZXQgd2FzIHRvcm5cbiAgICAgKiBkb3duLiBEbyBub3QgZXhwb3NlIG9yIGRlcGVuZCBvbiB0aGlzIG91dHNpZGUgdGVzdHMuXG4gICAgICogQHR5cGUge0JhY2tncm91bmRKb2JzU29ja2V0UmVxdWVzdCB8IHVuZGVmaW5lZH1cbiAgICAgKi9cbiAgICB0aGlzLl9sYXN0UmVxdWVzdCA9IHVuZGVmaW5lZFxuICAgIHRoaXMubG9nZ2VyID0gbmV3IExvZ2dlcih0aGlzKVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bnMgcmVwb3J0LlxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJncyAtIE9wdGlvbnMuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhcmdzLmpvYklkIC0gSm9iIGlkLlxuICAgKiBAcGFyYW0ge1wiY29tcGxldGVkXCIgfCBcImZhaWxlZFwiIHwgXCJyZXNjaGVkdWxlZFwifSBhcmdzLnN0YXR1cyAtIFN0YXR1cy5cbiAgICogQHBhcmFtIHtudW1iZXJ9IFthcmdzLmRlbGF5TXNdIC0gUmVzY2hlZHVsZSBkZWxheSBpbiBtaWxsaXNlY29uZHMuXG4gICAqIEBwYXJhbSB7UmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59IFthcmdzLmVycm9yXSAtIEVycm9yLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FyZ3MuaGFuZG9mZklkXSAtIEhhbmRvZmYgbGVhc2UgaWQuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbYXJncy5oYW5kZWRPZmZBdE1zXSAtIEhhbmRlZCBvZmYgdGltZXN0YW1wLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FyZ3Mud29ya2VySWRdIC0gV29ya2VyIGlkLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aGVuIHJlcG9ydGVkLlxuICAgKi9cbiAgYXN5bmMgcmVwb3J0KHtqb2JJZCwgc3RhdHVzLCBkZWxheU1zLCBlcnJvciwgaGFuZG9mZklkLCBoYW5kZWRPZmZBdE1zLCB3b3JrZXJJZH0pIHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbmZpZ3VyYXRpb24uZ2V0QmFja2dyb3VuZEpvYnNDb25maWcoKVxuICAgIGNvbnN0IGhvc3QgPSB0aGlzLmhvc3QgfHwgY29uZmlnLmhvc3RcbiAgICBjb25zdCBwb3J0ID0gdHlwZW9mIHRoaXMucG9ydCA9PT0gXCJudW1iZXJcIiA/IHRoaXMucG9ydCA6IGNvbmZpZy5wb3J0XG5cbiAgICBhd2FpdCB0aW1lb3V0KHt0aW1lb3V0OiB0aGlzLmF0dGVtcHRUaW1lb3V0TXN9LCBhc3luYyAoe2NvbnRyb2x9KSA9PiB7XG4gICAgICBjb25zdCByZXF1ZXN0ID0gbmV3IEJhY2tncm91bmRKb2JzU29ja2V0UmVxdWVzdCh7aG9zdCwgcG9ydCwgcm9sZTogXCJyZXBvcnRlclwifSlcblxuICAgICAgdGhpcy5fbGFzdFJlcXVlc3QgPSByZXF1ZXN0XG5cbiAgICAgIGF3YWl0IHJlcXVlc3QucnVuKHtcbiAgICAgICAgc2lnbmFsOiBjb250cm9sLnNpZ25hbCxcbiAgICAgICAgb25Db25uZWN0OiAoanNvblNvY2tldCkgPT4ge1xuICAgICAgICAgIGpzb25Tb2NrZXQuc2VuZCh7XG4gICAgICAgICAgICB0eXBlOiBzdGF0dXMgPT09IFwiY29tcGxldGVkXCIgPyBcImpvYi1jb21wbGV0ZVwiIDogc3RhdHVzID09PSBcInJlc2NoZWR1bGVkXCIgPyBcImpvYi1yZXNjaGVkdWxlXCIgOiBcImpvYi1mYWlsZWRcIixcbiAgICAgICAgICAgIGpvYklkLFxuICAgICAgICAgICAgZGVsYXlNcyxcbiAgICAgICAgICAgIGhhbmRvZmZJZCxcbiAgICAgICAgICAgIHdvcmtlcklkLFxuICAgICAgICAgICAgaGFuZGVkT2ZmQXRNcyxcbiAgICAgICAgICAgIGVycm9yOiBlcnJvciA/IG5vcm1hbGl6ZUJhY2tncm91bmRKb2JFcnJvcihlcnJvcikgOiB1bmRlZmluZWRcbiAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgICAgICBvbk1lc3NhZ2U6ICh7bWVzc2FnZSwgcmVzb2x2ZSwgcmVqZWN0fSkgPT4ge1xuICAgICAgICAgIGlmIChtZXNzYWdlPy50eXBlID09PSBcImpvYi11cGRhdGVkXCIgJiYgbWVzc2FnZS5qb2JJZCA9PT0gam9iSWQpIHtcbiAgICAgICAgICAgIHJlc29sdmUodW5kZWZpbmVkKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKG1lc3NhZ2U/LnR5cGUgPT09IFwiam9iLXVwZGF0ZS1lcnJvclwiICYmIG1lc3NhZ2Uuam9iSWQgPT09IGpvYklkKSB7XG4gICAgICAgICAgICByZWplY3QobmV3IEJhY2tncm91bmRKb2JVcGRhdGVFcnJvcihtZXNzYWdlLmVycm9yIHx8IFwiSm9iIHVwZGF0ZSBmYWlsZWRcIikpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogUnVucyByZXBvcnQgd2l0aCByZXRyeS5cbiAgICogQHBhcmFtIHtvYmplY3R9IGFyZ3MgLSBPcHRpb25zLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy5qb2JJZCAtIEpvYiBpZC5cbiAgICogQHBhcmFtIHtcImNvbXBsZXRlZFwiIHwgXCJmYWlsZWRcIiB8IFwicmVzY2hlZHVsZWRcIn0gYXJncy5zdGF0dXMgLSBTdGF0dXMuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbYXJncy5kZWxheU1zXSAtIFJlc2NoZWR1bGUgZGVsYXkgaW4gbWlsbGlzZWNvbmRzLlxuICAgKiBAcGFyYW0ge1JldHVyblR5cGU8dHlwZW9mIEpTT04ucGFyc2U+fSBbYXJncy5lcnJvcl0gLSBFcnJvci5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFthcmdzLmhhbmRvZmZJZF0gLSBIYW5kb2ZmIGxlYXNlIGlkLlxuICAgKiBAcGFyYW0ge251bWJlcn0gW2FyZ3MuaGFuZGVkT2ZmQXRNc10gLSBIYW5kZWQgb2ZmIHRpbWVzdGFtcC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFthcmdzLndvcmtlcklkXSAtIFdvcmtlciBpZC5cbiAgICogQHBhcmFtIHtudW1iZXJ9IFthcmdzLm1heER1cmF0aW9uTXNdIC0gTWF4IGR1cmF0aW9uIGZvciByZXRyaWVzLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFthcmdzLnJldHJ5UGVyc2lzdEVycm9yc10gLSBSZXRyeSBhIGBCYWNrZ3JvdW5kSm9iVXBkYXRlRXJyb3JgIChtYWluJ3MgYGpvYi11cGRhdGUtZXJyb3JgLCBpLmUuIGEgdHJhbnNpZW50IERCIGZhaWx1cmUgd2hpbGUgcGVyc2lzdGluZyB0aGUgdGVybWluYWwgc3RhdHVzKSBpbnN0ZWFkIG9mIHRocm93aW5nIGltbWVkaWF0ZWx5LiBPZmYgYnkgZGVmYXVsdCBzbyBzaG9ydC1saXZlZCBmb3JrZWQvc3Bhd25lZCBydW5uZXJzIGtlZXAgZmFpbGluZyBsb3VkbHkgYW5kIGV4aXQgbm9uLXplcm8gdG8gYmUgcmVjbGFpbWVkOyBvbiBmb3IgdGhlIGxvbmctbGl2ZWQgd29ya2VyLCB3aGljaCBjYW5ub3QgZXhpdC10by1yZWNsYWltIGFuZCB3b3VsZCBvdGhlcndpc2Ugc3RyYW5kIHRoZSBqb2IgaW4gYGhhbmRlZF9vZmZgLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aGVuIHJlcG9ydGVkLlxuICAgKi9cbiAgYXN5bmMgcmVwb3J0V2l0aFJldHJ5KHtqb2JJZCwgc3RhdHVzLCBkZWxheU1zLCBlcnJvciwgaGFuZG9mZklkLCBoYW5kZWRPZmZBdE1zLCB3b3JrZXJJZCwgbWF4RHVyYXRpb25NcywgcmV0cnlQZXJzaXN0RXJyb3JzID0gZmFsc2V9KSB7XG4gICAgbGV0IGF0dGVtcHQgPSAwXG4gICAgY29uc3Qgc3RhcnRUaW1lID0gRGF0ZS5ub3coKVxuXG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IHRoaXMucmVwb3J0KHtqb2JJZCwgc3RhdHVzLCBkZWxheU1zLCBlcnJvciwgaGFuZG9mZklkLCBoYW5kZWRPZmZBdE1zLCB3b3JrZXJJZH0pXG4gICAgICAgIHJldHVyblxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgLy8gQSBgQmFja2dyb3VuZEpvYlVwZGF0ZUVycm9yYCBtZWFucyBtYWluIGFuc3dlcmVkIGBqb2ItdXBkYXRlLWVycm9yYCwgd2hpY2ggaXRcbiAgICAgICAgLy8gb25seSBzZW5kcyB3aGVuIGBzdG9yZS5tYXJrQ29tcGxldGVkYC9gbWFya0ZhaWxlZGAgVEhST1dTIOKAlCBhIHRyYW5zaWVudCBEQlxuICAgICAgICAvLyBmYWlsdXJlIChkZWFkbG9jaywgY29ubmVjdGlvbiByZXNldCwgbG9jay13YWl0IHRpbWVvdXQsIG9yIG1haW4ncyBjb2xkXG4gICAgICAgIC8vIGNvbm5lY3Rpb24gcG9vbCByaWdodCBhZnRlciBhIGRlcGxveSByZXN0YXJ0KS4gRXZlcnkgbG9naWNhbCByZWplY3Rpb24gKGpvYlxuICAgICAgICAvLyBnb25lLCBzdGFsZSBoYW5kb2ZmIGxlYXNlLCBhbHJlYWR5IHRlcm1pbmFsKSBpbnN0ZWFkIGFuc3dlcnMgYGpvYi11cGRhdGVkYCxcbiAgICAgICAgLy8gc28gYW4gdXBkYXRlIGVycm9yIGlzIGFsd2F5cyB0aGUgdHJhbnNpZW50LCByZXRyeWFibGUga2luZC4gSXQgaXMgcmV0cmllZFxuICAgICAgICAvLyBvbmx5IGZvciB0aGUgbG9uZy1saXZlZCB3b3JrZXIgKGByZXRyeVBlcnNpc3RFcnJvcnNgKSwgd2hpY2ggY2Fubm90IGV4aXQgdG9cbiAgICAgICAgLy8gdHJpZ2dlciBvcnBoYW4gcmVjbGFpbSBhbmQgd291bGQgb3RoZXJ3aXNlIGRyb3AgdGhlIGNvbXBsZXRpb24gYW5kIHN0cmFuZCB0aGVcbiAgICAgICAgLy8gcm93IGluIGBoYW5kZWRfb2ZmYCBmb3JldmVyIOKAlCBmYXRhbCBmb3IgYSBgbWF4X2NvbmN1cnJlbmN5OiAxYCBqb2Igc3VjaCBhcyBhXG4gICAgICAgIC8vIGJ1aWxkL3F1ZXVlIHBsYW5uZXIsIHdob3NlIHNpbmdsZSBzdHJhbmRlZCByb3cgYmxvY2tzIGV2ZXJ5IGZ1dHVyZSBydW4uXG4gICAgICAgIC8vIEZvcmtlZC9zcGF3bmVkIHJ1bm5lcnMga2VlcCB0aHJvd2luZyBpdCBzbyB0aGV5IGV4aXQgbm9uLXplcm8gYW5kIGFyZVxuICAgICAgICAvLyByZWNsYWltZWQgaW5zdGVhZC4gQm91bmRlZCBieSBgbWF4RHVyYXRpb25Nc2AgZWl0aGVyIHdheS5cbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgQmFja2dyb3VuZEpvYlVwZGF0ZUVycm9yICYmICFyZXRyeVBlcnNpc3RFcnJvcnMpIHRocm93IGVycm9yXG5cbiAgICAgICAgYXR0ZW1wdCArPSAxXG4gICAgICAgIGNvbnN0IGRlbGF5U2Vjb25kcyA9IE1hdGgubWluKDMwLCAwLjUgKiBhdHRlbXB0KVxuXG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCgpID0+IFtcIkJhY2tncm91bmQgam9iIHN0YXR1cyByZXBvcnQgZmFpbGVkLCByZXRyeWluZ1wiLCBlcnJvcl0pXG5cbiAgICAgICAgaWYgKG1heER1cmF0aW9uTXMgJiYgRGF0ZS5ub3coKSAtIHN0YXJ0VGltZSA+PSBtYXhEdXJhdGlvbk1zKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIud2FybigoKSA9PiBbXCJCYWNrZ3JvdW5kIGpvYiBzdGF0dXMgcmVwb3J0IHRpbWVkIG91dCwgZ2l2aW5nIHVwXCIsIGVycm9yXSlcbiAgICAgICAgICB0aHJvdyBlcnJvclxuICAgICAgICB9XG5cbiAgICAgICAgYXdhaXQgd2FpdChkZWxheVNlY29uZHMpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
|
|
@@ -256,6 +256,24 @@ export default class BackgroundJobsStore {
|
|
|
256
256
|
workerId?: string;
|
|
257
257
|
handedOffAtMs?: number;
|
|
258
258
|
}): Promise<boolean>;
|
|
259
|
+
/**
|
|
260
|
+
* Returns an active handoff to the queue at a caller-requested future time.
|
|
261
|
+
* This is normal job control flow: it preserves failure attempts and metadata.
|
|
262
|
+
* @param {object} args - Options.
|
|
263
|
+
* @param {string} args.jobId - Job id.
|
|
264
|
+
* @param {number} args.delayMs - Delay from persistence time in milliseconds.
|
|
265
|
+
* @param {string} [args.handoffId] - Handoff lease id.
|
|
266
|
+
* @param {string} [args.workerId] - Worker id.
|
|
267
|
+
* @param {number} [args.handedOffAtMs] - Handed off timestamp.
|
|
268
|
+
* @returns {Promise<boolean>} - Whether the fenced report was accepted.
|
|
269
|
+
*/
|
|
270
|
+
markRescheduled({ jobId, delayMs, handoffId, workerId, handedOffAtMs }: {
|
|
271
|
+
jobId: string;
|
|
272
|
+
delayMs: number;
|
|
273
|
+
handoffId?: string;
|
|
274
|
+
workerId?: string;
|
|
275
|
+
handedOffAtMs?: number;
|
|
276
|
+
}): Promise<boolean>;
|
|
259
277
|
/**
|
|
260
278
|
* Runs mark returned to queue.
|
|
261
279
|
* @param {object} args - Options.
|
|
@@ -401,6 +419,18 @@ export default class BackgroundJobsStore {
|
|
|
401
419
|
* @returns {number} - Dispatch timestamp.
|
|
402
420
|
*/
|
|
403
421
|
_normalizeScheduledAtMs(scheduledAtMs: number | undefined, defaultScheduledAtMs: number): number;
|
|
422
|
+
/**
|
|
423
|
+
* Resolves a reschedule delay against persistence time.
|
|
424
|
+
* @param {number} delayMs - Delay in milliseconds.
|
|
425
|
+
* @returns {number} - Future eligibility timestamp.
|
|
426
|
+
*/
|
|
427
|
+
_rescheduledAtMs(delayMs: number): number;
|
|
428
|
+
/**
|
|
429
|
+
* Validates a public reschedule delay before persistence work begins.
|
|
430
|
+
* @param {number} delayMs - Delay in milliseconds.
|
|
431
|
+
* @returns {void}
|
|
432
|
+
*/
|
|
433
|
+
_validateRescheduleDelayMs(delayMs: number): void;
|
|
404
434
|
/**
|
|
405
435
|
* Validates a stable schedule key at the public storage boundary.
|
|
406
436
|
* @param {string} scheduleKey - Stable logical schedule key.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/store.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/store.js"],"names":[],"mappings":"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"}
|