awaitly 1.34.0 → 2.0.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/dist/{duration.d.ts → di-BDlT7InM.d.cts} +15 -1
- package/dist/{duration.d.cts → di-BbFFfO8y.d.ts} +15 -1
- package/dist/errors-DtXvrCiO.d.cts +708 -0
- package/dist/errors-DtXvrCiO.d.ts +708 -0
- package/dist/index.cjs +4594 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1970 -141
- package/dist/index.d.ts +1970 -141
- package/dist/index.js +4398 -1
- package/dist/index.js.map +1 -1
- package/dist/result.cjs +641 -1
- package/dist/result.cjs.map +1 -1
- package/dist/result.d.cts +35 -5
- package/dist/result.d.ts +35 -5
- package/dist/result.js +561 -1
- package/dist/result.js.map +1 -1
- package/dist/testing.cjs +4202 -8
- package/dist/testing.cjs.map +1 -1
- package/dist/testing.d.cts +2 -6
- package/dist/testing.d.ts +2 -6
- package/dist/testing.js +4154 -8
- package/dist/testing.js.map +1 -1
- package/dist/{run-entry-D2MmJFj9.d.cts → types-B8NfNRGX.d.ts} +1152 -1499
- package/dist/{run-entry-Dduz-is2.d.ts → types-BZ2f4MRR.d.cts} +1152 -1499
- package/dist/workflow.cjs +7096 -6
- package/dist/workflow.cjs.map +1 -1
- package/dist/workflow.d.cts +3346 -22
- package/dist/workflow.d.ts +3346 -22
- package/dist/workflow.js +6929 -6
- package/dist/workflow.js.map +1 -1
- package/package.json +13 -178
- package/dist/adapters.cjs +0 -7
- package/dist/adapters.cjs.map +0 -1
- package/dist/adapters.d.cts +0 -179
- package/dist/adapters.d.ts +0 -179
- package/dist/adapters.js +0 -7
- package/dist/adapters.js.map +0 -1
- package/dist/batch.cjs +0 -7
- package/dist/batch.cjs.map +0 -1
- package/dist/batch.d.cts +0 -200
- package/dist/batch.d.ts +0 -200
- package/dist/batch.js +0 -7
- package/dist/batch.js.map +0 -1
- package/dist/bind-deps.cjs +0 -2
- package/dist/bind-deps.cjs.map +0 -1
- package/dist/bind-deps.d.cts +0 -28
- package/dist/bind-deps.d.ts +0 -28
- package/dist/bind-deps.js +0 -2
- package/dist/bind-deps.js.map +0 -1
- package/dist/cache.cjs +0 -2
- package/dist/cache.cjs.map +0 -1
- package/dist/cache.d.cts +0 -269
- package/dist/cache.d.ts +0 -269
- package/dist/cache.js +0 -2
- package/dist/cache.js.map +0 -1
- package/dist/circuit-breaker.cjs +0 -7
- package/dist/circuit-breaker.cjs.map +0 -1
- package/dist/circuit-breaker.d.cts +0 -211
- package/dist/circuit-breaker.d.ts +0 -211
- package/dist/circuit-breaker.js +0 -7
- package/dist/circuit-breaker.js.map +0 -1
- package/dist/conditional.cjs +0 -2
- package/dist/conditional.cjs.map +0 -1
- package/dist/conditional.d.cts +0 -252
- package/dist/conditional.d.ts +0 -252
- package/dist/conditional.js +0 -2
- package/dist/conditional.js.map +0 -1
- package/dist/core.cjs +0 -7
- package/dist/core.cjs.map +0 -1
- package/dist/core.d.cts +0 -5
- package/dist/core.d.ts +0 -5
- package/dist/core.js +0 -7
- package/dist/core.js.map +0 -1
- package/dist/di-COl5oFnR.d.cts +0 -15
- package/dist/di-CyDj_JyZ.d.ts +0 -15
- package/dist/diagnostics.cjs +0 -8
- package/dist/diagnostics.cjs.map +0 -1
- package/dist/diagnostics.d.cts +0 -68
- package/dist/diagnostics.d.ts +0 -68
- package/dist/diagnostics.js +0 -8
- package/dist/diagnostics.js.map +0 -1
- package/dist/durable.cjs +0 -11
- package/dist/durable.cjs.map +0 -1
- package/dist/durable.d.cts +0 -9
- package/dist/durable.d.ts +0 -9
- package/dist/durable.js +0 -11
- package/dist/durable.js.map +0 -1
- package/dist/duration.cjs +0 -2
- package/dist/duration.cjs.map +0 -1
- package/dist/duration.js +0 -2
- package/dist/duration.js.map +0 -1
- package/dist/engine.cjs +0 -11
- package/dist/engine.cjs.map +0 -1
- package/dist/engine.d.cts +0 -115
- package/dist/engine.d.ts +0 -115
- package/dist/engine.js +0 -11
- package/dist/engine.js.map +0 -1
- package/dist/errors.cjs +0 -2
- package/dist/errors.cjs.map +0 -1
- package/dist/errors.d.cts +0 -361
- package/dist/errors.d.ts +0 -361
- package/dist/errors.js +0 -2
- package/dist/errors.js.map +0 -1
- package/dist/fetch.cjs +0 -7
- package/dist/fetch.cjs.map +0 -1
- package/dist/fetch.d.cts +0 -86
- package/dist/fetch.d.ts +0 -86
- package/dist/fetch.js +0 -7
- package/dist/fetch.js.map +0 -1
- package/dist/flow.cjs +0 -7
- package/dist/flow.cjs.map +0 -1
- package/dist/flow.d.cts +0 -163
- package/dist/flow.d.ts +0 -163
- package/dist/flow.js +0 -7
- package/dist/flow.js.map +0 -1
- package/dist/functional.cjs +0 -2
- package/dist/functional.cjs.map +0 -1
- package/dist/functional.d.cts +0 -444
- package/dist/functional.d.ts +0 -444
- package/dist/functional.js +0 -2
- package/dist/functional.js.map +0 -1
- package/dist/guards-BodHXLzX.d.cts +0 -72
- package/dist/guards-CeWoQ8fn.d.ts +0 -72
- package/dist/hitl-BPE_1UiM.d.cts +0 -468
- package/dist/hitl-byp570uC.d.ts +0 -468
- package/dist/hitl.cjs +0 -7
- package/dist/hitl.cjs.map +0 -1
- package/dist/hitl.d.cts +0 -442
- package/dist/hitl.d.ts +0 -442
- package/dist/hitl.js +0 -7
- package/dist/hitl.js.map +0 -1
- package/dist/index-BYT3amEz.d.ts +0 -417
- package/dist/index-C_ak66jy.d.cts +0 -417
- package/dist/match-entry-DjI2bLpD.d.cts +0 -209
- package/dist/match-entry-DjI2bLpD.d.ts +0 -209
- package/dist/match.cjs +0 -2
- package/dist/match.cjs.map +0 -1
- package/dist/match.d.cts +0 -1
- package/dist/match.d.ts +0 -1
- package/dist/match.js +0 -2
- package/dist/match.js.map +0 -1
- package/dist/otel.cjs +0 -2
- package/dist/otel.cjs.map +0 -1
- package/dist/otel.d.cts +0 -188
- package/dist/otel.d.ts +0 -188
- package/dist/otel.js +0 -2
- package/dist/otel.js.map +0 -1
- package/dist/persistence-entry-DOMx3woy.d.ts +0 -822
- package/dist/persistence-entry-ymCA4iDu.d.cts +0 -822
- package/dist/persistence.cjs +0 -2
- package/dist/persistence.cjs.map +0 -1
- package/dist/persistence.d.cts +0 -7
- package/dist/persistence.d.ts +0 -7
- package/dist/persistence.js +0 -2
- package/dist/persistence.js.map +0 -1
- package/dist/policies.cjs +0 -2
- package/dist/policies.cjs.map +0 -1
- package/dist/policies.d.cts +0 -379
- package/dist/policies.d.ts +0 -379
- package/dist/policies.js +0 -2
- package/dist/policies.js.map +0 -1
- package/dist/ratelimit.cjs +0 -7
- package/dist/ratelimit.cjs.map +0 -1
- package/dist/ratelimit.d.cts +0 -458
- package/dist/ratelimit.d.ts +0 -458
- package/dist/ratelimit.js +0 -7
- package/dist/ratelimit.js.map +0 -1
- package/dist/reliability.cjs +0 -11
- package/dist/reliability.cjs.map +0 -1
- package/dist/reliability.d.cts +0 -11
- package/dist/reliability.d.ts +0 -11
- package/dist/reliability.js +0 -11
- package/dist/reliability.js.map +0 -1
- package/dist/resolver.cjs +0 -7
- package/dist/resolver.cjs.map +0 -1
- package/dist/resolver.d.cts +0 -68
- package/dist/resolver.d.ts +0 -68
- package/dist/resolver.js +0 -7
- package/dist/resolver.js.map +0 -1
- package/dist/resource.cjs +0 -7
- package/dist/resource.cjs.map +0 -1
- package/dist/resource.d.cts +0 -174
- package/dist/resource.d.ts +0 -174
- package/dist/resource.js +0 -7
- package/dist/resource.js.map +0 -1
- package/dist/result/retry.cjs +0 -2
- package/dist/result/retry.cjs.map +0 -1
- package/dist/result/retry.d.cts +0 -70
- package/dist/result/retry.d.ts +0 -70
- package/dist/result/retry.js +0 -2
- package/dist/result/retry.js.map +0 -1
- package/dist/retry.cjs +0 -2
- package/dist/retry.cjs.map +0 -1
- package/dist/retry.d.cts +0 -388
- package/dist/retry.d.ts +0 -388
- package/dist/retry.js +0 -2
- package/dist/retry.js.map +0 -1
- package/dist/run.cjs +0 -7
- package/dist/run.cjs.map +0 -1
- package/dist/run.d.cts +0 -4
- package/dist/run.d.ts +0 -4
- package/dist/run.js +0 -7
- package/dist/run.js.map +0 -1
- package/dist/saga.cjs +0 -11
- package/dist/saga.cjs.map +0 -1
- package/dist/saga.d.cts +0 -164
- package/dist/saga.d.ts +0 -164
- package/dist/saga.js +0 -11
- package/dist/saga.js.map +0 -1
- package/dist/singleflight.cjs +0 -2
- package/dist/singleflight.cjs.map +0 -1
- package/dist/singleflight.d.cts +0 -145
- package/dist/singleflight.d.ts +0 -145
- package/dist/singleflight.js +0 -2
- package/dist/singleflight.js.map +0 -1
- package/dist/slugs.cjs +0 -2
- package/dist/slugs.cjs.map +0 -1
- package/dist/slugs.d.cts +0 -67
- package/dist/slugs.d.ts +0 -67
- package/dist/slugs.js +0 -2
- package/dist/slugs.js.map +0 -1
- package/dist/streaming.cjs +0 -9
- package/dist/streaming.cjs.map +0 -1
- package/dist/streaming.d.cts +0 -596
- package/dist/streaming.d.ts +0 -596
- package/dist/streaming.js +0 -9
- package/dist/streaming.js.map +0 -1
- package/dist/tagged-error.cjs +0 -2
- package/dist/tagged-error.cjs.map +0 -1
- package/dist/tagged-error.d.cts +0 -275
- package/dist/tagged-error.d.ts +0 -275
- package/dist/tagged-error.js +0 -2
- package/dist/tagged-error.js.map +0 -1
- package/dist/types-DQmzO9f4.d.ts +0 -323
- package/dist/types-qBUOYi-4.d.cts +0 -323
- package/dist/webhook.cjs +0 -7
- package/dist/webhook.cjs.map +0 -1
- package/dist/webhook.d.cts +0 -499
- package/dist/webhook.d.ts +0 -499
- package/dist/webhook.js +0 -7
- package/dist/webhook.js.map +0 -1
package/dist/resource.cjs
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";var le=Object.defineProperty;var De=Object.getOwnPropertyDescriptor;var Ue=Object.getOwnPropertyNames;var Ne=Object.prototype.hasOwnProperty;var Ke=(r,e)=>{for(var a in e)le(r,a,{get:e[a],enumerable:!0})},je=(r,e,a,y)=>{if(e&&typeof e=="object"||typeof e=="function")for(let _ of Ue(e))!Ne.call(r,_)&&_!==a&&le(r,_,{get:()=>e[_],enumerable:!(y=De(e,_))||y.enumerable});return r};var Fe=r=>je(le({},"__esModule",{value:!0}),r);var et={};Ke(et,{createResource:()=>Ze,createResourceScope:()=>ve,isResourceCleanupError:()=>de,withScope:()=>Qe});module.exports=Fe(et);var Le={"step-require-id":"step-require-id","step-no-immediate-execution":"step-no-immediate-execution","step-require-thunk-for-key":"step-require-thunk-for-key","step-no-bare-await":"step-no-bare-await","step-no-try-catch-wrap":"step-no-try-catch-wrap","step-stable-cache-keys":"step-stable-cache-keys","workflow-no-floating":"workflow-no-floating","workflow-options-position":"workflow-options-position","workflow-callback-shape":"workflow-callback-shape","workflow-no-callable-form":"workflow-no-callable-form","workflow-no-dynamic-import":"workflow-no-dynamic-import","result-no-floating":"result-no-floating","result-require-handling":"result-require-handling","result-no-double-wrap":"result-no-double-wrap","result-no-manual-propagation":"result-no-manual-propagation","result-no-direct-ok-err":"result-no-direct-ok-err","error-check-unexpected-first":"error-check-unexpected-first","error-access-cause":"error-access-cause","error-normalize":"error-normalize","error-no-throw-in-deps":"error-no-throw-in-deps","concurrency-no-promise-all":"concurrency-no-promise-all","concurrency-no-promise-race":"concurrency-no-promise-race","concurrency-no-promise-allsettled":"concurrency-no-promise-allsettled","runtime-step-timeout":"runtime-step-timeout","runtime-step-aborted":"runtime-step-aborted","runtime-retry-exhausted":"runtime-retry-exhausted","runtime-rate-limit":"runtime-rate-limit","runtime-circuit-open":"runtime-circuit-open","runtime-unexpected":"runtime-unexpected","runtime-resolver-not-found":"runtime-resolver-not-found","runtime-saga-compensation":"runtime-saga-compensation"};function Ee(r){return`https://jagreehal.github.io/awaitly/rules/#${r}`}var st=Object.keys(Le);var ee=class extends Error{_tag};function K(r,e){return class extends ee{_tag=r;constructor(a,y){let _=e?.message?e.message(a??{}):r;if(super(_),this.name=r,e?.slug!==void 0){if(!e.hint)throw new TypeError(`TaggedError: 'hint' is required when 'slug' is set (slug: "${e.slug}")`);Object.defineProperty(this,"code",{value:e.slug,enumerable:!0,writable:!1,configurable:!1}),Object.defineProperty(this,"hint",{value:e.hint,enumerable:!0,writable:!1,configurable:!1}),Object.defineProperty(this,"docsUrl",{value:Ee(e.slug),enumerable:!0,writable:!1,configurable:!1})}if(Object.setPrototypeOf(this,new.target.prototype),a&&typeof a=="object"){let h;if(e?.slug!==void 0){let{_tag:i,name:U,message:M,stack:N,code:$,hint:c,docsUrl:I,...V}=a;h=V}else{let{_tag:i,name:U,message:M,stack:N,...$}=a;h=$}let S=Object.prototype.hasOwnProperty.call(h,"cause"),w=S?h.cause:void 0;S&&delete h.cause;let O=y?.cause!==void 0;if(S&&O)throw new TypeError("TaggedError: cannot provide 'cause' in props when also setting ErrorOptions.cause");Object.assign(this,h),S&&(this.cause=w),O&&(this.cause=y?.cause)}else y?.cause!==void 0&&(this.cause=y.cause)}}}Object.defineProperty(K,Symbol.hasInstance,{value:r=>r instanceof ee});(_=>{function r(h){return h instanceof Error}_.isError=r;function e(h){return h instanceof ee}_.isTaggedError=e;function a(h,S){let w=h._tag,O=S[w];return O(h)}_.match=a;function y(h,S,w){let O=h._tag,i=S[O];return i?i(h):w(h)}_.matchPartial=y})(K||={});var ye=class extends K("TimeoutError",{slug:"runtime-step-timeout",hint:"Increase the step's timeout option, or check why the upstream operation is slow.",message:e=>e.operation?`TimeoutError: ${e.operation} timed out after ${e.ms}ms`:`TimeoutError: Operation timed out after ${e.ms}ms`}){},we=class extends K("RetryExhaustedError",{slug:"runtime-retry-exhausted",hint:"All retry attempts failed. Inspect lastError and decide whether to surface it or compensate.",message:e=>e.operation?`RetryExhaustedError: ${e.operation} failed after ${e.attempts} attempts`:`RetryExhaustedError: Operation failed after ${e.attempts} attempts`}){},fe=class extends K("RateLimitError",{slug:"runtime-rate-limit",hint:"Wait retryAfterMs before retrying, or apply step.cache to deduplicate calls.",message:e=>e.limiterName?`RateLimitError: Rate limit exceeded for ${e.limiterName}${e.retryAfterMs?`, retry after ${e.retryAfterMs}ms`:""}`:`RateLimitError: Rate limit exceeded${e.retryAfterMs?`, retry after ${e.retryAfterMs}ms`:""}`}){},Te=class extends K("CircuitBreakerOpenError",{slug:"runtime-circuit-open",hint:"The circuit is open. Wait for it to half-open or fall back to a degraded path.",message:e=>`CircuitBreakerOpenError: Circuit ${e.circuitName} is ${e.state??"OPEN"}${e.retryAfterMs?`, retry after ${Math.ceil(e.retryAfterMs/1e3)}s`:""}`}){},ge=class extends K("ValidationError",{message:e=>`ValidationError: Invalid ${e.field} - ${e.reason}`}){},ke=class extends K("NotFoundError",{message:e=>e.id?`NotFoundError: ${e.resource} with id ${e.id} not found`:`NotFoundError: ${e.resource} not found`}){},Re=class extends K("UnauthorizedError",{message:e=>e.reason?`UnauthorizedError: ${e.reason}`:e.action&&e.resource?`UnauthorizedError: Not authorized to ${e.action} ${e.resource}`:"UnauthorizedError: Access denied"}){},xe=class extends K("NetworkError",{message:e=>e.url?`NetworkError: ${e.reason} (${e.url})`:`NetworkError: ${e.reason}`}){},he=class extends K("CompensationError",{slug:"runtime-saga-compensation",hint:"A saga compensation step failed. Inspect compensationError and ensure compensation is idempotent.",message:e=>`CompensationError: Failed to compensate step ${e.step}`}){},ne=class extends K("UnexpectedError",{slug:"runtime-unexpected",hint:"An unexpected exception escaped a step. Inspect cause; consider returning a typed Result instead of throwing.",message:e=>`UnexpectedError: ${e.cause instanceof Error?e.cause.message:String(e.cause??"unknown")}`}){};function Be(r){let e=r.trim().match(/^(\d+(?:\.\d+)?)\s*(ms|s|m|h|d)$/i);if(!e)return;let a=parseFloat(e[1]),y=e[2].toLowerCase();return{_tag:"Duration",millis:a*({ms:1,s:1e3,m:6e4,h:36e5,d:864e5}[y]??1)}}function $e(r){return new ne({cause:r})}function B(r){return{ok:!0,value:r}}function D(r,e){let a=e?.cause;return{ok:!1,error:r,...a!==void 0?{cause:a}:{}}}function Ve(r){if(r==null)return"unknown";if(typeof r=="string")return r.trim()||"unknown";if(typeof r=="object"){let e=r;if(typeof e._tag=="string"){let a=e._tag.trim();if(a)return a}if(typeof e.tag=="string"){let a=e.tag.trim();if(a)return a}if(typeof e.code=="string"){let a=e.code.trim();if(a)return a}else if(typeof e.code=="number")return String(e.code);if(r instanceof Error&&r.name){let a=r.name.trim();if(a)return a}}return"unknown"}function He(r,e){if(!(!e||!r))return e[r]}function We(r){let{intent:e,domain:a,owner:y,tags:_,stateChanges:h,emits:S,calls:w}=r;if(!e&&!a&&!y&&!_?.length&&!h?.length&&!S?.length&&!w?.length)return;let O={};return e&&(O.intent=e),a&&(O.domain=a),y&&(O.owner=y),_?.length&&(O.tags=_),h?.length&&(O.stateChanges=h),S?.length&&(O.emits=S),w?.length&&(O.calls=w),O}function j(r,e,a,y,_){let h=Ve(r),S=He(h,e),w={tag:h,origin:a};return S!==void 0&&(w.classification=S),y!==void 0&&(w.attempt=y),_!==void 0&&(w.cumulativeDurationMs=_),w}var Q=Symbol.for("step_timeout_marker");function Ce(r){return typeof r!="object"||r===null?!1:r.type==="STEP_TIMEOUT"?!0:Q in r}function qe(r){if(!(typeof r!="object"||r===null)){if(r.type==="STEP_TIMEOUT"){let e=r;return{timeoutMs:e.timeoutMs,stepName:e.stepName,stepKey:e.stepKey,attempt:e.attempt}}if(Q in r)return r[Q]}}var _e=Symbol("early-exit");function Ye(r,e){return{[_e]:!0,error:r,meta:e}}function ze(r){return typeof r=="object"&&r!==null&&r[_e]===!0}var Pe=Symbol("mapper-exception");function G(r){return{[Pe]:!0,thrown:r}}function Je(r){return typeof r=="object"&&r!==null&&r[Pe]===!0}function pe(r,e){let{backoff:a,initialDelay:y,maxDelay:_,jitter:h}=e,S;switch(a){case"fixed":S=y;break;case"linear":S=y*r;break;case"exponential":S=y*Math.pow(2,r-1);break}if(S=Math.min(S,_),h){let w=S*.25*Math.random();S=S+w}return Math.floor(S)}function me(r){return new Promise(e=>setTimeout(e,r))}var be=Symbol("timeout"),oe=Symbol("timeout-option");function Ge(r){return typeof r=="object"&&r!==null&&r[oe]===!0}async function Xe(r,e,a,y){let _=new AbortController,h=e.onTimeout??"error",S=()=>typeof h=="function"?h({name:a.name,key:a.key,ms:e.ms}):e.error??{type:"STEP_TIMEOUT",stepName:a.name,stepKey:a.key,timeoutMs:e.ms,attempt:a.attempt},w;y?.aborted&&_.abort(y.reason);let O;y&&!y.aborted&&(O=()=>_.abort(y.reason),y.addEventListener("abort",O,{once:!0}));let i=new Promise((M,N)=>{w=setTimeout(()=>{if(h!=="disconnect"&&_.abort(),h==="option"){N({[oe]:!0,ms:e.ms});return}N({[be]:!0,error:S()})},e.ms)}),U;e.signal?U=Promise.resolve(r(_.signal)):U=Promise.resolve(r());try{return await Promise.race([U,i])}catch(M){if(typeof M=="object"&&M!==null&&M[oe]===!0)throw{[oe]:!0,ms:e.ms};if(typeof M=="object"&&M!==null&&M[be]===!0){h==="disconnect"&&U.catch(()=>{});let N=M.error;if(typeof N=="object"&&N!==null&&N.type!=="STEP_TIMEOUT"){let $={timeoutMs:e.ms,stepName:a.name,stepKey:a.key,attempt:a.attempt};Q in N?N[Q]=$:Object.defineProperty(N,Q,{value:$,enumerable:!1,writable:!0,configurable:!1})}throw N}throw M}finally{clearTimeout(w),O&&y&&y.removeEventListener("abort",O)}}var X={backoff:"exponential",initialDelay:100,maxDelay:3e4,jitter:!0,shouldRetry:()=>!0,onRetry:()=>{}};async function Se(r,e){let{onError:a,onEvent:y,catchUnexpected:_,workflowId:h,workflowName:S,context:w,_workflowSignal:O}=e&&typeof e=="object"?e:{},i=h??crypto.randomUUID(),U=_??$e,M=[],N=0,$=p=>p??`step_${++N}`,c=p=>{let F=p.context!==void 0||w===void 0?p:{...p,context:w},q=S!==void 0&&F.workflowName===void 0?{...F,workflowName:S}:F;if(q.type==="step_success"){let te=q.stepId;for(let re=M.length-1;re>=0;re--){let L=M[re];if(L.type==="race"&&!L.winnerId){L.winnerId=te;break}}}y?.(q,w)},I=Ye,V=p=>ze(p),W=(p,F)=>p,Oe=p=>typeof p=="function"?!1:!!(p&&typeof p=="object"&&"ok"in p||p&&typeof p=="object"&&"then"in p&&typeof p.then=="function");try{let F=function(s){let m={};for(let[n,o]of Object.entries(s))if(typeof o=="function")m[n]=o;else if(o&&typeof o=="object"&&"fn"in o)m[n]=o.fn;else throw new TypeError(`step.all: operation "${n}" must be a function or { fn, errors? } object`);return m},q=function(s,m){let n=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let o=performance.now(),t=!1;M.push({scopeId:n,type:"parallel"});let u=()=>{if(t)return;t=!0;let l=M.findIndex(d=>d.scopeId===n);l!==-1&&M.splice(l,1),c({type:"scope_end",workflowId:i,scopeId:n,ts:Date.now(),durationMs:performance.now()-o})};c({type:"scope_start",workflowId:i,scopeId:n,scopeType:"parallel",name:s,ts:Date.now()});try{let l=await m();if(u(),!l.ok)throw a?.(l.error,s,w),I(l.error,{origin:"result",resultCause:l.cause});return l.value}catch(l){throw u(),l}})()},te=function(s,m){let n=Object.keys(s),o=m.name??`Parallel(${n.join(", ")})`,t=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let u=performance.now(),l=!1;M.push({scopeId:t,type:"parallel"});let d=()=>{if(l)return;l=!0;let E=M.findIndex(f=>f.scopeId===t);E!==-1&&M.splice(E,1),c({type:"scope_end",workflowId:i,scopeId:t,ts:Date.now(),durationMs:performance.now()-u})};c({type:"scope_start",workflowId:i,scopeId:t,scopeType:"parallel",name:o,ts:Date.now()});try{let E=await new Promise(g=>{if(n.length===0){g([]);return}let b=!1,v=n.length,k=new Array(n.length);for(let P=0;P<n.length;P++){let R=n[P],C=P;Promise.resolve(s[R]()).catch(x=>D({type:"PROMISE_REJECTED",cause:x},{cause:{type:"PROMISE_REJECTION",reason:x}})).then(x=>{if(!b){if(!x.ok){b=!0,g([{key:R,result:x}]);return}k[C]={key:R,result:x},v--,v===0&&g(k)}})}});d();let f={};for(let{key:g,result:b}of E){if(!b.ok)throw a?.(b.error,g,w),I(b.error,{origin:"result",resultCause:b.cause});f[g]=b.value}return f}catch(E){throw d(),E}})()};var tt=F,rt=q,nt=te;let p=(s,m,n)=>(async()=>{if(typeof s!="string"||s.length===0)throw new Error('[awaitly] step() requires an explicit string ID as the first argument. Example: step("fetchUser", () => fetchUser(id))');let o=n??{},t=We(o),u=s,l=o.key??s,d=o.key??s,{description:E,retry:f,timeout:g}=o,b=$(l),v=y,k=v?performance.now():0,R=Oe(m)?()=>m:m,x={attempts:Math.max(1,f?.attempts??1),backoff:f?.backoff??X.backoff,initialDelay:f?.initialDelay??X.initialDelay,maxDelay:f?.maxDelay??X.maxDelay,jitter:f?.jitter??X.jitter,shouldRetry:f?.shouldRetry??X.shouldRetry,onRetry:f?.onRetry??X.onRetry};y&&c({type:"step_start",workflowId:i,stepId:b,stepKey:l,name:u,description:E,ts:Date.now(),...t&&{metadata:t}});let J;for(let A=1;A<=x.attempts;A++){let Me=v?performance.now():0;try{let T;if(g?T=await Xe(R,g,{name:u,key:l,attempt:A},O):T=await R(),T.ok){let z=performance.now()-k;return c({type:"step_success",workflowId:i,stepId:b,stepKey:l,name:u,description:E,ts:Date.now(),durationMs:z,...t&&{metadata:t}}),d&&c({type:"step_complete",workflowId:i,stepKey:d,name:u,description:E,ts:Date.now(),durationMs:z,result:T,...t&&{metadata:t}}),T.value}if(J=T,A<x.attempts&&x.shouldRetry(T.error,A)){let z=pe(A,x);c({type:"step_retry",workflowId:i,stepId:b,stepKey:l,name:u,ts:Date.now(),attempt:A+1,maxAttempts:x.attempts,delayMs:z,error:T.error,...t&&{metadata:t},diagnostics:j(T.error,o.errorMeta,"result",A,performance.now()-k)}),x.onRetry(T.error,A,z),await me(z);continue}x.attempts>1&&c({type:"step_retries_exhausted",workflowId:i,stepId:b,stepKey:l,name:u,ts:Date.now(),durationMs:performance.now()-k,attempts:A,lastError:T.error,...t&&{metadata:t},diagnostics:j(T.error,o.errorMeta,"result",A,performance.now()-k)});break}catch(T){let z=performance.now()-Me;if(Ge(T)){let H=T.ms;c({type:"step_timeout",workflowId:i,stepId:b,stepKey:l,name:u,ts:Date.now(),timeoutMs:H,attempt:A,...t&&{metadata:t},diagnostics:j(T,o.errorMeta,"timeout",A)}),c({type:"step_success",workflowId:i,stepId:b,stepKey:l,name:u,description:E,ts:Date.now(),durationMs:performance.now()-k,...t&&{metadata:t}}),d&&c({type:"step_complete",workflowId:i,stepKey:d,name:u,description:E,ts:Date.now(),durationMs:performance.now()-k,result:B(void 0),...t&&{metadata:t}});return}if(V(T))throw c({type:"step_aborted",workflowId:i,stepId:b,stepKey:l,name:u,description:E,ts:Date.now(),durationMs:z,...t&&{metadata:t}}),T;if(Ce(T)){let H=qe(T),Ie=g?.ms??H?.timeoutMs??0;if(c({type:"step_timeout",workflowId:i,stepId:b,stepKey:l,name:u,ts:Date.now(),timeoutMs:Ie,attempt:A,...t&&{metadata:t},diagnostics:j(T,o.errorMeta,"timeout",A)}),A<x.attempts&&x.shouldRetry(T,A)){let ce=pe(A,x);c({type:"step_retry",workflowId:i,stepId:b,stepKey:l,name:u,ts:Date.now(),attempt:A+1,maxAttempts:x.attempts,delayMs:ce,error:T,...t&&{metadata:t},diagnostics:j(T,o.errorMeta,"timeout",A,performance.now()-k)}),x.onRetry(T,A,ce),await me(ce);continue}x.attempts>1&&c({type:"step_retries_exhausted",workflowId:i,stepId:b,stepKey:l,name:u,ts:Date.now(),durationMs:performance.now()-k,attempts:A,lastError:T,...t&&{metadata:t},diagnostics:j(T,o.errorMeta,"timeout",A,performance.now()-k)});let ue=performance.now()-k;throw c({type:"step_error",workflowId:i,stepId:b,stepKey:l,name:u,description:E,ts:Date.now(),durationMs:ue,error:T,...t&&{metadata:t},diagnostics:j(T,o.errorMeta,"timeout",A,ue)}),d&&c({type:"step_complete",workflowId:i,stepKey:d,name:u,description:E,ts:Date.now(),durationMs:ue,result:D(T,{cause:T}),meta:{origin:"throw",thrown:T},...t&&{metadata:t}}),a?.(T,u,w),I(T,{origin:"throw",thrown:T})}if(A<x.attempts&&x.shouldRetry(T,A)){let H=pe(A,x);c({type:"step_retry",workflowId:i,stepId:b,stepKey:l,name:u,ts:Date.now(),attempt:A+1,maxAttempts:x.attempts,delayMs:H,error:T,...t&&{metadata:t},diagnostics:j(T,o.errorMeta,"throw",A,performance.now()-k)}),x.onRetry(T,A,H),await me(H);continue}x.attempts>1&&!Ce(T)&&c({type:"step_retries_exhausted",workflowId:i,stepId:b,stepKey:l,name:u,ts:Date.now(),durationMs:performance.now()-k,attempts:A,lastError:T,...t&&{metadata:t},diagnostics:j(T,o.errorMeta,"throw",A,performance.now()-k)});let ie=performance.now()-k,Z;try{Z=U(T)}catch(H){throw G(H)}throw c({type:"step_error",workflowId:i,stepId:b,stepKey:l,name:u,description:E,ts:Date.now(),durationMs:ie,error:Z,...t&&{metadata:t},diagnostics:j(T,o.errorMeta,"throw",A,ie)}),d&&c({type:"step_complete",workflowId:i,stepKey:d,name:u,description:E,ts:Date.now(),durationMs:ie,result:D(Z,{cause:T}),meta:{origin:"throw",thrown:T},...t&&{metadata:t}}),a?.(Z,u,w),I(Z,{origin:"throw",thrown:T})}}let Y=J,se=performance.now()-k,ae=W(Y.error,{origin:"result",resultCause:Y.cause});throw c({type:"step_error",workflowId:i,stepId:b,stepKey:l,name:u,description:E,ts:Date.now(),durationMs:se,error:ae,...t&&{metadata:t},diagnostics:j(Y.error,o.errorMeta,"result",x.attempts,se)}),d&&c({type:"step_complete",workflowId:i,stepKey:d,name:u,description:E,ts:Date.now(),durationMs:se,result:Y,meta:{origin:"result",resultCause:Y.cause},...t&&{metadata:t}}),a?.(ae,u,w),I(ae,{origin:"result",resultCause:Y.cause})})();p.try=(s,m,n)=>{if(typeof s!="string"||s.length===0)throw new Error('[awaitly] step.try() requires an explicit string ID as the first argument. Example: step.try("parse", () => JSON.parse(str), { error: "PARSE_ERROR" })');let o="error"in n?()=>n.error:n.onError;if(n.retry||n.timeout)return p.retry(s,async()=>{try{return B(await m())}catch(E){return D(o(E),{cause:E})}},{attempts:n.retry?.attempts??1,...n.retry??{},key:n.key,timeout:n.timeout});let t=n.key??s,u=s,l=s,d=y;return(async()=>{let E=d?performance.now():0;y&&c({type:"step_start",workflowId:i,stepId:l,stepKey:t,name:u,ts:Date.now()});try{let f=await m(),g=performance.now()-E;return c({type:"step_success",workflowId:i,stepId:l,stepKey:t,name:u,ts:Date.now(),durationMs:g}),t&&c({type:"step_complete",workflowId:i,stepKey:t,name:u,ts:Date.now(),durationMs:g,result:B(f)}),f}catch(f){let g=o(f),b=performance.now()-E,v=W(g,{origin:"throw",thrown:f});throw c({type:"step_error",workflowId:i,stepId:l,stepKey:t,name:u,ts:Date.now(),durationMs:b,error:v}),t&&c({type:"step_complete",workflowId:i,stepKey:t,name:u,ts:Date.now(),durationMs:b,result:D(g,{cause:f}),meta:{origin:"throw",thrown:f}}),a?.(v,u,w),I(v,{origin:"throw",thrown:f})}})()},p.fromResult=(s,m,n)=>{if(typeof s!="string"||s.length===0)throw new Error('[awaitly] step.fromResult() requires an explicit string ID as the first argument. Example: step.fromResult("callProvider", () => callProvider(input), { onError: (e) => ({ type: "FAILED" }) })');let o=n.key??s,t=s,u=s,l="error"in n?()=>n.error:n.onError,d=y;return(async()=>{let E=d?performance.now():0;y&&c({type:"step_start",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now()});let f=await m();if(f.ok){let g=performance.now()-E;return c({type:"step_success",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:g}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:g,result:B(f.value)}),f.value}else{let g=l(f.error),b=performance.now()-E,v=W(g,{origin:"result",resultCause:f.error});throw c({type:"step_error",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:b,error:v}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:b,result:D(g,{cause:f.error}),meta:{origin:"result",resultCause:f.error}}),a?.(v,t,w),I(v,{origin:"result",resultCause:f.error})}})()},p.fromNullable=(s,m,n,o)=>{if(typeof s!="string"||s.length===0)throw new Error('[awaitly] step.fromNullable() requires an explicit string ID as the first argument. Example: step.fromNullable("getUser", () => db.find(id), () => ({ type: "NOT_FOUND" }))');return p(s,async()=>{let t=await m();return t!=null?B(t):D(n())},o)},p.retry=(s,m,n)=>{if(typeof s!="string"||s.length===0)throw new Error('[awaitly] step.retry() requires an explicit string ID as the first argument. Example: step.retry("fetchData", () => fetchData(), { attempts: 3 })');return p(s,m,{key:n.key??s,retry:{attempts:n.attempts,backoff:n.backoff,initialDelay:n.initialDelay,maxDelay:n.maxDelay,jitter:n.jitter,shouldRetry:n.shouldRetry,onRetry:n.onRetry},timeout:n.timeout})},p.withTimeout=(s,m,n)=>{if(typeof s!="string"||s.length===0)throw new Error('[awaitly] step.withTimeout() requires an explicit string ID as the first argument. Example: step.withTimeout("slowOp", () => slowOp(), { ms: 5000 })');return p(s,m,{key:n.key??s,timeout:n})},p.sleep=(s,m,n)=>{if(typeof s!="string"||s.length===0)throw new Error('[awaitly] step.sleep() requires an explicit string ID as the first argument. Example: step.sleep("delay", "5s")');let o=typeof m=="string"?Be(m):m;if(!o)throw new Error(`step.sleep: invalid duration '${m}'`);let t=o.millis,u=n?.signal;return p(s,async()=>{if(O?.aborted||u?.aborted){let l=new Error("Sleep aborted");throw l.name="AbortError",l}return new Promise((l,d)=>{let E={timeoutId:void 0},f=()=>{E.timeoutId&&clearTimeout(E.timeoutId);let g=new Error("Sleep aborted");g.name="AbortError",d(g)};O?.addEventListener("abort",f,{once:!0}),u?.addEventListener("abort",f,{once:!0}),E.timeoutId=setTimeout(()=>{O?.removeEventListener("abort",f),u?.removeEventListener("abort",f),l(B(void 0))},t)})},{key:n?.key??s,description:n?.description})},p.all=((...s)=>{if(typeof s[0]!="string")throw new TypeError("step.all(name, ...): first argument must be a string (step name). Example: step.all('Fetch data', { user: () => fetchUser(), posts: () => fetchPosts() })");let m=s[0],n=s[1];if(typeof n=="function")return q(m,n);if(n&&typeof n=="object"&&!Array.isArray(n)){let t=F(n);return te(t,{name:m})}throw new TypeError("step.all(name, ...): second argument must be a function (array form) or an object of operations (object form).")}),p.race=(s,m)=>{let n=`scope_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return(async()=>{let o=performance.now(),t=!1,u={scopeId:n,type:"race",winnerId:void 0};M.push(u);let l=()=>{if(t)return;t=!0;let d=M.findIndex(E=>E.scopeId===n);d!==-1&&M.splice(d,1),c({type:"scope_end",workflowId:i,scopeId:n,ts:Date.now(),durationMs:performance.now()-o,winnerId:u.winnerId})};c({type:"scope_start",workflowId:i,scopeId:n,scopeType:"race",name:s,ts:Date.now()});try{let d=await m();if(l(),!d.ok)throw a?.(d.error,s,w),I(d.error,{origin:"result",resultCause:d.cause});return d.value}catch(d){throw l(),d}})()},p.if=(s,m,n)=>n(),p.label=p.if,p.branch=async(s,m)=>{let{condition:n,then:o,else:t}=m;if(n())return await o();if(t)return await t()},p.arm=(s,m)=>({fn:s,errors:m}),p.forEach=async(s,m,n)=>{let o=[],t=n.maxIterations,u=0,l="run"in n,d=Symbol.asyncIterator in m?m:(async function*(){yield*m})();for await(let E of d){if(t!==void 0&&u>=t)break;let f;l?f=await n.run(E,u):f=await n.item.handler(E,u,p),o.push(f),u++}return o},p.item=s=>({__forEachItemHandler:!0,handler:s}),p.dep=(s,m)=>m,p.workflow=(s,m,n)=>p(s,m,n),p.map=async(s,m,n,o)=>{let t=o?.concurrency??m.length;return p(s,()=>t>=m.length?Ae(m.map((u,l)=>n(u,l))):(async()=>{let u=[];for(let l=0;l<m.length;l+=t){let d=m.slice(l,l+t),E=await Ae(d.map((f,g)=>n(f,l+g)));if(!E.ok)return E;u.push(...E.value)}return B(u)})(),{key:o?.key})},p.withFallback=(s,m,n)=>{if(typeof s!="string"||s.length===0)throw new Error('[awaitly] step.withFallback() requires an explicit string ID as the first argument. Example: step.withFallback("getUser", () => fetchUser(id), { fallback: () => fetchFromCache(id) })');let o=n.key??s,t=s,u=$(o),l=y;return(async()=>{let d=l?performance.now():0;y&&c({type:"step_start",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now()});let E;try{E=await m()}catch(k){if(V(k))throw c({type:"step_aborted",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:performance.now()-d}),k;let P;try{P=U(k)}catch(C){throw G(C)}if(n.on!==void 0&&n.on!==P){let C=performance.now()-d;throw c({type:"step_error",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:C,error:P}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:C,result:D(P,{cause:k}),meta:{origin:"throw",thrown:k}}),a?.(P,t,w),I(P,{origin:"throw",thrown:k})}let R;try{R=await n.fallback()}catch(C){if(V(C))throw c({type:"step_aborted",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:performance.now()-d}),C;let x;try{x=U(C)}catch(Y){throw G(Y)}let J=performance.now()-d;throw c({type:"step_error",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:J,error:x}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:J,result:D(x,{cause:C}),meta:{origin:"throw",thrown:C}}),a?.(x,t,w),I(x,{origin:"throw",thrown:C})}if(R.ok){let C=performance.now()-d;return c({type:"step_success",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:C}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:C,result:R,meta:{origin:"fallback",fallbackUsed:!0,fallbackReason:String(P)}}),R.value}else{let C=performance.now()-d,x=W(R.error,{origin:"result",resultCause:R.cause});throw c({type:"step_error",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:C,error:x}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:C,result:R,meta:{origin:"result",resultCause:R.cause}}),a?.(x,t,w),I(x,{origin:"result",resultCause:R.cause})}}if(E.ok){let k=performance.now()-d;return c({type:"step_success",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:k}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:k,result:E}),E.value}let f=E.error;if(n.on!==void 0&&n.on!==f){let k=performance.now()-d,P=W(f,{origin:"result",resultCause:E.cause});throw c({type:"step_error",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:k,error:P}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:k,result:E,meta:{origin:"result",resultCause:E.cause}}),a?.(P,t,w),I(P,{origin:"result",resultCause:E.cause})}let g;try{g=await n.fallback()}catch(k){if(V(k))throw c({type:"step_aborted",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:performance.now()-d}),k;let P;try{P=U(k)}catch(C){throw G(C)}let R=performance.now()-d;throw c({type:"step_error",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:R,error:P}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:R,result:D(P,{cause:k}),meta:{origin:"throw",thrown:k}}),a?.(P,t,w),I(P,{origin:"throw",thrown:k})}if(g.ok){let k=performance.now()-d;return c({type:"step_success",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:k}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:k,result:g,meta:{origin:"fallback",fallbackUsed:!0,fallbackReason:String(f)}}),g.value}let b=performance.now()-d,v=W(g.error,{origin:"result",resultCause:g.cause});throw c({type:"step_error",workflowId:i,stepId:u,stepKey:o,name:t,ts:Date.now(),durationMs:b,error:v}),o&&c({type:"step_complete",workflowId:i,stepKey:o,name:t,ts:Date.now(),durationMs:b,result:g,meta:{origin:"result",resultCause:g.cause}}),a?.(v,t,w),I(v,{origin:"result",resultCause:g.cause})})()},p.withResource=(s,m)=>{if(typeof s!="string"||s.length===0)throw new Error('[awaitly] step.withResource() requires an explicit string ID as the first argument. Example: step.withResource("useDb", { acquire: () => connect(), use: (db) => query(db), release: (db) => db.close() })');let n=s,o=s,t=$(n),u=y;return(async()=>{let l=u?performance.now():0;y&&c({type:"step_start",workflowId:i,stepId:t,stepKey:n,name:o,ts:Date.now()});let d;try{d=await m.acquire()}catch(R){if(V(R))throw c({type:"step_aborted",workflowId:i,stepId:t,stepKey:n,name:o,ts:Date.now(),durationMs:performance.now()-l}),R;let C;try{C=U(R)}catch(J){throw G(J)}let x=performance.now()-l;throw c({type:"step_error",workflowId:i,stepId:t,stepKey:n,name:o,ts:Date.now(),durationMs:x,error:C}),n&&c({type:"step_complete",workflowId:i,stepKey:n,name:o,ts:Date.now(),durationMs:x,result:D(C,{cause:R}),meta:{origin:"throw",thrown:R}}),a?.(C,o,w),I(C,{origin:"throw",thrown:R})}if(!d.ok){let R=performance.now()-l,C=W(d.error,{origin:"result",resultCause:d.cause});throw c({type:"step_error",workflowId:i,stepId:t,stepKey:n,name:o,ts:Date.now(),durationMs:R,error:C}),n&&c({type:"step_complete",workflowId:i,stepKey:n,name:o,ts:Date.now(),durationMs:R,result:d,meta:{origin:"result",resultCause:d.cause}}),a?.(C,o,w),I(C,{origin:"result",resultCause:d.cause})}let E=d.value,f,g,b=!1;try{f=await m.use(E)}catch(R){if(V(R)){try{await m.release(E)}catch(C){console.warn(`[awaitly] step.withResource("${s}"): release threw after earlyExit:`,C)}throw R}g=R,b=!0}try{await m.release(E)}catch(R){console.warn(`[awaitly] step.withResource("${s}"): release threw:`,R)}if(b){let R;try{R=U(g)}catch(x){throw G(x)}let C=performance.now()-l;throw c({type:"step_error",workflowId:i,stepId:t,stepKey:n,name:o,ts:Date.now(),durationMs:C,error:R}),n&&c({type:"step_complete",workflowId:i,stepKey:n,name:o,ts:Date.now(),durationMs:C,result:D(R,{cause:g}),meta:{origin:"throw",thrown:g}}),a?.(R,o,w),I(R,{origin:"throw",thrown:g})}let v=f;if(v.ok){let R=performance.now()-l;return c({type:"step_success",workflowId:i,stepId:t,stepKey:n,name:o,ts:Date.now(),durationMs:R}),n&&c({type:"step_complete",workflowId:i,stepKey:n,name:o,ts:Date.now(),durationMs:R,result:v}),v.value}let k=performance.now()-l,P=W(v.error,{origin:"result",resultCause:v.cause});throw c({type:"step_error",workflowId:i,stepId:t,stepKey:n,name:o,ts:Date.now(),durationMs:k,error:P}),n&&c({type:"step_complete",workflowId:i,stepKey:n,name:o,ts:Date.now(),durationMs:k,result:v,meta:{origin:"result",resultCause:v.cause}}),a?.(P,o,w),I(P,{origin:"result",resultCause:v.cause})})()};let L=await r({step:p});if(process.env.NODE_ENV!=="production"&&L!==null&&typeof L=="object"&&"ok"in L&&typeof L.ok=="boolean"){let s=L;(s.ok===!0&&"value"in s||s.ok===!1&&"error"in s)&&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://jagreehal.github.io/awaitly/guides/troubleshooting/#returning-ok-from-workflow-executor-double-wrapping`)}return B(L)}catch(p){if(Je(p))throw p.thrown;if(V(p)){let q=p.meta.origin==="throw"?p.meta.thrown:p.meta.origin==="result"?p.meta.resultCause:void 0;return D(p.error,{cause:q})}let F=U(p);return a?.(F,"unexpected",w),D(F,{cause:p})}}Se.strict=(r,e)=>Se(r,e);async function Ae(r){return r.length===0?B([]):new Promise(e=>{let a=!1,y=r.length,_=new Array(r.length);for(let h=0;h<r.length;h++){let S=h;Promise.resolve(r[S]).catch(w=>D({type:"PROMISE_REJECTED",cause:w},{cause:{type:"PROMISE_REJECTION",reason:w}})).then(w=>{if(!a){if(!w.ok){a=!0,e(w);return}_[S]=w.value,y--,y===0&&e(B(_))}})}})}function de(r){return typeof r=="object"&&r!==null&&r.type==="RESOURCE_CLEANUP_ERROR"}function ve(){let r=[];return{add:e=>(r.push(e),e.value),close:async()=>{let e=[];for(let a=r.length-1;a>=0;a--)try{await r[a].close()}catch(y){e.push(y)}if(r.length=0,e.length>0)throw{type:"RESOURCE_CLEANUP_ERROR",errors:e}},has:e=>r.includes(e),size:()=>r.length}}async function Qe(r){let e=ve(),a;try{a=await r(e)}catch(y){try{await e.close()}catch(_){if(de(_))return D({..._,originalResult:{thrown:y}})}throw y}try{await e.close()}catch(y){if(de(y))return D({...y,originalResult:a});throw y}return a}async function Ze(r,e){let a=await r();return{value:a,close:async()=>{await e(a)}}}0&&(module.exports={createResource,createResourceScope,isResourceCleanupError,withScope});
|
|
7
|
-
//# sourceMappingURL=resource.cjs.map
|