@jagreehal/workflow 1.6.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +499 -19
- package/dist/core.cjs +1 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.cts +158 -19
- package/dist/core.d.ts +158 -19
- package/dist/core.js +1 -1
- package/dist/core.js.map +1 -1
- package/dist/index.cjs +5 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +282 -17
- package/dist/index.d.ts +282 -17
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/visualize.cjs +1188 -6
- package/dist/visualize.cjs.map +1 -1
- package/dist/visualize.d.cts +467 -1
- package/dist/visualize.d.ts +467 -1
- package/dist/visualize.js +1188 -6
- package/dist/visualize.js.map +1 -1
- package/dist/workflow.cjs +1 -1
- package/dist/workflow.cjs.map +1 -1
- package/dist/workflow.d.cts +97 -15
- package/dist/workflow.d.ts +97 -15
- package/dist/workflow.js +1 -1
- package/dist/workflow.js.map +1 -1
- package/docs/advanced.md +425 -7
- package/docs/api.md +37 -6
- package/package.json +1 -1
package/dist/workflow.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var z=Object.defineProperty;var ce=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var Ee=Object.prototype.hasOwnProperty;var ye=(e,t)=>{for(var c in t)z(e,c,{get:t[c],enumerable:!0})},me=(e,t,c,T)=>{if(t&&typeof t=="object"||typeof t=="function")for(let x of le(t))!Ee.call(e,x)&&x!==c&&z(e,x,{get:()=>t[x],enumerable:!(T=ce(t,x))||T.enumerable});return e};var we=e=>me(z({},"__esModule",{value:!0}),e);var Me={};ye(Me,{clearStep:()=>_e,createApprovalStep:()=>Pe,createHITLCollector:()=>Oe,createStepCollector:()=>Ce,createWorkflow:()=>ge,getPendingApprovals:()=>be,hasPendingApproval:()=>De,injectApproval:()=>he,isApprovalRejected:()=>Ae,isPendingApproval:()=>X,isStepComplete:()=>te,pendingApproval:()=>ve});module.exports=we(Me);var O=e=>({ok:!0,value:e}),_=(e,t)=>({ok:!1,error:e,...t?.cause!==void 0?{cause:t.cause}:{}});var Te=e=>typeof e=="object"&&e!==null&&e.type==="UNEXPECTED_ERROR",j=Symbol.for("step_timeout_marker");function se(e){return typeof e!="object"||e===null?!1:e.type==="STEP_TIMEOUT"?!0:j in e}function de(e){if(!(typeof e!="object"||e===null)){if(e.type==="STEP_TIMEOUT"){let t=e;return{timeoutMs:t.timeoutMs,stepName:t.stepName,stepKey:t.stepKey,attempt:t.attempt}}if(j in e)return e[j]}}var ue=Symbol("early-exit");function V(e,t){return{[ue]:!0,error:e,meta:t}}function L(e){return typeof e=="object"&&e!==null&&e[ue]===!0}var ae=Symbol("mapper-exception");function fe(e){return{[ae]:!0,thrown:e}}function ke(e){return typeof e=="object"&&e!==null&&e[ae]===!0}function Re(e){return typeof e=="string"?{name:e}:e??{}}function Q(e,t){let{backoff:c,initialDelay:T,maxDelay:x,jitter:b}=t,A;switch(c){case"fixed":A=T;break;case"linear":A=T*e;break;case"exponential":A=T*Math.pow(2,e-1);break}if(A=Math.min(A,x),b){let l=A*.25*Math.random();A=A+l}return Math.floor(A)}function Z(e){return new Promise(t=>setTimeout(t,e))}var oe=Symbol("timeout");async function Se(e,t,c){let T=new AbortController,x=t.error??{type:"STEP_TIMEOUT",stepName:c.name,stepKey:c.key,timeoutMs:t.ms,attempt:c.attempt},b,A=new Promise((S,d)=>{b=setTimeout(()=>{T.abort(),d({[oe]:!0,error:x})},t.ms)}),l;t.signal?l=Promise.resolve(e(T.signal)):l=Promise.resolve(e());try{return await Promise.race([l,A])}catch(S){if(typeof S=="object"&&S!==null&&S[oe]===!0){let d=S.error;if(typeof d=="object"&&d!==null&&d.type!=="STEP_TIMEOUT"){let v={timeoutMs:t.ms,stepName:c.name,stepKey:c.key,attempt:c.attempt};j in d?d[j]=v:Object.defineProperty(d,j,{value:v,enumerable:!1,writable:!0,configurable:!1})}throw d}throw S}finally{clearTimeout(b)}}var K={backoff:"exponential",initialDelay:100,maxDelay:3e4,jitter:!0,retryOn:()=>!0,onRetry:()=>{}};async function W(e,t){let{onError:c,onEvent:T,catchUnexpected:x,workflowId:b,context:A}=t&&typeof t=="object"?t:{},l=b??crypto.randomUUID(),S=!c&&!x,d=[],v=0,F=u=>u??`step_${++v}`,m=u=>{if(u.type==="step_success"){let P=u.stepId;for(let y=d.length-1;y>=0;y--){let E=d[y];if(E.type==="race"&&!E.winnerId){E.winnerId=P;break}}}T?.(u,A)},D=V,C=u=>L(u),N=(u,P)=>S?P?.origin==="result"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:u,...P.resultCause!==void 0?{cause:P.resultCause}:{}}}:P?.origin==="throw"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"throw",error:u,thrown:P.thrown}}:{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:u}}:u,G=u=>u.origin==="result"?u.resultCause:u.thrown,J=u=>({type:"UNEXPECTED_ERROR",cause:u.meta.origin==="result"?{type:"STEP_FAILURE",origin:"result",error:u.error,...u.meta.resultCause!==void 0?{cause:u.meta.resultCause}:{}}:{type:"STEP_FAILURE",origin:"throw",error:u.error,thrown:u.meta.thrown}});try{let u=(E,a)=>(async()=>{let s=Re(a),{name:o,key:n,retry:p,timeout:r}=s,i=F(n),f=T,k=f?performance.now():0;if(!(typeof E=="function")){if(p&&p.attempts>1)throw new Error("step: retry options require a function operation. Direct Promise/Result values cannot be re-executed on retry. Wrap your operation in a function: step(() => yourOperation, { retry: {...} })");if(r)throw new Error("step: timeout options require a function operation. Direct Promise/Result values cannot be wrapped with timeout after they've started. Wrap your operation in a function: step(() => yourOperation, { timeout: {...} })")}let g={attempts:Math.max(1,p?.attempts??1),backoff:p?.backoff??K.backoff,initialDelay:p?.initialDelay??K.initialDelay,maxDelay:p?.maxDelay??K.maxDelay,jitter:p?.jitter??K.jitter,retryOn:p?.retryOn??K.retryOn,onRetry:p?.onRetry??K.onRetry};T&&m({type:"step_start",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now()});let ne;for(let R=1;R<=g.attempts;R++){let ie=f?performance.now():0;try{let w;if(typeof E=="function"?r?w=await Se(E,r,{name:o,key:n,attempt:R}):w=await E():w=await E,w.ok){let M=performance.now()-k;return m({type:"step_success",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),durationMs:M}),n&&m({type:"step_complete",workflowId:l,stepKey:n,name:o,ts:Date.now(),durationMs:M,result:w}),w.value}if(ne=w,R<g.attempts&&g.retryOn(w.error,R)){let M=Q(R,g);m({type:"step_retry",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),attempt:R+1,maxAttempts:g.attempts,delayMs:M,error:w.error}),g.onRetry(w.error,R,M),await Z(M);continue}g.attempts>1&&m({type:"step_retries_exhausted",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),durationMs:performance.now()-k,attempts:R,lastError:w.error});break}catch(w){let M=performance.now()-ie;if(C(w))throw m({type:"step_aborted",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),durationMs:M}),w;if(se(w)){let h=de(w),$=r?.ms??h?.timeoutMs??0;if(m({type:"step_timeout",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),timeoutMs:$,attempt:R}),R<g.attempts&&g.retryOn(w,R)){let H=Q(R,g);m({type:"step_retry",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),attempt:R+1,maxAttempts:g.attempts,delayMs:H,error:w}),g.onRetry(w,R,H),await Z(H);continue}g.attempts>1&&m({type:"step_retries_exhausted",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),durationMs:performance.now()-k,attempts:R,lastError:w})}if(R<g.attempts&&g.retryOn(w,R)){let h=Q(R,g);m({type:"step_retry",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),attempt:R+1,maxAttempts:g.attempts,delayMs:h,error:w}),g.onRetry(w,R,h),await Z(h);continue}g.attempts>1&&!se(w)&&m({type:"step_retries_exhausted",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),durationMs:performance.now()-k,attempts:R,lastError:w});let B=performance.now()-k;if(x){let h;try{h=x(w)}catch($){throw fe($)}throw m({type:"step_error",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),durationMs:B,error:h}),n&&m({type:"step_complete",workflowId:l,stepKey:n,name:o,ts:Date.now(),durationMs:B,result:_(h,{cause:w}),meta:{origin:"throw",thrown:w}}),c?.(h,o),D(h,{origin:"throw",thrown:w})}else{let h={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:w}};throw m({type:"step_error",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),durationMs:B,error:h}),n&&m({type:"step_complete",workflowId:l,stepKey:n,name:o,ts:Date.now(),durationMs:B,result:_(h,{cause:w}),meta:{origin:"throw",thrown:w}}),w}}}let U=ne,re=performance.now()-k,pe=N(U.error,{origin:"result",resultCause:U.cause});throw m({type:"step_error",workflowId:l,stepId:i,stepKey:n,name:o,ts:Date.now(),durationMs:re,error:pe}),n&&m({type:"step_complete",workflowId:l,stepKey:n,name:o,ts:Date.now(),durationMs:re,result:U,meta:{origin:"result",resultCause:U.cause}}),c?.(U.error,o),D(U.error,{origin:"result",resultCause:U.cause})})();u.try=(E,a)=>{let s=a.name,o=a.key,n=F(o),p="error"in a?()=>a.error:a.onError,r=T;return(async()=>{let i=r?performance.now():0;T&&m({type:"step_start",workflowId:l,stepId:n,stepKey:o,name:s,ts:Date.now()});try{let f=await E(),k=performance.now()-i;return m({type:"step_success",workflowId:l,stepId:n,stepKey:o,name:s,ts:Date.now(),durationMs:k}),o&&m({type:"step_complete",workflowId:l,stepKey:o,name:s,ts:Date.now(),durationMs:k,result:O(f)}),f}catch(f){let k=p(f),I=performance.now()-i,Y=N(k,{origin:"throw",thrown:f});throw m({type:"step_error",workflowId:l,stepId:n,stepKey:o,name:s,ts:Date.now(),durationMs:I,error:Y}),o&&m({type:"step_complete",workflowId:l,stepKey:o,name:s,ts:Date.now(),durationMs:I,result:_(k,{cause:f}),meta:{origin:"throw",thrown:f}}),c?.(k,s),D(k,{origin:"throw",thrown:f})}})()},u.fromResult=(E,a)=>{let s=a.name,o=a.key,n=F(o),p="error"in a?()=>a.error:a.onError,r=T;return(async()=>{let i=r?performance.now():0;T&&m({type:"step_start",workflowId:l,stepId:n,stepKey:o,name:s,ts:Date.now()});let f=await E();if(f.ok){let k=performance.now()-i;return m({type:"step_success",workflowId:l,stepId:n,stepKey:o,name:s,ts:Date.now(),durationMs:k}),o&&m({type:"step_complete",workflowId:l,stepKey:o,name:s,ts:Date.now(),durationMs:k,result:O(f.value)}),f.value}else{let k=p(f.error),I=performance.now()-i,Y=N(k,{origin:"result",resultCause:f.error});throw m({type:"step_error",workflowId:l,stepId:n,stepKey:o,name:s,ts:Date.now(),durationMs:I,error:Y}),o&&m({type:"step_complete",workflowId:l,stepKey:o,name:s,ts:Date.now(),durationMs:I,result:_(k,{cause:f.error}),meta:{origin:"result",resultCause:f.error}}),c?.(k,s),D(k,{origin:"result",resultCause:f.error})}})()},u.retry=(E,a)=>u(E,{name:a.name,key:a.key,retry:{attempts:a.attempts,backoff:a.backoff,initialDelay:a.initialDelay,maxDelay:a.maxDelay,jitter:a.jitter,retryOn:a.retryOn,onRetry:a.onRetry},timeout:a.timeout}),u.withTimeout=(E,a)=>u(E,{name:a.name,key:a.key,timeout:a}),u.parallel=(E,a)=>{let s=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let o=performance.now(),n=!1;d.push({scopeId:s,type:"parallel"});let p=()=>{if(n)return;n=!0;let r=d.findIndex(i=>i.scopeId===s);r!==-1&&d.splice(r,1),m({type:"scope_end",workflowId:l,scopeId:s,ts:Date.now(),durationMs:performance.now()-o})};m({type:"scope_start",workflowId:l,scopeId:s,scopeType:"parallel",name:E,ts:Date.now()});try{let r=await a();if(p(),!r.ok)throw c?.(r.error,E),D(r.error,{origin:"result",resultCause:r.cause});return r.value}catch(r){throw p(),r}})()},u.race=(E,a)=>{let s=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let o=performance.now(),n=!1,p={scopeId:s,type:"race",winnerId:void 0};d.push(p);let r=()=>{if(n)return;n=!0;let i=d.findIndex(f=>f.scopeId===s);i!==-1&&d.splice(i,1),m({type:"scope_end",workflowId:l,scopeId:s,ts:Date.now(),durationMs:performance.now()-o,winnerId:p.winnerId})};m({type:"scope_start",workflowId:l,scopeId:s,scopeType:"race",name:E,ts:Date.now()});try{let i=await a();if(r(),!i.ok)throw c?.(i.error,E),D(i.error,{origin:"result",resultCause:i.cause});return i.value}catch(i){throw r(),i}})()},u.allSettled=(E,a)=>{let s=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let o=performance.now(),n=!1;d.push({scopeId:s,type:"allSettled"});let p=()=>{if(n)return;n=!0;let r=d.findIndex(i=>i.scopeId===s);r!==-1&&d.splice(r,1),m({type:"scope_end",workflowId:l,scopeId:s,ts:Date.now(),durationMs:performance.now()-o})};m({type:"scope_start",workflowId:l,scopeId:s,scopeType:"allSettled",name:E,ts:Date.now()});try{let r=await a();if(p(),!r.ok)throw c?.(r.error,E),D(r.error,{origin:"result",resultCause:r.cause});return r.value}catch(r){throw p(),r}})()};let y=await e(u);return O(y)}catch(u){if(ke(u))throw u.thrown;if(C(u)){let y=G(u.meta);if(x||c)return _(u.error,{cause:y});if(Te(u.error))return _(u.error,{cause:y});let E=J(u);return _(E,{cause:y})}if(x){let y=x(u);return c?.(y,"unexpected"),_(y,{cause:u})}let P={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:u}};return c?.(P,"unexpected"),_(P,{cause:u})}}W.strict=(e,t)=>W(e,t);function Ce(){let e=new Map;return{handleEvent:t=>{te(t)&&e.set(t.stepKey,{result:t.result,meta:t.meta})},getState:()=>({steps:new Map(e)}),clear:()=>e.clear()}}function xe(e){return typeof e=="object"&&e!==null&&e.__cachedMeta===!0}function q(e,t,c){return _(e,{cause:{__cachedMeta:!0,originalCause:c,meta:t}})}function ee(e){return xe(e)?e.meta:{origin:"result",resultCause:e}}function ge(e,t){async function c(T,x){let b=typeof x=="function",A=b?T:void 0,l=b?x:T,S=crypto.randomUUID(),d=t?.createContext?.(),v=y=>{t?.onEvent?.(y,d)},F=Date.now(),m=performance.now();v({type:"workflow_start",workflowId:S,ts:F});let D=t?.resumeState,C=t?.cache;if(D&&!C&&(C=new Map),D&&C){let y=typeof D=="function"?await D():D;for(let[E,a]of y.steps){let{result:s,meta:o}=a;if(s.ok)C.set(E,s);else{let n=o??{origin:"result",resultCause:s.cause};C.set(E,q(s.error,n,s.cause))}}}let N=y=>typeof y=="string"?{name:y}:y??{},G=y=>{if(!C)return y;let E=async(a,s)=>{let{name:o,key:n}=N(s);if(n&&C.has(n)){v({type:"step_cache_hit",workflowId:S,stepKey:n,name:o,ts:Date.now()});let r=C.get(n);if(r.ok)return r.value;let i=ee(r.cause);throw V(r.error,i)}n&&v({type:"step_cache_miss",workflowId:S,stepKey:n,name:o,ts:Date.now()});let p=typeof a=="function"?a:()=>a;try{let r=await y(p,s);return n&&C.set(n,O(r)),r}catch(r){if(n&&L(r)){let i=r,f=i.meta.origin==="result"?i.meta.resultCause:i.meta.thrown;C.set(n,q(i.error,i.meta,f))}throw r}};return E.try=async(a,s)=>{let{name:o,key:n}=s;if(n&&C.has(n)){v({type:"step_cache_hit",workflowId:S,stepKey:n,name:o,ts:Date.now()});let p=C.get(n);if(p.ok)return p.value;let r=ee(p.cause);throw V(p.error,r)}n&&v({type:"step_cache_miss",workflowId:S,stepKey:n,name:o,ts:Date.now()});try{let p=await y.try(a,s);return n&&C.set(n,O(p)),p}catch(p){if(n&&L(p)){let r=p,i=r.meta.origin==="result"?r.meta.resultCause:r.meta.thrown;C.set(n,q(r.error,r.meta,i))}throw p}},E.fromResult=async(a,s)=>{let{name:o,key:n}=s;if(n&&C.has(n)){v({type:"step_cache_hit",workflowId:S,stepKey:n,name:o,ts:Date.now()});let p=C.get(n);if(p.ok)return p.value;let r=ee(p.cause);throw V(p.error,r)}n&&v({type:"step_cache_miss",workflowId:S,stepKey:n,name:o,ts:Date.now()});try{let p=await y.fromResult(a,s);return n&&C.set(n,O(p)),p}catch(p){if(n&&L(p)){let r=p,i=r.meta.origin==="result"?r.meta.resultCause:r.meta.thrown;C.set(n,q(r.error,r.meta,i))}throw p}},E.parallel=y.parallel,E.race=y.race,E.allSettled=y.allSettled,E.retry=(a,s)=>E(a,{name:s.name,key:s.key,retry:{attempts:s.attempts,backoff:s.backoff,initialDelay:s.initialDelay,maxDelay:s.maxDelay,jitter:s.jitter,retryOn:s.retryOn,onRetry:s.onRetry},timeout:s.timeout}),E.withTimeout=(a,s)=>E(a,{name:s.name,key:s.key,timeout:s}),E},J=b?y=>l(G(y),e,A):y=>l(G(y),e),u;if(t?.strict===!0){let y=t;u=await W.strict(J,{onError:y.onError,onEvent:y.onEvent,catchUnexpected:y.catchUnexpected,workflowId:S,context:d})}else{let y=t;u=await W(J,{onError:y?.onError??(()=>{}),onEvent:y?.onEvent,workflowId:S,context:d})}let P=performance.now()-m;return u.ok?v({type:"workflow_success",workflowId:S,ts:Date.now(),durationMs:P}):v({type:"workflow_error",workflowId:S,ts:Date.now(),durationMs:P,error:u.error}),u}return c}function te(e){return e.type==="step_complete"}function X(e){return typeof e=="object"&&e!==null&&e.type==="PENDING_APPROVAL"}function Ae(e){return typeof e=="object"&&e!==null&&e.type==="APPROVAL_REJECTED"}function ve(e,t){return _({type:"PENDING_APPROVAL",stepKey:e,reason:t?.reason,metadata:t?.metadata})}function Pe(e){return async()=>{let t=await e.checkApproval();switch(t.status){case"pending":return _({type:"PENDING_APPROVAL",stepKey:e.key,reason:e.pendingReason,metadata:e.metadata});case"rejected":return _({type:"APPROVAL_REJECTED",stepKey:e.key,reason:t.reason});case"approved":return O(t.value)}}}function he(e,t){let c=new Map(e.steps);return c.set(t.stepKey,{result:O(t.value)}),{steps:c}}function _e(e,t){let c=new Map(e.steps);return c.delete(t),{steps:c}}function De(e,t){let c=e.steps.get(t);return!c||c.result.ok?!1:X(c.result.error)}function be(e){let t=[];for(let[c,T]of e.steps)!T.result.ok&&X(T.result.error)&&t.push(c);return t}function Oe(){let e=new Map;return{handleEvent:t=>{te(t)&&e.set(t.stepKey,{result:t.result,meta:t.meta})},getState:()=>({steps:new Map(e)}),clear:()=>e.clear(),hasPendingApprovals:()=>{for(let t of e.values())if(!t.result.ok&&X(t.result.error))return!0;return!1},getPendingApprovals:()=>{let t=[];for(let[c,T]of e)!T.result.ok&&X(T.result.error)&&t.push({stepKey:c,error:T.result.error});return t},injectApproval:(t,c)=>(e.set(t,{result:O(c)}),{steps:new Map(e)})}}0&&(module.exports={clearStep,createApprovalStep,createHITLCollector,createStepCollector,createWorkflow,getPendingApprovals,hasPendingApproval,injectApproval,isApprovalRejected,isPendingApproval,isStepComplete,pendingApproval});
|
|
1
|
+
"use strict";var re=Object.defineProperty;var we=Object.getOwnPropertyDescriptor;var me=Object.getOwnPropertyNames;var ke=Object.prototype.hasOwnProperty;var de=(e,n)=>{for(var c in n)re(e,c,{get:n[c],enumerable:!0})},fe=(e,n,c,C)=>{if(n&&typeof n=="object"||typeof n=="function")for(let v of me(n))!ke.call(e,v)&&v!==c&&re(e,v,{get:()=>n[v],enumerable:!(C=we(n,v))||C.enumerable});return e};var Te=e=>fe(re({},"__esModule",{value:!0}),e);var We={};de(We,{clearStep:()=>Me,createApprovalStep:()=>Ue,createHITLCollector:()=>Ke,createStepCollector:()=>he,createWorkflow:()=>Pe,getPendingApprovals:()=>Ie,hasPendingApproval:()=>Oe,injectApproval:()=>De,isApprovalRejected:()=>_e,isPendingApproval:()=>q,isStepComplete:()=>ae,pendingApproval:()=>be});module.exports=Te(We);var M=e=>({ok:!0,value:e}),S=(e,n)=>({ok:!1,error:e,...n?.cause!==void 0?{cause:n.cause}:{}});var Re=e=>typeof e=="object"&&e!==null&&e.type==="UNEXPECTED_ERROR",X=Symbol.for("step_timeout_marker");function pe(e){return typeof e!="object"||e===null?!1:e.type==="STEP_TIMEOUT"?!0:X in e}function Ce(e){if(!(typeof e!="object"||e===null)){if(e.type==="STEP_TIMEOUT"){let n=e;return{timeoutMs:n.timeoutMs,stepName:n.stepName,stepKey:n.stepKey,attempt:n.attempt}}if(X in e)return e[X]}}var le=Symbol("early-exit");function Y(e,n){return{[le]:!0,error:e,meta:n}}function $(e){return typeof e=="object"&&e!==null&&e[le]===!0}var Ee=Symbol("mapper-exception");function xe(e){return{[Ee]:!0,thrown:e}}function Se(e){return typeof e=="object"&&e!==null&&e[Ee]===!0}function ge(e){return typeof e=="string"?{name:e}:e??{}}function oe(e,n){let{backoff:c,initialDelay:C,maxDelay:v,jitter:K}=n,x;switch(c){case"fixed":x=C;break;case"linear":x=C*e;break;case"exponential":x=C*Math.pow(2,e-1);break}if(x=Math.min(x,v),K){let l=x*.25*Math.random();x=x+l}return Math.floor(x)}function se(e){return new Promise(n=>setTimeout(n,e))}var ce=Symbol("timeout");async function Ae(e,n,c){let C=new AbortController,v=n.error??{type:"STEP_TIMEOUT",stepName:c.name,stepKey:c.key,timeoutMs:n.ms,attempt:c.attempt},K,x=new Promise((f,m)=>{K=setTimeout(()=>{C.abort(),m({[ce]:!0,error:v})},n.ms)}),l;n.signal?l=Promise.resolve(e(C.signal)):l=Promise.resolve(e());try{return await Promise.race([l,x])}catch(f){if(typeof f=="object"&&f!==null&&f[ce]===!0){let m=f.error;if(typeof m=="object"&&m!==null&&m.type!=="STEP_TIMEOUT"){let j={timeoutMs:n.ms,stepName:c.name,stepKey:c.key,attempt:c.attempt};X in m?m[X]=j:Object.defineProperty(m,X,{value:j,enumerable:!1,writable:!0,configurable:!1})}throw m}throw f}finally{clearTimeout(K)}}var L={backoff:"exponential",initialDelay:100,maxDelay:3e4,jitter:!0,retryOn:()=>!0,onRetry:()=>{}};async function H(e,n){let{onError:c,onEvent:C,catchUnexpected:v,workflowId:K,context:x}=n&&typeof n=="object"?n:{},l=K??crypto.randomUUID(),f=!c&&!v,m=[],j=0,P=p=>p??`step_${++j}`,w=p=>{let g=p.context!==void 0||x===void 0?p:{...p,context:x};if(g.type==="step_success"){let U=g.stepId;for(let W=m.length-1;W>=0;W--){let I=m[W];if(I.type==="race"&&!I.winnerId){I.winnerId=U;break}}}C?.(g,x)},_=Y,G=p=>$(p),B=(p,g)=>f?g?.origin==="result"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:p,...g.resultCause!==void 0?{cause:g.resultCause}:{}}}:g?.origin==="throw"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"throw",error:p,thrown:g.thrown}}:{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:p}}:p,Z=p=>p.origin==="result"?p.resultCause:p.thrown,F=p=>({type:"UNEXPECTED_ERROR",cause:p.meta.origin==="result"?{type:"STEP_FAILURE",origin:"result",error:p.error,...p.meta.resultCause!==void 0?{cause:p.meta.resultCause}:{}}:{type:"STEP_FAILURE",origin:"throw",error:p.error,thrown:p.meta.thrown}});try{let g=function(k,o){let s=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let u=performance.now(),t=!1;m.push({scopeId:s,type:"parallel"});let E=()=>{if(t)return;t=!0;let r=m.findIndex(a=>a.scopeId===s);r!==-1&&m.splice(r,1),w({type:"scope_end",workflowId:l,scopeId:s,ts:Date.now(),durationMs:performance.now()-u})};w({type:"scope_start",workflowId:l,scopeId:s,scopeType:"parallel",name:k,ts:Date.now()});try{let r=await o();if(E(),!r.ok)throw c?.(r.error,k,x),_(r.error,{origin:"result",resultCause:r.cause});return r.value}catch(r){throw E(),r}})()},U=function(k,o){let s=Object.keys(k),u=o.name??`Parallel(${s.join(", ")})`,t=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let E=performance.now(),r=!1;m.push({scopeId:t,type:"parallel"});let a=()=>{if(r)return;r=!0;let i=m.findIndex(y=>y.scopeId===t);i!==-1&&m.splice(i,1),w({type:"scope_end",workflowId:l,scopeId:t,ts:Date.now(),durationMs:performance.now()-E})};w({type:"scope_start",workflowId:l,scopeId:t,scopeType:"parallel",name:u,ts:Date.now()});try{let i=await new Promise(h=>{if(s.length===0){h([]);return}let b=!1,A=s.length,J=new Array(s.length);for(let O=0;O<s.length;O++){let V=s[O],ee=O;Promise.resolve(k[V]()).catch(R=>S({type:"PROMISE_REJECTED",cause:R},{cause:{type:"PROMISE_REJECTION",reason:R}})).then(R=>{if(!b){if(!R.ok){b=!0,h([{key:V,result:R}]);return}J[ee]={key:V,result:R},A--,A===0&&h(J)}})}});a();let y={};for(let{key:h,result:b}of i){if(!b.ok)throw c?.(b.error,h,x),_(b.error,{origin:"result",resultCause:b.cause});y[h]=b.value}return y}catch(i){throw a(),i}})()};var T=g,ie=U;let p=(k,o)=>(async()=>{let s=ge(o),{name:u,key:t,retry:E,timeout:r}=s,a=P(t),i=C,y=i?performance.now():0;if(!(typeof k=="function")){if(E&&E.attempts>1)throw new Error("step: retry options require a function operation. Direct Promise/Result values cannot be re-executed on retry. Wrap your operation in a function: step(() => yourOperation, { retry: {...} })");if(r)throw new Error("step: timeout options require a function operation. Direct Promise/Result values cannot be wrapped with timeout after they've started. Wrap your operation in a function: step(() => yourOperation, { timeout: {...} })")}let A={attempts:Math.max(1,E?.attempts??1),backoff:E?.backoff??L.backoff,initialDelay:E?.initialDelay??L.initialDelay,maxDelay:E?.maxDelay??L.maxDelay,jitter:E?.jitter??L.jitter,retryOn:E?.retryOn??L.retryOn,onRetry:E?.onRetry??L.onRetry};C&&w({type:"step_start",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now()});let J;for(let R=1;R<=A.attempts;R++){let ye=i?performance.now():0;try{let d;if(typeof k=="function"?r?d=await Ae(k,r,{name:u,key:t,attempt:R}):d=await k():d=await k,d.ok){let N=performance.now()-y;return w({type:"step_success",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),durationMs:N}),t&&w({type:"step_complete",workflowId:l,stepKey:t,name:u,ts:Date.now(),durationMs:N,result:d}),d.value}if(J=d,R<A.attempts&&A.retryOn(d.error,R)){let N=oe(R,A);w({type:"step_retry",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),attempt:R+1,maxAttempts:A.attempts,delayMs:N,error:d.error}),A.onRetry(d.error,R,N),await se(N);continue}A.attempts>1&&w({type:"step_retries_exhausted",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),durationMs:performance.now()-y,attempts:R,lastError:d.error});break}catch(d){let N=performance.now()-ye;if(G(d))throw w({type:"step_aborted",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),durationMs:N}),d;if(pe(d)){let D=Ce(d),te=r?.ms??D?.timeoutMs??0;if(w({type:"step_timeout",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),timeoutMs:te,attempt:R}),R<A.attempts&&A.retryOn(d,R)){let ne=oe(R,A);w({type:"step_retry",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),attempt:R+1,maxAttempts:A.attempts,delayMs:ne,error:d}),A.onRetry(d,R,ne),await se(ne);continue}A.attempts>1&&w({type:"step_retries_exhausted",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),durationMs:performance.now()-y,attempts:R,lastError:d})}if(R<A.attempts&&A.retryOn(d,R)){let D=oe(R,A);w({type:"step_retry",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),attempt:R+1,maxAttempts:A.attempts,delayMs:D,error:d}),A.onRetry(d,R,D),await se(D);continue}A.attempts>1&&!pe(d)&&w({type:"step_retries_exhausted",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),durationMs:performance.now()-y,attempts:R,lastError:d});let z=performance.now()-y;if(v){let D;try{D=v(d)}catch(te){throw xe(te)}throw w({type:"step_error",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),durationMs:z,error:D}),t&&w({type:"step_complete",workflowId:l,stepKey:t,name:u,ts:Date.now(),durationMs:z,result:S(D,{cause:d}),meta:{origin:"throw",thrown:d}}),c?.(D,u,x),_(D,{origin:"throw",thrown:d})}else{let D={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:d}};throw w({type:"step_error",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),durationMs:z,error:D}),t&&w({type:"step_complete",workflowId:l,stepKey:t,name:u,ts:Date.now(),durationMs:z,result:S(D,{cause:d}),meta:{origin:"throw",thrown:d}}),d}}}let O=J,V=performance.now()-y,ee=B(O.error,{origin:"result",resultCause:O.cause});throw w({type:"step_error",workflowId:l,stepId:a,stepKey:t,name:u,ts:Date.now(),durationMs:V,error:ee}),t&&w({type:"step_complete",workflowId:l,stepKey:t,name:u,ts:Date.now(),durationMs:V,result:O,meta:{origin:"result",resultCause:O.cause}}),c?.(O.error,u,x),_(O.error,{origin:"result",resultCause:O.cause})})();p.try=(k,o)=>{let s=o.name,u=o.key,t=P(u),E="error"in o?()=>o.error:o.onError,r=C;return(async()=>{let a=r?performance.now():0;C&&w({type:"step_start",workflowId:l,stepId:t,stepKey:u,name:s,ts:Date.now()});try{let i=await k(),y=performance.now()-a;return w({type:"step_success",workflowId:l,stepId:t,stepKey:u,name:s,ts:Date.now(),durationMs:y}),u&&w({type:"step_complete",workflowId:l,stepKey:u,name:s,ts:Date.now(),durationMs:y,result:M(i)}),i}catch(i){let y=E(i),h=performance.now()-a,b=B(y,{origin:"throw",thrown:i});throw w({type:"step_error",workflowId:l,stepId:t,stepKey:u,name:s,ts:Date.now(),durationMs:h,error:b}),u&&w({type:"step_complete",workflowId:l,stepKey:u,name:s,ts:Date.now(),durationMs:h,result:S(y,{cause:i}),meta:{origin:"throw",thrown:i}}),c?.(y,s,x),_(y,{origin:"throw",thrown:i})}})()},p.fromResult=(k,o)=>{let s=o.name,u=o.key,t=P(u),E="error"in o?()=>o.error:o.onError,r=C;return(async()=>{let a=r?performance.now():0;C&&w({type:"step_start",workflowId:l,stepId:t,stepKey:u,name:s,ts:Date.now()});let i=await k();if(i.ok){let y=performance.now()-a;return w({type:"step_success",workflowId:l,stepId:t,stepKey:u,name:s,ts:Date.now(),durationMs:y}),u&&w({type:"step_complete",workflowId:l,stepKey:u,name:s,ts:Date.now(),durationMs:y,result:M(i.value)}),i.value}else{let y=E(i.error),h=performance.now()-a,b=B(y,{origin:"result",resultCause:i.error});throw w({type:"step_error",workflowId:l,stepId:t,stepKey:u,name:s,ts:Date.now(),durationMs:h,error:b}),u&&w({type:"step_complete",workflowId:l,stepKey:u,name:s,ts:Date.now(),durationMs:h,result:S(y,{cause:i.error}),meta:{origin:"result",resultCause:i.error}}),c?.(y,s,x),_(y,{origin:"result",resultCause:i.error})}})()},p.retry=(k,o)=>p(k,{name:o.name,key:o.key,retry:{attempts:o.attempts,backoff:o.backoff,initialDelay:o.initialDelay,maxDelay:o.maxDelay,jitter:o.jitter,retryOn:o.retryOn,onRetry:o.onRetry},timeout:o.timeout}),p.withTimeout=(k,o)=>p(k,{name:o.name,key:o.key,timeout:o}),p.parallel=((...k)=>{if(typeof k[0]=="string"){let o=k[0],s=k[1];return g(o,s)}else{let o=k[0],s=k[1]??{};return U(o,s)}}),p.race=(k,o)=>{let s=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let u=performance.now(),t=!1,E={scopeId:s,type:"race",winnerId:void 0};m.push(E);let r=()=>{if(t)return;t=!0;let a=m.findIndex(i=>i.scopeId===s);a!==-1&&m.splice(a,1),w({type:"scope_end",workflowId:l,scopeId:s,ts:Date.now(),durationMs:performance.now()-u,winnerId:E.winnerId})};w({type:"scope_start",workflowId:l,scopeId:s,scopeType:"race",name:k,ts:Date.now()});try{let a=await o();if(r(),!a.ok)throw c?.(a.error,k,x),_(a.error,{origin:"result",resultCause:a.cause});return a.value}catch(a){throw r(),a}})()},p.allSettled=(k,o)=>{let s=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let u=performance.now(),t=!1;m.push({scopeId:s,type:"allSettled"});let E=()=>{if(t)return;t=!0;let r=m.findIndex(a=>a.scopeId===s);r!==-1&&m.splice(r,1),w({type:"scope_end",workflowId:l,scopeId:s,ts:Date.now(),durationMs:performance.now()-u})};w({type:"scope_start",workflowId:l,scopeId:s,scopeType:"allSettled",name:k,ts:Date.now()});try{let r=await o();if(E(),!r.ok)throw c?.(r.error,k,x),_(r.error,{origin:"result",resultCause:r.cause});return r.value}catch(r){throw E(),r}})()};let I=await e(p);return M(I)}catch(p){if(Se(p))throw p.thrown;if(G(p)){let U=Z(p.meta);if(v||c)return S(p.error,{cause:U});if(Re(p.error))return S(p.error,{cause:U});let W=F(p);return S(W,{cause:U})}if(v){let U=v(p);return c?.(U,"unexpected",x),S(U,{cause:p})}let g={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:p}};return c?.(g,"unexpected",x),S(g,{cause:p})}}H.strict=(e,n)=>H(e,n);function he(){let e=new Map;return{handleEvent:n=>{ae(n)&&e.set(n.stepKey,{result:n.result,meta:n.meta})},getState:()=>({steps:new Map(e)}),clear:()=>e.clear()}}function ve(e){return typeof e=="object"&&e!==null&&e.__cachedMeta===!0}function Q(e,n,c){return S(e,{cause:{__cachedMeta:!0,originalCause:c,meta:n}})}function ue(e){return ve(e)?e.meta:{origin:"result",resultCause:e}}function Pe(e,n){async function c(C,v){let K=typeof v=="function",x=K?C:void 0,l=K?v:C,f=crypto.randomUUID(),m=n?.createContext?.(),j={workflowId:f,onEvent:n?.onEvent,context:m!==void 0?m:void 0},P=o=>{let s=o.context!==void 0||m===void 0?o:{...o,context:m};n?.onEvent?.(s,m)},w=n?.shouldRun,_=n?.catchUnexpected;if(w){let o=performance.now();try{let s=await w(f,m),u=performance.now()-o;if(P({type:"hook_should_run",workflowId:f,ts:Date.now(),durationMs:u,result:s,skipped:!s}),!s){let t=new Error("Workflow skipped by shouldRun hook");if(_){let r=_(t);return S(r)}return S({type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:t}})}}catch(s){let u=performance.now()-o;if(P({type:"hook_should_run_error",workflowId:f,ts:Date.now(),durationMs:u,error:s}),_){let E=_(s);return S(E)}return S({type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:s}})}}let G=n?.onBeforeStart;if(G){let o=performance.now();try{let s=await G(f,m),u=performance.now()-o;if(P({type:"hook_before_start",workflowId:f,ts:Date.now(),durationMs:u,result:s,skipped:!s}),!s){let t=new Error("Workflow skipped by onBeforeStart hook");if(_){let r=_(t);return S(r)}return S({type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:t}})}}catch(s){let u=performance.now()-o;if(P({type:"hook_before_start_error",workflowId:f,ts:Date.now(),durationMs:u,error:s}),_){let E=_(s);return S(E)}return S({type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:s}})}}let B=Date.now(),Z=performance.now();P({type:"workflow_start",workflowId:f,ts:B});let F=n?.resumeState,T=n?.cache;if(F&&!T&&(T=new Map),F&&T){let o=typeof F=="function"?await F():F;for(let[s,u]of o.steps){let{result:t,meta:E}=u;if(t.ok)T.set(s,t);else{let r=E??{origin:"result",resultCause:t.cause};T.set(s,Q(t.error,r,t.cause))}}}let ie=o=>typeof o=="string"?{name:o}:o??{},p=n?.onAfterStep,g=async(o,s)=>{if(!p)return;let u=performance.now();try{await p(o,s,f,m);let t=performance.now()-u;P({type:"hook_after_step",workflowId:f,stepKey:o,ts:Date.now(),durationMs:t})}catch(t){let E=performance.now()-u;throw P({type:"hook_after_step_error",workflowId:f,stepKey:o,ts:Date.now(),durationMs:E,error:t}),t}},U=o=>{if(!T&&!p)return o;let s=async(u,t)=>{let{name:E,key:r}=ie(t);if(r&&T&&T.has(r)){P({type:"step_cache_hit",workflowId:f,stepKey:r,name:E,ts:Date.now()});let i=T.get(r);if(i.ok)return i.value;let y=ue(i.cause);throw Y(i.error,y)}r&&T&&P({type:"step_cache_miss",workflowId:f,stepKey:r,name:E,ts:Date.now()});let a=typeof u=="function"?u:()=>u;try{let i=await o(a,t);return r&&(T&&T.set(r,M(i)),await g(r,M(i))),i}catch(i){if(r&&$(i)){let y=i,h=y.meta.origin==="result"?y.meta.resultCause:y.meta.thrown,b=Q(y.error,y.meta,h);T&&T.set(r,b),await g(r,b)}throw i}};return s.try=async(u,t)=>{let{name:E,key:r}=t;if(r&&T&&T.has(r)){P({type:"step_cache_hit",workflowId:f,stepKey:r,name:E,ts:Date.now()});let a=T.get(r);if(a.ok)return a.value;let i=ue(a.cause);throw Y(a.error,i)}r&&T&&P({type:"step_cache_miss",workflowId:f,stepKey:r,name:E,ts:Date.now()});try{let a=await o.try(u,t);return r&&(T&&T.set(r,M(a)),await g(r,M(a))),a}catch(a){if(r&&$(a)){let i=a,y=i.meta.origin==="result"?i.meta.resultCause:i.meta.thrown,h=Q(i.error,i.meta,y);T&&T.set(r,h),await g(r,h)}throw a}},s.fromResult=async(u,t)=>{let{name:E,key:r}=t;if(r&&T&&T.has(r)){P({type:"step_cache_hit",workflowId:f,stepKey:r,name:E,ts:Date.now()});let a=T.get(r);if(a.ok)return a.value;let i=ue(a.cause);throw Y(a.error,i)}r&&T&&P({type:"step_cache_miss",workflowId:f,stepKey:r,name:E,ts:Date.now()});try{let a=await o.fromResult(u,t);return r&&(T&&T.set(r,M(a)),await g(r,M(a))),a}catch(a){if(r&&$(a)){let i=a,y=i.meta.origin==="result"?i.meta.resultCause:i.meta.thrown,h=Q(i.error,i.meta,y);T&&T.set(r,h),await g(r,h)}throw a}},s.parallel=o.parallel,s.race=o.race,s.allSettled=o.allSettled,s.retry=(u,t)=>s(u,{name:t.name,key:t.key,retry:{attempts:t.attempts,backoff:t.backoff,initialDelay:t.initialDelay,maxDelay:t.maxDelay,jitter:t.jitter,retryOn:t.retryOn,onRetry:t.onRetry},timeout:t.timeout}),s.withTimeout=(u,t)=>s(u,{name:t.name,key:t.key,timeout:t}),s},W=K?o=>l(U(o),e,x,j):o=>l(U(o),e,j),I;if(n?.strict===!0){let o=n;I=await H.strict(W,{onError:o.onError,onEvent:o.onEvent,catchUnexpected:o.catchUnexpected,workflowId:f,context:m})}else{let o=n;I=await H(W,{onError:o?.onError??(()=>{}),onEvent:o?.onEvent,workflowId:f,context:m})}let k=performance.now()-Z;return I.ok?P({type:"workflow_success",workflowId:f,ts:Date.now(),durationMs:k}):P({type:"workflow_error",workflowId:f,ts:Date.now(),durationMs:k,error:I.error}),I}return c}function ae(e){return e.type==="step_complete"}function q(e){return typeof e=="object"&&e!==null&&e.type==="PENDING_APPROVAL"}function _e(e){return typeof e=="object"&&e!==null&&e.type==="APPROVAL_REJECTED"}function be(e,n){return S({type:"PENDING_APPROVAL",stepKey:e,reason:n?.reason,metadata:n?.metadata})}function Ue(e){return async()=>{let n=await e.checkApproval();switch(n.status){case"pending":return S({type:"PENDING_APPROVAL",stepKey:e.key,reason:e.pendingReason,metadata:e.metadata});case"rejected":return S({type:"APPROVAL_REJECTED",stepKey:e.key,reason:n.reason});case"approved":return M(n.value)}}}function De(e,n){let c=new Map(e.steps);return c.set(n.stepKey,{result:M(n.value)}),{steps:c}}function Me(e,n){let c=new Map(e.steps);return c.delete(n),{steps:c}}function Oe(e,n){let c=e.steps.get(n);return!c||c.result.ok?!1:q(c.result.error)}function Ie(e){let n=[];for(let[c,C]of e.steps)!C.result.ok&&q(C.result.error)&&n.push(c);return n}function Ke(){let e=new Map;return{handleEvent:n=>{ae(n)&&e.set(n.stepKey,{result:n.result,meta:n.meta})},getState:()=>({steps:new Map(e)}),clear:()=>e.clear(),hasPendingApprovals:()=>{for(let n of e.values())if(!n.result.ok&&q(n.result.error))return!0;return!1},getPendingApprovals:()=>{let n=[];for(let[c,C]of e)!C.result.ok&&q(C.result.error)&&n.push({stepKey:c,error:C.result.error});return n},injectApproval:(n,c)=>(e.set(n,{result:M(c)}),{steps:new Map(e)})}}0&&(module.exports={clearStep,createApprovalStep,createHITLCollector,createStepCollector,createWorkflow,getPendingApprovals,hasPendingApproval,injectApproval,isApprovalRejected,isPendingApproval,isStepComplete,pendingApproval});
|
|
2
2
|
//# sourceMappingURL=workflow.cjs.map
|