zen-gitsync 2.15.1 → 2.15.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.
- package/package.json +1 -1
- package/src/ui/public/assets/AppVersionBadge-9TpgyH6h.js +2 -0
- package/src/ui/public/assets/BranchSelector-C0xJ5O5y.js +1 -0
- package/src/ui/public/assets/CommitForm-DRCkTbcQ.js +6 -0
- package/src/ui/public/assets/ConsoleView-8BaM8HZy.css +1 -0
- package/src/ui/public/assets/ConsoleView-Bi1yhOrF.js +17 -0
- package/src/ui/public/assets/CustomCommandManager-CCPQ4oG8.js +1 -0
- package/src/ui/public/assets/EditorView-DNDHHVxO.js +0 -0
- package/src/ui/public/assets/{FlowExecutionViewer-C8H9uoZL.js → FlowExecutionViewer-Bd5rDsy-.js} +1 -1
- package/src/ui/public/assets/FlowOrchestrationWorkspace-BnxWvF7c.js +21 -0
- package/src/ui/public/assets/{LogList-8qSNrgT7.js → LogList-D6GVPxGk.js} +5 -5
- package/src/ui/public/assets/MindmapView-BzVqyW95.js +1 -0
- package/src/ui/public/assets/MonitorView-BynVSuRY.js +1 -0
- package/src/ui/public/assets/ProjectStartupButton-CMonyvWZ.js +1 -0
- package/src/ui/public/assets/RemoteRepoCard-BJQgSYGu.js +1 -0
- package/src/ui/public/assets/SourceMapView-CNw8GHm_.js +3 -0
- package/src/ui/public/assets/SourceMapView-DG_a_076.css +1 -0
- package/src/ui/public/assets/SvgIcon-CVSYDtNO.js +1 -0
- package/src/ui/public/assets/TemplateManager-D8f0RivS.js +1 -0
- package/src/ui/public/assets/UserInputNode-BpIFJ8Kq.js +1 -0
- package/src/ui/public/assets/WorkbenchView-7uXNRGkb.js +12 -0
- package/src/ui/public/assets/{_plugin-vue_export-helper-Uwc4Esmp.js → _plugin-vue_export-helper-DCUswitV.js} +3 -3
- package/src/ui/public/assets/{configStore-BHFJlgWp.js → configStore-BEUBCuQ4.js} +1 -1
- package/src/ui/public/assets/{element-plus-tbZnDtyd.js → element-plus-DB-NeCl9.js} +1 -1
- package/src/ui/public/assets/{flow-mindmap-C0IUPqjN.js → flow-mindmap-DYBM6P0r.js} +4 -4
- package/src/ui/public/assets/index-BUUVsQTV.js +23 -0
- package/src/ui/public/assets/index-BiyC8HRp.css +1 -0
- package/src/ui/public/assets/{vendor-0hkrGFDb.js → vendor-DTvkqYXo.js} +5 -5
- package/src/ui/public/assets/vue-flow-D5lw7RxP.js +39 -0
- package/src/ui/public/index.html +8 -8
- package/src/ui/public/assets/AppVersionBadge-BoAhI0Kt.js +0 -2
- package/src/ui/public/assets/BranchSelector--8Qfb75A.js +0 -1
- package/src/ui/public/assets/CommitForm-CobjwXah.js +0 -6
- package/src/ui/public/assets/ConsoleView-B2WZRKsP.css +0 -1
- package/src/ui/public/assets/ConsoleView-HcfiYLnM.js +0 -17
- package/src/ui/public/assets/CustomCommandManager-DQG4wRU7.js +0 -1
- package/src/ui/public/assets/EditorView-CAjuz7yY.js +0 -0
- package/src/ui/public/assets/FlowOrchestrationWorkspace-C2RMFB-p.js +0 -21
- package/src/ui/public/assets/MindmapView-C5pLBOs_.js +0 -1
- package/src/ui/public/assets/MonitorView-Bijvi8pi.js +0 -1
- package/src/ui/public/assets/ProjectStartupButton-Cb-RAZqA.js +0 -1
- package/src/ui/public/assets/RemoteRepoCard-DjfI188H.js +0 -1
- package/src/ui/public/assets/SourceMapView-DbdbojUR.js +0 -3
- package/src/ui/public/assets/SourceMapView-DjYKJZLj.css +0 -1
- package/src/ui/public/assets/SvgIcon-BVBpj6nK.js +0 -1
- package/src/ui/public/assets/TemplateManager-CSI1wQZY.js +0 -1
- package/src/ui/public/assets/UserInputNode-8ocSzj-6.js +0 -1
- package/src/ui/public/assets/WorkbenchView-DAXAzJTK.js +0 -12
- package/src/ui/public/assets/index-BZk-ldXr.css +0 -1
- package/src/ui/public/assets/index-Bl8fyL3X.js +0 -23
- package/src/ui/public/assets/vue-flow-CkwNeuGO.js +0 -39
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Cn as e,Fn as t,Kn as n,Ln as r,Mn as i,Pn as a,Tn as o,Yn as s,_n as c,ar as l,cn as u,dr as d,fr as f,gn as p,hn as m,hr as h,ln as g,mn as _,mr as v,on as y,rr as b,un as x,vn as S,xn as C,zn as w}from"./element-plus-tbZnDtyd.js";var T=[`width`,`height`,`stroke-width`],E={key:4,points:`6 9 12 15 18 9`},D={key:5,points:`9 6 15 12 9 18`},O=o({__name:`Icon`,props:{name:{},size:{},stroke:{}},setup(e){return(t,n)=>(r(),S(`svg`,{width:e.size??16,height:e.size??16,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":e.stroke??1.8,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[e.name===`add`?(r(),S(x,{key:0},[n[0]||=m(`circle`,{cx:`12`,cy:`12`,r:`9`},null,-1),n[1]||=m(`line`,{x1:`12`,y1:`8`,x2:`12`,y2:`16`},null,-1),n[2]||=m(`line`,{x1:`8`,y1:`12`,x2:`16`,y2:`12`},null,-1)],64)):e.name===`minus`?(r(),S(x,{key:1},[n[3]||=m(`circle`,{cx:`12`,cy:`12`,r:`9`},null,-1),n[4]||=m(`line`,{x1:`8`,y1:`12`,x2:`16`,y2:`12`},null,-1)],64)):e.name===`delete`?(r(),S(x,{key:2},[n[5]||=C(`<polyline points="4 7 20 7"></polyline><path d="M9 7 V5 a1 1 0 0 1 1 -1 h4 a1 1 0 0 1 1 1 V7"></path><path d="M6 7 l1 12 a1 1 0 0 0 1 1 h8 a1 1 0 0 0 1 -1 l1 -12"></path><line x1="10" y1="11" x2="10" y2="18"></line><line x1="14" y1="11" x2="14" y2="18"></line>`,5)],64)):e.name===`edit`?(r(),S(x,{key:3},[n[6]||=m(`path`,{d:`M4 20 l4 -1 11 -11 -3 -3 -11 11 z`},null,-1),n[7]||=m(`line`,{x1:`14`,y1:`6`,x2:`18`,y2:`10`},null,-1)],64)):e.name===`collapse`?(r(),S(`polyline`,E)):e.name===`expand`?(r(),S(`polyline`,D)):e.name===`collapse-all`?(r(),S(x,{key:6},[n[8]||=C(`<line x1="4" y1="4" x2="10" y2="10"></line><polyline points="6 10 10 10 10 6"></polyline><line x1="20" y1="4" x2="14" y2="10"></line><polyline points="14 6 14 10 18 10"></polyline><line x1="20" y1="20" x2="14" y2="14"></line><polyline points="14 18 14 14 18 14"></polyline><line x1="4" y1="20" x2="10" y2="14"></line><polyline points="6 14 10 14 10 18"></polyline>`,8)],64)):e.name===`expand-all`?(r(),S(x,{key:7},[n[9]||=C(`<line x1="10" y1="10" x2="4" y2="4"></line><polyline points="4 6 4 4 6 4"></polyline><line x1="14" y1="10" x2="20" y2="4"></line><polyline points="20 6 20 4 18 4"></polyline><line x1="14" y1="14" x2="20" y2="20"></line><polyline points="20 18 20 20 18 20"></polyline><line x1="10" y1="14" x2="4" y2="20"></line><polyline points="4 18 4 20 6 20"></polyline>`,8)],64)):e.name===`expand-level-1`?(r(),S(x,{key:8},[n[10]||=C(`<circle cx="12" cy="5" r="1.8" fill="currentColor" stroke="none"></circle><line x1="12" y1="7" x2="12" y2="11"></line><line x1="12" y1="11" x2="5" y2="17"></line><line x1="12" y1="11" x2="12" y2="17"></line><line x1="12" y1="11" x2="19" y2="17"></line><circle cx="5" cy="19" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="12" cy="19" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="19" cy="19" r="1.8" fill="currentColor" stroke="none"></circle>`,8)],64)):e.name===`expand-level-2`?(r(),S(x,{key:9},[n[11]||=C(`<circle cx="12" cy="3" r="1.4" fill="currentColor" stroke="none"></circle><line x1="12" y1="4.5" x2="12" y2="7"></line><line x1="12" y1="7" x2="5" y2="11"></line><line x1="12" y1="7" x2="12" y2="11"></line><line x1="12" y1="7" x2="19" y2="11"></line><line x1="5" y1="11" x2="3" y2="16"></line><line x1="5" y1="11" x2="7" y2="16"></line><line x1="12" y1="11" x2="10" y2="16"></line><line x1="12" y1="11" x2="14" y2="16"></line><line x1="19" y1="11" x2="17" y2="16"></line><line x1="19" y1="11" x2="21" y2="16"></line><circle cx="5" cy="11" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="12" cy="11" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="19" cy="11" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="3" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="7" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="10" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="14" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="17" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="21" cy="18" r="1.4" fill="currentColor" stroke="none"></circle>`,20)],64)):e.name===`zoom-in`?(r(),S(x,{key:10},[n[12]||=m(`circle`,{cx:`11`,cy:`11`,r:`7`},null,-1),n[13]||=m(`line`,{x1:`11`,y1:`8`,x2:`11`,y2:`14`},null,-1),n[14]||=m(`line`,{x1:`8`,y1:`11`,x2:`14`,y2:`11`},null,-1),n[15]||=m(`line`,{x1:`16`,y1:`16`,x2:`21`,y2:`21`},null,-1)],64)):e.name===`zoom-out`?(r(),S(x,{key:11},[n[16]||=m(`circle`,{cx:`11`,cy:`11`,r:`7`},null,-1),n[17]||=m(`line`,{x1:`8`,y1:`11`,x2:`14`,y2:`11`},null,-1),n[18]||=m(`line`,{x1:`16`,y1:`16`,x2:`21`,y2:`21`},null,-1)],64)):e.name===`reset`?(r(),S(x,{key:12},[n[19]||=m(`polyline`,{points:`4 9 4 4 9 4`},null,-1),n[20]||=m(`polyline`,{points:`15 4 20 4 20 9`},null,-1),n[21]||=m(`polyline`,{points:`20 15 20 20 15 20`},null,-1),n[22]||=m(`polyline`,{points:`9 20 4 20 4 15`},null,-1)],64)):e.name===`logo`?(r(),S(x,{key:13},[n[23]||=C(`<circle cx="12" cy="12" r="2.2"></circle><circle cx="4" cy="5" r="1.6"></circle><circle cx="20" cy="5" r="1.6"></circle><circle cx="4" cy="19" r="1.6"></circle><circle cx="20" cy="19" r="1.6"></circle><line x1="10.5" y1="10.8" x2="5.2" y2="6.4"></line><line x1="13.5" y1="10.8" x2="18.8" y2="6.4"></line><line x1="10.5" y1="13.2" x2="5.2" y2="17.6"></line><line x1="13.5" y1="13.2" x2="18.8" y2="17.6"></line>`,9)],64)):e.name===`import`?(r(),S(x,{key:14},[n[24]||=m(`path`,{d:`M12 4 V15`},null,-1),n[25]||=m(`polyline`,{points:`7 10 12 15 17 10`},null,-1),n[26]||=m(`path`,{d:`M4 19 H20`},null,-1)],64)):e.name===`export`?(r(),S(x,{key:15},[n[27]||=m(`path`,{d:`M12 15 V4`},null,-1),n[28]||=m(`polyline`,{points:`7 9 12 4 17 9`},null,-1),n[29]||=m(`path`,{d:`M4 19 H20`},null,-1)],64)):e.name===`balance`?(r(),S(x,{key:16},[n[30]||=C(`<line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="18" x2="21" y2="18"></line><polyline points="9 4 5 6 9 8"></polyline><polyline points="15 4 19 6 15 8"></polyline><polyline points="9 10 5 12 9 14"></polyline><polyline points="15 10 19 12 15 14"></polyline><polyline points="9 16 5 18 9 20"></polyline><polyline points="15 16 19 18 15 20"></polyline>`,9)],64)):e.name===`mindmap`?(r(),S(x,{key:17},[n[31]||=C(`<circle cx="12" cy="12" r="2.4" fill="currentColor" stroke="none"></circle><line x1="13.4" y1="10.6" x2="18.5" y2="5.5"></line><line x1="13.4" y1="13.4" x2="18.5" y2="18.5"></line><line x1="10.6" y1="10.6" x2="5.5" y2="5.5"></line><line x1="10.6" y1="13.4" x2="5.5" y2="18.5"></line><circle cx="19.5" cy="4.5" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="19.5" cy="19.5" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="4.5" cy="4.5" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="4.5" cy="19.5" r="1.8" fill="currentColor" stroke="none"></circle>`,9)],64)):e.name===`tree`?(r(),S(x,{key:18},[n[32]||=C(`<circle cx="5" cy="12" r="2" fill="currentColor" stroke="none"></circle><circle cx="19" cy="5" r="2" fill="currentColor" stroke="none"></circle><circle cx="19" cy="12" r="2" fill="currentColor" stroke="none"></circle><circle cx="19" cy="19" r="2" fill="currentColor" stroke="none"></circle><line x1="7" y1="12" x2="12" y2="12"></line><line x1="12" y1="12" x2="12" y2="5"></line><line x1="12" y1="12" x2="12" y2="19"></line><line x1="12" y1="5" x2="17" y2="5"></line><line x1="12" y1="19" x2="17" y2="19"></line>`,9)],64)):e.name===`org`?(r(),S(x,{key:19},[n[33]||=C(`<circle cx="12" cy="5" r="2" fill="currentColor" stroke="none"></circle><circle cx="6" cy="19" r="2" fill="currentColor" stroke="none"></circle><circle cx="12" cy="19" r="2" fill="currentColor" stroke="none"></circle><circle cx="18" cy="19" r="2" fill="currentColor" stroke="none"></circle><line x1="12" y1="7" x2="12" y2="13"></line><line x1="6" y1="13" x2="18" y2="13"></line><line x1="6" y1="13" x2="6" y2="17"></line><line x1="12" y1="13" x2="12" y2="17"></line><line x1="18" y1="13" x2="18" y2="17"></line>`,9)],64)):e.name===`image`?(r(),S(x,{key:20},[n[34]||=m(`rect`,{x:`3`,y:`5`,width:`18`,height:`14`,rx:`2`},null,-1),n[35]||=m(`circle`,{cx:`9`,cy:`11`,r:`1.6`},null,-1),n[36]||=m(`polyline`,{points:`3 17 9 12 13 15 16 13 21 17`},null,-1)],64)):e.name===`x`?(r(),S(x,{key:21},[n[37]||=m(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`},null,-1),n[38]||=m(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`},null,-1)],64)):e.name===`link`?(r(),S(x,{key:22},[n[39]||=m(`path`,{d:`M10 13 a4 4 0 0 0 5.66 0 l3 -3 a4 4 0 1 0 -5.66 -5.66 l-1 1`},null,-1),n[40]||=m(`path`,{d:`M14 11 a4 4 0 0 0 -5.66 0 l-3 3 a4 4 0 1 0 5.66 5.66 l1 -1`},null,-1)],64)):e.name===`note`?(r(),S(x,{key:23},[n[41]||=m(`path`,{d:`M6 4 h9 l3 3 v13 a1 1 0 0 1 -1 1 h-11 a1 1 0 0 1 -1 -1 v-15 a1 1 0 0 1 1 -1 z`},null,-1),n[42]||=m(`line`,{x1:`8`,y1:`10`,x2:`16`,y2:`10`},null,-1),n[43]||=m(`line`,{x1:`8`,y1:`13`,x2:`16`,y2:`13`},null,-1),n[44]||=m(`line`,{x1:`8`,y1:`16`,x2:`13`,y2:`16`},null,-1)],64)):c(``,!0)],8,T))}}),k=`data:image/svg+xml,%3csvg%20t='1780822312364'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='7459'%20width='200'%20height='200'%3e%3cpath%20d='M329.16%20292.571h658.286V512H329.16zM329.16%200h658.286v219.429H329.16z'%20fill='%239AA1A2'%20p-id='7460'%3e%3c/path%3e%3cpath%20d='M44.927%20146.286a46.519%2046.519%200%200%201%2038.107-73.143h319.269v73.143H109.73V791.99l-48.713%205.705-24.43-651.41h8.339z'%20fill='%239AA1A2'%20p-id='7461'%3e%3c/path%3e%3cpath%20d='M363.83%20877.714H179.51c-78.775%200-142.921-66.12-142.921-147.31V112.787c0-21.943%2017.188-39.643%2038.473-39.643%2021.211%200%2033.5%2017.774%2033.5%2039.643v617.619c0%2037.522%2028.013%2076.58%2064.438%2076.58h190.903c21.211%200%2038.766%2013.97%2038.766%2035.84%200%2021.943-17.555%2034.89-38.766%2034.89z'%20fill='%239AA1A2'%20p-id='7462'%3e%3c/path%3e%3cpath%20d='M432.95%20438.857H179.51c-78.775%200-81.043-18.578-81.043-62.903l10.094-90.624c0%2020.48%2013.458%2080.677%2049.884%2080.677h210.139c21.211%200%20120.613%204.023%20120.613%2016.018%200%2011.922-35.036%2056.832-56.32%2056.832zM640.017%20749.714V640a54.857%2054.857%200%200%201%20109.714%200v109.714h109.715a54.857%2054.857%200%200%201%200%20109.715H749.73v109.714a54.857%2054.857%200%200%201-109.714%200V859.429H530.303a54.857%2054.857%200%200%201%200-109.715h109.714z'%20fill='%239AA1A2'%20p-id='7463'%3e%3c/path%3e%3c/svg%3e`,A=`data:image/svg+xml,%3csvg%20t='1780822464335'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='8457'%20width='200'%20height='200'%3e%3cpath%20d='M512%20804.571h512V1024H512V804.571zM0%200h658.286v219.429H0V0z'%20fill='%239AA1A2'%20p-id='8458'%3e%3c/path%3e%3cpath%20d='M619.813%20950.857h-184.32c-78.775%200-142.922-66.121-142.922-147.31V185.93c0-21.943%2017.189-39.643%2038.474-39.643%2021.211%200%2033.353%2017.773%2033.353%2039.643v617.618c0%2037.523%2034.743%2073.728%2071.095%2073.728h184.32c21.211%200%2038.473%2012.069%2038.473%2033.939%200%2021.943-17.189%2039.643-38.473%2039.643z'%20fill='%239AA1A2'%20p-id='8459'%3e%3c/path%3e%3cpath%20d='M676.571%20457.143V347.429a54.857%2054.857%200%200%201%20109.715%200v109.714H896a54.857%2054.857%200%200%201%200%20109.714H786.286v109.714a54.857%2054.857%200%200%201-109.715%200V566.857H566.857a54.857%2054.857%200%200%201%200-109.714h109.714z'%20fill='%239AA1A2'%20p-id='8460'%3e%3c/path%3e%3c/svg%3e`,j=[18,15,13,12],M=[700,600,500,400],N=[52,40,32,28],P=[120,80,60,44],F=[.8,.8,.8,.8],ee=j.length-1;function te(e,t){return Math.round(I(e,t)*F[ne(e)])}function ne(e){return Math.min(ee,Math.max(0,e))}function I(e,t=14){return Math.round(j[ne(e)]*t/14*10)/10}function L(e,t=14){return Math.round(N[ne(e)]*t/14)}var re=60,ie=14,R=24,ae=null;function oe(){if(ae)return ae;let e=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):null;return e?(ae=e,e):{font:``,measureText:()=>({width:0})}}var se=new Map;function ce(e,t,n){let r=`${n}|${t}|${e}`,i=se.get(r);if(i!==void 0)return i;let a=oe();a.font=`${n} ${t}px "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif`;let o=a.measureText(e).width;return se.set(r,o),o}var le=24,ue=400,de=8,fe=16,pe=4,me=200;function he(e,t,n){return Math.min(n,Math.max(t,e))}function ge(e,t,n,r,i){let a=ne(t),o=I(t,n),s=Math.min(ce(e.text||``,o,M[a]),me),c=te(t,n),l=Math.ceil(s+c*2),u=e.richContent&&(e.richContent.kind===`code`||e.richContent.kind===`table`)?Math.ceil(o*1.2)+6:L(t,n),d=0;if(e.link&&(d+=fe),e.note&&(d+=fe),d>0){let t=+!!e.link+ +!!e.note;d+=pe*t}let f=l+d,p=(()=>{let t=Math.round(P[a]*n/14);if(e.richContent&&(e.richContent.kind===`code`||e.richContent.kind===`table`)){let n=i?.[e.id];return Math.max(t,n??240)}return t})(),m=!!(e.richContent&&(e.richContent.kind===`code`||e.richContent.kind===`table`)),h=r?.[e.id],g=m?Math.max(24,h??Math.max(70,Math.ceil(o*5))):0,_=g>0?10:0;if(!e.image)return{w:Math.max(p,f),h:Math.ceil(u+_+g)};let v=he(e.image.width,le,ue);return{w:Math.max(p,f,Math.ceil(v+c*2)),h:Math.ceil(e.image.height+de+u+_+g)}}function _e(e,t={}){let n=t.mode??`mindmap`,r=t.preservePositions===!0,i=xe(e,0,null,1,`right`,t.baseFontSize??14,t.richHeights,t.richWidths);return z(i),ve(i,n,r),i.x=0,i.y=0,B(i,r)}function ve(e,t,n=!1){if(t===`mindmap`){let t=e.children;if(t.length!==0)if(t.length===1)t[0]._dir=`right`,t[0].side=1,t[0]._dirRight=1;else{let e=t.reduce((e,t)=>e+t._subtreeH,0),n=1,r=Math.abs(t[0]._subtreeH-(e-t[0]._subtreeH)),i=0;for(let a=0;a<t.length-1;a++){i+=t[a]._subtreeH;let o=Math.abs(i-(e-i));o<r&&(r=o,n=a+1)}for(let e=0;e<n;e++)t[e]._dir=`right`,t[e].side=1,t[e]._dirRight=1;for(let e=n;e<t.length;e++)t[e]._dir=`left`,t[e].side=-1,t[e]._dirRight=-1}let r=e.children.filter(e=>e.side===1),i=e.children.filter(e=>e.side===-1),a=(e,t)=>{let n=t===`right`?1:-1;e._dir=t,e.side=n,e._dirRight=n;for(let n of e.children)a(n,t)};for(let e of r)a(e,`right`);for(let e of i)a(e,`left`);r.length>0&&ye({...e,children:r},`right`,re,!0,n),i.length>0&&ye({...e,children:i},`left`,re,!0,n)}else if(t===`tree`){let t=e=>{e.side=1,e._dir=`right`;for(let n of e.children)t(n)};for(let t of e.children)t._dir=`right`;ye(e,`right`,re,!0,n),t(e)}else{for(let t of e.children)t._dir=`down`;be(e,re,n)}}function ye(e,t,n,r,i=!1){if(e.children.length===0)return;let a=e.children.reduce((e,t,n)=>e+t._subtreeH+(n>0?ie:0),0),o=t===`right`?1:-1,s=r?o:1,c=e.y-s*a/2;e.children.forEach(r=>{i||(r.x=e.x+o*(e.width/2+n+r.width/2),r.y=c+s*r._subtreeH/2),r._dir=t,c+=s*(r._subtreeH+ie),ye(r,t,n,!1,i)})}function be(e,t,n=!1){if(e.children.length===0)return;let r=e.children.reduce((e,t,n)=>e+t._subtreeW+(n>0?ie*2:0),0),i=e.x-r/2;e.children.forEach(r=>{n||(r.x=i+r._subtreeW/2,r.y=e.y+e.height/2+t+r.height/2),r._dir=`down`,i+=r._subtreeW+ie*2,be(r,t,n)})}function xe(e,t,n,r,i,a,o,s){let c=ge(e,t,a,o,s),l={id:e.id,text:e.text,depth:t,x:e._x??0,y:e._y??0,width:c.w,height:c.h,fontSize:I(t,a),isRoot:t===0,collapsed:e.collapsed,side:r,_dir:i,_dirRight:r,_subtreeH:c.h,_subtreeW:c.w,image:e.image?{...e.image}:void 0,link:e.link?{url:e.link.url}:void 0,note:e.note?{text:e.note.text}:void 0,richContent:e.richContent?{kind:e.richContent.kind,raw:e.richContent.raw,lang:e.richContent.lang}:void 0,children:[],parent:n};if(e.collapsed)return l;let u=e.children.length,d=Math.ceil(u/2);return l.children=e.children.map((e,n)=>{let c=t===0?n<d?1:-1:r;return xe(e,t+1,l,c,i,a,o,s)}),l}function z(e){let t=[e];for(let e=0;e<t.length;e++){let n=t[e];for(let e of n.children)t.push(e)}for(let e=t.length-1;e>=0;e--){let n=t[e];if(n.collapsed||n.children.length===0){n._subtreeH=n.height,n._subtreeW=n.width;continue}let r=0,i=0;for(let e of n.children)r+=e._subtreeH,i+=e._subtreeW;n.children.length>1&&(r+=ie*(n.children.length-1),i+=ie*2*(n.children.length-1)),n._subtreeH=Math.max(n.height,r),n._subtreeW=Math.max(n.width,i)}}function B(e,t=!1){let n=[e],r=1/0,i=-1/0,a=1/0,o=-1/0;for(;n.length;){let e=n.pop(),t=e.width/2,s=e.height/2;e.x-t<r&&(r=e.x-t),e.x+t>i&&(i=e.x+t),e.y-s<a&&(a=e.y-s),e.y+s>o&&(o=e.y+s),n.push(...e.children)}if(t)return{root:e,width:i-r+R*2,height:o-a+R*2,vbX:r-R,vbY:a-R,vbW:i-r+R*2,vbH:o-a+R*2};let s=R-a,c=[e];for(;c.length;){let e=c.pop();e.y+=s,c.push(...e.children)}return a+=s,o+=s,{root:e,width:i-r+R*2,height:o+R,vbX:r-R,vbY:0,vbW:i-r+R*2,vbH:o+R}}var Se=[{id:`default`,name:`默认`,colors:[`#f87171`,`#fb923c`,`#fbbf24`,`#a3e635`,`#34d399`,`#22d3ee`,`#818cf8`,`#c084fc`]},{id:`classic`,name:`经典`,colors:[`#ef4444`,`#f59e0b`,`#10b981`,`#3b82f6`,`#6366f1`,`#8b5cf6`,`#ec4899`,`#14b8a6`]},{id:`vivid`,name:`活力`,colors:[`#dc2626`,`#ea580c`,`#ca8a04`,`#16a34a`,`#0891b2`,`#2563eb`,`#7c3aed`,`#db2777`]},{id:`dev`,name:`代码`,colors:[`#f472b6`,`#a78bfa`,`#60a5fa`,`#38bdf8`,`#22d3ee`,`#34d399`,`#facc15`,`#fb923c`]},{id:`mint`,name:`薄荷`,colors:[`#5eead4`,`#67e8f9`,`#93c5fd`,`#c4b5fd`,`#fbcfe8`,`#fde68a`,`#a7f3d0`,`#bae6fd`]}];function Ce(e,t=[]){return[...Se,...t].find(t=>t.id===e)??Se[0]}function V(){return`n_`+Math.random().toString(36).slice(2,10)+Date.now().toString(36).slice(-4)}function we(e){return JSON.parse(JSON.stringify(e))}function H(e,t){if(e.id===t)return e;for(let n of e.children){let e=H(n,t);if(e)return e}return null}function U(e,t,n=null){if(e.id===t)return n;for(let n of e.children){let r=U(n,t,e);if(r!==null)return r}return null}function Te(e,t){let n=e.children.findIndex(e=>e.id===t);if(n>=0)return e.children.splice(n,1),!0;for(let n of e.children)if(Te(n,t))return!0;return!1}function Ee(e,t,n){let r=H(e,t);return!r||r.text===n?!1:(r.text=n,!0)}function De(e,t,n,r){if(!U(e,t)||t===n||H(H(e,t),n))return!1;let i=U(e,t),a=i.children.findIndex(e=>e.id===t);if(a<0)return!1;let[o]=i.children.splice(a,1);if(r===`child`){let t=H(e,n);return t?(t.children.push(o),!0):(i.children.splice(a,0,o),!1)}let s=U(e,n);if(!s)return i.children.splice(a,0,o),!1;let c=s.children.findIndex(e=>e.id===n);return c<0?(i.children.splice(a,0,o),!1):(r===`after`&&(c+=1),s.children.splice(c,0,o),!0)}function Oe(e){let t=/^新节点(?:\s+(\d+))?$/,n=0,r=!1;for(let i of e.children){let e=i.text.match(t);if(e)if(e[1]){let t=parseInt(e[1],10);t>n&&(n=t)}else r=!0}return n===0&&!r?Pe:n>0?`新节点 ${n+1}`:`新节点 2`}function ke(e,t,n){let r=H(e,t);if(!r)return null;let i={id:V(),text:n??Oe(r),children:[]};return r.children.push(i),i}function Ae(e,t,n){let r=U(e,t);if(!r)return null;let i=r.children.findIndex(e=>e.id===t);if(i<0)return null;let a={id:V(),text:n??Oe(r),children:[]};return r.children.splice(i+1,0,a),a}function je(e,t,n){let r=U(e,t);if(!r)return null;let i=r.children.findIndex(e=>e.id===t);if(i<0)return null;let a={id:V(),text:n,children:[]};return r.children.splice(i,0,a),a}function Me(e,t){let n=U(e,t);if(!n)return null;let r=n.children.findIndex(e=>e.id===t);if(r<0)return null;let i=n.children[r],a=we(i);return Ne(a),n.children.splice(r+1,0,a),a}function Ne(e){e.id=V();for(let t of e.children)Ne(t)}var Pe=`新节点`;function Fe(e,t=`导入的导图`){let n=e.split(/\r?\n/),r={id:V(),text:t,children:[]},i=[r],a=[-1/0],o=[],s=/^(#{1,6})\s+(.+?)\s*#*\s*$/,c=/^!\[([^\]]*)\]\((\S+?)(?:\s+"[^"]*")?\)\s*$/,l=/^\[([^\]]+)\]\((\S+?)(?:\s+"[^"]*")?\)\s*$/,u=/^(`{3,}|~{3,})\s*(\S+)?\s*$/,d=!1,f=[],p=null;function m(e){f.push(e)}function h(){if(p&&f.length>0){for(;f.length>0&&f[0].trim()===``;)f.shift();for(;f.length>0&&f[f.length-1].trim()===``;)f.pop();let e=f.join(`
|
|
1
|
+
import{Cn as e,Fn as t,Jn as n,Ln as r,Mn as i,Tn as a,Vn as o,Zn as s,_n as c,_r as l,ar as u,cn as d,gn as f,gr as p,hn as m,ln as h,mn as g,mr as _,on as v,pr as y,sr as b,un as x,vn as S,xn as C,zn as w}from"./element-plus-DB-NeCl9.js";var T=[`width`,`height`,`stroke-width`],E={key:4,points:`6 9 12 15 18 9`},D={key:5,points:`9 6 15 12 9 18`},O=a({__name:`Icon`,props:{name:{},size:{},stroke:{}},setup(e){return(t,n)=>(w(),S(`svg`,{width:e.size??16,height:e.size??16,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":e.stroke??1.8,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[e.name===`add`?(w(),S(x,{key:0},[n[0]||=m(`circle`,{cx:`12`,cy:`12`,r:`9`},null,-1),n[1]||=m(`line`,{x1:`12`,y1:`8`,x2:`12`,y2:`16`},null,-1),n[2]||=m(`line`,{x1:`8`,y1:`12`,x2:`16`,y2:`12`},null,-1)],64)):e.name===`minus`?(w(),S(x,{key:1},[n[3]||=m(`circle`,{cx:`12`,cy:`12`,r:`9`},null,-1),n[4]||=m(`line`,{x1:`8`,y1:`12`,x2:`16`,y2:`12`},null,-1)],64)):e.name===`delete`?(w(),S(x,{key:2},[n[5]||=C(`<polyline points="4 7 20 7"></polyline><path d="M9 7 V5 a1 1 0 0 1 1 -1 h4 a1 1 0 0 1 1 1 V7"></path><path d="M6 7 l1 12 a1 1 0 0 0 1 1 h8 a1 1 0 0 0 1 -1 l1 -12"></path><line x1="10" y1="11" x2="10" y2="18"></line><line x1="14" y1="11" x2="14" y2="18"></line>`,5)],64)):e.name===`edit`?(w(),S(x,{key:3},[n[6]||=m(`path`,{d:`M4 20 l4 -1 11 -11 -3 -3 -11 11 z`},null,-1),n[7]||=m(`line`,{x1:`14`,y1:`6`,x2:`18`,y2:`10`},null,-1)],64)):e.name===`collapse`?(w(),S(`polyline`,E)):e.name===`expand`?(w(),S(`polyline`,D)):e.name===`collapse-all`?(w(),S(x,{key:6},[n[8]||=C(`<line x1="4" y1="4" x2="10" y2="10"></line><polyline points="6 10 10 10 10 6"></polyline><line x1="20" y1="4" x2="14" y2="10"></line><polyline points="14 6 14 10 18 10"></polyline><line x1="20" y1="20" x2="14" y2="14"></line><polyline points="14 18 14 14 18 14"></polyline><line x1="4" y1="20" x2="10" y2="14"></line><polyline points="6 14 10 14 10 18"></polyline>`,8)],64)):e.name===`expand-all`?(w(),S(x,{key:7},[n[9]||=C(`<line x1="10" y1="10" x2="4" y2="4"></line><polyline points="4 6 4 4 6 4"></polyline><line x1="14" y1="10" x2="20" y2="4"></line><polyline points="20 6 20 4 18 4"></polyline><line x1="14" y1="14" x2="20" y2="20"></line><polyline points="20 18 20 20 18 20"></polyline><line x1="10" y1="14" x2="4" y2="20"></line><polyline points="4 18 4 20 6 20"></polyline>`,8)],64)):e.name===`expand-level-1`?(w(),S(x,{key:8},[n[10]||=C(`<circle cx="12" cy="5" r="1.8" fill="currentColor" stroke="none"></circle><line x1="12" y1="7" x2="12" y2="11"></line><line x1="12" y1="11" x2="5" y2="17"></line><line x1="12" y1="11" x2="12" y2="17"></line><line x1="12" y1="11" x2="19" y2="17"></line><circle cx="5" cy="19" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="12" cy="19" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="19" cy="19" r="1.8" fill="currentColor" stroke="none"></circle>`,8)],64)):e.name===`expand-level-2`?(w(),S(x,{key:9},[n[11]||=C(`<circle cx="12" cy="3" r="1.4" fill="currentColor" stroke="none"></circle><line x1="12" y1="4.5" x2="12" y2="7"></line><line x1="12" y1="7" x2="5" y2="11"></line><line x1="12" y1="7" x2="12" y2="11"></line><line x1="12" y1="7" x2="19" y2="11"></line><line x1="5" y1="11" x2="3" y2="16"></line><line x1="5" y1="11" x2="7" y2="16"></line><line x1="12" y1="11" x2="10" y2="16"></line><line x1="12" y1="11" x2="14" y2="16"></line><line x1="19" y1="11" x2="17" y2="16"></line><line x1="19" y1="11" x2="21" y2="16"></line><circle cx="5" cy="11" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="12" cy="11" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="19" cy="11" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="3" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="7" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="10" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="14" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="17" cy="18" r="1.4" fill="currentColor" stroke="none"></circle><circle cx="21" cy="18" r="1.4" fill="currentColor" stroke="none"></circle>`,20)],64)):e.name===`zoom-in`?(w(),S(x,{key:10},[n[12]||=m(`circle`,{cx:`11`,cy:`11`,r:`7`},null,-1),n[13]||=m(`line`,{x1:`11`,y1:`8`,x2:`11`,y2:`14`},null,-1),n[14]||=m(`line`,{x1:`8`,y1:`11`,x2:`14`,y2:`11`},null,-1),n[15]||=m(`line`,{x1:`16`,y1:`16`,x2:`21`,y2:`21`},null,-1)],64)):e.name===`zoom-out`?(w(),S(x,{key:11},[n[16]||=m(`circle`,{cx:`11`,cy:`11`,r:`7`},null,-1),n[17]||=m(`line`,{x1:`8`,y1:`11`,x2:`14`,y2:`11`},null,-1),n[18]||=m(`line`,{x1:`16`,y1:`16`,x2:`21`,y2:`21`},null,-1)],64)):e.name===`reset`?(w(),S(x,{key:12},[n[19]||=m(`polyline`,{points:`4 9 4 4 9 4`},null,-1),n[20]||=m(`polyline`,{points:`15 4 20 4 20 9`},null,-1),n[21]||=m(`polyline`,{points:`20 15 20 20 15 20`},null,-1),n[22]||=m(`polyline`,{points:`9 20 4 20 4 15`},null,-1)],64)):e.name===`logo`?(w(),S(x,{key:13},[n[23]||=C(`<circle cx="12" cy="12" r="2.2"></circle><circle cx="4" cy="5" r="1.6"></circle><circle cx="20" cy="5" r="1.6"></circle><circle cx="4" cy="19" r="1.6"></circle><circle cx="20" cy="19" r="1.6"></circle><line x1="10.5" y1="10.8" x2="5.2" y2="6.4"></line><line x1="13.5" y1="10.8" x2="18.8" y2="6.4"></line><line x1="10.5" y1="13.2" x2="5.2" y2="17.6"></line><line x1="13.5" y1="13.2" x2="18.8" y2="17.6"></line>`,9)],64)):e.name===`import`?(w(),S(x,{key:14},[n[24]||=m(`path`,{d:`M12 4 V15`},null,-1),n[25]||=m(`polyline`,{points:`7 10 12 15 17 10`},null,-1),n[26]||=m(`path`,{d:`M4 19 H20`},null,-1)],64)):e.name===`export`?(w(),S(x,{key:15},[n[27]||=m(`path`,{d:`M12 15 V4`},null,-1),n[28]||=m(`polyline`,{points:`7 9 12 4 17 9`},null,-1),n[29]||=m(`path`,{d:`M4 19 H20`},null,-1)],64)):e.name===`balance`?(w(),S(x,{key:16},[n[30]||=C(`<line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="18" x2="21" y2="18"></line><polyline points="9 4 5 6 9 8"></polyline><polyline points="15 4 19 6 15 8"></polyline><polyline points="9 10 5 12 9 14"></polyline><polyline points="15 10 19 12 15 14"></polyline><polyline points="9 16 5 18 9 20"></polyline><polyline points="15 16 19 18 15 20"></polyline>`,9)],64)):e.name===`mindmap`?(w(),S(x,{key:17},[n[31]||=C(`<circle cx="12" cy="12" r="2.4" fill="currentColor" stroke="none"></circle><line x1="13.4" y1="10.6" x2="18.5" y2="5.5"></line><line x1="13.4" y1="13.4" x2="18.5" y2="18.5"></line><line x1="10.6" y1="10.6" x2="5.5" y2="5.5"></line><line x1="10.6" y1="13.4" x2="5.5" y2="18.5"></line><circle cx="19.5" cy="4.5" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="19.5" cy="19.5" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="4.5" cy="4.5" r="1.8" fill="currentColor" stroke="none"></circle><circle cx="4.5" cy="19.5" r="1.8" fill="currentColor" stroke="none"></circle>`,9)],64)):e.name===`tree`?(w(),S(x,{key:18},[n[32]||=C(`<circle cx="5" cy="12" r="2" fill="currentColor" stroke="none"></circle><circle cx="19" cy="5" r="2" fill="currentColor" stroke="none"></circle><circle cx="19" cy="12" r="2" fill="currentColor" stroke="none"></circle><circle cx="19" cy="19" r="2" fill="currentColor" stroke="none"></circle><line x1="7" y1="12" x2="12" y2="12"></line><line x1="12" y1="12" x2="12" y2="5"></line><line x1="12" y1="12" x2="12" y2="19"></line><line x1="12" y1="5" x2="17" y2="5"></line><line x1="12" y1="19" x2="17" y2="19"></line>`,9)],64)):e.name===`org`?(w(),S(x,{key:19},[n[33]||=C(`<circle cx="12" cy="5" r="2" fill="currentColor" stroke="none"></circle><circle cx="6" cy="19" r="2" fill="currentColor" stroke="none"></circle><circle cx="12" cy="19" r="2" fill="currentColor" stroke="none"></circle><circle cx="18" cy="19" r="2" fill="currentColor" stroke="none"></circle><line x1="12" y1="7" x2="12" y2="13"></line><line x1="6" y1="13" x2="18" y2="13"></line><line x1="6" y1="13" x2="6" y2="17"></line><line x1="12" y1="13" x2="12" y2="17"></line><line x1="18" y1="13" x2="18" y2="17"></line>`,9)],64)):e.name===`image`?(w(),S(x,{key:20},[n[34]||=m(`rect`,{x:`3`,y:`5`,width:`18`,height:`14`,rx:`2`},null,-1),n[35]||=m(`circle`,{cx:`9`,cy:`11`,r:`1.6`},null,-1),n[36]||=m(`polyline`,{points:`3 17 9 12 13 15 16 13 21 17`},null,-1)],64)):e.name===`x`?(w(),S(x,{key:21},[n[37]||=m(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`},null,-1),n[38]||=m(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`},null,-1)],64)):e.name===`link`?(w(),S(x,{key:22},[n[39]||=m(`path`,{d:`M10 13 a4 4 0 0 0 5.66 0 l3 -3 a4 4 0 1 0 -5.66 -5.66 l-1 1`},null,-1),n[40]||=m(`path`,{d:`M14 11 a4 4 0 0 0 -5.66 0 l-3 3 a4 4 0 1 0 5.66 5.66 l1 -1`},null,-1)],64)):e.name===`note`?(w(),S(x,{key:23},[n[41]||=m(`path`,{d:`M6 4 h9 l3 3 v13 a1 1 0 0 1 -1 1 h-11 a1 1 0 0 1 -1 -1 v-15 a1 1 0 0 1 1 -1 z`},null,-1),n[42]||=m(`line`,{x1:`8`,y1:`10`,x2:`16`,y2:`10`},null,-1),n[43]||=m(`line`,{x1:`8`,y1:`13`,x2:`16`,y2:`13`},null,-1),n[44]||=m(`line`,{x1:`8`,y1:`16`,x2:`13`,y2:`16`},null,-1)],64)):c(``,!0)],8,T))}}),k=`data:image/svg+xml,%3csvg%20t='1780822312364'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='7459'%20width='200'%20height='200'%3e%3cpath%20d='M329.16%20292.571h658.286V512H329.16zM329.16%200h658.286v219.429H329.16z'%20fill='%239AA1A2'%20p-id='7460'%3e%3c/path%3e%3cpath%20d='M44.927%20146.286a46.519%2046.519%200%200%201%2038.107-73.143h319.269v73.143H109.73V791.99l-48.713%205.705-24.43-651.41h8.339z'%20fill='%239AA1A2'%20p-id='7461'%3e%3c/path%3e%3cpath%20d='M363.83%20877.714H179.51c-78.775%200-142.921-66.12-142.921-147.31V112.787c0-21.943%2017.188-39.643%2038.473-39.643%2021.211%200%2033.5%2017.774%2033.5%2039.643v617.619c0%2037.522%2028.013%2076.58%2064.438%2076.58h190.903c21.211%200%2038.766%2013.97%2038.766%2035.84%200%2021.943-17.555%2034.89-38.766%2034.89z'%20fill='%239AA1A2'%20p-id='7462'%3e%3c/path%3e%3cpath%20d='M432.95%20438.857H179.51c-78.775%200-81.043-18.578-81.043-62.903l10.094-90.624c0%2020.48%2013.458%2080.677%2049.884%2080.677h210.139c21.211%200%20120.613%204.023%20120.613%2016.018%200%2011.922-35.036%2056.832-56.32%2056.832zM640.017%20749.714V640a54.857%2054.857%200%200%201%20109.714%200v109.714h109.715a54.857%2054.857%200%200%201%200%20109.715H749.73v109.714a54.857%2054.857%200%200%201-109.714%200V859.429H530.303a54.857%2054.857%200%200%201%200-109.715h109.714z'%20fill='%239AA1A2'%20p-id='7463'%3e%3c/path%3e%3c/svg%3e`,A=`data:image/svg+xml,%3csvg%20t='1780822464335'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='8457'%20width='200'%20height='200'%3e%3cpath%20d='M512%20804.571h512V1024H512V804.571zM0%200h658.286v219.429H0V0z'%20fill='%239AA1A2'%20p-id='8458'%3e%3c/path%3e%3cpath%20d='M619.813%20950.857h-184.32c-78.775%200-142.922-66.121-142.922-147.31V185.93c0-21.943%2017.189-39.643%2038.474-39.643%2021.211%200%2033.353%2017.773%2033.353%2039.643v617.618c0%2037.523%2034.743%2073.728%2071.095%2073.728h184.32c21.211%200%2038.473%2012.069%2038.473%2033.939%200%2021.943-17.189%2039.643-38.473%2039.643z'%20fill='%239AA1A2'%20p-id='8459'%3e%3c/path%3e%3cpath%20d='M676.571%20457.143V347.429a54.857%2054.857%200%200%201%20109.715%200v109.714H896a54.857%2054.857%200%200%201%200%20109.714H786.286v109.714a54.857%2054.857%200%200%201-109.715%200V566.857H566.857a54.857%2054.857%200%200%201%200-109.714h109.714z'%20fill='%239AA1A2'%20p-id='8460'%3e%3c/path%3e%3c/svg%3e`,j=[18,15,13,12],M=[700,600,500,400],N=[52,40,32,28],P=[120,80,60,44],F=[.8,.8,.8,.8],ee=j.length-1;function te(e,t){return Math.round(I(e,t)*F[ne(e)])}function ne(e){return Math.min(ee,Math.max(0,e))}function I(e,t=14){return Math.round(j[ne(e)]*t/14*10)/10}function L(e,t=14){return Math.round(N[ne(e)]*t/14)}var re=60,ie=14,R=24,ae=null;function oe(){if(ae)return ae;let e=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):null;return e?(ae=e,e):{font:``,measureText:()=>({width:0})}}var se=new Map;function ce(e,t,n){let r=`${n}|${t}|${e}`,i=se.get(r);if(i!==void 0)return i;let a=oe();a.font=`${n} ${t}px "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif`;let o=a.measureText(e).width;return se.set(r,o),o}var le=24,ue=400,de=8,fe=16,pe=4,me=200;function he(e,t,n){return Math.min(n,Math.max(t,e))}function ge(e,t,n,r,i){let a=ne(t),o=I(t,n),s=Math.min(ce(e.text||``,o,M[a]),me),c=te(t,n),l=Math.ceil(s+c*2),u=e.richContent&&(e.richContent.kind===`code`||e.richContent.kind===`table`)?Math.ceil(o*1.2)+6:L(t,n),d=0;if(e.link&&(d+=fe),e.note&&(d+=fe),d>0){let t=+!!e.link+ +!!e.note;d+=pe*t}let f=l+d,p=(()=>{let t=Math.round(P[a]*n/14);if(e.richContent&&(e.richContent.kind===`code`||e.richContent.kind===`table`)){let n=i?.[e.id];return Math.max(t,n??240)}return t})(),m=!!(e.richContent&&(e.richContent.kind===`code`||e.richContent.kind===`table`)),h=r?.[e.id],g=m?Math.max(24,h??Math.max(70,Math.ceil(o*5))):0,_=g>0?10:0;if(!e.image)return{w:Math.max(p,f),h:Math.ceil(u+_+g)};let v=he(e.image.width,le,ue);return{w:Math.max(p,f,Math.ceil(v+c*2)),h:Math.ceil(e.image.height+de+u+_+g)}}function _e(e,t={}){let n=t.mode??`mindmap`,r=t.preservePositions===!0,i=xe(e,0,null,1,`right`,t.baseFontSize??14,t.richHeights,t.richWidths);return z(i),ve(i,n,r),i.x=0,i.y=0,B(i,r)}function ve(e,t,n=!1){if(t===`mindmap`){let t=e.children;if(t.length!==0)if(t.length===1)t[0]._dir=`right`,t[0].side=1,t[0]._dirRight=1;else{let e=t.reduce((e,t)=>e+t._subtreeH,0),n=1,r=Math.abs(t[0]._subtreeH-(e-t[0]._subtreeH)),i=0;for(let a=0;a<t.length-1;a++){i+=t[a]._subtreeH;let o=Math.abs(i-(e-i));o<r&&(r=o,n=a+1)}for(let e=0;e<n;e++)t[e]._dir=`right`,t[e].side=1,t[e]._dirRight=1;for(let e=n;e<t.length;e++)t[e]._dir=`left`,t[e].side=-1,t[e]._dirRight=-1}let r=e.children.filter(e=>e.side===1),i=e.children.filter(e=>e.side===-1),a=(e,t)=>{let n=t===`right`?1:-1;e._dir=t,e.side=n,e._dirRight=n;for(let n of e.children)a(n,t)};for(let e of r)a(e,`right`);for(let e of i)a(e,`left`);r.length>0&&ye({...e,children:r},`right`,re,!0,n),i.length>0&&ye({...e,children:i},`left`,re,!0,n)}else if(t===`tree`){let t=e=>{e.side=1,e._dir=`right`;for(let n of e.children)t(n)};for(let t of e.children)t._dir=`right`;ye(e,`right`,re,!0,n),t(e)}else{for(let t of e.children)t._dir=`down`;be(e,re,n)}}function ye(e,t,n,r,i=!1){if(e.children.length===0)return;let a=e.children.reduce((e,t,n)=>e+t._subtreeH+(n>0?ie:0),0),o=t===`right`?1:-1,s=r?o:1,c=e.y-s*a/2;e.children.forEach(r=>{i||(r.x=e.x+o*(e.width/2+n+r.width/2),r.y=c+s*r._subtreeH/2),r._dir=t,c+=s*(r._subtreeH+ie),ye(r,t,n,!1,i)})}function be(e,t,n=!1){if(e.children.length===0)return;let r=e.children.reduce((e,t,n)=>e+t._subtreeW+(n>0?ie*2:0),0),i=e.x-r/2;e.children.forEach(r=>{n||(r.x=i+r._subtreeW/2,r.y=e.y+e.height/2+t+r.height/2),r._dir=`down`,i+=r._subtreeW+ie*2,be(r,t,n)})}function xe(e,t,n,r,i,a,o,s){let c=ge(e,t,a,o,s),l={id:e.id,text:e.text,depth:t,x:e._x??0,y:e._y??0,width:c.w,height:c.h,fontSize:I(t,a),isRoot:t===0,collapsed:e.collapsed,side:r,_dir:i,_dirRight:r,_subtreeH:c.h,_subtreeW:c.w,image:e.image?{...e.image}:void 0,link:e.link?{url:e.link.url}:void 0,note:e.note?{text:e.note.text}:void 0,richContent:e.richContent?{kind:e.richContent.kind,raw:e.richContent.raw,lang:e.richContent.lang}:void 0,children:[],parent:n};if(e.collapsed)return l;let u=e.children.length,d=Math.ceil(u/2);return l.children=e.children.map((e,n)=>{let c=t===0?n<d?1:-1:r;return xe(e,t+1,l,c,i,a,o,s)}),l}function z(e){let t=[e];for(let e=0;e<t.length;e++){let n=t[e];for(let e of n.children)t.push(e)}for(let e=t.length-1;e>=0;e--){let n=t[e];if(n.collapsed||n.children.length===0){n._subtreeH=n.height,n._subtreeW=n.width;continue}let r=0,i=0;for(let e of n.children)r+=e._subtreeH,i+=e._subtreeW;n.children.length>1&&(r+=ie*(n.children.length-1),i+=ie*2*(n.children.length-1)),n._subtreeH=Math.max(n.height,r),n._subtreeW=Math.max(n.width,i)}}function B(e,t=!1){let n=[e],r=1/0,i=-1/0,a=1/0,o=-1/0;for(;n.length;){let e=n.pop(),t=e.width/2,s=e.height/2;e.x-t<r&&(r=e.x-t),e.x+t>i&&(i=e.x+t),e.y-s<a&&(a=e.y-s),e.y+s>o&&(o=e.y+s),n.push(...e.children)}if(t)return{root:e,width:i-r+R*2,height:o-a+R*2,vbX:r-R,vbY:a-R,vbW:i-r+R*2,vbH:o-a+R*2};let s=R-a,c=[e];for(;c.length;){let e=c.pop();e.y+=s,c.push(...e.children)}return a+=s,o+=s,{root:e,width:i-r+R*2,height:o+R,vbX:r-R,vbY:0,vbW:i-r+R*2,vbH:o+R}}var Se=[{id:`default`,name:`默认`,colors:[`#f87171`,`#fb923c`,`#fbbf24`,`#a3e635`,`#34d399`,`#22d3ee`,`#818cf8`,`#c084fc`]},{id:`classic`,name:`经典`,colors:[`#ef4444`,`#f59e0b`,`#10b981`,`#3b82f6`,`#6366f1`,`#8b5cf6`,`#ec4899`,`#14b8a6`]},{id:`vivid`,name:`活力`,colors:[`#dc2626`,`#ea580c`,`#ca8a04`,`#16a34a`,`#0891b2`,`#2563eb`,`#7c3aed`,`#db2777`]},{id:`dev`,name:`代码`,colors:[`#f472b6`,`#a78bfa`,`#60a5fa`,`#38bdf8`,`#22d3ee`,`#34d399`,`#facc15`,`#fb923c`]},{id:`mint`,name:`薄荷`,colors:[`#5eead4`,`#67e8f9`,`#93c5fd`,`#c4b5fd`,`#fbcfe8`,`#fde68a`,`#a7f3d0`,`#bae6fd`]}];function Ce(e,t=[]){return[...Se,...t].find(t=>t.id===e)??Se[0]}function V(){return`n_`+Math.random().toString(36).slice(2,10)+Date.now().toString(36).slice(-4)}function we(e){return JSON.parse(JSON.stringify(e))}function H(e,t){if(e.id===t)return e;for(let n of e.children){let e=H(n,t);if(e)return e}return null}function U(e,t,n=null){if(e.id===t)return n;for(let n of e.children){let r=U(n,t,e);if(r!==null)return r}return null}function Te(e,t){let n=e.children.findIndex(e=>e.id===t);if(n>=0)return e.children.splice(n,1),!0;for(let n of e.children)if(Te(n,t))return!0;return!1}function Ee(e,t,n){let r=H(e,t);return!r||r.text===n?!1:(r.text=n,!0)}function De(e,t,n,r){if(!U(e,t)||t===n||H(H(e,t),n))return!1;let i=U(e,t),a=i.children.findIndex(e=>e.id===t);if(a<0)return!1;let[o]=i.children.splice(a,1);if(r===`child`){let t=H(e,n);return t?(t.children.push(o),!0):(i.children.splice(a,0,o),!1)}let s=U(e,n);if(!s)return i.children.splice(a,0,o),!1;let c=s.children.findIndex(e=>e.id===n);return c<0?(i.children.splice(a,0,o),!1):(r===`after`&&(c+=1),s.children.splice(c,0,o),!0)}function Oe(e){let t=/^新节点(?:\s+(\d+))?$/,n=0,r=!1;for(let i of e.children){let e=i.text.match(t);if(e)if(e[1]){let t=parseInt(e[1],10);t>n&&(n=t)}else r=!0}return n===0&&!r?Pe:n>0?`新节点 ${n+1}`:`新节点 2`}function ke(e,t,n){let r=H(e,t);if(!r)return null;let i={id:V(),text:n??Oe(r),children:[]};return r.children.push(i),i}function Ae(e,t,n){let r=U(e,t);if(!r)return null;let i=r.children.findIndex(e=>e.id===t);if(i<0)return null;let a={id:V(),text:n??Oe(r),children:[]};return r.children.splice(i+1,0,a),a}function je(e,t,n){let r=U(e,t);if(!r)return null;let i=r.children.findIndex(e=>e.id===t);if(i<0)return null;let a={id:V(),text:n,children:[]};return r.children.splice(i,0,a),a}function Me(e,t){let n=U(e,t);if(!n)return null;let r=n.children.findIndex(e=>e.id===t);if(r<0)return null;let i=n.children[r],a=we(i);return Ne(a),n.children.splice(r+1,0,a),a}function Ne(e){e.id=V();for(let t of e.children)Ne(t)}var Pe=`新节点`;function Fe(e,t=`导入的导图`){let n=e.split(/\r?\n/),r={id:V(),text:t,children:[]},i=[r],a=[-1/0],o=[],s=/^(#{1,6})\s+(.+?)\s*#*\s*$/,c=/^!\[([^\]]*)\]\((\S+?)(?:\s+"[^"]*")?\)\s*$/,l=/^\[([^\]]+)\]\((\S+?)(?:\s+"[^"]*")?\)\s*$/,u=/^(`{3,}|~{3,})\s*(\S+)?\s*$/,d=!1,f=[],p=null;function m(e){f.push(e)}function h(){if(p&&f.length>0){for(;f.length>0&&f[0].trim()===``;)f.shift();for(;f.length>0&&f[f.length-1].trim()===``;)f.pop();let e=f.join(`
|
|
2
2
|
`);e&&(p.note={text:e})}d=!1,f=[]}for(let e of n){if(d){let t=e.match(u);if(t&&t[1][0]==="`"){h();continue}m(e);continue}let t=e.match(s);if(t){let e=t[1].length,n=t[2].trim();o.push({level:e,text:n,body:``}),p=o[o.length-1];continue}let n=e.match(u);if(n&&n[2]===`note`){d=!0,f=[];continue}let r=e.match(c);if(r&&p){let e=r[2];p.image={src:e,naturalW:160,naturalH:120,width:160,height:120};continue}let i=e.match(l);if(i&&p){p.link={url:i[2]},p.text=i[1];continue}if(e.trim().length>0&&p){let t=e.trim();p.body=p.body?p.body+`
|
|
3
3
|
`+t:t}}d&&h();function g(e){for(;i.length>1;){let t=a[i.length-1];if(t!==void 0&&t<e.level)break;i.pop(),a.pop()}let t=i[i.length-1],n=e.text,r={id:V(),text:n,children:[]};e.image&&(r.image={...e.image}),e.link&&(r.link={url:e.link.url}),e.note&&(r.note={text:e.note.text}),e.body&&(r.note={text:e.body}),t.children.push(r),i.push(r),a.push(e.level)}for(let e of o)g(e);if(o.length>0&&o[0].level===1){let e=r.children[0];e&&(r.text=e.text,r.id=e.id,e.image&&(r.image={...e.image}),e.link&&(r.link={url:e.link.url}),e.note&&(r.note={text:e.note.text}),r.children=e.children)}return r}function Ie(e,t=1){let n=`#`.repeat(t)+` `+(e.text||``)+`
|
|
4
4
|
`;e.link&&(n+=`[${e.text||`link`}](${e.link.url})
|
|
@@ -9,13 +9,13 @@ import{Cn as e,Fn as t,Kn as n,Ln as r,Mn as i,Pn as a,Tn as o,Yn as s,_n as c,a
|
|
|
9
9
|
`)[0]?.slice(0,80)||`(空代码块)`,raw:s.join(`
|
|
10
10
|
`),lang:o});continue}let u=e.match(i);if(u){n.push({kind:`heading`,level:u[1].length,text:u[2].trim(),raw:e}),r++;continue}if(/^\s*\|/.test(e)){let e=[],i=r,a=!1;for(;i<t.length&&/^\s*\|/.test(t[i]);)e.push(t[i]),o.test(t[i])&&(a=!0),i++;if(a&&e.length>=2){n.push({kind:`table`,text:e[0].replace(/^\s*\|/,``).replace(/\|\s*$/,``).split(`|`)[0]?.trim()||`表格`,raw:e.join(`
|
|
11
11
|
`)}),r=i;continue}}let d=e.match(s),f=e.match(c);if(d||f){let e=r;for(;e<t.length;){let r=t[e].match(s),i=t[e].match(c);if(!(r||i))break;let a=t[e].replace(/^\s*[-*+]\s+/,``).replace(/^\s*\d+\.\s+/,``).trim();a.length>0&&n.push({kind:`list`,text:a.slice(0,80)||`(列表项)`,raw:t[e]}),e++}r=e;continue}if(e.trim()===``){r++;continue}let p=[e],m=r+1;for(;m<t.length;){let e=t[m];if(e.trim()===``||i.test(e)||a.test(e)||s.test(e)||c.test(e)||/^\s*\|/.test(e))break;p.push(e),m++}let h=p.join(` `).trim();n.push({kind:`paragraph`,text:h.slice(0,80)||`(空段落)`,raw:p.join(`
|
|
12
|
-
`)}),r=m}return n}function Re(e,t=`导入的导图`){let n=Le(e||``),r={id:V(),text:t,children:[]},i=[r],a=[0],o=!1;function s(e){if(e.kind===`heading`){let t=e.level;for(;i.length>1&&a[a.length-1]>=t;)i.pop(),a.pop();if(!o&&t===1){o=!0,r.text=e.text,a[0]=1;return}let n={id:V(),text:e.text,children:[]};i[i.length-1].children.push(n),i.push(n),a.push(t);return}let t={id:V(),text:e.text,children:[],richContent:{kind:e.kind,raw:e.raw,lang:e.lang}};i[i.length-1].children.push(t)}for(let e of n)s(e);return r}function ze(e){let t=e.minScale??.2,n=e.maxScale??1/0,r=e.step??1.2,i=l(1),a=l(0),o=l(0),s=l(!1),c=b({x:0,y:0,ox:0,oy:0}),u=l(!1),d=b({x:0,y:0}),f=b({x:0,y:0,width:0,height:0}),p=l(0),m=null;function h(e){m=e}function g(r){r.preventDefault();let s=e.getContainer();if(!s)return;let c=-r.deltaY*.001,l=Math.min(n,Math.max(t,i.value*(1+c))),u=s.getBoundingClientRect(),d=r.clientX-u.left,f=r.clientY-u.top,p=(d-a.value)/i.value,m=(f-o.value)/i.value;i.value=l,a.value=d-p*l,o.value=f-m*l}function _(){i.value=Math.min(n,i.value*r)}function v(){i.value=Math.max(t,i.value/r)}function y(e){var t;e.target.closest(`.zm-node, .zm-toolbar, button, input, textarea`)||(s.value=!0,c.x=e.clientX,c.y=e.clientY,c.ox=a.value,c.oy=o.value,window.addEventListener(`mousemove`,x),window.addEventListener(`mouseup`,S),(t=e.preventDefault)==null||t.call(e))}function x(e){s.value&&(a.value=c.ox+(e.clientX-c.x),o.value=c.oy+(e.clientY-c.y))}function S(){s.value=!1,window.removeEventListener(`mousemove`,x),window.removeEventListener(`mouseup`,S)}function C(e,t){u.value=!0,d.x=e,d.y=t,f.x=e,f.y=t,f.width=0,f.height=0,p.value++,window.addEventListener(`mousemove`,E),window.addEventListener(`mouseup`,T)}function w(e,t){if(!u.value)return;let n=Math.min(d.x,e),r=Math.min(d.y,t),i=Math.max(d.x,e),a=Math.max(d.y,t);f.x=n,f.y=r,f.width=i-n,f.height=a-r,p.value++}function T(){u.value=!1,window.removeEventListener(`mousemove`,E),window.removeEventListener(`mouseup`,T),m&&m()}function E(t){if(!u.value)return;let n=e.getContainer();if(!n)return;let r=n.getBoundingClientRect();w((t.clientX-r.left-a.value)/i.value,(t.clientY-r.top-o.value)/i.value)}function D(t,n,r,s=60){let c=e.getContainer();if(!c)return;let l=c.getBoundingClientRect(),u=(l.width-s*2)/t,d=(l.height-s*2)/n,f=Math.min(1,Math.max(.3,Math.min(u,d)));i.value=f,a.value=l.width/2,o.value=l.height/2-r*f}return{scale:i,offsetX:a,offsetY:o,isPanning:s,onWheel:g,zoomIn:_,zoomOut:v,startPan:y,startMarquee:C,updateMarquee:w,isMarquee:u,marquee:f,marqueeVersion:p,setOnMarqueeEnd:h,resetView:D}}var Be=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.platform);function Ve(e){return Be?e.metaKey:e.ctrlKey}function He(e){function n(){return e.getSelectedId()||(e.defaultTargetId?e.defaultTargetId():e.getRootId())}function r(t){let r=t.target;if(r&&(r.tagName===`INPUT`||r.tagName===`TEXTAREA`||r.isContentEditable)||e.isReadonly()||e.isEditing())return;let i=e.getSelectedId(),a=n();if(a){if(Ve(t)&&!t.shiftKey){if(t.key===`d`||t.key===`D`){i&&i!==e.getRootId()&&(t.preventDefault(),e.onDuplicate(i));return}if(t.key===`z`||t.key===`Z`){t.preventDefault(),e.onUndo();return}if(t.key===`y`||t.key===`Y`){t.preventDefault(),e.onRedo();return}if(t.key===`Home`){t.preventDefault(),e.onSelectRoot();return}}if(Ve(t)&&t.shiftKey&&(t.key===`Z`||t.key===`z`)){t.preventDefault(),e.onRedo();return}t.key===`Tab`?(t.preventDefault(),e.onAddChild(a)):t.key===`Enter`?(t.preventDefault(),t.shiftKey?i&&i!==e.getRootId()&&e.onAddSiblingBefore(i):e.onAddSibling(a)):(t.key===`Delete`||t.key===`Backspace`)&&i&&i!==e.getRootId()?(t.preventDefault(),e.onRemove(i)):t.key===`F2`&&i?(t.preventDefault(),e.onStartEdit(i)):t.key===`Escape`?(t.preventDefault(),e.onClearSelection()):t.key===`ArrowDown`?(t.preventDefault(),e.onNavigate(0,1)):t.key===`ArrowUp`?(t.preventDefault(),e.onNavigate(0,-1)):t.key===`ArrowRight`?(t.preventDefault(),e.onNavigate(1,0)):t.key===`ArrowLeft`&&(t.preventDefault(),e.onNavigate(-1,0))}}t(()=>{window.addEventListener(`keydown`,r)}),a(()=>{window.removeEventListener(`keydown`,r)})}function Ue(e=100){let t=l([]),n=-1;function r(){return n>0}function i(){return n<t.value.length-1}function a(r){let i=JSON.stringify(r);for(n<t.value.length-1&&(t.value=t.value.slice(0,n+1)),t.value.push(i),n=t.value.length-1;t.value.length>e;)t.value.shift(),n--}function o(){return r()?(n--,JSON.parse(t.value[n])):null}function s(){return i()?(n++,JSON.parse(t.value[n])):null}function c(){t.value=[],n=-1}return{canUndo:r,canRedo:i,record:a,undo:o,redo:s,reset:c}}var We=o({__name:`NodeContextMenu`,props:{x:{},y:{},container:{},hasImage:{type:Boolean,default:!1},hasLink:{type:Boolean,default:!1},hasNote:{type:Boolean,default:!1},hasCode:{type:Boolean,default:!1},hasTable:{type:Boolean,default:!1}},emits:[`pickImage`,`setLink`,`removeLink`,`editNote`,`removeNote`,`removeImage`,`addCode`,`editCode`,`removeCode`,`addTable`,`editTable`,`removeTable`,`close`],setup(t,{emit:n}){let i=t,o=n,s=_(()=>{let e=i.x+2,t=i.y+2;if(i.container){let n=i.container.getBoundingClientRect(),r=4+(3+ +!!i.hasImage+ +!!i.hasLink+ +!!i.hasNote+1+ +!!i.hasCode+1+ +!!i.hasTable)*28;e+180>n.right&&(e=Math.max(n.left+4,i.x-180-2)),t+r>n.bottom&&(t=Math.max(n.top+4,i.y-r-2)),e<n.left+2&&(e=n.left+2),t<n.top+2&&(t=n.top+2)}return{left:e,top:t}}),l=_(()=>i.hasImage),u=_(()=>i.hasLink),d=_(()=>i.hasNote);function f(e){let t=e.target;t&&t.closest(`.zm-node-menu`)||o(`close`)}function p(e){e.key===`Escape`&&o(`close`)}function y(){o(`close`)}window.addEventListener(`mousedown`,f,!0),window.addEventListener(`keydown`,p,!0),window.addEventListener(`wheel`,y,!0),window.addEventListener(`scroll`,y,!0),a(()=>{window.removeEventListener(`mousedown`,f,!0),window.removeEventListener(`keydown`,p,!0),window.removeEventListener(`wheel`,y,!0),window.removeEventListener(`scroll`,y,!0)});function b(e){e(),o(`close`)}return(n,i)=>(r(),S(`div`,{class:`zm-node-menu`,style:v({left:s.value.left+`px`,top:s.value.top+`px`}),onContextmenu:i[10]||=g(()=>{},[`prevent`])},[m(`button`,{class:`zm-node-menu-item`,onClick:i[0]||=g(e=>b(()=>o(`pickImage`)),[`stop`])},[e(O,{name:`image`,size:13}),m(`span`,null,h(l.value?`替换图片`:`添加图片`),1)]),l.value?(r(),S(`button`,{key:0,class:`zm-node-menu-item`,onClick:i[1]||=g(e=>b(()=>o(`removeImage`)),[`stop`])},[e(O,{name:`x`,size:13}),i[11]||=m(`span`,null,`移除图片`,-1)])):c(``,!0),m(`button`,{class:`zm-node-menu-item`,onClick:i[2]||=g(e=>b(()=>o(`setLink`)),[`stop`])},[e(O,{name:`link`,size:13}),m(`span`,null,h(u.value?`编辑链接`:`添加链接`),1)]),u.value?(r(),S(`button`,{key:1,class:`zm-node-menu-item`,onClick:i[3]||=g(e=>b(()=>o(`removeLink`)),[`stop`])},[e(O,{name:`x`,size:13}),i[12]||=m(`span`,null,`移除链接`,-1)])):c(``,!0),m(`button`,{class:`zm-node-menu-item`,onClick:i[4]||=g(e=>b(()=>o(`addCode`)),[`stop`])},[i[13]||=m(`span`,{class:`zm-node-menu-icon zm-node-menu-icon-code`,"aria-hidden":`true`},`{ }`,-1),m(`span`,null,h(t.hasCode?`编辑代码块`:`添加代码块`),1)]),t.hasCode?(r(),S(`button`,{key:2,class:`zm-node-menu-item`,onClick:i[5]||=g(e=>b(()=>o(`removeCode`)),[`stop`])},[e(O,{name:`x`,size:13}),i[14]||=m(`span`,null,`移除代码块`,-1)])):c(``,!0),m(`button`,{class:`zm-node-menu-item`,onClick:i[6]||=g(e=>b(()=>o(`addTable`)),[`stop`])},[i[15]||=m(`span`,{class:`zm-node-menu-icon zm-node-menu-icon-table`,"aria-hidden":`true`},`▦`,-1),m(`span`,null,h(t.hasTable?`编辑表格`:`添加表格`),1)]),t.hasTable?(r(),S(`button`,{key:3,class:`zm-node-menu-item`,onClick:i[7]||=g(e=>b(()=>o(`removeTable`)),[`stop`])},[e(O,{name:`x`,size:13}),i[16]||=m(`span`,null,`移除表格`,-1)])):c(``,!0),m(`button`,{class:`zm-node-menu-item`,onClick:i[8]||=g(e=>b(()=>o(`editNote`)),[`stop`])},[e(O,{name:`note`,size:13}),m(`span`,null,h(d.value?`编辑笔记`:`添加笔记`),1)]),d.value?(r(),S(`button`,{key:4,class:`zm-node-menu-item`,onClick:i[9]||=g(e=>b(()=>o(`removeNote`)),[`stop`])},[e(O,{name:`x`,size:13}),i[17]||=m(`span`,null,`移除笔记`,-1)])):c(``,!0)],36))}});function Ge(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}function Ke(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw Error(`map is read-only`)}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw Error(`set is read-only`)}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{let n=e[t],r=typeof n;(r===`object`||r===`function`)&&!Object.isFrozen(n)&&Ke(n)}),e}var qe=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function Je(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}function Ye(e,...t){let n=Object.create(null);for(let t in e)n[t]=e[t];return t.forEach(function(e){for(let t in e)n[t]=e[t]}),n}var Xe=`</span>`,Ze=e=>!!e.scope,Qe=(e,{prefix:t})=>{if(e.startsWith(`language:`))return e.replace(`language:`,`language-`);if(e.includes(`.`)){let n=e.split(`.`);return[`${t}${n.shift()}`,...n.map((e,t)=>`${e}${`_`.repeat(t+1)}`)].join(` `)}return`${t}${e}`},$e=class{constructor(e,t){this.buffer=``,this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=Je(e)}openNode(e){if(!Ze(e))return;let t=Qe(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){Ze(e)&&(this.buffer+=Xe)}value(){return this.buffer}span(e){this.buffer+=`<span class="${e}">`}},et=(e={})=>{let t={children:[]};return Object.assign(t,e),t},tt=class e{constructor(){this.rootNode=et(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){let t=et({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t==`string`?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(t=>this._walk(e,t)),e.closeNode(t)),e}static _collapse(t){typeof t!=`string`&&t.children&&(t.children.every(e=>typeof e==`string`)?t.children=[t.children.join(``)]:t.children.forEach(t=>{e._collapse(t)}))}},nt=class extends tt{constructor(e){super(),this.options=e}addText(e){e!==``&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){let n=e.root;t&&(n.scope=`language:${t}`),this.add(n)}toHTML(){return new $e(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function rt(e){return e?typeof e==`string`?e:e.source:null}function it(e){return st(`(?=`,e,`)`)}function at(e){return st(`(?:`,e,`)*`)}function ot(e){return st(`(?:`,e,`)?`)}function st(...e){return e.map(e=>rt(e)).join(``)}function ct(e){let t=e[e.length-1];return typeof t==`object`&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function lt(...e){return`(`+(ct(e).capture?``:`?:`)+e.map(e=>rt(e)).join(`|`)+`)`}function W(e){return RegExp(e.toString()+`|`).exec(``).length-1}function G(e,t){let n=e&&e.exec(t);return n&&n.index===0}var K=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function ut(e,{joinWith:t}){let n=0;return e.map(e=>{n+=1;let t=n,r=rt(e),i=``;for(;r.length>0;){let e=K.exec(r);if(!e){i+=r;break}i+=r.substring(0,e.index),r=r.substring(e.index+e[0].length),e[0][0]===`\\`&&e[1]?i+=`\\`+String(Number(e[1])+t):(i+=e[0],e[0]===`(`&&n++)}return i}).map(e=>`(${e})`).join(t)}var q=/\b\B/,J=`[a-zA-Z]\\w*`,dt=`[a-zA-Z_]\\w*`,ft=`\\b\\d+(\\.\\d+)?`,pt=`(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)`,mt=`\\b(0b[01]+)`,ht=`!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~`,gt=(e={})=>{let t=/^#![ ]*\//;return e.binary&&(e.begin=st(t,/.*\b/,e.binary,/\b.*/)),Ye({scope:`meta`,begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{e.index!==0&&t.ignoreMatch()}},e)},Y={begin:`\\\\[\\s\\S]`,relevance:0},_t={scope:`string`,begin:`'`,end:`'`,illegal:`\\n`,contains:[Y]},vt={scope:`string`,begin:`"`,end:`"`,illegal:`\\n`,contains:[Y]},yt={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},bt=function(e,t,n={}){let r=Ye({scope:`comment`,begin:e,end:t,contains:[]},n);r.contains.push({scope:`doctag`,begin:`[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)`,end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});let i=lt(`I`,`a`,`is`,`so`,`us`,`to`,`at`,`if`,`in`,`it`,`on`,/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return r.contains.push({begin:st(/[ ]+/,`(`,i,/[.]?[:]?([.][ ]|[ ])/,`){3}`)}),r},xt=bt(`//`,`$`),St=bt(`/\\*`,`\\*/`),Ct=bt(`#`,`$`),wt=Object.freeze({__proto__:null,APOS_STRING_MODE:_t,BACKSLASH_ESCAPE:Y,BINARY_NUMBER_MODE:{scope:`number`,begin:mt,relevance:0},BINARY_NUMBER_RE:mt,COMMENT:bt,C_BLOCK_COMMENT_MODE:St,C_LINE_COMMENT_MODE:xt,C_NUMBER_MODE:{scope:`number`,begin:pt,relevance:0},C_NUMBER_RE:pt,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},HASH_COMMENT_MODE:Ct,IDENT_RE:J,MATCH_NOTHING_RE:q,METHOD_GUARD:{begin:`\\.\\s*[a-zA-Z_]\\w*`,relevance:0},NUMBER_MODE:{scope:`number`,begin:ft,relevance:0},NUMBER_RE:ft,PHRASAL_WORDS_MODE:yt,QUOTE_STRING_MODE:vt,REGEXP_MODE:{scope:`regexp`,begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Y,{begin:/\[/,end:/\]/,relevance:0,contains:[Y]}]},RE_STARTERS_RE:ht,SHEBANG:gt,TITLE_MODE:{scope:`title`,begin:J,relevance:0},UNDERSCORE_IDENT_RE:dt,UNDERSCORE_TITLE_MODE:{scope:`title`,begin:dt,relevance:0}});function Tt(e,t){e.input[e.index-1]===`.`&&t.ignoreMatch()}function Et(e,t){e.className!==void 0&&(e.scope=e.className,delete e.className)}function X(e,t){t&&e.beginKeywords&&(e.begin=`\\b(`+e.beginKeywords.split(` `).join(`|`)+`)(?!\\.)(?=\\b|\\s)`,e.__beforeBegin=Tt,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function Z(e,t){Array.isArray(e.illegal)&&(e.illegal=lt(...e.illegal))}function Dt(e,t){if(e.match){if(e.begin||e.end)throw Error(`begin & end are not supported with match`);e.begin=e.match,delete e.match}}function Ot(e,t){e.relevance===void 0&&(e.relevance=1)}var kt=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw Error(`beforeMatch cannot be used with starts`);let n=Object.assign({},e);Object.keys(e).forEach(t=>{delete e[t]}),e.keywords=n.keywords,e.begin=st(n.beforeMatch,it(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},At=[`of`,`and`,`for`,`in`,`not`,`or`,`if`,`then`,`parent`,`list`,`value`],jt=`keyword`;function Mt(e,t,n=jt){let r=Object.create(null);return typeof e==`string`?i(n,e.split(` `)):Array.isArray(e)?i(n,e):Object.keys(e).forEach(function(n){Object.assign(r,Mt(e[n],t,n))}),r;function i(e,n){t&&(n=n.map(e=>e.toLowerCase())),n.forEach(function(t){let n=t.split(`|`);r[n[0]]=[e,Nt(n[0],n[1])]})}}function Nt(e,t){return t?Number(t):+!Pt(e)}function Pt(e){return At.includes(e.toLowerCase())}var Ft={},It=e=>{console.error(e)},Lt=(e,...t)=>{console.log(`WARN: ${e}`,...t)},Rt=(e,t)=>{Ft[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),Ft[`${e}/${t}`]=!0)},zt=Error();function Bt(e,t,{key:n}){let r=0,i=e[n],a={},o={};for(let e=1;e<=t.length;e++)o[e+r]=i[e],a[e+r]=!0,r+=W(t[e-1]);e[n]=o,e[n]._emit=a,e[n]._multi=!0}function Vt(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw It(`skip, excludeBegin, returnBegin not compatible with beginScope: {}`),zt;if(typeof e.beginScope!=`object`||e.beginScope===null)throw It(`beginScope must be object`),zt;Bt(e,e.begin,{key:`beginScope`}),e.begin=ut(e.begin,{joinWith:``})}}function Ht(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw It(`skip, excludeEnd, returnEnd not compatible with endScope: {}`),zt;if(typeof e.endScope!=`object`||e.endScope===null)throw It(`endScope must be object`),zt;Bt(e,e.end,{key:`endScope`}),e.end=ut(e.end,{joinWith:``})}}function Ut(e){e.scope&&typeof e.scope==`object`&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function Wt(e){Ut(e),typeof e.beginScope==`string`&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope==`string`&&(e.endScope={_wrap:e.endScope}),Vt(e),Ht(e)}function Gt(e){function t(t,n){return new RegExp(rt(t),`m`+(e.case_insensitive?`i`:``)+(e.unicodeRegex?`u`:``)+(n?`g`:``))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=W(e)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);let e=this.regexes.map(e=>e[1]);this.matcherRe=t(ut(e,{joinWith:`|`}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;let t=this.matcherRe.exec(e);if(!t)return null;let n=t.findIndex((e,t)=>t>0&&e!==void 0),r=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,r)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];let t=new n;return this.rules.slice(e).forEach(([e,n])=>t.addRule(e,n)),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),t.type===`begin`&&this.count++}exec(e){let t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;let n=t.exec(e);if(this.resumingScanAtSamePosition()&&!(n&&n.index===this.lastIndex)){let t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}function i(e){let t=new r;return e.contains.forEach(e=>t.addRule(e.begin,{rule:e,type:`begin`})),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:`end`}),e.illegal&&t.addRule(e.illegal,{type:`illegal`}),t}function a(n,r){let o=n;if(n.isCompiled)return o;[Et,Dt,Wt,kt].forEach(e=>e(n,r)),e.compilerExtensions.forEach(e=>e(n,r)),n.__beforeBegin=null,[X,Z,Ot].forEach(e=>e(n,r)),n.isCompiled=!0;let s=null;return typeof n.keywords==`object`&&n.keywords.$pattern&&(n.keywords=Object.assign({},n.keywords),s=n.keywords.$pattern,delete n.keywords.$pattern),s||=/\w+/,n.keywords&&=Mt(n.keywords,e.case_insensitive),o.keywordPatternRe=t(s,!0),r&&(n.begin||=/\B|\b/,o.beginRe=t(o.begin),!n.end&&!n.endsWithParent&&(n.end=/\B|\b/),n.end&&(o.endRe=t(o.end)),o.terminatorEnd=rt(o.end)||``,n.endsWithParent&&r.terminatorEnd&&(o.terminatorEnd+=(n.end?`|`:``)+r.terminatorEnd)),n.illegal&&(o.illegalRe=t(n.illegal)),n.contains||=[],n.contains=[].concat(...n.contains.map(function(e){return qt(e===`self`?n:e)})),n.contains.forEach(function(e){a(e,o)}),n.starts&&a(n.starts,r),o.matcher=i(o),o}if(e.compilerExtensions||=[],e.contains&&e.contains.includes(`self`))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=Ye(e.classNameAliases||{}),a(e)}function Kt(e){return e?e.endsWithParent||Kt(e.starts):!1}function qt(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return Ye(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:Kt(e)?Ye(e,{starts:e.starts?Ye(e.starts):null}):Object.isFrozen(e)?Ye(e):e}var Jt=`11.11.1`,Yt=class extends Error{constructor(e,t){super(e),this.name=`HTMLInjectionError`,this.html=t}},Xt=Je,Zt=Ye,Qt=Symbol(`nomatch`),$t=7,en=function(e){let t=Object.create(null),n=Object.create(null),r=[],i=!0,a=`Could not find the language '{}', did you forget to load/include a language module?`,o={disableAutodetect:!0,name:`Plain text`,contains:[]},s={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:`hljs-`,cssSelector:`pre code`,languages:null,__emitter:nt};function c(e){return s.noHighlightRe.test(e)}function l(e){let t=e.className+` `;t+=e.parentNode?e.parentNode.className:``;let n=s.languageDetectRe.exec(t);if(n){let t=w(n[1]);return t||(Lt(a.replace(`{}`,n[1])),Lt(`Falling back to no-highlight mode for this block.`,e)),t?n[1]:`no-highlight`}return t.split(/\s+/).find(e=>c(e)||w(e))}function u(e,t,n){let r=``,i=``;typeof t==`object`?(r=e,n=t.ignoreIllegals,i=t.language):(Rt(`10.7.0`,`highlight(lang, code, ...args) has been deprecated.`),Rt(`10.7.0`,`Please use highlight(code, options) instead.
|
|
12
|
+
`)}),r=m}return n}function Re(e,t=`导入的导图`){let n=Le(e||``),r={id:V(),text:t,children:[]},i=[r],a=[0],o=!1;function s(e){if(e.kind===`heading`){let t=e.level;for(;i.length>1&&a[a.length-1]>=t;)i.pop(),a.pop();if(!o&&t===1){o=!0,r.text=e.text,a[0]=1;return}let n={id:V(),text:e.text,children:[]};i[i.length-1].children.push(n),i.push(n),a.push(t);return}let t={id:V(),text:e.text,children:[],richContent:{kind:e.kind,raw:e.raw,lang:e.lang}};i[i.length-1].children.push(t)}for(let e of n)s(e);return r}function ze(e){let t=e.minScale??.2,n=e.maxScale??1/0,r=e.step??1.2,i=b(1),a=b(0),o=b(0),s=b(!1),c=u({x:0,y:0,ox:0,oy:0}),l=b(!1),d=u({x:0,y:0}),f=u({x:0,y:0,width:0,height:0}),p=b(0),m=null;function h(e){m=e}function g(r){r.preventDefault();let s=e.getContainer();if(!s)return;let c=-r.deltaY*.001,l=Math.min(n,Math.max(t,i.value*(1+c))),u=s.getBoundingClientRect(),d=r.clientX-u.left,f=r.clientY-u.top,p=(d-a.value)/i.value,m=(f-o.value)/i.value;i.value=l,a.value=d-p*l,o.value=f-m*l}function _(){i.value=Math.min(n,i.value*r)}function v(){i.value=Math.max(t,i.value/r)}function y(e){var t;e.target.closest(`.zm-node, .zm-toolbar, button, input, textarea`)||(s.value=!0,c.x=e.clientX,c.y=e.clientY,c.ox=a.value,c.oy=o.value,window.addEventListener(`mousemove`,x),window.addEventListener(`mouseup`,S),(t=e.preventDefault)==null||t.call(e))}function x(e){s.value&&(a.value=c.ox+(e.clientX-c.x),o.value=c.oy+(e.clientY-c.y))}function S(){s.value=!1,window.removeEventListener(`mousemove`,x),window.removeEventListener(`mouseup`,S)}function C(e,t){l.value=!0,d.x=e,d.y=t,f.x=e,f.y=t,f.width=0,f.height=0,p.value++,window.addEventListener(`mousemove`,E),window.addEventListener(`mouseup`,T)}function w(e,t){if(!l.value)return;let n=Math.min(d.x,e),r=Math.min(d.y,t),i=Math.max(d.x,e),a=Math.max(d.y,t);f.x=n,f.y=r,f.width=i-n,f.height=a-r,p.value++}function T(){l.value=!1,window.removeEventListener(`mousemove`,E),window.removeEventListener(`mouseup`,T),m&&m()}function E(t){if(!l.value)return;let n=e.getContainer();if(!n)return;let r=n.getBoundingClientRect();w((t.clientX-r.left-a.value)/i.value,(t.clientY-r.top-o.value)/i.value)}function D(t,n,r,s=60){let c=e.getContainer();if(!c)return;let l=c.getBoundingClientRect(),u=(l.width-s*2)/t,d=(l.height-s*2)/n,f=Math.min(1,Math.max(.3,Math.min(u,d)));i.value=f,a.value=l.width/2,o.value=l.height/2-r*f}return{scale:i,offsetX:a,offsetY:o,isPanning:s,onWheel:g,zoomIn:_,zoomOut:v,startPan:y,startMarquee:C,updateMarquee:w,isMarquee:l,marquee:f,marqueeVersion:p,setOnMarqueeEnd:h,resetView:D}}var Be=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.platform);function Ve(e){return Be?e.metaKey:e.ctrlKey}function He(e){function n(){return e.getSelectedId()||(e.defaultTargetId?e.defaultTargetId():e.getRootId())}function i(t){let r=t.target;if(r&&(r.tagName===`INPUT`||r.tagName===`TEXTAREA`||r.isContentEditable)||e.isReadonly()||e.isEditing())return;let i=e.getSelectedId(),a=n();if(a){if(Ve(t)&&!t.shiftKey){if(t.key===`d`||t.key===`D`){i&&i!==e.getRootId()&&(t.preventDefault(),e.onDuplicate(i));return}if(t.key===`z`||t.key===`Z`){t.preventDefault(),e.onUndo();return}if(t.key===`y`||t.key===`Y`){t.preventDefault(),e.onRedo();return}if(t.key===`Home`){t.preventDefault(),e.onSelectRoot();return}}if(Ve(t)&&t.shiftKey&&(t.key===`Z`||t.key===`z`)){t.preventDefault(),e.onRedo();return}t.key===`Tab`?(t.preventDefault(),e.onAddChild(a)):t.key===`Enter`?(t.preventDefault(),t.shiftKey?i&&i!==e.getRootId()&&e.onAddSiblingBefore(i):e.onAddSibling(a)):(t.key===`Delete`||t.key===`Backspace`)&&i&&i!==e.getRootId()?(t.preventDefault(),e.onRemove(i)):t.key===`F2`&&i?(t.preventDefault(),e.onStartEdit(i)):t.key===`Escape`?(t.preventDefault(),e.onClearSelection()):t.key===`ArrowDown`?(t.preventDefault(),e.onNavigate(0,1)):t.key===`ArrowUp`?(t.preventDefault(),e.onNavigate(0,-1)):t.key===`ArrowRight`?(t.preventDefault(),e.onNavigate(1,0)):t.key===`ArrowLeft`&&(t.preventDefault(),e.onNavigate(-1,0))}}r(()=>{window.addEventListener(`keydown`,i)}),t(()=>{window.removeEventListener(`keydown`,i)})}function Ue(e=100){let t=b([]),n=-1;function r(){return n>0}function i(){return n<t.value.length-1}function a(r){let i=JSON.stringify(r);for(n<t.value.length-1&&(t.value=t.value.slice(0,n+1)),t.value.push(i),n=t.value.length-1;t.value.length>e;)t.value.shift(),n--}function o(){return r()?(n--,JSON.parse(t.value[n])):null}function s(){return i()?(n++,JSON.parse(t.value[n])):null}function c(){t.value=[],n=-1}return{canUndo:r,canRedo:i,record:a,undo:o,redo:s,reset:c}}var We=a({__name:`NodeContextMenu`,props:{x:{},y:{},container:{},hasImage:{type:Boolean,default:!1},hasLink:{type:Boolean,default:!1},hasNote:{type:Boolean,default:!1},hasCode:{type:Boolean,default:!1},hasTable:{type:Boolean,default:!1}},emits:[`pickImage`,`setLink`,`removeLink`,`editNote`,`removeNote`,`removeImage`,`addCode`,`editCode`,`removeCode`,`addTable`,`editTable`,`removeTable`,`close`],setup(n,{emit:r}){let i=n,a=r,o=g(()=>{let e=i.x+2,t=i.y+2;if(i.container){let n=i.container.getBoundingClientRect(),r=4+(3+ +!!i.hasImage+ +!!i.hasLink+ +!!i.hasNote+1+ +!!i.hasCode+1+ +!!i.hasTable)*28;e+180>n.right&&(e=Math.max(n.left+4,i.x-180-2)),t+r>n.bottom&&(t=Math.max(n.top+4,i.y-r-2)),e<n.left+2&&(e=n.left+2),t<n.top+2&&(t=n.top+2)}return{left:e,top:t}}),s=g(()=>i.hasImage),u=g(()=>i.hasLink),d=g(()=>i.hasNote);function f(e){let t=e.target;t&&t.closest(`.zm-node-menu`)||a(`close`)}function _(e){e.key===`Escape`&&a(`close`)}function v(){a(`close`)}window.addEventListener(`mousedown`,f,!0),window.addEventListener(`keydown`,_,!0),window.addEventListener(`wheel`,v,!0),window.addEventListener(`scroll`,v,!0),t(()=>{window.removeEventListener(`mousedown`,f,!0),window.removeEventListener(`keydown`,_,!0),window.removeEventListener(`wheel`,v,!0),window.removeEventListener(`scroll`,v,!0)});function y(e){e(),a(`close`)}return(t,r)=>(w(),S(`div`,{class:`zm-node-menu`,style:p({left:o.value.left+`px`,top:o.value.top+`px`}),onContextmenu:r[10]||=h(()=>{},[`prevent`])},[m(`button`,{class:`zm-node-menu-item`,onClick:r[0]||=h(e=>y(()=>a(`pickImage`)),[`stop`])},[e(O,{name:`image`,size:13}),m(`span`,null,l(s.value?`替换图片`:`添加图片`),1)]),s.value?(w(),S(`button`,{key:0,class:`zm-node-menu-item`,onClick:r[1]||=h(e=>y(()=>a(`removeImage`)),[`stop`])},[e(O,{name:`x`,size:13}),r[11]||=m(`span`,null,`移除图片`,-1)])):c(``,!0),m(`button`,{class:`zm-node-menu-item`,onClick:r[2]||=h(e=>y(()=>a(`setLink`)),[`stop`])},[e(O,{name:`link`,size:13}),m(`span`,null,l(u.value?`编辑链接`:`添加链接`),1)]),u.value?(w(),S(`button`,{key:1,class:`zm-node-menu-item`,onClick:r[3]||=h(e=>y(()=>a(`removeLink`)),[`stop`])},[e(O,{name:`x`,size:13}),r[12]||=m(`span`,null,`移除链接`,-1)])):c(``,!0),m(`button`,{class:`zm-node-menu-item`,onClick:r[4]||=h(e=>y(()=>a(`addCode`)),[`stop`])},[r[13]||=m(`span`,{class:`zm-node-menu-icon zm-node-menu-icon-code`,"aria-hidden":`true`},`{ }`,-1),m(`span`,null,l(n.hasCode?`编辑代码块`:`添加代码块`),1)]),n.hasCode?(w(),S(`button`,{key:2,class:`zm-node-menu-item`,onClick:r[5]||=h(e=>y(()=>a(`removeCode`)),[`stop`])},[e(O,{name:`x`,size:13}),r[14]||=m(`span`,null,`移除代码块`,-1)])):c(``,!0),m(`button`,{class:`zm-node-menu-item`,onClick:r[6]||=h(e=>y(()=>a(`addTable`)),[`stop`])},[r[15]||=m(`span`,{class:`zm-node-menu-icon zm-node-menu-icon-table`,"aria-hidden":`true`},`▦`,-1),m(`span`,null,l(n.hasTable?`编辑表格`:`添加表格`),1)]),n.hasTable?(w(),S(`button`,{key:3,class:`zm-node-menu-item`,onClick:r[7]||=h(e=>y(()=>a(`removeTable`)),[`stop`])},[e(O,{name:`x`,size:13}),r[16]||=m(`span`,null,`移除表格`,-1)])):c(``,!0),m(`button`,{class:`zm-node-menu-item`,onClick:r[8]||=h(e=>y(()=>a(`editNote`)),[`stop`])},[e(O,{name:`note`,size:13}),m(`span`,null,l(d.value?`编辑笔记`:`添加笔记`),1)]),d.value?(w(),S(`button`,{key:4,class:`zm-node-menu-item`,onClick:r[9]||=h(e=>y(()=>a(`removeNote`)),[`stop`])},[e(O,{name:`x`,size:13}),r[17]||=m(`span`,null,`移除笔记`,-1)])):c(``,!0)],36))}});function Ge(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}function Ke(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw Error(`map is read-only`)}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw Error(`set is read-only`)}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{let n=e[t],r=typeof n;(r===`object`||r===`function`)&&!Object.isFrozen(n)&&Ke(n)}),e}var qe=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function Je(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}function Ye(e,...t){let n=Object.create(null);for(let t in e)n[t]=e[t];return t.forEach(function(e){for(let t in e)n[t]=e[t]}),n}var Xe=`</span>`,Ze=e=>!!e.scope,Qe=(e,{prefix:t})=>{if(e.startsWith(`language:`))return e.replace(`language:`,`language-`);if(e.includes(`.`)){let n=e.split(`.`);return[`${t}${n.shift()}`,...n.map((e,t)=>`${e}${`_`.repeat(t+1)}`)].join(` `)}return`${t}${e}`},$e=class{constructor(e,t){this.buffer=``,this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=Je(e)}openNode(e){if(!Ze(e))return;let t=Qe(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){Ze(e)&&(this.buffer+=Xe)}value(){return this.buffer}span(e){this.buffer+=`<span class="${e}">`}},et=(e={})=>{let t={children:[]};return Object.assign(t,e),t},tt=class e{constructor(){this.rootNode=et(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){let t=et({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t==`string`?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(t=>this._walk(e,t)),e.closeNode(t)),e}static _collapse(t){typeof t!=`string`&&t.children&&(t.children.every(e=>typeof e==`string`)?t.children=[t.children.join(``)]:t.children.forEach(t=>{e._collapse(t)}))}},nt=class extends tt{constructor(e){super(),this.options=e}addText(e){e!==``&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){let n=e.root;t&&(n.scope=`language:${t}`),this.add(n)}toHTML(){return new $e(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function rt(e){return e?typeof e==`string`?e:e.source:null}function it(e){return st(`(?=`,e,`)`)}function at(e){return st(`(?:`,e,`)*`)}function ot(e){return st(`(?:`,e,`)?`)}function st(...e){return e.map(e=>rt(e)).join(``)}function ct(e){let t=e[e.length-1];return typeof t==`object`&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function lt(...e){return`(`+(ct(e).capture?``:`?:`)+e.map(e=>rt(e)).join(`|`)+`)`}function W(e){return RegExp(e.toString()+`|`).exec(``).length-1}function G(e,t){let n=e&&e.exec(t);return n&&n.index===0}var K=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function ut(e,{joinWith:t}){let n=0;return e.map(e=>{n+=1;let t=n,r=rt(e),i=``;for(;r.length>0;){let e=K.exec(r);if(!e){i+=r;break}i+=r.substring(0,e.index),r=r.substring(e.index+e[0].length),e[0][0]===`\\`&&e[1]?i+=`\\`+String(Number(e[1])+t):(i+=e[0],e[0]===`(`&&n++)}return i}).map(e=>`(${e})`).join(t)}var q=/\b\B/,J=`[a-zA-Z]\\w*`,dt=`[a-zA-Z_]\\w*`,ft=`\\b\\d+(\\.\\d+)?`,pt=`(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)`,mt=`\\b(0b[01]+)`,ht=`!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~`,gt=(e={})=>{let t=/^#![ ]*\//;return e.binary&&(e.begin=st(t,/.*\b/,e.binary,/\b.*/)),Ye({scope:`meta`,begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{e.index!==0&&t.ignoreMatch()}},e)},Y={begin:`\\\\[\\s\\S]`,relevance:0},_t={scope:`string`,begin:`'`,end:`'`,illegal:`\\n`,contains:[Y]},vt={scope:`string`,begin:`"`,end:`"`,illegal:`\\n`,contains:[Y]},yt={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},bt=function(e,t,n={}){let r=Ye({scope:`comment`,begin:e,end:t,contains:[]},n);r.contains.push({scope:`doctag`,begin:`[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)`,end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});let i=lt(`I`,`a`,`is`,`so`,`us`,`to`,`at`,`if`,`in`,`it`,`on`,/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return r.contains.push({begin:st(/[ ]+/,`(`,i,/[.]?[:]?([.][ ]|[ ])/,`){3}`)}),r},xt=bt(`//`,`$`),St=bt(`/\\*`,`\\*/`),Ct=bt(`#`,`$`),wt=Object.freeze({__proto__:null,APOS_STRING_MODE:_t,BACKSLASH_ESCAPE:Y,BINARY_NUMBER_MODE:{scope:`number`,begin:mt,relevance:0},BINARY_NUMBER_RE:mt,COMMENT:bt,C_BLOCK_COMMENT_MODE:St,C_LINE_COMMENT_MODE:xt,C_NUMBER_MODE:{scope:`number`,begin:pt,relevance:0},C_NUMBER_RE:pt,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},HASH_COMMENT_MODE:Ct,IDENT_RE:J,MATCH_NOTHING_RE:q,METHOD_GUARD:{begin:`\\.\\s*[a-zA-Z_]\\w*`,relevance:0},NUMBER_MODE:{scope:`number`,begin:ft,relevance:0},NUMBER_RE:ft,PHRASAL_WORDS_MODE:yt,QUOTE_STRING_MODE:vt,REGEXP_MODE:{scope:`regexp`,begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Y,{begin:/\[/,end:/\]/,relevance:0,contains:[Y]}]},RE_STARTERS_RE:ht,SHEBANG:gt,TITLE_MODE:{scope:`title`,begin:J,relevance:0},UNDERSCORE_IDENT_RE:dt,UNDERSCORE_TITLE_MODE:{scope:`title`,begin:dt,relevance:0}});function Tt(e,t){e.input[e.index-1]===`.`&&t.ignoreMatch()}function Et(e,t){e.className!==void 0&&(e.scope=e.className,delete e.className)}function X(e,t){t&&e.beginKeywords&&(e.begin=`\\b(`+e.beginKeywords.split(` `).join(`|`)+`)(?!\\.)(?=\\b|\\s)`,e.__beforeBegin=Tt,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function Z(e,t){Array.isArray(e.illegal)&&(e.illegal=lt(...e.illegal))}function Dt(e,t){if(e.match){if(e.begin||e.end)throw Error(`begin & end are not supported with match`);e.begin=e.match,delete e.match}}function Ot(e,t){e.relevance===void 0&&(e.relevance=1)}var kt=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw Error(`beforeMatch cannot be used with starts`);let n=Object.assign({},e);Object.keys(e).forEach(t=>{delete e[t]}),e.keywords=n.keywords,e.begin=st(n.beforeMatch,it(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},At=[`of`,`and`,`for`,`in`,`not`,`or`,`if`,`then`,`parent`,`list`,`value`],jt=`keyword`;function Mt(e,t,n=jt){let r=Object.create(null);return typeof e==`string`?i(n,e.split(` `)):Array.isArray(e)?i(n,e):Object.keys(e).forEach(function(n){Object.assign(r,Mt(e[n],t,n))}),r;function i(e,n){t&&(n=n.map(e=>e.toLowerCase())),n.forEach(function(t){let n=t.split(`|`);r[n[0]]=[e,Nt(n[0],n[1])]})}}function Nt(e,t){return t?Number(t):+!Pt(e)}function Pt(e){return At.includes(e.toLowerCase())}var Ft={},It=e=>{console.error(e)},Lt=(e,...t)=>{console.log(`WARN: ${e}`,...t)},Rt=(e,t)=>{Ft[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),Ft[`${e}/${t}`]=!0)},zt=Error();function Bt(e,t,{key:n}){let r=0,i=e[n],a={},o={};for(let e=1;e<=t.length;e++)o[e+r]=i[e],a[e+r]=!0,r+=W(t[e-1]);e[n]=o,e[n]._emit=a,e[n]._multi=!0}function Vt(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw It(`skip, excludeBegin, returnBegin not compatible with beginScope: {}`),zt;if(typeof e.beginScope!=`object`||e.beginScope===null)throw It(`beginScope must be object`),zt;Bt(e,e.begin,{key:`beginScope`}),e.begin=ut(e.begin,{joinWith:``})}}function Ht(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw It(`skip, excludeEnd, returnEnd not compatible with endScope: {}`),zt;if(typeof e.endScope!=`object`||e.endScope===null)throw It(`endScope must be object`),zt;Bt(e,e.end,{key:`endScope`}),e.end=ut(e.end,{joinWith:``})}}function Ut(e){e.scope&&typeof e.scope==`object`&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function Wt(e){Ut(e),typeof e.beginScope==`string`&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope==`string`&&(e.endScope={_wrap:e.endScope}),Vt(e),Ht(e)}function Gt(e){function t(t,n){return new RegExp(rt(t),`m`+(e.case_insensitive?`i`:``)+(e.unicodeRegex?`u`:``)+(n?`g`:``))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=W(e)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);let e=this.regexes.map(e=>e[1]);this.matcherRe=t(ut(e,{joinWith:`|`}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;let t=this.matcherRe.exec(e);if(!t)return null;let n=t.findIndex((e,t)=>t>0&&e!==void 0),r=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,r)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];let t=new n;return this.rules.slice(e).forEach(([e,n])=>t.addRule(e,n)),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),t.type===`begin`&&this.count++}exec(e){let t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;let n=t.exec(e);if(this.resumingScanAtSamePosition()&&!(n&&n.index===this.lastIndex)){let t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}function i(e){let t=new r;return e.contains.forEach(e=>t.addRule(e.begin,{rule:e,type:`begin`})),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:`end`}),e.illegal&&t.addRule(e.illegal,{type:`illegal`}),t}function a(n,r){let o=n;if(n.isCompiled)return o;[Et,Dt,Wt,kt].forEach(e=>e(n,r)),e.compilerExtensions.forEach(e=>e(n,r)),n.__beforeBegin=null,[X,Z,Ot].forEach(e=>e(n,r)),n.isCompiled=!0;let s=null;return typeof n.keywords==`object`&&n.keywords.$pattern&&(n.keywords=Object.assign({},n.keywords),s=n.keywords.$pattern,delete n.keywords.$pattern),s||=/\w+/,n.keywords&&=Mt(n.keywords,e.case_insensitive),o.keywordPatternRe=t(s,!0),r&&(n.begin||=/\B|\b/,o.beginRe=t(o.begin),!n.end&&!n.endsWithParent&&(n.end=/\B|\b/),n.end&&(o.endRe=t(o.end)),o.terminatorEnd=rt(o.end)||``,n.endsWithParent&&r.terminatorEnd&&(o.terminatorEnd+=(n.end?`|`:``)+r.terminatorEnd)),n.illegal&&(o.illegalRe=t(n.illegal)),n.contains||=[],n.contains=[].concat(...n.contains.map(function(e){return qt(e===`self`?n:e)})),n.contains.forEach(function(e){a(e,o)}),n.starts&&a(n.starts,r),o.matcher=i(o),o}if(e.compilerExtensions||=[],e.contains&&e.contains.includes(`self`))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=Ye(e.classNameAliases||{}),a(e)}function Kt(e){return e?e.endsWithParent||Kt(e.starts):!1}function qt(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return Ye(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:Kt(e)?Ye(e,{starts:e.starts?Ye(e.starts):null}):Object.isFrozen(e)?Ye(e):e}var Jt=`11.11.1`,Yt=class extends Error{constructor(e,t){super(e),this.name=`HTMLInjectionError`,this.html=t}},Xt=Je,Zt=Ye,Qt=Symbol(`nomatch`),$t=7,en=function(e){let t=Object.create(null),n=Object.create(null),r=[],i=!0,a=`Could not find the language '{}', did you forget to load/include a language module?`,o={disableAutodetect:!0,name:`Plain text`,contains:[]},s={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:`hljs-`,cssSelector:`pre code`,languages:null,__emitter:nt};function c(e){return s.noHighlightRe.test(e)}function l(e){let t=e.className+` `;t+=e.parentNode?e.parentNode.className:``;let n=s.languageDetectRe.exec(t);if(n){let t=w(n[1]);return t||(Lt(a.replace(`{}`,n[1])),Lt(`Falling back to no-highlight mode for this block.`,e)),t?n[1]:`no-highlight`}return t.split(/\s+/).find(e=>c(e)||w(e))}function u(e,t,n){let r=``,i=``;typeof t==`object`?(r=e,n=t.ignoreIllegals,i=t.language):(Rt(`10.7.0`,`highlight(lang, code, ...args) has been deprecated.`),Rt(`10.7.0`,`Please use highlight(code, options) instead.
|
|
13
13
|
https://github.com/highlightjs/highlight.js/issues/2277`),i=e,r=t),n===void 0&&(n=!0);let a={code:r,language:i};A(`before:highlight`,a);let o=a.result?a.result:d(a.language,a.code,n);return o.code=a.code,A(`after:highlight`,o),o}function d(e,n,r,o){let c=Object.create(null);function l(e,t){return e.keywords[t]}function u(){if(!k.keywords){j.addText(M);return}let e=0;k.keywordPatternRe.lastIndex=0;let t=k.keywordPatternRe.exec(M),n=``;for(;t;){n+=M.substring(e,t.index);let r=E.case_insensitive?t[0].toLowerCase():t[0],i=l(k,r);if(i){let[e,a]=i;if(j.addText(n),n=``,c[r]=(c[r]||0)+1,c[r]<=$t&&(N+=a),e.startsWith(`_`))n+=t[0];else{let n=E.classNameAliases[e]||e;h(t[0],n)}}else n+=t[0];e=k.keywordPatternRe.lastIndex,t=k.keywordPatternRe.exec(M)}n+=M.substring(e),j.addText(n)}function f(){if(M===``)return;let e=null;if(typeof k.subLanguage==`string`){if(!t[k.subLanguage]){j.addText(M);return}e=d(k.subLanguage,M,!0,A[k.subLanguage]),A[k.subLanguage]=e._top}else e=p(M,k.subLanguage.length?k.subLanguage:null);k.relevance>0&&(N+=e.relevance),j.__addSublanguage(e._emitter,e.language)}function m(){k.subLanguage==null?u():f(),M=``}function h(e,t){e!==``&&(j.startScope(t),j.addText(e),j.endScope())}function g(e,t){let n=1,r=t.length-1;for(;n<=r;){if(!e._emit[n]){n++;continue}let r=E.classNameAliases[e[n]]||e[n],i=t[n];r?h(i,r):(M=i,u(),M=``),n++}}function _(e,t){return e.scope&&typeof e.scope==`string`&&j.openNode(E.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(h(M,E.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),M=``):e.beginScope._multi&&(g(e.beginScope,t),M=``)),k=Object.create(e,{parent:{value:k}}),k}function v(e,t,n){let r=G(e.endRe,n);if(r){if(e[`on:end`]){let n=new qe(e);e[`on:end`](t,n),n.isMatchIgnored&&(r=!1)}if(r){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return v(e.parent,t,n)}function y(e){return k.matcher.regexIndex===0?(M+=e[0],1):(ee=!0,0)}function b(e){let t=e[0],n=e.rule,r=new qe(n),i=[n.__beforeBegin,n[`on:begin`]];for(let n of i)if(n&&(n(e,r),r.isMatchIgnored))return y(t);return n.skip?M+=t:(n.excludeBegin&&(M+=t),m(),!n.returnBegin&&!n.excludeBegin&&(M=t)),_(n,e),n.returnBegin?0:t.length}function x(e){let t=e[0],r=n.substring(e.index),i=v(k,e,r);if(!i)return Qt;let a=k;k.endScope&&k.endScope._wrap?(m(),h(t,k.endScope._wrap)):k.endScope&&k.endScope._multi?(m(),g(k.endScope,e)):a.skip?M+=t:(a.returnEnd||a.excludeEnd||(M+=t),m(),a.excludeEnd&&(M=t));do k.scope&&j.closeNode(),!k.skip&&!k.subLanguage&&(N+=k.relevance),k=k.parent;while(k!==i.parent);return i.starts&&_(i.starts,e),a.returnEnd?0:t.length}function S(){let e=[];for(let t=k;t!==E;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach(e=>j.openNode(e))}let C={};function T(t,a){let o=a&&a[0];if(M+=t,o==null)return m(),0;if(C.type===`begin`&&a.type===`end`&&C.index===a.index&&o===``){if(M+=n.slice(a.index,a.index+1),!i){let t=Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=C.rule,t}return 1}if(C=a,a.type===`begin`)return b(a);if(a.type===`illegal`&&!r){let e=Error(`Illegal lexeme "`+o+`" for mode "`+(k.scope||`<unnamed>`)+`"`);throw e.mode=k,e}else if(a.type===`end`){let e=x(a);if(e!==Qt)return e}if(a.type===`illegal`&&o===``)return M+=`
|
|
14
14
|
`,1;if(F>1e5&&F>a.index*3)throw Error(`potential infinite loop, way more iterations than matches`);return M+=o,o.length}let E=w(e);if(!E)throw It(a.replace(`{}`,e)),Error(`Unknown language: "`+e+`"`);let D=Gt(E),O=``,k=o||D,A={},j=new s.__emitter(s);S();let M=``,N=0,P=0,F=0,ee=!1;try{if(E.__emitTokens)E.__emitTokens(n,j);else{for(k.matcher.considerAll();;){F++,ee?ee=!1:k.matcher.considerAll(),k.matcher.lastIndex=P;let e=k.matcher.exec(n);if(!e)break;let t=T(n.substring(P,e.index),e);P=e.index+t}T(n.substring(P))}return j.finalize(),O=j.toHTML(),{language:e,value:O,relevance:N,illegal:!1,_emitter:j,_top:k}}catch(t){if(t.message&&t.message.includes(`Illegal`))return{language:e,value:Xt(n),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:P,context:n.slice(P-100,P+100),mode:t.mode,resultSoFar:O},_emitter:j};if(i)return{language:e,value:Xt(n),illegal:!1,relevance:0,errorRaised:t,_emitter:j,_top:k};throw t}}function f(e){let t={value:Xt(e),illegal:!1,relevance:0,_top:o,_emitter:new s.__emitter(s)};return t._emitter.addText(e),t}function p(e,n){n=n||s.languages||Object.keys(t);let r=f(e),i=n.filter(w).filter(E).map(t=>d(t,e,!1));i.unshift(r);let[a,o]=i.sort((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(w(e.language).supersetOf===t.language)return 1;if(w(t.language).supersetOf===e.language)return-1}return 0}),c=a;return c.secondBest=o,c}function m(e,t,r){let i=t&&n[t]||r;e.classList.add(`hljs`),e.classList.add(`language-${i}`)}function h(e){let t=null,n=l(e);if(c(n))return;if(A(`before:highlightElement`,{el:e,language:n}),e.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e);return}if(e.children.length>0&&(s.ignoreUnescapedHTML||(console.warn(`One of your code blocks includes unescaped HTML. This is a potentially serious security risk.`),console.warn(`https://github.com/highlightjs/highlight.js/wiki/security`),console.warn(`The element with unescaped HTML:`),console.warn(e)),s.throwUnescapedHTML))throw new Yt(`One of your code blocks includes unescaped HTML.`,e.innerHTML);t=e;let r=t.textContent,i=n?u(r,{language:n,ignoreIllegals:!0}):p(r);e.innerHTML=i.value,e.dataset.highlighted=`yes`,m(e,n,i.language),e.result={language:i.language,re:i.relevance,relevance:i.relevance},i.secondBest&&(e.secondBest={language:i.secondBest.language,relevance:i.secondBest.relevance}),A(`after:highlightElement`,{el:e,result:i,text:r})}function g(e){s=Zt(s,e)}let _=()=>{b(),Rt(`10.6.0`,`initHighlighting() deprecated. Use highlightAll() now.`)};function v(){b(),Rt(`10.6.0`,`initHighlightingOnLoad() deprecated. Use highlightAll() now.`)}let y=!1;function b(){function e(){b()}if(document.readyState===`loading`){y||window.addEventListener(`DOMContentLoaded`,e,!1),y=!0;return}document.querySelectorAll(s.cssSelector).forEach(h)}function x(n,r){let a=null;try{a=r(e)}catch(e){if(It(`Language definition for '{}' could not be registered.`.replace(`{}`,n)),i)It(e);else throw e;a=o}a.name||=n,t[n]=a,a.rawDefinition=r.bind(null,e),a.aliases&&T(a.aliases,{languageName:n})}function S(e){delete t[e];for(let t of Object.keys(n))n[t]===e&&delete n[t]}function C(){return Object.keys(t)}function w(e){return e=(e||``).toLowerCase(),t[e]||t[n[e]]}function T(e,{languageName:t}){typeof e==`string`&&(e=[e]),e.forEach(e=>{n[e.toLowerCase()]=t})}function E(e){let t=w(e);return t&&!t.disableAutodetect}function D(e){e[`before:highlightBlock`]&&!e[`before:highlightElement`]&&(e[`before:highlightElement`]=t=>{e[`before:highlightBlock`](Object.assign({block:t.el},t))}),e[`after:highlightBlock`]&&!e[`after:highlightElement`]&&(e[`after:highlightElement`]=t=>{e[`after:highlightBlock`](Object.assign({block:t.el},t))})}function O(e){D(e),r.push(e)}function k(e){let t=r.indexOf(e);t!==-1&&r.splice(t,1)}function A(e,t){let n=e;r.forEach(function(e){e[n]&&e[n](t)})}function j(e){return Rt(`10.7.0`,`highlightBlock will be removed entirely in v12.0`),Rt(`10.7.0`,`Please use highlightElement now.`),h(e)}Object.assign(e,{highlight:u,highlightAuto:p,highlightAll:b,highlightElement:h,highlightBlock:j,configure:g,initHighlighting:_,initHighlightingOnLoad:v,registerLanguage:x,unregisterLanguage:S,listLanguages:C,getLanguage:w,registerAliases:T,autoDetection:E,inherit:Zt,addPlugin:O,removePlugin:k}),e.debugMode=function(){i=!1},e.safeMode=function(){i=!0},e.versionString=Jt,e.regex={concat:st,lookahead:it,either:lt,optional:ot,anyNumberOfTimes:at};for(let e in wt)typeof wt[e]==`object`&&Ke(wt[e]);return Object.assign(e,wt),e},tn=en({});tn.newInstance=()=>en({});var nn=tn;tn.HighlightJS=tn,tn.default=tn;var rn=Ge(nn);function an(e){let t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:[`self`,{begin:/:-/,contains:[n]}]};Object.assign(n,{className:`variable`,variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,`(?![\\w\\d])(?![$])`)},r]});let i={className:`subst`,begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},a=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:`comment`}}),o={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:`string`})]}},s={className:`string`,begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,i]};i.contains.push(s);let c={match:/\\"/},l={className:`string`,begin:/'/,end:/'/},u={match:/\\'/},d={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:`number`},e.NUMBER_MODE,n]},f=e.SHEBANG({binary:`(${[`fish`,`bash`,`zsh`,`sh`,`csh`,`ksh`,`tcsh`,`dash`,`scsh`].join(`|`)})`,relevance:10}),p={className:`function`,begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},m=[`if`,`then`,`else`,`elif`,`fi`,`time`,`for`,`while`,`until`,`in`,`do`,`done`,`case`,`esac`,`coproc`,`function`,`select`],h=[`true`,`false`],g={match:/(\/[a-z._-]+)+/},_=[`break`,`cd`,`continue`,`eval`,`exec`,`exit`,`export`,`getopts`,`hash`,`pwd`,`readonly`,`return`,`shift`,`test`,`times`,`trap`,`umask`,`unset`],v=[`alias`,`bind`,`builtin`,`caller`,`command`,`declare`,`echo`,`enable`,`help`,`let`,`local`,`logout`,`mapfile`,`printf`,`read`,`readarray`,`source`,`sudo`,`type`,`typeset`,`ulimit`,`unalias`],y=`autoload.bg.bindkey.bye.cap.chdir.clone.comparguments.compcall.compctl.compdescribe.compfiles.compgroups.compquote.comptags.comptry.compvalues.dirs.disable.disown.echotc.echoti.emulate.fc.fg.float.functions.getcap.getln.history.integer.jobs.kill.limit.log.noglob.popd.print.pushd.pushln.rehash.sched.setcap.setopt.stat.suspend.ttyctl.unfunction.unhash.unlimit.unsetopt.vared.wait.whence.where.which.zcompile.zformat.zftp.zle.zmodload.zparseopts.zprof.zpty.zregexparse.zsocket.zstyle.ztcp`.split(`.`),b=`chcon.chgrp.chown.chmod.cp.dd.df.dir.dircolors.ln.ls.mkdir.mkfifo.mknod.mktemp.mv.realpath.rm.rmdir.shred.sync.touch.truncate.vdir.b2sum.base32.base64.cat.cksum.comm.csplit.cut.expand.fmt.fold.head.join.md5sum.nl.numfmt.od.paste.ptx.pr.sha1sum.sha224sum.sha256sum.sha384sum.sha512sum.shuf.sort.split.sum.tac.tail.tr.tsort.unexpand.uniq.wc.arch.basename.chroot.date.dirname.du.echo.env.expr.factor.groups.hostid.id.link.logname.nice.nohup.nproc.pathchk.pinky.printenv.printf.pwd.readlink.runcon.seq.sleep.stat.stdbuf.stty.tee.test.timeout.tty.uname.unlink.uptime.users.who.whoami.yes`.split(`.`);return{name:`Bash`,aliases:[`sh`,`zsh`],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:m,literal:h,built_in:[..._,...v,`set`,`shopt`,...y,...b]},contains:[f,e.SHEBANG(),p,d,a,o,g,s,c,l,u,n]}}var on=e=>({IMPORTANT:{scope:`meta`,begin:`!important`},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:`number`,begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:`built_in`,begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:`selector-attr`,begin:/\[/,end:/\]/,illegal:`$`,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:`number`,begin:e.NUMBER_RE+`(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?`,relevance:0},CSS_VARIABLE:{className:`attr`,begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),sn=`a.abbr.address.article.aside.audio.b.blockquote.body.button.canvas.caption.cite.code.dd.del.details.dfn.div.dl.dt.em.fieldset.figcaption.figure.footer.form.h1.h2.h3.h4.h5.h6.header.hgroup.html.i.iframe.img.input.ins.kbd.label.legend.li.main.mark.menu.nav.object.ol.optgroup.option.p.picture.q.quote.samp.section.select.source.span.strong.summary.sup.table.tbody.td.textarea.tfoot.th.thead.time.tr.ul.var.video`.split(`.`),cn=`defs.g.marker.mask.pattern.svg.switch.symbol.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feFlood.feGaussianBlur.feImage.feMerge.feMorphology.feOffset.feSpecularLighting.feTile.feTurbulence.linearGradient.radialGradient.stop.circle.ellipse.image.line.path.polygon.polyline.rect.text.use.textPath.tspan.foreignObject.clipPath`.split(`.`),ln=[...sn,...cn],un=`any-hover.any-pointer.aspect-ratio.color.color-gamut.color-index.device-aspect-ratio.device-height.device-width.display-mode.forced-colors.grid.height.hover.inverted-colors.monochrome.orientation.overflow-block.overflow-inline.pointer.prefers-color-scheme.prefers-contrast.prefers-reduced-motion.prefers-reduced-transparency.resolution.scan.scripting.update.width.min-width.max-width.min-height.max-height`.split(`.`).sort().reverse(),dn=`active.any-link.blank.checked.current.default.defined.dir.disabled.drop.empty.enabled.first.first-child.first-of-type.fullscreen.future.focus.focus-visible.focus-within.has.host.host-context.hover.indeterminate.in-range.invalid.is.lang.last-child.last-of-type.left.link.local-link.not.nth-child.nth-col.nth-last-child.nth-last-col.nth-last-of-type.nth-of-type.only-child.only-of-type.optional.out-of-range.past.placeholder-shown.read-only.read-write.required.right.root.scope.target.target-within.user-invalid.valid.visited.where`.split(`.`).sort().reverse(),fn=[`after`,`backdrop`,`before`,`cue`,`cue-region`,`first-letter`,`first-line`,`grammar-error`,`marker`,`part`,`placeholder`,`selection`,`slotted`,`spelling-error`].sort().reverse(),pn=`accent-color.align-content.align-items.align-self.alignment-baseline.all.anchor-name.animation.animation-composition.animation-delay.animation-direction.animation-duration.animation-fill-mode.animation-iteration-count.animation-name.animation-play-state.animation-range.animation-range-end.animation-range-start.animation-timeline.animation-timing-function.appearance.aspect-ratio.backdrop-filter.backface-visibility.background.background-attachment.background-blend-mode.background-clip.background-color.background-image.background-origin.background-position.background-position-x.background-position-y.background-repeat.background-size.baseline-shift.block-size.border.border-block.border-block-color.border-block-end.border-block-end-color.border-block-end-style.border-block-end-width.border-block-start.border-block-start-color.border-block-start-style.border-block-start-width.border-block-style.border-block-width.border-bottom.border-bottom-color.border-bottom-left-radius.border-bottom-right-radius.border-bottom-style.border-bottom-width.border-collapse.border-color.border-end-end-radius.border-end-start-radius.border-image.border-image-outset.border-image-repeat.border-image-slice.border-image-source.border-image-width.border-inline.border-inline-color.border-inline-end.border-inline-end-color.border-inline-end-style.border-inline-end-width.border-inline-start.border-inline-start-color.border-inline-start-style.border-inline-start-width.border-inline-style.border-inline-width.border-left.border-left-color.border-left-style.border-left-width.border-radius.border-right.border-right-color.border-right-style.border-right-width.border-spacing.border-start-end-radius.border-start-start-radius.border-style.border-top.border-top-color.border-top-left-radius.border-top-right-radius.border-top-style.border-top-width.border-width.bottom.box-align.box-decoration-break.box-direction.box-flex.box-flex-group.box-lines.box-ordinal-group.box-orient.box-pack.box-shadow.box-sizing.break-after.break-before.break-inside.caption-side.caret-color.clear.clip.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.color-scheme.column-count.column-fill.column-gap.column-rule.column-rule-color.column-rule-style.column-rule-width.column-span.column-width.columns.contain.contain-intrinsic-block-size.contain-intrinsic-height.contain-intrinsic-inline-size.contain-intrinsic-size.contain-intrinsic-width.container.container-name.container-type.content.content-visibility.counter-increment.counter-reset.counter-set.cue.cue-after.cue-before.cursor.cx.cy.direction.display.dominant-baseline.empty-cells.enable-background.field-sizing.fill.fill-opacity.fill-rule.filter.flex.flex-basis.flex-direction.flex-flow.flex-grow.flex-shrink.flex-wrap.float.flood-color.flood-opacity.flow.font.font-display.font-family.font-feature-settings.font-kerning.font-language-override.font-optical-sizing.font-palette.font-size.font-size-adjust.font-smooth.font-smoothing.font-stretch.font-style.font-synthesis.font-synthesis-position.font-synthesis-small-caps.font-synthesis-style.font-synthesis-weight.font-variant.font-variant-alternates.font-variant-caps.font-variant-east-asian.font-variant-emoji.font-variant-ligatures.font-variant-numeric.font-variant-position.font-variation-settings.font-weight.forced-color-adjust.gap.glyph-orientation-horizontal.glyph-orientation-vertical.grid.grid-area.grid-auto-columns.grid-auto-flow.grid-auto-rows.grid-column.grid-column-end.grid-column-start.grid-gap.grid-row.grid-row-end.grid-row-start.grid-template.grid-template-areas.grid-template-columns.grid-template-rows.hanging-punctuation.height.hyphenate-character.hyphenate-limit-chars.hyphens.icon.image-orientation.image-rendering.image-resolution.ime-mode.initial-letter.initial-letter-align.inline-size.inset.inset-area.inset-block.inset-block-end.inset-block-start.inset-inline.inset-inline-end.inset-inline-start.isolation.justify-content.justify-items.justify-self.kerning.left.letter-spacing.lighting-color.line-break.line-height.line-height-step.list-style.list-style-image.list-style-position.list-style-type.margin.margin-block.margin-block-end.margin-block-start.margin-bottom.margin-inline.margin-inline-end.margin-inline-start.margin-left.margin-right.margin-top.margin-trim.marker.marker-end.marker-mid.marker-start.marks.mask.mask-border.mask-border-mode.mask-border-outset.mask-border-repeat.mask-border-slice.mask-border-source.mask-border-width.mask-clip.mask-composite.mask-image.mask-mode.mask-origin.mask-position.mask-repeat.mask-size.mask-type.masonry-auto-flow.math-depth.math-shift.math-style.max-block-size.max-height.max-inline-size.max-width.min-block-size.min-height.min-inline-size.min-width.mix-blend-mode.nav-down.nav-index.nav-left.nav-right.nav-up.none.normal.object-fit.object-position.offset.offset-anchor.offset-distance.offset-path.offset-position.offset-rotate.opacity.order.orphans.outline.outline-color.outline-offset.outline-style.outline-width.overflow.overflow-anchor.overflow-block.overflow-clip-margin.overflow-inline.overflow-wrap.overflow-x.overflow-y.overlay.overscroll-behavior.overscroll-behavior-block.overscroll-behavior-inline.overscroll-behavior-x.overscroll-behavior-y.padding.padding-block.padding-block-end.padding-block-start.padding-bottom.padding-inline.padding-inline-end.padding-inline-start.padding-left.padding-right.padding-top.page.page-break-after.page-break-before.page-break-inside.paint-order.pause.pause-after.pause-before.perspective.perspective-origin.place-content.place-items.place-self.pointer-events.position.position-anchor.position-visibility.print-color-adjust.quotes.r.resize.rest.rest-after.rest-before.right.rotate.row-gap.ruby-align.ruby-position.scale.scroll-behavior.scroll-margin.scroll-margin-block.scroll-margin-block-end.scroll-margin-block-start.scroll-margin-bottom.scroll-margin-inline.scroll-margin-inline-end.scroll-margin-inline-start.scroll-margin-left.scroll-margin-right.scroll-margin-top.scroll-padding.scroll-padding-block.scroll-padding-block-end.scroll-padding-block-start.scroll-padding-bottom.scroll-padding-inline.scroll-padding-inline-end.scroll-padding-inline-start.scroll-padding-left.scroll-padding-right.scroll-padding-top.scroll-snap-align.scroll-snap-stop.scroll-snap-type.scroll-timeline.scroll-timeline-axis.scroll-timeline-name.scrollbar-color.scrollbar-gutter.scrollbar-width.shape-image-threshold.shape-margin.shape-outside.shape-rendering.speak.speak-as.src.stop-color.stop-opacity.stroke.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke-width.tab-size.table-layout.text-align.text-align-all.text-align-last.text-anchor.text-combine-upright.text-decoration.text-decoration-color.text-decoration-line.text-decoration-skip.text-decoration-skip-ink.text-decoration-style.text-decoration-thickness.text-emphasis.text-emphasis-color.text-emphasis-position.text-emphasis-style.text-indent.text-justify.text-orientation.text-overflow.text-rendering.text-shadow.text-size-adjust.text-transform.text-underline-offset.text-underline-position.text-wrap.text-wrap-mode.text-wrap-style.timeline-scope.top.touch-action.transform.transform-box.transform-origin.transform-style.transition.transition-behavior.transition-delay.transition-duration.transition-property.transition-timing-function.translate.unicode-bidi.user-modify.user-select.vector-effect.vertical-align.view-timeline.view-timeline-axis.view-timeline-inset.view-timeline-name.view-transition-name.visibility.voice-balance.voice-duration.voice-family.voice-pitch.voice-range.voice-rate.voice-stress.voice-volume.white-space.white-space-collapse.widows.width.will-change.word-break.word-spacing.word-wrap.writing-mode.x.y.z-index.zoom`.split(`.`).sort().reverse();function Q(e){let t=e.regex,n=on(e),r={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},i=/@-?\w[\w]*(-\w+)*/,a=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:`CSS`,case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:`from to`},classNameAliases:{keyframePosition:`selector-tag`},contains:[n.BLOCK_COMMENT,r,n.CSS_NUMBER_MODE,{className:`selector-id`,begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:`selector-class`,begin:`\\.[a-zA-Z-][a-zA-Z0-9_-]*`,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:`selector-pseudo`,variants:[{begin:`:(`+dn.join(`|`)+`)`},{begin:`:(:)?(`+fn.join(`|`)+`)`}]},n.CSS_VARIABLE,{className:`attribute`,begin:`\\b(`+pn.join(`|`)+`)\\b`},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:`url data-uri`},contains:[...a,{className:`string`,begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:`[{;]`,relevance:0,illegal:/:/,contains:[{className:`keyword`,begin:i},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:`and or not only`,attribute:un.join(` `)},contains:[{begin:/[a-z-]+(?=:)/,className:`attribute`},...a,n.CSS_NUMBER_MODE]}]},{className:`selector-tag`,begin:`\\b(`+ln.join(`|`)+`)\\b`}]}}function mn(e){let t={keyword:[`break`,`case`,`chan`,`const`,`continue`,`default`,`defer`,`else`,`fallthrough`,`for`,`func`,`go`,`goto`,`if`,`import`,`interface`,`map`,`package`,`range`,`return`,`select`,`struct`,`switch`,`type`,`var`],type:[`bool`,`byte`,`complex64`,`complex128`,`error`,`float32`,`float64`,`int8`,`int16`,`int32`,`int64`,`string`,`uint8`,`uint16`,`uint32`,`uint64`,`int`,`uint`,`uintptr`,`rune`],literal:[`true`,`false`,`iota`,`nil`],built_in:[`append`,`cap`,`close`,`complex`,`copy`,`imag`,`len`,`make`,`new`,`panic`,`print`,`println`,`real`,`recover`,`delete`]};return{name:`Go`,aliases:[`golang`],keywords:t,illegal:`</`,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:`string`,variants:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:`number`,variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:`function`,beginKeywords:`func`,end:`\\s*(\\{|$)`,excludeEnd:!0,contains:[e.TITLE_MODE,{className:`params`,begin:/\(/,end:/\)/,endsParent:!0,keywords:t,illegal:/["']/}]}]}}var $=`[0-9](_*[0-9])*`,hn=`\\.(${$})`,gn=`[0-9a-fA-F](_*[0-9a-fA-F])*`,_n={className:`number`,variants:[{begin:`(\\b(${$})((${hn})|\\.)?|(${hn}))[eE][+-]?(${$})[fFdD]?\\b`},{begin:`\\b(${$})((${hn})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${hn})[fFdD]?\\b`},{begin:`\\b(${$})[fFdD]\\b`},{begin:`\\b0[xX]((${gn})\\.?|(${gn})?\\.(${gn}))[pP][+-]?(${$})[fFdD]?\\b`},{begin:`\\b(0|[1-9](_*[0-9])*)[lL]?\\b`},{begin:`\\b0[xX](${gn})[lL]?\\b`},{begin:`\\b0(_*[0-7])*[lL]?\\b`},{begin:`\\b0[bB][01](_*[01])*[lL]?\\b`}],relevance:0};function vn(e,t,n){return n===-1?``:e.replace(t,r=>vn(e,t,n-1))}function yn(e){let t=e.regex,n=`[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*`,r=n+vn(`(?:<[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*~~~(?:\\s*,\\s*[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*~~~)*>)?`,/~~~/g,2),i={keyword:`synchronized.abstract.private.var.static.if.const .for.while.strictfp.finally.protected.import.native.final.void.enum.else.break.transient.catch.instanceof.volatile.case.assert.package.default.public.try.switch.continue.throws.protected.public.private.module.requires.exports.do.sealed.yield.permits.goto.when`.split(`.`),literal:[`false`,`true`,`null`],type:[`char`,`boolean`,`long`,`float`,`int`,`byte`,`short`,`double`],built_in:[`super`,`this`]},a={className:`meta`,begin:`@[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*`,contains:[{begin:/\(/,end:/\)/,contains:[`self`]}]},o={className:`params`,begin:/\(/,end:/\)/,keywords:i,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:`Java`,aliases:[`jsp`],keywords:i,illegal:/<\/|#/,contains:[e.COMMENT(`/\\*\\*`,`\\*/`,{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:`doctag`,begin:`@[A-Za-z]+`}]}),{begin:/import java\.[a-z]+\./,keywords:`import`,relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:`string`,contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:`keyword`,3:`title.class`}},{match:/non-sealed/,scope:`keyword`},{begin:[t.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:`type`,3:`variable`,5:`operator`}},{begin:[/record/,/\s+/,n],className:{1:`keyword`,3:`title.class`},contains:[o,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:`new throw return else`,relevance:0},{begin:[`(?:`+r+`\\s+)`,e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:`title.function`},keywords:i,contains:[{className:`params`,begin:/\(/,end:/\)/,keywords:i,relevance:0,contains:[a,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,_n,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},_n,a]}}var bn=`[A-Za-z$_][0-9A-Za-z$_]*`,xn=`as.in.of.if.for.while.finally.var.new.function.do.return.void.else.break.catch.instanceof.with.throw.case.default.try.switch.continue.typeof.delete.let.yield.const.class.debugger.async.await.static.import.from.export.extends.using`.split(`.`),Sn=[`true`,`false`,`null`,`undefined`,`NaN`,`Infinity`],Cn=`Object.Function.Boolean.Symbol.Math.Date.Number.BigInt.String.RegExp.Array.Float32Array.Float64Array.Int8Array.Uint8Array.Uint8ClampedArray.Int16Array.Int32Array.Uint16Array.Uint32Array.BigInt64Array.BigUint64Array.Set.Map.WeakSet.WeakMap.ArrayBuffer.SharedArrayBuffer.Atomics.DataView.JSON.Promise.Generator.GeneratorFunction.AsyncFunction.Reflect.Proxy.Intl.WebAssembly`.split(`.`),wn=[`Error`,`EvalError`,`InternalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`],Tn=[`setInterval`,`setTimeout`,`clearInterval`,`clearTimeout`,`require`,`exports`,`eval`,`isFinite`,`isNaN`,`parseFloat`,`parseInt`,`decodeURI`,`decodeURIComponent`,`encodeURI`,`encodeURIComponent`,`escape`,`unescape`],En=[`arguments`,`this`,`super`,`console`,`window`,`document`,`localStorage`,`sessionStorage`,`module`,`global`],Dn=[].concat(Tn,Cn,wn);function On(e){let t=e.regex,n=(e,{after:t})=>{let n=`</`+e[0].slice(1);return e.input.indexOf(n,t)!==-1},r=bn,i={begin:`<>`,end:`</>`},a=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{let r=e[0].length+e.index,i=e.input[r];if(i===`<`||i===`,`){t.ignoreMatch();return}i===`>`&&(n(e,{after:r})||t.ignoreMatch());let a,o=e.input.substring(r);if(a=o.match(/^\s*=/)){t.ignoreMatch();return}if((a=o.match(/^\s+extends\s+/))&&a.index===0){t.ignoreMatch();return}}},s={$pattern:bn,keyword:xn,literal:Sn,built_in:Dn,"variable.language":En},c=`[0-9](_?[0-9])*`,l=`\\.(${c})`,u=`0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`,d={className:`number`,variants:[{begin:`(\\b(${u})((${l})|\\.)?|(${l}))[eE][+-]?(${c})\\b`},{begin:`\\b(${u})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:`\\b(0|[1-9](_?[0-9])*)n\\b`},{begin:`\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b`},{begin:`\\b0[bB][0-1](_?[0-1])*n?\\b`},{begin:`\\b0[oO][0-7](_?[0-7])*n?\\b`},{begin:`\\b0[0-7]+n?\\b`}],relevance:0},f={className:`subst`,begin:`\\$\\{`,end:`\\}`,keywords:s,contains:[]},p={begin:".?html`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`xml`}},m={begin:".?css`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`css`}},h={begin:".?gql`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`graphql`}},g={className:`string`,begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},_={className:`comment`,variants:[e.COMMENT(/\/\*\*(?!\/)/,`\\*/`,{relevance:0,contains:[{begin:`(?=@[A-Za-z]+)`,relevance:0,contains:[{className:`doctag`,begin:`@[A-Za-z]+`},{className:`type`,begin:`\\{`,end:`\\}`,excludeEnd:!0,excludeBegin:!0,relevance:0},{className:`variable`,begin:`[A-Za-z$_][0-9A-Za-z$_]*(?=\\s*(-)|$)`,endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,{match:/\$\d+/},d];f.contains=v.concat({begin:/\{/,end:/\}/,keywords:s,contains:[`self`].concat(v)});let y=[].concat(_,f.contains),b=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:s,contains:[`self`].concat(y)}]),x={className:`params`,begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b},S={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,`(`,t.concat(/\./,r),`)*`)],scope:{1:`keyword`,3:`title.class`,5:`keyword`,7:`title.class.inherited`}},{match:[/class/,/\s+/,r],scope:{1:`keyword`,3:`title.class`}}]},C={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:`title.class`,keywords:{_:[...Cn,...wn]}},w={label:`use_strict`,className:`meta`,relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},T={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:`keyword`,3:`title.function`},label:`func.def`,contains:[x],illegal:/%/},E={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:`variable.constant`};function D(e){return t.concat(`(?!`,e.join(`|`),`)`)}let O={match:t.concat(/\b/,D([...Tn,`super`,`import`].map(e=>`${e}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:`title.function`,relevance:0},k={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:`prototype`,className:`property`,relevance:0},A={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:`keyword`,3:`title.function`},contains:[{begin:/\(\)/},x]},j=`(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|`+e.UNDERSCORE_IDENT_RE+`)\\s*=>`,M={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(j)],keywords:`async`,className:{1:`keyword`,3:`title.function`},contains:[x]};return{name:`JavaScript`,aliases:[`js`,`jsx`,`mjs`,`cjs`],keywords:s,exports:{PARAMS_CONTAINS:b,CLASS_REFERENCE:C},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:`shebang`,binary:`node`,relevance:5}),w,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,_,{match:/\$\d+/},d,C,{scope:`attr`,match:r+t.lookahead(`:`),relevance:0},M,{begin:`(`+e.RE_STARTERS_RE+`|\\b(case|return|throw)\\b)\\s*`,keywords:`return throw case`,relevance:0,contains:[_,e.REGEXP_MODE,{className:`function`,begin:j,returnBegin:!0,end:`\\s*=>`,contains:[{className:`params`,variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:a},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:`xml`,contains:[{begin:o.begin,end:o.end,skip:!0,contains:[`self`]}]}]},T,{beginKeywords:`while if switch catch for`},{begin:`\\b(?!function)`+e.UNDERSCORE_IDENT_RE+`\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{`,returnBegin:!0,label:`func.def`,contains:[x,e.inherit(e.TITLE_MODE,{begin:r,className:`title.function`})]},{match:/\.\.\./,relevance:0},k,{match:`\\$[A-Za-z$_][0-9A-Za-z$_]*`,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:`title.function`},contains:[x]},O,E,S,A,{match:/\$[(.]/}]}}function kn(e){let t={className:`attr`,begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:`punctuation`,relevance:0},r=[`true`,`false`,`null`],i={scope:`literal`,beginKeywords:r.join(` `)};return{name:`JSON`,aliases:[`jsonc`],keywords:{literal:r},contains:[t,n,e.QUOTE_STRING_MODE,i,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:`\\S`}}function An(e){let t=e.regex,n={begin:/<\/?[A-Za-z_]/,end:`>`,subLanguage:`xml`,relevance:0},r={begin:`^[-\\*]{3,}`,end:`$`},i={className:`code`,variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:`(~{3,})[^~](.|\\n)*?\\1~*[ ]*`},{begin:"```",end:"```+[ ]*$"},{begin:`~~~`,end:`~~~+[ ]*$`},{begin:"`.+?`"},{begin:`(?=^( {4}|\\t))`,contains:[{begin:`^( {4}|\\t)`,end:`(\\n)$`}],relevance:0}]},a={className:`bullet`,begin:`^[ ]*([*+-]|(\\d+\\.))(?=\\s+)`,end:`\\s+`,excludeEnd:!0},o={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:`symbol`,begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:`link`,begin:/:\s*/,end:/$/,excludeBegin:!0}]},s={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:`string`,relevance:0,begin:`\\[`,end:`\\]`,excludeBegin:!0,returnEnd:!0},{className:`link`,relevance:0,begin:`\\]\\(`,end:`\\)`,excludeBegin:!0,excludeEnd:!0},{className:`symbol`,relevance:0,begin:`\\]\\[`,end:`\\]`,excludeBegin:!0,excludeEnd:!0}]},c={className:`strong`,contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},l={className:`emphasis`,contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},u=e.inherit(c,{contains:[]}),d=e.inherit(l,{contains:[]});c.contains.push(d),l.contains.push(u);let f=[n,s];return[c,l,u,d].forEach(e=>{e.contains=e.contains.concat(f)}),f=f.concat(c,l),{name:`Markdown`,aliases:[`md`,`mkdown`,`mkd`],contains:[{className:`section`,variants:[{begin:`^#{1,6}`,end:`$`,contains:f},{begin:`(?=^.+?\\n[=-]{2,}$)`,contains:[{begin:`^[=-]*$`},{begin:`^`,end:`\\n`,contains:f}]}]},n,a,c,l,{className:`quote`,begin:`^>\\s+`,contains:f,end:`$`},i,r,s,o,{scope:`literal`,match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function jn(e){let t=e.regex,n=RegExp(`[\\p{XID_Start}_]\\p{XID_Continue}*`,`u`),r=`and.as.assert.async.await.break.case.class.continue.def.del.elif.else.except.finally.for.from.global.if.import.in.is.lambda.match.nonlocal|10.not.or.pass.raise.return.try.while.with.yield`.split(`.`),i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:`__import__.abs.all.any.ascii.bin.bool.breakpoint.bytearray.bytes.callable.chr.classmethod.compile.complex.delattr.dict.dir.divmod.enumerate.eval.exec.filter.float.format.frozenset.getattr.globals.hasattr.hash.help.hex.id.input.int.isinstance.issubclass.iter.len.list.locals.map.max.memoryview.min.next.object.oct.open.ord.pow.print.property.range.repr.reversed.round.set.setattr.slice.sorted.staticmethod.str.sum.super.tuple.type.vars.zip`.split(`.`),literal:[`__debug__`,`Ellipsis`,`False`,`None`,`NotImplemented`,`True`],type:[`Any`,`Callable`,`Coroutine`,`Dict`,`List`,`Literal`,`Generic`,`Optional`,`Sequence`,`Set`,`Tuple`,`Type`,`Union`]},a={className:`meta`,begin:/^(>>>|\.\.\.) /},o={className:`subst`,begin:/\{/,end:/\}/,keywords:i,illegal:/#/},s={begin:/\{\{/,relevance:0},c={className:`string`,contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a,s,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,s,o]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,s,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,s,o]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},l=`[0-9](_?[0-9])*`,u=`(\\b(${l}))?\\.(${l})|\\b(${l})\\.`,d=`\\b|${r.join(`|`)}`,f={className:`number`,relevance:0,variants:[{begin:`(\\b(${l})|(${u}))[eE][+-]?(${l})[jJ]?(?=${d})`},{begin:`(${u})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${l})[jJ](?=${d})`}]},p={className:`comment`,begin:t.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:`params`,variants:[{className:``,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:[`self`,a,f,c,e.HASH_COMMENT_MODE]}]};return o.contains=[c,f,a],{name:`Python`,aliases:[`py`,`gyp`,`ipython`],unicodeRegex:!0,keywords:i,illegal:/(<\/|\?)|=>/,contains:[a,f,{scope:`variable.language`,match:/\bself\b/},{beginKeywords:`if`,relevance:0},{match:/\bor\b/,scope:`keyword`},c,p,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:`keyword`,3:`title.function`},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:`keyword`,3:`title.class`,6:`title.class.inherited`}},{className:`meta`,begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[f,m,c]}]}}function Mn(e){let t=e.regex,n=/(r#)?/,r=t.concat(n,e.UNDERSCORE_IDENT_RE),i=t.concat(n,e.IDENT_RE),a={className:`title.function.invoke`,relevance:0,begin:t.concat(/\b/,/(?!let|for|while|if|else|match\b)/,i,t.lookahead(/\s*\(/))},o=`abstract.as.async.await.become.box.break.const.continue.crate.do.dyn.else.enum.extern.false.final.fn.for.if.impl.in.let.loop.macro.match.mod.move.mut.override.priv.pub.ref.return.self.Self.static.struct.super.trait.true.try.type.typeof.union.unsafe.unsized.use.virtual.where.while.yield`.split(`.`),s=[`true`,`false`,`Some`,`None`,`Ok`,`Err`],c=`drop .Copy.Send.Sized.Sync.Drop.Fn.FnMut.FnOnce.ToOwned.Clone.Debug.PartialEq.PartialOrd.Eq.Ord.AsRef.AsMut.Into.From.Default.Iterator.Extend.IntoIterator.DoubleEndedIterator.ExactSizeIterator.SliceConcatExt.ToString.assert!.assert_eq!.bitflags!.bytes!.cfg!.col!.concat!.concat_idents!.debug_assert!.debug_assert_eq!.env!.eprintln!.panic!.file!.format!.format_args!.include_bytes!.include_str!.line!.local_data_key!.module_path!.option_env!.print!.println!.select!.stringify!.try!.unimplemented!.unreachable!.vec!.write!.writeln!.macro_rules!.assert_ne!.debug_assert_ne!`.split(`.`),l=[`i8`,`i16`,`i32`,`i64`,`i128`,`isize`,`u8`,`u16`,`u32`,`u64`,`u128`,`usize`,`f32`,`f64`,`str`,`char`,`bool`,`Box`,`Option`,`Result`,`String`,`Vec`];return{name:`Rust`,aliases:[`rs`],keywords:{$pattern:e.IDENT_RE+`!?`,type:l,keyword:o,literal:s,built_in:c},illegal:`</`,contains:[e.C_LINE_COMMENT_MODE,e.COMMENT(`/\\*`,`\\*/`,{contains:[`self`]}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:`symbol`,begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:`string`,variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:`char.escape`,match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:`number`,variants:[{begin:`\\b0b([01_]+)([ui](8|16|32|64|128|size)|f(32|64))?`},{begin:`\\b0o([0-7_]+)([ui](8|16|32|64|128|size)|f(32|64))?`},{begin:`\\b0x([A-Fa-f0-9_]+)([ui](8|16|32|64|128|size)|f(32|64))?`},{begin:`\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)([ui](8|16|32|64|128|size)|f(32|64))?`}],relevance:0},{begin:[/fn/,/\s+/,r],className:{1:`keyword`,3:`title.function`}},{className:`meta`,begin:`#!?\\[`,end:`\\]`,contains:[{className:`string`,begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,r],className:{1:`keyword`,3:`keyword`,4:`variable`}},{begin:[/for/,/\s+/,r,/\s+/,/in/],className:{1:`keyword`,3:`variable`,5:`keyword`}},{begin:[/type/,/\s+/,r],className:{1:`keyword`,3:`title.class`}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,r],className:{1:`keyword`,3:`title.class`}},{begin:e.IDENT_RE+`::`,keywords:{keyword:`Self`,built_in:c,type:l}},{className:`punctuation`,begin:`->`},a]}}function Nn(e){let t=e.regex,n=e.COMMENT(`--`,`$`),r={scope:`string`,variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},i={begin:/"/,end:/"/,contains:[{match:/""/}]},a=[`true`,`false`,`unknown`],o=[`double precision`,`large object`,`with timezone`,`without timezone`],s=`bigint.binary.blob.boolean.char.character.clob.date.dec.decfloat.decimal.float.int.integer.interval.nchar.nclob.national.numeric.real.row.smallint.time.timestamp.varchar.varying.varbinary`.split(`.`),c=[`add`,`asc`,`collation`,`desc`,`final`,`first`,`last`,`view`],l=`abs.acos.all.allocate.alter.and.any.are.array.array_agg.array_max_cardinality.as.asensitive.asin.asymmetric.at.atan.atomic.authorization.avg.begin.begin_frame.begin_partition.between.bigint.binary.blob.boolean.both.by.call.called.cardinality.cascaded.case.cast.ceil.ceiling.char.char_length.character.character_length.check.classifier.clob.close.coalesce.collate.collect.column.commit.condition.connect.constraint.contains.convert.copy.corr.corresponding.cos.cosh.count.covar_pop.covar_samp.create.cross.cube.cume_dist.current.current_catalog.current_date.current_default_transform_group.current_path.current_role.current_row.current_schema.current_time.current_timestamp.current_path.current_role.current_transform_group_for_type.current_user.cursor.cycle.date.day.deallocate.dec.decimal.decfloat.declare.default.define.delete.dense_rank.deref.describe.deterministic.disconnect.distinct.double.drop.dynamic.each.element.else.empty.end.end_frame.end_partition.end-exec.equals.escape.every.except.exec.execute.exists.exp.external.extract.false.fetch.filter.first_value.float.floor.for.foreign.frame_row.free.from.full.function.fusion.get.global.grant.group.grouping.groups.having.hold.hour.identity.in.indicator.initial.inner.inout.insensitive.insert.int.integer.intersect.intersection.interval.into.is.join.json_array.json_arrayagg.json_exists.json_object.json_objectagg.json_query.json_table.json_table_primitive.json_value.lag.language.large.last_value.lateral.lead.leading.left.like.like_regex.listagg.ln.local.localtime.localtimestamp.log.log10.lower.match.match_number.match_recognize.matches.max.member.merge.method.min.minute.mod.modifies.module.month.multiset.national.natural.nchar.nclob.new.no.none.normalize.not.nth_value.ntile.null.nullif.numeric.octet_length.occurrences_regex.of.offset.old.omit.on.one.only.open.or.order.out.outer.over.overlaps.overlay.parameter.partition.pattern.per.percent.percent_rank.percentile_cont.percentile_disc.period.portion.position.position_regex.power.precedes.precision.prepare.primary.procedure.ptf.range.rank.reads.real.recursive.ref.references.referencing.regr_avgx.regr_avgy.regr_count.regr_intercept.regr_r2.regr_slope.regr_sxx.regr_sxy.regr_syy.release.result.return.returns.revoke.right.rollback.rollup.row.row_number.rows.running.savepoint.scope.scroll.search.second.seek.select.sensitive.session_user.set.show.similar.sin.sinh.skip.smallint.some.specific.specifictype.sql.sqlexception.sqlstate.sqlwarning.sqrt.start.static.stddev_pop.stddev_samp.submultiset.subset.substring.substring_regex.succeeds.sum.symmetric.system.system_time.system_user.table.tablesample.tan.tanh.then.time.timestamp.timezone_hour.timezone_minute.to.trailing.translate.translate_regex.translation.treat.trigger.trim.trim_array.true.truncate.uescape.union.unique.unknown.unnest.update.upper.user.using.value.values.value_of.var_pop.var_samp.varbinary.varchar.varying.versioning.when.whenever.where.width_bucket.window.with.within.without.year`.split(`.`),u=`abs.acos.array_agg.asin.atan.avg.cast.ceil.ceiling.coalesce.corr.cos.cosh.count.covar_pop.covar_samp.cume_dist.dense_rank.deref.element.exp.extract.first_value.floor.json_array.json_arrayagg.json_exists.json_object.json_objectagg.json_query.json_table.json_table_primitive.json_value.lag.last_value.lead.listagg.ln.log.log10.lower.max.min.mod.nth_value.ntile.nullif.percent_rank.percentile_cont.percentile_disc.position.position_regex.power.rank.regr_avgx.regr_avgy.regr_count.regr_intercept.regr_r2.regr_slope.regr_sxx.regr_sxy.regr_syy.row_number.sin.sinh.sqrt.stddev_pop.stddev_samp.substring.substring_regex.sum.tan.tanh.translate.translate_regex.treat.trim.trim_array.unnest.upper.value_of.var_pop.var_samp.width_bucket`.split(`.`),d=[`current_catalog`,`current_date`,`current_default_transform_group`,`current_path`,`current_role`,`current_schema`,`current_transform_group_for_type`,`current_user`,`session_user`,`system_time`,`system_user`,`current_time`,`localtime`,`current_timestamp`,`localtimestamp`],f=[`create table`,`insert into`,`primary key`,`foreign key`,`not null`,`alter table`,`add constraint`,`grouping sets`,`on overflow`,`character set`,`respect nulls`,`ignore nulls`,`nulls first`,`nulls last`,`depth first`,`breadth first`],p=u,m=[...l,...c].filter(e=>!u.includes(e)),h={scope:`variable`,match:/@[a-z0-9][a-z0-9_]*/},g={scope:`operator`,match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},_={match:t.concat(/\b/,t.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function v(e){return t.concat(/\b/,t.either(...e.map(e=>e.replace(/\s+/,`\\s+`))),/\b/)}let y={scope:`keyword`,match:v(f),relevance:0};function b(e,{exceptions:t,when:n}={}){let r=n;return t||=[],e.map(e=>e.match(/\|\d+$/)||t.includes(e)?e:r(e)?`${e}|0`:e)}return{name:`SQL`,case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:b(m,{when:e=>e.length<3}),literal:a,type:s,built_in:d},contains:[{scope:`type`,match:v(o)},y,_,h,r,i,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,g]}}var Pn=`[A-Za-z$_][0-9A-Za-z$_]*`,Fn=`as.in.of.if.for.while.finally.var.new.function.do.return.void.else.break.catch.instanceof.with.throw.case.default.try.switch.continue.typeof.delete.let.yield.const.class.debugger.async.await.static.import.from.export.extends.using`.split(`.`),In=[`true`,`false`,`null`,`undefined`,`NaN`,`Infinity`],Ln=`Object.Function.Boolean.Symbol.Math.Date.Number.BigInt.String.RegExp.Array.Float32Array.Float64Array.Int8Array.Uint8Array.Uint8ClampedArray.Int16Array.Int32Array.Uint16Array.Uint32Array.BigInt64Array.BigUint64Array.Set.Map.WeakSet.WeakMap.ArrayBuffer.SharedArrayBuffer.Atomics.DataView.JSON.Promise.Generator.GeneratorFunction.AsyncFunction.Reflect.Proxy.Intl.WebAssembly`.split(`.`),Rn=[`Error`,`EvalError`,`InternalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`],zn=[`setInterval`,`setTimeout`,`clearInterval`,`clearTimeout`,`require`,`exports`,`eval`,`isFinite`,`isNaN`,`parseFloat`,`parseInt`,`decodeURI`,`decodeURIComponent`,`encodeURI`,`encodeURIComponent`,`escape`,`unescape`],Bn=[`arguments`,`this`,`super`,`console`,`window`,`document`,`localStorage`,`sessionStorage`,`module`,`global`],Vn=[].concat(zn,Ln,Rn);function Hn(e){let t=e.regex,n=(e,{after:t})=>{let n=`</`+e[0].slice(1);return e.input.indexOf(n,t)!==-1},r=Pn,i={begin:`<>`,end:`</>`},a=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{let r=e[0].length+e.index,i=e.input[r];if(i===`<`||i===`,`){t.ignoreMatch();return}i===`>`&&(n(e,{after:r})||t.ignoreMatch());let a,o=e.input.substring(r);if(a=o.match(/^\s*=/)){t.ignoreMatch();return}if((a=o.match(/^\s+extends\s+/))&&a.index===0){t.ignoreMatch();return}}},s={$pattern:Pn,keyword:Fn,literal:In,built_in:Vn,"variable.language":Bn},c=`[0-9](_?[0-9])*`,l=`\\.(${c})`,u=`0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`,d={className:`number`,variants:[{begin:`(\\b(${u})((${l})|\\.)?|(${l}))[eE][+-]?(${c})\\b`},{begin:`\\b(${u})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:`\\b(0|[1-9](_?[0-9])*)n\\b`},{begin:`\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b`},{begin:`\\b0[bB][0-1](_?[0-1])*n?\\b`},{begin:`\\b0[oO][0-7](_?[0-7])*n?\\b`},{begin:`\\b0[0-7]+n?\\b`}],relevance:0},f={className:`subst`,begin:`\\$\\{`,end:`\\}`,keywords:s,contains:[]},p={begin:".?html`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`xml`}},m={begin:".?css`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`css`}},h={begin:".?gql`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`graphql`}},g={className:`string`,begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},_={className:`comment`,variants:[e.COMMENT(/\/\*\*(?!\/)/,`\\*/`,{relevance:0,contains:[{begin:`(?=@[A-Za-z]+)`,relevance:0,contains:[{className:`doctag`,begin:`@[A-Za-z]+`},{className:`type`,begin:`\\{`,end:`\\}`,excludeEnd:!0,excludeBegin:!0,relevance:0},{className:`variable`,begin:`[A-Za-z$_][0-9A-Za-z$_]*(?=\\s*(-)|$)`,endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,{match:/\$\d+/},d];f.contains=v.concat({begin:/\{/,end:/\}/,keywords:s,contains:[`self`].concat(v)});let y=[].concat(_,f.contains),b=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:s,contains:[`self`].concat(y)}]),x={className:`params`,begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b},S={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,`(`,t.concat(/\./,r),`)*`)],scope:{1:`keyword`,3:`title.class`,5:`keyword`,7:`title.class.inherited`}},{match:[/class/,/\s+/,r],scope:{1:`keyword`,3:`title.class`}}]},C={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:`title.class`,keywords:{_:[...Ln,...Rn]}},w={label:`use_strict`,className:`meta`,relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},T={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:`keyword`,3:`title.function`},label:`func.def`,contains:[x],illegal:/%/},E={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:`variable.constant`};function D(e){return t.concat(`(?!`,e.join(`|`),`)`)}let O={match:t.concat(/\b/,D([...zn,`super`,`import`].map(e=>`${e}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:`title.function`,relevance:0},k={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:`prototype`,className:`property`,relevance:0},A={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:`keyword`,3:`title.function`},contains:[{begin:/\(\)/},x]},j=`(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|`+e.UNDERSCORE_IDENT_RE+`)\\s*=>`,M={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(j)],keywords:`async`,className:{1:`keyword`,3:`title.function`},contains:[x]};return{name:`JavaScript`,aliases:[`js`,`jsx`,`mjs`,`cjs`],keywords:s,exports:{PARAMS_CONTAINS:b,CLASS_REFERENCE:C},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:`shebang`,binary:`node`,relevance:5}),w,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,_,{match:/\$\d+/},d,C,{scope:`attr`,match:r+t.lookahead(`:`),relevance:0},M,{begin:`(`+e.RE_STARTERS_RE+`|\\b(case|return|throw)\\b)\\s*`,keywords:`return throw case`,relevance:0,contains:[_,e.REGEXP_MODE,{className:`function`,begin:j,returnBegin:!0,end:`\\s*=>`,contains:[{className:`params`,variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:a},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:`xml`,contains:[{begin:o.begin,end:o.end,skip:!0,contains:[`self`]}]}]},T,{beginKeywords:`while if switch catch for`},{begin:`\\b(?!function)`+e.UNDERSCORE_IDENT_RE+`\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{`,returnBegin:!0,label:`func.def`,contains:[x,e.inherit(e.TITLE_MODE,{begin:r,className:`title.function`})]},{match:/\.\.\./,relevance:0},k,{match:`\\$[A-Za-z$_][0-9A-Za-z$_]*`,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:`title.function`},contains:[x]},O,E,S,A,{match:/\$[(.]/}]}}function Un(e){let t=e.regex,n=Hn(e),r=Pn,i=[`any`,`void`,`number`,`boolean`,`string`,`object`,`never`,`symbol`,`bigint`,`unknown`],a={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:`keyword`,3:`title.class`}},o={beginKeywords:`interface`,end:/\{/,excludeEnd:!0,keywords:{keyword:`interface extends`,built_in:i},contains:[n.exports.CLASS_REFERENCE]},s={className:`meta`,relevance:10,begin:/^\s*['"]use strict['"]/},c={$pattern:Pn,keyword:Fn.concat([`type`,`interface`,`public`,`private`,`protected`,`implements`,`declare`,`abstract`,`readonly`,`enum`,`override`,`satisfies`]),literal:In,built_in:Vn.concat(i),"variable.language":Bn},l={className:`meta`,begin:`@[A-Za-z$_][0-9A-Za-z$_]*`},u=(e,t,n)=>{let r=e.contains.findIndex(e=>e.label===t);if(r===-1)throw Error(`can not find mode to replace`);e.contains.splice(r,1,n)};Object.assign(n.keywords,c),n.exports.PARAMS_CONTAINS.push(l);let d=n.contains.find(e=>e.scope===`attr`),f=Object.assign({},d,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,d,f]),n.contains=n.contains.concat([l,a,o,f]),u(n,`shebang`,e.SHEBANG()),u(n,`use_strict`,s);let p=n.contains.find(e=>e.label===`func.def`);return p.relevance=0,Object.assign(n,{name:`TypeScript`,aliases:[`ts`,`tsx`,`mts`,`cts`]}),n}function Wn(e){let t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r=/[\p{L}0-9._:-]+/u,i={className:`symbol`,begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},a={begin:/\s/,contains:[{className:`keyword`,begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},o=e.inherit(a,{begin:/\(/,end:/\)/}),s=e.inherit(e.APOS_STRING_MODE,{className:`string`}),c=e.inherit(e.QUOTE_STRING_MODE,{className:`string`}),l={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:`attr`,begin:r,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:`string`,endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[i]},{begin:/'/,end:/'/,contains:[i]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:`HTML, XML`,aliases:[`html`,`xhtml`,`rss`,`atom`,`xjb`,`xsd`,`xsl`,`plist`,`wsf`,`svg`],case_insensitive:!0,unicodeRegex:!0,contains:[{className:`meta`,begin:/<![a-z]/,end:/>/,relevance:10,contains:[a,c,s,o,{begin:/\[/,end:/\]/,contains:[{className:`meta`,begin:/<![a-z]/,end:/>/,contains:[a,o,c,s]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},i,{className:`meta`,end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:`tag`,begin:/<style(?=\s|>)/,end:/>/,keywords:{name:`style`},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:[`css`,`xml`]}},{className:`tag`,begin:/<script(?=\s|>)/,end:/>/,keywords:{name:`script`},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:[`javascript`,`handlebars`,`xml`]}},{className:`tag`,begin:/<>|<\/>/},{className:`tag`,begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:`name`,begin:n,relevance:0,starts:l}]},{className:`tag`,begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:`name`,begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function Gn(e){let t=`true false yes no null`,n={className:`attr`,variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:`template-variable`,variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},i={className:`string`,relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:`char.escape`,relevance:0}]},a={className:`string`,relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,r]},o=e.inherit(a,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),s={className:`number`,begin:`\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b`},c={end:`,`,endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},l={begin:/\{/,end:/\}/,contains:[c],illegal:`\\n`,relevance:0},u={begin:`\\[`,end:`\\]`,contains:[c],illegal:`\\n`,relevance:0},d=[n,{className:`meta`,begin:`^---\\s*$`,relevance:10},{className:`string`,begin:`[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*`},{begin:`<%[%=-]?`,end:`[%-]?%>`,subLanguage:`ruby`,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:`type`,begin:`!\\w+![\\w#;/?:@&=+$,.~*'()[\\]]+`},{className:`type`,begin:`!<[\\w#;/?:@&=+$,.~*'()[\\]]+>`},{className:`type`,begin:`![\\w#;/?:@&=+$,.~*'()[\\]]+`},{className:`type`,begin:`!![\\w#;/?:@&=+$,.~*'()[\\]]+`},{className:`meta`,begin:`&`+e.UNDERSCORE_IDENT_RE+`$`},{className:`meta`,begin:`\\*`+e.UNDERSCORE_IDENT_RE+`$`},{className:`bullet`,begin:`-(?=[ ]|$)`,relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},s,{className:`number`,begin:e.C_NUMBER_RE+`\\b`,relevance:0},l,u,i,a],f=[...d];return f.pop(),f.push(o),c.contains=f,{name:`YAML`,case_insensitive:!0,aliases:[`yml`],contains:d}}var Kn={bash:an,sh:an,shell:an,css:Q,go:mn,golang:mn,java:yn,javascript:On,js:On,json:kn,markdown:An,md:An,python:jn,py:jn,rust:Mn,rs:Mn,sql:Nn,typescript:Un,ts:Un,xml:Wn,html:Wn,yaml:Gn,yml:Gn};for(let[e,t]of Object.entries(Kn))rn.registerLanguage(e,t);function qn(e){let t=e.split(`
|
|
15
15
|
`);return/^(`{3,}|~{3,})/.test(t[0]??``)&&t.shift(),/^(`{3,}|~{3,})\s*$/.test(t[t.length-1]??``)&&t.pop(),t.join(`
|
|
16
16
|
`).replace(/\n+$/,``)}function Jn(e){let t=(/^(`{3,}|~{3,})([^\s`~]*)/.exec(e.split(`
|
|
17
17
|
`)[0]??``)?.[2]??``).toLowerCase();return t&&Kn[t]?t:``}function Yn(e,t){let n=t&&Kn[t]?t:``;try{return n?rn.highlight(e,{language:n,ignoreIllegals:!0}).value:rn.highlightAuto(e).value}catch{return Zn(e)}}function Xn(e){return e.split(`
|
|
18
|
-
`).filter(e=>e.trim().length>0).filter(e=>!/^\s*\|?\s*(:?-+:?\s*\|\s*)+(:?-+:?)(\s*\|)?\s*$/.test(e)).map(e=>e.replace(/^\s*\|/,``).replace(/\|\s*$/,``).split(`|`).map(e=>e.trim()))}function Zn(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}function Qn(e,t,n){if(e.length<=1)return e.slice();let[r,...i]=e,a=i.map(e=>e[t]??``),o=a.length>0&&a.every(e=>e.trim()!==``&&!Number.isNaN(Number(e))),s=n===`asc`?1:-1;return[r,...i.slice().sort((e,n)=>{let r=e[t]??``,i=n[t]??``;return o?(Number(r)-Number(i))*s:r.localeCompare(i,`zh-Hans-CN`,{numeric:!0})*s})]}var $n=[`viewBox`,`width`,`height`],er={class:`zm-edges`},tr=[`d`,`fill`],nr=[`data-node-id`,`onClick`,`onDblclick`,`onContextmenu`,`onMouseenter`,`onMouseleave`],rr=[`src`,`width`,`height`,`alt`],ir=[`onDblclick`],ar={key:0,class:`zm-rich-code`},or=[`innerHTML`],sr={key:1,class:`zm-rich-table`},cr=[`onClick`],lr={class:`zm-rich-sort-mark`,"aria-hidden":`true`},ur={key:2,class:`zm-text`},dr={class:`zm-text-label`},fr=[`href`,`title`],pr=[`title`,`onClick`],mr=[`title`],hr=[`title`,`onClick`],gr=[`onClick`],_r=[`onMousedown`],vr=[`onClick`],yr={class:`zm-tb-tip zm-tb-zoom`},br=[`src`],xr=[`src`],Sr=24,Cr=400,wr=160,Tr=
|
|
18
|
+
`).filter(e=>e.trim().length>0).filter(e=>!/^\s*\|?\s*(:?-+:?\s*\|\s*)+(:?-+:?)(\s*\|)?\s*$/.test(e)).map(e=>e.replace(/^\s*\|/,``).replace(/\|\s*$/,``).split(`|`).map(e=>e.trim()))}function Zn(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}function Qn(e,t,n){if(e.length<=1)return e.slice();let[r,...i]=e,a=i.map(e=>e[t]??``),o=a.length>0&&a.every(e=>e.trim()!==``&&!Number.isNaN(Number(e))),s=n===`asc`?1:-1;return[r,...i.slice().sort((e,n)=>{let r=e[t]??``,i=n[t]??``;return o?(Number(r)-Number(i))*s:r.localeCompare(i,`zh-Hans-CN`,{numeric:!0})*s})]}var $n=[`viewBox`,`width`,`height`],er={class:`zm-edges`},tr=[`d`,`fill`],nr=[`data-node-id`,`onClick`,`onDblclick`,`onContextmenu`,`onMouseenter`,`onMouseleave`],rr=[`src`,`width`,`height`,`alt`],ir=[`onDblclick`],ar={key:0,class:`zm-rich-code`},or=[`innerHTML`],sr={key:1,class:`zm-rich-table`},cr=[`onClick`],lr={class:`zm-rich-sort-mark`,"aria-hidden":`true`},ur={key:2,class:`zm-text`},dr={class:`zm-text-label`},fr=[`href`,`title`],pr=[`title`,`onClick`],mr=[`title`],hr=[`title`,`onClick`],gr=[`onClick`],_r=[`onMousedown`],vr=[`onClick`],yr={class:`zm-tb-tip zm-tb-zoom`},br=[`src`],xr=[`src`],Sr=24,Cr=400,wr=160,Tr=a({__name:`MindMap`,props:{data:{},theme:{},previewMode:{type:Boolean,default:!1},markdown:{},lineColors:{}},emits:[`change`,`select`,`edit-note`,`markdownChange`],setup(a,{expose:C,emit:T}){let E=a,D=T,j=b(null),M=b(null),N=b(``),P=b(null),F=b(new Set),ee=b(!1),te=b(null),ne=b(``),I=b(new Map),L=b(we(E.data)),re=b({}),ie=b({}),R=b(E.markdown!==void 0),ae=!1;n(()=>E.markdown,e=>{if(e===void 0){R.value=!1;return}R.value=!0;let t=Fe(e||``);ae=!0,L.value=we(t),P.value=null,F.value=new Set,K(),i(()=>{ae=!1,Q()})}),n(L,()=>{R.value&&!ae&&D(`markdownChange`,Ie(L.value))},{deep:!0});let oe=g(()=>J.showOrderBadge===!0),se=b(new Map),ce=se.value;function le(e,t){let n={};t.bg&&(n.bg=t.bg),t.textColor&&(n.textColor=t.textColor),t.borderColor&&(n.borderColor=t.borderColor),t.fontWeight&&(n.fontWeight=t.fontWeight),Object.keys(n).length===0?ce.delete(e):ce.set(e,n),se.value=new Map(ce)}function ue(e){return ce.get(e)??{}}function de(e,t){let n=H(L.value,e);n&&(n.image={src:t.src,naturalW:t.naturalW,naturalH:t.naturalH,width:me(t.width,Sr,Cr),height:me(t.height,Sr,Cr)},G(),K(),D(`change`,L.value))}function fe(e){let t=H(L.value,e);!t||!t.image||(delete t.image,G(),K(),D(`change`,L.value))}function pe(e,t){let n=t.trim();if(!H(L.value,e))return;if(!n){fe(e);return}let r=new Image;r.onload=()=>{let t=H(L.value,e);if(!t)return;let i=r.naturalWidth&&r.naturalHeight?r.naturalWidth/r.naturalHeight:1,a=me(r.naturalWidth||wr,Sr,Cr),o=Math.round(a/i);t.image={src:n,naturalW:r.naturalWidth||a,naturalH:r.naturalHeight||o,width:a,height:o},G(),K(),D(`change`,L.value)},r.onerror=()=>{},r.src=n}function me(e,t,n){return Math.min(n,Math.max(t,e))}function he(e,t){let n=new FileReader;n.onload=()=>{if(typeof n.result!=`string`)return;let e=n.result,r=new window.Image;r.onload=()=>{let n=r.naturalWidth||wr,i=r.naturalHeight||wr,a=me(n,Sr,wr);t({src:e,naturalW:n,naturalH:i,width:a,height:me(Math.round(i*a/n),Sr,Cr)})},r.onerror=()=>{t({src:e,naturalW:wr,naturalH:wr,width:wr,height:wr})},r.src=e},n.readAsDataURL(e)}function ge(e){let t=document.createElement(`input`);t.type=`file`,t.accept=`image/*`,t.style.display=`none`,t.onchange=()=>{let n=t.files?.[0];n&&(he(n,t=>de(e,t)),document.body.removeChild(t))},document.body.appendChild(t),t.click()}function ve(e,t){let n=t.trim(),r=H(L.value,e);r&&(n?r.link={url:n}:delete r.link,G(),K(),D(`change`,L.value))}function ye(e){ve(e,``)}function be(e,t){let n=H(L.value,e);n&&(t?n.note={text:t}:delete n.note,G(),K(),D(`change`,L.value))}function xe(e){be(e,``)}function z(e,t){let n=H(L.value,e);n&&(t?n.richContent=t:delete n.richContent,G(),K(),D(`change`,L.value))}let B=b(null);function V(e,t){E.previewMode||(e.preventDefault(),e.stopPropagation(),P.value=t.id,D(`select`,H(L.value,t.id)),B.value={nodeId:t.id,x:e.clientX,y:e.clientY})}function Oe(){B.value=null}function Ne(){let e=B.value?.nodeId;e&&ge(e)}function Le(){let e=B.value?.nodeId;if(!e)return;let t=H(L.value,e)?.link?.url??``,n=window.prompt(`输入链接 URL(留空取消)`,t);n!==null&&ve(e,n)}function Re(){let e=B.value?.nodeId;e&&ye(e)}function Be(){let e=B.value?.nodeId;e&&Xe(e)}function Ve(){let e=B.value?.nodeId;e&&xe(e)}function Ge(){let e=B.value?.nodeId;e&&fe(e)}function Ke(){let e=B.value?.nodeId;if(!e)return;let t=H(L.value,e)?.richContent,n=t?.kind===`code`?qn(t.raw):``,r=t?.kind===`code`&&t.lang||``,i=r?"```"+r+`
|
|
19
19
|
`:"```\n",a=window.prompt("输入代码块内容(用 ```lang 包裹;留空取消)",n?i+n+(n.endsWith("```")?``:"\n```"):i+"// 你的代码\n```");if(a===null)return;let o=a.trim();if(!o){z(e,null);return}let s=/^```([^\s`]*)/.exec(o);z(e,{kind:`code`,raw:o,lang:s?s[1]:void 0})}function qe(){let e=B.value?.nodeId;e&&z(e,null)}function Je(){let e=B.value?.nodeId;if(!e)return;let t=H(L.value,e)?.richContent,n=t?.kind===`table`?t.raw:``,r=window.prompt(`输入 markdown 表格(每行以 | 分隔;留空取消)`,n||`| 列1 | 列2 | 列3 |
|
|
20
20
|
| --- | --- | --- |
|
|
21
|
-
| a | b | c |`);if(r===null)return;let i=r.trim();if(!i){z(e,null);return}z(e,{kind:`table`,raw:i})}function Ye(){let e=B.value?.nodeId;e&&z(e,null)}function Xe(e){E.previewMode||D(`edit-note`,e)}function Ze(e,t=60){let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n||`点击编辑笔记`:n.slice(0,t)+`…`}function Qe(e){if(E.previewMode||M.value)return;let t=e.target;if(t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable))return;let n=P.value;if(!n)return;let r=e.clipboardData?.items;if(r)for(let t=0;t<r.length;t++){let i=r[t];if(i.kind===`file`&&i.type.startsWith(`image/`)){let t=i.getAsFile();if(!t)continue;e.preventDefault();let r=H(L.value,n);if(r!=null&&r.image&&!window.confirm(`该节点已有图片,要用剪贴板里的图片替换吗?`))return;he(t,e=>de(n,e));return}}}t(()=>{window.addEventListener(`paste`,Qe),K()}),a(()=>{window.removeEventListener(`paste`,Qe)});let $e=l(null),et=_(()=>$e.value?.nodeId??null);function tt(e,t){if(!t.image)return;e.preventDefault(),e.stopPropagation();let n=t.image.naturalW||t.image.width,r=t.image.naturalH||t.image.height,i=r>0?r/n:1;$e.value={nodeId:t.id,startX:e.clientX,startY:e.clientY,startW:t.image.width,startH:t.image.height,naturalW:n,naturalH:r,ratio:i,pendingW:t.image.width,pendingH:t.image.height},window.addEventListener(`mousemove`,nt),window.addEventListener(`mouseup`,rt)}function nt(e){let t=$e.value;if(!t)return;let n=X.scale.value||1,r=e.clientX-t.startX,i=me(t.startW+r/n,Sr,Cr),a=me(i*t.ratio,Sr,Cr);t.pendingW=i,t.pendingH=a;let o=j.value?.querySelector(`[data-node-id="${t.nodeId}"] .zm-node-img`);o&&(o.style.width=`${i}px`,o.style.height=`${a}px`);let s=j.value?.querySelector(`[data-node-id="${t.nodeId}"]`);s&&(s.style.minWidth=`${Math.max(80,Math.ceil(i+28))}px`,s.style.height=`${Math.ceil(a+8+30)}px`)}function rt(){let e=$e.value;if(window.removeEventListener(`mousemove`,nt),window.removeEventListener(`mouseup`,rt),$e.value=null,!e)return;let t=H(L.value,e.nodeId);!t||!t.image||(de(e.nodeId,{src:t.image.src,naturalW:t.image.naturalW,naturalH:t.image.naturalH,width:e.pendingW,height:e.pendingH}),P.value=e.nodeId,D(`select`,t),at=!0)}let it=l(null),at=!1;function ot(e){it.value=e}function st(e){it.value===e&&(it.value=null)}let ct=l(0),lt=l(!1),W=Ue(100);function G(){W.record({data:L.value})}function K(){F.value=new Set(F.value),ct.value++,i().then(()=>i()).then(()=>ut()).then(()=>{ct.value++})}function ut(){let e=document.querySelectorAll(`.zm-rich`),t={},n={};e.forEach(e=>{let r=e,i=null;for(;r&&!i;)i=r.getAttribute(`data-node-id`),r=r.parentElement;if(!i)return;let a=e.offsetHeight,o=e.scrollWidth,s=Math.round(a*2)/2,c=Math.round(o*2)/2;t[i]=s,n[i]=c,re.value[i],ie.value[i]}),re.value=t,ie.value=n}let q=_(()=>({rootBg:E.theme?.rootBg??`#1f2937`,rootText:E.theme?.rootText??`#ffffff`,branchBg:E.theme?.branchBg??`#ffffff`,branchText:E.theme?.branchText??`#1f2937`,lineColor:E.theme?.lineColor??`#94a3b8`,bgColor:E.theme?.bgColor??`#f8fafc`,fontSize:E.theme?.fontSize??14,lineWidthStart:E.theme?.lineWidthStart??2.2,lineWidthEnd:E.theme?.lineWidthEnd??.8,rainbowBranch:E.theme?.rainbowBranch??!1})),J=b({autoBalanceOnChange:!0,lineWidthStart:12,lineWidthEnd:3.6,rainbowBranch:!0,branchPaletteId:`default`,customPalettes:[],lineStyle:`curve`,layoutMode:`mindmap`,taperedEdge:!0,showOrderBadge:!1});function dt(e){return J.taperedEdge?pt(e):mt(e)}function ft(e){return J.taperedEdge?J.lineWidthEnd:mt(e)}function pt(e){return e<=0?J.lineWidthStart:e===1?Math.max(1.5,J.lineWidthStart*.67):e===2?Math.max(.8,J.lineWidthStart*.42):J.lineWidthEnd}function mt(e){if(e<=0)return J.lineWidthStart;if(e>=3)return J.lineWidthEnd;let t=e/3;return J.lineWidthStart+(J.lineWidthEnd-J.lineWidthStart)*t}function ht(e,t,n,r){let i=1-e;return{x:i*i*i*t.x+3*i*i*e*n.x1+3*i*e*e*n.x2+e*e*e*r.x,y:i*i*i*t.y+3*i*i*e*n.y1+3*i*e*e*n.y2+e*e*e*r.y}}function gt(e,t,n,r,i=32,a=`curve`,o=`right`){if(a===`curve`){let a;if(o===`right`||o===`left`){let n=Math.abs(t.x-e.x)*.45,r=o===`right`?1:-1;a={x1:e.x+r*n,y1:e.y,x2:t.x-r*n,y2:t.y}}else{let n=Math.abs(t.y-e.y)*.45;a={x1:e.x,y1:e.y+n,x2:t.x,y2:t.y-n}}let s=n=>{let r=1-n;return{dx:-3*r*r*e.x+3*(r*r-2*r*n)*a.x1+3*(2*r*n-n*n)*a.x2+3*n*n*t.x,dy:-3*r*r*e.y+3*(r*r-2*r*n)*a.y1+3*(2*r*n-n*n)*a.y2+3*n*n*t.y}},c=[],l=[];for(let o=0;o<=i;o++){let u=o/i,d=o===0?e:o===i?t:ht(u,e,a,t),f=s(u),p=Math.hypot(f.dx,f.dy);p<1e-6&&(p=1);let m=-f.dy/p,h=f.dx/p,g=(n+(r-n)*u)/2;c.push({x:d.x+m*g,y:d.y+h*g}),l.push({x:d.x-m*g,y:d.y-h*g})}let u=`M ${c[0].x.toFixed(2)} ${c[0].y.toFixed(2)}`;for(let e=1;e<=i;e++)u+=` L ${c[e].x.toFixed(2)} ${c[e].y.toFixed(2)}`;for(let e=i;e>=0;e--)u+=` L ${l[e].x.toFixed(2)} ${l[e].y.toFixed(2)}`;return u+=` Z`,u}let s=t.x-e.x,c=t.y-e.y,l=Math.hypot(s,c);l<1e-6&&(l=1);let u=-c/l,d=s/l,f=n/2,p=r/2,m={x:e.x+u*f,y:e.y+d*f},h={x:e.x-u*f,y:e.y-d*f},g={x:t.x-u*p,y:t.y-d*p},_={x:t.x+u*p,y:t.y+d*p};return`M ${m.x.toFixed(2)} ${m.y.toFixed(2)} L ${_.x.toFixed(2)} ${_.y.toFixed(2)} L ${g.x.toFixed(2)} ${g.y.toFixed(2)} L ${h.x.toFixed(2)} ${h.y.toFixed(2)} Z`}let Y=_(()=>Z.value.root.children),_t=Se[0].colors,vt=_(()=>Ce(J.branchPaletteId,J.customPalettes)),yt=_(()=>{let e=new Map;if(!J.rainbowBranch)return e;let t=E.lineColors,n=t&&t.length>0?t:vt.value.colors.length>0?vt.value.colors:_t;for(let t=0;t<Y.value.length;t++){let r=Y.value[t];e.set(r.id,n[t%n.length])}let r=(t,n)=>{e.set(t.id,n);for(let e of t.children)r(e,n)};for(let e=0;e<Y.value.length;e++){let t=Y.value[e];r(t,n[e%n.length])}return e});function bt(e,t){return J.rainbowBranch?yt.value.get(t.id)??q.value.lineColor:q.value.lineColor}function xt(e){let t=ue(e.id);if(t.bg)return t.bg;if(e.isRoot)return q.value.rootBg;if(J.rainbowBranch){let t=yt.value.get(e.id);if(t)return Tt(t,.18)}return q.value.branchBg}function St(e){let t=ue(e.id);if(t.textColor)return t.textColor;if(e.isRoot)return q.value.rootText;if(J.rainbowBranch){let t=yt.value.get(e.id);if(t)return Et(t,.55)}return q.value.branchText}function Ct(e){let t=ue(e.id);if(t.borderColor)return t.borderColor;if(e.isRoot)return q.value.rootBg;if(J.rainbowBranch){let t=yt.value.get(e.id);if(t)return Et(t,.3)}return q.value.lineColor}function wt(e){return ue(e.id).fontWeight??(e.isRoot?600:400)}function Tt(e,t){let n=e.replace(`#`,``),r=n.length===6?n:n.split(``).map(e=>e+e).join(``);return`rgba(${parseInt(r.slice(0,2),16)}, ${parseInt(r.slice(2,4),16)}, ${parseInt(r.slice(4,6),16)}, ${t})`}function Et(e,t){let n=e.replace(`#`,``),r=n.length===6?n:n.split(``).map(e=>e+e).join(``);return`rgb(${Math.round(parseInt(r.slice(0,2),16)*(1-t))}, ${Math.round(parseInt(r.slice(2,4),16)*(1-t))}, ${Math.round(parseInt(r.slice(4,6),16)*(1-t))})`}let X=ze({getContainer:()=>j.value});X.setOnMarqueeEnd(cn),He({isEditing:()=>M.value!==null,isReadonly:()=>E.previewMode,getSelectedId:()=>P.value,getRootId:()=>L.value.id,defaultTargetId:()=>L.value.id,onAddChild:Ut,onAddSibling:Wt,onAddSiblingBefore:Gt,onRemove:Xt,onStartEdit:Mt,onClearSelection:()=>{P.value=null,D(`select`,null)},onDuplicate:Kt,onUndo:qt,onRedo:Jt,onNavigate:Yt,onSelectRoot:()=>{P.value=L.value.id;let e=H(L.value,L.value.id);e&&D(`select`,e)}});let Z=_(()=>{let e=we(L.value);return jt(e),_e(e,{mode:J.layoutMode,baseFontSize:q.value.fontSize,richHeights:re.value,richWidths:ie.value})}),Dt=l([]),Ot=_(()=>(ct.value,Dt.value));n(Z,e=>{let t=[],n=e=>{t.push(e);for(let t of e.children)n(t)};n(e.root),Dt.value=t},{immediate:!0});let kt=_(()=>{let e=[];for(let t of Ot.value)for(let n of t.children)e.push({from:t,to:n,key:`${t.id}->${n.id}`});return e}),At=_(()=>`${Z.value.vbX} ${Z.value.vbY} ${Z.value.vbW} ${Z.value.vbH}`);function jt(e){if(F.value.has(e.id)){e.children=[],e.collapsed=!0;return}e.collapsed=!1;for(let t of e.children)jt(t)}function Mt(e){let t=H(L.value,e);t&&(M.value=e,N.value=t.text,i(()=>{let e=document.querySelector(`.zm-input`);e?.focus(),e?.select()}))}function Nt(e={}){if(!M.value)return;let t=H(L.value,M.value);t&&t.text!==(N.value.trim()||` `)&&(t.text=N.value.trim()||` `,G(),D(`change`,L.value));let n=M.value;M.value=null,e.addChild?i(()=>Ut(n)):e.addSibling===`after`?i(()=>Wt(n)):e.addSibling===`before`&&i(()=>Gt(n))}function Pt(){M.value=null}function Ft(e){if(E.previewMode)return;let t=H(L.value,e);t!=null&&t.richContent&&(te.value=e,ne.value=t.richContent.raw,i(()=>{document.querySelector(`.zm-node .zm-rich textarea`)?.focus()}))}function It(){if(!te.value)return;let e=te.value,t=H(L.value,e),n=ne.value;t&&t.richContent&&t.richContent.raw!==n&&(t.richContent.kind===`code`?z(e,{kind:`code`,raw:n,lang:Jn(n)||void 0}):z(e,{kind:`table`,raw:n})),te.value=null}function Lt(){te.value=null}function Rt(e){e.key===`Escape`?(e.preventDefault(),Lt()):e.key===`Enter`&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),It())}function zt(e,t){let n=I.value.get(e);!n||n.col!==t?I.value.set(e,{col:t,dir:`asc`}):n.dir===`asc`?I.value.set(e,{col:t,dir:`desc`}):I.value.delete(e)}function Bt(e,t){let n=I.value.get(e);return!n||t.length<=1?t:Qn(t,n.col,n.dir)}function Vt(e,t){let n=I.value.get(e);return!n||n.col!==t?`↕`:n.dir===`asc`?`▲`:`▼`}function Ht(e){let t=e.metaKey||e.ctrlKey;t&&(e.key===`z`||e.key===`Z`)&&!e.shiftKey?(e.preventDefault(),qt()):(t&&e.shiftKey&&(e.key===`z`||e.key===`Z`)||t&&(e.key===`y`||e.key===`Y`)&&!e.shiftKey)&&(e.preventDefault(),Jt())}function Ut(e){let t=ke(L.value,e,Pe);t&&(G(),K(),D(`change`,L.value),i(()=>Mt(t.id)))}function Wt(e){if(e===L.value.id){Ut(e);return}let t=Ae(L.value,e,Pe);t&&(G(),K(),D(`change`,L.value),i(()=>Mt(t.id)))}function Gt(e){if(e===L.value.id){Ut(e);return}let t=je(L.value,e,Pe);t&&(G(),K(),D(`change`,L.value),i(()=>Mt(t.id)))}function Kt(e){if(e===L.value.id)return;let t=Me(L.value,e);t&&(G(),P.value=t.id,D(`change`,L.value),K())}function qt(){let e=W.undo();e&&(L.value=e.data,P.value=null,D(`select`,null),K(),D(`change`,L.value))}function Jt(){let e=W.redo();e&&(L.value=e.data,P.value=null,D(`select`,null),K(),D(`change`,L.value))}function Yt(e,t){let n=P.value??L.value.id,r=H(L.value,n);if(!r)return;let i=null;if(t===1){let e=U(L.value,r.id);if(e){let t=e.children.findIndex(e=>e.id===r.id);t>=0&&t<e.children.length-1&&(i=e.children[t+1].id)}}else if(t===-1){let e=U(L.value,r.id);if(e){let t=e.children.findIndex(e=>e.id===r.id);t>0&&(i=e.children[t-1].id)}}else if(e===1){let e=U(L.value,r.id);e&&(i=e.id)}else e===-1&&r.children.length>0&&(i=r.children[0].id);if(i){P.value=i;let e=H(L.value,i);e&&D(`select`,e)}}function Xt(e){e!==L.value.id&&Te(L.value,e)&&(G(),P.value===e&&(P.value=null),K(),D(`change`,L.value))}function Zt(e){F.value.has(e)?F.value.delete(e):F.value.add(e),K()}function Qt(e){let t=[{n:L.value,depth:1}];for(;t.length;){let{n,depth:r}=t.pop();e(n,r);for(let e=n.children.length-1;e>=0;e--)t.push({n:n.children[e],depth:r+1})}}function $t(){F.value=new Set,Qt(e=>{e.children.length>0&&F.value.add(e.id)}),K()}function en(e){F.value=new Set,Qt((t,n)=>{n>e&&t.children.length>0&&F.value.add(t.id)}),K()}function tn(){F.value=new Set,K()}function nn(e,t){Ee(L.value,e,t)&&(G(),K(),D(`change`,L.value))}function rn(e,t,n){return De(L.value,e,t,n)?(G(),K(),D(`change`,L.value),!0):!1}function an(e,t){e.stopPropagation(),P.value=t.id,D(`select`,H(L.value,t.id))}function on(e){let t=e.target;if(!t||t.closest(`.zm-node, .zm-toolbar, button, input, textarea`))return;if(e.button===2){X.startPan(e);return}if(e.button!==0)return;let n=j.value.getBoundingClientRect(),r=(e.clientX-n.left-X.offsetX.value)/X.scale.value,i=(e.clientY-n.top-X.offsetY.value)/X.scale.value;X.startMarquee(r,i)}function sn(e){if(at){at=!1;return}let t=e.target;if(!t||t.closest(`.zm-node`))return;let n=X.marquee;n.width>=4||n.height>=4||P.value!==null&&(P.value=null,D(`select`,null))}function cn(){let e=X.marquee;if(e.width<4&&e.height<4)return;let t=e.x,n=e.y,r=e.x+e.width,i=e.y+e.height,a=[];for(let e of Ot.value){let o=e.width/2,s=e.height/2,c=e.x-o,l=e.x+o,u=e.y-s,d=e.y+s;c<=r&&l>=t&&u<=i&&d>=n&&a.push(e.id)}if(a.length>0){P.value=a[0];let e=H(L.value,a[0]);e&&D(`select`,e)}}function ln(e){return F.value.has(e)}function un(e){let t=H(L.value,e.id);return!!t&&t.children.length>0}function dn(e){let t=H(L.value,e);return t?t.children.length:0}function fn(e){if(!H(L.value,e))return 0;let t=[L.value];for(;t.length;){let n=t.pop(),r=n.children.findIndex(t=>t.id===e);if(r>=0)return r;for(let e of n.children)t.push(e)}return 0}function pn(e,t,n,r){if((r?._dir??e._dir)===`down`)return t===`out`?{x:e.x,y:e.y+e.height/2}:{x:e.x,y:e.y-e.height/2};let i;i=t===`in`?-e.side:n===void 0?e.side:n;let a=t===`in`?e._richInsetX??0:0;return{x:e.x+i*(e.width/2-a),y:e.y}}function Q(){let e=Z.value;X.resetView(e.width,e.height,e.root.y)}function mn(){lt.value=!0,G(),K(),i(()=>Q())}function $(e){J.layoutMode!==e&&(J.layoutMode=e,K(),i(()=>Q()))}function hn(){return JSON.stringify(L.value,null,2)}function gn(e){try{let t=JSON.parse(e);return!t.id||!Array.isArray(t.children)?!1:(W.reset(),L.value=we(t),P.value=null,F.value=new Set,K(),i(()=>Q()),D(`change`,L.value),!0)}catch{return!1}}function _n(){let e=document.createElement(`input`);e.type=`file`,e.accept=`application/json`,e.onchange=()=>{let t=e.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>{typeof n.result==`string`&&(gn(n.result)||alert(`导入失败:JSON 格式无效`))},n.readAsText(t)},e.click()}function vn(){let e=new Blob([hn()],{type:`application/json`}),t=URL.createObjectURL(e),n=document.createElement(`a`);n.href=t,n.download=`${L.value.text||`mindmap`}.json`,n.click(),URL.revokeObjectURL(t)}return C({addChild:e=>Ut(e),addSibling:e=>Wt(e),removeNode:e=>Xt(e),duplicateNode:e=>Kt(e),setNodeText:(e,t)=>nn(e,t),moveNode:(e,t,n)=>rn(e,t,n),lineWidthForDepth:dt,endWidthForDepth:ft,getData:()=>L.value,setData:e=>{W.reset(),L.value=we(e),P.value=null,F.value=new Set,K(),G(),i(()=>Q())},resetView:()=>Q(),exportData:hn,importData:gn,getMarkdown:()=>Ie(L.value),setMarkdown:(e,t=!0)=>{let n=Fe(e||``);t&&(R.value=!0),ae=!t,W.reset(),L.value=we(n),P.value=null,F.value=new Set,K(),G(),i(()=>{ae=!1,Q()}),D(`change`,L.value)},setBalanced:e=>{lt.value=e},isBalanced:()=>lt.value,balance:()=>mn(),applyNodeStyle:(e,t)=>le(e,t),getNodeStyle:e=>ue(e),applyNodeImage:(e,t)=>de(e,t),applyNodeImageByUrl:(e,t)=>pe(e,t),removeNodeImage:e=>fe(e),applyNodeLink:(e,t)=>ve(e,t),removeNodeLink:e=>ye(e),applyNodeNote:(e,t)=>be(e,t),removeNodeNote:e=>xe(e),applyNodeRichContent:(e,t)=>z(e,t),undo:()=>qt(),redo:()=>Jt(),canUndo:()=>W.canUndo(),canRedo:()=>W.canRedo(),applySettings:e=>{e.autoBalanceOnChange!==void 0&&(J.autoBalanceOnChange=e.autoBalanceOnChange),e.lineWidthStart!==void 0&&(J.lineWidthStart=Math.max(.5,Math.min(20,e.lineWidthStart))),e.lineWidthEnd!==void 0&&(J.lineWidthEnd=Math.max(.3,Math.min(10,e.lineWidthEnd))),e.rainbowBranch!==void 0&&(J.rainbowBranch=e.rainbowBranch),e.branchPaletteId!==void 0&&(J.branchPaletteId=e.branchPaletteId),e.customPalettes!==void 0&&(J.customPalettes=e.customPalettes),e.lineStyle!==void 0&&(J.lineStyle=e.lineStyle),e.taperedEdge!==void 0&&(J.taperedEdge=e.taperedEdge),e.showOrderBadge!==void 0&&(J.showOrderBadge=e.showOrderBadge)},getSettings:()=>({autoBalanceOnChange:J.autoBalanceOnChange,lineWidthStart:J.lineWidthStart,lineWidthEnd:J.lineWidthEnd,rainbowBranch:J.rainbowBranch,branchPaletteId:J.branchPaletteId,customPalettes:J.customPalettes,lineStyle:J.lineStyle,layoutMode:J.layoutMode,taperedEdge:J.taperedEdge,showOrderBadge:J.showOrderBadge}),setBranchPalette:e=>{e&&[...Se,...J.customPalettes].find(t=>t.id===e)&&(J.branchPaletteId=e)},getBranchPalette:()=>J.branchPaletteId,getBranchPalettes:()=>[...Se,...J.customPalettes]}),n(()=>E.data,e=>{L.value=we(e),K()},{deep:!1}),t(()=>{G(),i(()=>Q())}),(t,n)=>{var i,a,l;return r(),S(`div`,{class:`zm-mindmap`,style:v({background:q.value.bgColor,fontSize:q.value.fontSize+`px`})},[m(`div`,{ref_key:`wrapperRef`,ref:j,class:`zm-canvas`,onMousedown:on,onContextmenu:n[25]||=g(()=>{},[`prevent`]),onWheel:n[26]||=(...e)=>d(X).onWheel&&d(X).onWheel(...e),onMouseenter:n[27]||=e=>ee.value=!0,onMouseleave:n[28]||=e=>ee.value=!1,onClick:sn},[m(`div`,{class:`zm-svg-layer`,style:v({left:Z.value.vbX*d(X).scale.value+d(X).offsetX.value+`px`,top:Z.value.vbY*d(X).scale.value+d(X).offsetY.value+`px`,width:Z.value.vbW*d(X).scale.value+`px`,height:Z.value.vbH*d(X).scale.value+`px`})},[(r(),S(`svg`,{class:`zm-svg`,viewBox:At.value,preserveAspectRatio:`xMinYMin meet`,width:Z.value.vbW*d(X).scale.value,height:Z.value.vbH*d(X).scale.value},[m(`g`,er,[(r(!0),S(x,null,w(kt.value,e=>(r(),S(`path`,{key:e.key,d:gt(pn(e.from,`out`,e.to.side,e.to),pn(e.to,`in`),dt(e.from.depth),ft(e.to.depth),32,J.lineStyle,e.to._dir),fill:bt(e.from,e.to),stroke:`none`},null,8,tr))),128))])],8,$n))],4),d(X).isMarquee.value?(r(),S(`div`,{key:0,class:`zm-marquee`,style:v({left:d(X).marquee.x*d(X).scale.value+d(X).offsetX.value+`px`,top:d(X).marquee.y*d(X).scale.value+d(X).offsetY.value+`px`,width:d(X).marquee.width*d(X).scale.value+`px`,height:d(X).marquee.height*d(X).scale.value+`px`})},null,4)):c(``,!0),m(`div`,{class:`zm-world`,style:v({transform:`translate(${d(X).offsetX.value}px, ${d(X).offsetY.value}px) scale(${d(X).scale.value})`})},[(r(!0),S(x,null,w(Ot.value,t=>(r(),S(`div`,{key:t.id,class:f([`zm-node`,{"is-root":t.isRoot,"is-selected":P.value===t.id,"is-editing":M.value===t.id,"has-image":!!t.image,"is-resizing":et.value===t.id}]),"data-node-id":t.id,style:v({left:t.x+`px`,top:t.y+`px`,width:t.width+`px`,minWidth:t.width+`px`,height:t.height+`px`,fontSize:t.fontSize+`px`,background:xt(t),color:St(t),borderColor:Ct(t),fontWeight:wt(t),transform:`translate(-50%, -50%)`}),onClick:e=>an(e,t),onDblclick:e=>{e.stopPropagation(),o.previewMode||Mt(t.id)},onContextmenu:e=>V(e,t),onMouseenter:e=>ot(t.id),onMouseleave:e=>st(t.id)},[t.image?(r(),S(`img`,{key:0,class:`zm-node-img`,src:t.image.src,width:t.image.width,height:t.image.height,alt:t.text,draggable:`false`},null,8,rr)):c(``,!0),t.richContent&&(t.richContent.kind===`code`||t.richContent.kind===`table`)&&M.value!==t.id?(r(),S(`div`,{key:1,class:f([`zm-rich zm-rich-above`,{"zm-rich-no-overflow":t.richContent.kind===`table`||t.richContent.kind===`code`}]),onClick:n[1]||=g(()=>{},[`stop`]),onDblclick:g(e=>Ft(t.id),[`stop`]),onMousedown:n[2]||=g(()=>{},[`stop`])},[te.value===t.id?s((r(),S(`textarea`,{key:0,"onUpdate:modelValue":n[0]||=e=>ne.value=e,class:`zm-rich-edit`,spellcheck:`false`,onBlur:It,onKeydown:Rt},null,544)),[[y,ne.value]]):(r(),S(x,{key:1},[t.richContent.kind===`code`?(r(),S(`pre`,ar,[m(`code`,{innerHTML:d(Yn)(d(qn)(t.richContent.raw),d(Jn)(t.richContent.raw))},null,8,or)])):t.richContent.kind===`table`?(r(),S(`table`,sr,[m(`tbody`,null,[(r(!0),S(x,null,w(Bt(t.id,d(Xn)(t.richContent.raw)),(e,n)=>(r(),S(`tr`,{key:n},[n===0?(r(!0),S(x,{key:0},w(e,(e,n)=>(r(),S(`th`,{key:`h${n}`,class:f([`zm-rich-table-sort`,{"is-sorted":I.value.get(t.id)?.col===n,"is-asc":I.value.get(t.id)?.col===n&&I.value.get(t.id)?.dir===`asc`,"is-desc":I.value.get(t.id)?.col===n&&I.value.get(t.id)?.dir===`desc`}]),onClick:g(e=>zt(t.id,n),[`stop`])},[m(`span`,null,h(e),1),m(`span`,lr,h(Vt(t.id,n)),1)],10,cr))),128)):(r(!0),S(x,{key:1},w(e,(e,t)=>(r(),S(`td`,{key:`c${t}`},h(e),1))),128))]))),128))])])):c(``,!0)],64))],42,ir)):c(``,!0),M.value===t.id?s((r(),S(`input`,{key:3,class:`zm-input`,"onUpdate:modelValue":n[6]||=e=>N.value=e,autofocus:``,onBlur:n[7]||=e=>Nt(),onKeydown:[n[8]||=u(g(e=>Nt({addSibling:`after`}),[`exact`]),[`enter`]),n[9]||=u(g(e=>Nt({addSibling:`before`}),[`shift`,`prevent`,`exact`]),[`enter`]),n[10]||=u(g(e=>Nt({addChild:!0}),[`prevent`]),[`tab`]),u(Pt,[`esc`]),Ht],onMousedown:n[11]||=g(()=>{},[`stop`]),onClick:n[12]||=g(()=>{},[`stop`])},null,544)),[[y,N.value]]):(r(),S(`span`,ur,[m(`span`,dr,h(t.text),1),t.link&&!M.value?(r(),S(`a`,{key:0,class:`zm-node-link`,href:t.link.url,target:`_blank`,rel:`noopener noreferrer`,title:`打开链接:${t.link.url}`,onClick:n[3]||=g(()=>{},[`stop`]),onMousedown:n[4]||=g(()=>{},[`stop`])},[e(O,{name:`link`,size:11,stroke:2})],40,fr)):c(``,!0),t.note&&!M.value?(r(),S(`button`,{key:1,class:`zm-node-note-btn`,type:`button`,title:Ze(t.note.text),onClick:g(e=>Xe(t.id),[`stop`]),onMousedown:n[5]||=g(()=>{},[`stop`])},[e(O,{name:`note`,size:11,stroke:2})],40,pr)):c(``,!0)])),oe.value?(r(),S(`span`,{key:4,class:`zm-order-badge`,title:`数据顺序:第 ${fn(t.id)+1} 个`},h(fn(t.id)+1),9,mr)):c(``,!0),ln(t.id)&&dn(t.id)>0?(r(),S(`span`,{key:5,class:f([`zm-collapse-badge`,{"is-on-left":t.side===-1}]),style:v({background:yt.value.get(t.id)??`#64748b`}),title:`展开 ${dn(t.id)} 个子节点`,onMousedown:n[13]||=g(()=>{},[`stop`]),onClick:g(e=>Zt(t.id),[`stop`])},h(dn(t.id)),47,hr)):c(``,!0),un(t)&&!ln(t.id)?(r(),S(`button`,{key:6,class:f([`zm-btn zm-collapse`,{"is-on-left":t.side===-1}]),style:v({color:yt.value.get(t.id)??`#64748b`,borderColor:yt.value.get(t.id)??`#64748b`}),title:`折叠`,onMousedown:n[14]||=g(()=>{},[`stop`]),onClick:g(e=>Zt(t.id),[`stop`])},[e(O,{name:`minus`,size:10,stroke:2.4})],46,gr)):c(``,!0),t.image&&P.value===t.id&&M.value!==t.id?(r(),S(`span`,{key:7,class:`zm-img-resize-handle`,title:`拖动调整图片大小`,onMousedown:g(e=>tt(e,t),[`stop`])},null,40,_r)):c(``,!0),t.image&&P.value===t.id&&M.value!==t.id?(r(),S(`button`,{key:8,class:`zm-img-remove-btn`,title:`移除图片`,onMousedown:n[15]||=g(()=>{},[`stop`]),onClick:g(e=>fe(t.id),[`stop`])},[e(O,{name:`x`,size:9,stroke:2.2})],40,vr)):c(``,!0)],46,nr))),128))],4),B.value?(r(),p(We,{key:1,x:B.value.x,y:B.value.y,container:j.value,"has-image":!!((i=d(H)(L.value,B.value.nodeId))!=null&&i.image),"has-link":!!((a=d(H)(L.value,B.value.nodeId))!=null&&a.link),"has-note":!!((l=d(H)(L.value,B.value.nodeId))!=null&&l.note),"has-code":d(H)(L.value,B.value.nodeId)?.richContent?.kind===`code`,"has-table":d(H)(L.value,B.value.nodeId)?.richContent?.kind===`table`,onPickImage:Ne,onRemoveImage:Ge,onSetLink:Le,onRemoveLink:Re,onEditNote:Be,onRemoveNote:Ve,onAddCode:Ke,onEditCode:Ke,onRemoveCode:qe,onAddTable:Je,onEditTable:Je,onRemoveTable:Ye,onClose:Oe},null,8,[`x`,`y`,`container`,`has-image`,`has-link`,`has-note`,`has-code`,`has-table`])):c(``,!0),m(`div`,{class:f([`zm-toolbar`,{"is-preview-only":E.previewMode,"is-hovered":ee.value}])},[m(`span`,yr,h(Math.round(d(X).scale.value*100))+`%`,1),m(`button`,{class:`zm-tb-btn`,title:`放大`,onClick:n[16]||=(...e)=>d(X).zoomIn&&d(X).zoomIn(...e)},[e(O,{name:`zoom-in`})]),m(`button`,{class:`zm-tb-btn`,title:`缩小`,onClick:n[17]||=(...e)=>d(X).zoomOut&&d(X).zoomOut(...e)},[e(O,{name:`zoom-out`})]),m(`button`,{class:`zm-tb-btn`,title:`重置视图`,onClick:Q},[e(O,{name:`reset`})]),n[32]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:`zm-tb-btn`,title:`全部收起`,onClick:$t},[e(O,{name:`collapse-all`})]),m(`button`,{class:`zm-tb-btn`,title:`展开一级`,onClick:n[18]||=e=>en(1)},[e(O,{name:`expand-level-1`})]),m(`button`,{class:`zm-tb-btn`,title:`展开二级`,onClick:n[19]||=e=>en(2)},[e(O,{name:`expand-level-2`})]),m(`button`,{class:`zm-tb-btn`,title:`全部展开`,onClick:tn},[e(O,{name:`expand-all`})]),n[33]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:`zm-tb-btn`,title:`导出 JSON`,onClick:vn},[e(O,{name:`export`})]),E.previewMode?c(``,!0):(r(),S(x,{key:0},[n[29]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:`zm-tb-btn`,title:`添加子节点 (Tab)`,onClick:n[20]||=e=>P.value&&Ut(P.value)},[m(`img`,{src:d(A),width:`14`,height:`14`,alt:`添加子节点`,draggable:`false`},null,8,br)]),m(`button`,{class:`zm-tb-btn`,title:`添加同级 (Enter)`,onClick:n[21]||=e=>P.value&&Wt(P.value)},[m(`img`,{src:d(k),width:`14`,height:`14`,alt:`添加同级`,draggable:`false`},null,8,xr)]),n[30]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:f([`zm-tb-btn`,{active:J.layoutMode===`mindmap`}]),title:`思维导图布局 (中心辐射)`,onClick:n[22]||=e=>$(`mindmap`)},[e(O,{name:`mindmap`})],2),m(`button`,{class:f([`zm-tb-btn`,{active:J.layoutMode===`tree`}]),title:`树形布局 (向右展开)`,onClick:n[23]||=e=>$(`tree`)},[e(O,{name:`tree`})],2),m(`button`,{class:f([`zm-tb-btn`,{active:J.layoutMode===`org`}]),title:`组织结构布局 (向下展开)`,onClick:n[24]||=e=>$(`org`)},[e(O,{name:`org`})],2),n[31]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:`zm-tb-btn`,title:`导入 JSON`,onClick:_n},[e(O,{name:`import`})])],64))],2)],544)],4)}}});export{Tr as n,Fe as r,Re as t};
|
|
21
|
+
| a | b | c |`);if(r===null)return;let i=r.trim();if(!i){z(e,null);return}z(e,{kind:`table`,raw:i})}function Ye(){let e=B.value?.nodeId;e&&z(e,null)}function Xe(e){E.previewMode||D(`edit-note`,e)}function Ze(e,t=60){let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n||`点击编辑笔记`:n.slice(0,t)+`…`}function Qe(e){if(E.previewMode||M.value)return;let t=e.target;if(t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable))return;let n=P.value;if(!n)return;let r=e.clipboardData?.items;if(r)for(let t=0;t<r.length;t++){let i=r[t];if(i.kind===`file`&&i.type.startsWith(`image/`)){let t=i.getAsFile();if(!t)continue;e.preventDefault();let r=H(L.value,n);if(r!=null&&r.image&&!window.confirm(`该节点已有图片,要用剪贴板里的图片替换吗?`))return;he(t,e=>de(n,e));return}}}r(()=>{window.addEventListener(`paste`,Qe),K()}),t(()=>{window.removeEventListener(`paste`,Qe)});let $e=b(null),et=g(()=>$e.value?.nodeId??null);function tt(e,t){if(!t.image)return;e.preventDefault(),e.stopPropagation();let n=t.image.naturalW||t.image.width,r=t.image.naturalH||t.image.height,i=r>0?r/n:1;$e.value={nodeId:t.id,startX:e.clientX,startY:e.clientY,startW:t.image.width,startH:t.image.height,naturalW:n,naturalH:r,ratio:i,pendingW:t.image.width,pendingH:t.image.height},window.addEventListener(`mousemove`,nt),window.addEventListener(`mouseup`,rt)}function nt(e){let t=$e.value;if(!t)return;let n=X.scale.value||1,r=e.clientX-t.startX,i=me(t.startW+r/n,Sr,Cr),a=me(i*t.ratio,Sr,Cr);t.pendingW=i,t.pendingH=a;let o=j.value?.querySelector(`[data-node-id="${t.nodeId}"] .zm-node-img`);o&&(o.style.width=`${i}px`,o.style.height=`${a}px`);let s=j.value?.querySelector(`[data-node-id="${t.nodeId}"]`);s&&(s.style.minWidth=`${Math.max(80,Math.ceil(i+28))}px`,s.style.height=`${Math.ceil(a+8+30)}px`)}function rt(){let e=$e.value;if(window.removeEventListener(`mousemove`,nt),window.removeEventListener(`mouseup`,rt),$e.value=null,!e)return;let t=H(L.value,e.nodeId);!t||!t.image||(de(e.nodeId,{src:t.image.src,naturalW:t.image.naturalW,naturalH:t.image.naturalH,width:e.pendingW,height:e.pendingH}),P.value=e.nodeId,D(`select`,t),at=!0)}let it=b(null),at=!1;function ot(e){it.value=e}function st(e){it.value===e&&(it.value=null)}let ct=b(0),lt=b(!1),W=Ue(100);function G(){W.record({data:L.value})}function K(){F.value=new Set(F.value),ct.value++,i().then(()=>i()).then(()=>ut()).then(()=>{ct.value++})}function ut(){let e=document.querySelectorAll(`.zm-rich`),t={},n={};e.forEach(e=>{let r=e,i=null;for(;r&&!i;)i=r.getAttribute(`data-node-id`),r=r.parentElement;if(!i)return;let a=e.offsetHeight,o=e.scrollWidth,s=Math.round(a*2)/2,c=Math.round(o*2)/2;t[i]=s,n[i]=c,re.value[i],ie.value[i]}),re.value=t,ie.value=n}let q=g(()=>({rootBg:E.theme?.rootBg??`#1f2937`,rootText:E.theme?.rootText??`#ffffff`,branchBg:E.theme?.branchBg??`#ffffff`,branchText:E.theme?.branchText??`#1f2937`,lineColor:E.theme?.lineColor??`#94a3b8`,bgColor:E.theme?.bgColor??`#f8fafc`,fontSize:E.theme?.fontSize??14,lineWidthStart:E.theme?.lineWidthStart??2.2,lineWidthEnd:E.theme?.lineWidthEnd??.8,rainbowBranch:E.theme?.rainbowBranch??!1})),J=u({autoBalanceOnChange:!0,lineWidthStart:12,lineWidthEnd:3.6,rainbowBranch:!0,branchPaletteId:`default`,customPalettes:[],lineStyle:`curve`,layoutMode:`mindmap`,taperedEdge:!0,showOrderBadge:!1});function dt(e){return J.taperedEdge?pt(e):mt(e)}function ft(e){return J.taperedEdge?J.lineWidthEnd:mt(e)}function pt(e){return e<=0?J.lineWidthStart:e===1?Math.max(1.5,J.lineWidthStart*.67):e===2?Math.max(.8,J.lineWidthStart*.42):J.lineWidthEnd}function mt(e){if(e<=0)return J.lineWidthStart;if(e>=3)return J.lineWidthEnd;let t=e/3;return J.lineWidthStart+(J.lineWidthEnd-J.lineWidthStart)*t}function ht(e,t,n,r){let i=1-e;return{x:i*i*i*t.x+3*i*i*e*n.x1+3*i*e*e*n.x2+e*e*e*r.x,y:i*i*i*t.y+3*i*i*e*n.y1+3*i*e*e*n.y2+e*e*e*r.y}}function gt(e,t,n,r,i=32,a=`curve`,o=`right`){if(a===`curve`){let a;if(o===`right`||o===`left`){let n=Math.abs(t.x-e.x)*.45,r=o===`right`?1:-1;a={x1:e.x+r*n,y1:e.y,x2:t.x-r*n,y2:t.y}}else{let n=Math.abs(t.y-e.y)*.45;a={x1:e.x,y1:e.y+n,x2:t.x,y2:t.y-n}}let s=n=>{let r=1-n;return{dx:-3*r*r*e.x+3*(r*r-2*r*n)*a.x1+3*(2*r*n-n*n)*a.x2+3*n*n*t.x,dy:-3*r*r*e.y+3*(r*r-2*r*n)*a.y1+3*(2*r*n-n*n)*a.y2+3*n*n*t.y}},c=[],l=[];for(let o=0;o<=i;o++){let u=o/i,d=o===0?e:o===i?t:ht(u,e,a,t),f=s(u),p=Math.hypot(f.dx,f.dy);p<1e-6&&(p=1);let m=-f.dy/p,h=f.dx/p,g=(n+(r-n)*u)/2;c.push({x:d.x+m*g,y:d.y+h*g}),l.push({x:d.x-m*g,y:d.y-h*g})}let u=`M ${c[0].x.toFixed(2)} ${c[0].y.toFixed(2)}`;for(let e=1;e<=i;e++)u+=` L ${c[e].x.toFixed(2)} ${c[e].y.toFixed(2)}`;for(let e=i;e>=0;e--)u+=` L ${l[e].x.toFixed(2)} ${l[e].y.toFixed(2)}`;return u+=` Z`,u}let s=t.x-e.x,c=t.y-e.y,l=Math.hypot(s,c);l<1e-6&&(l=1);let u=-c/l,d=s/l,f=n/2,p=r/2,m={x:e.x+u*f,y:e.y+d*f},h={x:e.x-u*f,y:e.y-d*f},g={x:t.x-u*p,y:t.y-d*p},_={x:t.x+u*p,y:t.y+d*p};return`M ${m.x.toFixed(2)} ${m.y.toFixed(2)} L ${_.x.toFixed(2)} ${_.y.toFixed(2)} L ${g.x.toFixed(2)} ${g.y.toFixed(2)} L ${h.x.toFixed(2)} ${h.y.toFixed(2)} Z`}let Y=g(()=>Z.value.root.children),_t=Se[0].colors,vt=g(()=>Ce(J.branchPaletteId,J.customPalettes)),yt=g(()=>{let e=new Map;if(!J.rainbowBranch)return e;let t=E.lineColors,n=t&&t.length>0?t:vt.value.colors.length>0?vt.value.colors:_t;for(let t=0;t<Y.value.length;t++){let r=Y.value[t];e.set(r.id,n[t%n.length])}let r=(t,n)=>{e.set(t.id,n);for(let e of t.children)r(e,n)};for(let e=0;e<Y.value.length;e++){let t=Y.value[e];r(t,n[e%n.length])}return e});function bt(e,t){return J.rainbowBranch?yt.value.get(t.id)??q.value.lineColor:q.value.lineColor}function xt(e){let t=ue(e.id);if(t.bg)return t.bg;if(e.isRoot)return q.value.rootBg;if(J.rainbowBranch){let t=yt.value.get(e.id);if(t)return Tt(t,.18)}return q.value.branchBg}function St(e){let t=ue(e.id);if(t.textColor)return t.textColor;if(e.isRoot)return q.value.rootText;if(J.rainbowBranch){let t=yt.value.get(e.id);if(t)return Et(t,.55)}return q.value.branchText}function Ct(e){let t=ue(e.id);if(t.borderColor)return t.borderColor;if(e.isRoot)return q.value.rootBg;if(J.rainbowBranch){let t=yt.value.get(e.id);if(t)return Et(t,.3)}return q.value.lineColor}function wt(e){return ue(e.id).fontWeight??(e.isRoot?600:400)}function Tt(e,t){let n=e.replace(`#`,``),r=n.length===6?n:n.split(``).map(e=>e+e).join(``);return`rgba(${parseInt(r.slice(0,2),16)}, ${parseInt(r.slice(2,4),16)}, ${parseInt(r.slice(4,6),16)}, ${t})`}function Et(e,t){let n=e.replace(`#`,``),r=n.length===6?n:n.split(``).map(e=>e+e).join(``);return`rgb(${Math.round(parseInt(r.slice(0,2),16)*(1-t))}, ${Math.round(parseInt(r.slice(2,4),16)*(1-t))}, ${Math.round(parseInt(r.slice(4,6),16)*(1-t))})`}let X=ze({getContainer:()=>j.value});X.setOnMarqueeEnd(cn),He({isEditing:()=>M.value!==null,isReadonly:()=>E.previewMode,getSelectedId:()=>P.value,getRootId:()=>L.value.id,defaultTargetId:()=>L.value.id,onAddChild:Ut,onAddSibling:Wt,onAddSiblingBefore:Gt,onRemove:Xt,onStartEdit:Mt,onClearSelection:()=>{P.value=null,D(`select`,null)},onDuplicate:Kt,onUndo:qt,onRedo:Jt,onNavigate:Yt,onSelectRoot:()=>{P.value=L.value.id;let e=H(L.value,L.value.id);e&&D(`select`,e)}});let Z=g(()=>{let e=we(L.value);return jt(e),_e(e,{mode:J.layoutMode,baseFontSize:q.value.fontSize,richHeights:re.value,richWidths:ie.value})}),Dt=b([]),Ot=g(()=>(ct.value,Dt.value));n(Z,e=>{let t=[],n=e=>{t.push(e);for(let t of e.children)n(t)};n(e.root),Dt.value=t},{immediate:!0});let kt=g(()=>{let e=[];for(let t of Ot.value)for(let n of t.children)e.push({from:t,to:n,key:`${t.id}->${n.id}`});return e}),At=g(()=>`${Z.value.vbX} ${Z.value.vbY} ${Z.value.vbW} ${Z.value.vbH}`);function jt(e){if(F.value.has(e.id)){e.children=[],e.collapsed=!0;return}e.collapsed=!1;for(let t of e.children)jt(t)}function Mt(e){let t=H(L.value,e);t&&(M.value=e,N.value=t.text,i(()=>{let e=document.querySelector(`.zm-input`);e?.focus(),e?.select()}))}function Nt(e={}){if(!M.value)return;let t=H(L.value,M.value);t&&t.text!==(N.value.trim()||` `)&&(t.text=N.value.trim()||` `,G(),D(`change`,L.value));let n=M.value;M.value=null,e.addChild?i(()=>Ut(n)):e.addSibling===`after`?i(()=>Wt(n)):e.addSibling===`before`&&i(()=>Gt(n))}function Pt(){M.value=null}function Ft(e){if(E.previewMode)return;let t=H(L.value,e);t!=null&&t.richContent&&(te.value=e,ne.value=t.richContent.raw,i(()=>{document.querySelector(`.zm-node .zm-rich textarea`)?.focus()}))}function It(){if(!te.value)return;let e=te.value,t=H(L.value,e),n=ne.value;t&&t.richContent&&t.richContent.raw!==n&&(t.richContent.kind===`code`?z(e,{kind:`code`,raw:n,lang:Jn(n)||void 0}):z(e,{kind:`table`,raw:n})),te.value=null}function Lt(){te.value=null}function Rt(e){e.key===`Escape`?(e.preventDefault(),Lt()):e.key===`Enter`&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),It())}function zt(e,t){let n=I.value.get(e);!n||n.col!==t?I.value.set(e,{col:t,dir:`asc`}):n.dir===`asc`?I.value.set(e,{col:t,dir:`desc`}):I.value.delete(e)}function Bt(e,t){let n=I.value.get(e);return!n||t.length<=1?t:Qn(t,n.col,n.dir)}function Vt(e,t){let n=I.value.get(e);return!n||n.col!==t?`↕`:n.dir===`asc`?`▲`:`▼`}function Ht(e){let t=e.metaKey||e.ctrlKey;t&&(e.key===`z`||e.key===`Z`)&&!e.shiftKey?(e.preventDefault(),qt()):(t&&e.shiftKey&&(e.key===`z`||e.key===`Z`)||t&&(e.key===`y`||e.key===`Y`)&&!e.shiftKey)&&(e.preventDefault(),Jt())}function Ut(e){let t=ke(L.value,e,Pe);t&&(G(),K(),D(`change`,L.value),i(()=>Mt(t.id)))}function Wt(e){if(e===L.value.id){Ut(e);return}let t=Ae(L.value,e,Pe);t&&(G(),K(),D(`change`,L.value),i(()=>Mt(t.id)))}function Gt(e){if(e===L.value.id){Ut(e);return}let t=je(L.value,e,Pe);t&&(G(),K(),D(`change`,L.value),i(()=>Mt(t.id)))}function Kt(e){if(e===L.value.id)return;let t=Me(L.value,e);t&&(G(),P.value=t.id,D(`change`,L.value),K())}function qt(){let e=W.undo();e&&(L.value=e.data,P.value=null,D(`select`,null),K(),D(`change`,L.value))}function Jt(){let e=W.redo();e&&(L.value=e.data,P.value=null,D(`select`,null),K(),D(`change`,L.value))}function Yt(e,t){let n=P.value??L.value.id,r=H(L.value,n);if(!r)return;let i=null;if(t===1){let e=U(L.value,r.id);if(e){let t=e.children.findIndex(e=>e.id===r.id);t>=0&&t<e.children.length-1&&(i=e.children[t+1].id)}}else if(t===-1){let e=U(L.value,r.id);if(e){let t=e.children.findIndex(e=>e.id===r.id);t>0&&(i=e.children[t-1].id)}}else if(e===1){let e=U(L.value,r.id);e&&(i=e.id)}else e===-1&&r.children.length>0&&(i=r.children[0].id);if(i){P.value=i;let e=H(L.value,i);e&&D(`select`,e)}}function Xt(e){e!==L.value.id&&Te(L.value,e)&&(G(),P.value===e&&(P.value=null),K(),D(`change`,L.value))}function Zt(e){F.value.has(e)?F.value.delete(e):F.value.add(e),K()}function Qt(e){let t=[{n:L.value,depth:1}];for(;t.length;){let{n,depth:r}=t.pop();e(n,r);for(let e=n.children.length-1;e>=0;e--)t.push({n:n.children[e],depth:r+1})}}function $t(){F.value=new Set,Qt(e=>{e.children.length>0&&F.value.add(e.id)}),K()}function en(e){F.value=new Set,Qt((t,n)=>{n>e&&t.children.length>0&&F.value.add(t.id)}),K()}function tn(){F.value=new Set,K()}function nn(e,t){Ee(L.value,e,t)&&(G(),K(),D(`change`,L.value))}function rn(e,t,n){return De(L.value,e,t,n)?(G(),K(),D(`change`,L.value),!0):!1}function an(e,t){e.stopPropagation(),P.value=t.id,D(`select`,H(L.value,t.id))}function on(e){let t=e.target;if(!t||t.closest(`.zm-node, .zm-toolbar, button, input, textarea`))return;if(e.button===2){X.startPan(e);return}if(e.button!==0)return;let n=j.value.getBoundingClientRect(),r=(e.clientX-n.left-X.offsetX.value)/X.scale.value,i=(e.clientY-n.top-X.offsetY.value)/X.scale.value;X.startMarquee(r,i)}function sn(e){if(at){at=!1;return}let t=e.target;if(!t||t.closest(`.zm-node`))return;let n=X.marquee;n.width>=4||n.height>=4||P.value!==null&&(P.value=null,D(`select`,null))}function cn(){let e=X.marquee;if(e.width<4&&e.height<4)return;let t=e.x,n=e.y,r=e.x+e.width,i=e.y+e.height,a=[];for(let e of Ot.value){let o=e.width/2,s=e.height/2,c=e.x-o,l=e.x+o,u=e.y-s,d=e.y+s;c<=r&&l>=t&&u<=i&&d>=n&&a.push(e.id)}if(a.length>0){P.value=a[0];let e=H(L.value,a[0]);e&&D(`select`,e)}}function ln(e){return F.value.has(e)}function un(e){let t=H(L.value,e.id);return!!t&&t.children.length>0}function dn(e){let t=H(L.value,e);return t?t.children.length:0}function fn(e){if(!H(L.value,e))return 0;let t=[L.value];for(;t.length;){let n=t.pop(),r=n.children.findIndex(t=>t.id===e);if(r>=0)return r;for(let e of n.children)t.push(e)}return 0}function pn(e,t,n,r){if((r?._dir??e._dir)===`down`)return t===`out`?{x:e.x,y:e.y+e.height/2}:{x:e.x,y:e.y-e.height/2};let i;i=t===`in`?-e.side:n===void 0?e.side:n;let a=t===`in`?e._richInsetX??0:0;return{x:e.x+i*(e.width/2-a),y:e.y}}function Q(){let e=Z.value;X.resetView(e.width,e.height,e.root.y)}function mn(){lt.value=!0,G(),K(),i(()=>Q())}function $(e){J.layoutMode!==e&&(J.layoutMode=e,K(),i(()=>Q()))}function hn(){return JSON.stringify(L.value,null,2)}function gn(e){try{let t=JSON.parse(e);return!t.id||!Array.isArray(t.children)?!1:(W.reset(),L.value=we(t),P.value=null,F.value=new Set,K(),i(()=>Q()),D(`change`,L.value),!0)}catch{return!1}}function _n(){let e=document.createElement(`input`);e.type=`file`,e.accept=`application/json`,e.onchange=()=>{let t=e.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>{typeof n.result==`string`&&(gn(n.result)||alert(`导入失败:JSON 格式无效`))},n.readAsText(t)},e.click()}function vn(){let e=new Blob([hn()],{type:`application/json`}),t=URL.createObjectURL(e),n=document.createElement(`a`);n.href=t,n.download=`${L.value.text||`mindmap`}.json`,n.click(),URL.revokeObjectURL(t)}return C({addChild:e=>Ut(e),addSibling:e=>Wt(e),removeNode:e=>Xt(e),duplicateNode:e=>Kt(e),setNodeText:(e,t)=>nn(e,t),moveNode:(e,t,n)=>rn(e,t,n),lineWidthForDepth:dt,endWidthForDepth:ft,getData:()=>L.value,setData:e=>{W.reset(),L.value=we(e),P.value=null,F.value=new Set,K(),G(),i(()=>Q())},resetView:()=>Q(),exportData:hn,importData:gn,getMarkdown:()=>Ie(L.value),setMarkdown:(e,t=!0)=>{let n=Fe(e||``);t&&(R.value=!0),ae=!t,W.reset(),L.value=we(n),P.value=null,F.value=new Set,K(),G(),i(()=>{ae=!1,Q()}),D(`change`,L.value)},setBalanced:e=>{lt.value=e},isBalanced:()=>lt.value,balance:()=>mn(),applyNodeStyle:(e,t)=>le(e,t),getNodeStyle:e=>ue(e),applyNodeImage:(e,t)=>de(e,t),applyNodeImageByUrl:(e,t)=>pe(e,t),removeNodeImage:e=>fe(e),applyNodeLink:(e,t)=>ve(e,t),removeNodeLink:e=>ye(e),applyNodeNote:(e,t)=>be(e,t),removeNodeNote:e=>xe(e),applyNodeRichContent:(e,t)=>z(e,t),undo:()=>qt(),redo:()=>Jt(),canUndo:()=>W.canUndo(),canRedo:()=>W.canRedo(),applySettings:e=>{e.autoBalanceOnChange!==void 0&&(J.autoBalanceOnChange=e.autoBalanceOnChange),e.lineWidthStart!==void 0&&(J.lineWidthStart=Math.max(.5,Math.min(20,e.lineWidthStart))),e.lineWidthEnd!==void 0&&(J.lineWidthEnd=Math.max(.3,Math.min(10,e.lineWidthEnd))),e.rainbowBranch!==void 0&&(J.rainbowBranch=e.rainbowBranch),e.branchPaletteId!==void 0&&(J.branchPaletteId=e.branchPaletteId),e.customPalettes!==void 0&&(J.customPalettes=e.customPalettes),e.lineStyle!==void 0&&(J.lineStyle=e.lineStyle),e.taperedEdge!==void 0&&(J.taperedEdge=e.taperedEdge),e.showOrderBadge!==void 0&&(J.showOrderBadge=e.showOrderBadge)},getSettings:()=>({autoBalanceOnChange:J.autoBalanceOnChange,lineWidthStart:J.lineWidthStart,lineWidthEnd:J.lineWidthEnd,rainbowBranch:J.rainbowBranch,branchPaletteId:J.branchPaletteId,customPalettes:J.customPalettes,lineStyle:J.lineStyle,layoutMode:J.layoutMode,taperedEdge:J.taperedEdge,showOrderBadge:J.showOrderBadge}),setBranchPalette:e=>{e&&[...Se,...J.customPalettes].find(t=>t.id===e)&&(J.branchPaletteId=e)},getBranchPalette:()=>J.branchPaletteId,getBranchPalettes:()=>[...Se,...J.customPalettes]}),n(()=>E.data,e=>{L.value=we(e),K()},{deep:!1}),r(()=>{G(),i(()=>Q())}),(t,n)=>{var r,i,u;return w(),S(`div`,{class:`zm-mindmap`,style:p({background:q.value.bgColor,fontSize:q.value.fontSize+`px`})},[m(`div`,{ref_key:`wrapperRef`,ref:j,class:`zm-canvas`,onMousedown:on,onContextmenu:n[25]||=h(()=>{},[`prevent`]),onWheel:n[26]||=(...e)=>y(X).onWheel&&y(X).onWheel(...e),onMouseenter:n[27]||=e=>ee.value=!0,onMouseleave:n[28]||=e=>ee.value=!1,onClick:sn},[m(`div`,{class:`zm-svg-layer`,style:p({left:Z.value.vbX*y(X).scale.value+y(X).offsetX.value+`px`,top:Z.value.vbY*y(X).scale.value+y(X).offsetY.value+`px`,width:Z.value.vbW*y(X).scale.value+`px`,height:Z.value.vbH*y(X).scale.value+`px`})},[(w(),S(`svg`,{class:`zm-svg`,viewBox:At.value,preserveAspectRatio:`xMinYMin meet`,width:Z.value.vbW*y(X).scale.value,height:Z.value.vbH*y(X).scale.value},[m(`g`,er,[(w(!0),S(x,null,o(kt.value,e=>(w(),S(`path`,{key:e.key,d:gt(pn(e.from,`out`,e.to.side,e.to),pn(e.to,`in`),dt(e.from.depth),ft(e.to.depth),32,J.lineStyle,e.to._dir),fill:bt(e.from,e.to),stroke:`none`},null,8,tr))),128))])],8,$n))],4),y(X).isMarquee.value?(w(),S(`div`,{key:0,class:`zm-marquee`,style:p({left:y(X).marquee.x*y(X).scale.value+y(X).offsetX.value+`px`,top:y(X).marquee.y*y(X).scale.value+y(X).offsetY.value+`px`,width:y(X).marquee.width*y(X).scale.value+`px`,height:y(X).marquee.height*y(X).scale.value+`px`})},null,4)):c(``,!0),m(`div`,{class:`zm-world`,style:p({transform:`translate(${y(X).offsetX.value}px, ${y(X).offsetY.value}px) scale(${y(X).scale.value})`})},[(w(!0),S(x,null,o(Ot.value,t=>(w(),S(`div`,{key:t.id,class:_([`zm-node`,{"is-root":t.isRoot,"is-selected":P.value===t.id,"is-editing":M.value===t.id,"has-image":!!t.image,"is-resizing":et.value===t.id}]),"data-node-id":t.id,style:p({left:t.x+`px`,top:t.y+`px`,width:t.width+`px`,minWidth:t.width+`px`,height:t.height+`px`,fontSize:t.fontSize+`px`,background:xt(t),color:St(t),borderColor:Ct(t),fontWeight:wt(t),transform:`translate(-50%, -50%)`}),onClick:e=>an(e,t),onDblclick:e=>{e.stopPropagation(),a.previewMode||Mt(t.id)},onContextmenu:e=>V(e,t),onMouseenter:e=>ot(t.id),onMouseleave:e=>st(t.id)},[t.image?(w(),S(`img`,{key:0,class:`zm-node-img`,src:t.image.src,width:t.image.width,height:t.image.height,alt:t.text,draggable:`false`},null,8,rr)):c(``,!0),t.richContent&&(t.richContent.kind===`code`||t.richContent.kind===`table`)&&M.value!==t.id?(w(),S(`div`,{key:1,class:_([`zm-rich zm-rich-above`,{"zm-rich-no-overflow":t.richContent.kind===`table`||t.richContent.kind===`code`}]),onClick:n[1]||=h(()=>{},[`stop`]),onDblclick:h(e=>Ft(t.id),[`stop`]),onMousedown:n[2]||=h(()=>{},[`stop`])},[te.value===t.id?s((w(),S(`textarea`,{key:0,"onUpdate:modelValue":n[0]||=e=>ne.value=e,class:`zm-rich-edit`,spellcheck:`false`,onBlur:It,onKeydown:Rt},null,544)),[[v,ne.value]]):(w(),S(x,{key:1},[t.richContent.kind===`code`?(w(),S(`pre`,ar,[m(`code`,{innerHTML:y(Yn)(y(qn)(t.richContent.raw),y(Jn)(t.richContent.raw))},null,8,or)])):t.richContent.kind===`table`?(w(),S(`table`,sr,[m(`tbody`,null,[(w(!0),S(x,null,o(Bt(t.id,y(Xn)(t.richContent.raw)),(e,n)=>(w(),S(`tr`,{key:n},[n===0?(w(!0),S(x,{key:0},o(e,(e,n)=>(w(),S(`th`,{key:`h${n}`,class:_([`zm-rich-table-sort`,{"is-sorted":I.value.get(t.id)?.col===n,"is-asc":I.value.get(t.id)?.col===n&&I.value.get(t.id)?.dir===`asc`,"is-desc":I.value.get(t.id)?.col===n&&I.value.get(t.id)?.dir===`desc`}]),onClick:h(e=>zt(t.id,n),[`stop`])},[m(`span`,null,l(e),1),m(`span`,lr,l(Vt(t.id,n)),1)],10,cr))),128)):(w(!0),S(x,{key:1},o(e,(e,t)=>(w(),S(`td`,{key:`c${t}`},l(e),1))),128))]))),128))])])):c(``,!0)],64))],42,ir)):c(``,!0),M.value===t.id?s((w(),S(`input`,{key:3,class:`zm-input`,"onUpdate:modelValue":n[6]||=e=>N.value=e,autofocus:``,onBlur:n[7]||=e=>Nt(),onKeydown:[n[8]||=d(h(e=>Nt({addSibling:`after`}),[`exact`]),[`enter`]),n[9]||=d(h(e=>Nt({addSibling:`before`}),[`shift`,`prevent`,`exact`]),[`enter`]),n[10]||=d(h(e=>Nt({addChild:!0}),[`prevent`]),[`tab`]),d(Pt,[`esc`]),Ht],onMousedown:n[11]||=h(()=>{},[`stop`]),onClick:n[12]||=h(()=>{},[`stop`])},null,544)),[[v,N.value]]):(w(),S(`span`,ur,[m(`span`,dr,l(t.text),1),t.link&&!M.value?(w(),S(`a`,{key:0,class:`zm-node-link`,href:t.link.url,target:`_blank`,rel:`noopener noreferrer`,title:`打开链接:${t.link.url}`,onClick:n[3]||=h(()=>{},[`stop`]),onMousedown:n[4]||=h(()=>{},[`stop`])},[e(O,{name:`link`,size:11,stroke:2})],40,fr)):c(``,!0),t.note&&!M.value?(w(),S(`button`,{key:1,class:`zm-node-note-btn`,type:`button`,title:Ze(t.note.text),onClick:h(e=>Xe(t.id),[`stop`]),onMousedown:n[5]||=h(()=>{},[`stop`])},[e(O,{name:`note`,size:11,stroke:2})],40,pr)):c(``,!0)])),oe.value?(w(),S(`span`,{key:4,class:`zm-order-badge`,title:`数据顺序:第 ${fn(t.id)+1} 个`},l(fn(t.id)+1),9,mr)):c(``,!0),ln(t.id)&&dn(t.id)>0?(w(),S(`span`,{key:5,class:_([`zm-collapse-badge`,{"is-on-left":t.side===-1}]),style:p({background:yt.value.get(t.id)??`#64748b`}),title:`展开 ${dn(t.id)} 个子节点`,onMousedown:n[13]||=h(()=>{},[`stop`]),onClick:h(e=>Zt(t.id),[`stop`])},l(dn(t.id)),47,hr)):c(``,!0),un(t)&&!ln(t.id)?(w(),S(`button`,{key:6,class:_([`zm-btn zm-collapse`,{"is-on-left":t.side===-1}]),style:p({color:yt.value.get(t.id)??`#64748b`,borderColor:yt.value.get(t.id)??`#64748b`}),title:`折叠`,onMousedown:n[14]||=h(()=>{},[`stop`]),onClick:h(e=>Zt(t.id),[`stop`])},[e(O,{name:`minus`,size:10,stroke:2.4})],46,gr)):c(``,!0),t.image&&P.value===t.id&&M.value!==t.id?(w(),S(`span`,{key:7,class:`zm-img-resize-handle`,title:`拖动调整图片大小`,onMousedown:h(e=>tt(e,t),[`stop`])},null,40,_r)):c(``,!0),t.image&&P.value===t.id&&M.value!==t.id?(w(),S(`button`,{key:8,class:`zm-img-remove-btn`,title:`移除图片`,onMousedown:n[15]||=h(()=>{},[`stop`]),onClick:h(e=>fe(t.id),[`stop`])},[e(O,{name:`x`,size:9,stroke:2.2})],40,vr)):c(``,!0)],46,nr))),128))],4),B.value?(w(),f(We,{key:1,x:B.value.x,y:B.value.y,container:j.value,"has-image":!!((r=y(H)(L.value,B.value.nodeId))!=null&&r.image),"has-link":!!((i=y(H)(L.value,B.value.nodeId))!=null&&i.link),"has-note":!!((u=y(H)(L.value,B.value.nodeId))!=null&&u.note),"has-code":y(H)(L.value,B.value.nodeId)?.richContent?.kind===`code`,"has-table":y(H)(L.value,B.value.nodeId)?.richContent?.kind===`table`,onPickImage:Ne,onRemoveImage:Ge,onSetLink:Le,onRemoveLink:Re,onEditNote:Be,onRemoveNote:Ve,onAddCode:Ke,onEditCode:Ke,onRemoveCode:qe,onAddTable:Je,onEditTable:Je,onRemoveTable:Ye,onClose:Oe},null,8,[`x`,`y`,`container`,`has-image`,`has-link`,`has-note`,`has-code`,`has-table`])):c(``,!0),m(`div`,{class:_([`zm-toolbar`,{"is-preview-only":E.previewMode,"is-hovered":ee.value}])},[m(`span`,yr,l(Math.round(y(X).scale.value*100))+`%`,1),m(`button`,{class:`zm-tb-btn`,title:`放大`,onClick:n[16]||=(...e)=>y(X).zoomIn&&y(X).zoomIn(...e)},[e(O,{name:`zoom-in`})]),m(`button`,{class:`zm-tb-btn`,title:`缩小`,onClick:n[17]||=(...e)=>y(X).zoomOut&&y(X).zoomOut(...e)},[e(O,{name:`zoom-out`})]),m(`button`,{class:`zm-tb-btn`,title:`重置视图`,onClick:Q},[e(O,{name:`reset`})]),n[32]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:`zm-tb-btn`,title:`全部收起`,onClick:$t},[e(O,{name:`collapse-all`})]),m(`button`,{class:`zm-tb-btn`,title:`展开一级`,onClick:n[18]||=e=>en(1)},[e(O,{name:`expand-level-1`})]),m(`button`,{class:`zm-tb-btn`,title:`展开二级`,onClick:n[19]||=e=>en(2)},[e(O,{name:`expand-level-2`})]),m(`button`,{class:`zm-tb-btn`,title:`全部展开`,onClick:tn},[e(O,{name:`expand-all`})]),n[33]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:`zm-tb-btn`,title:`导出 JSON`,onClick:vn},[e(O,{name:`export`})]),E.previewMode?c(``,!0):(w(),S(x,{key:0},[n[29]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:`zm-tb-btn`,title:`添加子节点 (Tab)`,onClick:n[20]||=e=>P.value&&Ut(P.value)},[m(`img`,{src:y(A),width:`14`,height:`14`,alt:`添加子节点`,draggable:`false`},null,8,br)]),m(`button`,{class:`zm-tb-btn`,title:`添加同级 (Enter)`,onClick:n[21]||=e=>P.value&&Wt(P.value)},[m(`img`,{src:y(k),width:`14`,height:`14`,alt:`添加同级`,draggable:`false`},null,8,xr)]),n[30]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:_([`zm-tb-btn`,{active:J.layoutMode===`mindmap`}]),title:`思维导图布局 (中心辐射)`,onClick:n[22]||=e=>$(`mindmap`)},[e(O,{name:`mindmap`})],2),m(`button`,{class:_([`zm-tb-btn`,{active:J.layoutMode===`tree`}]),title:`树形布局 (向右展开)`,onClick:n[23]||=e=>$(`tree`)},[e(O,{name:`tree`})],2),m(`button`,{class:_([`zm-tb-btn`,{active:J.layoutMode===`org`}]),title:`组织结构布局 (向下展开)`,onClick:n[24]||=e=>$(`org`)},[e(O,{name:`org`})],2),n[31]||=m(`span`,{class:`zm-tb-divider`},null,-1),m(`button`,{class:`zm-tb-btn`,title:`导入 JSON`,onClick:_n},[e(O,{name:`import`})])],64))],2)],544)],4)}}});export{Tr as n,Fe as r,Re as t};
|