@bkm016/basalt 0.1.9 → 0.1.10

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 (132) hide show
  1. package/{chunk-0xd9mnc2.js → chunk-0mjb3sm3.js} +2 -2
  2. package/{chunk-66h5qpc6.js → chunk-3mqf9ped.js} +89 -89
  3. package/compiled.js +1 -1
  4. package/package.json +1 -1
  5. package/ui-test-worker.js +1 -1
  6. package/web/chunk-045d3b5d.js +1 -0
  7. package/web/{chunk-ff1pmd3g.js → chunk-0770q5e1.js} +1 -1
  8. package/web/{chunk-2x4g9t37.js → chunk-18neka5g.js} +2 -2
  9. package/web/{chunk-w3w18stt.js → chunk-1ev0n3n4.js} +1 -1
  10. package/web/chunk-1ex3wgms.js +2 -0
  11. package/web/{chunk-7qkav30b.js → chunk-1qh7f5kr.js} +1 -1
  12. package/web/{chunk-rayf24gy.js → chunk-26ecc2xh.js} +8 -8
  13. package/web/{chunk-me7dza1c.js → chunk-2cz7tx8q.js} +1 -1
  14. package/web/{chunk-mdfksj61.js → chunk-32ty2xfn.js} +1 -1
  15. package/web/{chunk-ts6jsfdk.js → chunk-3eexx7y5.js} +1 -1
  16. package/web/{chunk-2dvbeqt0.js → chunk-46jnkghq.js} +1 -1
  17. package/web/chunk-4am8j3k3.js +1 -0
  18. package/web/{chunk-qz6r9v1z.js → chunk-5qvmefq2.js} +1 -1
  19. package/web/{chunk-9ctg0f30.js → chunk-5svqfj4g.js} +1 -1
  20. package/web/{chunk-qsqtwf34.js → chunk-5v5q13hz.js} +1 -1
  21. package/web/chunk-7np1jp3x.js +8 -0
  22. package/web/chunk-87e8d1hv.js +1 -0
  23. package/web/{chunk-kcjz03h5.js → chunk-88wd49xe.js} +2 -2
  24. package/web/{chunk-0pghpg4y.js → chunk-8h2x89tw.js} +1 -1
  25. package/web/chunk-8y2526ve.js +1 -0
  26. package/web/{chunk-8jcvdd5d.js → chunk-905vw286.js} +1 -1
  27. package/web/{chunk-2hrswh3d.js → chunk-918e5t4x.js} +1 -1
  28. package/web/chunk-96m2m3e8.js +1 -0
  29. package/web/{chunk-43g4wd7a.js → chunk-9f4zzqbx.js} +1 -1
  30. package/web/{chunk-dnv8dx72.js → chunk-a1n4468c.js} +1 -1
  31. package/web/{chunk-s37beysw.js → chunk-b46ws7rf.js} +1 -1
  32. package/web/{chunk-24jhbz82.js → chunk-bc3ajvfg.js} +1 -1
  33. package/web/{chunk-ket6g0yd.js → chunk-d5gshd1a.js} +1 -1
  34. package/web/{chunk-c6yacwbc.js → chunk-de40q05r.js} +1 -1
  35. package/web/chunk-dp0k5vhd.js +1 -0
  36. package/web/{chunk-5dr4tkem.js → chunk-dv1berk6.js} +3 -3
  37. package/web/{chunk-dwjmr0zj.js → chunk-eh7wp62z.js} +1 -1
  38. package/web/{chunk-ctzkqx2g.js → chunk-ehtmb6sn.js} +1 -1
  39. package/web/chunk-et1hytyv.js +1 -0
  40. package/web/chunk-f9m9seam.js +1 -0
  41. package/web/{chunk-3pd0qt83.js → chunk-fmmrthpa.js} +2 -2
  42. package/web/chunk-g2erm7k0.js +1 -0
  43. package/web/chunk-g3kbn0t2.js +1 -0
  44. package/web/{chunk-t893141g.js → chunk-g7dc4hrd.js} +1 -1
  45. package/web/{chunk-p9hfcamx.js → chunk-g7kz8f7q.js} +1 -1
  46. package/web/chunk-ght0t49g.js +1 -0
  47. package/web/{chunk-xa43ndfj.js → chunk-ghwm7bdj.js} +2 -2
  48. package/web/{chunk-8z0r0wtk.js → chunk-grm2208k.js} +1 -1
  49. package/web/{chunk-0zwc2rvh.js → chunk-gsw1tv96.js} +1 -1
  50. package/web/{chunk-tftc5v89.js → chunk-gw8x1g61.js} +1 -1
  51. package/web/chunk-gx340asc.js +1 -0
  52. package/web/{chunk-935mjq1c.js → chunk-h2txs73e.js} +1 -1
  53. package/web/chunk-h3tkacc7.js +1 -0
  54. package/web/{chunk-ewx42c11.js → chunk-h5ckjk48.js} +1 -1
  55. package/web/{chunk-nnyc889n.js → chunk-j37p0b13.js} +1 -1
  56. package/web/{chunk-fjb3ksfd.js → chunk-j89s11x8.js} +1 -1
  57. package/web/chunk-je78j3vr.js +1 -0
  58. package/web/{chunk-fpb2dd2d.js → chunk-jke2ev6m.js} +1 -1
  59. package/web/{chunk-98y92vmh.js → chunk-js6kb05s.js} +1 -1
  60. package/web/{chunk-30b33r2w.js → chunk-k0cg4n2k.js} +2 -2
  61. package/web/{chunk-b5h52neg.js → chunk-knm82fw9.js} +1 -1
  62. package/web/{chunk-vqmj6peg.js → chunk-kxdtg9dt.js} +1 -1
  63. package/web/{chunk-db3twjvk.js → chunk-m4fxd5d9.js} +5 -5
  64. package/web/chunk-m9xzt9p7.js +1 -0
  65. package/web/{chunk-xx11yv61.js → chunk-n4yzs2q0.js} +1 -1
  66. package/web/{chunk-zdyys4ar.js → chunk-nawxgz87.js} +2 -2
  67. package/web/chunk-ngt1j8py.js +1139 -0
  68. package/web/{chunk-3ak5dg10.js → chunk-p55vhns6.js} +1 -1
  69. package/web/{chunk-nvpp0ghj.js → chunk-pgwf37s2.js} +1 -1
  70. package/web/{chunk-af9evdza.js → chunk-q4bst4an.js} +1 -1
  71. package/web/{chunk-9fnr00kv.js → chunk-qdzy124b.js} +2 -2
  72. package/web/chunk-qe0bgeda.js +1 -0
  73. package/web/{chunk-60axh4sa.js → chunk-qy1zx2yw.js} +2 -2
  74. package/web/{chunk-sk1wkgjw.js → chunk-rag65pfs.js} +1 -1
  75. package/web/{chunk-5jdrev9p.js → chunk-rbqnre6q.js} +3 -3
  76. package/web/{chunk-ddyyc20r.js → chunk-rh3xb76f.js} +1 -1
  77. package/web/{chunk-wzd2a4k5.js → chunk-rwfmccmh.js} +1 -1
  78. package/web/{chunk-zb2bkr7f.js → chunk-rxvm70w5.js} +1 -1
  79. package/web/{chunk-z05x9cbm.js → chunk-sat7zyva.js} +1 -1
  80. package/web/{chunk-rrpn5r5w.js → chunk-sc63488q.js} +1 -1
  81. package/web/{chunk-v1exk5wd.js → chunk-sd3xat3r.js} +6 -6
  82. package/web/{chunk-4a6gdrbs.js → chunk-se4h6wx0.js} +1 -1
  83. package/web/{chunk-a0ryzdnp.js → chunk-sjkg40ay.js} +1 -1
  84. package/web/chunk-sk0hpa80.js +1 -0
  85. package/web/{chunk-spbs56wz.js → chunk-t5nvgz7z.js} +1 -1
  86. package/web/{chunk-veam6vk4.js → chunk-tfqarvdx.js} +30 -30
  87. package/web/{chunk-5a4mj3qz.js → chunk-tqze6d6b.js} +1 -1
  88. package/web/{chunk-8w7fyb3v.js → chunk-tt93zbn4.js} +7 -7
  89. package/web/chunk-tvcxrx6h.js +1 -0
  90. package/web/chunk-tzpnh70q.js +1 -0
  91. package/web/{chunk-79e08rk1.js → chunk-vasppf6b.js} +1 -1
  92. package/web/chunk-vb7g4xg6.js +1 -0
  93. package/web/{chunk-dz7g1gnv.js → chunk-w3zgfhjb.js} +1 -1
  94. package/web/{chunk-gn8kyz76.js → chunk-wrevb4ew.js} +1 -1
  95. package/web/{chunk-3ecrkvr3.js → chunk-wtvch4ad.js} +1 -1
  96. package/web/chunk-wzfe6jtq.js +1 -0
  97. package/web/{chunk-eadfxfkw.js → chunk-x5g1yy12.js} +1 -1
  98. package/web/{chunk-m9q5nr8f.js → chunk-x850q01z.js} +1 -1
  99. package/web/{chunk-a61zrp66.js → chunk-xk904wqv.js} +1 -1
  100. package/web/{chunk-3hr3ew9w.js → chunk-xtn305fd.js} +1 -1
  101. package/web/{chunk-3txxt0a7.js → chunk-yekaz74b.js} +1 -1
  102. package/web/{chunk-rasjtvsb.js → chunk-yppgejg7.js} +2 -2
  103. package/web/{chunk-66wb0p6e.js → chunk-z4bp6p32.js} +1 -1
  104. package/web/{chunk-5v2c0aqk.js → chunk-z5qn0xev.js} +1 -1
  105. package/web/{chunk-5baeh8q7.js → chunk-zms6mrqk.js} +4 -4
  106. package/web/{chunk-601k823s.js → chunk-zse05v6j.js} +2 -2
  107. package/web/{chunk-vsjpnwsr.js → chunk-zz1qkaar.js} +1 -1
  108. package/web/index.html +1 -1
  109. package/web/chunk-08sq3cwm.js +0 -1
  110. package/web/chunk-24fjnnee.js +0 -1
  111. package/web/chunk-2j2atyjw.js +0 -1
  112. package/web/chunk-3h3g3ca3.js +0 -1
  113. package/web/chunk-3pcrxg6m.js +0 -1
  114. package/web/chunk-814kkkmq.js +0 -8
  115. package/web/chunk-8w8atrdh.js +0 -1
  116. package/web/chunk-942g3eqn.js +0 -1
  117. package/web/chunk-avxk6jpc.js +0 -2
  118. package/web/chunk-fmthkpff.js +0 -1
  119. package/web/chunk-gv99c8zv.js +0 -1
  120. package/web/chunk-h0767tjv.js +0 -1
  121. package/web/chunk-hqynf99g.js +0 -1
  122. package/web/chunk-mbwwj216.js +0 -1
  123. package/web/chunk-n0wazxgz.js +0 -1
  124. package/web/chunk-nvt9tkt4.js +0 -1139
  125. package/web/chunk-ph1dgffm.js +0 -1
  126. package/web/chunk-rad2s9ha.js +0 -1
  127. package/web/chunk-s60s09mb.js +0 -1
  128. package/web/chunk-tfvcs2xx.js +0 -1
  129. package/web/chunk-wdq2tp9e.js +0 -1
  130. package/web/chunk-wkf5xfyr.js +0 -1
  131. package/web/chunk-y1qty77a.js +0 -1
  132. package/web/chunk-zgavhnt8.js +0 -1
package/compiled.js CHANGED
@@ -20,4 +20,4 @@ import{Ur,Br,Mn}from"./chunk-v3ee9z3f.js";import{W}from"./chunk-4gtgqcct.js";imp
20
20
  `);let{connect:a,buffered:_}=await d;if(e.emit("proxyConnect",a),this.emit("proxyConnect",a,e),e.emit("proxy",{proxy:this.proxy.href,socket:n}),a.statusCode===200){if(e.once("socket",Dn),t.secureEndpoint)return F("Upgrading socket connection to TLS"),Ie.connect({...Lt(lt(t),"host","path","port"),socket:n});return n}if(a.statusCode===407&&this.onProxyAuth){F("Got 407 response, invoking onProxyAuth callback"),n.destroy();let l=a.headers["proxy-authenticate"]||"",f=Array.isArray(l)?l[0].split(/\s/)[0]:l.split(/\s/)[0],m=await this.onProxyAuth({response:a,scheme:f});return this._connectWithAuth(e,t,m.headers)}n.destroy();let u=new G.Socket({writable:!1});return u.readable=!0,e.once("socket",(l)=>{F("Replaying proxy buffer for failed request"),Ja(l.listenerCount("data")>0),l.push(_),l.push(null)}),u}async _connectWithAuth(e,t,o){let{proxy:n}=this,s;if(n.protocol==="https:")s=Ie.connect(lt(this.connectOpts));else s=G.connect(this.connectOpts);let r=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},c=G.isIPv6(t.host)?`[${t.host}]`:t.host,d=`CONNECT ${c}:${t.port} HTTP/1.1\r
21
21
  `;if(n.username||n.password){let u=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;r["Proxy-Authorization"]=`Basic ${Buffer.from(u).toString("base64")}`}if(Object.assign(r,o),r.Host=`${c}:${t.port}`,!r["Proxy-Connection"])r["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close";for(let u of Object.keys(r))d+=`${u}: ${r[u]}\r
22
22
  `;let a=Dt(s);s.write(`${d}\r
23
- `);let{connect:_}=await a;if(e.emit("proxyConnect",_),this.emit("proxyConnect",_,e),_.statusCode===200){if(e.once("socket",Dn),t.secureEndpoint)return F("Upgrading socket connection to TLS"),Ie.connect({...Lt(lt(t),"host","path","port"),socket:s});return s}throw s.destroy(),Error(`Proxy authentication failed with status ${_.statusCode} after retry`)}}pt.protocols=["http","https"];function Dn(e){setImmediate(()=>{e.resume()})}function Lt(e,...t){let o={},n;for(n in e)if(!t.includes(n))o[n]=e[n];return o}var Ht="<empty>",Za="thinking-binding-controls-2026-08-01",wn="[Reasoning redacted]",ue=(e,t,o={})=>{let n=new M,s=Oe(t);return(async()=>{let r={role:"assistant",content:[],api:"bedrock-converse-stream",provider:e.provider,model:e.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:"pending",timestamp:Date.now()},c=r.content,d=o.profile||o.env?.AWS_PROFILE,a={profile:d||P("AWS_PROFILE",o.env)},_=Wn(o),u=Boolean(P("AWS_PROFILE")),l=Vn(e.baseUrl),f=Gi(e.baseUrl,_,u);if(f)a.endpoint=e.baseUrl;let m=P("AWS_BEDROCK_SKIP_AUTH",o.env)==="1",A=o.bearerToken||o.apiKey||P("AWS_BEARER_TOKEN_BEDROCK",o.env)||void 0,h=A!==void 0&&!m;if(typeof process<"u"&&(process.versions?.node||process.versions?.bun)){let I=e.id.match(/^arn:aws(?:-[a-z0-9-]+)?:bedrock:([a-z0-9-]+):/);if(I)a.region=I[1];else if(_)a.region=_;else if(l&&f)a.region=l;else if(!u)a.region="us-east-1";if(m)a.credentials={accessKeyId:"dummy-access-key",secretAccessKey:"dummy-secret-key"};let S=yi(o.env);if(!m&&S&&!d)a.credentials=S;let x=Lr(e.baseUrl,o.env);if(x)a.requestHandler=new wt.NodeHttpHandler({httpAgent:new _t(x),httpsAgent:new pt(x)});else if(P("AWS_BEDROCK_FORCE_HTTP1",o.env)==="1")a.requestHandler=new wt.NodeHttpHandler}else a.region=_||(l&&f?l:void 0)||"us-east-1";if(h)a.token={token:A},a.authSchemePreference=["httpBearerAuth"];let N;try{let I=e.compat?.supportsStrictMode??!1,S=new Ot(a),x=!1;if(o.onResponse)li(S,o.onResponse,e,()=>{x=!0});let V=ye(o.headers);if(V)di(S,V);let j=Ei(o.cacheRetention,o.env),z=o.maxTokens??(Ct(e)?e.maxTokens:void 0),D=me(s.messages),qn=D?U(D):void 0,gt={modelId:e.id,messages:Ti(s,e,j,o.env),system:vi(qn,e,j,o.env),inferenceConfig:{...z!==void 0&&{maxTokens:z},...o.temperature!==void 0&&{temperature:o.temperature}},toolConfig:Ii(oe(s.messages),o.toolChoice,I),additionalModelRequestFields:Bi(e,o),...o.requestMetadata!==void 0&&{requestMetadata:o.requestMetadata}},Vt=await o?.onPayload?.(gt,e);if(Vt!==void 0)gt=Vt;let zn=new Nt(gt),Y=await S.send(zn,{abortSignal:o.signal});if(N=Wt(Y.$metadata.requestId),!x&&Y.$metadata.httpStatusCode!==void 0){let p={};if(Y.$metadata.requestId)p["x-amzn-requestid"]=Y.$metadata.requestId;await o?.onResponse?.({status:Y.$metadata.httpStatusCode,headers:p},e)}for await(let p of Y.stream)if(await o.onProviderStreamEvent?.(p,e),p.messageStart){if(p.messageStart.role!==ce.ASSISTANT)throw Error("Unexpected assistant message start but got user message start instead");n.push({type:"start",partial:r})}else if(p.contentBlockStart)pi(p.contentBlockStart,c,r,n);else if(p.contentBlockDelta)mi(p.contentBlockDelta,c,r,n);else if(p.contentBlockStop)gi(p.contentBlockStop,c,r,n);else if(p.messageStop){r.rawStopReason=p.messageStop.stopReason;let{stopReason:Yn,errorMessage:Kt}=ki(p.messageStop.stopReason);if(r.stopReason=Yn,Kt)r.errorMessage=Kt}else if(p.metadata)Ci(p.metadata,e,r);else if(p.internalServerException)throw p.internalServerException;else if(p.modelStreamErrorException)throw p.modelStreamErrorException;else if(p.validationException)throw p.validationException;else if(p.throttlingException)throw p.throttlingException;else if(p.serviceUnavailableException)throw p.serviceUnavailableException;if(o.signal?.aborted)throw Error("Request was aborted");if(r.stopReason==="pending")throw Error("Bedrock stream ended without a stop reason");if(r.stopReason==="error"||r.stopReason==="aborted")throw Error(r.errorMessage||"An unknown error occurred");for(let p of r.content)Un(p);n.push({type:"done",reason:r.stopReason,message:r}),n.end()}catch(I){for(let S of r.content)Un(S);if(r.stopReason=o.signal?.aborted?"aborted":"error",r.errorMessage=oi(I),r.stopReason==="error")ai(r,I,N);n.push({type:"error",reason:r.stopReason,error:r}),n.end()}})(),n},ei={InternalServerException:"Internal server error",ModelStreamErrorException:"Model stream error",ValidationException:"Validation error",ThrottlingException:"Throttling error",ServiceUnavailableException:"Service unavailable"},ti="https://docs.aws.amazon.com/bedrock/latest/userguide/data-retention.html";function oi(e){let t=q(e),o=!t.messageCarriesBody&&t.status!==void 0&&t.body!==void 0?`${t.status}: ${t.body}`:t.message,n=/data retention mode/i.test(o)?` See ${ti} for supported data retention modes.`:"";if(e instanceof C)return`${ei[e.name]??e.name}: ${o}${n}`;return`${o}${n}`}var ni=200;function Wt(e){if(typeof e!=="string")return;let t=e.trim();if(t.length===0||t.length>ni)return;return t}function ri(e){if(!(e instanceof Error)||!e.name.endsWith("Exception"))return;return Wt(e.name)}function ai(e,t,o){let n=t?.$metadata,s={};if(typeof n?.httpStatusCode==="number")s.status=n.httpStatusCode;let r=ri(t);if(r!==void 0)s.errorCode=r;let c=Wt(n?.requestId)??o;if(c!==void 0)s.requestId=c;if(Object.keys(s).length===0)return;ke(e,{type:"bedrock_response_failure",timestamp:Date.now(),details:s})}var ii=new Set(["authorization","host"]);function ci(e){let t=e.toLowerCase();return t.startsWith("x-amz-")||ii.has(t)}function di(e,t){let o=(n)=>async(s)=>{let r=s.request;if(r&&typeof r==="object"&&"headers"in r){let c=r.headers;for(let[d,a]of Object.entries(t))if(!ci(d))c[d]=a}return n(s)};e.middlewareStack.add(o,{step:"build",name:"pi-ai-custom-headers",priority:"low"})}function _i(e){if(!e||typeof e!=="object")return!1;let t=e;return typeof t.statusCode==="number"&&!!t.headers&&typeof t.headers==="object"}function ui(e){if(!_i(e))return;return{status:e.statusCode,headers:{...e.headers}}}function li(e,t,o,n){let s=(r)=>async(c)=>{let d=await r(c),a=ui(d.response);if(a)n(),await t(a,o);return d};e.middlewareStack.add(s,{step:"deserialize",name:"pi-ai-response-headers"})}var $n=(e,t,o)=>{let n={...K(e,t,o,void 0),toolChoice:o?.toolChoice};if(!o?.reasoning)return ue(e,t,{...n,reasoning:void 0});if(Ct(e)){if(bt(e.id,e.name))return ue(e,t,{...n,reasoning:o.reasoning,thinkingBudgets:o.thinkingBudgets});let s=Dr(n.maxTokens,e.maxTokens,o.reasoning,o.thinkingBudgets),r=Zt(e,t,s.maxTokens);return ue(e,t,{...n,maxTokens:r,reasoning:o.reasoning,thinkingBudgets:{...o.thinkingBudgets||{},[ko(o.reasoning)]:Math.min(s.thinkingBudget,Math.max(0,r-1024))}})}return ue(e,t,{...n,reasoning:o.reasoning,thinkingBudgets:o.thinkingBudgets})};function pi(e,t,o,n){let{contentBlockIndex:s,start:r}=e;if(r?.toolUse){let c={type:"toolCall",id:r.toolUse.toolUseId||"",name:r.toolUse.name||"",arguments:{},partialJson:"",index:s};o.content.push(c),n.push({type:"toolcall_start",contentIndex:t.length-1,partial:o})}}function mi(e,t,o,n){let{contentBlockIndex:s,delta:r}=e,c=t.findIndex((a)=>a.index===s),d=t[c];if(r?.text!==void 0){if(!d){let a={type:"text",text:"",index:s};o.content.push(a),c=t.length-1,d=t[c],n.push({type:"text_start",contentIndex:c,partial:o})}if(d.type==="text")d.text+=r.text,n.push({type:"text_delta",contentIndex:c,delta:r.text,partial:o})}else if(r?.toolUse&&d?.type==="toolCall")d.partialJson=(d.partialJson||"")+(r.toolUse.input||""),d.arguments=W(d.partialJson),n.push({type:"toolcall_delta",contentIndex:c,delta:r.toolUse.input||"",partial:o});else if(r?.reasoningContent){let a=d,_=c;if(!a){let u={type:"thinking",thinking:"",thinkingSignature:"",index:s};o.content.push(u),_=t.length-1,a=t[_],n.push({type:"thinking_start",contentIndex:_,partial:o})}if(a?.type==="thinking"){if(r.reasoningContent.text)a.thinking+=r.reasoningContent.text,n.push({type:"thinking_delta",contentIndex:_,delta:r.reasoningContent.text,partial:o});if(r.reasoningContent.signature&&!a.redacted)a.thinkingSignature=(a.thinkingSignature||"")+r.reasoningContent.signature;if(r.reasoningContent.redactedContent?.length){if(!a.redacted)a.redacted=!0,a.thinkingSignature="",a.thinking+=wn,n.push({type:"thinking_delta",contentIndex:_,delta:wn,partial:o});a.redactedChunks??=[],a.redactedChunks.push(r.reasoningContent.redactedContent)}}}}function Fn(e){if(e.type!=="thinking"||!e.redactedChunks)return;e.thinkingSignature=Di(e.redactedChunks),delete e.redactedChunks}function Un(e){delete e.index,delete e.partialJson,Fn(e)}function Ci(e,t,o){if(e.usage)o.usage.input=e.usage.inputTokens||0,o.usage.output=e.usage.outputTokens||0,o.usage.cacheRead=e.usage.cacheReadInputTokens||0,o.usage.cacheWrite=e.usage.cacheWriteInputTokens||0,o.usage.cacheWrite1h=e.usage.cacheDetails?.reduce((n,s)=>n+(s.ttl===ct.ONE_HOUR?s.inputTokens??0:0),0),o.usage.totalTokens=e.usage.totalTokens||o.usage.input+o.usage.output,Q(t,o.usage)}function gi(e,t,o,n){let s=t.findIndex((c)=>c.index===e.contentBlockIndex),r=t[s];if(!r)return;switch(delete r.index,r.type){case"text":n.push({type:"text_end",contentIndex:s,content:r.text,partial:o});break;case"thinking":Fn(r),n.push({type:"thinking_end",contentIndex:s,content:r.thinking,partial:o});break;case"toolCall":r.arguments=W(r.partialJson),delete r.partialJson,n.push({type:"toolcall_end",contentIndex:s,toolCall:r,partial:o});break}}function Ge(e,t){return(t?[e,t]:[e]).flatMap((n)=>{let s=n.toLowerCase();return[s,s.replace(/[\s_.:]+/g,"-")]})}function bt(e,t){return Ge(e,t).some((n)=>n.includes("opus-4-6")||n.includes("opus-4-7")||n.includes("opus-4-8")||n.includes("opus-5")||n.includes("sonnet-4-6")||n.includes("sonnet-5")||n.includes("haiku-5")||n.includes("fable-5"))}function fi(e){return Ge(e.id,e.name).some((o)=>o.includes("opus-4-7")||o.includes("opus-4-8")||o.includes("opus-5")||o.includes("sonnet-5")||o.includes("haiku-5")||o.includes("fable-5"))}function hi(e){return Ge(e.id,e.name).some((o)=>o.includes("opus-4-7")||o.includes("opus-4-8")||o.includes("opus-5")||o.includes("sonnet-5")||o.includes("haiku-5")||o.includes("fable-5"))}function Si(e,t){if(t==="xhigh"&&fi(e))return"xhigh";let o=t?e.thinkingLevelMap?.[t]:void 0;if(typeof o==="string")return o;switch(t){case"minimal":case"low":return"low";case"medium":return"medium";case"high":return"high";default:return"high"}}function Ei(e,t){if(e)return e;if(P("PI_CACHE_RETENTION",t)==="long")return"long";return"short"}function Ct(e){let t=e.id.toLowerCase(),o=e.name?.toLowerCase()??"";return t.includes("anthropic.claude")||t.includes("anthropic/claude")||o.includes("anthropic.claude")||o.includes("anthropic/claude")||o.includes("claude")}function Hn(e,t){let o=Ge(e.id,e.name);if(!o.some((s)=>s.includes("claude"))){if(P("AWS_BEDROCK_FORCE_CACHE",t)==="1")return!0;return!1}if(o.some((s)=>s.includes("fable-5")||s.includes("opus-5")||s.includes("sonnet-5")||s.includes("haiku-5")))return!0;if(o.some((s)=>s.includes("-4-")))return!0;if(o.some((s)=>s.includes("claude-3-7-sonnet")))return!0;if(o.some((s)=>s.includes("claude-3-5-haiku")))return!0;return!1}function Ri(e){return Ct(e)}function vi(e,t,o,n){if(!e)return;let s=[{text:y(e)}];if(o!=="none"&&Hn(t,n))s.push({cachePoint:{type:Mt.DEFAULT,...o==="long"?{ttl:ct.ONE_HOUR}:{}}});return s}function Ai(e){let t=e.replace(/[^a-zA-Z0-9_-]/g,"_");return t.length>64?t.slice(0,64):t}function mt(e){let t=y(e);return t.trim().length===0?void 0:{text:t}}function xi(e){return mt(e)??{text:Ht}}function Ft(e){if(Array.isArray(e))return e.map(Ft);if(e!==null&&typeof e==="object")return Object.fromEntries(Object.entries(e).filter(([t])=>t.length>0).map(([t,o])=>[t,Ft(o)]));return e}function bn(e){let t=[];for(let o of e)if(o.type==="image")t.push({image:Kn(o.mimeType,o.data)});else{let n=mt(o.text);if(n)t.push(n)}if(t.length===0)t.push({text:Ht});return t}function Ti(e,t,o,n){let s=[],r=ge($t(e.messages),t,Ai);for(let c=0;c<r.length;c++){let d=r[c];switch(d.role){case"user":{let a=[];if(typeof d.content==="string")a.push(xi(d.content));else{for(let _ of d.content)switch(_.type){case"text":{let u=mt(_.text);if(u)a.push(u);break}case"image":a.push({image:Kn(_.mimeType,_.data)});break;default:continue}if(a.length===0)a.push({text:Ht})}s.push({role:ce.USER,content:a});break}case"assistant":{if(d.content.length===0)continue;let a=[];for(let _ of d.content)switch(_.type){case"text":{let u=mt(_.text);if(!u)continue;a.push(u);break}case"toolCall":a.push({toolUse:{toolUseId:_.id,name:_.name,input:Ft(_.arguments)}});break;case"thinking":{if(_.redacted){let l=Mi(_.thinkingSignature);if(l?.length)a.push({reasoningContent:{redactedContent:l}});continue}let u=y(_.thinking);if(u.trim().length===0)continue;if(Ri(t))if(!_.thinkingSignature||_.thinkingSignature.trim().length===0)a.push({text:u});else a.push({reasoningContent:{reasoningText:{text:u,signature:_.thinkingSignature}}});else a.push({reasoningContent:{reasoningText:{text:u}}});break}default:continue}if(a.length===0)continue;s.push({role:ce.ASSISTANT,content:a});break}case"toolResult":{let a=[];a.push({toolResult:{toolUseId:d.toolCallId,content:bn(d.content),status:d.isError?ve.ERROR:ve.SUCCESS}});let _=c+1;while(_<r.length&&r[_].role==="toolResult"){let u=r[_];a.push({toolResult:{toolUseId:u.toolCallId,content:bn(u.content),status:u.isError?ve.ERROR:ve.SUCCESS}}),_++}c=_-1,s.push({role:ce.USER,content:a});break}default:continue}}if(o!=="none"&&Hn(t,n)&&s.length>0){let c=s[s.length-1];if(c.role===ce.USER&&c.content)c.content.push({cachePoint:{type:Mt.DEFAULT,...o==="long"?{ttl:ct.ONE_HOUR}:{}}})}return s}function Ii(e,t,o){if(!e?.length)return;if(t==="none")return;let n=e.map((r)=>{let c=pe(r,o);return{toolSpec:{name:r.name,description:r.description,inputSchema:{json:fe(r,c)},...c===!0?{strict:!0}:{}}}}),s;switch(t){case"auto":s={auto:{}};break;case"any":s={any:{}};break;default:if(t?.type==="tool")s={tool:{name:t.name}}}return{tools:n,toolChoice:s}}function ki(e){switch(e){case de.END_TURN:case de.STOP_SEQUENCE:return{stopReason:"stop"};case de.MAX_TOKENS:case de.MODEL_CONTEXT_WINDOW_EXCEEDED:return{stopReason:"length"};case de.TOOL_USE:return{stopReason:"toolUse"};default:return e?{stopReason:"error",errorMessage:`Provider stopped with: ${e}`}:{stopReason:"error"}}}function Wn(e){return e.region||P("AWS_REGION",e.env)||P("AWS_DEFAULT_REGION",e.env)||void 0}function yi(e){let t=P("AWS_ACCESS_KEY_ID",e),o=P("AWS_SECRET_ACCESS_KEY",e);if(!t||!o)return;let n=P("AWS_SESSION_TOKEN",e);return{accessKeyId:t,secretAccessKey:o,...n?{sessionToken:n}:{}}}function Vn(e){if(!e)return;try{let{hostname:t}=new URL(e);return t.toLowerCase().match(/^bedrock-runtime(?:-fips)?\.([a-z0-9-]+)\.amazonaws\.com(?:\.cn)?$/)?.[1]}catch{return}}function Gi(e,t,o){if(!Vn(e))return!0;return!t&&!o}function Pi(e,t){if(Wn(t)?.toLowerCase().startsWith("us-gov-"))return!0;let n=e.id.toLowerCase();return n.startsWith("us-gov.")||n.startsWith("arn:aws-us-gov:")}function Bi(e,t){if(!t.reasoning||!e.reasoning)return;if(Ct(e)){let n=Pi(e,t),s=n?void 0:t.thinkingDisplay??"summarized",r=!n&&hi(e),c=bt(e.id,e.name)?{thinking:{type:"adaptive",...s!==void 0?{display:s}:{},...r?{block_binding:{prefix_mismatch_behavior:"drop_block"}}:{}},output_config:{effort:Si(e,t.reasoning)},...r?{anthropic_beta:[Za]}:{}}:(()=>{let d={minimal:1024,low:2048,medium:8192,high:16384,xhigh:16384,max:16384},a=t.reasoning==="xhigh"||t.reasoning==="max"?"high":t.reasoning;return{thinking:{type:"enabled",budget_tokens:t.thinkingBudgets?.[a]??d[t.reasoning],...s!==void 0?{display:s}:{}}}})();if(!bt(e.id,e.name)&&(t.interleavedThinking??!0))c.anthropic_beta=["interleaved-thinking-2025-05-14"];return c}let o=Ge(e.id,e.name);if(o.some((n)=>n.includes("gpt-oss")))return{reasoning_effort:Ni[t.reasoning]};if(o.some((n)=>n.includes("gpt-"))){let n=e.thinkingLevelMap?.[t.reasoning];return{reasoning:{effort:typeof n==="string"?n:Oi[t.reasoning]}}}return}var Oi={minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"xhigh",max:"max"},Ni={minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"high",max:"high"};function Kn(e,t){let o;switch(e){case"image/jpeg":case"image/jpg":o=Re.JPEG;break;case"image/png":o=Re.PNG;break;case"image/gif":o=Re.GIF;break;case"image/webp":o=Re.WEBP;break;default:throw Error(`Unknown image type: ${e}`)}return{source:{bytes:Xn(t)},format:o}}function Xn(e){let t=atob(e),o=new Uint8Array(t.length);for(let n=0;n<t.length;n++)o[n]=t.charCodeAt(n);return o}function Mi(e){if(!e)return;try{return Xn(e)}catch{return}}function Di(e){let o="";for(let n of e)for(let s=0;s<n.length;s+=32768)o+=String.fromCharCode(...n.subarray(s,s+32768));return btoa(o)}var jn={stream:ue,streamSimple:$n};si(jn);await import("./chunk-0xd9mnc2.js");
23
+ `);let{connect:_}=await a;if(e.emit("proxyConnect",_),this.emit("proxyConnect",_,e),_.statusCode===200){if(e.once("socket",Dn),t.secureEndpoint)return F("Upgrading socket connection to TLS"),Ie.connect({...Lt(lt(t),"host","path","port"),socket:s});return s}throw s.destroy(),Error(`Proxy authentication failed with status ${_.statusCode} after retry`)}}pt.protocols=["http","https"];function Dn(e){setImmediate(()=>{e.resume()})}function Lt(e,...t){let o={},n;for(n in e)if(!t.includes(n))o[n]=e[n];return o}var Ht="<empty>",Za="thinking-binding-controls-2026-08-01",wn="[Reasoning redacted]",ue=(e,t,o={})=>{let n=new M,s=Oe(t);return(async()=>{let r={role:"assistant",content:[],api:"bedrock-converse-stream",provider:e.provider,model:e.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:"pending",timestamp:Date.now()},c=r.content,d=o.profile||o.env?.AWS_PROFILE,a={profile:d||P("AWS_PROFILE",o.env)},_=Wn(o),u=Boolean(P("AWS_PROFILE")),l=Vn(e.baseUrl),f=Gi(e.baseUrl,_,u);if(f)a.endpoint=e.baseUrl;let m=P("AWS_BEDROCK_SKIP_AUTH",o.env)==="1",A=o.bearerToken||o.apiKey||P("AWS_BEARER_TOKEN_BEDROCK",o.env)||void 0,h=A!==void 0&&!m;if(typeof process<"u"&&(process.versions?.node||process.versions?.bun)){let I=e.id.match(/^arn:aws(?:-[a-z0-9-]+)?:bedrock:([a-z0-9-]+):/);if(I)a.region=I[1];else if(_)a.region=_;else if(l&&f)a.region=l;else if(!u)a.region="us-east-1";if(m)a.credentials={accessKeyId:"dummy-access-key",secretAccessKey:"dummy-secret-key"};let S=yi(o.env);if(!m&&S&&!d)a.credentials=S;let x=Lr(e.baseUrl,o.env);if(x)a.requestHandler=new wt.NodeHttpHandler({httpAgent:new _t(x),httpsAgent:new pt(x)});else if(P("AWS_BEDROCK_FORCE_HTTP1",o.env)==="1")a.requestHandler=new wt.NodeHttpHandler}else a.region=_||(l&&f?l:void 0)||"us-east-1";if(h)a.token={token:A},a.authSchemePreference=["httpBearerAuth"];let N;try{let I=e.compat?.supportsStrictMode??!1,S=new Ot(a),x=!1;if(o.onResponse)li(S,o.onResponse,e,()=>{x=!0});let V=ye(o.headers);if(V)di(S,V);let j=Ei(o.cacheRetention,o.env),z=o.maxTokens??(Ct(e)?e.maxTokens:void 0),D=me(s.messages),qn=D?U(D):void 0,gt={modelId:e.id,messages:Ti(s,e,j,o.env),system:vi(qn,e,j,o.env),inferenceConfig:{...z!==void 0&&{maxTokens:z},...o.temperature!==void 0&&{temperature:o.temperature}},toolConfig:Ii(oe(s.messages),o.toolChoice,I),additionalModelRequestFields:Bi(e,o),...o.requestMetadata!==void 0&&{requestMetadata:o.requestMetadata}},Vt=await o?.onPayload?.(gt,e);if(Vt!==void 0)gt=Vt;let zn=new Nt(gt),Y=await S.send(zn,{abortSignal:o.signal});if(N=Wt(Y.$metadata.requestId),!x&&Y.$metadata.httpStatusCode!==void 0){let p={};if(Y.$metadata.requestId)p["x-amzn-requestid"]=Y.$metadata.requestId;await o?.onResponse?.({status:Y.$metadata.httpStatusCode,headers:p},e)}for await(let p of Y.stream)if(await o.onProviderStreamEvent?.(p,e),p.messageStart){if(p.messageStart.role!==ce.ASSISTANT)throw Error("Unexpected assistant message start but got user message start instead");n.push({type:"start",partial:r})}else if(p.contentBlockStart)pi(p.contentBlockStart,c,r,n);else if(p.contentBlockDelta)mi(p.contentBlockDelta,c,r,n);else if(p.contentBlockStop)gi(p.contentBlockStop,c,r,n);else if(p.messageStop){r.rawStopReason=p.messageStop.stopReason;let{stopReason:Yn,errorMessage:Kt}=ki(p.messageStop.stopReason);if(r.stopReason=Yn,Kt)r.errorMessage=Kt}else if(p.metadata)Ci(p.metadata,e,r);else if(p.internalServerException)throw p.internalServerException;else if(p.modelStreamErrorException)throw p.modelStreamErrorException;else if(p.validationException)throw p.validationException;else if(p.throttlingException)throw p.throttlingException;else if(p.serviceUnavailableException)throw p.serviceUnavailableException;if(o.signal?.aborted)throw Error("Request was aborted");if(r.stopReason==="pending")throw Error("Bedrock stream ended without a stop reason");if(r.stopReason==="error"||r.stopReason==="aborted")throw Error(r.errorMessage||"An unknown error occurred");for(let p of r.content)Un(p);n.push({type:"done",reason:r.stopReason,message:r}),n.end()}catch(I){for(let S of r.content)Un(S);if(r.stopReason=o.signal?.aborted?"aborted":"error",r.errorMessage=oi(I),r.stopReason==="error")ai(r,I,N);n.push({type:"error",reason:r.stopReason,error:r}),n.end()}})(),n},ei={InternalServerException:"Internal server error",ModelStreamErrorException:"Model stream error",ValidationException:"Validation error",ThrottlingException:"Throttling error",ServiceUnavailableException:"Service unavailable"},ti="https://docs.aws.amazon.com/bedrock/latest/userguide/data-retention.html";function oi(e){let t=q(e),o=!t.messageCarriesBody&&t.status!==void 0&&t.body!==void 0?`${t.status}: ${t.body}`:t.message,n=/data retention mode/i.test(o)?` See ${ti} for supported data retention modes.`:"";if(e instanceof C)return`${ei[e.name]??e.name}: ${o}${n}`;return`${o}${n}`}var ni=200;function Wt(e){if(typeof e!=="string")return;let t=e.trim();if(t.length===0||t.length>ni)return;return t}function ri(e){if(!(e instanceof Error)||!e.name.endsWith("Exception"))return;return Wt(e.name)}function ai(e,t,o){let n=t?.$metadata,s={};if(typeof n?.httpStatusCode==="number")s.status=n.httpStatusCode;let r=ri(t);if(r!==void 0)s.errorCode=r;let c=Wt(n?.requestId)??o;if(c!==void 0)s.requestId=c;if(Object.keys(s).length===0)return;ke(e,{type:"bedrock_response_failure",timestamp:Date.now(),details:s})}var ii=new Set(["authorization","host"]);function ci(e){let t=e.toLowerCase();return t.startsWith("x-amz-")||ii.has(t)}function di(e,t){let o=(n)=>async(s)=>{let r=s.request;if(r&&typeof r==="object"&&"headers"in r){let c=r.headers;for(let[d,a]of Object.entries(t))if(!ci(d))c[d]=a}return n(s)};e.middlewareStack.add(o,{step:"build",name:"pi-ai-custom-headers",priority:"low"})}function _i(e){if(!e||typeof e!=="object")return!1;let t=e;return typeof t.statusCode==="number"&&!!t.headers&&typeof t.headers==="object"}function ui(e){if(!_i(e))return;return{status:e.statusCode,headers:{...e.headers}}}function li(e,t,o,n){let s=(r)=>async(c)=>{let d=await r(c),a=ui(d.response);if(a)n(),await t(a,o);return d};e.middlewareStack.add(s,{step:"deserialize",name:"pi-ai-response-headers"})}var $n=(e,t,o)=>{let n={...K(e,t,o,void 0),toolChoice:o?.toolChoice};if(!o?.reasoning)return ue(e,t,{...n,reasoning:void 0});if(Ct(e)){if(bt(e.id,e.name))return ue(e,t,{...n,reasoning:o.reasoning,thinkingBudgets:o.thinkingBudgets});let s=Dr(n.maxTokens,e.maxTokens,o.reasoning,o.thinkingBudgets),r=Zt(e,t,s.maxTokens);return ue(e,t,{...n,maxTokens:r,reasoning:o.reasoning,thinkingBudgets:{...o.thinkingBudgets||{},[ko(o.reasoning)]:Math.min(s.thinkingBudget,Math.max(0,r-1024))}})}return ue(e,t,{...n,reasoning:o.reasoning,thinkingBudgets:o.thinkingBudgets})};function pi(e,t,o,n){let{contentBlockIndex:s,start:r}=e;if(r?.toolUse){let c={type:"toolCall",id:r.toolUse.toolUseId||"",name:r.toolUse.name||"",arguments:{},partialJson:"",index:s};o.content.push(c),n.push({type:"toolcall_start",contentIndex:t.length-1,partial:o})}}function mi(e,t,o,n){let{contentBlockIndex:s,delta:r}=e,c=t.findIndex((a)=>a.index===s),d=t[c];if(r?.text!==void 0){if(!d){let a={type:"text",text:"",index:s};o.content.push(a),c=t.length-1,d=t[c],n.push({type:"text_start",contentIndex:c,partial:o})}if(d.type==="text")d.text+=r.text,n.push({type:"text_delta",contentIndex:c,delta:r.text,partial:o})}else if(r?.toolUse&&d?.type==="toolCall")d.partialJson=(d.partialJson||"")+(r.toolUse.input||""),d.arguments=W(d.partialJson),n.push({type:"toolcall_delta",contentIndex:c,delta:r.toolUse.input||"",partial:o});else if(r?.reasoningContent){let a=d,_=c;if(!a){let u={type:"thinking",thinking:"",thinkingSignature:"",index:s};o.content.push(u),_=t.length-1,a=t[_],n.push({type:"thinking_start",contentIndex:_,partial:o})}if(a?.type==="thinking"){if(r.reasoningContent.text)a.thinking+=r.reasoningContent.text,n.push({type:"thinking_delta",contentIndex:_,delta:r.reasoningContent.text,partial:o});if(r.reasoningContent.signature&&!a.redacted)a.thinkingSignature=(a.thinkingSignature||"")+r.reasoningContent.signature;if(r.reasoningContent.redactedContent?.length){if(!a.redacted)a.redacted=!0,a.thinkingSignature="",a.thinking+=wn,n.push({type:"thinking_delta",contentIndex:_,delta:wn,partial:o});a.redactedChunks??=[],a.redactedChunks.push(r.reasoningContent.redactedContent)}}}}function Fn(e){if(e.type!=="thinking"||!e.redactedChunks)return;e.thinkingSignature=Di(e.redactedChunks),delete e.redactedChunks}function Un(e){delete e.index,delete e.partialJson,Fn(e)}function Ci(e,t,o){if(e.usage)o.usage.input=e.usage.inputTokens||0,o.usage.output=e.usage.outputTokens||0,o.usage.cacheRead=e.usage.cacheReadInputTokens||0,o.usage.cacheWrite=e.usage.cacheWriteInputTokens||0,o.usage.cacheWrite1h=e.usage.cacheDetails?.reduce((n,s)=>n+(s.ttl===ct.ONE_HOUR?s.inputTokens??0:0),0),o.usage.totalTokens=e.usage.totalTokens||o.usage.input+o.usage.output,Q(t,o.usage)}function gi(e,t,o,n){let s=t.findIndex((c)=>c.index===e.contentBlockIndex),r=t[s];if(!r)return;switch(delete r.index,r.type){case"text":n.push({type:"text_end",contentIndex:s,content:r.text,partial:o});break;case"thinking":Fn(r),n.push({type:"thinking_end",contentIndex:s,content:r.thinking,partial:o});break;case"toolCall":r.arguments=W(r.partialJson),delete r.partialJson,n.push({type:"toolcall_end",contentIndex:s,toolCall:r,partial:o});break}}function Ge(e,t){return(t?[e,t]:[e]).flatMap((n)=>{let s=n.toLowerCase();return[s,s.replace(/[\s_.:]+/g,"-")]})}function bt(e,t){return Ge(e,t).some((n)=>n.includes("opus-4-6")||n.includes("opus-4-7")||n.includes("opus-4-8")||n.includes("opus-5")||n.includes("sonnet-4-6")||n.includes("sonnet-5")||n.includes("haiku-5")||n.includes("fable-5"))}function fi(e){return Ge(e.id,e.name).some((o)=>o.includes("opus-4-7")||o.includes("opus-4-8")||o.includes("opus-5")||o.includes("sonnet-5")||o.includes("haiku-5")||o.includes("fable-5"))}function hi(e){return Ge(e.id,e.name).some((o)=>o.includes("opus-4-7")||o.includes("opus-4-8")||o.includes("opus-5")||o.includes("sonnet-5")||o.includes("haiku-5")||o.includes("fable-5"))}function Si(e,t){if(t==="xhigh"&&fi(e))return"xhigh";let o=t?e.thinkingLevelMap?.[t]:void 0;if(typeof o==="string")return o;switch(t){case"minimal":case"low":return"low";case"medium":return"medium";case"high":return"high";default:return"high"}}function Ei(e,t){if(e)return e;if(P("PI_CACHE_RETENTION",t)==="long")return"long";return"short"}function Ct(e){let t=e.id.toLowerCase(),o=e.name?.toLowerCase()??"";return t.includes("anthropic.claude")||t.includes("anthropic/claude")||o.includes("anthropic.claude")||o.includes("anthropic/claude")||o.includes("claude")}function Hn(e,t){let o=Ge(e.id,e.name);if(!o.some((s)=>s.includes("claude"))){if(P("AWS_BEDROCK_FORCE_CACHE",t)==="1")return!0;return!1}if(o.some((s)=>s.includes("fable-5")||s.includes("opus-5")||s.includes("sonnet-5")||s.includes("haiku-5")))return!0;if(o.some((s)=>s.includes("-4-")))return!0;if(o.some((s)=>s.includes("claude-3-7-sonnet")))return!0;if(o.some((s)=>s.includes("claude-3-5-haiku")))return!0;return!1}function Ri(e){return Ct(e)}function vi(e,t,o,n){if(!e)return;let s=[{text:y(e)}];if(o!=="none"&&Hn(t,n))s.push({cachePoint:{type:Mt.DEFAULT,...o==="long"?{ttl:ct.ONE_HOUR}:{}}});return s}function Ai(e){let t=e.replace(/[^a-zA-Z0-9_-]/g,"_");return t.length>64?t.slice(0,64):t}function mt(e){let t=y(e);return t.trim().length===0?void 0:{text:t}}function xi(e){return mt(e)??{text:Ht}}function Ft(e){if(Array.isArray(e))return e.map(Ft);if(e!==null&&typeof e==="object")return Object.fromEntries(Object.entries(e).filter(([t])=>t.length>0).map(([t,o])=>[t,Ft(o)]));return e}function bn(e){let t=[];for(let o of e)if(o.type==="image")t.push({image:Kn(o.mimeType,o.data)});else{let n=mt(o.text);if(n)t.push(n)}if(t.length===0)t.push({text:Ht});return t}function Ti(e,t,o,n){let s=[],r=ge($t(e.messages),t,Ai);for(let c=0;c<r.length;c++){let d=r[c];switch(d.role){case"user":{let a=[];if(typeof d.content==="string")a.push(xi(d.content));else{for(let _ of d.content)switch(_.type){case"text":{let u=mt(_.text);if(u)a.push(u);break}case"image":a.push({image:Kn(_.mimeType,_.data)});break;default:continue}if(a.length===0)a.push({text:Ht})}s.push({role:ce.USER,content:a});break}case"assistant":{if(d.content.length===0)continue;let a=[];for(let _ of d.content)switch(_.type){case"text":{let u=mt(_.text);if(!u)continue;a.push(u);break}case"toolCall":a.push({toolUse:{toolUseId:_.id,name:_.name,input:Ft(_.arguments)}});break;case"thinking":{if(_.redacted){let l=Mi(_.thinkingSignature);if(l?.length)a.push({reasoningContent:{redactedContent:l}});continue}let u=y(_.thinking);if(u.trim().length===0)continue;if(Ri(t))if(!_.thinkingSignature||_.thinkingSignature.trim().length===0)a.push({text:u});else a.push({reasoningContent:{reasoningText:{text:u,signature:_.thinkingSignature}}});else a.push({reasoningContent:{reasoningText:{text:u}}});break}default:continue}if(a.length===0)continue;s.push({role:ce.ASSISTANT,content:a});break}case"toolResult":{let a=[];a.push({toolResult:{toolUseId:d.toolCallId,content:bn(d.content),status:d.isError?ve.ERROR:ve.SUCCESS}});let _=c+1;while(_<r.length&&r[_].role==="toolResult"){let u=r[_];a.push({toolResult:{toolUseId:u.toolCallId,content:bn(u.content),status:u.isError?ve.ERROR:ve.SUCCESS}}),_++}c=_-1,s.push({role:ce.USER,content:a});break}default:continue}}if(o!=="none"&&Hn(t,n)&&s.length>0){let c=s[s.length-1];if(c.role===ce.USER&&c.content)c.content.push({cachePoint:{type:Mt.DEFAULT,...o==="long"?{ttl:ct.ONE_HOUR}:{}}})}return s}function Ii(e,t,o){if(!e?.length)return;if(t==="none")return;let n=e.map((r)=>{let c=pe(r,o);return{toolSpec:{name:r.name,description:r.description,inputSchema:{json:fe(r,c)},...c===!0?{strict:!0}:{}}}}),s;switch(t){case"auto":s={auto:{}};break;case"any":s={any:{}};break;default:if(t?.type==="tool")s={tool:{name:t.name}}}return{tools:n,toolChoice:s}}function ki(e){switch(e){case de.END_TURN:case de.STOP_SEQUENCE:return{stopReason:"stop"};case de.MAX_TOKENS:case de.MODEL_CONTEXT_WINDOW_EXCEEDED:return{stopReason:"length"};case de.TOOL_USE:return{stopReason:"toolUse"};default:return e?{stopReason:"error",errorMessage:`Provider stopped with: ${e}`}:{stopReason:"error"}}}function Wn(e){return e.region||P("AWS_REGION",e.env)||P("AWS_DEFAULT_REGION",e.env)||void 0}function yi(e){let t=P("AWS_ACCESS_KEY_ID",e),o=P("AWS_SECRET_ACCESS_KEY",e);if(!t||!o)return;let n=P("AWS_SESSION_TOKEN",e);return{accessKeyId:t,secretAccessKey:o,...n?{sessionToken:n}:{}}}function Vn(e){if(!e)return;try{let{hostname:t}=new URL(e);return t.toLowerCase().match(/^bedrock-runtime(?:-fips)?\.([a-z0-9-]+)\.amazonaws\.com(?:\.cn)?$/)?.[1]}catch{return}}function Gi(e,t,o){if(!Vn(e))return!0;return!t&&!o}function Pi(e,t){if(Wn(t)?.toLowerCase().startsWith("us-gov-"))return!0;let n=e.id.toLowerCase();return n.startsWith("us-gov.")||n.startsWith("arn:aws-us-gov:")}function Bi(e,t){if(!t.reasoning||!e.reasoning)return;if(Ct(e)){let n=Pi(e,t),s=n?void 0:t.thinkingDisplay??"summarized",r=!n&&hi(e),c=bt(e.id,e.name)?{thinking:{type:"adaptive",...s!==void 0?{display:s}:{},...r?{block_binding:{prefix_mismatch_behavior:"drop_block"}}:{}},output_config:{effort:Si(e,t.reasoning)},...r?{anthropic_beta:[Za]}:{}}:(()=>{let d={minimal:1024,low:2048,medium:8192,high:16384,xhigh:16384,max:16384},a=t.reasoning==="xhigh"||t.reasoning==="max"?"high":t.reasoning;return{thinking:{type:"enabled",budget_tokens:t.thinkingBudgets?.[a]??d[t.reasoning],...s!==void 0?{display:s}:{}}}})();if(!bt(e.id,e.name)&&(t.interleavedThinking??!0))c.anthropic_beta=["interleaved-thinking-2025-05-14"];return c}let o=Ge(e.id,e.name);if(o.some((n)=>n.includes("gpt-oss")))return{reasoning_effort:Ni[t.reasoning]};if(o.some((n)=>n.includes("gpt-"))){let n=e.thinkingLevelMap?.[t.reasoning];return{reasoning:{effort:typeof n==="string"?n:Oi[t.reasoning]}}}return}var Oi={minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"xhigh",max:"max"},Ni={minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"high",max:"high"};function Kn(e,t){let o;switch(e){case"image/jpeg":case"image/jpg":o=Re.JPEG;break;case"image/png":o=Re.PNG;break;case"image/gif":o=Re.GIF;break;case"image/webp":o=Re.WEBP;break;default:throw Error(`Unknown image type: ${e}`)}return{source:{bytes:Xn(t)},format:o}}function Xn(e){let t=atob(e),o=new Uint8Array(t.length);for(let n=0;n<t.length;n++)o[n]=t.charCodeAt(n);return o}function Mi(e){if(!e)return;try{return Xn(e)}catch{return}}function Di(e){let o="";for(let n of e)for(let s=0;s<n.length;s+=32768)o+=String.fromCharCode(...n.subarray(s,s+32768));return btoa(o)}var jn={stream:ue,streamSimple:$n};si(jn);await import("./chunk-0mjb3sm3.js");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bkm016/basalt",
3
- "version": "0.1.9",
3
+ "version": "0.1.10",
4
4
  "description": "Local-first AI software engineering agent runtime and web workbench",
5
5
  "license": "MIT",
6
6
  "type": "module",
package/ui-test-worker.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{ur,Un,C,Bn,Fn,Wn,jr,$n,mt,Vr}from"./chunk-82v8jh1h.js";import{Dn,cr}from"./chunk-66h5qpc6.js";import"./chunk-4gtgqcct.js";import"./chunk-c71173py.js";import{i,r,Xe,Gt}from"./chunk-bwawt15q.js";var mh=r(function(FA){FA.removeLeadingAndTrailingHTTPWhitespace=(t)=>t.replace(/^[ \t\n\r]+/u,"").replace(/[ \t\n\r]+$/u,"");FA.removeTrailingHTTPWhitespace=(t)=>t.replace(/[ \t\n\r]+$/u,"");FA.isHTTPWhitespaceChar=(t)=>t===" "||t==="\t"||t===`
2
+ import{ur,Un,C,Bn,Fn,Wn,jr,$n,mt,Vr}from"./chunk-82v8jh1h.js";import{Dn,cr}from"./chunk-3mqf9ped.js";import"./chunk-4gtgqcct.js";import"./chunk-c71173py.js";import{i,r,Xe,Gt}from"./chunk-bwawt15q.js";var mh=r(function(FA){FA.removeLeadingAndTrailingHTTPWhitespace=(t)=>t.replace(/^[ \t\n\r]+/u,"").replace(/[ \t\n\r]+$/u,"");FA.removeTrailingHTTPWhitespace=(t)=>t.replace(/[ \t\n\r]+$/u,"");FA.isHTTPWhitespaceChar=(t)=>t===" "||t==="\t"||t===`
3
3
  `||t==="\r";FA.solelyContainsHTTPTokenCodePoints=(t)=>/^[-!#$%&'*+.^_`|~A-Za-z0-9]*$/u.test(t);FA.soleyContainsHTTPQuotedStringTokenCodePoints=(t)=>/^[\t\u0020-\u007E\u0080-\u00FF]*$/u.test(t);FA.asciiLowercase=(t)=>t.replace(/[A-Z]/ug,(e)=>e.toLowerCase());FA.collectAnHTTPQuotedString=(t,e)=>{let o="";e++;while(!0){while(e<t.length&&t[e]!=='"'&&t[e]!=="\\")o+=t[e],++e;if(e>=t.length)break;let s=t[e];if(++e,s==="\\"){if(e>=t.length){o+="\\";break}o+=t[e],++e}else break}return[o,e]}});var PS=r(function(z2,fS){var{asciiLowercase:Rc,solelyContainsHTTPTokenCodePoints:WA,soleyContainsHTTPQuotedStringTokenCodePoints:_A}=mh();fS.exports=class{constructor(e){this._map=e}get size(){return this._map.size}get(e){return e=Rc(String(e)),this._map.get(e)}has(e){return e=Rc(String(e)),this._map.has(e)}set(e,o){if(e=Rc(String(e)),o=String(o),!WA(e))throw Error(`Invalid MIME type parameter name "${e}": only HTTP token code points are valid.`);if(!_A(o))throw Error(`Invalid MIME type parameter value "${o}": only HTTP quoted-string token code points are valid.`);return this._map.set(e,o)}clear(){this._map.clear()}delete(e){return e=Rc(String(e)),this._map.delete(e)}forEach(e,o){this._map.forEach(e,o)}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}}});var ES=r(function(J2,wS){var{removeLeadingAndTrailingHTTPWhitespace:YA,removeTrailingHTTPWhitespace:AS,isHTTPWhitespaceChar:KA,solelyContainsHTTPTokenCodePoints:cg,soleyContainsHTTPQuotedStringTokenCodePoints:QA,asciiLowercase:dg,collectAnHTTPQuotedString:jA}=mh();wS.exports=(t)=>{t=YA(t);let e=0,o="";while(e<t.length&&t[e]!=="/")o+=t[e],++e;if(o.length===0||!cg(o))return null;if(e>=t.length)return null;++e;let s="";while(e<t.length&&t[e]!==";")s+=t[e],++e;if(s=AS(s),s.length===0||!cg(s))return null;let n={type:dg(o),subtype:dg(s),parameters:new Map};while(e<t.length){++e;while(KA(t[e]))++e;let l="";while(e<t.length&&t[e]!==";"&&t[e]!=="=")l+=t[e],++e;if(l=dg(l),e<t.length){if(t[e]===";")continue;++e}let a=null;if(t[e]==='"'){[a,e]=jA(t,e);while(e<t.length&&t[e]!==";")++e}else{a="";while(e<t.length&&t[e]!==";")a+=t[e],++e;if(a=AS(a),a==="")continue}if(l.length>0&&cg(l)&&QA(a)&&!n.parameters.has(l))n.parameters.set(l,a)}return n}});var vS=r(function(Z2,xS){var{solelyContainsHTTPTokenCodePoints:qA}=mh();xS.exports=(t)=>{let e=`${t.type}/${t.subtype}`;if(t.parameters.size===0)return e;for(let[o,s]of t.parameters){if(e+=";",e+=o,e+="=",!qA(s)||s.length===0)s=s.replace(/(["\\])/ug,"\\$1"),s=`"${s}"`;e+=s}return e}});var LS=r(function(tU,NS){var $A=PS(),XA=ES(),zA=vS(),{asciiLowercase:TS,solelyContainsHTTPTokenCodePoints:CS}=mh();NS.exports=class{constructor(e){e=String(e);let o=XA(e);if(o===null)throw Error(`Could not parse MIME type string "${e}"`);this._type=o.type,this._subtype=o.subtype,this._parameters=new $A(o.parameters)}static parse(e){try{return new this(e)}catch(o){return null}}get essence(){return`${this.type}/${this.subtype}`}get type(){return this._type}set type(e){if(e=TS(String(e)),e.length===0)throw Error("Invalid type: must be a non-empty string");if(!CS(e))throw Error(`Invalid type ${e}: must contain only HTTP token code points`);this._type=e}get subtype(){return this._subtype}set subtype(e){if(e=TS(String(e)),e.length===0)throw Error("Invalid subtype: must be a non-empty string");if(!CS(e))throw Error(`Invalid subtype ${e}: must contain only HTTP token code points`);this._subtype=e}get parameters(){return this._parameters}toString(){return zA(this)}isJavaScript({prohibitParameters:e=!1}={}){switch(this._type){case"text":switch(this._subtype){case"ecmascript":case"javascript":case"javascript1.0":case"javascript1.1":case"javascript1.2":case"javascript1.3":case"javascript1.4":case"javascript1.5":case"jscript":case"livescript":case"x-ecmascript":case"x-javascript":return!e||this._parameters.size===0;default:return!1}case"application":switch(this._subtype){case"ecmascript":case"javascript":case"x-ecmascript":case"x-javascript":return!e||this._parameters.size===0;default:return!1}default:return!1}}isXML(){return this._subtype==="xml"&&(this._type==="text"||this._type==="application")||this._subtype.endsWith("+xml")}isHTML(){return this._subtype==="html"&&this._type==="text"}}});var $d={};Xe($d,{PluginWebUIContext:()=>qd,SlotButton:()=>kw,useDraftReplace:()=>Lw,usePluginWebUI:()=>OS});var Lg={};Gt(Lg,{Fragment:()=>GS,jsxDEV:()=>US},{Fragment:(D5)=>GS=D5,jsxDEV:(D5)=>US=D5});var kg={};Gt(kg,{Fragment:()=>WS,jsx:()=>_S,jsxs:()=>YS},{Fragment:(B5)=>WS=B5,jsx:(B5)=>_S=B5,jsxs:(B5)=>YS=B5});var An=(t)=>globalThis.postMessage(t),lf=0,zd=new Map;function Rg(t,e){let o=lf++;return new Promise((s,n)=>{zd.set(o,{resolve:s,reject:n}),e.addEventListener("abort",()=>An({type:"cancel",id:o}),{once:!0}),An({type:"request",id:o,input:t})})}function Fg(t){let e=zd.get(t.id);if(zd.delete(t.id),t.error)e?.reject(Error(t.error));else if(t.response)e?.resolve(t.response)}var af="http://basalt.internal";function mf(t){if(!t.startsWith("/api/")||/[\\\r\n#]/.test(t)||!new URL(t,af).pathname.startsWith("/api/"))throw Error("request path must stay within /api/")}function yf(t,e){return new Promise((o,s)=>{let l=setTimeout(()=>{e.removeEventListener("abort",a),o()},t),a=()=>{clearTimeout(l),e.removeEventListener("abort",a),s(Error("Request aborted"))};e.addEventListener("abort",a,{once:!0})})}function pf(t){if(t===void 0||t===null)return;if(typeof t!=="string")throw Error("ui_test requests require a JSON string body");if(!t)return;let e=JSON.parse(t);if(!e||typeof e!=="object"||Array.isArray(e))throw Error("request body must be a JSON object");return e}function Vg(t,e){return{async request(o,s){mf(o);let n=(s?.method??"GET").toUpperCase(),l=s?.signal?AbortSignal.any([s.signal,e]):e;l.throwIfAborted();let a=`${n} ${o}`,y=t&&Object.hasOwn(t,a)?t[a]:void 0;if(y){if(await yf(y.delayMs??0,l),l.throwIfAborted(),y.status<200||y.status>=300)throw Error(`Request failed (${y.status})`);return structuredClone(y.body)}let u=await Rg({path:o,method:n,body:pf(s?.body)},l);if(l.throwIfAborted(),u.status<200||u.status>=300)throw Error(`Request failed (${u.status})`);if(u.truncated)throw Error("API response exceeds ui_test response limit");return JSON.parse(u.body)}}}function Dg(t,e){let o=t.ownerDocument;function s(E){for(let R=E;R;R=R.parentElement){if(R.hasAttribute("hidden")||R.getAttribute("aria-hidden")==="true")return!1;let H=e.getComputedStyle(R);if(H.display==="none"||H.visibility==="hidden")return!1}return!0}function n(E){let R=E.getAttribute("aria-label");if(R!==null)return R;let H=E.getAttribute("aria-labelledby");if(H)return H.split(/\s+/).map((pt)=>o.getElementById(pt)?.textContent??"").join(" ");if("labels"in E){let pt=Array.from(E.labels??[]);if(pt.length)return pt.map((gt)=>gt.textContent).join(" ")}return E.textContent??""}function l(E){return E.hasAttribute("disabled")||E.getAttribute("aria-disabled")==="true"}function a(E){let R=[],H=o.createTreeWalker(E,4);while(H.nextNode()){let pt=H.currentNode,gt=pt?.parentElement;if(gt&&!gt.closest("script,style,textarea")&&s(gt))R.push(pt?.textContent??"")}return R.join(" ").replace(/\s+/g," ").trim()}function y(){return Array.from(t.querySelectorAll("button,[role=button]")).filter(s).map((E)=>({name:n(E).trim(),disabled:l(E),busy:E.getAttribute("aria-busy")==="true"}))}function u(){return Array.from(t.querySelectorAll("input,textarea,select")).filter((E)=>E instanceof e.HTMLInputElement||E instanceof e.HTMLTextAreaElement||E instanceof e.HTMLSelectElement).filter(s).map((E)=>({label:n(E).trim(),value:E.value}))}function c(E=t,R=!0){let H=a(E),pt=y(),gt=u();if(!R)return{text:H,buttons:pt,values:gt,truncated:!1};let Rt=new TextEncoder().encode(H);return{text:new TextDecoder().decode(Rt.slice(0,2048),{stream:!0}),buttons:pt.slice(0,50),values:gt.slice(0,50),truncated:Rt.length>2048||pt.length>50||gt.length>50}}function d(E,R){let H=Array.from(t.querySelectorAll(E)).filter((pt)=>pt instanceof e.HTMLElement).filter((pt)=>s(pt)&&n(pt).trim()===R);if(H.length!==1||!H[0])throw Error(`Expected one control named ${JSON.stringify(R)}, found ${H.length}`);return H[0]}function g(E){let R=Array.from(t.querySelectorAll(E)).filter(s),H=R[0];if(R.length!==1||!(H instanceof e.HTMLElement))throw Error(`Expected one visible element for ${E}, found ${R.length}`);return H}function f(E,R){let H=200,pt=(gt,Rt)=>{H--;let lt=[];if(Rt<R)for(let dt of gt.children){if(!H)break;lt.push(pt(dt,Rt+1))}return{tag:gt.tagName.toLowerCase(),role:gt.getAttribute("role"),class:gt.className,text:Array.from(gt.childNodes).filter((dt)=>dt.nodeType===3).map((dt)=>dt.textContent).join(" ").trim(),childCount:gt.children.length,children:lt}};return pt(E,0)}return{visible:s,isDisabled:l,snapshot:c,findByName:d,selectOne:g,outline:f,count:(E)=>t.querySelectorAll(E).length,anyVisible:(E)=>Array.from(t.querySelectorAll(E)).some(s)}}var ci=Symbol("abort"),Me=Symbol("activeElement"),Pt=Symbol("asyncTaskManager"),di=Symbol("bodyBuffer"),Nt=Symbol("buffer"),qo=Symbol("cachedResponse"),bi=Symbol("callbacks"),wn=Symbol("checked"),Ns=Symbol("childNodes"),ir=Symbol("children"),Aa=Symbol("classList"),Zr=Symbol("connectedToNode"),Bi=Symbol("disconnectedFromNode"),sr=Symbol("connectedToDocument"),nr=Symbol("disconnectedFromDocument"),xl=Symbol("contentLength"),xe=Symbol("contentType"),fr=Symbol("cssText"),Oo=Symbol("currentScript"),Go=Symbol("currentTarget"),Kt=Symbol("data"),Lr=Symbol("defaultView"),At=Symbol("destroy"),En=Symbol("dirtyness"),Y=Symbol("end"),ze=Symbol("entries"),oE=Symbol("evaluateCSS"),Uo=Symbol("evaluateScript"),to=Symbol("exceptionObserver"),Ut=Symbol("formNode"),xn=Symbol("internalId"),F=Symbol("height"),Ls=Symbol("immediatePropagationStopped"),vn=Symbol("indeterminate"),ks=Symbol("isFirstWrite"),Ms=Symbol("isFirstWriteAfterOpen"),wa=Symbol("isInPassiveEventListener"),eo=Symbol("isValue"),Is=Symbol("listenerOptions"),he=Symbol("listeners"),Wr=Symbol("itemsByName"),Rs=Symbol("nextActiveElement"),vl=Symbol("observeMutations"),ro=Symbol("mutationListeners"),x=Symbol("ownerDocument"),xt=Symbol("ownerElement"),Fs=Symbol("propagationStopped"),Eo=Symbol("readyStateManager"),Pr=Symbol("referrer"),gi=Symbol("registry"),oo=Symbol("relList"),Ea=Symbol("resetSelection"),ve=Symbol("rootNode"),Ie=Symbol("selectNode"),Ar=Symbol("selectedness"),Tn=Symbol("selection"),Tm=Symbol("setupVMContext"),be=Symbol("shadowRoot"),O=Symbol("start"),ge=Symbol("style"),wr=Symbol("target"),Je=Symbol("textAreaNode"),xa=Symbol("unobserveMutations"),Oi=Symbol("reportMutation"),Cn=Symbol("updateSelectedness"),Pe=Symbol("url"),q=Symbol("value"),V=Symbol("width"),m=Symbol("window"),vh=Symbol("windowResizeListener"),Nn=Symbol("mutationObservers"),io=Symbol("openerFrame"),Si=Symbol("openerWindow"),Cm=Symbol("pointerCaptures"),Ln=Symbol("popup"),tt=Symbol("isConnected"),W=Symbol("parentNode"),D=Symbol("nodeType"),z=Symbol("tagName"),Ft=Symbol("prefix"),Jd=Symbol("scrollHeight"),Zd=Symbol("scrollWidth"),Th=Symbol("scrollTop"),Ch=Symbol("scrollLeft"),St=Symbol("attributes"),va=Symbol("attributesProxy"),J=Symbol("namespaceURI"),Ta=Symbol("accessKey"),iE=Symbol("accessKeyLabel"),tb=Symbol("offsetHeight"),eb=Symbol("offsetWidth"),rb=Symbol("offsetLeft"),ob=Symbol("offsetTop"),ib=Symbol("clientHeight"),sb=Symbol("clientWidth"),nb=Symbol("clientLeft"),lb=Symbol("clientTop"),rt=Symbol("name"),Nm=Symbol("specified"),Vs=Symbol("adoptedStyleSheets"),Nh=Symbol("implementation"),kn=Symbol("readyState"),Ds=Symbol("publicId"),Bs=Symbol("systemId"),Ce=Symbol("validationMessage"),Ke=Symbol("validity"),Lh=Symbol("returnValue"),Gi=Symbol("elements"),sE=Symbol("length"),ab=Symbol("complete"),mb=Symbol("naturalHeight"),yb=Symbol("naturalWidth"),Bg=Symbol("loading"),k=Symbol("x"),M=Symbol("y"),nE=Symbol("defaultChecked"),$o=Symbol("files"),Be=Symbol("sheet"),kh=Symbol("volume"),Tl=Symbol("paused"),Mh=Symbol("currentTime"),Ih=Symbol("playbackRate"),Rh=Symbol("defaultPlaybackRate"),Ca=Symbol("muted"),Cl=Symbol("defaultMuted"),Fh=Symbol("preservesPitch"),pb=Symbol("buffered"),ub=Symbol("duration"),Qe=Symbol("error"),hb=Symbol("ended"),cb=Symbol("networkState"),Vh=Symbol("textTracks"),db=Symbol("seeking"),bb=Symbol("seekable"),gb=Symbol("played"),Ui=Symbol("options"),so=Symbol("content"),Ee=Symbol("mode"),Mn=Symbol("host"),_r=Symbol("setURL"),ot=Symbol("localName"),Na=Symbol("classRegistry"),Lm=Symbol("nodeStream"),no=Symbol("location"),Oe=Symbol("history"),Dh=Symbol("navigator"),Bh=Symbol("screen"),Oh=Symbol("sessionStorage"),Gh=Symbol("localStorage"),km=Symbol("sandbox"),ct=Symbol("cloneNode"),Et=Symbol("appendChild"),hr=Symbol("removeChild"),kr=Symbol("insertBefore"),La=Symbol("replaceChild"),fi=Symbol("tracks"),ka=Symbol("constraints"),Pi=Symbol("capabilities"),In=Symbol("settings"),lE=Symbol("clone"),Os=Symbol("removeNamedItem"),Q=Symbol("items"),Rn=Symbol("selectedOptions"),dr=Symbol("styleNode"),Vn=Symbol("updateSheet"),Mr=Symbol("clearCache"),Re=Symbol("onSetAttribute"),br=Symbol("onRemoveAttribute"),_=Symbol("nodeArray"),bt=Symbol("elementArray"),U=Symbol("cache"),He=Symbol("affectsCache"),Ma=Symbol("forms"),Xo=Symbol("affectsComputedStyleCache"),Nl=Symbol("query"),Ll=Symbol("computedStyle"),lo=Symbol("getFormControlItems"),Mm=Symbol("getFormControlNamedItem"),Uh=Symbol("dataset"),aE=Symbol("getNamespaceItemKey"),mE=Symbol("getNamedItemKey"),Ai=Symbol("itemsByNamespaceURI"),Vt=Symbol("proxy"),zo=Symbol("setNamedItem"),Er=Symbol("getTokenList"),Gs=Symbol("attributeName"),Ho=Symbol("selectedIndex"),On=Symbol("self"),ao=Symbol("parent"),Jo=Symbol("top"),Im=Symbol("areas"),mo=Symbol("defaultValue"),wi=Symbol("elementIdMap"),Gn=Symbol("clonable"),kl=Symbol("delegatesFocus"),Hi=Symbol("serializable"),Ei=Symbol("slotAssignment"),Wi=Symbol("assignedNodes"),Zo=Symbol("assignedToSlot"),Rm=Symbol("cells"),Fm=Symbol("rows"),Hh=Symbol("headers"),Vm=Symbol("tBodies"),Ia=Symbol("track"),Dm=Symbol("controlsList"),Wh=Symbol("mediaKeys"),Sb=Symbol("remote"),_h=Symbol("sinkId"),Yh=Symbol("srcObject"),Ml=Symbol("cues"),fb=Symbol("activeCues"),xo=Symbol("kind"),Us=Symbol("label"),Il=Symbol("language"),Bm=Symbol("id"),h=Symbol("illegalConstructor"),Pb=Symbol("state"),Om=Symbol("canvas"),Hn=Symbol("popoverTargetElement"),Gm=Symbol("composed"),Hs=Symbol("bubbles"),_i=Symbol("cancelable"),lr=Symbol("defaultPrevented"),xr=Symbol("eventPhase"),Ab=Symbol("timeStamp"),Qt=Symbol("type"),Um=Symbol("detail"),yE=Symbol("globalObject"),Hm=Symbol("destroyed"),Se=Symbol("aborted"),Wm=Symbol("browserFrames"),Kh=Symbol("windowInternalId"),K=Symbol("getItemList"),Yi=Symbol("requiredExtensions"),Ki=Symbol("systemLanguage"),_m=Symbol("transform"),se=Symbol("baseVal"),ne=Symbol("animVal"),Ym=Symbol("pathLength"),pE=Symbol("unitType"),Qi=Symbol("viewBox"),Km=Symbol("markerUnits"),Qm=Symbol("markerWidth"),jm=Symbol("markerHeight"),Ze=Symbol("values"),qm=Symbol("orientType"),$m=Symbol("orientAngle"),Xm=Symbol("refX"),zm=Symbol("refY"),j=Symbol("readOnly"),ar=Symbol("preserveAspectRatio"),ji=Symbol("animatedPoints"),qi=Symbol("points"),$i=Symbol("rx"),Xi=Symbol("ry"),yo=Symbol("cx"),po=Symbol("cy"),zi=Symbol("r"),Jm=Symbol("clipPathUnits"),Zm=Symbol("maskUnits"),ty=Symbol("maskContentUnits"),ey=Symbol("filterUnits"),ry=Symbol("primitiveUnits"),Lt=Symbol("href"),Ji=Symbol("x1"),Zi=Symbol("y1"),ts=Symbol("x2"),es=Symbol("y2"),oy=Symbol("gradientUnits"),iy=Symbol("gradientTransform"),sy=Symbol("spreadMethod"),ny=Symbol("patternUnits"),ly=Symbol("patternContentUnits"),ay=Symbol("patternTransform"),my=Symbol("fx"),yy=Symbol("fy"),rs=Symbol("offset"),_n=Symbol("disabled"),py=Symbol("textLength"),uy=Symbol("lengthAdjust"),v=Symbol("getAttribute"),A=Symbol("setAttribute"),Ir=Symbol("z"),Rl=Symbol("w"),hy=Symbol("toArray"),Fl=Symbol("fromString"),vo=Symbol("fromArray"),uE=Symbol("angle"),kt=Symbol("m11"),Dt=Symbol("m12"),zt=Symbol("m13"),Jt=Symbol("m14"),Mt=Symbol("m21"),Bt=Symbol("m22"),Zt=Symbol("m23"),te=Symbol("m24"),Wt=Symbol("m31"),jt=Symbol("m32"),qt=Symbol("m33"),_t=Symbol("m34"),It=Symbol("m41"),Ot=Symbol("m42"),$t=Symbol("m43"),Xt=Symbol("m44"),Ra=Symbol("setMatrixValue"),To=Symbol("translateSelf"),Ws=Symbol("rotateSelf"),_s=Symbol("rotateAxisAngleSelf"),os=Symbol("scaleSelf"),cy=Symbol("scale3dSelf"),dy=Symbol("scaleNonUniformSelf"),Vl=Symbol("skewXSelf"),Dl=Symbol("skewYSelf"),Co=Symbol("multiplySelf"),Ys=Symbol("matrix"),hE=Symbol("domMatrix"),Ne=Symbol("getDOMMatrix"),gr=Symbol("setDOMMatrix"),I=Symbol("attributeValue"),by=Symbol("startOffset"),Ks=Symbol("method"),gy=Symbol("spacing"),at=Symbol("in1"),uo=Symbol("in2"),Z=Symbol("result"),Sy=Symbol("bias"),fy=Symbol("divisor"),is=Symbol("edgeMode"),Py=Symbol("kernelMatrix"),ho=Symbol("kernelUnitLengthX"),co=Symbol("kernelUnitLengthY"),Ay=Symbol("orderX"),wy=Symbol("orderY"),Ey=Symbol("preserveAlpha"),xy=Symbol("targetX"),vy=Symbol("targetY"),Ty=Symbol("diffuseConstant"),ss=Symbol("surfaceScale"),Cy=Symbol("scale"),Ny=Symbol("xChannelSelector"),Ly=Symbol("yChannelSelector"),ky=Symbol("azimuth"),My=Symbol("elevation"),bo=Symbol("dx"),go=Symbol("dy"),ns=Symbol("stdDeviationX"),ls=Symbol("stdDeviationY"),Iy=Symbol("tableValues"),Ry=Symbol("slope"),Fy=Symbol("intercept"),Vy=Symbol("amplitude"),Dy=Symbol("exponent"),Og=Symbol("crossOrigin"),By=Symbol("operator"),Oy=Symbol("radiusX"),Gy=Symbol("radiusY"),Uy=Symbol("specularConstant"),as=Symbol("specularExponent"),Hy=Symbol("pointsAtX"),Wy=Symbol("pointsAtY"),_y=Symbol("pointsAtZ"),Yy=Symbol("limitingConeAngle"),Ky=Symbol("baseFrequencyX"),Qy=Symbol("baseFrequencyY"),jy=Symbol("numOctaves"),qy=Symbol("seed"),$y=Symbol("stitchTiles"),Xy=Symbol("rotateFromVectorSelf"),zy=Symbol("flipXSelf"),Jy=Symbol("flipYSelf"),Zy=Symbol("invertSelf"),wb=Symbol("getLength"),Qh=Symbol("currentScale"),tp=Symbol("rotate"),Eb=Symbol("bindMethods"),Yn=Symbol("xmlProcessingInstruction"),cE=Symbol("root"),Wo=Symbol("filterNode"),Qs=Symbol("customElementReactionStack"),Kn=Symbol("dispatching"),ms=Symbol("modules"),Rr=Symbol("preloads"),js=Symbol("body"),jh=Symbol("redirect"),Fa=Symbol("referrerPolicy"),qh=Symbol("signal"),xi=Symbol("bodyUsed"),$h=Symbol("credentials"),ep=Symbol("blocking"),Bl=Symbol("moduleImportMap"),le=Symbol("dispatchError"),Xh=Symbol("supports"),No=Symbol("reason"),p=Symbol("propertyEventListeners"),We=Symbol("cssRules"),qs=Symbol("parentRule"),Lo=Symbol("parentStyleSheet"),So=Symbol("conditionText"),ys=Symbol("keyText"),xb=Symbol("media"),rp=Symbol("styleMap"),Ol=Symbol("selectorText"),Gl=Symbol("cssParser"),$s=Symbol("cssRule"),Fr=Symbol("rulePrefix"),Yr=Symbol("virtualServerFile"),vb=Symbol("frames"),Xs=Symbol("disableEvaluation"),Tb=Symbol("validateJavaScriptExecutionEnvironment"),dE=Symbol("currentNode"),Qn=Symbol("openWebSockets"),vr=Symbol("webSocket"),Va=Symbol("moduleCache");var Cb;(function(t){t.strict="Strict",t.lax="Lax",t.none="None"})(Cb||(Cb={}));var zs=Cb;var zh={key:null,originURL:null,value:null,domain:"",path:"",expires:null,httpOnly:!1,secure:!1,sameSite:zs.lax};class op{static hasExpired(t){return t.expires&&t.expires.getTime()<Date.now()}}class Jh{static cookieMatchesURL(t,e){let o=e.hostname==="localhost"||e.hostname?.endsWith(".localhost");return(!t.secure||e.protocol==="https:"||o)&&(!t.domain||e.hostname?.endsWith(t.domain))&&(!t.path||e.pathname?.startsWith(t.path))&&(t.sameSite===zs.none&&t.secure||t.originURL?.hostname===e.hostname)}}class ip{#t=[];addCookies(t){let e=new Map,o=(s)=>`${s.key}-${s.originURL.hostname}-${s.path}-${typeof s.value}`;for(let s=0,n=this.#t.length;s<n;s++)e.set(o(this.#t[s]),s);for(let s of t){let n=Object.assign({},zh,s);if(n&&n.key&&n.originURL){let l=e.get(o(n));if(l!==void 0)this.#t.splice(l,1);if(!op.hasExpired(n))e.set(o(n),this.#t.length),this.#t.push(n)}}}getCookies(t=null,e=!1){let o=[];for(let s of this.#t)if(!op.hasExpired(s)&&(!e||!s.httpOnly)&&(!t||Jh.cookieMatchesURL(s,t)))o.push(s);return o}clearCookies(){this.#t=[]}}var Nb;(function(t){t.fresh="fresh",t.stale="stale"})(Nb||(Nb={}));var jn=Nb;var Lb;(function(t){t.invalidStateError="InvalidStateError",t.indexSizeError="IndexSizeError",t.syntaxError="SyntaxError",t.hierarchyRequestError="HierarchyRequestError",t.notSupportedError="NotSupportedError",t.wrongDocumentError="WrongDocumentError",t.invalidNodeTypeError="InvalidNodeTypeError",t.invalidCharacterError="InvalidCharacterError",t.notFoundError="NotFoundError",t.securityError="SecurityError",t.networkError="NetworkError",t.domException="DOMException",t.invalidAccessError="InvalidAccessError",t.unknownError="UnknownError",t.abortError="AbortError",t.timeoutError="TimeoutError",t.encodingError="EncodingError",t.uriMismatchError="URIMismatchError",t.inUseAttributeError="InUseAttributeError",t.namespaceError="NamespaceError"})(Lb||(Lb={}));var w=Lb;class re extends Error{constructor(t,e=null){super(t);this.name=e||w.domException}}class vi{[ze]={};constructor(t){if(t)if(t instanceof vi)this[ze]=JSON.parse(JSON.stringify(t[ze]));else if(Array.isArray(t))for(let e of t){if(e.length!==2)throw new re('Failed to construct "Headers": The provided init is not a valid array.',w.invalidStateError);this.append(e[0],e[1])}else for(let e of Object.keys(t))this.set(e,t[e])}append(t,e){let o=t.toLowerCase();if(this[ze][o])this[ze][o].value.push(e);else this[ze][o]={name:t,value:[e]}}delete(t){delete this[ze][t.toLowerCase()]}get(t){return this[ze][t.toLowerCase()]?.value.join(", ")??null}set(t,e){this[ze][t.toLowerCase()]={name:t,value:[e]}}getSetCookie(){let t=this[ze]["set-cookie"];if(!t)return[];return t.value}has(t){return!!this[ze][t.toLowerCase()]}forEach(t,e){let o=e??this[m];for(let s of Object.values(this[ze]))t.call(o,s.value.join(", "),s.name,this)}*keys(){for(let t of Object.values(this[ze]))yield t.name}*values(){for(let t of Object.values(this[ze]))yield t.value.join(", ")}*entries(){for(let t of Object.values(this[ze]))yield[t.name,t.value.join(", ")]}*[Symbol.iterator](){for(let t of Object.values(this[ze]))yield[t.name,t.value.join(", ")]}}import Da from"fs";import Ba from"path";import uf from"crypto";class Zh{#t=new Set;#e=new Set;#r;constructor(t){this.#r=t}async load(t){if(!t)throw Error("Failed to execute 'load' on 'ResponseCacheFileSystem': Directory is not specified.");let e=Ba.resolve(t),o=[];try{o=await Da.promises.readdir(e)}catch(l){return}let s=[],n=this.#r;for(let l of o)if(l.endsWith(".json"))s.push(Da.promises.readFile(Ba.join(e,l),"utf8").then((a)=>{let y=JSON.parse(a);if(y.response&&y.request&&!y.virtual)return y.response.headers=new vi(y.response.headers),y.request.headers=new vi(y.request.headers),Da.promises.readFile(Ba.join(e,l.split(".")[0]+".data")).then((u)=>{y.response.body=u;let c=n.get(y.response.url);if(!c)c=[],n.set(y.response.url,c);c.push(y)}).catch(()=>{let u=n.get(y.response.url);if(!u)u=[],n.set(y.response.url,u);u.push(y)})}).catch(()=>{}));await Promise.all(s)}async save(t){if(!t)throw Error("Failed to execute 'store' on 'ResponseCacheFileSystem': Directory is not specified.");if(!this.#r.size)return;let e=Ba.resolve(t);if(!this.#t.has(e)){this.#t.add(e);try{await Da.promises.mkdir(e,{recursive:!0})}catch(l){}}let s=this.#r,n=[];for(let l of s.values())for(let a of l)if(!a.virtual){let y={},u={};for(let[f,E]of a.response.headers.entries())y[f]=E;for(let[f,E]of a.request.headers.entries())u[f]=E;let c={...a,response:{...a.response,headers:y,body:null},request:{...a.request,headers:u}},d=JSON.stringify(c,null,3),g=uf.createHash("md5").update(d).digest("hex");if(!this.#e.has(g)){if(this.#e.add(g),n.push(Da.promises.writeFile(Ba.join(e,`${g}.json`),d)),a.response.body)n.push(Da.promises.writeFile(Ba.join(e,`${g}.data`),a.response.body))}}await Promise.all(n)}}var hf=["Cache-Control","Last-Modified","Vary","ETag"];class sp{fileSystem;#t=new Map;constructor(){this.fileSystem=new Zh(this.#t)}get(t){if(t.headers.get("Cache-Control")?.includes("no-cache"))return null;let e=t.url,o=this.#t.get(e);if(o)for(let s=0,n=o.length;s<n;s++){let l=o[s],a=l.request.method===t.method;if(a)for(let y of Object.keys(l.vary)){let u=t.headers.get(y);if(u!==null&&l.vary[y]!==u){a=!1;break}}if(a){if(l.expires&&l.expires<Date.now()){if(l.lastModified)l.state=jn.stale;else if(!l.etag)return o.splice(s,1),null}return l}}return null}add(t,e){if(t.method!=="GET"&&t.method!=="HEAD"||t.headers.get("Cache-Control")?.includes("no-cache"))return null;let o=t.url,s=this.get(t);if(e.status===304){if(!s)throw Error("ResponseCache: Cached response not found.");for(let n of hf)if(e.headers.has(n))s.response.headers.set(n,e.headers.get(n));s.cacheUpdateTime=Date.now(),s.state=jn.fresh}else{if(s){let l=this.#t.get(o);if(l){let a=l.indexOf(s);if(a!==-1)l.splice(a,1)}}s={response:{status:e.status,statusText:e.statusText,url:e.url,headers:new vi(e.headers),waitingForBody:e.waitingForBody,body:e.body??null},request:{headers:t.headers,method:t.method},vary:{},expires:null,etag:null,cacheUpdateTime:Date.now(),lastModified:null,mustRevalidate:!1,staleWhileRevalidate:!1,state:jn.fresh,virtual:e.virtual??!1};let n=this.#t.get(o);if(!n)n=[],this.#t.set(o,n);n.push(s)}if(e.headers.has("Cache-Control")){let n=e.headers.get("Age");for(let l of e.headers.get("Cache-Control").split(",")){let[a,y]=l.trim().split("=");switch(a){case"max-age":s.expires=Date.now()+parseFloat(y)*1000-(n?parseFloat(n)*1000:0);break;case"no-cache":case"no-store":let u=this.#t.get(o);if(u){let c=u.indexOf(s);if(c!==-1)u.splice(c,1)}return null;case"must-revalidate":s.mustRevalidate=!0;break;case"stale-while-revalidate":s.staleWhileRevalidate=!0;break}}}if(e.headers.has("Last-Modified"))s.lastModified=Date.parse(e.headers.get("Last-Modified"));if(e.headers.has("Vary"))for(let n of e.headers.get("Vary").split(",")){let l=n.trim(),a=t.headers.get(l);if(a)s.vary[l]=a}if(e.headers.has("ETag"))s.etag=e.headers.get("ETag");if(!s.expires){let n=e.headers.get("Expires");if(n)s.expires=Date.parse(n)}if(!s.etag&&(!s.expires||s.expires<Date.now())){let n=this.#t.get(o);if(n){let l=n.indexOf(s);if(l!==-1)n.splice(l,1)}return null}return s}clear(t){if(t){if(t.toTime)for(let e of t.url?[t.url]:this.#t.keys()){let o=this.#t.get(e);if(o){for(let s=0,n=o.length;s<n;s++)if(o[s].cacheUpdateTime<t.toTime)o.splice(s,1),s--,n--}}else if(t.url)this.#t.delete(t.url)}else this.#t.clear()}}var kb;(function(t){t[t.log=0]="log",t[t.info=1]="info",t[t.warn=2]="warn",t[t.error=3]="error"})(kb||(kb={}));var mr=kb;var Mb;(function(t){t[t.elementNode=1]="elementNode",t[t.attributeNode=2]="attributeNode",t[t.textNode=3]="textNode",t[t.cdataSectionNode=4]="cdataSectionNode",t[t.commentNode=8]="commentNode",t[t.documentNode=9]="documentNode",t[t.documentTypeNode=10]="documentTypeNode",t[t.documentFragmentNode=11]="documentFragmentNode",t[t.processingInstructionNode=7]="processingInstructionNode"})(Mb||(Mb={}));var T=Mb;var Ib;(function(t){t[t.none=0]="none",t[t.capturing=1]="capturing",t[t.atTarget=2]="atTarget",t[t.bubbling=3]="bubbling"})(Ib||(Ib={}));var ae=Ib;class N{static NONE=ae.none;static CAPTURING_PHASE=ae.capturing;static AT_TARGET=ae.atTarget;static BUBBLING_PHASE=ae.bubbling;NONE=N.NONE;CAPTURING_PHASE=N.CAPTURING_PHASE;AT_TARGET=N.AT_TARGET;BUBBLING_PHASE=N.BUBBLING_PHASE;[Gm]=!1;[Hs]=!1;[_i]=!1;[lr]=!1;[xr]=ae.none;[Ab]=performance.now();[Qt];[Kn]=!1;[Ls]=!1;[Fs]=!1;[wr]=null;[Go]=null;[wa]=!1;constructor(t,e=null){this[Qt]=t,this[Hs]=e?.bubbles??!1,this[_i]=e?.cancelable??!1,this[Gm]=e?.composed??!1}get composed(){return this[Gm]}get bubbles(){return this[Hs]}get cancelable(){return this[_i]}get defaultPrevented(){return this[lr]}get eventPhase(){return this[xr]}get timeStamp(){return this[Ab]}get type(){return this[Qt]}get target(){return this[wr]}get currentTarget(){return this[Go]}get cancelBubble(){return this[Fs]}composedPath(){if(!this[wr])return[];let t=[],e=this[wr];while(e)if(t.push(e),e.parentNode)e=e.parentNode;else if(this[Gm]&&e[D]===T.documentFragmentNode&&e.host)e=e.host;else if(e[D]===T.documentNode&&this[Qt]!=="load")e=e[m];else break;return t}initEvent(t,e=!1,o=!1){this[Qt]=t,this[Hs]=e,this[_i]=o,this[Fs]=!1,this[Ls]=!1,this[lr]=!1}preventDefault(){if(!this[wa]&&this.cancelable)this[lr]=!0}stopImmediatePropagation(){this[Ls]=!0}stopPropagation(){this[Fs]=!0}}var Rb;(function(t){t.log="log",t.table="table",t.trace="trace",t.dir="dir",t.dirxml="dirxml",t.group="group",t.groupCollapsed="groupCollapsed",t.debug="debug",t.timeLog="timeLog",t.info="info",t.count="count",t.timeEnd="timeEnd",t.warn="warn",t.countReset="countReset",t.error="error",t.assert="assert"})(Rb||(Rb={}));var Fe=Rb;class tc{static toString(t){if(this.isLogEntryCollapsed(t))return"";let e=this.getLogEntryGroupTabbing(t),o=e;for(let s of t.message)if(o+=o!==""&&o!==e?" ":"",typeof s==="object"&&(s===null||s.constructor.name==="Object"||Array.isArray(s)))try{o+=JSON.stringify(s)}catch(n){o+=Error("Failed to JSON stringify object in log entry.").stack.replace(/\n at/gm,`
4
4
  `+e+"at")}else if(typeof s==="object"&&s.message&&s.stack)o+=s.stack.replace(/\n at/gm,`
5
5
  `+e+"at");else o+=this.getLogEntryIcon(t)+String(s);return o+`
@@ -0,0 +1 @@
1
+ import{Io}from"./chunk-ngt1j8py.js";export{Io as QuestionDock};
@@ -1 +1 @@
1
- import{t,a,p}from"./chunk-veam6vk4.js";import{mt,vr}from"./chunk-8w7fyb3v.js";import{Se,Te}from"./chunk-nvt9tkt4.js";var k=Te(function(F,Y){(function(g,r){if(typeof F==="object"&&typeof Y==="object")Y.exports=r(vr());else if(typeof define==="function"&&define.amd)define(["cose-base"],r);else if(typeof F==="object")F.cytoscapeCoseBilkent=r(vr());else g.cytoscapeCoseBilkent=r(g.coseBase)})(F,function(u){return function(g){var r={};function n(o){if(r[o])return r[o].exports;var d=r[o]={i:o,l:!1,exports:{}};return g[o].call(d.exports,d,d.exports,n),d.l=!0,d.exports}return n.m=g,n.c=r,n.i=function(o){return o},n.d=function(o,d,l){if(!n.o(o,d))Object.defineProperty(o,d,{configurable:!1,enumerable:!0,get:l})},n.n=function(o){var d=o&&o.__esModule?function(){return o.default}:function(){return o};return n.d(d,"a",d),d},n.o=function(o,d){return Object.prototype.hasOwnProperty.call(o,d)},n.p="",n(n.s=1)}([function(g,r){g.exports=u},function(g,r,n){var o=n(0).layoutBase.LayoutConstants,d=n(0).layoutBase.FDLayoutConstants,l=n(0).CoSEConstants,L=n(0).CoSELayout,b=n(0).CoSENode,H=n(0).layoutBase.PointD,v=n(0).layoutBase.DimensionD,_={ready:function(){},stop:function(){},quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:0.45,nestingFactor:0.1,gravity:0.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:0.5};function D(E,e){var f={};for(var s in E)f[s]=E[s];for(var s in e)f[s]=e[s];return f}function I(E){this.options=D(_,E),U(this.options)}var U=function(e){if(e.nodeRepulsion!=null)l.DEFAULT_REPULSION_STRENGTH=d.DEFAULT_REPULSION_STRENGTH=e.nodeRepulsion;if(e.idealEdgeLength!=null)l.DEFAULT_EDGE_LENGTH=d.DEFAULT_EDGE_LENGTH=e.idealEdgeLength;if(e.edgeElasticity!=null)l.DEFAULT_SPRING_STRENGTH=d.DEFAULT_SPRING_STRENGTH=e.edgeElasticity;if(e.nestingFactor!=null)l.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=d.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=e.nestingFactor;if(e.gravity!=null)l.DEFAULT_GRAVITY_STRENGTH=d.DEFAULT_GRAVITY_STRENGTH=e.gravity;if(e.numIter!=null)l.MAX_ITERATIONS=d.MAX_ITERATIONS=e.numIter;if(e.gravityRange!=null)l.DEFAULT_GRAVITY_RANGE_FACTOR=d.DEFAULT_GRAVITY_RANGE_FACTOR=e.gravityRange;if(e.gravityCompound!=null)l.DEFAULT_COMPOUND_GRAVITY_STRENGTH=d.DEFAULT_COMPOUND_GRAVITY_STRENGTH=e.gravityCompound;if(e.gravityRangeCompound!=null)l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=d.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=e.gravityRangeCompound;if(e.initialEnergyOnIncremental!=null)l.DEFAULT_COOLING_FACTOR_INCREMENTAL=d.DEFAULT_COOLING_FACTOR_INCREMENTAL=e.initialEnergyOnIncremental;if(e.quality=="draft")o.QUALITY=0;else if(e.quality=="proof")o.QUALITY=2;else o.QUALITY=1;l.NODE_DIMENSIONS_INCLUDE_LABELS=d.NODE_DIMENSIONS_INCLUDE_LABELS=o.NODE_DIMENSIONS_INCLUDE_LABELS=e.nodeDimensionsIncludeLabels,l.DEFAULT_INCREMENTAL=d.DEFAULT_INCREMENTAL=o.DEFAULT_INCREMENTAL=!e.randomize,l.ANIMATE=d.ANIMATE=o.ANIMATE=e.animate,l.TILE=e.tile,l.TILING_PADDING_VERTICAL=typeof e.tilingPaddingVertical==="function"?e.tilingPaddingVertical.call():e.tilingPaddingVertical,l.TILING_PADDING_HORIZONTAL=typeof e.tilingPaddingHorizontal==="function"?e.tilingPaddingHorizontal.call():e.tilingPaddingHorizontal};I.prototype.run=function(){var E,e,f=this.options,s=this.idToLNode={},c=this.layout=new L,i=this;i.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var y=c.newGraphManager();this.gm=y;var T=this.options.eles.nodes(),m=this.options.eles.edges();this.root=y.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(T),c);for(var h=0;h<m.length;h++){var P=m[h],x=this.idToLNode[P.data("source")],O=this.idToLNode[P.data("target")];if(x!==O&&x.getEdgesBetween(O).length==0){var et=y.add(c.newEdge(),x,O);et.id=P.id()}}var V=function(R,B){if(typeof R==="number")R=B;var C=R.data("id"),G=i.idToLNode[C];return{x:G.getRect().getCenterX(),y:G.getRect().getCenterY()}},nt=function X(){var R=function(){if(f.fit)f.cy.fit(f.eles,f.padding);if(!E)E=!0,i.cy.one("layoutready",f.ready),i.cy.trigger({type:"layoutready",layout:i})},B=i.options.refresh,C;for(var G=0;G<B&&!C;G++)C=i.stopped||i.layout.tick();if(C){if(c.checkLayoutSuccess()&&!c.isSubLayout)c.doPostLayout();if(c.tilingPostLayout)c.tilingPostLayout();if(c.isLayoutFinished=!0,i.options.eles.nodes().positions(V),R(),i.cy.one("layoutstop",i.options.stop),i.cy.trigger({type:"layoutstop",layout:i}),e)cancelAnimationFrame(e);E=!1;return}var M=i.layout.getPositionsData();f.eles.nodes().positions(function(A,it){if(typeof A==="number")A=it;if(!A.isParent()){var j=A.id(),N=M[j],w=A;while(N==null)if(N=M[w.data("parent")]||M["DummyCompound_"+w.data("parent")],M[j]=N,w=w.parent()[0],w==null)break;if(N!=null)return{x:N.x,y:N.y};else return{x:A.position("x"),y:A.position("y")}}}),R(),e=requestAnimationFrame(X)};if(c.addListener("layoutstarted",function(){if(i.options.animate==="during")e=requestAnimationFrame(nt)}),c.runLayout(),this.options.animate!=="during")i.options.eles.nodes().not(":parent").layoutPositions(i,i.options,V),E=!1;return this},I.prototype.getTopMostNodes=function(E){var e={};for(var f=0;f<E.length;f++)e[E[f].id()]=!0;var s=E.filter(function(c,i){if(typeof c==="number")c=i;var y=c.parent()[0];while(y!=null){if(e[y.id()])return!1;y=y.parent()[0]}return!0});return s},I.prototype.processChildrenList=function(E,e,f){var s=e.length;for(var c=0;c<s;c++){var i=e[c],y=i.children(),T,m=i.layoutDimensions({nodeDimensionsIncludeLabels:this.options.nodeDimensionsIncludeLabels});if(i.outerWidth()!=null&&i.outerHeight()!=null)T=E.add(new b(f.graphManager,new H(i.position("x")-m.w/2,i.position("y")-m.h/2),new v(parseFloat(m.w),parseFloat(m.h))));else T=E.add(new b(this.graphManager));if(T.id=i.data("id"),T.paddingLeft=parseInt(i.css("padding")),T.paddingTop=parseInt(i.css("padding")),T.paddingRight=parseInt(i.css("padding")),T.paddingBottom=parseInt(i.css("padding")),this.options.nodeDimensionsIncludeLabels){if(i.isParent()){var h=i.boundingBox({includeLabels:!0,includeNodes:!1}).w,P=i.boundingBox({includeLabels:!0,includeNodes:!1}).h,x=i.css("text-halign");T.labelWidth=h,T.labelHeight=P,T.labelPos=x}}if(this.idToLNode[i.data("id")]=T,isNaN(T.rect.x))T.rect.x=0;if(isNaN(T.rect.y))T.rect.y=0;if(y!=null&&y.length>0){var O=f.getGraphManager().add(f.newGraph(),T);this.processChildrenList(O,y,f)}}},I.prototype.stop=function(){return this.stopped=!0,this};var S=function(e){e("layout","cose-bilkent",I)};if(typeof cytoscape<"u")S(cytoscape);g.exports=S}])})});var z=Se(k(),1);mt.use(z.default);function q(u,g){u.forEach((r)=>{let n={id:r.id,labelText:r.label,height:r.height,width:r.width,padding:r.padding??0};Object.keys(r).forEach((o)=>{if(!["id","label","height","width","padding","x","y"].includes(o))n[o]=r[o]}),g.add({group:"nodes",data:n,position:{x:r.x??0,y:r.y??0}})})}t(q,"addNodes");function W(u,g){u.forEach((r)=>{let n={id:r.id,source:r.start,target:r.end};Object.keys(r).forEach((o)=>{if(!["id","start","end"].includes(o))n[o]=r[o]}),g.add({group:"edges",data:n})})}t(W,"addEdges");function Q(u){return new Promise((g)=>{let r=p("body").append("div").attr("id","cy").attr("style","display:none"),n=mt({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});r.remove(),q(u.nodes,n),W(u.edges,n),n.nodes().forEach(function(d){d.layoutDimensions=()=>{let l=d.data();return{w:l.width,h:l.height}}});let o={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};n.layout(o).run(),n.ready((d)=>{a.info("Cytoscape ready",d),g(n)})})}t(Q,"createCytoscapeInstance");function Z(u){return u.nodes().map((g)=>{let r=g.data(),n=g.position(),o={id:r.id,x:n.x,y:n.y};return Object.keys(r).forEach((d)=>{if(d!=="id")o[d]=r[d]}),o})}t(Z,"extractPositionedNodes");function J(u){return u.edges().map((g)=>{let r=g.data(),n=g._private.rscratch,o={id:r.id,source:r.source,target:r.target,startX:n.startX,startY:n.startY,midX:n.midX,midY:n.midY,endX:n.endX,endY:n.endY};return Object.keys(r).forEach((d)=>{if(!["id","source","target"].includes(d))o[d]=r[d]}),o})}t(J,"extractPositionedEdges");async function K(u,g){a.debug("Starting cose-bilkent layout algorithm");try{tt(u);let r=await Q(u),n=Z(r),o=J(r);return a.debug(`Layout completed: ${n.length} nodes, ${o.length} edges`),{nodes:n,edges:o}}catch(r){throw a.error("Error in cose-bilkent layout algorithm:",r),r}}t(K,"executeCoseBilkentLayout");function tt(u){if(!u)throw Error("Layout data is required");if(!u.config)throw Error("Configuration is required in layout data");if(!u.rootNode)throw Error("Root node is required");if(!u.nodes||!Array.isArray(u.nodes))throw Error("No nodes found in layout data");if(!Array.isArray(u.edges))throw Error("Edges array is required in layout data");return!0}t(tt,"validateLayoutData");var at=t(async(u,g,{insertCluster:r,insertEdge:n,insertEdgeLabel:o,insertMarkers:d,insertNode:l,log:L,positionEdgeLabel:b},{algorithm:H})=>{let v={},_={},D=g.select("g");d(D,u.markers,u.type,u.diagramId);let I=D.insert("g").attr("class","subgraphs"),U=D.insert("g").attr("class","edgePaths"),S=D.insert("g").attr("class","edgeLabels"),E=D.insert("g").attr("class","nodes");L.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(u.nodes.map(async(s)=>{if(s.isGroup){let c={...s};_[s.id]=c,v[s.id]=c,await r(I,s)}else{let c={...s};v[s.id]=c;let i=await l(E,s,{config:u.config,dir:u.direction||"TB"}),y=i.node().getBBox();c.width=y.width,c.height=y.height,c.domId=i,L.debug(`Node ${s.id} dimensions: ${y.width}x${y.height}`)}})),L.debug("Running cose-bilkent layout algorithm");let e={...u,nodes:u.nodes.map((s)=>{let c=v[s.id];return{...s,width:c.width,height:c.height}})},f=await K(e,u.config);L.debug("Positioning nodes based on layout results"),f.nodes.forEach((s)=>{let c=v[s.id];if(c?.domId)c.domId.attr("transform",`translate(${s.x}, ${s.y})`),c.x=s.x,c.y=s.y,L.debug(`Positioned node ${c.id} at center (${s.x}, ${s.y})`)}),f.edges.forEach((s)=>{let c=u.edges.find((i)=>i.id===s.id);if(c)c.points=[{x:s.startX,y:s.startY},{x:s.midX,y:s.midY},{x:s.endX,y:s.endY}]}),L.debug("Inserting and positioning edges"),await Promise.all(u.edges.map(async(s)=>{let c=await o(S,s),i=v[s.start??""],y=v[s.end??""];if(i&&y){let T=f.edges.find((m)=>m.id===s.id);if(T){L.debug("APA01 positionedEdge",T);let m={...s},h=n(U,m,_,u.type,i,y,u.diagramId);b(m,h)}else{let m={...s,points:[{x:i.x||0,y:i.y||0},{x:y.x||0,y:y.y||0}]},h=n(U,m,_,u.type,i,y,u.diagramId);b(m,h)}}})),L.debug("Cose-bilkent rendering completed")},"render"),ct=at;export{ct as render};
1
+ import{t,a,p}from"./chunk-tfqarvdx.js";import{ft,vr}from"./chunk-tt93zbn4.js";import{Se,Te}from"./chunk-ngt1j8py.js";var k=Te(function(F,Y){(function(g,r){if(typeof F==="object"&&typeof Y==="object")Y.exports=r(vr());else if(typeof define==="function"&&define.amd)define(["cose-base"],r);else if(typeof F==="object")F.cytoscapeCoseBilkent=r(vr());else g.cytoscapeCoseBilkent=r(g.coseBase)})(F,function(u){return function(g){var r={};function n(o){if(r[o])return r[o].exports;var d=r[o]={i:o,l:!1,exports:{}};return g[o].call(d.exports,d,d.exports,n),d.l=!0,d.exports}return n.m=g,n.c=r,n.i=function(o){return o},n.d=function(o,d,l){if(!n.o(o,d))Object.defineProperty(o,d,{configurable:!1,enumerable:!0,get:l})},n.n=function(o){var d=o&&o.__esModule?function(){return o.default}:function(){return o};return n.d(d,"a",d),d},n.o=function(o,d){return Object.prototype.hasOwnProperty.call(o,d)},n.p="",n(n.s=1)}([function(g,r){g.exports=u},function(g,r,n){var o=n(0).layoutBase.LayoutConstants,d=n(0).layoutBase.FDLayoutConstants,l=n(0).CoSEConstants,L=n(0).CoSELayout,b=n(0).CoSENode,H=n(0).layoutBase.PointD,v=n(0).layoutBase.DimensionD,_={ready:function(){},stop:function(){},quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:0.45,nestingFactor:0.1,gravity:0.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:0.5};function D(E,e){var f={};for(var s in E)f[s]=E[s];for(var s in e)f[s]=e[s];return f}function I(E){this.options=D(_,E),U(this.options)}var U=function(e){if(e.nodeRepulsion!=null)l.DEFAULT_REPULSION_STRENGTH=d.DEFAULT_REPULSION_STRENGTH=e.nodeRepulsion;if(e.idealEdgeLength!=null)l.DEFAULT_EDGE_LENGTH=d.DEFAULT_EDGE_LENGTH=e.idealEdgeLength;if(e.edgeElasticity!=null)l.DEFAULT_SPRING_STRENGTH=d.DEFAULT_SPRING_STRENGTH=e.edgeElasticity;if(e.nestingFactor!=null)l.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=d.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=e.nestingFactor;if(e.gravity!=null)l.DEFAULT_GRAVITY_STRENGTH=d.DEFAULT_GRAVITY_STRENGTH=e.gravity;if(e.numIter!=null)l.MAX_ITERATIONS=d.MAX_ITERATIONS=e.numIter;if(e.gravityRange!=null)l.DEFAULT_GRAVITY_RANGE_FACTOR=d.DEFAULT_GRAVITY_RANGE_FACTOR=e.gravityRange;if(e.gravityCompound!=null)l.DEFAULT_COMPOUND_GRAVITY_STRENGTH=d.DEFAULT_COMPOUND_GRAVITY_STRENGTH=e.gravityCompound;if(e.gravityRangeCompound!=null)l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=d.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=e.gravityRangeCompound;if(e.initialEnergyOnIncremental!=null)l.DEFAULT_COOLING_FACTOR_INCREMENTAL=d.DEFAULT_COOLING_FACTOR_INCREMENTAL=e.initialEnergyOnIncremental;if(e.quality=="draft")o.QUALITY=0;else if(e.quality=="proof")o.QUALITY=2;else o.QUALITY=1;l.NODE_DIMENSIONS_INCLUDE_LABELS=d.NODE_DIMENSIONS_INCLUDE_LABELS=o.NODE_DIMENSIONS_INCLUDE_LABELS=e.nodeDimensionsIncludeLabels,l.DEFAULT_INCREMENTAL=d.DEFAULT_INCREMENTAL=o.DEFAULT_INCREMENTAL=!e.randomize,l.ANIMATE=d.ANIMATE=o.ANIMATE=e.animate,l.TILE=e.tile,l.TILING_PADDING_VERTICAL=typeof e.tilingPaddingVertical==="function"?e.tilingPaddingVertical.call():e.tilingPaddingVertical,l.TILING_PADDING_HORIZONTAL=typeof e.tilingPaddingHorizontal==="function"?e.tilingPaddingHorizontal.call():e.tilingPaddingHorizontal};I.prototype.run=function(){var E,e,f=this.options,s=this.idToLNode={},c=this.layout=new L,i=this;i.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var y=c.newGraphManager();this.gm=y;var T=this.options.eles.nodes(),m=this.options.eles.edges();this.root=y.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(T),c);for(var h=0;h<m.length;h++){var P=m[h],x=this.idToLNode[P.data("source")],O=this.idToLNode[P.data("target")];if(x!==O&&x.getEdgesBetween(O).length==0){var et=y.add(c.newEdge(),x,O);et.id=P.id()}}var V=function(R,B){if(typeof R==="number")R=B;var C=R.data("id"),G=i.idToLNode[C];return{x:G.getRect().getCenterX(),y:G.getRect().getCenterY()}},nt=function X(){var R=function(){if(f.fit)f.cy.fit(f.eles,f.padding);if(!E)E=!0,i.cy.one("layoutready",f.ready),i.cy.trigger({type:"layoutready",layout:i})},B=i.options.refresh,C;for(var G=0;G<B&&!C;G++)C=i.stopped||i.layout.tick();if(C){if(c.checkLayoutSuccess()&&!c.isSubLayout)c.doPostLayout();if(c.tilingPostLayout)c.tilingPostLayout();if(c.isLayoutFinished=!0,i.options.eles.nodes().positions(V),R(),i.cy.one("layoutstop",i.options.stop),i.cy.trigger({type:"layoutstop",layout:i}),e)cancelAnimationFrame(e);E=!1;return}var M=i.layout.getPositionsData();f.eles.nodes().positions(function(A,it){if(typeof A==="number")A=it;if(!A.isParent()){var j=A.id(),N=M[j],w=A;while(N==null)if(N=M[w.data("parent")]||M["DummyCompound_"+w.data("parent")],M[j]=N,w=w.parent()[0],w==null)break;if(N!=null)return{x:N.x,y:N.y};else return{x:A.position("x"),y:A.position("y")}}}),R(),e=requestAnimationFrame(X)};if(c.addListener("layoutstarted",function(){if(i.options.animate==="during")e=requestAnimationFrame(nt)}),c.runLayout(),this.options.animate!=="during")i.options.eles.nodes().not(":parent").layoutPositions(i,i.options,V),E=!1;return this},I.prototype.getTopMostNodes=function(E){var e={};for(var f=0;f<E.length;f++)e[E[f].id()]=!0;var s=E.filter(function(c,i){if(typeof c==="number")c=i;var y=c.parent()[0];while(y!=null){if(e[y.id()])return!1;y=y.parent()[0]}return!0});return s},I.prototype.processChildrenList=function(E,e,f){var s=e.length;for(var c=0;c<s;c++){var i=e[c],y=i.children(),T,m=i.layoutDimensions({nodeDimensionsIncludeLabels:this.options.nodeDimensionsIncludeLabels});if(i.outerWidth()!=null&&i.outerHeight()!=null)T=E.add(new b(f.graphManager,new H(i.position("x")-m.w/2,i.position("y")-m.h/2),new v(parseFloat(m.w),parseFloat(m.h))));else T=E.add(new b(this.graphManager));if(T.id=i.data("id"),T.paddingLeft=parseInt(i.css("padding")),T.paddingTop=parseInt(i.css("padding")),T.paddingRight=parseInt(i.css("padding")),T.paddingBottom=parseInt(i.css("padding")),this.options.nodeDimensionsIncludeLabels){if(i.isParent()){var h=i.boundingBox({includeLabels:!0,includeNodes:!1}).w,P=i.boundingBox({includeLabels:!0,includeNodes:!1}).h,x=i.css("text-halign");T.labelWidth=h,T.labelHeight=P,T.labelPos=x}}if(this.idToLNode[i.data("id")]=T,isNaN(T.rect.x))T.rect.x=0;if(isNaN(T.rect.y))T.rect.y=0;if(y!=null&&y.length>0){var O=f.getGraphManager().add(f.newGraph(),T);this.processChildrenList(O,y,f)}}},I.prototype.stop=function(){return this.stopped=!0,this};var S=function(e){e("layout","cose-bilkent",I)};if(typeof cytoscape<"u")S(cytoscape);g.exports=S}])})});var z=Se(k(),1);ft.use(z.default);function q(u,g){u.forEach((r)=>{let n={id:r.id,labelText:r.label,height:r.height,width:r.width,padding:r.padding??0};Object.keys(r).forEach((o)=>{if(!["id","label","height","width","padding","x","y"].includes(o))n[o]=r[o]}),g.add({group:"nodes",data:n,position:{x:r.x??0,y:r.y??0}})})}t(q,"addNodes");function W(u,g){u.forEach((r)=>{let n={id:r.id,source:r.start,target:r.end};Object.keys(r).forEach((o)=>{if(!["id","start","end"].includes(o))n[o]=r[o]}),g.add({group:"edges",data:n})})}t(W,"addEdges");function Q(u){return new Promise((g)=>{let r=p("body").append("div").attr("id","cy").attr("style","display:none"),n=ft({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});r.remove(),q(u.nodes,n),W(u.edges,n),n.nodes().forEach(function(d){d.layoutDimensions=()=>{let l=d.data();return{w:l.width,h:l.height}}});let o={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};n.layout(o).run(),n.ready((d)=>{a.info("Cytoscape ready",d),g(n)})})}t(Q,"createCytoscapeInstance");function Z(u){return u.nodes().map((g)=>{let r=g.data(),n=g.position(),o={id:r.id,x:n.x,y:n.y};return Object.keys(r).forEach((d)=>{if(d!=="id")o[d]=r[d]}),o})}t(Z,"extractPositionedNodes");function J(u){return u.edges().map((g)=>{let r=g.data(),n=g._private.rscratch,o={id:r.id,source:r.source,target:r.target,startX:n.startX,startY:n.startY,midX:n.midX,midY:n.midY,endX:n.endX,endY:n.endY};return Object.keys(r).forEach((d)=>{if(!["id","source","target"].includes(d))o[d]=r[d]}),o})}t(J,"extractPositionedEdges");async function K(u,g){a.debug("Starting cose-bilkent layout algorithm");try{tt(u);let r=await Q(u),n=Z(r),o=J(r);return a.debug(`Layout completed: ${n.length} nodes, ${o.length} edges`),{nodes:n,edges:o}}catch(r){throw a.error("Error in cose-bilkent layout algorithm:",r),r}}t(K,"executeCoseBilkentLayout");function tt(u){if(!u)throw Error("Layout data is required");if(!u.config)throw Error("Configuration is required in layout data");if(!u.rootNode)throw Error("Root node is required");if(!u.nodes||!Array.isArray(u.nodes))throw Error("No nodes found in layout data");if(!Array.isArray(u.edges))throw Error("Edges array is required in layout data");return!0}t(tt,"validateLayoutData");var at=t(async(u,g,{insertCluster:r,insertEdge:n,insertEdgeLabel:o,insertMarkers:d,insertNode:l,log:L,positionEdgeLabel:b},{algorithm:H})=>{let v={},_={},D=g.select("g");d(D,u.markers,u.type,u.diagramId);let I=D.insert("g").attr("class","subgraphs"),U=D.insert("g").attr("class","edgePaths"),S=D.insert("g").attr("class","edgeLabels"),E=D.insert("g").attr("class","nodes");L.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(u.nodes.map(async(s)=>{if(s.isGroup){let c={...s};_[s.id]=c,v[s.id]=c,await r(I,s)}else{let c={...s};v[s.id]=c;let i=await l(E,s,{config:u.config,dir:u.direction||"TB"}),y=i.node().getBBox();c.width=y.width,c.height=y.height,c.domId=i,L.debug(`Node ${s.id} dimensions: ${y.width}x${y.height}`)}})),L.debug("Running cose-bilkent layout algorithm");let e={...u,nodes:u.nodes.map((s)=>{let c=v[s.id];return{...s,width:c.width,height:c.height}})},f=await K(e,u.config);L.debug("Positioning nodes based on layout results"),f.nodes.forEach((s)=>{let c=v[s.id];if(c?.domId)c.domId.attr("transform",`translate(${s.x}, ${s.y})`),c.x=s.x,c.y=s.y,L.debug(`Positioned node ${c.id} at center (${s.x}, ${s.y})`)}),f.edges.forEach((s)=>{let c=u.edges.find((i)=>i.id===s.id);if(c)c.points=[{x:s.startX,y:s.startY},{x:s.midX,y:s.midY},{x:s.endX,y:s.endY}]}),L.debug("Inserting and positioning edges"),await Promise.all(u.edges.map(async(s)=>{let c=await o(S,s),i=v[s.start??""],y=v[s.end??""];if(i&&y){let T=f.edges.find((m)=>m.id===s.id);if(T){L.debug("APA01 positionedEdge",T);let m={...s},h=n(U,m,_,u.type,i,y,u.diagramId);b(m,h)}else{let m={...s,points:[{x:i.x||0,y:i.y||0},{x:y.x||0,y:y.y||0}]},h=n(U,m,_,u.type,i,y,u.diagramId);b(m,h)}}})),L.debug("Cose-bilkent rendering completed")},"render"),ct=at;export{ct as render};
@@ -1,9 +1,9 @@
1
- import{t,Kt,a,K,u,d,x,ht,Pa,C,l,p,V,We,se,Ye}from"./chunk-veam6vk4.js";import{_t}from"./chunk-2dvbeqt0.js";var dt=function(){var r=t(function(E,o,y,g){for(y=y||{},g=E.length;g--;y[E[g]]=o);return y},"o"),e=[6,11,13,14,15,17,19,20,23,24],s=[1,12],i=[1,13],n=[1,14],f=[1,15],h=[1,16],c=[1,19],_=[1,20],b={trace:t(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline_header:4,document:5,EOF:6,timeline:7,timeline_lr:8,timeline_td:9,line:10,SPACE:11,statement:12,NEWLINE:13,title:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,period_statement:21,event_statement:22,period:23,event:24,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",7:"timeline",8:"timeline_lr",9:"timeline_td",11:"SPACE",13:"NEWLINE",14:"title",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",23:"period",24:"event"},productions_:[0,[3,3],[4,1],[4,1],[4,1],[5,0],[5,2],[10,2],[10,1],[10,1],[10,1],[12,1],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[21,1],[22,1]],performAction:t(function(o,y,g,k,w,m,I){var T=m.length-1;switch(w){case 1:return m[T-1];case 3:k.setDirection("LR");break;case 4:k.setDirection("TD");break;case 5:this.$=[];break;case 6:m[T-1].push(m[T]),this.$=m[T-1];break;case 7:case 8:this.$=m[T];break;case 9:case 10:this.$=[];break;case 11:k.getCommonDb().setDiagramTitle(m[T].substr(6)),this.$=m[T].substr(6);break;case 12:this.$=m[T].trim(),k.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=m[T].trim(),k.getCommonDb().setAccDescription(this.$);break;case 15:k.addSection(m[T].substr(8)),this.$=m[T].substr(8);break;case 18:k.addTask(m[T],0,""),this.$=m[T];break;case 19:k.addEvent(m[T].substr(2)),this.$=m[T];break}},"anonymous"),table:[{3:1,4:2,7:[1,3],8:[1,4],9:[1,5]},{1:[3]},r(e,[2,5],{5:6}),r(e,[2,2]),r(e,[2,3]),r(e,[2,4]),{6:[1,7],10:8,11:[1,9],12:10,13:[1,11],14:s,15:i,17:n,19:f,20:h,21:17,22:18,23:c,24:_},r(e,[2,10],{1:[2,1]}),r(e,[2,6]),{12:21,14:s,15:i,17:n,19:f,20:h,21:17,22:18,23:c,24:_},r(e,[2,8]),r(e,[2,9]),r(e,[2,11]),{16:[1,22]},{18:[1,23]},r(e,[2,14]),r(e,[2,15]),r(e,[2,16]),r(e,[2,17]),r(e,[2,18]),r(e,[2,19]),r(e,[2,7]),r(e,[2,12]),r(e,[2,13])],defaultActions:{},parseError:t(function(o,y){if(y.recoverable)this.trace(o);else{var g=Error(o);throw g.hash=y,g}},"parseError"),parse:t(function(o){var y=this,g=[0],k=[],w=[null],m=[],I=this.table,T="",W=0,D=0,U=0,Q=2,B=1,G=m.slice.call(arguments,1),L=Object.create(this.lexer),z={yy:{}};for(var Z in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Z))z.yy[Z]=this.yy[Z];if(L.setInput(o,z.yy),z.yy.lexer=L,z.yy.parser=this,typeof L.yylloc>"u")L.yylloc={};var Y=L.yylloc;m.push(Y);var A=L.options&&L.options.ranges;if(typeof z.yy.parseError==="function")this.parseError=z.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function N(X){g.length=g.length-2*X,w.length=w.length-X,m.length=m.length-X}t(N,"popStack");function M(){var X=k.pop()||L.lex()||B;if(typeof X!=="number"){if(X instanceof Array)k=X,X=k.pop();X=y.symbols_[X]||X}return X}t(M,"lex");var H,P,F,R,lt,rt,J={},nt,j,kt,it;while(!0){if(F=g[g.length-1],this.defaultActions[F])R=this.defaultActions[F];else{if(H===null||typeof H>"u")H=M();R=I[F]&&I[F][H]}if(typeof R>"u"||!R.length||!R[0]){var ct="";it=[];for(nt in I[F])if(this.terminals_[nt]&&nt>Q)it.push("'"+this.terminals_[nt]+"'");if(L.showPosition)ct="Parse error on line "+(W+1)+`:
1
+ import{t,Kt,a,K,u,d,x,gt,Pa,C,l,p,V,We,se,Ye}from"./chunk-tfqarvdx.js";import{_t}from"./chunk-46jnkghq.js";var ht=function(){var r=t(function(E,o,y,g){for(y=y||{},g=E.length;g--;y[E[g]]=o);return y},"o"),e=[6,11,13,14,15,17,19,20,23,24],s=[1,12],i=[1,13],n=[1,14],f=[1,15],h=[1,16],c=[1,19],_=[1,20],b={trace:t(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline_header:4,document:5,EOF:6,timeline:7,timeline_lr:8,timeline_td:9,line:10,SPACE:11,statement:12,NEWLINE:13,title:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,period_statement:21,event_statement:22,period:23,event:24,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",7:"timeline",8:"timeline_lr",9:"timeline_td",11:"SPACE",13:"NEWLINE",14:"title",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",23:"period",24:"event"},productions_:[0,[3,3],[4,1],[4,1],[4,1],[5,0],[5,2],[10,2],[10,1],[10,1],[10,1],[12,1],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[21,1],[22,1]],performAction:t(function(o,y,g,k,w,m,I){var T=m.length-1;switch(w){case 1:return m[T-1];case 3:k.setDirection("LR");break;case 4:k.setDirection("TD");break;case 5:this.$=[];break;case 6:m[T-1].push(m[T]),this.$=m[T-1];break;case 7:case 8:this.$=m[T];break;case 9:case 10:this.$=[];break;case 11:k.getCommonDb().setDiagramTitle(m[T].substr(6)),this.$=m[T].substr(6);break;case 12:this.$=m[T].trim(),k.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=m[T].trim(),k.getCommonDb().setAccDescription(this.$);break;case 15:k.addSection(m[T].substr(8)),this.$=m[T].substr(8);break;case 18:k.addTask(m[T],0,""),this.$=m[T];break;case 19:k.addEvent(m[T].substr(2)),this.$=m[T];break}},"anonymous"),table:[{3:1,4:2,7:[1,3],8:[1,4],9:[1,5]},{1:[3]},r(e,[2,5],{5:6}),r(e,[2,2]),r(e,[2,3]),r(e,[2,4]),{6:[1,7],10:8,11:[1,9],12:10,13:[1,11],14:s,15:i,17:n,19:f,20:h,21:17,22:18,23:c,24:_},r(e,[2,10],{1:[2,1]}),r(e,[2,6]),{12:21,14:s,15:i,17:n,19:f,20:h,21:17,22:18,23:c,24:_},r(e,[2,8]),r(e,[2,9]),r(e,[2,11]),{16:[1,22]},{18:[1,23]},r(e,[2,14]),r(e,[2,15]),r(e,[2,16]),r(e,[2,17]),r(e,[2,18]),r(e,[2,19]),r(e,[2,7]),r(e,[2,12]),r(e,[2,13])],defaultActions:{},parseError:t(function(o,y){if(y.recoverable)this.trace(o);else{var g=Error(o);throw g.hash=y,g}},"parseError"),parse:t(function(o){var y=this,g=[0],k=[],w=[null],m=[],I=this.table,T="",W=0,D=0,U=0,Q=2,B=1,G=m.slice.call(arguments,1),L=Object.create(this.lexer),z={yy:{}};for(var Z in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Z))z.yy[Z]=this.yy[Z];if(L.setInput(o,z.yy),z.yy.lexer=L,z.yy.parser=this,typeof L.yylloc>"u")L.yylloc={};var Y=L.yylloc;m.push(Y);var A=L.options&&L.options.ranges;if(typeof z.yy.parseError==="function")this.parseError=z.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function N(X){g.length=g.length-2*X,w.length=w.length-X,m.length=m.length-X}t(N,"popStack");function M(){var X=k.pop()||L.lex()||B;if(typeof X!=="number"){if(X instanceof Array)k=X,X=k.pop();X=y.symbols_[X]||X}return X}t(M,"lex");var H,P,F,R,lt,rt,J={},nt,j,kt,it;while(!0){if(F=g[g.length-1],this.defaultActions[F])R=this.defaultActions[F];else{if(H===null||typeof H>"u")H=M();R=I[F]&&I[F][H]}if(typeof R>"u"||!R.length||!R[0]){var ct="";it=[];for(nt in I[F])if(this.terminals_[nt]&&nt>Q)it.push("'"+this.terminals_[nt]+"'");if(L.showPosition)ct="Parse error on line "+(W+1)+`:
2
2
  `+L.showPosition()+`
3
3
  Expecting `+it.join(", ")+", got '"+(this.terminals_[H]||H)+"'";else ct="Parse error on line "+(W+1)+": Unexpected "+(H==B?"end of input":"'"+(this.terminals_[H]||H)+"'");this.parseError(ct,{text:L.match,token:this.terminals_[H]||H,line:L.yylineno,loc:Y,expected:it})}if(R[0]instanceof Array&&R.length>1)throw Error("Parse Error: multiple actions possible at state: "+F+", token: "+H);switch(R[0]){case 1:if(g.push(H),w.push(L.yytext),m.push(L.yylloc),g.push(R[1]),H=null,!P){if(D=L.yyleng,T=L.yytext,W=L.yylineno,Y=L.yylloc,U>0)U--}else H=P,P=null;break;case 2:if(j=this.productions_[R[1]][1],J.$=w[w.length-j],J._$={first_line:m[m.length-(j||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-(j||1)].first_column,last_column:m[m.length-1].last_column},A)J._$.range=[m[m.length-(j||1)].range[0],m[m.length-1].range[1]];if(rt=this.performAction.apply(J,[T,D,W,z.yy,R[1],w,m].concat(G)),typeof rt<"u")return rt;if(j)g=g.slice(0,-1*j*2),w=w.slice(0,-1*j),m=m.slice(0,-1*j);g.push(this.productions_[R[1]][0]),w.push(J.$),m.push(J._$),kt=I[g[g.length-2]][g[g.length-1]],g.push(kt);break;case 3:return!0}}return!0},"parse")},S=function(){var E={EOF:1,parseError:t(function(y,g){if(this.yy.parser)this.yy.parser.parseError(y,g);else throw Error(y)},"parseError"),setInput:t(function(o,y){if(this.yy=y||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:t(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var y=o.match(/(?:\r\n?|\n).*/g);if(y)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),o},"input"),unput:t(function(o){var y=o.length,g=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-y),this.offset-=y;var k=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),g.length-1)this.yylineno-=g.length-1;var w=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:g?(g.length===k.length?this.yylloc.first_column:0)+k[k.length-g.length].length-g[0].length:this.yylloc.first_column-y},this.options.ranges)this.yylloc.range=[w[0],w[0]+this.yyleng-y];return this.yyleng=this.yytext.length,this},"unput"),more:t(function(){return this._more=!0,this},"more"),reject:t(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:t(function(o){this.unput(this.match.slice(o))},"less"),pastInput:t(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:t(function(){var o=this.match;if(o.length<20)o+=this._input.substr(0,20-o.length);return(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:t(function(){var o=this.pastInput(),y=Array(o.length+1).join("-");return o+this.upcomingInput()+`
5
5
  `+y+"^"},"showPosition"),test_match:t(function(o,y){var g,k,w;if(this.options.backtrack_lexer){if(w={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)w.yylloc.range=this.yylloc.range.slice(0)}if(k=o[0].match(/(?:\r\n?|\n).*/g),k)this.yylineno+=k.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:k?k[k.length-1].length-k[k.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],g=this.performAction.call(this,this.yy,this,y,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(g)return g;else if(this._backtrack){for(var m in w)this[m]=w[m];return!1}return!1},"test_match"),next:t(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var o,y,g,k;if(!this._more)this.yytext="",this.match="";var w=this._currentRules();for(var m=0;m<w.length;m++)if(g=this._input.match(this.rules[w[m]]),g&&(!y||g[0].length>y[0].length)){if(y=g,k=m,this.options.backtrack_lexer)if(o=this.test_match(g,w[m]),o!==!1)return o;else if(this._backtrack){y=!1;continue}else return!1;else if(!this.options.flex)break}if(y){if(o=this.test_match(y,w[k]),o!==!1)return o;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
6
- `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:t(function(){var y=this.next();if(y)return y;else return this.lex()},"lex"),begin:t(function(y){this.conditionStack.push(y)},"begin"),popState:t(function(){var y=this.conditionStack.length-1;if(y>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:t(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:t(function(y){if(y=this.conditionStack.length-1-Math.abs(y||0),y>=0)return this.conditionStack[y];else return"INITIAL"},"topState"),pushState:t(function(y){this.begin(y)},"pushState"),stateStackSize:t(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:t(function(y,g,k,w){var m=w;switch(k){case 0:break;case 1:break;case 2:return 13;case 3:break;case 4:break;case 5:return 8;case 6:return 9;case 7:return 7;case 8:return 14;case 9:return this.begin("acc_title"),15;break;case 10:return this.popState(),"acc_title_value";break;case 11:return this.begin("acc_descr"),17;break;case 12:return this.popState(),"acc_descr_value";break;case 13:this.begin("acc_descr_multiline");break;case 14:this.popState();break;case 15:return"acc_descr_multiline_value";case 16:return 20;case 17:return 24;case 18:return 23;case 19:return 6;case 20:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline[ \t]+LR\b)/i,/^(?:timeline[ \t]+TD\b)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[14,15],inclusive:!1},acc_descr:{rules:[12],inclusive:!1},acc_title:{rules:[10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,13,16,17,18,19,20],inclusive:!0}}};return E}();b.lexer=S;function v(){this.yy={}}return t(v,"Parser"),v.prototype=b,b.Parser=v,new v}();dt.parser=dt;var Gt=dt,Et={};Kt(Et,{addEvent:()=>Rt,addSection:()=>Lt,addTask:()=>Ct,addTaskOrg:()=>Wt,clear:()=>Nt,default:()=>Dt,getCommonDb:()=>$t,getDirection:()=>Ht,getSections:()=>Mt,getTasks:()=>At,setDirection:()=>It});var tt="",Tt=0,pt="LR",gt=[],st=[],et=[],$t=t(()=>Pa,"getCommonDb"),Nt=t(function(){gt.length=0,st.length=0,tt="",et.length=0,pt="LR",C()},"clear"),It=t(function(r){pt=r},"setDirection"),Ht=t(function(){return pt},"getDirection"),Lt=t(function(r){tt=r,gt.push(r)},"addSection"),Mt=t(function(){return gt},"getSections"),At=t(function(){let r=xt(),e=100,s=0;while(!r&&s<e)r=xt(),s++;return st.push(...et),st},"getTasks"),Ct=t(function(r,e,s){let i={id:Tt++,section:tt,type:tt,task:r,score:e?e:0,events:s?[s]:[]};et.push(i)},"addTask"),Rt=t(function(r){et.find((s)=>s.id===Tt-1).events.push(r)},"addEvent"),Wt=t(function(r){let e={section:tt,type:tt,description:r,task:r,classes:[]};st.push(e)},"addTaskOrg"),xt=t(function(){let r=t(function(s){return et[s].processed},"compileTask"),e=!0;for(let[s,i]of et.entries())r(s),e=e&&i.processed;return e},"compileTasks"),Dt={clear:Nt,getCommonDb:$t,getDirection:Ht,setDirection:It,addSection:Lt,getSections:Mt,getTasks:At,addTask:Ct,addTaskOrg:Wt,addEvent:Rt},Pt=0,at=t(function(r,e){let s=r.append("rect");if(s.attr("x",e.x),s.attr("y",e.y),s.attr("fill",e.fill),s.attr("stroke",e.stroke),s.attr("width",e.width),s.attr("height",e.height),s.attr("rx",e.rx),s.attr("ry",e.ry),e.class!==void 0)s.attr("class",e.class);return s},"drawRect"),Ut=t(function(r,e){let i=r.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),n=r.append("g");n.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),n.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function f(_){let b=_t().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);_.append("path").attr("class","mouth").attr("d",b).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}t(f,"smile");function h(_){let b=_t().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);_.append("path").attr("class","mouth").attr("d",b).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}t(h,"sad");function c(_){_.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}if(t(c,"ambivalent"),e.score>3)f(n);else if(e.score<3)h(n);else c(n);return i},"drawFace"),Xt=t(function(r,e){let s=r.append("circle");if(s.attr("cx",e.cx),s.attr("cy",e.cy),s.attr("class","actor-"+e.pos),s.attr("fill",e.fill),s.attr("stroke",e.stroke),s.attr("r",e.r),s.class!==void 0)s.attr("class",s.class);if(e.title!==void 0)s.append("title").text(e.title);return s},"drawCircle"),Bt=t(function(r,e){let s=e.text.replace(/<br\s*\/?>/gi," "),i=r.append("text");if(i.attr("x",e.x),i.attr("y",e.y),i.attr("class","legend"),i.style("text-anchor",e.anchor),e.class!==void 0)i.attr("class",e.class);let n=i.append("tspan");return n.attr("x",e.x+e.textMargin*2),n.text(s),i},"drawText"),Zt=t(function(r,e){function s(n,f,h,c,_){return n+","+f+" "+(n+h)+","+f+" "+(n+h)+","+(f+c-_)+" "+(n+h-_*1.2)+","+(f+c)+" "+n+","+(f+c)}t(s,"genPoints");let i=r.append("polygon");i.attr("points",s(e.x,e.y,50,20,7)),i.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+0.5*e.labelMargin,Bt(r,e)},"drawLabel"),jt=t(function(r,e,s){let i=r.append("g"),n=ft();n.x=e.x,n.y=e.y,n.fill=e.fill,n.width=s.width,n.height=s.height,n.class="journey-section section-type-"+e.num,n.rx=3,n.ry=3,at(i,n),Vt(s)(e.text,i,n.x,n.y,n.width,n.height,{class:"journey-section section-type-"+e.num},s,e.colour)},"drawSection"),ut=-1,qt=t(function(r,e,s,i){let n=e.x+s.width/2,f=r.append("g");ut++;let h=450;f.append("line").attr("id",i+"-task"+ut).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",h).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Ut(f,{cx:n,cy:300+(5-e.score)*30,score:e.score});let c=ft();c.x=e.x,c.y=e.y,c.fill=e.fill,c.width=s.width,c.height=s.height,c.class="task task-type-"+e.num,c.rx=3,c.ry=3,at(f,c),Vt(s)(e.task,f,c.x,c.y,c.width,c.height,{class:"task"},s,e.colour)},"drawTask"),Jt=t(function(r,e){at(r,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),Qt=t(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),ft=t(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),Vt=function(){function r(n,f,h,c,_,b,S,v){let E=f.append("text").attr("x",h+_/2).attr("y",c+b/2+5).style("font-color",v).style("text-anchor","middle").text(n);i(E,S)}t(r,"byText");function e(n,f,h,c,_,b,S,v,E){let{taskFontSize:o,taskFontFamily:y}=v,g=n.split(/<br\s*\/?>/gi);for(let k=0;k<g.length;k++){let w=k*o-o*(g.length-1)/2,m=f.append("text").attr("x",h+_/2).attr("y",c).attr("fill",E).style("text-anchor","middle").style("font-size",o).style("font-family",y);m.append("tspan").attr("x",h+_/2).attr("dy",w).text(g[k]),m.attr("y",c+b/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),i(m,S)}}t(e,"byTspan");function s(n,f,h,c,_,b,S,v){let E=f.append("switch"),y=E.append("foreignObject").attr("x",h).attr("y",c).attr("width",_).attr("height",b).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");y.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(n),e(n,E,h,c,_,b,S,v),i(y,S)}t(s,"byFo");function i(n,f){for(let h in f)if(h in f)n.attr(h,f[h])}return t(i,"_setTextAttrs"),function(n){return n.textPlacement==="fo"?s:n.textPlacement==="old"?r:e}}(),Yt=t(function(r,e){Pt=0,ut=-1,r.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics");function yt(r,e){r.each(function(){var s=p(this),i=s.text().split(/(\s+|<br>)/).reverse(),n,f=[],h=1.1,c=s.attr("y"),_=parseFloat(s.attr("dy")),b=s.text(null).append("tspan").attr("x",0).attr("y",c).attr("dy",_+"em");for(let S=0;S<i.length;S++)if(n=i[i.length-1-S],f.push(n),b.text(f.join(" ").trim()),b.node().getComputedTextLength()>e||n==="<br>"){if(f.pop(),b.text(f.join(" ").trim()),n==="<br>")f=[""];else f=[n];b=s.append("tspan").attr("x",0).attr("y",c).attr("dy",h+"em").text(n)}})}t(yt,"wrap");var te=t(function(r,e,s,i,n,f=!1){let{theme:h,look:c}=i,_=h?.includes("redux"),b=i?.themeVariables?.THEME_COLOR_LIMIT??12,S=s%b-1,v=r.append("g");e.section=S,v.attr("class",(e.class?e.class+" ":"")+"timeline-node "+("section-"+S));let E=v.append("g"),o=v.append("g"),g=o.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(yt,e.width).node().getBBox(),k=i.fontSize?.replace?i.fontSize.replace("px",""):i.fontSize;if(e.height=g.height+k*1.1*0.5+e.padding,e.height=Math.max(e.height,e.maxHeight),e.width=e.width+2*e.padding,o.attr("transform","translate("+e.width/2+", "+e.padding/2+")"),_)o.attr("transform",`translate(${e.width/2}, ${f?e.padding/2+3:e.padding})`);if(re(E,e,S,n,i),c==="neo"){if(v.attr("data-look","neo"),_){let w=h.includes("dark"),m=r.node()?.ownerSVGElement??r.node(),I=p(m),T=I.attr("id")??"",W=T?`${T}-drop-shadow`:"drop-shadow";if(I.select(`#${W}`).empty()){let D=I.select("defs");(D.empty()?I.append("defs"):D).append("filter").attr("id",W).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity",w?"0.2":"0.06").attr("flood-color",w?"#FFFFFF":"#000000")}}}return e},"drawNode"),ee=t(function(r,e,s){let i=r.append("g"),f=i.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(yt,e.width).node().getBBox(),h=s.fontSize?.replace?s.fontSize.replace("px",""):s.fontSize;return i.remove(),f.height+h*1.1*0.5+e.padding},"getVirtualNodeHeight"),re=t(function(r,e,s,i,n){let{theme:f}=n,h=f?.includes("redux")?0:5,c=5,_=h>0?`M0 ${e.height-5} v${-e.height+10} q0,-${h},${h},-${h} h${e.width-10} q${h},0,${h},${h} v${e.height-5} H0 Z`:`M0 ${e.height-5} v${-(e.height-5)} h${e.width} v${e.height} H0 Z`;if(r.append("path").attr("id",i+"-node-"+Pt++).attr("class","node-bkg node-"+e.type).attr("d",_),!f?.includes("redux"))r.append("line").attr("class","node-line-"+s).attr("x1",0).attr("y1",e.height).attr("x2",e.width).attr("y2",e.height)},"defaultBkg"),O={drawRect:at,drawCircle:Xt,drawSection:jt,drawText:Bt,drawLabel:Zt,drawTask:qt,drawBackgroundRect:Jt,getTextObj:Qt,getNoteRect:ft,initGraphics:Yt,drawNode:te,getVirtualNodeHeight:ee},ne=t(function(r,e,s,i){let n=l(),{look:f,theme:h,themeVariables:c}=n,{useGradient:_,gradientStart:b,gradientStop:S}=c,v=n.timeline?.leftMargin??50;a.debug("timeline",i.db);let E=n.securityLevel,o;if(E==="sandbox")o=p("#i"+e);let g=(E==="sandbox"?p(o.nodes()[0].contentDocument.body):p("body")).select("#"+e);g.append("g");let k=i.db.getTasks(),w=i.db.getCommonDb().getDiagramTitle();a.debug("task",k),O.initGraphics(g,e);let m=i.db.getSections();a.debug("sections",m);let I=0,T=0,W=0,D=0,U=50+v,Q=50;D=50;let B=0,G=!0;m.forEach(function(A){let N={number:B,descr:A,section:B,width:150,padding:20,maxHeight:I},M=O.getVirtualNodeHeight(g,N,n);a.debug("sectionHeight before draw",M),I=Math.max(I,M+20)});let L=0,z=0;a.debug("tasks.length",k.length);for(let[A,N]of k.entries()){let M={number:A,descr:N,section:N.section,width:150,padding:20,maxHeight:T},H=O.getVirtualNodeHeight(g,M,n);a.debug("taskHeight before draw",H),T=Math.max(T,H+20),L=Math.max(L,N.events.length);let P=0;for(let F of N.events){let R={descr:F,section:N.section,number:N.section,width:150,padding:20,maxHeight:50};P+=O.getVirtualNodeHeight(g,R,n)}if(N.events.length>0)P+=(N.events.length-1)*10;z=Math.max(z,P)}if(a.debug("maxSectionHeight before draw",I),a.debug("maxTaskHeight before draw",T),m&&m.length>0)m.forEach((A)=>{let N=k.filter((F)=>F.section===A),M={number:B,descr:A,section:B,width:200*Math.max(N.length,1)-50,padding:20,maxHeight:I};a.debug("sectionNode",M);let H=g.append("g"),P=O.drawNode(H,M,B,n,e);if(a.debug("sectionNode output",P),H.attr("transform",`translate(${U}, ${D})`),Q+=I+50,N.length>0)bt(g,N,B,U,Q,T,n,L,z,I,!1,e);U+=200*Math.max(N.length,1),Q=D,B++});else G=!1,bt(g,k,B,U,Q,T,n,L,z,I,!0,e);let Z=g.node().getBBox();if(a.debug("bounds",Z),w)g.append("text").text(w).attr("x",f==="neo"?Z.x*2+v:Z.width/2-v).attr("font-size","4ex").attr("font-weight","bold").attr("y",20);if(W=G?I+T+150:T+100,g.append("g").attr("class","lineWrapper").append("line").attr("x1",v).attr("y1",W).attr("x2",Z.width+3*v).attr("y2",W).attr("stroke-width",4).attr("stroke","black").attr("marker-end",`url(#${e}-arrowhead)`),f==="neo"&&_&&h!=="neutral"){let A=g.select("defs"),M=(A.empty()?g.append("defs"):A).append("linearGradient").attr("id",g.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");M.append("stop").attr("offset","0%").attr("stop-color",b).attr("stop-opacity",1),M.append("stop").attr("offset","100%").attr("stop-color",S).attr("stop-opacity",1)}ht(void 0,g,n.timeline?.padding??50,n.timeline?.useMaxWidth??!1)},"draw"),bt=t(function(r,e,s,i,n,f,h,c,_,b,S,v){for(let E of e){let o={descr:E.task,section:s,number:s,width:150,padding:20,maxHeight:f};a.debug("taskNode",o);let y=r.append("g").attr("class","taskWrapper"),k=O.drawNode(y,o,s,h,v).height;if(a.debug("taskHeight after draw",k),y.attr("transform",`translate(${i}, ${n})`),f=Math.max(f,k),E.events){let w=r.append("g").attr("class","lineWrapper"),m=f;n+=100,m=m+ie(r,E.events,s,i,n,h,v),n-=100,w.append("line").attr("x1",i+95).attr("y1",n+f).attr("x2",i+95).attr("y2",n+f+100+_+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end",`url(#${v}-arrowhead)`).attr("stroke-dasharray","5,5")}if(i=i+200,S&&!h.timeline?.disableMulticolor)s++}n=n-10},"drawTasks"),ie=t(function(r,e,s,i,n,f,h){let c=0,_=n;n=n+100;for(let b of e){let S={descr:b,section:s,number:s,width:150,padding:20,maxHeight:50};a.debug("eventNode",S);let v=r.append("g").attr("class","eventWrapper"),o=O.drawNode(v,S,s,f,h,!0).height;c=c+o,v.attr("transform",`translate(${i}, ${n})`),n=n+10+o}return n=_,c},"drawEvents"),ae={setConf:t(()=>{},"setConf"),draw:ne},ot=200,q=5,oe=ot+q*2,mt=ot+100,le=mt+q*2,Ft=10,ce=0,vt=20,zt=20,wt=30,Ot=50,he=t(function(r,e,s,i){let n=l(),f=n.timeline?.leftMargin??50;a.debug("timeline",i.db);let h=V(e);h.append("g");let c=i.db.getTasks(),_=i.db.getCommonDb().getDiagramTitle();a.debug("task",c),O.initGraphics(h);let b=i.db.getSections();a.debug("sections",b);let S=0,v=0,E=50+f,o=50,y=o,g=E,k=oe+zt,w=le+Ot,m=g+k,I=0,T=b&&b.length>0,W=T?m:E+k,D=Math.max(50,k+w-q*2);b.forEach(function(A){let N={number:I,descr:A,section:I,width:D,padding:q,maxHeight:S},M=O.getVirtualNodeHeight(h,N,n);a.debug("sectionHeight before draw",M),S=Math.max(S,M)});let U=0;a.debug("tasks.length",c.length);for(let[A,N]of c.entries()){let M={number:A,descr:N,section:N.section,width:ot,padding:q,maxHeight:v},H=O.getVirtualNodeHeight(h,M,n);a.debug("taskHeight before draw",H),v=Math.max(v,H);let P=0;for(let F of N.events){let R={descr:F,section:N.section,number:N.section,width:mt,padding:q,maxHeight:50};P+=O.getVirtualNodeHeight(h,R,n)}if(N.events.length>0)P+=(N.events.length-1)*Ft;U=Math.max(U,P)+ce}a.debug("maxSectionHeight before draw",S),a.debug("maxTaskHeight before draw",v);let B=Math.max(v,U)+wt;if(T)b.forEach((A)=>{let N=c.filter((J)=>J.section===A),M={number:I,descr:A,section:I,width:D,padding:q,maxHeight:S};a.debug("sectionNode",M);let H=h.append("g"),P=O.drawNode(H,M,I,n);a.debug("sectionNode output",P);let F=W-k;H.attr("transform",`translate(${F}, ${o})`);let R=o+P.height+vt;if(N.length>0)St(h,N,I,W,R,v,n,B,!1);let lt=N.length,rt=P.height+vt+B*Math.max(lt,1)-(lt>0?wt*2:0);o+=rt,I++});else St(h,c,I,W,o,v,n,B,!0);let G=h.node()?.getBBox();if(!G)throw Error("bbox not found");if(a.debug("bounds",G),_){if(h.append("text").text(_).attr("x",G.width/2-f).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),G=h.node()?.getBBox(),!G)throw Error("bbox not found");a.debug("bounds after title",G)}let[L]=We(n.fontSize),z=(L??16)*2,Z=(L??16)*0.5+20,Y=h.append("g").attr("class","lineWrapper");Y.append("line").attr("x1",W).attr("y1",y-z).attr("x2",W).attr("y2",G.y+G.height+Z).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),Y.lower(),ht(void 0,h,n.timeline?.padding??50,n.timeline?.useMaxWidth??!1)},"draw"),St=t(function(r,e,s,i,n,f,h,c,_){for(let b of e){let S={descr:b.task,section:s,number:s,width:ot,padding:q,maxHeight:f};a.debug("taskNode",S);let v=r.append("g").attr("class","taskWrapper"),E=O.drawNode(v,S,s,h),o=E.height;a.debug("taskHeight after draw",o);let y=i-zt-E.width;if(v.attr("transform",`translate(${y}, ${n})`),f=Math.max(f,o),b.events&&b.events.length>0){let g=n,k=i+Ot;de(r,b.events,s,i,k,g,h)}if(n=n+c,_&&!h.timeline?.disableMulticolor)s++}},"drawTasks"),de=t(function(r,e,s,i,n,f,h){let c=f;for(let _ of e){let b={descr:_,section:s,number:s,width:mt,padding:q,maxHeight:0};a.debug("eventNode",b);let S=r.append("g").attr("class","eventWrapper"),E=O.drawNode(S,b,s,h).height;S.attr("transform",`translate(${n}, ${c})`);let o=r.append("g").attr("class","lineWrapper"),y=c+E/2;o.append("line").attr("x1",i).attr("y1",y).attr("x2",n).attr("y2",y).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5"),c=c+E+Ft}return c-f},"drawEvents"),ue={setConf:t(()=>{},"setConf"),draw:he},pe=t((r)=>{let{theme:e}=x(),s=e?.includes("dark"),i=se(e,r.borderColorArray),n=r.svgId?.replace(/^#/,"")??"",f=n?`url(#${n}-drop-shadow)`:r.dropShadow??"none",h="";for(let c=0;c<Ye(r.THEME_COLOR_LIMIT);c++){let _=`${17-3*c}`,b=i?r.borderColorArray[c%r.borderColorArray.length]:void 0,S=b??r.mainBkg,v=b??r.nodeBorder;h+=`
6
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:t(function(){var y=this.next();if(y)return y;else return this.lex()},"lex"),begin:t(function(y){this.conditionStack.push(y)},"begin"),popState:t(function(){var y=this.conditionStack.length-1;if(y>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:t(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:t(function(y){if(y=this.conditionStack.length-1-Math.abs(y||0),y>=0)return this.conditionStack[y];else return"INITIAL"},"topState"),pushState:t(function(y){this.begin(y)},"pushState"),stateStackSize:t(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:t(function(y,g,k,w){var m=w;switch(k){case 0:break;case 1:break;case 2:return 13;case 3:break;case 4:break;case 5:return 8;case 6:return 9;case 7:return 7;case 8:return 14;case 9:return this.begin("acc_title"),15;break;case 10:return this.popState(),"acc_title_value";break;case 11:return this.begin("acc_descr"),17;break;case 12:return this.popState(),"acc_descr_value";break;case 13:this.begin("acc_descr_multiline");break;case 14:this.popState();break;case 15:return"acc_descr_multiline_value";case 16:return 20;case 17:return 24;case 18:return 23;case 19:return 6;case 20:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline[ \t]+LR\b)/i,/^(?:timeline[ \t]+TD\b)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[14,15],inclusive:!1},acc_descr:{rules:[12],inclusive:!1},acc_title:{rules:[10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,13,16,17,18,19,20],inclusive:!0}}};return E}();b.lexer=S;function v(){this.yy={}}return t(v,"Parser"),v.prototype=b,b.Parser=v,new v}();ht.parser=ht;var Gt=ht,Et={};Kt(Et,{addEvent:()=>Rt,addSection:()=>Lt,addTask:()=>Ct,addTaskOrg:()=>Wt,clear:()=>Nt,default:()=>Dt,getCommonDb:()=>$t,getDirection:()=>Ht,getSections:()=>Mt,getTasks:()=>At,setDirection:()=>It});var tt="",Tt=0,ut="LR",pt=[],st=[],et=[],$t=t(()=>Pa,"getCommonDb"),Nt=t(function(){pt.length=0,st.length=0,tt="",et.length=0,ut="LR",C()},"clear"),It=t(function(r){ut=r},"setDirection"),Ht=t(function(){return ut},"getDirection"),Lt=t(function(r){tt=r,pt.push(r)},"addSection"),Mt=t(function(){return pt},"getSections"),At=t(function(){let r=xt(),e=100,s=0;while(!r&&s<e)r=xt(),s++;return st.push(...et),st},"getTasks"),Ct=t(function(r,e,s){let i={id:Tt++,section:tt,type:tt,task:r,score:e?e:0,events:s?[s]:[]};et.push(i)},"addTask"),Rt=t(function(r){et.find((s)=>s.id===Tt-1).events.push(r)},"addEvent"),Wt=t(function(r){let e={section:tt,type:tt,description:r,task:r,classes:[]};st.push(e)},"addTaskOrg"),xt=t(function(){let r=t(function(s){return et[s].processed},"compileTask"),e=!0;for(let[s,i]of et.entries())r(s),e=e&&i.processed;return e},"compileTasks"),Dt={clear:Nt,getCommonDb:$t,getDirection:Ht,setDirection:It,addSection:Lt,getSections:Mt,getTasks:At,addTask:Ct,addTaskOrg:Wt,addEvent:Rt},Pt=0,at=t(function(r,e){let s=r.append("rect");if(s.attr("x",e.x),s.attr("y",e.y),s.attr("fill",e.fill),s.attr("stroke",e.stroke),s.attr("width",e.width),s.attr("height",e.height),s.attr("rx",e.rx),s.attr("ry",e.ry),e.class!==void 0)s.attr("class",e.class);return s},"drawRect"),Ut=t(function(r,e){let i=r.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),n=r.append("g");n.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),n.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function f(_){let b=_t().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);_.append("path").attr("class","mouth").attr("d",b).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}t(f,"smile");function h(_){let b=_t().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);_.append("path").attr("class","mouth").attr("d",b).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}t(h,"sad");function c(_){_.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}if(t(c,"ambivalent"),e.score>3)f(n);else if(e.score<3)h(n);else c(n);return i},"drawFace"),Xt=t(function(r,e){let s=r.append("circle");if(s.attr("cx",e.cx),s.attr("cy",e.cy),s.attr("class","actor-"+e.pos),s.attr("fill",e.fill),s.attr("stroke",e.stroke),s.attr("r",e.r),s.class!==void 0)s.attr("class",s.class);if(e.title!==void 0)s.append("title").text(e.title);return s},"drawCircle"),Bt=t(function(r,e){let s=e.text.replace(/<br\s*\/?>/gi," "),i=r.append("text");if(i.attr("x",e.x),i.attr("y",e.y),i.attr("class","legend"),i.style("text-anchor",e.anchor),e.class!==void 0)i.attr("class",e.class);let n=i.append("tspan");return n.attr("x",e.x+e.textMargin*2),n.text(s),i},"drawText"),Zt=t(function(r,e){function s(n,f,h,c,_){return n+","+f+" "+(n+h)+","+f+" "+(n+h)+","+(f+c-_)+" "+(n+h-_*1.2)+","+(f+c)+" "+n+","+(f+c)}t(s,"genPoints");let i=r.append("polygon");i.attr("points",s(e.x,e.y,50,20,7)),i.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+0.5*e.labelMargin,Bt(r,e)},"drawLabel"),jt=t(function(r,e,s){let i=r.append("g"),n=ft();n.x=e.x,n.y=e.y,n.fill=e.fill,n.width=s.width,n.height=s.height,n.class="journey-section section-type-"+e.num,n.rx=3,n.ry=3,at(i,n),Vt(s)(e.text,i,n.x,n.y,n.width,n.height,{class:"journey-section section-type-"+e.num},s,e.colour)},"drawSection"),dt=-1,qt=t(function(r,e,s,i){let n=e.x+s.width/2,f=r.append("g");dt++;let h=450;f.append("line").attr("id",i+"-task"+dt).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",h).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Ut(f,{cx:n,cy:300+(5-e.score)*30,score:e.score});let c=ft();c.x=e.x,c.y=e.y,c.fill=e.fill,c.width=s.width,c.height=s.height,c.class="task task-type-"+e.num,c.rx=3,c.ry=3,at(f,c),Vt(s)(e.task,f,c.x,c.y,c.width,c.height,{class:"task"},s,e.colour)},"drawTask"),Jt=t(function(r,e){at(r,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),Qt=t(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),ft=t(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),Vt=function(){function r(n,f,h,c,_,b,S,v){let E=f.append("text").attr("x",h+_/2).attr("y",c+b/2+5).style("font-color",v).style("text-anchor","middle").text(n);i(E,S)}t(r,"byText");function e(n,f,h,c,_,b,S,v,E){let{taskFontSize:o,taskFontFamily:y}=v,g=n.split(/<br\s*\/?>/gi);for(let k=0;k<g.length;k++){let w=k*o-o*(g.length-1)/2,m=f.append("text").attr("x",h+_/2).attr("y",c).attr("fill",E).style("text-anchor","middle").style("font-size",o).style("font-family",y);m.append("tspan").attr("x",h+_/2).attr("dy",w).text(g[k]),m.attr("y",c+b/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),i(m,S)}}t(e,"byTspan");function s(n,f,h,c,_,b,S,v){let E=f.append("switch"),y=E.append("foreignObject").attr("x",h).attr("y",c).attr("width",_).attr("height",b).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");y.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(n),e(n,E,h,c,_,b,S,v),i(y,S)}t(s,"byFo");function i(n,f){for(let h in f)if(h in f)n.attr(h,f[h])}return t(i,"_setTextAttrs"),function(n){return n.textPlacement==="fo"?s:n.textPlacement==="old"?r:e}}(),Yt=t(function(r,e){Pt=0,dt=-1,r.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics");function yt(r,e){r.each(function(){var s=p(this),i=s.text().split(/(\s+|<br>)/).reverse(),n,f=[],h=1.1,c=s.attr("y"),_=parseFloat(s.attr("dy")),b=s.text(null).append("tspan").attr("x",0).attr("y",c).attr("dy",_+"em");for(let S=0;S<i.length;S++)if(n=i[i.length-1-S],f.push(n),b.text(f.join(" ").trim()),b.node().getComputedTextLength()>e||n==="<br>"){if(f.pop(),b.text(f.join(" ").trim()),n==="<br>")f=[""];else f=[n];b=s.append("tspan").attr("x",0).attr("y",c).attr("dy",h+"em").text(n)}})}t(yt,"wrap");var te=t(function(r,e,s,i,n,f=!1){let{theme:h,look:c}=i,_=h?.includes("redux"),b=i?.themeVariables?.THEME_COLOR_LIMIT??12,S=s%b-1,v=r.append("g");e.section=S,v.attr("class",(e.class?e.class+" ":"")+"timeline-node "+("section-"+S));let E=v.append("g"),o=v.append("g"),g=o.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(yt,e.width).node().getBBox(),k=i.fontSize?.replace?i.fontSize.replace("px",""):i.fontSize;if(e.height=g.height+k*1.1*0.5+e.padding,e.height=Math.max(e.height,e.maxHeight),e.width=e.width+2*e.padding,o.attr("transform","translate("+e.width/2+", "+e.padding/2+")"),_)o.attr("transform",`translate(${e.width/2}, ${f?e.padding/2+3:e.padding})`);if(re(E,e,S,n,i),c==="neo"){if(v.attr("data-look","neo"),_){let w=h.includes("dark"),m=r.node()?.ownerSVGElement??r.node(),I=p(m),T=I.attr("id")??"",W=T?`${T}-drop-shadow`:"drop-shadow";if(I.select(`#${W}`).empty()){let D=I.select("defs");(D.empty()?I.append("defs"):D).append("filter").attr("id",W).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity",w?"0.2":"0.06").attr("flood-color",w?"#FFFFFF":"#000000")}}}return e},"drawNode"),ee=t(function(r,e,s){let i=r.append("g"),f=i.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(yt,e.width).node().getBBox(),h=s.fontSize?.replace?s.fontSize.replace("px",""):s.fontSize;return i.remove(),f.height+h*1.1*0.5+e.padding},"getVirtualNodeHeight"),re=t(function(r,e,s,i,n){let{theme:f}=n,h=f?.includes("redux")?0:5,c=5,_=h>0?`M0 ${e.height-5} v${-e.height+10} q0,-${h},${h},-${h} h${e.width-10} q${h},0,${h},${h} v${e.height-5} H0 Z`:`M0 ${e.height-5} v${-(e.height-5)} h${e.width} v${e.height} H0 Z`;if(r.append("path").attr("id",i+"-node-"+Pt++).attr("class","node-bkg node-"+e.type).attr("d",_),!f?.includes("redux"))r.append("line").attr("class","node-line-"+s).attr("x1",0).attr("y1",e.height).attr("x2",e.width).attr("y2",e.height)},"defaultBkg"),O={drawRect:at,drawCircle:Xt,drawSection:jt,drawText:Bt,drawLabel:Zt,drawTask:qt,drawBackgroundRect:Jt,getTextObj:Qt,getNoteRect:ft,initGraphics:Yt,drawNode:te,getVirtualNodeHeight:ee},ne=t(function(r,e,s,i){let n=l(),{look:f,theme:h,themeVariables:c}=n,{useGradient:_,gradientStart:b,gradientStop:S}=c,v=n.timeline?.leftMargin??50;a.debug("timeline",i.db);let E=n.securityLevel,o;if(E==="sandbox")o=p("#i"+e);let g=(E==="sandbox"?p(o.nodes()[0].contentDocument.body):p("body")).select("#"+e);g.append("g");let k=i.db.getTasks(),w=i.db.getCommonDb().getDiagramTitle();a.debug("task",k),O.initGraphics(g,e);let m=i.db.getSections();a.debug("sections",m);let I=0,T=0,W=0,D=0,U=50+v,Q=50;D=50;let B=0,G=!0;m.forEach(function(A){let N={number:B,descr:A,section:B,width:150,padding:20,maxHeight:I},M=O.getVirtualNodeHeight(g,N,n);a.debug("sectionHeight before draw",M),I=Math.max(I,M+20)});let L=0,z=0;a.debug("tasks.length",k.length);for(let[A,N]of k.entries()){let M={number:A,descr:N,section:N.section,width:150,padding:20,maxHeight:T},H=O.getVirtualNodeHeight(g,M,n);a.debug("taskHeight before draw",H),T=Math.max(T,H+20),L=Math.max(L,N.events.length);let P=0;for(let F of N.events){let R={descr:F,section:N.section,number:N.section,width:150,padding:20,maxHeight:50};P+=O.getVirtualNodeHeight(g,R,n)}if(N.events.length>0)P+=(N.events.length-1)*10;z=Math.max(z,P)}if(a.debug("maxSectionHeight before draw",I),a.debug("maxTaskHeight before draw",T),m&&m.length>0)m.forEach((A)=>{let N=k.filter((F)=>F.section===A),M={number:B,descr:A,section:B,width:200*Math.max(N.length,1)-50,padding:20,maxHeight:I};a.debug("sectionNode",M);let H=g.append("g"),P=O.drawNode(H,M,B,n,e);if(a.debug("sectionNode output",P),H.attr("transform",`translate(${U}, ${D})`),Q+=I+50,N.length>0)bt(g,N,B,U,Q,T,n,L,z,I,!1,e);U+=200*Math.max(N.length,1),Q=D,B++});else G=!1,bt(g,k,B,U,Q,T,n,L,z,I,!0,e);let Z=g.node().getBBox();if(a.debug("bounds",Z),w)g.append("text").text(w).attr("x",f==="neo"?Z.x*2+v:Z.width/2-v).attr("font-size","4ex").attr("font-weight","bold").attr("y",20);if(W=G?I+T+150:T+100,g.append("g").attr("class","lineWrapper").append("line").attr("x1",v).attr("y1",W).attr("x2",Z.width+3*v).attr("y2",W).attr("stroke-width",4).attr("stroke","black").attr("marker-end",`url(#${e}-arrowhead)`),f==="neo"&&_&&h!=="neutral"){let A=g.select("defs"),M=(A.empty()?g.append("defs"):A).append("linearGradient").attr("id",g.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");M.append("stop").attr("offset","0%").attr("stop-color",b).attr("stop-opacity",1),M.append("stop").attr("offset","100%").attr("stop-color",S).attr("stop-opacity",1)}gt(void 0,g,n.timeline?.padding??50,n.timeline?.useMaxWidth??!1)},"draw"),bt=t(function(r,e,s,i,n,f,h,c,_,b,S,v){for(let E of e){let o={descr:E.task,section:s,number:s,width:150,padding:20,maxHeight:f};a.debug("taskNode",o);let y=r.append("g").attr("class","taskWrapper"),k=O.drawNode(y,o,s,h,v).height;if(a.debug("taskHeight after draw",k),y.attr("transform",`translate(${i}, ${n})`),f=Math.max(f,k),E.events){let w=r.append("g").attr("class","lineWrapper"),m=f;n+=100,m=m+ie(r,E.events,s,i,n,h,v),n-=100,w.append("line").attr("x1",i+95).attr("y1",n+f).attr("x2",i+95).attr("y2",n+f+100+_+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end",`url(#${v}-arrowhead)`).attr("stroke-dasharray","5,5")}if(i=i+200,S&&!h.timeline?.disableMulticolor)s++}n=n-10},"drawTasks"),ie=t(function(r,e,s,i,n,f,h){let c=0,_=n;n=n+100;for(let b of e){let S={descr:b,section:s,number:s,width:150,padding:20,maxHeight:50};a.debug("eventNode",S);let v=r.append("g").attr("class","eventWrapper"),o=O.drawNode(v,S,s,f,h,!0).height;c=c+o,v.attr("transform",`translate(${i}, ${n})`),n=n+10+o}return n=_,c},"drawEvents"),ae={setConf:t(()=>{},"setConf"),draw:ne},ot=200,q=5,oe=ot+q*2,mt=ot+100,le=mt+q*2,Ft=10,ce=0,vt=20,zt=20,wt=30,Ot=50,he=t(function(r,e,s,i){let n=l(),f=n.timeline?.leftMargin??50;a.debug("timeline",i.db);let h=V(e);h.append("g");let c=i.db.getTasks(),_=i.db.getCommonDb().getDiagramTitle();a.debug("task",c),O.initGraphics(h);let b=i.db.getSections();a.debug("sections",b);let S=0,v=0,E=50+f,o=50,y=o,g=E,k=oe+zt,w=le+Ot,m=g+k,I=0,T=b&&b.length>0,W=T?m:E+k,D=Math.max(50,k+w-q*2);b.forEach(function(A){let N={number:I,descr:A,section:I,width:D,padding:q,maxHeight:S},M=O.getVirtualNodeHeight(h,N,n);a.debug("sectionHeight before draw",M),S=Math.max(S,M)});let U=0;a.debug("tasks.length",c.length);for(let[A,N]of c.entries()){let M={number:A,descr:N,section:N.section,width:ot,padding:q,maxHeight:v},H=O.getVirtualNodeHeight(h,M,n);a.debug("taskHeight before draw",H),v=Math.max(v,H);let P=0;for(let F of N.events){let R={descr:F,section:N.section,number:N.section,width:mt,padding:q,maxHeight:50};P+=O.getVirtualNodeHeight(h,R,n)}if(N.events.length>0)P+=(N.events.length-1)*Ft;U=Math.max(U,P)+ce}a.debug("maxSectionHeight before draw",S),a.debug("maxTaskHeight before draw",v);let B=Math.max(v,U)+wt;if(T)b.forEach((A)=>{let N=c.filter((J)=>J.section===A),M={number:I,descr:A,section:I,width:D,padding:q,maxHeight:S};a.debug("sectionNode",M);let H=h.append("g"),P=O.drawNode(H,M,I,n);a.debug("sectionNode output",P);let F=W-k;H.attr("transform",`translate(${F}, ${o})`);let R=o+P.height+vt;if(N.length>0)St(h,N,I,W,R,v,n,B,!1);let lt=N.length,rt=P.height+vt+B*Math.max(lt,1)-(lt>0?wt*2:0);o+=rt,I++});else St(h,c,I,W,o,v,n,B,!0);let G=h.node()?.getBBox();if(!G)throw Error("bbox not found");if(a.debug("bounds",G),_){if(h.append("text").text(_).attr("x",G.width/2-f).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),G=h.node()?.getBBox(),!G)throw Error("bbox not found");a.debug("bounds after title",G)}let[L]=We(n.fontSize),z=(L??16)*2,Z=(L??16)*0.5+20,Y=h.append("g").attr("class","lineWrapper");Y.append("line").attr("x1",W).attr("y1",y-z).attr("x2",W).attr("y2",G.y+G.height+Z).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),Y.lower(),gt(void 0,h,n.timeline?.padding??50,n.timeline?.useMaxWidth??!1)},"draw"),St=t(function(r,e,s,i,n,f,h,c,_){for(let b of e){let S={descr:b.task,section:s,number:s,width:ot,padding:q,maxHeight:f};a.debug("taskNode",S);let v=r.append("g").attr("class","taskWrapper"),E=O.drawNode(v,S,s,h),o=E.height;a.debug("taskHeight after draw",o);let y=i-zt-E.width;if(v.attr("transform",`translate(${y}, ${n})`),f=Math.max(f,o),b.events&&b.events.length>0){let g=n,k=i+Ot;de(r,b.events,s,i,k,g,h)}if(n=n+c,_&&!h.timeline?.disableMulticolor)s++}},"drawTasks"),de=t(function(r,e,s,i,n,f,h){let c=f;for(let _ of e){let b={descr:_,section:s,number:s,width:mt,padding:q,maxHeight:0};a.debug("eventNode",b);let S=r.append("g").attr("class","eventWrapper"),E=O.drawNode(S,b,s,h).height;S.attr("transform",`translate(${n}, ${c})`);let o=r.append("g").attr("class","lineWrapper"),y=c+E/2;o.append("line").attr("x1",i).attr("y1",y).attr("x2",n).attr("y2",y).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5"),c=c+E+Ft}return c-f},"drawEvents"),ue={setConf:t(()=>{},"setConf"),draw:he},pe=t((r)=>{let{theme:e}=x(),s=e?.includes("dark"),i=se(e,r.borderColorArray),n=r.svgId?.replace(/^#/,"")??"",f=n?`url(#${n}-drop-shadow)`:r.dropShadow??"none",h="";for(let c=0;c<Ye(r.THEME_COLOR_LIMIT);c++){let _=`${17-3*c}`,b=i?r.borderColorArray[c%r.borderColorArray.length]:void 0,S=b??r.mainBkg,v=b??r.nodeBorder;h+=`
7
7
  .section-${c-1} rect,
8
8
  .section-${c-1} path,
9
9
  .section-${c-1} circle {