Lines 5-45javascript
5`)];return l.length>0&&(d.push(""),d.push(l.join(`
7`)}function la(e){let t=0;return e.map(r=>/^ {2}\S/.test(r)?(t++,` ${t}. ${r.trimStart()}`):r)}function Cr(e){return ca(e.root,e)}function xs(e){return e.map(t=>Cr(t)).join(`
11`)}var it=require("effect");function He(e){let t=e.root.children,r=da(t),s=fa(t),n=pa(t),i=ya(t),a=ma(t),c=ga(t);return{cyclomaticComplexity:r,cognitiveComplexity:s,pathCount:n,maxDepth:i,maxParallelBreadth:a,decisionPoints:c}}function da(e){let t=1;for(let r of e)t+=de(r);return t}function de(e){let t=P(e),r=it.Option.getOrElse(t,()=>[]),s=0;switch(e.type){case"conditional":s+=1;for(let n of r)s+=de(n);break;case"race":s+=Math.max(0,e.children.length-1);for(let n of e.children)s+=de(n);break;case"loop":s+=1,s+=de(e.body);break;case"generator":case"pipe":case"parallel":case"error-handler":case ...
12`)}var wr=require("effect"),Cs={pretty:!0,includeMetadata:!0,compact:!1},ws=(e,t)=>wr.Effect.gen(function*(){let r=
13 Empty((No steps))`;let i=[`flowchart ${r}`],a=[],c=n.some(l=>l.errorTypes.length>0);for(let l=0;l<n.length;l++){let o=n[l];if(!o)continue;let d=qt(l),f=jt(o.label);if(l<n.length-1){let u=n[l+1];if(!u)continue;let p=qt(l+1),y=jt(u.label);l===0?i.push(` ${d}["${f}"] -->|ok| ${p}["${y}"]`):i.push(` ${d} -->|ok| ${p}["${y}"]`)}else l===0?i.push(` ${d}["${f}"] -->|ok| Done((Success))
14`)}var vr=require("effect");function Fs(e,t){if(e.type==="effect"){let n=e.requiredServices??[];for(let i of n)t.some(a=>a.serviceId===i.serviceId)||t.push(i)}let r=vr.Option.getOrElse(P(e),()=>[]);for(let s of r)Fs(s,t)}function Aa(e,t){let r=e.callee;if(r.includes("provideService")||r.includes("provide"))return t(e)}function Rs(e,t){let r=[];for(let f of e.root.children)Fs(f,r);let s=Array.from(new Map(r.map(f=>[f.serviceId,f])).values()),n=[],i=[],a=new Map,c=new Set,l=t?.getFirstArgText;function o(f){for(let u of f){if(u.type==="effect"){let y=u,m=l?Aa(y,l):void 0;if(m){c.add(m);let E={nod ...
15 NoServices((No services))`;let c=[`flowchart ${r}`],l=Ar(e.root.programName);c.push(` prog["${l}"]`),c.push("");for(let o of a){let d=`svc_${he(o
16`)}function Ds(e,t={}){let s=[`flowchart ${t.direction??"TB"}`];s.push(""),s.push(" %% Service Dependency Graph"),s.push("");for(let[i,a]of e.services){let c=he(i),l=a.definition.methods.length,o=l>0?`${i}\\n(${l} method${l===1?"":"s"})`:i;s.push(` ${c}{{"${o}"}}`)}for(let i of e.unresolvedServices){let a=`unresolved_${he(i)}`;s.push(` ${a}["? ${i}"]`)}s.push("");let n=new Set;for(let[i,a]of e.services)for(let c of a.layerImplementations)for(let l of c.requires){let o=`${i}->
17`)}var ct=require("effect");var Ps=require("effect");function Ls(e,t){for(let r of e){r.type==="effect"&&t.push(r);let s=Ps.Option.getOrElse(P(r),()=>[]);s.length>0&&Ls(s,t)}}function Ms(e){let t=[],r=[],s=new Set,n=new Map,i=[];Ls(e.root.children,i);for(let o of i){let d=o.typeSignature?.successType,f=(o.requiredServices??[]).map(u=>u.serviceId);if(d){s.add(d);let u=n.get(d)??[];u.push(o.id),n.set(d,u)}t.push({id:o.id,name:o.callee,writes:d,reads:f,location:o.location?{line:o.location.line,column:o.location.column}:void 0})}for(let o=0;o<i.length-1;o++){let d=i[o],f=i[o+1];if(d===void 0||f=== ...
18<${a.successType}, ${a.errorType}, ${a.requirementsType}>`}e.semanticRole&&e.semanticRole!=="unknown"&&e.semanticRole!=="constructor"&&(s+=`
19(${e.semanticRole})`)}if(r?.length){let a=n?r.filter(c=>!c.startsWith("<")||!c.includes(",")):r;a.length&&(s+=`
21`))}return s}function Pa(e){return e.type==="concurrency-primitive"?"concurrencyPrimitiveStyle":e.type==="try-catch"?"tryCatchStyle":e.type==="error-handler"?"errorHandlerStyle":`${e.type}Style`}function
22`)}var Hs=(e,t)=>ct.Effect.sync(()=>Ve(e,t));function Bs(e){let t=e.toLowerCase();return t.includes("log")||t.includes("loginfo")||t.includes("logdebug")||t.includes("logwarning")||t.includes("logerror")||t.includes("taperror")}function Ks(e){let t=e.toLowerCase();return t.includes("map")||t.includes("flatmap")||t.includes("filter")||t.includes("transform")||t.includes("tap(")||t==="tap"||t.includes("annotate")||t.includes("hsep")||t.includes("ansidoc.text")}function zs(e){let t=e.trim();return!!(/\(environment\)/i.test(t)||/^[A-Z][A-Za-z0-9_]+$/.test(t)||/^(Context\.Tag|GenericTag|Effect\.ser ...
23`)}var Oa={...qs,showTypeSignatures:!0,showRequiredServices:!0,showErrorNodes:!1};function Wa(e,t){let r=new Map,s=t.showTypeSignatures!==!1,n=t.showRequiredServices===!0;function i(a){if(a.type==="effect"){let c=[];if(s&&a.typeSignature&&c.push(`<${a.typeSignature.successType}, ${a.typeSignature.errorType}, ${a.typeSignature.requirementsType}>`),n&&a.requiredServices&&a.requiredServices.length>0){let l=a.requiredServices.map(o=>o.serviceId).join(", ");c.push(`R: ${l}`)}c.length>0&&r.set(a.id,c)}switch(a.type){case"generator":for(let c of a.yields)i(c.effect);break;case"pipe":i(a.initial);for( ...
24`)}var Vs=(e,t)=>ct.Effect.sync(()=>Rr(e,t));function Gs(e,t){for(let r of e){r.type==="fiber"&&t.
26 note over Main: No fiber operations detected`;let n=["sequenceDiagram"," participant Main"];return r.forEach((i,a)=>{n.push(` participant Fiber${a+1}`)}),n.push(""),r.forEach((i
27`)}function Js(e,t){for(let r of e){r.type==="retry"&&t.push(r);let s=ct.Option.getOrElse(P(r),()=>[]);s.length>0&&
30 No retry schedules detected`;let s=["gantt"," title Retry Schedule"," section Attempts"];return r.forEach((n,i)=>{let a=n.scheduleInfo,c=a.maxRetries==="unlimited"?5:Math.min
31`)}function Xs(e,t={}){let r=t.direction??"TB",s=[],n=a=>a.replace(/[^a-zA-Z0-9_]/g,"_");s.
32`)}function $r(e){return e.replace(/"/g,"#quot;").replace(/</g,"#lt;").replace(/>/g,"#gt;").replace(/\(/g,"#lpar;").replace(/\)/g,"#rpar;")}function ve(e){return e.replace(/[^a-zA-Z0-9_]/g,"_")}function Ba(e){return e.replace(/(Error|Exception)$/,"")}function Qs(e,t={}){let r=t.direction??"LR",s=Ut(e),n=Vt(e);if(s.allErrors.length===0)return`flowchart ${r}
33 NoErrors((No errors))`;let i=[`flowchart ${r}`],a=[],c=new Set;for(let d of n.propagation)if(d.narrowedBy&&d.narrowedBy.removedErrors.length>0){let f=`handler_${ve(d.atNode)}`;a.push({id:f,label:d.narrowedBy.handler,removedErrors:d.narrowedBy.removedErrors});for(let u of d.narrowedBy.removedErrors)c.add(u)}let l=s.allErrors.filter(d=>!c.has(d)),o=s.stepErrors.filter(d=>d.errors.length>0);if(o.length>0){i.push(""),i.push(" subgraph Steps");for(let d of o){let f=$r(d.stepName??d.stepId);i.push(` step_${ve(d.stepId)}["${f}"]`)}i.push(" end")}i.push(""),i.push(" subgraph Errors");for(let d ...
34`)}var ti=require("effect");var Ka=new Set(["conditional","decision","switch","match"]);function Re(e){return e.replace(/"/g,"#quot;").replace(/</g
35 NoDec((No decisions))`;let n=[`flowchart ${r}`],i={value:0};for(let{node:a,nodeId:c}of s)switch(a.type){case"conditional":{let l=a,o=Re(Dr(l.condition));n.push(` ${c}{${o}}`);let d=l.trueEdgeLabel??"true",f=l.falseEdgeLabel??"false",u=ei(l.onTrue,s,i);if(u.extraLine&&n.push(u.extraLine),n.push(` ${c} -->|${d}| ${u.targetId}`),l.onFalse){let p=ei(l.onFalse,s,i);p.extraLine&&n.push(p.extraLine),n.push(` ${c} -->|${f}| ${p.targetId}`)}break}case"decision":{let l=a,o=Re(Dr(l.condition));n.push(` ${c}{${o}}`);let d=Pr(l.onTrue,s,i);if(d.extraLine&&n.push(d.extraLine),n.push(` ${c} -->|true| ...
36`)}var ii=require("effect");function oi(e){return e.replace(/"/g,"#quot;").replace(/</g,"#lt;").replace(/>/g,"#gt;").replace(/\(/g,"#lpar;").replace(/\)/g,"#rpar;")}function Gt(e){return e.replace(/[^a-zA-Z0-9]/g,"_")}var qa=new Set(["Effect.fail","Effect.die","Effect.interrupt"]);function ja(e){if(e.type==="effect"){let t=e.typeSignature?.errorType??e.errorType;if(t&&t!=="never"&&t.trim()!=="")return t}}function Ha(e){return e==="Effect.die"?"die":e==="Effect.interrupt"?"interrupt":"fail"}function Lr(e){let t=[];if(e.type==="cause"&&e.isConstructor){let s=e.causeOp;if(s==="parallel"||s==="seq ...
37 NoCauses((No failure causes))`;let n=[`flowchart ${r}`],i=new Map,a={value:0},c="Root",l=oi(e.root.programName);n.push(` ${c}((${l}))`);for(let d of
38`)}var di=require("effect");function $e(e){return e.replace(/"/g,"#quot;").replace(/</g,"#lt;").replace(/>/g,"#gt;").replace(/\(/g,"#lpar;").replace(/\)/g,"#rpar;")}function De(e,t){return`${e}${t}`}function li(e,t){let r=s=>H(s,j);return e.displayName?r(e.displayName):e.name?r(e.name):e.type==="effect"?r(e.callee):`child_${t}`}function Ua(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Va(e){let t=[],r=s=>{switch(s.type){case"parallel":t.push({kind:"parallel",node:s});break;case"race":t.push({kind:"race",node:s});break;case"fiber":t.push({kind:"fiber",node:s});break;case"concurrency-p ...
39 NoConcurrency((No concurrency))`;let n=[`flowchart ${r}`],i=[],a=0,c=[];for(let l of s)switch(l.kind){case"parallel":{let o=l.node,d=De("P"
40`)}var Yt=require("effect");function Ga(e){let t=[],r=s=>{if(s.type==="parallel"){t.push({kind:"parallel",node:s});return}if(s.type==="retry"){t.push({kind:"retry",node:s}),r(s.source);return}if(s.type==="timeout"){t.push({kind:"timeout",node:s}),r(s.source);return}if(s.type==="effect"){let i=s.callee;if(i==="Effect.fn"||i.startsWith("Effect.fn(")||i.startsWith("Schema.")||i.startsWith("Data."))return;let a=s.displayName??"";if(!(a&&a!==i&&a!==s.type)&&(i.startsWith("Effect.")||i==="Effect"))return;s.serviceCall?t.push({kind:"service-call",node:s}):t.push({kind:"effect-constructor",node:s});re ...
42 Note over Program: Empty program`;let r=Ya(t),s=["sequenceDiagram"];s.push(" participant Program");for(let n of r)s.push(` participant ${n}`);for(let n of t)switch(n.kind){
43`)}var pi=require("effect");function yi(e,t){for(let r of e){if(r.type==="layer"){let n=r,i={id:n.id,provides:[...n.provides??[]],requires:[...n.requires??[]],lifecycle:n.lifecycle??"default",isMerged:n.isMerged,operationLayerIds:n.operations.filter(a=>a.type==="layer").map(a=>a.id)};n.name!==void 0&&(i.name=n.name),t.push(i)}let s=pi.Option.getOrElse(P(r),()=>[]);s.length>0&&yi(s,t)}}function mi(e){let t=[];yi(e.root.children,t);let r=[],s=new Map;for(let n of t){for(let i of n.operationLayerIds)r.push({from:n.id,to:i,kind:"merge"});for(let i of n.provides){let a=s.get(i)??[];a.push(n.id),s.s ...
44 NoLayers((No layers))`;let n=[`flowchart ${r}`],i=new Set;for(let c of s.layers){for(let l of c.provides)i.
45`)}var hi=require("effect");function Mr(e){return e.replace(/"/g,"#quot;").replace(/</g,"#lt;").replace(/>/g,"#gt;").replace(/\(/g,"#lpar;").replace(/\)/g,"#rpar;")}function Si(e,t){for(let r of e){(r.type==="retry"||r.type==="timeout")&&t.push({node:r,index:t.length});let s=hi.Option.getOrElse(P(r),()=>[]);s.length>0&&Si(s,t)}}function Za(e){if(e.type!=="retry")return"";let t=e.scheduleInfo;if(!t)return"retry";let r=[t.baseStrategy];return t.maxRetries!==void 0&&t.maxRetries!=="unlimited"&&r.push(`${t.maxRetries}x`),t.initialDelay&&r.push(t.initialDelay),t.maxDelay&&r.push(`max ${t.maxDelay}` ...
Long lines were clipped for display.