awaitly 1.9.0 → 1.11.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.
Files changed (141) hide show
  1. package/dist/adapters.cjs +6 -1
  2. package/dist/adapters.cjs.map +1 -1
  3. package/dist/adapters.d.cts +2 -1
  4. package/dist/adapters.d.ts +2 -1
  5. package/dist/adapters.js +6 -1
  6. package/dist/adapters.js.map +1 -1
  7. package/dist/batch.cjs +6 -1
  8. package/dist/batch.cjs.map +1 -1
  9. package/dist/batch.d.cts +2 -1
  10. package/dist/batch.d.ts +2 -1
  11. package/dist/batch.js +6 -1
  12. package/dist/batch.js.map +1 -1
  13. package/dist/circuit-breaker.cjs +6 -1
  14. package/dist/circuit-breaker.cjs.map +1 -1
  15. package/dist/circuit-breaker.d.cts +2 -1
  16. package/dist/circuit-breaker.d.ts +2 -1
  17. package/dist/circuit-breaker.js +6 -1
  18. package/dist/circuit-breaker.js.map +1 -1
  19. package/dist/conditional.d.cts +2 -1
  20. package/dist/conditional.d.ts +2 -1
  21. package/dist/{core-DyBdZou6.d.ts → core-BHKuyMGx.d.cts} +38 -0
  22. package/dist/{core-DyBdZou6.d.cts → core-DRoxdP5Q.d.ts} +38 -0
  23. package/dist/core.cjs +6 -1
  24. package/dist/core.cjs.map +1 -1
  25. package/dist/core.d.cts +2 -1
  26. package/dist/core.d.ts +2 -1
  27. package/dist/core.js +6 -1
  28. package/dist/core.js.map +1 -1
  29. package/dist/dev-server-C-PDP4ZZ.d.ts +1324 -0
  30. package/dist/dev-server-ClUEgOHp.d.cts +1324 -0
  31. package/dist/devtools.d.cts +6 -4
  32. package/dist/devtools.d.ts +6 -4
  33. package/dist/durable.cjs +9 -4
  34. package/dist/durable.cjs.map +1 -1
  35. package/dist/durable.d.cts +7 -6
  36. package/dist/durable.d.ts +7 -6
  37. package/dist/durable.js +9 -4
  38. package/dist/durable.js.map +1 -1
  39. package/dist/fetch.cjs +6 -1
  40. package/dist/fetch.cjs.map +1 -1
  41. package/dist/fetch.d.cts +2 -1
  42. package/dist/fetch.d.ts +2 -1
  43. package/dist/fetch.js +6 -1
  44. package/dist/fetch.js.map +1 -1
  45. package/dist/functional.cjs +7 -0
  46. package/dist/functional.cjs.map +1 -0
  47. package/dist/functional.d.cts +442 -0
  48. package/dist/functional.d.ts +442 -0
  49. package/dist/functional.js +7 -0
  50. package/dist/functional.js.map +1 -0
  51. package/dist/hitl.cjs +6 -1
  52. package/dist/hitl.cjs.map +1 -1
  53. package/dist/hitl.d.cts +5 -4
  54. package/dist/hitl.d.ts +5 -4
  55. package/dist/hitl.js +6 -1
  56. package/dist/hitl.js.map +1 -1
  57. package/dist/index.cjs +13 -1
  58. package/dist/index.cjs.map +1 -1
  59. package/dist/index.d.cts +4 -1
  60. package/dist/index.d.ts +4 -1
  61. package/dist/index.js +13 -1
  62. package/dist/index.js.map +1 -1
  63. package/dist/otel.d.cts +2 -1
  64. package/dist/otel.d.ts +2 -1
  65. package/dist/{persistence-DiSlpS2m.d.ts → persistence-DNupoS1A.d.cts} +2 -2
  66. package/dist/{persistence-CoLMOgQS.d.cts → persistence-jsZymps8.d.ts} +2 -2
  67. package/dist/persistence.cjs +6 -1
  68. package/dist/persistence.cjs.map +1 -1
  69. package/dist/persistence.d.cts +5 -4
  70. package/dist/persistence.d.ts +5 -4
  71. package/dist/persistence.js +6 -1
  72. package/dist/persistence.js.map +1 -1
  73. package/dist/policies.d.cts +2 -1
  74. package/dist/policies.d.ts +2 -1
  75. package/dist/ratelimit.cjs +6 -1
  76. package/dist/ratelimit.cjs.map +1 -1
  77. package/dist/ratelimit.d.cts +2 -1
  78. package/dist/ratelimit.d.ts +2 -1
  79. package/dist/ratelimit.js +6 -1
  80. package/dist/ratelimit.js.map +1 -1
  81. package/dist/reliability.cjs +6 -1
  82. package/dist/reliability.cjs.map +1 -1
  83. package/dist/reliability.d.cts +2 -1
  84. package/dist/reliability.d.ts +2 -1
  85. package/dist/reliability.js +6 -1
  86. package/dist/reliability.js.map +1 -1
  87. package/dist/resource.cjs +6 -1
  88. package/dist/resource.cjs.map +1 -1
  89. package/dist/resource.d.cts +2 -1
  90. package/dist/resource.d.ts +2 -1
  91. package/dist/resource.js +6 -1
  92. package/dist/resource.js.map +1 -1
  93. package/dist/saga.cjs +6 -1
  94. package/dist/saga.cjs.map +1 -1
  95. package/dist/saga.d.cts +2 -1
  96. package/dist/saga.d.ts +2 -1
  97. package/dist/saga.js +6 -1
  98. package/dist/saga.js.map +1 -1
  99. package/dist/singleflight.d.cts +2 -1
  100. package/dist/singleflight.d.ts +2 -1
  101. package/dist/streaming.cjs +8 -3
  102. package/dist/streaming.cjs.map +1 -1
  103. package/dist/streaming.d.cts +4 -3
  104. package/dist/streaming.d.ts +4 -3
  105. package/dist/streaming.js +8 -3
  106. package/dist/streaming.js.map +1 -1
  107. package/dist/testing.cjs +8 -3
  108. package/dist/testing.cjs.map +1 -1
  109. package/dist/testing.d.cts +4 -3
  110. package/dist/testing.d.ts +4 -3
  111. package/dist/testing.js +7 -2
  112. package/dist/testing.js.map +1 -1
  113. package/dist/{types-BGTd_pkY.d.ts → types-BaHMkgI-.d.ts} +1 -1
  114. package/dist/{types-qw8u-gNs.d.cts → types-C1tN9cD4.d.cts} +1 -1
  115. package/dist/visualize.browser.cjs +1575 -0
  116. package/dist/visualize.browser.cjs.map +1 -0
  117. package/dist/visualize.browser.d.cts +193 -0
  118. package/dist/visualize.browser.d.ts +193 -0
  119. package/dist/visualize.browser.js +1575 -0
  120. package/dist/visualize.browser.js.map +1 -0
  121. package/dist/visualize.cjs +33 -28
  122. package/dist/visualize.cjs.map +1 -1
  123. package/dist/visualize.d.cts +8 -1324
  124. package/dist/visualize.d.ts +8 -1324
  125. package/dist/visualize.js +33 -28
  126. package/dist/visualize.js.map +1 -1
  127. package/dist/webhook.cjs +6 -1
  128. package/dist/webhook.cjs.map +1 -1
  129. package/dist/webhook.d.cts +4 -3
  130. package/dist/webhook.d.ts +4 -3
  131. package/dist/webhook.js +6 -1
  132. package/dist/webhook.js.map +1 -1
  133. package/dist/{workflow-2Gqnc_c1.d.cts → workflow-entry-D7UvScg-.d.ts} +7 -4
  134. package/dist/{workflow-DYQ4GI2-.d.ts → workflow-entry-D8pKct08.d.cts} +7 -4
  135. package/dist/workflow.cjs +9 -4
  136. package/dist/workflow.cjs.map +1 -1
  137. package/dist/workflow.d.cts +3 -3
  138. package/dist/workflow.d.ts +3 -3
  139. package/dist/workflow.js +9 -4
  140. package/dist/workflow.js.map +1 -1
  141. package/package.json +136 -1
package/dist/adapters.cjs CHANGED
@@ -1,2 +1,7 @@
1
- "use strict";var z=Object.defineProperty;var Te=Object.getOwnPropertyDescriptor;var de=Object.getOwnPropertyNames;var ke=Object.prototype.hasOwnProperty;var fe=(e,n)=>{for(var m in n)z(e,m,{get:n[m],enumerable:!0})},Re=(e,n,m,E)=>{if(n&&typeof n=="object"||typeof n=="function")for(let d of de(n))!ke.call(e,d)&&d!==m&&z(e,d,{get:()=>n[d],enumerable:!(E=Te(n,d))||E.enumerable});return e};var Ce=e=>Re(z({},"__esModule",{value:!0}),e);var Oe={};fe(Oe,{fromCallback:()=>le,fromEvent:()=>Ee,isEventEmitterLike:()=>me,isEventTimeoutError:()=>pe,isInvalidEmitterError:()=>ce});module.exports=Ce(Oe);var F=e=>({ok:!0,value:e}),v=(e,n)=>({ok:!1,error:e,...n?.cause!==void 0?{cause:n.cause}:{}});var xe=e=>typeof e=="object"&&e!==null&&e.type==="UNEXPECTED_ERROR";var B=Symbol.for("step_timeout_marker");function Q(e){return typeof e!="object"||e===null?!1:e.type==="STEP_TIMEOUT"?!0:B in e}function ge(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(B in e)return e[B]}}var ae=Symbol("early-exit");function Se(e,n){return{[ae]:!0,error:e,meta:n}}function Ae(e){return typeof e=="object"&&e!==null&&e[ae]===!0}var ie=Symbol("mapper-exception");function be(e){return{[ie]:!0,thrown:e}}function ve(e){return typeof e=="object"&&e!==null&&e[ie]===!0}function Pe(e){return typeof e=="string"?{name:e}:e??{}}function Z(e,n){let{backoff:m,initialDelay:E,maxDelay:d,jitter:b}=n,w;switch(m){case"fixed":w=E;break;case"linear":w=E*e;break;case"exponential":w=E*Math.pow(2,e-1);break}if(w=Math.min(w,d),b){let I=w*.25*Math.random();w=w+I}return Math.floor(w)}function ee(e){return new Promise(n=>setTimeout(n,e))}var se=Symbol("timeout"),Y=Symbol("timeout-option");function _e(e){return typeof e=="object"&&e!==null&&e[Y]===!0}async function he(e,n,m,E){let d=new AbortController,b=n.onTimeout??"error",w=()=>typeof b=="function"?b({name:m.name,key:m.key,ms:n.ms}):n.error??{type:"STEP_TIMEOUT",stepName:m.name,stepKey:m.key,timeoutMs:n.ms,attempt:m.attempt},I;E?.aborted&&d.abort(E.reason);let o;E&&!E.aborted&&(o=()=>d.abort(E.reason),E.addEventListener("abort",o,{once:!0}));let j=new Promise((f,R)=>{I=setTimeout(()=>{if(b!=="disconnect"&&d.abort(),b==="option"){R({[Y]:!0,ms:n.ms});return}R({[se]:!0,error:w()})},n.ms)}),C;n.signal?C=Promise.resolve(e(d.signal)):C=Promise.resolve(e());try{return await Promise.race([C,j])}catch(f){if(typeof f=="object"&&f!==null&&f[Y]===!0)throw{[Y]:!0,ms:n.ms};if(typeof f=="object"&&f!==null&&f[se]===!0){b==="disconnect"&&C.catch(()=>{});let R=f.error;if(typeof R=="object"&&R!==null&&R.type!=="STEP_TIMEOUT"){let u={timeoutMs:n.ms,stepName:m.name,stepKey:m.key,attempt:m.attempt};B in R?R[B]=u:Object.defineProperty(R,B,{value:u,enumerable:!1,writable:!0,configurable:!1})}throw R}throw f}finally{clearTimeout(I),o&&E&&E.removeEventListener("abort",o)}}var V={backoff:"exponential",initialDelay:100,maxDelay:3e4,jitter:!0,retryOn:()=>!0,onRetry:()=>{}};async function ue(e,n){let{onError:m,onEvent:E,catchUnexpected:d,workflowId:b,context:w,_workflowSignal:I}=n&&typeof n=="object"?n:{},o=b??crypto.randomUUID(),j=!m&&!d,C=[],f=0,R=s=>s??`step_${++f}`,u=s=>{let _=s.context!==void 0||w===void 0?s:{...s,context:w};if(_.type==="step_success"){let O=_.stepId;for(let L=C.length-1;L>=0;L--){let W=C[L];if(W.type==="race"&&!W.winnerId){W.winnerId=O;break}}}E?.(_,w)},U=Se,re=s=>Ae(s),$=(s,_)=>j?_?.origin==="result"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:s,..._.resultCause!==void 0?{cause:_.resultCause}:{}}}:_?.origin==="throw"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"throw",error:s,thrown:_.thrown}}:{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:s}}:s,ye=s=>({type:"UNEXPECTED_ERROR",cause:s.meta.origin==="result"?{type:"STEP_FAILURE",origin:"result",error:s.error,...s.meta.resultCause!==void 0?{cause:s.meta.resultCause}:{}}:{type:"STEP_FAILURE",origin:"throw",error:s.error,thrown:s.meta.thrown}});try{let _=function(y,l){let p=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let t=performance.now(),r=!1;C.push({scopeId:p,type:"parallel"});let T=()=>{if(r)return;r=!0;let c=C.findIndex(k=>k.scopeId===p);c!==-1&&C.splice(c,1),u({type:"scope_end",workflowId:o,scopeId:p,ts:Date.now(),durationMs:performance.now()-t})};u({type:"scope_start",workflowId:o,scopeId:p,scopeType:"parallel",name:y,ts:Date.now()});try{let c=await l();if(T(),!c.ok)throw m?.(c.error,y,w),U(c.error,{origin:"result",resultCause:c.cause});return c.value}catch(c){throw T(),c}})()},O=function(y,l){let p=Object.keys(y),t=l.name??`Parallel(${p.join(", ")})`,r=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let T=performance.now(),c=!1;C.push({scopeId:r,type:"parallel"});let k=()=>{if(c)return;c=!0;let a=C.findIndex(x=>x.scopeId===r);a!==-1&&C.splice(a,1),u({type:"scope_end",workflowId:o,scopeId:r,ts:Date.now(),durationMs:performance.now()-T})};u({type:"scope_start",workflowId:o,scopeId:r,scopeType:"parallel",name:t,ts:Date.now()});try{let a=await new Promise(S=>{if(p.length===0){S([]);return}let h=!1,q=p.length,A=new Array(p.length);for(let N=0;N<p.length;N++){let M=p[N],X=N;Promise.resolve(y[M]()).catch(D=>v({type:"PROMISE_REJECTED",cause:D},{cause:{type:"PROMISE_REJECTION",reason:D}})).then(D=>{if(!h){if(!D.ok){h=!0,S([{key:M,result:D}]);return}A[X]={key:M,result:D},q--,q===0&&S(A)}})}});k();let x={};for(let{key:S,result:h}of a){if(!h.ok)throw m?.(h.error,S,w),U(h.error,{origin:"result",resultCause:h.cause});x[S]=h.value}return x}catch(a){throw k(),a}})()};var Me=_,Ie=O;let s=(y,l)=>(async()=>{let p=Pe(l),{name:t,key:r,description:T,retry:c,timeout:k}=p,a=R(r),x=E,S=x?performance.now():0;if(!(typeof y=="function")){if(c&&c.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(k)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,c?.attempts??1),backoff:c?.backoff??V.backoff,initialDelay:c?.initialDelay??V.initialDelay,maxDelay:c?.maxDelay??V.maxDelay,jitter:c?.jitter??V.jitter,retryOn:c?.retryOn??V.retryOn,onRetry:c?.onRetry??V.onRetry};E&&u({type:"step_start",workflowId:o,stepId:a,stepKey:r,name:t,description:T,ts:Date.now()});let N;for(let g=1;g<=A.attempts;g++){let we=x?performance.now():0;try{let i;if(typeof y=="function"?k?i=await he(y,k,{name:t,key:r,attempt:g},I):i=await y():i=await y,i.ok){let K=performance.now()-S;return u({type:"step_success",workflowId:o,stepId:a,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:K}),r&&u({type:"step_complete",workflowId:o,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:K,result:i}),i.value}if(N=i,g<A.attempts&&A.retryOn(i.error,g)){let K=Z(g,A);u({type:"step_retry",workflowId:o,stepId:a,stepKey:r,name:t,ts:Date.now(),attempt:g+1,maxAttempts:A.attempts,delayMs:K,error:i.error}),A.onRetry(i.error,g,K),await ee(K);continue}A.attempts>1&&u({type:"step_retries_exhausted",workflowId:o,stepId:a,stepKey:r,name:t,ts:Date.now(),durationMs:performance.now()-S,attempts:g,lastError:i.error});break}catch(i){let K=performance.now()-we;if(_e(i)){let P=i.ms;u({type:"step_timeout",workflowId:o,stepId:a,stepKey:r,name:t,ts:Date.now(),timeoutMs:P,attempt:g}),u({type:"step_success",workflowId:o,stepId:a,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:performance.now()-S}),r&&u({type:"step_complete",workflowId:o,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:performance.now()-S,result:F(void 0)});return}if(re(i))throw u({type:"step_aborted",workflowId:o,stepId:a,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:K}),i;if(Q(i)){let P=ge(i),H=k?.ms??P?.timeoutMs??0;if(u({type:"step_timeout",workflowId:o,stepId:a,stepKey:r,name:t,ts:Date.now(),timeoutMs:H,attempt:g}),g<A.attempts&&A.retryOn(i,g)){let G=Z(g,A);u({type:"step_retry",workflowId:o,stepId:a,stepKey:r,name:t,ts:Date.now(),attempt:g+1,maxAttempts:A.attempts,delayMs:G,error:i}),A.onRetry(i,g,G),await ee(G);continue}A.attempts>1&&u({type:"step_retries_exhausted",workflowId:o,stepId:a,stepKey:r,name:t,ts:Date.now(),durationMs:performance.now()-S,attempts:g,lastError:i});let oe=performance.now()-S;throw u({type:"step_error",workflowId:o,stepId:a,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:oe,error:i}),r&&u({type:"step_complete",workflowId:o,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:oe,result:v(i,{cause:i}),meta:{origin:"throw",thrown:i}}),m?.(i,t,w),U(i,{origin:"throw",thrown:i})}if(g<A.attempts&&A.retryOn(i,g)){let P=Z(g,A);u({type:"step_retry",workflowId:o,stepId:a,stepKey:r,name:t,ts:Date.now(),attempt:g+1,maxAttempts:A.attempts,delayMs:P,error:i}),A.onRetry(i,g,P),await ee(P);continue}A.attempts>1&&!Q(i)&&u({type:"step_retries_exhausted",workflowId:o,stepId:a,stepKey:r,name:t,ts:Date.now(),durationMs:performance.now()-S,attempts:g,lastError:i});let J=performance.now()-S;if(d){let P;try{P=d(i)}catch(H){throw be(H)}throw u({type:"step_error",workflowId:o,stepId:a,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:J,error:P}),r&&u({type:"step_complete",workflowId:o,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:J,result:v(P,{cause:i}),meta:{origin:"throw",thrown:i}}),m?.(P,t,w),U(P,{origin:"throw",thrown:i})}else{let P={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:i}};throw u({type:"step_error",workflowId:o,stepId:a,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:J,error:P}),r&&u({type:"step_complete",workflowId:o,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:J,result:v(P,{cause:i}),meta:{origin:"throw",thrown:i}}),i}}}let M=N,X=performance.now()-S,D=$(M.error,{origin:"result",resultCause:M.cause});throw u({type:"step_error",workflowId:o,stepId:a,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:X,error:D}),r&&u({type:"step_complete",workflowId:o,stepKey:r,name:t,description:T,ts:Date.now(),durationMs:X,result:M,meta:{origin:"result",resultCause:M.cause}}),m?.(M.error,t,w),U(M.error,{origin:"result",resultCause:M.cause})})();s.try=(y,l)=>{let p=l.name,t=l.key,r=R(t),T="error"in l?()=>l.error:l.onError,c=E;return(async()=>{let k=c?performance.now():0;E&&u({type:"step_start",workflowId:o,stepId:r,stepKey:t,name:p,ts:Date.now()});try{let a=await y(),x=performance.now()-k;return u({type:"step_success",workflowId:o,stepId:r,stepKey:t,name:p,ts:Date.now(),durationMs:x}),t&&u({type:"step_complete",workflowId:o,stepKey:t,name:p,ts:Date.now(),durationMs:x,result:F(a)}),a}catch(a){let x=T(a),S=performance.now()-k,h=$(x,{origin:"throw",thrown:a});throw u({type:"step_error",workflowId:o,stepId:r,stepKey:t,name:p,ts:Date.now(),durationMs:S,error:h}),t&&u({type:"step_complete",workflowId:o,stepKey:t,name:p,ts:Date.now(),durationMs:S,result:v(x,{cause:a}),meta:{origin:"throw",thrown:a}}),m?.(x,p,w),U(x,{origin:"throw",thrown:a})}})()},s.fromResult=(y,l)=>{let p=l.name,t=l.key,r=R(t),T="error"in l?()=>l.error:l.onError,c=E;return(async()=>{let k=c?performance.now():0;E&&u({type:"step_start",workflowId:o,stepId:r,stepKey:t,name:p,ts:Date.now()});let a=await y();if(a.ok){let x=performance.now()-k;return u({type:"step_success",workflowId:o,stepId:r,stepKey:t,name:p,ts:Date.now(),durationMs:x}),t&&u({type:"step_complete",workflowId:o,stepKey:t,name:p,ts:Date.now(),durationMs:x,result:F(a.value)}),a.value}else{let x=T(a.error),S=performance.now()-k,h=$(x,{origin:"result",resultCause:a.error});throw u({type:"step_error",workflowId:o,stepId:r,stepKey:t,name:p,ts:Date.now(),durationMs:S,error:h}),t&&u({type:"step_complete",workflowId:o,stepKey:t,name:p,ts:Date.now(),durationMs:S,result:v(x,{cause:a.error}),meta:{origin:"result",resultCause:a.error}}),m?.(x,p,w),U(x,{origin:"result",resultCause:a.error})}})()},s.retry=(y,l)=>s(y,{name:l.name,key:l.key,retry:{attempts:l.attempts,backoff:l.backoff,initialDelay:l.initialDelay,maxDelay:l.maxDelay,jitter:l.jitter,retryOn:l.retryOn,onRetry:l.onRetry},timeout:l.timeout}),s.withTimeout=(y,l)=>s(y,{name:l.name,key:l.key,timeout:l}),s.parallel=((...y)=>{if(typeof y[0]=="string"){let l=y[0],p=y[1];return _(l,p)}else{let l=y[0],p=y[1]??{};return O(l,p)}}),s.race=(y,l)=>{let p=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let t=performance.now(),r=!1,T={scopeId:p,type:"race",winnerId:void 0};C.push(T);let c=()=>{if(r)return;r=!0;let k=C.findIndex(a=>a.scopeId===p);k!==-1&&C.splice(k,1),u({type:"scope_end",workflowId:o,scopeId:p,ts:Date.now(),durationMs:performance.now()-t,winnerId:T.winnerId})};u({type:"scope_start",workflowId:o,scopeId:p,scopeType:"race",name:y,ts:Date.now()});try{let k=await l();if(c(),!k.ok)throw m?.(k.error,y,w),U(k.error,{origin:"result",resultCause:k.cause});return k.value}catch(k){throw c(),k}})()},s.allSettled=(y,l)=>{let p=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let t=performance.now(),r=!1;C.push({scopeId:p,type:"allSettled"});let T=()=>{if(r)return;r=!0;let c=C.findIndex(k=>k.scopeId===p);c!==-1&&C.splice(c,1),u({type:"scope_end",workflowId:o,scopeId:p,ts:Date.now(),durationMs:performance.now()-t})};u({type:"scope_start",workflowId:o,scopeId:p,scopeType:"allSettled",name:y,ts:Date.now()});try{let c=await l();if(T(),!c.ok)throw m?.(c.error,y,w),U(c.error,{origin:"result",resultCause:c.cause});return c.value}catch(c){throw T(),c}})()};let W=await e(s);return F(W)}catch(s){if(ve(s))throw s.thrown;if(re(s)){let O=s.meta.origin==="throw"?s.meta.thrown:s.meta.resultCause;if(d||m)return v(s.error,{cause:O});if(xe(s.error))return v(s.error,{cause:O});if(Q(s.error))return v(s.error,{cause:O});let L=ye(s);return v(L,{cause:O})}if(d){let O=d(s);return m?.(O,"unexpected",w),v(O,{cause:s})}let _={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:s}};return m?.(_,"unexpected",w),v(_,{cause:s})}}ue.strict=(e,n)=>ue(e,n);function pe(e){return typeof e=="object"&&e!==null&&e.type==="EVENT_TIMEOUT"}function ce(e){return typeof e=="object"&&e!==null&&e.type==="INVALID_EMITTER"}function le(e,n){return new Promise(m=>{try{e((E,d)=>{if(E){let b=n?.onError?n.onError(E):E;m(v(b,{cause:E}))}else m(F(d))})}catch(E){let d=E instanceof Error?E:new Error(String(E)),b=n?.onError?n.onError(d):d;m(v(b,{cause:E}))}})}function ne(e){return typeof e=="object"&&e!==null&&"on"in e&&"off"in e&&typeof e.on=="function"&&typeof e.off=="function"}function te(e){return typeof e=="object"&&e!==null&&"addEventListener"in e&&"removeEventListener"in e&&typeof e.addEventListener=="function"&&typeof e.removeEventListener=="function"}function Ee(e,n,m){return new Promise(E=>{let d,b=!1,w=ne(e)?(f,R)=>e.on(f,R):te(e)?(f,R)=>e.addEventListener(f,R):null,I=ne(e)?(f,R)=>e.off(f,R):te(e)?(f,R)=>e.removeEventListener(f,R):null;if(!w||!I){E(v({type:"INVALID_EMITTER",message:"Object does not have on/off or addEventListener/removeEventListener"}));return}let o=(...f)=>{b||(b=!0,C(),E(F(f[0])))},j=(...f)=>{if(b)return;b=!0,C();let R=f[0],u=m?.onError?m.onError(R):R;E(v(u,{cause:R}))},C=()=>{d&&clearTimeout(d),I(n.success,o),n.error&&I(n.error,j)};w(n.success,o),n.error&&w(n.error,j),n.timeout&&(d=setTimeout(()=>{if(b)return;b=!0,C();let f={type:"EVENT_TIMEOUT",event:n.success,timeoutMs:n.timeout};E(v(f))},n.timeout))})}function me(e){return ne(e)||te(e)}0&&(module.exports={fromCallback,fromEvent,isEventEmitterLike,isEventTimeoutError,isInvalidEmitterError});
1
+ "use strict";var z=Object.defineProperty;var Te=Object.getOwnPropertyDescriptor;var ke=Object.getOwnPropertyNames;var Re=Object.prototype.hasOwnProperty;var Ce=(e,n)=>{for(var E in n)z(e,E,{get:n[E],enumerable:!0})},xe=(e,n,E,y)=>{if(n&&typeof n=="object"||typeof n=="function")for(let T of ke(n))!Re.call(e,T)&&T!==E&&z(e,T,{get:()=>n[T],enumerable:!(y=Te(n,T))||y.enumerable});return e};var ge=e=>xe(z({},"__esModule",{value:!0}),e);var Fe={};Ce(Fe,{fromCallback:()=>me,fromEvent:()=>ye,isEventEmitterLike:()=>we,isEventTimeoutError:()=>ce,isInvalidEmitterError:()=>Ee});module.exports=ge(Fe);function be(e){return{_tag:"Duration",millis:e}}function Se(e){return{_tag:"Duration",millis:e*1e3}}function ve(e){return{_tag:"Duration",millis:e*60*1e3}}function Ae(e){return{_tag:"Duration",millis:e*60*60*1e3}}function he(e){return{_tag:"Duration",millis:e*24*60*60*1e3}}function se(e){return e.millis}function ue(e){let n=e.trim().match(/^(\d+(?:\.\d+)?)\s*(ms|s|m|h|d)$/i);if(!n)return;let E=parseFloat(n[1]);switch(n[2].toLowerCase()){case"ms":return be(E);case"s":return Se(E);case"m":return ve(E);case"h":return Ae(E);case"d":return he(E);default:return}}var F=e=>({ok:!0,value:e}),A=(e,n)=>({ok:!1,error:e,...n?.cause!==void 0?{cause:n.cause}:{}});var _e=e=>typeof e=="object"&&e!==null&&e.type==="UNEXPECTED_ERROR";var W=Symbol.for("step_timeout_marker");function Z(e){return typeof e!="object"||e===null?!1:e.type==="STEP_TIMEOUT"?!0:W in e}function Pe(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(W in e)return e[W]}}var pe=Symbol("early-exit");function De(e,n){return{[pe]:!0,error:e,meta:n}}function Ie(e){return typeof e=="object"&&e!==null&&e[pe]===!0}var le=Symbol("mapper-exception");function Me(e){return{[le]:!0,thrown:e}}function Oe(e){return typeof e=="object"&&e!==null&&e[le]===!0}function Ue(e){return typeof e=="string"?{name:e}:e??{}}function Q(e,n){let{backoff:E,initialDelay:y,maxDelay:T,jitter:v}=n,f;switch(E){case"fixed":f=y;break;case"linear":f=y*e;break;case"exponential":f=y*Math.pow(2,e-1);break}if(f=Math.min(f,T),v){let P=f*.25*Math.random();f=f+P}return Math.floor(f)}function ee(e){return new Promise(n=>setTimeout(n,e))}var ie=Symbol("timeout"),J=Symbol("timeout-option");function Ke(e){return typeof e=="object"&&e!==null&&e[J]===!0}async function Ne(e,n,E,y){let T=new AbortController,v=n.onTimeout??"error",f=()=>typeof v=="function"?v({name:E.name,key:E.key,ms:n.ms}):n.error??{type:"STEP_TIMEOUT",stepName:E.name,stepKey:E.key,timeoutMs:n.ms,attempt:E.attempt},P;y?.aborted&&T.abort(y.reason);let s;y&&!y.aborted&&(s=()=>T.abort(y.reason),y.addEventListener("abort",s,{once:!0}));let L=new Promise((k,R)=>{P=setTimeout(()=>{if(v!=="disconnect"&&T.abort(),v==="option"){R({[J]:!0,ms:n.ms});return}R({[ie]:!0,error:f()})},n.ms)}),x;n.signal?x=Promise.resolve(e(T.signal)):x=Promise.resolve(e());try{return await Promise.race([x,L])}catch(k){if(typeof k=="object"&&k!==null&&k[J]===!0)throw{[J]:!0,ms:n.ms};if(typeof k=="object"&&k!==null&&k[ie]===!0){v==="disconnect"&&x.catch(()=>{});let R=k.error;if(typeof R=="object"&&R!==null&&R.type!=="STEP_TIMEOUT"){let i={timeoutMs:n.ms,stepName:E.name,stepKey:E.key,attempt:E.attempt};W in R?R[W]=i:Object.defineProperty(R,W,{value:i,enumerable:!1,writable:!0,configurable:!1})}throw R}throw k}finally{clearTimeout(P),s&&y&&y.removeEventListener("abort",s)}}var B={backoff:"exponential",initialDelay:100,maxDelay:3e4,jitter:!0,retryOn:()=>!0,onRetry:()=>{}};async function ae(e,n){let{onError:E,onEvent:y,catchUnexpected:T,workflowId:v,context:f,_workflowSignal:P}=n&&typeof n=="object"?n:{},s=v??crypto.randomUUID(),L=!E&&!T,x=[],k=0,R=o=>o??`step_${++k}`,i=o=>{let _=o.context!==void 0||f===void 0?o:{...o,context:f};if(_.type==="step_success"){let I=_.stepId;for(let V=x.length-1;V>=0;V--){let O=x[V];if(O.type==="race"&&!O.winnerId){O.winnerId=I;break}}}y?.(_,f)},U=De,re=o=>Ie(o),Y=(o,_)=>L?_?.origin==="result"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:o,..._.resultCause!==void 0?{cause:_.resultCause}:{}}}:_?.origin==="throw"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"throw",error:o,thrown:_.thrown}}:{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:o}}:o,de=o=>({type:"UNEXPECTED_ERROR",cause:o.meta.origin==="result"?{type:"STEP_FAILURE",origin:"result",error:o.error,...o.meta.resultCause!==void 0?{cause:o.meta.resultCause}:{}}:{type:"STEP_FAILURE",origin:"throw",error:o.error,thrown:o.meta.thrown}});try{let _=function(l,a){let p=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let t=performance.now(),r=!1;x.push({scopeId:p,type:"parallel"});let w=()=>{if(r)return;r=!0;let c=x.findIndex(d=>d.scopeId===p);c!==-1&&x.splice(c,1),i({type:"scope_end",workflowId:s,scopeId:p,ts:Date.now(),durationMs:performance.now()-t})};i({type:"scope_start",workflowId:s,scopeId:p,scopeType:"parallel",name:l,ts:Date.now()});try{let c=await a();if(w(),!c.ok)throw E?.(c.error,l,f),U(c.error,{origin:"result",resultCause:c.cause});return c.value}catch(c){throw w(),c}})()},I=function(l,a){let p=Object.keys(l),t=a.name??`Parallel(${p.join(", ")})`,r=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let w=performance.now(),c=!1;x.push({scopeId:r,type:"parallel"});let d=()=>{if(c)return;c=!0;let u=x.findIndex(C=>C.scopeId===r);u!==-1&&x.splice(u,1),i({type:"scope_end",workflowId:s,scopeId:r,ts:Date.now(),durationMs:performance.now()-w})};i({type:"scope_start",workflowId:s,scopeId:r,scopeType:"parallel",name:t,ts:Date.now()});try{let u=await new Promise(b=>{if(p.length===0){b([]);return}let D=!1,q=p.length,S=new Array(p.length);for(let j=0;j<p.length;j++){let M=p[j],X=j;Promise.resolve(l[M]()).catch(K=>A({type:"PROMISE_REJECTED",cause:K},{cause:{type:"PROMISE_REJECTION",reason:K}})).then(K=>{if(!D){if(!K.ok){D=!0,b([{key:M,result:K}]);return}S[X]={key:M,result:K},q--,q===0&&b(S)}})}});d();let C={};for(let{key:b,result:D}of u){if(!D.ok)throw E?.(D.error,b,f),U(D.error,{origin:"result",resultCause:D.cause});C[b]=D.value}return C}catch(u){throw d(),u}})()};var je=_,Le=I;let o=(l,a)=>(async()=>{let p=Ue(a),{name:t,key:r,description:w,retry:c,timeout:d}=p,u=R(r),C=y,b=C?performance.now():0;if(!(typeof l=="function")){if(c&&c.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(d)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 S={attempts:Math.max(1,c?.attempts??1),backoff:c?.backoff??B.backoff,initialDelay:c?.initialDelay??B.initialDelay,maxDelay:c?.maxDelay??B.maxDelay,jitter:c?.jitter??B.jitter,retryOn:c?.retryOn??B.retryOn,onRetry:c?.onRetry??B.onRetry};y&&i({type:"step_start",workflowId:s,stepId:u,stepKey:r,name:t,description:w,ts:Date.now()});let j;for(let g=1;g<=S.attempts;g++){let fe=C?performance.now():0;try{let m;if(typeof l=="function"?d?m=await Ne(l,d,{name:t,key:r,attempt:g},P):m=await l():m=await l,m.ok){let N=performance.now()-b;return i({type:"step_success",workflowId:s,stepId:u,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:N}),r&&i({type:"step_complete",workflowId:s,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:N,result:m}),m.value}if(j=m,g<S.attempts&&S.retryOn(m.error,g)){let N=Q(g,S);i({type:"step_retry",workflowId:s,stepId:u,stepKey:r,name:t,ts:Date.now(),attempt:g+1,maxAttempts:S.attempts,delayMs:N,error:m.error}),S.onRetry(m.error,g,N),await ee(N);continue}S.attempts>1&&i({type:"step_retries_exhausted",workflowId:s,stepId:u,stepKey:r,name:t,ts:Date.now(),durationMs:performance.now()-b,attempts:g,lastError:m.error});break}catch(m){let N=performance.now()-fe;if(Ke(m)){let h=m.ms;i({type:"step_timeout",workflowId:s,stepId:u,stepKey:r,name:t,ts:Date.now(),timeoutMs:h,attempt:g}),i({type:"step_success",workflowId:s,stepId:u,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:performance.now()-b}),r&&i({type:"step_complete",workflowId:s,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:performance.now()-b,result:F(void 0)});return}if(re(m))throw i({type:"step_aborted",workflowId:s,stepId:u,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:N}),m;if(Z(m)){let h=Pe(m),H=d?.ms??h?.timeoutMs??0;if(i({type:"step_timeout",workflowId:s,stepId:u,stepKey:r,name:t,ts:Date.now(),timeoutMs:H,attempt:g}),g<S.attempts&&S.retryOn(m,g)){let G=Q(g,S);i({type:"step_retry",workflowId:s,stepId:u,stepKey:r,name:t,ts:Date.now(),attempt:g+1,maxAttempts:S.attempts,delayMs:G,error:m}),S.onRetry(m,g,G),await ee(G);continue}S.attempts>1&&i({type:"step_retries_exhausted",workflowId:s,stepId:u,stepKey:r,name:t,ts:Date.now(),durationMs:performance.now()-b,attempts:g,lastError:m});let oe=performance.now()-b;throw i({type:"step_error",workflowId:s,stepId:u,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:oe,error:m}),r&&i({type:"step_complete",workflowId:s,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:oe,result:A(m,{cause:m}),meta:{origin:"throw",thrown:m}}),E?.(m,t,f),U(m,{origin:"throw",thrown:m})}if(g<S.attempts&&S.retryOn(m,g)){let h=Q(g,S);i({type:"step_retry",workflowId:s,stepId:u,stepKey:r,name:t,ts:Date.now(),attempt:g+1,maxAttempts:S.attempts,delayMs:h,error:m}),S.onRetry(m,g,h),await ee(h);continue}S.attempts>1&&!Z(m)&&i({type:"step_retries_exhausted",workflowId:s,stepId:u,stepKey:r,name:t,ts:Date.now(),durationMs:performance.now()-b,attempts:g,lastError:m});let $=performance.now()-b;if(T){let h;try{h=T(m)}catch(H){throw Me(H)}throw i({type:"step_error",workflowId:s,stepId:u,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:$,error:h}),r&&i({type:"step_complete",workflowId:s,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:$,result:A(h,{cause:m}),meta:{origin:"throw",thrown:m}}),E?.(h,t,f),U(h,{origin:"throw",thrown:m})}else{let h={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:m}};throw i({type:"step_error",workflowId:s,stepId:u,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:$,error:h}),r&&i({type:"step_complete",workflowId:s,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:$,result:A(h,{cause:m}),meta:{origin:"throw",thrown:m}}),m}}}let M=j,X=performance.now()-b,K=Y(M.error,{origin:"result",resultCause:M.cause});throw i({type:"step_error",workflowId:s,stepId:u,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:X,error:K}),r&&i({type:"step_complete",workflowId:s,stepKey:r,name:t,description:w,ts:Date.now(),durationMs:X,result:M,meta:{origin:"result",resultCause:M.cause}}),E?.(M.error,t,f),U(M.error,{origin:"result",resultCause:M.cause})})();o.try=(l,a)=>{let p=a.name,t=a.key,r=R(t),w="error"in a?()=>a.error:a.onError,c=y;return(async()=>{let d=c?performance.now():0;y&&i({type:"step_start",workflowId:s,stepId:r,stepKey:t,name:p,ts:Date.now()});try{let u=await l(),C=performance.now()-d;return i({type:"step_success",workflowId:s,stepId:r,stepKey:t,name:p,ts:Date.now(),durationMs:C}),t&&i({type:"step_complete",workflowId:s,stepKey:t,name:p,ts:Date.now(),durationMs:C,result:F(u)}),u}catch(u){let C=w(u),b=performance.now()-d,D=Y(C,{origin:"throw",thrown:u});throw i({type:"step_error",workflowId:s,stepId:r,stepKey:t,name:p,ts:Date.now(),durationMs:b,error:D}),t&&i({type:"step_complete",workflowId:s,stepKey:t,name:p,ts:Date.now(),durationMs:b,result:A(C,{cause:u}),meta:{origin:"throw",thrown:u}}),E?.(C,p,f),U(C,{origin:"throw",thrown:u})}})()},o.fromResult=(l,a)=>{let p=a.name,t=a.key,r=R(t),w="error"in a?()=>a.error:a.onError,c=y;return(async()=>{let d=c?performance.now():0;y&&i({type:"step_start",workflowId:s,stepId:r,stepKey:t,name:p,ts:Date.now()});let u=await l();if(u.ok){let C=performance.now()-d;return i({type:"step_success",workflowId:s,stepId:r,stepKey:t,name:p,ts:Date.now(),durationMs:C}),t&&i({type:"step_complete",workflowId:s,stepKey:t,name:p,ts:Date.now(),durationMs:C,result:F(u.value)}),u.value}else{let C=w(u.error),b=performance.now()-d,D=Y(C,{origin:"result",resultCause:u.error});throw i({type:"step_error",workflowId:s,stepId:r,stepKey:t,name:p,ts:Date.now(),durationMs:b,error:D}),t&&i({type:"step_complete",workflowId:s,stepKey:t,name:p,ts:Date.now(),durationMs:b,result:A(C,{cause:u.error}),meta:{origin:"result",resultCause:u.error}}),E?.(C,p,f),U(C,{origin:"result",resultCause:u.error})}})()},o.retry=(l,a)=>o(l,{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}),o.withTimeout=(l,a)=>o(l,{name:a.name,key:a.key,timeout:a}),o.sleep=(l,a)=>{let p=typeof l=="string"?ue(l):l;if(!p)throw new Error(`step.sleep: invalid duration '${l}'`);let t=se(p),r=a?.name??`sleep ${typeof l=="string"?l:`${t}ms`}`;return o(async()=>{if(P?.aborted){let w=new Error("Sleep aborted");throw w.name="AbortError",w}return new Promise((w,c)=>{let d={timeoutId:void 0},u=()=>{d.timeoutId&&clearTimeout(d.timeoutId);let C=new Error("Sleep aborted");C.name="AbortError",c(C)};P?.addEventListener("abort",u,{once:!0}),d.timeoutId=setTimeout(()=>{P?.removeEventListener("abort",u),w(F(void 0))},t)})},{name:r,key:a?.key,description:a?.description})},o.parallel=((...l)=>{if(typeof l[0]=="string"){let a=l[0],p=l[1];return _(a,p)}else{let a=l[0],p=l[1]??{};return I(a,p)}}),o.race=(l,a)=>{let p=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let t=performance.now(),r=!1,w={scopeId:p,type:"race",winnerId:void 0};x.push(w);let c=()=>{if(r)return;r=!0;let d=x.findIndex(u=>u.scopeId===p);d!==-1&&x.splice(d,1),i({type:"scope_end",workflowId:s,scopeId:p,ts:Date.now(),durationMs:performance.now()-t,winnerId:w.winnerId})};i({type:"scope_start",workflowId:s,scopeId:p,scopeType:"race",name:l,ts:Date.now()});try{let d=await a();if(c(),!d.ok)throw E?.(d.error,l,f),U(d.error,{origin:"result",resultCause:d.cause});return d.value}catch(d){throw c(),d}})()},o.allSettled=(l,a)=>{let p=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let t=performance.now(),r=!1;x.push({scopeId:p,type:"allSettled"});let w=()=>{if(r)return;r=!0;let c=x.findIndex(d=>d.scopeId===p);c!==-1&&x.splice(c,1),i({type:"scope_end",workflowId:s,scopeId:p,ts:Date.now(),durationMs:performance.now()-t})};i({type:"scope_start",workflowId:s,scopeId:p,scopeType:"allSettled",name:l,ts:Date.now()});try{let c=await a();if(w(),!c.ok)throw E?.(c.error,l,f),U(c.error,{origin:"result",resultCause:c.cause});return c.value}catch(c){throw w(),c}})()};let O=await e(o);if(process.env.NODE_ENV!=="production"&&O!==null&&typeof O=="object"&&"ok"in O&&typeof O.ok=="boolean"){let l=O;(l.ok===!0&&"value"in l||l.ok===!1&&"error"in l)&&console.warn(`awaitly: Workflow executor returned a Result-like object. Return raw values, not ok() or err().
2
+
3
+ Incorrect: return ok({ data });
4
+ Correct: return { data };
5
+
6
+ See: https://awaitly.dev/guides/troubleshooting/#returning-ok-from-workflow-executor-double-wrapping`)}return F(O)}catch(o){if(Oe(o))throw o.thrown;if(re(o)){let I=o.meta.origin==="throw"?o.meta.thrown:o.meta.resultCause;if(T||E)return A(o.error,{cause:I});if(_e(o.error))return A(o.error,{cause:I});if(Z(o.error))return A(o.error,{cause:I});let V=de(o);return A(V,{cause:I})}if(T){let I=T(o);return E?.(I,"unexpected",f),A(I,{cause:o})}let _={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:o}};return E?.(_,"unexpected",f),A(_,{cause:o})}}ae.strict=(e,n)=>ae(e,n);function ce(e){return typeof e=="object"&&e!==null&&e.type==="EVENT_TIMEOUT"}function Ee(e){return typeof e=="object"&&e!==null&&e.type==="INVALID_EMITTER"}function me(e,n){return new Promise(E=>{try{e((y,T)=>{if(y){let v=n?.onError?n.onError(y):y;E(A(v,{cause:y}))}else E(F(T))})}catch(y){let T=y instanceof Error?y:new Error(String(y)),v=n?.onError?n.onError(T):T;E(A(v,{cause:y}))}})}function ne(e){return typeof e=="object"&&e!==null&&"on"in e&&"off"in e&&typeof e.on=="function"&&typeof e.off=="function"}function te(e){return typeof e=="object"&&e!==null&&"addEventListener"in e&&"removeEventListener"in e&&typeof e.addEventListener=="function"&&typeof e.removeEventListener=="function"}function ye(e,n,E){return new Promise(y=>{let T,v=!1,f=ne(e)?(k,R)=>e.on(k,R):te(e)?(k,R)=>e.addEventListener(k,R):null,P=ne(e)?(k,R)=>e.off(k,R):te(e)?(k,R)=>e.removeEventListener(k,R):null;if(!f||!P){y(A({type:"INVALID_EMITTER",message:"Object does not have on/off or addEventListener/removeEventListener"}));return}let s=(...k)=>{v||(v=!0,x(),y(F(k[0])))},L=(...k)=>{if(v)return;v=!0,x();let R=k[0],i=E?.onError?E.onError(R):R;y(A(i,{cause:R}))},x=()=>{T&&clearTimeout(T),P(n.success,s),n.error&&P(n.error,L)};f(n.success,s),n.error&&f(n.error,L),n.timeout&&(T=setTimeout(()=>{if(v)return;v=!0,x();let k={type:"EVENT_TIMEOUT",event:n.success,timeoutMs:n.timeout};y(A(k))},n.timeout))})}function we(e){return ne(e)||te(e)}0&&(module.exports={fromCallback,fromEvent,isEventEmitterLike,isEventTimeoutError,isInvalidEmitterError});
2
7
  //# sourceMappingURL=adapters.cjs.map