@marimo-team/frontend 0.24.1-dev3 → 0.24.1-dev30

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 (588) hide show
  1. package/dist/assets/{CellStatus-B_dBNTJO.js → CellStatus-DdKYN88d.js} +1 -1
  2. package/dist/assets/{ConnectedDataExplorerComponent-DLvmqIcV.js → ConnectedDataExplorerComponent-CbTaTBJ8.js} +1 -1
  3. package/dist/assets/{JsonOutput-C5g_bqiZ.js → JsonOutput-htT793Wj.js} +7 -7
  4. package/dist/assets/LazyAnyLanguageCodeMirror-Bx0i_n8B.js +2 -0
  5. package/dist/assets/{MarimoErrorOutput-Cb0evuEp.js → MarimoErrorOutput-Db7coyFA.js} +7 -7
  6. package/dist/assets/{RenderHTML-BoN8Qu7U.js → RenderHTML-Cu5JtYZJ.js} +1 -1
  7. package/dist/assets/{RunButton-C3V3v58F.js → RunButton-BOnl_Dk8.js} +1 -1
  8. package/dist/assets/{abnfDiagram-N423BO3Z-BBbWbiyb.js → abnfDiagram-N423BO3Z-BhqlQxDe.js} +1 -1
  9. package/dist/assets/{add-cell-with-ai--yrESuLb.js → add-cell-with-ai-Chy4ITIT.js} +12 -12
  10. package/dist/assets/add-connection-dialog-DGYhyXo6.js +181 -0
  11. package/dist/assets/{agent-panel-i9R2vDC5.js → agent-panel--Nt4UmNj.js} +6 -6
  12. package/dist/assets/{ai-model-dropdown-Wvw4ot3v.js → ai-model-dropdown-BUCPZ0ND.js} +4 -4
  13. package/dist/assets/{any-language-editor-B92E_2Sy.js → any-language-editor-CV_jRt2A.js} +1 -1
  14. package/dist/assets/apl-sEsRK68R.js +1 -0
  15. package/dist/assets/app-config-button-BOxbrv3L.js +1 -0
  16. package/dist/assets/architecture-TIHT7OUA-CkB6_TwN.js +1 -0
  17. package/dist/assets/{architectureDiagram-T3A2C74G-DoGbg0qs.js → architectureDiagram-T3A2C74G-D_0znduP.js} +1 -1
  18. package/dist/assets/asciiarmor-CwCv7Lne.js +1 -0
  19. package/dist/assets/asn1-CuzWg-fh.js +1 -0
  20. package/dist/assets/{blob-XD7AvCQ1.js → blob-BVQSODqn.js} +1 -1
  21. package/dist/assets/{blockDiagram-VBNYF7ZC-Fapk5G8q.js → blockDiagram-VBNYF7ZC-DhnQkFJt.js} +1 -1
  22. package/dist/assets/brainfuck-CnnfS_cI.js +1 -0
  23. package/dist/assets/{c4Diagram-5PPSVZJV-DHpoGw8m.js → c4Diagram-5PPSVZJV-DAZWLixJ.js} +1 -1
  24. package/dist/assets/{cell-editor-CrWparei.js → cell-editor-DgOfL9Xv.js} +15 -15
  25. package/dist/assets/cell-link-Bx8FWjns.js +1 -0
  26. package/dist/assets/{cells-BvgwUKB9.js → cells-Biwqg0z6.js} +80 -80
  27. package/dist/assets/channel-97-i68Z5.js +1 -0
  28. package/dist/assets/{chat-display-CvI32cPI.js → chat-display-B2qUbgnh.js} +1 -1
  29. package/dist/assets/{chat-panel-nbCWEZX-.js → chat-panel-gxL2S-HQ.js} +2 -2
  30. package/dist/assets/{chat-ui-BmrjRgsi.js → chat-ui-BhnwgDpa.js} +1 -1
  31. package/dist/assets/{chunk-2GRJ4B5K-B92Uwj7z.js → chunk-2GRJ4B5K-BJlW2T7a.js} +1 -1
  32. package/dist/assets/{chunk-2Q5K7J3B-CjxRf8HM.js → chunk-2Q5K7J3B-BKHkc-hn.js} +1 -1
  33. package/dist/assets/{chunk-3NCLNEKW-D7adDEkj.js → chunk-3NCLNEKW-DYppyU2y.js} +1 -1
  34. package/dist/assets/{chunk-4I5QYGJK-Cce-HuZg.js → chunk-4I5QYGJK-o2gGFKEO.js} +1 -1
  35. package/dist/assets/{chunk-5FCAYU7R-BJ04i5uO.js → chunk-5FCAYU7R-B4Jz9Jv5.js} +1 -1
  36. package/dist/assets/{chunk-5FQGJX7Z-B4N_BMo6.js → chunk-5FQGJX7Z-BIDn9QG0.js} +2 -2
  37. package/dist/assets/{chunk-5HE753X5-DRFzJ7WN.js → chunk-5HE753X5-DySWu3WO.js} +1 -1
  38. package/dist/assets/{chunk-5JV3BV7I-BEi9dboc.js → chunk-5JV3BV7I-EFAb-cXP.js} +1 -1
  39. package/dist/assets/{chunk-5RXB4S5H-B63Jmiyu.js → chunk-5RXB4S5H-Bsyeqyau.js} +1 -1
  40. package/dist/assets/{chunk-5TONJI2A-C5JJwzzL.js → chunk-5TONJI2A-BtGpymP5.js} +1 -1
  41. package/dist/assets/{chunk-5VM5RSS4-CQG8Gkf2.js → chunk-5VM5RSS4-De48wE7I.js} +1 -1
  42. package/dist/assets/{chunk-6Q2QTUOP-CjNw1snm.js → chunk-6Q2QTUOP-UhOQcBq_.js} +1 -1
  43. package/dist/assets/{chunk-7BUUIJ7U-DFO0zbY5.js → chunk-7BUUIJ7U-VPkRElaC.js} +1 -1
  44. package/dist/assets/{chunk-7Z6QIM7H-BahVaiTb.js → chunk-7Z6QIM7H-CSiw9nlS.js} +1 -1
  45. package/dist/assets/{chunk-BIQX33UG-B1y9dy0P.js → chunk-BIQX33UG-Clm0kIyq.js} +1 -1
  46. package/dist/assets/{chunk-CQNSW5MT-BOOyLCfW.js → chunk-CQNSW5MT-CxPDGEiS.js} +1 -1
  47. package/dist/assets/{chunk-CYSBUYHQ-DAWZpY6r.js → chunk-CYSBUYHQ-Cx6JgR38.js} +1 -1
  48. package/dist/assets/{chunk-EMLP6XTP-Bj2I2iEi.js → chunk-EMLP6XTP-DrNgCa2u.js} +1 -1
  49. package/dist/assets/{chunk-GF5L2VYU-BA39vN3k.js → chunk-GF5L2VYU-B88HnHN4.js} +1 -1
  50. package/dist/assets/{chunk-I66GZJ75-CgJN5WrL.js → chunk-I66GZJ75-BWcitPjS.js} +3 -3
  51. package/dist/assets/{chunk-J7OUQ5F2-DK5phbYO.js → chunk-J7OUQ5F2-DuBXnQXx.js} +2 -2
  52. package/dist/assets/{chunk-JG7HCLWE-BEfUAeKb.js → chunk-JG7HCLWE-D4-rg2bS.js} +1 -1
  53. package/dist/assets/{chunk-JQJVKLGR-vTeSeIY7.js → chunk-JQJVKLGR-L5fl0mYk.js} +1 -1
  54. package/dist/assets/{chunk-JWPE2WC7-C-mBVSJi.js → chunk-JWPE2WC7-CIIO5B1k.js} +1 -1
  55. package/dist/assets/{chunk-KBJHAD2P-BKxl1MSu.js → chunk-KBJHAD2P-MvrqGNli.js} +1 -1
  56. package/dist/assets/{chunk-MOZMSUNE-C-RMDvp_.js → chunk-MOZMSUNE-t37mHxNa.js} +1 -1
  57. package/dist/assets/{chunk-NSK5VX7P-bxC5WUDr.js → chunk-NSK5VX7P-B_lLBcNS.js} +1 -1
  58. package/dist/assets/{chunk-OSBZ3O6U-DEYDoDYT.js → chunk-OSBZ3O6U-3f38erx3.js} +1 -1
  59. package/dist/assets/{chunk-QBLGF6JB-CBncH5PS.js → chunk-QBLGF6JB-CHob4JDY.js} +1 -1
  60. package/dist/assets/{chunk-QR6OTTB3-gGVLoYpg.js → chunk-QR6OTTB3-Xk5It1Th.js} +1 -1
  61. package/dist/assets/{chunk-R7FJI6CG-DWxNgy5y.js → chunk-R7FJI6CG-ClJ6eR5G.js} +1 -1
  62. package/dist/assets/{chunk-RYQCIY6F-DkXJx61e.js → chunk-RYQCIY6F-CZjjwaqg.js} +1 -1
  63. package/dist/assets/{chunk-U6XO7XAA-DWWxQ-OA.js → chunk-U6XO7XAA-Ct1fe-tp.js} +1 -1
  64. package/dist/assets/{chunk-UBXNYLIW-elhI8GOz.js → chunk-UBXNYLIW-XbwBj9py.js} +1 -1
  65. package/dist/assets/{chunk-W5SLKNZC-D_QNHYYQ.js → chunk-W5SLKNZC-DBMPI1Hf.js} +1 -1
  66. package/dist/assets/{chunk-WRU74C26-BU1GwH6E.js → chunk-WRU74C26-HbDQnuwB.js} +1 -1
  67. package/dist/assets/{chunk-XXDRQBXY-D_KNH1wc.js → chunk-XXDRQBXY-DyGGngH3.js} +1 -1
  68. package/dist/assets/{chunk-YOTPTUD7-Nm5N45o4.js → chunk-YOTPTUD7-CC6lxUuz.js} +1 -1
  69. package/dist/assets/{chunk-ZIRB5QZD-DKs4kfC7.js → chunk-ZIRB5QZD-Giz-iAOC.js} +1 -1
  70. package/dist/assets/classDiagram-JCYQIIEL-Bi4N77rq.js +1 -0
  71. package/dist/assets/classDiagram-v2-OCEON4UE-DDmVp-9r.js +1 -0
  72. package/dist/assets/{clike-BAN6KopO.js → clike-tfWZyYoN.js} +1 -1
  73. package/dist/assets/clojure-Bninbb7T.js +1 -0
  74. package/dist/assets/cmake-BpuaQxBS.js +1 -0
  75. package/dist/assets/cobol-GPJ0dHQG.js +1 -0
  76. package/dist/assets/{code-block-37QAKDTI-DYj4t0uu.js → code-block-37QAKDTI-CxkZZ2yu.js} +1 -1
  77. package/dist/assets/coffeescript-D7gQHdB-.js +1 -0
  78. package/dist/assets/{column-preview-DMqGohE5.js → column-preview-BaRqZ9P8.js} +1 -1
  79. package/dist/assets/{command-palette-DCAiZSda.js → command-palette-Cbie8JV9.js} +1 -1
  80. package/dist/assets/{common-Dx_4ekWj.js → common-sBRwGAKy.js} +1 -1
  81. package/dist/assets/commonlisp-Cr4KGe18.js +1 -0
  82. package/dist/assets/{components-CozWCL5N.js → components-CGGSwziZ.js} +1 -1
  83. package/dist/assets/components-DsJAWbBR.js +1 -0
  84. package/dist/assets/{cose-bilkent-JH36ORCC-BItWxPmu.js → cose-bilkent-JH36ORCC-Bgowgmmd.js} +1 -1
  85. package/dist/assets/crystal-CsTMAwME.js +1 -0
  86. package/dist/assets/{css-DWLxGm3Z.js → css-COZ77Eal.js} +1 -1
  87. package/dist/assets/cynefin-VYW2F7L2-mNpr4SbP.js +1 -0
  88. package/dist/assets/{cynefinDiagram-MW4NZA55-xRolnN9H.js → cynefinDiagram-MW4NZA55-BjhYqu92.js} +1 -1
  89. package/dist/assets/cypher-CY21sZiF.js +1 -0
  90. package/dist/assets/d-CURHSrpr.js +1 -0
  91. package/dist/assets/{dagre-VZM6K2ZE--7CAsOPi.js → dagre-VZM6K2ZE-BEuyIkT6.js} +1 -1
  92. package/dist/assets/{data-grid-overlay-editor-CP2bSduR.js → data-grid-overlay-editor-BQUij2ly.js} +1 -1
  93. package/dist/assets/data-source-discovery-DCNYJylO.js +1 -0
  94. package/dist/assets/{datasource-Le540Ng6.js → datasource-DxCwZdAq.js} +2 -2
  95. package/dist/assets/dependency-graph-panel-CLOQ_RvL.js +5 -0
  96. package/dist/assets/{diagram-7IWD3JNH-B55VSdpL.js → diagram-7IWD3JNH-Bs3lgu-c.js} +1 -1
  97. package/dist/assets/{diagram-B4RE2ZJO-BDn7ASqI.js → diagram-B4RE2ZJO-Dth7brNz.js} +1 -1
  98. package/dist/assets/{diagram-LBJQPF4R-B51MZG2V.js → diagram-LBJQPF4R-BTVLtL0d.js} +1 -1
  99. package/dist/assets/{diagram-Q27KOJAE-Cwk0Mlin.js → diagram-Q27KOJAE-CP204u9a.js} +1 -1
  100. package/dist/assets/{diagram-UB23O5K3-BdYFaMnx.js → diagram-UB23O5K3-ClHQzHar.js} +1 -1
  101. package/dist/assets/diff-oDNdZgsT.js +1 -0
  102. package/dist/assets/dist-2VJQDijP.js +1 -0
  103. package/dist/assets/{dist-etjVl5BO.js → dist-BB2m_pT9.js} +1 -1
  104. package/dist/assets/{dist-CAHB5I2V.js → dist-BIoV7ItK.js} +1 -1
  105. package/dist/assets/{dist-D5yi7Y8o.js → dist-BKZjRJh7.js} +1 -1
  106. package/dist/assets/dist-BSndAsl2.js +1 -0
  107. package/dist/assets/{dist-CF4ci481.js → dist-BrBdlR-1.js} +1 -1
  108. package/dist/assets/dist-CULUasdr.js +1 -0
  109. package/dist/assets/{dist-CG7o1Txo.js → dist-CgdeWOxv.js} +1 -1
  110. package/dist/assets/{dist-x-uwJAB2.js → dist-D7Pn6TvC.js} +1 -1
  111. package/dist/assets/{dist-Ci0ANOWc.js → dist-DoCsyl8V.js} +1 -1
  112. package/dist/assets/{dist-BhAom09b.js → dist-Q_HuxBl8.js} +1 -1
  113. package/dist/assets/{dist-UMYZc9Uw.js → dist-URSEPeIQ.js} +1 -1
  114. package/dist/assets/dist-e3TiiDdA.js +1 -0
  115. package/dist/assets/{dist-0tTkix79.js → dist-gKSpDGw2.js} +1 -1
  116. package/dist/assets/{dist-5AUFDACg.js → dist-ziD6OB9m.js} +1 -1
  117. package/dist/assets/{dockerfile-vQlfzaHL.js → dockerfile-L84t-MVG.js} +1 -1
  118. package/dist/assets/{documentation-panel-RJNMjUK6.js → documentation-panel-D9w8PAT9.js} +1 -1
  119. package/dist/assets/{download-B8NwKEtr.js → download-CfUkZlw7.js} +1 -1
  120. package/dist/assets/dtd-Cy2_BeYL.js +1 -0
  121. package/dist/assets/dylan-Crd9Fb_0.js +1 -0
  122. package/dist/assets/{ebnfDiagram-BXEA7PRR-BeNZBLGl.js → ebnfDiagram-BXEA7PRR-D5itfLTD.js} +1 -1
  123. package/dist/assets/ecl-CfCmFoo0.js +1 -0
  124. package/dist/assets/{edit-page-CvL5WAqs.js → edit-page-DKAg2YW9.js} +6 -6
  125. package/dist/assets/eiffel-gIaoJqnl.js +1 -0
  126. package/dist/assets/elm-BFWuf0zw.js +1 -0
  127. package/dist/assets/{erDiagram-JOGREHBK-Md316MnW.js → erDiagram-JOGREHBK-8nttFkHX.js} +1 -1
  128. package/dist/assets/erlang-o_h5GHv6.js +1 -0
  129. package/dist/assets/{error-entries-yYB8PZoo.js → error-entries-DpvSrZSw.js} +3 -3
  130. package/dist/assets/{error-panel-Dr928gBs.js → error-panel-uRl1_l47.js} +1 -1
  131. package/dist/assets/{esm-CpCa6w8Q.js → esm-B7G79VOo.js} +1 -1
  132. package/dist/assets/eventmodeling-45OFAUF4-CmCnqr0B.js +1 -0
  133. package/dist/assets/factor-DhP48x0i.js +1 -0
  134. package/dist/assets/{factor-D96xahcJ.js → factor-aNENtHLj.js} +1 -1
  135. package/dist/assets/file-explorer-panel-DwA9Lprz.js +37 -0
  136. package/dist/assets/{file-icons-D39zbjsS.js → file-icons-DpREEjwW.js} +1 -1
  137. package/dist/assets/{file-name-input-BLH5fTEA.js → file-name-input-C7AQKuoU.js} +1 -1
  138. package/dist/assets/{floating-outline-UPrDtFZF.js → floating-outline-4I6DvqaR.js} +1 -1
  139. package/dist/assets/flowDiagram-UKHOOZJN-BBKoHcjJ.js +1 -0
  140. package/dist/assets/{focus-BArgHYf8.js → focus-CeTtpVjV.js} +1 -1
  141. package/dist/assets/{form-BvzcNsxB.js → form-B10bgcbQ.js} +1 -1
  142. package/dist/assets/{form-BN1AKD58.js → form-Cj9BLARR.js} +1 -1
  143. package/dist/assets/forth-B9culvwH.js +1 -0
  144. package/dist/assets/fortran-P9CMHntW.js +1 -0
  145. package/dist/assets/{ganttDiagram-PKOTCBZU-ZWAQtEyO.js → ganttDiagram-PKOTCBZU-lYZ3LZM4.js} +1 -1
  146. package/dist/assets/gas-aBeBIUA2.js +1 -0
  147. package/dist/assets/gherkin-BKojMN6Q.js +1 -0
  148. package/dist/assets/gitGraph-TEB2WS4Q-lhsXnAif.js +1 -0
  149. package/dist/assets/{gitGraphDiagram-DS77QQ5N-BLejYVyQ.js → gitGraphDiagram-DS77QQ5N-BMWEqU01.js} +1 -1
  150. package/dist/assets/{glide-data-editor-BNZxtmKn.js → glide-data-editor-Bo6hLXbn.js} +6 -6
  151. package/dist/assets/groovy-CePAd7wh.js +1 -0
  152. package/dist/assets/haskell-QHmsrbZx.js +1 -0
  153. package/dist/assets/haxe-CQV_8vKL.js +1 -0
  154. package/dist/assets/{home-page-DcO0NzuV.js → home-page-BNJihtii.js} +2 -2
  155. package/dist/assets/{html-to-image-DKEUbBwc.js → html-to-image-ChfBVn8-.js} +1 -1
  156. package/dist/assets/idl-Dd8N44Cm.js +1 -0
  157. package/dist/assets/index-CxZ6uZaz.css +2 -0
  158. package/dist/assets/index-T5Rre8Dj.js +38 -0
  159. package/dist/assets/info-DKCQHKI2-C7T8UDyU.js +1 -0
  160. package/dist/assets/infoDiagram-6WML65LV-DF1s-6Vl.js +2 -0
  161. package/dist/assets/{ishikawaDiagram-WSZJBQD7-DsUyhPdP.js → ishikawaDiagram-WSZJBQD7-DaG24pVU.js} +1 -1
  162. package/dist/assets/javascript-DSNeo7JU.js +1 -0
  163. package/dist/assets/{journeyDiagram-NVQOT4AX-Dtytysty.js → journeyDiagram-NVQOT4AX-Bjv5KPQN.js} +1 -1
  164. package/dist/assets/julia-noK_uk9P.js +1 -0
  165. package/dist/assets/{kanban-definition-27J2QSJJ-CtSUWi1q.js → kanban-definition-27J2QSJJ-3QfkEp5c.js} +1 -1
  166. package/dist/assets/katex-D7rQd2tt.js +1 -0
  167. package/dist/assets/{layout-C5In1pVG.js → layout-YPBtS2D6.js} +5 -5
  168. package/dist/assets/livescript-YKkeujLh.js +1 -0
  169. package/dist/assets/{logs-panel-DItocggZ.js → logs-panel-ClE58_4G.js} +1 -1
  170. package/dist/assets/{loro_wasm_bg-Cei5H7n0.js → loro_wasm_bg-Bhj1szFH.js} +1 -1
  171. package/dist/assets/lua-fLqC1mOj.js +1 -0
  172. package/dist/assets/{markdown-renderer-D7RLn6TA.js → markdown-renderer-BOS4jZLt.js} +3 -3
  173. package/dist/assets/mathematica-BEqGrvB0.js +1 -0
  174. package/dist/assets/mbox-9uehSvC8.js +1 -0
  175. package/dist/assets/{mermaid-4DMBBIKO-oaGD2RAq.js → mermaid-4DMBBIKO-VnWrwEGQ.js} +1 -1
  176. package/dist/assets/{mermaid-D7qPJTl5.js → mermaid-DrH-G40O.js} +3 -3
  177. package/dist/assets/{mermaid-parser.core-C1pvq6V4.js → mermaid-parser.core-7L0n-40M.js} +2 -2
  178. package/dist/assets/{mhchem-ByBXJmVs.js → mhchem-jUQ3W9QS.js} +1 -1
  179. package/dist/assets/{mindmap-definition-FAOFIHXS-BdiofJNg.js → mindmap-definition-FAOFIHXS-BI-5PR09.js} +1 -1
  180. package/dist/assets/mirc-BTX_WxCv.js +1 -0
  181. package/dist/assets/mllike-LThTvO6F.js +1 -0
  182. package/dist/assets/modelica-ClexNQK-.js +1 -0
  183. package/dist/assets/mscgen-Cr-Z_Sdd.js +1 -0
  184. package/dist/assets/mumps-G_BfPdvs.js +1 -0
  185. package/dist/assets/{name-cell-input-jausH-CL.js → name-cell-input-UMsLssMV.js} +1 -1
  186. package/dist/assets/nsis-CBRC0JIr.js +1 -0
  187. package/dist/assets/{nsis-gzbsJ5t0.js → nsis-CNBWu0HQ.js} +1 -1
  188. package/dist/assets/ntriples-DrvRq09t.js +1 -0
  189. package/dist/assets/{number-overlay-editor-CrwfeUrx.js → number-overlay-editor-C-zZ00cy.js} +1 -1
  190. package/dist/assets/octave-BiPC57kS.js +1 -0
  191. package/dist/assets/{outline-panel-C_pASL6b.js → outline-panel-DweKocZK.js} +1 -1
  192. package/dist/assets/oz-DacpSh-q.js +1 -0
  193. package/dist/assets/{packages-panel-DTqur75g.js → packages-panel-Cbw5J5QD.js} +1 -1
  194. package/dist/assets/packet-7NZHBO7P-CJZ85ye7.js +1 -0
  195. package/dist/assets/panel-accordion-state-CgvX-ElJ.js +1 -0
  196. package/dist/assets/panels-DRv39UwA.js +4 -0
  197. package/dist/assets/pascal-BQpBPSms.js +1 -0
  198. package/dist/assets/{pegDiagram-VL7TDLO6-CUhl_uoo.js → pegDiagram-VL7TDLO6-Dr2AgOs7.js} +1 -1
  199. package/dist/assets/perl-BhMGfluR.js +1 -0
  200. package/dist/assets/pie-RZYD4A2V-DowYgF53.js +1 -0
  201. package/dist/assets/{pieDiagram-7S7Q4E2Y-BUJuppkz.js → pieDiagram-7S7Q4E2Y-CrBge38F.js} +1 -1
  202. package/dist/assets/pig-lTm9qLoi.js +1 -0
  203. package/dist/assets/powershell-3wPcC3I5.js +1 -0
  204. package/dist/assets/{process-output-ClE9lj2U.js → process-output-BMxr8Z3g.js} +1 -1
  205. package/dist/assets/properties-CfDlOPua.js +1 -0
  206. package/dist/assets/protobuf-DqtB_3Ds.js +1 -0
  207. package/dist/assets/pug-BendPilS.js +1 -0
  208. package/dist/assets/{pug-CfBtO6QD.js → pug-IDpseMj2.js} +1 -1
  209. package/dist/assets/puppet-CS4oS8k4.js +1 -0
  210. package/dist/assets/python-DwXz2aVG.js +1 -0
  211. package/dist/assets/q-CAmiN8ZZ.js +1 -0
  212. package/dist/assets/{quadrantDiagram-CIZ2JOQS-D1kqQfB1.js → quadrantDiagram-CIZ2JOQS-BE2ggXL5.js} +1 -1
  213. package/dist/assets/r-BVrS7OVn.js +1 -0
  214. package/dist/assets/radar-I7S5WNFK-CTSSWmoj.js +1 -0
  215. package/dist/assets/{radio-group-CSwRGU0A.js → radio-group-YNmbPL7y.js} +1 -1
  216. package/dist/assets/railroad-3IZDKUUU-B7NYUsSF.js +1 -0
  217. package/dist/assets/railroad-abnf-AHOZXSZD-YHDI2QY9.js +1 -0
  218. package/dist/assets/railroad-ebnf-EBAXGLYW-C63c8OB7.js +1 -0
  219. package/dist/assets/railroad-peg-LSFZ7HO6-Cjglh51C.js +1 -0
  220. package/dist/assets/{railroadDiagram-AXF67PYL-A0Qm-6po.js → railroadDiagram-AXF67PYL-DCQRdlxt.js} +1 -1
  221. package/dist/assets/{readonly-code-display-kRUXu5aJ.js → readonly-code-display-N9tCXdCz.js} +1 -1
  222. package/dist/assets/{readonly-python-code-BCOkadQf.js → readonly-python-code-BHrAhtGV.js} +1 -1
  223. package/dist/assets/{requirementDiagram-LRYGKXZP-Cq2ghiHc.js → requirementDiagram-LRYGKXZP-DwT1P9SV.js} +1 -1
  224. package/dist/assets/{reveal-component-DpjFw5UY.js → reveal-component-Cl6cd65E.js} +2 -2
  225. package/dist/assets/rpm-CdnUar42.js +1 -0
  226. package/dist/assets/ruby-BCel59B2.js +1 -0
  227. package/dist/assets/{run-page-BXPaOWqZ.js → run-page-Phwq7OJt.js} +1 -1
  228. package/dist/assets/{sankeyDiagram-W5VNT64P-RT9P6FJq.js → sankeyDiagram-W5VNT64P-DI3BRqfo.js} +1 -1
  229. package/dist/assets/sas-BmzKenFt.js +1 -0
  230. package/dist/assets/scheme-DkHD_m5P.js +1 -0
  231. package/dist/assets/{scratchpad-panel-GyB5PjiV.js → scratchpad-panel-CvihhlAP.js} +1 -1
  232. package/dist/assets/{sequenceDiagram-SI44F4Z6-Dk9UNsG3.js → sequenceDiagram-SI44F4Z6-BBkZRxiN.js} +1 -1
  233. package/dist/assets/session-panel-BmQ0PDHO.js +1 -0
  234. package/dist/assets/shell-BoNNN3zm.js +1 -0
  235. package/dist/assets/sieve-BXXK8f92.js +1 -0
  236. package/dist/assets/{sizeCapture-X5ZJPWSS-ce6Hf1Mn.js → sizeCapture-X5ZJPWSS-BwnqWK01.js} +1 -1
  237. package/dist/assets/{skeleton-CHVfqr51.js → skeleton-BsZq3Vmq.js} +1 -1
  238. package/dist/assets/smalltalk-BOqQhpHI.js +1 -0
  239. package/dist/assets/{snippets-panel-V4x4wLMQ.js → snippets-panel-cYP0GMUf.js} +1 -1
  240. package/dist/assets/sparql-edyZVkfL.js +1 -0
  241. package/dist/assets/spec-C_psFYbu.js +1 -0
  242. package/dist/assets/{src-Be2gSjc_.js → src-BydIU0H9.js} +1 -1
  243. package/dist/assets/{state-m2zUPztG.js → state-DJon00Ew.js} +1 -1
  244. package/dist/assets/{state-C7arWhwL.js → state-Dc5AjWPq.js} +2 -2
  245. package/dist/assets/{stateDiagram-OKZ733FA-b4p2-xPQ.js → stateDiagram-OKZ733FA-CKgejYo0.js} +1 -1
  246. package/dist/assets/stateDiagram-v2-UEYNNEHI-DGOHmIHi.js +1 -0
  247. package/dist/assets/stylus-D7JxHbZj.js +1 -0
  248. package/dist/assets/swift-BVf4glc7.js +1 -0
  249. package/dist/assets/{swimlanes-SLNWSIFB-BU8BFEOR.js → swimlanes-SLNWSIFB-CaRk1UjW.js} +2 -2
  250. package/dist/assets/swimlanesDiagram-ULZ7WXOC-B3waQOQb.js +8 -0
  251. package/dist/assets/tcl-Dj0fCfAi.js +1 -0
  252. package/dist/assets/textile-C2t_E40o.js +1 -0
  253. package/dist/assets/{timeline-definition-Z64GVDOM-D1kTYo17.js → timeline-definition-Z64GVDOM-eczfm7Uw.js} +1 -1
  254. package/dist/assets/toml-DaFUQW6l.js +1 -0
  255. package/dist/assets/{tracing-Cmwuiwj9.js → tracing-dGSNt8Nm.js} +1 -1
  256. package/dist/assets/{tracing-panel-CCXeYfOu.js → tracing-panel-CQCgx3e4.js} +2 -2
  257. package/dist/assets/{tree-actions-QMLf8Qhz.js → tree-actions-pW_UgP3m.js} +1 -1
  258. package/dist/assets/treeView-QDETBFTQ-CSvxEE7M.js +1 -0
  259. package/dist/assets/treemap-6X3UGDF4-CmweKwGi.js +1 -0
  260. package/dist/assets/troff-CYzkeKir.js +1 -0
  261. package/dist/assets/ttcn-CXYORWfg.js +1 -0
  262. package/dist/assets/ttcn-cfg-CaYX34bx.js +1 -0
  263. package/dist/assets/turtle-5bfs3D9s.js +1 -0
  264. package/dist/assets/{useCellActionButton-D8qyXNKv.js → useCellActionButton-De17Z9R3.js} +1 -1
  265. package/dist/assets/{useDeleteCell-Ctnxl8AT.js → useDeleteCell-BgFMPTmg.js} +1 -1
  266. package/dist/assets/{useDependencyPanelTab-CYSEZi6j.js → useDependencyPanelTab-w8VLtsK3.js} +1 -1
  267. package/dist/assets/{useNotebookActions-CxMrxNFT.js → useNotebookActions-BI53NQV3.js} +4 -4
  268. package/dist/assets/{useRunCells-DjQN3XYP.js → useRunCells-CAfRBo7h.js} +1 -1
  269. package/dist/assets/{useSplitCell-BG8Zd4lw.js → useSplitCell-N8Ohs-Pp.js} +1 -1
  270. package/dist/assets/{utils-Y4n-X10o.js → utils-Bp3MLwWq.js} +1 -1
  271. package/dist/assets/vb-CXQ5pSkV.js +1 -0
  272. package/dist/assets/vbscript-BZP_4BaN.js +1 -0
  273. package/dist/assets/{vega-component-1VoQOWvU.js → vega-component-DpKA6PEU.js} +1 -1
  274. package/dist/assets/{vega-embed-container-CH1lX0V6.js → vega-embed-container-D0V0wn9T.js} +1 -1
  275. package/dist/assets/velocity-BbHSi60j.js +1 -0
  276. package/dist/assets/{vennDiagram-T6HMQDX7-BhQR7L7x.js → vennDiagram-T6HMQDX7-BKrC4vk_.js} +1 -1
  277. package/dist/assets/verilog-Bw8NaRo-.js +1 -0
  278. package/dist/assets/vhdl-CkM1aKBX.js +1 -0
  279. package/dist/assets/wardley-OPB4EBWU-DKu5fTFq.js +1 -0
  280. package/dist/assets/{wardleyDiagram-T6FBY63Y-C6iZTOEK.js → wardleyDiagram-T6FBY63Y-BsBjXAQS.js} +1 -1
  281. package/dist/assets/webidl-C8MAcuKq.js +1 -0
  282. package/dist/assets/xquery-a81J2h4S.js +1 -0
  283. package/dist/assets/{xychartDiagram-ELKLHX3M-Hl9zZZJW.js → xychartDiagram-ELKLHX3M-i4ykddaR.js} +1 -1
  284. package/dist/assets/yacas-CjV2u_g7.js +1 -0
  285. package/dist/assets/z80-C0uVpBhe.js +1 -0
  286. package/dist/index.html +28 -28
  287. package/package.json +1 -1
  288. package/src/components/app-config/optional-features.test.ts +78 -0
  289. package/src/components/app-config/optional-features.tsx +33 -6
  290. package/src/components/data-table/__tests__/column_formatting.test.ts +7 -0
  291. package/src/components/data-table/charts/__tests__/schemas.test.ts +17 -2
  292. package/src/components/data-table/charts/chart-spec/types.ts +2 -0
  293. package/src/components/data-table/column-formatting/feature.ts +1 -0
  294. package/src/components/data-table/column-formatting/types.ts +1 -0
  295. package/src/components/data-table/column-summary/chart-spec-model.tsx +1 -0
  296. package/src/components/data-table/column-summary/column-summary.tsx +1 -0
  297. package/src/components/data-table/columns.tsx +4 -3
  298. package/src/components/datasets/__tests__/icons.test.ts +10 -2
  299. package/src/components/datasets/icons.tsx +4 -0
  300. package/src/components/datasources/__tests__/components.test.tsx +14 -1
  301. package/src/components/datasources/datasources.tsx +2 -40
  302. package/src/components/editor/chrome/panels/components.tsx +35 -0
  303. package/src/components/editor/chrome/panels/file-explorer-panel.tsx +10 -0
  304. package/src/components/editor/chrome/panels/session-panel.tsx +12 -4
  305. package/src/components/editor/connections/__tests__/quick-add-data-sources.test.tsx +2 -0
  306. package/src/components/editor/connections/add-connection-dialog.tsx +5 -1
  307. package/src/components/editor/connections/quick-add-data-sources.tsx +11 -7
  308. package/src/components/editor/connections/storage/__tests__/__snapshots__/as-code.test.ts.snap +43 -0
  309. package/src/components/editor/connections/storage/__tests__/as-code.test.ts +127 -0
  310. package/src/components/editor/connections/storage/add-storage-form.tsx +11 -1
  311. package/src/components/editor/connections/storage/as-code.ts +30 -1
  312. package/src/components/editor/connections/storage/schemas.ts +63 -0
  313. package/src/core/codemirror/code-lens/__tests__/popover.test.ts +13 -0
  314. package/src/core/codemirror/code-lens/popover.tsx +11 -5
  315. package/src/core/codemirror/language/languages/sql/__tests__/renderers.test.tsx +15 -4
  316. package/src/core/codemirror/language/languages/sql/renderers.tsx +1 -0
  317. package/src/core/datasets/__tests__/data-source-discovery.test.ts +277 -0
  318. package/src/core/datasets/data-source-connections.ts +36 -0
  319. package/src/core/datasets/data-source-discovery.ts +92 -0
  320. package/src/core/kernel/messages.ts +1 -0
  321. package/src/core/websocket/useMarimoKernelConnection.tsx +11 -3
  322. package/src/hooks/useDataSourceDiscovery.ts +50 -9
  323. package/src/plugins/impl/MatrixPlugin.tsx +256 -35
  324. package/src/plugins/impl/__tests__/DataEditorPlugin.test.ts +13 -1
  325. package/src/plugins/impl/__tests__/MatrixPlugin.test.tsx +540 -3
  326. package/src/plugins/impl/data-editor/glide-data-editor.tsx +1 -0
  327. package/src/plugins/impl/data-editor/glide-utils.ts +1 -0
  328. package/src/plugins/impl/data-frames/__tests__/schema.test.ts +9 -1
  329. package/src/plugins/impl/data-frames/utils/__tests__/operators.test.ts +8 -0
  330. package/src/plugins/impl/data-frames/utils/operators.ts +1 -1
  331. package/src/plugins/impl/vega/__tests__/vega.test.ts +22 -4
  332. package/src/plugins/impl/vega/utils.ts +3 -0
  333. package/dist/assets/LazyAnyLanguageCodeMirror-DUvRReKp.js +0 -2
  334. package/dist/assets/add-connection-dialog-DHyonb9T.js +0 -178
  335. package/dist/assets/apl-B-7blH-b.js +0 -1
  336. package/dist/assets/app-config-button-DnmQED8O.js +0 -1
  337. package/dist/assets/architecture-TIHT7OUA-YhortkiJ.js +0 -1
  338. package/dist/assets/asciiarmor-D3K8amZ9.js +0 -1
  339. package/dist/assets/asn1-UGGn98tp.js +0 -1
  340. package/dist/assets/brainfuck-B4y4U3tg.js +0 -1
  341. package/dist/assets/cell-link-WDIIwzUn.js +0 -1
  342. package/dist/assets/channel-B8YARzTa.js +0 -1
  343. package/dist/assets/classDiagram-JCYQIIEL-CjNLIEON.js +0 -1
  344. package/dist/assets/classDiagram-v2-OCEON4UE-DB1cPPS3.js +0 -1
  345. package/dist/assets/clojure-BAZ-ejkG.js +0 -1
  346. package/dist/assets/cmake-jWn0xN9y.js +0 -1
  347. package/dist/assets/cobol-XqY9jaWP.js +0 -1
  348. package/dist/assets/coffeescript-DI1jfZHX.js +0 -1
  349. package/dist/assets/commonlisp-UKb01OlU.js +0 -1
  350. package/dist/assets/components-DVs9Yu7X.js +0 -1
  351. package/dist/assets/crystal-DOvjTBWA.js +0 -1
  352. package/dist/assets/cynefin-VYW2F7L2-Dob7zmDv.js +0 -1
  353. package/dist/assets/cypher-CLDhu2ae.js +0 -1
  354. package/dist/assets/d-C0ecUZk9.js +0 -1
  355. package/dist/assets/dependency-graph-panel-BsdBM_AS.js +0 -5
  356. package/dist/assets/diff-657cCCVc.js +0 -1
  357. package/dist/assets/dist-BbNJKBqf.js +0 -1
  358. package/dist/assets/dist-CJU3fYUR.js +0 -1
  359. package/dist/assets/dist-ClAayqDs.js +0 -1
  360. package/dist/assets/dist-Dk7PW1P8.js +0 -1
  361. package/dist/assets/dtd-DSiK7Qgi.js +0 -1
  362. package/dist/assets/dylan-07d5-7Q9.js +0 -1
  363. package/dist/assets/ecl-CSTUHiwq.js +0 -1
  364. package/dist/assets/eiffel-DR99GcsM.js +0 -1
  365. package/dist/assets/elm-Cmh0iW6J.js +0 -1
  366. package/dist/assets/erlang-CS9Yc6UC.js +0 -1
  367. package/dist/assets/eventmodeling-45OFAUF4-Dfz56MmV.js +0 -1
  368. package/dist/assets/factor-DjB27Lcf.js +0 -1
  369. package/dist/assets/file-explorer-panel-Brf39GIG.js +0 -37
  370. package/dist/assets/flowDiagram-UKHOOZJN-DuIOw7R3.js +0 -1
  371. package/dist/assets/forth-UwTUu7NY.js +0 -1
  372. package/dist/assets/fortran-cptiB4gJ.js +0 -1
  373. package/dist/assets/gas-ajMbd9Us.js +0 -1
  374. package/dist/assets/gherkin-ClYkalzE.js +0 -1
  375. package/dist/assets/gitGraph-TEB2WS4Q-DHatMnz3.js +0 -1
  376. package/dist/assets/groovy-BY-gt7AW.js +0 -1
  377. package/dist/assets/haskell-D1BeJ7SR.js +0 -1
  378. package/dist/assets/haxe-QOq5WFXx.js +0 -1
  379. package/dist/assets/idl-3-UcEGx7.js +0 -1
  380. package/dist/assets/index-CXJA6BU5.js +0 -38
  381. package/dist/assets/index-WoaGtlKd.css +0 -2
  382. package/dist/assets/info-DKCQHKI2-DL5sXjlh.js +0 -1
  383. package/dist/assets/infoDiagram-6WML65LV-w0LSkwW5.js +0 -2
  384. package/dist/assets/javascript-CorD44JN.js +0 -1
  385. package/dist/assets/julia-BYqTtTAl.js +0 -1
  386. package/dist/assets/katex-DWt0esek.js +0 -1
  387. package/dist/assets/livescript-qYgfNnNE.js +0 -1
  388. package/dist/assets/lua-BCqCjdfz.js +0 -1
  389. package/dist/assets/mathematica-XKwMfn0d.js +0 -1
  390. package/dist/assets/mbox-BnkeOnif.js +0 -1
  391. package/dist/assets/mirc-ipoElhai.js +0 -1
  392. package/dist/assets/mllike-DmouQ5Dp.js +0 -1
  393. package/dist/assets/modelica-BtmmVsUf.js +0 -1
  394. package/dist/assets/mscgen-BHZmHZgz.js +0 -1
  395. package/dist/assets/mumps-oKfoFTl_.js +0 -1
  396. package/dist/assets/nsis-DDOPnuAW.js +0 -1
  397. package/dist/assets/ntriples-Dsyl_sOF.js +0 -1
  398. package/dist/assets/octave-CI5RGMPa.js +0 -1
  399. package/dist/assets/oz-D01pKAWx.js +0 -1
  400. package/dist/assets/packet-7NZHBO7P-Btbo_lPa.js +0 -1
  401. package/dist/assets/panel-accordion-state-DaMmC7UV.js +0 -1
  402. package/dist/assets/panels-B2LHXcJf.js +0 -4
  403. package/dist/assets/pascal-DGXfnIFD.js +0 -1
  404. package/dist/assets/perl-gZ7qIkF-.js +0 -1
  405. package/dist/assets/pie-RZYD4A2V-DHlhKt-c.js +0 -1
  406. package/dist/assets/pig-Cb90ayl-.js +0 -1
  407. package/dist/assets/powershell-_YxddSL3.js +0 -1
  408. package/dist/assets/properties-sU50dmvt.js +0 -1
  409. package/dist/assets/protobuf-DFdF-yfo.js +0 -1
  410. package/dist/assets/pug-DwUB-C24.js +0 -1
  411. package/dist/assets/puppet-DtKzwiZ6.js +0 -1
  412. package/dist/assets/python-BMLOKYmk.js +0 -1
  413. package/dist/assets/q-BF1zXMdP.js +0 -1
  414. package/dist/assets/r-BQiKhVSI.js +0 -1
  415. package/dist/assets/radar-I7S5WNFK-DZTiwd45.js +0 -1
  416. package/dist/assets/railroad-3IZDKUUU-DxAKHi3X.js +0 -1
  417. package/dist/assets/railroad-abnf-AHOZXSZD-DgPW-bTs.js +0 -1
  418. package/dist/assets/railroad-ebnf-EBAXGLYW-6hsaKhfa.js +0 -1
  419. package/dist/assets/railroad-peg-LSFZ7HO6-Sj3gnwID.js +0 -1
  420. package/dist/assets/rpm-v7UTuaHo.js +0 -1
  421. package/dist/assets/ruby-Cw43FpG3.js +0 -1
  422. package/dist/assets/sas-BIKscqlp.js +0 -1
  423. package/dist/assets/scheme-CGic3hSV.js +0 -1
  424. package/dist/assets/session-panel-CidCOM4_.js +0 -1
  425. package/dist/assets/shell-DAh545tm.js +0 -1
  426. package/dist/assets/sieve-bGkng63-.js +0 -1
  427. package/dist/assets/smalltalk-fIw53lm8.js +0 -1
  428. package/dist/assets/sparql-CHbJrAY_.js +0 -1
  429. package/dist/assets/spec-NeCHOv2Z.js +0 -1
  430. package/dist/assets/stateDiagram-v2-UEYNNEHI-DVggkZEP.js +0 -1
  431. package/dist/assets/stylus-3Q5WfXqT.js +0 -1
  432. package/dist/assets/swift-MKxc2knl.js +0 -1
  433. package/dist/assets/swimlanesDiagram-ULZ7WXOC-Dl8Izbnv.js +0 -8
  434. package/dist/assets/tcl-D3fKhQc_.js +0 -1
  435. package/dist/assets/textile-Bi_LEJQ3.js +0 -1
  436. package/dist/assets/toml-Dt-PBqwt.js +0 -1
  437. package/dist/assets/treeView-QDETBFTQ-DI-AuAry.js +0 -1
  438. package/dist/assets/treemap-6X3UGDF4-BikstUU5.js +0 -1
  439. package/dist/assets/troff-BSU-rxoD.js +0 -1
  440. package/dist/assets/ttcn-BmLjonVM.js +0 -1
  441. package/dist/assets/ttcn-cfg-TPTcP0Eh.js +0 -1
  442. package/dist/assets/turtle-HafmShQq.js +0 -1
  443. package/dist/assets/vb-CUif5uGR.js +0 -1
  444. package/dist/assets/vbscript-DWVPFl59.js +0 -1
  445. package/dist/assets/velocity-BJl8UzB4.js +0 -1
  446. package/dist/assets/verilog-B4LUPYXy.js +0 -1
  447. package/dist/assets/vhdl-C91h3ipk.js +0 -1
  448. package/dist/assets/wardley-OPB4EBWU-CeBjkYYY.js +0 -1
  449. package/dist/assets/webidl-DOay1zbU.js +0 -1
  450. package/dist/assets/xquery-Cez7jD_4.js +0 -1
  451. package/dist/assets/yacas-CSQEXB_S.js +0 -1
  452. package/dist/assets/z80-CJbYj7Wr.js +0 -1
  453. package/src/hooks/__tests__/useDataSourceDiscovery.test.ts +0 -80
  454. /package/dist/assets/{ImageComparisonComponent-BcnwhFjf.js → ImageComparisonComponent-f3_KuPvA.js} +0 -0
  455. /package/dist/assets/{Inputs-DrAa-p6i.js → Inputs-S6F4fq1S.js} +0 -0
  456. /package/dist/assets/{Plot-93LEWfvh.js → Plot-BKmsCw4V.js} +0 -0
  457. /package/dist/assets/{apl-CPlG1HX3.js → apl-HjCOpvY9.js} +0 -0
  458. /package/dist/assets/{asciiarmor-DV_pcocJ.js → asciiarmor-CZUdQ8YG.js} +0 -0
  459. /package/dist/assets/{asn1-DPxWcGvG.js → asn1-D9fbSxQp.js} +0 -0
  460. /package/dist/assets/{asterisk-1BK_fEUT.js → asterisk-GbGHf9GU.js} +0 -0
  461. /package/dist/assets/{brainfuck-CGDdBVNO.js → brainfuck-DoACnXtY.js} +0 -0
  462. /package/dist/assets/{chunk-KEIR6QF5-Dy1GNnFZ.js → chunk-KEIR6QF5-DALP8ow3.js} +0 -0
  463. /package/dist/assets/{chunk-Y2CYZVJY-Ci6ix4_L.js → chunk-Y2CYZVJY-BLNiTciS.js} +0 -0
  464. /package/dist/assets/{clear-button-D_bGby_-.js → clear-button-ChZ5WLVn.js} +0 -0
  465. /package/dist/assets/{click-outside-container-Ble4snjv.js → click-outside-container-B_JD95Fi.js} +0 -0
  466. /package/dist/assets/{clike-D91DrsBh.js → clike-BvT_OTqG.js} +0 -0
  467. /package/dist/assets/{clojure-B0eb_-2q.js → clojure-DObunWgq.js} +0 -0
  468. /package/dist/assets/{cmake-COzUvjiS.js → cmake-Bn1dmbG8.js} +0 -0
  469. /package/dist/assets/{cobol-DW4FSnmb.js → cobol-CJ0xj-s7.js} +0 -0
  470. /package/dist/assets/{coffeescript-CommR2mv.js → coffeescript-DSHpWjh8.js} +0 -0
  471. /package/dist/assets/{common-keywords-CL5lDC0w.js → common-keywords-DpBQRN1C.js} +0 -0
  472. /package/dist/assets/{commonlisp-FR_N9RJL.js → commonlisp-C8BmLRoV.js} +0 -0
  473. /package/dist/assets/{crystal-CAN7bz25.js → crystal-Ca8nJT--.js} +0 -0
  474. /package/dist/assets/{css-DmLg8a0m.js → css-CY56PGqI.js} +0 -0
  475. /package/dist/assets/{cypher-BzSJn05x.js → cypher-DkMgpwTD.js} +0 -0
  476. /package/dist/assets/{cytoscape.esm-DMX0DoYf.js → cytoscape.esm-ohuTJsWI.js} +0 -0
  477. /package/dist/assets/{d-UpmnByGo.js → d-De6gURe0.js} +0 -0
  478. /package/dist/assets/{diff-DRpitNo9.js → diff-D9jknSNL.js} +0 -0
  479. /package/dist/assets/{dist-CjgCY_Ws.js → dist-B8OryoSI.js} +0 -0
  480. /package/dist/assets/{dist-DcguuZEe.js → dist-B_Q1ayL4.js} +0 -0
  481. /package/dist/assets/{dist-BY5C0xw-.js → dist-BdgY02GB.js} +0 -0
  482. /package/dist/assets/{dist-5zzK1Bpl.js → dist-BpyRMlx3.js} +0 -0
  483. /package/dist/assets/{dist-Bp45OWJJ.js → dist-BvDn6jZn.js} +0 -0
  484. /package/dist/assets/{dist-CSEj3YUH.js → dist-C1_zNuc7.js} +0 -0
  485. /package/dist/assets/{dist-CYcHr3tv.js → dist-C3M1h1bY.js} +0 -0
  486. /package/dist/assets/{dist-iZqQ8eEZ.js → dist-CiELQ2ik.js} +0 -0
  487. /package/dist/assets/{dist-Op2xySIC.js → dist-CnESRnx2.js} +0 -0
  488. /package/dist/assets/{dist-SgSQKL07.js → dist-Cnb7x5X_.js} +0 -0
  489. /package/dist/assets/{dist-CqO2FBHV.js → dist-CtsSPT78.js} +0 -0
  490. /package/dist/assets/{dist-BQMAD-re.js → dist-DDuxOj5E.js} +0 -0
  491. /package/dist/assets/{dist-C3YC038-.js → dist-DXl-iyI_.js} +0 -0
  492. /package/dist/assets/{dist-VHnyClcl.js → dist-DcwGajoh.js} +0 -0
  493. /package/dist/assets/{dist-ChJa98Av.js → dist-M9OI1ywz.js} +0 -0
  494. /package/dist/assets/{dist-BTX2QySO.js → dist-oc6kOhWh.js} +0 -0
  495. /package/dist/assets/{dist-AhQW5KN1.js → dist-rcsCwDst.js} +0 -0
  496. /package/dist/assets/{dtd-CQV9N2ok.js → dtd-B5FJ4BXV.js} +0 -0
  497. /package/dist/assets/{duckdb-keywords-CKBoTxEb.js → duckdb-keywords-DrrKcwLz.js} +0 -0
  498. /package/dist/assets/{dylan-Bp98yT5y.js → dylan-zZheNs86.js} +0 -0
  499. /package/dist/assets/{ebnf-CviyCkP7.js → ebnf-DuKzoTsP.js} +0 -0
  500. /package/dist/assets/{ecl-BgtQ3zu5.js → ecl-BcK76Ow3.js} +0 -0
  501. /package/dist/assets/{eiffel-Cu14O7Gi.js → eiffel-KaaY88la.js} +0 -0
  502. /package/dist/assets/{elm-Dp1dn40k.js → elm-B7-LHWcm.js} +0 -0
  503. /package/dist/assets/{erlang-DdogJjdp.js → erlang-DaphDTvj.js} +0 -0
  504. /package/dist/assets/{esm-DbAcs2Px.js → esm-BKF5e2-i.js} +0 -0
  505. /package/dist/assets/{fcl-DjfeL5F6.js → fcl-DopXl_Cb.js} +0 -0
  506. /package/dist/assets/{forth-Dd0r86IP.js → forth-BKlt87ew.js} +0 -0
  507. /package/dist/assets/{fortran-4qvtlW4z.js → fortran-DDZOpuZf.js} +0 -0
  508. /package/dist/assets/{gallery-page-CtBVFIhS.js → gallery-page-4_c4sSjL.js} +0 -0
  509. /package/dist/assets/{gas-DqwqZHXy.js → gas-CDn7Y-Gk.js} +0 -0
  510. /package/dist/assets/{gherkin-DMxJEDh5.js → gherkin-eZ5FXLoA.js} +0 -0
  511. /package/dist/assets/{github-6F3RzPv3.js → github-CE-ZvKrv.js} +0 -0
  512. /package/dist/assets/{groovy-DA_MxBua.js → groovy-BwhPb7Fz.js} +0 -0
  513. /package/dist/assets/{haskell-B_hi8VEK.js → haskell-Dnk7SiND.js} +0 -0
  514. /package/dist/assets/{haxe-D-I6YeRN.js → haxe-lllox-eQ.js} +0 -0
  515. /package/dist/assets/{http-VleqgIZJ.js → http-BxcKXOao.js} +0 -0
  516. /package/dist/assets/{idl-CteRrHSs.js → idl-DgcPYEkx.js} +0 -0
  517. /package/dist/assets/{javascript-Cq9DsvSW.js → javascript-COkX3Xca.js} +0 -0
  518. /package/dist/assets/{julia-bHGj6eLp.js → julia-D-oyKrif.js} +0 -0
  519. /package/dist/assets/{katex-B9FkzyvX.js → katex-DX0AbnS9.js} +0 -0
  520. /package/dist/assets/{kiosk-mode-B8UhlOLw.js → kiosk-mode-CNguD0K4.js} +0 -0
  521. /package/dist/assets/{links-STGde2qx.js → links-CWv16njv.js} +0 -0
  522. /package/dist/assets/{livescript-C72YlTeO.js → livescript-D_iKnN6P.js} +0 -0
  523. /package/dist/assets/{loro_wasm_bg-DIEeF9jI.js → loro_wasm_bg-wiZiHqmd.js} +0 -0
  524. /package/dist/assets/{lua-DAtJrHXr.js → lua-DvA1dcWk.js} +0 -0
  525. /package/dist/assets/{marimo-icons-CW8-Txe-.js → marimo-icons-BT3Q9hP-.js} +0 -0
  526. /package/dist/assets/{mathematica-DGp7b8Lx.js → mathematica-BsU_wLgp.js} +0 -0
  527. /package/dist/assets/{mbox-C35KjfEV.js → mbox-C0XhbFpn.js} +0 -0
  528. /package/dist/assets/{mirc-BRCHEPv1.js → mirc-CHTyPhxQ.js} +0 -0
  529. /package/dist/assets/{mllike-D7ajla-U.js → mllike-CUPiTPoj.js} +0 -0
  530. /package/dist/assets/{modelica-0RGVL4ie.js → modelica-CY01YUSk.js} +0 -0
  531. /package/dist/assets/{mscgen-C7Ohs4Tl.js → mscgen-DrdJ4BfA.js} +0 -0
  532. /package/dist/assets/{mumps-Cgag5Xef.js → mumps-oDd7O1nq.js} +0 -0
  533. /package/dist/assets/{nginx-D7OKXoUe.js → nginx-BFZZWp0k.js} +0 -0
  534. /package/dist/assets/{node-sql-parser-DE2GpgS7.js → node-sql-parser-BAQ3SN57.js} +0 -0
  535. /package/dist/assets/{ntriples-oQv5c69K.js → ntriples-Kz6Omt8T.js} +0 -0
  536. /package/dist/assets/{octave-BMTXs4lo.js → octave-D4G4nAd-.js} +0 -0
  537. /package/dist/assets/{oz-CuHYwo8r.js → oz-BMPClN8a.js} +0 -0
  538. /package/dist/assets/{pascal-eFKoVV2p.js → pascal-PjzHq8gx.js} +0 -0
  539. /package/dist/assets/{perl-B1OqOW8w.js → perl-BJehkHc4.js} +0 -0
  540. /package/dist/assets/{pig-gIrBDx27.js → pig-BErUKXIE.js} +0 -0
  541. /package/dist/assets/{powershell-3fQF2XND.js → powershell-C9VPAjfT.js} +0 -0
  542. /package/dist/assets/{properties-D4HHpZmU.js → properties-C9_sS9KX.js} +0 -0
  543. /package/dist/assets/{protobuf-DFSTKR0L.js → protobuf-CTL_9hGv.js} +0 -0
  544. /package/dist/assets/{puppet-BAISgXk9.js → puppet-DiwkFvYr.js} +0 -0
  545. /package/dist/assets/{python-mPctBCbA.js → python-B6qWXHOF.js} +0 -0
  546. /package/dist/assets/{q-CYeV5Dbb.js → q-DK2HS4ce.js} +0 -0
  547. /package/dist/assets/{r-Ds4UrjIV.js → r-DaU8ID7q.js} +0 -0
  548. /package/dist/assets/{rough.esm-CR3HSVpq.js → rough.esm-DsKVbNkz.js} +0 -0
  549. /package/dist/assets/{rpm-DV5-r6dM.js → rpm-B1zWd_-L.js} +0 -0
  550. /package/dist/assets/{ruby-B9qrycrI.js → ruby-e8Zeo08a.js} +0 -0
  551. /package/dist/assets/{runs-B8nVipXz.js → runs-0Fl_whti.js} +0 -0
  552. /package/dist/assets/{sas-Cd7L1ZOe.js → sas-CtNe7N_s.js} +0 -0
  553. /package/dist/assets/{scheme-L6Kva-Kc.js → scheme-D7VUNgy0.js} +0 -0
  554. /package/dist/assets/{secrets-panel-CVQIJOsr.js → secrets-panel-C51QhQhQ.js} +0 -0
  555. /package/dist/assets/{shell-Ck42V1Kn.js → shell-95QiTNIY.js} +0 -0
  556. /package/dist/assets/{sieve-DfSJcUfS.js → sieve-4wk3Woa7.js} +0 -0
  557. /package/dist/assets/{simple-mode-CfoR0Lvg.js → simple-mode-C1B3ue4E.js} +0 -0
  558. /package/dist/assets/{smalltalk-CT418Iph.js → smalltalk-BFPyGpl7.js} +0 -0
  559. /package/dist/assets/{solr-CDPrSrj5.js → solr-BCnpA4mK.js} +0 -0
  560. /package/dist/assets/{sparql-BlJ_cLEt.js → sparql-BMyoR-t0.js} +0 -0
  561. /package/dist/assets/{spreadsheet-BsJYzkOI.js → spreadsheet-C39QEIvH.js} +0 -0
  562. /package/dist/assets/{sql-F2Gt8FSJ.js → sql-CE9Btgz4.js} +0 -0
  563. /package/dist/assets/{stylus-92qIiGm1.js → stylus-BbMWgEUg.js} +0 -0
  564. /package/dist/assets/{swift-gZzicbJu.js → swift-BCakwsWN.js} +0 -0
  565. /package/dist/assets/{swiper-component-LOm8fzBm.js → swiper-component-DpFUDvyR.js} +0 -0
  566. /package/dist/assets/{tcl-CtgoBYkk.js → tcl-Dupz7YXC.js} +0 -0
  567. /package/dist/assets/{terminal-Bo6pnmSU.js → terminal-RAduwztq.js} +0 -0
  568. /package/dist/assets/{textile-Du3RzJ2D.js → textile-CMQNVB0J.js} +0 -0
  569. /package/dist/assets/{tiddlywiki-BiVbsin5.js → tiddlywiki-CIp8hgce.js} +0 -0
  570. /package/dist/assets/{tiki-BjQr6gnj.js → tiki-C22wqq7_.js} +0 -0
  571. /package/dist/assets/{toml-HcF44TVB.js → toml-CDlujHqn.js} +0 -0
  572. /package/dist/assets/{troff-xbwT4huN.js → troff-Dxr_rPl0.js} +0 -0
  573. /package/dist/assets/{ttcn-cfg-jWDg1i50.js → ttcn-cfg-_MoagO29.js} +0 -0
  574. /package/dist/assets/{ttcn-phKysj_0.js → ttcn-iRE0hZ1i.js} +0 -0
  575. /package/dist/assets/{turtle-CPC48wcy.js → turtle-C00vzWJK.js} +0 -0
  576. /package/dist/assets/{types-C7hjolXC.js → types-l38AsXoI.js} +0 -0
  577. /package/dist/assets/{useInterval-CTStcSBb.js → useInterval-WeprorQN.js} +0 -0
  578. /package/dist/assets/{vb-BTubZ2rB.js → vb-CkVClY4-.js} +0 -0
  579. /package/dist/assets/{vbscript-B52mDFWM.js → vbscript-BAyqwxih.js} +0 -0
  580. /package/dist/assets/{velocity-BO3M1iFD.js → velocity-DizPkX9R.js} +0 -0
  581. /package/dist/assets/{verilog-CBz90JJu.js → verilog-BHLL_Z-1.js} +0 -0
  582. /package/dist/assets/{vhdl-CeQ1lGlV.js → vhdl-kw8S8KSM.js} +0 -0
  583. /package/dist/assets/{web-vitals-BaWpTOd5.js → web-vitals-DEQqQ7mh.js} +0 -0
  584. /package/dist/assets/{webidl-CRtF5pmu.js → webidl-BArrMnhe.js} +0 -0
  585. /package/dist/assets/{ws-CNqquaud.js → ws-B3l5rS71.js} +0 -0
  586. /package/dist/assets/{xquery-CFnbrHav.js → xquery-BVt_izxN.js} +0 -0
  587. /package/dist/assets/{yacas-KIC_JO6M.js → yacas-BFgb66eo.js} +0 -0
  588. /package/dist/assets/{z80-kGpw5_me.js → z80-CLywz-dK.js} +0 -0
@@ -1,27 +1,27 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./loro_wasm_bg-Cei5H7n0.js","./loro_wasm_bg-DIEeF9jI.js","./chunk-C4rtOYze.js"])))=>i.map(i=>d[i]);
2
- var Uf=Object.defineProperty;var hi=te=>{throw TypeError(te)};var jf=(te,H,be)=>H in te?Uf(te,H,{enumerable:!0,configurable:!0,writable:!0,value:be}):te[H]=be;var g=(te,H,be)=>jf(te,typeof H!="symbol"?H+"":H,be),Pf=(te,H,be)=>H.has(te)||hi("Cannot "+be);var gi=(te,H,be)=>(Pf(te,H,"read from private field"),be?be.call(te):H.get(te)),yi=(te,H,be)=>H.has(te)?hi("Cannot add the same private member more than once"):H instanceof WeakSet?H.add(te):H.set(te,be);import{o as bi}from"./chunk-C4rtOYze.js";import{c as Df,d as wi,f as Fr,i as J,l as jn,n as se,p as ut,s as Pn,u as q}from"./useEvent-GCVIknuR.js";import{t as Mf}from"./react-C60yClUi.js";import{$n as vi,$t as Ff,An as xi,B as Ei,Bi as Rf,Dn as Bf,E as Dn,F as Gf,H as Jf,Ht as Vf,K as Si,Li as $f,Ln as Rr,Mi as Wf,Mn as qf,Ni as Hf,Nn as Q,Nt as zf,On as Yf,Pn as Kf,Pt as ki,Ri as Ci,Rn as Br,Rr as Xf,St as Bt,Ti as Gr,Tn as Qf,Tt as Zf,U as Ti,V as Mn,W as Ni,Wt as Jr,Xn as em,Xt as Ii,Yn as Fn,Yr as Vr,Yt as $r,Zn as tm,Zt as Ai,_n as Rn,_r as Li,_t as nm,bt as rm,ct as Oi,dr as am,ea as _i,ei as Wr,en as om,fa as Bn,fn as im,gi as sm,gr as lm,gt as cm,hi as um,hr as Ui,ht as dm,i as ji,ir as fm,jn as mm,kn as pm,l as Pi,lt as Gn,m as xt,ma as qr,mr as nt,nn as hm,nr as gm,or as ym,pr as Hr,ra as bm,rn as wm,rr as vm,sr as xm,tn as Em,tr as Di,u as Mi,ut as Sm,vr as km,vt as zr,wi as Cm,xa as Tm,xn as Nm,xt as Im,y as rt,yt as dt,__tla as Am}from"./cells-BvgwUKB9.js";import{L as Fi,N as Lm,P as Yr,S as Om,T as Ri,k as _m,w as Um,z as jm}from"./zod-BIDX-mZr.js";import{t as ve}from"./compiler-runtime-DnimoHo0.js";import{t as Pm}from"./debounce-DhnxH9Rh.js";import{C as Dm,f as Mm,m as Fm,p as Rm,t as Bm,v as Gm,w as Jm}from"./ai-model-dropdown-Wvw4ot3v.js";import{_ as Vm,c as Bi,g as $e,m as Kr,t as $m}from"./useEventListener-DpNnLPuE.js";import{t as Gt}from"./invariant-BUdrueMv.js";import{E as Xr,_ as Gi,c as Wm,g as Ji,l as Vi,v as $i}from"./utils-C8Yt16Y7.js";import{E as qm,N as Hm,O as zm,S as Wi,T as Jt,m as Ym,o as Km,r as qi,v as Et}from"./config-DFK5eCC3.js";import{n as Xm,t as Qm}from"./switch-ulnbZFaI.js";import{c as Zm,n as ep,r as tp}from"./readonly-python-code-BCOkadQf.js";import{t as np}from"./ErrorBoundary-B392qglD.js";import{t as at}from"./cn-DCUzRj2J.js";import{t as rp}from"./jsx-runtime-3wZU7vFS.js";import{l as ap,r as op,t as ip}from"./popover-B96fOqfH.js";import{Q as sp,Z as lp,__tla as cp}from"./JsonOutput-C5g_bqiZ.js";import{t as Qr}from"./label-BOFHwHn7.js";import{n as up}from"./download-B8NwKEtr.js";import{t as Jn}from"./tooltip-C9LWGQ7Y.js";import{r as Zr,t as ft}from"./button-W__YVea9.js";import{At as dp,Bt as Vn,Ct as fp,Dt as mp,E as pp,Et as Hi,Ft as hp,Gt as Vt,H as $n,Ht as gp,I as yp,P as bp,Pt as wp,Qt as We,Rt as ea,St as vp,Tt as He,Ut as St,V as xp,Wt as ta,Yt as Ep,Zt as ce,_ as Sp,at as V,dt as $t,en as Wt,gt as kp,ht as Cp,lt as Tp,m as Np,ot as Ip,qt as mt,rn as Wn,st as R,ut as ze,w as Ap,xt as Lp}from"./dist-CeF1Em5L.js";import{C as Op,E as _p,I as Up,O as jp,S as Pp,a as Dp,c as Mp,n as na,r as Fp,w as Rp}from"./dist-DanVWUek.js";import{o as zi}from"./arrays-UzzAzxsG.js";import{n as Bp}from"./once-DNBWPkeJ.js";import{t as ra}from"./createReducer-C1MhlItJ.js";import{a as Gp,c as Jp,f as qn,h as Vp,i as $p,l as qt,n as Yi,o as Wp,t as qp}from"./dist-Di6rD-vJ.js";import{r as Ki}from"./strings-DmKKoXrM.js";import{r as Hn,t as Xi}from"./requests-B9zEd_sW.js";import{t as Hp}from"./createLucideIcon-B8oVfJNp.js";import{r as Qi,t as zp,__tla as Yp}from"./layout-C5In1pVG.js";import{t as Kp}from"./x-4y-nyVDU.js";import{t as Xp}from"./circle-check-CfLEHvyJ.js";import{A as Qp,E as Zp,F as eh,H as th,L as nh,U as rh,i as Zi,j as es,l as ah,n as oh,o as ts,p as ih,s as sh,z as lh}from"./add-cell-with-ai--yrESuLb.js";import{t as ch}from"./database-zap-n8PGHE18.js";import{r as uh,t as dh}from"./file-icons-D39zbjsS.js";import{t as fh}from"./components-CozWCL5N.js";import{n as mh}from"./spinner-Cj3eM5bt.js";import{n as aa,t as ns}from"./useDeleteCell-Ctnxl8AT.js";import{t as rs}from"./save-DeHQ9WTn.js";import{Y as ph,Z as as}from"./input-BN98e517.js";import{t as hh}from"./sparkles-DwqcWrJl.js";import{t as gh}from"./badge-D28DMr4y.js";import{t as yh}from"./preload-helper-BPPi7vOr.js";import{a as bh}from"./dist-Bm9PT5P9.js";import{t as kt}from"./use-toast-DjpWVza6.js";import{n as Ze}from"./paths-D5zczhUD.js";import{t as wh}from"./session-D-SddyN0.js";import{r as vh}from"./useTheme-CwCyrmDf.js";import{n as os}from"./copy-HCSOwOwk.js";import{k as xh}from"./usePress-Bl6X9B5M.js";import{t as Eh}from"./context-BJMN4ll3.js";import{a as Sh}from"./useRunCells-DjQN3XYP.js";import{c as is,i as ss,n as ls,r as kh}from"./dialog-WU4x2UpK.js";import{t as cs}from"./useHotkey-cR1R36p-.js";import{i as zn}from"./numbers-DtSpUdpO.js";import{n as us}from"./ImperativeModal-Dxj31V4A.js";import{a as Ch}from"./errors-D93OkQw8.js";import{t as K}from"./extends-BiFDv3jB.js";import{t as Ht}from"./objectWithoutPropertiesLoose-DfWeGRFv.js";import{t as Th}from"./kbd-PEowR7op.js";import{a as oa}from"./useInstallPackage-D58nBaNf.js";import{a as Nh,n as ds}from"./state-m2zUPztG.js";import{a as Ih,o as Ah}from"./cell-link-WDIIwzUn.js";import{r as fs}from"./html-to-image-DKEUbBwc.js";import{a as Lh}from"./focus-BArgHYf8.js";import{n as Oh}from"./useAsyncData-BcvSvTUt.js";import{a as _h,o as ms,r as Uh,s as ps,t as jh}from"./command-D5LtSvbN.js";import{a as hs}from"./renderShortcut-C6HKXhBl.js";import{n as Ph,t as Dh}from"./icons-BwSNDWAP.js";import{n as Ct}from"./esm-RBKN8Dn2.js";import{t as gs}from"./dist-yM9CbJ9j.js";import{t as Mh}from"./requests-CWbKU3x_.js";import{n as Fh}from"./formatting-CjSzbmdF.js";import{t as Rh}from"./useSplitCell-BG8Zd4lw.js";import{t as ia}from"./state-BFx9-sFK.js";import{n as Bh,r as Gh,t as ys}from"./panel-accordion-state-DaMmC7UV.js";import{co as Jh,do as sa,fo as Vh,ft as $h,go as Tt,ho as bs,lo as la,mo as ws,oo as Wh,po as qh,so as vs,uo as xs,__tla as Hh}from"./loro_wasm_bg-DIEeF9jI.js";import{t as zh}from"./ws-CNqquaud.js";import{t as Es}from"./Inputs-DrAa-p6i.js";import{r as Yh,t as Kh}from"./skeleton-CHVfqr51.js";let ca,zt,Yn,Kn,Xn,ua,xe,Ss,ks,Cs,Ts,da,fa,pt,Ns,Is,As,Yt,Qn,Ls,Xh=Promise.all([(()=>{try{return Am}catch{}})(),(()=>{try{return cp}catch{}})(),(()=>{try{return Yp}catch{}})(),(()=>{try{return Hh}catch{}})()]).then(async()=>{var On,ui,Se,ke,Ce,Te,Ne,Ie,Ae,Le,Oe,_e,Ue,je,Pe,De,Me,Fe,Re,Be,Ge;var te=Hp("file-pen",[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]]);const H={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"};var be=300;const It=Vt.define({combine:t=>Wn(t,{onError:console.error,inputDebounceTime:be,keymaps:H},{onError:(e,n)=>e&&n,inputDebounceTime:(e,n)=>e&&n,keymaps:(e,n)=>e&&n})}),ot=ce.define(),it=We.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(t,e){for(let n of e.effects)if(n.is(ot))return n.value;return t}}),At=ce.define(),Lt=ce.define(),pa=We.define({create(){return{shouldFocus:!1,inputValue:""}},update(t,e){let n=t;for(let r of e.effects)r.is(At)&&(n={...n,inputValue:r.value}),r.is(Lt)&&(n={...n,shouldFocus:r.value});return n}}),Kt=ce.define(),Ot=We.define({create(){return null},update(t,e){for(let n of e.effects)if(n.is(Kt))return n.value;return t}}),ht=ce.define(),ha=We.define({create(){return!1},update(t,e){for(let n of e.effects)if(n.is(ht))return n.value;return t}});var Os=1;const ga=t=>{let{state:e}=t,n=e.selection.main;if(n.empty)return!1;let r=e.doc,a=r.lineAt(n.from),o=r.lineAt(n.to);if(e.sliceDoc(a.from,o.to).trim().length<Os)return!1;let i=Math.max(1,Math.min(a.number,r.lines)),s=Math.max(1,Math.min(o.number,r.lines));return t.dispatch({effects:[ot.of({show:!0,lineFrom:i,lineTo:s}),Lt.of(!0),At.of("")],selection:St.cursor(a.from)}),!0},ya=t=>t.state.field(Ot)?(t.dispatch({effects:[Kt.of(null),ot.of({show:!1,lineFrom:0,lineTo:0}),Lt.of(!1),At.of(""),ht.of(!1)]}),!0):!1,ba=t=>{let e=t.state.field(Ot);return e?(t.dispatch({changes:{from:e.from,to:e.to,insert:e.oldCode},effects:[Kt.of(null),ot.of({show:!1,lineFrom:0,lineTo:0}),Lt.of(!1),At.of(""),ht.of(!1)]}),!0):!1};var Zn={mac:"\u2318",windows:"\u229E Win",default:"Ctrl"};function _s(){return navigator.platform.startsWith("Mac")?Zn.mac:navigator.platform.startsWith("Win")?Zn.windows:Zn.default}function er(t){return t.replace("Mod",_s()).replace("-"," ").toUpperCase()}function pe(t,e){let n=document.createElement(t);return n.className=e,n}function Us(t,e,n=void 0){let r=()=>{};return(...a)=>(r(),new Promise((o,i)=>{let s=setTimeout(()=>o(t(...a)),e);r=()=>{clearTimeout(s),n!==void 0&&i(n)}}))}var Xt=We.define({create(){return{suggestion:null}},update(t,e){let n=e.effects.find(r=>r.is(Qt));return!e.docChanged&&!n&&!e.selection?t:n&&e.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Qt=ce.define();function js(t,e){let n=t.state.selection.main.head,r=[],a=V.widget({widget:new Ps(e),side:1});return r.push(a.range(n)),V.set(r)}var Ps=class extends $t{constructor(e){super();g(this,"suggestion");this.suggestion=e}toDOM(){let e=document.createElement("span");return e.style.opacity="0.4",e.className="cm-inline-suggestion",e.textContent=this.suggestion,e.setAttribute("role","suggestion"),e.setAttribute("aria-label",`Suggestion: ${this.suggestion}`),e}get lineBreaks(){return this.suggestion.split(`
3
- `).length-1}},Ds=class{constructor(t){g(this,"cache",new Map);g(this,"timeout");this.timeout=t}get(t){let e=this.cache.get(t);return e?Date.now()-e.timestamp>this.timeout?(this.cache.delete(t),null):e.result:null}set(t,e){this.cache.set(t,{result:e,timestamp:Date.now()})}},Ms=(t,e)=>ze.fromClass(class{constructor(){g(this,"abortController",null);g(this,"cache");this.cache=new Ds(e.cacheTimeout??1e3)}async update(n){var i,s,c,l,u;if(!n.docChanged||((s=(i=e.events)==null?void 0:i.beforeSuggestionFetch)==null?void 0:s.call(i,n.view))===!1)return;(c=this.abortController)==null||c.abort(),this.abortController=new AbortController;let r=n.state.doc,a=r.toString(),o=this.cache.get(a);if(o){n.view.dispatch({effects:Qt.of({text:o,doc:r})});return}try{let d=await t(n.state,this.abortController.signal,n.view);if(this.abortController.signal.aborted||((u=(l=e.events)==null?void 0:l.shouldShowSuggestion)==null?void 0:u.call(l,n.view,d))===!1)return;this.cache.set(a,d),n.view.dispatch({effects:Qt.of({text:d,doc:r})})}catch(d){d instanceof Error&&d.name!=="AbortError"&&console.error("Suggestion fetch error:",d)}}destroy(){var n;(n=this.abortController)==null||n.abort()}}),Fs=ze.fromClass(class{constructor(){g(this,"decorations");this.decorations=V.none}update(t){var n;let e=(n=t.state.field(Xt))==null?void 0:n.suggestion;if(!e){this.decorations=V.none;return}this.decorations=js(t.view,e)}},{decorations:t=>t.decorations});function Rs(t,e,n,r){return{...t.changeByRange(a=>{if(a===t.selection.main)return{changes:{from:n,to:r,insert:e},range:St.cursor(n+e.length)};let o=r-n;return!a.empty||o&&t.sliceDoc(a.from-o,a.from)!==t.sliceDoc(n,r)?{range:a}:{changes:{from:a.from-o,to:a.from,insert:e},range:St.cursor(a.from-o+e.length)}}),userEvent:"input.complete"}}var Bs=t=>{var r,a,o;let e=(r=t.state.field(Xt))==null?void 0:r.suggestion;if(!e)return!1;let n=t.state.facet(tr);return t.dispatch({...Rs(t.state,e,t.state.selection.main.head,t.state.selection.main.head)}),(o=(a=n.events)==null?void 0:a.onSuggestionAccepted)==null||o.call(a,t,e),!0},wa=t=>{var r,a,o;let e=(r=t.state.field(Xt))==null?void 0:r.suggestion;if(!e)return!1;let n=t.state.facet(tr);return t.dispatch({effects:Qt.of({text:null,doc:t.state.doc})}),(o=(a=n.events)==null?void 0:a.onSuggestionRejected)==null||o.call(a,t,e),!0},Gs=He.of([{key:"Tab",run:Bs},{key:"Escape",run:wa}]),tr=Vt.define({combine:t=>t.at(-1)});function va(t){let{delay:e=500,includeKeymap:n=!0}=t,r=Us(t.fetchFn,e);return[Xt,tr.of(t),Ms(r,t),Fs,n?Gs:[]]}const Js=R.baseTheme({".cm-ai-input-container":{display:"flex",flexDirection:"column",gap:"4px",width:"min(calc(100% + 7px), 500px)",padding:"5px 5px",margin:"0 -6px",backgroundColor:"light-dark(rgb(241, 243, 245), rgb(40, 40, 40))"},".cm-ai-input":{display:"block",width:"100%",padding:"3px 8px",border:"2px solid rgb(51, 154, 240)",borderRadius:"5px",fontSize:"12px"},".cm-ai-help-info-button":{fontSize:"10px",paddingLeft:"10px",height:"18px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",display:"block",marginRight:"auto"},".cm-ai-help-info-button:hover":{color:"light-dark(rgb(89, 97, 105), rgb(190, 190, 190))"},".cm-ai-generate-button":{background:"#0E639C",border:"none",padding:"2px 6px",color:"#ffffff",cursor:"pointer",font:"inherit",borderRadius:"4px","&:hover":{backgroundColor:"#1177bb"}},".cm-line.cm-ai-selection, .cm-line.cm-ai-selection.cm-active-line":{backgroundColor:"light-dark(color-mix(in srgb, rgb(223, 227, 232) 50%, transparent), color-mix(in srgb, rgb(50, 50, 50) 50%, transparent)) !important"},".cm-line:has(.cm-new-code-line)":{backgroundColor:"light-dark(color-mix(in srgb, rgb(183, 235, 143) 50%, transparent), color-mix(in srgb, rgb(40, 100, 40) 50%, transparent)) !important"},".cm-old-code-container":{backgroundColor:"light-dark(rgb(255, 205, 205), rgb(100, 40, 40))",position:"relative",display:"flex",paddingTop:"0",width:"100%",alignItems:"center"},".cm-code-button":{position:"absolute",right:"5px",top:"50%",transform:"translateY(-50%)",background:"none",border:"none",cursor:"pointer",fontSize:"16px"},".cm-floating-buttons":{fontFamily:"sans-serif",position:"absolute",top:"-20px",left:"5px",display:"flex"},".cm-floating-button":{fontFamily:"sans-serif",padding:"2px 5px",fontSize:"10px",cursor:"pointer",fontWeight:"700"},".cm-floating-accept":{backgroundColor:"light-dark(rgb(55, 125, 34), rgb(40, 80, 25))",borderTopLeftRadius:"5px",borderBottomLeftRadius:"5px",color:"white",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".cm-floating-reject":{backgroundColor:"light-dark(rgb(220, 53, 69), rgb(180, 40, 50))",color:"white",borderTopRightRadius:"5px",borderBottomRightRadius:"5px",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".hotkey":{display:"inline-block",padding:"0 4px",borderRadius:"3px",backgroundColor:"rgba(255, 255, 255, 0.1)",fontSize:"90%"},".cm-ai-loading-indicator":{fontStyle:"italic",fontSize:"10px",paddingLeft:"12px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",opacity:"0",transition:"opacity 0.3s ease-in-out","&::after":{content:'""',display:"inline-block",animation:"ellipsis-pulse 1.5s steps(4, end) infinite"},"&:not(:empty)":{opacity:"1"}},".cm-ai-input:disabled":{opacity:"0.5"},"@keyframes ellipsis-pulse":{"0%":{content:"'.'"},"25%":{content:"'..'"},"50%":{content:"'...'"},"75%":{content:"''"}},".cm-ai-loading-container":{display:"flex",alignItems:"center",padding:"0 8px"},".cm-ai-cancel-button":{padding:"2px 8px",fontSize:"10px",borderRadius:"4px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",cursor:"pointer","&:hover":{background:"light-dark(rgb(223, 227, 232), rgb(50, 50, 50))"}},".hidden":{display:"none"}});function Vs(t){var s,c;let e=t.state.facet(It),n={...H,...e.keymaps},r=t.state.facet(Zt),a=pe("div","cm-ai-tooltip").appendChild(pe("div","cm-ai-tooltip-button")),o=a.appendChild(document.createElement("span"));o.textContent=`${r.label} `;let i=o.appendChild(document.createElement("span"));return i.className="hotkey",i.textContent=er(n.showInput),(s=a.querySelector("span"))==null||s.addEventListener("mousedown",l=>{l.stopPropagation(),l.button===0&&l.preventDefault()}),(c=a.querySelector("span"))==null||c.addEventListener("click",l=>{l.preventDefault(),ga(t)}),a}const Zt=Vt.define({combine(t){return Wn(t,{render:Vs,hideOnBlur:!1,label:"Edit with AI"})}}),$s=ze.fromClass((ui=class{constructor(t){g(this,"view");g(this,"suppress");g(this,"dom");g(this,"mousedown",()=>{this.suppress=!0});g(this,"mouseup",()=>{this.suppress=!1,this.display(this.view)});g(this,"scroll",()=>{this.display(this.view)});g(this,"windowScroll",()=>{this.display(this.view)});yi(this,On,t=>{var n;let e=t.state.selection.ranges.find(r=>!r.empty);if(e&&!this.suppress){let r=t.coordsAtPos(e.from),a=t.coordsAtPos(e.to);if(!r||!a)return;let o=t.dom.getBoundingClientRect(),i=(n=t.dom.parentElement)==null?void 0:n.getBoundingClientRect(),s=v=>v.top>=o.top&&v.top<=o.bottom&&v.left>=o.left&&v.left<=o.right,c=v=>!i||v.top>=i.top&&v.top<=i.bottom&&v.left>=i.left&&v.left<=i.right,l=s(r)||s(a),u=c(r)||c(a);if(!l||!u){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}this.dom.style.display="flex",this.dom.setAttribute("aria-hidden","false");let d=this.dom.getBoundingClientRect(),p=s(r)?r:a,f=o.right-d.width,m=Math.min(p.left,f),y=p.top-d.height,b=i?i.y:-1/0;y<b&&(y=a.bottom),this.dom.style.left=`${m}px`,this.dom.style.top=`${y}px`,requestAnimationFrame(()=>{this.dom&&this.dom.setAttribute("aria-hidden","false")})}else this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true")});this.view=t;let e=t.state.facet(Zt);this.suppress=!1,document.addEventListener("mousedown",this.mousedown),document.addEventListener("mouseup",this.mouseup),t.scrollDOM.addEventListener("scroll",this.scroll),window.addEventListener("scroll",this.windowScroll,!0);let n=e.render(t);t.dom.appendChild(n),this.dom=n}update(t){this.display(t.view)}docViewUpdate(t){this.display(t)}display(t){if(t.state.field(it).show){this.dom.style.display="none";return}if(t.state.facet(Zt).hideOnBlur&&!t.hasFocus){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}t.requestMeasure({read:gi(this,On)})}destroy(){document.removeEventListener("mousedown",this.mousedown),document.removeEventListener("mouseup",this.mouseup),this.view.scrollDOM.removeEventListener("scroll",this.scroll),window.removeEventListener("scroll",this.windowScroll,!0),this.dom.remove()}},On=new WeakMap,ui));var Ws=R.baseTheme({".cm-ai-tooltip-button":{userSelect:"none",fontFamily:"system-ui, -apple-system, sans-serif",position:"fixed",display:"flex",boxSizing:"border-box",padding:"2px 6px",borderRadius:"4px",fontSize:"12px",backgroundColor:"#0E639C",color:"#ffffff",border:"1px solid transparent",boxShadow:"0 2px 4px rgba(0,0,0,0.1)",zIndex:"999",transition:"opacity 0.5s","&[aria-hidden='true']":{opacity:"0"},"&[aria-hidden='false']":{opacity:"1"},"& > span":{pointerEvents:"auto",cursor:"pointer",display:"inline-block",padding:"2px"},"&:hover":{backgroundColor:"#1177bb"}}});function qs(){return[$s,Ws]}var Hs=class extends $t{constructor(e){super();g(this,"oldCode");this.oldCode=e}toDOM(e){let n=pe("div","cm-old-code-container");n.setAttribute("role","region"),n.setAttribute("aria-label","Previous code version");let r=pe("div","cm-old-code cm-line");r.textContent=this.oldCode;let a=pe("div","cm-floating-buttons"),o=e.state.facet(It),i={...H,...o.keymaps},s=pe("button","cm-floating-button cm-floating-accept");s.innerHTML=`<span class="hotkey">${er(i.acceptEdit)}</span> Accept`,s.setAttribute("aria-label","Accept changes"),s.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),e.focus(),ya(e)});let c=pe("button","cm-floating-button cm-floating-reject");return c.innerHTML=`<span class="hotkey">${er(i.rejectEdit)}</span> Reject`,c.setAttribute("aria-label","Reject changes"),c.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),e.focus(),ba(e)}),a.append(s,c),n.append(r,a),n}updateDOM(e,n){return!0}},zs=class extends $t{constructor(e){super();g(this,"complete");g(this,"abortController",null);g(this,"dom",null);g(this,"input",null);g(this,"loadingContainer",null);g(this,"helpInfo",null);g(this,"inputContainer",null);g(this,"form",null);g(this,"view",null);g(this,"onKeyDown",async e=>{e.key==="Enter"&&!e.shiftKey?(e.preventDefault(),await this.handleSubmit()):e.key==="Escape"&&this.onCancel()});g(this,"onCancel",()=>{this.cleanup();let e=this.view;e&&(e.dispatch({effects:[ot.of({show:!1,lineFrom:0,lineTo:0}),ht.of(!1)]}),e.focus())});g(this,"handleSubmit",async e=>{var m;let n=this.view;if(!n)return;let r=n.state.facet(It);e==null||e.stopPropagation();let a=n.state.field(it),{input:o}=this;if(!o)return;let i=o.value.trim();if(!a.show||!i)return;let s=n.state.doc.line(a.lineFrom),c=n.state.doc.line(a.lineTo),l=s.from,u=c.to,d=n.state.sliceDoc(l,u),p=n.state.sliceDoc(0,l),f=n.state.sliceDoc(u);this.abortController=new AbortController,n.dispatch({effects:ht.of(!0)}),this.toggleLoading(!0);try{let y=await this.complete({prompt:i,selection:d,codeBefore:p,codeAfter:f,editorView:n,signal:this.abortController.signal});if(!n.state.field(it).show)return;if(!y||typeof y!="string")throw Error("Invalid completion result");n.dispatch({changes:{from:l,to:u,insert:y},effects:[ot.of({show:!1,lineFrom:0,lineTo:0}),Kt.of({from:l,to:l+y.length,oldCode:d,newCode:y}),ht.of(!1)]})}catch(y){if(y instanceof DOMException&&y.name==="AbortError")return;(m=r.onError)==null||m.call(r,y)}finally{this.cleanup(),this.toggleLoading(!1),n.focus()}});this.complete=e}toDOM(e){if(this.dom)return this.dom;this.view=e;let n=e.state.field(pa),r=e.state.field(ha),a=pe("div","cm-ai-input-container");this.inputContainer=a,this.dom=a;let o=pe("form","cm-ai-input-form");this.form=o,o.setAttribute("role","search"),o.setAttribute("aria-label","AI editing instructions"),o.addEventListener("submit",b=>b.preventDefault());let i=pe("input","cm-ai-input");this.input=i,o.append(i),i.placeholder="Editing instructions...",i.setAttribute("aria-label","AI editing instructions"),i.setAttribute("autocomplete","off"),i.setAttribute("spellcheck","true"),i.value=n.inputValue;let s=pe("div","cm-ai-loading-container");this.loadingContainer=s;let c=pe("div","cm-ai-loading-indicator");c.setAttribute("role","status"),c.setAttribute("aria-live","polite"),c.textContent="Generating";let l=pe("button","cm-ai-cancel-button");l.textContent="Cancel",l.setAttribute("aria-label","Cancel code generation"),l.addEventListener("click",this.onCancel),s.append(l,c);let u=pe("div","cm-ai-help-info");this.helpInfo=u;let d=u.appendChild(document.createElement("button"));d.className="cm-ai-help-info-button",d.textContent="Esc to close",d.addEventListener("click",this.onCancel);let p=pe("button","cm-ai-generate-button");p.textContent="\u23CE Generate",p.setAttribute("aria-label","Generate code"),p.addEventListener("click",this.handleSubmit),this.toggleLoading(r),n.shouldFocus&&requestAnimationFrame(()=>{i.value=n.inputValue,i.focus(),e.dispatch({effects:Lt.of(!1)})}),f(i.value),i.addEventListener("input",y),i.addEventListener("keydown",this.onKeyDown);function f(b){u.replaceChildren(b?p:d)}let m="";function y(){e.dispatch({effects:At.of(i.value)});let b=i.value.trim();b!==m&&(m=b,f(b))}return a}toggleLoading(e){var n;this.inputContainer&&this.form&&this.loadingContainer&&this.helpInfo&&((n=this.inputContainer)==null||n.replaceChildren(this.form,e?this.loadingContainer:this.helpInfo))}updateDOM(e,n){return this.dom=e,this.input=e.querySelector(".cm-ai-input"),!0}cleanup(){var e,n,r;(e=this.abortController)==null||e.abort(),this.abortController=null,(n=this.dom)==null||n.remove(),(r=this.input)==null||r.remove(),this.dom=null,this.input=null}destroy(){this.cleanup()}};function Ys(t){if(!t.prompt)throw Error("prompt function is required");let e={...H,...t.keymaps};return[It.of(t),it,pa,Ot,ha,qs(),Js,He.of([{key:e.showInput,run:ga}]),mt.highest([He.of([{key:e.acceptEdit,run:ya},{key:e.rejectEdit,run:ba}])]),Ks,Xs,Qs,Zs]}const Ks=R.updateListener.of(t=>{let e=t.state.field(it);if(!e.show||!t.docChanged)return;let{lineFrom:n,lineTo:r}=e,a=!1;t.changes.iterChanges((o,i,s,c)=>{let l=t.state.doc.lineAt(o).number;if(l<n){let u=t.state.doc.lineAt(c).number-t.state.doc.lineAt(s).number;n+=u,r+=u,a=!0}else if(l<=r){let u=t.state.doc.lineAt(c).number-t.state.doc.lineAt(s).number;r+=u,a=!0}}),a&&t.view.dispatch({effects:[ot.of({show:!0,lineFrom:n,lineTo:r})]})}),Xs=R.decorations.of(t=>{let e=t.state.field(Ot);return e?V.set([V.mark({class:"cm-new-code-line"}).range(e.from,e.to)]):V.none}),Qs=R.decorations.compute([it],t=>{let e=t.field(it),n=t.facet(It),r=[];if(e.show){let a=e.lineFrom,o=e.lineTo;for(let i=a;i<=o;i++){let s=t.doc.line(i).from;r.push(V.line({class:"cm-ai-selection"}).range(s)),i===a&&r.push(V.widget({widget:new zs(n.prompt),side:-1}).range(s))}}return V.set(r)}),Zs=We.define({create(t){return V.none},update(t,e){let n=e.state.field(Ot);return n?V.set([V.widget({widget:new Hs(n.oldCode),block:!0}).range(n.from)]):V.none},provide:t=>R.decorations.from(t)});var el=ve(),N=bi(Mf(),1),nr=()=>({entries:new Map}),{valueAtom:xa,useActions:Ea}=ra(nr,{submit:(t,e)=>{let{cellIds:n,deleteCell:r,deleteManyCells:a,store:o}=e,i=o.get(rt),s=o.get(Fn),c=new Set(i.cellIds.inOrderIds.filter(d=>i.cellData[d].code.trim()==="")),l=new Map;for(let d of n){if(c.has(d)){l.set(d,{cellId:d,type:"simple"});continue}let p=i.cellRuntime[d],f=new Map;for(let y of Object.values(s)){let b=y.declaredBy.includes(d),v=y.usedBy.some(S=>!c.has(S));b&&v&&f.set(y.name,y.usedBy)}let m;p!=null&&p.runElapsedTimeMs&&p.runElapsedTimeMs>2e3&&(m=p.runElapsedTimeMs),f.size===0&&m===void 0?l.set(d,{cellId:d,type:"simple"}):l.set(d,{cellId:d,type:"expensive",executionDurationMs:m,defs:f})}let u=[...l.values()].every(d=>d.type==="simple");return l.size>0&&u?(l.size===1?r({cellId:[...l.values()][0].cellId}):a({cellIds:[...l.values()].map(d=>d.cellId)}),nr()):{...t,entries:l}},clear:()=>nr()});Yn=function(){let t=Fr(),{submit:e,clear:n}=Ea(),{entries:r}=q(xa),a=ns(),o=aa();return(0,N.useMemo)(()=>({submit:i=>{e({cellIds:i,deleteCell:a,deleteManyCells:o,store:t})},clear:n,get idle(){return r.size===0},get shouldConfirmDelete(){return r.size>1}}),[t,e,n,r,a,o])},Ls=function(t){let e=(0,el.c)(16),n=q(xa),r=Ea(),a=aa(),o;e[0]!==t||e[1]!==n.entries?(o=n.entries.get(t),e[0]=t,e[1]=n.entries,e[2]=o):o=e[2];let i=o;if(!i){let u;return e[3]===Symbol.for("react.memo_cache_sentinel")?(u={isPending:!1},e[3]=u):u=e[3],u}if(n.entries.size!==1){let u;return e[4]===i?u=e[5]:(u={isPending:!0,shouldConfirmDelete:!1,...i},e[4]=i,e[5]=u),u}let s;e[6]!==r||e[7]!==a||e[8]!==n.entries?(s=()=>{a({cellIds:[...n.entries.values()].map(tl)}),r.clear()},e[6]=r,e[7]=a,e[8]=n.entries,e[9]=s):s=e[9];let c;e[10]===r?c=e[11]:(c=()=>r.clear(),e[10]=r,e[11]=c);let l;return e[12]!==i||e[13]!==s||e[14]!==c?(l={isPending:!0,...i,shouldConfirmDelete:!0,confirm:s,cancel:c},e[12]=i,e[13]=s,e[14]=c,e[15]=l):l=e[15],l};function tl(t){return t.cellId}var Sa=["python","sql","markdown"];function rr(t,e={}){var l;let{streaming:n=!1}=e,r=((l=t.match(/^\s*/))==null?void 0:l[0])??"",a=t.slice(r.length),o=null,i=!1;for(let u of Sa)if(a.startsWith(`\`\`\`${u}`)){i=!0,o=a.slice(3+u.length),o.startsWith(`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./loro_wasm_bg-Bhj1szFH.js","./loro_wasm_bg-wiZiHqmd.js","./chunk-C4rtOYze.js"])))=>i.map(i=>d[i]);
2
+ var jf=Object.defineProperty;var hi=te=>{throw TypeError(te)};var Pf=(te,H,be)=>H in te?jf(te,H,{enumerable:!0,configurable:!0,writable:!0,value:be}):te[H]=be;var g=(te,H,be)=>Pf(te,typeof H!="symbol"?H+"":H,be),Df=(te,H,be)=>H.has(te)||hi("Cannot "+be);var gi=(te,H,be)=>(Df(te,H,"read from private field"),be?be.call(te):H.get(te)),yi=(te,H,be)=>H.has(te)?hi("Cannot add the same private member more than once"):H instanceof WeakSet?H.add(te):H.set(te,be);import{o as bi}from"./chunk-C4rtOYze.js";import{c as Mf,d as wi,f as Fr,i as J,l as jn,n as se,p as ut,s as Pn,u as q}from"./useEvent-GCVIknuR.js";import{t as Ff}from"./react-C60yClUi.js";import{$n as vi,$t as Rf,An as xi,B as Ei,Dn as Bf,E as Dn,Ei as Rr,F as Gf,H as Jf,Ht as Vf,K as Si,Ln as Br,Mn as $f,Ni as Wf,Nn as Z,Nt as qf,On as Hf,Pi as zf,Pn as Yf,Pt as ki,Ri as Kf,Rn as Gr,Sa as Xf,St as Bt,Ti as Zf,Tn as Qf,Tt as em,U as Ci,V as Mn,Vi as tm,W as Ti,Wt as Jr,Xn as nm,Xt as Ni,Yn as Fn,Yt as Vr,Zn as rm,Zr as $r,Zt as Ii,_i as am,_n as Rn,_r as Ai,_t as om,bt as im,ct as Li,dr as sm,en as lm,fn as cm,gi as um,gr as dm,gt as fm,ha as Wr,hr as Oi,ht as mm,i as _i,ia as pm,ir as hm,jn as gm,kn as ym,l as Ui,lt as Bn,m as xt,mr as nt,ni as qr,nn as bm,nr as wm,or as vm,pa as Gn,pr as Hr,rn as xm,rr as Em,sr as Sm,ta as ji,tn as km,tr as Pi,u as Di,ut as Cm,vr as Tm,vt as zr,xn as Nm,xt as Im,y as rt,yt as dt,zi as Mi,zr as Am,__tla as Lm}from"./cells-Biwqg0z6.js";import{t as Om}from"./react-dom-Ba2zmJWD.js";import{L as Fi,N as _m,P as Yr,S as Um,T as Ri,k as jm,w as Pm,z as Dm}from"./zod-BIDX-mZr.js";import{t as ve}from"./compiler-runtime-DnimoHo0.js";import{t as Mm}from"./debounce-DhnxH9Rh.js";import{E as Fm,T as Rm,b as Bm,g as Gm,h as Jm,m as Vm,t as $m}from"./ai-model-dropdown-BUCPZ0ND.js";import{_ as Wm,c as Bi,g as $e,m as Kr,t as qm}from"./useEventListener-DpNnLPuE.js";import{t as Gt}from"./invariant-BUdrueMv.js";import{E as Xr,_ as Gi,c as Hm,g as Ji,l as Vi,v as $i}from"./utils-C8Yt16Y7.js";import{E as zm,N as Ym,O as Km,S as Wi,T as Jt,m as Xm,o as Zm,r as qi,v as Et}from"./config-DFK5eCC3.js";import{n as Qm,t as ep}from"./switch-ulnbZFaI.js";import{c as tp,n as np,r as rp}from"./readonly-python-code-BHrAhtGV.js";import{t as ap}from"./ErrorBoundary-B392qglD.js";import{t as at}from"./cn-DCUzRj2J.js";import{t as op}from"./jsx-runtime-3wZU7vFS.js";import{l as ip,r as sp,t as lp}from"./popover-B96fOqfH.js";import{Q as cp,Z as up,__tla as dp}from"./JsonOutput-htT793Wj.js";import{t as Zr}from"./label-BOFHwHn7.js";import{n as fp}from"./download-CfUkZlw7.js";import{t as Jn}from"./tooltip-C9LWGQ7Y.js";import{r as Qr,t as ft}from"./button-W__YVea9.js";import{At as mp,Bt as Vn,Ct as pp,Dt as hp,E as gp,Et as Hi,Ft as yp,Gt as Vt,H as $n,Ht as bp,I as wp,P as vp,Pt as xp,Qt as We,Rt as ea,St as Ep,Tt as He,Ut as St,V as Sp,Wt as ta,Yt as kp,Zt as ce,_ as Cp,at as V,dt as $t,en as Wt,gt as Tp,ht as Np,lt as Ip,m as Ap,ot as Lp,qt as mt,rn as Wn,st as R,ut as ze,w as Op,xt as _p}from"./dist-CeF1Em5L.js";import{C as Up,E as jp,I as Pp,O as Dp,S as Mp,a as Fp,c as Rp,n as na,r as Bp,w as Gp}from"./dist-DanVWUek.js";import{o as zi}from"./arrays-UzzAzxsG.js";import{n as Jp}from"./once-DNBWPkeJ.js";import{t as ra}from"./createReducer-C1MhlItJ.js";import{a as Vp,c as $p,f as qn,h as Wp,i as qp,l as qt,n as Yi,o as Hp,t as zp}from"./dist-Di6rD-vJ.js";import{r as Ki}from"./strings-DmKKoXrM.js";import{r as Hn,t as Xi}from"./requests-B9zEd_sW.js";import{t as Yp}from"./createLucideIcon-B8oVfJNp.js";import{r as Zi,t as Kp,__tla as Xp}from"./layout-YPBtS2D6.js";import{t as Zp}from"./x-4y-nyVDU.js";import{t as Qp}from"./circle-check-CfLEHvyJ.js";import{A as eh,E as th,F as nh,H as rh,L as ah,U as oh,i as Qi,j as es,l as ih,n as sh,o as ts,p as lh,s as ch,z as uh}from"./add-cell-with-ai-Chy4ITIT.js";import{t as dh}from"./database-zap-n8PGHE18.js";import{r as fh,t as mh}from"./file-icons-DpREEjwW.js";import{t as ph}from"./components-CGGSwziZ.js";import{n as hh}from"./spinner-Cj3eM5bt.js";import{n as aa,t as ns}from"./useDeleteCell-BgFMPTmg.js";import{t as rs}from"./save-DeHQ9WTn.js";import{Y as gh,Z as as}from"./input-BN98e517.js";import{t as yh}from"./sparkles-DwqcWrJl.js";import{t as bh}from"./badge-D28DMr4y.js";import{t as wh}from"./preload-helper-BPPi7vOr.js";import{a as vh}from"./dist-Bm9PT5P9.js";import{t as kt}from"./use-toast-DjpWVza6.js";import{n as Qe}from"./paths-D5zczhUD.js";import{t as xh}from"./session-D-SddyN0.js";import{r as Eh}from"./useTheme-CwCyrmDf.js";import{n as os}from"./copy-HCSOwOwk.js";import{k as Sh}from"./usePress-Bl6X9B5M.js";import{t as kh}from"./context-BJMN4ll3.js";import{a as Ch}from"./useRunCells-CAfRBo7h.js";import{c as is,i as ss,n as ls,r as Th}from"./dialog-WU4x2UpK.js";import{t as cs}from"./useHotkey-cR1R36p-.js";import{i as zn}from"./numbers-DtSpUdpO.js";import{n as us}from"./ImperativeModal-Dxj31V4A.js";import{a as Nh}from"./errors-D93OkQw8.js";import{t as K}from"./extends-BiFDv3jB.js";import{t as Ht}from"./objectWithoutPropertiesLoose-DfWeGRFv.js";import{t as Ih}from"./kbd-PEowR7op.js";import{a as oa}from"./useInstallPackage-D58nBaNf.js";import{a as Ah,n as ds}from"./state-DJon00Ew.js";import{a as Lh,o as Oh}from"./cell-link-Bx8FWjns.js";import{r as fs}from"./html-to-image-ChfBVn8-.js";import{a as _h}from"./focus-CeTtpVjV.js";import{n as Uh}from"./useAsyncData-BcvSvTUt.js";import{a as jh,o as ms,r as Ph,s as ps,t as Dh}from"./command-D5LtSvbN.js";import{a as hs}from"./renderShortcut-C6HKXhBl.js";import{n as Mh,t as Fh}from"./icons-BwSNDWAP.js";import{n as Ct}from"./esm-RBKN8Dn2.js";import{t as gs}from"./dist-yM9CbJ9j.js";import{t as Rh}from"./requests-CWbKU3x_.js";import{n as Bh}from"./formatting-CjSzbmdF.js";import{t as Gh}from"./useSplitCell-N8Ohs-Pp.js";import{t as ia}from"./state-BFx9-sFK.js";import{n as Jh,r as Vh,t as ys}from"./panel-accordion-state-CgvX-ElJ.js";import{co as $h,do as sa,fo as Wh,ft as qh,go as Tt,ho as bs,lo as la,mo as ws,oo as Hh,po as zh,so as vs,uo as xs,__tla as Yh}from"./loro_wasm_bg-wiZiHqmd.js";import{t as Kh}from"./ws-B3l5rS71.js";import{t as Es}from"./Inputs-S6F4fq1S.js";import{r as Xh,t as Zh}from"./skeleton-BsZq3Vmq.js";let ca,zt,Yn,Kn,Xn,ua,xe,Ss,ks,Cs,Ts,da,fa,pt,Ns,Is,As,Yt,Zn,Ls,Qh=Promise.all([(()=>{try{return Lm}catch{}})(),(()=>{try{return dp}catch{}})(),(()=>{try{return Xp}catch{}})(),(()=>{try{return Yh}catch{}})()]).then(async()=>{var On,ui,Se,ke,Ce,Te,Ne,Ie,Ae,Le,Oe,_e,Ue,je,Pe,De,Me,Fe,Re,Be,Ge;var te=Yp("file-pen",[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]]);const H={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"};var be=300;const It=Vt.define({combine:t=>Wn(t,{onError:console.error,inputDebounceTime:be,keymaps:H},{onError:(e,n)=>e&&n,inputDebounceTime:(e,n)=>e&&n,keymaps:(e,n)=>e&&n})}),ot=ce.define(),it=We.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(t,e){for(let n of e.effects)if(n.is(ot))return n.value;return t}}),At=ce.define(),Lt=ce.define(),pa=We.define({create(){return{shouldFocus:!1,inputValue:""}},update(t,e){let n=t;for(let r of e.effects)r.is(At)&&(n={...n,inputValue:r.value}),r.is(Lt)&&(n={...n,shouldFocus:r.value});return n}}),Kt=ce.define(),Ot=We.define({create(){return null},update(t,e){for(let n of e.effects)if(n.is(Kt))return n.value;return t}}),ht=ce.define(),ha=We.define({create(){return!1},update(t,e){for(let n of e.effects)if(n.is(ht))return n.value;return t}});var Os=1;const ga=t=>{let{state:e}=t,n=e.selection.main;if(n.empty)return!1;let r=e.doc,a=r.lineAt(n.from),o=r.lineAt(n.to);if(e.sliceDoc(a.from,o.to).trim().length<Os)return!1;let i=Math.max(1,Math.min(a.number,r.lines)),s=Math.max(1,Math.min(o.number,r.lines));return t.dispatch({effects:[ot.of({show:!0,lineFrom:i,lineTo:s}),Lt.of(!0),At.of("")],selection:St.cursor(a.from)}),!0},ya=t=>t.state.field(Ot)?(t.dispatch({effects:[Kt.of(null),ot.of({show:!1,lineFrom:0,lineTo:0}),Lt.of(!1),At.of(""),ht.of(!1)]}),!0):!1,ba=t=>{let e=t.state.field(Ot);return e?(t.dispatch({changes:{from:e.from,to:e.to,insert:e.oldCode},effects:[Kt.of(null),ot.of({show:!1,lineFrom:0,lineTo:0}),Lt.of(!1),At.of(""),ht.of(!1)]}),!0):!1};var Qn={mac:"\u2318",windows:"\u229E Win",default:"Ctrl"};function _s(){return navigator.platform.startsWith("Mac")?Qn.mac:navigator.platform.startsWith("Win")?Qn.windows:Qn.default}function er(t){return t.replace("Mod",_s()).replace("-"," ").toUpperCase()}function pe(t,e){let n=document.createElement(t);return n.className=e,n}function Us(t,e,n=void 0){let r=()=>{};return(...a)=>(r(),new Promise((o,i)=>{let s=setTimeout(()=>o(t(...a)),e);r=()=>{clearTimeout(s),n!==void 0&&i(n)}}))}var Xt=We.define({create(){return{suggestion:null}},update(t,e){let n=e.effects.find(r=>r.is(Zt));return!e.docChanged&&!n&&!e.selection?t:n&&e.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Zt=ce.define();function js(t,e){let n=t.state.selection.main.head,r=[],a=V.widget({widget:new Ps(e),side:1});return r.push(a.range(n)),V.set(r)}var Ps=class extends $t{constructor(e){super();g(this,"suggestion");this.suggestion=e}toDOM(){let e=document.createElement("span");return e.style.opacity="0.4",e.className="cm-inline-suggestion",e.textContent=this.suggestion,e.setAttribute("role","suggestion"),e.setAttribute("aria-label",`Suggestion: ${this.suggestion}`),e}get lineBreaks(){return this.suggestion.split(`
3
+ `).length-1}},Ds=class{constructor(t){g(this,"cache",new Map);g(this,"timeout");this.timeout=t}get(t){let e=this.cache.get(t);return e?Date.now()-e.timestamp>this.timeout?(this.cache.delete(t),null):e.result:null}set(t,e){this.cache.set(t,{result:e,timestamp:Date.now()})}},Ms=(t,e)=>ze.fromClass(class{constructor(){g(this,"abortController",null);g(this,"cache");this.cache=new Ds(e.cacheTimeout??1e3)}async update(n){var i,s,c,l,u;if(!n.docChanged||((s=(i=e.events)==null?void 0:i.beforeSuggestionFetch)==null?void 0:s.call(i,n.view))===!1)return;(c=this.abortController)==null||c.abort(),this.abortController=new AbortController;let r=n.state.doc,a=r.toString(),o=this.cache.get(a);if(o){n.view.dispatch({effects:Zt.of({text:o,doc:r})});return}try{let d=await t(n.state,this.abortController.signal,n.view);if(this.abortController.signal.aborted||((u=(l=e.events)==null?void 0:l.shouldShowSuggestion)==null?void 0:u.call(l,n.view,d))===!1)return;this.cache.set(a,d),n.view.dispatch({effects:Zt.of({text:d,doc:r})})}catch(d){d instanceof Error&&d.name!=="AbortError"&&console.error("Suggestion fetch error:",d)}}destroy(){var n;(n=this.abortController)==null||n.abort()}}),Fs=ze.fromClass(class{constructor(){g(this,"decorations");this.decorations=V.none}update(t){var n;let e=(n=t.state.field(Xt))==null?void 0:n.suggestion;if(!e){this.decorations=V.none;return}this.decorations=js(t.view,e)}},{decorations:t=>t.decorations});function Rs(t,e,n,r){return{...t.changeByRange(a=>{if(a===t.selection.main)return{changes:{from:n,to:r,insert:e},range:St.cursor(n+e.length)};let o=r-n;return!a.empty||o&&t.sliceDoc(a.from-o,a.from)!==t.sliceDoc(n,r)?{range:a}:{changes:{from:a.from-o,to:a.from,insert:e},range:St.cursor(a.from-o+e.length)}}),userEvent:"input.complete"}}var Bs=t=>{var r,a,o;let e=(r=t.state.field(Xt))==null?void 0:r.suggestion;if(!e)return!1;let n=t.state.facet(tr);return t.dispatch({...Rs(t.state,e,t.state.selection.main.head,t.state.selection.main.head)}),(o=(a=n.events)==null?void 0:a.onSuggestionAccepted)==null||o.call(a,t,e),!0},wa=t=>{var r,a,o;let e=(r=t.state.field(Xt))==null?void 0:r.suggestion;if(!e)return!1;let n=t.state.facet(tr);return t.dispatch({effects:Zt.of({text:null,doc:t.state.doc})}),(o=(a=n.events)==null?void 0:a.onSuggestionRejected)==null||o.call(a,t,e),!0},Gs=He.of([{key:"Tab",run:Bs},{key:"Escape",run:wa}]),tr=Vt.define({combine:t=>t.at(-1)});function va(t){let{delay:e=500,includeKeymap:n=!0}=t,r=Us(t.fetchFn,e);return[Xt,tr.of(t),Ms(r,t),Fs,n?Gs:[]]}const Js=R.baseTheme({".cm-ai-input-container":{display:"flex",flexDirection:"column",gap:"4px",width:"min(calc(100% + 7px), 500px)",padding:"5px 5px",margin:"0 -6px",backgroundColor:"light-dark(rgb(241, 243, 245), rgb(40, 40, 40))"},".cm-ai-input":{display:"block",width:"100%",padding:"3px 8px",border:"2px solid rgb(51, 154, 240)",borderRadius:"5px",fontSize:"12px"},".cm-ai-help-info-button":{fontSize:"10px",paddingLeft:"10px",height:"18px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",display:"block",marginRight:"auto"},".cm-ai-help-info-button:hover":{color:"light-dark(rgb(89, 97, 105), rgb(190, 190, 190))"},".cm-ai-generate-button":{background:"#0E639C",border:"none",padding:"2px 6px",color:"#ffffff",cursor:"pointer",font:"inherit",borderRadius:"4px","&:hover":{backgroundColor:"#1177bb"}},".cm-line.cm-ai-selection, .cm-line.cm-ai-selection.cm-active-line":{backgroundColor:"light-dark(color-mix(in srgb, rgb(223, 227, 232) 50%, transparent), color-mix(in srgb, rgb(50, 50, 50) 50%, transparent)) !important"},".cm-line:has(.cm-new-code-line)":{backgroundColor:"light-dark(color-mix(in srgb, rgb(183, 235, 143) 50%, transparent), color-mix(in srgb, rgb(40, 100, 40) 50%, transparent)) !important"},".cm-old-code-container":{backgroundColor:"light-dark(rgb(255, 205, 205), rgb(100, 40, 40))",position:"relative",display:"flex",paddingTop:"0",width:"100%",alignItems:"center"},".cm-code-button":{position:"absolute",right:"5px",top:"50%",transform:"translateY(-50%)",background:"none",border:"none",cursor:"pointer",fontSize:"16px"},".cm-floating-buttons":{fontFamily:"sans-serif",position:"absolute",top:"-20px",left:"5px",display:"flex"},".cm-floating-button":{fontFamily:"sans-serif",padding:"2px 5px",fontSize:"10px",cursor:"pointer",fontWeight:"700"},".cm-floating-accept":{backgroundColor:"light-dark(rgb(55, 125, 34), rgb(40, 80, 25))",borderTopLeftRadius:"5px",borderBottomLeftRadius:"5px",color:"white",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".cm-floating-reject":{backgroundColor:"light-dark(rgb(220, 53, 69), rgb(180, 40, 50))",color:"white",borderTopRightRadius:"5px",borderBottomRightRadius:"5px",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".hotkey":{display:"inline-block",padding:"0 4px",borderRadius:"3px",backgroundColor:"rgba(255, 255, 255, 0.1)",fontSize:"90%"},".cm-ai-loading-indicator":{fontStyle:"italic",fontSize:"10px",paddingLeft:"12px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",opacity:"0",transition:"opacity 0.3s ease-in-out","&::after":{content:'""',display:"inline-block",animation:"ellipsis-pulse 1.5s steps(4, end) infinite"},"&:not(:empty)":{opacity:"1"}},".cm-ai-input:disabled":{opacity:"0.5"},"@keyframes ellipsis-pulse":{"0%":{content:"'.'"},"25%":{content:"'..'"},"50%":{content:"'...'"},"75%":{content:"''"}},".cm-ai-loading-container":{display:"flex",alignItems:"center",padding:"0 8px"},".cm-ai-cancel-button":{padding:"2px 8px",fontSize:"10px",borderRadius:"4px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",cursor:"pointer","&:hover":{background:"light-dark(rgb(223, 227, 232), rgb(50, 50, 50))"}},".hidden":{display:"none"}});function Vs(t){var s,c;let e=t.state.facet(It),n={...H,...e.keymaps},r=t.state.facet(Qt),a=pe("div","cm-ai-tooltip").appendChild(pe("div","cm-ai-tooltip-button")),o=a.appendChild(document.createElement("span"));o.textContent=`${r.label} `;let i=o.appendChild(document.createElement("span"));return i.className="hotkey",i.textContent=er(n.showInput),(s=a.querySelector("span"))==null||s.addEventListener("mousedown",l=>{l.stopPropagation(),l.button===0&&l.preventDefault()}),(c=a.querySelector("span"))==null||c.addEventListener("click",l=>{l.preventDefault(),ga(t)}),a}const Qt=Vt.define({combine(t){return Wn(t,{render:Vs,hideOnBlur:!1,label:"Edit with AI"})}}),$s=ze.fromClass((ui=class{constructor(t){g(this,"view");g(this,"suppress");g(this,"dom");g(this,"mousedown",()=>{this.suppress=!0});g(this,"mouseup",()=>{this.suppress=!1,this.display(this.view)});g(this,"scroll",()=>{this.display(this.view)});g(this,"windowScroll",()=>{this.display(this.view)});yi(this,On,t=>{var n;let e=t.state.selection.ranges.find(r=>!r.empty);if(e&&!this.suppress){let r=t.coordsAtPos(e.from),a=t.coordsAtPos(e.to);if(!r||!a)return;let o=t.dom.getBoundingClientRect(),i=(n=t.dom.parentElement)==null?void 0:n.getBoundingClientRect(),s=v=>v.top>=o.top&&v.top<=o.bottom&&v.left>=o.left&&v.left<=o.right,c=v=>!i||v.top>=i.top&&v.top<=i.bottom&&v.left>=i.left&&v.left<=i.right,l=s(r)||s(a),u=c(r)||c(a);if(!l||!u){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}this.dom.style.display="flex",this.dom.setAttribute("aria-hidden","false");let d=this.dom.getBoundingClientRect(),p=s(r)?r:a,f=o.right-d.width,m=Math.min(p.left,f),y=p.top-d.height,b=i?i.y:-1/0;y<b&&(y=a.bottom),this.dom.style.left=`${m}px`,this.dom.style.top=`${y}px`,requestAnimationFrame(()=>{this.dom&&this.dom.setAttribute("aria-hidden","false")})}else this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true")});this.view=t;let e=t.state.facet(Qt);this.suppress=!1,document.addEventListener("mousedown",this.mousedown),document.addEventListener("mouseup",this.mouseup),t.scrollDOM.addEventListener("scroll",this.scroll),window.addEventListener("scroll",this.windowScroll,!0);let n=e.render(t);t.dom.appendChild(n),this.dom=n}update(t){this.display(t.view)}docViewUpdate(t){this.display(t)}display(t){if(t.state.field(it).show){this.dom.style.display="none";return}if(t.state.facet(Qt).hideOnBlur&&!t.hasFocus){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}t.requestMeasure({read:gi(this,On)})}destroy(){document.removeEventListener("mousedown",this.mousedown),document.removeEventListener("mouseup",this.mouseup),this.view.scrollDOM.removeEventListener("scroll",this.scroll),window.removeEventListener("scroll",this.windowScroll,!0),this.dom.remove()}},On=new WeakMap,ui));var Ws=R.baseTheme({".cm-ai-tooltip-button":{userSelect:"none",fontFamily:"system-ui, -apple-system, sans-serif",position:"fixed",display:"flex",boxSizing:"border-box",padding:"2px 6px",borderRadius:"4px",fontSize:"12px",backgroundColor:"#0E639C",color:"#ffffff",border:"1px solid transparent",boxShadow:"0 2px 4px rgba(0,0,0,0.1)",zIndex:"999",transition:"opacity 0.5s","&[aria-hidden='true']":{opacity:"0"},"&[aria-hidden='false']":{opacity:"1"},"& > span":{pointerEvents:"auto",cursor:"pointer",display:"inline-block",padding:"2px"},"&:hover":{backgroundColor:"#1177bb"}}});function qs(){return[$s,Ws]}var Hs=class extends $t{constructor(e){super();g(this,"oldCode");this.oldCode=e}toDOM(e){let n=pe("div","cm-old-code-container");n.setAttribute("role","region"),n.setAttribute("aria-label","Previous code version");let r=pe("div","cm-old-code cm-line");r.textContent=this.oldCode;let a=pe("div","cm-floating-buttons"),o=e.state.facet(It),i={...H,...o.keymaps},s=pe("button","cm-floating-button cm-floating-accept");s.innerHTML=`<span class="hotkey">${er(i.acceptEdit)}</span> Accept`,s.setAttribute("aria-label","Accept changes"),s.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),e.focus(),ya(e)});let c=pe("button","cm-floating-button cm-floating-reject");return c.innerHTML=`<span class="hotkey">${er(i.rejectEdit)}</span> Reject`,c.setAttribute("aria-label","Reject changes"),c.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),e.focus(),ba(e)}),a.append(s,c),n.append(r,a),n}updateDOM(e,n){return!0}},zs=class extends $t{constructor(e){super();g(this,"complete");g(this,"abortController",null);g(this,"dom",null);g(this,"input",null);g(this,"loadingContainer",null);g(this,"helpInfo",null);g(this,"inputContainer",null);g(this,"form",null);g(this,"view",null);g(this,"onKeyDown",async e=>{e.key==="Enter"&&!e.shiftKey?(e.preventDefault(),await this.handleSubmit()):e.key==="Escape"&&this.onCancel()});g(this,"onCancel",()=>{this.cleanup();let e=this.view;e&&(e.dispatch({effects:[ot.of({show:!1,lineFrom:0,lineTo:0}),ht.of(!1)]}),e.focus())});g(this,"handleSubmit",async e=>{var m;let n=this.view;if(!n)return;let r=n.state.facet(It);e==null||e.stopPropagation();let a=n.state.field(it),{input:o}=this;if(!o)return;let i=o.value.trim();if(!a.show||!i)return;let s=n.state.doc.line(a.lineFrom),c=n.state.doc.line(a.lineTo),l=s.from,u=c.to,d=n.state.sliceDoc(l,u),p=n.state.sliceDoc(0,l),f=n.state.sliceDoc(u);this.abortController=new AbortController,n.dispatch({effects:ht.of(!0)}),this.toggleLoading(!0);try{let y=await this.complete({prompt:i,selection:d,codeBefore:p,codeAfter:f,editorView:n,signal:this.abortController.signal});if(!n.state.field(it).show)return;if(!y||typeof y!="string")throw Error("Invalid completion result");n.dispatch({changes:{from:l,to:u,insert:y},effects:[ot.of({show:!1,lineFrom:0,lineTo:0}),Kt.of({from:l,to:l+y.length,oldCode:d,newCode:y}),ht.of(!1)]})}catch(y){if(y instanceof DOMException&&y.name==="AbortError")return;(m=r.onError)==null||m.call(r,y)}finally{this.cleanup(),this.toggleLoading(!1),n.focus()}});this.complete=e}toDOM(e){if(this.dom)return this.dom;this.view=e;let n=e.state.field(pa),r=e.state.field(ha),a=pe("div","cm-ai-input-container");this.inputContainer=a,this.dom=a;let o=pe("form","cm-ai-input-form");this.form=o,o.setAttribute("role","search"),o.setAttribute("aria-label","AI editing instructions"),o.addEventListener("submit",b=>b.preventDefault());let i=pe("input","cm-ai-input");this.input=i,o.append(i),i.placeholder="Editing instructions...",i.setAttribute("aria-label","AI editing instructions"),i.setAttribute("autocomplete","off"),i.setAttribute("spellcheck","true"),i.value=n.inputValue;let s=pe("div","cm-ai-loading-container");this.loadingContainer=s;let c=pe("div","cm-ai-loading-indicator");c.setAttribute("role","status"),c.setAttribute("aria-live","polite"),c.textContent="Generating";let l=pe("button","cm-ai-cancel-button");l.textContent="Cancel",l.setAttribute("aria-label","Cancel code generation"),l.addEventListener("click",this.onCancel),s.append(l,c);let u=pe("div","cm-ai-help-info");this.helpInfo=u;let d=u.appendChild(document.createElement("button"));d.className="cm-ai-help-info-button",d.textContent="Esc to close",d.addEventListener("click",this.onCancel);let p=pe("button","cm-ai-generate-button");p.textContent="\u23CE Generate",p.setAttribute("aria-label","Generate code"),p.addEventListener("click",this.handleSubmit),this.toggleLoading(r),n.shouldFocus&&requestAnimationFrame(()=>{i.value=n.inputValue,i.focus(),e.dispatch({effects:Lt.of(!1)})}),f(i.value),i.addEventListener("input",y),i.addEventListener("keydown",this.onKeyDown);function f(b){u.replaceChildren(b?p:d)}let m="";function y(){e.dispatch({effects:At.of(i.value)});let b=i.value.trim();b!==m&&(m=b,f(b))}return a}toggleLoading(e){var n;this.inputContainer&&this.form&&this.loadingContainer&&this.helpInfo&&((n=this.inputContainer)==null||n.replaceChildren(this.form,e?this.loadingContainer:this.helpInfo))}updateDOM(e,n){return this.dom=e,this.input=e.querySelector(".cm-ai-input"),!0}cleanup(){var e,n,r;(e=this.abortController)==null||e.abort(),this.abortController=null,(n=this.dom)==null||n.remove(),(r=this.input)==null||r.remove(),this.dom=null,this.input=null}destroy(){this.cleanup()}};function Ys(t){if(!t.prompt)throw Error("prompt function is required");let e={...H,...t.keymaps};return[It.of(t),it,pa,Ot,ha,qs(),Js,He.of([{key:e.showInput,run:ga}]),mt.highest([He.of([{key:e.acceptEdit,run:ya},{key:e.rejectEdit,run:ba}])]),Ks,Xs,Zs,Qs]}const Ks=R.updateListener.of(t=>{let e=t.state.field(it);if(!e.show||!t.docChanged)return;let{lineFrom:n,lineTo:r}=e,a=!1;t.changes.iterChanges((o,i,s,c)=>{let l=t.state.doc.lineAt(o).number;if(l<n){let u=t.state.doc.lineAt(c).number-t.state.doc.lineAt(s).number;n+=u,r+=u,a=!0}else if(l<=r){let u=t.state.doc.lineAt(c).number-t.state.doc.lineAt(s).number;r+=u,a=!0}}),a&&t.view.dispatch({effects:[ot.of({show:!0,lineFrom:n,lineTo:r})]})}),Xs=R.decorations.of(t=>{let e=t.state.field(Ot);return e?V.set([V.mark({class:"cm-new-code-line"}).range(e.from,e.to)]):V.none}),Zs=R.decorations.compute([it],t=>{let e=t.field(it),n=t.facet(It),r=[];if(e.show){let a=e.lineFrom,o=e.lineTo;for(let i=a;i<=o;i++){let s=t.doc.line(i).from;r.push(V.line({class:"cm-ai-selection"}).range(s)),i===a&&r.push(V.widget({widget:new zs(n.prompt),side:-1}).range(s))}}return V.set(r)}),Qs=We.define({create(t){return V.none},update(t,e){let n=e.state.field(Ot);return n?V.set([V.widget({widget:new Hs(n.oldCode),block:!0}).range(n.from)]):V.none},provide:t=>R.decorations.from(t)});var el=ve(),N=bi(Ff(),1),nr=()=>({entries:new Map}),{valueAtom:xa,useActions:Ea}=ra(nr,{submit:(t,e)=>{let{cellIds:n,deleteCell:r,deleteManyCells:a,store:o}=e,i=o.get(rt),s=o.get(Fn),c=new Set(i.cellIds.inOrderIds.filter(d=>i.cellData[d].code.trim()==="")),l=new Map;for(let d of n){if(c.has(d)){l.set(d,{cellId:d,type:"simple"});continue}let p=i.cellRuntime[d],f=new Map;for(let y of Object.values(s)){let b=y.declaredBy.includes(d),v=y.usedBy.some(S=>!c.has(S));b&&v&&f.set(y.name,y.usedBy)}let m;p!=null&&p.runElapsedTimeMs&&p.runElapsedTimeMs>2e3&&(m=p.runElapsedTimeMs),f.size===0&&m===void 0?l.set(d,{cellId:d,type:"simple"}):l.set(d,{cellId:d,type:"expensive",executionDurationMs:m,defs:f})}let u=[...l.values()].every(d=>d.type==="simple");return l.size>0&&u?(l.size===1?r({cellId:[...l.values()][0].cellId}):a({cellIds:[...l.values()].map(d=>d.cellId)}),nr()):{...t,entries:l}},clear:()=>nr()});Yn=function(){let t=Fr(),{submit:e,clear:n}=Ea(),{entries:r}=q(xa),a=ns(),o=aa();return(0,N.useMemo)(()=>({submit:i=>{e({cellIds:i,deleteCell:a,deleteManyCells:o,store:t})},clear:n,get idle(){return r.size===0},get shouldConfirmDelete(){return r.size>1}}),[t,e,n,r,a,o])},Ls=function(t){let e=(0,el.c)(16),n=q(xa),r=Ea(),a=aa(),o;e[0]!==t||e[1]!==n.entries?(o=n.entries.get(t),e[0]=t,e[1]=n.entries,e[2]=o):o=e[2];let i=o;if(!i){let u;return e[3]===Symbol.for("react.memo_cache_sentinel")?(u={isPending:!1},e[3]=u):u=e[3],u}if(n.entries.size!==1){let u;return e[4]===i?u=e[5]:(u={isPending:!0,shouldConfirmDelete:!1,...i},e[4]=i,e[5]=u),u}let s;e[6]!==r||e[7]!==a||e[8]!==n.entries?(s=()=>{a({cellIds:[...n.entries.values()].map(tl)}),r.clear()},e[6]=r,e[7]=a,e[8]=n.entries,e[9]=s):s=e[9];let c;e[10]===r?c=e[11]:(c=()=>r.clear(),e[10]=r,e[11]=c);let l;return e[12]!==i||e[13]!==s||e[14]!==c?(l={isPending:!0,...i,shouldConfirmDelete:!0,confirm:s,cancel:c},e[12]=i,e[13]=s,e[14]=c,e[15]=l):l=e[15],l};function tl(t){return t.cellId}var Sa=["python","sql","markdown"];function rr(t,e={}){var l;let{streaming:n=!1}=e,r=((l=t.match(/^\s*/))==null?void 0:l[0])??"",a=t.slice(r.length),o=null,i=!1;for(let u of Sa)if(a.startsWith(`\`\`\`${u}`)){i=!0,o=a.slice(3+u.length),o.startsWith(`
4
4
  `)&&(o=o.slice(1));break}if(!i&&a.startsWith("```")){let u=a.slice(3);if(n&&nl(u))return t;i=!0,o=u,o.startsWith(`
5
5
  `)&&(o=o.slice(1))}if(!i||o===null)return t;if(n)return o;let s=o.trimEnd(),c=o.slice(s.length);return s.endsWith("\n```")?s.slice(0,-4)+c:s.endsWith("```")?s.slice(0,-3)+c:o}function nl(t){return t.includes(`
6
- `)?!1:Sa.some(e=>e.startsWith(t))}async function rl(t){if(!t.ok)throw Error(await t.text());if(!t.body)throw Error("Failed to get response body");let e="";return await lh({stream:rh({stream:t.body,schema:th}).pipeThrough(new TransformStream({transform(n){if(!n.success)throw n.error;let r=n.value;if(r.type==="text-delta")e+=r.delta;else if(r.type==="error")throw Error(r.errorText)}})),onError:n=>{throw n}}),rr(e)}async function al(t){var i;let e=`
6
+ `)?!1:Sa.some(e=>e.startsWith(t))}async function rl(t){if(!t.ok)throw Error(await t.text());if(!t.body)throw Error("Failed to get response body");let e="";return await uh({stream:oh({stream:t.body,schema:rh}).pipeThrough(new TransformStream({transform(n){if(!n.success)throw n.error;let r=n.value;if(r.type==="text-delta")e+=r.delta;else if(r.type==="error")throw Error(r.errorText)}})),onError:n=>{throw n}}),rr(e)}async function al(t){var i;let e=`
7
7
  ${t.codeBefore}
8
8
  <rewrite_this>
9
9
  ${t.selection}
10
10
  </rewrite_this>
11
11
  ${t.codeAfter}
12
- `.trim(),n=qi();await Wi();let r=await fetch(n.getAiURL("completion").toString(),{method:"POST",headers:n.headers(),body:JSON.stringify({prompt:t.prompt,code:e,selectedText:t.selection,includeOtherCode:"",language:t.language})}),a=((i=t.selection.match(/^\s*/))==null?void 0:i[0])||"",o=await rl(r);return o.startsWith(a)||(o=a+o),o}function ka(t){switch(t){case"table":case"connection":Br("variables"),ys(Gh,"datasources");return;case"bucket":Br("files"),ys(Bh,"remote-storage");return;case"cache":Br("cache");return;default:Ki(t)}}function ol(t){let{state:e,names:n}=t;if(n.size===0)return[];let r=$n(e);if(!r||xi(r))return[];let a=new Map,o=c=>{if(c.name===Q.VariableName){let l=e.doc.sliceString(c.from,c.to);n.has(l)&&!a.has(l)&&a.set(l,{from:c.from,to:c.to,name:l});return}if(c.name===Q.TupleExpression||c.name===Q.ArrayExpression||c.name===Q.ParenthesizedExpression)for(let l=c.firstChild;l;l=l.nextSibling)o(l)},i=c=>{let l=-1;for(let u=c.firstChild;u;u=u.nextSibling)u.name===Q.AssignOp&&(l=u.from);if(l!==-1)for(let u=c.firstChild;u&&u.from<l;u=u.nextSibling)o(u)},s=c=>{if(!Kf.has(c.name)){if(c.name===Q.AssignStatement){i(c);return}for(let l=c.firstChild;l;l=l.nextSibling)s(l)}};return s(r.topNode),[...a.values()]}var il=/\bmo\.(?:persistent_cache|cache)\b/g;function Ca(t){let e=t.match(/^[A-Za-z]*("""|'''|"|')([\s\S]*)\1$/);return e?e[2]:t}function sl(t,e){var a;if(!t)return null;let n=o=>(o==null?void 0:o.name)===","||(o==null?void 0:o.name)===")",r=null;for(let o=t.firstChild;o;o=o.nextSibling)if(!(o.name==="("||o.name===")"||o.name===",")&&(r??(r=o),o.name===Q.VariableName&&e(o)==="name"&&((a=o.nextSibling)==null?void 0:a.name)===Q.AssignOp)){let i=o.nextSibling.nextSibling;if((i==null?void 0:i.name)===Q.String&&n(i.nextSibling))return Ca(e(i))}return r&&r.name===Q.String&&n(r.nextSibling)?Ca(e(r)):null}function ll(t,e,n,r){var d,p,f;let a=m=>t.doc.sliceString(m.from,m.to),o=e.resolveInner(n,1),i=null,s=null,c=r,l=null;for(let m=o.parent;m&&m.from===n;m=m.parent)if(m.name===Q.CallExpression){l=m;break}if(l){c=l.to,s=l.getChild(Q.ArgList);let m=l.parent;if((m==null?void 0:m.name)===Q.AssignStatement){let y=m.getChild(Q.VariableName);i=y&&y.from<l.from?a(y):null}else if((m==null?void 0:m.name)===Q.WithStatement){let y=m.firstChild;for(;y;){if(y.from<l.to||y.name===qf.As){y=y.nextSibling;continue}y.name===Q.VariableName&&(i=a(y));break}}}else if(((d=o.parent)==null?void 0:d.name)===Q.Decorator){let m=o.parent,y=m.getChild(Q.ArgList);(y==null?void 0:y.from)===r&&(s=y,c=y.to);let b=(f=(p=m.parent)==null?void 0:p.getChild(Q.FunctionDefinition))==null?void 0:f.getChild(Q.VariableName);i=b?a(b):null}let u=sl(s,a);return{from:n,to:c,boundName:i,cacheName:u}}function cl(t,e,n){let r=e.resolveInner(n,1);return mm.has(r.name)?!1:r.name===Q.VariableName&&t.doc.sliceString(r.from,r.to)==="mo"}function ul(t){let e=$n(t);return!e||xi(e)?[]:[...t.doc.toString().matchAll(il)].filter(n=>cl(t,e,n.index??0)).map(n=>{let r=n.index??0;return ll(t,e,r,r+n[0].length)})}function ar(t,e,n){let r=t.get(e);r!==void 0&&r!==n&&$e.error(`[code-lens] "${e}" is claimed by both a ${r} and a ${n} entity; keeping ${n}`),t.set(e,n)}var dl=ut(t=>{let e=new Map;for(let n of t(Wr))n.variable_name&&ar(e,n.variable_name,"table");for(let n of t(Vr).keys())um.has(n)||ar(e,n,"connection");for(let n of t(ia))ar(e,n.name,"bucket");return e}),fl=ut(t=>{let e=t(dl),n=t(Fn),r=new Map,a=new Map;for(let[o,i]of e){let s=n[o];if(s==null){a.set(o,i);continue}for(let c of s.declaredBy){let l=r.get(c);l||(l=new Map,r.set(c,l)),l.set(o,i)}}return{byCell:r,pending:a}});function ml(t){let{byCell:e,pending:n}=J.get(fl),r=new Map(e.get(t));for(let[a,o]of n)r.has(a)||r.set(a,o);return r}var en=t=>`<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">${t}</svg>`;const pl={table:en('<path d="M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18"/>'),connection:en('<ellipse cx="12" cy="5" rx="9" ry="3"/><path d="M3 5V19A9 3 0 0 0 21 19V5"/><path d="M3 12A9 3 0 0 0 21 12"/>'),bucket:en('<line x1="22" x2="2" y1="12" y2="12"/><path d="M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"/><line x1="6" x2="6.01" y1="16" y2="16"/><line x1="10" x2="10.01" y1="16" y2="16"/>'),cache:en('<ellipse cx="12" cy="5" rx="9" ry="3"/><path d="M3 5V19A9 3 0 0 0 15 21.84"/><path d="M21 5V8"/><path d="M21 12L18 17H22L19 22"/><path d="M3 12A9 3 0 0 0 14.59 14.87"/>')},hl={table:"Open in data sources",connection:"Open in data sources",bucket:"Open in remote storage",cache:"Open cache panel"};var _t=ve(),gl=Tm(),h=bi(rp(),1);function yl(t,e){let n=(0,gl.createRoot)(t);return n.render((0,h.jsx)(Df,{store:J,children:(0,h.jsx)(bl,{spec:e})})),()=>queueMicrotask(()=>n.unmount())}var bl=t=>{var r,a;let e=(0,_t.c)(9),{spec:n}=t;switch(n.kind){case"table":{let o;return e[0]===n.name?o=e[1]:(o=(0,h.jsx)(wl,{name:n.name}),e[0]=n.name,e[1]=o),o}case"connection":{let o;return e[2]===n.name?o=e[3]:(o=(0,h.jsx)(vl,{name:n.name}),e[2]=n.name,e[3]=o),o}case"bucket":{let o;return e[4]===n.name?o=e[5]:(o=(0,h.jsx)(xl,{name:n.name}),e[4]=n.name,e[5]=o),o}case"cache":{let o=((r=n.cache)==null?void 0:r.boundName)??null,i=((a=n.cache)==null?void 0:a.cacheName)??null,s;return e[6]!==o||e[7]!==i?(s=(0,h.jsx)(Cl,{boundName:o,cacheName:i}),e[6]=o,e[7]=i,e[8]=s):s=e[8],s}default:Ki(n.kind)}},wl=t=>{let e=(0,_t.c)(5),{name:n}=t,r=q(Wr),a;if(e[0]!==n||e[1]!==r){let o;e[3]===n?o=e[4]:(o=s=>s.variable_name===n,e[3]=n,e[4]=o);let i=r.find(o);a=i?km(i):Li("table"),e[0]=n,e[1]=r,e[2]=a}else a=e[2];return a},vl=t=>{let e=(0,_t.c)(5),{name:n}=t,r=q(Vr),a,o;if(e[0]!==r||e[1]!==n){o=Symbol.for("react.early_return_sentinel");e:{let i=r.get(n);if(!i){let s;e[4]===Symbol.for("react.memo_cache_sentinel")?(s=Li("database"),e[4]=s):s=e[4],o=s;break e}a=lm(i)}e[0]=r,e[1]=n,e[2]=a,e[3]=o}else a=e[2],o=e[3];return o===Symbol.for("react.early_return_sentinel")?a:o},xl=t=>{let e=(0,_t.c)(27),{name:n}=t,r=q(ia),a;if(e[0]!==n||e[1]!==r){let y;e[3]===n?y=e[4]:(y=b=>b.name===n,e[3]=n,e[4]=y),a=r.find(y),e[0]=n,e[1]=r,e[2]=a}else a=e[2];let o=a;if(!o){let y;return e[5]===Symbol.for("react.memo_cache_sentinel")?(y=(0,h.jsx)("div",{className:Hr,children:(0,h.jsx)("span",{className:"text-xs text-(--slate-11)",children:"No storage information available."})}),e[5]=y):y=e[5],y}let i;e[6]===o.protocol?i=e[7]:(i=(0,h.jsx)(fh,{protocol:o.protocol,className:"w-4 h-4"}),e[6]=o.protocol,e[7]=i);let s;e[8]===o.protocol?s=e[9]:(s=(0,h.jsx)(gh,{variant:"outline",className:"text-xs",children:o.protocol}),e[8]=o.protocol,e[9]=s);let c;e[10]!==o.displayName||e[11]!==i||e[12]!==s?(c=(0,h.jsx)(Ui,{icon:i,title:o.displayName,badge:s}),e[10]=o.displayName,e[11]=i,e[12]=s,e[13]=c):c=e[13];let l;e[14]===o.name?l=e[15]:(l=(0,h.jsx)(nt,{label:"Variable",value:(0,h.jsx)("code",{className:"text-xs bg-(--slate-4) px-1 rounded",children:o.name})}),e[14]=o.name,e[15]=l);let u=o.rootPath||"(root)",d;e[16]===u?d=e[17]:(d=(0,h.jsx)(nt,{label:"Root",value:(0,h.jsx)("code",{className:"text-xs bg-(--slate-4) px-1 rounded",children:u})}),e[16]=u,e[17]=d);let p;e[18]===o.backendType?p=e[19]:(p=(0,h.jsx)(nt,{label:"Backend",value:(0,h.jsx)("span",{className:"font-medium",children:o.backendType})}),e[18]=o.backendType,e[19]=p);let f;e[20]!==l||e[21]!==d||e[22]!==p?(f=(0,h.jsxs)("div",{className:"flex flex-col gap-2 py-2",children:[l,d,p]}),e[20]=l,e[21]=d,e[22]=p,e[23]=f):f=e[23];let m;return e[24]!==c||e[25]!==f?(m=(0,h.jsxs)("div",{className:Hr,children:[c,f]}),e[24]=c,e[25]=f,e[26]=m):m=e[26],m},El=/\bhits=(\d+) misses=(\d+)/,tn=null,Sl=5e3;function kl(){let t=Date.now();tn!=null&&t-tn<Sl||(tn=t,Xi().getCacheInfo().catch(()=>{tn=null}))}var Cl=t=>{var k,_;let e=(0,_t.c)(16),{boundName:n,cacheName:r}=t,{locale:a}=Eh(),o=q(Fn),i=q(Mh),s=n?o[n]:void 0,c;e[0]===s?c=e[1]:(c=(k=s==null?void 0:s.dataType)!=null&&k.startsWith("_cache_call")?(_=s.value)==null?void 0:_.match(El):void 0,e[0]=s,e[1]=c);let l=c,u=!!l,d,p;e[2]===u?(d=e[3],p=e[4]):(d=()=>{u||kl()},p=[u],e[2]=u,e[3]=d,e[4]=p),(0,N.useEffect)(d,p);let f;e[5]===Symbol.for("react.memo_cache_sentinel")?(f=(0,h.jsx)(ch,{className:"w-4 h-4 text-(--amber-9)"}),e[5]=f):f=e[5];let m=r??n??"Cache",y;e[6]===m?y=e[7]:(y=(0,h.jsx)(Ui,{icon:f,title:m}),e[6]=m,e[7]=y);let b;e[8]!==i||e[9]!==a||e[10]!==l?(b=l?(0,h.jsxs)("div",{className:"flex flex-col gap-2 py-2",children:[(0,h.jsx)(nt,{label:"Hits",value:(0,h.jsx)("span",{className:"font-medium",children:zn(Number(l[1]),a)})}),(0,h.jsx)(nt,{label:"Misses",value:(0,h.jsx)("span",{className:"font-medium",children:zn(Number(l[2]),a)})})]}):i&&(0,h.jsxs)("div",{className:"flex flex-col gap-2 py-2",children:[(0,h.jsx)("span",{className:"text-xs font-medium text-(--slate-11)",children:"Notebook-wide"}),(0,h.jsx)(nt,{label:"Hits",value:zn(i.hits,a)}),(0,h.jsx)(nt,{label:"Misses",value:zn(i.misses,a)}),(0,h.jsx)(nt,{label:"Time saved",value:Fh(i.time,a)})]}),e[8]=i,e[9]=a,e[10]=l,e[11]=b):b=e[11];let v;e[12]===Symbol.for("react.memo_cache_sentinel")?(v=(0,h.jsx)("div",{className:"pt-2 text-xs text-(--slate-10)",children:"Click to open the cache panel"}),e[12]=v):v=e[12];let S;return e[13]!==y||e[14]!==b?(S=(0,h.jsxs)("div",{className:Hr,children:[y,b,v]}),e[13]=y,e[14]=b,e[15]=S):S=e[15],S},or=ce.define(),ir=ce.define();function sr(t,e){var n,r,a,o;return t.pos===e.pos&&t.kind===e.kind&&t.name===e.name&&((n=t.cache)==null?void 0:n.boundName)===((r=e.cache)==null?void 0:r.boundName)&&((a=t.cache)==null?void 0:a.cacheName)===((o=e.cache)==null?void 0:o.cacheName)}var Tl=class{constructor(t){this.view=t}enterLens(t,e){this.clearTimers(),Nl(this.view,e);let n=this.view.state.field(lr,!1);n&&sr(n.spec,t)||(this.showTimer=window.setTimeout(()=>{this.showTimer=void 0,this.view.dispatch({effects:ir.of(t)})},400))}leave(){this.clearTimers(),this.hideTimer=window.setTimeout(()=>{this.hideTimer=void 0,this.hide()},200)}enterPopover(){window.clearTimeout(this.hideTimer),this.hideTimer=void 0}hide(){this.clearTimers(),this.view.state.field(lr,!1)&&this.view.dispatch({effects:ir.of(null)})}destroy(){this.clearTimers()}clearTimers(){window.clearTimeout(this.showTimer),window.clearTimeout(this.hideTimer),this.showTimer=void 0,this.hideTimer=void 0}},nn=ze.define(t=>new Tl(t));function Nl(t,e){t.dom.dispatchEvent(new MouseEvent("mouseleave",{relatedTarget:e}))}var Il=class extends $t{constructor(t){super(),this.spec=t}eq(t){return sr(this.spec,t.spec)}toDOM(t){let{spec:e}=this,n=document.createElement("span");n.className="mo-code-lens",n.setAttribute("role","button"),n.tabIndex=0,n.setAttribute("aria-label",hl[e.kind]),n.innerHTML=pl[e.kind];let r=()=>t.plugin(nn),a=()=>{var o;return(o=r())==null?void 0:o.hide()};return n.onmouseenter=()=>{var o;return(o=r())==null?void 0:o.enterLens(e,n)},n.onmouseleave=()=>{var o;return(o=r())==null?void 0:o.leave()},n.onmousemove=o=>{o.stopPropagation()},n.onmousedown=o=>{o.preventDefault(),o.stopPropagation()},n.onclick=o=>{o.preventDefault(),o.stopPropagation(),a(),ka(e.kind)},n.onkeydown=o=>{(o.key==="Enter"||o.key===" ")&&(o.preventDefault(),o.stopPropagation(),a(),ka(e.kind))},n}ignoreEvent(){return!0}};function Al(t){return{spec:t,tooltip:{pos:t.pos,above:!0,create:e=>{let n=document.createElement("div");return n.classList.add("mo-cm-tooltip","docs-documentation"),n.onmouseenter=()=>{var r;return(r=e.plugin(nn))==null?void 0:r.enterPopover()},n.onmouseleave=()=>{var r;return(r=e.plugin(nn))==null?void 0:r.leave()},{dom:n,resize:!1,destroy:yl(n,t)}}}}}var lr=We.define({create(){return null},update(t,e){for(let n of e.effects){if(n.is(ir))return n.value?Al(n.value):null;if(n.is(or)&&t)return n.value.some(r=>sr(r,t.spec))?t:null}return e.docChanged?null:t},provide:t=>wp.from(t,e=>(e==null?void 0:e.tooltip)??null)}),Ll=We.define({create(){return V.none},update(t,e){t=t.map(e.changes);for(let n of e.effects)n.is(or)&&(t=V.set(n.value.map(r=>V.widget({widget:new Il(r),side:1}).range(r.pos)),!0));return t},provide:t=>R.decorations.from(t)}),Ol=class{constructor(t,e,n){g(this,"debounceMs",300);this.view=t,this.cellId=e,this.includeCache=n,this.scheduleUpdate=Pm(()=>this.run(),this.debounceMs);let r=()=>this.scheduleUpdate();this.unsubscribes=[J.sub(Wr,r),J.sub(Vr,r),J.sub(ia,r),J.sub(Fn,r)],this.scheduleUpdate()}update(t){var n,r;let e=((n=t.startState.field(dt,!1))==null?void 0:n.type)!==((r=t.state.field(dt,!1))==null?void 0:r.type);(t.docChanged||e)&&this.scheduleUpdate()}destroy(){this.scheduleUpdate.cancel();for(let t of this.unsubscribes)t()}run(){var r;let{state:t}=this.view,e=[],n=(r=t.field(dt,!1))==null?void 0:r.type;if(n==null||n==="python"){let a=ml(this.cellId),o=ol({state:t,names:new Set(a.keys())});for(let i of o){let s=a.get(i.name);s&&e.push({pos:i.to,kind:s,name:i.name})}if(this.includeCache)for(let i of ul(t))e.push({pos:i.to,kind:"cache",name:`cache:${i.from}`,cache:{boundName:i.boundName,cacheName:i.cacheName}})}queueMicrotask(()=>{this.view.dispatch({effects:or.of(e)})})}},rn="3px",_l=R.baseTheme({".mo-code-lens":{display:"inline-flex",verticalAlign:"baseline",transform:"translateY(1.5px)",padding:rn,margin:`-${rn} 0 -${rn} calc(0.3em - ${rn})`,cursor:"pointer",opacity:"0.5"},".mo-code-lens:hover":{opacity:"1"}});function Ul(t,e=!0){return e?[Ll,lr,nn,ze.define(n=>new Ol(n,t,vi("cache_panel"))),_l]:[]}var jl=["%alias","%cd","%clear","%debug","%env","%load","%load_ext","%lsmagic","%matplotlib","%pwd","%who_ls","%system","%%time","%%timeit","%%writefile","%%capture","%%html","%%latex"],cr;function Pl(){let t=async r=>{let a=J.get(Xr),{saveUserConfig:o}=Xi();await o({config:{runtime:{auto_reload:r}}}).then(()=>J.set(Xr,{...a,runtime:{...a.runtime,auto_reload:r}}))},e=[{match:"!pip install",onMatch:()=>{J.set(Rr,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),oa()},title:"Package Installation",description:(0,h.jsxs)(h.Fragment,{children:["The package manager sidebar has been opened.",(0,h.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"!uv pip install",onMatch:()=>{J.set(Rr,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),oa()},title:"Package Installation",description:(0,h.jsxs)(h.Fragment,{children:["The package manager sidebar has been opened.",(0,h.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"!uv add",onMatch:()=>{J.set(Rr,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),oa()},title:"Package Installation",description:(0,h.jsxs)(h.Fragment,{children:["The package manager sidebar has been opened.",(0,h.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"%autoreload 2",onMatch:async()=>{await t("autorun")},title:"Module reload",description:(0,h.jsxs)(h.Fragment,{children:["Module reload mode set to ",(0,h.jsx)("b",{children:"autorun"})," - module changes will re-run the cells that import them."]})},{match:"%autoreload 1",onMatch:async()=>{await t("lazy")},title:"Module reload",description:(0,h.jsxs)(h.Fragment,{children:["Module reload mode set to ",(0,h.jsx)("b",{children:"lazy"})," - module changes will mark the cells that import them as stale."]})},{match:"%autoreload 0",onMatch:async()=>{await t("off")},title:"Module reload",description:(0,h.jsx)(h.Fragment,{children:"Module reload disabled - module changes will not be detected."})},{match:"!ls",onMatch:()=>{},title:"Listing files",description:(0,h.jsxs)(h.Fragment,{children:["Shell commands are not directly supported.",(0,h.jsx)("br",{}),"Use ",(0,h.jsx)("code",{children:"import subprocess; subprocess.run(['ls'])"})," instead."]})},...jl.map(r=>({match:r,onMatch:()=>{},title:(0,h.jsx)(Th,{className:"inline",children:r}),description:(0,h.jsxs)(h.Fragment,{children:["Magic commands are not supported in marimo. Read more about replacements in the"," ",(0,h.jsx)("a",{href:"https://docs.marimo.io/guides/coming_from/jupyter/#adapting-to-the-absence-of-magic-commands",target:"_blank",className:"text-link underline cursor-pointer",rel:"noopener noreferrer",children:"documentation"}),"."]})}))],n=new Map(e.map(r=>[r.match,r]));return R.updateListener.of(r=>{if(r.docChanged){let a=r.state.selection.main,o=r.state.doc,i=o.lineAt(a.head),s=o.sliceString(i.from,a.anchor).trim(),c=n.get(s);c&&(c.onMatch(),cr?cr.upsert({title:c.title,description:c.description}):cr=kt({title:c.title,description:c.description}))}})}var Ta=new Set(["Escape","Alt-`"]);function Dl(t,e=Ta){return t.filter(n=>![n.key,n.mac,n.linux,n.win].some(r=>e.has(r)))}function Ml(t=!0){let e=new Set(Ta);t||e.add("Enter");let n=Dl(Jp,e);return mt.highest(He.of([...n,{key:"Ctrl-y",run:r=>Rn(r)?Yi(r):!1},{key:"Ctrl-n",run:r=>Rn(r)?qn(!0)(r):!1},{key:"Ctrl-p",run:r=>Rn(r)?qn(!1)(r):!1}]))}const ur=ce.define(),dr=ce.define(),fr=ce.define();function z(t,e){if(!t)throw Error(e)}var Fl=3402823466385289e23,Rl=-3402823466385289e23,Bl=4294967295,Gl=2147483647,Jl=-2147483648;function an(t){if(typeof t!="number")throw Error("invalid int 32: "+typeof t);if(!Number.isInteger(t)||t>Gl||t<Jl)throw Error("invalid int 32: "+t)}function mr(t){if(typeof t!="number")throw Error("invalid uint 32: "+typeof t);if(!Number.isInteger(t)||t>Bl||t<0)throw Error("invalid uint 32: "+t)}function Na(t){if(typeof t!="number")throw Error("invalid float 32: "+typeof t);if(Number.isFinite(t)&&(t>Fl||t<Rl))throw Error("invalid float 32: "+t)}var Ia=Symbol("@bufbuild/protobuf/enum-type");function Vl(t){let e=t[Ia];return z(e,"missing enum type on enum object"),e}function Aa(t,e,n,r){t[Ia]=La(e,n.map(a=>({no:a.no,name:a.name,localName:t[a.no]})),r)}function La(t,e,n){let r=Object.create(null),a=Object.create(null),o=[];for(let i of e){let s=Oa(i);o.push(s),r[i.name]=s,a[i.no]=s}return{typeName:t,values:o,findName(i){return r[i]},findNumber(i){return a[i]}}}function $l(t,e,n){let r={};for(let a of e){let o=Oa(a);r[o.localName]=o.no,r[o.no]=o.localName}return Aa(r,t,e,n),r}function Oa(t){return"localName"in t?t:Object.assign(Object.assign({},t),{localName:t.name})}var X=class{equals(t){return this.getType().runtime.util.equals(this.getType(),this,t)}clone(){return this.getType().runtime.util.clone(this)}fromBinary(t,e){let n=this.getType().runtime.bin,r=n.makeReadOptions(e);return n.readMessage(this,r.readerFactory(t),t.byteLength,r),this}fromJson(t,e){let n=this.getType(),r=n.runtime.json,a=r.makeReadOptions(e);return r.readMessage(n,t,a,this),this}fromJsonString(t,e){let n;try{n=JSON.parse(t)}catch(r){throw Error(`cannot decode ${this.getType().typeName} from JSON: ${r instanceof Error?r.message:String(r)}`)}return this.fromJson(n,e)}toBinary(t){let e=this.getType().runtime.bin,n=e.makeWriteOptions(t),r=n.writerFactory();return e.writeMessage(this,r,n),r.finish()}toJson(t){let e=this.getType().runtime.json,n=e.makeWriteOptions(t);return e.writeMessage(this,n)}toJsonString(t){let e=this.toJson(t);return JSON.stringify(e,null,(t==null?void 0:t.prettySpaces)??0)}toJSON(){return this.toJson({emitDefaultValues:!0})}getType(){return Object.getPrototypeOf(this).constructor}};function Wl(t,e,n,r){let a=(r==null?void 0:r.localName)??e.substring(e.lastIndexOf(".")+1),o={[a]:function(i){t.util.initFields(this),t.util.initPartial(i,this)}}[a];return Object.setPrototypeOf(o.prototype,new X),Object.assign(o,{runtime:t,typeName:e,fields:t.util.newFieldList(n),fromBinary(i,s){return new o().fromBinary(i,s)},fromJson(i,s){return new o().fromJson(i,s)},fromJsonString(i,s){return new o().fromJsonString(i,s)},equals(i,s){return t.util.equals(o,i,s)}}),o}function ql(){let t=0,e=0;for(let r=0;r<28;r+=7){let a=this.buf[this.pos++];if(t|=(a&127)<<r,!(a&128))return this.assertBounds(),[t,e]}let n=this.buf[this.pos++];if(t|=(n&15)<<28,e=(n&112)>>4,!(n&128))return this.assertBounds(),[t,e];for(let r=3;r<=31;r+=7){let a=this.buf[this.pos++];if(e|=(a&127)<<r,!(a&128))return this.assertBounds(),[t,e]}throw Error("invalid varint")}function pr(t,e,n){for(let o=0;o<28;o+=7){let i=t>>>o,s=!(!(i>>>7)&&e==0),c=(s?i|128:i)&255;if(n.push(c),!s)return}let r=t>>>28&15|(e&7)<<4,a=!!(e>>3);if(n.push((a?r|128:r)&255),a){for(let o=3;o<31;o+=7){let i=e>>>o,s=!!(i>>>7),c=(s?i|128:i)&255;if(n.push(c),!s)return}n.push(e>>>31&1)}}var on=4294967296;function _a(t){let e=t[0]==="-";e&&(t=t.slice(1));let n=1e6,r=0,a=0;function o(i,s){let c=Number(t.slice(i,s));a*=n,r=r*n+c,r>=on&&(a+=r/on|0,r%=on)}return o(-24,-18),o(-18,-12),o(-12,-6),o(-6),e?ja(r,a):hr(r,a)}function Hl(t,e){let n=hr(t,e),r=n.hi&2147483648;r&&(n=ja(n.lo,n.hi));let a=Ua(n.lo,n.hi);return r?"-"+a:a}function Ua(t,e){if({lo:t,hi:e}=zl(t,e),e<=2097151)return String(on*e+t);let n=t&16777215,r=(t>>>24|e<<8)&16777215,a=e>>16&65535,o=n+r*6777216+a*6710656,i=r+a*8147497,s=a*2,c=1e7;return o>=c&&(i+=Math.floor(o/c),o%=c),i>=c&&(s+=Math.floor(i/c),i%=c),s.toString()+Pa(i)+Pa(o)}function zl(t,e){return{lo:t>>>0,hi:e>>>0}}function hr(t,e){return{lo:t|0,hi:e|0}}function ja(t,e){return e=~e,t?t=~t+1:e+=1,hr(t,e)}var Pa=t=>{let e=String(t);return"0000000".slice(e.length)+e};function Da(t,e){if(t>=0){for(;t>127;)e.push(t&127|128),t>>>=7;e.push(t)}else{for(let n=0;n<9;n++)e.push(t&127|128),t>>=7;e.push(1)}}function Yl(){let t=this.buf[this.pos++],e=t&127;if(!(t&128)||(t=this.buf[this.pos++],e|=(t&127)<<7,!(t&128))||(t=this.buf[this.pos++],e|=(t&127)<<14,!(t&128))||(t=this.buf[this.pos++],e|=(t&127)<<21,!(t&128)))return this.assertBounds(),e;t=this.buf[this.pos++],e|=(t&15)<<28;for(let n=5;t&128&&n<10;n++)t=this.buf[this.pos++];if(t&128)throw Error("invalid varint");return this.assertBounds(),e>>>0}function Kl(){let t=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof t.getBigInt64=="function"&&typeof t.getBigUint64=="function"&&typeof t.setBigInt64=="function"&&typeof t.setBigUint64=="function"&&(typeof process!="object"||{}.BUF_BIGINT_DISABLE!=="1")){let r=BigInt("-9223372036854775808"),a=BigInt("9223372036854775807"),o=BigInt("0"),i=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(s){let c=typeof s=="bigint"?s:BigInt(s);if(c>a||c<r)throw Error(`int64 invalid: ${s}`);return c},uParse(s){let c=typeof s=="bigint"?s:BigInt(s);if(c>i||c<o)throw Error(`uint64 invalid: ${s}`);return c},enc(s){return t.setBigInt64(0,this.parse(s),!0),{lo:t.getInt32(0,!0),hi:t.getInt32(4,!0)}},uEnc(s){return t.setBigInt64(0,this.uParse(s),!0),{lo:t.getInt32(0,!0),hi:t.getInt32(4,!0)}},dec(s,c){return t.setInt32(0,s,!0),t.setInt32(4,c,!0),t.getBigInt64(0,!0)},uDec(s,c){return t.setInt32(0,s,!0),t.setInt32(4,c,!0),t.getBigUint64(0,!0)}}}let e=r=>z(/^-?[0-9]+$/.test(r),`int64 invalid: ${r}`),n=r=>z(/^[0-9]+$/.test(r),`uint64 invalid: ${r}`);return{zero:"0",supported:!1,parse(r){return typeof r!="string"&&(r=r.toString()),e(r),r},uParse(r){return typeof r!="string"&&(r=r.toString()),n(r),r},enc(r){return typeof r!="string"&&(r=r.toString()),e(r),_a(r)},uEnc(r){return typeof r!="string"&&(r=r.toString()),n(r),_a(r)},dec(r,a){return Hl(r,a)},uDec(r,a){return Ua(r,a)}}}const W=Kl();var w;(function(t){t[t.DOUBLE=1]="DOUBLE",t[t.FLOAT=2]="FLOAT",t[t.INT64=3]="INT64",t[t.UINT64=4]="UINT64",t[t.INT32=5]="INT32",t[t.FIXED64=6]="FIXED64",t[t.FIXED32=7]="FIXED32",t[t.BOOL=8]="BOOL",t[t.STRING=9]="STRING",t[t.BYTES=12]="BYTES",t[t.UINT32=13]="UINT32",t[t.SFIXED32=15]="SFIXED32",t[t.SFIXED64=16]="SFIXED64",t[t.SINT32=17]="SINT32",t[t.SINT64=18]="SINT64"})(w||(w={}));var st;(function(t){t[t.BIGINT=0]="BIGINT",t[t.STRING=1]="STRING"})(st||(st={}));function et(t,e,n){if(e===n)return!0;if(t==w.BYTES){if(!(e instanceof Uint8Array)||!(n instanceof Uint8Array)||e.length!==n.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==n[r])return!1;return!0}switch(t){case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return e==n}return!1}function gt(t,e){switch(t){case w.BOOL:return!1;case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return e==0?W.zero:"0";case w.DOUBLE:case w.FLOAT:return 0;case w.BYTES:return new Uint8Array;case w.STRING:return"";default:return 0}}function Ma(t,e){switch(t){case w.BOOL:return e===!1;case w.STRING:return e==="";case w.BYTES:return e instanceof Uint8Array&&!e.byteLength;default:return e==0}}var Z;(function(t){t[t.Varint=0]="Varint",t[t.Bit64=1]="Bit64",t[t.LengthDelimited=2]="LengthDelimited",t[t.StartGroup=3]="StartGroup",t[t.EndGroup=4]="EndGroup",t[t.Bit32=5]="Bit32"})(Z||(Z={}));var Xl=class{constructor(t){this.stack=[],this.textEncoder=t??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let t=0;for(let r=0;r<this.chunks.length;r++)t+=this.chunks[r].length;let e=new Uint8Array(t),n=0;for(let r=0;r<this.chunks.length;r++)e.set(this.chunks[r],n),n+=this.chunks[r].length;return this.chunks=[],e}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let t=this.finish(),e=this.stack.pop();if(!e)throw Error("invalid state, fork stack empty");return this.chunks=e.chunks,this.buf=e.buf,this.uint32(t.byteLength),this.raw(t)}tag(t,e){return this.uint32((t<<3|e)>>>0)}raw(t){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(t),this}uint32(t){for(mr(t);t>127;)this.buf.push(t&127|128),t>>>=7;return this.buf.push(t),this}int32(t){return an(t),Da(t,this.buf),this}bool(t){return this.buf.push(t?1:0),this}bytes(t){return this.uint32(t.byteLength),this.raw(t)}string(t){let e=this.textEncoder.encode(t);return this.uint32(e.byteLength),this.raw(e)}float(t){Na(t);let e=new Uint8Array(4);return new DataView(e.buffer).setFloat32(0,t,!0),this.raw(e)}double(t){let e=new Uint8Array(8);return new DataView(e.buffer).setFloat64(0,t,!0),this.raw(e)}fixed32(t){mr(t);let e=new Uint8Array(4);return new DataView(e.buffer).setUint32(0,t,!0),this.raw(e)}sfixed32(t){an(t);let e=new Uint8Array(4);return new DataView(e.buffer).setInt32(0,t,!0),this.raw(e)}sint32(t){return an(t),t=(t<<1^t>>31)>>>0,Da(t,this.buf),this}sfixed64(t){let e=new Uint8Array(8),n=new DataView(e.buffer),r=W.enc(t);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(e)}fixed64(t){let e=new Uint8Array(8),n=new DataView(e.buffer),r=W.uEnc(t);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(e)}int64(t){let e=W.enc(t);return pr(e.lo,e.hi,this.buf),this}sint64(t){let e=W.enc(t),n=e.hi>>31;return pr(e.lo<<1^n,(e.hi<<1|e.lo>>>31)^n,this.buf),this}uint64(t){let e=W.uEnc(t);return pr(e.lo,e.hi,this.buf),this}},Ql=class{constructor(t,e){this.varint64=ql,this.uint32=Yl,this.buf=t,this.len=t.length,this.pos=0,this.view=new DataView(t.buffer,t.byteOffset,t.byteLength),this.textDecoder=e??new TextDecoder}tag(){let t=this.uint32(),e=t>>>3,n=t&7;if(e<=0||n<0||n>5)throw Error("illegal tag: field no "+e+" wire type "+n);return[e,n]}skip(t,e){let n=this.pos;switch(t){case Z.Varint:for(;this.buf[this.pos++]&128;);break;case Z.Bit64:this.pos+=4;case Z.Bit32:this.pos+=4;break;case Z.LengthDelimited:let r=this.uint32();this.pos+=r;break;case Z.StartGroup:for(;;){let[a,o]=this.tag();if(o===Z.EndGroup){if(e!==void 0&&a!==e)throw Error("invalid end group tag");break}this.skip(o,a)}break;default:throw Error("cant skip wire type "+t)}return this.assertBounds(),this.buf.subarray(n,this.pos)}assertBounds(){if(this.pos>this.len)throw RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)}int64(){return W.dec(...this.varint64())}uint64(){return W.uDec(...this.varint64())}sint64(){let[t,e]=this.varint64(),n=-(t&1);return t=(t>>>1|(e&1)<<31)^n,e=e>>>1^n,W.dec(t,e)}bool(){let[t,e]=this.varint64();return t!==0||e!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return W.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return W.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let t=this.uint32(),e=this.pos;return this.pos+=t,this.assertBounds(),this.buf.subarray(e,e+t)}string(){return this.textDecoder.decode(this.bytes())}};function Zl(t,e,n,r){let a;return{typeName:e,extendee:n,get field(){if(!a){let o=typeof r=="function"?r():r;o.name=e.split(".").pop(),o.jsonName=`[${e}]`,a=t.util.newFieldList([o]).list()[0]}return a},runtime:t}}function Fa(t){let e=t.field.localName,n=Object.create(null);return n[e]=ec(t),[n,()=>n[e]]}function ec(t){let e=t.field;if(e.repeated)return[];if(e.default!==void 0)return e.default;switch(e.kind){case"enum":return e.T.values[0].no;case"scalar":return gt(e.T,e.L);case"message":let n=e.T,r=new n;return n.fieldWrapper?n.fieldWrapper.unwrapField(r):r;case"map":throw"map fields are not allowed to be extensions"}}function tc(t,e){if(!e.repeated&&(e.kind=="enum"||e.kind=="scalar")){for(let n=t.length-1;n>=0;--n)if(t[n].no==e.no)return[t[n]];return[]}return t.filter(n=>n.no===e.no)}var Xe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),sn=[];for(let t=0;t<Xe.length;t++)sn[Xe[t].charCodeAt(0)]=t;sn[45]=Xe.indexOf("+"),sn[95]=Xe.indexOf("/");const ln={dec(t){let e=t.length*3/4;t[t.length-2]=="="?e-=2:t[t.length-1]=="="&&--e;let n=new Uint8Array(e),r=0,a=0,o,i=0;for(let s=0;s<t.length;s++){if(o=sn[t.charCodeAt(s)],o===void 0)switch(t[s]){case"=":a=0;case`
13
- `:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(a){case 0:i=o,a=1;break;case 1:n[r++]=i<<2|(o&48)>>4,i=o,a=2;break;case 2:n[r++]=(i&15)<<4|(o&60)>>2,i=o,a=3;break;case 3:n[r++]=(i&3)<<6|o,a=0;break}}if(a==1)throw Error("invalid base64 string.");return n.subarray(0,r)},enc(t){let e="",n=0,r,a=0;for(let o=0;o<t.length;o++)switch(r=t[o],n){case 0:e+=Xe[r>>2],a=(r&3)<<4,n=1;break;case 1:e+=Xe[a|r>>4],a=(r&15)<<2,n=2;break;case 2:e+=Xe[a|r>>6],e+=Xe[r&63],n=0;break}return n&&(e+=Xe[a],e+="=",n==1&&(e+="=")),e}};function nc(t,e,n){Ba(e,t);let r=e.runtime.bin.makeReadOptions(n),a=tc(t.getType().runtime.bin.listUnknownFields(t),e.field),[o,i]=Fa(e);for(let s of a)e.runtime.bin.readField(o,r.readerFactory(s.data),e.field,s.wireType,r);return i()}function rc(t,e,n,r){Ba(e,t);let a=e.runtime.bin.makeReadOptions(r),o=e.runtime.bin.makeWriteOptions(r);if(Ra(t,e)){let l=t.getType().runtime.bin.listUnknownFields(t).filter(u=>u.no!=e.field.no);t.getType().runtime.bin.discardUnknownFields(t);for(let u of l)t.getType().runtime.bin.onUnknownField(t,u.no,u.wireType,u.data)}let i=o.writerFactory(),s=e.field;!s.opt&&!s.repeated&&(s.kind=="enum"||s.kind=="scalar")&&(s=Object.assign(Object.assign({},e.field),{opt:!0})),e.runtime.bin.writeField(s,n,i,o);let c=a.readerFactory(i.finish());for(;c.pos<c.len;){let[l,u]=c.tag(),d=c.skip(u,l);t.getType().runtime.bin.onUnknownField(t,l,u,d)}}function Ra(t,e){let n=t.getType();return e.extendee.typeName===n.typeName&&!!n.runtime.bin.listUnknownFields(t).find(r=>r.no==e.field.no)}function Ba(t,e){z(t.extendee.typeName==e.getType().typeName,`extension ${t.typeName} can only be applied to message ${t.extendee.typeName}`)}function Ga(t,e){let n=t.localName;if(t.repeated)return e[n].length>0;if(t.oneof)return e[t.oneof.localName].case===n;switch(t.kind){case"enum":case"scalar":return t.opt||t.req?e[n]!==void 0:t.kind=="enum"?e[n]!==t.T.values[0].no:!Ma(t.T,e[n]);case"message":return e[n]!==void 0;case"map":return Object.keys(e[n]).length>0}}function Ja(t,e){let n=t.localName,r=!t.opt&&!t.req;if(t.repeated)e[n]=[];else if(t.oneof)e[t.oneof.localName]={case:void 0};else switch(t.kind){case"map":e[n]={};break;case"enum":e[n]=r?t.T.values[0].no:void 0;break;case"scalar":e[n]=r?gt(t.T,t.L):void 0;break;case"message":e[n]=void 0;break}}function Qe(t,e){if(typeof t!="object"||!t||!Object.getOwnPropertyNames(X.prototype).every(r=>r in t&&typeof t[r]=="function"))return!1;let n=t.getType();return n===null||typeof n!="function"||!("typeName"in n)||typeof n.typeName!="string"?!1:e===void 0?!0:n.typeName==e.typeName}function Va(t,e){return Qe(e)||!t.fieldWrapper?e:t.fieldWrapper.wrapField(e)}w.DOUBLE,w.FLOAT,w.INT64,w.UINT64,w.INT32,w.UINT32,w.BOOL,w.STRING,w.BYTES;var $a={ignoreUnknownFields:!1},Wa={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0};function ac(t){return t?Object.assign(Object.assign({},$a),t):$a}function oc(t){return t?Object.assign(Object.assign({},Wa),t):Wa}var cn=Symbol(),un=Symbol();function ic(){return{makeReadOptions:ac,makeWriteOptions:oc,readMessage(t,e,n,r){if(e==null||Array.isArray(e)||typeof e!="object")throw Error(`cannot decode message ${t.typeName} from JSON: ${Ye(e)}`);r??(r=new t);let a=new Map,o=n.typeRegistry;for(let[i,s]of Object.entries(e)){let c=t.fields.findJsonName(i);if(c){if(c.oneof){if(s===null&&c.kind=="scalar")continue;let l=a.get(c.oneof);if(l!==void 0)throw Error(`cannot decode message ${t.typeName} from JSON: multiple keys for oneof "${c.oneof.name}" present: "${l}", "${i}"`);a.set(c.oneof,i)}qa(r,s,c,n,t)}else{let l=!1;if(o!=null&&o.findExtension&&i.startsWith("[")&&i.endsWith("]")){let u=o.findExtension(i.substring(1,i.length-1));if(u&&u.extendee.typeName==t.typeName){l=!0;let[d,p]=Fa(u);qa(d,s,u.field,n,u),rc(r,u,p(),n)}}if(!l&&!n.ignoreUnknownFields)throw Error(`cannot decode message ${t.typeName} from JSON: key "${i}" is unknown`)}}return r},writeMessage(t,e){let n=t.getType(),r={},a;try{for(a of n.fields.byNumber()){if(!Ga(a,t)){if(a.req)throw"required field not set";if(!e.emitDefaultValues||!lc(a))continue}let i=a.oneof?t[a.oneof.localName].value:t[a.localName],s=Ha(a,i,e);s!==void 0&&(r[e.useProtoFieldName?a.name:a.jsonName]=s)}let o=e.typeRegistry;if(o!=null&&o.findExtensionFor)for(let i of n.runtime.bin.listUnknownFields(t)){let s=o.findExtensionFor(n.typeName,i.no);if(s&&Ra(t,s)){let c=nc(t,s,e),l=Ha(s.field,c,e);l!==void 0&&(r[s.field.jsonName]=l)}}}catch(o){let i=a?`cannot encode field ${n.typeName}.${a.name} to JSON`:`cannot encode message ${n.typeName} to JSON`,s=o instanceof Error?o.message:String(o);throw Error(i+(s.length>0?`: ${s}`:""))}return r},readScalar(t,e,n){return Ut(t,e,n??st.BIGINT,!0)},writeScalar(t,e,n){if(e!==void 0&&(n||Ma(t,e)))return dn(t,e)},debug:Ye}}function Ye(t){if(t===null)return"null";switch(typeof t){case"object":return Array.isArray(t)?"array":"object";case"string":return t.length>100?"string":`"${t.split('"').join('\\"')}"`;default:return String(t)}}function qa(t,e,n,r,a){let o=n.localName;if(n.repeated){if(z(n.kind!="map"),e===null)return;if(!Array.isArray(e))throw Error(`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`);let i=t[o];for(let s of e){if(s===null)throw Error(`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(s)}`);switch(n.kind){case"message":i.push(n.T.fromJson(s,r));break;case"enum":let c=gr(n.T,s,r.ignoreUnknownFields,!0);c!==un&&i.push(c);break;case"scalar":try{i.push(Ut(n.T,s,n.L,!0))}catch(l){let u=`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(s)}`;throw l instanceof Error&&l.message.length>0&&(u+=`: ${l.message}`),Error(u)}break}}}else if(n.kind=="map"){if(e===null)return;if(typeof e!="object"||Array.isArray(e))throw Error(`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`);let i=t[o];for(let[s,c]of Object.entries(e)){if(c===null)throw Error(`cannot decode field ${a.typeName}.${n.name} from JSON: map value null`);let l;try{l=sc(n.K,s)}catch(u){let d=`cannot decode map key for field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`;throw u instanceof Error&&u.message.length>0&&(d+=`: ${u.message}`),Error(d)}switch(n.V.kind){case"message":i[l]=n.V.T.fromJson(c,r);break;case"enum":let u=gr(n.V.T,c,r.ignoreUnknownFields,!0);u!==un&&(i[l]=u);break;case"scalar":try{i[l]=Ut(n.V.T,c,st.BIGINT,!0)}catch(d){let p=`cannot decode map value for field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`;throw d instanceof Error&&d.message.length>0&&(p+=`: ${d.message}`),Error(p)}break}}}else switch(n.oneof&&(t=t[n.oneof.localName]={case:o},o="value"),n.kind){case"message":let i=n.T;if(e===null&&i.typeName!="google.protobuf.Value")return;let s=t[o];Qe(s)?s.fromJson(e,r):(t[o]=s=i.fromJson(e,r),i.fieldWrapper&&!n.oneof&&(t[o]=i.fieldWrapper.unwrapField(s)));break;case"enum":let c=gr(n.T,e,r.ignoreUnknownFields,!1);switch(c){case cn:Ja(n,t);break;case un:break;default:t[o]=c;break}break;case"scalar":try{let l=Ut(n.T,e,n.L,!1);l===cn?Ja(n,t):t[o]=l}catch(l){let u=`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`;throw l instanceof Error&&l.message.length>0&&(u+=`: ${l.message}`),Error(u)}break}}function sc(t,e){if(t===w.BOOL)switch(e){case"true":e=!0;break;case"false":e=!1;break}return Ut(t,e,st.BIGINT,!0).toString()}function Ut(t,e,n,r){if(e===null)return r?gt(t,n):cn;switch(t){case w.DOUBLE:case w.FLOAT:if(e==="NaN")return NaN;if(e==="Infinity")return 1/0;if(e==="-Infinity")return-1/0;if(e===""||typeof e=="string"&&e.trim().length!==e.length||typeof e!="string"&&typeof e!="number")break;let a=Number(e);if(Number.isNaN(a)||!Number.isFinite(a))break;return t==w.FLOAT&&Na(a),a;case w.INT32:case w.FIXED32:case w.SFIXED32:case w.SINT32:case w.UINT32:let o;if(typeof e=="number"?o=e:typeof e=="string"&&e.length>0&&e.trim().length===e.length&&(o=Number(e)),o===void 0)break;return t==w.UINT32||t==w.FIXED32?mr(o):an(o),o;case w.INT64:case w.SFIXED64:case w.SINT64:if(typeof e!="number"&&typeof e!="string")break;let i=W.parse(e);return n?i.toString():i;case w.FIXED64:case w.UINT64:if(typeof e!="number"&&typeof e!="string")break;let s=W.uParse(e);return n?s.toString():s;case w.BOOL:if(typeof e!="boolean")break;return e;case w.STRING:if(typeof e!="string")break;return e;case w.BYTES:if(e==="")return new Uint8Array;if(typeof e!="string")break;return ln.dec(e)}throw Error()}function gr(t,e,n,r){if(e===null)return t.typeName=="google.protobuf.NullValue"?0:r?t.values[0].no:cn;switch(typeof e){case"number":if(Number.isInteger(e))return e;break;case"string":let a=t.findName(e);if(a!==void 0)return a.no;if(n)return un;break}throw Error(`cannot decode enum ${t.typeName} from JSON: ${Ye(e)}`)}function lc(t){return t.repeated||t.kind=="map"?!0:!(t.oneof||t.kind=="message"||t.opt||t.req)}function Ha(t,e,n){if(t.kind=="map"){z(typeof e=="object"&&!!e);let r={},a=Object.entries(e);switch(t.V.kind){case"scalar":for(let[i,s]of a)r[i.toString()]=dn(t.V.T,s);break;case"message":for(let[i,s]of a)r[i.toString()]=s.toJson(n);break;case"enum":let o=t.V.T;for(let[i,s]of a)r[i.toString()]=yr(o,s,n.enumAsInteger);break}return n.emitDefaultValues||a.length>0?r:void 0}if(t.repeated){z(Array.isArray(e));let r=[];switch(t.kind){case"scalar":for(let a=0;a<e.length;a++)r.push(dn(t.T,e[a]));break;case"enum":for(let a=0;a<e.length;a++)r.push(yr(t.T,e[a],n.enumAsInteger));break;case"message":for(let a=0;a<e.length;a++)r.push(e[a].toJson(n));break}return n.emitDefaultValues||r.length>0?r:void 0}switch(t.kind){case"scalar":return dn(t.T,e);case"enum":return yr(t.T,e,n.enumAsInteger);case"message":return Va(t.T,e).toJson(n)}}function yr(t,e,n){var r;return z(typeof e=="number"),t.typeName=="google.protobuf.NullValue"?null:n?e:((r=t.findNumber(e))==null?void 0:r.name)??e}function dn(t,e){switch(t){case w.INT32:case w.SFIXED32:case w.SINT32:case w.FIXED32:case w.UINT32:return z(typeof e=="number"),e;case w.FLOAT:case w.DOUBLE:return z(typeof e=="number"),Number.isNaN(e)?"NaN":e===1/0?"Infinity":e===-1/0?"-Infinity":e;case w.STRING:return z(typeof e=="string"),e;case w.BOOL:return z(typeof e=="boolean"),e;case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return z(typeof e=="bigint"||typeof e=="string"||typeof e=="number"),e.toString();case w.BYTES:return z(e instanceof Uint8Array),ln.enc(e)}}var yt=Symbol("@bufbuild/protobuf/unknown-fields"),za={readUnknownFields:!0,readerFactory:t=>new Ql(t)},Ya={writeUnknownFields:!0,writerFactory:()=>new Xl};function cc(t){return t?Object.assign(Object.assign({},za),t):za}function uc(t){return t?Object.assign(Object.assign({},Ya),t):Ya}function dc(){return{makeReadOptions:cc,makeWriteOptions:uc,listUnknownFields(t){return t[yt]??[]},discardUnknownFields(t){delete t[yt]},writeUnknownFields(t,e){let n=t[yt];if(n)for(let r of n)e.tag(r.no,r.wireType).raw(r.data)},onUnknownField(t,e,n,r){let a=t;Array.isArray(a[yt])||(a[yt]=[]),a[yt].push({no:e,wireType:n,data:r})},readMessage(t,e,n,r,a){let o=t.getType(),i=a?e.len:e.pos+n,s,c;for(;e.pos<i&&([s,c]=e.tag(),!(a===!0&&c==Z.EndGroup));){let l=o.fields.find(s);if(!l){let u=e.skip(c,s);r.readUnknownFields&&this.onUnknownField(t,s,c,u);continue}Ka(t,e,l,c,r)}if(a&&(c!=Z.EndGroup||s!==n))throw Error("invalid end group tag")},readField:Ka,writeMessage(t,e,n){let r=t.getType();for(let a of r.fields.byNumber()){if(!Ga(a,t)){if(a.req)throw Error(`cannot encode field ${r.typeName}.${a.name} to binary: required field not set`);continue}Xa(a,a.oneof?t[a.oneof.localName].value:t[a.localName],e,n)}return n.writeUnknownFields&&this.writeUnknownFields(t,e),e},writeField(t,e,n,r){e!==void 0&&Xa(t,e,n,r)}}}function Ka(t,e,n,r,a){let{repeated:o,localName:i}=n;switch(n.oneof&&(t=t[n.oneof.localName],t.case!=i&&delete t.value,t.case=i,i="value"),n.kind){case"scalar":case"enum":let s=n.kind=="enum"?w.INT32:n.T,c=mn;if(n.kind=="scalar"&&n.L>0&&(c=mc),o){let p=t[i];if(r==Z.LengthDelimited&&s!=w.STRING&&s!=w.BYTES){let f=e.uint32()+e.pos;for(;e.pos<f;)p.push(c(e,s))}else p.push(c(e,s))}else t[i]=c(e,s);break;case"message":let l=n.T;o?t[i].push(fn(e,new l,a,n)):Qe(t[i])?fn(e,t[i],a,n):(t[i]=fn(e,new l,a,n),l.fieldWrapper&&!n.oneof&&!n.repeated&&(t[i]=l.fieldWrapper.unwrapField(t[i])));break;case"map":let[u,d]=fc(n,e,a);t[i][u]=d;break}}function fn(t,e,n,r){let a=e.getType().runtime.bin,o=r==null?void 0:r.delimited;return a.readMessage(e,t,o?r.no:t.uint32(),n,o),e}function fc(t,e,n){let r=e.uint32(),a=e.pos+r,o,i;for(;e.pos<a;){let[s]=e.tag();switch(s){case 1:o=mn(e,t.K);break;case 2:switch(t.V.kind){case"scalar":i=mn(e,t.V.T);break;case"enum":i=e.int32();break;case"message":i=fn(e,new t.V.T,n,void 0);break}break}}if(o===void 0&&(o=gt(t.K,st.BIGINT)),typeof o!="string"&&typeof o!="number"&&(o=o.toString()),i===void 0)switch(t.V.kind){case"scalar":i=gt(t.V.T,st.BIGINT);break;case"enum":i=t.V.T.values[0].no;break;case"message":i=new t.V.T;break}return[o,i]}function mc(t,e){let n=mn(t,e);return typeof n=="bigint"?n.toString():n}function mn(t,e){switch(e){case w.STRING:return t.string();case w.BOOL:return t.bool();case w.DOUBLE:return t.double();case w.FLOAT:return t.float();case w.INT32:return t.int32();case w.INT64:return t.int64();case w.UINT64:return t.uint64();case w.FIXED64:return t.fixed64();case w.BYTES:return t.bytes();case w.FIXED32:return t.fixed32();case w.SFIXED32:return t.sfixed32();case w.SFIXED64:return t.sfixed64();case w.SINT64:return t.sint64();case w.UINT32:return t.uint32();case w.SINT32:return t.sint32()}}function Xa(t,e,n,r){z(e!==void 0);let a=t.repeated;switch(t.kind){case"scalar":case"enum":let o=t.kind=="enum"?w.INT32:t.T;if(a)if(z(Array.isArray(e)),t.packed)hc(n,o,t.no,e);else for(let i of e)jt(n,o,t.no,i);else jt(n,o,t.no,e);break;case"message":if(a){z(Array.isArray(e));for(let i of e)Qa(n,r,t,i)}else Qa(n,r,t,e);break;case"map":z(typeof e=="object"&&!!e);for(let[i,s]of Object.entries(e))pc(n,r,t,i,s);break}}function pc(t,e,n,r,a){t.tag(n.no,Z.LengthDelimited),t.fork();let o=r;switch(n.K){case w.INT32:case w.FIXED32:case w.UINT32:case w.SFIXED32:case w.SINT32:o=Number.parseInt(r);break;case w.BOOL:z(r=="true"||r=="false"),o=r=="true";break}switch(jt(t,n.K,1,o),n.V.kind){case"scalar":jt(t,n.V.T,2,a);break;case"enum":jt(t,w.INT32,2,a);break;case"message":z(a!==void 0),t.tag(2,Z.LengthDelimited).bytes(a.toBinary(e));break}t.join()}function Qa(t,e,n,r){let a=Va(n.T,r);n.delimited?t.tag(n.no,Z.StartGroup).raw(a.toBinary(e)).tag(n.no,Z.EndGroup):t.tag(n.no,Z.LengthDelimited).bytes(a.toBinary(e))}function jt(t,e,n,r){z(r!==void 0);let[a,o]=Za(e);t.tag(n,a)[o](r)}function hc(t,e,n,r){if(!r.length)return;t.tag(n,Z.LengthDelimited).fork();let[,a]=Za(e);for(let o=0;o<r.length;o++)t[a](r[o]);t.join()}function Za(t){let e=Z.Varint;switch(t){case w.BYTES:case w.STRING:e=Z.LengthDelimited;break;case w.DOUBLE:case w.FIXED64:case w.SFIXED64:e=Z.Bit64;break;case w.FIXED32:case w.SFIXED32:case w.FLOAT:e=Z.Bit32;break}let n=w[t].toLowerCase();return[e,n]}function gc(){return{setEnumType:Aa,initPartial(t,e){if(t===void 0)return;let n=e.getType();for(let r of n.fields.byMember()){let a=r.localName,o=e,i=t;if(i[a]!=null)switch(r.kind){case"oneof":let s=i[a].case;if(s===void 0)continue;let c=r.findField(s),l=i[a].value;c&&c.kind=="message"&&!Qe(l,c.T)?l=new c.T(l):c&&c.kind==="scalar"&&c.T===w.BYTES&&(l=Pt(l)),o[a]={case:s,value:l};break;case"scalar":case"enum":let u=i[a];r.T===w.BYTES&&(u=r.repeated?u.map(Pt):Pt(u)),o[a]=u;break;case"map":switch(r.V.kind){case"scalar":case"enum":if(r.V.T===w.BYTES)for(let[f,m]of Object.entries(i[a]))o[a][f]=Pt(m);else Object.assign(o[a],i[a]);break;case"message":let p=r.V.T;for(let f of Object.keys(i[a])){let m=i[a][f];p.fieldWrapper||(m=new p(m)),o[a][f]=m}break}break;case"message":let d=r.T;if(r.repeated)o[a]=i[a].map(p=>Qe(p,d)?p:new d(p));else{let p=i[a];d.fieldWrapper?d.typeName==="google.protobuf.BytesValue"?o[a]=Pt(p):o[a]=p:o[a]=Qe(p,d)?p:new d(p)}break}}},equals(t,e,n){return e===n?!0:!e||!n?!1:t.fields.byMember().every(r=>{let a=e[r.localName],o=n[r.localName];if(r.repeated){if(a.length!==o.length)return!1;switch(r.kind){case"message":return a.every((i,s)=>r.T.equals(i,o[s]));case"scalar":return a.every((i,s)=>et(r.T,i,o[s]));case"enum":return a.every((i,s)=>et(w.INT32,i,o[s]))}throw Error(`repeated cannot contain ${r.kind}`)}switch(r.kind){case"message":let i=a,s=o;return r.T.fieldWrapper&&(i!==void 0&&!Qe(i)&&(i=r.T.fieldWrapper.wrapField(i)),s!==void 0&&!Qe(s)&&(s=r.T.fieldWrapper.wrapField(s))),r.T.equals(i,s);case"enum":return et(w.INT32,a,o);case"scalar":return et(r.T,a,o);case"oneof":if(a.case!==o.case)return!1;let c=r.findField(a.case);if(c===void 0)return!0;switch(c.kind){case"message":return c.T.equals(a.value,o.value);case"enum":return et(w.INT32,a.value,o.value);case"scalar":return et(c.T,a.value,o.value)}throw Error(`oneof cannot contain ${c.kind}`);case"map":let l=Object.keys(a).concat(Object.keys(o));switch(r.V.kind){case"message":let u=r.V.T;return l.every(p=>u.equals(a[p],o[p]));case"enum":return l.every(p=>et(w.INT32,a[p],o[p]));case"scalar":let d=r.V.T;return l.every(p=>et(d,a[p],o[p]))}break}})},clone(t){let e=t.getType(),n=new e,r=n;for(let a of e.fields.byMember()){let o=t[a.localName],i;if(a.repeated)i=o.map(pn);else if(a.kind=="map"){i=r[a.localName];for(let[s,c]of Object.entries(o))i[s]=pn(c)}else i=a.kind=="oneof"?a.findField(o.case)?{case:o.case,value:pn(o.value)}:{case:void 0}:pn(o);r[a.localName]=i}for(let a of e.runtime.bin.listUnknownFields(t))e.runtime.bin.onUnknownField(r,a.no,a.wireType,a.data);return n}}}function pn(t){if(t===void 0)return t;if(Qe(t))return t.clone();if(t instanceof Uint8Array){let e=new Uint8Array(t.byteLength);return e.set(t),e}return t}function Pt(t){return t instanceof Uint8Array?t:new Uint8Array(t)}function yc(t,e,n){return{syntax:t,json:ic(),bin:dc(),util:Object.assign(Object.assign({},gc()),{newFieldList:e,initFields:n}),makeMessageType(r,a,o){return Wl(this,r,a,o)},makeEnum:$l,makeEnumType:La,getEnumType:Vl,makeExtension(r,a,o){return Zl(this,r,a,o)}}}var bc=class{constructor(t,e){this._fields=t,this._normalizer=e}findJsonName(t){if(!this.jsonNames){let e={};for(let n of this.list())e[n.jsonName]=e[n.name]=n;this.jsonNames=e}return this.jsonNames[t]}find(t){if(!this.numbers){let e={};for(let n of this.list())e[n.no]=n;this.numbers=e}return this.numbers[t]}list(){return this.all||(this.all=this._normalizer(this._fields)),this.all}byNumber(){return this.numbersAsc||(this.numbersAsc=this.list().concat().sort((t,e)=>t.no-e.no)),this.numbersAsc}byMember(){if(!this.members){this.members=[];let t=this.members,e;for(let n of this.list())n.oneof?n.oneof!==e&&(e=n.oneof,t.push(e)):t.push(n)}return this.members}};function eo(t,e){let n=to(t);return e?n:kc(Sc(n))}function wc(t){return eo(t,!1)}const vc=to;function to(t){let e=!1,n=[];for(let r=0;r<t.length;r++){let a=t.charAt(r);switch(a){case"_":e=!0;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":n.push(a),e=!1;break;default:e&&(e=!1,a=a.toUpperCase()),n.push(a);break}}return n.join("")}var xc=new Set(["constructor","toString","toJSON","valueOf"]),Ec=new Set(["getType","clone","equals","fromBinary","fromJson","fromJsonString","toBinary","toJson","toJsonString","toObject"]),no=t=>`${t}$`,Sc=t=>Ec.has(t)?no(t):t;const kc=t=>xc.has(t)?no(t):t;var Cc=class{constructor(t){this.kind="oneof",this.repeated=!1,this.packed=!1,this.opt=!1,this.req=!1,this.default=void 0,this.fields=[],this.name=t,this.localName=wc(t)}addField(t){z(t.oneof===this,`field ${t.name} not one of ${this.name}`),this.fields.push(t)}findField(t){if(!this._lookup){this._lookup=Object.create(null);for(let e=0;e<this.fields.length;e++)this._lookup[this.fields[e].localName]=this.fields[e]}return this._lookup[t]}};function Tc(t,e){let n=[],r;for(let a of typeof t=="function"?t():t){let o=a;if(o.localName=eo(a.name,a.oneof!==void 0),o.jsonName=a.jsonName??vc(a.name),o.repeated=a.repeated??!1,a.kind=="scalar"&&(o.L=a.L??st.BIGINT),o.delimited=a.delimited??!1,o.req=a.req??!1,o.opt=a.opt??!1,a.packed===void 0&&(e?o.packed=a.kind=="enum"||a.kind=="scalar"&&a.T!=w.BYTES&&a.T!=w.STRING:o.packed=!1),a.oneof!==void 0){let i=typeof a.oneof=="string"?a.oneof:a.oneof.name;(!r||r.name!=i)&&(r=new Cc(i)),o.oneof=r,r.addField(o)}n.push(o)}return n}const x=yc("proto3",t=>new bc(t,e=>Tc(e,!0)),t=>{for(let e of t.getType().fields.byMember()){if(e.opt)continue;let n=e.localName,r=t;if(e.repeated){r[n]=[];continue}switch(e.kind){case"oneof":r[n]={case:void 0};break;case"enum":r[n]=0;break;case"map":r[n]={};break;case"scalar":r[n]=gt(e.T,e.L);break;case"message":break}}});var Ee;(function(t){t[t.Unary=0]="Unary",t[t.ServerStreaming=1]="ServerStreaming",t[t.ClientStreaming=2]="ClientStreaming",t[t.BiDiStreaming=3]="BiDiStreaming"})(Ee||(Ee={}));var ro;(function(t){t[t.NoSideEffects=1]="NoSideEffects",t[t.Idempotent=2]="Idempotent"})(ro||(ro={}));var br;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.JUPYTER_FORMAT=77]="JUPYTER_FORMAT"})(br||(br={})),x.util.setEnumType(br,"exa.codeium_common_pb.ExperimentKey",[{no:0,name:"UNSPECIFIED"},{no:77,name:"JUPYTER_FORMAT"}]);var hn;(function(t){t[t.CODEIUM=0]="CODEIUM"})(hn||(hn={})),x.util.setEnumType(hn,"exa.codeium_common_pb.AuthSource",[{no:0,name:"AUTH_SOURCE_CODEIUM"}]);var gn;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.ENABLE_CODEIUM=1]="ENABLE_CODEIUM",t[t.DISABLE_CODEIUM=2]="DISABLE_CODEIUM",t[t.SHOW_PREVIOUS_COMPLETION=3]="SHOW_PREVIOUS_COMPLETION",t[t.SHOW_NEXT_COMPLETION=4]="SHOW_NEXT_COMPLETION"})(gn||(gn={})),x.util.setEnumType(gn,"exa.codeium_common_pb.EventType",[{no:0,name:"EVENT_TYPE_UNSPECIFIED"},{no:1,name:"EVENT_TYPE_ENABLE_CODEIUM"},{no:2,name:"EVENT_TYPE_DISABLE_CODEIUM"},{no:3,name:"EVENT_TYPE_SHOW_PREVIOUS_COMPLETION"},{no:4,name:"EVENT_TYPE_SHOW_NEXT_COMPLETION"}]);var yn;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.TYPING_AS_SUGGESTED=1]="TYPING_AS_SUGGESTED",t[t.CACHE=2]="CACHE",t[t.NETWORK=3]="NETWORK"})(yn||(yn={})),x.util.setEnumType(yn,"exa.codeium_common_pb.CompletionSource",[{no:0,name:"COMPLETION_SOURCE_UNSPECIFIED"},{no:1,name:"COMPLETION_SOURCE_TYPING_AS_SUGGESTED"},{no:2,name:"COMPLETION_SOURCE_CACHE"},{no:3,name:"COMPLETION_SOURCE_NETWORK"}]);var lt;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.C=1]="C",t[t.CLOJURE=2]="CLOJURE",t[t.COFFEESCRIPT=3]="COFFEESCRIPT",t[t.CPP=4]="CPP",t[t.CSHARP=5]="CSHARP",t[t.CSS=6]="CSS",t[t.CUDACPP=7]="CUDACPP",t[t.DOCKERFILE=8]="DOCKERFILE",t[t.GO=9]="GO",t[t.GROOVY=10]="GROOVY",t[t.HANDLEBARS=11]="HANDLEBARS",t[t.HASKELL=12]="HASKELL",t[t.HCL=13]="HCL",t[t.HTML=14]="HTML",t[t.INI=15]="INI",t[t.JAVA=16]="JAVA",t[t.JAVASCRIPT=17]="JAVASCRIPT",t[t.JSON=18]="JSON",t[t.JULIA=19]="JULIA",t[t.KOTLIN=20]="KOTLIN",t[t.LATEX=21]="LATEX",t[t.LESS=22]="LESS",t[t.LUA=23]="LUA",t[t.MAKEFILE=24]="MAKEFILE",t[t.MARKDOWN=25]="MARKDOWN",t[t.OBJECTIVEC=26]="OBJECTIVEC",t[t.OBJECTIVECPP=27]="OBJECTIVECPP",t[t.PERL=28]="PERL",t[t.PHP=29]="PHP",t[t.PLAINTEXT=30]="PLAINTEXT",t[t.PROTOBUF=31]="PROTOBUF",t[t.PBTXT=32]="PBTXT",t[t.PYTHON=33]="PYTHON",t[t.R=34]="R",t[t.RUBY=35]="RUBY",t[t.RUST=36]="RUST",t[t.SASS=37]="SASS",t[t.SCALA=38]="SCALA",t[t.SCSS=39]="SCSS",t[t.SHELL=40]="SHELL",t[t.SQL=41]="SQL",t[t.STARLARK=42]="STARLARK",t[t.SWIFT=43]="SWIFT",t[t.TSX=44]="TSX",t[t.TYPESCRIPT=45]="TYPESCRIPT",t[t.VISUALBASIC=46]="VISUALBASIC",t[t.VUE=47]="VUE",t[t.XML=48]="XML",t[t.XSL=49]="XSL",t[t.YAML=50]="YAML",t[t.SVELTE=51]="SVELTE",t[t.TOML=52]="TOML",t[t.DART=53]="DART",t[t.RST=54]="RST",t[t.OCAML=55]="OCAML",t[t.CMAKE=56]="CMAKE",t[t.PASCAL=57]="PASCAL",t[t.ELIXIR=58]="ELIXIR",t[t.FSHARP=59]="FSHARP",t[t.LISP=60]="LISP",t[t.MATLAB=61]="MATLAB",t[t.POWERSHELL=62]="POWERSHELL",t[t.SOLIDITY=63]="SOLIDITY",t[t.ADA=64]="ADA",t[t.OCAML_INTERFACE=65]="OCAML_INTERFACE"})(lt||(lt={})),x.util.setEnumType(lt,"exa.codeium_common_pb.Language",[{no:0,name:"LANGUAGE_UNSPECIFIED"},{no:1,name:"LANGUAGE_C"},{no:2,name:"LANGUAGE_CLOJURE"},{no:3,name:"LANGUAGE_COFFEESCRIPT"},{no:4,name:"LANGUAGE_CPP"},{no:5,name:"LANGUAGE_CSHARP"},{no:6,name:"LANGUAGE_CSS"},{no:7,name:"LANGUAGE_CUDACPP"},{no:8,name:"LANGUAGE_DOCKERFILE"},{no:9,name:"LANGUAGE_GO"},{no:10,name:"LANGUAGE_GROOVY"},{no:11,name:"LANGUAGE_HANDLEBARS"},{no:12,name:"LANGUAGE_HASKELL"},{no:13,name:"LANGUAGE_HCL"},{no:14,name:"LANGUAGE_HTML"},{no:15,name:"LANGUAGE_INI"},{no:16,name:"LANGUAGE_JAVA"},{no:17,name:"LANGUAGE_JAVASCRIPT"},{no:18,name:"LANGUAGE_JSON"},{no:19,name:"LANGUAGE_JULIA"},{no:20,name:"LANGUAGE_KOTLIN"},{no:21,name:"LANGUAGE_LATEX"},{no:22,name:"LANGUAGE_LESS"},{no:23,name:"LANGUAGE_LUA"},{no:24,name:"LANGUAGE_MAKEFILE"},{no:25,name:"LANGUAGE_MARKDOWN"},{no:26,name:"LANGUAGE_OBJECTIVEC"},{no:27,name:"LANGUAGE_OBJECTIVECPP"},{no:28,name:"LANGUAGE_PERL"},{no:29,name:"LANGUAGE_PHP"},{no:30,name:"LANGUAGE_PLAINTEXT"},{no:31,name:"LANGUAGE_PROTOBUF"},{no:32,name:"LANGUAGE_PBTXT"},{no:33,name:"LANGUAGE_PYTHON"},{no:34,name:"LANGUAGE_R"},{no:35,name:"LANGUAGE_RUBY"},{no:36,name:"LANGUAGE_RUST"},{no:37,name:"LANGUAGE_SASS"},{no:38,name:"LANGUAGE_SCALA"},{no:39,name:"LANGUAGE_SCSS"},{no:40,name:"LANGUAGE_SHELL"},{no:41,name:"LANGUAGE_SQL"},{no:42,name:"LANGUAGE_STARLARK"},{no:43,name:"LANGUAGE_SWIFT"},{no:44,name:"LANGUAGE_TSX"},{no:45,name:"LANGUAGE_TYPESCRIPT"},{no:46,name:"LANGUAGE_VISUALBASIC"},{no:47,name:"LANGUAGE_VUE"},{no:48,name:"LANGUAGE_XML"},{no:49,name:"LANGUAGE_XSL"},{no:50,name:"LANGUAGE_YAML"},{no:51,name:"LANGUAGE_SVELTE"},{no:52,name:"LANGUAGE_TOML"},{no:53,name:"LANGUAGE_DART"},{no:54,name:"LANGUAGE_RST"},{no:55,name:"LANGUAGE_OCAML"},{no:56,name:"LANGUAGE_CMAKE"},{no:57,name:"LANGUAGE_PASCAL"},{no:58,name:"LANGUAGE_ELIXIR"},{no:59,name:"LANGUAGE_FSHARP"},{no:60,name:"LANGUAGE_LISP"},{no:61,name:"LANGUAGE_MATLAB"},{no:62,name:"LANGUAGE_POWERSHELL"},{no:63,name:"LANGUAGE_SOLIDITY"},{no:64,name:"LANGUAGE_ADA"},{no:65,name:"LANGUAGE_OCAML_INTERFACE"}]);var Nc=(Se=class extends X{constructor(n){super();g(this,"completionId","");g(this,"text","");g(this,"prefix","");g(this,"stop","");g(this,"score",0);g(this,"tokens",[]);g(this,"decodedTokens",[]);g(this,"probabilities",[]);g(this,"adjustedProbabilities",[]);g(this,"generatedLength",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new Se().fromBinary(n,r)}static fromJson(n,r){return new Se().fromJson(n,r)}static fromJsonString(n,r){return new Se().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Se,n,r)}},g(Se,"runtime",x),g(Se,"typeName","exa.codeium_common_pb.Completion"),g(Se,"fields",x.util.newFieldList(()=>[{no:1,name:"completion_id",kind:"scalar",T:9},{no:2,name:"text",kind:"scalar",T:9},{no:3,name:"prefix",kind:"scalar",T:9},{no:4,name:"stop",kind:"scalar",T:9},{no:5,name:"score",kind:"scalar",T:1},{no:6,name:"tokens",kind:"scalar",T:4,repeated:!0},{no:7,name:"decoded_tokens",kind:"scalar",T:9,repeated:!0},{no:8,name:"probabilities",kind:"scalar",T:1,repeated:!0},{no:9,name:"adjusted_probabilities",kind:"scalar",T:1,repeated:!0},{no:10,name:"generated_length",kind:"scalar",T:4}])),Se),ao=(ke=class extends X{constructor(n){super();g(this,"ideName","");g(this,"ideVersion","");g(this,"extensionName","");g(this,"extensionVersion","");g(this,"apiKey","");g(this,"locale","");g(this,"sessionId","");g(this,"requestId",W.zero);g(this,"userAgent","");g(this,"url","");g(this,"authSource",hn.CODEIUM);x.util.initPartial(n,this)}static fromBinary(n,r){return new ke().fromBinary(n,r)}static fromJson(n,r){return new ke().fromJson(n,r)}static fromJsonString(n,r){return new ke().fromJsonString(n,r)}static equals(n,r){return x.util.equals(ke,n,r)}},g(ke,"runtime",x),g(ke,"typeName","exa.codeium_common_pb.Metadata"),g(ke,"fields",x.util.newFieldList(()=>[{no:1,name:"ide_name",kind:"scalar",T:9},{no:7,name:"ide_version",kind:"scalar",T:9},{no:12,name:"extension_name",kind:"scalar",T:9},{no:2,name:"extension_version",kind:"scalar",T:9},{no:3,name:"api_key",kind:"scalar",T:9},{no:4,name:"locale",kind:"scalar",T:9},{no:10,name:"session_id",kind:"scalar",T:9},{no:9,name:"request_id",kind:"scalar",T:4},{no:13,name:"user_agent",kind:"scalar",T:9},{no:14,name:"url",kind:"scalar",T:9},{no:15,name:"auth_source",kind:"enum",T:x.getEnumType(hn)}])),ke),Ic=(Ce=class extends X{constructor(n){super();g(this,"tabSize",W.zero);g(this,"insertSpaces",!1);x.util.initPartial(n,this)}static fromBinary(n,r){return new Ce().fromBinary(n,r)}static fromJson(n,r){return new Ce().fromJson(n,r)}static fromJsonString(n,r){return new Ce().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ce,n,r)}},g(Ce,"runtime",x),g(Ce,"typeName","exa.codeium_common_pb.EditorOptions"),g(Ce,"fields",x.util.newFieldList(()=>[{no:1,name:"tab_size",kind:"scalar",T:4},{no:2,name:"insert_spaces",kind:"scalar",T:8}])),Ce);Te=class extends X{constructor(n){super();g(this,"eventType",gn.UNSPECIFIED);g(this,"eventJson","");g(this,"timestampUnixMs",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new Te().fromBinary(n,r)}static fromJson(n,r){return new Te().fromJson(n,r)}static fromJsonString(n,r){return new Te().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Te,n,r)}},g(Te,"runtime",x),g(Te,"typeName","exa.codeium_common_pb.Event"),g(Te,"fields",x.util.newFieldList(()=>[{no:1,name:"event_type",kind:"enum",T:x.getEnumType(gn)},{no:2,name:"event_json",kind:"scalar",T:9},{no:3,name:"timestamp_unix_ms",kind:"scalar",T:3}]));var Ac=class extends $t{constructor(e,n){super();g(this,"index");g(this,"total");this.index=e,this.total=n}toDOM(){let e=document.createElement("span");e.setAttribute("aria-hidden","true"),e.className="cm-codeium-cycle";let n=e.appendChild(document.createElement("span"));n.className="cm-codeium-cycle-explanation",n.innerText=`${this.index+1}/${this.total}`;let r=e.appendChild(document.createElement("button"));return r.className="cm-codeium-cycle-key",r.innerText="\u2192 (Ctrl ])",r.dataset.action="codeium-cycle",e}ignoreEvent(){return!1}};const bn=Vt.define({combine(t){return Wn(t,{language:lt.TYPESCRIPT,timeout:150,widgetClass:Ac,alwaysOn:!0},{})}}),oo=Vt.define({combine(t){return Wn(t,{override:()=>[]},{})}});var Lc=V.mark({class:"cm-ghostText"});const ct=We.define({create(t){return null},update(t,e){var r;let n=e.state.facet(bn);for(let a of e.effects){if(a.is(ur)){let{changeSpecs:o,index:i}=a.value,s=o[i].map(l=>Lc.range(l.absoluteStartPos,l.absoluteEndPos)),c=(r=s.at(-1))==null?void 0:r.to;return{index:i,decorations:V.set([...s,...c!==void 0&&o.length>1&&n.widgetClass?[V.widget({widget:new n.widgetClass(i,o.length),side:1}).range(c)]:[]]),changeSpecs:o,reverseChangeSet:a.value.reverseChangeSet}}if(a.is(dr)||a.is(fr))return null}return t&&{...t,decorations:t.decorations.map(e.changes),reverseChangeSet:t.reverseChangeSet.map(e.changes)}},provide:t=>R.decorations.from(t,e=>(e==null?void 0:e.decorations)||V.none)}),bt=ea.define(),wn=ea.define();var B;(function(t){t[t.Canceled=1]="Canceled",t[t.Unknown=2]="Unknown",t[t.InvalidArgument=3]="InvalidArgument",t[t.DeadlineExceeded=4]="DeadlineExceeded",t[t.NotFound=5]="NotFound",t[t.AlreadyExists=6]="AlreadyExists",t[t.PermissionDenied=7]="PermissionDenied",t[t.ResourceExhausted=8]="ResourceExhausted",t[t.FailedPrecondition=9]="FailedPrecondition",t[t.Aborted=10]="Aborted",t[t.OutOfRange=11]="OutOfRange",t[t.Unimplemented=12]="Unimplemented",t[t.Internal=13]="Internal",t[t.Unavailable=14]="Unavailable",t[t.DataLoss=15]="DataLoss",t[t.Unauthenticated=16]="Unauthenticated"})(B||(B={}));function wr(t){let e=B[t];return typeof e=="string"?e[0].toLowerCase()+e.substring(1).replace(/[A-Z]/g,n=>"_"+n.toLowerCase()):t.toString()}var vn;function Oc(t){if(!vn){vn={};for(let e of Object.values(B))typeof e!="string"&&(vn[wr(e)]=e)}return vn[t]}var ge=class Nt extends Error{constructor(e,n=B.Unknown,r,a,o){super(_c(e,n)),this.name="ConnectError",Object.setPrototypeOf(this,new.target.prototype),this.rawMessage=e,this.code=n,this.metadata=new Headers(r??{}),this.details=a??[],this.cause=o}static from(e,n=B.Unknown){return e instanceof Nt?e:e instanceof Error?e.name=="AbortError"?new Nt(e.message,B.Canceled):new Nt(e.message,n,void 0,void 0,e):new Nt(String(e),n,void 0,void 0,e)}static[Symbol.hasInstance](e){return e instanceof Error?Object.getPrototypeOf(e)===Nt.prototype?!0:e.name==="ConnectError"&&"code"in e&&typeof e.code=="number"&&"metadata"in e&&"details"in e&&Array.isArray(e.details)&&"rawMessage"in e&&typeof e.rawMessage=="string"&&"cause"in e:!1}findDetails(e){let n="typeName"in e?{findMessage:a=>a===e.typeName?e:void 0}:e,r=[];for(let a of this.details){if("getType"in a){n.findMessage(a.getType().typeName)&&r.push(a);continue}let o=n.findMessage(a.type);if(o)try{r.push(o.fromBinary(a.value))}catch{}}return r}};function _c(t,e){return t.length?`[${wr(e)}] ${t}`:`[${wr(e)}]`}function Uc(...t){let e=new Headers;for(let n of t)n.forEach((r,a)=>{e.append(a,r)});return e}function jc(t,e){let n={};for(let[r,a]of Object.entries(t.methods)){let o=e(Object.assign(Object.assign({},a),{localName:r,service:t}));o!=null&&(n[r]=o)}return n}function Pc(t){let e,n=new Uint8Array;function r(a){let o=new Uint8Array(n.length+a.length);o.set(n),o.set(a,n.length),n=o}return new ReadableStream({start(){e=t.getReader()},async pull(a){let o;for(;;){if(o===void 0&&n.byteLength>=5){let c=0;for(let l=1;l<5;l++)c=(c<<8)+n[l];o={flags:n[0],length:c}}if(o!==void 0&&n.byteLength>=o.length+5)break;let s=await e.read();if(s.done)break;r(s.value)}if(o===void 0){if(n.byteLength==0){a.close();return}a.error(new ge("premature end of stream",B.DataLoss));return}let i=n.subarray(5,5+o.length);n=n.subarray(5+o.length),a.enqueue({flags:o.flags,data:i})}})}function Dc(t,e){let n=new Uint8Array(e.length+5);n.set(e,5);let r=new DataView(n.buffer,n.byteOffset,n.byteLength);return r.setUint8(0,t),r.setUint32(1,e.length),n}var Mc=function(t){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=t[o]&&function(i){return new Promise(function(s,c){i=t[o](i),a(s,c,i.done,i.value)})}}function a(o,i,s,c){Promise.resolve(c).then(function(l){o({value:l,done:s})},i)}},Dt=function(t){return this instanceof Dt?(this.v=t,this):new Dt(t)},Fc=function(t,e,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),a,o=[];return a={},s("next"),s("throw"),s("return",i),a[Symbol.asyncIterator]=function(){return this},a;function i(f){return function(m){return Promise.resolve(m).then(f,d)}}function s(f,m){r[f]&&(a[f]=function(y){return new Promise(function(b,v){o.push([f,y,b,v])>1||c(f,y)})},m&&(a[f]=m(a[f])))}function c(f,m){try{l(r[f](m))}catch(y){p(o[0][3],y)}}function l(f){f.value instanceof Dt?Promise.resolve(f.value.v).then(u,d):p(o[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function p(f,m){f(m),o.shift(),o.length&&c(o[0][0],o[0][1])}},Rc=function(t){var e,n;return e={},r("next"),r("throw",function(a){throw a}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(a,o){e[a]=t[a]?function(i){return(n=!n)?{value:Dt(t[a](i)),done:!1}:o?o(i):i}:o}};function Bc(t){return Fc(this,arguments,function*(){yield Dt(yield*Rc(Mc(t)))})}var io=function(t){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=t[o]&&function(i){return new Promise(function(s,c){i=t[o](i),a(s,c,i.done,i.value)})}}function a(o,i,s,c){Promise.resolve(c).then(function(l){o({value:l,done:s})},i)}},wt=function(t){return this instanceof wt?(this.v=t,this):new wt(t)},Gc=function(t){var e,n;return e={},r("next"),r("throw",function(a){throw a}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(a,o){e[a]=t[a]?function(i){return(n=!n)?{value:wt(t[a](i)),done:!1}:o?o(i):i}:o}},Jc=function(t,e,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),a,o=[];return a={},s("next"),s("throw"),s("return",i),a[Symbol.asyncIterator]=function(){return this},a;function i(f){return function(m){return Promise.resolve(m).then(f,d)}}function s(f,m){r[f]&&(a[f]=function(y){return new Promise(function(b,v){o.push([f,y,b,v])>1||c(f,y)})},m&&(a[f]=m(a[f])))}function c(f,m){try{l(r[f](m))}catch(y){p(o[0][3],y)}}function l(f){f.value instanceof wt?Promise.resolve(f.value.v).then(u,d):p(o[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function p(f,m){f(m),o.shift(),o.length&&c(o[0][0],o[0][1])}};function Vc(t,e){return jc(t,n=>{switch(n.kind){case Ee.Unary:return Wc(e,t,n);case Ee.ServerStreaming:return qc(e,t,n);case Ee.ClientStreaming:return Hc(e,t,n);case Ee.BiDiStreaming:return zc(e,t,n);default:return null}})}function $c(t,e){return Vc(t,e)}function Wc(t,e,n){return async function(r,a){var o,i;let s=await t.unary(e,n,a==null?void 0:a.signal,a==null?void 0:a.timeoutMs,a==null?void 0:a.headers,r,a==null?void 0:a.contextValues);return(o=a==null?void 0:a.onHeader)==null||o.call(a,s.header),(i=a==null?void 0:a.onTrailer)==null||i.call(a,s.trailer),s.message}}function qc(t,e,n){return function(r,a){return so(t.stream(e,n,a==null?void 0:a.signal,a==null?void 0:a.timeoutMs,a==null?void 0:a.headers,Bc([r]),a==null?void 0:a.contextValues),a)}}function Hc(t,e,n){return async function(r,a){var o,i,s,c,l,u;let d=await t.stream(e,n,a==null?void 0:a.signal,a==null?void 0:a.timeoutMs,a==null?void 0:a.headers,r,a==null?void 0:a.contextValues);(l=a==null?void 0:a.onHeader)==null||l.call(a,d.header);let p,f=0;try{for(var m=!0,y=io(d.message),b;b=await y.next(),o=b.done,!o;m=!0)c=b.value,m=!1,p=c,f++}catch(v){i={error:v}}finally{try{!m&&!o&&(s=y.return)&&await s.call(y)}finally{if(i)throw i.error}}if(!p)throw new ge("protocol error: missing response message",B.Unimplemented);if(f>1)throw new ge("protocol error: received extra messages for client streaming method",B.Unimplemented);return(u=a==null?void 0:a.onTrailer)==null||u.call(a,d.trailer),p}}function zc(t,e,n){return function(r,a){return so(t.stream(e,n,a==null?void 0:a.signal,a==null?void 0:a.timeoutMs,a==null?void 0:a.headers,r,a==null?void 0:a.contextValues),a)}}function so(t,e){let n=(function(){return Jc(this,arguments,function*(){var r,a;let o=yield wt(t);(r=e==null?void 0:e.onHeader)==null||r.call(e,o.header),yield wt(yield*Gc(io(o.message))),(a=e==null?void 0:e.onTrailer)==null||a.call(e,o.trailer)})})()[Symbol.asyncIterator]();return{[Symbol.asyncIterator]:()=>({next:()=>n.next()})}}function Yc(...t){let e=new AbortController,n=t.filter(a=>a!==void 0).concat(e.signal);for(let a of n){if(a.aborted){r.apply(a);break}a.addEventListener("abort",r)}function r(){e.signal.aborted||e.abort(lo(this));for(let a of n)a.removeEventListener("abort",r)}return e}function Kc(t){let e=new AbortController,n=()=>{e.abort(new ge("the operation timed out",B.DeadlineExceeded))},r;return t!==void 0&&(t<=0?n():r=setTimeout(n,t)),{signal:e.signal,cleanup:()=>clearTimeout(r)}}function lo(t){if(!t.aborted)return;if(t.reason!==void 0)return t.reason;let e=Error("This operation was aborted");return e.name="AbortError",e}function co(){return{get(t){return t.id in this?this[t.id]:t.defaultValue},set(t,e){return this[t.id]=e,this},delete(t){return delete this[t.id],this}}}function uo(t,e,n){let r=typeof e=="string"?e:e.typeName,a=typeof n=="string"?n:n.name;return t.toString().replace(/\/?$/,`/${r}/${a}`)}function fo(t,e){return e instanceof t?e:new t(e)}function Xc(t,e){function n(r){return r.done===!0?r:{done:r.done,value:fo(t,r.value)}}return{[Symbol.asyncIterator](){let r=e[Symbol.asyncIterator](),a={next:()=>r.next().then(n)};return r.throw!==void 0&&(a.throw=o=>r.throw(o).then(n)),r.return!==void 0&&(a.return=o=>r.return(o).then(n)),a}}}function mo(t,e){return(e==null?void 0:e.concat().reverse().reduce((n,r)=>r(n),t))??t}function po(t){let e=Object.assign({},t);return e.ignoreUnknownFields??(e.ignoreUnknownFields=!0),e}function ho(t,e,n,r){let a=e?go(t.I,r):yo(t.I,n);return{parse:(e?go(t.O,r):yo(t.O,n)).parse,serialize:a.serialize}}function go(t,e){return{parse(n){try{return t.fromBinary(n,e)}catch(r){throw new ge(`parse binary: ${r instanceof Error?r.message:String(r)}`,B.Internal)}},serialize(n){try{return n.toBinary(e)}catch(r){throw new ge(`serialize binary: ${r instanceof Error?r.message:String(r)}`,B.Internal)}}}}function yo(t,e){let n=(e==null?void 0:e.textEncoder)??new TextEncoder,r=(e==null?void 0:e.textDecoder)??new TextDecoder,a=po(e);return{parse(o){try{let i=r.decode(o);return t.fromJsonString(i,a)}catch(i){throw ge.from(i,B.InvalidArgument)}},serialize(o){try{let i=o.toJsonString(a);return n.encode(i)}catch(i){throw ge.from(i,B.Internal)}}}}const Qc=/^application\/(connect\+)?(?:(json)(?:; ?charset=utf-?8)?|(proto))$/i;function Zc(t){let e=t==null?void 0:t.match(Qc);if(e)return{stream:!!e[1],binary:!!e[3]}}function bo(t,e,n){if(e&&new Headers(e).forEach((i,s)=>n.metadata.append(s,i)),typeof t!="object"||!t||Array.isArray(t))throw n;let r=n.code;"code"in t&&typeof t.code=="string"&&(r=Oc(t.code)??r);let a=t.message;if(a!=null&&typeof a!="string")throw n;let o=new ge(a??"",r,e);if("details"in t&&Array.isArray(t.details))for(let i of t.details){if(typeof i!="object"||!i||Array.isArray(i)||typeof i.type!="string"||typeof i.value!="string")throw n;try{o.details.push({type:i.type,value:ln.dec(i.value),debug:i.debug})}catch{throw n}}return o}function eu(t){let e=new ge("invalid end stream",B.Unknown),n;try{n=JSON.parse(typeof t=="string"?t:new TextDecoder().decode(t))}catch{throw e}if(typeof n!="object"||!n||Array.isArray(n))throw e;let r=new Headers;if("metadata"in n){if(typeof n.metadata!="object"||n.metadata==null||Array.isArray(n.metadata))throw e;for(let[a,o]of Object.entries(n.metadata)){if(!Array.isArray(o)||o.some(i=>typeof i!="string"))throw e;for(let i of o)r.append(a,i)}}return{metadata:r,error:"error"in n&&n.error!=null?bo(n.error,r,e):void 0}}const xn="Content-Type",wo="Content-Encoding",vo="Connect-Protocol-Version";function tu(t){switch(t){case 400:return B.Internal;case 401:return B.Unauthenticated;case 403:return B.PermissionDenied;case 404:return B.Unimplemented;case 429:return B.Unavailable;case 502:return B.Unavailable;case 503:return B.Unavailable;case 504:return B.Unavailable;default:return B.Unknown}}function xo(t){let e=new Headers,n=new Headers;return t.forEach((r,a)=>{a.toLowerCase().startsWith("trailer-")?n.append(a.substring(8),r):e.append(a,r)}),[e,n]}function Eo(t,e,n,r,a){let o=new Headers(r??{});return n!==void 0&&o.set("Connect-Timeout-Ms",`${n}`),o.set(xn,t==Ee.Unary?e?"application/proto":"application/json":e?"application/connect+proto":"application/connect+json"),o.set(vo,"1"),a&&o.set("User-Agent","connect-es/1.6.1"),o}function So(t,e,n,r){let a=r.get(xn),o=Zc(a);if(n!==200){let s=new ge(`HTTP ${n}`,tu(n),r);if(t==Ee.Unary&&o&&!o.binary)return{isUnaryError:!0,unaryError:s};throw s}let i={binary:e,stream:t!==Ee.Unary};if((o==null?void 0:o.binary)!==i.binary||o.stream!==i.stream)throw new ge(`unsupported content type ${a}`,o===void 0?B.Unknown:B.Internal,r);return{isUnaryError:!1}}var nu="application/";function ru(t,e){return e?ln.enc(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""):encodeURIComponent(new TextDecoder().decode(t))}function au(t,e,n){let r="?connect=v1",a=t.header.get(xn);(a==null?void 0:a.indexOf(nu))===0&&(r+="&encoding="+encodeURIComponent(a.slice(12)));let o=t.header.get(wo);o!==null&&o!=="identity"&&(r+="&compression="+encodeURIComponent(o),n=!0),n&&(r+="&base64=1"),r+="&message="+ru(e,n);let i=t.url+r,s=new Headers(t.header);return[vo,xn,"Content-Length",wo,"Accept-Encoding"].forEach(c=>s.delete(c)),Object.assign(Object.assign({},t),{init:Object.assign(Object.assign({},t.init),{method:"GET"}),url:i,header:s})}function ou(t){let e=mo(t.next,t.interceptors),[n,r,a]=ko(t);return e(Object.assign(Object.assign({},t.req),{message:fo(t.req.method.I,t.req.message),signal:n})).then(o=>(a(),o),r)}function iu(t){let e=mo(t.next,t.interceptors),[n,r,a]=ko(t),o=Object.assign(Object.assign({},t.req),{message:Xc(t.req.method.I,t.req.message),signal:n}),i=!1;return n.addEventListener("abort",function(){var s,c;let l=t.req.message[Symbol.asyncIterator]();i||(s=l.throw)==null||s.call(l,this.reason).catch(()=>{}),(c=l.return)==null||c.call(l).catch(()=>{})}),e(o).then(s=>Object.assign(Object.assign({},s),{message:{[Symbol.asyncIterator](){let c=s.message[Symbol.asyncIterator]();return{next(){return c.next().then(l=>(l.done==1&&(i=!0,a()),l),r)}}}}}),r)}function ko(t){let{signal:e,cleanup:n}=Kc(t.timeoutMs),r=Yc(t.signal,e);return[r.signal,function(a){let o=ge.from(e.aborted?lo(e):a);return r.abort(o),n(),Promise.reject(o)},function(){n(),r.abort()}]}var En;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.INACTIVE=1]="INACTIVE",t[t.PROCESSING=2]="PROCESSING",t[t.SUCCESS=3]="SUCCESS",t[t.WARNING=4]="WARNING",t[t.ERROR=5]="ERROR"})(En||(En={})),x.util.setEnumType(En,"exa.language_server_pb.CodeiumState",[{no:0,name:"CODEIUM_STATE_UNSPECIFIED"},{no:1,name:"CODEIUM_STATE_INACTIVE"},{no:2,name:"CODEIUM_STATE_PROCESSING"},{no:3,name:"CODEIUM_STATE_SUCCESS"},{no:4,name:"CODEIUM_STATE_WARNING"},{no:5,name:"CODEIUM_STATE_ERROR"}]);var Co;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.SINGLE=1]="SINGLE",t[t.MULTI=2]="MULTI"})(Co||(Co={})),x.util.setEnumType(Co,"exa.language_server_pb.LineType",[{no:0,name:"LINE_TYPE_UNSPECIFIED"},{no:1,name:"LINE_TYPE_SINGLE"},{no:2,name:"LINE_TYPE_MULTI"}]);var Sn;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.INLINE=1]="INLINE",t[t.BLOCK=2]="BLOCK",t[t.INLINE_MASK=3]="INLINE_MASK"})(Sn||(Sn={})),x.util.setEnumType(Sn,"exa.language_server_pb.CompletionPartType",[{no:0,name:"COMPLETION_PART_TYPE_UNSPECIFIED"},{no:1,name:"COMPLETION_PART_TYPE_INLINE"},{no:2,name:"COMPLETION_PART_TYPE_BLOCK"},{no:3,name:"COMPLETION_PART_TYPE_INLINE_MASK"}]);var su=(Ne=class extends X{constructor(n){super();g(this,"threshold",0);x.util.initPartial(n,this)}static fromBinary(n,r){return new Ne().fromBinary(n,r)}static fromJson(n,r){return new Ne().fromJson(n,r)}static fromJsonString(n,r){return new Ne().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ne,n,r)}},g(Ne,"runtime",x),g(Ne,"typeName","exa.language_server_pb.MultilineConfig"),g(Ne,"fields",x.util.newFieldList(()=>[{no:1,name:"threshold",kind:"scalar",T:2}])),Ne),lu=(Ie=class extends X{constructor(n){super();g(this,"metadata");g(this,"document");g(this,"editorOptions");g(this,"otherDocuments",[]);g(this,"experimentConfig");g(this,"modelName","");g(this,"multilineConfig");x.util.initPartial(n,this)}static fromBinary(n,r){return new Ie().fromBinary(n,r)}static fromJson(n,r){return new Ie().fromJson(n,r)}static fromJsonString(n,r){return new Ie().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ie,n,r)}},g(Ie,"runtime",x),g(Ie,"typeName","exa.language_server_pb.GetCompletionsRequest"),g(Ie,"fields",x.util.newFieldList(()=>[{no:1,name:"metadata",kind:"message",T:ao},{no:2,name:"document",kind:"message",T:To},{no:3,name:"editor_options",kind:"message",T:Ic},{no:5,name:"other_documents",kind:"message",T:To,repeated:!0},{no:7,name:"experiment_config",kind:"message",T:pu},{no:10,name:"model_name",kind:"scalar",T:9},{no:13,name:"multiline_config",kind:"message",T:su}])),Ie),cu=(Ae=class extends X{constructor(n){super();g(this,"state");g(this,"completionItems",[]);x.util.initPartial(n,this)}static fromBinary(n,r){return new Ae().fromBinary(n,r)}static fromJson(n,r){return new Ae().fromJson(n,r)}static fromJsonString(n,r){return new Ae().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ae,n,r)}},g(Ae,"runtime",x),g(Ae,"typeName","exa.language_server_pb.GetCompletionsResponse"),g(Ae,"fields",x.util.newFieldList(()=>[{no:1,name:"state",kind:"message",T:hu},{no:2,name:"completion_items",kind:"message",T:wu,repeated:!0}])),Ae),uu=(Le=class extends X{constructor(n){super();g(this,"metadata");g(this,"completionId","");x.util.initPartial(n,this)}static fromBinary(n,r){return new Le().fromBinary(n,r)}static fromJson(n,r){return new Le().fromJson(n,r)}static fromJsonString(n,r){return new Le().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Le,n,r)}},g(Le,"runtime",x),g(Le,"typeName","exa.language_server_pb.AcceptCompletionRequest"),g(Le,"fields",x.util.newFieldList(()=>[{no:1,name:"metadata",kind:"message",T:ao},{no:2,name:"completion_id",kind:"scalar",T:9}])),Le),du=(Oe=class extends X{constructor(e){super(),x.util.initPartial(e,this)}static fromBinary(e,n){return new Oe().fromBinary(e,n)}static fromJson(e,n){return new Oe().fromJson(e,n)}static fromJsonString(e,n){return new Oe().fromJsonString(e,n)}static equals(e,n){return x.util.equals(Oe,e,n)}},g(Oe,"runtime",x),g(Oe,"typeName","exa.language_server_pb.AcceptCompletionResponse"),g(Oe,"fields",x.util.newFieldList(()=>[])),Oe),fu=(_e=class extends X{constructor(e){super(),x.util.initPartial(e,this)}static fromBinary(e,n){return new _e().fromBinary(e,n)}static fromJson(e,n){return new _e().fromJson(e,n)}static fromJsonString(e,n){return new _e().fromJsonString(e,n)}static equals(e,n){return x.util.equals(_e,e,n)}},g(_e,"runtime",x),g(_e,"typeName","exa.language_server_pb.GetAuthTokenRequest"),g(_e,"fields",x.util.newFieldList(()=>[])),_e),mu=(Ue=class extends X{constructor(n){super();g(this,"authToken","");g(this,"uuid","");x.util.initPartial(n,this)}static fromBinary(n,r){return new Ue().fromBinary(n,r)}static fromJson(n,r){return new Ue().fromJson(n,r)}static fromJsonString(n,r){return new Ue().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ue,n,r)}},g(Ue,"runtime",x),g(Ue,"typeName","exa.language_server_pb.GetAuthTokenResponse"),g(Ue,"fields",x.util.newFieldList(()=>[{no:1,name:"auth_token",kind:"scalar",T:9},{no:2,name:"uuid",kind:"scalar",T:9}])),Ue),vr=(je=class extends X{constructor(n){super();g(this,"row",W.zero);g(this,"col",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new je().fromBinary(n,r)}static fromJson(n,r){return new je().fromJson(n,r)}static fromJsonString(n,r){return new je().fromJsonString(n,r)}static equals(n,r){return x.util.equals(je,n,r)}},g(je,"runtime",x),g(je,"typeName","exa.language_server_pb.DocumentPosition"),g(je,"fields",x.util.newFieldList(()=>[{no:1,name:"row",kind:"scalar",T:4},{no:2,name:"col",kind:"scalar",T:4}])),je),To=(Pe=class extends X{constructor(n){super();g(this,"absolutePath","");g(this,"relativePath","");g(this,"text","");g(this,"editorLanguage","");g(this,"language",lt.UNSPECIFIED);g(this,"cursorOffset",W.zero);g(this,"cursorPosition");g(this,"lineEnding","");x.util.initPartial(n,this)}static fromBinary(n,r){return new Pe().fromBinary(n,r)}static fromJson(n,r){return new Pe().fromJson(n,r)}static fromJsonString(n,r){return new Pe().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Pe,n,r)}},g(Pe,"runtime",x),g(Pe,"typeName","exa.language_server_pb.Document"),g(Pe,"fields",x.util.newFieldList(()=>[{no:1,name:"absolute_path",kind:"scalar",T:9},{no:2,name:"relative_path",kind:"scalar",T:9},{no:3,name:"text",kind:"scalar",T:9},{no:4,name:"editor_language",kind:"scalar",T:9},{no:5,name:"language",kind:"enum",T:x.getEnumType(lt)},{no:6,name:"cursor_offset",kind:"scalar",T:4},{no:8,name:"cursor_position",kind:"message",T:vr},{no:7,name:"line_ending",kind:"scalar",T:9}])),Pe),pu=(De=class extends X{constructor(n){super();g(this,"forceEnableExperiments",[]);x.util.initPartial(n,this)}static fromBinary(n,r){return new De().fromBinary(n,r)}static fromJson(n,r){return new De().fromJson(n,r)}static fromJsonString(n,r){return new De().fromJsonString(n,r)}static equals(n,r){return x.util.equals(De,n,r)}},g(De,"runtime",x),g(De,"typeName","exa.language_server_pb.ExperimentConfig"),g(De,"fields",x.util.newFieldList(()=>[{no:1,name:"force_enable_experiments",kind:"enum",T:x.getEnumType(br),repeated:!0}])),De),hu=(Me=class extends X{constructor(n){super();g(this,"state",En.UNSPECIFIED);g(this,"message","");x.util.initPartial(n,this)}static fromBinary(n,r){return new Me().fromBinary(n,r)}static fromJson(n,r){return new Me().fromJson(n,r)}static fromJsonString(n,r){return new Me().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Me,n,r)}},g(Me,"runtime",x),g(Me,"typeName","exa.language_server_pb.State"),g(Me,"fields",x.util.newFieldList(()=>[{no:1,name:"state",kind:"enum",T:x.getEnumType(En)},{no:2,name:"message",kind:"scalar",T:9}])),Me),gu=(Fe=class extends X{constructor(n){super();g(this,"startOffset",W.zero);g(this,"endOffset",W.zero);g(this,"startPosition");g(this,"endPosition");x.util.initPartial(n,this)}static fromBinary(n,r){return new Fe().fromBinary(n,r)}static fromJson(n,r){return new Fe().fromJson(n,r)}static fromJsonString(n,r){return new Fe().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Fe,n,r)}},g(Fe,"runtime",x),g(Fe,"typeName","exa.language_server_pb.Range"),g(Fe,"fields",x.util.newFieldList(()=>[{no:1,name:"start_offset",kind:"scalar",T:4},{no:2,name:"end_offset",kind:"scalar",T:4},{no:3,name:"start_position",kind:"message",T:vr},{no:4,name:"end_position",kind:"message",T:vr}])),Fe),yu=(Re=class extends X{constructor(n){super();g(this,"text","");g(this,"deltaCursorOffset",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new Re().fromBinary(n,r)}static fromJson(n,r){return new Re().fromJson(n,r)}static fromJsonString(n,r){return new Re().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Re,n,r)}},g(Re,"runtime",x),g(Re,"typeName","exa.language_server_pb.Suffix"),g(Re,"fields",x.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"delta_cursor_offset",kind:"scalar",T:3}])),Re),bu=(Be=class extends X{constructor(n){super();g(this,"text","");g(this,"offset",W.zero);g(this,"type",Sn.UNSPECIFIED);g(this,"prefix","");g(this,"line",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new Be().fromBinary(n,r)}static fromJson(n,r){return new Be().fromJson(n,r)}static fromJsonString(n,r){return new Be().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Be,n,r)}},g(Be,"runtime",x),g(Be,"typeName","exa.language_server_pb.CompletionPart"),g(Be,"fields",x.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"offset",kind:"scalar",T:4},{no:3,name:"type",kind:"enum",T:x.getEnumType(Sn)},{no:4,name:"prefix",kind:"scalar",T:9},{no:5,name:"line",kind:"scalar",T:4}])),Be),wu=(Ge=class extends X{constructor(n){super();g(this,"completion");g(this,"suffix");g(this,"range");g(this,"source",yn.UNSPECIFIED);g(this,"completionParts",[]);x.util.initPartial(n,this)}static fromBinary(n,r){return new Ge().fromBinary(n,r)}static fromJson(n,r){return new Ge().fromJson(n,r)}static fromJsonString(n,r){return new Ge().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ge,n,r)}},g(Ge,"runtime",x),g(Ge,"typeName","exa.language_server_pb.CompletionItem"),g(Ge,"fields",x.util.newFieldList(()=>[{no:1,name:"completion",kind:"message",T:Nc},{no:5,name:"suffix",kind:"message",T:yu},{no:2,name:"range",kind:"message",T:gu},{no:3,name:"source",kind:"enum",T:x.getEnumType(yn)},{no:8,name:"completion_parts",kind:"message",T:bu,repeated:!0}])),Ge);const vu={typeName:"exa.language_server_pb.LanguageServerService",methods:{getCompletions:{name:"GetCompletions",I:lu,O:cu,kind:Ee.Unary},acceptCompletion:{name:"AcceptCompletion",I:uu,O:du,kind:Ee.Unary},getAuthToken:{name:"GetAuthToken",I:fu,O:mu,kind:Ee.Unary}}};function xu(){try{new Headers}catch{throw Error("connect-web requires the fetch API. Are you running on an old version of Node.js? Node.js is not supported in Connect for Web - please stay tuned for Connect for Node.")}}var Mt=function(t){return this instanceof Mt?(this.v=t,this):new Mt(t)},Eu=function(t,e,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),a,o=[];return a={},s("next"),s("throw"),s("return",i),a[Symbol.asyncIterator]=function(){return this},a;function i(f){return function(m){return Promise.resolve(m).then(f,d)}}function s(f,m){r[f]&&(a[f]=function(y){return new Promise(function(b,v){o.push([f,y,b,v])>1||c(f,y)})},m&&(a[f]=m(a[f])))}function c(f,m){try{l(r[f](m))}catch(y){p(o[0][3],y)}}function l(f){f.value instanceof Mt?Promise.resolve(f.value.v).then(u,d):p(o[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function p(f,m){f(m),o.shift(),o.length&&c(o[0][0],o[0][1])}};function Su(t){xu();let e=t.useBinaryFormat??!1;return{async unary(n,r,a,o,i,s,c){let{serialize:l,parse:u}=ho(r,e,t.jsonOptions,t.binaryOptions);return o=o===void 0?t.defaultTimeoutMs:o<=0?void 0:o,await ou({interceptors:t.interceptors,signal:a,timeoutMs:o,req:{stream:!1,service:n,method:r,url:uo(t.baseUrl,n,r),init:{method:"POST",credentials:t.credentials??"same-origin",redirect:"error",mode:"cors"},header:Eo(r.kind,e,o,i,!1),contextValues:c??co(),message:s},next:async d=>{let p=t.useHttpGet===!0&&r.idempotency===ro.NoSideEffects,f=null;p?d=au(d,l(d.message),e):f=l(d.message);let m=await(t.fetch??globalThis.fetch)(d.url,Object.assign(Object.assign({},d.init),{headers:d.header,signal:d.signal,body:f})),{isUnaryError:y,unaryError:b}=So(r.kind,e,m.status,m.headers);if(y)throw bo(await m.json(),Uc(...xo(m.headers)),b);let[v,S]=xo(m.headers);return{stream:!1,service:n,method:r,header:v,message:e?u(new Uint8Array(await m.arrayBuffer())):r.O.fromJson(await m.json(),po(t.jsonOptions)),trailer:S}}})},async stream(n,r,a,o,i,s,c){let{serialize:l,parse:u}=ho(r,e,t.jsonOptions,t.binaryOptions);function d(f,m,y,b){return Eu(this,arguments,function*(){let v=Pc(f).getReader(),S=!1;for(;;){let k=yield Mt(v.read());if(k.done)break;let{flags:_,data:P}=k.value;if((_&1)==1)throw new ge("protocol error: received unsupported compressed output",B.Internal);if((_&2)==2){S=!0;let A=eu(P);if(A.error){let T=A.error;throw y.forEach((G,M)=>{T.metadata.append(M,G)}),T}A.metadata.forEach((T,G)=>m.set(G,T));continue}yield yield Mt(u(P))}if("throwIfAborted"in b&&b.throwIfAborted(),!S)throw"missing EndStreamResponse"})}async function p(f){if(r.kind!=Ee.ServerStreaming)throw"The fetch API does not support streaming request bodies";let m=await f[Symbol.asyncIterator]().next();if(m.done==1)throw"missing request message";return Dc(0,l(m.value))}return o=o===void 0?t.defaultTimeoutMs:o<=0?void 0:o,await iu({interceptors:t.interceptors,timeoutMs:o,signal:a,req:{stream:!0,service:n,method:r,url:uo(t.baseUrl,n,r),init:{method:"POST",credentials:t.credentials??"same-origin",redirect:"error",mode:"cors"},header:Eo(r.kind,e,o,i,!1),contextValues:c??co(),message:s},next:async f=>{let m=await(t.fetch??globalThis.fetch)(f.url,Object.assign(Object.assign({},f.init),{headers:f.header,signal:f.signal,body:await p(f.message)}));if(So(r.kind,e,m.status,m.headers),m.body===null)throw"missing response body";let y=new Headers;return Object.assign(Object.assign({},f),{header:m.headers,trailer:y,message:d(m.body,y,m.headers,f.signal)})}})}}}var ku=$c(vu,Su({baseUrl:"https://web-backend.codeium.com",useBinaryFormat:!0})),kn;try{kn=crypto.randomUUID()}catch{kn=function(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,e=>(e^(crypto.getRandomValues(new Uint8Array(1))[0]??0)&15>>e/4).toString(16))}()}async function Cu({text:t,cursorOffset:e,config:n,otherDocuments:r}){return await ku.getCompletions({metadata:{ideName:"web",ideVersion:"0.0.5",extensionName:"@valtown/codemirror-codeium",extensionVersion:"1.0.0",apiKey:n.apiKey,sessionId:kn,authSource:n.authSource},document:{text:t,cursorOffset:BigInt(e),language:n.language,editorLanguage:"typescript",lineEnding:`
14
- `},editorOptions:{tabSize:2n,insertSpaces:!0},otherDocuments:r,multilineConfig:void 0},{headers:{Authorization:`Basic ${n.apiKey}-${kn}`}})}function Tu(t){return t.completionItems.map(e=>{let n=0;return e.completionParts.filter(r=>r.type!==3).map(r=>{let a=Number(r.offset),o=r.type===2?`
15
- ${r.text}`:r.text,i={absoluteStartPos:n+a,absoluteEndPos:n+a+o.length,from:a,to:a,insert:o};return n+=o.length,i})})}async function Nu(t,e){let n=t.state.facet(bn),{override:r}=t.state.facet(oo),a=await r(),o=t.state,i=o.selection.main.head,s=o.doc.toString();try{let c=await Cu({text:s,cursorOffset:i,config:n,otherDocuments:a});if(!c||c.completionItems.length===0||!((e===void 0||i===e)&&qt(t.state)!=="active"&&t.hasFocus))return;let l=Tu(c),u=l.at(0);if(!u)return;let d=Vn.of(u,o.doc.length),p=d.invert(o.doc);t.dispatch({changes:d,effects:ur.of({index:0,reverseChangeSet:p,changeSpecs:l}),annotations:[wn.of(null),bt.of(null),Wt.addToHistory.of(!1)]})}catch(c){console.warn("copilot completion failed",c),await new Promise(l=>setTimeout(l,300))}}function Iu(t){return t.docChanged&&!t.transactions.some(e=>e.effects.some(n=>n.is(dr)||n.is(fr)))}function Au(t){if(!t.view.hasFocus||t.state.field(ct)||qt(t.state)==="active")return!0;for(let e of t.transactions)if(e.annotation(bt)!==void 0)return!0}function Lu(){let t=null,e=0;return R.updateListener.of(n=>{let r=n.view.state.facet(bn);if(!r.alwaysOn||!Iu(n)||(t&&clearTimeout(t),Au(n)))return;let a=n.state.selection.main.head;r.shouldComplete&&!r.shouldComplete(new qp(n.view.state,a,!1))||(t=setTimeout(async()=>{a===e&&await Nu(n.view,e)},r.timeout),e=a)})}function No(t){var a;let e=t.state.field(ct);if(!e)return!1;let n=(a=e.reverseChangeSet)==null?void 0:a.invert(t.state.doc);t.dispatch({changes:e.reverseChangeSet,effects:dr.of(null),annotations:[wn.of(null),bt.of(null),Wt.addToHistory.of(!1)]});let r=0;return n==null||n.iterChangedRanges((o,i,s,c)=>{r=c}),t.dispatch({changes:n,selection:St.cursor(r),annotations:[bt.of(null),Wt.addToHistory.of(!0)]}),!0}const Io=t=>{let{state:e}=t,n=e.field(ct);if(!n)return!1;let{changeSpecs:r}=n;if(r.length<2)return!1;let a=(n.index+1)%r.length,o=r.at(a);if(!o)return!1;let i=n.reverseChangeSet.apply(e.doc),s=Vn.of(n.reverseChangeSet,e.doc.length).compose(Vn.of(o,i.length)),c=Vn.of(o,i.length).invert(i);return t.dispatch({changes:s,effects:ur.of({index:a,reverseChangeSet:c,changeSpecs:r}),annotations:[wn.of(null),bt.of(null),Wt.addToHistory.of(!1)]}),!0};function xr(t){let e=t.state.field(ct);return e&&t.dispatch({changes:e.reverseChangeSet,effects:fr.of(null),annotations:[wn.of(null),bt.of(null),Wt.addToHistory.of(!1)]}),!1}function Ou(t,e){return t.state.field(ct)?e==="Tab"?No(t):xr(t):!1}function _u(t){var a,o;let e=!1,n=(a=t.state.selection.asSingle().ranges.at(0))==null?void 0:a.head,r=t.state.field(ct);return n!==void 0&&r?((o=r.decorations)==null||o.between(n,n,()=>{e=!0}),e):!1}function Uu(){return R.domEventHandlers({keydown(t,e){return t.key==="]"&&t.ctrlKey?!1:t.key!=="Shift"&&t.key!=="Control"&&t.key!=="Alt"&&t.key!=="Meta"?Ou(e,t.key):!1},mouseup(t,e){let n=t.target;return n.nodeName==="BUTTON"&&n.dataset.action==="codeium-cycle"?(Io(e),t.stopPropagation(),t.preventDefault(),!0):_u(e)?No(e):xr(e)}})}function ju(){return He.of([{key:"Ctrl-]",run:Io}])}function Pu(){return R.updateListener.of(t=>{t.focusChanged&&xr(t.view)})}function Du(t){return[bn.of(t),ct,mt.highest(ju()),mt.highest(Pu()),mt.high(Uu()),Lu()]}function Mu({response:t,prefix:e,suffix:n}){if(!t)return t;let r=t;return e&&r.startsWith(e)&&(r=r.slice(e.length)),n&&r.endsWith(n)&&(r=r.slice(0,-n.length)),r}var Fu=Rf(),Ru=new gp,Er=$e.get("@github/copilot-language-server"),Ao={delay:300,includeKeymap:!0,events:{shouldShowSuggestion:t=>t.hasFocus,beforeSuggestionFetch:t=>t.hasFocus}};const Bu=t=>{let e=[];return t.copilot==="codeium"&&t.codeium_api_key&&e.push(Du({apiKey:t.codeium_api_key,language:lt.PYTHON}),oo.of({override:async()=>[{text:Jr(""),language:lt.PYTHON,editorLanguage:"python"}]})),t.copilot==="github"&&e.push(va({...Ao,fetchFn:async(n,r,a)=>{let o=n.selection.main.head;if(!Gm()||!a.hasFocus||n.doc.length===0)return"";await new Promise(c=>setTimeout(c,20));let i=Gu(n,Jr(n.doc.toString())),s=await Fm().getCompletion(i);return o===a.state.selection.main.head?Ju(s,i.position,n):($e.debug("ignoring response because of new position"),"")}})),t.copilot==="custom"&&e.push(va({...Ao,fetchFn:async(n,r,a)=>{let o=n.selection.main.head;if(n.doc.length===0||!a.hasFocus)return"";let i=n.doc.sliceString(0,n.selection.main.head),s=n.doc.sliceString(n.selection.main.head,n.doc.length);if(i.length===0)return"";let c=n.field(dt).type,l=await Xm.post("/ai/inline_completion",{prefix:i,suffix:s,language:c});return o===a.state.selection.main.head?(l=Mu({response:l,prefix:i,suffix:s}),l):($e.debug("ignoring response because of new position"),"")}})),[...e,mt.highest(He.of([{key:"Escape",run:n=>{let r=wa(n);return Rn(n)?!1:r}}])),Ru.of(Rm())]};function Gu(t,e){let n=t.doc.toString(),r=e.split(`
12
+ `.trim(),n=qi();await Wi();let r=await fetch(n.getAiURL("completion").toString(),{method:"POST",headers:n.headers(),body:JSON.stringify({prompt:t.prompt,code:e,selectedText:t.selection,includeOtherCode:"",language:t.language})}),a=((i=t.selection.match(/^\s*/))==null?void 0:i[0])||"",o=await rl(r);return o.startsWith(a)||(o=a+o),o}function ka(t){switch(t){case"table":case"connection":Gr("variables"),ys(Vh,"datasources");return;case"bucket":Gr("files"),ys(Jh,"remote-storage");return;case"cache":Gr("cache");return;default:Ki(t)}}function ol(t){let{state:e,names:n}=t;if(n.size===0)return[];let r=$n(e);if(!r||xi(r))return[];let a=new Map,o=c=>{if(c.name===Z.VariableName){let l=e.doc.sliceString(c.from,c.to);n.has(l)&&!a.has(l)&&a.set(l,{from:c.from,to:c.to,name:l});return}if(c.name===Z.TupleExpression||c.name===Z.ArrayExpression||c.name===Z.ParenthesizedExpression)for(let l=c.firstChild;l;l=l.nextSibling)o(l)},i=c=>{let l=-1;for(let u=c.firstChild;u;u=u.nextSibling)u.name===Z.AssignOp&&(l=u.from);if(l!==-1)for(let u=c.firstChild;u&&u.from<l;u=u.nextSibling)o(u)},s=c=>{if(!Yf.has(c.name)){if(c.name===Z.AssignStatement){i(c);return}for(let l=c.firstChild;l;l=l.nextSibling)s(l)}};return s(r.topNode),[...a.values()]}var il=/\bmo\.(?:persistent_cache|cache)\b/g;function Ca(t){let e=t.match(/^[A-Za-z]*("""|'''|"|')([\s\S]*)\1$/);return e?e[2]:t}function sl(t,e){var a;if(!t)return null;let n=o=>(o==null?void 0:o.name)===","||(o==null?void 0:o.name)===")",r=null;for(let o=t.firstChild;o;o=o.nextSibling)if(!(o.name==="("||o.name===")"||o.name===",")&&(r??(r=o),o.name===Z.VariableName&&e(o)==="name"&&((a=o.nextSibling)==null?void 0:a.name)===Z.AssignOp)){let i=o.nextSibling.nextSibling;if((i==null?void 0:i.name)===Z.String&&n(i.nextSibling))return Ca(e(i))}return r&&r.name===Z.String&&n(r.nextSibling)?Ca(e(r)):null}function ll(t,e,n,r){var d,p,f;let a=m=>t.doc.sliceString(m.from,m.to),o=e.resolveInner(n,1),i=null,s=null,c=r,l=null;for(let m=o.parent;m&&m.from===n;m=m.parent)if(m.name===Z.CallExpression){l=m;break}if(l){c=l.to,s=l.getChild(Z.ArgList);let m=l.parent;if((m==null?void 0:m.name)===Z.AssignStatement){let y=m.getChild(Z.VariableName);i=y&&y.from<l.from?a(y):null}else if((m==null?void 0:m.name)===Z.WithStatement){let y=m.firstChild;for(;y;){if(y.from<l.to||y.name===$f.As){y=y.nextSibling;continue}y.name===Z.VariableName&&(i=a(y));break}}}else if(((d=o.parent)==null?void 0:d.name)===Z.Decorator){let m=o.parent,y=m.getChild(Z.ArgList);(y==null?void 0:y.from)===r&&(s=y,c=y.to);let b=(f=(p=m.parent)==null?void 0:p.getChild(Z.FunctionDefinition))==null?void 0:f.getChild(Z.VariableName);i=b?a(b):null}let u=sl(s,a);return{from:n,to:c,boundName:i,cacheName:u}}function cl(t,e,n){let r=e.resolveInner(n,1);return gm.has(r.name)?!1:r.name===Z.VariableName&&t.doc.sliceString(r.from,r.to)==="mo"}function ul(t){let e=$n(t);return!e||xi(e)?[]:[...t.doc.toString().matchAll(il)].filter(n=>cl(t,e,n.index??0)).map(n=>{let r=n.index??0;return ll(t,e,r,r+n[0].length)})}function ar(t,e,n){let r=t.get(e);r!==void 0&&r!==n&&$e.error(`[code-lens] "${e}" is claimed by both a ${r} and a ${n} entity; keeping ${n}`),t.set(e,n)}var dl=ut(t=>{let e=new Map;for(let n of t(qr))n.variable_name&&ar(e,n.variable_name,"table");for(let n of t($r).keys())um.has(n)||ar(e,n,"connection");for(let n of t(ia))ar(e,n.name,"bucket");return e}),fl=ut(t=>{let e=t(dl),n=t(Fn),r=new Map,a=new Map;for(let[o,i]of e){let s=n[o];if(s==null){a.set(o,i);continue}for(let c of s.declaredBy){let l=r.get(c);l||(l=new Map,r.set(c,l)),l.set(o,i)}}return{byCell:r,pending:a}});function ml(t){let{byCell:e,pending:n}=J.get(fl),r=new Map(e.get(t));for(let[a,o]of n)r.has(a)||r.set(a,o);return r}var en=t=>`<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">${t}</svg>`;const pl={table:en('<path d="M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18"/>'),connection:en('<ellipse cx="12" cy="5" rx="9" ry="3"/><path d="M3 5V19A9 3 0 0 0 21 19V5"/><path d="M3 12A9 3 0 0 0 21 12"/>'),bucket:en('<line x1="22" x2="2" y1="12" y2="12"/><path d="M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"/><line x1="6" x2="6.01" y1="16" y2="16"/><line x1="10" x2="10.01" y1="16" y2="16"/>'),cache:en('<ellipse cx="12" cy="5" rx="9" ry="3"/><path d="M3 5V19A9 3 0 0 0 15 21.84"/><path d="M21 5V8"/><path d="M21 12L18 17H22L19 22"/><path d="M3 12A9 3 0 0 0 14.59 14.87"/>')},hl={table:"Open in data sources",connection:"Open in data sources",bucket:"Open in remote storage",cache:"Open cache panel"};var _t=ve(),gl=Om(),yl=Xf(),h=bi(op(),1);function bl(t,e){let n=(0,yl.createRoot)(t);return(0,gl.flushSync)(()=>{n.render((0,h.jsx)(Mf,{store:J,children:(0,h.jsx)(wl,{spec:e})}))}),()=>queueMicrotask(()=>n.unmount())}var wl=t=>{var r,a;let e=(0,_t.c)(9),{spec:n}=t;switch(n.kind){case"table":{let o;return e[0]===n.name?o=e[1]:(o=(0,h.jsx)(vl,{name:n.name}),e[0]=n.name,e[1]=o),o}case"connection":{let o;return e[2]===n.name?o=e[3]:(o=(0,h.jsx)(xl,{name:n.name}),e[2]=n.name,e[3]=o),o}case"bucket":{let o;return e[4]===n.name?o=e[5]:(o=(0,h.jsx)(El,{name:n.name}),e[4]=n.name,e[5]=o),o}case"cache":{let o=((r=n.cache)==null?void 0:r.boundName)??null,i=((a=n.cache)==null?void 0:a.cacheName)??null,s;return e[6]!==o||e[7]!==i?(s=(0,h.jsx)(Tl,{boundName:o,cacheName:i}),e[6]=o,e[7]=i,e[8]=s):s=e[8],s}default:Ki(n.kind)}},vl=t=>{let e=(0,_t.c)(5),{name:n}=t,r=q(qr),a;if(e[0]!==n||e[1]!==r){let o;e[3]===n?o=e[4]:(o=s=>s.variable_name===n,e[3]=n,e[4]=o);let i=r.find(o);a=i?Tm(i):Ai("table"),e[0]=n,e[1]=r,e[2]=a}else a=e[2];return a},xl=t=>{let e=(0,_t.c)(5),{name:n}=t,r=q($r),a,o;if(e[0]!==r||e[1]!==n){o=Symbol.for("react.early_return_sentinel");e:{let i=r.get(n);if(!i){let s;e[4]===Symbol.for("react.memo_cache_sentinel")?(s=Ai("database"),e[4]=s):s=e[4],o=s;break e}a=dm(i)}e[0]=r,e[1]=n,e[2]=a,e[3]=o}else a=e[2],o=e[3];return o===Symbol.for("react.early_return_sentinel")?a:o},El=t=>{let e=(0,_t.c)(27),{name:n}=t,r=q(ia),a;if(e[0]!==n||e[1]!==r){let y;e[3]===n?y=e[4]:(y=b=>b.name===n,e[3]=n,e[4]=y),a=r.find(y),e[0]=n,e[1]=r,e[2]=a}else a=e[2];let o=a;if(!o){let y;return e[5]===Symbol.for("react.memo_cache_sentinel")?(y=(0,h.jsx)("div",{className:Hr,children:(0,h.jsx)("span",{className:"text-xs text-(--slate-11)",children:"No storage information available."})}),e[5]=y):y=e[5],y}let i;e[6]===o.protocol?i=e[7]:(i=(0,h.jsx)(ph,{protocol:o.protocol,className:"w-4 h-4"}),e[6]=o.protocol,e[7]=i);let s;e[8]===o.protocol?s=e[9]:(s=(0,h.jsx)(bh,{variant:"outline",className:"text-xs",children:o.protocol}),e[8]=o.protocol,e[9]=s);let c;e[10]!==o.displayName||e[11]!==i||e[12]!==s?(c=(0,h.jsx)(Oi,{icon:i,title:o.displayName,badge:s}),e[10]=o.displayName,e[11]=i,e[12]=s,e[13]=c):c=e[13];let l;e[14]===o.name?l=e[15]:(l=(0,h.jsx)(nt,{label:"Variable",value:(0,h.jsx)("code",{className:"text-xs bg-(--slate-4) px-1 rounded",children:o.name})}),e[14]=o.name,e[15]=l);let u=o.rootPath||"(root)",d;e[16]===u?d=e[17]:(d=(0,h.jsx)(nt,{label:"Root",value:(0,h.jsx)("code",{className:"text-xs bg-(--slate-4) px-1 rounded",children:u})}),e[16]=u,e[17]=d);let p;e[18]===o.backendType?p=e[19]:(p=(0,h.jsx)(nt,{label:"Backend",value:(0,h.jsx)("span",{className:"font-medium",children:o.backendType})}),e[18]=o.backendType,e[19]=p);let f;e[20]!==l||e[21]!==d||e[22]!==p?(f=(0,h.jsxs)("div",{className:"flex flex-col gap-2 py-2",children:[l,d,p]}),e[20]=l,e[21]=d,e[22]=p,e[23]=f):f=e[23];let m;return e[24]!==c||e[25]!==f?(m=(0,h.jsxs)("div",{className:Hr,children:[c,f]}),e[24]=c,e[25]=f,e[26]=m):m=e[26],m},Sl=/\bhits=(\d+) misses=(\d+)/,tn=null,kl=5e3;function Cl(){let t=Date.now();tn!=null&&t-tn<kl||(tn=t,Xi().getCacheInfo().catch(()=>{tn=null}))}var Tl=t=>{var k,_;let e=(0,_t.c)(16),{boundName:n,cacheName:r}=t,{locale:a}=kh(),o=q(Fn),i=q(Rh),s=n?o[n]:void 0,c;e[0]===s?c=e[1]:(c=(k=s==null?void 0:s.dataType)!=null&&k.startsWith("_cache_call")?(_=s.value)==null?void 0:_.match(Sl):void 0,e[0]=s,e[1]=c);let l=c,u=!!l,d,p;e[2]===u?(d=e[3],p=e[4]):(d=()=>{u||Cl()},p=[u],e[2]=u,e[3]=d,e[4]=p),(0,N.useEffect)(d,p);let f;e[5]===Symbol.for("react.memo_cache_sentinel")?(f=(0,h.jsx)(dh,{className:"w-4 h-4 text-(--amber-9)"}),e[5]=f):f=e[5];let m=r??n??"Cache",y;e[6]===m?y=e[7]:(y=(0,h.jsx)(Oi,{icon:f,title:m}),e[6]=m,e[7]=y);let b;e[8]!==i||e[9]!==a||e[10]!==l?(b=l?(0,h.jsxs)("div",{className:"flex flex-col gap-2 py-2",children:[(0,h.jsx)(nt,{label:"Hits",value:(0,h.jsx)("span",{className:"font-medium",children:zn(Number(l[1]),a)})}),(0,h.jsx)(nt,{label:"Misses",value:(0,h.jsx)("span",{className:"font-medium",children:zn(Number(l[2]),a)})})]}):i&&(0,h.jsxs)("div",{className:"flex flex-col gap-2 py-2",children:[(0,h.jsx)("span",{className:"text-xs font-medium text-(--slate-11)",children:"Notebook-wide"}),(0,h.jsx)(nt,{label:"Hits",value:zn(i.hits,a)}),(0,h.jsx)(nt,{label:"Misses",value:zn(i.misses,a)}),(0,h.jsx)(nt,{label:"Time saved",value:Bh(i.time,a)})]}),e[8]=i,e[9]=a,e[10]=l,e[11]=b):b=e[11];let v;e[12]===Symbol.for("react.memo_cache_sentinel")?(v=(0,h.jsx)("div",{className:"pt-2 text-xs text-(--slate-10)",children:"Click to open the cache panel"}),e[12]=v):v=e[12];let S;return e[13]!==y||e[14]!==b?(S=(0,h.jsxs)("div",{className:Hr,children:[y,b,v]}),e[13]=y,e[14]=b,e[15]=S):S=e[15],S},or=ce.define(),ir=ce.define();function sr(t,e){var n,r,a,o;return t.pos===e.pos&&t.kind===e.kind&&t.name===e.name&&((n=t.cache)==null?void 0:n.boundName)===((r=e.cache)==null?void 0:r.boundName)&&((a=t.cache)==null?void 0:a.cacheName)===((o=e.cache)==null?void 0:o.cacheName)}var Nl=class{constructor(t){this.view=t}enterLens(t,e){this.clearTimers(),Il(this.view,e);let n=this.view.state.field(lr,!1);n&&sr(n.spec,t)||(this.showTimer=window.setTimeout(()=>{this.showTimer=void 0,this.view.dispatch({effects:ir.of(t)})},400))}leave(){this.clearTimers(),this.hideTimer=window.setTimeout(()=>{this.hideTimer=void 0,this.hide()},200)}enterPopover(){window.clearTimeout(this.hideTimer),this.hideTimer=void 0}hide(){this.clearTimers(),this.view.state.field(lr,!1)&&this.view.dispatch({effects:ir.of(null)})}destroy(){this.clearTimers()}clearTimers(){window.clearTimeout(this.showTimer),window.clearTimeout(this.hideTimer),this.showTimer=void 0,this.hideTimer=void 0}},nn=ze.define(t=>new Nl(t));function Il(t,e){t.dom.dispatchEvent(new MouseEvent("mouseleave",{relatedTarget:e}))}var Al=class extends $t{constructor(t){super(),this.spec=t}eq(t){return sr(this.spec,t.spec)}toDOM(t){let{spec:e}=this,n=document.createElement("span");n.className="mo-code-lens",n.setAttribute("role","button"),n.tabIndex=0,n.setAttribute("aria-label",hl[e.kind]),n.innerHTML=pl[e.kind];let r=()=>t.plugin(nn),a=()=>{var o;return(o=r())==null?void 0:o.hide()};return n.onmouseenter=()=>{var o;return(o=r())==null?void 0:o.enterLens(e,n)},n.onmouseleave=()=>{var o;return(o=r())==null?void 0:o.leave()},n.onmousemove=o=>{o.stopPropagation()},n.onmousedown=o=>{o.preventDefault(),o.stopPropagation()},n.onclick=o=>{o.preventDefault(),o.stopPropagation(),a(),ka(e.kind)},n.onkeydown=o=>{(o.key==="Enter"||o.key===" ")&&(o.preventDefault(),o.stopPropagation(),a(),ka(e.kind))},n}ignoreEvent(){return!0}};function Ll(t){return{spec:t,tooltip:{pos:t.pos,above:!0,create:e=>{let n=document.createElement("div");return n.classList.add("mo-cm-tooltip","docs-documentation"),n.onmouseenter=()=>{var r;return(r=e.plugin(nn))==null?void 0:r.enterPopover()},n.onmouseleave=()=>{var r;return(r=e.plugin(nn))==null?void 0:r.leave()},{dom:n,resize:!1,destroy:bl(n,t)}}}}}var lr=We.define({create(){return null},update(t,e){for(let n of e.effects){if(n.is(ir))return n.value?Ll(n.value):null;if(n.is(or)&&t)return n.value.some(r=>sr(r,t.spec))?t:null}return e.docChanged?null:t},provide:t=>xp.from(t,e=>(e==null?void 0:e.tooltip)??null)}),Ol=We.define({create(){return V.none},update(t,e){t=t.map(e.changes);for(let n of e.effects)n.is(or)&&(t=V.set(n.value.map(r=>V.widget({widget:new Al(r),side:1}).range(r.pos)),!0));return t},provide:t=>R.decorations.from(t)}),_l=class{constructor(t,e,n){g(this,"debounceMs",300);this.view=t,this.cellId=e,this.includeCache=n,this.scheduleUpdate=Mm(()=>this.run(),this.debounceMs);let r=()=>this.scheduleUpdate();this.unsubscribes=[J.sub(qr,r),J.sub($r,r),J.sub(ia,r),J.sub(Fn,r)],this.scheduleUpdate()}update(t){var n,r;let e=((n=t.startState.field(dt,!1))==null?void 0:n.type)!==((r=t.state.field(dt,!1))==null?void 0:r.type);(t.docChanged||e)&&this.scheduleUpdate()}destroy(){this.scheduleUpdate.cancel();for(let t of this.unsubscribes)t()}run(){var r;let{state:t}=this.view,e=[],n=(r=t.field(dt,!1))==null?void 0:r.type;if(n==null||n==="python"){let a=ml(this.cellId),o=ol({state:t,names:new Set(a.keys())});for(let i of o){let s=a.get(i.name);s&&e.push({pos:i.to,kind:s,name:i.name})}if(this.includeCache)for(let i of ul(t))e.push({pos:i.to,kind:"cache",name:`cache:${i.from}`,cache:{boundName:i.boundName,cacheName:i.cacheName}})}queueMicrotask(()=>{this.view.dispatch({effects:or.of(e)})})}},rn="3px",Ul=R.baseTheme({".mo-code-lens":{display:"inline-flex",verticalAlign:"baseline",transform:"translateY(1.5px)",padding:rn,margin:`-${rn} 0 -${rn} calc(0.3em - ${rn})`,cursor:"pointer",opacity:"0.5"},".mo-code-lens:hover":{opacity:"1"}});function jl(t,e=!0){return e?[Ol,lr,nn,ze.define(n=>new _l(n,t,vi("cache_panel"))),Ul]:[]}var Pl=["%alias","%cd","%clear","%debug","%env","%load","%load_ext","%lsmagic","%matplotlib","%pwd","%who_ls","%system","%%time","%%timeit","%%writefile","%%capture","%%html","%%latex"],cr;function Dl(){let t=async r=>{let a=J.get(Xr),{saveUserConfig:o}=Xi();await o({config:{runtime:{auto_reload:r}}}).then(()=>J.set(Xr,{...a,runtime:{...a.runtime,auto_reload:r}}))},e=[{match:"!pip install",onMatch:()=>{J.set(Br,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),oa()},title:"Package Installation",description:(0,h.jsxs)(h.Fragment,{children:["The package manager sidebar has been opened.",(0,h.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"!uv pip install",onMatch:()=>{J.set(Br,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),oa()},title:"Package Installation",description:(0,h.jsxs)(h.Fragment,{children:["The package manager sidebar has been opened.",(0,h.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"!uv add",onMatch:()=>{J.set(Br,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),oa()},title:"Package Installation",description:(0,h.jsxs)(h.Fragment,{children:["The package manager sidebar has been opened.",(0,h.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"%autoreload 2",onMatch:async()=>{await t("autorun")},title:"Module reload",description:(0,h.jsxs)(h.Fragment,{children:["Module reload mode set to ",(0,h.jsx)("b",{children:"autorun"})," - module changes will re-run the cells that import them."]})},{match:"%autoreload 1",onMatch:async()=>{await t("lazy")},title:"Module reload",description:(0,h.jsxs)(h.Fragment,{children:["Module reload mode set to ",(0,h.jsx)("b",{children:"lazy"})," - module changes will mark the cells that import them as stale."]})},{match:"%autoreload 0",onMatch:async()=>{await t("off")},title:"Module reload",description:(0,h.jsx)(h.Fragment,{children:"Module reload disabled - module changes will not be detected."})},{match:"!ls",onMatch:()=>{},title:"Listing files",description:(0,h.jsxs)(h.Fragment,{children:["Shell commands are not directly supported.",(0,h.jsx)("br",{}),"Use ",(0,h.jsx)("code",{children:"import subprocess; subprocess.run(['ls'])"})," instead."]})},...Pl.map(r=>({match:r,onMatch:()=>{},title:(0,h.jsx)(Ih,{className:"inline",children:r}),description:(0,h.jsxs)(h.Fragment,{children:["Magic commands are not supported in marimo. Read more about replacements in the"," ",(0,h.jsx)("a",{href:"https://docs.marimo.io/guides/coming_from/jupyter/#adapting-to-the-absence-of-magic-commands",target:"_blank",className:"text-link underline cursor-pointer",rel:"noopener noreferrer",children:"documentation"}),"."]})}))],n=new Map(e.map(r=>[r.match,r]));return R.updateListener.of(r=>{if(r.docChanged){let a=r.state.selection.main,o=r.state.doc,i=o.lineAt(a.head),s=o.sliceString(i.from,a.anchor).trim(),c=n.get(s);c&&(c.onMatch(),cr?cr.upsert({title:c.title,description:c.description}):cr=kt({title:c.title,description:c.description}))}})}var Ta=new Set(["Escape","Alt-`"]);function Ml(t,e=Ta){return t.filter(n=>![n.key,n.mac,n.linux,n.win].some(r=>e.has(r)))}function Fl(t=!0){let e=new Set(Ta);t||e.add("Enter");let n=Ml($p,e);return mt.highest(He.of([...n,{key:"Ctrl-y",run:r=>Rn(r)?Yi(r):!1},{key:"Ctrl-n",run:r=>Rn(r)?qn(!0)(r):!1},{key:"Ctrl-p",run:r=>Rn(r)?qn(!1)(r):!1}]))}const ur=ce.define(),dr=ce.define(),fr=ce.define();function z(t,e){if(!t)throw Error(e)}var Rl=3402823466385289e23,Bl=-3402823466385289e23,Gl=4294967295,Jl=2147483647,Vl=-2147483648;function an(t){if(typeof t!="number")throw Error("invalid int 32: "+typeof t);if(!Number.isInteger(t)||t>Jl||t<Vl)throw Error("invalid int 32: "+t)}function mr(t){if(typeof t!="number")throw Error("invalid uint 32: "+typeof t);if(!Number.isInteger(t)||t>Gl||t<0)throw Error("invalid uint 32: "+t)}function Na(t){if(typeof t!="number")throw Error("invalid float 32: "+typeof t);if(Number.isFinite(t)&&(t>Rl||t<Bl))throw Error("invalid float 32: "+t)}var Ia=Symbol("@bufbuild/protobuf/enum-type");function $l(t){let e=t[Ia];return z(e,"missing enum type on enum object"),e}function Aa(t,e,n,r){t[Ia]=La(e,n.map(a=>({no:a.no,name:a.name,localName:t[a.no]})),r)}function La(t,e,n){let r=Object.create(null),a=Object.create(null),o=[];for(let i of e){let s=Oa(i);o.push(s),r[i.name]=s,a[i.no]=s}return{typeName:t,values:o,findName(i){return r[i]},findNumber(i){return a[i]}}}function Wl(t,e,n){let r={};for(let a of e){let o=Oa(a);r[o.localName]=o.no,r[o.no]=o.localName}return Aa(r,t,e,n),r}function Oa(t){return"localName"in t?t:Object.assign(Object.assign({},t),{localName:t.name})}var X=class{equals(t){return this.getType().runtime.util.equals(this.getType(),this,t)}clone(){return this.getType().runtime.util.clone(this)}fromBinary(t,e){let n=this.getType().runtime.bin,r=n.makeReadOptions(e);return n.readMessage(this,r.readerFactory(t),t.byteLength,r),this}fromJson(t,e){let n=this.getType(),r=n.runtime.json,a=r.makeReadOptions(e);return r.readMessage(n,t,a,this),this}fromJsonString(t,e){let n;try{n=JSON.parse(t)}catch(r){throw Error(`cannot decode ${this.getType().typeName} from JSON: ${r instanceof Error?r.message:String(r)}`)}return this.fromJson(n,e)}toBinary(t){let e=this.getType().runtime.bin,n=e.makeWriteOptions(t),r=n.writerFactory();return e.writeMessage(this,r,n),r.finish()}toJson(t){let e=this.getType().runtime.json,n=e.makeWriteOptions(t);return e.writeMessage(this,n)}toJsonString(t){let e=this.toJson(t);return JSON.stringify(e,null,(t==null?void 0:t.prettySpaces)??0)}toJSON(){return this.toJson({emitDefaultValues:!0})}getType(){return Object.getPrototypeOf(this).constructor}};function ql(t,e,n,r){let a=(r==null?void 0:r.localName)??e.substring(e.lastIndexOf(".")+1),o={[a]:function(i){t.util.initFields(this),t.util.initPartial(i,this)}}[a];return Object.setPrototypeOf(o.prototype,new X),Object.assign(o,{runtime:t,typeName:e,fields:t.util.newFieldList(n),fromBinary(i,s){return new o().fromBinary(i,s)},fromJson(i,s){return new o().fromJson(i,s)},fromJsonString(i,s){return new o().fromJsonString(i,s)},equals(i,s){return t.util.equals(o,i,s)}}),o}function Hl(){let t=0,e=0;for(let r=0;r<28;r+=7){let a=this.buf[this.pos++];if(t|=(a&127)<<r,!(a&128))return this.assertBounds(),[t,e]}let n=this.buf[this.pos++];if(t|=(n&15)<<28,e=(n&112)>>4,!(n&128))return this.assertBounds(),[t,e];for(let r=3;r<=31;r+=7){let a=this.buf[this.pos++];if(e|=(a&127)<<r,!(a&128))return this.assertBounds(),[t,e]}throw Error("invalid varint")}function pr(t,e,n){for(let o=0;o<28;o+=7){let i=t>>>o,s=!(!(i>>>7)&&e==0),c=(s?i|128:i)&255;if(n.push(c),!s)return}let r=t>>>28&15|(e&7)<<4,a=!!(e>>3);if(n.push((a?r|128:r)&255),a){for(let o=3;o<31;o+=7){let i=e>>>o,s=!!(i>>>7),c=(s?i|128:i)&255;if(n.push(c),!s)return}n.push(e>>>31&1)}}var on=4294967296;function _a(t){let e=t[0]==="-";e&&(t=t.slice(1));let n=1e6,r=0,a=0;function o(i,s){let c=Number(t.slice(i,s));a*=n,r=r*n+c,r>=on&&(a+=r/on|0,r%=on)}return o(-24,-18),o(-18,-12),o(-12,-6),o(-6),e?ja(r,a):hr(r,a)}function zl(t,e){let n=hr(t,e),r=n.hi&2147483648;r&&(n=ja(n.lo,n.hi));let a=Ua(n.lo,n.hi);return r?"-"+a:a}function Ua(t,e){if({lo:t,hi:e}=Yl(t,e),e<=2097151)return String(on*e+t);let n=t&16777215,r=(t>>>24|e<<8)&16777215,a=e>>16&65535,o=n+r*6777216+a*6710656,i=r+a*8147497,s=a*2,c=1e7;return o>=c&&(i+=Math.floor(o/c),o%=c),i>=c&&(s+=Math.floor(i/c),i%=c),s.toString()+Pa(i)+Pa(o)}function Yl(t,e){return{lo:t>>>0,hi:e>>>0}}function hr(t,e){return{lo:t|0,hi:e|0}}function ja(t,e){return e=~e,t?t=~t+1:e+=1,hr(t,e)}var Pa=t=>{let e=String(t);return"0000000".slice(e.length)+e};function Da(t,e){if(t>=0){for(;t>127;)e.push(t&127|128),t>>>=7;e.push(t)}else{for(let n=0;n<9;n++)e.push(t&127|128),t>>=7;e.push(1)}}function Kl(){let t=this.buf[this.pos++],e=t&127;if(!(t&128)||(t=this.buf[this.pos++],e|=(t&127)<<7,!(t&128))||(t=this.buf[this.pos++],e|=(t&127)<<14,!(t&128))||(t=this.buf[this.pos++],e|=(t&127)<<21,!(t&128)))return this.assertBounds(),e;t=this.buf[this.pos++],e|=(t&15)<<28;for(let n=5;t&128&&n<10;n++)t=this.buf[this.pos++];if(t&128)throw Error("invalid varint");return this.assertBounds(),e>>>0}function Xl(){let t=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof t.getBigInt64=="function"&&typeof t.getBigUint64=="function"&&typeof t.setBigInt64=="function"&&typeof t.setBigUint64=="function"&&(typeof process!="object"||{}.BUF_BIGINT_DISABLE!=="1")){let r=BigInt("-9223372036854775808"),a=BigInt("9223372036854775807"),o=BigInt("0"),i=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(s){let c=typeof s=="bigint"?s:BigInt(s);if(c>a||c<r)throw Error(`int64 invalid: ${s}`);return c},uParse(s){let c=typeof s=="bigint"?s:BigInt(s);if(c>i||c<o)throw Error(`uint64 invalid: ${s}`);return c},enc(s){return t.setBigInt64(0,this.parse(s),!0),{lo:t.getInt32(0,!0),hi:t.getInt32(4,!0)}},uEnc(s){return t.setBigInt64(0,this.uParse(s),!0),{lo:t.getInt32(0,!0),hi:t.getInt32(4,!0)}},dec(s,c){return t.setInt32(0,s,!0),t.setInt32(4,c,!0),t.getBigInt64(0,!0)},uDec(s,c){return t.setInt32(0,s,!0),t.setInt32(4,c,!0),t.getBigUint64(0,!0)}}}let e=r=>z(/^-?[0-9]+$/.test(r),`int64 invalid: ${r}`),n=r=>z(/^[0-9]+$/.test(r),`uint64 invalid: ${r}`);return{zero:"0",supported:!1,parse(r){return typeof r!="string"&&(r=r.toString()),e(r),r},uParse(r){return typeof r!="string"&&(r=r.toString()),n(r),r},enc(r){return typeof r!="string"&&(r=r.toString()),e(r),_a(r)},uEnc(r){return typeof r!="string"&&(r=r.toString()),n(r),_a(r)},dec(r,a){return zl(r,a)},uDec(r,a){return Ua(r,a)}}}const W=Xl();var w;(function(t){t[t.DOUBLE=1]="DOUBLE",t[t.FLOAT=2]="FLOAT",t[t.INT64=3]="INT64",t[t.UINT64=4]="UINT64",t[t.INT32=5]="INT32",t[t.FIXED64=6]="FIXED64",t[t.FIXED32=7]="FIXED32",t[t.BOOL=8]="BOOL",t[t.STRING=9]="STRING",t[t.BYTES=12]="BYTES",t[t.UINT32=13]="UINT32",t[t.SFIXED32=15]="SFIXED32",t[t.SFIXED64=16]="SFIXED64",t[t.SINT32=17]="SINT32",t[t.SINT64=18]="SINT64"})(w||(w={}));var st;(function(t){t[t.BIGINT=0]="BIGINT",t[t.STRING=1]="STRING"})(st||(st={}));function et(t,e,n){if(e===n)return!0;if(t==w.BYTES){if(!(e instanceof Uint8Array)||!(n instanceof Uint8Array)||e.length!==n.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==n[r])return!1;return!0}switch(t){case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return e==n}return!1}function gt(t,e){switch(t){case w.BOOL:return!1;case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return e==0?W.zero:"0";case w.DOUBLE:case w.FLOAT:return 0;case w.BYTES:return new Uint8Array;case w.STRING:return"";default:return 0}}function Ma(t,e){switch(t){case w.BOOL:return e===!1;case w.STRING:return e==="";case w.BYTES:return e instanceof Uint8Array&&!e.byteLength;default:return e==0}}var Q;(function(t){t[t.Varint=0]="Varint",t[t.Bit64=1]="Bit64",t[t.LengthDelimited=2]="LengthDelimited",t[t.StartGroup=3]="StartGroup",t[t.EndGroup=4]="EndGroup",t[t.Bit32=5]="Bit32"})(Q||(Q={}));var Zl=class{constructor(t){this.stack=[],this.textEncoder=t??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let t=0;for(let r=0;r<this.chunks.length;r++)t+=this.chunks[r].length;let e=new Uint8Array(t),n=0;for(let r=0;r<this.chunks.length;r++)e.set(this.chunks[r],n),n+=this.chunks[r].length;return this.chunks=[],e}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let t=this.finish(),e=this.stack.pop();if(!e)throw Error("invalid state, fork stack empty");return this.chunks=e.chunks,this.buf=e.buf,this.uint32(t.byteLength),this.raw(t)}tag(t,e){return this.uint32((t<<3|e)>>>0)}raw(t){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(t),this}uint32(t){for(mr(t);t>127;)this.buf.push(t&127|128),t>>>=7;return this.buf.push(t),this}int32(t){return an(t),Da(t,this.buf),this}bool(t){return this.buf.push(t?1:0),this}bytes(t){return this.uint32(t.byteLength),this.raw(t)}string(t){let e=this.textEncoder.encode(t);return this.uint32(e.byteLength),this.raw(e)}float(t){Na(t);let e=new Uint8Array(4);return new DataView(e.buffer).setFloat32(0,t,!0),this.raw(e)}double(t){let e=new Uint8Array(8);return new DataView(e.buffer).setFloat64(0,t,!0),this.raw(e)}fixed32(t){mr(t);let e=new Uint8Array(4);return new DataView(e.buffer).setUint32(0,t,!0),this.raw(e)}sfixed32(t){an(t);let e=new Uint8Array(4);return new DataView(e.buffer).setInt32(0,t,!0),this.raw(e)}sint32(t){return an(t),t=(t<<1^t>>31)>>>0,Da(t,this.buf),this}sfixed64(t){let e=new Uint8Array(8),n=new DataView(e.buffer),r=W.enc(t);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(e)}fixed64(t){let e=new Uint8Array(8),n=new DataView(e.buffer),r=W.uEnc(t);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(e)}int64(t){let e=W.enc(t);return pr(e.lo,e.hi,this.buf),this}sint64(t){let e=W.enc(t),n=e.hi>>31;return pr(e.lo<<1^n,(e.hi<<1|e.lo>>>31)^n,this.buf),this}uint64(t){let e=W.uEnc(t);return pr(e.lo,e.hi,this.buf),this}},Ql=class{constructor(t,e){this.varint64=Hl,this.uint32=Kl,this.buf=t,this.len=t.length,this.pos=0,this.view=new DataView(t.buffer,t.byteOffset,t.byteLength),this.textDecoder=e??new TextDecoder}tag(){let t=this.uint32(),e=t>>>3,n=t&7;if(e<=0||n<0||n>5)throw Error("illegal tag: field no "+e+" wire type "+n);return[e,n]}skip(t,e){let n=this.pos;switch(t){case Q.Varint:for(;this.buf[this.pos++]&128;);break;case Q.Bit64:this.pos+=4;case Q.Bit32:this.pos+=4;break;case Q.LengthDelimited:let r=this.uint32();this.pos+=r;break;case Q.StartGroup:for(;;){let[a,o]=this.tag();if(o===Q.EndGroup){if(e!==void 0&&a!==e)throw Error("invalid end group tag");break}this.skip(o,a)}break;default:throw Error("cant skip wire type "+t)}return this.assertBounds(),this.buf.subarray(n,this.pos)}assertBounds(){if(this.pos>this.len)throw RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)}int64(){return W.dec(...this.varint64())}uint64(){return W.uDec(...this.varint64())}sint64(){let[t,e]=this.varint64(),n=-(t&1);return t=(t>>>1|(e&1)<<31)^n,e=e>>>1^n,W.dec(t,e)}bool(){let[t,e]=this.varint64();return t!==0||e!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return W.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return W.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let t=this.uint32(),e=this.pos;return this.pos+=t,this.assertBounds(),this.buf.subarray(e,e+t)}string(){return this.textDecoder.decode(this.bytes())}};function ec(t,e,n,r){let a;return{typeName:e,extendee:n,get field(){if(!a){let o=typeof r=="function"?r():r;o.name=e.split(".").pop(),o.jsonName=`[${e}]`,a=t.util.newFieldList([o]).list()[0]}return a},runtime:t}}function Fa(t){let e=t.field.localName,n=Object.create(null);return n[e]=tc(t),[n,()=>n[e]]}function tc(t){let e=t.field;if(e.repeated)return[];if(e.default!==void 0)return e.default;switch(e.kind){case"enum":return e.T.values[0].no;case"scalar":return gt(e.T,e.L);case"message":let n=e.T,r=new n;return n.fieldWrapper?n.fieldWrapper.unwrapField(r):r;case"map":throw"map fields are not allowed to be extensions"}}function nc(t,e){if(!e.repeated&&(e.kind=="enum"||e.kind=="scalar")){for(let n=t.length-1;n>=0;--n)if(t[n].no==e.no)return[t[n]];return[]}return t.filter(n=>n.no===e.no)}var Xe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),sn=[];for(let t=0;t<Xe.length;t++)sn[Xe[t].charCodeAt(0)]=t;sn[45]=Xe.indexOf("+"),sn[95]=Xe.indexOf("/");const ln={dec(t){let e=t.length*3/4;t[t.length-2]=="="?e-=2:t[t.length-1]=="="&&--e;let n=new Uint8Array(e),r=0,a=0,o,i=0;for(let s=0;s<t.length;s++){if(o=sn[t.charCodeAt(s)],o===void 0)switch(t[s]){case"=":a=0;case`
13
+ `:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(a){case 0:i=o,a=1;break;case 1:n[r++]=i<<2|(o&48)>>4,i=o,a=2;break;case 2:n[r++]=(i&15)<<4|(o&60)>>2,i=o,a=3;break;case 3:n[r++]=(i&3)<<6|o,a=0;break}}if(a==1)throw Error("invalid base64 string.");return n.subarray(0,r)},enc(t){let e="",n=0,r,a=0;for(let o=0;o<t.length;o++)switch(r=t[o],n){case 0:e+=Xe[r>>2],a=(r&3)<<4,n=1;break;case 1:e+=Xe[a|r>>4],a=(r&15)<<2,n=2;break;case 2:e+=Xe[a|r>>6],e+=Xe[r&63],n=0;break}return n&&(e+=Xe[a],e+="=",n==1&&(e+="=")),e}};function rc(t,e,n){Ba(e,t);let r=e.runtime.bin.makeReadOptions(n),a=nc(t.getType().runtime.bin.listUnknownFields(t),e.field),[o,i]=Fa(e);for(let s of a)e.runtime.bin.readField(o,r.readerFactory(s.data),e.field,s.wireType,r);return i()}function ac(t,e,n,r){Ba(e,t);let a=e.runtime.bin.makeReadOptions(r),o=e.runtime.bin.makeWriteOptions(r);if(Ra(t,e)){let l=t.getType().runtime.bin.listUnknownFields(t).filter(u=>u.no!=e.field.no);t.getType().runtime.bin.discardUnknownFields(t);for(let u of l)t.getType().runtime.bin.onUnknownField(t,u.no,u.wireType,u.data)}let i=o.writerFactory(),s=e.field;!s.opt&&!s.repeated&&(s.kind=="enum"||s.kind=="scalar")&&(s=Object.assign(Object.assign({},e.field),{opt:!0})),e.runtime.bin.writeField(s,n,i,o);let c=a.readerFactory(i.finish());for(;c.pos<c.len;){let[l,u]=c.tag(),d=c.skip(u,l);t.getType().runtime.bin.onUnknownField(t,l,u,d)}}function Ra(t,e){let n=t.getType();return e.extendee.typeName===n.typeName&&!!n.runtime.bin.listUnknownFields(t).find(r=>r.no==e.field.no)}function Ba(t,e){z(t.extendee.typeName==e.getType().typeName,`extension ${t.typeName} can only be applied to message ${t.extendee.typeName}`)}function Ga(t,e){let n=t.localName;if(t.repeated)return e[n].length>0;if(t.oneof)return e[t.oneof.localName].case===n;switch(t.kind){case"enum":case"scalar":return t.opt||t.req?e[n]!==void 0:t.kind=="enum"?e[n]!==t.T.values[0].no:!Ma(t.T,e[n]);case"message":return e[n]!==void 0;case"map":return Object.keys(e[n]).length>0}}function Ja(t,e){let n=t.localName,r=!t.opt&&!t.req;if(t.repeated)e[n]=[];else if(t.oneof)e[t.oneof.localName]={case:void 0};else switch(t.kind){case"map":e[n]={};break;case"enum":e[n]=r?t.T.values[0].no:void 0;break;case"scalar":e[n]=r?gt(t.T,t.L):void 0;break;case"message":e[n]=void 0;break}}function Ze(t,e){if(typeof t!="object"||!t||!Object.getOwnPropertyNames(X.prototype).every(r=>r in t&&typeof t[r]=="function"))return!1;let n=t.getType();return n===null||typeof n!="function"||!("typeName"in n)||typeof n.typeName!="string"?!1:e===void 0?!0:n.typeName==e.typeName}function Va(t,e){return Ze(e)||!t.fieldWrapper?e:t.fieldWrapper.wrapField(e)}w.DOUBLE,w.FLOAT,w.INT64,w.UINT64,w.INT32,w.UINT32,w.BOOL,w.STRING,w.BYTES;var $a={ignoreUnknownFields:!1},Wa={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0};function oc(t){return t?Object.assign(Object.assign({},$a),t):$a}function ic(t){return t?Object.assign(Object.assign({},Wa),t):Wa}var cn=Symbol(),un=Symbol();function sc(){return{makeReadOptions:oc,makeWriteOptions:ic,readMessage(t,e,n,r){if(e==null||Array.isArray(e)||typeof e!="object")throw Error(`cannot decode message ${t.typeName} from JSON: ${Ye(e)}`);r??(r=new t);let a=new Map,o=n.typeRegistry;for(let[i,s]of Object.entries(e)){let c=t.fields.findJsonName(i);if(c){if(c.oneof){if(s===null&&c.kind=="scalar")continue;let l=a.get(c.oneof);if(l!==void 0)throw Error(`cannot decode message ${t.typeName} from JSON: multiple keys for oneof "${c.oneof.name}" present: "${l}", "${i}"`);a.set(c.oneof,i)}qa(r,s,c,n,t)}else{let l=!1;if(o!=null&&o.findExtension&&i.startsWith("[")&&i.endsWith("]")){let u=o.findExtension(i.substring(1,i.length-1));if(u&&u.extendee.typeName==t.typeName){l=!0;let[d,p]=Fa(u);qa(d,s,u.field,n,u),ac(r,u,p(),n)}}if(!l&&!n.ignoreUnknownFields)throw Error(`cannot decode message ${t.typeName} from JSON: key "${i}" is unknown`)}}return r},writeMessage(t,e){let n=t.getType(),r={},a;try{for(a of n.fields.byNumber()){if(!Ga(a,t)){if(a.req)throw"required field not set";if(!e.emitDefaultValues||!cc(a))continue}let i=a.oneof?t[a.oneof.localName].value:t[a.localName],s=Ha(a,i,e);s!==void 0&&(r[e.useProtoFieldName?a.name:a.jsonName]=s)}let o=e.typeRegistry;if(o!=null&&o.findExtensionFor)for(let i of n.runtime.bin.listUnknownFields(t)){let s=o.findExtensionFor(n.typeName,i.no);if(s&&Ra(t,s)){let c=rc(t,s,e),l=Ha(s.field,c,e);l!==void 0&&(r[s.field.jsonName]=l)}}}catch(o){let i=a?`cannot encode field ${n.typeName}.${a.name} to JSON`:`cannot encode message ${n.typeName} to JSON`,s=o instanceof Error?o.message:String(o);throw Error(i+(s.length>0?`: ${s}`:""))}return r},readScalar(t,e,n){return Ut(t,e,n??st.BIGINT,!0)},writeScalar(t,e,n){if(e!==void 0&&(n||Ma(t,e)))return dn(t,e)},debug:Ye}}function Ye(t){if(t===null)return"null";switch(typeof t){case"object":return Array.isArray(t)?"array":"object";case"string":return t.length>100?"string":`"${t.split('"').join('\\"')}"`;default:return String(t)}}function qa(t,e,n,r,a){let o=n.localName;if(n.repeated){if(z(n.kind!="map"),e===null)return;if(!Array.isArray(e))throw Error(`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`);let i=t[o];for(let s of e){if(s===null)throw Error(`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(s)}`);switch(n.kind){case"message":i.push(n.T.fromJson(s,r));break;case"enum":let c=gr(n.T,s,r.ignoreUnknownFields,!0);c!==un&&i.push(c);break;case"scalar":try{i.push(Ut(n.T,s,n.L,!0))}catch(l){let u=`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(s)}`;throw l instanceof Error&&l.message.length>0&&(u+=`: ${l.message}`),Error(u)}break}}}else if(n.kind=="map"){if(e===null)return;if(typeof e!="object"||Array.isArray(e))throw Error(`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`);let i=t[o];for(let[s,c]of Object.entries(e)){if(c===null)throw Error(`cannot decode field ${a.typeName}.${n.name} from JSON: map value null`);let l;try{l=lc(n.K,s)}catch(u){let d=`cannot decode map key for field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`;throw u instanceof Error&&u.message.length>0&&(d+=`: ${u.message}`),Error(d)}switch(n.V.kind){case"message":i[l]=n.V.T.fromJson(c,r);break;case"enum":let u=gr(n.V.T,c,r.ignoreUnknownFields,!0);u!==un&&(i[l]=u);break;case"scalar":try{i[l]=Ut(n.V.T,c,st.BIGINT,!0)}catch(d){let p=`cannot decode map value for field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`;throw d instanceof Error&&d.message.length>0&&(p+=`: ${d.message}`),Error(p)}break}}}else switch(n.oneof&&(t=t[n.oneof.localName]={case:o},o="value"),n.kind){case"message":let i=n.T;if(e===null&&i.typeName!="google.protobuf.Value")return;let s=t[o];Ze(s)?s.fromJson(e,r):(t[o]=s=i.fromJson(e,r),i.fieldWrapper&&!n.oneof&&(t[o]=i.fieldWrapper.unwrapField(s)));break;case"enum":let c=gr(n.T,e,r.ignoreUnknownFields,!1);switch(c){case cn:Ja(n,t);break;case un:break;default:t[o]=c;break}break;case"scalar":try{let l=Ut(n.T,e,n.L,!1);l===cn?Ja(n,t):t[o]=l}catch(l){let u=`cannot decode field ${a.typeName}.${n.name} from JSON: ${Ye(e)}`;throw l instanceof Error&&l.message.length>0&&(u+=`: ${l.message}`),Error(u)}break}}function lc(t,e){if(t===w.BOOL)switch(e){case"true":e=!0;break;case"false":e=!1;break}return Ut(t,e,st.BIGINT,!0).toString()}function Ut(t,e,n,r){if(e===null)return r?gt(t,n):cn;switch(t){case w.DOUBLE:case w.FLOAT:if(e==="NaN")return NaN;if(e==="Infinity")return 1/0;if(e==="-Infinity")return-1/0;if(e===""||typeof e=="string"&&e.trim().length!==e.length||typeof e!="string"&&typeof e!="number")break;let a=Number(e);if(Number.isNaN(a)||!Number.isFinite(a))break;return t==w.FLOAT&&Na(a),a;case w.INT32:case w.FIXED32:case w.SFIXED32:case w.SINT32:case w.UINT32:let o;if(typeof e=="number"?o=e:typeof e=="string"&&e.length>0&&e.trim().length===e.length&&(o=Number(e)),o===void 0)break;return t==w.UINT32||t==w.FIXED32?mr(o):an(o),o;case w.INT64:case w.SFIXED64:case w.SINT64:if(typeof e!="number"&&typeof e!="string")break;let i=W.parse(e);return n?i.toString():i;case w.FIXED64:case w.UINT64:if(typeof e!="number"&&typeof e!="string")break;let s=W.uParse(e);return n?s.toString():s;case w.BOOL:if(typeof e!="boolean")break;return e;case w.STRING:if(typeof e!="string")break;return e;case w.BYTES:if(e==="")return new Uint8Array;if(typeof e!="string")break;return ln.dec(e)}throw Error()}function gr(t,e,n,r){if(e===null)return t.typeName=="google.protobuf.NullValue"?0:r?t.values[0].no:cn;switch(typeof e){case"number":if(Number.isInteger(e))return e;break;case"string":let a=t.findName(e);if(a!==void 0)return a.no;if(n)return un;break}throw Error(`cannot decode enum ${t.typeName} from JSON: ${Ye(e)}`)}function cc(t){return t.repeated||t.kind=="map"?!0:!(t.oneof||t.kind=="message"||t.opt||t.req)}function Ha(t,e,n){if(t.kind=="map"){z(typeof e=="object"&&!!e);let r={},a=Object.entries(e);switch(t.V.kind){case"scalar":for(let[i,s]of a)r[i.toString()]=dn(t.V.T,s);break;case"message":for(let[i,s]of a)r[i.toString()]=s.toJson(n);break;case"enum":let o=t.V.T;for(let[i,s]of a)r[i.toString()]=yr(o,s,n.enumAsInteger);break}return n.emitDefaultValues||a.length>0?r:void 0}if(t.repeated){z(Array.isArray(e));let r=[];switch(t.kind){case"scalar":for(let a=0;a<e.length;a++)r.push(dn(t.T,e[a]));break;case"enum":for(let a=0;a<e.length;a++)r.push(yr(t.T,e[a],n.enumAsInteger));break;case"message":for(let a=0;a<e.length;a++)r.push(e[a].toJson(n));break}return n.emitDefaultValues||r.length>0?r:void 0}switch(t.kind){case"scalar":return dn(t.T,e);case"enum":return yr(t.T,e,n.enumAsInteger);case"message":return Va(t.T,e).toJson(n)}}function yr(t,e,n){var r;return z(typeof e=="number"),t.typeName=="google.protobuf.NullValue"?null:n?e:((r=t.findNumber(e))==null?void 0:r.name)??e}function dn(t,e){switch(t){case w.INT32:case w.SFIXED32:case w.SINT32:case w.FIXED32:case w.UINT32:return z(typeof e=="number"),e;case w.FLOAT:case w.DOUBLE:return z(typeof e=="number"),Number.isNaN(e)?"NaN":e===1/0?"Infinity":e===-1/0?"-Infinity":e;case w.STRING:return z(typeof e=="string"),e;case w.BOOL:return z(typeof e=="boolean"),e;case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return z(typeof e=="bigint"||typeof e=="string"||typeof e=="number"),e.toString();case w.BYTES:return z(e instanceof Uint8Array),ln.enc(e)}}var yt=Symbol("@bufbuild/protobuf/unknown-fields"),za={readUnknownFields:!0,readerFactory:t=>new Ql(t)},Ya={writeUnknownFields:!0,writerFactory:()=>new Zl};function uc(t){return t?Object.assign(Object.assign({},za),t):za}function dc(t){return t?Object.assign(Object.assign({},Ya),t):Ya}function fc(){return{makeReadOptions:uc,makeWriteOptions:dc,listUnknownFields(t){return t[yt]??[]},discardUnknownFields(t){delete t[yt]},writeUnknownFields(t,e){let n=t[yt];if(n)for(let r of n)e.tag(r.no,r.wireType).raw(r.data)},onUnknownField(t,e,n,r){let a=t;Array.isArray(a[yt])||(a[yt]=[]),a[yt].push({no:e,wireType:n,data:r})},readMessage(t,e,n,r,a){let o=t.getType(),i=a?e.len:e.pos+n,s,c;for(;e.pos<i&&([s,c]=e.tag(),!(a===!0&&c==Q.EndGroup));){let l=o.fields.find(s);if(!l){let u=e.skip(c,s);r.readUnknownFields&&this.onUnknownField(t,s,c,u);continue}Ka(t,e,l,c,r)}if(a&&(c!=Q.EndGroup||s!==n))throw Error("invalid end group tag")},readField:Ka,writeMessage(t,e,n){let r=t.getType();for(let a of r.fields.byNumber()){if(!Ga(a,t)){if(a.req)throw Error(`cannot encode field ${r.typeName}.${a.name} to binary: required field not set`);continue}Xa(a,a.oneof?t[a.oneof.localName].value:t[a.localName],e,n)}return n.writeUnknownFields&&this.writeUnknownFields(t,e),e},writeField(t,e,n,r){e!==void 0&&Xa(t,e,n,r)}}}function Ka(t,e,n,r,a){let{repeated:o,localName:i}=n;switch(n.oneof&&(t=t[n.oneof.localName],t.case!=i&&delete t.value,t.case=i,i="value"),n.kind){case"scalar":case"enum":let s=n.kind=="enum"?w.INT32:n.T,c=mn;if(n.kind=="scalar"&&n.L>0&&(c=pc),o){let p=t[i];if(r==Q.LengthDelimited&&s!=w.STRING&&s!=w.BYTES){let f=e.uint32()+e.pos;for(;e.pos<f;)p.push(c(e,s))}else p.push(c(e,s))}else t[i]=c(e,s);break;case"message":let l=n.T;o?t[i].push(fn(e,new l,a,n)):Ze(t[i])?fn(e,t[i],a,n):(t[i]=fn(e,new l,a,n),l.fieldWrapper&&!n.oneof&&!n.repeated&&(t[i]=l.fieldWrapper.unwrapField(t[i])));break;case"map":let[u,d]=mc(n,e,a);t[i][u]=d;break}}function fn(t,e,n,r){let a=e.getType().runtime.bin,o=r==null?void 0:r.delimited;return a.readMessage(e,t,o?r.no:t.uint32(),n,o),e}function mc(t,e,n){let r=e.uint32(),a=e.pos+r,o,i;for(;e.pos<a;){let[s]=e.tag();switch(s){case 1:o=mn(e,t.K);break;case 2:switch(t.V.kind){case"scalar":i=mn(e,t.V.T);break;case"enum":i=e.int32();break;case"message":i=fn(e,new t.V.T,n,void 0);break}break}}if(o===void 0&&(o=gt(t.K,st.BIGINT)),typeof o!="string"&&typeof o!="number"&&(o=o.toString()),i===void 0)switch(t.V.kind){case"scalar":i=gt(t.V.T,st.BIGINT);break;case"enum":i=t.V.T.values[0].no;break;case"message":i=new t.V.T;break}return[o,i]}function pc(t,e){let n=mn(t,e);return typeof n=="bigint"?n.toString():n}function mn(t,e){switch(e){case w.STRING:return t.string();case w.BOOL:return t.bool();case w.DOUBLE:return t.double();case w.FLOAT:return t.float();case w.INT32:return t.int32();case w.INT64:return t.int64();case w.UINT64:return t.uint64();case w.FIXED64:return t.fixed64();case w.BYTES:return t.bytes();case w.FIXED32:return t.fixed32();case w.SFIXED32:return t.sfixed32();case w.SFIXED64:return t.sfixed64();case w.SINT64:return t.sint64();case w.UINT32:return t.uint32();case w.SINT32:return t.sint32()}}function Xa(t,e,n,r){z(e!==void 0);let a=t.repeated;switch(t.kind){case"scalar":case"enum":let o=t.kind=="enum"?w.INT32:t.T;if(a)if(z(Array.isArray(e)),t.packed)gc(n,o,t.no,e);else for(let i of e)jt(n,o,t.no,i);else jt(n,o,t.no,e);break;case"message":if(a){z(Array.isArray(e));for(let i of e)Za(n,r,t,i)}else Za(n,r,t,e);break;case"map":z(typeof e=="object"&&!!e);for(let[i,s]of Object.entries(e))hc(n,r,t,i,s);break}}function hc(t,e,n,r,a){t.tag(n.no,Q.LengthDelimited),t.fork();let o=r;switch(n.K){case w.INT32:case w.FIXED32:case w.UINT32:case w.SFIXED32:case w.SINT32:o=Number.parseInt(r);break;case w.BOOL:z(r=="true"||r=="false"),o=r=="true";break}switch(jt(t,n.K,1,o),n.V.kind){case"scalar":jt(t,n.V.T,2,a);break;case"enum":jt(t,w.INT32,2,a);break;case"message":z(a!==void 0),t.tag(2,Q.LengthDelimited).bytes(a.toBinary(e));break}t.join()}function Za(t,e,n,r){let a=Va(n.T,r);n.delimited?t.tag(n.no,Q.StartGroup).raw(a.toBinary(e)).tag(n.no,Q.EndGroup):t.tag(n.no,Q.LengthDelimited).bytes(a.toBinary(e))}function jt(t,e,n,r){z(r!==void 0);let[a,o]=Qa(e);t.tag(n,a)[o](r)}function gc(t,e,n,r){if(!r.length)return;t.tag(n,Q.LengthDelimited).fork();let[,a]=Qa(e);for(let o=0;o<r.length;o++)t[a](r[o]);t.join()}function Qa(t){let e=Q.Varint;switch(t){case w.BYTES:case w.STRING:e=Q.LengthDelimited;break;case w.DOUBLE:case w.FIXED64:case w.SFIXED64:e=Q.Bit64;break;case w.FIXED32:case w.SFIXED32:case w.FLOAT:e=Q.Bit32;break}let n=w[t].toLowerCase();return[e,n]}function yc(){return{setEnumType:Aa,initPartial(t,e){if(t===void 0)return;let n=e.getType();for(let r of n.fields.byMember()){let a=r.localName,o=e,i=t;if(i[a]!=null)switch(r.kind){case"oneof":let s=i[a].case;if(s===void 0)continue;let c=r.findField(s),l=i[a].value;c&&c.kind=="message"&&!Ze(l,c.T)?l=new c.T(l):c&&c.kind==="scalar"&&c.T===w.BYTES&&(l=Pt(l)),o[a]={case:s,value:l};break;case"scalar":case"enum":let u=i[a];r.T===w.BYTES&&(u=r.repeated?u.map(Pt):Pt(u)),o[a]=u;break;case"map":switch(r.V.kind){case"scalar":case"enum":if(r.V.T===w.BYTES)for(let[f,m]of Object.entries(i[a]))o[a][f]=Pt(m);else Object.assign(o[a],i[a]);break;case"message":let p=r.V.T;for(let f of Object.keys(i[a])){let m=i[a][f];p.fieldWrapper||(m=new p(m)),o[a][f]=m}break}break;case"message":let d=r.T;if(r.repeated)o[a]=i[a].map(p=>Ze(p,d)?p:new d(p));else{let p=i[a];d.fieldWrapper?d.typeName==="google.protobuf.BytesValue"?o[a]=Pt(p):o[a]=p:o[a]=Ze(p,d)?p:new d(p)}break}}},equals(t,e,n){return e===n?!0:!e||!n?!1:t.fields.byMember().every(r=>{let a=e[r.localName],o=n[r.localName];if(r.repeated){if(a.length!==o.length)return!1;switch(r.kind){case"message":return a.every((i,s)=>r.T.equals(i,o[s]));case"scalar":return a.every((i,s)=>et(r.T,i,o[s]));case"enum":return a.every((i,s)=>et(w.INT32,i,o[s]))}throw Error(`repeated cannot contain ${r.kind}`)}switch(r.kind){case"message":let i=a,s=o;return r.T.fieldWrapper&&(i!==void 0&&!Ze(i)&&(i=r.T.fieldWrapper.wrapField(i)),s!==void 0&&!Ze(s)&&(s=r.T.fieldWrapper.wrapField(s))),r.T.equals(i,s);case"enum":return et(w.INT32,a,o);case"scalar":return et(r.T,a,o);case"oneof":if(a.case!==o.case)return!1;let c=r.findField(a.case);if(c===void 0)return!0;switch(c.kind){case"message":return c.T.equals(a.value,o.value);case"enum":return et(w.INT32,a.value,o.value);case"scalar":return et(c.T,a.value,o.value)}throw Error(`oneof cannot contain ${c.kind}`);case"map":let l=Object.keys(a).concat(Object.keys(o));switch(r.V.kind){case"message":let u=r.V.T;return l.every(p=>u.equals(a[p],o[p]));case"enum":return l.every(p=>et(w.INT32,a[p],o[p]));case"scalar":let d=r.V.T;return l.every(p=>et(d,a[p],o[p]))}break}})},clone(t){let e=t.getType(),n=new e,r=n;for(let a of e.fields.byMember()){let o=t[a.localName],i;if(a.repeated)i=o.map(pn);else if(a.kind=="map"){i=r[a.localName];for(let[s,c]of Object.entries(o))i[s]=pn(c)}else i=a.kind=="oneof"?a.findField(o.case)?{case:o.case,value:pn(o.value)}:{case:void 0}:pn(o);r[a.localName]=i}for(let a of e.runtime.bin.listUnknownFields(t))e.runtime.bin.onUnknownField(r,a.no,a.wireType,a.data);return n}}}function pn(t){if(t===void 0)return t;if(Ze(t))return t.clone();if(t instanceof Uint8Array){let e=new Uint8Array(t.byteLength);return e.set(t),e}return t}function Pt(t){return t instanceof Uint8Array?t:new Uint8Array(t)}function bc(t,e,n){return{syntax:t,json:sc(),bin:fc(),util:Object.assign(Object.assign({},yc()),{newFieldList:e,initFields:n}),makeMessageType(r,a,o){return ql(this,r,a,o)},makeEnum:Wl,makeEnumType:La,getEnumType:$l,makeExtension(r,a,o){return ec(this,r,a,o)}}}var wc=class{constructor(t,e){this._fields=t,this._normalizer=e}findJsonName(t){if(!this.jsonNames){let e={};for(let n of this.list())e[n.jsonName]=e[n.name]=n;this.jsonNames=e}return this.jsonNames[t]}find(t){if(!this.numbers){let e={};for(let n of this.list())e[n.no]=n;this.numbers=e}return this.numbers[t]}list(){return this.all||(this.all=this._normalizer(this._fields)),this.all}byNumber(){return this.numbersAsc||(this.numbersAsc=this.list().concat().sort((t,e)=>t.no-e.no)),this.numbersAsc}byMember(){if(!this.members){this.members=[];let t=this.members,e;for(let n of this.list())n.oneof?n.oneof!==e&&(e=n.oneof,t.push(e)):t.push(n)}return this.members}};function eo(t,e){let n=to(t);return e?n:Cc(kc(n))}function vc(t){return eo(t,!1)}const xc=to;function to(t){let e=!1,n=[];for(let r=0;r<t.length;r++){let a=t.charAt(r);switch(a){case"_":e=!0;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":n.push(a),e=!1;break;default:e&&(e=!1,a=a.toUpperCase()),n.push(a);break}}return n.join("")}var Ec=new Set(["constructor","toString","toJSON","valueOf"]),Sc=new Set(["getType","clone","equals","fromBinary","fromJson","fromJsonString","toBinary","toJson","toJsonString","toObject"]),no=t=>`${t}$`,kc=t=>Sc.has(t)?no(t):t;const Cc=t=>Ec.has(t)?no(t):t;var Tc=class{constructor(t){this.kind="oneof",this.repeated=!1,this.packed=!1,this.opt=!1,this.req=!1,this.default=void 0,this.fields=[],this.name=t,this.localName=vc(t)}addField(t){z(t.oneof===this,`field ${t.name} not one of ${this.name}`),this.fields.push(t)}findField(t){if(!this._lookup){this._lookup=Object.create(null);for(let e=0;e<this.fields.length;e++)this._lookup[this.fields[e].localName]=this.fields[e]}return this._lookup[t]}};function Nc(t,e){let n=[],r;for(let a of typeof t=="function"?t():t){let o=a;if(o.localName=eo(a.name,a.oneof!==void 0),o.jsonName=a.jsonName??xc(a.name),o.repeated=a.repeated??!1,a.kind=="scalar"&&(o.L=a.L??st.BIGINT),o.delimited=a.delimited??!1,o.req=a.req??!1,o.opt=a.opt??!1,a.packed===void 0&&(e?o.packed=a.kind=="enum"||a.kind=="scalar"&&a.T!=w.BYTES&&a.T!=w.STRING:o.packed=!1),a.oneof!==void 0){let i=typeof a.oneof=="string"?a.oneof:a.oneof.name;(!r||r.name!=i)&&(r=new Tc(i)),o.oneof=r,r.addField(o)}n.push(o)}return n}const x=bc("proto3",t=>new wc(t,e=>Nc(e,!0)),t=>{for(let e of t.getType().fields.byMember()){if(e.opt)continue;let n=e.localName,r=t;if(e.repeated){r[n]=[];continue}switch(e.kind){case"oneof":r[n]={case:void 0};break;case"enum":r[n]=0;break;case"map":r[n]={};break;case"scalar":r[n]=gt(e.T,e.L);break;case"message":break}}});var Ee;(function(t){t[t.Unary=0]="Unary",t[t.ServerStreaming=1]="ServerStreaming",t[t.ClientStreaming=2]="ClientStreaming",t[t.BiDiStreaming=3]="BiDiStreaming"})(Ee||(Ee={}));var ro;(function(t){t[t.NoSideEffects=1]="NoSideEffects",t[t.Idempotent=2]="Idempotent"})(ro||(ro={}));var br;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.JUPYTER_FORMAT=77]="JUPYTER_FORMAT"})(br||(br={})),x.util.setEnumType(br,"exa.codeium_common_pb.ExperimentKey",[{no:0,name:"UNSPECIFIED"},{no:77,name:"JUPYTER_FORMAT"}]);var hn;(function(t){t[t.CODEIUM=0]="CODEIUM"})(hn||(hn={})),x.util.setEnumType(hn,"exa.codeium_common_pb.AuthSource",[{no:0,name:"AUTH_SOURCE_CODEIUM"}]);var gn;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.ENABLE_CODEIUM=1]="ENABLE_CODEIUM",t[t.DISABLE_CODEIUM=2]="DISABLE_CODEIUM",t[t.SHOW_PREVIOUS_COMPLETION=3]="SHOW_PREVIOUS_COMPLETION",t[t.SHOW_NEXT_COMPLETION=4]="SHOW_NEXT_COMPLETION"})(gn||(gn={})),x.util.setEnumType(gn,"exa.codeium_common_pb.EventType",[{no:0,name:"EVENT_TYPE_UNSPECIFIED"},{no:1,name:"EVENT_TYPE_ENABLE_CODEIUM"},{no:2,name:"EVENT_TYPE_DISABLE_CODEIUM"},{no:3,name:"EVENT_TYPE_SHOW_PREVIOUS_COMPLETION"},{no:4,name:"EVENT_TYPE_SHOW_NEXT_COMPLETION"}]);var yn;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.TYPING_AS_SUGGESTED=1]="TYPING_AS_SUGGESTED",t[t.CACHE=2]="CACHE",t[t.NETWORK=3]="NETWORK"})(yn||(yn={})),x.util.setEnumType(yn,"exa.codeium_common_pb.CompletionSource",[{no:0,name:"COMPLETION_SOURCE_UNSPECIFIED"},{no:1,name:"COMPLETION_SOURCE_TYPING_AS_SUGGESTED"},{no:2,name:"COMPLETION_SOURCE_CACHE"},{no:3,name:"COMPLETION_SOURCE_NETWORK"}]);var lt;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.C=1]="C",t[t.CLOJURE=2]="CLOJURE",t[t.COFFEESCRIPT=3]="COFFEESCRIPT",t[t.CPP=4]="CPP",t[t.CSHARP=5]="CSHARP",t[t.CSS=6]="CSS",t[t.CUDACPP=7]="CUDACPP",t[t.DOCKERFILE=8]="DOCKERFILE",t[t.GO=9]="GO",t[t.GROOVY=10]="GROOVY",t[t.HANDLEBARS=11]="HANDLEBARS",t[t.HASKELL=12]="HASKELL",t[t.HCL=13]="HCL",t[t.HTML=14]="HTML",t[t.INI=15]="INI",t[t.JAVA=16]="JAVA",t[t.JAVASCRIPT=17]="JAVASCRIPT",t[t.JSON=18]="JSON",t[t.JULIA=19]="JULIA",t[t.KOTLIN=20]="KOTLIN",t[t.LATEX=21]="LATEX",t[t.LESS=22]="LESS",t[t.LUA=23]="LUA",t[t.MAKEFILE=24]="MAKEFILE",t[t.MARKDOWN=25]="MARKDOWN",t[t.OBJECTIVEC=26]="OBJECTIVEC",t[t.OBJECTIVECPP=27]="OBJECTIVECPP",t[t.PERL=28]="PERL",t[t.PHP=29]="PHP",t[t.PLAINTEXT=30]="PLAINTEXT",t[t.PROTOBUF=31]="PROTOBUF",t[t.PBTXT=32]="PBTXT",t[t.PYTHON=33]="PYTHON",t[t.R=34]="R",t[t.RUBY=35]="RUBY",t[t.RUST=36]="RUST",t[t.SASS=37]="SASS",t[t.SCALA=38]="SCALA",t[t.SCSS=39]="SCSS",t[t.SHELL=40]="SHELL",t[t.SQL=41]="SQL",t[t.STARLARK=42]="STARLARK",t[t.SWIFT=43]="SWIFT",t[t.TSX=44]="TSX",t[t.TYPESCRIPT=45]="TYPESCRIPT",t[t.VISUALBASIC=46]="VISUALBASIC",t[t.VUE=47]="VUE",t[t.XML=48]="XML",t[t.XSL=49]="XSL",t[t.YAML=50]="YAML",t[t.SVELTE=51]="SVELTE",t[t.TOML=52]="TOML",t[t.DART=53]="DART",t[t.RST=54]="RST",t[t.OCAML=55]="OCAML",t[t.CMAKE=56]="CMAKE",t[t.PASCAL=57]="PASCAL",t[t.ELIXIR=58]="ELIXIR",t[t.FSHARP=59]="FSHARP",t[t.LISP=60]="LISP",t[t.MATLAB=61]="MATLAB",t[t.POWERSHELL=62]="POWERSHELL",t[t.SOLIDITY=63]="SOLIDITY",t[t.ADA=64]="ADA",t[t.OCAML_INTERFACE=65]="OCAML_INTERFACE"})(lt||(lt={})),x.util.setEnumType(lt,"exa.codeium_common_pb.Language",[{no:0,name:"LANGUAGE_UNSPECIFIED"},{no:1,name:"LANGUAGE_C"},{no:2,name:"LANGUAGE_CLOJURE"},{no:3,name:"LANGUAGE_COFFEESCRIPT"},{no:4,name:"LANGUAGE_CPP"},{no:5,name:"LANGUAGE_CSHARP"},{no:6,name:"LANGUAGE_CSS"},{no:7,name:"LANGUAGE_CUDACPP"},{no:8,name:"LANGUAGE_DOCKERFILE"},{no:9,name:"LANGUAGE_GO"},{no:10,name:"LANGUAGE_GROOVY"},{no:11,name:"LANGUAGE_HANDLEBARS"},{no:12,name:"LANGUAGE_HASKELL"},{no:13,name:"LANGUAGE_HCL"},{no:14,name:"LANGUAGE_HTML"},{no:15,name:"LANGUAGE_INI"},{no:16,name:"LANGUAGE_JAVA"},{no:17,name:"LANGUAGE_JAVASCRIPT"},{no:18,name:"LANGUAGE_JSON"},{no:19,name:"LANGUAGE_JULIA"},{no:20,name:"LANGUAGE_KOTLIN"},{no:21,name:"LANGUAGE_LATEX"},{no:22,name:"LANGUAGE_LESS"},{no:23,name:"LANGUAGE_LUA"},{no:24,name:"LANGUAGE_MAKEFILE"},{no:25,name:"LANGUAGE_MARKDOWN"},{no:26,name:"LANGUAGE_OBJECTIVEC"},{no:27,name:"LANGUAGE_OBJECTIVECPP"},{no:28,name:"LANGUAGE_PERL"},{no:29,name:"LANGUAGE_PHP"},{no:30,name:"LANGUAGE_PLAINTEXT"},{no:31,name:"LANGUAGE_PROTOBUF"},{no:32,name:"LANGUAGE_PBTXT"},{no:33,name:"LANGUAGE_PYTHON"},{no:34,name:"LANGUAGE_R"},{no:35,name:"LANGUAGE_RUBY"},{no:36,name:"LANGUAGE_RUST"},{no:37,name:"LANGUAGE_SASS"},{no:38,name:"LANGUAGE_SCALA"},{no:39,name:"LANGUAGE_SCSS"},{no:40,name:"LANGUAGE_SHELL"},{no:41,name:"LANGUAGE_SQL"},{no:42,name:"LANGUAGE_STARLARK"},{no:43,name:"LANGUAGE_SWIFT"},{no:44,name:"LANGUAGE_TSX"},{no:45,name:"LANGUAGE_TYPESCRIPT"},{no:46,name:"LANGUAGE_VISUALBASIC"},{no:47,name:"LANGUAGE_VUE"},{no:48,name:"LANGUAGE_XML"},{no:49,name:"LANGUAGE_XSL"},{no:50,name:"LANGUAGE_YAML"},{no:51,name:"LANGUAGE_SVELTE"},{no:52,name:"LANGUAGE_TOML"},{no:53,name:"LANGUAGE_DART"},{no:54,name:"LANGUAGE_RST"},{no:55,name:"LANGUAGE_OCAML"},{no:56,name:"LANGUAGE_CMAKE"},{no:57,name:"LANGUAGE_PASCAL"},{no:58,name:"LANGUAGE_ELIXIR"},{no:59,name:"LANGUAGE_FSHARP"},{no:60,name:"LANGUAGE_LISP"},{no:61,name:"LANGUAGE_MATLAB"},{no:62,name:"LANGUAGE_POWERSHELL"},{no:63,name:"LANGUAGE_SOLIDITY"},{no:64,name:"LANGUAGE_ADA"},{no:65,name:"LANGUAGE_OCAML_INTERFACE"}]);var Ic=(Se=class extends X{constructor(n){super();g(this,"completionId","");g(this,"text","");g(this,"prefix","");g(this,"stop","");g(this,"score",0);g(this,"tokens",[]);g(this,"decodedTokens",[]);g(this,"probabilities",[]);g(this,"adjustedProbabilities",[]);g(this,"generatedLength",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new Se().fromBinary(n,r)}static fromJson(n,r){return new Se().fromJson(n,r)}static fromJsonString(n,r){return new Se().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Se,n,r)}},g(Se,"runtime",x),g(Se,"typeName","exa.codeium_common_pb.Completion"),g(Se,"fields",x.util.newFieldList(()=>[{no:1,name:"completion_id",kind:"scalar",T:9},{no:2,name:"text",kind:"scalar",T:9},{no:3,name:"prefix",kind:"scalar",T:9},{no:4,name:"stop",kind:"scalar",T:9},{no:5,name:"score",kind:"scalar",T:1},{no:6,name:"tokens",kind:"scalar",T:4,repeated:!0},{no:7,name:"decoded_tokens",kind:"scalar",T:9,repeated:!0},{no:8,name:"probabilities",kind:"scalar",T:1,repeated:!0},{no:9,name:"adjusted_probabilities",kind:"scalar",T:1,repeated:!0},{no:10,name:"generated_length",kind:"scalar",T:4}])),Se),ao=(ke=class extends X{constructor(n){super();g(this,"ideName","");g(this,"ideVersion","");g(this,"extensionName","");g(this,"extensionVersion","");g(this,"apiKey","");g(this,"locale","");g(this,"sessionId","");g(this,"requestId",W.zero);g(this,"userAgent","");g(this,"url","");g(this,"authSource",hn.CODEIUM);x.util.initPartial(n,this)}static fromBinary(n,r){return new ke().fromBinary(n,r)}static fromJson(n,r){return new ke().fromJson(n,r)}static fromJsonString(n,r){return new ke().fromJsonString(n,r)}static equals(n,r){return x.util.equals(ke,n,r)}},g(ke,"runtime",x),g(ke,"typeName","exa.codeium_common_pb.Metadata"),g(ke,"fields",x.util.newFieldList(()=>[{no:1,name:"ide_name",kind:"scalar",T:9},{no:7,name:"ide_version",kind:"scalar",T:9},{no:12,name:"extension_name",kind:"scalar",T:9},{no:2,name:"extension_version",kind:"scalar",T:9},{no:3,name:"api_key",kind:"scalar",T:9},{no:4,name:"locale",kind:"scalar",T:9},{no:10,name:"session_id",kind:"scalar",T:9},{no:9,name:"request_id",kind:"scalar",T:4},{no:13,name:"user_agent",kind:"scalar",T:9},{no:14,name:"url",kind:"scalar",T:9},{no:15,name:"auth_source",kind:"enum",T:x.getEnumType(hn)}])),ke),Ac=(Ce=class extends X{constructor(n){super();g(this,"tabSize",W.zero);g(this,"insertSpaces",!1);x.util.initPartial(n,this)}static fromBinary(n,r){return new Ce().fromBinary(n,r)}static fromJson(n,r){return new Ce().fromJson(n,r)}static fromJsonString(n,r){return new Ce().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ce,n,r)}},g(Ce,"runtime",x),g(Ce,"typeName","exa.codeium_common_pb.EditorOptions"),g(Ce,"fields",x.util.newFieldList(()=>[{no:1,name:"tab_size",kind:"scalar",T:4},{no:2,name:"insert_spaces",kind:"scalar",T:8}])),Ce);Te=class extends X{constructor(n){super();g(this,"eventType",gn.UNSPECIFIED);g(this,"eventJson","");g(this,"timestampUnixMs",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new Te().fromBinary(n,r)}static fromJson(n,r){return new Te().fromJson(n,r)}static fromJsonString(n,r){return new Te().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Te,n,r)}},g(Te,"runtime",x),g(Te,"typeName","exa.codeium_common_pb.Event"),g(Te,"fields",x.util.newFieldList(()=>[{no:1,name:"event_type",kind:"enum",T:x.getEnumType(gn)},{no:2,name:"event_json",kind:"scalar",T:9},{no:3,name:"timestamp_unix_ms",kind:"scalar",T:3}]));var Lc=class extends $t{constructor(e,n){super();g(this,"index");g(this,"total");this.index=e,this.total=n}toDOM(){let e=document.createElement("span");e.setAttribute("aria-hidden","true"),e.className="cm-codeium-cycle";let n=e.appendChild(document.createElement("span"));n.className="cm-codeium-cycle-explanation",n.innerText=`${this.index+1}/${this.total}`;let r=e.appendChild(document.createElement("button"));return r.className="cm-codeium-cycle-key",r.innerText="\u2192 (Ctrl ])",r.dataset.action="codeium-cycle",e}ignoreEvent(){return!1}};const bn=Vt.define({combine(t){return Wn(t,{language:lt.TYPESCRIPT,timeout:150,widgetClass:Lc,alwaysOn:!0},{})}}),oo=Vt.define({combine(t){return Wn(t,{override:()=>[]},{})}});var Oc=V.mark({class:"cm-ghostText"});const ct=We.define({create(t){return null},update(t,e){var r;let n=e.state.facet(bn);for(let a of e.effects){if(a.is(ur)){let{changeSpecs:o,index:i}=a.value,s=o[i].map(l=>Oc.range(l.absoluteStartPos,l.absoluteEndPos)),c=(r=s.at(-1))==null?void 0:r.to;return{index:i,decorations:V.set([...s,...c!==void 0&&o.length>1&&n.widgetClass?[V.widget({widget:new n.widgetClass(i,o.length),side:1}).range(c)]:[]]),changeSpecs:o,reverseChangeSet:a.value.reverseChangeSet}}if(a.is(dr)||a.is(fr))return null}return t&&{...t,decorations:t.decorations.map(e.changes),reverseChangeSet:t.reverseChangeSet.map(e.changes)}},provide:t=>R.decorations.from(t,e=>(e==null?void 0:e.decorations)||V.none)}),bt=ea.define(),wn=ea.define();var B;(function(t){t[t.Canceled=1]="Canceled",t[t.Unknown=2]="Unknown",t[t.InvalidArgument=3]="InvalidArgument",t[t.DeadlineExceeded=4]="DeadlineExceeded",t[t.NotFound=5]="NotFound",t[t.AlreadyExists=6]="AlreadyExists",t[t.PermissionDenied=7]="PermissionDenied",t[t.ResourceExhausted=8]="ResourceExhausted",t[t.FailedPrecondition=9]="FailedPrecondition",t[t.Aborted=10]="Aborted",t[t.OutOfRange=11]="OutOfRange",t[t.Unimplemented=12]="Unimplemented",t[t.Internal=13]="Internal",t[t.Unavailable=14]="Unavailable",t[t.DataLoss=15]="DataLoss",t[t.Unauthenticated=16]="Unauthenticated"})(B||(B={}));function wr(t){let e=B[t];return typeof e=="string"?e[0].toLowerCase()+e.substring(1).replace(/[A-Z]/g,n=>"_"+n.toLowerCase()):t.toString()}var vn;function _c(t){if(!vn){vn={};for(let e of Object.values(B))typeof e!="string"&&(vn[wr(e)]=e)}return vn[t]}var ge=class Nt extends Error{constructor(e,n=B.Unknown,r,a,o){super(Uc(e,n)),this.name="ConnectError",Object.setPrototypeOf(this,new.target.prototype),this.rawMessage=e,this.code=n,this.metadata=new Headers(r??{}),this.details=a??[],this.cause=o}static from(e,n=B.Unknown){return e instanceof Nt?e:e instanceof Error?e.name=="AbortError"?new Nt(e.message,B.Canceled):new Nt(e.message,n,void 0,void 0,e):new Nt(String(e),n,void 0,void 0,e)}static[Symbol.hasInstance](e){return e instanceof Error?Object.getPrototypeOf(e)===Nt.prototype?!0:e.name==="ConnectError"&&"code"in e&&typeof e.code=="number"&&"metadata"in e&&"details"in e&&Array.isArray(e.details)&&"rawMessage"in e&&typeof e.rawMessage=="string"&&"cause"in e:!1}findDetails(e){let n="typeName"in e?{findMessage:a=>a===e.typeName?e:void 0}:e,r=[];for(let a of this.details){if("getType"in a){n.findMessage(a.getType().typeName)&&r.push(a);continue}let o=n.findMessage(a.type);if(o)try{r.push(o.fromBinary(a.value))}catch{}}return r}};function Uc(t,e){return t.length?`[${wr(e)}] ${t}`:`[${wr(e)}]`}function jc(...t){let e=new Headers;for(let n of t)n.forEach((r,a)=>{e.append(a,r)});return e}function Pc(t,e){let n={};for(let[r,a]of Object.entries(t.methods)){let o=e(Object.assign(Object.assign({},a),{localName:r,service:t}));o!=null&&(n[r]=o)}return n}function Dc(t){let e,n=new Uint8Array;function r(a){let o=new Uint8Array(n.length+a.length);o.set(n),o.set(a,n.length),n=o}return new ReadableStream({start(){e=t.getReader()},async pull(a){let o;for(;;){if(o===void 0&&n.byteLength>=5){let c=0;for(let l=1;l<5;l++)c=(c<<8)+n[l];o={flags:n[0],length:c}}if(o!==void 0&&n.byteLength>=o.length+5)break;let s=await e.read();if(s.done)break;r(s.value)}if(o===void 0){if(n.byteLength==0){a.close();return}a.error(new ge("premature end of stream",B.DataLoss));return}let i=n.subarray(5,5+o.length);n=n.subarray(5+o.length),a.enqueue({flags:o.flags,data:i})}})}function Mc(t,e){let n=new Uint8Array(e.length+5);n.set(e,5);let r=new DataView(n.buffer,n.byteOffset,n.byteLength);return r.setUint8(0,t),r.setUint32(1,e.length),n}var Fc=function(t){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=t[o]&&function(i){return new Promise(function(s,c){i=t[o](i),a(s,c,i.done,i.value)})}}function a(o,i,s,c){Promise.resolve(c).then(function(l){o({value:l,done:s})},i)}},Dt=function(t){return this instanceof Dt?(this.v=t,this):new Dt(t)},Rc=function(t,e,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),a,o=[];return a={},s("next"),s("throw"),s("return",i),a[Symbol.asyncIterator]=function(){return this},a;function i(f){return function(m){return Promise.resolve(m).then(f,d)}}function s(f,m){r[f]&&(a[f]=function(y){return new Promise(function(b,v){o.push([f,y,b,v])>1||c(f,y)})},m&&(a[f]=m(a[f])))}function c(f,m){try{l(r[f](m))}catch(y){p(o[0][3],y)}}function l(f){f.value instanceof Dt?Promise.resolve(f.value.v).then(u,d):p(o[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function p(f,m){f(m),o.shift(),o.length&&c(o[0][0],o[0][1])}},Bc=function(t){var e,n;return e={},r("next"),r("throw",function(a){throw a}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(a,o){e[a]=t[a]?function(i){return(n=!n)?{value:Dt(t[a](i)),done:!1}:o?o(i):i}:o}};function Gc(t){return Rc(this,arguments,function*(){yield Dt(yield*Bc(Fc(t)))})}var io=function(t){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=t[o]&&function(i){return new Promise(function(s,c){i=t[o](i),a(s,c,i.done,i.value)})}}function a(o,i,s,c){Promise.resolve(c).then(function(l){o({value:l,done:s})},i)}},wt=function(t){return this instanceof wt?(this.v=t,this):new wt(t)},Jc=function(t){var e,n;return e={},r("next"),r("throw",function(a){throw a}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(a,o){e[a]=t[a]?function(i){return(n=!n)?{value:wt(t[a](i)),done:!1}:o?o(i):i}:o}},Vc=function(t,e,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),a,o=[];return a={},s("next"),s("throw"),s("return",i),a[Symbol.asyncIterator]=function(){return this},a;function i(f){return function(m){return Promise.resolve(m).then(f,d)}}function s(f,m){r[f]&&(a[f]=function(y){return new Promise(function(b,v){o.push([f,y,b,v])>1||c(f,y)})},m&&(a[f]=m(a[f])))}function c(f,m){try{l(r[f](m))}catch(y){p(o[0][3],y)}}function l(f){f.value instanceof wt?Promise.resolve(f.value.v).then(u,d):p(o[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function p(f,m){f(m),o.shift(),o.length&&c(o[0][0],o[0][1])}};function $c(t,e){return Pc(t,n=>{switch(n.kind){case Ee.Unary:return qc(e,t,n);case Ee.ServerStreaming:return Hc(e,t,n);case Ee.ClientStreaming:return zc(e,t,n);case Ee.BiDiStreaming:return Yc(e,t,n);default:return null}})}function Wc(t,e){return $c(t,e)}function qc(t,e,n){return async function(r,a){var o,i;let s=await t.unary(e,n,a==null?void 0:a.signal,a==null?void 0:a.timeoutMs,a==null?void 0:a.headers,r,a==null?void 0:a.contextValues);return(o=a==null?void 0:a.onHeader)==null||o.call(a,s.header),(i=a==null?void 0:a.onTrailer)==null||i.call(a,s.trailer),s.message}}function Hc(t,e,n){return function(r,a){return so(t.stream(e,n,a==null?void 0:a.signal,a==null?void 0:a.timeoutMs,a==null?void 0:a.headers,Gc([r]),a==null?void 0:a.contextValues),a)}}function zc(t,e,n){return async function(r,a){var o,i,s,c,l,u;let d=await t.stream(e,n,a==null?void 0:a.signal,a==null?void 0:a.timeoutMs,a==null?void 0:a.headers,r,a==null?void 0:a.contextValues);(l=a==null?void 0:a.onHeader)==null||l.call(a,d.header);let p,f=0;try{for(var m=!0,y=io(d.message),b;b=await y.next(),o=b.done,!o;m=!0)c=b.value,m=!1,p=c,f++}catch(v){i={error:v}}finally{try{!m&&!o&&(s=y.return)&&await s.call(y)}finally{if(i)throw i.error}}if(!p)throw new ge("protocol error: missing response message",B.Unimplemented);if(f>1)throw new ge("protocol error: received extra messages for client streaming method",B.Unimplemented);return(u=a==null?void 0:a.onTrailer)==null||u.call(a,d.trailer),p}}function Yc(t,e,n){return function(r,a){return so(t.stream(e,n,a==null?void 0:a.signal,a==null?void 0:a.timeoutMs,a==null?void 0:a.headers,r,a==null?void 0:a.contextValues),a)}}function so(t,e){let n=(function(){return Vc(this,arguments,function*(){var r,a;let o=yield wt(t);(r=e==null?void 0:e.onHeader)==null||r.call(e,o.header),yield wt(yield*Jc(io(o.message))),(a=e==null?void 0:e.onTrailer)==null||a.call(e,o.trailer)})})()[Symbol.asyncIterator]();return{[Symbol.asyncIterator]:()=>({next:()=>n.next()})}}function Kc(...t){let e=new AbortController,n=t.filter(a=>a!==void 0).concat(e.signal);for(let a of n){if(a.aborted){r.apply(a);break}a.addEventListener("abort",r)}function r(){e.signal.aborted||e.abort(lo(this));for(let a of n)a.removeEventListener("abort",r)}return e}function Xc(t){let e=new AbortController,n=()=>{e.abort(new ge("the operation timed out",B.DeadlineExceeded))},r;return t!==void 0&&(t<=0?n():r=setTimeout(n,t)),{signal:e.signal,cleanup:()=>clearTimeout(r)}}function lo(t){if(!t.aborted)return;if(t.reason!==void 0)return t.reason;let e=Error("This operation was aborted");return e.name="AbortError",e}function co(){return{get(t){return t.id in this?this[t.id]:t.defaultValue},set(t,e){return this[t.id]=e,this},delete(t){return delete this[t.id],this}}}function uo(t,e,n){let r=typeof e=="string"?e:e.typeName,a=typeof n=="string"?n:n.name;return t.toString().replace(/\/?$/,`/${r}/${a}`)}function fo(t,e){return e instanceof t?e:new t(e)}function Zc(t,e){function n(r){return r.done===!0?r:{done:r.done,value:fo(t,r.value)}}return{[Symbol.asyncIterator](){let r=e[Symbol.asyncIterator](),a={next:()=>r.next().then(n)};return r.throw!==void 0&&(a.throw=o=>r.throw(o).then(n)),r.return!==void 0&&(a.return=o=>r.return(o).then(n)),a}}}function mo(t,e){return(e==null?void 0:e.concat().reverse().reduce((n,r)=>r(n),t))??t}function po(t){let e=Object.assign({},t);return e.ignoreUnknownFields??(e.ignoreUnknownFields=!0),e}function ho(t,e,n,r){let a=e?go(t.I,r):yo(t.I,n);return{parse:(e?go(t.O,r):yo(t.O,n)).parse,serialize:a.serialize}}function go(t,e){return{parse(n){try{return t.fromBinary(n,e)}catch(r){throw new ge(`parse binary: ${r instanceof Error?r.message:String(r)}`,B.Internal)}},serialize(n){try{return n.toBinary(e)}catch(r){throw new ge(`serialize binary: ${r instanceof Error?r.message:String(r)}`,B.Internal)}}}}function yo(t,e){let n=(e==null?void 0:e.textEncoder)??new TextEncoder,r=(e==null?void 0:e.textDecoder)??new TextDecoder,a=po(e);return{parse(o){try{let i=r.decode(o);return t.fromJsonString(i,a)}catch(i){throw ge.from(i,B.InvalidArgument)}},serialize(o){try{let i=o.toJsonString(a);return n.encode(i)}catch(i){throw ge.from(i,B.Internal)}}}}const Qc=/^application\/(connect\+)?(?:(json)(?:; ?charset=utf-?8)?|(proto))$/i;function eu(t){let e=t==null?void 0:t.match(Qc);if(e)return{stream:!!e[1],binary:!!e[3]}}function bo(t,e,n){if(e&&new Headers(e).forEach((i,s)=>n.metadata.append(s,i)),typeof t!="object"||!t||Array.isArray(t))throw n;let r=n.code;"code"in t&&typeof t.code=="string"&&(r=_c(t.code)??r);let a=t.message;if(a!=null&&typeof a!="string")throw n;let o=new ge(a??"",r,e);if("details"in t&&Array.isArray(t.details))for(let i of t.details){if(typeof i!="object"||!i||Array.isArray(i)||typeof i.type!="string"||typeof i.value!="string")throw n;try{o.details.push({type:i.type,value:ln.dec(i.value),debug:i.debug})}catch{throw n}}return o}function tu(t){let e=new ge("invalid end stream",B.Unknown),n;try{n=JSON.parse(typeof t=="string"?t:new TextDecoder().decode(t))}catch{throw e}if(typeof n!="object"||!n||Array.isArray(n))throw e;let r=new Headers;if("metadata"in n){if(typeof n.metadata!="object"||n.metadata==null||Array.isArray(n.metadata))throw e;for(let[a,o]of Object.entries(n.metadata)){if(!Array.isArray(o)||o.some(i=>typeof i!="string"))throw e;for(let i of o)r.append(a,i)}}return{metadata:r,error:"error"in n&&n.error!=null?bo(n.error,r,e):void 0}}const xn="Content-Type",wo="Content-Encoding",vo="Connect-Protocol-Version";function nu(t){switch(t){case 400:return B.Internal;case 401:return B.Unauthenticated;case 403:return B.PermissionDenied;case 404:return B.Unimplemented;case 429:return B.Unavailable;case 502:return B.Unavailable;case 503:return B.Unavailable;case 504:return B.Unavailable;default:return B.Unknown}}function xo(t){let e=new Headers,n=new Headers;return t.forEach((r,a)=>{a.toLowerCase().startsWith("trailer-")?n.append(a.substring(8),r):e.append(a,r)}),[e,n]}function Eo(t,e,n,r,a){let o=new Headers(r??{});return n!==void 0&&o.set("Connect-Timeout-Ms",`${n}`),o.set(xn,t==Ee.Unary?e?"application/proto":"application/json":e?"application/connect+proto":"application/connect+json"),o.set(vo,"1"),a&&o.set("User-Agent","connect-es/1.6.1"),o}function So(t,e,n,r){let a=r.get(xn),o=eu(a);if(n!==200){let s=new ge(`HTTP ${n}`,nu(n),r);if(t==Ee.Unary&&o&&!o.binary)return{isUnaryError:!0,unaryError:s};throw s}let i={binary:e,stream:t!==Ee.Unary};if((o==null?void 0:o.binary)!==i.binary||o.stream!==i.stream)throw new ge(`unsupported content type ${a}`,o===void 0?B.Unknown:B.Internal,r);return{isUnaryError:!1}}var ru="application/";function au(t,e){return e?ln.enc(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""):encodeURIComponent(new TextDecoder().decode(t))}function ou(t,e,n){let r="?connect=v1",a=t.header.get(xn);(a==null?void 0:a.indexOf(ru))===0&&(r+="&encoding="+encodeURIComponent(a.slice(12)));let o=t.header.get(wo);o!==null&&o!=="identity"&&(r+="&compression="+encodeURIComponent(o),n=!0),n&&(r+="&base64=1"),r+="&message="+au(e,n);let i=t.url+r,s=new Headers(t.header);return[vo,xn,"Content-Length",wo,"Accept-Encoding"].forEach(c=>s.delete(c)),Object.assign(Object.assign({},t),{init:Object.assign(Object.assign({},t.init),{method:"GET"}),url:i,header:s})}function iu(t){let e=mo(t.next,t.interceptors),[n,r,a]=ko(t);return e(Object.assign(Object.assign({},t.req),{message:fo(t.req.method.I,t.req.message),signal:n})).then(o=>(a(),o),r)}function su(t){let e=mo(t.next,t.interceptors),[n,r,a]=ko(t),o=Object.assign(Object.assign({},t.req),{message:Zc(t.req.method.I,t.req.message),signal:n}),i=!1;return n.addEventListener("abort",function(){var s,c;let l=t.req.message[Symbol.asyncIterator]();i||(s=l.throw)==null||s.call(l,this.reason).catch(()=>{}),(c=l.return)==null||c.call(l).catch(()=>{})}),e(o).then(s=>Object.assign(Object.assign({},s),{message:{[Symbol.asyncIterator](){let c=s.message[Symbol.asyncIterator]();return{next(){return c.next().then(l=>(l.done==1&&(i=!0,a()),l),r)}}}}}),r)}function ko(t){let{signal:e,cleanup:n}=Xc(t.timeoutMs),r=Kc(t.signal,e);return[r.signal,function(a){let o=ge.from(e.aborted?lo(e):a);return r.abort(o),n(),Promise.reject(o)},function(){n(),r.abort()}]}var En;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.INACTIVE=1]="INACTIVE",t[t.PROCESSING=2]="PROCESSING",t[t.SUCCESS=3]="SUCCESS",t[t.WARNING=4]="WARNING",t[t.ERROR=5]="ERROR"})(En||(En={})),x.util.setEnumType(En,"exa.language_server_pb.CodeiumState",[{no:0,name:"CODEIUM_STATE_UNSPECIFIED"},{no:1,name:"CODEIUM_STATE_INACTIVE"},{no:2,name:"CODEIUM_STATE_PROCESSING"},{no:3,name:"CODEIUM_STATE_SUCCESS"},{no:4,name:"CODEIUM_STATE_WARNING"},{no:5,name:"CODEIUM_STATE_ERROR"}]);var Co;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.SINGLE=1]="SINGLE",t[t.MULTI=2]="MULTI"})(Co||(Co={})),x.util.setEnumType(Co,"exa.language_server_pb.LineType",[{no:0,name:"LINE_TYPE_UNSPECIFIED"},{no:1,name:"LINE_TYPE_SINGLE"},{no:2,name:"LINE_TYPE_MULTI"}]);var Sn;(function(t){t[t.UNSPECIFIED=0]="UNSPECIFIED",t[t.INLINE=1]="INLINE",t[t.BLOCK=2]="BLOCK",t[t.INLINE_MASK=3]="INLINE_MASK"})(Sn||(Sn={})),x.util.setEnumType(Sn,"exa.language_server_pb.CompletionPartType",[{no:0,name:"COMPLETION_PART_TYPE_UNSPECIFIED"},{no:1,name:"COMPLETION_PART_TYPE_INLINE"},{no:2,name:"COMPLETION_PART_TYPE_BLOCK"},{no:3,name:"COMPLETION_PART_TYPE_INLINE_MASK"}]);var lu=(Ne=class extends X{constructor(n){super();g(this,"threshold",0);x.util.initPartial(n,this)}static fromBinary(n,r){return new Ne().fromBinary(n,r)}static fromJson(n,r){return new Ne().fromJson(n,r)}static fromJsonString(n,r){return new Ne().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ne,n,r)}},g(Ne,"runtime",x),g(Ne,"typeName","exa.language_server_pb.MultilineConfig"),g(Ne,"fields",x.util.newFieldList(()=>[{no:1,name:"threshold",kind:"scalar",T:2}])),Ne),cu=(Ie=class extends X{constructor(n){super();g(this,"metadata");g(this,"document");g(this,"editorOptions");g(this,"otherDocuments",[]);g(this,"experimentConfig");g(this,"modelName","");g(this,"multilineConfig");x.util.initPartial(n,this)}static fromBinary(n,r){return new Ie().fromBinary(n,r)}static fromJson(n,r){return new Ie().fromJson(n,r)}static fromJsonString(n,r){return new Ie().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ie,n,r)}},g(Ie,"runtime",x),g(Ie,"typeName","exa.language_server_pb.GetCompletionsRequest"),g(Ie,"fields",x.util.newFieldList(()=>[{no:1,name:"metadata",kind:"message",T:ao},{no:2,name:"document",kind:"message",T:To},{no:3,name:"editor_options",kind:"message",T:Ac},{no:5,name:"other_documents",kind:"message",T:To,repeated:!0},{no:7,name:"experiment_config",kind:"message",T:hu},{no:10,name:"model_name",kind:"scalar",T:9},{no:13,name:"multiline_config",kind:"message",T:lu}])),Ie),uu=(Ae=class extends X{constructor(n){super();g(this,"state");g(this,"completionItems",[]);x.util.initPartial(n,this)}static fromBinary(n,r){return new Ae().fromBinary(n,r)}static fromJson(n,r){return new Ae().fromJson(n,r)}static fromJsonString(n,r){return new Ae().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ae,n,r)}},g(Ae,"runtime",x),g(Ae,"typeName","exa.language_server_pb.GetCompletionsResponse"),g(Ae,"fields",x.util.newFieldList(()=>[{no:1,name:"state",kind:"message",T:gu},{no:2,name:"completion_items",kind:"message",T:vu,repeated:!0}])),Ae),du=(Le=class extends X{constructor(n){super();g(this,"metadata");g(this,"completionId","");x.util.initPartial(n,this)}static fromBinary(n,r){return new Le().fromBinary(n,r)}static fromJson(n,r){return new Le().fromJson(n,r)}static fromJsonString(n,r){return new Le().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Le,n,r)}},g(Le,"runtime",x),g(Le,"typeName","exa.language_server_pb.AcceptCompletionRequest"),g(Le,"fields",x.util.newFieldList(()=>[{no:1,name:"metadata",kind:"message",T:ao},{no:2,name:"completion_id",kind:"scalar",T:9}])),Le),fu=(Oe=class extends X{constructor(e){super(),x.util.initPartial(e,this)}static fromBinary(e,n){return new Oe().fromBinary(e,n)}static fromJson(e,n){return new Oe().fromJson(e,n)}static fromJsonString(e,n){return new Oe().fromJsonString(e,n)}static equals(e,n){return x.util.equals(Oe,e,n)}},g(Oe,"runtime",x),g(Oe,"typeName","exa.language_server_pb.AcceptCompletionResponse"),g(Oe,"fields",x.util.newFieldList(()=>[])),Oe),mu=(_e=class extends X{constructor(e){super(),x.util.initPartial(e,this)}static fromBinary(e,n){return new _e().fromBinary(e,n)}static fromJson(e,n){return new _e().fromJson(e,n)}static fromJsonString(e,n){return new _e().fromJsonString(e,n)}static equals(e,n){return x.util.equals(_e,e,n)}},g(_e,"runtime",x),g(_e,"typeName","exa.language_server_pb.GetAuthTokenRequest"),g(_e,"fields",x.util.newFieldList(()=>[])),_e),pu=(Ue=class extends X{constructor(n){super();g(this,"authToken","");g(this,"uuid","");x.util.initPartial(n,this)}static fromBinary(n,r){return new Ue().fromBinary(n,r)}static fromJson(n,r){return new Ue().fromJson(n,r)}static fromJsonString(n,r){return new Ue().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ue,n,r)}},g(Ue,"runtime",x),g(Ue,"typeName","exa.language_server_pb.GetAuthTokenResponse"),g(Ue,"fields",x.util.newFieldList(()=>[{no:1,name:"auth_token",kind:"scalar",T:9},{no:2,name:"uuid",kind:"scalar",T:9}])),Ue),vr=(je=class extends X{constructor(n){super();g(this,"row",W.zero);g(this,"col",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new je().fromBinary(n,r)}static fromJson(n,r){return new je().fromJson(n,r)}static fromJsonString(n,r){return new je().fromJsonString(n,r)}static equals(n,r){return x.util.equals(je,n,r)}},g(je,"runtime",x),g(je,"typeName","exa.language_server_pb.DocumentPosition"),g(je,"fields",x.util.newFieldList(()=>[{no:1,name:"row",kind:"scalar",T:4},{no:2,name:"col",kind:"scalar",T:4}])),je),To=(Pe=class extends X{constructor(n){super();g(this,"absolutePath","");g(this,"relativePath","");g(this,"text","");g(this,"editorLanguage","");g(this,"language",lt.UNSPECIFIED);g(this,"cursorOffset",W.zero);g(this,"cursorPosition");g(this,"lineEnding","");x.util.initPartial(n,this)}static fromBinary(n,r){return new Pe().fromBinary(n,r)}static fromJson(n,r){return new Pe().fromJson(n,r)}static fromJsonString(n,r){return new Pe().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Pe,n,r)}},g(Pe,"runtime",x),g(Pe,"typeName","exa.language_server_pb.Document"),g(Pe,"fields",x.util.newFieldList(()=>[{no:1,name:"absolute_path",kind:"scalar",T:9},{no:2,name:"relative_path",kind:"scalar",T:9},{no:3,name:"text",kind:"scalar",T:9},{no:4,name:"editor_language",kind:"scalar",T:9},{no:5,name:"language",kind:"enum",T:x.getEnumType(lt)},{no:6,name:"cursor_offset",kind:"scalar",T:4},{no:8,name:"cursor_position",kind:"message",T:vr},{no:7,name:"line_ending",kind:"scalar",T:9}])),Pe),hu=(De=class extends X{constructor(n){super();g(this,"forceEnableExperiments",[]);x.util.initPartial(n,this)}static fromBinary(n,r){return new De().fromBinary(n,r)}static fromJson(n,r){return new De().fromJson(n,r)}static fromJsonString(n,r){return new De().fromJsonString(n,r)}static equals(n,r){return x.util.equals(De,n,r)}},g(De,"runtime",x),g(De,"typeName","exa.language_server_pb.ExperimentConfig"),g(De,"fields",x.util.newFieldList(()=>[{no:1,name:"force_enable_experiments",kind:"enum",T:x.getEnumType(br),repeated:!0}])),De),gu=(Me=class extends X{constructor(n){super();g(this,"state",En.UNSPECIFIED);g(this,"message","");x.util.initPartial(n,this)}static fromBinary(n,r){return new Me().fromBinary(n,r)}static fromJson(n,r){return new Me().fromJson(n,r)}static fromJsonString(n,r){return new Me().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Me,n,r)}},g(Me,"runtime",x),g(Me,"typeName","exa.language_server_pb.State"),g(Me,"fields",x.util.newFieldList(()=>[{no:1,name:"state",kind:"enum",T:x.getEnumType(En)},{no:2,name:"message",kind:"scalar",T:9}])),Me),yu=(Fe=class extends X{constructor(n){super();g(this,"startOffset",W.zero);g(this,"endOffset",W.zero);g(this,"startPosition");g(this,"endPosition");x.util.initPartial(n,this)}static fromBinary(n,r){return new Fe().fromBinary(n,r)}static fromJson(n,r){return new Fe().fromJson(n,r)}static fromJsonString(n,r){return new Fe().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Fe,n,r)}},g(Fe,"runtime",x),g(Fe,"typeName","exa.language_server_pb.Range"),g(Fe,"fields",x.util.newFieldList(()=>[{no:1,name:"start_offset",kind:"scalar",T:4},{no:2,name:"end_offset",kind:"scalar",T:4},{no:3,name:"start_position",kind:"message",T:vr},{no:4,name:"end_position",kind:"message",T:vr}])),Fe),bu=(Re=class extends X{constructor(n){super();g(this,"text","");g(this,"deltaCursorOffset",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new Re().fromBinary(n,r)}static fromJson(n,r){return new Re().fromJson(n,r)}static fromJsonString(n,r){return new Re().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Re,n,r)}},g(Re,"runtime",x),g(Re,"typeName","exa.language_server_pb.Suffix"),g(Re,"fields",x.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"delta_cursor_offset",kind:"scalar",T:3}])),Re),wu=(Be=class extends X{constructor(n){super();g(this,"text","");g(this,"offset",W.zero);g(this,"type",Sn.UNSPECIFIED);g(this,"prefix","");g(this,"line",W.zero);x.util.initPartial(n,this)}static fromBinary(n,r){return new Be().fromBinary(n,r)}static fromJson(n,r){return new Be().fromJson(n,r)}static fromJsonString(n,r){return new Be().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Be,n,r)}},g(Be,"runtime",x),g(Be,"typeName","exa.language_server_pb.CompletionPart"),g(Be,"fields",x.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"offset",kind:"scalar",T:4},{no:3,name:"type",kind:"enum",T:x.getEnumType(Sn)},{no:4,name:"prefix",kind:"scalar",T:9},{no:5,name:"line",kind:"scalar",T:4}])),Be),vu=(Ge=class extends X{constructor(n){super();g(this,"completion");g(this,"suffix");g(this,"range");g(this,"source",yn.UNSPECIFIED);g(this,"completionParts",[]);x.util.initPartial(n,this)}static fromBinary(n,r){return new Ge().fromBinary(n,r)}static fromJson(n,r){return new Ge().fromJson(n,r)}static fromJsonString(n,r){return new Ge().fromJsonString(n,r)}static equals(n,r){return x.util.equals(Ge,n,r)}},g(Ge,"runtime",x),g(Ge,"typeName","exa.language_server_pb.CompletionItem"),g(Ge,"fields",x.util.newFieldList(()=>[{no:1,name:"completion",kind:"message",T:Ic},{no:5,name:"suffix",kind:"message",T:bu},{no:2,name:"range",kind:"message",T:yu},{no:3,name:"source",kind:"enum",T:x.getEnumType(yn)},{no:8,name:"completion_parts",kind:"message",T:wu,repeated:!0}])),Ge);const xu={typeName:"exa.language_server_pb.LanguageServerService",methods:{getCompletions:{name:"GetCompletions",I:cu,O:uu,kind:Ee.Unary},acceptCompletion:{name:"AcceptCompletion",I:du,O:fu,kind:Ee.Unary},getAuthToken:{name:"GetAuthToken",I:mu,O:pu,kind:Ee.Unary}}};function Eu(){try{new Headers}catch{throw Error("connect-web requires the fetch API. Are you running on an old version of Node.js? Node.js is not supported in Connect for Web - please stay tuned for Connect for Node.")}}var Mt=function(t){return this instanceof Mt?(this.v=t,this):new Mt(t)},Su=function(t,e,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),a,o=[];return a={},s("next"),s("throw"),s("return",i),a[Symbol.asyncIterator]=function(){return this},a;function i(f){return function(m){return Promise.resolve(m).then(f,d)}}function s(f,m){r[f]&&(a[f]=function(y){return new Promise(function(b,v){o.push([f,y,b,v])>1||c(f,y)})},m&&(a[f]=m(a[f])))}function c(f,m){try{l(r[f](m))}catch(y){p(o[0][3],y)}}function l(f){f.value instanceof Mt?Promise.resolve(f.value.v).then(u,d):p(o[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function p(f,m){f(m),o.shift(),o.length&&c(o[0][0],o[0][1])}};function ku(t){Eu();let e=t.useBinaryFormat??!1;return{async unary(n,r,a,o,i,s,c){let{serialize:l,parse:u}=ho(r,e,t.jsonOptions,t.binaryOptions);return o=o===void 0?t.defaultTimeoutMs:o<=0?void 0:o,await iu({interceptors:t.interceptors,signal:a,timeoutMs:o,req:{stream:!1,service:n,method:r,url:uo(t.baseUrl,n,r),init:{method:"POST",credentials:t.credentials??"same-origin",redirect:"error",mode:"cors"},header:Eo(r.kind,e,o,i,!1),contextValues:c??co(),message:s},next:async d=>{let p=t.useHttpGet===!0&&r.idempotency===ro.NoSideEffects,f=null;p?d=ou(d,l(d.message),e):f=l(d.message);let m=await(t.fetch??globalThis.fetch)(d.url,Object.assign(Object.assign({},d.init),{headers:d.header,signal:d.signal,body:f})),{isUnaryError:y,unaryError:b}=So(r.kind,e,m.status,m.headers);if(y)throw bo(await m.json(),jc(...xo(m.headers)),b);let[v,S]=xo(m.headers);return{stream:!1,service:n,method:r,header:v,message:e?u(new Uint8Array(await m.arrayBuffer())):r.O.fromJson(await m.json(),po(t.jsonOptions)),trailer:S}}})},async stream(n,r,a,o,i,s,c){let{serialize:l,parse:u}=ho(r,e,t.jsonOptions,t.binaryOptions);function d(f,m,y,b){return Su(this,arguments,function*(){let v=Dc(f).getReader(),S=!1;for(;;){let k=yield Mt(v.read());if(k.done)break;let{flags:_,data:P}=k.value;if((_&1)==1)throw new ge("protocol error: received unsupported compressed output",B.Internal);if((_&2)==2){S=!0;let A=tu(P);if(A.error){let T=A.error;throw y.forEach((G,M)=>{T.metadata.append(M,G)}),T}A.metadata.forEach((T,G)=>m.set(G,T));continue}yield yield Mt(u(P))}if("throwIfAborted"in b&&b.throwIfAborted(),!S)throw"missing EndStreamResponse"})}async function p(f){if(r.kind!=Ee.ServerStreaming)throw"The fetch API does not support streaming request bodies";let m=await f[Symbol.asyncIterator]().next();if(m.done==1)throw"missing request message";return Mc(0,l(m.value))}return o=o===void 0?t.defaultTimeoutMs:o<=0?void 0:o,await su({interceptors:t.interceptors,timeoutMs:o,signal:a,req:{stream:!0,service:n,method:r,url:uo(t.baseUrl,n,r),init:{method:"POST",credentials:t.credentials??"same-origin",redirect:"error",mode:"cors"},header:Eo(r.kind,e,o,i,!1),contextValues:c??co(),message:s},next:async f=>{let m=await(t.fetch??globalThis.fetch)(f.url,Object.assign(Object.assign({},f.init),{headers:f.header,signal:f.signal,body:await p(f.message)}));if(So(r.kind,e,m.status,m.headers),m.body===null)throw"missing response body";let y=new Headers;return Object.assign(Object.assign({},f),{header:m.headers,trailer:y,message:d(m.body,y,m.headers,f.signal)})}})}}}var Cu=Wc(xu,ku({baseUrl:"https://web-backend.codeium.com",useBinaryFormat:!0})),kn;try{kn=crypto.randomUUID()}catch{kn=function(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,e=>(e^(crypto.getRandomValues(new Uint8Array(1))[0]??0)&15>>e/4).toString(16))}()}async function Tu({text:t,cursorOffset:e,config:n,otherDocuments:r}){return await Cu.getCompletions({metadata:{ideName:"web",ideVersion:"0.0.5",extensionName:"@valtown/codemirror-codeium",extensionVersion:"1.0.0",apiKey:n.apiKey,sessionId:kn,authSource:n.authSource},document:{text:t,cursorOffset:BigInt(e),language:n.language,editorLanguage:"typescript",lineEnding:`
14
+ `},editorOptions:{tabSize:2n,insertSpaces:!0},otherDocuments:r,multilineConfig:void 0},{headers:{Authorization:`Basic ${n.apiKey}-${kn}`}})}function Nu(t){return t.completionItems.map(e=>{let n=0;return e.completionParts.filter(r=>r.type!==3).map(r=>{let a=Number(r.offset),o=r.type===2?`
15
+ ${r.text}`:r.text,i={absoluteStartPos:n+a,absoluteEndPos:n+a+o.length,from:a,to:a,insert:o};return n+=o.length,i})})}async function Iu(t,e){let n=t.state.facet(bn),{override:r}=t.state.facet(oo),a=await r(),o=t.state,i=o.selection.main.head,s=o.doc.toString();try{let c=await Tu({text:s,cursorOffset:i,config:n,otherDocuments:a});if(!c||c.completionItems.length===0||!((e===void 0||i===e)&&qt(t.state)!=="active"&&t.hasFocus))return;let l=Nu(c),u=l.at(0);if(!u)return;let d=Vn.of(u,o.doc.length),p=d.invert(o.doc);t.dispatch({changes:d,effects:ur.of({index:0,reverseChangeSet:p,changeSpecs:l}),annotations:[wn.of(null),bt.of(null),Wt.addToHistory.of(!1)]})}catch(c){console.warn("copilot completion failed",c),await new Promise(l=>setTimeout(l,300))}}function Au(t){return t.docChanged&&!t.transactions.some(e=>e.effects.some(n=>n.is(dr)||n.is(fr)))}function Lu(t){if(!t.view.hasFocus||t.state.field(ct)||qt(t.state)==="active")return!0;for(let e of t.transactions)if(e.annotation(bt)!==void 0)return!0}function Ou(){let t=null,e=0;return R.updateListener.of(n=>{let r=n.view.state.facet(bn);if(!r.alwaysOn||!Au(n)||(t&&clearTimeout(t),Lu(n)))return;let a=n.state.selection.main.head;r.shouldComplete&&!r.shouldComplete(new zp(n.view.state,a,!1))||(t=setTimeout(async()=>{a===e&&await Iu(n.view,e)},r.timeout),e=a)})}function No(t){var a;let e=t.state.field(ct);if(!e)return!1;let n=(a=e.reverseChangeSet)==null?void 0:a.invert(t.state.doc);t.dispatch({changes:e.reverseChangeSet,effects:dr.of(null),annotations:[wn.of(null),bt.of(null),Wt.addToHistory.of(!1)]});let r=0;return n==null||n.iterChangedRanges((o,i,s,c)=>{r=c}),t.dispatch({changes:n,selection:St.cursor(r),annotations:[bt.of(null),Wt.addToHistory.of(!0)]}),!0}const Io=t=>{let{state:e}=t,n=e.field(ct);if(!n)return!1;let{changeSpecs:r}=n;if(r.length<2)return!1;let a=(n.index+1)%r.length,o=r.at(a);if(!o)return!1;let i=n.reverseChangeSet.apply(e.doc),s=Vn.of(n.reverseChangeSet,e.doc.length).compose(Vn.of(o,i.length)),c=Vn.of(o,i.length).invert(i);return t.dispatch({changes:s,effects:ur.of({index:a,reverseChangeSet:c,changeSpecs:r}),annotations:[wn.of(null),bt.of(null),Wt.addToHistory.of(!1)]}),!0};function xr(t){let e=t.state.field(ct);return e&&t.dispatch({changes:e.reverseChangeSet,effects:fr.of(null),annotations:[wn.of(null),bt.of(null),Wt.addToHistory.of(!1)]}),!1}function _u(t,e){return t.state.field(ct)?e==="Tab"?No(t):xr(t):!1}function Uu(t){var a,o;let e=!1,n=(a=t.state.selection.asSingle().ranges.at(0))==null?void 0:a.head,r=t.state.field(ct);return n!==void 0&&r?((o=r.decorations)==null||o.between(n,n,()=>{e=!0}),e):!1}function ju(){return R.domEventHandlers({keydown(t,e){return t.key==="]"&&t.ctrlKey?!1:t.key!=="Shift"&&t.key!=="Control"&&t.key!=="Alt"&&t.key!=="Meta"?_u(e,t.key):!1},mouseup(t,e){let n=t.target;return n.nodeName==="BUTTON"&&n.dataset.action==="codeium-cycle"?(Io(e),t.stopPropagation(),t.preventDefault(),!0):Uu(e)?No(e):xr(e)}})}function Pu(){return He.of([{key:"Ctrl-]",run:Io}])}function Du(){return R.updateListener.of(t=>{t.focusChanged&&xr(t.view)})}function Mu(t){return[bn.of(t),ct,mt.highest(Pu()),mt.highest(Du()),mt.high(ju()),Ou()]}function Fu({response:t,prefix:e,suffix:n}){if(!t)return t;let r=t;return e&&r.startsWith(e)&&(r=r.slice(e.length)),n&&r.endsWith(n)&&(r=r.slice(0,-n.length)),r}var Ru=tm(),Bu=new bp,Er=$e.get("@github/copilot-language-server"),Ao={delay:300,includeKeymap:!0,events:{shouldShowSuggestion:t=>t.hasFocus,beforeSuggestionFetch:t=>t.hasFocus}};const Gu=t=>{let e=[];return t.copilot==="codeium"&&t.codeium_api_key&&e.push(Mu({apiKey:t.codeium_api_key,language:lt.PYTHON}),oo.of({override:async()=>[{text:Jr(""),language:lt.PYTHON,editorLanguage:"python"}]})),t.copilot==="github"&&e.push(va({...Ao,fetchFn:async(n,r,a)=>{let o=n.selection.main.head;if(!Bm()||!a.hasFocus||n.doc.length===0)return"";await new Promise(c=>setTimeout(c,20));let i=Ju(n,Jr(n.doc.toString())),s=await Gm().getCompletion(i);return o===a.state.selection.main.head?Vu(s,i.position,n):($e.debug("ignoring response because of new position"),"")}})),t.copilot==="custom"&&e.push(va({...Ao,fetchFn:async(n,r,a)=>{let o=n.selection.main.head;if(n.doc.length===0||!a.hasFocus)return"";let i=n.doc.sliceString(0,n.selection.main.head),s=n.doc.sliceString(n.selection.main.head,n.doc.length);if(i.length===0)return"";let c=n.field(dt).type,l=await Qm.post("/ai/inline_completion",{prefix:i,suffix:s,language:c});return o===a.state.selection.main.head?(l=Fu({response:l,prefix:i,suffix:s}),l):($e.debug("ignoring response because of new position"),"")}})),[...e,mt.highest(He.of([{key:"Escape",run:n=>{let r=wa(n);return Rn(n)?!1:r}}])),Bu.of(Jm())]};function Ju(t,e){let n=t.doc.toString(),r=e.split(`
16
16
  `).length-n.split(`
17
- `).length,a=Vu(t.doc,t.selection.main.head);return a.line+=r,{textDocument:{uri:`file://${Mm}`,version:"replace_me"},position:a,context:{triggerKind:Fu.InlineCompletionTriggerKind.Automatic},formattingOptions:{tabSize:t.tabSize,insertSpaces:!0}}}function Ju(t,e,n){if(!t)return Er.debug("No response from copilot"),"";let r=Array.isArray(t)?t[0]:t.items[0];if(!r)return Er.debug("No response from copilot"),"";let{insertText:a,range:o}=r,i=String(a);if(!o)return Er.error("No range from copilot"),i;let s=o.start.character-e.character,c=s<0?i.slice(-s):i,l=n.doc.sliceString(n.selection.main.head,n.doc.length);for(let u=0;u<c.length;u++){let d=c.slice(u);if(l.startsWith(d))return c.slice(0,u)}return c}function Vu(t,e){let n=t.lineAt(e);return{line:n.number-1,character:e-n.from}}Qn=function(t){return Gt("create"in t,'Expected query to have a "create" method'),t},xe=bm({findText:"",replaceText:"",caseSensitive:!1,wholeWord:!1,regexp:!1,isOpen:!1,currentView:void 0},(t,e)=>{if(e===void 0)return t;switch(e.type){case"setFind":return{...t,findText:e.find};case"setReplace":return{...t,replaceText:e.replace};case"setCaseSensitive":return{...t,caseSensitive:e.caseSensitive};case"setWholeWord":return{...t,wholeWord:e.wholeWord};case"setRegex":return{...t,regexp:e.regexp};case"setIsOpen":return{...t,isOpen:e.isOpen};case"setCurrentView":return{...t,currentView:{view:e.view,range:e.range}};case"clearCurrentView":return{...t,currentView:void 0}}}),ca=function(t){if([...document.querySelectorAll('[role="dialog"][data-state="open"]')].some(e=>e instanceof HTMLElement&&e.childNodes.length>0))return!1;if(t){let e=t.state.selection.main,n=t.state.sliceDoc(e.from,e.to);n?(J.set(xe,{type:"setFind",find:n}),J.set(xe,{type:"setCurrentView",view:t,range:{from:e.from,to:e.to}})):J.set(xe,{type:"setCurrentView",view:t,range:{from:0,to:0}})}return J.get(xe).isOpen?(J.set(xe,{type:"setIsOpen",isOpen:!1}),requestAnimationFrame(()=>{J.set(xe,{type:"setIsOpen",isOpen:!0})}),!0):(J.set(xe,{type:"setIsOpen",isOpen:!0}),!0)};function $u(){return J.get(xe).isOpen?(J.set(xe,{type:"setIsOpen",isOpen:!1}),!0):!1}var Sr=ce.define();Ss=function(){let t=J.get(xe),e=Pi();for(let n of e)n.state.readOnly||n.dispatch({effects:Sr.of(new na({search:t.findText,caseSensitive:t.caseSensitive,regexp:t.regexp,replace:t.replaceText,wholeWord:t.wholeWord}))})},Ts=function(){let t=Pi();for(let e of t)e.state.readOnly||e.dispatch({effects:Sr.of(new na({search:""}))})};const Cn=We.define({create(){let t=J.get(xe);return Qn(new na({search:t.findText,caseSensitive:t.caseSensitive,regexp:t.regexp,replace:t.replaceText,wholeWord:t.wholeWord})).create()},update(t,e){for(let n of e.effects)n.is(Sr)&&(t=Qn(n.value).create());return t}});var Wu=V.mark({class:"cm-searchMatch"}),qu=V.mark({class:"cm-searchMatch cm-searchMatch-selected"}),Hu=250;const zu=ze.fromClass(class{constructor(t){this.view=t,this.decorations=this.highlight(t.state.field(Cn))}update(t){let e=t.state.field(Cn);(e!==t.startState.field(Cn)||t.docChanged||t.selectionSet||t.viewportChanged)&&(this.decorations=this.highlight(e))}highlight(t){if(!t.spec.valid)return V.none;let{view:e}=this,n=new Ep,r=e.visibleRanges,a=r.length;for(let o=0;o<a;o++){let{to:i}=r[o],{from:s}=r[o];for(;o<a-1&&i>r[o+1].from-2*Hu;)i=r[++o].to;t.highlight(e.state,s,i,(c,l)=>{let u=e.state.selection.ranges.some(d=>d.from===c&&d.to===l);n.add(c,l,u?qu:Wu)})}return n.finish()}},{decorations:t=>t.decorations}),Yu=R.baseTheme({"&light .cm-searchMatch":{backgroundColor:"var(--cm-search-match-background-light)"},"&dark .cm-searchMatch":{backgroundColor:"var(--cm-search-match-background-dark)"},"&light .cm-searchMatch-selected":{backgroundColor:"transparent"},"&dark .cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"var(--cm-search-match-selected-background-dark) !important"}});function Ku(t){return[He.of([{key:"Escape",preventDefault:!1,run:$u},{key:t.getHotkey("cell.selectNextOccurrence").key,preventDefault:!0,run:Dp},{key:t.getHotkey("cell.findAndReplace").key,preventDefault:!0,run:ca}]),Fp(),zu,Cn,Yu]}var Xu=V.mark({class:"underline"}),Lo=ce.define(),Oo=ce.define(),_o=ce.define();const Qu=We.define({create(){return V.none},update(t,e){let n=t.map(e.changes);for(let r of e.effects)r.is(Lo)?n=t.update({add:[Xu.range(r.value.from,r.value.to)]}):r.is(Oo)?n=t.update({add:[Bf.range(r.value.from,r.value.to)]}):r.is(_o)&&(n=V.none);return n},provide:t=>R.decorations.from(t)});var Zu=class{constructor(t,e){g(this,"keydown",t=>{(t.key==="Meta"||t.key==="Control")&&(this.commandClickMode=!0,this.view.dom.addEventListener("mousemove",this.mousemove),this.view.dom.addEventListener("click",this.click))});g(this,"keyup",t=>{(t.key==="Meta"||t.key==="Control")&&this.exitCommandClickMode()});g(this,"windowBlur",()=>{this.commandClickMode&&this.exitCommandClickMode()});g(this,"mousemove",t=>{var a;if(!t.metaKey&&!t.ctrlKey){this.exitCommandClickMode();return}if(!this.commandClickMode){this.clearUnderline();return}let e=this.view.posAtCoords({x:t.clientX,y:t.clientY});if(e==null){this.clearUnderline();return}let n=(a=this.view.state.field(pm,!1))==null?void 0:a.ranges.find(o=>e>=o.from&&e<=o.to);if(n){let{from:o,to:i}=n;if(this.hoveredRange&&this.hoveredRange.from===o&&this.hoveredRange.to===i)return;this.clearUnderline(),this.hoveredRange={from:o,to:i,position:e},this.view.dispatch({effects:Oo.of(this.hoveredRange)});return}let r=$n(this.view.state).cursorAt(e);if(r.name==="VariableName"){let{from:o,to:i}=r;if(this.hoveredRange&&this.hoveredRange.from===o&&this.hoveredRange.to===i)return;this.clearUnderline(),this.hoveredRange={from:o,to:i,position:e},this.view.dispatch({effects:Lo.of(this.hoveredRange)})}else this.clearUnderline()});g(this,"click",t=>{this.hoveredRange&&(t.preventDefault(),t.stopPropagation(),this.view.dispatch({selection:{head:this.hoveredRange.position,anchor:this.hoveredRange.position}}),this.onClick(this.view))});this.view=t,this.commandClickMode=!1,this.hoveredRange=null,this.onClick=e,window.addEventListener("keydown",this.keydown),window.addEventListener("keyup",this.keyup),window.addEventListener("blur",this.windowBlur),window.addEventListener("mouseleave",this.windowBlur)}update(t){}destroy(){window.removeEventListener("keydown",this.keydown),window.removeEventListener("keyup",this.keyup),window.removeEventListener("blur",this.windowBlur),window.removeEventListener("mouseleave",this.windowBlur),this.view.dom.removeEventListener("mousemove",this.mousemove),this.view.dom.removeEventListener("click",this.click)}exitCommandClickMode(){this.commandClickMode=!1,this.view.dom.removeEventListener("mousemove",this.mousemove),this.view.dom.removeEventListener("click",this.click),this.clearUnderline()}clearUnderline(){this.hoveredRange&&(this.hoveredRange=(this.view.dispatch({effects:_o.of(null)}),null))}};const ed=t=>ze.define(e=>new Zu(e,t));function td(){return[Qu,ed(t=>{im(t)}),R.baseTheme({".underline":{textDecoration:"underline",cursor:"pointer",color:"var(--link)"}})]}function nd(){return[R.domEventHandlers({drop:(t,e)=>{var a,o;let n=(a=t.dataTransfer)==null?void 0:a.files[0];if(n!=null&&n.type.startsWith("text/"))return t.preventDefault(),om(e,n),!0;if(n!=null&&n.type.startsWith("image/"))return t.preventDefault(),Ff(e,n),!0;let r=(o=t.dataTransfer)==null?void 0:o.getData("text/plain");if(r){t.preventDefault();let i=e.posAtCoords({x:t.clientX,y:t.clientY});return i!==null&&e.dispatch({changes:{from:i,to:i,insert:r},scrollIntoView:!0}),!0}return!1},dragover:t=>{t.preventDefault()}})]}function rd(){return[R.domEventHandlers({paste:(t,e)=>{var i;let n=(i=t.clipboardData)==null?void 0:i.getData("text/plain");if(!n||!Uo(n))return!1;let{setup:r,cells:a}=ad(n);if(r===null&&a.length===0)return!1;let o=e.state.facet(sm);return r!==null&&o.addOrAppendSetupCell(r),a.length>0&&o.createManyBelow(a),!0}})]}function Uo(t){return/@app\.cell|@app\.function|\bapp\.setup\b/.test(t)}function ad(t){if(!Uo(t))return{setup:null,cells:[]};let e=[],n=[],r=bh.parse(t),a=(s,c)=>{let l=t.lastIndexOf(`
18
- `,s-1)+1;return od(t.slice(l,c))},o=(s,c)=>{let l=a(s,c);l.trim()&&e.push(l)},i=(s,c)=>{var f;let l=[];for(let m=s.firstChild;m;m=m.nextSibling)m.name!==":"&&l.push(m);c&&((f=l.at(-1))==null?void 0:f.name)==="ReturnStatement"&&l.pop();let u=l[0],d=l.at(-1);if(!u||!d)return null;let p=a(u.from,d.to);return p.trim()?p:null};return r.iterate({enter:s=>{if(s.name==="WithStatement"){let d=s.node.getChild("Body");if(d&&t.slice(s.from,d.from).includes("app.setup")){let p=i(d,!1);p!==null&&n.push(p)}return!1}if(s.name!=="DecoratedStatement")return!0;let c=s.node.getChild("Decorator"),l=s.node.getChild("FunctionDefinition");if(!c||!l)return!1;let u=t.slice(c.from,c.to).trim();if(u.startsWith("@app.cell")){let d=l.getChild("Body");if(d){let p=i(d,!0);p!==null&&e.push(p)}return!1}return u.startsWith("@app.function")&&o(l.from,l.to),!1}}),{setup:n.length>0?n.join(`
17
+ `).length,a=$u(t.doc,t.selection.main.head);return a.line+=r,{textDocument:{uri:`file://${Vm}`,version:"replace_me"},position:a,context:{triggerKind:Ru.InlineCompletionTriggerKind.Automatic},formattingOptions:{tabSize:t.tabSize,insertSpaces:!0}}}function Vu(t,e,n){if(!t)return Er.debug("No response from copilot"),"";let r=Array.isArray(t)?t[0]:t.items[0];if(!r)return Er.debug("No response from copilot"),"";let{insertText:a,range:o}=r,i=String(a);if(!o)return Er.error("No range from copilot"),i;let s=o.start.character-e.character,c=s<0?i.slice(-s):i,l=n.doc.sliceString(n.selection.main.head,n.doc.length);for(let u=0;u<c.length;u++){let d=c.slice(u);if(l.startsWith(d))return c.slice(0,u)}return c}function $u(t,e){let n=t.lineAt(e);return{line:n.number-1,character:e-n.from}}Zn=function(t){return Gt("create"in t,'Expected query to have a "create" method'),t},xe=pm({findText:"",replaceText:"",caseSensitive:!1,wholeWord:!1,regexp:!1,isOpen:!1,currentView:void 0},(t,e)=>{if(e===void 0)return t;switch(e.type){case"setFind":return{...t,findText:e.find};case"setReplace":return{...t,replaceText:e.replace};case"setCaseSensitive":return{...t,caseSensitive:e.caseSensitive};case"setWholeWord":return{...t,wholeWord:e.wholeWord};case"setRegex":return{...t,regexp:e.regexp};case"setIsOpen":return{...t,isOpen:e.isOpen};case"setCurrentView":return{...t,currentView:{view:e.view,range:e.range}};case"clearCurrentView":return{...t,currentView:void 0}}}),ca=function(t){if([...document.querySelectorAll('[role="dialog"][data-state="open"]')].some(e=>e instanceof HTMLElement&&e.childNodes.length>0))return!1;if(t){let e=t.state.selection.main,n=t.state.sliceDoc(e.from,e.to);n?(J.set(xe,{type:"setFind",find:n}),J.set(xe,{type:"setCurrentView",view:t,range:{from:e.from,to:e.to}})):J.set(xe,{type:"setCurrentView",view:t,range:{from:0,to:0}})}return J.get(xe).isOpen?(J.set(xe,{type:"setIsOpen",isOpen:!1}),requestAnimationFrame(()=>{J.set(xe,{type:"setIsOpen",isOpen:!0})}),!0):(J.set(xe,{type:"setIsOpen",isOpen:!0}),!0)};function Wu(){return J.get(xe).isOpen?(J.set(xe,{type:"setIsOpen",isOpen:!1}),!0):!1}var Sr=ce.define();Ss=function(){let t=J.get(xe),e=Ui();for(let n of e)n.state.readOnly||n.dispatch({effects:Sr.of(new na({search:t.findText,caseSensitive:t.caseSensitive,regexp:t.regexp,replace:t.replaceText,wholeWord:t.wholeWord}))})},Ts=function(){let t=Ui();for(let e of t)e.state.readOnly||e.dispatch({effects:Sr.of(new na({search:""}))})};const Cn=We.define({create(){let t=J.get(xe);return Zn(new na({search:t.findText,caseSensitive:t.caseSensitive,regexp:t.regexp,replace:t.replaceText,wholeWord:t.wholeWord})).create()},update(t,e){for(let n of e.effects)n.is(Sr)&&(t=Zn(n.value).create());return t}});var qu=V.mark({class:"cm-searchMatch"}),Hu=V.mark({class:"cm-searchMatch cm-searchMatch-selected"}),zu=250;const Yu=ze.fromClass(class{constructor(t){this.view=t,this.decorations=this.highlight(t.state.field(Cn))}update(t){let e=t.state.field(Cn);(e!==t.startState.field(Cn)||t.docChanged||t.selectionSet||t.viewportChanged)&&(this.decorations=this.highlight(e))}highlight(t){if(!t.spec.valid)return V.none;let{view:e}=this,n=new kp,r=e.visibleRanges,a=r.length;for(let o=0;o<a;o++){let{to:i}=r[o],{from:s}=r[o];for(;o<a-1&&i>r[o+1].from-2*zu;)i=r[++o].to;t.highlight(e.state,s,i,(c,l)=>{let u=e.state.selection.ranges.some(d=>d.from===c&&d.to===l);n.add(c,l,u?Hu:qu)})}return n.finish()}},{decorations:t=>t.decorations}),Ku=R.baseTheme({"&light .cm-searchMatch":{backgroundColor:"var(--cm-search-match-background-light)"},"&dark .cm-searchMatch":{backgroundColor:"var(--cm-search-match-background-dark)"},"&light .cm-searchMatch-selected":{backgroundColor:"transparent"},"&dark .cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"var(--cm-search-match-selected-background-dark) !important"}});function Xu(t){return[He.of([{key:"Escape",preventDefault:!1,run:Wu},{key:t.getHotkey("cell.selectNextOccurrence").key,preventDefault:!0,run:Fp},{key:t.getHotkey("cell.findAndReplace").key,preventDefault:!0,run:ca}]),Bp(),Yu,Cn,Ku]}var Zu=V.mark({class:"underline"}),Lo=ce.define(),Oo=ce.define(),_o=ce.define();const Qu=We.define({create(){return V.none},update(t,e){let n=t.map(e.changes);for(let r of e.effects)r.is(Lo)?n=t.update({add:[Zu.range(r.value.from,r.value.to)]}):r.is(Oo)?n=t.update({add:[Bf.range(r.value.from,r.value.to)]}):r.is(_o)&&(n=V.none);return n},provide:t=>R.decorations.from(t)});var ed=class{constructor(t,e){g(this,"keydown",t=>{(t.key==="Meta"||t.key==="Control")&&(this.commandClickMode=!0,this.view.dom.addEventListener("mousemove",this.mousemove),this.view.dom.addEventListener("click",this.click))});g(this,"keyup",t=>{(t.key==="Meta"||t.key==="Control")&&this.exitCommandClickMode()});g(this,"windowBlur",()=>{this.commandClickMode&&this.exitCommandClickMode()});g(this,"mousemove",t=>{var a;if(!t.metaKey&&!t.ctrlKey){this.exitCommandClickMode();return}if(!this.commandClickMode){this.clearUnderline();return}let e=this.view.posAtCoords({x:t.clientX,y:t.clientY});if(e==null){this.clearUnderline();return}let n=(a=this.view.state.field(ym,!1))==null?void 0:a.ranges.find(o=>e>=o.from&&e<=o.to);if(n){let{from:o,to:i}=n;if(this.hoveredRange&&this.hoveredRange.from===o&&this.hoveredRange.to===i)return;this.clearUnderline(),this.hoveredRange={from:o,to:i,position:e},this.view.dispatch({effects:Oo.of(this.hoveredRange)});return}let r=$n(this.view.state).cursorAt(e);if(r.name==="VariableName"){let{from:o,to:i}=r;if(this.hoveredRange&&this.hoveredRange.from===o&&this.hoveredRange.to===i)return;this.clearUnderline(),this.hoveredRange={from:o,to:i,position:e},this.view.dispatch({effects:Lo.of(this.hoveredRange)})}else this.clearUnderline()});g(this,"click",t=>{this.hoveredRange&&(t.preventDefault(),t.stopPropagation(),this.view.dispatch({selection:{head:this.hoveredRange.position,anchor:this.hoveredRange.position}}),this.onClick(this.view))});this.view=t,this.commandClickMode=!1,this.hoveredRange=null,this.onClick=e,window.addEventListener("keydown",this.keydown),window.addEventListener("keyup",this.keyup),window.addEventListener("blur",this.windowBlur),window.addEventListener("mouseleave",this.windowBlur)}update(t){}destroy(){window.removeEventListener("keydown",this.keydown),window.removeEventListener("keyup",this.keyup),window.removeEventListener("blur",this.windowBlur),window.removeEventListener("mouseleave",this.windowBlur),this.view.dom.removeEventListener("mousemove",this.mousemove),this.view.dom.removeEventListener("click",this.click)}exitCommandClickMode(){this.commandClickMode=!1,this.view.dom.removeEventListener("mousemove",this.mousemove),this.view.dom.removeEventListener("click",this.click),this.clearUnderline()}clearUnderline(){this.hoveredRange&&(this.hoveredRange=(this.view.dispatch({effects:_o.of(null)}),null))}};const td=t=>ze.define(e=>new ed(e,t));function nd(){return[Qu,td(t=>{cm(t)}),R.baseTheme({".underline":{textDecoration:"underline",cursor:"pointer",color:"var(--link)"}})]}function rd(){return[R.domEventHandlers({drop:(t,e)=>{var a,o;let n=(a=t.dataTransfer)==null?void 0:a.files[0];if(n!=null&&n.type.startsWith("text/"))return t.preventDefault(),lm(e,n),!0;if(n!=null&&n.type.startsWith("image/"))return t.preventDefault(),Rf(e,n),!0;let r=(o=t.dataTransfer)==null?void 0:o.getData("text/plain");if(r){t.preventDefault();let i=e.posAtCoords({x:t.clientX,y:t.clientY});return i!==null&&e.dispatch({changes:{from:i,to:i,insert:r},scrollIntoView:!0}),!0}return!1},dragover:t=>{t.preventDefault()}})]}function ad(){return[R.domEventHandlers({paste:(t,e)=>{var i;let n=(i=t.clipboardData)==null?void 0:i.getData("text/plain");if(!n||!Uo(n))return!1;let{setup:r,cells:a}=od(n);if(r===null&&a.length===0)return!1;let o=e.state.facet(am);return r!==null&&o.addOrAppendSetupCell(r),a.length>0&&o.createManyBelow(a),!0}})]}function Uo(t){return/@app\.cell|@app\.function|\bapp\.setup\b/.test(t)}function od(t){if(!Uo(t))return{setup:null,cells:[]};let e=[],n=[],r=vh.parse(t),a=(s,c)=>{let l=t.lastIndexOf(`
18
+ `,s-1)+1;return id(t.slice(l,c))},o=(s,c)=>{let l=a(s,c);l.trim()&&e.push(l)},i=(s,c)=>{var f;let l=[];for(let m=s.firstChild;m;m=m.nextSibling)m.name!==":"&&l.push(m);c&&((f=l.at(-1))==null?void 0:f.name)==="ReturnStatement"&&l.pop();let u=l[0],d=l.at(-1);if(!u||!d)return null;let p=a(u.from,d.to);return p.trim()?p:null};return r.iterate({enter:s=>{if(s.name==="WithStatement"){let d=s.node.getChild("Body");if(d&&t.slice(s.from,d.from).includes("app.setup")){let p=i(d,!1);p!==null&&n.push(p)}return!1}if(s.name!=="DecoratedStatement")return!0;let c=s.node.getChild("Decorator"),l=s.node.getChild("FunctionDefinition");if(!c||!l)return!1;let u=t.slice(c.from,c.to).trim();if(u.startsWith("@app.cell")){let d=l.getChild("Body");if(d){let p=i(d,!0);p!==null&&e.push(p)}return!1}return u.startsWith("@app.function")&&o(l.from,l.to),!1}}),{setup:n.length>0?n.join(`
19
19
 
20
- `):null,cells:e}}function od(t){let e=t.split(`
20
+ `):null,cells:e}}function id(t){let e=t.split(`
21
21
  `);if(e.length===0)return"";let n=e.filter(o=>o.trim().length>0);if(n.length===0)return"";let r=/^\s*/,a=Math.min(...n.map(o=>{var i;return((i=o.match(r))==null?void 0:i[0].length)??1/0}));return a===0?t.trim():e.map(o=>o.slice(a)).join(`
22
- `).trim()}function id(t,e,n,r){var a;return r!=="{"||e!==n||!((a=$n(t.state).resolveInner(e,-1))!=null&&a.type.name.includes("String"))?!1:(t.dispatch({changes:{from:e,to:n,insert:"{}"},selection:{anchor:e+1},userEvent:"input.type"}),!0)}function sd(){return R.inputHandler.of(id)}function jo(t){let{showPlaceholder:e,enableAI:n}=t;return e?"marimo-import":n?"ai":"none"}var Po="cm-tooltip-portal";function ld(t){if(t==null)return document.querySelector("#App")??void 0;let e=document.querySelector(t);if(e==null)return;let n=e.querySelector(`:scope > .${Po}`);if(n!=null)return n;let r=document.createElement("div");return r.className=`${Po} not-prose contents`,e.append(r),r}const cd=t=>{let{cellId:e,keymapConfig:n,hotkeys:r,enableAI:a,cellActions:o,completionConfig:i,lspConfig:s,diagnosticsConfig:c,displayConfig:l,inlineAiTooltip:u}=t,d=jo(t);return[Dm(n,r),nd(),rd(),Pl(),Hf({cellId:e,completionConfig:i,hotkeys:r,placeholderType:d,lspConfig:s,diagnosticsConfig:c}),wm({cellId:e,hotkeys:r,cellActions:o,keymapConfig:n}),dd(t),td(),c!=null&&c.enabled?Mp():[],a&&u?[Ys({prompt:p=>al({prompt:p.prompt,selection:p.selection,codeBefore:p.codeBefore,codeAfter:p.codeAfter,language:tm(p.editorView)})}),Zt.of({hideOnBlur:!0})]:[],Yf(e,l.reference_highlighting??!0),Ul(e,l.code_lens??!0)]};var ud=t=>{let{from:e,to:n}=t.state.selection.main;if(e!==n)return!1;let r=t.state.doc.lineAt(n);return r.text.slice(0,n-r.from).trim()===""?!1:Vp(t)};const dd=t=>{let{theme:e,hotkeys:n,completionConfig:r,acceptCompletionOnEnter:a,cellId:o,lspConfig:i,diagnosticsConfig:s,tooltipParentSelector:c}=t,l=jo(t),u=r.auto_close_pairs!==!1;return[R.lineWrapping,Cp(),kp(),Lp(),vp(),fp(),mp(),dp(),hp({position:"fixed",parent:ld(c)}),em(),e==="dark"?tp:ep,Qf(i),Bu(r),Ap(),sd(),u?$p():[],Ml(a),u?mt.high(He.of(Gp)):[],Np(),bp(),yp.of(" "),xp(Sp,{fallback:!0}),He.of(pp),nm({placeholderType:l,completionConfig:r,hotkeys:n,cellId:o,lspConfig:{...i,diagnostics:s}}),Wf.of(Pp()),ta.allowMultipleSelections.of(!0),Ku(n),He.of([{key:"Tab",run:d=>Yi(d)||ud(d)||_p(d),preventDefault:!0},{key:n.getHotkey("completion.moveDown").key,run:d=>qt(d.state)===null?!1:(qn(!0)(d),!0),preventDefault:!0},{key:n.getHotkey("completion.moveUp").key,run:d=>qt(d.state)===null?!1:(qn(!1)(d),!0),preventDefault:!0}]),He.of([...Rp,jp])]};var tt=(t=>!t||t instanceof WebAssembly.Module?t:typeof t=="object"&&"default"in t?t.default??t:t)($h),kr=t=>{qh(t),typeof ws=="function"&&ws(),fd(Tt)};function fd(t){typeof t.__wbindgen_start=="function"&&t.__wbindgen_start()}if(tt&&tt.__wbindgen_start)kr(tt);else if("Bun"in globalThis){let t;if(tt instanceof WebAssembly.Module)({instance:t}=await WebAssembly.instantiate(tt,{"./loro_wasm_bg.js":Tt}));else{let e=Bun.pathToFileURL(tt);({instance:t}=await WebAssembly.instantiateStreaming(fetch(e),{"./loro_wasm_bg.js":Tt}))}kr(t.exports)}else{let t=tt instanceof WebAssembly.Module?tt:await yh(()=>import("./loro_wasm_bg-Cei5H7n0.js").then(async r=>(await r.__tla,r)),__vite__mapDeps([0,1,2]),import.meta.url),e=t instanceof WebAssembly.Module?t:t&&t.default||t,n;if(e instanceof WebAssembly.Instance)n=e;else if(e instanceof WebAssembly.Module)n=await WebAssembly.instantiate(e,{"./loro_wasm_bg.js":Tt});else if(e instanceof ArrayBuffer||ArrayBuffer.isView(e)){let{instance:r}=await WebAssembly.instantiate(e,{"./loro_wasm_bg.js":Tt});n=r}else if(typeof e=="string"||e instanceof URL){let r=await fetch(e),{instance:a}=await WebAssembly.instantiateStreaming(r,{"./loro_wasm_bg.js":Tt});n=a}else throw console.error("Unsupported wasm import type:",e),Error("Unsupported wasm import type: "+typeof e);kr(n.exports??n)}var md=["Map","Text","List","Tree","MovableList","Counter"];function pd(t){return t.startsWith("cid:")}function Do(t){if(typeof t!="object"||!t)return!1;let e=Object.getPrototypeOf(t);return typeof e!="object"||!e||typeof e.kind!="function"?!1:md.includes(t.kind())}var hd=class{constructor(t,e=3e4){this.listeners=new Set,this.inner=new Wh(t,e),this.peer=t,this.timeout=e}apply(t,e="remote"){let{updated:n,added:r}=this.inner.apply(t);this.listeners.forEach(a=>{a({updated:n,added:r,removed:[]},e)}),this.startTimerIfNotEmpty()}setLocalState(t){let e=this.inner.getState(this.peer)==null;this.inner.setLocalState(t),e?this.listeners.forEach(n=>{n({updated:[],added:[this.inner.peer()],removed:[]},"local")}):this.listeners.forEach(n=>{n({updated:[this.inner.peer()],added:[],removed:[]},"local")}),this.startTimerIfNotEmpty()}getLocalState(){return this.inner.getState(this.peer)}getAllStates(){return this.inner.getAllStates()}encode(t){return this.inner.encode(t)}encodeAll(){return this.inner.encodeAll()}addListener(t){this.listeners.add(t)}removeListener(t){this.listeners.delete(t)}peers(){return this.inner.peers()}destroy(){clearInterval(this.timer),this.listeners.clear()}startTimerIfNotEmpty(){this.inner.isEmpty()||this.timer!=null||(this.timer=setInterval(()=>{let t=this.inner.removeOutdated();t.length>0&&this.listeners.forEach(e=>{e({updated:[],added:[],removed:t},"timeout")}),this.inner.isEmpty()&&(clearInterval(this.timer),this.timer=void 0)},this.timeout/2))}};la.prototype.toJsonWithReplacer=function(t){let e=new Set,n=this,r=(o,i)=>{if(typeof i=="string"&&pd(i)&&!e.has(i)){e.add(i);let c=n.getContainerById(i);if(c==null)throw Error(`ContainerID not found: ${i}`);let l=t(o,c);if(l===c){let u=c.getShallowValue();return typeof u=="object"?a(u):u}if(Do(l))throw Error("Using new container is not allowed in toJsonWithReplacer");return typeof l=="object"&&l?a(l):l}if(typeof i=="object"&&i)return a(i);let s=t(o,i);if(Do(s))throw Error("Using new container is not allowed in toJsonWithReplacer");return s},a=o=>{if(Array.isArray(o))return o.map((s,c)=>r(c,s)).filter(s=>s!==void 0);let i={};for(let[s,c]of Object.entries(o)){let l=r(s,c);l!==void 0&&(i[s]=l)}return i};return a(n.getShallowValue())};var Mo=Symbol("loro.callPendingEventsWrapped");function gd(t,e){let n=Object.getOwnPropertyDescriptor(t,e);if(!n||typeof n.value!="function")return;let r=n.value;if(r[Mo])return;let a=function(...o){let i;try{return i=r.apply(this,o),i}finally{i&&typeof i.then=="function"?i.finally(()=>{bs()}):bs()}};a[Mo]=!0,Object.defineProperty(t,e,{...n,value:a})}function Cr(t,e){for(let n of e)gd(t,n)}Cr(la.prototype,["setDetachedEditing","attach","detach","fork","forkAt","checkoutToLatest","checkout","commit","getCursorPos","revertTo","export","exportJsonUpdates","exportJsonInIdSpan","importJsonUpdates","import","importUpdateBatch","importBatch","travelChangeAncestors","getChangedContainersIn","diff","applyDiff","setPeerId"]),Cr(Jh.prototype,["set","delete","apply","removeOutdated"]),Cr(Vh.prototype,["undo","redo"]);const yd=R.baseTheme({".loro-cursor":{position:"absolute",width:"2px",display:"inline-block",height:"1.2em"},".loro-cursor::before":{position:"absolute",top:"1.3em",left:"0",content:"var(--rtc-name)",padding:"2px 6px",fontSize:"12px",borderRadius:"3px",whiteSpace:"nowrap",userSelect:"none",backgroundColor:"inherit",opacity:"0.7"},".loro-selection":{opacity:"0.5"}});ea.define();const Ft=ce.define(),Tr=We.define({create(){return{remoteCursors:new Map,isCheckout:!1}},update(t,e){for(let n of e.effects)if(n.is(Ft))switch(n.value.type){case"update":{let{peer:r,user:a,cursor:o}=n.value;t.remoteCursors.set(r,{uid:r,cursor:o,user:a});break}case"delete":t.remoteCursors.delete(n.value.peer);break;case"checkout":t.isCheckout=n.value.checkout}return t}});var Fo=t=>{let e=t.transactions.flatMap(n=>n.effects).filter(n=>n.is(Ft));return t.docChanged||t.viewportChanged||e.length>0};const bd=()=>Hi({above:!0,class:"loro-cursor-layer",update:Fo,markers:t=>{let{remoteCursors:e,isCheckout:n}=t.state.field(Tr);return n?[]:[...e.values()].flatMap(r=>{var o,i;let a=St.cursor(r.cursor.anchor);return vd.createCursor(t,a,((o=r.user)==null?void 0:o.name)||"unknown",((i=r.user)==null?void 0:i.colorClassName)||"")})}}),wd=()=>Hi({above:!1,class:"loro-selection-layer",update:Fo,markers:t=>{let{remoteCursors:e,isCheckout:n}=t.state.field(Tr);return n?[]:[...e.entries()].filter(([,r])=>r.cursor.head!==void 0&&r.cursor.anchor!==r.cursor.head).flatMap(([,r])=>{var o;let a=St.range(r.cursor.anchor,r.cursor.head);return Tp.forRange(t,`loro-selection ${((o=r.user)==null?void 0:o.colorClassName)||""}`,a)})}});var vd=class ma{constructor(e,n,r,a,o){this.left=e,this.top=n,this.height=r,this.name=a,this.colorClassName=o}draw(){let e=document.createElement("div");return this.adjust(e),e}update(e){return this.adjust(e),!0}adjust(e){e.style.left=`${this.left}px`,e.style.top=`${this.top}px`,e.style.height=`${this.height}px`,e.className=`loro-cursor ${this.colorClassName}`,e.style.setProperty("--rtc-name",`"${this.name}"`)}eq(e){return this.left===e.left&&this.top===e.top&&this.height===e.height&&this.name===e.name}static createCursor(e,n,r,a){let o=ma.calculateAbsoluteCursorPosition(n,e);if(!o)return[];let i=e.scrollDOM.getBoundingClientRect(),s=(e.textDirection===Ip.LTR?i.left:i.right-e.scrollDOM.clientWidth)-e.scrollDOM.scrollLeft,c=i.top-e.scrollDOM.scrollTop;return[new ma(o.left-s,o.top-c,o.bottom-o.top,r,a)]}static calculateAbsoluteCursorPosition(e,n){let r=Math.max(0,Math.min(n.state.doc.length,e.anchor));return n.coordsAtPos(r,e.assoc||1)}},xd=(t,e,n,r)=>{let a=[],{updated:o,added:i}=n;for(let s of[...o,...i]){let c=Ro(t,e,s,r);c&&a.push(c)}return a},Ro=(t,e,n,r)=>{var c,l;let a=e.getAllStates()[n];if(!a||n===t.peerIdStr||a.scopeId!==r)return;if(a.type==="delete")return Ft.of({type:"delete",peer:a.uid,scopeId:a.scopeId});let o=vs.decode(a.cursor.anchor),i=((c=t.getCursorPos(o))==null?void 0:c.offset)??0,s=i;if(a.cursor.head){let u=vs.decode(a.cursor.head);s=((l=t.getCursorPos(u))==null?void 0:l.offset)??0}return Ft.of({type:"update",peer:a.uid,scopeId:a.scopeId,cursor:{anchor:i,head:s},user:a.user})},Ed=class{constructor(t,e,n,r,a,o,i){this.view=t,this.doc=e,this.user=n,this.awareness=r,this.getTextFromDoc=a,this.scopeId=o,this.getUserId=i,this.sub=this.doc.subscribe(s=>{if(s.by==="local"){let c=[];for(let l of this.awareness.peers()){let u=Ro(this.doc,this.awareness,l,this.scopeId);u&&c.push(u)}this.view.dispatch({effects:c})}else s.by==="checkout"&&this.view.dispatch({effects:[Ft.of({type:"checkout",checkout:this.doc.isDetached()})]})})}update(t){if(!t.selectionSet&&!t.focusChanged&&!t.docChanged)return;let e=t.state.selection.main;if(this.view.hasFocus&&!this.doc.isDetached()){let n=kd({doc:this.doc,getTextFromDoc:this.getTextFromDoc,anchor:e.anchor,head:e.head});this.awareness.setLocalState({type:"update",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId,cursor:n,user:this.user})}else this.awareness.setLocalState({type:"delete",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}destroy(){var t;(t=this.sub)==null||t.call(this),this.awareness.setLocalState({type:"delete",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}},Sd=class{constructor(t,e,n,r){this.view=t,this.doc=e,this.awareness=n,this.scopeId=r;let a=async(o,i)=>{i!=="local"&&this.view.dispatch({effects:xd(this.doc,this.awareness,o,this.scopeId)})};this._awarenessListener=a,this.awareness.addListener(a)}destroy(){this._awarenessListener&&this.awareness.removeListener(this._awarenessListener)}},kd=({doc:t,getTextFromDoc:e,anchor:n,head:r})=>{var i,s;n===r&&(r=void 0);let a=(i=e(t).getCursor(n))==null?void 0:i.encode();if(!a)throw Error("cursor head not found");let o;return r!==void 0&&(o=(s=e(t).getCursor(r))==null?void 0:s.encode()),{anchor:a,head:o}};const Tn=["bg-(--amber-6)","bg-(--blue-6)","bg-(--crimson-6)","bg-(--cyan-6)","bg-(--grass-6)","bg-(--gray-6)","bg-(--green-6)","bg-(--lime-6)","bg-(--orange-6)","bg-(--purple-6)","bg-(--red-6)","bg-(--sage-6)","bg-(--sky-6)","bg-(--slate-6)"],Cd=t=>{if(typeof t=="string"){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e=Math.trunc(e);return Tn[Math.abs(e)%Tn.length]}return Tn[t%Tn.length]};var he=$e.get("rtc"),Bo=he.get("awareness").disabled(),Nr="awareness:";function Td(t,e){let n=new TextEncoder().encode(t);return new Uint8Array([...n,...e])}function Nd(t,e){return new TextDecoder().decode(t.slice(0,e.length))===e}function Id(t,e){return t.slice(e.length)}pt=ut(void 0);var re=new la,Nn=new hd(re.peerIdStr),Ir=Bp(()=>{he.debug("creating websocket");let t=new zh(qi().getWsSyncURL(wh()).toString(),void 0,{maxRetries:10,debug:!1,startClosed:!0,connectionTimeout:1e4});return Promise.resolve().then(async()=>{await Wi(),qm()==="edit"&&t.reconnect()}),t.addEventListener("message",async e=>{let n=await e.data.arrayBuffer(),r=new Uint8Array(n);if(Nd(r,Nr)){let a=Id(r,Nr);Nn.apply(a),Bo.debug("applied awareness update");return}re.import(r),he.debug("imported doc change. new doc:",re.toJSON()),J.get(pt)!==re&&J.set(pt,re)}),t.addEventListener("open",()=>{he.debug("websocket open")}),t.addEventListener("close",e=>{he.warn("websocket close",e),J.get(pt)===re&&J.set(pt,void 0)}),t});Gn()&&Ir(),re.subscribeLocalUpdates(t=>{he.debug("local update, sending to server"),Ir().send(t)}),Nn.addListener((t,e)=>{let n=[...t.added,...t.removed,...t.updated];e==="local"&&(Bo.debug("awareness changes",n),Ir().send(Td(Nr,Nn.encode(n))))});function Ar(t,e,n=""){if(Hm())return{extension:[],code:n};let r=re.getByPath(`codes/${t}`)!==void 0,a=re.getMap("codes").getOrCreateContainer(t,new sa);return r||(he.log("initializing code for new cell",n),a.insert(0,n)),{code:n.toString(),extension:[Ad(t),Ld(t),Od(re,Nn,{get name(){return J.get(Sm)||"Anonymous"},get colorClassName(){return Cd(this.name)}},()=>a,t),gm(re,["codes",t],()=>a)]}}function Ad(t){let e=(r,a)=>{let o=r.state.field(dt).type,i=a.toString();i&&i!==o&&(he.debug(`[incoming] setting language type: ${o} -> ${i}`),Bt(r,{language:i,keepCodeAsIs:!0}))},n=(r,a)=>{let o=r.state.field($r),i=a.toJSON();Pn(o,i)||r.dispatch({effects:[Ai.of(i)],annotations:[Di.of(!0)]})};return ze.define(r=>{let a;return Promise.resolve().then(()=>{let o=re.getByPath(`languages/${t}`);if(!o){he.error("no language container found for cell",t);return}Gt(o instanceof sa,"language type is not a LoroText");let i=re.getByPath(`language_metadata/${t}`);if(!i){he.error("no language metadata container found for cell",t);return}Gt(i instanceof xs,"language metadata is not a LoroMap"),e(r,o),n(r,i),a=re.subscribe(s=>{if(s.origin==="local")return;let c=s.events.some(u=>u.target===o.id),l=s.events.some(u=>u.target===i.id);c&&e(r,o),l&&n(r,i)})}),{destroy(){a()}}})}function Ld(t){let e=re.getMap("languages").getOrCreateContainer(t,new sa),n=re.getMap("language_metadata").getOrCreateContainer(t,new xs);return R.updateListener.of(r=>{let a=e.toString()!=="";if(!r.docChanged&&a)return;if(!a){let i=zr(r.state).type;Bt(r.view,{language:i}),he.debug("no initial language, setting default to",i),e.delete(0,e.length),e.insert(0,i),he.debug("no initial language metadata, setting default to",r.state.field($r));let s=r.state.field($r);for(let c of Object.keys(s))n.set(c,s[c]);re.commit();return}let o=!1;for(let i of r.transactions)if(!i.annotation(Di)){for(let s of i.effects)if(s.is(Im)&&e.toString()!==s.value.type&&(he.debug(`[outgoing] language change: ${e} -> ${s.value.type}`),e.delete(0,e.length),e.insert(0,s.value.type),o=!0),s.is(Ai)||s.is(Ii)){let c=s.value;s.is(Ii)?(he.debug("[outgoing] setting language metadata: ",c),n.clear()):he.debug("[outgoing] updating language metadata: ",c);for(let l of Object.keys(c))n.set(l,c[l]);o=!0}}o&&re.commit()})}function Od(t,e,n,r,a,o){let i=`loro:cell:${a}`;return[Tr,bd(),wd(),ze.define(s=>new Ed(s,t,n,e,r,i,o)),ze.define(s=>new Sd(s,t,e,i)),yd]}var _d=ve(),Ud=ap;ua=t=>{let e=(0,_d.c)(41),{resetOnBlur:n,placeholderText:r,initialValue:a,flexibleWidth:o,onNameChange:i,className:s}=t,c=n===void 0?!1:n,l=a===void 0?null:a,u=o===void 0?!1:o,{sendListFiles:d}=Hn(),[p,f]=(0,N.useState)(l),m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=[],e[0]=m):m=e[0];let[y,b]=(0,N.useState)(m),[v,S]=(0,N.useState)(!1),k=(0,N.useRef)(null),_=(0,N.useRef)(!1),P,A;e[1]===l?(P=e[2],A=e[3]):(P=()=>{f(l)},A=[l],e[1]=l,e[2]=P,e[3]=A),(0,N.useEffect)(P,A);let T;e[4]===Symbol.for("react.memo_cache_sentinel")?(T=()=>{S(!0)},e[4]=T):T=e[4];let G=T,M;e[5]!==l||e[6]!==c?(M=Y=>{var vt;(vt=Y.relatedTarget)!=null&&vt.closest(".filename-input")||(S(!1),c&&f(l))},e[5]=l,e[6]=c,e[7]=M):M=e[7];let ae=M,O;e[8]===p?O=e[9]:(O=Ze.dirname(p||""),e[8]=p,e[9]=O);let I=O,le=Ze.basename(p||""),ue=y.filter(Y=>Ze.basename(Y.path).startsWith(le)),oe;e[10]!==I||e[11]!==v||e[12]!==d?(oe=async()=>{if(!v){b([]);return}b((await d({path:I})).files)},e[10]=I,e[11]=v,e[12]=d,e[13]=oe):oe=e[13];let ne;e[14]!==I||e[15]!==v?(ne=[I,v],e[14]=I,e[15]=v,e[16]=ne):ne=e[16];let{isPending:U}=Oh(oe,ne),j=jd(p,y,l),we=(j||ue.length>0)&&(0,h.jsxs)(ps,{className:"font-mono",children:[!U&&(0,h.jsx)(Uh,{children:"No files"}),j&&(0,h.jsxs)(ms,{variant:"success",className:"py-2 px-3",onSelect:()=>{var Y;j&&(_.current=!0,i(j),(Y=k.current)==null||Y.blur())},children:[(0,h.jsx)(te,{className:"w-4 h-4 mr-2"})," ",(0,h.jsxs)("span",{className:"text-sm",children:[l?"Rename to: ":"Save as: ",(0,h.jsx)("span",{className:"font-medium text-sm",children:Ze.basename(j)})]})]},"_rename_"),ue.map(Y=>{let vt=dh[Y.isDirectory?"directory":uh(Y.path)];return(0,h.jsxs)(ms,{variant:Y.isDirectory?"default":"muted",className:"py-2 px-3",onSelect:()=>{Y.isDirectory?f(`${Y.path}/`):f(Y.path)},children:[(0,h.jsx)(vt,{className:"w-4 h-4 mr-2"})," ",Ze.basename(Y.path)]},Y.path)})]}),de=Math.max(20,(p==null?void 0:p.length)||(r==null?void 0:r.length)||0)*10,E=v?p||"":l||"",C;e[17]!==u||e[18]!==de?(C=u?{maxWidth:de}:void 0,e[17]=u,e[18]=de,e[19]=C):C=e[19];let D;e[20]===s?D=e[21]:(D=at(s,"w-full px-4 py-1 my-1 h-9 font-mono text-foreground/60"),e[20]=s,e[21]=D);let L;e[22]!==r||e[23]!==E||e[24]!==C||e[25]!==D?(L=(0,h.jsx)(Ud,{children:(0,h.jsx)(_h,{"data-testid":"dir-completion-input",tabIndex:-1,rootClassName:"border-none justify-center px-1",spellCheck:"false",value:E,onKeyDown:Pd,icon:null,ref:k,onValueChange:f,placeholder:r,autoComplete:"off",style:C,className:D})}),e[22]=r,e[23]=E,e[24]=C,e[25]=D,e[26]=L):L=e[26];let fe=we&&"group-focus-within:block",Je;e[27]===fe?Je=e[28]:(Je=at("p-0 w-full min-w-80 max-w-80vw hidden",fe),e[27]=fe,e[28]=Je);let qe;e[29]!==we||e[30]!==Je?(qe=(0,h.jsx)(op,{side:"bottom",className:Je,portal:!1,children:we}),e[29]=we,e[30]=Je,e[31]=qe):qe=e[31];let Ve;e[32]!==L||e[33]!==qe?(Ve=(0,h.jsxs)(ps,{children:[L,qe]}),e[32]=L,e[33]=qe,e[34]=Ve):Ve=e[34];let F;e[35]!==ae||e[36]!==Ve?(F=(0,h.jsx)(jh,{onFocus:G,onBlur:ae,shouldFilter:!1,id:"filename-input",className:"bg-transparent group filename-input",children:Ve}),e[35]=ae,e[36]=Ve,e[37]=F):F=e[37];let ie;return e[38]!==v||e[39]!==F?(ie=(0,h.jsx)(np,{children:(0,h.jsx)(ip,{open:v,modal:!1,children:F})}),e[38]=v,e[39]=F,e[40]=ie):ie=e[40],ie};function jd(t,e,n){if(t&&!t.endsWith("/")&&((vi("markdown")?new Set(["py","md","markdown","qmd"]):new Set(["py"])).has(Ze.extension(t))||(t=t.endsWith(".")?`${t}py`:t.endsWith(".p")?`${t}y`:`${t}.py`),!e.some(r=>r.path===t||Ze.basename(r.path)===t)&&!(n&&(n===t||Ze.basename(n)===t))))return t}function Pd(t){t.key==="Escape"&&t.currentTarget.blur()}var Go=ve(),Dd=t=>{let e=(0,Go.c)(33),n=()=>{up(new Blob([r()],{type:"text/plain"}),`${t.proposedName}.json`)},r=se(Rd),a;e[0]!==n||e[1]!==t?(a=P=>{P.preventDefault(),n(),t.closeModal()},e[0]=n,e[1]=t,e[2]=a):a=e[2];let o;e[3]===t?o=e[4]:(o=P=>{P.key==="Escape"&&t.closeModal()},e[3]=t,e[4]=o);let i;e[5]===Symbol.for("react.memo_cache_sentinel")?(i=(0,h.jsx)(is,{className:"text-accent-foreground mb-6",children:"Download unsaved changes?"}),e[5]=i):i=e[5];let s;e[6]===Symbol.for("react.memo_cache_sentinel")?(s={wordBreak:"break-word"},e[6]=s):s=e[6];let c,l;e[7]===Symbol.for("react.memo_cache_sentinel")?(c=(0,h.jsx)("p",{children:"This app has unsaved changes. To recover:"}),l={paddingBottom:"10px"},e[7]=c,e[8]=l):(c=e[7],l=e[8]);let u;e[9]===t.proposedName?u=e[10]:(u=(0,h.jsxs)("li",{style:l,children:['Click the "Download" button. This will download a file called\xA0',(0,h.jsxs)("code",{children:[t.proposedName,".json"]}),". This file contains your code."]}),e[9]=t.proposedName,e[10]=u);let d;e[11]===Symbol.for("react.memo_cache_sentinel")?(d={paddingBottom:"10px"},e[11]=d):d=e[11];let p;e[12]===Symbol.for("react.memo_cache_sentinel")?(p={display:"block",padding:"10px"},e[12]=p):p=e[12];let f;e[13]===t.proposedName?f=e[14]:(f=(0,h.jsxs)("code",{style:p,children:["marimo recover ",t.proposedName,".json ",">"," ",t.proposedName,".py"]}),e[13]=t.proposedName,e[14]=f);let m;e[15]===t.proposedName?m=e[16]:(m=(0,h.jsxs)("code",{children:[t.proposedName,".py"]}),e[15]=t.proposedName,e[16]=m);let y;e[17]!==m||e[18]!==f?(y=(0,h.jsxs)("li",{style:d,children:["In your terminal, type",f,"to overwrite ",m," with the recovered changes."]}),e[17]=m,e[18]=f,e[19]=y):y=e[19];let b;e[20]!==y||e[21]!==u?(b=(0,h.jsx)(kh,{className:"markdown wrap-break-word",style:s,children:(0,h.jsxs)("div",{className:"prose dark:prose-invert",children:[c,(0,h.jsxs)("ol",{children:[u,y]})]})}),e[20]=y,e[21]=u,e[22]=b):b=e[22];let v;e[23]===t.closeModal?v=e[24]:(v=(0,h.jsx)(ft,{"aria-label":"Cancel",variant:"secondary","data-testid":"cancel-recovery-button",onClick:t.closeModal,children:"Cancel"}),e[23]=t.closeModal,e[24]=v);let S;e[25]===Symbol.for("react.memo_cache_sentinel")?(S=(0,h.jsx)(ft,{"data-testid":"download-recovery-button","aria-label":"Download",variant:"default",type:"submit",children:"Download"}),e[25]=S):S=e[25];let k;e[26]===v?k=e[27]:(k=(0,h.jsxs)(ss,{children:[v,S]}),e[26]=v,e[27]=k);let _;return e[28]!==a||e[29]!==o||e[30]!==b||e[31]!==k?(_=(0,h.jsx)(ls,{className:"w-fit",children:(0,h.jsxs)("form",{onSubmit:a,onKeyDown:o,children:[i,b,k]})}),e[28]=a,e[29]=o,e[30]=b,e[31]=k,e[32]=_):_=e[32],_};const Md=t=>{let e=(0,Go.c)(12),{filename:n,needsSave:r}=t,{openModal:a,closeModal:o}=us(),i;e[0]===n?i=e[1]:(i=n===null?"app":Ze.basename(n).split(".")[0],e[0]=n,e[1]=i);let s=i,c;e[2]!==o||e[3]!==r||e[4]!==a||e[5]!==s?(c=()=>{r&&a((0,h.jsx)(Dd,{proposedName:s,closeModal:o}))},e[2]=o,e[3]=r,e[4]=a,e[5]=s,e[6]=c):c=e[6];let l=c;cs("global.save",l);let u;e[7]===Symbol.for("react.memo_cache_sentinel")?(u=hs("global.save"),e[7]=u):u=e[7];let d=r?"yellow":"gray",p;e[8]===Symbol.for("react.memo_cache_sentinel")?(p=(0,h.jsx)(rs,{strokeWidth:1.5,size:18}),e[8]=p):p=e[8];let f;return e[9]!==l||e[10]!==d?(f=(0,h.jsx)(Jn,{content:u,children:(0,h.jsx)(Es,{onClick:l,id:"save-button","aria-label":"Save",className:"rectangle",color:d,children:p})}),e[9]=l,e[10]=d,e[11]=f):f=e[11],f};function Fd(t){return{id:t.id,name:t.name,code:t.code,code_hash:null,config:{column:0,...t.config}}}function Rd(){let t=Gr(xt()),e={version:"1",metadata:{marimo_version:Zm()},cells:t.map(Fd)};return JSON.stringify(e,null,2)}let Lr;Xn=ut(void 0),Lr=ut(t=>{let e=t(Xn);return Bd({state:t(rt),layout:t(Qi),lastSavedNotebook:e})});function Bd({state:t,layout:e,lastSavedNotebook:n}){if(!n)return!1;let{cellIds:r,cellData:a}=t,o=r.inOrderIds.map(l=>a[l]),i=o.map(l=>l.code),s=o.map(l=>l.config),c=o.map(l=>l.name);return!zi(i,n.codes)||!zi(c,n.names)||!Pn(s,n.configs)||!Pn(e.selectedLayout,n.layout.selectedLayout)||!Pn(e.layoutData,n.layout.layoutData)}var Gd=ve();function Jd(t){let e=(0,Gd.c)(21),{codes:n,cellConfigs:r,config:a,connStatus:o,cellNames:i,needsSave:s,kioskMode:c,onSave:l}=t,u=(0,N.useRef)(null),d;e[0]===n?d=e[1]:(d=n.join(":"),e[0]=n,e[1]=d);let p=d,f;e[2]===r?f=e[3]:(f=r.map(Vd).join(":"),e[2]=r,e[3]=f);let m=f,y;e[4]===i?y=e[5]:(y=i.join(":"),e[4]=i,e[5]=y);let b=y,v;e[6]!==a||e[7]!==o.state||e[8]!==c||e[9]!==s||e[10]!==l?(v=()=>{if(!c)return a.autosave==="after_delay"&&(u.current!==null&&clearTimeout(u.current),s&&o.state===Jt.OPEN&&(u.current=setTimeout(l,a.autosave_delay))),()=>{u.current!==null&&clearTimeout(u.current)}},e[6]=a,e[7]=o.state,e[8]=c,e[9]=s,e[10]=l,e[11]=v):v=e[11];let S;e[12]!==m||e[13]!==b||e[14]!==p||e[15]!==a||e[16]!==o.state||e[17]!==c||e[18]!==s||e[19]!==l?(S=[p,m,b,a,o.state,l,c,s],e[12]=m,e[13]=b,e[14]=p,e[15]=a,e[16]=o.state,e[17]=c,e[18]=s,e[19]=l,e[20]=S):S=e[20],(0,N.useEffect)(v,S)}function Vd(t){return JSON.stringify(t)}var In=ve();Cs=t=>{let e=(0,In.c)(15),{kioskMode:n}=t,r=Ih(),a=q(Lr),o=q(Et).state===Jt.CLOSED,{saveOrNameNotebook:i,saveIfNotebookIsPersistent:s}=Yt(),c;e[0]!==n||e[1]!==s?(c={onSave:s,kioskMode:n},e[0]=n,e[1]=s,e[2]=c):c=e[2],Hd(c),Yh();let l;e[3]===a?l=e[4]:(l=b=>{if(a)return b.preventDefault(),b.returnValue="You have unsaved changes. Are you sure you want to leave?",b.returnValue},e[3]=a,e[4]=l),$m(window,"beforeunload",l);let u;e[5]===i?u=e[6]:(u=b=>{b.preventDefault(),b.stopPropagation(),i()},e[5]=i,e[6]=u);let d=u;if(cs("global.save",i),o){let b;return e[7]!==r||e[8]!==a?(b=(0,h.jsx)(Md,{filename:r,needsSave:a}),e[7]=r,e[8]=a,e[9]=b):b=e[9],b}let p;e[10]===Symbol.for("react.memo_cache_sentinel")?(p=hs("global.save"),e[10]=p):p=e[10];let f=a?"yellow":"hint-green",m;e[11]===Symbol.for("react.memo_cache_sentinel")?(m=(0,h.jsx)(rs,{strokeWidth:1.5,size:18}),e[11]=m):m=e[11];let y;return e[12]!==d||e[13]!==f?(y=(0,h.jsx)(Jn,{content:p,children:(0,h.jsx)(Es,{"data-testid":"save-button",id:"save-button",shape:"rectangle",color:f,onClick:d,children:m})}),e[12]=d,e[13]=f,e[14]=y):y=e[14],y},Yt=function(){let t=(0,In.c)(21),{sendSave:e}=Hn(),{openModal:n,closeModal:r,openAlert:a}=us(),o=wi(Xn),i=Ah(),s=Fr(),c;t[0]!==a||t[1]!==e||t[2]!==o||t[3]!==s?(c=async(v,S)=>{let k=s.get(Et),_=s.get(Vi);if(s.get(zm))return;if(k.state!==Jt.OPEN){a("Failed to save notebook: not connected to a kernel.");return}$e.log("saving to ",v),S&&_.format_on_save&&($e.log("formatting notebook (onSave)"),await am());let P=xt(),A=Gr(P),T=A.map(qd),G=A.map(Wd),M=A.map($d),ae=Mi(P),O=s.get(Qi);G.length!==0&&(await e({cellIds:T,codes:G,names:M,filename:v,configs:ae,layout:zp(),persist:!0}),o({names:M,codes:G,configs:ae,layout:O}))},t[0]=a,t[1]=e,t[2]=o,t[3]=s,t[4]=c):c=t[4];let l=se(c),u;t[5]!==l||t[6]!==s?(u=v=>{let S=v===void 0?!1:v,k=s.get(_i),_=s.get(Et);Jo(k)&&_.state===Jt.OPEN&&l(k,S)},t[5]=l,t[6]=s,t[7]=u):u=t[7];let d=se(u),p;t[8]!==l||t[9]!==i?(p=v=>{i(v).then(S=>{S!==null&&l(S,!0)})},t[8]=l,t[9]=i,t[10]=p):p=t[10];let f=p,m;t[11]!==r||t[12]!==f||t[13]!==n||t[14]!==d||t[15]!==s?(m=()=>{let v=s.get(_i),S=s.get(Et);d(!0),!Jo(v)&&S.state!==Jt.CLOSED&&n((0,h.jsx)(Kd,{onClose:r,onSave:f}))},t[11]=r,t[12]=f,t[13]=n,t[14]=d,t[15]=s,t[16]=m):m=t[16];let y=se(m),b;return t[17]!==d||t[18]!==l||t[19]!==y?(b={saveOrNameNotebook:y,saveIfNotebookIsPersistent:d,saveNotebook:l},t[17]=d,t[18]=l,t[19]=y,t[20]=b):b=t[20],b};function $d(t){return t.name}function Wd(t){return t.code}function qd(t){return t.id}function Jo(t){return t!==null&&!t.startsWith("/tmp/")&&!t.startsWith("/var/folders")&&!t.includes("AppData\\Local\\Temp")}function Hd(t){let e=(0,In.c)(14),n=q(Vi),r=Gf(),[a]=jn(Et),o=q(Lr),i,s;if(e[0]!==r){let p=Gr(r);i=p.map(Yd),s=p.map(zd),e[0]=r,e[1]=i,e[2]=s}else i=e[1],s=e[2];let c=s,l;e[3]===r?l=e[4]:(l=Mi(r),e[3]=r,e[4]=l);let u=l,d;e[5]!==n||e[6]!==c||e[7]!==i||e[8]!==u||e[9]!==a||e[10]!==o||e[11]!==t.kioskMode||e[12]!==t.onSave?(d={onSave:t.onSave,needsSave:o,codes:i,cellConfigs:u,cellNames:c,connStatus:a,config:n,kioskMode:t.kioskMode},e[5]=n,e[6]=c,e[7]=i,e[8]=u,e[9]=a,e[10]=o,e[11]=t.kioskMode,e[12]=t.onSave,e[13]=d):d=e[13],Jd(d)}function zd(t){return t.name}function Yd(t){return t.code}var Kd=t=>{let e=(0,In.c)(17),{onClose:n,onSave:r}=t,[a,o]=(0,N.useState)(),i;e[0]!==n||e[1]!==r?(i=b=>{o(b),b.trim()&&(r(b),n())},e[0]=n,e[1]=r,e[2]=i):i=e[2];let s=i,c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,h.jsx)(is,{children:"Save notebook"}),e[3]=c):c=e[3];let l;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=(0,h.jsx)(Qr,{className:"text-md pt-6 px-1",children:"Save as"}),e[4]=l):l=e[4];let u;e[5]===s?u=e[6]:(u=(0,h.jsxs)("div",{className:"flex flex-col",children:[l,(0,h.jsx)(ua,{onNameChange:s,placeholderText:"filename",className:"missing-filename"})]}),e[5]=s,e[6]=u);let d;e[7]===n?d=e[8]:(d=(0,h.jsx)(ft,{"data-testid":"cancel-save-dialog-button","aria-label":"Cancel",variant:"secondary",onClick:n,children:"Cancel"}),e[7]=n,e[8]=d);let p=!a,f;e[9]===p?f=e[10]:(f=(0,h.jsx)(ft,{"data-testid":"submit-save-dialog-button","aria-label":"Save",variant:"default",disabled:p,type:"submit",children:"Save"}),e[9]=p,e[10]=f);let m;e[11]!==d||e[12]!==f?(m=(0,h.jsxs)(ss,{children:[d,f]}),e[11]=d,e[12]=f,e[13]=m):m=e[13];let y;return e[14]!==u||e[15]!==m?(y=(0,h.jsxs)(ls,{children:[c,u,m]}),e[14]=u,e[15]=m,e[16]=y):y=e[16],y};Kn=function(...t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}};var Vo={modified:{doc:""},original:{doc:""}},$o=(0,N.createContext)(Vo);function Xd(t,e){return K({},t,e,{modified:K({},t.modified,e.modified),original:K({},t.original,e.original)})}var Or=()=>(0,N.useContext)($o),Qd=t=>{var{children:e,theme:n}=t,[r,a]=(0,N.useReducer)(Xd,K({},Vo,{theme:n}));return(0,N.useEffect)(()=>a({theme:n}),[n]),(0,h.jsx)($o.Provider,{value:K({},r,{dispatch:a}),children:e})},Zd=["extensions","value","selection","onChange"],Wo=t=>{var{extensions:e=[],value:n,selection:r,onChange:a}=t,o=Ht(t,Zd),{theme:i,dispatch:s}=Or(),c=Ct(K({},o,{theme:i}));return(0,N.useEffect)(()=>s({original:{doc:n,selection:r,extensions:[...c,...e]},originalExtension:{onChange:a,option:o,extension:[e]}}),[t]),null};Wo.displayName="CodeMirrorMerge.Original";var ef=["extensions","value","selection","onChange"],qo=t=>{var{extensions:e=[],value:n,selection:r,onChange:a}=t,o=Ht(t,ef),{theme:i,dispatch:s}=Or(),c=Ct(K({},o,{theme:i}));return(0,N.useEffect)(()=>{s({modified:{doc:n,selection:r,extensions:[...c,...e]},modifiedExtension:{onChange:a,option:o,extension:[e]}})},[t]),null};qo.displayName="CodeMirrorMerge.Modified";var tf=["className","children","orientation","revertControls","highlightChanges","gutter","collapseUnchanged","destroyRerender","renderRevertControl","diffConfig","root"],nf=["modified","modifiedExtension","original","originalExtension","theme","dispatch"],Ho=N.forwardRef((t,e)=>{var{className:n,children:r,orientation:a,revertControls:o,highlightChanges:i,gutter:s,collapseUnchanged:c,destroyRerender:l=!0,renderRevertControl:u,diffConfig:d,root:p}=t,f=Ht(t,tf),m=Or(),{modified:y,modifiedExtension:b,original:v,originalExtension:S,theme:k,dispatch:_}=m,P=Ht(m,nf),A=(0,N.useRef)(null),T=(0,N.useRef)(),G={orientation:a,revertControls:o,highlightChanges:i,gutter:s,collapseUnchanged:c,renderRevertControl:u,diffConfig:d,root:p};(0,N.useImperativeHandle)(e,()=>({container:A.current,view:T.current,modified:y,original:v,config:K({a:v,b:y,parent:A.current},G)}),[A,T,y,v,G]);var M=R.updateListener.of(O=>{if(O.docChanged&&typeof(S==null?void 0:S.onChange)=="function"){var I=O.state.doc.toString();S==null||S.onChange(I,O)}}),ae=R.updateListener.of(O=>{if(O.docChanged&&typeof(b==null?void 0:b.onChange)=="function"){var I=O.state.doc.toString();b==null||b.onChange(I,O)}});return(0,N.useEffect)(()=>{!T.current&&A.current&&S&&b&&(T.current=new gs(K({a:K({},v,{extensions:[...(S==null?void 0:S.extension)||[],...Ct(K({},S==null?void 0:S.option,{theme:k})),M]}),b:K({},y,{extensions:[...(b==null?void 0:b.extension)||[],...Ct(K({},b==null?void 0:b.option,{theme:k})),ae]}),parent:A.current},G)),_({view:T.current}))},[T,A,S,b]),(0,N.useEffect)(()=>{var U,j;if(v&&v.doc&&T.current){var O=(U=T.current)==null?void 0:U.a.state.doc.toString();if(O!==v.doc){var I;(I=T.current)==null||I.a.dispatch({changes:{from:0,to:O.length,insert:v.doc||""}})}}if(y&&y.doc&&T.current){var le=(j=T.current)==null?void 0:j.b.state.doc.toString();if(le!==y.doc){var ue;(ue=T.current)==null||ue.b.dispatch({changes:{from:0,to:le.length,insert:y.doc||""}})}}if(l&&T.current){var oe=T.current.a.state.selection.ranges[0].from,ne=T.current.b.state.selection.ranges[0].from;T.current.destroy(),T.current=new gs(K({a:K({},v,{extensions:[...(S==null?void 0:S.extension)||[],...Ct(K({},S==null?void 0:S.option,{theme:k}))]}),b:K({},y,{extensions:[...(b==null?void 0:b.extension)||[],...Ct(K({},b==null?void 0:b.option,{theme:k}))]}),parent:A.current},G)),oe&&(T.current.a.focus(),T.current.a.dispatch({selection:{anchor:oe,head:oe}})),ne&&(T.current.b.focus(),T.current.b.dispatch({selection:{anchor:ne,head:ne}}))}},[T,k,A.current,v,y,S,b,l]),(0,N.useEffect)(()=>()=>T.current&&T.current.destroy(),[]),(0,N.useEffect)(()=>{if(T.current){var O={};P.orientation!==a&&(O.orientation=a),P.revertControls!==o&&(O.revertControls=o),P.highlightChanges!==i&&(O.highlightChanges=i),P.gutter!==s&&(O.gutter=s),P.collapseUnchanged!==c&&(O.collapseUnchanged=c),P.renderRevertControl!==u&&(O.collapseUnchanged=c),Object.keys(O).length&&_&&T.current&&(T.current.reconfigure(K({},O)),_(K({},O)))}},[_,T,a,o,i,s,c,u]),(0,h.jsx)("div",K({ref:A,className:"cm-merge-theme"+(n?" "+n:"")},f,{children:r}))});Ho.displayName="CodeMirrorMerge.Internal";var rf=["theme"],An=N.forwardRef((t,e)=>{var{theme:n}=t;return(0,h.jsx)(Qd,{theme:n,children:(0,h.jsx)(Ho,K({},Ht(t,rf),{ref:e}))})});An.Original=Wo,An.Modified=qo,An.displayName="CodeMirrorMerge";var _r=An,af=ve(),of=_r.Original,sf=_r.Modified,zo=[Vf(),R.lineWrapping];const lf=({cellId:t,aiCompletionCell:e,className:n,onChange:r,currentLanguageAdapter:a,currentCode:o,declineChange:i,acceptChange:s,runCell:c,outputArea:l,children:u})=>{let[d,p]=(0,N.useState)(!1),[f,m]=(0,N.useState)({}),[y,b]=jn(Nh),v=(0,N.useId)(),S=Km(),{initialPrompt:k,triggerImmediately:_,cellId:P}=e??{},A=P===t,T=q(Zp).get(t),G;(T==null?void 0:T.type)==="update_cell"&&(G=T.previousCode);let{completion:M,input:ae,stop:O,isLoading:I,setCompletion:le,setInput:ue,handleSubmit:oe,complete:ne}=nh({api:S.getAiURL("completion").toString(),headers:S.headers(),initialInput:k,throttle:100,body:{...Object.keys(f).length>0?f:k?es({input:k}):{},includeOtherCode:y?Jr(o):"",code:o,language:a},onError:F=>{kt({title:"Completion failed",description:Ch(F)})},onFinish:(F,ie)=>{le(rr(ie).trimEnd())}}),U=N.useRef(null),j=rr(M,{streaming:I}).trimEnd(),we=(0,N.useCallback)(()=>{_&&!I&&k&&ne(k)},[_]);(0,N.useEffect)(()=>{var F;A&&(Jf(()=>{let ie=U.current;return ie!=null&&ie.view?(ie.view.focus(),we(),!0):!1},{retries:3,delay:100,initialDelay:100}),Nm((F=U.current)==null?void 0:F.view))},[A,we]),(0,N.useEffect)(()=>{A&&ue(k||"")},[A,k,ue]);let{theme:de}=vh(),E=()=>{s(j),le("")},C=()=>{var F,ie;O(),le(""),p(!0),(ie=(F=U.current)==null?void 0:F.view)==null||ie.focus()},D=A&&_&&(j||I);l??(l="below");let L=A&&(!_||d),fe=(0,h.jsx)("div",{className:at("w-full bg-(--cm-background) flex justify-center transition-all duration-300 ease-in-out overflow-hidden",D?"max-h-20 opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:(0,h.jsx)(cf,{status:I?"loading":"generated",onAccept:E,onReject:C,showInputPrompt:d,setShowInputPrompt:p,runCell:c,className:"mt-4 mb-3 w-lg"})}),Je=(F,ie)=>(0,h.jsxs)(_r,{className:"cm",theme:de,children:[(0,h.jsx)(of,{onChange:r,value:F,extensions:zo}),(0,h.jsx)(sf,{value:ie,editable:!1,readOnly:!0,extensions:zo})]}),qe=()=>{if(j&&A)return Je(o,j);if(!j&&G)return Je(G,o)},Ve=(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(Zi,{isLoading:I,onAccept:E,size:"xs",multipleCompletions:!1,acceptShortcut:"Mod-\u21B5",runCell:c,borderless:!0,buttonStyles:"hover:shadow-none",playButtonStyles:"hover:shadow-none"}),(0,h.jsx)(ts,{onDecline:C,size:"xs",multipleCompletions:!1,declineShortcut:"Shift-Mod-Delete",borderless:!0,className:"hover:shadow-none"})]});return(0,h.jsxs)("div",{"data-ai-input-open":L,className:at("flex flex-col w-full rounded-[inherit]",n),children:[(0,h.jsx)("div",{className:at("flex items-center gap-2 px-3 transition-all rounded-[inherit] rounded-b-none duration-300",L&&"max-h-[400px] border-b min-h-11 visible",!L&&"max-h-0 min-h-0 invisible"),children:A&&(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(hh,{className:"text-(--blue-10) shrink-0",size:16}),(0,h.jsx)(oh,{inputRef:U,className:"h-full my-0 py-2 flex items-center",onClose:()=>{i(),le("")},value:ae,onChange:F=>{ue(F),m(es({input:F}))},onSubmit:()=>{var F;I||((F=U.current)!=null&&F.view&&eh(U.current.view),oe())},onKeyDown:sh({handleAcceptCompletion:E,handleDeclineCompletion:C,isLoading:I,hasCompletion:j.trim().length>0})}),(0,h.jsxs)("div",{className:"-mr-1.5 py-1.5",children:[(0,h.jsxs)("div",{className:"flex flex-row items-center justify-end gap-0.5",children:[(0,h.jsx)(ih,{isLoading:I,onStop:O,onSendClick:oe,isEmpty:!ae.trim(),showStopLabel:!0}),(0,h.jsx)(ah,{handleAddContext:()=>Qp(U),isLoading:I}),(0,h.jsx)(Bm,{triggerClassName:"h-7 text-xs",iconSize:"small",forRole:"edit",displayIconOnly:!0,placeholder:"Edit model"})]}),j&&(0,h.jsx)("div",{className:"mt-1 flex items-center gap-1",children:Ve})]}),(0,h.jsx)("div",{className:"h-full w-px bg-border mx-2"}),(0,h.jsx)(Jn,{content:"Include code from other cells",children:(0,h.jsxs)("div",{className:"flex flex-row items-start gap-1 overflow-hidden",children:[(0,h.jsx)(zf,{"data-testid":"include-other-cells-checkbox",id:v,checked:y,onCheckedChange:F=>b(!!F)}),(0,h.jsx)(Qr,{htmlFor:v,className:"text-muted-foreground text-xs whitespace-nowrap ellipsis",children:"All code"})]})}),(0,h.jsx)(ft,{"data-testid":"decline-completion-button",variant:"text",size:"icon",disabled:I,onClick:()=>{O(),i(),le("")},children:(0,h.jsx)(Kp,{className:"text-(--red-10)",size:16})})]})}),l==="above"&&fe,qe(),(!j||!A)&&!G&&u,l==="below"&&fe]})};var cf=t=>{let e=(0,af.c)(27),{status:n,onAccept:r,onReject:a,className:o,showInputPrompt:i,setShowInputPrompt:s,runCell:c}=t,l=n==="loading",u;e[0]===o?u=e[1]:(u=at("flex flex-row items-center gap-6 rounded-md py-2 px-2.5 text-sm border border-border","shadow-[0_0_6px_1px_rgba(34,197,94,0.15)]",o),e[0]=o,e[1]=u);let d;e[2]===l?d=e[3]:(d=l?(0,h.jsx)(mh,{className:"animate-spin text-blue-600 mb-px",size:15,strokeWidth:2,"aria-label":"Generating fix"}):(0,h.jsx)(Xp,{className:"text-green-600 mb-px",size:15,strokeWidth:2,"aria-label":"Fix generated"}),e[2]=l,e[3]=d);let p=l?"Generating fix...":"Showing fix",f;e[4]===p?f=e[5]:(f=(0,h.jsx)("p",{className:"transition-opacity duration-200 text-muted-foreground",children:p}),e[4]=p,e[5]=f);let m;e[6]!==d||e[7]!==f?(m=(0,h.jsxs)("div",{className:"flex flex-row items-center gap-2",children:[d,f]}),e[6]=d,e[7]=f,e[8]=m):m=e[8];let y;e[9]===Symbol.for("react.memo_cache_sentinel")?(y=(0,h.jsx)(Qr,{htmlFor:"show-input-prompt",className:"text-muted-foreground text-xs whitespace-nowrap ellipsis",children:"Show prompt"}),e[9]=y):y=e[9];let b;e[10]!==s||e[11]!==i?(b=(0,h.jsxs)("div",{className:"flex flex-row items-center gap-1",children:[y,(0,h.jsx)(Qm,{checked:i,onCheckedChange:s,size:"xs"})]}),e[10]=s,e[11]=i,e[12]=b):b=e[12];let v;e[13]!==l||e[14]!==r||e[15]!==c?(v=(0,h.jsx)(Zi,{isLoading:l,onAccept:r,size:"xs",borderless:!0,runCell:c}),e[13]=l,e[14]=r,e[15]=c,e[16]=v):v=e[16];let S;e[17]===a?S=e[18]:(S=(0,h.jsx)(ts,{onDecline:a,size:"xs",borderless:!0}),e[17]=a,e[18]=S);let k;e[19]!==v||e[20]!==S?(k=(0,h.jsxs)("div",{className:"flex flex-row items-center gap-2 ml-auto",children:[v,S]}),e[19]=v,e[20]=S,e[21]=k):k=e[21];let _;return e[22]!==u||e[23]!==k||e[24]!==m||e[25]!==b?(_=(0,h.jsxs)("div",{className:u,children:[m,b,k]}),e[22]=u,e[23]=k,e[24]=m,e[25]=b,e[26]=_):_=e[26],_},Ur="web application/x-marimo-cell",uf=Yr({cells:Um(Yr({code:Fi(),name:Fi().optional(),config:Yr({column:jm([Lm(),Om()]).optional(),disabled:Ri().optional(),hide_code:Ri().optional()}).optional()})),version:_m("1.0")});function jr(t){return t.map(e=>e.code).join(`
22
+ `).trim()}function sd(t,e,n,r){var a;return r!=="{"||e!==n||!((a=$n(t.state).resolveInner(e,-1))!=null&&a.type.name.includes("String"))?!1:(t.dispatch({changes:{from:e,to:n,insert:"{}"},selection:{anchor:e+1},userEvent:"input.type"}),!0)}function ld(){return R.inputHandler.of(sd)}function jo(t){let{showPlaceholder:e,enableAI:n}=t;return e?"marimo-import":n?"ai":"none"}var Po="cm-tooltip-portal";function cd(t){if(t==null)return document.querySelector("#App")??void 0;let e=document.querySelector(t);if(e==null)return;let n=e.querySelector(`:scope > .${Po}`);if(n!=null)return n;let r=document.createElement("div");return r.className=`${Po} not-prose contents`,e.append(r),r}const ud=t=>{let{cellId:e,keymapConfig:n,hotkeys:r,enableAI:a,cellActions:o,completionConfig:i,lspConfig:s,diagnosticsConfig:c,displayConfig:l,inlineAiTooltip:u}=t,d=jo(t);return[Rm(n,r),rd(),ad(),Dl(),zf({cellId:e,completionConfig:i,hotkeys:r,placeholderType:d,lspConfig:s,diagnosticsConfig:c}),xm({cellId:e,hotkeys:r,cellActions:o,keymapConfig:n}),fd(t),nd(),c!=null&&c.enabled?Rp():[],a&&u?[Ys({prompt:p=>al({prompt:p.prompt,selection:p.selection,codeBefore:p.codeBefore,codeAfter:p.codeAfter,language:rm(p.editorView)})}),Qt.of({hideOnBlur:!0})]:[],Hf(e,l.reference_highlighting??!0),jl(e,l.code_lens??!0)]};var dd=t=>{let{from:e,to:n}=t.state.selection.main;if(e!==n)return!1;let r=t.state.doc.lineAt(n);return r.text.slice(0,n-r.from).trim()===""?!1:Wp(t)};const fd=t=>{let{theme:e,hotkeys:n,completionConfig:r,acceptCompletionOnEnter:a,cellId:o,lspConfig:i,diagnosticsConfig:s,tooltipParentSelector:c}=t,l=jo(t),u=r.auto_close_pairs!==!1;return[R.lineWrapping,Np(),Tp(),_p(),Ep(),pp(),hp(),mp(),yp({position:"fixed",parent:cd(c)}),nm(),e==="dark"?rp:np,Qf(i),Gu(r),Op(),ld(),u?qp():[],Fl(a),u?mt.high(He.of(Vp)):[],Ap(),vp(),wp.of(" "),Sp(Cp,{fallback:!0}),He.of(gp),om({placeholderType:l,completionConfig:r,hotkeys:n,cellId:o,lspConfig:{...i,diagnostics:s}}),Wf.of(Mp()),ta.allowMultipleSelections.of(!0),Xu(n),He.of([{key:"Tab",run:d=>Yi(d)||dd(d)||jp(d),preventDefault:!0},{key:n.getHotkey("completion.moveDown").key,run:d=>qt(d.state)===null?!1:(qn(!0)(d),!0),preventDefault:!0},{key:n.getHotkey("completion.moveUp").key,run:d=>qt(d.state)===null?!1:(qn(!1)(d),!0),preventDefault:!0}]),He.of([...Gp,Dp])]};var tt=(t=>!t||t instanceof WebAssembly.Module?t:typeof t=="object"&&"default"in t?t.default??t:t)(qh),kr=t=>{zh(t),typeof ws=="function"&&ws(),md(Tt)};function md(t){typeof t.__wbindgen_start=="function"&&t.__wbindgen_start()}if(tt&&tt.__wbindgen_start)kr(tt);else if("Bun"in globalThis){let t;if(tt instanceof WebAssembly.Module)({instance:t}=await WebAssembly.instantiate(tt,{"./loro_wasm_bg.js":Tt}));else{let e=Bun.pathToFileURL(tt);({instance:t}=await WebAssembly.instantiateStreaming(fetch(e),{"./loro_wasm_bg.js":Tt}))}kr(t.exports)}else{let t=tt instanceof WebAssembly.Module?tt:await wh(()=>import("./loro_wasm_bg-Bhj1szFH.js").then(async r=>(await r.__tla,r)),__vite__mapDeps([0,1,2]),import.meta.url),e=t instanceof WebAssembly.Module?t:t&&t.default||t,n;if(e instanceof WebAssembly.Instance)n=e;else if(e instanceof WebAssembly.Module)n=await WebAssembly.instantiate(e,{"./loro_wasm_bg.js":Tt});else if(e instanceof ArrayBuffer||ArrayBuffer.isView(e)){let{instance:r}=await WebAssembly.instantiate(e,{"./loro_wasm_bg.js":Tt});n=r}else if(typeof e=="string"||e instanceof URL){let r=await fetch(e),{instance:a}=await WebAssembly.instantiateStreaming(r,{"./loro_wasm_bg.js":Tt});n=a}else throw console.error("Unsupported wasm import type:",e),Error("Unsupported wasm import type: "+typeof e);kr(n.exports??n)}var pd=["Map","Text","List","Tree","MovableList","Counter"];function hd(t){return t.startsWith("cid:")}function Do(t){if(typeof t!="object"||!t)return!1;let e=Object.getPrototypeOf(t);return typeof e!="object"||!e||typeof e.kind!="function"?!1:pd.includes(t.kind())}var gd=class{constructor(t,e=3e4){this.listeners=new Set,this.inner=new Hh(t,e),this.peer=t,this.timeout=e}apply(t,e="remote"){let{updated:n,added:r}=this.inner.apply(t);this.listeners.forEach(a=>{a({updated:n,added:r,removed:[]},e)}),this.startTimerIfNotEmpty()}setLocalState(t){let e=this.inner.getState(this.peer)==null;this.inner.setLocalState(t),e?this.listeners.forEach(n=>{n({updated:[],added:[this.inner.peer()],removed:[]},"local")}):this.listeners.forEach(n=>{n({updated:[this.inner.peer()],added:[],removed:[]},"local")}),this.startTimerIfNotEmpty()}getLocalState(){return this.inner.getState(this.peer)}getAllStates(){return this.inner.getAllStates()}encode(t){return this.inner.encode(t)}encodeAll(){return this.inner.encodeAll()}addListener(t){this.listeners.add(t)}removeListener(t){this.listeners.delete(t)}peers(){return this.inner.peers()}destroy(){clearInterval(this.timer),this.listeners.clear()}startTimerIfNotEmpty(){this.inner.isEmpty()||this.timer!=null||(this.timer=setInterval(()=>{let t=this.inner.removeOutdated();t.length>0&&this.listeners.forEach(e=>{e({updated:[],added:[],removed:t},"timeout")}),this.inner.isEmpty()&&(clearInterval(this.timer),this.timer=void 0)},this.timeout/2))}};la.prototype.toJsonWithReplacer=function(t){let e=new Set,n=this,r=(o,i)=>{if(typeof i=="string"&&hd(i)&&!e.has(i)){e.add(i);let c=n.getContainerById(i);if(c==null)throw Error(`ContainerID not found: ${i}`);let l=t(o,c);if(l===c){let u=c.getShallowValue();return typeof u=="object"?a(u):u}if(Do(l))throw Error("Using new container is not allowed in toJsonWithReplacer");return typeof l=="object"&&l?a(l):l}if(typeof i=="object"&&i)return a(i);let s=t(o,i);if(Do(s))throw Error("Using new container is not allowed in toJsonWithReplacer");return s},a=o=>{if(Array.isArray(o))return o.map((s,c)=>r(c,s)).filter(s=>s!==void 0);let i={};for(let[s,c]of Object.entries(o)){let l=r(s,c);l!==void 0&&(i[s]=l)}return i};return a(n.getShallowValue())};var Mo=Symbol("loro.callPendingEventsWrapped");function yd(t,e){let n=Object.getOwnPropertyDescriptor(t,e);if(!n||typeof n.value!="function")return;let r=n.value;if(r[Mo])return;let a=function(...o){let i;try{return i=r.apply(this,o),i}finally{i&&typeof i.then=="function"?i.finally(()=>{bs()}):bs()}};a[Mo]=!0,Object.defineProperty(t,e,{...n,value:a})}function Cr(t,e){for(let n of e)yd(t,n)}Cr(la.prototype,["setDetachedEditing","attach","detach","fork","forkAt","checkoutToLatest","checkout","commit","getCursorPos","revertTo","export","exportJsonUpdates","exportJsonInIdSpan","importJsonUpdates","import","importUpdateBatch","importBatch","travelChangeAncestors","getChangedContainersIn","diff","applyDiff","setPeerId"]),Cr($h.prototype,["set","delete","apply","removeOutdated"]),Cr(Wh.prototype,["undo","redo"]);const bd=R.baseTheme({".loro-cursor":{position:"absolute",width:"2px",display:"inline-block",height:"1.2em"},".loro-cursor::before":{position:"absolute",top:"1.3em",left:"0",content:"var(--rtc-name)",padding:"2px 6px",fontSize:"12px",borderRadius:"3px",whiteSpace:"nowrap",userSelect:"none",backgroundColor:"inherit",opacity:"0.7"},".loro-selection":{opacity:"0.5"}});ea.define();const Ft=ce.define(),Tr=We.define({create(){return{remoteCursors:new Map,isCheckout:!1}},update(t,e){for(let n of e.effects)if(n.is(Ft))switch(n.value.type){case"update":{let{peer:r,user:a,cursor:o}=n.value;t.remoteCursors.set(r,{uid:r,cursor:o,user:a});break}case"delete":t.remoteCursors.delete(n.value.peer);break;case"checkout":t.isCheckout=n.value.checkout}return t}});var Fo=t=>{let e=t.transactions.flatMap(n=>n.effects).filter(n=>n.is(Ft));return t.docChanged||t.viewportChanged||e.length>0};const wd=()=>Hi({above:!0,class:"loro-cursor-layer",update:Fo,markers:t=>{let{remoteCursors:e,isCheckout:n}=t.state.field(Tr);return n?[]:[...e.values()].flatMap(r=>{var o,i;let a=St.cursor(r.cursor.anchor);return xd.createCursor(t,a,((o=r.user)==null?void 0:o.name)||"unknown",((i=r.user)==null?void 0:i.colorClassName)||"")})}}),vd=()=>Hi({above:!1,class:"loro-selection-layer",update:Fo,markers:t=>{let{remoteCursors:e,isCheckout:n}=t.state.field(Tr);return n?[]:[...e.entries()].filter(([,r])=>r.cursor.head!==void 0&&r.cursor.anchor!==r.cursor.head).flatMap(([,r])=>{var o;let a=St.range(r.cursor.anchor,r.cursor.head);return Ip.forRange(t,`loro-selection ${((o=r.user)==null?void 0:o.colorClassName)||""}`,a)})}});var xd=class ma{constructor(e,n,r,a,o){this.left=e,this.top=n,this.height=r,this.name=a,this.colorClassName=o}draw(){let e=document.createElement("div");return this.adjust(e),e}update(e){return this.adjust(e),!0}adjust(e){e.style.left=`${this.left}px`,e.style.top=`${this.top}px`,e.style.height=`${this.height}px`,e.className=`loro-cursor ${this.colorClassName}`,e.style.setProperty("--rtc-name",`"${this.name}"`)}eq(e){return this.left===e.left&&this.top===e.top&&this.height===e.height&&this.name===e.name}static createCursor(e,n,r,a){let o=ma.calculateAbsoluteCursorPosition(n,e);if(!o)return[];let i=e.scrollDOM.getBoundingClientRect(),s=(e.textDirection===Lp.LTR?i.left:i.right-e.scrollDOM.clientWidth)-e.scrollDOM.scrollLeft,c=i.top-e.scrollDOM.scrollTop;return[new ma(o.left-s,o.top-c,o.bottom-o.top,r,a)]}static calculateAbsoluteCursorPosition(e,n){let r=Math.max(0,Math.min(n.state.doc.length,e.anchor));return n.coordsAtPos(r,e.assoc||1)}},Ed=(t,e,n,r)=>{let a=[],{updated:o,added:i}=n;for(let s of[...o,...i]){let c=Ro(t,e,s,r);c&&a.push(c)}return a},Ro=(t,e,n,r)=>{var c,l;let a=e.getAllStates()[n];if(!a||n===t.peerIdStr||a.scopeId!==r)return;if(a.type==="delete")return Ft.of({type:"delete",peer:a.uid,scopeId:a.scopeId});let o=vs.decode(a.cursor.anchor),i=((c=t.getCursorPos(o))==null?void 0:c.offset)??0,s=i;if(a.cursor.head){let u=vs.decode(a.cursor.head);s=((l=t.getCursorPos(u))==null?void 0:l.offset)??0}return Ft.of({type:"update",peer:a.uid,scopeId:a.scopeId,cursor:{anchor:i,head:s},user:a.user})},Sd=class{constructor(t,e,n,r,a,o,i){this.view=t,this.doc=e,this.user=n,this.awareness=r,this.getTextFromDoc=a,this.scopeId=o,this.getUserId=i,this.sub=this.doc.subscribe(s=>{if(s.by==="local"){let c=[];for(let l of this.awareness.peers()){let u=Ro(this.doc,this.awareness,l,this.scopeId);u&&c.push(u)}this.view.dispatch({effects:c})}else s.by==="checkout"&&this.view.dispatch({effects:[Ft.of({type:"checkout",checkout:this.doc.isDetached()})]})})}update(t){if(!t.selectionSet&&!t.focusChanged&&!t.docChanged)return;let e=t.state.selection.main;if(this.view.hasFocus&&!this.doc.isDetached()){let n=Cd({doc:this.doc,getTextFromDoc:this.getTextFromDoc,anchor:e.anchor,head:e.head});this.awareness.setLocalState({type:"update",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId,cursor:n,user:this.user})}else this.awareness.setLocalState({type:"delete",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}destroy(){var t;(t=this.sub)==null||t.call(this),this.awareness.setLocalState({type:"delete",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}},kd=class{constructor(t,e,n,r){this.view=t,this.doc=e,this.awareness=n,this.scopeId=r;let a=async(o,i)=>{i!=="local"&&this.view.dispatch({effects:Ed(this.doc,this.awareness,o,this.scopeId)})};this._awarenessListener=a,this.awareness.addListener(a)}destroy(){this._awarenessListener&&this.awareness.removeListener(this._awarenessListener)}},Cd=({doc:t,getTextFromDoc:e,anchor:n,head:r})=>{var i,s;n===r&&(r=void 0);let a=(i=e(t).getCursor(n))==null?void 0:i.encode();if(!a)throw Error("cursor head not found");let o;return r!==void 0&&(o=(s=e(t).getCursor(r))==null?void 0:s.encode()),{anchor:a,head:o}};const Tn=["bg-(--amber-6)","bg-(--blue-6)","bg-(--crimson-6)","bg-(--cyan-6)","bg-(--grass-6)","bg-(--gray-6)","bg-(--green-6)","bg-(--lime-6)","bg-(--orange-6)","bg-(--purple-6)","bg-(--red-6)","bg-(--sage-6)","bg-(--sky-6)","bg-(--slate-6)"],Td=t=>{if(typeof t=="string"){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e=Math.trunc(e);return Tn[Math.abs(e)%Tn.length]}return Tn[t%Tn.length]};var he=$e.get("rtc"),Bo=he.get("awareness").disabled(),Nr="awareness:";function Nd(t,e){let n=new TextEncoder().encode(t);return new Uint8Array([...n,...e])}function Id(t,e){return new TextDecoder().decode(t.slice(0,e.length))===e}function Ad(t,e){return t.slice(e.length)}pt=ut(void 0);var re=new la,Nn=new gd(re.peerIdStr),Ir=Jp(()=>{he.debug("creating websocket");let t=new Kh(qi().getWsSyncURL(xh()).toString(),void 0,{maxRetries:10,debug:!1,startClosed:!0,connectionTimeout:1e4});return Promise.resolve().then(async()=>{await Wi(),zm()==="edit"&&t.reconnect()}),t.addEventListener("message",async e=>{let n=await e.data.arrayBuffer(),r=new Uint8Array(n);if(Id(r,Nr)){let a=Ad(r,Nr);Nn.apply(a),Bo.debug("applied awareness update");return}re.import(r),he.debug("imported doc change. new doc:",re.toJSON()),J.get(pt)!==re&&J.set(pt,re)}),t.addEventListener("open",()=>{he.debug("websocket open")}),t.addEventListener("close",e=>{he.warn("websocket close",e),J.get(pt)===re&&J.set(pt,void 0)}),t});Bn()&&Ir(),re.subscribeLocalUpdates(t=>{he.debug("local update, sending to server"),Ir().send(t)}),Nn.addListener((t,e)=>{let n=[...t.added,...t.removed,...t.updated];e==="local"&&(Bo.debug("awareness changes",n),Ir().send(Nd(Nr,Nn.encode(n))))});function Ar(t,e,n=""){if(Ym())return{extension:[],code:n};let r=re.getByPath(`codes/${t}`)!==void 0,a=re.getMap("codes").getOrCreateContainer(t,new sa);return r||(he.log("initializing code for new cell",n),a.insert(0,n)),{code:n.toString(),extension:[Ld(t),Od(t),_d(re,Nn,{get name(){return J.get(Cm)||"Anonymous"},get colorClassName(){return Td(this.name)}},()=>a,t),wm(re,["codes",t],()=>a)]}}function Ld(t){let e=(r,a)=>{let o=r.state.field(dt).type,i=a.toString();i&&i!==o&&(he.debug(`[incoming] setting language type: ${o} -> ${i}`),Bt(r,{language:i,keepCodeAsIs:!0}))},n=(r,a)=>{let o=r.state.field(Vr),i=a.toJSON();Pn(o,i)||r.dispatch({effects:[Ii.of(i)],annotations:[Pi.of(!0)]})};return ze.define(r=>{let a;return Promise.resolve().then(()=>{let o=re.getByPath(`languages/${t}`);if(!o){he.error("no language container found for cell",t);return}Gt(o instanceof sa,"language type is not a LoroText");let i=re.getByPath(`language_metadata/${t}`);if(!i){he.error("no language metadata container found for cell",t);return}Gt(i instanceof xs,"language metadata is not a LoroMap"),e(r,o),n(r,i),a=re.subscribe(s=>{if(s.origin==="local")return;let c=s.events.some(u=>u.target===o.id),l=s.events.some(u=>u.target===i.id);c&&e(r,o),l&&n(r,i)})}),{destroy(){a()}}})}function Od(t){let e=re.getMap("languages").getOrCreateContainer(t,new sa),n=re.getMap("language_metadata").getOrCreateContainer(t,new xs);return R.updateListener.of(r=>{let a=e.toString()!=="";if(!r.docChanged&&a)return;if(!a){let i=zr(r.state).type;Bt(r.view,{language:i}),he.debug("no initial language, setting default to",i),e.delete(0,e.length),e.insert(0,i),he.debug("no initial language metadata, setting default to",r.state.field(Vr));let s=r.state.field(Vr);for(let c of Object.keys(s))n.set(c,s[c]);re.commit();return}let o=!1;for(let i of r.transactions)if(!i.annotation(Pi)){for(let s of i.effects)if(s.is(Im)&&e.toString()!==s.value.type&&(he.debug(`[outgoing] language change: ${e} -> ${s.value.type}`),e.delete(0,e.length),e.insert(0,s.value.type),o=!0),s.is(Ii)||s.is(Ni)){let c=s.value;s.is(Ni)?(he.debug("[outgoing] setting language metadata: ",c),n.clear()):he.debug("[outgoing] updating language metadata: ",c);for(let l of Object.keys(c))n.set(l,c[l]);o=!0}}o&&re.commit()})}function _d(t,e,n,r,a,o){let i=`loro:cell:${a}`;return[Tr,wd(),vd(),ze.define(s=>new Sd(s,t,n,e,r,i,o)),ze.define(s=>new kd(s,t,e,i)),bd]}var Ud=ve(),jd=ip;ua=t=>{let e=(0,Ud.c)(41),{resetOnBlur:n,placeholderText:r,initialValue:a,flexibleWidth:o,onNameChange:i,className:s}=t,c=n===void 0?!1:n,l=a===void 0?null:a,u=o===void 0?!1:o,{sendListFiles:d}=Hn(),[p,f]=(0,N.useState)(l),m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=[],e[0]=m):m=e[0];let[y,b]=(0,N.useState)(m),[v,S]=(0,N.useState)(!1),k=(0,N.useRef)(null),_=(0,N.useRef)(!1),P,A;e[1]===l?(P=e[2],A=e[3]):(P=()=>{f(l)},A=[l],e[1]=l,e[2]=P,e[3]=A),(0,N.useEffect)(P,A);let T;e[4]===Symbol.for("react.memo_cache_sentinel")?(T=()=>{S(!0)},e[4]=T):T=e[4];let G=T,M;e[5]!==l||e[6]!==c?(M=Y=>{var vt;(vt=Y.relatedTarget)!=null&&vt.closest(".filename-input")||(S(!1),c&&f(l))},e[5]=l,e[6]=c,e[7]=M):M=e[7];let ae=M,O;e[8]===p?O=e[9]:(O=Qe.dirname(p||""),e[8]=p,e[9]=O);let I=O,le=Qe.basename(p||""),ue=y.filter(Y=>Qe.basename(Y.path).startsWith(le)),oe;e[10]!==I||e[11]!==v||e[12]!==d?(oe=async()=>{if(!v){b([]);return}b((await d({path:I})).files)},e[10]=I,e[11]=v,e[12]=d,e[13]=oe):oe=e[13];let ne;e[14]!==I||e[15]!==v?(ne=[I,v],e[14]=I,e[15]=v,e[16]=ne):ne=e[16];let{isPending:U}=Uh(oe,ne),j=Pd(p,y,l),we=(j||ue.length>0)&&(0,h.jsxs)(ps,{className:"font-mono",children:[!U&&(0,h.jsx)(Ph,{children:"No files"}),j&&(0,h.jsxs)(ms,{variant:"success",className:"py-2 px-3",onSelect:()=>{var Y;j&&(_.current=!0,i(j),(Y=k.current)==null||Y.blur())},children:[(0,h.jsx)(te,{className:"w-4 h-4 mr-2"})," ",(0,h.jsxs)("span",{className:"text-sm",children:[l?"Rename to: ":"Save as: ",(0,h.jsx)("span",{className:"font-medium text-sm",children:Qe.basename(j)})]})]},"_rename_"),ue.map(Y=>{let vt=mh[Y.isDirectory?"directory":fh(Y.path)];return(0,h.jsxs)(ms,{variant:Y.isDirectory?"default":"muted",className:"py-2 px-3",onSelect:()=>{Y.isDirectory?f(`${Y.path}/`):f(Y.path)},children:[(0,h.jsx)(vt,{className:"w-4 h-4 mr-2"})," ",Qe.basename(Y.path)]},Y.path)})]}),de=Math.max(20,(p==null?void 0:p.length)||(r==null?void 0:r.length)||0)*10,E=v?p||"":l||"",C;e[17]!==u||e[18]!==de?(C=u?{maxWidth:de}:void 0,e[17]=u,e[18]=de,e[19]=C):C=e[19];let D;e[20]===s?D=e[21]:(D=at(s,"w-full px-4 py-1 my-1 h-9 font-mono text-foreground/60"),e[20]=s,e[21]=D);let L;e[22]!==r||e[23]!==E||e[24]!==C||e[25]!==D?(L=(0,h.jsx)(jd,{children:(0,h.jsx)(jh,{"data-testid":"dir-completion-input",tabIndex:-1,rootClassName:"border-none justify-center px-1",spellCheck:"false",value:E,onKeyDown:Dd,icon:null,ref:k,onValueChange:f,placeholder:r,autoComplete:"off",style:C,className:D})}),e[22]=r,e[23]=E,e[24]=C,e[25]=D,e[26]=L):L=e[26];let fe=we&&"group-focus-within:block",Je;e[27]===fe?Je=e[28]:(Je=at("p-0 w-full min-w-80 max-w-80vw hidden",fe),e[27]=fe,e[28]=Je);let qe;e[29]!==we||e[30]!==Je?(qe=(0,h.jsx)(sp,{side:"bottom",className:Je,portal:!1,children:we}),e[29]=we,e[30]=Je,e[31]=qe):qe=e[31];let Ve;e[32]!==L||e[33]!==qe?(Ve=(0,h.jsxs)(ps,{children:[L,qe]}),e[32]=L,e[33]=qe,e[34]=Ve):Ve=e[34];let F;e[35]!==ae||e[36]!==Ve?(F=(0,h.jsx)(Dh,{onFocus:G,onBlur:ae,shouldFilter:!1,id:"filename-input",className:"bg-transparent group filename-input",children:Ve}),e[35]=ae,e[36]=Ve,e[37]=F):F=e[37];let ie;return e[38]!==v||e[39]!==F?(ie=(0,h.jsx)(ap,{children:(0,h.jsx)(lp,{open:v,modal:!1,children:F})}),e[38]=v,e[39]=F,e[40]=ie):ie=e[40],ie};function Pd(t,e,n){if(t&&!t.endsWith("/")&&((vi("markdown")?new Set(["py","md","markdown","qmd"]):new Set(["py"])).has(Qe.extension(t))||(t=t.endsWith(".")?`${t}py`:t.endsWith(".p")?`${t}y`:`${t}.py`),!e.some(r=>r.path===t||Qe.basename(r.path)===t)&&!(n&&(n===t||Qe.basename(n)===t))))return t}function Dd(t){t.key==="Escape"&&t.currentTarget.blur()}var Go=ve(),Md=t=>{let e=(0,Go.c)(33),n=()=>{fp(new Blob([r()],{type:"text/plain"}),`${t.proposedName}.json`)},r=se(Bd),a;e[0]!==n||e[1]!==t?(a=P=>{P.preventDefault(),n(),t.closeModal()},e[0]=n,e[1]=t,e[2]=a):a=e[2];let o;e[3]===t?o=e[4]:(o=P=>{P.key==="Escape"&&t.closeModal()},e[3]=t,e[4]=o);let i;e[5]===Symbol.for("react.memo_cache_sentinel")?(i=(0,h.jsx)(is,{className:"text-accent-foreground mb-6",children:"Download unsaved changes?"}),e[5]=i):i=e[5];let s;e[6]===Symbol.for("react.memo_cache_sentinel")?(s={wordBreak:"break-word"},e[6]=s):s=e[6];let c,l;e[7]===Symbol.for("react.memo_cache_sentinel")?(c=(0,h.jsx)("p",{children:"This app has unsaved changes. To recover:"}),l={paddingBottom:"10px"},e[7]=c,e[8]=l):(c=e[7],l=e[8]);let u;e[9]===t.proposedName?u=e[10]:(u=(0,h.jsxs)("li",{style:l,children:['Click the "Download" button. This will download a file called\xA0',(0,h.jsxs)("code",{children:[t.proposedName,".json"]}),". This file contains your code."]}),e[9]=t.proposedName,e[10]=u);let d;e[11]===Symbol.for("react.memo_cache_sentinel")?(d={paddingBottom:"10px"},e[11]=d):d=e[11];let p;e[12]===Symbol.for("react.memo_cache_sentinel")?(p={display:"block",padding:"10px"},e[12]=p):p=e[12];let f;e[13]===t.proposedName?f=e[14]:(f=(0,h.jsxs)("code",{style:p,children:["marimo recover ",t.proposedName,".json ",">"," ",t.proposedName,".py"]}),e[13]=t.proposedName,e[14]=f);let m;e[15]===t.proposedName?m=e[16]:(m=(0,h.jsxs)("code",{children:[t.proposedName,".py"]}),e[15]=t.proposedName,e[16]=m);let y;e[17]!==m||e[18]!==f?(y=(0,h.jsxs)("li",{style:d,children:["In your terminal, type",f,"to overwrite ",m," with the recovered changes."]}),e[17]=m,e[18]=f,e[19]=y):y=e[19];let b;e[20]!==y||e[21]!==u?(b=(0,h.jsx)(Th,{className:"markdown wrap-break-word",style:s,children:(0,h.jsxs)("div",{className:"prose dark:prose-invert",children:[c,(0,h.jsxs)("ol",{children:[u,y]})]})}),e[20]=y,e[21]=u,e[22]=b):b=e[22];let v;e[23]===t.closeModal?v=e[24]:(v=(0,h.jsx)(ft,{"aria-label":"Cancel",variant:"secondary","data-testid":"cancel-recovery-button",onClick:t.closeModal,children:"Cancel"}),e[23]=t.closeModal,e[24]=v);let S;e[25]===Symbol.for("react.memo_cache_sentinel")?(S=(0,h.jsx)(ft,{"data-testid":"download-recovery-button","aria-label":"Download",variant:"default",type:"submit",children:"Download"}),e[25]=S):S=e[25];let k;e[26]===v?k=e[27]:(k=(0,h.jsxs)(ss,{children:[v,S]}),e[26]=v,e[27]=k);let _;return e[28]!==a||e[29]!==o||e[30]!==b||e[31]!==k?(_=(0,h.jsx)(ls,{className:"w-fit",children:(0,h.jsxs)("form",{onSubmit:a,onKeyDown:o,children:[i,b,k]})}),e[28]=a,e[29]=o,e[30]=b,e[31]=k,e[32]=_):_=e[32],_};const Fd=t=>{let e=(0,Go.c)(12),{filename:n,needsSave:r}=t,{openModal:a,closeModal:o}=us(),i;e[0]===n?i=e[1]:(i=n===null?"app":Qe.basename(n).split(".")[0],e[0]=n,e[1]=i);let s=i,c;e[2]!==o||e[3]!==r||e[4]!==a||e[5]!==s?(c=()=>{r&&a((0,h.jsx)(Md,{proposedName:s,closeModal:o}))},e[2]=o,e[3]=r,e[4]=a,e[5]=s,e[6]=c):c=e[6];let l=c;cs("global.save",l);let u;e[7]===Symbol.for("react.memo_cache_sentinel")?(u=hs("global.save"),e[7]=u):u=e[7];let d=r?"yellow":"gray",p;e[8]===Symbol.for("react.memo_cache_sentinel")?(p=(0,h.jsx)(rs,{strokeWidth:1.5,size:18}),e[8]=p):p=e[8];let f;return e[9]!==l||e[10]!==d?(f=(0,h.jsx)(Jn,{content:u,children:(0,h.jsx)(Es,{onClick:l,id:"save-button","aria-label":"Save",className:"rectangle",color:d,children:p})}),e[9]=l,e[10]=d,e[11]=f):f=e[11],f};function Rd(t){return{id:t.id,name:t.name,code:t.code,code_hash:null,config:{column:0,...t.config}}}function Bd(){let t=Rr(xt()),e={version:"1",metadata:{marimo_version:tp()},cells:t.map(Rd)};return JSON.stringify(e,null,2)}let Lr;Xn=ut(void 0),Lr=ut(t=>{let e=t(Xn);return Gd({state:t(rt),layout:t(Zi),lastSavedNotebook:e})});function Gd({state:t,layout:e,lastSavedNotebook:n}){if(!n)return!1;let{cellIds:r,cellData:a}=t,o=r.inOrderIds.map(l=>a[l]),i=o.map(l=>l.code),s=o.map(l=>l.config),c=o.map(l=>l.name);return!zi(i,n.codes)||!zi(c,n.names)||!Pn(s,n.configs)||!Pn(e.selectedLayout,n.layout.selectedLayout)||!Pn(e.layoutData,n.layout.layoutData)}var Jd=ve();function Vd(t){let e=(0,Jd.c)(21),{codes:n,cellConfigs:r,config:a,connStatus:o,cellNames:i,needsSave:s,kioskMode:c,onSave:l}=t,u=(0,N.useRef)(null),d;e[0]===n?d=e[1]:(d=n.join(":"),e[0]=n,e[1]=d);let p=d,f;e[2]===r?f=e[3]:(f=r.map($d).join(":"),e[2]=r,e[3]=f);let m=f,y;e[4]===i?y=e[5]:(y=i.join(":"),e[4]=i,e[5]=y);let b=y,v;e[6]!==a||e[7]!==o.state||e[8]!==c||e[9]!==s||e[10]!==l?(v=()=>{if(!c)return a.autosave==="after_delay"&&(u.current!==null&&clearTimeout(u.current),s&&o.state===Jt.OPEN&&(u.current=setTimeout(l,a.autosave_delay))),()=>{u.current!==null&&clearTimeout(u.current)}},e[6]=a,e[7]=o.state,e[8]=c,e[9]=s,e[10]=l,e[11]=v):v=e[11];let S;e[12]!==m||e[13]!==b||e[14]!==p||e[15]!==a||e[16]!==o.state||e[17]!==c||e[18]!==s||e[19]!==l?(S=[p,m,b,a,o.state,l,c,s],e[12]=m,e[13]=b,e[14]=p,e[15]=a,e[16]=o.state,e[17]=c,e[18]=s,e[19]=l,e[20]=S):S=e[20],(0,N.useEffect)(v,S)}function $d(t){return JSON.stringify(t)}var In=ve();Cs=t=>{let e=(0,In.c)(15),{kioskMode:n}=t,r=Lh(),a=q(Lr),o=q(Et).state===Jt.CLOSED,{saveOrNameNotebook:i,saveIfNotebookIsPersistent:s}=Yt(),c;e[0]!==n||e[1]!==s?(c={onSave:s,kioskMode:n},e[0]=n,e[1]=s,e[2]=c):c=e[2],zd(c),Xh();let l;e[3]===a?l=e[4]:(l=b=>{if(a)return b.preventDefault(),b.returnValue="You have unsaved changes. Are you sure you want to leave?",b.returnValue},e[3]=a,e[4]=l),qm(window,"beforeunload",l);let u;e[5]===i?u=e[6]:(u=b=>{b.preventDefault(),b.stopPropagation(),i()},e[5]=i,e[6]=u);let d=u;if(cs("global.save",i),o){let b;return e[7]!==r||e[8]!==a?(b=(0,h.jsx)(Fd,{filename:r,needsSave:a}),e[7]=r,e[8]=a,e[9]=b):b=e[9],b}let p;e[10]===Symbol.for("react.memo_cache_sentinel")?(p=hs("global.save"),e[10]=p):p=e[10];let f=a?"yellow":"hint-green",m;e[11]===Symbol.for("react.memo_cache_sentinel")?(m=(0,h.jsx)(rs,{strokeWidth:1.5,size:18}),e[11]=m):m=e[11];let y;return e[12]!==d||e[13]!==f?(y=(0,h.jsx)(Jn,{content:p,children:(0,h.jsx)(Es,{"data-testid":"save-button",id:"save-button",shape:"rectangle",color:f,onClick:d,children:m})}),e[12]=d,e[13]=f,e[14]=y):y=e[14],y},Yt=function(){let t=(0,In.c)(21),{sendSave:e}=Hn(),{openModal:n,closeModal:r,openAlert:a}=us(),o=wi(Xn),i=Oh(),s=Fr(),c;t[0]!==a||t[1]!==e||t[2]!==o||t[3]!==s?(c=async(v,S)=>{let k=s.get(Et),_=s.get(Vi);if(s.get(Km))return;if(k.state!==Jt.OPEN){a("Failed to save notebook: not connected to a kernel.");return}$e.log("saving to ",v),S&&_.format_on_save&&($e.log("formatting notebook (onSave)"),await sm());let P=xt(),A=Rr(P),T=A.map(Hd),G=A.map(qd),M=A.map(Wd),ae=Di(P),O=s.get(Zi);G.length!==0&&(await e({cellIds:T,codes:G,names:M,filename:v,configs:ae,layout:Kp(),persist:!0}),o({names:M,codes:G,configs:ae,layout:O}))},t[0]=a,t[1]=e,t[2]=o,t[3]=s,t[4]=c):c=t[4];let l=se(c),u;t[5]!==l||t[6]!==s?(u=v=>{let S=v===void 0?!1:v,k=s.get(ji),_=s.get(Et);Jo(k)&&_.state===Jt.OPEN&&l(k,S)},t[5]=l,t[6]=s,t[7]=u):u=t[7];let d=se(u),p;t[8]!==l||t[9]!==i?(p=v=>{i(v).then(S=>{S!==null&&l(S,!0)})},t[8]=l,t[9]=i,t[10]=p):p=t[10];let f=p,m;t[11]!==r||t[12]!==f||t[13]!==n||t[14]!==d||t[15]!==s?(m=()=>{let v=s.get(ji),S=s.get(Et);d(!0),!Jo(v)&&S.state!==Jt.CLOSED&&n((0,h.jsx)(Xd,{onClose:r,onSave:f}))},t[11]=r,t[12]=f,t[13]=n,t[14]=d,t[15]=s,t[16]=m):m=t[16];let y=se(m),b;return t[17]!==d||t[18]!==l||t[19]!==y?(b={saveOrNameNotebook:y,saveIfNotebookIsPersistent:d,saveNotebook:l},t[17]=d,t[18]=l,t[19]=y,t[20]=b):b=t[20],b};function Wd(t){return t.name}function qd(t){return t.code}function Hd(t){return t.id}function Jo(t){return t!==null&&!t.startsWith("/tmp/")&&!t.startsWith("/var/folders")&&!t.includes("AppData\\Local\\Temp")}function zd(t){let e=(0,In.c)(14),n=q(Vi),r=Gf(),[a]=jn(Et),o=q(Lr),i,s;if(e[0]!==r){let p=Rr(r);i=p.map(Kd),s=p.map(Yd),e[0]=r,e[1]=i,e[2]=s}else i=e[1],s=e[2];let c=s,l;e[3]===r?l=e[4]:(l=Di(r),e[3]=r,e[4]=l);let u=l,d;e[5]!==n||e[6]!==c||e[7]!==i||e[8]!==u||e[9]!==a||e[10]!==o||e[11]!==t.kioskMode||e[12]!==t.onSave?(d={onSave:t.onSave,needsSave:o,codes:i,cellConfigs:u,cellNames:c,connStatus:a,config:n,kioskMode:t.kioskMode},e[5]=n,e[6]=c,e[7]=i,e[8]=u,e[9]=a,e[10]=o,e[11]=t.kioskMode,e[12]=t.onSave,e[13]=d):d=e[13],Vd(d)}function Yd(t){return t.name}function Kd(t){return t.code}var Xd=t=>{let e=(0,In.c)(17),{onClose:n,onSave:r}=t,[a,o]=(0,N.useState)(),i;e[0]!==n||e[1]!==r?(i=b=>{o(b),b.trim()&&(r(b),n())},e[0]=n,e[1]=r,e[2]=i):i=e[2];let s=i,c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,h.jsx)(is,{children:"Save notebook"}),e[3]=c):c=e[3];let l;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=(0,h.jsx)(Zr,{className:"text-md pt-6 px-1",children:"Save as"}),e[4]=l):l=e[4];let u;e[5]===s?u=e[6]:(u=(0,h.jsxs)("div",{className:"flex flex-col",children:[l,(0,h.jsx)(ua,{onNameChange:s,placeholderText:"filename",className:"missing-filename"})]}),e[5]=s,e[6]=u);let d;e[7]===n?d=e[8]:(d=(0,h.jsx)(ft,{"data-testid":"cancel-save-dialog-button","aria-label":"Cancel",variant:"secondary",onClick:n,children:"Cancel"}),e[7]=n,e[8]=d);let p=!a,f;e[9]===p?f=e[10]:(f=(0,h.jsx)(ft,{"data-testid":"submit-save-dialog-button","aria-label":"Save",variant:"default",disabled:p,type:"submit",children:"Save"}),e[9]=p,e[10]=f);let m;e[11]!==d||e[12]!==f?(m=(0,h.jsxs)(ss,{children:[d,f]}),e[11]=d,e[12]=f,e[13]=m):m=e[13];let y;return e[14]!==u||e[15]!==m?(y=(0,h.jsxs)(ls,{children:[c,u,m]}),e[14]=u,e[15]=m,e[16]=y):y=e[16],y};Kn=function(...t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}};var Vo={modified:{doc:""},original:{doc:""}},$o=(0,N.createContext)(Vo);function Zd(t,e){return K({},t,e,{modified:K({},t.modified,e.modified),original:K({},t.original,e.original)})}var Or=()=>(0,N.useContext)($o),Qd=t=>{var{children:e,theme:n}=t,[r,a]=(0,N.useReducer)(Zd,K({},Vo,{theme:n}));return(0,N.useEffect)(()=>a({theme:n}),[n]),(0,h.jsx)($o.Provider,{value:K({},r,{dispatch:a}),children:e})},ef=["extensions","value","selection","onChange"],Wo=t=>{var{extensions:e=[],value:n,selection:r,onChange:a}=t,o=Ht(t,ef),{theme:i,dispatch:s}=Or(),c=Ct(K({},o,{theme:i}));return(0,N.useEffect)(()=>s({original:{doc:n,selection:r,extensions:[...c,...e]},originalExtension:{onChange:a,option:o,extension:[e]}}),[t]),null};Wo.displayName="CodeMirrorMerge.Original";var tf=["extensions","value","selection","onChange"],qo=t=>{var{extensions:e=[],value:n,selection:r,onChange:a}=t,o=Ht(t,tf),{theme:i,dispatch:s}=Or(),c=Ct(K({},o,{theme:i}));return(0,N.useEffect)(()=>{s({modified:{doc:n,selection:r,extensions:[...c,...e]},modifiedExtension:{onChange:a,option:o,extension:[e]}})},[t]),null};qo.displayName="CodeMirrorMerge.Modified";var nf=["className","children","orientation","revertControls","highlightChanges","gutter","collapseUnchanged","destroyRerender","renderRevertControl","diffConfig","root"],rf=["modified","modifiedExtension","original","originalExtension","theme","dispatch"],Ho=N.forwardRef((t,e)=>{var{className:n,children:r,orientation:a,revertControls:o,highlightChanges:i,gutter:s,collapseUnchanged:c,destroyRerender:l=!0,renderRevertControl:u,diffConfig:d,root:p}=t,f=Ht(t,nf),m=Or(),{modified:y,modifiedExtension:b,original:v,originalExtension:S,theme:k,dispatch:_}=m,P=Ht(m,rf),A=(0,N.useRef)(null),T=(0,N.useRef)(),G={orientation:a,revertControls:o,highlightChanges:i,gutter:s,collapseUnchanged:c,renderRevertControl:u,diffConfig:d,root:p};(0,N.useImperativeHandle)(e,()=>({container:A.current,view:T.current,modified:y,original:v,config:K({a:v,b:y,parent:A.current},G)}),[A,T,y,v,G]);var M=R.updateListener.of(O=>{if(O.docChanged&&typeof(S==null?void 0:S.onChange)=="function"){var I=O.state.doc.toString();S==null||S.onChange(I,O)}}),ae=R.updateListener.of(O=>{if(O.docChanged&&typeof(b==null?void 0:b.onChange)=="function"){var I=O.state.doc.toString();b==null||b.onChange(I,O)}});return(0,N.useEffect)(()=>{!T.current&&A.current&&S&&b&&(T.current=new gs(K({a:K({},v,{extensions:[...(S==null?void 0:S.extension)||[],...Ct(K({},S==null?void 0:S.option,{theme:k})),M]}),b:K({},y,{extensions:[...(b==null?void 0:b.extension)||[],...Ct(K({},b==null?void 0:b.option,{theme:k})),ae]}),parent:A.current},G)),_({view:T.current}))},[T,A,S,b]),(0,N.useEffect)(()=>{var U,j;if(v&&v.doc&&T.current){var O=(U=T.current)==null?void 0:U.a.state.doc.toString();if(O!==v.doc){var I;(I=T.current)==null||I.a.dispatch({changes:{from:0,to:O.length,insert:v.doc||""}})}}if(y&&y.doc&&T.current){var le=(j=T.current)==null?void 0:j.b.state.doc.toString();if(le!==y.doc){var ue;(ue=T.current)==null||ue.b.dispatch({changes:{from:0,to:le.length,insert:y.doc||""}})}}if(l&&T.current){var oe=T.current.a.state.selection.ranges[0].from,ne=T.current.b.state.selection.ranges[0].from;T.current.destroy(),T.current=new gs(K({a:K({},v,{extensions:[...(S==null?void 0:S.extension)||[],...Ct(K({},S==null?void 0:S.option,{theme:k}))]}),b:K({},y,{extensions:[...(b==null?void 0:b.extension)||[],...Ct(K({},b==null?void 0:b.option,{theme:k}))]}),parent:A.current},G)),oe&&(T.current.a.focus(),T.current.a.dispatch({selection:{anchor:oe,head:oe}})),ne&&(T.current.b.focus(),T.current.b.dispatch({selection:{anchor:ne,head:ne}}))}},[T,k,A.current,v,y,S,b,l]),(0,N.useEffect)(()=>()=>T.current&&T.current.destroy(),[]),(0,N.useEffect)(()=>{if(T.current){var O={};P.orientation!==a&&(O.orientation=a),P.revertControls!==o&&(O.revertControls=o),P.highlightChanges!==i&&(O.highlightChanges=i),P.gutter!==s&&(O.gutter=s),P.collapseUnchanged!==c&&(O.collapseUnchanged=c),P.renderRevertControl!==u&&(O.collapseUnchanged=c),Object.keys(O).length&&_&&T.current&&(T.current.reconfigure(K({},O)),_(K({},O)))}},[_,T,a,o,i,s,c,u]),(0,h.jsx)("div",K({ref:A,className:"cm-merge-theme"+(n?" "+n:"")},f,{children:r}))});Ho.displayName="CodeMirrorMerge.Internal";var af=["theme"],An=N.forwardRef((t,e)=>{var{theme:n}=t;return(0,h.jsx)(Qd,{theme:n,children:(0,h.jsx)(Ho,K({},Ht(t,af),{ref:e}))})});An.Original=Wo,An.Modified=qo,An.displayName="CodeMirrorMerge";var _r=An,of=ve(),sf=_r.Original,lf=_r.Modified,zo=[Vf(),R.lineWrapping];const cf=({cellId:t,aiCompletionCell:e,className:n,onChange:r,currentLanguageAdapter:a,currentCode:o,declineChange:i,acceptChange:s,runCell:c,outputArea:l,children:u})=>{let[d,p]=(0,N.useState)(!1),[f,m]=(0,N.useState)({}),[y,b]=jn(Ah),v=(0,N.useId)(),S=Zm(),{initialPrompt:k,triggerImmediately:_,cellId:P}=e??{},A=P===t,T=q(th).get(t),G;(T==null?void 0:T.type)==="update_cell"&&(G=T.previousCode);let{completion:M,input:ae,stop:O,isLoading:I,setCompletion:le,setInput:ue,handleSubmit:oe,complete:ne}=ah({api:S.getAiURL("completion").toString(),headers:S.headers(),initialInput:k,throttle:100,body:{...Object.keys(f).length>0?f:k?es({input:k}):{},includeOtherCode:y?Jr(o):"",code:o,language:a},onError:F=>{kt({title:"Completion failed",description:Nh(F)})},onFinish:(F,ie)=>{le(rr(ie).trimEnd())}}),U=N.useRef(null),j=rr(M,{streaming:I}).trimEnd(),we=(0,N.useCallback)(()=>{_&&!I&&k&&ne(k)},[_]);(0,N.useEffect)(()=>{var F;A&&(Jf(()=>{let ie=U.current;return ie!=null&&ie.view?(ie.view.focus(),we(),!0):!1},{retries:3,delay:100,initialDelay:100}),Nm((F=U.current)==null?void 0:F.view))},[A,we]),(0,N.useEffect)(()=>{A&&ue(k||"")},[A,k,ue]);let{theme:de}=Eh(),E=()=>{s(j),le("")},C=()=>{var F,ie;O(),le(""),p(!0),(ie=(F=U.current)==null?void 0:F.view)==null||ie.focus()},D=A&&_&&(j||I);l??(l="below");let L=A&&(!_||d),fe=(0,h.jsx)("div",{className:at("w-full bg-(--cm-background) flex justify-center transition-all duration-300 ease-in-out overflow-hidden",D?"max-h-20 opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:(0,h.jsx)(uf,{status:I?"loading":"generated",onAccept:E,onReject:C,showInputPrompt:d,setShowInputPrompt:p,runCell:c,className:"mt-4 mb-3 w-lg"})}),Je=(F,ie)=>(0,h.jsxs)(_r,{className:"cm",theme:de,children:[(0,h.jsx)(sf,{onChange:r,value:F,extensions:zo}),(0,h.jsx)(lf,{value:ie,editable:!1,readOnly:!0,extensions:zo})]}),qe=()=>{if(j&&A)return Je(o,j);if(!j&&G)return Je(G,o)},Ve=(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(Qi,{isLoading:I,onAccept:E,size:"xs",multipleCompletions:!1,acceptShortcut:"Mod-\u21B5",runCell:c,borderless:!0,buttonStyles:"hover:shadow-none",playButtonStyles:"hover:shadow-none"}),(0,h.jsx)(ts,{onDecline:C,size:"xs",multipleCompletions:!1,declineShortcut:"Shift-Mod-Delete",borderless:!0,className:"hover:shadow-none"})]});return(0,h.jsxs)("div",{"data-ai-input-open":L,className:at("flex flex-col w-full rounded-[inherit]",n),children:[(0,h.jsx)("div",{className:at("flex items-center gap-2 px-3 transition-all rounded-[inherit] rounded-b-none duration-300",L&&"max-h-[400px] border-b min-h-11 visible",!L&&"max-h-0 min-h-0 invisible"),children:A&&(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(yh,{className:"text-(--blue-10) shrink-0",size:16}),(0,h.jsx)(sh,{inputRef:U,className:"h-full my-0 py-2 flex items-center",onClose:()=>{i(),le("")},value:ae,onChange:F=>{ue(F),m(es({input:F}))},onSubmit:()=>{var F;I||((F=U.current)!=null&&F.view&&nh(U.current.view),oe())},onKeyDown:ch({handleAcceptCompletion:E,handleDeclineCompletion:C,isLoading:I,hasCompletion:j.trim().length>0})}),(0,h.jsxs)("div",{className:"-mr-1.5 py-1.5",children:[(0,h.jsxs)("div",{className:"flex flex-row items-center justify-end gap-0.5",children:[(0,h.jsx)(lh,{isLoading:I,onStop:O,onSendClick:oe,isEmpty:!ae.trim(),showStopLabel:!0}),(0,h.jsx)(ih,{handleAddContext:()=>eh(U),isLoading:I}),(0,h.jsx)($m,{triggerClassName:"h-7 text-xs",iconSize:"small",forRole:"edit",displayIconOnly:!0,placeholder:"Edit model"})]}),j&&(0,h.jsx)("div",{className:"mt-1 flex items-center gap-1",children:Ve})]}),(0,h.jsx)("div",{className:"h-full w-px bg-border mx-2"}),(0,h.jsx)(Jn,{content:"Include code from other cells",children:(0,h.jsxs)("div",{className:"flex flex-row items-start gap-1 overflow-hidden",children:[(0,h.jsx)(qf,{"data-testid":"include-other-cells-checkbox",id:v,checked:y,onCheckedChange:F=>b(!!F)}),(0,h.jsx)(Zr,{htmlFor:v,className:"text-muted-foreground text-xs whitespace-nowrap ellipsis",children:"All code"})]})}),(0,h.jsx)(ft,{"data-testid":"decline-completion-button",variant:"text",size:"icon",disabled:I,onClick:()=>{O(),i(),le("")},children:(0,h.jsx)(Zp,{className:"text-(--red-10)",size:16})})]})}),l==="above"&&fe,qe(),(!j||!A)&&!G&&u,l==="below"&&fe]})};var uf=t=>{let e=(0,of.c)(27),{status:n,onAccept:r,onReject:a,className:o,showInputPrompt:i,setShowInputPrompt:s,runCell:c}=t,l=n==="loading",u;e[0]===o?u=e[1]:(u=at("flex flex-row items-center gap-6 rounded-md py-2 px-2.5 text-sm border border-border","shadow-[0_0_6px_1px_rgba(34,197,94,0.15)]",o),e[0]=o,e[1]=u);let d;e[2]===l?d=e[3]:(d=l?(0,h.jsx)(hh,{className:"animate-spin text-blue-600 mb-px",size:15,strokeWidth:2,"aria-label":"Generating fix"}):(0,h.jsx)(Qp,{className:"text-green-600 mb-px",size:15,strokeWidth:2,"aria-label":"Fix generated"}),e[2]=l,e[3]=d);let p=l?"Generating fix...":"Showing fix",f;e[4]===p?f=e[5]:(f=(0,h.jsx)("p",{className:"transition-opacity duration-200 text-muted-foreground",children:p}),e[4]=p,e[5]=f);let m;e[6]!==d||e[7]!==f?(m=(0,h.jsxs)("div",{className:"flex flex-row items-center gap-2",children:[d,f]}),e[6]=d,e[7]=f,e[8]=m):m=e[8];let y;e[9]===Symbol.for("react.memo_cache_sentinel")?(y=(0,h.jsx)(Zr,{htmlFor:"show-input-prompt",className:"text-muted-foreground text-xs whitespace-nowrap ellipsis",children:"Show prompt"}),e[9]=y):y=e[9];let b;e[10]!==s||e[11]!==i?(b=(0,h.jsxs)("div",{className:"flex flex-row items-center gap-1",children:[y,(0,h.jsx)(ep,{checked:i,onCheckedChange:s,size:"xs"})]}),e[10]=s,e[11]=i,e[12]=b):b=e[12];let v;e[13]!==l||e[14]!==r||e[15]!==c?(v=(0,h.jsx)(Qi,{isLoading:l,onAccept:r,size:"xs",borderless:!0,runCell:c}),e[13]=l,e[14]=r,e[15]=c,e[16]=v):v=e[16];let S;e[17]===a?S=e[18]:(S=(0,h.jsx)(ts,{onDecline:a,size:"xs",borderless:!0}),e[17]=a,e[18]=S);let k;e[19]!==v||e[20]!==S?(k=(0,h.jsxs)("div",{className:"flex flex-row items-center gap-2 ml-auto",children:[v,S]}),e[19]=v,e[20]=S,e[21]=k):k=e[21];let _;return e[22]!==u||e[23]!==k||e[24]!==m||e[25]!==b?(_=(0,h.jsxs)("div",{className:u,children:[m,b,k]}),e[22]=u,e[23]=k,e[24]=m,e[25]=b,e[26]=_):_=e[26],_},Ur="web application/x-marimo-cell",df=Yr({cells:Pm(Yr({code:Fi(),name:Fi().optional(),config:Yr({column:Dm([_m(),Um()]).optional(),disabled:Ri().optional(),hide_code:Ri().optional()}).optional()})),version:jm("1.0")});function jr(t){return t.map(e=>e.code).join(`
23
23
 
24
- `)}async function Yo(t){let e={cells:t.map(r=>({code:r.code,name:r.name,config:r.config})),version:"1.0"},n=new pf().add(Ur,e).add("text/plain",jr(t)).build();await navigator.clipboard.write([n])}function df(){let t=Dn(),e=ym(),n=xm();return{copyCells:se(async r=>{let a=xt(),o=r.map(i=>a.cellData[i]).filter(Boolean);if(o.length!==0)try{await Yo(o),e.clear(),Ko(o.length)}catch(i){$e.error("Failed to copy cells to clipboard",i);try{await os(jr(o)),e.clear(),Ko(o.length)}catch{Xo()}}}),cutCells:se(async r=>{let a=xt(),o=r.filter(s=>a.cellData[s]),i=o.map(s=>a.cellData[s]);if(i.length!==0)try{await Yo(i),e.markForCut({cellIds:o})}catch(s){$e.error("Failed to cut cells to clipboard",s);try{await os(jr(i)),e.markForCut({cellIds:o})}catch{Xo()}}}),pasteAtCell:se(async(r,a)=>{var i;let{before:o=!1}=a??{};if(n.cellIds.size>0){let s=[...n.cellIds],c=xt(),l=s.map(u=>{let d=c.cellIds.findWithId(u);return{columnId:d.id,index:d.indexOfOrThrow(u)}});t.moveCellsRelativeTo({cellIds:s,targetCellId:r,position:o?"before":"after",previousPlacements:l}),e.clear();return}try{let s=await navigator.clipboard.read();for(let l of s)if(l.types.includes(Ur)){let u=await(await l.getType(Ur)).text();try{let d=uf.parse(JSON.parse(u));if(d.cells.length===0)break;let p=r,f=d.cells.toReversed();for(let m of f)t.createNewCell({cellId:p,before:o,code:m.code,name:m.name,config:m.config,hideCode:(i=m.config)==null?void 0:i.hide_code,autoFocus:!0});return}catch(d){$e.warn("Failed to parse clipboard cell data",d)}}let c=await navigator.clipboard.readText();c.trim()?t.createNewCell({cellId:r,before:o,code:c,autoFocus:!0}):ff()}catch(s){$e.error("Failed to paste from clipboard",s),mf()}}),clearPendingCut:e.clear}}var Ko=t=>{let e=t===1?"Cell":`${t} cells`;kt({title:`${e} copied`,description:`${e} ${t===1?"has":"have"} been copied to clipboard.`})},Xo=()=>{kt({title:"Copy failed",description:"Failed to copy cells to clipboard.",variant:"danger"})},ff=()=>{kt({title:"Nothing to paste",description:"No cell or text found in clipboard.",variant:"danger"})},mf=()=>{kt({title:"Paste failed",description:"Failed to read from clipboard",variant:"danger"})},pf=class{constructor(){g(this,"items",{})}add(t,e){return ClipboardItem.supports(t)?typeof e=="string"?(this.items[t]=new Blob([e],{type:t}),this):(this.items[t]=new Blob([JSON.stringify(e)],{type:t}),this):($e.warn(`ClipboardItem does not support ${t}`),this)}build(){return new ClipboardItem(this.items)}},hf=ve();function Qo(){return{selectionStart:null,selectionEnd:null,selected:new Set}}var{reducer:Qh,createActions:Zh,valueAtom:Pr,useActions:gf}=ra(Qo,{select:(t,e)=>({selectionStart:e.cellId,selectionEnd:e.cellId,selected:new Set([e.cellId])}),extend:(t,e)=>{if(!t.selectionStart)return{selectionStart:e.cellId,selectionEnd:e.cellId,selected:new Set([e.cellId])};let{cellId:n,allCellIds:r}=e;try{let a=r.findWithId(t.selectionStart),o=a.indexOfOrThrow(t.selectionStart),i=a.indexOfOrThrow(n),[s,c]=o<i?[o,i]:[i,o],l=a.slice(s,c+1);return{selectionStart:t.selectionStart,selectionEnd:n,selected:new Set(l)}}catch{return{selectionStart:n,selectionEnd:n,selected:new Set([n])}}},clear:t=>t.selected.size===0?t:Qo()});Is=()=>q(Pr);function yf(t){let e=(0,hf.c)(2),n;return e[0]===t?n=e[1]:(n=ut(r=>r(Pr).selected.has(t)),e[0]=t,e[1]=n),q(n)}fa=function(){return gf()};function bf(t){return t.get(Pr).selected}let Zo,ei,ti;Zo=ve(),{valueAtom:ei,useActions:zt}=ra(()=>new Set,{add:(t,e)=>{if(t.has(e))return t;let n=new Set(t);return n.add(e),n},remove:(t,e)=>{if(!t.has(e))return t;let n=new Set(t);return n.delete(e),Si(()=>{let r=document.activeElement;if(!r)return;let a=Bn.findElementThroughShadowDOMs(r);a&&Ei(Bn.parse(a.id))}),n}}),ti=t=>ut(e=>e(ei).has(t)),ks=function(t){let e=(0,Zo.c)(2),n;return e[0]===t?n=e[1]:(n=ti(t),e[0]=t,e[1]=n),q(n)};var Rt=new WeakMap,wf=500;function vf(t){if(t.ctrlKey||t.metaKey||t.altKey)return"";let e=t.key.toLowerCase();return t.shiftKey?`shift+${e}`:e}function xf(t,e){let n=vf(t),r=t.target;if(!n||!r)return!1;let a=Rt.get(r),o=n;a!=null&&a.timeout&&clearTimeout(a.timeout),a&&(o=`${a.sequence} ${n}`);let i=e[o];if(i)return Rt.delete(r),i();if(!a){let s=e[n];if(s)return s()}if(Object.keys(e).some(s=>s.startsWith(`${o} `))){let s=window.setTimeout(()=>{Rt.delete(r)},wf);return Rt.set(r,{sequence:o,timeout:s}),!0}return Rt.delete(r),!1}var Dr=ve();function ni(t){return{handle:e=>t(e),bulkHandle:e=>{let n=!0;try{for(let r of e)n&&(n=t(r));return n}catch{return!1}}}}function Ke(t){return{handle:e=>t([e]),bulkHandle:e=>t(e)}}function Ef(t,e){let n=(0,Dr.c)(12),r=Lh(),a=Dn(),o=zt(),i;n[0]!==t||n[1]!==r?(i=()=>{r.focusCell({cellId:t})},n[0]=t,n[1]=r,n[2]=i):i=n[2];let s;n[3]!==a||n[4]!==t||n[5]!==e||n[6]!==r||n[7]!==o?(s=u=>{var d;ri(u.relatedTarget)||ri(u.target)||ai(u.relatedTarget)===t||ai((d=u.relatedTarget)==null?void 0:d.closest("[data-for-cell-id]"))===t||(o.remove(t),a.markTouched({cellId:t}),r.blurCell(),e.current&&Mr(e.current))},n[3]=a,n[4]=t,n[5]=e,n[6]=r,n[7]=o,n[8]=s):s=n[8];let c;n[9]!==i||n[10]!==s?(c={onFocusWithin:i,onBlurWithin:s},n[9]=i,n[10]=s,n[11]=c):c=n[11];let{focusWithinProps:l}=ph(c);return l}function ri(t){return t&&t instanceof HTMLElement?t.closest(".cm-vim-panel")!==null:!1}function ai(t){return t&&t.getAttribute(Zf)||null}Ns=function(t,e){let n=(0,Dr.c)(34),{canMoveX:r,editorView:a,cellActionDropdownRef:o}=e,{saveOrNameNotebook:i}=Yt(),{saveCellConfig:s}=Hn(),c=wi(ds),l=Dn(),u=Fr(),d=zt(),p=Sh(),f=q($i),{copyCells:m,pasteAtCell:y,cutCells:b}=df(),v=fa(),S=yf(t),k=Yn(),_=aa(),P=q(Xr),A;n[0]===P?A=n[1]:(A=Gi(P),n[0]=P,n[1]=A);let T=A,G;n[2]!==k||n[3]!==v?(G={clear:()=>{k.clear(),v.clear()},extend:U=>{k.clear(),v.extend(U)},select:U=>{k.clear(),v.select(U)}},n[2]=k,n[3]=v,n[4]=G):G=n[4];let M=G,ae=q(Ji),O;n[5]===ae?O=n[6]:(O=(U,j)=>Kr(ae.getHotkey(U).key)(j.nativeEvent||j),n[5]=ae,n[6]=O);let I=O,le=Ef(t,a),ue;n[7]!==l||n[8]!==T||n[9]!==r||n[10]!==o||n[11]!==t||n[12]!==m||n[13]!==b||n[14]!==_||n[15]!==a||n[16]!==S||n[17]!==I||n[18]!==f||n[19]!==y||n[20]!==k||n[21]!==p||n[22]!==s||n[23]!==i||n[24]!==M||n[25]!==c||n[26]!==u||n[27]!==d||n[28]!==P?(ue={onKeyDown:U=>{if(Zr.fromInput(U)){U.continuePropagation();return}let j={"Mod+ArrowUp":()=>(l.focusTopCell(),M.clear(),!0),"Mod+ArrowDown":()=>(l.focusBottomCell(),M.clear(),!0),ArrowUp:()=>(l.focusCell({cellId:t,where:"before"}),M.clear(),!0),ArrowDown:()=>(l.focusCell({cellId:t,where:"after"}),M.clear(),!0),ArrowLeft:()=>{if(r){let E=u.get(rt),C=E.cellIds.findWithId(t),D=E.cellIds.indexOf(C),L=E.cellIds.at(D-1);if(L&&L.length>0){let fe=oi(t,L);return l.focusCell({cellId:fe,where:"exact"}),M.clear(),!0}}return!1},ArrowRight:()=>{if(r){let E=u.get(rt),C=E.cellIds.findWithId(t),D=E.cellIds.indexOf(C),L=E.cellIds.at(D+1);if(L&&L.length>0){let fe=oi(t,L);return l.focusCell({cellId:fe,where:"exact"}),M.clear(),!0}}return!1},"Shift+ArrowUp":()=>{let E=u.get(ji);M.extend({cellId:t,allCellIds:E});let C=E.findWithId(t).before(t);return C&&M.extend({cellId:C,allCellIds:E}),l.focusCell({cellId:t,where:"before"}),!0},"Shift+ArrowDown":()=>{let E=u.get(ji);M.extend({cellId:t,allCellIds:E});let C=E.findWithId(t).after(t);return C&&M.extend({cellId:C,allCellIds:E}),l.focusCell({cellId:t,where:"after"}),!0},Escape:()=>u.get(fm).size>0?(u.set(vm),!0):S?(M.clear(),!0):!1,Enter:()=>(d.add(t),Ni(u,t),M.clear(),!0),s:()=>(i(),!0)};for(let[E,C]of Object.entries(j))if(Kr(E)(U)&&C()){U.preventDefault();return}let we={"cell.run":Ke(E=>(p(E),!0)),"cell.runAndNewBelow":Ke(E=>{p(E);let C=E[E.length-1];return l.moveToNextCell({cellId:C,before:!1}),!0}),"cell.runAndNewAbove":Ke(E=>{p(E);let C=E[0];return l.moveToNextCell({cellId:C,before:!0}),!0}),"cell.createAbove":E=>(l.createNewCell({cellId:E,before:!0}),!0),"cell.createBelow":E=>(l.createNewCell({cellId:E,before:!1}),!0),"cell.moveUp":Ke(E=>{let C=E[0];return u.get(rt).cellIds.findWithId(C).first()===C?!1:(E.forEach(D=>{l.moveCell({cellId:D,before:!0})}),!0)}),"cell.moveDown":Ke(E=>{let C=E[E.length-1];return u.get(rt).cellIds.findWithId(C).last()===C?!1:(E.toReversed().forEach(D=>{l.moveCell({cellId:D,before:!1})}),!0)}),"cell.moveLeft":ni(E=>r?(l.moveCell({cellId:E,direction:"left"}),!0):!1),"cell.moveRight":ni(E=>r?(l.moveCell({cellId:E,direction:"right"}),!0):!1),"cell.hideCode":Ke(E=>{var D;let C=!E.map(L=>{var fe;return((fe=u.get(rt).cellData[L])==null?void 0:fe.config)||null}).every(Sf);s({configs:Object.fromEntries(E.map(L=>[L,{hide_code:C}]))});for(let L of E)l.updateCellConfig({cellId:L,config:{hide_code:C}});if(E.length===1){let L=E[0];l.focusCell({cellId:L,where:"after"}),C?((D=a.current)==null||D.contentDOM.blur(),Ti(L)):Ni(u,L)}return!0}),"cell.focusDown":E=>(l.focusCell({cellId:E,where:"after"}),!0),"cell.focusUp":E=>(l.focusCell({cellId:E,where:"before"}),!0),"cell.sendToBottom":Ke(E=>(E.forEach(C=>{l.sendToBottom({cellId:C})}),!0)),"cell.sendToTop":Ke(E=>(E.toReversed().forEach(C=>{l.sendToTop({cellId:C})}),!0)),"cell.aiCompletion":E=>{var D;if(!T)return!1;let C=!1;return c(L=>(L==null?void 0:L.cellId)===E?(C=!0,null):{cellId:E}),C&&((D=a.current)==null||D.focus()),!0},"cell.cellActions":()=>{var E;return(E=o.current)==null||E.toggle(),!0},"command.copyCell":Ke(E=>(m(E),!0)),"command.cutCell":Ke(E=>(b(E),!0)),"command.pasteCell":E=>(y(E),!0),"command.createCellBefore":E=>Zr.hasModifier(U)?!1:(l.createNewCell({cellId:E,before:!0,autoFocus:!0}),!0),"command.createCellAfter":E=>Zr.hasModifier(U)?!1:(l.createNewCell({cellId:E,before:!1,autoFocus:!0}),!0),"cell.delete":()=>{if(!P.keymap.destructive_delete)return!1;let E=de.size>=2?[...de]:[t],C=u.get(rt);return E.some(D=>{let{status:L}=C.cellRuntime[D];return L==="running"||L==="queued"})?!1:k.idle?(k.submit(E),!0):(_({cellIds:E}),k.clear(),!0)}},de=bf(u);if(f==="vim"&&xf(U.nativeEvent||U,{j:j.ArrowDown,k:j.ArrowUp,h:j.ArrowLeft,l:j.ArrowRight,i:j.Enter,"shift+j":j["Shift+ArrowDown"],"shift+k":j["Shift+ArrowUp"],"g g":j["Mod+ArrowUp"],"shift+g":j["Mod+ArrowDown"],"d d":()=>we["cell.delete"](),"y y":()=>(m(de.size>=2?[...de]:[t]),!0),p:()=>(y(t,{before:!1}),!0),"shift+p":()=>(y(t,{before:!0}),!0),o:()=>(l.createNewCell({cellId:t,before:!1,autoFocus:!0}),!0),"shift+o":()=>(l.createNewCell({cellId:t,before:!0,autoFocus:!0}),!0),u:()=>(l.undoDeleteCell(),!0)})){U.preventDefault();return}for(let[E,C]of Object.entries(we))if(I(E,U)){if(typeof C=="function"){if(C(t)){U.preventDefault();return}}else if(de.size>=2?C.bulkHandle([...de]):C.handle(t)){U.preventDefault();return}return}U.continuePropagation()}},n[7]=l,n[8]=T,n[9]=r,n[10]=o,n[11]=t,n[12]=m,n[13]=b,n[14]=_,n[15]=a,n[16]=S,n[17]=I,n[18]=f,n[19]=y,n[20]=k,n[21]=p,n[22]=s,n[23]=i,n[24]=M,n[25]=c,n[26]=u,n[27]=d,n[28]=P,n[29]=ue):ue=n[29];let{keyboardProps:oe}=as(ue),ne;return n[30]!==le||n[31]!==S||n[32]!==oe?(ne=xh(le,oe,{"data-selected":S,className:"data-[selected=true]:ring-1 data-[selected=true]:ring-(--blue-8) data-[selected=true]:ring-offset-1"}),n[30]=le,n[31]=S,n[32]=oe,n[33]=ne):ne=n[33],ne};function Sf(t){return t==null?void 0:t.hide_code}function kf(t,e){let n=(0,Dr.c)(12),r=zt(),a=q($i),o=q(Ji),i;n[0]===o?i=n[1]:(i=Kr(o.getHotkey("command.vimEnterCommandMode").key),n[0]=o,n[1]=i);let s=i,c;n[2]!==t||n[3]!==r?(c=()=>{r.remove(t),Ti(t),Si(()=>{Ei(t)})},n[2]=t,n[3]=r,n[4]=c):c=n[4];let l=c,u;n[5]!==e||n[6]!==l?(u=()=>{if(!e.current){l();return}let m=e.current,y=m.state;if(Up(m))return;let b=!!y.field(Ci,!1)||!!y.field(hm,!1),v=qt(y)!==null;b&&Mr(m),v&&Wp(m),!(b||v)&&l()},n[5]=e,n[6]=l,n[7]=u):u=n[7];let d=u,p;n[8]!==d||n[9]!==a||n[10]!==s?(p={onKeyDown:m=>{a==="vim"?s(m)&&d():m.key==="Escape"&&d(),m.continuePropagation()}},n[8]=d,n[9]=a,n[10]=s,n[11]=p):p=n[11];let{keyboardProps:f}=as(p);return f}function oi(t,e){let n=document.getElementById(Bn.create(t));if(!n)return e.first();let r=n.getBoundingClientRect();for(let a of e.topLevelIds){let o=document.getElementById(Bn.create(a));if(o){let i=o.getBoundingClientRect();if(r.top<=i.bottom&&r.bottom>=i.top)return a}}return e.last()}function Mr(t){t.state.field(Ci,!1)&&t.dispatch({effects:$f.of(null)}),Em(t)}var Cf=ve(),Tf=50,Nf=4,If=60;function Af(t){return Math.min(If,Math.max(Nf,t))}const Lf=t=>{let e=(0,Cf.c)(13),{code:n,className:r}=t,a,o,i,s;if(e[0]!==r||e[1]!==n){let l=n.split(`
25
- `,Tf);e[6]===r?a=e[7]:(a=at("cm","mo-code-placeholder",r),e[6]=r,e[7]=a),o="cell-editor-placeholder",i=!0,s=l.map(Of),e[0]=r,e[1]=n,e[2]=a,e[3]=o,e[4]=i,e[5]=s}else a=e[2],o=e[3],i=e[4],s=e[5];let c;return e[8]!==a||e[9]!==o||e[10]!==i||e[11]!==s?(c=(0,h.jsx)("div",{className:a,"data-testid":o,"aria-hidden":i,children:s}),e[8]=a,e[9]=o,e[10]=i,e[11]=s,e[12]=c):c=e[12],c};function Of(t,e){let n=t.trimEnd().length;return(0,h.jsx)("div",{className:"mo-code-placeholder-line",children:n>0&&(0,h.jsx)(Kh,{className:"mo-code-placeholder-bar",style:{width:`${Af(n)}ch`}})},e)}var ii=ve();let Ln;da=t=>{let e=(0,ii.c)(25),{editorView:n,code:r,currentLanguageAdapter:a,onAfterToggle:o,className:i}=t,s=i===void 0?"absolute right-3 top-2 z-20 flex hover-action gap-1":i,c;e[0]===r?c=e[1]:(c=ki.markdown.isSupported(r)||r.trim()==="",e[0]=r,e[1]=c);let l=c,u;e[2]===r?u=e[3]:(u=ki.sql.isSupported(r)||r.trim()==="",e[2]=r,e[3]=u);let d=u&&a==="python",p;e[4]===Symbol.for("react.memo_cache_sentinel")?(p=(0,h.jsx)(Xf,{color:"var(--sky-11)",strokeWidth:2.5,className:"w-4 h-4"}),e[4]=p):p=e[4];let f;e[5]!==a||e[6]!==n||e[7]!==o||e[8]!==d?(f=(0,h.jsx)(Ln,{editorView:n,currentLanguageAdapter:a,canSwitchToLanguage:d,icon:p,toType:"sql",displayName:"SQL",onAfterToggle:o}),e[5]=a,e[6]=n,e[7]=o,e[8]=d,e[9]=f):f=e[9];let m=l&&a==="python",y;e[10]===Symbol.for("react.memo_cache_sentinel")?(y=(0,h.jsx)(Dh,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),e[10]=y):y=e[10];let b;e[11]!==a||e[12]!==n||e[13]!==o||e[14]!==m?(b=(0,h.jsx)(Ln,{editorView:n,currentLanguageAdapter:a,canSwitchToLanguage:m,icon:y,toType:"markdown",displayName:"Markdown",onAfterToggle:o}),e[11]=a,e[12]=n,e[13]=o,e[14]=m,e[15]=b):b=e[15];let v;e[16]===Symbol.for("react.memo_cache_sentinel")?(v=(0,h.jsx)(Ph,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),e[16]=v):v=e[16];let S;e[17]!==a||e[18]!==n?(S=(0,h.jsx)(Ln,{editorView:n,currentLanguageAdapter:a,canSwitchToLanguage:!0,icon:v,toType:"python",displayName:"Python",onAfterToggle:Vm.NOOP}),e[17]=a,e[18]=n,e[19]=S):S=e[19];let k;return e[20]!==s||e[21]!==S||e[22]!==f||e[23]!==b?(k=(0,h.jsxs)("div",{className:s,children:[f,b,S]}),e[20]=s,e[21]=S,e[22]=f,e[23]=b,e[24]=k):k=e[24],k},Ln=t=>{let e=(0,ii.c)(10),{editorView:n,currentLanguageAdapter:r,canSwitchToLanguage:a,icon:o,toType:i,displayName:s,onAfterToggle:c}=t,l;e[0]!==n||e[1]!==c||e[2]!==i?(l=()=>{n&&(Bt(n,{language:i}),c())},e[0]=n,e[1]=c,e[2]=i,e[3]=l):l=e[3];let u=l;if(!a||r===i)return null;let d=`View as ${s}`,p;e[4]!==u||e[5]!==o?(p=(0,h.jsx)(ft,{"data-testid":"language-toggle-button",variant:"text",size:"xs",className:"opacity-80 px-1",onClick:u,children:o}),e[4]=u,e[5]=o,e[6]=p):p=e[6];let f;return e[7]!==d||e[8]!==p?(f=(0,h.jsx)(Jn,{content:d,children:p}),e[7]=d,e[8]=p,e[9]=f):f=e[9],f};var si=ve(),li=({theme:t,showPlaceholder:e,id:n,config:r,code:a,status:o,serializedEditorState:i,setEditorView:s,runCell:c,userConfig:l,editorViewRef:u,editorViewParentRef:d,hidden:p,hasOutput:f,showHiddenCode:m,languageAdapter:y,setLanguageAdapter:b,showLanguageToggles:v=!0,inlineAiTooltip:S,outputArea:k,tooltipParentSelector:_})=>{var di,fi;let[P,A]=jn(ds),T=ns(),{saveOrNameNotebook:G}=Yt(),M=Yn(),{saveCellConfig:ae}=Hn(),O=o==="running"||o==="queued",I=Dn(),le=Rh(),ue=y==="markdown",oe=se(()=>O?!1:M.idle&&l.keymap.destructive_delete?(M.submit([n]),!0):(T({cellId:n}),!0)),ne=se(()=>O?!1:(c(),u.current&&Mr(u.current),!0)),U=se(()=>{let $=!r.hide_code;return ae({configs:{[n]:{hide_code:$}}}),I.updateCellConfig({cellId:n,config:{hide_code:$}}),$}),j=q(Wm),we=q(Jm),de=se(()=>{fs({autoInstantiate:j,createNewCell:I.createNewCell}),r.hide_code||(ae({configs:{[n]:{hide_code:!0}}}),I.updateCellConfig({cellId:n,config:{hide_code:!0}}),I.markUntouched({cellId:n}))}),E=se(()=>{fs({autoInstantiate:j,createNewCell:I.createNewCell})}),C=Gi(l),D=(0,N.useMemo)(()=>{var me;let $=cd({cellId:n,showPlaceholder:e,enableAI:C,cellActions:{...I,afterToggleMarkdown:de,afterToggleSQL:E,onRun:ne,deleteCell:oe,saveNotebook:G,createManyBelow:ee=>{for(let ye of ee.toReversed())I.createNewCell({code:ye,before:!1,cellId:n,skipIfCodeExists:!0})},addOrAppendSetupCell:ee=>{let ye=xt();if(!ye.cellIds.setupCellExists()){I.addSetupCellIfDoesntExist({code:ee});return}let Un=Cm(ye)[qr],mi=Un?dm(Un):ye.cellData[qr].code,pi=mi.trim()?`${mi.trimEnd()}
24
+ `)}async function Yo(t){let e={cells:t.map(r=>({code:r.code,name:r.name,config:r.config})),version:"1.0"},n=new hf().add(Ur,e).add("text/plain",jr(t)).build();await navigator.clipboard.write([n])}function ff(){let t=Dn(),e=vm(),n=Sm();return{copyCells:se(async r=>{let a=xt(),o=r.map(i=>a.cellData[i]).filter(Boolean);if(o.length!==0)try{await Yo(o),e.clear(),Ko(o.length)}catch(i){$e.error("Failed to copy cells to clipboard",i);try{await os(jr(o)),e.clear(),Ko(o.length)}catch{Xo()}}}),cutCells:se(async r=>{let a=xt(),o=r.filter(s=>a.cellData[s]),i=o.map(s=>a.cellData[s]);if(i.length!==0)try{await Yo(i),e.markForCut({cellIds:o})}catch(s){$e.error("Failed to cut cells to clipboard",s);try{await os(jr(i)),e.markForCut({cellIds:o})}catch{Xo()}}}),pasteAtCell:se(async(r,a)=>{var i;let{before:o=!1}=a??{};if(n.cellIds.size>0){let s=[...n.cellIds],c=xt(),l=s.map(u=>{let d=c.cellIds.findWithId(u);return{columnId:d.id,index:d.indexOfOrThrow(u)}});t.moveCellsRelativeTo({cellIds:s,targetCellId:r,position:o?"before":"after",previousPlacements:l}),e.clear();return}try{let s=await navigator.clipboard.read();for(let l of s)if(l.types.includes(Ur)){let u=await(await l.getType(Ur)).text();try{let d=df.parse(JSON.parse(u));if(d.cells.length===0)break;let p=r,f=d.cells.toReversed();for(let m of f)t.createNewCell({cellId:p,before:o,code:m.code,name:m.name,config:m.config,hideCode:(i=m.config)==null?void 0:i.hide_code,autoFocus:!0});return}catch(d){$e.warn("Failed to parse clipboard cell data",d)}}let c=await navigator.clipboard.readText();c.trim()?t.createNewCell({cellId:r,before:o,code:c,autoFocus:!0}):mf()}catch(s){$e.error("Failed to paste from clipboard",s),pf()}}),clearPendingCut:e.clear}}var Ko=t=>{let e=t===1?"Cell":`${t} cells`;kt({title:`${e} copied`,description:`${e} ${t===1?"has":"have"} been copied to clipboard.`})},Xo=()=>{kt({title:"Copy failed",description:"Failed to copy cells to clipboard.",variant:"danger"})},mf=()=>{kt({title:"Nothing to paste",description:"No cell or text found in clipboard.",variant:"danger"})},pf=()=>{kt({title:"Paste failed",description:"Failed to read from clipboard",variant:"danger"})},hf=class{constructor(){g(this,"items",{})}add(t,e){return ClipboardItem.supports(t)?typeof e=="string"?(this.items[t]=new Blob([e],{type:t}),this):(this.items[t]=new Blob([JSON.stringify(e)],{type:t}),this):($e.warn(`ClipboardItem does not support ${t}`),this)}build(){return new ClipboardItem(this.items)}},gf=ve();function Zo(){return{selectionStart:null,selectionEnd:null,selected:new Set}}var{reducer:eg,createActions:tg,valueAtom:Pr,useActions:yf}=ra(Zo,{select:(t,e)=>({selectionStart:e.cellId,selectionEnd:e.cellId,selected:new Set([e.cellId])}),extend:(t,e)=>{if(!t.selectionStart)return{selectionStart:e.cellId,selectionEnd:e.cellId,selected:new Set([e.cellId])};let{cellId:n,allCellIds:r}=e;try{let a=r.findWithId(t.selectionStart),o=a.indexOfOrThrow(t.selectionStart),i=a.indexOfOrThrow(n),[s,c]=o<i?[o,i]:[i,o],l=a.slice(s,c+1);return{selectionStart:t.selectionStart,selectionEnd:n,selected:new Set(l)}}catch{return{selectionStart:n,selectionEnd:n,selected:new Set([n])}}},clear:t=>t.selected.size===0?t:Zo()});Is=()=>q(Pr);function bf(t){let e=(0,gf.c)(2),n;return e[0]===t?n=e[1]:(n=ut(r=>r(Pr).selected.has(t)),e[0]=t,e[1]=n),q(n)}fa=function(){return yf()};function wf(t){return t.get(Pr).selected}let Qo,ei,ti;Qo=ve(),{valueAtom:ei,useActions:zt}=ra(()=>new Set,{add:(t,e)=>{if(t.has(e))return t;let n=new Set(t);return n.add(e),n},remove:(t,e)=>{if(!t.has(e))return t;let n=new Set(t);return n.delete(e),Si(()=>{let r=document.activeElement;if(!r)return;let a=Gn.findElementThroughShadowDOMs(r);a&&Ei(Gn.parse(a.id))}),n}}),ti=t=>ut(e=>e(ei).has(t)),ks=function(t){let e=(0,Qo.c)(2),n;return e[0]===t?n=e[1]:(n=ti(t),e[0]=t,e[1]=n),q(n)};var Rt=new WeakMap,vf=500;function xf(t){if(t.ctrlKey||t.metaKey||t.altKey)return"";let e=t.key.toLowerCase();return t.shiftKey?`shift+${e}`:e}function Ef(t,e){let n=xf(t),r=t.target;if(!n||!r)return!1;let a=Rt.get(r),o=n;a!=null&&a.timeout&&clearTimeout(a.timeout),a&&(o=`${a.sequence} ${n}`);let i=e[o];if(i)return Rt.delete(r),i();if(!a){let s=e[n];if(s)return s()}if(Object.keys(e).some(s=>s.startsWith(`${o} `))){let s=window.setTimeout(()=>{Rt.delete(r)},vf);return Rt.set(r,{sequence:o,timeout:s}),!0}return Rt.delete(r),!1}var Dr=ve();function ni(t){return{handle:e=>t(e),bulkHandle:e=>{let n=!0;try{for(let r of e)n&&(n=t(r));return n}catch{return!1}}}}function Ke(t){return{handle:e=>t([e]),bulkHandle:e=>t(e)}}function Sf(t,e){let n=(0,Dr.c)(12),r=_h(),a=Dn(),o=zt(),i;n[0]!==t||n[1]!==r?(i=()=>{r.focusCell({cellId:t})},n[0]=t,n[1]=r,n[2]=i):i=n[2];let s;n[3]!==a||n[4]!==t||n[5]!==e||n[6]!==r||n[7]!==o?(s=u=>{var d;ri(u.relatedTarget)||ri(u.target)||ai(u.relatedTarget)===t||ai((d=u.relatedTarget)==null?void 0:d.closest("[data-for-cell-id]"))===t||(o.remove(t),a.markTouched({cellId:t}),r.blurCell(),e.current&&Mr(e.current))},n[3]=a,n[4]=t,n[5]=e,n[6]=r,n[7]=o,n[8]=s):s=n[8];let c;n[9]!==i||n[10]!==s?(c={onFocusWithin:i,onBlurWithin:s},n[9]=i,n[10]=s,n[11]=c):c=n[11];let{focusWithinProps:l}=gh(c);return l}function ri(t){return t&&t instanceof HTMLElement?t.closest(".cm-vim-panel")!==null:!1}function ai(t){return t&&t.getAttribute(em)||null}Ns=function(t,e){let n=(0,Dr.c)(34),{canMoveX:r,editorView:a,cellActionDropdownRef:o}=e,{saveOrNameNotebook:i}=Yt(),{saveCellConfig:s}=Hn(),c=wi(ds),l=Dn(),u=Fr(),d=zt(),p=Ch(),f=q($i),{copyCells:m,pasteAtCell:y,cutCells:b}=ff(),v=fa(),S=bf(t),k=Yn(),_=aa(),P=q(Xr),A;n[0]===P?A=n[1]:(A=Gi(P),n[0]=P,n[1]=A);let T=A,G;n[2]!==k||n[3]!==v?(G={clear:()=>{k.clear(),v.clear()},extend:U=>{k.clear(),v.extend(U)},select:U=>{k.clear(),v.select(U)}},n[2]=k,n[3]=v,n[4]=G):G=n[4];let M=G,ae=q(Ji),O;n[5]===ae?O=n[6]:(O=(U,j)=>Kr(ae.getHotkey(U).key)(j.nativeEvent||j),n[5]=ae,n[6]=O);let I=O,le=Sf(t,a),ue;n[7]!==l||n[8]!==T||n[9]!==r||n[10]!==o||n[11]!==t||n[12]!==m||n[13]!==b||n[14]!==_||n[15]!==a||n[16]!==S||n[17]!==I||n[18]!==f||n[19]!==y||n[20]!==k||n[21]!==p||n[22]!==s||n[23]!==i||n[24]!==M||n[25]!==c||n[26]!==u||n[27]!==d||n[28]!==P?(ue={onKeyDown:U=>{if(Qr.fromInput(U)){U.continuePropagation();return}let j={"Mod+ArrowUp":()=>(l.focusTopCell(),M.clear(),!0),"Mod+ArrowDown":()=>(l.focusBottomCell(),M.clear(),!0),ArrowUp:()=>(l.focusCell({cellId:t,where:"before"}),M.clear(),!0),ArrowDown:()=>(l.focusCell({cellId:t,where:"after"}),M.clear(),!0),ArrowLeft:()=>{if(r){let E=u.get(rt),C=E.cellIds.findWithId(t),D=E.cellIds.indexOf(C),L=E.cellIds.at(D-1);if(L&&L.length>0){let fe=oi(t,L);return l.focusCell({cellId:fe,where:"exact"}),M.clear(),!0}}return!1},ArrowRight:()=>{if(r){let E=u.get(rt),C=E.cellIds.findWithId(t),D=E.cellIds.indexOf(C),L=E.cellIds.at(D+1);if(L&&L.length>0){let fe=oi(t,L);return l.focusCell({cellId:fe,where:"exact"}),M.clear(),!0}}return!1},"Shift+ArrowUp":()=>{let E=u.get(_i);M.extend({cellId:t,allCellIds:E});let C=E.findWithId(t).before(t);return C&&M.extend({cellId:C,allCellIds:E}),l.focusCell({cellId:t,where:"before"}),!0},"Shift+ArrowDown":()=>{let E=u.get(_i);M.extend({cellId:t,allCellIds:E});let C=E.findWithId(t).after(t);return C&&M.extend({cellId:C,allCellIds:E}),l.focusCell({cellId:t,where:"after"}),!0},Escape:()=>u.get(hm).size>0?(u.set(Em),!0):S?(M.clear(),!0):!1,Enter:()=>(d.add(t),Ti(u,t),M.clear(),!0),s:()=>(i(),!0)};for(let[E,C]of Object.entries(j))if(Kr(E)(U)&&C()){U.preventDefault();return}let we={"cell.run":Ke(E=>(p(E),!0)),"cell.runAndNewBelow":Ke(E=>{p(E);let C=E[E.length-1];return l.moveToNextCell({cellId:C,before:!1}),!0}),"cell.runAndNewAbove":Ke(E=>{p(E);let C=E[0];return l.moveToNextCell({cellId:C,before:!0}),!0}),"cell.createAbove":E=>(l.createNewCell({cellId:E,before:!0}),!0),"cell.createBelow":E=>(l.createNewCell({cellId:E,before:!1}),!0),"cell.moveUp":Ke(E=>{let C=E[0];return u.get(rt).cellIds.findWithId(C).first()===C?!1:(E.forEach(D=>{l.moveCell({cellId:D,before:!0})}),!0)}),"cell.moveDown":Ke(E=>{let C=E[E.length-1];return u.get(rt).cellIds.findWithId(C).last()===C?!1:(E.toReversed().forEach(D=>{l.moveCell({cellId:D,before:!1})}),!0)}),"cell.moveLeft":ni(E=>r?(l.moveCell({cellId:E,direction:"left"}),!0):!1),"cell.moveRight":ni(E=>r?(l.moveCell({cellId:E,direction:"right"}),!0):!1),"cell.hideCode":Ke(E=>{var D;let C=!E.map(L=>{var fe;return((fe=u.get(rt).cellData[L])==null?void 0:fe.config)||null}).every(kf);s({configs:Object.fromEntries(E.map(L=>[L,{hide_code:C}]))});for(let L of E)l.updateCellConfig({cellId:L,config:{hide_code:C}});if(E.length===1){let L=E[0];l.focusCell({cellId:L,where:"after"}),C?((D=a.current)==null||D.contentDOM.blur(),Ci(L)):Ti(u,L)}return!0}),"cell.focusDown":E=>(l.focusCell({cellId:E,where:"after"}),!0),"cell.focusUp":E=>(l.focusCell({cellId:E,where:"before"}),!0),"cell.sendToBottom":Ke(E=>(E.forEach(C=>{l.sendToBottom({cellId:C})}),!0)),"cell.sendToTop":Ke(E=>(E.toReversed().forEach(C=>{l.sendToTop({cellId:C})}),!0)),"cell.aiCompletion":E=>{var D;if(!T)return!1;let C=!1;return c(L=>(L==null?void 0:L.cellId)===E?(C=!0,null):{cellId:E}),C&&((D=a.current)==null||D.focus()),!0},"cell.cellActions":()=>{var E;return(E=o.current)==null||E.toggle(),!0},"command.copyCell":Ke(E=>(m(E),!0)),"command.cutCell":Ke(E=>(b(E),!0)),"command.pasteCell":E=>(y(E),!0),"command.createCellBefore":E=>Qr.hasModifier(U)?!1:(l.createNewCell({cellId:E,before:!0,autoFocus:!0}),!0),"command.createCellAfter":E=>Qr.hasModifier(U)?!1:(l.createNewCell({cellId:E,before:!1,autoFocus:!0}),!0),"cell.delete":()=>{if(!P.keymap.destructive_delete)return!1;let E=de.size>=2?[...de]:[t],C=u.get(rt);return E.some(D=>{let{status:L}=C.cellRuntime[D];return L==="running"||L==="queued"})?!1:k.idle?(k.submit(E),!0):(_({cellIds:E}),k.clear(),!0)}},de=wf(u);if(f==="vim"&&Ef(U.nativeEvent||U,{j:j.ArrowDown,k:j.ArrowUp,h:j.ArrowLeft,l:j.ArrowRight,i:j.Enter,"shift+j":j["Shift+ArrowDown"],"shift+k":j["Shift+ArrowUp"],"g g":j["Mod+ArrowUp"],"shift+g":j["Mod+ArrowDown"],"d d":()=>we["cell.delete"](),"y y":()=>(m(de.size>=2?[...de]:[t]),!0),p:()=>(y(t,{before:!1}),!0),"shift+p":()=>(y(t,{before:!0}),!0),o:()=>(l.createNewCell({cellId:t,before:!1,autoFocus:!0}),!0),"shift+o":()=>(l.createNewCell({cellId:t,before:!0,autoFocus:!0}),!0),u:()=>(l.undoDeleteCell(),!0)})){U.preventDefault();return}for(let[E,C]of Object.entries(we))if(I(E,U)){if(typeof C=="function"){if(C(t)){U.preventDefault();return}}else if(de.size>=2?C.bulkHandle([...de]):C.handle(t)){U.preventDefault();return}return}U.continuePropagation()}},n[7]=l,n[8]=T,n[9]=r,n[10]=o,n[11]=t,n[12]=m,n[13]=b,n[14]=_,n[15]=a,n[16]=S,n[17]=I,n[18]=f,n[19]=y,n[20]=k,n[21]=p,n[22]=s,n[23]=i,n[24]=M,n[25]=c,n[26]=u,n[27]=d,n[28]=P,n[29]=ue):ue=n[29];let{keyboardProps:oe}=as(ue),ne;return n[30]!==le||n[31]!==S||n[32]!==oe?(ne=Sh(le,oe,{"data-selected":S,className:"data-[selected=true]:ring-1 data-[selected=true]:ring-(--blue-8) data-[selected=true]:ring-offset-1"}),n[30]=le,n[31]=S,n[32]=oe,n[33]=ne):ne=n[33],ne};function kf(t){return t==null?void 0:t.hide_code}function Cf(t,e){let n=(0,Dr.c)(12),r=zt(),a=q($i),o=q(Ji),i;n[0]===o?i=n[1]:(i=Kr(o.getHotkey("command.vimEnterCommandMode").key),n[0]=o,n[1]=i);let s=i,c;n[2]!==t||n[3]!==r?(c=()=>{r.remove(t),Ci(t),Si(()=>{Ei(t)})},n[2]=t,n[3]=r,n[4]=c):c=n[4];let l=c,u;n[5]!==e||n[6]!==l?(u=()=>{if(!e.current){l();return}let m=e.current,y=m.state;if(Pp(m))return;let b=!!y.field(Mi,!1)||!!y.field(bm,!1),v=qt(y)!==null;b&&Mr(m),v&&Hp(m),!(b||v)&&l()},n[5]=e,n[6]=l,n[7]=u):u=n[7];let d=u,p;n[8]!==d||n[9]!==a||n[10]!==s?(p={onKeyDown:m=>{a==="vim"?s(m)&&d():m.key==="Escape"&&d(),m.continuePropagation()}},n[8]=d,n[9]=a,n[10]=s,n[11]=p):p=n[11];let{keyboardProps:f}=as(p);return f}function oi(t,e){let n=document.getElementById(Gn.create(t));if(!n)return e.first();let r=n.getBoundingClientRect();for(let a of e.topLevelIds){let o=document.getElementById(Gn.create(a));if(o){let i=o.getBoundingClientRect();if(r.top<=i.bottom&&r.bottom>=i.top)return a}}return e.last()}function Mr(t){t.state.field(Mi,!1)&&t.dispatch({effects:Kf.of(null)}),km(t)}var Tf=ve(),Nf=50,If=4,Af=60;function Lf(t){return Math.min(Af,Math.max(If,t))}const Of=t=>{let e=(0,Tf.c)(13),{code:n,className:r}=t,a,o,i,s;if(e[0]!==r||e[1]!==n){let l=n.split(`
25
+ `,Nf);e[6]===r?a=e[7]:(a=at("cm","mo-code-placeholder",r),e[6]=r,e[7]=a),o="cell-editor-placeholder",i=!0,s=l.map(_f),e[0]=r,e[1]=n,e[2]=a,e[3]=o,e[4]=i,e[5]=s}else a=e[2],o=e[3],i=e[4],s=e[5];let c;return e[8]!==a||e[9]!==o||e[10]!==i||e[11]!==s?(c=(0,h.jsx)("div",{className:a,"data-testid":o,"aria-hidden":i,children:s}),e[8]=a,e[9]=o,e[10]=i,e[11]=s,e[12]=c):c=e[12],c};function _f(t,e){let n=t.trimEnd().length;return(0,h.jsx)("div",{className:"mo-code-placeholder-line",children:n>0&&(0,h.jsx)(Zh,{className:"mo-code-placeholder-bar",style:{width:`${Lf(n)}ch`}})},e)}var ii=ve();let Ln;da=t=>{let e=(0,ii.c)(25),{editorView:n,code:r,currentLanguageAdapter:a,onAfterToggle:o,className:i}=t,s=i===void 0?"absolute right-3 top-2 z-20 flex hover-action gap-1":i,c;e[0]===r?c=e[1]:(c=ki.markdown.isSupported(r)||r.trim()==="",e[0]=r,e[1]=c);let l=c,u;e[2]===r?u=e[3]:(u=ki.sql.isSupported(r)||r.trim()==="",e[2]=r,e[3]=u);let d=u&&a==="python",p;e[4]===Symbol.for("react.memo_cache_sentinel")?(p=(0,h.jsx)(Am,{color:"var(--sky-11)",strokeWidth:2.5,className:"w-4 h-4"}),e[4]=p):p=e[4];let f;e[5]!==a||e[6]!==n||e[7]!==o||e[8]!==d?(f=(0,h.jsx)(Ln,{editorView:n,currentLanguageAdapter:a,canSwitchToLanguage:d,icon:p,toType:"sql",displayName:"SQL",onAfterToggle:o}),e[5]=a,e[6]=n,e[7]=o,e[8]=d,e[9]=f):f=e[9];let m=l&&a==="python",y;e[10]===Symbol.for("react.memo_cache_sentinel")?(y=(0,h.jsx)(Fh,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),e[10]=y):y=e[10];let b;e[11]!==a||e[12]!==n||e[13]!==o||e[14]!==m?(b=(0,h.jsx)(Ln,{editorView:n,currentLanguageAdapter:a,canSwitchToLanguage:m,icon:y,toType:"markdown",displayName:"Markdown",onAfterToggle:o}),e[11]=a,e[12]=n,e[13]=o,e[14]=m,e[15]=b):b=e[15];let v;e[16]===Symbol.for("react.memo_cache_sentinel")?(v=(0,h.jsx)(Mh,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),e[16]=v):v=e[16];let S;e[17]!==a||e[18]!==n?(S=(0,h.jsx)(Ln,{editorView:n,currentLanguageAdapter:a,canSwitchToLanguage:!0,icon:v,toType:"python",displayName:"Python",onAfterToggle:Wm.NOOP}),e[17]=a,e[18]=n,e[19]=S):S=e[19];let k;return e[20]!==s||e[21]!==S||e[22]!==f||e[23]!==b?(k=(0,h.jsxs)("div",{className:s,children:[f,b,S]}),e[20]=s,e[21]=S,e[22]=f,e[23]=b,e[24]=k):k=e[24],k},Ln=t=>{let e=(0,ii.c)(10),{editorView:n,currentLanguageAdapter:r,canSwitchToLanguage:a,icon:o,toType:i,displayName:s,onAfterToggle:c}=t,l;e[0]!==n||e[1]!==c||e[2]!==i?(l=()=>{n&&(Bt(n,{language:i}),c())},e[0]=n,e[1]=c,e[2]=i,e[3]=l):l=e[3];let u=l;if(!a||r===i)return null;let d=`View as ${s}`,p;e[4]!==u||e[5]!==o?(p=(0,h.jsx)(ft,{"data-testid":"language-toggle-button",variant:"text",size:"xs",className:"opacity-80 px-1",onClick:u,children:o}),e[4]=u,e[5]=o,e[6]=p):p=e[6];let f;return e[7]!==d||e[8]!==p?(f=(0,h.jsx)(Jn,{content:d,children:p}),e[7]=d,e[8]=p,e[9]=f):f=e[9],f};var si=ve(),li=({theme:t,showPlaceholder:e,id:n,config:r,code:a,status:o,serializedEditorState:i,setEditorView:s,runCell:c,userConfig:l,editorViewRef:u,editorViewParentRef:d,hidden:p,hasOutput:f,showHiddenCode:m,languageAdapter:y,setLanguageAdapter:b,showLanguageToggles:v=!0,inlineAiTooltip:S,outputArea:k,tooltipParentSelector:_})=>{var di,fi;let[P,A]=jn(ds),T=ns(),{saveOrNameNotebook:G}=Yt(),M=Yn(),{saveCellConfig:ae}=Hn(),O=o==="running"||o==="queued",I=Dn(),le=Gh(),ue=y==="markdown",oe=se(()=>O?!1:M.idle&&l.keymap.destructive_delete?(M.submit([n]),!0):(T({cellId:n}),!0)),ne=se(()=>O?!1:(c(),u.current&&Mr(u.current),!0)),U=se(()=>{let $=!r.hide_code;return ae({configs:{[n]:{hide_code:$}}}),I.updateCellConfig({cellId:n,config:{hide_code:$}}),$}),j=q(Hm),we=q(Fm),de=se(()=>{fs({autoInstantiate:j,createNewCell:I.createNewCell}),r.hide_code||(ae({configs:{[n]:{hide_code:!0}}}),I.updateCellConfig({cellId:n,config:{hide_code:!0}}),I.markUntouched({cellId:n}))}),E=se(()=>{fs({autoInstantiate:j,createNewCell:I.createNewCell})}),C=Gi(l),D=(0,N.useMemo)(()=>{var me;let $=ud({cellId:n,showPlaceholder:e,enableAI:C,cellActions:{...I,afterToggleMarkdown:de,afterToggleSQL:E,onRun:ne,deleteCell:oe,saveNotebook:G,createManyBelow:ee=>{for(let ye of ee.toReversed())I.createNewCell({code:ye,before:!1,cellId:n,skipIfCodeExists:!0})},addOrAppendSetupCell:ee=>{let ye=xt();if(!ye.cellIds.setupCellExists()){I.addSetupCellIfDoesntExist({code:ee});return}let Un=Zf(ye)[Wr],mi=Un?mm(Un):ye.cellData[Wr].code,pi=mi.trim()?`${mi.trimEnd()}
26
26
 
27
- ${ee}`:ee;Un&&cm(Un,pi),I.updateCellCode({cellId:qr,code:pi,formattingChange:!1})},splitCell:le,toggleHideCode:U,aiCellCompletion:()=>{if(!C)return!1;let ee=!1;return A(ye=>(ye==null?void 0:ye.cellId)===n?(ee=!0,null):{cellId:n}),ee}},completionConfig:l.completion,acceptCompletionOnEnter:we,keymapConfig:l.keymap,lspConfig:l.language_servers,theme:t,hotkeys:new Bi(l.keymap.overrides??{}),diagnosticsConfig:l.diagnostics,displayConfig:l.display,inlineAiTooltip:S??((me=l.ai)==null?void 0:me.inline_tooltip)??!1,tooltipParentSelector:_});return $.push(ze.define(ee=>(b(ee.state.field(dt).type),{update(ye){b(ye.state.field(dt).type)}})),R.updateListener.of(ee=>{ee.selectionSet&&ee.state.selection.ranges.some(ye=>ye.from!==ye.to)&&m({focus:!1})}),R.domEventHandlers({focus:()=>{m({focus:!1})}})),$},[n,we,l.keymap,l.completion,l.language_servers,l.display,l.diagnostics,(di=l.ai)==null?void 0:di.inline_tooltip,S,_,C,t,e,I,le,U,oe,ne,A,de,E,b,m,G]),L=Gn()&&Oi(n),fe=se(()=>{if(L){let me=Ar(n,ee=>{I.updateCellCode({cellId:n,code:ee,formattingChange:!0})},a);D.push(me.extension),a=me.code}let $=new R({state:ta.create({doc:a,extensions:D})});s($),L||Bt($,{language:zr($.state).type})}),Je=se(()=>{if(Gt(u.current!==null,"Editor view is not initialized"),L){let $=Ar(n,me=>{I.updateCellCode({cellId:n,code:me,formattingChange:!0})});D.push($.extension)}u.current.dispatch({effects:[ce.reconfigure.of([D]),rm(u.current,{completionConfig:l.completion,hotkeysProvider:new Bi(l.keymap.overrides??{}),lspConfig:{...l.language_servers,diagnostics:l.diagnostics}})]})}),qe=se(()=>{if(Gt(i,"Editor view is not initialized"),L){let me=Ar(n,ee=>{I.updateCellCode({cellId:n,code:ee,formattingChange:!0})},a);D.push(me.extension),a=me.code}let $=new R({state:ta.fromJSON(i,{doc:a,extensions:D},{history:Op})});L||Bt($,{language:zr($.state).type}),s($),I.clearSerializedEditorState({cellId:n})}),[Ve,F]=(0,N.useState)(i!==null);(0,N.useEffect)(()=>{if(u.current!==null){F(!0);return}if(F(!1),i!==null){qe(),F(!0);return}return Mn.request(n,()=>{u.current===null&&(fe(),F(!0))}),()=>Mn.cancel(n)},[n,u,qe,fe,i]),(0,N.useEffect)(()=>{u.current!==null&&Je()},[Je,D,u]),(0,N.useEffect)(()=>()=>{var $;($=u.current)==null||$.destroy(),u.current=null},[u]);let[ie,Y]=sp({rootMargin:"300px 0px",threshold:0});(0,N.useEffect)(()=>{Ve||(Y!=null&&Y.isIntersecting?Mn.prioritize(n):Mn.deprioritize(n))},[Ve,Y==null?void 0:Y.isIntersecting,n]);let vt=kf(n,u),_n="";return ue&&p&&f?_n="h-0 overflow-hidden":p&&(_n="opacity-20 h-8 [&>div.cm-editor]:h-full [&>div.cm-editor]:overflow-hidden [&_.cm-panels]:hidden"),(0,h.jsx)(lf,{cellId:n,aiCompletionCell:P,currentCode:((fi=u.current)==null?void 0:fi.state.doc.toString())??a,currentLanguageAdapter:y,declineChange:se(()=>{var $;A(null),($=u.current)==null||$.focus()}),onChange:se($=>{var me;(me=u.current)==null||me.dispatch({changes:{from:0,to:u.current.state.doc.length,insert:$}})}),acceptChange:se($=>{var me,ee;(me=u.current)==null||me.dispatch({changes:{from:0,to:u.current.state.doc.length,insert:$}}),(ee=u.current)==null||ee.focus(),A(null)}),runCell:ne,outputArea:k,children:(0,h.jsxs)("div",{className:"relative w-full",ref:ie,...vt,children:[Ve?(0,h.jsx)(ci,{className:_n,editorView:u.current,ref:d,hidden:p,showHiddenCode:m}):(0,h.jsx)(Lf,{code:a,className:_n}),!p&&v&&(0,h.jsx)("div",{className:"absolute top-1 right-5",children:(0,h.jsx)(da,{code:a,editorView:u.current,currentLanguageAdapter:y,onAfterToggle:de})})]})})},ci=N.forwardRef((t,e)=>{let n=(0,si.c)(14),{className:r,editorView:a,hidden:o,showHiddenCode:i}=t,s=(0,N.useRef)(null),c,l;n[0]===a?(c=n[1],l=n[2]):(c=()=>{a!==null&&s.current!==null&&s.current.children.length===0&&s.current.append(a.dom)},l=[a,s],n[0]=a,n[1]=c,n[2]=l),(0,N.useEffect)(c,l);let u;n[3]===r?u=n[4]:(u=at("cm mathjax_ignore",r),n[3]=r,n[4]=u);let d;n[5]!==o||n[6]!==i?(d=m=>{o&&i&&(m.stopPropagation(),i({focus:!0}))},n[5]=o,n[6]=i,n[7]=d):d=n[7];let p;n[8]===e?p=n[9]:(p=m=>{e?Kn(e,s)(m):Kn(s)(m)},n[8]=e,n[9]=p);let f;return n[10]!==u||n[11]!==d||n[12]!==p?(f=(0,h.jsx)("div",{className:u,onDoubleClick:d,ref:p,"data-testid":"cell-editor"}),n[10]=u,n[11]=d,n[12]=p,n[13]=f):f=n[13],f});ci.displayName="CellCodeMirrorEditor";function _f(t){let e=n=>{let r=(0,si.c)(5),a=q(Et),[o,i]=jn(pt);if(Gn()&&Oi(n.id)&&(Ym(a.state)||o===void 0)){let c;r[0]===Symbol.for("react.memo_cache_sentinel")?(c=(0,h.jsx)("span",{children:"Waiting for real-time collaboration connection..."}),r[0]=c):c=r[0];let l;return r[1]===i?l=r[2]:(l=(0,h.jsx)("div",{className:"flex h-full w-full items-baseline p-4",children:(0,h.jsxs)(lp,{milliseconds:1e3,fallback:null,children:[c,(0,h.jsx)(ft,{variant:"link",onClick:()=>{i("disabled")},children:"Turn off real-time collaboration"})]})}),r[1]=i,r[2]=l),l}let s;return r[3]===n?s=r[4]:(s=(0,h.jsx)(t,{...n}),r[3]=n,r[4]=s),s};return e.displayName=`WithWaitUntilConnected(${t.displayName})`,e}As=Gn()?_f((0,N.memo)(li)):(0,N.memo)(li)});export{ca as _,Xh as __tla,zt as a,Yn as b,Kn as c,Xn as d,ua as f,xe as g,Ss as h,ks as i,Cs as l,Ts as m,da as n,fa as o,pt as p,Ns as r,Is as s,As as t,Yt as u,Qn as v,Ls as y};
27
+ ${ee}`:ee;Un&&fm(Un,pi),I.updateCellCode({cellId:Wr,code:pi,formattingChange:!1})},splitCell:le,toggleHideCode:U,aiCellCompletion:()=>{if(!C)return!1;let ee=!1;return A(ye=>(ye==null?void 0:ye.cellId)===n?(ee=!0,null):{cellId:n}),ee}},completionConfig:l.completion,acceptCompletionOnEnter:we,keymapConfig:l.keymap,lspConfig:l.language_servers,theme:t,hotkeys:new Bi(l.keymap.overrides??{}),diagnosticsConfig:l.diagnostics,displayConfig:l.display,inlineAiTooltip:S??((me=l.ai)==null?void 0:me.inline_tooltip)??!1,tooltipParentSelector:_});return $.push(ze.define(ee=>(b(ee.state.field(dt).type),{update(ye){b(ye.state.field(dt).type)}})),R.updateListener.of(ee=>{ee.selectionSet&&ee.state.selection.ranges.some(ye=>ye.from!==ye.to)&&m({focus:!1})}),R.domEventHandlers({focus:()=>{m({focus:!1})}})),$},[n,we,l.keymap,l.completion,l.language_servers,l.display,l.diagnostics,(di=l.ai)==null?void 0:di.inline_tooltip,S,_,C,t,e,I,le,U,oe,ne,A,de,E,b,m,G]),L=Bn()&&Li(n),fe=se(()=>{if(L){let me=Ar(n,ee=>{I.updateCellCode({cellId:n,code:ee,formattingChange:!0})},a);D.push(me.extension),a=me.code}let $=new R({state:ta.create({doc:a,extensions:D})});s($),L||Bt($,{language:zr($.state).type})}),Je=se(()=>{if(Gt(u.current!==null,"Editor view is not initialized"),L){let $=Ar(n,me=>{I.updateCellCode({cellId:n,code:me,formattingChange:!0})});D.push($.extension)}u.current.dispatch({effects:[ce.reconfigure.of([D]),im(u.current,{completionConfig:l.completion,hotkeysProvider:new Bi(l.keymap.overrides??{}),lspConfig:{...l.language_servers,diagnostics:l.diagnostics}})]})}),qe=se(()=>{if(Gt(i,"Editor view is not initialized"),L){let me=Ar(n,ee=>{I.updateCellCode({cellId:n,code:ee,formattingChange:!0})},a);D.push(me.extension),a=me.code}let $=new R({state:ta.fromJSON(i,{doc:a,extensions:D},{history:Up})});L||Bt($,{language:zr($.state).type}),s($),I.clearSerializedEditorState({cellId:n})}),[Ve,F]=(0,N.useState)(i!==null);(0,N.useEffect)(()=>{if(u.current!==null){F(!0);return}if(F(!1),i!==null){qe(),F(!0);return}return Mn.request(n,()=>{u.current===null&&(fe(),F(!0))}),()=>Mn.cancel(n)},[n,u,qe,fe,i]),(0,N.useEffect)(()=>{u.current!==null&&Je()},[Je,D,u]),(0,N.useEffect)(()=>()=>{var $;($=u.current)==null||$.destroy(),u.current=null},[u]);let[ie,Y]=cp({rootMargin:"300px 0px",threshold:0});(0,N.useEffect)(()=>{Ve||(Y!=null&&Y.isIntersecting?Mn.prioritize(n):Mn.deprioritize(n))},[Ve,Y==null?void 0:Y.isIntersecting,n]);let vt=Cf(n,u),_n="";return ue&&p&&f?_n="h-0 overflow-hidden":p&&(_n="opacity-20 h-8 [&>div.cm-editor]:h-full [&>div.cm-editor]:overflow-hidden [&_.cm-panels]:hidden"),(0,h.jsx)(cf,{cellId:n,aiCompletionCell:P,currentCode:((fi=u.current)==null?void 0:fi.state.doc.toString())??a,currentLanguageAdapter:y,declineChange:se(()=>{var $;A(null),($=u.current)==null||$.focus()}),onChange:se($=>{var me;(me=u.current)==null||me.dispatch({changes:{from:0,to:u.current.state.doc.length,insert:$}})}),acceptChange:se($=>{var me,ee;(me=u.current)==null||me.dispatch({changes:{from:0,to:u.current.state.doc.length,insert:$}}),(ee=u.current)==null||ee.focus(),A(null)}),runCell:ne,outputArea:k,children:(0,h.jsxs)("div",{className:"relative w-full",ref:ie,...vt,children:[Ve?(0,h.jsx)(ci,{className:_n,editorView:u.current,ref:d,hidden:p,showHiddenCode:m}):(0,h.jsx)(Of,{code:a,className:_n}),!p&&v&&(0,h.jsx)("div",{className:"absolute top-1 right-5",children:(0,h.jsx)(da,{code:a,editorView:u.current,currentLanguageAdapter:y,onAfterToggle:de})})]})})},ci=N.forwardRef((t,e)=>{let n=(0,si.c)(14),{className:r,editorView:a,hidden:o,showHiddenCode:i}=t,s=(0,N.useRef)(null),c,l;n[0]===a?(c=n[1],l=n[2]):(c=()=>{a!==null&&s.current!==null&&s.current.children.length===0&&s.current.append(a.dom)},l=[a,s],n[0]=a,n[1]=c,n[2]=l),(0,N.useEffect)(c,l);let u;n[3]===r?u=n[4]:(u=at("cm mathjax_ignore",r),n[3]=r,n[4]=u);let d;n[5]!==o||n[6]!==i?(d=m=>{o&&i&&(m.stopPropagation(),i({focus:!0}))},n[5]=o,n[6]=i,n[7]=d):d=n[7];let p;n[8]===e?p=n[9]:(p=m=>{e?Kn(e,s)(m):Kn(s)(m)},n[8]=e,n[9]=p);let f;return n[10]!==u||n[11]!==d||n[12]!==p?(f=(0,h.jsx)("div",{className:u,onDoubleClick:d,ref:p,"data-testid":"cell-editor"}),n[10]=u,n[11]=d,n[12]=p,n[13]=f):f=n[13],f});ci.displayName="CellCodeMirrorEditor";function Uf(t){let e=n=>{let r=(0,si.c)(5),a=q(Et),[o,i]=jn(pt);if(Bn()&&Li(n.id)&&(Xm(a.state)||o===void 0)){let c;r[0]===Symbol.for("react.memo_cache_sentinel")?(c=(0,h.jsx)("span",{children:"Waiting for real-time collaboration connection..."}),r[0]=c):c=r[0];let l;return r[1]===i?l=r[2]:(l=(0,h.jsx)("div",{className:"flex h-full w-full items-baseline p-4",children:(0,h.jsxs)(up,{milliseconds:1e3,fallback:null,children:[c,(0,h.jsx)(ft,{variant:"link",onClick:()=>{i("disabled")},children:"Turn off real-time collaboration"})]})}),r[1]=i,r[2]=l),l}let s;return r[3]===n?s=r[4]:(s=(0,h.jsx)(t,{...n}),r[3]=n,r[4]=s),s};return e.displayName=`WithWaitUntilConnected(${t.displayName})`,e}As=Bn()?Uf((0,N.memo)(li)):(0,N.memo)(li)});export{ca as _,Qh as __tla,zt as a,Yn as b,Kn as c,Xn as d,ua as f,xe as g,Ss as h,ks as i,Cs as l,Ts as m,da as n,fa as o,pt as p,Ns as r,Is as s,As as t,Yt as u,Zn as v,Ls as y};