@jagreehal/workflow 1.0.0 → 1.1.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/workflow.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var b=Object.defineProperty;var X=Object.getOwnPropertyDescriptor;var J=Object.getOwnPropertyNames;var G=Object.prototype.hasOwnProperty;var Y=(e,n)=>{for(var u in n)b(e,u,{get:n[u],enumerable:!0})},q=(e,n,u,l)=>{if(n&&typeof n=="object"||typeof n=="function")for(let d of J(n))!G.call(e,d)&&d!==u&&b(e,d,{get:()=>n[d],enumerable:!(l=X(n,d))||l.enumerable});return e};var B=e=>q(b({},"__esModule",{value:!0}),e);var ce={};Y(ce,{clearStep:()=>ue,createApprovalStep:()=>oe,createHITLCollector:()=>ie,createStepCollector:()=>Z,createWorkflow:()=>ne,getPendingApprovals:()=>pe,hasPendingApproval:()=>ae,injectApproval:()=>se,isApprovalRejected:()=>te,isPendingApproval:()=>_,isStepComplete:()=>j,pendingApproval:()=>re});module.exports=B(ce);var S=e=>({ok:!0,value:e}),f=(e,n)=>({ok:!1,error:e,...n?.cause!==void 0?{cause:n.cause}:{}});var H=e=>typeof e=="object"&&e!==null&&e.type==="UNEXPECTED_ERROR",N=Symbol("early-exit");function M(e,n){return{[N]:!0,error:e,meta:n}}function K(e){return typeof e=="object"&&e!==null&&e[N]===!0}var W=Symbol("mapper-exception");function $(e){return{[W]:!0,thrown:e}}function z(e){return typeof e=="object"&&e!==null&&e[W]===!0}function Q(e){return typeof e=="string"?{name:e}:e??{}}async function U(e,n){let{onError:u,onEvent:l,catchUnexpected:d,workflowId:h,context:I}=n&&typeof n=="object"?n:{},E=h??crypto.randomUUID(),m=!u&&!d,c=r=>{l?.(r,I)},C=M,O=r=>K(r),D=(r,R)=>m?R?.origin==="result"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:r,...R.resultCause!==void 0?{cause:R.resultCause}:{}}}:R?.origin==="throw"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"throw",error:r,thrown:R.thrown}}:{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:r}}:r,P=r=>r.origin==="result"?r.resultCause:r.thrown,y=r=>({type:"UNEXPECTED_ERROR",cause:r.meta.origin==="result"?{type:"STEP_FAILURE",origin:"result",error:r.error,...r.meta.resultCause!==void 0?{cause:r.meta.resultCause}:{}}:{type:"STEP_FAILURE",origin:"throw",error:r.error,thrown:r.meta.thrown}});try{let r=(T,A)=>(async()=>{let{name:t,key:a}=Q(A),k=l?performance.now():0;l&&c({type:"step_start",workflowId:E,stepKey:a,name:t,ts:Date.now()});let i;try{i=await(typeof T=="function"?T():T)}catch(s){let w=performance.now()-k;if(O(s))throw c({type:"step_aborted",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:w}),s;if(d){let v;try{v=d(s)}catch(L){throw $(L)}throw c({type:"step_error",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:w,error:v}),a&&c({type:"step_complete",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:w,result:f(v,{cause:s}),meta:{origin:"throw",thrown:s}}),u?.(v,t),C(v,{origin:"throw",thrown:s})}else{let v={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:s}};throw c({type:"step_error",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:w,error:v}),a&&c({type:"step_complete",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:w,result:f(v,{cause:s}),meta:{origin:"throw",thrown:s}}),s}}let o=performance.now()-k;if(i.ok)return c({type:"step_success",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:o}),a&&c({type:"step_complete",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:o,result:i}),i.value;let p=D(i.error,{origin:"result",resultCause:i.cause});throw c({type:"step_error",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:o,error:p}),a&&c({type:"step_complete",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:o,result:i,meta:{origin:"result",resultCause:i.cause}}),u?.(i.error,t),C(i.error,{origin:"result",resultCause:i.cause})})();r.try=(T,A)=>{let t=A.name,a=A.key,g="error"in A?()=>A.error:A.onError,k=l;return(async()=>{let i=k?performance.now():0;l&&c({type:"step_start",workflowId:E,stepKey:a,name:t,ts:Date.now()});try{let o=await T(),p=performance.now()-i;return c({type:"step_success",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:p}),a&&c({type:"step_complete",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:p,result:S(o)}),o}catch(o){let p=g(o),s=performance.now()-i,w=D(p,{origin:"throw",thrown:o});throw c({type:"step_error",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:s,error:w}),a&&c({type:"step_complete",workflowId:E,stepKey:a,name:t,ts:Date.now(),durationMs:s,result:f(p,{cause:o}),meta:{origin:"throw",thrown:o}}),u?.(p,t),C(p,{origin:"throw",thrown:o})}})()};let x=await e(r);return S(x)}catch(r){if(z(r))throw r.thrown;if(O(r)){let x=P(r.meta);if(d||u)return f(r.error,{cause:x});if(H(r.error))return f(r.error,{cause:x});let T=y(r);return f(T,{cause:x})}if(d){let x=d(r);return u?.(x,"unexpected"),f(x,{cause:r})}let R={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:r}};return u?.(R,"unexpected"),f(R,{cause:r})}}U.strict=(e,n)=>U(e,n);function Z(){let e=new Map;return{handleEvent:n=>{j(n)&&e.set(n.stepKey,{result:n.result,meta:n.meta})},getState:()=>({steps:new Map(e)}),clear:()=>e.clear()}}function ee(e){return typeof e=="object"&&e!==null&&e.__cachedMeta===!0}function F(e,n,u){return f(e,{cause:{__cachedMeta:!0,originalCause:u,meta:n}})}function V(e){return ee(e)?e.meta:{origin:"result",resultCause:e}}function ne(e,n){async function u(l,d){let h=typeof d=="function",I=h?l:void 0,E=h?d:l,m=crypto.randomUUID(),c=n?.createContext?.(),C=t=>{n?.onEvent?.(t,c)},O=Date.now(),D=performance.now();C({type:"workflow_start",workflowId:m,ts:O});let P=n?.resumeState,y=n?.cache;if(P&&!y&&(y=new Map),P&&y){let t=typeof P=="function"?await P():P;for(let[a,g]of t.steps){let{result:k,meta:i}=g;if(k.ok)y.set(a,k);else{let o=i??{origin:"result",resultCause:k.cause};y.set(a,F(k.error,o,k.cause))}}}let r=t=>typeof t=="string"?{name:t}:t??{},R=t=>{if(!y)return t;let a=async(g,k)=>{let{name:i,key:o}=r(k);if(o&&y.has(o)){C({type:"step_cache_hit",workflowId:m,stepKey:o,name:i,ts:Date.now()});let s=y.get(o);if(s.ok)return s.value;let w=V(s.cause);throw M(s.error,w)}o&&C({type:"step_cache_miss",workflowId:m,stepKey:o,name:i,ts:Date.now()});let p=typeof g=="function"?g:()=>g;try{let s=await t(p,k);return o&&y.set(o,S(s)),s}catch(s){if(o&&K(s)){let w=s,v=w.meta.origin==="result"?w.meta.resultCause:w.meta.thrown;y.set(o,F(w.error,w.meta,v))}throw s}};return a.try=async(g,k)=>{let{name:i,key:o}=k;if(o&&y.has(o)){C({type:"step_cache_hit",workflowId:m,stepKey:o,name:i,ts:Date.now()});let p=y.get(o);if(p.ok)return p.value;let s=V(p.cause);throw M(p.error,s)}o&&C({type:"step_cache_miss",workflowId:m,stepKey:o,name:i,ts:Date.now()});try{let p=await t.try(g,k);return o&&y.set(o,S(p)),p}catch(p){if(o&&K(p)){let s=p,w=s.meta.origin==="result"?s.meta.resultCause:s.meta.thrown;y.set(o,F(s.error,s.meta,w))}throw p}},a},x=h?t=>E(R(t),e,I):t=>E(R(t),e),T;if(n?.strict===!0){let t=n;T=await U.strict(x,{onError:t.onError,onEvent:t.onEvent,catchUnexpected:t.catchUnexpected,workflowId:m,context:c})}else{let t=n;T=await U(x,{onError:t?.onError??(()=>{}),onEvent:t?.onEvent,workflowId:m,context:c})}let A=performance.now()-D;return T.ok?C({type:"workflow_success",workflowId:m,ts:Date.now(),durationMs:A}):C({type:"workflow_error",workflowId:m,ts:Date.now(),durationMs:A,error:T.error}),T}return u}function j(e){return e.type==="step_complete"}function _(e){return typeof e=="object"&&e!==null&&e.type==="PENDING_APPROVAL"}function te(e){return typeof e=="object"&&e!==null&&e.type==="APPROVAL_REJECTED"}function re(e,n){return f({type:"PENDING_APPROVAL",stepKey:e,reason:n?.reason,metadata:n?.metadata})}function oe(e){return async()=>{let n=await e.checkApproval();switch(n.status){case"pending":return f({type:"PENDING_APPROVAL",stepKey:e.key,reason:e.pendingReason,metadata:e.metadata});case"rejected":return f({type:"APPROVAL_REJECTED",stepKey:e.key,reason:n.reason});case"approved":return S(n.value)}}}function se(e,n){let u=new Map(e.steps);return u.set(n.stepKey,{result:S(n.value)}),{steps:u}}function ue(e,n){let u=new Map(e.steps);return u.delete(n),{steps:u}}function ae(e,n){let u=e.steps.get(n);return!u||u.result.ok?!1:_(u.result.error)}function pe(e){let n=[];for(let[u,l]of e.steps)!l.result.ok&&_(l.result.error)&&n.push(u);return n}function ie(){let e=new Map;return{handleEvent:n=>{j(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&&_(n.result.error))return!0;return!1},getPendingApprovals:()=>{let n=[];for(let[u,l]of e)!l.result.ok&&_(l.result.error)&&n.push({stepKey:u,error:l.result.error});return n},injectApproval:(n,u)=>(e.set(n,{result:S(u)}),{steps:new Map(e)})}}0&&(module.exports={clearStep,createApprovalStep,createHITLCollector,createStepCollector,createWorkflow,getPendingApprovals,hasPendingApproval,injectApproval,isApprovalRejected,isPendingApproval,isStepComplete,pendingApproval});
1
+ "use strict";var b=Object.defineProperty;var X=Object.getOwnPropertyDescriptor;var J=Object.getOwnPropertyNames;var G=Object.prototype.hasOwnProperty;var Y=(e,n)=>{for(var a in n)b(e,a,{get:n[a],enumerable:!0})},q=(e,n,a,E)=>{if(n&&typeof n=="object"||typeof n=="function")for(let d of J(n))!G.call(e,d)&&d!==a&&b(e,d,{get:()=>n[d],enumerable:!(E=X(n,d))||E.enumerable});return e};var B=e=>q(b({},"__esModule",{value:!0}),e);var ce={};Y(ce,{clearStep:()=>ue,createApprovalStep:()=>se,createHITLCollector:()=>ie,createStepCollector:()=>Z,createWorkflow:()=>ne,getPendingApprovals:()=>pe,hasPendingApproval:()=>ae,injectApproval:()=>oe,isApprovalRejected:()=>te,isPendingApproval:()=>D,isStepComplete:()=>N,pendingApproval:()=>re});module.exports=B(ce);var S=e=>({ok:!0,value:e}),R=(e,n)=>({ok:!1,error:e,...n?.cause!==void 0?{cause:n.cause}:{}});var H=e=>typeof e=="object"&&e!==null&&e.type==="UNEXPECTED_ERROR",j=Symbol("early-exit");function M(e,n){return{[j]:!0,error:e,meta:n}}function K(e){return typeof e=="object"&&e!==null&&e[j]===!0}var W=Symbol("mapper-exception");function $(e){return{[W]:!0,thrown:e}}function z(e){return typeof e=="object"&&e!==null&&e[W]===!0}function Q(e){return typeof e=="string"?{name:e}:e??{}}async function _(e,n){let{onError:a,onEvent:E,catchUnexpected:d,workflowId:h,context:I}=n&&typeof n=="object"?n:{},l=h??crypto.randomUUID(),g=!a&&!d,c=s=>{E?.(s,I)},m=M,O=s=>K(s),U=(s,C)=>g?C?.origin==="result"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:s,...C.resultCause!==void 0?{cause:C.resultCause}:{}}}:C?.origin==="throw"?{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"throw",error:s,thrown:C.thrown}}:{type:"UNEXPECTED_ERROR",cause:{type:"STEP_FAILURE",origin:"result",error:s}}:s,P=s=>s.origin==="result"?s.resultCause:s.thrown,k=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 s=(f,T)=>(async()=>{let{name:t,key:o}=Q(T),y=E?performance.now():0;E&&c({type:"step_start",workflowId:l,stepKey:o,name:t,ts:Date.now()});let i;try{i=await(typeof f=="function"?f():f)}catch(u){let w=performance.now()-y;if(O(u))throw c({type:"step_aborted",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:w}),u;if(d){let v;try{v=d(u)}catch(L){throw $(L)}throw c({type:"step_error",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:w,error:v}),o&&c({type:"step_complete",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:w,result:R(v,{cause:u}),meta:{origin:"throw",thrown:u}}),a?.(v,t),m(v,{origin:"throw",thrown:u})}else{let v={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:u}};throw c({type:"step_error",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:w,error:v}),o&&c({type:"step_complete",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:w,result:R(v,{cause:u}),meta:{origin:"throw",thrown:u}}),u}}let r=performance.now()-y;if(i.ok)return c({type:"step_success",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:r}),o&&c({type:"step_complete",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:r,result:i}),i.value;let p=U(i.error,{origin:"result",resultCause:i.cause});throw c({type:"step_error",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:r,error:p}),o&&c({type:"step_complete",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:r,result:i,meta:{origin:"result",resultCause:i.cause}}),a?.(i.error,t),m(i.error,{origin:"result",resultCause:i.cause})})();s.try=(f,T)=>{let t=T.name,o=T.key,x="error"in T?()=>T.error:T.onError,y=E;return(async()=>{let i=y?performance.now():0;E&&c({type:"step_start",workflowId:l,stepKey:o,name:t,ts:Date.now()});try{let r=await f(),p=performance.now()-i;return c({type:"step_success",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:p}),o&&c({type:"step_complete",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:p,result:S(r)}),r}catch(r){let p=x(r),u=performance.now()-i,w=U(p,{origin:"throw",thrown:r});throw c({type:"step_error",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:u,error:w}),o&&c({type:"step_complete",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:u,result:R(p,{cause:r}),meta:{origin:"throw",thrown:r}}),a?.(p,t),m(p,{origin:"throw",thrown:r})}})()},s.fromResult=(f,T)=>{let t=T.name,o=T.key,x="error"in T?()=>T.error:T.onError,y=E;return(async()=>{let i=y?performance.now():0;E&&c({type:"step_start",workflowId:l,stepKey:o,name:t,ts:Date.now()});let r=await f();if(r.ok){let p=performance.now()-i;return c({type:"step_success",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:p}),o&&c({type:"step_complete",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:p,result:S(r.value)}),r.value}else{let p=x(r.error),u=performance.now()-i,w=U(p,{origin:"result",resultCause:r.error});throw c({type:"step_error",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:u,error:w}),o&&c({type:"step_complete",workflowId:l,stepKey:o,name:t,ts:Date.now(),durationMs:u,result:R(p,{cause:r.error}),meta:{origin:"result",resultCause:r.error}}),a?.(p,t),m(p,{origin:"result",resultCause:r.error})}})()};let A=await e(s);return S(A)}catch(s){if(z(s))throw s.thrown;if(O(s)){let A=P(s.meta);if(d||a)return R(s.error,{cause:A});if(H(s.error))return R(s.error,{cause:A});let f=k(s);return R(f,{cause:A})}if(d){let A=d(s);return a?.(A,"unexpected"),R(A,{cause:s})}let C={type:"UNEXPECTED_ERROR",cause:{type:"UNCAUGHT_EXCEPTION",thrown:s}};return a?.(C,"unexpected"),R(C,{cause:s})}}_.strict=(e,n)=>_(e,n);function Z(){let e=new Map;return{handleEvent:n=>{N(n)&&e.set(n.stepKey,{result:n.result,meta:n.meta})},getState:()=>({steps:new Map(e)}),clear:()=>e.clear()}}function ee(e){return typeof e=="object"&&e!==null&&e.__cachedMeta===!0}function F(e,n,a){return R(e,{cause:{__cachedMeta:!0,originalCause:a,meta:n}})}function V(e){return ee(e)?e.meta:{origin:"result",resultCause:e}}function ne(e,n){async function a(E,d){let h=typeof d=="function",I=h?E:void 0,l=h?d:E,g=crypto.randomUUID(),c=n?.createContext?.(),m=t=>{n?.onEvent?.(t,c)},O=Date.now(),U=performance.now();m({type:"workflow_start",workflowId:g,ts:O});let P=n?.resumeState,k=n?.cache;if(P&&!k&&(k=new Map),P&&k){let t=typeof P=="function"?await P():P;for(let[o,x]of t.steps){let{result:y,meta:i}=x;if(y.ok)k.set(o,y);else{let r=i??{origin:"result",resultCause:y.cause};k.set(o,F(y.error,r,y.cause))}}}let s=t=>typeof t=="string"?{name:t}:t??{},C=t=>{if(!k)return t;let o=async(x,y)=>{let{name:i,key:r}=s(y);if(r&&k.has(r)){m({type:"step_cache_hit",workflowId:g,stepKey:r,name:i,ts:Date.now()});let u=k.get(r);if(u.ok)return u.value;let w=V(u.cause);throw M(u.error,w)}r&&m({type:"step_cache_miss",workflowId:g,stepKey:r,name:i,ts:Date.now()});let p=typeof x=="function"?x:()=>x;try{let u=await t(p,y);return r&&k.set(r,S(u)),u}catch(u){if(r&&K(u)){let w=u,v=w.meta.origin==="result"?w.meta.resultCause:w.meta.thrown;k.set(r,F(w.error,w.meta,v))}throw u}};return o.try=async(x,y)=>{let{name:i,key:r}=y;if(r&&k.has(r)){m({type:"step_cache_hit",workflowId:g,stepKey:r,name:i,ts:Date.now()});let p=k.get(r);if(p.ok)return p.value;let u=V(p.cause);throw M(p.error,u)}r&&m({type:"step_cache_miss",workflowId:g,stepKey:r,name:i,ts:Date.now()});try{let p=await t.try(x,y);return r&&k.set(r,S(p)),p}catch(p){if(r&&K(p)){let u=p,w=u.meta.origin==="result"?u.meta.resultCause:u.meta.thrown;k.set(r,F(u.error,u.meta,w))}throw p}},o},A=h?t=>l(C(t),e,I):t=>l(C(t),e),f;if(n?.strict===!0){let t=n;f=await _.strict(A,{onError:t.onError,onEvent:t.onEvent,catchUnexpected:t.catchUnexpected,workflowId:g,context:c})}else{let t=n;f=await _(A,{onError:t?.onError??(()=>{}),onEvent:t?.onEvent,workflowId:g,context:c})}let T=performance.now()-U;return f.ok?m({type:"workflow_success",workflowId:g,ts:Date.now(),durationMs:T}):m({type:"workflow_error",workflowId:g,ts:Date.now(),durationMs:T,error:f.error}),f}return a}function N(e){return e.type==="step_complete"}function D(e){return typeof e=="object"&&e!==null&&e.type==="PENDING_APPROVAL"}function te(e){return typeof e=="object"&&e!==null&&e.type==="APPROVAL_REJECTED"}function re(e,n){return R({type:"PENDING_APPROVAL",stepKey:e,reason:n?.reason,metadata:n?.metadata})}function se(e){return async()=>{let n=await e.checkApproval();switch(n.status){case"pending":return R({type:"PENDING_APPROVAL",stepKey:e.key,reason:e.pendingReason,metadata:e.metadata});case"rejected":return R({type:"APPROVAL_REJECTED",stepKey:e.key,reason:n.reason});case"approved":return S(n.value)}}}function oe(e,n){let a=new Map(e.steps);return a.set(n.stepKey,{result:S(n.value)}),{steps:a}}function ue(e,n){let a=new Map(e.steps);return a.delete(n),{steps:a}}function ae(e,n){let a=e.steps.get(n);return!a||a.result.ok?!1:D(a.result.error)}function pe(e){let n=[];for(let[a,E]of e.steps)!E.result.ok&&D(E.result.error)&&n.push(a);return n}function ie(){let e=new Map;return{handleEvent:n=>{N(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&&D(n.result.error))return!0;return!1},getPendingApprovals:()=>{let n=[];for(let[a,E]of e)!E.result.ok&&D(E.result.error)&&n.push({stepKey:a,error:E.result.error});return n},injectApproval:(n,a)=>(e.set(n,{result:S(a)}),{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