@oneworks/client 0.1.0-beta.1 → 0.1.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/dist/assets/{ActionSearchToolbar-BqRwfUQY.js → ActionSearchToolbar-DEGf2jhC.js} +1 -1
  2. package/dist/assets/{AgentRoomRoute-BYgM7vgg.js → AgentRoomRoute-q3zS46Sd.js} +1 -1
  3. package/dist/assets/{AgentRoomSessionRoute-DdoZY7qL.js → AgentRoomSessionRoute-DjPxv7X5.js} +1 -1
  4. package/dist/assets/{ArchiveRoute-ydgLUN7p.js → ArchiveRoute-CLIn3VrK.js} +1 -1
  5. package/dist/assets/{AuthenticatedApp-CK9TT7Nk.js → AuthenticatedApp-CjqSg3Fe.js} +5 -5
  6. package/dist/assets/{AutomationRoute-CpcRbNa8.js → AutomationRoute-BUkrePKH.js} +1 -1
  7. package/dist/assets/{BenchmarkRoute-CZRZVolT.js → BenchmarkRoute-CuO0hJBU.js} +1 -1
  8. package/dist/assets/{ChatRoute-DdRVEkAb.js → ChatRoute-Du5zkaQU.js} +1 -1
  9. package/dist/assets/{Collapse-CxTS9FJh.js → Collapse-v6rPK_Og.js} +1 -1
  10. package/dist/assets/{ComposerLanding-BChGuCjF.js → ComposerLanding-Yr0ydPHI.js} +1 -1
  11. package/dist/assets/{ConfigRoute-D_EkHryB.js → ConfigRoute-C3uzNXG_.js} +1 -1
  12. package/dist/assets/{InteractionStructureRoute-Dpjr6hIq.js → InteractionStructureRoute-Db6Csunn.js} +1 -1
  13. package/dist/assets/{KnowledgeRoute-Bp4Da65A.js → KnowledgeRoute-qqkXU5WL.js} +1 -1
  14. package/dist/assets/{LauncherApp-ByUpDwod.js → LauncherApp-Qvdl-Yj8.js} +2 -2
  15. package/dist/assets/{LauncherRoute-B94P9m3I.js → LauncherRoute-DZWkoiJw.js} +1 -1
  16. package/dist/assets/{MobileAwareSelect-CCAQrsxL.js → MobileAwareSelect-C3a67aGF.js} +1 -1
  17. package/dist/assets/{ModuleManagementRoute-DcrMX6P7.js → ModuleManagementRoute-Cy4wuohf.js} +1 -1
  18. package/dist/assets/{NotFoundRoute-C1IfsiZY.js → NotFoundRoute-ChcyVvqJ.js} +1 -1
  19. package/dist/assets/{PluginStoreRoute-7UBLkrWc.js → PluginStoreRoute-DdiK4aa2.js} +1 -1
  20. package/dist/assets/{RouteContainerPanelTabs-D8pC61tF.js → RouteContainerPanelTabs-jxh2d8jI.js} +1 -1
  21. package/dist/assets/{SchemaObjectEditor-DvwrURac.js → SchemaObjectEditor-COAQ7p3E.js} +1 -1
  22. package/dist/assets/{StandaloneMobileDebugRoute--yiQ5EdW.js → StandaloneMobileDebugRoute-CB3AJiyj.js} +1 -1
  23. package/dist/assets/StandaloneMobileDebugRoute-Cz0tNyI6.css +1 -0
  24. package/dist/assets/{WorkspaceApp-l-h_IsMp.js → WorkspaceApp-CokR7Tpr.js} +3 -3
  25. package/dist/assets/{agent-room-session-paths-DNpYqOr3.js → agent-room-session-paths-CDJw-DoF.js} +3 -3
  26. package/dist/assets/{arc-Xh4h56Fv.js → arc-f6ab2s7J.js} +1 -1
  27. package/dist/assets/{blockDiagram-c4efeb88-CG3HxYeL.js → blockDiagram-c4efeb88-DuND8Id_.js} +1 -1
  28. package/dist/assets/{c4Diagram-c83219d4-DiEPAqCg.js → c4Diagram-c83219d4-CrENVa9z.js} +1 -1
  29. package/dist/assets/channel-CE7hI28G.js +1 -0
  30. package/dist/assets/{classDiagram-beda092f-Dwx44PuJ.js → classDiagram-beda092f-DLPG6RB7.js} +1 -1
  31. package/dist/assets/{classDiagram-v2-2358418a-COXM437u.js → classDiagram-v2-2358418a-BKv3EDtT.js} +1 -1
  32. package/dist/assets/client-build-info-tgdsIlyX.js +1 -0
  33. package/dist/assets/clone-Ddl6jS9o.js +1 -0
  34. package/dist/assets/{createText-1719965b-DPLMqVqY.js → createText-1719965b-NwleWdyg.js} +1 -1
  35. package/dist/assets/{cssMode-DfDq4hLs.js → cssMode-ww9pyNNv.js} +1 -1
  36. package/dist/assets/{dockPanelConstants-OzU6hJl5.js → dockPanelConstants-CW3M3t4v.js} +1 -1
  37. package/dist/assets/{edges-96097737-ry9ejc8v.js → edges-96097737-D8fX9hn5.js} +1 -1
  38. package/dist/assets/{erDiagram-0228fc6a-AcCPz3wc.js → erDiagram-0228fc6a-HDOuPZk2.js} +1 -1
  39. package/dist/assets/{flowDb-c6c81e3f-BGnBxhJf.js → flowDb-c6c81e3f-CnExuc5d.js} +1 -1
  40. package/dist/assets/{flowDiagram-50d868cf-BnS6RFWo.js → flowDiagram-50d868cf-DZV01cOD.js} +1 -1
  41. package/dist/assets/flowDiagram-v2-4f6560a1-Tygi-b2q.js +1 -0
  42. package/dist/assets/{flowchart-elk-definition-6af322e1-8-ynORZL.js → flowchart-elk-definition-6af322e1-rMtb8Q3Q.js} +1 -1
  43. package/dist/assets/{freemarker2-uFZBYLEW.js → freemarker2-CtQwsBbf.js} +1 -1
  44. package/dist/assets/{ganttDiagram-a2739b55-3MEPfmMB.js → ganttDiagram-a2739b55-BPZWVVUB.js} +1 -1
  45. package/dist/assets/{gitGraphDiagram-82fe8481-BKYGV9pb.js → gitGraphDiagram-82fe8481-DF7pLuMJ.js} +1 -1
  46. package/dist/assets/{graph-BEwlNa_j.js → graph-DKmOtEDg.js} +1 -1
  47. package/dist/assets/{handlebars-dg6IZCa7.js → handlebars-nX8yIw3l.js} +1 -1
  48. package/dist/assets/{html-KunL9NkW.js → html-CbuZuRXh.js} +1 -1
  49. package/dist/assets/{htmlMode-CrFpTEpC.js → htmlMode-CJH80z5n.js} +1 -1
  50. package/dist/assets/{index-5325376f-CCcP_Ahl.js → index-5325376f-DEHuhQF_.js} +1 -1
  51. package/dist/assets/{index-nXq6jwfM.js → index-CPxqxItX.js} +1 -1
  52. package/dist/assets/{index-YzfSzOLk.js → index-CqhgNUy-.js} +1 -1
  53. package/dist/assets/{index-BggFUwYR.js → index-DOj3DlsY.js} +1 -1
  54. package/dist/assets/{index-DdUqPqXW.js → index-DgZk1SFp.js} +27 -27
  55. package/dist/assets/{index-DhpAFZQZ.js → index-DnQoX9ZY.js} +1 -1
  56. package/dist/assets/{index-BIs5hzci.js → index-JwN0oF3c.js} +1 -1
  57. package/dist/assets/{index-ZOsqqPVv.js → index-aZ1QdVqZ.js} +1 -1
  58. package/dist/assets/{infoDiagram-8eee0895-BzZ34kgw.js → infoDiagram-8eee0895-CZD8lkRQ.js} +1 -1
  59. package/dist/assets/interaction-panel-mobile-debug-pages-Bu5Kh4-Z.css +1 -0
  60. package/dist/assets/interaction-panel-mobile-debug-pages-CT5eb8Gd.js +171 -0
  61. package/dist/assets/{javascript-DA3fh3oR.js → javascript-CxKLYDBQ.js} +1 -1
  62. package/dist/assets/{journeyDiagram-c64418c1-B_kSGErn.js → journeyDiagram-c64418c1-BMaEeakR.js} +1 -1
  63. package/dist/assets/{jsonMode-BDucSIBv.js → jsonMode-DIC-5Lwr.js} +1 -1
  64. package/dist/assets/{layout-CRLM1T9z.js → layout-Q0dn6j1W.js} +1 -1
  65. package/dist/assets/{line-Cdyr_7ve.js → line-BqB1JWak.js} +1 -1
  66. package/dist/assets/{linear-y86GycLK.js → linear-VTwyGoCc.js} +1 -1
  67. package/dist/assets/{liquid-mJp997il.js → liquid-DNvVNW0k.js} +1 -1
  68. package/dist/assets/{lspLanguageFeatures-DiGGmudW.js → lspLanguageFeatures-DeOzllRF.js} +1 -1
  69. package/dist/assets/{mdx-Co6h2mZ2.js → mdx-C98MqvlS.js} +1 -1
  70. package/dist/assets/{mermaid.core-VYJIZL_J.js → mermaid.core-DBYO3wup.js} +4 -4
  71. package/dist/assets/{mindmap-definition-8da855dc-DKNG2gyr.js → mindmap-definition-8da855dc-D9C_cL3R.js} +1 -1
  72. package/dist/assets/{pieDiagram-a8764435-Cu3up9mc.js → pieDiagram-a8764435-FVnh07ga.js} +1 -1
  73. package/dist/assets/{project-file-tree-icons-CfonMx-1.js → project-file-tree-icons-Iz30jDs3.js} +1 -1
  74. package/dist/assets/{python-BUUKzwmG.js → python-Emg9kCcG.js} +1 -1
  75. package/dist/assets/{quadrantDiagram-1e28029f-DHW8R4el.js → quadrantDiagram-1e28029f-DKEnlnQE.js} +1 -1
  76. package/dist/assets/{razor-ZPlQfY47.js → razor-BebYpuFx.js} +1 -1
  77. package/dist/assets/{requirementDiagram-08caed73-CXWNC-_B.js → requirementDiagram-08caed73-BHVdwyn8.js} +1 -1
  78. package/dist/assets/{route-plugin-chrome-bV1HEaju.js → route-plugin-chrome-DI32l8cC.js} +1 -1
  79. package/dist/assets/{sankeyDiagram-a04cb91d-DhKL8pMH.js → sankeyDiagram-a04cb91d-COhhpvg5.js} +1 -1
  80. package/dist/assets/{sequenceDiagram-c5b8d532-D3fAcQeI.js → sequenceDiagram-c5b8d532-CfjihR0y.js} +1 -1
  81. package/dist/assets/{shortcutUtils-B8h6g_7o.js → shortcutUtils-HFKOHIG8.js} +1 -1
  82. package/dist/assets/{stateDiagram-1ecb1508-wKQS4LMF.js → stateDiagram-1ecb1508-BjgwBAXi.js} +1 -1
  83. package/dist/assets/{stateDiagram-v2-c2b004d7-D5qOKtOa.js → stateDiagram-v2-c2b004d7-D3w7Spww.js} +1 -1
  84. package/dist/assets/{styles-b4e223ce-CpBwPex_.js → styles-b4e223ce-BOAkdyMQ.js} +1 -1
  85. package/dist/assets/{styles-ca3715f6-4bqpN1KH.js → styles-ca3715f6-CcZFkBde.js} +1 -1
  86. package/dist/assets/{styles-d45a18b0-B0RCBD5D.js → styles-d45a18b0-HXDBEoho.js} +1 -1
  87. package/dist/assets/{svgDrawCommon-b86b1483-C9KXk4gS.js → svgDrawCommon-b86b1483-CyvFXNjU.js} +1 -1
  88. package/dist/assets/{timeline-definition-faaaa080-B1Bfjd0m.js → timeline-definition-faaaa080-CKFw-bXV.js} +1 -1
  89. package/dist/assets/{tsMode-Bd8BwKXc.js → tsMode-B7ZLt3D7.js} +1 -1
  90. package/dist/assets/{typescript-CLd6MPK0.js → typescript-BI4b07nJ.js} +1 -1
  91. package/dist/assets/{use-app-preferences-DGCafwsP.js → use-app-preferences-BZCemhY7.js} +1 -1
  92. package/dist/assets/{use-chat-session-actions-wF_HiVzj.js → use-chat-session-actions-BNmm_R8s.js} +1 -1
  93. package/dist/assets/{vendor-state-zjcHRN98.js → vendor-state-Djj0Jjxr.js} +1 -1
  94. package/dist/assets/{workspace-file-openers-Dj_Cfk1S.js → workspace-file-openers-yFyhcWXX.js} +1 -1
  95. package/dist/assets/{xml-BeC1cWk3.js → xml--qVpqb-2.js} +1 -1
  96. package/dist/assets/{xychartDiagram-f5964ef8-DbJVUSHy.js → xychartDiagram-f5964ef8-v75Tkx5A.js} +1 -1
  97. package/dist/assets/{yaml-gQrw9AcN.js → yaml-CkA7Z41y.js} +1 -1
  98. package/dist/index.html +2 -2
  99. package/package.json +6 -6
  100. package/dist/assets/StandaloneMobileDebugRoute-DuOLjUb9.css +0 -1
  101. package/dist/assets/channel-DH-F5Uqk.js +0 -1
  102. package/dist/assets/client-build-info-6B4KoYHs.js +0 -1
  103. package/dist/assets/clone-DGri7oGq.js +0 -1
  104. package/dist/assets/flowDiagram-v2-4f6560a1-C3klqpJG.js +0 -1
  105. package/dist/assets/interaction-panel-mobile-debug-pages-8AAd4Csf.css +0 -1
  106. package/dist/assets/interaction-panel-mobile-debug-pages-DXC3HSZU.js +0 -113
@@ -1,4 +1,4 @@
1
- import{j as e,r as w}from"./vendor-react-CnooHTJc.js";import{m as Si,o as ts,p as ls,S as as,C as rs}from"./workspace-file-openers-Dj_Cfk1S.js";import{e as Vn,u as ki}from"./vendor-state-zjcHRN98.js";import{bs as Ci,bt as ii,P as Fn,bu as qn,H as cs,I as Pi,L as En,T as ds}from"./AuthenticatedApp-CK9TT7Nk.js";import{ax as Ge,ay as Re,aI as pn,B as L,aD as cn,u as ms}from"./index-DdUqPqXW.js";import{D as us,n as fs,r as ps,S as Ai}from"./shortcutUtils-B8h6g_7o.js";import{E as dn,T as ne,M as De}from"./MobileAwareSelect-CCAQrsxL.js";import{i as gs,b as nn,d as kn,F as le,e as ae,f as Mi,g as Pe,S as Cn,s as Fe,h as Ii,j as vs,k as Dn,C as mn,r as Ti,t as $i}from"./SchemaObjectEditor-DvwrURac.js";import{S as Vi,M as Fi}from"./WorkspaceApp-l-h_IsMp.js";import{I as re}from"./index-ZOsqqPVv.js";import{k as Bn,l as Xn,m as Di,h as Bi,e as Ei,o as Oi,r as Ki,S as Ye}from"./project-file-tree-icons-CfonMx-1.js";import{T as Pn}from"./index-YzfSzOLk.js";import{T as si}from"./index-nXq6jwfM.js";import{C as On,A as oi}from"./Collapse-CxTS9FJh.js";import{S as hs}from"./index-BIs5hzci.js";const We=n=>({...(n==null?void 0:n.service)!=null?{service:n.service}:{},...(n==null?void 0:n.source)!=null?{source:n.source}:{}}),_s=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/models/list`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] list model service models failed:"),Li=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/balance`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] get model service balance failed:"),xs=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/status`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] get model service status failed:"),ys=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/secrets`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] create model service secret failed:"),js=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] get model service management snapshot failed:"),bs=(n,i,s)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management/tokens`,{method:"POST",headers:Re,body:JSON.stringify({...We(s),input:i})},"[api] create model service management token failed:"),ws=(n,i,s,t)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management/tokens/${encodeURIComponent(i)}`,{method:"PUT",headers:Re,body:JSON.stringify({...We(t),input:s})},"[api] update model service management token failed:"),Ns=(n,i,s)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management/tokens/${encodeURIComponent(i)}`,{method:"DELETE",headers:Re,body:JSON.stringify(We(s))},"[api] delete model service management token failed:"),ti=(n,i,s)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management/tokens/${encodeURIComponent(i)}/profile`,{method:"POST",headers:Re,body:JSON.stringify(We(s))},"[api] get model service management token profile failed:"),Nn=({value:n,sectionKey:i,path:s=[],t})=>gs(n)?e.jsx(dn,{description:t("common.noData"),image:null}):Array.isArray(n)?n.some(c=>c!=null&&typeof c=="object")?e.jsx("span",{className:"config-view__pill",children:t("config.editor.complexValue")}):e.jsx("div",{className:"config-view__display-pill",children:n.map((c,m)=>e.jsx("span",{className:"config-view__pill",children:String(c)},`${m}-${String(c)}`))}):n!=null&&typeof n=="object"?e.jsx("div",{className:"config-view__field-list",children:Object.entries(n).map(([o,c])=>{const m=nn(t,i,[...s,o],o),u=kn(t,i,[...s,o]);return e.jsx(le,{title:m,description:u,icon:ae(Mi(c)),children:e.jsx(Nn,{value:c,sectionKey:i,path:[...s,o],t})},o)})}):e.jsx("span",{className:"config-view__pill",children:String(n)}),ei=n=>n!=null&&typeof n=="object"&&!Array.isArray(n),zi={add:"person_add",refresh:"refresh",remove:"delete"},Kn={ready:"check_circle",missing:"warning",error:"error"},Ui=n=>{const i=Pe(n,["accounts"]);return ei(i)?i:{}},Ss=(n,i)=>{const s=Ui(n)[i];return ei(s)?s:{}},ks=(n,i,s)=>Fe(n,["accounts",i],s),Cs=(n,i)=>{switch(n){case"missing":return{label:i("config.accounts.status.missing"),color:"default",icon:Kn.missing};case"error":return{label:i("config.accounts.status.error"),color:"error",icon:Kn.error};case"ready":default:return{label:i("config.accounts.status.ready"),color:"success",icon:Kn.ready}}},Gn=(n,i)=>i(`config.accounts.actions.${n.key}.label`,{defaultValue:n.label}),qi=(n,i)=>i(`config.accounts.actions.${n.key}.description`,{defaultValue:n.description??n.label}),An=n=>(n==null?void 0:n.trim().toLowerCase())??"",Ps=n=>{if(n==null)return;const i=n.trim();if(!i.endsWith("%"))return;const s=Number(i.slice(0,-1));if(Number.isFinite(s))return Math.min(100,Math.max(0,s))},As=n=>n>=85?"var(--error-color, #ff4d4f)":n>=60?"var(--warning-color, #faad14)":"var(--success-color, #52c41a)",Ms=(n,i)=>{if(n.isDefault===!0&&i.isDefault!==!0)return-1;if(i.isDefault===!0&&n.isDefault!==!0)return 1;if(n.status!==i.status){if(n.status==="ready")return-1;if(i.status==="ready")return 1}const s=An(n.title).localeCompare(An(i.title));return s!==0?s:n.key.localeCompare(i.key)},Mn=(n,i)=>{const s=i==null?void 0:i.trim();return s==null||s===""||s===n?n:e.jsxs("div",{className:"adapter-account-manager__tooltip",children:[e.jsx("div",{className:"adapter-account-manager__tooltip-title",children:n}),e.jsx("div",{className:"adapter-account-manager__tooltip-description",children:s})]})},li=({color:n,icon:i,label:s,description:t})=>{const o=n==="success"?{color:"var(--success-color, #52c41a)"}:n==="error"?{color:"var(--error-color, #ff4d4f)"}:void 0;return e.jsx(ne,{title:Mn(s,t),children:e.jsx("span",{className:"adapter-account-manager__icon-tag",style:o,"aria-label":s,children:e.jsx("span",{className:"material-symbols-rounded","aria-hidden":"true",children:i})})})},Is=({actions:n,loadingAction:i,onRunAction:s,t})=>n.length===0?null:e.jsx("div",{className:"adapter-account-manager__actions",children:n.map(o=>{const c=Gn(o,t),m=qi(o,t),u=zi[o.key];return o.key==="remove"?e.jsx(Fn,{title:t("config.accounts.deleteConfirmTitle",{defaultValue:"Delete the stored snapshot for {{account}}?",account:c}),okText:t("common.confirm"),cancelText:t("common.cancel"),onConfirm:async()=>{await s(o)},children:e.jsx(ne,{title:Mn(c,m),children:e.jsx(L,{type:"default",size:"small",danger:!0,loading:i===o.key,"aria-label":c,className:"adapter-account-manager__icon-button adapter-account-manager__header-action",icon:e.jsx("span",{className:"material-symbols-rounded",children:u})})})},o.key):e.jsx(ne,{title:Mn(c,m),children:e.jsx(L,{type:"default",size:"small",loading:i===o.key,"aria-label":c,className:"adapter-account-manager__icon-button adapter-account-manager__header-action",icon:e.jsx("span",{className:"material-symbols-rounded",children:u}),onClick:async()=>{await s(o)}})},o.key)})}),Gi=(n,i,s)=>{const t=new Map;return Object.entries(n).forEach(([o,c])=>{const m=ei(c)?c:{},u=typeof m.title=="string"?m.title.trim():"",p=typeof m.description=="string"?m.description.trim():"";t.set(o,{key:o,title:u!==""?u:o,...p!==""?{description:p}:{},status:"missing"})}),i.forEach(o=>{const c=t.get(o.key);t.set(o.key,{...c,...o})}),[...t.values()].map(o=>({...o,isDefault:s!=null&&s!==""?o.key===s:o.isDefault})).sort(Ms)},Ts=({adapterKey:n,accountKey:i,accountItemSchema:s,value:t,onChange:o,t:c})=>{if(s==null||s.fields.length===0)return null;const m={...s,fields:s.fields.map(p=>p.path.length===1&&p.path[0]==="description"?{...p,type:"multiline"}:p)},u=`~/.oneworks/projects/<project-key>/.local/adapters/${n}/accounts/${i}/auth.json`;return e.jsxs("div",{className:"adapter-account-manager__editor",children:[e.jsxs("div",{className:"adapter-account-manager__section-title",children:[e.jsx("span",{className:"material-symbols-rounded",children:"tune"}),e.jsx("span",{children:c("config.accounts.settingsTitle",{defaultValue:"Account settings"})})]}),e.jsx(Cn,{value:Ss(t,i),schema:m,onChange:p=>o(ks(t,i,p)),t:c,resolveFieldLabel:(p,a)=>nn(c,"adapterAccount",p.path,a),resolveFieldDescription:(p,a)=>{const g=kn(c,"adapterAccount",p.path),l=g!==""?g:a;if(p.path.length===1&&p.path[0]==="authFile"){const f=c("config.accounts.authFileDefaultLookup",{defaultValue:"Leave empty to use {{path}}.",path:u});return[l,f].map(h=>h.trim()).filter(h=>h!=="").join(" ")}return l}})]})},$s=({adapterKey:n,accountKey:i,accountItemSchema:s,value:t,onChange:o,onChanged:c,onRemoved:m,t:u})=>{var C,Q;const{message:p}=pn.useApp(),{data:a,isLoading:g,mutate:l}=Vn(`/api/adapters/${n}/accounts/${i}`,()=>ii(n,i)),[f,h]=w.useState(),x=a==null?void 0:a.account,j=Cs(x==null?void 0:x.status,u),_=((x==null?void 0:x.actions)??[]).filter(P=>P.key!=="refresh"),d=((Q=(C=x==null?void 0:x.quota)==null?void 0:C.metrics)==null?void 0:Q.filter(P=>typeof P.value=="string"?P.value.trim()!=="":P.value!=null))??[],N=async P=>{h(P.key);try{const A=await qn(n,{action:P.key,account:i,refresh:P.key==="refresh"});if(await c(),P.key==="remove"){p.success(A.message??u("config.accounts.actionSuccess.remove")),m();return}if(A.account!=null)await l({account:A.account},{revalidate:!1});else{const Y=await ii(n,i,{refresh:!0});await l(Y,{revalidate:!1})}p.success(A.message??u(`config.accounts.actionSuccess.${P.key}`))}catch(A){p.error(cn(A,u(`config.accounts.actionFailed.${P.key}`)))}finally{h(void 0)}};return e.jsxs("div",{className:"adapter-account-manager__detail",children:[g&&e.jsx("div",{className:"adapter-account-manager__state",children:e.jsx(Vi,{size:"small"})}),!g&&x==null&&e.jsx(dn,{image:null,description:u("config.accounts.detailMissing")}),x!=null&&e.jsxs("div",{className:"adapter-account-manager__detail-body",children:[e.jsx("div",{className:"adapter-account-manager__hero",children:e.jsx("div",{className:"adapter-account-manager__hero-body",children:e.jsxs("div",{className:"adapter-account-manager__hero-title-row",children:[e.jsx("div",{className:"adapter-account-manager__hero-title",children:x.title}),e.jsxs("div",{className:"adapter-account-manager__hero-meta",children:[e.jsxs("div",{className:"adapter-account-manager__hero-badges",children:[e.jsx(li,{color:j.color,icon:j.icon,label:j.label}),x.isDefault===!0&&e.jsx(li,{icon:"star",label:u("config.accounts.default")})]}),_.length>0&&e.jsx(Is,{actions:_,loadingAction:f,onRunAction:N,t:u})]})]})})}),d.length>0&&e.jsxs("div",{className:"adapter-account-manager__section",children:[e.jsxs("div",{className:"adapter-account-manager__section-title",children:[e.jsx("span",{className:"material-symbols-rounded",children:"query_stats"}),e.jsx("span",{children:u("config.accounts.quotaTitle",{defaultValue:"Quota"})})]}),e.jsx("div",{className:"adapter-account-manager__metrics",children:d.map(P=>e.jsxs("div",{className:"adapter-account-manager__metric",children:[e.jsx("div",{className:"adapter-account-manager__metric-label",children:P.label}),e.jsxs("div",{className:"adapter-account-manager__metric-value",children:[P.value??"-",(()=>{const A=Ps(P.value);return A==null?null:e.jsx("span",{className:"adapter-account-manager__metric-ring","aria-hidden":"true",style:{background:`conic-gradient(${As(A)} ${A}%, color-mix(in srgb, var(--border-color) 72%, transparent) 0)`},children:e.jsx("span",{className:"adapter-account-manager__metric-ring-inner"})})})()]}),P.description!=null&&P.description.trim()!==""&&e.jsx("div",{className:"adapter-account-manager__metric-description",children:P.description})]},P.id))})]}),e.jsx(Ts,{adapterKey:n,accountKey:i,accountItemSchema:s,value:t,onChange:o,t:u})]})]})},Vs=({accounts:n,onOpenAccounts:i,t:s})=>{const t=n.filter(c=>c.status!=="missing"&&c.status!=="error").length,o=n.find(c=>c.isDefault===!0);return e.jsx("div",{className:"adapter-account-manager__overview",children:e.jsxs("button",{type:"button",className:"adapter-account-manager__overview-card config-view__field-row",onClick:i,children:[e.jsxs("div",{className:"config-view__field-meta",children:[e.jsx("span",{className:"material-symbols-rounded config-view__field-icon",children:"manage_accounts"}),e.jsxs("div",{className:"config-view__field-text",children:[e.jsx("div",{className:"config-view__field-title",children:s("config.accounts.title")}),e.jsxs("div",{className:"config-view__field-desc adapter-account-manager__overview-meta",children:[e.jsx("span",{children:s("config.accounts.count",{count:n.length})}),e.jsx("span",{children:s("config.accounts.readyCount",{count:t})}),o!=null&&e.jsx("span",{children:s("config.accounts.defaultHint",{account:o.title})})]})]})]}),e.jsx("div",{className:"config-view__field-control adapter-account-manager__overview-control",children:e.jsx("span",{className:"material-symbols-rounded adapter-account-manager__overview-arrow",children:"chevron_right"})})]})})},Fs=({accounts:n,actions:i,loadingAction:s,onOpenAccount:t,onRunAction:o,currentDefaultAccount:c,deletingAccountKey:m,onToggleDefaultAccount:u,onDeleteAccount:p,t:a})=>{const[g,l]=w.useState(""),f=An(g),h=i.find(j=>j.key==="add"),x=w.useMemo(()=>f===""?n:n.filter(j=>{var d;return[j.title,j.key,j.description,(d=j.quota)==null?void 0:d.summary].some(N=>An(N).includes(f))}),[n,f]);return e.jsxs("div",{className:"adapter-account-manager",children:[e.jsxs("div",{className:"adapter-account-manager__header",children:[e.jsx(re,{allowClear:!0,value:g,onChange:j=>l(j.target.value),className:"adapter-account-manager__search",placeholder:a("config.accounts.searchPlaceholder",{defaultValue:"Search accounts"}),prefix:e.jsx("span",{className:"material-symbols-rounded",children:"search"})}),h!=null&&e.jsx(ne,{title:Mn(Gn(h,a),qi(h,a)),children:e.jsx(L,{size:"small",type:"default",loading:s===h.key,"aria-label":Gn(h,a),className:"adapter-account-manager__icon-button adapter-account-manager__header-action",icon:e.jsx("span",{className:"material-symbols-rounded",children:zi[h.key]}),onClick:()=>o(h)})})]}),x.length===0&&e.jsx(dn,{image:null,description:n.length===0?a("config.accounts.empty"):a("config.accounts.searchEmpty",{defaultValue:"No matching accounts"})}),x.length>0&&e.jsx("div",{className:"adapter-account-manager__list",children:x.map(j=>{var N;const _=c===j.key||j.isDefault===!0,d=j.status!=="missing";return e.jsxs("div",{className:"adapter-account-manager__item",children:[e.jsx("button",{type:"button",className:"adapter-account-manager__item-trigger",onClick:()=>t(j.key),children:e.jsxs("div",{className:"adapter-account-manager__item-main",children:[e.jsx("div",{className:"adapter-account-manager__item-title",children:j.title}),((N=j.quota)==null?void 0:N.summary)!=null&&j.quota.summary!==""&&e.jsxs("div",{className:"adapter-account-manager__item-description",children:[e.jsx("span",{className:"material-symbols-rounded",children:"speed"}),e.jsx("span",{children:j.quota.summary})]})]})}),e.jsxs("div",{className:"adapter-account-manager__item-actions",children:[e.jsx(ne,{title:_?a("config.accounts.rowActions.clearDefault",{defaultValue:"Clear default account"}):a("config.accounts.rowActions.setDefault",{defaultValue:"Set as default account"}),children:e.jsx(L,{type:"text",size:"small","aria-label":_?a("config.accounts.rowActions.clearDefault",{defaultValue:"Clear default account"}):a("config.accounts.rowActions.setDefault",{defaultValue:"Set as default account"}),className:`adapter-account-manager__row-action ${_?"adapter-account-manager__row-action--active":""}`,icon:e.jsx("span",{className:"material-symbols-rounded",children:"star"}),onClick:C=>{C.stopPropagation(),u(j.key)}})}),d&&e.jsx(Fn,{title:a("config.accounts.deleteConfirmTitle",{defaultValue:"Delete the stored snapshot for {{account}}?",account:j.title}),okText:a("common.confirm"),cancelText:a("common.cancel"),onConfirm:async C=>{var Q;(Q=C==null?void 0:C.stopPropagation)==null||Q.call(C),await p(j.key)},children:e.jsx(L,{type:"text",size:"small",danger:!0,loading:m===j.key,"aria-label":a("config.accounts.rowActions.delete",{defaultValue:"Delete account snapshot"}),className:"adapter-account-manager__row-action",icon:e.jsx("span",{className:"material-symbols-rounded",children:"delete"}),onClick:C=>{C.stopPropagation()}})})]})]},j.key)})})]})},ai=({adapterKey:n,value:i,accountItemSchema:s,nestedPath:t=[],onChange:o,onOpenNestedPath:c,t:m})=>{const{message:u}=pn.useApp(),p=typeof i.defaultAccount=="string"&&i.defaultAccount.trim()!==""?i.defaultAccount.trim():void 0,{data:a,isLoading:g,mutate:l}=Vn(`/api/adapters/${n}/accounts`,()=>Ci(n)),[f,h]=w.useState(),[x,j]=w.useState(),_=w.useMemo(()=>Ui(i),[i]),d=w.useMemo(()=>Gi(_,(a==null?void 0:a.accounts)??[],p),[_,p,a==null?void 0:a.accounts]),N=(a==null?void 0:a.actions)??[],C=t[0]==="accounts",Q=C?t[1]:void 0,P=async()=>{await l()},A=G=>{const B={...i};p===G?delete B.defaultAccount:B.defaultAccount=G,o(B)},Y=async G=>{if(G.key==="add"){h(G.key);try{const B=await qn(n,{action:"add"});await P(),u.success(B.message??m("config.accounts.actionSuccess.add")),B.accountKey!=null&&B.accountKey.trim()!==""?c(["accounts",B.accountKey]):c(["accounts"])}catch(B){u.error(cn(B,m("config.accounts.actionFailed.add")))}finally{h(void 0)}}},I=async G=>{j(G);try{const B=await qn(n,{action:"remove",account:G,refresh:!0});await P(),u.success(B.message??m("config.accounts.actionSuccess.remove"))}catch(B){u.error(cn(B,m("config.accounts.actionFailed.remove")))}finally{j(void 0)}};return g&&d.length===0?e.jsx("div",{className:"adapter-account-manager__state",children:e.jsx(Vi,{size:"small"})}):C&&Q!=null&&Q!==""?e.jsx($s,{adapterKey:n,accountKey:Q,accountItemSchema:s,value:i,onChange:o,onChanged:P,onRemoved:()=>c(["accounts"]),t:m}):C?e.jsx(Fs,{accounts:d,actions:N,loadingAction:f,onOpenAccount:G=>c(["accounts",G]),onRunAction:Y,currentDefaultAccount:p,deletingAccountKey:x,onToggleDefaultAccount:A,onDeleteAccount:I,t:m}):e.jsx(Vs,{accounts:d,onOpenAccounts:()=>c(["accounts"]),t:m})},Ds=({index:n,itemCount:i,onMove:s,onRemove:t,t:o})=>e.jsxs("div",{className:"config-view__record-actions",children:[s!=null&&e.jsxs(e.Fragment,{children:[e.jsx(ne,{title:o("config.editor.moveUp"),children:e.jsx(L,{size:"small",type:"text",className:"config-view__icon-button config-view__icon-button--compact","aria-label":o("config.editor.moveUp"),icon:e.jsx("span",{className:"material-symbols-rounded",children:"keyboard_arrow_up"}),disabled:n===0,onClick:()=>s(-1)})}),e.jsx(ne,{title:o("config.editor.moveDown"),children:e.jsx(L,{size:"small",type:"text",className:"config-view__icon-button config-view__icon-button--compact","aria-label":o("config.editor.moveDown"),icon:e.jsx("span",{className:"material-symbols-rounded",children:"keyboard_arrow_down"}),disabled:n===i-1,onClick:()=>s(1)})})]}),e.jsx(Fn,{title:o("config.editor.removeItemConfirmTitle"),okText:o("common.confirm"),cancelText:o("common.cancel"),onConfirm:t,children:e.jsx(ne,{title:o("config.editor.remove"),children:e.jsx(L,{size:"small",type:"text",danger:!0,className:"config-view__icon-button config-view__icon-button--compact","aria-label":o("config.editor.remove"),icon:e.jsx("span",{className:"material-symbols-rounded",children:"delete"})})})})]}),ni=n=>n!=null&&typeof n=="object"&&!Array.isArray(n)?n:{apiKey:""},Ri=(n,i)=>({canQueryModels:i&&((n==null?void 0:n.listModels)==="api"||(n==null?void 0:n.listModels)==="static"),canQueryBalance:i&&(n==null?void 0:n.balance)==="api",canQueryStatus:i&&(n==null?void 0:n.status)==="api",canCreateSecret:i&&((n==null?void 0:n.secrets)==="api"||(n==null?void 0:n.secrets)==="manual")}),Wi=(n,i,s)=>{var t,o,c,m,u,p,a;return[n,i,s.provider,s.apiBaseUrl,s.apiKey,(t=s.management)==null?void 0:t.apiKey,(o=s.management)==null?void 0:o.baseUrl,(c=s.management)==null?void 0:c.endpointKind,JSON.stringify(((m=s.management)==null?void 0:m.headers)??{}),(u=s.management)==null?void 0:u.organizationId,(p=s.management)==null?void 0:p.projectId,(a=s.management)==null?void 0:a.userId].join(`
1
+ import{j as e,r as w}from"./vendor-react-CnooHTJc.js";import{m as Si,o as ts,p as ls,S as as,C as rs}from"./workspace-file-openers-yFyhcWXX.js";import{e as Vn,u as ki}from"./vendor-state-Djj0Jjxr.js";import{bs as Ci,bt as ii,P as Fn,bu as qn,H as cs,I as Pi,L as En,T as ds}from"./AuthenticatedApp-CjqSg3Fe.js";import{ax as Ge,ay as Re,aI as pn,B as L,aD as cn,u as ms}from"./index-DgZk1SFp.js";import{D as us,n as fs,r as ps,S as Ai}from"./shortcutUtils-HFKOHIG8.js";import{E as dn,T as ne,M as De}from"./MobileAwareSelect-C3a67aGF.js";import{i as gs,b as nn,d as kn,F as le,e as ae,f as Mi,g as Pe,S as Cn,s as Fe,h as Ii,j as vs,k as Dn,C as mn,r as Ti,t as $i}from"./SchemaObjectEditor-COAQ7p3E.js";import{S as Vi,M as Fi}from"./WorkspaceApp-CokR7Tpr.js";import{I as re}from"./index-aZ1QdVqZ.js";import{k as Bn,l as Xn,m as Di,h as Bi,e as Ei,o as Oi,r as Ki,S as Ye}from"./project-file-tree-icons-Iz30jDs3.js";import{T as Pn}from"./index-CqhgNUy-.js";import{T as si}from"./index-CPxqxItX.js";import{C as On,A as oi}from"./Collapse-v6rPK_Og.js";import{S as hs}from"./index-JwN0oF3c.js";const We=n=>({...(n==null?void 0:n.service)!=null?{service:n.service}:{},...(n==null?void 0:n.source)!=null?{source:n.source}:{}}),_s=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/models/list`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] list model service models failed:"),Li=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/balance`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] get model service balance failed:"),xs=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/status`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] get model service status failed:"),ys=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/secrets`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] create model service secret failed:"),js=(n,i)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management`,{method:"POST",headers:Re,body:JSON.stringify(We(i))},"[api] get model service management snapshot failed:"),bs=(n,i,s)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management/tokens`,{method:"POST",headers:Re,body:JSON.stringify({...We(s),input:i})},"[api] create model service management token failed:"),ws=(n,i,s,t)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management/tokens/${encodeURIComponent(i)}`,{method:"PUT",headers:Re,body:JSON.stringify({...We(t),input:s})},"[api] update model service management token failed:"),Ns=(n,i,s)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management/tokens/${encodeURIComponent(i)}`,{method:"DELETE",headers:Re,body:JSON.stringify(We(s))},"[api] delete model service management token failed:"),ti=(n,i,s)=>Ge(`/api/model-services/${encodeURIComponent(n)}/management/tokens/${encodeURIComponent(i)}/profile`,{method:"POST",headers:Re,body:JSON.stringify(We(s))},"[api] get model service management token profile failed:"),Nn=({value:n,sectionKey:i,path:s=[],t})=>gs(n)?e.jsx(dn,{description:t("common.noData"),image:null}):Array.isArray(n)?n.some(c=>c!=null&&typeof c=="object")?e.jsx("span",{className:"config-view__pill",children:t("config.editor.complexValue")}):e.jsx("div",{className:"config-view__display-pill",children:n.map((c,m)=>e.jsx("span",{className:"config-view__pill",children:String(c)},`${m}-${String(c)}`))}):n!=null&&typeof n=="object"?e.jsx("div",{className:"config-view__field-list",children:Object.entries(n).map(([o,c])=>{const m=nn(t,i,[...s,o],o),u=kn(t,i,[...s,o]);return e.jsx(le,{title:m,description:u,icon:ae(Mi(c)),children:e.jsx(Nn,{value:c,sectionKey:i,path:[...s,o],t})},o)})}):e.jsx("span",{className:"config-view__pill",children:String(n)}),ei=n=>n!=null&&typeof n=="object"&&!Array.isArray(n),zi={add:"person_add",refresh:"refresh",remove:"delete"},Kn={ready:"check_circle",missing:"warning",error:"error"},Ui=n=>{const i=Pe(n,["accounts"]);return ei(i)?i:{}},Ss=(n,i)=>{const s=Ui(n)[i];return ei(s)?s:{}},ks=(n,i,s)=>Fe(n,["accounts",i],s),Cs=(n,i)=>{switch(n){case"missing":return{label:i("config.accounts.status.missing"),color:"default",icon:Kn.missing};case"error":return{label:i("config.accounts.status.error"),color:"error",icon:Kn.error};case"ready":default:return{label:i("config.accounts.status.ready"),color:"success",icon:Kn.ready}}},Gn=(n,i)=>i(`config.accounts.actions.${n.key}.label`,{defaultValue:n.label}),qi=(n,i)=>i(`config.accounts.actions.${n.key}.description`,{defaultValue:n.description??n.label}),An=n=>(n==null?void 0:n.trim().toLowerCase())??"",Ps=n=>{if(n==null)return;const i=n.trim();if(!i.endsWith("%"))return;const s=Number(i.slice(0,-1));if(Number.isFinite(s))return Math.min(100,Math.max(0,s))},As=n=>n>=85?"var(--error-color, #ff4d4f)":n>=60?"var(--warning-color, #faad14)":"var(--success-color, #52c41a)",Ms=(n,i)=>{if(n.isDefault===!0&&i.isDefault!==!0)return-1;if(i.isDefault===!0&&n.isDefault!==!0)return 1;if(n.status!==i.status){if(n.status==="ready")return-1;if(i.status==="ready")return 1}const s=An(n.title).localeCompare(An(i.title));return s!==0?s:n.key.localeCompare(i.key)},Mn=(n,i)=>{const s=i==null?void 0:i.trim();return s==null||s===""||s===n?n:e.jsxs("div",{className:"adapter-account-manager__tooltip",children:[e.jsx("div",{className:"adapter-account-manager__tooltip-title",children:n}),e.jsx("div",{className:"adapter-account-manager__tooltip-description",children:s})]})},li=({color:n,icon:i,label:s,description:t})=>{const o=n==="success"?{color:"var(--success-color, #52c41a)"}:n==="error"?{color:"var(--error-color, #ff4d4f)"}:void 0;return e.jsx(ne,{title:Mn(s,t),children:e.jsx("span",{className:"adapter-account-manager__icon-tag",style:o,"aria-label":s,children:e.jsx("span",{className:"material-symbols-rounded","aria-hidden":"true",children:i})})})},Is=({actions:n,loadingAction:i,onRunAction:s,t})=>n.length===0?null:e.jsx("div",{className:"adapter-account-manager__actions",children:n.map(o=>{const c=Gn(o,t),m=qi(o,t),u=zi[o.key];return o.key==="remove"?e.jsx(Fn,{title:t("config.accounts.deleteConfirmTitle",{defaultValue:"Delete the stored snapshot for {{account}}?",account:c}),okText:t("common.confirm"),cancelText:t("common.cancel"),onConfirm:async()=>{await s(o)},children:e.jsx(ne,{title:Mn(c,m),children:e.jsx(L,{type:"default",size:"small",danger:!0,loading:i===o.key,"aria-label":c,className:"adapter-account-manager__icon-button adapter-account-manager__header-action",icon:e.jsx("span",{className:"material-symbols-rounded",children:u})})})},o.key):e.jsx(ne,{title:Mn(c,m),children:e.jsx(L,{type:"default",size:"small",loading:i===o.key,"aria-label":c,className:"adapter-account-manager__icon-button adapter-account-manager__header-action",icon:e.jsx("span",{className:"material-symbols-rounded",children:u}),onClick:async()=>{await s(o)}})},o.key)})}),Gi=(n,i,s)=>{const t=new Map;return Object.entries(n).forEach(([o,c])=>{const m=ei(c)?c:{},u=typeof m.title=="string"?m.title.trim():"",p=typeof m.description=="string"?m.description.trim():"";t.set(o,{key:o,title:u!==""?u:o,...p!==""?{description:p}:{},status:"missing"})}),i.forEach(o=>{const c=t.get(o.key);t.set(o.key,{...c,...o})}),[...t.values()].map(o=>({...o,isDefault:s!=null&&s!==""?o.key===s:o.isDefault})).sort(Ms)},Ts=({adapterKey:n,accountKey:i,accountItemSchema:s,value:t,onChange:o,t:c})=>{if(s==null||s.fields.length===0)return null;const m={...s,fields:s.fields.map(p=>p.path.length===1&&p.path[0]==="description"?{...p,type:"multiline"}:p)},u=`~/.oneworks/projects/<project-key>/.local/adapters/${n}/accounts/${i}/auth.json`;return e.jsxs("div",{className:"adapter-account-manager__editor",children:[e.jsxs("div",{className:"adapter-account-manager__section-title",children:[e.jsx("span",{className:"material-symbols-rounded",children:"tune"}),e.jsx("span",{children:c("config.accounts.settingsTitle",{defaultValue:"Account settings"})})]}),e.jsx(Cn,{value:Ss(t,i),schema:m,onChange:p=>o(ks(t,i,p)),t:c,resolveFieldLabel:(p,a)=>nn(c,"adapterAccount",p.path,a),resolveFieldDescription:(p,a)=>{const g=kn(c,"adapterAccount",p.path),l=g!==""?g:a;if(p.path.length===1&&p.path[0]==="authFile"){const f=c("config.accounts.authFileDefaultLookup",{defaultValue:"Leave empty to use {{path}}.",path:u});return[l,f].map(h=>h.trim()).filter(h=>h!=="").join(" ")}return l}})]})},$s=({adapterKey:n,accountKey:i,accountItemSchema:s,value:t,onChange:o,onChanged:c,onRemoved:m,t:u})=>{var C,Q;const{message:p}=pn.useApp(),{data:a,isLoading:g,mutate:l}=Vn(`/api/adapters/${n}/accounts/${i}`,()=>ii(n,i)),[f,h]=w.useState(),x=a==null?void 0:a.account,j=Cs(x==null?void 0:x.status,u),_=((x==null?void 0:x.actions)??[]).filter(P=>P.key!=="refresh"),d=((Q=(C=x==null?void 0:x.quota)==null?void 0:C.metrics)==null?void 0:Q.filter(P=>typeof P.value=="string"?P.value.trim()!=="":P.value!=null))??[],N=async P=>{h(P.key);try{const A=await qn(n,{action:P.key,account:i,refresh:P.key==="refresh"});if(await c(),P.key==="remove"){p.success(A.message??u("config.accounts.actionSuccess.remove")),m();return}if(A.account!=null)await l({account:A.account},{revalidate:!1});else{const Y=await ii(n,i,{refresh:!0});await l(Y,{revalidate:!1})}p.success(A.message??u(`config.accounts.actionSuccess.${P.key}`))}catch(A){p.error(cn(A,u(`config.accounts.actionFailed.${P.key}`)))}finally{h(void 0)}};return e.jsxs("div",{className:"adapter-account-manager__detail",children:[g&&e.jsx("div",{className:"adapter-account-manager__state",children:e.jsx(Vi,{size:"small"})}),!g&&x==null&&e.jsx(dn,{image:null,description:u("config.accounts.detailMissing")}),x!=null&&e.jsxs("div",{className:"adapter-account-manager__detail-body",children:[e.jsx("div",{className:"adapter-account-manager__hero",children:e.jsx("div",{className:"adapter-account-manager__hero-body",children:e.jsxs("div",{className:"adapter-account-manager__hero-title-row",children:[e.jsx("div",{className:"adapter-account-manager__hero-title",children:x.title}),e.jsxs("div",{className:"adapter-account-manager__hero-meta",children:[e.jsxs("div",{className:"adapter-account-manager__hero-badges",children:[e.jsx(li,{color:j.color,icon:j.icon,label:j.label}),x.isDefault===!0&&e.jsx(li,{icon:"star",label:u("config.accounts.default")})]}),_.length>0&&e.jsx(Is,{actions:_,loadingAction:f,onRunAction:N,t:u})]})]})})}),d.length>0&&e.jsxs("div",{className:"adapter-account-manager__section",children:[e.jsxs("div",{className:"adapter-account-manager__section-title",children:[e.jsx("span",{className:"material-symbols-rounded",children:"query_stats"}),e.jsx("span",{children:u("config.accounts.quotaTitle",{defaultValue:"Quota"})})]}),e.jsx("div",{className:"adapter-account-manager__metrics",children:d.map(P=>e.jsxs("div",{className:"adapter-account-manager__metric",children:[e.jsx("div",{className:"adapter-account-manager__metric-label",children:P.label}),e.jsxs("div",{className:"adapter-account-manager__metric-value",children:[P.value??"-",(()=>{const A=Ps(P.value);return A==null?null:e.jsx("span",{className:"adapter-account-manager__metric-ring","aria-hidden":"true",style:{background:`conic-gradient(${As(A)} ${A}%, color-mix(in srgb, var(--border-color) 72%, transparent) 0)`},children:e.jsx("span",{className:"adapter-account-manager__metric-ring-inner"})})})()]}),P.description!=null&&P.description.trim()!==""&&e.jsx("div",{className:"adapter-account-manager__metric-description",children:P.description})]},P.id))})]}),e.jsx(Ts,{adapterKey:n,accountKey:i,accountItemSchema:s,value:t,onChange:o,t:u})]})]})},Vs=({accounts:n,onOpenAccounts:i,t:s})=>{const t=n.filter(c=>c.status!=="missing"&&c.status!=="error").length,o=n.find(c=>c.isDefault===!0);return e.jsx("div",{className:"adapter-account-manager__overview",children:e.jsxs("button",{type:"button",className:"adapter-account-manager__overview-card config-view__field-row",onClick:i,children:[e.jsxs("div",{className:"config-view__field-meta",children:[e.jsx("span",{className:"material-symbols-rounded config-view__field-icon",children:"manage_accounts"}),e.jsxs("div",{className:"config-view__field-text",children:[e.jsx("div",{className:"config-view__field-title",children:s("config.accounts.title")}),e.jsxs("div",{className:"config-view__field-desc adapter-account-manager__overview-meta",children:[e.jsx("span",{children:s("config.accounts.count",{count:n.length})}),e.jsx("span",{children:s("config.accounts.readyCount",{count:t})}),o!=null&&e.jsx("span",{children:s("config.accounts.defaultHint",{account:o.title})})]})]})]}),e.jsx("div",{className:"config-view__field-control adapter-account-manager__overview-control",children:e.jsx("span",{className:"material-symbols-rounded adapter-account-manager__overview-arrow",children:"chevron_right"})})]})})},Fs=({accounts:n,actions:i,loadingAction:s,onOpenAccount:t,onRunAction:o,currentDefaultAccount:c,deletingAccountKey:m,onToggleDefaultAccount:u,onDeleteAccount:p,t:a})=>{const[g,l]=w.useState(""),f=An(g),h=i.find(j=>j.key==="add"),x=w.useMemo(()=>f===""?n:n.filter(j=>{var d;return[j.title,j.key,j.description,(d=j.quota)==null?void 0:d.summary].some(N=>An(N).includes(f))}),[n,f]);return e.jsxs("div",{className:"adapter-account-manager",children:[e.jsxs("div",{className:"adapter-account-manager__header",children:[e.jsx(re,{allowClear:!0,value:g,onChange:j=>l(j.target.value),className:"adapter-account-manager__search",placeholder:a("config.accounts.searchPlaceholder",{defaultValue:"Search accounts"}),prefix:e.jsx("span",{className:"material-symbols-rounded",children:"search"})}),h!=null&&e.jsx(ne,{title:Mn(Gn(h,a),qi(h,a)),children:e.jsx(L,{size:"small",type:"default",loading:s===h.key,"aria-label":Gn(h,a),className:"adapter-account-manager__icon-button adapter-account-manager__header-action",icon:e.jsx("span",{className:"material-symbols-rounded",children:zi[h.key]}),onClick:()=>o(h)})})]}),x.length===0&&e.jsx(dn,{image:null,description:n.length===0?a("config.accounts.empty"):a("config.accounts.searchEmpty",{defaultValue:"No matching accounts"})}),x.length>0&&e.jsx("div",{className:"adapter-account-manager__list",children:x.map(j=>{var N;const _=c===j.key||j.isDefault===!0,d=j.status!=="missing";return e.jsxs("div",{className:"adapter-account-manager__item",children:[e.jsx("button",{type:"button",className:"adapter-account-manager__item-trigger",onClick:()=>t(j.key),children:e.jsxs("div",{className:"adapter-account-manager__item-main",children:[e.jsx("div",{className:"adapter-account-manager__item-title",children:j.title}),((N=j.quota)==null?void 0:N.summary)!=null&&j.quota.summary!==""&&e.jsxs("div",{className:"adapter-account-manager__item-description",children:[e.jsx("span",{className:"material-symbols-rounded",children:"speed"}),e.jsx("span",{children:j.quota.summary})]})]})}),e.jsxs("div",{className:"adapter-account-manager__item-actions",children:[e.jsx(ne,{title:_?a("config.accounts.rowActions.clearDefault",{defaultValue:"Clear default account"}):a("config.accounts.rowActions.setDefault",{defaultValue:"Set as default account"}),children:e.jsx(L,{type:"text",size:"small","aria-label":_?a("config.accounts.rowActions.clearDefault",{defaultValue:"Clear default account"}):a("config.accounts.rowActions.setDefault",{defaultValue:"Set as default account"}),className:`adapter-account-manager__row-action ${_?"adapter-account-manager__row-action--active":""}`,icon:e.jsx("span",{className:"material-symbols-rounded",children:"star"}),onClick:C=>{C.stopPropagation(),u(j.key)}})}),d&&e.jsx(Fn,{title:a("config.accounts.deleteConfirmTitle",{defaultValue:"Delete the stored snapshot for {{account}}?",account:j.title}),okText:a("common.confirm"),cancelText:a("common.cancel"),onConfirm:async C=>{var Q;(Q=C==null?void 0:C.stopPropagation)==null||Q.call(C),await p(j.key)},children:e.jsx(L,{type:"text",size:"small",danger:!0,loading:m===j.key,"aria-label":a("config.accounts.rowActions.delete",{defaultValue:"Delete account snapshot"}),className:"adapter-account-manager__row-action",icon:e.jsx("span",{className:"material-symbols-rounded",children:"delete"}),onClick:C=>{C.stopPropagation()}})})]})]},j.key)})})]})},ai=({adapterKey:n,value:i,accountItemSchema:s,nestedPath:t=[],onChange:o,onOpenNestedPath:c,t:m})=>{const{message:u}=pn.useApp(),p=typeof i.defaultAccount=="string"&&i.defaultAccount.trim()!==""?i.defaultAccount.trim():void 0,{data:a,isLoading:g,mutate:l}=Vn(`/api/adapters/${n}/accounts`,()=>Ci(n)),[f,h]=w.useState(),[x,j]=w.useState(),_=w.useMemo(()=>Ui(i),[i]),d=w.useMemo(()=>Gi(_,(a==null?void 0:a.accounts)??[],p),[_,p,a==null?void 0:a.accounts]),N=(a==null?void 0:a.actions)??[],C=t[0]==="accounts",Q=C?t[1]:void 0,P=async()=>{await l()},A=G=>{const B={...i};p===G?delete B.defaultAccount:B.defaultAccount=G,o(B)},Y=async G=>{if(G.key==="add"){h(G.key);try{const B=await qn(n,{action:"add"});await P(),u.success(B.message??m("config.accounts.actionSuccess.add")),B.accountKey!=null&&B.accountKey.trim()!==""?c(["accounts",B.accountKey]):c(["accounts"])}catch(B){u.error(cn(B,m("config.accounts.actionFailed.add")))}finally{h(void 0)}}},I=async G=>{j(G);try{const B=await qn(n,{action:"remove",account:G,refresh:!0});await P(),u.success(B.message??m("config.accounts.actionSuccess.remove"))}catch(B){u.error(cn(B,m("config.accounts.actionFailed.remove")))}finally{j(void 0)}};return g&&d.length===0?e.jsx("div",{className:"adapter-account-manager__state",children:e.jsx(Vi,{size:"small"})}):C&&Q!=null&&Q!==""?e.jsx($s,{adapterKey:n,accountKey:Q,accountItemSchema:s,value:i,onChange:o,onChanged:P,onRemoved:()=>c(["accounts"]),t:m}):C?e.jsx(Fs,{accounts:d,actions:N,loadingAction:f,onOpenAccount:G=>c(["accounts",G]),onRunAction:Y,currentDefaultAccount:p,deletingAccountKey:x,onToggleDefaultAccount:A,onDeleteAccount:I,t:m}):e.jsx(Vs,{accounts:d,onOpenAccounts:()=>c(["accounts"]),t:m})},Ds=({index:n,itemCount:i,onMove:s,onRemove:t,t:o})=>e.jsxs("div",{className:"config-view__record-actions",children:[s!=null&&e.jsxs(e.Fragment,{children:[e.jsx(ne,{title:o("config.editor.moveUp"),children:e.jsx(L,{size:"small",type:"text",className:"config-view__icon-button config-view__icon-button--compact","aria-label":o("config.editor.moveUp"),icon:e.jsx("span",{className:"material-symbols-rounded",children:"keyboard_arrow_up"}),disabled:n===0,onClick:()=>s(-1)})}),e.jsx(ne,{title:o("config.editor.moveDown"),children:e.jsx(L,{size:"small",type:"text",className:"config-view__icon-button config-view__icon-button--compact","aria-label":o("config.editor.moveDown"),icon:e.jsx("span",{className:"material-symbols-rounded",children:"keyboard_arrow_down"}),disabled:n===i-1,onClick:()=>s(1)})})]}),e.jsx(Fn,{title:o("config.editor.removeItemConfirmTitle"),okText:o("common.confirm"),cancelText:o("common.cancel"),onConfirm:t,children:e.jsx(ne,{title:o("config.editor.remove"),children:e.jsx(L,{size:"small",type:"text",danger:!0,className:"config-view__icon-button config-view__icon-button--compact","aria-label":o("config.editor.remove"),icon:e.jsx("span",{className:"material-symbols-rounded",children:"delete"})})})})]}),ni=n=>n!=null&&typeof n=="object"&&!Array.isArray(n)?n:{apiKey:""},Ri=(n,i)=>({canQueryModels:i&&((n==null?void 0:n.listModels)==="api"||(n==null?void 0:n.listModels)==="static"),canQueryBalance:i&&(n==null?void 0:n.balance)==="api",canQueryStatus:i&&(n==null?void 0:n.status)==="api",canCreateSecret:i&&((n==null?void 0:n.secrets)==="api"||(n==null?void 0:n.secrets)==="manual")}),Wi=(n,i,s)=>{var t,o,c,m,u,p,a;return[n,i,s.provider,s.apiBaseUrl,s.apiKey,(t=s.management)==null?void 0:t.apiKey,(o=s.management)==null?void 0:o.baseUrl,(c=s.management)==null?void 0:c.endpointKind,JSON.stringify(((m=s.management)==null?void 0:m.headers)??{}),(u=s.management)==null?void 0:u.organizationId,(p=s.management)==null?void 0:p.projectId,(a=s.management)==null?void 0:a.userId].join(`
2
2
  `)},un=n=>{if(!(typeof n!="string"||n.trim()===""))try{const i=new URL(n.trim());return i.protocol==="https:"||i.protocol==="http:"&&(i.hostname==="localhost"||i.hostname==="127.0.0.1"||i.hostname==="[::1]")?i.toString():void 0}catch{return}},Hi=async n=>{var s;const i=un(n);if(i==null)throw new Error("Invalid model service portal URL.");if(((s=window.oneworksDesktop)==null?void 0:s.openExternalUrl)!=null){await window.oneworksDesktop.openExternalUrl(i);return}window.open(i,"_blank","noopener,noreferrer")},Ji=n=>Array.from(new Set(n.map(i=>i.id.trim()).filter(Boolean))),Bs={CNY:"¥",USD:"$"},In=(n,i)=>{const s=n==null?void 0:Bs[n.toUpperCase()];return s==null?[n,i].filter(Boolean).join(" "):`${i} ${s}`},Rn=(n,i)=>{var t;if(n==null)return;if(n.kind==="unsupported")return n.reason;if(n.kind==="quota"){if(n.unlimited===!0)return i("config.modelServices.results.unlimitedQuota");const o=i("config.modelServices.results.amountUnknown"),c=n.remaining==null||n.limit==null?n.remaining??n.limit??o:`${n.remaining}/${n.limit}`,m=typeof c=="number"||typeof c=="string"&&c!==o?In(n.currency,String(c)):c,u=n.resetTime==null?void 0:i("config.modelServices.results.resetsAt",{time:n.resetTime}),p=(t=n.windows)==null?void 0:t[0],a=(p==null?void 0:p.remaining)==null||p.limit==null?void 0:i("config.modelServices.results.windowQuota",{amount:`${p.remaining}/${p.limit}`,duration:[p.duration,p.timeUnit].filter(Boolean).join(" ")}),g=n.parallelLimit==null?void 0:i("config.modelServices.results.parallelLimit",{count:n.parallelLimit});return[m,u,a,g].filter(Boolean).join(" · ")}if(n.kind==="cost"){const o=n.amount==null?i("config.modelServices.results.amountUnknown"):String(n.amount);return[n.currency,o,n.period].filter(Boolean).join(" ")}const s=n.available==null?i("config.modelServices.results.amountUnknown"):String(n.available);return In(n.currency,s)},Es=(n,i)=>n.kind==="quota"?i("config.modelServices.results.quota"):i("config.modelServices.results.balance"),Os=(n,i)=>{if(n!=null)return n.description??i(`config.modelServices.status.${n.indicator}`,{defaultValue:n.indicator})},Ks=n=>`config-view__model-service-status config-view__model-service-status--${n??"unknown"}`,Qi=(n,i,s)=>s==null?void 0:n(`config.modelServices.plan.${i}.${s}`,{defaultValue:s}),Ls=n=>{const i=new Set;return n.flatMap(s=>{const t=un(s.url);return t==null||i.has(t)?[]:(i.add(t),[{...s,url:t}])})},vn=({currency:n,limit:i,remaining:s,t,unit:o,unlimited:c})=>{if(c===!0)return t("config.modelServices.results.unlimitedQuota");if(o==="percent"){const l=s??i;return typeof l=="number"?t("config.modelServices.plan.quotaProgress.percentValue",{value:l}):t("config.modelServices.results.amountUnknown")}const m=t("config.modelServices.results.amountUnknown"),u=l=>In(n,String(l)),p=Qi(t,"quotaUnit",o)??o,a=s==null||i==null?s??i??m:`${s} / ${i}`;return[typeof a=="number"||typeof a=="string"&&a!==m?u(a):a,p].filter(Boolean).join(" ")},ri=(n,i,s)=>{if(n==null)return i("config.modelServices.plan.labels.window");if(s==="minute"&&n%60===0)return i("config.modelServices.plan.duration.hours",{count:n/60});const t=s==null?void 0:i(`config.modelServices.plan.timeUnit.${s}`,{defaultValue:s});return t==null?String(n):i("config.modelServices.plan.duration.generic",{count:n,unit:t})},hn=(n,i)=>{if(!(i==null||i<=0||n==null))return Math.max(0,Math.min(100,Math.round(n/i*100)))},Yi=n=>{const i=(n==null?void 0:n.quotaWindows)??[];return i.includes("weekly")?"weekly":i.includes("monthly")?"monthly":void 0},ci=(n,i)=>{const s=Yi(n);return s==null?i("config.modelServices.plan.labels.periodQuota"):i(`config.modelServices.plan.quotaProgress.${s}`)},zs=n=>((n==null?void 0:n.quotaWindows)??[]).filter(i=>i!==Yi(n)),di=(n,i)=>{const s=Qi(i,"quotaWindow",n)??n;return i("config.modelServices.plan.quotaProgress.window",{duration:s})},Us=(n,i)=>i==="5h"?n.find(s=>s.timeUnit==="minute"&&s.duration===300):void 0,_n=(n,i)=>{if(n==null||n.trim()==="")return;const s=new Date(n),t=Number.isNaN(s.getTime())?n:s.toLocaleString();return i("config.modelServices.plan.quotaProgress.resetAt",{time:t})},Zi=({accountError:n,accountStatus:i,canQueryBalance:s=!1,loadingBalance:t=!1,service:o,t:c})=>{const m=Xn(o),u=Bn(o);if(!(u!=null||(m==null?void 0:m.kind)!=null||s||i!=null))return[];const a=(()=>{if(t||s&&i==null&&n==null)return c("config.modelServices.plan.liveQuota.loading");if(n!=null)return n})(),g=(()=>{if(a!=null)return a;if(i!=null)return Rn(i,c)})(),l=(i==null?void 0:i.kind)==="cost"?c("config.modelServices.results.cost"):(i==null?void 0:i.kind)==="balance"||u==null&&(m==null?void 0:m.kind)==null?c("config.modelServices.results.balance"):c("config.modelServices.plan.labels.liveQuota");return(()=>{if((i==null?void 0:i.kind)==="balance"||(i==null?void 0:i.kind)==="cost")return[{key:"balance",label:i.kind==="cost"?c("config.modelServices.results.cost"):c("config.modelServices.results.balance"),value:Rn(i,c)}];const f=zs(m);if((i==null?void 0:i.kind)==="quota"){if(u==null&&(m==null?void 0:m.kind)==null&&f.length===0)return[{key:"quota",label:c("config.modelServices.results.quota"),percent:hn(i.remaining,i.limit),resetTime:_n(i.resetTime,c),showProgress:i.unlimited!==!0&&i.limit!=null,value:vn({currency:i.currency,limit:i.limit,remaining:i.remaining,t:c,unit:i.unit,unlimited:i.unlimited})}];const h=i.windows??[],x=(m==null?void 0:m.quotaUnit)??i.unit;return[...f.length>0?f.map(_=>{const d=Us(h,_);return{key:`window-${_}`,label:d==null?di(_,c):c("config.modelServices.plan.quotaProgress.window",{duration:ri(d.duration,c,d.timeUnit)}),percent:hn(d==null?void 0:d.remaining,d==null?void 0:d.limit),resetTime:_n(d==null?void 0:d.resetTime,c),showProgress:!0,value:vn({limit:d==null?void 0:d.limit,remaining:d==null?void 0:d.remaining,t:c,unit:x,unlimited:i.unlimited})}}):h.map((_,d)=>({key:`window-${d}`,label:c("config.modelServices.plan.quotaProgress.window",{duration:ri(_.duration,c,_.timeUnit)}),percent:hn(_.remaining,_.limit),resetTime:_n(_.resetTime,c),showProgress:!0,value:vn({limit:_.limit,remaining:_.remaining,t:c,unit:x,unlimited:i.unlimited})})),{key:"period",label:ci(m,c),percent:hn(i.remaining,i.limit),resetTime:_n(i.resetTime,c),showProgress:!0,value:vn({limit:i.limit,remaining:i.remaining,t:c,unit:x,unlimited:i.unlimited})}]}return a!=null&&f.length>0?[...f.map(h=>({key:`window-${h}`,label:di(h,c),percent:void 0,showProgress:!0,value:a})),{key:"period",label:ci(m,c),percent:void 0,showProgress:!0,value:a}]:[{key:"fallback",label:l,percent:void 0,showProgress:u!=null||(m==null?void 0:m.kind)!=null,value:g}].filter(h=>h.value!=null&&h.value!=="")})()},qs=({accountError:n,accountStatus:i,canQueryBalance:s=!1,loadingBalance:t=!1,service:o,t:c})=>{const m=Zi({accountError:n,accountStatus:i,canQueryBalance:s,loadingBalance:t,service:o,t:c});return m.length===0?null:e.jsx("div",{className:"config-view__model-service-plan",children:e.jsx("div",{className:"config-view__model-service-quota-list",children:m.map(u=>{const p=u.showProgress??u.percent!=null;return e.jsxs("div",{className:"config-view__model-service-quota-row",children:[e.jsxs("div",{className:"config-view__model-service-quota-head",children:[e.jsx("span",{children:u.label}),u.value!=null&&u.value!==""&&e.jsx("strong",{children:u.value})]}),p&&e.jsx("div",{className:"config-view__model-service-quota-progress",role:u.percent==null?void 0:"progressbar","aria-valuemin":u.percent==null?void 0:0,"aria-valuemax":u.percent==null?void 0:100,"aria-valuenow":u.percent,"aria-label":[u.label,u.value].filter(Boolean).join(" "),children:e.jsx("span",{style:{width:`${u.percent??0}%`}})}),u.resetTime!=null&&e.jsx("div",{className:"config-view__model-service-quota-meta",children:u.resetTime})]},u.key)})})})},Gs=({service:n,t:i})=>{const s=Bn(n);return Ls([{label:i("config.modelServices.plan.links.purchase"),url:s==null?void 0:s.planHomeUrl},{label:i("config.modelServices.plan.links.key"),url:s==null?void 0:s.keyHomeUrl},{label:i("config.modelServices.plan.links.docs"),url:s==null?void 0:s.docsUrl}])},Rs=6e4,Ws=5*6e4,Wn=new Map,Hs=n=>n.kind==="balance"||n.kind==="cost"?Ws:Rs,rn=n=>{const i=Wn.get(n);return i==null?null:i.expiresAt<=Date.now()?(Wn.delete(n),null):i.value},Xi=(n,i)=>{Wn.set(n,{expiresAt:Date.now()+Hs(i),value:i})},Js=new Set(["coding_plan","token_plan","relay_coding_plan"]),Hn=7,xn=2*Math.PI*Hn,mi=90,Qs=n=>n.replace(/^5\s*(?:小时|hour)s?(?:额度| quota)?$/i,"5 h").replace(/^1\s*(?:周|week)(?:额度| quota)?$/i,"1 w").replace(/\s*quota$/i,"").replace(/额度$/,""),Ys=({item:n,serviceKey:i,source:s,t})=>{var Y;const o=w.useMemo(()=>ni(n),[n]),c=Di(o),m=c.provider==null?void 0:Bi(c.provider),u=Xn(o),p=Bn(o),a=((Y=o.management)==null?void 0:Y.enabled)!==!1,g=Ri(m==null?void 0:m.capabilities,a),l=Wi(i,s,o),h=(p!=null||Js.has((u==null?void 0:u.kind)??""))&&g.canQueryBalance,x=w.useRef(null),[j,_]=w.useState(()=>rn(l)),[d,N]=w.useState(null),[C,Q]=w.useState(!1);w.useEffect(()=>{_(rn(l)),N(null),Q(!1)},[l]);const P=w.useCallback(async()=>{N(null),Q(!0);try{const I=await Li(i,{service:o,source:s});Xi(l,I.account),_(I.account)}catch{N(t("config.modelServices.plan.liveQuota.failed"))}finally{Q(!1)}},[o,l,i,s,t]);if(w.useEffect(()=>{if(!h)return;const I=rn(l);if(I!=null){_(I),N(null);return}x.current!==l&&(x.current=l,P())},[h,P,l]),!h)return null;const A=Zi({accountError:d,accountStatus:j,canQueryBalance:g.canQueryBalance,loadingBalance:C,service:o,t}).slice(0,2);return A.length===0?null:e.jsx("div",{className:"config-view__model-service-list-quota","aria-label":t("config.modelServices.plan.labels.liveQuota"),children:A.map(I=>{const G=Qs(I.label),B=Math.max(0,Math.min(100,I.percent??0)),T=B>mi&&B<100?mi:B,Z=xn*(1-T/100),$=I.percent==null&&d==null&&(C||j==null),je=I.percent==null&&d!=null,te=["config-view__model-service-list-quota-circle",$?"is-loading":"",je?"is-error":"",I.percent==null&&!$&&!je?"is-empty":""].filter(Boolean).join(" "),Ie=$?{strokeDasharray:`${xn*.32} ${xn}`,strokeDashoffset:0}:{strokeDasharray:xn,strokeDashoffset:Z};return e.jsxs("div",{className:"config-view__model-service-list-quota-row",children:[e.jsx(ne,{title:[I.label,I.value].filter(Boolean).join(" "),children:e.jsx("div",{className:te,"aria-busy":$||void 0,role:I.percent==null?void 0:"progressbar","aria-valuemin":I.percent==null?void 0:0,"aria-valuemax":I.percent==null?void 0:100,"aria-valuenow":I.percent,"aria-label":[I.label,I.value].filter(Boolean).join(" "),children:e.jsxs("svg",{className:"config-view__model-service-list-quota-svg",viewBox:"0 0 20 20","aria-hidden":"true",focusable:"false",children:[e.jsx("circle",{className:"config-view__model-service-list-quota-track",cx:"10",cy:"10",r:Hn}),e.jsx("circle",{className:"config-view__model-service-list-quota-progress",cx:"10",cy:"10",r:Hn,style:Ie})]})})}),e.jsx("div",{className:"config-view__model-service-list-quota-label",children:G})]},I.key)})})},Te=n=>n!=null&&typeof n=="object"&&!Array.isArray(n),Zs=(n,i)=>n.length===i.length&&n.every((s,t)=>s===i[t]),yn=(n,i)=>JSON.stringify(n)===JSON.stringify(i),es=(n,i)=>i??Si[n]??[],Jn=({field:n,value:i,resolvedValue:s})=>{const t=n.detailCollection;if(n.type!=="detailCollection"||t==null)return[];if(t.collectionKind==="list"){const m=Array.isArray(i)?i.filter(Te):[],u=Array.isArray(s)?s.filter(Te):m,p=t.getMergeKey;if(p!=null){const f=new Map;m.forEach((j,_)=>{const d=p(j);if(d==null||d==="")return;const N=f.get(d)??[];N.push(_),f.set(d,N)});const h=new Set,x=u.map((j,_)=>{var Q;const d=p(j),N=d!=null?(Q=f.get(d))==null?void 0:Q.shift():void 0;if(N==null)return{key:String(_),item:j,index:_,resolvedIndex:_,source:"inherited",resolvedItem:j,hasResolvedOverlay:!1};const C=m[N];return h.add(N),{key:String(_),item:C,index:_,localIndex:N,resolvedIndex:_,source:"local",localItem:C,resolvedItem:j,hasResolvedOverlay:!yn(C,j)}});return m.forEach((j,_)=>{if(h.has(_))return;const d=x.length;x.push({key:String(d),item:j,index:d,localIndex:_,source:"local",localItem:j,resolvedItem:j,hasResolvedOverlay:!1})}),x}const a=Math.max(u.length-m.length,0),g=u.slice(0,a).map((f,h)=>({key:String(h),item:f,index:h,resolvedIndex:h,source:"inherited",resolvedItem:f,hasResolvedOverlay:!1})),l=m.map((f,h)=>{const x=a+h,j=u[x],_=Te(j)?j:f;return{key:String(x),item:f,index:x,localIndex:h,resolvedIndex:x,source:"local",localItem:f,resolvedItem:_,hasResolvedOverlay:!yn(f,_)}});return[...g,...l]}if(t.collectionKind==="recordMap"){const m=Te(i)?i:{},u=Te(s)?s:m,a=Object.keys(u).map((l,f)=>{var d;const h=m[l],x=Te(h)?h:void 0,j=u[l],_=Te(j)?j:((d=t.createItem)==null?void 0:d.call(t,l))??{};return x==null?{key:l,item:_,index:f,resolvedIndex:f,source:"inherited",resolvedItem:_,hasResolvedOverlay:!1}:{key:l,item:x,index:f,resolvedIndex:f,source:"local",localItem:x,resolvedItem:_,hasResolvedOverlay:!yn(x,_)}}),g=Object.keys(m).filter(l=>!Object.hasOwn(u,l)).map((l,f)=>{var j;const h=m[l],x=Te(h)?h:((j=t.createItem)==null?void 0:j.call(t,l))??{};return{key:l,item:x,index:a.length+f,source:"local",localItem:x,resolvedItem:x,hasResolvedOverlay:!1}});return[...a,...g]}const o=Te(i)?i:{},c=Te(s)?s:o;return t.itemKeys.map((m,u)=>{var f;const p=o[m],a=c[m],g=Te(p)?p:void 0,l=Te(a)?a:((f=t.createItem)==null?void 0:f.call(t,m))??{};return{key:m,item:g??l,index:u,resolvedIndex:u,source:g!=null?"local":"inherited",localItem:g,resolvedItem:l,hasResolvedOverlay:g!=null&&!yn(g,l)}})},Xs=(n,i)=>n.find(s=>Zs(s.path,i)),eo=({field:n,sectionKey:i,t:s})=>n.labelKey!=null?s(n.labelKey):nn(s,i,n.path,n.path.at(-1)??i),no=n=>n==null?"root":`${n.kind}:${n.fieldPath.join(".")}:${n.itemKey}:${(n.nestedPath??[]).join("/")}`,on=n=>n==null?"":[...n.fieldPath,n.itemKey,...n.nestedPath??[]].map(i=>encodeURIComponent(i)).join("/"),io=({fields:n,raw:i})=>{const s=i.trim();if(s==="")return null;const o=(()=>{try{return decodeURIComponent(s)}catch{return s}})().split("/").map(m=>m.trim()).filter(m=>m!=="");if(o.length<1)return null;const c=n.filter(m=>m.type==="detailCollection"&&m.detailCollection!=null).sort((m,u)=>u.path.length-m.path.length).find(m=>{var p;if(o.length<m.path.length+1||!m.path.every((a,g)=>a===o[g]))return!1;const u=o[m.path.length]??"";return u===""?!1:((p=m.detailCollection)==null?void 0:p.collectionKind)==="list"?/^\d+$/.test(u):!0});return c==null?null:{kind:"detailCollectionItem",fieldPath:c.path,itemKey:o[c.path.length],...o.length>c.path.length+1?{nestedPath:o.slice(c.path.length+1)}:{}}},ns=({sectionKey:n,fields:i,value:s,resolvedValue:t,route:o,detailContext:c,t:m})=>{var h,x;if(o==null||o.kind!=="detailCollectionItem")return null;const u=es(n,i),p=Xs(u,o.fieldPath);if((p==null?void 0:p.type)!=="detailCollection"||p.detailCollection==null)return null;const g=Jn({field:p,value:Pe(s,p.path),resolvedValue:Pe(t??s,p.path)}).find(j=>j.key===o.itemKey);if(g==null)return null;const l=eo({field:p,sectionKey:n,t:m}),f=((x=(h=p.detailCollection).getBreadcrumbLabel)==null?void 0:x.call(h,g.item,g.key,g.index,c))??p.detailCollection.getItemTitle(g.item,g.key,g.index,c);return{field:p,fieldLabel:l,item:g.item,resolvedItem:g.resolvedItem,itemLabel:f,itemKey:g.key,itemIndex:g.index,localItemIndex:g.localIndex,resolvedItemIndex:g.resolvedIndex,itemSource:g.source,hasResolvedOverlay:g.hasResolvedOverlay}},ui=({mode:n,serviceKey:i,source:s})=>`${s}:modelServices:${n}:${i??"new"}`,is=n=>n==null||n.trim()===""||n.trim().toLowerCase().startsWith("zh")?"zh":"en",Qn=n=>Array.isArray(n)?n.map(Qn):n==null||typeof n!="object"?n:Object.fromEntries(Object.entries(n).map(([i,s])=>[i,/key|token|secret|password/i.test(i)?"<redacted>":Qn(s)])),Yn=(n,i,s="zh")=>{const t=typeof(i==null?void 0:i.title)=="string"?i.title.trim():"";return t!==""?t:(n==null?void 0:n.trim())||(s==="en"?"new model service":"新模型服务")},tt=(n,i={})=>{const s=is(i.language);if(n.mode==="create")return s==="en"?"Add model service config":"新增模型服务配置";const t=Yn(n.serviceKey,n.service,s);return s==="en"?`Update model service: ${t}`:`修改模型服务:${t}`},so=(n,i={})=>{const s=is(i.language),t=n.mode==="create"?s==="en"?"add a model service config":"新增一个模型服务配置":s==="en"?`update model service \`${n.serviceKey??Yn(n.serviceKey,n.service,s)}\``:`修改模型服务 \`${n.serviceKey??Yn(n.serviceKey,n.service,s)}\``,o=n.service==null?void 0:JSON.stringify(Qn(n.service),null,2),c=n.source==="global"?i.globalConfigPath:n.source==="project"?i.projectConfigPath:i.userConfigPath;return s==="en"?[`Please help me ${t}.`,"","Requirements:",`- Current config source: \`${n.source}\`.${c!=null?` Target config file: \`${c}\`.`:""}`,"- Do not expose API keys, secrets, tokens, or other sensitive fields in the reply.","- For official providers, prefer the provider registry defaults for homepage, apiBaseUrl, models, and management/status capabilities. Only write override fields when the user explicitly asks for them.","- Use the built-in `oneworks-model-services` skill/documentation as the user-facing provider guide for provider ids, default API base URLs, portal links, model/balance/status capabilities, and setup workflow. Do not cite local repository paths or RFC files to the user.","- When provider details are needed, read the built-in skill content instead of embedding or inventing a separate provider catalog in the conversation.","- By default, account/API key configuration belongs in global config, not the project directory, unless the user explicitly asks for a project/user override.","- Follow existing config source writeback semantics; do not infer the write target from merged config.","- When UI verification is needed, use browser:control-in-app-browser to inspect the local config page and provider portal.","",n.mode==="update"&&o!=null?["Current service config snapshot (sensitive fields redacted):","```json",o,"```"].join(`
3
3
  `):["When adding a service, first confirm the provider, API key, whether to use the official default API base, whether model/balance/status capabilities are needed, and whether built-in model metadata is needed.","When useful, guide the user to open the provider portal to log in, top up, create a secret, and then return to the config."].join(`
4
4
  `)].join(`
@@ -1,4 +1,4 @@
1
- import{l as g,an as lt,g as b,t as H,d as E,A as j,i as Q,ao as V}from"./mermaid.core-VYJIZL_J.js";import{c as st}from"./createText-1719965b-DPLMqVqY.js";import{l as ct}from"./line-Cdyr_7ve.js";const ht=(a,t,e,i)=>{t.forEach(l=>{wt[l](a,e,i)})},ot=(a,t,e)=>{g.trace("Making markers for ",e),a.append("defs").append("marker").attr("id",e+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},yt=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},pt=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},ft=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},xt=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),a.append("defs").append("marker").attr("id",e+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},dt=(a,t,e)=>{a.append("marker").attr("id",e+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",e+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},gt=(a,t,e)=>{a.append("marker").attr("id",e+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",e+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},ut=(a,t,e)=>{a.append("marker").attr("id",e+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),a.append("marker").attr("id",e+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},bt=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},wt={extension:ot,composition:yt,aggregation:pt,dependency:ft,lollipop:xt,point:dt,circle:gt,cross:ut,barb:bt},hr=ht;function mt(a,t){t&&a.attr("style",t)}function kt(a,t){const e=E(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),i=e.append("xhtml:div"),l=a.label,r=a.isNode?"nodeLabel":"edgeLabel";return i.html(Q('<span class="'+r+'" '+(a.labelStyle?'style="'+a.labelStyle+'"':"")+">"+l+"</span>",t)),mt(i,a.labelStyle),i.style("display","inline-block"),i.style("white-space","nowrap"),i.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}const vt=(a,t,e,i)=>{let l=a||"";typeof l=="object"&&(l=l[0]);const r=b();if(H(r.flowchart.htmlLabels)){l=l.replace(/\\n|\n/g,"<br />"),g.debug("vertexText"+l);const s={isNode:i,label:V(l).replace(/fa[blrs]?:fa-[\w-]+/g,c=>`<i class='${c.replace(":"," ")}'></i>`),labelStyle:t.replace("fill:","color:")};return kt(s,r)}else{const s=document.createElementNS("http://www.w3.org/2000/svg","text");s.setAttribute("style",t.replace("color:","fill:"));let n=[];typeof l=="string"?n=l.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(l)?n=l:n=[];for(const c of n){const o=document.createElementNS("http://www.w3.org/2000/svg","tspan");o.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),o.setAttribute("dy","1em"),o.setAttribute("x","0"),e?o.setAttribute("class","title-row"):o.setAttribute("class","row"),o.textContent=c.trim(),s.appendChild(o)}return s}},R=vt,M=async(a,t,e,i)=>{let l;const r=t.useHtmlLabels||H(b().flowchart.htmlLabels);e?l=e:l="node default";const s=a.insert("g").attr("class",l).attr("id",t.domId||t.id),n=s.insert("g").attr("class","label").attr("style",t.labelStyle);let c;t.labelText===void 0?c="":c=typeof t.labelText=="string"?t.labelText:t.labelText[0];const o=n.node();let h;t.labelType==="markdown"?h=st(n,Q(V(c),b()),{useHtmlLabels:r,width:t.width||b().flowchart.wrappingWidth,classes:"markdown-node-label"}):h=o.appendChild(R(Q(V(c),b()),t.labelStyle,!1,i));let y=h.getBBox();const f=t.padding/2;if(H(b().flowchart.htmlLabels)){const p=h.children[0],d=E(h),k=p.getElementsByTagName("img");if(k){const x=c.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...k].map(u=>new Promise(S=>{function B(){if(u.style.display="flex",u.style.flexDirection="column",x){const C=b().fontSize?b().fontSize:window.getComputedStyle(document.body).fontSize,A=parseInt(C,10)*5+"px";u.style.minWidth=A,u.style.maxWidth=A}else u.style.width="100%";S(u)}setTimeout(()=>{u.complete&&B()}),u.addEventListener("error",B),u.addEventListener("load",B)})))}y=p.getBoundingClientRect(),d.attr("width",y.width),d.attr("height",y.height)}return r?n.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"):n.attr("transform","translate(0, "+-y.height/2+")"),t.centerLabel&&n.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),n.insert("rect",":first-child"),{shapeSvg:s,bbox:y,halfPadding:f,label:n}},m=(a,t)=>{const e=t.node().getBBox();a.width=e.width,a.height=e.height};function I(a,t,e,i){return a.insert("polygon",":first-child").attr("points",i.map(function(l){return l.x+","+l.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+e/2+")")}function Lt(a,t){return a.intersect(t)}function it(a,t,e,i){var l=a.x,r=a.y,s=l-i.x,n=r-i.y,c=Math.sqrt(t*t*n*n+e*e*s*s),o=Math.abs(t*e*s/c);i.x<l&&(o=-o);var h=Math.abs(t*e*n/c);return i.y<r&&(h=-h),{x:l+o,y:r+h}}function St(a,t,e){return it(a,t,t,e)}function Mt(a,t,e,i){var l,r,s,n,c,o,h,y,f,p,d,k,x,u,S;if(l=t.y-a.y,s=a.x-t.x,c=t.x*a.y-a.x*t.y,f=l*e.x+s*e.y+c,p=l*i.x+s*i.y+c,!(f!==0&&p!==0&&J(f,p))&&(r=i.y-e.y,n=e.x-i.x,o=i.x*e.y-e.x*i.y,h=r*a.x+n*a.y+o,y=r*t.x+n*t.y+o,!(h!==0&&y!==0&&J(h,y))&&(d=l*n-r*s,d!==0)))return k=Math.abs(d/2),x=s*o-n*c,u=x<0?(x-k)/d:(x+k)/d,x=r*c-l*o,S=x<0?(x-k)/d:(x+k)/d,{x:u,y:S}}function J(a,t){return a*t>0}function Tt(a,t,e){var i=a.x,l=a.y,r=[],s=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(d){s=Math.min(s,d.x),n=Math.min(n,d.y)}):(s=Math.min(s,t.x),n=Math.min(n,t.y));for(var c=i-a.width/2-s,o=l-a.height/2-n,h=0;h<t.length;h++){var y=t[h],f=t[h<t.length-1?h+1:0],p=Mt(a,e,{x:c+y.x,y:o+y.y},{x:c+f.x,y:o+f.y});p&&r.push(p)}return r.length?(r.length>1&&r.sort(function(d,k){var x=d.x-e.x,u=d.y-e.y,S=Math.sqrt(x*x+u*u),B=k.x-e.x,C=k.y-e.y,X=Math.sqrt(B*B+C*C);return S<X?-1:S===X?0:1}),r[0]):a}const Bt=(a,t)=>{var e=a.x,i=a.y,l=t.x-e,r=t.y-i,s=a.width/2,n=a.height/2,c,o;return Math.abs(r)*s>Math.abs(l)*n?(r<0&&(n=-n),c=r===0?0:n*l/r,o=n):(l<0&&(s=-s),c=s,o=l===0?0:s*r/l),{x:e+c,y:i+o}},Et=Bt,w={node:Lt,circle:St,ellipse:it,polygon:Tt,rect:Et},Ct=async(a,t)=>{t.useHtmlLabels||b().flowchart.htmlLabels||(t.centerLabel=!0);const{shapeSvg:i,bbox:l,halfPadding:r}=await M(a,t,"node "+t.classes,!0);g.info("Classes = ",t.classes);const s=i.insert("rect",":first-child");return s.attr("rx",t.rx).attr("ry",t.ry).attr("x",-l.width/2-r).attr("y",-l.height/2-r).attr("width",l.width+t.padding).attr("height",l.height+t.padding),m(t,s),t.intersect=function(n){return w.rect(t,n)},i},$t=Ct,_t=a=>{const t=new Set;for(const e of a)switch(e){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(e);break}return t},Rt=(a,t,e)=>{const i=_t(a),l=2,r=t.height+2*e.padding,s=r/l,n=t.width+2*s+e.padding,c=e.padding/2;return i.has("right")&&i.has("left")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:s,y:0},{x:n/2,y:2*c},{x:n-s,y:0},{x:n,y:0},{x:n,y:-r/3},{x:n+2*c,y:-r/2},{x:n,y:-2*r/3},{x:n,y:-r},{x:n-s,y:-r},{x:n/2,y:-r-2*c},{x:s,y:-r},{x:0,y:-r},{x:0,y:-2*r/3},{x:-2*c,y:-r/2},{x:0,y:-r/3}]:i.has("right")&&i.has("left")&&i.has("up")?[{x:s,y:0},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:s,y:-r},{x:0,y:-r/2}]:i.has("right")&&i.has("left")&&i.has("down")?[{x:0,y:0},{x:s,y:-r},{x:n-s,y:-r},{x:n,y:0}]:i.has("right")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:n,y:-s},{x:n,y:-r+s},{x:0,y:-r}]:i.has("left")&&i.has("up")&&i.has("down")?[{x:n,y:0},{x:0,y:-s},{x:0,y:-r+s},{x:n,y:-r}]:i.has("right")&&i.has("left")?[{x:s,y:0},{x:s,y:-c},{x:n-s,y:-c},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:n-s,y:-r+c},{x:s,y:-r+c},{x:s,y:-r},{x:0,y:-r/2}]:i.has("up")&&i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:s,y:-c},{x:s,y:-r+c},{x:0,y:-r+c},{x:n/2,y:-r},{x:n,y:-r+c},{x:n-s,y:-r+c},{x:n-s,y:-c},{x:n,y:-c}]:i.has("right")&&i.has("up")?[{x:0,y:0},{x:n,y:-s},{x:0,y:-r}]:i.has("right")&&i.has("down")?[{x:0,y:0},{x:n,y:0},{x:0,y:-r}]:i.has("left")&&i.has("up")?[{x:n,y:0},{x:0,y:-s},{x:n,y:-r}]:i.has("left")&&i.has("down")?[{x:n,y:0},{x:0,y:0},{x:n,y:-r}]:i.has("right")?[{x:s,y:-c},{x:s,y:-c},{x:n-s,y:-c},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:n-s,y:-r+c},{x:s,y:-r+c},{x:s,y:-r+c}]:i.has("left")?[{x:s,y:0},{x:s,y:-c},{x:n-s,y:-c},{x:n-s,y:-r+c},{x:s,y:-r+c},{x:s,y:-r},{x:0,y:-r/2}]:i.has("up")?[{x:s,y:-c},{x:s,y:-r+c},{x:0,y:-r+c},{x:n/2,y:-r},{x:n,y:-r+c},{x:n-s,y:-r+c},{x:n-s,y:-c}]:i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:s,y:-c},{x:s,y:-r+c},{x:n-s,y:-r+c},{x:n-s,y:-c},{x:n,y:-c}]:[{x:0,y:0}]},K=a=>a?" "+a:"",_=(a,t)=>`node default${K(a.classes)} ${K(a.class)}`,P=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=l+r,n=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];g.info("Question main (Circle)");const c=I(e,s,s,n);return c.attr("style",t.style),m(t,c),t.intersect=function(o){return g.warn("Intersect called"),w.polygon(t,n,o)},e},Ht=(a,t)=>{const e=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=28,l=[{x:0,y:i/2},{x:i/2,y:0},{x:0,y:-i/2},{x:-i/2,y:0}];return e.insert("polygon",":first-child").attr("points",l.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(s){return w.circle(t,14,s)},e},It=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=4,r=i.height+t.padding,s=r/l,n=i.width+2*s+t.padding,c=[{x:s,y:0},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:s,y:-r},{x:0,y:-r/2}],o=I(e,n,r,c);return o.attr("style",t.style),m(t,o),t.intersect=function(h){return w.polygon(t,c,h)},e},Nt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,void 0,!0),l=2,r=i.height+2*t.padding,s=r/l,n=i.width+2*s+t.padding,c=Rt(t.directions,i,t),o=I(e,n,r,c);return o.attr("style",t.style),m(t,o),t.intersect=function(h){return w.polygon(t,c,h)},e},Ot=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:-r/2,y:0},{x:l,y:0},{x:l,y:-r},{x:-r/2,y:-r},{x:0,y:-r/2}];return I(e,l,r,s).attr("style",t.style),t.width=l+r,t.height=r,t.intersect=function(c){return w.polygon(t,s,c)},e},Wt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:-2*r/6,y:0},{x:l-r/6,y:0},{x:l+2*r/6,y:-r},{x:r/6,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},Xt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:2*r/6,y:0},{x:l+r/6,y:0},{x:l-2*r/6,y:-r},{x:-r/6,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},Yt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:-2*r/6,y:0},{x:l+2*r/6,y:0},{x:l-r/6,y:-r},{x:r/6,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},At=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:r/6,y:0},{x:l-r/6,y:0},{x:l+2*r/6,y:-r},{x:-2*r/6,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},Dt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:0,y:0},{x:l+r/2,y:0},{x:l,y:-r/2},{x:l+r/2,y:-r},{x:0,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},jt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=l/2,s=r/(2.5+l/50),n=i.height+s+t.padding,c="M 0,"+s+" a "+r+","+s+" 0,0,0 "+l+" 0 a "+r+","+s+" 0,0,0 "+-l+" 0 l 0,"+n+" a "+r+","+s+" 0,0,0 "+l+" 0 l 0,"+-n,o=e.attr("label-offset-y",s).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-l/2+","+-(n/2+s)+")");return m(t,o),t.intersect=function(h){const y=w.rect(t,h),f=y.x-t.x;if(r!=0&&(Math.abs(f)<t.width/2||Math.abs(f)==t.width/2&&Math.abs(y.y-t.y)>t.height/2-s)){let p=s*s*(1-f*f/(r*r));p!=0&&(p=Math.sqrt(p)),p=s-p,h.y-t.y>0&&(p=-p),y.y+=p}return y},e},Ut=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await M(a,t,"node "+t.classes+" "+t.class,!0),r=e.insert("rect",":first-child"),s=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-s/2:-i.width/2-l,o=t.positioned?-n/2:-i.height/2-l;if(r.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",o).attr("width",s).attr("height",n),t.props){const h=new Set(Object.keys(t.props));t.props.borders&&(q(r,t.props.borders,s,n),h.delete("borders")),h.forEach(y=>{g.warn(`Unknown node property ${y}`)})}return m(t,r),t.intersect=function(h){return w.rect(t,h)},e},zt=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await M(a,t,"node "+t.classes,!0),r=e.insert("rect",":first-child"),s=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-s/2:-i.width/2-l,o=t.positioned?-n/2:-i.height/2-l;if(r.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",o).attr("width",s).attr("height",n),t.props){const h=new Set(Object.keys(t.props));t.props.borders&&(q(r,t.props.borders,s,n),h.delete("borders")),h.forEach(y=>{g.warn(`Unknown node property ${y}`)})}return m(t,r),t.intersect=function(h){return w.rect(t,h)},e},Zt=async(a,t)=>{const{shapeSvg:e}=await M(a,t,"label",!0);g.trace("Classes = ",t.class);const i=e.insert("rect",":first-child"),l=0,r=0;if(i.attr("width",l).attr("height",r),e.attr("class","label edgeLabel"),t.props){const s=new Set(Object.keys(t.props));t.props.borders&&(q(i,t.props.borders,l,r),s.delete("borders")),s.forEach(n=>{g.warn(`Unknown node property ${n}`)})}return m(t,i),t.intersect=function(s){return w.rect(t,s)},e};function q(a,t,e,i){const l=[],r=n=>{l.push(n,0)},s=n=>{l.push(0,n)};t.includes("t")?(g.debug("add top border"),r(e)):s(e),t.includes("r")?(g.debug("add right border"),r(i)):s(i),t.includes("b")?(g.debug("add bottom border"),r(e)):s(e),t.includes("l")?(g.debug("add left border"),r(i)):s(i),a.attr("stroke-dasharray",l.join(" "))}const Gt=(a,t)=>{let e;t.classes?e="node "+t.classes:e="node default";const i=a.insert("g").attr("class",e).attr("id",t.domId||t.id),l=i.insert("rect",":first-child"),r=i.insert("line"),s=i.insert("g").attr("class","label"),n=t.labelText.flat?t.labelText.flat():t.labelText;let c="";typeof n=="object"?c=n[0]:c=n,g.info("Label text abc79",c,n,typeof n=="object");const o=s.node().appendChild(R(c,t.labelStyle,!0,!0));let h={width:0,height:0};if(H(b().flowchart.htmlLabels)){const k=o.children[0],x=E(o);h=k.getBoundingClientRect(),x.attr("width",h.width),x.attr("height",h.height)}g.info("Text 2",n);const y=n.slice(1,n.length);let f=o.getBBox();const p=s.node().appendChild(R(y.join?y.join("<br/>"):y,t.labelStyle,!0,!0));if(H(b().flowchart.htmlLabels)){const k=p.children[0],x=E(p);h=k.getBoundingClientRect(),x.attr("width",h.width),x.attr("height",h.height)}const d=t.padding/2;return E(p).attr("transform","translate( "+(h.width>f.width?0:(f.width-h.width)/2)+", "+(f.height+d+5)+")"),E(o).attr("transform","translate( "+(h.width<f.width?0:-(f.width-h.width)/2)+", 0)"),h=s.node().getBBox(),s.attr("transform","translate("+-h.width/2+", "+(-h.height/2-d+3)+")"),l.attr("class","outer title-state").attr("x",-h.width/2-d).attr("y",-h.height/2-d).attr("width",h.width+t.padding).attr("height",h.height+t.padding),r.attr("class","divider").attr("x1",-h.width/2-d).attr("x2",h.width/2+d).attr("y1",-h.height/2-d+f.height+d).attr("y2",-h.height/2-d+f.height+d),m(t,l),t.intersect=function(k){return w.rect(t,k)},i},Ft=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.height+t.padding,r=i.width+l/4+t.padding,s=e.insert("rect",":first-child").attr("style",t.style).attr("rx",l/2).attr("ry",l/2).attr("x",-r/2).attr("y",-l/2).attr("width",r).attr("height",l);return m(t,s),t.intersect=function(n){return w.rect(t,n)},e},Qt=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await M(a,t,_(t),!0),r=e.insert("circle",":first-child");return r.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),g.info("Circle main"),m(t,r),t.intersect=function(s){return g.info("Circle intersect",t,i.width/2+l,s),w.circle(t,i.width/2+l,s)},e},Vt=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await M(a,t,_(t),!0),r=5,s=e.insert("g",":first-child"),n=s.insert("circle"),c=s.insert("circle");return s.attr("class",t.class),n.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l+r).attr("width",i.width+t.padding+r*2).attr("height",i.height+t.padding+r*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),g.info("DoubleCircle main"),m(t,n),t.intersect=function(o){return g.info("DoubleCircle intersect",t,i.width/2+l+r,o),w.circle(t,i.width/2+l+r,o)},e},qt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:0,y:0},{x:l,y:0},{x:l,y:-r},{x:0,y:-r},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-r},{x:-8,y:-r},{x:-8,y:0}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},Jt=(a,t)=>{const e=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=e.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),m(t,i),t.intersect=function(l){return w.circle(t,7,l)},e},tt=(a,t,e)=>{const i=a.insert("g").attr("class","node default").attr("id",t.domId||t.id);let l=70,r=10;e==="LR"&&(l=10,r=70);const s=i.append("rect").attr("x",-1*l/2).attr("y",-1*r/2).attr("width",l).attr("height",r).attr("class","fork-join");return m(t,s),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(n){return w.rect(t,n)},i},Kt=(a,t)=>{const e=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=e.insert("circle",":first-child"),l=e.insert("circle",":first-child");return l.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),i.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),m(t,l),t.intersect=function(r){return w.circle(t,7,r)},e},Pt=(a,t)=>{const e=t.padding/2,i=4,l=8;let r;t.classes?r="node "+t.classes:r="node default";const s=a.insert("g").attr("class",r).attr("id",t.domId||t.id),n=s.insert("rect",":first-child"),c=s.insert("line"),o=s.insert("line");let h=0,y=i;const f=s.insert("g").attr("class","label");let p=0;const d=t.classData.annotations&&t.classData.annotations[0],k=t.classData.annotations[0]?"«"+t.classData.annotations[0]+"»":"",x=f.node().appendChild(R(k,t.labelStyle,!0,!0));let u=x.getBBox();if(H(b().flowchart.htmlLabels)){const v=x.children[0],L=E(x);u=v.getBoundingClientRect(),L.attr("width",u.width),L.attr("height",u.height)}t.classData.annotations[0]&&(y+=u.height+i,h+=u.width);let S=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(b().flowchart.htmlLabels?S+="&lt;"+t.classData.type+"&gt;":S+="<"+t.classData.type+">");const B=f.node().appendChild(R(S,t.labelStyle,!0,!0));E(B).attr("class","classTitle");let C=B.getBBox();if(H(b().flowchart.htmlLabels)){const v=B.children[0],L=E(B);C=v.getBoundingClientRect(),L.attr("width",C.width),L.attr("height",C.height)}y+=C.height+i,C.width>h&&(h=C.width);const X=[];t.classData.members.forEach(v=>{const L=v.getDisplayDetails();let W=L.displayText;b().flowchart.htmlLabels&&(W=W.replace(/</g,"&lt;").replace(/>/g,"&gt;"));const N=f.node().appendChild(R(W,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0));let $=N.getBBox();if(H(b().flowchart.htmlLabels)){const F=N.children[0],D=E(N);$=F.getBoundingClientRect(),D.attr("width",$.width),D.attr("height",$.height)}$.width>h&&(h=$.width),y+=$.height+i,X.push(N)}),y+=l;const A=[];if(t.classData.methods.forEach(v=>{const L=v.getDisplayDetails();let W=L.displayText;b().flowchart.htmlLabels&&(W=W.replace(/</g,"&lt;").replace(/>/g,"&gt;"));const N=f.node().appendChild(R(W,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0));let $=N.getBBox();if(H(b().flowchart.htmlLabels)){const F=N.children[0],D=E(N);$=F.getBoundingClientRect(),D.attr("width",$.width),D.attr("height",$.height)}$.width>h&&(h=$.width),y+=$.height+i,A.push(N)}),y+=l,d){let v=(h-u.width)/2;E(x).attr("transform","translate( "+(-1*h/2+v)+", "+-1*y/2+")"),p=u.height+i}let nt=(h-C.width)/2;return E(B).attr("transform","translate( "+(-1*h/2+nt)+", "+(-1*y/2+p)+")"),p+=C.height+i,c.attr("class","divider").attr("x1",-h/2-e).attr("x2",h/2+e).attr("y1",-y/2-e+l+p).attr("y2",-y/2-e+l+p),p+=l,X.forEach(v=>{E(v).attr("transform","translate( "+-h/2+", "+(-1*y/2+p+l/2)+")");const L=v==null?void 0:v.getBBox();p+=((L==null?void 0:L.height)??0)+i}),p+=l,o.attr("class","divider").attr("x1",-h/2-e).attr("x2",h/2+e).attr("y1",-y/2-e+l+p).attr("y2",-y/2-e+l+p),p+=l,A.forEach(v=>{E(v).attr("transform","translate( "+-h/2+", "+(-1*y/2+p)+")");const L=v==null?void 0:v.getBBox();p+=((L==null?void 0:L.height)??0)+i}),n.attr("style",t.style).attr("class","outer title-state").attr("x",-h/2-e).attr("y",-(y/2)-e).attr("width",h+t.padding).attr("height",y+t.padding),m(t,n),t.intersect=function(v){return w.rect(t,v)},s},rt={rhombus:P,composite:zt,question:P,rect:Ut,labelRect:Zt,rectWithTitle:Gt,choice:Ht,circle:Qt,doublecircle:Vt,stadium:Ft,hexagon:It,block_arrow:Nt,rect_left_inv_arrow:Ot,lean_right:Wt,lean_left:Xt,trapezoid:Yt,inv_trapezoid:At,rect_right_inv_arrow:Dt,cylinder:jt,start:Jt,end:Kt,note:$t,subroutine:qt,fork:tt,join:tt,class_box:Pt};let Y={};const or=async(a,t,e)=>{let i,l;if(t.link){let r;b().securityLevel==="sandbox"?r="_top":t.linkTarget&&(r=t.linkTarget||"_blank"),i=a.insert("svg:a").attr("xlink:href",t.link).attr("target",r),l=await rt[t.shape](i,t,e)}else l=await rt[t.shape](a,t,e),i=l;return t.tooltip&&l.attr("title",t.tooltip),t.class&&l.attr("class","node default "+t.class),i.attr("data-node","true"),i.attr("data-id",t.id),Y[t.id]=i,t.haveCallback&&Y[t.id].attr("class",Y[t.id].attr("class")+" clickable"),i},yr=(a,t)=>{Y[t.id]=a},pr=()=>{Y={}},fr=a=>{const t=Y[a.id];g.trace("Transforming node",a.diff,a,"translate("+(a.x-a.width/2-5)+", "+a.width/2+")");const e=8,i=a.diff||0;return a.clusterNode?t.attr("transform","translate("+(a.x+i-a.width/2)+", "+(a.y-a.height/2-e)+")"):t.attr("transform","translate("+a.x+", "+a.y+")"),i},tr=({flowchart:a})=>{var t,e;const i=((t=a==null?void 0:a.subGraphTitleMargin)==null?void 0:t.top)??0,l=((e=a==null?void 0:a.subGraphTitleMargin)==null?void 0:e.bottom)??0,r=i+l;return{subGraphTitleTopMargin:i,subGraphTitleBottomMargin:l,subGraphTitleTotalMargin:r}},O={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function U(a,t){if(a===void 0||t===void 0)return{angle:0,deltaX:0,deltaY:0};a=Z(a),t=Z(t);const[e,i]=[a.x,a.y],[l,r]=[t.x,t.y],s=l-e,n=r-i;return{angle:Math.atan(n/s),deltaX:s,deltaY:n}}const Z=a=>Array.isArray(a)?{x:a[0],y:a[1]}:a,rr=a=>({x:function(t,e,i){let l=0;if(e===0&&Object.hasOwn(O,a.arrowTypeStart)){const{angle:r,deltaX:s}=U(i[0],i[1]);l=O[a.arrowTypeStart]*Math.cos(r)*(s>=0?1:-1)}else if(e===i.length-1&&Object.hasOwn(O,a.arrowTypeEnd)){const{angle:r,deltaX:s}=U(i[i.length-1],i[i.length-2]);l=O[a.arrowTypeEnd]*Math.cos(r)*(s>=0?1:-1)}return Z(t).x+l},y:function(t,e,i){let l=0;if(e===0&&Object.hasOwn(O,a.arrowTypeStart)){const{angle:r,deltaY:s}=U(i[0],i[1]);l=O[a.arrowTypeStart]*Math.abs(Math.sin(r))*(s>=0?1:-1)}else if(e===i.length-1&&Object.hasOwn(O,a.arrowTypeEnd)){const{angle:r,deltaY:s}=U(i[i.length-1],i[i.length-2]);l=O[a.arrowTypeEnd]*Math.abs(Math.sin(r))*(s>=0?1:-1)}return Z(t).y+l}}),ar=(a,t,e,i,l)=>{t.arrowTypeStart&&at(a,"start",t.arrowTypeStart,e,i,l),t.arrowTypeEnd&&at(a,"end",t.arrowTypeEnd,e,i,l)},er={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},at=(a,t,e,i,l,r)=>{const s=er[e];if(!s){g.warn(`Unknown arrow type: ${e}`);return}const n=t==="start"?"Start":"End";a.attr(`marker-${t}`,`url(${i}#${l}_${r}-${s}${n})`)};let G={},T={};const xr=()=>{G={},T={}},dr=(a,t)=>{const e=H(b().flowchart.htmlLabels),i=t.labelType==="markdown"?st(a,t.label,{style:t.labelStyle,useHtmlLabels:e,addSvgBackground:!0}):R(t.label,t.labelStyle),l=a.insert("g").attr("class","edgeLabel"),r=l.insert("g").attr("class","label");r.node().appendChild(i);let s=i.getBBox();if(e){const c=i.children[0],o=E(i);s=c.getBoundingClientRect(),o.attr("width",s.width),o.attr("height",s.height)}r.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),G[t.id]=l,t.width=s.width,t.height=s.height;let n;if(t.startLabelLeft){const c=R(t.startLabelLeft,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");n=h.node().appendChild(c);const y=c.getBBox();h.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),T[t.id]||(T[t.id]={}),T[t.id].startLeft=o,z(n,t.startLabelLeft)}if(t.startLabelRight){const c=R(t.startLabelRight,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");n=o.node().appendChild(c),h.node().appendChild(c);const y=c.getBBox();h.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),T[t.id]||(T[t.id]={}),T[t.id].startRight=o,z(n,t.startLabelRight)}if(t.endLabelLeft){const c=R(t.endLabelLeft,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");n=h.node().appendChild(c);const y=c.getBBox();h.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),o.node().appendChild(c),T[t.id]||(T[t.id]={}),T[t.id].endLeft=o,z(n,t.endLabelLeft)}if(t.endLabelRight){const c=R(t.endLabelRight,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");n=h.node().appendChild(c);const y=c.getBBox();h.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),o.node().appendChild(c),T[t.id]||(T[t.id]={}),T[t.id].endRight=o,z(n,t.endLabelRight)}return i};function z(a,t){b().flowchart.htmlLabels&&a&&(a.style.width=t.length*9+"px",a.style.height="12px")}const gr=(a,t)=>{g.debug("Moving label abc88 ",a.id,a.label,G[a.id],t);let e=t.updatedPath?t.updatedPath:t.originalPath;const i=b(),{subGraphTitleTotalMargin:l}=tr(i);if(a.label){const r=G[a.id];let s=a.x,n=a.y;if(e){const c=j.calcLabelPosition(e);g.debug("Moving label "+a.label+" from (",s,",",n,") to (",c.x,",",c.y,") abc88"),t.updatedPath&&(s=c.x,n=c.y)}r.attr("transform",`translate(${s}, ${n+l/2})`)}if(a.startLabelLeft){const r=T[a.id].startLeft;let s=a.x,n=a.y;if(e){const c=j.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_left",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}if(a.startLabelRight){const r=T[a.id].startRight;let s=a.x,n=a.y;if(e){const c=j.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_right",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}if(a.endLabelLeft){const r=T[a.id].endLeft;let s=a.x,n=a.y;if(e){const c=j.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_left",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}if(a.endLabelRight){const r=T[a.id].endRight;let s=a.x,n=a.y;if(e){const c=j.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_right",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}},sr=(a,t)=>{const e=a.x,i=a.y,l=Math.abs(t.x-e),r=Math.abs(t.y-i),s=a.width/2,n=a.height/2;return l>=s||r>=n},ir=(a,t,e)=>{g.debug(`intersection calc abc89:
1
+ import{l as g,an as lt,g as b,t as H,d as E,A as j,i as Q,ao as V}from"./mermaid.core-DBYO3wup.js";import{c as st}from"./createText-1719965b-NwleWdyg.js";import{l as ct}from"./line-BqB1JWak.js";const ht=(a,t,e,i)=>{t.forEach(l=>{wt[l](a,e,i)})},ot=(a,t,e)=>{g.trace("Making markers for ",e),a.append("defs").append("marker").attr("id",e+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},yt=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},pt=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},ft=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},xt=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),a.append("defs").append("marker").attr("id",e+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},dt=(a,t,e)=>{a.append("marker").attr("id",e+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",e+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},gt=(a,t,e)=>{a.append("marker").attr("id",e+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",e+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},ut=(a,t,e)=>{a.append("marker").attr("id",e+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),a.append("marker").attr("id",e+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},bt=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},wt={extension:ot,composition:yt,aggregation:pt,dependency:ft,lollipop:xt,point:dt,circle:gt,cross:ut,barb:bt},hr=ht;function mt(a,t){t&&a.attr("style",t)}function kt(a,t){const e=E(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),i=e.append("xhtml:div"),l=a.label,r=a.isNode?"nodeLabel":"edgeLabel";return i.html(Q('<span class="'+r+'" '+(a.labelStyle?'style="'+a.labelStyle+'"':"")+">"+l+"</span>",t)),mt(i,a.labelStyle),i.style("display","inline-block"),i.style("white-space","nowrap"),i.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}const vt=(a,t,e,i)=>{let l=a||"";typeof l=="object"&&(l=l[0]);const r=b();if(H(r.flowchart.htmlLabels)){l=l.replace(/\\n|\n/g,"<br />"),g.debug("vertexText"+l);const s={isNode:i,label:V(l).replace(/fa[blrs]?:fa-[\w-]+/g,c=>`<i class='${c.replace(":"," ")}'></i>`),labelStyle:t.replace("fill:","color:")};return kt(s,r)}else{const s=document.createElementNS("http://www.w3.org/2000/svg","text");s.setAttribute("style",t.replace("color:","fill:"));let n=[];typeof l=="string"?n=l.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(l)?n=l:n=[];for(const c of n){const o=document.createElementNS("http://www.w3.org/2000/svg","tspan");o.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),o.setAttribute("dy","1em"),o.setAttribute("x","0"),e?o.setAttribute("class","title-row"):o.setAttribute("class","row"),o.textContent=c.trim(),s.appendChild(o)}return s}},R=vt,M=async(a,t,e,i)=>{let l;const r=t.useHtmlLabels||H(b().flowchart.htmlLabels);e?l=e:l="node default";const s=a.insert("g").attr("class",l).attr("id",t.domId||t.id),n=s.insert("g").attr("class","label").attr("style",t.labelStyle);let c;t.labelText===void 0?c="":c=typeof t.labelText=="string"?t.labelText:t.labelText[0];const o=n.node();let h;t.labelType==="markdown"?h=st(n,Q(V(c),b()),{useHtmlLabels:r,width:t.width||b().flowchart.wrappingWidth,classes:"markdown-node-label"}):h=o.appendChild(R(Q(V(c),b()),t.labelStyle,!1,i));let y=h.getBBox();const f=t.padding/2;if(H(b().flowchart.htmlLabels)){const p=h.children[0],d=E(h),k=p.getElementsByTagName("img");if(k){const x=c.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...k].map(u=>new Promise(S=>{function B(){if(u.style.display="flex",u.style.flexDirection="column",x){const C=b().fontSize?b().fontSize:window.getComputedStyle(document.body).fontSize,A=parseInt(C,10)*5+"px";u.style.minWidth=A,u.style.maxWidth=A}else u.style.width="100%";S(u)}setTimeout(()=>{u.complete&&B()}),u.addEventListener("error",B),u.addEventListener("load",B)})))}y=p.getBoundingClientRect(),d.attr("width",y.width),d.attr("height",y.height)}return r?n.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"):n.attr("transform","translate(0, "+-y.height/2+")"),t.centerLabel&&n.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),n.insert("rect",":first-child"),{shapeSvg:s,bbox:y,halfPadding:f,label:n}},m=(a,t)=>{const e=t.node().getBBox();a.width=e.width,a.height=e.height};function I(a,t,e,i){return a.insert("polygon",":first-child").attr("points",i.map(function(l){return l.x+","+l.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+e/2+")")}function Lt(a,t){return a.intersect(t)}function it(a,t,e,i){var l=a.x,r=a.y,s=l-i.x,n=r-i.y,c=Math.sqrt(t*t*n*n+e*e*s*s),o=Math.abs(t*e*s/c);i.x<l&&(o=-o);var h=Math.abs(t*e*n/c);return i.y<r&&(h=-h),{x:l+o,y:r+h}}function St(a,t,e){return it(a,t,t,e)}function Mt(a,t,e,i){var l,r,s,n,c,o,h,y,f,p,d,k,x,u,S;if(l=t.y-a.y,s=a.x-t.x,c=t.x*a.y-a.x*t.y,f=l*e.x+s*e.y+c,p=l*i.x+s*i.y+c,!(f!==0&&p!==0&&J(f,p))&&(r=i.y-e.y,n=e.x-i.x,o=i.x*e.y-e.x*i.y,h=r*a.x+n*a.y+o,y=r*t.x+n*t.y+o,!(h!==0&&y!==0&&J(h,y))&&(d=l*n-r*s,d!==0)))return k=Math.abs(d/2),x=s*o-n*c,u=x<0?(x-k)/d:(x+k)/d,x=r*c-l*o,S=x<0?(x-k)/d:(x+k)/d,{x:u,y:S}}function J(a,t){return a*t>0}function Tt(a,t,e){var i=a.x,l=a.y,r=[],s=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(d){s=Math.min(s,d.x),n=Math.min(n,d.y)}):(s=Math.min(s,t.x),n=Math.min(n,t.y));for(var c=i-a.width/2-s,o=l-a.height/2-n,h=0;h<t.length;h++){var y=t[h],f=t[h<t.length-1?h+1:0],p=Mt(a,e,{x:c+y.x,y:o+y.y},{x:c+f.x,y:o+f.y});p&&r.push(p)}return r.length?(r.length>1&&r.sort(function(d,k){var x=d.x-e.x,u=d.y-e.y,S=Math.sqrt(x*x+u*u),B=k.x-e.x,C=k.y-e.y,X=Math.sqrt(B*B+C*C);return S<X?-1:S===X?0:1}),r[0]):a}const Bt=(a,t)=>{var e=a.x,i=a.y,l=t.x-e,r=t.y-i,s=a.width/2,n=a.height/2,c,o;return Math.abs(r)*s>Math.abs(l)*n?(r<0&&(n=-n),c=r===0?0:n*l/r,o=n):(l<0&&(s=-s),c=s,o=l===0?0:s*r/l),{x:e+c,y:i+o}},Et=Bt,w={node:Lt,circle:St,ellipse:it,polygon:Tt,rect:Et},Ct=async(a,t)=>{t.useHtmlLabels||b().flowchart.htmlLabels||(t.centerLabel=!0);const{shapeSvg:i,bbox:l,halfPadding:r}=await M(a,t,"node "+t.classes,!0);g.info("Classes = ",t.classes);const s=i.insert("rect",":first-child");return s.attr("rx",t.rx).attr("ry",t.ry).attr("x",-l.width/2-r).attr("y",-l.height/2-r).attr("width",l.width+t.padding).attr("height",l.height+t.padding),m(t,s),t.intersect=function(n){return w.rect(t,n)},i},$t=Ct,_t=a=>{const t=new Set;for(const e of a)switch(e){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(e);break}return t},Rt=(a,t,e)=>{const i=_t(a),l=2,r=t.height+2*e.padding,s=r/l,n=t.width+2*s+e.padding,c=e.padding/2;return i.has("right")&&i.has("left")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:s,y:0},{x:n/2,y:2*c},{x:n-s,y:0},{x:n,y:0},{x:n,y:-r/3},{x:n+2*c,y:-r/2},{x:n,y:-2*r/3},{x:n,y:-r},{x:n-s,y:-r},{x:n/2,y:-r-2*c},{x:s,y:-r},{x:0,y:-r},{x:0,y:-2*r/3},{x:-2*c,y:-r/2},{x:0,y:-r/3}]:i.has("right")&&i.has("left")&&i.has("up")?[{x:s,y:0},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:s,y:-r},{x:0,y:-r/2}]:i.has("right")&&i.has("left")&&i.has("down")?[{x:0,y:0},{x:s,y:-r},{x:n-s,y:-r},{x:n,y:0}]:i.has("right")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:n,y:-s},{x:n,y:-r+s},{x:0,y:-r}]:i.has("left")&&i.has("up")&&i.has("down")?[{x:n,y:0},{x:0,y:-s},{x:0,y:-r+s},{x:n,y:-r}]:i.has("right")&&i.has("left")?[{x:s,y:0},{x:s,y:-c},{x:n-s,y:-c},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:n-s,y:-r+c},{x:s,y:-r+c},{x:s,y:-r},{x:0,y:-r/2}]:i.has("up")&&i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:s,y:-c},{x:s,y:-r+c},{x:0,y:-r+c},{x:n/2,y:-r},{x:n,y:-r+c},{x:n-s,y:-r+c},{x:n-s,y:-c},{x:n,y:-c}]:i.has("right")&&i.has("up")?[{x:0,y:0},{x:n,y:-s},{x:0,y:-r}]:i.has("right")&&i.has("down")?[{x:0,y:0},{x:n,y:0},{x:0,y:-r}]:i.has("left")&&i.has("up")?[{x:n,y:0},{x:0,y:-s},{x:n,y:-r}]:i.has("left")&&i.has("down")?[{x:n,y:0},{x:0,y:0},{x:n,y:-r}]:i.has("right")?[{x:s,y:-c},{x:s,y:-c},{x:n-s,y:-c},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:n-s,y:-r+c},{x:s,y:-r+c},{x:s,y:-r+c}]:i.has("left")?[{x:s,y:0},{x:s,y:-c},{x:n-s,y:-c},{x:n-s,y:-r+c},{x:s,y:-r+c},{x:s,y:-r},{x:0,y:-r/2}]:i.has("up")?[{x:s,y:-c},{x:s,y:-r+c},{x:0,y:-r+c},{x:n/2,y:-r},{x:n,y:-r+c},{x:n-s,y:-r+c},{x:n-s,y:-c}]:i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:s,y:-c},{x:s,y:-r+c},{x:n-s,y:-r+c},{x:n-s,y:-c},{x:n,y:-c}]:[{x:0,y:0}]},K=a=>a?" "+a:"",_=(a,t)=>`node default${K(a.classes)} ${K(a.class)}`,P=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=l+r,n=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];g.info("Question main (Circle)");const c=I(e,s,s,n);return c.attr("style",t.style),m(t,c),t.intersect=function(o){return g.warn("Intersect called"),w.polygon(t,n,o)},e},Ht=(a,t)=>{const e=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=28,l=[{x:0,y:i/2},{x:i/2,y:0},{x:0,y:-i/2},{x:-i/2,y:0}];return e.insert("polygon",":first-child").attr("points",l.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(s){return w.circle(t,14,s)},e},It=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=4,r=i.height+t.padding,s=r/l,n=i.width+2*s+t.padding,c=[{x:s,y:0},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:s,y:-r},{x:0,y:-r/2}],o=I(e,n,r,c);return o.attr("style",t.style),m(t,o),t.intersect=function(h){return w.polygon(t,c,h)},e},Nt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,void 0,!0),l=2,r=i.height+2*t.padding,s=r/l,n=i.width+2*s+t.padding,c=Rt(t.directions,i,t),o=I(e,n,r,c);return o.attr("style",t.style),m(t,o),t.intersect=function(h){return w.polygon(t,c,h)},e},Ot=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:-r/2,y:0},{x:l,y:0},{x:l,y:-r},{x:-r/2,y:-r},{x:0,y:-r/2}];return I(e,l,r,s).attr("style",t.style),t.width=l+r,t.height=r,t.intersect=function(c){return w.polygon(t,s,c)},e},Wt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:-2*r/6,y:0},{x:l-r/6,y:0},{x:l+2*r/6,y:-r},{x:r/6,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},Xt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:2*r/6,y:0},{x:l+r/6,y:0},{x:l-2*r/6,y:-r},{x:-r/6,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},Yt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:-2*r/6,y:0},{x:l+2*r/6,y:0},{x:l-r/6,y:-r},{x:r/6,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},At=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:r/6,y:0},{x:l-r/6,y:0},{x:l+2*r/6,y:-r},{x:-2*r/6,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},Dt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:0,y:0},{x:l+r/2,y:0},{x:l,y:-r/2},{x:l+r/2,y:-r},{x:0,y:-r}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},jt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=l/2,s=r/(2.5+l/50),n=i.height+s+t.padding,c="M 0,"+s+" a "+r+","+s+" 0,0,0 "+l+" 0 a "+r+","+s+" 0,0,0 "+-l+" 0 l 0,"+n+" a "+r+","+s+" 0,0,0 "+l+" 0 l 0,"+-n,o=e.attr("label-offset-y",s).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-l/2+","+-(n/2+s)+")");return m(t,o),t.intersect=function(h){const y=w.rect(t,h),f=y.x-t.x;if(r!=0&&(Math.abs(f)<t.width/2||Math.abs(f)==t.width/2&&Math.abs(y.y-t.y)>t.height/2-s)){let p=s*s*(1-f*f/(r*r));p!=0&&(p=Math.sqrt(p)),p=s-p,h.y-t.y>0&&(p=-p),y.y+=p}return y},e},Ut=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await M(a,t,"node "+t.classes+" "+t.class,!0),r=e.insert("rect",":first-child"),s=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-s/2:-i.width/2-l,o=t.positioned?-n/2:-i.height/2-l;if(r.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",o).attr("width",s).attr("height",n),t.props){const h=new Set(Object.keys(t.props));t.props.borders&&(q(r,t.props.borders,s,n),h.delete("borders")),h.forEach(y=>{g.warn(`Unknown node property ${y}`)})}return m(t,r),t.intersect=function(h){return w.rect(t,h)},e},zt=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await M(a,t,"node "+t.classes,!0),r=e.insert("rect",":first-child"),s=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-s/2:-i.width/2-l,o=t.positioned?-n/2:-i.height/2-l;if(r.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",o).attr("width",s).attr("height",n),t.props){const h=new Set(Object.keys(t.props));t.props.borders&&(q(r,t.props.borders,s,n),h.delete("borders")),h.forEach(y=>{g.warn(`Unknown node property ${y}`)})}return m(t,r),t.intersect=function(h){return w.rect(t,h)},e},Zt=async(a,t)=>{const{shapeSvg:e}=await M(a,t,"label",!0);g.trace("Classes = ",t.class);const i=e.insert("rect",":first-child"),l=0,r=0;if(i.attr("width",l).attr("height",r),e.attr("class","label edgeLabel"),t.props){const s=new Set(Object.keys(t.props));t.props.borders&&(q(i,t.props.borders,l,r),s.delete("borders")),s.forEach(n=>{g.warn(`Unknown node property ${n}`)})}return m(t,i),t.intersect=function(s){return w.rect(t,s)},e};function q(a,t,e,i){const l=[],r=n=>{l.push(n,0)},s=n=>{l.push(0,n)};t.includes("t")?(g.debug("add top border"),r(e)):s(e),t.includes("r")?(g.debug("add right border"),r(i)):s(i),t.includes("b")?(g.debug("add bottom border"),r(e)):s(e),t.includes("l")?(g.debug("add left border"),r(i)):s(i),a.attr("stroke-dasharray",l.join(" "))}const Gt=(a,t)=>{let e;t.classes?e="node "+t.classes:e="node default";const i=a.insert("g").attr("class",e).attr("id",t.domId||t.id),l=i.insert("rect",":first-child"),r=i.insert("line"),s=i.insert("g").attr("class","label"),n=t.labelText.flat?t.labelText.flat():t.labelText;let c="";typeof n=="object"?c=n[0]:c=n,g.info("Label text abc79",c,n,typeof n=="object");const o=s.node().appendChild(R(c,t.labelStyle,!0,!0));let h={width:0,height:0};if(H(b().flowchart.htmlLabels)){const k=o.children[0],x=E(o);h=k.getBoundingClientRect(),x.attr("width",h.width),x.attr("height",h.height)}g.info("Text 2",n);const y=n.slice(1,n.length);let f=o.getBBox();const p=s.node().appendChild(R(y.join?y.join("<br/>"):y,t.labelStyle,!0,!0));if(H(b().flowchart.htmlLabels)){const k=p.children[0],x=E(p);h=k.getBoundingClientRect(),x.attr("width",h.width),x.attr("height",h.height)}const d=t.padding/2;return E(p).attr("transform","translate( "+(h.width>f.width?0:(f.width-h.width)/2)+", "+(f.height+d+5)+")"),E(o).attr("transform","translate( "+(h.width<f.width?0:-(f.width-h.width)/2)+", 0)"),h=s.node().getBBox(),s.attr("transform","translate("+-h.width/2+", "+(-h.height/2-d+3)+")"),l.attr("class","outer title-state").attr("x",-h.width/2-d).attr("y",-h.height/2-d).attr("width",h.width+t.padding).attr("height",h.height+t.padding),r.attr("class","divider").attr("x1",-h.width/2-d).attr("x2",h.width/2+d).attr("y1",-h.height/2-d+f.height+d).attr("y2",-h.height/2-d+f.height+d),m(t,l),t.intersect=function(k){return w.rect(t,k)},i},Ft=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.height+t.padding,r=i.width+l/4+t.padding,s=e.insert("rect",":first-child").attr("style",t.style).attr("rx",l/2).attr("ry",l/2).attr("x",-r/2).attr("y",-l/2).attr("width",r).attr("height",l);return m(t,s),t.intersect=function(n){return w.rect(t,n)},e},Qt=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await M(a,t,_(t),!0),r=e.insert("circle",":first-child");return r.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),g.info("Circle main"),m(t,r),t.intersect=function(s){return g.info("Circle intersect",t,i.width/2+l,s),w.circle(t,i.width/2+l,s)},e},Vt=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await M(a,t,_(t),!0),r=5,s=e.insert("g",":first-child"),n=s.insert("circle"),c=s.insert("circle");return s.attr("class",t.class),n.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l+r).attr("width",i.width+t.padding+r*2).attr("height",i.height+t.padding+r*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),g.info("DoubleCircle main"),m(t,n),t.intersect=function(o){return g.info("DoubleCircle intersect",t,i.width/2+l+r,o),w.circle(t,i.width/2+l+r,o)},e},qt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await M(a,t,_(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:0,y:0},{x:l,y:0},{x:l,y:-r},{x:0,y:-r},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-r},{x:-8,y:-r},{x:-8,y:0}],n=I(e,l,r,s);return n.attr("style",t.style),m(t,n),t.intersect=function(c){return w.polygon(t,s,c)},e},Jt=(a,t)=>{const e=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=e.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),m(t,i),t.intersect=function(l){return w.circle(t,7,l)},e},tt=(a,t,e)=>{const i=a.insert("g").attr("class","node default").attr("id",t.domId||t.id);let l=70,r=10;e==="LR"&&(l=10,r=70);const s=i.append("rect").attr("x",-1*l/2).attr("y",-1*r/2).attr("width",l).attr("height",r).attr("class","fork-join");return m(t,s),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(n){return w.rect(t,n)},i},Kt=(a,t)=>{const e=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=e.insert("circle",":first-child"),l=e.insert("circle",":first-child");return l.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),i.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),m(t,l),t.intersect=function(r){return w.circle(t,7,r)},e},Pt=(a,t)=>{const e=t.padding/2,i=4,l=8;let r;t.classes?r="node "+t.classes:r="node default";const s=a.insert("g").attr("class",r).attr("id",t.domId||t.id),n=s.insert("rect",":first-child"),c=s.insert("line"),o=s.insert("line");let h=0,y=i;const f=s.insert("g").attr("class","label");let p=0;const d=t.classData.annotations&&t.classData.annotations[0],k=t.classData.annotations[0]?"«"+t.classData.annotations[0]+"»":"",x=f.node().appendChild(R(k,t.labelStyle,!0,!0));let u=x.getBBox();if(H(b().flowchart.htmlLabels)){const v=x.children[0],L=E(x);u=v.getBoundingClientRect(),L.attr("width",u.width),L.attr("height",u.height)}t.classData.annotations[0]&&(y+=u.height+i,h+=u.width);let S=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(b().flowchart.htmlLabels?S+="&lt;"+t.classData.type+"&gt;":S+="<"+t.classData.type+">");const B=f.node().appendChild(R(S,t.labelStyle,!0,!0));E(B).attr("class","classTitle");let C=B.getBBox();if(H(b().flowchart.htmlLabels)){const v=B.children[0],L=E(B);C=v.getBoundingClientRect(),L.attr("width",C.width),L.attr("height",C.height)}y+=C.height+i,C.width>h&&(h=C.width);const X=[];t.classData.members.forEach(v=>{const L=v.getDisplayDetails();let W=L.displayText;b().flowchart.htmlLabels&&(W=W.replace(/</g,"&lt;").replace(/>/g,"&gt;"));const N=f.node().appendChild(R(W,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0));let $=N.getBBox();if(H(b().flowchart.htmlLabels)){const F=N.children[0],D=E(N);$=F.getBoundingClientRect(),D.attr("width",$.width),D.attr("height",$.height)}$.width>h&&(h=$.width),y+=$.height+i,X.push(N)}),y+=l;const A=[];if(t.classData.methods.forEach(v=>{const L=v.getDisplayDetails();let W=L.displayText;b().flowchart.htmlLabels&&(W=W.replace(/</g,"&lt;").replace(/>/g,"&gt;"));const N=f.node().appendChild(R(W,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0));let $=N.getBBox();if(H(b().flowchart.htmlLabels)){const F=N.children[0],D=E(N);$=F.getBoundingClientRect(),D.attr("width",$.width),D.attr("height",$.height)}$.width>h&&(h=$.width),y+=$.height+i,A.push(N)}),y+=l,d){let v=(h-u.width)/2;E(x).attr("transform","translate( "+(-1*h/2+v)+", "+-1*y/2+")"),p=u.height+i}let nt=(h-C.width)/2;return E(B).attr("transform","translate( "+(-1*h/2+nt)+", "+(-1*y/2+p)+")"),p+=C.height+i,c.attr("class","divider").attr("x1",-h/2-e).attr("x2",h/2+e).attr("y1",-y/2-e+l+p).attr("y2",-y/2-e+l+p),p+=l,X.forEach(v=>{E(v).attr("transform","translate( "+-h/2+", "+(-1*y/2+p+l/2)+")");const L=v==null?void 0:v.getBBox();p+=((L==null?void 0:L.height)??0)+i}),p+=l,o.attr("class","divider").attr("x1",-h/2-e).attr("x2",h/2+e).attr("y1",-y/2-e+l+p).attr("y2",-y/2-e+l+p),p+=l,A.forEach(v=>{E(v).attr("transform","translate( "+-h/2+", "+(-1*y/2+p)+")");const L=v==null?void 0:v.getBBox();p+=((L==null?void 0:L.height)??0)+i}),n.attr("style",t.style).attr("class","outer title-state").attr("x",-h/2-e).attr("y",-(y/2)-e).attr("width",h+t.padding).attr("height",y+t.padding),m(t,n),t.intersect=function(v){return w.rect(t,v)},s},rt={rhombus:P,composite:zt,question:P,rect:Ut,labelRect:Zt,rectWithTitle:Gt,choice:Ht,circle:Qt,doublecircle:Vt,stadium:Ft,hexagon:It,block_arrow:Nt,rect_left_inv_arrow:Ot,lean_right:Wt,lean_left:Xt,trapezoid:Yt,inv_trapezoid:At,rect_right_inv_arrow:Dt,cylinder:jt,start:Jt,end:Kt,note:$t,subroutine:qt,fork:tt,join:tt,class_box:Pt};let Y={};const or=async(a,t,e)=>{let i,l;if(t.link){let r;b().securityLevel==="sandbox"?r="_top":t.linkTarget&&(r=t.linkTarget||"_blank"),i=a.insert("svg:a").attr("xlink:href",t.link).attr("target",r),l=await rt[t.shape](i,t,e)}else l=await rt[t.shape](a,t,e),i=l;return t.tooltip&&l.attr("title",t.tooltip),t.class&&l.attr("class","node default "+t.class),i.attr("data-node","true"),i.attr("data-id",t.id),Y[t.id]=i,t.haveCallback&&Y[t.id].attr("class",Y[t.id].attr("class")+" clickable"),i},yr=(a,t)=>{Y[t.id]=a},pr=()=>{Y={}},fr=a=>{const t=Y[a.id];g.trace("Transforming node",a.diff,a,"translate("+(a.x-a.width/2-5)+", "+a.width/2+")");const e=8,i=a.diff||0;return a.clusterNode?t.attr("transform","translate("+(a.x+i-a.width/2)+", "+(a.y-a.height/2-e)+")"):t.attr("transform","translate("+a.x+", "+a.y+")"),i},tr=({flowchart:a})=>{var t,e;const i=((t=a==null?void 0:a.subGraphTitleMargin)==null?void 0:t.top)??0,l=((e=a==null?void 0:a.subGraphTitleMargin)==null?void 0:e.bottom)??0,r=i+l;return{subGraphTitleTopMargin:i,subGraphTitleBottomMargin:l,subGraphTitleTotalMargin:r}},O={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function U(a,t){if(a===void 0||t===void 0)return{angle:0,deltaX:0,deltaY:0};a=Z(a),t=Z(t);const[e,i]=[a.x,a.y],[l,r]=[t.x,t.y],s=l-e,n=r-i;return{angle:Math.atan(n/s),deltaX:s,deltaY:n}}const Z=a=>Array.isArray(a)?{x:a[0],y:a[1]}:a,rr=a=>({x:function(t,e,i){let l=0;if(e===0&&Object.hasOwn(O,a.arrowTypeStart)){const{angle:r,deltaX:s}=U(i[0],i[1]);l=O[a.arrowTypeStart]*Math.cos(r)*(s>=0?1:-1)}else if(e===i.length-1&&Object.hasOwn(O,a.arrowTypeEnd)){const{angle:r,deltaX:s}=U(i[i.length-1],i[i.length-2]);l=O[a.arrowTypeEnd]*Math.cos(r)*(s>=0?1:-1)}return Z(t).x+l},y:function(t,e,i){let l=0;if(e===0&&Object.hasOwn(O,a.arrowTypeStart)){const{angle:r,deltaY:s}=U(i[0],i[1]);l=O[a.arrowTypeStart]*Math.abs(Math.sin(r))*(s>=0?1:-1)}else if(e===i.length-1&&Object.hasOwn(O,a.arrowTypeEnd)){const{angle:r,deltaY:s}=U(i[i.length-1],i[i.length-2]);l=O[a.arrowTypeEnd]*Math.abs(Math.sin(r))*(s>=0?1:-1)}return Z(t).y+l}}),ar=(a,t,e,i,l)=>{t.arrowTypeStart&&at(a,"start",t.arrowTypeStart,e,i,l),t.arrowTypeEnd&&at(a,"end",t.arrowTypeEnd,e,i,l)},er={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},at=(a,t,e,i,l,r)=>{const s=er[e];if(!s){g.warn(`Unknown arrow type: ${e}`);return}const n=t==="start"?"Start":"End";a.attr(`marker-${t}`,`url(${i}#${l}_${r}-${s}${n})`)};let G={},T={};const xr=()=>{G={},T={}},dr=(a,t)=>{const e=H(b().flowchart.htmlLabels),i=t.labelType==="markdown"?st(a,t.label,{style:t.labelStyle,useHtmlLabels:e,addSvgBackground:!0}):R(t.label,t.labelStyle),l=a.insert("g").attr("class","edgeLabel"),r=l.insert("g").attr("class","label");r.node().appendChild(i);let s=i.getBBox();if(e){const c=i.children[0],o=E(i);s=c.getBoundingClientRect(),o.attr("width",s.width),o.attr("height",s.height)}r.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),G[t.id]=l,t.width=s.width,t.height=s.height;let n;if(t.startLabelLeft){const c=R(t.startLabelLeft,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");n=h.node().appendChild(c);const y=c.getBBox();h.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),T[t.id]||(T[t.id]={}),T[t.id].startLeft=o,z(n,t.startLabelLeft)}if(t.startLabelRight){const c=R(t.startLabelRight,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");n=o.node().appendChild(c),h.node().appendChild(c);const y=c.getBBox();h.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),T[t.id]||(T[t.id]={}),T[t.id].startRight=o,z(n,t.startLabelRight)}if(t.endLabelLeft){const c=R(t.endLabelLeft,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");n=h.node().appendChild(c);const y=c.getBBox();h.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),o.node().appendChild(c),T[t.id]||(T[t.id]={}),T[t.id].endLeft=o,z(n,t.endLabelLeft)}if(t.endLabelRight){const c=R(t.endLabelRight,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");n=h.node().appendChild(c);const y=c.getBBox();h.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),o.node().appendChild(c),T[t.id]||(T[t.id]={}),T[t.id].endRight=o,z(n,t.endLabelRight)}return i};function z(a,t){b().flowchart.htmlLabels&&a&&(a.style.width=t.length*9+"px",a.style.height="12px")}const gr=(a,t)=>{g.debug("Moving label abc88 ",a.id,a.label,G[a.id],t);let e=t.updatedPath?t.updatedPath:t.originalPath;const i=b(),{subGraphTitleTotalMargin:l}=tr(i);if(a.label){const r=G[a.id];let s=a.x,n=a.y;if(e){const c=j.calcLabelPosition(e);g.debug("Moving label "+a.label+" from (",s,",",n,") to (",c.x,",",c.y,") abc88"),t.updatedPath&&(s=c.x,n=c.y)}r.attr("transform",`translate(${s}, ${n+l/2})`)}if(a.startLabelLeft){const r=T[a.id].startLeft;let s=a.x,n=a.y;if(e){const c=j.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_left",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}if(a.startLabelRight){const r=T[a.id].startRight;let s=a.x,n=a.y;if(e){const c=j.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_right",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}if(a.endLabelLeft){const r=T[a.id].endLeft;let s=a.x,n=a.y;if(e){const c=j.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_left",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}if(a.endLabelRight){const r=T[a.id].endRight;let s=a.x,n=a.y;if(e){const c=j.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_right",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}},sr=(a,t)=>{const e=a.x,i=a.y,l=Math.abs(t.x-e),r=Math.abs(t.y-i),s=a.width/2,n=a.height/2;return l>=s||r>=n},ir=(a,t,e)=>{g.debug(`intersection calc abc89:
2
2
  outsidePoint: ${JSON.stringify(t)}
3
3
  insidePoint : ${JSON.stringify(e)}
4
4
  node : x:${a.x} y:${a.y} w:${a.width} h:${a.height}`);const i=a.x,l=a.y,r=Math.abs(i-e.x),s=a.width/2;let n=e.x<t.x?s-r:s+r;const c=a.height/2,o=Math.abs(t.y-e.y),h=Math.abs(t.x-e.x);if(Math.abs(l-t.y)*s>Math.abs(i-t.x)*c){let y=e.y<t.y?t.y-c-l:l-c-t.y;n=h*y/o;const f={x:e.x<t.x?e.x+n:e.x-h+n,y:e.y<t.y?e.y+o-y:e.y-o+y};return n===0&&(f.x=t.x,f.y=t.y),h===0&&(f.x=t.x),o===0&&(f.y=t.y),g.debug(`abc89 topp/bott calc, Q ${o}, q ${y}, R ${h}, r ${n}`,f),f}else{e.x<t.x?n=t.x-s-i:n=i-s-t.x;let y=o*n/h,f=e.x<t.x?e.x+h-n:e.x-h+n,p=e.y<t.y?e.y+y:e.y-y;return g.debug(`sides calc abc89, Q ${o}, q ${y}, R ${h}, r ${n}`,{_x:f,_y:p}),n===0&&(f=t.x,p=t.y),h===0&&(f=t.x),o===0&&(p=t.y),{x:f,y:p}}},et=(a,t)=>{g.debug("abc88 cutPathAtIntersect",a,t);let e=[],i=a[0],l=!1;return a.forEach(r=>{if(!sr(t,r)&&!l){const s=ir(t,i,r);let n=!1;e.forEach(c=>{n=n||c.x===s.x&&c.y===s.y}),e.some(c=>c.x===s.x&&c.y===s.y)||e.push(s),l=!0}else i=r,l||e.push(r)}),e},ur=function(a,t,e,i,l,r,s){let n=e.points;g.debug("abc88 InsertEdge: edge=",e,"e=",t);let c=!1;const o=r.node(t.v);var h=r.node(t.w);h!=null&&h.intersect&&(o!=null&&o.intersect)&&(n=n.slice(1,e.points.length-1),n.unshift(o.intersect(n[0])),n.push(h.intersect(n[n.length-1]))),e.toCluster&&(g.debug("to cluster abc88",i[e.toCluster]),n=et(e.points,i[e.toCluster].node),c=!0),e.fromCluster&&(g.debug("from cluster abc88",i[e.fromCluster]),n=et(n.reverse(),i[e.fromCluster].node).reverse(),c=!0);const y=n.filter(C=>!Number.isNaN(C.y));let f=lt;e.curve&&(l==="graph"||l==="flowchart")&&(f=e.curve);const{x:p,y:d}=rr(e),k=ct().x(p).y(d).curve(f);let x;switch(e.thickness){case"normal":x="edge-thickness-normal";break;case"thick":x="edge-thickness-thick";break;case"invisible":x="edge-thickness-thick";break;default:x=""}switch(e.pattern){case"solid":x+=" edge-pattern-solid";break;case"dotted":x+=" edge-pattern-dotted";break;case"dashed":x+=" edge-pattern-dashed";break}const u=a.append("path").attr("d",k(y)).attr("id",e.id).attr("class"," "+x+(e.classes?" "+e.classes:"")).attr("style",e.style);let S="";(b().flowchart.arrowMarkerAbsolute||b().state.arrowMarkerAbsolute)&&(S=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,S=S.replace(/\(/g,"\\("),S=S.replace(/\)/g,"\\)")),ar(u,e,S,s,l);let B={};return c&&(B.updatedPath=n),B.originalPath=e.points,B};export{or as a,dr as b,ur as c,gr as d,Et as e,R as f,tr as g,pr as h,hr as i,xr as j,rr as k,M as l,ar as m,fr as p,yr as s,m as u};
@@ -1,4 +1,4 @@
1
- import{v as Et,x as mt,a as gt,s as kt,b as xt,c as Rt,g as Z,l as V,d as rt,A as Ot,e as bt,z as Nt,an as Tt,as as At}from"./mermaid.core-VYJIZL_J.js";import{G as Mt}from"./graph-BEwlNa_j.js";import{l as St}from"./layout-CRLM1T9z.js";import"./AuthenticatedApp-CK9TT7Nk.js";import{l as wt}from"./line-Cdyr_7ve.js";import"./index-DdUqPqXW.js";import"./vendor-react-CnooHTJc.js";import"./vendor-state-zjcHRN98.js";import"./MobileAwareSelect-CCAQrsxL.js";import"./use-app-preferences-DGCafwsP.js";import"./route-plugin-chrome-bV1HEaju.js";import"./shortcutUtils-B8h6g_7o.js";import"./project-file-tree-icons-CfonMx-1.js";import"./WorkspaceApp-l-h_IsMp.js";import"./index-ZOsqqPVv.js";import"./client-build-info-6B4KoYHs.js";import"./array-BKyUJesY.js";import"./path-CbwjOpE9.js";const It=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Dt(t){return typeof t=="string"&&It.test(t)}const A=[];for(let t=0;t<256;++t)A.push((t+256).toString(16).slice(1));function vt(t,e=0){return A[t[e+0]]+A[t[e+1]]+A[t[e+2]]+A[t[e+3]]+"-"+A[t[e+4]]+A[t[e+5]]+"-"+A[t[e+6]]+A[t[e+7]]+"-"+A[t[e+8]]+A[t[e+9]]+"-"+A[t[e+10]]+A[t[e+11]]+A[t[e+12]]+A[t[e+13]]+A[t[e+14]]+A[t[e+15]]}function Lt(t){if(!Dt(t))throw TypeError("Invalid UUID");let e;const r=new Uint8Array(16);return r[0]=(e=parseInt(t.slice(0,8),16))>>>24,r[1]=e>>>16&255,r[2]=e>>>8&255,r[3]=e&255,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=e&255,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=e&255,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=e&255,r[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,r[11]=e/4294967296&255,r[12]=e>>>24&255,r[13]=e>>>16&255,r[14]=e>>>8&255,r[15]=e&255,r}function Bt(t){t=unescape(encodeURIComponent(t));const e=[];for(let r=0;r<t.length;++r)e.push(t.charCodeAt(r));return e}const Ct="6ba7b810-9dad-11d1-80b4-00c04fd430c8",Pt="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function Yt(t,e,r){function u(l,p,f,o){var h;if(typeof l=="string"&&(l=Bt(l)),typeof p=="string"&&(p=Lt(p)),((h=p)===null||h===void 0?void 0:h.length)!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let _=new Uint8Array(16+l.length);if(_.set(p),_.set(l,p.length),_=r(_),_[6]=_[6]&15|e,_[8]=_[8]&63|128,f){o=o||0;for(let m=0;m<16;++m)f[o+m]=_[m];return f}return vt(_)}try{u.name=t}catch{}return u.DNS=Ct,u.URL=Pt,u}function Zt(t,e,r,u){switch(t){case 0:return e&r^~e&u;case 1:return e^r^u;case 2:return e&r^e&u^r&u;case 3:return e^r^u}}function it(t,e){return t<<e|t>>>32-e}function Ft(t){const e=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t=="string"){const f=unescape(encodeURIComponent(t));t=[];for(let o=0;o<f.length;++o)t.push(f.charCodeAt(o))}else Array.isArray(t)||(t=Array.prototype.slice.call(t));t.push(128);const u=t.length/4+2,l=Math.ceil(u/16),p=new Array(l);for(let f=0;f<l;++f){const o=new Uint32Array(16);for(let h=0;h<16;++h)o[h]=t[f*64+h*4]<<24|t[f*64+h*4+1]<<16|t[f*64+h*4+2]<<8|t[f*64+h*4+3];p[f]=o}p[l-1][14]=(t.length-1)*8/Math.pow(2,32),p[l-1][14]=Math.floor(p[l-1][14]),p[l-1][15]=(t.length-1)*8&4294967295;for(let f=0;f<l;++f){const o=new Uint32Array(80);for(let y=0;y<16;++y)o[y]=p[f][y];for(let y=16;y<80;++y)o[y]=it(o[y-3]^o[y-8]^o[y-14]^o[y-16],1);let h=r[0],_=r[1],m=r[2],g=r[3],x=r[4];for(let y=0;y<80;++y){const N=Math.floor(y/20),I=it(h,5)+Zt(N,_,m,g)+x+e[N]+o[y]>>>0;x=g,g=m,m=it(_,30)>>>0,_=h,h=I}r[0]=r[0]+h>>>0,r[1]=r[1]+_>>>0,r[2]=r[2]+m>>>0,r[3]=r[3]+g>>>0,r[4]=r[4]+x>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,r[0]&255,r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,r[1]&255,r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,r[2]&255,r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,r[3]&255,r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,r[4]&255]}const Wt=Yt("v5",80,Ft);var at=function(){var t=function(S,a,n,c){for(n=n||{},c=S.length;c--;n[S[c]]=a);return n},e=[6,8,10,20,22,24,26,27,28],r=[1,10],u=[1,11],l=[1,12],p=[1,13],f=[1,14],o=[1,15],h=[1,21],_=[1,22],m=[1,23],g=[1,24],x=[1,25],y=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],N=[1,34],I=[27,28,46,47],F=[41,42,43,44,45],W=[17,34],C=[1,54],T=[1,53],M=[17,34,36,38],R={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:function(a,n,c,d,E,i,K){var s=i.length-1;switch(E){case 1:break;case 2:this.$=[];break;case 3:i[s-1].push(i[s]),this.$=i[s-1];break;case 4:case 5:this.$=i[s];break;case 6:case 7:this.$=[];break;case 8:d.addEntity(i[s-4]),d.addEntity(i[s-2]),d.addRelationship(i[s-4],i[s],i[s-2],i[s-3]);break;case 9:d.addEntity(i[s-3]),d.addAttributes(i[s-3],i[s-1]);break;case 10:d.addEntity(i[s-2]);break;case 11:d.addEntity(i[s]);break;case 12:d.addEntity(i[s-6],i[s-4]),d.addAttributes(i[s-6],i[s-1]);break;case 13:d.addEntity(i[s-5],i[s-3]);break;case 14:d.addEntity(i[s-3],i[s-1]);break;case 15:case 16:this.$=i[s].trim(),d.setAccTitle(this.$);break;case 17:case 18:this.$=i[s].trim(),d.setAccDescription(this.$);break;case 19:case 43:this.$=i[s];break;case 20:case 41:case 42:this.$=i[s].replace(/"/g,"");break;case 21:case 29:this.$=[i[s]];break;case 22:i[s].push(i[s-1]),this.$=i[s];break;case 23:this.$={attributeType:i[s-1],attributeName:i[s]};break;case 24:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeKeyTypeList:i[s]};break;case 25:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeComment:i[s]};break;case 26:this.$={attributeType:i[s-3],attributeName:i[s-2],attributeKeyTypeList:i[s-1],attributeComment:i[s]};break;case 27:case 28:case 31:this.$=i[s];break;case 30:i[s-2].push(i[s]),this.$=i[s-2];break;case 32:this.$=i[s].replace(/"/g,"");break;case 33:this.$={cardA:i[s],relType:i[s-1],cardB:i[s-2]};break;case 34:this.$=d.Cardinality.ZERO_OR_ONE;break;case 35:this.$=d.Cardinality.ZERO_OR_MORE;break;case 36:this.$=d.Cardinality.ONE_OR_MORE;break;case 37:this.$=d.Cardinality.ONLY_ONE;break;case 38:this.$=d.Cardinality.MD_PARENT;break;case 39:this.$=d.Identification.NON_IDENTIFYING;break;case 40:this.$=d.Identification.IDENTIFYING;break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:r,22:u,24:l,26:p,27:f,28:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:16,11:9,20:r,22:u,24:l,26:p,27:f,28:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:h,42:_,43:m,44:g,45:x}),{21:[1,26]},{23:[1,27]},{25:[1,28]},t(e,[2,18]),t(y,[2,19]),t(y,[2,20]),t(e,[2,4]),{11:29,27:f,28:o},{16:30,17:[1,31],29:32,30:33,34:N},{11:35,27:f,28:o},{40:36,46:[1,37],47:[1,38]},t(I,[2,34]),t(I,[2,35]),t(I,[2,36]),t(I,[2,37]),t(I,[2,38]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),{13:[1,39]},{17:[1,40]},t(e,[2,10]),{16:41,17:[2,21],29:32,30:33,34:N},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:h,42:_,43:m,44:g,45:x},t(F,[2,39]),t(F,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},t(e,[2,9]),{17:[2,22]},t(W,[2,23],{32:50,33:51,35:52,37:C,38:T}),t([17,34,37,38],[2,28]),t(e,[2,14],{15:[1,55]}),t([27,28],[2,33]),t(e,[2,8]),t(e,[2,41]),t(e,[2,42]),t(e,[2,43]),t(W,[2,24],{33:56,36:[1,57],38:T}),t(W,[2,25]),t(M,[2,29]),t(W,[2,32]),t(M,[2,31]),{16:58,17:[1,59],29:32,30:33,34:N},t(W,[2,26]),{35:60,37:C},{17:[1,61]},t(e,[2,13]),t(M,[2,30]),t(e,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:function(a,n){if(n.recoverable)this.trace(a);else{var c=new Error(a);throw c.hash=n,c}},parse:function(a){var n=this,c=[0],d=[],E=[null],i=[],K=this.table,s="",Q=0,st=0,ft=2,ot=1,yt=i.slice.call(arguments,1),b=Object.create(this.lexer),z={yy:{}};for(var J in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J)&&(z.yy[J]=this.yy[J]);b.setInput(a,z.yy),z.yy.lexer=b,z.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var $=b.yylloc;i.push($);var pt=b.options&&b.options.ranges;typeof z.yy.parseError=="function"?this.parseError=z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _t(){var Y;return Y=d.pop()||b.lex()||ot,typeof Y!="number"&&(Y instanceof Array&&(d=Y,Y=d.pop()),Y=n.symbols_[Y]||Y),Y}for(var w,H,D,tt,G={},j,P,lt,q;;){if(H=c[c.length-1],this.defaultActions[H]?D=this.defaultActions[H]:((w===null||typeof w>"u")&&(w=_t()),D=K[H]&&K[H][w]),typeof D>"u"||!D.length||!D[0]){var et="";q=[];for(j in K[H])this.terminals_[j]&&j>ft&&q.push("'"+this.terminals_[j]+"'");b.showPosition?et="Parse error on line "+(Q+1)+`:
1
+ import{v as Et,x as mt,a as gt,s as kt,b as xt,c as Rt,g as Z,l as V,d as rt,A as Ot,e as bt,z as Nt,an as Tt,as as At}from"./mermaid.core-DBYO3wup.js";import{G as Mt}from"./graph-DKmOtEDg.js";import{l as St}from"./layout-Q0dn6j1W.js";import"./AuthenticatedApp-CjqSg3Fe.js";import{l as wt}from"./line-BqB1JWak.js";import"./index-DgZk1SFp.js";import"./vendor-react-CnooHTJc.js";import"./vendor-state-Djj0Jjxr.js";import"./MobileAwareSelect-C3a67aGF.js";import"./use-app-preferences-BZCemhY7.js";import"./route-plugin-chrome-DI32l8cC.js";import"./shortcutUtils-HFKOHIG8.js";import"./project-file-tree-icons-Iz30jDs3.js";import"./WorkspaceApp-CokR7Tpr.js";import"./index-aZ1QdVqZ.js";import"./client-build-info-tgdsIlyX.js";import"./array-BKyUJesY.js";import"./path-CbwjOpE9.js";const It=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Dt(t){return typeof t=="string"&&It.test(t)}const A=[];for(let t=0;t<256;++t)A.push((t+256).toString(16).slice(1));function vt(t,e=0){return A[t[e+0]]+A[t[e+1]]+A[t[e+2]]+A[t[e+3]]+"-"+A[t[e+4]]+A[t[e+5]]+"-"+A[t[e+6]]+A[t[e+7]]+"-"+A[t[e+8]]+A[t[e+9]]+"-"+A[t[e+10]]+A[t[e+11]]+A[t[e+12]]+A[t[e+13]]+A[t[e+14]]+A[t[e+15]]}function Lt(t){if(!Dt(t))throw TypeError("Invalid UUID");let e;const r=new Uint8Array(16);return r[0]=(e=parseInt(t.slice(0,8),16))>>>24,r[1]=e>>>16&255,r[2]=e>>>8&255,r[3]=e&255,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=e&255,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=e&255,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=e&255,r[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,r[11]=e/4294967296&255,r[12]=e>>>24&255,r[13]=e>>>16&255,r[14]=e>>>8&255,r[15]=e&255,r}function Bt(t){t=unescape(encodeURIComponent(t));const e=[];for(let r=0;r<t.length;++r)e.push(t.charCodeAt(r));return e}const Ct="6ba7b810-9dad-11d1-80b4-00c04fd430c8",Pt="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function Yt(t,e,r){function u(l,p,f,o){var h;if(typeof l=="string"&&(l=Bt(l)),typeof p=="string"&&(p=Lt(p)),((h=p)===null||h===void 0?void 0:h.length)!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let _=new Uint8Array(16+l.length);if(_.set(p),_.set(l,p.length),_=r(_),_[6]=_[6]&15|e,_[8]=_[8]&63|128,f){o=o||0;for(let m=0;m<16;++m)f[o+m]=_[m];return f}return vt(_)}try{u.name=t}catch{}return u.DNS=Ct,u.URL=Pt,u}function Zt(t,e,r,u){switch(t){case 0:return e&r^~e&u;case 1:return e^r^u;case 2:return e&r^e&u^r&u;case 3:return e^r^u}}function it(t,e){return t<<e|t>>>32-e}function Ft(t){const e=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t=="string"){const f=unescape(encodeURIComponent(t));t=[];for(let o=0;o<f.length;++o)t.push(f.charCodeAt(o))}else Array.isArray(t)||(t=Array.prototype.slice.call(t));t.push(128);const u=t.length/4+2,l=Math.ceil(u/16),p=new Array(l);for(let f=0;f<l;++f){const o=new Uint32Array(16);for(let h=0;h<16;++h)o[h]=t[f*64+h*4]<<24|t[f*64+h*4+1]<<16|t[f*64+h*4+2]<<8|t[f*64+h*4+3];p[f]=o}p[l-1][14]=(t.length-1)*8/Math.pow(2,32),p[l-1][14]=Math.floor(p[l-1][14]),p[l-1][15]=(t.length-1)*8&4294967295;for(let f=0;f<l;++f){const o=new Uint32Array(80);for(let y=0;y<16;++y)o[y]=p[f][y];for(let y=16;y<80;++y)o[y]=it(o[y-3]^o[y-8]^o[y-14]^o[y-16],1);let h=r[0],_=r[1],m=r[2],g=r[3],x=r[4];for(let y=0;y<80;++y){const N=Math.floor(y/20),I=it(h,5)+Zt(N,_,m,g)+x+e[N]+o[y]>>>0;x=g,g=m,m=it(_,30)>>>0,_=h,h=I}r[0]=r[0]+h>>>0,r[1]=r[1]+_>>>0,r[2]=r[2]+m>>>0,r[3]=r[3]+g>>>0,r[4]=r[4]+x>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,r[0]&255,r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,r[1]&255,r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,r[2]&255,r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,r[3]&255,r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,r[4]&255]}const Wt=Yt("v5",80,Ft);var at=function(){var t=function(S,a,n,c){for(n=n||{},c=S.length;c--;n[S[c]]=a);return n},e=[6,8,10,20,22,24,26,27,28],r=[1,10],u=[1,11],l=[1,12],p=[1,13],f=[1,14],o=[1,15],h=[1,21],_=[1,22],m=[1,23],g=[1,24],x=[1,25],y=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],N=[1,34],I=[27,28,46,47],F=[41,42,43,44,45],W=[17,34],C=[1,54],T=[1,53],M=[17,34,36,38],R={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:function(a,n,c,d,E,i,K){var s=i.length-1;switch(E){case 1:break;case 2:this.$=[];break;case 3:i[s-1].push(i[s]),this.$=i[s-1];break;case 4:case 5:this.$=i[s];break;case 6:case 7:this.$=[];break;case 8:d.addEntity(i[s-4]),d.addEntity(i[s-2]),d.addRelationship(i[s-4],i[s],i[s-2],i[s-3]);break;case 9:d.addEntity(i[s-3]),d.addAttributes(i[s-3],i[s-1]);break;case 10:d.addEntity(i[s-2]);break;case 11:d.addEntity(i[s]);break;case 12:d.addEntity(i[s-6],i[s-4]),d.addAttributes(i[s-6],i[s-1]);break;case 13:d.addEntity(i[s-5],i[s-3]);break;case 14:d.addEntity(i[s-3],i[s-1]);break;case 15:case 16:this.$=i[s].trim(),d.setAccTitle(this.$);break;case 17:case 18:this.$=i[s].trim(),d.setAccDescription(this.$);break;case 19:case 43:this.$=i[s];break;case 20:case 41:case 42:this.$=i[s].replace(/"/g,"");break;case 21:case 29:this.$=[i[s]];break;case 22:i[s].push(i[s-1]),this.$=i[s];break;case 23:this.$={attributeType:i[s-1],attributeName:i[s]};break;case 24:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeKeyTypeList:i[s]};break;case 25:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeComment:i[s]};break;case 26:this.$={attributeType:i[s-3],attributeName:i[s-2],attributeKeyTypeList:i[s-1],attributeComment:i[s]};break;case 27:case 28:case 31:this.$=i[s];break;case 30:i[s-2].push(i[s]),this.$=i[s-2];break;case 32:this.$=i[s].replace(/"/g,"");break;case 33:this.$={cardA:i[s],relType:i[s-1],cardB:i[s-2]};break;case 34:this.$=d.Cardinality.ZERO_OR_ONE;break;case 35:this.$=d.Cardinality.ZERO_OR_MORE;break;case 36:this.$=d.Cardinality.ONE_OR_MORE;break;case 37:this.$=d.Cardinality.ONLY_ONE;break;case 38:this.$=d.Cardinality.MD_PARENT;break;case 39:this.$=d.Identification.NON_IDENTIFYING;break;case 40:this.$=d.Identification.IDENTIFYING;break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:r,22:u,24:l,26:p,27:f,28:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:16,11:9,20:r,22:u,24:l,26:p,27:f,28:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:h,42:_,43:m,44:g,45:x}),{21:[1,26]},{23:[1,27]},{25:[1,28]},t(e,[2,18]),t(y,[2,19]),t(y,[2,20]),t(e,[2,4]),{11:29,27:f,28:o},{16:30,17:[1,31],29:32,30:33,34:N},{11:35,27:f,28:o},{40:36,46:[1,37],47:[1,38]},t(I,[2,34]),t(I,[2,35]),t(I,[2,36]),t(I,[2,37]),t(I,[2,38]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),{13:[1,39]},{17:[1,40]},t(e,[2,10]),{16:41,17:[2,21],29:32,30:33,34:N},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:h,42:_,43:m,44:g,45:x},t(F,[2,39]),t(F,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},t(e,[2,9]),{17:[2,22]},t(W,[2,23],{32:50,33:51,35:52,37:C,38:T}),t([17,34,37,38],[2,28]),t(e,[2,14],{15:[1,55]}),t([27,28],[2,33]),t(e,[2,8]),t(e,[2,41]),t(e,[2,42]),t(e,[2,43]),t(W,[2,24],{33:56,36:[1,57],38:T}),t(W,[2,25]),t(M,[2,29]),t(W,[2,32]),t(M,[2,31]),{16:58,17:[1,59],29:32,30:33,34:N},t(W,[2,26]),{35:60,37:C},{17:[1,61]},t(e,[2,13]),t(M,[2,30]),t(e,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:function(a,n){if(n.recoverable)this.trace(a);else{var c=new Error(a);throw c.hash=n,c}},parse:function(a){var n=this,c=[0],d=[],E=[null],i=[],K=this.table,s="",Q=0,st=0,ft=2,ot=1,yt=i.slice.call(arguments,1),b=Object.create(this.lexer),z={yy:{}};for(var J in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J)&&(z.yy[J]=this.yy[J]);b.setInput(a,z.yy),z.yy.lexer=b,z.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var $=b.yylloc;i.push($);var pt=b.options&&b.options.ranges;typeof z.yy.parseError=="function"?this.parseError=z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _t(){var Y;return Y=d.pop()||b.lex()||ot,typeof Y!="number"&&(Y instanceof Array&&(d=Y,Y=d.pop()),Y=n.symbols_[Y]||Y),Y}for(var w,H,D,tt,G={},j,P,lt,q;;){if(H=c[c.length-1],this.defaultActions[H]?D=this.defaultActions[H]:((w===null||typeof w>"u")&&(w=_t()),D=K[H]&&K[H][w]),typeof D>"u"||!D.length||!D[0]){var et="";q=[];for(j in K[H])this.terminals_[j]&&j>ft&&q.push("'"+this.terminals_[j]+"'");b.showPosition?et="Parse error on line "+(Q+1)+`:
2
2
  `+b.showPosition()+`
3
3
  Expecting `+q.join(", ")+", got '"+(this.terminals_[w]||w)+"'":et="Parse error on line "+(Q+1)+": Unexpected "+(w==ot?"end of input":"'"+(this.terminals_[w]||w)+"'"),this.parseError(et,{text:b.match,token:this.terminals_[w]||w,line:b.yylineno,loc:$,expected:q})}if(D[0]instanceof Array&&D.length>1)throw new Error("Parse Error: multiple actions possible at state: "+H+", token: "+w);switch(D[0]){case 1:c.push(w),E.push(b.yytext),i.push(b.yylloc),c.push(D[1]),w=null,st=b.yyleng,s=b.yytext,Q=b.yylineno,$=b.yylloc;break;case 2:if(P=this.productions_[D[1]][1],G.$=E[E.length-P],G._$={first_line:i[i.length-(P||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(P||1)].first_column,last_column:i[i.length-1].last_column},pt&&(G._$.range=[i[i.length-(P||1)].range[0],i[i.length-1].range[1]]),tt=this.performAction.apply(G,[s,st,Q,z.yy,D[1],E,i].concat(yt)),typeof tt<"u")return tt;P&&(c=c.slice(0,-1*P*2),E=E.slice(0,-1*P),i=i.slice(0,-1*P)),c.push(this.productions_[D[1]][0]),E.push(G.$),i.push(G._$),lt=K[c[c.length-2]][c[c.length-1]],c.push(lt);break;case 3:return!0}}return!0}},O=function(){var S={EOF:1,parseError:function(n,c){if(this.yy.parser)this.yy.parser.parseError(n,c);else throw new Error(n)},setInput:function(a,n){return this.yy=n||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var n=a.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},unput:function(a){var n=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var E=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[E[0],E[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(a){this.unput(this.match.slice(a))},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),n=new Array(a.length+1).join("-");return a+this.upcomingInput()+`
@@ -1,4 +1,4 @@
1
- import{v as me,x as ye,s as ve,a as Ve,b as Le,c as Ie,y as Re,k as Ne,l as J1,g as et,z as we,A as dt,d as w1}from"./mermaid.core-VYJIZL_J.js";var pt=function(){var e=function(f1,a,o,f){for(o=o||{},f=f1.length;f--;o[f1[f]]=a);return o},u=[1,4],i=[1,3],n=[1,5],c=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],l=[2,2],h=[1,13],U=[1,14],F=[1,15],w=[1,16],X=[1,23],o1=[1,25],p1=[1,26],A1=[1,27],C=[1,49],k=[1,48],l1=[1,29],U1=[1,30],G1=[1,31],M1=[1,32],K1=[1,33],x=[1,44],B=[1,46],m=[1,42],y=[1,47],v=[1,43],V=[1,50],L=[1,45],I=[1,51],R=[1,52],Y1=[1,34],j1=[1,35],z1=[1,36],X1=[1,37],I1=[1,57],b=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],q=[1,61],Q=[1,60],Z=[1,62],H1=[8,9,11,73,75],k1=[1,88],b1=[1,93],g1=[1,92],D1=[1,89],F1=[1,85],T1=[1,91],S1=[1,87],C1=[1,94],_1=[1,90],x1=[1,95],B1=[1,86],W1=[8,9,10,11,73,75],N=[8,9,10,11,44,73,75],M=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],Et=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],R1=[42,58,86,99,102,103,106,108,111,112,113],kt=[1,121],bt=[1,120],gt=[1,128],Dt=[1,142],Ft=[1,143],Tt=[1,144],St=[1,145],Ct=[1,130],_t=[1,132],xt=[1,136],Bt=[1,137],mt=[1,138],yt=[1,139],vt=[1,140],Vt=[1,141],Lt=[1,146],It=[1,147],Rt=[1,126],Nt=[1,127],wt=[1,134],Ot=[1,129],Pt=[1,133],Ut=[1,131],nt=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],Gt=[1,149],T=[8,9,11],K=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],p=[1,169],O=[1,165],P=[1,166],A=[1,170],d=[1,167],E=[1,168],m1=[75,113,116],g=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],Mt=[10,103],h1=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],J=[1,235],$=[1,233],t1=[1,237],e1=[1,231],s1=[1,232],u1=[1,234],i1=[1,236],r1=[1,238],y1=[1,255],Kt=[8,9,11,103],W=[8,9,10,11,58,81,102,103,106,107,108,109],at={trace:function(){},yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING[value]",60:"PIPE",61:"CYLINDERSTART",62:"CYLINDEREND",63:"DIAMOND_START",64:"DIAMOND_STOP",65:"TAGEND",66:"TRAPSTART",67:"TRAPEND",68:"INVTRAPSTART",69:"INVTRAPEND",72:"TESTSTR",73:"START_LINK",75:"LINK",77:"STR",78:"MD_STR",81:"STYLE",82:"LINKSTYLE",83:"CLASSDEF",84:"CLASS",85:"CLICK",86:"DOWN",87:"UP",90:"idString[vertex]",91:"idString[class]",92:"CALLBACKNAME",93:"CALLBACKARGS",94:"HREF",95:"LINK_TARGET",96:"STR[link]",97:"STR[tooltip]",99:"DEFAULT",101:"INTERPOLATE",102:"NUM",103:"COMMA",106:"NODE_STRING",107:"UNIT",108:"BRKT",109:"PCT",111:"MINUS",112:"MULT",113:"UNICODE_TEXT",114:"TEXT",115:"TAGSTART",116:"EDGE_TEXT",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[20,3],[20,4],[20,2],[20,1],[40,1],[40,5],[41,1],[41,3],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,8],[43,4],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,4],[43,4],[43,1],[39,2],[39,3],[39,3],[39,1],[39,3],[74,1],[74,2],[74,1],[74,1],[70,1],[71,3],[30,1],[30,2],[30,1],[30,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[100,1],[100,3],[89,1],[89,3],[104,1],[104,2],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[79,1],[79,1],[79,1],[79,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[76,1],[76,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[45,1],[45,2],[98,1],[98,2],[33,1],[33,1],[33,1],[33,1]],performAction:function(a,o,f,r,S,t,N1){var s=t.length-1;switch(S){case 2:this.$=[];break;case 3:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 176:this.$=t[s];break;case 11:r.setDirection("TB"),this.$="TB";break;case 12:r.setDirection(t[s-1]),this.$=t[s-1];break;case 27:this.$=t[s-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=r.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 34:this.$=r.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 35:this.$=r.addSubGraph(void 0,t[s-1],void 0);break;case 37:this.$=t[s].trim(),r.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),r.setAccDescription(this.$);break;case 43:r.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 44:r.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 45:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 46:this.$={stmt:t[s],nodes:t[s]};break;case 47:this.$=[t[s]];break;case 48:this.$=t[s-4].concat(t[s]);break;case 49:this.$=t[s];break;case 50:this.$=t[s-2],r.setClass(t[s-2],t[s]);break;case 51:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"square");break;case 52:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"doublecircle");break;case 53:this.$=t[s-5],r.addVertex(t[s-5],t[s-2],"circle");break;case 54:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"ellipse");break;case 55:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"stadium");break;case 56:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"subroutine");break;case 57:this.$=t[s-7],r.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 58:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"cylinder");break;case 59:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"round");break;case 60:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"diamond");break;case 61:this.$=t[s-5],r.addVertex(t[s-5],t[s-2],"hexagon");break;case 62:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"odd");break;case 63:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"trapezoid");break;case 64:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 65:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"lean_right");break;case 66:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"lean_left");break;case 67:this.$=t[s],r.addVertex(t[s]);break;case 68:t[s-1].text=t[s],this.$=t[s-1];break;case 69:case 70:t[s-2].text=t[s-1],this.$=t[s-2];break;case 71:this.$=t[s];break;case 72:var Y=r.destructLink(t[s],t[s-2]);this.$={type:Y.type,stroke:Y.stroke,length:Y.length,text:t[s-1]};break;case 73:this.$={text:t[s],type:"text"};break;case 74:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 75:this.$={text:t[s],type:"string"};break;case 76:this.$={text:t[s],type:"markdown"};break;case 77:var Y=r.destructLink(t[s]);this.$={type:Y.type,stroke:Y.stroke,length:Y.length};break;case 78:this.$=t[s-1];break;case 79:this.$={text:t[s],type:"text"};break;case 80:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 81:this.$={text:t[s],type:"string"};break;case 82:case 97:this.$={text:t[s],type:"markdown"};break;case 94:this.$={text:t[s],type:"text"};break;case 95:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 96:this.$={text:t[s],type:"text"};break;case 98:this.$=t[s-4],r.addClass(t[s-2],t[s]);break;case 99:this.$=t[s-4],r.setClass(t[s-2],t[s]);break;case 100:case 108:this.$=t[s-1],r.setClickEvent(t[s-1],t[s]);break;case 101:case 109:this.$=t[s-3],r.setClickEvent(t[s-3],t[s-2]),r.setTooltip(t[s-3],t[s]);break;case 102:this.$=t[s-2],r.setClickEvent(t[s-2],t[s-1],t[s]);break;case 103:this.$=t[s-4],r.setClickEvent(t[s-4],t[s-3],t[s-2]),r.setTooltip(t[s-4],t[s]);break;case 104:this.$=t[s-2],r.setLink(t[s-2],t[s]);break;case 105:this.$=t[s-4],r.setLink(t[s-4],t[s-2]),r.setTooltip(t[s-4],t[s]);break;case 106:this.$=t[s-4],r.setLink(t[s-4],t[s-2],t[s]);break;case 107:this.$=t[s-6],r.setLink(t[s-6],t[s-4],t[s]),r.setTooltip(t[s-6],t[s-2]);break;case 110:this.$=t[s-1],r.setLink(t[s-1],t[s]);break;case 111:this.$=t[s-3],r.setLink(t[s-3],t[s-2]),r.setTooltip(t[s-3],t[s]);break;case 112:this.$=t[s-3],r.setLink(t[s-3],t[s-2],t[s]);break;case 113:this.$=t[s-5],r.setLink(t[s-5],t[s-4],t[s]),r.setTooltip(t[s-5],t[s-2]);break;case 114:this.$=t[s-4],r.addVertex(t[s-2],void 0,void 0,t[s]);break;case 115:this.$=t[s-4],r.updateLink([t[s-2]],t[s]);break;case 116:this.$=t[s-4],r.updateLink(t[s-2],t[s]);break;case 117:this.$=t[s-8],r.updateLinkInterpolate([t[s-6]],t[s-2]),r.updateLink([t[s-6]],t[s]);break;case 118:this.$=t[s-8],r.updateLinkInterpolate(t[s-6],t[s-2]),r.updateLink(t[s-6],t[s]);break;case 119:this.$=t[s-6],r.updateLinkInterpolate([t[s-4]],t[s]);break;case 120:this.$=t[s-6],r.updateLinkInterpolate(t[s-4],t[s]);break;case 121:case 123:this.$=[t[s]];break;case 122:case 124:t[s-2].push(t[s]),this.$=t[s-2];break;case 126:this.$=t[s-1]+t[s];break;case 174:this.$=t[s];break;case 175:this.$=t[s-1]+""+t[s];break;case 177:this.$=t[s-1]+""+t[s];break;case 178:this.$={stmt:"dir",value:"TB"};break;case 179:this.$={stmt:"dir",value:"BT"};break;case 180:this.$={stmt:"dir",value:"RL"};break;case 181:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,9:u,10:i,12:n},{1:[3]},e(c,l,{5:6}),{4:7,9:u,10:i,12:n},{4:8,9:u,10:i,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:h,9:U,10:F,11:w,20:17,22:18,23:19,24:20,25:21,26:22,27:X,33:24,34:o1,36:p1,38:A1,40:28,41:38,42:C,43:39,45:40,58:k,81:l1,82:U1,83:G1,84:M1,85:K1,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R,118:Y1,119:j1,120:z1,121:X1},e(c,[2,9]),e(c,[2,10]),e(c,[2,11]),{8:[1,54],9:[1,55],10:I1,15:53,18:56},e(b,[2,3]),e(b,[2,4]),e(b,[2,5]),e(b,[2,6]),e(b,[2,7]),e(b,[2,8]),{8:q,9:Q,11:Z,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:q,9:Q,11:Z,21:66},{8:q,9:Q,11:Z,21:67},{8:q,9:Q,11:Z,21:68},{8:q,9:Q,11:Z,21:69},{8:q,9:Q,11:Z,21:70},{8:q,9:Q,10:[1,71],11:Z,21:72},e(b,[2,36]),{35:[1,73]},{37:[1,74]},e(b,[2,39]),e(H1,[2,46],{18:75,10:I1}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:k1,42:b1,58:g1,77:[1,83],86:D1,92:[1,80],94:[1,81],98:82,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1,117:84},e(b,[2,178]),e(b,[2,179]),e(b,[2,180]),e(b,[2,181]),e(W1,[2,47]),e(W1,[2,49],{44:[1,96]}),e(N,[2,67],{110:109,29:[1,97],42:C,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:k,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:x,99:B,102:m,103:y,106:v,108:V,111:L,112:I,113:R}),e(M,[2,174]),e(M,[2,135]),e(M,[2,136]),e(M,[2,137]),e(M,[2,138]),e(M,[2,139]),e(M,[2,140]),e(M,[2,141]),e(M,[2,142]),e(M,[2,143]),e(M,[2,144]),e(M,[2,145]),e(c,[2,12]),e(c,[2,18]),e(c,[2,19]),{9:[1,110]},e(Et,[2,26],{18:111,10:I1}),e(b,[2,27]),{40:112,41:38,42:C,43:39,45:40,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},e(b,[2,40]),e(b,[2,41]),e(b,[2,42]),e(R1,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:kt,116:bt},e([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),e(b,[2,28]),e(b,[2,29]),e(b,[2,30]),e(b,[2,31]),e(b,[2,32]),{10:gt,12:Dt,14:Ft,27:Tt,28:122,32:St,42:Ct,58:_t,73:xt,77:[1,124],78:[1,125],80:135,81:Bt,82:mt,83:yt,84:vt,85:Vt,86:Lt,87:It,88:123,102:Rt,106:Nt,108:wt,111:Ot,112:Pt,113:Ut},e(nt,l,{5:148}),e(b,[2,37]),e(b,[2,38]),e(H1,[2,45],{42:Gt}),{42:C,45:150,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},{99:[1,151],100:152,102:[1,153]},{42:C,45:154,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},{42:C,45:155,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},e(T,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},e(T,[2,108],{117:160,10:[1,159],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1}),e(T,[2,110],{10:[1,161]}),e(K,[2,176]),e(K,[2,163]),e(K,[2,164]),e(K,[2,165]),e(K,[2,166]),e(K,[2,167]),e(K,[2,168]),e(K,[2,169]),e(K,[2,170]),e(K,[2,171]),e(K,[2,172]),e(K,[2,173]),{42:C,45:162,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},{30:163,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:171,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:173,48:[1,172],65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:174,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:175,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:176,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{106:[1,177]},{30:178,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:179,63:[1,180],65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:181,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:182,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:183,65:p,77:O,78:P,79:164,113:A,114:d,115:E},e(M,[2,175]),e(c,[2,20]),e(Et,[2,25]),e(H1,[2,43],{18:184,10:I1}),e(R1,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{75:[1,188],76:189,113:kt,116:bt},e(m1,[2,73]),e(m1,[2,75]),e(m1,[2,76]),e(m1,[2,161]),e(m1,[2,162]),{8:q,9:Q,10:gt,11:Z,12:Dt,14:Ft,21:191,27:Tt,29:[1,190],32:St,42:Ct,58:_t,73:xt,80:135,81:Bt,82:mt,83:yt,84:vt,85:Vt,86:Lt,87:It,88:192,102:Rt,106:Nt,108:wt,111:Ot,112:Pt,113:Ut},e(g,[2,94]),e(g,[2,96]),e(g,[2,97]),e(g,[2,150]),e(g,[2,151]),e(g,[2,152]),e(g,[2,153]),e(g,[2,154]),e(g,[2,155]),e(g,[2,156]),e(g,[2,157]),e(g,[2,158]),e(g,[2,159]),e(g,[2,160]),e(g,[2,83]),e(g,[2,84]),e(g,[2,85]),e(g,[2,86]),e(g,[2,87]),e(g,[2,88]),e(g,[2,89]),e(g,[2,90]),e(g,[2,91]),e(g,[2,92]),e(g,[2,93]),{6:11,7:12,8:h,9:U,10:F,11:w,20:17,22:18,23:19,24:20,25:21,26:22,27:X,32:[1,193],33:24,34:o1,36:p1,38:A1,40:28,41:38,42:C,43:39,45:40,58:k,81:l1,82:U1,83:G1,84:M1,85:K1,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R,118:Y1,119:j1,120:z1,121:X1},{10:I1,18:194},{10:[1,195],42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:109,111:L,112:I,113:R},{10:[1,196]},{10:[1,197],103:[1,198]},e(Mt,[2,121]),{10:[1,199],42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:109,111:L,112:I,113:R},{10:[1,200],42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:109,111:L,112:I,113:R},{77:[1,201]},e(T,[2,102],{10:[1,202]}),e(T,[2,104],{10:[1,203]}),{77:[1,204]},e(K,[2,177]),{77:[1,205],95:[1,206]},e(W1,[2,50],{110:109,42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,111:L,112:I,113:R}),{31:[1,207],65:p,79:208,113:A,114:d,115:E},e(h1,[2,79]),e(h1,[2,81]),e(h1,[2,82]),e(h1,[2,146]),e(h1,[2,147]),e(h1,[2,148]),e(h1,[2,149]),{47:[1,209],65:p,79:208,113:A,114:d,115:E},{30:210,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{49:[1,211],65:p,79:208,113:A,114:d,115:E},{51:[1,212],65:p,79:208,113:A,114:d,115:E},{53:[1,213],65:p,79:208,113:A,114:d,115:E},{55:[1,214],65:p,79:208,113:A,114:d,115:E},{58:[1,215]},{62:[1,216],65:p,79:208,113:A,114:d,115:E},{64:[1,217],65:p,79:208,113:A,114:d,115:E},{30:218,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{31:[1,219],65:p,79:208,113:A,114:d,115:E},{65:p,67:[1,220],69:[1,221],79:208,113:A,114:d,115:E},{65:p,67:[1,223],69:[1,222],79:208,113:A,114:d,115:E},e(H1,[2,44],{42:Gt}),e(R1,[2,70]),e(R1,[2,69]),{60:[1,224],65:p,79:208,113:A,114:d,115:E},e(R1,[2,72]),e(m1,[2,74]),{30:225,65:p,77:O,78:P,79:164,113:A,114:d,115:E},e(nt,l,{5:226}),e(g,[2,95]),e(b,[2,35]),{41:227,42:C,43:39,45:40,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},{10:J,58:$,81:t1,89:228,102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{10:J,58:$,81:t1,89:239,101:[1,240],102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{10:J,58:$,81:t1,89:241,101:[1,242],102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{102:[1,243]},{10:J,58:$,81:t1,89:244,102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{42:C,45:245,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},e(T,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},e(T,[2,109]),e(T,[2,111],{10:[1,249]}),e(T,[2,112]),e(N,[2,51]),e(h1,[2,80]),e(N,[2,52]),{49:[1,250],65:p,79:208,113:A,114:d,115:E},e(N,[2,59]),e(N,[2,54]),e(N,[2,55]),e(N,[2,56]),{106:[1,251]},e(N,[2,58]),e(N,[2,60]),{64:[1,252],65:p,79:208,113:A,114:d,115:E},e(N,[2,62]),e(N,[2,63]),e(N,[2,65]),e(N,[2,64]),e(N,[2,66]),e([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:p,79:208,113:A,114:d,115:E},{6:11,7:12,8:h,9:U,10:F,11:w,20:17,22:18,23:19,24:20,25:21,26:22,27:X,32:[1,254],33:24,34:o1,36:p1,38:A1,40:28,41:38,42:C,43:39,45:40,58:k,81:l1,82:U1,83:G1,84:M1,85:K1,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R,118:Y1,119:j1,120:z1,121:X1},e(W1,[2,48]),e(T,[2,114],{103:y1}),e(Kt,[2,123],{105:256,10:J,58:$,81:t1,102:e1,106:s1,107:u1,108:i1,109:r1}),e(W,[2,125]),e(W,[2,127]),e(W,[2,128]),e(W,[2,129]),e(W,[2,130]),e(W,[2,131]),e(W,[2,132]),e(W,[2,133]),e(W,[2,134]),e(T,[2,115],{103:y1}),{10:[1,257]},e(T,[2,116],{103:y1}),{10:[1,258]},e(Mt,[2,122]),e(T,[2,98],{103:y1}),e(T,[2,99],{110:109,42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,111:L,112:I,113:R}),e(T,[2,103]),e(T,[2,105],{10:[1,259]}),e(T,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:q,9:Q,11:Z,21:264},e(b,[2,34]),{10:J,58:$,81:t1,102:e1,104:265,105:230,106:s1,107:u1,108:i1,109:r1},e(W,[2,126]),{14:k1,42:b1,58:g1,86:D1,98:266,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1,117:84},{14:k1,42:b1,58:g1,86:D1,98:267,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1,117:84},{95:[1,268]},e(T,[2,113]),e(N,[2,53]),{30:269,65:p,77:O,78:P,79:164,113:A,114:d,115:E},e(N,[2,61]),e(nt,l,{5:270}),e(Kt,[2,124],{105:256,10:J,58:$,81:t1,102:e1,106:s1,107:u1,108:i1,109:r1}),e(T,[2,119],{117:160,10:[1,271],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1}),e(T,[2,120],{117:160,10:[1,272],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1}),e(T,[2,107]),{31:[1,273],65:p,79:208,113:A,114:d,115:E},{6:11,7:12,8:h,9:U,10:F,11:w,20:17,22:18,23:19,24:20,25:21,26:22,27:X,32:[1,274],33:24,34:o1,36:p1,38:A1,40:28,41:38,42:C,43:39,45:40,58:k,81:l1,82:U1,83:G1,84:M1,85:K1,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R,118:Y1,119:j1,120:z1,121:X1},{10:J,58:$,81:t1,89:275,102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{10:J,58:$,81:t1,89:276,102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},e(N,[2,57]),e(b,[2,33]),e(T,[2,117],{103:y1}),e(T,[2,118],{103:y1})],defaultActions:{},parseError:function(a,o){if(o.recoverable)this.trace(a);else{var f=new Error(a);throw f.hash=o,f}},parse:function(a){var o=this,f=[0],r=[],S=[null],t=[],N1=this.table,s="",Y=0,Yt=0,Ce=2,jt=1,_e=t.slice.call(arguments,1),_=Object.create(this.lexer),d1={yy:{}};for(var ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ot)&&(d1.yy[ot]=this.yy[ot]);_.setInput(a,d1.yy),d1.yy.lexer=_,d1.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var lt=_.yylloc;t.push(lt);var xe=_.options&&_.options.ranges;typeof d1.yy.parseError=="function"?this.parseError=d1.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Be(){var a1;return a1=r.pop()||_.lex()||jt,typeof a1!="number"&&(a1 instanceof Array&&(r=a1,a1=r.pop()),a1=o.symbols_[a1]||a1),a1}for(var G,E1,j,ht,v1={},q1,n1,zt,Q1;;){if(E1=f[f.length-1],this.defaultActions[E1]?j=this.defaultActions[E1]:((G===null||typeof G>"u")&&(G=Be()),j=N1[E1]&&N1[E1][G]),typeof j>"u"||!j.length||!j[0]){var ft="";Q1=[];for(q1 in N1[E1])this.terminals_[q1]&&q1>Ce&&Q1.push("'"+this.terminals_[q1]+"'");_.showPosition?ft="Parse error on line "+(Y+1)+`:
1
+ import{v as me,x as ye,s as ve,a as Ve,b as Le,c as Ie,y as Re,k as Ne,l as J1,g as et,z as we,A as dt,d as w1}from"./mermaid.core-DBYO3wup.js";var pt=function(){var e=function(f1,a,o,f){for(o=o||{},f=f1.length;f--;o[f1[f]]=a);return o},u=[1,4],i=[1,3],n=[1,5],c=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],l=[2,2],h=[1,13],U=[1,14],F=[1,15],w=[1,16],X=[1,23],o1=[1,25],p1=[1,26],A1=[1,27],C=[1,49],k=[1,48],l1=[1,29],U1=[1,30],G1=[1,31],M1=[1,32],K1=[1,33],x=[1,44],B=[1,46],m=[1,42],y=[1,47],v=[1,43],V=[1,50],L=[1,45],I=[1,51],R=[1,52],Y1=[1,34],j1=[1,35],z1=[1,36],X1=[1,37],I1=[1,57],b=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],q=[1,61],Q=[1,60],Z=[1,62],H1=[8,9,11,73,75],k1=[1,88],b1=[1,93],g1=[1,92],D1=[1,89],F1=[1,85],T1=[1,91],S1=[1,87],C1=[1,94],_1=[1,90],x1=[1,95],B1=[1,86],W1=[8,9,10,11,73,75],N=[8,9,10,11,44,73,75],M=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],Et=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],R1=[42,58,86,99,102,103,106,108,111,112,113],kt=[1,121],bt=[1,120],gt=[1,128],Dt=[1,142],Ft=[1,143],Tt=[1,144],St=[1,145],Ct=[1,130],_t=[1,132],xt=[1,136],Bt=[1,137],mt=[1,138],yt=[1,139],vt=[1,140],Vt=[1,141],Lt=[1,146],It=[1,147],Rt=[1,126],Nt=[1,127],wt=[1,134],Ot=[1,129],Pt=[1,133],Ut=[1,131],nt=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],Gt=[1,149],T=[8,9,11],K=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],p=[1,169],O=[1,165],P=[1,166],A=[1,170],d=[1,167],E=[1,168],m1=[75,113,116],g=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],Mt=[10,103],h1=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],J=[1,235],$=[1,233],t1=[1,237],e1=[1,231],s1=[1,232],u1=[1,234],i1=[1,236],r1=[1,238],y1=[1,255],Kt=[8,9,11,103],W=[8,9,10,11,58,81,102,103,106,107,108,109],at={trace:function(){},yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING[value]",60:"PIPE",61:"CYLINDERSTART",62:"CYLINDEREND",63:"DIAMOND_START",64:"DIAMOND_STOP",65:"TAGEND",66:"TRAPSTART",67:"TRAPEND",68:"INVTRAPSTART",69:"INVTRAPEND",72:"TESTSTR",73:"START_LINK",75:"LINK",77:"STR",78:"MD_STR",81:"STYLE",82:"LINKSTYLE",83:"CLASSDEF",84:"CLASS",85:"CLICK",86:"DOWN",87:"UP",90:"idString[vertex]",91:"idString[class]",92:"CALLBACKNAME",93:"CALLBACKARGS",94:"HREF",95:"LINK_TARGET",96:"STR[link]",97:"STR[tooltip]",99:"DEFAULT",101:"INTERPOLATE",102:"NUM",103:"COMMA",106:"NODE_STRING",107:"UNIT",108:"BRKT",109:"PCT",111:"MINUS",112:"MULT",113:"UNICODE_TEXT",114:"TEXT",115:"TAGSTART",116:"EDGE_TEXT",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[20,3],[20,4],[20,2],[20,1],[40,1],[40,5],[41,1],[41,3],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,8],[43,4],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,4],[43,4],[43,1],[39,2],[39,3],[39,3],[39,1],[39,3],[74,1],[74,2],[74,1],[74,1],[70,1],[71,3],[30,1],[30,2],[30,1],[30,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[100,1],[100,3],[89,1],[89,3],[104,1],[104,2],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[79,1],[79,1],[79,1],[79,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[76,1],[76,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[45,1],[45,2],[98,1],[98,2],[33,1],[33,1],[33,1],[33,1]],performAction:function(a,o,f,r,S,t,N1){var s=t.length-1;switch(S){case 2:this.$=[];break;case 3:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 176:this.$=t[s];break;case 11:r.setDirection("TB"),this.$="TB";break;case 12:r.setDirection(t[s-1]),this.$=t[s-1];break;case 27:this.$=t[s-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=r.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 34:this.$=r.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 35:this.$=r.addSubGraph(void 0,t[s-1],void 0);break;case 37:this.$=t[s].trim(),r.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),r.setAccDescription(this.$);break;case 43:r.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 44:r.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 45:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 46:this.$={stmt:t[s],nodes:t[s]};break;case 47:this.$=[t[s]];break;case 48:this.$=t[s-4].concat(t[s]);break;case 49:this.$=t[s];break;case 50:this.$=t[s-2],r.setClass(t[s-2],t[s]);break;case 51:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"square");break;case 52:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"doublecircle");break;case 53:this.$=t[s-5],r.addVertex(t[s-5],t[s-2],"circle");break;case 54:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"ellipse");break;case 55:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"stadium");break;case 56:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"subroutine");break;case 57:this.$=t[s-7],r.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 58:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"cylinder");break;case 59:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"round");break;case 60:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"diamond");break;case 61:this.$=t[s-5],r.addVertex(t[s-5],t[s-2],"hexagon");break;case 62:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"odd");break;case 63:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"trapezoid");break;case 64:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 65:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"lean_right");break;case 66:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"lean_left");break;case 67:this.$=t[s],r.addVertex(t[s]);break;case 68:t[s-1].text=t[s],this.$=t[s-1];break;case 69:case 70:t[s-2].text=t[s-1],this.$=t[s-2];break;case 71:this.$=t[s];break;case 72:var Y=r.destructLink(t[s],t[s-2]);this.$={type:Y.type,stroke:Y.stroke,length:Y.length,text:t[s-1]};break;case 73:this.$={text:t[s],type:"text"};break;case 74:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 75:this.$={text:t[s],type:"string"};break;case 76:this.$={text:t[s],type:"markdown"};break;case 77:var Y=r.destructLink(t[s]);this.$={type:Y.type,stroke:Y.stroke,length:Y.length};break;case 78:this.$=t[s-1];break;case 79:this.$={text:t[s],type:"text"};break;case 80:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 81:this.$={text:t[s],type:"string"};break;case 82:case 97:this.$={text:t[s],type:"markdown"};break;case 94:this.$={text:t[s],type:"text"};break;case 95:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 96:this.$={text:t[s],type:"text"};break;case 98:this.$=t[s-4],r.addClass(t[s-2],t[s]);break;case 99:this.$=t[s-4],r.setClass(t[s-2],t[s]);break;case 100:case 108:this.$=t[s-1],r.setClickEvent(t[s-1],t[s]);break;case 101:case 109:this.$=t[s-3],r.setClickEvent(t[s-3],t[s-2]),r.setTooltip(t[s-3],t[s]);break;case 102:this.$=t[s-2],r.setClickEvent(t[s-2],t[s-1],t[s]);break;case 103:this.$=t[s-4],r.setClickEvent(t[s-4],t[s-3],t[s-2]),r.setTooltip(t[s-4],t[s]);break;case 104:this.$=t[s-2],r.setLink(t[s-2],t[s]);break;case 105:this.$=t[s-4],r.setLink(t[s-4],t[s-2]),r.setTooltip(t[s-4],t[s]);break;case 106:this.$=t[s-4],r.setLink(t[s-4],t[s-2],t[s]);break;case 107:this.$=t[s-6],r.setLink(t[s-6],t[s-4],t[s]),r.setTooltip(t[s-6],t[s-2]);break;case 110:this.$=t[s-1],r.setLink(t[s-1],t[s]);break;case 111:this.$=t[s-3],r.setLink(t[s-3],t[s-2]),r.setTooltip(t[s-3],t[s]);break;case 112:this.$=t[s-3],r.setLink(t[s-3],t[s-2],t[s]);break;case 113:this.$=t[s-5],r.setLink(t[s-5],t[s-4],t[s]),r.setTooltip(t[s-5],t[s-2]);break;case 114:this.$=t[s-4],r.addVertex(t[s-2],void 0,void 0,t[s]);break;case 115:this.$=t[s-4],r.updateLink([t[s-2]],t[s]);break;case 116:this.$=t[s-4],r.updateLink(t[s-2],t[s]);break;case 117:this.$=t[s-8],r.updateLinkInterpolate([t[s-6]],t[s-2]),r.updateLink([t[s-6]],t[s]);break;case 118:this.$=t[s-8],r.updateLinkInterpolate(t[s-6],t[s-2]),r.updateLink(t[s-6],t[s]);break;case 119:this.$=t[s-6],r.updateLinkInterpolate([t[s-4]],t[s]);break;case 120:this.$=t[s-6],r.updateLinkInterpolate(t[s-4],t[s]);break;case 121:case 123:this.$=[t[s]];break;case 122:case 124:t[s-2].push(t[s]),this.$=t[s-2];break;case 126:this.$=t[s-1]+t[s];break;case 174:this.$=t[s];break;case 175:this.$=t[s-1]+""+t[s];break;case 177:this.$=t[s-1]+""+t[s];break;case 178:this.$={stmt:"dir",value:"TB"};break;case 179:this.$={stmt:"dir",value:"BT"};break;case 180:this.$={stmt:"dir",value:"RL"};break;case 181:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,9:u,10:i,12:n},{1:[3]},e(c,l,{5:6}),{4:7,9:u,10:i,12:n},{4:8,9:u,10:i,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:h,9:U,10:F,11:w,20:17,22:18,23:19,24:20,25:21,26:22,27:X,33:24,34:o1,36:p1,38:A1,40:28,41:38,42:C,43:39,45:40,58:k,81:l1,82:U1,83:G1,84:M1,85:K1,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R,118:Y1,119:j1,120:z1,121:X1},e(c,[2,9]),e(c,[2,10]),e(c,[2,11]),{8:[1,54],9:[1,55],10:I1,15:53,18:56},e(b,[2,3]),e(b,[2,4]),e(b,[2,5]),e(b,[2,6]),e(b,[2,7]),e(b,[2,8]),{8:q,9:Q,11:Z,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:q,9:Q,11:Z,21:66},{8:q,9:Q,11:Z,21:67},{8:q,9:Q,11:Z,21:68},{8:q,9:Q,11:Z,21:69},{8:q,9:Q,11:Z,21:70},{8:q,9:Q,10:[1,71],11:Z,21:72},e(b,[2,36]),{35:[1,73]},{37:[1,74]},e(b,[2,39]),e(H1,[2,46],{18:75,10:I1}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:k1,42:b1,58:g1,77:[1,83],86:D1,92:[1,80],94:[1,81],98:82,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1,117:84},e(b,[2,178]),e(b,[2,179]),e(b,[2,180]),e(b,[2,181]),e(W1,[2,47]),e(W1,[2,49],{44:[1,96]}),e(N,[2,67],{110:109,29:[1,97],42:C,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:k,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:x,99:B,102:m,103:y,106:v,108:V,111:L,112:I,113:R}),e(M,[2,174]),e(M,[2,135]),e(M,[2,136]),e(M,[2,137]),e(M,[2,138]),e(M,[2,139]),e(M,[2,140]),e(M,[2,141]),e(M,[2,142]),e(M,[2,143]),e(M,[2,144]),e(M,[2,145]),e(c,[2,12]),e(c,[2,18]),e(c,[2,19]),{9:[1,110]},e(Et,[2,26],{18:111,10:I1}),e(b,[2,27]),{40:112,41:38,42:C,43:39,45:40,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},e(b,[2,40]),e(b,[2,41]),e(b,[2,42]),e(R1,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:kt,116:bt},e([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),e(b,[2,28]),e(b,[2,29]),e(b,[2,30]),e(b,[2,31]),e(b,[2,32]),{10:gt,12:Dt,14:Ft,27:Tt,28:122,32:St,42:Ct,58:_t,73:xt,77:[1,124],78:[1,125],80:135,81:Bt,82:mt,83:yt,84:vt,85:Vt,86:Lt,87:It,88:123,102:Rt,106:Nt,108:wt,111:Ot,112:Pt,113:Ut},e(nt,l,{5:148}),e(b,[2,37]),e(b,[2,38]),e(H1,[2,45],{42:Gt}),{42:C,45:150,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},{99:[1,151],100:152,102:[1,153]},{42:C,45:154,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},{42:C,45:155,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},e(T,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},e(T,[2,108],{117:160,10:[1,159],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1}),e(T,[2,110],{10:[1,161]}),e(K,[2,176]),e(K,[2,163]),e(K,[2,164]),e(K,[2,165]),e(K,[2,166]),e(K,[2,167]),e(K,[2,168]),e(K,[2,169]),e(K,[2,170]),e(K,[2,171]),e(K,[2,172]),e(K,[2,173]),{42:C,45:162,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},{30:163,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:171,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:173,48:[1,172],65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:174,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:175,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:176,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{106:[1,177]},{30:178,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:179,63:[1,180],65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:181,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:182,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{30:183,65:p,77:O,78:P,79:164,113:A,114:d,115:E},e(M,[2,175]),e(c,[2,20]),e(Et,[2,25]),e(H1,[2,43],{18:184,10:I1}),e(R1,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{75:[1,188],76:189,113:kt,116:bt},e(m1,[2,73]),e(m1,[2,75]),e(m1,[2,76]),e(m1,[2,161]),e(m1,[2,162]),{8:q,9:Q,10:gt,11:Z,12:Dt,14:Ft,21:191,27:Tt,29:[1,190],32:St,42:Ct,58:_t,73:xt,80:135,81:Bt,82:mt,83:yt,84:vt,85:Vt,86:Lt,87:It,88:192,102:Rt,106:Nt,108:wt,111:Ot,112:Pt,113:Ut},e(g,[2,94]),e(g,[2,96]),e(g,[2,97]),e(g,[2,150]),e(g,[2,151]),e(g,[2,152]),e(g,[2,153]),e(g,[2,154]),e(g,[2,155]),e(g,[2,156]),e(g,[2,157]),e(g,[2,158]),e(g,[2,159]),e(g,[2,160]),e(g,[2,83]),e(g,[2,84]),e(g,[2,85]),e(g,[2,86]),e(g,[2,87]),e(g,[2,88]),e(g,[2,89]),e(g,[2,90]),e(g,[2,91]),e(g,[2,92]),e(g,[2,93]),{6:11,7:12,8:h,9:U,10:F,11:w,20:17,22:18,23:19,24:20,25:21,26:22,27:X,32:[1,193],33:24,34:o1,36:p1,38:A1,40:28,41:38,42:C,43:39,45:40,58:k,81:l1,82:U1,83:G1,84:M1,85:K1,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R,118:Y1,119:j1,120:z1,121:X1},{10:I1,18:194},{10:[1,195],42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:109,111:L,112:I,113:R},{10:[1,196]},{10:[1,197],103:[1,198]},e(Mt,[2,121]),{10:[1,199],42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:109,111:L,112:I,113:R},{10:[1,200],42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:109,111:L,112:I,113:R},{77:[1,201]},e(T,[2,102],{10:[1,202]}),e(T,[2,104],{10:[1,203]}),{77:[1,204]},e(K,[2,177]),{77:[1,205],95:[1,206]},e(W1,[2,50],{110:109,42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,111:L,112:I,113:R}),{31:[1,207],65:p,79:208,113:A,114:d,115:E},e(h1,[2,79]),e(h1,[2,81]),e(h1,[2,82]),e(h1,[2,146]),e(h1,[2,147]),e(h1,[2,148]),e(h1,[2,149]),{47:[1,209],65:p,79:208,113:A,114:d,115:E},{30:210,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{49:[1,211],65:p,79:208,113:A,114:d,115:E},{51:[1,212],65:p,79:208,113:A,114:d,115:E},{53:[1,213],65:p,79:208,113:A,114:d,115:E},{55:[1,214],65:p,79:208,113:A,114:d,115:E},{58:[1,215]},{62:[1,216],65:p,79:208,113:A,114:d,115:E},{64:[1,217],65:p,79:208,113:A,114:d,115:E},{30:218,65:p,77:O,78:P,79:164,113:A,114:d,115:E},{31:[1,219],65:p,79:208,113:A,114:d,115:E},{65:p,67:[1,220],69:[1,221],79:208,113:A,114:d,115:E},{65:p,67:[1,223],69:[1,222],79:208,113:A,114:d,115:E},e(H1,[2,44],{42:Gt}),e(R1,[2,70]),e(R1,[2,69]),{60:[1,224],65:p,79:208,113:A,114:d,115:E},e(R1,[2,72]),e(m1,[2,74]),{30:225,65:p,77:O,78:P,79:164,113:A,114:d,115:E},e(nt,l,{5:226}),e(g,[2,95]),e(b,[2,35]),{41:227,42:C,43:39,45:40,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},{10:J,58:$,81:t1,89:228,102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{10:J,58:$,81:t1,89:239,101:[1,240],102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{10:J,58:$,81:t1,89:241,101:[1,242],102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{102:[1,243]},{10:J,58:$,81:t1,89:244,102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{42:C,45:245,58:k,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R},e(T,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},e(T,[2,109]),e(T,[2,111],{10:[1,249]}),e(T,[2,112]),e(N,[2,51]),e(h1,[2,80]),e(N,[2,52]),{49:[1,250],65:p,79:208,113:A,114:d,115:E},e(N,[2,59]),e(N,[2,54]),e(N,[2,55]),e(N,[2,56]),{106:[1,251]},e(N,[2,58]),e(N,[2,60]),{64:[1,252],65:p,79:208,113:A,114:d,115:E},e(N,[2,62]),e(N,[2,63]),e(N,[2,65]),e(N,[2,64]),e(N,[2,66]),e([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:p,79:208,113:A,114:d,115:E},{6:11,7:12,8:h,9:U,10:F,11:w,20:17,22:18,23:19,24:20,25:21,26:22,27:X,32:[1,254],33:24,34:o1,36:p1,38:A1,40:28,41:38,42:C,43:39,45:40,58:k,81:l1,82:U1,83:G1,84:M1,85:K1,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R,118:Y1,119:j1,120:z1,121:X1},e(W1,[2,48]),e(T,[2,114],{103:y1}),e(Kt,[2,123],{105:256,10:J,58:$,81:t1,102:e1,106:s1,107:u1,108:i1,109:r1}),e(W,[2,125]),e(W,[2,127]),e(W,[2,128]),e(W,[2,129]),e(W,[2,130]),e(W,[2,131]),e(W,[2,132]),e(W,[2,133]),e(W,[2,134]),e(T,[2,115],{103:y1}),{10:[1,257]},e(T,[2,116],{103:y1}),{10:[1,258]},e(Mt,[2,122]),e(T,[2,98],{103:y1}),e(T,[2,99],{110:109,42:C,58:k,86:x,99:B,102:m,103:y,106:v,108:V,111:L,112:I,113:R}),e(T,[2,103]),e(T,[2,105],{10:[1,259]}),e(T,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:q,9:Q,11:Z,21:264},e(b,[2,34]),{10:J,58:$,81:t1,102:e1,104:265,105:230,106:s1,107:u1,108:i1,109:r1},e(W,[2,126]),{14:k1,42:b1,58:g1,86:D1,98:266,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1,117:84},{14:k1,42:b1,58:g1,86:D1,98:267,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1,117:84},{95:[1,268]},e(T,[2,113]),e(N,[2,53]),{30:269,65:p,77:O,78:P,79:164,113:A,114:d,115:E},e(N,[2,61]),e(nt,l,{5:270}),e(Kt,[2,124],{105:256,10:J,58:$,81:t1,102:e1,106:s1,107:u1,108:i1,109:r1}),e(T,[2,119],{117:160,10:[1,271],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1}),e(T,[2,120],{117:160,10:[1,272],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:S1,108:C1,111:_1,112:x1,113:B1}),e(T,[2,107]),{31:[1,273],65:p,79:208,113:A,114:d,115:E},{6:11,7:12,8:h,9:U,10:F,11:w,20:17,22:18,23:19,24:20,25:21,26:22,27:X,32:[1,274],33:24,34:o1,36:p1,38:A1,40:28,41:38,42:C,43:39,45:40,58:k,81:l1,82:U1,83:G1,84:M1,85:K1,86:x,99:B,102:m,103:y,106:v,108:V,110:41,111:L,112:I,113:R,118:Y1,119:j1,120:z1,121:X1},{10:J,58:$,81:t1,89:275,102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},{10:J,58:$,81:t1,89:276,102:e1,104:229,105:230,106:s1,107:u1,108:i1,109:r1},e(N,[2,57]),e(b,[2,33]),e(T,[2,117],{103:y1}),e(T,[2,118],{103:y1})],defaultActions:{},parseError:function(a,o){if(o.recoverable)this.trace(a);else{var f=new Error(a);throw f.hash=o,f}},parse:function(a){var o=this,f=[0],r=[],S=[null],t=[],N1=this.table,s="",Y=0,Yt=0,Ce=2,jt=1,_e=t.slice.call(arguments,1),_=Object.create(this.lexer),d1={yy:{}};for(var ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ot)&&(d1.yy[ot]=this.yy[ot]);_.setInput(a,d1.yy),d1.yy.lexer=_,d1.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var lt=_.yylloc;t.push(lt);var xe=_.options&&_.options.ranges;typeof d1.yy.parseError=="function"?this.parseError=d1.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Be(){var a1;return a1=r.pop()||_.lex()||jt,typeof a1!="number"&&(a1 instanceof Array&&(r=a1,a1=r.pop()),a1=o.symbols_[a1]||a1),a1}for(var G,E1,j,ht,v1={},q1,n1,zt,Q1;;){if(E1=f[f.length-1],this.defaultActions[E1]?j=this.defaultActions[E1]:((G===null||typeof G>"u")&&(G=Be()),j=N1[E1]&&N1[E1][G]),typeof j>"u"||!j.length||!j[0]){var ft="";Q1=[];for(q1 in N1[E1])this.terminals_[q1]&&q1>Ce&&Q1.push("'"+this.terminals_[q1]+"'");_.showPosition?ft="Parse error on line "+(Y+1)+`:
2
2
  `+_.showPosition()+`
3
3
  Expecting `+Q1.join(", ")+", got '"+(this.terminals_[G]||G)+"'":ft="Parse error on line "+(Y+1)+": Unexpected "+(G==jt?"end of input":"'"+(this.terminals_[G]||G)+"'"),this.parseError(ft,{text:_.match,token:this.terminals_[G]||G,line:_.yylineno,loc:lt,expected:Q1})}if(j[0]instanceof Array&&j.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E1+", token: "+G);switch(j[0]){case 1:f.push(G),S.push(_.yytext),t.push(_.yylloc),f.push(j[1]),G=null,Yt=_.yyleng,s=_.yytext,Y=_.yylineno,lt=_.yylloc;break;case 2:if(n1=this.productions_[j[1]][1],v1.$=S[S.length-n1],v1._$={first_line:t[t.length-(n1||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(n1||1)].first_column,last_column:t[t.length-1].last_column},xe&&(v1._$.range=[t[t.length-(n1||1)].range[0],t[t.length-1].range[1]]),ht=this.performAction.apply(v1,[s,Yt,Y,d1.yy,j[1],S,t].concat(_e)),typeof ht<"u")return ht;n1&&(f=f.slice(0,-1*n1*2),S=S.slice(0,-1*n1),t=t.slice(0,-1*n1)),f.push(this.productions_[j[1]][0]),S.push(v1.$),t.push(v1._$),zt=N1[f[f.length-2]][f[f.length-1]],f.push(zt);break;case 3:return!0}}return!0}},Se=function(){var f1={EOF:1,parseError:function(o,f){if(this.yy.parser)this.yy.parser.parseError(o,f);else throw new Error(o)},setInput:function(a,o){return this.yy=o||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var o=a.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},unput:function(a){var o=a.length,f=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1&&(this.yylineno-=f.length-1);var S=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===r.length?this.yylloc.first_column:0)+r[r.length-f.length].length-f[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[S[0],S[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(a){this.unput(this.match.slice(a))},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),o=new Array(a.length+1).join("-");return a+this.upcomingInput()+`