New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@eventual/core

Package Overview
Dependencies
Maintainers
2
Versions
164
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@eventual/core - npm Package Compare versions

Comparing version 0.4.3 to 0.5.0

lib/cjs/runtime/clients/runtime-service-clients.d.ts

6

lib/cjs/activity.d.ts

@@ -1,2 +0,2 @@

import { CompleteActivityRequest } from "./runtime/clients/workflow-client.js";
import { SendActivitySuccessRequest } from "./service-client.js";
export interface ActivityOptions {

@@ -24,3 +24,3 @@ /**

/**
* Complete an activity request by its {@link CompleteActivityRequest.activityToken}.
* Complete an activity request by its {@link SendActivitySuccessRequest.activityToken}.
*

@@ -45,3 +45,3 @@ * This method is used in conjunction with {@link asyncResult} in an activity

*/
complete(request: CompleteActivityRequest<UnwrapAsync<Awaited<Output>>>): Promise<void>;
complete(request: Omit<SendActivitySuccessRequest<UnwrapAsync<Awaited<Output>>>, "type">): Promise<void>;
activityID: string;

@@ -48,0 +48,0 @@ }

@@ -62,3 +62,3 @@ "use strict";

func.complete = async function (request) {
return (0, global_js_1.getWorkflowClient)().completeActivity(request);
return (0, global_js_1.getServiceClient)().sendActivitySuccess(request);
};

@@ -80,2 +80,2 @@ func.activityID = activityID;

exports.getCallableActivityNames = getCallableActivityNames;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aXZpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0RBQThEO0FBQzlELDJDQUlxQjtBQUVyQixpREFBNEU7QUF1RTVFLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBVTNELFNBQWdCLGFBQWEsQ0FBQyxHQUFRO0lBQ3BDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxnQkFBZ0IsQ0FBQztBQUM3RCxDQUFDO0FBRkQsc0NBRUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFDSSxLQUFLLFVBQVUsV0FBVyxDQUMvQixZQUFxRDtJQUVyRCxJQUFJLENBQUMsSUFBQSwyQkFBZ0IsR0FBRSxFQUFFO1FBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztLQUM1RTtJQUNELE1BQU0sZUFBZSxHQUFHLElBQUEsOEJBQWtCLEdBQUUsQ0FBQztJQUM3QyxJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQ2IsOEZBQThGLENBQy9GLENBQUM7S0FDSDtJQUNELE1BQU0sWUFBWSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNsRCxPQUFPO1FBQ0wsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLGdCQUFvRDtLQUN6RSxDQUFDO0FBQ0osQ0FBQztBQWhCRCxrQ0FnQkM7QUF3QkQsU0FBZ0IsUUFBUSxDQUN0QixVQUFrQixFQUNsQixHQUFHLElBRThDO0lBRWpELE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDeEUseURBQXlEO0lBQ3pELElBQUEsOEJBQWtCLEdBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxPQUFPLENBQUM7SUFDM0MsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBcUQsRUFBRSxFQUFFO1FBQ3pFLElBQUksSUFBQSwrQkFBb0IsR0FBRSxFQUFFO1lBQzFCLCtGQUErRjtZQUMvRixPQUFPLElBQUEscUNBQWtCLEVBQ3ZCLFVBQVUsRUFDVixJQUFJLEVBQ0osSUFBSSxFQUFFLGNBQWMsRUFDcEIsSUFBSSxFQUFFLGdCQUFnQixDQUNoQixDQUFDO1NBQ1Y7YUFBTTtZQUNMLDRFQUE0RTtZQUM1RSxPQUFPLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQyxDQUF3QyxDQUFDO0lBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxXQUFXLE9BQU87UUFDckMsT0FBTyxJQUFBLDZCQUFpQixHQUFFLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQyxDQUFDO0lBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDN0IsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBNUJELDRCQTRCQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQ2pDLFVBQWtCO0lBRWxCLE9BQU8sSUFBQSw4QkFBa0IsR0FBRSxDQUFDLFVBQVUsQ0FBeUIsQ0FBQztBQUNsRSxDQUFDO0FBSkQsa0RBSUM7QUFFRCxTQUFnQix3QkFBd0I7SUFDdEMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUEsOEJBQWtCLEdBQUUsQ0FBQyxDQUFDO0FBQzNDLENBQUM7QUFGRCw0REFFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFjdGl2aXR5Q2FsbCB9IGZyb20gXCIuL2NhbGxzL2FjdGl2aXR5LWNhbGwuanNcIjtcbmltcG9ydCB7XG4gIGNhbGxhYmxlQWN0aXZpdGllcyxcbiAgZ2V0QWN0aXZpdHlDb250ZXh0LFxuICBnZXRXb3JrZmxvd0NsaWVudCxcbn0gZnJvbSBcIi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgeyBDb21wbGV0ZUFjdGl2aXR5UmVxdWVzdCB9IGZyb20gXCIuL3J1bnRpbWUvY2xpZW50cy93b3JrZmxvdy1jbGllbnQuanNcIjtcbmltcG9ydCB7IGlzQWN0aXZpdHlXb3JrZXIsIGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vcnVudGltZS9mbGFncy5qc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBIb3cgbG9uZyB0aGUgd29ya2Zsb3cgd2lsbCB3YWl0IGZvciB0aGUgYWN0aXZpdHkgdG8gY29tcGxldGUgb3IgZmFpbC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB3b3JrZmxvdyB3aWxsIHJ1biBmb3JldmVyLlxuICAgKi9cbiAgdGltZW91dFNlY29uZHM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBGb3IgbG9uZyBydW5uaW5nIGFjdGl2aXRpZXMsIGl0IGlzIHN1Z2dlc3RlZCB0aGF0IHRoZXkgcmVwb3J0IGJhY2sgdGhhdCB0aGV5XG4gICAqIGFyZSBzdGlsbCBpbiBwcm9ncmVzcyB0byBhdm9pZCB3YWl0aW5nIGZvcmV2ZXIgb3IgdW50aWwgYSBsb25nIHRpbWVvdXQgd2hlblxuICAgKiBzb21ldGhpbmcgZ29lcyB3cm9uZy5cbiAgICpcbiAgICogV2hlbiBzZXQgdG8gYSBwb3NpdGl2ZSBudW1iZXIsIHRoZSBhY3Rpdml0eSBtdXN0IGNhbGwge0BsaW5rIGhlYXJ0YmVhdH0gb3JcbiAgICoge0BsaW5rIFdvcmtmbG93Q2xpZW50LmhlYXJ0YmVhdEFjdGl2aXR5fSBhdCBsZWFzdCBldmVyeSBoZWFydGJlYXRTZWNvbmRzLlxuICAgKlxuICAgKiBJZiBpdCBmYWlscyB0byBkbyBzbywgdGhlIHdvcmtmbG93IHdpbGwgY2FuY2VsIHRoZSBhY3Rpdml0eSBhbmQgdGhyb3cgYW4gZXJyb3IuXG4gICAqL1xuICBoZWFydGJlYXRTZWNvbmRzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzIGV4dGVuZHMgYW55W10sIE91dHB1dCA9IGFueT4ge1xuICAoLi4uYXJnczogQXJndW1lbnRzKTogUHJvbWlzZTxBd2FpdGVkPFVud3JhcEFzeW5jPE91dHB1dD4+PjtcblxuICAvKipcbiAgICogQ29tcGxldGUgYW4gYWN0aXZpdHkgcmVxdWVzdCBieSBpdHMge0BsaW5rIENvbXBsZXRlQWN0aXZpdHlSZXF1ZXN0LmFjdGl2aXR5VG9rZW59LlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGgge0BsaW5rIGFzeW5jUmVzdWx0fSBpbiBhbiBhY3Rpdml0eVxuICAgKiB0byBwZXJmb3JtIGFzeW5jaHJvbm91cywgbG9uZy1ydW5uaW5nIGNvbXB1dGF0aW9ucy4gRm9yIGV4YW1wbGU6XG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IHRva2VuRXZlbnQgPSBldmVudChcInRva2VuXCIpO1xuICAgKlxuICAgKiBjb25zdCBhc3luY0FjdGl2aXR5ID0gYWN0aXZpdHkoXCJhc3luY1wiLCAoKSA9PiB7XG4gICAqICAgcmV0dXJuIGFzeW5jUmVzdWx0PHN0cmluZz4odG9rZW4gPT4gdG9rZW5FdmVudC5wdWJsaXNoKHsgdG9rZW4gfSkpO1xuICAgKiB9KTtcbiAgICpcbiAgICogdG9rZW5FdmVudC5vbihhc3luYyAoe3Rva2VufSkgPT4ge1xuICAgKiAgIGF3YWl0IGFzeW5jQWN0aXZpdHkuY29tcGxldGUoe1xuICAgKiAgICAgYWN0aXZpdHlUb2tlbjogdG9rZW4sXG4gICAqICAgICByZXN1bHQ6IFwiZG9uZVwiXG4gICAqICAgfSk7XG4gICAqIH0pXG4gICAqIGBgYFxuICAgKi9cbiAgY29tcGxldGUoXG4gICAgcmVxdWVzdDogQ29tcGxldGVBY3Rpdml0eVJlcXVlc3Q8VW53cmFwQXN5bmM8QXdhaXRlZDxPdXRwdXQ+Pj5cbiAgKTogUHJvbWlzZTx2b2lkPjtcblxuICBhY3Rpdml0eUlEOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aXZpdHlIYW5kbGVyPEFyZ3VtZW50cyBleHRlbmRzIGFueVtdLCBPdXRwdXQgPSBhbnk+IHtcbiAgKC4uLmFyZ3M6IEFyZ3VtZW50cyk6XG4gICAgfCBQcm9taXNlPEF3YWl0ZWQ8T3V0cHV0Pj5cbiAgICB8IE91dHB1dFxuICAgIHwgQXN5bmNSZXN1bHQ8T3V0cHV0PlxuICAgIHwgUHJvbWlzZTxBc3luY1Jlc3VsdDxBd2FpdGVkPE91dHB1dD4+Pjtcbn1cblxuZXhwb3J0IHR5cGUgVW53cmFwQXN5bmM8T3V0cHV0PiA9IE91dHB1dCBleHRlbmRzIEFzeW5jUmVzdWx0PGluZmVyIE8+XG4gID8gT1xuICA6IE91dHB1dDtcblxuZXhwb3J0IHR5cGUgQWN0aXZpdHlBcmd1bWVudHM8QSBleHRlbmRzIEFjdGl2aXR5RnVuY3Rpb248YW55LCBhbnk+PiA9XG4gIEEgZXh0ZW5kcyBBY3Rpdml0eUZ1bmN0aW9uPGluZmVyIEFyZ3VtZW50cyBleHRlbmRzIGFueVtdPiA/IEFyZ3VtZW50cyA6IG5ldmVyO1xuXG5leHBvcnQgdHlwZSBBY3Rpdml0eU91dHB1dDxBIGV4dGVuZHMgQWN0aXZpdHlGdW5jdGlvbjxhbnksIGFueT4+ID1cbiAgQSBleHRlbmRzIEFjdGl2aXR5RnVuY3Rpb248YW55LCBpbmZlciBPdXRwdXQ+ID8gVW53cmFwQXN5bmM8T3V0cHV0PiA6IG5ldmVyO1xuXG5jb25zdCBBc3luY1Rva2VuU3ltYm9sID0gU3ltYm9sLmZvcihcImV2ZW50dWFsOkFzeW5jVG9rZW5cIik7XG5cbi8qKlxuICogV2hlbiByZXR1cm5lZCBmcm9tIGFuIGFjdGl2aXR5LCB0aGUgYWN0aXZpdHkgd2lsbCBiZWNvbWUgYXN5bmMsXG4gKiBhbGxvd2luZyBpdCB0byBydW4gXCJmb3JldmVyXCIuIFRoZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFzeW5jUmVzdWx0PE91dHB1dCA9IGFueT4ge1xuICBbQXN5bmNUb2tlblN5bWJvbF06IHR5cGVvZiBBc3luY1Rva2VuU3ltYm9sICYgT3V0cHV0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBc3luY1Jlc3VsdChvYmo6IGFueSk6IG9iaiBpcyBBc3luY1Jlc3VsdCB7XG4gIHJldHVybiAhIW9iaiAmJiBvYmpbQXN5bmNUb2tlblN5bWJvbF0gPT09IEFzeW5jVG9rZW5TeW1ib2w7XG59XG5cbi8qKlxuICogV2hlbiByZXR1cm5lZCBmcm9tIGFuIHtAbGluayBhY3Rpdml0eX0sIHRlbGxzIHRoZSBzeXN0ZW0gdG8gbWFrZSB0aGUgY3VycmVudFxuICogYWN0aXZpdHkgYXN5bmMuIFRoaXMgYWxsb3dzIHRoZSBhY3Rpdml0eSB0byBkZWZlciBzZW5kaW5nIGEgcmVzcG9uc2UgZnJvbSB0aGVcbiAqIGN1cnJlbnQgZnVuY3Rpb24gYW5kIGluc3RlYWQgY29tcGxldGUgdGhlIGFjdGl2aXR5IHdpdGgge0BsaW5rIFdvcmtmbG93Q2xpZW50LmNvbXBsZXRlQWN0aXZpdHl9LlxuICpcbiAqIGBgYHRzXG4gKiBjb25zdCBzcXMgPSBuZXcgU1FTQ2xpZW50KCk7XG4gKiBhY3Rpdml0eShcIm15QWN0aXZpdHlcIiwgKCkgPT4ge1xuICogICAgLy8gdGVsbHMgdGhlIHN5c3RlbSB0aGF0IHRoZSBjb21wbGV0ZUFjdGl2aXR5IGZ1bmN0aW9uIHdpbGwgYmUgY2FsbGVkIGxhdGVyIHdpdGggYSBzdHJpbmcgcmVzdWx0LlxuICogICAgcmV0dXJuIGFzeW5jUmVzdWx0PHN0cmluZz4oYXN5bmMgKGFjdGl2aXR5VG9rZW4pID0+IHtcbiAqICAgICAgIC8vIGJlZm9yZSBleGl0aW5nLCBzZW5kIHRoZSBhY3Rpdml0eVRva2VuIHRvIGEgc3FzIHF1ZXVlIHRvIGJlIGNvbXBsZXRlZCBsYXRlclxuICogICAgICAgLy8geW91IGNvdWxkIGludm9rZSBhbnkgc2VydmljZSBoZXJlXG4gKiAgICAgICBhd2FpdCBzcXMuc2VuZChuZXcgU2VuZE1lc3NhZ2VDb21tYW5kKHsgLi4uLCBtZXNzYWdlOiBKU09ObC5zdHJpbmdpZnkoeyBhY3Rpdml0eVRva2VuIH0pKSk7XG4gKiAgICB9KTtcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdG9rZW5Db250ZXh0IGlzIGEgY2FsbGJhY2sgd2hpY2ggcHJvdmlkZXMgdGhlIGFjdGl2aXR5VG9rZW4uIFRoZSBhY3Rpdml0eSB0b2tlbiBpcyB1c2VkXG4gKiAgICAgICAgICAgICAgICAgICAgIHRvIGNvbXBsZXRlQWN0aXZpdHkgYW5kIGhlYXJ0YmVhdEFjdGl2aXR5IGZyb20gb3V0c2lkZSBvZiB0aGVcbiAqICAgICAgICAgICAgICAgICAgICAgYWN0aXZpdHkuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhc3luY1Jlc3VsdDxPdXRwdXQgPSBhbnk+KFxuICB0b2tlbkNvbnRleHQ6ICh0b2tlbjogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+IHwgdm9pZFxuKTogUHJvbWlzZTxBc3luY1Jlc3VsdDxPdXRwdXQ+PiB7XG4gIGlmICghaXNBY3Rpdml0eVdvcmtlcigpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiYXN5bmNSZXN1bHQgY2FuIG9ubHkgYmUgY2FsbGVkIGZyb20gd2l0aGluIGFuIGFjdGl2aXR5LlwiKTtcbiAgfVxuICBjb25zdCBhY3Rpdml0eUNvbnRleHQgPSBnZXRBY3Rpdml0eUNvbnRleHQoKTtcbiAgaWYgKCFhY3Rpdml0eUNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcIkFjdGl2aXR5IGNvbnRleHQgaGFzIG5vdCBiZWVuIHNldCB5ZXQsIGFzeW5jUmVzdWx0IGNhbiBvbmx5IGJlIHVzZWQgZnJvbSB3aXRoaW4gYW4gYWN0aXZpdHkuXCJcbiAgICApO1xuICB9XG4gIGF3YWl0IHRva2VuQ29udGV4dChhY3Rpdml0eUNvbnRleHQuYWN0aXZpdHlUb2tlbik7XG4gIHJldHVybiB7XG4gICAgW0FzeW5jVG9rZW5TeW1ib2xdOiBBc3luY1Rva2VuU3ltYm9sIGFzIHR5cGVvZiBBc3luY1Rva2VuU3ltYm9sICYgT3V0cHV0LFxuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5Q29udGV4dCB7XG4gIHdvcmtmbG93TmFtZTogc3RyaW5nO1xuICBleGVjdXRpb25JZDogc3RyaW5nO1xuICBhY3Rpdml0eVRva2VuOiBzdHJpbmc7XG4gIHNjaGVkdWxlZFRpbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZWdpc3RlcnMgYSBmdW5jdGlvbiBhcyBhbiBBY3Rpdml0eS5cbiAqXG4gKiBAcGFyYW0gYWN0aXZpdHlJRCBhIHN0cmluZyB0aGF0IHVuaXF1ZWx5IGlkZW50aWZpZXMgdGhlIEFjdGl2aXR5IHdpdGhpbiBhIHNpbmdsZSB3b3JrZmxvdyBjb250ZXh0LlxuICogQHBhcmFtIGhhbmRsZXIgdGhlIGZ1bmN0aW9uIHRoYXQgaGFuZGxlcyB0aGUgYWN0aXZpdHlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGl2aXR5PEFyZ3VtZW50cyBleHRlbmRzIGFueVtdLCBPdXRwdXQgPSBhbnk+KFxuICBhY3Rpdml0eUlEOiBzdHJpbmcsXG4gIGhhbmRsZXI6IEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMsIE91dHB1dD5cbik6IEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+O1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGl2aXR5PEFyZ3VtZW50cyBleHRlbmRzIGFueVtdLCBPdXRwdXQgPSBhbnk+KFxuICBhY3Rpdml0eUlEOiBzdHJpbmcsXG4gIG9wdHM6IEFjdGl2aXR5T3B0aW9ucyxcbiAgaGFuZGxlcjogQWN0aXZpdHlIYW5kbGVyPEFyZ3VtZW50cywgT3V0cHV0PlxuKTogQWN0aXZpdHlGdW5jdGlvbjxBcmd1bWVudHMsIE91dHB1dD47XG5leHBvcnQgZnVuY3Rpb24gYWN0aXZpdHk8QXJndW1lbnRzIGV4dGVuZHMgYW55W10sIE91dHB1dCA9IGFueT4oXG4gIGFjdGl2aXR5SUQ6IHN0cmluZyxcbiAgLi4uYXJnczpcbiAgICB8IFtvcHRzOiBBY3Rpdml0eU9wdGlvbnMsIGhhbmRsZXI6IEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMsIE91dHB1dD5dXG4gICAgfCBbaGFuZGxlcjogQWN0aXZpdHlIYW5kbGVyPEFyZ3VtZW50cywgT3V0cHV0Pl1cbik6IEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+IHtcbiAgY29uc3QgW29wdHMsIGhhbmRsZXJdID0gYXJncy5sZW5ndGggPT09IDEgPyBbdW5kZWZpbmVkLCBhcmdzWzBdXSA6IGFyZ3M7XG4gIC8vIHJlZ2lzdGVyIHRoZSBoYW5kbGVyIHRvIGJlIGxvb2tlZCB1cCBkdXJpbmcgZXhlY3V0aW9uLlxuICBjYWxsYWJsZUFjdGl2aXRpZXMoKVthY3Rpdml0eUlEXSA9IGhhbmRsZXI7XG4gIGNvbnN0IGZ1bmMgPSAoKC4uLmFyZ3M6IFBhcmFtZXRlcnM8QWN0aXZpdHlGdW5jdGlvbjxBcmd1bWVudHMsIE91dHB1dD4+KSA9PiB7XG4gICAgaWYgKGlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICAgIC8vIGlmIHdlJ3JlIGluIHRoZSBvcmNoZXN0cmF0b3IsIHJldHVybiBhIGNvbW1hbmQgdG8gaW52b2tlIHRoZSBhY3Rpdml0eSBpbiB0aGUgd29ya2VyIGZ1bmN0aW9uXG4gICAgICByZXR1cm4gY3JlYXRlQWN0aXZpdHlDYWxsKFxuICAgICAgICBhY3Rpdml0eUlELFxuICAgICAgICBhcmdzLFxuICAgICAgICBvcHRzPy50aW1lb3V0U2Vjb25kcyxcbiAgICAgICAgb3B0cz8uaGVhcnRiZWF0U2Vjb25kc1xuICAgICAgKSBhcyBhbnk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGNhbGxpbmcgdGhlIGFjdGl2aXR5IGZyb20gb3V0c2lkZSB0aGUgb3JjaGVzdHJhdG9yIGp1c3QgY2FsbHMgdGhlIGhhbmRsZXJcbiAgICAgIHJldHVybiBoYW5kbGVyKC4uLmFyZ3MpO1xuICAgIH1cbiAgfSkgYXMgQWN0aXZpdHlGdW5jdGlvbjxBcmd1bWVudHMsIE91dHB1dD47XG4gIGZ1bmMuY29tcGxldGUgPSBhc3luYyBmdW5jdGlvbiAocmVxdWVzdCkge1xuICAgIHJldHVybiBnZXRXb3JrZmxvd0NsaWVudCgpLmNvbXBsZXRlQWN0aXZpdHkocmVxdWVzdCk7XG4gIH07XG4gIGZ1bmMuYWN0aXZpdHlJRCA9IGFjdGl2aXR5SUQ7XG4gIHJldHVybiBmdW5jO1xufVxuXG4vKipcbiAqIFJldHJpZXZlIGFuIGFjdGl2aXR5IGZ1bmN0aW9uIHRoYXQgaGFzIGJlZW4gcmVnaXN0ZXJlZCBpbiBhIHdvcmtmbG93LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2FsbGFibGVBY3Rpdml0eShcbiAgYWN0aXZpdHlJZDogc3RyaW5nXG4pOiBBY3Rpdml0eUhhbmRsZXI8YW55PiB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBjYWxsYWJsZUFjdGl2aXRpZXMoKVthY3Rpdml0eUlkXSBhcyBBY3Rpdml0eUhhbmRsZXI8YW55Pjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENhbGxhYmxlQWN0aXZpdHlOYW1lcygpIHtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKGNhbGxhYmxlQWN0aXZpdGllcygpKTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aXZpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0RBQThEO0FBQzlELDJDQUlxQjtBQUNyQixpREFBNEU7QUEyRTVFLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBVTNELFNBQWdCLGFBQWEsQ0FBQyxHQUFRO0lBQ3BDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxnQkFBZ0IsQ0FBQztBQUM3RCxDQUFDO0FBRkQsc0NBRUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFDSSxLQUFLLFVBQVUsV0FBVyxDQUMvQixZQUFxRDtJQUVyRCxJQUFJLENBQUMsSUFBQSwyQkFBZ0IsR0FBRSxFQUFFO1FBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztLQUM1RTtJQUNELE1BQU0sZUFBZSxHQUFHLElBQUEsOEJBQWtCLEdBQUUsQ0FBQztJQUM3QyxJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQ2IsOEZBQThGLENBQy9GLENBQUM7S0FDSDtJQUNELE1BQU0sWUFBWSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNsRCxPQUFPO1FBQ0wsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLGdCQUFvRDtLQUN6RSxDQUFDO0FBQ0osQ0FBQztBQWhCRCxrQ0FnQkM7QUF3QkQsU0FBZ0IsUUFBUSxDQUN0QixVQUFrQixFQUNsQixHQUFHLElBRThDO0lBRWpELE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDeEUseURBQXlEO0lBQ3pELElBQUEsOEJBQWtCLEdBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxPQUFPLENBQUM7SUFDM0MsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBcUQsRUFBRSxFQUFFO1FBQ3pFLElBQUksSUFBQSwrQkFBb0IsR0FBRSxFQUFFO1lBQzFCLCtGQUErRjtZQUMvRixPQUFPLElBQUEscUNBQWtCLEVBQ3ZCLFVBQVUsRUFDVixJQUFJLEVBQ0osSUFBSSxFQUFFLGNBQWMsRUFDcEIsSUFBSSxFQUFFLGdCQUFnQixDQUNoQixDQUFDO1NBQ1Y7YUFBTTtZQUNMLDRFQUE0RTtZQUM1RSxPQUFPLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQyxDQUF3QyxDQUFDO0lBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxXQUFXLE9BQU87UUFDckMsT0FBTyxJQUFBLDRCQUFnQixHQUFFLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekQsQ0FBQyxDQUFDO0lBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDN0IsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBNUJELDRCQTRCQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQ2pDLFVBQWtCO0lBRWxCLE9BQU8sSUFBQSw4QkFBa0IsR0FBRSxDQUFDLFVBQVUsQ0FBeUIsQ0FBQztBQUNsRSxDQUFDO0FBSkQsa0RBSUM7QUFFRCxTQUFnQix3QkFBd0I7SUFDdEMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUEsOEJBQWtCLEdBQUUsQ0FBQyxDQUFDO0FBQzNDLENBQUM7QUFGRCw0REFFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFjdGl2aXR5Q2FsbCB9IGZyb20gXCIuL2NhbGxzL2FjdGl2aXR5LWNhbGwuanNcIjtcbmltcG9ydCB7XG4gIGNhbGxhYmxlQWN0aXZpdGllcyxcbiAgZ2V0QWN0aXZpdHlDb250ZXh0LFxuICBnZXRTZXJ2aWNlQ2xpZW50LFxufSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IGlzQWN0aXZpdHlXb3JrZXIsIGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vcnVudGltZS9mbGFncy5qc1wiO1xuaW1wb3J0IHsgU2VuZEFjdGl2aXR5U3VjY2Vzc1JlcXVlc3QgfSBmcm9tIFwiLi9zZXJ2aWNlLWNsaWVudC5qc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBIb3cgbG9uZyB0aGUgd29ya2Zsb3cgd2lsbCB3YWl0IGZvciB0aGUgYWN0aXZpdHkgdG8gY29tcGxldGUgb3IgZmFpbC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB3b3JrZmxvdyB3aWxsIHJ1biBmb3JldmVyLlxuICAgKi9cbiAgdGltZW91dFNlY29uZHM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBGb3IgbG9uZyBydW5uaW5nIGFjdGl2aXRpZXMsIGl0IGlzIHN1Z2dlc3RlZCB0aGF0IHRoZXkgcmVwb3J0IGJhY2sgdGhhdCB0aGV5XG4gICAqIGFyZSBzdGlsbCBpbiBwcm9ncmVzcyB0byBhdm9pZCB3YWl0aW5nIGZvcmV2ZXIgb3IgdW50aWwgYSBsb25nIHRpbWVvdXQgd2hlblxuICAgKiBzb21ldGhpbmcgZ29lcyB3cm9uZy5cbiAgICpcbiAgICogV2hlbiBzZXQgdG8gYSBwb3NpdGl2ZSBudW1iZXIsIHRoZSBhY3Rpdml0eSBtdXN0IGNhbGwge0BsaW5rIGhlYXJ0YmVhdH0gb3JcbiAgICoge0BsaW5rIFdvcmtmbG93Q2xpZW50LmhlYXJ0YmVhdEFjdGl2aXR5fSBhdCBsZWFzdCBldmVyeSBoZWFydGJlYXRTZWNvbmRzLlxuICAgKlxuICAgKiBJZiBpdCBmYWlscyB0byBkbyBzbywgdGhlIHdvcmtmbG93IHdpbGwgY2FuY2VsIHRoZSBhY3Rpdml0eSBhbmQgdGhyb3cgYW4gZXJyb3IuXG4gICAqL1xuICBoZWFydGJlYXRTZWNvbmRzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzIGV4dGVuZHMgYW55W10sIE91dHB1dCA9IGFueT4ge1xuICAoLi4uYXJnczogQXJndW1lbnRzKTogUHJvbWlzZTxBd2FpdGVkPFVud3JhcEFzeW5jPE91dHB1dD4+PjtcblxuICAvKipcbiAgICogQ29tcGxldGUgYW4gYWN0aXZpdHkgcmVxdWVzdCBieSBpdHMge0BsaW5rIFNlbmRBY3Rpdml0eVN1Y2Nlc3NSZXF1ZXN0LmFjdGl2aXR5VG9rZW59LlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGgge0BsaW5rIGFzeW5jUmVzdWx0fSBpbiBhbiBhY3Rpdml0eVxuICAgKiB0byBwZXJmb3JtIGFzeW5jaHJvbm91cywgbG9uZy1ydW5uaW5nIGNvbXB1dGF0aW9ucy4gRm9yIGV4YW1wbGU6XG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IHRva2VuRXZlbnQgPSBldmVudChcInRva2VuXCIpO1xuICAgKlxuICAgKiBjb25zdCBhc3luY0FjdGl2aXR5ID0gYWN0aXZpdHkoXCJhc3luY1wiLCAoKSA9PiB7XG4gICAqICAgcmV0dXJuIGFzeW5jUmVzdWx0PHN0cmluZz4odG9rZW4gPT4gdG9rZW5FdmVudC5wdWJsaXNoKHsgdG9rZW4gfSkpO1xuICAgKiB9KTtcbiAgICpcbiAgICogdG9rZW5FdmVudC5vbihhc3luYyAoe3Rva2VufSkgPT4ge1xuICAgKiAgIGF3YWl0IGFzeW5jQWN0aXZpdHkuY29tcGxldGUoe1xuICAgKiAgICAgYWN0aXZpdHlUb2tlbjogdG9rZW4sXG4gICAqICAgICByZXN1bHQ6IFwiZG9uZVwiXG4gICAqICAgfSk7XG4gICAqIH0pXG4gICAqIGBgYFxuICAgKi9cbiAgY29tcGxldGUoXG4gICAgcmVxdWVzdDogT21pdDxcbiAgICAgIFNlbmRBY3Rpdml0eVN1Y2Nlc3NSZXF1ZXN0PFVud3JhcEFzeW5jPEF3YWl0ZWQ8T3V0cHV0Pj4+LFxuICAgICAgXCJ0eXBlXCJcbiAgICA+XG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgYWN0aXZpdHlJRDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMgZXh0ZW5kcyBhbnlbXSwgT3V0cHV0ID0gYW55PiB7XG4gICguLi5hcmdzOiBBcmd1bWVudHMpOlxuICAgIHwgUHJvbWlzZTxBd2FpdGVkPE91dHB1dD4+XG4gICAgfCBPdXRwdXRcbiAgICB8IEFzeW5jUmVzdWx0PE91dHB1dD5cbiAgICB8IFByb21pc2U8QXN5bmNSZXN1bHQ8QXdhaXRlZDxPdXRwdXQ+Pj47XG59XG5cbmV4cG9ydCB0eXBlIFVud3JhcEFzeW5jPE91dHB1dD4gPSBPdXRwdXQgZXh0ZW5kcyBBc3luY1Jlc3VsdDxpbmZlciBPPlxuICA/IE9cbiAgOiBPdXRwdXQ7XG5cbmV4cG9ydCB0eXBlIEFjdGl2aXR5QXJndW1lbnRzPEEgZXh0ZW5kcyBBY3Rpdml0eUZ1bmN0aW9uPGFueSwgYW55Pj4gPVxuICBBIGV4dGVuZHMgQWN0aXZpdHlGdW5jdGlvbjxpbmZlciBBcmd1bWVudHMgZXh0ZW5kcyBhbnlbXT4gPyBBcmd1bWVudHMgOiBuZXZlcjtcblxuZXhwb3J0IHR5cGUgQWN0aXZpdHlPdXRwdXQ8QSBleHRlbmRzIEFjdGl2aXR5RnVuY3Rpb248YW55LCBhbnk+PiA9XG4gIEEgZXh0ZW5kcyBBY3Rpdml0eUZ1bmN0aW9uPGFueSwgaW5mZXIgT3V0cHV0PiA/IFVud3JhcEFzeW5jPE91dHB1dD4gOiBuZXZlcjtcblxuY29uc3QgQXN5bmNUb2tlblN5bWJvbCA9IFN5bWJvbC5mb3IoXCJldmVudHVhbDpBc3luY1Rva2VuXCIpO1xuXG4vKipcbiAqIFdoZW4gcmV0dXJuZWQgZnJvbSBhbiBhY3Rpdml0eSwgdGhlIGFjdGl2aXR5IHdpbGwgYmVjb21lIGFzeW5jLFxuICogYWxsb3dpbmcgaXQgdG8gcnVuIFwiZm9yZXZlclwiLiBUaGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBc3luY1Jlc3VsdDxPdXRwdXQgPSBhbnk+IHtcbiAgW0FzeW5jVG9rZW5TeW1ib2xdOiB0eXBlb2YgQXN5bmNUb2tlblN5bWJvbCAmIE91dHB1dDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQXN5bmNSZXN1bHQob2JqOiBhbnkpOiBvYmogaXMgQXN5bmNSZXN1bHQge1xuICByZXR1cm4gISFvYmogJiYgb2JqW0FzeW5jVG9rZW5TeW1ib2xdID09PSBBc3luY1Rva2VuU3ltYm9sO1xufVxuXG4vKipcbiAqIFdoZW4gcmV0dXJuZWQgZnJvbSBhbiB7QGxpbmsgYWN0aXZpdHl9LCB0ZWxscyB0aGUgc3lzdGVtIHRvIG1ha2UgdGhlIGN1cnJlbnRcbiAqIGFjdGl2aXR5IGFzeW5jLiBUaGlzIGFsbG93cyB0aGUgYWN0aXZpdHkgdG8gZGVmZXIgc2VuZGluZyBhIHJlc3BvbnNlIGZyb20gdGhlXG4gKiBjdXJyZW50IGZ1bmN0aW9uIGFuZCBpbnN0ZWFkIGNvbXBsZXRlIHRoZSBhY3Rpdml0eSB3aXRoIHtAbGluayBXb3JrZmxvd0NsaWVudC5jb21wbGV0ZUFjdGl2aXR5fS5cbiAqXG4gKiBgYGB0c1xuICogY29uc3Qgc3FzID0gbmV3IFNRU0NsaWVudCgpO1xuICogYWN0aXZpdHkoXCJteUFjdGl2aXR5XCIsICgpID0+IHtcbiAqICAgIC8vIHRlbGxzIHRoZSBzeXN0ZW0gdGhhdCB0aGUgY29tcGxldGVBY3Rpdml0eSBmdW5jdGlvbiB3aWxsIGJlIGNhbGxlZCBsYXRlciB3aXRoIGEgc3RyaW5nIHJlc3VsdC5cbiAqICAgIHJldHVybiBhc3luY1Jlc3VsdDxzdHJpbmc+KGFzeW5jIChhY3Rpdml0eVRva2VuKSA9PiB7XG4gKiAgICAgICAvLyBiZWZvcmUgZXhpdGluZywgc2VuZCB0aGUgYWN0aXZpdHlUb2tlbiB0byBhIHNxcyBxdWV1ZSB0byBiZSBjb21wbGV0ZWQgbGF0ZXJcbiAqICAgICAgIC8vIHlvdSBjb3VsZCBpbnZva2UgYW55IHNlcnZpY2UgaGVyZVxuICogICAgICAgYXdhaXQgc3FzLnNlbmQobmV3IFNlbmRNZXNzYWdlQ29tbWFuZCh7IC4uLiwgbWVzc2FnZTogSlNPTmwuc3RyaW5naWZ5KHsgYWN0aXZpdHlUb2tlbiB9KSkpO1xuICogICAgfSk7XG4gKiB9KVxuICogYGBgXG4gKlxuICogQHBhcmFtIHRva2VuQ29udGV4dCBpcyBhIGNhbGxiYWNrIHdoaWNoIHByb3ZpZGVzIHRoZSBhY3Rpdml0eVRva2VuLiBUaGUgYWN0aXZpdHkgdG9rZW4gaXMgdXNlZFxuICogICAgICAgICAgICAgICAgICAgICB0byBjb21wbGV0ZUFjdGl2aXR5IGFuZCBoZWFydGJlYXRBY3Rpdml0eSBmcm9tIG91dHNpZGUgb2YgdGhlXG4gKiAgICAgICAgICAgICAgICAgICAgIGFjdGl2aXR5LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYXN5bmNSZXN1bHQ8T3V0cHV0ID0gYW55PihcbiAgdG9rZW5Db250ZXh0OiAodG9rZW46IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPiB8IHZvaWRcbik6IFByb21pc2U8QXN5bmNSZXN1bHQ8T3V0cHV0Pj4ge1xuICBpZiAoIWlzQWN0aXZpdHlXb3JrZXIoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcImFzeW5jUmVzdWx0IGNhbiBvbmx5IGJlIGNhbGxlZCBmcm9tIHdpdGhpbiBhbiBhY3Rpdml0eS5cIik7XG4gIH1cbiAgY29uc3QgYWN0aXZpdHlDb250ZXh0ID0gZ2V0QWN0aXZpdHlDb250ZXh0KCk7XG4gIGlmICghYWN0aXZpdHlDb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJBY3Rpdml0eSBjb250ZXh0IGhhcyBub3QgYmVlbiBzZXQgeWV0LCBhc3luY1Jlc3VsdCBjYW4gb25seSBiZSB1c2VkIGZyb20gd2l0aGluIGFuIGFjdGl2aXR5LlwiXG4gICAgKTtcbiAgfVxuICBhd2FpdCB0b2tlbkNvbnRleHQoYWN0aXZpdHlDb250ZXh0LmFjdGl2aXR5VG9rZW4pO1xuICByZXR1cm4ge1xuICAgIFtBc3luY1Rva2VuU3ltYm9sXTogQXN5bmNUb2tlblN5bWJvbCBhcyB0eXBlb2YgQXN5bmNUb2tlblN5bWJvbCAmIE91dHB1dCxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpdml0eUNvbnRleHQge1xuICB3b3JrZmxvd05hbWU6IHN0cmluZztcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgYWN0aXZpdHlUb2tlbjogc3RyaW5nO1xuICBzY2hlZHVsZWRUaW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVnaXN0ZXJzIGEgZnVuY3Rpb24gYXMgYW4gQWN0aXZpdHkuXG4gKlxuICogQHBhcmFtIGFjdGl2aXR5SUQgYSBzdHJpbmcgdGhhdCB1bmlxdWVseSBpZGVudGlmaWVzIHRoZSBBY3Rpdml0eSB3aXRoaW4gYSBzaW5nbGUgd29ya2Zsb3cgY29udGV4dC5cbiAqIEBwYXJhbSBoYW5kbGVyIHRoZSBmdW5jdGlvbiB0aGF0IGhhbmRsZXMgdGhlIGFjdGl2aXR5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhY3Rpdml0eTxBcmd1bWVudHMgZXh0ZW5kcyBhbnlbXSwgT3V0cHV0ID0gYW55PihcbiAgYWN0aXZpdHlJRDogc3RyaW5nLFxuICBoYW5kbGVyOiBBY3Rpdml0eUhhbmRsZXI8QXJndW1lbnRzLCBPdXRwdXQ+XG4pOiBBY3Rpdml0eUZ1bmN0aW9uPEFyZ3VtZW50cywgT3V0cHV0PjtcbmV4cG9ydCBmdW5jdGlvbiBhY3Rpdml0eTxBcmd1bWVudHMgZXh0ZW5kcyBhbnlbXSwgT3V0cHV0ID0gYW55PihcbiAgYWN0aXZpdHlJRDogc3RyaW5nLFxuICBvcHRzOiBBY3Rpdml0eU9wdGlvbnMsXG4gIGhhbmRsZXI6IEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMsIE91dHB1dD5cbik6IEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+O1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGl2aXR5PEFyZ3VtZW50cyBleHRlbmRzIGFueVtdLCBPdXRwdXQgPSBhbnk+KFxuICBhY3Rpdml0eUlEOiBzdHJpbmcsXG4gIC4uLmFyZ3M6XG4gICAgfCBbb3B0czogQWN0aXZpdHlPcHRpb25zLCBoYW5kbGVyOiBBY3Rpdml0eUhhbmRsZXI8QXJndW1lbnRzLCBPdXRwdXQ+XVxuICAgIHwgW2hhbmRsZXI6IEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMsIE91dHB1dD5dXG4pOiBBY3Rpdml0eUZ1bmN0aW9uPEFyZ3VtZW50cywgT3V0cHV0PiB7XG4gIGNvbnN0IFtvcHRzLCBoYW5kbGVyXSA9IGFyZ3MubGVuZ3RoID09PSAxID8gW3VuZGVmaW5lZCwgYXJnc1swXV0gOiBhcmdzO1xuICAvLyByZWdpc3RlciB0aGUgaGFuZGxlciB0byBiZSBsb29rZWQgdXAgZHVyaW5nIGV4ZWN1dGlvbi5cbiAgY2FsbGFibGVBY3Rpdml0aWVzKClbYWN0aXZpdHlJRF0gPSBoYW5kbGVyO1xuICBjb25zdCBmdW5jID0gKCguLi5hcmdzOiBQYXJhbWV0ZXJzPEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+PikgPT4ge1xuICAgIGlmIChpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgICAvLyBpZiB3ZSdyZSBpbiB0aGUgb3JjaGVzdHJhdG9yLCByZXR1cm4gYSBjb21tYW5kIHRvIGludm9rZSB0aGUgYWN0aXZpdHkgaW4gdGhlIHdvcmtlciBmdW5jdGlvblxuICAgICAgcmV0dXJuIGNyZWF0ZUFjdGl2aXR5Q2FsbChcbiAgICAgICAgYWN0aXZpdHlJRCxcbiAgICAgICAgYXJncyxcbiAgICAgICAgb3B0cz8udGltZW91dFNlY29uZHMsXG4gICAgICAgIG9wdHM/LmhlYXJ0YmVhdFNlY29uZHNcbiAgICAgICkgYXMgYW55O1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBjYWxsaW5nIHRoZSBhY3Rpdml0eSBmcm9tIG91dHNpZGUgdGhlIG9yY2hlc3RyYXRvciBqdXN0IGNhbGxzIHRoZSBoYW5kbGVyXG4gICAgICByZXR1cm4gaGFuZGxlciguLi5hcmdzKTtcbiAgICB9XG4gIH0pIGFzIEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+O1xuICBmdW5jLmNvbXBsZXRlID0gYXN5bmMgZnVuY3Rpb24gKHJlcXVlc3QpIHtcbiAgICByZXR1cm4gZ2V0U2VydmljZUNsaWVudCgpLnNlbmRBY3Rpdml0eVN1Y2Nlc3MocmVxdWVzdCk7XG4gIH07XG4gIGZ1bmMuYWN0aXZpdHlJRCA9IGFjdGl2aXR5SUQ7XG4gIHJldHVybiBmdW5jO1xufVxuXG4vKipcbiAqIFJldHJpZXZlIGFuIGFjdGl2aXR5IGZ1bmN0aW9uIHRoYXQgaGFzIGJlZW4gcmVnaXN0ZXJlZCBpbiBhIHdvcmtmbG93LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2FsbGFibGVBY3Rpdml0eShcbiAgYWN0aXZpdHlJZDogc3RyaW5nXG4pOiBBY3Rpdml0eUhhbmRsZXI8YW55PiB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBjYWxsYWJsZUFjdGl2aXRpZXMoKVthY3Rpdml0eUlkXSBhcyBBY3Rpdml0eUhhbmRsZXI8YW55Pjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENhbGxhYmxlQWN0aXZpdHlOYW1lcygpIHtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKGNhbGxhYmxlQWN0aXZpdGllcygpKTtcbn1cbiJdfQ==

@@ -70,3 +70,3 @@ "use strict";

else {
return (0, global_js_1.getEventClient)().publish(...envelopes);
return (0, index_js_1.getServiceClient)().publishEvents({ events: envelopes });
}

@@ -79,2 +79,2 @@ },

exports.event = event;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQXNFO0FBQ3RFLDJDQUF5RTtBQUN6RSx5Q0FBa0Q7QUFnR2xEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUNHO0FBQ0gsU0FBZ0IsS0FBSyxDQUF5QixJQUFZO0lBQ3hELElBQUksSUFBQSxrQkFBTSxHQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLElBQUksa0JBQWtCLENBQUMsQ0FBQztLQUM3RDtJQUNELE1BQU0sS0FBSyxHQUFhO1FBQ3RCLElBQUk7UUFDSixFQUFFLENBQUMsT0FBTztZQUNSLElBQUEsOEJBQWtCLEdBQUUsQ0FBQyxJQUFJLENBQUM7Z0JBQ3hCLGFBQWEsRUFBRTtvQkFDYjt3QkFDRSxJQUFJO3FCQUNMO2lCQUNGO2dCQUNELE9BQU8sRUFBRSxPQUFxQzthQUMvQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsTUFBTTtZQUNmLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3ZDLElBQUk7Z0JBQ0osS0FBSzthQUNOLENBQUMsQ0FBQyxDQUFDO1lBQ0osSUFBSSxJQUFBLCtCQUFvQixHQUFFLEVBQUU7Z0JBQzFCLE9BQU8sSUFBQSw2Q0FBdUIsRUFBQyxTQUFTLENBQVEsQ0FBQzthQUNsRDtpQkFBTTtnQkFDTCxPQUFPLElBQUEsMEJBQWMsR0FBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDO2FBQy9DO1FBQ0gsQ0FBQztLQUNGLENBQUM7SUFDRixJQUFBLGtCQUFNLEdBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFCLE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQTlCRCxzQkE4QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVQdWJsaXNoRXZlbnRzQ2FsbCB9IGZyb20gXCIuL2NhbGxzL3NlbmQtZXZlbnRzLWNhbGwuanNcIjtcbmltcG9ydCB7IGV2ZW50cywgZXZlbnRTdWJzY3JpcHRpb25zLCBnZXRFdmVudENsaWVudCB9IGZyb20gXCIuL2dsb2JhbC5qc1wiO1xuaW1wb3J0IHsgaXNPcmNoZXN0cmF0b3JXb3JrZXIgfSBmcm9tIFwiLi9pbmRleC5qc1wiO1xuXG4vKipcbiAqIEFuIEV2ZW50UGF5bG9hZCBpcyB0aGUgZGF0YSBzZW50IGFzIGFuIGV2ZW50LlxuICpcbiAqIEl0IG11c3QgYmUgYW4gb2JqZWN0LiBQcm9wZXJ0aWVzIGNhbiBiZSBhbnkgdHlwZSBzZXJpYWxpemFibGUgYXMgSlNPTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudFBheWxvYWQge1xuICBbcHJvcE5hbWU6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgRXZlbnRQYXlsb2FkVHlwZTxFIGV4dGVuZHMgRXZlbnQ8YW55Pj4gPSBFIGV4dGVuZHMgRXZlbnQ8XG4gIGluZmVyIFBheWxvYWRcbj5cbiAgPyBQYXlsb2FkXG4gIDogbmV2ZXI7XG5cbi8qKlxuICogQW4gZW52ZWxvcGUgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIHtAbGluayBldmVudH0gcGF5bG9hZCBhc3NvY2lhdGVkXG4gKiB3aXRoIGl0cyB1bmlxdWUge0BsaW5rIG5hbWV9LlxuICpcbiAqIFRoaXMgZW52ZWxvcGUgZGVjb3VwbGVzIHRoZSB7QGxpbmsgbmFtZX0gZnJvIHRoZSBwYXlsb2FkIHNvIHRoYXRcbiAqIHRoZXJlIGFyZSBubyBpbXBvc2l0aW9ucyBvbiB0aGUgc3RydWN0dXJlIG9mIGFuIGV2ZW50LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50RW52ZWxvcGU8RSBleHRlbmRzIEV2ZW50UGF5bG9hZCA9IEV2ZW50UGF5bG9hZD4ge1xuICAvKipcbiAgICogVW5pcXVlIG5hbWUgaWRlbnRpZnlpbmcgdGhlIHR5cGUgb2YgdGhlIHtAbGluayBldmVudH0uXG4gICAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUge0BsaW5rIEV2ZW50UGF5bG9hZH0uXG4gICAqL1xuICBldmVudDogRTtcbn1cblxuLyoqXG4gKiBBbiB7QGxpbmsgRXZlbnR9IGlzIGFuIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIGRlY2xhcmF0aW9uIG9mIGFuIGV2ZW50XG4gKiB0aGF0IGJlbG9uZ3Mgd2l0aGluIHRoZSBzZXJ2aWNlLiBBbiB7QGxpbmsgRXZlbnR9IGhhcyBhIHVuaXF1ZSB7QGxpbmsgbmFtZX0sXG4gKiBtYXkgYmUge0BsaW5rIHB1Ymxpc2h9ZWQgYW5kIHtAbGluayBvbn1kIHRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50PEUgZXh0ZW5kcyBFdmVudFBheWxvYWQgPSBFdmVudFBheWxvYWQ+IHtcbiAgLyoqXG4gICAqIFRoZSBFdmVudCdzIGdsb2JhbGx5IHVuaXF1ZSBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogU3Vic2NyaWJlIHRvIHRoaXMgZXZlbnQuIFRoZSB7QGxpbmsgaGFuZGxlcn0gd2lsbCBiZSBpbnZva2VkIGV2ZXJ5XG4gICAqIHRpbWUgYW4gZXZlbnQgd2l0aCB0aGlzIG5hbWUgaXMgcHVibGlzaGVkIHdpdGhpbiB0aGUgc2VydmljZSBib3VuZGFyeS5cbiAgICpcbiAgICogQHBhcmFtIGhhbmRsZXIgdGhlIGhhbmRsZXIgZnVuY3Rpb24gdGhhdCB3aWxsIHByb2Nlc3MgdGhlIGV2ZW50LlxuICAgKi9cbiAgb24oaGFuZGxlcjogKGV2ZW50OiBFKSA9PiBQcm9taXNlPHZvaWQ+KTogdm9pZDtcbiAgLyoqXG4gICAqIFB1Ymxpc2ggZXZlbnRzIG9mIHRoaXMgdHlwZSB3aXRoaW4gdGhlIHNlcnZpY2UgYm91bmRhcnkuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudHMgYSBsaXN0IG9mIGV2ZW50cyB0byBwdWJsaXNoLlxuICAgKi9cbiAgcHVibGlzaCguLi5ldmVudHM6IEVbXSk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogQSB7QGxpbmsgU3Vic2NyaXB0aW9ufSBpcyBhbiBvYmplY3QgdGhhdCBkZXNjcmliZXMgaG93IHRvIHNlbGVjdCBldmVudHMgZnJvbVxuICogd2l0aGluIGEgc2VydmljZSBib3VuZGFyeSB0byByb3V0ZSB0byBhIHtAbGluayBFdmVudEhhbmRsZXJ9LlxuICpcbiAqIEZvciBub3csIHdlIG9ubHkgc3VwcG9ydCBtYXRjaGluZyBvbiBhIHNpbmdsZSBuYW1lLCBidXQgdGhpcyBvYmplY3QgY2FuIGJlXG4gKiBleHRlbmRlZCB3aXRoIG90aGVyIHByb3BlcnRpZXMgc3VjaCBhcyBzZWxlY3Rpb24gcHJlZGljYXRlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdWJzY3JpcHRpb24ge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZXZlbnQgdG8gc3Vic2NyaWJlIHRvLlxuICAgKi9cbiAgbmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFuIHtAbGluayBFdmVudFN1YnNjcmlwdGlvbn0gaXMgYW4gb2JqZWN0IHRoYXQgYXNzb2NpYXRlcyBhIHtAbGluayBoYW5kbGVyfVxuICogZnVuY3Rpb24gd2l0aCBhIGxpc3Qgb2Yge0BsaW5rIHN1YnNjcmlwdGlvbnN9LiBUaGUge0BsaW5rIHN1YnNjcmlwdGlvbnN9XG4gKiBkZWZpbmUgd2hpY2ggZXZlbnRzIHRoaXMge0BsaW5rIGhhbmRsZXJ9IHNob3VsZCBiZSBpbnZva2VkIGZvci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudFN1YnNjcmlwdGlvbjxFIGV4dGVuZHMgRXZlbnRQYXlsb2FkID0gRXZlbnRQYXlsb2FkPiB7XG4gIC8qKlxuICAgKiBBIGxpc3Qgb2Yge0BsaW5rIFN1YnNjcmlwdGlvbn1zIHRoYXQgc2hvdWxkIGludm9rZSB0aGlzIHtAbGluayBoYW5kbGVyfS5cbiAgICovXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdO1xuICAvKipcbiAgICogVGhlIHtAbGluayBFdmVudEhhbmRsZXJ9IHRvIGludm9rZSBmb3IgYW55IGV2ZW50IHRoYXQgbWF0Y2hlcyBvbmUgb2ZcbiAgICogdGhlIHtAbGluayBzdWJzY3JpcHRpb25zfS5cbiAgICovXG4gIGhhbmRsZXI6IEV2ZW50SGFuZGxlcjxFPjtcbn1cblxuLyoqXG4gKiBBIEZ1bmN0aW9uIHRoYXQgcHJvY2Vzc2VzIGFuIHtAbGluayBldmVudH0gb2YgdHlwZSB7QGxpbmsgRX0uXG4gKi9cbmV4cG9ydCB0eXBlIEV2ZW50SGFuZGxlcjxFIGV4dGVuZHMgRXZlbnRQYXlsb2FkPiA9IChldmVudDogRSkgPT4gUHJvbWlzZTx2b2lkPjtcblxuLyoqXG4gKiBEZWNsYXJlcyBhbiBldmVudCB0aGF0IGNhbiBiZSBwdWJsaXNoZWQgYW5kIHN1YnNjcmliZWQgdG8uXG4gKlxuICogVG8gZGVjbGFyZSBhbiB7QGxpbmsgRXZlbnR9LCBkZWZpbmUgYW4gaW50ZXJmYWNlIGRlc2NyaWJpbmcgdGhlIHR5cGVcbiAqIG9mIHRoZSBwYXlsb2FkIGFuZCB0aGVuIGRlY2xhcmUgYW4gZXZlbnQgb2JqZWN0IGdpdmluZyBpdCBhIHVuaXF1ZSBuYW1lLlxuICogYGBgdHNcbiAqIGludGVyZmFjZSBDaGVja291dEV2ZW50IHtcbiAqICAgY3VzdG9tZXJJZDogc3RyaW5nO1xuICogICBjYXJ0SWQ6IHN0cmluZztcbiAqICAgdGltZXN0YW1wOiBzdHJpbmc7XG4gKiB9XG4gKlxuICogY29uc3QgY2hlY2tvdXRFdmVudCA9IGV2ZW50PENoZWNrb3V0RXZlbnQ+KFwiQ2hlY2tvdXRcIik7XG4gKiBgYGBcbiAqXG4gKiBUbyBwdWJsaXNoIGV2ZW50cywgY2FsbCB0aGUgYHB1Ymxpc2hgIG1ldGhvZDpcbiAqIGBgYHRzXG4gKiBjb25zdCBjaGVja291dFdvcmtmbG93ID0gd29ya2Zsb3coXCJjaGVja291dFdvcmtmbG93XCIsIGFzeW5jIChyZXF1ZXN0KSA9PiB7XG4gKiAgIGF3YWl0IGNoZWNrb3V0RXZlbnQucHVibGlzaCh7XG4gKiAgICAgY3VzdG9tZXJJZDogcmVxdWVzdC5jdXN0b21lcklkLFxuICogICAgIGNhcnRJZDogcmVxdWVzdC5jYXJ0SWQsXG4gKiAgICAgdGltZXN0YW1wOiBuZXcgRGF0ZSgpLnRvVGltZVN0cmluZygpXG4gKiAgIH0pO1xuICogfSlcbiAqIGBgYFxuICpcbiAqIFRvIHN1YnNjcmliZSB0byBldmVudHMsIGNhbGwgdGhlIGBvbmAgbWV0aG9kLiBUaGlzIHdpbGwgcmVnaXN0ZXIgYVxuICogaGFuZGxlciB0aGF0IHdpbCBsYmUgaW52b2tlZCBmb3IgZXZlcnkgZXZlbnQgb2YgdGhpcyB0eXBlIHRoYXQgaXMgcmVjZWl2ZWQuXG4gKlxuICogYGBgdHNcbiAqIGNoZWNrb3V0RXZlbnQub24oYXN5bmMgKGNoZWNrb3V0KSA9PiB7XG4gKiAgIGNvbnNvbGUubG9nKGNoZWNrb3V0KTtcbiAqIH0pO1xuICogYGBgXG4gKlxuICogQHBhcmFtIG5hbWUgYSB1bmlxdWUgbmFtZSB0aGF0IGlkZW50aWZpZXMgdGhpcyBldmVudCB0eXBlIHdpdGhpbiB0aGUgU2VydmljZS5cbiAqIEByZXR1cm5zIGFuIHtAbGluayBFdmVudH1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV2ZW50PEUgZXh0ZW5kcyBFdmVudFBheWxvYWQ+KG5hbWU6IHN0cmluZyk6IEV2ZW50PEU+IHtcbiAgaWYgKGV2ZW50cygpLmhhcyhuYW1lKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgZXZlbnQgd2l0aCBuYW1lICcke25hbWV9JyBhbHJlYWR5IGV4aXN0c2ApO1xuICB9XG4gIGNvbnN0IGV2ZW50OiBFdmVudDxFPiA9IHtcbiAgICBuYW1lLFxuICAgIG9uKGhhbmRsZXIpIHtcbiAgICAgIGV2ZW50U3Vic2NyaXB0aW9ucygpLnB1c2goe1xuICAgICAgICBzdWJzY3JpcHRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBoYW5kbGVyOiBoYW5kbGVyIGFzIEV2ZW50SGFuZGxlcjxFdmVudFBheWxvYWQ+LFxuICAgICAgfSk7XG4gICAgfSxcbiAgICBwdWJsaXNoKC4uLmV2ZW50cykge1xuICAgICAgY29uc3QgZW52ZWxvcGVzID0gZXZlbnRzLm1hcCgoZXZlbnQpID0+ICh7XG4gICAgICAgIG5hbWUsXG4gICAgICAgIGV2ZW50LFxuICAgICAgfSkpO1xuICAgICAgaWYgKGlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICAgICAgcmV0dXJuIGNyZWF0ZVB1Ymxpc2hFdmVudHNDYWxsKGVudmVsb3BlcykgYXMgYW55O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGdldEV2ZW50Q2xpZW50KCkucHVibGlzaCguLi5lbnZlbG9wZXMpO1xuICAgICAgfVxuICAgIH0sXG4gIH07XG4gIGV2ZW50cygpLnNldChuYW1lLCBldmVudCk7XG4gIHJldHVybiBldmVudDtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQXNFO0FBQ3RFLDJDQUF5RDtBQUN6RCx5Q0FBb0U7QUFnR3BFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUNHO0FBQ0gsU0FBZ0IsS0FBSyxDQUF5QixJQUFZO0lBQ3hELElBQUksSUFBQSxrQkFBTSxHQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLElBQUksa0JBQWtCLENBQUMsQ0FBQztLQUM3RDtJQUNELE1BQU0sS0FBSyxHQUFhO1FBQ3RCLElBQUk7UUFDSixFQUFFLENBQUMsT0FBTztZQUNSLElBQUEsOEJBQWtCLEdBQUUsQ0FBQyxJQUFJLENBQUM7Z0JBQ3hCLGFBQWEsRUFBRTtvQkFDYjt3QkFDRSxJQUFJO3FCQUNMO2lCQUNGO2dCQUNELE9BQU8sRUFBRSxPQUFxQzthQUMvQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsTUFBTTtZQUNmLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3ZDLElBQUk7Z0JBQ0osS0FBSzthQUNOLENBQUMsQ0FBQyxDQUFDO1lBQ0osSUFBSSxJQUFBLCtCQUFvQixHQUFFLEVBQUU7Z0JBQzFCLE9BQU8sSUFBQSw2Q0FBdUIsRUFBQyxTQUFTLENBQVEsQ0FBQzthQUNsRDtpQkFBTTtnQkFDTCxPQUFPLElBQUEsMkJBQWdCLEdBQUUsQ0FBQyxhQUFhLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQzthQUNoRTtRQUNILENBQUM7S0FDRixDQUFDO0lBQ0YsSUFBQSxrQkFBTSxHQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUE5QkQsc0JBOEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlUHVibGlzaEV2ZW50c0NhbGwgfSBmcm9tIFwiLi9jYWxscy9zZW5kLWV2ZW50cy1jYWxsLmpzXCI7XG5pbXBvcnQgeyBldmVudHMsIGV2ZW50U3Vic2NyaXB0aW9ucyB9IGZyb20gXCIuL2dsb2JhbC5qc1wiO1xuaW1wb3J0IHsgZ2V0U2VydmljZUNsaWVudCwgaXNPcmNoZXN0cmF0b3JXb3JrZXIgfSBmcm9tIFwiLi9pbmRleC5qc1wiO1xuXG4vKipcbiAqIEFuIEV2ZW50UGF5bG9hZCBpcyB0aGUgZGF0YSBzZW50IGFzIGFuIGV2ZW50LlxuICpcbiAqIEl0IG11c3QgYmUgYW4gb2JqZWN0LiBQcm9wZXJ0aWVzIGNhbiBiZSBhbnkgdHlwZSBzZXJpYWxpemFibGUgYXMgSlNPTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudFBheWxvYWQge1xuICBbcHJvcE5hbWU6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgRXZlbnRQYXlsb2FkVHlwZTxFIGV4dGVuZHMgRXZlbnQ8YW55Pj4gPSBFIGV4dGVuZHMgRXZlbnQ8XG4gIGluZmVyIFBheWxvYWRcbj5cbiAgPyBQYXlsb2FkXG4gIDogbmV2ZXI7XG5cbi8qKlxuICogQW4gZW52ZWxvcGUgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIHtAbGluayBldmVudH0gcGF5bG9hZCBhc3NvY2lhdGVkXG4gKiB3aXRoIGl0cyB1bmlxdWUge0BsaW5rIG5hbWV9LlxuICpcbiAqIFRoaXMgZW52ZWxvcGUgZGVjb3VwbGVzIHRoZSB7QGxpbmsgbmFtZX0gZnJvIHRoZSBwYXlsb2FkIHNvIHRoYXRcbiAqIHRoZXJlIGFyZSBubyBpbXBvc2l0aW9ucyBvbiB0aGUgc3RydWN0dXJlIG9mIGFuIGV2ZW50LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50RW52ZWxvcGU8RSBleHRlbmRzIEV2ZW50UGF5bG9hZCA9IEV2ZW50UGF5bG9hZD4ge1xuICAvKipcbiAgICogVW5pcXVlIG5hbWUgaWRlbnRpZnlpbmcgdGhlIHR5cGUgb2YgdGhlIHtAbGluayBldmVudH0uXG4gICAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUge0BsaW5rIEV2ZW50UGF5bG9hZH0uXG4gICAqL1xuICBldmVudDogRTtcbn1cblxuLyoqXG4gKiBBbiB7QGxpbmsgRXZlbnR9IGlzIGFuIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIGRlY2xhcmF0aW9uIG9mIGFuIGV2ZW50XG4gKiB0aGF0IGJlbG9uZ3Mgd2l0aGluIHRoZSBzZXJ2aWNlLiBBbiB7QGxpbmsgRXZlbnR9IGhhcyBhIHVuaXF1ZSB7QGxpbmsgbmFtZX0sXG4gKiBtYXkgYmUge0BsaW5rIHB1Ymxpc2h9ZWQgYW5kIHtAbGluayBvbn1kIHRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50PEUgZXh0ZW5kcyBFdmVudFBheWxvYWQgPSBFdmVudFBheWxvYWQ+IHtcbiAgLyoqXG4gICAqIFRoZSBFdmVudCdzIGdsb2JhbGx5IHVuaXF1ZSBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogU3Vic2NyaWJlIHRvIHRoaXMgZXZlbnQuIFRoZSB7QGxpbmsgaGFuZGxlcn0gd2lsbCBiZSBpbnZva2VkIGV2ZXJ5XG4gICAqIHRpbWUgYW4gZXZlbnQgd2l0aCB0aGlzIG5hbWUgaXMgcHVibGlzaGVkIHdpdGhpbiB0aGUgc2VydmljZSBib3VuZGFyeS5cbiAgICpcbiAgICogQHBhcmFtIGhhbmRsZXIgdGhlIGhhbmRsZXIgZnVuY3Rpb24gdGhhdCB3aWxsIHByb2Nlc3MgdGhlIGV2ZW50LlxuICAgKi9cbiAgb24oaGFuZGxlcjogKGV2ZW50OiBFKSA9PiBQcm9taXNlPHZvaWQ+KTogdm9pZDtcbiAgLyoqXG4gICAqIFB1Ymxpc2ggZXZlbnRzIG9mIHRoaXMgdHlwZSB3aXRoaW4gdGhlIHNlcnZpY2UgYm91bmRhcnkuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudHMgYSBsaXN0IG9mIGV2ZW50cyB0byBwdWJsaXNoLlxuICAgKi9cbiAgcHVibGlzaCguLi5ldmVudHM6IEVbXSk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogQSB7QGxpbmsgU3Vic2NyaXB0aW9ufSBpcyBhbiBvYmplY3QgdGhhdCBkZXNjcmliZXMgaG93IHRvIHNlbGVjdCBldmVudHMgZnJvbVxuICogd2l0aGluIGEgc2VydmljZSBib3VuZGFyeSB0byByb3V0ZSB0byBhIHtAbGluayBFdmVudEhhbmRsZXJ9LlxuICpcbiAqIEZvciBub3csIHdlIG9ubHkgc3VwcG9ydCBtYXRjaGluZyBvbiBhIHNpbmdsZSBuYW1lLCBidXQgdGhpcyBvYmplY3QgY2FuIGJlXG4gKiBleHRlbmRlZCB3aXRoIG90aGVyIHByb3BlcnRpZXMgc3VjaCBhcyBzZWxlY3Rpb24gcHJlZGljYXRlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdWJzY3JpcHRpb24ge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZXZlbnQgdG8gc3Vic2NyaWJlIHRvLlxuICAgKi9cbiAgbmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFuIHtAbGluayBFdmVudFN1YnNjcmlwdGlvbn0gaXMgYW4gb2JqZWN0IHRoYXQgYXNzb2NpYXRlcyBhIHtAbGluayBoYW5kbGVyfVxuICogZnVuY3Rpb24gd2l0aCBhIGxpc3Qgb2Yge0BsaW5rIHN1YnNjcmlwdGlvbnN9LiBUaGUge0BsaW5rIHN1YnNjcmlwdGlvbnN9XG4gKiBkZWZpbmUgd2hpY2ggZXZlbnRzIHRoaXMge0BsaW5rIGhhbmRsZXJ9IHNob3VsZCBiZSBpbnZva2VkIGZvci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudFN1YnNjcmlwdGlvbjxFIGV4dGVuZHMgRXZlbnRQYXlsb2FkID0gRXZlbnRQYXlsb2FkPiB7XG4gIC8qKlxuICAgKiBBIGxpc3Qgb2Yge0BsaW5rIFN1YnNjcmlwdGlvbn1zIHRoYXQgc2hvdWxkIGludm9rZSB0aGlzIHtAbGluayBoYW5kbGVyfS5cbiAgICovXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdO1xuICAvKipcbiAgICogVGhlIHtAbGluayBFdmVudEhhbmRsZXJ9IHRvIGludm9rZSBmb3IgYW55IGV2ZW50IHRoYXQgbWF0Y2hlcyBvbmUgb2ZcbiAgICogdGhlIHtAbGluayBzdWJzY3JpcHRpb25zfS5cbiAgICovXG4gIGhhbmRsZXI6IEV2ZW50SGFuZGxlcjxFPjtcbn1cblxuLyoqXG4gKiBBIEZ1bmN0aW9uIHRoYXQgcHJvY2Vzc2VzIGFuIHtAbGluayBldmVudH0gb2YgdHlwZSB7QGxpbmsgRX0uXG4gKi9cbmV4cG9ydCB0eXBlIEV2ZW50SGFuZGxlcjxFIGV4dGVuZHMgRXZlbnRQYXlsb2FkPiA9IChldmVudDogRSkgPT4gUHJvbWlzZTx2b2lkPjtcblxuLyoqXG4gKiBEZWNsYXJlcyBhbiBldmVudCB0aGF0IGNhbiBiZSBwdWJsaXNoZWQgYW5kIHN1YnNjcmliZWQgdG8uXG4gKlxuICogVG8gZGVjbGFyZSBhbiB7QGxpbmsgRXZlbnR9LCBkZWZpbmUgYW4gaW50ZXJmYWNlIGRlc2NyaWJpbmcgdGhlIHR5cGVcbiAqIG9mIHRoZSBwYXlsb2FkIGFuZCB0aGVuIGRlY2xhcmUgYW4gZXZlbnQgb2JqZWN0IGdpdmluZyBpdCBhIHVuaXF1ZSBuYW1lLlxuICogYGBgdHNcbiAqIGludGVyZmFjZSBDaGVja291dEV2ZW50IHtcbiAqICAgY3VzdG9tZXJJZDogc3RyaW5nO1xuICogICBjYXJ0SWQ6IHN0cmluZztcbiAqICAgdGltZXN0YW1wOiBzdHJpbmc7XG4gKiB9XG4gKlxuICogY29uc3QgY2hlY2tvdXRFdmVudCA9IGV2ZW50PENoZWNrb3V0RXZlbnQ+KFwiQ2hlY2tvdXRcIik7XG4gKiBgYGBcbiAqXG4gKiBUbyBwdWJsaXNoIGV2ZW50cywgY2FsbCB0aGUgYHB1Ymxpc2hgIG1ldGhvZDpcbiAqIGBgYHRzXG4gKiBjb25zdCBjaGVja291dFdvcmtmbG93ID0gd29ya2Zsb3coXCJjaGVja291dFdvcmtmbG93XCIsIGFzeW5jIChyZXF1ZXN0KSA9PiB7XG4gKiAgIGF3YWl0IGNoZWNrb3V0RXZlbnQucHVibGlzaCh7XG4gKiAgICAgY3VzdG9tZXJJZDogcmVxdWVzdC5jdXN0b21lcklkLFxuICogICAgIGNhcnRJZDogcmVxdWVzdC5jYXJ0SWQsXG4gKiAgICAgdGltZXN0YW1wOiBuZXcgRGF0ZSgpLnRvVGltZVN0cmluZygpXG4gKiAgIH0pO1xuICogfSlcbiAqIGBgYFxuICpcbiAqIFRvIHN1YnNjcmliZSB0byBldmVudHMsIGNhbGwgdGhlIGBvbmAgbWV0aG9kLiBUaGlzIHdpbGwgcmVnaXN0ZXIgYVxuICogaGFuZGxlciB0aGF0IHdpbCBsYmUgaW52b2tlZCBmb3IgZXZlcnkgZXZlbnQgb2YgdGhpcyB0eXBlIHRoYXQgaXMgcmVjZWl2ZWQuXG4gKlxuICogYGBgdHNcbiAqIGNoZWNrb3V0RXZlbnQub24oYXN5bmMgKGNoZWNrb3V0KSA9PiB7XG4gKiAgIGNvbnNvbGUubG9nKGNoZWNrb3V0KTtcbiAqIH0pO1xuICogYGBgXG4gKlxuICogQHBhcmFtIG5hbWUgYSB1bmlxdWUgbmFtZSB0aGF0IGlkZW50aWZpZXMgdGhpcyBldmVudCB0eXBlIHdpdGhpbiB0aGUgU2VydmljZS5cbiAqIEByZXR1cm5zIGFuIHtAbGluayBFdmVudH1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV2ZW50PEUgZXh0ZW5kcyBFdmVudFBheWxvYWQ+KG5hbWU6IHN0cmluZyk6IEV2ZW50PEU+IHtcbiAgaWYgKGV2ZW50cygpLmhhcyhuYW1lKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgZXZlbnQgd2l0aCBuYW1lICcke25hbWV9JyBhbHJlYWR5IGV4aXN0c2ApO1xuICB9XG4gIGNvbnN0IGV2ZW50OiBFdmVudDxFPiA9IHtcbiAgICBuYW1lLFxuICAgIG9uKGhhbmRsZXIpIHtcbiAgICAgIGV2ZW50U3Vic2NyaXB0aW9ucygpLnB1c2goe1xuICAgICAgICBzdWJzY3JpcHRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBoYW5kbGVyOiBoYW5kbGVyIGFzIEV2ZW50SGFuZGxlcjxFdmVudFBheWxvYWQ+LFxuICAgICAgfSk7XG4gICAgfSxcbiAgICBwdWJsaXNoKC4uLmV2ZW50cykge1xuICAgICAgY29uc3QgZW52ZWxvcGVzID0gZXZlbnRzLm1hcCgoZXZlbnQpID0+ICh7XG4gICAgICAgIG5hbWUsXG4gICAgICAgIGV2ZW50LFxuICAgICAgfSkpO1xuICAgICAgaWYgKGlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICAgICAgcmV0dXJuIGNyZWF0ZVB1Ymxpc2hFdmVudHNDYWxsKGVudmVsb3BlcykgYXMgYW55O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGdldFNlcnZpY2VDbGllbnQoKS5wdWJsaXNoRXZlbnRzKHsgZXZlbnRzOiBlbnZlbG9wZXMgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgfTtcbiAgZXZlbnRzKCkuc2V0KG5hbWUsIGV2ZW50KTtcbiAgcmV0dXJuIGV2ZW50O1xufVxuIl19

@@ -1,2 +0,4 @@

import { SendSignalProps, Signal, SignalPayload, Workflow, WorkflowClient, WorkflowOutput } from "./index.js";
import { EventualServiceClient } from "./service-client.js";
import { Signal, SendSignalProps, SignalPayload } from "./signals.js";
import { Workflow, WorkflowOutput } from "./workflow.js";
export declare enum ExecutionStatus {

@@ -11,2 +13,3 @@ IN_PROGRESS = "IN_PROGRESS",

startTime: string;
workflowName: string;
parent?: {

@@ -43,6 +46,6 @@ /**

*/
export declare class ExecutionHandle<W extends Workflow<any, any>> {
export declare class ExecutionHandle<W extends Workflow> {
executionId: string;
private workflowClient;
constructor(executionId: string, workflowClient: WorkflowClient);
private serviceClient;
constructor(executionId: string, serviceClient: EventualServiceClient);
/**

@@ -49,0 +52,0 @@ * @return the {@link Execution} with the status, result, error, and other data based on the current status.

@@ -22,5 +22,5 @@ "use strict";

class ExecutionHandle {
constructor(executionId, workflowClient) {
constructor(executionId, serviceClient) {
this.executionId = executionId;
this.workflowClient = workflowClient;
this.serviceClient = serviceClient;
}

@@ -31,3 +31,3 @@ /**

async getStatus() {
return (await this.workflowClient.getExecution(this.executionId));
return (await this.serviceClient.getExecution(this.executionId));
}

@@ -38,4 +38,4 @@ /**

async signal(signal, payload) {
return this.workflowClient.sendSignal({
executionId: this.executionId,
return this.serviceClient.sendSignal({
execution: this.executionId,
signal: typeof signal === "string" ? signal : signal.id,

@@ -47,2 +47,2 @@ payload,

exports.ExecutionHandle = ExecutionHandle;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFTQSxJQUFZLGVBSVg7QUFKRCxXQUFZLGVBQWU7SUFDekIsOENBQTJCLENBQUE7SUFDM0Isd0NBQXFCLENBQUE7SUFDckIsb0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLGVBQWUsR0FBZix1QkFBZSxLQUFmLHVCQUFlLFFBSTFCO0FBd0NELFNBQWdCLGlCQUFpQixDQUMvQixTQUFvQjtJQUVwQixPQUFPLFNBQVMsQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDLE1BQU0sQ0FBQztBQUNyRCxDQUFDO0FBSkQsOENBSUM7QUFFRCxTQUFnQixtQkFBbUIsQ0FDakMsU0FBb0I7SUFFcEIsT0FBTyxTQUFTLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxRQUFRLENBQUM7QUFDdkQsQ0FBQztBQUpELGtEQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGVBQWU7SUFDMUIsWUFDUyxXQUFtQixFQUNsQixjQUE4QjtRQUQvQixnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNsQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFDckMsQ0FBQztJQUVKOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFNBQVM7UUFDcEIsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQzVDLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQWlDLENBQUM7SUFDckMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE1BQU0sQ0FDakIsTUFBZ0MsRUFDaEMsT0FBZ0I7UUFFaEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQztZQUNwQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsTUFBTSxFQUFFLE9BQU8sTUFBTSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN2RCxPQUFPO1NBQ1IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBNUJELDBDQTRCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFNlbmRTaWduYWxQcm9wcyxcbiAgU2lnbmFsLFxuICBTaWduYWxQYXlsb2FkLFxuICBXb3JrZmxvdyxcbiAgV29ya2Zsb3dDbGllbnQsXG4gIFdvcmtmbG93T3V0cHV0LFxufSBmcm9tIFwiLi9pbmRleC5qc1wiO1xuXG5leHBvcnQgZW51bSBFeGVjdXRpb25TdGF0dXMge1xuICBJTl9QUk9HUkVTUyA9IFwiSU5fUFJPR1JFU1NcIixcbiAgQ09NUExFVEUgPSBcIkNPTVBMRVRFXCIsXG4gIEZBSUxFRCA9IFwiRkFJTEVEXCIsXG59XG5cbmludGVyZmFjZSBFeGVjdXRpb25CYXNlIHtcbiAgaWQ6IHN0cmluZztcbiAgc3RhdHVzOiBFeGVjdXRpb25TdGF0dXM7XG4gIHN0YXJ0VGltZTogc3RyaW5nO1xuICBwYXJlbnQ/OiB7XG4gICAgLyoqXG4gICAgICogU2VxIG51bWJlciB3aGVuIHRoaXMgZXhlY3V0aW9uIGlzIHRoZSBjaGlsZCBvZiBhbm90aGVyIHdvcmtmbG93LlxuICAgICAqL1xuICAgIHNlcTogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIElkIG9mIHRoZSBwYXJlbnQgd29ya2Zsb3csIHdoaWxlIHByZXNlbnQuXG4gICAgICovXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgRXhlY3V0aW9uPFJlc3VsdCA9IGFueT4gPVxuICB8IEluUHJvZ3Jlc3NFeGVjdXRpb25cbiAgfCBDb21wbGV0ZUV4ZWN1dGlvbjxSZXN1bHQ+XG4gIHwgRmFpbGVkRXhlY3V0aW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIEluUHJvZ3Jlc3NFeGVjdXRpb24gZXh0ZW5kcyBFeGVjdXRpb25CYXNlIHtcbiAgc3RhdHVzOiBFeGVjdXRpb25TdGF0dXMuSU5fUFJPR1JFU1M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxldGVFeGVjdXRpb248UmVzdWx0ID0gYW55PiBleHRlbmRzIEV4ZWN1dGlvbkJhc2Uge1xuICBzdGF0dXM6IEV4ZWN1dGlvblN0YXR1cy5DT01QTEVURTtcbiAgZW5kVGltZTogc3RyaW5nO1xuICByZXN1bHQ/OiBSZXN1bHQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmFpbGVkRXhlY3V0aW9uIGV4dGVuZHMgRXhlY3V0aW9uQmFzZSB7XG4gIHN0YXR1czogRXhlY3V0aW9uU3RhdHVzLkZBSUxFRDtcbiAgZW5kVGltZTogc3RyaW5nO1xuICBlcnJvcjogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0ZhaWxlZEV4ZWN1dGlvbihcbiAgZXhlY3V0aW9uOiBFeGVjdXRpb25cbik6IGV4ZWN1dGlvbiBpcyBGYWlsZWRFeGVjdXRpb24ge1xuICByZXR1cm4gZXhlY3V0aW9uLnN0YXR1cyA9PT0gRXhlY3V0aW9uU3RhdHVzLkZBSUxFRDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ29tcGxldGVFeGVjdXRpb24oXG4gIGV4ZWN1dGlvbjogRXhlY3V0aW9uXG4pOiBleGVjdXRpb24gaXMgQ29tcGxldGVFeGVjdXRpb24ge1xuICByZXR1cm4gZXhlY3V0aW9uLnN0YXR1cyA9PT0gRXhlY3V0aW9uU3RhdHVzLkNPTVBMRVRFO1xufVxuXG4vKipcbiAqIEEgcmVmZXJlbmNlIHRvIGEgcnVubmluZyBleGVjdXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBFeGVjdXRpb25IYW5kbGU8VyBleHRlbmRzIFdvcmtmbG93PGFueSwgYW55Pj4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICBwcml2YXRlIHdvcmtmbG93Q2xpZW50OiBXb3JrZmxvd0NsaWVudFxuICApIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm4gdGhlIHtAbGluayBFeGVjdXRpb259IHdpdGggdGhlIHN0YXR1cywgcmVzdWx0LCBlcnJvciwgYW5kIG90aGVyIGRhdGEgYmFzZWQgb24gdGhlIGN1cnJlbnQgc3RhdHVzLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFN0YXR1cygpOiBQcm9taXNlPEV4ZWN1dGlvbjxXb3JrZmxvd091dHB1dDxXPj4+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMud29ya2Zsb3dDbGllbnQuZ2V0RXhlY3V0aW9uKFxuICAgICAgdGhpcy5leGVjdXRpb25JZFxuICAgICkpIGFzIEV4ZWN1dGlvbjxXb3JrZmxvd091dHB1dDxXPj47XG4gIH1cblxuICAvKipcbiAgICogU2VuZCBhIHtAbGluayBzaWduYWx9IHRvIHRoaXMgZXhlY3V0aW9uLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIHNpZ25hbDxQYXlsb2FkID0gYW55PihcbiAgICBzaWduYWw6IHN0cmluZyB8IFNpZ25hbDxQYXlsb2FkPixcbiAgICBwYXlsb2FkOiBQYXlsb2FkXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLndvcmtmbG93Q2xpZW50LnNlbmRTaWduYWwoe1xuICAgICAgZXhlY3V0aW9uSWQ6IHRoaXMuZXhlY3V0aW9uSWQsXG4gICAgICBzaWduYWw6IHR5cGVvZiBzaWduYWwgPT09IFwic3RyaW5nXCIgPyBzaWduYWwgOiBzaWduYWwuaWQsXG4gICAgICBwYXlsb2FkLFxuICAgIH0pO1xuICB9XG59XG5cbi8qKlxuICogQSByZWZlcmVuY2UgdG8gYW4gZXhlY3V0aW9uIHN0YXJ0ZWQgYnkgYW5vdGhlciB3b3JrZmxvdy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGlsZEV4ZWN1dGlvbiB7XG4gIC8qKlxuICAgKiBBbGxvd3MgYSB7QGxpbmsgd29ya2Zsb3d9IHRvIHNlbmQgYSBzaWduYWwgdG8gdGhlIHdvcmtmbG93IHtAbGluayBFeGVjdXRpb259LlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiBjb25zdCBteVNpZ25hbCA9IHNpZ25hbDxzdHJpbmc+KFwiTXlTaWduYWxcIik7XG4gICAqIGNvbnN0IGNoaWxkV2YgPSB3b3JrZmxvdyguLi4pO1xuICAgKiB3b3JrZmxvdyhcIndmXCIsIGFzeW5jICgpID0+IHtcbiAgICogICAgY29uc3QgY2hpbGQgPSBjaGlsZFdmKCk7XG4gICAqICAgIGNoaWxkLnNpZ25hbChteVNpZ25hbCk7XG4gICAqICAgIGF3YWl0IGNoaWxkO1xuICAgKiB9KVxuICAgKiBgYGBcbiAgICpcbiAgICogQHBhcmFtIGlkIGFuIG9wdGlvbmFsLCBleGVjdXRpb24gdW5pcXVlIElELCB3aWxsIGJlIHVzZWQgdG8gZGUtZHVwZSB0aGUgc2lnbmFsIGF0IHRoZSB0YXJnZXQgZXhlY3V0aW9uLlxuICAgKi9cbiAgc2lnbmFsPFMgZXh0ZW5kcyBTaWduYWw8YW55Pj4oXG4gICAgc2lnbmFsOiBTLFxuICAgIC4uLmFyZ3M6IFNlbmRTaWduYWxQcm9wczxTaWduYWxQYXlsb2FkPFM+PlxuICApOiBQcm9taXNlPHZvaWQ+O1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSxJQUFZLGVBSVg7QUFKRCxXQUFZLGVBQWU7SUFDekIsOENBQTJCLENBQUE7SUFDM0Isd0NBQXFCLENBQUE7SUFDckIsb0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLGVBQWUsR0FBZix1QkFBZSxLQUFmLHVCQUFlLFFBSTFCO0FBeUNELFNBQWdCLGlCQUFpQixDQUMvQixTQUFvQjtJQUVwQixPQUFPLFNBQVMsQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDLE1BQU0sQ0FBQztBQUNyRCxDQUFDO0FBSkQsOENBSUM7QUFFRCxTQUFnQixtQkFBbUIsQ0FDakMsU0FBb0I7SUFFcEIsT0FBTyxTQUFTLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxRQUFRLENBQUM7QUFDdkQsQ0FBQztBQUpELGtEQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGVBQWU7SUFDMUIsWUFDUyxXQUFtQixFQUNsQixhQUFvQztRQURyQyxnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNsQixrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7SUFDM0MsQ0FBQztJQUVKOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFNBQVM7UUFDcEIsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQzNDLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQWlDLENBQUM7SUFDckMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE1BQU0sQ0FDakIsTUFBZ0MsRUFDaEMsT0FBZ0I7UUFFaEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQztZQUNuQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDM0IsTUFBTSxFQUFFLE9BQU8sTUFBTSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN2RCxPQUFPO1NBQ1IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBNUJELDBDQTRCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50dWFsU2VydmljZUNsaWVudCB9IGZyb20gXCIuL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5pbXBvcnQgeyBTaWduYWwsIFNlbmRTaWduYWxQcm9wcywgU2lnbmFsUGF5bG9hZCB9IGZyb20gXCIuL3NpZ25hbHMuanNcIjtcbmltcG9ydCB7IFdvcmtmbG93LCBXb3JrZmxvd091dHB1dCB9IGZyb20gXCIuL3dvcmtmbG93LmpzXCI7XG5cbmV4cG9ydCBlbnVtIEV4ZWN1dGlvblN0YXR1cyB7XG4gIElOX1BST0dSRVNTID0gXCJJTl9QUk9HUkVTU1wiLFxuICBDT01QTEVURSA9IFwiQ09NUExFVEVcIixcbiAgRkFJTEVEID0gXCJGQUlMRURcIixcbn1cblxuaW50ZXJmYWNlIEV4ZWN1dGlvbkJhc2Uge1xuICBpZDogc3RyaW5nO1xuICBzdGF0dXM6IEV4ZWN1dGlvblN0YXR1cztcbiAgc3RhcnRUaW1lOiBzdHJpbmc7XG4gIHdvcmtmbG93TmFtZTogc3RyaW5nO1xuICBwYXJlbnQ/OiB7XG4gICAgLyoqXG4gICAgICogU2VxIG51bWJlciB3aGVuIHRoaXMgZXhlY3V0aW9uIGlzIHRoZSBjaGlsZCBvZiBhbm90aGVyIHdvcmtmbG93LlxuICAgICAqL1xuICAgIHNlcTogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIElkIG9mIHRoZSBwYXJlbnQgd29ya2Zsb3csIHdoaWxlIHByZXNlbnQuXG4gICAgICovXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgRXhlY3V0aW9uPFJlc3VsdCA9IGFueT4gPVxuICB8IEluUHJvZ3Jlc3NFeGVjdXRpb25cbiAgfCBDb21wbGV0ZUV4ZWN1dGlvbjxSZXN1bHQ+XG4gIHwgRmFpbGVkRXhlY3V0aW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIEluUHJvZ3Jlc3NFeGVjdXRpb24gZXh0ZW5kcyBFeGVjdXRpb25CYXNlIHtcbiAgc3RhdHVzOiBFeGVjdXRpb25TdGF0dXMuSU5fUFJPR1JFU1M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxldGVFeGVjdXRpb248UmVzdWx0ID0gYW55PiBleHRlbmRzIEV4ZWN1dGlvbkJhc2Uge1xuICBzdGF0dXM6IEV4ZWN1dGlvblN0YXR1cy5DT01QTEVURTtcbiAgZW5kVGltZTogc3RyaW5nO1xuICByZXN1bHQ/OiBSZXN1bHQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmFpbGVkRXhlY3V0aW9uIGV4dGVuZHMgRXhlY3V0aW9uQmFzZSB7XG4gIHN0YXR1czogRXhlY3V0aW9uU3RhdHVzLkZBSUxFRDtcbiAgZW5kVGltZTogc3RyaW5nO1xuICBlcnJvcjogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0ZhaWxlZEV4ZWN1dGlvbihcbiAgZXhlY3V0aW9uOiBFeGVjdXRpb25cbik6IGV4ZWN1dGlvbiBpcyBGYWlsZWRFeGVjdXRpb24ge1xuICByZXR1cm4gZXhlY3V0aW9uLnN0YXR1cyA9PT0gRXhlY3V0aW9uU3RhdHVzLkZBSUxFRDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ29tcGxldGVFeGVjdXRpb24oXG4gIGV4ZWN1dGlvbjogRXhlY3V0aW9uXG4pOiBleGVjdXRpb24gaXMgQ29tcGxldGVFeGVjdXRpb24ge1xuICByZXR1cm4gZXhlY3V0aW9uLnN0YXR1cyA9PT0gRXhlY3V0aW9uU3RhdHVzLkNPTVBMRVRFO1xufVxuXG4vKipcbiAqIEEgcmVmZXJlbmNlIHRvIGEgcnVubmluZyBleGVjdXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBFeGVjdXRpb25IYW5kbGU8VyBleHRlbmRzIFdvcmtmbG93PiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIHByaXZhdGUgc2VydmljZUNsaWVudDogRXZlbnR1YWxTZXJ2aWNlQ2xpZW50XG4gICkge31cblxuICAvKipcbiAgICogQHJldHVybiB0aGUge0BsaW5rIEV4ZWN1dGlvbn0gd2l0aCB0aGUgc3RhdHVzLCByZXN1bHQsIGVycm9yLCBhbmQgb3RoZXIgZGF0YSBiYXNlZCBvbiB0aGUgY3VycmVudCBzdGF0dXMuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0U3RhdHVzKCk6IFByb21pc2U8RXhlY3V0aW9uPFdvcmtmbG93T3V0cHV0PFc+Pj4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5zZXJ2aWNlQ2xpZW50LmdldEV4ZWN1dGlvbihcbiAgICAgIHRoaXMuZXhlY3V0aW9uSWRcbiAgICApKSBhcyBFeGVjdXRpb248V29ya2Zsb3dPdXRwdXQ8Vz4+O1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbmQgYSB7QGxpbmsgc2lnbmFsfSB0byB0aGlzIGV4ZWN1dGlvbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzaWduYWw8UGF5bG9hZCA9IGFueT4oXG4gICAgc2lnbmFsOiBzdHJpbmcgfCBTaWduYWw8UGF5bG9hZD4sXG4gICAgcGF5bG9hZDogUGF5bG9hZFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlQ2xpZW50LnNlbmRTaWduYWwoe1xuICAgICAgZXhlY3V0aW9uOiB0aGlzLmV4ZWN1dGlvbklkLFxuICAgICAgc2lnbmFsOiB0eXBlb2Ygc2lnbmFsID09PSBcInN0cmluZ1wiID8gc2lnbmFsIDogc2lnbmFsLmlkLFxuICAgICAgcGF5bG9hZCxcbiAgICB9KTtcbiAgfVxufVxuXG4vKipcbiAqIEEgcmVmZXJlbmNlIHRvIGFuIGV4ZWN1dGlvbiBzdGFydGVkIGJ5IGFub3RoZXIgd29ya2Zsb3cuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hpbGRFeGVjdXRpb24ge1xuICAvKipcbiAgICogQWxsb3dzIGEge0BsaW5rIHdvcmtmbG93fSB0byBzZW5kIGEgc2lnbmFsIHRvIHRoZSB3b3JrZmxvdyB7QGxpbmsgRXhlY3V0aW9ufS5cbiAgICpcbiAgICogYGBgdHNcbiAgICogY29uc3QgbXlTaWduYWwgPSBzaWduYWw8c3RyaW5nPihcIk15U2lnbmFsXCIpO1xuICAgKiBjb25zdCBjaGlsZFdmID0gd29ya2Zsb3coLi4uKTtcbiAgICogd29ya2Zsb3coXCJ3ZlwiLCBhc3luYyAoKSA9PiB7XG4gICAqICAgIGNvbnN0IGNoaWxkID0gY2hpbGRXZigpO1xuICAgKiAgICBjaGlsZC5zaWduYWwobXlTaWduYWwpO1xuICAgKiAgICBhd2FpdCBjaGlsZDtcbiAgICogfSlcbiAgICogYGBgXG4gICAqXG4gICAqIEBwYXJhbSBpZCBhbiBvcHRpb25hbCwgZXhlY3V0aW9uIHVuaXF1ZSBJRCwgd2lsbCBiZSB1c2VkIHRvIGRlLWR1cGUgdGhlIHNpZ25hbCBhdCB0aGUgdGFyZ2V0IGV4ZWN1dGlvbi5cbiAgICovXG4gIHNpZ25hbDxTIGV4dGVuZHMgU2lnbmFsPGFueT4+KFxuICAgIHNpZ25hbDogUyxcbiAgICAuLi5hcmdzOiBTZW5kU2lnbmFsUHJvcHM8U2lnbmFsUGF5bG9hZDxTPj5cbiAgKTogUHJvbWlzZTx2b2lkPjtcbn1cbiJdfQ==
import { Event, EventSubscription } from "./event.js";
import { ActivityContext, ActivityHandler } from "./activity.js";
import type { Eventual, EventualCallCollector } from "./eventual.js";
import { EventClient } from "./runtime/clients/event-client.js";
import type { WorkflowClient } from "./runtime/clients/workflow-client.js";
import type { Workflow } from "./workflow.js";
import { EventualServiceClient } from "./service-client.js";
declare global {

@@ -34,3 +33,3 @@ var _eventual: {

*/
workflowClient?: WorkflowClient;
serviceClient?: EventualServiceClient;
/**

@@ -46,8 +45,2 @@ * A global variable storing a map of event name (which is globally unique)

eventSubscriptions?: EventSubscription[];
/**
* A global variable for storing the {@link EventClient}
*
* This is initialized by Eventual's harness functions
*/
eventClient?: EventClient;
};

@@ -64,22 +57,13 @@ }

/**
* Register the global workflow client used by workflow functions
* Register the global service client used by workflow functions
* to start workflows within an eventual-controlled environment.
*/
export declare function registerWorkflowClient(client: WorkflowClient): void;
export declare function registerServiceClient(client: EventualServiceClient): void;
/**
* Get the global workflow client.
* Get the global service client.
*/
export declare function getWorkflowClient(): WorkflowClient;
export declare function getServiceClient(): EventualServiceClient;
export declare function setActivityContext(context: ActivityContext): void;
export declare function clearActivityContext(): void;
export declare function getActivityContext(): ActivityContext;
/**
* Register the global event client sued by the event emit functions
* to emit events within an eventual-controlled environment.
*/
export declare function registerEventClient(client: EventClient): void;
/**
* Get the global event client.
*/
export declare function getEventClient(): EventClient;
//# sourceMappingURL=global.d.ts.map
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getEventClient = exports.registerEventClient = exports.getActivityContext = exports.clearActivityContext = exports.setActivityContext = exports.getWorkflowClient = exports.registerWorkflowClient = exports.clearEventualCollector = exports.setEventualCollector = exports.registerEventual = exports.callableActivities = exports.clearEventSubscriptions = exports.eventSubscriptions = exports.events = exports.workflows = void 0;
exports.getActivityContext = exports.clearActivityContext = exports.setActivityContext = exports.getServiceClient = exports.registerServiceClient = exports.clearEventualCollector = exports.setEventualCollector = exports.registerEventual = exports.callableActivities = exports.clearEventSubscriptions = exports.eventSubscriptions = exports.events = exports.workflows = void 0;
globalThis._eventual = {};

@@ -37,19 +37,19 @@ const workflows = () => (globalThis._eventual.workflows ??= new Map());

/**
* Register the global workflow client used by workflow functions
* Register the global service client used by workflow functions
* to start workflows within an eventual-controlled environment.
*/
function registerWorkflowClient(client) {
globalThis._eventual.workflowClient = client;
function registerServiceClient(client) {
globalThis._eventual.serviceClient = client;
}
exports.registerWorkflowClient = registerWorkflowClient;
exports.registerServiceClient = registerServiceClient;
/**
* Get the global workflow client.
* Get the global service client.
*/
function getWorkflowClient() {
if (globalThis._eventual.workflowClient === undefined) {
function getServiceClient() {
if (globalThis._eventual.serviceClient === undefined) {
throw new Error(`WorkflowClient is not registered`);
}
return globalThis._eventual.workflowClient;
return globalThis._eventual.serviceClient;
}
exports.getWorkflowClient = getWorkflowClient;
exports.getServiceClient = getServiceClient;
function setActivityContext(context) {

@@ -71,20 +71,2 @@ globalThis._eventual.activityContext = context;

exports.getActivityContext = getActivityContext;
/**
* Register the global event client sued by the event emit functions
* to emit events within an eventual-controlled environment.
*/
function registerEventClient(client) {
globalThis._eventual.eventClient = client;
}
exports.registerEventClient = registerEventClient;
/**
* Get the global event client.
*/
function getEventClient() {
if (globalThis._eventual.eventClient === undefined) {
throw new Error(`EventClient is not registered`);
}
return globalThis._eventual.eventClient;
}
exports.getEventClient = getEventClient;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dsb2JhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF3REEsVUFBVSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7QUFFbkIsTUFBTSxTQUFTLEdBQUcsR0FBMEIsRUFBRSxDQUNuRCxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsU0FBUyxLQUFLLElBQUksR0FBRyxFQUFvQixDQUFDLENBQUM7QUFEdEQsUUFBQSxTQUFTLGFBQzZDO0FBRTVELE1BQU0sTUFBTSxHQUFHLEdBQXVCLEVBQUUsQ0FDN0MsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxJQUFJLEdBQUcsRUFBaUIsQ0FBQyxDQUFDO0FBRGhELFFBQUEsTUFBTSxVQUMwQztBQUV0RCxNQUFNLGtCQUFrQixHQUFHLEdBQXdCLEVBQUUsQ0FDMUQsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLGtCQUFrQixLQUFLLEVBQUUsQ0FBQyxDQUFDO0FBRHRDLFFBQUEsa0JBQWtCLHNCQUNvQjtBQUVuRCxTQUFnQix1QkFBdUI7SUFDckMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFDL0MsQ0FBQztBQUZELDBEQUVDO0FBRU0sTUFBTSxrQkFBa0IsR0FBRyxHQUF5QyxFQUFFLENBQzNFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsS0FBSyxFQUFFLENBQUMsQ0FBQztBQUR0QyxRQUFBLGtCQUFrQixzQkFDb0I7QUFFbkQsTUFBTSxpQkFBaUIsR0FBRyxHQUEwQixFQUFFO0lBQ3BELE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUM7SUFDekQsSUFBSSxDQUFDLFNBQVMsRUFBRTtRQUNkLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztLQUNuRDtJQUNELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMsQ0FBQztBQUVGLFNBQWdCLGdCQUFnQixDQUFxQixRQUFXO0lBQzlELE9BQU8saUJBQWlCLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUZELDRDQUVDO0FBRUQsU0FBZ0Isb0JBQW9CLENBQUMsU0FBZ0M7SUFDbkUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUM7QUFDckQsQ0FBQztBQUZELG9EQUVDO0FBRUQsU0FBZ0Isc0JBQXNCO0lBQ3BDLFVBQVUsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDO0FBQ3JELENBQUM7QUFGRCx3REFFQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLHNCQUFzQixDQUFDLE1BQXNCO0lBQzNELFVBQVUsQ0FBQyxTQUFTLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztBQUMvQyxDQUFDO0FBRkQsd0RBRUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGlCQUFpQjtJQUMvQixJQUFJLFVBQVUsQ0FBQyxTQUFTLENBQUMsY0FBYyxLQUFLLFNBQVMsRUFBRTtRQUNyRCxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7S0FDckQ7SUFDRCxPQUFPLFVBQVUsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDO0FBQzdDLENBQUM7QUFMRCw4Q0FLQztBQUVELFNBQWdCLGtCQUFrQixDQUFDLE9BQXdCO0lBQ3pELFVBQVUsQ0FBQyxTQUFTLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQztBQUNqRCxDQUFDO0FBRkQsZ0RBRUM7QUFFRCxTQUFnQixvQkFBb0I7SUFDbEMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDO0FBQ25ELENBQUM7QUFGRCxvREFFQztBQUVELFNBQWdCLGtCQUFrQjtJQUNoQyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQztJQUVyRCxJQUFJLENBQUMsT0FBTyxFQUFFO1FBQ1osTUFBTSxJQUFJLEtBQUssQ0FDYixrRkFBa0YsQ0FDbkYsQ0FBQztLQUNIO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQVRELGdEQVNDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQUMsTUFBbUI7SUFDckQsVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDO0FBQzVDLENBQUM7QUFGRCxrREFFQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsY0FBYztJQUM1QixJQUFJLFVBQVUsQ0FBQyxTQUFTLENBQUMsV0FBVyxLQUFLLFNBQVMsRUFBRTtRQUNsRCxNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7S0FDbEQ7SUFDRCxPQUFPLFVBQVUsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDO0FBQzFDLENBQUM7QUFMRCx3Q0FLQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50LCBFdmVudFN1YnNjcmlwdGlvbiB9IGZyb20gXCIuL2V2ZW50LmpzXCI7XG5pbXBvcnQgeyBBY3Rpdml0eUNvbnRleHQsIEFjdGl2aXR5SGFuZGxlciB9IGZyb20gXCIuL2FjdGl2aXR5LmpzXCI7XG5pbXBvcnQgdHlwZSB7IEV2ZW50dWFsLCBFdmVudHVhbENhbGxDb2xsZWN0b3IgfSBmcm9tIFwiLi9ldmVudHVhbC5qc1wiO1xuaW1wb3J0IHsgRXZlbnRDbGllbnQgfSBmcm9tIFwiLi9ydW50aW1lL2NsaWVudHMvZXZlbnQtY2xpZW50LmpzXCI7XG5pbXBvcnQgdHlwZSB7IFdvcmtmbG93Q2xpZW50IH0gZnJvbSBcIi4vcnVudGltZS9jbGllbnRzL3dvcmtmbG93LWNsaWVudC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBXb3JrZmxvdyB9IGZyb20gXCIuL3dvcmtmbG93LmpzXCI7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZhclxuICB2YXIgX2V2ZW50dWFsOiB7XG4gICAgLyoqXG4gICAgICogRGF0YSBhYm91dCB0aGUgY3VycmVudCBhY3Rpdml0eSBhc3NpZ25lZCBiZWZvcmUgcnVubmluZyBhbiBhY3Rpdml0eSBvbiBhbiB0aGUgYWN0aXZpdHkgd29ya2VyLlxuICAgICAqL1xuICAgIGFjdGl2aXR5Q29udGV4dD86IEFjdGl2aXR5Q29udGV4dDtcbiAgICAvKipcbiAgICAgKiBBbiBvYmplY3QgdXNlZCBieSB0aGUgaW50ZXJwcmV0ZXIgdG8gY29sbGVjdCB7QGxpbmsgRXZlbnR1YWx9cyB3aGlsZSBydW5uaW5nIGEgd29ya2Zsb3cgY29kZS5cbiAgICAgKlxuICAgICAqIFNldCBieSB0aGUgaW50ZXJwcmV0ZXIgb25seSB3aGVuIG5lZWRlZC5cbiAgICAgKi9cbiAgICBldmVudHVhbENvbGxlY3Rvcj86IEV2ZW50dWFsQ2FsbENvbGxlY3RvcjtcbiAgICAvKipcbiAgICAgKiBDYWxsYWJsZSBhY3Rpdml0aWVzIHdoaWNoIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgaW4gYW4gYWN0aXZpdHkgd29ya2VyLlxuICAgICAqL1xuICAgIGNhbGxhYmxlQWN0aXZpdGllcz86IFJlY29yZDxzdHJpbmcsIEFjdGl2aXR5SGFuZGxlcjxhbnk+PjtcbiAgICAvKipcbiAgICAgKiBBdmFpbGFibGUgd29ya2Zsb3dzIHdoaWNoIGhhdmUgcmVnaXN0ZXJlZCB0aGVtc2VsdmVzLlxuICAgICAqXG4gICAgICogVXNlZCBieSB0aGUgb3JjaGVzdHJhdG9yLCBhY3Rpdml0eSB3b3JrZXIsIGFuZCBvdGhlciBzY29wZXMgdG8gaW50ZXJhY3Qgd2l0aCB3b3JrZmxvd3MgaW5cbiAgICAgKiBhIHNlcnZpY2UuXG4gICAgICovXG4gICAgd29ya2Zsb3dzPzogTWFwPHN0cmluZywgV29ya2Zsb3c+O1xuICAgIC8qKlxuICAgICAqIEEgZ2xvYmFsIHZhcmlhYmxlIGZvciBzdG9yaW5nIHRoZSBXb3JrZmxvd0NsaWVudFxuICAgICAqIHRoaXMgaXMgaW5pdGlhbGl6ZWQgYnkgRXZlbnR1YWwncyBoYXJuZXNzIGxhbWJkYSBmdW5jdGlvbnNcbiAgICAgKi9cbiAgICB3b3JrZmxvd0NsaWVudD86IFdvcmtmbG93Q2xpZW50O1xuICAgIC8qKlxuICAgICAqIEEgZ2xvYmFsIHZhcmlhYmxlIHN0b3JpbmcgYSBtYXAgb2YgZXZlbnQgbmFtZSAod2hpY2ggaXMgZ2xvYmFsbHkgdW5pcXVlKVxuICAgICAqIHRvIHRoZSB7QGxpbmsgRXZlbnR9IGRlY2xhcmF0aW9uIGluc3RhbmNlLlxuICAgICAqL1xuICAgIGV2ZW50cz86IE1hcDxzdHJpbmcsIEV2ZW50PjtcbiAgICAvKipcbiAgICAgKiBBIGdsb2JhbCB2YXJpYWJsZSBzdG9yaW5nIGEgbGlzdCBvZiBhbGwge0BsaW5rIEV2ZW50U3Vic2NyaXB0aW9ufXMgZGVjbGFyZWRcbiAgICAgKiB3aXRoaW4gdGhpcyBhcHBsaWNhdGlvbi5cbiAgICAgKi9cbiAgICBldmVudFN1YnNjcmlwdGlvbnM/OiBFdmVudFN1YnNjcmlwdGlvbltdO1xuXG4gICAgLyoqXG4gICAgICogQSBnbG9iYWwgdmFyaWFibGUgZm9yIHN0b3JpbmcgdGhlIHtAbGluayBFdmVudENsaWVudH1cbiAgICAgKlxuICAgICAqIFRoaXMgaXMgaW5pdGlhbGl6ZWQgYnkgRXZlbnR1YWwncyBoYXJuZXNzIGZ1bmN0aW9uc1xuICAgICAqL1xuICAgIGV2ZW50Q2xpZW50PzogRXZlbnRDbGllbnQ7XG4gIH07XG59XG5cbmdsb2JhbFRoaXMuX2V2ZW50dWFsID0ge307XG5cbmV4cG9ydCBjb25zdCB3b3JrZmxvd3MgPSAoKTogTWFwPHN0cmluZywgV29ya2Zsb3c+ID0+XG4gIChnbG9iYWxUaGlzLl9ldmVudHVhbC53b3JrZmxvd3MgPz89IG5ldyBNYXA8c3RyaW5nLCBXb3JrZmxvdz4oKSk7XG5cbmV4cG9ydCBjb25zdCBldmVudHMgPSAoKTogTWFwPHN0cmluZywgRXZlbnQ+ID0+XG4gIChnbG9iYWxUaGlzLl9ldmVudHVhbC5ldmVudHMgPz89IG5ldyBNYXA8c3RyaW5nLCBFdmVudD4oKSk7XG5cbmV4cG9ydCBjb25zdCBldmVudFN1YnNjcmlwdGlvbnMgPSAoKTogRXZlbnRTdWJzY3JpcHRpb25bXSA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnRTdWJzY3JpcHRpb25zID8/PSBbXSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhckV2ZW50U3Vic2NyaXB0aW9ucygpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnRTdWJzY3JpcHRpb25zID0gW107XG59XG5cbmV4cG9ydCBjb25zdCBjYWxsYWJsZUFjdGl2aXRpZXMgPSAoKTogUmVjb3JkPHN0cmluZywgQWN0aXZpdHlIYW5kbGVyPGFueT4+ID0+XG4gIChnbG9iYWxUaGlzLl9ldmVudHVhbC5jYWxsYWJsZUFjdGl2aXRpZXMgPz89IHt9KTtcblxuY29uc3QgZXZlbnR1YWxDb2xsZWN0b3IgPSAoKTogRXZlbnR1YWxDYWxsQ29sbGVjdG9yID0+IHtcbiAgY29uc3QgY29sbGVjdG9yID0gZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnR1YWxDb2xsZWN0b3I7XG4gIGlmICghY29sbGVjdG9yKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiTm8gRXZlbnR1YWwgQ29sbGVjdG9yIFByb3ZpZGVkXCIpO1xuICB9XG4gIHJldHVybiBjb2xsZWN0b3I7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJFdmVudHVhbDxBIGV4dGVuZHMgRXZlbnR1YWw+KGV2ZW50dWFsOiBBKTogQSB7XG4gIHJldHVybiBldmVudHVhbENvbGxlY3RvcigpLnB1c2hFdmVudHVhbChldmVudHVhbCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRFdmVudHVhbENvbGxlY3Rvcihjb2xsZWN0b3I6IEV2ZW50dWFsQ2FsbENvbGxlY3Rvcikge1xuICBnbG9iYWxUaGlzLl9ldmVudHVhbC5ldmVudHVhbENvbGxlY3RvciA9IGNvbGxlY3Rvcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyRXZlbnR1YWxDb2xsZWN0b3IoKSB7XG4gIGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50dWFsQ29sbGVjdG9yID0gdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIFJlZ2lzdGVyIHRoZSBnbG9iYWwgd29ya2Zsb3cgY2xpZW50IHVzZWQgYnkgd29ya2Zsb3cgZnVuY3Rpb25zXG4gKiB0byBzdGFydCB3b3JrZmxvd3Mgd2l0aGluIGFuIGV2ZW50dWFsLWNvbnRyb2xsZWQgZW52aXJvbm1lbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlcldvcmtmbG93Q2xpZW50KGNsaWVudDogV29ya2Zsb3dDbGllbnQpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwud29ya2Zsb3dDbGllbnQgPSBjbGllbnQ7XG59XG5cbi8qKlxuICogR2V0IHRoZSBnbG9iYWwgd29ya2Zsb3cgY2xpZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0V29ya2Zsb3dDbGllbnQoKTogV29ya2Zsb3dDbGllbnQge1xuICBpZiAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwud29ya2Zsb3dDbGllbnQgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgV29ya2Zsb3dDbGllbnQgaXMgbm90IHJlZ2lzdGVyZWRgKTtcbiAgfVxuICByZXR1cm4gZ2xvYmFsVGhpcy5fZXZlbnR1YWwud29ya2Zsb3dDbGllbnQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRBY3Rpdml0eUNvbnRleHQoY29udGV4dDogQWN0aXZpdHlDb250ZXh0KSB7XG4gIGdsb2JhbFRoaXMuX2V2ZW50dWFsLmFjdGl2aXR5Q29udGV4dCA9IGNvbnRleHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhckFjdGl2aXR5Q29udGV4dCgpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuYWN0aXZpdHlDb250ZXh0ID0gdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aXZpdHlDb250ZXh0KCk6IEFjdGl2aXR5Q29udGV4dCB7XG4gIGNvbnN0IGNvbnRleHQgPSBnbG9iYWxUaGlzLl9ldmVudHVhbC5hY3Rpdml0eUNvbnRleHQ7XG5cbiAgaWYgKCFjb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJBY3Rpdml0eSBDb250ZXh0IGhhcyBub3QgYmVlbiByZWdpc3RlcmVkIHlldCBvciB0aGlzIGlzIG5vdCB0aGUgYWN0aXZpdHkgd29ya2VyLlwiXG4gICAgKTtcbiAgfVxuICByZXR1cm4gY29udGV4dDtcbn1cblxuLyoqXG4gKiBSZWdpc3RlciB0aGUgZ2xvYmFsIGV2ZW50IGNsaWVudCBzdWVkIGJ5IHRoZSBldmVudCBlbWl0IGZ1bmN0aW9uc1xuICogdG8gZW1pdCBldmVudHMgd2l0aGluIGFuIGV2ZW50dWFsLWNvbnRyb2xsZWQgZW52aXJvbm1lbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckV2ZW50Q2xpZW50KGNsaWVudDogRXZlbnRDbGllbnQpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnRDbGllbnQgPSBjbGllbnQ7XG59XG5cbi8qKlxuICogR2V0IHRoZSBnbG9iYWwgZXZlbnQgY2xpZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RXZlbnRDbGllbnQoKTogRXZlbnRDbGllbnQge1xuICBpZiAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnRDbGllbnQgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgRXZlbnRDbGllbnQgaXMgbm90IHJlZ2lzdGVyZWRgKTtcbiAgfVxuICByZXR1cm4gZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnRDbGllbnQ7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dsb2JhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFnREEsVUFBVSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7QUFFbkIsTUFBTSxTQUFTLEdBQUcsR0FBMEIsRUFBRSxDQUNuRCxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsU0FBUyxLQUFLLElBQUksR0FBRyxFQUFvQixDQUFDLENBQUM7QUFEdEQsUUFBQSxTQUFTLGFBQzZDO0FBRTVELE1BQU0sTUFBTSxHQUFHLEdBQXVCLEVBQUUsQ0FDN0MsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxJQUFJLEdBQUcsRUFBaUIsQ0FBQyxDQUFDO0FBRGhELFFBQUEsTUFBTSxVQUMwQztBQUV0RCxNQUFNLGtCQUFrQixHQUFHLEdBQXdCLEVBQUUsQ0FDMUQsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLGtCQUFrQixLQUFLLEVBQUUsQ0FBQyxDQUFDO0FBRHRDLFFBQUEsa0JBQWtCLHNCQUNvQjtBQUVuRCxTQUFnQix1QkFBdUI7SUFDckMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFDL0MsQ0FBQztBQUZELDBEQUVDO0FBRU0sTUFBTSxrQkFBa0IsR0FBRyxHQUF5QyxFQUFFLENBQzNFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsS0FBSyxFQUFFLENBQUMsQ0FBQztBQUR0QyxRQUFBLGtCQUFrQixzQkFDb0I7QUFFbkQsTUFBTSxpQkFBaUIsR0FBRyxHQUEwQixFQUFFO0lBQ3BELE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUM7SUFDekQsSUFBSSxDQUFDLFNBQVMsRUFBRTtRQUNkLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztLQUNuRDtJQUNELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMsQ0FBQztBQUVGLFNBQWdCLGdCQUFnQixDQUFxQixRQUFXO0lBQzlELE9BQU8saUJBQWlCLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUZELDRDQUVDO0FBRUQsU0FBZ0Isb0JBQW9CLENBQUMsU0FBZ0M7SUFDbkUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUM7QUFDckQsQ0FBQztBQUZELG9EQUVDO0FBRUQsU0FBZ0Isc0JBQXNCO0lBQ3BDLFVBQVUsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDO0FBQ3JELENBQUM7QUFGRCx3REFFQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLHFCQUFxQixDQUFDLE1BQTZCO0lBQ2pFLFVBQVUsQ0FBQyxTQUFTLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQztBQUM5QyxDQUFDO0FBRkQsc0RBRUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGdCQUFnQjtJQUM5QixJQUFJLFVBQVUsQ0FBQyxTQUFTLENBQUMsYUFBYSxLQUFLLFNBQVMsRUFBRTtRQUNwRCxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7S0FDckQ7SUFDRCxPQUFPLFVBQVUsQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO0FBQzVDLENBQUM7QUFMRCw0Q0FLQztBQUVELFNBQWdCLGtCQUFrQixDQUFDLE9BQXdCO0lBQ3pELFVBQVUsQ0FBQyxTQUFTLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQztBQUNqRCxDQUFDO0FBRkQsZ0RBRUM7QUFFRCxTQUFnQixvQkFBb0I7SUFDbEMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDO0FBQ25ELENBQUM7QUFGRCxvREFFQztBQUVELFNBQWdCLGtCQUFrQjtJQUNoQyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQztJQUVyRCxJQUFJLENBQUMsT0FBTyxFQUFFO1FBQ1osTUFBTSxJQUFJLEtBQUssQ0FDYixrRkFBa0YsQ0FDbkYsQ0FBQztLQUNIO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQVRELGdEQVNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnQsIEV2ZW50U3Vic2NyaXB0aW9uIH0gZnJvbSBcIi4vZXZlbnQuanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5Q29udGV4dCwgQWN0aXZpdHlIYW5kbGVyIH0gZnJvbSBcIi4vYWN0aXZpdHkuanNcIjtcbmltcG9ydCB0eXBlIHsgRXZlbnR1YWwsIEV2ZW50dWFsQ2FsbENvbGxlY3RvciB9IGZyb20gXCIuL2V2ZW50dWFsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IFdvcmtmbG93IH0gZnJvbSBcIi4vd29ya2Zsb3cuanNcIjtcbmltcG9ydCB7IEV2ZW50dWFsU2VydmljZUNsaWVudCB9IGZyb20gXCIuL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZhclxuICB2YXIgX2V2ZW50dWFsOiB7XG4gICAgLyoqXG4gICAgICogRGF0YSBhYm91dCB0aGUgY3VycmVudCBhY3Rpdml0eSBhc3NpZ25lZCBiZWZvcmUgcnVubmluZyBhbiBhY3Rpdml0eSBvbiBhbiB0aGUgYWN0aXZpdHkgd29ya2VyLlxuICAgICAqL1xuICAgIGFjdGl2aXR5Q29udGV4dD86IEFjdGl2aXR5Q29udGV4dDtcbiAgICAvKipcbiAgICAgKiBBbiBvYmplY3QgdXNlZCBieSB0aGUgaW50ZXJwcmV0ZXIgdG8gY29sbGVjdCB7QGxpbmsgRXZlbnR1YWx9cyB3aGlsZSBydW5uaW5nIGEgd29ya2Zsb3cgY29kZS5cbiAgICAgKlxuICAgICAqIFNldCBieSB0aGUgaW50ZXJwcmV0ZXIgb25seSB3aGVuIG5lZWRlZC5cbiAgICAgKi9cbiAgICBldmVudHVhbENvbGxlY3Rvcj86IEV2ZW50dWFsQ2FsbENvbGxlY3RvcjtcbiAgICAvKipcbiAgICAgKiBDYWxsYWJsZSBhY3Rpdml0aWVzIHdoaWNoIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgaW4gYW4gYWN0aXZpdHkgd29ya2VyLlxuICAgICAqL1xuICAgIGNhbGxhYmxlQWN0aXZpdGllcz86IFJlY29yZDxzdHJpbmcsIEFjdGl2aXR5SGFuZGxlcjxhbnk+PjtcbiAgICAvKipcbiAgICAgKiBBdmFpbGFibGUgd29ya2Zsb3dzIHdoaWNoIGhhdmUgcmVnaXN0ZXJlZCB0aGVtc2VsdmVzLlxuICAgICAqXG4gICAgICogVXNlZCBieSB0aGUgb3JjaGVzdHJhdG9yLCBhY3Rpdml0eSB3b3JrZXIsIGFuZCBvdGhlciBzY29wZXMgdG8gaW50ZXJhY3Qgd2l0aCB3b3JrZmxvd3MgaW5cbiAgICAgKiBhIHNlcnZpY2UuXG4gICAgICovXG4gICAgd29ya2Zsb3dzPzogTWFwPHN0cmluZywgV29ya2Zsb3c+O1xuICAgIC8qKlxuICAgICAqIEEgZ2xvYmFsIHZhcmlhYmxlIGZvciBzdG9yaW5nIHRoZSBXb3JrZmxvd0NsaWVudFxuICAgICAqIHRoaXMgaXMgaW5pdGlhbGl6ZWQgYnkgRXZlbnR1YWwncyBoYXJuZXNzIGxhbWJkYSBmdW5jdGlvbnNcbiAgICAgKi9cbiAgICBzZXJ2aWNlQ2xpZW50PzogRXZlbnR1YWxTZXJ2aWNlQ2xpZW50O1xuICAgIC8qKlxuICAgICAqIEEgZ2xvYmFsIHZhcmlhYmxlIHN0b3JpbmcgYSBtYXAgb2YgZXZlbnQgbmFtZSAod2hpY2ggaXMgZ2xvYmFsbHkgdW5pcXVlKVxuICAgICAqIHRvIHRoZSB7QGxpbmsgRXZlbnR9IGRlY2xhcmF0aW9uIGluc3RhbmNlLlxuICAgICAqL1xuICAgIGV2ZW50cz86IE1hcDxzdHJpbmcsIEV2ZW50PjtcbiAgICAvKipcbiAgICAgKiBBIGdsb2JhbCB2YXJpYWJsZSBzdG9yaW5nIGEgbGlzdCBvZiBhbGwge0BsaW5rIEV2ZW50U3Vic2NyaXB0aW9ufXMgZGVjbGFyZWRcbiAgICAgKiB3aXRoaW4gdGhpcyBhcHBsaWNhdGlvbi5cbiAgICAgKi9cbiAgICBldmVudFN1YnNjcmlwdGlvbnM/OiBFdmVudFN1YnNjcmlwdGlvbltdO1xuICB9O1xufVxuXG5nbG9iYWxUaGlzLl9ldmVudHVhbCA9IHt9O1xuXG5leHBvcnQgY29uc3Qgd29ya2Zsb3dzID0gKCk6IE1hcDxzdHJpbmcsIFdvcmtmbG93PiA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwud29ya2Zsb3dzID8/PSBuZXcgTWFwPHN0cmluZywgV29ya2Zsb3c+KCkpO1xuXG5leHBvcnQgY29uc3QgZXZlbnRzID0gKCk6IE1hcDxzdHJpbmcsIEV2ZW50PiA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnRzID8/PSBuZXcgTWFwPHN0cmluZywgRXZlbnQ+KCkpO1xuXG5leHBvcnQgY29uc3QgZXZlbnRTdWJzY3JpcHRpb25zID0gKCk6IEV2ZW50U3Vic2NyaXB0aW9uW10gPT5cbiAgKGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50U3Vic2NyaXB0aW9ucyA/Pz0gW10pO1xuXG5leHBvcnQgZnVuY3Rpb24gY2xlYXJFdmVudFN1YnNjcmlwdGlvbnMoKSB7XG4gIGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50U3Vic2NyaXB0aW9ucyA9IFtdO1xufVxuXG5leHBvcnQgY29uc3QgY2FsbGFibGVBY3Rpdml0aWVzID0gKCk6IFJlY29yZDxzdHJpbmcsIEFjdGl2aXR5SGFuZGxlcjxhbnk+PiA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwuY2FsbGFibGVBY3Rpdml0aWVzID8/PSB7fSk7XG5cbmNvbnN0IGV2ZW50dWFsQ29sbGVjdG9yID0gKCk6IEV2ZW50dWFsQ2FsbENvbGxlY3RvciA9PiB7XG4gIGNvbnN0IGNvbGxlY3RvciA9IGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50dWFsQ29sbGVjdG9yO1xuICBpZiAoIWNvbGxlY3Rvcikge1xuICAgIHRocm93IG5ldyBFcnJvcihcIk5vIEV2ZW50dWFsIENvbGxlY3RvciBQcm92aWRlZFwiKTtcbiAgfVxuICByZXR1cm4gY29sbGVjdG9yO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyRXZlbnR1YWw8QSBleHRlbmRzIEV2ZW50dWFsPihldmVudHVhbDogQSk6IEEge1xuICByZXR1cm4gZXZlbnR1YWxDb2xsZWN0b3IoKS5wdXNoRXZlbnR1YWwoZXZlbnR1YWwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0RXZlbnR1YWxDb2xsZWN0b3IoY29sbGVjdG9yOiBFdmVudHVhbENhbGxDb2xsZWN0b3IpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnR1YWxDb2xsZWN0b3IgPSBjb2xsZWN0b3I7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhckV2ZW50dWFsQ29sbGVjdG9yKCkge1xuICBnbG9iYWxUaGlzLl9ldmVudHVhbC5ldmVudHVhbENvbGxlY3RvciA9IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBSZWdpc3RlciB0aGUgZ2xvYmFsIHNlcnZpY2UgY2xpZW50IHVzZWQgYnkgd29ya2Zsb3cgZnVuY3Rpb25zXG4gKiB0byBzdGFydCB3b3JrZmxvd3Mgd2l0aGluIGFuIGV2ZW50dWFsLWNvbnRyb2xsZWQgZW52aXJvbm1lbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlclNlcnZpY2VDbGllbnQoY2xpZW50OiBFdmVudHVhbFNlcnZpY2VDbGllbnQpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuc2VydmljZUNsaWVudCA9IGNsaWVudDtcbn1cblxuLyoqXG4gKiBHZXQgdGhlIGdsb2JhbCBzZXJ2aWNlIGNsaWVudC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNlcnZpY2VDbGllbnQoKTogRXZlbnR1YWxTZXJ2aWNlQ2xpZW50IHtcbiAgaWYgKGdsb2JhbFRoaXMuX2V2ZW50dWFsLnNlcnZpY2VDbGllbnQgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgV29ya2Zsb3dDbGllbnQgaXMgbm90IHJlZ2lzdGVyZWRgKTtcbiAgfVxuICByZXR1cm4gZ2xvYmFsVGhpcy5fZXZlbnR1YWwuc2VydmljZUNsaWVudDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldEFjdGl2aXR5Q29udGV4dChjb250ZXh0OiBBY3Rpdml0eUNvbnRleHQpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuYWN0aXZpdHlDb250ZXh0ID0gY29udGV4dDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyQWN0aXZpdHlDb250ZXh0KCkge1xuICBnbG9iYWxUaGlzLl9ldmVudHVhbC5hY3Rpdml0eUNvbnRleHQgPSB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBY3Rpdml0eUNvbnRleHQoKTogQWN0aXZpdHlDb250ZXh0IHtcbiAgY29uc3QgY29udGV4dCA9IGdsb2JhbFRoaXMuX2V2ZW50dWFsLmFjdGl2aXR5Q29udGV4dDtcblxuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcIkFjdGl2aXR5IENvbnRleHQgaGFzIG5vdCBiZWVuIHJlZ2lzdGVyZWQgeWV0IG9yIHRoaXMgaXMgbm90IHRoZSBhY3Rpdml0eSB3b3JrZXIuXCJcbiAgICApO1xuICB9XG4gIHJldHVybiBjb250ZXh0O1xufVxuIl19

@@ -1,2 +0,2 @@

import { HeartbeatResponse } from "./runtime/clients/workflow-client.js";
import { SendActivityHeartbeatResponse } from "./service-client.js";
/**

@@ -12,3 +12,3 @@ * Sends a heartbeat for the current activity or to the provided activity token.

*/
export declare function heartbeat(activityToken?: string): Promise<HeartbeatResponse>;
export declare function heartbeat(activityToken?: string): Promise<SendActivityHeartbeatResponse>;
//# sourceMappingURL=heartbeat.d.ts.map

@@ -21,3 +21,3 @@ "use strict";

else if (activityToken) {
return await (0, global_js_1.getWorkflowClient)().heartbeatActivity({
return await (0, global_js_1.getServiceClient)().sendActivityHeartbeat({
activityToken,

@@ -28,3 +28,3 @@ });

const token = (0, global_js_1.getActivityContext)().activityToken;
return await (0, global_js_1.getWorkflowClient)().heartbeatActivity({
return await (0, global_js_1.getServiceClient)().sendActivityHeartbeat({
activityToken: token,

@@ -38,2 +38,2 @@ });

exports.heartbeat = heartbeat;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhcnRiZWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlYXJ0YmVhdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyQ0FBb0U7QUFFcEUsaURBQTRFO0FBRTVFOzs7Ozs7Ozs7R0FTRztBQUNJLEtBQUssVUFBVSxTQUFTLENBQzdCLGFBQXNCO0lBRXRCLElBQUksSUFBQSwrQkFBb0IsR0FBRSxFQUFFO1FBQzFCLE1BQU0sSUFBSSxLQUFLLENBQ2Isa0dBQWtHLENBQ25HLENBQUM7S0FDSDtTQUFNLElBQUksYUFBYSxFQUFFO1FBQ3hCLE9BQU8sTUFBTSxJQUFBLDZCQUFpQixHQUFFLENBQUMsaUJBQWlCLENBQUM7WUFDakQsYUFBYTtTQUNkLENBQUMsQ0FBQztLQUNKO1NBQU0sSUFBSSxJQUFBLDJCQUFnQixHQUFFLEVBQUU7UUFDN0IsTUFBTSxLQUFLLEdBQUcsSUFBQSw4QkFBa0IsR0FBRSxDQUFDLGFBQWEsQ0FBQztRQUNqRCxPQUFPLE1BQU0sSUFBQSw2QkFBaUIsR0FBRSxDQUFDLGlCQUFpQixDQUFDO1lBQ2pELGFBQWEsRUFBRSxLQUFLO1NBQ3JCLENBQUMsQ0FBQztLQUNKO1NBQU07UUFDTCxNQUFNLElBQUksS0FBSyxDQUNiLDhEQUE4RCxDQUMvRCxDQUFDO0tBQ0g7QUFDSCxDQUFDO0FBckJELDhCQXFCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEFjdGl2aXR5Q29udGV4dCwgZ2V0V29ya2Zsb3dDbGllbnQgfSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IEhlYXJ0YmVhdFJlc3BvbnNlIH0gZnJvbSBcIi4vcnVudGltZS9jbGllbnRzL3dvcmtmbG93LWNsaWVudC5qc1wiO1xuaW1wb3J0IHsgaXNBY3Rpdml0eVdvcmtlciwgaXNPcmNoZXN0cmF0b3JXb3JrZXIgfSBmcm9tIFwiLi9ydW50aW1lL2ZsYWdzLmpzXCI7XG5cbi8qKlxuICogU2VuZHMgYSBoZWFydGJlYXQgZm9yIHRoZSBjdXJyZW50IGFjdGl2aXR5IG9yIHRvIHRoZSBwcm92aWRlZCBhY3Rpdml0eSB0b2tlbi5cbiAqXG4gKiBJZiBjYWxsZWQgZnJvbSBvdXRzaWRlIG9mIGFuIHtAbGluayBhY3Rpdml0eX0sIHRoZSBhY3Rpdml0eSB0b2tlbiBtdXN0IGJlIHByb3ZpZGVkLlxuICpcbiAqIElmIHRoZSBhY3Rpdml0eSBoYXMgYSBoZWFydGJlYXRUaW1lb3V0IHNldCBhbmQgdGhlIHdvcmtmbG93IGhhcyBub3QgcmVjZWl2ZWQgYSBoZWFydGJlYXQgaW4gaGVhcnRiZWF0VGltZW91dFNlY29uZHMsXG4gKiB0aGUgd29ya2Zsb3cgd2lsbCB0aHJvdyBhIHtAbGluayBIZWFydGJlYXRUaW1lb3V0fSBhbmQgY2FuY2VsIHRoZSBhY3Rpdml0eS5cbiAqXG4gKiBAcmV0dXJucyB7QGxpbmsgSGVhcnRiZWF0UmVzcG9uc2V9IHdoaWNoIGhhcyByZXNwb25zZS5jYW5jZWxsZWQgaWYgdGhlIGFjdGl2aXR5IHdhcyBjYW5jZWxsZWQgZm9yIGFueSByZWFzb24gKGV4OiB3b3JrZmxvdyBjb21wbGV0ZWQsIGZhaWxlZCwgb3IgdGhlIGFjdGl2aXR5IHRpbWVkIG91dCkuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoZWFydGJlYXQoXG4gIGFjdGl2aXR5VG9rZW4/OiBzdHJpbmdcbik6IFByb21pc2U8SGVhcnRiZWF0UmVzcG9uc2U+IHtcbiAgaWYgKGlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcIkhlYXJ0YmVhdCBpcyBub3QgY3VycmVudGx5IHN1cHBvcnRlZCBmcm9tIHdpdGhpbiBhIHdvcmtmbG93LiBVc2UgYW4gYWN0aXZpdHkgd2l0aCBgaGVhcnRiZWF0KClgLlwiXG4gICAgKTtcbiAgfSBlbHNlIGlmIChhY3Rpdml0eVRva2VuKSB7XG4gICAgcmV0dXJuIGF3YWl0IGdldFdvcmtmbG93Q2xpZW50KCkuaGVhcnRiZWF0QWN0aXZpdHkoe1xuICAgICAgYWN0aXZpdHlUb2tlbixcbiAgICB9KTtcbiAgfSBlbHNlIGlmIChpc0FjdGl2aXR5V29ya2VyKCkpIHtcbiAgICBjb25zdCB0b2tlbiA9IGdldEFjdGl2aXR5Q29udGV4dCgpLmFjdGl2aXR5VG9rZW47XG4gICAgcmV0dXJuIGF3YWl0IGdldFdvcmtmbG93Q2xpZW50KCkuaGVhcnRiZWF0QWN0aXZpdHkoe1xuICAgICAgYWN0aXZpdHlUb2tlbjogdG9rZW4sXG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJBY3Rpdml0eSB0b2tlbiBtdXN0IGJlIHByb3ZpZGVkIHdoZW4gbm90IHdpdGhpbiBhbiBBY3Rpdml0eS5cIlxuICAgICk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhcnRiZWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlYXJ0YmVhdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyQ0FBbUU7QUFDbkUsaURBQTRFO0FBRzVFOzs7Ozs7Ozs7R0FTRztBQUNJLEtBQUssVUFBVSxTQUFTLENBQzdCLGFBQXNCO0lBRXRCLElBQUksSUFBQSwrQkFBb0IsR0FBRSxFQUFFO1FBQzFCLE1BQU0sSUFBSSxLQUFLLENBQ2Isa0dBQWtHLENBQ25HLENBQUM7S0FDSDtTQUFNLElBQUksYUFBYSxFQUFFO1FBQ3hCLE9BQU8sTUFBTSxJQUFBLDRCQUFnQixHQUFFLENBQUMscUJBQXFCLENBQUM7WUFDcEQsYUFBYTtTQUNkLENBQUMsQ0FBQztLQUNKO1NBQU0sSUFBSSxJQUFBLDJCQUFnQixHQUFFLEVBQUU7UUFDN0IsTUFBTSxLQUFLLEdBQUcsSUFBQSw4QkFBa0IsR0FBRSxDQUFDLGFBQWEsQ0FBQztRQUNqRCxPQUFPLE1BQU0sSUFBQSw0QkFBZ0IsR0FBRSxDQUFDLHFCQUFxQixDQUFDO1lBQ3BELGFBQWEsRUFBRSxLQUFLO1NBQ3JCLENBQUMsQ0FBQztLQUNKO1NBQU07UUFDTCxNQUFNLElBQUksS0FBSyxDQUNiLDhEQUE4RCxDQUMvRCxDQUFDO0tBQ0g7QUFDSCxDQUFDO0FBckJELDhCQXFCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEFjdGl2aXR5Q29udGV4dCwgZ2V0U2VydmljZUNsaWVudCB9IGZyb20gXCIuL2dsb2JhbC5qc1wiO1xuaW1wb3J0IHsgaXNBY3Rpdml0eVdvcmtlciwgaXNPcmNoZXN0cmF0b3JXb3JrZXIgfSBmcm9tIFwiLi9ydW50aW1lL2ZsYWdzLmpzXCI7XG5pbXBvcnQgeyBTZW5kQWN0aXZpdHlIZWFydGJlYXRSZXNwb25zZSB9IGZyb20gXCIuL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5cbi8qKlxuICogU2VuZHMgYSBoZWFydGJlYXQgZm9yIHRoZSBjdXJyZW50IGFjdGl2aXR5IG9yIHRvIHRoZSBwcm92aWRlZCBhY3Rpdml0eSB0b2tlbi5cbiAqXG4gKiBJZiBjYWxsZWQgZnJvbSBvdXRzaWRlIG9mIGFuIHtAbGluayBhY3Rpdml0eX0sIHRoZSBhY3Rpdml0eSB0b2tlbiBtdXN0IGJlIHByb3ZpZGVkLlxuICpcbiAqIElmIHRoZSBhY3Rpdml0eSBoYXMgYSBoZWFydGJlYXRUaW1lb3V0IHNldCBhbmQgdGhlIHdvcmtmbG93IGhhcyBub3QgcmVjZWl2ZWQgYSBoZWFydGJlYXQgaW4gaGVhcnRiZWF0VGltZW91dFNlY29uZHMsXG4gKiB0aGUgd29ya2Zsb3cgd2lsbCB0aHJvdyBhIHtAbGluayBIZWFydGJlYXRUaW1lb3V0fSBhbmQgY2FuY2VsIHRoZSBhY3Rpdml0eS5cbiAqXG4gKiBAcmV0dXJucyB7QGxpbmsgSGVhcnRiZWF0UmVzcG9uc2V9IHdoaWNoIGhhcyByZXNwb25zZS5jYW5jZWxsZWQgaWYgdGhlIGFjdGl2aXR5IHdhcyBjYW5jZWxsZWQgZm9yIGFueSByZWFzb24gKGV4OiB3b3JrZmxvdyBjb21wbGV0ZWQsIGZhaWxlZCwgb3IgdGhlIGFjdGl2aXR5IHRpbWVkIG91dCkuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoZWFydGJlYXQoXG4gIGFjdGl2aXR5VG9rZW4/OiBzdHJpbmdcbik6IFByb21pc2U8U2VuZEFjdGl2aXR5SGVhcnRiZWF0UmVzcG9uc2U+IHtcbiAgaWYgKGlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcIkhlYXJ0YmVhdCBpcyBub3QgY3VycmVudGx5IHN1cHBvcnRlZCBmcm9tIHdpdGhpbiBhIHdvcmtmbG93LiBVc2UgYW4gYWN0aXZpdHkgd2l0aCBgaGVhcnRiZWF0KClgLlwiXG4gICAgKTtcbiAgfSBlbHNlIGlmIChhY3Rpdml0eVRva2VuKSB7XG4gICAgcmV0dXJuIGF3YWl0IGdldFNlcnZpY2VDbGllbnQoKS5zZW5kQWN0aXZpdHlIZWFydGJlYXQoe1xuICAgICAgYWN0aXZpdHlUb2tlbixcbiAgICB9KTtcbiAgfSBlbHNlIGlmIChpc0FjdGl2aXR5V29ya2VyKCkpIHtcbiAgICBjb25zdCB0b2tlbiA9IGdldEFjdGl2aXR5Q29udGV4dCgpLmFjdGl2aXR5VG9rZW47XG4gICAgcmV0dXJuIGF3YWl0IGdldFNlcnZpY2VDbGllbnQoKS5zZW5kQWN0aXZpdHlIZWFydGJlYXQoe1xuICAgICAgYWN0aXZpdHlUb2tlbjogdG9rZW4sXG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJBY3Rpdml0eSB0b2tlbiBtdXN0IGJlIHByb3ZpZGVkIHdoZW4gbm90IHdpdGhpbiBhbiBBY3Rpdml0eS5cIlxuICAgICk7XG4gIH1cbn1cbiJdfQ==

@@ -19,2 +19,3 @@ export * from "./activity.js";

export * from "./secret.js";
export * from "./service-client.js";
export * from "./service-type.js";

@@ -21,0 +22,0 @@ export * from "./signals.js";

@@ -35,2 +35,3 @@ "use strict";

__exportStar(require("./secret.js"), exports);
__exportStar(require("./service-client.js"), exports);
__exportStar(require("./service-type.js"), exports);

@@ -43,2 +44,2 @@ __exportStar(require("./signals.js"), exports);

__exportStar(require("./workflow.js"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUE4QjtBQUM5QiwyQ0FBeUI7QUFDekIsZ0RBQThCO0FBQzlCLGlEQUErQjtBQUMvQiw2Q0FBMkI7QUFDM0IsK0NBQTZCO0FBQzdCLGlEQUErQjtBQUMvQiwrQ0FBNkI7QUFDN0IsNkNBQTJCO0FBQzNCLDZDQUEyQjtBQUMzQixnREFBOEI7QUFDOUIsaURBQStCO0FBQy9CLDhDQUE0QjtBQUM1QixpREFBK0I7QUFDL0IsaURBQStCO0FBQy9CLDhDQUE0QjtBQUM1QixxREFBbUM7QUFDbkMsOENBQTRCO0FBQzVCLG9EQUFrQztBQUNsQywrQ0FBNkI7QUFDN0IsNkNBQTJCO0FBQzNCLDZDQUEyQjtBQUMzQiw0Q0FBMEI7QUFDMUIsdURBQXFDO0FBQ3JDLGdEQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2FjdGl2aXR5LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9hcGkuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2FwcC1zcGVjLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9hd2FpdC1hbGwuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NoYWluLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21tYW5kLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb25kaXRpb24uanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbnRleHQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Vycm9yLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9ldmVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXZlbnR1YWwuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2V4ZWN1dGlvbi5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZ2xvYmFsLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9oZWFydGJlYXQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2ludGVycHJldC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vcmVzdWx0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9ydW50aW1lL2luZGV4LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zZWNyZXQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NlcnZpY2UtdHlwZS5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2lnbmFscy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2xlZXAuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3Rhc2tzLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi91dGlsLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi93b3JrZmxvdy1ldmVudHMuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3dvcmtmbG93LmpzXCI7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUE4QjtBQUM5QiwyQ0FBeUI7QUFDekIsZ0RBQThCO0FBQzlCLGlEQUErQjtBQUMvQiw2Q0FBMkI7QUFDM0IsK0NBQTZCO0FBQzdCLGlEQUErQjtBQUMvQiwrQ0FBNkI7QUFDN0IsNkNBQTJCO0FBQzNCLDZDQUEyQjtBQUMzQixnREFBOEI7QUFDOUIsaURBQStCO0FBQy9CLDhDQUE0QjtBQUM1QixpREFBK0I7QUFDL0IsaURBQStCO0FBQy9CLDhDQUE0QjtBQUM1QixxREFBbUM7QUFDbkMsOENBQTRCO0FBQzVCLHNEQUFvQztBQUNwQyxvREFBa0M7QUFDbEMsK0NBQTZCO0FBQzdCLDZDQUEyQjtBQUMzQiw2Q0FBMkI7QUFDM0IsNENBQTBCO0FBQzFCLHVEQUFxQztBQUNyQyxnREFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9hY3Rpdml0eS5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vYXBpLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9hcHAtc3BlYy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vYXdhaXQtYWxsLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jaGFpbi5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29tbWFuZC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZGl0aW9uLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb250ZXh0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9lcnJvci5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXZlbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2V2ZW50dWFsLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leGVjdXRpb24uanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2dsb2JhbC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vaGVhcnRiZWF0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9pbnRlcnByZXQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3Jlc3VsdC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vcnVudGltZS9pbmRleC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VjcmV0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zZXJ2aWNlLWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VydmljZS10eXBlLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zaWduYWxzLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zbGVlcC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdGFza3MuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3V0aWwuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3dvcmtmbG93LWV2ZW50cy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vd29ya2Zsb3cuanNcIjtcbiJdfQ==

@@ -0,1 +1,2 @@

import { ExecutionEventsRequest, ExecutionEventsResponse } from "../../service-client.js";
import { WorkflowEvent } from "../../workflow-events.js";

@@ -12,4 +13,4 @@ export type UnresolvedEvent<T extends WorkflowEvent> = Omit<T, "id" | "timestamp">;

*/
abstract getEvents(executionId: string): Promise<WorkflowEvent[]>;
abstract getEvents(request: ExecutionEventsRequest): Promise<ExecutionEventsResponse>;
}
//# sourceMappingURL=execution-history-client.d.ts.map

@@ -7,2 +7,2 @@ "use strict";

exports.ExecutionHistoryClient = ExecutionHistoryClient;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLWhpc3RvcnktY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvY2xpZW50cy9leGVjdXRpb24taGlzdG9yeS1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBT0EsTUFBc0Isc0JBQXNCO0NBa0IzQztBQWxCRCx3REFrQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBXb3JrZmxvd0V2ZW50IH0gZnJvbSBcIi4uLy4uL3dvcmtmbG93LWV2ZW50cy5qc1wiO1xuXG5leHBvcnQgdHlwZSBVbnJlc29sdmVkRXZlbnQ8VCBleHRlbmRzIFdvcmtmbG93RXZlbnQ+ID0gT21pdDxcbiAgVCxcbiAgXCJpZFwiIHwgXCJ0aW1lc3RhbXBcIlxuPjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEV4ZWN1dGlvbkhpc3RvcnlDbGllbnQge1xuICBwdWJsaWMgYWJzdHJhY3QgcHV0RXZlbnQ8VCBleHRlbmRzIFdvcmtmbG93RXZlbnQ+KFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgZXZlbnQ6IFRcbiAgKTogUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogV3JpdGVzIGV2ZW50cyBhcyBhIGJhdGNoIGludG8gdGhlIGV4ZWN1dGlvbiBoaXN0b3J5IHRhYmxlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHB1dEV2ZW50cyhcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGV2ZW50czogV29ya2Zsb3dFdmVudFtdXG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIFJlYWQgYW4gZXhlY3V0aW9uJ3MgZXZlbnRzIGZyb20gdGhlIGV4ZWN1dGlvbiBoaXN0b3J5IHRhYmxlIHRhYmxlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0RXZlbnRzKGV4ZWN1dGlvbklkOiBzdHJpbmcpOiBQcm9taXNlPFdvcmtmbG93RXZlbnRbXT47XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLWhpc3RvcnktY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvY2xpZW50cy9leGVjdXRpb24taGlzdG9yeS1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBV0EsTUFBc0Isc0JBQXNCO0NBb0IzQztBQXBCRCx3REFvQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFeGVjdXRpb25FdmVudHNSZXF1ZXN0LFxuICBFeGVjdXRpb25FdmVudHNSZXNwb25zZSxcbn0gZnJvbSBcIi4uLy4uL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5pbXBvcnQgeyBXb3JrZmxvd0V2ZW50IH0gZnJvbSBcIi4uLy4uL3dvcmtmbG93LWV2ZW50cy5qc1wiO1xuXG5leHBvcnQgdHlwZSBVbnJlc29sdmVkRXZlbnQ8VCBleHRlbmRzIFdvcmtmbG93RXZlbnQ+ID0gT21pdDxcbiAgVCxcbiAgXCJpZFwiIHwgXCJ0aW1lc3RhbXBcIlxuPjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEV4ZWN1dGlvbkhpc3RvcnlDbGllbnQge1xuICBwdWJsaWMgYWJzdHJhY3QgcHV0RXZlbnQ8VCBleHRlbmRzIFdvcmtmbG93RXZlbnQ+KFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgZXZlbnQ6IFRcbiAgKTogUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogV3JpdGVzIGV2ZW50cyBhcyBhIGJhdGNoIGludG8gdGhlIGV4ZWN1dGlvbiBoaXN0b3J5IHRhYmxlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHB1dEV2ZW50cyhcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGV2ZW50czogV29ya2Zsb3dFdmVudFtdXG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIFJlYWQgYW4gZXhlY3V0aW9uJ3MgZXZlbnRzIGZyb20gdGhlIGV4ZWN1dGlvbiBoaXN0b3J5IHRhYmxlIHRhYmxlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0RXZlbnRzKFxuICAgIHJlcXVlc3Q6IEV4ZWN1dGlvbkV2ZW50c1JlcXVlc3RcbiAgKTogUHJvbWlzZTxFeGVjdXRpb25FdmVudHNSZXNwb25zZT47XG59XG4iXX0=

@@ -8,2 +8,3 @@ export * from "./activity-runtime-client.js";

export * from "./workflow-runtime-client.js";
export * from "./runtime-service-clients.js";
//# sourceMappingURL=index.d.ts.map

@@ -24,2 +24,3 @@ "use strict";

__exportStar(require("./workflow-runtime-client.js"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcnVudGltZS9jbGllbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrREFBNkM7QUFDN0Msb0RBQWtDO0FBQ2xDLGdFQUE4QztBQUM5QyxzREFBb0M7QUFDcEMsb0RBQWtDO0FBQ2xDLHVEQUFxQztBQUNyQywrREFBNkMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9hY3Rpdml0eS1ydW50aW1lLWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXZlbnQtY2xpZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leGVjdXRpb24taGlzdG9yeS1jbGllbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL21ldHJpY3MtY2xpZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90aW1lci1jbGllbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3dvcmtmbG93LWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vd29ya2Zsb3ctcnVudGltZS1jbGllbnQuanNcIjtcbiJdfQ==
__exportStar(require("./runtime-service-clients.js"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcnVudGltZS9jbGllbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrREFBNkM7QUFDN0Msb0RBQWtDO0FBQ2xDLGdFQUE4QztBQUM5QyxzREFBb0M7QUFDcEMsb0RBQWtDO0FBQ2xDLHVEQUFxQztBQUNyQywrREFBNkM7QUFDN0MsK0RBQTZDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vYWN0aXZpdHktcnVudGltZS1jbGllbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2V2ZW50LWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXhlY3V0aW9uLWhpc3RvcnktY2xpZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9tZXRyaWNzLWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdGltZXItY2xpZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi93b3JrZmxvdy1jbGllbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3dvcmtmbG93LXJ1bnRpbWUtY2xpZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9ydW50aW1lLXNlcnZpY2UtY2xpZW50cy5qc1wiO1xuIl19
import { HistoryStateEvent } from "../../workflow-events.js";
import { Execution, ExecutionStatus } from "../../execution.js";
import { Execution, ExecutionHandle } from "../../execution.js";
import { Signal } from "../../signals.js";
import { Workflow, WorkflowInput, WorkflowOptions } from "../../workflow.js";
import { Workflow, WorkflowOptions } from "../../workflow.js";
import { ActivityRuntimeClient } from "./activity-runtime-client.js";
import { SendActivitySuccessRequest, SendActivityFailureRequest, GetExecutionsRequest, GetExecutionsResponse, SendActivityHeartbeatRequest, StartExecutionRequest, SendActivityHeartbeatResponse } from "../../service-client.js";
export declare abstract class WorkflowClient {

@@ -24,6 +25,3 @@ private activityRuntimeClient;

abstract submitWorkflowTask(executionId: string, ...events: HistoryStateEvent[]): Promise<void>;
abstract getExecutions(props: {
statuses?: ExecutionStatus[];
workflowName?: string;
}): Promise<Execution[]>;
abstract getExecutions(props: GetExecutionsRequest): Promise<GetExecutionsResponse>;
abstract getExecution(executionId: string): Promise<Execution | undefined>;

@@ -40,7 +38,7 @@ /**

*/
completeActivity({ activityToken, result, }: CompleteActivityRequest): Promise<void>;
completeActivity({ activityToken, result, }: Omit<SendActivitySuccessRequest, "type">): Promise<void>;
/**
* Fails an async activity causing it to throw the given error.
*/
failActivity({ activityToken, error, message, }: FailActivityRequest): Promise<void>;
failActivity({ activityToken, error, message, }: Omit<SendActivityFailureRequest, "type">): Promise<void>;
/**

@@ -51,9 +49,9 @@ * Submits a "heartbeat" for the given activityToken.

*/
heartbeatActivity(request: HeartbeatRequest): Promise<HeartbeatResponse>;
heartbeatActivity(request: Omit<SendActivityHeartbeatRequest, "type">): Promise<SendActivityHeartbeatResponse>;
private sendActivityResult;
}
export interface SendSignalRequest {
executionId: string;
signal: string | Signal;
payload?: any;
export interface SendSignalRequest<Payload = any> {
execution: ExecutionHandle<any> | string;
signal: string | Signal<Payload>;
payload?: Payload;
/**

@@ -64,23 +62,3 @@ * Execution scoped unique event id. Duplicates will be deduplicated.

}
export interface StartWorkflowRequest<W extends Workflow = Workflow> extends WorkflowOptions {
/**
* Name of the workflow execution.
*
* Only one workflow can exist for an ID. Requests to start a workflow
* with the name of an existing workflow will fail.
*
* @default - a unique name is generated.
*/
executionName?: string;
/**
* Name of the workflow to execute.
*/
workflowName: string;
/**
* Input payload for the workflow function.
*/
input?: WorkflowInput<W>;
/**
* ID of the parent execution if this is a child workflow
*/
export interface StartWorkflowRequest<W extends Workflow = Workflow> extends StartExecutionRequest<W>, WorkflowOptions {
parentExecutionId?: string;

@@ -98,22 +76,2 @@ /**

}
export interface CompleteActivityRequest<T = any> {
activityToken: string;
result: T;
}
export interface FailActivityRequest {
activityToken: string;
error: string;
message?: string;
}
export interface HeartbeatRequest {
activityToken: string;
}
export interface HeartbeatResponse {
/**
* True when the activity has been cancelled.
*
* This is the only way for a long running activity to know it was canelled.
*/
cancelled: boolean;
}
//# sourceMappingURL=workflow-client.d.ts.map

@@ -19,3 +19,6 @@ "use strict";

async sendSignal(request) {
await this.submitWorkflowTask(request.executionId, (0, workflow_events_js_1.createEvent)({
const executionId = typeof request.execution === "string"
? request.execution
: request.execution.executionId;
await this.submitWorkflowTask(executionId, (0, workflow_events_js_1.createEvent)({
type: workflow_events_js_1.WorkflowEventType.SignalReceived,

@@ -69,2 +72,2 @@ payload: request.payload,

exports.WorkflowClient = WorkflowClient;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvY2xpZW50cy93b3JrZmxvdy1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUVBT2tDO0FBQ2xDLHFEQUFnRTtBQUdoRSw0REFBMkQ7QUFHM0QsTUFBc0IsY0FBYztJQUNsQyxZQUNVLHFCQUE0QyxFQUMxQyxRQUFvQjtRQUR0QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzFDLGFBQVEsR0FBUixRQUFRLENBQVk7SUFDN0IsQ0FBQztJQWdDSjs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBMEI7UUFDaEQsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQzNCLE9BQU8sQ0FBQyxXQUFXLEVBQ25CLElBQUEsZ0NBQVcsRUFDVDtZQUNFLElBQUksRUFBRSxzQ0FBaUIsQ0FBQyxjQUFjO1lBQ3RDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztZQUN4QixRQUFRLEVBQ04sT0FBTyxPQUFPLENBQUMsTUFBTSxLQUFLLFFBQVE7Z0JBQ2hDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTTtnQkFDaEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtTQUN4QixFQUNELElBQUksQ0FBQyxRQUFRLEVBQUUsRUFDZixPQUFPLENBQUMsRUFBRSxDQUNYLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxFQUM1QixhQUFhLEVBQ2IsTUFBTSxHQUNrQjtRQUN4QixNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBb0IsYUFBYSxFQUFFO1lBQzlELElBQUksRUFBRSxzQ0FBaUIsQ0FBQyxpQkFBaUI7WUFDekMsTUFBTTtTQUNQLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxZQUFZLENBQUMsRUFDeEIsYUFBYSxFQUNiLEtBQUssRUFDTCxPQUFPLEdBQ2E7UUFDcEIsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQWlCLGFBQWEsRUFBRTtZQUMzRCxJQUFJLEVBQUUsc0NBQWlCLENBQUMsY0FBYztZQUN0QyxLQUFLO1lBQ0wsT0FBTztTQUNSLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLGlCQUFpQixDQUM1QixPQUF5QjtRQUV6QixNQUFNLElBQUksR0FBRyxJQUFBLHVDQUFtQixFQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV4RCxNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVwRSxJQUFJLFNBQVMsRUFBRSxNQUFNLEtBQUssOEJBQWUsQ0FBQyxXQUFXLEVBQUU7WUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUM1QjtRQUVELE9BQU8sTUFBTSxJQUFJLENBQUMscUJBQXFCLENBQUMsaUJBQWlCLENBQ3ZELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFDaEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUM5QixDQUFDO0lBQ0osQ0FBQztJQUVPLEtBQUssQ0FBQyxrQkFBa0IsQ0FFOUIsYUFBcUIsRUFBRSxLQUFnRDtRQUN2RSxNQUFNLElBQUksR0FBRyxJQUFBLHVDQUFtQixFQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFDeEIsSUFBQSxnQ0FBVyxFQUNUO1lBQ0UsR0FBRyxLQUFLO1lBQ1IsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRztTQUN0QixFQUNELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FDaEIsQ0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBOUhELHdDQThIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFjdGl2aXR5Q29tcGxldGVkLFxuICBBY3Rpdml0eUZhaWxlZCxcbiAgY3JlYXRlRXZlbnQsXG4gIEhpc3RvcnlTdGF0ZUV2ZW50LFxuICBTaWduYWxSZWNlaXZlZCxcbiAgV29ya2Zsb3dFdmVudFR5cGUsXG59IGZyb20gXCIuLi8uLi93b3JrZmxvdy1ldmVudHMuanNcIjtcbmltcG9ydCB7IEV4ZWN1dGlvbiwgRXhlY3V0aW9uU3RhdHVzIH0gZnJvbSBcIi4uLy4uL2V4ZWN1dGlvbi5qc1wiO1xuaW1wb3J0IHsgU2lnbmFsIH0gZnJvbSBcIi4uLy4uL3NpZ25hbHMuanNcIjtcbmltcG9ydCB7IFdvcmtmbG93LCBXb3JrZmxvd0lucHV0LCBXb3JrZmxvd09wdGlvbnMgfSBmcm9tIFwiLi4vLi4vd29ya2Zsb3cuanNcIjtcbmltcG9ydCB7IGRlY29kZUFjdGl2aXR5VG9rZW4gfSBmcm9tIFwiLi4vYWN0aXZpdHktdG9rZW4uanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5UnVudGltZUNsaWVudCB9IGZyb20gXCIuL2FjdGl2aXR5LXJ1bnRpbWUtY2xpZW50LmpzXCI7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBXb3JrZmxvd0NsaWVudCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWN0aXZpdHlSdW50aW1lQ2xpZW50OiBBY3Rpdml0eVJ1bnRpbWVDbGllbnQsXG4gICAgcHJvdGVjdGVkIGJhc2VUaW1lOiAoKSA9PiBEYXRlXG4gICkge31cblxuICAvKipcbiAgICogU3RhcnQgYSB3b3JrZmxvdyBleGVjdXRpb25cbiAgICogQHBhcmFtIG5hbWUgU3VmZml4IG9mIGV4ZWN1dGlvbiBpZFxuICAgKiBAcGFyYW0gaW5wdXQgV29ya2Zsb3cgcGFyYW1ldGVyc1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHN0YXJ0V29ya2Zsb3c8VyBleHRlbmRzIFdvcmtmbG93ID0gV29ya2Zsb3c+KFxuICAgIHJlcXVlc3Q6IFN0YXJ0V29ya2Zsb3dSZXF1ZXN0PFc+XG4gICk6IFByb21pc2U8c3RyaW5nPjtcblxuICAvKipcbiAgICogU3VibWl0IGV2ZW50cyB0byBiZSBwcm9jZXNzZWQgYnkgYSB3b3JrZmxvdydzIG9yY2hlc3RyYXRvci5cbiAgICpcbiAgICogQHBhcmFtIGV4ZWN1dGlvbklkIElEIG9mIHRoZSB3b3JrZmxvdyBleGVjdXRpb25cbiAgICogQHBhcmFtIGV2ZW50cyBldmVudHMgdG8gc3VibWl0IGZvciBwcm9jZXNzaW5nXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3Qgc3VibWl0V29ya2Zsb3dUYXNrKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgLi4uZXZlbnRzOiBIaXN0b3J5U3RhdGVFdmVudFtdXG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgcHVibGljIGFic3RyYWN0IGdldEV4ZWN1dGlvbnMocHJvcHM6IHtcbiAgICBzdGF0dXNlcz86IEV4ZWN1dGlvblN0YXR1c1tdO1xuICAgIHdvcmtmbG93TmFtZT86IHN0cmluZztcbiAgfSk6IFByb21pc2U8RXhlY3V0aW9uW10+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRFeGVjdXRpb24oXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZ1xuICApOiBQcm9taXNlPEV4ZWN1dGlvbiB8IHVuZGVmaW5lZD47XG5cbiAgLyoqXG4gICAqIFNlbmRzIGEgc2lnbmFsIHRvIHRoZSBnaXZlbiBleGVjdXRpb24uXG4gICAqXG4gICAqIFRoZSBleGVjdXRpb24gbWF5IGJlIHdhaXRpbmcgb24gYSBzaWduYWwgb3IgbWF5IGhhdmUgYSBoYW5kbGVyIHJlZ2lzdGVyZWRcbiAgICogdGhhdCBydW5zIHdoZW4gdGhlIHNpZ25hbCBpcyByZWNlaXZlZC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzZW5kU2lnbmFsKHJlcXVlc3Q6IFNlbmRTaWduYWxSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5zdWJtaXRXb3JrZmxvd1Rhc2soXG4gICAgICByZXF1ZXN0LmV4ZWN1dGlvbklkLFxuICAgICAgY3JlYXRlRXZlbnQ8U2lnbmFsUmVjZWl2ZWQ+KFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuU2lnbmFsUmVjZWl2ZWQsXG4gICAgICAgICAgcGF5bG9hZDogcmVxdWVzdC5wYXlsb2FkLFxuICAgICAgICAgIHNpZ25hbElkOlxuICAgICAgICAgICAgdHlwZW9mIHJlcXVlc3Quc2lnbmFsID09PSBcInN0cmluZ1wiXG4gICAgICAgICAgICAgID8gcmVxdWVzdC5zaWduYWxcbiAgICAgICAgICAgICAgOiByZXF1ZXN0LnNpZ25hbC5pZCxcbiAgICAgICAgfSxcbiAgICAgICAgdGhpcy5iYXNlVGltZSgpLFxuICAgICAgICByZXF1ZXN0LmlkXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21wbGV0ZXMgYW4gYXN5bmMgYWN0aXZpdHkgY2F1c2luZyBpdCB0byByZXR1cm4gdGhlIGdpdmVuIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNvbXBsZXRlQWN0aXZpdHkoe1xuICAgIGFjdGl2aXR5VG9rZW4sXG4gICAgcmVzdWx0LFxuICB9OiBDb21wbGV0ZUFjdGl2aXR5UmVxdWVzdCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuc2VuZEFjdGl2aXR5UmVzdWx0PEFjdGl2aXR5Q29tcGxldGVkPihhY3Rpdml0eVRva2VuLCB7XG4gICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5BY3Rpdml0eUNvbXBsZXRlZCxcbiAgICAgIHJlc3VsdCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGYWlscyBhbiBhc3luYyBhY3Rpdml0eSBjYXVzaW5nIGl0IHRvIHRocm93IHRoZSBnaXZlbiBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBmYWlsQWN0aXZpdHkoe1xuICAgIGFjdGl2aXR5VG9rZW4sXG4gICAgZXJyb3IsXG4gICAgbWVzc2FnZSxcbiAgfTogRmFpbEFjdGl2aXR5UmVxdWVzdCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuc2VuZEFjdGl2aXR5UmVzdWx0PEFjdGl2aXR5RmFpbGVkPihhY3Rpdml0eVRva2VuLCB7XG4gICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5BY3Rpdml0eUZhaWxlZCxcbiAgICAgIGVycm9yLFxuICAgICAgbWVzc2FnZSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdWJtaXRzIGEgXCJoZWFydGJlYXRcIiBmb3IgdGhlIGdpdmVuIGFjdGl2aXR5VG9rZW4uXG4gICAqXG4gICAqIEByZXR1cm5zIHdoZXRoZXIgdGhlIGFjdGl2aXR5IGhhcyBiZWVuIGNhbmNlbGxlZCBieSB0aGUgY2FsbGluZyB3b3JrZmxvdy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBoZWFydGJlYXRBY3Rpdml0eShcbiAgICByZXF1ZXN0OiBIZWFydGJlYXRSZXF1ZXN0XG4gICk6IFByb21pc2U8SGVhcnRiZWF0UmVzcG9uc2U+IHtcbiAgICBjb25zdCBkYXRhID0gZGVjb2RlQWN0aXZpdHlUb2tlbihyZXF1ZXN0LmFjdGl2aXR5VG9rZW4pO1xuXG4gICAgY29uc3QgZXhlY3V0aW9uID0gYXdhaXQgdGhpcy5nZXRFeGVjdXRpb24oZGF0YS5wYXlsb2FkLmV4ZWN1dGlvbklkKTtcblxuICAgIGlmIChleGVjdXRpb24/LnN0YXR1cyAhPT0gRXhlY3V0aW9uU3RhdHVzLklOX1BST0dSRVNTKSB7XG4gICAgICByZXR1cm4geyBjYW5jZWxsZWQ6IHRydWUgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5hY3Rpdml0eVJ1bnRpbWVDbGllbnQuaGVhcnRiZWF0QWN0aXZpdHkoXG4gICAgICBkYXRhLnBheWxvYWQuZXhlY3V0aW9uSWQsXG4gICAgICBkYXRhLnBheWxvYWQuc2VxLFxuICAgICAgdGhpcy5iYXNlVGltZSgpLnRvSVNPU3RyaW5nKClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZW5kQWN0aXZpdHlSZXN1bHQ8XG4gICAgRSBleHRlbmRzIEFjdGl2aXR5Q29tcGxldGVkIHwgQWN0aXZpdHlGYWlsZWRcbiAgPihhY3Rpdml0eVRva2VuOiBzdHJpbmcsIGV2ZW50OiBPbWl0PEUsIFwic2VxXCIgfCBcImR1cmF0aW9uXCIgfCBcInRpbWVzdGFtcFwiPikge1xuICAgIGNvbnN0IGRhdGEgPSBkZWNvZGVBY3Rpdml0eVRva2VuKGFjdGl2aXR5VG9rZW4pO1xuICAgIGF3YWl0IHRoaXMuc3VibWl0V29ya2Zsb3dUYXNrKFxuICAgICAgZGF0YS5wYXlsb2FkLmV4ZWN1dGlvbklkLFxuICAgICAgY3JlYXRlRXZlbnQ8QWN0aXZpdHlDb21wbGV0ZWQgfCBBY3Rpdml0eUZhaWxlZD4oXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5ldmVudCxcbiAgICAgICAgICBzZXE6IGRhdGEucGF5bG9hZC5zZXEsXG4gICAgICAgIH0sXG4gICAgICAgIHRoaXMuYmFzZVRpbWUoKVxuICAgICAgKVxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZW5kU2lnbmFsUmVxdWVzdCB7XG4gIGV4ZWN1dGlvbklkOiBzdHJpbmc7XG4gIHNpZ25hbDogc3RyaW5nIHwgU2lnbmFsO1xuICBwYXlsb2FkPzogYW55O1xuICAvKipcbiAgICogRXhlY3V0aW9uIHNjb3BlZCB1bmlxdWUgZXZlbnQgaWQuIER1cGxpY2F0ZXMgd2lsbCBiZSBkZWR1cGxpY2F0ZWQuXG4gICAqL1xuICBpZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFydFdvcmtmbG93UmVxdWVzdDxXIGV4dGVuZHMgV29ya2Zsb3cgPSBXb3JrZmxvdz5cbiAgZXh0ZW5kcyBXb3JrZmxvd09wdGlvbnMge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgd29ya2Zsb3cgZXhlY3V0aW9uLlxuICAgKlxuICAgKiBPbmx5IG9uZSB3b3JrZmxvdyBjYW4gZXhpc3QgZm9yIGFuIElELiBSZXF1ZXN0cyB0byBzdGFydCBhIHdvcmtmbG93XG4gICAqIHdpdGggdGhlIG5hbWUgb2YgYW4gZXhpc3Rpbmcgd29ya2Zsb3cgd2lsbCBmYWlsLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGEgdW5pcXVlIG5hbWUgaXMgZ2VuZXJhdGVkLlxuICAgKi9cbiAgZXhlY3V0aW9uTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHdvcmtmbG93IHRvIGV4ZWN1dGUuXG4gICAqL1xuICB3b3JrZmxvd05hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIElucHV0IHBheWxvYWQgZm9yIHRoZSB3b3JrZmxvdyBmdW5jdGlvbi5cbiAgICovXG4gIGlucHV0PzogV29ya2Zsb3dJbnB1dDxXPjtcbiAgLyoqXG4gICAqIElEIG9mIHRoZSBwYXJlbnQgZXhlY3V0aW9uIGlmIHRoaXMgaXMgYSBjaGlsZCB3b3JrZmxvd1xuICAgKi9cbiAgcGFyZW50RXhlY3V0aW9uSWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXF1ZW5jZSBJRCBvZiB0aGlzIGV4ZWN1dGlvbiBpZiB0aGlzIGlzIGEgY2hpbGQgd29ya2Zsb3dcbiAgICovXG4gIHNlcT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFydFdvcmtmbG93UmVzcG9uc2Uge1xuICAvKipcbiAgICogSUQgb2YgdGhlIHN0YXJ0ZWQgd29ya2Zsb3cgZXhlY3V0aW9uLlxuICAgKi9cbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb21wbGV0ZUFjdGl2aXR5UmVxdWVzdDxUID0gYW55PiB7XG4gIGFjdGl2aXR5VG9rZW46IHN0cmluZztcbiAgcmVzdWx0OiBUO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZhaWxBY3Rpdml0eVJlcXVlc3Qge1xuICBhY3Rpdml0eVRva2VuOiBzdHJpbmc7XG4gIGVycm9yOiBzdHJpbmc7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGVhcnRiZWF0UmVxdWVzdCB7XG4gIGFjdGl2aXR5VG9rZW46IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIZWFydGJlYXRSZXNwb25zZSB7XG4gIC8qKlxuICAgKiBUcnVlIHdoZW4gdGhlIGFjdGl2aXR5IGhhcyBiZWVuIGNhbmNlbGxlZC5cbiAgICpcbiAgICogVGhpcyBpcyB0aGUgb25seSB3YXkgZm9yIGEgbG9uZyBydW5uaW5nIGFjdGl2aXR5IHRvIGtub3cgaXQgd2FzIGNhbmVsbGVkLlxuICAgKi9cbiAgY2FuY2VsbGVkOiBib29sZWFuO1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvY2xpZW50cy93b3JrZmxvdy1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUVBT2tDO0FBQ2xDLHFEQUk0QjtBQUc1Qiw0REFBMkQ7QUFZM0QsTUFBc0IsY0FBYztJQUNsQyxZQUNVLHFCQUE0QyxFQUMxQyxRQUFvQjtRQUR0QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzFDLGFBQVEsR0FBUixRQUFRLENBQVk7SUFDN0IsQ0FBQztJQStCSjs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBMEI7UUFDaEQsTUFBTSxXQUFXLEdBQ2YsT0FBTyxPQUFPLENBQUMsU0FBUyxLQUFLLFFBQVE7WUFDbkMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTO1lBQ25CLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQztRQUNwQyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FDM0IsV0FBVyxFQUNYLElBQUEsZ0NBQVcsRUFDVDtZQUNFLElBQUksRUFBRSxzQ0FBaUIsQ0FBQyxjQUFjO1lBQ3RDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztZQUN4QixRQUFRLEVBQ04sT0FBTyxPQUFPLENBQUMsTUFBTSxLQUFLLFFBQVE7Z0JBQ2hDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTTtnQkFDaEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtTQUN4QixFQUNELElBQUksQ0FBQyxRQUFRLEVBQUUsRUFDZixPQUFPLENBQUMsRUFBRSxDQUNYLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxFQUM1QixhQUFhLEVBQ2IsTUFBTSxHQUNtQztRQUN6QyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBb0IsYUFBYSxFQUFFO1lBQzlELElBQUksRUFBRSxzQ0FBaUIsQ0FBQyxpQkFBaUI7WUFDekMsTUFBTTtTQUNQLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxZQUFZLENBQUMsRUFDeEIsYUFBYSxFQUNiLEtBQUssRUFDTCxPQUFPLEdBQ2tDO1FBQ3pDLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFpQixhQUFhLEVBQUU7WUFDM0QsSUFBSSxFQUFFLHNDQUFpQixDQUFDLGNBQWM7WUFDdEMsS0FBSztZQUNMLE9BQU87U0FDUixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxpQkFBaUIsQ0FDNUIsT0FBbUQ7UUFFbkQsTUFBTSxJQUFJLEdBQUcsSUFBQSx1Q0FBbUIsRUFBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFeEQsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFcEUsSUFBSSxTQUFTLEVBQUUsTUFBTSxLQUFLLDhCQUFlLENBQUMsV0FBVyxFQUFFO1lBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUM7U0FDNUI7UUFFRCxPQUFPLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLGlCQUFpQixDQUN2RCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQ2hCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FDOUIsQ0FBQztJQUNKLENBQUM7SUFFTyxLQUFLLENBQUMsa0JBQWtCLENBRTlCLGFBQXFCLEVBQUUsS0FBZ0Q7UUFDdkUsTUFBTSxJQUFJLEdBQUcsSUFBQSx1Q0FBbUIsRUFBQyxhQUFhLENBQUMsQ0FBQztRQUNoRCxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQ3hCLElBQUEsZ0NBQVcsRUFDVDtZQUNFLEdBQUcsS0FBSztZQUNSLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUc7U0FDdEIsRUFDRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQ2hCLENBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWpJRCx3Q0FpSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBY3Rpdml0eUNvbXBsZXRlZCxcbiAgQWN0aXZpdHlGYWlsZWQsXG4gIGNyZWF0ZUV2ZW50LFxuICBIaXN0b3J5U3RhdGVFdmVudCxcbiAgU2lnbmFsUmVjZWl2ZWQsXG4gIFdvcmtmbG93RXZlbnRUeXBlLFxufSBmcm9tIFwiLi4vLi4vd29ya2Zsb3ctZXZlbnRzLmpzXCI7XG5pbXBvcnQge1xuICBFeGVjdXRpb24sXG4gIEV4ZWN1dGlvbkhhbmRsZSxcbiAgRXhlY3V0aW9uU3RhdHVzLFxufSBmcm9tIFwiLi4vLi4vZXhlY3V0aW9uLmpzXCI7XG5pbXBvcnQgeyBTaWduYWwgfSBmcm9tIFwiLi4vLi4vc2lnbmFscy5qc1wiO1xuaW1wb3J0IHsgV29ya2Zsb3csIFdvcmtmbG93T3B0aW9ucyB9IGZyb20gXCIuLi8uLi93b3JrZmxvdy5qc1wiO1xuaW1wb3J0IHsgZGVjb2RlQWN0aXZpdHlUb2tlbiB9IGZyb20gXCIuLi9hY3Rpdml0eS10b2tlbi5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlSdW50aW1lQ2xpZW50IH0gZnJvbSBcIi4vYWN0aXZpdHktcnVudGltZS1jbGllbnQuanNcIjtcbmltcG9ydCB7XG4gIFNlbmRBY3Rpdml0eVN1Y2Nlc3NSZXF1ZXN0LFxuICBTZW5kQWN0aXZpdHlGYWlsdXJlUmVxdWVzdCxcbiAgR2V0RXhlY3V0aW9uc1JlcXVlc3QsXG4gIEdldEV4ZWN1dGlvbnNSZXNwb25zZSxcbiAgU2VuZEFjdGl2aXR5SGVhcnRiZWF0UmVxdWVzdCxcbiAgU3RhcnRFeGVjdXRpb25SZXF1ZXN0LFxuICBTZW5kQWN0aXZpdHlIZWFydGJlYXRSZXNwb25zZSxcbn0gZnJvbSBcIi4uLy4uL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBXb3JrZmxvd0NsaWVudCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWN0aXZpdHlSdW50aW1lQ2xpZW50OiBBY3Rpdml0eVJ1bnRpbWVDbGllbnQsXG4gICAgcHJvdGVjdGVkIGJhc2VUaW1lOiAoKSA9PiBEYXRlXG4gICkge31cblxuICAvKipcbiAgICogU3RhcnQgYSB3b3JrZmxvdyBleGVjdXRpb25cbiAgICogQHBhcmFtIG5hbWUgU3VmZml4IG9mIGV4ZWN1dGlvbiBpZFxuICAgKiBAcGFyYW0gaW5wdXQgV29ya2Zsb3cgcGFyYW1ldGVyc1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHN0YXJ0V29ya2Zsb3c8VyBleHRlbmRzIFdvcmtmbG93ID0gV29ya2Zsb3c+KFxuICAgIHJlcXVlc3Q6IFN0YXJ0V29ya2Zsb3dSZXF1ZXN0PFc+XG4gICk6IFByb21pc2U8c3RyaW5nPjtcblxuICAvKipcbiAgICogU3VibWl0IGV2ZW50cyB0byBiZSBwcm9jZXNzZWQgYnkgYSB3b3JrZmxvdydzIG9yY2hlc3RyYXRvci5cbiAgICpcbiAgICogQHBhcmFtIGV4ZWN1dGlvbklkIElEIG9mIHRoZSB3b3JrZmxvdyBleGVjdXRpb25cbiAgICogQHBhcmFtIGV2ZW50cyBldmVudHMgdG8gc3VibWl0IGZvciBwcm9jZXNzaW5nXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3Qgc3VibWl0V29ya2Zsb3dUYXNrKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgLi4uZXZlbnRzOiBIaXN0b3J5U3RhdGVFdmVudFtdXG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgcHVibGljIGFic3RyYWN0IGdldEV4ZWN1dGlvbnMoXG4gICAgcHJvcHM6IEdldEV4ZWN1dGlvbnNSZXF1ZXN0XG4gICk6IFByb21pc2U8R2V0RXhlY3V0aW9uc1Jlc3BvbnNlPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZ2V0RXhlY3V0aW9uKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxFeGVjdXRpb24gfCB1bmRlZmluZWQ+O1xuXG4gIC8qKlxuICAgKiBTZW5kcyBhIHNpZ25hbCB0byB0aGUgZ2l2ZW4gZXhlY3V0aW9uLlxuICAgKlxuICAgKiBUaGUgZXhlY3V0aW9uIG1heSBiZSB3YWl0aW5nIG9uIGEgc2lnbmFsIG9yIG1heSBoYXZlIGEgaGFuZGxlciByZWdpc3RlcmVkXG4gICAqIHRoYXQgcnVucyB3aGVuIHRoZSBzaWduYWwgaXMgcmVjZWl2ZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc2VuZFNpZ25hbChyZXF1ZXN0OiBTZW5kU2lnbmFsUmVxdWVzdCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGV4ZWN1dGlvbklkID1cbiAgICAgIHR5cGVvZiByZXF1ZXN0LmV4ZWN1dGlvbiA9PT0gXCJzdHJpbmdcIlxuICAgICAgICA/IHJlcXVlc3QuZXhlY3V0aW9uXG4gICAgICAgIDogcmVxdWVzdC5leGVjdXRpb24uZXhlY3V0aW9uSWQ7XG4gICAgYXdhaXQgdGhpcy5zdWJtaXRXb3JrZmxvd1Rhc2soXG4gICAgICBleGVjdXRpb25JZCxcbiAgICAgIGNyZWF0ZUV2ZW50PFNpZ25hbFJlY2VpdmVkPihcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLlNpZ25hbFJlY2VpdmVkLFxuICAgICAgICAgIHBheWxvYWQ6IHJlcXVlc3QucGF5bG9hZCxcbiAgICAgICAgICBzaWduYWxJZDpcbiAgICAgICAgICAgIHR5cGVvZiByZXF1ZXN0LnNpZ25hbCA9PT0gXCJzdHJpbmdcIlxuICAgICAgICAgICAgICA/IHJlcXVlc3Quc2lnbmFsXG4gICAgICAgICAgICAgIDogcmVxdWVzdC5zaWduYWwuaWQsXG4gICAgICAgIH0sXG4gICAgICAgIHRoaXMuYmFzZVRpbWUoKSxcbiAgICAgICAgcmVxdWVzdC5pZFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ29tcGxldGVzIGFuIGFzeW5jIGFjdGl2aXR5IGNhdXNpbmcgaXQgdG8gcmV0dXJuIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjb21wbGV0ZUFjdGl2aXR5KHtcbiAgICBhY3Rpdml0eVRva2VuLFxuICAgIHJlc3VsdCxcbiAgfTogT21pdDxTZW5kQWN0aXZpdHlTdWNjZXNzUmVxdWVzdCwgXCJ0eXBlXCI+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5zZW5kQWN0aXZpdHlSZXN1bHQ8QWN0aXZpdHlDb21wbGV0ZWQ+KGFjdGl2aXR5VG9rZW4sIHtcbiAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkFjdGl2aXR5Q29tcGxldGVkLFxuICAgICAgcmVzdWx0LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZhaWxzIGFuIGFzeW5jIGFjdGl2aXR5IGNhdXNpbmcgaXQgdG8gdGhyb3cgdGhlIGdpdmVuIGVycm9yLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGZhaWxBY3Rpdml0eSh7XG4gICAgYWN0aXZpdHlUb2tlbixcbiAgICBlcnJvcixcbiAgICBtZXNzYWdlLFxuICB9OiBPbWl0PFNlbmRBY3Rpdml0eUZhaWx1cmVSZXF1ZXN0LCBcInR5cGVcIj4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnNlbmRBY3Rpdml0eVJlc3VsdDxBY3Rpdml0eUZhaWxlZD4oYWN0aXZpdHlUb2tlbiwge1xuICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQWN0aXZpdHlGYWlsZWQsXG4gICAgICBlcnJvcixcbiAgICAgIG1lc3NhZ2UsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU3VibWl0cyBhIFwiaGVhcnRiZWF0XCIgZm9yIHRoZSBnaXZlbiBhY3Rpdml0eVRva2VuLlxuICAgKlxuICAgKiBAcmV0dXJucyB3aGV0aGVyIHRoZSBhY3Rpdml0eSBoYXMgYmVlbiBjYW5jZWxsZWQgYnkgdGhlIGNhbGxpbmcgd29ya2Zsb3cuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaGVhcnRiZWF0QWN0aXZpdHkoXG4gICAgcmVxdWVzdDogT21pdDxTZW5kQWN0aXZpdHlIZWFydGJlYXRSZXF1ZXN0LCBcInR5cGVcIj5cbiAgKTogUHJvbWlzZTxTZW5kQWN0aXZpdHlIZWFydGJlYXRSZXNwb25zZT4ge1xuICAgIGNvbnN0IGRhdGEgPSBkZWNvZGVBY3Rpdml0eVRva2VuKHJlcXVlc3QuYWN0aXZpdHlUb2tlbik7XG5cbiAgICBjb25zdCBleGVjdXRpb24gPSBhd2FpdCB0aGlzLmdldEV4ZWN1dGlvbihkYXRhLnBheWxvYWQuZXhlY3V0aW9uSWQpO1xuXG4gICAgaWYgKGV4ZWN1dGlvbj8uc3RhdHVzICE9PSBFeGVjdXRpb25TdGF0dXMuSU5fUFJPR1JFU1MpIHtcbiAgICAgIHJldHVybiB7IGNhbmNlbGxlZDogdHJ1ZSB9O1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmFjdGl2aXR5UnVudGltZUNsaWVudC5oZWFydGJlYXRBY3Rpdml0eShcbiAgICAgIGRhdGEucGF5bG9hZC5leGVjdXRpb25JZCxcbiAgICAgIGRhdGEucGF5bG9hZC5zZXEsXG4gICAgICB0aGlzLmJhc2VUaW1lKCkudG9JU09TdHJpbmcoKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNlbmRBY3Rpdml0eVJlc3VsdDxcbiAgICBFIGV4dGVuZHMgQWN0aXZpdHlDb21wbGV0ZWQgfCBBY3Rpdml0eUZhaWxlZFxuICA+KGFjdGl2aXR5VG9rZW46IHN0cmluZywgZXZlbnQ6IE9taXQ8RSwgXCJzZXFcIiB8IFwiZHVyYXRpb25cIiB8IFwidGltZXN0YW1wXCI+KSB7XG4gICAgY29uc3QgZGF0YSA9IGRlY29kZUFjdGl2aXR5VG9rZW4oYWN0aXZpdHlUb2tlbik7XG4gICAgYXdhaXQgdGhpcy5zdWJtaXRXb3JrZmxvd1Rhc2soXG4gICAgICBkYXRhLnBheWxvYWQuZXhlY3V0aW9uSWQsXG4gICAgICBjcmVhdGVFdmVudDxBY3Rpdml0eUNvbXBsZXRlZCB8IEFjdGl2aXR5RmFpbGVkPihcbiAgICAgICAge1xuICAgICAgICAgIC4uLmV2ZW50LFxuICAgICAgICAgIHNlcTogZGF0YS5wYXlsb2FkLnNlcSxcbiAgICAgICAgfSxcbiAgICAgICAgdGhpcy5iYXNlVGltZSgpXG4gICAgICApXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbmRTaWduYWxSZXF1ZXN0PFBheWxvYWQgPSBhbnk+IHtcbiAgZXhlY3V0aW9uOiBFeGVjdXRpb25IYW5kbGU8YW55PiB8IHN0cmluZztcbiAgc2lnbmFsOiBzdHJpbmcgfCBTaWduYWw8UGF5bG9hZD47XG4gIHBheWxvYWQ/OiBQYXlsb2FkO1xuICAvKipcbiAgICogRXhlY3V0aW9uIHNjb3BlZCB1bmlxdWUgZXZlbnQgaWQuIER1cGxpY2F0ZXMgd2lsbCBiZSBkZWR1cGxpY2F0ZWQuXG4gICAqL1xuICBpZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFydFdvcmtmbG93UmVxdWVzdDxXIGV4dGVuZHMgV29ya2Zsb3cgPSBXb3JrZmxvdz5cbiAgZXh0ZW5kcyBTdGFydEV4ZWN1dGlvblJlcXVlc3Q8Vz4sXG4gICAgV29ya2Zsb3dPcHRpb25zIHtcbiAgcGFyZW50RXhlY3V0aW9uSWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXF1ZW5jZSBJRCBvZiB0aGlzIGV4ZWN1dGlvbiBpZiB0aGlzIGlzIGEgY2hpbGQgd29ya2Zsb3dcbiAgICovXG4gIHNlcT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFydFdvcmtmbG93UmVzcG9uc2Uge1xuICAvKipcbiAgICogSUQgb2YgdGhlIHN0YXJ0ZWQgd29ya2Zsb3cgZXhlY3V0aW9uLlxuICAgKi9cbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbn1cbiJdfQ==

@@ -73,3 +73,3 @@ "use strict";

await this.props.workflowClient.startWorkflow({
workflowName: command.name,
workflow: command.name,
input: command.input,

@@ -133,3 +133,3 @@ parentExecutionId: executionId,

signal: command.signalId,
executionId: childExecutionId,
execution: childExecutionId,
id: `${executionId}/${command.seq}`,

@@ -172,2 +172,2 @@ payload: command.payload,

exports.CommandExecutor = CommandExecutor;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1leGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydW50aW1lL2NvbW1hbmQtZXhlY3V0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBa0J1QjtBQUN2Qiw4REFjK0I7QUFDL0IsMENBQXNFO0FBQ3RFLHdDQUF5QztBQUV6Qyx1REFBZ0Y7QUFFaEYseUNBTW9CO0FBU3BCOztHQUVHO0FBQ0gsTUFBYSxlQUFlO0lBQzFCLFlBQW9CLEtBQTJCO1FBQTNCLFVBQUssR0FBTCxLQUFLLENBQXNCO0lBQUcsQ0FBQztJQUU1QyxLQUFLLENBQUMsY0FBYyxDQUN6QixRQUFrQixFQUNsQixXQUFtQixFQUNuQixPQUFnQixFQUNoQixRQUFjO1FBRWQsSUFBSSxJQUFBLHNDQUF5QixFQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3RDLE9BQU8sTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQ2hDLFFBQVEsRUFDUixXQUFXLEVBQ1gsT0FBTyxFQUNQLFFBQVEsQ0FDVCxDQUFDO1NBQ0g7YUFBTSxJQUFJLElBQUEsc0NBQXlCLEVBQUMsT0FBTyxDQUFDLEVBQUU7WUFDN0MsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztTQUNuRTthQUFNLElBQUksSUFBQSw4QkFBaUIsRUFBQyxPQUFPLENBQUMsSUFBSSxJQUFBLGdDQUFtQixFQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JFLCtFQUErRTtZQUMvRSxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztTQUMzRDthQUFNLElBQUksSUFBQSxrQ0FBcUIsRUFBQyxPQUFPLENBQUMsRUFBRTtZQUN6QywyRkFBMkY7WUFDM0YsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztTQUNq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RXhwZWN0U2lnbmFsQ29tbWFuZCxcbiAgaXNQdWJsaXNoRXZlbnRzQ29tbWFuZCxcbiAgaXNTY2hlZHVsZUFjdGl2aXR5Q29tbWFuZCxcbiAgaXNTY2hlZHVsZVdvcmtmbG93Q29tbWFuZCxcbiAgaXNTZW5kU2lnbmFsQ29tbWFuZCxcbiAgaXNTbGVlcEZvckNvbW1hbmQsXG4gIGlzU2xlZXBVbnRpbENvbW1hbmQsXG4gIGlzU3RhcnRDb25kaXRpb25Db21tYW5kLFxuICBQdWJsaXNoRXZlbnRzQ29tbWFuZCxcbiAgU2NoZWR1bGVBY3Rpdml0eUNvbW1hbmQsXG4gIFNjaGVkdWxlV29ya2Zsb3dDb21tYW5kLFxuICBTZW5kU2lnbmFsQ29tbWFuZCxcbiAgU2xlZXBGb3JDb21tYW5kLFxuICBTbGVlcFVudGlsQ29tbWFuZCxcbiAgU3RhcnRDb25kaXRpb25Db21tYW5kLFxufSBmcm9tIFwiLi4vY29tbWFuZC5qc1wiO1xuaW1wb3J0IHtcbiAgQWN0aXZpdHlUaW1lZE91dCxcbiAgV29ya2Zsb3dFdmVudFR5cGUsXG4gIGNyZWF0ZUV2ZW50LFxuICBBY3Rpdml0eVNjaGVkdWxlZCxcbiAgQ2hpbGRXb3JrZmxvd1NjaGVkdWxlZCxcbiAgU2xlZXBTY2hlZHVsZWQsXG4gIFNsZWVwQ29tcGxldGVkLFxuICBFeHBlY3RTaWduYWxTdGFydGVkLFxuICBFeHBlY3RTaWduYWxUaW1lZE91dCxcbiAgSGlzdG9yeVN0YXRlRXZlbnQsXG4gIENvbmRpdGlvblN0YXJ0ZWQsXG4gIENvbmRpdGlvblRpbWVkT3V0LFxuICBTaWduYWxTZW50LFxufSBmcm9tIFwiLi4vd29ya2Zsb3ctZXZlbnRzLmpzXCI7XG5pbXBvcnQgeyBFdmVudHNQdWJsaXNoZWQsIGlzQ2hpbGRFeGVjdXRpb25UYXJnZXQgfSBmcm9tIFwiLi4vaW5kZXguanNcIjtcbmltcG9ydCB7IGFzc2VydE5ldmVyIH0gZnJvbSBcIi4uL3V0aWwuanNcIjtcbmltcG9ydCB7IFdvcmtmbG93IH0gZnJvbSBcIi4uL3dvcmtmbG93LmpzXCI7XG5pbXBvcnQgeyBmb3JtYXRDaGlsZEV4ZWN1dGlvbk5hbWUsIGZvcm1hdEV4ZWN1dGlvbklkIH0gZnJvbSBcIi4vZXhlY3V0aW9uLWlkLmpzXCI7XG5pbXBvcnQgeyBBY3Rpdml0eVdvcmtlclJlcXVlc3QgfSBmcm9tIFwiLi9oYW5kbGVycy9hY3Rpdml0eS13b3JrZXIuanNcIjtcbmltcG9ydCB7XG4gIEV2ZW50Q2xpZW50LFxuICBTY2hlZHVsZSxcbiAgVGltZXJDbGllbnQsXG4gIFdvcmtmbG93Q2xpZW50LFxuICBXb3JrZmxvd1J1bnRpbWVDbGllbnQsXG59IGZyb20gXCIuL2luZGV4LmpzXCI7XG5cbmludGVyZmFjZSBDb21tYW5kRXhlY3V0b3JQcm9wcyB7XG4gIHdvcmtmbG93UnVudGltZUNsaWVudDogV29ya2Zsb3dSdW50aW1lQ2xpZW50O1xuICB0aW1lckNsaWVudDogVGltZXJDbGllbnQ7XG4gIHdvcmtmbG93Q2xpZW50OiBXb3JrZmxvd0NsaWVudDtcbiAgZXZlbnRDbGllbnQ6IEV2ZW50Q2xpZW50O1xufVxuXG4vKipcbiAqIFVzZXMgdGhlIGNsaWVudHMgdG8gZXhlY3V0ZSBhbGwgc3VwcG9ydGVkIGNvbW1hbmRzIGFuZCByZXR1cm4gZXZlbnRzLlxuICovXG5leHBvcnQgY2xhc3MgQ29tbWFuZEV4ZWN1dG9yIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwcm9wczogQ29tbWFuZEV4ZWN1dG9yUHJvcHMpIHt9XG5cbiAgcHVibGljIGFzeW5jIGV4ZWN1dGVDb21tYW5kKFxuICAgIHdvcmtmbG93OiBXb3JrZmxvdyxcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGNvbW1hbmQ6IENvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKTogUHJvbWlzZTxIaXN0b3J5U3RhdGVFdmVudD4ge1xuICAgIGlmIChpc1NjaGVkdWxlQWN0aXZpdHlDb21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5zY2hlZHVsZUFjdGl2aXR5KFxuICAgICAgICB3b3JrZmxvdyxcbiAgICAgICAgZXhlY3V0aW9uSWQsXG4gICAgICAgIGNvbW1hbmQsXG4gICAgICAgIGJhc2VUaW1lXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoaXNTY2hlZHVsZVdvcmtmbG93Q29tbWFuZChjb21tYW5kKSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2NoZWR1bGVDaGlsZFdvcmtmbG93KGV4ZWN1dGlvbklkLCBjb21tYW5kLCBiYXNlVGltZSk7XG4gICAgfSBlbHNlIGlmIChpc1NsZWVwRm9yQ29tbWFuZChjb21tYW5kKSB8fCBpc1NsZWVwVW50aWxDb21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICAvLyBhbGwgc2xlZXAgdGltZXMgYXJlIGNvbXB1dGVkIHVzaW5nIHRoZSBzdGFydCB0aW1lIG9mIHRoZSBXb3JrZmxvd1Rhc2tTdGFydGVkXG4gICAgICByZXR1cm4gdGhpcy5zY2hlZHVsZVNsZWVwKGV4ZWN1dGlvbklkLCBjb21tYW5kLCBiYXNlVGltZSk7XG4gICAgfSBlbHNlIGlmIChpc0V4cGVjdFNpZ25hbENvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIC8vIHNob3VsZCB0aGUgdGltZW91dCBjb21tYW5kIGJlIGdlbmVyaWMgKGV4OiBTdGFydFRpbWVvdXQpIG9yIHNwZWNpZmljIChleDogRXhwZWN0U2lnbmFsKT9cbiAgICAgIHJldHVybiB0aGlzLmV4ZWN1dGVFeHBlY3RTaWduYWwoZXhlY3V0aW9uSWQsIGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2UgaWYgKGlzU2VuZFNpZ25hbENvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbmRTaWduYWwoZXhlY3V0aW9uSWQsIGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2UgaWYgKGlzU3RhcnRDb25kaXRpb25Db21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdGFydENvbmRpdGlvbihleGVjdXRpb25JZCwgY29tbWFuZCwgYmFzZVRpbWUpO1xuICAgIH0gZWxzZSBpZiAoaXNQdWJsaXNoRXZlbnRzQ29tbWFuZChjb21tYW5kKSkge1xuICAgICAgcmV0dXJuIHRoaXMucHVibGlzaEV2ZW50cyhjb21tYW5kLCBiYXNlVGltZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBhc3NlcnROZXZlcihjb21tYW5kLCBgdW5rbm93biBjb21tYW5kIHR5cGVgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNjaGVkdWxlQWN0aXZpdHkoXG4gICAgd29ya2Zsb3c6IFdvcmtmbG93LFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogU2NoZWR1bGVBY3Rpdml0eUNvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKSB7XG4gICAgY29uc3QgcmVxdWVzdDogQWN0aXZpdHlXb3JrZXJSZXF1ZXN0ID0ge1xuICAgICAgc2NoZWR1bGVkVGltZTogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgd29ya2Zsb3dOYW1lOiB3b3JrZmxvdy53b3JrZmxvd05hbWUsXG4gICAgICBleGVjdXRpb25JZCxcbiAgICAgIGNvbW1hbmQsXG4gICAgICByZXRyeTogMCxcbiAgICB9O1xuXG4gICAgY29uc3QgdGltZW91dFN0YXJ0ZXIgPSBjb21tYW5kLnRpbWVvdXRTZWNvbmRzXG4gICAgICA/IGF3YWl0IHRoaXMucHJvcHMudGltZXJDbGllbnQuc2NoZWR1bGVFdmVudDxBY3Rpdml0eVRpbWVkT3V0Pih7XG4gICAgICAgICAgc2NoZWR1bGU6IFNjaGVkdWxlLnJlbGF0aXZlKGNvbW1hbmQudGltZW91dFNlY29uZHMsIGJhc2VUaW1lKSxcbiAgICAgICAgICBldmVudDoge1xuICAgICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQWN0aXZpdHlUaW1lZE91dCxcbiAgICAgICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBleGVjdXRpb25JZCxcbiAgICAgICAgfSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3QgYWN0aXZpdHlTdGFydGVyID1cbiAgICAgIHRoaXMucHJvcHMud29ya2Zsb3dSdW50aW1lQ2xpZW50LnN0YXJ0QWN0aXZpdHkocmVxdWVzdCk7XG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChbYWN0aXZpdHlTdGFydGVyLCB0aW1lb3V0U3RhcnRlcl0pO1xuXG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PEFjdGl2aXR5U2NoZWR1bGVkPihcbiAgICAgIHtcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQWN0aXZpdHlTY2hlZHVsZWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgIG5hbWU6IGNvbW1hbmQubmFtZSxcbiAgICAgIH0sXG4gICAgICBiYXNlVGltZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNjaGVkdWxlQ2hpbGRXb3JrZmxvdyhcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGNvbW1hbmQ6IFNjaGVkdWxlV29ya2Zsb3dDb21tYW5kLFxuICAgIGJhc2VUaW1lOiBEYXRlXG4gICk6IFByb21pc2U8Q2hpbGRXb3JrZmxvd1NjaGVkdWxlZD4ge1xuICAgIGF3YWl0IHRoaXMucHJvcHMud29ya2Zsb3dDbGllbnQuc3RhcnRXb3JrZmxvdyh7XG4gICAgICB3b3JrZmxvd05hbWU6IGNvbW1hbmQubmFtZSxcbiAgICAgIGlucHV0OiBjb21tYW5kLmlucHV0LFxuICAgICAgcGFyZW50RXhlY3V0aW9uSWQ6IGV4ZWN1dGlvbklkLFxuICAgICAgZXhlY3V0aW9uTmFtZTogZm9ybWF0Q2hpbGRFeGVjdXRpb25OYW1lKGV4ZWN1dGlvbklkLCBjb21tYW5kLnNlcSksXG4gICAgICBzZXE6IGNvbW1hbmQuc2VxLFxuICAgICAgLi4uY29tbWFuZC5vcHRzLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PENoaWxkV29ya2Zsb3dTY2hlZHVsZWQ+KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5DaGlsZFdvcmtmbG93U2NoZWR1bGVkLFxuICAgICAgICBzZXE6IGNvbW1hbmQuc2VxLFxuICAgICAgICBuYW1lOiBjb21tYW5kLm5hbWUsXG4gICAgICAgIGlucHV0OiBjb21tYW5kLmlucHV0LFxuICAgICAgfSxcbiAgICAgIGJhc2VUaW1lXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2NoZWR1bGVTbGVlcChcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuXG4gICAgY29tbWFuZDogU2xlZXBGb3JDb21tYW5kIHwgU2xlZXBVbnRpbENvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKTogUHJvbWlzZTxTbGVlcFNjaGVkdWxlZD4ge1xuICAgIC8vIFRPRE8gdmFsaWRhdGVcbiAgICBjb25zdCB1bnRpbFRpbWUgPSBpc1NsZWVwVW50aWxDb21tYW5kKGNvbW1hbmQpXG4gICAgICA/IG5ldyBEYXRlKGNvbW1hbmQudW50aWxUaW1lKVxuICAgICAgOiBuZXcgRGF0ZShiYXNlVGltZS5nZXRUaW1lKCkgKyBjb21tYW5kLmR1cmF0aW9uU2Vjb25kcyAqIDEwMDApO1xuICAgIGNvbnN0IHVudGlsVGltZUlzbyA9IHVudGlsVGltZS50b0lTT1N0cmluZygpO1xuXG4gICAgYXdhaXQgdGhpcy5wcm9wcy50aW1lckNsaWVudC5zY2hlZHVsZUV2ZW50PFNsZWVwQ29tcGxldGVkPih7XG4gICAgICBldmVudDoge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5TbGVlcENvbXBsZXRlZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgIH0sXG4gICAgICBzY2hlZHVsZTogU2NoZWR1bGUuYWJzb2x1dGUodW50aWxUaW1lSXNvKSxcbiAgICAgIGV4ZWN1dGlvbklkLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PFNsZWVwU2NoZWR1bGVkPihcbiAgICAgIHtcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuU2xlZXBTY2hlZHVsZWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgIHVudGlsVGltZTogdW50aWxUaW1lLnRvSVNPU3RyaW5nKCksXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBleGVjdXRlRXhwZWN0U2lnbmFsKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG5cbiAgICBjb21tYW5kOiBFeHBlY3RTaWduYWxDb21tYW5kLFxuICAgIGJhc2VUaW1lOiBEYXRlXG4gICk6IFByb21pc2U8RXhwZWN0U2lnbmFsU3RhcnRlZD4ge1xuICAgIGlmIChjb21tYW5kLnRpbWVvdXRTZWNvbmRzKSB7XG4gICAgICBhd2FpdCB0aGlzLnByb3BzLnRpbWVyQ2xpZW50LnNjaGVkdWxlRXZlbnQ8RXhwZWN0U2lnbmFsVGltZWRPdXQ+KHtcbiAgICAgICAgZXZlbnQ6IHtcbiAgICAgICAgICBzaWduYWxJZDogY29tbWFuZC5zaWduYWxJZCxcbiAgICAgICAgICBzZXE6IGNvbW1hbmQuc2VxLFxuICAgICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkV4cGVjdFNpZ25hbFRpbWVkT3V0LFxuICAgICAgICB9LFxuICAgICAgICBzY2hlZHVsZTogU2NoZWR1bGUucmVsYXRpdmUoY29tbWFuZC50aW1lb3V0U2Vjb25kcywgYmFzZVRpbWUpLFxuICAgICAgICBleGVjdXRpb25JZCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjcmVhdGVFdmVudDxFeHBlY3RTaWduYWxTdGFydGVkPihcbiAgICAgIHtcbiAgICAgICAgc2lnbmFsSWQ6IGNvbW1hbmQuc2lnbmFsSWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkV4cGVjdFNpZ25hbFN0YXJ0ZWQsXG4gICAgICAgIHRpbWVvdXRTZWNvbmRzOiBjb21tYW5kLnRpbWVvdXRTZWNvbmRzLFxuICAgICAgfSxcbiAgICAgIGJhc2VUaW1lXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2VuZFNpZ25hbChcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGNvbW1hbmQ6IFNlbmRTaWduYWxDb21tYW5kLFxuICAgIGJhc2VUaW1lOiBEYXRlXG4gICkge1xuICAgIGNvbnN0IGNoaWxkRXhlY3V0aW9uSWQgPSBpc0NoaWxkRXhlY3V0aW9uVGFyZ2V0KGNvbW1hbmQudGFyZ2V0KVxuICAgICAgPyBmb3JtYXRFeGVjdXRpb25JZChcbiAgICAgICAgICBjb21tYW5kLnRhcmdldC53b3JrZmxvd05hbWUsXG4gICAgICAgICAgZm9ybWF0Q2hpbGRFeGVjdXRpb25OYW1lKGV4ZWN1dGlvbklkLCBjb21tYW5kLnRhcmdldC5zZXEpXG4gICAgICAgIClcbiAgICAgIDogY29tbWFuZC50YXJnZXQuZXhlY3V0aW9uSWQ7XG5cbiAgICBhd2FpdCB0aGlzLnByb3BzLndvcmtmbG93Q2xpZW50LnNlbmRTaWduYWwoe1xuICAgICAgc2lnbmFsOiBjb21tYW5kLnNpZ25hbElkLFxuICAgICAgZXhlY3V0aW9uSWQ6IGNoaWxkRXhlY3V0aW9uSWQsXG4gICAgICBpZDogYCR7ZXhlY3V0aW9uSWR9LyR7Y29tbWFuZC5zZXF9YCxcbiAgICAgIHBheWxvYWQ6IGNvbW1hbmQucGF5bG9hZCxcbiAgICB9KTtcblxuICAgIHJldHVybiBjcmVhdGVFdmVudDxTaWduYWxTZW50PihcbiAgICAgIHtcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuU2lnbmFsU2VudCxcbiAgICAgICAgZXhlY3V0aW9uSWQ6IGNoaWxkRXhlY3V0aW9uSWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgIHNpZ25hbElkOiBjb21tYW5kLnNpZ25hbElkLFxuICAgICAgICBwYXlsb2FkOiBjb21tYW5kLnBheWxvYWQsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzdGFydENvbmRpdGlvbihcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGNvbW1hbmQ6IFN0YXJ0Q29uZGl0aW9uQ29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApIHtcbiAgICBpZiAoY29tbWFuZC50aW1lb3V0U2Vjb25kcykge1xuICAgICAgYXdhaXQgdGhpcy5wcm9wcy50aW1lckNsaWVudC5zY2hlZHVsZUV2ZW50PENvbmRpdGlvblRpbWVkT3V0Pih7XG4gICAgICAgIGV2ZW50OiB7XG4gICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQ29uZGl0aW9uVGltZWRPdXQsXG4gICAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgfSxcbiAgICAgICAgZXhlY3V0aW9uSWQsXG4gICAgICAgIHNjaGVkdWxlOiBTY2hlZHVsZS5yZWxhdGl2ZShjb21tYW5kLnRpbWVvdXRTZWNvbmRzLCBiYXNlVGltZSksXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gY3JlYXRlRXZlbnQ8Q29uZGl0aW9uU3RhcnRlZD4oXG4gICAgICB7XG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkNvbmRpdGlvblN0YXJ0ZWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEhLFxuICAgICAgfSxcbiAgICAgIGJhc2VUaW1lXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgcHVibGlzaEV2ZW50cyhjb21tYW5kOiBQdWJsaXNoRXZlbnRzQ29tbWFuZCwgYmFzZVRpbWU6IERhdGUpIHtcbiAgICBhd2FpdCB0aGlzLnByb3BzLmV2ZW50Q2xpZW50LnB1Ymxpc2goLi4uY29tbWFuZC5ldmVudHMpO1xuICAgIHJldHVybiBjcmVhdGVFdmVudDxFdmVudHNQdWJsaXNoZWQ+KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5FdmVudHNQdWJsaXNoZWQsXG4gICAgICAgIGV2ZW50czogY29tbWFuZC5ldmVudHMsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEhLFxuICAgICAgfSxcbiAgICAgIGJhc2VUaW1lXG4gICAgKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1leGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydW50aW1lL2NvbW1hbmQtZXhlY3V0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBa0J1QjtBQUN2Qiw4REFjK0I7QUFDL0IsMENBQXNFO0FBQ3RFLHdDQUF5QztBQUV6Qyx1REFBZ0Y7QUFFaEYseUNBTW9CO0FBU3BCOztHQUVHO0FBQ0gsTUFBYSxlQUFlO0lBQzFCLFlBQW9CLEtBQTJCO1FBQTNCLFVBQUssR0FBTCxLQUFLLENBQXNCO0lBQUcsQ0FBQztJQUU1QyxLQUFLLENBQUMsY0FBYyxDQUN6QixRQUFrQixFQUNsQixXQUFtQixFQUNuQixPQUFnQixFQUNoQixRQUFjO1FBRWQsSUFBSSxJQUFBLHNDQUF5QixFQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3RDLE9BQU8sTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQ2hDLFFBQVEsRUFDUixXQUFXLEVBQ1gsT0FBTyxFQUNQLFFBQVEsQ0FDVCxDQUFDO1NBQ0g7YUFBTSxJQUFJLElBQUEsc0NBQXlCLEVBQUMsT0FBTyxDQUFDLEVBQUU7WUFDN0MsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztTQUNuRTthQUFNLElBQUksSUFBQSw4QkFBaUIsRUFBQyxPQUFPLENBQUMsSUFBSSxJQUFBLGdDQUFtQixFQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JFLCtFQUErRTtZQUMvRSxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztTQUMzRDthQUFNLElBQUksSUFBQSxrQ0FBcUIsRUFBQyxPQUFPLENBQUMsRUFBRTtZQUN6QywyRkFBMkY7WUFDM0YsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztTQUNq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RXhwZWN0U2lnbmFsQ29tbWFuZCxcbiAgaXNQdWJsaXNoRXZlbnRzQ29tbWFuZCxcbiAgaXNTY2hlZHVsZUFjdGl2aXR5Q29tbWFuZCxcbiAgaXNTY2hlZHVsZVdvcmtmbG93Q29tbWFuZCxcbiAgaXNTZW5kU2lnbmFsQ29tbWFuZCxcbiAgaXNTbGVlcEZvckNvbW1hbmQsXG4gIGlzU2xlZXBVbnRpbENvbW1hbmQsXG4gIGlzU3RhcnRDb25kaXRpb25Db21tYW5kLFxuICBQdWJsaXNoRXZlbnRzQ29tbWFuZCxcbiAgU2NoZWR1bGVBY3Rpdml0eUNvbW1hbmQsXG4gIFNjaGVkdWxlV29ya2Zsb3dDb21tYW5kLFxuICBTZW5kU2lnbmFsQ29tbWFuZCxcbiAgU2xlZXBGb3JDb21tYW5kLFxuICBTbGVlcFVudGlsQ29tbWFuZCxcbiAgU3RhcnRDb25kaXRpb25Db21tYW5kLFxufSBmcm9tIFwiLi4vY29tbWFuZC5qc1wiO1xuaW1wb3J0IHtcbiAgQWN0aXZpdHlUaW1lZE91dCxcbiAgV29ya2Zsb3dFdmVudFR5cGUsXG4gIGNyZWF0ZUV2ZW50LFxuICBBY3Rpdml0eVNjaGVkdWxlZCxcbiAgQ2hpbGRXb3JrZmxvd1NjaGVkdWxlZCxcbiAgU2xlZXBTY2hlZHVsZWQsXG4gIFNsZWVwQ29tcGxldGVkLFxuICBFeHBlY3RTaWduYWxTdGFydGVkLFxuICBFeHBlY3RTaWduYWxUaW1lZE91dCxcbiAgSGlzdG9yeVN0YXRlRXZlbnQsXG4gIENvbmRpdGlvblN0YXJ0ZWQsXG4gIENvbmRpdGlvblRpbWVkT3V0LFxuICBTaWduYWxTZW50LFxufSBmcm9tIFwiLi4vd29ya2Zsb3ctZXZlbnRzLmpzXCI7XG5pbXBvcnQgeyBFdmVudHNQdWJsaXNoZWQsIGlzQ2hpbGRFeGVjdXRpb25UYXJnZXQgfSBmcm9tIFwiLi4vaW5kZXguanNcIjtcbmltcG9ydCB7IGFzc2VydE5ldmVyIH0gZnJvbSBcIi4uL3V0aWwuanNcIjtcbmltcG9ydCB7IFdvcmtmbG93IH0gZnJvbSBcIi4uL3dvcmtmbG93LmpzXCI7XG5pbXBvcnQgeyBmb3JtYXRDaGlsZEV4ZWN1dGlvbk5hbWUsIGZvcm1hdEV4ZWN1dGlvbklkIH0gZnJvbSBcIi4vZXhlY3V0aW9uLWlkLmpzXCI7XG5pbXBvcnQgeyBBY3Rpdml0eVdvcmtlclJlcXVlc3QgfSBmcm9tIFwiLi9oYW5kbGVycy9hY3Rpdml0eS13b3JrZXIuanNcIjtcbmltcG9ydCB7XG4gIEV2ZW50Q2xpZW50LFxuICBTY2hlZHVsZSxcbiAgVGltZXJDbGllbnQsXG4gIFdvcmtmbG93Q2xpZW50LFxuICBXb3JrZmxvd1J1bnRpbWVDbGllbnQsXG59IGZyb20gXCIuL2luZGV4LmpzXCI7XG5cbmludGVyZmFjZSBDb21tYW5kRXhlY3V0b3JQcm9wcyB7XG4gIHdvcmtmbG93UnVudGltZUNsaWVudDogV29ya2Zsb3dSdW50aW1lQ2xpZW50O1xuICB0aW1lckNsaWVudDogVGltZXJDbGllbnQ7XG4gIHdvcmtmbG93Q2xpZW50OiBXb3JrZmxvd0NsaWVudDtcbiAgZXZlbnRDbGllbnQ6IEV2ZW50Q2xpZW50O1xufVxuXG4vKipcbiAqIFVzZXMgdGhlIGNsaWVudHMgdG8gZXhlY3V0ZSBhbGwgc3VwcG9ydGVkIGNvbW1hbmRzIGFuZCByZXR1cm4gZXZlbnRzLlxuICovXG5leHBvcnQgY2xhc3MgQ29tbWFuZEV4ZWN1dG9yIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwcm9wczogQ29tbWFuZEV4ZWN1dG9yUHJvcHMpIHt9XG5cbiAgcHVibGljIGFzeW5jIGV4ZWN1dGVDb21tYW5kKFxuICAgIHdvcmtmbG93OiBXb3JrZmxvdyxcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGNvbW1hbmQ6IENvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKTogUHJvbWlzZTxIaXN0b3J5U3RhdGVFdmVudD4ge1xuICAgIGlmIChpc1NjaGVkdWxlQWN0aXZpdHlDb21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5zY2hlZHVsZUFjdGl2aXR5KFxuICAgICAgICB3b3JrZmxvdyxcbiAgICAgICAgZXhlY3V0aW9uSWQsXG4gICAgICAgIGNvbW1hbmQsXG4gICAgICAgIGJhc2VUaW1lXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoaXNTY2hlZHVsZVdvcmtmbG93Q29tbWFuZChjb21tYW5kKSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2NoZWR1bGVDaGlsZFdvcmtmbG93KGV4ZWN1dGlvbklkLCBjb21tYW5kLCBiYXNlVGltZSk7XG4gICAgfSBlbHNlIGlmIChpc1NsZWVwRm9yQ29tbWFuZChjb21tYW5kKSB8fCBpc1NsZWVwVW50aWxDb21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICAvLyBhbGwgc2xlZXAgdGltZXMgYXJlIGNvbXB1dGVkIHVzaW5nIHRoZSBzdGFydCB0aW1lIG9mIHRoZSBXb3JrZmxvd1Rhc2tTdGFydGVkXG4gICAgICByZXR1cm4gdGhpcy5zY2hlZHVsZVNsZWVwKGV4ZWN1dGlvbklkLCBjb21tYW5kLCBiYXNlVGltZSk7XG4gICAgfSBlbHNlIGlmIChpc0V4cGVjdFNpZ25hbENvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIC8vIHNob3VsZCB0aGUgdGltZW91dCBjb21tYW5kIGJlIGdlbmVyaWMgKGV4OiBTdGFydFRpbWVvdXQpIG9yIHNwZWNpZmljIChleDogRXhwZWN0U2lnbmFsKT9cbiAgICAgIHJldHVybiB0aGlzLmV4ZWN1dGVFeHBlY3RTaWduYWwoZXhlY3V0aW9uSWQsIGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2UgaWYgKGlzU2VuZFNpZ25hbENvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbmRTaWduYWwoZXhlY3V0aW9uSWQsIGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2UgaWYgKGlzU3RhcnRDb25kaXRpb25Db21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdGFydENvbmRpdGlvbihleGVjdXRpb25JZCwgY29tbWFuZCwgYmFzZVRpbWUpO1xuICAgIH0gZWxzZSBpZiAoaXNQdWJsaXNoRXZlbnRzQ29tbWFuZChjb21tYW5kKSkge1xuICAgICAgcmV0dXJuIHRoaXMucHVibGlzaEV2ZW50cyhjb21tYW5kLCBiYXNlVGltZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBhc3NlcnROZXZlcihjb21tYW5kLCBgdW5rbm93biBjb21tYW5kIHR5cGVgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNjaGVkdWxlQWN0aXZpdHkoXG4gICAgd29ya2Zsb3c6IFdvcmtmbG93LFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogU2NoZWR1bGVBY3Rpdml0eUNvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKSB7XG4gICAgY29uc3QgcmVxdWVzdDogQWN0aXZpdHlXb3JrZXJSZXF1ZXN0ID0ge1xuICAgICAgc2NoZWR1bGVkVGltZTogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgd29ya2Zsb3dOYW1lOiB3b3JrZmxvdy53b3JrZmxvd05hbWUsXG4gICAgICBleGVjdXRpb25JZCxcbiAgICAgIGNvbW1hbmQsXG4gICAgICByZXRyeTogMCxcbiAgICB9O1xuXG4gICAgY29uc3QgdGltZW91dFN0YXJ0ZXIgPSBjb21tYW5kLnRpbWVvdXRTZWNvbmRzXG4gICAgICA/IGF3YWl0IHRoaXMucHJvcHMudGltZXJDbGllbnQuc2NoZWR1bGVFdmVudDxBY3Rpdml0eVRpbWVkT3V0Pih7XG4gICAgICAgICAgc2NoZWR1bGU6IFNjaGVkdWxlLnJlbGF0aXZlKGNvbW1hbmQudGltZW91dFNlY29uZHMsIGJhc2VUaW1lKSxcbiAgICAgICAgICBldmVudDoge1xuICAgICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQWN0aXZpdHlUaW1lZE91dCxcbiAgICAgICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBleGVjdXRpb25JZCxcbiAgICAgICAgfSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3QgYWN0aXZpdHlTdGFydGVyID1cbiAgICAgIHRoaXMucHJvcHMud29ya2Zsb3dSdW50aW1lQ2xpZW50LnN0YXJ0QWN0aXZpdHkocmVxdWVzdCk7XG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChbYWN0aXZpdHlTdGFydGVyLCB0aW1lb3V0U3RhcnRlcl0pO1xuXG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PEFjdGl2aXR5U2NoZWR1bGVkPihcbiAgICAgIHtcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQWN0aXZpdHlTY2hlZHVsZWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgIG5hbWU6IGNvbW1hbmQubmFtZSxcbiAgICAgIH0sXG4gICAgICBiYXNlVGltZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNjaGVkdWxlQ2hpbGRXb3JrZmxvdyhcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGNvbW1hbmQ6IFNjaGVkdWxlV29ya2Zsb3dDb21tYW5kLFxuICAgIGJhc2VUaW1lOiBEYXRlXG4gICk6IFByb21pc2U8Q2hpbGRXb3JrZmxvd1NjaGVkdWxlZD4ge1xuICAgIGF3YWl0IHRoaXMucHJvcHMud29ya2Zsb3dDbGllbnQuc3RhcnRXb3JrZmxvdyh7XG4gICAgICB3b3JrZmxvdzogY29tbWFuZC5uYW1lLFxuICAgICAgaW5wdXQ6IGNvbW1hbmQuaW5wdXQsXG4gICAgICBwYXJlbnRFeGVjdXRpb25JZDogZXhlY3V0aW9uSWQsXG4gICAgICBleGVjdXRpb25OYW1lOiBmb3JtYXRDaGlsZEV4ZWN1dGlvbk5hbWUoZXhlY3V0aW9uSWQsIGNvbW1hbmQuc2VxKSxcbiAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAuLi5jb21tYW5kLm9wdHMsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gY3JlYXRlRXZlbnQ8Q2hpbGRXb3JrZmxvd1NjaGVkdWxlZD4oXG4gICAgICB7XG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkNoaWxkV29ya2Zsb3dTY2hlZHVsZWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgIG5hbWU6IGNvbW1hbmQubmFtZSxcbiAgICAgICAgaW5wdXQ6IGNvbW1hbmQuaW5wdXQsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzY2hlZHVsZVNsZWVwKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG5cbiAgICBjb21tYW5kOiBTbGVlcEZvckNvbW1hbmQgfCBTbGVlcFVudGlsQ29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApOiBQcm9taXNlPFNsZWVwU2NoZWR1bGVkPiB7XG4gICAgLy8gVE9ETyB2YWxpZGF0ZVxuICAgIGNvbnN0IHVudGlsVGltZSA9IGlzU2xlZXBVbnRpbENvbW1hbmQoY29tbWFuZClcbiAgICAgID8gbmV3IERhdGUoY29tbWFuZC51bnRpbFRpbWUpXG4gICAgICA6IG5ldyBEYXRlKGJhc2VUaW1lLmdldFRpbWUoKSArIGNvbW1hbmQuZHVyYXRpb25TZWNvbmRzICogMTAwMCk7XG4gICAgY29uc3QgdW50aWxUaW1lSXNvID0gdW50aWxUaW1lLnRvSVNPU3RyaW5nKCk7XG5cbiAgICBhd2FpdCB0aGlzLnByb3BzLnRpbWVyQ2xpZW50LnNjaGVkdWxlRXZlbnQ8U2xlZXBDb21wbGV0ZWQ+KHtcbiAgICAgIGV2ZW50OiB7XG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLlNsZWVwQ29tcGxldGVkLFxuICAgICAgICBzZXE6IGNvbW1hbmQuc2VxLFxuICAgICAgfSxcbiAgICAgIHNjaGVkdWxlOiBTY2hlZHVsZS5hYnNvbHV0ZSh1bnRpbFRpbWVJc28pLFxuICAgICAgZXhlY3V0aW9uSWQsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gY3JlYXRlRXZlbnQ8U2xlZXBTY2hlZHVsZWQ+KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5TbGVlcFNjaGVkdWxlZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgdW50aWxUaW1lOiB1bnRpbFRpbWUudG9JU09TdHJpbmcoKSxcbiAgICAgIH0sXG4gICAgICBiYXNlVGltZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGV4ZWN1dGVFeHBlY3RTaWduYWwoXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcblxuICAgIGNvbW1hbmQ6IEV4cGVjdFNpZ25hbENvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKTogUHJvbWlzZTxFeHBlY3RTaWduYWxTdGFydGVkPiB7XG4gICAgaWYgKGNvbW1hbmQudGltZW91dFNlY29uZHMpIHtcbiAgICAgIGF3YWl0IHRoaXMucHJvcHMudGltZXJDbGllbnQuc2NoZWR1bGVFdmVudDxFeHBlY3RTaWduYWxUaW1lZE91dD4oe1xuICAgICAgICBldmVudDoge1xuICAgICAgICAgIHNpZ25hbElkOiBjb21tYW5kLnNpZ25hbElkLFxuICAgICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuRXhwZWN0U2lnbmFsVGltZWRPdXQsXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVkdWxlOiBTY2hlZHVsZS5yZWxhdGl2ZShjb21tYW5kLnRpbWVvdXRTZWNvbmRzLCBiYXNlVGltZSksXG4gICAgICAgIGV4ZWN1dGlvbklkLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PEV4cGVjdFNpZ25hbFN0YXJ0ZWQ+KFxuICAgICAge1xuICAgICAgICBzaWduYWxJZDogY29tbWFuZC5zaWduYWxJZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuRXhwZWN0U2lnbmFsU3RhcnRlZCxcbiAgICAgICAgdGltZW91dFNlY29uZHM6IGNvbW1hbmQudGltZW91dFNlY29uZHMsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZW5kU2lnbmFsKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogU2VuZFNpZ25hbENvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKSB7XG4gICAgY29uc3QgY2hpbGRFeGVjdXRpb25JZCA9IGlzQ2hpbGRFeGVjdXRpb25UYXJnZXQoY29tbWFuZC50YXJnZXQpXG4gICAgICA/IGZvcm1hdEV4ZWN1dGlvbklkKFxuICAgICAgICAgIGNvbW1hbmQudGFyZ2V0LndvcmtmbG93TmFtZSxcbiAgICAgICAgICBmb3JtYXRDaGlsZEV4ZWN1dGlvbk5hbWUoZXhlY3V0aW9uSWQsIGNvbW1hbmQudGFyZ2V0LnNlcSlcbiAgICAgICAgKVxuICAgICAgOiBjb21tYW5kLnRhcmdldC5leGVjdXRpb25JZDtcblxuICAgIGF3YWl0IHRoaXMucHJvcHMud29ya2Zsb3dDbGllbnQuc2VuZFNpZ25hbCh7XG4gICAgICBzaWduYWw6IGNvbW1hbmQuc2lnbmFsSWQsXG4gICAgICBleGVjdXRpb246IGNoaWxkRXhlY3V0aW9uSWQsXG4gICAgICBpZDogYCR7ZXhlY3V0aW9uSWR9LyR7Y29tbWFuZC5zZXF9YCxcbiAgICAgIHBheWxvYWQ6IGNvbW1hbmQucGF5bG9hZCxcbiAgICB9KTtcblxuICAgIHJldHVybiBjcmVhdGVFdmVudDxTaWduYWxTZW50PihcbiAgICAgIHtcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuU2lnbmFsU2VudCxcbiAgICAgICAgZXhlY3V0aW9uSWQ6IGNoaWxkRXhlY3V0aW9uSWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgIHNpZ25hbElkOiBjb21tYW5kLnNpZ25hbElkLFxuICAgICAgICBwYXlsb2FkOiBjb21tYW5kLnBheWxvYWQsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzdGFydENvbmRpdGlvbihcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGNvbW1hbmQ6IFN0YXJ0Q29uZGl0aW9uQ29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApIHtcbiAgICBpZiAoY29tbWFuZC50aW1lb3V0U2Vjb25kcykge1xuICAgICAgYXdhaXQgdGhpcy5wcm9wcy50aW1lckNsaWVudC5zY2hlZHVsZUV2ZW50PENvbmRpdGlvblRpbWVkT3V0Pih7XG4gICAgICAgIGV2ZW50OiB7XG4gICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQ29uZGl0aW9uVGltZWRPdXQsXG4gICAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgfSxcbiAgICAgICAgZXhlY3V0aW9uSWQsXG4gICAgICAgIHNjaGVkdWxlOiBTY2hlZHVsZS5yZWxhdGl2ZShjb21tYW5kLnRpbWVvdXRTZWNvbmRzLCBiYXNlVGltZSksXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gY3JlYXRlRXZlbnQ8Q29uZGl0aW9uU3RhcnRlZD4oXG4gICAgICB7XG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkNvbmRpdGlvblN0YXJ0ZWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEhLFxuICAgICAgfSxcbiAgICAgIGJhc2VUaW1lXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgcHVibGlzaEV2ZW50cyhjb21tYW5kOiBQdWJsaXNoRXZlbnRzQ29tbWFuZCwgYmFzZVRpbWU6IERhdGUpIHtcbiAgICBhd2FpdCB0aGlzLnByb3BzLmV2ZW50Q2xpZW50LnB1Ymxpc2goLi4uY29tbWFuZC5ldmVudHMpO1xuICAgIHJldHVybiBjcmVhdGVFdmVudDxFdmVudHNQdWJsaXNoZWQ+KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5FdmVudHNQdWJsaXNoZWQsXG4gICAgICAgIGV2ZW50czogY29tbWFuZC5ldmVudHMsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEhLFxuICAgICAgfSxcbiAgICAgIGJhc2VUaW1lXG4gICAgKTtcbiAgfVxufVxuIl19

@@ -5,3 +5,3 @@ import { ScheduleActivityCommand } from "../../command.js";

import { WorkflowClient } from "../clients/workflow-client.js";
import { TimerClient } from "../index.js";
import { RuntimeServiceClient, TimerClient } from "../index.js";
import { Logger } from "../logger.js";

@@ -18,2 +18,3 @@ import type { EventClient } from "../index.js";

activityProvider: ActivityProvider;
serviceClient?: RuntimeServiceClient;
}

@@ -40,3 +41,3 @@ export interface ActivityWorkerRequest {

*/
export declare function createActivityWorker({ activityRuntimeClient, workflowClient, timerClient, metricsClient, logger, eventClient, activityProvider, }: CreateActivityWorkerProps): ActivityWorker;
export declare function createActivityWorker({ activityRuntimeClient, workflowClient, timerClient, metricsClient, logger, activityProvider, serviceClient, }: CreateActivityWorkerProps): ActivityWorker;
//# sourceMappingURL=activity-worker.d.ts.map

@@ -20,7 +20,7 @@ "use strict";

*/
function createActivityWorker({ activityRuntimeClient, workflowClient, timerClient, metricsClient, logger, eventClient, activityProvider, }) {
// make the workflow client available to all activity code
(0, global_js_1.registerWorkflowClient)(workflowClient);
// make the event client available to all activity code
(0, global_js_1.registerEventClient)(eventClient);
function createActivityWorker({ activityRuntimeClient, workflowClient, timerClient, metricsClient, logger, activityProvider, serviceClient, }) {
// make the service client available to all activity code
if (serviceClient) {
(0, global_js_1.registerServiceClient)(serviceClient);
}
return metricsClient.metricScope((metrics) => async (request, baseTime, getEndTime = () => new Date()) => {

@@ -130,2 +130,2 @@ logger.addPersistentLogAttributes({

exports.createActivityWorker = createActivityWorker;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktd29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvaGFuZGxlcnMvYWN0aXZpdHktd29ya2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFrRDtBQUVsRCxpRUFNa0M7QUFDbEMsK0NBS3lCO0FBQ3pCLDREQUEyRDtBQUkzRCwwQ0FBc0U7QUFFdEUsMERBQXlFO0FBQ3pFLGdEQUEwQztBQUMxQyxrREFBNEM7QUFHNUMsNkNBQXVEO0FBQ3ZELDJDQUE2QztBQStCN0M7Ozs7O0dBS0c7QUFDSCxTQUFnQixvQkFBb0IsQ0FBQyxFQUNuQyxxQkFBcUIsRUFDckIsY0FBYyxFQUNkLFdBQVcsRUFDWCxhQUFhLEVBQ2IsTUFBTSxFQUNOLFdBQVcsRUFDWCxnQkFBZ0IsR0FDVTtJQUMxQiwwREFBMEQ7SUFDMUQsSUFBQSxrQ0FBc0IsRUFBQyxjQUFjLENBQUMsQ0FBQztJQUN2Qyx1REFBdUQ7SUFDdkQsSUFBQSwrQkFBbUIsRUFBQyxXQUFXLENBQUMsQ0FBQztJQUVqQyxPQUFPLGFBQWEsQ0FBQyxXQUFXLENBQzlCLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDVixLQUFLLEVBQ0gsT0FBOEIsRUFDOUIsUUFBYyxFQUNkLFVBQVUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLElBQUksRUFBRSxFQUM3QixFQUFFO1FBQ0YsTUFBTSxDQUFDLDBCQUEwQixDQUFDO1lBQ2hDLFlBQVksRUFBRSxPQUFPLENBQUMsWUFBWTtZQUNsQyxXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVc7U0FDakMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxjQUFjLEdBQUcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsa0JBQWtCLE9BQU8sQ0FBQyxXQUFXLGFBQWEsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQy9HLE9BQU8sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsT0FBTyxD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Q0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ2QsY0FBSSxDQUFDLEtBQUssQ0FDWCxDQUFDO1lBQ0YsT0FBTyxDQUFDLFNBQVMsQ0FDZiw4QkFBZSxDQUFDLGlCQUFpQixFQUNqQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNkLGNBQUksQ0FBQyxLQUFLLENBQ1gsQ0FBQztZQUNGLDhGQUE4RjtZQUM5RixPQUFPLENBQUMsU0FBUyxDQUFDLDhCQUFlLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFFRCxLQUFLLFVBQVUsY0FBYyxDQUMzQixLQUF5QyxFQUN6QyxRQUFnQjtZQUVoQixNQUFNLElBQUEsZ0JBQUssRUFBQyxPQUFPLEVBQUUsOEJBQWUsQ0FBQywwQkFBMEIsRUFBRSxHQUFHLEVBQUUsQ0FDcEUsY0FBYyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQzlELENBQUM7WUFFRiwwQkFBMEIsQ0FBQyxJQUFBLHFDQUFnQixFQUFDLEtBQUssQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7SUFDSCxDQUFDLENBQ0osQ0FBQztBQUNKLENBQUM7QUEvTEQsb0RBK0xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNBc3luY1Jlc3VsdCB9IGZyb20gXCIuLi8uLi9hY3Rpdml0eS5qc1wiO1xuaW1wb3J0IHsgU2NoZWR1bGVBY3Rpdml0eUNvbW1hbmQgfSBmcm9tIFwiLi4vLi4vY29tbWFuZC5qc1wiO1xuaW1wb3J0IHtcbiAgQWN0aXZpdHlDb21wbGV0ZWQsXG4gIEFjdGl2aXR5RmFpbGVkLFxuICBjcmVhdGVFdmVudCxcbiAgaXNXb3JrZmxvd0ZhaWxlZCxcbiAgV29ya2Zsb3dFdmVudFR5cGUsXG59IGZyb20gXCIuLi8uLi93b3JrZmxvdy1ldmVudHMuanNcIjtcbmltcG9ydCB7XG4gIGNsZWFyQWN0aXZpdHlDb250ZXh0LFxuICByZWdpc3RlckV2ZW50Q2xpZW50LFxuICByZWdpc3RlcldvcmtmbG93Q2xpZW50LFxuICBzZXRBY3Rpdml0eUNvbnRleHQsXG59IGZyb20gXCIuLi8uLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IGNyZWF0ZUFjdGl2aXR5VG9rZW4gfSBmcm9tIFwiLi4vYWN0aXZpdHktdG9rZW4uanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5UnVudGltZUNsaWVudCB9IGZyb20gXCIuLi9jbGllbnRzL2FjdGl2aXR5LXJ1bnRpbWUtY2xpZW50LmpzXCI7XG5pbXBvcnQgeyBNZXRyaWNzQ2xpZW50IH0gZnJvbSBcIi4uL2NsaWVudHMvbWV0cmljcy1jbGllbnQuanNcIjtcbmltcG9ydCB7IFdvcmtmbG93Q2xpZW50IH0gZnJvbSBcIi4uL2NsaWVudHMvd29ya2Zsb3ctY2xpZW50LmpzXCI7XG5pbXBvcnQgeyBTY2hlZHVsZSwgVGltZXJDbGllbnQsIFRpbWVyUmVxdWVzdFR5cGUgfSBmcm9tIFwiLi4vaW5kZXguanNcIjtcbmltcG9ydCB7IExvZ2dlciB9IGZyb20gXCIuLi9sb2dnZXIuanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5TWV0cmljcywgTWV0cmljc0NvbW1vbiB9IGZyb20gXCIuLi9tZXRyaWNzL2NvbnN0YW50cy5qc1wiO1xuaW1wb3J0IHsgVW5pdCB9IGZyb20gXCIuLi9tZXRyaWNzL3VuaXQuanNcIjtcbmltcG9ydCB7IHRpbWVkIH0gZnJvbSBcIi4uL21ldHJpY3MvdXRpbHMuanNcIjtcbmltcG9ydCB0eXBlIHsgRXZlbnRDbGllbnQgfSBmcm9tIFwiLi4vaW5kZXguanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5UHJvdmlkZXIgfSBmcm9tIFwiLi4vcHJvdmlkZXJzL2FjdGl2aXR5LXByb3ZpZGVyLmpzXCI7XG5pbXBvcnQgeyBBY3Rpdml0eU5vdEZvdW5kRXJyb3IgfSBmcm9tIFwiLi4vLi4vZXJyb3IuanNcIjtcbmltcG9ydCB7IGV4dGVuZHNFcnJvciB9IGZyb20gXCIuLi8uLi91dGlsLmpzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQWN0aXZpdHlXb3JrZXJQcm9wcyB7XG4gIGFjdGl2aXR5UnVudGltZUNsaWVudDogQWN0aXZpdHlSdW50aW1lQ2xpZW50O1xuICB3b3JrZmxvd0NsaWVudDogV29ya2Zsb3dDbGllbnQ7XG4gIHRpbWVyQ2xpZW50OiBUaW1lckNsaWVudDtcbiAgbWV0cmljc0NsaWVudDogTWV0cmljc0NsaWVudDtcbiAgbG9nZ2VyOiBMb2dnZXI7XG4gIGV2ZW50Q2xpZW50OiBFdmVudENsaWVudDtcbiAgYWN0aXZpdHlQcm92aWRlcjogQWN0aXZpdHlQcm92aWRlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpdml0eVdvcmtlclJlcXVlc3Qge1xuICBzY2hlZHVsZWRUaW1lOiBzdHJpbmc7XG4gIHdvcmtmbG93TmFtZTogc3RyaW5nO1xuICBleGVjdXRpb25JZDogc3RyaW5nO1xuICBjb21tYW5kOiBTY2hlZHVsZUFjdGl2aXR5Q29tbWFuZDtcbiAgcmV0cnk6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpdml0eVdvcmtlciB7XG4gIChcbiAgICByZXF1ZXN0OiBBY3Rpdml0eVdvcmtlclJlcXVlc3QsXG4gICAgYmFzZVRpbWU6IERhdGUsXG4gICAgLyoqXG4gICAgICogQWxsb3dzIGZvciBhIGNvbXB1dGVkIGVuZCB0aW1lLCBmb3IgY2FzZSBsaWtlIHRoZSB0ZXN0IGVudmlyb25tZW50IHdoZW4gdGhlIGVuZCB0aW1lIHNob3VsZCBiZSBjb250cm9sbGVkLlxuICAgICAqL1xuICAgIGdldEVuZFRpbWU/OiAoc3RhcnRUaW1lOiBEYXRlKSA9PiBEYXRlXG4gICk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIGdlbmVyaWMgZnVuY3Rpb24gZm9yIGhhbmRsaW5nIGFjdGl2aXR5IHdvcmtlciByZXF1ZXN0c1xuICogdGhhdCBjYW4gYmUgdXNlZCBpbiBydW50aW1lIGltcGxlbWVudGF0aW9ucy4gVGhpcyBpbXBsZW1lbnRhdGlvbiBpc1xuICogZGVjb3VwbGVkIGZyb20gYSBydW50aW1lJ3Mgc3BlY2lmaWNzIGJ5IHRoZSBjbGllbnRzLiBBIHJ1bnRpbWUgbXVzdFxuICogaW5qZWN0IGl0cyBvd24gY2xpZW50IGltcGxlbWVudGF0aW9ucyBkZXNpZ25lZCBmb3IgdGhhdCBwbGF0Zm9ybS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUFjdGl2aXR5V29ya2VyKHtcbiAgYWN0aXZpdHlSdW50aW1lQ2xpZW50LFxuICB3b3JrZmxvd0NsaWVudCxcbiAgdGltZXJDbGllbnQsXG4gIG1ldHJpY3NDbGllbnQsXG4gIGxvZ2dlcixcbiAgZXZlbnRDbGllbnQsXG4gIGFjdGl2aXR5UHJvdmlkZXIsXG59OiBDcmVhdGVBY3Rpdml0eVdvcmtlclByb3BzKTogQWN0aXZpdHlXb3JrZXIge1xuICAvLyBtYWtlIHRoZSB3b3JrZmxvdyBjbGllbnQgYXZhaWxhYmxlIHRvIGFsbCBhY3Rpdml0eSBjb2RlXG4gIHJlZ2lzdGVyV29ya2Zsb3dDbGllbnQod29ya2Zsb3dDbGllbnQpO1xuICAvLyBtYWtlIHRoZSBldmVudCBjbGllbnQgYXZhaWxhYmxlIHRvIGFsbCBhY3Rpdml0eSBjb2RlXG4gIHJlZ2lzdGVyRXZlbnRDbGllbnQoZXZlbnRDbGllbnQpO1xuXG4gIHJldHVybiBtZXRyaWNzQ2xpZW50Lm1ldHJpY1Njb3BlKFxuICAgIChtZXRyaWNzKSA9PlxuICAgICAgYXN5bmMgKFxuICAgICAgICByZXF1ZXN0OiBBY3Rpdml0eVdvcmtlclJlcXVlc3QsXG4gICAgICAgIGJhc2VUaW1lOiBEYXRlLFxuICAgICAgICBnZXRFbmRUaW1lID0gKCkgPT4gbmV3IERhdGUoKVxuICAgICAgKSA9PiB7XG4gICAgICAgIGxvZ2dlci5hZGRQZXJzaXN0ZW50TG9nQXR0cmlidXRlcyh7XG4gICAgICAgICAgd29ya2Zsb3dOYW1lOiByZXF1ZXN0LndvcmtmbG93TmFtZSxcbiAgICAgICAgICBleGVjdXRpb25JZDogcmVxdWVzdC5leGVjdXRpb25JZCxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGFjdGl2aXR5SGFuZGxlID0gYCR7cmVxdWVzdC5jb21tYW5kLnNlcX0gZm9yIGV4ZWN1dGlvbiAke3JlcXVlc3QuZXhlY3V0aW9uSWR9IG9uIHJldHJ5ICR7cmVxdWVzdC5yZXRyeX1gO1xuICAgICAgICBtZXRyaWNzLnJlc2V0RGltZW5zaW9ucyhmYWxzZSk7XG4gICAgICAgIG1ldHJpY3Muc2V0TmFtZXNwYWNlKE1ldHJpY3NDb21tb24uRXZlbnR1YWxOYW1lc3BhY2UpO1xuICAgICAgICBtZXRyaWNzLnB1dERpbWVuc2lvbnMoe1xuICAgICAgICAgIEFjdGl2aXR5TmFtZTogcmVxdWVzdC5jb21tYW5kLm5hbWUsXG4gICAgICAgICAgV29ya2Zsb3dOYW1lOiByZXF1ZXN0LndvcmtmbG93TmFtZSxcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIHRoZSB0aW1lIGZyb20gdGhlIHdvcmtmbG93IGVtaXR0aW5nIHRoZSBhY3Rpdml0eSBzY2hlZHVsZWQgY29tbWFuZFxuICAgICAgICAvLyB0byB0aGUgcmVxdWVzdCBiZWluZyBzZWVuLlxuICAgICAgICBjb25zdCBzdGFydCA9IGJhc2VUaW1lO1xuICAgICAgICBjb25zdCByZWNvcmRBZ2UgPVxuICAgICAgICAgIHN0YXJ0LmdldFRpbWUoKSAtIG5ldyBEYXRlKHJlcXVlc3Quc2NoZWR1bGVkVGltZSkuZ2V0VGltZSgpO1xuICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhcbiAgICAgICAgICBBY3Rpdml0eU1ldHJpY3MuQWN0aXZpdHlSZXF1ZXN0QWdlLFxuICAgICAgICAgIHJlY29yZEFnZSxcbiAgICAgICAgICBVbml0Lk1pbGxpc2Vjb25kc1xuICAgICAgICApO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgIShhd2FpdCB0aW1lZChtZXRyaWNzLCBBY3Rpdml0eU1ldHJpY3MuQ2xhaW1EdXJhdGlvbiwgKCkgPT5cbiAgICAgICAgICAgIGFjdGl2aXR5UnVudGltZUNsaWVudC5jbGFpbUFjdGl2aXR5KFxuICAgICAgICAgICAgICByZXF1ZXN0LmV4ZWN1dGlvbklkLFxuICAgICAgICAgICAgICByZXF1ZXN0LmNvbW1hbmQuc2VxLFxuICAgICAgICAgICAgICByZXF1ZXN0LnJldHJ5XG4gICAgICAgICAgICApXG4gICAgICAgICAgKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoQWN0aXZpdHlNZXRyaWNzLkNsYWltUmVqZWN0ZWQsIDEsIFVuaXQuQ291bnQpO1xuICAgICAgICAgIGxvZ2dlci5pbmZvKGBBY3Rpdml0eSAke2FjdGl2aXR5SGFuZGxlfSBhbHJlYWR5IGNsYWltZWQuYCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChyZXF1ZXN0LmNvbW1hbmQuaGVhcnRiZWF0U2Vjb25kcykge1xuICAgICAgICAgIGF3YWl0IHRpbWVyQ2xpZW50LnN0YXJ0VGltZXIoe1xuICAgICAgICAgICAgYWN0aXZpdHlTZXE6IHJlcXVlc3QuY29tbWFuZC5zZXEsXG4gICAgICAgICAgICB0eXBlOiBUaW1lclJlcXVlc3RUeXBlLkFjdGl2aXR5SGVhcnRiZWF0TW9uaXRvcixcbiAgICAgICAgICAgIGV4ZWN1dGlvbklkOiByZXF1ZXN0LmV4ZWN1dGlvbklkLFxuICAgICAgICAgICAgaGVhcnRiZWF0U2Vjb25kczogcmVxdWVzdC5jb21tYW5kLmhlYXJ0YmVhdFNlY29uZHMsXG4gICAgICAgICAgICBzY2hlZHVsZTogU2NoZWR1bGUucmVsYXRpdmUocmVxdWVzdC5jb21tYW5kLmhlYXJ0YmVhdFNlY29uZHMpLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHNldEFjdGl2aXR5Q29udGV4dCh7XG4gICAgICAgICAgYWN0aXZpdHlUb2tlbjogY3JlYXRlQWN0aXZpdHlUb2tlbihcbiAgICAgICAgICAgIHJlcXVlc3QuZXhlY3V0aW9uSWQsXG4gICAgICAgICAgICByZXF1ZXN0LmNvbW1hbmQuc2VxXG4gICAgICAgICAgKSxcbiAgICAgICAgICBleGVjdXRpb25JZDogcmVxdWVzdC5leGVjdXRpb25JZCxcbiAgICAgICAgICBzY2hlZHVsZWRUaW1lOiByZXF1ZXN0LnNjaGVkdWxlZFRpbWUsXG4gICAgICAgICAgd29ya2Zsb3dOYW1lOiByZXF1ZXN0LndvcmtmbG93TmFtZSxcbiAgICAgICAgfSk7XG4gICAgICAgIG1ldHJpY3MucHV0TWV0cmljKEFjdGl2aXR5TWV0cmljcy5DbGFpbVJlamVjdGVkLCAwLCBVbml0LkNvdW50KTtcblxuICAgICAgICBsb2dnZXIuaW5mbyhgUHJvY2Vzc2luZyAke2FjdGl2aXR5SGFuZGxlfS5gKTtcblxuICAgICAgICBjb25zdCBhY3Rpdml0eSA9IGFjdGl2aXR5UHJvdmlkZXIuZ2V0QWN0aXZpdHlIYW5kbGVyKFxuICAgICAgICAgIHJlcXVlc3QuY29tbWFuZC5uYW1lXG4gICAgICAgICk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgaWYgKCFhY3Rpdml0eSkge1xuICAgICAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoQWN0aXZpdHlNZXRyaWNzLk5vdEZvdW5kRXJyb3IsIDEsIFVuaXQuQ291bnQpO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEFjdGl2aXR5Tm90Rm91bmRFcnJvcihcbiAgICAgICAgICAgICAgcmVxdWVzdC5jb21tYW5kLm5hbWUsXG4gICAgICAgICAgICAgIGFjdGl2aXR5UHJvdmlkZXIuZ2V0QWN0aXZpdHlJZHMoKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aW1lZChcbiAgICAgICAgICAgIG1ldHJpY3MsXG4gICAgICAgICAgICBBY3Rpdml0eU1ldHJpY3MuT3BlcmF0aW9uRHVyYXRpb24sXG4gICAgICAgICAgICAoKSA9PiBhY3Rpdml0eSguLi5yZXF1ZXN0LmNvbW1hbmQuYXJncylcbiAgICAgICAgICApO1xuICAgICAgICAgIGlmIChpc0FzeW5jUmVzdWx0KHJlc3VsdCkpIHtcbiAgICAgICAgICAgIG1ldHJpY3Muc2V0UHJvcGVydHkoQWN0aXZpdHlNZXRyaWNzLkhhc1Jlc3VsdCwgMCk7XG4gICAgICAgICAgICBtZXRyaWNzLnNldFByb3BlcnR5KEFjdGl2aXR5TWV0cmljcy5Bc3luY1Jlc3VsdCwgMSk7XG5cbiAgICAgICAgICAgIC8vIFRPRE86IFNlbmQgaGVhcnRiZWF0IG9uIHN5bmMgYWN0aXZpdHkgY29tcGxldGlvbi5cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUaGUgYWN0aXZpdHkgaGFzIGRlY2xhcmVkIHRoYXQgaXQgaXMgYXN5bmMsIG90aGVyIHRoYW4gbG9nZ2luZywgdGhlcmUgaXMgbm90aGluZyBsZWZ0IHRvIGRvIGhlcmUuXG4gICAgICAgICAgICAgKiBUaGUgYWN0aXZpdHkgc2hvdWxkIGNhbGwge0BsaW5rIFdvcmtmbG93Q2xpZW50LmNvbXBsZXRlQWN0aXZpdHl9IG9yIHtAbGluayBXb3JrZmxvd0NsaWVudC5mYWlsQWN0aXZpdHl9IHdoZW4gaXQgaXMgZG9uZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH0gZWxzZSBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICBtZXRyaWNzLnNldFByb3BlcnR5KEFjdGl2aXR5TWV0cmljcy5IYXNSZXN1bHQsIDEpO1xuICAgICAgICAgICAgbWV0cmljcy5zZXRQcm9wZXJ0eShBY3Rpdml0eU1ldHJpY3MuQXN5bmNSZXN1bHQsIDApO1xuICAgICAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoXG4gICAgICAgICAgICAgIEFjdGl2aXR5TWV0cmljcy5SZXN1bHRCeXRlcyxcbiAgICAgICAgICAgICAgSlNPTi5zdHJpbmdpZnkocmVzdWx0KS5sZW5ndGgsXG4gICAgICAgICAgICAgIFVuaXQuQnl0ZXNcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1ldHJpY3Muc2V0UHJvcGVydHkoQWN0aXZpdHlNZXRyaWNzLkhhc1Jlc3VsdCwgMCk7XG4gICAgICAgICAgICBtZXRyaWNzLnNldFByb3BlcnR5KEFjdGl2aXR5TWV0cmljcy5Bc3luY1Jlc3VsdCwgMCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbG9nZ2VyLmluZm8oXG4gICAgICAgICAgICBgQWN0aXZpdHkgJHthY3Rpdml0eUhhbmRsZX0gc3VjY2VlZGVkLCByZXBvcnRpbmcgYmFjayB0byBleGVjdXRpb24uYFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBjb25zdCBlbmRUaW1lID0gZ2V0RW5kVGltZShzdGFydCk7XG4gICAgICAgICAgY29uc3QgZXZlbnQgPSBjcmVhdGVFdmVudDxBY3Rpdml0eUNvbXBsZXRlZD4oXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkFjdGl2aXR5Q29tcGxldGVkLFxuICAgICAgICAgICAgICBzZXE6IHJlcXVlc3QuY29tbWFuZC5zZXEsXG4gICAgICAgICAgICAgIHJlc3VsdCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBlbmRUaW1lXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGF3YWl0IGZpbmlzaEFjdGl2aXR5KFxuICAgICAgICAgICAgZXZlbnQsXG4gICAgICAgICAgICByZWNvcmRBZ2UgKyAoZW5kVGltZS5nZXRUaW1lKCkgLSBzdGFydC5nZXRUaW1lKCkpXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgY29uc3QgW2Vycm9yLCBtZXNzYWdlXSA9IGV4dGVuZHNFcnJvcihlcnIpXG4gICAgICAgICAgICA/IFtlcnIubmFtZSwgZXJyLm1lc3NhZ2VdXG4gICAgICAgICAgICA6IFtcIkVycm9yXCIsIEpTT04uc3RyaW5naWZ5KGVycildO1xuXG4gICAgICAgICAgbG9nZ2VyLmluZm8oXG4gICAgICAgICAgICBgQWN0aXZpdHkgJHthY3Rpdml0eUhhbmRsZX0gZmFpbGVkLCByZXBvcnRpbmcgZmFpbHVyZSBiYWNrIHRvIGV4ZWN1dGlvbjogJHtlcnJvcn06ICR7bWVzc2FnZX1gXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGNvbnN0IGVuZFRpbWUgPSBnZXRFbmRUaW1lKHN0YXJ0KTtcbiAgICAgICAgICBjb25zdCBldmVudCA9IGNyZWF0ZUV2ZW50PEFjdGl2aXR5RmFpbGVkPihcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQWN0aXZpdHlGYWlsZWQsXG4gICAgICAgICAgICAgIHNlcTogcmVxdWVzdC5jb21tYW5kLnNlcSxcbiAgICAgICAgICAgICAgZXJyb3IsXG4gICAgICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZW5kVGltZVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBhd2FpdCBmaW5pc2hBY3Rpdml0eShcbiAgICAgICAgICAgIGV2ZW50LFxuICAgICAgICAgICAgcmVjb3JkQWdlICsgKGVuZFRpbWUuZ2V0VGltZSgpIC0gc3RhcnQuZ2V0VGltZSgpKVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgY2xlYXJBY3Rpdml0eUNvbnRleHQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGxvZ0FjdGl2aXR5Q29tcGxldGVNZXRyaWNzKGZhaWxlZDogYm9vbGVhbiwgZHVyYXRpb246IG51bWJlcikge1xuICAgICAgICAgIG1ldHJpY3MucHV0TWV0cmljKFxuICAgICAgICAgICAgQWN0aXZpdHlNZXRyaWNzLkFjdGl2aXR5RmFpbGVkLFxuICAgICAgICAgICAgZmFpbGVkID8gMSA6IDAsXG4gICAgICAgICAgICBVbml0LkNvdW50XG4gICAgICAgICAgKTtcbiAgICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhcbiAgICAgICAgICAgIEFjdGl2aXR5TWV0cmljcy5BY3Rpdml0eUNvbXBsZXRlZCxcbiAgICAgICAgICAgIGZhaWxlZCA/IDAgOiAxLFxuICAgICAgICAgICAgVW5pdC5Db3VudFxuICAgICAgICAgICk7XG4gICAgICAgICAgLy8gVGhlIHRvdGFsIHRpbWUgZnJvbSB0aGUgYWN0aXZpdHkgYmVpbmcgc2NoZWR1bGVkIHVudGlsIGl0J3MgcmVzdWx0IGlzIHNlbmQgdG8gdGhlIHdvcmtmbG93LlxuICAgICAgICAgIG1ldHJpY3MucHV0TWV0cmljKEFjdGl2aXR5TWV0cmljcy5Ub3RhbER1cmF0aW9uLCBkdXJhdGlvbik7XG4gICAgICAgIH1cblxuICAgICAgICBhc3luYyBmdW5jdGlvbiBmaW5pc2hBY3Rpdml0eShcbiAgICAgICAgICBldmVudDogQWN0aXZpdHlDb21wbGV0ZWQgfCBBY3Rpdml0eUZhaWxlZCxcbiAgICAgICAgICBkdXJhdGlvbjogbnVtYmVyXG4gICAgICAgICkge1xuICAgICAgICAgIGF3YWl0IHRpbWVkKG1ldHJpY3MsIEFjdGl2aXR5TWV0cmljcy5TdWJtaXRXb3JrZmxvd1Rhc2tEdXJhdGlvbiwgKCkgPT5cbiAgICAgICAgICAgIHdvcmtmbG93Q2xpZW50LnN1Ym1pdFdvcmtmbG93VGFzayhyZXF1ZXN0LmV4ZWN1dGlvbklkLCBldmVudClcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgbG9nQWN0aXZpdHlDb21wbGV0ZU1ldHJpY3MoaXNXb3JrZmxvd0ZhaWxlZChldmVudCksIGR1cmF0aW9uKTtcbiAgICAgICAgfVxuICAgICAgfVxuICApO1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktd29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvaGFuZGxlcnMvYWN0aXZpdHktd29ya2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFrRDtBQUVsRCxpRUFNa0M7QUFDbEMsK0NBSXlCO0FBQ3pCLDREQUEyRDtBQUkzRCwwQ0FLcUI7QUFFckIsMERBQXlFO0FBQ3pFLGdEQUEwQztBQUMxQyxrREFBNEM7QUFHNUMsNkNBQXVEO0FBQ3ZELDJDQUE2QztBQWdDN0M7Ozs7O0dBS0c7QUFDSCxTQUFnQixvQkFBb0IsQ0FBQyxFQUNuQyxxQkFBcUIsRUFDckIsY0FBYyxFQUNkLFdBQVcsRUFDWCxhQUFhLEVBQ2IsTUFBTSxFQUNOLGdCQUFnQixFQUNoQixhQUFhLEdBQ2E7SUFDMUIseURBQXlEO0lBQ3pELElBQUksYUFBYSxFQUFFO1FBQ2pCLElBQUEsaUNBQXFCLEVBQUMsYUFBYSxDQUFDLENBQUM7S0FDdEM7SUFFRCxPQUFPLGFBQWEsQ0FBQyxXQUFXLENBQzlCLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDVixLQUFLLEVBQ0gsT0FBOEIsRUFDOUIsUUFBYyxFQUNkLFVBQVUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLElBQUksRUFBRSxFQUM3QixFQUFFO1FBQ0YsTUFBTSxDQUFDLDBCQUEwQixDQUFDO1lBQ2hDLFlBQVksRUFBRSxPQUFPLENBQUMsWUFBWTtZQUNsQyxXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVc7U0FDakMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxjQUFjLEdBQUcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsa0JBQWtCLE9BQU8sQ0FBQyxXQUFXLGFBQWEsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQy9HLE9BQU8sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsT0FBTyxDQUFDLFlBQVksQ0FBQyw0QkFBYSxDQUFD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LEVBQ2QsY0FBSSxDQUFDLEtBQUssQ0FDWCxDQUFDO1lBQ0YsT0FBTyxDQUFDLFNBQVMsQ0FDZiw4QkFBZSxDQUFDLGlCQUFpQixFQUNqQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNkLGNBQUksQ0FBQyxLQUFLLENBQ1gsQ0FBQztZQUNGLDhGQUE4RjtZQUM5RixPQUFPLENBQUMsU0FBUyxDQUFDLDhCQUFlLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFFRCxLQUFLLFVBQVUsY0FBYyxDQUMzQixLQUF5QyxFQUN6QyxRQUFnQjtZQUVoQixNQUFNLElBQUEsZ0JBQUssRUFBQyxPQUFPLEVBQUUsOEJBQWUsQ0FBQywwQkFBMEIsRUFBRSxHQUFHLEVBQUUsQ0FDcEUsY0FBYyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQzlELENBQUM7WUFFRiwwQkFBMEIsQ0FBQyxJQUFBLHFDQUFnQixFQUFDLEtBQUssQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7SUFDSCxDQUFDLENBQ0osQ0FBQztBQUNKLENBQUM7QUEvTEQsb0RBK0xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNBc3luY1Jlc3VsdCB9IGZyb20gXCIuLi8uLi9hY3Rpdml0eS5qc1wiO1xuaW1wb3J0IHsgU2NoZWR1bGVBY3Rpdml0eUNvbW1hbmQgfSBmcm9tIFwiLi4vLi4vY29tbWFuZC5qc1wiO1xuaW1wb3J0IHtcbiAgQWN0aXZpdHlDb21wbGV0ZWQsXG4gIEFjdGl2aXR5RmFpbGVkLFxuICBjcmVhdGVFdmVudCxcbiAgaXNXb3JrZmxvd0ZhaWxlZCxcbiAgV29ya2Zsb3dFdmVudFR5cGUsXG59IGZyb20gXCIuLi8uLi93b3JrZmxvdy1ldmVudHMuanNcIjtcbmltcG9ydCB7XG4gIGNsZWFyQWN0aXZpdHlDb250ZXh0LFxuICByZWdpc3RlclNlcnZpY2VDbGllbnQsXG4gIHNldEFjdGl2aXR5Q29udGV4dCxcbn0gZnJvbSBcIi4uLy4uL2dsb2JhbC5qc1wiO1xuaW1wb3J0IHsgY3JlYXRlQWN0aXZpdHlUb2tlbiB9IGZyb20gXCIuLi9hY3Rpdml0eS10b2tlbi5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlSdW50aW1lQ2xpZW50IH0gZnJvbSBcIi4uL2NsaWVudHMvYWN0aXZpdHktcnVudGltZS1jbGllbnQuanNcIjtcbmltcG9ydCB7IE1ldHJpY3NDbGllbnQgfSBmcm9tIFwiLi4vY2xpZW50cy9tZXRyaWNzLWNsaWVudC5qc1wiO1xuaW1wb3J0IHsgV29ya2Zsb3dDbGllbnQgfSBmcm9tIFwiLi4vY2xpZW50cy93b3JrZmxvdy1jbGllbnQuanNcIjtcbmltcG9ydCB7XG4gIFJ1bnRpbWVTZXJ2aWNlQ2xpZW50LFxuICBTY2hlZHVsZSxcbiAgVGltZXJDbGllbnQsXG4gIFRpbWVyUmVxdWVzdFR5cGUsXG59IGZyb20gXCIuLi9pbmRleC5qc1wiO1xuaW1wb3J0IHsgTG9nZ2VyIH0gZnJvbSBcIi4uL2xvZ2dlci5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlNZXRyaWNzLCBNZXRyaWNzQ29tbW9uIH0gZnJvbSBcIi4uL21ldHJpY3MvY29uc3RhbnRzLmpzXCI7XG5pbXBvcnQgeyBVbml0IH0gZnJvbSBcIi4uL21ldHJpY3MvdW5pdC5qc1wiO1xuaW1wb3J0IHsgdGltZWQgfSBmcm9tIFwiLi4vbWV0cmljcy91dGlscy5qc1wiO1xuaW1wb3J0IHR5cGUgeyBFdmVudENsaWVudCB9IGZyb20gXCIuLi9pbmRleC5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlQcm92aWRlciB9IGZyb20gXCIuLi9wcm92aWRlcnMvYWN0aXZpdHktcHJvdmlkZXIuanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5Tm90Rm91bmRFcnJvciB9IGZyb20gXCIuLi8uLi9lcnJvci5qc1wiO1xuaW1wb3J0IHsgZXh0ZW5kc0Vycm9yIH0gZnJvbSBcIi4uLy4uL3V0aWwuanNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVBY3Rpdml0eVdvcmtlclByb3BzIHtcbiAgYWN0aXZpdHlSdW50aW1lQ2xpZW50OiBBY3Rpdml0eVJ1bnRpbWVDbGllbnQ7XG4gIHdvcmtmbG93Q2xpZW50OiBXb3JrZmxvd0NsaWVudDtcbiAgdGltZXJDbGllbnQ6IFRpbWVyQ2xpZW50O1xuICBtZXRyaWNzQ2xpZW50OiBNZXRyaWNzQ2xpZW50O1xuICBsb2dnZXI6IExvZ2dlcjtcbiAgZXZlbnRDbGllbnQ6IEV2ZW50Q2xpZW50O1xuICBhY3Rpdml0eVByb3ZpZGVyOiBBY3Rpdml0eVByb3ZpZGVyO1xuICBzZXJ2aWNlQ2xpZW50PzogUnVudGltZVNlcnZpY2VDbGllbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aXZpdHlXb3JrZXJSZXF1ZXN0IHtcbiAgc2NoZWR1bGVkVGltZTogc3RyaW5nO1xuICB3b3JrZmxvd05hbWU6IHN0cmluZztcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgY29tbWFuZDogU2NoZWR1bGVBY3Rpdml0eUNvbW1hbmQ7XG4gIHJldHJ5OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aXZpdHlXb3JrZXIge1xuICAoXG4gICAgcmVxdWVzdDogQWN0aXZpdHlXb3JrZXJSZXF1ZXN0LFxuICAgIGJhc2VUaW1lOiBEYXRlLFxuICAgIC8qKlxuICAgICAqIEFsbG93cyBmb3IgYSBjb21wdXRlZCBlbmQgdGltZSwgZm9yIGNhc2UgbGlrZSB0aGUgdGVzdCBlbnZpcm9ubWVudCB3aGVuIHRoZSBlbmQgdGltZSBzaG91bGQgYmUgY29udHJvbGxlZC5cbiAgICAgKi9cbiAgICBnZXRFbmRUaW1lPzogKHN0YXJ0VGltZTogRGF0ZSkgPT4gRGF0ZVxuICApOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBnZW5lcmljIGZ1bmN0aW9uIGZvciBoYW5kbGluZyBhY3Rpdml0eSB3b3JrZXIgcmVxdWVzdHNcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW4gcnVudGltZSBpbXBsZW1lbnRhdGlvbnMuIFRoaXMgaW1wbGVtZW50YXRpb24gaXNcbiAqIGRlY291cGxlZCBmcm9tIGEgcnVudGltZSdzIHNwZWNpZmljcyBieSB0aGUgY2xpZW50cy4gQSBydW50aW1lIG11c3RcbiAqIGluamVjdCBpdHMgb3duIGNsaWVudCBpbXBsZW1lbnRhdGlvbnMgZGVzaWduZWQgZm9yIHRoYXQgcGxhdGZvcm0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBY3Rpdml0eVdvcmtlcih7XG4gIGFjdGl2aXR5UnVudGltZUNsaWVudCxcbiAgd29ya2Zsb3dDbGllbnQsXG4gIHRpbWVyQ2xpZW50LFxuICBtZXRyaWNzQ2xpZW50LFxuICBsb2dnZXIsXG4gIGFjdGl2aXR5UHJvdmlkZXIsXG4gIHNlcnZpY2VDbGllbnQsXG59OiBDcmVhdGVBY3Rpdml0eVdvcmtlclByb3BzKTogQWN0aXZpdHlXb3JrZXIge1xuICAvLyBtYWtlIHRoZSBzZXJ2aWNlIGNsaWVudCBhdmFpbGFibGUgdG8gYWxsIGFjdGl2aXR5IGNvZGVcbiAgaWYgKHNlcnZpY2VDbGllbnQpIHtcbiAgICByZWdpc3RlclNlcnZpY2VDbGllbnQoc2VydmljZUNsaWVudCk7XG4gIH1cblxuICByZXR1cm4gbWV0cmljc0NsaWVudC5tZXRyaWNTY29wZShcbiAgICAobWV0cmljcykgPT5cbiAgICAgIGFzeW5jIChcbiAgICAgICAgcmVxdWVzdDogQWN0aXZpdHlXb3JrZXJSZXF1ZXN0LFxuICAgICAgICBiYXNlVGltZTogRGF0ZSxcbiAgICAgICAgZ2V0RW5kVGltZSA9ICgpID0+IG5ldyBEYXRlKClcbiAgICAgICkgPT4ge1xuICAgICAgICBsb2dnZXIuYWRkUGVyc2lzdGVudExvZ0F0dHJpYnV0ZXMoe1xuICAgICAgICAgIHdvcmtmbG93TmFtZTogcmVxdWVzdC53b3JrZmxvd05hbWUsXG4gICAgICAgICAgZXhlY3V0aW9uSWQ6IHJlcXVlc3QuZXhlY3V0aW9uSWQsXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBhY3Rpdml0eUhhbmRsZSA9IGAke3JlcXVlc3QuY29tbWFuZC5zZXF9IGZvciBleGVjdXRpb24gJHtyZXF1ZXN0LmV4ZWN1dGlvbklkfSBvbiByZXRyeSAke3JlcXVlc3QucmV0cnl9YDtcbiAgICAgICAgbWV0cmljcy5yZXNldERpbWVuc2lvbnMoZmFsc2UpO1xuICAgICAgICBtZXRyaWNzLnNldE5hbWVzcGFjZShNZXRyaWNzQ29tbW9uLkV2ZW50dWFsTmFtZXNwYWNlKTtcbiAgICAgICAgbWV0cmljcy5wdXREaW1lbnNpb25zKHtcbiAgICAgICAgICBBY3Rpdml0eU5hbWU6IHJlcXVlc3QuY29tbWFuZC5uYW1lLFxuICAgICAgICAgIFdvcmtmbG93TmFtZTogcmVxdWVzdC53b3JrZmxvd05hbWUsXG4gICAgICAgIH0pO1xuICAgICAgICAvLyB0aGUgdGltZSBmcm9tIHRoZSB3b3JrZmxvdyBlbWl0dGluZyB0aGUgYWN0aXZpdHkgc2NoZWR1bGVkIGNvbW1hbmRcbiAgICAgICAgLy8gdG8gdGhlIHJlcXVlc3QgYmVpbmcgc2Vlbi5cbiAgICAgICAgY29uc3Qgc3RhcnQgPSBiYXNlVGltZTtcbiAgICAgICAgY29uc3QgcmVjb3JkQWdlID1cbiAgICAgICAgICBzdGFydC5nZXRUaW1lKCkgLSBuZXcgRGF0ZShyZXF1ZXN0LnNjaGVkdWxlZFRpbWUpLmdldFRpbWUoKTtcbiAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoXG4gICAgICAgICAgQWN0aXZpdHlNZXRyaWNzLkFjdGl2aXR5UmVxdWVzdEFnZSxcbiAgICAgICAgICByZWNvcmRBZ2UsXG4gICAgICAgICAgVW5pdC5NaWxsaXNlY29uZHNcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICEoYXdhaXQgdGltZWQobWV0cmljcywgQWN0aXZpdHlNZXRyaWNzLkNsYWltRHVyYXRpb24sICgpID0+XG4gICAgICAgICAgICBhY3Rpdml0eVJ1bnRpbWVDbGllbnQuY2xhaW1BY3Rpdml0eShcbiAgICAgICAgICAgICAgcmVxdWVzdC5leGVjdXRpb25JZCxcbiAgICAgICAgICAgICAgcmVxdWVzdC5jb21tYW5kLnNlcSxcbiAgICAgICAgICAgICAgcmVxdWVzdC5yZXRyeVxuICAgICAgICAgICAgKVxuICAgICAgICAgICkpXG4gICAgICAgICkge1xuICAgICAgICAgIG1ldHJpY3MucHV0TWV0cmljKEFjdGl2aXR5TWV0cmljcy5DbGFpbVJlamVjdGVkLCAxLCBVbml0LkNvdW50KTtcbiAgICAgICAgICBsb2dnZXIuaW5mbyhgQWN0aXZpdHkgJHthY3Rpdml0eUhhbmRsZX0gYWxyZWFkeSBjbGFpbWVkLmApO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAocmVxdWVzdC5jb21tYW5kLmhlYXJ0YmVhdFNlY29uZHMpIHtcbiAgICAgICAgICBhd2FpdCB0aW1lckNsaWVudC5zdGFydFRpbWVyKHtcbiAgICAgICAgICAgIGFjdGl2aXR5U2VxOiByZXF1ZXN0LmNvbW1hbmQuc2VxLFxuICAgICAgICAgICAgdHlwZTogVGltZXJSZXF1ZXN0VHlwZS5BY3Rpdml0eUhlYXJ0YmVhdE1vbml0b3IsXG4gICAgICAgICAgICBleGVjdXRpb25JZDogcmVxdWVzdC5leGVjdXRpb25JZCxcbiAgICAgICAgICAgIGhlYXJ0YmVhdFNlY29uZHM6IHJlcXVlc3QuY29tbWFuZC5oZWFydGJlYXRTZWNvbmRzLFxuICAgICAgICAgICAgc2NoZWR1bGU6IFNjaGVkdWxlLnJlbGF0aXZlKHJlcXVlc3QuY29tbWFuZC5oZWFydGJlYXRTZWNvbmRzKSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBzZXRBY3Rpdml0eUNvbnRleHQoe1xuICAgICAgICAgIGFjdGl2aXR5VG9rZW46IGNyZWF0ZUFjdGl2aXR5VG9rZW4oXG4gICAgICAgICAgICByZXF1ZXN0LmV4ZWN1dGlvbklkLFxuICAgICAgICAgICAgcmVxdWVzdC5jb21tYW5kLnNlcVxuICAgICAgICAgICksXG4gICAgICAgICAgZXhlY3V0aW9uSWQ6IHJlcXVlc3QuZXhlY3V0aW9uSWQsXG4gICAgICAgICAgc2NoZWR1bGVkVGltZTogcmVxdWVzdC5zY2hlZHVsZWRUaW1lLFxuICAgICAgICAgIHdvcmtmbG93TmFtZTogcmVxdWVzdC53b3JrZmxvd05hbWUsXG4gICAgICAgIH0pO1xuICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhBY3Rpdml0eU1ldHJpY3MuQ2xhaW1SZWplY3RlZCwgMCwgVW5pdC5Db3VudCk7XG5cbiAgICAgICAgbG9nZ2VyLmluZm8oYFByb2Nlc3NpbmcgJHthY3Rpdml0eUhhbmRsZX0uYCk7XG5cbiAgICAgICAgY29uc3QgYWN0aXZpdHkgPSBhY3Rpdml0eVByb3ZpZGVyLmdldEFjdGl2aXR5SGFuZGxlcihcbiAgICAgICAgICByZXF1ZXN0LmNvbW1hbmQubmFtZVxuICAgICAgICApO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGlmICghYWN0aXZpdHkpIHtcbiAgICAgICAgICAgIG1ldHJpY3MucHV0TWV0cmljKEFjdGl2aXR5TWV0cmljcy5Ob3RGb3VuZEVycm9yLCAxLCBVbml0LkNvdW50KTtcbiAgICAgICAgICAgIHRocm93IG5ldyBBY3Rpdml0eU5vdEZvdW5kRXJyb3IoXG4gICAgICAgICAgICAgIHJlcXVlc3QuY29tbWFuZC5uYW1lLFxuICAgICAgICAgICAgICBhY3Rpdml0eVByb3ZpZGVyLmdldEFjdGl2aXR5SWRzKClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGltZWQoXG4gICAgICAgICAgICBtZXRyaWNzLFxuICAgICAgICAgICAgQWN0aXZpdHlNZXRyaWNzLk9wZXJhdGlvbkR1cmF0aW9uLFxuICAgICAgICAgICAgKCkgPT4gYWN0aXZpdHkoLi4ucmVxdWVzdC5jb21tYW5kLmFyZ3MpXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoaXNBc3luY1Jlc3VsdChyZXN1bHQpKSB7XG4gICAgICAgICAgICBtZXRyaWNzLnNldFByb3BlcnR5KEFjdGl2aXR5TWV0cmljcy5IYXNSZXN1bHQsIDApO1xuICAgICAgICAgICAgbWV0cmljcy5zZXRQcm9wZXJ0eShBY3Rpdml0eU1ldHJpY3MuQXN5bmNSZXN1bHQsIDEpO1xuXG4gICAgICAgICAgICAvLyBUT0RPOiBTZW5kIGhlYXJ0YmVhdCBvbiBzeW5jIGFjdGl2aXR5IGNvbXBsZXRpb24uXG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogVGhlIGFjdGl2aXR5IGhhcyBkZWNsYXJlZCB0aGF0IGl0IGlzIGFzeW5jLCBvdGhlciB0aGFuIGxvZ2dpbmcsIHRoZXJlIGlzIG5vdGhpbmcgbGVmdCB0byBkbyBoZXJlLlxuICAgICAgICAgICAgICogVGhlIGFjdGl2aXR5IHNob3VsZCBjYWxsIHtAbGluayBXb3JrZmxvd0NsaWVudC5jb21wbGV0ZUFjdGl2aXR5fSBvciB7QGxpbmsgV29ya2Zsb3dDbGllbnQuZmFpbEFjdGl2aXR5fSB3aGVuIGl0IGlzIGRvbmUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdCkge1xuICAgICAgICAgICAgbWV0cmljcy5zZXRQcm9wZXJ0eShBY3Rpdml0eU1ldHJpY3MuSGFzUmVzdWx0LCAxKTtcbiAgICAgICAgICAgIG1ldHJpY3Muc2V0UHJvcGVydHkoQWN0aXZpdHlNZXRyaWNzLkFzeW5jUmVzdWx0LCAwKTtcbiAgICAgICAgICAgIG1ldHJpY3MucHV0TWV0cmljKFxuICAgICAgICAgICAgICBBY3Rpdml0eU1ldHJpY3MuUmVzdWx0Qnl0ZXMsXG4gICAgICAgICAgICAgIEpTT04uc3RyaW5naWZ5KHJlc3VsdCkubGVuZ3RoLFxuICAgICAgICAgICAgICBVbml0LkJ5dGVzXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBtZXRyaWNzLnNldFByb3BlcnR5KEFjdGl2aXR5TWV0cmljcy5IYXNSZXN1bHQsIDApO1xuICAgICAgICAgICAgbWV0cmljcy5zZXRQcm9wZXJ0eShBY3Rpdml0eU1ldHJpY3MuQXN5bmNSZXN1bHQsIDApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxvZ2dlci5pbmZvKFxuICAgICAgICAgICAgYEFjdGl2aXR5ICR7YWN0aXZpdHlIYW5kbGV9IHN1Y2NlZWRlZCwgcmVwb3J0aW5nIGJhY2sgdG8gZXhlY3V0aW9uLmBcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgY29uc3QgZW5kVGltZSA9IGdldEVuZFRpbWUoc3RhcnQpO1xuICAgICAgICAgIGNvbnN0IGV2ZW50ID0gY3JlYXRlRXZlbnQ8QWN0aXZpdHlDb21wbGV0ZWQ+KFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5BY3Rpdml0eUNvbXBsZXRlZCxcbiAgICAgICAgICAgICAgc2VxOiByZXF1ZXN0LmNvbW1hbmQuc2VxLFxuICAgICAgICAgICAgICByZXN1bHQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZW5kVGltZVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBhd2FpdCBmaW5pc2hBY3Rpdml0eShcbiAgICAgICAgICAgIGV2ZW50LFxuICAgICAgICAgICAgcmVjb3JkQWdlICsgKGVuZFRpbWUuZ2V0VGltZSgpIC0gc3RhcnQuZ2V0VGltZSgpKVxuICAgICAgICAgICk7XG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgIGNvbnN0IFtlcnJvciwgbWVzc2FnZV0gPSBleHRlbmRzRXJyb3IoZXJyKVxuICAgICAgICAgICAgPyBbZXJyLm5hbWUsIGVyci5tZXNzYWdlXVxuICAgICAgICAgICAgOiBbXCJFcnJvclwiLCBKU09OLnN0cmluZ2lmeShlcnIpXTtcblxuICAgICAgICAgIGxvZ2dlci5pbmZvKFxuICAgICAgICAgICAgYEFjdGl2aXR5ICR7YWN0aXZpdHlIYW5kbGV9IGZhaWxlZCwgcmVwb3J0aW5nIGZhaWx1cmUgYmFjayB0byBleGVjdXRpb246ICR7ZXJyb3J9OiAke21lc3NhZ2V9YFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBjb25zdCBlbmRUaW1lID0gZ2V0RW5kVGltZShzdGFydCk7XG4gICAgICAgICAgY29uc3QgZXZlbnQgPSBjcmVhdGVFdmVudDxBY3Rpdml0eUZhaWxlZD4oXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkFjdGl2aXR5RmFpbGVkLFxuICAgICAgICAgICAgICBzZXE6IHJlcXVlc3QuY29tbWFuZC5zZXEsXG4gICAgICAgICAgICAgIGVycm9yLFxuICAgICAgICAgICAgICBtZXNzYWdlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVuZFRpbWVcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgYXdhaXQgZmluaXNoQWN0aXZpdHkoXG4gICAgICAgICAgICBldmVudCxcbiAgICAgICAgICAgIHJlY29yZEFnZSArIChlbmRUaW1lLmdldFRpbWUoKSAtIHN0YXJ0LmdldFRpbWUoKSlcbiAgICAgICAgICApO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgIGNsZWFyQWN0aXZpdHlDb250ZXh0KCk7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBsb2dBY3Rpdml0eUNvbXBsZXRlTWV0cmljcyhmYWlsZWQ6IGJvb2xlYW4sIGR1cmF0aW9uOiBudW1iZXIpIHtcbiAgICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhcbiAgICAgICAgICAgIEFjdGl2aXR5TWV0cmljcy5BY3Rpdml0eUZhaWxlZCxcbiAgICAgICAgICAgIGZhaWxlZCA/IDEgOiAwLFxuICAgICAgICAgICAgVW5pdC5Db3VudFxuICAgICAgICAgICk7XG4gICAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoXG4gICAgICAgICAgICBBY3Rpdml0eU1ldHJpY3MuQWN0aXZpdHlDb21wbGV0ZWQsXG4gICAgICAgICAgICBmYWlsZWQgPyAwIDogMSxcbiAgICAgICAgICAgIFVuaXQuQ291bnRcbiAgICAgICAgICApO1xuICAgICAgICAgIC8vIFRoZSB0b3RhbCB0aW1lIGZyb20gdGhlIGFjdGl2aXR5IGJlaW5nIHNjaGVkdWxlZCB1bnRpbCBpdCdzIHJlc3VsdCBpcyBzZW5kIHRvIHRoZSB3b3JrZmxvdy5cbiAgICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhBY3Rpdml0eU1ldHJpY3MuVG90YWxEdXJhdGlvbiwgZHVyYXRpb24pO1xuICAgICAgICB9XG5cbiAgICAgICAgYXN5bmMgZnVuY3Rpb24gZmluaXNoQWN0aXZpdHkoXG4gICAgICAgICAgZXZlbnQ6IEFjdGl2aXR5Q29tcGxldGVkIHwgQWN0aXZpdHlGYWlsZWQsXG4gICAgICAgICAgZHVyYXRpb246IG51bWJlclxuICAgICAgICApIHtcbiAgICAgICAgICBhd2FpdCB0aW1lZChtZXRyaWNzLCBBY3Rpdml0eU1ldHJpY3MuU3VibWl0V29ya2Zsb3dUYXNrRHVyYXRpb24sICgpID0+XG4gICAgICAgICAgICB3b3JrZmxvd0NsaWVudC5zdWJtaXRXb3JrZmxvd1Rhc2socmVxdWVzdC5leGVjdXRpb25JZCwgZXZlbnQpXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGxvZ0FjdGl2aXR5Q29tcGxldGVNZXRyaWNzKGlzV29ya2Zsb3dGYWlsZWQoZXZlbnQpLCBkdXJhdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgKTtcbn1cbiJdfQ==

@@ -1,6 +0,4 @@

import type { WorkflowClient } from "../clients/workflow-client.js";
import type { EventClient } from "../index.js";
import { EventualServiceClient } from "../../service-client.js";
export interface ApiHandlerDependencies {
workflowClient: WorkflowClient;
eventClient: EventClient;
serviceClient: EventualServiceClient;
}

@@ -13,3 +11,3 @@ /**

*/
export declare function createApiHandler({ workflowClient, eventClient, }: ApiHandlerDependencies): (request: Request) => Promise<Response>;
export declare function createApiHandler({ serviceClient }: ApiHandlerDependencies): (request: Request) => Promise<Response>;
//# sourceMappingURL=api-handler.d.ts.map

@@ -12,6 +12,5 @@ "use strict";

*/
function createApiHandler({ workflowClient, eventClient, }) {
// make the workflow client available to web hooks
(0, global_js_1.registerWorkflowClient)(workflowClient);
(0, global_js_1.registerEventClient)(eventClient);
function createApiHandler({ serviceClient }) {
// make the service client available to web hooks
(0, global_js_1.registerServiceClient)(serviceClient);
api_js_1.api.all("*", () => new Response("Not Found.", { status: 404 }));

@@ -37,2 +36,2 @@ /**

exports.createApiHandler = createApiHandler;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcnVudGltZS9oYW5kbGVycy9hcGktaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5Q0FBbUM7QUFDbkMsK0NBQThFO0FBUzlFOzs7OztHQUtHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQUMsRUFDL0IsY0FBYyxFQUNkLFdBQVcsR0FDWTtJQUN2QixrREFBa0Q7SUFDbEQsSUFBQSxrQ0FBc0IsRUFBQyxjQUFjLENBQUMsQ0FBQztJQUN2QyxJQUFBLCtCQUFtQixFQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRWpDLFlBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFaEU7Ozs7O09BS0c7SUFDSCxPQUFPLEtBQUssVUFBVSxjQUFjLENBQUMsT0FBZ0I7UUFDbkQsSUFBSTtZQUNGLE9BQU8sWUFBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM1QjtRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1osT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNuQixPQUFPLElBQUksUUFBUSxDQUFDLHVCQUF1QixFQUFFO2dCQUMzQyxNQUFNLEVBQUUsR0FBRzthQUNaLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQTFCRCw0Q0EwQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhcGkgfSBmcm9tIFwiLi4vLi4vYXBpLmpzXCI7XG5pbXBvcnQgeyByZWdpc3RlckV2ZW50Q2xpZW50LCByZWdpc3RlcldvcmtmbG93Q2xpZW50IH0gZnJvbSBcIi4uLy4uL2dsb2JhbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBXb3JrZmxvd0NsaWVudCB9IGZyb20gXCIuLi9jbGllbnRzL3dvcmtmbG93LWNsaWVudC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBFdmVudENsaWVudCB9IGZyb20gXCIuLi9pbmRleC5qc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUhhbmRsZXJEZXBlbmRlbmNpZXMge1xuICB3b3JrZmxvd0NsaWVudDogV29ya2Zsb3dDbGllbnQ7XG4gIGV2ZW50Q2xpZW50OiBFdmVudENsaWVudDtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgZ2VuZXJpYyBmdW5jdGlvbiBmb3IgaGFuZGxpbmcgaW5ib3VuZCBBUEkgcmVxdWVzdHNcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW4gcnVudGltZSBpbXBsZW1lbnRhdGlvbnMuIFRoaXMgaW1wbGVtZW50YXRpb24gaXNcbiAqIGRlY291cGxlZCBmcm9tIGEgcnVudGltZSdzIHNwZWNpZmljcyBieSB0aGUgY2xpZW50cy4gQSBydW50aW1lIG11c3RcbiAqIGluamVjdCBpdHMgb3duIGNsaWVudCBpbXBsZW1lbnRhdGlvbnMgZGVzaWduZWQgZm9yIHRoYXQgcGxhdGZvcm0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBcGlIYW5kbGVyKHtcbiAgd29ya2Zsb3dDbGllbnQsXG4gIGV2ZW50Q2xpZW50LFxufTogQXBpSGFuZGxlckRlcGVuZGVuY2llcykge1xuICAvLyBtYWtlIHRoZSB3b3JrZmxvdyBjbGllbnQgYXZhaWxhYmxlIHRvIHdlYiBob29rc1xuICByZWdpc3RlcldvcmtmbG93Q2xpZW50KHdvcmtmbG93Q2xpZW50KTtcbiAgcmVnaXN0ZXJFdmVudENsaWVudChldmVudENsaWVudCk7XG5cbiAgYXBpLmFsbChcIipcIiwgKCkgPT4gbmV3IFJlc3BvbnNlKFwiTm90IEZvdW5kLlwiLCB7IHN0YXR1czogNDA0IH0pKTtcblxuICAvKipcbiAgICogSGFuZGxlIGluYm91bmQgd2ViaG9vayBBUEkgcmVxdWVzdHMuXG4gICAqXG4gICAqIEVhY2ggd2ViaG9vayByZWdpc3RlcnMgcm91dGVzIG9uIHRoZSBjZW50cmFsIHtAbGluayByb3V0ZXJ9IHdoaWNoXG4gICAqIHRoZW4gaGFuZGxlcyB0aGUgcmVxdWVzdC5cbiAgICovXG4gIHJldHVybiBhc3luYyBmdW5jdGlvbiBwcm9jZXNzUmVxdWVzdChyZXF1ZXN0OiBSZXF1ZXN0KTogUHJvbWlzZTxSZXNwb25zZT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXBpLmhhbmRsZShyZXF1ZXN0KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICAgIHJldHVybiBuZXcgUmVzcG9uc2UoXCJJbnRlcm5hbCBTZXJ2ZXIgRXJyb3JcIiwge1xuICAgICAgICBzdGF0dXM6IDUwMCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcnVudGltZS9oYW5kbGVycy9hcGktaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5Q0FBbUM7QUFDbkMsK0NBQXdEO0FBT3hEOzs7OztHQUtHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQUMsRUFBRSxhQUFhLEVBQTBCO0lBQ3hFLGlEQUFpRDtJQUNqRCxJQUFBLGlDQUFxQixFQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRXJDLFlBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFaEU7Ozs7O09BS0c7SUFDSCxPQUFPLEtBQUssVUFBVSxjQUFjLENBQUMsT0FBZ0I7UUFDbkQsSUFBSTtZQUNGLE9BQU8sWUFBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM1QjtRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1osT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNuQixPQUFPLElBQUksUUFBUSxDQUFDLHVCQUF1QixFQUFFO2dCQUMzQyxNQUFNLEVBQUUsR0FBRzthQUNaLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQXRCRCw0Q0FzQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhcGkgfSBmcm9tIFwiLi4vLi4vYXBpLmpzXCI7XG5pbXBvcnQgeyByZWdpc3RlclNlcnZpY2VDbGllbnQgfSBmcm9tIFwiLi4vLi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgeyBFdmVudHVhbFNlcnZpY2VDbGllbnQgfSBmcm9tIFwiLi4vLi4vc2VydmljZS1jbGllbnQuanNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBcGlIYW5kbGVyRGVwZW5kZW5jaWVzIHtcbiAgc2VydmljZUNsaWVudDogRXZlbnR1YWxTZXJ2aWNlQ2xpZW50O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBnZW5lcmljIGZ1bmN0aW9uIGZvciBoYW5kbGluZyBpbmJvdW5kIEFQSSByZXF1ZXN0c1xuICogdGhhdCBjYW4gYmUgdXNlZCBpbiBydW50aW1lIGltcGxlbWVudGF0aW9ucy4gVGhpcyBpbXBsZW1lbnRhdGlvbiBpc1xuICogZGVjb3VwbGVkIGZyb20gYSBydW50aW1lJ3Mgc3BlY2lmaWNzIGJ5IHRoZSBjbGllbnRzLiBBIHJ1bnRpbWUgbXVzdFxuICogaW5qZWN0IGl0cyBvd24gY2xpZW50IGltcGxlbWVudGF0aW9ucyBkZXNpZ25lZCBmb3IgdGhhdCBwbGF0Zm9ybS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUFwaUhhbmRsZXIoeyBzZXJ2aWNlQ2xpZW50IH06IEFwaUhhbmRsZXJEZXBlbmRlbmNpZXMpIHtcbiAgLy8gbWFrZSB0aGUgc2VydmljZSBjbGllbnQgYXZhaWxhYmxlIHRvIHdlYiBob29rc1xuICByZWdpc3RlclNlcnZpY2VDbGllbnQoc2VydmljZUNsaWVudCk7XG5cbiAgYXBpLmFsbChcIipcIiwgKCkgPT4gbmV3IFJlc3BvbnNlKFwiTm90IEZvdW5kLlwiLCB7IHN0YXR1czogNDA0IH0pKTtcblxuICAvKipcbiAgICogSGFuZGxlIGluYm91bmQgd2ViaG9vayBBUEkgcmVxdWVzdHMuXG4gICAqXG4gICAqIEVhY2ggd2ViaG9vayByZWdpc3RlcnMgcm91dGVzIG9uIHRoZSBjZW50cmFsIHtAbGluayByb3V0ZXJ9IHdoaWNoXG4gICAqIHRoZW4gaGFuZGxlcyB0aGUgcmVxdWVzdC5cbiAgICovXG4gIHJldHVybiBhc3luYyBmdW5jdGlvbiBwcm9jZXNzUmVxdWVzdChyZXF1ZXN0OiBSZXF1ZXN0KTogUHJvbWlzZTxSZXNwb25zZT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXBpLmhhbmRsZShyZXF1ZXN0KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICAgIHJldHVybiBuZXcgUmVzcG9uc2UoXCJJbnRlcm5hbCBTZXJ2ZXIgRXJyb3JcIiwge1xuICAgICAgICBzdGF0dXM6IDUwMCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==

@@ -1,5 +0,4 @@

import type { WorkflowClient } from "../clients/workflow-client.js";
import type { EventClient } from "../clients/event-client.js";
import type { EventEnvelope } from "../../event.js";
import { EventHandlerProvider } from "../providers/event-handler-provider.js";
import { EventualServiceClient } from "../../service-client.js";
/**

@@ -10,11 +9,7 @@ * The dependencies of {@link createEventHandlerWorker}.

/**
* The {@link WorkflowClient} for interacting with workflows contained
* The {@link EventualServiceClient} for interacting with workflows contained
* within the service boundary.
*/
workflowClient?: WorkflowClient;
serviceClient?: EventualServiceClient;
/**
* The {@link EventClient} for publishing events to the service's event bus.
*/
eventClient?: EventClient;
/**
* Returns event handlers

@@ -33,3 +28,3 @@ */

*/
export declare function createEventHandlerWorker({ workflowClient, eventClient, eventHandlerProvider, }: EventHandlerDependencies): EventHandlerWorker;
export declare function createEventHandlerWorker({ serviceClient, eventHandlerProvider, }: EventHandlerDependencies): EventHandlerWorker;
//# sourceMappingURL=event-handler.d.ts.map

@@ -11,10 +11,7 @@ "use strict";

*/
function createEventHandlerWorker({ workflowClient, eventClient, eventHandlerProvider, }) {
function createEventHandlerWorker({ serviceClient, eventHandlerProvider, }) {
// make the workflow client available to web hooks
if (workflowClient) {
(0, global_js_1.registerWorkflowClient)(workflowClient);
if (serviceClient) {
(0, global_js_1.registerServiceClient)(serviceClient);
}
if (eventClient) {
(0, global_js_1.registerEventClient)(eventClient);
}
return async function (events) {

@@ -27,2 +24,2 @@ await Promise.allSettled(events.map((event) => Promise.allSettled(eventHandlerProvider

exports.createEventHandlerWorker = createEventHandlerWorker;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ydW50aW1lL2hhbmRsZXJzL2V2ZW50LWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0NBQThFO0FBNkI5RTs7Ozs7R0FLRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLEVBQ3ZDLGNBQWMsRUFDZCxXQUFXLEVBQ1gsb0JBQW9CLEdBQ0s7SUFDekIsa0RBQWtEO0lBQ2xELElBQUksY0FBYyxFQUFFO1FBQ2xCLElBQUEsa0NBQXNCLEVBQUMsY0FBYyxDQUFDLENBQUM7S0FDeEM7SUFDRCxJQUFJLFdBQVcsRUFBRTtRQUNmLElBQUEsK0JBQW1CLEVBQUMsV0FBVyxDQUFDLENBQUM7S0FDbEM7SUFFRCxPQUFPLEtBQUssV0FBVyxNQUFNO1FBQzNCLE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FDdEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ25CLE9BQU8sQ0FBQyxVQUFVLENBQ2hCLG9CQUFvQjthQUNqQix3QkFBd0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO2FBQ3BDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUMxQyxDQUNGLENBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUM7QUF4QkQsNERBd0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVnaXN0ZXJXb3JrZmxvd0NsaWVudCwgcmVnaXN0ZXJFdmVudENsaWVudCB9IGZyb20gXCIuLi8uLi9nbG9iYWwuanNcIjtcbmltcG9ydCB0eXBlIHsgV29ya2Zsb3dDbGllbnQgfSBmcm9tIFwiLi4vY2xpZW50cy93b3JrZmxvdy1jbGllbnQuanNcIjtcbmltcG9ydCB0eXBlIHsgRXZlbnRDbGllbnQgfSBmcm9tIFwiLi4vY2xpZW50cy9ldmVudC1jbGllbnQuanNcIjtcbmltcG9ydCB0eXBlIHsgRXZlbnRFbnZlbG9wZSB9IGZyb20gXCIuLi8uLi9ldmVudC5qc1wiO1xuaW1wb3J0IHsgRXZlbnRIYW5kbGVyUHJvdmlkZXIgfSBmcm9tIFwiLi4vcHJvdmlkZXJzL2V2ZW50LWhhbmRsZXItcHJvdmlkZXIuanNcIjtcblxuLyoqXG4gKiBUaGUgZGVwZW5kZW5jaWVzIG9mIHtAbGluayBjcmVhdGVFdmVudEhhbmRsZXJXb3JrZXJ9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50SGFuZGxlckRlcGVuZGVuY2llcyB7XG4gIC8qKlxuICAgKiBUaGUge0BsaW5rIFdvcmtmbG93Q2xpZW50fSBmb3IgaW50ZXJhY3Rpbmcgd2l0aCB3b3JrZmxvd3MgY29udGFpbmVkXG4gICAqIHdpdGhpbiB0aGUgc2VydmljZSBib3VuZGFyeS5cbiAgICovXG4gIHdvcmtmbG93Q2xpZW50PzogV29ya2Zsb3dDbGllbnQ7XG4gIC8qKlxuICAgKiBUaGUge0BsaW5rIEV2ZW50Q2xpZW50fSBmb3IgcHVibGlzaGluZyBldmVudHMgdG8gdGhlIHNlcnZpY2UncyBldmVudCBidXMuXG4gICAqL1xuICBldmVudENsaWVudD86IEV2ZW50Q2xpZW50O1xuICAvKipcbiAgICogUmV0dXJucyBldmVudCBoYW5kbGVyc1xuICAgKi9cbiAgZXZlbnRIYW5kbGVyUHJvdmlkZXI6IEV2ZW50SGFuZGxlclByb3ZpZGVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50SGFuZGxlcldvcmtlciB7XG4gIChldmVudHM6IEV2ZW50RW52ZWxvcGVbXSk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIGdlbmVyaWMgZnVuY3Rpb24gZm9yIGhhbmRsaW5nIGluYm91bmQgZXZlbnQgcmVxdWVzdHNcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW4gcnVudGltZSBpbXBsZW1lbnRhdGlvbnMuIFRoaXMgaW1wbGVtZW50YXRpb24gaXNcbiAqIGRlY291cGxlZCBmcm9tIGEgcnVudGltZSdzIHNwZWNpZmljcyBieSB0aGUgY2xpZW50cy4gQSBydW50aW1lIG11c3RcbiAqIGluamVjdCBpdHMgb3duIGNsaWVudCBpbXBsZW1lbnRhdGlvbnMgZGVzaWduZWQgZm9yIHRoYXQgcGxhdGZvcm0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVFdmVudEhhbmRsZXJXb3JrZXIoe1xuICB3b3JrZmxvd0NsaWVudCxcbiAgZXZlbnRDbGllbnQsXG4gIGV2ZW50SGFuZGxlclByb3ZpZGVyLFxufTogRXZlbnRIYW5kbGVyRGVwZW5kZW5jaWVzKTogRXZlbnRIYW5kbGVyV29ya2VyIHtcbiAgLy8gbWFrZSB0aGUgd29ya2Zsb3cgY2xpZW50IGF2YWlsYWJsZSB0byB3ZWIgaG9va3NcbiAgaWYgKHdvcmtmbG93Q2xpZW50KSB7XG4gICAgcmVnaXN0ZXJXb3JrZmxvd0NsaWVudCh3b3JrZmxvd0NsaWVudCk7XG4gIH1cbiAgaWYgKGV2ZW50Q2xpZW50KSB7XG4gICAgcmVnaXN0ZXJFdmVudENsaWVudChldmVudENsaWVudCk7XG4gIH1cblxuICByZXR1cm4gYXN5bmMgZnVuY3Rpb24gKGV2ZW50cykge1xuICAgIGF3YWl0IFByb21pc2UuYWxsU2V0dGxlZChcbiAgICAgIGV2ZW50cy5tYXAoKGV2ZW50KSA9PlxuICAgICAgICBQcm9taXNlLmFsbFNldHRsZWQoXG4gICAgICAgICAgZXZlbnRIYW5kbGVyUHJvdmlkZXJcbiAgICAgICAgICAgIC5nZXRFdmVudEhhbmRsZXJzRm9yRXZlbnQoZXZlbnQubmFtZSlcbiAgICAgICAgICAgIC5tYXAoKGhhbmRsZXIpID0+IGhhbmRsZXIoZXZlbnQuZXZlbnQpKVxuICAgICAgICApXG4gICAgICApXG4gICAgKTtcbiAgfTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ydW50aW1lL2hhbmRsZXJzL2V2ZW50LWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0NBQXdEO0FBd0J4RDs7Ozs7R0FLRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLEVBQ3ZDLGFBQWEsRUFDYixvQkFBb0IsR0FDSztJQUN6QixrREFBa0Q7SUFDbEQsSUFBSSxhQUFhLEVBQUU7UUFDakIsSUFBQSxpQ0FBcUIsRUFBQyxhQUFhLENBQUMsQ0FBQztLQUN0QztJQUVELE9BQU8sS0FBSyxXQUFXLE1BQU07UUFDM0IsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUN0QixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDbkIsT0FBTyxDQUFDLFVBQVUsQ0FDaEIsb0JBQW9CO2FBQ2pCLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7YUFDcEMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQzFDLENBQ0YsQ0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQXBCRCw0REFvQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWdpc3RlclNlcnZpY2VDbGllbnQgfSBmcm9tIFwiLi4vLi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEV2ZW50RW52ZWxvcGUgfSBmcm9tIFwiLi4vLi4vZXZlbnQuanNcIjtcbmltcG9ydCB7IEV2ZW50SGFuZGxlclByb3ZpZGVyIH0gZnJvbSBcIi4uL3Byb3ZpZGVycy9ldmVudC1oYW5kbGVyLXByb3ZpZGVyLmpzXCI7XG5pbXBvcnQgeyBFdmVudHVhbFNlcnZpY2VDbGllbnQgfSBmcm9tIFwiLi4vLi4vc2VydmljZS1jbGllbnQuanNcIjtcblxuLyoqXG4gKiBUaGUgZGVwZW5kZW5jaWVzIG9mIHtAbGluayBjcmVhdGVFdmVudEhhbmRsZXJXb3JrZXJ9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50SGFuZGxlckRlcGVuZGVuY2llcyB7XG4gIC8qKlxuICAgKiBUaGUge0BsaW5rIEV2ZW50dWFsU2VydmljZUNsaWVudH0gZm9yIGludGVyYWN0aW5nIHdpdGggd29ya2Zsb3dzIGNvbnRhaW5lZFxuICAgKiB3aXRoaW4gdGhlIHNlcnZpY2UgYm91bmRhcnkuXG4gICAqL1xuICBzZXJ2aWNlQ2xpZW50PzogRXZlbnR1YWxTZXJ2aWNlQ2xpZW50O1xuICAvKipcbiAgICogUmV0dXJucyBldmVudCBoYW5kbGVyc1xuICAgKi9cbiAgZXZlbnRIYW5kbGVyUHJvdmlkZXI6IEV2ZW50SGFuZGxlclByb3ZpZGVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50SGFuZGxlcldvcmtlciB7XG4gIChldmVudHM6IEV2ZW50RW52ZWxvcGVbXSk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIGdlbmVyaWMgZnVuY3Rpb24gZm9yIGhhbmRsaW5nIGluYm91bmQgZXZlbnQgcmVxdWVzdHNcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW4gcnVudGltZSBpbXBsZW1lbnRhdGlvbnMuIFRoaXMgaW1wbGVtZW50YXRpb24gaXNcbiAqIGRlY291cGxlZCBmcm9tIGEgcnVudGltZSdzIHNwZWNpZmljcyBieSB0aGUgY2xpZW50cy4gQSBydW50aW1lIG11c3RcbiAqIGluamVjdCBpdHMgb3duIGNsaWVudCBpbXBsZW1lbnRhdGlvbnMgZGVzaWduZWQgZm9yIHRoYXQgcGxhdGZvcm0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVFdmVudEhhbmRsZXJXb3JrZXIoe1xuICBzZXJ2aWNlQ2xpZW50LFxuICBldmVudEhhbmRsZXJQcm92aWRlcixcbn06IEV2ZW50SGFuZGxlckRlcGVuZGVuY2llcyk6IEV2ZW50SGFuZGxlcldvcmtlciB7XG4gIC8vIG1ha2UgdGhlIHdvcmtmbG93IGNsaWVudCBhdmFpbGFibGUgdG8gd2ViIGhvb2tzXG4gIGlmIChzZXJ2aWNlQ2xpZW50KSB7XG4gICAgcmVnaXN0ZXJTZXJ2aWNlQ2xpZW50KHNlcnZpY2VDbGllbnQpO1xuICB9XG5cbiAgcmV0dXJuIGFzeW5jIGZ1bmN0aW9uIChldmVudHMpIHtcbiAgICBhd2FpdCBQcm9taXNlLmFsbFNldHRsZWQoXG4gICAgICBldmVudHMubWFwKChldmVudCkgPT5cbiAgICAgICAgUHJvbWlzZS5hbGxTZXR0bGVkKFxuICAgICAgICAgIGV2ZW50SGFuZGxlclByb3ZpZGVyXG4gICAgICAgICAgICAuZ2V0RXZlbnRIYW5kbGVyc0ZvckV2ZW50KGV2ZW50Lm5hbWUpXG4gICAgICAgICAgICAubWFwKChoYW5kbGVyKSA9PiBoYW5kbGVyKGV2ZW50LmV2ZW50KSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgICk7XG4gIH07XG59XG4iXX0=

@@ -119,4 +119,4 @@ "use strict";

else {
return (0, global_js_1.getWorkflowClient)().sendSignal({
executionId,
return (0, global_js_1.getServiceClient)().sendSignal({
execution: executionId,
signal,

@@ -142,2 +142,2 @@ id: id ?? (0, ulidx_1.ulid)(),

exports.isExecutionTarget = isExecutionTarget;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaWduYWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUFtRTtBQUNuRSwyRUFBaUY7QUFDakYseUVBQXVFO0FBQ3ZFLGlEQUEwRDtBQUMxRCwyQ0FBZ0Q7QUFDaEQsaUNBQTZCO0FBa0I3QixTQUFnQixNQUFNLENBQWlCLElBQVk7SUFDakQsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUMxQixDQUFDO0FBRkQsd0JBRUM7QUFFRCxNQUFhLE1BQU07SUFDakIsWUFBcUIsRUFBVTtRQUFWLE9BQUUsR0FBRixFQUFFLENBQVE7SUFBRyxDQUFDO0lBQ25DOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0E4Qkc7SUFDSSxFQUFFLENBQUMsT0FBdUM7UUFDL0MsT0FBTyxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0E2Qkc7SUFDSSxNQUFNLENBQUMsSUFBMEI7UUFDdEMsT0FBTyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSSxJQUFJLENBQ1QsV0FBbUIsRUFDbkIsR0FBRyxJQUE4QjtRQUVqQyxPQUFPLFVBQVUsQ0FBa0IsV0FBVyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ2pFLENBQUM7Q0FDRjtBQXZGRCx3QkF1RkM7QUF1Q0QsU0FBZ0IsWUFBWSxDQUMxQixNQUE0QixFQUM1QixJQUEwQjtJQUUxQixJQUFJLENBQUMsSUFBQSwrQkFBb0IsR0FBRSxFQUFFO1FBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQztLQUM3RDtJQUVELE9BQU8sSUFBQSw4Q0FBc0IsRUFDM0IsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQy9DLElBQUksRUFBRSxjQUFjLENBQ2QsQ0FBQztBQUNYLENBQUM7QUFaRCxvQ0FZQztBQXVDRCxTQUFnQixRQUFRLENBQ3RCLE1BQTRCLEVBQzVCLE9BQW1DO0lBRW5DLElBQUksQ0FBQyxJQUFBLCtCQUFvQixHQUFFLEVBQUU7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsT0FBTyxJQUFBLHdEQUErQixFQUNwQyxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFDL0MsT0FBYyxDQUNmLENBQUM7QUFDSixDQUFDO0FBWkQsNEJBWUM7QUErQkQsU0FBZ0IsVUFBVSxDQUN4QixXQUFtQixFQUNuQixNQUE0QixFQUM1QixPQUFhLEVBQ2IsRUFBVztJQUVYLElBQUksSUFBQSwrQkFBb0IsR0FBRSxFQUFFO1FBQzFCLE9BQU8sSUFBQSwwQ0FBb0IsRUFDekIsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxFQUNqRCxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFDL0MsT0FBTyxDQUNVLENBQUM7S0FDckI7U0FBTTtRQUNMLE9BQU8sSUFBQSw2QkFBaUIsR0FBRSxDQUFDLFVBQVUsQ0FBQztZQUNwQyxXQUFXO1lBQ1gsTUFBTTtZQUNOLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBQSxZQUFJLEdBQUU7WUFDaEIsT0FBTztTQUNSLENBQUMsQ0FBQztLQUNKO0FBQ0gsQ0FBQztBQXBCRCxnQ0FvQkM7QUFJRCxJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDMUIsaUVBQVMsQ0FBQTtJQUNULDJFQUFjLENBQUE7QUFDaEIsQ0FBQyxFQUhXLGdCQUFnQixHQUFoQix3QkFBZ0IsS0FBaEIsd0JBQWdCLFFBRzNCO0FBYUQsU0FBZ0Isc0JBQXNCLENBQ3BDLE1BQW9CO0lBRXBCLE9BQU8sTUFBTSxDQUFDLElBQUksS0FBSyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUM7QUFDekQsQ0FBQztBQUpELHdEQUlDO0FBRUQsU0FBZ0IsaUJBQWlCLENBQy9CLE1BQW9CO0lBRXBCLE9BQU8sTUFBTSxDQUFDLElBQUksS0FBSyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUM7QUFDcEQsQ0FBQztBQUpELDhDQUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlU2VuZFNpZ25hbENhbGwgfSBmcm9tIFwiLi9jYWxscy9zZW5kLXNpZ25hbC1jYWxsLmpzXCI7XG5pbXBvcnQgeyBjcmVhdGVSZWdpc3RlclNpZ25hbEhhbmRsZXJDYWxsIH0gZnJvbSBcIi4vY2FsbHMvc2lnbmFsLWhhbmRsZXItY2FsbC5qc1wiO1xuaW1wb3J0IHsgY3JlYXRlRXhwZWN0U2lnbmFsQ2FsbCB9IGZyb20gXCIuL2NhbGxzL2V4cGVjdC1zaWduYWwtY2FsbC5qc1wiO1xuaW1wb3J0IHsgaXNPcmNoZXN0cmF0b3JXb3JrZXIgfSBmcm9tIFwiLi9ydW50aW1lL2ZsYWdzLmpzXCI7XG5pbXBvcnQgeyBnZXRXb3JrZmxvd0NsaWVudCB9IGZyb20gXCIuL2dsb2JhbC5qc1wiO1xuaW1wb3J0IHsgdWxpZCB9IGZyb20gXCJ1bGlkeFwiO1xuXG4vKipcbiAqIEEgcmVmZXJlbmNlIHRvIGEgY3JlYXRlZCBzaWduYWwgaGFuZGxlci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTaWduYWxzSGFuZGxlciB7XG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGhhbmRsZXIgZnJvbSB0aGUgc2lnbmFsLlxuICAgKlxuICAgKiBBbnkgb25nb2luZyB7QGxpbmsgQ2hhaW59cyBzdGFydGVkIGJ5IHRoZSBoYW5kbGVyIHdpbGwgY29udGludWUgdG8gcnVuIHRvIGNvbXBsZXRpb24uXG4gICAqL1xuICBkaXNwb3NlOiAoKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgdHlwZSBTaWduYWxIYW5kbGVyRnVuY3Rpb248UGF5bG9hZCA9IHZvaWQ+ID0gKFxuICBwYXlsb2FkOiBQYXlsb2FkXG4pID0+IFByb21pc2U8dm9pZD4gfCB2b2lkO1xuXG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsPFBheWxvYWQgPSB2b2lkPihuYW1lOiBzdHJpbmcpOiBTaWduYWw8UGF5bG9hZD4ge1xuICByZXR1cm4gbmV3IFNpZ25hbChuYW1lKTtcbn1cblxuZXhwb3J0IGNsYXNzIFNpZ25hbDxQYXlsb2FkID0gdm9pZD4ge1xuICBjb25zdHJ1Y3RvcihyZWFkb25seSBpZDogc3RyaW5nKSB7fVxuICAvKipcbiAgICogTGlzdGVucyBmb3Igc2lnbmFscyBzZW50IHRvIHRoZSBjdXJyZW50IHdvcmtmbG93LlxuICAgKlxuICAgKiBXaGVuIHRoZSBzaWduYWwgaXMgcmVjZWl2ZWQsIHRoZSBoYW5kbGVyIGlzIGludm9rZWQuXG4gICAqIElmIHRoZSBoYW5kbGVyIHJldHVybiBhIHByb21pc2UsIHRoZSBoYW5kbGVyIGlzIGFkZGVkIGEge0BsaW5rIENoYWlufVxuICAgKiBhbmQgcHJvZ3Jlc3NlZCB1bnRpbCBjb21wbGV0aW9uLlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiBjb25zdCBteVNpZ25hbCA9IHNpZ25hbChcIk15U2lnbmFsXCIpO1xuICAgKlxuICAgKiB3b3JrZmxvdyhcIndmXCIsICgpID0+IHtcbiAgICogICAgbGV0IGRvbmUgPSBmYWxzZTtcbiAgICogICAgbXlTaWduYWwub24oYXN5bmMgKCkgPT4ge1xuICAgKiAgICAgICBhd2FpdCBzbGVlcEZvcigxMCk7XG4gICAqICAgICAgIGRvbmUgPSB0cnVlO1xuICAgKiAgICB9KTtcbiAgICpcbiAgICogICAgYXdhaXQgY29uZGl0aW9uKCgpID0+IGRvbmUpO1xuICAgKiB9KTtcbiAgICogYGBgXG4gICAqXG4gICAqIFRvIHJlbW92ZSB0aGUgaGFuZGxlciwgY2FsbCB0aGUgZGlzcG9zZSBtZXRob2QuXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IGhhbmRsZXIgPSBteVNpZ25hbC5vbigoKSA9PiB7fSk7XG4gICAqXG4gICAqIGF3YWl0IHNsZWVwRm9yKDEwKTtcbiAgICpcbiAgICogaGFuZGxlci5kaXNwb3NlKCk7XG4gICAqIGBgYFxuICAgKi9cbiAgcHVibGljIG9uKGhhbmRsZXI6IFNpZ25hbEhhbmRsZXJGdW5jdGlvbjxQYXlsb2FkPik6IFNpZ25hbHNIYW5kbGVyIHtcbiAgICByZXR1cm4gb25TaWduYWwodGhpcywgaGFuZGxlcik7XG4gIH1cblxuICAvKipcbiAgICogV2FpdHMgZm9yIGEgc2lnbmFsIHRvIGJlIHJlY2VpdmVkIGJ5IHRoZSB3b3JrZmxvdy5cbiAgICpcbiAgICogVGhlIGZpcnN0IHNpZ25hbCByZWNlaXZlZCB3aWxsIHJlc29sdmUgdGhlIFByb21pc2Ugd2l0aCB0aGUgcGF5bG9hZCBvZiB0aGUgcHJvbWlzZS5cbiAgICpcbiAgICogYGBgdHNcbiAgICogY29uc3QgbXlTaWduYWwgPSBzaWduYWw8c3RyaW5nPihcIk15U2lnbmFsXCIpO1xuICAgKiB3b3JrZmxvdyhcIndmXCIsIGFzeW5jICgpID0+IHtcbiAgICogICAgY29uc3QgcGF5bG9hZCA9IGF3YWl0IG15U2lnbmFsLmV4cGVjdCgpO1xuICAgKlxuICAgKiAgICByZXR1cm4gcGF5bG9hZDtcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKlxuICAgKiBVc2UgYG9wdHMudGltZW91dFNlY29uZHNgIHRvIHN0b3Agd2FpdGluZyBhZnRlciB0aGUgcHJvdmlkZWQgdGltZS4gVGhlIFByb21pc2Ugd2lsbCByZWplY3RcbiAgICogd2hlbiB0aGUgcHJvdmlkZWQgdGltZSBoYXMgZWxhcHNlZC5cbiAgICpcbiAgICogYGBgdHNcbiAgICogY29uc3QgbXlTaWduYWwgPSBzaWduYWw8c3RyaW5nPihcIk15U2lnbmFsXCIpO1xuICAgKiB3b3JrZmxvdyhcIndmXCIsIGFzeW5jICgpID0+IHtcbiAgICogICAgdHJ5IHtcbiAgICogICAgICAgY29uc3QgcGF5bG9hZCA9IGF3YWl0IG15U2lnbmFsLmV4cGVjdCh7IHRpbWVvdXRTZWNvbmQ6IDEwICogNjAgfSk7XG4gICAqXG4gICAqICAgICAgIHJldHVybiBwYXlsb2FkO1xuICAgKiAgICB9IGNhdGNoIHtcbiAgICogICAgICAgcmV0dXJuIFwibm90aGluZyFcIjtcbiAgICogICAgfVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgZXhwZWN0KG9wdHM/OiBFeHBlY3RTaWduYWxPcHRpb25zKTogUHJvbWlzZTxQYXlsb2FkPiB7XG4gICAgcmV0dXJuIGV4cGVjdFNpZ25hbCh0aGlzLCBvcHRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbGxvd3MgYSB7QGxpbmsgd29ya2Zsb3d9IHRvIHNlbmQgdGhpcyBzaWduYWwgdG8gYW55IHdvcmtmbG93IHtAbGluayBFeGVjdXRpb259IGJ5IGV4ZWN1dGlvbklkLlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiBjb25zdCBteVNpZ25hbCA9IHNpZ25hbDxzdHJpbmc+KFwiTXlTaWduYWxcIik7XG4gICAqIHdvcmtmbG93KFwid2ZcIiwgYXN5bmMgKCkgPT4ge1xuICAgKiAgICBteVNpZ25hbC5zZW5kKFwicGF5bG9hZFwiKTtcbiAgICogfSlcbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgc2VuZChcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIC4uLmFyZ3M6IFNlbmRTaWduYWxQcm9wczxQYXlsb2FkPlxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gc2VuZFNpZ25hbDxTaWduYWw8UGF5bG9hZD4+KGV4ZWN1dGlvbklkLCB0aGlzLCAuLi5hcmdzKTtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBTaWduYWxQYXlsb2FkPEUgZXh0ZW5kcyBTaWduYWw8YW55Pj4gPSBFIGV4dGVuZHMgU2lnbmFsPGluZmVyIFA+XG4gID8gUFxuICA6IG5ldmVyO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV4cGVjdFNpZ25hbE9wdGlvbnMge1xuICAvKipcbiAgICogT3B0aW9uYWwuIFNlY29uZHMgdG8gd2FpdCBmb3IgdGhlIHNpZ25hbCB0byBiZSByZWNlaXZlZC5cbiAgICpcbiAgICogQWZ0ZXIgdGhlIHByb3ZpZGVkIHNlY29uZHMsIHRoZSBwcm9taXNlIHdpbGwgcmVqZWN0LlxuICAgKi9cbiAgdGltZW91dFNlY29uZHM6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBXYWl0cyBmb3IgYSBzaWduYWwgdG8gYmUgcmVjZWl2ZWQgYnkgdGhlIHdvcmtmbG93LlxuICpcbiAqIFRoZSBmaXJzdCBzaWduYWwgcmVjZWl2ZWQgd2lsbCByZXNvbHZlIHRoZSBQcm9taXNlIHdpdGggdGhlIHBheWxvYWQgb2YgdGhlIHByb21pc2UuXG4gKlxuICogYGBgdHNcbiAqIHdvcmtmbG93KFwid2ZcIiwgKCkgPT4ge1xuICogICAgY29uc3QgcGF5bG9hZCA9IGF3YWl0IGV4cGVjdFNpZ25hbChcIk15U2lnbmFsXCIpO1xuICpcbiAqICAgIHJldHVybiBwYXlsb2FkO1xuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBVc2UgYG9wdHMudGltZW91dFNlY29uZHNgIHRvIHN0b3Agd2FpdGluZyBhZnRlciB0aGUgcHJvdmlkZWQgdGltZS4gVGhlIFByb21pc2Ugd2lsbCByZWplY3RcbiAqIHdoZW4gdGhlIHByb3ZpZGVkIHRpbWUgaGFzIGVsYXBzZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RTaWduYWw8U2lnbmFsUGF5bG9hZCA9IGFueT4oXG4gIHNpZ25hbElkOiBzdHJpbmcsXG4gIG9wdHM/OiBFeHBlY3RTaWduYWxPcHRpb25zXG4pOiBQcm9taXNlPFNpZ25hbFBheWxvYWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIGV4cGVjdFNpZ25hbDxFIGV4dGVuZHMgU2lnbmFsPGFueT4+KFxuICBzaWduYWw6IEUsXG4gIG9wdHM/OiBFeHBlY3RTaWduYWxPcHRpb25zXG4pOiBQcm9taXNlPFNpZ25hbFBheWxvYWQ8RT4+O1xuZXhwb3J0IGZ1bmN0aW9uIGV4cGVjdFNpZ25hbChcbiAgc2lnbmFsOiBTaWduYWw8YW55PiB8IHN0cmluZyxcbiAgb3B0cz86IEV4cGVjdFNpZ25hbE9wdGlvbnNcbik6IFByb21pc2U8U2lnbmFsUGF5bG9hZDxhbnk+PiB7XG4gIGlmICghaXNPcmNoZXN0cmF0b3JXb3JrZXIoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcImV4cGVjdFNpZ25hbCBpcyBvbmx5IHZhbGlkIGluIGEgd29ya2Zsb3dcIik7XG4gIH1cblxuICByZXR1cm4gY3JlYXRlRXhwZWN0U2lnbmFsQ2FsbChcbiAgICB0eXBlb2Ygc2lnbmFsID09PSBcInN0cmluZ1wiID8gc2lnbmFsIDogc2lnbmFsLmlkLFxuICAgIG9wdHM/LnRpbWVvdXRTZWNvbmRzXG4gICkgYXMgYW55O1xufVxuXG4vKipcbiAqIExpc3RlbnMgZm9yIGEgc2lnbmFsIG1hdGNoaW5nIHRoZSBzaWduYWxJZCBwcm92aWRlZC5cbiAqXG4gKiBXaGVuIHRoZSBzaWduYWwgaXMgcmVjZWl2ZWQsIHRoZSBoYW5kbGVyIGlzIGludm9rZWQuXG4gKiBJZiB0aGUgaGFuZGxlciByZXR1cm4gYSBwcm9taXNlLCB0aGUgaGFuZGxlciBpcyBhZGRlZCBhcyBhIHtAbGluayBDaGFpbn1cbiAqIGFuZCBwcm9ncmVzc2VkIHVudGlsIGNvbXBsZXRpb24uXG4gKlxuICogYGBgdHNcbiAqIHdvcmtmbG93KFwid2ZcIiwgKCkgPT4ge1xuICogICAgbGV0IGRvbmUgPSBmYWxzZTtcbiAqICAgIG9uU2lnbmFsKFwiTXlTaWduYWxcIiwgYXN5bmMgKCkgPT4ge1xuICogICAgICAgYXdhaXQgc2xlZXBGb3IoMTApO1xuICogICAgICAgZG9uZSA9IHRydWU7XG4gKiAgICB9KTtcbiAqXG4gKiAgICBhd2FpdCBjb25kaXRpb24oKCkgPT4gZG9uZSk7XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIFRvIHJlbW92ZSB0aGUgaGFuZGxlciwgY2FsbCB0aGUgZGlzcG9zZSBtZXRob2QuXG4gKlxuICogYGBgdHNcbiAqIGNvbnN0IGhhbmRsZXIgPSBvblNpZ25hbChcIk15U2lnbmFsXCIsICgpID0+IHt9KTtcbiAqXG4gKiBhd2FpdCBzbGVlcEZvcigxMCk7XG4gKlxuICogaGFuZGxlci5kaXNwb3NlKCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9uU2lnbmFsPEUgZXh0ZW5kcyBTaWduYWw8YW55Pj4oXG4gIHNpZ25hbDogRSxcbiAgaGFuZGxlcjogU2lnbmFsSGFuZGxlckZ1bmN0aW9uPFNpZ25hbFBheWxvYWQ8RT4+XG4pOiBTaWduYWxzSGFuZGxlcjtcbmV4cG9ydCBmdW5jdGlvbiBvblNpZ25hbDxQYXlsb2FkID0gdm9pZD4oXG4gIHNpZ25hbElkOiBzdHJpbmcsXG4gIGhhbmRsZXI6IFNpZ25hbEhhbmRsZXJGdW5jdGlvbjxQYXlsb2FkPlxuKTogU2lnbmFsc0hhbmRsZXI7XG5leHBvcnQgZnVuY3Rpb24gb25TaWduYWwoXG4gIHNpZ25hbDogU2lnbmFsPGFueT4gfCBzdHJpbmcsXG4gIGhhbmRsZXI6IFNpZ25hbEhhbmRsZXJGdW5jdGlvbjxhbnk+XG4pOiBTaWduYWxzSGFuZGxlciB7XG4gIGlmICghaXNPcmNoZXN0cmF0b3JXb3JrZXIoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIm9uU2lnbmFsIGlzIG9ubHkgdmFsaWQgaW4gYSB3b3JrZmxvd1wiKTtcbiAgfVxuXG4gIHJldHVybiBjcmVhdGVSZWdpc3RlclNpZ25hbEhhbmRsZXJDYWxsKFxuICAgIHR5cGVvZiBzaWduYWwgPT09IFwic3RyaW5nXCIgPyBzaWduYWwgOiBzaWduYWwuaWQsXG4gICAgaGFuZGxlciBhcyBhbnlcbiAgKTtcbn1cblxuZXhwb3J0IHR5cGUgU2VuZFNpZ25hbFByb3BzPFNpZ25hbFBheWxvYWQ+ID0gW1NpZ25hbFBheWxvYWRdIGV4dGVuZHNcbiAgfCBbdW5kZWZpbmVkXVxuICB8IFt2b2lkXVxuICA/IFtpZD86IHN0cmluZ11cbiAgOiBbcGF5bG9hZDogU2lnbmFsUGF5bG9hZCwgaWQ/OiBzdHJpbmddO1xuXG4vKipcbiAqIEFsbG93cyBhIHtAbGluayB3b3JrZmxvd30gdG8gc2VuZCBhIHNpZ25hbCB0byBhbnkgd29ya2Zsb3cge0BsaW5rIEV4ZWN1dGlvbn0gYnkgZXhlY3V0aW9uSWQuXG4gKlxuICogYGBgdHNcbiAqIGNvbnN0IG15U2lnbmFsID0gc2lnbmFsPHN0cmluZz4oXCJNeVNpZ25hbFwiKTtcbiAqIHdvcmtmbG93KFwid2ZcIiwgYXN5bmMgKCkgPT4ge1xuICogICAgc2VuZFNpZ25hbChcIm15U2lnbmFsXCIsIFwicGF5bG9hZFwiKTtcbiAqICAgIHNlbmRTaWduYWwobXlTaWduYWwsIFwicGF5bG9hZFwiKTtcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gaWQgYW4gb3B0aW9uYWwsIGV4ZWN1dGlvbiB1bmlxdWUgSUQsIHdpbGwgYmUgdXNlZCB0byBkZS1kdXBlIHRoZSBzaWduYWwgYXQgdGhlIHRhcmdldCBleGVjdXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZW5kU2lnbmFsPFMgZXh0ZW5kcyBTaWduYWw8YW55Pj4oXG4gIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gIHNpZ25hbDogUyxcbiAgLi4uYXJnczogU2VuZFNpZ25hbFByb3BzPFNpZ25hbFBheWxvYWQ8Uz4+XG4pOiBQcm9taXNlPHZvaWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHNlbmRTaWduYWw8UGF5bG9hZCA9IGFueT4oXG4gIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gIHNpZ25hbElkOiBzdHJpbmcsXG4gIC4uLmFyZ3M6IFNlbmRTaWduYWxQcm9wczxQYXlsb2FkPlxuKTogUHJvbWlzZTx2b2lkPjtcbmV4cG9ydCBmdW5jdGlvbiBzZW5kU2lnbmFsKFxuICBleGVjdXRpb25JZDogc3RyaW5nLFxuICBzaWduYWw6IHN0cmluZyB8IFNpZ25hbDxhbnk+LFxuICBwYXlsb2FkPzogYW55LFxuICBpZD86IHN0cmluZ1xuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmIChpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgcmV0dXJuIGNyZWF0ZVNlbmRTaWduYWxDYWxsKFxuICAgICAgeyB0eXBlOiBTaWduYWxUYXJnZXRUeXBlLkV4ZWN1dGlvbiwgZXhlY3V0aW9uSWQgfSxcbiAgICAgIHR5cGVvZiBzaWduYWwgPT09IFwic3RyaW5nXCIgPyBzaWduYWwgOiBzaWduYWwuaWQsXG4gICAgICBwYXlsb2FkXG4gICAgKSBhcyB1bmtub3duIGFzIGFueTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZ2V0V29ya2Zsb3dDbGllbnQoKS5zZW5kU2lnbmFsKHtcbiAgICAgIGV4ZWN1dGlvbklkLFxuICAgICAgc2lnbmFsLFxuICAgICAgaWQ6IGlkID8/IHVsaWQoKSxcbiAgICAgIHBheWxvYWQsXG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgU2lnbmFsVGFyZ2V0ID0gRXhlY3V0aW9uVGFyZ2V0IHwgQ2hpbGRFeGVjdXRpb25UYXJnZXQ7XG5cbmV4cG9ydCBlbnVtIFNpZ25hbFRhcmdldFR5cGUge1xuICBFeGVjdXRpb24sXG4gIENoaWxkRXhlY3V0aW9uLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4ZWN1dGlvblRhcmdldCB7XG4gIHR5cGU6IFNpZ25hbFRhcmdldFR5cGUuRXhlY3V0aW9uO1xuICBleGVjdXRpb25JZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoaWxkRXhlY3V0aW9uVGFyZ2V0IHtcbiAgdHlwZTogU2lnbmFsVGFyZ2V0VHlwZS5DaGlsZEV4ZWN1dGlvbjtcbiAgd29ya2Zsb3dOYW1lOiBzdHJpbmc7XG4gIHNlcTogbnVtYmVyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNDaGlsZEV4ZWN1dGlvblRhcmdldChcbiAgdGFyZ2V0OiBTaWduYWxUYXJnZXRcbik6IHRhcmdldCBpcyBDaGlsZEV4ZWN1dGlvblRhcmdldCB7XG4gIHJldHVybiB0YXJnZXQudHlwZSA9PT0gU2lnbmFsVGFyZ2V0VHlwZS5DaGlsZEV4ZWN1dGlvbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRXhlY3V0aW9uVGFyZ2V0KFxuICB0YXJnZXQ6IFNpZ25hbFRhcmdldFxuKTogdGFyZ2V0IGlzIEV4ZWN1dGlvblRhcmdldCB7XG4gIHJldHVybiB0YXJnZXQudHlwZSA9PT0gU2lnbmFsVGFyZ2V0VHlwZS5FeGVjdXRpb247XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaWduYWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUFtRTtBQUNuRSwyRUFBaUY7QUFDakYseUVBQXVFO0FBQ3ZFLGlEQUEwRDtBQUMxRCwyQ0FBK0M7QUFDL0MsaUNBQTZCO0FBa0I3QixTQUFnQixNQUFNLENBQWlCLElBQVk7SUFDakQsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUMxQixDQUFDO0FBRkQsd0JBRUM7QUFFRCxNQUFhLE1BQU07SUFDakIsWUFBcUIsRUFBVTtRQUFWLE9BQUUsR0FBRixFQUFFLENBQVE7SUFBRyxDQUFDO0lBQ25DOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0E4Qkc7SUFDSSxFQUFFLENBQUMsT0FBdUM7UUFDL0MsT0FBTyxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0E2Qkc7SUFDSSxNQUFNLENBQUMsSUFBMEI7UUFDdEMsT0FBTyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSSxJQUFJLENBQ1QsV0FBbUIsRUFDbkIsR0FBRyxJQUE4QjtRQUVqQyxPQUFPLFVBQVUsQ0FBa0IsV0FBVyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ2pFLENBQUM7Q0FDRjtBQXZGRCx3QkF1RkM7QUF1Q0QsU0FBZ0IsWUFBWSxDQUMxQixNQUE0QixFQUM1QixJQUEwQjtJQUUxQixJQUFJLENBQUMsSUFBQSwrQkFBb0IsR0FBRSxFQUFFO1FBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQztLQUM3RDtJQUVELE9BQU8sSUFBQSw4Q0FBc0IsRUFDM0IsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQy9DLElBQUksRUFBRSxjQUFjLENBQ2QsQ0FBQztBQUNYLENBQUM7QUFaRCxvQ0FZQztBQXVDRCxTQUFnQixRQUFRLENBQ3RCLE1BQTRCLEVBQzVCLE9BQW1DO0lBRW5DLElBQUksQ0FBQyxJQUFBLCtCQUFvQixHQUFFLEVBQUU7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsT0FBTyxJQUFBLHdEQUErQixFQUNwQyxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFDL0MsT0FBYyxDQUNmLENBQUM7QUFDSixDQUFDO0FBWkQsNEJBWUM7QUErQkQsU0FBZ0IsVUFBVSxDQUN4QixXQUFtQixFQUNuQixNQUE0QixFQUM1QixPQUFhLEVBQ2IsRUFBVztJQUVYLElBQUksSUFBQSwrQkFBb0IsR0FBRSxFQUFFO1FBQzFCLE9BQU8sSUFBQSwwQ0FBb0IsRUFDekIsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxFQUNqRCxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFDL0MsT0FBTyxDQUNVLENBQUM7S0FDckI7U0FBTTtRQUNMLE9BQU8sSUFBQSw0QkFBZ0IsR0FBRSxDQUFDLFVBQVUsQ0FBQztZQUNuQyxTQUFTLEVBQUUsV0FBVztZQUN0QixNQUFNO1lBQ04sRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFBLFlBQUksR0FBRTtZQUNoQixPQUFPO1NBQ1IsQ0FBQyxDQUFDO0tBQ0o7QUFDSCxDQUFDO0FBcEJELGdDQW9CQztBQUlELElBQVksZ0JBR1g7QUFIRCxXQUFZLGdCQUFnQjtJQUMxQixpRUFBUyxDQUFBO0lBQ1QsMkVBQWMsQ0FBQTtBQUNoQixDQUFDLEVBSFcsZ0JBQWdCLEdBQWhCLHdCQUFnQixLQUFoQix3QkFBZ0IsUUFHM0I7QUFhRCxTQUFnQixzQkFBc0IsQ0FDcEMsTUFBb0I7SUFFcEIsT0FBTyxNQUFNLENBQUMsSUFBSSxLQUFLLGdCQUFnQixDQUFDLGNBQWMsQ0FBQztBQUN6RCxDQUFDO0FBSkQsd0RBSUM7QUFFRCxTQUFnQixpQkFBaUIsQ0FDL0IsTUFBb0I7SUFFcEIsT0FBTyxNQUFNLENBQUMsSUFBSSxLQUFLLGdCQUFnQixDQUFDLFNBQVMsQ0FBQztBQUNwRCxDQUFDO0FBSkQsOENBSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVTZW5kU2lnbmFsQ2FsbCB9IGZyb20gXCIuL2NhbGxzL3NlbmQtc2lnbmFsLWNhbGwuanNcIjtcbmltcG9ydCB7IGNyZWF0ZVJlZ2lzdGVyU2lnbmFsSGFuZGxlckNhbGwgfSBmcm9tIFwiLi9jYWxscy9zaWduYWwtaGFuZGxlci1jYWxsLmpzXCI7XG5pbXBvcnQgeyBjcmVhdGVFeHBlY3RTaWduYWxDYWxsIH0gZnJvbSBcIi4vY2FsbHMvZXhwZWN0LXNpZ25hbC1jYWxsLmpzXCI7XG5pbXBvcnQgeyBpc09yY2hlc3RyYXRvcldvcmtlciB9IGZyb20gXCIuL3J1bnRpbWUvZmxhZ3MuanNcIjtcbmltcG9ydCB7IGdldFNlcnZpY2VDbGllbnQgfSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IHVsaWQgfSBmcm9tIFwidWxpZHhcIjtcblxuLyoqXG4gKiBBIHJlZmVyZW5jZSB0byBhIGNyZWF0ZWQgc2lnbmFsIGhhbmRsZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmFsc0hhbmRsZXIge1xuICAvKipcbiAgICogUmVtb3ZlIHRoZSBoYW5kbGVyIGZyb20gdGhlIHNpZ25hbC5cbiAgICpcbiAgICogQW55IG9uZ29pbmcge0BsaW5rIENoYWlufXMgc3RhcnRlZCBieSB0aGUgaGFuZGxlciB3aWxsIGNvbnRpbnVlIHRvIHJ1biB0byBjb21wbGV0aW9uLlxuICAgKi9cbiAgZGlzcG9zZTogKCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IHR5cGUgU2lnbmFsSGFuZGxlckZ1bmN0aW9uPFBheWxvYWQgPSB2b2lkPiA9IChcbiAgcGF5bG9hZDogUGF5bG9hZFxuKSA9PiBQcm9taXNlPHZvaWQ+IHwgdm9pZDtcblxuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbDxQYXlsb2FkID0gdm9pZD4obmFtZTogc3RyaW5nKTogU2lnbmFsPFBheWxvYWQ+IHtcbiAgcmV0dXJuIG5ldyBTaWduYWwobmFtZSk7XG59XG5cbmV4cG9ydCBjbGFzcyBTaWduYWw8UGF5bG9hZCA9IHZvaWQ+IHtcbiAgY29uc3RydWN0b3IocmVhZG9ubHkgaWQ6IHN0cmluZykge31cbiAgLyoqXG4gICAqIExpc3RlbnMgZm9yIHNpZ25hbHMgc2VudCB0byB0aGUgY3VycmVudCB3b3JrZmxvdy5cbiAgICpcbiAgICogV2hlbiB0aGUgc2lnbmFsIGlzIHJlY2VpdmVkLCB0aGUgaGFuZGxlciBpcyBpbnZva2VkLlxuICAgKiBJZiB0aGUgaGFuZGxlciByZXR1cm4gYSBwcm9taXNlLCB0aGUgaGFuZGxlciBpcyBhZGRlZCBhIHtAbGluayBDaGFpbn1cbiAgICogYW5kIHByb2dyZXNzZWQgdW50aWwgY29tcGxldGlvbi5cbiAgICpcbiAgICogYGBgdHNcbiAgICogY29uc3QgbXlTaWduYWwgPSBzaWduYWwoXCJNeVNpZ25hbFwiKTtcbiAgICpcbiAgICogd29ya2Zsb3coXCJ3ZlwiLCAoKSA9PiB7XG4gICAqICAgIGxldCBkb25lID0gZmFsc2U7XG4gICAqICAgIG15U2lnbmFsLm9uKGFzeW5jICgpID0+IHtcbiAgICogICAgICAgYXdhaXQgc2xlZXBGb3IoMTApO1xuICAgKiAgICAgICBkb25lID0gdHJ1ZTtcbiAgICogICAgfSk7XG4gICAqXG4gICAqICAgIGF3YWl0IGNvbmRpdGlvbigoKSA9PiBkb25lKTtcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKlxuICAgKiBUbyByZW1vdmUgdGhlIGhhbmRsZXIsIGNhbGwgdGhlIGRpc3Bvc2UgbWV0aG9kLlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiBjb25zdCBoYW5kbGVyID0gbXlTaWduYWwub24oKCkgPT4ge30pO1xuICAgKlxuICAgKiBhd2FpdCBzbGVlcEZvcigxMCk7XG4gICAqXG4gICAqIGhhbmRsZXIuZGlzcG9zZSgpO1xuICAgKiBgYGBcbiAgICovXG4gIHB1YmxpYyBvbihoYW5kbGVyOiBTaWduYWxIYW5kbGVyRnVuY3Rpb248UGF5bG9hZD4pOiBTaWduYWxzSGFuZGxlciB7XG4gICAgcmV0dXJuIG9uU2lnbmFsKHRoaXMsIGhhbmRsZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdhaXRzIGZvciBhIHNpZ25hbCB0byBiZSByZWNlaXZlZCBieSB0aGUgd29ya2Zsb3cuXG4gICAqXG4gICAqIFRoZSBmaXJzdCBzaWduYWwgcmVjZWl2ZWQgd2lsbCByZXNvbHZlIHRoZSBQcm9taXNlIHdpdGggdGhlIHBheWxvYWQgb2YgdGhlIHByb21pc2UuXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IG15U2lnbmFsID0gc2lnbmFsPHN0cmluZz4oXCJNeVNpZ25hbFwiKTtcbiAgICogd29ya2Zsb3coXCJ3ZlwiLCBhc3luYyAoKSA9PiB7XG4gICAqICAgIGNvbnN0IHBheWxvYWQgPSBhd2FpdCBteVNpZ25hbC5leHBlY3QoKTtcbiAgICpcbiAgICogICAgcmV0dXJuIHBheWxvYWQ7XG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogVXNlIGBvcHRzLnRpbWVvdXRTZWNvbmRzYCB0byBzdG9wIHdhaXRpbmcgYWZ0ZXIgdGhlIHByb3ZpZGVkIHRpbWUuIFRoZSBQcm9taXNlIHdpbGwgcmVqZWN0XG4gICAqIHdoZW4gdGhlIHByb3ZpZGVkIHRpbWUgaGFzIGVsYXBzZWQuXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IG15U2lnbmFsID0gc2lnbmFsPHN0cmluZz4oXCJNeVNpZ25hbFwiKTtcbiAgICogd29ya2Zsb3coXCJ3ZlwiLCBhc3luYyAoKSA9PiB7XG4gICAqICAgIHRyeSB7XG4gICAqICAgICAgIGNvbnN0IHBheWxvYWQgPSBhd2FpdCBteVNpZ25hbC5leHBlY3QoeyB0aW1lb3V0U2Vjb25kOiAxMCAqIDYwIH0pO1xuICAgKlxuICAgKiAgICAgICByZXR1cm4gcGF5bG9hZDtcbiAgICogICAgfSBjYXRjaCB7XG4gICAqICAgICAgIHJldHVybiBcIm5vdGhpbmchXCI7XG4gICAqICAgIH1cbiAgICogfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgcHVibGljIGV4cGVjdChvcHRzPzogRXhwZWN0U2lnbmFsT3B0aW9ucyk6IFByb21pc2U8UGF5bG9hZD4ge1xuICAgIHJldHVybiBleHBlY3RTaWduYWwodGhpcywgb3B0cyk7XG4gIH1cblxuICAvKipcbiAgICogQWxsb3dzIGEge0BsaW5rIHdvcmtmbG93fSB0byBzZW5kIHRoaXMgc2lnbmFsIHRvIGFueSB3b3JrZmxvdyB7QGxpbmsgRXhlY3V0aW9ufSBieSBleGVjdXRpb25JZC5cbiAgICpcbiAgICogYGBgdHNcbiAgICogY29uc3QgbXlTaWduYWwgPSBzaWduYWw8c3RyaW5nPihcIk15U2lnbmFsXCIpO1xuICAgKiB3b3JrZmxvdyhcIndmXCIsIGFzeW5jICgpID0+IHtcbiAgICogICAgbXlTaWduYWwuc2VuZChcInBheWxvYWRcIik7XG4gICAqIH0pXG4gICAqIGBgYFxuICAgKi9cbiAgcHVibGljIHNlbmQoXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICAuLi5hcmdzOiBTZW5kU2lnbmFsUHJvcHM8UGF5bG9hZD5cbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIHNlbmRTaWduYWw8U2lnbmFsPFBheWxvYWQ+PihleGVjdXRpb25JZCwgdGhpcywgLi4uYXJncyk7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgU2lnbmFsUGF5bG9hZDxFIGV4dGVuZHMgU2lnbmFsPGFueT4+ID0gRSBleHRlbmRzIFNpZ25hbDxpbmZlciBQPlxuICA/IFBcbiAgOiBuZXZlcjtcblxuZXhwb3J0IGludGVyZmFjZSBFeHBlY3RTaWduYWxPcHRpb25zIHtcbiAgLyoqXG4gICAqIE9wdGlvbmFsLiBTZWNvbmRzIHRvIHdhaXQgZm9yIHRoZSBzaWduYWwgdG8gYmUgcmVjZWl2ZWQuXG4gICAqXG4gICAqIEFmdGVyIHRoZSBwcm92aWRlZCBzZWNvbmRzLCB0aGUgcHJvbWlzZSB3aWxsIHJlamVjdC5cbiAgICovXG4gIHRpbWVvdXRTZWNvbmRzOiBudW1iZXI7XG59XG5cbi8qKlxuICogV2FpdHMgZm9yIGEgc2lnbmFsIHRvIGJlIHJlY2VpdmVkIGJ5IHRoZSB3b3JrZmxvdy5cbiAqXG4gKiBUaGUgZmlyc3Qgc2lnbmFsIHJlY2VpdmVkIHdpbGwgcmVzb2x2ZSB0aGUgUHJvbWlzZSB3aXRoIHRoZSBwYXlsb2FkIG9mIHRoZSBwcm9taXNlLlxuICpcbiAqIGBgYHRzXG4gKiB3b3JrZmxvdyhcIndmXCIsICgpID0+IHtcbiAqICAgIGNvbnN0IHBheWxvYWQgPSBhd2FpdCBleHBlY3RTaWduYWwoXCJNeVNpZ25hbFwiKTtcbiAqXG4gKiAgICByZXR1cm4gcGF5bG9hZDtcbiAqIH0pO1xuICogYGBgXG4gKlxuICogVXNlIGBvcHRzLnRpbWVvdXRTZWNvbmRzYCB0byBzdG9wIHdhaXRpbmcgYWZ0ZXIgdGhlIHByb3ZpZGVkIHRpbWUuIFRoZSBQcm9taXNlIHdpbGwgcmVqZWN0XG4gKiB3aGVuIHRoZSBwcm92aWRlZCB0aW1lIGhhcyBlbGFwc2VkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhwZWN0U2lnbmFsPFNpZ25hbFBheWxvYWQgPSBhbnk+KFxuICBzaWduYWxJZDogc3RyaW5nLFxuICBvcHRzPzogRXhwZWN0U2lnbmFsT3B0aW9uc1xuKTogUHJvbWlzZTxTaWduYWxQYXlsb2FkPjtcbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RTaWduYWw8RSBleHRlbmRzIFNpZ25hbDxhbnk+PihcbiAgc2lnbmFsOiBFLFxuICBvcHRzPzogRXhwZWN0U2lnbmFsT3B0aW9uc1xuKTogUHJvbWlzZTxTaWduYWxQYXlsb2FkPEU+PjtcbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RTaWduYWwoXG4gIHNpZ25hbDogU2lnbmFsPGFueT4gfCBzdHJpbmcsXG4gIG9wdHM/OiBFeHBlY3RTaWduYWxPcHRpb25zXG4pOiBQcm9taXNlPFNpZ25hbFBheWxvYWQ8YW55Pj4ge1xuICBpZiAoIWlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJleHBlY3RTaWduYWwgaXMgb25seSB2YWxpZCBpbiBhIHdvcmtmbG93XCIpO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZUV4cGVjdFNpZ25hbENhbGwoXG4gICAgdHlwZW9mIHNpZ25hbCA9PT0gXCJzdHJpbmdcIiA/IHNpZ25hbCA6IHNpZ25hbC5pZCxcbiAgICBvcHRzPy50aW1lb3V0U2Vjb25kc1xuICApIGFzIGFueTtcbn1cblxuLyoqXG4gKiBMaXN0ZW5zIGZvciBhIHNpZ25hbCBtYXRjaGluZyB0aGUgc2lnbmFsSWQgcHJvdmlkZWQuXG4gKlxuICogV2hlbiB0aGUgc2lnbmFsIGlzIHJlY2VpdmVkLCB0aGUgaGFuZGxlciBpcyBpbnZva2VkLlxuICogSWYgdGhlIGhhbmRsZXIgcmV0dXJuIGEgcHJvbWlzZSwgdGhlIGhhbmRsZXIgaXMgYWRkZWQgYXMgYSB7QGxpbmsgQ2hhaW59XG4gKiBhbmQgcHJvZ3Jlc3NlZCB1bnRpbCBjb21wbGV0aW9uLlxuICpcbiAqIGBgYHRzXG4gKiB3b3JrZmxvdyhcIndmXCIsICgpID0+IHtcbiAqICAgIGxldCBkb25lID0gZmFsc2U7XG4gKiAgICBvblNpZ25hbChcIk15U2lnbmFsXCIsIGFzeW5jICgpID0+IHtcbiAqICAgICAgIGF3YWl0IHNsZWVwRm9yKDEwKTtcbiAqICAgICAgIGRvbmUgPSB0cnVlO1xuICogICAgfSk7XG4gKlxuICogICAgYXdhaXQgY29uZGl0aW9uKCgpID0+IGRvbmUpO1xuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBUbyByZW1vdmUgdGhlIGhhbmRsZXIsIGNhbGwgdGhlIGRpc3Bvc2UgbWV0aG9kLlxuICpcbiAqIGBgYHRzXG4gKiBjb25zdCBoYW5kbGVyID0gb25TaWduYWwoXCJNeVNpZ25hbFwiLCAoKSA9PiB7fSk7XG4gKlxuICogYXdhaXQgc2xlZXBGb3IoMTApO1xuICpcbiAqIGhhbmRsZXIuZGlzcG9zZSgpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvblNpZ25hbDxFIGV4dGVuZHMgU2lnbmFsPGFueT4+KFxuICBzaWduYWw6IEUsXG4gIGhhbmRsZXI6IFNpZ25hbEhhbmRsZXJGdW5jdGlvbjxTaWduYWxQYXlsb2FkPEU+PlxuKTogU2lnbmFsc0hhbmRsZXI7XG5leHBvcnQgZnVuY3Rpb24gb25TaWduYWw8UGF5bG9hZCA9IHZvaWQ+KFxuICBzaWduYWxJZDogc3RyaW5nLFxuICBoYW5kbGVyOiBTaWduYWxIYW5kbGVyRnVuY3Rpb248UGF5bG9hZD5cbik6IFNpZ25hbHNIYW5kbGVyO1xuZXhwb3J0IGZ1bmN0aW9uIG9uU2lnbmFsKFxuICBzaWduYWw6IFNpZ25hbDxhbnk+IHwgc3RyaW5nLFxuICBoYW5kbGVyOiBTaWduYWxIYW5kbGVyRnVuY3Rpb248YW55PlxuKTogU2lnbmFsc0hhbmRsZXIge1xuICBpZiAoIWlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJvblNpZ25hbCBpcyBvbmx5IHZhbGlkIGluIGEgd29ya2Zsb3dcIik7XG4gIH1cblxuICByZXR1cm4gY3JlYXRlUmVnaXN0ZXJTaWduYWxIYW5kbGVyQ2FsbChcbiAgICB0eXBlb2Ygc2lnbmFsID09PSBcInN0cmluZ1wiID8gc2lnbmFsIDogc2lnbmFsLmlkLFxuICAgIGhhbmRsZXIgYXMgYW55XG4gICk7XG59XG5cbmV4cG9ydCB0eXBlIFNlbmRTaWduYWxQcm9wczxTaWduYWxQYXlsb2FkPiA9IFtTaWduYWxQYXlsb2FkXSBleHRlbmRzXG4gIHwgW3VuZGVmaW5lZF1cbiAgfCBbdm9pZF1cbiAgPyBbaWQ/OiBzdHJpbmddXG4gIDogW3BheWxvYWQ6IFNpZ25hbFBheWxvYWQsIGlkPzogc3RyaW5nXTtcblxuLyoqXG4gKiBBbGxvd3MgYSB7QGxpbmsgd29ya2Zsb3d9IHRvIHNlbmQgYSBzaWduYWwgdG8gYW55IHdvcmtmbG93IHtAbGluayBFeGVjdXRpb259IGJ5IGV4ZWN1dGlvbklkLlxuICpcbiAqIGBgYHRzXG4gKiBjb25zdCBteVNpZ25hbCA9IHNpZ25hbDxzdHJpbmc+KFwiTXlTaWduYWxcIik7XG4gKiB3b3JrZmxvdyhcIndmXCIsIGFzeW5jICgpID0+IHtcbiAqICAgIHNlbmRTaWduYWwoXCJteVNpZ25hbFwiLCBcInBheWxvYWRcIik7XG4gKiAgICBzZW5kU2lnbmFsKG15U2lnbmFsLCBcInBheWxvYWRcIik7XG4gKiB9KVxuICogYGBgXG4gKlxuICogQHBhcmFtIGlkIGFuIG9wdGlvbmFsLCBleGVjdXRpb24gdW5pcXVlIElELCB3aWxsIGJlIHVzZWQgdG8gZGUtZHVwZSB0aGUgc2lnbmFsIGF0IHRoZSB0YXJnZXQgZXhlY3V0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2VuZFNpZ25hbDxTIGV4dGVuZHMgU2lnbmFsPGFueT4+KFxuICBleGVjdXRpb25JZDogc3RyaW5nLFxuICBzaWduYWw6IFMsXG4gIC4uLmFyZ3M6IFNlbmRTaWduYWxQcm9wczxTaWduYWxQYXlsb2FkPFM+PlxuKTogUHJvbWlzZTx2b2lkPjtcbmV4cG9ydCBmdW5jdGlvbiBzZW5kU2lnbmFsPFBheWxvYWQgPSBhbnk+KFxuICBleGVjdXRpb25JZDogc3RyaW5nLFxuICBzaWduYWxJZDogc3RyaW5nLFxuICAuLi5hcmdzOiBTZW5kU2lnbmFsUHJvcHM8UGF5bG9hZD5cbik6IFByb21pc2U8dm9pZD47XG5leHBvcnQgZnVuY3Rpb24gc2VuZFNpZ25hbChcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgc2lnbmFsOiBzdHJpbmcgfCBTaWduYWw8YW55PixcbiAgcGF5bG9hZD86IGFueSxcbiAgaWQ/OiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICBpZiAoaXNPcmNoZXN0cmF0b3JXb3JrZXIoKSkge1xuICAgIHJldHVybiBjcmVhdGVTZW5kU2lnbmFsQ2FsbChcbiAgICAgIHsgdHlwZTogU2lnbmFsVGFyZ2V0VHlwZS5FeGVjdXRpb24sIGV4ZWN1dGlvbklkIH0sXG4gICAgICB0eXBlb2Ygc2lnbmFsID09PSBcInN0cmluZ1wiID8gc2lnbmFsIDogc2lnbmFsLmlkLFxuICAgICAgcGF5bG9hZFxuICAgICkgYXMgdW5rbm93biBhcyBhbnk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGdldFNlcnZpY2VDbGllbnQoKS5zZW5kU2lnbmFsKHtcbiAgICAgIGV4ZWN1dGlvbjogZXhlY3V0aW9uSWQsXG4gICAgICBzaWduYWwsXG4gICAgICBpZDogaWQgPz8gdWxpZCgpLFxuICAgICAgcGF5bG9hZCxcbiAgICB9KTtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBTaWduYWxUYXJnZXQgPSBFeGVjdXRpb25UYXJnZXQgfCBDaGlsZEV4ZWN1dGlvblRhcmdldDtcblxuZXhwb3J0IGVudW0gU2lnbmFsVGFyZ2V0VHlwZSB7XG4gIEV4ZWN1dGlvbixcbiAgQ2hpbGRFeGVjdXRpb24sXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXhlY3V0aW9uVGFyZ2V0IHtcbiAgdHlwZTogU2lnbmFsVGFyZ2V0VHlwZS5FeGVjdXRpb247XG4gIGV4ZWN1dGlvbklkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2hpbGRFeGVjdXRpb25UYXJnZXQge1xuICB0eXBlOiBTaWduYWxUYXJnZXRUeXBlLkNoaWxkRXhlY3V0aW9uO1xuICB3b3JrZmxvd05hbWU6IHN0cmluZztcbiAgc2VxOiBudW1iZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NoaWxkRXhlY3V0aW9uVGFyZ2V0KFxuICB0YXJnZXQ6IFNpZ25hbFRhcmdldFxuKTogdGFyZ2V0IGlzIENoaWxkRXhlY3V0aW9uVGFyZ2V0IHtcbiAgcmV0dXJuIHRhcmdldC50eXBlID09PSBTaWduYWxUYXJnZXRUeXBlLkNoaWxkRXhlY3V0aW9uO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNFeGVjdXRpb25UYXJnZXQoXG4gIHRhcmdldDogU2lnbmFsVGFyZ2V0XG4pOiB0YXJnZXQgaXMgRXhlY3V0aW9uVGFyZ2V0IHtcbiAgcmV0dXJuIHRhcmdldC50eXBlID09PSBTaWduYWxUYXJnZXRUeXBlLkV4ZWN1dGlvbjtcbn1cbiJdfQ==

@@ -6,15 +6,4 @@ import type { Program } from "./interpret.js";

import { ChildExecution, ExecutionHandle } from "./execution.js";
import { StartExecutionRequest } from "./service-client.js";
export type WorkflowHandler<Input = any, Output = any> = (input: Input, context: Context) => Promise<Output> | Program<Output>;
export interface StartExecutionRequest<Input> extends WorkflowOptions {
/**
* Input payload for the workflow.
*/
input: Input;
/**
* Optional name of the workflow to start - used to determine the unique ID and enforce idempotency.
*
* @default - a unique ID is generated.
*/
name?: string;
}
/**

@@ -33,4 +22,4 @@ * Options which determine how a workflow operates.

}
export type WorkflowOutput<W extends Workflow<any, any>> = W extends Workflow<any, infer Out> ? Out : never;
export type WorkflowInput<W extends Workflow<any, any>> = W extends Workflow<infer In, any> ? In : never;
export type WorkflowOutput<W extends Workflow> = W extends Workflow<any, infer Out> ? Out : never;
export type WorkflowInput<W extends Workflow> = W extends Workflow<infer In, any> ? In : undefined;
/**

@@ -40,3 +29,3 @@ * A {@link Workflow} is a long-running process that orchestrates calls

*/
export interface Workflow<Input = any, Output = any> {
export interface Workflow<in Input = any, Output = any> {
/**

@@ -60,3 +49,3 @@ * Globally unique ID of this {@link Workflow}.

*/
startExecution(request: StartExecutionRequest<Input>): Promise<ExecutionHandle<Workflow<Input, Output>>>;
startExecution(request: Omit<StartExecutionRequest<Workflow<Input, Output>>, "workflow">): Promise<ExecutionHandle<Workflow<Input, Output>>>;
}

@@ -63,0 +52,0 @@ export declare function lookupWorkflow(name: string): Workflow | undefined;

@@ -11,3 +11,2 @@ "use strict";

const chain_js_1 = require("./chain.js");
const execution_js_1 = require("./execution.js");
function lookupWorkflow(name) {

@@ -30,6 +29,6 @@ return (0, global_js_1.workflows)().get(name);

workflow.startExecution = async function (input) {
const workflowClient = (0, global_js_1.getWorkflowClient)();
const executionId = await workflowClient.startWorkflow({
workflowName: name,
executionName: input.name,
const serviceClient = (0, global_js_1.getServiceClient)();
return await serviceClient.startExecution({
workflow: name,
executionName: input.executionName,
input: input.input,

@@ -39,3 +38,2 @@ timeoutSeconds: input.timeoutSeconds,

});
return new execution_js_1.ExecutionHandle(executionId, workflowClient);
};

@@ -116,2 +114,2 @@ workflow.definition = ((0, chain_js_1.isChain)(definition)

exports.generateSyntheticEvents = generateSyntheticEvents;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd29ya2Zsb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBSXFCO0FBR3JCLHlDQUE4QztBQUM5Qyw2REFVOEI7QUFDOUIsaURBQTJEO0FBQzNELCtEQUE4RDtBQUU5RCxpREFBMEQ7QUFDMUQseUNBQXFDO0FBQ3JDLGlEQUFpRTtBQXVGakUsU0FBZ0IsY0FBYyxDQUFDLElBQVk7SUFDekMsT0FBTyxJQUFBLHFCQUFTLEdBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDL0IsQ0FBQztBQUZELHdDQUVDO0FBK0JELFNBQWdCLFFBQVEsQ0FDdEIsSUFBWSxFQUNaLEdBQUcsSUFFNkM7SUFFaEQsTUFBTSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMzRSxJQUFJLElBQUEscUJBQVMsR0FBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLHVCQUF1QixJQUFJLGtCQUFrQixDQUFDLENBQUM7S0FDaEU7SUFFRCxNQUFNLFFBQVEsR0FBNEIsQ0FBQyxDQUFDLEtBQVcsRUFBRSxFQUFFO1FBQ3pELElBQUksQ0FBQyxJQUFBLCtCQUFvQixHQUFFLEVBQUU7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FDYiw4RkFBOEYsQ0FDL0YsQ0FBQztTQUNIO1FBRUQsT0FBTyxJQUFBLHFDQUFrQixFQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQyxDQUFRLENBQUM7SUFFVixRQUFRLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztJQUU3QixRQUFRLENBQUMsY0FB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RUFBRTtLQUNULENBQUMsQ0FDOUIsQ0FBQztJQUVKLE9BQU8sc0JBQXNCLENBQUM7QUFDaEMsQ0FBQztBQW5DRCwwREFtQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB3b3JrZmxvd3MsXG4gIGNsZWFyRXZlbnR1YWxDb2xsZWN0b3IsXG4gIGdldFdvcmtmbG93Q2xpZW50LFxufSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB0eXBlIHsgUHJvZ3JhbSB9IGZyb20gXCIuL2ludGVycHJldC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBDb250ZXh0LCBXb3JrZmxvd0NvbnRleHQgfSBmcm9tIFwiLi9jb250ZXh0LmpzXCI7XG5pbXBvcnQgeyBEZXRlcm1pbmlzbUVycm9yIH0gZnJvbSBcIi4vZXJyb3IuanNcIjtcbmltcG9ydCB7XG4gIGZpbHRlckV2ZW50cyxcbiAgSGlzdG9yeVN0YXRlRXZlbnQsXG4gIGlzSGlzdG9yeUV2ZW50LFxuICBpc1NsZWVwQ29tcGxldGVkLFxuICBpc1NsZWVwU2NoZWR1bGVkLFxuICBpc1dvcmtmbG93U3RhcnRlZCxcbiAgU2xlZXBDb21wbGV0ZWQsXG4gIFNsZWVwU2NoZWR1bGVkLFxuICBXb3JrZmxvd0V2ZW50VHlwZSxcbn0gZnJvbSBcIi4vd29ya2Zsb3ctZXZlbnRzLmpzXCI7XG5pbXBvcnQgeyBpbnRlcnByZXQsIFdvcmtmbG93UmVzdWx0IH0gZnJvbSBcIi4vaW50ZXJwcmV0LmpzXCI7XG5pbXBvcnQgeyBjcmVhdGVXb3JrZmxvd0NhbGwgfSBmcm9tIFwiLi9jYWxscy93b3JrZmxvdy1jYWxsLmpzXCI7XG5pbXBvcnQgeyBBd2FpdGVkRXZlbnR1YWwgfSBmcm9tIFwiLi9ldmVudHVhbC5qc1wiO1xuaW1wb3J0IHsgaXNPcmNoZXN0cmF0b3JXb3JrZXIgfSBmcm9tIFwiLi9ydW50aW1lL2ZsYWdzLmpzXCI7XG5pbXBvcnQgeyBpc0NoYWluIH0gZnJvbSBcIi4vY2hhaW4uanNcIjtcbmltcG9ydCB7IENoaWxkRXhlY3V0aW9uLCBFeGVjdXRpb25IYW5kbGUgfSBmcm9tIFwiLi9leGVjdXRpb24uanNcIjtcblxuZXhwb3J0IHR5cGUgV29ya2Zsb3dIYW5kbGVyPElucHV0ID0gYW55LCBPdXRwdXQgPSBhbnk+ID0gKFxuICBpbnB1dDogSW5wdXQsXG4gIGNvbnRleHQ6IENvbnRleHRcbikgPT4gUHJvbWlzZTxPdXRwdXQ+IHwgUHJvZ3JhbTxPdXRwdXQ+O1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXJ0RXhlY3V0aW9uUmVxdWVzdDxJbnB1dD4gZXh0ZW5kcyBXb3JrZmxvd09wdGlvbnMge1xuICAvKipcbiAgICogSW5wdXQgcGF5bG9hZCBmb3IgdGhlIHdvcmtmbG93LlxuICAgKi9cbiAgaW5wdXQ6IElucHV0O1xuICAvKipcbiAgICogT3B0aW9uYWwgbmFtZSBvZiB0aGUgd29ya2Zsb3cgdG8gc3RhcnQgLSB1c2VkIHRvIGRldGVybWluZSB0aGUgdW5pcXVlIElEIGFuZCBlbmZvcmNlIGlkZW1wb3RlbmN5LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGEgdW5pcXVlIElEIGlzIGdlbmVyYXRlZC5cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogT3B0aW9ucyB3aGljaCBkZXRlcm1pbmUgaG93IGEgd29ya2Zsb3cgb3BlcmF0ZXMuXG4gKlxuICogQ2FuIGJlIHByb3ZpZGVkIGF0IHdvcmtmbG93IGRlZmluaXRpb24gdGltZSBhbmQvb3Igb3ZlcnJpZGRlbiBieSB0aGUgY2FsbGVyIG9mIHtAbGluayBXb3JrZmxvd0NsaWVudC5zdGFydFdvcmtmbG93fS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvd09wdGlvbnMge1xuICAvKipcbiAgICogTnVtYmVyIG9mIHNlY29uZHMgYmVmb3JlIGV4ZWN1dGlvbiB0aW1lcyBvdXQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gd29ya2Zsb3cgd2lsbCBuZXZlciB0aW1lb3V0LlxuICAgKi9cbiAgdGltZW91dFNlY29uZHM/OiBudW1iZXI7XG59XG5cbmV4cG9ydCB0eXBlIFdvcmtmbG93T3V0cHV0PFcgZXh0ZW5kcyBXb3JrZmxvdzxhbnksIGFueT4+ID0gVyBleHRlbmRzIFdvcmtmbG93PFxuICBhbnksXG4gIGluZmVyIE91dFxuPlxuICA/IE91dFxuICA6IG5ldmVyO1xuXG5leHBvcnQgdHlwZSBXb3JrZmxvd0lucHV0PFcgZXh0ZW5kcyBXb3JrZmxvdzxhbnksIGFueT4+ID0gVyBleHRlbmRzIFdvcmtmbG93PFxuICBpbmZlciBJbixcbiAgYW55XG4+XG4gID8gSW5cbiAgOiBuZXZlcjtcblxuLyoqXG4gKiBBIHtAbGluayBXb3JrZmxvd30gaXMgYSBsb25nLXJ1bm5pbmcgcHJvY2VzcyB0aGF0IG9yY2hlc3RyYXRlcyBjYWxsc1xuICogdG8gb3RoZXIgc2VydmljZXMgaW4gYSBkdXJhYmxlIGFuZCBvYnNlcnZhYmxlIHdheS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvdzxJbnB1dCA9IGFueSwgT3V0cHV0ID0gYW55PiB7XG4gIC8qKlxuICAgKiBHbG9iYWxseSB1bmlxdWUgSUQgb2YgdGhpcyB7QGxpbmsgV29ya2Zsb3d9LlxuICAgKi9cbiAgd29ya2Zsb3dOYW1lOiBzdHJpbmc7XG5cbiAgb3B0aW9ucz86IFdvcmtmbG93T3B0aW9ucztcblxuICAvKipcbiAgICogSW52b2tlcyB0aGUge0BsaW5rIFdvcmtmbG93fSBmcm9tIHdpdGhpbiBhbm90aGVyIHdvcmtmbG93LlxuICAgKlxuICAgKiBUaGlzIGNhbiBvbmx5IGJlIGNhbGxlZCBmcm9tIHdpdGhpbiBhbm90aGVyIHdvcmtmbG93IGJlY2F1c2UgaXQncyBub3QgcG9zc2libGVcbiAgICogdG8gd2FpdCBmb3IgY29tcGxldGlvbiBzeW5jaHJvbm91c2x5IC0gaXQgcmVsaWVzIG9uIHRoZSBldmVudC1kcml2ZW4gZW52aXJvbm1lbnRcbiAgICogb2YgYSB3b3JrZmxvdyBleGVjdXRpb24uXG4gICAqXG4gICAqIFRvIHN0YXJ0IGEgd29ya2Zsb3cgZnJvbSBhbm90aGVyIGVudmlyb25tZW50LCB1c2Uge0BsaW5rIHN0YXJ0fS5cbiAgICovXG4gIChpbnB1dDogSW5wdXQpOiBQcm9taXNlPE91dHB1dD4gJiBDaGlsZEV4ZWN1dGlvbjtcblxuICAvKipcbiAgICogU3RhcnRzIGEgd29ya2Zsb3cgZXhlY3V0aW9uXG4gICAqL1xuICBzdGFydEV4ZWN1dGlvbihcbiAgICByZXF1ZXN0OiBTdGFydEV4ZWN1dGlvblJlcXVlc3Q8SW5wdXQ+XG4gICk6IFByb21pc2U8RXhlY3V0aW9uSGFuZGxlPFdvcmtmbG93PElucHV0LCBPdXRwdXQ+Pj47XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbCAtIHRoaXMgaXMgdGhlIGludGVybmFsIERTTCByZXByZXNlbnRhdGlvbiB0aGF0IHByb2R1Y2VzIGEge0BsaW5rIFByb2dyYW19IGluc3RlYWQgb2YgYSBQcm9taXNlLlxuICAgKi9cbiAgZGVmaW5pdGlvbjogKFxuICAgIGlucHV0OiBJbnB1dCxcbiAgICBjb250ZXh0OiBDb250ZXh0XG4gICkgPT4gUHJvZ3JhbTxBd2FpdGVkRXZlbnR1YWw8T3V0cHV0Pj47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb29rdXBXb3JrZmxvdyhuYW1lOiBzdHJpbmcpOiBXb3JrZmxvdyB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiB3b3JrZmxvd3MoKS5nZXQobmFtZSk7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhbmQgcmVnaXN0ZXJzIGEgbG9uZy1ydW5uaW5nIHdvcmtmbG93LlxuICpcbiAqIEV4YW1wbGU6XG4gKiBgYGB0c1xuICogaW1wb3J0IHsgYWN0aXZpdHksIHdvcmtmbG93IH0gZnJvbSBcIkBldmVudHVhbC9jb3JlXCI7XG4gKlxuICogZXhwb3J0IGRlZmF1bHQgd29ya2Zsb3coXCJteS13b3JrZmxvd1wiLCBhc3luYyAoeyBuYW1lIH06IHsgbmFtZTogc3RyaW5nIH0pID0+IHtcbiAqICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaGVsbG8obmFtZSk7XG4gKiAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gKiAgIHJldHVybiBgeW91IHNhaWQgJHtyZXN1bHR9YDtcbiAqIH0pO1xuICpcbiAqIGNvbnN0IGhlbGxvID0gYWN0aXZpdHkoXCJoZWxsb1wiLCBhc3luYyAobmFtZTogc3RyaW5nKSA9PiB7XG4gKiAgIHJldHVybiBgaGVsbG8gJHtuYW1lfWA7XG4gKiB9KTtcbiAqIGBgYFxuICogQHBhcmFtIG5hbWUgYSBnbG9iYWxseSB1bmlxdWUgSUQgZm9yIHRoaXMgd29ya2Zsb3cuXG4gKiBAcGFyYW0gZGVmaW5pdGlvbiB0aGUgd29ya2Zsb3cgZGVmaW5pdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdvcmtmbG93PElucHV0ID0gYW55LCBPdXRwdXQgPSBhbnk+KFxuICBuYW1lOiBzdHJpbmcsXG4gIGRlZmluaXRpb246IFdvcmtmbG93SGFuZGxlcjxJbnB1dCwgT3V0cHV0PlxuKTogV29ya2Zsb3c8SW5wdXQsIE91dHB1dD47XG5leHBvcnQgZnVuY3Rpb24gd29ya2Zsb3c8SW5wdXQgPSBhbnksIE91dHB1dCA9IGFueT4oXG4gIG5hbWU6IHN0cmluZyxcbiAgb3B0czogV29ya2Zsb3dPcHRpb25zLFxuICBkZWZpbml0aW9uOiBXb3JrZmxvd0hhbmRsZXI8SW5wdXQsIE91dHB1dD5cbik6IFdvcmtmbG93PElucHV0LCBPdXRwdXQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHdvcmtmbG93PElucHV0ID0gYW55LCBPdXRwdXQgPSBhbnk+KFxuICBuYW1lOiBzdHJpbmcsXG4gIC4uLmFyZ3M6XG4gICAgfCBbb3B0czogV29ya2Zsb3dPcHRpb25zLCBkZWZpbml0aW9uOiBXb3JrZmxvd0hhbmRsZXI8SW5wdXQsIE91dHB1dD5dXG4gICAgfCBbZGVmaW5pdGlvbjogV29ya2Zsb3dIYW5kbGVyPElucHV0LCBPdXRwdXQ+XVxuKTogV29ya2Zsb3c8SW5wdXQsIE91dHB1dD4ge1xuICBjb25zdCBbb3B0cywgZGVmaW5pdGlvbl0gPSBhcmdzLmxlbmd0aCA9PT0gMSA/IFt1bmRlZmluZWQsIGFyZ3NbMF1dIDogYXJncztcbiAgaWYgKHdvcmtmbG93cygpLmhhcyhuYW1lKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgd29ya2Zsb3cgd2l0aCBuYW1lICcke25hbWV9JyBhbHJlYWR5IGV4aXN0c2ApO1xuICB9XG5cbiAgY29uc3Qgd29ya2Zsb3c6IFdvcmtmbG93PElucHV0LCBPdXRwdXQ+ID0gKChpbnB1dD86IGFueSkgPT4ge1xuICAgIGlmICghaXNPcmNoZXN0cmF0b3JXb3JrZXIoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkRpcmVjdCB3b3JrZmxvdyBpbnZvY2F0aW9uIGlzIG9ubHkgdmFsaWQgaW4gYSB3b3JrZmxvdywgdXNlIHdvcmtmbG93LnN0YXJ0RXhlY3V0aW9uIGluc3RlYWQuXCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNyZWF0ZVdvcmtmbG93Q2FsbChuYW1lLCBpbnB1dCwgb3B0cyk7XG4gIH0pIGFzIGFueTtcblxuICB3b3JrZmxvdy53b3JrZmxvd05hbWUgPSBuYW1lO1xuXG4gIHdvcmtmbG93LnN0YXJ0RXhlY3V0aW9uID0gYXN5bmMgZnVuY3Rpb24gKGlucHV0KSB7XG4gICAgY29uc3Qgd29ya2Zsb3dDbGllbnQgPSBnZXRXb3JrZmxvd0NsaWVudCgpO1xuICAgIGNvbnN0IGV4ZWN1dGlvbklkID0gYXdhaXQgd29ya2Zsb3dDbGllbnQuc3RhcnRXb3JrZmxvdyh7XG4gICAgICB3b3JrZmxvd05hbWU6IG5hbWUsXG4gICAgICBleGVjdXRpb25OYW1lOiBpbnB1dC5uYW1lLFxuICAgICAgaW5wdXQ6IGlucHV0LmlucHV0LFxuICAgICAgdGltZW91dFNlY29uZHM6IGlucHV0LnRpbWVvdXRTZWNvbmRzLFxuICAgICAgLi4ub3B0cyxcbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgRXhlY3V0aW9uSGFuZGxlKGV4ZWN1dGlvbklkLCB3b3JrZmxvd0NsaWVudCk7XG4gIH07XG5cbiAgd29ya2Zsb3cuZGVmaW5pdGlvbiA9IChcbiAgICBpc0NoYWluKGRlZmluaXRpb24pXG4gICAgICA/IGRlZmluaXRpb25cbiAgICAgIDogZnVuY3Rpb24qIChpbnB1dCwgY29udGV4dCk6IGFueSB7XG4gICAgICAgICAgcmV0dXJuIHlpZWxkIGRlZmluaXRpb24oaW5wdXQsIGNvbnRleHQpO1xuICAgICAgICB9XG4gICkgYXMgV29ya2Zsb3c8SW5wdXQsIE91dHB1dD5bXCJkZWZpbml0aW9uXCJdOyAvLyBzYWZlIHRvIGNhc3QgYmVjYXVzZSB3ZSByZWx5IG9uIHRyYW5zZm9ybWVyIChpdCBpcyBhbHdheXMgdGhlIGdlbmVyYXRvciBBUEkpXG4gIHdvcmtmbG93cygpLnNldChuYW1lLCB3b3JrZmxvdyk7XG4gIHJldHVybiB3b3JrZmxvdztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9ncmVzc1dvcmtmbG93UmVzdWx0IGV4dGVuZHMgV29ya2Zsb3dSZXN1bHQge1xuICBoaXN0b3J5OiBIaXN0b3J5U3RhdGVFdmVudFtdO1xufVxuXG4vKipcbiAqIEFkdmFuY2UgYSB3b3JrZmxvdyB1c2luZyBwcmV2aW91cyBoaXN0b3J5LCBuZXcgZXZlbnRzLCBhbmQgYSBwcm9ncmFtLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvZ3Jlc3NXb3JrZmxvdyhcbiAgcHJvZ3JhbTogV29ya2Zsb3csXG4gIGhpc3RvcnlFdmVudHM6IEhpc3RvcnlTdGF0ZUV2ZW50W10sXG4gIHRhc2tFdmVudHM6IEhpc3RvcnlTdGF0ZUV2ZW50W10sXG4gIHdvcmtmbG93Q29udGV4dDogV29ya2Zsb3dDb250ZXh0LFxuICBleGVjdXRpb25JZDogc3RyaW5nLFxuICBiYXNlVGltZTogRGF0ZSA9IG5ldyBEYXRlKClcbik6IFByb2dyZXNzV29ya2Zsb3dSZXN1bHQge1xuICAvLyBoaXN0b3JpY2FsIGV2ZW50cyBhbmQgaW5jb21pbmcgZXZlbnRzIHdpbGwgYmUgZmVkIGludG8gdGhlIHdvcmtmbG93IHRvIHJlc3VtZS9wcm9ncmVzcyBzdGF0ZVxuICBjb25zdCB1bmlxdWVUYXNrRXZlbnRzID0gZmlsdGVyRXZlbnRzPEhpc3RvcnlTdGF0ZUV2ZW50PihcbiAgICBoaXN0b3J5RXZlbnRzLFxuICAgIHRhc2tFdmVudHNcbiAgKTtcblxuICBjb25zdCBpbnB1dEV2ZW50cyA9IFsuLi5oaXN0b3J5RXZlbnRzLCAuLi51bmlxdWVUYXNrRXZlbnRzXTtcblxuICAvLyBHZW5lcmF0ZXMgZXZlbnRzIHRoYXQgYXJlIHRpbWUgc2Vuc2l0aXZlLCBsaWtlIHNsZWVwIGNvbXBsZXRlZCBldmVudHMuXG4gIGNvbnN0IHN5bnRoZXRpY0V2ZW50cyA9IGdlbmVyYXRlU3ludGhldGljRXZlbnRzKGlucHV0RXZlbnRzLCBiYXNlVGltZSk7XG5cbiAgY29uc3QgYWxsRXZlbnRzID0gWy4uLmlucHV0RXZlbnRzLCAuLi5zeW50aGV0aWNFdmVudHNdO1xuXG4gIGNvbnN0IHN0YXJ0RXZlbnQgPSBpbnB1dEV2ZW50cy5maW5kKGlzV29ya2Zsb3dTdGFydGVkKTtcblxuICBpZiAoIXN0YXJ0RXZlbnQpIHtcbiAgICB0aHJvdyBuZXcgRGV0ZXJtaW5pc21FcnJvcihcbiAgICAgIGBObyAke1dvcmtmbG93RXZlbnRUeXBlLldvcmtmbG93U3RhcnRlZH0gZm91bmQuYFxuICAgICk7XG4gIH1cblxuICBjb25zdCBjb250ZXh0OiBDb250ZXh0ID0ge1xuICAgIHdvcmtmbG93OiB3b3JrZmxvd0NvbnRleHQsXG4gICAgZXhlY3V0aW9uOiB7XG4gICAgICAuLi5zdGFydEV2ZW50LmNvbnRleHQsXG4gICAgICBpZDogZXhlY3V0aW9uSWQsXG4gICAgICBzdGFydFRpbWU6IHN0YXJ0RXZlbnQudGltZXN0YW1wLFxuICAgIH0sXG4gIH07XG5cbiAgLy8gZXhlY3V0ZSB3b3JrZmxvd1xuICBjb25zdCBpbnRlcnByZXRFdmVudHMgPSBhbGxFdmVudHMuZmlsdGVyKGlzSGlzdG9yeUV2ZW50KTtcblxuICBjb25zb2xlLmRlYnVnKFwiaGlzdG9yeSBldmVudHNcIiwgSlNPTi5zdHJpbmdpZnkoaGlzdG9yeUV2ZW50cykpO1xuICBjb25zb2xlLmRlYnVnKFwidGFzayBldmVudHNcIiwgSlNPTi5zdHJpbmdpZnkodGFza0V2ZW50cykpO1xuICBjb25zb2xlLmRlYnVnKFwic3ludGhldGljIGV2ZW50c1wiLCBKU09OLnN0cmluZ2lmeShzeW50aGV0aWNFdmVudHMpKTtcbiAgY29uc29sZS5kZWJ1ZyhcImludGVycHJldCBldmVudHNcIiwgSlNPTi5zdHJpbmdpZnkoaW50ZXJwcmV0RXZlbnRzKSk7XG5cbiAgdHJ5IHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uaW50ZXJwcmV0KFxuICAgICAgICBwcm9ncmFtLmRlZmluaXRpb24oc3RhcnRFdmVudC5pbnB1dCwgY29udGV4dCksXG4gICAgICAgIGludGVycHJldEV2ZW50c1xuICAgICAgKSxcbiAgICAgIGhpc3Rvcnk6IGFsbEV2ZW50cyxcbiAgICB9O1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICAvLyB0ZW1wb3JhcnkgZml4IHdoZW4gdGhlIGludGVycHJldGVyIGZhaWxzLCBidXQgdGhlIGFjdGl2aXRpZXMgYXJlIG5vdCBjbGVhcmVkLlxuICAgIGNsZWFyRXZlbnR1YWxDb2xsZWN0b3IoKTtcbiAgICB0aHJvdyBlcnI7XG4gIH1cbn1cblxuLyoqXG4gKiBHZW5lcmF0ZXMgc3ludGhldGljIGV2ZW50cywgZm9yIGV4YW1wbGUsIHtAbGluayBTbGVlcENvbXBsZXRlZH0gZXZlbnRzIHdoZW4gdGhlIHRpbWUgaGFzIHBhc3NlZCwgYnV0IGEgcmVhbCBjb21wbGV0ZWQgZXZlbnQgaGFzIG5vdCBjb21lIGluIHlldC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlU3ludGhldGljRXZlbnRzKFxuICBldmVudHM6IEhpc3RvcnlTdGF0ZUV2ZW50W10sXG4gIGJhc2VUaW1lOiBEYXRlXG4pOiBTbGVlcENvbXBsZXRlZFtdIHtcbiAgY29uc3QgdW5yZXNvbHZlZFNsZWVwOiBSZWNvcmQ8bnVtYmVyLCBTbGVlcFNjaGVkdWxlZD4gPSB7fTtcblxuICBjb25zdCBzbGVlcEV2ZW50cyA9IGV2ZW50cy5maWx0ZXIoXG4gICAgKGV2ZW50KTogZXZlbnQgaXMgU2xlZXBTY2hlZHVsZWQgfCBTbGVlcENvbXBsZXRlZCA9PlxuICAgICAgaXNTbGVlcFNjaGVkdWxlZChldmVudCkgfHwgaXNTbGVlcENvbXBsZXRlZChldmVudClcbiAgKTtcblxuICBmb3IgKGNvbnN0IGV2ZW50IG9mIHNsZWVwRXZlbnRzKSB7XG4gICAgaWYgKGlzU2xlZXBTY2hlZHVsZWQoZXZlbnQpKSB7XG4gICAgICB1bnJlc29sdmVkU2xlZXBbZXZlbnQuc2VxXSA9IGV2ZW50O1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWxldGUgdW5yZXNvbHZlZFNsZWVwW2V2ZW50LnNlcV07XG4gICAgfVxuICB9XG5cbiAgY29uc3Qgc3ludGhldGljU2xlZXBDb21wbGV0ZTogU2xlZXBDb21wbGV0ZWRbXSA9IE9iamVjdC52YWx1ZXMoXG4gICAgdW5yZXNvbHZlZFNsZWVwXG4gIClcbiAgICAuZmlsdGVyKFxuICAgICAgKGV2ZW50KSA9PiBuZXcgRGF0ZShldmVudC51bnRpbFRpbWUpLmdldFRpbWUoKSA8PSBiYXNlVGltZS5nZXRUaW1lKClcbiAgICApXG4gICAgLm1hcChcbiAgICAgIChlKSA9PlxuICAgICAgICAoe1xuICAgICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLlNsZWVwQ29tcGxldGVkLFxuICAgICAgICAgIHNlcTogZS5zZXEsXG4gICAgICAgICAgdGltZXN0YW1wOiBiYXNlVGltZS50b0lTT1N0cmluZygpLFxuICAgICAgICB9IHNhdGlzZmllcyBTbGVlcENvbXBsZXRlZClcbiAgICApO1xuXG4gIHJldHVybiBzeW50aGV0aWNTbGVlcENvbXBsZXRlO1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd29ya2Zsb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBSXFCO0FBR3JCLHlDQUE4QztBQUM5Qyw2REFVOEI7QUFDOUIsaURBQTJEO0FBQzNELCtEQUE4RDtBQUU5RCxpREFBMEQ7QUFDMUQseUNBQXFDO0FBNEVyQyxTQUFnQixjQUFjLENBQUMsSUFBWTtJQUN6QyxPQUFPLElBQUEscUJBQVMsR0FBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBRkQsd0NBRUM7QUErQkQsU0FBZ0IsUUFBUSxDQUN0QixJQUFZLEVBQ1osR0FBRyxJQUU2QztJQUVoRCxNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzNFLElBQUksSUFBQSxxQkFBUyxHQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMsdUJBQXVCLElBQUksa0JBQWtCLENBQUMsQ0FBQztLQUNoRTtJQUVELE1BQU0sUUFBUSxHQUE0QixDQUFDLENBQUMsS0FBVyxFQUFFLEVBQUU7UUFDekQsSUFBSSxDQUFDLElBQUEsK0JBQW9CLEdBQUUsRUFBRTtZQUMzQixNQUFNLElBQUksS0FBSyxDQUNiLDhGQUE4RixDQUMvRixDQUFDO1NBQ0g7UUFFRCxPQUFPLElBQUEscUNBQWtCLEVBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDLENBQVEsQ0FBQztJQUVWLFFBQVEsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBRTdCLFFBQVEsQ0FBQyxjQUFjLEdBQUcsS0FBSyxX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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB3b3JrZmxvd3MsXG4gIGNsZWFyRXZlbnR1YWxDb2xsZWN0b3IsXG4gIGdldFNlcnZpY2VDbGllbnQsXG59IGZyb20gXCIuL2dsb2JhbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBQcm9ncmFtIH0gZnJvbSBcIi4vaW50ZXJwcmV0LmpzXCI7XG5pbXBvcnQgdHlwZSB7IENvbnRleHQsIFdvcmtmbG93Q29udGV4dCB9IGZyb20gXCIuL2NvbnRleHQuanNcIjtcbmltcG9ydCB7IERldGVybWluaXNtRXJyb3IgfSBmcm9tIFwiLi9lcnJvci5qc1wiO1xuaW1wb3J0IHtcbiAgZmlsdGVyRXZlbnRzLFxuICBIaXN0b3J5U3RhdGVFdmVudCxcbiAgaXNIaXN0b3J5RXZlbnQsXG4gIGlzU2xlZXBDb21wbGV0ZWQsXG4gIGlzU2xlZXBTY2hlZHVsZWQsXG4gIGlzV29ya2Zsb3dTdGFydGVkLFxuICBTbGVlcENvbXBsZXRlZCxcbiAgU2xlZXBTY2hlZHVsZWQsXG4gIFdvcmtmbG93RXZlbnRUeXBlLFxufSBmcm9tIFwiLi93b3JrZmxvdy1ldmVudHMuanNcIjtcbmltcG9ydCB7IGludGVycHJldCwgV29ya2Zsb3dSZXN1bHQgfSBmcm9tIFwiLi9pbnRlcnByZXQuanNcIjtcbmltcG9ydCB7IGNyZWF0ZVdvcmtmbG93Q2FsbCB9IGZyb20gXCIuL2NhbGxzL3dvcmtmbG93LWNhbGwuanNcIjtcbmltcG9ydCB7IEF3YWl0ZWRFdmVudHVhbCB9IGZyb20gXCIuL2V2ZW50dWFsLmpzXCI7XG5pbXBvcnQgeyBpc09yY2hlc3RyYXRvcldvcmtlciB9IGZyb20gXCIuL3J1bnRpbWUvZmxhZ3MuanNcIjtcbmltcG9ydCB7IGlzQ2hhaW4gfSBmcm9tIFwiLi9jaGFpbi5qc1wiO1xuaW1wb3J0IHsgQ2hpbGRFeGVjdXRpb24sIEV4ZWN1dGlvbkhhbmRsZSB9IGZyb20gXCIuL2V4ZWN1dGlvbi5qc1wiO1xuaW1wb3J0IHsgU3RhcnRFeGVjdXRpb25SZXF1ZXN0IH0gZnJvbSBcIi4vc2VydmljZS1jbGllbnQuanNcIjtcblxuZXhwb3J0IHR5cGUgV29ya2Zsb3dIYW5kbGVyPElucHV0ID0gYW55LCBPdXRwdXQgPSBhbnk+ID0gKFxuICBpbnB1dDogSW5wdXQsXG4gIGNvbnRleHQ6IENvbnRleHRcbikgPT4gUHJvbWlzZTxPdXRwdXQ+IHwgUHJvZ3JhbTxPdXRwdXQ+O1xuXG4vKipcbiAqIE9wdGlvbnMgd2hpY2ggZGV0ZXJtaW5lIGhvdyBhIHdvcmtmbG93IG9wZXJhdGVzLlxuICpcbiAqIENhbiBiZSBwcm92aWRlZCBhdCB3b3JrZmxvdyBkZWZpbml0aW9uIHRpbWUgYW5kL29yIG92ZXJyaWRkZW4gYnkgdGhlIGNhbGxlciBvZiB7QGxpbmsgV29ya2Zsb3dDbGllbnQuc3RhcnRXb3JrZmxvd30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV29ya2Zsb3dPcHRpb25zIHtcbiAgLyoqXG4gICAqIE51bWJlciBvZiBzZWNvbmRzIGJlZm9yZSBleGVjdXRpb24gdGltZXMgb3V0LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHdvcmtmbG93IHdpbGwgbmV2ZXIgdGltZW91dC5cbiAgICovXG4gIHRpbWVvdXRTZWNvbmRzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgdHlwZSBXb3JrZmxvd091dHB1dDxXIGV4dGVuZHMgV29ya2Zsb3c+ID0gVyBleHRlbmRzIFdvcmtmbG93PFxuICBhbnksXG4gIGluZmVyIE91dFxuPlxuICA/IE91dFxuICA6IG5ldmVyO1xuXG5leHBvcnQgdHlwZSBXb3JrZmxvd0lucHV0PFcgZXh0ZW5kcyBXb3JrZmxvdz4gPSBXIGV4dGVuZHMgV29ya2Zsb3c8XG4gIGluZmVyIEluLFxuICBhbnlcbj5cbiAgPyBJblxuICA6IHVuZGVmaW5lZDtcblxuLyoqXG4gKiBBIHtAbGluayBXb3JrZmxvd30gaXMgYSBsb25nLXJ1bm5pbmcgcHJvY2VzcyB0aGF0IG9yY2hlc3RyYXRlcyBjYWxsc1xuICogdG8gb3RoZXIgc2VydmljZXMgaW4gYSBkdXJhYmxlIGFuZCBvYnNlcnZhYmxlIHdheS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvdzxpbiBJbnB1dCA9IGFueSwgT3V0cHV0ID0gYW55PiB7XG4gIC8qKlxuICAgKiBHbG9iYWxseSB1bmlxdWUgSUQgb2YgdGhpcyB7QGxpbmsgV29ya2Zsb3d9LlxuICAgKi9cbiAgd29ya2Zsb3dOYW1lOiBzdHJpbmc7XG5cbiAgb3B0aW9ucz86IFdvcmtmbG93T3B0aW9ucztcblxuICAvKipcbiAgICogSW52b2tlcyB0aGUge0BsaW5rIFdvcmtmbG93fSBmcm9tIHdpdGhpbiBhbm90aGVyIHdvcmtmbG93LlxuICAgKlxuICAgKiBUaGlzIGNhbiBvbmx5IGJlIGNhbGxlZCBmcm9tIHdpdGhpbiBhbm90aGVyIHdvcmtmbG93IGJlY2F1c2UgaXQncyBub3QgcG9zc2libGVcbiAgICogdG8gd2FpdCBmb3IgY29tcGxldGlvbiBzeW5jaHJvbm91c2x5IC0gaXQgcmVsaWVzIG9uIHRoZSBldmVudC1kcml2ZW4gZW52aXJvbm1lbnRcbiAgICogb2YgYSB3b3JrZmxvdyBleGVjdXRpb24uXG4gICAqXG4gICAqIFRvIHN0YXJ0IGEgd29ya2Zsb3cgZnJvbSBhbm90aGVyIGVudmlyb25tZW50LCB1c2Uge0BsaW5rIHN0YXJ0fS5cbiAgICovXG4gIChpbnB1dDogSW5wdXQpOiBQcm9taXNlPE91dHB1dD4gJiBDaGlsZEV4ZWN1dGlvbjtcblxuICAvKipcbiAgICogU3RhcnRzIGEgd29ya2Zsb3cgZXhlY3V0aW9uXG4gICAqL1xuICBzdGFydEV4ZWN1dGlvbihcbiAgICByZXF1ZXN0OiBPbWl0PFN0YXJ0RXhlY3V0aW9uUmVxdWVzdDxXb3JrZmxvdzxJbnB1dCwgT3V0cHV0Pj4sIFwid29ya2Zsb3dcIj5cbiAgKTogUHJvbWlzZTxFeGVjdXRpb25IYW5kbGU8V29ya2Zsb3c8SW5wdXQsIE91dHB1dD4+PjtcblxuICAvKipcbiAgICogQGludGVybmFsIC0gdGhpcyBpcyB0aGUgaW50ZXJuYWwgRFNMIHJlcHJlc2VudGF0aW9uIHRoYXQgcHJvZHVjZXMgYSB7QGxpbmsgUHJvZ3JhbX0gaW5zdGVhZCBvZiBhIFByb21pc2UuXG4gICAqL1xuICBkZWZpbml0aW9uOiAoXG4gICAgaW5wdXQ6IElucHV0LFxuICAgIGNvbnRleHQ6IENvbnRleHRcbiAgKSA9PiBQcm9ncmFtPEF3YWl0ZWRFdmVudHVhbDxPdXRwdXQ+Pjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvb2t1cFdvcmtmbG93KG5hbWU6IHN0cmluZyk6IFdvcmtmbG93IHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIHdvcmtmbG93cygpLmdldChuYW1lKTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGFuZCByZWdpc3RlcnMgYSBsb25nLXJ1bm5pbmcgd29ya2Zsb3cuXG4gKlxuICogRXhhbXBsZTpcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBhY3Rpdml0eSwgd29ya2Zsb3cgfSBmcm9tIFwiQGV2ZW50dWFsL2NvcmVcIjtcbiAqXG4gKiBleHBvcnQgZGVmYXVsdCB3b3JrZmxvdyhcIm15LXdvcmtmbG93XCIsIGFzeW5jICh7IG5hbWUgfTogeyBuYW1lOiBzdHJpbmcgfSkgPT4ge1xuICogICBjb25zdCByZXN1bHQgPSBhd2FpdCBoZWxsbyhuYW1lKTtcbiAqICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAqICAgcmV0dXJuIGB5b3Ugc2FpZCAke3Jlc3VsdH1gO1xuICogfSk7XG4gKlxuICogY29uc3QgaGVsbG8gPSBhY3Rpdml0eShcImhlbGxvXCIsIGFzeW5jIChuYW1lOiBzdHJpbmcpID0+IHtcbiAqICAgcmV0dXJuIGBoZWxsbyAke25hbWV9YDtcbiAqIH0pO1xuICogYGBgXG4gKiBAcGFyYW0gbmFtZSBhIGdsb2JhbGx5IHVuaXF1ZSBJRCBmb3IgdGhpcyB3b3JrZmxvdy5cbiAqIEBwYXJhbSBkZWZpbml0aW9uIHRoZSB3b3JrZmxvdyBkZWZpbml0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd29ya2Zsb3c8SW5wdXQgPSBhbnksIE91dHB1dCA9IGFueT4oXG4gIG5hbWU6IHN0cmluZyxcbiAgZGVmaW5pdGlvbjogV29ya2Zsb3dIYW5kbGVyPElucHV0LCBPdXRwdXQ+XG4pOiBXb3JrZmxvdzxJbnB1dCwgT3V0cHV0PjtcbmV4cG9ydCBmdW5jdGlvbiB3b3JrZmxvdzxJbnB1dCA9IGFueSwgT3V0cHV0ID0gYW55PihcbiAgbmFtZTogc3RyaW5nLFxuICBvcHRzOiBXb3JrZmxvd09wdGlvbnMsXG4gIGRlZmluaXRpb246IFdvcmtmbG93SGFuZGxlcjxJbnB1dCwgT3V0cHV0PlxuKTogV29ya2Zsb3c8SW5wdXQsIE91dHB1dD47XG5leHBvcnQgZnVuY3Rpb24gd29ya2Zsb3c8SW5wdXQgPSBhbnksIE91dHB1dCA9IGFueT4oXG4gIG5hbWU6IHN0cmluZyxcbiAgLi4uYXJnczpcbiAgICB8IFtvcHRzOiBXb3JrZmxvd09wdGlvbnMsIGRlZmluaXRpb246IFdvcmtmbG93SGFuZGxlcjxJbnB1dCwgT3V0cHV0Pl1cbiAgICB8IFtkZWZpbml0aW9uOiBXb3JrZmxvd0hhbmRsZXI8SW5wdXQsIE91dHB1dD5dXG4pOiBXb3JrZmxvdzxJbnB1dCwgT3V0cHV0PiB7XG4gIGNvbnN0IFtvcHRzLCBkZWZpbml0aW9uXSA9IGFyZ3MubGVuZ3RoID09PSAxID8gW3VuZGVmaW5lZCwgYXJnc1swXV0gOiBhcmdzO1xuICBpZiAod29ya2Zsb3dzKCkuaGFzKG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGB3b3JrZmxvdyB3aXRoIG5hbWUgJyR7bmFtZX0nIGFscmVhZHkgZXhpc3RzYCk7XG4gIH1cblxuICBjb25zdCB3b3JrZmxvdzogV29ya2Zsb3c8SW5wdXQsIE91dHB1dD4gPSAoKGlucHV0PzogYW55KSA9PiB7XG4gICAgaWYgKCFpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiRGlyZWN0IHdvcmtmbG93IGludm9jYXRpb24gaXMgb25seSB2YWxpZCBpbiBhIHdvcmtmbG93LCB1c2Ugd29ya2Zsb3cuc3RhcnRFeGVjdXRpb24gaW5zdGVhZC5cIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY3JlYXRlV29ya2Zsb3dDYWxsKG5hbWUsIGlucHV0LCBvcHRzKTtcbiAgfSkgYXMgYW55O1xuXG4gIHdvcmtmbG93LndvcmtmbG93TmFtZSA9IG5hbWU7XG5cbiAgd29ya2Zsb3cuc3RhcnRFeGVjdXRpb24gPSBhc3luYyBmdW5jdGlvbiAoaW5wdXQpIHtcbiAgICBjb25zdCBzZXJ2aWNlQ2xpZW50ID0gZ2V0U2VydmljZUNsaWVudCgpO1xuICAgIHJldHVybiBhd2FpdCBzZXJ2aWNlQ2xpZW50LnN0YXJ0RXhlY3V0aW9uPFdvcmtmbG93PElucHV0LCBPdXRwdXQ+Pih7XG4gICAgICB3b3JrZmxvdzogbmFtZSxcbiAgICAgIGV4ZWN1dGlvbk5hbWU6IGlucHV0LmV4ZWN1dGlvbk5hbWUsXG4gICAgICBpbnB1dDogaW5wdXQuaW5wdXQsXG4gICAgICB0aW1lb3V0U2Vjb25kczogaW5wdXQudGltZW91dFNlY29uZHMsXG4gICAgICAuLi5vcHRzLFxuICAgIH0pO1xuICB9O1xuXG4gIHdvcmtmbG93LmRlZmluaXRpb24gPSAoXG4gICAgaXNDaGFpbihkZWZpbml0aW9uKVxuICAgICAgPyBkZWZpbml0aW9uXG4gICAgICA6IGZ1bmN0aW9uKiAoaW5wdXQsIGNvbnRleHQpOiBhbnkge1xuICAgICAgICAgIHJldHVybiB5aWVsZCBkZWZpbml0aW9uKGlucHV0LCBjb250ZXh0KTtcbiAgICAgICAgfVxuICApIGFzIFdvcmtmbG93PElucHV0LCBPdXRwdXQ+W1wiZGVmaW5pdGlvblwiXTsgLy8gc2FmZSB0byBjYXN0IGJlY2F1c2Ugd2UgcmVseSBvbiB0cmFuc2Zvcm1lciAoaXQgaXMgYWx3YXlzIHRoZSBnZW5lcmF0b3IgQVBJKVxuICB3b3JrZmxvd3MoKS5zZXQobmFtZSwgd29ya2Zsb3cpO1xuICByZXR1cm4gd29ya2Zsb3c7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZ3Jlc3NXb3JrZmxvd1Jlc3VsdCBleHRlbmRzIFdvcmtmbG93UmVzdWx0IHtcbiAgaGlzdG9yeTogSGlzdG9yeVN0YXRlRXZlbnRbXTtcbn1cblxuLyoqXG4gKiBBZHZhbmNlIGEgd29ya2Zsb3cgdXNpbmcgcHJldmlvdXMgaGlzdG9yeSwgbmV3IGV2ZW50cywgYW5kIGEgcHJvZ3JhbS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb2dyZXNzV29ya2Zsb3coXG4gIHByb2dyYW06IFdvcmtmbG93LFxuICBoaXN0b3J5RXZlbnRzOiBIaXN0b3J5U3RhdGVFdmVudFtdLFxuICB0YXNrRXZlbnRzOiBIaXN0b3J5U3RhdGVFdmVudFtdLFxuICB3b3JrZmxvd0NvbnRleHQ6IFdvcmtmbG93Q29udGV4dCxcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgYmFzZVRpbWU6IERhdGUgPSBuZXcgRGF0ZSgpXG4pOiBQcm9ncmVzc1dvcmtmbG93UmVzdWx0IHtcbiAgLy8gaGlzdG9yaWNhbCBldmVudHMgYW5kIGluY29taW5nIGV2ZW50cyB3aWxsIGJlIGZlZCBpbnRvIHRoZSB3b3JrZmxvdyB0byByZXN1bWUvcHJvZ3Jlc3Mgc3RhdGVcbiAgY29uc3QgdW5pcXVlVGFza0V2ZW50cyA9IGZpbHRlckV2ZW50czxIaXN0b3J5U3RhdGVFdmVudD4oXG4gICAgaGlzdG9yeUV2ZW50cyxcbiAgICB0YXNrRXZlbnRzXG4gICk7XG5cbiAgY29uc3QgaW5wdXRFdmVudHMgPSBbLi4uaGlzdG9yeUV2ZW50cywgLi4udW5pcXVlVGFza0V2ZW50c107XG5cbiAgLy8gR2VuZXJhdGVzIGV2ZW50cyB0aGF0IGFyZSB0aW1lIHNlbnNpdGl2ZSwgbGlrZSBzbGVlcCBjb21wbGV0ZWQgZXZlbnRzLlxuICBjb25zdCBzeW50aGV0aWNFdmVudHMgPSBnZW5lcmF0ZVN5bnRoZXRpY0V2ZW50cyhpbnB1dEV2ZW50cywgYmFzZVRpbWUpO1xuXG4gIGNvbnN0IGFsbEV2ZW50cyA9IFsuLi5pbnB1dEV2ZW50cywgLi4uc3ludGhldGljRXZlbnRzXTtcblxuICBjb25zdCBzdGFydEV2ZW50ID0gaW5wdXRFdmVudHMuZmluZChpc1dvcmtmbG93U3RhcnRlZCk7XG5cbiAgaWYgKCFzdGFydEV2ZW50KSB7XG4gICAgdGhyb3cgbmV3IERldGVybWluaXNtRXJyb3IoXG4gICAgICBgTm8gJHtXb3JrZmxvd0V2ZW50VHlwZS5Xb3JrZmxvd1N0YXJ0ZWR9IGZvdW5kLmBcbiAgICApO1xuICB9XG5cbiAgY29uc3QgY29udGV4dDogQ29udGV4dCA9IHtcbiAgICB3b3JrZmxvdzogd29ya2Zsb3dDb250ZXh0LFxuICAgIGV4ZWN1dGlvbjoge1xuICAgICAgLi4uc3RhcnRFdmVudC5jb250ZXh0LFxuICAgICAgaWQ6IGV4ZWN1dGlvbklkLFxuICAgICAgc3RhcnRUaW1lOiBzdGFydEV2ZW50LnRpbWVzdGFtcCxcbiAgICB9LFxuICB9O1xuXG4gIC8vIGV4ZWN1dGUgd29ya2Zsb3dcbiAgY29uc3QgaW50ZXJwcmV0RXZlbnRzID0gYWxsRXZlbnRzLmZpbHRlcihpc0hpc3RvcnlFdmVudCk7XG5cbiAgY29uc29sZS5kZWJ1ZyhcImhpc3RvcnkgZXZlbnRzXCIsIEpTT04uc3RyaW5naWZ5KGhpc3RvcnlFdmVudHMpKTtcbiAgY29uc29sZS5kZWJ1ZyhcInRhc2sgZXZlbnRzXCIsIEpTT04uc3RyaW5naWZ5KHRhc2tFdmVudHMpKTtcbiAgY29uc29sZS5kZWJ1ZyhcInN5bnRoZXRpYyBldmVudHNcIiwgSlNPTi5zdHJpbmdpZnkoc3ludGhldGljRXZlbnRzKSk7XG4gIGNvbnNvbGUuZGVidWcoXCJpbnRlcnByZXQgZXZlbnRzXCIsIEpTT04uc3RyaW5naWZ5KGludGVycHJldEV2ZW50cykpO1xuXG4gIHRyeSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmludGVycHJldChcbiAgICAgICAgcHJvZ3JhbS5kZWZpbml0aW9uKHN0YXJ0RXZlbnQuaW5wdXQsIGNvbnRleHQpLFxuICAgICAgICBpbnRlcnByZXRFdmVudHNcbiAgICAgICksXG4gICAgICBoaXN0b3J5OiBhbGxFdmVudHMsXG4gICAgfTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgLy8gdGVtcG9yYXJ5IGZpeCB3aGVuIHRoZSBpbnRlcnByZXRlciBmYWlscywgYnV0IHRoZSBhY3Rpdml0aWVzIGFyZSBub3QgY2xlYXJlZC5cbiAgICBjbGVhckV2ZW50dWFsQ29sbGVjdG9yKCk7XG4gICAgdGhyb3cgZXJyO1xuICB9XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIHN5bnRoZXRpYyBldmVudHMsIGZvciBleGFtcGxlLCB7QGxpbmsgU2xlZXBDb21wbGV0ZWR9IGV2ZW50cyB3aGVuIHRoZSB0aW1lIGhhcyBwYXNzZWQsIGJ1dCBhIHJlYWwgY29tcGxldGVkIGV2ZW50IGhhcyBub3QgY29tZSBpbiB5ZXQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVN5bnRoZXRpY0V2ZW50cyhcbiAgZXZlbnRzOiBIaXN0b3J5U3RhdGVFdmVudFtdLFxuICBiYXNlVGltZTogRGF0ZVxuKTogU2xlZXBDb21wbGV0ZWRbXSB7XG4gIGNvbnN0IHVucmVzb2x2ZWRTbGVlcDogUmVjb3JkPG51bWJlciwgU2xlZXBTY2hlZHVsZWQ+ID0ge307XG5cbiAgY29uc3Qgc2xlZXBFdmVudHMgPSBldmVudHMuZmlsdGVyKFxuICAgIChldmVudCk6IGV2ZW50IGlzIFNsZWVwU2NoZWR1bGVkIHwgU2xlZXBDb21wbGV0ZWQgPT5cbiAgICAgIGlzU2xlZXBTY2hlZHVsZWQoZXZlbnQpIHx8IGlzU2xlZXBDb21wbGV0ZWQoZXZlbnQpXG4gICk7XG5cbiAgZm9yIChjb25zdCBldmVudCBvZiBzbGVlcEV2ZW50cykge1xuICAgIGlmIChpc1NsZWVwU2NoZWR1bGVkKGV2ZW50KSkge1xuICAgICAgdW5yZXNvbHZlZFNsZWVwW2V2ZW50LnNlcV0gPSBldmVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgZGVsZXRlIHVucmVzb2x2ZWRTbGVlcFtldmVudC5zZXFdO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHN5bnRoZXRpY1NsZWVwQ29tcGxldGU6IFNsZWVwQ29tcGxldGVkW10gPSBPYmplY3QudmFsdWVzKFxuICAgIHVucmVzb2x2ZWRTbGVlcFxuICApXG4gICAgLmZpbHRlcihcbiAgICAgIChldmVudCkgPT4gbmV3IERhdGUoZXZlbnQudW50aWxUaW1lKS5nZXRUaW1lKCkgPD0gYmFzZVRpbWUuZ2V0VGltZSgpXG4gICAgKVxuICAgIC5tYXAoXG4gICAgICAoZSkgPT5cbiAgICAgICAgKHtcbiAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5TbGVlcENvbXBsZXRlZCxcbiAgICAgICAgICBzZXE6IGUuc2VxLFxuICAgICAgICAgIHRpbWVzdGFtcDogYmFzZVRpbWUudG9JU09TdHJpbmcoKSxcbiAgICAgICAgfSBzYXRpc2ZpZXMgU2xlZXBDb21wbGV0ZWQpXG4gICAgKTtcblxuICByZXR1cm4gc3ludGhldGljU2xlZXBDb21wbGV0ZTtcbn1cbiJdfQ==

@@ -1,2 +0,2 @@

import { CompleteActivityRequest } from "./runtime/clients/workflow-client.js";
import { SendActivitySuccessRequest } from "./service-client.js";
export interface ActivityOptions {

@@ -24,3 +24,3 @@ /**

/**
* Complete an activity request by its {@link CompleteActivityRequest.activityToken}.
* Complete an activity request by its {@link SendActivitySuccessRequest.activityToken}.
*

@@ -45,3 +45,3 @@ * This method is used in conjunction with {@link asyncResult} in an activity

*/
complete(request: CompleteActivityRequest<UnwrapAsync<Awaited<Output>>>): Promise<void>;
complete(request: Omit<SendActivitySuccessRequest<UnwrapAsync<Awaited<Output>>>, "type">): Promise<void>;
activityID: string;

@@ -48,0 +48,0 @@ }

import { createActivityCall } from "./calls/activity-call.js";
import { callableActivities, getActivityContext, getWorkflowClient, } from "./global.js";
import { callableActivities, getActivityContext, getServiceClient, } from "./global.js";
import { isActivityWorker, isOrchestratorWorker } from "./runtime/flags.js";

@@ -57,3 +57,3 @@ const AsyncTokenSymbol = Symbol.for("eventual:AsyncToken");

func.complete = async function (request) {
return getWorkflowClient().completeActivity(request);
return getServiceClient().sendActivitySuccess(request);
};

@@ -72,2 +72,2 @@ func.activityID = activityID;

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aXZpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsaUJBQWlCLEdBQ2xCLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBdUU1RSxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQVUzRCxNQUFNLFVBQVUsYUFBYSxDQUFDLEdBQVE7SUFDcEMsT0FBTyxDQUFDLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLGdCQUFnQixDQUFDO0FBQzdELENBQUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFdBQVcsQ0FDL0IsWUFBcUQ7SUFFckQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUU7UUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO0tBQzVFO0lBQ0QsTUFBTSxlQUFlLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQztJQUM3QyxJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQ2IsOEZBQThGLENBQy9GLENBQUM7S0FDSDtJQUNELE1BQU0sWUFBWSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNsRCxPQUFPO1FBQ0wsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLGdCQUFvRDtLQUN6RSxDQUFDO0FBQ0osQ0FBQztBQXdCRCxNQUFNLFVBQVUsUUFBUSxDQUN0QixVQUFrQixFQUNsQixHQUFHLElBRThDO0lBRWpELE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDeEUseURBQXlEO0lBQ3pELGtCQUFrQixFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsT0FBTyxDQUFDO0lBQzNDLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQXFELEVBQUUsRUFBRTtRQUN6RSxJQUFJLG9CQUFvQixFQUFFLEVBQUU7WUFDMUIsK0ZBQStGO1lBQy9GLE9BQU8sa0JBQWtCLENBQ3ZCLFVBQVUsRUFDVixJQUFJLEVBQ0osSUFBSSxFQUFFLGNBQWMsRUFDcEIsSUFBSSxFQUFFLGdCQUFnQixDQUNoQixDQUFDO1NBQ1Y7YUFBTTtZQUNMLDRFQUE0RTtZQUM1RSxPQUFPLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQyxDQUF3QyxDQUFDO0lBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxXQUFXLE9BQU87UUFDckMsT0FBTyxpQkFBaUIsRUFBRSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELENBQUMsQ0FBQztJQUNGLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQzdCLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyxVQUFrQjtJQUVsQixPQUFPLGtCQUFrQixFQUFFLENBQUMsVUFBVSxDQUF5QixDQUFDO0FBQ2xFLENBQUM7QUFFRCxNQUFNLFVBQVUsd0JBQXdCO0lBQ3RDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7QUFDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFjdGl2aXR5Q2FsbCB9IGZyb20gXCIuL2NhbGxzL2FjdGl2aXR5LWNhbGwuanNcIjtcbmltcG9ydCB7XG4gIGNhbGxhYmxlQWN0aXZpdGllcyxcbiAgZ2V0QWN0aXZpdHlDb250ZXh0LFxuICBnZXRXb3JrZmxvd0NsaWVudCxcbn0gZnJvbSBcIi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgeyBDb21wbGV0ZUFjdGl2aXR5UmVxdWVzdCB9IGZyb20gXCIuL3J1bnRpbWUvY2xpZW50cy93b3JrZmxvdy1jbGllbnQuanNcIjtcbmltcG9ydCB7IGlzQWN0aXZpdHlXb3JrZXIsIGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vcnVudGltZS9mbGFncy5qc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBIb3cgbG9uZyB0aGUgd29ya2Zsb3cgd2lsbCB3YWl0IGZvciB0aGUgYWN0aXZpdHkgdG8gY29tcGxldGUgb3IgZmFpbC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB3b3JrZmxvdyB3aWxsIHJ1biBmb3JldmVyLlxuICAgKi9cbiAgdGltZW91dFNlY29uZHM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBGb3IgbG9uZyBydW5uaW5nIGFjdGl2aXRpZXMsIGl0IGlzIHN1Z2dlc3RlZCB0aGF0IHRoZXkgcmVwb3J0IGJhY2sgdGhhdCB0aGV5XG4gICAqIGFyZSBzdGlsbCBpbiBwcm9ncmVzcyB0byBhdm9pZCB3YWl0aW5nIGZvcmV2ZXIgb3IgdW50aWwgYSBsb25nIHRpbWVvdXQgd2hlblxuICAgKiBzb21ldGhpbmcgZ29lcyB3cm9uZy5cbiAgICpcbiAgICogV2hlbiBzZXQgdG8gYSBwb3NpdGl2ZSBudW1iZXIsIHRoZSBhY3Rpdml0eSBtdXN0IGNhbGwge0BsaW5rIGhlYXJ0YmVhdH0gb3JcbiAgICoge0BsaW5rIFdvcmtmbG93Q2xpZW50LmhlYXJ0YmVhdEFjdGl2aXR5fSBhdCBsZWFzdCBldmVyeSBoZWFydGJlYXRTZWNvbmRzLlxuICAgKlxuICAgKiBJZiBpdCBmYWlscyB0byBkbyBzbywgdGhlIHdvcmtmbG93IHdpbGwgY2FuY2VsIHRoZSBhY3Rpdml0eSBhbmQgdGhyb3cgYW4gZXJyb3IuXG4gICAqL1xuICBoZWFydGJlYXRTZWNvbmRzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzIGV4dGVuZHMgYW55W10sIE91dHB1dCA9IGFueT4ge1xuICAoLi4uYXJnczogQXJndW1lbnRzKTogUHJvbWlzZTxBd2FpdGVkPFVud3JhcEFzeW5jPE91dHB1dD4+PjtcblxuICAvKipcbiAgICogQ29tcGxldGUgYW4gYWN0aXZpdHkgcmVxdWVzdCBieSBpdHMge0BsaW5rIENvbXBsZXRlQWN0aXZpdHlSZXF1ZXN0LmFjdGl2aXR5VG9rZW59LlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGgge0BsaW5rIGFzeW5jUmVzdWx0fSBpbiBhbiBhY3Rpdml0eVxuICAgKiB0byBwZXJmb3JtIGFzeW5jaHJvbm91cywgbG9uZy1ydW5uaW5nIGNvbXB1dGF0aW9ucy4gRm9yIGV4YW1wbGU6XG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IHRva2VuRXZlbnQgPSBldmVudChcInRva2VuXCIpO1xuICAgKlxuICAgKiBjb25zdCBhc3luY0FjdGl2aXR5ID0gYWN0aXZpdHkoXCJhc3luY1wiLCAoKSA9PiB7XG4gICAqICAgcmV0dXJuIGFzeW5jUmVzdWx0PHN0cmluZz4odG9rZW4gPT4gdG9rZW5FdmVudC5wdWJsaXNoKHsgdG9rZW4gfSkpO1xuICAgKiB9KTtcbiAgICpcbiAgICogdG9rZW5FdmVudC5vbihhc3luYyAoe3Rva2VufSkgPT4ge1xuICAgKiAgIGF3YWl0IGFzeW5jQWN0aXZpdHkuY29tcGxldGUoe1xuICAgKiAgICAgYWN0aXZpdHlUb2tlbjogdG9rZW4sXG4gICAqICAgICByZXN1bHQ6IFwiZG9uZVwiXG4gICAqICAgfSk7XG4gICAqIH0pXG4gICAqIGBgYFxuICAgKi9cbiAgY29tcGxldGUoXG4gICAgcmVxdWVzdDogQ29tcGxldGVBY3Rpdml0eVJlcXVlc3Q8VW53cmFwQXN5bmM8QXdhaXRlZDxPdXRwdXQ+Pj5cbiAgKTogUHJvbWlzZTx2b2lkPjtcblxuICBhY3Rpdml0eUlEOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aXZpdHlIYW5kbGVyPEFyZ3VtZW50cyBleHRlbmRzIGFueVtdLCBPdXRwdXQgPSBhbnk+IHtcbiAgKC4uLmFyZ3M6IEFyZ3VtZW50cyk6XG4gICAgfCBQcm9taXNlPEF3YWl0ZWQ8T3V0cHV0Pj5cbiAgICB8IE91dHB1dFxuICAgIHwgQXN5bmNSZXN1bHQ8T3V0cHV0PlxuICAgIHwgUHJvbWlzZTxBc3luY1Jlc3VsdDxBd2FpdGVkPE91dHB1dD4+Pjtcbn1cblxuZXhwb3J0IHR5cGUgVW53cmFwQXN5bmM8T3V0cHV0PiA9IE91dHB1dCBleHRlbmRzIEFzeW5jUmVzdWx0PGluZmVyIE8+XG4gID8gT1xuICA6IE91dHB1dDtcblxuZXhwb3J0IHR5cGUgQWN0aXZpdHlBcmd1bWVudHM8QSBleHRlbmRzIEFjdGl2aXR5RnVuY3Rpb248YW55LCBhbnk+PiA9XG4gIEEgZXh0ZW5kcyBBY3Rpdml0eUZ1bmN0aW9uPGluZmVyIEFyZ3VtZW50cyBleHRlbmRzIGFueVtdPiA/IEFyZ3VtZW50cyA6IG5ldmVyO1xuXG5leHBvcnQgdHlwZSBBY3Rpdml0eU91dHB1dDxBIGV4dGVuZHMgQWN0aXZpdHlGdW5jdGlvbjxhbnksIGFueT4+ID1cbiAgQSBleHRlbmRzIEFjdGl2aXR5RnVuY3Rpb248YW55LCBpbmZlciBPdXRwdXQ+ID8gVW53cmFwQXN5bmM8T3V0cHV0PiA6IG5ldmVyO1xuXG5jb25zdCBBc3luY1Rva2VuU3ltYm9sID0gU3ltYm9sLmZvcihcImV2ZW50dWFsOkFzeW5jVG9rZW5cIik7XG5cbi8qKlxuICogV2hlbiByZXR1cm5lZCBmcm9tIGFuIGFjdGl2aXR5LCB0aGUgYWN0aXZpdHkgd2lsbCBiZWNvbWUgYXN5bmMsXG4gKiBhbGxvd2luZyBpdCB0byBydW4gXCJmb3JldmVyXCIuIFRoZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFzeW5jUmVzdWx0PE91dHB1dCA9IGFueT4ge1xuICBbQXN5bmNUb2tlblN5bWJvbF06IHR5cGVvZiBBc3luY1Rva2VuU3ltYm9sICYgT3V0cHV0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBc3luY1Jlc3VsdChvYmo6IGFueSk6IG9iaiBpcyBBc3luY1Jlc3VsdCB7XG4gIHJldHVybiAhIW9iaiAmJiBvYmpbQXN5bmNUb2tlblN5bWJvbF0gPT09IEFzeW5jVG9rZW5TeW1ib2w7XG59XG5cbi8qKlxuICogV2hlbiByZXR1cm5lZCBmcm9tIGFuIHtAbGluayBhY3Rpdml0eX0sIHRlbGxzIHRoZSBzeXN0ZW0gdG8gbWFrZSB0aGUgY3VycmVudFxuICogYWN0aXZpdHkgYXN5bmMuIFRoaXMgYWxsb3dzIHRoZSBhY3Rpdml0eSB0byBkZWZlciBzZW5kaW5nIGEgcmVzcG9uc2UgZnJvbSB0aGVcbiAqIGN1cnJlbnQgZnVuY3Rpb24gYW5kIGluc3RlYWQgY29tcGxldGUgdGhlIGFjdGl2aXR5IHdpdGgge0BsaW5rIFdvcmtmbG93Q2xpZW50LmNvbXBsZXRlQWN0aXZpdHl9LlxuICpcbiAqIGBgYHRzXG4gKiBjb25zdCBzcXMgPSBuZXcgU1FTQ2xpZW50KCk7XG4gKiBhY3Rpdml0eShcIm15QWN0aXZpdHlcIiwgKCkgPT4ge1xuICogICAgLy8gdGVsbHMgdGhlIHN5c3RlbSB0aGF0IHRoZSBjb21wbGV0ZUFjdGl2aXR5IGZ1bmN0aW9uIHdpbGwgYmUgY2FsbGVkIGxhdGVyIHdpdGggYSBzdHJpbmcgcmVzdWx0LlxuICogICAgcmV0dXJuIGFzeW5jUmVzdWx0PHN0cmluZz4oYXN5bmMgKGFjdGl2aXR5VG9rZW4pID0+IHtcbiAqICAgICAgIC8vIGJlZm9yZSBleGl0aW5nLCBzZW5kIHRoZSBhY3Rpdml0eVRva2VuIHRvIGEgc3FzIHF1ZXVlIHRvIGJlIGNvbXBsZXRlZCBsYXRlclxuICogICAgICAgLy8geW91IGNvdWxkIGludm9rZSBhbnkgc2VydmljZSBoZXJlXG4gKiAgICAgICBhd2FpdCBzcXMuc2VuZChuZXcgU2VuZE1lc3NhZ2VDb21tYW5kKHsgLi4uLCBtZXNzYWdlOiBKU09ObC5zdHJpbmdpZnkoeyBhY3Rpdml0eVRva2VuIH0pKSk7XG4gKiAgICB9KTtcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdG9rZW5Db250ZXh0IGlzIGEgY2FsbGJhY2sgd2hpY2ggcHJvdmlkZXMgdGhlIGFjdGl2aXR5VG9rZW4uIFRoZSBhY3Rpdml0eSB0b2tlbiBpcyB1c2VkXG4gKiAgICAgICAgICAgICAgICAgICAgIHRvIGNvbXBsZXRlQWN0aXZpdHkgYW5kIGhlYXJ0YmVhdEFjdGl2aXR5IGZyb20gb3V0c2lkZSBvZiB0aGVcbiAqICAgICAgICAgICAgICAgICAgICAgYWN0aXZpdHkuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhc3luY1Jlc3VsdDxPdXRwdXQgPSBhbnk+KFxuICB0b2tlbkNvbnRleHQ6ICh0b2tlbjogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+IHwgdm9pZFxuKTogUHJvbWlzZTxBc3luY1Jlc3VsdDxPdXRwdXQ+PiB7XG4gIGlmICghaXNBY3Rpdml0eVdvcmtlcigpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiYXN5bmNSZXN1bHQgY2FuIG9ubHkgYmUgY2FsbGVkIGZyb20gd2l0aGluIGFuIGFjdGl2aXR5LlwiKTtcbiAgfVxuICBjb25zdCBhY3Rpdml0eUNvbnRleHQgPSBnZXRBY3Rpdml0eUNvbnRleHQoKTtcbiAgaWYgKCFhY3Rpdml0eUNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcIkFjdGl2aXR5IGNvbnRleHQgaGFzIG5vdCBiZWVuIHNldCB5ZXQsIGFzeW5jUmVzdWx0IGNhbiBvbmx5IGJlIHVzZWQgZnJvbSB3aXRoaW4gYW4gYWN0aXZpdHkuXCJcbiAgICApO1xuICB9XG4gIGF3YWl0IHRva2VuQ29udGV4dChhY3Rpdml0eUNvbnRleHQuYWN0aXZpdHlUb2tlbik7XG4gIHJldHVybiB7XG4gICAgW0FzeW5jVG9rZW5TeW1ib2xdOiBBc3luY1Rva2VuU3ltYm9sIGFzIHR5cGVvZiBBc3luY1Rva2VuU3ltYm9sICYgT3V0cHV0LFxuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5Q29udGV4dCB7XG4gIHdvcmtmbG93TmFtZTogc3RyaW5nO1xuICBleGVjdXRpb25JZDogc3RyaW5nO1xuICBhY3Rpdml0eVRva2VuOiBzdHJpbmc7XG4gIHNjaGVkdWxlZFRpbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZWdpc3RlcnMgYSBmdW5jdGlvbiBhcyBhbiBBY3Rpdml0eS5cbiAqXG4gKiBAcGFyYW0gYWN0aXZpdHlJRCBhIHN0cmluZyB0aGF0IHVuaXF1ZWx5IGlkZW50aWZpZXMgdGhlIEFjdGl2aXR5IHdpdGhpbiBhIHNpbmdsZSB3b3JrZmxvdyBjb250ZXh0LlxuICogQHBhcmFtIGhhbmRsZXIgdGhlIGZ1bmN0aW9uIHRoYXQgaGFuZGxlcyB0aGUgYWN0aXZpdHlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGl2aXR5PEFyZ3VtZW50cyBleHRlbmRzIGFueVtdLCBPdXRwdXQgPSBhbnk+KFxuICBhY3Rpdml0eUlEOiBzdHJpbmcsXG4gIGhhbmRsZXI6IEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMsIE91dHB1dD5cbik6IEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+O1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGl2aXR5PEFyZ3VtZW50cyBleHRlbmRzIGFueVtdLCBPdXRwdXQgPSBhbnk+KFxuICBhY3Rpdml0eUlEOiBzdHJpbmcsXG4gIG9wdHM6IEFjdGl2aXR5T3B0aW9ucyxcbiAgaGFuZGxlcjogQWN0aXZpdHlIYW5kbGVyPEFyZ3VtZW50cywgT3V0cHV0PlxuKTogQWN0aXZpdHlGdW5jdGlvbjxBcmd1bWVudHMsIE91dHB1dD47XG5leHBvcnQgZnVuY3Rpb24gYWN0aXZpdHk8QXJndW1lbnRzIGV4dGVuZHMgYW55W10sIE91dHB1dCA9IGFueT4oXG4gIGFjdGl2aXR5SUQ6IHN0cmluZyxcbiAgLi4uYXJnczpcbiAgICB8IFtvcHRzOiBBY3Rpdml0eU9wdGlvbnMsIGhhbmRsZXI6IEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMsIE91dHB1dD5dXG4gICAgfCBbaGFuZGxlcjogQWN0aXZpdHlIYW5kbGVyPEFyZ3VtZW50cywgT3V0cHV0Pl1cbik6IEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+IHtcbiAgY29uc3QgW29wdHMsIGhhbmRsZXJdID0gYXJncy5sZW5ndGggPT09IDEgPyBbdW5kZWZpbmVkLCBhcmdzWzBdXSA6IGFyZ3M7XG4gIC8vIHJlZ2lzdGVyIHRoZSBoYW5kbGVyIHRvIGJlIGxvb2tlZCB1cCBkdXJpbmcgZXhlY3V0aW9uLlxuICBjYWxsYWJsZUFjdGl2aXRpZXMoKVthY3Rpdml0eUlEXSA9IGhhbmRsZXI7XG4gIGNvbnN0IGZ1bmMgPSAoKC4uLmFyZ3M6IFBhcmFtZXRlcnM8QWN0aXZpdHlGdW5jdGlvbjxBcmd1bWVudHMsIE91dHB1dD4+KSA9PiB7XG4gICAgaWYgKGlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICAgIC8vIGlmIHdlJ3JlIGluIHRoZSBvcmNoZXN0cmF0b3IsIHJldHVybiBhIGNvbW1hbmQgdG8gaW52b2tlIHRoZSBhY3Rpdml0eSBpbiB0aGUgd29ya2VyIGZ1bmN0aW9uXG4gICAgICByZXR1cm4gY3JlYXRlQWN0aXZpdHlDYWxsKFxuICAgICAgICBhY3Rpdml0eUlELFxuICAgICAgICBhcmdzLFxuICAgICAgICBvcHRzPy50aW1lb3V0U2Vjb25kcyxcbiAgICAgICAgb3B0cz8uaGVhcnRiZWF0U2Vjb25kc1xuICAgICAgKSBhcyBhbnk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGNhbGxpbmcgdGhlIGFjdGl2aXR5IGZyb20gb3V0c2lkZSB0aGUgb3JjaGVzdHJhdG9yIGp1c3QgY2FsbHMgdGhlIGhhbmRsZXJcbiAgICAgIHJldHVybiBoYW5kbGVyKC4uLmFyZ3MpO1xuICAgIH1cbiAgfSkgYXMgQWN0aXZpdHlGdW5jdGlvbjxBcmd1bWVudHMsIE91dHB1dD47XG4gIGZ1bmMuY29tcGxldGUgPSBhc3luYyBmdW5jdGlvbiAocmVxdWVzdCkge1xuICAgIHJldHVybiBnZXRXb3JrZmxvd0NsaWVudCgpLmNvbXBsZXRlQWN0aXZpdHkocmVxdWVzdCk7XG4gIH07XG4gIGZ1bmMuYWN0aXZpdHlJRCA9IGFjdGl2aXR5SUQ7XG4gIHJldHVybiBmdW5jO1xufVxuXG4vKipcbiAqIFJldHJpZXZlIGFuIGFjdGl2aXR5IGZ1bmN0aW9uIHRoYXQgaGFzIGJlZW4gcmVnaXN0ZXJlZCBpbiBhIHdvcmtmbG93LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2FsbGFibGVBY3Rpdml0eShcbiAgYWN0aXZpdHlJZDogc3RyaW5nXG4pOiBBY3Rpdml0eUhhbmRsZXI8YW55PiB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBjYWxsYWJsZUFjdGl2aXRpZXMoKVthY3Rpdml0eUlkXSBhcyBBY3Rpdml0eUhhbmRsZXI8YW55Pjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENhbGxhYmxlQWN0aXZpdHlOYW1lcygpIHtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKGNhbGxhYmxlQWN0aXZpdGllcygpKTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aXZpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsZ0JBQWdCLEdBQ2pCLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBMkU1RSxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQVUzRCxNQUFNLFVBQVUsYUFBYSxDQUFDLEdBQVE7SUFDcEMsT0FBTyxDQUFDLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLGdCQUFnQixDQUFDO0FBQzdELENBQUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFdBQVcsQ0FDL0IsWUFBcUQ7SUFFckQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUU7UUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO0tBQzVFO0lBQ0QsTUFBTSxlQUFlLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQztJQUM3QyxJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQ2IsOEZBQThGLENBQy9GLENBQUM7S0FDSDtJQUNELE1BQU0sWUFBWSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNsRCxPQUFPO1FBQ0wsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLGdCQUFvRDtLQUN6RSxDQUFDO0FBQ0osQ0FBQztBQXdCRCxNQUFNLFVBQVUsUUFBUSxDQUN0QixVQUFrQixFQUNsQixHQUFHLElBRThDO0lBRWpELE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDeEUseURBQXlEO0lBQ3pELGtCQUFrQixFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsT0FBTyxDQUFDO0lBQzNDLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQXFELEVBQUUsRUFBRTtRQUN6RSxJQUFJLG9CQUFvQixFQUFFLEVBQUU7WUFDMUIsK0ZBQStGO1lBQy9GLE9BQU8sa0JBQWtCLENBQ3ZCLFVBQVUsRUFDVixJQUFJLEVBQ0osSUFBSSxFQUFFLGNBQWMsRUFDcEIsSUFBSSxFQUFFLGdCQUFnQixDQUNoQixDQUFDO1NBQ1Y7YUFBTTtZQUNMLDRFQUE0RTtZQUM1RSxPQUFPLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQyxDQUF3QyxDQUFDO0lBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxXQUFXLE9BQU87UUFDckMsT0FBTyxnQkFBZ0IsRUFBRSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pELENBQUMsQ0FBQztJQUNGLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQzdCLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyxVQUFrQjtJQUVsQixPQUFPLGtCQUFrQixFQUFFLENBQUMsVUFBVSxDQUF5QixDQUFDO0FBQ2xFLENBQUM7QUFFRCxNQUFNLFVBQVUsd0JBQXdCO0lBQ3RDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7QUFDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFjdGl2aXR5Q2FsbCB9IGZyb20gXCIuL2NhbGxzL2FjdGl2aXR5LWNhbGwuanNcIjtcbmltcG9ydCB7XG4gIGNhbGxhYmxlQWN0aXZpdGllcyxcbiAgZ2V0QWN0aXZpdHlDb250ZXh0LFxuICBnZXRTZXJ2aWNlQ2xpZW50LFxufSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IGlzQWN0aXZpdHlXb3JrZXIsIGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vcnVudGltZS9mbGFncy5qc1wiO1xuaW1wb3J0IHsgU2VuZEFjdGl2aXR5U3VjY2Vzc1JlcXVlc3QgfSBmcm9tIFwiLi9zZXJ2aWNlLWNsaWVudC5qc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBIb3cgbG9uZyB0aGUgd29ya2Zsb3cgd2lsbCB3YWl0IGZvciB0aGUgYWN0aXZpdHkgdG8gY29tcGxldGUgb3IgZmFpbC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB3b3JrZmxvdyB3aWxsIHJ1biBmb3JldmVyLlxuICAgKi9cbiAgdGltZW91dFNlY29uZHM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBGb3IgbG9uZyBydW5uaW5nIGFjdGl2aXRpZXMsIGl0IGlzIHN1Z2dlc3RlZCB0aGF0IHRoZXkgcmVwb3J0IGJhY2sgdGhhdCB0aGV5XG4gICAqIGFyZSBzdGlsbCBpbiBwcm9ncmVzcyB0byBhdm9pZCB3YWl0aW5nIGZvcmV2ZXIgb3IgdW50aWwgYSBsb25nIHRpbWVvdXQgd2hlblxuICAgKiBzb21ldGhpbmcgZ29lcyB3cm9uZy5cbiAgICpcbiAgICogV2hlbiBzZXQgdG8gYSBwb3NpdGl2ZSBudW1iZXIsIHRoZSBhY3Rpdml0eSBtdXN0IGNhbGwge0BsaW5rIGhlYXJ0YmVhdH0gb3JcbiAgICoge0BsaW5rIFdvcmtmbG93Q2xpZW50LmhlYXJ0YmVhdEFjdGl2aXR5fSBhdCBsZWFzdCBldmVyeSBoZWFydGJlYXRTZWNvbmRzLlxuICAgKlxuICAgKiBJZiBpdCBmYWlscyB0byBkbyBzbywgdGhlIHdvcmtmbG93IHdpbGwgY2FuY2VsIHRoZSBhY3Rpdml0eSBhbmQgdGhyb3cgYW4gZXJyb3IuXG4gICAqL1xuICBoZWFydGJlYXRTZWNvbmRzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzIGV4dGVuZHMgYW55W10sIE91dHB1dCA9IGFueT4ge1xuICAoLi4uYXJnczogQXJndW1lbnRzKTogUHJvbWlzZTxBd2FpdGVkPFVud3JhcEFzeW5jPE91dHB1dD4+PjtcblxuICAvKipcbiAgICogQ29tcGxldGUgYW4gYWN0aXZpdHkgcmVxdWVzdCBieSBpdHMge0BsaW5rIFNlbmRBY3Rpdml0eVN1Y2Nlc3NSZXF1ZXN0LmFjdGl2aXR5VG9rZW59LlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGgge0BsaW5rIGFzeW5jUmVzdWx0fSBpbiBhbiBhY3Rpdml0eVxuICAgKiB0byBwZXJmb3JtIGFzeW5jaHJvbm91cywgbG9uZy1ydW5uaW5nIGNvbXB1dGF0aW9ucy4gRm9yIGV4YW1wbGU6XG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IHRva2VuRXZlbnQgPSBldmVudChcInRva2VuXCIpO1xuICAgKlxuICAgKiBjb25zdCBhc3luY0FjdGl2aXR5ID0gYWN0aXZpdHkoXCJhc3luY1wiLCAoKSA9PiB7XG4gICAqICAgcmV0dXJuIGFzeW5jUmVzdWx0PHN0cmluZz4odG9rZW4gPT4gdG9rZW5FdmVudC5wdWJsaXNoKHsgdG9rZW4gfSkpO1xuICAgKiB9KTtcbiAgICpcbiAgICogdG9rZW5FdmVudC5vbihhc3luYyAoe3Rva2VufSkgPT4ge1xuICAgKiAgIGF3YWl0IGFzeW5jQWN0aXZpdHkuY29tcGxldGUoe1xuICAgKiAgICAgYWN0aXZpdHlUb2tlbjogdG9rZW4sXG4gICAqICAgICByZXN1bHQ6IFwiZG9uZVwiXG4gICAqICAgfSk7XG4gICAqIH0pXG4gICAqIGBgYFxuICAgKi9cbiAgY29tcGxldGUoXG4gICAgcmVxdWVzdDogT21pdDxcbiAgICAgIFNlbmRBY3Rpdml0eVN1Y2Nlc3NSZXF1ZXN0PFVud3JhcEFzeW5jPEF3YWl0ZWQ8T3V0cHV0Pj4+LFxuICAgICAgXCJ0eXBlXCJcbiAgICA+XG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgYWN0aXZpdHlJRDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMgZXh0ZW5kcyBhbnlbXSwgT3V0cHV0ID0gYW55PiB7XG4gICguLi5hcmdzOiBBcmd1bWVudHMpOlxuICAgIHwgUHJvbWlzZTxBd2FpdGVkPE91dHB1dD4+XG4gICAgfCBPdXRwdXRcbiAgICB8IEFzeW5jUmVzdWx0PE91dHB1dD5cbiAgICB8IFByb21pc2U8QXN5bmNSZXN1bHQ8QXdhaXRlZDxPdXRwdXQ+Pj47XG59XG5cbmV4cG9ydCB0eXBlIFVud3JhcEFzeW5jPE91dHB1dD4gPSBPdXRwdXQgZXh0ZW5kcyBBc3luY1Jlc3VsdDxpbmZlciBPPlxuICA/IE9cbiAgOiBPdXRwdXQ7XG5cbmV4cG9ydCB0eXBlIEFjdGl2aXR5QXJndW1lbnRzPEEgZXh0ZW5kcyBBY3Rpdml0eUZ1bmN0aW9uPGFueSwgYW55Pj4gPVxuICBBIGV4dGVuZHMgQWN0aXZpdHlGdW5jdGlvbjxpbmZlciBBcmd1bWVudHMgZXh0ZW5kcyBhbnlbXT4gPyBBcmd1bWVudHMgOiBuZXZlcjtcblxuZXhwb3J0IHR5cGUgQWN0aXZpdHlPdXRwdXQ8QSBleHRlbmRzIEFjdGl2aXR5RnVuY3Rpb248YW55LCBhbnk+PiA9XG4gIEEgZXh0ZW5kcyBBY3Rpdml0eUZ1bmN0aW9uPGFueSwgaW5mZXIgT3V0cHV0PiA/IFVud3JhcEFzeW5jPE91dHB1dD4gOiBuZXZlcjtcblxuY29uc3QgQXN5bmNUb2tlblN5bWJvbCA9IFN5bWJvbC5mb3IoXCJldmVudHVhbDpBc3luY1Rva2VuXCIpO1xuXG4vKipcbiAqIFdoZW4gcmV0dXJuZWQgZnJvbSBhbiBhY3Rpdml0eSwgdGhlIGFjdGl2aXR5IHdpbGwgYmVjb21lIGFzeW5jLFxuICogYWxsb3dpbmcgaXQgdG8gcnVuIFwiZm9yZXZlclwiLiBUaGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBc3luY1Jlc3VsdDxPdXRwdXQgPSBhbnk+IHtcbiAgW0FzeW5jVG9rZW5TeW1ib2xdOiB0eXBlb2YgQXN5bmNUb2tlblN5bWJvbCAmIE91dHB1dDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQXN5bmNSZXN1bHQob2JqOiBhbnkpOiBvYmogaXMgQXN5bmNSZXN1bHQge1xuICByZXR1cm4gISFvYmogJiYgb2JqW0FzeW5jVG9rZW5TeW1ib2xdID09PSBBc3luY1Rva2VuU3ltYm9sO1xufVxuXG4vKipcbiAqIFdoZW4gcmV0dXJuZWQgZnJvbSBhbiB7QGxpbmsgYWN0aXZpdHl9LCB0ZWxscyB0aGUgc3lzdGVtIHRvIG1ha2UgdGhlIGN1cnJlbnRcbiAqIGFjdGl2aXR5IGFzeW5jLiBUaGlzIGFsbG93cyB0aGUgYWN0aXZpdHkgdG8gZGVmZXIgc2VuZGluZyBhIHJlc3BvbnNlIGZyb20gdGhlXG4gKiBjdXJyZW50IGZ1bmN0aW9uIGFuZCBpbnN0ZWFkIGNvbXBsZXRlIHRoZSBhY3Rpdml0eSB3aXRoIHtAbGluayBXb3JrZmxvd0NsaWVudC5jb21wbGV0ZUFjdGl2aXR5fS5cbiAqXG4gKiBgYGB0c1xuICogY29uc3Qgc3FzID0gbmV3IFNRU0NsaWVudCgpO1xuICogYWN0aXZpdHkoXCJteUFjdGl2aXR5XCIsICgpID0+IHtcbiAqICAgIC8vIHRlbGxzIHRoZSBzeXN0ZW0gdGhhdCB0aGUgY29tcGxldGVBY3Rpdml0eSBmdW5jdGlvbiB3aWxsIGJlIGNhbGxlZCBsYXRlciB3aXRoIGEgc3RyaW5nIHJlc3VsdC5cbiAqICAgIHJldHVybiBhc3luY1Jlc3VsdDxzdHJpbmc+KGFzeW5jIChhY3Rpdml0eVRva2VuKSA9PiB7XG4gKiAgICAgICAvLyBiZWZvcmUgZXhpdGluZywgc2VuZCB0aGUgYWN0aXZpdHlUb2tlbiB0byBhIHNxcyBxdWV1ZSB0byBiZSBjb21wbGV0ZWQgbGF0ZXJcbiAqICAgICAgIC8vIHlvdSBjb3VsZCBpbnZva2UgYW55IHNlcnZpY2UgaGVyZVxuICogICAgICAgYXdhaXQgc3FzLnNlbmQobmV3IFNlbmRNZXNzYWdlQ29tbWFuZCh7IC4uLiwgbWVzc2FnZTogSlNPTmwuc3RyaW5naWZ5KHsgYWN0aXZpdHlUb2tlbiB9KSkpO1xuICogICAgfSk7XG4gKiB9KVxuICogYGBgXG4gKlxuICogQHBhcmFtIHRva2VuQ29udGV4dCBpcyBhIGNhbGxiYWNrIHdoaWNoIHByb3ZpZGVzIHRoZSBhY3Rpdml0eVRva2VuLiBUaGUgYWN0aXZpdHkgdG9rZW4gaXMgdXNlZFxuICogICAgICAgICAgICAgICAgICAgICB0byBjb21wbGV0ZUFjdGl2aXR5IGFuZCBoZWFydGJlYXRBY3Rpdml0eSBmcm9tIG91dHNpZGUgb2YgdGhlXG4gKiAgICAgICAgICAgICAgICAgICAgIGFjdGl2aXR5LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYXN5bmNSZXN1bHQ8T3V0cHV0ID0gYW55PihcbiAgdG9rZW5Db250ZXh0OiAodG9rZW46IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPiB8IHZvaWRcbik6IFByb21pc2U8QXN5bmNSZXN1bHQ8T3V0cHV0Pj4ge1xuICBpZiAoIWlzQWN0aXZpdHlXb3JrZXIoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcImFzeW5jUmVzdWx0IGNhbiBvbmx5IGJlIGNhbGxlZCBmcm9tIHdpdGhpbiBhbiBhY3Rpdml0eS5cIik7XG4gIH1cbiAgY29uc3QgYWN0aXZpdHlDb250ZXh0ID0gZ2V0QWN0aXZpdHlDb250ZXh0KCk7XG4gIGlmICghYWN0aXZpdHlDb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJBY3Rpdml0eSBjb250ZXh0IGhhcyBub3QgYmVlbiBzZXQgeWV0LCBhc3luY1Jlc3VsdCBjYW4gb25seSBiZSB1c2VkIGZyb20gd2l0aGluIGFuIGFjdGl2aXR5LlwiXG4gICAgKTtcbiAgfVxuICBhd2FpdCB0b2tlbkNvbnRleHQoYWN0aXZpdHlDb250ZXh0LmFjdGl2aXR5VG9rZW4pO1xuICByZXR1cm4ge1xuICAgIFtBc3luY1Rva2VuU3ltYm9sXTogQXN5bmNUb2tlblN5bWJvbCBhcyB0eXBlb2YgQXN5bmNUb2tlblN5bWJvbCAmIE91dHB1dCxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpdml0eUNvbnRleHQge1xuICB3b3JrZmxvd05hbWU6IHN0cmluZztcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgYWN0aXZpdHlUb2tlbjogc3RyaW5nO1xuICBzY2hlZHVsZWRUaW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVnaXN0ZXJzIGEgZnVuY3Rpb24gYXMgYW4gQWN0aXZpdHkuXG4gKlxuICogQHBhcmFtIGFjdGl2aXR5SUQgYSBzdHJpbmcgdGhhdCB1bmlxdWVseSBpZGVudGlmaWVzIHRoZSBBY3Rpdml0eSB3aXRoaW4gYSBzaW5nbGUgd29ya2Zsb3cgY29udGV4dC5cbiAqIEBwYXJhbSBoYW5kbGVyIHRoZSBmdW5jdGlvbiB0aGF0IGhhbmRsZXMgdGhlIGFjdGl2aXR5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhY3Rpdml0eTxBcmd1bWVudHMgZXh0ZW5kcyBhbnlbXSwgT3V0cHV0ID0gYW55PihcbiAgYWN0aXZpdHlJRDogc3RyaW5nLFxuICBoYW5kbGVyOiBBY3Rpdml0eUhhbmRsZXI8QXJndW1lbnRzLCBPdXRwdXQ+XG4pOiBBY3Rpdml0eUZ1bmN0aW9uPEFyZ3VtZW50cywgT3V0cHV0PjtcbmV4cG9ydCBmdW5jdGlvbiBhY3Rpdml0eTxBcmd1bWVudHMgZXh0ZW5kcyBhbnlbXSwgT3V0cHV0ID0gYW55PihcbiAgYWN0aXZpdHlJRDogc3RyaW5nLFxuICBvcHRzOiBBY3Rpdml0eU9wdGlvbnMsXG4gIGhhbmRsZXI6IEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMsIE91dHB1dD5cbik6IEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+O1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGl2aXR5PEFyZ3VtZW50cyBleHRlbmRzIGFueVtdLCBPdXRwdXQgPSBhbnk+KFxuICBhY3Rpdml0eUlEOiBzdHJpbmcsXG4gIC4uLmFyZ3M6XG4gICAgfCBbb3B0czogQWN0aXZpdHlPcHRpb25zLCBoYW5kbGVyOiBBY3Rpdml0eUhhbmRsZXI8QXJndW1lbnRzLCBPdXRwdXQ+XVxuICAgIHwgW2hhbmRsZXI6IEFjdGl2aXR5SGFuZGxlcjxBcmd1bWVudHMsIE91dHB1dD5dXG4pOiBBY3Rpdml0eUZ1bmN0aW9uPEFyZ3VtZW50cywgT3V0cHV0PiB7XG4gIGNvbnN0IFtvcHRzLCBoYW5kbGVyXSA9IGFyZ3MubGVuZ3RoID09PSAxID8gW3VuZGVmaW5lZCwgYXJnc1swXV0gOiBhcmdzO1xuICAvLyByZWdpc3RlciB0aGUgaGFuZGxlciB0byBiZSBsb29rZWQgdXAgZHVyaW5nIGV4ZWN1dGlvbi5cbiAgY2FsbGFibGVBY3Rpdml0aWVzKClbYWN0aXZpdHlJRF0gPSBoYW5kbGVyO1xuICBjb25zdCBmdW5jID0gKCguLi5hcmdzOiBQYXJhbWV0ZXJzPEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+PikgPT4ge1xuICAgIGlmIChpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgICAvLyBpZiB3ZSdyZSBpbiB0aGUgb3JjaGVzdHJhdG9yLCByZXR1cm4gYSBjb21tYW5kIHRvIGludm9rZSB0aGUgYWN0aXZpdHkgaW4gdGhlIHdvcmtlciBmdW5jdGlvblxuICAgICAgcmV0dXJuIGNyZWF0ZUFjdGl2aXR5Q2FsbChcbiAgICAgICAgYWN0aXZpdHlJRCxcbiAgICAgICAgYXJncyxcbiAgICAgICAgb3B0cz8udGltZW91dFNlY29uZHMsXG4gICAgICAgIG9wdHM/LmhlYXJ0YmVhdFNlY29uZHNcbiAgICAgICkgYXMgYW55O1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBjYWxsaW5nIHRoZSBhY3Rpdml0eSBmcm9tIG91dHNpZGUgdGhlIG9yY2hlc3RyYXRvciBqdXN0IGNhbGxzIHRoZSBoYW5kbGVyXG4gICAgICByZXR1cm4gaGFuZGxlciguLi5hcmdzKTtcbiAgICB9XG4gIH0pIGFzIEFjdGl2aXR5RnVuY3Rpb248QXJndW1lbnRzLCBPdXRwdXQ+O1xuICBmdW5jLmNvbXBsZXRlID0gYXN5bmMgZnVuY3Rpb24gKHJlcXVlc3QpIHtcbiAgICByZXR1cm4gZ2V0U2VydmljZUNsaWVudCgpLnNlbmRBY3Rpdml0eVN1Y2Nlc3MocmVxdWVzdCk7XG4gIH07XG4gIGZ1bmMuYWN0aXZpdHlJRCA9IGFjdGl2aXR5SUQ7XG4gIHJldHVybiBmdW5jO1xufVxuXG4vKipcbiAqIFJldHJpZXZlIGFuIGFjdGl2aXR5IGZ1bmN0aW9uIHRoYXQgaGFzIGJlZW4gcmVnaXN0ZXJlZCBpbiBhIHdvcmtmbG93LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2FsbGFibGVBY3Rpdml0eShcbiAgYWN0aXZpdHlJZDogc3RyaW5nXG4pOiBBY3Rpdml0eUhhbmRsZXI8YW55PiB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBjYWxsYWJsZUFjdGl2aXRpZXMoKVthY3Rpdml0eUlkXSBhcyBBY3Rpdml0eUhhbmRsZXI8YW55Pjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENhbGxhYmxlQWN0aXZpdHlOYW1lcygpIHtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKGNhbGxhYmxlQWN0aXZpdGllcygpKTtcbn1cbiJdfQ==
import { createPublishEventsCall } from "./calls/send-events-call.js";
import { events, eventSubscriptions, getEventClient } from "./global.js";
import { isOrchestratorWorker } from "./index.js";
import { events, eventSubscriptions } from "./global.js";
import { getServiceClient, isOrchestratorWorker } from "./index.js";
/**

@@ -67,3 +67,3 @@ * Declares an event that can be published and subscribed to.

else {
return getEventClient().publish(...envelopes);
return getServiceClient().publishEvents({ events: envelopes });
}

@@ -75,2 +75,2 @@ },

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBZ0dsRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFDRztBQUNILE1BQU0sVUFBVSxLQUFLLENBQXlCLElBQVk7SUFDeEQsSUFBSSxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsSUFBSSxrQkFBa0IsQ0FBQyxDQUFDO0tBQzdEO0lBQ0QsTUFBTSxLQUFLLEdBQWE7UUFDdEIsSUFBSTtRQUNKLEVBQUUsQ0FBQyxPQUFPO1lBQ1Isa0JBQWtCLEVBQUUsQ0FBQyxJQUFJLENBQUM7Z0JBQ3hCLGFBQWEsRUFBRTtvQkFDYjt3QkFDRSxJQUFJO3FCQUNMO2lCQUNGO2dCQUNELE9BQU8sRUFBRSxPQUFxQzthQUMvQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsTUFBTTtZQUNmLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3ZDLElBQUk7Z0JBQ0osS0FBSzthQUNOLENBQUMsQ0FBQyxDQUFDO1lBQ0osSUFBSSxvQkFBb0IsRUFBRSxFQUFFO2dCQUMxQixPQUFPLHVCQUF1QixDQUFDLFNBQVMsQ0FBUSxDQUFDO2FBQ2xEO2lCQUFNO2dCQUNMLE9BQU8sY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7YUFDL0M7UUFDSCxDQUFDO0tBQ0YsQ0FBQztJQUNGLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDMUIsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlUHVibGlzaEV2ZW50c0NhbGwgfSBmcm9tIFwiLi9jYWxscy9zZW5kLWV2ZW50cy1jYWxsLmpzXCI7XG5pbXBvcnQgeyBldmVudHMsIGV2ZW50U3Vic2NyaXB0aW9ucywgZ2V0RXZlbnRDbGllbnQgfSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vaW5kZXguanNcIjtcblxuLyoqXG4gKiBBbiBFdmVudFBheWxvYWQgaXMgdGhlIGRhdGEgc2VudCBhcyBhbiBldmVudC5cbiAqXG4gKiBJdCBtdXN0IGJlIGFuIG9iamVjdC4gUHJvcGVydGllcyBjYW4gYmUgYW55IHR5cGUgc2VyaWFsaXphYmxlIGFzIEpTT04uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRQYXlsb2FkIHtcbiAgW3Byb3BOYW1lOiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCB0eXBlIEV2ZW50UGF5bG9hZFR5cGU8RSBleHRlbmRzIEV2ZW50PGFueT4+ID0gRSBleHRlbmRzIEV2ZW50PFxuICBpbmZlciBQYXlsb2FkXG4+XG4gID8gUGF5bG9hZFxuICA6IG5ldmVyO1xuXG4vKipcbiAqIEFuIGVudmVsb3BlIG9iamVjdCBjb250YWluaW5nIHRoZSB7QGxpbmsgZXZlbnR9IHBheWxvYWQgYXNzb2NpYXRlZFxuICogd2l0aCBpdHMgdW5pcXVlIHtAbGluayBuYW1lfS5cbiAqXG4gKiBUaGlzIGVudmVsb3BlIGRlY291cGxlcyB0aGUge0BsaW5rIG5hbWV9IGZybyB0aGUgcGF5bG9hZCBzbyB0aGF0XG4gKiB0aGVyZSBhcmUgbm8gaW1wb3NpdGlvbnMgb24gdGhlIHN0cnVjdHVyZSBvZiBhbiBldmVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudEVudmVsb3BlPEUgZXh0ZW5kcyBFdmVudFBheWxvYWQgPSBFdmVudFBheWxvYWQ+IHtcbiAgLyoqXG4gICAqIFVuaXF1ZSBuYW1lIGlkZW50aWZ5aW5nIHRoZSB0eXBlIG9mIHRoZSB7QGxpbmsgZXZlbnR9LlxuICAgKi9cbiAgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHtAbGluayBFdmVudFBheWxvYWR9LlxuICAgKi9cbiAgZXZlbnQ6IEU7XG59XG5cbi8qKlxuICogQW4ge0BsaW5rIEV2ZW50fSBpcyBhbiBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBkZWNsYXJhdGlvbiBvZiBhbiBldmVudFxuICogdGhhdCBiZWxvbmdzIHdpdGhpbiB0aGUgc2VydmljZS4gQW4ge0BsaW5rIEV2ZW50fSBoYXMgYSB1bmlxdWUge0BsaW5rIG5hbWV9LFxuICogbWF5IGJlIHtAbGluayBwdWJsaXNofWVkIGFuZCB7QGxpbmsgb259ZCB0by5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudDxFIGV4dGVuZHMgRXZlbnRQYXlsb2FkID0gRXZlbnRQYXlsb2FkPiB7XG4gIC8qKlxuICAgKiBUaGUgRXZlbnQncyBnbG9iYWxseSB1bmlxdWUgbmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFN1YnNjcmliZSB0byB0aGlzIGV2ZW50LiBUaGUge0BsaW5rIGhhbmRsZXJ9IHdpbGwgYmUgaW52b2tlZCBldmVyeVxuICAgKiB0aW1lIGFuIGV2ZW50IHdpdGggdGhpcyBuYW1lIGlzIHB1Ymxpc2hlZCB3aXRoaW4gdGhlIHNlcnZpY2UgYm91bmRhcnkuXG4gICAqXG4gICAqIEBwYXJhbSBoYW5kbGVyIHRoZSBoYW5kbGVyIGZ1bmN0aW9uIHRoYXQgd2lsbCBwcm9jZXNzIHRoZSBldmVudC5cbiAgICovXG4gIG9uKGhhbmRsZXI6IChldmVudDogRSkgPT4gUHJvbWlzZTx2b2lkPik6IHZvaWQ7XG4gIC8qKlxuICAgKiBQdWJsaXNoIGV2ZW50cyBvZiB0aGlzIHR5cGUgd2l0aGluIHRoZSBzZXJ2aWNlIGJvdW5kYXJ5LlxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnRzIGEgbGlzdCBvZiBldmVudHMgdG8gcHVibGlzaC5cbiAgICovXG4gIHB1Ymxpc2goLi4uZXZlbnRzOiBFW10pOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIEEge0BsaW5rIFN1YnNjcmlwdGlvbn0gaXMgYW4gb2JqZWN0IHRoYXQgZGVzY3JpYmVzIGhvdyB0byBzZWxlY3QgZXZlbnRzIGZyb21cbiAqIHdpdGhpbiBhIHNlcnZpY2UgYm91bmRhcnkgdG8gcm91dGUgdG8gYSB7QGxpbmsgRXZlbnRIYW5kbGVyfS5cbiAqXG4gKiBGb3Igbm93LCB3ZSBvbmx5IHN1cHBvcnQgbWF0Y2hpbmcgb24gYSBzaW5nbGUgbmFtZSwgYnV0IHRoaXMgb2JqZWN0IGNhbiBiZVxuICogZXh0ZW5kZWQgd2l0aCBvdGhlciBwcm9wZXJ0aWVzIHN1Y2ggYXMgc2VsZWN0aW9uIHByZWRpY2F0ZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2NyaXB0aW9uIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGV2ZW50IHRvIHN1YnNjcmliZSB0by5cbiAgICovXG4gIG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBBbiB7QGxpbmsgRXZlbnRTdWJzY3JpcHRpb259IGlzIGFuIG9iamVjdCB0aGF0IGFzc29jaWF0ZXMgYSB7QGxpbmsgaGFuZGxlcn1cbiAqIGZ1bmN0aW9uIHdpdGggYSBsaXN0IG9mIHtAbGluayBzdWJzY3JpcHRpb25zfS4gVGhlIHtAbGluayBzdWJzY3JpcHRpb25zfVxuICogZGVmaW5lIHdoaWNoIGV2ZW50cyB0aGlzIHtAbGluayBoYW5kbGVyfSBzaG91bGQgYmUgaW52b2tlZCBmb3IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRTdWJzY3JpcHRpb248RSBleHRlbmRzIEV2ZW50UGF5bG9hZCA9IEV2ZW50UGF5bG9hZD4ge1xuICAvKipcbiAgICogQSBsaXN0IG9mIHtAbGluayBTdWJzY3JpcHRpb259cyB0aGF0IHNob3VsZCBpbnZva2UgdGhpcyB7QGxpbmsgaGFuZGxlcn0uXG4gICAqL1xuICBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXTtcbiAgLyoqXG4gICAqIFRoZSB7QGxpbmsgRXZlbnRIYW5kbGVyfSB0byBpbnZva2UgZm9yIGFueSBldmVudCB0aGF0IG1hdGNoZXMgb25lIG9mXG4gICAqIHRoZSB7QGxpbmsgc3Vic2NyaXB0aW9uc30uXG4gICAqL1xuICBoYW5kbGVyOiBFdmVudEhhbmRsZXI8RT47XG59XG5cbi8qKlxuICogQSBGdW5jdGlvbiB0aGF0IHByb2Nlc3NlcyBhbiB7QGxpbmsgZXZlbnR9IG9mIHR5cGUge0BsaW5rIEV9LlxuICovXG5leHBvcnQgdHlwZSBFdmVudEhhbmRsZXI8RSBleHRlbmRzIEV2ZW50UGF5bG9hZD4gPSAoZXZlbnQ6IEUpID0+IFByb21pc2U8dm9pZD47XG5cbi8qKlxuICogRGVjbGFyZXMgYW4gZXZlbnQgdGhhdCBjYW4gYmUgcHVibGlzaGVkIGFuZCBzdWJzY3JpYmVkIHRvLlxuICpcbiAqIFRvIGRlY2xhcmUgYW4ge0BsaW5rIEV2ZW50fSwgZGVmaW5lIGFuIGludGVyZmFjZSBkZXNjcmliaW5nIHRoZSB0eXBlXG4gKiBvZiB0aGUgcGF5bG9hZCBhbmQgdGhlbiBkZWNsYXJlIGFuIGV2ZW50IG9iamVjdCBnaXZpbmcgaXQgYSB1bmlxdWUgbmFtZS5cbiAqIGBgYHRzXG4gKiBpbnRlcmZhY2UgQ2hlY2tvdXRFdmVudCB7XG4gKiAgIGN1c3RvbWVySWQ6IHN0cmluZztcbiAqICAgY2FydElkOiBzdHJpbmc7XG4gKiAgIHRpbWVzdGFtcDogc3RyaW5nO1xuICogfVxuICpcbiAqIGNvbnN0IGNoZWNrb3V0RXZlbnQgPSBldmVudDxDaGVja291dEV2ZW50PihcIkNoZWNrb3V0XCIpO1xuICogYGBgXG4gKlxuICogVG8gcHVibGlzaCBldmVudHMsIGNhbGwgdGhlIGBwdWJsaXNoYCBtZXRob2Q6XG4gKiBgYGB0c1xuICogY29uc3QgY2hlY2tvdXRXb3JrZmxvdyA9IHdvcmtmbG93KFwiY2hlY2tvdXRXb3JrZmxvd1wiLCBhc3luYyAocmVxdWVzdCkgPT4ge1xuICogICBhd2FpdCBjaGVja291dEV2ZW50LnB1Ymxpc2goe1xuICogICAgIGN1c3RvbWVySWQ6IHJlcXVlc3QuY3VzdG9tZXJJZCxcbiAqICAgICBjYXJ0SWQ6IHJlcXVlc3QuY2FydElkLFxuICogICAgIHRpbWVzdGFtcDogbmV3IERhdGUoKS50b1RpbWVTdHJpbmcoKVxuICogICB9KTtcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBUbyBzdWJzY3JpYmUgdG8gZXZlbnRzLCBjYWxsIHRoZSBgb25gIG1ldGhvZC4gVGhpcyB3aWxsIHJlZ2lzdGVyIGFcbiAqIGhhbmRsZXIgdGhhdCB3aWwgbGJlIGludm9rZWQgZm9yIGV2ZXJ5IGV2ZW50IG9mIHRoaXMgdHlwZSB0aGF0IGlzIHJlY2VpdmVkLlxuICpcbiAqIGBgYHRzXG4gKiBjaGVja291dEV2ZW50Lm9uKGFzeW5jIChjaGVja291dCkgPT4ge1xuICogICBjb25zb2xlLmxvZyhjaGVja291dCk7XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBuYW1lIGEgdW5pcXVlIG5hbWUgdGhhdCBpZGVudGlmaWVzIHRoaXMgZXZlbnQgdHlwZSB3aXRoaW4gdGhlIFNlcnZpY2UuXG4gKiBAcmV0dXJucyBhbiB7QGxpbmsgRXZlbnR9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBldmVudDxFIGV4dGVuZHMgRXZlbnRQYXlsb2FkPihuYW1lOiBzdHJpbmcpOiBFdmVudDxFPiB7XG4gIGlmIChldmVudHMoKS5oYXMobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGV2ZW50IHdpdGggbmFtZSAnJHtuYW1lfScgYWxyZWFkeSBleGlzdHNgKTtcbiAgfVxuICBjb25zdCBldmVudDogRXZlbnQ8RT4gPSB7XG4gICAgbmFtZSxcbiAgICBvbihoYW5kbGVyKSB7XG4gICAgICBldmVudFN1YnNjcmlwdGlvbnMoKS5wdXNoKHtcbiAgICAgICAgc3Vic2NyaXB0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgaGFuZGxlcjogaGFuZGxlciBhcyBFdmVudEhhbmRsZXI8RXZlbnRQYXlsb2FkPixcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgcHVibGlzaCguLi5ldmVudHMpIHtcbiAgICAgIGNvbnN0IGVudmVsb3BlcyA9IGV2ZW50cy5tYXAoKGV2ZW50KSA9PiAoe1xuICAgICAgICBuYW1lLFxuICAgICAgICBldmVudCxcbiAgICAgIH0pKTtcbiAgICAgIGlmIChpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgICAgIHJldHVybiBjcmVhdGVQdWJsaXNoRXZlbnRzQ2FsbChlbnZlbG9wZXMpIGFzIGFueTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBnZXRFdmVudENsaWVudCgpLnB1Ymxpc2goLi4uZW52ZWxvcGVzKTtcbiAgICAgIH1cbiAgICB9LFxuICB9O1xuICBldmVudHMoKS5zZXQobmFtZSwgZXZlbnQpO1xuICByZXR1cm4gZXZlbnQ7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFnR3BFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUNHO0FBQ0gsTUFBTSxVQUFVLEtBQUssQ0FBeUIsSUFBWTtJQUN4RCxJQUFJLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixJQUFJLGtCQUFrQixDQUFDLENBQUM7S0FDN0Q7SUFDRCxNQUFNLEtBQUssR0FBYTtRQUN0QixJQUFJO1FBQ0osRUFBRSxDQUFDLE9BQU87WUFDUixrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FBQztnQkFDeEIsYUFBYSxFQUFFO29CQUNiO3dCQUNFLElBQUk7cUJBQ0w7aUJBQ0Y7Z0JBQ0QsT0FBTyxFQUFFLE9BQXFDO2FBQy9DLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLENBQUMsR0FBRyxNQUFNO1lBQ2YsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDdkMsSUFBSTtnQkFDSixLQUFLO2FBQ04sQ0FBQyxDQUFDLENBQUM7WUFDSixJQUFJLG9CQUFvQixFQUFFLEVBQUU7Z0JBQzFCLE9BQU8sdUJBQXVCLENBQUMsU0FBUyxDQUFRLENBQUM7YUFDbEQ7aUJBQU07Z0JBQ0wsT0FBTyxnQkFBZ0IsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO2FBQ2hFO1FBQ0gsQ0FBQztLQUNGLENBQUM7SUFDRixNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFCLE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVB1Ymxpc2hFdmVudHNDYWxsIH0gZnJvbSBcIi4vY2FsbHMvc2VuZC1ldmVudHMtY2FsbC5qc1wiO1xuaW1wb3J0IHsgZXZlbnRzLCBldmVudFN1YnNjcmlwdGlvbnMgfSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IGdldFNlcnZpY2VDbGllbnQsIGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vaW5kZXguanNcIjtcblxuLyoqXG4gKiBBbiBFdmVudFBheWxvYWQgaXMgdGhlIGRhdGEgc2VudCBhcyBhbiBldmVudC5cbiAqXG4gKiBJdCBtdXN0IGJlIGFuIG9iamVjdC4gUHJvcGVydGllcyBjYW4gYmUgYW55IHR5cGUgc2VyaWFsaXphYmxlIGFzIEpTT04uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRQYXlsb2FkIHtcbiAgW3Byb3BOYW1lOiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCB0eXBlIEV2ZW50UGF5bG9hZFR5cGU8RSBleHRlbmRzIEV2ZW50PGFueT4+ID0gRSBleHRlbmRzIEV2ZW50PFxuICBpbmZlciBQYXlsb2FkXG4+XG4gID8gUGF5bG9hZFxuICA6IG5ldmVyO1xuXG4vKipcbiAqIEFuIGVudmVsb3BlIG9iamVjdCBjb250YWluaW5nIHRoZSB7QGxpbmsgZXZlbnR9IHBheWxvYWQgYXNzb2NpYXRlZFxuICogd2l0aCBpdHMgdW5pcXVlIHtAbGluayBuYW1lfS5cbiAqXG4gKiBUaGlzIGVudmVsb3BlIGRlY291cGxlcyB0aGUge0BsaW5rIG5hbWV9IGZybyB0aGUgcGF5bG9hZCBzbyB0aGF0XG4gKiB0aGVyZSBhcmUgbm8gaW1wb3NpdGlvbnMgb24gdGhlIHN0cnVjdHVyZSBvZiBhbiBldmVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudEVudmVsb3BlPEUgZXh0ZW5kcyBFdmVudFBheWxvYWQgPSBFdmVudFBheWxvYWQ+IHtcbiAgLyoqXG4gICAqIFVuaXF1ZSBuYW1lIGlkZW50aWZ5aW5nIHRoZSB0eXBlIG9mIHRoZSB7QGxpbmsgZXZlbnR9LlxuICAgKi9cbiAgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHtAbGluayBFdmVudFBheWxvYWR9LlxuICAgKi9cbiAgZXZlbnQ6IEU7XG59XG5cbi8qKlxuICogQW4ge0BsaW5rIEV2ZW50fSBpcyBhbiBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBkZWNsYXJhdGlvbiBvZiBhbiBldmVudFxuICogdGhhdCBiZWxvbmdzIHdpdGhpbiB0aGUgc2VydmljZS4gQW4ge0BsaW5rIEV2ZW50fSBoYXMgYSB1bmlxdWUge0BsaW5rIG5hbWV9LFxuICogbWF5IGJlIHtAbGluayBwdWJsaXNofWVkIGFuZCB7QGxpbmsgb259ZCB0by5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudDxFIGV4dGVuZHMgRXZlbnRQYXlsb2FkID0gRXZlbnRQYXlsb2FkPiB7XG4gIC8qKlxuICAgKiBUaGUgRXZlbnQncyBnbG9iYWxseSB1bmlxdWUgbmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFN1YnNjcmliZSB0byB0aGlzIGV2ZW50LiBUaGUge0BsaW5rIGhhbmRsZXJ9IHdpbGwgYmUgaW52b2tlZCBldmVyeVxuICAgKiB0aW1lIGFuIGV2ZW50IHdpdGggdGhpcyBuYW1lIGlzIHB1Ymxpc2hlZCB3aXRoaW4gdGhlIHNlcnZpY2UgYm91bmRhcnkuXG4gICAqXG4gICAqIEBwYXJhbSBoYW5kbGVyIHRoZSBoYW5kbGVyIGZ1bmN0aW9uIHRoYXQgd2lsbCBwcm9jZXNzIHRoZSBldmVudC5cbiAgICovXG4gIG9uKGhhbmRsZXI6IChldmVudDogRSkgPT4gUHJvbWlzZTx2b2lkPik6IHZvaWQ7XG4gIC8qKlxuICAgKiBQdWJsaXNoIGV2ZW50cyBvZiB0aGlzIHR5cGUgd2l0aGluIHRoZSBzZXJ2aWNlIGJvdW5kYXJ5LlxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnRzIGEgbGlzdCBvZiBldmVudHMgdG8gcHVibGlzaC5cbiAgICovXG4gIHB1Ymxpc2goLi4uZXZlbnRzOiBFW10pOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIEEge0BsaW5rIFN1YnNjcmlwdGlvbn0gaXMgYW4gb2JqZWN0IHRoYXQgZGVzY3JpYmVzIGhvdyB0byBzZWxlY3QgZXZlbnRzIGZyb21cbiAqIHdpdGhpbiBhIHNlcnZpY2UgYm91bmRhcnkgdG8gcm91dGUgdG8gYSB7QGxpbmsgRXZlbnRIYW5kbGVyfS5cbiAqXG4gKiBGb3Igbm93LCB3ZSBvbmx5IHN1cHBvcnQgbWF0Y2hpbmcgb24gYSBzaW5nbGUgbmFtZSwgYnV0IHRoaXMgb2JqZWN0IGNhbiBiZVxuICogZXh0ZW5kZWQgd2l0aCBvdGhlciBwcm9wZXJ0aWVzIHN1Y2ggYXMgc2VsZWN0aW9uIHByZWRpY2F0ZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2NyaXB0aW9uIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGV2ZW50IHRvIHN1YnNjcmliZSB0by5cbiAgICovXG4gIG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBBbiB7QGxpbmsgRXZlbnRTdWJzY3JpcHRpb259IGlzIGFuIG9iamVjdCB0aGF0IGFzc29jaWF0ZXMgYSB7QGxpbmsgaGFuZGxlcn1cbiAqIGZ1bmN0aW9uIHdpdGggYSBsaXN0IG9mIHtAbGluayBzdWJzY3JpcHRpb25zfS4gVGhlIHtAbGluayBzdWJzY3JpcHRpb25zfVxuICogZGVmaW5lIHdoaWNoIGV2ZW50cyB0aGlzIHtAbGluayBoYW5kbGVyfSBzaG91bGQgYmUgaW52b2tlZCBmb3IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRTdWJzY3JpcHRpb248RSBleHRlbmRzIEV2ZW50UGF5bG9hZCA9IEV2ZW50UGF5bG9hZD4ge1xuICAvKipcbiAgICogQSBsaXN0IG9mIHtAbGluayBTdWJzY3JpcHRpb259cyB0aGF0IHNob3VsZCBpbnZva2UgdGhpcyB7QGxpbmsgaGFuZGxlcn0uXG4gICAqL1xuICBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXTtcbiAgLyoqXG4gICAqIFRoZSB7QGxpbmsgRXZlbnRIYW5kbGVyfSB0byBpbnZva2UgZm9yIGFueSBldmVudCB0aGF0IG1hdGNoZXMgb25lIG9mXG4gICAqIHRoZSB7QGxpbmsgc3Vic2NyaXB0aW9uc30uXG4gICAqL1xuICBoYW5kbGVyOiBFdmVudEhhbmRsZXI8RT47XG59XG5cbi8qKlxuICogQSBGdW5jdGlvbiB0aGF0IHByb2Nlc3NlcyBhbiB7QGxpbmsgZXZlbnR9IG9mIHR5cGUge0BsaW5rIEV9LlxuICovXG5leHBvcnQgdHlwZSBFdmVudEhhbmRsZXI8RSBleHRlbmRzIEV2ZW50UGF5bG9hZD4gPSAoZXZlbnQ6IEUpID0+IFByb21pc2U8dm9pZD47XG5cbi8qKlxuICogRGVjbGFyZXMgYW4gZXZlbnQgdGhhdCBjYW4gYmUgcHVibGlzaGVkIGFuZCBzdWJzY3JpYmVkIHRvLlxuICpcbiAqIFRvIGRlY2xhcmUgYW4ge0BsaW5rIEV2ZW50fSwgZGVmaW5lIGFuIGludGVyZmFjZSBkZXNjcmliaW5nIHRoZSB0eXBlXG4gKiBvZiB0aGUgcGF5bG9hZCBhbmQgdGhlbiBkZWNsYXJlIGFuIGV2ZW50IG9iamVjdCBnaXZpbmcgaXQgYSB1bmlxdWUgbmFtZS5cbiAqIGBgYHRzXG4gKiBpbnRlcmZhY2UgQ2hlY2tvdXRFdmVudCB7XG4gKiAgIGN1c3RvbWVySWQ6IHN0cmluZztcbiAqICAgY2FydElkOiBzdHJpbmc7XG4gKiAgIHRpbWVzdGFtcDogc3RyaW5nO1xuICogfVxuICpcbiAqIGNvbnN0IGNoZWNrb3V0RXZlbnQgPSBldmVudDxDaGVja291dEV2ZW50PihcIkNoZWNrb3V0XCIpO1xuICogYGBgXG4gKlxuICogVG8gcHVibGlzaCBldmVudHMsIGNhbGwgdGhlIGBwdWJsaXNoYCBtZXRob2Q6XG4gKiBgYGB0c1xuICogY29uc3QgY2hlY2tvdXRXb3JrZmxvdyA9IHdvcmtmbG93KFwiY2hlY2tvdXRXb3JrZmxvd1wiLCBhc3luYyAocmVxdWVzdCkgPT4ge1xuICogICBhd2FpdCBjaGVja291dEV2ZW50LnB1Ymxpc2goe1xuICogICAgIGN1c3RvbWVySWQ6IHJlcXVlc3QuY3VzdG9tZXJJZCxcbiAqICAgICBjYXJ0SWQ6IHJlcXVlc3QuY2FydElkLFxuICogICAgIHRpbWVzdGFtcDogbmV3IERhdGUoKS50b1RpbWVTdHJpbmcoKVxuICogICB9KTtcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBUbyBzdWJzY3JpYmUgdG8gZXZlbnRzLCBjYWxsIHRoZSBgb25gIG1ldGhvZC4gVGhpcyB3aWxsIHJlZ2lzdGVyIGFcbiAqIGhhbmRsZXIgdGhhdCB3aWwgbGJlIGludm9rZWQgZm9yIGV2ZXJ5IGV2ZW50IG9mIHRoaXMgdHlwZSB0aGF0IGlzIHJlY2VpdmVkLlxuICpcbiAqIGBgYHRzXG4gKiBjaGVja291dEV2ZW50Lm9uKGFzeW5jIChjaGVja291dCkgPT4ge1xuICogICBjb25zb2xlLmxvZyhjaGVja291dCk7XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBuYW1lIGEgdW5pcXVlIG5hbWUgdGhhdCBpZGVudGlmaWVzIHRoaXMgZXZlbnQgdHlwZSB3aXRoaW4gdGhlIFNlcnZpY2UuXG4gKiBAcmV0dXJucyBhbiB7QGxpbmsgRXZlbnR9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBldmVudDxFIGV4dGVuZHMgRXZlbnRQYXlsb2FkPihuYW1lOiBzdHJpbmcpOiBFdmVudDxFPiB7XG4gIGlmIChldmVudHMoKS5oYXMobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGV2ZW50IHdpdGggbmFtZSAnJHtuYW1lfScgYWxyZWFkeSBleGlzdHNgKTtcbiAgfVxuICBjb25zdCBldmVudDogRXZlbnQ8RT4gPSB7XG4gICAgbmFtZSxcbiAgICBvbihoYW5kbGVyKSB7XG4gICAgICBldmVudFN1YnNjcmlwdGlvbnMoKS5wdXNoKHtcbiAgICAgICAgc3Vic2NyaXB0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgaGFuZGxlcjogaGFuZGxlciBhcyBFdmVudEhhbmRsZXI8RXZlbnRQYXlsb2FkPixcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgcHVibGlzaCguLi5ldmVudHMpIHtcbiAgICAgIGNvbnN0IGVudmVsb3BlcyA9IGV2ZW50cy5tYXAoKGV2ZW50KSA9PiAoe1xuICAgICAgICBuYW1lLFxuICAgICAgICBldmVudCxcbiAgICAgIH0pKTtcbiAgICAgIGlmIChpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgICAgIHJldHVybiBjcmVhdGVQdWJsaXNoRXZlbnRzQ2FsbChlbnZlbG9wZXMpIGFzIGFueTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBnZXRTZXJ2aWNlQ2xpZW50KCkucHVibGlzaEV2ZW50cyh7IGV2ZW50czogZW52ZWxvcGVzIH0pO1xuICAgICAgfVxuICAgIH0sXG4gIH07XG4gIGV2ZW50cygpLnNldChuYW1lLCBldmVudCk7XG4gIHJldHVybiBldmVudDtcbn1cbiJdfQ==

@@ -1,2 +0,4 @@

import { SendSignalProps, Signal, SignalPayload, Workflow, WorkflowClient, WorkflowOutput } from "./index.js";
import { EventualServiceClient } from "./service-client.js";
import { Signal, SendSignalProps, SignalPayload } from "./signals.js";
import { Workflow, WorkflowOutput } from "./workflow.js";
export declare enum ExecutionStatus {

@@ -11,2 +13,3 @@ IN_PROGRESS = "IN_PROGRESS",

startTime: string;
workflowName: string;
parent?: {

@@ -43,6 +46,6 @@ /**

*/
export declare class ExecutionHandle<W extends Workflow<any, any>> {
export declare class ExecutionHandle<W extends Workflow> {
executionId: string;
private workflowClient;
constructor(executionId: string, workflowClient: WorkflowClient);
private serviceClient;
constructor(executionId: string, serviceClient: EventualServiceClient);
/**

@@ -49,0 +52,0 @@ * @return the {@link Execution} with the status, result, error, and other data based on the current status.

@@ -17,5 +17,5 @@ export var ExecutionStatus;

export class ExecutionHandle {
constructor(executionId, workflowClient) {
constructor(executionId, serviceClient) {
this.executionId = executionId;
this.workflowClient = workflowClient;
this.serviceClient = serviceClient;
}

@@ -26,3 +26,3 @@ /**

async getStatus() {
return (await this.workflowClient.getExecution(this.executionId));
return (await this.serviceClient.getExecution(this.executionId));
}

@@ -33,4 +33,4 @@ /**

async signal(signal, payload) {
return this.workflowClient.sendSignal({
executionId: this.executionId,
return this.serviceClient.sendSignal({
execution: this.executionId,
signal: typeof signal === "string" ? signal : signal.id,

@@ -41,2 +41,2 @@ payload,

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxNQUFNLENBQU4sSUFBWSxlQUlYO0FBSkQsV0FBWSxlQUFlO0lBQ3pCLDhDQUEyQixDQUFBO0lBQzNCLHdDQUFxQixDQUFBO0lBQ3JCLG9DQUFpQixDQUFBO0FBQ25CLENBQUMsRUFKVyxlQUFlLEtBQWYsZUFBZSxRQUkxQjtBQXdDRCxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLFNBQW9CO0lBRXBCLE9BQU8sU0FBUyxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsTUFBTSxDQUFDO0FBQ3JELENBQUM7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQ2pDLFNBQW9CO0lBRXBCLE9BQU8sU0FBUyxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsUUFBUSxDQUFDO0FBQ3ZELENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBQzFCLFlBQ1MsV0FBbUIsRUFDbEIsY0FBOEI7UUFEL0IsZ0JBQVcsR0FBWCxXQUFXLENBQVE7UUFDbEIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO0lBQ3JDLENBQUM7SUFFSjs7T0FFRztJQUNJLEtBQUssQ0FBQyxTQUFTO1FBQ3BCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUM1QyxJQUFJLENBQUMsV0FBVyxDQUNqQixDQUFpQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxNQUFNLENBQ2pCLE1BQWdDLEVBQ2hDLE9BQWdCO1FBRWhCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUM7WUFDcEMsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLE1BQU0sRUFBRSxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdkQsT0FBTztTQUNSLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFNlbmRTaWduYWxQcm9wcyxcbiAgU2lnbmFsLFxuICBTaWduYWxQYXlsb2FkLFxuICBXb3JrZmxvdyxcbiAgV29ya2Zsb3dDbGllbnQsXG4gIFdvcmtmbG93T3V0cHV0LFxufSBmcm9tIFwiLi9pbmRleC5qc1wiO1xuXG5leHBvcnQgZW51bSBFeGVjdXRpb25TdGF0dXMge1xuICBJTl9QUk9HUkVTUyA9IFwiSU5fUFJPR1JFU1NcIixcbiAgQ09NUExFVEUgPSBcIkNPTVBMRVRFXCIsXG4gIEZBSUxFRCA9IFwiRkFJTEVEXCIsXG59XG5cbmludGVyZmFjZSBFeGVjdXRpb25CYXNlIHtcbiAgaWQ6IHN0cmluZztcbiAgc3RhdHVzOiBFeGVjdXRpb25TdGF0dXM7XG4gIHN0YXJ0VGltZTogc3RyaW5nO1xuICBwYXJlbnQ/OiB7XG4gICAgLyoqXG4gICAgICogU2VxIG51bWJlciB3aGVuIHRoaXMgZXhlY3V0aW9uIGlzIHRoZSBjaGlsZCBvZiBhbm90aGVyIHdvcmtmbG93LlxuICAgICAqL1xuICAgIHNlcTogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIElkIG9mIHRoZSBwYXJlbnQgd29ya2Zsb3csIHdoaWxlIHByZXNlbnQuXG4gICAgICovXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgRXhlY3V0aW9uPFJlc3VsdCA9IGFueT4gPVxuICB8IEluUHJvZ3Jlc3NFeGVjdXRpb25cbiAgfCBDb21wbGV0ZUV4ZWN1dGlvbjxSZXN1bHQ+XG4gIHwgRmFpbGVkRXhlY3V0aW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIEluUHJvZ3Jlc3NFeGVjdXRpb24gZXh0ZW5kcyBFeGVjdXRpb25CYXNlIHtcbiAgc3RhdHVzOiBFeGVjdXRpb25TdGF0dXMuSU5fUFJPR1JFU1M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxldGVFeGVjdXRpb248UmVzdWx0ID0gYW55PiBleHRlbmRzIEV4ZWN1dGlvbkJhc2Uge1xuICBzdGF0dXM6IEV4ZWN1dGlvblN0YXR1cy5DT01QTEVURTtcbiAgZW5kVGltZTogc3RyaW5nO1xuICByZXN1bHQ/OiBSZXN1bHQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmFpbGVkRXhlY3V0aW9uIGV4dGVuZHMgRXhlY3V0aW9uQmFzZSB7XG4gIHN0YXR1czogRXhlY3V0aW9uU3RhdHVzLkZBSUxFRDtcbiAgZW5kVGltZTogc3RyaW5nO1xuICBlcnJvcjogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0ZhaWxlZEV4ZWN1dGlvbihcbiAgZXhlY3V0aW9uOiBFeGVjdXRpb25cbik6IGV4ZWN1dGlvbiBpcyBGYWlsZWRFeGVjdXRpb24ge1xuICByZXR1cm4gZXhlY3V0aW9uLnN0YXR1cyA9PT0gRXhlY3V0aW9uU3RhdHVzLkZBSUxFRDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ29tcGxldGVFeGVjdXRpb24oXG4gIGV4ZWN1dGlvbjogRXhlY3V0aW9uXG4pOiBleGVjdXRpb24gaXMgQ29tcGxldGVFeGVjdXRpb24ge1xuICByZXR1cm4gZXhlY3V0aW9uLnN0YXR1cyA9PT0gRXhlY3V0aW9uU3RhdHVzLkNPTVBMRVRFO1xufVxuXG4vKipcbiAqIEEgcmVmZXJlbmNlIHRvIGEgcnVubmluZyBleGVjdXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBFeGVjdXRpb25IYW5kbGU8VyBleHRlbmRzIFdvcmtmbG93PGFueSwgYW55Pj4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICBwcml2YXRlIHdvcmtmbG93Q2xpZW50OiBXb3JrZmxvd0NsaWVudFxuICApIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm4gdGhlIHtAbGluayBFeGVjdXRpb259IHdpdGggdGhlIHN0YXR1cywgcmVzdWx0LCBlcnJvciwgYW5kIG90aGVyIGRhdGEgYmFzZWQgb24gdGhlIGN1cnJlbnQgc3RhdHVzLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFN0YXR1cygpOiBQcm9taXNlPEV4ZWN1dGlvbjxXb3JrZmxvd091dHB1dDxXPj4+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMud29ya2Zsb3dDbGllbnQuZ2V0RXhlY3V0aW9uKFxuICAgICAgdGhpcy5leGVjdXRpb25JZFxuICAgICkpIGFzIEV4ZWN1dGlvbjxXb3JrZmxvd091dHB1dDxXPj47XG4gIH1cblxuICAvKipcbiAgICogU2VuZCBhIHtAbGluayBzaWduYWx9IHRvIHRoaXMgZXhlY3V0aW9uLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIHNpZ25hbDxQYXlsb2FkID0gYW55PihcbiAgICBzaWduYWw6IHN0cmluZyB8IFNpZ25hbDxQYXlsb2FkPixcbiAgICBwYXlsb2FkOiBQYXlsb2FkXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLndvcmtmbG93Q2xpZW50LnNlbmRTaWduYWwoe1xuICAgICAgZXhlY3V0aW9uSWQ6IHRoaXMuZXhlY3V0aW9uSWQsXG4gICAgICBzaWduYWw6IHR5cGVvZiBzaWduYWwgPT09IFwic3RyaW5nXCIgPyBzaWduYWwgOiBzaWduYWwuaWQsXG4gICAgICBwYXlsb2FkLFxuICAgIH0pO1xuICB9XG59XG5cbi8qKlxuICogQSByZWZlcmVuY2UgdG8gYW4gZXhlY3V0aW9uIHN0YXJ0ZWQgYnkgYW5vdGhlciB3b3JrZmxvdy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGlsZEV4ZWN1dGlvbiB7XG4gIC8qKlxuICAgKiBBbGxvd3MgYSB7QGxpbmsgd29ya2Zsb3d9IHRvIHNlbmQgYSBzaWduYWwgdG8gdGhlIHdvcmtmbG93IHtAbGluayBFeGVjdXRpb259LlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiBjb25zdCBteVNpZ25hbCA9IHNpZ25hbDxzdHJpbmc+KFwiTXlTaWduYWxcIik7XG4gICAqIGNvbnN0IGNoaWxkV2YgPSB3b3JrZmxvdyguLi4pO1xuICAgKiB3b3JrZmxvdyhcIndmXCIsIGFzeW5jICgpID0+IHtcbiAgICogICAgY29uc3QgY2hpbGQgPSBjaGlsZFdmKCk7XG4gICAqICAgIGNoaWxkLnNpZ25hbChteVNpZ25hbCk7XG4gICAqICAgIGF3YWl0IGNoaWxkO1xuICAgKiB9KVxuICAgKiBgYGBcbiAgICpcbiAgICogQHBhcmFtIGlkIGFuIG9wdGlvbmFsLCBleGVjdXRpb24gdW5pcXVlIElELCB3aWxsIGJlIHVzZWQgdG8gZGUtZHVwZSB0aGUgc2lnbmFsIGF0IHRoZSB0YXJnZXQgZXhlY3V0aW9uLlxuICAgKi9cbiAgc2lnbmFsPFMgZXh0ZW5kcyBTaWduYWw8YW55Pj4oXG4gICAgc2lnbmFsOiBTLFxuICAgIC4uLmFyZ3M6IFNlbmRTaWduYWxQcm9wczxTaWduYWxQYXlsb2FkPFM+PlxuICApOiBQcm9taXNlPHZvaWQ+O1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLENBQU4sSUFBWSxlQUlYO0FBSkQsV0FBWSxlQUFlO0lBQ3pCLDhDQUEyQixDQUFBO0lBQzNCLHdDQUFxQixDQUFBO0lBQ3JCLG9DQUFpQixDQUFBO0FBQ25CLENBQUMsRUFKVyxlQUFlLEtBQWYsZUFBZSxRQUkxQjtBQXlDRCxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLFNBQW9CO0lBRXBCLE9BQU8sU0FBUyxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsTUFBTSxDQUFDO0FBQ3JELENBQUM7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQ2pDLFNBQW9CO0lBRXBCLE9BQU8sU0FBUyxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsUUFBUSxDQUFDO0FBQ3ZELENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBQzFCLFlBQ1MsV0FBbUIsRUFDbEIsYUFBb0M7UUFEckMsZ0JBQVcsR0FBWCxXQUFXLENBQVE7UUFDbEIsa0JBQWEsR0FBYixhQUFhLENBQXVCO0lBQzNDLENBQUM7SUFFSjs7T0FFRztJQUNJLEtBQUssQ0FBQyxTQUFTO1FBQ3BCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUMzQyxJQUFJLENBQUMsV0FBVyxDQUNqQixDQUFpQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxNQUFNLENBQ2pCLE1BQWdDLEVBQ2hDLE9BQWdCO1FBRWhCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7WUFDbkMsU0FBUyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzNCLE1BQU0sRUFBRSxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdkQsT0FBTztTQUNSLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50dWFsU2VydmljZUNsaWVudCB9IGZyb20gXCIuL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5pbXBvcnQgeyBTaWduYWwsIFNlbmRTaWduYWxQcm9wcywgU2lnbmFsUGF5bG9hZCB9IGZyb20gXCIuL3NpZ25hbHMuanNcIjtcbmltcG9ydCB7IFdvcmtmbG93LCBXb3JrZmxvd091dHB1dCB9IGZyb20gXCIuL3dvcmtmbG93LmpzXCI7XG5cbmV4cG9ydCBlbnVtIEV4ZWN1dGlvblN0YXR1cyB7XG4gIElOX1BST0dSRVNTID0gXCJJTl9QUk9HUkVTU1wiLFxuICBDT01QTEVURSA9IFwiQ09NUExFVEVcIixcbiAgRkFJTEVEID0gXCJGQUlMRURcIixcbn1cblxuaW50ZXJmYWNlIEV4ZWN1dGlvbkJhc2Uge1xuICBpZDogc3RyaW5nO1xuICBzdGF0dXM6IEV4ZWN1dGlvblN0YXR1cztcbiAgc3RhcnRUaW1lOiBzdHJpbmc7XG4gIHdvcmtmbG93TmFtZTogc3RyaW5nO1xuICBwYXJlbnQ/OiB7XG4gICAgLyoqXG4gICAgICogU2VxIG51bWJlciB3aGVuIHRoaXMgZXhlY3V0aW9uIGlzIHRoZSBjaGlsZCBvZiBhbm90aGVyIHdvcmtmbG93LlxuICAgICAqL1xuICAgIHNlcTogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIElkIG9mIHRoZSBwYXJlbnQgd29ya2Zsb3csIHdoaWxlIHByZXNlbnQuXG4gICAgICovXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgRXhlY3V0aW9uPFJlc3VsdCA9IGFueT4gPVxuICB8IEluUHJvZ3Jlc3NFeGVjdXRpb25cbiAgfCBDb21wbGV0ZUV4ZWN1dGlvbjxSZXN1bHQ+XG4gIHwgRmFpbGVkRXhlY3V0aW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIEluUHJvZ3Jlc3NFeGVjdXRpb24gZXh0ZW5kcyBFeGVjdXRpb25CYXNlIHtcbiAgc3RhdHVzOiBFeGVjdXRpb25TdGF0dXMuSU5fUFJPR1JFU1M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxldGVFeGVjdXRpb248UmVzdWx0ID0gYW55PiBleHRlbmRzIEV4ZWN1dGlvbkJhc2Uge1xuICBzdGF0dXM6IEV4ZWN1dGlvblN0YXR1cy5DT01QTEVURTtcbiAgZW5kVGltZTogc3RyaW5nO1xuICByZXN1bHQ/OiBSZXN1bHQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmFpbGVkRXhlY3V0aW9uIGV4dGVuZHMgRXhlY3V0aW9uQmFzZSB7XG4gIHN0YXR1czogRXhlY3V0aW9uU3RhdHVzLkZBSUxFRDtcbiAgZW5kVGltZTogc3RyaW5nO1xuICBlcnJvcjogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0ZhaWxlZEV4ZWN1dGlvbihcbiAgZXhlY3V0aW9uOiBFeGVjdXRpb25cbik6IGV4ZWN1dGlvbiBpcyBGYWlsZWRFeGVjdXRpb24ge1xuICByZXR1cm4gZXhlY3V0aW9uLnN0YXR1cyA9PT0gRXhlY3V0aW9uU3RhdHVzLkZBSUxFRDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ29tcGxldGVFeGVjdXRpb24oXG4gIGV4ZWN1dGlvbjogRXhlY3V0aW9uXG4pOiBleGVjdXRpb24gaXMgQ29tcGxldGVFeGVjdXRpb24ge1xuICByZXR1cm4gZXhlY3V0aW9uLnN0YXR1cyA9PT0gRXhlY3V0aW9uU3RhdHVzLkNPTVBMRVRFO1xufVxuXG4vKipcbiAqIEEgcmVmZXJlbmNlIHRvIGEgcnVubmluZyBleGVjdXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBFeGVjdXRpb25IYW5kbGU8VyBleHRlbmRzIFdvcmtmbG93PiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIHByaXZhdGUgc2VydmljZUNsaWVudDogRXZlbnR1YWxTZXJ2aWNlQ2xpZW50XG4gICkge31cblxuICAvKipcbiAgICogQHJldHVybiB0aGUge0BsaW5rIEV4ZWN1dGlvbn0gd2l0aCB0aGUgc3RhdHVzLCByZXN1bHQsIGVycm9yLCBhbmQgb3RoZXIgZGF0YSBiYXNlZCBvbiB0aGUgY3VycmVudCBzdGF0dXMuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0U3RhdHVzKCk6IFByb21pc2U8RXhlY3V0aW9uPFdvcmtmbG93T3V0cHV0PFc+Pj4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5zZXJ2aWNlQ2xpZW50LmdldEV4ZWN1dGlvbihcbiAgICAgIHRoaXMuZXhlY3V0aW9uSWRcbiAgICApKSBhcyBFeGVjdXRpb248V29ya2Zsb3dPdXRwdXQ8Vz4+O1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbmQgYSB7QGxpbmsgc2lnbmFsfSB0byB0aGlzIGV4ZWN1dGlvbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzaWduYWw8UGF5bG9hZCA9IGFueT4oXG4gICAgc2lnbmFsOiBzdHJpbmcgfCBTaWduYWw8UGF5bG9hZD4sXG4gICAgcGF5bG9hZDogUGF5bG9hZFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlQ2xpZW50LnNlbmRTaWduYWwoe1xuICAgICAgZXhlY3V0aW9uOiB0aGlzLmV4ZWN1dGlvbklkLFxuICAgICAgc2lnbmFsOiB0eXBlb2Ygc2lnbmFsID09PSBcInN0cmluZ1wiID8gc2lnbmFsIDogc2lnbmFsLmlkLFxuICAgICAgcGF5bG9hZCxcbiAgICB9KTtcbiAgfVxufVxuXG4vKipcbiAqIEEgcmVmZXJlbmNlIHRvIGFuIGV4ZWN1dGlvbiBzdGFydGVkIGJ5IGFub3RoZXIgd29ya2Zsb3cuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hpbGRFeGVjdXRpb24ge1xuICAvKipcbiAgICogQWxsb3dzIGEge0BsaW5rIHdvcmtmbG93fSB0byBzZW5kIGEgc2lnbmFsIHRvIHRoZSB3b3JrZmxvdyB7QGxpbmsgRXhlY3V0aW9ufS5cbiAgICpcbiAgICogYGBgdHNcbiAgICogY29uc3QgbXlTaWduYWwgPSBzaWduYWw8c3RyaW5nPihcIk15U2lnbmFsXCIpO1xuICAgKiBjb25zdCBjaGlsZFdmID0gd29ya2Zsb3coLi4uKTtcbiAgICogd29ya2Zsb3coXCJ3ZlwiLCBhc3luYyAoKSA9PiB7XG4gICAqICAgIGNvbnN0IGNoaWxkID0gY2hpbGRXZigpO1xuICAgKiAgICBjaGlsZC5zaWduYWwobXlTaWduYWwpO1xuICAgKiAgICBhd2FpdCBjaGlsZDtcbiAgICogfSlcbiAgICogYGBgXG4gICAqXG4gICAqIEBwYXJhbSBpZCBhbiBvcHRpb25hbCwgZXhlY3V0aW9uIHVuaXF1ZSBJRCwgd2lsbCBiZSB1c2VkIHRvIGRlLWR1cGUgdGhlIHNpZ25hbCBhdCB0aGUgdGFyZ2V0IGV4ZWN1dGlvbi5cbiAgICovXG4gIHNpZ25hbDxTIGV4dGVuZHMgU2lnbmFsPGFueT4+KFxuICAgIHNpZ25hbDogUyxcbiAgICAuLi5hcmdzOiBTZW5kU2lnbmFsUHJvcHM8U2lnbmFsUGF5bG9hZDxTPj5cbiAgKTogUHJvbWlzZTx2b2lkPjtcbn1cbiJdfQ==
import { Event, EventSubscription } from "./event.js";
import { ActivityContext, ActivityHandler } from "./activity.js";
import type { Eventual, EventualCallCollector } from "./eventual.js";
import { EventClient } from "./runtime/clients/event-client.js";
import type { WorkflowClient } from "./runtime/clients/workflow-client.js";
import type { Workflow } from "./workflow.js";
import { EventualServiceClient } from "./service-client.js";
declare global {

@@ -34,3 +33,3 @@ var _eventual: {

*/
workflowClient?: WorkflowClient;
serviceClient?: EventualServiceClient;
/**

@@ -46,8 +45,2 @@ * A global variable storing a map of event name (which is globally unique)

eventSubscriptions?: EventSubscription[];
/**
* A global variable for storing the {@link EventClient}
*
* This is initialized by Eventual's harness functions
*/
eventClient?: EventClient;
};

@@ -64,22 +57,13 @@ }

/**
* Register the global workflow client used by workflow functions
* Register the global service client used by workflow functions
* to start workflows within an eventual-controlled environment.
*/
export declare function registerWorkflowClient(client: WorkflowClient): void;
export declare function registerServiceClient(client: EventualServiceClient): void;
/**
* Get the global workflow client.
* Get the global service client.
*/
export declare function getWorkflowClient(): WorkflowClient;
export declare function getServiceClient(): EventualServiceClient;
export declare function setActivityContext(context: ActivityContext): void;
export declare function clearActivityContext(): void;
export declare function getActivityContext(): ActivityContext;
/**
* Register the global event client sued by the event emit functions
* to emit events within an eventual-controlled environment.
*/
export declare function registerEventClient(client: EventClient): void;
/**
* Get the global event client.
*/
export declare function getEventClient(): EventClient;
//# sourceMappingURL=global.d.ts.map

@@ -26,16 +26,16 @@ globalThis._eventual = {};

/**
* Register the global workflow client used by workflow functions
* Register the global service client used by workflow functions
* to start workflows within an eventual-controlled environment.
*/
export function registerWorkflowClient(client) {
globalThis._eventual.workflowClient = client;
export function registerServiceClient(client) {
globalThis._eventual.serviceClient = client;
}
/**
* Get the global workflow client.
* Get the global service client.
*/
export function getWorkflowClient() {
if (globalThis._eventual.workflowClient === undefined) {
export function getServiceClient() {
if (globalThis._eventual.serviceClient === undefined) {
throw new Error(`WorkflowClient is not registered`);
}
return globalThis._eventual.workflowClient;
return globalThis._eventual.serviceClient;
}

@@ -55,18 +55,2 @@ export function setActivityContext(context) {

}
/**
* Register the global event client sued by the event emit functions
* to emit events within an eventual-controlled environment.
*/
export function registerEventClient(client) {
globalThis._eventual.eventClient = client;
}
/**
* Get the global event client.
*/
export function getEventClient() {
if (globalThis._eventual.eventClient === undefined) {
throw new Error(`EventClient is not registered`);
}
return globalThis._eventual.eventClient;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dsb2JhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3REEsVUFBVSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7QUFFMUIsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLEdBQTBCLEVBQUUsQ0FDbkQsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLFNBQVMsS0FBSyxJQUFJLEdBQUcsRUFBb0IsQ0FBQyxDQUFDO0FBRW5FLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxHQUF1QixFQUFFLENBQzdDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssSUFBSSxHQUFHLEVBQWlCLENBQUMsQ0FBQztBQUU3RCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUF3QixFQUFFLENBQzFELENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsS0FBSyxFQUFFLENBQUMsQ0FBQztBQUVuRCxNQUFNLFVBQVUsdUJBQXVCO0lBQ3JDLFVBQVUsQ0FBQyxTQUFTLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0FBQy9DLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUF5QyxFQUFFLENBQzNFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsS0FBSyxFQUFFLENBQUMsQ0FBQztBQUVuRCxNQUFNLGlCQUFpQixHQUFHLEdBQTBCLEVBQUU7SUFDcEQsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQztJQUN6RCxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0tBQ25EO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLGdCQUFnQixDQUFxQixRQUFXO0lBQzlELE9BQU8saUJBQWlCLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxTQUFnQztJQUNuRSxVQUFVLENBQUMsU0FBUyxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztBQUNyRCxDQUFDO0FBRUQsTUFBTSxVQUFVLHNCQUFzQjtJQUNwQyxVQUFVLENBQUMsU0FBUyxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztBQUNyRCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUFDLE1BQXNCO0lBQzNELFVBQVUsQ0FBQyxTQUFTLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztBQUMvQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsaUJBQWlCO0lBQy9CLElBQUksVUFBVSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEtBQUssU0FBUyxFQUFFO1FBQ3JELE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztLQUNyRDtJQUNELE9BQU8sVUFBVSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUM7QUFDN0MsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxPQUF3QjtJQUN6RCxVQUFVLENBQUMsU0FBUyxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUM7QUFDakQsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDO0FBQ25ELENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCO0lBQ2hDLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDO0lBRXJELElBQUksQ0FBQyxPQUFPLEVBQUU7UUFDWixNQUFNLElBQUksS0FBSyxDQUNiLGtGQUFrRixDQUNuRixDQUFDO0tBQ0g7SUFDRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLE1BQW1CO0lBQ3JELFVBQVUsQ0FBQyxTQUFTLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQztBQUM1QyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsY0FBYztJQUM1QixJQUFJLFVBQVUsQ0FBQyxTQUFTLENBQUMsV0FBVyxLQUFLLFNBQVMsRUFBRTtRQUNsRCxNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7S0FDbEQ7SUFDRCxPQUFPLFVBQVUsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDO0FBQzFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudCwgRXZlbnRTdWJzY3JpcHRpb24gfSBmcm9tIFwiLi9ldmVudC5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlDb250ZXh0LCBBY3Rpdml0eUhhbmRsZXIgfSBmcm9tIFwiLi9hY3Rpdml0eS5qc1wiO1xuaW1wb3J0IHR5cGUgeyBFdmVudHVhbCwgRXZlbnR1YWxDYWxsQ29sbGVjdG9yIH0gZnJvbSBcIi4vZXZlbnR1YWwuanNcIjtcbmltcG9ydCB7IEV2ZW50Q2xpZW50IH0gZnJvbSBcIi4vcnVudGltZS9jbGllbnRzL2V2ZW50LWNsaWVudC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBXb3JrZmxvd0NsaWVudCB9IGZyb20gXCIuL3J1bnRpbWUvY2xpZW50cy93b3JrZmxvdy1jbGllbnQuanNcIjtcbmltcG9ydCB0eXBlIHsgV29ya2Zsb3cgfSBmcm9tIFwiLi93b3JrZmxvdy5qc1wiO1xuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby12YXJcbiAgdmFyIF9ldmVudHVhbDoge1xuICAgIC8qKlxuICAgICAqIERhdGEgYWJvdXQgdGhlIGN1cnJlbnQgYWN0aXZpdHkgYXNzaWduZWQgYmVmb3JlIHJ1bm5pbmcgYW4gYWN0aXZpdHkgb24gYW4gdGhlIGFjdGl2aXR5IHdvcmtlci5cbiAgICAgKi9cbiAgICBhY3Rpdml0eUNvbnRleHQ/OiBBY3Rpdml0eUNvbnRleHQ7XG4gICAgLyoqXG4gICAgICogQW4gb2JqZWN0IHVzZWQgYnkgdGhlIGludGVycHJldGVyIHRvIGNvbGxlY3Qge0BsaW5rIEV2ZW50dWFsfXMgd2hpbGUgcnVubmluZyBhIHdvcmtmbG93IGNvZGUuXG4gICAgICpcbiAgICAgKiBTZXQgYnkgdGhlIGludGVycHJldGVyIG9ubHkgd2hlbiBuZWVkZWQuXG4gICAgICovXG4gICAgZXZlbnR1YWxDb2xsZWN0b3I/OiBFdmVudHVhbENhbGxDb2xsZWN0b3I7XG4gICAgLyoqXG4gICAgICogQ2FsbGFibGUgYWN0aXZpdGllcyB3aGljaCByZWdpc3RlciB0aGVtc2VsdmVzIGluIGFuIGFjdGl2aXR5IHdvcmtlci5cbiAgICAgKi9cbiAgICBjYWxsYWJsZUFjdGl2aXRpZXM/OiBSZWNvcmQ8c3RyaW5nLCBBY3Rpdml0eUhhbmRsZXI8YW55Pj47XG4gICAgLyoqXG4gICAgICogQXZhaWxhYmxlIHdvcmtmbG93cyB3aGljaCBoYXZlIHJlZ2lzdGVyZWQgdGhlbXNlbHZlcy5cbiAgICAgKlxuICAgICAqIFVzZWQgYnkgdGhlIG9yY2hlc3RyYXRvciwgYWN0aXZpdHkgd29ya2VyLCBhbmQgb3RoZXIgc2NvcGVzIHRvIGludGVyYWN0IHdpdGggd29ya2Zsb3dzIGluXG4gICAgICogYSBzZXJ2aWNlLlxuICAgICAqL1xuICAgIHdvcmtmbG93cz86IE1hcDxzdHJpbmcsIFdvcmtmbG93PjtcbiAgICAvKipcbiAgICAgKiBBIGdsb2JhbCB2YXJpYWJsZSBmb3Igc3RvcmluZyB0aGUgV29ya2Zsb3dDbGllbnRcbiAgICAgKiB0aGlzIGlzIGluaXRpYWxpemVkIGJ5IEV2ZW50dWFsJ3MgaGFybmVzcyBsYW1iZGEgZnVuY3Rpb25zXG4gICAgICovXG4gICAgd29ya2Zsb3dDbGllbnQ/OiBXb3JrZmxvd0NsaWVudDtcbiAgICAvKipcbiAgICAgKiBBIGdsb2JhbCB2YXJpYWJsZSBzdG9yaW5nIGEgbWFwIG9mIGV2ZW50IG5hbWUgKHdoaWNoIGlzIGdsb2JhbGx5IHVuaXF1ZSlcbiAgICAgKiB0byB0aGUge0BsaW5rIEV2ZW50fSBkZWNsYXJhdGlvbiBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICBldmVudHM/OiBNYXA8c3RyaW5nLCBFdmVudD47XG4gICAgLyoqXG4gICAgICogQSBnbG9iYWwgdmFyaWFibGUgc3RvcmluZyBhIGxpc3Qgb2YgYWxsIHtAbGluayBFdmVudFN1YnNjcmlwdGlvbn1zIGRlY2xhcmVkXG4gICAgICogd2l0aGluIHRoaXMgYXBwbGljYXRpb24uXG4gICAgICovXG4gICAgZXZlbnRTdWJzY3JpcHRpb25zPzogRXZlbnRTdWJzY3JpcHRpb25bXTtcblxuICAgIC8qKlxuICAgICAqIEEgZ2xvYmFsIHZhcmlhYmxlIGZvciBzdG9yaW5nIHRoZSB7QGxpbmsgRXZlbnRDbGllbnR9XG4gICAgICpcbiAgICAgKiBUaGlzIGlzIGluaXRpYWxpemVkIGJ5IEV2ZW50dWFsJ3MgaGFybmVzcyBmdW5jdGlvbnNcbiAgICAgKi9cbiAgICBldmVudENsaWVudD86IEV2ZW50Q2xpZW50O1xuICB9O1xufVxuXG5nbG9iYWxUaGlzLl9ldmVudHVhbCA9IHt9O1xuXG5leHBvcnQgY29uc3Qgd29ya2Zsb3dzID0gKCk6IE1hcDxzdHJpbmcsIFdvcmtmbG93PiA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwud29ya2Zsb3dzID8/PSBuZXcgTWFwPHN0cmluZywgV29ya2Zsb3c+KCkpO1xuXG5leHBvcnQgY29uc3QgZXZlbnRzID0gKCk6IE1hcDxzdHJpbmcsIEV2ZW50PiA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnRzID8/PSBuZXcgTWFwPHN0cmluZywgRXZlbnQ+KCkpO1xuXG5leHBvcnQgY29uc3QgZXZlbnRTdWJzY3JpcHRpb25zID0gKCk6IEV2ZW50U3Vic2NyaXB0aW9uW10gPT5cbiAgKGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50U3Vic2NyaXB0aW9ucyA/Pz0gW10pO1xuXG5leHBvcnQgZnVuY3Rpb24gY2xlYXJFdmVudFN1YnNjcmlwdGlvbnMoKSB7XG4gIGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50U3Vic2NyaXB0aW9ucyA9IFtdO1xufVxuXG5leHBvcnQgY29uc3QgY2FsbGFibGVBY3Rpdml0aWVzID0gKCk6IFJlY29yZDxzdHJpbmcsIEFjdGl2aXR5SGFuZGxlcjxhbnk+PiA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwuY2FsbGFibGVBY3Rpdml0aWVzID8/PSB7fSk7XG5cbmNvbnN0IGV2ZW50dWFsQ29sbGVjdG9yID0gKCk6IEV2ZW50dWFsQ2FsbENvbGxlY3RvciA9PiB7XG4gIGNvbnN0IGNvbGxlY3RvciA9IGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50dWFsQ29sbGVjdG9yO1xuICBpZiAoIWNvbGxlY3Rvcikge1xuICAgIHRocm93IG5ldyBFcnJvcihcIk5vIEV2ZW50dWFsIENvbGxlY3RvciBQcm92aWRlZFwiKTtcbiAgfVxuICByZXR1cm4gY29sbGVjdG9yO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyRXZlbnR1YWw8QSBleHRlbmRzIEV2ZW50dWFsPihldmVudHVhbDogQSk6IEEge1xuICByZXR1cm4gZXZlbnR1YWxDb2xsZWN0b3IoKS5wdXNoRXZlbnR1YWwoZXZlbnR1YWwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0RXZlbnR1YWxDb2xsZWN0b3IoY29sbGVjdG9yOiBFdmVudHVhbENhbGxDb2xsZWN0b3IpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnR1YWxDb2xsZWN0b3IgPSBjb2xsZWN0b3I7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhckV2ZW50dWFsQ29sbGVjdG9yKCkge1xuICBnbG9iYWxUaGlzLl9ldmVudHVhbC5ldmVudHVhbENvbGxlY3RvciA9IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBSZWdpc3RlciB0aGUgZ2xvYmFsIHdvcmtmbG93IGNsaWVudCB1c2VkIGJ5IHdvcmtmbG93IGZ1bmN0aW9uc1xuICogdG8gc3RhcnQgd29ya2Zsb3dzIHdpdGhpbiBhbiBldmVudHVhbC1jb250cm9sbGVkIGVudmlyb25tZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJXb3JrZmxvd0NsaWVudChjbGllbnQ6IFdvcmtmbG93Q2xpZW50KSB7XG4gIGdsb2JhbFRoaXMuX2V2ZW50dWFsLndvcmtmbG93Q2xpZW50ID0gY2xpZW50O1xufVxuXG4vKipcbiAqIEdldCB0aGUgZ2xvYmFsIHdvcmtmbG93IGNsaWVudC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFdvcmtmbG93Q2xpZW50KCk6IFdvcmtmbG93Q2xpZW50IHtcbiAgaWYgKGdsb2JhbFRoaXMuX2V2ZW50dWFsLndvcmtmbG93Q2xpZW50ID09PSB1bmRlZmluZWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFdvcmtmbG93Q2xpZW50IGlzIG5vdCByZWdpc3RlcmVkYCk7XG4gIH1cbiAgcmV0dXJuIGdsb2JhbFRoaXMuX2V2ZW50dWFsLndvcmtmbG93Q2xpZW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0QWN0aXZpdHlDb250ZXh0KGNvbnRleHQ6IEFjdGl2aXR5Q29udGV4dCkge1xuICBnbG9iYWxUaGlzLl9ldmVudHVhbC5hY3Rpdml0eUNvbnRleHQgPSBjb250ZXh0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2xlYXJBY3Rpdml0eUNvbnRleHQoKSB7XG4gIGdsb2JhbFRoaXMuX2V2ZW50dWFsLmFjdGl2aXR5Q29udGV4dCA9IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFjdGl2aXR5Q29udGV4dCgpOiBBY3Rpdml0eUNvbnRleHQge1xuICBjb25zdCBjb250ZXh0ID0gZ2xvYmFsVGhpcy5fZXZlbnR1YWwuYWN0aXZpdHlDb250ZXh0O1xuXG4gIGlmICghY29udGV4dCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwiQWN0aXZpdHkgQ29udGV4dCBoYXMgbm90IGJlZW4gcmVnaXN0ZXJlZCB5ZXQgb3IgdGhpcyBpcyBub3QgdGhlIGFjdGl2aXR5IHdvcmtlci5cIlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIGNvbnRleHQ7XG59XG5cbi8qKlxuICogUmVnaXN0ZXIgdGhlIGdsb2JhbCBldmVudCBjbGllbnQgc3VlZCBieSB0aGUgZXZlbnQgZW1pdCBmdW5jdGlvbnNcbiAqIHRvIGVtaXQgZXZlbnRzIHdpdGhpbiBhbiBldmVudHVhbC1jb250cm9sbGVkIGVudmlyb25tZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJFdmVudENsaWVudChjbGllbnQ6IEV2ZW50Q2xpZW50KSB7XG4gIGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50Q2xpZW50ID0gY2xpZW50O1xufVxuXG4vKipcbiAqIEdldCB0aGUgZ2xvYmFsIGV2ZW50IGNsaWVudC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEV2ZW50Q2xpZW50KCk6IEV2ZW50Q2xpZW50IHtcbiAgaWYgKGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50Q2xpZW50ID09PSB1bmRlZmluZWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEV2ZW50Q2xpZW50IGlzIG5vdCByZWdpc3RlcmVkYCk7XG4gIH1cbiAgcmV0dXJuIGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50Q2xpZW50O1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dsb2JhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnREEsVUFBVSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7QUFFMUIsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLEdBQTBCLEVBQUUsQ0FDbkQsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLFNBQVMsS0FBSyxJQUFJLEdBQUcsRUFBb0IsQ0FBQyxDQUFDO0FBRW5FLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxHQUF1QixFQUFFLENBQzdDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssSUFBSSxHQUFHLEVBQWlCLENBQUMsQ0FBQztBQUU3RCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUF3QixFQUFFLENBQzFELENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsS0FBSyxFQUFFLENBQUMsQ0FBQztBQUVuRCxNQUFNLFVBQVUsdUJBQXVCO0lBQ3JDLFVBQVUsQ0FBQyxTQUFTLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0FBQy9DLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUF5QyxFQUFFLENBQzNFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsS0FBSyxFQUFFLENBQUMsQ0FBQztBQUVuRCxNQUFNLGlCQUFpQixHQUFHLEdBQTBCLEVBQUU7SUFDcEQsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQztJQUN6RCxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0tBQ25EO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLGdCQUFnQixDQUFxQixRQUFXO0lBQzlELE9BQU8saUJBQWlCLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxTQUFnQztJQUNuRSxVQUFVLENBQUMsU0FBUyxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztBQUNyRCxDQUFDO0FBRUQsTUFBTSxVQUFVLHNCQUFzQjtJQUNwQyxVQUFVLENBQUMsU0FBUyxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztBQUNyRCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQixDQUFDLE1BQTZCO0lBQ2pFLFVBQVUsQ0FBQyxTQUFTLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQztBQUM5QyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCO0lBQzlCLElBQUksVUFBVSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEtBQUssU0FBUyxFQUFFO1FBQ3BELE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztLQUNyRDtJQUNELE9BQU8sVUFBVSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUM7QUFDNUMsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxPQUF3QjtJQUN6RCxVQUFVLENBQUMsU0FBUyxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUM7QUFDakQsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDO0FBQ25ELENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCO0lBQ2hDLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDO0lBRXJELElBQUksQ0FBQyxPQUFPLEVBQUU7UUFDWixNQUFNLElBQUksS0FBSyxDQUNiLGtGQUFrRixDQUNuRixDQUFDO0tBQ0g7SUFDRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnQsIEV2ZW50U3Vic2NyaXB0aW9uIH0gZnJvbSBcIi4vZXZlbnQuanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5Q29udGV4dCwgQWN0aXZpdHlIYW5kbGVyIH0gZnJvbSBcIi4vYWN0aXZpdHkuanNcIjtcbmltcG9ydCB0eXBlIHsgRXZlbnR1YWwsIEV2ZW50dWFsQ2FsbENvbGxlY3RvciB9IGZyb20gXCIuL2V2ZW50dWFsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IFdvcmtmbG93IH0gZnJvbSBcIi4vd29ya2Zsb3cuanNcIjtcbmltcG9ydCB7IEV2ZW50dWFsU2VydmljZUNsaWVudCB9IGZyb20gXCIuL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZhclxuICB2YXIgX2V2ZW50dWFsOiB7XG4gICAgLyoqXG4gICAgICogRGF0YSBhYm91dCB0aGUgY3VycmVudCBhY3Rpdml0eSBhc3NpZ25lZCBiZWZvcmUgcnVubmluZyBhbiBhY3Rpdml0eSBvbiBhbiB0aGUgYWN0aXZpdHkgd29ya2VyLlxuICAgICAqL1xuICAgIGFjdGl2aXR5Q29udGV4dD86IEFjdGl2aXR5Q29udGV4dDtcbiAgICAvKipcbiAgICAgKiBBbiBvYmplY3QgdXNlZCBieSB0aGUgaW50ZXJwcmV0ZXIgdG8gY29sbGVjdCB7QGxpbmsgRXZlbnR1YWx9cyB3aGlsZSBydW5uaW5nIGEgd29ya2Zsb3cgY29kZS5cbiAgICAgKlxuICAgICAqIFNldCBieSB0aGUgaW50ZXJwcmV0ZXIgb25seSB3aGVuIG5lZWRlZC5cbiAgICAgKi9cbiAgICBldmVudHVhbENvbGxlY3Rvcj86IEV2ZW50dWFsQ2FsbENvbGxlY3RvcjtcbiAgICAvKipcbiAgICAgKiBDYWxsYWJsZSBhY3Rpdml0aWVzIHdoaWNoIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgaW4gYW4gYWN0aXZpdHkgd29ya2VyLlxuICAgICAqL1xuICAgIGNhbGxhYmxlQWN0aXZpdGllcz86IFJlY29yZDxzdHJpbmcsIEFjdGl2aXR5SGFuZGxlcjxhbnk+PjtcbiAgICAvKipcbiAgICAgKiBBdmFpbGFibGUgd29ya2Zsb3dzIHdoaWNoIGhhdmUgcmVnaXN0ZXJlZCB0aGVtc2VsdmVzLlxuICAgICAqXG4gICAgICogVXNlZCBieSB0aGUgb3JjaGVzdHJhdG9yLCBhY3Rpdml0eSB3b3JrZXIsIGFuZCBvdGhlciBzY29wZXMgdG8gaW50ZXJhY3Qgd2l0aCB3b3JrZmxvd3MgaW5cbiAgICAgKiBhIHNlcnZpY2UuXG4gICAgICovXG4gICAgd29ya2Zsb3dzPzogTWFwPHN0cmluZywgV29ya2Zsb3c+O1xuICAgIC8qKlxuICAgICAqIEEgZ2xvYmFsIHZhcmlhYmxlIGZvciBzdG9yaW5nIHRoZSBXb3JrZmxvd0NsaWVudFxuICAgICAqIHRoaXMgaXMgaW5pdGlhbGl6ZWQgYnkgRXZlbnR1YWwncyBoYXJuZXNzIGxhbWJkYSBmdW5jdGlvbnNcbiAgICAgKi9cbiAgICBzZXJ2aWNlQ2xpZW50PzogRXZlbnR1YWxTZXJ2aWNlQ2xpZW50O1xuICAgIC8qKlxuICAgICAqIEEgZ2xvYmFsIHZhcmlhYmxlIHN0b3JpbmcgYSBtYXAgb2YgZXZlbnQgbmFtZSAod2hpY2ggaXMgZ2xvYmFsbHkgdW5pcXVlKVxuICAgICAqIHRvIHRoZSB7QGxpbmsgRXZlbnR9IGRlY2xhcmF0aW9uIGluc3RhbmNlLlxuICAgICAqL1xuICAgIGV2ZW50cz86IE1hcDxzdHJpbmcsIEV2ZW50PjtcbiAgICAvKipcbiAgICAgKiBBIGdsb2JhbCB2YXJpYWJsZSBzdG9yaW5nIGEgbGlzdCBvZiBhbGwge0BsaW5rIEV2ZW50U3Vic2NyaXB0aW9ufXMgZGVjbGFyZWRcbiAgICAgKiB3aXRoaW4gdGhpcyBhcHBsaWNhdGlvbi5cbiAgICAgKi9cbiAgICBldmVudFN1YnNjcmlwdGlvbnM/OiBFdmVudFN1YnNjcmlwdGlvbltdO1xuICB9O1xufVxuXG5nbG9iYWxUaGlzLl9ldmVudHVhbCA9IHt9O1xuXG5leHBvcnQgY29uc3Qgd29ya2Zsb3dzID0gKCk6IE1hcDxzdHJpbmcsIFdvcmtmbG93PiA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwud29ya2Zsb3dzID8/PSBuZXcgTWFwPHN0cmluZywgV29ya2Zsb3c+KCkpO1xuXG5leHBvcnQgY29uc3QgZXZlbnRzID0gKCk6IE1hcDxzdHJpbmcsIEV2ZW50PiA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnRzID8/PSBuZXcgTWFwPHN0cmluZywgRXZlbnQ+KCkpO1xuXG5leHBvcnQgY29uc3QgZXZlbnRTdWJzY3JpcHRpb25zID0gKCk6IEV2ZW50U3Vic2NyaXB0aW9uW10gPT5cbiAgKGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50U3Vic2NyaXB0aW9ucyA/Pz0gW10pO1xuXG5leHBvcnQgZnVuY3Rpb24gY2xlYXJFdmVudFN1YnNjcmlwdGlvbnMoKSB7XG4gIGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50U3Vic2NyaXB0aW9ucyA9IFtdO1xufVxuXG5leHBvcnQgY29uc3QgY2FsbGFibGVBY3Rpdml0aWVzID0gKCk6IFJlY29yZDxzdHJpbmcsIEFjdGl2aXR5SGFuZGxlcjxhbnk+PiA9PlxuICAoZ2xvYmFsVGhpcy5fZXZlbnR1YWwuY2FsbGFibGVBY3Rpdml0aWVzID8/PSB7fSk7XG5cbmNvbnN0IGV2ZW50dWFsQ29sbGVjdG9yID0gKCk6IEV2ZW50dWFsQ2FsbENvbGxlY3RvciA9PiB7XG4gIGNvbnN0IGNvbGxlY3RvciA9IGdsb2JhbFRoaXMuX2V2ZW50dWFsLmV2ZW50dWFsQ29sbGVjdG9yO1xuICBpZiAoIWNvbGxlY3Rvcikge1xuICAgIHRocm93IG5ldyBFcnJvcihcIk5vIEV2ZW50dWFsIENvbGxlY3RvciBQcm92aWRlZFwiKTtcbiAgfVxuICByZXR1cm4gY29sbGVjdG9yO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyRXZlbnR1YWw8QSBleHRlbmRzIEV2ZW50dWFsPihldmVudHVhbDogQSk6IEEge1xuICByZXR1cm4gZXZlbnR1YWxDb2xsZWN0b3IoKS5wdXNoRXZlbnR1YWwoZXZlbnR1YWwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0RXZlbnR1YWxDb2xsZWN0b3IoY29sbGVjdG9yOiBFdmVudHVhbENhbGxDb2xsZWN0b3IpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuZXZlbnR1YWxDb2xsZWN0b3IgPSBjb2xsZWN0b3I7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhckV2ZW50dWFsQ29sbGVjdG9yKCkge1xuICBnbG9iYWxUaGlzLl9ldmVudHVhbC5ldmVudHVhbENvbGxlY3RvciA9IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBSZWdpc3RlciB0aGUgZ2xvYmFsIHNlcnZpY2UgY2xpZW50IHVzZWQgYnkgd29ya2Zsb3cgZnVuY3Rpb25zXG4gKiB0byBzdGFydCB3b3JrZmxvd3Mgd2l0aGluIGFuIGV2ZW50dWFsLWNvbnRyb2xsZWQgZW52aXJvbm1lbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlclNlcnZpY2VDbGllbnQoY2xpZW50OiBFdmVudHVhbFNlcnZpY2VDbGllbnQpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuc2VydmljZUNsaWVudCA9IGNsaWVudDtcbn1cblxuLyoqXG4gKiBHZXQgdGhlIGdsb2JhbCBzZXJ2aWNlIGNsaWVudC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNlcnZpY2VDbGllbnQoKTogRXZlbnR1YWxTZXJ2aWNlQ2xpZW50IHtcbiAgaWYgKGdsb2JhbFRoaXMuX2V2ZW50dWFsLnNlcnZpY2VDbGllbnQgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgV29ya2Zsb3dDbGllbnQgaXMgbm90IHJlZ2lzdGVyZWRgKTtcbiAgfVxuICByZXR1cm4gZ2xvYmFsVGhpcy5fZXZlbnR1YWwuc2VydmljZUNsaWVudDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldEFjdGl2aXR5Q29udGV4dChjb250ZXh0OiBBY3Rpdml0eUNvbnRleHQpIHtcbiAgZ2xvYmFsVGhpcy5fZXZlbnR1YWwuYWN0aXZpdHlDb250ZXh0ID0gY29udGV4dDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyQWN0aXZpdHlDb250ZXh0KCkge1xuICBnbG9iYWxUaGlzLl9ldmVudHVhbC5hY3Rpdml0eUNvbnRleHQgPSB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBY3Rpdml0eUNvbnRleHQoKTogQWN0aXZpdHlDb250ZXh0IHtcbiAgY29uc3QgY29udGV4dCA9IGdsb2JhbFRoaXMuX2V2ZW50dWFsLmFjdGl2aXR5Q29udGV4dDtcblxuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcIkFjdGl2aXR5IENvbnRleHQgaGFzIG5vdCBiZWVuIHJlZ2lzdGVyZWQgeWV0IG9yIHRoaXMgaXMgbm90IHRoZSBhY3Rpdml0eSB3b3JrZXIuXCJcbiAgICApO1xuICB9XG4gIHJldHVybiBjb250ZXh0O1xufVxuIl19

@@ -1,2 +0,2 @@

import { HeartbeatResponse } from "./runtime/clients/workflow-client.js";
import { SendActivityHeartbeatResponse } from "./service-client.js";
/**

@@ -12,3 +12,3 @@ * Sends a heartbeat for the current activity or to the provided activity token.

*/
export declare function heartbeat(activityToken?: string): Promise<HeartbeatResponse>;
export declare function heartbeat(activityToken?: string): Promise<SendActivityHeartbeatResponse>;
//# sourceMappingURL=heartbeat.d.ts.map

@@ -1,2 +0,2 @@

import { getActivityContext, getWorkflowClient } from "./global.js";
import { getActivityContext, getServiceClient } from "./global.js";
import { isActivityWorker, isOrchestratorWorker } from "./runtime/flags.js";

@@ -18,3 +18,3 @@ /**

else if (activityToken) {
return await getWorkflowClient().heartbeatActivity({
return await getServiceClient().sendActivityHeartbeat({
activityToken,

@@ -25,3 +25,3 @@ });

const token = getActivityContext().activityToken;
return await getWorkflowClient().heartbeatActivity({
return await getServiceClient().sendActivityHeartbeat({
activityToken: token,

@@ -34,2 +34,2 @@ });

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhcnRiZWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlYXJ0YmVhdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFNUU7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxTQUFTLENBQzdCLGFBQXNCO0lBRXRCLElBQUksb0JBQW9CLEVBQUUsRUFBRTtRQUMxQixNQUFNLElBQUksS0FBSyxDQUNiLGtHQUFrRyxDQUNuRyxDQUFDO0tBQ0g7U0FBTSxJQUFJLGFBQWEsRUFBRTtRQUN4QixPQUFPLE1BQU0saUJBQWlCLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztZQUNqRCxhQUFhO1NBQ2QsQ0FBQyxDQUFDO0tBQ0o7U0FBTSxJQUFJLGdCQUFnQixFQUFFLEVBQUU7UUFDN0IsTUFBTSxLQUFLLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFDakQsT0FBTyxNQUFNLGlCQUFpQixFQUFFLENBQUMsaUJBQWlCLENBQUM7WUFDakQsYUFBYSxFQUFFLEtBQUs7U0FDckIsQ0FBQyxDQUFDO0tBQ0o7U0FBTTtRQUNMLE1BQU0sSUFBSSxLQUFLLENBQ2IsOERBQThELENBQy9ELENBQUM7S0FDSDtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBY3Rpdml0eUNvbnRleHQsIGdldFdvcmtmbG93Q2xpZW50IH0gZnJvbSBcIi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgeyBIZWFydGJlYXRSZXNwb25zZSB9IGZyb20gXCIuL3J1bnRpbWUvY2xpZW50cy93b3JrZmxvdy1jbGllbnQuanNcIjtcbmltcG9ydCB7IGlzQWN0aXZpdHlXb3JrZXIsIGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vcnVudGltZS9mbGFncy5qc1wiO1xuXG4vKipcbiAqIFNlbmRzIGEgaGVhcnRiZWF0IGZvciB0aGUgY3VycmVudCBhY3Rpdml0eSBvciB0byB0aGUgcHJvdmlkZWQgYWN0aXZpdHkgdG9rZW4uXG4gKlxuICogSWYgY2FsbGVkIGZyb20gb3V0c2lkZSBvZiBhbiB7QGxpbmsgYWN0aXZpdHl9LCB0aGUgYWN0aXZpdHkgdG9rZW4gbXVzdCBiZSBwcm92aWRlZC5cbiAqXG4gKiBJZiB0aGUgYWN0aXZpdHkgaGFzIGEgaGVhcnRiZWF0VGltZW91dCBzZXQgYW5kIHRoZSB3b3JrZmxvdyBoYXMgbm90IHJlY2VpdmVkIGEgaGVhcnRiZWF0IGluIGhlYXJ0YmVhdFRpbWVvdXRTZWNvbmRzLFxuICogdGhlIHdvcmtmbG93IHdpbGwgdGhyb3cgYSB7QGxpbmsgSGVhcnRiZWF0VGltZW91dH0gYW5kIGNhbmNlbCB0aGUgYWN0aXZpdHkuXG4gKlxuICogQHJldHVybnMge0BsaW5rIEhlYXJ0YmVhdFJlc3BvbnNlfSB3aGljaCBoYXMgcmVzcG9uc2UuY2FuY2VsbGVkIGlmIHRoZSBhY3Rpdml0eSB3YXMgY2FuY2VsbGVkIGZvciBhbnkgcmVhc29uIChleDogd29ya2Zsb3cgY29tcGxldGVkLCBmYWlsZWQsIG9yIHRoZSBhY3Rpdml0eSB0aW1lZCBvdXQpLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaGVhcnRiZWF0KFxuICBhY3Rpdml0eVRva2VuPzogc3RyaW5nXG4pOiBQcm9taXNlPEhlYXJ0YmVhdFJlc3BvbnNlPiB7XG4gIGlmIChpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJIZWFydGJlYXQgaXMgbm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgZnJvbSB3aXRoaW4gYSB3b3JrZmxvdy4gVXNlIGFuIGFjdGl2aXR5IHdpdGggYGhlYXJ0YmVhdCgpYC5cIlxuICAgICk7XG4gIH0gZWxzZSBpZiAoYWN0aXZpdHlUb2tlbikge1xuICAgIHJldHVybiBhd2FpdCBnZXRXb3JrZmxvd0NsaWVudCgpLmhlYXJ0YmVhdEFjdGl2aXR5KHtcbiAgICAgIGFjdGl2aXR5VG9rZW4sXG4gICAgfSk7XG4gIH0gZWxzZSBpZiAoaXNBY3Rpdml0eVdvcmtlcigpKSB7XG4gICAgY29uc3QgdG9rZW4gPSBnZXRBY3Rpdml0eUNvbnRleHQoKS5hY3Rpdml0eVRva2VuO1xuICAgIHJldHVybiBhd2FpdCBnZXRXb3JrZmxvd0NsaWVudCgpLmhlYXJ0YmVhdEFjdGl2aXR5KHtcbiAgICAgIGFjdGl2aXR5VG9rZW46IHRva2VuLFxuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwiQWN0aXZpdHkgdG9rZW4gbXVzdCBiZSBwcm92aWRlZCB3aGVuIG5vdCB3aXRoaW4gYW4gQWN0aXZpdHkuXCJcbiAgICApO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhcnRiZWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlYXJ0YmVhdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHNUU7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxTQUFTLENBQzdCLGFBQXNCO0lBRXRCLElBQUksb0JBQW9CLEVBQUUsRUFBRTtRQUMxQixNQUFNLElBQUksS0FBSyxDQUNiLGtHQUFrRyxDQUNuRyxDQUFDO0tBQ0g7U0FBTSxJQUFJLGFBQWEsRUFBRTtRQUN4QixPQUFPLE1BQU0sZ0JBQWdCLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztZQUNwRCxhQUFhO1NBQ2QsQ0FBQyxDQUFDO0tBQ0o7U0FBTSxJQUFJLGdCQUFnQixFQUFFLEVBQUU7UUFDN0IsTUFBTSxLQUFLLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFDakQsT0FBTyxNQUFNLGdCQUFnQixFQUFFLENBQUMscUJBQXFCLENBQUM7WUFDcEQsYUFBYSxFQUFFLEtBQUs7U0FDckIsQ0FBQyxDQUFDO0tBQ0o7U0FBTTtRQUNMLE1BQU0sSUFBSSxLQUFLLENBQ2IsOERBQThELENBQy9ELENBQUM7S0FDSDtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBY3Rpdml0eUNvbnRleHQsIGdldFNlcnZpY2VDbGllbnQgfSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IGlzQWN0aXZpdHlXb3JrZXIsIGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vcnVudGltZS9mbGFncy5qc1wiO1xuaW1wb3J0IHsgU2VuZEFjdGl2aXR5SGVhcnRiZWF0UmVzcG9uc2UgfSBmcm9tIFwiLi9zZXJ2aWNlLWNsaWVudC5qc1wiO1xuXG4vKipcbiAqIFNlbmRzIGEgaGVhcnRiZWF0IGZvciB0aGUgY3VycmVudCBhY3Rpdml0eSBvciB0byB0aGUgcHJvdmlkZWQgYWN0aXZpdHkgdG9rZW4uXG4gKlxuICogSWYgY2FsbGVkIGZyb20gb3V0c2lkZSBvZiBhbiB7QGxpbmsgYWN0aXZpdHl9LCB0aGUgYWN0aXZpdHkgdG9rZW4gbXVzdCBiZSBwcm92aWRlZC5cbiAqXG4gKiBJZiB0aGUgYWN0aXZpdHkgaGFzIGEgaGVhcnRiZWF0VGltZW91dCBzZXQgYW5kIHRoZSB3b3JrZmxvdyBoYXMgbm90IHJlY2VpdmVkIGEgaGVhcnRiZWF0IGluIGhlYXJ0YmVhdFRpbWVvdXRTZWNvbmRzLFxuICogdGhlIHdvcmtmbG93IHdpbGwgdGhyb3cgYSB7QGxpbmsgSGVhcnRiZWF0VGltZW91dH0gYW5kIGNhbmNlbCB0aGUgYWN0aXZpdHkuXG4gKlxuICogQHJldHVybnMge0BsaW5rIEhlYXJ0YmVhdFJlc3BvbnNlfSB3aGljaCBoYXMgcmVzcG9uc2UuY2FuY2VsbGVkIGlmIHRoZSBhY3Rpdml0eSB3YXMgY2FuY2VsbGVkIGZvciBhbnkgcmVhc29uIChleDogd29ya2Zsb3cgY29tcGxldGVkLCBmYWlsZWQsIG9yIHRoZSBhY3Rpdml0eSB0aW1lZCBvdXQpLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaGVhcnRiZWF0KFxuICBhY3Rpdml0eVRva2VuPzogc3RyaW5nXG4pOiBQcm9taXNlPFNlbmRBY3Rpdml0eUhlYXJ0YmVhdFJlc3BvbnNlPiB7XG4gIGlmIChpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJIZWFydGJlYXQgaXMgbm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgZnJvbSB3aXRoaW4gYSB3b3JrZmxvdy4gVXNlIGFuIGFjdGl2aXR5IHdpdGggYGhlYXJ0YmVhdCgpYC5cIlxuICAgICk7XG4gIH0gZWxzZSBpZiAoYWN0aXZpdHlUb2tlbikge1xuICAgIHJldHVybiBhd2FpdCBnZXRTZXJ2aWNlQ2xpZW50KCkuc2VuZEFjdGl2aXR5SGVhcnRiZWF0KHtcbiAgICAgIGFjdGl2aXR5VG9rZW4sXG4gICAgfSk7XG4gIH0gZWxzZSBpZiAoaXNBY3Rpdml0eVdvcmtlcigpKSB7XG4gICAgY29uc3QgdG9rZW4gPSBnZXRBY3Rpdml0eUNvbnRleHQoKS5hY3Rpdml0eVRva2VuO1xuICAgIHJldHVybiBhd2FpdCBnZXRTZXJ2aWNlQ2xpZW50KCkuc2VuZEFjdGl2aXR5SGVhcnRiZWF0KHtcbiAgICAgIGFjdGl2aXR5VG9rZW46IHRva2VuLFxuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwiQWN0aXZpdHkgdG9rZW4gbXVzdCBiZSBwcm92aWRlZCB3aGVuIG5vdCB3aXRoaW4gYW4gQWN0aXZpdHkuXCJcbiAgICApO1xuICB9XG59XG4iXX0=

@@ -19,2 +19,3 @@ export * from "./activity.js";

export * from "./secret.js";
export * from "./service-client.js";
export * from "./service-type.js";

@@ -21,0 +22,0 @@ export * from "./signals.js";

@@ -19,2 +19,3 @@ export * from "./activity.js";

export * from "./secret.js";
export * from "./service-client.js";
export * from "./service-type.js";

@@ -27,2 +28,2 @@ export * from "./signals.js";

export * from "./workflow.js";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vYWN0aXZpdHkuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2FwaS5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vYXBwLXNwZWMuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2F3YWl0LWFsbC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY2hhaW4uanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbW1hbmQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmRpdGlvbi5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29udGV4dC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXJyb3IuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2V2ZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9ldmVudHVhbC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXhlY3V0aW9uLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2hlYXJ0YmVhdC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vaW50ZXJwcmV0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXN1bHQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3J1bnRpbWUvaW5kZXguanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NlY3JldC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VydmljZS10eXBlLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zaWduYWxzLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zbGVlcC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdGFza3MuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3V0aWwuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3dvcmtmbG93LWV2ZW50cy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vd29ya2Zsb3cuanNcIjtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9hY3Rpdml0eS5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vYXBpLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9hcHAtc3BlYy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vYXdhaXQtYWxsLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jaGFpbi5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29tbWFuZC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZGl0aW9uLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb250ZXh0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9lcnJvci5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXZlbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2V2ZW50dWFsLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leGVjdXRpb24uanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2dsb2JhbC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vaGVhcnRiZWF0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9pbnRlcnByZXQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3Jlc3VsdC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vcnVudGltZS9pbmRleC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VjcmV0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zZXJ2aWNlLWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VydmljZS10eXBlLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zaWduYWxzLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zbGVlcC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdGFza3MuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3V0aWwuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3dvcmtmbG93LWV2ZW50cy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vd29ya2Zsb3cuanNcIjtcbiJdfQ==

@@ -0,1 +1,2 @@

import { ExecutionEventsRequest, ExecutionEventsResponse } from "../../service-client.js";
import { WorkflowEvent } from "../../workflow-events.js";

@@ -12,4 +13,4 @@ export type UnresolvedEvent<T extends WorkflowEvent> = Omit<T, "id" | "timestamp">;

*/
abstract getEvents(executionId: string): Promise<WorkflowEvent[]>;
abstract getEvents(request: ExecutionEventsRequest): Promise<ExecutionEventsResponse>;
}
//# sourceMappingURL=execution-history-client.d.ts.map
export class ExecutionHistoryClient {
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLWhpc3RvcnktY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvY2xpZW50cy9leGVjdXRpb24taGlzdG9yeS1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxPQUFnQixzQkFBc0I7Q0FrQjNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV29ya2Zsb3dFdmVudCB9IGZyb20gXCIuLi8uLi93b3JrZmxvdy1ldmVudHMuanNcIjtcblxuZXhwb3J0IHR5cGUgVW5yZXNvbHZlZEV2ZW50PFQgZXh0ZW5kcyBXb3JrZmxvd0V2ZW50PiA9IE9taXQ8XG4gIFQsXG4gIFwiaWRcIiB8IFwidGltZXN0YW1wXCJcbj47XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBFeGVjdXRpb25IaXN0b3J5Q2xpZW50IHtcbiAgcHVibGljIGFic3RyYWN0IHB1dEV2ZW50PFQgZXh0ZW5kcyBXb3JrZmxvd0V2ZW50PihcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGV2ZW50OiBUXG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIFdyaXRlcyBldmVudHMgYXMgYSBiYXRjaCBpbnRvIHRoZSBleGVjdXRpb24gaGlzdG9yeSB0YWJsZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBwdXRFdmVudHMoXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICBldmVudHM6IFdvcmtmbG93RXZlbnRbXVxuICApOiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBSZWFkIGFuIGV4ZWN1dGlvbidzIGV2ZW50cyBmcm9tIHRoZSBleGVjdXRpb24gaGlzdG9yeSB0YWJsZSB0YWJsZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldEV2ZW50cyhleGVjdXRpb25JZDogc3RyaW5nKTogUHJvbWlzZTxXb3JrZmxvd0V2ZW50W10+O1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLWhpc3RvcnktY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvY2xpZW50cy9leGVjdXRpb24taGlzdG9yeS1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsTUFBTSxPQUFnQixzQkFBc0I7Q0FvQjNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRXhlY3V0aW9uRXZlbnRzUmVxdWVzdCxcbiAgRXhlY3V0aW9uRXZlbnRzUmVzcG9uc2UsXG59IGZyb20gXCIuLi8uLi9zZXJ2aWNlLWNsaWVudC5qc1wiO1xuaW1wb3J0IHsgV29ya2Zsb3dFdmVudCB9IGZyb20gXCIuLi8uLi93b3JrZmxvdy1ldmVudHMuanNcIjtcblxuZXhwb3J0IHR5cGUgVW5yZXNvbHZlZEV2ZW50PFQgZXh0ZW5kcyBXb3JrZmxvd0V2ZW50PiA9IE9taXQ8XG4gIFQsXG4gIFwiaWRcIiB8IFwidGltZXN0YW1wXCJcbj47XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBFeGVjdXRpb25IaXN0b3J5Q2xpZW50IHtcbiAgcHVibGljIGFic3RyYWN0IHB1dEV2ZW50PFQgZXh0ZW5kcyBXb3JrZmxvd0V2ZW50PihcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuICAgIGV2ZW50OiBUXG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIFdyaXRlcyBldmVudHMgYXMgYSBiYXRjaCBpbnRvIHRoZSBleGVjdXRpb24gaGlzdG9yeSB0YWJsZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBwdXRFdmVudHMoXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICBldmVudHM6IFdvcmtmbG93RXZlbnRbXVxuICApOiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBSZWFkIGFuIGV4ZWN1dGlvbidzIGV2ZW50cyBmcm9tIHRoZSBleGVjdXRpb24gaGlzdG9yeSB0YWJsZSB0YWJsZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldEV2ZW50cyhcbiAgICByZXF1ZXN0OiBFeGVjdXRpb25FdmVudHNSZXF1ZXN0XG4gICk6IFByb21pc2U8RXhlY3V0aW9uRXZlbnRzUmVzcG9uc2U+O1xufVxuIl19

@@ -8,2 +8,3 @@ export * from "./activity-runtime-client.js";

export * from "./workflow-runtime-client.js";
export * from "./runtime-service-clients.js";
//# sourceMappingURL=index.d.ts.map

@@ -8,2 +8,3 @@ export * from "./activity-runtime-client.js";

export * from "./workflow-runtime-client.js";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcnVudGltZS9jbGllbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9hY3Rpdml0eS1ydW50aW1lLWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXZlbnQtY2xpZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leGVjdXRpb24taGlzdG9yeS1jbGllbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL21ldHJpY3MtY2xpZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90aW1lci1jbGllbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3dvcmtmbG93LWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vd29ya2Zsb3ctcnVudGltZS1jbGllbnQuanNcIjtcbiJdfQ==
export * from "./runtime-service-clients.js";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcnVudGltZS9jbGllbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2FjdGl2aXR5LXJ1bnRpbWUtY2xpZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9ldmVudC1jbGllbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2V4ZWN1dGlvbi1oaXN0b3J5LWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vbWV0cmljcy1jbGllbnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3RpbWVyLWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vd29ya2Zsb3ctY2xpZW50LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi93b3JrZmxvdy1ydW50aW1lLWNsaWVudC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vcnVudGltZS1zZXJ2aWNlLWNsaWVudHMuanNcIjtcbiJdfQ==
import { HistoryStateEvent } from "../../workflow-events.js";
import { Execution, ExecutionStatus } from "../../execution.js";
import { Execution, ExecutionHandle } from "../../execution.js";
import { Signal } from "../../signals.js";
import { Workflow, WorkflowInput, WorkflowOptions } from "../../workflow.js";
import { Workflow, WorkflowOptions } from "../../workflow.js";
import { ActivityRuntimeClient } from "./activity-runtime-client.js";
import { SendActivitySuccessRequest, SendActivityFailureRequest, GetExecutionsRequest, GetExecutionsResponse, SendActivityHeartbeatRequest, StartExecutionRequest, SendActivityHeartbeatResponse } from "../../service-client.js";
export declare abstract class WorkflowClient {

@@ -24,6 +25,3 @@ private activityRuntimeClient;

abstract submitWorkflowTask(executionId: string, ...events: HistoryStateEvent[]): Promise<void>;
abstract getExecutions(props: {
statuses?: ExecutionStatus[];
workflowName?: string;
}): Promise<Execution[]>;
abstract getExecutions(props: GetExecutionsRequest): Promise<GetExecutionsResponse>;
abstract getExecution(executionId: string): Promise<Execution | undefined>;

@@ -40,7 +38,7 @@ /**

*/
completeActivity({ activityToken, result, }: CompleteActivityRequest): Promise<void>;
completeActivity({ activityToken, result, }: Omit<SendActivitySuccessRequest, "type">): Promise<void>;
/**
* Fails an async activity causing it to throw the given error.
*/
failActivity({ activityToken, error, message, }: FailActivityRequest): Promise<void>;
failActivity({ activityToken, error, message, }: Omit<SendActivityFailureRequest, "type">): Promise<void>;
/**

@@ -51,9 +49,9 @@ * Submits a "heartbeat" for the given activityToken.

*/
heartbeatActivity(request: HeartbeatRequest): Promise<HeartbeatResponse>;
heartbeatActivity(request: Omit<SendActivityHeartbeatRequest, "type">): Promise<SendActivityHeartbeatResponse>;
private sendActivityResult;
}
export interface SendSignalRequest {
executionId: string;
signal: string | Signal;
payload?: any;
export interface SendSignalRequest<Payload = any> {
execution: ExecutionHandle<any> | string;
signal: string | Signal<Payload>;
payload?: Payload;
/**

@@ -64,23 +62,3 @@ * Execution scoped unique event id. Duplicates will be deduplicated.

}
export interface StartWorkflowRequest<W extends Workflow = Workflow> extends WorkflowOptions {
/**
* Name of the workflow execution.
*
* Only one workflow can exist for an ID. Requests to start a workflow
* with the name of an existing workflow will fail.
*
* @default - a unique name is generated.
*/
executionName?: string;
/**
* Name of the workflow to execute.
*/
workflowName: string;
/**
* Input payload for the workflow function.
*/
input?: WorkflowInput<W>;
/**
* ID of the parent execution if this is a child workflow
*/
export interface StartWorkflowRequest<W extends Workflow = Workflow> extends StartExecutionRequest<W>, WorkflowOptions {
parentExecutionId?: string;

@@ -98,22 +76,2 @@ /**

}
export interface CompleteActivityRequest<T = any> {
activityToken: string;
result: T;
}
export interface FailActivityRequest {
activityToken: string;
error: string;
message?: string;
}
export interface HeartbeatRequest {
activityToken: string;
}
export interface HeartbeatResponse {
/**
* True when the activity has been cancelled.
*
* This is the only way for a long running activity to know it was canelled.
*/
cancelled: boolean;
}
//# sourceMappingURL=workflow-client.d.ts.map
import { createEvent, WorkflowEventType, } from "../../workflow-events.js";
import { ExecutionStatus } from "../../execution.js";
import { ExecutionStatus, } from "../../execution.js";
import { decodeActivityToken } from "../activity-token.js";

@@ -16,3 +16,6 @@ export class WorkflowClient {

async sendSignal(request) {
await this.submitWorkflowTask(request.executionId, createEvent({
const executionId = typeof request.execution === "string"
? request.execution
: request.execution.executionId;
await this.submitWorkflowTask(executionId, createEvent({
type: WorkflowEventType.SignalReceived,

@@ -65,2 +68,2 @@ payload: request.payload,

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvY2xpZW50cy93b3JrZmxvdy1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFdBQVcsRUFHWCxpQkFBaUIsR0FDbEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQWEsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHM0QsTUFBTSxPQUFnQixjQUFjO0lBQ2xDLFlBQ1UscUJBQTRDLEVBQzFDLFFBQW9CO1FBRHRCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDMUMsYUFBUSxHQUFSLFFBQVEsQ0FBWTtJQUM3QixDQUFDO0lBZ0NKOzs7OztPQUtHO0lBQ0ksS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUEwQjtRQUNoRCxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FDM0IsT0FBTyxDQUFDLFdBQVcsRUFDbkIsV0FBVyxDQUNUO1lBQ0UsSUFBSSxFQUFFLGlCQUFpQixDQUFDLGNBQWM7WUFDdEMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1lBQ3hCLFFBQVEsRUFDTixPQUFPLE9BQU8sQ0FBQyxNQUFNLEtBQUssUUFBUTtnQkFDaEMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNO2dCQUNoQixDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1NBQ3hCLEVBQ0QsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUNmLE9BQU8sQ0FBQyxFQUFFLENBQ1gsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGdCQUFnQixDQUFDLEVBQzVCLGFBQWEsRUFDYixNQUFNLEdBQ2tCO1FBQ3hCLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFvQixhQUFhLEVBQUU7WUFDOUQsSUFBSSxFQUFFLGlCQUFpQixDQUFDLGlCQUFpQjtZQUN6QyxNQUFNO1NBQ1AsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUN4QixhQUFhLEVBQ2IsS0FBSyxFQUNMLE9BQU8sR0FDYTtRQUNwQixNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBaUIsYUFBYSxFQUFFO1lBQzNELElBQUksRUFBRSxpQkFBaUIsQ0FBQyxjQUFjO1lBQ3RDLEtBQUs7WUFDTCxPQUFPO1NBQ1IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsaUJBQWlCLENBQzVCLE9BQXlCO1FBRXpCLE1BQU0sSUFBSSxHQUFHLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV4RCxNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVwRSxJQUFJLFNBQVMsRUFBRSxNQUFNLEtBQUssZUFBZSxDQUFDLFdBQVcsRUFBRTtZQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDO1NBQzVCO1FBRUQsT0FBTyxNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FDdkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUNoQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQzlCLENBQUM7SUFDSixDQUFDO0lBRU8sS0FBSyxDQUFDLGtCQUFrQixDQUU5QixhQUFxQixFQUFFLEtBQWdEO1FBQ3ZFLE1BQU0sSUFBSSxHQUFHLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFDeEIsV0FBVyxDQUNUO1lBQ0UsR0FBRyxLQUFLO1lBQ1IsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRztTQUN0QixFQUNELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FDaEIsQ0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWN0aXZpdHlDb21wbGV0ZWQsXG4gIEFjdGl2aXR5RmFpbGVkLFxuICBjcmVhdGVFdmVudCxcbiAgSGlzdG9yeVN0YXRlRXZlbnQsXG4gIFNpZ25hbFJlY2VpdmVkLFxuICBXb3JrZmxvd0V2ZW50VHlwZSxcbn0gZnJvbSBcIi4uLy4uL3dvcmtmbG93LWV2ZW50cy5qc1wiO1xuaW1wb3J0IHsgRXhlY3V0aW9uLCBFeGVjdXRpb25TdGF0dXMgfSBmcm9tIFwiLi4vLi4vZXhlY3V0aW9uLmpzXCI7XG5pbXBvcnQgeyBTaWduYWwgfSBmcm9tIFwiLi4vLi4vc2lnbmFscy5qc1wiO1xuaW1wb3J0IHsgV29ya2Zsb3csIFdvcmtmbG93SW5wdXQsIFdvcmtmbG93T3B0aW9ucyB9IGZyb20gXCIuLi8uLi93b3JrZmxvdy5qc1wiO1xuaW1wb3J0IHsgZGVjb2RlQWN0aXZpdHlUb2tlbiB9IGZyb20gXCIuLi9hY3Rpdml0eS10b2tlbi5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlSdW50aW1lQ2xpZW50IH0gZnJvbSBcIi4vYWN0aXZpdHktcnVudGltZS1jbGllbnQuanNcIjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFdvcmtmbG93Q2xpZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhY3Rpdml0eVJ1bnRpbWVDbGllbnQ6IEFjdGl2aXR5UnVudGltZUNsaWVudCxcbiAgICBwcm90ZWN0ZWQgYmFzZVRpbWU6ICgpID0+IERhdGVcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBTdGFydCBhIHdvcmtmbG93IGV4ZWN1dGlvblxuICAgKiBAcGFyYW0gbmFtZSBTdWZmaXggb2YgZXhlY3V0aW9uIGlkXG4gICAqIEBwYXJhbSBpbnB1dCBXb3JrZmxvdyBwYXJhbWV0ZXJzXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3Qgc3RhcnRXb3JrZmxvdzxXIGV4dGVuZHMgV29ya2Zsb3cgPSBXb3JrZmxvdz4oXG4gICAgcmVxdWVzdDogU3RhcnRXb3JrZmxvd1JlcXVlc3Q8Vz5cbiAgKTogUHJvbWlzZTxzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBTdWJtaXQgZXZlbnRzIHRvIGJlIHByb2Nlc3NlZCBieSBhIHdvcmtmbG93J3Mgb3JjaGVzdHJhdG9yLlxuICAgKlxuICAgKiBAcGFyYW0gZXhlY3V0aW9uSWQgSUQgb2YgdGhlIHdvcmtmbG93IGV4ZWN1dGlvblxuICAgKiBAcGFyYW0gZXZlbnRzIGV2ZW50cyB0byBzdWJtaXQgZm9yIHByb2Nlc3NpbmdcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBzdWJtaXRXb3JrZmxvd1Rhc2soXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICAuLi5ldmVudHM6IEhpc3RvcnlTdGF0ZUV2ZW50W11cbiAgKTogUHJvbWlzZTx2b2lkPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZ2V0RXhlY3V0aW9ucyhwcm9wczoge1xuICAgIHN0YXR1c2VzPzogRXhlY3V0aW9uU3RhdHVzW107XG4gICAgd29ya2Zsb3dOYW1lPzogc3RyaW5nO1xuICB9KTogUHJvbWlzZTxFeGVjdXRpb25bXT47XG5cbiAgcHVibGljIGFic3RyYWN0IGdldEV4ZWN1dGlvbihcbiAgICBleGVjdXRpb25JZDogc3RyaW5nXG4gICk6IFByb21pc2U8RXhlY3V0aW9uIHwgdW5kZWZpbmVkPjtcblxuICAvKipcbiAgICogU2VuZHMgYSBzaWduYWwgdG8gdGhlIGdpdmVuIGV4ZWN1dGlvbi5cbiAgICpcbiAgICogVGhlIGV4ZWN1dGlvbiBtYXkgYmUgd2FpdGluZyBvbiBhIHNpZ25hbCBvciBtYXkgaGF2ZSBhIGhhbmRsZXIgcmVnaXN0ZXJlZFxuICAgKiB0aGF0IHJ1bnMgd2hlbiB0aGUgc2lnbmFsIGlzIHJlY2VpdmVkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIHNlbmRTaWduYWwocmVxdWVzdDogU2VuZFNpZ25hbFJlcXVlc3QpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnN1Ym1pdFdvcmtmbG93VGFzayhcbiAgICAgIHJlcXVlc3QuZXhlY3V0aW9uSWQsXG4gICAgICBjcmVhdGVFdmVudDxTaWduYWxSZWNlaXZlZD4oXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5TaWduYWxSZWNlaXZlZCxcbiAgICAgICAgICBwYXlsb2FkOiByZXF1ZXN0LnBheWxvYWQsXG4gICAgICAgICAgc2lnbmFsSWQ6XG4gICAgICAgICAgICB0eXBlb2YgcmVxdWVzdC5zaWduYWwgPT09IFwic3RyaW5nXCJcbiAgICAgICAgICAgICAgPyByZXF1ZXN0LnNpZ25hbFxuICAgICAgICAgICAgICA6IHJlcXVlc3Quc2lnbmFsLmlkLFxuICAgICAgICB9LFxuICAgICAgICB0aGlzLmJhc2VUaW1lKCksXG4gICAgICAgIHJlcXVlc3QuaWRcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXBsZXRlcyBhbiBhc3luYyBhY3Rpdml0eSBjYXVzaW5nIGl0IHRvIHJldHVybiB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY29tcGxldGVBY3Rpdml0eSh7XG4gICAgYWN0aXZpdHlUb2tlbixcbiAgICByZXN1bHQsXG4gIH06IENvbXBsZXRlQWN0aXZpdHlSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5zZW5kQWN0aXZpdHlSZXN1bHQ8QWN0aXZpdHlDb21wbGV0ZWQ+KGFjdGl2aXR5VG9rZW4sIHtcbiAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkFjdGl2aXR5Q29tcGxldGVkLFxuICAgICAgcmVzdWx0LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZhaWxzIGFuIGFzeW5jIGFjdGl2aXR5IGNhdXNpbmcgaXQgdG8gdGhyb3cgdGhlIGdpdmVuIGVycm9yLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGZhaWxBY3Rpdml0eSh7XG4gICAgYWN0aXZpdHlUb2tlbixcbiAgICBlcnJvcixcbiAgICBtZXNzYWdlLFxuICB9OiBGYWlsQWN0aXZpdHlSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5zZW5kQWN0aXZpdHlSZXN1bHQ8QWN0aXZpdHlGYWlsZWQ+KGFjdGl2aXR5VG9rZW4sIHtcbiAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkFjdGl2aXR5RmFpbGVkLFxuICAgICAgZXJyb3IsXG4gICAgICBtZXNzYWdlLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFN1Ym1pdHMgYSBcImhlYXJ0YmVhdFwiIGZvciB0aGUgZ2l2ZW4gYWN0aXZpdHlUb2tlbi5cbiAgICpcbiAgICogQHJldHVybnMgd2hldGhlciB0aGUgYWN0aXZpdHkgaGFzIGJlZW4gY2FuY2VsbGVkIGJ5IHRoZSBjYWxsaW5nIHdvcmtmbG93LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGhlYXJ0YmVhdEFjdGl2aXR5KFxuICAgIHJlcXVlc3Q6IEhlYXJ0YmVhdFJlcXVlc3RcbiAgKTogUHJvbWlzZTxIZWFydGJlYXRSZXNwb25zZT4ge1xuICAgIGNvbnN0IGRhdGEgPSBkZWNvZGVBY3Rpdml0eVRva2VuKHJlcXVlc3QuYWN0aXZpdHlUb2tlbik7XG5cbiAgICBjb25zdCBleGVjdXRpb24gPSBhd2FpdCB0aGlzLmdldEV4ZWN1dGlvbihkYXRhLnBheWxvYWQuZXhlY3V0aW9uSWQpO1xuXG4gICAgaWYgKGV4ZWN1dGlvbj8uc3RhdHVzICE9PSBFeGVjdXRpb25TdGF0dXMuSU5fUFJPR1JFU1MpIHtcbiAgICAgIHJldHVybiB7IGNhbmNlbGxlZDogdHJ1ZSB9O1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmFjdGl2aXR5UnVudGltZUNsaWVudC5oZWFydGJlYXRBY3Rpdml0eShcbiAgICAgIGRhdGEucGF5bG9hZC5leGVjdXRpb25JZCxcbiAgICAgIGRhdGEucGF5bG9hZC5zZXEsXG4gICAgICB0aGlzLmJhc2VUaW1lKCkudG9JU09TdHJpbmcoKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNlbmRBY3Rpdml0eVJlc3VsdDxcbiAgICBFIGV4dGVuZHMgQWN0aXZpdHlDb21wbGV0ZWQgfCBBY3Rpdml0eUZhaWxlZFxuICA+KGFjdGl2aXR5VG9rZW46IHN0cmluZywgZXZlbnQ6IE9taXQ8RSwgXCJzZXFcIiB8IFwiZHVyYXRpb25cIiB8IFwidGltZXN0YW1wXCI+KSB7XG4gICAgY29uc3QgZGF0YSA9IGRlY29kZUFjdGl2aXR5VG9rZW4oYWN0aXZpdHlUb2tlbik7XG4gICAgYXdhaXQgdGhpcy5zdWJtaXRXb3JrZmxvd1Rhc2soXG4gICAgICBkYXRhLnBheWxvYWQuZXhlY3V0aW9uSWQsXG4gICAgICBjcmVhdGVFdmVudDxBY3Rpdml0eUNvbXBsZXRlZCB8IEFjdGl2aXR5RmFpbGVkPihcbiAgICAgICAge1xuICAgICAgICAgIC4uLmV2ZW50LFxuICAgICAgICAgIHNlcTogZGF0YS5wYXlsb2FkLnNlcSxcbiAgICAgICAgfSxcbiAgICAgICAgdGhpcy5iYXNlVGltZSgpXG4gICAgICApXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbmRTaWduYWxSZXF1ZXN0IHtcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgc2lnbmFsOiBzdHJpbmcgfCBTaWduYWw7XG4gIHBheWxvYWQ/OiBhbnk7XG4gIC8qKlxuICAgKiBFeGVjdXRpb24gc2NvcGVkIHVuaXF1ZSBldmVudCBpZC4gRHVwbGljYXRlcyB3aWxsIGJlIGRlZHVwbGljYXRlZC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXJ0V29ya2Zsb3dSZXF1ZXN0PFcgZXh0ZW5kcyBXb3JrZmxvdyA9IFdvcmtmbG93PlxuICBleHRlbmRzIFdvcmtmbG93T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSB3b3JrZmxvdyBleGVjdXRpb24uXG4gICAqXG4gICAqIE9ubHkgb25lIHdvcmtmbG93IGNhbiBleGlzdCBmb3IgYW4gSUQuIFJlcXVlc3RzIHRvIHN0YXJ0IGEgd29ya2Zsb3dcbiAgICogd2l0aCB0aGUgbmFtZSBvZiBhbiBleGlzdGluZyB3b3JrZmxvdyB3aWxsIGZhaWwuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYSB1bmlxdWUgbmFtZSBpcyBnZW5lcmF0ZWQuXG4gICAqL1xuICBleGVjdXRpb25OYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgd29ya2Zsb3cgdG8gZXhlY3V0ZS5cbiAgICovXG4gIHdvcmtmbG93TmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogSW5wdXQgcGF5bG9hZCBmb3IgdGhlIHdvcmtmbG93IGZ1bmN0aW9uLlxuICAgKi9cbiAgaW5wdXQ/OiBXb3JrZmxvd0lucHV0PFc+O1xuICAvKipcbiAgICogSUQgb2YgdGhlIHBhcmVudCBleGVjdXRpb24gaWYgdGhpcyBpcyBhIGNoaWxkIHdvcmtmbG93XG4gICAqL1xuICBwYXJlbnRFeGVjdXRpb25JZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNlcXVlbmNlIElEIG9mIHRoaXMgZXhlY3V0aW9uIGlmIHRoaXMgaXMgYSBjaGlsZCB3b3JrZmxvd1xuICAgKi9cbiAgc2VxPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXJ0V29ya2Zsb3dSZXNwb25zZSB7XG4gIC8qKlxuICAgKiBJRCBvZiB0aGUgc3RhcnRlZCB3b3JrZmxvdyBleGVjdXRpb24uXG4gICAqL1xuICBleGVjdXRpb25JZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbXBsZXRlQWN0aXZpdHlSZXF1ZXN0PFQgPSBhbnk+IHtcbiAgYWN0aXZpdHlUb2tlbjogc3RyaW5nO1xuICByZXN1bHQ6IFQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmFpbEFjdGl2aXR5UmVxdWVzdCB7XG4gIGFjdGl2aXR5VG9rZW46IHN0cmluZztcbiAgZXJyb3I6IHN0cmluZztcbiAgbWVzc2FnZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIZWFydGJlYXRSZXF1ZXN0IHtcbiAgYWN0aXZpdHlUb2tlbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhlYXJ0YmVhdFJlc3BvbnNlIHtcbiAgLyoqXG4gICAqIFRydWUgd2hlbiB0aGUgYWN0aXZpdHkgaGFzIGJlZW4gY2FuY2VsbGVkLlxuICAgKlxuICAgKiBUaGlzIGlzIHRoZSBvbmx5IHdheSBmb3IgYSBsb25nIHJ1bm5pbmcgYWN0aXZpdHkgdG8ga25vdyBpdCB3YXMgY2FuZWxsZWQuXG4gICAqL1xuICBjYW5jZWxsZWQ6IGJvb2xlYW47XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvY2xpZW50cy93b3JrZmxvdy1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFdBQVcsRUFHWCxpQkFBaUIsR0FDbEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBR0wsZUFBZSxHQUNoQixNQUFNLG9CQUFvQixDQUFDO0FBRzVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBWTNELE1BQU0sT0FBZ0IsY0FBYztJQUNsQyxZQUNVLHFCQUE0QyxFQUMxQyxRQUFvQjtRQUR0QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzFDLGFBQVEsR0FBUixRQUFRLENBQVk7SUFDN0IsQ0FBQztJQStCSjs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBMEI7UUFDaEQsTUFBTSxXQUFXLEdBQ2YsT0FBTyxPQUFPLENBQUMsU0FBUyxLQUFLLFFBQVE7WUFDbkMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTO1lBQ25CLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQztRQUNwQyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FDM0IsV0FBVyxFQUNYLFdBQVcsQ0FDVDtZQUNFLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxjQUFjO1lBQ3RDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztZQUN4QixRQUFRLEVBQ04sT0FBTyxPQUFPLENBQUMsTUFBTSxLQUFLLFFBQVE7Z0JBQ2hDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTTtnQkFDaEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtTQUN4QixFQUNELElBQUksQ0FBQyxRQUFRLEVBQUUsRUFDZixPQUFPLENBQUMsRUFBRSxDQUNYLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxFQUM1QixhQUFhLEVBQ2IsTUFBTSxHQUNtQztRQUN6QyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBb0IsYUFBYSxFQUFFO1lBQzlELElBQUksRUFBRSxpQkFBaUIsQ0FBQyxpQkFBaUI7WUFDekMsTUFBTTtTQUNQLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxZQUFZLENBQUMsRUFDeEIsYUFBYSxFQUNiLEtBQUssRUFDTCxPQUFPLEdBQ2tDO1FBQ3pDLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFpQixhQUFhLEVBQUU7WUFDM0QsSUFBSSxFQUFFLGlCQUFpQixDQUFDLGNBQWM7WUFDdEMsS0FBSztZQUNMLE9BQU87U0FDUixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxpQkFBaUIsQ0FDNUIsT0FBbUQ7UUFFbkQsTUFBTSxJQUFJLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXhELE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXBFLElBQUksU0FBUyxFQUFFLE1BQU0sS0FBSyxlQUFlLENBQUMsV0FBVyxFQUFFO1lBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUM7U0FDNUI7UUFFRCxPQUFPLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLGlCQUFpQixDQUN2RCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQ2hCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FDOUIsQ0FBQztJQUNKLENBQUM7SUFFTyxLQUFLLENBQUMsa0JBQWtCLENBRTlCLGFBQXFCLEVBQUUsS0FBZ0Q7UUFDdkUsTUFBTSxJQUFJLEdBQUcsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDaEQsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUN4QixXQUFXLENBQ1Q7WUFDRSxHQUFHLEtBQUs7WUFDUixHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHO1NBQ3RCLEVBQ0QsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUNoQixDQUNGLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBY3Rpdml0eUNvbXBsZXRlZCxcbiAgQWN0aXZpdHlGYWlsZWQsXG4gIGNyZWF0ZUV2ZW50LFxuICBIaXN0b3J5U3RhdGVFdmVudCxcbiAgU2lnbmFsUmVjZWl2ZWQsXG4gIFdvcmtmbG93RXZlbnRUeXBlLFxufSBmcm9tIFwiLi4vLi4vd29ya2Zsb3ctZXZlbnRzLmpzXCI7XG5pbXBvcnQge1xuICBFeGVjdXRpb24sXG4gIEV4ZWN1dGlvbkhhbmRsZSxcbiAgRXhlY3V0aW9uU3RhdHVzLFxufSBmcm9tIFwiLi4vLi4vZXhlY3V0aW9uLmpzXCI7XG5pbXBvcnQgeyBTaWduYWwgfSBmcm9tIFwiLi4vLi4vc2lnbmFscy5qc1wiO1xuaW1wb3J0IHsgV29ya2Zsb3csIFdvcmtmbG93T3B0aW9ucyB9IGZyb20gXCIuLi8uLi93b3JrZmxvdy5qc1wiO1xuaW1wb3J0IHsgZGVjb2RlQWN0aXZpdHlUb2tlbiB9IGZyb20gXCIuLi9hY3Rpdml0eS10b2tlbi5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlSdW50aW1lQ2xpZW50IH0gZnJvbSBcIi4vYWN0aXZpdHktcnVudGltZS1jbGllbnQuanNcIjtcbmltcG9ydCB7XG4gIFNlbmRBY3Rpdml0eVN1Y2Nlc3NSZXF1ZXN0LFxuICBTZW5kQWN0aXZpdHlGYWlsdXJlUmVxdWVzdCxcbiAgR2V0RXhlY3V0aW9uc1JlcXVlc3QsXG4gIEdldEV4ZWN1dGlvbnNSZXNwb25zZSxcbiAgU2VuZEFjdGl2aXR5SGVhcnRiZWF0UmVxdWVzdCxcbiAgU3RhcnRFeGVjdXRpb25SZXF1ZXN0LFxuICBTZW5kQWN0aXZpdHlIZWFydGJlYXRSZXNwb25zZSxcbn0gZnJvbSBcIi4uLy4uL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBXb3JrZmxvd0NsaWVudCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWN0aXZpdHlSdW50aW1lQ2xpZW50OiBBY3Rpdml0eVJ1bnRpbWVDbGllbnQsXG4gICAgcHJvdGVjdGVkIGJhc2VUaW1lOiAoKSA9PiBEYXRlXG4gICkge31cblxuICAvKipcbiAgICogU3RhcnQgYSB3b3JrZmxvdyBleGVjdXRpb25cbiAgICogQHBhcmFtIG5hbWUgU3VmZml4IG9mIGV4ZWN1dGlvbiBpZFxuICAgKiBAcGFyYW0gaW5wdXQgV29ya2Zsb3cgcGFyYW1ldGVyc1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHN0YXJ0V29ya2Zsb3c8VyBleHRlbmRzIFdvcmtmbG93ID0gV29ya2Zsb3c+KFxuICAgIHJlcXVlc3Q6IFN0YXJ0V29ya2Zsb3dSZXF1ZXN0PFc+XG4gICk6IFByb21pc2U8c3RyaW5nPjtcblxuICAvKipcbiAgICogU3VibWl0IGV2ZW50cyB0byBiZSBwcm9jZXNzZWQgYnkgYSB3b3JrZmxvdydzIG9yY2hlc3RyYXRvci5cbiAgICpcbiAgICogQHBhcmFtIGV4ZWN1dGlvbklkIElEIG9mIHRoZSB3b3JrZmxvdyBleGVjdXRpb25cbiAgICogQHBhcmFtIGV2ZW50cyBldmVudHMgdG8gc3VibWl0IGZvciBwcm9jZXNzaW5nXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3Qgc3VibWl0V29ya2Zsb3dUYXNrKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgLi4uZXZlbnRzOiBIaXN0b3J5U3RhdGVFdmVudFtdXG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgcHVibGljIGFic3RyYWN0IGdldEV4ZWN1dGlvbnMoXG4gICAgcHJvcHM6IEdldEV4ZWN1dGlvbnNSZXF1ZXN0XG4gICk6IFByb21pc2U8R2V0RXhlY3V0aW9uc1Jlc3BvbnNlPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZ2V0RXhlY3V0aW9uKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxFeGVjdXRpb24gfCB1bmRlZmluZWQ+O1xuXG4gIC8qKlxuICAgKiBTZW5kcyBhIHNpZ25hbCB0byB0aGUgZ2l2ZW4gZXhlY3V0aW9uLlxuICAgKlxuICAgKiBUaGUgZXhlY3V0aW9uIG1heSBiZSB3YWl0aW5nIG9uIGEgc2lnbmFsIG9yIG1heSBoYXZlIGEgaGFuZGxlciByZWdpc3RlcmVkXG4gICAqIHRoYXQgcnVucyB3aGVuIHRoZSBzaWduYWwgaXMgcmVjZWl2ZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc2VuZFNpZ25hbChyZXF1ZXN0OiBTZW5kU2lnbmFsUmVxdWVzdCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGV4ZWN1dGlvbklkID1cbiAgICAgIHR5cGVvZiByZXF1ZXN0LmV4ZWN1dGlvbiA9PT0gXCJzdHJpbmdcIlxuICAgICAgICA/IHJlcXVlc3QuZXhlY3V0aW9uXG4gICAgICAgIDogcmVxdWVzdC5leGVjdXRpb24uZXhlY3V0aW9uSWQ7XG4gICAgYXdhaXQgdGhpcy5zdWJtaXRXb3JrZmxvd1Rhc2soXG4gICAgICBleGVjdXRpb25JZCxcbiAgICAgIGNyZWF0ZUV2ZW50PFNpZ25hbFJlY2VpdmVkPihcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLlNpZ25hbFJlY2VpdmVkLFxuICAgICAgICAgIHBheWxvYWQ6IHJlcXVlc3QucGF5bG9hZCxcbiAgICAgICAgICBzaWduYWxJZDpcbiAgICAgICAgICAgIHR5cGVvZiByZXF1ZXN0LnNpZ25hbCA9PT0gXCJzdHJpbmdcIlxuICAgICAgICAgICAgICA/IHJlcXVlc3Quc2lnbmFsXG4gICAgICAgICAgICAgIDogcmVxdWVzdC5zaWduYWwuaWQsXG4gICAgICAgIH0sXG4gICAgICAgIHRoaXMuYmFzZVRpbWUoKSxcbiAgICAgICAgcmVxdWVzdC5pZFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ29tcGxldGVzIGFuIGFzeW5jIGFjdGl2aXR5IGNhdXNpbmcgaXQgdG8gcmV0dXJuIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjb21wbGV0ZUFjdGl2aXR5KHtcbiAgICBhY3Rpdml0eVRva2VuLFxuICAgIHJlc3VsdCxcbiAgfTogT21pdDxTZW5kQWN0aXZpdHlTdWNjZXNzUmVxdWVzdCwgXCJ0eXBlXCI+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5zZW5kQWN0aXZpdHlSZXN1bHQ8QWN0aXZpdHlDb21wbGV0ZWQ+KGFjdGl2aXR5VG9rZW4sIHtcbiAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkFjdGl2aXR5Q29tcGxldGVkLFxuICAgICAgcmVzdWx0LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZhaWxzIGFuIGFzeW5jIGFjdGl2aXR5IGNhdXNpbmcgaXQgdG8gdGhyb3cgdGhlIGdpdmVuIGVycm9yLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGZhaWxBY3Rpdml0eSh7XG4gICAgYWN0aXZpdHlUb2tlbixcbiAgICBlcnJvcixcbiAgICBtZXNzYWdlLFxuICB9OiBPbWl0PFNlbmRBY3Rpdml0eUZhaWx1cmVSZXF1ZXN0LCBcInR5cGVcIj4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnNlbmRBY3Rpdml0eVJlc3VsdDxBY3Rpdml0eUZhaWxlZD4oYWN0aXZpdHlUb2tlbiwge1xuICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQWN0aXZpdHlGYWlsZWQsXG4gICAgICBlcnJvcixcbiAgICAgIG1lc3NhZ2UsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU3VibWl0cyBhIFwiaGVhcnRiZWF0XCIgZm9yIHRoZSBnaXZlbiBhY3Rpdml0eVRva2VuLlxuICAgKlxuICAgKiBAcmV0dXJucyB3aGV0aGVyIHRoZSBhY3Rpdml0eSBoYXMgYmVlbiBjYW5jZWxsZWQgYnkgdGhlIGNhbGxpbmcgd29ya2Zsb3cuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaGVhcnRiZWF0QWN0aXZpdHkoXG4gICAgcmVxdWVzdDogT21pdDxTZW5kQWN0aXZpdHlIZWFydGJlYXRSZXF1ZXN0LCBcInR5cGVcIj5cbiAgKTogUHJvbWlzZTxTZW5kQWN0aXZpdHlIZWFydGJlYXRSZXNwb25zZT4ge1xuICAgIGNvbnN0IGRhdGEgPSBkZWNvZGVBY3Rpdml0eVRva2VuKHJlcXVlc3QuYWN0aXZpdHlUb2tlbik7XG5cbiAgICBjb25zdCBleGVjdXRpb24gPSBhd2FpdCB0aGlzLmdldEV4ZWN1dGlvbihkYXRhLnBheWxvYWQuZXhlY3V0aW9uSWQpO1xuXG4gICAgaWYgKGV4ZWN1dGlvbj8uc3RhdHVzICE9PSBFeGVjdXRpb25TdGF0dXMuSU5fUFJPR1JFU1MpIHtcbiAgICAgIHJldHVybiB7IGNhbmNlbGxlZDogdHJ1ZSB9O1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmFjdGl2aXR5UnVudGltZUNsaWVudC5oZWFydGJlYXRBY3Rpdml0eShcbiAgICAgIGRhdGEucGF5bG9hZC5leGVjdXRpb25JZCxcbiAgICAgIGRhdGEucGF5bG9hZC5zZXEsXG4gICAgICB0aGlzLmJhc2VUaW1lKCkudG9JU09TdHJpbmcoKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNlbmRBY3Rpdml0eVJlc3VsdDxcbiAgICBFIGV4dGVuZHMgQWN0aXZpdHlDb21wbGV0ZWQgfCBBY3Rpdml0eUZhaWxlZFxuICA+KGFjdGl2aXR5VG9rZW46IHN0cmluZywgZXZlbnQ6IE9taXQ8RSwgXCJzZXFcIiB8IFwiZHVyYXRpb25cIiB8IFwidGltZXN0YW1wXCI+KSB7XG4gICAgY29uc3QgZGF0YSA9IGRlY29kZUFjdGl2aXR5VG9rZW4oYWN0aXZpdHlUb2tlbik7XG4gICAgYXdhaXQgdGhpcy5zdWJtaXRXb3JrZmxvd1Rhc2soXG4gICAgICBkYXRhLnBheWxvYWQuZXhlY3V0aW9uSWQsXG4gICAgICBjcmVhdGVFdmVudDxBY3Rpdml0eUNvbXBsZXRlZCB8IEFjdGl2aXR5RmFpbGVkPihcbiAgICAgICAge1xuICAgICAgICAgIC4uLmV2ZW50LFxuICAgICAgICAgIHNlcTogZGF0YS5wYXlsb2FkLnNlcSxcbiAgICAgICAgfSxcbiAgICAgICAgdGhpcy5iYXNlVGltZSgpXG4gICAgICApXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbmRTaWduYWxSZXF1ZXN0PFBheWxvYWQgPSBhbnk+IHtcbiAgZXhlY3V0aW9uOiBFeGVjdXRpb25IYW5kbGU8YW55PiB8IHN0cmluZztcbiAgc2lnbmFsOiBzdHJpbmcgfCBTaWduYWw8UGF5bG9hZD47XG4gIHBheWxvYWQ/OiBQYXlsb2FkO1xuICAvKipcbiAgICogRXhlY3V0aW9uIHNjb3BlZCB1bmlxdWUgZXZlbnQgaWQuIER1cGxpY2F0ZXMgd2lsbCBiZSBkZWR1cGxpY2F0ZWQuXG4gICAqL1xuICBpZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFydFdvcmtmbG93UmVxdWVzdDxXIGV4dGVuZHMgV29ya2Zsb3cgPSBXb3JrZmxvdz5cbiAgZXh0ZW5kcyBTdGFydEV4ZWN1dGlvblJlcXVlc3Q8Vz4sXG4gICAgV29ya2Zsb3dPcHRpb25zIHtcbiAgcGFyZW50RXhlY3V0aW9uSWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXF1ZW5jZSBJRCBvZiB0aGlzIGV4ZWN1dGlvbiBpZiB0aGlzIGlzIGEgY2hpbGQgd29ya2Zsb3dcbiAgICovXG4gIHNlcT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFydFdvcmtmbG93UmVzcG9uc2Uge1xuICAvKipcbiAgICogSUQgb2YgdGhlIHN0YXJ0ZWQgd29ya2Zsb3cgZXhlY3V0aW9uLlxuICAgKi9cbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbn1cbiJdfQ==

@@ -70,3 +70,3 @@ import { isExpectSignalCommand, isPublishEventsCommand, isScheduleActivityCommand, isScheduleWorkflowCommand, isSendSignalCommand, isSleepForCommand, isSleepUntilCommand, isStartConditionCommand, } from "../command.js";

await this.props.workflowClient.startWorkflow({
workflowName: command.name,
workflow: command.name,
input: command.input,

@@ -130,3 +130,3 @@ parentExecutionId: executionId,

signal: command.signalId,
executionId: childExecutionId,
execution: childExecutionId,
id: `${executionId}/${command.seq}`,

@@ -168,2 +168,2 @@ payload: command.payload,

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1leGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydW50aW1lL2NvbW1hbmQtZXhlY3V0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIseUJBQXlCLEVBQ3pCLHlCQUF5QixFQUN6QixtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQix1QkFBdUIsR0FReEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixXQUFXLEdBV1osTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQW1CLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFaEYsT0FBTyxFQUVMLFFBQVEsR0FJVCxNQUFNLFlBQVksQ0FBQztBQVNwQjs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBQzFCLFlBQW9CLEtBQTJCO1FBQTNCLFVBQUssR0FBTCxLQUFLLENBQXNCO0lBQUcsQ0FBQztJQUU1QyxLQUFLLENBQUMsY0FBYyxDQUN6QixRQUFrQixFQUNsQixXQUFtQixFQUNuQixPQUFnQixFQUNoQixRQUFjO1FBRWQsSUFBSSx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN0QyxPQUFPLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUNoQyxRQUFRLEVBQ1IsV0FBVyxFQUNYLE9BQU8sRUFDUCxRQUFRLENBQ1QsQ0FBQztTQUNIO2FBQU0sSUFBSSx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM3QyxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQ25F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TUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1lBQ3RCLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBSTtTQUNsQixFQUNELFFBQVEsQ0FDVCxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tbWFuZCxcbiAgRXhwZWN0U2lnbmFsQ29tbWFuZCxcbiAgaXNFeHBlY3RTaWduYWxDb21tYW5kLFxuICBpc1B1Ymxpc2hFdmVudHNDb21tYW5kLFxuICBpc1NjaGVkdWxlQWN0aXZpdHlDb21tYW5kLFxuICBpc1NjaGVkdWxlV29ya2Zsb3dDb21tYW5kLFxuICBpc1NlbmRTaWduYWxDb21tYW5kLFxuICBpc1NsZWVwRm9yQ29tbWFuZCxcbiAgaXNTbGVlcFVudGlsQ29tbWFuZCxcbiAgaXNTdGFydENvbmRpdGlvbkNvbW1hbmQsXG4gIFB1Ymxpc2hFdmVudHNDb21tYW5kLFxuICBTY2hlZHVsZUFjdGl2aXR5Q29tbWFuZCxcbiAgU2NoZWR1bGVXb3JrZmxvd0NvbW1hbmQsXG4gIFNlbmRTaWduYWxDb21tYW5kLFxuICBTbGVlcEZvckNvbW1hbmQsXG4gIFNsZWVwVW50aWxDb21tYW5kLFxuICBTdGFydENvbmRpdGlvbkNvbW1hbmQsXG59IGZyb20gXCIuLi9jb21tYW5kLmpzXCI7XG5pbXBvcnQge1xuICBBY3Rpdml0eVRpbWVkT3V0LFxuICBXb3JrZmxvd0V2ZW50VHlwZSxcbiAgY3JlYXRlRXZlbnQsXG4gIEFjdGl2aXR5U2NoZWR1bGVkLFxuICBDaGlsZFdvcmtmbG93U2NoZWR1bGVkLFxuICBTbGVlcFNjaGVkdWxlZCxcbiAgU2xlZXBDb21wbGV0ZWQsXG4gIEV4cGVjdFNpZ25hbFN0YXJ0ZWQsXG4gIEV4cGVjdFNpZ25hbFRpbWVkT3V0LFxuICBIaXN0b3J5U3RhdGVFdmVudCxcbiAgQ29uZGl0aW9uU3RhcnRlZCxcbiAgQ29uZGl0aW9uVGltZWRPdXQsXG4gIFNpZ25hbFNlbnQsXG59IGZyb20gXCIuLi93b3JrZmxvdy1ldmVudHMuanNcIjtcbmltcG9ydCB7IEV2ZW50c1B1Ymxpc2hlZCwgaXNDaGlsZEV4ZWN1dGlvblRhcmdldCB9IGZyb20gXCIuLi9pbmRleC5qc1wiO1xuaW1wb3J0IHsgYXNzZXJ0TmV2ZXIgfSBmcm9tIFwiLi4vdXRpbC5qc1wiO1xuaW1wb3J0IHsgV29ya2Zsb3cgfSBmcm9tIFwiLi4vd29ya2Zsb3cuanNcIjtcbmltcG9ydCB7IGZvcm1hdENoaWxkRXhlY3V0aW9uTmFtZSwgZm9ybWF0RXhlY3V0aW9uSWQgfSBmcm9tIFwiLi9leGVjdXRpb24taWQuanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5V29ya2VyUmVxdWVzdCB9IGZyb20gXCIuL2hhbmRsZXJzL2FjdGl2aXR5LXdvcmtlci5qc1wiO1xuaW1wb3J0IHtcbiAgRXZlbnRDbGllbnQsXG4gIFNjaGVkdWxlLFxuICBUaW1lckNsaWVudCxcbiAgV29ya2Zsb3dDbGllbnQsXG4gIFdvcmtmbG93UnVudGltZUNsaWVudCxcbn0gZnJvbSBcIi4vaW5kZXguanNcIjtcblxuaW50ZXJmYWNlIENvbW1hbmRFeGVjdXRvclByb3BzIHtcbiAgd29ya2Zsb3dSdW50aW1lQ2xpZW50OiBXb3JrZmxvd1J1bnRpbWVDbGllbnQ7XG4gIHRpbWVyQ2xpZW50OiBUaW1lckNsaWVudDtcbiAgd29ya2Zsb3dDbGllbnQ6IFdvcmtmbG93Q2xpZW50O1xuICBldmVudENsaWVudDogRXZlbnRDbGllbnQ7XG59XG5cbi8qKlxuICogVXNlcyB0aGUgY2xpZW50cyB0byBleGVjdXRlIGFsbCBzdXBwb3J0ZWQgY29tbWFuZHMgYW5kIHJldHVybiBldmVudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb21tYW5kRXhlY3V0b3Ige1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHByb3BzOiBDb21tYW5kRXhlY3V0b3JQcm9wcykge31cblxuICBwdWJsaWMgYXN5bmMgZXhlY3V0ZUNvbW1hbmQoXG4gICAgd29ya2Zsb3c6IFdvcmtmbG93LFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogQ29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApOiBQcm9taXNlPEhpc3RvcnlTdGF0ZUV2ZW50PiB7XG4gICAgaWYgKGlzU2NoZWR1bGVBY3Rpdml0eUNvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnNjaGVkdWxlQWN0aXZpdHkoXG4gICAgICAgIHdvcmtmbG93LFxuICAgICAgICBleGVjdXRpb25JZCxcbiAgICAgICAgY29tbWFuZCxcbiAgICAgICAgYmFzZVRpbWVcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChpc1NjaGVkdWxlV29ya2Zsb3dDb21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICByZXR1cm4gdGhpcy5zY2hlZHVsZUNoaWxkV29ya2Zsb3coZXhlY3V0aW9uSWQsIGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2UgaWYgKGlzU2xlZXBGb3JDb21tYW5kKGNvbW1hbmQpIHx8IGlzU2xlZXBVbnRpbENvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIC8vIGFsbCBzbGVlcCB0aW1lcyBhcmUgY29tcHV0ZWQgdXNpbmcgdGhlIHN0YXJ0IHRpbWUgb2YgdGhlIFdvcmtmbG93VGFza1N0YXJ0ZWRcbiAgICAgIHJldHVybiB0aGlzLnNjaGVkdWxlU2xlZXAoZXhlY3V0aW9uSWQsIGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2UgaWYgKGlzRXhwZWN0U2lnbmFsQ29tbWFuZChjb21tYW5kKSkge1xuICAgICAgLy8gc2hvdWxkIHRoZSB0aW1lb3V0IGNvbW1hbmQgYmUgZ2VuZXJpYyAoZXg6IFN0YXJ0VGltZW91dCkgb3Igc3BlY2lmaWMgKGV4OiBFeHBlY3RTaWduYWwpP1xuICAgICAgcmV0dXJuIHRoaXMuZXhlY3V0ZUV4cGVjdFNpZ25hbChleGVjdXRpb25JZCwgY29tbWFuZCwgYmFzZVRpbWUpO1xuICAgIH0gZWxzZSBpZiAoaXNTZW5kU2lnbmFsQ29tbWFuZChjb21tYW5kKSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VuZFNpZ25hbChleGVjdXRpb25JZCwgY29tbWFuZCwgYmFzZVRpbWUpO1xuICAgIH0gZWxzZSBpZiAoaXNTdGFydENvbmRpdGlvbkNvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXJ0Q29uZGl0aW9uKGV4ZWN1dGlvbklkLCBjb21tYW5kLCBiYXNlVGltZSk7XG4gICAgfSBlbHNlIGlmIChpc1B1Ymxpc2hFdmVudHNDb21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdWJsaXNoRXZlbnRzKGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGFzc2VydE5ldmVyKGNvbW1hbmQsIGB1bmtub3duIGNvbW1hbmQgdHlwZWApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2NoZWR1bGVBY3Rpdml0eShcbiAgICB3b3JrZmxvdzogV29ya2Zsb3csXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICBjb21tYW5kOiBTY2hlZHVsZUFjdGl2aXR5Q29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApIHtcbiAgICBjb25zdCByZXF1ZXN0OiBBY3Rpdml0eVdvcmtlclJlcXVlc3QgPSB7XG4gICAgICBzY2hlZHVsZWRUaW1lOiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICB3b3JrZmxvd05hbWU6IHdvcmtmbG93LndvcmtmbG93TmFtZSxcbiAgICAgIGV4ZWN1dGlvbklkLFxuICAgICAgY29tbWFuZCxcbiAgICAgIHJldHJ5OiAwLFxuICAgIH07XG5cbiAgICBjb25zdCB0aW1lb3V0U3RhcnRlciA9IGNvbW1hbmQudGltZW91dFNlY29uZHNcbiAgICAgID8gYXdhaXQgdGhpcy5wcm9wcy50aW1lckNsaWVudC5zY2hlZHVsZUV2ZW50PEFjdGl2aXR5VGltZWRPdXQ+KHtcbiAgICAgICAgICBzY2hlZHVsZTogU2NoZWR1bGUucmVsYXRpdmUoY29tbWFuZC50aW1lb3V0U2Vjb25kcywgYmFzZVRpbWUpLFxuICAgICAgICAgIGV2ZW50OiB7XG4gICAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5BY3Rpdml0eVRpbWVkT3V0LFxuICAgICAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGV4ZWN1dGlvbklkLFxuICAgICAgICB9KVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBhY3Rpdml0eVN0YXJ0ZXIgPVxuICAgICAgdGhpcy5wcm9wcy53b3JrZmxvd1J1bnRpbWVDbGllbnQuc3RhcnRBY3Rpdml0eShyZXF1ZXN0KTtcblxuICAgIGF3YWl0IFByb21pc2UuYWxsKFthY3Rpdml0eVN0YXJ0ZXIsIHRpbWVvdXRTdGFydGVyXSk7XG5cbiAgICByZXR1cm4gY3JlYXRlRXZlbnQ8QWN0aXZpdHlTY2hlZHVsZWQ+KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5BY3Rpdml0eVNjaGVkdWxlZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgbmFtZTogY29tbWFuZC5uYW1lLFxuICAgICAgfSxcbiAgICAgIGJhc2VUaW1lXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2NoZWR1bGVDaGlsZFdvcmtmbG93KFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogU2NoZWR1bGVXb3JrZmxvd0NvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKTogUHJvbWlzZTxDaGlsZFdvcmtmbG93U2NoZWR1bGVkPiB7XG4gICAgYXdhaXQgdGhpcy5wcm9wcy53b3JrZmxvd0NsaWVudC5zdGFydFdvcmtmbG93KHtcbiAgICAgIHdvcmtmbG93TmFtZTogY29tbWFuZC5uYW1lLFxuICAgICAgaW5wdXQ6IGNvbW1hbmQuaW5wdXQsXG4gICAgICBwYXJlbnRFeGVjdXRpb25JZDogZXhlY3V0aW9uSWQsXG4gICAgICBleGVjdXRpb25OYW1lOiBmb3JtYXRDaGlsZEV4ZWN1dGlvbk5hbWUoZXhlY3V0aW9uSWQsIGNvbW1hbmQuc2VxKSxcbiAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAuLi5jb21tYW5kLm9wdHMsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gY3JlYXRlRXZlbnQ8Q2hpbGRXb3JrZmxvd1NjaGVkdWxlZD4oXG4gICAgICB7XG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkNoaWxkV29ya2Zsb3dTY2hlZHVsZWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgIG5hbWU6IGNvbW1hbmQubmFtZSxcbiAgICAgICAgaW5wdXQ6IGNvbW1hbmQuaW5wdXQsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzY2hlZHVsZVNsZWVwKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG5cbiAgICBjb21tYW5kOiBTbGVlcEZvckNvbW1hbmQgfCBTbGVlcFVudGlsQ29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApOiBQcm9taXNlPFNsZWVwU2NoZWR1bGVkPiB7XG4gICAgLy8gVE9ETyB2YWxpZGF0ZVxuICAgIGNvbnN0IHVudGlsVGltZSA9IGlzU2xlZXBVbnRpbENvbW1hbmQoY29tbWFuZClcbiAgICAgID8gbmV3IERhdGUoY29tbWFuZC51bnRpbFRpbWUpXG4gICAgICA6IG5ldyBEYXRlKGJhc2VUaW1lLmdldFRpbWUoKSArIGNvbW1hbmQuZHVyYXRpb25TZWNvbmRzICogMTAwMCk7XG4gICAgY29uc3QgdW50aWxUaW1lSXNvID0gdW50aWxUaW1lLnRvSVNPU3RyaW5nKCk7XG5cbiAgICBhd2FpdCB0aGlzLnByb3BzLnRpbWVyQ2xpZW50LnNjaGVkdWxlRXZlbnQ8U2xlZXBDb21wbGV0ZWQ+KHtcbiAgICAgIGV2ZW50OiB7XG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLlNsZWVwQ29tcGxldGVkLFxuICAgICAgICBzZXE6IGNvbW1hbmQuc2VxLFxuICAgICAgfSxcbiAgICAgIHNjaGVkdWxlOiBTY2hlZHVsZS5hYnNvbHV0ZSh1bnRpbFRpbWVJc28pLFxuICAgICAgZXhlY3V0aW9uSWQsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gY3JlYXRlRXZlbnQ8U2xlZXBTY2hlZHVsZWQ+KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5TbGVlcFNjaGVkdWxlZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgdW50aWxUaW1lOiB1bnRpbFRpbWUudG9JU09TdHJpbmcoKSxcbiAgICAgIH0sXG4gICAgICBiYXNlVGltZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGV4ZWN1dGVFeHBlY3RTaWduYWwoXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcblxuICAgIGNvbW1hbmQ6IEV4cGVjdFNpZ25hbENvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKTogUHJvbWlzZTxFeHBlY3RTaWduYWxTdGFydGVkPiB7XG4gICAgaWYgKGNvbW1hbmQudGltZW91dFNlY29uZHMpIHtcbiAgICAgIGF3YWl0IHRoaXMucHJvcHMudGltZXJDbGllbnQuc2NoZWR1bGVFdmVudDxFeHBlY3RTaWduYWxUaW1lZE91dD4oe1xuICAgICAgICBldmVudDoge1xuICAgICAgICAgIHNpZ25hbElkOiBjb21tYW5kLnNpZ25hbElkLFxuICAgICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuRXhwZWN0U2lnbmFsVGltZWRPdXQsXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVkdWxlOiBTY2hlZHVsZS5yZWxhdGl2ZShjb21tYW5kLnRpbWVvdXRTZWNvbmRzLCBiYXNlVGltZSksXG4gICAgICAgIGV4ZWN1dGlvbklkLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PEV4cGVjdFNpZ25hbFN0YXJ0ZWQ+KFxuICAgICAge1xuICAgICAgICBzaWduYWxJZDogY29tbWFuZC5zaWduYWxJZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuRXhwZWN0U2lnbmFsU3RhcnRlZCxcbiAgICAgICAgdGltZW91dFNlY29uZHM6IGNvbW1hbmQudGltZW91dFNlY29uZHMsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZW5kU2lnbmFsKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogU2VuZFNpZ25hbENvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKSB7XG4gICAgY29uc3QgY2hpbGRFeGVjdXRpb25JZCA9IGlzQ2hpbGRFeGVjdXRpb25UYXJnZXQoY29tbWFuZC50YXJnZXQpXG4gICAgICA/IGZvcm1hdEV4ZWN1dGlvbklkKFxuICAgICAgICAgIGNvbW1hbmQudGFyZ2V0LndvcmtmbG93TmFtZSxcbiAgICAgICAgICBmb3JtYXRDaGlsZEV4ZWN1dGlvbk5hbWUoZXhlY3V0aW9uSWQsIGNvbW1hbmQudGFyZ2V0LnNlcSlcbiAgICAgICAgKVxuICAgICAgOiBjb21tYW5kLnRhcmdldC5leGVjdXRpb25JZDtcblxuICAgIGF3YWl0IHRoaXMucHJvcHMud29ya2Zsb3dDbGllbnQuc2VuZFNpZ25hbCh7XG4gICAgICBzaWduYWw6IGNvbW1hbmQuc2lnbmFsSWQsXG4gICAgICBleGVjdXRpb25JZDogY2hpbGRFeGVjdXRpb25JZCxcbiAgICAgIGlkOiBgJHtleGVjdXRpb25JZH0vJHtjb21tYW5kLnNlcX1gLFxuICAgICAgcGF5bG9hZDogY29tbWFuZC5wYXlsb2FkLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PFNpZ25hbFNlbnQ+KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5TaWduYWxTZW50LFxuICAgICAgICBleGVjdXRpb25JZDogY2hpbGRFeGVjdXRpb25JZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgc2lnbmFsSWQ6IGNvbW1hbmQuc2lnbmFsSWQsXG4gICAgICAgIHBheWxvYWQ6IGNvbW1hbmQucGF5bG9hZCxcbiAgICAgIH0sXG4gICAgICBiYXNlVGltZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHN0YXJ0Q29uZGl0aW9uKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogU3RhcnRDb25kaXRpb25Db21tYW5kLFxuICAgIGJhc2VUaW1lOiBEYXRlXG4gICkge1xuICAgIGlmIChjb21tYW5kLnRpbWVvdXRTZWNvbmRzKSB7XG4gICAgICBhd2FpdCB0aGlzLnByb3BzLnRpbWVyQ2xpZW50LnNjaGVkdWxlRXZlbnQ8Q29uZGl0aW9uVGltZWRPdXQ+KHtcbiAgICAgICAgZXZlbnQ6IHtcbiAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5Db25kaXRpb25UaW1lZE91dCxcbiAgICAgICAgICBzZXE6IGNvbW1hbmQuc2VxLFxuICAgICAgICB9LFxuICAgICAgICBleGVjdXRpb25JZCxcbiAgICAgICAgc2NoZWR1bGU6IFNjaGVkdWxlLnJlbGF0aXZlKGNvbW1hbmQudGltZW91dFNlY29uZHMsIGJhc2VUaW1lKSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjcmVhdGVFdmVudDxDb25kaXRpb25TdGFydGVkPihcbiAgICAgIHtcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQ29uZGl0aW9uU3RhcnRlZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSEsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBwdWJsaXNoRXZlbnRzKGNvbW1hbmQ6IFB1Ymxpc2hFdmVudHNDb21tYW5kLCBiYXNlVGltZTogRGF0ZSkge1xuICAgIGF3YWl0IHRoaXMucHJvcHMuZXZlbnRDbGllbnQucHVibGlzaCguLi5jb21tYW5kLmV2ZW50cyk7XG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PEV2ZW50c1B1Ymxpc2hlZD4oXG4gICAgICB7XG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkV2ZW50c1B1Ymxpc2hlZCxcbiAgICAgICAgZXZlbnRzOiBjb21tYW5kLmV2ZW50cyxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSEsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1leGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydW50aW1lL2NvbW1hbmQtZXhlY3V0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIseUJBQXlCLEVBQ3pCLHlCQUF5QixFQUN6QixtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQix1QkFBdUIsR0FReEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixXQUFXLEdBV1osTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQW1CLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFaEYsT0FBTyxFQUVMLFFBQVEsR0FJVCxNQUFNLFlBQVksQ0FBQztBQVNwQjs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBQzFCLFlBQW9CLEtBQTJCO1FBQTNCLFVBQUssR0FBTCxLQUFLLENBQXNCO0lBQUcsQ0FBQztJQUU1QyxLQUFLLENBQUMsY0FBYyxDQUN6QixRQUFrQixFQUNsQixXQUFtQixFQUNuQixPQUFnQixFQUNoQixRQUFjO1FBRWQsSUFBSSx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN0QyxPQUFPLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUNoQyxRQUFRLEVBQ1IsV0FBVyxFQUNYLE9BQU8sRUFDUCxRQUFRLENBQ1QsQ0FBQztTQUNIO2FBQU0sSUFBSSx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM3QyxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQ25F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TUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1lBQ3RCLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBSTtTQUNsQixFQUNELFFBQVEsQ0FDVCxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tbWFuZCxcbiAgRXhwZWN0U2lnbmFsQ29tbWFuZCxcbiAgaXNFeHBlY3RTaWduYWxDb21tYW5kLFxuICBpc1B1Ymxpc2hFdmVudHNDb21tYW5kLFxuICBpc1NjaGVkdWxlQWN0aXZpdHlDb21tYW5kLFxuICBpc1NjaGVkdWxlV29ya2Zsb3dDb21tYW5kLFxuICBpc1NlbmRTaWduYWxDb21tYW5kLFxuICBpc1NsZWVwRm9yQ29tbWFuZCxcbiAgaXNTbGVlcFVudGlsQ29tbWFuZCxcbiAgaXNTdGFydENvbmRpdGlvbkNvbW1hbmQsXG4gIFB1Ymxpc2hFdmVudHNDb21tYW5kLFxuICBTY2hlZHVsZUFjdGl2aXR5Q29tbWFuZCxcbiAgU2NoZWR1bGVXb3JrZmxvd0NvbW1hbmQsXG4gIFNlbmRTaWduYWxDb21tYW5kLFxuICBTbGVlcEZvckNvbW1hbmQsXG4gIFNsZWVwVW50aWxDb21tYW5kLFxuICBTdGFydENvbmRpdGlvbkNvbW1hbmQsXG59IGZyb20gXCIuLi9jb21tYW5kLmpzXCI7XG5pbXBvcnQge1xuICBBY3Rpdml0eVRpbWVkT3V0LFxuICBXb3JrZmxvd0V2ZW50VHlwZSxcbiAgY3JlYXRlRXZlbnQsXG4gIEFjdGl2aXR5U2NoZWR1bGVkLFxuICBDaGlsZFdvcmtmbG93U2NoZWR1bGVkLFxuICBTbGVlcFNjaGVkdWxlZCxcbiAgU2xlZXBDb21wbGV0ZWQsXG4gIEV4cGVjdFNpZ25hbFN0YXJ0ZWQsXG4gIEV4cGVjdFNpZ25hbFRpbWVkT3V0LFxuICBIaXN0b3J5U3RhdGVFdmVudCxcbiAgQ29uZGl0aW9uU3RhcnRlZCxcbiAgQ29uZGl0aW9uVGltZWRPdXQsXG4gIFNpZ25hbFNlbnQsXG59IGZyb20gXCIuLi93b3JrZmxvdy1ldmVudHMuanNcIjtcbmltcG9ydCB7IEV2ZW50c1B1Ymxpc2hlZCwgaXNDaGlsZEV4ZWN1dGlvblRhcmdldCB9IGZyb20gXCIuLi9pbmRleC5qc1wiO1xuaW1wb3J0IHsgYXNzZXJ0TmV2ZXIgfSBmcm9tIFwiLi4vdXRpbC5qc1wiO1xuaW1wb3J0IHsgV29ya2Zsb3cgfSBmcm9tIFwiLi4vd29ya2Zsb3cuanNcIjtcbmltcG9ydCB7IGZvcm1hdENoaWxkRXhlY3V0aW9uTmFtZSwgZm9ybWF0RXhlY3V0aW9uSWQgfSBmcm9tIFwiLi9leGVjdXRpb24taWQuanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5V29ya2VyUmVxdWVzdCB9IGZyb20gXCIuL2hhbmRsZXJzL2FjdGl2aXR5LXdvcmtlci5qc1wiO1xuaW1wb3J0IHtcbiAgRXZlbnRDbGllbnQsXG4gIFNjaGVkdWxlLFxuICBUaW1lckNsaWVudCxcbiAgV29ya2Zsb3dDbGllbnQsXG4gIFdvcmtmbG93UnVudGltZUNsaWVudCxcbn0gZnJvbSBcIi4vaW5kZXguanNcIjtcblxuaW50ZXJmYWNlIENvbW1hbmRFeGVjdXRvclByb3BzIHtcbiAgd29ya2Zsb3dSdW50aW1lQ2xpZW50OiBXb3JrZmxvd1J1bnRpbWVDbGllbnQ7XG4gIHRpbWVyQ2xpZW50OiBUaW1lckNsaWVudDtcbiAgd29ya2Zsb3dDbGllbnQ6IFdvcmtmbG93Q2xpZW50O1xuICBldmVudENsaWVudDogRXZlbnRDbGllbnQ7XG59XG5cbi8qKlxuICogVXNlcyB0aGUgY2xpZW50cyB0byBleGVjdXRlIGFsbCBzdXBwb3J0ZWQgY29tbWFuZHMgYW5kIHJldHVybiBldmVudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb21tYW5kRXhlY3V0b3Ige1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHByb3BzOiBDb21tYW5kRXhlY3V0b3JQcm9wcykge31cblxuICBwdWJsaWMgYXN5bmMgZXhlY3V0ZUNvbW1hbmQoXG4gICAgd29ya2Zsb3c6IFdvcmtmbG93LFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogQ29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApOiBQcm9taXNlPEhpc3RvcnlTdGF0ZUV2ZW50PiB7XG4gICAgaWYgKGlzU2NoZWR1bGVBY3Rpdml0eUNvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnNjaGVkdWxlQWN0aXZpdHkoXG4gICAgICAgIHdvcmtmbG93LFxuICAgICAgICBleGVjdXRpb25JZCxcbiAgICAgICAgY29tbWFuZCxcbiAgICAgICAgYmFzZVRpbWVcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChpc1NjaGVkdWxlV29ya2Zsb3dDb21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICByZXR1cm4gdGhpcy5zY2hlZHVsZUNoaWxkV29ya2Zsb3coZXhlY3V0aW9uSWQsIGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2UgaWYgKGlzU2xlZXBGb3JDb21tYW5kKGNvbW1hbmQpIHx8IGlzU2xlZXBVbnRpbENvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIC8vIGFsbCBzbGVlcCB0aW1lcyBhcmUgY29tcHV0ZWQgdXNpbmcgdGhlIHN0YXJ0IHRpbWUgb2YgdGhlIFdvcmtmbG93VGFza1N0YXJ0ZWRcbiAgICAgIHJldHVybiB0aGlzLnNjaGVkdWxlU2xlZXAoZXhlY3V0aW9uSWQsIGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2UgaWYgKGlzRXhwZWN0U2lnbmFsQ29tbWFuZChjb21tYW5kKSkge1xuICAgICAgLy8gc2hvdWxkIHRoZSB0aW1lb3V0IGNvbW1hbmQgYmUgZ2VuZXJpYyAoZXg6IFN0YXJ0VGltZW91dCkgb3Igc3BlY2lmaWMgKGV4OiBFeHBlY3RTaWduYWwpP1xuICAgICAgcmV0dXJuIHRoaXMuZXhlY3V0ZUV4cGVjdFNpZ25hbChleGVjdXRpb25JZCwgY29tbWFuZCwgYmFzZVRpbWUpO1xuICAgIH0gZWxzZSBpZiAoaXNTZW5kU2lnbmFsQ29tbWFuZChjb21tYW5kKSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VuZFNpZ25hbChleGVjdXRpb25JZCwgY29tbWFuZCwgYmFzZVRpbWUpO1xuICAgIH0gZWxzZSBpZiAoaXNTdGFydENvbmRpdGlvbkNvbW1hbmQoY29tbWFuZCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXJ0Q29uZGl0aW9uKGV4ZWN1dGlvbklkLCBjb21tYW5kLCBiYXNlVGltZSk7XG4gICAgfSBlbHNlIGlmIChpc1B1Ymxpc2hFdmVudHNDb21tYW5kKGNvbW1hbmQpKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdWJsaXNoRXZlbnRzKGNvbW1hbmQsIGJhc2VUaW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGFzc2VydE5ldmVyKGNvbW1hbmQsIGB1bmtub3duIGNvbW1hbmQgdHlwZWApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2NoZWR1bGVBY3Rpdml0eShcbiAgICB3b3JrZmxvdzogV29ya2Zsb3csXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICBjb21tYW5kOiBTY2hlZHVsZUFjdGl2aXR5Q29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApIHtcbiAgICBjb25zdCByZXF1ZXN0OiBBY3Rpdml0eVdvcmtlclJlcXVlc3QgPSB7XG4gICAgICBzY2hlZHVsZWRUaW1lOiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICB3b3JrZmxvd05hbWU6IHdvcmtmbG93LndvcmtmbG93TmFtZSxcbiAgICAgIGV4ZWN1dGlvbklkLFxuICAgICAgY29tbWFuZCxcbiAgICAgIHJldHJ5OiAwLFxuICAgIH07XG5cbiAgICBjb25zdCB0aW1lb3V0U3RhcnRlciA9IGNvbW1hbmQudGltZW91dFNlY29uZHNcbiAgICAgID8gYXdhaXQgdGhpcy5wcm9wcy50aW1lckNsaWVudC5zY2hlZHVsZUV2ZW50PEFjdGl2aXR5VGltZWRPdXQ+KHtcbiAgICAgICAgICBzY2hlZHVsZTogU2NoZWR1bGUucmVsYXRpdmUoY29tbWFuZC50aW1lb3V0U2Vjb25kcywgYmFzZVRpbWUpLFxuICAgICAgICAgIGV2ZW50OiB7XG4gICAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5BY3Rpdml0eVRpbWVkT3V0LFxuICAgICAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGV4ZWN1dGlvbklkLFxuICAgICAgICB9KVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBhY3Rpdml0eVN0YXJ0ZXIgPVxuICAgICAgdGhpcy5wcm9wcy53b3JrZmxvd1J1bnRpbWVDbGllbnQuc3RhcnRBY3Rpdml0eShyZXF1ZXN0KTtcblxuICAgIGF3YWl0IFByb21pc2UuYWxsKFthY3Rpdml0eVN0YXJ0ZXIsIHRpbWVvdXRTdGFydGVyXSk7XG5cbiAgICByZXR1cm4gY3JlYXRlRXZlbnQ8QWN0aXZpdHlTY2hlZHVsZWQ+KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5BY3Rpdml0eVNjaGVkdWxlZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgbmFtZTogY29tbWFuZC5uYW1lLFxuICAgICAgfSxcbiAgICAgIGJhc2VUaW1lXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2NoZWR1bGVDaGlsZFdvcmtmbG93KFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogU2NoZWR1bGVXb3JrZmxvd0NvbW1hbmQsXG4gICAgYmFzZVRpbWU6IERhdGVcbiAgKTogUHJvbWlzZTxDaGlsZFdvcmtmbG93U2NoZWR1bGVkPiB7XG4gICAgYXdhaXQgdGhpcy5wcm9wcy53b3JrZmxvd0NsaWVudC5zdGFydFdvcmtmbG93KHtcbiAgICAgIHdvcmtmbG93OiBjb21tYW5kLm5hbWUsXG4gICAgICBpbnB1dDogY29tbWFuZC5pbnB1dCxcbiAgICAgIHBhcmVudEV4ZWN1dGlvbklkOiBleGVjdXRpb25JZCxcbiAgICAgIGV4ZWN1dGlvbk5hbWU6IGZvcm1hdENoaWxkRXhlY3V0aW9uTmFtZShleGVjdXRpb25JZCwgY29tbWFuZC5zZXEpLFxuICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgIC4uLmNvbW1hbmQub3B0cyxcbiAgICB9KTtcblxuICAgIHJldHVybiBjcmVhdGVFdmVudDxDaGlsZFdvcmtmbG93U2NoZWR1bGVkPihcbiAgICAgIHtcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQ2hpbGRXb3JrZmxvd1NjaGVkdWxlZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgbmFtZTogY29tbWFuZC5uYW1lLFxuICAgICAgICBpbnB1dDogY29tbWFuZC5pbnB1dCxcbiAgICAgIH0sXG4gICAgICBiYXNlVGltZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNjaGVkdWxlU2xlZXAoXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcblxuICAgIGNvbW1hbmQ6IFNsZWVwRm9yQ29tbWFuZCB8IFNsZWVwVW50aWxDb21tYW5kLFxuICAgIGJhc2VUaW1lOiBEYXRlXG4gICk6IFByb21pc2U8U2xlZXBTY2hlZHVsZWQ+IHtcbiAgICAvLyBUT0RPIHZhbGlkYXRlXG4gICAgY29uc3QgdW50aWxUaW1lID0gaXNTbGVlcFVudGlsQ29tbWFuZChjb21tYW5kKVxuICAgICAgPyBuZXcgRGF0ZShjb21tYW5kLnVudGlsVGltZSlcbiAgICAgIDogbmV3IERhdGUoYmFzZVRpbWUuZ2V0VGltZSgpICsgY29tbWFuZC5kdXJhdGlvblNlY29uZHMgKiAxMDAwKTtcbiAgICBjb25zdCB1bnRpbFRpbWVJc28gPSB1bnRpbFRpbWUudG9JU09TdHJpbmcoKTtcblxuICAgIGF3YWl0IHRoaXMucHJvcHMudGltZXJDbGllbnQuc2NoZWR1bGVFdmVudDxTbGVlcENvbXBsZXRlZD4oe1xuICAgICAgZXZlbnQ6IHtcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuU2xlZXBDb21wbGV0ZWQsXG4gICAgICAgIHNlcTogY29tbWFuZC5zZXEsXG4gICAgICB9LFxuICAgICAgc2NoZWR1bGU6IFNjaGVkdWxlLmFic29sdXRlKHVudGlsVGltZUlzbyksXG4gICAgICBleGVjdXRpb25JZCxcbiAgICB9KTtcblxuICAgIHJldHVybiBjcmVhdGVFdmVudDxTbGVlcFNjaGVkdWxlZD4oXG4gICAgICB7XG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLlNsZWVwU2NoZWR1bGVkLFxuICAgICAgICBzZXE6IGNvbW1hbmQuc2VxLFxuICAgICAgICB1bnRpbFRpbWU6IHVudGlsVGltZS50b0lTT1N0cmluZygpLFxuICAgICAgfSxcbiAgICAgIGJhc2VUaW1lXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZXhlY3V0ZUV4cGVjdFNpZ25hbChcbiAgICBleGVjdXRpb25JZDogc3RyaW5nLFxuXG4gICAgY29tbWFuZDogRXhwZWN0U2lnbmFsQ29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApOiBQcm9taXNlPEV4cGVjdFNpZ25hbFN0YXJ0ZWQ+IHtcbiAgICBpZiAoY29tbWFuZC50aW1lb3V0U2Vjb25kcykge1xuICAgICAgYXdhaXQgdGhpcy5wcm9wcy50aW1lckNsaWVudC5zY2hlZHVsZUV2ZW50PEV4cGVjdFNpZ25hbFRpbWVkT3V0Pih7XG4gICAgICAgIGV2ZW50OiB7XG4gICAgICAgICAgc2lnbmFsSWQ6IGNvbW1hbmQuc2lnbmFsSWQsXG4gICAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5FeHBlY3RTaWduYWxUaW1lZE91dCxcbiAgICAgICAgfSxcbiAgICAgICAgc2NoZWR1bGU6IFNjaGVkdWxlLnJlbGF0aXZlKGNvbW1hbmQudGltZW91dFNlY29uZHMsIGJhc2VUaW1lKSxcbiAgICAgICAgZXhlY3V0aW9uSWQsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gY3JlYXRlRXZlbnQ8RXhwZWN0U2lnbmFsU3RhcnRlZD4oXG4gICAgICB7XG4gICAgICAgIHNpZ25hbElkOiBjb21tYW5kLnNpZ25hbElkLFxuICAgICAgICBzZXE6IGNvbW1hbmQuc2VxLFxuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5FeHBlY3RTaWduYWxTdGFydGVkLFxuICAgICAgICB0aW1lb3V0U2Vjb25kczogY29tbWFuZC50aW1lb3V0U2Vjb25kcyxcbiAgICAgIH0sXG4gICAgICBiYXNlVGltZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNlbmRTaWduYWwoXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICBjb21tYW5kOiBTZW5kU2lnbmFsQ29tbWFuZCxcbiAgICBiYXNlVGltZTogRGF0ZVxuICApIHtcbiAgICBjb25zdCBjaGlsZEV4ZWN1dGlvbklkID0gaXNDaGlsZEV4ZWN1dGlvblRhcmdldChjb21tYW5kLnRhcmdldClcbiAgICAgID8gZm9ybWF0RXhlY3V0aW9uSWQoXG4gICAgICAgICAgY29tbWFuZC50YXJnZXQud29ya2Zsb3dOYW1lLFxuICAgICAgICAgIGZvcm1hdENoaWxkRXhlY3V0aW9uTmFtZShleGVjdXRpb25JZCwgY29tbWFuZC50YXJnZXQuc2VxKVxuICAgICAgICApXG4gICAgICA6IGNvbW1hbmQudGFyZ2V0LmV4ZWN1dGlvbklkO1xuXG4gICAgYXdhaXQgdGhpcy5wcm9wcy53b3JrZmxvd0NsaWVudC5zZW5kU2lnbmFsKHtcbiAgICAgIHNpZ25hbDogY29tbWFuZC5zaWduYWxJZCxcbiAgICAgIGV4ZWN1dGlvbjogY2hpbGRFeGVjdXRpb25JZCxcbiAgICAgIGlkOiBgJHtleGVjdXRpb25JZH0vJHtjb21tYW5kLnNlcX1gLFxuICAgICAgcGF5bG9hZDogY29tbWFuZC5wYXlsb2FkLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PFNpZ25hbFNlbnQ+KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5TaWduYWxTZW50LFxuICAgICAgICBleGVjdXRpb25JZDogY2hpbGRFeGVjdXRpb25JZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSxcbiAgICAgICAgc2lnbmFsSWQ6IGNvbW1hbmQuc2lnbmFsSWQsXG4gICAgICAgIHBheWxvYWQ6IGNvbW1hbmQucGF5bG9hZCxcbiAgICAgIH0sXG4gICAgICBiYXNlVGltZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHN0YXJ0Q29uZGl0aW9uKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgY29tbWFuZDogU3RhcnRDb25kaXRpb25Db21tYW5kLFxuICAgIGJhc2VUaW1lOiBEYXRlXG4gICkge1xuICAgIGlmIChjb21tYW5kLnRpbWVvdXRTZWNvbmRzKSB7XG4gICAgICBhd2FpdCB0aGlzLnByb3BzLnRpbWVyQ2xpZW50LnNjaGVkdWxlRXZlbnQ8Q29uZGl0aW9uVGltZWRPdXQ+KHtcbiAgICAgICAgZXZlbnQ6IHtcbiAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5Db25kaXRpb25UaW1lZE91dCxcbiAgICAgICAgICBzZXE6IGNvbW1hbmQuc2VxLFxuICAgICAgICB9LFxuICAgICAgICBleGVjdXRpb25JZCxcbiAgICAgICAgc2NoZWR1bGU6IFNjaGVkdWxlLnJlbGF0aXZlKGNvbW1hbmQudGltZW91dFNlY29uZHMsIGJhc2VUaW1lKSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjcmVhdGVFdmVudDxDb25kaXRpb25TdGFydGVkPihcbiAgICAgIHtcbiAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQ29uZGl0aW9uU3RhcnRlZCxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSEsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBwdWJsaXNoRXZlbnRzKGNvbW1hbmQ6IFB1Ymxpc2hFdmVudHNDb21tYW5kLCBiYXNlVGltZTogRGF0ZSkge1xuICAgIGF3YWl0IHRoaXMucHJvcHMuZXZlbnRDbGllbnQucHVibGlzaCguLi5jb21tYW5kLmV2ZW50cyk7XG4gICAgcmV0dXJuIGNyZWF0ZUV2ZW50PEV2ZW50c1B1Ymxpc2hlZD4oXG4gICAgICB7XG4gICAgICAgIHR5cGU6IFdvcmtmbG93RXZlbnRUeXBlLkV2ZW50c1B1Ymxpc2hlZCxcbiAgICAgICAgZXZlbnRzOiBjb21tYW5kLmV2ZW50cyxcbiAgICAgICAgc2VxOiBjb21tYW5kLnNlcSEsXG4gICAgICB9LFxuICAgICAgYmFzZVRpbWVcbiAgICApO1xuICB9XG59XG4iXX0=

@@ -5,3 +5,3 @@ import { ScheduleActivityCommand } from "../../command.js";

import { WorkflowClient } from "../clients/workflow-client.js";
import { TimerClient } from "../index.js";
import { RuntimeServiceClient, TimerClient } from "../index.js";
import { Logger } from "../logger.js";

@@ -18,2 +18,3 @@ import type { EventClient } from "../index.js";

activityProvider: ActivityProvider;
serviceClient?: RuntimeServiceClient;
}

@@ -40,3 +41,3 @@ export interface ActivityWorkerRequest {

*/
export declare function createActivityWorker({ activityRuntimeClient, workflowClient, timerClient, metricsClient, logger, eventClient, activityProvider, }: CreateActivityWorkerProps): ActivityWorker;
export declare function createActivityWorker({ activityRuntimeClient, workflowClient, timerClient, metricsClient, logger, activityProvider, serviceClient, }: CreateActivityWorkerProps): ActivityWorker;
//# sourceMappingURL=activity-worker.d.ts.map
import { isAsyncResult } from "../../activity.js";
import { createEvent, isWorkflowFailed, WorkflowEventType, } from "../../workflow-events.js";
import { clearActivityContext, registerEventClient, registerWorkflowClient, setActivityContext, } from "../../global.js";
import { clearActivityContext, registerServiceClient, setActivityContext, } from "../../global.js";
import { createActivityToken } from "../activity-token.js";
import { Schedule, TimerRequestType } from "../index.js";
import { Schedule, TimerRequestType, } from "../index.js";
import { ActivityMetrics, MetricsCommon } from "../metrics/constants.js";

@@ -17,7 +17,7 @@ import { Unit } from "../metrics/unit.js";

*/
export function createActivityWorker({ activityRuntimeClient, workflowClient, timerClient, metricsClient, logger, eventClient, activityProvider, }) {
// make the workflow client available to all activity code
registerWorkflowClient(workflowClient);
// make the event client available to all activity code
registerEventClient(eventClient);
export function createActivityWorker({ activityRuntimeClient, workflowClient, timerClient, metricsClient, logger, activityProvider, serviceClient, }) {
// make the service client available to all activity code
if (serviceClient) {
registerServiceClient(serviceClient);
}
return metricsClient.metricScope((metrics) => async (request, baseTime, getEndTime = () => new Date()) => {

@@ -126,2 +126,2 @@ logger.addPersistentLogAttributes({

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktd29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvaGFuZGxlcnMvYWN0aXZpdHktd29ya2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVsRCxPQUFPLEVBR0wsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixpQkFBaUIsR0FDbEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQixzQkFBc0IsRUFDdEIsa0JBQWtCLEdBQ25CLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFJM0QsT0FBTyxFQUFFLFFBQVEsRUFBZSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHNUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQStCN0M7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsRUFDbkMscUJBQXFCLEVBQ3JCLGNBQWMsRUFDZCxXQUFXLEVBQ1gsYUFBYSxFQUNiLE1BQU0sRUFDTixXQUFXLEVBQ1gsZ0JBQWdCLEdBQ1U7SUFDMUIsMERBQTBEO0lBQzFELHNCQUFzQixDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZDLHVEQUF1RDtJQUN2RCxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUVqQyxPQUFPLGFBQWEsQ0FB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bSBcIi4uLy4uL2FjdGl2aXR5LmpzXCI7XG5pbXBvcnQgeyBTY2hlZHVsZUFjdGl2aXR5Q29tbWFuZCB9IGZyb20gXCIuLi8uLi9jb21tYW5kLmpzXCI7XG5pbXBvcnQge1xuICBBY3Rpdml0eUNvbXBsZXRlZCxcbiAgQWN0aXZpdHlGYWlsZWQsXG4gIGNyZWF0ZUV2ZW50LFxuICBpc1dvcmtmbG93RmFpbGVkLFxuICBXb3JrZmxvd0V2ZW50VHlwZSxcbn0gZnJvbSBcIi4uLy4uL3dvcmtmbG93LWV2ZW50cy5qc1wiO1xuaW1wb3J0IHtcbiAgY2xlYXJBY3Rpdml0eUNvbnRleHQsXG4gIHJlZ2lzdGVyRXZlbnRDbGllbnQsXG4gIHJlZ2lzdGVyV29ya2Zsb3dDbGllbnQsXG4gIHNldEFjdGl2aXR5Q29udGV4dCxcbn0gZnJvbSBcIi4uLy4uL2dsb2JhbC5qc1wiO1xuaW1wb3J0IHsgY3JlYXRlQWN0aXZpdHlUb2tlbiB9IGZyb20gXCIuLi9hY3Rpdml0eS10b2tlbi5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlSdW50aW1lQ2xpZW50IH0gZnJvbSBcIi4uL2NsaWVudHMvYWN0aXZpdHktcnVudGltZS1jbGllbnQuanNcIjtcbmltcG9ydCB7IE1ldHJpY3NDbGllbnQgfSBmcm9tIFwiLi4vY2xpZW50cy9tZXRyaWNzLWNsaWVudC5qc1wiO1xuaW1wb3J0IHsgV29ya2Zsb3dDbGllbnQgfSBmcm9tIFwiLi4vY2xpZW50cy93b3JrZmxvdy1jbGllbnQuanNcIjtcbmltcG9ydCB7IFNjaGVkdWxlLCBUaW1lckNsaWVudCwgVGltZXJSZXF1ZXN0VHlwZSB9IGZyb20gXCIuLi9pbmRleC5qc1wiO1xuaW1wb3J0IHsgTG9nZ2VyIH0gZnJvbSBcIi4uL2xvZ2dlci5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlNZXRyaWNzLCBNZXRyaWNzQ29tbW9uIH0gZnJvbSBcIi4uL21ldHJpY3MvY29uc3RhbnRzLmpzXCI7XG5pbXBvcnQgeyBVbml0IH0gZnJvbSBcIi4uL21ldHJpY3MvdW5pdC5qc1wiO1xuaW1wb3J0IHsgdGltZWQgfSBmcm9tIFwiLi4vbWV0cmljcy91dGlscy5qc1wiO1xuaW1wb3J0IHR5cGUgeyBFdmVudENsaWVudCB9IGZyb20gXCIuLi9pbmRleC5qc1wiO1xuaW1wb3J0IHsgQWN0aXZpdHlQcm92aWRlciB9IGZyb20gXCIuLi9wcm92aWRlcnMvYWN0aXZpdHktcHJvdmlkZXIuanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5Tm90Rm91bmRFcnJvciB9IGZyb20gXCIuLi8uLi9lcnJvci5qc1wiO1xuaW1wb3J0IHsgZXh0ZW5kc0Vycm9yIH0gZnJvbSBcIi4uLy4uL3V0aWwuanNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVBY3Rpdml0eVdvcmtlclByb3BzIHtcbiAgYWN0aXZpdHlSdW50aW1lQ2xpZW50OiBBY3Rpdml0eVJ1bnRpbWVDbGllbnQ7XG4gIHdvcmtmbG93Q2xpZW50OiBXb3JrZmxvd0NsaWVudDtcbiAgdGltZXJDbGllbnQ6IFRpbWVyQ2xpZW50O1xuICBtZXRyaWNzQ2xpZW50OiBNZXRyaWNzQ2xpZW50O1xuICBsb2dnZXI6IExvZ2dlcjtcbiAgZXZlbnRDbGllbnQ6IEV2ZW50Q2xpZW50O1xuICBhY3Rpdml0eVByb3ZpZGVyOiBBY3Rpdml0eVByb3ZpZGVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5V29ya2VyUmVxdWVzdCB7XG4gIHNjaGVkdWxlZFRpbWU6IHN0cmluZztcbiAgd29ya2Zsb3dOYW1lOiBzdHJpbmc7XG4gIGV4ZWN1dGlvbklkOiBzdHJpbmc7XG4gIGNvbW1hbmQ6IFNjaGVkdWxlQWN0aXZpdHlDb21tYW5kO1xuICByZXRyeTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5V29ya2VyIHtcbiAgKFxuICAgIHJlcXVlc3Q6IEFjdGl2aXR5V29ya2VyUmVxdWVzdCxcbiAgICBiYXNlVGltZTogRGF0ZSxcbiAgICAvKipcbiAgICAgKiBBbGxvd3MgZm9yIGEgY29tcHV0ZWQgZW5kIHRpbWUsIGZvciBjYXNlIGxpa2UgdGhlIHRlc3QgZW52aXJvbm1lbnQgd2hlbiB0aGUgZW5kIHRpbWUgc2hvdWxkIGJlIGNvbnRyb2xsZWQuXG4gICAgICovXG4gICAgZ2V0RW5kVGltZT86IChzdGFydFRpbWU6IERhdGUpID0+IERhdGVcbiAgKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgZ2VuZXJpYyBmdW5jdGlvbiBmb3IgaGFuZGxpbmcgYWN0aXZpdHkgd29ya2VyIHJlcXVlc3RzXG4gKiB0aGF0IGNhbiBiZSB1c2VkIGluIHJ1bnRpbWUgaW1wbGVtZW50YXRpb25zLiBUaGlzIGltcGxlbWVudGF0aW9uIGlzXG4gKiBkZWNvdXBsZWQgZnJvbSBhIHJ1bnRpbWUncyBzcGVjaWZpY3MgYnkgdGhlIGNsaWVudHMuIEEgcnVudGltZSBtdXN0XG4gKiBpbmplY3QgaXRzIG93biBjbGllbnQgaW1wbGVtZW50YXRpb25zIGRlc2lnbmVkIGZvciB0aGF0IHBsYXRmb3JtLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQWN0aXZpdHlXb3JrZXIoe1xuICBhY3Rpdml0eVJ1bnRpbWVDbGllbnQsXG4gIHdvcmtmbG93Q2xpZW50LFxuICB0aW1lckNsaWVudCxcbiAgbWV0cmljc0NsaWVudCxcbiAgbG9nZ2VyLFxuICBldmVudENsaWVudCxcbiAgYWN0aXZpdHlQcm92aWRlcixcbn06IENyZWF0ZUFjdGl2aXR5V29ya2VyUHJvcHMpOiBBY3Rpdml0eVdvcmtlciB7XG4gIC8vIG1ha2UgdGhlIHdvcmtmbG93IGNsaWVudCBhdmFpbGFibGUgdG8gYWxsIGFjdGl2aXR5IGNvZGVcbiAgcmVnaXN0ZXJXb3JrZmxvd0NsaWVudCh3b3JrZmxvd0NsaWVudCk7XG4gIC8vIG1ha2UgdGhlIGV2ZW50IGNsaWVudCBhdmFpbGFibGUgdG8gYWxsIGFjdGl2aXR5IGNvZGVcbiAgcmVnaXN0ZXJFdmVudENsaWVudChldmVudENsaWVudCk7XG5cbiAgcmV0dXJuIG1ldHJpY3NDbGllbnQubWV0cmljU2NvcGUoXG4gICAgKG1ldHJpY3MpID0+XG4gICAgICBhc3luYyAoXG4gICAgICAgIHJlcXVlc3Q6IEFjdGl2aXR5V29ya2VyUmVxdWVzdCxcbiAgICAgICAgYmFzZVRpbWU6IERhdGUsXG4gICAgICAgIGdldEVuZFRpbWUgPSAoKSA9PiBuZXcgRGF0ZSgpXG4gICAgICApID0+IHtcbiAgICAgICAgbG9nZ2VyLmFkZFBlcnNpc3RlbnRMb2dBdHRyaWJ1dGVzKHtcbiAgICAgICAgICB3b3JrZmxvd05hbWU6IHJlcXVlc3Qud29ya2Zsb3dOYW1lLFxuICAgICAgICAgIGV4ZWN1dGlvbklkOiByZXF1ZXN0LmV4ZWN1dGlvbklkLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgYWN0aXZpdHlIYW5kbGUgPSBgJHtyZXF1ZXN0LmNvbW1hbmQuc2VxfSBmb3IgZXhlY3V0aW9uICR7cmVxdWVzdC5leGVjdXRpb25JZH0gb24gcmV0cnkgJHtyZXF1ZXN0LnJldHJ5fWA7XG4gICAgICAgIG1ldHJpY3MucmVzZXREaW1lbnNpb25zKGZhbHNlKTtcbiAgICAgICAgbWV0cmljcy5zZXROYW1lc3BhY2UoTWV0cmljc0NvbW1vbi5FdmVudHVhbE5hbWVzcGFjZSk7XG4gICAgICAgIG1ldHJpY3MucHV0RGltZW5zaW9ucyh7XG4gICAgICAgICAgQWN0aXZpdHlOYW1lOiByZXF1ZXN0LmNvbW1hbmQubmFtZSxcbiAgICAgICAgICBXb3JrZmxvd05hbWU6IHJlcXVlc3Qud29ya2Zsb3dOYW1lLFxuICAgICAgICB9KTtcbiAgICAgICAgLy8gdGhlIHRpbWUgZnJvbSB0aGUgd29ya2Zsb3cgZW1pdHRpbmcgdGhlIGFjdGl2aXR5IHNjaGVkdWxlZCBjb21tYW5kXG4gICAgICAgIC8vIHRvIHRoZSByZXF1ZXN0IGJlaW5nIHNlZW4uXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gYmFzZVRpbWU7XG4gICAgICAgIGNvbnN0IHJlY29yZEFnZSA9XG4gICAgICAgICAgc3RhcnQuZ2V0VGltZSgpIC0gbmV3IERhdGUocmVxdWVzdC5zY2hlZHVsZWRUaW1lKS5nZXRUaW1lKCk7XG4gICAgICAgIG1ldHJpY3MucHV0TWV0cmljKFxuICAgICAgICAgIEFjdGl2aXR5TWV0cmljcy5BY3Rpdml0eVJlcXVlc3RBZ2UsXG4gICAgICAgICAgcmVjb3JkQWdlLFxuICAgICAgICAgIFVuaXQuTWlsbGlzZWNvbmRzXG4gICAgICAgICk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAhKGF3YWl0IHRpbWVkKG1ldHJpY3MsIEFjdGl2aXR5TWV0cmljcy5DbGFpbUR1cmF0aW9uLCAoKSA9PlxuICAgICAgICAgICAgYWN0aXZpdHlSdW50aW1lQ2xpZW50LmNsYWltQWN0aXZpdHkoXG4gICAgICAgICAgICAgIHJlcXVlc3QuZXhlY3V0aW9uSWQsXG4gICAgICAgICAgICAgIHJlcXVlc3QuY29tbWFuZC5zZXEsXG4gICAgICAgICAgICAgIHJlcXVlc3QucmV0cnlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApKVxuICAgICAgICApIHtcbiAgICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhBY3Rpdml0eU1ldHJpY3MuQ2xhaW1SZWplY3RlZCwgMSwgVW5pdC5Db3VudCk7XG4gICAgICAgICAgbG9nZ2VyLmluZm8oYEFjdGl2aXR5ICR7YWN0aXZpdHlIYW5kbGV9IGFscmVhZHkgY2xhaW1lZC5gKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHJlcXVlc3QuY29tbWFuZC5oZWFydGJlYXRTZWNvbmRzKSB7XG4gICAgICAgICAgYXdhaXQgdGltZXJDbGllbnQuc3RhcnRUaW1lcih7XG4gICAgICAgICAgICBhY3Rpdml0eVNlcTogcmVxdWVzdC5jb21tYW5kLnNlcSxcbiAgICAgICAgICAgIHR5cGU6IFRpbWVyUmVxdWVzdFR5cGUuQWN0aXZpdHlIZWFydGJlYXRNb25pdG9yLFxuICAgICAgICAgICAgZXhlY3V0aW9uSWQ6IHJlcXVlc3QuZXhlY3V0aW9uSWQsXG4gICAgICAgICAgICBoZWFydGJlYXRTZWNvbmRzOiByZXF1ZXN0LmNvbW1hbmQuaGVhcnRiZWF0U2Vjb25kcyxcbiAgICAgICAgICAgIHNjaGVkdWxlOiBTY2hlZHVsZS5yZWxhdGl2ZShyZXF1ZXN0LmNvbW1hbmQuaGVhcnRiZWF0U2Vjb25kcyksXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgc2V0QWN0aXZpdHlDb250ZXh0KHtcbiAgICAgICAgICBhY3Rpdml0eVRva2VuOiBjcmVhdGVBY3Rpdml0eVRva2VuKFxuICAgICAgICAgICAgcmVxdWVzdC5leGVjdXRpb25JZCxcbiAgICAgICAgICAgIHJlcXVlc3QuY29tbWFuZC5zZXFcbiAgICAgICAgICApLFxuICAgICAgICAgIGV4ZWN1dGlvbklkOiByZXF1ZXN0LmV4ZWN1dGlvbklkLFxuICAgICAgICAgIHNjaGVkdWxlZFRpbWU6IHJlcXVlc3Quc2NoZWR1bGVkVGltZSxcbiAgICAgICAgICB3b3JrZmxvd05hbWU6IHJlcXVlc3Qud29ya2Zsb3dOYW1lLFxuICAgICAgICB9KTtcbiAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoQWN0aXZpdHlNZXRyaWNzLkNsYWltUmVqZWN0ZWQsIDAsIFVuaXQuQ291bnQpO1xuXG4gICAgICAgIGxvZ2dlci5pbmZvKGBQcm9jZXNzaW5nICR7YWN0aXZpdHlIYW5kbGV9LmApO1xuXG4gICAgICAgIGNvbnN0IGFjdGl2aXR5ID0gYWN0aXZpdHlQcm92aWRlci5nZXRBY3Rpdml0eUhhbmRsZXIoXG4gICAgICAgICAgcmVxdWVzdC5jb21tYW5kLm5hbWVcbiAgICAgICAgKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAoIWFjdGl2aXR5KSB7XG4gICAgICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhBY3Rpdml0eU1ldHJpY3MuTm90Rm91bmRFcnJvciwgMSwgVW5pdC5Db3VudCk7XG4gICAgICAgICAgICB0aHJvdyBuZXcgQWN0aXZpdHlOb3RGb3VuZEVycm9yKFxuICAgICAgICAgICAgICByZXF1ZXN0LmNvbW1hbmQubmFtZSxcbiAgICAgICAgICAgICAgYWN0aXZpdHlQcm92aWRlci5nZXRBY3Rpdml0eUlkcygpXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRpbWVkKFxuICAgICAgICAgICAgbWV0cmljcyxcbiAgICAgICAgICAgIEFjdGl2aXR5TWV0cmljcy5PcGVyYXRpb25EdXJhdGlvbixcbiAgICAgICAgICAgICgpID0+IGFjdGl2aXR5KC4uLnJlcXVlc3QuY29tbWFuZC5hcmdzKVxuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKGlzQXN5bmNSZXN1bHQocmVzdWx0KSkge1xuICAgICAgICAgICAgbWV0cmljcy5zZXRQcm9wZXJ0eShBY3Rpdml0eU1ldHJpY3MuSGFzUmVzdWx0LCAwKTtcbiAgICAgICAgICAgIG1ldHJpY3Muc2V0UHJvcGVydHkoQWN0aXZpdHlNZXRyaWNzLkFzeW5jUmVzdWx0LCAxKTtcblxuICAgICAgICAgICAgLy8gVE9ETzogU2VuZCBoZWFydGJlYXQgb24gc3luYyBhY3Rpdml0eSBjb21wbGV0aW9uLlxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFRoZSBhY3Rpdml0eSBoYXMgZGVjbGFyZWQgdGhhdCBpdCBpcyBhc3luYywgb3RoZXIgdGhhbiBsb2dnaW5nLCB0aGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gZG8gaGVyZS5cbiAgICAgICAgICAgICAqIFRoZSBhY3Rpdml0eSBzaG91bGQgY2FsbCB7QGxpbmsgV29ya2Zsb3dDbGllbnQuY29tcGxldGVBY3Rpdml0eX0gb3Ige0BsaW5rIFdvcmtmbG93Q2xpZW50LmZhaWxBY3Rpdml0eX0gd2hlbiBpdCBpcyBkb25lLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfSBlbHNlIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgIG1ldHJpY3Muc2V0UHJvcGVydHkoQWN0aXZpdHlNZXRyaWNzLkhhc1Jlc3VsdCwgMSk7XG4gICAgICAgICAgICBtZXRyaWNzLnNldFByb3BlcnR5KEFjdGl2aXR5TWV0cmljcy5Bc3luY1Jlc3VsdCwgMCk7XG4gICAgICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhcbiAgICAgICAgICAgICAgQWN0aXZpdHlNZXRyaWNzLlJlc3VsdEJ5dGVzLFxuICAgICAgICAgICAgICBKU09OLnN0cmluZ2lmeShyZXN1bHQpLmxlbmd0aCxcbiAgICAgICAgICAgICAgVW5pdC5CeXRlc1xuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbWV0cmljcy5zZXRQcm9wZXJ0eShBY3Rpdml0eU1ldHJpY3MuSGFzUmVzdWx0LCAwKTtcbiAgICAgICAgICAgIG1ldHJpY3Muc2V0UHJvcGVydHkoQWN0aXZpdHlNZXRyaWNzLkFzeW5jUmVzdWx0LCAwKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsb2dnZXIuaW5mbyhcbiAgICAgICAgICAgIGBBY3Rpdml0eSAke2FjdGl2aXR5SGFuZGxlfSBzdWNjZWVkZWQsIHJlcG9ydGluZyBiYWNrIHRvIGV4ZWN1dGlvbi5gXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGNvbnN0IGVuZFRpbWUgPSBnZXRFbmRUaW1lKHN0YXJ0KTtcbiAgICAgICAgICBjb25zdCBldmVudCA9IGNyZWF0ZUV2ZW50PEFjdGl2aXR5Q29tcGxldGVkPihcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQWN0aXZpdHlDb21wbGV0ZWQsXG4gICAgICAgICAgICAgIHNlcTogcmVxdWVzdC5jb21tYW5kLnNlcSxcbiAgICAgICAgICAgICAgcmVzdWx0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVuZFRpbWVcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgYXdhaXQgZmluaXNoQWN0aXZpdHkoXG4gICAgICAgICAgICBldmVudCxcbiAgICAgICAgICAgIHJlY29yZEFnZSArIChlbmRUaW1lLmdldFRpbWUoKSAtIHN0YXJ0LmdldFRpbWUoKSlcbiAgICAgICAgICApO1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICBjb25zdCBbZXJyb3IsIG1lc3NhZ2VdID0gZXh0ZW5kc0Vycm9yKGVycilcbiAgICAgICAgICAgID8gW2Vyci5uYW1lLCBlcnIubWVzc2FnZV1cbiAgICAgICAgICAgIDogW1wiRXJyb3JcIiwgSlNPTi5zdHJpbmdpZnkoZXJyKV07XG5cbiAgICAgICAgICBsb2dnZXIuaW5mbyhcbiAgICAgICAgICAgIGBBY3Rpdml0eSAke2FjdGl2aXR5SGFuZGxlfSBmYWlsZWQsIHJlcG9ydGluZyBmYWlsdXJlIGJhY2sgdG8gZXhlY3V0aW9uOiAke2Vycm9yfTogJHttZXNzYWdlfWBcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgY29uc3QgZW5kVGltZSA9IGdldEVuZFRpbWUoc3RhcnQpO1xuICAgICAgICAgIGNvbnN0IGV2ZW50ID0gY3JlYXRlRXZlbnQ8QWN0aXZpdHlGYWlsZWQ+KFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5BY3Rpdml0eUZhaWxlZCxcbiAgICAgICAgICAgICAgc2VxOiByZXF1ZXN0LmNvbW1hbmQuc2VxLFxuICAgICAgICAgICAgICBlcnJvcixcbiAgICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBlbmRUaW1lXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGF3YWl0IGZpbmlzaEFjdGl2aXR5KFxuICAgICAgICAgICAgZXZlbnQsXG4gICAgICAgICAgICByZWNvcmRBZ2UgKyAoZW5kVGltZS5nZXRUaW1lKCkgLSBzdGFydC5nZXRUaW1lKCkpXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICBjbGVhckFjdGl2aXR5Q29udGV4dCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gbG9nQWN0aXZpdHlDb21wbGV0ZU1ldHJpY3MoZmFpbGVkOiBib29sZWFuLCBkdXJhdGlvbjogbnVtYmVyKSB7XG4gICAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoXG4gICAgICAgICAgICBBY3Rpdml0eU1ldHJpY3MuQWN0aXZpdHlGYWlsZWQsXG4gICAgICAgICAgICBmYWlsZWQgPyAxIDogMCxcbiAgICAgICAgICAgIFVuaXQuQ291bnRcbiAgICAgICAgICApO1xuICAgICAgICAgIG1ldHJpY3MucHV0TWV0cmljKFxuICAgICAgICAgICAgQWN0aXZpdHlNZXRyaWNzLkFjdGl2aXR5Q29tcGxldGVkLFxuICAgICAgICAgICAgZmFpbGVkID8gMCA6IDEsXG4gICAgICAgICAgICBVbml0LkNvdW50XG4gICAgICAgICAgKTtcbiAgICAgICAgICAvLyBUaGUgdG90YWwgdGltZSBmcm9tIHRoZSBhY3Rpdml0eSBiZWluZyBzY2hlZHVsZWQgdW50aWwgaXQncyByZXN1bHQgaXMgc2VuZCB0byB0aGUgd29ya2Zsb3cuXG4gICAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoQWN0aXZpdHlNZXRyaWNzLlRvdGFsRHVyYXRpb24sIGR1cmF0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGFzeW5jIGZ1bmN0aW9uIGZpbmlzaEFjdGl2aXR5KFxuICAgICAgICAgIGV2ZW50OiBBY3Rpdml0eUNvbXBsZXRlZCB8IEFjdGl2aXR5RmFpbGVkLFxuICAgICAgICAgIGR1cmF0aW9uOiBudW1iZXJcbiAgICAgICAgKSB7XG4gICAgICAgICAgYXdhaXQgdGltZWQobWV0cmljcywgQWN0aXZpdHlNZXRyaWNzLlN1Ym1pdFdvcmtmbG93VGFza0R1cmF0aW9uLCAoKSA9PlxuICAgICAgICAgICAgd29ya2Zsb3dDbGllbnQuc3VibWl0V29ya2Zsb3dUYXNrKHJlcXVlc3QuZXhlY3V0aW9uSWQsIGV2ZW50KVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBsb2dBY3Rpdml0eUNvbXBsZXRlTWV0cmljcyhpc1dvcmtmbG93RmFpbGVkKGV2ZW50KSwgZHVyYXRpb24pO1xuICAgICAgICB9XG4gICAgICB9XG4gICk7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktd29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3J1bnRpbWUvaGFuZGxlcnMvYWN0aXZpdHktd29ya2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVsRCxPQUFPLEVBR0wsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixpQkFBaUIsR0FDbEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixrQkFBa0IsR0FDbkIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUkzRCxPQUFPLEVBRUwsUUFBUSxFQUVSLGdCQUFnQixHQUNqQixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHNUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQWdDN0M7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsRUFDbkMscUJBQXFCLEVBQ3JCLGNBQWMsRUFDZCxXQUFXLEVBQ1gsYUFBYSxFQUNiLE1BQU0sRUFDTixnQkFBZ0IsRUFDaEIsYUFBYSxHQUNhO0lBQzFCLHlEQUF5RDtJQUN6RCxJQUFJLGFBQWEsRUFBRTtRQUNqQixxQkFBcUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztLQUN0QztJQUVELE9BQU8sYUFBYSxDQUFDLFdBQVcsQ0FDOUIsQ0FBQyxPQUFPLEVBQUUsRUFB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TCxPQUFPO2FBQ1IsRUFDRCxPQUFPLENBQ1IsQ0FBQztZQUVGLE1BQU0sY0FBYyxDQUNsQixLQUFLLEVBQ0wsU0FBUyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUNsRCxDQUFDO1NBQ0g7Z0JBQVM7WUFDUixvQkFBb0IsRUFBRSxDQUFDO1NBQ3hCO1FBRUQsU0FBUywwQkFBMEIsQ0FBQyxNQUFlLEVBQUUsUUFBZ0I7WUFDbkUsT0FBTyxDQUFDLFNBQVMsQ0FDZixlQUFlLENBQUMsY0FBYyxFQUM5QixNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNkLElBQUksQ0FBQyxLQUFLLENBQ1gsQ0FBQztZQUNGLE9BQU8sQ0FBQyxTQUFTLENBQ2YsZUFBZSxDQUFDLGlCQUFpQixFQUNqQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNkLElBQUksQ0FBQyxLQUFLLENBQ1gsQ0FBQztZQUNGLDhGQUE4RjtZQUM5RixPQUFPLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUVELEtBQUssVUFBVSxjQUFjLENBQzNCLEtBQXlDLEVBQ3pDLFFBQWdCO1lBRWhCLE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxlQUFlLENBQUMsMEJBQTBCLEVBQUUsR0FBRyxFQUFFLENBQ3BFLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUM5RCxDQUFDO1lBRUYsMEJBQTBCLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDaEUsQ0FBQztJQUNILENBQUMsQ0FDSixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzQXN5bmNSZXN1bHQgfSBmcm9tIFwiLi4vLi4vYWN0aXZpdHkuanNcIjtcbmltcG9ydCB7IFNjaGVkdWxlQWN0aXZpdHlDb21tYW5kIH0gZnJvbSBcIi4uLy4uL2NvbW1hbmQuanNcIjtcbmltcG9ydCB7XG4gIEFjdGl2aXR5Q29tcGxldGVkLFxuICBBY3Rpdml0eUZhaWxlZCxcbiAgY3JlYXRlRXZlbnQsXG4gIGlzV29ya2Zsb3dGYWlsZWQsXG4gIFdvcmtmbG93RXZlbnRUeXBlLFxufSBmcm9tIFwiLi4vLi4vd29ya2Zsb3ctZXZlbnRzLmpzXCI7XG5pbXBvcnQge1xuICBjbGVhckFjdGl2aXR5Q29udGV4dCxcbiAgcmVnaXN0ZXJTZXJ2aWNlQ2xpZW50LFxuICBzZXRBY3Rpdml0eUNvbnRleHQsXG59IGZyb20gXCIuLi8uLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IGNyZWF0ZUFjdGl2aXR5VG9rZW4gfSBmcm9tIFwiLi4vYWN0aXZpdHktdG9rZW4uanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5UnVudGltZUNsaWVudCB9IGZyb20gXCIuLi9jbGllbnRzL2FjdGl2aXR5LXJ1bnRpbWUtY2xpZW50LmpzXCI7XG5pbXBvcnQgeyBNZXRyaWNzQ2xpZW50IH0gZnJvbSBcIi4uL2NsaWVudHMvbWV0cmljcy1jbGllbnQuanNcIjtcbmltcG9ydCB7IFdvcmtmbG93Q2xpZW50IH0gZnJvbSBcIi4uL2NsaWVudHMvd29ya2Zsb3ctY2xpZW50LmpzXCI7XG5pbXBvcnQge1xuICBSdW50aW1lU2VydmljZUNsaWVudCxcbiAgU2NoZWR1bGUsXG4gIFRpbWVyQ2xpZW50LFxuICBUaW1lclJlcXVlc3RUeXBlLFxufSBmcm9tIFwiLi4vaW5kZXguanNcIjtcbmltcG9ydCB7IExvZ2dlciB9IGZyb20gXCIuLi9sb2dnZXIuanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5TWV0cmljcywgTWV0cmljc0NvbW1vbiB9IGZyb20gXCIuLi9tZXRyaWNzL2NvbnN0YW50cy5qc1wiO1xuaW1wb3J0IHsgVW5pdCB9IGZyb20gXCIuLi9tZXRyaWNzL3VuaXQuanNcIjtcbmltcG9ydCB7IHRpbWVkIH0gZnJvbSBcIi4uL21ldHJpY3MvdXRpbHMuanNcIjtcbmltcG9ydCB0eXBlIHsgRXZlbnRDbGllbnQgfSBmcm9tIFwiLi4vaW5kZXguanNcIjtcbmltcG9ydCB7IEFjdGl2aXR5UHJvdmlkZXIgfSBmcm9tIFwiLi4vcHJvdmlkZXJzL2FjdGl2aXR5LXByb3ZpZGVyLmpzXCI7XG5pbXBvcnQgeyBBY3Rpdml0eU5vdEZvdW5kRXJyb3IgfSBmcm9tIFwiLi4vLi4vZXJyb3IuanNcIjtcbmltcG9ydCB7IGV4dGVuZHNFcnJvciB9IGZyb20gXCIuLi8uLi91dGlsLmpzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQWN0aXZpdHlXb3JrZXJQcm9wcyB7XG4gIGFjdGl2aXR5UnVudGltZUNsaWVudDogQWN0aXZpdHlSdW50aW1lQ2xpZW50O1xuICB3b3JrZmxvd0NsaWVudDogV29ya2Zsb3dDbGllbnQ7XG4gIHRpbWVyQ2xpZW50OiBUaW1lckNsaWVudDtcbiAgbWV0cmljc0NsaWVudDogTWV0cmljc0NsaWVudDtcbiAgbG9nZ2VyOiBMb2dnZXI7XG4gIGV2ZW50Q2xpZW50OiBFdmVudENsaWVudDtcbiAgYWN0aXZpdHlQcm92aWRlcjogQWN0aXZpdHlQcm92aWRlcjtcbiAgc2VydmljZUNsaWVudD86IFJ1bnRpbWVTZXJ2aWNlQ2xpZW50O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5V29ya2VyUmVxdWVzdCB7XG4gIHNjaGVkdWxlZFRpbWU6IHN0cmluZztcbiAgd29ya2Zsb3dOYW1lOiBzdHJpbmc7XG4gIGV4ZWN1dGlvbklkOiBzdHJpbmc7XG4gIGNvbW1hbmQ6IFNjaGVkdWxlQWN0aXZpdHlDb21tYW5kO1xuICByZXRyeTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5V29ya2VyIHtcbiAgKFxuICAgIHJlcXVlc3Q6IEFjdGl2aXR5V29ya2VyUmVxdWVzdCxcbiAgICBiYXNlVGltZTogRGF0ZSxcbiAgICAvKipcbiAgICAgKiBBbGxvd3MgZm9yIGEgY29tcHV0ZWQgZW5kIHRpbWUsIGZvciBjYXNlIGxpa2UgdGhlIHRlc3QgZW52aXJvbm1lbnQgd2hlbiB0aGUgZW5kIHRpbWUgc2hvdWxkIGJlIGNvbnRyb2xsZWQuXG4gICAgICovXG4gICAgZ2V0RW5kVGltZT86IChzdGFydFRpbWU6IERhdGUpID0+IERhdGVcbiAgKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgZ2VuZXJpYyBmdW5jdGlvbiBmb3IgaGFuZGxpbmcgYWN0aXZpdHkgd29ya2VyIHJlcXVlc3RzXG4gKiB0aGF0IGNhbiBiZSB1c2VkIGluIHJ1bnRpbWUgaW1wbGVtZW50YXRpb25zLiBUaGlzIGltcGxlbWVudGF0aW9uIGlzXG4gKiBkZWNvdXBsZWQgZnJvbSBhIHJ1bnRpbWUncyBzcGVjaWZpY3MgYnkgdGhlIGNsaWVudHMuIEEgcnVudGltZSBtdXN0XG4gKiBpbmplY3QgaXRzIG93biBjbGllbnQgaW1wbGVtZW50YXRpb25zIGRlc2lnbmVkIGZvciB0aGF0IHBsYXRmb3JtLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQWN0aXZpdHlXb3JrZXIoe1xuICBhY3Rpdml0eVJ1bnRpbWVDbGllbnQsXG4gIHdvcmtmbG93Q2xpZW50LFxuICB0aW1lckNsaWVudCxcbiAgbWV0cmljc0NsaWVudCxcbiAgbG9nZ2VyLFxuICBhY3Rpdml0eVByb3ZpZGVyLFxuICBzZXJ2aWNlQ2xpZW50LFxufTogQ3JlYXRlQWN0aXZpdHlXb3JrZXJQcm9wcyk6IEFjdGl2aXR5V29ya2VyIHtcbiAgLy8gbWFrZSB0aGUgc2VydmljZSBjbGllbnQgYXZhaWxhYmxlIHRvIGFsbCBhY3Rpdml0eSBjb2RlXG4gIGlmIChzZXJ2aWNlQ2xpZW50KSB7XG4gICAgcmVnaXN0ZXJTZXJ2aWNlQ2xpZW50KHNlcnZpY2VDbGllbnQpO1xuICB9XG5cbiAgcmV0dXJuIG1ldHJpY3NDbGllbnQubWV0cmljU2NvcGUoXG4gICAgKG1ldHJpY3MpID0+XG4gICAgICBhc3luYyAoXG4gICAgICAgIHJlcXVlc3Q6IEFjdGl2aXR5V29ya2VyUmVxdWVzdCxcbiAgICAgICAgYmFzZVRpbWU6IERhdGUsXG4gICAgICAgIGdldEVuZFRpbWUgPSAoKSA9PiBuZXcgRGF0ZSgpXG4gICAgICApID0+IHtcbiAgICAgICAgbG9nZ2VyLmFkZFBlcnNpc3RlbnRMb2dBdHRyaWJ1dGVzKHtcbiAgICAgICAgICB3b3JrZmxvd05hbWU6IHJlcXVlc3Qud29ya2Zsb3dOYW1lLFxuICAgICAgICAgIGV4ZWN1dGlvbklkOiByZXF1ZXN0LmV4ZWN1dGlvbklkLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgYWN0aXZpdHlIYW5kbGUgPSBgJHtyZXF1ZXN0LmNvbW1hbmQuc2VxfSBmb3IgZXhlY3V0aW9uICR7cmVxdWVzdC5leGVjdXRpb25JZH0gb24gcmV0cnkgJHtyZXF1ZXN0LnJldHJ5fWA7XG4gICAgICAgIG1ldHJpY3MucmVzZXREaW1lbnNpb25zKGZhbHNlKTtcbiAgICAgICAgbWV0cmljcy5zZXROYW1lc3BhY2UoTWV0cmljc0NvbW1vbi5FdmVudHVhbE5hbWVzcGFjZSk7XG4gICAgICAgIG1ldHJpY3MucHV0RGltZW5zaW9ucyh7XG4gICAgICAgICAgQWN0aXZpdHlOYW1lOiByZXF1ZXN0LmNvbW1hbmQubmFtZSxcbiAgICAgICAgICBXb3JrZmxvd05hbWU6IHJlcXVlc3Qud29ya2Zsb3dOYW1lLFxuICAgICAgICB9KTtcbiAgICAgICAgLy8gdGhlIHRpbWUgZnJvbSB0aGUgd29ya2Zsb3cgZW1pdHRpbmcgdGhlIGFjdGl2aXR5IHNjaGVkdWxlZCBjb21tYW5kXG4gICAgICAgIC8vIHRvIHRoZSByZXF1ZXN0IGJlaW5nIHNlZW4uXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gYmFzZVRpbWU7XG4gICAgICAgIGNvbnN0IHJlY29yZEFnZSA9XG4gICAgICAgICAgc3RhcnQuZ2V0VGltZSgpIC0gbmV3IERhdGUocmVxdWVzdC5zY2hlZHVsZWRUaW1lKS5nZXRUaW1lKCk7XG4gICAgICAgIG1ldHJpY3MucHV0TWV0cmljKFxuICAgICAgICAgIEFjdGl2aXR5TWV0cmljcy5BY3Rpdml0eVJlcXVlc3RBZ2UsXG4gICAgICAgICAgcmVjb3JkQWdlLFxuICAgICAgICAgIFVuaXQuTWlsbGlzZWNvbmRzXG4gICAgICAgICk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAhKGF3YWl0IHRpbWVkKG1ldHJpY3MsIEFjdGl2aXR5TWV0cmljcy5DbGFpbUR1cmF0aW9uLCAoKSA9PlxuICAgICAgICAgICAgYWN0aXZpdHlSdW50aW1lQ2xpZW50LmNsYWltQWN0aXZpdHkoXG4gICAgICAgICAgICAgIHJlcXVlc3QuZXhlY3V0aW9uSWQsXG4gICAgICAgICAgICAgIHJlcXVlc3QuY29tbWFuZC5zZXEsXG4gICAgICAgICAgICAgIHJlcXVlc3QucmV0cnlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApKVxuICAgICAgICApIHtcbiAgICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhBY3Rpdml0eU1ldHJpY3MuQ2xhaW1SZWplY3RlZCwgMSwgVW5pdC5Db3VudCk7XG4gICAgICAgICAgbG9nZ2VyLmluZm8oYEFjdGl2aXR5ICR7YWN0aXZpdHlIYW5kbGV9IGFscmVhZHkgY2xhaW1lZC5gKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHJlcXVlc3QuY29tbWFuZC5oZWFydGJlYXRTZWNvbmRzKSB7XG4gICAgICAgICAgYXdhaXQgdGltZXJDbGllbnQuc3RhcnRUaW1lcih7XG4gICAgICAgICAgICBhY3Rpdml0eVNlcTogcmVxdWVzdC5jb21tYW5kLnNlcSxcbiAgICAgICAgICAgIHR5cGU6IFRpbWVyUmVxdWVzdFR5cGUuQWN0aXZpdHlIZWFydGJlYXRNb25pdG9yLFxuICAgICAgICAgICAgZXhlY3V0aW9uSWQ6IHJlcXVlc3QuZXhlY3V0aW9uSWQsXG4gICAgICAgICAgICBoZWFydGJlYXRTZWNvbmRzOiByZXF1ZXN0LmNvbW1hbmQuaGVhcnRiZWF0U2Vjb25kcyxcbiAgICAgICAgICAgIHNjaGVkdWxlOiBTY2hlZHVsZS5yZWxhdGl2ZShyZXF1ZXN0LmNvbW1hbmQuaGVhcnRiZWF0U2Vjb25kcyksXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgc2V0QWN0aXZpdHlDb250ZXh0KHtcbiAgICAgICAgICBhY3Rpdml0eVRva2VuOiBjcmVhdGVBY3Rpdml0eVRva2VuKFxuICAgICAgICAgICAgcmVxdWVzdC5leGVjdXRpb25JZCxcbiAgICAgICAgICAgIHJlcXVlc3QuY29tbWFuZC5zZXFcbiAgICAgICAgICApLFxuICAgICAgICAgIGV4ZWN1dGlvbklkOiByZXF1ZXN0LmV4ZWN1dGlvbklkLFxuICAgICAgICAgIHNjaGVkdWxlZFRpbWU6IHJlcXVlc3Quc2NoZWR1bGVkVGltZSxcbiAgICAgICAgICB3b3JrZmxvd05hbWU6IHJlcXVlc3Qud29ya2Zsb3dOYW1lLFxuICAgICAgICB9KTtcbiAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoQWN0aXZpdHlNZXRyaWNzLkNsYWltUmVqZWN0ZWQsIDAsIFVuaXQuQ291bnQpO1xuXG4gICAgICAgIGxvZ2dlci5pbmZvKGBQcm9jZXNzaW5nICR7YWN0aXZpdHlIYW5kbGV9LmApO1xuXG4gICAgICAgIGNvbnN0IGFjdGl2aXR5ID0gYWN0aXZpdHlQcm92aWRlci5nZXRBY3Rpdml0eUhhbmRsZXIoXG4gICAgICAgICAgcmVxdWVzdC5jb21tYW5kLm5hbWVcbiAgICAgICAgKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAoIWFjdGl2aXR5KSB7XG4gICAgICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhBY3Rpdml0eU1ldHJpY3MuTm90Rm91bmRFcnJvciwgMSwgVW5pdC5Db3VudCk7XG4gICAgICAgICAgICB0aHJvdyBuZXcgQWN0aXZpdHlOb3RGb3VuZEVycm9yKFxuICAgICAgICAgICAgICByZXF1ZXN0LmNvbW1hbmQubmFtZSxcbiAgICAgICAgICAgICAgYWN0aXZpdHlQcm92aWRlci5nZXRBY3Rpdml0eUlkcygpXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRpbWVkKFxuICAgICAgICAgICAgbWV0cmljcyxcbiAgICAgICAgICAgIEFjdGl2aXR5TWV0cmljcy5PcGVyYXRpb25EdXJhdGlvbixcbiAgICAgICAgICAgICgpID0+IGFjdGl2aXR5KC4uLnJlcXVlc3QuY29tbWFuZC5hcmdzKVxuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKGlzQXN5bmNSZXN1bHQocmVzdWx0KSkge1xuICAgICAgICAgICAgbWV0cmljcy5zZXRQcm9wZXJ0eShBY3Rpdml0eU1ldHJpY3MuSGFzUmVzdWx0LCAwKTtcbiAgICAgICAgICAgIG1ldHJpY3Muc2V0UHJvcGVydHkoQWN0aXZpdHlNZXRyaWNzLkFzeW5jUmVzdWx0LCAxKTtcblxuICAgICAgICAgICAgLy8gVE9ETzogU2VuZCBoZWFydGJlYXQgb24gc3luYyBhY3Rpdml0eSBjb21wbGV0aW9uLlxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFRoZSBhY3Rpdml0eSBoYXMgZGVjbGFyZWQgdGhhdCBpdCBpcyBhc3luYywgb3RoZXIgdGhhbiBsb2dnaW5nLCB0aGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gZG8gaGVyZS5cbiAgICAgICAgICAgICAqIFRoZSBhY3Rpdml0eSBzaG91bGQgY2FsbCB7QGxpbmsgV29ya2Zsb3dDbGllbnQuY29tcGxldGVBY3Rpdml0eX0gb3Ige0BsaW5rIFdvcmtmbG93Q2xpZW50LmZhaWxBY3Rpdml0eX0gd2hlbiBpdCBpcyBkb25lLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfSBlbHNlIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgIG1ldHJpY3Muc2V0UHJvcGVydHkoQWN0aXZpdHlNZXRyaWNzLkhhc1Jlc3VsdCwgMSk7XG4gICAgICAgICAgICBtZXRyaWNzLnNldFByb3BlcnR5KEFjdGl2aXR5TWV0cmljcy5Bc3luY1Jlc3VsdCwgMCk7XG4gICAgICAgICAgICBtZXRyaWNzLnB1dE1ldHJpYyhcbiAgICAgICAgICAgICAgQWN0aXZpdHlNZXRyaWNzLlJlc3VsdEJ5dGVzLFxuICAgICAgICAgICAgICBKU09OLnN0cmluZ2lmeShyZXN1bHQpLmxlbmd0aCxcbiAgICAgICAgICAgICAgVW5pdC5CeXRlc1xuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbWV0cmljcy5zZXRQcm9wZXJ0eShBY3Rpdml0eU1ldHJpY3MuSGFzUmVzdWx0LCAwKTtcbiAgICAgICAgICAgIG1ldHJpY3Muc2V0UHJvcGVydHkoQWN0aXZpdHlNZXRyaWNzLkFzeW5jUmVzdWx0LCAwKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsb2dnZXIuaW5mbyhcbiAgICAgICAgICAgIGBBY3Rpdml0eSAke2FjdGl2aXR5SGFuZGxlfSBzdWNjZWVkZWQsIHJlcG9ydGluZyBiYWNrIHRvIGV4ZWN1dGlvbi5gXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGNvbnN0IGVuZFRpbWUgPSBnZXRFbmRUaW1lKHN0YXJ0KTtcbiAgICAgICAgICBjb25zdCBldmVudCA9IGNyZWF0ZUV2ZW50PEFjdGl2aXR5Q29tcGxldGVkPihcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuQWN0aXZpdHlDb21wbGV0ZWQsXG4gICAgICAgICAgICAgIHNlcTogcmVxdWVzdC5jb21tYW5kLnNlcSxcbiAgICAgICAgICAgICAgcmVzdWx0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVuZFRpbWVcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgYXdhaXQgZmluaXNoQWN0aXZpdHkoXG4gICAgICAgICAgICBldmVudCxcbiAgICAgICAgICAgIHJlY29yZEFnZSArIChlbmRUaW1lLmdldFRpbWUoKSAtIHN0YXJ0LmdldFRpbWUoKSlcbiAgICAgICAgICApO1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICBjb25zdCBbZXJyb3IsIG1lc3NhZ2VdID0gZXh0ZW5kc0Vycm9yKGVycilcbiAgICAgICAgICAgID8gW2Vyci5uYW1lLCBlcnIubWVzc2FnZV1cbiAgICAgICAgICAgIDogW1wiRXJyb3JcIiwgSlNPTi5zdHJpbmdpZnkoZXJyKV07XG5cbiAgICAgICAgICBsb2dnZXIuaW5mbyhcbiAgICAgICAgICAgIGBBY3Rpdml0eSAke2FjdGl2aXR5SGFuZGxlfSBmYWlsZWQsIHJlcG9ydGluZyBmYWlsdXJlIGJhY2sgdG8gZXhlY3V0aW9uOiAke2Vycm9yfTogJHttZXNzYWdlfWBcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgY29uc3QgZW5kVGltZSA9IGdldEVuZFRpbWUoc3RhcnQpO1xuICAgICAgICAgIGNvbnN0IGV2ZW50ID0gY3JlYXRlRXZlbnQ8QWN0aXZpdHlGYWlsZWQ+KFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5BY3Rpdml0eUZhaWxlZCxcbiAgICAgICAgICAgICAgc2VxOiByZXF1ZXN0LmNvbW1hbmQuc2VxLFxuICAgICAgICAgICAgICBlcnJvcixcbiAgICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBlbmRUaW1lXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGF3YWl0IGZpbmlzaEFjdGl2aXR5KFxuICAgICAgICAgICAgZXZlbnQsXG4gICAgICAgICAgICByZWNvcmRBZ2UgKyAoZW5kVGltZS5nZXRUaW1lKCkgLSBzdGFydC5nZXRUaW1lKCkpXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICBjbGVhckFjdGl2aXR5Q29udGV4dCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gbG9nQWN0aXZpdHlDb21wbGV0ZU1ldHJpY3MoZmFpbGVkOiBib29sZWFuLCBkdXJhdGlvbjogbnVtYmVyKSB7XG4gICAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoXG4gICAgICAgICAgICBBY3Rpdml0eU1ldHJpY3MuQWN0aXZpdHlGYWlsZWQsXG4gICAgICAgICAgICBmYWlsZWQgPyAxIDogMCxcbiAgICAgICAgICAgIFVuaXQuQ291bnRcbiAgICAgICAgICApO1xuICAgICAgICAgIG1ldHJpY3MucHV0TWV0cmljKFxuICAgICAgICAgICAgQWN0aXZpdHlNZXRyaWNzLkFjdGl2aXR5Q29tcGxldGVkLFxuICAgICAgICAgICAgZmFpbGVkID8gMCA6IDEsXG4gICAgICAgICAgICBVbml0LkNvdW50XG4gICAgICAgICAgKTtcbiAgICAgICAgICAvLyBUaGUgdG90YWwgdGltZSBmcm9tIHRoZSBhY3Rpdml0eSBiZWluZyBzY2hlZHVsZWQgdW50aWwgaXQncyByZXN1bHQgaXMgc2VuZCB0byB0aGUgd29ya2Zsb3cuXG4gICAgICAgICAgbWV0cmljcy5wdXRNZXRyaWMoQWN0aXZpdHlNZXRyaWNzLlRvdGFsRHVyYXRpb24sIGR1cmF0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGFzeW5jIGZ1bmN0aW9uIGZpbmlzaEFjdGl2aXR5KFxuICAgICAgICAgIGV2ZW50OiBBY3Rpdml0eUNvbXBsZXRlZCB8IEFjdGl2aXR5RmFpbGVkLFxuICAgICAgICAgIGR1cmF0aW9uOiBudW1iZXJcbiAgICAgICAgKSB7XG4gICAgICAgICAgYXdhaXQgdGltZWQobWV0cmljcywgQWN0aXZpdHlNZXRyaWNzLlN1Ym1pdFdvcmtmbG93VGFza0R1cmF0aW9uLCAoKSA9PlxuICAgICAgICAgICAgd29ya2Zsb3dDbGllbnQuc3VibWl0V29ya2Zsb3dUYXNrKHJlcXVlc3QuZXhlY3V0aW9uSWQsIGV2ZW50KVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBsb2dBY3Rpdml0eUNvbXBsZXRlTWV0cmljcyhpc1dvcmtmbG93RmFpbGVkKGV2ZW50KSwgZHVyYXRpb24pO1xuICAgICAgICB9XG4gICAgICB9XG4gICk7XG59XG4iXX0=

@@ -1,6 +0,4 @@

import type { WorkflowClient } from "../clients/workflow-client.js";
import type { EventClient } from "../index.js";
import { EventualServiceClient } from "../../service-client.js";
export interface ApiHandlerDependencies {
workflowClient: WorkflowClient;
eventClient: EventClient;
serviceClient: EventualServiceClient;
}

@@ -13,3 +11,3 @@ /**

*/
export declare function createApiHandler({ workflowClient, eventClient, }: ApiHandlerDependencies): (request: Request) => Promise<Response>;
export declare function createApiHandler({ serviceClient }: ApiHandlerDependencies): (request: Request) => Promise<Response>;
//# sourceMappingURL=api-handler.d.ts.map
import { api } from "../../api.js";
import { registerEventClient, registerWorkflowClient } from "../../global.js";
import { registerServiceClient } from "../../global.js";
/**

@@ -9,6 +9,5 @@ * Creates a generic function for handling inbound API requests

*/
export function createApiHandler({ workflowClient, eventClient, }) {
// make the workflow client available to web hooks
registerWorkflowClient(workflowClient);
registerEventClient(eventClient);
export function createApiHandler({ serviceClient }) {
// make the service client available to web hooks
registerServiceClient(serviceClient);
api.all("*", () => new Response("Not Found.", { status: 404 }));

@@ -33,2 +32,2 @@ /**

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcnVudGltZS9oYW5kbGVycy9hcGktaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ25DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBUzlFOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEVBQy9CLGNBQWMsRUFDZCxXQUFXLEdBQ1k7SUFDdkIsa0RBQWtEO0lBQ2xELHNCQUFzQixDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRWpDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFaEU7Ozs7O09BS0c7SUFDSCxPQUFPLEtBQUssVUFBVSxjQUFjLENBQUMsT0FBZ0I7UUFDbkQsSUFBSTtZQUNGLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM1QjtRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1osT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNuQixPQUFPLElBQUksUUFBUSxDQUFDLHVCQUF1QixFQUFFO2dCQUMzQyxNQUFNLEVBQUUsR0FBRzthQUNaLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFwaSB9IGZyb20gXCIuLi8uLi9hcGkuanNcIjtcbmltcG9ydCB7IHJlZ2lzdGVyRXZlbnRDbGllbnQsIHJlZ2lzdGVyV29ya2Zsb3dDbGllbnQgfSBmcm9tIFwiLi4vLi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IFdvcmtmbG93Q2xpZW50IH0gZnJvbSBcIi4uL2NsaWVudHMvd29ya2Zsb3ctY2xpZW50LmpzXCI7XG5pbXBvcnQgdHlwZSB7IEV2ZW50Q2xpZW50IH0gZnJvbSBcIi4uL2luZGV4LmpzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBpSGFuZGxlckRlcGVuZGVuY2llcyB7XG4gIHdvcmtmbG93Q2xpZW50OiBXb3JrZmxvd0NsaWVudDtcbiAgZXZlbnRDbGllbnQ6IEV2ZW50Q2xpZW50O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBnZW5lcmljIGZ1bmN0aW9uIGZvciBoYW5kbGluZyBpbmJvdW5kIEFQSSByZXF1ZXN0c1xuICogdGhhdCBjYW4gYmUgdXNlZCBpbiBydW50aW1lIGltcGxlbWVudGF0aW9ucy4gVGhpcyBpbXBsZW1lbnRhdGlvbiBpc1xuICogZGVjb3VwbGVkIGZyb20gYSBydW50aW1lJ3Mgc3BlY2lmaWNzIGJ5IHRoZSBjbGllbnRzLiBBIHJ1bnRpbWUgbXVzdFxuICogaW5qZWN0IGl0cyBvd24gY2xpZW50IGltcGxlbWVudGF0aW9ucyBkZXNpZ25lZCBmb3IgdGhhdCBwbGF0Zm9ybS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUFwaUhhbmRsZXIoe1xuICB3b3JrZmxvd0NsaWVudCxcbiAgZXZlbnRDbGllbnQsXG59OiBBcGlIYW5kbGVyRGVwZW5kZW5jaWVzKSB7XG4gIC8vIG1ha2UgdGhlIHdvcmtmbG93IGNsaWVudCBhdmFpbGFibGUgdG8gd2ViIGhvb2tzXG4gIHJlZ2lzdGVyV29ya2Zsb3dDbGllbnQod29ya2Zsb3dDbGllbnQpO1xuICByZWdpc3RlckV2ZW50Q2xpZW50KGV2ZW50Q2xpZW50KTtcblxuICBhcGkuYWxsKFwiKlwiLCAoKSA9PiBuZXcgUmVzcG9uc2UoXCJOb3QgRm91bmQuXCIsIHsgc3RhdHVzOiA0MDQgfSkpO1xuXG4gIC8qKlxuICAgKiBIYW5kbGUgaW5ib3VuZCB3ZWJob29rIEFQSSByZXF1ZXN0cy5cbiAgICpcbiAgICogRWFjaCB3ZWJob29rIHJlZ2lzdGVycyByb3V0ZXMgb24gdGhlIGNlbnRyYWwge0BsaW5rIHJvdXRlcn0gd2hpY2hcbiAgICogdGhlbiBoYW5kbGVzIHRoZSByZXF1ZXN0LlxuICAgKi9cbiAgcmV0dXJuIGFzeW5jIGZ1bmN0aW9uIHByb2Nlc3NSZXF1ZXN0KHJlcXVlc3Q6IFJlcXVlc3QpOiBQcm9taXNlPFJlc3BvbnNlPiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhcGkuaGFuZGxlKHJlcXVlc3QpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xuICAgICAgcmV0dXJuIG5ldyBSZXNwb25zZShcIkludGVybmFsIFNlcnZlciBFcnJvclwiLCB7XG4gICAgICAgIHN0YXR1czogNTAwLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcnVudGltZS9oYW5kbGVycy9hcGktaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ25DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBT3hEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEVBQUUsYUFBYSxFQUEwQjtJQUN4RSxpREFBaUQ7SUFDakQscUJBQXFCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFckMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxRQUFRLENBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVoRTs7Ozs7T0FLRztJQUNILE9BQU8sS0FBSyxVQUFVLGNBQWMsQ0FBQyxPQUFnQjtRQUNuRCxJQUFJO1lBQ0YsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzVCO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDWixPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLE9BQU8sSUFBSSxRQUFRLENBQUMsdUJBQXVCLEVBQUU7Z0JBQzNDLE1BQU0sRUFBRSxHQUFHO2FBQ1osQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXBpIH0gZnJvbSBcIi4uLy4uL2FwaS5qc1wiO1xuaW1wb3J0IHsgcmVnaXN0ZXJTZXJ2aWNlQ2xpZW50IH0gZnJvbSBcIi4uLy4uL2dsb2JhbC5qc1wiO1xuaW1wb3J0IHsgRXZlbnR1YWxTZXJ2aWNlQ2xpZW50IH0gZnJvbSBcIi4uLy4uL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBpSGFuZGxlckRlcGVuZGVuY2llcyB7XG4gIHNlcnZpY2VDbGllbnQ6IEV2ZW50dWFsU2VydmljZUNsaWVudDtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgZ2VuZXJpYyBmdW5jdGlvbiBmb3IgaGFuZGxpbmcgaW5ib3VuZCBBUEkgcmVxdWVzdHNcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW4gcnVudGltZSBpbXBsZW1lbnRhdGlvbnMuIFRoaXMgaW1wbGVtZW50YXRpb24gaXNcbiAqIGRlY291cGxlZCBmcm9tIGEgcnVudGltZSdzIHNwZWNpZmljcyBieSB0aGUgY2xpZW50cy4gQSBydW50aW1lIG11c3RcbiAqIGluamVjdCBpdHMgb3duIGNsaWVudCBpbXBsZW1lbnRhdGlvbnMgZGVzaWduZWQgZm9yIHRoYXQgcGxhdGZvcm0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBcGlIYW5kbGVyKHsgc2VydmljZUNsaWVudCB9OiBBcGlIYW5kbGVyRGVwZW5kZW5jaWVzKSB7XG4gIC8vIG1ha2UgdGhlIHNlcnZpY2UgY2xpZW50IGF2YWlsYWJsZSB0byB3ZWIgaG9va3NcbiAgcmVnaXN0ZXJTZXJ2aWNlQ2xpZW50KHNlcnZpY2VDbGllbnQpO1xuXG4gIGFwaS5hbGwoXCIqXCIsICgpID0+IG5ldyBSZXNwb25zZShcIk5vdCBGb3VuZC5cIiwgeyBzdGF0dXM6IDQwNCB9KSk7XG5cbiAgLyoqXG4gICAqIEhhbmRsZSBpbmJvdW5kIHdlYmhvb2sgQVBJIHJlcXVlc3RzLlxuICAgKlxuICAgKiBFYWNoIHdlYmhvb2sgcmVnaXN0ZXJzIHJvdXRlcyBvbiB0aGUgY2VudHJhbCB7QGxpbmsgcm91dGVyfSB3aGljaFxuICAgKiB0aGVuIGhhbmRsZXMgdGhlIHJlcXVlc3QuXG4gICAqL1xuICByZXR1cm4gYXN5bmMgZnVuY3Rpb24gcHJvY2Vzc1JlcXVlc3QocmVxdWVzdDogUmVxdWVzdCk6IFByb21pc2U8UmVzcG9uc2U+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGFwaS5oYW5kbGUocmVxdWVzdCk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgICByZXR1cm4gbmV3IFJlc3BvbnNlKFwiSW50ZXJuYWwgU2VydmVyIEVycm9yXCIsIHtcbiAgICAgICAgc3RhdHVzOiA1MDAsXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG59XG4iXX0=

@@ -1,5 +0,4 @@

import type { WorkflowClient } from "../clients/workflow-client.js";
import type { EventClient } from "../clients/event-client.js";
import type { EventEnvelope } from "../../event.js";
import { EventHandlerProvider } from "../providers/event-handler-provider.js";
import { EventualServiceClient } from "../../service-client.js";
/**

@@ -10,11 +9,7 @@ * The dependencies of {@link createEventHandlerWorker}.

/**
* The {@link WorkflowClient} for interacting with workflows contained
* The {@link EventualServiceClient} for interacting with workflows contained
* within the service boundary.
*/
workflowClient?: WorkflowClient;
serviceClient?: EventualServiceClient;
/**
* The {@link EventClient} for publishing events to the service's event bus.
*/
eventClient?: EventClient;
/**
* Returns event handlers

@@ -33,3 +28,3 @@ */

*/
export declare function createEventHandlerWorker({ workflowClient, eventClient, eventHandlerProvider, }: EventHandlerDependencies): EventHandlerWorker;
export declare function createEventHandlerWorker({ serviceClient, eventHandlerProvider, }: EventHandlerDependencies): EventHandlerWorker;
//# sourceMappingURL=event-handler.d.ts.map

@@ -1,2 +0,2 @@

import { registerWorkflowClient, registerEventClient } from "../../global.js";
import { registerServiceClient } from "../../global.js";
/**

@@ -8,10 +8,7 @@ * Creates a generic function for handling inbound event requests

*/
export function createEventHandlerWorker({ workflowClient, eventClient, eventHandlerProvider, }) {
export function createEventHandlerWorker({ serviceClient, eventHandlerProvider, }) {
// make the workflow client available to web hooks
if (workflowClient) {
registerWorkflowClient(workflowClient);
if (serviceClient) {
registerServiceClient(serviceClient);
}
if (eventClient) {
registerEventClient(eventClient);
}
return async function (events) {

@@ -23,2 +20,2 @@ await Promise.allSettled(events.map((event) => Promise.allSettled(eventHandlerProvider

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ydW50aW1lL2hhbmRsZXJzL2V2ZW50LWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUE2QjlFOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUFDLEVBQ3ZDLGNBQWMsRUFDZCxXQUFXLEVBQ1gsb0JBQW9CLEdBQ0s7SUFDekIsa0RBQWtEO0lBQ2xELElBQUksY0FBYyxFQUFFO1FBQ2xCLHNCQUFzQixDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ3hDO0lBQ0QsSUFBSSxXQUFXLEVBQUU7UUFDZixtQkFBbUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztLQUNsQztJQUVELE9BQU8sS0FBSyxXQUFXLE1BQU07UUFDM0IsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUN0QixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDbkIsT0FBTyxDQUFDLFVBQVUsQ0FDaEIsb0JBQW9CO2FBQ2pCLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7YUFDcEMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQzFDLENBQ0YsQ0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlZ2lzdGVyV29ya2Zsb3dDbGllbnQsIHJlZ2lzdGVyRXZlbnRDbGllbnQgfSBmcm9tIFwiLi4vLi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IFdvcmtmbG93Q2xpZW50IH0gZnJvbSBcIi4uL2NsaWVudHMvd29ya2Zsb3ctY2xpZW50LmpzXCI7XG5pbXBvcnQgdHlwZSB7IEV2ZW50Q2xpZW50IH0gZnJvbSBcIi4uL2NsaWVudHMvZXZlbnQtY2xpZW50LmpzXCI7XG5pbXBvcnQgdHlwZSB7IEV2ZW50RW52ZWxvcGUgfSBmcm9tIFwiLi4vLi4vZXZlbnQuanNcIjtcbmltcG9ydCB7IEV2ZW50SGFuZGxlclByb3ZpZGVyIH0gZnJvbSBcIi4uL3Byb3ZpZGVycy9ldmVudC1oYW5kbGVyLXByb3ZpZGVyLmpzXCI7XG5cbi8qKlxuICogVGhlIGRlcGVuZGVuY2llcyBvZiB7QGxpbmsgY3JlYXRlRXZlbnRIYW5kbGVyV29ya2VyfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudEhhbmRsZXJEZXBlbmRlbmNpZXMge1xuICAvKipcbiAgICogVGhlIHtAbGluayBXb3JrZmxvd0NsaWVudH0gZm9yIGludGVyYWN0aW5nIHdpdGggd29ya2Zsb3dzIGNvbnRhaW5lZFxuICAgKiB3aXRoaW4gdGhlIHNlcnZpY2UgYm91bmRhcnkuXG4gICAqL1xuICB3b3JrZmxvd0NsaWVudD86IFdvcmtmbG93Q2xpZW50O1xuICAvKipcbiAgICogVGhlIHtAbGluayBFdmVudENsaWVudH0gZm9yIHB1Ymxpc2hpbmcgZXZlbnRzIHRvIHRoZSBzZXJ2aWNlJ3MgZXZlbnQgYnVzLlxuICAgKi9cbiAgZXZlbnRDbGllbnQ/OiBFdmVudENsaWVudDtcbiAgLyoqXG4gICAqIFJldHVybnMgZXZlbnQgaGFuZGxlcnNcbiAgICovXG4gIGV2ZW50SGFuZGxlclByb3ZpZGVyOiBFdmVudEhhbmRsZXJQcm92aWRlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdmVudEhhbmRsZXJXb3JrZXIge1xuICAoZXZlbnRzOiBFdmVudEVudmVsb3BlW10pOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBnZW5lcmljIGZ1bmN0aW9uIGZvciBoYW5kbGluZyBpbmJvdW5kIGV2ZW50IHJlcXVlc3RzXG4gKiB0aGF0IGNhbiBiZSB1c2VkIGluIHJ1bnRpbWUgaW1wbGVtZW50YXRpb25zLiBUaGlzIGltcGxlbWVudGF0aW9uIGlzXG4gKiBkZWNvdXBsZWQgZnJvbSBhIHJ1bnRpbWUncyBzcGVjaWZpY3MgYnkgdGhlIGNsaWVudHMuIEEgcnVudGltZSBtdXN0XG4gKiBpbmplY3QgaXRzIG93biBjbGllbnQgaW1wbGVtZW50YXRpb25zIGRlc2lnbmVkIGZvciB0aGF0IHBsYXRmb3JtLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRXZlbnRIYW5kbGVyV29ya2VyKHtcbiAgd29ya2Zsb3dDbGllbnQsXG4gIGV2ZW50Q2xpZW50LFxuICBldmVudEhhbmRsZXJQcm92aWRlcixcbn06IEV2ZW50SGFuZGxlckRlcGVuZGVuY2llcyk6IEV2ZW50SGFuZGxlcldvcmtlciB7XG4gIC8vIG1ha2UgdGhlIHdvcmtmbG93IGNsaWVudCBhdmFpbGFibGUgdG8gd2ViIGhvb2tzXG4gIGlmICh3b3JrZmxvd0NsaWVudCkge1xuICAgIHJlZ2lzdGVyV29ya2Zsb3dDbGllbnQod29ya2Zsb3dDbGllbnQpO1xuICB9XG4gIGlmIChldmVudENsaWVudCkge1xuICAgIHJlZ2lzdGVyRXZlbnRDbGllbnQoZXZlbnRDbGllbnQpO1xuICB9XG5cbiAgcmV0dXJuIGFzeW5jIGZ1bmN0aW9uIChldmVudHMpIHtcbiAgICBhd2FpdCBQcm9taXNlLmFsbFNldHRsZWQoXG4gICAgICBldmVudHMubWFwKChldmVudCkgPT5cbiAgICAgICAgUHJvbWlzZS5hbGxTZXR0bGVkKFxuICAgICAgICAgIGV2ZW50SGFuZGxlclByb3ZpZGVyXG4gICAgICAgICAgICAuZ2V0RXZlbnRIYW5kbGVyc0ZvckV2ZW50KGV2ZW50Lm5hbWUpXG4gICAgICAgICAgICAubWFwKChoYW5kbGVyKSA9PiBoYW5kbGVyKGV2ZW50LmV2ZW50KSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgICk7XG4gIH07XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ydW50aW1lL2hhbmRsZXJzL2V2ZW50LWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUF3QnhEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUFDLEVBQ3ZDLGFBQWEsRUFDYixvQkFBb0IsR0FDSztJQUN6QixrREFBa0Q7SUFDbEQsSUFBSSxhQUFhLEVBQUU7UUFDakIscUJBQXFCLENBQUMsYUFBYSxDQUFDLENBQUM7S0FDdEM7SUFFRCxPQUFPLEtBQUssV0FBVyxNQUFNO1FBQzNCLE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FDdEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ25CLE9BQU8sQ0FBQyxVQUFVLENBQ2hCLG9CQUFvQjthQUNqQix3QkFBd0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO2FBQ3BDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUMxQyxDQUNGLENBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWdpc3RlclNlcnZpY2VDbGllbnQgfSBmcm9tIFwiLi4vLi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEV2ZW50RW52ZWxvcGUgfSBmcm9tIFwiLi4vLi4vZXZlbnQuanNcIjtcbmltcG9ydCB7IEV2ZW50SGFuZGxlclByb3ZpZGVyIH0gZnJvbSBcIi4uL3Byb3ZpZGVycy9ldmVudC1oYW5kbGVyLXByb3ZpZGVyLmpzXCI7XG5pbXBvcnQgeyBFdmVudHVhbFNlcnZpY2VDbGllbnQgfSBmcm9tIFwiLi4vLi4vc2VydmljZS1jbGllbnQuanNcIjtcblxuLyoqXG4gKiBUaGUgZGVwZW5kZW5jaWVzIG9mIHtAbGluayBjcmVhdGVFdmVudEhhbmRsZXJXb3JrZXJ9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50SGFuZGxlckRlcGVuZGVuY2llcyB7XG4gIC8qKlxuICAgKiBUaGUge0BsaW5rIEV2ZW50dWFsU2VydmljZUNsaWVudH0gZm9yIGludGVyYWN0aW5nIHdpdGggd29ya2Zsb3dzIGNvbnRhaW5lZFxuICAgKiB3aXRoaW4gdGhlIHNlcnZpY2UgYm91bmRhcnkuXG4gICAqL1xuICBzZXJ2aWNlQ2xpZW50PzogRXZlbnR1YWxTZXJ2aWNlQ2xpZW50O1xuICAvKipcbiAgICogUmV0dXJucyBldmVudCBoYW5kbGVyc1xuICAgKi9cbiAgZXZlbnRIYW5kbGVyUHJvdmlkZXI6IEV2ZW50SGFuZGxlclByb3ZpZGVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50SGFuZGxlcldvcmtlciB7XG4gIChldmVudHM6IEV2ZW50RW52ZWxvcGVbXSk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIGdlbmVyaWMgZnVuY3Rpb24gZm9yIGhhbmRsaW5nIGluYm91bmQgZXZlbnQgcmVxdWVzdHNcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW4gcnVudGltZSBpbXBsZW1lbnRhdGlvbnMuIFRoaXMgaW1wbGVtZW50YXRpb24gaXNcbiAqIGRlY291cGxlZCBmcm9tIGEgcnVudGltZSdzIHNwZWNpZmljcyBieSB0aGUgY2xpZW50cy4gQSBydW50aW1lIG11c3RcbiAqIGluamVjdCBpdHMgb3duIGNsaWVudCBpbXBsZW1lbnRhdGlvbnMgZGVzaWduZWQgZm9yIHRoYXQgcGxhdGZvcm0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVFdmVudEhhbmRsZXJXb3JrZXIoe1xuICBzZXJ2aWNlQ2xpZW50LFxuICBldmVudEhhbmRsZXJQcm92aWRlcixcbn06IEV2ZW50SGFuZGxlckRlcGVuZGVuY2llcyk6IEV2ZW50SGFuZGxlcldvcmtlciB7XG4gIC8vIG1ha2UgdGhlIHdvcmtmbG93IGNsaWVudCBhdmFpbGFibGUgdG8gd2ViIGhvb2tzXG4gIGlmIChzZXJ2aWNlQ2xpZW50KSB7XG4gICAgcmVnaXN0ZXJTZXJ2aWNlQ2xpZW50KHNlcnZpY2VDbGllbnQpO1xuICB9XG5cbiAgcmV0dXJuIGFzeW5jIGZ1bmN0aW9uIChldmVudHMpIHtcbiAgICBhd2FpdCBQcm9taXNlLmFsbFNldHRsZWQoXG4gICAgICBldmVudHMubWFwKChldmVudCkgPT5cbiAgICAgICAgUHJvbWlzZS5hbGxTZXR0bGVkKFxuICAgICAgICAgIGV2ZW50SGFuZGxlclByb3ZpZGVyXG4gICAgICAgICAgICAuZ2V0RXZlbnRIYW5kbGVyc0ZvckV2ZW50KGV2ZW50Lm5hbWUpXG4gICAgICAgICAgICAubWFwKChoYW5kbGVyKSA9PiBoYW5kbGVyKGV2ZW50LmV2ZW50KSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgICk7XG4gIH07XG59XG4iXX0=

@@ -5,3 +5,3 @@ import { createSendSignalCall } from "./calls/send-signal-call.js";

import { isOrchestratorWorker } from "./runtime/flags.js";
import { getWorkflowClient } from "./global.js";
import { getServiceClient } from "./global.js";
import { ulid } from "ulidx";

@@ -113,4 +113,4 @@ export function signal(name) {

else {
return getWorkflowClient().sendSignal({
executionId,
return getServiceClient().sendSignal({
execution: executionId,
signal,

@@ -133,2 +133,2 @@ id: id ?? ulid(),

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaWduYWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNoRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBa0I3QixNQUFNLFVBQVUsTUFBTSxDQUFpQixJQUFZO0lBQ2pELE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQUVELE1BQU0sT0FBTyxNQUFNO0lBQ2pCLFlBQXFCLEVBQVU7UUFBVixPQUFFLEdBQUYsRUFBRSxDQUFRO0lBQUcsQ0FBQztJQUNuQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BOEJHO0lBQ0ksRUFBRSxDQUFDLE9BQXVDO1FBQy9DLE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BNkJHO0lBQ0ksTUFBTSxDQUFDLElBQTBCO1FBQ3RDLE9BQU8sWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0ksSUFBSSxDQUNULFdBQW1CLEVBQ25CLEdBQUcsSUFBOEI7UUFFakMsT0FBTyxVQUFVLENBQWtCLFdBQVcsRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUNqRSxDQUFDO0NBQ0Y7QUF1Q0QsTUFBTSxVQUFVLFlBQVksQ0FDMUIsTUFBNEIsRUFDNUIsSUFBMEI7SUFFMUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUU7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO0tBQzdEO0lBRUQsT0FBTyxzQkFBc0IsQ0FDM0IsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQy9DLElBQUksRUFBRSxjQUFjLENBQ2QsQ0FBQztBQUNYLENBQUM7QUF1Q0QsTUFBTSxVQUFVLFFBQVEsQ0FDdEIsTUFBNEIsRUFDNUIsT0FBbUM7SUFFbkMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUU7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsT0FBTywrQkFBK0IsQ0FDcEMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQy9DLE9BQWMsQ0FDZixDQUFDO0FBQ0osQ0FBQztBQStCRCxNQUFNLFVBQVUsVUFBVSxDQUN4QixXQUFtQixFQUNuQixNQUE0QixFQUM1QixPQUFhLEVBQ2IsRUFBVztJQUVYLElBQUksb0JBQW9CLEVBQUUsRUFBRTtRQUMxQixPQUFPLG9CQUFvQixDQUN6QixFQUFFLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLEVBQ2pELE9BQU8sTUFBTSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUMvQyxPQUFPLENBQ1UsQ0FBQztLQUNyQjtTQUFNO1FBQ0wsT0FBTyxpQkFBaUIsRUFBRSxDQUFDLFVBQVUsQ0FBQztZQUNwQyxXQUFXO1lBQ1gsTUFBTTtZQUNOLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFO1lBQ2hCLE9BQU87U0FDUixDQUFDLENBQUM7S0FDSjtBQUNILENBQUM7QUFJRCxNQUFNLENBQU4sSUFBWSxnQkFHWDtBQUhELFdBQVksZ0JBQWdCO0lBQzFCLGlFQUFTLENBQUE7SUFDVCwyRUFBYyxDQUFBO0FBQ2hCLENBQUMsRUFIVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBRzNCO0FBYUQsTUFBTSxVQUFVLHNCQUFzQixDQUNwQyxNQUFvQjtJQUVwQixPQUFPLE1BQU0sQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsY0FBYyxDQUFDO0FBQ3pELENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLE1BQW9CO0lBRXBCLE9BQU8sTUFBTSxDQUFDLElBQUksS0FBSyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUM7QUFDcEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVNlbmRTaWduYWxDYWxsIH0gZnJvbSBcIi4vY2FsbHMvc2VuZC1zaWduYWwtY2FsbC5qc1wiO1xuaW1wb3J0IHsgY3JlYXRlUmVnaXN0ZXJTaWduYWxIYW5kbGVyQ2FsbCB9IGZyb20gXCIuL2NhbGxzL3NpZ25hbC1oYW5kbGVyLWNhbGwuanNcIjtcbmltcG9ydCB7IGNyZWF0ZUV4cGVjdFNpZ25hbENhbGwgfSBmcm9tIFwiLi9jYWxscy9leHBlY3Qtc2lnbmFsLWNhbGwuanNcIjtcbmltcG9ydCB7IGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vcnVudGltZS9mbGFncy5qc1wiO1xuaW1wb3J0IHsgZ2V0V29ya2Zsb3dDbGllbnQgfSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB7IHVsaWQgfSBmcm9tIFwidWxpZHhcIjtcblxuLyoqXG4gKiBBIHJlZmVyZW5jZSB0byBhIGNyZWF0ZWQgc2lnbmFsIGhhbmRsZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmFsc0hhbmRsZXIge1xuICAvKipcbiAgICogUmVtb3ZlIHRoZSBoYW5kbGVyIGZyb20gdGhlIHNpZ25hbC5cbiAgICpcbiAgICogQW55IG9uZ29pbmcge0BsaW5rIENoYWlufXMgc3RhcnRlZCBieSB0aGUgaGFuZGxlciB3aWxsIGNvbnRpbnVlIHRvIHJ1biB0byBjb21wbGV0aW9uLlxuICAgKi9cbiAgZGlzcG9zZTogKCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IHR5cGUgU2lnbmFsSGFuZGxlckZ1bmN0aW9uPFBheWxvYWQgPSB2b2lkPiA9IChcbiAgcGF5bG9hZDogUGF5bG9hZFxuKSA9PiBQcm9taXNlPHZvaWQ+IHwgdm9pZDtcblxuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbDxQYXlsb2FkID0gdm9pZD4obmFtZTogc3RyaW5nKTogU2lnbmFsPFBheWxvYWQ+IHtcbiAgcmV0dXJuIG5ldyBTaWduYWwobmFtZSk7XG59XG5cbmV4cG9ydCBjbGFzcyBTaWduYWw8UGF5bG9hZCA9IHZvaWQ+IHtcbiAgY29uc3RydWN0b3IocmVhZG9ubHkgaWQ6IHN0cmluZykge31cbiAgLyoqXG4gICAqIExpc3RlbnMgZm9yIHNpZ25hbHMgc2VudCB0byB0aGUgY3VycmVudCB3b3JrZmxvdy5cbiAgICpcbiAgICogV2hlbiB0aGUgc2lnbmFsIGlzIHJlY2VpdmVkLCB0aGUgaGFuZGxlciBpcyBpbnZva2VkLlxuICAgKiBJZiB0aGUgaGFuZGxlciByZXR1cm4gYSBwcm9taXNlLCB0aGUgaGFuZGxlciBpcyBhZGRlZCBhIHtAbGluayBDaGFpbn1cbiAgICogYW5kIHByb2dyZXNzZWQgdW50aWwgY29tcGxldGlvbi5cbiAgICpcbiAgICogYGBgdHNcbiAgICogY29uc3QgbXlTaWduYWwgPSBzaWduYWwoXCJNeVNpZ25hbFwiKTtcbiAgICpcbiAgICogd29ya2Zsb3coXCJ3ZlwiLCAoKSA9PiB7XG4gICAqICAgIGxldCBkb25lID0gZmFsc2U7XG4gICAqICAgIG15U2lnbmFsLm9uKGFzeW5jICgpID0+IHtcbiAgICogICAgICAgYXdhaXQgc2xlZXBGb3IoMTApO1xuICAgKiAgICAgICBkb25lID0gdHJ1ZTtcbiAgICogICAgfSk7XG4gICAqXG4gICAqICAgIGF3YWl0IGNvbmRpdGlvbigoKSA9PiBkb25lKTtcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKlxuICAgKiBUbyByZW1vdmUgdGhlIGhhbmRsZXIsIGNhbGwgdGhlIGRpc3Bvc2UgbWV0aG9kLlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiBjb25zdCBoYW5kbGVyID0gbXlTaWduYWwub24oKCkgPT4ge30pO1xuICAgKlxuICAgKiBhd2FpdCBzbGVlcEZvcigxMCk7XG4gICAqXG4gICAqIGhhbmRsZXIuZGlzcG9zZSgpO1xuICAgKiBgYGBcbiAgICovXG4gIHB1YmxpYyBvbihoYW5kbGVyOiBTaWduYWxIYW5kbGVyRnVuY3Rpb248UGF5bG9hZD4pOiBTaWduYWxzSGFuZGxlciB7XG4gICAgcmV0dXJuIG9uU2lnbmFsKHRoaXMsIGhhbmRsZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdhaXRzIGZvciBhIHNpZ25hbCB0byBiZSByZWNlaXZlZCBieSB0aGUgd29ya2Zsb3cuXG4gICAqXG4gICAqIFRoZSBmaXJzdCBzaWduYWwgcmVjZWl2ZWQgd2lsbCByZXNvbHZlIHRoZSBQcm9taXNlIHdpdGggdGhlIHBheWxvYWQgb2YgdGhlIHByb21pc2UuXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IG15U2lnbmFsID0gc2lnbmFsPHN0cmluZz4oXCJNeVNpZ25hbFwiKTtcbiAgICogd29ya2Zsb3coXCJ3ZlwiLCBhc3luYyAoKSA9PiB7XG4gICAqICAgIGNvbnN0IHBheWxvYWQgPSBhd2FpdCBteVNpZ25hbC5leHBlY3QoKTtcbiAgICpcbiAgICogICAgcmV0dXJuIHBheWxvYWQ7XG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogVXNlIGBvcHRzLnRpbWVvdXRTZWNvbmRzYCB0byBzdG9wIHdhaXRpbmcgYWZ0ZXIgdGhlIHByb3ZpZGVkIHRpbWUuIFRoZSBQcm9taXNlIHdpbGwgcmVqZWN0XG4gICAqIHdoZW4gdGhlIHByb3ZpZGVkIHRpbWUgaGFzIGVsYXBzZWQuXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IG15U2lnbmFsID0gc2lnbmFsPHN0cmluZz4oXCJNeVNpZ25hbFwiKTtcbiAgICogd29ya2Zsb3coXCJ3ZlwiLCBhc3luYyAoKSA9PiB7XG4gICAqICAgIHRyeSB7XG4gICAqICAgICAgIGNvbnN0IHBheWxvYWQgPSBhd2FpdCBteVNpZ25hbC5leHBlY3QoeyB0aW1lb3V0U2Vjb25kOiAxMCAqIDYwIH0pO1xuICAgKlxuICAgKiAgICAgICByZXR1cm4gcGF5bG9hZDtcbiAgICogICAgfSBjYXRjaCB7XG4gICAqICAgICAgIHJldHVybiBcIm5vdGhpbmchXCI7XG4gICAqICAgIH1cbiAgICogfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgcHVibGljIGV4cGVjdChvcHRzPzogRXhwZWN0U2lnbmFsT3B0aW9ucyk6IFByb21pc2U8UGF5bG9hZD4ge1xuICAgIHJldHVybiBleHBlY3RTaWduYWwodGhpcywgb3B0cyk7XG4gIH1cblxuICAvKipcbiAgICogQWxsb3dzIGEge0BsaW5rIHdvcmtmbG93fSB0byBzZW5kIHRoaXMgc2lnbmFsIHRvIGFueSB3b3JrZmxvdyB7QGxpbmsgRXhlY3V0aW9ufSBieSBleGVjdXRpb25JZC5cbiAgICpcbiAgICogYGBgdHNcbiAgICogY29uc3QgbXlTaWduYWwgPSBzaWduYWw8c3RyaW5nPihcIk15U2lnbmFsXCIpO1xuICAgKiB3b3JrZmxvdyhcIndmXCIsIGFzeW5jICgpID0+IHtcbiAgICogICAgbXlTaWduYWwuc2VuZChcInBheWxvYWRcIik7XG4gICAqIH0pXG4gICAqIGBgYFxuICAgKi9cbiAgcHVibGljIHNlbmQoXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgICAuLi5hcmdzOiBTZW5kU2lnbmFsUHJvcHM8UGF5bG9hZD5cbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIHNlbmRTaWduYWw8U2lnbmFsPFBheWxvYWQ+PihleGVjdXRpb25JZCwgdGhpcywgLi4uYXJncyk7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgU2lnbmFsUGF5bG9hZDxFIGV4dGVuZHMgU2lnbmFsPGFueT4+ID0gRSBleHRlbmRzIFNpZ25hbDxpbmZlciBQPlxuICA/IFBcbiAgOiBuZXZlcjtcblxuZXhwb3J0IGludGVyZmFjZSBFeHBlY3RTaWduYWxPcHRpb25zIHtcbiAgLyoqXG4gICAqIE9wdGlvbmFsLiBTZWNvbmRzIHRvIHdhaXQgZm9yIHRoZSBzaWduYWwgdG8gYmUgcmVjZWl2ZWQuXG4gICAqXG4gICAqIEFmdGVyIHRoZSBwcm92aWRlZCBzZWNvbmRzLCB0aGUgcHJvbWlzZSB3aWxsIHJlamVjdC5cbiAgICovXG4gIHRpbWVvdXRTZWNvbmRzOiBudW1iZXI7XG59XG5cbi8qKlxuICogV2FpdHMgZm9yIGEgc2lnbmFsIHRvIGJlIHJlY2VpdmVkIGJ5IHRoZSB3b3JrZmxvdy5cbiAqXG4gKiBUaGUgZmlyc3Qgc2lnbmFsIHJlY2VpdmVkIHdpbGwgcmVzb2x2ZSB0aGUgUHJvbWlzZSB3aXRoIHRoZSBwYXlsb2FkIG9mIHRoZSBwcm9taXNlLlxuICpcbiAqIGBgYHRzXG4gKiB3b3JrZmxvdyhcIndmXCIsICgpID0+IHtcbiAqICAgIGNvbnN0IHBheWxvYWQgPSBhd2FpdCBleHBlY3RTaWduYWwoXCJNeVNpZ25hbFwiKTtcbiAqXG4gKiAgICByZXR1cm4gcGF5bG9hZDtcbiAqIH0pO1xuICogYGBgXG4gKlxuICogVXNlIGBvcHRzLnRpbWVvdXRTZWNvbmRzYCB0byBzdG9wIHdhaXRpbmcgYWZ0ZXIgdGhlIHByb3ZpZGVkIHRpbWUuIFRoZSBQcm9taXNlIHdpbGwgcmVqZWN0XG4gKiB3aGVuIHRoZSBwcm92aWRlZCB0aW1lIGhhcyBlbGFwc2VkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhwZWN0U2lnbmFsPFNpZ25hbFBheWxvYWQgPSBhbnk+KFxuICBzaWduYWxJZDogc3RyaW5nLFxuICBvcHRzPzogRXhwZWN0U2lnbmFsT3B0aW9uc1xuKTogUHJvbWlzZTxTaWduYWxQYXlsb2FkPjtcbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RTaWduYWw8RSBleHRlbmRzIFNpZ25hbDxhbnk+PihcbiAgc2lnbmFsOiBFLFxuICBvcHRzPzogRXhwZWN0U2lnbmFsT3B0aW9uc1xuKTogUHJvbWlzZTxTaWduYWxQYXlsb2FkPEU+PjtcbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RTaWduYWwoXG4gIHNpZ25hbDogU2lnbmFsPGFueT4gfCBzdHJpbmcsXG4gIG9wdHM/OiBFeHBlY3RTaWduYWxPcHRpb25zXG4pOiBQcm9taXNlPFNpZ25hbFBheWxvYWQ8YW55Pj4ge1xuICBpZiAoIWlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJleHBlY3RTaWduYWwgaXMgb25seSB2YWxpZCBpbiBhIHdvcmtmbG93XCIpO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZUV4cGVjdFNpZ25hbENhbGwoXG4gICAgdHlwZW9mIHNpZ25hbCA9PT0gXCJzdHJpbmdcIiA/IHNpZ25hbCA6IHNpZ25hbC5pZCxcbiAgICBvcHRzPy50aW1lb3V0U2Vjb25kc1xuICApIGFzIGFueTtcbn1cblxuLyoqXG4gKiBMaXN0ZW5zIGZvciBhIHNpZ25hbCBtYXRjaGluZyB0aGUgc2lnbmFsSWQgcHJvdmlkZWQuXG4gKlxuICogV2hlbiB0aGUgc2lnbmFsIGlzIHJlY2VpdmVkLCB0aGUgaGFuZGxlciBpcyBpbnZva2VkLlxuICogSWYgdGhlIGhhbmRsZXIgcmV0dXJuIGEgcHJvbWlzZSwgdGhlIGhhbmRsZXIgaXMgYWRkZWQgYXMgYSB7QGxpbmsgQ2hhaW59XG4gKiBhbmQgcHJvZ3Jlc3NlZCB1bnRpbCBjb21wbGV0aW9uLlxuICpcbiAqIGBgYHRzXG4gKiB3b3JrZmxvdyhcIndmXCIsICgpID0+IHtcbiAqICAgIGxldCBkb25lID0gZmFsc2U7XG4gKiAgICBvblNpZ25hbChcIk15U2lnbmFsXCIsIGFzeW5jICgpID0+IHtcbiAqICAgICAgIGF3YWl0IHNsZWVwRm9yKDEwKTtcbiAqICAgICAgIGRvbmUgPSB0cnVlO1xuICogICAgfSk7XG4gKlxuICogICAgYXdhaXQgY29uZGl0aW9uKCgpID0+IGRvbmUpO1xuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBUbyByZW1vdmUgdGhlIGhhbmRsZXIsIGNhbGwgdGhlIGRpc3Bvc2UgbWV0aG9kLlxuICpcbiAqIGBgYHRzXG4gKiBjb25zdCBoYW5kbGVyID0gb25TaWduYWwoXCJNeVNpZ25hbFwiLCAoKSA9PiB7fSk7XG4gKlxuICogYXdhaXQgc2xlZXBGb3IoMTApO1xuICpcbiAqIGhhbmRsZXIuZGlzcG9zZSgpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvblNpZ25hbDxFIGV4dGVuZHMgU2lnbmFsPGFueT4+KFxuICBzaWduYWw6IEUsXG4gIGhhbmRsZXI6IFNpZ25hbEhhbmRsZXJGdW5jdGlvbjxTaWduYWxQYXlsb2FkPEU+PlxuKTogU2lnbmFsc0hhbmRsZXI7XG5leHBvcnQgZnVuY3Rpb24gb25TaWduYWw8UGF5bG9hZCA9IHZvaWQ+KFxuICBzaWduYWxJZDogc3RyaW5nLFxuICBoYW5kbGVyOiBTaWduYWxIYW5kbGVyRnVuY3Rpb248UGF5bG9hZD5cbik6IFNpZ25hbHNIYW5kbGVyO1xuZXhwb3J0IGZ1bmN0aW9uIG9uU2lnbmFsKFxuICBzaWduYWw6IFNpZ25hbDxhbnk+IHwgc3RyaW5nLFxuICBoYW5kbGVyOiBTaWduYWxIYW5kbGVyRnVuY3Rpb248YW55PlxuKTogU2lnbmFsc0hhbmRsZXIge1xuICBpZiAoIWlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJvblNpZ25hbCBpcyBvbmx5IHZhbGlkIGluIGEgd29ya2Zsb3dcIik7XG4gIH1cblxuICByZXR1cm4gY3JlYXRlUmVnaXN0ZXJTaWduYWxIYW5kbGVyQ2FsbChcbiAgICB0eXBlb2Ygc2lnbmFsID09PSBcInN0cmluZ1wiID8gc2lnbmFsIDogc2lnbmFsLmlkLFxuICAgIGhhbmRsZXIgYXMgYW55XG4gICk7XG59XG5cbmV4cG9ydCB0eXBlIFNlbmRTaWduYWxQcm9wczxTaWduYWxQYXlsb2FkPiA9IFtTaWduYWxQYXlsb2FkXSBleHRlbmRzXG4gIHwgW3VuZGVmaW5lZF1cbiAgfCBbdm9pZF1cbiAgPyBbaWQ/OiBzdHJpbmddXG4gIDogW3BheWxvYWQ6IFNpZ25hbFBheWxvYWQsIGlkPzogc3RyaW5nXTtcblxuLyoqXG4gKiBBbGxvd3MgYSB7QGxpbmsgd29ya2Zsb3d9IHRvIHNlbmQgYSBzaWduYWwgdG8gYW55IHdvcmtmbG93IHtAbGluayBFeGVjdXRpb259IGJ5IGV4ZWN1dGlvbklkLlxuICpcbiAqIGBgYHRzXG4gKiBjb25zdCBteVNpZ25hbCA9IHNpZ25hbDxzdHJpbmc+KFwiTXlTaWduYWxcIik7XG4gKiB3b3JrZmxvdyhcIndmXCIsIGFzeW5jICgpID0+IHtcbiAqICAgIHNlbmRTaWduYWwoXCJteVNpZ25hbFwiLCBcInBheWxvYWRcIik7XG4gKiAgICBzZW5kU2lnbmFsKG15U2lnbmFsLCBcInBheWxvYWRcIik7XG4gKiB9KVxuICogYGBgXG4gKlxuICogQHBhcmFtIGlkIGFuIG9wdGlvbmFsLCBleGVjdXRpb24gdW5pcXVlIElELCB3aWxsIGJlIHVzZWQgdG8gZGUtZHVwZSB0aGUgc2lnbmFsIGF0IHRoZSB0YXJnZXQgZXhlY3V0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2VuZFNpZ25hbDxTIGV4dGVuZHMgU2lnbmFsPGFueT4+KFxuICBleGVjdXRpb25JZDogc3RyaW5nLFxuICBzaWduYWw6IFMsXG4gIC4uLmFyZ3M6IFNlbmRTaWduYWxQcm9wczxTaWduYWxQYXlsb2FkPFM+PlxuKTogUHJvbWlzZTx2b2lkPjtcbmV4cG9ydCBmdW5jdGlvbiBzZW5kU2lnbmFsPFBheWxvYWQgPSBhbnk+KFxuICBleGVjdXRpb25JZDogc3RyaW5nLFxuICBzaWduYWxJZDogc3RyaW5nLFxuICAuLi5hcmdzOiBTZW5kU2lnbmFsUHJvcHM8UGF5bG9hZD5cbik6IFByb21pc2U8dm9pZD47XG5leHBvcnQgZnVuY3Rpb24gc2VuZFNpZ25hbChcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgc2lnbmFsOiBzdHJpbmcgfCBTaWduYWw8YW55PixcbiAgcGF5bG9hZD86IGFueSxcbiAgaWQ/OiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICBpZiAoaXNPcmNoZXN0cmF0b3JXb3JrZXIoKSkge1xuICAgIHJldHVybiBjcmVhdGVTZW5kU2lnbmFsQ2FsbChcbiAgICAgIHsgdHlwZTogU2lnbmFsVGFyZ2V0VHlwZS5FeGVjdXRpb24sIGV4ZWN1dGlvbklkIH0sXG4gICAgICB0eXBlb2Ygc2lnbmFsID09PSBcInN0cmluZ1wiID8gc2lnbmFsIDogc2lnbmFsLmlkLFxuICAgICAgcGF5bG9hZFxuICAgICkgYXMgdW5rbm93biBhcyBhbnk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGdldFdvcmtmbG93Q2xpZW50KCkuc2VuZFNpZ25hbCh7XG4gICAgICBleGVjdXRpb25JZCxcbiAgICAgIHNpZ25hbCxcbiAgICAgIGlkOiBpZCA/PyB1bGlkKCksXG4gICAgICBwYXlsb2FkLFxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCB0eXBlIFNpZ25hbFRhcmdldCA9IEV4ZWN1dGlvblRhcmdldCB8IENoaWxkRXhlY3V0aW9uVGFyZ2V0O1xuXG5leHBvcnQgZW51bSBTaWduYWxUYXJnZXRUeXBlIHtcbiAgRXhlY3V0aW9uLFxuICBDaGlsZEV4ZWN1dGlvbixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeGVjdXRpb25UYXJnZXQge1xuICB0eXBlOiBTaWduYWxUYXJnZXRUeXBlLkV4ZWN1dGlvbjtcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGlsZEV4ZWN1dGlvblRhcmdldCB7XG4gIHR5cGU6IFNpZ25hbFRhcmdldFR5cGUuQ2hpbGRFeGVjdXRpb247XG4gIHdvcmtmbG93TmFtZTogc3RyaW5nO1xuICBzZXE6IG51bWJlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ2hpbGRFeGVjdXRpb25UYXJnZXQoXG4gIHRhcmdldDogU2lnbmFsVGFyZ2V0XG4pOiB0YXJnZXQgaXMgQ2hpbGRFeGVjdXRpb25UYXJnZXQge1xuICByZXR1cm4gdGFyZ2V0LnR5cGUgPT09IFNpZ25hbFRhcmdldFR5cGUuQ2hpbGRFeGVjdXRpb247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0V4ZWN1dGlvblRhcmdldChcbiAgdGFyZ2V0OiBTaWduYWxUYXJnZXRcbik6IHRhcmdldCBpcyBFeGVjdXRpb25UYXJnZXQge1xuICByZXR1cm4gdGFyZ2V0LnR5cGUgPT09IFNpZ25hbFRhcmdldFR5cGUuRXhlY3V0aW9uO1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaWduYWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMvQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBa0I3QixNQUFNLFVBQVUsTUFBTSxDQUFpQixJQUFZO0lBQ2pELE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQUVELE1BQU0sT0FBTyxNQUFNO0lBQ2pCLFlBQXFCLEVBQVU7UUFBVixPQUFFLEdBQUYsRUFBRSxDQUFRO0lBQUcsQ0FBQztJQUNuQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BOEJHO0lBQ0ksRUFBRSxDQUFDLE9BQXVDO1FBQy9DLE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BNkJHO0lBQ0ksTUFBTSxDQUFDLElBQTBCO1FBQ3RDLE9BQU8sWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0ksSUFBSSxDQUNULFdBQW1CLEVBQ25CLEdBQUcsSUFBOEI7UUFFakMsT0FBTyxVQUFVLENBQWtCLFdBQVcsRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUNqRSxDQUFDO0NBQ0Y7QUF1Q0QsTUFBTSxVQUFVLFlBQVksQ0FDMUIsTUFBNEIsRUFDNUIsSUFBMEI7SUFFMUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUU7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO0tBQzdEO0lBRUQsT0FBTyxzQkFBc0IsQ0FDM0IsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQy9DLElBQUksRUFBRSxjQUFjLENBQ2QsQ0FBQztBQUNYLENBQUM7QUF1Q0QsTUFBTSxVQUFVLFFBQVEsQ0FDdEIsTUFBNEIsRUFDNUIsT0FBbUM7SUFFbkMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUU7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsT0FBTywrQkFBK0IsQ0FDcEMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQy9DLE9BQWMsQ0FDZixDQUFDO0FBQ0osQ0FBQztBQStCRCxNQUFNLFVBQVUsVUFBVSxDQUN4QixXQUFtQixFQUNuQixNQUE0QixFQUM1QixPQUFhLEVBQ2IsRUFBVztJQUVYLElBQUksb0JBQW9CLEVBQUUsRUFBRTtRQUMxQixPQUFPLG9CQUFvQixDQUN6QixFQUFFLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLEVBQ2pELE9BQU8sTUFBTSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUMvQyxPQUFPLENBQ1UsQ0FBQztLQUNyQjtTQUFNO1FBQ0wsT0FBTyxnQkFBZ0IsRUFBRSxDQUFDLFVBQVUsQ0FBQztZQUNuQyxTQUFTLEVBQUUsV0FBVztZQUN0QixNQUFNO1lBQ04sRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFJLEVBQUU7WUFDaEIsT0FBTztTQUNSLENBQUMsQ0FBQztLQUNKO0FBQ0gsQ0FBQztBQUlELE1BQU0sQ0FBTixJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDMUIsaUVBQVMsQ0FBQTtJQUNULDJFQUFjLENBQUE7QUFDaEIsQ0FBQyxFQUhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFHM0I7QUFhRCxNQUFNLFVBQVUsc0JBQXNCLENBQ3BDLE1BQW9CO0lBRXBCLE9BQU8sTUFBTSxDQUFDLElBQUksS0FBSyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUM7QUFDekQsQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FDL0IsTUFBb0I7SUFFcEIsT0FBTyxNQUFNLENBQUMsSUFBSSxLQUFLLGdCQUFnQixDQUFDLFNBQVMsQ0FBQztBQUNwRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlU2VuZFNpZ25hbENhbGwgfSBmcm9tIFwiLi9jYWxscy9zZW5kLXNpZ25hbC1jYWxsLmpzXCI7XG5pbXBvcnQgeyBjcmVhdGVSZWdpc3RlclNpZ25hbEhhbmRsZXJDYWxsIH0gZnJvbSBcIi4vY2FsbHMvc2lnbmFsLWhhbmRsZXItY2FsbC5qc1wiO1xuaW1wb3J0IHsgY3JlYXRlRXhwZWN0U2lnbmFsQ2FsbCB9IGZyb20gXCIuL2NhbGxzL2V4cGVjdC1zaWduYWwtY2FsbC5qc1wiO1xuaW1wb3J0IHsgaXNPcmNoZXN0cmF0b3JXb3JrZXIgfSBmcm9tIFwiLi9ydW50aW1lL2ZsYWdzLmpzXCI7XG5pbXBvcnQgeyBnZXRTZXJ2aWNlQ2xpZW50IH0gZnJvbSBcIi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgeyB1bGlkIH0gZnJvbSBcInVsaWR4XCI7XG5cbi8qKlxuICogQSByZWZlcmVuY2UgdG8gYSBjcmVhdGVkIHNpZ25hbCBoYW5kbGVyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25hbHNIYW5kbGVyIHtcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaGFuZGxlciBmcm9tIHRoZSBzaWduYWwuXG4gICAqXG4gICAqIEFueSBvbmdvaW5nIHtAbGluayBDaGFpbn1zIHN0YXJ0ZWQgYnkgdGhlIGhhbmRsZXIgd2lsbCBjb250aW51ZSB0byBydW4gdG8gY29tcGxldGlvbi5cbiAgICovXG4gIGRpc3Bvc2U6ICgpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCB0eXBlIFNpZ25hbEhhbmRsZXJGdW5jdGlvbjxQYXlsb2FkID0gdm9pZD4gPSAoXG4gIHBheWxvYWQ6IFBheWxvYWRcbikgPT4gUHJvbWlzZTx2b2lkPiB8IHZvaWQ7XG5cbmV4cG9ydCBmdW5jdGlvbiBzaWduYWw8UGF5bG9hZCA9IHZvaWQ+KG5hbWU6IHN0cmluZyk6IFNpZ25hbDxQYXlsb2FkPiB7XG4gIHJldHVybiBuZXcgU2lnbmFsKG5hbWUpO1xufVxuXG5leHBvcnQgY2xhc3MgU2lnbmFsPFBheWxvYWQgPSB2b2lkPiB7XG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGlkOiBzdHJpbmcpIHt9XG4gIC8qKlxuICAgKiBMaXN0ZW5zIGZvciBzaWduYWxzIHNlbnQgdG8gdGhlIGN1cnJlbnQgd29ya2Zsb3cuXG4gICAqXG4gICAqIFdoZW4gdGhlIHNpZ25hbCBpcyByZWNlaXZlZCwgdGhlIGhhbmRsZXIgaXMgaW52b2tlZC5cbiAgICogSWYgdGhlIGhhbmRsZXIgcmV0dXJuIGEgcHJvbWlzZSwgdGhlIGhhbmRsZXIgaXMgYWRkZWQgYSB7QGxpbmsgQ2hhaW59XG4gICAqIGFuZCBwcm9ncmVzc2VkIHVudGlsIGNvbXBsZXRpb24uXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IG15U2lnbmFsID0gc2lnbmFsKFwiTXlTaWduYWxcIik7XG4gICAqXG4gICAqIHdvcmtmbG93KFwid2ZcIiwgKCkgPT4ge1xuICAgKiAgICBsZXQgZG9uZSA9IGZhbHNlO1xuICAgKiAgICBteVNpZ25hbC5vbihhc3luYyAoKSA9PiB7XG4gICAqICAgICAgIGF3YWl0IHNsZWVwRm9yKDEwKTtcbiAgICogICAgICAgZG9uZSA9IHRydWU7XG4gICAqICAgIH0pO1xuICAgKlxuICAgKiAgICBhd2FpdCBjb25kaXRpb24oKCkgPT4gZG9uZSk7XG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogVG8gcmVtb3ZlIHRoZSBoYW5kbGVyLCBjYWxsIHRoZSBkaXNwb3NlIG1ldGhvZC5cbiAgICpcbiAgICogYGBgdHNcbiAgICogY29uc3QgaGFuZGxlciA9IG15U2lnbmFsLm9uKCgpID0+IHt9KTtcbiAgICpcbiAgICogYXdhaXQgc2xlZXBGb3IoMTApO1xuICAgKlxuICAgKiBoYW5kbGVyLmRpc3Bvc2UoKTtcbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgb24oaGFuZGxlcjogU2lnbmFsSGFuZGxlckZ1bmN0aW9uPFBheWxvYWQ+KTogU2lnbmFsc0hhbmRsZXIge1xuICAgIHJldHVybiBvblNpZ25hbCh0aGlzLCBoYW5kbGVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXYWl0cyBmb3IgYSBzaWduYWwgdG8gYmUgcmVjZWl2ZWQgYnkgdGhlIHdvcmtmbG93LlxuICAgKlxuICAgKiBUaGUgZmlyc3Qgc2lnbmFsIHJlY2VpdmVkIHdpbGwgcmVzb2x2ZSB0aGUgUHJvbWlzZSB3aXRoIHRoZSBwYXlsb2FkIG9mIHRoZSBwcm9taXNlLlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiBjb25zdCBteVNpZ25hbCA9IHNpZ25hbDxzdHJpbmc+KFwiTXlTaWduYWxcIik7XG4gICAqIHdvcmtmbG93KFwid2ZcIiwgYXN5bmMgKCkgPT4ge1xuICAgKiAgICBjb25zdCBwYXlsb2FkID0gYXdhaXQgbXlTaWduYWwuZXhwZWN0KCk7XG4gICAqXG4gICAqICAgIHJldHVybiBwYXlsb2FkO1xuICAgKiB9KTtcbiAgICogYGBgXG4gICAqXG4gICAqIFVzZSBgb3B0cy50aW1lb3V0U2Vjb25kc2AgdG8gc3RvcCB3YWl0aW5nIGFmdGVyIHRoZSBwcm92aWRlZCB0aW1lLiBUaGUgUHJvbWlzZSB3aWxsIHJlamVjdFxuICAgKiB3aGVuIHRoZSBwcm92aWRlZCB0aW1lIGhhcyBlbGFwc2VkLlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiBjb25zdCBteVNpZ25hbCA9IHNpZ25hbDxzdHJpbmc+KFwiTXlTaWduYWxcIik7XG4gICAqIHdvcmtmbG93KFwid2ZcIiwgYXN5bmMgKCkgPT4ge1xuICAgKiAgICB0cnkge1xuICAgKiAgICAgICBjb25zdCBwYXlsb2FkID0gYXdhaXQgbXlTaWduYWwuZXhwZWN0KHsgdGltZW91dFNlY29uZDogMTAgKiA2MCB9KTtcbiAgICpcbiAgICogICAgICAgcmV0dXJuIHBheWxvYWQ7XG4gICAqICAgIH0gY2F0Y2gge1xuICAgKiAgICAgICByZXR1cm4gXCJub3RoaW5nIVwiO1xuICAgKiAgICB9XG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIHB1YmxpYyBleHBlY3Qob3B0cz86IEV4cGVjdFNpZ25hbE9wdGlvbnMpOiBQcm9taXNlPFBheWxvYWQ+IHtcbiAgICByZXR1cm4gZXhwZWN0U2lnbmFsKHRoaXMsIG9wdHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFsbG93cyBhIHtAbGluayB3b3JrZmxvd30gdG8gc2VuZCB0aGlzIHNpZ25hbCB0byBhbnkgd29ya2Zsb3cge0BsaW5rIEV4ZWN1dGlvbn0gYnkgZXhlY3V0aW9uSWQuXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IG15U2lnbmFsID0gc2lnbmFsPHN0cmluZz4oXCJNeVNpZ25hbFwiKTtcbiAgICogd29ya2Zsb3coXCJ3ZlwiLCBhc3luYyAoKSA9PiB7XG4gICAqICAgIG15U2lnbmFsLnNlbmQoXCJwYXlsb2FkXCIpO1xuICAgKiB9KVxuICAgKiBgYGBcbiAgICovXG4gIHB1YmxpYyBzZW5kKFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gICAgLi4uYXJnczogU2VuZFNpZ25hbFByb3BzPFBheWxvYWQ+XG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiBzZW5kU2lnbmFsPFNpZ25hbDxQYXlsb2FkPj4oZXhlY3V0aW9uSWQsIHRoaXMsIC4uLmFyZ3MpO1xuICB9XG59XG5cbmV4cG9ydCB0eXBlIFNpZ25hbFBheWxvYWQ8RSBleHRlbmRzIFNpZ25hbDxhbnk+PiA9IEUgZXh0ZW5kcyBTaWduYWw8aW5mZXIgUD5cbiAgPyBQXG4gIDogbmV2ZXI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXhwZWN0U2lnbmFsT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBPcHRpb25hbC4gU2Vjb25kcyB0byB3YWl0IGZvciB0aGUgc2lnbmFsIHRvIGJlIHJlY2VpdmVkLlxuICAgKlxuICAgKiBBZnRlciB0aGUgcHJvdmlkZWQgc2Vjb25kcywgdGhlIHByb21pc2Ugd2lsbCByZWplY3QuXG4gICAqL1xuICB0aW1lb3V0U2Vjb25kczogbnVtYmVyO1xufVxuXG4vKipcbiAqIFdhaXRzIGZvciBhIHNpZ25hbCB0byBiZSByZWNlaXZlZCBieSB0aGUgd29ya2Zsb3cuXG4gKlxuICogVGhlIGZpcnN0IHNpZ25hbCByZWNlaXZlZCB3aWxsIHJlc29sdmUgdGhlIFByb21pc2Ugd2l0aCB0aGUgcGF5bG9hZCBvZiB0aGUgcHJvbWlzZS5cbiAqXG4gKiBgYGB0c1xuICogd29ya2Zsb3coXCJ3ZlwiLCAoKSA9PiB7XG4gKiAgICBjb25zdCBwYXlsb2FkID0gYXdhaXQgZXhwZWN0U2lnbmFsKFwiTXlTaWduYWxcIik7XG4gKlxuICogICAgcmV0dXJuIHBheWxvYWQ7XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIFVzZSBgb3B0cy50aW1lb3V0U2Vjb25kc2AgdG8gc3RvcCB3YWl0aW5nIGFmdGVyIHRoZSBwcm92aWRlZCB0aW1lLiBUaGUgUHJvbWlzZSB3aWxsIHJlamVjdFxuICogd2hlbiB0aGUgcHJvdmlkZWQgdGltZSBoYXMgZWxhcHNlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cGVjdFNpZ25hbDxTaWduYWxQYXlsb2FkID0gYW55PihcbiAgc2lnbmFsSWQ6IHN0cmluZyxcbiAgb3B0cz86IEV4cGVjdFNpZ25hbE9wdGlvbnNcbik6IFByb21pc2U8U2lnbmFsUGF5bG9hZD47XG5leHBvcnQgZnVuY3Rpb24gZXhwZWN0U2lnbmFsPEUgZXh0ZW5kcyBTaWduYWw8YW55Pj4oXG4gIHNpZ25hbDogRSxcbiAgb3B0cz86IEV4cGVjdFNpZ25hbE9wdGlvbnNcbik6IFByb21pc2U8U2lnbmFsUGF5bG9hZDxFPj47XG5leHBvcnQgZnVuY3Rpb24gZXhwZWN0U2lnbmFsKFxuICBzaWduYWw6IFNpZ25hbDxhbnk+IHwgc3RyaW5nLFxuICBvcHRzPzogRXhwZWN0U2lnbmFsT3B0aW9uc1xuKTogUHJvbWlzZTxTaWduYWxQYXlsb2FkPGFueT4+IHtcbiAgaWYgKCFpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiZXhwZWN0U2lnbmFsIGlzIG9ubHkgdmFsaWQgaW4gYSB3b3JrZmxvd1wiKTtcbiAgfVxuXG4gIHJldHVybiBjcmVhdGVFeHBlY3RTaWduYWxDYWxsKFxuICAgIHR5cGVvZiBzaWduYWwgPT09IFwic3RyaW5nXCIgPyBzaWduYWwgOiBzaWduYWwuaWQsXG4gICAgb3B0cz8udGltZW91dFNlY29uZHNcbiAgKSBhcyBhbnk7XG59XG5cbi8qKlxuICogTGlzdGVucyBmb3IgYSBzaWduYWwgbWF0Y2hpbmcgdGhlIHNpZ25hbElkIHByb3ZpZGVkLlxuICpcbiAqIFdoZW4gdGhlIHNpZ25hbCBpcyByZWNlaXZlZCwgdGhlIGhhbmRsZXIgaXMgaW52b2tlZC5cbiAqIElmIHRoZSBoYW5kbGVyIHJldHVybiBhIHByb21pc2UsIHRoZSBoYW5kbGVyIGlzIGFkZGVkIGFzIGEge0BsaW5rIENoYWlufVxuICogYW5kIHByb2dyZXNzZWQgdW50aWwgY29tcGxldGlvbi5cbiAqXG4gKiBgYGB0c1xuICogd29ya2Zsb3coXCJ3ZlwiLCAoKSA9PiB7XG4gKiAgICBsZXQgZG9uZSA9IGZhbHNlO1xuICogICAgb25TaWduYWwoXCJNeVNpZ25hbFwiLCBhc3luYyAoKSA9PiB7XG4gKiAgICAgICBhd2FpdCBzbGVlcEZvcigxMCk7XG4gKiAgICAgICBkb25lID0gdHJ1ZTtcbiAqICAgIH0pO1xuICpcbiAqICAgIGF3YWl0IGNvbmRpdGlvbigoKSA9PiBkb25lKTtcbiAqIH0pO1xuICogYGBgXG4gKlxuICogVG8gcmVtb3ZlIHRoZSBoYW5kbGVyLCBjYWxsIHRoZSBkaXNwb3NlIG1ldGhvZC5cbiAqXG4gKiBgYGB0c1xuICogY29uc3QgaGFuZGxlciA9IG9uU2lnbmFsKFwiTXlTaWduYWxcIiwgKCkgPT4ge30pO1xuICpcbiAqIGF3YWl0IHNsZWVwRm9yKDEwKTtcbiAqXG4gKiBoYW5kbGVyLmRpc3Bvc2UoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gb25TaWduYWw8RSBleHRlbmRzIFNpZ25hbDxhbnk+PihcbiAgc2lnbmFsOiBFLFxuICBoYW5kbGVyOiBTaWduYWxIYW5kbGVyRnVuY3Rpb248U2lnbmFsUGF5bG9hZDxFPj5cbik6IFNpZ25hbHNIYW5kbGVyO1xuZXhwb3J0IGZ1bmN0aW9uIG9uU2lnbmFsPFBheWxvYWQgPSB2b2lkPihcbiAgc2lnbmFsSWQ6IHN0cmluZyxcbiAgaGFuZGxlcjogU2lnbmFsSGFuZGxlckZ1bmN0aW9uPFBheWxvYWQ+XG4pOiBTaWduYWxzSGFuZGxlcjtcbmV4cG9ydCBmdW5jdGlvbiBvblNpZ25hbChcbiAgc2lnbmFsOiBTaWduYWw8YW55PiB8IHN0cmluZyxcbiAgaGFuZGxlcjogU2lnbmFsSGFuZGxlckZ1bmN0aW9uPGFueT5cbik6IFNpZ25hbHNIYW5kbGVyIHtcbiAgaWYgKCFpc09yY2hlc3RyYXRvcldvcmtlcigpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwib25TaWduYWwgaXMgb25seSB2YWxpZCBpbiBhIHdvcmtmbG93XCIpO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZVJlZ2lzdGVyU2lnbmFsSGFuZGxlckNhbGwoXG4gICAgdHlwZW9mIHNpZ25hbCA9PT0gXCJzdHJpbmdcIiA/IHNpZ25hbCA6IHNpZ25hbC5pZCxcbiAgICBoYW5kbGVyIGFzIGFueVxuICApO1xufVxuXG5leHBvcnQgdHlwZSBTZW5kU2lnbmFsUHJvcHM8U2lnbmFsUGF5bG9hZD4gPSBbU2lnbmFsUGF5bG9hZF0gZXh0ZW5kc1xuICB8IFt1bmRlZmluZWRdXG4gIHwgW3ZvaWRdXG4gID8gW2lkPzogc3RyaW5nXVxuICA6IFtwYXlsb2FkOiBTaWduYWxQYXlsb2FkLCBpZD86IHN0cmluZ107XG5cbi8qKlxuICogQWxsb3dzIGEge0BsaW5rIHdvcmtmbG93fSB0byBzZW5kIGEgc2lnbmFsIHRvIGFueSB3b3JrZmxvdyB7QGxpbmsgRXhlY3V0aW9ufSBieSBleGVjdXRpb25JZC5cbiAqXG4gKiBgYGB0c1xuICogY29uc3QgbXlTaWduYWwgPSBzaWduYWw8c3RyaW5nPihcIk15U2lnbmFsXCIpO1xuICogd29ya2Zsb3coXCJ3ZlwiLCBhc3luYyAoKSA9PiB7XG4gKiAgICBzZW5kU2lnbmFsKFwibXlTaWduYWxcIiwgXCJwYXlsb2FkXCIpO1xuICogICAgc2VuZFNpZ25hbChteVNpZ25hbCwgXCJwYXlsb2FkXCIpO1xuICogfSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBpZCBhbiBvcHRpb25hbCwgZXhlY3V0aW9uIHVuaXF1ZSBJRCwgd2lsbCBiZSB1c2VkIHRvIGRlLWR1cGUgdGhlIHNpZ25hbCBhdCB0aGUgdGFyZ2V0IGV4ZWN1dGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNlbmRTaWduYWw8UyBleHRlbmRzIFNpZ25hbDxhbnk+PihcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgc2lnbmFsOiBTLFxuICAuLi5hcmdzOiBTZW5kU2lnbmFsUHJvcHM8U2lnbmFsUGF5bG9hZDxTPj5cbik6IFByb21pc2U8dm9pZD47XG5leHBvcnQgZnVuY3Rpb24gc2VuZFNpZ25hbDxQYXlsb2FkID0gYW55PihcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgc2lnbmFsSWQ6IHN0cmluZyxcbiAgLi4uYXJnczogU2VuZFNpZ25hbFByb3BzPFBheWxvYWQ+XG4pOiBQcm9taXNlPHZvaWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHNlbmRTaWduYWwoXG4gIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gIHNpZ25hbDogc3RyaW5nIHwgU2lnbmFsPGFueT4sXG4gIHBheWxvYWQ/OiBhbnksXG4gIGlkPzogc3RyaW5nXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKGlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICByZXR1cm4gY3JlYXRlU2VuZFNpZ25hbENhbGwoXG4gICAgICB7IHR5cGU6IFNpZ25hbFRhcmdldFR5cGUuRXhlY3V0aW9uLCBleGVjdXRpb25JZCB9LFxuICAgICAgdHlwZW9mIHNpZ25hbCA9PT0gXCJzdHJpbmdcIiA/IHNpZ25hbCA6IHNpZ25hbC5pZCxcbiAgICAgIHBheWxvYWRcbiAgICApIGFzIHVua25vd24gYXMgYW55O1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBnZXRTZXJ2aWNlQ2xpZW50KCkuc2VuZFNpZ25hbCh7XG4gICAgICBleGVjdXRpb246IGV4ZWN1dGlvbklkLFxuICAgICAgc2lnbmFsLFxuICAgICAgaWQ6IGlkID8/IHVsaWQoKSxcbiAgICAgIHBheWxvYWQsXG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgU2lnbmFsVGFyZ2V0ID0gRXhlY3V0aW9uVGFyZ2V0IHwgQ2hpbGRFeGVjdXRpb25UYXJnZXQ7XG5cbmV4cG9ydCBlbnVtIFNpZ25hbFRhcmdldFR5cGUge1xuICBFeGVjdXRpb24sXG4gIENoaWxkRXhlY3V0aW9uLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4ZWN1dGlvblRhcmdldCB7XG4gIHR5cGU6IFNpZ25hbFRhcmdldFR5cGUuRXhlY3V0aW9uO1xuICBleGVjdXRpb25JZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoaWxkRXhlY3V0aW9uVGFyZ2V0IHtcbiAgdHlwZTogU2lnbmFsVGFyZ2V0VHlwZS5DaGlsZEV4ZWN1dGlvbjtcbiAgd29ya2Zsb3dOYW1lOiBzdHJpbmc7XG4gIHNlcTogbnVtYmVyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNDaGlsZEV4ZWN1dGlvblRhcmdldChcbiAgdGFyZ2V0OiBTaWduYWxUYXJnZXRcbik6IHRhcmdldCBpcyBDaGlsZEV4ZWN1dGlvblRhcmdldCB7XG4gIHJldHVybiB0YXJnZXQudHlwZSA9PT0gU2lnbmFsVGFyZ2V0VHlwZS5DaGlsZEV4ZWN1dGlvbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRXhlY3V0aW9uVGFyZ2V0KFxuICB0YXJnZXQ6IFNpZ25hbFRhcmdldFxuKTogdGFyZ2V0IGlzIEV4ZWN1dGlvblRhcmdldCB7XG4gIHJldHVybiB0YXJnZXQudHlwZSA9PT0gU2lnbmFsVGFyZ2V0VHlwZS5FeGVjdXRpb247XG59XG4iXX0=

@@ -6,15 +6,4 @@ import type { Program } from "./interpret.js";

import { ChildExecution, ExecutionHandle } from "./execution.js";
import { StartExecutionRequest } from "./service-client.js";
export type WorkflowHandler<Input = any, Output = any> = (input: Input, context: Context) => Promise<Output> | Program<Output>;
export interface StartExecutionRequest<Input> extends WorkflowOptions {
/**
* Input payload for the workflow.
*/
input: Input;
/**
* Optional name of the workflow to start - used to determine the unique ID and enforce idempotency.
*
* @default - a unique ID is generated.
*/
name?: string;
}
/**

@@ -33,4 +22,4 @@ * Options which determine how a workflow operates.

}
export type WorkflowOutput<W extends Workflow<any, any>> = W extends Workflow<any, infer Out> ? Out : never;
export type WorkflowInput<W extends Workflow<any, any>> = W extends Workflow<infer In, any> ? In : never;
export type WorkflowOutput<W extends Workflow> = W extends Workflow<any, infer Out> ? Out : never;
export type WorkflowInput<W extends Workflow> = W extends Workflow<infer In, any> ? In : undefined;
/**

@@ -40,3 +29,3 @@ * A {@link Workflow} is a long-running process that orchestrates calls

*/
export interface Workflow<Input = any, Output = any> {
export interface Workflow<in Input = any, Output = any> {
/**

@@ -60,3 +49,3 @@ * Globally unique ID of this {@link Workflow}.

*/
startExecution(request: StartExecutionRequest<Input>): Promise<ExecutionHandle<Workflow<Input, Output>>>;
startExecution(request: Omit<StartExecutionRequest<Workflow<Input, Output>>, "workflow">): Promise<ExecutionHandle<Workflow<Input, Output>>>;
}

@@ -63,0 +52,0 @@ export declare function lookupWorkflow(name: string): Workflow | undefined;

@@ -1,2 +0,2 @@

import { workflows, clearEventualCollector, getWorkflowClient, } from "./global.js";
import { workflows, clearEventualCollector, getServiceClient, } from "./global.js";
import { DeterminismError } from "./error.js";

@@ -8,3 +8,2 @@ import { filterEvents, isHistoryEvent, isSleepCompleted, isSleepScheduled, isWorkflowStarted, WorkflowEventType, } from "./workflow-events.js";

import { isChain } from "./chain.js";
import { ExecutionHandle } from "./execution.js";
export function lookupWorkflow(name) {

@@ -26,6 +25,6 @@ return workflows().get(name);

workflow.startExecution = async function (input) {
const workflowClient = getWorkflowClient();
const executionId = await workflowClient.startWorkflow({
workflowName: name,
executionName: input.name,
const serviceClient = getServiceClient();
return await serviceClient.startExecution({
workflow: name,
executionName: input.executionName,
input: input.input,

@@ -35,3 +34,2 @@ timeoutSeconds: input.timeoutSeconds,

});
return new ExecutionHandle(executionId, workflowClient);
};

@@ -109,2 +107,2 @@ workflow.definition = (isChain(definition)

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd29ya2Zsb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxzQkFBc0IsRUFDdEIsaUJBQWlCLEdBQ2xCLE1BQU0sYUFBYSxDQUFDO0FBR3JCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM5QyxPQUFPLEVBQ0wsWUFBWSxFQUVaLGNBQWMsRUFDZCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUdqQixpQkFBaUIsR0FDbEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsU0FBUyxFQUFrQixNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTlELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDckMsT0FBTyxFQUFrQixlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQXVGakUsTUFBTSxVQUFVLGNBQWMsQ0FBQyxJQUFZO0lBQ3pDLE9BQU8sU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQy9CLENBQUM7QUErQkQsTUFBTSxVQUFVLFFBQVEsQ0FDdEIsSUFBWSxFQUNaLEdBQUcsSUFFNkM7SUFFaEQsTUFBTSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMzRSxJQUFJLFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN6QixNQUFNLElBQUksS0FB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QUFFLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUNyRTtTQUNBLEdBQUcsQ0FDRixDQUFDLENBQUMsRUFBRSxFQUFFLENBQ0osQ0FBQztRQUNDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxjQUFjO1FBQ3RDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRztRQUNWLFNBQVMsRUFBRSxRQUFRLENBQUMsV0FBVyxFQUFFO0tBQ1QsQ0FBQyxDQUM5QixDQUFDO0lBRUosT0FBTyxzQkFBc0IsQ0FBQztBQUNoQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgd29ya2Zsb3dzLFxuICBjbGVhckV2ZW50dWFsQ29sbGVjdG9yLFxuICBnZXRXb3JrZmxvd0NsaWVudCxcbn0gZnJvbSBcIi4vZ2xvYmFsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IFByb2dyYW0gfSBmcm9tIFwiLi9pbnRlcnByZXQuanNcIjtcbmltcG9ydCB0eXBlIHsgQ29udGV4dCwgV29ya2Zsb3dDb250ZXh0IH0gZnJvbSBcIi4vY29udGV4dC5qc1wiO1xuaW1wb3J0IHsgRGV0ZXJtaW5pc21FcnJvciB9IGZyb20gXCIuL2Vycm9yLmpzXCI7XG5pbXBvcnQge1xuICBmaWx0ZXJFdmVudHMsXG4gIEhpc3RvcnlTdGF0ZUV2ZW50LFxuICBpc0hpc3RvcnlFdmVudCxcbiAgaXNTbGVlcENvbXBsZXRlZCxcbiAgaXNTbGVlcFNjaGVkdWxlZCxcbiAgaXNXb3JrZmxvd1N0YXJ0ZWQsXG4gIFNsZWVwQ29tcGxldGVkLFxuICBTbGVlcFNjaGVkdWxlZCxcbiAgV29ya2Zsb3dFdmVudFR5cGUsXG59IGZyb20gXCIuL3dvcmtmbG93LWV2ZW50cy5qc1wiO1xuaW1wb3J0IHsgaW50ZXJwcmV0LCBXb3JrZmxvd1Jlc3VsdCB9IGZyb20gXCIuL2ludGVycHJldC5qc1wiO1xuaW1wb3J0IHsgY3JlYXRlV29ya2Zsb3dDYWxsIH0gZnJvbSBcIi4vY2FsbHMvd29ya2Zsb3ctY2FsbC5qc1wiO1xuaW1wb3J0IHsgQXdhaXRlZEV2ZW50dWFsIH0gZnJvbSBcIi4vZXZlbnR1YWwuanNcIjtcbmltcG9ydCB7IGlzT3JjaGVzdHJhdG9yV29ya2VyIH0gZnJvbSBcIi4vcnVudGltZS9mbGFncy5qc1wiO1xuaW1wb3J0IHsgaXNDaGFpbiB9IGZyb20gXCIuL2NoYWluLmpzXCI7XG5pbXBvcnQgeyBDaGlsZEV4ZWN1dGlvbiwgRXhlY3V0aW9uSGFuZGxlIH0gZnJvbSBcIi4vZXhlY3V0aW9uLmpzXCI7XG5cbmV4cG9ydCB0eXBlIFdvcmtmbG93SGFuZGxlcjxJbnB1dCA9IGFueSwgT3V0cHV0ID0gYW55PiA9IChcbiAgaW5wdXQ6IElucHV0LFxuICBjb250ZXh0OiBDb250ZXh0XG4pID0+IFByb21pc2U8T3V0cHV0PiB8IFByb2dyYW08T3V0cHV0PjtcblxuZXhwb3J0IGludGVyZmFjZSBTdGFydEV4ZWN1dGlvblJlcXVlc3Q8SW5wdXQ+IGV4dGVuZHMgV29ya2Zsb3dPcHRpb25zIHtcbiAgLyoqXG4gICAqIElucHV0IHBheWxvYWQgZm9yIHRoZSB3b3JrZmxvdy5cbiAgICovXG4gIGlucHV0OiBJbnB1dDtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIG5hbWUgb2YgdGhlIHdvcmtmbG93IHRvIHN0YXJ0IC0gdXNlZCB0byBkZXRlcm1pbmUgdGhlIHVuaXF1ZSBJRCBhbmQgZW5mb3JjZSBpZGVtcG90ZW5jeS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBhIHVuaXF1ZSBJRCBpcyBnZW5lcmF0ZWQuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgd2hpY2ggZGV0ZXJtaW5lIGhvdyBhIHdvcmtmbG93IG9wZXJhdGVzLlxuICpcbiAqIENhbiBiZSBwcm92aWRlZCBhdCB3b3JrZmxvdyBkZWZpbml0aW9uIHRpbWUgYW5kL29yIG92ZXJyaWRkZW4gYnkgdGhlIGNhbGxlciBvZiB7QGxpbmsgV29ya2Zsb3dDbGllbnQuc3RhcnRXb3JrZmxvd30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV29ya2Zsb3dPcHRpb25zIHtcbiAgLyoqXG4gICAqIE51bWJlciBvZiBzZWNvbmRzIGJlZm9yZSBleGVjdXRpb24gdGltZXMgb3V0LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHdvcmtmbG93IHdpbGwgbmV2ZXIgdGltZW91dC5cbiAgICovXG4gIHRpbWVvdXRTZWNvbmRzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgdHlwZSBXb3JrZmxvd091dHB1dDxXIGV4dGVuZHMgV29ya2Zsb3c8YW55LCBhbnk+PiA9IFcgZXh0ZW5kcyBXb3JrZmxvdzxcbiAgYW55LFxuICBpbmZlciBPdXRcbj5cbiAgPyBPdXRcbiAgOiBuZXZlcjtcblxuZXhwb3J0IHR5cGUgV29ya2Zsb3dJbnB1dDxXIGV4dGVuZHMgV29ya2Zsb3c8YW55LCBhbnk+PiA9IFcgZXh0ZW5kcyBXb3JrZmxvdzxcbiAgaW5mZXIgSW4sXG4gIGFueVxuPlxuICA/IEluXG4gIDogbmV2ZXI7XG5cbi8qKlxuICogQSB7QGxpbmsgV29ya2Zsb3d9IGlzIGEgbG9uZy1ydW5uaW5nIHByb2Nlc3MgdGhhdCBvcmNoZXN0cmF0ZXMgY2FsbHNcbiAqIHRvIG90aGVyIHNlcnZpY2VzIGluIGEgZHVyYWJsZSBhbmQgb2JzZXJ2YWJsZSB3YXkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV29ya2Zsb3c8SW5wdXQgPSBhbnksIE91dHB1dCA9IGFueT4ge1xuICAvKipcbiAgICogR2xvYmFsbHkgdW5pcXVlIElEIG9mIHRoaXMge0BsaW5rIFdvcmtmbG93fS5cbiAgICovXG4gIHdvcmtmbG93TmFtZTogc3RyaW5nO1xuXG4gIG9wdGlvbnM/OiBXb3JrZmxvd09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIEludm9rZXMgdGhlIHtAbGluayBXb3JrZmxvd30gZnJvbSB3aXRoaW4gYW5vdGhlciB3b3JrZmxvdy5cbiAgICpcbiAgICogVGhpcyBjYW4gb25seSBiZSBjYWxsZWQgZnJvbSB3aXRoaW4gYW5vdGhlciB3b3JrZmxvdyBiZWNhdXNlIGl0J3Mgbm90IHBvc3NpYmxlXG4gICAqIHRvIHdhaXQgZm9yIGNvbXBsZXRpb24gc3luY2hyb25vdXNseSAtIGl0IHJlbGllcyBvbiB0aGUgZXZlbnQtZHJpdmVuIGVudmlyb25tZW50XG4gICAqIG9mIGEgd29ya2Zsb3cgZXhlY3V0aW9uLlxuICAgKlxuICAgKiBUbyBzdGFydCBhIHdvcmtmbG93IGZyb20gYW5vdGhlciBlbnZpcm9ubWVudCwgdXNlIHtAbGluayBzdGFydH0uXG4gICAqL1xuICAoaW5wdXQ6IElucHV0KTogUHJvbWlzZTxPdXRwdXQ+ICYgQ2hpbGRFeGVjdXRpb247XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyBhIHdvcmtmbG93IGV4ZWN1dGlvblxuICAgKi9cbiAgc3RhcnRFeGVjdXRpb24oXG4gICAgcmVxdWVzdDogU3RhcnRFeGVjdXRpb25SZXF1ZXN0PElucHV0PlxuICApOiBQcm9taXNlPEV4ZWN1dGlvbkhhbmRsZTxXb3JrZmxvdzxJbnB1dCwgT3V0cHV0Pj4+O1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWwgLSB0aGlzIGlzIHRoZSBpbnRlcm5hbCBEU0wgcmVwcmVzZW50YXRpb24gdGhhdCBwcm9kdWNlcyBhIHtAbGluayBQcm9ncmFtfSBpbnN0ZWFkIG9mIGEgUHJvbWlzZS5cbiAgICovXG4gIGRlZmluaXRpb246IChcbiAgICBpbnB1dDogSW5wdXQsXG4gICAgY29udGV4dDogQ29udGV4dFxuICApID0+IFByb2dyYW08QXdhaXRlZEV2ZW50dWFsPE91dHB1dD4+O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9va3VwV29ya2Zsb3cobmFtZTogc3RyaW5nKTogV29ya2Zsb3cgfCB1bmRlZmluZWQge1xuICByZXR1cm4gd29ya2Zsb3dzKCkuZ2V0KG5hbWUpO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYW5kIHJlZ2lzdGVycyBhIGxvbmctcnVubmluZyB3b3JrZmxvdy5cbiAqXG4gKiBFeGFtcGxlOlxuICogYGBgdHNcbiAqIGltcG9ydCB7IGFjdGl2aXR5LCB3b3JrZmxvdyB9IGZyb20gXCJAZXZlbnR1YWwvY29yZVwiO1xuICpcbiAqIGV4cG9ydCBkZWZhdWx0IHdvcmtmbG93KFwibXktd29ya2Zsb3dcIiwgYXN5bmMgKHsgbmFtZSB9OiB7IG5hbWU6IHN0cmluZyB9KSA9PiB7XG4gKiAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGhlbGxvKG5hbWUpO1xuICogICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICogICByZXR1cm4gYHlvdSBzYWlkICR7cmVzdWx0fWA7XG4gKiB9KTtcbiAqXG4gKiBjb25zdCBoZWxsbyA9IGFjdGl2aXR5KFwiaGVsbG9cIiwgYXN5bmMgKG5hbWU6IHN0cmluZykgPT4ge1xuICogICByZXR1cm4gYGhlbGxvICR7bmFtZX1gO1xuICogfSk7XG4gKiBgYGBcbiAqIEBwYXJhbSBuYW1lIGEgZ2xvYmFsbHkgdW5pcXVlIElEIGZvciB0aGlzIHdvcmtmbG93LlxuICogQHBhcmFtIGRlZmluaXRpb24gdGhlIHdvcmtmbG93IGRlZmluaXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3b3JrZmxvdzxJbnB1dCA9IGFueSwgT3V0cHV0ID0gYW55PihcbiAgbmFtZTogc3RyaW5nLFxuICBkZWZpbml0aW9uOiBXb3JrZmxvd0hhbmRsZXI8SW5wdXQsIE91dHB1dD5cbik6IFdvcmtmbG93PElucHV0LCBPdXRwdXQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHdvcmtmbG93PElucHV0ID0gYW55LCBPdXRwdXQgPSBhbnk+KFxuICBuYW1lOiBzdHJpbmcsXG4gIG9wdHM6IFdvcmtmbG93T3B0aW9ucyxcbiAgZGVmaW5pdGlvbjogV29ya2Zsb3dIYW5kbGVyPElucHV0LCBPdXRwdXQ+XG4pOiBXb3JrZmxvdzxJbnB1dCwgT3V0cHV0PjtcbmV4cG9ydCBmdW5jdGlvbiB3b3JrZmxvdzxJbnB1dCA9IGFueSwgT3V0cHV0ID0gYW55PihcbiAgbmFtZTogc3RyaW5nLFxuICAuLi5hcmdzOlxuICAgIHwgW29wdHM6IFdvcmtmbG93T3B0aW9ucywgZGVmaW5pdGlvbjogV29ya2Zsb3dIYW5kbGVyPElucHV0LCBPdXRwdXQ+XVxuICAgIHwgW2RlZmluaXRpb246IFdvcmtmbG93SGFuZGxlcjxJbnB1dCwgT3V0cHV0Pl1cbik6IFdvcmtmbG93PElucHV0LCBPdXRwdXQ+IHtcbiAgY29uc3QgW29wdHMsIGRlZmluaXRpb25dID0gYXJncy5sZW5ndGggPT09IDEgPyBbdW5kZWZpbmVkLCBhcmdzWzBdXSA6IGFyZ3M7XG4gIGlmICh3b3JrZmxvd3MoKS5oYXMobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHdvcmtmbG93IHdpdGggbmFtZSAnJHtuYW1lfScgYWxyZWFkeSBleGlzdHNgKTtcbiAgfVxuXG4gIGNvbnN0IHdvcmtmbG93OiBXb3JrZmxvdzxJbnB1dCwgT3V0cHV0PiA9ICgoaW5wdXQ/OiBhbnkpID0+IHtcbiAgICBpZiAoIWlzT3JjaGVzdHJhdG9yV29ya2VyKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJEaXJlY3Qgd29ya2Zsb3cgaW52b2NhdGlvbiBpcyBvbmx5IHZhbGlkIGluIGEgd29ya2Zsb3csIHVzZSB3b3JrZmxvdy5zdGFydEV4ZWN1dGlvbiBpbnN0ZWFkLlwiXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBjcmVhdGVXb3JrZmxvd0NhbGwobmFtZSwgaW5wdXQsIG9wdHMpO1xuICB9KSBhcyBhbnk7XG5cbiAgd29ya2Zsb3cud29ya2Zsb3dOYW1lID0gbmFtZTtcblxuICB3b3JrZmxvdy5zdGFydEV4ZWN1dGlvbiA9IGFzeW5jIGZ1bmN0aW9uIChpbnB1dCkge1xuICAgIGNvbnN0IHdvcmtmbG93Q2xpZW50ID0gZ2V0V29ya2Zsb3dDbGllbnQoKTtcbiAgICBjb25zdCBleGVjdXRpb25JZCA9IGF3YWl0IHdvcmtmbG93Q2xpZW50LnN0YXJ0V29ya2Zsb3coe1xuICAgICAgd29ya2Zsb3dOYW1lOiBuYW1lLFxuICAgICAgZXhlY3V0aW9uTmFtZTogaW5wdXQubmFtZSxcbiAgICAgIGlucHV0OiBpbnB1dC5pbnB1dCxcbiAgICAgIHRpbWVvdXRTZWNvbmRzOiBpbnB1dC50aW1lb3V0U2Vjb25kcyxcbiAgICAgIC4uLm9wdHMsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gbmV3IEV4ZWN1dGlvbkhhbmRsZShleGVjdXRpb25JZCwgd29ya2Zsb3dDbGllbnQpO1xuICB9O1xuXG4gIHdvcmtmbG93LmRlZmluaXRpb24gPSAoXG4gICAgaXNDaGFpbihkZWZpbml0aW9uKVxuICAgICAgPyBkZWZpbml0aW9uXG4gICAgICA6IGZ1bmN0aW9uKiAoaW5wdXQsIGNvbnRleHQpOiBhbnkge1xuICAgICAgICAgIHJldHVybiB5aWVsZCBkZWZpbml0aW9uKGlucHV0LCBjb250ZXh0KTtcbiAgICAgICAgfVxuICApIGFzIFdvcmtmbG93PElucHV0LCBPdXRwdXQ+W1wiZGVmaW5pdGlvblwiXTsgLy8gc2FmZSB0byBjYXN0IGJlY2F1c2Ugd2UgcmVseSBvbiB0cmFuc2Zvcm1lciAoaXQgaXMgYWx3YXlzIHRoZSBnZW5lcmF0b3IgQVBJKVxuICB3b3JrZmxvd3MoKS5zZXQobmFtZSwgd29ya2Zsb3cpO1xuICByZXR1cm4gd29ya2Zsb3c7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZ3Jlc3NXb3JrZmxvd1Jlc3VsdCBleHRlbmRzIFdvcmtmbG93UmVzdWx0IHtcbiAgaGlzdG9yeTogSGlzdG9yeVN0YXRlRXZlbnRbXTtcbn1cblxuLyoqXG4gKiBBZHZhbmNlIGEgd29ya2Zsb3cgdXNpbmcgcHJldmlvdXMgaGlzdG9yeSwgbmV3IGV2ZW50cywgYW5kIGEgcHJvZ3JhbS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb2dyZXNzV29ya2Zsb3coXG4gIHByb2dyYW06IFdvcmtmbG93LFxuICBoaXN0b3J5RXZlbnRzOiBIaXN0b3J5U3RhdGVFdmVudFtdLFxuICB0YXNrRXZlbnRzOiBIaXN0b3J5U3RhdGVFdmVudFtdLFxuICB3b3JrZmxvd0NvbnRleHQ6IFdvcmtmbG93Q29udGV4dCxcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZyxcbiAgYmFzZVRpbWU6IERhdGUgPSBuZXcgRGF0ZSgpXG4pOiBQcm9ncmVzc1dvcmtmbG93UmVzdWx0IHtcbiAgLy8gaGlzdG9yaWNhbCBldmVudHMgYW5kIGluY29taW5nIGV2ZW50cyB3aWxsIGJlIGZlZCBpbnRvIHRoZSB3b3JrZmxvdyB0byByZXN1bWUvcHJvZ3Jlc3Mgc3RhdGVcbiAgY29uc3QgdW5pcXVlVGFza0V2ZW50cyA9IGZpbHRlckV2ZW50czxIaXN0b3J5U3RhdGVFdmVudD4oXG4gICAgaGlzdG9yeUV2ZW50cyxcbiAgICB0YXNrRXZlbnRzXG4gICk7XG5cbiAgY29uc3QgaW5wdXRFdmVudHMgPSBbLi4uaGlzdG9yeUV2ZW50cywgLi4udW5pcXVlVGFza0V2ZW50c107XG5cbiAgLy8gR2VuZXJhdGVzIGV2ZW50cyB0aGF0IGFyZSB0aW1lIHNlbnNpdGl2ZSwgbGlrZSBzbGVlcCBjb21wbGV0ZWQgZXZlbnRzLlxuICBjb25zdCBzeW50aGV0aWNFdmVudHMgPSBnZW5lcmF0ZVN5bnRoZXRpY0V2ZW50cyhpbnB1dEV2ZW50cywgYmFzZVRpbWUpO1xuXG4gIGNvbnN0IGFsbEV2ZW50cyA9IFsuLi5pbnB1dEV2ZW50cywgLi4uc3ludGhldGljRXZlbnRzXTtcblxuICBjb25zdCBzdGFydEV2ZW50ID0gaW5wdXRFdmVudHMuZmluZChpc1dvcmtmbG93U3RhcnRlZCk7XG5cbiAgaWYgKCFzdGFydEV2ZW50KSB7XG4gICAgdGhyb3cgbmV3IERldGVybWluaXNtRXJyb3IoXG4gICAgICBgTm8gJHtXb3JrZmxvd0V2ZW50VHlwZS5Xb3JrZmxvd1N0YXJ0ZWR9IGZvdW5kLmBcbiAgICApO1xuICB9XG5cbiAgY29uc3QgY29udGV4dDogQ29udGV4dCA9IHtcbiAgICB3b3JrZmxvdzogd29ya2Zsb3dDb250ZXh0LFxuICAgIGV4ZWN1dGlvbjoge1xuICAgICAgLi4uc3RhcnRFdmVudC5jb250ZXh0LFxuICAgICAgaWQ6IGV4ZWN1dGlvbklkLFxuICAgICAgc3RhcnRUaW1lOiBzdGFydEV2ZW50LnRpbWVzdGFtcCxcbiAgICB9LFxuICB9O1xuXG4gIC8vIGV4ZWN1dGUgd29ya2Zsb3dcbiAgY29uc3QgaW50ZXJwcmV0RXZlbnRzID0gYWxsRXZlbnRzLmZpbHRlcihpc0hpc3RvcnlFdmVudCk7XG5cbiAgY29uc29sZS5kZWJ1ZyhcImhpc3RvcnkgZXZlbnRzXCIsIEpTT04uc3RyaW5naWZ5KGhpc3RvcnlFdmVudHMpKTtcbiAgY29uc29sZS5kZWJ1ZyhcInRhc2sgZXZlbnRzXCIsIEpTT04uc3RyaW5naWZ5KHRhc2tFdmVudHMpKTtcbiAgY29uc29sZS5kZWJ1ZyhcInN5bnRoZXRpYyBldmVudHNcIiwgSlNPTi5zdHJpbmdpZnkoc3ludGhldGljRXZlbnRzKSk7XG4gIGNvbnNvbGUuZGVidWcoXCJpbnRlcnByZXQgZXZlbnRzXCIsIEpTT04uc3RyaW5naWZ5KGludGVycHJldEV2ZW50cykpO1xuXG4gIHRyeSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmludGVycHJldChcbiAgICAgICAgcHJvZ3JhbS5kZWZpbml0aW9uKHN0YXJ0RXZlbnQuaW5wdXQsIGNvbnRleHQpLFxuICAgICAgICBpbnRlcnByZXRFdmVudHNcbiAgICAgICksXG4gICAgICBoaXN0b3J5OiBhbGxFdmVudHMsXG4gICAgfTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgLy8gdGVtcG9yYXJ5IGZpeCB3aGVuIHRoZSBpbnRlcnByZXRlciBmYWlscywgYnV0IHRoZSBhY3Rpdml0aWVzIGFyZSBub3QgY2xlYXJlZC5cbiAgICBjbGVhckV2ZW50dWFsQ29sbGVjdG9yKCk7XG4gICAgdGhyb3cgZXJyO1xuICB9XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIHN5bnRoZXRpYyBldmVudHMsIGZvciBleGFtcGxlLCB7QGxpbmsgU2xlZXBDb21wbGV0ZWR9IGV2ZW50cyB3aGVuIHRoZSB0aW1lIGhhcyBwYXNzZWQsIGJ1dCBhIHJlYWwgY29tcGxldGVkIGV2ZW50IGhhcyBub3QgY29tZSBpbiB5ZXQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVN5bnRoZXRpY0V2ZW50cyhcbiAgZXZlbnRzOiBIaXN0b3J5U3RhdGVFdmVudFtdLFxuICBiYXNlVGltZTogRGF0ZVxuKTogU2xlZXBDb21wbGV0ZWRbXSB7XG4gIGNvbnN0IHVucmVzb2x2ZWRTbGVlcDogUmVjb3JkPG51bWJlciwgU2xlZXBTY2hlZHVsZWQ+ID0ge307XG5cbiAgY29uc3Qgc2xlZXBFdmVudHMgPSBldmVudHMuZmlsdGVyKFxuICAgIChldmVudCk6IGV2ZW50IGlzIFNsZWVwU2NoZWR1bGVkIHwgU2xlZXBDb21wbGV0ZWQgPT5cbiAgICAgIGlzU2xlZXBTY2hlZHVsZWQoZXZlbnQpIHx8IGlzU2xlZXBDb21wbGV0ZWQoZXZlbnQpXG4gICk7XG5cbiAgZm9yIChjb25zdCBldmVudCBvZiBzbGVlcEV2ZW50cykge1xuICAgIGlmIChpc1NsZWVwU2NoZWR1bGVkKGV2ZW50KSkge1xuICAgICAgdW5yZXNvbHZlZFNsZWVwW2V2ZW50LnNlcV0gPSBldmVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgZGVsZXRlIHVucmVzb2x2ZWRTbGVlcFtldmVudC5zZXFdO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHN5bnRoZXRpY1NsZWVwQ29tcGxldGU6IFNsZWVwQ29tcGxldGVkW10gPSBPYmplY3QudmFsdWVzKFxuICAgIHVucmVzb2x2ZWRTbGVlcFxuICApXG4gICAgLmZpbHRlcihcbiAgICAgIChldmVudCkgPT4gbmV3IERhdGUoZXZlbnQudW50aWxUaW1lKS5nZXRUaW1lKCkgPD0gYmFzZVRpbWUuZ2V0VGltZSgpXG4gICAgKVxuICAgIC5tYXAoXG4gICAgICAoZSkgPT5cbiAgICAgICAgKHtcbiAgICAgICAgICB0eXBlOiBXb3JrZmxvd0V2ZW50VHlwZS5TbGVlcENvbXBsZXRlZCxcbiAgICAgICAgICBzZXE6IGUuc2VxLFxuICAgICAgICAgIHRpbWVzdGFtcDogYmFzZVRpbWUudG9JU09TdHJpbmcoKSxcbiAgICAgICAgfSBzYXRpc2ZpZXMgU2xlZXBDb21wbGV0ZWQpXG4gICAgKTtcblxuICByZXR1cm4gc3ludGhldGljU2xlZXBDb21wbGV0ZTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd29ya2Zsb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxzQkFBc0IsRUFDdEIsZ0JBQWdCLEdBQ2pCLE1BQU0sYUFBYSxDQUFDO0FBR3JCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM5QyxPQUFPLEVBQ0wsWUFBWSxFQUVaLGNBQWMsRUFDZCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUdqQixpQkFBaUIsR0FDbEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsU0FBUyxFQUFrQixNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTlELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUE0RXJDLE1BQU0sVUFBVSxjQUFjLENBQUMsSUFBWTtJQUN6QyxPQUFPLFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBK0JELE1BQU0sVUFBVSxRQUFRLENBQ3RCLElBQVksRUFDWixHQUFHLElBRTZDO0lBRWhELE1BQU0sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDM0UsSUFBSSxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsSUFBSSxrQkFBa0IsQ0FBQyxDQUFDO0tBQ2hFO0lBRUQsTUFBTSxRQUFRLEdBQTRCLENBQUMsQ0FBQyxLQUFXLEVBQUUsRUFBRTtRQUN6RCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRTtZQUMzQixNQUFNLElBQUksS0FBSyxDQUNiLDhGQUE4RixDQUMvRixDQUFDO1NBQ0g7UUFFRCxPQUFPLGtCQUFrQixDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQyxDQUFRLENBQUM7SUFFVixRQUFRLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztJQUU3QixRQUFRLENBQUMsY0FBYyxHQUFHLEtBQUssV0FBVyxLQUFLO1FBQzdDLE1BQU0sYUFBYSxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFDekMsT0FBTyxNQUFNLGFBQWEsQ0FBQyxjQUFjLENBQTBCO1lBQ2pFLFFBQVEsRUFBRSxJQUFJO1lBQ2QsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhO1lBQ2xDLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztZQUNsQixjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWM7WUFDcEMsR0FBRyxJQUFJO1NBQ1IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0lBRUYsUUFBUSxDQUFDLFVBQVUsR0FBRyxDQUNwQixPQUFPLENBQUMsVUFBVSxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxVQUFVO1FBQ1osQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPO1lBQ3ZCLE9BQU8sTUFBTSxVQUFVLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FDbUMsQ0FBQyxDQUFDLCtFQUErRTtJQUMzSCxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2hDLE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUM7QUFNRDs7R0FFRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsT0FBaUIsRUFDakIsYUFBa0MsRUFDbEMsVUFBK0IsRUFDL0IsZUFBZ0MsRUFDaEMsV0FBbUIsRUFDbkIsV0FBaUIsSUFBSSxJQUFJLEVBQUU7SUFFM0IsK0ZBQStGO0lBQy9GLE1BQU0sZ0JBQWdCLEdBQUcsWUFBWSxDQUNuQyxhQUFhLEVBQ2IsVUFBVSxDQUNYLENBQUM7SUFFRixNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQUcsYUFBYSxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQztJQUU1RCx5RUFBeUU7SUFDekUsTUFBTSxlQUFlLEdBQUcsdUJBQXVCLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBRXZFLE1BQU0sU0FBUyxHQUFHLENBQUMsR0FBRyxXQUFXLEVBQUUsR0FBRyxlQUFlLENBQUMsQ0FBQztJQUV2RCxNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFdkQsSUFBSSxDQUFDLFVBQVUsRUFBRTtRQUNmLE1BQU0sSUFBSSxnQkFBZ0IsQ0FDeEIsTUFBTSxpQkFBaUIsQ0FBQyxlQUFlLFNBQVMsQ0FDakQsQ0FBQztLQUNIO0lBRUQsTUFBTSxPQUFPLEdBQVk7UUFDdkIsUUFBUSxFQUFFLGVBQWU7UUFDekIsU0FBUyxFQUFFO1lBQ1QsR0FBRyxVQUFVLENBQUMsT0FBTztZQUNyQixFQUFFLEVBQUUsV0FBVztZQUNmLFNBQVMsRUFBRSxVQUFVLENBQUMsU0FBUztTQUNoQztLQUNGLENBQUM7SUFFRixtQkFBbUI7SUFDbkIsTUFBTSxlQUFlLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUV6RCxPQUFPLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUMvRCxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDekQsT0FBTyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7SUFDbkUsT0FBTyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7SUFFbkUsSUFBSTtRQUNGLE9BQU87WUFDTCxHQUFHLFNBQVMsQ0FDVixPQUFPLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLEVBQzdDLGVBQWUsQ0FDaEI7WUFDRCxPQUFPLEVBQUUsU0FBUztTQUNuQixDQUFDO0tBQ0g7SUFBQyxPQUFPLEdBQUcsRUFBRTtRQUNaLGdGQUFnRjtRQUNoRixzQkFBc0IsRUFBRSxDQUFDO1FBQ3pCLE1BQU0sR0FBRyxDQUFDO0tBQ1g7QUFDSCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsdUJBQXVCLENBQ3JDLE1BQTJCLEVBQzNCLFFBQWM7SUFFZCxNQUFNLGVBQWUsR0FBbUMsRUFBRSxDQUFDO0lBRTNELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQy9CLENBQUMsS0FBSyxFQUE0QyxFQUFFLENBQ2xELGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUNyRCxDQUFDO0lBRUYsS0FBSyxNQUFNLEtBQUssSUFBSSxXQUFXLEVBQUU7UUFDL0IsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMzQixlQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztTQUNwQzthQUFNO1lBQ0wsT0FBTyxlQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ25DO0tBQ0Y7SUFFRCxNQUFNLHNCQUFzQixHQUFxQixNQUFNLENBQUMsTUFBTSxDQUM1RCxlQUFlLENBQ2hCO1NBQ0UsTUFBTSxDQUNMLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUNyRTtTQUNBLEdBQUcsQ0FDRixDQUFDLENBQUMsRUFBRSxFQUFFLENBQ0osQ0FBQztRQUNDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxjQUFjO1FBQ3RDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRztRQUNWLFNBQVMsRUFBRSxRQUFRLENBQUMsV0FBVyxFQUFFO0tBQ1QsQ0FBQyxDQUM5QixDQUFDO0lBRUosT0FBTyxzQkFBc0IsQ0FBQztBQUNoQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgd29ya2Zsb3dzLFxuICBjbGVhckV2ZW50dWFsQ29sbGVjdG9yLFxuICBnZXRTZXJ2aWNlQ2xpZW50LFxufSBmcm9tIFwiLi9nbG9iYWwuanNcIjtcbmltcG9ydCB0eXBlIHsgUHJvZ3JhbSB9IGZyb20gXCIuL2ludGVycHJldC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBDb250ZXh0LCBXb3JrZmxvd0NvbnRleHQgfSBmcm9tIFwiLi9jb250ZXh0LmpzXCI7XG5pbXBvcnQgeyBEZXRlcm1pbmlzbUVycm9yIH0gZnJvbSBcIi4vZXJyb3IuanNcIjtcbmltcG9ydCB7XG4gIGZpbHRlckV2ZW50cyxcbiAgSGlzdG9yeVN0YXRlRXZlbnQsXG4gIGlzSGlzdG9yeUV2ZW50LFxuICBpc1NsZWVwQ29tcGxldGVkLFxuICBpc1NsZWVwU2NoZWR1bGVkLFxuICBpc1dvcmtmbG93U3RhcnRlZCxcbiAgU2xlZXBDb21wbGV0ZWQsXG4gIFNsZWVwU2NoZWR1bGVkLFxuICBXb3JrZmxvd0V2ZW50VHlwZSxcbn0gZnJvbSBcIi4vd29ya2Zsb3ctZXZlbnRzLmpzXCI7XG5pbXBvcnQgeyBpbnRlcnByZXQsIFdvcmtmbG93UmVzdWx0IH0gZnJvbSBcIi4vaW50ZXJwcmV0LmpzXCI7XG5pbXBvcnQgeyBjcmVhdGVXb3JrZmxvd0NhbGwgfSBmcm9tIFwiLi9jYWxscy93b3JrZmxvdy1jYWxsLmpzXCI7XG5pbXBvcnQgeyBBd2FpdGVkRXZlbnR1YWwgfSBmcm9tIFwiLi9ldmVudHVhbC5qc1wiO1xuaW1wb3J0IHsgaXNPcmNoZXN0cmF0b3JXb3JrZXIgfSBmcm9tIFwiLi9ydW50aW1lL2ZsYWdzLmpzXCI7XG5pbXBvcnQgeyBpc0NoYWluIH0gZnJvbSBcIi4vY2hhaW4uanNcIjtcbmltcG9ydCB7IENoaWxkRXhlY3V0aW9uLCBFeGVjdXRpb25IYW5kbGUgfSBmcm9tIFwiLi9leGVjdXRpb24uanNcIjtcbmltcG9ydCB7IFN0YXJ0RXhlY3V0aW9uUmVxdWVzdCB9IGZyb20gXCIuL3NlcnZpY2UtY2xpZW50LmpzXCI7XG5cbmV4cG9ydCB0eXBlIFdvcmtmbG93SGFuZGxlcjxJbnB1dCA9IGFueSwgT3V0cHV0ID0gYW55PiA9IChcbiAgaW5wdXQ6IElucHV0LFxuICBjb250ZXh0OiBDb250ZXh0XG4pID0+IFByb21pc2U8T3V0cHV0PiB8IFByb2dyYW08T3V0cHV0PjtcblxuLyoqXG4gKiBPcHRpb25zIHdoaWNoIGRldGVybWluZSBob3cgYSB3b3JrZmxvdyBvcGVyYXRlcy5cbiAqXG4gKiBDYW4gYmUgcHJvdmlkZWQgYXQgd29ya2Zsb3cgZGVmaW5pdGlvbiB0aW1lIGFuZC9vciBvdmVycmlkZGVuIGJ5IHRoZSBjYWxsZXIgb2Yge0BsaW5rIFdvcmtmbG93Q2xpZW50LnN0YXJ0V29ya2Zsb3d9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFdvcmtmbG93T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBOdW1iZXIgb2Ygc2Vjb25kcyBiZWZvcmUgZXhlY3V0aW9uIHRpbWVzIG91dC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB3b3JrZmxvdyB3aWxsIG5ldmVyIHRpbWVvdXQuXG4gICAqL1xuICB0aW1lb3V0U2Vjb25kcz86IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgV29ya2Zsb3dPdXRwdXQ8VyBleHRlbmRzIFdvcmtmbG93PiA9IFcgZXh0ZW5kcyBXb3JrZmxvdzxcbiAgYW55LFxuICBpbmZlciBPdXRcbj5cbiAgPyBPdXRcbiAgOiBuZXZlcjtcblxuZXhwb3J0IHR5cGUgV29ya2Zsb3dJbnB1dDxXIGV4dGVuZHMgV29ya2Zsb3c+ID0gVyBleHRlbmRzIFdvcmtmbG93PFxuICBpbmZlciBJbixcbiAgYW55XG4+XG4gID8gSW5cbiAgOiB1bmRlZmluZWQ7XG5cbi8qKlxuICogQSB7QGxpbmsgV29ya2Zsb3d9IGlzIGEgbG9uZy1ydW5uaW5nIHByb2Nlc3MgdGhhdCBvcmNoZXN0cmF0ZXMgY2FsbHNcbiAqIHRvIG90aGVyIHNlcnZpY2VzIGluIGEgZHVyYWJsZSBhbmQgb2JzZXJ2YWJsZSB3YXkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV29ya2Zsb3c8aW4gSW5wdXQgPSBhbnksIE91dHB1dCA9IGFueT4ge1xuICAvKipcbiAgICogR2xvYmFsbHkgdW5pcXVlIElEIG9mIHRoaXMge0BsaW5rIFdvcmtmbG93fS5cbiAgICovXG4gIHdvcmtmbG93TmFtZTogc3RyaW5nO1xuXG4gIG9wdGlvbnM/OiBXb3JrZmxvd09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIEludm9rZXMgdGhlIHtAbGluayBXb3JrZmxvd30gZnJvbSB3aXRoaW4gYW5vdGhlciB3b3JrZmxvdy5cbiAgICpcbiAgICogVGhpcyBjYW4gb25seSBiZSBjYWxsZWQgZnJvbSB3aXRoaW4gYW5vdGhlciB3b3JrZmxvdyBiZWNhdXNlIGl0J3Mgbm90IHBvc3NpYmxlXG4gICAqIHRvIHdhaXQgZm9yIGNvbXBsZXRpb24gc3luY2hyb25vdXNseSAtIGl0IHJlbGllcyBvbiB0aGUgZXZlbnQtZHJpdmVuIGVudmlyb25tZW50XG4gICAqIG9mIGEgd29ya2Zsb3cgZXhlY3V0aW9uLlxuICAgKlxuICAgKiBUbyBzdGFydCBhIHdvcmtmbG93IGZyb20gYW5vdGhlciBlbnZpcm9ubWVudCwgdXNlIHtAbGluayBzdGFydH0uXG4gICAqL1xuICAoaW5wdXQ6IElucHV0KTogUHJvbWlzZTxPdXRwdXQ+ICYgQ2hpbGRFeGVjdXRpb247XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyBhIHdvcmtmbG93IGV4ZWN1dGlvblxuICAgKi9cbiAgc3RhcnRFeGVjdXRpb24oXG4gICAgcmVxdWVzdDogT21pdDxTdGFydEV4ZWN1dGlvblJlcXVlc3Q8V29ya2Zsb3c8SW5wdXQsIE91dHB1dD4+LCBcIndvcmtmbG93XCI+XG4gICk6IFByb21pc2U8RXhlY3V0aW9uSGFuZGxlPFdvcmtmbG93PElucHV0LCBPdXRwdXQ+Pj47XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbCAtIHRoaXMgaXMgdGhlIGludGVybmFsIERTTCByZXByZXNlbnRhdGlvbiB0aGF0IHByb2R1Y2VzIGEge0BsaW5rIFByb2dyYW19IGluc3RlYWQgb2YgYSBQcm9taXNlLlxuICAgKi9cbiAgZGVmaW5pdGlvbjogKFxuICAgIGlucHV0OiBJbnB1dCxcbiAgICBjb250ZXh0OiBDb250ZXh0XG4gICkgPT4gUHJvZ3JhbTxBd2FpdGVkRXZlbnR1YWw8T3V0cHV0Pj47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb29rdXBXb3JrZmxvdyhuYW1lOiBzdHJpbmcpOiBXb3JrZmxvdyB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiB3b3JrZmxvd3MoKS5nZXQobmFtZSk7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhbmQgcmVnaXN0ZXJzIGEgbG9uZy1ydW5uaW5nIHdvcmtmbG93LlxuICpcbiAqIEV4YW1wbGU6XG4gKiBgYGB0c1xuICogaW1wb3J0IHsgYWN0aXZpdHksIHdvcmtmbG93IH0gZnJvbSBcIkBldmVudHVhbC9jb3JlXCI7XG4gKlxuICogZXhwb3J0IGRlZmF1bHQgd29ya2Zsb3coXCJteS13b3JrZmxvd1wiLCBhc3luYyAoeyBuYW1lIH06IHsgbmFtZTogc3RyaW5nIH0pID0+IHtcbiAqICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaGVsbG8obmFtZSk7XG4gKiAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gKiAgIHJldHVybiBgeW91IHNhaWQgJHtyZXN1bHR9YDtcbiAqIH0pO1xuICpcbiAqIGNvbnN0IGhlbGxvID0gYWN0aXZpdHkoXCJoZWxsb1wiLCBhc3luYyAobmFtZTogc3RyaW5nKSA9PiB7XG4gKiAgIHJldHVybiBgaGVsbG8gJHtuYW1lfWA7XG4gKiB9KTtcbiAqIGBgYFxuICogQHBhcmFtIG5hbWUgYSBnbG9iYWxseSB1bmlxdWUgSUQgZm9yIHRoaXMgd29ya2Zsb3cuXG4gKiBAcGFyYW0gZGVmaW5pdGlvbiB0aGUgd29ya2Zsb3cgZGVmaW5pdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdvcmtmbG93PElucHV0ID0gYW55LCBPdXRwdXQgPSBhbnk+KFxuICBuYW1lOiBzdHJpbmcsXG4gIGRlZmluaXRpb246IFdvcmtmbG93SGFuZGxlcjxJbnB1dCwgT3V0cHV0PlxuKTogV29ya2Zsb3c8SW5wdXQsIE91dHB1dD47XG5leHBvcnQgZnVuY3Rpb24gd29ya2Zsb3c8SW5wdXQgPSBhbnksIE91dHB1dCA9IGFueT4oXG4gIG5hbWU6IHN0cmluZyxcbiAgb3B0czogV29ya2Zsb3dPcHRpb25zLFxuICBkZWZpbml0aW9uOiBXb3JrZmxvd0hhbmRsZXI8SW5wdXQsIE91dHB1dD5cbik6IFdvcmtmbG93PElucHV0LCBPdXRwdXQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHdvcmtmbG93PElucHV0ID0gYW55LCBPdXRwdXQgPSBhbnk+KFxuICBuYW1lOiBzdHJpbmcsXG4gIC4uLmFyZ3M6XG4gICAgfCBbb3B0czogV29ya2Zsb3dPcHRpb25zLCBkZWZpbml0aW9uOiBXb3JrZmxvd0hhbmRsZXI8SW5wdXQsIE91dHB1dD5dXG4gICAgfCBbZGVmaW5pdGlvbjogV29ya2Zsb3dIYW5kbGVyPElucHV0LCBPdXRwdXQ+XVxuKTogV29ya2Zsb3c8SW5wdXQsIE91dHB1dD4ge1xuICBjb25zdCBbb3B0cywgZGVmaW5pdGlvbl0gPSBhcmdzLmxlbmd0aCA9PT0gMSA/IFt1bmRlZmluZWQsIGFyZ3NbMF1dIDogYXJncztcbiAgaWYgKHdvcmtmbG93cygpLmhhcyhuYW1lKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgd29ya2Zsb3cgd2l0aCBuYW1lICcke25hbWV9JyBhbHJlYWR5IGV4aXN0c2ApO1xuICB9XG5cbiAgY29uc3Qgd29ya2Zsb3c6IFdvcmtmbG93PElucHV0LCBPdXRwdXQ+ID0gKChpbnB1dD86IGFueSkgPT4ge1xuICAgIGlmICghaXNPcmNoZXN0cmF0b3JXb3JrZXIoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkRpcmVjdCB3b3JrZmxvdyBpbnZvY2F0aW9uIGlzIG9ubHkgdmFsaWQgaW4gYSB3b3JrZmxvdywgdXNlIHdvcmtmbG93LnN0YXJ0RXhlY3V0aW9uIGluc3RlYWQuXCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNyZWF0ZVdvcmtmbG93Q2FsbChuYW1lLCBpbnB1dCwgb3B0cyk7XG4gIH0pIGFzIGFueTtcblxuICB3b3JrZmxvdy53b3JrZmxvd05hbWUgPSBuYW1lO1xuXG4gIHdvcmtmbG93LnN0YXJ0RXhlY3V0aW9uID0gYXN5bmMgZnVuY3Rpb24gKGlucHV0KSB7XG4gICAgY29uc3Qgc2VydmljZUNsaWVudCA9IGdldFNlcnZpY2VDbGllbnQoKTtcbiAgICByZXR1cm4gYXdhaXQgc2VydmljZUNsaWVudC5zdGFydEV4ZWN1dGlvbjxXb3JrZmxvdzxJbnB1dCwgT3V0cHV0Pj4oe1xuICAgICAgd29ya2Zsb3c6IG5hbWUsXG4gICAgICBleGVjdXRpb25OYW1lOiBpbnB1dC5leGVjdXRpb25OYW1lLFxuICAgICAgaW5wdXQ6IGlucHV0LmlucHV0LFxuICAgICAgdGltZW91dFNlY29uZHM6IGlucHV0LnRpbWVvdXRTZWNvbmRzLFxuICAgICAgLi4ub3B0cyxcbiAgICB9KTtcbiAgfTtcblxuICB3b3JrZmxvdy5kZWZpbml0aW9uID0gKFxuICAgIGlzQ2hhaW4oZGVmaW5pdGlvbilcbiAgICAgID8gZGVmaW5pdGlvblxuICAgICAgOiBmdW5jdGlvbiogKGlucHV0LCBjb250ZXh0KTogYW55IHtcbiAgICAgICAgICByZXR1cm4geWllbGQgZGVmaW5pdGlvbihpbnB1dCwgY29udGV4dCk7XG4gICAgICAgIH1cbiAgKSBhcyBXb3JrZmxvdzxJbnB1dCwgT3V0cHV0PltcImRlZmluaXRpb25cIl07IC8vIHNhZmUgdG8gY2FzdCBiZWNhdXNlIHdlIHJlbHkgb24gdHJhbnNmb3JtZXIgKGl0IGlzIGFsd2F5cyB0aGUgZ2VuZXJhdG9yIEFQSSlcbiAgd29ya2Zsb3dzKCkuc2V0KG5hbWUsIHdvcmtmbG93KTtcbiAgcmV0dXJuIHdvcmtmbG93O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2dyZXNzV29ya2Zsb3dSZXN1bHQgZXh0ZW5kcyBXb3JrZmxvd1Jlc3VsdCB7XG4gIGhpc3Rvcnk6IEhpc3RvcnlTdGF0ZUV2ZW50W107XG59XG5cbi8qKlxuICogQWR2YW5jZSBhIHdvcmtmbG93IHVzaW5nIHByZXZpb3VzIGhpc3RvcnksIG5ldyBldmVudHMsIGFuZCBhIHByb2dyYW0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcm9ncmVzc1dvcmtmbG93KFxuICBwcm9ncmFtOiBXb3JrZmxvdyxcbiAgaGlzdG9yeUV2ZW50czogSGlzdG9yeVN0YXRlRXZlbnRbXSxcbiAgdGFza0V2ZW50czogSGlzdG9yeVN0YXRlRXZlbnRbXSxcbiAgd29ya2Zsb3dDb250ZXh0OiBXb3JrZmxvd0NvbnRleHQsXG4gIGV4ZWN1dGlvbklkOiBzdHJpbmcsXG4gIGJhc2VUaW1lOiBEYXRlID0gbmV3IERhdGUoKVxuKTogUHJvZ3Jlc3NXb3JrZmxvd1Jlc3VsdCB7XG4gIC8vIGhpc3RvcmljYWwgZXZlbnRzIGFuZCBpbmNvbWluZyBldmVudHMgd2lsbCBiZSBmZWQgaW50byB0aGUgd29ya2Zsb3cgdG8gcmVzdW1lL3Byb2dyZXNzIHN0YXRlXG4gIGNvbnN0IHVuaXF1ZVRhc2tFdmVudHMgPSBmaWx0ZXJFdmVudHM8SGlzdG9yeVN0YXRlRXZlbnQ+KFxuICAgIGhpc3RvcnlFdmVudHMsXG4gICAgdGFza0V2ZW50c1xuICApO1xuXG4gIGNvbnN0IGlucHV0RXZlbnRzID0gWy4uLmhpc3RvcnlFdmVudHMsIC4uLnVuaXF1ZVRhc2tFdmVudHNdO1xuXG4gIC8vIEdlbmVyYXRlcyBldmVudHMgdGhhdCBhcmUgdGltZSBzZW5zaXRpdmUsIGxpa2Ugc2xlZXAgY29tcGxldGVkIGV2ZW50cy5cbiAgY29uc3Qgc3ludGhldGljRXZlbnRzID0gZ2VuZXJhdGVTeW50aGV0aWNFdmVudHMoaW5wdXRFdmVudHMsIGJhc2VUaW1lKTtcblxuICBjb25zdCBhbGxFdmVudHMgPSBbLi4uaW5wdXRFdmVudHMsIC4uLnN5bnRoZXRpY0V2ZW50c107XG5cbiAgY29uc3Qgc3RhcnRFdmVudCA9IGlucHV0RXZlbnRzLmZpbmQoaXNXb3JrZmxvd1N0YXJ0ZWQpO1xuXG4gIGlmICghc3RhcnRFdmVudCkge1xuICAgIHRocm93IG5ldyBEZXRlcm1pbmlzbUVycm9yKFxuICAgICAgYE5vICR7V29ya2Zsb3dFdmVudFR5cGUuV29ya2Zsb3dTdGFydGVkfSBmb3VuZC5gXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0IGNvbnRleHQ6IENvbnRleHQgPSB7XG4gICAgd29ya2Zsb3c6IHdvcmtmbG93Q29udGV4dCxcbiAgICBleGVjdXRpb246IHtcbiAgICAgIC4uLnN0YXJ0RXZlbnQuY29udGV4dCxcbiAgICAgIGlkOiBleGVjdXRpb25JZCxcbiAgICAgIHN0YXJ0VGltZTogc3RhcnRFdmVudC50aW1lc3RhbXAsXG4gICAgfSxcbiAgfTtcblxuICAvLyBleGVjdXRlIHdvcmtmbG93XG4gIGNvbnN0IGludGVycHJldEV2ZW50cyA9IGFsbEV2ZW50cy5maWx0ZXIoaXNIaXN0b3J5RXZlbnQpO1xuXG4gIGNvbnNvbGUuZGVidWcoXCJoaXN0b3J5IGV2ZW50c1wiLCBKU09OLnN0cmluZ2lmeShoaXN0b3J5RXZlbnRzKSk7XG4gIGNvbnNvbGUuZGVidWcoXCJ0YXNrIGV2ZW50c1wiLCBKU09OLnN0cmluZ2lmeSh0YXNrRXZlbnRzKSk7XG4gIGNvbnNvbGUuZGVidWcoXCJzeW50aGV0aWMgZXZlbnRzXCIsIEpTT04uc3RyaW5naWZ5KHN5bnRoZXRpY0V2ZW50cykpO1xuICBjb25zb2xlLmRlYnVnKFwiaW50ZXJwcmV0IGV2ZW50c1wiLCBKU09OLnN0cmluZ2lmeShpbnRlcnByZXRFdmVudHMpKTtcblxuICB0cnkge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5pbnRlcnByZXQoXG4gICAgICAgIHByb2dyYW0uZGVmaW5pdGlvbihzdGFydEV2ZW50LmlucHV0LCBjb250ZXh0KSxcbiAgICAgICAgaW50ZXJwcmV0RXZlbnRzXG4gICAgICApLFxuICAgICAgaGlzdG9yeTogYWxsRXZlbnRzLFxuICAgIH07XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIC8vIHRlbXBvcmFyeSBmaXggd2hlbiB0aGUgaW50ZXJwcmV0ZXIgZmFpbHMsIGJ1dCB0aGUgYWN0aXZpdGllcyBhcmUgbm90IGNsZWFyZWQuXG4gICAgY2xlYXJFdmVudHVhbENvbGxlY3RvcigpO1xuICAgIHRocm93IGVycjtcbiAgfVxufVxuXG4vKipcbiAqIEdlbmVyYXRlcyBzeW50aGV0aWMgZXZlbnRzLCBmb3IgZXhhbXBsZSwge0BsaW5rIFNsZWVwQ29tcGxldGVkfSBldmVudHMgd2hlbiB0aGUgdGltZSBoYXMgcGFzc2VkLCBidXQgYSByZWFsIGNvbXBsZXRlZCBldmVudCBoYXMgbm90IGNvbWUgaW4geWV0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVTeW50aGV0aWNFdmVudHMoXG4gIGV2ZW50czogSGlzdG9yeVN0YXRlRXZlbnRbXSxcbiAgYmFzZVRpbWU6IERhdGVcbik6IFNsZWVwQ29tcGxldGVkW10ge1xuICBjb25zdCB1bnJlc29sdmVkU2xlZXA6IFJlY29yZDxudW1iZXIsIFNsZWVwU2NoZWR1bGVkPiA9IHt9O1xuXG4gIGNvbnN0IHNsZWVwRXZlbnRzID0gZXZlbnRzLmZpbHRlcihcbiAgICAoZXZlbnQpOiBldmVudCBpcyBTbGVlcFNjaGVkdWxlZCB8IFNsZWVwQ29tcGxldGVkID0+XG4gICAgICBpc1NsZWVwU2NoZWR1bGVkKGV2ZW50KSB8fCBpc1NsZWVwQ29tcGxldGVkKGV2ZW50KVxuICApO1xuXG4gIGZvciAoY29uc3QgZXZlbnQgb2Ygc2xlZXBFdmVudHMpIHtcbiAgICBpZiAoaXNTbGVlcFNjaGVkdWxlZChldmVudCkpIHtcbiAgICAgIHVucmVzb2x2ZWRTbGVlcFtldmVudC5zZXFdID0gZXZlbnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRlbGV0ZSB1bnJlc29sdmVkU2xlZXBbZXZlbnQuc2VxXTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBzeW50aGV0aWNTbGVlcENvbXBsZXRlOiBTbGVlcENvbXBsZXRlZFtdID0gT2JqZWN0LnZhbHVlcyhcbiAgICB1bnJlc29sdmVkU2xlZXBcbiAgKVxuICAgIC5maWx0ZXIoXG4gICAgICAoZXZlbnQpID0+IG5ldyBEYXRlKGV2ZW50LnVudGlsVGltZSkuZ2V0VGltZSgpIDw9IGJhc2VUaW1lLmdldFRpbWUoKVxuICAgIClcbiAgICAubWFwKFxuICAgICAgKGUpID0+XG4gICAgICAgICh7XG4gICAgICAgICAgdHlwZTogV29ya2Zsb3dFdmVudFR5cGUuU2xlZXBDb21wbGV0ZWQsXG4gICAgICAgICAgc2VxOiBlLnNlcSxcbiAgICAgICAgICB0aW1lc3RhbXA6IGJhc2VUaW1lLnRvSVNPU3RyaW5nKCksXG4gICAgICAgIH0gc2F0aXNmaWVzIFNsZWVwQ29tcGxldGVkKVxuICAgICk7XG5cbiAgcmV0dXJuIHN5bnRoZXRpY1NsZWVwQ29tcGxldGU7XG59XG4iXX0=
{
"name": "@eventual/core",
"version": "0.4.3",
"version": "0.5.0",
"exports": {

@@ -5,0 +5,0 @@ ".": {

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc