@muxcodecli/cli 1.15.17 → 1.15.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/dist/bip-bop-01-ga21wr3r.mp3 +0 -0
  2. package/dist/bip-bop-03-kgfd4rq4.mp3 +0 -0
  3. package/dist/chunk-0hqmdrjr.js +3 -0
  4. package/dist/chunk-0npjzye0.js +2 -0
  5. package/dist/chunk-0pe6y883.js +2 -0
  6. package/dist/chunk-0qqpjj2h.js +3 -0
  7. package/dist/chunk-0r3h8jgj.js +2 -0
  8. package/dist/chunk-11285jfy.js +3 -0
  9. package/dist/chunk-11ant2kk.js +3 -0
  10. package/dist/chunk-124qmktt.js +18 -0
  11. package/dist/chunk-138ntz3h.js +2 -0
  12. package/dist/chunk-1e73ypg5.js +3 -0
  13. package/dist/chunk-1evcc54z.js +3 -0
  14. package/dist/chunk-1mqsg5s7.js +75 -0
  15. package/dist/chunk-1pv2317e.js +7 -0
  16. package/dist/chunk-1y3ssxx6.js +2 -0
  17. package/dist/chunk-20x8vsdn.js +7 -0
  18. package/dist/chunk-21x3anp4.js +9 -0
  19. package/dist/chunk-22qpzg37.js +212 -0
  20. package/dist/chunk-2bt5mtgm.js +3 -0
  21. package/dist/chunk-2d95ene8.js +2 -0
  22. package/dist/chunk-2h2zq5cp.js +2 -0
  23. package/dist/chunk-2pc63est.js +2 -0
  24. package/dist/chunk-33gs9z8d.js +2 -0
  25. package/dist/chunk-33vwwxjk.js +2 -0
  26. package/dist/chunk-3dq7hfxc.js +9 -0
  27. package/dist/chunk-3jvft1k1.js +2 -0
  28. package/dist/chunk-4jqh4mpm.js +2 -0
  29. package/dist/chunk-4mgyaytc.js +672 -0
  30. package/dist/chunk-4va8fzq1.js +2 -0
  31. package/dist/chunk-4wkq9y2z.js +7 -0
  32. package/dist/chunk-526nbm9e.js +2 -0
  33. package/dist/chunk-5a6895cv.js +37 -0
  34. package/dist/chunk-5e9dq2av.js +2 -0
  35. package/dist/chunk-5jn2z3nf.js +3 -0
  36. package/dist/chunk-5npr1qyq.js +574 -0
  37. package/dist/chunk-5sfky0gz.js +8 -0
  38. package/dist/chunk-5t7xqdvk.js +3 -0
  39. package/dist/chunk-5tpqj6ag.js +10 -0
  40. package/dist/chunk-5v5015am.js +12 -0
  41. package/dist/chunk-5wawdxv2.js +7 -0
  42. package/dist/chunk-6btrg3ff.js +2 -0
  43. package/dist/chunk-6skbzman.js +6 -0
  44. package/dist/chunk-6sz698ew.js +11 -0
  45. package/dist/chunk-6xzrzmsr.js +2 -0
  46. package/dist/chunk-7848rf5q.js +63 -0
  47. package/dist/chunk-7ep2edcv.js +12 -0
  48. package/dist/chunk-7svw66kw.js +13 -0
  49. package/dist/chunk-7xgr8vx6.js +2 -0
  50. package/dist/chunk-7zjn6m1m.js +2 -0
  51. package/dist/chunk-8atqb297.js +12 -0
  52. package/dist/chunk-8ebkxjar.js +7 -0
  53. package/dist/chunk-8j3aw4qg.js +3 -0
  54. package/dist/chunk-8jy0dvcn.js +3 -0
  55. package/dist/chunk-8refh038.js +2 -0
  56. package/dist/chunk-93cszp8k.js +3 -0
  57. package/dist/chunk-93ze3gcb.js +2 -0
  58. package/dist/chunk-98yxzxtd.js +2 -0
  59. package/dist/chunk-9g64kggy.js +3 -0
  60. package/dist/chunk-9h1pwxb2.js +8 -0
  61. package/dist/chunk-9j4j9nrm.js +2 -0
  62. package/dist/chunk-9kzczwh0.js +3 -0
  63. package/dist/chunk-9n629gtn.js +3 -0
  64. package/dist/chunk-9y59sxde.js +2 -0
  65. package/dist/chunk-a2m5jyd8.js +2 -0
  66. package/dist/chunk-a595cp8s.js +2 -0
  67. package/dist/chunk-ak0k3m4q.js +3 -0
  68. package/dist/chunk-apksmrz9.js +3 -0
  69. package/dist/chunk-b05r09sj.js +10 -0
  70. package/dist/chunk-b47e563q.js +2 -0
  71. package/dist/chunk-b57avnse.js +2 -0
  72. package/dist/chunk-bfjq7w7k.js +2 -0
  73. package/dist/chunk-bhc70qet.js +3 -0
  74. package/dist/chunk-bvtscj68.js +2 -0
  75. package/dist/chunk-bw2cy5v0.js +8 -0
  76. package/dist/chunk-c7dvyh2x.js +2 -0
  77. package/dist/chunk-cbz8b7g5.js +3 -0
  78. package/dist/chunk-cw4vbnet.js +3 -0
  79. package/dist/chunk-czcj3j9y.js +2 -0
  80. package/dist/chunk-dg466kdp.js +2 -0
  81. package/dist/chunk-dmscgnhq.js +2 -0
  82. package/dist/chunk-dtk4m8rm.js +3 -0
  83. package/dist/chunk-dy7akyj3.js +2 -0
  84. package/dist/chunk-e2wv2sp4.js +2 -0
  85. package/dist/chunk-e8j03wnd.js +3 -0
  86. package/dist/chunk-egkp6tct.js +2 -0
  87. package/dist/chunk-emfc800a.js +2 -0
  88. package/dist/chunk-envnht72.js +4 -0
  89. package/dist/chunk-eskw1cj2.js +3 -0
  90. package/dist/chunk-ezz15tyg.js +2 -0
  91. package/dist/chunk-fkmzj0qt.js +16 -0
  92. package/dist/chunk-fqt3c3g5.js +4 -0
  93. package/dist/chunk-frbht418.js +19 -0
  94. package/dist/chunk-ftz8cqfq.js +2 -0
  95. package/dist/chunk-g4jxdrr6.js +2 -0
  96. package/dist/chunk-g52xzmrr.js +2 -0
  97. package/dist/chunk-gbtvkje9.js +4 -0
  98. package/dist/chunk-gm9msqq5.js +8 -0
  99. package/dist/chunk-gxat3dpd.js +3 -0
  100. package/dist/chunk-hfppq1w5.js +4 -0
  101. package/dist/chunk-jdg870gy.js +1683 -0
  102. package/dist/chunk-jfz77m78.js +3 -0
  103. package/dist/chunk-jg9r58pf.js +16 -0
  104. package/dist/chunk-jgzt4945.js +2 -0
  105. package/dist/chunk-jh2epywq.js +2 -0
  106. package/dist/chunk-jpj6a56k.js +2 -0
  107. package/dist/chunk-jw4sgq23.js +2 -0
  108. package/dist/chunk-jws11ngd.js +2 -0
  109. package/dist/chunk-jxhz82qt.js +2 -0
  110. package/dist/chunk-k19y2psf.js +4 -0
  111. package/dist/chunk-k6cj14zk.js +2 -0
  112. package/dist/chunk-kktm0pdc.js +3 -0
  113. package/dist/chunk-kmr27ake.js +160 -0
  114. package/dist/chunk-kyhwvbvq.js +2 -0
  115. package/dist/chunk-mgn5pejx.js +2 -0
  116. package/dist/chunk-mskyzxb3.js +3 -0
  117. package/dist/chunk-my9cfmvt.js +5 -0
  118. package/dist/chunk-n4vx7kvs.js +389 -0
  119. package/dist/chunk-nc44rvs7.js +23 -0
  120. package/dist/chunk-ng3vbpmy.js +3 -0
  121. package/dist/chunk-nmnp5g5p.js +228 -0
  122. package/dist/chunk-nn0t3xmn.js +2 -0
  123. package/dist/chunk-npr41z9a.js +19 -0
  124. package/dist/chunk-ntvr3177.js +25 -0
  125. package/dist/chunk-pkc5hkha.js +2 -0
  126. package/dist/chunk-ppg6zhae.js +3 -0
  127. package/dist/chunk-pqwm9zk1.js +6 -0
  128. package/dist/chunk-ptvjmfqx.js +2 -0
  129. package/dist/chunk-q1r48y0y.js +34 -0
  130. package/dist/chunk-q9yddd1r.js +3 -0
  131. package/dist/chunk-qavtgsrh.js +2 -0
  132. package/dist/chunk-qvh8ghjw.js +7 -0
  133. package/dist/chunk-qx6r187q.js +2 -0
  134. package/dist/chunk-r093mfa8.js +32 -0
  135. package/dist/chunk-rbaj9ktq.js +2 -0
  136. package/dist/chunk-rkf9ynkx.js +3 -0
  137. package/dist/chunk-rpp44jtx.js +3 -0
  138. package/dist/chunk-rrvwp351.js +2 -0
  139. package/dist/chunk-rs8fsgqt.js +81 -0
  140. package/dist/chunk-s4gy87ft.js +8 -0
  141. package/dist/chunk-s5qq2ch2.js +12 -0
  142. package/dist/chunk-s92578qx.js +71 -0
  143. package/dist/chunk-snsb760m.js +2 -0
  144. package/dist/chunk-sp1cvejp.js +2 -0
  145. package/dist/chunk-spb3tm25.js +4 -0
  146. package/dist/chunk-srnmswkj.js +2 -0
  147. package/dist/chunk-sxgbzwrs.js +2 -0
  148. package/dist/chunk-t2s6m9t2.js +35 -0
  149. package/dist/chunk-t98sdxty.js +2 -0
  150. package/dist/chunk-tbnxx5na.js +2 -0
  151. package/dist/chunk-tfxm3qz4.js +2 -0
  152. package/dist/chunk-treb38pz.js +3 -0
  153. package/dist/chunk-tvw8tfpr.js +6 -0
  154. package/dist/chunk-v107htgw.js +101 -0
  155. package/dist/chunk-v8at4gnt.js +2 -0
  156. package/dist/chunk-vmr3get8.js +2 -0
  157. package/dist/chunk-vqrnejgj.js +71 -0
  158. package/dist/chunk-vvwy955j.js +3 -0
  159. package/dist/chunk-w5jxffnq.js +2 -0
  160. package/dist/chunk-wcbh5jqy.js +3 -0
  161. package/dist/chunk-wfmrnep1.js +2 -0
  162. package/dist/chunk-wk11yy8h.js +3 -0
  163. package/dist/chunk-wn5f1tfj.js +2 -0
  164. package/dist/chunk-wpm2p1gq.js +3 -0
  165. package/dist/chunk-wxkyv5gj.js +2 -0
  166. package/dist/chunk-wyed730e.js +2 -0
  167. package/dist/chunk-x65zs89t.js +3 -0
  168. package/dist/chunk-x6zjq78z.js +2 -0
  169. package/dist/chunk-xedav0qx.js +3 -0
  170. package/dist/chunk-xmftb9ad.js +38 -0
  171. package/dist/chunk-xvtkw7hj.js +3 -0
  172. package/dist/chunk-xy0txg0n.js +2 -0
  173. package/dist/chunk-y7s5cpwr.js +34 -0
  174. package/dist/chunk-yg48tfvv.js +16 -0
  175. package/dist/chunk-ygpen625.js +3 -0
  176. package/dist/chunk-ymb45bt6.js +2 -0
  177. package/dist/chunk-yp2zfcvh.js +8 -0
  178. package/dist/chunk-z3mx7n44.js +3 -0
  179. package/dist/chunk-zaj612bw.js +3 -0
  180. package/dist/chunk-zb3179f9.js +3 -0
  181. package/dist/chunk-zhd8f4pc.js +759 -0
  182. package/dist/chunk-zjpnyah2.js +3 -0
  183. package/dist/cli/cmd/tui/worker.js +2 -0
  184. package/dist/highlights-eq9cgrbb.scm +604 -0
  185. package/dist/highlights-ghv9g403.scm +205 -0
  186. package/dist/highlights-hk7bwhj4.scm +284 -0
  187. package/dist/highlights-r812a2qc.scm +150 -0
  188. package/dist/highlights-x6tmsnaa.scm +115 -0
  189. package/dist/index.js +146 -5742
  190. package/dist/injections-73j83es3.scm +27 -0
  191. package/dist/muxcode-linux-x64 +0 -0
  192. package/dist/nope-03-2z8weyjw.mp3 +0 -0
  193. package/dist/photon_rs_bg-bq08arze.wasm +0 -0
  194. package/dist/staplebops-06-rz29m246.mp3 +0 -0
  195. package/dist/tree-sitter-3jzf13jk.wasm +0 -0
  196. package/dist/tree-sitter-bash-hq5s6fxb.wasm +0 -0
  197. package/dist/tree-sitter-javascript-nd0q4pe9.wasm +0 -0
  198. package/dist/tree-sitter-markdown-411r6y9b.wasm +0 -0
  199. package/dist/tree-sitter-markdown_inline-j5349f42.wasm +0 -0
  200. package/dist/tree-sitter-powershell-ryb2ffqs.wasm +0 -0
  201. package/dist/tree-sitter-typescript-zxjzwt75.wasm +0 -0
  202. package/dist/tree-sitter-zig-e78zbjpm.wasm +0 -0
  203. package/dist/yup-01-30ecpeh9.mp3 +0 -0
  204. package/package.json +2 -2
@@ -0,0 +1,71 @@
1
+ // @bun
2
+ import{$c as s8,$d as d$,$e as S5,Ac as C8,Ad as N$,Ae as V5,Af as c5,Bc as S8,Bd as F$,Be as H5,Bf as u5,Cc as I8,Cd as W$,Ce as A0,Cf as d5,Dc as O,Dd as E$,De as M0,Ec as R8,Ed as A$,Ee as c0,Fc as n,Fd as M$,Fe as j8,Gc as b0,Gd as B$,Ge as u0,Hc as T8,Hd as L$,He as K8,Ic as Z0,Id as h0,Ie as X5,Jc as I,Jd as y$,Je as P5,Kc as w8,Kd as C$,Ke as e,Lc as v8,Ld as S$,Le as d0,Mc as k8,Md as I$,Me as O5,Nc as x8,Nd as R$,Ne as N5,Oc as f8,Od as T$,Oe as F5,Pc as H0,Pd as w$,Pe as a0,Qc as m8,Qd as v$,Qe as x,Rc as b8,Rd as k$,Re as W5,Sc as g8,Sd as x$,Se as h,Tc as h8,Td as f$,Te as E5,Uc as Q0,Ud as m$,Ue as A5,Vc as X0,Vd as b$,Ve as M5,Wc as p8,Wd as g$,We as B5,Xc as c8,Xd as h$,Xe as L5,Yc as u8,Yd as p$,Ye as s0,Zc as d8,Zd as c$,Ze as y5,_c as a8,_d as u$,_e as C5,ad as l8,ae as E0,af as q0,bd as r8,be as p0,bf as S,cd as o8,ce as a$,cf as I5,dd as i8,de as s$,df as w,ed as n8,ee as l$,ef as R5,fd as t8,fe as r$,ff as l0,gc as w7,gd as e8,ge as o$,gf as T5,hc as Y8,hd as $$,he as i$,hf as $0,ic as G8,id as J$,ie as n$,if as U0,jc as V8,jd as Z$,je as t$,jf as G0,kc as V0,kd as Q$,ke as e$,kf as l,lc as H8,ld as q$,le as x0,lf as w5,mc as X8,md as U$,me as $5,mf as r,nc as P8,nd as G$,ne as J5,nf as v5,oc as O8,od as j$,oe as Z5,of as k5,pc as m0,pd as K$,pe as Q5,pf as x5,qc as N8,qd as _$,qe as q5,qf as f5,rc as F8,rd as D$,re as U5,rf as m5,sc as W8,sd as z$,se as G5,sf as r0,tc as E8,td as Y$,te as j5,uc as A8,ud as V$,ue as P0,uf as v7,vc as M8,vd as H$,ve as K5,wc as B8,wd as X$,we as _5,wf as b5,xc as L8,xd as P$,xe as D5,xf as g5,yc as t,yd as O$,ye as z5,yf as h5,zc as y8,zd as g0,ze as Y5,zf as p5}from"./chunk-7848rf5q.js";import{SF as eJ}from"./chunk-8j3aw4qg.js";var $9={};eJ($9,{yellow:()=>d8,wrapWithDelegates:()=>M5,white:()=>r8,vstyles:()=>Z7,visualizeRenderableTree:()=>g8,underline:()=>V$,treeSitterToTextChunks:()=>t$,treeSitterToStyledText:()=>e$,terminalNamedSingleStrokeKeys:()=>B$,t:()=>W$,stripAnsiSequences:()=>M0,stringToStyledText:()=>X0,strikethrough:()=>H$,setupAudio:()=>a6,setRenderLibPath:()=>P5,rgbToHex:()=>S8,reverse:()=>P$,resolveRenderLib:()=>e,resolveCoreSlot:()=>d6,renderFontToFrameBuffer:()=>Z0,registerEnvVar:()=>s$,registerCorePlugin:()=>u6,red:()=>c8,pathToFiletype:()=>j5,parseWrap:()=>c$,parseUnit:()=>p$,parsePositionType:()=>h$,parseOverflow:()=>g$,parseMeasureMode:()=>b$,parseLogLevel:()=>m$,parseKeypress:()=>L$,parseJustify:()=>f$,parseGutter:()=>x$,parseFlexDirection:()=>k$,parseEdge:()=>v$,parseDisplay:()=>w$,parseDirection:()=>T$,parseDimension:()=>R$,parseColor:()=>O,parseBoxSizing:()=>I$,parseBorderStyle:()=>V0,parseAlignItems:()=>S$,parseAlign:()=>C$,normalizeTerminalPalette:()=>V5,normalizeIndexedColorIndex:()=>B8,normalizeColorValue:()=>y8,nonAlphanumericKeys:()=>M$,measureText:()=>n,maybeMakeRenderable:()=>A5,magenta:()=>s8,link:()=>F$,italic:()=>Y$,isValidBorderStyle:()=>V8,isVNode:()=>E5,isTextNodeRenderable:()=>R5,isStyledText:()=>h8,isRenderable:()=>F5,isEditBufferRenderable:()=>m5,instantiate:()=>B5,infoStringToFiletype:()=>P0,hsvToRgb:()=>I8,hexToRgb:()=>C8,hastToStyledText:()=>E$,h:()=>h,green:()=>u8,getTreeSitterClient:()=>K5,getLinkId:()=>b8,getDataPaths:()=>Q5,getCharacterPositions:()=>b0,getBorderSides:()=>P8,getBorderFromSides:()=>X8,getBaseAttributes:()=>k8,generateEnvMarkdown:()=>r$,generateEnvColored:()=>o$,fonts:()=>R8,fg:()=>g0,extensionToFiletype:()=>q5,extToFiletype:()=>G5,envRegistry:()=>a$,env:()=>i$,engine:()=>n5,dim:()=>X$,detectLinks:()=>c0,delegate:()=>L5,defaultTextareaKeyBindings:()=>Y0,decodePasteBytes:()=>A0,cyan:()=>l8,createTimeline:()=>p6,createTextAttributes:()=>H0,createTerminalPalette:()=>Y5,createSlotRegistry:()=>t5,createExtmarksController:()=>D5,createCoreSlotRegistry:()=>c6,createCliRenderer:()=>p5,coordinateToCharacterIndex:()=>T8,convertThemeToStyles:()=>S5,convertGlobalToLocalSelection:()=>E0,clearEnvCache:()=>l$,capture:()=>v5,buildTerminalPaletteSignature:()=>H5,buildKittyKeyboardFlags:()=>b5,brightYellow:()=>t8,brightWhite:()=>Z$,brightRed:()=>i8,brightMagenta:()=>$$,brightGreen:()=>n8,brightCyan:()=>J$,brightBlue:()=>e8,brightBlack:()=>o8,borderCharsToArray:()=>O8,bold:()=>z$,blue:()=>a8,blink:()=>O$,black:()=>p8,bgYellow:()=>G$,bgWhite:()=>D$,bgRed:()=>q$,bgMagenta:()=>K$,bgGreen:()=>U$,bgCyan:()=>_$,bgBlue:()=>j$,bgBlack:()=>Q$,bg:()=>N$,basenameToFiletype:()=>U5,attributesWithLink:()=>m8,applyScanlines:()=>F6,applySaturation:()=>y6,applyNoise:()=>E6,applyInvert:()=>W6,applyGain:()=>L6,applyChromaticAberration:()=>A6,applyBrightness:()=>B6,applyAsciiArt:()=>M6,ansi256IndexToRgb:()=>L8,addDefaultParsers:()=>$5,Yoga:()=>Y8,VignetteEffect:()=>o0,VRenderable:()=>t0,TreeSitterClient:()=>J5,Timeline:()=>i0,TimeToFirstDrawRenderable:()=>j6,TextareaRenderable:()=>d,TextTableRenderable:()=>s,TextRenderable:()=>$0,TextNodeRenderable:()=>l0,TextBufferView:()=>s0,TextBufferRenderable:()=>I5,TextBuffer:()=>d0,TextAttributes:()=>I,Text:()=>r6,TerminalPalette:()=>z5,TerminalConsole:()=>x5,TargetChannel:()=>f8,TabSelectRenderableEvents:()=>G6,TabSelectRenderable:()=>Q8,TabSelect:()=>t6,TRITANOPIA_SIM_MATRIX:()=>R6,TRITANOPIA_COMP_MATRIX:()=>k6,TECHNICOLOR_MATRIX:()=>x6,SystemClock:()=>A$,SyntaxStyle:()=>q0,StyledText:()=>Q0,StdinParser:()=>n$,SlotRenderable:()=>e5,SlotRegistry:()=>n0,SliderRenderable:()=>J8,Selection:()=>d$,SelectRenderableEvents:()=>U6,SelectRenderable:()=>Z8,Select:()=>n6,ScrollBoxRenderable:()=>S0,ScrollBox:()=>J7,ScrollBarRenderable:()=>F0,SYNTHWAVE_MATRIX:()=>m6,SOLARIZATION_MATRIX:()=>f6,SEPIA_MATRIX:()=>C6,RootTextNodeRenderable:()=>T5,RootRenderable:()=>W5,RendererControlState:()=>u5,RenderableEvents:()=>N5,Renderable:()=>x,RainbowTextEffect:()=>o5,RGBA:()=>t,PasteEvent:()=>F8,PROTANOPIA_SIM_MATRIX:()=>S6,PROTANOPIA_COMP_MATRIX:()=>w6,OptimizedBuffer:()=>u0,NativeSpanFeed:()=>N0,MouseParser:()=>u$,MouseEvent:()=>g5,MouseButton:()=>h5,MarkdownRenderable:()=>q6,MacOSScrollAccel:()=>y$,LogLevel:()=>X5,LinearScrollAccel:()=>h0,LineNumberRenderable:()=>e0,LayoutEvents:()=>O5,KeyHandler:()=>W8,KeyEvent:()=>N8,InternalKeyHandler:()=>E8,InputRenderableEvents:()=>J6,InputRenderable:()=>C0,Input:()=>i6,INVERT_MATRIX:()=>h6,Generic:()=>s6,GREENSCALE_MATRIX:()=>b6,GRAYSCALE_MATRIX:()=>g6,FrameBufferRenderable:()=>L0,FrameBuffer:()=>e6,FlamesEffect:()=>l5,ExtmarksController:()=>_5,EditorView:()=>C5,EditBufferRenderableEvents:()=>f5,EditBufferRenderable:()=>r0,EditBuffer:()=>y5,DistortionEffect:()=>a5,DiffRenderable:()=>$6,DebugOverlayCorner:()=>x8,DataPathsManager:()=>Z5,DEUTERANOPIA_SIM_MATRIX:()=>I6,DEUTERANOPIA_COMP_MATRIX:()=>v6,DEFAULT_FOREGROUND_RGB:()=>A8,DEFAULT_BACKGROUND_RGB:()=>M8,ConsolePosition:()=>k5,CodeRenderable:()=>w,Code:()=>$7,CloudsEffect:()=>s5,CliRenderer:()=>d5,CliRenderEvents:()=>c5,CRTRollingBarEffect:()=>r5,BoxRenderable:()=>S,Box:()=>l6,BorderChars:()=>H8,BorderCharArrays:()=>m0,BloomEffect:()=>i5,BaseRenderable:()=>a0,Audio:()=>B0,ArrowRenderable:()=>W0,ATTRIBUTE_BASE_MASK:()=>v8,ATTRIBUTE_BASE_BITS:()=>w8,ASCIIFontSelectionHelper:()=>p0,ASCIIFontRenderable:()=>y0,ASCIIFont:()=>o6,ACHROMATOPSIA_MATRIX:()=>T6});import{EventEmitter as KJ}from"events";import{readFile as _J}from"fs/promises";var n7={};w7(n7,{yellow:()=>d8,wrapWithDelegates:()=>M5,white:()=>r8,vstyles:()=>Z7,visualizeRenderableTree:()=>g8,underline:()=>V$,treeSitterToTextChunks:()=>t$,treeSitterToStyledText:()=>e$,terminalNamedSingleStrokeKeys:()=>B$,t:()=>W$,stripAnsiSequences:()=>M0,stringToStyledText:()=>X0,strikethrough:()=>H$,setupAudio:()=>a6,setRenderLibPath:()=>P5,rgbToHex:()=>S8,reverse:()=>P$,resolveRenderLib:()=>e,resolveCoreSlot:()=>d6,renderFontToFrameBuffer:()=>Z0,registerEnvVar:()=>s$,registerCorePlugin:()=>u6,red:()=>c8,pathToFiletype:()=>j5,parseWrap:()=>c$,parseUnit:()=>p$,parsePositionType:()=>h$,parseOverflow:()=>g$,parseMeasureMode:()=>b$,parseLogLevel:()=>m$,parseKeypress:()=>L$,parseJustify:()=>f$,parseGutter:()=>x$,parseFlexDirection:()=>k$,parseEdge:()=>v$,parseDisplay:()=>w$,parseDirection:()=>T$,parseDimension:()=>R$,parseColor:()=>O,parseBoxSizing:()=>I$,parseBorderStyle:()=>V0,parseAlignItems:()=>S$,parseAlign:()=>C$,normalizeTerminalPalette:()=>V5,normalizeIndexedColorIndex:()=>B8,normalizeColorValue:()=>y8,nonAlphanumericKeys:()=>M$,measureText:()=>n,maybeMakeRenderable:()=>A5,magenta:()=>s8,link:()=>F$,italic:()=>Y$,isValidBorderStyle:()=>V8,isVNode:()=>E5,isTextNodeRenderable:()=>R5,isStyledText:()=>h8,isRenderable:()=>F5,isEditBufferRenderable:()=>m5,instantiate:()=>B5,infoStringToFiletype:()=>P0,hsvToRgb:()=>I8,hexToRgb:()=>C8,hastToStyledText:()=>E$,h:()=>h,green:()=>u8,getTreeSitterClient:()=>K5,getLinkId:()=>b8,getDataPaths:()=>Q5,getCharacterPositions:()=>b0,getBorderSides:()=>P8,getBorderFromSides:()=>X8,getBaseAttributes:()=>k8,generateEnvMarkdown:()=>r$,generateEnvColored:()=>o$,fonts:()=>R8,fg:()=>g0,extensionToFiletype:()=>q5,extToFiletype:()=>G5,envRegistry:()=>a$,env:()=>i$,engine:()=>n5,dim:()=>X$,detectLinks:()=>c0,delegate:()=>L5,defaultTextareaKeyBindings:()=>Y0,decodePasteBytes:()=>A0,cyan:()=>l8,createTimeline:()=>p6,createTextAttributes:()=>H0,createTerminalPalette:()=>Y5,createSlotRegistry:()=>t5,createExtmarksController:()=>D5,createCoreSlotRegistry:()=>c6,createCliRenderer:()=>p5,coordinateToCharacterIndex:()=>T8,convertThemeToStyles:()=>S5,convertGlobalToLocalSelection:()=>E0,clearEnvCache:()=>l$,capture:()=>v5,buildTerminalPaletteSignature:()=>H5,buildKittyKeyboardFlags:()=>b5,brightYellow:()=>t8,brightWhite:()=>Z$,brightRed:()=>i8,brightMagenta:()=>$$,brightGreen:()=>n8,brightCyan:()=>J$,brightBlue:()=>e8,brightBlack:()=>o8,borderCharsToArray:()=>O8,bold:()=>z$,blue:()=>a8,blink:()=>O$,black:()=>p8,bgYellow:()=>G$,bgWhite:()=>D$,bgRed:()=>q$,bgMagenta:()=>K$,bgGreen:()=>U$,bgCyan:()=>_$,bgBlue:()=>j$,bgBlack:()=>Q$,bg:()=>N$,basenameToFiletype:()=>U5,attributesWithLink:()=>m8,applyScanlines:()=>F6,applySaturation:()=>y6,applyNoise:()=>E6,applyInvert:()=>W6,applyGain:()=>L6,applyChromaticAberration:()=>A6,applyBrightness:()=>B6,applyAsciiArt:()=>M6,ansi256IndexToRgb:()=>L8,addDefaultParsers:()=>$5,Yoga:()=>Y8,VignetteEffect:()=>o0,VRenderable:()=>t0,TreeSitterClient:()=>J5,Timeline:()=>i0,TimeToFirstDrawRenderable:()=>j6,TextareaRenderable:()=>d,TextTableRenderable:()=>s,TextRenderable:()=>$0,TextNodeRenderable:()=>l0,TextBufferView:()=>s0,TextBufferRenderable:()=>I5,TextBuffer:()=>d0,TextAttributes:()=>I,Text:()=>r6,TerminalPalette:()=>z5,TerminalConsole:()=>x5,TargetChannel:()=>f8,TabSelectRenderableEvents:()=>G6,TabSelectRenderable:()=>Q8,TabSelect:()=>t6,TRITANOPIA_SIM_MATRIX:()=>R6,TRITANOPIA_COMP_MATRIX:()=>k6,TECHNICOLOR_MATRIX:()=>x6,SystemClock:()=>A$,SyntaxStyle:()=>q0,StyledText:()=>Q0,StdinParser:()=>n$,SlotRenderable:()=>e5,SlotRegistry:()=>n0,SliderRenderable:()=>J8,Selection:()=>d$,SelectRenderableEvents:()=>U6,SelectRenderable:()=>Z8,Select:()=>n6,ScrollBoxRenderable:()=>S0,ScrollBox:()=>J7,ScrollBarRenderable:()=>F0,SYNTHWAVE_MATRIX:()=>m6,SOLARIZATION_MATRIX:()=>f6,SEPIA_MATRIX:()=>C6,RootTextNodeRenderable:()=>T5,RootRenderable:()=>W5,RendererControlState:()=>u5,RenderableEvents:()=>N5,Renderable:()=>x,RainbowTextEffect:()=>o5,RGBA:()=>t,PasteEvent:()=>F8,PROTANOPIA_SIM_MATRIX:()=>S6,PROTANOPIA_COMP_MATRIX:()=>w6,OptimizedBuffer:()=>u0,NativeSpanFeed:()=>N0,MouseParser:()=>u$,MouseEvent:()=>g5,MouseButton:()=>h5,MarkdownRenderable:()=>q6,MacOSScrollAccel:()=>y$,LogLevel:()=>X5,LinearScrollAccel:()=>h0,LineNumberRenderable:()=>e0,LayoutEvents:()=>O5,KeyHandler:()=>W8,KeyEvent:()=>N8,InternalKeyHandler:()=>E8,InputRenderableEvents:()=>J6,InputRenderable:()=>C0,Input:()=>i6,INVERT_MATRIX:()=>h6,Generic:()=>s6,GREENSCALE_MATRIX:()=>b6,GRAYSCALE_MATRIX:()=>g6,FrameBufferRenderable:()=>L0,FrameBuffer:()=>e6,FlamesEffect:()=>l5,ExtmarksController:()=>_5,EditorView:()=>C5,EditBufferRenderableEvents:()=>f5,EditBufferRenderable:()=>r0,EditBuffer:()=>y5,DistortionEffect:()=>a5,DiffRenderable:()=>$6,DebugOverlayCorner:()=>x8,DataPathsManager:()=>Z5,DEUTERANOPIA_SIM_MATRIX:()=>I6,DEUTERANOPIA_COMP_MATRIX:()=>v6,DEFAULT_FOREGROUND_RGB:()=>A8,DEFAULT_BACKGROUND_RGB:()=>M8,ConsolePosition:()=>k5,CodeRenderable:()=>w,Code:()=>$7,CloudsEffect:()=>s5,CliRenderer:()=>d5,CliRenderEvents:()=>c5,CRTRollingBarEffect:()=>r5,BoxRenderable:()=>S,Box:()=>l6,BorderChars:()=>H8,BorderCharArrays:()=>m0,BloomEffect:()=>i5,BaseRenderable:()=>a0,Audio:()=>B0,ArrowRenderable:()=>W0,ATTRIBUTE_BASE_MASK:()=>v8,ATTRIBUTE_BASE_BITS:()=>w8,ASCIIFontSelectionHelper:()=>p0,ASCIIFontRenderable:()=>y0,ASCIIFont:()=>o6,ACHROMATOPSIA_MATRIX:()=>T6});function K6($){return Math.round(Math.max(0,Math.min(1,Number.isFinite($)?$:0))*255)}function u($,J){return($[J]&255)/255}function O0($,J,Z,Q,q){let U=$[J+3]&255;$[J]=K6(Z),$[J+1]=K6(Q),$[J+2]=K6(q),$[J+3]=U}class a5{glitchChancePerSecond=0.5;maxGlitchLines=3;minGlitchDuration=0.05;maxGlitchDuration=0.2;maxShiftAmount=10;shiftFlipRatio=0.6;colorGlitchChance=0.2;lastGlitchTime=0;glitchDuration=0;activeGlitches=[];constructor($){if($)Object.assign(this,$)}apply($,J){let{width:Z,height:Q,buffers:q}=$;if(this.lastGlitchTime+=J,this.activeGlitches.length>0&&this.lastGlitchTime>=this.glitchDuration)this.activeGlitches=[],this.glitchDuration=0;if(this.activeGlitches.length===0&&Math.random()<this.glitchChancePerSecond*J){this.lastGlitchTime=0,this.glitchDuration=this.minGlitchDuration+Math.random()*(this.maxGlitchDuration-this.minGlitchDuration);let U=1+Math.floor(Math.random()*this.maxGlitchLines);for(let G=0;G<U;G++){let K=Math.floor(Math.random()*Q),j,_=0,D=Math.random();if(D<this.colorGlitchChance)j="color";else if((D-this.colorGlitchChance)/(1-this.colorGlitchChance)<this.shiftFlipRatio)j="shift",_=Math.floor((Math.random()-0.5)*2*this.maxShiftAmount);else j="flip";if(!this.activeGlitches.some((z)=>z.y===K))this.activeGlitches.push({y:K,type:j,amount:_})}}if(this.activeGlitches.length>0){let U=null,G=null,K=null,j=null;for(let _ of this.activeGlitches){let D=_.y;if(D<0||D>=Q)continue;let z=D*Z;if(_.type==="shift"||_.type==="flip"){if(!U)U=new Uint32Array(Z),G=new Uint16Array(Z*4),K=new Uint16Array(Z*4),j=new Uint8Array(Z);try{U.set(q.char.subarray(z,z+Z)),G.set(q.fg.subarray(z*4,(z+Z)*4)),K.set(q.bg.subarray(z*4,(z+Z)*4)),j.set(q.attributes.subarray(z,z+Z))}catch(V){console.error(`Error copying row ${D} for distortion:`,V);continue}if(_.type==="shift"){let V=_.amount;for(let X=0;X<Z;X++){let Y=(X-V+Z)%Z,H=z+X,N=Y;q.char[H]=U[N],q.attributes[H]=j[N];let F=H*4,P=N*4;q.fg.set(G.subarray(P,P+4),F),q.bg.set(K.subarray(P,P+4),F)}}else for(let V=0;V<Z;V++){let X=Z-1-V,Y=z+V,H=X;q.char[Y]=U[H],q.attributes[Y]=j[H];let N=Y*4,F=H*4;q.fg.set(G.subarray(F,F+4),N),q.bg.set(K.subarray(F,F+4),N)}}else if(_.type==="color"){let V=Math.floor(Math.random()*Z),X=Z-V,Y=Math.floor(Math.random()*X)+1;if(Math.random()<0.2)Y=Math.floor(Math.random()*(Z/4))+1;Y=Math.min(Y,X);for(let H=V;H<V+Y;H++){if(H>=Z)break;let F=(z+H)*4,P,W,E,B,p,c,J0=Math.random();if(J0<0.33)P=Math.random(),W=Math.random(),E=Math.random(),B=Math.random(),p=Math.random(),c=Math.random();else if(J0<0.66){let A=Math.random();if(A<0.25)P=Math.random(),W=0,E=0;else if(A<0.5)P=0,W=Math.random(),E=0;else if(A<0.75)P=0,W=0,E=Math.random();else{let C=Math.random();if(C<0.33)P=1,W=0,E=1;else if(C<0.66)P=0,W=1,E=1;else P=1,W=1,E=0}if(Math.random()<0.5)B=1-P,p=1-W,c=1-E;else B=P*(Math.random()*0.5+0.2),p=W*(Math.random()*0.5+0.2),c=E*(Math.random()*0.5+0.2)}else P=Math.random()>0.5?1:0,W=Math.random()>0.5?1:0,E=Math.random()>0.5?1:0,B=1-P,p=1-W,c=1-E;O0(q.fg,F,P,W,E),O0(q.bg,F,B,p,c)}}}}}}class o0{_strength;precomputedAttenuationCellMask=null;cachedWidth=-1;cachedHeight=-1;static zeroMatrix=new Float32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);constructor($=0.5){this._strength=$}set strength($){this._strength=Math.max(0,$),this.cachedWidth=-1,this.cachedHeight=-1,this.precomputedAttenuationCellMask=null}get strength(){return this._strength}_computeFactors($,J){this.precomputedAttenuationCellMask=new Float32Array($*J*3);let Z=$/2,Q=J/2,q=Z*Z+Q*Q,U=q===0?1:q,G=this._strength,K=0;for(let j=0;j<J;j++){let _=j-Q,D=_*_;for(let z=0;z<$;z++){let V=z-Z,X=V*V+D,H=Math.min(1,X/U)*G;this.precomputedAttenuationCellMask[K++]=z,this.precomputedAttenuationCellMask[K++]=j,this.precomputedAttenuationCellMask[K++]=H}}this.cachedWidth=$,this.cachedHeight=J}apply($){let{width:J,height:Z}=$;if(J!==this.cachedWidth||Z!==this.cachedHeight||!this.precomputedAttenuationCellMask)this._computeFactors(J,Z);$.colorMatrix(o0.zeroMatrix,this.precomputedAttenuationCellMask,1,3)}}class N6{perm;grad3=[[1,1,0],[-1,1,0],[1,-1,0],[-1,-1,0],[1,0,1],[-1,0,1],[1,0,-1],[-1,0,-1],[0,1,1],[0,-1,1],[0,1,-1],[0,-1,-1]];constructor(){this.perm=new Uint8Array(512);let $=new Uint8Array(256);for(let J=0;J<256;J++)$[J]=J;for(let J=255;J>0;J--){let Z=Math.floor(Math.random()*(J+1));[$[J],$[Z]]=[$[Z],$[J]]}for(let J=0;J<512;J++)this.perm[J]=$[J&255]}dot($,J,Z,Q){return $[0]*J+$[1]*Z+$[2]*Q}mix($,J,Z){return $+(J-$)*Z}fade($){return $*$*$*($*($*6-15)+10)}noise3d($,J,Z){let Q=Math.floor($)&255,q=Math.floor(J)&255,U=Math.floor(Z)&255,G=$-Math.floor($),K=J-Math.floor(J),j=Z-Math.floor(Z),_=this.fade(G),D=this.fade(K),z=this.fade(j),V=this.perm[Q]+q,X=this.perm[V]+U,Y=this.perm[V+1]+U,H=this.perm[Q+1]+q,N=this.perm[H]+U,F=this.perm[H+1]+U;return this.mix(this.mix(this.mix(this.dot(this.grad3[this.perm[X]%12],G,K,j),this.dot(this.grad3[this.perm[N]%12],G-1,K,j),_),this.mix(this.dot(this.grad3[this.perm[Y]%12],G,K-1,j),this.dot(this.grad3[this.perm[F]%12],G-1,K-1,j),_),D),this.mix(this.mix(this.dot(this.grad3[this.perm[X+1]%12],G,K,j-1),this.dot(this.grad3[this.perm[N+1]%12],G-1,K,j-1),_),this.mix(this.dot(this.grad3[this.perm[Y+1]%12],G,K-1,j-1),this.dot(this.grad3[this.perm[F+1]%12],G-1,K-1,j-1),_),D),z)}}class s5{noise;_scale;_speed;_density;_darkness;time=0;constructor($=0.02,J=0.5,Z=0.6,Q=0.7){this.noise=new N6,this._scale=$,this._speed=J,this._density=Z,this._darkness=Q}set scale($){this._scale=Math.max(0.001,$)}get scale(){return this._scale}set speed($){this._speed=Math.max(0,$)}get speed(){return this._speed}set density($){this._density=Math.max(0,Math.min(1,$))}get density(){return this._density}set darkness($){this._darkness=Math.max(0,Math.min(1,$))}get darkness(){return this._darkness}apply($,J){let{width:Z,height:Q}=$;this.time+=J*this._speed;let q=this._scale,U=this.time,G=new Float32Array(Z*Q*3),K=0;for(let _=0;_<Q;_++)for(let D=0;D<Z;D++){let z=0,V=1,X=1,Y=0;for(let F=0;F<4;F++){let P=(D*q*X+U)*0.5,W=_*q*X*0.5,E=U*0.3;z+=this.noise.noise3d(P,W,E)*V,Y+=V,V*=0.5,X*=2}z=(z/Y+1)*0.5;let N=Math.max(0,z-(1-this._density))*this._darkness;G[K++]=D,G[K++]=_,G[K++]=N}let j=new Float32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);$.colorMatrix(j,G,1,2)}}class l5{noise;_scale;_speed;_intensity;time=0;constructor($=0.03,J=0.02,Z=0.8){this.noise=new N6,this._scale=$,this._speed=J,this._intensity=Z}set scale($){this._scale=Math.max(0.001,$)}get scale(){return this._scale}set speed($){this._speed=Math.max(0,$)}get speed(){return this._speed}set intensity($){this._intensity=Math.max(0,Math.min(1,$))}get intensity(){return this._intensity}apply($,J){let{width:Z,height:Q}=$,q=$.buffers.bg;this.time+=J*this._speed;let U=this._scale,G=this.time;for(let K=0;K<Q;K++){let j=1-K/Q;for(let _=0;_<Z;_++){let D=0,z=1,V=1,X=0;for(let H=0;H<3;H++){let N=(_*U*V+G)*0.5,F=(Q-K)*U*V*2*0.5,P=G*2;D+=this.noise.noise3d(N,F,P)*z,X+=z,z*=0.5,V*=2}D=(D/X+1)*0.5;let Y=D*j*this._intensity;if(Y>0){let H=(K*Z+_)*4,N,F,P;if(Y>0.7)N=1,F=1,P=0.3+(Y-0.7)*2.3;else if(Y>0.4)N=1,F=0.5+(Y-0.4)*1.67,P=0;else N=0.3+Y*1.75,F=Y*0.5,P=0;O0(q,H,Math.max(u(q,H),N*Y),Math.max(u(q,H+1),F*Y),Math.max(u(q,H+2),P*Y))}}}}}class r5{_speed;_height;_intensity;_fadeDistance;position=0;constructor($=0.5,J=0.15,Z=0.3,Q=0.3){this._speed=$,this._height=Math.max(0.01,Math.min(0.5,J)),this._intensity=Math.max(0,Math.min(1,Z)),this._fadeDistance=Math.max(0,Math.min(1,Q))}set speed($){this._speed=$}get speed(){return this._speed}set height($){this._height=Math.max(0.01,Math.min(0.5,$))}get height(){return this._height}set intensity($){this._intensity=Math.max(0,Math.min(1,$))}get intensity(){return this._intensity}set fadeDistance($){this._fadeDistance=Math.max(0,Math.min(1,$))}get fadeDistance(){return this._fadeDistance}apply($,J){let{width:Z,height:Q}=$,q=$.buffers.fg,U=$.buffers.bg;this.position+=J/1000*this._speed;let G=Q+this._height*Q*2;this.position=this.position%G;let K=this._height*Q,j=this._fadeDistance*K,_=K+j*2,D=this.position-_/2+K/2;for(let z=0;z<Q;z++){let V=Math.abs(z-D),X=0;if(V<=_/2){let Y=V/(_/2);X=Math.cos(Y*Math.PI/2)}if(X>0.001){let Y=1+this._intensity*X;for(let H=0;H<Z;H++){let N=(z*Z+H)*4;O0(q,N,Math.min(1,u(q,N)*Y),Math.min(1,u(q,N+1)*Y),Math.min(1,u(q,N+2)*Y)),O0(U,N,Math.min(1,u(U,N)*Y),Math.min(1,u(U,N+1)*Y),Math.min(1,u(U,N+2)*Y))}}}}}class o5{_speed;_saturation;_value;_repeats;time=0;constructor($=0.01,J=1,Z=1,Q=3){this._speed=$,this._saturation=J,this._value=Z,this._repeats=Q}set speed($){this._speed=Math.max(0,$)}get speed(){return this._speed}set saturation($){this._saturation=Math.max(0,Math.min(1,$))}get saturation(){return this._saturation}set value($){this._value=Math.max(0,Math.min(1,$))}get value(){return this._value}set repeats($){this._repeats=Math.max(0.1,$)}get repeats(){return this._repeats}hsvToRgb($,J,Z){let Q=0,q=0,U=0,G=Math.floor($*6),K=$*6-G,j=Z*(1-J),_=Z*(1-K*J),D=Z*(1-(1-K)*J);switch(G%6){case 0:Q=Z,q=D,U=j;break;case 1:Q=_,q=Z,U=j;break;case 2:Q=j,q=Z,U=D;break;case 3:Q=j,q=_,U=Z;break;case 4:Q=D,q=j,U=Z;break;case 5:Q=Z,q=j,U=_;break}return[Q,q,U]}apply($,J){let{width:Z,height:Q}=$,q=$.buffers.fg;this.time+=J*this._speed;let U=this._saturation,G=this._value,K=this._repeats,j=25*Math.PI/180,_=Math.cos(j),D=Math.sin(j),z=0.9;for(let V=0;V<Q;V++)for(let X=0;X<Z;X++){let Y=(V*Z+X)*4,H=u(q,Y),N=u(q,Y+1),F=u(q,Y+2);if(H>=z&&N>=z&&F>=z){let P=X*_+V*D,W=Z*_+Q*D,E=(P/W*K+this.time*0.1)%1,[B,p,c]=this.hsvToRgb(E,U,G);O0(q,Y,B,p,c)}}}}function _6($){return Math.round(Math.max(0,Math.min(1,Number.isFinite($)?$:0))*255)}function k($,J){return($[J]&255)/255}function X6($,J,Z,Q,q){let U=$[J+3]&255;$[J]=_6(Z),$[J+1]=_6(Q),$[J+2]=_6(q),$[J+3]=U}function F6($,J=0.8,Z=2){if(J===1||Z<1)return;let{width:Q,height:q}=$,U=Math.ceil(q/Z),G=Q*U,K=new Float32Array(G*3),j=0;for(let z=0;z<q;z+=Z)for(let V=0;V<Q;V++)K[j++]=V,K[j++]=z,K[j++]=1;let _=J,D=new Float32Array([_,0,0,0,0,_,0,0,0,0,_,0,0,0,0,1]);$.colorMatrix(D,K,1,2)}function W6($,J=1){if(J===0)return;let Z=new Float32Array([-1,0,0,1,0,-1,0,1,0,0,-1,1,0,0,0,1]);$.colorMatrixUniform(Z,J,3)}function E6($,J=0.1){let{width:Z,height:Q}=$,q=Z*Q;if(J===0)return;let U=new Float32Array(q*3),G=0;for(let _=0;_<Q;_++)for(let D=0;D<Z;D++)U[G++]=D,U[G++]=_,U[G++]=(Math.random()-0.5)*2;let K=1+J,j=new Float32Array([K,0,0,0,0,K,0,0,0,0,K,0,0,0,0,1]);$.colorMatrix(j,U,1,3)}function A6($,J=1){let{width:Z,height:Q}=$,q=Uint16Array.from($.buffers.fg),U=$.buffers.fg,G=Z/2,K=Q/2;for(let j=0;j<Q;j++)for(let _=0;_<Z;_++){let D=_-G,z=j-K,V=Math.round(Math.sqrt(D*D+z*z)/Math.max(G,K)*J),X=Math.max(0,Math.min(Z-1,_-V)),Y=Math.max(0,Math.min(Z-1,_+V)),H=(j*Z+X)*4,N=(j*Z+_)*4,F=(j*Z+Y)*4,P=(j*Z+_)*4;X6(U,P,k(q,H),k(q,N+1),k(q,F+2))}}function M6($,J=' .\'`^"",:;Il!i><~+_-?][}{1)(|\\/tfjrxnuvczXYUJCLQ0OZmwqpdbkhao*#MW&8%B@$',Z={r:1,g:1,b:1},Q={r:0,g:0,b:0}){let{width:q,height:U}=$,G=$.buffers.char,K=$.buffers.bg,j=J.length;for(let z=0;z<U;z++)for(let V=0;V<q;V++){let X=z*q+V,Y=X*4,H=k(K,Y),N=k(K,Y+1),F=k(K,Y+2),P=0.299*H+0.587*N+0.114*F,W=Math.min(j-1,Math.floor(P*j));G[X]=J[W].charCodeAt(0)}let _=new Float32Array([0,0,0,Z.r,0,0,0,Z.g,0,0,0,Z.b,0,0,0,1]),D=new Float32Array([0,0,0,Q.r,0,0,0,Q.g,0,0,0,Q.b,0,0,0,1]);$.colorMatrixUniform(_,1,1),$.colorMatrixUniform(D,1,2)}function B6($,J=0,Z){if(J===0)return;let Q=J,q=new Float32Array([1,0,0,Q,0,1,0,Q,0,0,1,Q,0,0,0,1]);if(!Z||Z.length===0)$.colorMatrixUniform(q,1,3);else $.colorMatrix(q,Z,1,3)}function L6($,J=1,Z){if(J===1)return;let Q=Math.max(0,J),q=new Float32Array([Q,0,0,0,0,Q,0,0,0,0,Q,0,0,0,0,1]);if(!Z||Z.length===0)$.colorMatrixUniform(q,1,3);else $.colorMatrix(q,Z,1,3)}function t7($){let J=Math.max(0,$),Z=0.299*(1-J),Q=0.587*(1-J),q=0.114*(1-J),U=Z+J,G=Q,K=q,j=Z,_=Q+J,D=q,z=Z,V=Q,X=q+J;return new Float32Array([U,G,K,0,j,_,D,0,z,V,X,0,0,0,0,1])}function y6($,J,Z=1){if(Z===1||Z===0)return;let Q=t7(Z);if(!J||J.length===0)$.colorMatrixUniform(Q,1,3);else $.colorMatrix(Q,J,1,3)}class i5{_threshold;_strength;_radius;constructor($=0.8,J=0.2,Z=2){this._threshold=Math.max(0,Math.min(1,$)),this._strength=Math.max(0,J),this._radius=Math.max(0,Math.round(Z))}set threshold($){this._threshold=Math.max(0,Math.min(1,$))}get threshold(){return this._threshold}set strength($){this._strength=Math.max(0,$)}get strength(){return this._strength}set radius($){this._radius=Math.max(0,Math.round($))}get radius(){return this._radius}apply($){let J=this._threshold,Z=this._strength,Q=this._radius;if(Z<=0||Q<=0)return;let{width:q,height:U}=$,G=Uint16Array.from($.buffers.fg),K=Uint16Array.from($.buffers.bg),j=$.buffers.fg,_=$.buffers.bg,D=[];for(let z=0;z<U;z++)for(let V=0;V<q;V++){let X=(z*q+V)*4,Y=0.299*k(G,X)+0.587*k(G,X+1)+0.114*k(G,X+2),H=0.299*k(K,X)+0.587*k(K,X+1)+0.114*k(K,X+2),N=Math.max(Y,H);if(N>J){let F=(N-J)/(1-J+0.000001);D.push({x:V,y:z,intensity:Math.max(0,F)})}}if(D.length===0)return;j.set(G),_.set(K);for(let z of D)for(let V=-Q;V<=Q;V++)for(let X=-Q;X<=Q;X++){if(X===0&&V===0)continue;let Y=z.x+X,H=z.y+V;if(Y>=0&&Y<q&&H>=0&&H<U){let N=X*X+V*V,F=Q*Q;if(N<=F){let P=1-N/F,W=z.intensity*Z*P,E=(H*q+Y)*4;X6(j,E,Math.min(1,k(j,E)+W),Math.min(1,k(j,E+1)+W),Math.min(1,k(j,E+2)+W)),X6(_,E,Math.min(1,k(_,E)+W),Math.min(1,k(_,E+1)+W),Math.min(1,k(_,E+2)+W))}}}}}var C6=new Float32Array([0.393,0.769,0.189,0,0.349,0.686,0.168,0,0.272,0.534,0.131,0,0,0,0,1]),S6=new Float32Array([0.567,0.433,0,0,0.558,0.442,0,0,0,0.242,0.758,0,0,0,0,1]),I6=new Float32Array([0.625,0.375,0,0,0.7,0.3,0,0,0,0.3,0.7,0,0,0,0,1]),R6=new Float32Array([0.95,0.05,0,0,0,0.433,0.567,0,0,0.475,0.525,0,0,0,0,1]),T6=new Float32Array([0.299,0.587,0.114,0,0.299,0.587,0.114,0,0.299,0.587,0.114,0,0,0,0,1]),w6=new Float32Array([1,0.2,0,0,0,0.9,0.1,0,0,0.1,0.9,0,0,0,0,1]),v6=new Float32Array([0.9,0.1,0,0,0.2,0.8,0,0,0,0,1,0,0,0,0,1]),k6=new Float32Array([1,0,0,0,0,0.9,0.1,0,0.1,0,0.9,0,0,0,0,1]),x6=new Float32Array([1.5,-0.2,-0.3,0,-0.3,1.4,-0.1,0,-0.2,-0.2,1.4,0,0,0,0,1]),f6=new Float32Array([-0.5,0.5,0.5,0,0.5,-0.5,0.5,0,0.5,0.5,-0.5,0,0,0,0,1]),m6=new Float32Array([1,0,0.25,0,0.1,0.1,0.1,0,0.25,0,1,0,0,0,0,1]),b6=new Float32Array([0,0,0,0,0.299,0.587,0.114,0,0,0,0,0,0,0,0,1]),g6=new Float32Array([0.299,0.587,0.114,0,0.299,0.587,0.114,0,0.299,0.587,0.114,0,0,0,0,1]),h6=new Float32Array([-1,0,0,1,0,-1,0,1,0,0,-1,1,0,0,0,1]),P6={linear:($)=>$,inQuad:($)=>$*$,outQuad:($)=>$*(2-$),inOutQuad:($)=>$<0.5?2*$*$:-1+(4-2*$)*$,inExpo:($)=>$===0?0:Math.pow(2,10*($-1)),outExpo:($)=>$===1?1:1-Math.pow(2,-10*$),inOutSine:($)=>-(Math.cos(Math.PI*$)-1)/2,outBounce:($)=>{if($<0.36363636363636365)return 7.5625*$*$;else if($<0.7272727272727273)return 7.5625*($-=0.5454545454545454)*$+0.75;else if($<0.9090909090909091)return 7.5625*($-=0.8181818181818182)*$+0.9375;else return 7.5625*($-=0.9545454545454546)*$+0.984375},outElastic:($)=>{let J=2*Math.PI/3;return $===0?0:$===1?1:Math.pow(2,-10*$)*Math.sin(($*10-0.75)*J)+1},inBounce:($)=>1-P6.outBounce(1-$),inCirc:($)=>1-Math.sqrt(1-$*$),outCirc:($)=>Math.sqrt(1-Math.pow($-1,2)),inOutCirc:($)=>{if(($*=2)<1)return-0.5*(Math.sqrt(1-$*$)-1);return 0.5*(Math.sqrt(1-($-=2)*$)+1)},inBack:($,J=1.70158)=>$*$*((J+1)*$-J),outBack:($,J=1.70158)=>--$*$*((J+1)*$+J)+1,inOutBack:($,J=1.70158)=>{if(J*=1.525,($*=2)<1)return 0.5*($*$*((J+1)*$-J));return 0.5*(($-=2)*$*((J+1)*$+J)+2)}};function e7($){if(!$.properties)return;if(!$.initialValues||$.initialValues.length===0){let J=[];for(let Z=0;Z<$.target.length;Z++){let Q=$.target[Z],q={};for(let U of Object.keys($.properties))if(typeof Q[U]==="number")q[U]=Q[U];J.push(q)}$.initialValues=J}}function T0($,J,Z,Q,q=0){if(!$.properties||!$.initialValues)return;let G=(P6[$.ease||"linear"]||P6.linear)(Math.max(0,Math.min(1,J))),K=Z?1-G:G;for(let j=0;j<$.target.length;j++){let _=$.target[j],D=$.initialValues[j];if(!D)continue;for(let[z,V]of Object.entries($.properties)){let X=D[z],Y=X+(V-X)*K;_[z]=Y}}if($.onUpdate){let j={targets:$.target,progress:G,currentTime:Q,deltaTime:q};$.onUpdate(j)}}function $J($,J,Z=0){if(J<$.startTime)return;let Q=J-$.startTime,q=$.duration||0;if(J>=$.startTime&&!$.started){if(e7($),$.onStart)$.onStart();$.started=!0}if(q===0){if(!$.completed){if(T0($,1,!1,J,Z),$.onComplete)$.onComplete();$.completed=!0}return}let U=!$.loop||$.loop===1?1:typeof $.loop==="number"?$.loop:1/0,G=$.loopDelay||0,K=q+G,j=Math.floor(Q/K),_=Q%K;if($.onLoop&&$.currentLoop!==void 0&&j>$.currentLoop&&j<U)$.onLoop();if($.currentLoop=j,$.onComplete&&!$.completed&&j===U-1&&_>=q){let V=($.alternate||!1)&&j%2===1;T0($,1,V,J,Z),$.onComplete(),$.completed=!0;return}if(j>=U){if(!$.completed){let V=($.alternate||!1)&&(U-1)%2===1;if(T0($,1,V,J,Z),$.onComplete)$.onComplete();$.completed=!0}return}if(_===0&&Q>0&&j<U)j=j-1,_=K;if(_>=q){let V=($.alternate||!1)&&j%2===1;T0($,1,V,J,Z);return}let D=_/q,z=($.alternate||!1)&&j%2===1;T0($,D,z,J,Z)}function JJ($,J){if(!$.executed&&J>=$.startTime&&$.callback)$.callback(),$.executed=!0}function ZJ($,J,Z=0){if(!$.timeline)return;if(J<$.startTime)return;if(!$.timelineStarted){$.timelineStarted=!0,$.timeline.play();let Q=J-$.startTime;$.timeline.update(Q);return}$.timeline.update(Z)}function QJ($,J,Z=0){if($.type==="animation")$J($,J,Z);else if($.type==="callback")JJ($,J)}class i0{items=[];subTimelines=[];currentTime=0;isPlaying=!1;isComplete=!1;duration;loop;synced=!1;autoplay;onComplete;onPause;stateChangeListeners=[];constructor($={}){this.duration=$.duration||1000,this.loop=$.loop===!0,this.autoplay=$.autoplay!==!1,this.onComplete=$.onComplete,this.onPause=$.onPause}addStateChangeListener($){this.stateChangeListeners.push($)}removeStateChangeListener($){this.stateChangeListeners=this.stateChangeListeners.filter((J)=>J!==$)}notifyStateChange(){for(let $ of this.stateChangeListeners)$(this)}add($,J,Z=0){let Q=typeof Z==="string"?0:Z,q={};for(let U in J)if(!["duration","ease","onUpdate","onComplete","onStart","onLoop","loop","loopDelay","alternate"].includes(U)){if(typeof J[U]==="number")q[U]=J[U]}return this.items.push({type:"animation",startTime:Q,target:Array.isArray($)?$:[$],properties:q,initialValues:[],duration:J.duration!==void 0?J.duration:1000,ease:J.ease||"linear",loop:J.loop,loopDelay:J.loopDelay||0,alternate:J.alternate||!1,onUpdate:J.onUpdate,onComplete:J.onComplete,onStart:J.onStart,onLoop:J.onLoop,completed:!1,started:!1,currentLoop:0,once:J.once??!1}),this}once($,J){return this.add($,{...J,once:!0},this.currentTime),this}call($,J=0){let Z=typeof J==="string"?0:J;return this.items.push({type:"callback",startTime:Z,callback:$,executed:!1}),this}sync($,J=0){if($.synced)throw Error("Timeline already synced");return this.subTimelines.push({type:"timeline",startTime:J,timeline:$}),$.synced=!0,this}play(){if(this.isComplete)return this.restart();return this.subTimelines.forEach(($)=>{if($.timelineStarted)$.timeline.play()}),this.isPlaying=!0,this.notifyStateChange(),this}pause(){if(this.subTimelines.forEach(($)=>{$.timeline.pause()}),this.isPlaying=!1,this.onPause)this.onPause();return this.notifyStateChange(),this}resetItems(){this.items.forEach(($)=>{if($.type==="callback")$.executed=!1;else if($.type==="animation")$.completed=!1,$.started=!1,$.currentLoop=0}),this.subTimelines.forEach(($)=>{if($.timelineStarted=!1,$.timeline)$.timeline.restart(),$.timeline.pause()})}restart(){return this.isComplete=!1,this.currentTime=0,this.isPlaying=!0,this.resetItems(),this.notifyStateChange(),this}update($){for(let J of this.subTimelines)ZJ(J,this.currentTime+$,$);if(!this.isPlaying)return;this.currentTime+=$;for(let J of this.items)QJ(J,this.currentTime,$);for(let J=this.items.length-1;J>=0;J--){let Z=this.items[J];if(Z.type==="animation"&&Z.once&&Z.completed)this.items.splice(J,1)}if(this.loop&&this.currentTime>=this.duration){let J=this.currentTime%this.duration;if(this.resetItems(),this.currentTime=0,J>0)this.update(J)}else if(!this.loop&&this.currentTime>=this.duration){if(this.currentTime=this.duration,this.isPlaying=!1,this.isComplete=!0,this.onComplete)this.onComplete();this.notifyStateChange()}}}class k7{timelines=new Set;renderer=null;frameCallback=null;isLive=!1;defaults={frameRate:60};attach($){if(this.renderer)this.detach();this.renderer=$,this.frameCallback=async(J)=>{this.update(J)},$.setFrameCallback(this.frameCallback)}detach(){if(this.renderer&&this.frameCallback){if(this.renderer.removeFrameCallback(this.frameCallback),this.isLive)this.renderer.dropLive(),this.isLive=!1}this.renderer=null,this.frameCallback=null}updateLiveState(){if(!this.renderer)return;let $=Array.from(this.timelines).some((J)=>!J.synced&&J.isPlaying&&!J.isComplete);if($&&!this.isLive)this.renderer.requestLive(),this.isLive=!0;else if(!$&&this.isLive)this.renderer.dropLive(),this.isLive=!1}onTimelineStateChange=($)=>{this.updateLiveState()};register($){if(!this.timelines.has($))this.timelines.add($),$.addStateChangeListener(this.onTimelineStateChange),this.updateLiveState()}unregister($){if(this.timelines.has($))this.timelines.delete($),$.removeStateChangeListener(this.onTimelineStateChange),this.updateLiveState()}clear(){for(let $ of this.timelines)$.removeStateChangeListener(this.onTimelineStateChange);this.timelines.clear(),this.updateLiveState()}update($){for(let J of this.timelines)if(!J.synced)J.update($)}}var n5=new k7;function p6($={}){let J=new i0($);if($.autoplay!==!1)J.play();return n5.register(J),J}var qJ=()=>{},Y7=!1,V7=100;function UJ($){if($ instanceof Error)return $;if(typeof $==="string")return Error($);return Error(`Unknown plugin error: ${String($)}`)}class n0{plugins=[];sortedPluginsCache=null;listeners=new Set;errorListeners=new Set;pluginErrors=[];registrationOrder=0;batchDepth=0;batchedNotify=!1;rendererInstance;hostContext;options;constructor($,J,Z={}){this.rendererInstance=$,this.hostContext=J,this.options={debugPluginErrors:Z.debugPluginErrors??Y7,maxPluginErrors:Z.maxPluginErrors??V7,onPluginError:Z.onPluginError}}get renderer(){return this.rendererInstance}get context(){return this.hostContext}configure($){if("debugPluginErrors"in $)this.options.debugPluginErrors=$.debugPluginErrors??Y7;if("maxPluginErrors"in $)this.options.maxPluginErrors=$.maxPluginErrors??V7;if("onPluginError"in $)this.options.onPluginError=$.onPluginError}register($){if(this.plugins.some((J)=>J.plugin.id===$.id))throw Error(`Plugin with id "${$.id}" is already registered`);try{$.setup?.(this.hostContext,this.rendererInstance)}catch(J){return this.reportPluginError({pluginId:$.id,phase:"setup",source:"registry",error:J}),qJ}return this.plugins.push({plugin:$,registrationOrder:this.registrationOrder++,cachedOrder:$.order??0,cachedId:$.id}),this.invalidateSortedPluginsCache(),this.notifyListeners(),()=>{this.unregister($.id)}}unregister($){let J=this.plugins.findIndex((Q)=>Q.plugin.id===$);if(J===-1)return!1;let[Z]=this.plugins.splice(J,1);this.invalidateSortedPluginsCache();try{Z?.plugin.dispose?.()}catch(Q){this.reportPluginError({pluginId:$,phase:"dispose",source:"registry",error:Q})}return this.notifyListeners(),!0}updateOrder($,J){let Z=this.plugins.find((Q)=>Q.plugin.id===$);if(!Z)return!1;if((Z.plugin.order??0)===J)return!0;return Z.plugin.order=J,Z.cachedOrder=J,this.invalidateSortedPluginsCache(),this.notifyListeners(),!0}clear(){if(this.plugins.length===0)return;let $=[...this.plugins];this.plugins=[],this.invalidateSortedPluginsCache();for(let J of $)try{J.plugin.dispose?.()}catch(Z){this.reportPluginError({pluginId:J.plugin.id,phase:"dispose",source:"registry",error:Z})}this.notifyListeners()}subscribe($){return this.listeners.add($),()=>{this.listeners.delete($)}}onPluginError($){return this.errorListeners.add($),()=>{this.errorListeners.delete($)}}batch($){this.batchDepth+=1;try{return $()}finally{if(this.batchDepth-=1,this.batchDepth===0&&this.batchedNotify)this.batchedNotify=!1,this.flushListeners()}}getPluginErrors(){return this.pluginErrors}clearPluginErrors(){this.pluginErrors=[]}reportPluginError($){let J={pluginId:$.pluginId,slot:$.slot,phase:$.phase,source:$.source??"registry",error:UJ($.error),timestamp:Date.now()};if(this.pluginErrors.push(J),this.pluginErrors.length>this.options.maxPluginErrors)this.pluginErrors.splice(0,this.pluginErrors.length-this.options.maxPluginErrors);if(this.options.debugPluginErrors){let Z=J.slot?` slot="${J.slot}"`:"";console.debug(`[SlotRegistry][PluginError] plugin="${J.pluginId}" phase="${J.phase}" source="${J.source}"${Z}`),console.debug(J.error)}for(let Z of this.errorListeners)try{Z(J)}catch(Q){console.error("Error in plugin error listener:",Q)}try{this.options.onPluginError?.(J)}catch(Z){console.error("Error in plugin error callback:",Z)}return J}resolve($){return this.resolveEntries($).map((J)=>J.renderer)}resolveEntries($){let J=[];for(let Z of this.getSortedPlugins()){let Q=Z.plugin.slots[$];if(Q)J.push({id:Z.plugin.id,renderer:Q})}return J}getSortedPlugins(){if(this.syncPluginSortMetadata(),this.sortedPluginsCache)return this.sortedPluginsCache;return this.sortedPluginsCache=[...this.plugins].sort(($,J)=>{let Z=$.cachedOrder,Q=J.cachedOrder;if(Z!==Q)return Z-Q;if($.registrationOrder!==J.registrationOrder)return $.registrationOrder-J.registrationOrder;return $.cachedId.localeCompare(J.cachedId)}),this.sortedPluginsCache}syncPluginSortMetadata(){let $=!1;for(let J of this.plugins){let Z=J.plugin.order??0,Q=J.plugin.id;if(J.cachedOrder!==Z||J.cachedId!==Q)J.cachedOrder=Z,J.cachedId=Q,$=!0}if($)this.invalidateSortedPluginsCache()}invalidateSortedPluginsCache(){this.sortedPluginsCache=null}notifyListeners(){if(this.batchDepth>0){this.batchedNotify=!0;return}this.flushListeners()}flushListeners(){for(let $ of this.listeners)try{$()}catch(J){console.error("Error in slot registry listener:",J)}}}var D6=new WeakMap;function GJ($){let J=D6.get($);if(J)return J;let Z=new Map;return D6.set($,Z),$.once("destroy",()=>{for(let Q of Z.values())try{Q.clear()}catch(q){console.error("Error disposing slot registry:",q)}Z.clear(),D6.delete($)}),Z}function t5($,J,Z,Q={}){let q=GJ($),U=q.get(J);if(U){if(U.context!==Z)throw Error(`createSlotRegistry called with a different context for renderer key "${J}". Reuse the original context object.`);let K=U;return K.configure(Q),K}let G=new n0($,Z,Q);return q.set(J,G),G}function H7($){return typeof $==="object"&&$!==null&&"render"in $}function jJ($){let J={};for(let[Z,Q]of Object.entries($.slots)){let q=(U,G)=>{if(H7(Q))return Q.render(U,G);return Q(U,G)};if(H7(Q))q.__coreSlotOwnership="plugin",q.__coreManagedSlot=Q;else q.__coreSlotOwnership="host";J[Z]=q}return{id:$.id,order:$.order,setup:$.setup,dispose:$.dispose,slots:J}}function X7($){if(!$)return[];return Array.isArray($)?[...$]:[$]}function z6($,J,Z){if(!$)throw Error(`Plugin "${J}" did not return a renderable node`);if(typeof $.then==="function")throw Error(`Plugin "${J}" returned an async value. Core slots require synchronous renderers.`);if(!($ instanceof a0))throw Error(`Plugin "${J}" must return a BaseRenderable`);if($===Z)throw Error(`Plugin "${J}" returned the slot mount container as its node`);if($.parent&&$.parent!==Z)throw Error(`Plugin "${J}" returned a renderable already attached to another parent`)}function c6($,J,Z={}){return t5($,"core:slot-registry",J,Z)}function u6($,J){return $.register(jJ(J))}function d6($,J){return x7($,J).map((Z)=>{return{id:Z.id,renderer:Z.renderer}})}function x7($,J){return $.resolveEntries(J).map((Z)=>{let Q=Z.renderer;return{id:Z.id,renderer:(q,U)=>Q(q,U),ownership:Q.__coreSlotOwnership??"host",managedSlot:Q.__coreManagedSlot}})}class e5 extends x{_mode;_slotRegistry;_slotName;_data;_fallbackOption;_pluginFailurePlaceholder;_disposed=!1;_mountedNodes=[];_pluginNodes=new Map;_activePluginIds=new Set;_fallbackNodes=null;_unsubscribe=null;constructor($,J){super($,J);this._slotRegistry=J.registry,this._slotName=J.name,this._data=J.data??{},this._mode=J.mode??"append",this._fallbackOption=J.fallback,this._pluginFailurePlaceholder=J.pluginFailurePlaceholder,this._unsubscribe=this._slotRegistry.subscribe(()=>this.refresh());try{this.refresh()}catch(Z){throw this._cleanupAll(),Z}}get mode(){return this._mode}set mode($){this._mode=$,this.refresh()}get data(){return this._data}set data($){this._data=$,this.refresh()}refresh(){if(this._disposed)return;let $=x7(this._slotRegistry,this._slotName),J=this._mode==="single_winner"&&$.length>0?[$[0]]:$,Z=new Set(J.map((U)=>U.id)),Q=new Set($.map((U)=>U.id));this._cleanupInactivePluginNodes(Z,Q);for(let U of J){let G=this._pluginNodes.get(U.id);if(!G||G.ownership==="plugin"&&G.nodes.length===0||G.dataRef!==this._data){let j=G;try{let _=U.renderer(this._slotRegistry.context,this._data);z6(_,U.id,this),G={nodes:[_],ownership:U.ownership,managedSlot:U.managedSlot??G?.managedSlot,dataRef:this._data}}catch(_){let D=this._slotRegistry.reportPluginError({pluginId:U.id,slot:String(this._slotName),phase:"render",source:"core",error:_});G={nodes:this._resolvePluginFailurePlaceholder(D),ownership:"host",managedSlot:U.managedSlot??G?.managedSlot,dataRef:this._data}}if(j)this._cleanupReplacedPluginNodes(j,G.nodes);this._pluginNodes.set(U.id,G)}if(!this._activePluginIds.has(U.id)){let j=this._pluginNodes.get(U.id);if(j)this._callManagedHook(U.id,j.managedSlot,"onActivate","setup")}}let q=[];if(this._mode==="append"||J.length===0)q.push(...this._ensureFallbackNodes());for(let U of J){let G=this._pluginNodes.get(U.id);if(G)q.push(...G.nodes)}if(this._mode!=="append"&&q.length===0)q.push(...this._ensureFallbackNodes());this._reconcileMountedNodes(q),this._activePluginIds=Z}destroySelf(){this._cleanupAll()}_cleanupAll(){if(this._disposed)return;this._disposed=!0,this._unsubscribe?.(),this._unsubscribe=null;for(let[$,J]of this._pluginNodes){if(this._activePluginIds.has($))this._callManagedHook($,J.managedSlot,"onDeactivate","dispose");this._callManagedHook($,J.managedSlot,"onDispose","dispose");for(let Z of J.nodes)this._detachNodeFromMount(Z);if(J.ownership==="host")for(let Z of J.nodes)Z.destroyRecursively()}if(this._pluginNodes.clear(),this._activePluginIds=new Set,this._fallbackNodes){for(let $ of this._fallbackNodes)$.destroyRecursively();this._fallbackNodes=null}this._mountedNodes=[]}_ensureFallbackNodes(){if(this._fallbackNodes!==null)return this._fallbackNodes;let $=typeof this._fallbackOption==="function"?this._fallbackOption():this._fallbackOption,J=X7($);for(let Z of J)z6(Z,"fallback",this);return this._fallbackNodes=J,this._fallbackNodes}_callManagedHook($,J,Z,Q){let q=J?.[Z];if(!q)return;try{q(this._slotRegistry.context)}catch(U){this._slotRegistry.reportPluginError({pluginId:$,slot:String(this._slotName),phase:Q,source:"core",error:U})}}_detachNodeFromMount($){if($.parent===this)this.remove($.id)}_cleanupInactivePluginNodes($,J){for(let[Z,Q]of this._pluginNodes){if($.has(Z))continue;if(this._activePluginIds.has(Z))this._callManagedHook(Z,Q.managedSlot,"onDeactivate","dispose");for(let q of Q.nodes)this._detachNodeFromMount(q);if(!J.has(Z)){if(this._callManagedHook(Z,Q.managedSlot,"onDispose","dispose"),Q.ownership==="host")for(let q of Q.nodes)q.destroyRecursively();this._pluginNodes.delete(Z);continue}if(Q.ownership==="host"){for(let q of Q.nodes)q.destroyRecursively();this._pluginNodes.delete(Z);continue}Q.nodes=[]}}_cleanupReplacedPluginNodes($,J){let Z=new Set(J);for(let Q of $.nodes){if(Z.has(Q))continue;if(this._detachNodeFromMount(Q),$.ownership==="host")Q.destroyRecursively()}}_resolvePluginFailurePlaceholder($){if(!this._pluginFailurePlaceholder)return[];try{let J=this._pluginFailurePlaceholder($,this._slotRegistry.context),Z=X7(J);for(let Q of Z)z6(Q,`${$.pluginId}:error-placeholder`,this);return Z}catch(J){return this._slotRegistry.reportPluginError({pluginId:$.pluginId,slot:String(this._slotName),phase:"error_placeholder",source:"core",error:J}),[]}}_reconcileMountedNodes($){let J=new Set($);for(let Z of this._mountedNodes)if(!J.has(Z)){if(Z.parent===this)this.remove(Z.id)}for(let Z=0;Z<$.length;Z++){let Q=$[Z];if(Q.parent!==this){this.add(Q,Z);continue}if(this.getChildren()[Z]?.id!==Q.id)this.add(Q,Z)}this._mountedNodes=[...$]}}function Y6($){return typeof $==="bigint"?Number($):$}class N0{static create($){let J=e(),Z=J.createNativeSpanFeed($),Q=new N0(Z);J.registerNativeSpanFeedStream(Z,Q.eventHandler);let q=J.attachNativeSpanFeed(Z);if(q!==0)throw J.unregisterNativeSpanFeedStream(Z),J.destroyNativeSpanFeed(Z),Error(`Failed to attach stream: ${q}`);return Q}static attach($,J){let Z=e(),Q=new N0($);Z.registerNativeSpanFeedStream($,Q.eventHandler);let q=Z.attachNativeSpanFeed($);if(q!==0)throw Z.unregisterNativeSpanFeedStream($),Error(`Failed to attach stream: ${q}`);return Q}streamPtr;lib=e();eventHandler;chunkMap=new Map;chunkSizes=new Map;dataHandlers=new Set;errorHandlers=new Set;drainBuffer=null;stateBuffer=null;closed=!1;destroyed=!1;draining=!1;pendingDataAvailable=!1;pendingClose=!1;closing=!1;pendingAsyncHandlers=0;inCallback=!1;closeQueued=!1;constructor($){this.streamPtr=$,this.eventHandler=(J,Z,Q)=>{this.handleEvent(J,Z,Q)},this.ensureDrainBuffer()}ensureDrainBuffer(){if(this.drainBuffer)return;let $=256;this.drainBuffer=new Uint8Array($*K8.size)}onData($){if(this.dataHandlers.add($),this.pendingDataAvailable)this.pendingDataAvailable=!1,this.drainAll();return()=>this.dataHandlers.delete($)}onError($){return this.errorHandlers.add($),()=>this.errorHandlers.delete($)}close(){if(this.destroyed)return;if(this.inCallback||this.draining||this.pendingAsyncHandlers>0){if(this.pendingClose=!0,!this.closeQueued)this.closeQueued=!0,queueMicrotask(()=>{this.closeQueued=!1,this.processPendingClose()});return}this.performClose()}processPendingClose(){if(!this.pendingClose||this.destroyed)return;if(this.inCallback||this.draining||this.pendingAsyncHandlers>0)return;this.pendingClose=!1,this.performClose()}performClose(){if(this.closing)return;if(this.closing=!0,!this.closed){if(this.lib.streamClose(this.streamPtr)!==0){this.closing=!1;return}this.closed=!0}this.finalizeDestroy()}finalizeDestroy(){if(this.destroyed)return;this.lib.unregisterNativeSpanFeedStream(this.streamPtr),this.lib.destroyNativeSpanFeed(this.streamPtr),this.destroyed=!0,this.chunkMap.clear(),this.chunkSizes.clear(),this.stateBuffer=null,this.drainBuffer=null,this.dataHandlers.clear(),this.errorHandlers.clear(),this.pendingDataAvailable=!1}handleEvent($,J,Z){this.inCallback=!0;try{switch($){case 8:{let Q=Y6(Z);if(Q>0&&J){let q=j8(J,0,Q);this.stateBuffer=new Uint8Array(q)}break}case 7:{if(this.closing)break;if(this.dataHandlers.size===0){this.pendingDataAvailable=!0;break}this.drainAll();break}case 2:{let Q=Y6(Z);if(Q>0&&J){if(!this.chunkMap.has(J)){let q=j8(J,0,Q);this.chunkMap.set(J,q)}this.chunkSizes.set(J,Q)}break}case 6:{let Q=Y6(J);for(let q of this.errorHandlers)q(Q);break}case 5:{this.closed=!0;break}default:break}}finally{this.inCallback=!1}}decrementRefcount($){if(this.stateBuffer&&$<this.stateBuffer.length){let J=this.stateBuffer[$];this.stateBuffer[$]=J>0?J-1:0}}drainOnce(){if(!this.drainBuffer||this.draining||this.pendingClose)return 0;let $=Math.floor(this.drainBuffer.byteLength/K8.size);if($===0)return 0;let J=this.lib.streamDrainSpans(this.streamPtr,this.drainBuffer,$);if(J===0)return 0;this.draining=!0;let Z=K8.unpackList(this.drainBuffer.buffer,J),Q=null;try{for(let q of Z){if(q.len===0)continue;let U=this.chunkMap.get(q.chunkPtr);if(!U){let _=this.chunkSizes.get(q.chunkPtr);if(!_)continue;U=j8(q.chunkPtr,0,_),this.chunkMap.set(q.chunkPtr,U)}if(q.offset+q.len>U.byteLength)continue;let G=new Uint8Array(U,q.offset,q.len),K=null;for(let _ of this.dataHandlers)try{let D=_(G);if(D&&typeof D.then==="function")K??=[],K.push(D)}catch(D){Q??=D}let j=this.pendingClose;if(K){let _=q.chunkIndex;this.pendingAsyncHandlers+=1,Promise.allSettled(K).then(()=>{this.decrementRefcount(_),this.pendingAsyncHandlers-=1,this.processPendingClose()})}else this.decrementRefcount(q.chunkIndex);if(j)break}}finally{this.draining=!1}if(Q)throw Q;return J}drainAll(){let $=this.drainOnce();while($>0)$=this.drainOnce()}}function DJ($,J){return Error(`Audio ${$} failed: ${J}`)}function zJ($){return $ instanceof Uint8Array?$:new Uint8Array($)}class B0 extends KJ{static create($={}){return new B0(e(),$)}lib;defaultStartOptions;engine=null;groups=new Map;playbackStarted=!1;mixerStarted=!1;constructor($,J){super();this.lib=$,this.defaultStartOptions=J.startOptions;let Z=J.sampleRate==null&&J.playbackChannels==null?void 0:{sampleRate:J.sampleRate==null?void 0:Math.max(0,Math.trunc(J.sampleRate)),playbackChannels:J.playbackChannels==null?void 0:Math.max(0,Math.trunc(J.playbackChannels))};if(this.engine=this.lib.createAudioEngine(Z),!this.engine){this.emitError("createAudioEngine",void 0,"Audio createAudioEngine returned null");return}if(J.autoStart??!1)this.start(this.defaultStartOptions)}emitError($,J,Z,Q){let q=Z?Error(Z):DJ($,J??-1);if(Q)q.cause=Q;this.emit("error",q,{action:$,status:J})}start($){if(this.playbackStarted)return!0;let J=this.engine;if(!J)return this.emitError("start",void 0,"Audio engine unavailable during start"),!1;let Z=$??this.defaultStartOptions,Q=this.lib.audioStart(J,Z);if(Q!==0)return this.emitError("start",Q),!1;return this.playbackStarted=!0,this.mixerStarted=!0,this.emit("started"),!0}startMixer(){if(this.mixerStarted)return!0;let $=this.engine;if(!$)return this.emitError("startMixer",void 0,"Audio engine unavailable during startMixer"),!1;let J=this.lib.audioStartMixer($);if(J!==0)return this.emitError("startMixer",J),!1;return this.mixerStarted=!0,this.emit("mixerStarted"),!0}stop(){if(!this.mixerStarted)return!0;let $=this.engine;if(!$)return this.emitError("stop",void 0,"Audio engine unavailable during stop"),!1;let J=this.lib.audioStop($);if(J!==0)return this.emitError("stop",J),!1;return this.playbackStarted=!1,this.mixerStarted=!1,this.emit("stopped"),!0}isStarted(){return this.playbackStarted}isMixerStarted(){return this.mixerStarted}loadSound($){let J=this.engine;if(!J)return this.emitError("loadSound",void 0,"Audio engine unavailable during loadSound"),null;let Z=this.lib.audioLoad(J,zJ($));if(Z.status!==0||Z.soundId==null)return this.emitError("loadSound",Z.status),null;return Z.soundId}async loadSoundFile($){let J=await _J($).catch((Z)=>{return this.emitError("loadSoundFile",void 0,`Failed to read file '${$}': ${Z.message}`,Z),null});if(J==null)return null;return this.loadSound(J)}unloadSound($){let J=this.engine;if(!J)return this.emitError("unloadSound",void 0,"Audio engine unavailable during unloadSound"),!1;let Z=this.lib.audioUnload(J,$);if(Z!==0)return this.emitError("unloadSound",Z),!1;return!0}group($){let J=this.groups.get($);if(J!=null)return J;let Z=this.engine;if(!Z)return this.emitError("group",void 0,"Audio engine unavailable during group"),null;let Q=this.lib.audioCreateGroup(Z,$);if(Q.status!==0||Q.groupId==null)return this.emitError("group",Q.status),null;return this.groups.set($,Q.groupId),Q.groupId}play($,J){let Z=J?{volume:J.volume,pan:J.pan,loop:J.loop,groupId:J.groupId??0}:void 0,Q=this.engine;if(!Q)return this.emitError("play",void 0,"Audio engine unavailable during play"),null;let q=this.lib.audioPlay(Q,$,Z);if(q.status!==0||q.voiceId==null)return this.emitError("play",q.status),null;return q.voiceId}stopVoice($){let J=this.engine;if(!J)return this.emitError("stopVoice",void 0,"Audio engine unavailable during stopVoice"),!1;let Z=this.lib.audioStopVoice(J,$);if(Z!==0)return this.emitError("stopVoice",Z),!1;return!0}setVoiceGroup($,J){let Z=this.engine;if(!Z)return this.emitError("setVoiceGroup",void 0,"Audio engine unavailable during setVoiceGroup"),!1;let Q=this.lib.audioSetVoiceGroup(Z,$,J);if(Q!==0)return this.emitError("setVoiceGroup",Q),!1;return!0}setGroupVolume($,J){let Z=this.engine;if(!Z)return this.emitError("setGroupVolume",void 0,"Audio engine unavailable during setGroupVolume"),!1;let Q=this.lib.audioSetGroupVolume(Z,$,J);if(Q!==0)return this.emitError("setGroupVolume",Q),!1;return!0}setMasterVolume($){let J=this.engine;if(!J)return this.emitError("setMasterVolume",void 0,"Audio engine unavailable during setMasterVolume"),!1;let Z=this.lib.audioSetMasterVolume(J,$);if(Z!==0)return this.emitError("setMasterVolume",Z),!1;return!0}mixFrames($,J=2){let Z=this.engine;if(!Z)return this.emitError("mixFrames",void 0,"Audio engine unavailable during mixFrames"),null;let Q=new Float32Array($*J),q=this.lib.audioMixToBuffer(Z,Q,$,J);if(q!==0)return this.emitError("mixFrames",q),null;return Q}enableTap($=8192){let J=this.engine;if(!J)return this.emitError("enableTap",void 0,"Audio engine unavailable during enableTap"),!1;let Z=this.lib.audioEnableTap(J,!0,$);if(Z!==0)return this.emitError("enableTap",Z),!1;return!0}disableTap(){let $=this.engine;if(!$)return this.emitError("enableTap",void 0,"Audio engine unavailable during disableTap"),!1;let J=this.lib.audioEnableTap($,!1,0);if(J!==0)return this.emitError("enableTap",J),!1;return!0}readTapFrames($,J=2){let Z=this.engine;if(!Z)return this.emitError("readTapFrames",void 0,"Audio engine unavailable during readTapFrames"),null;let Q=new Float32Array($*J),q=this.lib.audioReadTap(Z,Q,$,J);if(q.status!==0)return this.emitError("readTapFrames",q.status),null;return{frames:Q,framesRead:q.framesRead}}listPlaybackDevices(){let $=this.engine;if(!$)return this.emitError("listPlaybackDevices",void 0,"Audio engine unavailable during listPlaybackDevices"),null;let J=this.lib.audioRefreshPlaybackDevices($);if(J!==0)return this.emitError("listPlaybackDevices",J),null;let Z=this.lib.audioGetPlaybackDeviceCount($),Q=[];for(let q=0;q<Z;q+=1)Q.push({index:q,name:this.lib.audioGetPlaybackDeviceName($,q),isDefault:this.lib.audioIsPlaybackDeviceDefault($,q)});return Q}selectPlaybackDevice($){let J=this.engine;if(!J)return this.emitError("selectPlaybackDevice",void 0,"Audio engine unavailable during selectPlaybackDevice"),!1;let Z=this.lib.audioRefreshPlaybackDevices(J);if(Z!==0)return this.emitError("selectPlaybackDevice",Z),!1;let Q=this.lib.audioSelectPlaybackDevice(J,$);if(Q!==0)return this.emitError("selectPlaybackDevice",Q),!1;return!0}clearPlaybackDeviceSelection(){let $=this.engine;if(!$){this.emitError("clearPlaybackDeviceSelection",void 0,"Audio engine unavailable during clearPlaybackDeviceSelection");return}this.lib.audioClearPlaybackDeviceSelection($)}getStats(){let $=this.engine;if(!$)return this.emitError("getStats",void 0,"Audio engine unavailable during getStats"),null;let J=this.lib.audioGetStats($);if(J==null)this.emitError("getStats",void 0,"Failed to retrieve audio stats");return J}dispose(){if(!this.engine)return;if(this.mixerStarted)this.stop();this.groups.clear(),this.lib.destroyAudioEngine(this.engine),this.engine=null,this.emit("disposed")}}function a6($={}){return B0.create($)}class L0 extends x{frameBuffer;respectAlpha;constructor($,J){super($,J);this.respectAlpha=J.respectAlpha||!1,this.frameBuffer=u0.create(J.width,J.height,this._ctx.widthMethod,{respectAlpha:this.respectAlpha,id:J.id||`framebufferrenderable-${this.id}`})}onResize($,J){if($<=0||J<=0)throw Error(`Invalid resize dimensions for FrameBufferRenderable ${this.id}: ${$}x${J}`);this.frameBuffer.resize($,J),super.onResize($,J),this.requestRender()}renderSelf($){if(!this.visible||this.isDestroyed)return;$.drawFrameBuffer(this.x,this.y,this.frameBuffer)}destroySelf(){this.frameBuffer?.destroy(),super.destroySelf()}}class y0 extends L0{selectable=!0;static _defaultOptions={text:"",font:"tiny",color:"#FFFFFF",backgroundColor:"transparent",selectionBg:void 0,selectionFg:void 0,selectable:!0};_text;_font;_color;_backgroundColor;_selectionBg;_selectionFg;lastLocalSelection=null;selectionHelper;constructor($,J){let Z=y0._defaultOptions,Q=J.font||Z.font,q=J.text||Z.text,U=n({text:q,font:Q});super($,{flexShrink:0,...J,width:U.width||1,height:U.height||1,respectAlpha:!0});this._text=q,this._font=Q,this._color=J.color||Z.color,this._backgroundColor=J.backgroundColor||Z.backgroundColor,this._selectionBg=J.selectionBg?O(J.selectionBg):void 0,this._selectionFg=J.selectionFg?O(J.selectionFg):void 0,this.selectable=J.selectable??!0,this.selectionHelper=new p0(()=>this._text,()=>this._font),this.renderFontToBuffer()}get text(){return this._text}set text($){if(this._text=$,this.updateDimensions(),this.lastLocalSelection)this.selectionHelper.onLocalSelectionChanged(this.lastLocalSelection,this.width,this.height);this.renderFontToBuffer(),this.requestRender()}get font(){return this._font}set font($){if(this._font=$,this.updateDimensions(),this.lastLocalSelection)this.selectionHelper.onLocalSelectionChanged(this.lastLocalSelection,this.width,this.height);this.renderFontToBuffer(),this.requestRender()}get color(){return this._color}set color($){this._color=$,this.renderFontToBuffer(),this.requestRender()}get backgroundColor(){return this._backgroundColor}set backgroundColor($){this._backgroundColor=$,this.renderFontToBuffer(),this.requestRender()}updateDimensions(){let $=n({text:this._text,font:this._font});this.width=$.width,this.height=$.height}shouldStartSelection($,J){let Z=$-this.x,Q=J-this.y;return this.selectionHelper.shouldStartSelection(Z,Q,this.width,this.height)}onSelectionChanged($){let J=E0($,this.x,this.y);this.lastLocalSelection=J;let Z=this.selectionHelper.onLocalSelectionChanged(J,this.width,this.height);if(Z)this.renderFontToBuffer(),this.requestRender();return Z}getSelectedText(){let $=this.selectionHelper.getSelection();if(!$)return"";return this._text.slice($.start,$.end)}hasSelection(){return this.selectionHelper.hasSelection()}onResize($,J){super.onResize($,J),this.renderFontToBuffer()}renderFontToBuffer(){if(this.isDestroyed)return;this.frameBuffer.clear(O(this._backgroundColor)),Z0(this.frameBuffer,{text:this._text,x:0,y:0,color:this.color,backgroundColor:this._backgroundColor,font:this._font});let $=this.selectionHelper.getSelection();if($&&(this._selectionBg||this._selectionFg))this.renderSelectionHighlight($)}renderSelectionHighlight($){if(!this._selectionBg&&!this._selectionFg)return;let J=this._text.slice($.start,$.end);if(!J)return;let Z=b0(this._text,this._font),Q=Z[$.start]||0,q=$.end<Z.length?Z[$.end]:n({text:this._text,font:this._font}).width;if(this._selectionBg)this.frameBuffer.fillRect(Q,0,q-Q,this.height,O(this._selectionBg));if(this._selectionFg||this._selectionBg)Z0(this.frameBuffer,{text:J,x:Q,y:0,color:this._selectionFg?this._selectionFg:this._color,backgroundColor:this._selectionBg?this._selectionBg:this._backgroundColor,font:this._font})}}function s6($,...J){return h(t0,$||{},...J)}function l6($,...J){return h(S,$||{},...J)}function r6($,...J){return h($0,$||{},...J)}function o6($,...J){return h(y0,$||{},...J)}function i6($,...J){return h(C0,$||{},...J)}function n6($,...J){return h(Z8,$||{},...J)}function t6($,...J){return h(Q8,$||{},...J)}function e6($,...J){return h(L0,$,...J)}function $7($,...J){return h(w,$,...J)}function J7($,...J){return h(S0,$||{},...J)}function f($,...J){let Z=$,Q={...Z,attributes:Z?.attributes??0},q=new l0(Q);for(let U of J)q.add(U);return q}var Z7={bold:(...$)=>f({attributes:I.BOLD},...$),italic:(...$)=>f({attributes:I.ITALIC},...$),underline:(...$)=>f({attributes:I.UNDERLINE},...$),dim:(...$)=>f({attributes:I.DIM},...$),blink:(...$)=>f({attributes:I.BLINK},...$),inverse:(...$)=>f({attributes:I.INVERSE},...$),hidden:(...$)=>f({attributes:I.HIDDEN},...$),strikethrough:(...$)=>f({attributes:I.STRIKETHROUGH},...$),boldItalic:(...$)=>f({attributes:I.BOLD|I.ITALIC},...$),boldUnderline:(...$)=>f({attributes:I.BOLD|I.UNDERLINE},...$),italicUnderline:(...$)=>f({attributes:I.ITALIC|I.UNDERLINE},...$),boldItalicUnderline:(...$)=>f({attributes:I.BOLD|I.ITALIC|I.UNDERLINE},...$),color:($,...J)=>f({fg:$},...J),bgColor:($,...J)=>f({bg:$},...J),fg:($,...J)=>f({fg:$},...J),bg:($,...J)=>f({bg:$},...J),styled:($=0,...J)=>f({attributes:$},...J)};class t0 extends x{options;constructor($,J){super($,J);this.options=J}renderSelf($,J){if(this.options.render)this.options.render.call(this.options,$,J,this)}}var P7="#888888",O7="transparent";class f7 extends x{target;_fg;_bg;_minWidth;_paddingRight;_lineColorsGutter;_lineColorsContent;_lineSigns;_lineNumberOffset;_hideLineNumbers;_lineNumbers;_maxBeforeWidth=0;_maxAfterWidth=0;_lastKnownLineCount=0;_lastKnownScrollY=0;constructor($,J,Z){super($,{id:Z.id,width:"auto",height:"auto",flexGrow:0,flexShrink:0,buffered:Z.buffered});this.target=J,this._fg=Z.fg,this._bg=Z.bg,this._minWidth=Z.minWidth,this._paddingRight=Z.paddingRight,this._lineColorsGutter=Z.lineColorsGutter,this._lineColorsContent=Z.lineColorsContent,this._lineSigns=Z.lineSigns,this._lineNumberOffset=Z.lineNumberOffset,this._hideLineNumbers=Z.hideLineNumbers,this._lineNumbers=Z.lineNumbers??new Map,this._lastKnownLineCount=this.target.virtualLineCount,this._lastKnownScrollY=this.target.scrollY,this.calculateSignWidths(),this.setupMeasureFunc(),this.onLifecyclePass=()=>{let Q=this.target.virtualLineCount;if(Q!==this._lastKnownLineCount)this._lastKnownLineCount=Q,this.yogaNode.markDirty(),this.requestRender()}}setupMeasureFunc(){let $=(J,Z,Q,q)=>{let U=this.calculateWidth(),G=this.target.virtualLineCount;return{width:U,height:G}};this.yogaNode.setMeasureFunc($)}remeasure(){this.yogaNode.markDirty()}setLineNumberOffset($){if(this._lineNumberOffset!==$)this._lineNumberOffset=$,this.yogaNode.markDirty(),this.requestRender()}setHideLineNumbers($){this._hideLineNumbers=$,this.yogaNode.markDirty(),this.requestRender()}setLineNumbers($){this._lineNumbers=$,this.yogaNode.markDirty(),this.requestRender()}calculateSignWidths(){this._maxBeforeWidth=0,this._maxAfterWidth=0;for(let $ of this._lineSigns.values()){if($.before){let J=x0($.before);this._maxBeforeWidth=Math.max(this._maxBeforeWidth,J)}if($.after){let J=x0($.after);this._maxAfterWidth=Math.max(this._maxAfterWidth,J)}}}calculateWidth(){let J=this.target.virtualLineCount+this._lineNumberOffset;if(this._lineNumbers.size>0)for(let q of this._lineNumbers.values())J=Math.max(J,q);let Z=J>0?Math.floor(Math.log10(J))+1:1;return Math.max(this._minWidth,Z+this._paddingRight+1)+this._maxBeforeWidth+this._maxAfterWidth}setLineColors($,J){this._lineColorsGutter=$,this._lineColorsContent=J,this.requestRender()}get fg(){return this._fg}setFg($){if(this._fg!==$)this._fg=$,this.requestRender()}get bg(){return this._bg}setBg($){if(this._bg!==$)this._bg=$,this.requestRender()}getLineColors(){return{gutter:this._lineColorsGutter,content:this._lineColorsContent}}setLineSigns($){let J=this._maxBeforeWidth,Z=this._maxAfterWidth;if(this._lineSigns=$,this.calculateSignWidths(),this._maxBeforeWidth!==J||this._maxAfterWidth!==Z)this.yogaNode.markDirty();this.requestRender()}getLineSigns(){return this._lineSigns}renderSelf($){let J=this.target.scrollY,Z=J!==this._lastKnownScrollY;if(this.buffered&&!this.isDirty&&!Z)return;this._lastKnownScrollY=J,this.refreshFrameBuffer($)}refreshFrameBuffer($){let J=this.buffered?0:this.x,Z=this.buffered?0:this.y;if(this.buffered)$.clear(this._bg);else if(this._bg.a>0)$.fillRect(J,Z,this.width,this.height,this._bg);let Q=this.target.lineInfo;if(!Q||!Q.lineSources)return;let q=Q.lineSources,U=-1,G=this.target.scrollY;if(G>=q.length)return;U=G>0?q[G-1]:-1;for(let K=0;K<this.height;K++){let j=G+K;if(j>=q.length)break;let _=q[j],D=this._lineColorsGutter.get(_)??this._bg;if(D!==this._bg)$.fillRect(J,Z+K,this.width,1,D);if(_===U);else{let z=J,V=this._lineSigns.get(_);if(V?.before){let X=x0(V.before),Y=this._maxBeforeWidth-X;z+=Y;let H=V.beforeColor?O(V.beforeColor):this._fg;$.drawText(V.before,z,Z+K,H,D),z+=X}else if(this._maxBeforeWidth>0)z+=this._maxBeforeWidth;if(!this._hideLineNumbers.has(_)){let X=this._lineNumbers.get(_),H=(X!==void 0?X:_+1+this._lineNumberOffset).toString(),N=H.length,F=this.width-this._maxBeforeWidth-this._maxAfterWidth-this._paddingRight,P=J+this._maxBeforeWidth+1+F-N-1;if(P>=J+this._maxBeforeWidth+1)$.drawText(H,P,Z+K,this._fg,D)}if(V?.after){let X=J+this.width-this._paddingRight-this._maxAfterWidth,Y=V.afterColor?O(V.afterColor):this._fg;$.drawText(V.after,X,Z+K,Y,D)}}U=_}}}function N7($){return t.fromValues($.r*0.8,$.g*0.8,$.b*0.8,$.a)}class e0 extends x{gutter=null;target=null;_lineColorsGutter;_lineColorsContent;_lineSigns;_fg;_bg;_minWidth;_paddingRight;_lineNumberOffset;_hideLineNumbers;_lineNumbers;_isDestroying=!1;handleLineInfoChange=()=>{this.gutter?.remeasure(),this.requestRender()};parseLineColor($,J){if(typeof J==="object"&&"gutter"in J){let Z=J;if(Z.gutter)this._lineColorsGutter.set($,O(Z.gutter));if(Z.content)this._lineColorsContent.set($,O(Z.content));else if(Z.gutter)this._lineColorsContent.set($,N7(O(Z.gutter)))}else{let Z=O(J);this._lineColorsGutter.set($,Z),this._lineColorsContent.set($,N7(Z))}}constructor($,J){super($,{...J,flexDirection:"row",height:"auto"});if(this._fg=O(J.fg??P7),this._bg=O(J.bg??O7),this._minWidth=J.minWidth??3,this._paddingRight=J.paddingRight??1,this._lineNumberOffset=J.lineNumberOffset??0,this._hideLineNumbers=J.hideLineNumbers??new Set,this._lineNumbers=J.lineNumbers??new Map,this._lineColorsGutter=new Map,this._lineColorsContent=new Map,J.lineColors)for(let[Z,Q]of J.lineColors)this.parseLineColor(Z,Q);if(this._lineSigns=new Map,J.lineSigns)for(let[Z,Q]of J.lineSigns)this._lineSigns.set(Z,Q);if(J.target)this.setTarget(J.target)}setTarget($){if(this.target===$)return;if(this.target)this.target.off("line-info-change",this.handleLineInfoChange),super.remove(this.target.id);if(this.gutter)super.remove(this.gutter.id),this.gutter=null;this.target=$,this.target.on("line-info-change",this.handleLineInfoChange),this.gutter=new f7(this.ctx,this.target,{fg:this._fg,bg:this._bg,minWidth:this._minWidth,paddingRight:this._paddingRight,lineColorsGutter:this._lineColorsGutter,lineColorsContent:this._lineColorsContent,lineSigns:this._lineSigns,lineNumberOffset:this._lineNumberOffset,hideLineNumbers:this._hideLineNumbers,lineNumbers:this._lineNumbers,id:this.id?`${this.id}-gutter`:void 0,buffered:!0}),super.add(this.gutter),super.add(this.target)}add($){if(!this.target&&"lineInfo"in $&&"lineCount"in $&&"virtualLineCount"in $&&"scrollY"in $)return this.setTarget($),this.getChildrenCount()-1;return-1}remove($){if(this._isDestroying){super.remove($);return}if(this.gutter&&$===this.gutter.id)throw Error("LineNumberRenderable: Cannot remove gutter directly.");if(this.target&&$===this.target.id)throw Error("LineNumberRenderable: Cannot remove target directly. Use clearTarget() instead.");super.remove($)}destroyRecursively(){if(this._isDestroying=!0,this.target)this.target.off("line-info-change",this.handleLineInfoChange);super.destroyRecursively(),this.gutter=null,this.target=null}clearTarget(){if(this.target)this.target.off("line-info-change",this.handleLineInfoChange),super.remove(this.target.id),this.target=null;if(this.gutter)super.remove(this.gutter.id),this.gutter=null}renderSelf($){if(!this.target||!this.gutter)return;let J=this.target.lineInfo;if(!J||!J.lineSources)return;let Z=J.lineSources,Q=this.target.scrollY;if(Q>=Z.length)return;let q=this.gutter.visible?this.gutter.width:0,U=this.width-q;for(let G=0;G<this.height;G++){let K=Q+G;if(K>=Z.length)break;let j=Z[K],_=this._lineColorsContent.get(j);if(_)$.fillRect(this.x+q,this.y+G,U,1,_)}}set showLineNumbers($){if(this.gutter)this.gutter.visible=$}get showLineNumbers(){return this.gutter?.visible??!1}get fg(){return this._fg}set fg($){let J=O($??P7);if(this._fg!==J)this._fg=J,this.gutter?.setFg(J)}get bg(){return this._bg}set bg($){let J=O($??O7);if(this._bg!==J)this._bg=J,this.gutter?.setBg(J)}setLineColor($,J){if(this.parseLineColor($,J),this.gutter)this.gutter.setLineColors(this._lineColorsGutter,this._lineColorsContent)}clearLineColor($){if(this._lineColorsGutter.delete($),this._lineColorsContent.delete($),this.gutter)this.gutter.setLineColors(this._lineColorsGutter,this._lineColorsContent)}clearAllLineColors(){if(this._lineColorsGutter.clear(),this._lineColorsContent.clear(),this.gutter)this.gutter.setLineColors(this._lineColorsGutter,this._lineColorsContent)}setLineColors($){this._lineColorsGutter.clear(),this._lineColorsContent.clear();for(let[J,Z]of $)this.parseLineColor(J,Z);if(this.gutter)this.gutter.setLineColors(this._lineColorsGutter,this._lineColorsContent)}getLineColors(){return{gutter:this._lineColorsGutter,content:this._lineColorsContent}}setLineSign($,J){if(this._lineSigns.set($,J),this.gutter)this.gutter.setLineSigns(this._lineSigns)}clearLineSign($){if(this._lineSigns.delete($),this.gutter)this.gutter.setLineSigns(this._lineSigns)}clearAllLineSigns(){if(this._lineSigns.clear(),this.gutter)this.gutter.setLineSigns(this._lineSigns)}setLineSigns($){this._lineSigns.clear();for(let[J,Z]of $)this._lineSigns.set(J,Z);if(this.gutter)this.gutter.setLineSigns(this._lineSigns)}getLineSigns(){return this._lineSigns}set lineNumberOffset($){if(this._lineNumberOffset!==$){if(this._lineNumberOffset=$,this.gutter)this.gutter.setLineNumberOffset($)}}get lineNumberOffset(){return this._lineNumberOffset}setHideLineNumbers($){if(this._hideLineNumbers=$,this.gutter)this.gutter.setHideLineNumbers($)}getHideLineNumbers(){return this._hideLineNumbers}setLineNumbers($){if(this._lineNumbers=$,this.gutter)this.gutter.setLineNumbers($)}getLineNumbers(){return this._lineNumbers}highlightLines($,J,Z){for(let Q=$;Q<=J;Q++)this.parseLineColor(Q,Z);if(this.gutter)this.gutter.setLineColors(this._lineColorsGutter,this._lineColorsContent)}clearHighlightLines($,J){for(let Z=$;Z<=J;Z++)this._lineColorsGutter.delete(Z),this._lineColorsContent.delete(Z);if(this.gutter)this.gutter.setLineColors(this._lineColorsGutter,this._lineColorsContent)}}function YJ($){let J=$.split(/\n/),Z=[],Q=0;function q(Y){return/^diff --git /.test(Y)}function U(Y){return q(Y)||/^Index:\s/.test(Y)||/^diff(?: -r \w+)+\s/.test(Y)}function G(Y){return/^(---|\+\+\+)\s/.test(Y)}function K(Y){return/^@@\s/.test(Y)}function j(){var Y;let H={};H.hunks=[],Z.push(H);let N=!1;while(Q<J.length){let F=J[Q];if(G(F)||K(F))break;if(q(F)){if(N)return;N=!0,H.isGit=!0;let P=_(F);if(P)H.oldFileName=P.oldFileName,H.newFileName=P.newFileName;Q++;while(Q<J.length){let W=J[Q];if(G(W)||K(W)||U(W))break;let E=/^rename from (.*)/.exec(W);if(E)H.oldFileName="a/"+D(E[1]),H.isRename=!0;let B=/^rename to (.*)/.exec(W);if(B)H.newFileName="b/"+D(B[1]),H.isRename=!0;let p=/^copy from (.*)/.exec(W);if(p)H.oldFileName="a/"+D(p[1]),H.isCopy=!0;let c=/^copy to (.*)/.exec(W);if(c)H.newFileName="b/"+D(c[1]),H.isCopy=!0;let J0=/^new file mode (\d+)/.exec(W);if(J0)H.isCreate=!0,H.newMode=J0[1];let A=/^deleted file mode (\d+)/.exec(W);if(A)H.isDelete=!0,H.oldMode=A[1];let C=/^old mode (\d+)/.exec(W);if(C)H.oldMode=C[1];let y=/^new mode (\d+)/.exec(W);if(y)H.newMode=y[1];if(/^Binary files /.test(W))H.isBinary=!0;Q++}continue}else if(U(F)){if(N)return;N=!0;let P=/^(?:Index:|diff(?: -r \w+)+)\s+/.exec(F);if(P)H.index=F.substring(P[0].length).trim()}Q++}if(V(H),V(H),H.oldFileName===void 0!==(H.newFileName===void 0))throw Error("Missing "+(H.oldFileName!==void 0?'"+++ ..."':'"--- ..."')+" file header for "+((Y=H.oldFileName)!==null&&Y!==void 0?Y:H.newFileName));while(Q<J.length){let F=J[Q];if(U(F)||G(F)||/^===================================================================/.test(F))break;else if(K(F))H.hunks.push(X());else Q++}}function _(Y){let H=Y.substring(11);if(H.startsWith('"')){let F=z(H);if(F===null)return null;let P=H.substring(F.rawLength+1),W;if(P.startsWith('"')){let E=z(P);if(E===null)return null;W=E.fileName}else W=P;return{oldFileName:F.fileName,newFileName:W}}let N=H.indexOf('"');if(N>0){let F=H.substring(0,N-1),P=z(H.substring(N));if(P===null)return null;return{oldFileName:F,newFileName:P.fileName}}if(H.startsWith("a/")){let F=[],P=0;while(!0){if(P=H.indexOf(" b/",P+1),P===-1)break;F.push(P)}if(F.length>0){let W=F[Math.floor(F.length/2)];return{oldFileName:H.substring(0,W),newFileName:H.substring(W+1)}}}return null}function D(Y){if(Y.startsWith('"')){let H=z(Y);if(H)return H.fileName}return Y}function z(Y){if(!Y.startsWith('"'))return null;let H="",N=1;while(N<Y.length){if(Y[N]==='"')return{fileName:H,rawLength:N+1};if(Y[N]==="\\"&&N+1<Y.length)switch(N++,Y[N]){case"a":H+="\x07";break;case"b":H+="\b";break;case"f":H+="\f";break;case"n":H+=`
3
+ `;break;case"r":H+="\r";break;case"t":H+="\t";break;case"v":H+="\v";break;case"\\":H+="\\";break;case'"':H+='"';break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":{if(N+2>=Y.length||Y[N+1]<"0"||Y[N+1]>"7"||Y[N+2]<"0"||Y[N+2]>"7")return null;let F=[parseInt(Y.substring(N,N+3),8)];N+=3;while(Y[N]==="\\"&&Y[N+1]>="0"&&Y[N+1]<="7"){if(N+3>=Y.length||Y[N+2]<"0"||Y[N+2]>"7"||Y[N+3]<"0"||Y[N+3]>"7")return null;F.push(parseInt(Y.substring(N+1,N+4),8)),N+=4}H+=new TextDecoder("utf-8").decode(new Uint8Array(F));continue}default:return null}else H+=Y[N];N++}return null}function V(Y){let H=/^(---|\+\+\+)\s+/.exec(J[Q]);if(H){let N=H[1],F=J[Q].substring(3).trim().split("\t",2),P=(F[1]||"").trim(),W=F[0];if(W.startsWith('"'))W=D(W);else W=W.replace(/\\\\/g,"\\");if(N==="---")Y.oldFileName=W,Y.oldHeader=P;else Y.newFileName=W,Y.newHeader=P;Q++}}function X(){var Y;let H=Q,N=J[Q++],F=N.split(/@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/),P={oldStart:+F[1],oldLines:typeof F[2]>"u"?1:+F[2],newStart:+F[3],newLines:typeof F[4]>"u"?1:+F[4],lines:[]};if(P.oldLines===0)P.oldStart+=1;if(P.newLines===0)P.newStart+=1;let W=0,E=0;for(;Q<J.length&&(E<P.oldLines||W<P.newLines||((Y=J[Q])===null||Y===void 0?void 0:Y.startsWith("\\")));Q++){let B=J[Q].length==0&&Q!=J.length-1?" ":J[Q][0];if(B==="+"||B==="-"||B===" "||B==="\\"){if(P.lines.push(J[Q]),B==="+")W++;else if(B==="-")E++;else if(B===" ")W++,E++}else throw Error(`Hunk at line ${H+1} contained invalid line ${J[Q]}`)}if(!W&&P.newLines===1)P.newLines=0;if(!E&&P.oldLines===1)P.oldLines=0;if(W!==P.newLines)throw Error("Added line count did not match for hunk at line "+(H+1));if(E!==P.oldLines)throw Error("Removed line count did not match for hunk at line "+(H+1));if(Q<J.length&&J[Q]&&/^[+ -]/.test(J[Q])&&!G(J[Q]))throw Error("Hunk at line "+(H+1)+" has more lines than expected (expected "+P.oldLines+" old lines and "+P.newLines+" new lines)");return P}while(Q<J.length)j();return Z}class $6 extends x{_diff;_syncScroll=!1;_view;_parsedDiff=null;_parseError=null;_fg;_filetype;_syntaxStyle;_wrapMode;_conceal;_selectionBg;_selectionFg;_treeSitterClient;_showLineNumbers;_lineNumberFg;_lineNumberBg;_addedBg;_removedBg;_contextBg;_addedContentBg;_removedContentBg;_contextContentBg;_addedSignColor;_removedSignColor;_addedLineNumberBg;_removedLineNumberBg;leftSide=null;rightSide=null;leftSideAdded=!1;rightSideAdded=!1;leftCodeRenderable=null;rightCodeRenderable=null;pendingRebuild=!1;_lastWidth=0;errorTextRenderable=null;errorCodeRenderable=null;_waitingForHighlight=!1;_lineInfoChangeHandler=null;constructor($,J){super($,{...J,flexDirection:J.view==="split"?"row":"column"});if(this._diff=J.diff??"",this._syncScroll=J.syncScroll??!1,this._view=J.view??"unified",this._fg=J.fg?O(J.fg):void 0,this._filetype=J.filetype,this._syntaxStyle=J.syntaxStyle,this._wrapMode=J.wrapMode,this._conceal=J.conceal??!1,this._selectionBg=J.selectionBg?O(J.selectionBg):void 0,this._selectionFg=J.selectionFg?O(J.selectionFg):void 0,this._treeSitterClient=J.treeSitterClient,this._showLineNumbers=J.showLineNumbers??!0,this._lineNumberFg=O(J.lineNumberFg??"#888888"),this._lineNumberBg=O(J.lineNumberBg??"transparent"),this._addedBg=O(J.addedBg??"#1a4d1a"),this._removedBg=O(J.removedBg??"#4d1a1a"),this._contextBg=O(J.contextBg??"transparent"),this._addedContentBg=J.addedContentBg?O(J.addedContentBg):null,this._removedContentBg=J.removedContentBg?O(J.removedContentBg):null,this._contextContentBg=J.contextContentBg?O(J.contextContentBg):null,this._addedSignColor=O(J.addedSignColor??"#22c55e"),this._removedSignColor=O(J.removedSignColor??"#ef4444"),this._addedLineNumberBg=O(J.addedLineNumberBg??"transparent"),this._removedLineNumberBg=O(J.removedLineNumberBg??"transparent"),this._diff)this.parseDiff(),this.buildView()}parseDiff(){if(!this._diff){this._parsedDiff=null,this._parseError=null;return}try{let $=YJ(this._diff);if($.length===0){this._parsedDiff=null,this._parseError=null;return}this._parsedDiff=$[0],this._parseError=null}catch($){this._parsedDiff=null,this._parseError=$ instanceof Error?$:Error(String($))}}buildView(){if(this._parseError){this.buildErrorView();return}if(!this._parsedDiff||this._parsedDiff.hunks.length===0)return;if(this._view==="unified")this.buildUnifiedView();else this.buildSplitView()}onMouseEvent($){if($.type!=="scroll"||this._view!=="split"||!this._syncScroll)return;if(!this.leftCodeRenderable||!this.rightCodeRenderable)return;if(!$.target)return;if(this.isInsideSide($.target,"left"))this.rightCodeRenderable.scrollY=this.leftCodeRenderable.scrollY,this.rightCodeRenderable.scrollX=this.leftCodeRenderable.scrollX;else if(this.isInsideSide($.target,"right"))this.leftCodeRenderable.scrollY=this.rightCodeRenderable.scrollY,this.leftCodeRenderable.scrollX=this.rightCodeRenderable.scrollX}isInsideSide($,J){let Z=J==="left"?this.leftCodeRenderable:this.rightCodeRenderable,Q=$;while(Q){if(Q===Z)return!0;Q=Q.parent}return!1}onResize($,J){if(super.onResize($,J),this._view==="split"&&this._wrapMode!=="none"&&this._wrapMode!==void 0){if(this._lastWidth!==$)this._lastWidth=$,this.requestRebuild()}}requestRebuild(){if(this.pendingRebuild)return;this.pendingRebuild=!0,queueMicrotask(()=>{if(!this.isDestroyed&&this.pendingRebuild)this.pendingRebuild=!1,this.buildView(),this.requestRender()})}rebuildView(){if(this._view==="split")this.requestRebuild();else this.buildView()}handleLineInfoChange=()=>{if(!this._waitingForHighlight)return;if(!this.leftCodeRenderable||!this.rightCodeRenderable)return;let $=this.leftCodeRenderable.isHighlighting,J=this.rightCodeRenderable.isHighlighting;if(!$&&!J)this._waitingForHighlight=!1,this.requestRebuild()};attachLineInfoListeners(){if(this._lineInfoChangeHandler)return;if(!this.leftCodeRenderable||!this.rightCodeRenderable)return;this._lineInfoChangeHandler=this.handleLineInfoChange,this.leftCodeRenderable.on("line-info-change",this._lineInfoChangeHandler),this.rightCodeRenderable.on("line-info-change",this._lineInfoChangeHandler)}detachLineInfoListeners(){if(!this._lineInfoChangeHandler)return;if(this.leftCodeRenderable)this.leftCodeRenderable.off("line-info-change",this._lineInfoChangeHandler);if(this.rightCodeRenderable)this.rightCodeRenderable.off("line-info-change",this._lineInfoChangeHandler);this._lineInfoChangeHandler=null}destroyRecursively(){this.detachLineInfoListeners(),this.pendingRebuild=!1,this.leftSideAdded=!1,this.rightSideAdded=!1,super.destroyRecursively()}buildErrorView(){if(this.flexDirection="column",this.leftSide&&this.leftSideAdded)super.remove(this.leftSide.id),this.leftSideAdded=!1;if(this.rightSide&&this.rightSideAdded)super.remove(this.rightSide.id),this.rightSideAdded=!1;let $=`Error parsing diff: ${this._parseError?.message||"Unknown error"}
4
+ `;if(!this.errorTextRenderable)this.errorTextRenderable=new $0(this.ctx,{id:this.id?`${this.id}-error-text`:void 0,content:$,fg:"#ef4444",width:"100%",flexShrink:0}),super.add(this.errorTextRenderable);else if(this.errorTextRenderable.content=$,this.getChildren().indexOf(this.errorTextRenderable)===-1)super.add(this.errorTextRenderable);if(!this.errorCodeRenderable)this.errorCodeRenderable=new w(this.ctx,{id:this.id?`${this.id}-error-code`:void 0,content:this._diff,filetype:"diff",syntaxStyle:this._syntaxStyle??q0.create(),wrapMode:this._wrapMode,conceal:this._conceal,width:"100%",flexGrow:1,flexShrink:1,...this._treeSitterClient!==void 0&&{treeSitterClient:this._treeSitterClient}}),super.add(this.errorCodeRenderable);else{if(this.errorCodeRenderable.content=this._diff,this.errorCodeRenderable.wrapMode=this._wrapMode??"none",this._syntaxStyle)this.errorCodeRenderable.syntaxStyle=this._syntaxStyle;if(this.getChildren().indexOf(this.errorCodeRenderable)===-1)super.add(this.errorCodeRenderable)}}createOrUpdateCodeRenderable($,J,Z,Q){let q=$==="left"?this.leftCodeRenderable:this.rightCodeRenderable;if(!q){let U={id:this.id?`${this.id}-${$}-code`:void 0,content:J,filetype:this._filetype,wrapMode:Z,conceal:this._conceal,syntaxStyle:this._syntaxStyle??q0.create(),width:"100%",height:"100%",...this._fg!==void 0&&{fg:this._fg},...Q!==void 0&&{drawUnstyledText:Q},...this._selectionBg!==void 0&&{selectionBg:this._selectionBg},...this._selectionFg!==void 0&&{selectionFg:this._selectionFg},...this._treeSitterClient!==void 0&&{treeSitterClient:this._treeSitterClient}},G=new w(this.ctx,U);if($==="left")this.leftCodeRenderable=G;else this.rightCodeRenderable=G;return G}else{if(q.content=J,q.wrapMode=Z??"none",q.conceal=this._conceal,Q!==void 0)q.drawUnstyledText=Q;if(this._filetype!==void 0)q.filetype=this._filetype;if(this._syntaxStyle!==void 0)q.syntaxStyle=this._syntaxStyle;if(this._selectionBg!==void 0)q.selectionBg=this._selectionBg;if(this._selectionFg!==void 0)q.selectionFg=this._selectionFg;if(this._fg!==void 0)q.fg=this._fg;return q}}createOrUpdateSide($,J,Z,Q,q,U,G){let K=$==="left"?this.leftSide:this.rightSide,j=$==="left"?this.leftSideAdded:this.rightSideAdded;if(!K){let _=new e0(this.ctx,{id:this.id?`${this.id}-${$}`:void 0,target:J,fg:this._lineNumberFg,bg:this._lineNumberBg,lineColors:Z,lineSigns:Q,lineNumbers:q,lineNumberOffset:0,hideLineNumbers:U,width:G,height:"100%"});if(_.showLineNumbers=this._showLineNumbers,super.add(_),$==="left")this.leftSide=_,this.leftSideAdded=!0;else this.rightSide=_,this.rightSideAdded=!0}else if(K.width=G,K.fg=this._lineNumberFg,K.bg=this._lineNumberBg,K.setLineColors(Z),K.setLineSigns(Q),K.setLineNumbers(q),K.setHideLineNumbers(U),!j)if(super.add(K),$==="left")this.leftSideAdded=!0;else this.rightSideAdded=!0}buildUnifiedView(){if(!this._parsedDiff)return;if(this.flexDirection="column",this.errorTextRenderable){if(this.getChildren().indexOf(this.errorTextRenderable)!==-1)super.remove(this.errorTextRenderable.id)}if(this.errorCodeRenderable){if(this.getChildren().indexOf(this.errorCodeRenderable)!==-1)super.remove(this.errorCodeRenderable.id)}let $=[],J=new Map,Z=new Map,Q=new Map,q=0;for(let K of this._parsedDiff.hunks){let{oldStart:j,newStart:_}=K;for(let D of K.lines){let z=D[0],V=D.slice(1);if(z==="+"){$.push(V);let X={gutter:this._addedLineNumberBg};if(this._addedContentBg)X.content=this._addedContentBg;else X.content=this._addedBg;J.set(q,X),Z.set(q,{after:" +",afterColor:this._addedSignColor}),Q.set(q,_),_++,q++}else if(z==="-"){$.push(V);let X={gutter:this._removedLineNumberBg};if(this._removedContentBg)X.content=this._removedContentBg;else X.content=this._removedBg;J.set(q,X),Z.set(q,{after:" -",afterColor:this._removedSignColor}),Q.set(q,j),j++,q++}else if(z===" "){$.push(V);let X={gutter:this._lineNumberBg};if(this._contextContentBg)X.content=this._contextContentBg;else X.content=this._contextBg;J.set(q,X),Q.set(q,_),j++,_++,q++}}}let U=$.join(`
5
+ `),G=this.createOrUpdateCodeRenderable("left",U,this._wrapMode);if(this.createOrUpdateSide("left",G,J,Z,Q,new Set,"100%"),this.rightSide&&this.rightSideAdded)super.remove(this.rightSide.id),this.rightSideAdded=!1}buildSplitView(){if(!this._parsedDiff)return;if(this.flexDirection="row",this.errorTextRenderable){if(this.getChildren().indexOf(this.errorTextRenderable)!==-1)super.remove(this.errorTextRenderable.id)}if(this.errorCodeRenderable){if(this.getChildren().indexOf(this.errorCodeRenderable)!==-1)super.remove(this.errorCodeRenderable.id)}let $=[],J=[];for(let A of this._parsedDiff.hunks){let{oldStart:C,newStart:y}=A,o=0;while(o<A.lines.length){let _0=A.lines[o],D0=_0[0];if(D0===" "){let R=_0.slice(1);$.push({content:R,lineNum:C,color:this._contextBg,type:"context"}),J.push({content:R,lineNum:y,color:this._contextBg,type:"context"}),C++,y++,o++}else if(D0==="\\")o++;else{let R=[],m=[];while(o<A.lines.length){let T=A.lines[o],z0=T[0];if(z0===" "||z0==="\\")break;let q8=T.slice(1);if(z0==="-")R.push({content:q8,lineNum:C}),C++;else if(z0==="+")m.push({content:q8,lineNum:y}),y++;o++}let v=Math.max(R.length,m.length);for(let T=0;T<v;T++){if(T<R.length)$.push({content:R[T].content,lineNum:R[T].lineNum,color:this._removedBg,sign:{after:" -",afterColor:this._removedSignColor},type:"remove"});else $.push({content:"",hideLineNumber:!0,type:"empty"});if(T<m.length)J.push({content:m[T].content,lineNum:m[T].lineNum,color:this._addedBg,sign:{after:" +",afterColor:this._addedSignColor},type:"add"});else J.push({content:"",hideLineNumber:!0,type:"empty"})}}}}let Z=this.width>0&&(this._wrapMode==="word"||this._wrapMode==="char"),Q=$.map((A)=>A.content).join(`
6
+ `),q=J.map((A)=>A.content).join(`
7
+ `),U=(this._wrapMode==="word"||this._wrapMode==="char")&&this._conceal&&this._filetype,G=!U,K=this.createOrUpdateCodeRenderable("left",Q,this._wrapMode,G),j=this.createOrUpdateCodeRenderable("right",q,this._wrapMode,G),_,D,z=K.isHighlighting,V=j.isHighlighting,X=U&&(z||V);if(X)this._waitingForHighlight=!0,this.attachLineInfoListeners();if(Z&&!X){let A=K.lineInfo,C=j.lineInfo,y=A.lineSources||[],o=C.lineSources||[],_0=new Map,D0=new Map;for(let v of y)_0.set(v,(_0.get(v)||0)+1);for(let v of o)D0.set(v,(D0.get(v)||0)+1);_=[],D=[];let R=0,m=0;for(let v=0;v<$.length;v++){let T=$[v],z0=J[v],q8=_0.get(v)||1,i7=D0.get(v)||1;if(R<m){let I0=m-R;for(let R0=0;R0<I0;R0++)_.push({content:"",hideLineNumber:!0,type:"empty"});R+=I0}else if(m<R){let I0=R-m;for(let R0=0;R0<I0;R0++)D.push({content:"",hideLineNumber:!0,type:"empty"});m+=I0}_.push(T),D.push(z0),R+=q8,m+=i7}if(R<m){let v=m-R;for(let T=0;T<v;T++)_.push({content:"",hideLineNumber:!0,type:"empty"})}else if(m<R){let v=R-m;for(let T=0;T<v;T++)D.push({content:"",hideLineNumber:!0,type:"empty"})}}else _=$,D=J;let H=new Map,N=new Map,F=new Map,P=new Map,W=new Set,E=new Set,B=new Map,p=new Map;_.forEach((A,C)=>{if(A.lineNum!==void 0)B.set(C,A.lineNum);if(A.hideLineNumber)W.add(C);if(A.type==="remove"){let y={gutter:this._removedLineNumberBg};if(this._removedContentBg)y.content=this._removedContentBg;else y.content=this._removedBg;H.set(C,y)}else if(A.type==="context"){let y={gutter:this._lineNumberBg};if(this._contextContentBg)y.content=this._contextContentBg;else y.content=this._contextBg;H.set(C,y)}if(A.sign)F.set(C,A.sign)}),D.forEach((A,C)=>{if(A.lineNum!==void 0)p.set(C,A.lineNum);if(A.hideLineNumber)E.add(C);if(A.type==="add"){let y={gutter:this._addedLineNumberBg};if(this._addedContentBg)y.content=this._addedContentBg;else y.content=this._addedBg;N.set(C,y)}else if(A.type==="context"){let y={gutter:this._lineNumberBg};if(this._contextContentBg)y.content=this._contextContentBg;else y.content=this._contextBg;N.set(C,y)}if(A.sign)P.set(C,A.sign)});let c=_.map((A)=>A.content).join(`
8
+ `),J0=D.map((A)=>A.content).join(`
9
+ `);K.content=c,j.content=J0,this.createOrUpdateSide("left",K,H,F,B,W,"50%"),this.createOrUpdateSide("right",j,N,P,p,E,"50%")}get diff(){return this._diff}set diff($){if(this._diff!==$)this._diff=$,this._waitingForHighlight=!1,this.parseDiff(),this.rebuildView()}get syncScroll(){return this._syncScroll}set syncScroll($){if(this._syncScroll!==$){if(this._syncScroll=$,!$)this.detachLineInfoListeners()}}get view(){return this._view}set view($){if(this._view!==$)this._view=$,this.flexDirection=$==="split"?"row":"column",this.buildView()}get filetype(){return this._filetype}set filetype($){if(this._filetype!==$)this._filetype=$,this.rebuildView()}get syntaxStyle(){return this._syntaxStyle}set syntaxStyle($){if(this._syntaxStyle!==$)this._syntaxStyle=$,this.rebuildView()}get wrapMode(){return this._wrapMode}set wrapMode($){if(this._wrapMode!==$){if(this._wrapMode=$,this._view==="unified"&&this.leftCodeRenderable)this.leftCodeRenderable.wrapMode=$??"none";else if(this._view==="split")this.requestRebuild()}}get showLineNumbers(){return this._showLineNumbers}set showLineNumbers($){if(this._showLineNumbers!==$){if(this._showLineNumbers=$,this.leftSide)this.leftSide.showLineNumbers=$;if(this.rightSide)this.rightSide.showLineNumbers=$}}get addedBg(){return this._addedBg}set addedBg($){let J=O($);if(this._addedBg!==J)this._addedBg=J,this.rebuildView()}get removedBg(){return this._removedBg}set removedBg($){let J=O($);if(this._removedBg!==J)this._removedBg=J,this.rebuildView()}get contextBg(){return this._contextBg}set contextBg($){let J=O($);if(this._contextBg!==J)this._contextBg=J,this.rebuildView()}get addedSignColor(){return this._addedSignColor}set addedSignColor($){let J=O($);if(this._addedSignColor!==J)this._addedSignColor=J,this.rebuildView()}get removedSignColor(){return this._removedSignColor}set removedSignColor($){let J=O($);if(this._removedSignColor!==J)this._removedSignColor=J,this.rebuildView()}get addedLineNumberBg(){return this._addedLineNumberBg}set addedLineNumberBg($){let J=O($);if(this._addedLineNumberBg!==J)this._addedLineNumberBg=J,this.rebuildView()}get removedLineNumberBg(){return this._removedLineNumberBg}set removedLineNumberBg($){let J=O($);if(this._removedLineNumberBg!==J)this._removedLineNumberBg=J,this.rebuildView()}get lineNumberFg(){return this._lineNumberFg}set lineNumberFg($){let J=O($);if(this._lineNumberFg!==J)this._lineNumberFg=J,this.rebuildView()}get lineNumberBg(){return this._lineNumberBg}set lineNumberBg($){let J=O($);if(this._lineNumberBg!==J)this._lineNumberBg=J,this.rebuildView()}get addedContentBg(){return this._addedContentBg}set addedContentBg($){let J=$?O($):null;if(this._addedContentBg!==J)this._addedContentBg=J,this.rebuildView()}get removedContentBg(){return this._removedContentBg}set removedContentBg($){let J=$?O($):null;if(this._removedContentBg!==J)this._removedContentBg=J,this.rebuildView()}get contextContentBg(){return this._contextContentBg}set contextContentBg($){let J=$?O($):null;if(this._contextContentBg!==J)this._contextContentBg=J,this.rebuildView()}get selectionBg(){return this._selectionBg}set selectionBg($){let J=$?O($):void 0;if(this._selectionBg!==J){if(this._selectionBg=J,this.leftCodeRenderable)this.leftCodeRenderable.selectionBg=J;if(this.rightCodeRenderable)this.rightCodeRenderable.selectionBg=J}}get selectionFg(){return this._selectionFg}set selectionFg($){let J=$?O($):void 0;if(this._selectionFg!==J){if(this._selectionFg=J,this.leftCodeRenderable)this.leftCodeRenderable.selectionFg=J;if(this.rightCodeRenderable)this.rightCodeRenderable.selectionFg=J}}get conceal(){return this._conceal}set conceal($){if(this._conceal!==$)this._conceal=$,this.rebuildView()}get fg(){return this._fg}set fg($){let J=$?O($):void 0;if(this._fg!==J){if(this._fg=J,this.leftCodeRenderable)this.leftCodeRenderable.fg=J;if(this.rightCodeRenderable)this.rightCodeRenderable.fg=J}}setLineColor($,J){this.leftSide?.setLineColor($,J),this.rightSide?.setLineColor($,J)}clearLineColor($){this.leftSide?.clearLineColor($),this.rightSide?.clearLineColor($)}setLineColors($){this.leftSide?.setLineColors($),this.rightSide?.setLineColors($)}clearAllLineColors(){this.leftSide?.clearAllLineColors(),this.rightSide?.clearAllLineColors()}highlightLines($,J,Z){this.leftSide?.highlightLines($,J,Z),this.rightSide?.highlightLines($,J,Z)}clearHighlightLines($,J){this.leftSide?.clearHighlightLines($,J),this.rightSide?.clearHighlightLines($,J)}}var Y0=[{name:"left",action:"move-left"},{name:"right",action:"move-right"},{name:"up",action:"move-up"},{name:"down",action:"move-down"},{name:"left",shift:!0,action:"select-left"},{name:"right",shift:!0,action:"select-right"},{name:"up",shift:!0,action:"select-up"},{name:"down",shift:!0,action:"select-down"},{name:"home",action:"buffer-home"},{name:"end",action:"buffer-end"},{name:"home",shift:!0,action:"select-buffer-home"},{name:"end",shift:!0,action:"select-buffer-end"},{name:"a",ctrl:!0,action:"line-home"},{name:"e",ctrl:!0,action:"line-end"},{name:"a",ctrl:!0,shift:!0,action:"select-line-home"},{name:"e",ctrl:!0,shift:!0,action:"select-line-end"},{name:"a",meta:!0,action:"visual-line-home"},{name:"e",meta:!0,action:"visual-line-end"},{name:"a",meta:!0,shift:!0,action:"select-visual-line-home"},{name:"e",meta:!0,shift:!0,action:"select-visual-line-end"},{name:"f",ctrl:!0,action:"move-right"},{name:"b",ctrl:!0,action:"move-left"},{name:"w",ctrl:!0,action:"delete-word-backward"},{name:"backspace",ctrl:!0,action:"delete-word-backward"},{name:"d",meta:!0,action:"delete-word-forward"},{name:"delete",meta:!0,action:"delete-word-forward"},{name:"delete",ctrl:!0,action:"delete-word-forward"},{name:"d",ctrl:!0,shift:!0,action:"delete-line"},{name:"k",ctrl:!0,action:"delete-to-line-end"},{name:"u",ctrl:!0,action:"delete-to-line-start"},{name:"backspace",action:"backspace"},{name:"backspace",shift:!0,action:"backspace"},{name:"d",ctrl:!0,action:"delete"},{name:"delete",action:"delete"},{name:"delete",shift:!0,action:"delete"},{name:"return",action:"newline"},{name:"kpenter",action:"newline"},{name:"linefeed",action:"newline"},{name:"return",meta:!0,action:"submit"},{name:"kpenter",meta:!0,action:"submit"},{name:"-",ctrl:!0,action:"undo"},{name:".",ctrl:!0,action:"redo"},{name:"z",super:!0,action:"undo"},{name:"z",super:!0,shift:!0,action:"redo"},{name:"f",meta:!0,action:"word-forward"},{name:"b",meta:!0,action:"word-backward"},{name:"right",meta:!0,action:"word-forward"},{name:"left",meta:!0,action:"word-backward"},{name:"right",ctrl:!0,action:"word-forward"},{name:"left",ctrl:!0,action:"word-backward"},{name:"f",meta:!0,shift:!0,action:"select-word-forward"},{name:"b",meta:!0,shift:!0,action:"select-word-backward"},{name:"right",meta:!0,shift:!0,action:"select-word-forward"},{name:"left",meta:!0,shift:!0,action:"select-word-backward"},{name:"backspace",meta:!0,action:"delete-word-backward"},{name:"left",super:!0,action:"visual-line-home"},{name:"right",super:!0,action:"visual-line-end"},{name:"up",super:!0,action:"buffer-home"},{name:"down",super:!0,action:"buffer-end"},{name:"left",super:!0,shift:!0,action:"select-visual-line-home"},{name:"right",super:!0,shift:!0,action:"select-visual-line-end"},{name:"up",super:!0,shift:!0,action:"select-buffer-home"},{name:"down",super:!0,shift:!0,action:"select-buffer-end"},{name:"a",super:!0,action:"select-all"}];class d extends r0{_placeholder;_placeholderColor;_unfocusedBackgroundColor;_unfocusedTextColor;_focusedBackgroundColor;_focusedTextColor;_keyBindingsMap;_keyAliasMap;_keyBindings;_actionHandlers;_initialValueSet=!1;_submitListener=void 0;static defaults={backgroundColor:"transparent",textColor:"#FFFFFF",focusedBackgroundColor:"transparent",focusedTextColor:"#FFFFFF",placeholder:null,placeholderColor:"#666666"};constructor($,J){let Z=d.defaults,Q={...J,backgroundColor:J.backgroundColor||Z.backgroundColor,textColor:J.textColor||Z.textColor};super($,Q);this._unfocusedBackgroundColor=O(J.backgroundColor||Z.backgroundColor),this._unfocusedTextColor=O(J.textColor||Z.textColor),this._focusedBackgroundColor=O(J.focusedBackgroundColor||J.backgroundColor||Z.focusedBackgroundColor),this._focusedTextColor=O(J.focusedTextColor||J.textColor||Z.focusedTextColor),this._placeholder=J.placeholder??Z.placeholder,this._placeholderColor=O(J.placeholderColor??Z.placeholderColor),this._keyAliasMap=G0(U0,J.keyAliasMap||{}),this._keyBindings=J.keyBindings||[];let q=l(Y0,this._keyBindings);if(this._keyBindingsMap=r(q,this._keyAliasMap),this._actionHandlers=this.buildActionHandlers(),this._submitListener=J.onSubmit,J.initialValue)this.setText(J.initialValue),this._initialValueSet=!0;this.updateColors(),this.applyPlaceholder(this._placeholder)}applyPlaceholder($){if($===null){this.editorView.setPlaceholderStyledText([]);return}if(typeof $==="string"){let Z=[g0(this._placeholderColor)($)];this.editorView.setPlaceholderStyledText(Z)}else this.editorView.setPlaceholderStyledText($.chunks)}buildActionHandlers(){return new Map([["move-left",()=>this.moveCursorLeft()],["move-right",()=>this.moveCursorRight()],["move-up",()=>this.moveCursorUp()],["move-down",()=>this.moveCursorDown()],["select-left",()=>this.moveCursorLeft({select:!0})],["select-right",()=>this.moveCursorRight({select:!0})],["select-up",()=>this.moveCursorUp({select:!0})],["select-down",()=>this.moveCursorDown({select:!0})],["line-home",()=>this.gotoLineHome()],["line-end",()=>this.gotoLineEnd()],["select-line-home",()=>this.gotoLineHome({select:!0})],["select-line-end",()=>this.gotoLineEnd({select:!0})],["visual-line-home",()=>this.gotoVisualLineHome()],["visual-line-end",()=>this.gotoVisualLineEnd()],["select-visual-line-home",()=>this.gotoVisualLineHome({select:!0})],["select-visual-line-end",()=>this.gotoVisualLineEnd({select:!0})],["select-buffer-home",()=>this.gotoBufferHome({select:!0})],["select-buffer-end",()=>this.gotoBufferEnd({select:!0})],["buffer-home",()=>this.gotoBufferHome()],["buffer-end",()=>this.gotoBufferEnd()],["delete-line",()=>this.deleteLine()],["delete-to-line-end",()=>this.deleteToLineEnd()],["delete-to-line-start",()=>this.deleteToLineStart()],["backspace",()=>this.deleteCharBackward()],["delete",()=>this.deleteChar()],["newline",()=>this.newLine()],["undo",()=>this.undo()],["redo",()=>this.redo()],["word-forward",()=>this.moveWordForward()],["word-backward",()=>this.moveWordBackward()],["select-word-forward",()=>this.moveWordForward({select:!0})],["select-word-backward",()=>this.moveWordBackward({select:!0})],["delete-word-forward",()=>this.deleteWordForward()],["delete-word-backward",()=>this.deleteWordBackward()],["select-all",()=>this.selectAll()],["submit",()=>this.submit()]])}handlePaste($){this.insertText(M0(A0($.bytes)))}handleKeyPress($){if(this.traits.suspend!==!0){let J=w5(this._keyBindingsMap,$);if(J){let Z=this._actionHandlers.get(J);if(Z)return Z()}}if(!$.ctrl&&!$.meta&&!$.super&&!$.hyper){if($.name==="space")return this.insertText(" "),!0;if($.sequence){let J=$.sequence.charCodeAt(0);if(J<32)return!1;if(J===127)return!1;return this.insertText($.sequence),!0}}return!1}updateColors(){let $=this._focused?this._focusedBackgroundColor:this._unfocusedBackgroundColor,J=this._focused?this._focusedTextColor:this._unfocusedTextColor;super.backgroundColor=$,super.textColor=J}focus(){super.focus(),this.updateColors()}blur(){if(super.blur(),!this.isDestroyed)this.updateColors()}get placeholder(){return this._placeholder}set placeholder($){let J=$??null;if(this._placeholder!==J)this._placeholder=J,this.applyPlaceholder(J),this.requestRender()}get placeholderColor(){return this._placeholderColor}set placeholderColor($){let J=O($??d.defaults.placeholderColor);if(this._placeholderColor!==J)this._placeholderColor=J,this.applyPlaceholder(this._placeholder),this.requestRender()}get backgroundColor(){return this._unfocusedBackgroundColor}set backgroundColor($){let J=O($??d.defaults.backgroundColor);if(this._unfocusedBackgroundColor!==J)this._unfocusedBackgroundColor=J,this.updateColors()}get textColor(){return this._unfocusedTextColor}set textColor($){let J=O($??d.defaults.textColor);if(this._unfocusedTextColor!==J)this._unfocusedTextColor=J,this.updateColors()}set focusedBackgroundColor($){let J=O($??d.defaults.focusedBackgroundColor);if(this._focusedBackgroundColor!==J)this._focusedBackgroundColor=J,this.updateColors()}set focusedTextColor($){let J=O($??d.defaults.focusedTextColor);if(this._focusedTextColor!==J)this._focusedTextColor=J,this.updateColors()}set initialValue($){if(!this._initialValueSet)this.setText($),this._initialValueSet=!0}submit(){if(this._submitListener)this._submitListener({});return!0}set onSubmit($){this._submitListener=$}get onSubmit(){return this._submitListener}set keyBindings($){this._keyBindings=$;let J=l(Y0,$);this._keyBindingsMap=r(J,this._keyAliasMap)}set keyAliasMap($){this._keyAliasMap=G0(U0,$);let J=l(Y0,this._keyBindings);this._keyBindingsMap=r(J,this._keyAliasMap)}get extmarks(){return this.editorView.extmarks}}var J6;(($)=>{$.INPUT="input",$.CHANGE="change",$.ENTER="enter"})(J6||={});class C0 extends d{_maxLength;_minLength;_lastCommittedValue="";static defaultOptions={placeholder:"",maxLength:1000,minLength:0,value:""};constructor($,J){let Z=C0.defaultOptions,Q=J.maxLength??Z.maxLength,q=J.minLength??Z.minLength,G=(J.value??Z.value).replace(/[\n\r]/g,"").substring(0,Q);if(q>Q)throw Error(`InputRenderable: minLength (${q}) cannot be greater than maxLength (${Q})`);super($,{...J,placeholder:J.placeholder??Z.placeholder,initialValue:G,height:1,wrapMode:"none",keyBindings:[{name:"return",action:"submit"},{name:"kpenter",action:"submit"},{name:"linefeed",action:"submit"},...J.keyBindings||[]]});if(this._maxLength=Q,this._minLength=q,this._lastCommittedValue=this.plainText,G)this.cursorOffset=G.length}newLine(){return!1}handlePaste($){let J=M0(A0($.bytes)).replace(/[\n\r]/g,"");if(J)this.insertText(J)}insertText($){let J=$.replace(/[\n\r]/g,"");if(!J)return;let Z=this.plainText.length,Q=this._maxLength-Z;if(Q<=0)return;let q=J.substring(0,Q);super.insertText(q),this.emit("input",this.plainText)}get value(){return this.plainText}set value($){let J=$.substring(0,this._maxLength).replace(/[\n\r]/g,"");if(this.plainText!==J)this.setText(J),this.cursorOffset=J.length,this.emit("input",J)}focus(){super.focus(),this._lastCommittedValue=this.plainText}blur(){if(!this.isDestroyed){let $=this.plainText;if($!==this._lastCommittedValue)this._lastCommittedValue=$,this.emit("change",$)}super.blur()}submit(){let $=this.plainText;if($.length<this._minLength)return!1;if($!==this._lastCommittedValue)this._lastCommittedValue=$,this.emit("change",$);return this.emit("enter",$),!0}deleteCharBackward(){let $=super.deleteCharBackward();return this.emit("input",this.plainText),$}deleteChar(){let $=super.deleteChar();return this.emit("input",this.plainText),$}deleteLine(){let $=super.deleteLine();return this.emit("input",this.plainText),$}deleteWordBackward(){let $=super.deleteWordBackward();return this.emit("input",this.plainText),$}deleteWordForward(){let $=super.deleteWordForward();return this.emit("input",this.plainText),$}deleteToLineStart(){let $=super.deleteToLineStart();return this.emit("input",this.plainText),$}deleteToLineEnd(){let $=super.deleteToLineEnd();return this.emit("input",this.plainText),$}undo(){let $=super.undo();return this.emit("input",this.plainText),$}redo(){let $=super.redo();return this.emit("input",this.plainText),$}deleteCharacter($){if($==="backward")this.deleteCharBackward();else this.deleteChar()}set maxLength($){this._maxLength=$;let J=this.plainText;if(J.length>$)this.setText(J.substring(0,$))}get maxLength(){return this._maxLength}set minLength($){if($>this._maxLength)throw Error(`InputRenderable: minLength (${$}) cannot be greater than maxLength (${this._maxLength})`);this._minLength=$}get minLength(){return this._minLength}set placeholder($){super.placeholder=$}get placeholder(){let $=super.placeholder;return typeof $==="string"?$:""}set initialValue($){}}var F7=1e4;class s extends x{_content;_wrapMode;_columnWidthMode;_columnFitter;_cellPaddingX;_cellPaddingY;_columnGap;_showBorders;_border;_outerBorder;_hasExplicitOuterBorder;_borderStyle;_borderColor;_borderBackgroundColor;_backgroundColor;_defaultFg;_defaultBg;_defaultAttributes;_selectionBg;_selectionFg;_lastLocalSelection=null;_lastSelectionMode=null;_cells=[];_prevCellContent=[];_rowCount=0;_columnCount=0;_layout=this.createEmptyLayout();_layoutDirty=!0;_rasterDirty=!0;_cachedMeasureLayout=null;_cachedMeasureWidth=void 0;_defaultOptions={content:[],wrapMode:"word",columnWidthMode:"full",columnFitter:"proportional",cellPadding:0,cellPaddingX:void 0,cellPaddingY:void 0,columnGap:0,showBorders:!0,border:!0,outerBorder:!0,selectable:!0,selectionBg:void 0,selectionFg:void 0,borderStyle:"single",borderColor:"#FFFFFF",borderBackgroundColor:"transparent",backgroundColor:"transparent",fg:"#FFFFFF",bg:"transparent",attributes:0};constructor($,J={}){super($,{...J,flexShrink:J.flexShrink??0,buffered:!0});this._content=J.content??this._defaultOptions.content,this._wrapMode=J.wrapMode??this._defaultOptions.wrapMode,this._columnWidthMode=J.columnWidthMode??this._defaultOptions.columnWidthMode,this._columnFitter=this.resolveColumnFitter(J.columnFitter),this._cellPaddingX=this.resolveCellPadding(J.cellPaddingX??J.cellPadding),this._cellPaddingY=this.resolveCellPadding(J.cellPaddingY??J.cellPadding),this._columnGap=this.resolveColumnGap(J.columnGap),this._showBorders=J.showBorders??this._defaultOptions.showBorders,this._border=J.border??this._defaultOptions.border,this._hasExplicitOuterBorder=J.outerBorder!==void 0,this._outerBorder=J.outerBorder??this._border,this.selectable=J.selectable??this._defaultOptions.selectable,this._selectionBg=J.selectionBg?O(J.selectionBg):void 0,this._selectionFg=J.selectionFg?O(J.selectionFg):void 0,this._borderStyle=V0(J.borderStyle,this._defaultOptions.borderStyle),this._borderColor=O(J.borderColor??this._defaultOptions.borderColor),this._borderBackgroundColor=O(J.borderBackgroundColor??this._defaultOptions.borderBackgroundColor),this._backgroundColor=O(J.backgroundColor??this._defaultOptions.backgroundColor),this._defaultFg=O(J.fg??this._defaultOptions.fg),this._defaultBg=O(J.bg??this._defaultOptions.bg),this._defaultAttributes=J.attributes??this._defaultOptions.attributes,this.setupMeasureFunc(),this.rebuildCells()}get content(){return this._content}set content($){this._content=$??[],this.rebuildCells()}get wrapMode(){return this._wrapMode}set wrapMode($){if(this._wrapMode===$)return;this._wrapMode=$;for(let J of this._cells)for(let Z of J)Z.textBufferView.setWrapMode($);this.invalidateLayoutAndRaster()}get columnWidthMode(){return this._columnWidthMode}set columnWidthMode($){if(this._columnWidthMode===$)return;this._columnWidthMode=$,this.invalidateLayoutAndRaster()}get columnFitter(){return this._columnFitter}set columnFitter($){let J=this.resolveColumnFitter($);if(this._columnFitter===J)return;this._columnFitter=J,this.invalidateLayoutAndRaster()}get cellPadding(){return this._cellPaddingX===this._cellPaddingY?this._cellPaddingX:0}set cellPadding($){let J=this.resolveCellPadding($);if(this._cellPaddingX===J&&this._cellPaddingY===J)return;this._cellPaddingX=J,this._cellPaddingY=J,this.invalidateLayoutAndRaster()}get cellPaddingX(){return this._cellPaddingX}set cellPaddingX($){let J=this.resolveCellPadding($);if(this._cellPaddingX===J)return;this._cellPaddingX=J,this.invalidateLayoutAndRaster()}get cellPaddingY(){return this._cellPaddingY}set cellPaddingY($){let J=this.resolveCellPadding($);if(this._cellPaddingY===J)return;this._cellPaddingY=J,this.invalidateLayoutAndRaster()}get columnGap(){return this._columnGap}set columnGap($){let J=this.resolveColumnGap($);if(this._columnGap===J)return;this._columnGap=J,this.invalidateLayoutAndRaster()}get showBorders(){return this._showBorders}set showBorders($){if(this._showBorders===$)return;this._showBorders=$,this.invalidateRasterOnly()}get outerBorder(){return this._outerBorder}set outerBorder($){if(this._outerBorder===$)return;this._hasExplicitOuterBorder=!0,this._outerBorder=$,this.invalidateLayoutAndRaster()}get border(){return this._border}set border($){if(this._border===$)return;if(this._border=$,!this._hasExplicitOuterBorder)this._outerBorder=$;this.invalidateLayoutAndRaster()}get borderStyle(){return this._borderStyle}set borderStyle($){let J=V0($,this._defaultOptions.borderStyle);if(this._borderStyle===J)return;this._borderStyle=J,this.invalidateRasterOnly()}get borderColor(){return this._borderColor}set borderColor($){let J=O($);if(this._borderColor===J)return;this._borderColor=J,this.invalidateRasterOnly()}shouldStartSelection($,J){if(!this.selectable)return!1;this.ensureLayoutReady();let Z=$-this.x,Q=J-this.y;return this.getCellAtLocalPosition(Z,Q)!==null}onSelectionChanged($){this.ensureLayoutReady();let J=this._lastLocalSelection,Z=E0($,this.x,this.y);this._lastLocalSelection=Z;let Q=this.getDirtySelectionRowRange(J,Z);if(!Z?.isActive)this.resetCellSelections(),this._lastSelectionMode=null;else this.applySelectionToCells(Z,$?.isStart??!1);if(Q!==null)this.redrawSelectionRows(Q.firstRow,Q.lastRow);return this.hasSelection()}hasSelection(){for(let $ of this._cells)for(let J of $)if(J.textBufferView.hasSelection())return!0;return!1}getSelection(){for(let $ of this._cells)for(let J of $){let Z=J.textBufferView.getSelection();if(Z)return Z}return null}getSelectedText(){let $=[];for(let J=0;J<this._rowCount;J++){let Z=[];for(let Q=0;Q<this._columnCount;Q++){let q=this._cells[J]?.[Q];if(!q||!q.textBufferView.hasSelection())continue;let U=q.textBufferView.getSelectedText();if(U.length>0)Z.push(U)}if(Z.length>0)$.push(Z.join("\t"))}return $.join(`
10
+ `)}onResize($,J){this.invalidateLayoutAndRaster(!1),super.onResize($,J)}renderSelf($){if(!this.visible||this.isDestroyed)return;if(this._layoutDirty)this.rebuildLayoutForCurrentWidth();if(!this._rasterDirty)return;if($.clear(this._backgroundColor),this._rowCount===0||this._columnCount===0){this._rasterDirty=!1;return}this.drawBorders($),this.drawCells($),this._rasterDirty=!1}destroySelf(){this.destroyCells(),super.destroySelf()}setupMeasureFunc(){let $=(J,Z,Q,q)=>{let G=Z!==G8.Undefined&&Number.isFinite(J)?Math.max(1,Math.floor(J)):void 0,K=this.resolveLayoutWidthConstraint(G),j=this.computeLayout(K);this._cachedMeasureLayout=j,this._cachedMeasureWidth=K;let _=j.tableWidth>0?j.tableWidth:1,D=j.tableHeight>0?j.tableHeight:1;if(Z===G8.AtMost&&G!==void 0&&this._positionType!=="absolute")_=Math.min(G,_);return{width:_,height:D}};this.yogaNode.setMeasureFunc($)}rebuildCells(){let $=this._content.length,J=this._content.reduce((Z,Q)=>Math.max(Z,Q.length),0);if(this._cells.length===0){this._rowCount=$,this._columnCount=J,this._cells=[],this._prevCellContent=[];for(let Z=0;Z<$;Z++){let Q=this._content[Z]??[],q=[],U=[];for(let G=0;G<J;G++){let K=Q[G];q.push(this.createCell(K)),U.push(K)}this._cells.push(q),this._prevCellContent.push(U)}this.invalidateLayoutAndRaster();return}this.updateCellsDiff($,J),this.invalidateLayoutAndRaster()}updateCellsDiff($,J){let Z=this._rowCount,Q=this._columnCount,q=Math.min(Z,$),U=Math.min(Q,J);for(let G=0;G<q;G++){let K=this._content[G]??[],j=this._cells[G],_=this._prevCellContent[G];for(let D=0;D<U;D++){let z=K[D];if(z===_[D])continue;let V=j[D];V.textBufferView.destroy(),V.textBuffer.destroy(),V.syntaxStyle.destroy(),j[D]=this.createCell(z),_[D]=z}if(J>Q)for(let D=Q;D<J;D++){let z=K[D];j.push(this.createCell(z)),_.push(z)}else if(J<Q){for(let D=J;D<Q;D++){let z=j[D];z.textBufferView.destroy(),z.textBuffer.destroy(),z.syntaxStyle.destroy()}j.length=J,_.length=J}}if($>Z)for(let G=Z;G<$;G++){let K=this._content[G]??[],j=[],_=[];for(let D=0;D<J;D++){let z=K[D];j.push(this.createCell(z)),_.push(z)}this._cells.push(j),this._prevCellContent.push(_)}else if($<Z){for(let G=$;G<Z;G++){let K=this._cells[G];for(let j of K)j.textBufferView.destroy(),j.textBuffer.destroy(),j.syntaxStyle.destroy()}this._cells.length=$,this._prevCellContent.length=$}this._rowCount=$,this._columnCount=J}createCell($){let J=this.toStyledText($),Z=d0.create(this._ctx.widthMethod),Q=q0.create();Z.setDefaultFg(this._defaultFg),Z.setDefaultBg(this._defaultBg),Z.setDefaultAttributes(this._defaultAttributes),Z.setSyntaxStyle(Q),Z.setStyledText(J);let q=s0.create(Z);return q.setWrapMode(this._wrapMode),{textBuffer:Z,textBufferView:q,syntaxStyle:Q}}toStyledText($){if(Array.isArray($))return new Q0($);if($===null||$===void 0)return X0("");return X0(String($))}destroyCells(){for(let $ of this._cells)for(let J of $)J.textBufferView.destroy(),J.textBuffer.destroy(),J.syntaxStyle.destroy();this._cells=[],this._prevCellContent=[],this._rowCount=0,this._columnCount=0,this._layout=this.createEmptyLayout()}rebuildLayoutForCurrentWidth(){let $=this.resolveLayoutWidthConstraint(this.width),J;if(this._cachedMeasureLayout!==null&&this._cachedMeasureWidth===$)J=this._cachedMeasureLayout;else J=this.computeLayout($);if(this._cachedMeasureLayout=null,this._cachedMeasureWidth=void 0,this._layout=J,this.applyLayoutToViews(J),this._layoutDirty=!1,this._lastLocalSelection?.isActive)this.applySelectionToCells(this._lastLocalSelection,!0)}computeLayout($){if(this._rowCount===0||this._columnCount===0)return this.createEmptyLayout();let J=this.resolveBorderLayout(),Z=this.computeColumnWidths($,J),Q=this.computeRowHeights(Z),q=this.computeOffsets(Z,J.left,J.right,J.innerVertical,this.getInterColumnGap(J)),U=this.computeOffsets(Q,J.top,J.bottom,J.innerHorizontal);return{columnWidths:Z,rowHeights:Q,columnOffsets:q,rowOffsets:U,columnOffsetsI32:new Int32Array(q),rowOffsetsI32:new Int32Array(U),tableWidth:(q[q.length-1]??0)+1,tableHeight:(U[U.length-1]??0)+1}}isFullWidthMode(){return this._columnWidthMode==="full"}computeColumnWidths($,J){let Z=this.getHorizontalCellPadding(),Q=Array(this._columnCount).fill(1+Z);for(let G=0;G<this._rowCount;G++)for(let K=0;K<this._columnCount;K++){let j=this._cells[G]?.[K];if(!j)continue;let _=j.textBufferView.measureForDimensions(0,F7),D=Math.max(1,_?.widthColsMax??0)+Z;Q[K]=Math.max(Q[K],D)}if($===void 0||!Number.isFinite($)||$<=0)return Q;let q=Math.max(1,Math.floor($)-this.getVerticalBorderCount(J)-this.getTotalInterColumnGap(J)),U=Q.reduce((G,K)=>G+K,0);if(U===q)return Q;if(U<q){if(this.isFullWidthMode())return this.expandColumnWidths(Q,q);return Q}if(this._wrapMode==="none")return Q;return this.fitColumnWidths(Q,q)}expandColumnWidths($,J){let Z=$.map((_)=>Math.max(1,Math.floor(_))),Q=Z.reduce((_,D)=>_+D,0);if(Q>=J)return Z;let q=[...Z],U=q.length,G=J-Q,K=Math.floor(G/U),j=G%U;for(let _=0;_<U;_++)if(q[_]+=K,_<j)q[_]+=1;return q}fitColumnWidths($,J){if(this._columnFitter==="balanced")return this.fitColumnWidthsBalanced($,J);return this.fitColumnWidthsProportional($,J)}fitColumnWidthsProportional($,J){let Z=1+this.getHorizontalCellPadding(),Q=Array($.length).fill(Z),q=$.map((P)=>Math.max(1,Math.floor(P))),U=q.map((P)=>Math.min(P,Z+1)),K=U.reduce((P,W)=>P+W,0)<=J?U:Q,j=K.reduce((P,W)=>P+W,0),_=Math.max(j,J),D=q.reduce((P,W)=>P+W,0);if(D<=_)return q;let z=q.map((P,W)=>P-K[W]),V=z.reduce((P,W)=>P+W,0);if(V<=0)return[...K];let X=D-_,Y=Array(q.length).fill(0),H=Array(q.length).fill(0),N=0;for(let P=0;P<q.length;P++){if(z[P]<=0)continue;let W=z[P]/V*X,E=Math.min(z[P],Math.floor(W));Y[P]=E,H[P]=W-E,N+=E}let F=X-N;while(F>0){let P=-1,W=-1;for(let E=0;E<q.length;E++){if(z[E]-Y[E]<=0)continue;if(H[E]>W)W=H[E],P=E}if(P===-1)break;Y[P]+=1,H[P]=0,F-=1}return q.map((P,W)=>Math.max(K[W],P-Y[W]))}fitColumnWidthsBalanced($,J){let Z=1+this.getHorizontalCellPadding(),Q=Array($.length).fill(Z),q=$.map((F)=>Math.max(1,Math.floor(F))),U=q.reduce((F,P)=>F+P,0),G=q.length;if(G===0||U<=J)return q;let K=Math.max(Z,Math.floor(J/G)),j=q.map((F)=>Math.min(F,K)),D=j.reduce((F,P)=>F+P,0)<=J?j:Q,z=D.reduce((F,P)=>F+P,0),V=Math.max(z,J);if(U<=V)return q;let X=q.map((F,P)=>F-D[P]);if(X.reduce((F,P)=>F+P,0)<=0)return[...D];let H=U-V,N=this.allocateShrinkByWeight(X,H,"sqrt");return q.map((F,P)=>Math.max(D[P],F-N[P]))}allocateShrinkByWeight($,J,Z){let Q=Array($.length).fill(0);if(J<=0)return Q;let q=$.map((_)=>{if(_<=0)return 0;return Z==="sqrt"?Math.sqrt(_):_}),U=q.reduce((_,D)=>_+D,0);if(U<=0)return Q;let G=Array($.length).fill(0),K=0;for(let _=0;_<$.length;_++){if($[_]<=0||q[_]<=0)continue;let D=q[_]/U*J,z=Math.min($[_],Math.floor(D));Q[_]=z,G[_]=D-z,K+=z}let j=J-K;while(j>0){let _=-1,D=-1;for(let z=0;z<$.length;z++){if($[z]-Q[z]<=0)continue;if(_===-1||G[z]>D||G[z]===D&&$[z]>$[_])_=z,D=G[z]}if(_===-1)break;Q[_]+=1,G[_]=0,j-=1}return Q}computeRowHeights($){let J=this.getHorizontalCellPadding(),Z=this.getVerticalCellPadding(),Q=Array(this._rowCount).fill(1+Z);for(let q=0;q<this._rowCount;q++)for(let U=0;U<this._columnCount;U++){let G=this._cells[q]?.[U];if(!G)continue;let K=Math.max(1,($[U]??1)-J),j=G.textBufferView.measureForDimensions(K,F7),_=Math.max(1,j?.lineCount??1);Q[q]=Math.max(Q[q],_+Z)}return Q}computeOffsets($,J,Z,Q,q=0){let U=[J?0:-1],G=U[0]??0;for(let K=0;K<$.length;K++){let j=$[K]??1,_=K<$.length-1?Q?1:q:Z?1:0;G+=j+_,U.push(G)}return U}getInterColumnGap($){if($.innerVertical)return 0;return this._columnGap}getTotalInterColumnGap($){return Math.max(0,this._columnCount-1)*this.getInterColumnGap($)}applyLayoutToViews($){let J=this.getHorizontalCellPadding(),Z=this.getVerticalCellPadding();for(let Q=0;Q<this._rowCount;Q++)for(let q=0;q<this._columnCount;q++){let U=this._cells[Q]?.[q];if(!U)continue;let G=$.columnWidths[q]??1,K=$.rowHeights[Q]??1,j=Math.max(1,G-J),_=Math.max(1,K-Z);if(this._wrapMode==="none")U.textBufferView.setWrapWidth(null);else U.textBufferView.setWrapWidth(j);U.textBufferView.setViewport(0,0,j,_)}}resolveBorderLayout(){return{left:this._outerBorder,right:this._outerBorder,top:this._outerBorder,bottom:this._outerBorder,innerVertical:this._border&&this._columnCount>1,innerHorizontal:this._border&&this._rowCount>1}}getVerticalBorderCount($){return($.left?1:0)+($.right?1:0)+($.innerVertical?Math.max(0,this._columnCount-1):0)}getHorizontalBorderCount($){return($.top?1:0)+($.bottom?1:0)+($.innerHorizontal?Math.max(0,this._rowCount-1):0)}drawBorders($){if(!this._showBorders)return;let J=this.resolveBorderLayout();if(this.getVerticalBorderCount(J)===0&&this.getHorizontalBorderCount(J)===0)return;$.drawGrid({borderChars:m0[this._borderStyle],borderFg:this._borderColor,borderBg:this._borderBackgroundColor,columnOffsets:this._layout.columnOffsetsI32,rowOffsets:this._layout.rowOffsetsI32,drawInner:this._border,drawOuter:this._outerBorder})}drawCells($){this.drawCellRange($,0,this._rowCount-1)}drawCellRange($,J,Z){let Q=this._layout.columnOffsets,q=this._layout.rowOffsets,U=this._cellPaddingX,G=this._cellPaddingY;for(let K=J;K<=Z;K++){let j=(q[K]??0)+1+G;for(let _=0;_<this._columnCount;_++){let D=this._cells[K]?.[_];if(!D)continue;$.drawTextBuffer(D.textBufferView,(Q[_]??0)+1+U,j)}}}redrawSelectionRows($,J){if($>J)return;if(this._backgroundColor.a<1){this.invalidateRasterOnly();return}let Z=this.frameBuffer;if(!Z)return;this.clearCellRange(Z,$,J),this.drawCellRange(Z,$,J),this.requestRender()}clearCellRange($,J,Z){let Q=this._layout.columnWidths,q=this._layout.rowHeights,U=this._layout.columnOffsets,G=this._layout.rowOffsets;for(let K=J;K<=Z;K++){let j=(G[K]??0)+1,_=q[K]??1;for(let D=0;D<this._columnCount;D++){let z=(U[D]??0)+1,V=Q[D]??1;if(this._backgroundColor.a<1)for(let X=j;X<j+_;X++)for(let Y=z;Y<z+V;Y++)$.setCell(Y,X," ",this._defaultFg,this._backgroundColor,this._defaultAttributes);else $.fillRect(z,j,V,_,this._backgroundColor)}}}ensureLayoutReady(){if(!this._layoutDirty)return;this.rebuildLayoutForCurrentWidth()}getCellAtLocalPosition($,J){if(this._rowCount===0||this._columnCount===0)return null;if($<0||J<0||$>=this._layout.tableWidth||J>=this._layout.tableHeight)return null;let Z=-1;for(let q=0;q<this._rowCount;q++){let U=(this._layout.rowOffsets[q]??0)+1,G=U+(this._layout.rowHeights[q]??1)-1;if(J>=U&&J<=G){Z=q;break}}if(Z<0)return null;let Q=-1;for(let q=0;q<this._columnCount;q++){let U=(this._layout.columnOffsets[q]??0)+1,G=U+(this._layout.columnWidths[q]??1)-1;if($>=U&&$<=G){Q=q;break}}if(Q<0)return null;return{rowIdx:Z,colIdx:Q}}applySelectionToCells($,J){if($.anchorX===$.focusX&&$.anchorY===$.focusY){this.resetCellSelections(),this._lastSelectionMode=null;return}let Z=Math.min($.anchorY,$.focusY),Q=Math.max($.anchorY,$.focusY),q=this.findRowForLocalY(Z),U=this.findRowForLocalY(Q),G=this.resolveSelectionResolution($),K=this._lastSelectionMode!==G.mode;this._lastSelectionMode=G.mode;let j=G.mode==="column-locked"&&G.anchorColumn!==null;for(let _=0;_<this._rowCount;_++){if(_<q||_>U){this.resetRowSelection(_);continue}let D=(this._layout.rowOffsets[_]??0)+1+this._cellPaddingY;for(let z=0;z<this._columnCount;z++){let V=this._cells[_]?.[z];if(!V)continue;if(j&&z!==G.anchorColumn){V.textBufferView.resetLocalSelection();continue}let X=(this._layout.columnOffsets[z]??0)+1+this._cellPaddingX,Y={anchorX:$.anchorX-X,anchorY:$.anchorY-D,focusX:$.focusX-X,focusY:$.focusY-D},H=G.anchorCell!==null&&G.anchorCell.rowIdx===_&&G.anchorCell.colIdx===z;if(G.mode==="single-cell"&&!H){V.textBufferView.resetLocalSelection();continue}let N=H&&G.mode!=="single-cell";if(N)Y=this.getFullCellSelectionCoords(_,z);if(J||K||N)V.textBufferView.setLocalSelection(Y.anchorX,Y.anchorY,Y.focusX,Y.focusY,this._selectionBg,this._selectionFg);else V.textBufferView.updateLocalSelection(Y.anchorX,Y.anchorY,Y.focusX,Y.focusY,this._selectionBg,this._selectionFg)}}}resolveSelectionResolution($){let J=this.getCellAtLocalPosition($.anchorX,$.anchorY),Z=this.getCellAtLocalPosition($.focusX,$.focusY),Q=J?.colIdx??this.getColumnAtLocalX($.anchorX);if(J!==null&&Z!==null&&J.rowIdx===Z.rowIdx&&J.colIdx===Z.colIdx)return{mode:"single-cell",anchorCell:J,anchorColumn:Q};let q=this.getColumnAtLocalX($.focusX);if(Q!==null&&q===Q)return{mode:"column-locked",anchorCell:J,anchorColumn:Q};return{mode:"grid",anchorCell:J,anchorColumn:Q}}getColumnAtLocalX($){if(this._columnCount===0)return null;if($<0||$>=this._layout.tableWidth)return null;for(let J=0;J<this._columnCount;J++){let Z=(this._layout.columnOffsets[J]??0)+1,Q=Z+(this._layout.columnWidths[J]??1)-1;if($>=Z&&$<=Q)return J}return null}getFullCellSelectionCoords($,J){let Z=this._layout.columnWidths[J]??1,Q=this._layout.rowHeights[$]??1,q=Math.max(1,Z-this.getHorizontalCellPadding()),U=Math.max(1,Q-this.getVerticalCellPadding());return{anchorX:-1,anchorY:0,focusX:q,focusY:U}}findRowForLocalY($){if(this._rowCount===0)return 0;if($<0)return 0;for(let J=0;J<this._rowCount;J++){let Q=(this._layout.rowOffsets[J]??0)+1+(this._layout.rowHeights[J]??1)-1;if($<=Q)return J}return this._rowCount-1}getSelectionRowRange($){if(!$?.isActive||this._rowCount===0)return null;let J=Math.min($.anchorY,$.focusY),Z=Math.max($.anchorY,$.focusY);return{firstRow:this.findRowForLocalY(J),lastRow:this.findRowForLocalY(Z)}}getDirtySelectionRowRange($,J){let Z=this.getSelectionRowRange($),Q=this.getSelectionRowRange(J);if(Z===null)return Q;if(Q===null)return Z;return{firstRow:Math.min(Z.firstRow,Q.firstRow),lastRow:Math.max(Z.lastRow,Q.lastRow)}}resetRowSelection($){let J=this._cells[$];if(!J)return;for(let Z of J)Z.textBufferView.resetLocalSelection()}resetCellSelections(){for(let $=0;$<this._rowCount;$++)this.resetRowSelection($)}createEmptyLayout(){return{columnWidths:[],rowHeights:[],columnOffsets:[0],rowOffsets:[0],columnOffsetsI32:new Int32Array([0]),rowOffsetsI32:new Int32Array([0]),tableWidth:0,tableHeight:0}}resolveLayoutWidthConstraint($){if($===void 0||!Number.isFinite($)||$<=0)return;if(this._wrapMode!=="none"||this.isFullWidthMode())return Math.max(1,Math.floor($));return}getHorizontalCellPadding(){return this._cellPaddingX*2}getVerticalCellPadding(){return this._cellPaddingY*2}resolveColumnFitter($){if($===void 0)return this._defaultOptions.columnFitter;return $==="balanced"?"balanced":"proportional"}resolveCellPadding($){if($===void 0||!Number.isFinite($))return this._defaultOptions.cellPadding;return Math.max(0,Math.floor($))}resolveColumnGap($){if($===void 0||!Number.isFinite($))return this._defaultOptions.columnGap;return Math.max(0,Math.floor($))}invalidateLayoutAndRaster($=!0){if(this._layoutDirty=!0,this._rasterDirty=!0,this._cachedMeasureLayout=null,this._cachedMeasureWidth=void 0,$)this.yogaNode.markDirty();this.requestRender()}invalidateRasterOnly(){this._rasterDirty=!0,this.requestRender()}}function Q7(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var K0=Q7();function m7($){K0=$}var f0={exec:()=>null};function M($,J=""){let Z=typeof $=="string"?$:$.source,Q={replace:(q,U)=>{let G=typeof U=="string"?U:U.source;return G=G.replace(b.caret,"$1"),Z=Z.replace(q,G),Q},getRegex:()=>new RegExp(Z,J)};return Q}var VJ=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),b={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:($)=>new RegExp(`^( {0,3}${$})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}#`),htmlBeginRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}<(?:[a-z].*>|!--)`,"i")},HJ=/^(?:[ \t]*(?:\n|$))+/,XJ=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,PJ=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,$8=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,OJ=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,q7=/(?:[*+-]|\d{1,9}[.)])/,b7=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,g7=M(b7).replace(/bull/g,q7).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),NJ=M(b7).replace(/bull/g,q7).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),U7=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,FJ=/^[^\n]+/,G7=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,WJ=M(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",G7).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),EJ=M(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,q7).getRegex(),Z6="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",j7=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,AJ=M("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",j7).replace("tag",Z6).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),h7=M(U7).replace("hr",$8).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Z6).getRegex(),MJ=M(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",h7).getRegex(),K7={blockquote:MJ,code:XJ,def:WJ,fences:PJ,heading:OJ,hr:$8,html:AJ,lheading:g7,list:EJ,newline:HJ,paragraph:h7,table:f0,text:FJ},W7=M("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",$8).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Z6).getRegex(),BJ={...K7,lheading:NJ,table:W7,paragraph:M(U7).replace("hr",$8).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",W7).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Z6).getRegex()},LJ={...K7,html:M(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",j7).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:f0,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:M(U7).replace("hr",$8).replace("heading",` *#{1,6} *[^
11
+ ]`).replace("lheading",g7).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},yJ=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,CJ=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,p7=/^( {2,}|\\)\n(?!\s*$)/,SJ=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Q6=/[\p{P}\p{S}]/u,_7=/[\s\p{P}\p{S}]/u,c7=/[^\s\p{P}\p{S}]/u,IJ=M(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,_7).getRegex(),u7=/(?!~)[\p{P}\p{S}]/u,RJ=/(?!~)[\s\p{P}\p{S}]/u,TJ=/(?:[^\s\p{P}\p{S}]|~)/u,wJ=M(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",VJ?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),d7=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,vJ=M(d7,"u").replace(/punct/g,Q6).getRegex(),kJ=M(d7,"u").replace(/punct/g,u7).getRegex(),a7="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",xJ=M(a7,"gu").replace(/notPunctSpace/g,c7).replace(/punctSpace/g,_7).replace(/punct/g,Q6).getRegex(),fJ=M(a7,"gu").replace(/notPunctSpace/g,TJ).replace(/punctSpace/g,RJ).replace(/punct/g,u7).getRegex(),mJ=M("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,c7).replace(/punctSpace/g,_7).replace(/punct/g,Q6).getRegex(),bJ=M(/\\(punct)/,"gu").replace(/punct/g,Q6).getRegex(),gJ=M(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),hJ=M(j7).replace("(?:-->|$)","-->").getRegex(),pJ=M("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",hJ).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),_8=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,cJ=M(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",_8).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),s7=M(/^!?\[(label)\]\[(ref)\]/).replace("label",_8).replace("ref",G7).getRegex(),l7=M(/^!?\[(ref)\](?:\[\])?/).replace("ref",G7).getRegex(),uJ=M("reflink|nolink(?!\\()","g").replace("reflink",s7).replace("nolink",l7).getRegex(),E7=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,D7={_backpedal:f0,anyPunctuation:bJ,autolink:gJ,blockSkip:wJ,br:p7,code:CJ,del:f0,emStrongLDelim:vJ,emStrongRDelimAst:xJ,emStrongRDelimUnd:mJ,escape:yJ,link:cJ,nolink:l7,punctuation:IJ,reflink:s7,reflinkSearch:uJ,tag:pJ,text:SJ,url:f0},dJ={...D7,link:M(/^!?\[(label)\]\((.*?)\)/).replace("label",_8).getRegex(),reflink:M(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",_8).getRegex()},O6={...D7,emStrongRDelimAst:fJ,emStrongLDelim:kJ,url:M(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",E7).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:M(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",E7).getRegex()},aJ={...O6,br:M(p7).replace("{2,}","*").getRegex(),text:M(O6.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},U8={normal:K7,gfm:BJ,pedantic:LJ},w0={normal:D7,gfm:O6,breaks:aJ,pedantic:dJ},sJ={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},A7=($)=>sJ[$];function i($,J){if(J){if(b.escapeTest.test($))return $.replace(b.escapeReplace,A7)}else if(b.escapeTestNoEncode.test($))return $.replace(b.escapeReplaceNoEncode,A7);return $}function M7($){try{$=encodeURI($).replace(b.percentDecode,"%")}catch{return null}return $}function B7($,J){let Z=$.replace(b.findPipe,(U,G,K)=>{let j=!1,_=G;for(;--_>=0&&K[_]==="\\";)j=!j;return j?"|":" |"}),Q=Z.split(b.splitPipe),q=0;if(Q[0].trim()||Q.shift(),Q.length>0&&!Q.at(-1)?.trim()&&Q.pop(),J)if(Q.length>J)Q.splice(J);else for(;Q.length<J;)Q.push("");for(;q<Q.length;q++)Q[q]=Q[q].trim().replace(b.slashPipe,"|");return Q}function v0($,J,Z){let Q=$.length;if(Q===0)return"";let q=0;for(;q<Q;){let U=$.charAt(Q-q-1);if(U===J&&!Z)q++;else if(U!==J&&Z)q++;else break}return $.slice(0,Q-q)}function lJ($,J){if($.indexOf(J[1])===-1)return-1;let Z=0;for(let Q=0;Q<$.length;Q++)if($[Q]==="\\")Q++;else if($[Q]===J[0])Z++;else if($[Q]===J[1]&&(Z--,Z<0))return Q;return Z>0?-2:-1}function L7($,J,Z,Q,q){let U=J.href,G=J.title||null,K=$[1].replace(q.other.outputLinkReplace,"$1");Q.state.inLink=!0;let j={type:$[0].charAt(0)==="!"?"image":"link",raw:Z,href:U,title:G,text:K,tokens:Q.inlineTokens(K)};return Q.state.inLink=!1,j}function rJ($,J,Z){let Q=$.match(Z.other.indentCodeCompensation);if(Q===null)return J;let q=Q[1];return J.split(`
12
+ `).map((U)=>{let G=U.match(Z.other.beginningSpace);if(G===null)return U;let[K]=G;return K.length>=q.length?U.slice(q.length):U}).join(`
13
+ `)}var D8=class{options;rules;lexer;constructor($){this.options=$||K0}space($){let J=this.rules.block.newline.exec($);if(J&&J[0].length>0)return{type:"space",raw:J[0]}}code($){let J=this.rules.block.code.exec($);if(J){let Z=J[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:J[0],codeBlockStyle:"indented",text:this.options.pedantic?Z:v0(Z,`
14
+ `)}}}fences($){let J=this.rules.block.fences.exec($);if(J){let Z=J[0],Q=rJ(Z,J[3]||"",this.rules);return{type:"code",raw:Z,lang:J[2]?J[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):J[2],text:Q}}}heading($){let J=this.rules.block.heading.exec($);if(J){let Z=J[2].trim();if(this.rules.other.endingHash.test(Z)){let Q=v0(Z,"#");(this.options.pedantic||!Q||this.rules.other.endingSpaceChar.test(Q))&&(Z=Q.trim())}return{type:"heading",raw:J[0],depth:J[1].length,text:Z,tokens:this.lexer.inline(Z)}}}hr($){let J=this.rules.block.hr.exec($);if(J)return{type:"hr",raw:v0(J[0],`
15
+ `)}}blockquote($){let J=this.rules.block.blockquote.exec($);if(J){let Z=v0(J[0],`
16
+ `).split(`
17
+ `),Q="",q="",U=[];for(;Z.length>0;){let G=!1,K=[],j;for(j=0;j<Z.length;j++)if(this.rules.other.blockquoteStart.test(Z[j]))K.push(Z[j]),G=!0;else if(!G)K.push(Z[j]);else break;Z=Z.slice(j);let _=K.join(`
18
+ `),D=_.replace(this.rules.other.blockquoteSetextReplace,`
19
+ $1`).replace(this.rules.other.blockquoteSetextReplace2,"");Q=Q?`${Q}
20
+ ${_}`:_,q=q?`${q}
21
+ ${D}`:D;let z=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(D,U,!0),this.lexer.state.top=z,Z.length===0)break;let V=U.at(-1);if(V?.type==="code")break;if(V?.type==="blockquote"){let X=V,Y=X.raw+`
22
+ `+Z.join(`
23
+ `),H=this.blockquote(Y);U[U.length-1]=H,Q=Q.substring(0,Q.length-X.raw.length)+H.raw,q=q.substring(0,q.length-X.text.length)+H.text;break}else if(V?.type==="list"){let X=V,Y=X.raw+`
24
+ `+Z.join(`
25
+ `),H=this.list(Y);U[U.length-1]=H,Q=Q.substring(0,Q.length-V.raw.length)+H.raw,q=q.substring(0,q.length-X.raw.length)+H.raw,Z=Y.substring(U.at(-1).raw.length).split(`
26
+ `);continue}}return{type:"blockquote",raw:Q,tokens:U,text:q}}}list($){let J=this.rules.block.list.exec($);if(J){let Z=J[1].trim(),Q=Z.length>1,q={type:"list",raw:"",ordered:Q,start:Q?+Z.slice(0,-1):"",loose:!1,items:[]};Z=Q?`\\d{1,9}\\${Z.slice(-1)}`:`\\${Z}`,this.options.pedantic&&(Z=Q?Z:"[*+-]");let U=this.rules.other.listItemRegex(Z),G=!1;for(;$;){let j=!1,_="",D="";if(!(J=U.exec($))||this.rules.block.hr.test($))break;_=J[0],$=$.substring(_.length);let z=J[2].split(`
27
+ `,1)[0].replace(this.rules.other.listReplaceTabs,(H)=>" ".repeat(3*H.length)),V=$.split(`
28
+ `,1)[0],X=!z.trim(),Y=0;if(this.options.pedantic?(Y=2,D=z.trimStart()):X?Y=J[1].length+1:(Y=J[2].search(this.rules.other.nonSpaceChar),Y=Y>4?1:Y,D=z.slice(Y),Y+=J[1].length),X&&this.rules.other.blankLine.test(V)&&(_+=V+`
29
+ `,$=$.substring(V.length+1),j=!0),!j){let H=this.rules.other.nextBulletRegex(Y),N=this.rules.other.hrRegex(Y),F=this.rules.other.fencesBeginRegex(Y),P=this.rules.other.headingBeginRegex(Y),W=this.rules.other.htmlBeginRegex(Y);for(;$;){let E=$.split(`
30
+ `,1)[0],B;if(V=E,this.options.pedantic?(V=V.replace(this.rules.other.listReplaceNesting," "),B=V):B=V.replace(this.rules.other.tabCharGlobal," "),F.test(V)||P.test(V)||W.test(V)||H.test(V)||N.test(V))break;if(B.search(this.rules.other.nonSpaceChar)>=Y||!V.trim())D+=`
31
+ `+B.slice(Y);else{if(X||z.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||F.test(z)||P.test(z)||N.test(z))break;D+=`
32
+ `+V}!X&&!V.trim()&&(X=!0),_+=E+`
33
+ `,$=$.substring(E.length+1),z=B.slice(Y)}}q.loose||(G?q.loose=!0:this.rules.other.doubleBlankLine.test(_)&&(G=!0)),q.items.push({type:"list_item",raw:_,task:!!this.options.gfm&&this.rules.other.listIsTask.test(D),loose:!1,text:D,tokens:[]}),q.raw+=_}let K=q.items.at(-1);if(K)K.raw=K.raw.trimEnd(),K.text=K.text.trimEnd();else return;q.raw=q.raw.trimEnd();for(let j of q.items){if(this.lexer.state.top=!1,j.tokens=this.lexer.blockTokens(j.text,[]),j.task){if(j.text=j.text.replace(this.rules.other.listReplaceTask,""),j.tokens[0]?.type==="text"||j.tokens[0]?.type==="paragraph"){j.tokens[0].raw=j.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),j.tokens[0].text=j.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let D=this.lexer.inlineQueue.length-1;D>=0;D--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[D].src)){this.lexer.inlineQueue[D].src=this.lexer.inlineQueue[D].src.replace(this.rules.other.listReplaceTask,"");break}}let _=this.rules.other.listTaskCheckbox.exec(j.raw);if(_){let D={type:"checkbox",raw:_[0]+" ",checked:_[0]!=="[ ]"};j.checked=D.checked,q.loose?j.tokens[0]&&["paragraph","text"].includes(j.tokens[0].type)&&"tokens"in j.tokens[0]&&j.tokens[0].tokens?(j.tokens[0].raw=D.raw+j.tokens[0].raw,j.tokens[0].text=D.raw+j.tokens[0].text,j.tokens[0].tokens.unshift(D)):j.tokens.unshift({type:"paragraph",raw:D.raw,text:D.raw,tokens:[D]}):j.tokens.unshift(D)}}if(!q.loose){let _=j.tokens.filter((z)=>z.type==="space"),D=_.length>0&&_.some((z)=>this.rules.other.anyLine.test(z.raw));q.loose=D}}if(q.loose)for(let j of q.items){j.loose=!0;for(let _ of j.tokens)_.type==="text"&&(_.type="paragraph")}return q}}html($){let J=this.rules.block.html.exec($);if(J)return{type:"html",block:!0,raw:J[0],pre:J[1]==="pre"||J[1]==="script"||J[1]==="style",text:J[0]}}def($){let J=this.rules.block.def.exec($);if(J){let Z=J[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),Q=J[2]?J[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",q=J[3]?J[3].substring(1,J[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):J[3];return{type:"def",tag:Z,raw:J[0],href:Q,title:q}}}table($){let J=this.rules.block.table.exec($);if(!J||!this.rules.other.tableDelimiter.test(J[2]))return;let Z=B7(J[1]),Q=J[2].replace(this.rules.other.tableAlignChars,"").split("|"),q=J[3]?.trim()?J[3].replace(this.rules.other.tableRowBlankLine,"").split(`
34
+ `):[],U={type:"table",raw:J[0],header:[],align:[],rows:[]};if(Z.length===Q.length){for(let G of Q)this.rules.other.tableAlignRight.test(G)?U.align.push("right"):this.rules.other.tableAlignCenter.test(G)?U.align.push("center"):this.rules.other.tableAlignLeft.test(G)?U.align.push("left"):U.align.push(null);for(let G=0;G<Z.length;G++)U.header.push({text:Z[G],tokens:this.lexer.inline(Z[G]),header:!0,align:U.align[G]});for(let G of q)U.rows.push(B7(G,U.header.length).map((K,j)=>({text:K,tokens:this.lexer.inline(K),header:!1,align:U.align[j]})));return U}}lheading($){let J=this.rules.block.lheading.exec($);if(J)return{type:"heading",raw:J[0],depth:J[2].charAt(0)==="="?1:2,text:J[1],tokens:this.lexer.inline(J[1])}}paragraph($){let J=this.rules.block.paragraph.exec($);if(J){let Z=J[1].charAt(J[1].length-1)===`
35
+ `?J[1].slice(0,-1):J[1];return{type:"paragraph",raw:J[0],text:Z,tokens:this.lexer.inline(Z)}}}text($){let J=this.rules.block.text.exec($);if(J)return{type:"text",raw:J[0],text:J[0],tokens:this.lexer.inline(J[0])}}escape($){let J=this.rules.inline.escape.exec($);if(J)return{type:"escape",raw:J[0],text:J[1]}}tag($){let J=this.rules.inline.tag.exec($);if(J)return!this.lexer.state.inLink&&this.rules.other.startATag.test(J[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(J[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(J[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(J[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:J[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:J[0]}}link($){let J=this.rules.inline.link.exec($);if(J){let Z=J[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(Z)){if(!this.rules.other.endAngleBracket.test(Z))return;let U=v0(Z.slice(0,-1),"\\");if((Z.length-U.length)%2===0)return}else{let U=lJ(J[2],"()");if(U===-2)return;if(U>-1){let G=(J[0].indexOf("!")===0?5:4)+J[1].length+U;J[2]=J[2].substring(0,U),J[0]=J[0].substring(0,G).trim(),J[3]=""}}let Q=J[2],q="";if(this.options.pedantic){let U=this.rules.other.pedanticHrefTitle.exec(Q);U&&(Q=U[1],q=U[3])}else q=J[3]?J[3].slice(1,-1):"";return Q=Q.trim(),this.rules.other.startAngleBracket.test(Q)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(Z)?Q=Q.slice(1):Q=Q.slice(1,-1)),L7(J,{href:Q&&Q.replace(this.rules.inline.anyPunctuation,"$1"),title:q&&q.replace(this.rules.inline.anyPunctuation,"$1")},J[0],this.lexer,this.rules)}}reflink($,J){let Z;if((Z=this.rules.inline.reflink.exec($))||(Z=this.rules.inline.nolink.exec($))){let Q=(Z[2]||Z[1]).replace(this.rules.other.multipleSpaceGlobal," "),q=J[Q.toLowerCase()];if(!q){let U=Z[0].charAt(0);return{type:"text",raw:U,text:U}}return L7(Z,q,Z[0],this.lexer,this.rules)}}emStrong($,J,Z=""){let Q=this.rules.inline.emStrongLDelim.exec($);if(!Q||Q[3]&&Z.match(this.rules.other.unicodeAlphaNumeric))return;if(!(Q[1]||Q[2])||!Z||this.rules.inline.punctuation.exec(Z)){let q=[...Q[0]].length-1,U,G,K=q,j=0,_=Q[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(_.lastIndex=0,J=J.slice(-1*$.length+q);(Q=_.exec(J))!=null;){if(U=Q[1]||Q[2]||Q[3]||Q[4]||Q[5]||Q[6],!U)continue;if(G=[...U].length,Q[3]||Q[4]){K+=G;continue}else if((Q[5]||Q[6])&&q%3&&!((q+G)%3)){j+=G;continue}if(K-=G,K>0)continue;G=Math.min(G,G+K+j);let D=[...Q[0]][0].length,z=$.slice(0,q+Q.index+D+G);if(Math.min(q,G)%2){let X=z.slice(1,-1);return{type:"em",raw:z,text:X,tokens:this.lexer.inlineTokens(X)}}let V=z.slice(2,-2);return{type:"strong",raw:z,text:V,tokens:this.lexer.inlineTokens(V)}}}}codespan($){let J=this.rules.inline.code.exec($);if(J){let Z=J[2].replace(this.rules.other.newLineCharGlobal," "),Q=this.rules.other.nonSpaceChar.test(Z),q=this.rules.other.startingSpaceChar.test(Z)&&this.rules.other.endingSpaceChar.test(Z);return Q&&q&&(Z=Z.substring(1,Z.length-1)),{type:"codespan",raw:J[0],text:Z}}}br($){let J=this.rules.inline.br.exec($);if(J)return{type:"br",raw:J[0]}}del($){let J=this.rules.inline.del.exec($);if(J)return{type:"del",raw:J[0],text:J[2],tokens:this.lexer.inlineTokens(J[2])}}autolink($){let J=this.rules.inline.autolink.exec($);if(J){let Z,Q;return J[2]==="@"?(Z=J[1],Q="mailto:"+Z):(Z=J[1],Q=Z),{type:"link",raw:J[0],text:Z,href:Q,tokens:[{type:"text",raw:Z,text:Z}]}}}url($){let J;if(J=this.rules.inline.url.exec($)){let Z,Q;if(J[2]==="@")Z=J[0],Q="mailto:"+Z;else{let q;do q=J[0],J[0]=this.rules.inline._backpedal.exec(J[0])?.[0]??"";while(q!==J[0]);Z=J[0],J[1]==="www."?Q="http://"+J[0]:Q=J[0]}return{type:"link",raw:J[0],text:Z,href:Q,tokens:[{type:"text",raw:Z,text:Z}]}}}inlineText($){let J=this.rules.inline.text.exec($);if(J){let Z=this.lexer.state.inRawBlock;return{type:"text",raw:J[0],text:J[0],escaped:Z}}}},g=class ${tokens;options;state;inlineQueue;tokenizer;constructor(J){this.tokens=[],this.tokens.links=Object.create(null),this.options=J||K0,this.options.tokenizer=this.options.tokenizer||new D8,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let Z={other:b,block:U8.normal,inline:w0.normal};this.options.pedantic?(Z.block=U8.pedantic,Z.inline=w0.pedantic):this.options.gfm&&(Z.block=U8.gfm,this.options.breaks?Z.inline=w0.breaks:Z.inline=w0.gfm),this.tokenizer.rules=Z}static get rules(){return{block:U8,inline:w0}}static lex(J,Z){return new $(Z).lex(J)}static lexInline(J,Z){return new $(Z).inlineTokens(J)}lex(J){J=J.replace(b.carriageReturn,`
36
+ `),this.blockTokens(J,this.tokens);for(let Z=0;Z<this.inlineQueue.length;Z++){let Q=this.inlineQueue[Z];this.inlineTokens(Q.src,Q.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(J,Z=[],Q=!1){for(this.options.pedantic&&(J=J.replace(b.tabCharGlobal," ").replace(b.spaceLine,""));J;){let q;if(this.options.extensions?.block?.some((G)=>(q=G.call({lexer:this},J,Z))?(J=J.substring(q.raw.length),Z.push(q),!0):!1))continue;if(q=this.tokenizer.space(J)){J=J.substring(q.raw.length);let G=Z.at(-1);q.raw.length===1&&G!==void 0?G.raw+=`
37
+ `:Z.push(q);continue}if(q=this.tokenizer.code(J)){J=J.substring(q.raw.length);let G=Z.at(-1);G?.type==="paragraph"||G?.type==="text"?(G.raw+=(G.raw.endsWith(`
38
+ `)?"":`
39
+ `)+q.raw,G.text+=`
40
+ `+q.text,this.inlineQueue.at(-1).src=G.text):Z.push(q);continue}if(q=this.tokenizer.fences(J)){J=J.substring(q.raw.length),Z.push(q);continue}if(q=this.tokenizer.heading(J)){J=J.substring(q.raw.length),Z.push(q);continue}if(q=this.tokenizer.hr(J)){J=J.substring(q.raw.length),Z.push(q);continue}if(q=this.tokenizer.blockquote(J)){J=J.substring(q.raw.length),Z.push(q);continue}if(q=this.tokenizer.list(J)){J=J.substring(q.raw.length),Z.push(q);continue}if(q=this.tokenizer.html(J)){J=J.substring(q.raw.length),Z.push(q);continue}if(q=this.tokenizer.def(J)){J=J.substring(q.raw.length);let G=Z.at(-1);G?.type==="paragraph"||G?.type==="text"?(G.raw+=(G.raw.endsWith(`
41
+ `)?"":`
42
+ `)+q.raw,G.text+=`
43
+ `+q.raw,this.inlineQueue.at(-1).src=G.text):this.tokens.links[q.tag]||(this.tokens.links[q.tag]={href:q.href,title:q.title},Z.push(q));continue}if(q=this.tokenizer.table(J)){J=J.substring(q.raw.length),Z.push(q);continue}if(q=this.tokenizer.lheading(J)){J=J.substring(q.raw.length),Z.push(q);continue}let U=J;if(this.options.extensions?.startBlock){let G=1/0,K=J.slice(1),j;this.options.extensions.startBlock.forEach((_)=>{j=_.call({lexer:this},K),typeof j=="number"&&j>=0&&(G=Math.min(G,j))}),G<1/0&&G>=0&&(U=J.substring(0,G+1))}if(this.state.top&&(q=this.tokenizer.paragraph(U))){let G=Z.at(-1);Q&&G?.type==="paragraph"?(G.raw+=(G.raw.endsWith(`
44
+ `)?"":`
45
+ `)+q.raw,G.text+=`
46
+ `+q.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=G.text):Z.push(q),Q=U.length!==J.length,J=J.substring(q.raw.length);continue}if(q=this.tokenizer.text(J)){J=J.substring(q.raw.length);let G=Z.at(-1);G?.type==="text"?(G.raw+=(G.raw.endsWith(`
47
+ `)?"":`
48
+ `)+q.raw,G.text+=`
49
+ `+q.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=G.text):Z.push(q);continue}if(J){let G="Infinite loop on byte: "+J.charCodeAt(0);if(this.options.silent){console.error(G);break}else throw Error(G)}}return this.state.top=!0,Z}inline(J,Z=[]){return this.inlineQueue.push({src:J,tokens:Z}),Z}inlineTokens(J,Z=[]){let Q=J,q=null;if(this.tokens.links){let j=Object.keys(this.tokens.links);if(j.length>0)for(;(q=this.tokenizer.rules.inline.reflinkSearch.exec(Q))!=null;)j.includes(q[0].slice(q[0].lastIndexOf("[")+1,-1))&&(Q=Q.slice(0,q.index)+"["+"a".repeat(q[0].length-2)+"]"+Q.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(q=this.tokenizer.rules.inline.anyPunctuation.exec(Q))!=null;)Q=Q.slice(0,q.index)+"++"+Q.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let U;for(;(q=this.tokenizer.rules.inline.blockSkip.exec(Q))!=null;)U=q[2]?q[2].length:0,Q=Q.slice(0,q.index+U)+"["+"a".repeat(q[0].length-U-2)+"]"+Q.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);Q=this.options.hooks?.emStrongMask?.call({lexer:this},Q)??Q;let G=!1,K="";for(;J;){G||(K=""),G=!1;let j;if(this.options.extensions?.inline?.some((D)=>(j=D.call({lexer:this},J,Z))?(J=J.substring(j.raw.length),Z.push(j),!0):!1))continue;if(j=this.tokenizer.escape(J)){J=J.substring(j.raw.length),Z.push(j);continue}if(j=this.tokenizer.tag(J)){J=J.substring(j.raw.length),Z.push(j);continue}if(j=this.tokenizer.link(J)){J=J.substring(j.raw.length),Z.push(j);continue}if(j=this.tokenizer.reflink(J,this.tokens.links)){J=J.substring(j.raw.length);let D=Z.at(-1);j.type==="text"&&D?.type==="text"?(D.raw+=j.raw,D.text+=j.text):Z.push(j);continue}if(j=this.tokenizer.emStrong(J,Q,K)){J=J.substring(j.raw.length),Z.push(j);continue}if(j=this.tokenizer.codespan(J)){J=J.substring(j.raw.length),Z.push(j);continue}if(j=this.tokenizer.br(J)){J=J.substring(j.raw.length),Z.push(j);continue}if(j=this.tokenizer.del(J)){J=J.substring(j.raw.length),Z.push(j);continue}if(j=this.tokenizer.autolink(J)){J=J.substring(j.raw.length),Z.push(j);continue}if(!this.state.inLink&&(j=this.tokenizer.url(J))){J=J.substring(j.raw.length),Z.push(j);continue}let _=J;if(this.options.extensions?.startInline){let D=1/0,z=J.slice(1),V;this.options.extensions.startInline.forEach((X)=>{V=X.call({lexer:this},z),typeof V=="number"&&V>=0&&(D=Math.min(D,V))}),D<1/0&&D>=0&&(_=J.substring(0,D+1))}if(j=this.tokenizer.inlineText(_)){J=J.substring(j.raw.length),j.raw.slice(-1)!=="_"&&(K=j.raw.slice(-1)),G=!0;let D=Z.at(-1);D?.type==="text"?(D.raw+=j.raw,D.text+=j.text):Z.push(j);continue}if(J){let D="Infinite loop on byte: "+J.charCodeAt(0);if(this.options.silent){console.error(D);break}else throw Error(D)}}return Z}},z8=class{options;parser;constructor($){this.options=$||K0}space($){return""}code({text:$,lang:J,escaped:Z}){let Q=(J||"").match(b.notSpaceStart)?.[0],q=$.replace(b.endingNewline,"")+`
50
+ `;return Q?'<pre><code class="language-'+i(Q)+'">'+(Z?q:i(q,!0))+`</code></pre>
51
+ `:"<pre><code>"+(Z?q:i(q,!0))+`</code></pre>
52
+ `}blockquote({tokens:$}){return`<blockquote>
53
+ ${this.parser.parse($)}</blockquote>
54
+ `}html({text:$}){return $}def($){return""}heading({tokens:$,depth:J}){return`<h${J}>${this.parser.parseInline($)}</h${J}>
55
+ `}hr($){return`<hr>
56
+ `}list($){let{ordered:J,start:Z}=$,Q="";for(let G=0;G<$.items.length;G++){let K=$.items[G];Q+=this.listitem(K)}let q=J?"ol":"ul",U=J&&Z!==1?' start="'+Z+'"':"";return"<"+q+U+`>
57
+ `+Q+"</"+q+`>
58
+ `}listitem($){return`<li>${this.parser.parse($.tokens)}</li>
59
+ `}checkbox({checked:$}){return"<input "+($?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:$}){return`<p>${this.parser.parseInline($)}</p>
60
+ `}table($){let J="",Z="";for(let q=0;q<$.header.length;q++)Z+=this.tablecell($.header[q]);J+=this.tablerow({text:Z});let Q="";for(let q=0;q<$.rows.length;q++){let U=$.rows[q];Z="";for(let G=0;G<U.length;G++)Z+=this.tablecell(U[G]);Q+=this.tablerow({text:Z})}return Q&&(Q=`<tbody>${Q}</tbody>`),`<table>
61
+ <thead>
62
+ `+J+`</thead>
63
+ `+Q+`</table>
64
+ `}tablerow({text:$}){return`<tr>
65
+ ${$}</tr>
66
+ `}tablecell($){let J=this.parser.parseInline($.tokens),Z=$.header?"th":"td";return($.align?`<${Z} align="${$.align}">`:`<${Z}>`)+J+`</${Z}>
67
+ `}strong({tokens:$}){return`<strong>${this.parser.parseInline($)}</strong>`}em({tokens:$}){return`<em>${this.parser.parseInline($)}</em>`}codespan({text:$}){return`<code>${i($,!0)}</code>`}br($){return"<br>"}del({tokens:$}){return`<del>${this.parser.parseInline($)}</del>`}link({href:$,title:J,tokens:Z}){let Q=this.parser.parseInline(Z),q=M7($);if(q===null)return Q;$=q;let U='<a href="'+$+'"';return J&&(U+=' title="'+i(J)+'"'),U+=">"+Q+"</a>",U}image({href:$,title:J,text:Z,tokens:Q}){Q&&(Z=this.parser.parseInline(Q,this.parser.textRenderer));let q=M7($);if(q===null)return i(Z);$=q;let U=`<img src="${$}" alt="${Z}"`;return J&&(U+=` title="${i(J)}"`),U+=">",U}text($){return"tokens"in $&&$.tokens?this.parser.parseInline($.tokens):("escaped"in $)&&$.escaped?$.text:i($.text)}},z7=class{strong({text:$}){return $}em({text:$}){return $}codespan({text:$}){return $}del({text:$}){return $}html({text:$}){return $}text({text:$}){return $}link({text:$}){return""+$}image({text:$}){return""+$}br(){return""}checkbox({raw:$}){return $}},a=class ${options;renderer;textRenderer;constructor(J){this.options=J||K0,this.options.renderer=this.options.renderer||new z8,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new z7}static parse(J,Z){return new $(Z).parse(J)}static parseInline(J,Z){return new $(Z).parseInline(J)}parse(J){let Z="";for(let Q=0;Q<J.length;Q++){let q=J[Q];if(this.options.extensions?.renderers?.[q.type]){let G=q,K=this.options.extensions.renderers[G.type].call({parser:this},G);if(K!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(G.type)){Z+=K||"";continue}}let U=q;switch(U.type){case"space":{Z+=this.renderer.space(U);break}case"hr":{Z+=this.renderer.hr(U);break}case"heading":{Z+=this.renderer.heading(U);break}case"code":{Z+=this.renderer.code(U);break}case"table":{Z+=this.renderer.table(U);break}case"blockquote":{Z+=this.renderer.blockquote(U);break}case"list":{Z+=this.renderer.list(U);break}case"checkbox":{Z+=this.renderer.checkbox(U);break}case"html":{Z+=this.renderer.html(U);break}case"def":{Z+=this.renderer.def(U);break}case"paragraph":{Z+=this.renderer.paragraph(U);break}case"text":{Z+=this.renderer.text(U);break}default:{let G='Token with "'+U.type+'" type was not found.';if(this.options.silent)return console.error(G),"";throw Error(G)}}}return Z}parseInline(J,Z=this.renderer){let Q="";for(let q=0;q<J.length;q++){let U=J[q];if(this.options.extensions?.renderers?.[U.type]){let K=this.options.extensions.renderers[U.type].call({parser:this},U);if(K!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(U.type)){Q+=K||"";continue}}let G=U;switch(G.type){case"escape":{Q+=Z.text(G);break}case"html":{Q+=Z.html(G);break}case"link":{Q+=Z.link(G);break}case"image":{Q+=Z.image(G);break}case"checkbox":{Q+=Z.checkbox(G);break}case"strong":{Q+=Z.strong(G);break}case"em":{Q+=Z.em(G);break}case"codespan":{Q+=Z.codespan(G);break}case"br":{Q+=Z.br(G);break}case"del":{Q+=Z.del(G);break}case"text":{Q+=Z.text(G);break}default:{let K='Token with "'+G.type+'" type was not found.';if(this.options.silent)return console.error(K),"";throw Error(K)}}}return Q}},k0=class{options;block;constructor($){this.options=$||K0}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess($){return $}postprocess($){return $}processAllTokens($){return $}emStrongMask($){return $}provideLexer(){return this.block?g.lex:g.lexInline}provideParser(){return this.block?a.parse:a.parseInline}},oJ=class{defaults=Q7();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=a;Renderer=z8;TextRenderer=z7;Lexer=g;Tokenizer=D8;Hooks=k0;constructor(...$){this.use(...$)}walkTokens($,J){let Z=[];for(let Q of $)switch(Z=Z.concat(J.call(this,Q)),Q.type){case"table":{let q=Q;for(let U of q.header)Z=Z.concat(this.walkTokens(U.tokens,J));for(let U of q.rows)for(let G of U)Z=Z.concat(this.walkTokens(G.tokens,J));break}case"list":{let q=Q;Z=Z.concat(this.walkTokens(q.items,J));break}default:{let q=Q;this.defaults.extensions?.childTokens?.[q.type]?this.defaults.extensions.childTokens[q.type].forEach((U)=>{let G=q[U].flat(1/0);Z=Z.concat(this.walkTokens(G,J))}):q.tokens&&(Z=Z.concat(this.walkTokens(q.tokens,J)))}}return Z}use(...$){let J=this.defaults.extensions||{renderers:{},childTokens:{}};return $.forEach((Z)=>{let Q={...Z};if(Q.async=this.defaults.async||Q.async||!1,Z.extensions&&(Z.extensions.forEach((q)=>{if(!q.name)throw Error("extension name required");if("renderer"in q){let U=J.renderers[q.name];U?J.renderers[q.name]=function(...G){let K=q.renderer.apply(this,G);return K===!1&&(K=U.apply(this,G)),K}:J.renderers[q.name]=q.renderer}if("tokenizer"in q){if(!q.level||q.level!=="block"&&q.level!=="inline")throw Error("extension level must be 'block' or 'inline'");let U=J[q.level];U?U.unshift(q.tokenizer):J[q.level]=[q.tokenizer],q.start&&(q.level==="block"?J.startBlock?J.startBlock.push(q.start):J.startBlock=[q.start]:q.level==="inline"&&(J.startInline?J.startInline.push(q.start):J.startInline=[q.start]))}"childTokens"in q&&q.childTokens&&(J.childTokens[q.name]=q.childTokens)}),Q.extensions=J),Z.renderer){let q=this.defaults.renderer||new z8(this.defaults);for(let U in Z.renderer){if(!(U in q))throw Error(`renderer '${U}' does not exist`);if(["options","parser"].includes(U))continue;let G=U,K=Z.renderer[G],j=q[G];q[G]=(..._)=>{let D=K.apply(q,_);return D===!1&&(D=j.apply(q,_)),D||""}}Q.renderer=q}if(Z.tokenizer){let q=this.defaults.tokenizer||new D8(this.defaults);for(let U in Z.tokenizer){if(!(U in q))throw Error(`tokenizer '${U}' does not exist`);if(["options","rules","lexer"].includes(U))continue;let G=U,K=Z.tokenizer[G],j=q[G];q[G]=(..._)=>{let D=K.apply(q,_);return D===!1&&(D=j.apply(q,_)),D}}Q.tokenizer=q}if(Z.hooks){let q=this.defaults.hooks||new k0;for(let U in Z.hooks){if(!(U in q))throw Error(`hook '${U}' does not exist`);if(["options","block"].includes(U))continue;let G=U,K=Z.hooks[G],j=q[G];k0.passThroughHooks.has(U)?q[G]=(_)=>{if(this.defaults.async&&k0.passThroughHooksRespectAsync.has(U))return(async()=>{let z=await K.call(q,_);return j.call(q,z)})();let D=K.call(q,_);return j.call(q,D)}:q[G]=(..._)=>{if(this.defaults.async)return(async()=>{let z=await K.apply(q,_);return z===!1&&(z=await j.apply(q,_)),z})();let D=K.apply(q,_);return D===!1&&(D=j.apply(q,_)),D}}Q.hooks=q}if(Z.walkTokens){let q=this.defaults.walkTokens,U=Z.walkTokens;Q.walkTokens=function(G){let K=[];return K.push(U.call(this,G)),q&&(K=K.concat(q.call(this,G))),K}}this.defaults={...this.defaults,...Q}}),this}setOptions($){return this.defaults={...this.defaults,...$},this}lexer($,J){return g.lex($,J??this.defaults)}parser($,J){return a.parse($,J??this.defaults)}parseMarkdown($){return(J,Z)=>{let Q={...Z},q={...this.defaults,...Q},U=this.onError(!!q.silent,!!q.async);if(this.defaults.async===!0&&Q.async===!1)return U(Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof J>"u"||J===null)return U(Error("marked(): input parameter is undefined or null"));if(typeof J!="string")return U(Error("marked(): input parameter is of type "+Object.prototype.toString.call(J)+", string expected"));if(q.hooks&&(q.hooks.options=q,q.hooks.block=$),q.async)return(async()=>{let G=q.hooks?await q.hooks.preprocess(J):J,K=await(q.hooks?await q.hooks.provideLexer():$?g.lex:g.lexInline)(G,q),j=q.hooks?await q.hooks.processAllTokens(K):K;q.walkTokens&&await Promise.all(this.walkTokens(j,q.walkTokens));let _=await(q.hooks?await q.hooks.provideParser():$?a.parse:a.parseInline)(j,q);return q.hooks?await q.hooks.postprocess(_):_})().catch(U);try{q.hooks&&(J=q.hooks.preprocess(J));let G=(q.hooks?q.hooks.provideLexer():$?g.lex:g.lexInline)(J,q);q.hooks&&(G=q.hooks.processAllTokens(G)),q.walkTokens&&this.walkTokens(G,q.walkTokens);let K=(q.hooks?q.hooks.provideParser():$?a.parse:a.parseInline)(G,q);return q.hooks&&(K=q.hooks.postprocess(K)),K}catch(G){return U(G)}}}onError($,J){return(Z)=>{if(Z.message+=`
68
+ Please report this to https://github.com/markedjs/marked.`,$){let Q="<p>An error occurred:</p><pre>"+i(Z.message+"",!0)+"</pre>";return J?Promise.resolve(Q):Q}if(J)return Promise.reject(Z);throw Z}}},j0=new oJ;function L($,J){return j0.parse($,J)}L.options=L.setOptions=function($){return j0.setOptions($),L.defaults=j0.defaults,m7(L.defaults),L};L.getDefaults=Q7;L.defaults=K0;L.use=function(...$){return j0.use(...$),L.defaults=j0.defaults,m7(L.defaults),L};L.walkTokens=function($,J){return j0.walkTokens($,J)};L.parseInline=j0.parseInline;L.Parser=a;L.parser=a.parse;L.Renderer=z8;L.TextRenderer=z7;L.Lexer=g;L.lexer=g.lex;L.Tokenizer=D8;L.Hooks=k0;L.parse=L;var{options:q9,setOptions:U9,use:G9,walkTokens:j9,parseInline:K9}=L,_9=a.parse,D9=g.lex;function iJ($,J,Z=2){if(!J||J.tokens.length===0)try{let K=g.lex($,{gfm:!0});return{content:$,tokens:K,stableTokenCount:Math.max(0,K.length-Z)}}catch{return{content:$,tokens:[],stableTokenCount:0}}let Q=0,q=0;for(let K of J.tokens){let j=K.raw.length;if(Q+j<=$.length&&$.startsWith(K.raw,Q))q++,Q+=j;else break}q=Math.max(0,q-Z),Q=0;for(let K=0;K<q;K++)Q+=J.tokens[K].raw.length;let U=J.tokens.slice(0,q),G=$.slice(Q);if(!G)return{content:$,tokens:U,stableTokenCount:U.length};try{let K=g.lex(G,{gfm:!0});return{content:$,tokens:[...U,...K],stableTokenCount:Z===0?U.length+K.length:U.length}}catch{try{let K=g.lex($,{gfm:!0});return{content:$,tokens:K,stableTokenCount:0}}catch{return{content:$,tokens:[],stableTokenCount:0}}}}var y7=/(?:\r?\n){2,}$/,C7=/(?:\r?\n)+$/;function S7($,J){if(!$||!J)return $===J;return $.equals(J)}class q6 extends x{_content="";_syntaxStyle;_fg;_bg;_conceal;_concealCode;_treeSitterClient;_tableOptions;_renderNode;_internalBlockMode;_parseState=null;_streaming=!1;_blockStates=[];_stableBlockCount=0;_styleDirty=!1;_linkifyMarkdownChunks=($,J)=>c0($,{content:J.content,highlights:J.highlights});_contentDefaultOptions={content:"",conceal:!0,concealCode:!1,streaming:!1,internalBlockMode:"coalesced"};constructor($,J){super($,{...J,flexDirection:"column",flexShrink:J.flexShrink??0});this._syntaxStyle=J.syntaxStyle,this._fg=J.fg?O(J.fg):void 0,this._bg=J.bg?O(J.bg):void 0,this._conceal=J.conceal??this._contentDefaultOptions.conceal,this._concealCode=J.concealCode??this._contentDefaultOptions.concealCode,this._content=J.content??this._contentDefaultOptions.content,this._treeSitterClient=J.treeSitterClient,this._tableOptions=J.tableOptions,this._renderNode=J.renderNode,this._streaming=J.streaming??this._contentDefaultOptions.streaming,this._internalBlockMode=J.internalBlockMode??this._contentDefaultOptions.internalBlockMode,this.updateBlocks()}get content(){return this._content}set content($){if(this.isDestroyed)return;if(this._content!==$)this._content=$,this.updateBlocks(),this.requestRender()}get syntaxStyle(){return this._syntaxStyle}set syntaxStyle($){if(this._syntaxStyle!==$)this._syntaxStyle=$,this._styleDirty=!0}get fg(){return this._fg}set fg($){let J=$?O($):void 0;if(!S7(this._fg,J))this._fg=J,this._styleDirty=!0}get bg(){return this._bg}set bg($){let J=$?O($):void 0;if(!S7(this._bg,J))this._bg=J,this._styleDirty=!0}get conceal(){return this._conceal}set conceal($){if(this._conceal!==$)this._conceal=$,this._styleDirty=!0}get concealCode(){return this._concealCode}set concealCode($){if(this._concealCode!==$)this._concealCode=$,this._styleDirty=!0}get streaming(){return this._streaming}set streaming($){if(this.isDestroyed)return;if(this._streaming!==$)this._streaming=$,this.updateBlocks(!0)}get tableOptions(){return this._tableOptions}set tableOptions($){this._tableOptions=$,this.applyTableOptionsToBlocks()}get renderNode(){return this._renderNode}set renderNode($){if(this._renderNode===$)return;this._renderNode=$,this.clearBlockStates(),this._parseState=null,this.updateBlocks(!0),this.requestRender()}get internalBlockMode(){return this._internalBlockMode}set internalBlockMode($){if(this._internalBlockMode===$)return;this._internalBlockMode=$,this.updateBlocks(!0),this.requestRender()}getStyle($){if(!this._syntaxStyle)return;let J=this._syntaxStyle.getStyle($);if(!J&&$.includes(".")){let Z=$.split(".")[0];J=this._syntaxStyle.getStyle(Z)}return J}createChunk($,J,Z){let Q=this.getStyle(J)||this.getStyle("default");return{__isChunk:!0,text:$,fg:Q?.fg,bg:Q?.bg,attributes:Q?H0({bold:Q.bold,italic:Q.italic,underline:Q.underline,dim:Q.dim}):0,link:Z}}createDefaultChunk($){return this.createChunk($,"default")}renderInlineContent($,J){for(let Z of $)this.renderInlineToken(Z,J)}renderInlineToken($,J){switch($.type){case"text":J.push(this.createDefaultChunk($.text));break;case"escape":J.push(this.createDefaultChunk($.text));break;case"codespan":if(this._conceal)J.push(this.createChunk($.text,"markup.raw"));else J.push(this.createChunk("`","markup.raw")),J.push(this.createChunk($.text,"markup.raw")),J.push(this.createChunk("`","markup.raw"));break;case"strong":if(!this._conceal)J.push(this.createChunk("**","markup.strong"));for(let Z of $.tokens)this.renderInlineTokenWithStyle(Z,J,"markup.strong");if(!this._conceal)J.push(this.createChunk("**","markup.strong"));break;case"em":if(!this._conceal)J.push(this.createChunk("*","markup.italic"));for(let Z of $.tokens)this.renderInlineTokenWithStyle(Z,J,"markup.italic");if(!this._conceal)J.push(this.createChunk("*","markup.italic"));break;case"del":if(!this._conceal)J.push(this.createChunk("~~","markup.strikethrough"));for(let Z of $.tokens)this.renderInlineTokenWithStyle(Z,J,"markup.strikethrough");if(!this._conceal)J.push(this.createChunk("~~","markup.strikethrough"));break;case"link":{let Z={url:$.href};if(this._conceal){for(let Q of $.tokens)this.renderInlineTokenWithStyle(Q,J,"markup.link.label",Z);J.push(this.createChunk(" (","markup.link",Z)),J.push(this.createChunk($.href,"markup.link.url",Z)),J.push(this.createChunk(")","markup.link",Z))}else{J.push(this.createChunk("[","markup.link",Z));for(let Q of $.tokens)this.renderInlineTokenWithStyle(Q,J,"markup.link.label",Z);J.push(this.createChunk("](","markup.link",Z)),J.push(this.createChunk($.href,"markup.link.url",Z)),J.push(this.createChunk(")","markup.link",Z))}break}case"image":{let Z={url:$.href};if(this._conceal)J.push(this.createChunk($.text||"image","markup.link.label",Z));else J.push(this.createChunk("![","markup.link",Z)),J.push(this.createChunk($.text||"","markup.link.label",Z)),J.push(this.createChunk("](","markup.link",Z)),J.push(this.createChunk($.href,"markup.link.url",Z)),J.push(this.createChunk(")","markup.link",Z));break}case"br":J.push(this.createDefaultChunk(`
69
+ `));break;default:if("tokens"in $&&Array.isArray($.tokens))this.renderInlineContent($.tokens,J);else if("text"in $&&typeof $.text==="string")J.push(this.createDefaultChunk($.text));break}}renderInlineTokenWithStyle($,J,Z,Q){switch($.type){case"text":J.push(this.createChunk($.text,Z,Q));break;case"escape":J.push(this.createChunk($.text,Z,Q));break;case"codespan":if(this._conceal)J.push(this.createChunk($.text,"markup.raw",Q));else J.push(this.createChunk("`","markup.raw",Q)),J.push(this.createChunk($.text,"markup.raw",Q)),J.push(this.createChunk("`","markup.raw",Q));break;default:this.renderInlineToken($,J);break}}applyMargins($,J,Z){$.marginTop=J,$.marginBottom=Z}createMarkdownCodeRenderable($,J,Z=0,Q=this._linkifyMarkdownChunks,q){return new w(this.ctx,{id:J,content:$,filetype:"markdown",syntaxStyle:this._syntaxStyle,fg:this._fg,bg:this._bg,conceal:this._conceal,drawUnstyledText:!1,streaming:!0,baseHighlight:q,onChunks:Q,treeSitterClient:this._treeSitterClient,width:"100%",marginBottom:Z})}getBlockquoteContent($){return"text"in $&&typeof $.text==="string"&&$.text?$.text:" "}getBlockquoteBorderColor(){return this.getStyle("conceal")?.fg??this.getStyle("default")?.fg??this._fg??"#FFFFFF"}createBlockquoteRenderable($,J,Z=0){let Q=new S(this.ctx,{id:J,width:"100%",border:["left"],borderColor:this.getBlockquoteBorderColor(),paddingLeft:1,flexShrink:0,marginBottom:Z});return Q.add(this.createMarkdownCodeRenderable(this.getBlockquoteContent($),`${J}-content`,0,this._linkifyMarkdownChunks,"markup.quote")),Q}createListRenderable($,J,Z=0){let Q=new S(this.ctx,{id:J,width:"100%",flexDirection:"column",flexShrink:0,marginBottom:Z});for(let q of this.getListItemInputs($,J))Q.add(this.createListItemRenderable(q));return Q}getListItemInputs($,J){let Z=$.items??[],Q=$.start===""||$.start===void 0||$.start===null?1:Number($.start),q=Math.max(1,...Z.map((U,G)=>($.ordered?`${Q+G}.`:"-").length));return Z.map((U,G)=>({item:U,marker:$.ordered?`${Q+G}.`:"-",markerWidth:q,id:`${J}-item-${G}`}))}applyListRenderable($,J,Z,Q,q=0){if(!($ instanceof S))return!1;$.marginBottom=q;let U=this.getListItemInputs(J,Q),G=Z?.items??[],K=$.getChildren();for(let j=0;j<U.length;j+=1){let _=U[j],D=K[j];if(D instanceof S&&this.applyListItemRenderable(D,_,G[j]))continue;D?.destroyRecursively(),$.add(this.createListItemRenderable(_),j)}for(let j=K.length-1;j>=U.length;j-=1)K[j]?.destroyRecursively();return!0}createListItemRenderable($){let J=new S(this.ctx,{id:$.id,width:"100%",flexDirection:"row",flexShrink:0,marginBottom:/\n[ \t]*\n$/.test($.item.raw)?1:0});J.add(new $0(this.ctx,{id:`${$.id}-marker`,content:new Q0([this.createChunk($.marker.padStart($.markerWidth)+" ","markup.list")]),width:$.markerWidth+1,flexShrink:0}));let Z=new S(this.ctx,{id:`${$.id}-content`,flexDirection:"column",flexGrow:1,flexShrink:1});J.add(Z);let Q=0;for(let q=0;q<$.item.tokens.length;q+=1){let U=$.item.tokens[q];if(!U)continue;if(U.type==="checkbox")continue;if(U.type==="space"){Q=Math.max(Q,1);continue}let G=this.createListChildRenderable(U,`${$.id}-child-${q}`);if(!G)continue;G.marginTop=U.type==="list"?0:Q,Q=0,Z.add(G)}return J}applyListItemRenderable($,J,Z){this.applyListItemMarker($,J);let Q=$.getChildren()[1];if(!(Q instanceof S))return!1;if(Z&&Z.raw===J.item.raw)return!0;return this.applyListItemChildren(Q,J.item,Z,J.id)}applyListItemChildren($,J,Z,Q){let q=Z?this.getRenderableListItemTokens(Z):[],U=$.getChildren(),G=0,K=0;for(let j=0;j<J.tokens.length;j+=1){let _=J.tokens[j];if(!_)continue;if(_.type==="checkbox")continue;if(_.type==="space"){K=Math.max(K,1);continue}let D=U[G],z=`${Q}-child-${j}`,V=_.type==="list"?0:K;if(K=0,!D){let X=this.createListChildRenderable(_,z);if(!X)return!1;X.marginTop=V,$.add(X,G),G+=1;continue}if(!this.applyListChildRenderable(D,_,q[G],z))return!1;D.marginTop=V,G+=1}return this.destroyListItemChildrenAfter($,G),!0}getRenderableListItemTokens($){let J=[];for(let Z of $.tokens){if(Z.type==="checkbox"||Z.type==="space")continue;J.push(Z)}return J}applyListChildRenderable($,J,Z,Q){if((J.type==="text"||J.type==="paragraph")&&$ instanceof w)return this.applyMarkdownCodeRenderable($,this.normalizeScrollbackMarkdownBlockRaw(J.raw),0),!0;if(J.type==="list"&&$ instanceof S)return this.applyListRenderable($,J,Z,Q);if(J.type==="code"&&$ instanceof w)return this.applyCodeBlockRenderable($,J,0),!0;return Z?.raw===J.raw}destroyListItemChildrenAfter($,J){let Z=$.getChildren();for(let Q=Z.length-1;Q>=J;Q-=1)Z[Q]?.destroyRecursively()}applyListItemMarker($,J){let Z=$.getChildren()[0];if(!(Z instanceof $0))return;let Q=/\n[ \t]*\n$/.test(J.item.raw)?1:0,q=J.markerWidth+1,U=J.marker.padStart(J.markerWidth)+" ";if($.marginBottom!==Q)$.marginBottom=Q;if(Z.width!==q)Z.width=q;if(Z.chunks[0]?.text!==U)Z.content=new Q0([this.createChunk(U,"markup.list")])}createListChildRenderable($,J){if($.type==="text"||$.type==="paragraph")return this.createMarkdownCodeRenderable(this.normalizeScrollbackMarkdownBlockRaw($.raw),J);if($.type==="list")return this.createListRenderable($,J);if($.type==="code")return this.createCodeRenderable($,J);if($.type==="blockquote")return this.createBlockquoteRenderable($,J);if($.type==="hr")return this.createHorizontalRuleRenderable(J);if($.type==="table")return this.createTableBlock($,J).renderable;return $.raw?this.createMarkdownCodeRenderable($.raw,J):null}createHorizontalRuleRenderable($,J=0){return new S(this.ctx,{id:$,width:"100%",height:1,border:["top"],borderColor:this.getStyle("conceal")?.fg??this._fg??"#888888",flexShrink:0,marginBottom:J})}createCodeRenderable($,J,Z=0){return new w(this.ctx,{id:J,content:$.text,filetype:P0($.lang??""),syntaxStyle:this._syntaxStyle,fg:this._fg,bg:this._bg,conceal:this._concealCode,drawUnstyledText:!this._streaming,streaming:this._streaming,treeSitterClient:this._treeSitterClient,width:"100%",marginBottom:Z})}applyMarkdownCodeRenderable($,J,Z,Q){$.content=J,$.filetype="markdown",$.syntaxStyle=this._syntaxStyle,$.fg=this._fg,$.bg=this._bg,$.conceal=this._conceal,$.drawUnstyledText=!1,$.streaming=!0,$.baseHighlight=Q,$.marginBottom=Z}applyBlockquoteRenderable($,J,Z){if(!($ instanceof S))return;$.borderColor=this.getBlockquoteBorderColor(),$.marginBottom=Z;let Q=$.getChildren()[0];if(Q instanceof w){this.applyMarkdownCodeRenderable(Q,this.getBlockquoteContent(J),0,"markup.quote");return}for(let q of $.getChildren())q.destroyRecursively();$.add(this.createMarkdownCodeRenderable(this.getBlockquoteContent(J),`${$.id}-content`,0,this._linkifyMarkdownChunks,"markup.quote"))}applyCodeBlockRenderable($,J,Z){if(!($ instanceof w))return;$.filetype=P0(J.lang??""),$.syntaxStyle=this._syntaxStyle,$.fg=this._fg,$.bg=this._bg,$.conceal=this._concealCode,$.drawUnstyledText=!this._streaming,$.streaming=this._streaming,$.content=J.text,$.marginBottom=Z}shouldRenderSeparately($){return $.type==="code"||$.type==="table"||$.type==="blockquote"||$.type==="hr"}getInterBlockMargin($,J){if(!J)return 0;if(this.shouldRenderSeparately($))return 1;if(!this.shouldRenderSeparately(J))return 0;return C7.test($.raw)?0:1}applyInterBlockMargin($,J,Z){if($.tracksInterBlockMargin===!1)return;$.renderable.marginBottom=this.getInterBlockMargin(J,Z)}createMarkdownBlockToken($){return{type:"paragraph",raw:$,text:$,tokens:[]}}normalizeMarkdownBlockRaw($){return $.replace(y7,`
70
+ `)}normalizeScrollbackMarkdownBlockRaw($){return $.replace(C7,"")}buildRenderableTokens($){if(this._renderNode)return $.filter((q)=>q.type!=="space");let J=[],Z="",Q=()=>{if(Z.length===0)return;let q=this.normalizeMarkdownBlockRaw(Z);if(q.length>0)J.push(this.createMarkdownBlockToken(q));Z=""};for(let q=0;q<$.length;q+=1){let U=$[q];if(U.type==="space"){if(Z.length===0)continue;let G=q+1;while(G<$.length&&$[G].type==="space")G+=1;let K=$[G];if(K&&!this.shouldRenderSeparately(K))Z+=U.raw;continue}if(this.shouldRenderSeparately(U)){Q(),J.push(U);continue}Z+=U.raw}return Q(),J}buildTopLevelRenderBlocks($){let J=[],Z="";for(let Q=0;Q<$.length;Q+=1){let q=$[Q];if(q.type==="space"){Z+=q.raw;continue}let U=J[J.length-1],G=U&&this.shouldAddTopLevelMargin(U.token,q,Z)?1:0;J.push({token:q,sourceTokenEnd:Q+1,marginTop:G}),Z=""}return J}shouldAddTopLevelMargin($,J,Z){if(this.isSeparatedTopLevelBlock($)||this.isSeparatedTopLevelBlock(J))return!0;if($.type!=="paragraph"||J.type!=="paragraph")return!1;return y7.test($.raw+Z)}isSeparatedTopLevelBlock($){return $.type==="heading"||$.type==="list"||this.shouldRenderSeparately($)}getTableRowsToRender($){return $.rows}hashString($,J){let Z=J>>>0;for(let Q=0;Q<$.length;Q+=1)Z^=$.charCodeAt(Q),Z=Math.imul(Z,16777619);return Z>>>0}hashTableToken($,J,Z=0){let Q=this.hashString($.type,J);if("raw"in $&&typeof $.raw==="string")return this.hashString($.raw,Q);if("text"in $&&typeof $.text==="string")Q=this.hashString($.text,Q);if(Z<2&&"tokens"in $&&Array.isArray($.tokens))for(let q of $.tokens)Q=this.hashTableToken(q,Q,Z+1);return Q>>>0}getTableCellKey($,J){let Z=J?2902232141:1371922141;if(!$)return Z;if(typeof $.text==="string")return this.hashString($.text,Z);if(Array.isArray($.tokens)&&$.tokens.length>0){let Q=Z^$.tokens.length;for(let q of $.tokens)Q=this.hashTableToken(q,Q);return Q>>>0}return(Z^2654435769)>>>0}createTableDataCellChunks($){let J=[];if($)this.renderInlineContent($.tokens,J);return J.length>0?J:[this.createDefaultChunk(" ")]}createTableHeaderCellChunks($){let J=[];this.renderInlineContent($.tokens,J);let Z=J.length>0?J:[this.createDefaultChunk(" ")],Q=this.getStyle("markup.heading")||this.getStyle("default");if(!Q)return Z;let q=H0({bold:Q.bold,italic:Q.italic,underline:Q.underline,dim:Q.dim});return Z.map((U)=>({...U,fg:Q.fg??U.fg,bg:Q.bg??U.bg,attributes:q}))}buildTableContentCache($,J,Z=!1){let Q=$.header.length,q=this.getTableRowsToRender($);if(Q===0||q.length===0)return{cache:null,changed:J!==void 0};let U=[],G=[],K=q.length+1,j=Z||!J;for(let _=0;_<K;_+=1){let D=[],z=new Uint32Array(Q);for(let V=0;V<Q;V+=1){let X=_===0,Y=X?$.header[V]:q[_-1]?.[V],H=this.getTableCellKey(Y,X);z[V]=H;let N=J?.cellKeys[_]?.[V],F=J?.content[_]?.[V];if(!Z&&N===H&&Array.isArray(F)){D.push(F);continue}j=!0,D.push(X?this.createTableHeaderCellChunks($.header[V]):this.createTableDataCellChunks(Y))}U.push(D),G.push(z)}if(J&&!j){if(J.content.length!==U.length)j=!0;else for(let _=0;_<U.length;_+=1)if((J.content[_]?.length??0)!==U[_].length){j=!0;break}}return{cache:{content:U,cellKeys:G},changed:j}}resolveTableStyle($=this._tableOptions){if($?.style==="columns")return"columns";if($?.style==="grid")return"grid";return this._internalBlockMode==="top-level"?"columns":"grid"}usesBorderlessColumnSpacing($=this._tableOptions){let J=this.resolveTableStyle($),Z=$?.borders??J==="grid";return J==="columns"&&!Z}resolveTableRenderableOptions(){let $=this.resolveTableStyle(),J=this._tableOptions?.borders??$==="grid";return{columnWidthMode:this._tableOptions?.widthMode??($==="columns"?"content":"full"),columnFitter:this._tableOptions?.columnFitter??"proportional",wrapMode:this._tableOptions?.wrapMode??"word",cellPadding:this._tableOptions?.cellPadding??0,cellPaddingX:this._tableOptions?.cellPaddingX??this._tableOptions?.cellPadding??0,cellPaddingY:this._tableOptions?.cellPaddingY??this._tableOptions?.cellPadding??0,columnGap:this.usesBorderlessColumnSpacing()?2:0,border:J,outerBorder:this._tableOptions?.outerBorder??J,showBorders:J,borderStyle:this._tableOptions?.borderStyle??"single",borderColor:this._tableOptions?.borderColor??this.getStyle("conceal")?.fg??"#888888",selectable:this._tableOptions?.selectable??!0}}applyTableRenderableOptions($,J){$.columnWidthMode=J.columnWidthMode,$.columnFitter=J.columnFitter,$.wrapMode=J.wrapMode,$.cellPaddingX=J.cellPaddingX,$.cellPaddingY=J.cellPaddingY,$.columnGap=J.columnGap,$.border=J.border,$.outerBorder=J.outerBorder,$.showBorders=J.showBorders,$.borderStyle=J.borderStyle,$.borderColor=J.borderColor,$.selectable=J.selectable}applyTableOptionsToBlocks(){let $=this.resolveTableRenderableOptions(),J=!1;for(let Z of this._blockStates)if(Z.renderable instanceof s)this.applyTableRenderableOptions(Z.renderable,$),J=!0;if(J)this.requestRender()}createTextTableRenderable($,J,Z=0){let Q=this.resolveTableRenderableOptions();return new s(this.ctx,{id:J,content:$,width:"100%",marginBottom:Z,columnWidthMode:Q.columnWidthMode,columnFitter:Q.columnFitter,wrapMode:Q.wrapMode,cellPadding:Q.cellPadding,cellPaddingX:Q.cellPaddingX,cellPaddingY:Q.cellPaddingY,columnGap:Q.columnGap,border:Q.border,outerBorder:Q.outerBorder,showBorders:Q.showBorders,borderStyle:Q.borderStyle,borderColor:Q.borderColor,selectable:Q.selectable})}createTableBlock($,J,Z=0,Q,q=!1){let{cache:U}=this.buildTableContentCache($,Q,q);if(!U)return{renderable:this.createMarkdownCodeRenderable($.raw,J,Z)};return{renderable:this.createTextTableRenderable(U.content,J,Z),tableContentCache:U}}getStableBlockCount($,J){if(this._internalBlockMode!=="top-level")return 0;let Z=0;for(let Q of $){if(Q.sourceTokenEnd<=J){Z+=1;continue}break}return Z}syncTopLevelBlockState($,J,Z=$.tableContentCache){$.token=J.token,$.tokenRaw=J.token.raw,$.marginTop=J.marginTop,$.tableContentCache=Z}getTopLevelBlockRaw($){if(!$.raw)return;return this.shouldRenderSeparately($)?$.raw:this.normalizeScrollbackMarkdownBlockRaw($.raw)}createTopLevelDefaultRenderable($,J){let{token:Z,marginTop:Q}=$,q=`${this.id}-block-${J}`;if(Z.type==="code"){let K=this.createCodeRenderable(Z,q);return K.marginTop=Q,{renderable:K}}if(Z.type==="table"){let K=this.createTableBlock(Z,q);return K.renderable.marginTop=Q,K}if(Z.type==="blockquote"){let K=this.createBlockquoteRenderable(Z,q);return K.marginTop=Q,{renderable:K}}if(Z.type==="list"){let K=this.createListRenderable(Z,q);return K.marginTop=Q,{renderable:K}}if(Z.type==="hr"){let K=this.createHorizontalRuleRenderable(q);return K.marginTop=Q,{renderable:K}}let U=this.getTopLevelBlockRaw(Z);if(!U)return{renderable:void 0};let G=this.createMarkdownCodeRenderable(U,q);return G.marginTop=Q,{renderable:G}}createTopLevelRenderable($,J){if(!this._renderNode)return this.createTopLevelDefaultRenderable($,J);let Z,Q={syntaxStyle:this._syntaxStyle,conceal:this._conceal,concealCode:this._concealCode,treeSitterClient:this._treeSitterClient,defaultRender:()=>{return Z=this.createTopLevelDefaultRenderable($,J),Z.renderable??null}},q=this._renderNode($.token,Q);if(q){let U=typeof q.marginTop==="number"?Math.max(q.marginTop,$.marginTop):$.marginTop;return this.applyMargins(q,U,0),{renderable:q}}return Z??this.createTopLevelDefaultRenderable($,J)}createDefaultRenderable($,J,Z){let Q=`${this.id}-block-${J}`,q=this.getInterBlockMargin($,Z);if($.type==="code")return this.createCodeRenderable($,Q,q);if($.type==="blockquote")return this.createBlockquoteRenderable($,Q,q);if($.type==="list")return this.createListRenderable($,Q,q);if($.type==="hr")return this.createHorizontalRuleRenderable(Q,q);if($.type==="table")return this.createTableBlock($,Q,q).renderable;if($.type==="space")return null;if(!$.raw)return null;return this.createMarkdownCodeRenderable($.raw,Q,q)}updateBlockRenderable($,J,Z,Q,q=!1){let U=this.getInterBlockMargin(J,Q);if(J.type==="code"){this.applyCodeBlockRenderable($.renderable,J,U);return}if(J.type==="blockquote"){this.applyBlockquoteRenderable($.renderable,J,U);return}if(J.type==="list"){if(!this.applyListRenderable($.renderable,J,q?void 0:$.token,`${this.id}-block-${Z}`,U))$.renderable.destroyRecursively(),$.renderable=this.createListRenderable(J,`${this.id}-block-${Z}`,U),this.add($.renderable,Z);return}if(J.type==="hr"){$.renderable.marginBottom=U;return}if(J.type==="table"){let K=J,{cache:j,changed:_}=this.buildTableContentCache(K,$.tableContentCache);if(!j){if($.renderable instanceof w){this.applyMarkdownCodeRenderable($.renderable,K.raw,U),$.tableContentCache=void 0;return}$.renderable.destroyRecursively();let z=this.createMarkdownCodeRenderable(K.raw,`${this.id}-block-${Z}`,U);this.add(z,Z),$.renderable=z,$.tableContentCache=void 0;return}if($.renderable instanceof s){if(_)$.renderable.content=j.content;this.applyTableRenderableOptions($.renderable,this.resolveTableRenderableOptions()),$.renderable.marginBottom=U,$.tableContentCache=j;return}$.renderable.destroyRecursively();let D=this.createTextTableRenderable(j.content,`${this.id}-block-${Z}`,U);this.add(D,Z),$.renderable=D,$.tableContentCache=j;return}if($.renderable instanceof w){this.applyMarkdownCodeRenderable($.renderable,this.getTopLevelBlockRaw(J)??J.raw,U);return}$.renderable.destroyRecursively();let G=this.createMarkdownCodeRenderable(this.getTopLevelBlockRaw(J)??J.raw,`${this.id}-block-${Z}`,U);this.add(G,Z),$.renderable=G}updateTopLevelBlocks($,J){let Z=this.buildTopLevelRenderBlocks($);this._stableBlockCount=this.getStableBlockCount(Z,this._parseState?.stableTokenCount??0);let Q=0;for(let q=0;q<Z.length;q+=1){let U=Z[q],G=this._blockStates[Q];if(G&&G.token===U.token&&!J){if(G.marginTop!==U.marginTop)this.applyMargins(G.renderable,U.marginTop,0);this.syncTopLevelBlockState(G,U),Q++;continue}if(G&&G.tokenRaw===U.token.raw&&G.token.type===U.token.type&&!J){if(G.marginTop!==U.marginTop)this.applyMargins(G.renderable,U.marginTop,0);this.syncTopLevelBlockState(G,U),Q++;continue}if(G&&!J&&!this._renderNode&&G.token.type===U.token.type&&this.canUpdateBlockRenderable(G.renderable,U.token)){if(this.updateBlockRenderable(G,U.token,Q,Z[q+1]?.token),G.renderable.marginBottom=0,G.marginTop!==U.marginTop)this.applyMargins(G.renderable,U.marginTop,0);this.syncTopLevelBlockState(G,U),Q++;continue}if(G)G.renderable.destroyRecursively();let K=this.createTopLevelRenderable(U,Q);if(K.renderable)this.add(K.renderable,Q),this._blockStates[Q]={token:U.token,tokenRaw:U.token.raw,marginTop:U.marginTop,renderable:K.renderable,tableContentCache:K.tableContentCache};Q++}while(this._blockStates.length>Q)this._blockStates.pop().renderable.destroyRecursively()}canUpdateBlockRenderable($,J){if(J.type==="code")return $ instanceof w;if(J.type==="table")return $ instanceof s;if(J.type==="blockquote")return $ instanceof S;if(J.type==="list")return $ instanceof S;if(J.type==="hr")return $ instanceof S;return $ instanceof w}updateBlocks($=!1){if(this.isDestroyed)return;if(!this._content){this.clearBlockStates(),this._parseState=null,this._stableBlockCount=0;return}let J=this._streaming?2:0;this._parseState=iJ(this._content,this._parseState,J);let Z=this._parseState.tokens;if(Z.length===0&&this._content.length>0){this.clearBlockStates(),this._stableBlockCount=0;let U=this.createMarkdownCodeRenderable(this._content,`${this.id}-fallback`);this.add(U),this._blockStates=[{token:{type:"text",raw:this._content,text:this._content},tokenRaw:this._content,marginTop:0,renderable:U,tracksInterBlockMargin:!0}];return}if(this._internalBlockMode==="top-level"){this.updateTopLevelBlocks(Z,$);return}this._stableBlockCount=0;let Q=this.buildRenderableTokens(Z),q=0;for(let U=0;U<Q.length;U++){let G=Q[U],K=Q[U+1],j=this._blockStates[q],_=$;if(j&&j.token===G){if(_)this.updateBlockRenderable(j,G,q,K),j.tokenRaw=G.raw;else this.applyInterBlockMargin(j,G,K);q++;continue}if(j&&j.tokenRaw===G.raw&&j.token.type===G.type){if(j.token=G,_)this.updateBlockRenderable(j,G,q,K),j.tokenRaw=G.raw;else this.applyInterBlockMargin(j,G,K);q++;continue}if(j&&j.token.type===G.type){this.updateBlockRenderable(j,G,q,K),j.token=G,j.tokenRaw=G.raw,j.tracksInterBlockMargin=!0,q++;continue}if(j)j.renderable.destroyRecursively();let D,z,V=!0;if(this._renderNode){let X,Y={syntaxStyle:this._syntaxStyle,conceal:this._conceal,concealCode:this._concealCode,treeSitterClient:this._treeSitterClient,defaultRender:()=>{return X=this.createDefaultRenderable(G,q,K),X}},H=this._renderNode(G,Y);if(H)D=H,V=H===X}if(!D)if(G.type==="table"){let X=this.createTableBlock(G,`${this.id}-block-${q}`,this.getInterBlockMargin(G,K));D=X.renderable,z=X.tableContentCache}else D=this.createDefaultRenderable(G,q,K)??void 0;if(G.type==="table"&&!z&&D instanceof s){let{cache:X}=this.buildTableContentCache(G);z=X??void 0}if(D)this.add(D,q),this._blockStates[q]={token:G,tokenRaw:G.raw,renderable:D,tableContentCache:z,tracksInterBlockMargin:V};q++}while(this._blockStates.length>q)this._blockStates.pop().renderable.destroyRecursively()}clearBlockStates(){for(let $ of this._blockStates)$.renderable.destroyRecursively();this._blockStates=[],this._stableBlockCount=0}rerenderBlocks(){if(this._internalBlockMode==="top-level"){this.updateBlocks(!0);return}for(let $=0;$<this._blockStates.length;$++){let J=this._blockStates[$],Z=this.getInterBlockMargin(J.token,this._blockStates[$+1]?.token);if(J.token.type==="code"){this.applyCodeBlockRenderable(J.renderable,J.token,Z);continue}if(J.token.type==="blockquote"){this.applyBlockquoteRenderable(J.renderable,J.token,Z);continue}if(J.token.type==="list"){this.updateBlockRenderable(J,J.token,$,this._blockStates[$+1]?.token,!0);continue}if(J.token.type==="hr"){J.renderable.marginBottom=Z;continue}if(J.token.type==="table"){let q=J.token,{cache:U}=this.buildTableContentCache(q,J.tableContentCache,!0);if(!U){if(J.renderable instanceof w)this.applyMarkdownCodeRenderable(J.renderable,q.raw,Z);else{J.renderable.destroyRecursively();let K=this.createMarkdownCodeRenderable(q.raw,`${this.id}-block-${$}`,Z);this.add(K,$),J.renderable=K}J.tableContentCache=void 0;continue}if(J.renderable instanceof s){J.renderable.content=U.content,this.applyTableRenderableOptions(J.renderable,this.resolveTableRenderableOptions()),J.renderable.marginBottom=Z,J.tableContentCache=U;continue}J.renderable.destroyRecursively();let G=this.createTextTableRenderable(U.content,`${this.id}-block-${$}`,Z);this.add(G,$),J.renderable=G,J.tableContentCache=U;continue}if(J.renderable instanceof w){this.applyMarkdownCodeRenderable(J.renderable,this.getTopLevelBlockRaw(J.token)??J.token.raw,Z);continue}J.renderable.destroyRecursively();let Q=this.createMarkdownCodeRenderable(this.getTopLevelBlockRaw(J.token)??J.token.raw,`${this.id}-block-${$}`,Z);this.add(Q,$),J.renderable=Q}}clearCache(){this._parseState=null,this.clearBlockStates(),this.updateBlocks(),this.requestRender()}refreshStyles(){this._styleDirty=!1,this.rerenderBlocks(),this.requestRender()}renderSelf($,J){if(this._styleDirty)this._styleDirty=!1,this.rerenderBlocks();super.renderSelf($,J)}}var nJ=t.fromHex("#9a9ea3"),tJ=t.fromHex("#252527");class J8 extends x{orientation;_value;_min;_max;_viewPortSize;_backgroundColor;_foregroundColor;_onChange;constructor($,J){super($,{flexShrink:0,...J});this.orientation=J.orientation,this._min=J.min??0,this._max=J.max??100,this._value=J.value??this._min,this._viewPortSize=J.viewPortSize??Math.max(1,(this._max-this._min)*0.1),this._onChange=J.onChange,this._backgroundColor=J.backgroundColor?O(J.backgroundColor):tJ,this._foregroundColor=J.foregroundColor?O(J.foregroundColor):nJ,this.setupMouseHandling()}get value(){return this._value}set value($){let J=Math.max(this._min,Math.min(this._max,$));if(J!==this._value)this._value=J,this._onChange?.(J),this.emit("change",{value:J}),this.requestRender()}get min(){return this._min}set min($){if($!==this._min){if(this._min=$,this._value<$)this.value=$;this.requestRender()}}get max(){return this._max}set max($){if($!==this._max){if(this._max=$,this._value>$)this.value=$;this.requestRender()}}set viewPortSize($){let J=Math.max(0.01,Math.min($,this._max-this._min));if(J!==this._viewPortSize)this._viewPortSize=J,this.requestRender()}get viewPortSize(){return this._viewPortSize}get backgroundColor(){return this._backgroundColor}set backgroundColor($){this._backgroundColor=O($),this.requestRender()}get foregroundColor(){return this._foregroundColor}set foregroundColor($){this._foregroundColor=O($),this.requestRender()}calculateDragOffsetVirtual($){let J=this.orientation==="vertical"?this.y:this.x,Z=(this.orientation==="vertical"?$.y:$.x)-J,Q=Math.max(0,Math.min((this.orientation==="vertical"?this.height:this.width)*2,Z*2)),q=this.getVirtualThumbStart(),U=this.getVirtualThumbSize();return Math.max(0,Math.min(U,Q-q))}setupMouseHandling(){let $=!1,J=0;this.onMouseDown=(Z)=>{Z.stopPropagation(),Z.preventDefault();let Q=this.getThumbRect();if(Z.x>=Q.x&&Z.x<Q.x+Q.width&&Z.y>=Q.y&&Z.y<Q.y+Q.height)$=!0,J=this.calculateDragOffsetVirtual(Z);else this.updateValueFromMouseDirect(Z),$=!0,J=this.calculateDragOffsetVirtual(Z)},this.onMouseDrag=(Z)=>{if(!$)return;Z.stopPropagation(),this.updateValueFromMouseWithOffset(Z,J)},this.onMouseUp=(Z)=>{if($)this.updateValueFromMouseWithOffset(Z,J);$=!1}}updateValueFromMouseDirect($){let J=this.orientation==="vertical"?this.y:this.x,Z=this.orientation==="vertical"?this.height:this.width,q=(this.orientation==="vertical"?$.y:$.x)-J,U=Math.max(0,Math.min(Z,q)),G=Z===0?0:U/Z,K=this._max-this._min,j=this._min+G*K;this.value=j}updateValueFromMouseWithOffset($,J){let Z=this.orientation==="vertical"?this.y:this.x,Q=this.orientation==="vertical"?this.height:this.width,q=this.orientation==="vertical"?$.y:$.x,U=Q*2,G=q-Z,j=Math.max(0,Math.min(Q,G))*2,_=this.getVirtualThumbSize(),D=Math.max(0,U-_),z=j-J;z=Math.max(0,Math.min(D,z));let V=D===0?0:z/D,X=this._max-this._min,Y=this._min+V*X;this.value=Y}getThumbRect(){let $=this.getVirtualThumbSize(),J=this.getVirtualThumbStart(),Z=Math.floor(J/2),Q=Math.ceil((J+$)/2)-Z;if(this.orientation==="vertical")return{x:this.x,y:this.y+Z,width:this.width,height:Math.max(1,Q)};else return{x:this.x+Z,y:this.y,width:Math.max(1,Q),height:this.height}}renderSelf($){if(this.orientation==="horizontal")this.renderHorizontal($);else this.renderVertical($)}renderHorizontal($){let J=this.getVirtualThumbSize(),Z=this.getVirtualThumbStart(),Q=Z+J;$.fillRect(this.x,this.y,this.width,this.height,this._backgroundColor);let q=Math.floor(Z/2),U=Math.ceil(Q/2)-1,G=Math.max(0,q),K=Math.min(this.width-1,U);for(let j=G;j<=K;j++){let _=j*2,D=_+2,z=Math.max(Z,_),X=Math.min(Q,D)-z,Y=" ";if(X>=2)Y="\u2588";else if(z===_)Y="\u258C";else Y="\u2590";for(let H=0;H<this.height;H++)$.setCellWithAlphaBlending(this.x+j,this.y+H,Y,this._foregroundColor,this._backgroundColor)}}renderVertical($){let J=this.getVirtualThumbSize(),Z=this.getVirtualThumbStart(),Q=Z+J;$.fillRect(this.x,this.y,this.width,this.height,this._backgroundColor);let q=Math.floor(Z/2),U=Math.ceil(Q/2)-1,G=Math.max(0,q),K=Math.min(this.height-1,U);for(let j=G;j<=K;j++){let _=j*2,D=_+2,z=Math.max(Z,_),X=Math.min(Q,D)-z,Y=" ";if(X>=2)Y="\u2588";else if(X>0)if(z-_===0)Y="\u2580";else Y="\u2584";for(let H=0;H<this.width;H++)$.setCellWithAlphaBlending(this.x+H,this.y+j,Y,this._foregroundColor,this._backgroundColor)}}getVirtualThumbSize(){let $=this.orientation==="vertical"?this.height*2:this.width*2,J=this._max-this._min;if(J===0)return $;let Z=Math.max(1,this._viewPortSize),Q=J+Z;if(Q<=Z)return $;let q=Z/Q,U=Math.floor($*q);return Math.max(1,Math.min(U,$))}getVirtualThumbStart(){let $=this.orientation==="vertical"?this.height*2:this.width*2,J=this._max-this._min;if(J===0)return 0;let Z=(this._value-this._min)/J,Q=this.getVirtualThumbSize();return Math.round(Z*($-Q))}}class F0 extends x{slider;startArrow;endArrow;orientation;_focusable=!0;_scrollSize=0;_scrollPosition=0;_viewportSize=0;_showArrows=!1;_manualVisibility=!1;_onChange;scrollStep=null;get visible(){return super.visible}set visible($){this._manualVisibility=!0,super.visible=$}resetVisibilityControl(){this._manualVisibility=!1,this.recalculateVisibility()}get scrollSize(){return this._scrollSize}get scrollPosition(){return this._scrollPosition}get viewportSize(){return this._viewportSize}set scrollSize($){if($===this.scrollSize)return;this._scrollSize=$,this.recalculateVisibility(),this.updateSliderFromScrollState(),this.scrollPosition=this.scrollPosition}set scrollPosition($){let J=Math.round(Math.min(Math.max(0,$),this.scrollSize-this.viewportSize));if(J!==this._scrollPosition)this._scrollPosition=J,this.updateSliderFromScrollState()}set viewportSize($){if($===this.viewportSize)return;this._viewportSize=$,this.slider.viewPortSize=Math.max(1,this._viewportSize),this.recalculateVisibility(),this.updateSliderFromScrollState(),this.scrollPosition=this.scrollPosition}get showArrows(){return this._showArrows}set showArrows($){if($===this._showArrows)return;this._showArrows=$,this.startArrow.visible=$,this.endArrow.visible=$}constructor($,{trackOptions:J,arrowOptions:Z,orientation:Q,showArrows:q=!1,...U}){super($,{flexDirection:Q==="vertical"?"column":"row",alignSelf:"stretch",alignItems:"stretch",...U});this._onChange=U.onChange,this.orientation=Q,this._showArrows=q;let G=Math.max(0,this._scrollSize-this._viewportSize),K=Math.max(1,this._viewportSize),j=J?.viewPortSize??K;this.slider=new J8($,{orientation:Q,min:0,max:G,value:this._scrollPosition,viewPortSize:j,onChange:(V)=>{this._scrollPosition=Math.round(V),this._onChange?.(this._scrollPosition),this.emit("change",{position:this._scrollPosition})},...Q==="vertical"?{width:Math.max(1,Math.min(2,this.width)),height:"100%",marginLeft:"auto"}:{width:"100%",height:1,marginTop:"auto"},flexGrow:1,flexShrink:1,...J}),this.updateSliderFromScrollState();let _=Z?{foregroundColor:Z.backgroundColor,backgroundColor:Z.backgroundColor,attributes:Z.attributes,...Z}:{};this.startArrow=new W0($,{alignSelf:"center",visible:this.showArrows,direction:this.orientation==="vertical"?"up":"left",height:this.orientation==="vertical"?1:1,..._}),this.endArrow=new W0($,{alignSelf:"center",visible:this.showArrows,direction:this.orientation==="vertical"?"down":"right",height:this.orientation==="vertical"?1:1,..._}),this.add(this.startArrow),this.add(this.slider),this.add(this.endArrow);let D=void 0,z=void 0;this.startArrow.onMouseDown=(V)=>{V.stopPropagation(),V.preventDefault(),this.scrollBy(-0.5,"viewport"),D=setTimeout(()=>{this.scrollBy(-0.5,"viewport"),D=setInterval(()=>{this.scrollBy(-0.2,"viewport")},200)},500)},this.startArrow.onMouseUp=(V)=>{V.stopPropagation(),clearInterval(D)},this.endArrow.onMouseDown=(V)=>{V.stopPropagation(),V.preventDefault(),this.scrollBy(0.5,"viewport"),z=setTimeout(()=>{this.scrollBy(0.5,"viewport"),z=setInterval(()=>{this.scrollBy(0.2,"viewport")},200)},500)},this.endArrow.onMouseUp=(V)=>{V.stopPropagation(),clearInterval(z)}}set arrowOptions($){Object.assign(this.startArrow,$),Object.assign(this.endArrow,$),this.requestRender()}set trackOptions($){Object.assign(this.slider,$),this.requestRender()}updateSliderFromScrollState(){let $=Math.max(0,this._scrollSize-this._viewportSize);this.slider.min=0,this.slider.max=$,this.slider.value=Math.min(this._scrollPosition,$)}scrollBy($,J="absolute"){let Q=(J==="viewport"?this.viewportSize:J==="content"?this.scrollSize:J==="step"?this.scrollStep??1:1)*$;this.scrollPosition+=Q}recalculateVisibility(){if(!this._manualVisibility){let $=this.scrollSize<=this.viewportSize?1:this.viewportSize/this.scrollSize;super.visible=$<1}}handleKeyPress($){switch($.name){case"left":case"h":if(this.orientation!=="horizontal")return!1;return this.scrollBy(-0.2,"viewport"),!0;case"right":case"l":if(this.orientation!=="horizontal")return!1;return this.scrollBy(0.2,"viewport"),!0;case"up":case"k":if(this.orientation!=="vertical")return!1;return this.scrollBy(-0.2,"viewport"),!0;case"down":case"j":if(this.orientation!=="vertical")return!1;return this.scrollBy(0.2,"viewport"),!0;case"pageup":return this.scrollBy(-0.5,"viewport"),!0;case"pagedown":return this.scrollBy(0.5,"viewport"),!0;case"home":return this.scrollBy(-1,"content"),!0;case"end":return this.scrollBy(1,"content"),!0}return!1}}class W0 extends x{_direction;_foregroundColor;_backgroundColor;_attributes;_arrowChars;constructor($,J){super($,J);if(this._direction=J.direction,this._foregroundColor=J.foregroundColor?O(J.foregroundColor):t.fromValues(1,1,1,1),this._backgroundColor=J.backgroundColor?O(J.backgroundColor):t.fromValues(0,0,0,0),this._attributes=J.attributes??0,this._arrowChars={up:"\u25B2",down:"\u25BC",left:"\u25C0",right:"\u25B6",...J.arrowChars},!J.width)this.width=x0(this.getArrowChar())}get direction(){return this._direction}set direction($){if(this._direction!==$)this._direction=$,this.requestRender()}get foregroundColor(){return this._foregroundColor}set foregroundColor($){if(this._foregroundColor!==$)this._foregroundColor=O($),this.requestRender()}get backgroundColor(){return this._backgroundColor}set backgroundColor($){if(this._backgroundColor!==$)this._backgroundColor=O($),this.requestRender()}get attributes(){return this._attributes}set attributes($){if(this._attributes!==$)this._attributes=$,this.requestRender()}set arrowChars($){this._arrowChars={...this._arrowChars,...$},this.requestRender()}renderSelf($){let J=this.getArrowChar();$.drawText(J,this.x,this.y,this._foregroundColor,this._backgroundColor,this._attributes)}getArrowChar(){switch(this._direction){case"up":return this._arrowChars.up;case"down":return this._arrowChars.down;case"left":return this._arrowChars.left;case"right":return this._arrowChars.right;default:return"?"}}}class r7 extends S{viewport;_viewportCulling;constructor($,J,Z,Q){super($,Q);this.viewport=J,this._viewportCulling=Z}get viewportCulling(){return this._viewportCulling}set viewportCulling($){this._viewportCulling=$}_hasVisibleChildFilter(){return this._viewportCulling}_getVisibleChildren(){if(this._viewportCulling)return v7({x:this.viewport.screenX,y:this.viewport.screenY,width:this.viewport.width,height:this.viewport.height},this.getChildrenSortedByPrimaryAxis(),this.primaryAxis,0).map(($)=>$.num);return super._getVisibleChildren()}}var o7=["padding","paddingX","paddingY","paddingTop","paddingRight","paddingBottom","paddingLeft"];function I7($){if(!$)return{};let J={};for(let Z of o7){let Q=$[Z];if(Q!==void 0)J[Z]=Q}return J}function R7($){let J={...$};for(let Z of o7)delete J[Z];return J}class S0 extends S{static idCounter=0;internalId=0;wrapper;viewport;content;horizontalScrollBar;verticalScrollBar;_focusable=!0;selectionListener;autoScrollMouseX=0;autoScrollMouseY=0;autoScrollThresholdVertical=3;autoScrollThresholdHorizontal=3;autoScrollSpeedSlow=6;autoScrollSpeedMedium=36;autoScrollSpeedFast=72;isAutoScrolling=!1;cachedAutoScrollSpeed=3;autoScrollAccumulatorX=0;autoScrollAccumulatorY=0;scrollAccumulatorX=0;scrollAccumulatorY=0;_stickyScroll;_stickyScrollTop=!1;_stickyScrollBottom=!1;_stickyScrollLeft=!1;_stickyScrollRight=!1;_stickyStart;_hasManualScroll=!1;_isApplyingStickyScroll=!1;scrollAccel;get stickyScroll(){return this._stickyScroll}set stickyScroll($){this._stickyScroll=$,this.updateStickyState()}get stickyStart(){return this._stickyStart}set stickyStart($){this._stickyStart=$,this.updateStickyState()}get scrollTop(){return this.verticalScrollBar.scrollPosition}set scrollTop($){if(this.verticalScrollBar.scrollPosition=$,!this._isApplyingStickyScroll){let J=Math.max(0,this.scrollHeight-this.viewport.height);if(!this.isAtStickyPosition()&&J>1)this._hasManualScroll=!0}this.updateStickyState()}get scrollLeft(){return this.horizontalScrollBar.scrollPosition}set scrollLeft($){if(this.horizontalScrollBar.scrollPosition=$,!this._isApplyingStickyScroll){let J=Math.max(0,this.scrollWidth-this.viewport.width);if(!this.isAtStickyPosition()&&J>1)this._hasManualScroll=!0}this.updateStickyState()}get scrollWidth(){return this.horizontalScrollBar.scrollSize}get scrollHeight(){return this.verticalScrollBar.scrollSize}updateStickyState(){if(!this._stickyScroll)return;let $=Math.max(0,this.scrollHeight-this.viewport.height),J=Math.max(0,this.scrollWidth-this.viewport.width);if(this.scrollTop<=0){if(this._stickyScrollTop=!0,this._stickyScrollBottom=!1,!this._isApplyingStickyScroll&&(this._stickyStart==="top"||this._stickyStart==="bottom"&&$===0))this._hasManualScroll=!1}else if(this.scrollTop>=$){if(this._stickyScrollTop=!1,this._stickyScrollBottom=!0,!this._isApplyingStickyScroll&&this._stickyStart==="bottom")this._hasManualScroll=!1}else this._stickyScrollTop=!1,this._stickyScrollBottom=!1;if(this.scrollLeft<=0){if(this._stickyScrollLeft=!0,this._stickyScrollRight=!1,!this._isApplyingStickyScroll&&(this._stickyStart==="left"||this._stickyStart==="right"&&J===0))this._hasManualScroll=!1}else if(this.scrollLeft>=J){if(this._stickyScrollLeft=!1,this._stickyScrollRight=!0,!this._isApplyingStickyScroll&&this._stickyStart==="right")this._hasManualScroll=!1}else this._stickyScrollLeft=!1,this._stickyScrollRight=!1}applyStickyStart($){let J=this._isApplyingStickyScroll;this._isApplyingStickyScroll=!0;try{switch($){case"top":this._stickyScrollTop=!0,this._stickyScrollBottom=!1,this.verticalScrollBar.scrollPosition=0;break;case"bottom":this._stickyScrollTop=!1,this._stickyScrollBottom=!0,this.verticalScrollBar.scrollPosition=Math.max(0,this.scrollHeight-this.viewport.height);break;case"left":this._stickyScrollLeft=!0,this._stickyScrollRight=!1,this.horizontalScrollBar.scrollPosition=0;break;case"right":this._stickyScrollLeft=!1,this._stickyScrollRight=!0,this.horizontalScrollBar.scrollPosition=Math.max(0,this.scrollWidth-this.viewport.width);break}}finally{this._isApplyingStickyScroll=J}}constructor($,J){let{wrapperOptions:Z,viewportOptions:Q,contentOptions:q,rootOptions:U,scrollbarOptions:G,verticalScrollbarOptions:K,horizontalScrollbarOptions:j,stickyScroll:_=!1,stickyStart:D,scrollX:z=!1,scrollY:V=!0,scrollAcceleration:X,viewportCulling:Y=!0,...H}=J,N={...I7(H),...I7(U)},F=R7(H),P=U?R7(U):void 0,W={...N,...q};super($,{flexDirection:"row",alignItems:"stretch",...F,...P});if(this.internalId=S0.idCounter++,this._stickyScroll=_,this._stickyStart=D,this.scrollAccel=X??new h0,this.wrapper=new S($,{flexDirection:"column",flexGrow:1,...Z,id:`scroll-box-wrapper-${this.internalId}`}),super.add(this.wrapper),this.viewport=new S($,{flexDirection:"column",flexGrow:1,overflow:"hidden",onSizeChange:()=>{this.recalculateBarProps()},...Q,id:`scroll-box-viewport-${this.internalId}`}),this.wrapper.add(this.viewport),this.content=new r7($,this.viewport,Y,{alignSelf:"flex-start",flexShrink:0,...z?{minWidth:"100%"}:{minWidth:"100%",maxWidth:"100%"},...V?{minHeight:"100%"}:{minHeight:"100%",maxHeight:"100%"},onSizeChange:()=>{this.recalculateBarProps()},...W,id:`scroll-box-content-${this.internalId}`}),this.viewport.add(this.content),this.verticalScrollBar=new F0($,{...G,...K,arrowOptions:{...G?.arrowOptions,...K?.arrowOptions},id:`scroll-box-vertical-scrollbar-${this.internalId}`,orientation:"vertical",onChange:(E)=>{if(this.content.translateY=-E,!this._isApplyingStickyScroll){let B=Math.max(0,this.scrollHeight-this.viewport.height);if(!this.isAtStickyPosition()&&B>1)this._hasManualScroll=!0}this.updateStickyState()}}),super.add(this.verticalScrollBar),this.horizontalScrollBar=new F0($,{...G,...j,arrowOptions:{...G?.arrowOptions,...j?.arrowOptions},id:`scroll-box-horizontal-scrollbar-${this.internalId}`,orientation:"horizontal",onChange:(E)=>{if(this.content.translateX=-E,!this._isApplyingStickyScroll){let B=Math.max(0,this.scrollWidth-this.viewport.width);if(!this.isAtStickyPosition()&&B>1)this._hasManualScroll=!0}this.updateStickyState()}}),this.wrapper.add(this.horizontalScrollBar),this.recalculateBarProps(),D&&_)this.applyStickyStart(D);this.selectionListener=()=>{let E=this._ctx.getSelection();if(!E||!E.isDragging)this.stopAutoScroll()},this._ctx.on("selection",this.selectionListener)}onUpdate($){this.handleAutoScroll($)}scrollBy($,J="absolute"){if(typeof $==="number")this.verticalScrollBar.scrollBy($,J);else this.verticalScrollBar.scrollBy($.y,J),this.horizontalScrollBar.scrollBy($.x,J)}scrollChildIntoView($){let J=this.content.findDescendantById($);if(!J)return;let Z=(X,Y,H,N)=>{let F=Y-X,P=N-H,W=X<H,E=Y>N;if(W&&E)return 0;if(W&&F<P||E&&F>P)return X-H;if(W&&F>P||E&&F<P)return Y-N;return 0},Q=J.y,q=J.y+J.height,U=this.viewport.y,G=this.viewport.y+this.viewport.height,K=Z(Q,q,U,G),j=J.x,_=J.x+J.width,D=this.viewport.x,z=this.viewport.x+this.viewport.width,V=Z(j,_,D,z);if(V!==0||K!==0)this.scrollBy({x:V,y:K})}scrollTo($){if(typeof $==="number")this.scrollTop=$;else this.scrollTop=$.y,this.scrollLeft=$.x}isAtStickyPosition(){if(!this._stickyScroll||!this._stickyStart)return!1;let $=Math.max(0,this.scrollHeight-this.viewport.height),J=Math.max(0,this.scrollWidth-this.viewport.width);switch(this._stickyStart){case"top":return this.scrollTop===0;case"bottom":return this.scrollTop>=$;case"left":return this.scrollLeft===0;case"right":return this.scrollLeft>=J;default:return!1}}isAtStickyReengagePoint($,J,Z){switch($){case"top":return J>0&&this.scrollTop<=0;case"bottom":return J>0&&this.scrollTop>=J-1;case"left":return Z>0&&this.scrollLeft<=0;case"right":return Z>0&&this.scrollLeft>=Z-1}}add($,J){return this.content.add($,J)}insertBefore($,J){return this.content.insertBefore($,J)}remove($){this.content.remove($)}getChildren(){return this.content.getChildren()}onMouseEvent($){if($.type==="scroll"){let J=$.scroll?.direction;if($.modifiers.shift)J=J==="up"?"left":J==="down"?"right":J==="right"?"down":"up";let Z=$.scroll?.delta??0,Q=Date.now(),q=this.scrollAccel.tick(Q),U=Z*q;if(J==="up"){this.scrollAccumulatorY-=U;let j=Math.trunc(this.scrollAccumulatorY);if(j!==0)this.scrollTop+=j,this.scrollAccumulatorY-=j}else if(J==="down"){this.scrollAccumulatorY+=U;let j=Math.trunc(this.scrollAccumulatorY);if(j!==0)this.scrollTop+=j,this.scrollAccumulatorY-=j}else if(J==="left"){this.scrollAccumulatorX-=U;let j=Math.trunc(this.scrollAccumulatorX);if(j!==0)this.scrollLeft+=j,this.scrollAccumulatorX-=j}else if(J==="right"){this.scrollAccumulatorX+=U;let j=Math.trunc(this.scrollAccumulatorX);if(j!==0)this.scrollLeft+=j,this.scrollAccumulatorX-=j}let G=Math.max(0,this.scrollHeight-this.viewport.height),K=Math.max(0,this.scrollWidth-this.viewport.width);if(G>1||K>1)this._hasManualScroll=!0}if($.type==="drag"&&$.isDragging)this.updateAutoScroll($.x,$.y);else if($.type==="up")this.stopAutoScroll()}handleKeyPress($){if(this.verticalScrollBar.handleKeyPress($))return this._hasManualScroll=!0,this.scrollAccel.reset(),this.resetScrollAccumulators(),!0;if(this.horizontalScrollBar.handleKeyPress($))return this._hasManualScroll=!0,this.scrollAccel.reset(),this.resetScrollAccumulators(),!0;return!1}resetScrollAccumulators(){this.scrollAccumulatorX=0,this.scrollAccumulatorY=0}startAutoScroll($,J){if(this.stopAutoScroll(),this.autoScrollMouseX=$,this.autoScrollMouseY=J,this.cachedAutoScrollSpeed=this.getAutoScrollSpeed($,J),this.isAutoScrolling=!0,!this.live)this.live=!0}updateAutoScroll($,J){this.autoScrollMouseX=$,this.autoScrollMouseY=J,this.cachedAutoScrollSpeed=this.getAutoScrollSpeed($,J);let Z=this.getAutoScrollDirectionX($),Q=this.getAutoScrollDirectionY(J);if(Z===0&&Q===0)this.stopAutoScroll();else if(!this.isAutoScrolling)this.startAutoScroll($,J)}stopAutoScroll(){let $=this.isAutoScrolling;if(this.isAutoScrolling=!1,this.autoScrollAccumulatorX=0,this.autoScrollAccumulatorY=0,$&&!this.hasOtherLiveReasons())this.live=!1}hasOtherLiveReasons(){return!1}handleAutoScroll($){if(!this.isAutoScrolling)return;let J=this.getAutoScrollDirectionX(this.autoScrollMouseX),Z=this.getAutoScrollDirectionY(this.autoScrollMouseY),Q=this.cachedAutoScrollSpeed*($/1000),q=!1;if(J!==0){this.autoScrollAccumulatorX+=J*Q;let U=Math.trunc(this.autoScrollAccumulatorX);if(U!==0)this.scrollLeft+=U,this.autoScrollAccumulatorX-=U,q=!0}if(Z!==0){this.autoScrollAccumulatorY+=Z*Q;let U=Math.trunc(this.autoScrollAccumulatorY);if(U!==0)this.scrollTop+=U,this.autoScrollAccumulatorY-=U,q=!0}if(q)this._ctx.requestSelectionUpdate();if(J===0&&Z===0)this.stopAutoScroll()}getAutoScrollDirectionX($){let J=$-this.x,Z=J,Q=this.width-J;if(Z<=this.autoScrollThresholdHorizontal)return this.scrollLeft>0?-1:0;else if(Q<=this.autoScrollThresholdHorizontal){let q=this.scrollWidth-this.viewport.width;return this.scrollLeft<q?1:0}return 0}getAutoScrollDirectionY($){let J=$-this.y,Z=J,Q=this.height-J;if(Z<=this.autoScrollThresholdVertical)return this.scrollTop>0?-1:0;else if(Q<=this.autoScrollThresholdVertical){let q=this.scrollHeight-this.viewport.height;return this.scrollTop<q?1:0}return 0}getAutoScrollSpeed($,J){let Z=$-this.x,Q=J-this.y,q=Z,U=this.width-Z,G=Q,K=this.height-Q,j=Math.min(q,U,G,K);if(j<=1)return this.autoScrollSpeedFast;else if(j<=2)return this.autoScrollSpeedMedium;else return this.autoScrollSpeedSlow}recalculateBarProps(){let $=this._isApplyingStickyScroll;this._isApplyingStickyScroll=!0;try{if(this.verticalScrollBar.scrollSize=this.content.height,this.verticalScrollBar.viewportSize=this.viewport.height,this.horizontalScrollBar.scrollSize=this.content.width,this.horizontalScrollBar.viewportSize=this.viewport.width,this._stickyScroll){let J=Math.max(0,this.scrollHeight-this.viewport.height),Z=Math.max(0,this.scrollWidth-this.viewport.width),Q=this._stickyStart;if(Q&&!this._hasManualScroll)this.applyStickyStart(Q);else if(Q&&this._hasManualScroll&&this.isAtStickyReengagePoint(Q,J,Z))this._hasManualScroll=!1,this.applyStickyStart(Q);else if(!this._hasManualScroll){if(this._stickyScrollTop)this.scrollTop=0;else if(this._stickyScrollBottom&&J>0)this.scrollTop=J;if(this._stickyScrollLeft)this.scrollLeft=0;else if(this._stickyScrollRight&&Z>0)this.scrollLeft=Z}}}finally{this._isApplyingStickyScroll=$}process.nextTick(()=>{this.requestRender()})}set padding($){this.content.padding=$,this.requestRender()}set paddingX($){this.content.paddingX=$,this.requestRender()}set paddingY($){this.content.paddingY=$,this.requestRender()}set paddingTop($){this.content.paddingTop=$,this.requestRender()}set paddingRight($){this.content.paddingRight=$,this.requestRender()}set paddingBottom($){this.content.paddingBottom=$,this.requestRender()}set paddingLeft($){this.content.paddingLeft=$,this.requestRender()}set rootOptions($){Object.assign(this,$),this.requestRender()}set wrapperOptions($){Object.assign(this.wrapper,$),this.requestRender()}set viewportOptions($){Object.assign(this.viewport,$),this.requestRender()}set contentOptions($){Object.assign(this.content,$),this.requestRender()}set scrollbarOptions($){Object.assign(this.verticalScrollBar,$),Object.assign(this.horizontalScrollBar,$),this.requestRender()}set verticalScrollbarOptions($){Object.assign(this.verticalScrollBar,$),this.requestRender()}set horizontalScrollbarOptions($){Object.assign(this.horizontalScrollBar,$),this.requestRender()}get scrollAcceleration(){return this.scrollAccel}set scrollAcceleration($){this.scrollAccel=$}get viewportCulling(){return this.content.viewportCulling}set viewportCulling($){this.content.viewportCulling=$,this.requestRender()}destroySelf(){if(this.selectionListener)this._ctx.off("selection",this.selectionListener),this.selectionListener=void 0;super.destroySelf()}}var V6=[{name:"up",action:"move-up"},{name:"k",action:"move-up"},{name:"down",action:"move-down"},{name:"j",action:"move-down"},{name:"up",shift:!0,action:"move-up-fast"},{name:"down",shift:!0,action:"move-down-fast"},{name:"return",action:"select-current"},{name:"linefeed",action:"select-current"}],U6;(($)=>{$.SELECTION_CHANGED="selectionChanged",$.ITEM_SELECTED="itemSelected"})(U6||={});class Z8 extends x{_focusable=!0;_options=[];_selectedIndex=0;scrollOffset=0;maxVisibleItems;_backgroundColor;_textColor;_focusedBackgroundColor;_focusedTextColor;_selectedBackgroundColor;_selectedTextColor;_descriptionColor;_selectedDescriptionColor;_showScrollIndicator;_wrapSelection;_showDescription;_font;_itemSpacing;linesPerItem;fontHeight;_fastScrollStep;_keyBindingsMap;_keyAliasMap;_keyBindings;_defaultOptions={backgroundColor:"transparent",textColor:"#FFFFFF",focusedBackgroundColor:"#1a1a1a",focusedTextColor:"#FFFFFF",selectedBackgroundColor:"#334455",selectedTextColor:"#FFFF00",selectedIndex:0,descriptionColor:"#888888",selectedDescriptionColor:"#CCCCCC",showScrollIndicator:!1,wrapSelection:!1,showDescription:!0,itemSpacing:0,fastScrollStep:5};constructor($,J){super($,{...J,buffered:!0});this._options=J.options||[];let Z=J.selectedIndex??this._defaultOptions.selectedIndex;this._selectedIndex=this._options.length>0?Math.min(Z,this._options.length-1):0,this._backgroundColor=O(J.backgroundColor||this._defaultOptions.backgroundColor),this._textColor=O(J.textColor||this._defaultOptions.textColor),this._focusedBackgroundColor=O(J.focusedBackgroundColor||this._defaultOptions.focusedBackgroundColor),this._focusedTextColor=O(J.focusedTextColor||this._defaultOptions.focusedTextColor),this._showScrollIndicator=J.showScrollIndicator??this._defaultOptions.showScrollIndicator,this._wrapSelection=J.wrapSelection??this._defaultOptions.wrapSelection,this._showDescription=J.showDescription??this._defaultOptions.showDescription,this._font=J.font,this._itemSpacing=J.itemSpacing||this._defaultOptions.itemSpacing,this.fontHeight=this._font?n({text:"A",font:this._font}).height:1,this.linesPerItem=this._showDescription?this._font?this.fontHeight+1:2:this._font?this.fontHeight:1,this.linesPerItem+=this._itemSpacing,this.maxVisibleItems=Math.max(1,Math.floor(this.height/this.linesPerItem)),this._selectedBackgroundColor=O(J.selectedBackgroundColor||this._defaultOptions.selectedBackgroundColor),this._selectedTextColor=O(J.selectedTextColor||this._defaultOptions.selectedTextColor),this._descriptionColor=O(J.descriptionColor||this._defaultOptions.descriptionColor),this._selectedDescriptionColor=O(J.selectedDescriptionColor||this._defaultOptions.selectedDescriptionColor),this._fastScrollStep=J.fastScrollStep||this._defaultOptions.fastScrollStep,this._keyAliasMap=G0(U0,J.keyAliasMap||{}),this._keyBindings=J.keyBindings||[];let Q=l(V6,this._keyBindings);this._keyBindingsMap=r(Q,this._keyAliasMap),this.requestRender()}renderSelf($,J){if(!this.visible||!this.frameBuffer)return;if(this.isDirty)this.refreshFrameBuffer()}refreshFrameBuffer(){if(!this.frameBuffer)return;let $=this._focused?this._focusedBackgroundColor:this._backgroundColor;if(this.frameBuffer.clear($),this._options.length===0)return;let J=0,Z=0,Q=this.width,q=this.height,U=this._options.slice(this.scrollOffset,this.scrollOffset+this.maxVisibleItems);for(let G=0;G<U.length;G++){let K=this.scrollOffset+G,j=U[G],_=K===this._selectedIndex,D=Z+G*this.linesPerItem;if(D+this.linesPerItem-1>=Z+q)break;if(_){let H=this.linesPerItem-this._itemSpacing;this.frameBuffer.fillRect(J,D,Q,H,this._selectedBackgroundColor)}let z=`${_?"\u25B6 ":" "}${j.name}`,V=this._focused?this._focusedTextColor:this._textColor,X=_?this._selectedTextColor:V,Y=J+3;if(this._font){let H=_?"\u25B6 ":" ";this.frameBuffer.drawText(H,J+1,D,X);let N=2;Z0(this.frameBuffer,{text:j.name,x:J+1+N,y:D,color:X,backgroundColor:_?this._selectedBackgroundColor:$,font:this._font}),Y=J+1+N}else this.frameBuffer.drawText(z,J+1,D,X);if(this._showDescription&&D+this.fontHeight<Z+q){let H=_?this._selectedDescriptionColor:this._descriptionColor;this.frameBuffer.drawText(j.description,Y,D+this.fontHeight,H)}}if(this._showScrollIndicator&&this._options.length>this.maxVisibleItems)this.renderScrollIndicatorToFrameBuffer(J,Z,Q,q)}renderScrollIndicatorToFrameBuffer($,J,Z,Q){if(!this.frameBuffer)return;let q=this._selectedIndex/Math.max(1,this._options.length-1),U=Math.max(1,Q-2),G=J+1+Math.floor(q*U),K=$+Z-1;this.frameBuffer.drawText("\u2588",K,G,O("#666666"))}get options(){return this._options}set options($){this._options=$,this._selectedIndex=Math.min(this._selectedIndex,Math.max(0,$.length-1)),this.updateScrollOffset(),this.requestRender()}getSelectedOption(){return this._options[this._selectedIndex]||null}getSelectedIndex(){return this._selectedIndex}moveUp($=1){let J=this._selectedIndex-$;if(J>=0)this._selectedIndex=J;else if(this._wrapSelection&&this._options.length>0)this._selectedIndex=this._options.length-1;else this._selectedIndex=0;this.updateScrollOffset(),this.requestRender(),this.emit("selectionChanged",this._selectedIndex,this.getSelectedOption())}moveDown($=1){let J=this._selectedIndex+$;if(J<this._options.length)this._selectedIndex=J;else if(this._wrapSelection&&this._options.length>0)this._selectedIndex=0;else this._selectedIndex=this._options.length-1;this.updateScrollOffset(),this.requestRender(),this.emit("selectionChanged",this._selectedIndex,this.getSelectedOption())}selectCurrent(){let $=this.getSelectedOption();if($)this.emit("itemSelected",this._selectedIndex,$)}setSelectedIndex($){if($>=0&&$<this._options.length)this._selectedIndex=$,this.updateScrollOffset(),this.requestRender(),this.emit("selectionChanged",this._selectedIndex,this.getSelectedOption())}updateScrollOffset(){if(!this._options)return;let $=Math.floor(this.maxVisibleItems/2),J=Math.max(0,Math.min(this._selectedIndex-$,this._options.length-this.maxVisibleItems));if(J!==this.scrollOffset)this.scrollOffset=J,this.requestRender()}onResize($,J){this.maxVisibleItems=Math.max(1,Math.floor(J/this.linesPerItem)),this.updateScrollOffset(),this.requestRender()}handleKeyPress($){let J=w5(this._keyBindingsMap,$);if(J)switch(J){case"move-up":return this.moveUp(1),!0;case"move-down":return this.moveDown(1),!0;case"move-up-fast":return this.moveUp(this._fastScrollStep),!0;case"move-down-fast":return this.moveDown(this._fastScrollStep),!0;case"select-current":return this.selectCurrent(),!0}return!1}get showScrollIndicator(){return this._showScrollIndicator}set showScrollIndicator($){this._showScrollIndicator=$,this.requestRender()}get showDescription(){return this._showDescription}set showDescription($){if(this._showDescription!==$)this._showDescription=$,this.linesPerItem=this._showDescription?this._font?this.fontHeight+1:2:this._font?this.fontHeight:1,this.linesPerItem+=this._itemSpacing,this.maxVisibleItems=Math.max(1,Math.floor(this.height/this.linesPerItem)),this.updateScrollOffset(),this.requestRender()}get wrapSelection(){return this._wrapSelection}set wrapSelection($){this._wrapSelection=$}set backgroundColor($){let J=O($??this._defaultOptions.backgroundColor);if(this._backgroundColor!==J)this._backgroundColor=J,this.requestRender()}set textColor($){let J=O($??this._defaultOptions.textColor);if(this._textColor!==J)this._textColor=J,this.requestRender()}set focusedBackgroundColor($){let J=O($??this._defaultOptions.focusedBackgroundColor);if(this._focusedBackgroundColor!==J)this._focusedBackgroundColor=J,this.requestRender()}set focusedTextColor($){let J=O($??this._defaultOptions.focusedTextColor);if(this._focusedTextColor!==J)this._focusedTextColor=J,this.requestRender()}set selectedBackgroundColor($){let J=O($??this._defaultOptions.selectedBackgroundColor);if(this._selectedBackgroundColor!==J)this._selectedBackgroundColor=J,this.requestRender()}set selectedTextColor($){let J=O($??this._defaultOptions.selectedTextColor);if(this._selectedTextColor!==J)this._selectedTextColor=J,this.requestRender()}set descriptionColor($){let J=O($??this._defaultOptions.descriptionColor);if(this._descriptionColor!==J)this._descriptionColor=J,this.requestRender()}set selectedDescriptionColor($){let J=O($??this._defaultOptions.selectedDescriptionColor);if(this._selectedDescriptionColor!==J)this._selectedDescriptionColor=J,this.requestRender()}set font($){this._font=$,this.fontHeight=n({text:"A",font:this._font}).height,this.linesPerItem=this._showDescription?this._font?this.fontHeight+1:2:this._font?this.fontHeight:1,this.linesPerItem+=this._itemSpacing,this.maxVisibleItems=Math.max(1,Math.floor(this.height/this.linesPerItem)),this.updateScrollOffset(),this.requestRender()}set itemSpacing($){this._itemSpacing=$,this.linesPerItem=this._showDescription?this._font?this.fontHeight+1:2:this._font?this.fontHeight:1,this.linesPerItem+=this._itemSpacing,this.maxVisibleItems=Math.max(1,Math.floor(this.height/this.linesPerItem)),this.updateScrollOffset(),this.requestRender()}set fastScrollStep($){this._fastScrollStep=$}set keyBindings($){this._keyBindings=$;let J=l(V6,$);this._keyBindingsMap=r(J,this._keyAliasMap)}set keyAliasMap($){this._keyAliasMap=G0(U0,$);let J=l(V6,this._keyBindings);this._keyBindingsMap=r(J,this._keyAliasMap)}set selectedIndex($){let J=$??this._defaultOptions.selectedIndex,Z=this._options.length>0?Math.min(Math.max(0,J),this._options.length-1):0;if(this._selectedIndex!==Z)this._selectedIndex=Z,this.updateScrollOffset(),this.requestRender()}}var H6=[{name:"left",action:"move-left"},{name:"[",action:"move-left"},{name:"right",action:"move-right"},{name:"]",action:"move-right"},{name:"return",action:"select-current"},{name:"linefeed",action:"select-current"}],G6;(($)=>{$.SELECTION_CHANGED="selectionChanged",$.ITEM_SELECTED="itemSelected"})(G6||={});function T7($,J){let Z=1;if($)Z+=1;if(J)Z+=1;return Z}class Q8 extends x{_focusable=!0;_options=[];selectedIndex=0;scrollOffset=0;_tabWidth;maxVisibleTabs;_backgroundColor;_textColor;_focusedBackgroundColor;_focusedTextColor;_selectedBackgroundColor;_selectedTextColor;_selectedDescriptionColor;_showScrollArrows;_showDescription;_showUnderline;_wrapSelection;_keyBindingsMap;_keyAliasMap;_keyBindings;constructor($,J){let Z=T7(J.showUnderline??!0,J.showDescription??!0);super($,{...J,height:Z,buffered:!0});this._backgroundColor=O(J.backgroundColor||"transparent"),this._textColor=O(J.textColor||"#FFFFFF"),this._focusedBackgroundColor=O(J.focusedBackgroundColor||J.backgroundColor||"#1a1a1a"),this._focusedTextColor=O(J.focusedTextColor||J.textColor||"#FFFFFF"),this._options=J.options||[],this._tabWidth=J.tabWidth||20,this._showDescription=J.showDescription??!0,this._showUnderline=J.showUnderline??!0,this._showScrollArrows=J.showScrollArrows??!0,this._wrapSelection=J.wrapSelection??!1,this.maxVisibleTabs=Math.max(1,Math.floor(this.width/this._tabWidth)),this._selectedBackgroundColor=O(J.selectedBackgroundColor||"#334455"),this._selectedTextColor=O(J.selectedTextColor||"#FFFF00"),this._selectedDescriptionColor=O(J.selectedDescriptionColor||"#CCCCCC"),this._keyAliasMap=G0(U0,J.keyAliasMap||{}),this._keyBindings=J.keyBindings||[];let Q=l(H6,this._keyBindings);this._keyBindingsMap=r(Q,this._keyAliasMap)}calculateDynamicHeight(){return T7(this._showUnderline,this._showDescription)}renderSelf($,J){if(!this.visible||!this.frameBuffer)return;if(this.isDirty)this.refreshFrameBuffer()}refreshFrameBuffer(){if(!this.frameBuffer)return;let $=this._focused?this._focusedBackgroundColor:this._backgroundColor;if(this.frameBuffer.clear($),this._options.length===0)return;let J=0,Z=0,Q=this.width,q=this.height,U=this._options.slice(this.scrollOffset,this.scrollOffset+this.maxVisibleTabs);for(let G=0;G<U.length;G++){let K=this.scrollOffset+G,j=U[G],_=K===this.selectedIndex,D=J+G*this._tabWidth;if(D>=J+Q)break;let z=Math.min(this._tabWidth,Q-G*this._tabWidth);if(_)this.frameBuffer.fillRect(D,Z,z,1,this._selectedBackgroundColor);let V=this._focused?this._focusedTextColor:this._textColor,X=_?this._selectedTextColor:V,Y=this.truncateText(j.name,z-2);if(this.frameBuffer.drawText(Y,D+1,Z,X),_&&this._showUnderline&&q>=2){let H=Z+1,N=_?this._selectedBackgroundColor:$;this.frameBuffer.drawText("\u25AC".repeat(z),D,H,X,N)}}if(this._showDescription&&q>=(this._showUnderline?3:2)){let G=this.getSelectedOption();if(G){let K=Z+(this._showUnderline?2:1),j=this._selectedDescriptionColor,_=this.truncateText(G.description,Q-2);this.frameBuffer.drawText(_,J+1,K,j)}}if(this._showScrollArrows&&this._options.length>this.maxVisibleTabs)this.renderScrollArrowsToFrameBuffer(J,Z,Q,q)}truncateText($,J){if($.length<=J)return $;return $.substring(0,Math.max(0,J-1))+"\u2026"}renderScrollArrowsToFrameBuffer($,J,Z,Q){if(!this.frameBuffer)return;let q=this.scrollOffset>0,U=this.scrollOffset+this.maxVisibleTabs<this._options.length;if(q)this.frameBuffer.drawText("\u2039",$,J,O("#AAAAAA"));if(U)this.frameBuffer.drawText("\u203A",$+Z-1,J,O("#AAAAAA"))}setOptions($){this._options=$,this.selectedIndex=Math.min(this.selectedIndex,Math.max(0,$.length-1)),this.updateScrollOffset(),this.requestRender()}getSelectedOption(){return this._options[this.selectedIndex]||null}getSelectedIndex(){return this.selectedIndex}moveLeft(){if(this.selectedIndex>0)this.selectedIndex--;else if(this._wrapSelection&&this._options.length>0)this.selectedIndex=this._options.length-1;else return;this.updateScrollOffset(),this.requestRender(),this.emit("selectionChanged",this.selectedIndex,this.getSelectedOption())}moveRight(){if(this.selectedIndex<this._options.length-1)this.selectedIndex++;else if(this._wrapSelection&&this._options.length>0)this.selectedIndex=0;else return;this.updateScrollOffset(),this.requestRender(),this.emit("selectionChanged",this.selectedIndex,this.getSelectedOption())}selectCurrent(){let $=this.getSelectedOption();if($)this.emit("itemSelected",this.selectedIndex,$)}setSelectedIndex($){if($>=0&&$<this._options.length)this.selectedIndex=$,this.updateScrollOffset(),this.requestRender(),this.emit("selectionChanged",this.selectedIndex,this.getSelectedOption())}updateScrollOffset(){let $=Math.floor(this.maxVisibleTabs/2),J=Math.max(0,Math.min(this.selectedIndex-$,this._options.length-this.maxVisibleTabs));if(J!==this.scrollOffset)this.scrollOffset=J,this.requestRender()}onResize($,J){this.maxVisibleTabs=Math.max(1,Math.floor($/this._tabWidth)),this.updateScrollOffset(),this.requestRender()}setTabWidth($){if(this._tabWidth===$)return;this._tabWidth=$,this.maxVisibleTabs=Math.max(1,Math.floor(this.width/this._tabWidth)),this.updateScrollOffset(),this.requestRender()}getTabWidth(){return this._tabWidth}handleKeyPress($){let J=w5(this._keyBindingsMap,$);if(J)switch(J){case"move-left":return this.moveLeft(),!0;case"move-right":return this.moveRight(),!0;case"select-current":return this.selectCurrent(),!0}return!1}get options(){return this._options}set options($){this._options=$,this.selectedIndex=Math.min(this.selectedIndex,Math.max(0,$.length-1)),this.updateScrollOffset(),this.requestRender()}set backgroundColor($){this._backgroundColor=O($),this.requestRender()}set textColor($){this._textColor=O($),this.requestRender()}set focusedBackgroundColor($){this._focusedBackgroundColor=O($),this.requestRender()}set focusedTextColor($){this._focusedTextColor=O($),this.requestRender()}set selectedBackgroundColor($){this._selectedBackgroundColor=O($),this.requestRender()}set selectedTextColor($){this._selectedTextColor=O($),this.requestRender()}set selectedDescriptionColor($){this._selectedDescriptionColor=O($),this.requestRender()}get showDescription(){return this._showDescription}set showDescription($){if(this._showDescription!==$){this._showDescription=$;let J=this.calculateDynamicHeight();this.height=J,this.requestRender()}}get showUnderline(){return this._showUnderline}set showUnderline($){if(this._showUnderline!==$){this._showUnderline=$;let J=this.calculateDynamicHeight();this.height=J,this.requestRender()}}get showScrollArrows(){return this._showScrollArrows}set showScrollArrows($){if(this._showScrollArrows!==$)this._showScrollArrows=$,this.requestRender()}get wrapSelection(){return this._wrapSelection}set wrapSelection($){this._wrapSelection=$}get tabWidth(){return this._tabWidth}set tabWidth($){if(this._tabWidth===$)return;this._tabWidth=$,this.maxVisibleTabs=Math.max(1,Math.floor(this.width/this._tabWidth)),this.updateScrollOffset(),this.requestRender()}set keyBindings($){this._keyBindings=$;let J=l(H6,$);this._keyBindingsMap=r(J,this._keyAliasMap)}set keyAliasMap($){this._keyAliasMap=G0(U0,$);let J=l(H6,this._keyBindings);this._keyBindingsMap=r(J,this._keyAliasMap)}}class j6 extends x{_runtimeMs=null;textColor;label;precision;constructor($,J={}){super($,{width:"100%",height:1,flexShrink:0,alignSelf:"center",...J});this.textColor=O(J.fg??"#AAAAAA"),this.label=J.label??"Time to first draw",this.precision=this.normalizePrecision(J.precision??2)}get runtimeMs(){return this._runtimeMs}set fg($){this.textColor=O($),this.requestRender()}set color($){this.fg=$}set textLabel($){if($===this.label)return;this.label=$,this.requestRender()}set decimals($){let J=this.normalizePrecision($);if(J===this.precision)return;this.precision=J,this.requestRender()}reset(){this._runtimeMs=null,this.requestRender()}renderSelf($){if(this._runtimeMs===null)this._runtimeMs=performance.now();let J=`${this.label}: ${this._runtimeMs.toFixed(this.precision)}ms`,Z=Math.max(this.width,1),Q=J.length>Z?J.slice(0,Z):J,q=this.x+Math.max(0,Math.floor((Z-Q.length)/2));$.drawText(Q,q,this.y,this.textColor)}normalizePrecision($){if(!Number.isFinite($))return 2;return Math.max(0,Math.floor($))}}
71
+ export{n7 as Nb,i0 as Ob,n5 as Pb,t5 as Qb,B0 as Rb,L0 as Sb,y0 as Tb,e0 as Ub,$6 as Vb,Y0 as Wb,d as Xb,J6 as Yb,C0 as Zb,q6 as _b,S0 as $b,U6 as ac,Z8 as bc,G6 as cc,Q8 as dc,j6 as ec,$9 as fc};