velocious 1.0.608 → 1.0.610

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 CHANGED
@@ -2396,7 +2396,7 @@ VELOCIOUS_BACKGROUND_JOBS_JOB_TIMEOUT_MS=5400000
2396
2396
 
2397
2397
  `maxConcurrentInlineJobs` (default: `4`) caps how many `executionMode: "inline"` jobs a single `background-jobs-worker` process runs in parallel. Concurrency is at the JS event-loop level: every job in flight shares the worker's process and DB connection pool, so the cap should fit the pool, not the CPU count. Forking remains the right tool when you need memory isolation across long-running jobs or want to use more cores; select it with `executionMode: "forked"`.
2398
2398
 
2399
- New jobs default to `executionMode: "pooled"`: a worker runs them in warm, reusable Node child runners. `pooledRunnerCount` (default: `4`) bounds this independent per-worker pool, and `pooledRunnerConcurrency` (default: `1`) sets how many jobs each child runs at once on its own event loop, so total pooled capacity is `pooledRunnerCount × pooledRunnerConcurrency` — raise concurrency for I/O-bound jobs to get high throughput from a bounded, isolated set of processes. `pooledRunnerCount`, `pooledRunnerConcurrency`, and `pooledRunnerMaxJobs` must be finite positive integers; the RSS and lifetime limits must be finite positive numbers. A child is recycled after an acknowledged job when it reaches `pooledRunnerMaxJobs` (default: `100`), `pooledRunnerMaxRssBytes` (default: `536870912`, or 512 MiB), or `pooledRunnerMaxLifetimeMs` (default: `3600000`, or one hour). `execution_mode` is the single source of truth for a job's runtime — pooled rows persist as `execution_mode = "pooled"` directly. See [execution modes and pooled runners](docs/background-jobs.md#execution-modes-and-pooled-runners).
2399
+ New jobs default to `executionMode: "pooled"`: a worker runs them in warm, reusable Node child runners. `pooledRunnerCount` (default: `4`) bounds this independent per-worker pool, and `pooledRunnerConcurrency` (default: `1`) sets how many jobs each child runs at once on its own event loop, so total pooled capacity is `pooledRunnerCount × pooledRunnerConcurrency` — raise concurrency for I/O-bound jobs to get high throughput from a bounded, isolated set of processes. Workers advertise that exact free-slot count and the main consumes one slot per durable handoff, allowing one readiness notification to fill the pool. `pooledRunnerCount`, `pooledRunnerConcurrency`, and `pooledRunnerMaxJobs` must be finite positive integers; the RSS and lifetime limits must be finite positive numbers. A child is recycled after an acknowledged job when it reaches `pooledRunnerMaxJobs` (default: `100`), `pooledRunnerMaxRssBytes` (default: `536870912`, or 512 MiB), or `pooledRunnerMaxLifetimeMs` (default: `3600000`, or one hour). `execution_mode` is the single source of truth for a job's runtime — pooled rows persist as `execution_mode = "pooled"` directly. See [execution modes and pooled runners](docs/background-jobs.md#execution-modes-and-pooled-runners).
2400
2400
 
2401
2401
  Cold pooled jobs share one atomic model-bootstrap phase. If that phase fails, all
2402
2402
  waiting jobs receive the failure; a later job in the surviving child cannot run
@@ -28,6 +28,10 @@ export default class JsonSocket extends EventEmitter {
28
28
  this.acceptsForkedJobs = true
29
29
  /** @type {boolean} */
30
30
  this.acceptsPooledJobs = false
31
+ /** Number of pooled handoffs this readiness advertisement can accept. */
32
+ this.availablePooledSlots = 0
33
+ /** Whether the worker/main pair uses consumable pooled-capacity credits. */
34
+ this.usesPooledCapacityCredits = false
31
35
  /**
32
36
  * Narrows the runtime value to the documented type.
33
37
  * @type {boolean} */
@@ -44,7 +44,7 @@ const WORKER_EXECUTION_MODE_CAPABILITIES = [
44
44
  // pre-pooled worker — which never sends the field — out of the pooled-capable
45
45
  // set, so the main never dispatches a pooled job to a worker that cannot run
46
46
  // one. This is the conservative half of the extended readiness protocol.
47
- {executionMode: "pooled", accepts: (worker) => worker.acceptsPooledJobs === true},
47
+ {executionMode: "pooled", accepts: (worker) => worker.acceptsPooledJobs === true && (!worker.usesPooledCapacityCredits || worker.availablePooledSlots > 0)},
48
48
  {executionMode: "spawned", accepts: (worker) => worker.acceptsSpawnedJobs !== false}
49
49
  ]
50
50
  const WORKER_EXECUTION_MODE_CAPABILITIES_BY_MODE = new Map(
@@ -670,6 +670,11 @@ export default class BackgroundJobsMain {
670
670
  jsonSocket.acceptsSpawnedJobs = message.acceptsSpawned !== false && message.acceptsForked !== false
671
671
  jsonSocket.acceptsForkedJobs = message.acceptsForked !== false
672
672
  jsonSocket.acceptsPooledJobs = message.acceptsPooled === true
673
+ const availablePooledSlots = message.availablePooledSlots
674
+ jsonSocket.usesPooledCapacityCredits = Number.isInteger(availablePooledSlots)
675
+ jsonSocket.availablePooledSlots = Number.isInteger(availablePooledSlots) && availablePooledSlots !== undefined && availablePooledSlots > 0
676
+ ? availablePooledSlots
677
+ : 0
673
678
  jsonSocket.acceptsInlineJobs = message.acceptsInline !== false
674
679
  if (jsonSocket.supportsHandoffIdReporting) {
675
680
  this.readyWorkers.add(jsonSocket)
@@ -1325,9 +1330,15 @@ export default class BackgroundJobsMain {
1325
1330
 
1326
1331
  this.readyWorkers.delete(worker)
1327
1332
 
1333
+ if (job.executionMode === "pooled" && worker.usesPooledCapacityCredits && worker.availablePooledSlots > 0) {
1334
+ worker.availablePooledSlots -= 1
1335
+ if (worker.availablePooledSlots > 0) this.readyWorkers.add(worker)
1336
+ }
1337
+
1328
1338
  const handoff = await this.store.markHandedOff({jobId: job.id, workerId: worker.workerId})
1329
1339
 
1330
1340
  if (!handoff) {
1341
+ if (job.executionMode === "pooled" && worker.usesPooledCapacityCredits) worker.availablePooledSlots += 1
1331
1342
  if (this.workers.has(worker)) this.readyWorkers.add(worker)
1332
1343
  continue
1333
1344
  }
@@ -122,7 +122,7 @@
122
122
  */
123
123
  /**
124
124
  * @typedef {{type: "hello", role: BackgroundJobSocketRole, supportsHandoffIdReporting?: boolean, supportsHeartbeat?: boolean, supportsPooled?: boolean, workerId?: string}} BackgroundJobHelloMessage
125
- * @typedef {{type: "ready", acceptsForked?: boolean, acceptsInline?: boolean, acceptsPooled?: boolean, acceptsSpawned?: boolean}} BackgroundJobReadyMessage
125
+ * @typedef {{type: "ready", acceptsForked?: boolean, acceptsInline?: boolean, acceptsPooled?: boolean, acceptsSpawned?: boolean, availablePooledSlots?: number}} BackgroundJobReadyMessage
126
126
  * @typedef {{type: "draining"}} BackgroundJobDrainingMessage
127
127
  * @typedef {{type: "heartbeat", workerId?: string}} BackgroundJobHeartbeatMessage
128
128
  * @typedef {{type: "enqueue", jobName: string, args?: Array<ReturnType<typeof JSON.parse>>, options?: BackgroundJobOptions}} BackgroundJobEnqueueMessage
@@ -631,6 +631,7 @@ export default class BackgroundJobsWorker {
631
631
  acceptsForked: acceptsProcessJob,
632
632
  acceptsInline,
633
633
  acceptsPooled,
634
+ availablePooledSlots: this._availablePooledSlots(),
634
635
  acceptsSpawned: acceptsProcessJob
635
636
  }
636
637
  }
@@ -648,7 +649,6 @@ export default class BackgroundJobsWorker {
648
649
  if (!this.shouldStop) this._sendReadyIfRunning()
649
650
  })
650
651
  this.inflightPooledJobs.add(inflight)
651
- this._sendReadyIfRunning()
652
652
  }
653
653
 
654
654
  /**
@@ -19,6 +19,10 @@ export default class JsonSocket extends EventEmitter {
19
19
  acceptsForkedJobs: boolean;
20
20
  /** @type {boolean} */
21
21
  acceptsPooledJobs: boolean;
22
+ /** Number of pooled handoffs this readiness advertisement can accept. */
23
+ availablePooledSlots: number;
24
+ /** Whether the worker/main pair uses consumable pooled-capacity credits. */
25
+ usesPooledCapacityCredits: boolean;
22
26
  /**
23
27
  * Narrows the runtime value to the documented type.
24
28
  * @type {boolean} */
@@ -1 +1 @@
1
- {"version":3,"file":"json-socket.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/json-socket.js"],"names":[],"mappings":"AAEA,OAAO,YAAY,MAAM,2BAA2B,CAAA;AAEpD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,YAAY;IAO3C,MAAM;IACX;;oCAEgC;IAC3B,QAAQ,EADH,MAAM,GAAG,SAAS;IAE5B;;yBAEqB;IAChB,0BAA0B,EADrB,OAAO;IAEjB;;yBAEqB;IAChB,kBAAkB,EADb,OAAO;IAEjB;;yBAEqB;IAChB,iBAAiB,EADZ,OAAO;IAEjB,sBAAsB;IACjB,iBAAiB,EADX,OAAO;IAElB;;yBAEqB;IAChB,iBAAiB,EADZ,OAAO;IAEjB;;;;;yBAKqB;IAChB,iBAAiB,EADZ,OAAO;IAEjB;;;oCAGgC;IAC3B,UAAU,EADL,MAAM,GAAG,SAAS;IAE5B;;;;;wBAKoB;IACf,iBAAiB,EADZ,MAAM;IAEhB;;;;wBAIoB;IACf,eAAe,EADV,MAAM;IAEX,MAAM;IAtDb;;;OAGG;IACH,YAAY,MAAM,EAFP,OAAO,KAAK,EAAE,MAEP,EAuDjB;IAED;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAHF,MAGE,GAFA,IAAI,CAqBhB;IAED;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAHD,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAG3B,GAFC,IAAI,CAIhB;IAED;;;OAGG;IACH,KAAK,IAFQ,IAAI,CAKhB;IAED;;;;;OAKG;IACH,OAAO,IAFM,IAAI,CAKhB;CACF"}
1
+ {"version":3,"file":"json-socket.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/json-socket.js"],"names":[],"mappings":"AAEA,OAAO,YAAY,MAAM,2BAA2B,CAAA;AAEpD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,YAAY;IAO3C,MAAM;IACX;;oCAEgC;IAC3B,QAAQ,EADH,MAAM,GAAG,SAAS;IAE5B;;yBAEqB;IAChB,0BAA0B,EADrB,OAAO;IAEjB;;yBAEqB;IAChB,kBAAkB,EADb,OAAO;IAEjB;;yBAEqB;IAChB,iBAAiB,EADZ,OAAO;IAEjB,sBAAsB;IACjB,iBAAiB,EADX,OAAO;IAElB,yEAAyE;IACpE,oBAAoB;IACzB,4EAA4E;IACvE,yBAAyB;IAC9B;;yBAEqB;IAChB,iBAAiB,EADZ,OAAO;IAEjB;;;;;yBAKqB;IAChB,iBAAiB,EADZ,OAAO;IAEjB;;;oCAGgC;IAC3B,UAAU,EADL,MAAM,GAAG,SAAS;IAE5B;;;;;wBAKoB;IACf,iBAAiB,EADZ,MAAM;IAEhB;;;;wBAIoB;IACf,eAAe,EADV,MAAM;IAEX,MAAM;IA1Db;;;OAGG;IACH,YAAY,MAAM,EAFP,OAAO,KAAK,EAAE,MAEP,EA2DjB;IAED;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAHF,MAGE,GAFA,IAAI,CAqBhB;IAED;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAHD,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAG3B,GAFC,IAAI,CAIhB;IAED;;;OAGG;IACH,KAAK,IAFQ,IAAI,CAKhB;IAED;;;;;OAKG;IACH,OAAO,IAFM,IAAI,CAKhB;CACF"}
@@ -26,6 +26,10 @@ export default class JsonSocket extends EventEmitter {
26
26
  this.acceptsForkedJobs = true;
27
27
  /** @type {boolean} */
28
28
  this.acceptsPooledJobs = false;
29
+ /** Number of pooled handoffs this readiness advertisement can accept. */
30
+ this.availablePooledSlots = 0;
31
+ /** Whether the worker/main pair uses consumable pooled-capacity credits. */
32
+ this.usesPooledCapacityCredits = false;
29
33
  /**
30
34
  * Narrows the runtime value to the documented type.
31
35
  * @type {boolean} */
@@ -112,4 +116,4 @@ export default class JsonSocket extends EventEmitter {
112
116
  this.socket.destroy();
113
117
  }
114
118
  }
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1zb2NrZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFja2dyb3VuZC1qb2JzL2pzb24tc29ja2V0LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixPQUFPLFlBQVksTUFBTSwyQkFBMkIsQ0FBQTtBQUVwRCxNQUFNLENBQUMsT0FBTyxPQUFPLFVBQVcsU0FBUSxZQUFZO0lBQ2xEOzs7T0FHRztJQUNILFlBQVksTUFBTTtRQUNoQixLQUFLLEVBQUUsQ0FBQTtRQUNQLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCOzt3Q0FFZ0M7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUE7UUFDekI7OzZCQUVxQjtRQUNyQixJQUFJLENBQUMsMEJBQTBCLEdBQUcsS0FBSyxDQUFBO1FBQ3ZDOzs2QkFFcUI7UUFDckIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQTtRQUM5Qjs7NkJBRXFCO1FBQ3JCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUE7UUFDN0Isc0JBQXNCO1FBQ3RCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUE7UUFDOUI7OzZCQUVxQjtRQUNyQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFBO1FBQzdCOzs7Ozs2QkFLcUI7UUFDckIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQTtRQUM5Qjs7O3dDQUdnQztRQUNoQyxJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQTtRQUMzQjs7Ozs7NEJBS29CO1FBQ3BCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUE7UUFDMUI7Ozs7NEJBSW9CO1FBQ3BCLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFBO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlELElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUE7UUFDakQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFBO0lBQy9ELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLEtBQUs7UUFDWCxJQUFJLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQTtRQUVwQixPQUFPLElBQUksRUFBRSxDQUFDO1lBQ1osTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDOUMsSUFBSSxZQUFZLEtBQUssQ0FBQyxDQUFDO2dCQUFFLE1BQUs7WUFFOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ3RELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUFBO1lBRWpELElBQUksQ0FBQyxJQUFJO2dCQUFFLFNBQVE7WUFFbkIsSUFBSSxDQUFDO2dCQUNILE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFBO1lBQy9CLENBQUM7WUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO2dCQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFBO1lBQzNCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUFJLENBQUMsT0FBTztRQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkQsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUs7UUFDSCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFPO1FBQ0wsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUE7UUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUN2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IEV2ZW50RW1pdHRlciBmcm9tIFwiLi4vdXRpbHMvZXZlbnQtZW1pdHRlci5qc1wiXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEpzb25Tb2NrZXQgZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xuICAvKipcbiAgICogUnVucyBjb25zdHJ1Y3Rvci5cbiAgICogQHBhcmFtIHtpbXBvcnQoXCJuZXRcIikuU29ja2V0fSBzb2NrZXQgLSBTb2NrZXQgaW5zdGFuY2UuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihzb2NrZXQpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5zb2NrZXQgPSBzb2NrZXRcbiAgICAvKipcbiAgICAgKiBOYXJyb3dzIHRoZSBydW50aW1lIHZhbHVlIHRvIHRoZSBkb2N1bWVudGVkIHR5cGUuXG4gICAgICogQHR5cGUge3N0cmluZyB8IHVuZGVmaW5lZH0gKi9cbiAgICB0aGlzLndvcmtlcklkID0gdW5kZWZpbmVkXG4gICAgLyoqXG4gICAgICogTmFycm93cyB0aGUgcnVudGltZSB2YWx1ZSB0byB0aGUgZG9jdW1lbnRlZCB0eXBlLlxuICAgICAqIEB0eXBlIHtib29sZWFufSAqL1xuICAgIHRoaXMuc3VwcG9ydHNIYW5kb2ZmSWRSZXBvcnRpbmcgPSBmYWxzZVxuICAgIC8qKlxuICAgICAqIE5hcnJvd3MgdGhlIHJ1bnRpbWUgdmFsdWUgdG8gdGhlIGRvY3VtZW50ZWQgdHlwZS5cbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn0gKi9cbiAgICB0aGlzLmFjY2VwdHNTcGF3bmVkSm9icyA9IHRydWVcbiAgICAvKipcbiAgICAgKiBOYXJyb3dzIHRoZSBydW50aW1lIHZhbHVlIHRvIHRoZSBkb2N1bWVudGVkIHR5cGUuXG4gICAgICogQHR5cGUge2Jvb2xlYW59ICovXG4gICAgdGhpcy5hY2NlcHRzRm9ya2VkSm9icyA9IHRydWVcbiAgICAvKiogQHR5cGUge2Jvb2xlYW59ICovXG4gICAgdGhpcy5hY2NlcHRzUG9vbGVkSm9icyA9IGZhbHNlXG4gICAgLyoqXG4gICAgICogTmFycm93cyB0aGUgcnVudGltZSB2YWx1ZSB0byB0aGUgZG9jdW1lbnRlZCB0eXBlLlxuICAgICAqIEB0eXBlIHtib29sZWFufSAqL1xuICAgIHRoaXMuYWNjZXB0c0lubGluZUpvYnMgPSB0cnVlXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGlzIHdvcmtlciBhZHZlcnRpc2VkIGhlYXJ0YmVhdCBzdXBwb3J0IGluIGl0cyBoZWxsby4gT25seVxuICAgICAqIGhlYXJ0YmVhdC1jYXBhYmxlIHdvcmtlcnMgYXJlIHN1YmplY3QgdG8gdGhlIG1haW4ncyBzdGFsZS1saXZlbmVzc1xuICAgICAqIGV2aWN0aW9uOyBhIGxlZ2FjeSB3b3JrZXIgKGUuZy4gbWlkIHJvbGxpbmcgZGVwbG95KSBpcyBleGVtcHQgc28gaXRzXG4gICAgICogYWN0aXZlIGxlYXNlcyBhcmUgbm90IHJlbGVhc2VkIHdoaWxlIGl0IGlzIHN0aWxsIHJ1bm5pbmcgdGhlbS5cbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn0gKi9cbiAgICB0aGlzLnN1cHBvcnRzSGVhcnRiZWF0ID0gZmFsc2VcbiAgICAvKipcbiAgICAgKiBMYXN0IHRpbWUgKG1zKSB0aGUgbWFpbiBzYXcgYW55IG1lc3NhZ2UgZnJvbSB0aGlzIHdvcmtlciBzb2NrZXQ7IHVzZWQgYnlcbiAgICAgKiB0aGUgbWFpbidzIGxpdmVuZXNzIHN3ZWVwIHRvIGRyb3AgYSB3ZWRnZWQvc2lsZW50IHdvcmtlci5cbiAgICAgKiBAdHlwZSB7bnVtYmVyIHwgdW5kZWZpbmVkfSAqL1xuICAgIHRoaXMubGFzdFNlZW5BdCA9IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIEludGVybmFsIHRlc3Qtb25seSBvYnNlcnZhYmlsaXR5IGNvdW50ZXIg4oCUIE5PVCBwdWJsaWMgQVBJLiBOdW1iZXIgb2YgdGltZXNcbiAgICAgKiBgZGVzdHJveSgpYCBoYXMgcnVuLCBpbmNyZW1lbnRlZCBpbW1lZGlhdGVseSBiZWZvcmUgdGhlIHJhdyBzb2NrZXRcbiAgICAgKiBgZGVzdHJveSgpYCBjYWxsIHNvIHNwZWNzIGNhbiBhc3NlcnQgdGhlIGFjdHVhbCB0ZWFyZG93biBtZXRob2QgdGhhdCByYW5cbiAgICAgKiByYXRoZXIgdGhhbiBhIHNlbGYtcmVwb3J0ZWQgZmxhZy4gRG8gbm90IHJlYWQgb3IgZGVwZW5kIG9uIHRoaXMgb3V0c2lkZSB0ZXN0cy5cbiAgICAgKiBAdHlwZSB7bnVtYmVyfSAqL1xuICAgIHRoaXMuX2Rlc3Ryb3lDYWxsQ291bnQgPSAwXG4gICAgLyoqXG4gICAgICogSW50ZXJuYWwgdGVzdC1vbmx5IG9ic2VydmFiaWxpdHkgY291bnRlciDigJQgTk9UIHB1YmxpYyBBUEkuIE51bWJlciBvZiB0aW1lc1xuICAgICAqIGBjbG9zZSgpYCBoYXMgcnVuLCBpbmNyZW1lbnRlZCBpbW1lZGlhdGVseSBiZWZvcmUgdGhlIHJhdyBzb2NrZXQgYGVuZCgpYFxuICAgICAqIGNhbGwuIERvIG5vdCByZWFkIG9yIGRlcGVuZCBvbiB0aGlzIG91dHNpZGUgdGVzdHMuXG4gICAgICogQHR5cGUge251bWJlcn0gKi9cbiAgICB0aGlzLl9jbG9zZUNhbGxDb3VudCA9IDBcbiAgICB0aGlzLmJ1ZmZlciA9IFwiXCJcbiAgICB0aGlzLnNvY2tldC5zZXRFbmNvZGluZyhcInV0ZjhcIilcbiAgICB0aGlzLnNvY2tldC5vbihcImRhdGFcIiwgKGNodW5rKSA9PiB0aGlzLl9vbkRhdGEoU3RyaW5nKGNodW5rKSkpXG4gICAgdGhpcy5zb2NrZXQub24oXCJjbG9zZVwiLCAoKSA9PiB0aGlzLmVtaXQoXCJjbG9zZVwiKSlcbiAgICB0aGlzLnNvY2tldC5vbihcImVycm9yXCIsIChlcnJvcikgPT4gdGhpcy5lbWl0KFwiZXJyb3JcIiwgZXJyb3IpKVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bnMgb24gZGF0YS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGNodW5rIC0gRGF0YSBjaHVuay5cbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBfb25EYXRhKGNodW5rKSB7XG4gICAgdGhpcy5idWZmZXIgKz0gY2h1bmtcblxuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICBjb25zdCBuZXdsaW5lSW5kZXggPSB0aGlzLmJ1ZmZlci5pbmRleE9mKFwiXFxuXCIpXG4gICAgICBpZiAobmV3bGluZUluZGV4ID09PSAtMSkgYnJlYWtcblxuICAgICAgY29uc3QgbGluZSA9IHRoaXMuYnVmZmVyLnNsaWNlKDAsIG5ld2xpbmVJbmRleCkudHJpbSgpXG4gICAgICB0aGlzLmJ1ZmZlciA9IHRoaXMuYnVmZmVyLnNsaWNlKG5ld2xpbmVJbmRleCArIDEpXG5cbiAgICAgIGlmICghbGluZSkgY29udGludWVcblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IEpTT04ucGFyc2UobGluZSlcbiAgICAgICAgdGhpcy5lbWl0KFwibWVzc2FnZVwiLCBtZXNzYWdlKVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgdGhpcy5lbWl0KFwiZXJyb3JcIiwgZXJyb3IpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bnMgc2VuZC5cbiAgICogQHBhcmFtIHtSZXR1cm5UeXBlPHR5cGVvZiBKU09OLnBhcnNlPn0gbWVzc2FnZSAtIE1lc3NhZ2UgdG8gc2VuZC5cbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBzZW5kKG1lc3NhZ2UpIHtcbiAgICB0aGlzLnNvY2tldC53cml0ZShgJHtKU09OLnN0cmluZ2lmeShtZXNzYWdlKX1cXG5gKVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bnMgY2xvc2UuXG4gICAqIEByZXR1cm5zIHt2b2lkfVxuICAgKi9cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5fY2xvc2VDYWxsQ291bnQrK1xuICAgIHRoaXMuc29ja2V0LmVuZCgpXG4gIH1cblxuICAvKipcbiAgICogRm9yY2libHkgZGVzdHJveXMgdGhlIHVuZGVybHlpbmcgc29ja2V0LiBVbmxpa2Uge0BsaW5rIGNsb3NlfSwgd2hpY2hcbiAgICogaGFsZi1jbG9zZXMgZ3JhY2VmdWxseSB2aWEgYGVuZCgpYCwgdGhpcyB0ZWFycyB0aGUgY29ubmVjdGlvbiBkb3duXG4gICAqIGltbWVkaWF0ZWx5IHNvIGEgc3RhbGxlZC9hYm9ydGVkIHJlcXVlc3QgZG9lcyBub3QgbGVhdmUgdGhlIHNvY2tldCBhbGl2ZS5cbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBkZXN0cm95KCkge1xuICAgIHRoaXMuX2Rlc3Ryb3lDYWxsQ291bnQrK1xuICAgIHRoaXMuc29ja2V0LmRlc3Ryb3koKVxuICB9XG59XG4iXX0=
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1zb2NrZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFja2dyb3VuZC1qb2JzL2pzb24tc29ja2V0LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixPQUFPLFlBQVksTUFBTSwyQkFBMkIsQ0FBQTtBQUVwRCxNQUFNLENBQUMsT0FBTyxPQUFPLFVBQVcsU0FBUSxZQUFZO0lBQ2xEOzs7T0FHRztJQUNILFlBQVksTUFBTTtRQUNoQixLQUFLLEVBQUUsQ0FBQTtRQUNQLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCOzt3Q0FFZ0M7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUE7UUFDekI7OzZCQUVxQjtRQUNyQixJQUFJLENBQUMsMEJBQTBCLEdBQUcsS0FBSyxDQUFBO1FBQ3ZDOzs2QkFFcUI7UUFDckIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQTtRQUM5Qjs7NkJBRXFCO1FBQ3JCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUE7UUFDN0Isc0JBQXNCO1FBQ3RCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUE7UUFDOUIseUVBQXlFO1FBQ3pFLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLENBQUE7UUFDN0IsNEVBQTRFO1FBQzVFLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxLQUFLLENBQUE7UUFDdEM7OzZCQUVxQjtRQUNyQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFBO1FBQzdCOzs7Ozs2QkFLcUI7UUFDckIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQTtRQUM5Qjs7O3dDQUdnQztRQUNoQyxJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQTtRQUMzQjs7Ozs7NEJBS29CO1FBQ3BCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUE7UUFDMUI7Ozs7NEJBSW9CO1FBQ3BCLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFBO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlELElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUE7UUFDakQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFBO0lBQy9ELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLEtBQUs7UUFDWCxJQUFJLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQTtRQUVwQixPQUFPLElBQUksRUFBRSxDQUFDO1lBQ1osTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDOUMsSUFBSSxZQUFZLEtBQUssQ0FBQyxDQUFDO2dCQUFFLE1BQUs7WUFFOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ3RELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUFBO1lBRWpELElBQUksQ0FBQyxJQUFJO2dCQUFFLFNBQVE7WUFFbkIsSUFBSSxDQUFDO2dCQUNILE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFBO1lBQy9CLENBQUM7WUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO2dCQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFBO1lBQzNCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUFJLENBQUMsT0FBTztRQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkQsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUs7UUFDSCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFPO1FBQ0wsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUE7UUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUN2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IEV2ZW50RW1pdHRlciBmcm9tIFwiLi4vdXRpbHMvZXZlbnQtZW1pdHRlci5qc1wiXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEpzb25Tb2NrZXQgZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xuICAvKipcbiAgICogUnVucyBjb25zdHJ1Y3Rvci5cbiAgICogQHBhcmFtIHtpbXBvcnQoXCJuZXRcIikuU29ja2V0fSBzb2NrZXQgLSBTb2NrZXQgaW5zdGFuY2UuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihzb2NrZXQpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5zb2NrZXQgPSBzb2NrZXRcbiAgICAvKipcbiAgICAgKiBOYXJyb3dzIHRoZSBydW50aW1lIHZhbHVlIHRvIHRoZSBkb2N1bWVudGVkIHR5cGUuXG4gICAgICogQHR5cGUge3N0cmluZyB8IHVuZGVmaW5lZH0gKi9cbiAgICB0aGlzLndvcmtlcklkID0gdW5kZWZpbmVkXG4gICAgLyoqXG4gICAgICogTmFycm93cyB0aGUgcnVudGltZSB2YWx1ZSB0byB0aGUgZG9jdW1lbnRlZCB0eXBlLlxuICAgICAqIEB0eXBlIHtib29sZWFufSAqL1xuICAgIHRoaXMuc3VwcG9ydHNIYW5kb2ZmSWRSZXBvcnRpbmcgPSBmYWxzZVxuICAgIC8qKlxuICAgICAqIE5hcnJvd3MgdGhlIHJ1bnRpbWUgdmFsdWUgdG8gdGhlIGRvY3VtZW50ZWQgdHlwZS5cbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn0gKi9cbiAgICB0aGlzLmFjY2VwdHNTcGF3bmVkSm9icyA9IHRydWVcbiAgICAvKipcbiAgICAgKiBOYXJyb3dzIHRoZSBydW50aW1lIHZhbHVlIHRvIHRoZSBkb2N1bWVudGVkIHR5cGUuXG4gICAgICogQHR5cGUge2Jvb2xlYW59ICovXG4gICAgdGhpcy5hY2NlcHRzRm9ya2VkSm9icyA9IHRydWVcbiAgICAvKiogQHR5cGUge2Jvb2xlYW59ICovXG4gICAgdGhpcy5hY2NlcHRzUG9vbGVkSm9icyA9IGZhbHNlXG4gICAgLyoqIE51bWJlciBvZiBwb29sZWQgaGFuZG9mZnMgdGhpcyByZWFkaW5lc3MgYWR2ZXJ0aXNlbWVudCBjYW4gYWNjZXB0LiAqL1xuICAgIHRoaXMuYXZhaWxhYmxlUG9vbGVkU2xvdHMgPSAwXG4gICAgLyoqIFdoZXRoZXIgdGhlIHdvcmtlci9tYWluIHBhaXIgdXNlcyBjb25zdW1hYmxlIHBvb2xlZC1jYXBhY2l0eSBjcmVkaXRzLiAqL1xuICAgIHRoaXMudXNlc1Bvb2xlZENhcGFjaXR5Q3JlZGl0cyA9IGZhbHNlXG4gICAgLyoqXG4gICAgICogTmFycm93cyB0aGUgcnVudGltZSB2YWx1ZSB0byB0aGUgZG9jdW1lbnRlZCB0eXBlLlxuICAgICAqIEB0eXBlIHtib29sZWFufSAqL1xuICAgIHRoaXMuYWNjZXB0c0lubGluZUpvYnMgPSB0cnVlXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGlzIHdvcmtlciBhZHZlcnRpc2VkIGhlYXJ0YmVhdCBzdXBwb3J0IGluIGl0cyBoZWxsby4gT25seVxuICAgICAqIGhlYXJ0YmVhdC1jYXBhYmxlIHdvcmtlcnMgYXJlIHN1YmplY3QgdG8gdGhlIG1haW4ncyBzdGFsZS1saXZlbmVzc1xuICAgICAqIGV2aWN0aW9uOyBhIGxlZ2FjeSB3b3JrZXIgKGUuZy4gbWlkIHJvbGxpbmcgZGVwbG95KSBpcyBleGVtcHQgc28gaXRzXG4gICAgICogYWN0aXZlIGxlYXNlcyBhcmUgbm90IHJlbGVhc2VkIHdoaWxlIGl0IGlzIHN0aWxsIHJ1bm5pbmcgdGhlbS5cbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn0gKi9cbiAgICB0aGlzLnN1cHBvcnRzSGVhcnRiZWF0ID0gZmFsc2VcbiAgICAvKipcbiAgICAgKiBMYXN0IHRpbWUgKG1zKSB0aGUgbWFpbiBzYXcgYW55IG1lc3NhZ2UgZnJvbSB0aGlzIHdvcmtlciBzb2NrZXQ7IHVzZWQgYnlcbiAgICAgKiB0aGUgbWFpbidzIGxpdmVuZXNzIHN3ZWVwIHRvIGRyb3AgYSB3ZWRnZWQvc2lsZW50IHdvcmtlci5cbiAgICAgKiBAdHlwZSB7bnVtYmVyIHwgdW5kZWZpbmVkfSAqL1xuICAgIHRoaXMubGFzdFNlZW5BdCA9IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIEludGVybmFsIHRlc3Qtb25seSBvYnNlcnZhYmlsaXR5IGNvdW50ZXIg4oCUIE5PVCBwdWJsaWMgQVBJLiBOdW1iZXIgb2YgdGltZXNcbiAgICAgKiBgZGVzdHJveSgpYCBoYXMgcnVuLCBpbmNyZW1lbnRlZCBpbW1lZGlhdGVseSBiZWZvcmUgdGhlIHJhdyBzb2NrZXRcbiAgICAgKiBgZGVzdHJveSgpYCBjYWxsIHNvIHNwZWNzIGNhbiBhc3NlcnQgdGhlIGFjdHVhbCB0ZWFyZG93biBtZXRob2QgdGhhdCByYW5cbiAgICAgKiByYXRoZXIgdGhhbiBhIHNlbGYtcmVwb3J0ZWQgZmxhZy4gRG8gbm90IHJlYWQgb3IgZGVwZW5kIG9uIHRoaXMgb3V0c2lkZSB0ZXN0cy5cbiAgICAgKiBAdHlwZSB7bnVtYmVyfSAqL1xuICAgIHRoaXMuX2Rlc3Ryb3lDYWxsQ291bnQgPSAwXG4gICAgLyoqXG4gICAgICogSW50ZXJuYWwgdGVzdC1vbmx5IG9ic2VydmFiaWxpdHkgY291bnRlciDigJQgTk9UIHB1YmxpYyBBUEkuIE51bWJlciBvZiB0aW1lc1xuICAgICAqIGBjbG9zZSgpYCBoYXMgcnVuLCBpbmNyZW1lbnRlZCBpbW1lZGlhdGVseSBiZWZvcmUgdGhlIHJhdyBzb2NrZXQgYGVuZCgpYFxuICAgICAqIGNhbGwuIERvIG5vdCByZWFkIG9yIGRlcGVuZCBvbiB0aGlzIG91dHNpZGUgdGVzdHMuXG4gICAgICogQHR5cGUge251bWJlcn0gKi9cbiAgICB0aGlzLl9jbG9zZUNhbGxDb3VudCA9IDBcbiAgICB0aGlzLmJ1ZmZlciA9IFwiXCJcbiAgICB0aGlzLnNvY2tldC5zZXRFbmNvZGluZyhcInV0ZjhcIilcbiAgICB0aGlzLnNvY2tldC5vbihcImRhdGFcIiwgKGNodW5rKSA9PiB0aGlzLl9vbkRhdGEoU3RyaW5nKGNodW5rKSkpXG4gICAgdGhpcy5zb2NrZXQub24oXCJjbG9zZVwiLCAoKSA9PiB0aGlzLmVtaXQoXCJjbG9zZVwiKSlcbiAgICB0aGlzLnNvY2tldC5vbihcImVycm9yXCIsIChlcnJvcikgPT4gdGhpcy5lbWl0KFwiZXJyb3JcIiwgZXJyb3IpKVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bnMgb24gZGF0YS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGNodW5rIC0gRGF0YSBjaHVuay5cbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBfb25EYXRhKGNodW5rKSB7XG4gICAgdGhpcy5idWZmZXIgKz0gY2h1bmtcblxuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICBjb25zdCBuZXdsaW5lSW5kZXggPSB0aGlzLmJ1ZmZlci5pbmRleE9mKFwiXFxuXCIpXG4gICAgICBpZiAobmV3bGluZUluZGV4ID09PSAtMSkgYnJlYWtcblxuICAgICAgY29uc3QgbGluZSA9IHRoaXMuYnVmZmVyLnNsaWNlKDAsIG5ld2xpbmVJbmRleCkudHJpbSgpXG4gICAgICB0aGlzLmJ1ZmZlciA9IHRoaXMuYnVmZmVyLnNsaWNlKG5ld2xpbmVJbmRleCArIDEpXG5cbiAgICAgIGlmICghbGluZSkgY29udGludWVcblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IEpTT04ucGFyc2UobGluZSlcbiAgICAgICAgdGhpcy5lbWl0KFwibWVzc2FnZVwiLCBtZXNzYWdlKVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgdGhpcy5lbWl0KFwiZXJyb3JcIiwgZXJyb3IpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bnMgc2VuZC5cbiAgICogQHBhcmFtIHtSZXR1cm5UeXBlPHR5cGVvZiBKU09OLnBhcnNlPn0gbWVzc2FnZSAtIE1lc3NhZ2UgdG8gc2VuZC5cbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBzZW5kKG1lc3NhZ2UpIHtcbiAgICB0aGlzLnNvY2tldC53cml0ZShgJHtKU09OLnN0cmluZ2lmeShtZXNzYWdlKX1cXG5gKVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bnMgY2xvc2UuXG4gICAqIEByZXR1cm5zIHt2b2lkfVxuICAgKi9cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5fY2xvc2VDYWxsQ291bnQrK1xuICAgIHRoaXMuc29ja2V0LmVuZCgpXG4gIH1cblxuICAvKipcbiAgICogRm9yY2libHkgZGVzdHJveXMgdGhlIHVuZGVybHlpbmcgc29ja2V0LiBVbmxpa2Uge0BsaW5rIGNsb3NlfSwgd2hpY2hcbiAgICogaGFsZi1jbG9zZXMgZ3JhY2VmdWxseSB2aWEgYGVuZCgpYCwgdGhpcyB0ZWFycyB0aGUgY29ubmVjdGlvbiBkb3duXG4gICAqIGltbWVkaWF0ZWx5IHNvIGEgc3RhbGxlZC9hYm9ydGVkIHJlcXVlc3QgZG9lcyBub3QgbGVhdmUgdGhlIHNvY2tldCBhbGl2ZS5cbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBkZXN0cm95KCkge1xuICAgIHRoaXMuX2Rlc3Ryb3lDYWxsQ291bnQrK1xuICAgIHRoaXMuc29ja2V0LmRlc3Ryb3koKVxuICB9XG59XG4iXX0=
@@ -1 +1 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/main.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../src/background-jobs/main.js"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,UAAU,MAAM,kBAAkB,CAAA;AACzC,OAAO,uBAAuB,MAAM,gBAAgB,CAAA;AACpD,OAAO,MAAM,MAAM,cAAc,CAAA;AAO9B,YAAkB,6BAA6B,GAC/C;;;;IAA4D,aAAa,EAA9D,OAAO,YAAY,EAAE,0BAA0B,CAC1D;;;;IAA4C,OAAO,EAAxC,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAC5C;CAAA,CAAA;AAsCD,MAAM,CAAC,OAAO,OAAO,kBAAkB;IAa9B,aAAa;IACb,8BAA8B;IAC9B,SAAS,SALC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9B,IAAI;IACJ,IAAI;IACJ,gBAAgB;IAChB,cAAc;IACd,SAAS;IAGT,oBAAoB;IACpB,qBAAqB;IAC1B,yDAAyD;IACpD,OAAO,EADD,OAAO,cAAc,EAAE,OAAO,GAAG,SAAS;IAEhD,MAAM;IACX;;iCAE6B;IACxB,OAAO,EADF,GAAG,CAAC,UAAU,CAAC;IAEzB;;iCAE6B;IACxB,YAAY,EADP,GAAG,CAAC,UAAU,CAAC;IAEzB;;sDAEkD;IAC7C,cAAc,EADT,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE9C;;;oCAGgC;IAC3B,8BAA8B,EADzB,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;wCAEoC;IAC/B,MAAM,EADD,GAAG,CAAC,MAAM,GAAG,SAAS;IAEhC;;2DAEuD;IAClD,UAAU,EADL,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,SAAS;IAEnD;;2DAEuD;IAClD,eAAe,EADV,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,SAAS;IAEnD;;2DAEuD;IAClD,gBAAgB,EADX,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,SAAS;IAEnD;;2DAEuD;IAClD,YAAY,EADP,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,SAAS;IAEnD;;4DAEwD;IACnD,iBAAiB,EADZ,UAAU,CAAC,OAAO,WAAW,CAAC,GAAG,SAAS;IAEpD;;qDAEiD;IAC5C,SAAS,EADJ,uBAAuB,GAAG,SAAS;IAExC,SAAS;IACT,cAAc;IACnB,wCAAwC;IACnC,aAAa,EADP,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS;IAE/B,QAAQ;IACb,wCAAwC;IACnC,WAAW,EADL,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS;IAEpC;;0CAEsC;IACjC,kBAAkB,EADb,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS;IAElC;;uFAEmF;IAC9E,qBAAqB,EADhB,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS;IAE/E;;sHAEkH;IAC7G,aAAa,EADR,OAAO,qBAAqB,EAAE,OAAO,GAAG,OAAO,gCAAgC,EAAE,OAAO,GAAG,SAAS;IA1FhH;;;;;;;;;;OAUG;IACH,YAAY,EAAC,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,8BAAqC,EAAE,SAAS,EAAC,EARnI;QAAoD,aAAa,EAAzD,OAAO,qBAAqB,EAAE,OAAO,CAC7C;QAAsB,IAAI,AAA1B,CACA,EADQ,MAAM,CACd;QAAsB,IAAI,AAA1B,CACA,EADQ,MAAM,CACd;QAAsB,oBAAoB,AAA1C,CACA,EADQ,MAAM,CACd;QAAsB,qBAAqB,AAA3C,CACA,EADQ,MAAM,CACd;QAAuB,8BAA8B,AAArD,CACA,EADQ,OAAO,CACf;QAA0C,SAAS,AAAnD,CACF,EADU,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CACpC;KACqI,EAiFrI;IAED;;;OAGG;IACH,IAAI,KAAK,IAFI,OAAO,cAAc,EAAE,OAAO,CAM1C;IAED;;;OAGG;IACH,IAAI,KAAK,CAAC,OAAO,EAFN,OAAO,cAAc,EAAE,OAEjB,EAEhB;IAED;;;OAGG;IACG,KAAK,IAFE,OAAO,CAAC,IAAI,CAAC,CA8FzB;IAED;;;OAGG;IACH,IAAI,IAFS,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;OAGG;IACG,KAAK,IAFE,OAAO,CAAC,IAAI,CAAC,CA2BzB;IAED;;yBAEqB;IACrB,aAAa,IADA,IAAI,CAKhB;IAED;;yBAEqB;IACrB,YAAY,IADC,IAAI,CAYhB;IAED;;yBAEqB;IACrB,yBAAyB,IADZ,IAAI,CAYhB;IAED;;kCAE8B;IACxB,oBAAoB,IADb,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;kCAE8B;IACxB,kCAAkC,IAD3B,OAAO,CAAC,IAAI,CAAC,CAWzB;IAED;;kCAE8B;IACxB,YAAY,IADL,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;OAGG;IACH,OAAO,IAFM,MAAM,CAIlB;IAED;;;;;;;;;;OAUG;IACH,sBAAsB,IAFT,IAAI,CA2BhB;IAED;;;;;;OAMG;IACH,eAAe,IAFF,IAAI,CAiBhB;IAED;;;;OAIG;IACH,iBAAiB,CAAC,MAAM,EAHb,OAAO,KAAK,EAAE,MAGD,GAFX,IAAI,CA0BhB;IAED;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAC,UAAU,EAAE,OAAO,EAAE,IAAI,EAAC,EAL7C;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAA8D,OAAO,EAA7D,OAAO,YAAY,EAAE,0BAA0B,CACvD;QAAkE,IAAI,EAA9D,OAAO,YAAY,EAAE,uBAAuB,GAAG,IAAI,CAC3D;KAE6C,GAFnC,OAAO,YAAY,EAAE,uBAAuB,GAAG,IAAI,CAS/D;IAED;;;;;;OAMG;IACH,4BAA4B,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJ/C;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAA8D,OAAO,EAA7D,OAAO,YAAY,EAAE,0BAA0B,CACvD;KAE+C,GAFrC,OAAO,YAAY,EAAE,uBAAuB,GAAG,IAAI,CAqB/D;IAED;;;;OAIG;IACH,2BAA2B,CAAC,UAAU,EAH3B,UAG2B,GAFzB,IAAI,CAOhB;IAED;;;OAGG;IACG,4BAA4B,IAFrB,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;;;;;;;;;;;OAaG;IACG,oBAAoB,CAAC,UAAU,EAH1B,UAG0B,GAFxB,OAAO,CAAC,IAAI,CAAC,CAqBzB;IAED;;;;;;OAMG;IACH,0BAA0B,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJ7C;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAA8D,OAAO,EAA7D,OAAO,YAAY,EAAE,0BAA0B,CACvD;KAE6C,GAFnC,IAAI,CAgBhB;IAED;;;;;;OAMG;IACH,0BAA0B,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJ7C;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAA8D,OAAO,EAA7D,OAAO,YAAY,EAAE,0BAA0B,CACvD;KAE6C,GAFnC,IAAI,CAsBhB;IAED;;;;;;OAMG;IACH,4BAA4B,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJ/C;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAA8D,OAAO,EAA7D,OAAO,YAAY,EAAE,0BAA0B,CACvD;KAE+C,GAFrC,IAAI,CAgBhB;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJrC;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAA6D,OAAO,EAA5D,OAAO,YAAY,EAAE,yBAAyB,CACtD;KAEqC,GAF3B,IAAI,CAkBhB;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,EAAC,UAAU,EAAC,EAH/B;QAAyB,UAAU,EAA3B,UAAU,CAClB;KAE+B,GAFrB,IAAI,CAOhB;IAED;;;;;;OAMG;IACG,yBAAyB,CAAC,MAAM,EAL3B,UAK2B,EAAE,EAAC,YAAoB,EAAC,AAJ3D,CAEA,EADA;QAAuB,YAAY,AAAnC,CACA,EADQ,OAAO,CACf;KAEgE,GAFtD,OAAO,CAAC,IAAI,CAAC,CAiBzB;IAED;;;;;;OAMG;IACG,sBAAsB,CAAC,MAAM,EALxB,UAKwB,EAAE,EAAC,YAAoB,EAAC,AAJxD,CAEA,EADA;QAAuB,YAAY,AAAnC,CACA,EADQ,OAAO,CACf;KAE6D,GAFnD,OAAO,CAAC,IAAI,CAAC,CAqBzB;IAED;;;;;;;OAOG;IACG,eAAe,CAAC,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAC,EAL7C;QAAqB,SAAS,EAAtB,MAAM,CACd;QAAqB,KAAK,EAAlB,MAAM,CACd;QAAyB,MAAM,EAAvB,UAAU,CAClB;KAE6C,GAFnC,OAAO,CAAC,IAAI,CAAC,CAQzB;IAED;;;;;;OAMG;IACH,cAAc,CAAC,EAAC,SAAS,EAAE,KAAK,EAAC,EAJ9B;QAAqB,SAAS,EAAtB,MAAM,CACd;QAAqB,KAAK,EAAlB,MAAM,CACd;KAE8B,GAFpB,IAAI,CAUhB;IAED;;;;OAIG;IACH,0BAA0B,CAAC,KAAK,EAHrB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGP,GAFnB,IAAI,CAUhB;IAED;;;;;;OAMG;IACH,wBAAwB,CAAC,KAAK,EAHnB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGT,GAFjB,IAAI,CAUhB;IAED;;;;;;OAMG;IACG,cAAc,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJvC;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAA+D,OAAO,EAA9D,OAAO,YAAY,EAAE,2BAA2B,CACxD;KAEuC,GAF7B,OAAO,CAAC,IAAI,CAAC,CAuBzB;IAED;;;;;;OAMG;IACG,uBAAuB,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJhD;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAAwE,OAAO,EAAvE,OAAO,YAAY,EAAE,oCAAoC,CACjE;KAEgD,GAFtC,OAAO,CAAC,IAAI,CAAC,CAwBzB;IAED;;;;;;OAMG;IACG,sBAAsB,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJ/C;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAAuE,OAAO,EAAtE,OAAO,YAAY,EAAE,mCAAmC,CAChE;KAE+C,GAFrC,OAAO,CAAC,IAAI,CAAC,CAmBzB;IAED;;;;;;;;;;OAUG;IACH,0BAA0B,CAAC,EAAC,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAC,EAR/F;QAA4D,OAAO,EAA3D,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CACrD;QAA4C,KAAK,EAAzC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CACrC;QAAqB,eAAe,EAA5B,MAAM,CACd;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAAqB,UAAU,EAAvB,MAAM,CACd;QAAqF,YAAY,EAAzF,eAAe,GAAG,yBAAyB,GAAG,wBAAwB,CAC9E;KAE+F,GAFrF,IAAI,CAgBhB;IAED;;;;;;OAMG;IACG,kBAAkB,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJ3C;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAAgE,OAAO,EAA/D,OAAO,YAAY,EAAE,4BAA4B,CACzD;KAE2C,GAFjC,OAAO,CAAC,IAAI,CAAC,CAkBzB;IAED;;;;;;OAMG;IACG,oBAAoB,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJ7C;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAAkE,OAAO,EAAjE,OAAO,YAAY,EAAE,8BAA8B,CAC3D;KAE6C,GAFnC,OAAO,CAAC,IAAI,CAAC,CA2BzB;IAED;;;;;;OAMG;IACG,gBAAgB,CAAC,EAAC,UAAU,EAAE,OAAO,EAAC,EAJzC;QAAyB,UAAU,EAA3B,UAAU,CAClB;QAA8D,OAAO,EAA7D,OAAO,YAAY,EAAE,0BAA0B,CACvD;KAEyC,GAF/B,OAAO,CAAC,IAAI,CAAC,CAkCzB;IAED;;;;OAIG;IACH,wBAAwB,CAAC,EAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,EAAC,EAH9D;QAAC,KAAK,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,OAAO,YAAY,EAAE,gBAAgB,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAGlF,GAF5D,IAAI,CAyBhB;IAED;;;;;;;;OAQG;IACH,0BAA0B,CAAC,EAAC,GAAG,EAAC,EAHrB;QAAC,GAAG,EAAE,OAAO,YAAY,EAAE,gBAAgB,CAAA;KAGtB,GAFnB,IAAI,CAsBhB;IAED;;;;OAIG;IACH,sBAAsB,CAAC,KAAK,EAHjB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGX,GAFf,KAAK,CAMjB;IAED;;;;OAIG;IACH,wBAAwB,CAAC,KAAK,EAHnB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGT,GAFjB,KAAK,CASjB;IAED;;;;OAIG;IACH,0BAA0B,CAAC,KAAK,EAHrB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGP,GAFnB,MAAM,CAMlB;IAED;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,EAHZ,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGhB,GAFV,KAAK,IAAI,MAAM,CAI3B;IAED;;;;;;OAMG;IACH,uBAAuB,CAAC,EAAC,KAAK,EAAE,eAAe,EAAC,EAJ7C;QAA4C,KAAK,EAAzC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CACrC;QAAoB,eAAe,EAA3B,KAAK,CACb;KAE6C,GAFnC,IAAI,CAIhB;IAED;;;;;;;;;;;;;;;;OAgBG;IACG,MAAM,IAFC,OAAO,CAAC,IAAI,CAAC,CAezB;IAED;;;OAGG;IACG,kBAAkB,IAFX,OAAO,CAAC,IAAI,CAAC,CAgBzB;IAED;;;;;OAKG;IACG,YAAY,CAAC,EAAC,OAAO,EAAC,EAHzB;QAAsB,OAAO,EAArB,OAAO,CACf;KAEyB,GAFf,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;OAGG;IACG,yBAAyB,IAFlB,OAAO,CAAC,IAAI,CAAC,CAYzB;IAED;;yBAEqB;IACrB,qBAAqB,IADR,IAAI,CAUhB;IAED;;;OAGG;IACG,eAAe,IAFR,OAAO,CAAC,OAAO,CAAC,CAI5B;IAED;;;OAGG;IACG,aAAa,IAFN,OAAO,CAAC,OAAO,CAAC,CAW5B;IAED;;;OAGG;IACG,yBAAyB,IAFlB,OAAO,CAAC,OAAO,CAAC,CAU5B;IAED;;;;;;OAMG;IACH,mBAAmB,IAFN,IAAI,CAWhB;IAED;;;OAGG;IACG,gBAAgB,IAFT,OAAO,CAAC,IAAI,CAAC,CAgBzB;IAED;;;;OAIG;IACG,UAAU,IAFH,OAAO,CAAC,IAAI,CAAC,CA8DzB;IAED;;;OAGG;IACG,+BAA+B,IAFxB,OAAO,CAAC,OAAO,YAAY,EAAE,gBAAgB,GAAG,IAAI,CAAC,CASjE;IAED;;;OAGG;IACH,yBAAyB,IAFZ,OAAO,YAAY,EAAE,0BAA0B,EAAE,CAU7D;IAED;;;;;;OAMG;IACH,0BAA0B,CAAC,EAAC,cAAc,EAAE,MAAM,EAAC,EAJhD;QAAmE,cAAc,EAAzE,GAAG,CAAC,OAAO,YAAY,EAAE,0BAA0B,CAAC,CAC5D;QAAyB,MAAM,EAAvB,UAAU,CAClB;KAEgD,GAFtC,IAAI,CAQhB;IAED;;;;OAIG;IACH,iBAAiB,CAAC,GAAG,EAHV,OAAO,YAAY,EAAE,gBAGX,GAFR,UAAU,GAAG,SAAS,CAMlC;IAED;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAC,GAAG,EAAE,MAAM,EAAC,EAJ5B;QAAoD,GAAG,EAA/C,OAAO,YAAY,EAAE,gBAAgB,CAC7C;QAAyB,MAAM,EAAvB,UAAU,CAClB;KAE4B,GAFlB,OAAO,CAUnB;IAED;;;;;;OAMG;IACG,kBAAkB,IAFX,OAAO,CAAC,IAAI,CAAC,CA+BzB;IAEK,aAAa,kBA0BlB;IAED;;;;;;;;OAQG;IACG,kBAAkB,IAFX,OAAO,CAAC,IAAI,CAAC,CAgCzB;CACF"}