@bkm016/basalt 0.1.10 → 0.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{chunk-0mjb3sm3.js → chunk-jymx3a77.js} +165 -152
- package/{chunk-3mqf9ped.js → chunk-zq32mwxj.js} +110 -110
- package/compiled.js +1 -1
- package/package.json +1 -1
- package/ui-test-worker.js +1 -1
- package/web/{chunk-9yfftz38.js → chunk-05mvzx00.js} +1 -1
- package/web/chunk-086dshck.js +1 -0
- package/web/chunk-0fy590s0.js +1 -0
- package/web/{chunk-se4h6wx0.js → chunk-0hvxb5d5.js} +1 -1
- package/web/chunk-0mdf1qja.js +1 -0
- package/web/{chunk-w3zgfhjb.js → chunk-0y971zgq.js} +2 -2
- package/web/{chunk-j89s11x8.js → chunk-1t38sgrk.js} +2 -2
- package/web/{chunk-z4bp6p32.js → chunk-1zfxaafq.js} +1 -1
- package/web/{chunk-g7kz8f7q.js → chunk-27812gqr.js} +5 -5
- package/web/{chunk-rag65pfs.js → chunk-2ds0a2z1.js} +3 -3
- package/web/{chunk-rh3xb76f.js → chunk-2f2agfpj.js} +11 -11
- package/web/{chunk-wtvch4ad.js → chunk-2tsxj613.js} +3 -3
- package/web/{chunk-y2rzeb4v.js → chunk-2weaa3gn.js} +2 -2
- package/web/{chunk-8h2x89tw.js → chunk-3020mmp1.js} +1 -1
- package/web/{chunk-mykrm8ba.js → chunk-30aeb767.js} +2 -2
- package/web/chunk-32zmk3f5.js +1 -0
- package/web/{chunk-rxvm70w5.js → chunk-36dc7tcg.js} +2 -2
- package/web/{chunk-j37p0b13.js → chunk-3a57m7xm.js} +3 -3
- package/web/{chunk-tt93zbn4.js → chunk-3b4wqmnh.js} +7 -7
- package/web/chunk-3d3wnh8a.js +2 -0
- package/web/{chunk-zse05v6j.js → chunk-3ftb27f3.js} +8 -8
- package/web/{chunk-de40q05r.js → chunk-47mbbmst.js} +3 -3
- package/web/chunk-48479gnx.js +1 -0
- package/web/{chunk-5v5q13hz.js → chunk-4gc663j0.js} +2 -2
- package/web/{chunk-88wd49xe.js → chunk-4rwwtfnd.js} +2 -2
- package/web/{chunk-eqndhs21.js → chunk-4wwd3pfz.js} +2 -2
- package/web/{chunk-myd6sc76.js → chunk-57pyz29y.js} +2 -2
- package/web/{chunk-32ty2xfn.js → chunk-59nk506k.js} +1 -1
- package/web/{chunk-m4fxd5d9.js → chunk-5ahx98zj.js} +8 -8
- package/web/chunk-6cjm2yr7.js +1 -0
- package/web/{chunk-frnh4zqf.js → chunk-6jb2zyp6.js} +2 -2
- package/web/{chunk-3eexx7y5.js → chunk-793m5jjh.js} +1 -1
- package/web/{chunk-p55vhns6.js → chunk-7dycbjxn.js} +4 -4
- package/web/chunk-7ycxz39p.js +1 -0
- package/web/{chunk-gw8x1g61.js → chunk-8151c970.js} +1 -1
- package/web/{chunk-jccz14ye.js → chunk-885kpj14.js} +2 -2
- package/web/{chunk-vasppf6b.js → chunk-8csw0mvf.js} +2 -2
- package/web/{chunk-x850q01z.js → chunk-8z7texmv.js} +1 -1
- package/web/{chunk-sd3xat3r.js → chunk-90fkdzx3.js} +6 -6
- package/web/chunk-94denx9h.js +39 -0
- package/web/{chunk-zms6mrqk.js → chunk-96xhmmqz.js} +6 -6
- package/web/chunk-9jy8nc4r.js +1 -0
- package/web/{chunk-dv1berk6.js → chunk-9kkzmss7.js} +3 -3
- package/web/chunk-9wr33d0t.js +1 -0
- package/web/{chunk-fmmrthpa.js → chunk-a3pye9ag.js} +3 -3
- package/web/chunk-a4tdrxdh.js +1 -0
- package/web/chunk-a9fvsyc1.js +1 -0
- package/web/chunk-apvbvg4d.js +1 -0
- package/web/{chunk-wrevb4ew.js → chunk-b3j07x0n.js} +6 -6
- package/web/{chunk-0770q5e1.js → chunk-b6sqwmq7.js} +1 -1
- package/web/chunk-bkxcc7v5.js +1 -0
- package/web/chunk-bve354k7.js +1 -0
- package/web/{chunk-nawxgz87.js → chunk-cbwvfedy.js} +8 -8
- package/web/{chunk-x5g1yy12.js → chunk-cpshsp24.js} +1 -1
- package/web/chunk-cwpxakby.js +1 -0
- package/web/chunk-d3f763n7.js +2 -0
- package/web/{chunk-grm2208k.js → chunk-d4519smc.js} +14 -14
- package/web/chunk-de29pe57.js +1 -0
- package/web/chunk-dk0fnj87.js +1 -0
- package/web/{chunk-c57f714b.js → chunk-drchr3yn.js} +2 -2
- package/web/chunk-dsbyfvwz.js +1 -0
- package/web/{chunk-xtn305fd.js → chunk-dtrh40vr.js} +1 -1
- package/web/chunk-e68jw0bg.js +1 -0
- package/web/{chunk-tfqarvdx.js → chunk-e763h2px.js} +67 -67
- package/web/{chunk-pgwf37s2.js → chunk-enryqmj7.js} +5 -5
- package/web/{chunk-jke2ev6m.js → chunk-f79ajymt.js} +2 -2
- package/web/{chunk-qq6m2my8.js → chunk-fj753yzt.js} +2 -2
- package/web/{chunk-5svqfj4g.js → chunk-g0rtcedn.js} +3 -3
- package/web/{chunk-18neka5g.js → chunk-g31dbnzm.js} +4 -4
- package/web/{chunk-1ev0n3n4.js → chunk-g4as4zzd.js} +4 -4
- package/web/{chunk-6e87m0nm.js → chunk-gten0rpx.js} +2 -2
- package/web/{chunk-sjkg40ay.js → chunk-gyhr27dm.js} +1 -1
- package/web/{chunk-js6kb05s.js → chunk-hjyev38w.js} +6 -6
- package/web/{chunk-rwfmccmh.js → chunk-hm8thq7c.js} +4 -4
- package/web/{chunk-07agqp8h.js → chunk-j4gvtszc.js} +2 -2
- package/web/chunk-jd7npyv9.js +8 -0
- package/web/chunk-jhpg2kcf.js +1 -0
- package/web/{chunk-qdzy124b.js → chunk-jqqbkdtw.js} +2 -2
- package/web/chunk-jzz5htxp.js +1 -0
- package/web/chunk-ka3q31t1.js +1 -0
- package/web/chunk-kahab58k.js +1139 -0
- package/web/{chunk-q4bst4an.js → chunk-kfbgvh0c.js} +1 -1
- package/web/chunk-krgvx75q.js +1 -0
- package/web/chunk-kxeaj44h.js +1 -0
- package/web/chunk-m1rdyvb5.js +1 -0
- package/web/{chunk-z5qn0xev.js → chunk-m24yb8md.js} +2 -2
- package/web/chunk-m7k4wr3k.js +1 -0
- package/web/chunk-mdj3r75b.js +1 -0
- package/web/{chunk-h5ckjk48.js → chunk-mpdeqzc9.js} +10 -10
- package/web/{chunk-knm82fw9.js → chunk-mykbcvqz.js} +1 -1
- package/web/{chunk-1qh7f5kr.js → chunk-n33753da.js} +1 -1
- package/web/{chunk-yppgejg7.js → chunk-nafe18y9.js} +10 -10
- package/web/chunk-nbcpbqq4.js +1 -0
- package/web/{chunk-bc3ajvfg.js → chunk-nhx8pw7p.js} +1 -1
- package/web/chunk-nkpdd9hw.js +1 -0
- package/web/{chunk-eh7wp62z.js → chunk-p1yc8hwn.js} +1 -1
- package/web/chunk-p29brxyt.js +1 -0
- package/web/chunk-p8fbes0t.js +1 -0
- package/web/chunk-pbp1p5ex.js +1 -0
- package/web/{chunk-n4yzs2q0.js → chunk-ppjw1mps.js} +4 -4
- package/web/{chunk-7tkgbbf9.js → chunk-pq56b3mq.js} +2 -2
- package/web/{chunk-vvvd3grf.js → chunk-pzg25qqe.js} +2 -2
- package/web/{chunk-t5nvgz7z.js → chunk-q65zxczs.js} +7 -7
- package/web/{chunk-g7dc4hrd.js → chunk-q8v5j963.js} +2 -2
- package/web/{chunk-zz1qkaar.js → chunk-qykt7avq.js} +2 -2
- package/web/chunk-r6q1301x.js +1 -0
- package/web/chunk-r8kghrkb.js +1 -0
- package/web/chunk-rhxn7mxg.js +1 -0
- package/web/{chunk-46jnkghq.js → chunk-rqympya7.js} +2 -2
- package/web/{chunk-k0cg4n2k.js → chunk-s0xy00v5.js} +2 -2
- package/web/chunk-svqshmpg.js +1 -0
- package/web/chunk-swzxq7r3.css +1 -0
- package/web/{chunk-905vw286.js → chunk-t18tn37m.js} +2 -2
- package/web/chunk-tbsaseer.js +1 -0
- package/web/{chunk-rbqnre6q.js → chunk-tggja45g.js} +3 -3
- package/web/chunk-tgkdyxbn.js +1 -0
- package/web/{chunk-sc63488q.js → chunk-tpdcrrf1.js} +1 -1
- package/web/chunk-v0zfnvc1.js +1 -0
- package/web/{chunk-tqze6d6b.js → chunk-v3dn9bfw.js} +1 -1
- package/web/chunk-vj31fs16.js +1 -0
- package/web/chunk-vr79r8vh.js +1 -0
- package/web/chunk-wb9tax0m.js +1 -0
- package/web/{chunk-26ecc2xh.js → chunk-wbwets5x.js} +19 -19
- package/web/chunk-x9eghjjd.js +1 -0
- package/web/{chunk-awkdw9rw.js → chunk-xbyrgyy0.js} +2 -2
- package/web/{chunk-qy1zx2yw.js → chunk-xjc5fmcr.js} +24 -24
- package/web/{chunk-qh62nkem.js → chunk-ydtrc1ay.js} +2 -2
- package/web/chunk-yrh86m0n.js +1 -0
- package/web/chunk-z3ky5ews.js +2 -0
- package/web/{chunk-ehtmb6sn.js → chunk-zdhyq3ch.js} +13 -13
- package/web/{chunk-gsw1tv96.js → chunk-zv73g4qq.js} +2 -2
- package/web/index.html +1 -1
- package/web/chunk-045d3b5d.js +0 -1
- package/web/chunk-12qf1r6m.js +0 -1
- package/web/chunk-1ex3wgms.js +0 -2
- package/web/chunk-2cz7tx8q.js +0 -1
- package/web/chunk-4am8j3k3.js +0 -1
- package/web/chunk-5qvmefq2.js +0 -1
- package/web/chunk-5z2n4z9x.css +0 -1
- package/web/chunk-6y55gk1n.js +0 -1
- package/web/chunk-7np1jp3x.js +0 -8
- package/web/chunk-7qq1ypvj.js +0 -1
- package/web/chunk-87e8d1hv.js +0 -1
- package/web/chunk-8y2526ve.js +0 -1
- package/web/chunk-918e5t4x.js +0 -2
- package/web/chunk-96m2m3e8.js +0 -1
- package/web/chunk-9f4zzqbx.js +0 -1
- package/web/chunk-a1n4468c.js +0 -1
- package/web/chunk-arnzrqnm.js +0 -1
- package/web/chunk-b46ws7rf.js +0 -1
- package/web/chunk-bwy3e58v.js +0 -1
- package/web/chunk-d5gshd1a.js +0 -1
- package/web/chunk-dp0k5vhd.js +0 -1
- package/web/chunk-et1hytyv.js +0 -1
- package/web/chunk-f7jpakwh.js +0 -1
- package/web/chunk-f9m9seam.js +0 -1
- package/web/chunk-g2erm7k0.js +0 -1
- package/web/chunk-g3kbn0t2.js +0 -1
- package/web/chunk-ght0t49g.js +0 -1
- package/web/chunk-ghwm7bdj.js +0 -2
- package/web/chunk-gx340asc.js +0 -1
- package/web/chunk-h0c42zy3.js +0 -1
- package/web/chunk-h2txs73e.js +0 -39
- package/web/chunk-h3tkacc7.js +0 -1
- package/web/chunk-je78j3vr.js +0 -1
- package/web/chunk-kxdtg9dt.js +0 -1
- package/web/chunk-m9xzt9p7.js +0 -1
- package/web/chunk-mzzaet63.js +0 -1
- package/web/chunk-ngt1j8py.js +0 -1139
- package/web/chunk-q34as3v6.js +0 -1
- package/web/chunk-qe0bgeda.js +0 -1
- package/web/chunk-sat7zyva.js +0 -1
- package/web/chunk-sk0hpa80.js +0 -1
- package/web/chunk-tj1fn8v2.js +0 -1
- package/web/chunk-tvcxrx6h.js +0 -1
- package/web/chunk-tzpnh70q.js +0 -1
- package/web/chunk-vb7g4xg6.js +0 -1
- package/web/chunk-wzfe6jtq.js +0 -1
- package/web/chunk-xh4xn1az.js +0 -1
- package/web/chunk-xk904wqv.js +0 -1
- package/web/chunk-xzwxcxb4.js +0 -1
- package/web/chunk-yekaz74b.js +0 -1
- package/web/chunk-ys2tns0p.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-0mjb3sm3.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-jymx3a77.js");
|
package/package.json
CHANGED
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-
|
|
2
|
+
import{ur,Un,C,Bn,Fn,Wn,jr,$n,mt,Vr}from"./chunk-82v8jh1h.js";import{Dn,cr}from"./chunk-zq32mwxj.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+`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function C(t){return Math.abs(t=Math.round(t))>=1000000000000000000000?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function g(t,r){if(!isFinite(t)||t===0)return null;var i=(t=r?t.toExponential(r-1):t.toExponential()).indexOf("e"),e=t.slice(0,i);return[e.length>1?e[0]+e.slice(2):e,+t.slice(i+1)]}function Mt(t){return t=g(Math.abs(t)),t?t[1]:NaN}function G(t,r){return function(i,e){var o=i.length,a=[],c=0,u=t[0],M=0;while(o>0&&u>0){if(M+u+1>e)u=Math.max(1,e-M);if(a.push(i.substring(o-=u,o+u)),(M+=u+1)>e)break;u=t[c=(c+1)%t.length]}return a.reverse().join(r)}}function I(t){return function(r){return r.replace(/[0-9]/g,function(i){return t[+i]})}}var tt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function
|
|
1
|
+
function C(t){return Math.abs(t=Math.round(t))>=1000000000000000000000?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function g(t,r){if(!isFinite(t)||t===0)return null;var i=(t=r?t.toExponential(r-1):t.toExponential()).indexOf("e"),e=t.slice(0,i);return[e.length>1?e[0]+e.slice(2):e,+t.slice(i+1)]}function Mt(t){return t=g(Math.abs(t)),t?t[1]:NaN}function G(t,r){return function(i,e){var o=i.length,a=[],c=0,u=t[0],M=0;while(o>0&&u>0){if(M+u+1>e)u=Math.max(1,e-M);if(a.push(i.substring(o-=u,o+u)),(M+=u+1)>e)break;u=t[c=(c+1)%t.length]}return a.reverse().join(r)}}function I(t){return function(r){return r.replace(/[0-9]/g,function(i){return t[+i]})}}var tt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function fn(t){if(!(r=tt.exec(t)))throw Error("invalid format: "+t);var r;return new E({fill:r[1],align:r[2],sign:r[3],symbol:r[4],zero:r[5],width:r[6],comma:r[7],precision:r[8]&&r[8].slice(1),trim:r[9],type:r[10]})}fn.prototype=E.prototype;function E(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}E.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function R(t){t:for(var r=t.length,i=1,e=-1,o;i<r;++i)switch(t[i]){case".":e=o=i;break;case"0":if(e===0)e=i;o=i;break;default:if(!+t[i])break t;if(e>0)e=0;break}return e>0?t.slice(0,e)+t.slice(o+1):t}var P;function X(t,r){var i=g(t,r);if(!i)return P=void 0,t.toPrecision(r);var e=i[0],o=i[1],a=o-(P=Math.max(-8,Math.min(8,Math.floor(o/3)))*3)+1,c=e.length;return a===c?e:a>c?e+Array(a-c+1).join("0"):a>0?e.slice(0,a)+"."+e.slice(a):"0."+Array(1-a).join("0")+g(t,Math.max(0,r+a-1))[0]}function F(t,r){var i=g(t,r);if(!i)return t+"";var e=i[0],o=i[1];return o<0?"0."+Array(-o).join("0")+e:e.length>o+1?e.slice(0,o+1)+"."+e.slice(o+1):e+Array(o-e.length+2).join("0")}var O={"%":(t,r)=>(t*100).toFixed(r),b:(t)=>Math.round(t).toString(2),c:(t)=>t+"",d:C,e:(t,r)=>t.toExponential(r),f:(t,r)=>t.toFixed(r),g:(t,r)=>t.toPrecision(r),o:(t)=>Math.round(t).toString(8),p:(t,r)=>F(t*100,r),r:F,s:X,X:(t)=>Math.round(t).toString(16).toUpperCase(),x:(t)=>Math.round(t).toString(16)};function N(t){return t}var K=Array.prototype.map,Q=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function U(t){var r=t.grouping===void 0||t.thousands===void 0?N:G(K.call(t.grouping,Number),t.thousands+""),i=t.currency===void 0?"":t.currency[0]+"",e=t.currency===void 0?"":t.currency[1]+"",o=t.decimal===void 0?".":t.decimal+"",a=t.numerals===void 0?N:I(K.call(t.numerals,String)),c=t.percent===void 0?"%":t.percent+"",u=t.minus===void 0?"−":t.minus+"",M=t.nan===void 0?"NaN":t.nan+"";function Z(f,p){f=fn(f);var y=f.fill,w=f.align,s=f.sign,S=f.symbol,k=f.zero,L=f.width,T=f.comma,x=f.precision,q=f.trim,m=f.type;if(m==="n")T=!0,m="g";else if(!O[m])x===void 0&&(x=12),q=!0,m="g";if(k||y==="0"&&w==="=")k=!0,y="0",w="=";var W=(p&&p.prefix!==void 0?p.prefix:"")+(S==="$"?i:S==="#"&&/[boxX]/.test(m)?"0"+m.toLowerCase():""),_=(S==="$"?e:/[%p]/.test(m)?c:"")+(p&&p.suffix!==void 0?p.suffix:""),B=O[m],v=/[defgprs%]/.test(m);x=x===void 0?6:/[gprs]/.test(m)?Math.max(1,Math.min(21,x)):Math.max(0,Math.min(20,x));function H(n){var l=W,d=_,b,J,z;if(m==="c")d=B(n)+d,n="";else{n=+n;var A=n<0||1/n<0;if(n=isNaN(n)?M:B(Math.abs(n),x),q)n=R(n);if(A&&+n===0&&s!=="+")A=!1;if(l=(A?s==="("?s:u:s==="-"||s==="("?"":s)+l,d=(m==="s"&&!isNaN(n)&&P!==void 0?Q[8+P/3]:"")+d+(A&&s==="("?")":""),v){b=-1,J=n.length;while(++b<J)if(z=n.charCodeAt(b),48>z||z>57){d=(z===46?o+n.slice(b+1):n.slice(b))+d,n=n.slice(0,b);break}}}if(T&&!k)n=r(n,1/0);var j=l.length+n.length+d.length,h=j<L?Array(L-j+1).join(y):"";if(T&&k)n=r(h+n,h.length?L-d.length:1/0),h="";switch(w){case"<":n=l+n+d+h;break;case"=":n=l+h+n+d;break;case"^":n=h.slice(0,j=h.length>>1)+l+n+d+h.slice(j);break;default:n=h+l+n+d;break}return a(n)}return H.toString=function(){return f+""},H}function V(f,p){var y=Math.max(-8,Math.min(8,Math.floor(Mt(p)/3)))*3,w=Math.pow(10,-y),s=Z((f=fn(f),f.type="f",f),{suffix:Q[8+y/3]});return function(S){return s(w*S)}}return{format:Z,formatPrefix:V}}var D,Nt,ca;Y({thousands:",",grouping:[3],currency:["$",""]});function Y(t){return D=U(t),Nt=D.format,ca=D.formatPrefix,D}export{Mt,fn,Nt,ca};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t,a}from"./chunk-e763h2px.js";import{J,It,Dt}from"./chunk-ppjw1mps.js";import{G}from"./chunk-p1yc8hwn.js";import{nr,_t}from"./chunk-xjc5fmcr.js";var i=nr().RailroadEbnf.parser.LangiumParser,o=t((e)=>{let r=e.alternatives.map(m);if(r.length===1)return r[0];return{type:"choice",alternatives:r}},"transformChoice"),m=t((e)=>{let r=e.elements.map(p);if(r.length===1)return r[0];return{type:"sequence",elements:r}},"transformSequence"),s=t((e)=>{switch(e.$type){case"EbnfTerminal":return{type:"terminal",value:e.value};case"EbnfNonTerminal":return{type:"nonterminal",name:e.name};case"EbnfSpecial":return{type:"special",text:e.text};case"EbnfGroup":return o(e.element);case"EbnfOptional":return{type:"optional",element:o(e.element)};case"EbnfRepetition":return{type:"repetition",element:o(e.element),min:0,max:1/0};default:throw Error(`Unsupported EBNF primary node: ${e.$type}`)}},"transformPrimary"),l=t((e,r)=>{switch(r.$type){case"EbnfOptionalPostfix":return{type:"optional",element:e};case"EbnfZeroOrMorePostfix":return{type:"repetition",element:e,min:0,max:1/0};case"EbnfOneOrMorePostfix":return{type:"repetition",element:e,min:1,max:1/0};case"EbnfExceptionPostfix":return{type:"sequence",elements:[e,{type:"terminal",value:"-"},s(r.except)]};default:throw Error(`Unsupported EBNF postfix node: ${r.$type}`)}},"transformPostfix"),p=t((e)=>e.postfixes.reduce((r,n)=>l(r,n),s(e.base)),"transformTerm"),f=t((e)=>({name:e.name,definition:o(e.definition)}),"transformRule"),u=t((e)=>{if(G(e,J),e.title)J.setTitle(e.title);e.rules.map((r)=>J.addRule(f(r)))},"populateDb"),c={parse:t((e)=>{J.clear(),a.debug("[EBNF Parser] Starting Langium parse");let r=i.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new _t(r);let n=r.value;a.debug("[EBNF Parser] Parsed rules:",n.rules.length),u(n),a.debug("[EBNF Parser] Parse complete")},"parse"),parser:{yy:J}},x={parser:c,db:J,renderer:Dt,styles:It};export{x as diagram};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t,a}from"./chunk-e763h2px.js";import{J,It,Dt}from"./chunk-ppjw1mps.js";import{G}from"./chunk-p1yc8hwn.js";import{rr,_t}from"./chunk-xjc5fmcr.js";var l=rr().RailroadAbnf.parser.LangiumParser,s=t((e)=>{let r=e.alternatives.map(p);if(r.length===1)return r[0];return{type:"choice",alternatives:r}},"transformAlternation"),p=t((e)=>{let r=e.elements.map(f);if(r.length===1)return r[0];return{type:"sequence",elements:r}},"transformConcatenation"),u=t((e)=>{if(e.includes("*")){let[n,o]=e.split("*"),i=n?parseInt(n,10):0,m=o?parseInt(o,10):1/0;return{min:i,max:m}}let r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),f=t((e)=>{let r=c(e.primary);if(!e.repeat)return r;let{min:n,max:o}=u(e.repeat);if(n===0&&o===1)return{type:"optional",element:r};return{type:"repetition",element:r,min:n,max:o}},"transformElement"),c=t((e)=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return s(e.element);case"AbnfOptionalGroup":return{type:"optional",element:s(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),d=t((e)=>({name:e.name,definition:s(e.definition)}),"transformRule"),v=t((e)=>{if(G(e,J),e.title)J.setTitle(e.title);e.rules.map((r)=>J.addRule(d(r)))},"populateDb"),g={parse:t((e)=>{J.clear(),a.debug("[ABNF Parser] Starting Langium parse");let r=l.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new _t(r);let n=r.value;a.debug("[ABNF Parser] Parsed rules:",n.rules.length),v(n),a.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:J}},E={parser:g,db:J,renderer:Dt,styles:It};export{E as diagram};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t}from"./chunk-
|
|
1
|
+
import{t}from"./chunk-e763h2px.js";var c=1;function i(){if(typeof globalThis>"u")return;return globalThis}t(i,"getCaptureGlobal");function p(){return Boolean(i()?.mermaidCaptureSizes)}t(p,"shouldCaptureSizes");function u(){if(typeof location>"u")return"browser-dev";return`${location.pathname}${location.search}`}t(u,"capturedFromLocation");function d(n,r){let o=i();if(!o)return;let e=r.node(),s=((e&&"ownerSVGElement"in e?e.ownerSVGElement:null)??e)?.id??"(unknown)";o.mermaidCapturedSizes??=[];let a={svgId:s,sizes:n};o.mermaidCapturedSizes.push(a),o.mermaidLastCapturedSizes=a}t(d,"emitCapturedSizes");function m(n,r){let o=[];for(let e of r.nodes){if(e.isGroup)continue;o.push({id:e.id,width:e.width??0,height:e.height??0})}if(o.length===0)return;d({metadata:{captureVersion:c,capturedAt:new Date().toISOString(),capturedFrom:u()},nodes:o},n)}t(m,"captureNodeSizes");export{m as captureNodeSizes};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{ui}from"./chunk-30aeb767.js";export{ui as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{g,o,r,e,n,y,
|
|
2
|
-
export{
|
|
1
|
+
import{g,o,r,e,n,y,te}from"./chunk-kahab58k.js";import{ea}from"./chunk-d3f763n7.js";function In(t){let{Button:i,SettingActions:l,cn:d}=y();return n(l,{children:[t.notice&&n("span",{role:t.notice.type==="error"?"alert":"status",className:d("mr-auto flex min-w-0 items-center gap-1.5 text-xs",t.notice.type==="success"?"text-success":"text-danger"),children:[t.notice.type==="success"?e(ea,{className:"size-3.5 shrink-0"}):e(te,{className:"size-3.5 shrink-0"}),e("span",{className:"min-w-0 break-words",children:t.notice.text})]}),t.dirty&&e(i,{type:"button",variant:"ghost",size:"sm",disabled:t.busy,onClick:t.onReset,children:"撤销更改"}),e(i,{form:t.formID,type:"submit",variant:"primary",size:"sm",disabled:t.busy||!t.dirty,children:t.saving?"保存中…":"保存"})]})}function Jr(t){let{connection:i,endpoint:l,loadError:d}=t,[m,b]=r(null),[c,f]=r(null),[N,P]=r({models:[]}),[p,T]=r(!0),[M,v]=r(!1),[h,x]=r(!1),[k,a]=r(null),S=g(async(u=!1)=>{if(u)v(!0);else T(!0);a(null);try{let[s,C]=await Promise.all([i.request(l),i.request("/api/models")]);b(s),f(s),P(C)}catch(s){a({type:"error",text:s instanceof Error?s.message:d})}finally{T(!1),v(!1)}},[i,l,d]);o(()=>{S()},[S]);let w=c&&m?t.differs(c,m):!1;return{settings:c,modelList:N,loading:p,refreshing:M,saving:h,notice:k,dirty:w,load:S,save:async(u)=>{if(u?.preventDefault(),!c||h||p)return;x(!0),a(null);try{let s=await i.request(l,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t.toBody(c))});b(s),f(s),a({type:"success",text:"设置已保存"})}catch(s){a({type:"error",text:s instanceof Error?s.message:"保存设置失败"})}finally{x(!1)}},reset:()=>{f(m),a(null)},edit:(u)=>{f((s)=>s?u(s):null),a(null)}}}
|
|
2
|
+
export{In,Jr};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{G}from"./chunk-
|
|
2
|
-
`+r);let o=qt(),p=Gt(),b=o.nodeRadius*1.6,X=u.db,m=X.getWardleyData(),tt=X.getDiagramTitle(),H=m.size?.width??o.width,M=m.size?.height??o.height,_=V(i);_.selectAll("*").remove(),F(_,M,H,o.useMaxWidth),_.attr("viewBox",`0 0 ${H} ${M}`);let z=_.append("g").attr("class","wardley-map"),nt=_.append("defs");nt.append("marker").attr("id",`arrow-${i}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",p.evolutionStroke).attr("stroke","none"),nt.append("marker").attr("id",`link-arrow-end-${i}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",p.linkStroke).attr("stroke","none"),nt.append("marker").attr("id",`link-arrow-start-${i}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",p.linkStroke).attr("stroke","none"),z.append("rect").attr("class","wardley-background").attr("width",H).attr("height",M).attr("fill",p.backgroundColor);let Z=H-o.padding*2,K=M-o.padding*2;if(tt)z.append("text").attr("class","wardley-title").attr("x",H/2).attr("y",o.padding/2).attr("fill",p.axisTextColor).attr("font-size",o.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(tt);let B=t((e)=>o.padding+e/100*Z,"projectX"),O=t((e)=>M-o.padding-e/100*K,"projectY"),et=z.append("g").attr("class","wardley-axes");et.append("line").attr("x1",o.padding).attr("x2",H-o.padding).attr("y1",M-o.padding).attr("y2",M-o.padding).attr("stroke",p.axisColor).attr("stroke-width",1),et.append("line").attr("x1",o.padding).attr("x2",o.padding).attr("y1",o.padding).attr("y2",M-o.padding).attr("stroke",p.axisColor).attr("stroke-width",1);let Lt=m.axes.xLabel??"Evolution",Tt=m.axes.yLabel??"Visibility";et.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",o.padding+Z/2).attr("y",M-o.padding/4).attr("fill",p.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(Lt),et.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",o.padding/3).attr("y",o.padding+K/2).attr("fill",p.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${o.padding/3} ${o.padding+K/2})`).text(Tt);let Q=m.axes.stages&&m.axes.stages.length>0?m.axes.stages:Dt;if(Q.length>0){let e=z.append("g").attr("class","wardley-stages"),d=m.axes.stageBoundaries,s=[];if(d&&d.length===Q.length){let c=0;d.forEach((f)=>{s.push({start:c,end:f}),c=f})}else{let c=1/Q.length;Q.forEach((f,g)=>{s.push({start:g*c,end:(g+1)*c})})}Q.forEach((c,f)=>{let g=s[f],w=o.padding+g.start*Z,y=o.padding+g.end*Z,k=(w+y)/2;if(f>0)e.append("line").attr("x1",w).attr("x2",w).attr("y1",o.padding).attr("y2",M-o.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",0.8);e.append("text").attr("class","wardley-stage-label").attr("x",k).attr("y",M-o.padding/1.5).attr("fill",p.axisTextColor).attr("font-size",o.axisFontSize-2).attr("text-anchor","middle").text(c)})}if(o.showGrid){let e=z.append("g").attr("class","wardley-grid");for(let d=1;d<4;d++){let s=d/4,c=o.padding+Z*s;e.append("line").attr("x1",c).attr("x2",c).attr("y1",o.padding).attr("y2",M-o.padding).attr("stroke",p.gridColor).attr("stroke-dasharray","2 6"),e.append("line").attr("x1",o.padding).attr("x2",H-o.padding).attr("y1",M-o.padding-K*s).attr("y2",M-o.padding-K*s).attr("stroke",p.gridColor).attr("stroke-dasharray","2 6")}}let h=new Map;if(m.nodes.forEach((e)=>{h.set(e.id,{x:B(e.x),y:O(e.y),node:e})}),m.pipelines.length>0){let e=z.append("g").attr("class","wardley-pipelines"),d=z.append("g").attr("class","wardley-pipeline-links");m.pipelines.forEach((s)=>{if(s.componentIds.length===0)return;let c=s.componentIds.map((y)=>({id:y,pos:h.get(y),node:m.nodes.find((k)=>k.id===y)})).filter((y)=>y.pos&&y.node).sort((y,k)=>y.node.x-k.node.x);for(let y=0;y<c.length-1;y++){let k=c[y],v=c[y+1];d.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",k.pos.x).attr("y1",k.pos.y).attr("x2",v.pos.x).attr("y2",v.pos.y).attr("stroke",p.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let f=1/0,g=-1/0,w=0;if(s.componentIds.forEach((y)=>{let k=h.get(y);if(k)f=Math.min(f,k.x),g=Math.max(g,k.x),w=k.y}),f!==1/0&&g!==-1/0){let k=o.nodeRadius*4,v=w-k/2,W=h.get(s.nodeId);if(W){let I=(f+g)/2;W.x=I,W.y=v-b/6}e.append("rect").attr("class","wardley-pipeline-box").attr("x",f-15).attr("y",v).attr("width",g-f+30).attr("height",k).attr("fill","none").attr("stroke",p.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}let dt=z.append("g").attr("class","wardley-links"),lt=new Map;m.pipelines.forEach((e)=>{lt.set(e.nodeId,new Set(e.componentIds))});let ct=m.links.filter((e)=>{if(!h.has(e.source)||!h.has(e.target))return!1;if(lt.get(e.target)?.has(e.source))return!1;return!0});dt.selectAll("line").data(ct).enter().append("line").attr("class",(e)=>`wardley-link${e.dashed?" wardley-link--dashed":""}`).attr("x1",(e)=>{let d=h.get(e.source),s=h.get(e.target),f=m.nodes.find((k)=>k.id===e.source).isPipelineParent?b/Math.sqrt(2):o.nodeRadius,g=s.x-d.x,w=s.y-d.y,y=Math.sqrt(g*g+w*w);return d.x+g/y*f}).attr("y1",(e)=>{let d=h.get(e.source),s=h.get(e.target),f=m.nodes.find((k)=>k.id===e.source).isPipelineParent?b/Math.sqrt(2):o.nodeRadius,g=s.x-d.x,w=s.y-d.y,y=Math.sqrt(g*g+w*w);return d.y+w/y*f}).attr("x2",(e)=>{let d=h.get(e.source),s=h.get(e.target),f=m.nodes.find((k)=>k.id===e.target).isPipelineParent?b/Math.sqrt(2):o.nodeRadius,g=d.x-s.x,w=d.y-s.y,y=Math.sqrt(g*g+w*w);return s.x+g/y*f}).attr("y2",(e)=>{let d=h.get(e.source),s=h.get(e.target),f=m.nodes.find((k)=>k.id===e.target).isPipelineParent?b/Math.sqrt(2):o.nodeRadius,g=d.x-s.x,w=d.y-s.y,y=Math.sqrt(g*g+w*w);return s.y+w/y*f}).attr("stroke",p.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",(e)=>e.dashed?"6 6":null).attr("marker-end",(e)=>{if(e.flow==="forward"||e.flow==="bidirectional")return`url(#link-arrow-end-${i})`;return null}).attr("marker-start",(e)=>{if(e.flow==="backward"||e.flow==="bidirectional")return`url(#link-arrow-start-${i})`;return null}),dt.selectAll("text").data(ct.filter((e)=>e.label)).enter().append("text").attr("class","wardley-link-label").attr("x",(e)=>{let d=h.get(e.source),s=h.get(e.target),c=(d.x+s.x)/2,f=s.y-d.y,g=s.x-d.x,w=Math.sqrt(g*g+f*f),y=8,k=f/w;return c+k*8}).attr("y",(e)=>{let d=h.get(e.source),s=h.get(e.target),c=(d.y+s.y)/2,f=s.x-d.x,g=s.y-d.y,w=Math.sqrt(f*f+g*g),y=8,k=-f/w;return c+k*8}).attr("fill",p.axisTextColor).attr("font-size",o.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",(e)=>{let d=h.get(e.source),s=h.get(e.target),c=(d.x+s.x)/2,f=(d.y+s.y)/2,g=s.x-d.x,w=s.y-d.y,y=Math.sqrt(g*g+w*w),k=8,v=w/y,W=-g/y,I=c+v*8,at=f+W*8,j=Math.atan2(w,g)*180/Math.PI;if(j>90||j<-90)j+=180;return`rotate(${j} ${I} ${at})`}).text((e)=>e.label);let Wt=z.append("g").attr("class","wardley-trends"),At=m.trends.map((e)=>{let d=h.get(e.nodeId);if(!d)return null;let s=B(e.targetX),c=O(e.targetY),f=s-d.x,g=c-d.y,w=Math.sqrt(f*f+g*g),y=o.nodeRadius+2,k=w>y?s-f/w*y:s,v=w>y?c-g/w*y:c;return{origin:d,targetX:s,targetY:c,adjustedX2:k,adjustedY2:v}}).filter((e)=>e!==null);Wt.selectAll("line").data(At).enter().append("line").attr("class","wardley-trend").attr("x1",(e)=>e.origin.x).attr("y1",(e)=>e.origin.y).attr("x2",(e)=>e.adjustedX2).attr("y2",(e)=>e.adjustedY2).attr("stroke",p.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${i})`);let Y=z.append("g").attr("class","wardley-nodes").selectAll("g").data(m.nodes).enter().append("g").attr("class",(e)=>["wardley-node",e.className?`wardley-node--${e.className}`:""].filter(Boolean).join(" "));Y.filter((e)=>e.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius*2).attr("fill","#666").attr("stroke",p.componentStroke).attr("stroke-width",1),Y.filter((e)=>e.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius*2).attr("fill","#ccc").attr("stroke",p.componentStroke).attr("stroke-width",1),Y.filter((e)=>e.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);let D=Y.filter((e)=>e.sourceStrategy==="market");D.append("circle").attr("class","wardley-market-overlay").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius*2).attr("fill","white").attr("stroke",p.componentStroke).attr("stroke-width",1),Y.filter((e)=>!e.isPipelineParent&&e.sourceStrategy!=="market"&&e.className!=="anchor").append("circle").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius).attr("fill",p.componentFill).attr("stroke",p.componentStroke).attr("stroke-width",1);let st=o.nodeRadius*0.7,N=o.nodeRadius*1.2;if(D.append("line").attr("class","wardley-market-line").attr("x1",(e)=>h.get(e.id).x).attr("y1",(e)=>h.get(e.id).y-N).attr("x2",(e)=>h.get(e.id).x-N*Math.cos(Math.PI/6)).attr("y2",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("stroke",p.componentStroke).attr("stroke-width",1),D.append("line").attr("class","wardley-market-line").attr("x1",(e)=>h.get(e.id).x-N*Math.cos(Math.PI/6)).attr("y1",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("x2",(e)=>h.get(e.id).x+N*Math.cos(Math.PI/6)).attr("y2",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("stroke",p.componentStroke).attr("stroke-width",1),D.append("line").attr("class","wardley-market-line").attr("x1",(e)=>h.get(e.id).x+N*Math.cos(Math.PI/6)).attr("y1",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("x2",(e)=>h.get(e.id).x).attr("y2",(e)=>h.get(e.id).y-N).attr("stroke",p.componentStroke).attr("stroke-width",1),D.append("circle").attr("class","wardley-market-dot").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y-N).attr("r",st).attr("fill","white").attr("stroke",p.componentStroke).attr("stroke-width",2),D.append("circle").attr("class","wardley-market-dot").attr("cx",(e)=>h.get(e.id).x-N*Math.cos(Math.PI/6)).attr("cy",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("r",st).attr("fill","white").attr("stroke",p.componentStroke).attr("stroke-width",2),D.append("circle").attr("class","wardley-market-dot").attr("cx",(e)=>h.get(e.id).x+N*Math.cos(Math.PI/6)).attr("cy",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("r",st).attr("fill","white").attr("stroke",p.componentStroke).attr("stroke-width",2),Y.filter((e)=>e.isPipelineParent===!0).append("rect").attr("x",(e)=>h.get(e.id).x-b/2).attr("y",(e)=>h.get(e.id).y-b/2).attr("width",b).attr("height",b).attr("fill",p.componentFill).attr("stroke",p.componentStroke).attr("stroke-width",1),Y.filter((e)=>e.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",(e)=>{let d=h.get(e.id),s=e.isPipelineParent?b/2+15:o.nodeRadius+15;if(e.sourceStrategy)s+=o.nodeRadius+10;return d.x+s}).attr("y1",(e)=>{let d=h.get(e.id),s=e.isPipelineParent?b:o.nodeRadius*2;return d.y-s/2}).attr("x2",(e)=>{let d=h.get(e.id),s=e.isPipelineParent?b/2+15:o.nodeRadius+15;if(e.sourceStrategy)s+=o.nodeRadius+10;return d.x+s}).attr("y2",(e)=>{let d=h.get(e.id),s=e.isPipelineParent?b:o.nodeRadius*2;return d.y+s/2}).attr("stroke",p.componentStroke).attr("stroke-width",6),Y.append("text").attr("x",(e)=>{let d=h.get(e.id);if(e.className==="anchor")return e.labelOffsetX!==void 0?d.x+e.labelOffsetX:d.x;let s=o.nodeLabelOffset;if(e.sourceStrategy&&e.labelOffsetX===void 0)s+=10;let c=e.labelOffsetX??s;return d.x+c}).attr("y",(e)=>{let d=h.get(e.id);if(e.className==="anchor")return e.labelOffsetY!==void 0?d.y+e.labelOffsetY:d.y-3;let s=-o.nodeLabelOffset;if(e.sourceStrategy&&e.labelOffsetY===void 0)s-=10;let c=e.labelOffsetY??s;return d.y+c}).attr("class","wardley-node-label").attr("fill",(e)=>{if(e.className==="evolved")return p.evolutionStroke;if(e.className==="anchor")return"#000";return p.componentLabelColor}).attr("font-size",o.labelFontSize).attr("font-weight",(e)=>e.className==="anchor"?"bold":"normal").attr("text-anchor",(e)=>e.className==="anchor"?"middle":"start").attr("dominant-baseline",(e)=>e.className==="anchor"?"middle":"auto").text((e)=>e.label),m.annotations.length>0){let e=z.append("g").attr("class","wardley-annotations");if(m.annotations.forEach((d)=>{let s=d.coordinates.map((c)=>({x:B(c.x),y:O(c.y)}));if(s.length>1)for(let c=0;c<s.length-1;c++)e.append("line").attr("class","wardley-annotation-line").attr("x1",s[c].x).attr("y1",s[c].y).attr("x2",s[c+1].x).attr("y2",s[c+1].y).attr("stroke",p.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");s.forEach((c)=>{let f=e.append("g").attr("class","wardley-annotation");f.append("circle").attr("cx",c.x).attr("cy",c.y).attr("r",10).attr("fill","white").attr("stroke",p.axisColor).attr("stroke-width",1.5),f.append("text").attr("x",c.x).attr("y",c.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",p.axisTextColor).attr("font-weight","bold").text(d.number)})}),m.annotationsBox){let d=B(m.annotationsBox.x),s=O(m.annotationsBox.y),c=10,f=16,g=11,w=e.append("g").attr("class","wardley-annotations-box"),y=[...m.annotations].filter((v)=>v.text).sort((v,W)=>v.number-W.number),k=[];if(y.forEach((v,W)=>{let I=w.append("text").attr("x",d+c).attr("y",s+c+(W+1)*f).attr("font-size",g).attr("fill",p.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${v.number}. ${v.text}`);k.push(I)}),k.length>0){let v=0,W=0;k.forEach((it)=>{let rt=it.node(),Yt=rt.getComputedTextLength();v=Math.max(v,Yt);let It=rt.getBBox();W=Math.max(W,It.height)});let I=v+c*2+105,at=y.length*f+c*2+W/2,j=o.padding,Xt=H-o.padding-I,Et=o.padding,Ht=M-o.padding-at;d=Math.max(j,Math.min(d,Xt)),s=Math.max(Et,Math.min(s,Ht)),k.forEach((it,rt)=>{it.attr("x",d+c).attr("y",s+c+(rt+1)*f)}),w.insert("rect","text").attr("x",d).attr("y",s).attr("width",I).attr("height",at).attr("fill","white").attr("stroke",p.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(m.notes.length>0){let e=z.append("g").attr("class","wardley-notes");m.notes.forEach((d)=>{let s=B(d.x),c=O(d.y);e.append("text").attr("x",s).attr("y",c).attr("text-anchor","start").attr("font-size",11).attr("fill",p.axisTextColor).attr("font-weight","bold").text(d.text)})}if(m.accelerators.length>0){let e=z.append("g").attr("class","wardley-accelerators");m.accelerators.forEach((d)=>{let s=B(d.x),c=O(d.y),f=60,g=30,w=20,y=`
|
|
1
|
+
import{G}from"./chunk-p1yc8hwn.js";import{t,a,ke,x,F,C,S,E,T,A,L,R,l,V,U}from"./chunk-e763h2px.js";import{Q}from"./chunk-xjc5fmcr.js";var ot=t((r,i)=>{let n=r<=1?r*100:r;if(n<0||n>100)throw Error(`${i} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${r}`);return n},"toPercent"),q=t((r,i,n)=>({x:ot(i,`${n} evolution`),y:ot(r,`${n} visibility`)}),"toCoordinates"),pt=t((r)=>{if(!r)return;if(r==="+<>")return"bidirectional";if(r==="+<")return"backward";if(r==="+>")return"forward";return},"getFlowFromPort"),Bt=t((r)=>{if(!r?.startsWith("+"))return{};let n=/^\+'([^']*)'/.exec(r)?.[1];if(r.includes("<>"))return{flow:"bidirectional",label:n};if(r.includes("<"))return{flow:"backward",label:n};if(r.includes(">"))return{flow:"forward",label:n};return{label:n}},"extractFlowFromArrow"),Ft=t((r,i)=>{if(G(r,i),r.size)i.setSize(r.size.width,r.size.height);if(r.evolution){let n=r.evolution.stages.map((o)=>{if(o.secondName)return`${o.name.trim()} / ${o.secondName.trim()}`;return o.name.trim()}),u=r.evolution.stages.filter((o)=>o.boundary!==void 0).map((o)=>o.boundary);i.updateAxes({stages:n,stageBoundaries:u})}if(r.anchors.forEach((n)=>{let u=q(n.visibility,n.evolution,`Anchor "${n.name}"`);i.addNode(n.name,n.name,u.x,u.y,"anchor")}),r.components.forEach((n)=>{let u=q(n.visibility,n.evolution,`Component "${n.name}"`),o=n.label?(n.label.negX?-1:1)*n.label.offsetX:void 0,p=n.label?(n.label.negY?-1:1)*n.label.offsetY:void 0,b=n.decorator?.strategy;i.addNode(n.name,n.name,u.x,u.y,"component",o,p,n.inertia,b)}),r.notes.forEach((n)=>{let u=q(n.visibility,n.evolution,`Note "${n.text}"`);i.addNote(n.text,u.x,u.y)}),r.pipelines.forEach((n)=>{let u=i.getNode(n.parent);if(!u||typeof u.y!=="number")throw Error(`Pipeline "${n.parent}" must reference an existing component with coordinates.`);let o=u.y;i.startPipeline(n.parent),n.components.forEach((p)=>{let b=`${n.parent}_${p.name}`,X=p.label?(p.label.negX?-1:1)*p.label.offsetX:void 0,m=p.label?(p.label.negY?-1:1)*p.label.offsetY:void 0,tt=ot(p.evolution,`Pipeline component "${p.name}" evolution`);i.addNode(b,p.name,tt,o,"pipeline-component",X,m),i.addPipelineComponent(n.parent,b)})}),r.links.forEach((n)=>{let u=!!n.arrow&&(n.arrow.includes("-.->")||n.arrow.includes(".-.")),o=pt(n.fromPort)??pt(n.toPort),{flow:p,label:b}=Bt(n.arrow);if(!o&&p)o=p;let X=n.linkLabel,m=b??X;i.addLink(i.resolveNodeId(n.from),i.resolveNodeId(n.to),u,m,o)}),r.evolves.forEach((n)=>{let u=i.getNode(n.component);if(u?.y!==void 0){let o=ot(n.target,`Evolve target for "${n.component}"`);i.addTrend(n.component,o,u.y)}}),r.annotations.length>0){let n=r.annotations[0],u=q(n.x,n.y,"Annotations box");i.setAnnotationsBox(u.x,u.y)}r.annotation.forEach((n)=>{let u=q(n.x,n.y,`Annotation ${n.number}`);i.addAnnotation(n.number,[{x:u.x,y:u.y}],n.text)}),r.accelerators.forEach((n)=>{let u=q(n.x,n.y,`Accelerator "${n.name}"`);i.addAccelerator(n.name,u.x,u.y)}),r.deaccelerators.forEach((n)=>{let u=q(n.x,n.y,`Deaccelerator "${n.name}"`);i.addDeaccelerator(n.name,u.x,u.y)})},"populateDb"),ht={parser:{yy:void 0},parse:t(async(r)=>{let i=await Q("wardley",r);a.debug(i);let n=ht.parser?.yy;if(!n||typeof n.addNode!=="function")throw Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Ft(i,n)},"parse")},Rt=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{t(this,"WardleyBuilder")}addNode(r){let i=this.nodes.get(r.id)??{id:r.id,label:r.label},n={...i,...r,className:r.className??i.className,labelOffsetX:r.labelOffsetX??i.labelOffsetX,labelOffsetY:r.labelOffsetY??i.labelOffsetY};this.nodes.set(r.id,n)}addLink(r){this.links.push(r)}addTrend(r){this.trends.set(r.nodeId,r)}startPipeline(r){this.pipelines.set(r,{nodeId:r,componentIds:[]});let i=this.nodes.get(r);if(i)i.isPipelineParent=!0}addPipelineComponent(r,i){let n=this.pipelines.get(r);if(n)n.componentIds.push(i);let u=this.nodes.get(i);if(u)u.inPipeline=!0}addAnnotation(r){this.annotations.push(r)}addNote(r){this.notes.push(r)}addAccelerator(r){this.accelerators.push(r)}addDeaccelerator(r){this.deaccelerators.push(r)}setAnnotationsBox(r,i){this.annotationsBox={x:r,y:i}}setAxes(r){this.axes={...this.axes,...r}}setSize(r,i){this.size={width:r,height:i}}getNode(r){return this.nodes.get(r)}resolveNodeId(r){if(this.nodes.has(r))return r;for(let[i,n]of this.nodes)if(n.label===r)return i;return r}build(){let r=[];for(let i of this.nodes.values()){if(typeof i.x!=="number"||typeof i.y!=="number")throw Error(`Node "${i.label}" is missing coordinates`);r.push(i)}return{nodes:r,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},P=new Rt;function ft(){return l()["wardley-beta"]}t(ft,"getConfig");function xt(r,i,n,u,o,p,b,X,m){P.addNode({id:r,label:i,x:n,y:u,className:o,labelOffsetX:p,labelOffsetY:b,inertia:X,sourceStrategy:m})}t(xt,"addNode");function gt(r,i,n=!1,u,o){P.addLink({source:r,target:i,dashed:n,label:u,flow:o})}t(gt,"addLink");function yt(r,i,n){P.addTrend({nodeId:r,targetX:i,targetY:n})}t(yt,"addTrend");function ut(r,i,n){P.addAnnotation({number:r,coordinates:i,text:n})}t(ut,"addAnnotation");function wt(r,i,n){P.addNote({text:r,x:i,y:n})}t(wt,"addNote");function mt(r,i,n){P.addAccelerator({name:r,x:i,y:n})}t(mt,"addAccelerator");function kt(r,i,n){P.addDeaccelerator({name:r,x:i,y:n})}t(kt,"addDeaccelerator");function bt(r,i){P.setAnnotationsBox(r,i)}t(bt,"setAnnotationsBox");function $t(r,i){P.setSize(r,i)}t($t,"setSize");function vt(r){P.startPipeline(r)}t(vt,"startPipeline");function Pt(r,i){P.addPipelineComponent(r,i)}t(Pt,"addPipelineComponent");function Ct(r){P.setAxes(r)}t(Ct,"updateAxes");function St(r){return P.getNode(r)}t(St,"getNode");function Mt(r){return P.resolveNodeId(r)}t(Mt,"resolveNodeId");function Nt(){return P.build()}t(Nt,"getWardleyData");function zt(){P.clear(),C()}t(zt,"clear");var Ot={getConfig:ft,addNode:xt,addLink:gt,addTrend:yt,addAnnotation:ut,addNote:wt,addAccelerator:mt,addDeaccelerator:kt,setAnnotationsBox:bt,setSize:$t,startPipeline:vt,addPipelineComponent:Pt,updateAxes:Ct,getNode:St,resolveNodeId:Mt,getWardleyData:Nt,clear:zt,setAccTitle:S,getAccTitle:E,setDiagramTitle:L,getDiagramTitle:R,getAccDescription:A,setAccDescription:T},Dt=["Genesis","Custom Built","Product","Commodity"],Gt=t(()=>{let{themeVariables:r}=l();return{backgroundColor:r.wardley?.backgroundColor??r.background??"#fff",axisColor:r.wardley?.axisColor??"#000",axisTextColor:r.wardley?.axisTextColor??r.primaryTextColor??"#222",gridColor:r.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:r.wardley?.componentFill??"#fff",componentStroke:r.wardley?.componentStroke??"#000",componentLabelColor:r.wardley?.componentLabelColor??r.primaryTextColor??"#222",linkStroke:r.wardley?.linkStroke??"#000",evolutionStroke:r.wardley?.evolutionStroke??"#dc3545",annotationStroke:r.wardley?.annotationStroke??"#000",annotationTextColor:r.wardley?.annotationTextColor??r.primaryTextColor??"#222",annotationFill:r.wardley?.annotationFill??r.background??"#fff"}},"getTheme"),qt=t(()=>{let r=l()["wardley-beta"];return{width:r?.width??900,height:r?.height??600,padding:r?.padding??48,nodeRadius:r?.nodeRadius??6,nodeLabelOffset:r?.nodeLabelOffset??8,axisFontSize:r?.axisFontSize??12,labelFontSize:r?.labelFontSize??10,showGrid:r?.showGrid??!1,useMaxWidth:r?.useMaxWidth??!0}},"getConfigValues"),jt=t((r,i,n,u)=>{a.debug(`Rendering Wardley map
|
|
2
|
+
`+r);let o=qt(),p=Gt(),b=o.nodeRadius*1.6,X=u.db,m=X.getWardleyData(),tt=X.getDiagramTitle(),H=m.size?.width??o.width,M=m.size?.height??o.height,_=V(i);_.selectAll("*").remove(),F(_,M,H,o.useMaxWidth),_.attr("viewBox",`0 0 ${H} ${M}`);let z=_.append("g").attr("class","wardley-map"),nt=_.append("defs");nt.append("marker").attr("id",`arrow-${i}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",p.evolutionStroke).attr("stroke","none"),nt.append("marker").attr("id",`link-arrow-end-${i}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",p.linkStroke).attr("stroke","none"),nt.append("marker").attr("id",`link-arrow-start-${i}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",p.linkStroke).attr("stroke","none"),z.append("rect").attr("class","wardley-background").attr("width",H).attr("height",M).attr("fill",p.backgroundColor);let Z=H-o.padding*2,J=M-o.padding*2;if(tt)z.append("text").attr("class","wardley-title").attr("x",H/2).attr("y",o.padding/2).attr("fill",p.axisTextColor).attr("font-size",o.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(tt);let B=t((e)=>o.padding+e/100*Z,"projectX"),O=t((e)=>M-o.padding-e/100*J,"projectY"),et=z.append("g").attr("class","wardley-axes");et.append("line").attr("x1",o.padding).attr("x2",H-o.padding).attr("y1",M-o.padding).attr("y2",M-o.padding).attr("stroke",p.axisColor).attr("stroke-width",1),et.append("line").attr("x1",o.padding).attr("x2",o.padding).attr("y1",o.padding).attr("y2",M-o.padding).attr("stroke",p.axisColor).attr("stroke-width",1);let Lt=m.axes.xLabel??"Evolution",Tt=m.axes.yLabel??"Visibility";et.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",o.padding+Z/2).attr("y",M-o.padding/4).attr("fill",p.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(Lt),et.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",o.padding/3).attr("y",o.padding+J/2).attr("fill",p.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${o.padding/3} ${o.padding+J/2})`).text(Tt);let K=m.axes.stages&&m.axes.stages.length>0?m.axes.stages:Dt;if(K.length>0){let e=z.append("g").attr("class","wardley-stages"),d=m.axes.stageBoundaries,s=[];if(d&&d.length===K.length){let c=0;d.forEach((f)=>{s.push({start:c,end:f}),c=f})}else{let c=1/K.length;K.forEach((f,g)=>{s.push({start:g*c,end:(g+1)*c})})}K.forEach((c,f)=>{let g=s[f],w=o.padding+g.start*Z,y=o.padding+g.end*Z,k=(w+y)/2;if(f>0)e.append("line").attr("x1",w).attr("x2",w).attr("y1",o.padding).attr("y2",M-o.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",0.8);e.append("text").attr("class","wardley-stage-label").attr("x",k).attr("y",M-o.padding/1.5).attr("fill",p.axisTextColor).attr("font-size",o.axisFontSize-2).attr("text-anchor","middle").text(c)})}if(o.showGrid){let e=z.append("g").attr("class","wardley-grid");for(let d=1;d<4;d++){let s=d/4,c=o.padding+Z*s;e.append("line").attr("x1",c).attr("x2",c).attr("y1",o.padding).attr("y2",M-o.padding).attr("stroke",p.gridColor).attr("stroke-dasharray","2 6"),e.append("line").attr("x1",o.padding).attr("x2",H-o.padding).attr("y1",M-o.padding-J*s).attr("y2",M-o.padding-J*s).attr("stroke",p.gridColor).attr("stroke-dasharray","2 6")}}let h=new Map;if(m.nodes.forEach((e)=>{h.set(e.id,{x:B(e.x),y:O(e.y),node:e})}),m.pipelines.length>0){let e=z.append("g").attr("class","wardley-pipelines"),d=z.append("g").attr("class","wardley-pipeline-links");m.pipelines.forEach((s)=>{if(s.componentIds.length===0)return;let c=s.componentIds.map((y)=>({id:y,pos:h.get(y),node:m.nodes.find((k)=>k.id===y)})).filter((y)=>y.pos&&y.node).sort((y,k)=>y.node.x-k.node.x);for(let y=0;y<c.length-1;y++){let k=c[y],v=c[y+1];d.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",k.pos.x).attr("y1",k.pos.y).attr("x2",v.pos.x).attr("y2",v.pos.y).attr("stroke",p.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let f=1/0,g=-1/0,w=0;if(s.componentIds.forEach((y)=>{let k=h.get(y);if(k)f=Math.min(f,k.x),g=Math.max(g,k.x),w=k.y}),f!==1/0&&g!==-1/0){let k=o.nodeRadius*4,v=w-k/2,W=h.get(s.nodeId);if(W){let I=(f+g)/2;W.x=I,W.y=v-b/6}e.append("rect").attr("class","wardley-pipeline-box").attr("x",f-15).attr("y",v).attr("width",g-f+30).attr("height",k).attr("fill","none").attr("stroke",p.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}let dt=z.append("g").attr("class","wardley-links"),lt=new Map;m.pipelines.forEach((e)=>{lt.set(e.nodeId,new Set(e.componentIds))});let ct=m.links.filter((e)=>{if(!h.has(e.source)||!h.has(e.target))return!1;if(lt.get(e.target)?.has(e.source))return!1;return!0});dt.selectAll("line").data(ct).enter().append("line").attr("class",(e)=>`wardley-link${e.dashed?" wardley-link--dashed":""}`).attr("x1",(e)=>{let d=h.get(e.source),s=h.get(e.target),f=m.nodes.find((k)=>k.id===e.source).isPipelineParent?b/Math.sqrt(2):o.nodeRadius,g=s.x-d.x,w=s.y-d.y,y=Math.sqrt(g*g+w*w);return d.x+g/y*f}).attr("y1",(e)=>{let d=h.get(e.source),s=h.get(e.target),f=m.nodes.find((k)=>k.id===e.source).isPipelineParent?b/Math.sqrt(2):o.nodeRadius,g=s.x-d.x,w=s.y-d.y,y=Math.sqrt(g*g+w*w);return d.y+w/y*f}).attr("x2",(e)=>{let d=h.get(e.source),s=h.get(e.target),f=m.nodes.find((k)=>k.id===e.target).isPipelineParent?b/Math.sqrt(2):o.nodeRadius,g=d.x-s.x,w=d.y-s.y,y=Math.sqrt(g*g+w*w);return s.x+g/y*f}).attr("y2",(e)=>{let d=h.get(e.source),s=h.get(e.target),f=m.nodes.find((k)=>k.id===e.target).isPipelineParent?b/Math.sqrt(2):o.nodeRadius,g=d.x-s.x,w=d.y-s.y,y=Math.sqrt(g*g+w*w);return s.y+w/y*f}).attr("stroke",p.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",(e)=>e.dashed?"6 6":null).attr("marker-end",(e)=>{if(e.flow==="forward"||e.flow==="bidirectional")return`url(#link-arrow-end-${i})`;return null}).attr("marker-start",(e)=>{if(e.flow==="backward"||e.flow==="bidirectional")return`url(#link-arrow-start-${i})`;return null}),dt.selectAll("text").data(ct.filter((e)=>e.label)).enter().append("text").attr("class","wardley-link-label").attr("x",(e)=>{let d=h.get(e.source),s=h.get(e.target),c=(d.x+s.x)/2,f=s.y-d.y,g=s.x-d.x,w=Math.sqrt(g*g+f*f),y=8,k=f/w;return c+k*8}).attr("y",(e)=>{let d=h.get(e.source),s=h.get(e.target),c=(d.y+s.y)/2,f=s.x-d.x,g=s.y-d.y,w=Math.sqrt(f*f+g*g),y=8,k=-f/w;return c+k*8}).attr("fill",p.axisTextColor).attr("font-size",o.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",(e)=>{let d=h.get(e.source),s=h.get(e.target),c=(d.x+s.x)/2,f=(d.y+s.y)/2,g=s.x-d.x,w=s.y-d.y,y=Math.sqrt(g*g+w*w),k=8,v=w/y,W=-g/y,I=c+v*8,at=f+W*8,j=Math.atan2(w,g)*180/Math.PI;if(j>90||j<-90)j+=180;return`rotate(${j} ${I} ${at})`}).text((e)=>e.label);let Wt=z.append("g").attr("class","wardley-trends"),At=m.trends.map((e)=>{let d=h.get(e.nodeId);if(!d)return null;let s=B(e.targetX),c=O(e.targetY),f=s-d.x,g=c-d.y,w=Math.sqrt(f*f+g*g),y=o.nodeRadius+2,k=w>y?s-f/w*y:s,v=w>y?c-g/w*y:c;return{origin:d,targetX:s,targetY:c,adjustedX2:k,adjustedY2:v}}).filter((e)=>e!==null);Wt.selectAll("line").data(At).enter().append("line").attr("class","wardley-trend").attr("x1",(e)=>e.origin.x).attr("y1",(e)=>e.origin.y).attr("x2",(e)=>e.adjustedX2).attr("y2",(e)=>e.adjustedY2).attr("stroke",p.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${i})`);let Y=z.append("g").attr("class","wardley-nodes").selectAll("g").data(m.nodes).enter().append("g").attr("class",(e)=>["wardley-node",e.className?`wardley-node--${e.className}`:""].filter(Boolean).join(" "));Y.filter((e)=>e.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius*2).attr("fill","#666").attr("stroke",p.componentStroke).attr("stroke-width",1),Y.filter((e)=>e.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius*2).attr("fill","#ccc").attr("stroke",p.componentStroke).attr("stroke-width",1),Y.filter((e)=>e.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);let D=Y.filter((e)=>e.sourceStrategy==="market");D.append("circle").attr("class","wardley-market-overlay").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius*2).attr("fill","white").attr("stroke",p.componentStroke).attr("stroke-width",1),Y.filter((e)=>!e.isPipelineParent&&e.sourceStrategy!=="market"&&e.className!=="anchor").append("circle").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y).attr("r",o.nodeRadius).attr("fill",p.componentFill).attr("stroke",p.componentStroke).attr("stroke-width",1);let st=o.nodeRadius*0.7,N=o.nodeRadius*1.2;if(D.append("line").attr("class","wardley-market-line").attr("x1",(e)=>h.get(e.id).x).attr("y1",(e)=>h.get(e.id).y-N).attr("x2",(e)=>h.get(e.id).x-N*Math.cos(Math.PI/6)).attr("y2",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("stroke",p.componentStroke).attr("stroke-width",1),D.append("line").attr("class","wardley-market-line").attr("x1",(e)=>h.get(e.id).x-N*Math.cos(Math.PI/6)).attr("y1",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("x2",(e)=>h.get(e.id).x+N*Math.cos(Math.PI/6)).attr("y2",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("stroke",p.componentStroke).attr("stroke-width",1),D.append("line").attr("class","wardley-market-line").attr("x1",(e)=>h.get(e.id).x+N*Math.cos(Math.PI/6)).attr("y1",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("x2",(e)=>h.get(e.id).x).attr("y2",(e)=>h.get(e.id).y-N).attr("stroke",p.componentStroke).attr("stroke-width",1),D.append("circle").attr("class","wardley-market-dot").attr("cx",(e)=>h.get(e.id).x).attr("cy",(e)=>h.get(e.id).y-N).attr("r",st).attr("fill","white").attr("stroke",p.componentStroke).attr("stroke-width",2),D.append("circle").attr("class","wardley-market-dot").attr("cx",(e)=>h.get(e.id).x-N*Math.cos(Math.PI/6)).attr("cy",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("r",st).attr("fill","white").attr("stroke",p.componentStroke).attr("stroke-width",2),D.append("circle").attr("class","wardley-market-dot").attr("cx",(e)=>h.get(e.id).x+N*Math.cos(Math.PI/6)).attr("cy",(e)=>h.get(e.id).y+N*Math.sin(Math.PI/6)).attr("r",st).attr("fill","white").attr("stroke",p.componentStroke).attr("stroke-width",2),Y.filter((e)=>e.isPipelineParent===!0).append("rect").attr("x",(e)=>h.get(e.id).x-b/2).attr("y",(e)=>h.get(e.id).y-b/2).attr("width",b).attr("height",b).attr("fill",p.componentFill).attr("stroke",p.componentStroke).attr("stroke-width",1),Y.filter((e)=>e.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",(e)=>{let d=h.get(e.id),s=e.isPipelineParent?b/2+15:o.nodeRadius+15;if(e.sourceStrategy)s+=o.nodeRadius+10;return d.x+s}).attr("y1",(e)=>{let d=h.get(e.id),s=e.isPipelineParent?b:o.nodeRadius*2;return d.y-s/2}).attr("x2",(e)=>{let d=h.get(e.id),s=e.isPipelineParent?b/2+15:o.nodeRadius+15;if(e.sourceStrategy)s+=o.nodeRadius+10;return d.x+s}).attr("y2",(e)=>{let d=h.get(e.id),s=e.isPipelineParent?b:o.nodeRadius*2;return d.y+s/2}).attr("stroke",p.componentStroke).attr("stroke-width",6),Y.append("text").attr("x",(e)=>{let d=h.get(e.id);if(e.className==="anchor")return e.labelOffsetX!==void 0?d.x+e.labelOffsetX:d.x;let s=o.nodeLabelOffset;if(e.sourceStrategy&&e.labelOffsetX===void 0)s+=10;let c=e.labelOffsetX??s;return d.x+c}).attr("y",(e)=>{let d=h.get(e.id);if(e.className==="anchor")return e.labelOffsetY!==void 0?d.y+e.labelOffsetY:d.y-3;let s=-o.nodeLabelOffset;if(e.sourceStrategy&&e.labelOffsetY===void 0)s-=10;let c=e.labelOffsetY??s;return d.y+c}).attr("class","wardley-node-label").attr("fill",(e)=>{if(e.className==="evolved")return p.evolutionStroke;if(e.className==="anchor")return"#000";return p.componentLabelColor}).attr("font-size",o.labelFontSize).attr("font-weight",(e)=>e.className==="anchor"?"bold":"normal").attr("text-anchor",(e)=>e.className==="anchor"?"middle":"start").attr("dominant-baseline",(e)=>e.className==="anchor"?"middle":"auto").text((e)=>e.label),m.annotations.length>0){let e=z.append("g").attr("class","wardley-annotations");if(m.annotations.forEach((d)=>{let s=d.coordinates.map((c)=>({x:B(c.x),y:O(c.y)}));if(s.length>1)for(let c=0;c<s.length-1;c++)e.append("line").attr("class","wardley-annotation-line").attr("x1",s[c].x).attr("y1",s[c].y).attr("x2",s[c+1].x).attr("y2",s[c+1].y).attr("stroke",p.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");s.forEach((c)=>{let f=e.append("g").attr("class","wardley-annotation");f.append("circle").attr("cx",c.x).attr("cy",c.y).attr("r",10).attr("fill","white").attr("stroke",p.axisColor).attr("stroke-width",1.5),f.append("text").attr("x",c.x).attr("y",c.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",p.axisTextColor).attr("font-weight","bold").text(d.number)})}),m.annotationsBox){let d=B(m.annotationsBox.x),s=O(m.annotationsBox.y),c=10,f=16,g=11,w=e.append("g").attr("class","wardley-annotations-box"),y=[...m.annotations].filter((v)=>v.text).sort((v,W)=>v.number-W.number),k=[];if(y.forEach((v,W)=>{let I=w.append("text").attr("x",d+c).attr("y",s+c+(W+1)*f).attr("font-size",g).attr("fill",p.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${v.number}. ${v.text}`);k.push(I)}),k.length>0){let v=0,W=0;k.forEach((it)=>{let rt=it.node(),Yt=rt.getComputedTextLength();v=Math.max(v,Yt);let It=rt.getBBox();W=Math.max(W,It.height)});let I=v+c*2+105,at=y.length*f+c*2+W/2,j=o.padding,Xt=H-o.padding-I,Et=o.padding,Ht=M-o.padding-at;d=Math.max(j,Math.min(d,Xt)),s=Math.max(Et,Math.min(s,Ht)),k.forEach((it,rt)=>{it.attr("x",d+c).attr("y",s+c+(rt+1)*f)}),w.insert("rect","text").attr("x",d).attr("y",s).attr("width",I).attr("height",at).attr("fill","white").attr("stroke",p.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(m.notes.length>0){let e=z.append("g").attr("class","wardley-notes");m.notes.forEach((d)=>{let s=B(d.x),c=O(d.y);e.append("text").attr("x",s).attr("y",c).attr("text-anchor","start").attr("font-size",11).attr("fill",p.axisTextColor).attr("font-weight","bold").text(d.text)})}if(m.accelerators.length>0){let e=z.append("g").attr("class","wardley-accelerators");m.accelerators.forEach((d)=>{let s=B(d.x),c=O(d.y),f=60,g=30,w=20,y=`
|
|
3
3
|
M ${s} ${c-15}
|
|
4
4
|
L ${s+60-20} ${c-15}
|
|
5
5
|
L ${s+60-20} ${c-15-8}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{G}from"./chunk-
|
|
1
|
+
import{G}from"./chunk-p1yc8hwn.js";import{t,a,ke,M,x,F,C,S,E,T,A,L,R,V,U}from"./chunk-e763h2px.js";import{Q}from"./chunk-xjc5fmcr.js";var ht=t(()=>({domains:new Map,transitions:[]}),"createDefaultData"),ot=ht(),St=t(()=>ot.domains,"getDomains"),Mt=t(()=>ot.transitions,"getTransitions"),zt=t((e)=>{if(!e)return;for(let n of e){let o=n.domain,r=(n.items??[]).map((l)=>({label:l.label}));ot.domains.set(o,{name:o,items:r})}},"setDomains"),Lt=t((e)=>{if(!e)return;ot.transitions=e.filter((n)=>{if(n.from===n.to)return a.warn(`Cynefin: self-loop transition on domain "${n.from}" is not meaningful and will be skipped.`),!1;return!0}).map((n)=>({from:n.from,to:n.to,label:n.label||void 0}))},"setTransitions"),Nt=t(()=>U({...M.cynefin,...x().cynefin}),"getConfig"),Pt=t(()=>{C(),ot=ht()},"clear"),it={getDomains:St,getTransitions:Mt,setDomains:zt,setTransitions:Lt,getConfig:Nt,clear:Pt,setAccTitle:S,getAccTitle:E,setDiagramTitle:L,getDiagramTitle:R,getAccDescription:A,setAccDescription:T},It=t((e)=>{G(e,it),it.setDomains(e.domains),it.setTransitions(e.transitions)},"populate"),Wt={parse:t(async(e)=>{let n=await Q("cynefin",e);a.debug(n),It(n)},"parse")};function nt(e){let n=e+1831565813|0;return n=Math.imul(n^n>>>15,n|1),n^=n+Math.imul(n^n>>>7,n|61),((n^n>>>14)>>>0)/4294967296}t(nt,"seededRandom");function xt(e){let n=0;for(let o=0;o<e.length;o++){let r=e.charCodeAt(o);n=(n<<5)-n+r,n|=0}return n}t(xt,"hashString");function $t(e,n){if(typeof e==="number"&&Number.isFinite(e)&&e!==0)return e;return xt(n)}t($t,"resolveSeed");function bt(e,n,o,r){let l=e/2,p=r??e*0.015,at=7,Z=n/7,f=[];for(let i=0;i<=7;i++){let y=nt(o+i*17)*p*2-p;f.push({x:l+y,y:i*Z})}let z=`M${f[0].x},${f[0].y}`;for(let i=0;i<f.length-1;i++){let y=f[i],c=f[i+1],m=(y.y+c.y)/2,D=i%2===0?1:-1,h=p*1.5*D*nt(o+i*31+7),J=y.x+h,K=m,tt=c.x-h;z+=` C${J},${K} ${tt},${m} ${c.x},${c.y}`}return z}t(bt,"generateFoldPath");function wt(e,n,o,r){let l=n/2,p=r??n*0.015,at=7,Z=e/7,f=[];for(let i=0;i<=7;i++){let y=nt(o+i*23)*p*2-p;f.push({x:i*Z,y:l+y})}let z=`M${f[0].x},${f[0].y}`;for(let i=0;i<f.length-1;i++){let y=f[i],c=f[i+1],m=(y.x+c.x)/2,D=i%2===0?1:-1,h=p*1.5*D*nt(o+i*37+11),J=m,K=y.y+h,tt=m,Y=c.y-h;z+=` C${J},${K} ${tt},${Y} ${c.x},${c.y}`}return z}t(wt,"generateHorizontalBoundary");function Ct(e,n){let o=e/2,r=n*0.5,l=n,p=e*0.03;return[`M${o},${r}`,`C${o+p},${r+(l-r)*0.2}`,`${o-p*1.5},${r+(l-r)*0.55}`,`${o+p*0.5},${r+(l-r)*0.75}`,`C${o-p},${r+(l-r)*0.85}`,`${o+p*0.3},${r+(l-r)*0.95}`,`${o},${l}`].join(" ")}t(Ct,"generateCliffPath");function vt(e,n,o,r){return[`M${e-o},${n}`,`A${o},${r} 0 1,1 ${e+o},${n}`,`A${o},${r} 0 1,1 ${e-o},${n}`,"Z"].join(" ")}t(vt,"generateConfusionPath");var gt={complex:{model:"Probe → Sense → Respond",practice:"Emergent Practices"},complicated:{model:"Sense → Analyse → Respond",practice:"Good Practices"},clear:{model:"Sense → Categorise → Respond",practice:"Best Practices"},chaotic:{model:"Act → Sense → Respond",practice:"Novel Practices"},confusion:{model:"",practice:"Disorder"}},Rt=t((e,n)=>{let o=e/2,r=n/2;return{complex:{cx:o/2,cy:r/2,x:0,y:0,w:o,h:r},complicated:{cx:o+o/2,cy:r/2,x:o,y:0,w:o,h:r},chaotic:{cx:o/2,cy:r+r/2,x:0,y:r,w:o,h:r},clear:{cx:o+o/2,cy:r+r/2,x:o,y:r,w:o,h:r},confusion:{cx:o,cy:r,x:o*0.7,y:r*0.7,w:o*0.6,h:r*0.6}}},"getDomainLayouts"),Ft=t(()=>{let e=ke(),n=x();return U(e,n.themeVariables).cynefin},"getCynefinDomainColors"),lt=3,Vt=t((e,n,o,r)=>{let l=r.db,p=l.getDomains(),at=l.getTransitions(),Z=l.getDiagramTitle(),f=l.getAccTitle(),z=l.getAccDescription(),i=l.getConfig(),y=Ft();a.debug("Rendering Cynefin diagram");let{width:c,height:m,padding:D,showDomainDescriptions:h,boundaryAmplitude:J}=i,K=c+D*2,tt=m+D*2,Y={complex:y.complexBg,complicated:y.complicatedBg,clear:y.clearBg,chaotic:y.chaoticBg,confusion:y.confusionBg},N=V(n);if(F(N,tt,K,i.useMaxWidth??!0),N.attr("viewBox",`0 0 ${K} ${tt}`),f)N.append("title").text(f);if(z)N.append("desc").text(z);let P=N.append("g").attr("transform",`translate(${D}, ${D})`),et=Rt(c,m),dt=$t(i.seed,n),Dt=P.append("g").attr("class","cynefin-backgrounds"),st=["complex","complicated","chaotic","clear"];for(let d of st){let s=et[d];Dt.append("rect").attr("class","cynefinDomain").attr("x",s.x).attr("y",s.y).attr("width",s.w).attr("height",s.h).attr("fill",Y[d]).attr("fill-opacity",0.4).attr("stroke","none")}let ct=P.append("g").attr("class","cynefin-boundaries");ct.append("path").attr("class","cynefinBoundary").attr("d",bt(c,m,dt,J)).attr("fill","none"),ct.append("path").attr("class","cynefinBoundary").attr("d",wt(c,m,dt+100,J)).attr("fill","none"),ct.append("path").attr("class","cynefinCliff").attr("d",Ct(c,m)).attr("fill","none");let kt=c*0.15,Tt=m*0.15;P.append("path").attr("class","cynefinConfusion").attr("d",vt(c/2,m/2,kt,Tt)).attr("fill",Y.confusion).attr("fill-opacity",0.5);let ft=P.append("g").attr("class","cynefin-labels");for(let d of st){let s=et[d];ft.append("text").attr("class","cynefinDomainLabel").attr("x",s.cx).attr("y",h?s.cy-30:s.cy).attr("text-anchor","middle").attr("dominant-baseline","middle").text(d.charAt(0).toUpperCase()+d.slice(1))}if(ft.append("text").attr("class","cynefinDomainLabel").attr("x",c/2).attr("y",h?m/2-10:m/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text("Confusion"),h){let d=P.append("g").attr("class","cynefin-subtitles");for(let s of st){let g=et[s],u=gt[s];d.append("text").attr("class","cynefinSubtitle").attr("x",g.cx).attr("y",g.cy-10).attr("text-anchor","middle").attr("dominant-baseline","middle").text(u.model),d.append("text").attr("class","cynefinSubtitle").attr("x",g.cx).attr("y",g.cy+5).attr("text-anchor","middle").attr("dominant-baseline","middle").text(u.practice)}d.append("text").attr("class","cynefinSubtitle").attr("x",c/2).attr("y",m/2+8).attr("text-anchor","middle").attr("dominant-baseline","middle").text(gt.confusion.practice)}let mt=P.append("g").attr("class","cynefin-items"),I=26,pt=10,At=["complex","complicated","chaotic","clear","confusion"];for(let d of At){let s=p.get(d);if(!s||s.items.length===0)continue;let g=et[d],u=d==="confusion",O=s.items,X=0;if(u&&s.items.length>lt)X=s.items.length-lt,O=s.items.slice(0,lt);let W;if(u){let w=h?22:14;W=g.cy+w}else W=g.cy+(h?25:15);if([...O].forEach((w,_)=>{let k=W+_*(I+4),H=mt.append("g"),j=H.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",I/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(w.label),v=w.label.length*7,b=j.node();if(b&&typeof b.getBBox==="function"){let rt=b.getBBox();if(rt.width>0)v=rt.width}let B=v+pt*2,q=g.cx-B/2;H.attr("transform",`translate(${q}, ${k})`),H.insert("rect","text").attr("class","cynefinItem").attr("x",0).attr("y",0).attr("width",B).attr("height",I).attr("rx",4).attr("ry",4).attr("fill",Y[d]).attr("fill-opacity",0.95),j.attr("x",B/2).attr("y",I/2)}),X>0){let w=W+O.length*(I+4),_=`+${X} more`,k=mt.append("g"),H=k.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",I/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(_),j=_.length*7,v=H.node();if(v&&typeof v.getBBox==="function"){let q=v.getBBox();if(q.width>0)j=q.width}let b=j+pt*2,B=g.cx-b/2;k.attr("transform",`translate(${B}, ${w})`),k.insert("rect","text").attr("class","cynefinItemOverflow").attr("x",0).attr("y",0).attr("width",b).attr("height",I).attr("rx",4).attr("ry",4).attr("fill",Y[d]).attr("fill-opacity",0.6),H.attr("x",b/2).attr("y",I/2)}}if(at.length>0){let d=N.select("defs").empty()?N.append("defs"):N.select("defs"),s=`cynefin-arrow-${n}`;d.append("marker").attr("id",s).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","cynefinArrowHead");let g=P.append("g").attr("class","cynefin-arrows");at.forEach((u)=>{let O=et[u.from],X=et[u.to];if(!O||!X)return;if(u.from===u.to){a.warn(`Cynefin renderer: skipping self-loop on domain "${u.from}"`);return}let{cx:W,cy:w}=O,{cx:_,cy:k}=X,H=(W+_)/2,j=(w+k)/2,v=_-W,b=k-w,B=Math.sqrt(v*v+b*b),q=B*0.15,rt=-b/B,Bt=v/B,yt=H+rt*q,ut=j+Bt*q;if(g.append("path").attr("class","cynefinArrowLine").attr("d",`M${W},${w} Q${yt},${ut} ${_},${k}`).attr("fill","none").attr("marker-end",`url(#${s})`),u.label)g.append("text").attr("class","cynefinArrowLabel").attr("x",yt).attr("y",ut-6).attr("text-anchor","middle").attr("dominant-baseline","auto").text(u.label)})}if(Z)P.append("text").attr("class","cynefinTitle").attr("x",c/2).attr("y",-D/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text(Z)},"draw"),_t={draw:Vt},Et=t(()=>{let e=ke(),n=x();return U(e,n.themeVariables).cynefin},"getCynefinTheme"),Ht=t(()=>{let e=Et();return`
|
|
2
2
|
.cynefinDomain {
|
|
3
3
|
stroke: none;
|
|
4
4
|
}
|