@marimo-team/islands 0.23.2-dev3 → 0.23.2-dev31

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 (509) hide show
  1. package/dist/{ConnectedDataExplorerComponent-P92i6wYx.js → ConnectedDataExplorerComponent-DShCAU06.js} +11 -11
  2. package/dist/{isArrayLikeObject-LXbTYiBa.js → _baseFor-6rr1p10t.js} +43 -215
  3. package/dist/_baseUniq-LxrBY6QK.js +380 -0
  4. package/dist/{any-language-editor-BCvLfvzI.js → any-language-editor-CtNfsWJh.js} +17 -17
  5. package/dist/apl-Y7yFAg6_.js +4 -0
  6. package/dist/{arc-DLJpPF9M.js → arc-CEWBr4jc.js} +2 -2
  7. package/dist/architecture-7HQA4BMR-CATq-AgL.js +6 -0
  8. package/dist/{architectureDiagram-VXUJARFQ-B3YQo9At.js → architectureDiagram-VXUJARFQ-DqqZsWn9.js} +19 -19
  9. package/dist/{arrays-beUWo8RF.js → arrays-Du-jRBAy.js} +1 -1
  10. package/dist/asciiarmor-Bl8b2p0w.js +4 -0
  11. package/dist/asn1-BF6cywqm.js +4 -0
  12. package/dist/{blockDiagram-VD42YOAC-CpQ3TKEN.js → blockDiagram-VD42YOAC-46RbsmrR.js} +53 -53
  13. package/dist/brainfuck-BuqydWe3.js +4 -0
  14. package/dist/{c4Diagram-YG6GDRKO-CZSU4uqU.js → c4Diagram-YG6GDRKO-DQhd8kxL.js} +6 -6
  15. package/dist/{capabilities-BwpUgo4S.js → capabilities-B6ae40r2.js} +1 -1
  16. package/dist/{channel-X3JKk8gE.js → channel-DR5iDSyR.js} +1 -1
  17. package/dist/{chat-ui-CNHw9Osh.js → chat-ui-CVKwVnwD.js} +18 -18
  18. package/dist/{chunk-4BX2VUAB-C2skOn1Z.js → chunk-4BX2VUAB-BChPAwlt.js} +1 -1
  19. package/dist/{chunk-4F5CHEZ2-D5mClyDv.js → chunk-4F5CHEZ2-Bt9N9Ox8.js} +1 -1
  20. package/dist/{chunk-55IACEB6-DRsSqxbU.js → chunk-55IACEB6-wWyiO7Qo.js} +1 -1
  21. package/dist/{chunk-5FQGJX7Z-VIref9gx.js → chunk-5FQGJX7Z-DDhYtPiB.js} +3 -3
  22. package/dist/{chunk-ABZYJK2D-CZYCCtLy.js → chunk-ABZYJK2D--T2L3L-f.js} +3 -3
  23. package/dist/{chunk-ATLVNIR6-DaOzLLgN.js → chunk-ATLVNIR6-CgKfvd-c.js} +2 -2
  24. package/dist/{chunk-B2363JML-Br0eA2T3.js → chunk-B2363JML-Db4oHCZ4.js} +1 -1
  25. package/dist/{chunk-B4BG7PRW-4BjV11Br.js → chunk-B4BG7PRW-J0s6wAkN.js} +7 -7
  26. package/dist/{chunk-CVBHYZKI-BXHgce-x.js → chunk-CVBHYZKI-DqdOZevv.js} +1 -1
  27. package/dist/{chunk-DI55MBZ5-DITY3EyP.js → chunk-DI55MBZ5-33PvMnN-.js} +6 -6
  28. package/dist/{chunk-EXTU4WIE-jUPSAk3i.js → chunk-EXTU4WIE-BspiJIuJ.js} +2 -2
  29. package/dist/{chunk-FMBD7UC4-BjIaI-XO.js → chunk-FMBD7UC4-WPL5C7Yr.js} +1 -1
  30. package/dist/{chunk-FRFDVMJY-DnEvEFRR.js → chunk-FRFDVMJY-DGahYT1S.js} +1 -1
  31. package/dist/{chunk-HN2XXSSU-DAhNp1ig.js → chunk-HN2XXSSU-GC9oeSst.js} +1 -1
  32. package/dist/{chunk-JA3XYJ7Z-BcPEfxk_.js → chunk-JA3XYJ7Z-DCohPV-J.js} +3 -3
  33. package/dist/{chunk-JZLCHNYA-2bnLL3xL.js → chunk-JZLCHNYA-B5kMsVU0.js} +6 -6
  34. package/dist/{chunk-MI3HLSF2-AKwFNP3m.js → chunk-MI3HLSF2-CAUClZTk.js} +1 -1
  35. package/dist/{chunk-N4CR4FBY-CpZSuGSU.js → chunk-N4CR4FBY-DJggWRjm.js} +7 -7
  36. package/dist/{chunk-PL6DKKU2-DnId6G-x.js → chunk-PL6DKKU2-CoF4omiN.js} +1 -1
  37. package/dist/{chunk-QN33PNHL-B9p5ojHB.js → chunk-QN33PNHL-B1NgkDCq.js} +2 -2
  38. package/dist/{chunk-QXUST7PY-Ch6F5Obl.js → chunk-QXUST7PY-CpxfBz2U.js} +10 -10
  39. package/dist/{chunk-QZHKN3VN-BK9tlbfw.js → chunk-QZHKN3VN-cTJMhkeY.js} +1 -1
  40. package/dist/{chunk-S3R3BYOJ-B0UOFJwq.js → chunk-S3R3BYOJ-DYg3yWKI.js} +8 -8
  41. package/dist/{chunk-SJTYNZTY-BsBZnJUj.js → chunk-SJTYNZTY-dW9OU4qd.js} +1 -1
  42. package/dist/{chunk-TCCFYFTB-Clbl-fTg.js → chunk-TCCFYFTB-vYPbT9fw.js} +1552 -345
  43. package/dist/{chunk-TQ3KTPDO-CFkSQ30e.js → chunk-TQ3KTPDO-Dykudlbk.js} +1 -1
  44. package/dist/{chunk-TZMSLE5B-D45397J2.js → chunk-TZMSLE5B-JAnY0w_r.js} +3 -3
  45. package/dist/{chunk-UMXZTB3W-D-A834Bq.js → chunk-UMXZTB3W-BVL6vS7M.js} +1 -1
  46. package/dist/classDiagram-2ON5EDUG-Be541Bqx.js +30 -0
  47. package/dist/classDiagram-v2-WZHVMYZB-CFtNZ66L.js +30 -0
  48. package/dist/{clike-B90WKs4D.js → clike-D8Yzpo0X.js} +1 -1
  49. package/dist/clojure-CAHAWK5H.js +4 -0
  50. package/dist/{clone-DZFQCtFJ.js → clone-0b7yW5QV.js} +1 -1
  51. package/dist/cmake-BogDc4GF.js +4 -0
  52. package/dist/cobol-DRnpeU4u.js +4 -0
  53. package/dist/{code-block-37QAKDTI-FQEoMOU1.js → code-block-37QAKDTI-DP_hitFg.js} +1 -1
  54. package/dist/coffeescript-9MgX7RN8.js +4 -0
  55. package/dist/commonlisp-CVz2KONN.js +4 -0
  56. package/dist/{constants-CvyfaCvs.js → constants-C2U1Bmny.js} +4 -4
  57. package/dist/{cose-bilkent-S5V4N54A-DvCk1aXi.js → cose-bilkent-S5V4N54A-CFYo67PX.js} +2 -2
  58. package/dist/crystal-td8mwLG5.js +4 -0
  59. package/dist/css-BK451dBn.js +4 -0
  60. package/dist/cypher-DuNPR6Ie.js +4 -0
  61. package/dist/d-DL6oP_-2.js +4 -0
  62. package/dist/{dagre-6UL2VRFP-OMItEBnY.js → dagre-6UL2VRFP-On1-AgLm.js} +102 -103
  63. package/dist/{dagre-QVd-lCXU.js → dagre-Bc6NAu6c.js} +105 -39
  64. package/dist/{data-grid-overlay-editor-C_sKPpLu.js → data-grid-overlay-editor-B1mPZ5v3.js} +2 -2
  65. package/dist/{diagram-PSM6KHXK-CkKbohWI.js → diagram-PSM6KHXK-B2x0d9iz.js} +22 -22
  66. package/dist/{diagram-QEK2KX5R-DjUMpVcx.js → diagram-QEK2KX5R-C6yZT5O0.js} +17 -17
  67. package/dist/{diagram-S2PKOQOG-b-c0d-wZ.js → diagram-S2PKOQOG-DDohjXNG.js} +17 -17
  68. package/dist/diff-D9CplOBj.js +4 -0
  69. package/dist/{dist-Doy0mQDg.js → dist-4BuWWZtg.js} +2 -2
  70. package/dist/{dist-DlSUOIm9.js → dist-5VO3ibto.js} +1 -1
  71. package/dist/dist-B9hNC-E9.js +5 -0
  72. package/dist/{dist-DJKubHDd.js → dist-BH67T-KO.js} +1 -1
  73. package/dist/{dist-CNF0QBLR.js → dist-BI11IEaj.js} +1 -1
  74. package/dist/dist-BK1_hXFC.js +5 -0
  75. package/dist/{dist-ej6AQKaS.js → dist-BKGmoFSu.js} +1 -1
  76. package/dist/{dist-CTwGwcQ8.js → dist-BKKbDTix.js} +2 -2
  77. package/dist/dist-BSGRbj-N.js +8 -0
  78. package/dist/{dist-VqF3W_ue.js → dist-BVdq25Pp.js} +2 -2
  79. package/dist/{dist-BvhGByxL.js → dist-BWmwgyyt.js} +4 -4
  80. package/dist/{dist-DUFd1bhm.js → dist-BmkybMad.js} +1 -1
  81. package/dist/{dist-DbnBiLNH.js → dist-Bo8Q2NZ6.js} +3 -3
  82. package/dist/{dist-DJ9F1eHs.js → dist-BrRkENbS.js} +2 -2
  83. package/dist/{dist-DFK94vuS.js → dist-C-Mi2f2L.js} +2 -2
  84. package/dist/dist-C5i3bD88.js +5 -0
  85. package/dist/dist-C9mOdSQc.js +5 -0
  86. package/dist/{dist--6TSlp8H.js → dist-CM55yvVz.js} +1 -1
  87. package/dist/{dist-CIB8w0Fl.js → dist-CWin4kuc.js} +2 -2
  88. package/dist/{dist-Ci0CXEFt.js → dist-Cf1__Ezo.js} +1 -1
  89. package/dist/{dist-CcMfr7jD.js → dist-ChYkaQZ9.js} +1 -1
  90. package/dist/{dist-CFKdzOIu.js → dist-Cil0kZOw.js} +2 -2
  91. package/dist/{dist-LhQNUe5A.js → dist-CjFd_clf.js} +3 -3
  92. package/dist/{dist-DD_cYHOl.js → dist-CtliEIOC.js} +2 -2
  93. package/dist/{dist-B43sbpd0.js → dist-CuT7pAjI.js} +3 -3
  94. package/dist/dist-DAmwszSZ.js +8 -0
  95. package/dist/dist-DGgzl61R.js +5 -0
  96. package/dist/{dist-DLafRu9s.js → dist-DH-coTYX.js} +2 -2
  97. package/dist/{dist-CxZvoNao.js → dist-DPAK3Dpl.js} +44 -31
  98. package/dist/{dist-DGNtjMZu.js → dist-DViRvB3t.js} +1 -1
  99. package/dist/{dist-m9tsXsFf.js → dist-DcB6g7XM.js} +2 -2
  100. package/dist/dist-DnGRs0FR.js +5 -0
  101. package/dist/dist-GBXFGpIo.js +8 -0
  102. package/dist/dist-H433csIN.js +8 -0
  103. package/dist/{dist-DpkJHKB8.js → dist-HNoCppvN.js} +2 -2
  104. package/dist/{dist-Bfp1XXWt.js → dist-I9ZUr7P2.js} +5 -5
  105. package/dist/dist-ItCg4aSC.js +6 -0
  106. package/dist/dist-Mi3Li5U2.js +6 -0
  107. package/dist/{dist-BrxqmS9Q.js → dist-QzlYe8XT.js} +4 -4
  108. package/dist/{dist-BjDuO5JW.js → dist-ZJ4KZJv-.js} +1 -1
  109. package/dist/dist-_-4VPi_T.js +5 -0
  110. package/dist/{dist-tGk0aZ--.js → dist-qpWXd9bI.js} +2 -2
  111. package/dist/{dist-DAfcmt-d.js → dist-rdefyFzZ.js} +2 -2
  112. package/dist/dist-tIur4wUM.js +5 -0
  113. package/dist/{dist-C4bq5Ioy.js → dist-vkjbtmSV.js} +2 -2
  114. package/dist/{dockerfile-DfXhjEUG.js → dockerfile-m9DOSpI5.js} +1 -1
  115. package/dist/dtd-Ce1c54UO.js +4 -0
  116. package/dist/dylan-B43wjIwg.js +4 -0
  117. package/dist/ecl-DK-fZmir.js +4 -0
  118. package/dist/eiffel-CNuvvPqD.js +4 -0
  119. package/dist/elm-DZEkBjgQ.js +4 -0
  120. package/dist/{erDiagram-Q2GNP2WA-CDhLaOZ1.js → erDiagram-Q2GNP2WA-C7-L36q5.js} +15 -15
  121. package/dist/erlang-Dw4PDZV_.js +4 -0
  122. package/dist/{esm-CDHI9cuO.js → esm-DGjaY9EX.js} +2 -2
  123. package/dist/{esm-CD1iby2n.js → esm-i3cb1Eej.js} +105 -105
  124. package/dist/factor-C9JRv63g.js +4 -0
  125. package/dist/{factor--4HHM8Rw.js → factor-Nva0iSXt.js} +1 -1
  126. package/dist/flatten-BOUk2Lcs.js +8 -0
  127. package/dist/{flowDiagram-NV44I4VS-BDi4O4CL.js → flowDiagram-NV44I4VS-CJW83FSj.js} +17 -17
  128. package/dist/forth-CKhoqn4e.js +4 -0
  129. package/dist/fortran-Do51bToK.js +4 -0
  130. package/dist/{ganttDiagram-JELNMOA3-BpZE6kVp.js → ganttDiagram-JELNMOA3-CwBjBQUx.js} +10 -10
  131. package/dist/gas-BZfL3Uwh.js +4 -0
  132. package/dist/gherkin-BwQh4ehw.js +4 -0
  133. package/dist/{gitGraph-G5XIXVHT-B_c6xFJv.js → gitGraph-G5XIXVHT-DTpIjETB.js} +3 -3
  134. package/dist/{gitGraphDiagram-V2S2FVAM-iQnXzbPM.js → gitGraphDiagram-V2S2FVAM-CmTxe2C4.js} +17 -17
  135. package/dist/{glide-data-editor-BFqEJGJW.js → glide-data-editor-BaAX1uv-.js} +8 -8
  136. package/dist/graphlib-DTP9cqCT.js +359 -0
  137. package/dist/groovy-CG5kCGiv.js +4 -0
  138. package/dist/{hasIn-DnfJcYpY.js → hasIn-MXhEnf0q.js} +3 -3
  139. package/dist/haskell-BKii9uTg.js +4 -0
  140. package/dist/haxe-Bsz30J8x.js +5 -0
  141. package/dist/idl-BlxgaPKj.js +4 -0
  142. package/dist/{info-VBDWY6EO-BTyzxmhr.js → info-VBDWY6EO-DcCsz2w_.js} +3 -3
  143. package/dist/infoDiagram-HS3SLOUP-Dz0ivKcB.js +30 -0
  144. package/dist/{input-CSVEkmaZ.js → input-L-W-RdiE.js} +4 -4
  145. package/dist/{isEmpty-B7FX9wKt.js → isEmpty-BkHRaD4A.js} +9 -9
  146. package/dist/{isSymbol-DCbjQG_U.js → isSymbol-DjQk-23F.js} +1 -1
  147. package/dist/javascript-SNhUvTcB.js +4 -0
  148. package/dist/{journeyDiagram-XKPGCS4Q-ClPC94aN.js → journeyDiagram-XKPGCS4Q-8XpEA5Ko.js} +7 -7
  149. package/dist/julia-CGZzaDyk.js +4 -0
  150. package/dist/{kanban-definition-3W4ZIXB7-DHEAKdZt.js → kanban-definition-3W4ZIXB7-C-sC72Q7.js} +12 -12
  151. package/dist/{katex-CkLtKXwv.js → katex-Ckd8lBne.js} +1 -1
  152. package/dist/{label-BebYlsDV.js → label-DAH3oYXB.js} +1 -1
  153. package/dist/{line-PAEmCpyD.js → line-LK_5q2B9.js} +3 -3
  154. package/dist/{linear-v57w-fIs.js → linear-CJ6ctpF3.js} +4 -4
  155. package/dist/livescript-Cj6cX-Ys.js +4 -0
  156. package/dist/{loader-ZFbGsMN1.js → loader-D9ktSJS7.js} +1 -1
  157. package/dist/lua-BcVHrD8f.js +4 -0
  158. package/dist/main.js +456 -361
  159. package/dist/mathematica-DLY8ZGoJ.js +4 -0
  160. package/dist/mbox-BNTsMWS5.js +4 -0
  161. package/dist/{memoize-CSTI9eOX.js → memoize-DxdGWSJ6.js} +1 -1
  162. package/dist/merge-BEePrO2O.js +222 -0
  163. package/dist/{mermaid-4DMBBIKO-BjtqcdX4.js → mermaid-4DMBBIKO-DRXAUrhi.js} +1 -1
  164. package/dist/{mermaid-BbhZNQeB.js → mermaid-DBH43AFh.js} +45 -45
  165. package/dist/{mermaid-parser.core-ntCgyx0x.js → mermaid-parser.core-Bn1MCv1H.js} +8 -8
  166. package/dist/{mhchem-BuY5LDSq.js → mhchem-DAXq6Zll.js} +1 -1
  167. package/dist/min-RKgAiXUl.js +38 -0
  168. package/dist/{mindmap-definition-VGOIOE7T-CxEUZZvY.js → mindmap-definition-VGOIOE7T-f-YOgrj9.js} +14 -14
  169. package/dist/mirc-oyeOBir2.js +4 -0
  170. package/dist/mllike-ByxznKQw.js +6 -0
  171. package/dist/modelica-DNLhoyD8.js +4 -0
  172. package/dist/mscgen-DkZltsli.js +6 -0
  173. package/dist/mumps-TTiQB1xv.js +4 -0
  174. package/dist/now-BUO7mCs3.js +31 -0
  175. package/dist/{nsis-B6EN9LWI.js → nsis-DgKbDAVQ.js} +1 -1
  176. package/dist/nsis-RT1O1Ph8.js +4 -0
  177. package/dist/ntriples-CxsCiZ7Z.js +4 -0
  178. package/dist/{number-overlay-editor-B02-t7Ar.js → number-overlay-editor-BbN3lvDI.js} +1 -1
  179. package/dist/octave-CkLh5tpW.js +4 -0
  180. package/dist/{once-C_TIu-kR.js → once-CZno0h-b.js} +1 -1
  181. package/dist/{ordinal-D7fa8Sey.js → ordinal-COPPjmMz.js} +1 -1
  182. package/dist/oz-yI7U9eVH.js +4 -0
  183. package/dist/{packet-DYOGHKS2-BhvnpoGi.js → packet-DYOGHKS2-BpYOwBIl.js} +3 -3
  184. package/dist/pascal-CQK8sfDe.js +4 -0
  185. package/dist/perl-BEG8-kZl.js +4 -0
  186. package/dist/pick-M816gWrv.js +43 -0
  187. package/dist/{pie-VRWISCQL-dILuA3iG.js → pie-VRWISCQL-narEdAtC.js} +3 -3
  188. package/dist/{pieDiagram-ADFJNKIX-U3LrUqAS.js → pieDiagram-ADFJNKIX-e7V1zvfH.js} +22 -22
  189. package/dist/pig-DLLCqQaR.js +4 -0
  190. package/dist/powershell-CtjMkVO_.js +4 -0
  191. package/dist/{precisionRound-CGLoV26P.js → precisionRound-Duzbr5ur.js} +1 -1
  192. package/dist/{process-output-Bekznt_B.js → process-output-BX1UfKIX.js} +2298 -2284
  193. package/dist/properties-Domeb57z.js +4 -0
  194. package/dist/protobuf-0yk85TV6.js +4 -0
  195. package/dist/pug-B-BiNkM-.js +4 -0
  196. package/dist/{pug-xrm7jQ2R.js → pug-CTpLcc1b.js} +1 -1
  197. package/dist/puppet-C0N4vevK.js +4 -0
  198. package/dist/python-BZFa8G3C.js +4 -0
  199. package/dist/q-gcj7dgJv.js +4 -0
  200. package/dist/{quadrantDiagram-AYHSOK5B-BVWuq-3R.js → quadrantDiagram-AYHSOK5B-DbJIgiah.js} +5 -5
  201. package/dist/r-DavzTuPU.js +4 -0
  202. package/dist/{radar-ZZBFDIW7-DwFrOJDj.js → radar-ZZBFDIW7-CZ6uVl9x.js} +3 -3
  203. package/dist/react-vega-BFLRzgl7.js +9 -0
  204. package/dist/{react-vega-DBwal82H.js → react-vega-Ov9UeJeF.js} +18 -18
  205. package/dist/{requirementDiagram-UZGBJVZJ-D0zpQnKC.js → requirementDiagram-UZGBJVZJ-DDTA2gwv.js} +14 -14
  206. package/dist/rpm-bPj31ya8.js +5 -0
  207. package/dist/ruby-3UzzijjE.js +4 -0
  208. package/dist/{sankeyDiagram-TZEHDZUN-CExy1joT.js → sankeyDiagram-TZEHDZUN-TOGeZF4f.js} +5 -5
  209. package/dist/sas-D9upmCP9.js +4 -0
  210. package/dist/scheme-DqWYzIFR.js +4 -0
  211. package/dist/{sequenceDiagram-WL72ISMW-D1BJxLjH.js → sequenceDiagram-WL72ISMW-XZ-vAxdG.js} +8 -8
  212. package/dist/shell-w63nkNmU.js +4 -0
  213. package/dist/sieve-Dz_ISrl6.js +4 -0
  214. package/dist/{slides-component-DLxprlqo.js → slides-component-B9NXzezL.js} +1 -1
  215. package/dist/smalltalk-BXZ14pkr.js +4 -0
  216. package/dist/sparql-Boyc0wkb.js +4 -0
  217. package/dist/{spec-3EPbPQZH.js → spec-Budha9Vn.js} +2 -2
  218. package/dist/{src-DbP20yFZ.js → src-szye8OCw.js} +1 -1
  219. package/dist/{stateDiagram-FKZM4ZOC-B1S8jGMn.js → stateDiagram-FKZM4ZOC-B72-jYlX.js} +19 -19
  220. package/dist/stateDiagram-v2-4FDKWEC3-Up7GUIPl.js +29 -0
  221. package/dist/{step-qd10PbTJ.js → step-1PmBKr2y.js} +1 -1
  222. package/dist/stex-CZyTRGVB.js +4 -0
  223. package/dist/stylus-m9L_f1X1.js +4 -0
  224. package/dist/swift-C4TGn99K.js +4 -0
  225. package/dist/tcl-D_L0cfYZ.js +4 -0
  226. package/dist/textile-BAofYdKN.js +4 -0
  227. package/dist/{time-Bdnxi22U.js → time-B8tcX_hU.js} +4 -4
  228. package/dist/{timeline-definition-IT6M3QCI-BDT9JAmn.js → timeline-definition-IT6M3QCI-CStBX2Oa.js} +4 -4
  229. package/dist/{toDate-B1AzlBoW.js → toDate-Cqrm-UC4.js} +2 -2
  230. package/dist/toml-DCDKACLL.js +4 -0
  231. package/dist/{treemap-GDKQZRPO-bx2ngsgN.js → treemap-GDKQZRPO-BxK9LkTz.js} +3 -3
  232. package/dist/troff-JHOU2VZK.js +4 -0
  233. package/dist/ttcn-Cxhng3qq.js +4 -0
  234. package/dist/ttcn-cfg-DJgUIu5n.js +4 -0
  235. package/dist/turtle-DKYkKZjV.js +4 -0
  236. package/dist/{types-pwjdK009.js → types-DEY2byth.js} +1 -1
  237. package/dist/{useAsyncData-BL98MPIy.js → useAsyncData-B1v_9k4L.js} +2 -2
  238. package/dist/{useDeepCompareMemoize-CsyOnnjc.js → useDeepCompareMemoize-ToNUMW7X.js} +3 -3
  239. package/dist/{useIframeCapabilities-CsTUYYj7.js → useIframeCapabilities-WKJHoHW-.js} +1 -1
  240. package/dist/{useLifecycle-DrGGIsgp.js → useLifecycle-DdNGMIjn.js} +1 -1
  241. package/dist/{useTheme-CzwDokKe.js → useTheme-CfzcSQtz.js} +1 -1
  242. package/dist/vb-C9rpn9hN.js +4 -0
  243. package/dist/vbscript-BQ7rxQU0.js +4 -0
  244. package/dist/{vega-component-KBJXEDZz.js → vega-component-CQ88A9vN.js} +11 -11
  245. package/dist/{vega-loader.browser-DqEcFOPD.js → vega-loader.browser-hMqVC9bf.js} +3 -3
  246. package/dist/velocity-C8WXmzLz.js +4 -0
  247. package/dist/verilog-BUXJEyEq.js +4 -0
  248. package/dist/vhdl-C18YIXfF.js +4 -0
  249. package/dist/webidl-D97EKzDx.js +4 -0
  250. package/dist/xquery-BZM6yzG2.js +4 -0
  251. package/dist/{xychartDiagram-PRI3JC2R-CuAZiqHS.js → xychartDiagram-PRI3JC2R-DCtrGSHF.js} +13 -13
  252. package/dist/yacas-CXKck-Ok.js +4 -0
  253. package/dist/z80-BbF6ykWc.js +4 -0
  254. package/package.json +2 -2
  255. package/src/components/data-table/TableBottomBar.tsx +5 -1
  256. package/src/components/data-table/__tests__/filters.test.ts +304 -0
  257. package/src/components/data-table/__tests__/pagination.test.tsx +46 -132
  258. package/src/components/data-table/column-explorer-panel/column-explorer.tsx +1 -1
  259. package/src/components/data-table/filters.ts +87 -33
  260. package/src/components/data-table/pagination.tsx +189 -76
  261. package/src/components/data-table/types.ts +0 -4
  262. package/src/components/editor/Output.tsx +1 -1
  263. package/src/components/editor/actions/useNotebookActions.tsx +12 -0
  264. package/src/components/editor/cell/code/cell-editor.tsx +1 -0
  265. package/src/core/cells/__tests__/apply-transaction.test.ts +42 -0
  266. package/src/core/cells/__tests__/logs.test.ts +101 -0
  267. package/src/core/cells/logs.ts +9 -1
  268. package/src/core/codemirror/__tests__/__snapshots__/setup.test.ts.snap +4 -14
  269. package/src/core/codemirror/cells/extensions.ts +0 -4
  270. package/src/core/codemirror/keymaps/keymaps.ts +69 -2
  271. package/src/core/codemirror/language/languages/python.ts +9 -9
  272. package/src/core/codemirror/lsp/__tests__/notebook-lsp.test.ts +8 -1
  273. package/src/core/codemirror/lsp/federated-lsp.ts +2 -2
  274. package/src/core/codemirror/lsp/notebook-lsp.ts +2 -2
  275. package/src/core/codemirror/lsp/utils.ts +21 -6
  276. package/src/core/constants.ts +1 -0
  277. package/src/plugins/impl/DataTablePlugin.tsx +7 -20
  278. package/src/plugins/impl/TabsPlugin.tsx +18 -12
  279. package/src/plugins/impl/data-frames/DataFramePlugin.tsx +4 -4
  280. package/src/plugins/impl/data-frames/schema.ts +41 -9
  281. package/src/plugins/impl/data-frames/utils/operators.ts +2 -0
  282. package/src/plugins/impl/matplotlib/matplotlib-renderer.ts +16 -0
  283. package/dist/_basePickBy-Sow3pJjS.js +0 -41
  284. package/dist/_baseUniq-C87CckHL.js +0 -518
  285. package/dist/apl-C1bki_dE.js +0 -4
  286. package/dist/architecture-7HQA4BMR-BHdkAMvZ.js +0 -6
  287. package/dist/asciiarmor-BdlkCCRr.js +0 -4
  288. package/dist/asn1-CvE30hox.js +0 -4
  289. package/dist/brainfuck-BalwWy1a.js +0 -4
  290. package/dist/classDiagram-2ON5EDUG-C8-zE3Zv.js +0 -30
  291. package/dist/classDiagram-v2-WZHVMYZB-DrmbGANl.js +0 -30
  292. package/dist/clojure-CUC2I1hM.js +0 -4
  293. package/dist/cmake-8PcMxXnB.js +0 -4
  294. package/dist/cobol-DkkkDz5v.js +0 -4
  295. package/dist/coffeescript-CCupxOZf.js +0 -4
  296. package/dist/commonlisp-DhUfGX6b.js +0 -4
  297. package/dist/crystal-DSaw6rFQ.js +0 -4
  298. package/dist/css-D4QDewkG.js +0 -4
  299. package/dist/cypher-CrYVqw_F.js +0 -4
  300. package/dist/d-Cr3H3pPx.js +0 -4
  301. package/dist/diff-ODiZJGls.js +0 -4
  302. package/dist/dist-7K5doRvB.js +0 -6
  303. package/dist/dist-B6I_A2-E.js +0 -8
  304. package/dist/dist-BEQsmaZY.js +0 -5
  305. package/dist/dist-BasY2RHp.js +0 -8
  306. package/dist/dist-Bosc00dY.js +0 -5
  307. package/dist/dist-CQMZOn-_.js +0 -8
  308. package/dist/dist-CViQhWZ8.js +0 -5
  309. package/dist/dist-Cz6rLfwY.js +0 -5
  310. package/dist/dist-D8eq8st3.js +0 -6
  311. package/dist/dist-DM1UDXdl.js +0 -5
  312. package/dist/dist-DNrtWPgS.js +0 -5
  313. package/dist/dist-V7q2qnpA.js +0 -5
  314. package/dist/dist-a5_hPgu2.js +0 -8
  315. package/dist/dist-uVyZcV1-.js +0 -5
  316. package/dist/dtd-C-t2Rk7F.js +0 -4
  317. package/dist/dylan-B4ctBLGp.js +0 -4
  318. package/dist/ecl-DqWfymni.js +0 -4
  319. package/dist/eiffel-DjBKKAr7.js +0 -4
  320. package/dist/elm--fxeC0FV.js +0 -4
  321. package/dist/erlang-CaKXCX6H.js +0 -4
  322. package/dist/factor-DlLO5EFS.js +0 -4
  323. package/dist/forth-rOO6LVj_.js +0 -4
  324. package/dist/fortran-CUg15VGR.js +0 -4
  325. package/dist/gas-BMRJspiW.js +0 -4
  326. package/dist/gherkin-DRxzijZU.js +0 -4
  327. package/dist/graphlib-BV1_gi0C.js +0 -226
  328. package/dist/groovy-BmrQ8pUP.js +0 -4
  329. package/dist/haskell-BuaYfKOz.js +0 -4
  330. package/dist/haxe-DcH9eA0a.js +0 -5
  331. package/dist/idl-DGlcm4Ls.js +0 -4
  332. package/dist/infoDiagram-HS3SLOUP-OYrX6uO3.js +0 -30
  333. package/dist/javascript-CeTk7rzr.js +0 -4
  334. package/dist/julia-BoP_q1gm.js +0 -4
  335. package/dist/livescript-B7IMN-ba.js +0 -4
  336. package/dist/lua-q1InavKb.js +0 -4
  337. package/dist/mathematica-DvR8-_EI.js +0 -4
  338. package/dist/mbox-7h5MNBS_.js +0 -4
  339. package/dist/merge-CVhG7q_o.js +0 -51
  340. package/dist/min-Ds3gG0Ff.js +0 -96
  341. package/dist/mirc-D-XM8A5c.js +0 -4
  342. package/dist/mllike-BQGkkbmf.js +0 -6
  343. package/dist/modelica-D_yRj_WU.js +0 -4
  344. package/dist/mscgen-B-rltAjp.js +0 -6
  345. package/dist/mumps-2kh8TU2b.js +0 -4
  346. package/dist/now-nrrrOr01.js +0 -7
  347. package/dist/nsis-CtusEqwb.js +0 -4
  348. package/dist/ntriples-BdAXw6zV.js +0 -4
  349. package/dist/octave-CsNFmVp5.js +0 -4
  350. package/dist/oz-odIXCrKd.js +0 -4
  351. package/dist/pascal-B9Mfk3Fo.js +0 -4
  352. package/dist/perl-C48inLcz.js +0 -4
  353. package/dist/pig-uwRtAssU.js +0 -4
  354. package/dist/powershell-CXqlca-i.js +0 -4
  355. package/dist/properties-D6Zu1rpK.js +0 -4
  356. package/dist/protobuf-BlNNWZaR.js +0 -4
  357. package/dist/pug-DytcK7bv.js +0 -4
  358. package/dist/puppet-lJ8Ok3iY.js +0 -4
  359. package/dist/python-cMaF7kUp.js +0 -4
  360. package/dist/q-Dgt2HYQh.js +0 -4
  361. package/dist/r-Bm4S4awf.js +0 -4
  362. package/dist/range-fJeId9Ri.js +0 -30
  363. package/dist/react-vega-BkjdpVsR.js +0 -9
  364. package/dist/rpm-_8LbzMVc.js +0 -5
  365. package/dist/ruby-Cr8IJ5VZ.js +0 -4
  366. package/dist/sas-CFcSfo2_.js +0 -4
  367. package/dist/scheme-N4XRoKgc.js +0 -4
  368. package/dist/shell-B4L7f_ds.js +0 -4
  369. package/dist/sieve-UI6J3Gm0.js +0 -4
  370. package/dist/smalltalk-BuaPZAZU.js +0 -4
  371. package/dist/sparql-1rKrq463.js +0 -4
  372. package/dist/stateDiagram-v2-4FDKWEC3-BH5ozUbc.js +0 -29
  373. package/dist/stex-CQDv3aS8.js +0 -4
  374. package/dist/stylus-DvSovJEP.js +0 -4
  375. package/dist/swift-D-_E7Yyb.js +0 -4
  376. package/dist/tcl-Di5sAVHN.js +0 -4
  377. package/dist/textile-Benwt66z.js +0 -4
  378. package/dist/toNumber-55tjPCWr.js +0 -28
  379. package/dist/toml-CeOvPOkY.js +0 -4
  380. package/dist/troff-DJN9hfgu.js +0 -4
  381. package/dist/ttcn-DQW2Psjf.js +0 -4
  382. package/dist/ttcn-cfg-zFG_MNpg.js +0 -4
  383. package/dist/turtle-DHRyNlSc.js +0 -4
  384. package/dist/vb-CXWH9DD-.js +0 -4
  385. package/dist/vbscript-qr8qVck5.js +0 -4
  386. package/dist/velocity-C_9pUJRx.js +0 -4
  387. package/dist/verilog-DxBstgBa.js +0 -4
  388. package/dist/vhdl-odUxAbE6.js +0 -4
  389. package/dist/webidl-Dfn5Rku4.js +0 -4
  390. package/dist/xquery-CrJs6SXr.js +0 -4
  391. package/dist/yacas-B-uDDLZe.js +0 -4
  392. package/dist/z80-51gxgAXE.js +0 -4
  393. /package/dist/{ImageComparisonComponent-HF4AY8_n.js → ImageComparisonComponent-BV1jHxOP.js} +0 -0
  394. /package/dist/{Plot-CK0oVgQL.js → Plot-DsEy3ro_.js} +0 -0
  395. /package/dist/{apl-Oc3bL26_.js → apl-BqjtmlWW.js} +0 -0
  396. /package/dist/{array-ByIS7m3B.js → array-D7wW5QoO.js} +0 -0
  397. /package/dist/{asciiarmor-DTbPh2VI.js → asciiarmor-D9C9bbeV.js} +0 -0
  398. /package/dist/{asn1-CGhwu1Ri.js → asn1-D_zR1ubK.js} +0 -0
  399. /package/dist/{asterisk-BApaB_8m.js → asterisk-B0dLLA8Z.js} +0 -0
  400. /package/dist/{brainfuck-CA0L8lRq.js → brainfuck-79SC7EYA.js} +0 -0
  401. /package/dist/{chunk-DR5Q36YT-C40cYcy5.js → chunk-DR5Q36YT-BxPcQ21t.js} +0 -0
  402. /package/dist/{click-outside-container-D3t6KDni.js → click-outside-container-BHqXZnKi.js} +0 -0
  403. /package/dist/{clike-CEtUBPHD.js → clike-DFDX2jWq.js} +0 -0
  404. /package/dist/{clojure-BszjvdGo.js → clojure-Bb3Od9By.js} +0 -0
  405. /package/dist/{cmake-B2Gvps8b.js → cmake-DYGUYEtU.js} +0 -0
  406. /package/dist/{cobol-DuMch8nn.js → cobol-CcWmcAFT.js} +0 -0
  407. /package/dist/{coffeescript-L9aKXVsJ.js → coffeescript-BVa1qoL6.js} +0 -0
  408. /package/dist/{colors-IJ-2cn2o.js → colors-6DRQ0kEF.js} +0 -0
  409. /package/dist/{common-keywords-CsU75Ked.js → common-keywords-Bz8dNfWa.js} +0 -0
  410. /package/dist/{commonlisp-CrtdssxB.js → commonlisp-zi51jgUH.js} +0 -0
  411. /package/dist/{crystal-vvNY0LpY.js → crystal-QjpegJHM.js} +0 -0
  412. /package/dist/{css-B1GdzqT1.js → css-B_GfJtcK.js} +0 -0
  413. /package/dist/{cypher-BtZvV7bW.js → cypher-BVuYJpGf.js} +0 -0
  414. /package/dist/{cytoscape.esm-CRfNlsPy.js → cytoscape.esm-BYAuS6uS.js} +0 -0
  415. /package/dist/{d-B0UN3V-Z.js → d-BT97RiQI.js} +0 -0
  416. /package/dist/{defaultLocale-Bxoo2-30.js → defaultLocale-B_A76Zpk.js} +0 -0
  417. /package/dist/{defaultLocale-qS7DaAmi.js → defaultLocale-DjFHq3Xk.js} +0 -0
  418. /package/dist/{diff-DOpgjj1W.js → diff-CHd93v7L.js} +0 -0
  419. /package/dist/{dist-BjWd_Ei9.js → dist-CqR8FBcH.js} +0 -0
  420. /package/dist/{dtd-Ctnjxrle.js → dtd-akLFIRuZ.js} +0 -0
  421. /package/dist/{duckdb-keywords-DjrZdCO2.js → duckdb-keywords-CQAIHMbC.js} +0 -0
  422. /package/dist/{dylan-DFXkoaZy.js → dylan-Iy-rgNOc.js} +0 -0
  423. /package/dist/{ebnf-XJCIl_em.js → ebnf-CTkZpZPT.js} +0 -0
  424. /package/dist/{ecl-C1NExZip.js → ecl-BhUXC_aR.js} +0 -0
  425. /package/dist/{eiffel-uXVGgleg.js → eiffel-DIRAlWPD.js} +0 -0
  426. /package/dist/{elm-CBOFnnib.js → elm-BDgVzkJ4.js} +0 -0
  427. /package/dist/{emotion-is-prop-valid.esm-CJVjyntJ.js → emotion-is-prop-valid.esm-DdzHpbbG.js} +0 -0
  428. /package/dist/{erlang-DMnrT8XK.js → erlang-Djcs_NwB.js} +0 -0
  429. /package/dist/{esm-D4gzqVRq.js → esm-BRwAuUu2.js} +0 -0
  430. /package/dist/{fcl-fh4Mj0bc.js → fcl-OXoT8w4k.js} +0 -0
  431. /package/dist/{forth-DDpxS4nw.js → forth-c_NTahPv.js} +0 -0
  432. /package/dist/{fortran-B6uYqQMz.js → fortran-Bpxt27dn.js} +0 -0
  433. /package/dist/{gas-BKnWzuFz.js → gas-RVBts6ZK.js} +0 -0
  434. /package/dist/{gherkin-pBt0wT4X.js → gherkin-Hf6PTauh.js} +0 -0
  435. /package/dist/{groovy-DKsn4ppB.js → groovy-CKjO-cRi.js} +0 -0
  436. /package/dist/{haskell-BJVBJQcy.js → haskell-DC1Gan6v.js} +0 -0
  437. /package/dist/{haxe-rLN5UZU5.js → haxe-Bpne--ot.js} +0 -0
  438. /package/dist/{http-CbJFDV7c.js → http-CPVO27fZ.js} +0 -0
  439. /package/dist/{idl-B4mwMAo-.js → idl-GRIbMIEq.js} +0 -0
  440. /package/dist/{init-Cge3yl4r.js → init-BfRhston.js} +0 -0
  441. /package/dist/{invariant-e8eBgdux.js → invariant-D4hPsZFI.js} +0 -0
  442. /package/dist/{javascript-Hf2NLNC0.js → javascript-nS0zxWNO.js} +0 -0
  443. /package/dist/{julia-GGpx21YN.js → julia-CQpdTxmO.js} +0 -0
  444. /package/dist/{katex-CQ_cP8Uu.js → katex-Dg42UEnr.js} +0 -0
  445. /package/dist/{livescript-CSvXMspZ.js → livescript-D5kqrQol.js} +0 -0
  446. /package/dist/{lua-CVMR5LMW.js → lua-CKifrpGK.js} +0 -0
  447. /package/dist/{main-XimWhSi_.js → main-CvkAPtaq.js} +0 -0
  448. /package/dist/{math-CEWMqgbD.js → math-BbMyrONz.js} +0 -0
  449. /package/dist/{mathematica-JENNt-p4.js → mathematica-CxT3f_fi.js} +0 -0
  450. /package/dist/{mbox-mzifoc8E.js → mbox-C2_n_I9h.js} +0 -0
  451. /package/dist/{micromark-factory-space-BHslBP9f.js → micromark-factory-space-YUxUai1y.js} +0 -0
  452. /package/dist/{mirc-BXoiItvN.js → mirc-BTQeASBH.js} +0 -0
  453. /package/dist/{mllike-H-KR9OuH.js → mllike-BxO6Hl5N.js} +0 -0
  454. /package/dist/{modelica-B6Hm3mMl.js → modelica-DuivZReX.js} +0 -0
  455. /package/dist/{mscgen-D8TF_Hei.js → mscgen-DwD83FOm.js} +0 -0
  456. /package/dist/{mumps-CD-kNPt4.js → mumps-CdVjp3OE.js} +0 -0
  457. /package/dist/{nginx-9EZQIKsh.js → nginx-Bi9TuNqb.js} +0 -0
  458. /package/dist/{node-sql-parser-DIe6Cq_-.js → node-sql-parser-Bet3kHkt.js} +0 -0
  459. /package/dist/{ntriples-DgnpxU40.js → ntriples-DBS60qLp.js} +0 -0
  460. /package/dist/{octave-CkobqyVm.js → octave-BL0tQUFC.js} +0 -0
  461. /package/dist/{oz-ChDLd9tS.js → oz-DBrG4vwi.js} +0 -0
  462. /package/dist/{pascal-CvlkwK7E.js → pascal-BWV9h8yS.js} +0 -0
  463. /package/dist/{path-B-82hpi8.js → path-C_x2ySFi.js} +0 -0
  464. /package/dist/{perl-BNEFTNbM.js → perl-Bm5a83JW.js} +0 -0
  465. /package/dist/{pig-Cd1DMS7P.js → pig-CbJDoHaE.js} +0 -0
  466. /package/dist/{powershell-CPxA0zpc.js → powershell-tG44m5Cy.js} +0 -0
  467. /package/dist/{properties-BaFBm-Xa.js → properties-DUZGzdb1.js} +0 -0
  468. /package/dist/{protobuf-BQV_-X0H.js → protobuf-CcoKXY0d.js} +0 -0
  469. /package/dist/{puppet-LXLST0mx.js → puppet-BH73L_Gw.js} +0 -0
  470. /package/dist/{purify.es-hTCfRGdl.js → purify.es-ukiMXY-F.js} +0 -0
  471. /package/dist/{python-DLjLzX4k.js → python-NJIxLTZp.js} +0 -0
  472. /package/dist/{q-DswTX1Y9.js → q-MotBNA65.js} +0 -0
  473. /package/dist/{r-CO7NpMwE.js → r-BUgBPae7.js} +0 -0
  474. /package/dist/{range-BYuZFTbA.js → range-DwpxnYuB.js} +0 -0
  475. /package/dist/{rpm-BlmEDT6r.js → rpm-C_PaGodG.js} +0 -0
  476. /package/dist/{ruby-BTPKgeZZ.js → ruby-DFLM2XD8.js} +0 -0
  477. /package/dist/{sas-DTDTiNO8.js → sas-BMyyu8oO.js} +0 -0
  478. /package/dist/{scheme-UzAAg4GJ.js → scheme-Qet9zYAe.js} +0 -0
  479. /package/dist/{shell-DQ0hQCsB.js → shell-BKHx4Jjo.js} +0 -0
  480. /package/dist/{sieve-BVyYIx9u.js → sieve-CVo7dc4j.js} +0 -0
  481. /package/dist/{simple-mode-Dryu-fC9.js → simple-mode-CVFBIo6d.js} +0 -0
  482. /package/dist/{smalltalk-DAdMAHTu.js → smalltalk-BHr2nCth.js} +0 -0
  483. /package/dist/{solr-Bn6k51kO.js → solr-Bt9XtM2H.js} +0 -0
  484. /package/dist/{sparql-Bi7quYgw.js → sparql-QSu0ZCcc.js} +0 -0
  485. /package/dist/{spreadsheet-UpVklYg7.js → spreadsheet-BWfuwc0V.js} +0 -0
  486. /package/dist/{sql-qyORs189.js → sql-BdV3YOCG.js} +0 -0
  487. /package/dist/{stex-D887Ylhf.js → stex-Ze8D4R_5.js} +0 -0
  488. /package/dist/{stylus-jhpzcQ6Y.js → stylus-CLZH9-Ps.js} +0 -0
  489. /package/dist/{swift-BrO8qThZ.js → swift-JNDJdNIE.js} +0 -0
  490. /package/dist/{tcl-s5QI5gv3.js → tcl-J5aE7aj5.js} +0 -0
  491. /package/dist/{textile-ClhvJrxM.js → textile-6Hn05XQM.js} +0 -0
  492. /package/dist/{tiddlywiki-CmAAqw9M.js → tiddlywiki-BWn8rSwJ.js} +0 -0
  493. /package/dist/{tiki-DzCRe_s0.js → tiki-XORjA1c3.js} +0 -0
  494. /package/dist/{timer-BPKOAfmx.js → timer-pEiW44EO.js} +0 -0
  495. /package/dist/{toml-TFa3EJQE.js → toml-BceyeuiF.js} +0 -0
  496. /package/dist/{treemap-CmLtUuWe.js → treemap-BzS5cW_6.js} +0 -0
  497. /package/dist/{troff-SqLg0heF.js → troff-DeMyd5Pf.js} +0 -0
  498. /package/dist/{ttcn-Cfrap7HJ.js → ttcn-DurvvcB-.js} +0 -0
  499. /package/dist/{ttcn-cfg-Dopc-iwE.js → ttcn-cfg-BuYui6Rv.js} +0 -0
  500. /package/dist/{turtle-Dt52DvVH.js → turtle-CD8Qf-tp.js} +0 -0
  501. /package/dist/{vb-D1pAvfDe.js → vb-BklM-Nqk.js} +0 -0
  502. /package/dist/{vbscript-DZ7RBxn5.js → vbscript-DbMEEX0d.js} +0 -0
  503. /package/dist/{velocity-Csau7eZy.js → velocity-CERL-_vq.js} +0 -0
  504. /package/dist/{verilog-gXlZACs5.js → verilog-BD6jNce6.js} +0 -0
  505. /package/dist/{vhdl-NaUWbI1B.js → vhdl-U-1_N98i.js} +0 -0
  506. /package/dist/{webidl-BJmPjW01.js → webidl-IUn0dzoa.js} +0 -0
  507. /package/dist/{xquery-CJIPsC0g.js → xquery-QeeHdSO2.js} +0 -0
  508. /package/dist/{yacas-8f2Vjiiz.js → yacas-C9XcEPAJ.js} +0 -0
  509. /package/dist/{z80-s5Xk2hCP.js → z80-C-nD1oRy.js} +0 -0
@@ -2,22 +2,22 @@ import { s as __toESM } from "./chunk-BNovOVIE.js";
2
2
  import { _ as Logger, c as Objects, g as cn, h as Events } from "./button-D1C3g5GI.js";
3
3
  import { t as require_react } from "./react-DA-nE2FX.js";
4
4
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
5
- import { c as asRemoteURL, g as CircleQuestionMark } from "./toDate-B1AzlBoW.js";
5
+ import { c as asRemoteURL, g as CircleQuestionMark } from "./toDate-Cqrm-UC4.js";
6
6
  import "./react-dom-D5FDLRUB.js";
7
7
  import { t as require_jsx_runtime } from "./jsx-runtime-9hcJiI23.js";
8
8
  import "./zod-W5ZEjzaE.js";
9
9
  import { n as ErrorBanner } from "./error-banner-B_ioHva3.js";
10
10
  import { t as Tooltip } from "./tooltip-DwNnFsxZ.js";
11
- import { i as debounce_default } from "./constants-CvyfaCvs.js";
12
- import { n as useTheme, w as useEvent_default } from "./useTheme-CzwDokKe.js";
13
- import { s as uniq } from "./arrays-beUWo8RF.js";
14
- import { a as AlertTitle, n as arrow, o as isValid, r as Alert, t as useDeepCompareMemoize } from "./useDeepCompareMemoize-CsyOnnjc.js";
15
- import { n as formats } from "./vega-loader.browser-DqEcFOPD.js";
16
- import { a as getContainerWidth, n as vegaLoadData, s as tooltipHandler } from "./loader-ZFbGsMN1.js";
17
- import { t as useAsyncData } from "./useAsyncData-BL98MPIy.js";
18
- import { t as j } from "./react-vega-DBwal82H.js";
19
- import "./defaultLocale-qS7DaAmi.js";
20
- import "./defaultLocale-Bxoo2-30.js";
11
+ import { i as debounce_default } from "./constants-C2U1Bmny.js";
12
+ import { n as useTheme, w as useEvent_default } from "./useTheme-CfzcSQtz.js";
13
+ import { s as uniq } from "./arrays-Du-jRBAy.js";
14
+ import { a as AlertTitle, n as arrow, o as isValid, r as Alert, t as useDeepCompareMemoize } from "./useDeepCompareMemoize-ToNUMW7X.js";
15
+ import { n as formats } from "./vega-loader.browser-hMqVC9bf.js";
16
+ import { a as getContainerWidth, n as vegaLoadData, s as tooltipHandler } from "./loader-D9ktSJS7.js";
17
+ import { t as useAsyncData } from "./useAsyncData-B1v_9k4L.js";
18
+ import { t as j } from "./react-vega-Ov9UeJeF.js";
19
+ import "./defaultLocale-DjFHq3Xk.js";
20
+ import "./defaultLocale-B_A76Zpk.js";
21
21
  var import_compiler_runtime = require_compiler_runtime(), import_react = /* @__PURE__ */ __toESM(require_react(), 1);
22
22
  function fixRelativeUrl(e) {
23
23
  return e.data && "url" in e.data && (e.data.url = asRemoteURL(e.data.url).href), e;
@@ -1,6 +1,6 @@
1
- import { a as tickStep, n as precisionPrefix_default, r as precisionFixed_default, s as bisector, t as precisionRound_default } from "./precisionRound-CGLoV26P.js";
2
- import { i as formatSpecifier, n as formatPrefix, r as locale_default, t as format$1 } from "./defaultLocale-qS7DaAmi.js";
3
- import { C as timeMinute, N as millisecond, S as utcHour, T as second, _ as utcSunday, a as formatLocale, b as utcDay, c as timeMonth, i as utcParse, l as utcMonth, n as timeParse, o as timeYear, p as timeSunday, r as utcFormat, s as utcYear, t as timeFormat, v as timeDay, w as utcMinute, x as timeHour } from "./defaultLocale-Bxoo2-30.js";
1
+ import { a as tickStep, n as precisionPrefix_default, r as precisionFixed_default, s as bisector, t as precisionRound_default } from "./precisionRound-Duzbr5ur.js";
2
+ import { i as formatSpecifier, n as formatPrefix, r as locale_default, t as format$1 } from "./defaultLocale-DjFHq3Xk.js";
3
+ import { C as timeMinute, N as millisecond, S as utcHour, T as second, _ as utcSunday, a as formatLocale, b as utcDay, c as timeMonth, i as utcParse, l as utcMonth, n as timeParse, o as timeYear, p as timeSunday, r as utcFormat, s as utcYear, t as timeFormat, v as timeDay, w as utcMinute, x as timeHour } from "./defaultLocale-B_A76Zpk.js";
4
4
  function accessor(o, P, F) {
5
5
  return o.fields = P || [], o.fname = F, o;
6
6
  }
@@ -0,0 +1,4 @@
1
+ import { t as velocity } from "./velocity-CERL-_vq.js";
2
+ export {
3
+ velocity
4
+ };
@@ -0,0 +1,4 @@
1
+ import { t as verilog } from "./verilog-BD6jNce6.js";
2
+ export {
3
+ verilog
4
+ };
@@ -0,0 +1,4 @@
1
+ import { t as vhdl } from "./vhdl-U-1_N98i.js";
2
+ export {
3
+ vhdl
4
+ };
@@ -0,0 +1,4 @@
1
+ import { t as webIDL } from "./webidl-IUn0dzoa.js";
2
+ export {
3
+ webIDL
4
+ };
@@ -0,0 +1,4 @@
1
+ import { t as xQuery } from "./xquery-QeeHdSO2.js";
2
+ export {
3
+ xQuery
4
+ };
@@ -1,17 +1,17 @@
1
1
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
2
- import "./purify.es-hTCfRGdl.js";
3
- import { t as linear } from "./linear-v57w-fIs.js";
4
- import { n as ordinal } from "./ordinal-D7fa8Sey.js";
5
- import { t as range } from "./range-BYuZFTbA.js";
6
- import "./defaultLocale-qS7DaAmi.js";
7
- import { t as line_default } from "./line-PAEmCpyD.js";
8
- import { i as cleanAndMerge } from "./chunk-S3R3BYOJ-B0UOFJwq.js";
9
- import { n as initRange } from "./init-Cge3yl4r.js";
10
- import { i as log, r as __name } from "./src-DbP20yFZ.js";
11
- import { B as setAccTitle, C as getDiagramTitle, I as sanitizeText, T as getThemeVariables3, U as setDiagramTitle, _ as getAccDescription, a as clear, c as configureSvgSize, d as defaultConfig_default, v as getAccTitle, y as getConfig, z as setAccDescription } from "./chunk-ABZYJK2D-CZYCCtLy.js";
12
- import { t as selectSvgElement } from "./chunk-EXTU4WIE-jUPSAk3i.js";
13
- import "./dist-BjWd_Ei9.js";
14
- import { t as computeDimensionOfText } from "./chunk-JA3XYJ7Z-BcPEfxk_.js";
2
+ import "./purify.es-ukiMXY-F.js";
3
+ import { t as linear } from "./linear-CJ6ctpF3.js";
4
+ import { n as ordinal } from "./ordinal-COPPjmMz.js";
5
+ import { t as range } from "./range-DwpxnYuB.js";
6
+ import "./defaultLocale-DjFHq3Xk.js";
7
+ import { t as line_default } from "./line-LK_5q2B9.js";
8
+ import { i as cleanAndMerge } from "./chunk-S3R3BYOJ-DYg3yWKI.js";
9
+ import { n as initRange } from "./init-BfRhston.js";
10
+ import { i as log, r as __name } from "./src-szye8OCw.js";
11
+ import { B as setAccTitle, C as getDiagramTitle, I as sanitizeText, T as getThemeVariables3, U as setDiagramTitle, _ as getAccDescription, a as clear, c as configureSvgSize, d as defaultConfig_default, v as getAccTitle, y as getConfig, z as setAccDescription } from "./chunk-ABZYJK2D--T2L3L-f.js";
12
+ import { t as selectSvgElement } from "./chunk-EXTU4WIE-BspiJIuJ.js";
13
+ import "./dist-CqR8FBcH.js";
14
+ import { t as computeDimensionOfText } from "./chunk-JA3XYJ7Z-DCohPV-J.js";
15
15
  function band() {
16
16
  var e = ordinal().unknown(void 0), w = e.domain, T = e.range, D = 0, O = 1, k, A, j = false, M = 0, N = 0, P = 0.5;
17
17
  delete e.unknown;
@@ -0,0 +1,4 @@
1
+ import { t as yacas } from "./yacas-C9XcEPAJ.js";
2
+ export {
3
+ yacas
4
+ };
@@ -0,0 +1,4 @@
1
+ import { t as z80 } from "./z80-C-nD1oRy.js";
2
+ export {
3
+ z80
4
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marimo-team/islands",
3
- "version": "0.23.2-dev3",
3
+ "version": "0.23.2-dev31",
4
4
  "main": "dist/main.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "type": "module",
@@ -54,7 +54,7 @@
54
54
  "@lezer/lr": "^1.4.8",
55
55
  "@lezer/markdown": "^1.6.3",
56
56
  "@lezer/python": "^1.1.18",
57
- "@marimo-team/codemirror-ai": "^0.3.5",
57
+ "@marimo-team/codemirror-ai": "^0.3.7",
58
58
  "@marimo-team/codemirror-languageserver": "^1.16.12",
59
59
  "@marimo-team/codemirror-mcp": "^0.1.5",
60
60
  "@marimo-team/codemirror-sql": "^0.2.4",
@@ -142,7 +142,11 @@ export const TableBottomBar = <TData,>({
142
142
 
143
143
  return (
144
144
  <span>
145
- {prettifyRowColumnCount(table.getRowCount(), totalColumns, locale)}
145
+ {prettifyRowColumnCount({
146
+ numRows: table.getRowCount(),
147
+ totalColumns,
148
+ locale,
149
+ })}
146
150
  </span>
147
151
  );
148
152
  };
@@ -0,0 +1,304 @@
1
+ /* Copyright 2026 Marimo. All rights reserved. */
2
+ import { describe, expect, it } from "vitest";
3
+ import {
4
+ filterToFilterCondition,
5
+ filtersToFilterGroup,
6
+ Filter,
7
+ } from "../filters";
8
+ import {
9
+ FilterConditionSchema,
10
+ FilterGroupSchema,
11
+ } from "@/plugins/impl/data-frames/schema";
12
+
13
+ describe("filterToFilterCondition", () => {
14
+ it("returns empty array for undefined filter", () => {
15
+ expect(filterToFilterCondition("col", undefined)).toEqual([]);
16
+ });
17
+
18
+ it("handles is_null filter", () => {
19
+ const result = filterToFilterCondition(
20
+ "col",
21
+ Filter.number({ operator: "is_null" }),
22
+ );
23
+ expect(result).toEqual([
24
+ {
25
+ column_id: "col",
26
+ operator: "is_null",
27
+ value: undefined,
28
+ type: "condition",
29
+ negate: false,
30
+ },
31
+ ]);
32
+ });
33
+
34
+ it("handles is_not_null filter", () => {
35
+ const result = filterToFilterCondition(
36
+ "col",
37
+ Filter.number({ operator: "is_not_null" }),
38
+ );
39
+ expect(result).toEqual([
40
+ {
41
+ column_id: "col",
42
+ operator: "is_not_null",
43
+ value: undefined,
44
+ type: "condition",
45
+ negate: false,
46
+ },
47
+ ]);
48
+ });
49
+
50
+ it("handles number filter with min only", () => {
51
+ const result = filterToFilterCondition("age", Filter.number({ min: 18 }));
52
+ expect(result).toHaveLength(1);
53
+ expect(result[0]).toMatchObject({
54
+ column_id: "age",
55
+ operator: ">=",
56
+ value: 18,
57
+ type: "condition",
58
+ negate: false,
59
+ });
60
+ });
61
+
62
+ it("handles number filter with max only", () => {
63
+ const result = filterToFilterCondition("age", Filter.number({ max: 65 }));
64
+ expect(result).toHaveLength(1);
65
+ expect(result[0]).toMatchObject({
66
+ column_id: "age",
67
+ operator: "<=",
68
+ value: 65,
69
+ type: "condition",
70
+ negate: false,
71
+ });
72
+ });
73
+
74
+ it("handles number filter with min and max", () => {
75
+ const result = filterToFilterCondition(
76
+ "age",
77
+ Filter.number({ min: 18, max: 65 }),
78
+ );
79
+ expect(result).toHaveLength(2);
80
+ expect(result[0]).toMatchObject({ operator: ">=", value: 18 });
81
+ expect(result[1]).toMatchObject({ operator: "<=", value: 65 });
82
+ });
83
+
84
+ it("handles text filter", () => {
85
+ const result = filterToFilterCondition(
86
+ "name",
87
+ Filter.text({ text: "foo", operator: "contains" }),
88
+ );
89
+ expect(result).toEqual([
90
+ {
91
+ column_id: "name",
92
+ operator: "contains",
93
+ value: "foo",
94
+ type: "condition",
95
+ negate: false,
96
+ },
97
+ ]);
98
+ });
99
+
100
+ it("handles boolean true filter", () => {
101
+ const result = filterToFilterCondition(
102
+ "active",
103
+ Filter.boolean({ value: true }),
104
+ );
105
+ expect(result).toEqual([
106
+ {
107
+ column_id: "active",
108
+ operator: "is_true",
109
+ value: undefined,
110
+ type: "condition",
111
+ negate: false,
112
+ },
113
+ ]);
114
+ });
115
+
116
+ it("handles boolean false filter", () => {
117
+ const result = filterToFilterCondition(
118
+ "active",
119
+ Filter.boolean({ value: false }),
120
+ );
121
+ expect(result).toEqual([
122
+ {
123
+ column_id: "active",
124
+ operator: "is_false",
125
+ value: undefined,
126
+ type: "condition",
127
+ negate: false,
128
+ },
129
+ ]);
130
+ });
131
+
132
+ it("handles select in filter", () => {
133
+ const result = filterToFilterCondition(
134
+ "status",
135
+ Filter.select({ options: ["a", "b"], operator: "in" }),
136
+ );
137
+ expect(result).toEqual([
138
+ {
139
+ column_id: "status",
140
+ operator: "in",
141
+ value: ["a", "b"],
142
+ type: "condition",
143
+ negate: false,
144
+ },
145
+ ]);
146
+ });
147
+
148
+ it("handles date filter with min and max", () => {
149
+ const min = new Date("2024-01-01");
150
+ const max = new Date("2024-12-31");
151
+ const result = filterToFilterCondition(
152
+ "created",
153
+ Filter.date({ min, max }),
154
+ );
155
+ expect(result).toHaveLength(2);
156
+ expect(result[0]).toMatchObject({
157
+ operator: ">=",
158
+ value: min.toISOString(),
159
+ });
160
+ expect(result[1]).toMatchObject({
161
+ operator: "<=",
162
+ value: max.toISOString(),
163
+ });
164
+ });
165
+
166
+ it("every condition has type and negate fields", () => {
167
+ const result = filterToFilterCondition(
168
+ "col",
169
+ Filter.number({ min: 1, max: 10 }),
170
+ );
171
+ for (const condition of result) {
172
+ expect(condition).toHaveProperty("type", "condition");
173
+ expect(condition).toHaveProperty("negate", false);
174
+ }
175
+ });
176
+ });
177
+
178
+ describe("filtersToFilterGroup", () => {
179
+ it("returns empty AND group for no filters", () => {
180
+ const result = filtersToFilterGroup([]);
181
+ expect(result).toEqual({
182
+ type: "group",
183
+ operator: "and",
184
+ children: [],
185
+ negate: false,
186
+ });
187
+ });
188
+
189
+ it("wraps single filter in AND group", () => {
190
+ const result = filtersToFilterGroup([
191
+ { id: "age", value: Filter.number({ min: 18 }) },
192
+ ]);
193
+ expect(result.type).toBe("group");
194
+ expect(result.operator).toBe("and");
195
+ expect(result.negate).toBe(false);
196
+ expect(result.children).toHaveLength(1);
197
+ });
198
+
199
+ it("wraps multiple filters in AND group", () => {
200
+ const result = filtersToFilterGroup([
201
+ { id: "age", value: Filter.number({ min: 18 }) },
202
+ { id: "name", value: Filter.text({ text: "foo", operator: "contains" }) },
203
+ ]);
204
+ expect(result.children).toHaveLength(2);
205
+ expect(result.operator).toBe("and");
206
+ });
207
+
208
+ it("flattens multi-condition filters", () => {
209
+ const result = filtersToFilterGroup([
210
+ { id: "age", value: Filter.number({ min: 18, max: 65 }) },
211
+ ]);
212
+ // min + max = 2 conditions
213
+ expect(result.children).toHaveLength(2);
214
+ });
215
+ });
216
+
217
+ describe("schema validation", () => {
218
+ it("FilterConditionSchema accepts valid condition", () => {
219
+ const result = FilterConditionSchema.safeParse({
220
+ column_id: "age",
221
+ operator: ">=",
222
+ value: 18,
223
+ });
224
+ expect(result.success).toBe(true);
225
+ if (result.success) {
226
+ expect(result.data.type).toBe("condition");
227
+ expect(result.data.negate).toBe(false);
228
+ }
229
+ });
230
+
231
+ it("FilterConditionSchema defaults type and negate", () => {
232
+ const result = FilterConditionSchema.safeParse({
233
+ column_id: "age",
234
+ operator: "==",
235
+ value: 5,
236
+ });
237
+ expect(result.success).toBe(true);
238
+ if (result.success) {
239
+ expect(result.data.type).toBe("condition");
240
+ expect(result.data.negate).toBe(false);
241
+ }
242
+ });
243
+
244
+ it("FilterConditionSchema accepts negate=true", () => {
245
+ const result = FilterConditionSchema.safeParse({
246
+ column_id: "age",
247
+ operator: "==",
248
+ value: 5,
249
+ negate: true,
250
+ });
251
+ expect(result.success).toBe(true);
252
+ if (result.success) {
253
+ expect(result.data.negate).toBe(true);
254
+ }
255
+ });
256
+
257
+ it("FilterGroupSchema accepts valid group", () => {
258
+ const result = FilterGroupSchema.safeParse({
259
+ type: "group",
260
+ operator: "and",
261
+ children: [{ column_id: "age", operator: ">=", value: 18 }],
262
+ });
263
+ expect(result.success).toBe(true);
264
+ });
265
+
266
+ it("FilterGroupSchema accepts nested groups", () => {
267
+ const result = FilterGroupSchema.safeParse({
268
+ type: "group",
269
+ operator: "or",
270
+ children: [
271
+ {
272
+ type: "group",
273
+ operator: "and",
274
+ children: [
275
+ { column_id: "a", operator: "==", value: 1 },
276
+ { column_id: "b", operator: ">", value: 2 },
277
+ ],
278
+ },
279
+ { column_id: "c", operator: "==", value: 3 },
280
+ ],
281
+ });
282
+ expect(result.success).toBe(true);
283
+ });
284
+
285
+ it("FilterGroupSchema rejects invalid operator", () => {
286
+ const result = FilterGroupSchema.safeParse({
287
+ type: "group",
288
+ operator: "xor",
289
+ children: [],
290
+ });
291
+ expect(result.success).toBe(false);
292
+ });
293
+
294
+ it("FilterGroupSchema defaults fields", () => {
295
+ const result = FilterGroupSchema.safeParse({});
296
+ expect(result.success).toBe(true);
297
+ if (result.success) {
298
+ expect(result.data.type).toBe("group");
299
+ expect(result.data.operator).toBe("and");
300
+ expect(result.data.children).toEqual([]);
301
+ expect(result.data.negate).toBe(false);
302
+ }
303
+ });
304
+ });
@@ -1,144 +1,58 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
3
  import { expect, test } from "vitest";
4
- import { getPageRanges } from "../pagination";
5
- import type { PageRange } from "../types";
4
+ import { matchingPageRanges } from "../pagination";
6
5
 
7
- function getLabels(currentPage: number): string[] {
8
- const ranges = getPageRanges(currentPage, 200);
9
- return ranges.map((item: PageRange) =>
10
- item.type === "ellipsis" ? "..." : String(item.page),
11
- );
12
- }
6
+ test("empty prefix returns no ranges", () => {
7
+ expect(matchingPageRanges("", 500)).toEqual([]);
8
+ });
9
+
10
+ test("zero prefix returns no ranges", () => {
11
+ expect(matchingPageRanges("0", 500)).toEqual([]);
12
+ });
13
13
 
14
- test("pagination start / middle / end", () => {
15
- expect(getLabels(1)).toMatchInlineSnapshot(`
16
- [
17
- "1",
18
- "2",
19
- "3",
20
- "4",
21
- "5",
22
- "6",
23
- "7",
24
- "8",
25
- "9",
26
- "10",
27
- "...",
28
- "96",
29
- "97",
30
- "98",
31
- "99",
32
- "100",
33
- "101",
34
- "102",
35
- "103",
36
- "104",
37
- "105",
38
- "...",
39
- "191",
40
- "192",
41
- "193",
42
- "194",
43
- "195",
44
- "196",
45
- "197",
46
- "198",
47
- "199",
48
- "200",
49
- ]
50
- `);
14
+ test("leading-zero prefix returns no ranges", () => {
15
+ expect(matchingPageRanges("01", 500)).toEqual([]);
16
+ });
17
+
18
+ test("single digit prefix", () => {
19
+ expect(matchingPageRanges("5", 500)).toEqual([
20
+ [5, 5],
21
+ [50, 59],
22
+ [500, 500],
23
+ ]);
24
+ });
51
25
 
52
- // all fall in the top/middle/bottom 10
53
- expect(getLabels(1)).toEqual(getLabels(10));
54
- expect(getLabels(96)).toEqual(getLabels(105));
55
- expect(getLabels(191)).toEqual(getLabels(200));
26
+ test("single digit prefix with exact totalPages boundary", () => {
27
+ expect(matchingPageRanges("5", 55)).toEqual([
28
+ [5, 5],
29
+ [50, 55],
30
+ ]);
31
+ });
32
+
33
+ test("multi-digit prefix", () => {
34
+ expect(matchingPageRanges("12", 5000)).toEqual([
35
+ [12, 12],
36
+ [120, 129],
37
+ [1200, 1299],
38
+ ]);
39
+ });
40
+
41
+ test("prefix larger than totalPages returns no ranges", () => {
42
+ expect(matchingPageRanges("999", 100)).toEqual([]);
43
+ });
56
44
 
57
- // Check off by one
58
- expect(getLabels(1)).not.toEqual(getLabels(11));
59
- expect(getLabels(1)).not.toEqual(getLabels(95));
60
- expect(getLabels(1)).not.toEqual(getLabels(106));
61
- expect(getLabels(1)).not.toEqual(getLabels(190));
45
+ test("prefix equal to totalPages", () => {
46
+ expect(matchingPageRanges("100", 100)).toEqual([[100, 100]]);
62
47
  });
63
48
 
64
- test("pagination lower middle", () => {
65
- expect(getLabels(50)).toMatchInlineSnapshot(`
66
- [
67
- "1",
68
- "2",
69
- "3",
70
- "4",
71
- "5",
72
- "6",
73
- "7",
74
- "8",
75
- "9",
76
- "10",
77
- "...",
78
- "50",
79
- "...",
80
- "96",
81
- "97",
82
- "98",
83
- "99",
84
- "100",
85
- "101",
86
- "102",
87
- "103",
88
- "104",
89
- "105",
90
- "...",
91
- "191",
92
- "192",
93
- "193",
94
- "194",
95
- "195",
96
- "196",
97
- "197",
98
- "198",
99
- "199",
100
- "200",
101
- ]
102
- `);
49
+ test("prefix 1 with small totalPages", () => {
50
+ expect(matchingPageRanges("1", 10)).toEqual([
51
+ [1, 1],
52
+ [10, 10],
53
+ ]);
103
54
  });
104
55
 
105
- test("pagination upper middle", () => {
106
- expect(getLabels(150)).toMatchInlineSnapshot(`
107
- [
108
- "1",
109
- "2",
110
- "3",
111
- "4",
112
- "5",
113
- "6",
114
- "7",
115
- "8",
116
- "9",
117
- "10",
118
- "...",
119
- "96",
120
- "97",
121
- "98",
122
- "99",
123
- "100",
124
- "101",
125
- "102",
126
- "103",
127
- "104",
128
- "105",
129
- "...",
130
- "150",
131
- "...",
132
- "191",
133
- "192",
134
- "193",
135
- "194",
136
- "195",
137
- "196",
138
- "197",
139
- "198",
140
- "199",
141
- "200",
142
- ]
143
- `);
56
+ test("prefix 1 with totalPages=1", () => {
57
+ expect(matchingPageRanges("1", 1)).toEqual([[1, 1]]);
144
58
  });
@@ -74,7 +74,7 @@ export const ColumnExplorerPanel = ({
74
74
  return (
75
75
  <div className="mb-3">
76
76
  <span className="text-xs font-semibold ml-2 flex">
77
- {prettifyRowColumnCount(totalRows, totalColumns, locale)}
77
+ {prettifyRowColumnCount({ numRows: totalRows, totalColumns, locale })}
78
78
  <CopyClipboardIcon
79
79
  tooltip="Copy column names"
80
80
  value={columns?.map(([columnName]) => columnName).join(",\n") || ""}