@marimo-team/frontend 0.23.2-dev6 → 0.23.2-dev60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/CellStatus-Dtymd7Mw.js +1 -0
- package/dist/assets/ConnectedDataExplorerComponent-ChNjqWW0.js +1 -0
- package/dist/assets/DeferredRequestRegistry-C2V-hXrK.js +1 -0
- package/dist/assets/ErrorBoundary-DzYV_VeY.js +1 -0
- package/dist/assets/ImageComparisonComponent-BDf80c-c.js +1 -0
- package/dist/assets/ImperativeModal-CAFE3UV7.js +1 -0
- package/dist/assets/Inputs-kqHYE7dL.js +1 -0
- package/dist/assets/JsonOutput-Cib1YSyW.js +49 -0
- package/dist/assets/LazyAnyLanguageCodeMirror-BYkSpfWg.js +2 -0
- package/dist/assets/MarimoErrorOutput-CUkxKVSp.js +7 -0
- package/dist/assets/Plot-Dw2rpqfa.js +3789 -0
- package/dist/assets/RSPContexts-CrATdGvz.js +1 -0
- package/dist/assets/RenderHTML-aOmkRy0R.js +1 -0
- package/dist/assets/__vite-browser-external-DgbEhFq1.js +1 -0
- package/dist/assets/_baseFor-DKD1r8uL.js +1 -0
- package/dist/assets/_baseSet-CxV9N1bc.js +1 -0
- package/dist/assets/_baseUniq-CbY8vx1e.js +1 -0
- package/dist/assets/add-cell-with-ai-apfqz2QF.js +92 -0
- package/dist/assets/add-connection-dialog-BEPj8ARO.js +167 -0
- package/dist/assets/agent-panel-j9gn23Bw.js +287 -0
- package/dist/assets/ai-model-dropdown-CMNpHk5I.js +5 -0
- package/dist/assets/alert-DD-RU0QZ.js +1 -0
- package/dist/assets/alert-dialog-BGBdrcqJ.js +11 -0
- package/dist/assets/any-language-editor-CFmH0GoP.js +1 -0
- package/dist/assets/apl-ezh0ScS-.js +1 -0
- package/dist/assets/app-config-button-CXAAPUFL.js +1 -0
- package/dist/assets/architecture-7HQA4BMR-CKjkd5Dl.js +1 -0
- package/dist/assets/architectureDiagram-VXUJARFQ-x1tfs-Zy.js +36 -0
- package/dist/assets/arrays-DYDL-3-i.js +1 -0
- package/dist/assets/asciiarmor-DBqyln4y.js +1 -0
- package/dist/assets/asn1-C9Hie9a5.js +1 -0
- package/dist/assets/badge-IqsYSyWB.js +1 -0
- package/dist/assets/blockDiagram-VD42YOAC-DsnHpCid.js +122 -0
- package/dist/assets/bot-message-square-DrbHk31W.js +1 -0
- package/dist/assets/brainfuck-BDNU41Mw.js +1 -0
- package/dist/assets/button-D9nb17Rw.js +1 -0
- package/dist/assets/c4Diagram-YG6GDRKO-D32cjsO5.js +10 -0
- package/dist/assets/cache-panel-_zalrRwf.js +1 -0
- package/dist/assets/capabilities-C_FLIcjP.js +1 -0
- package/dist/assets/card-DaCTzD6y.js +1 -0
- package/dist/assets/cell-editor-DzvGVpZ4.js +22 -0
- package/dist/assets/cell-link-owqfXuA4.js +1 -0
- package/dist/assets/cells-BA9ZN5Xy.js +229 -0
- package/dist/assets/channel-esN5troS.js +1 -0
- package/dist/assets/chart-no-axes-column-nqk474t8.js +1 -0
- package/dist/assets/chat-display-AB-C2j6p.js +1 -0
- package/dist/assets/chat-panel-C1Evz8wb.js +3 -0
- package/dist/assets/chat-ui-CcArYoMw.js +4 -0
- package/dist/assets/check-BH35Ndha.js +1 -0
- package/dist/assets/chevron-right-CG5QYXYk.js +1 -0
- package/dist/assets/chunk-4F5CHEZ2-CiW94ehv.js +1 -0
- package/dist/assets/chunk-55IACEB6-C_BE0X2F.js +1 -0
- package/dist/assets/chunk-5FQGJX7Z-wbiBygI_.js +113 -0
- package/dist/assets/chunk-ABZYJK2D-CSzcbtsR.js +80 -0
- package/dist/assets/chunk-ATLVNIR6-BGYBu2zE.js +1 -0
- package/dist/assets/chunk-B2363JML-Dj_BsGfX.js +1 -0
- package/dist/assets/chunk-B4BG7PRW-S78japIA.js +165 -0
- package/dist/assets/chunk-DI55MBZ5-B1Vz0MTl.js +220 -0
- package/dist/assets/chunk-EXTU4WIE-D-Spa6rW.js +1 -0
- package/dist/assets/chunk-FRFDVMJY-BB5sTbw6.js +1 -0
- package/dist/assets/chunk-JA3XYJ7Z-BJGCDHDS.js +70 -0
- package/dist/assets/chunk-JZLCHNYA-lm1LBIfJ.js +54 -0
- package/dist/assets/chunk-N4CR4FBY-BQWUF0Ly.js +2 -0
- package/dist/assets/chunk-PL6DKKU2-BVOKRgy0.js +1 -0
- package/dist/assets/chunk-QN33PNHL-Buv0c3y8.js +1 -0
- package/dist/assets/chunk-QXUST7PY-tI3bGlcO.js +7 -0
- package/dist/assets/chunk-S3R3BYOJ-BwE-T8-d.js +2 -0
- package/dist/assets/chunk-SJTYNZTY-BY2Gu6VM.js +1 -0
- package/dist/assets/chunk-TCCFYFTB-ClOYb5MI.js +125 -0
- package/dist/assets/chunk-TQ3KTPDO-BXqsqDoM.js +1 -0
- package/dist/assets/chunk-TZMSLE5B-zQ3MzIy5.js +1 -0
- package/dist/assets/chunk-UMXZTB3W-2RQe-UTW.js +1 -0
- package/dist/assets/circle-check-C17zXg7L.js +1 -0
- package/dist/assets/circle-play-CYXX2xu3.js +1 -0
- package/dist/assets/circle-plus-BdiiIXu5.js +1 -0
- package/dist/assets/classDiagram-2ON5EDUG-BSpbvL3e.js +1 -0
- package/dist/assets/classDiagram-v2-WZHVMYZB-CQ49gdZV.js +1 -0
- package/dist/assets/clear-button-hXGBrmNq.js +1 -0
- package/dist/assets/clike-B5Yp94w5.js +1 -0
- package/dist/assets/clipboard-paste-BPjPPEqD.js +1 -0
- package/dist/assets/clojure-DnkK3bSc.js +1 -0
- package/dist/assets/clone-wB3InSdt.js +1 -0
- package/dist/assets/cmake-BnWrJdTV.js +1 -0
- package/dist/assets/cn-DCUzRj2J.js +1 -0
- package/dist/assets/cobol-HBrO1JaF.js +1 -0
- package/dist/assets/code-block-37QAKDTI-Bf-3UT2Z.js +2 -0
- package/dist/assets/code-xml-CZN6vNxu.js +1 -0
- package/dist/assets/coffeescript-CRPuDhgD.js +1 -0
- package/dist/assets/column-preview-B9m4l29S.js +1 -0
- package/dist/assets/command-DQS2IzwJ.js +1 -0
- package/dist/assets/command-palette-NX0xxB_G.js +1 -0
- package/dist/assets/common-CakcoJKZ.js +1 -0
- package/dist/assets/commonlisp-Da4KcekY.js +1 -0
- package/dist/assets/components-DVzYtTDe.js +1 -0
- package/dist/assets/components-eaRIBPb2.js +1 -0
- package/dist/assets/config-Calf6e81.js +1 -0
- package/dist/assets/constants-DMpttj8Q.js +1 -0
- package/dist/assets/context-BrNoqz7t.js +1 -0
- package/dist/assets/copy-BnK_ki61.js +1 -0
- package/dist/assets/copy-BwrPA9zQ.js +1 -0
- package/dist/assets/copy-icon-D189KR4Z.js +1 -0
- package/dist/assets/cose-bilkent-S5V4N54A-DT_V8ZfF.js +1 -0
- package/dist/assets/createReducer-1ePoj7v6.js +1 -0
- package/dist/assets/crystal-DSapLTsa.js +1 -0
- package/dist/assets/css-B68S0me4.js +1 -0
- package/dist/assets/cypher-xFGoEou9.js +1 -0
- package/dist/assets/d-DgvhEIBQ.js +1 -0
- package/dist/assets/dagre-6UL2VRFP-DGYXMu3i.js +4 -0
- package/dist/assets/dagre-DhAJ2E-3.js +1 -0
- package/dist/assets/data-grid-overlay-editor-CD6KDhh4.js +1 -0
- package/dist/assets/database-zap-kIkTfzTX.js +1 -0
- package/dist/assets/datasource-BZ77nRPA.js +3 -0
- package/dist/assets/dates-CtmdgiVR.js +1 -0
- package/dist/assets/debounce-DhnxH9Rh.js +1 -0
- package/dist/assets/dependency-graph-panel-DJodxi-n.js +5 -0
- package/dist/assets/diagram-PSM6KHXK-Df7m0-Bk.js +24 -0
- package/dist/assets/diagram-QEK2KX5R-BC5JXjfp.js +43 -0
- package/dist/assets/diagram-S2PKOQOG-D6E97R3h.js +24 -0
- package/dist/assets/dialog-CqE8CV1Y.js +1 -0
- package/dist/assets/diff-_ncWAuCI.js +1 -0
- package/dist/assets/dist-B5ONF0fx.js +1 -0
- package/dist/assets/dist-B804XDz9.js +1 -0
- package/dist/assets/dist-BOBxlWRU.js +1 -0
- package/dist/assets/dist-BZX17NA8.js +1 -0
- package/dist/assets/dist-Bgd1ZX49.js +1 -0
- package/dist/assets/dist-BiQrY0m-.js +1 -0
- package/dist/assets/dist-BoOh2kN5.js +1 -0
- package/dist/assets/dist-BrR4M-k3.js +13 -0
- package/dist/assets/dist-BuSjuYCJ.js +1 -0
- package/dist/assets/dist-BvefCWaz.js +1 -0
- package/dist/assets/dist-BvpmHCI2.js +1 -0
- package/dist/assets/dist-BwejP-9J.js +6 -0
- package/dist/assets/dist-C2akIBaE.js +1 -0
- package/dist/assets/dist-C5pbZROJ.js +1 -0
- package/dist/assets/dist-C9ZB41s2.js +2 -0
- package/dist/assets/dist-C9byx33H.js +1 -0
- package/dist/assets/dist-CAjNwSwp.js +1 -0
- package/dist/assets/dist-CD7-c8A4.js +1 -0
- package/dist/assets/dist-CHcznzB-.js +2 -0
- package/dist/assets/dist-CM2zL7eu.js +1 -0
- package/dist/assets/dist-CSLszKKS.js +1 -0
- package/dist/assets/dist-Cb9wJQiu.js +1 -0
- package/dist/assets/dist-CdAQ8eZ9.js +1 -0
- package/dist/assets/dist-ChEIZSwD.js +1 -0
- package/dist/assets/dist-CpbLJKXc.js +3 -0
- package/dist/assets/dist-Ct7BBGwl.js +1 -0
- package/dist/assets/dist-D8d8D49Y.js +1 -0
- package/dist/assets/dist-D8llshvP.js +1 -0
- package/dist/assets/dist-D8mC0RLm.js +1 -0
- package/dist/assets/dist-D9brkCnf.js +1 -0
- package/dist/assets/dist-DDWNnRcK.js +7 -0
- package/dist/assets/dist-DEsgb6r0.js +1 -0
- package/dist/assets/dist-DK65leDK.js +1 -0
- package/dist/assets/dist-DMIdeanR.js +1 -0
- package/dist/assets/dist-DSv2WUkf.js +1 -0
- package/dist/assets/dist-DX-ejWLY.js +1 -0
- package/dist/assets/dist-DfWgLTCQ.js +13 -0
- package/dist/assets/dist-Dg3CCt0r.js +3 -0
- package/dist/assets/dist-DlFpiRHv.js +1 -0
- package/dist/assets/dist-G3xLh7ZX.js +1 -0
- package/dist/assets/dist-G8rBPeDP.js +1 -0
- package/dist/assets/dist-H-P6qorM.js +1 -0
- package/dist/assets/dist-HIpA48xV.js +7 -0
- package/dist/assets/dist-HlsDto3K.js +1 -0
- package/dist/assets/dist-a6hqEAyw.js +1 -0
- package/dist/assets/dist-fKK_jBk2.js +1 -0
- package/dist/assets/dist-idZNafp8.js +1 -0
- package/dist/assets/dist-vhQjV8kg.js +1 -0
- package/dist/assets/dockerfile-COvjaTvv.js +1 -0
- package/dist/assets/documentation-panel-DMXEUS7v.js +1 -0
- package/dist/assets/download-rCRPD7IF.js +9 -0
- package/dist/assets/dropdown-menu-D1A3cFC8.js +1 -0
- package/dist/assets/dtd-BnBIn3kr.js +1 -0
- package/dist/assets/dylan-CkGqQmFw.js +1 -0
- package/dist/assets/ecl-CFTIHpsV.js +1 -0
- package/dist/assets/edit-page-Omreus8k.js +9 -0
- package/dist/assets/eiffel-DqSKoxJh.js +1 -0
- package/dist/assets/ellipsis-KAhMaCIV.js +1 -0
- package/dist/assets/ellipsis-vertical-CkwWkOQL.js +1 -0
- package/dist/assets/elm-dL9c1n0U.js +1 -0
- package/dist/assets/empty-state-CrP10sqm.js +1 -0
- package/dist/assets/en-US-B8TXLgVt.js +1 -0
- package/dist/assets/erDiagram-Q2GNP2WA-AvxewI5H.js +60 -0
- package/dist/assets/erlang-ZIYI48gw.js +1 -0
- package/dist/assets/error-banner-BxlXxssi.js +1 -0
- package/dist/assets/error-panel-4rKxybFL.js +1 -0
- package/dist/assets/es-CjWf0wU3.js +5 -0
- package/dist/assets/esm-CcSYdGmP.js +1 -0
- package/dist/assets/esm-jhgLTcf6.js +1 -0
- package/dist/assets/eye-off-n1Li95bE.js +1 -0
- package/dist/assets/factor-CDbckATe.js +1 -0
- package/dist/assets/factor-PbpmJuj6.js +1 -0
- package/dist/assets/field-Dpiu3eud.js +1 -0
- package/dist/assets/file-BrdxGLRX.js +1 -0
- package/dist/assets/file-explorer-panel-Bep-85KO.js +26 -0
- package/dist/assets/file-headphone-BrQspHac.js +1 -0
- package/dist/assets/file-icons-CSF7UWQn.js +1 -0
- package/dist/assets/fileToBase64-Bzn96tYq.js +1 -0
- package/dist/assets/flatten-Dl4V1ub3.js +1 -0
- package/dist/assets/floating-outline-DzcyDJwQ.js +1 -0
- package/dist/assets/flowDiagram-NV44I4VS-BqW0suiP.js +162 -0
- package/dist/assets/focus-BRfyPUhi.js +1 -0
- package/dist/assets/form-DBaVPTFv.js +2 -0
- package/dist/assets/formats-CQbVJYLi.js +1 -0
- package/dist/assets/formatting-CbFi9xG8.js +1 -0
- package/dist/assets/forth-ClT6YoKq.js +1 -0
- package/dist/assets/fortran-D3wR_E-8.js +1 -0
- package/dist/assets/fullscreen-BDxedMYP.js +41 -0
- package/dist/assets/gallery-page-ClCkynuR.js +1 -0
- package/dist/assets/ganttDiagram-JELNMOA3-CeCvJWgC.js +267 -0
- package/dist/assets/gas-_ShnzaTM.js +1 -0
- package/dist/assets/get-C-qh_et5.js +1 -0
- package/dist/assets/gherkin-LsHtc0Ns.js +1 -0
- package/dist/assets/gitGraph-G5XIXVHT-nrZ-BMna.js +1 -0
- package/dist/assets/gitGraphDiagram-V2S2FVAM-Dn1AbOWu.js +65 -0
- package/dist/assets/github-BKS_2Qwn.js +1 -0
- package/dist/assets/glide-data-editor-n2Pw7Fk9.js +132 -0
- package/dist/assets/globals-DY_dRKpv.js +1 -0
- package/dist/assets/graphlib-CRNG9rUk.js +1 -0
- package/dist/assets/groovy-D_Yv0Fac.js +1 -0
- package/dist/assets/hasIn-DiS_ryrS.js +1 -0
- package/dist/assets/haskell-qhM1HAIB.js +1 -0
- package/dist/assets/haxe-Bi62PpIr.js +1 -0
- package/dist/assets/home-page-BvfssQ5c.js +4 -0
- package/dist/assets/hooks-B2ArfcJq.js +1 -0
- package/dist/assets/html-to-image-BOWUS6J2.js +2 -0
- package/dist/assets/icons-C66kZH_4.js +1 -0
- package/dist/assets/idl-CI42bOaI.js +1 -0
- package/dist/assets/image-HpSc22eh.js +1 -0
- package/dist/assets/index-CD0jEnvj.css +2 -0
- package/dist/assets/index-D6-su6XF.js +42 -0
- package/dist/assets/info-VBDWY6EO-Bn_7XCeN.js +1 -0
- package/dist/assets/infoDiagram-HS3SLOUP-DTO3Z6Cg.js +2 -0
- package/dist/assets/input-2egRGOhT.js +1 -0
- package/dist/assets/isEmpty-CXeoXbuc.js +1 -0
- package/dist/assets/isValid-KoNx_uxe.js +1 -0
- package/dist/assets/javascript-BNZ5YnSy.js +1 -0
- package/dist/assets/journeyDiagram-XKPGCS4Q-BQL61Vfo.js +139 -0
- package/dist/assets/julia-dpVUKOp6.js +1 -0
- package/dist/assets/kanban-definition-3W4ZIXB7-CMoUF4Qw.js +89 -0
- package/dist/assets/kbd-DSY6_TYl.js +1 -0
- package/dist/assets/kiosk-mode-BJNsfVZJ.js +1 -0
- package/dist/assets/label-DTR8T0AE.js +1 -0
- package/dist/assets/layout-Cp0JtSeH.js +9 -0
- package/dist/assets/linear-DxS7NPzz.js +1 -0
- package/dist/assets/link-DlqtQzll.js +1 -0
- package/dist/assets/links-D-VMsA11.js +1 -0
- package/dist/assets/links-DhwG_EVu.js +1 -0
- package/dist/assets/livescript-BDwSUbUd.js +1 -0
- package/dist/assets/logs-panel-bp6XOaLO.js +1 -0
- package/dist/assets/loro_wasm_bg-DpX928kr.js +1 -0
- package/dist/assets/lua-cGUKNtb5.js +1 -0
- package/dist/assets/maps-C48Oksn0.js +1 -0
- package/dist/assets/marimo-icons-Ce24dQVN.js +1 -0
- package/dist/assets/markdown-renderer-3M2UXZOE.js +5 -0
- package/dist/assets/mathematica-D4XScfvP.js +1 -0
- package/dist/assets/mbox-COnP75oc.js +1 -0
- package/dist/assets/memoize-Tp7rARFe.js +1 -0
- package/dist/assets/menu-items-CwUpDHG7.js +1 -0
- package/dist/assets/merge-_9WLTEyt.js +1 -0
- package/dist/assets/mermaid-4DMBBIKO-D-U6KmKa.js +1 -0
- package/dist/assets/mermaid-CI6k86rB.js +11 -0
- package/dist/assets/mermaid-parser.core-B0EhnNjP.js +4 -0
- package/dist/assets/message-circle-QFYtD-Lc.js +1 -0
- package/dist/assets/min-12WNOJ9e.js +1 -0
- package/dist/assets/mindmap-definition-VGOIOE7T-C0BN8YhO.js +68 -0
- package/dist/assets/mirc-DXskkW6M.js +1 -0
- package/dist/assets/mllike-B3ebn_fS.js +1 -0
- package/dist/assets/modelica-Df8_BOFz.js +1 -0
- package/dist/assets/mscgen-ugK6iLdl.js +1 -0
- package/dist/assets/multi-icon-nJMmVh2f.js +1 -0
- package/dist/assets/multi-map-rafH3cg3.js +1 -0
- package/dist/assets/mumps-Qes0D9Sq.js +1 -0
- package/dist/assets/name-cell-input-CUkoykAD.js +1 -0
- package/dist/assets/now-CsYTPAhW.js +1 -0
- package/dist/assets/nsis-BbDlITQ-.js +1 -0
- package/dist/assets/nsis-CvTk2ElD.js +1 -0
- package/dist/assets/ntriples-BrWSHgAl.js +1 -0
- package/dist/assets/number-overlay-editor-DJEXT_Ye.js +9 -0
- package/dist/assets/numbers-epUg4eUW.js +1 -0
- package/dist/assets/octave--UXUC2au.js +1 -0
- package/dist/assets/once-DRroIaBz.js +1 -0
- package/dist/assets/outline-panel-s7vxHE_P.js +1 -0
- package/dist/assets/oz-SCICUQnB.js +1 -0
- package/dist/assets/packages-panel-CDb4sauq.js +1 -0
- package/dist/assets/packet-DYOGHKS2-B53MIhbR.js +1 -0
- package/dist/assets/panel-context-DgIiEtMa.js +1 -0
- package/dist/assets/panels-rhd1T559.js +1 -0
- package/dist/assets/pascal-BZRIRN0Y.js +1 -0
- package/dist/assets/perl-BJBf_VRX.js +1 -0
- package/dist/assets/pick-DqWUNly1.js +1 -0
- package/dist/assets/pie-VRWISCQL-CsQYRyI_.js +1 -0
- package/dist/assets/pieDiagram-ADFJNKIX-CZ1pBex_.js +30 -0
- package/dist/assets/pig-8VtGvtGP.js +1 -0
- package/dist/assets/play-CEytussU.js +1 -0
- package/dist/assets/plus-BueqiM86.js +1 -0
- package/dist/assets/popover-UExmgBsf.js +1 -0
- package/dist/assets/powershell-MUdKU-yo.js +1 -0
- package/dist/assets/precisionRound-BMPhtTJQ.js +1 -0
- package/dist/assets/process-output-C6_eNZv8.js +1 -0
- package/dist/assets/properties-B_YTP79K.js +1 -0
- package/dist/assets/protobuf-BjqtN1d3.js +1 -0
- package/dist/assets/pug-B2p6efPp.js +1 -0
- package/dist/assets/pug-pCMDyY3V.js +1 -0
- package/dist/assets/puppet-ByNusmmY.js +1 -0
- package/dist/assets/purify.es-Cg0r2qW-.js +2 -0
- package/dist/assets/python-CeK7Mdg6.js +1 -0
- package/dist/assets/q-BPLn3RjU.js +1 -0
- package/dist/assets/quadrantDiagram-AYHSOK5B-D6LNQBr8.js +7 -0
- package/dist/assets/r-C6hL19P_.js +1 -0
- package/dist/assets/radar-ZZBFDIW7-DixuyYGz.js +1 -0
- package/dist/assets/react-vega-B2Q2ObPu.js +1 -0
- package/dist/assets/react-vega-D3GJC5Ll.js +190 -0
- package/dist/assets/readonly-python-code-BBLUUIbP.js +1 -0
- package/dist/assets/refresh-ccw-BuMhEaS9.js +1 -0
- package/dist/assets/refresh-cw-BmiNHssk.js +1 -0
- package/dist/assets/renderShortcut-B-72v1dC.js +1 -0
- package/dist/assets/request-registry-yZbbPZkh.js +1 -0
- package/dist/assets/requests-DIwGYs0l.js +1 -0
- package/dist/assets/requirementDiagram-UZGBJVZJ-BQCIkW22.js +64 -0
- package/dist/assets/reveal-component-B_RnD8qR.js +91 -0
- package/dist/assets/reveal-component-DlPTFz1w.css +1 -0
- package/dist/assets/rotate-ccw-Bwso-5RT.js +1 -0
- package/dist/assets/rpm-Cepx5AK5.js +1 -0
- package/dist/assets/ruby-8a_JNJtC.js +1 -0
- package/dist/assets/run-page-DJpwa_b_.js +1 -0
- package/dist/assets/runs-BBFoea9K.js +1 -0
- package/dist/assets/sankeyDiagram-TZEHDZUN-WXVSVZRc.js +10 -0
- package/dist/assets/sas-DRXu6Kkn.js +1 -0
- package/dist/assets/save-B_q9ApPf.js +1 -0
- package/dist/assets/scheme-DaBlDkbO.js +1 -0
- package/dist/assets/scratchpad-panel-Ba0rcWha.js +1 -0
- package/dist/assets/secrets-panel-B6HrST_M.js +1 -0
- package/dist/assets/select-5i7URBEn.js +1 -0
- package/dist/assets/sequenceDiagram-WL72ISMW-FSYTKWFS.js +145 -0
- package/dist/assets/session-DdhIEena.js +1 -0
- package/dist/assets/session-panel-DY3Z3ICZ.js +1 -0
- package/dist/assets/settings-C_KZ1Eue.js +1 -0
- package/dist/assets/share-CJEPnWjm.js +1 -0
- package/dist/assets/shell-CEmng-T5.js +1 -0
- package/dist/assets/sieve-CTG31Wbe.js +1 -0
- package/dist/assets/slide-Bv2zR5_1.js +1 -0
- package/dist/assets/slides-BVvo79ll.css +1 -0
- package/dist/assets/smalltalk-DlBjAIRH.js +1 -0
- package/dist/assets/snippets-panel-tfceTIEM.js +1 -0
- package/dist/assets/sparkles-BRTQ46qC.js +1 -0
- package/dist/assets/sparql-D8XQtNgL.js +1 -0
- package/dist/assets/spec-6oUobewY.js +1 -0
- package/dist/assets/spinner-jEqwgi_c.js +1 -0
- package/dist/assets/square-function-DN3RwIjj.js +1 -0
- package/dist/assets/square-k2WwJdZy.js +1 -0
- package/dist/assets/src-COk1uIaa.js +1 -0
- package/dist/assets/state-Dlj7aAV2.js +1 -0
- package/dist/assets/state-DwYUxIVe.js +3 -0
- package/dist/assets/state-INwBo8-b.js +1 -0
- package/dist/assets/state-SzKMGrBW.js +1 -0
- package/dist/assets/stateDiagram-FKZM4ZOC-NXeF8b27.js +1 -0
- package/dist/assets/stateDiagram-v2-4FDKWEC3-co6cLoce.js +1 -0
- package/dist/assets/stex-CXcPf-7C.js +1 -0
- package/dist/assets/strings-md4mFbOQ.js +2 -0
- package/dist/assets/stylus-DpfM4Y-0.js +1 -0
- package/dist/assets/swift-Bevjlmsx.js +1 -0
- package/dist/assets/swiper-component-BIp7oQxt.js +1 -0
- package/dist/assets/swiper-component-a65-SW8d.css +1 -0
- package/dist/assets/switch-CqJGGLBT.js +1 -0
- package/dist/assets/table-6NxtGaCm.js +1 -0
- package/dist/assets/table-CZ3rujd6.js +1 -0
- package/dist/assets/tcl-CWB1W9St.js +1 -0
- package/dist/assets/terminal-6UFUAGzf.js +62 -0
- package/dist/assets/textarea-D2liylO5.js +1 -0
- package/dist/assets/textile-DrGyKlBQ.js +1 -0
- package/dist/assets/time-hqD5bg84.js +1 -0
- package/dist/assets/timeline-definition-IT6M3QCI-B3aCCYAY.js +61 -0
- package/dist/assets/toDate-B5A0DFEz.js +1 -0
- package/dist/assets/toml-CF49H3Gs.js +1 -0
- package/dist/assets/tooltip-Gcwqb_SK.js +1 -0
- package/dist/assets/tracing-BUxVK-Z_.js +1 -0
- package/dist/assets/tracing-panel-BZQdh8Uh.js +2 -0
- package/dist/assets/trash-2-C5AzNaHr.js +1 -0
- package/dist/assets/trash-BUseJO4n.js +1 -0
- package/dist/assets/tree-Dtn4o2IZ.js +3 -0
- package/dist/assets/treemap-GDKQZRPO-C7ssVrVz.js +1 -0
- package/dist/assets/triangle-alert-CBEvAwaa.js +1 -0
- package/dist/assets/troff-DS9glUnj.js +1 -0
- package/dist/assets/ttcn-cfg-D8JUANmi.js +1 -0
- package/dist/assets/ttcn-iXXxBDpr.js +1 -0
- package/dist/assets/turtle-IsYxGpD1.js +1 -0
- package/dist/assets/types-Bpx1EWqM.js +1 -0
- package/dist/assets/useAddCell-xtQoaf-X.js +1 -0
- package/dist/assets/useAsyncData-BRNkjHs1.js +1 -0
- package/dist/assets/useBoolean-D2Wc5G49.js +1 -0
- package/dist/assets/useCellActionButton-DXgH5B4A.js +1 -0
- package/dist/assets/useDateFormatter-_XK-fjTQ.js +1 -0
- package/dist/assets/useDebounce-BxKDvvzN.js +1 -0
- package/dist/assets/useDeleteCell-C1_f7lEy.js +1 -0
- package/dist/assets/useDependencyPanelTab-PKhgm9-V.js +1 -0
- package/dist/assets/useEventListener-BR0C1MaI.js +1 -0
- package/dist/assets/useHotkey-j1wCvjNq.js +1 -0
- package/dist/assets/useIframeCapabilities-Bqipv_jK.js +1 -0
- package/dist/assets/useInstallPackage-BHZ1EjqC.js +1 -0
- package/dist/assets/useInterval-BePSL0QQ.js +1 -0
- package/dist/assets/useLifecycle-DieWOfXE.js +1 -0
- package/dist/assets/useNotebookActions-BcUD5CgV.js +1 -0
- package/dist/assets/useNumberFormatter-D_mZTdYK.js +1 -0
- package/dist/assets/usePress-Cj1lHaxt.js +7 -0
- package/dist/assets/useRunCells-cIxqHRwZ.js +1 -0
- package/dist/assets/useSplitCell-B0qjEpW1.js +1 -0
- package/dist/assets/useTheme-AmxLvSQ5.js +1 -0
- package/dist/assets/utils-DIGrmLDO.js +1 -0
- package/dist/assets/utils-DVodi8oQ.js +61 -0
- package/dist/assets/vb-CJBc18Ui.js +1 -0
- package/dist/assets/vbscript-f-536WNP.js +1 -0
- package/dist/assets/vega-component-Dh_sdcAu.js +1 -0
- package/dist/assets/vega-loader.browser-CRZ52CKf.js +6 -0
- package/dist/assets/velocity-BKcC2FIu.js +1 -0
- package/dist/assets/verilog-BwwsdDY5.js +1 -0
- package/dist/assets/vhdl-BG8PfJd8.js +1 -0
- package/dist/assets/webidl-BHBWV-F6.js +1 -0
- package/dist/assets/worker-ztl1wuLb.js +120 -0
- package/dist/assets/workflow-ktgLxNKJ.js +1 -0
- package/dist/assets/write-secret-modal-DNCTT09O.js +1 -0
- package/dist/assets/x-C-6liIBr.js +1 -0
- package/dist/assets/xquery-BSuR2Wlv.js +1 -0
- package/dist/assets/xychartDiagram-PRI3JC2R-eSL2LfH9.js +7 -0
- package/dist/assets/yacas-DdJ1FiXV.js +1 -0
- package/dist/assets/youtube-CXGBiuia.js +1 -0
- package/dist/assets/z80-BWehJ3ot.js +1 -0
- package/dist/index.html +167 -170
- package/package.json +4 -2
- package/src/__mocks__/requests.ts +1 -0
- package/src/components/data-table/TableBottomBar.tsx +5 -1
- package/src/components/data-table/__tests__/filters.test.ts +304 -0
- package/src/components/data-table/__tests__/pagination.test.tsx +46 -132
- package/src/components/data-table/__tests__/sentinel-cell.test.tsx +83 -0
- package/src/components/data-table/__tests__/utils.test.ts +128 -0
- package/src/components/data-table/column-explorer-panel/column-explorer.tsx +1 -1
- package/src/components/data-table/column-header.tsx +11 -2
- package/src/components/data-table/columns.tsx +16 -2
- package/src/components/data-table/export-actions.tsx +62 -23
- package/src/components/data-table/filters.ts +87 -33
- package/src/components/data-table/pagination.tsx +189 -76
- package/src/components/data-table/schemas.ts +8 -1
- package/src/components/data-table/sentinel-cell.tsx +90 -0
- package/src/components/data-table/types.ts +23 -4
- package/src/components/data-table/utils.ts +74 -1
- package/src/components/datasources/__tests__/missing-package-prompt.test.tsx +103 -0
- package/src/components/datasources/missing-package-prompt.tsx +49 -0
- package/src/components/editor/actions/useNotebookActions.tsx +12 -0
- package/src/components/editor/cell/code/cell-editor.tsx +1 -0
- package/src/components/editor/file-tree/__tests__/requesting-tree.test.ts +33 -0
- package/src/components/editor/file-tree/file-explorer.tsx +8 -33
- package/src/components/editor/file-tree/requesting-tree.tsx +41 -0
- package/src/components/editor/file-tree/state.tsx +1 -0
- package/src/components/editor/renderers/slides-layout/slides-layout.tsx +9 -17
- package/src/components/home/components.tsx +7 -0
- package/src/components/slides/reveal-component.tsx +109 -0
- package/src/components/slides/reveal-slides.css +42 -0
- package/src/components/slides/slides.css +0 -65
- package/src/components/slides/swiper-component.tsx +159 -0
- package/src/components/slides/swiper-slides.css +64 -0
- package/src/components/static-html/static-banner.tsx +23 -14
- package/src/components/ui/toast.tsx +16 -7
- package/src/core/cells/__tests__/apply-transaction.test.ts +483 -0
- package/src/core/cells/__tests__/cells.test.ts +110 -0
- package/src/core/cells/__tests__/logs.test.ts +101 -0
- package/src/core/cells/cells.ts +18 -0
- package/src/core/cells/document-changes.ts +34 -1
- package/src/core/cells/logs.ts +9 -1
- package/src/core/codemirror/__tests__/__snapshots__/setup.test.ts.snap +4 -14
- package/src/core/codemirror/cells/extensions.ts +0 -4
- package/src/core/codemirror/keymaps/keymaps.ts +69 -2
- package/src/core/constants.ts +1 -0
- package/src/core/islands/bridge.ts +1 -0
- package/src/core/mode.ts +10 -1
- package/src/core/network/requests-lazy.ts +1 -0
- package/src/core/network/requests-network.ts +8 -0
- package/src/core/network/requests-static.ts +1 -0
- package/src/core/network/requests-toasting.tsx +1 -0
- package/src/core/network/types.ts +3 -0
- package/src/core/wasm/__tests__/bridge.test.ts +113 -0
- package/src/core/wasm/bridge.ts +13 -2
- package/src/core/wasm/worker/types.ts +3 -0
- package/src/core/wasm/worker/worker.ts +1 -0
- package/src/plugins/core/__test__/trusted-url.test.ts +45 -1
- package/src/plugins/core/trusted-url.ts +27 -2
- package/src/plugins/impl/DataTablePlugin.tsx +7 -20
- package/src/plugins/impl/FileBrowserPlugin.tsx +81 -81
- package/src/plugins/impl/TabsPlugin.tsx +18 -12
- package/src/plugins/impl/data-frames/DataFramePlugin.tsx +4 -4
- package/src/plugins/impl/data-frames/schema.ts +41 -9
- package/src/plugins/impl/data-frames/utils/operators.ts +2 -0
- package/src/plugins/impl/matplotlib/matplotlib-renderer.ts +16 -0
- package/src/plugins/layout/carousel/CarouselPlugin.tsx +3 -1
- package/dist/assets/CellStatus-Bwtcvgko.js +0 -1
- package/dist/assets/ConnectedDataExplorerComponent-B0Mh-Jhz.js +0 -1
- package/dist/assets/DeferredRequestRegistry-BLWK1eKa.js +0 -1
- package/dist/assets/ErrorBoundary-CxTq44MI.js +0 -1
- package/dist/assets/ImageComparisonComponent-DKZ20H-k.js +0 -1
- package/dist/assets/ImperativeModal-hsPVDTG-.js +0 -1
- package/dist/assets/Inputs-6ni2iCdV.js +0 -1
- package/dist/assets/JsonOutput-ZBMYDZ3q.js +0 -49
- package/dist/assets/LazyAnyLanguageCodeMirror-CsrwfW0n.js +0 -2
- package/dist/assets/MarimoErrorOutput-DLREr23s.js +0 -7
- package/dist/assets/Plot-DHwg76ki.js +0 -3789
- package/dist/assets/RSPContexts-DzigvqmT.js +0 -1
- package/dist/assets/RenderHTML-5FjN3OZH.js +0 -1
- package/dist/assets/__vite-browser-external-DT1nudb6.js +0 -1
- package/dist/assets/_basePickBy-C0EPK3Lm.js +0 -1
- package/dist/assets/_baseSet-49dbm-yb.js +0 -1
- package/dist/assets/_baseUniq-Mbsklgl4.js +0 -1
- package/dist/assets/add-cell-with-ai-DbPkyXyg.js +0 -92
- package/dist/assets/add-connection-dialog-sNnLlFNN.js +0 -167
- package/dist/assets/agent-panel-DMb4Q9pS.js +0 -287
- package/dist/assets/ai-model-dropdown-CZB8Xt_D.js +0 -5
- package/dist/assets/alert-DF3HbVtk.js +0 -1
- package/dist/assets/alert-dialog-C2mTH3GM.js +0 -11
- package/dist/assets/any-language-editor-DkEDDsUJ.js +0 -1
- package/dist/assets/apl-CuOurP-c.js +0 -1
- package/dist/assets/app-config-button-b2p8_NdZ.js +0 -1
- package/dist/assets/architecture-7HQA4BMR-Ch3DQout.js +0 -1
- package/dist/assets/architectureDiagram-VXUJARFQ-AnnUUivr.js +0 -36
- package/dist/assets/arrays-DAC2orgH.js +0 -1
- package/dist/assets/asciiarmor-C4q0KAuh.js +0 -1
- package/dist/assets/asn1-gmsDz0li.js +0 -1
- package/dist/assets/badge-CwbVR_sO.js +0 -1
- package/dist/assets/blockDiagram-VD42YOAC-BSbV1P7v.js +0 -122
- package/dist/assets/bot-message-square-BbnE8Q1J.js +0 -1
- package/dist/assets/brainfuck-RlYwG6Xx.js +0 -1
- package/dist/assets/button-COIw2x9i.js +0 -1
- package/dist/assets/c4Diagram-YG6GDRKO-mvY8KdgG.js +0 -10
- package/dist/assets/cache-panel-C3V9UubH.js +0 -1
- package/dist/assets/capabilities-BmGdj50E.js +0 -1
- package/dist/assets/card-DCTJ4k_v.js +0 -1
- package/dist/assets/cell-editor-BhmiBBOV.js +0 -22
- package/dist/assets/cell-link-DMyOfytV.js +0 -1
- package/dist/assets/cells-CAft_y9h.js +0 -229
- package/dist/assets/channel-QWYayEtd.js +0 -1
- package/dist/assets/chart-no-axes-column-CsXoiEZx.js +0 -1
- package/dist/assets/chat-display-CnlcyHaA.js +0 -1
- package/dist/assets/chat-panel-DujR1b5z.js +0 -3
- package/dist/assets/chat-ui-D-qk0TXi.js +0 -4
- package/dist/assets/check-B-sKate2.js +0 -1
- package/dist/assets/chevron-right-CgvDWFE3.js +0 -1
- package/dist/assets/chunk-4F5CHEZ2-BXUyRfDO.js +0 -1
- package/dist/assets/chunk-55IACEB6-CRnvfQlo.js +0 -1
- package/dist/assets/chunk-5FQGJX7Z-Cyc7d5AB.js +0 -113
- package/dist/assets/chunk-ABZYJK2D-C6__zbIg.js +0 -80
- package/dist/assets/chunk-ATLVNIR6-DioUoCL-.js +0 -1
- package/dist/assets/chunk-B2363JML-CY6QiDyK.js +0 -1
- package/dist/assets/chunk-B4BG7PRW-DO-H9cDE.js +0 -165
- package/dist/assets/chunk-DI55MBZ5-DWj-L2ic.js +0 -220
- package/dist/assets/chunk-EXTU4WIE-B_Um-dIN.js +0 -1
- package/dist/assets/chunk-FRFDVMJY-CjptiqNO.js +0 -1
- package/dist/assets/chunk-JA3XYJ7Z-WVXBR9gk.js +0 -70
- package/dist/assets/chunk-JZLCHNYA-D6hMv1Qk.js +0 -54
- package/dist/assets/chunk-N4CR4FBY-DEy2vl_t.js +0 -2
- package/dist/assets/chunk-PL6DKKU2-BdoRD2nE.js +0 -1
- package/dist/assets/chunk-QN33PNHL-CC2wokMI.js +0 -1
- package/dist/assets/chunk-QXUST7PY-B7IiJgbH.js +0 -7
- package/dist/assets/chunk-S3R3BYOJ-QzFziHq0.js +0 -2
- package/dist/assets/chunk-SJTYNZTY-rJzTNWIe.js +0 -1
- package/dist/assets/chunk-TCCFYFTB-ByQR3Ftq.js +0 -125
- package/dist/assets/chunk-TQ3KTPDO-CURFAmMV.js +0 -1
- package/dist/assets/chunk-TZMSLE5B-D1IHu2ux.js +0 -1
- package/dist/assets/chunk-UMXZTB3W-C4miLMVf.js +0 -1
- package/dist/assets/circle-check-DlWaawuO.js +0 -1
- package/dist/assets/circle-play-Ddna5GuC.js +0 -1
- package/dist/assets/circle-plus-ifSmVHqa.js +0 -1
- package/dist/assets/classDiagram-2ON5EDUG-BANhktcu.js +0 -1
- package/dist/assets/classDiagram-v2-WZHVMYZB-D9c1d8Pg.js +0 -1
- package/dist/assets/clear-button-DpuufuDm.js +0 -1
- package/dist/assets/clike-0Uxq7Mmj.js +0 -1
- package/dist/assets/clipboard-paste-Br9mwBe9.js +0 -1
- package/dist/assets/clojure-DaWCBM5I.js +0 -1
- package/dist/assets/clone-DrGu00U8.js +0 -1
- package/dist/assets/cmake-Nobmxv0n.js +0 -1
- package/dist/assets/cn-DYvqRARy.js +0 -1
- package/dist/assets/cobol--NmnvDWE.js +0 -1
- package/dist/assets/code-block-37QAKDTI-Cfn-cGs0.js +0 -2
- package/dist/assets/code-xml-DxxzgVgU.js +0 -1
- package/dist/assets/coffeescript-Cv1Wf46X.js +0 -1
- package/dist/assets/column-preview-D2B6qQUU.js +0 -1
- package/dist/assets/command-DnzBp4l4.js +0 -1
- package/dist/assets/command-palette-eS5sJOYR.js +0 -1
- package/dist/assets/common-BK4i6reD.js +0 -1
- package/dist/assets/commonlisp-8PbUodZQ.js +0 -1
- package/dist/assets/components-CviIANwr.js +0 -1
- package/dist/assets/components-Dta3XEEY.js +0 -1
- package/dist/assets/config-DoZCLcOb.js +0 -1
- package/dist/assets/constants-tOPFFcLZ.js +0 -1
- package/dist/assets/context-DGqo1TbK.js +0 -1
- package/dist/assets/copy-Bizk-4hH.js +0 -1
- package/dist/assets/copy-DFMsQ6MJ.js +0 -1
- package/dist/assets/copy-icon-Ci08KCdY.js +0 -1
- package/dist/assets/cose-bilkent-S5V4N54A-BpHOyjit.js +0 -1
- package/dist/assets/createReducer-CYlwteGD.js +0 -1
- package/dist/assets/crystal-DOOJCjhq.js +0 -1
- package/dist/assets/css-vLkD8PfS.js +0 -1
- package/dist/assets/cypher-Aazxis5r.js +0 -1
- package/dist/assets/d-B-5Jnu40.js +0 -1
- package/dist/assets/dagre-6UL2VRFP-BHbCmhc1.js +0 -4
- package/dist/assets/dagre-BhaTummv.js +0 -1
- package/dist/assets/data-grid-overlay-editor-B6BRn3Yh.js +0 -1
- package/dist/assets/database-zap-BxfYZ6ML.js +0 -1
- package/dist/assets/datasource-C1kSlT4s.js +0 -3
- package/dist/assets/dates-stqTIkXD.js +0 -1
- package/dist/assets/debounce-BbSyBDA8.js +0 -1
- package/dist/assets/dependency-graph-panel-CMZnqwyn.js +0 -5
- package/dist/assets/diagram-PSM6KHXK-UdiW7QQb.js +0 -24
- package/dist/assets/diagram-QEK2KX5R-3ZxYNJPR.js +0 -43
- package/dist/assets/diagram-S2PKOQOG-C5dLQnUR.js +0 -24
- package/dist/assets/dialog-H-hXtEOq.js +0 -1
- package/dist/assets/diff-8GFZiZ2V.js +0 -1
- package/dist/assets/dist-04hxiWlB.js +0 -1
- package/dist/assets/dist-4lB-oR9j.js +0 -1
- package/dist/assets/dist-B1XdVflW.js +0 -1
- package/dist/assets/dist-B6i4q8vX.js +0 -1
- package/dist/assets/dist-BNTOYRCs.js +0 -1
- package/dist/assets/dist-BPkOpnKv.js +0 -2
- package/dist/assets/dist-BQuOw7vA.js +0 -1
- package/dist/assets/dist-BYHplnRv.js +0 -1
- package/dist/assets/dist-BZIkwcpM.js +0 -1
- package/dist/assets/dist-BaQhtL0H.js +0 -1
- package/dist/assets/dist-BrK3C3Mc.js +0 -1
- package/dist/assets/dist-BrR2nUId.js +0 -1
- package/dist/assets/dist-BuHKsU8Z.js +0 -7
- package/dist/assets/dist-BvlMLwcr.js +0 -6
- package/dist/assets/dist-ByWFdhfz.js +0 -7
- package/dist/assets/dist-C0ZJnmgG.js +0 -1
- package/dist/assets/dist-C80Ed7Y5.js +0 -3
- package/dist/assets/dist-CHgkfE72.js +0 -1
- package/dist/assets/dist-CJDjz8TY.js +0 -1
- package/dist/assets/dist-CQvRfEJt.js +0 -1
- package/dist/assets/dist-CWLNI6B7.js +0 -1
- package/dist/assets/dist-CaQ_ONVt.js +0 -1
- package/dist/assets/dist-CgYlATe-.js +0 -3
- package/dist/assets/dist-CsTHFGvB.js +0 -1
- package/dist/assets/dist-CxquLoAZ.js +0 -1
- package/dist/assets/dist-D281cBMB.js +0 -1
- package/dist/assets/dist-D797J-u_.js +0 -1
- package/dist/assets/dist-DDiNOVwA.js +0 -1
- package/dist/assets/dist-DW-_Bd4t.js +0 -1
- package/dist/assets/dist-DZJfxwLb.js +0 -2
- package/dist/assets/dist-D_Lhmjyi.js +0 -1
- package/dist/assets/dist-DjS0QmS_.js +0 -1
- package/dist/assets/dist-Dl90TzK0.js +0 -1
- package/dist/assets/dist-DlC_MlJ3.js +0 -1
- package/dist/assets/dist-Dnlw22ji.js +0 -13
- package/dist/assets/dist-Dz1-lL07.js +0 -1
- package/dist/assets/dist-Gx6Yy96j.js +0 -1
- package/dist/assets/dist-Hgde9xRP.js +0 -1
- package/dist/assets/dist-IBCCX0qd.js +0 -1
- package/dist/assets/dist-VwkX7yeV.js +0 -13
- package/dist/assets/dist-Yk16cgLk.js +0 -1
- package/dist/assets/dist-ZzjYvfSN.js +0 -1
- package/dist/assets/dist-aDPblQOY.js +0 -1
- package/dist/assets/dist-bOlBcn5A.js +0 -1
- package/dist/assets/dist-eH2iPs-V.js +0 -1
- package/dist/assets/dist-fPjTlo0F.js +0 -1
- package/dist/assets/dist-sZgjGm4S.js +0 -1
- package/dist/assets/dist-umvL589W.js +0 -1
- package/dist/assets/dockerfile-CmMwYXtW.js +0 -1
- package/dist/assets/documentation-panel-D9WN55Gq.js +0 -1
- package/dist/assets/download-COyB8G-Y.js +0 -9
- package/dist/assets/dropdown-menu-DrHAuMTb.js +0 -1
- package/dist/assets/dtd-DbhDFQ4b.js +0 -1
- package/dist/assets/dylan-4K5wZgOx.js +0 -1
- package/dist/assets/ecl-BCQ-LzuG.js +0 -1
- package/dist/assets/edit-page-DlRqSgY9.js +0 -9
- package/dist/assets/eiffel-DjgNAio4.js +0 -1
- package/dist/assets/ellipsis-DidENKDy.js +0 -1
- package/dist/assets/ellipsis-vertical-DEH0lwkn.js +0 -1
- package/dist/assets/elm-BJzUTgDF.js +0 -1
- package/dist/assets/empty-state-BbLVXQU7.js +0 -1
- package/dist/assets/en-US-JRtp5zfw.js +0 -1
- package/dist/assets/erDiagram-Q2GNP2WA-CZOjIM5c.js +0 -60
- package/dist/assets/erlang-BMwCh1Tz.js +0 -1
- package/dist/assets/error-banner-frvr6JXK.js +0 -1
- package/dist/assets/error-panel-5I4mWGfs.js +0 -1
- package/dist/assets/es-ISEb5HNL.js +0 -5
- package/dist/assets/esm-BqofWdD5.js +0 -1
- package/dist/assets/esm-D1fwWXHg.js +0 -1
- package/dist/assets/eye-off-DgRJ-xBZ.js +0 -1
- package/dist/assets/factor-B-0VZGQP.js +0 -1
- package/dist/assets/factor-DuQK79vi.js +0 -1
- package/dist/assets/field-DaQqUJ5I.js +0 -1
- package/dist/assets/file-explorer-panel-B86r63YC.js +0 -26
- package/dist/assets/file-headphone-5_PGMxRL.js +0 -1
- package/dist/assets/file-icons-CRsc39Ny.js +0 -1
- package/dist/assets/file-l37OnSN4.js +0 -1
- package/dist/assets/fileToBase64-D7Ur9Qxq.js +0 -1
- package/dist/assets/floating-outline-Cj9Gdjkf.js +0 -1
- package/dist/assets/flowDiagram-NV44I4VS-D_6XQmDF.js +0 -162
- package/dist/assets/focus-BtOH5aLt.js +0 -1
- package/dist/assets/form-Dd-gRdD5.js +0 -2
- package/dist/assets/formats-BQHP_yQk.js +0 -1
- package/dist/assets/formatting-BCAZDWQ0.js +0 -1
- package/dist/assets/forth-CN0H2hBb.js +0 -1
- package/dist/assets/fortran-D-JaE1fl.js +0 -1
- package/dist/assets/fullscreen-k58KVlT-.js +0 -41
- package/dist/assets/gallery-page-BDI9wEUZ.js +0 -1
- package/dist/assets/ganttDiagram-JELNMOA3-KWj06bYC.js +0 -267
- package/dist/assets/gas-B-bID6UX.js +0 -1
- package/dist/assets/get-D7jeR2wg.js +0 -1
- package/dist/assets/gherkin-JGxOpXhU.js +0 -1
- package/dist/assets/gitGraph-G5XIXVHT-DhmryHL1.js +0 -1
- package/dist/assets/gitGraphDiagram-V2S2FVAM-B3wFQI4T.js +0 -65
- package/dist/assets/github-C3N4cuN4.js +0 -1
- package/dist/assets/glide-data-editor-QI6B6uKw.js +0 -132
- package/dist/assets/globals-Bu6OEURn.js +0 -1
- package/dist/assets/graphlib-V7iwZMUS.js +0 -1
- package/dist/assets/groovy-BHPB9Hfx.js +0 -1
- package/dist/assets/hasIn-DafhTYio.js +0 -1
- package/dist/assets/haskell-By6RbCCv.js +0 -1
- package/dist/assets/haxe-HQiVsOCF.js +0 -1
- package/dist/assets/home-page-B320ImBG.js +0 -4
- package/dist/assets/hooks-B5RY2sms.js +0 -1
- package/dist/assets/html-to-image-WCAzCguU.js +0 -2
- package/dist/assets/icons-DlzgV4KY.js +0 -1
- package/dist/assets/idl-B2iocbwq.js +0 -1
- package/dist/assets/image-BgkzrnsX.js +0 -1
- package/dist/assets/index-BjVgEJVi.js +0 -42
- package/dist/assets/index-CKRn_SiB.css +0 -2
- package/dist/assets/info-VBDWY6EO-DrmKMqYO.js +0 -1
- package/dist/assets/infoDiagram-HS3SLOUP-DihiLNx1.js +0 -2
- package/dist/assets/input-DNCT6U6R.js +0 -1
- package/dist/assets/isArrayLikeObject-ODovYgPQ.js +0 -1
- package/dist/assets/isEmpty-Do0cOI51.js +0 -1
- package/dist/assets/isValid-U-UFA9KI.js +0 -1
- package/dist/assets/javascript-CTjlnOSz.js +0 -1
- package/dist/assets/journeyDiagram-XKPGCS4Q-CyzBM2zk.js +0 -139
- package/dist/assets/julia-BiUkdI9P.js +0 -1
- package/dist/assets/kanban-definition-3W4ZIXB7-9wLZ4rew.js +0 -89
- package/dist/assets/kbd-BUtlbGdu.js +0 -1
- package/dist/assets/kiosk-mode-CJ7p0kAg.js +0 -1
- package/dist/assets/label-C89F4v17.js +0 -1
- package/dist/assets/layout-CnhRBcnG.js +0 -9
- package/dist/assets/linear-BICTUQLW.js +0 -1
- package/dist/assets/link-dU_vDDSR.js +0 -1
- package/dist/assets/links-C19POYUQ.js +0 -1
- package/dist/assets/links-DOybeRem.js +0 -1
- package/dist/assets/livescript-uNIpKRlq.js +0 -1
- package/dist/assets/logs-panel-DG3RlQaY.js +0 -1
- package/dist/assets/loro_wasm_bg-BQvuJIS2.js +0 -1
- package/dist/assets/lua-CMIwWFMm.js +0 -1
- package/dist/assets/maps-B4xARV9R.js +0 -1
- package/dist/assets/marimo-icons-Dp8wmdDL.js +0 -1
- package/dist/assets/markdown-renderer-BDdzHOwK.js +0 -5
- package/dist/assets/mathematica-eDJrChdG.js +0 -1
- package/dist/assets/mbox-zqvBlhy3.js +0 -1
- package/dist/assets/memoize-BwAF2XN5.js +0 -1
- package/dist/assets/menu-items-Dtw5N98_.js +0 -1
- package/dist/assets/merge-BOaDhCTH.js +0 -1
- package/dist/assets/mermaid-4DMBBIKO--O9SSBwI.js +0 -1
- package/dist/assets/mermaid-BPufPrIN.js +0 -11
- package/dist/assets/mermaid-parser.core-CvPV98yl.js +0 -4
- package/dist/assets/message-circle-DiHwtSG8.js +0 -1
- package/dist/assets/min-DWLDRnm3.js +0 -1
- package/dist/assets/mindmap-definition-VGOIOE7T-B5l11lp6.js +0 -68
- package/dist/assets/mirc-DA5aApOX.js +0 -1
- package/dist/assets/mllike-bIsNpdn1.js +0 -1
- package/dist/assets/modelica-0mx6heI0.js +0 -1
- package/dist/assets/mscgen-BKLWiiDn.js +0 -1
- package/dist/assets/multi-icon-CGRsWmew.js +0 -1
- package/dist/assets/multi-map-MSuUqmbC.js +0 -1
- package/dist/assets/mumps-5_kXgafg.js +0 -1
- package/dist/assets/name-cell-input-68gHDuvg.js +0 -1
- package/dist/assets/now-DNX1lT2d.js +0 -1
- package/dist/assets/nsis-DGDbP9K4.js +0 -1
- package/dist/assets/nsis-DOhuqhNG.js +0 -1
- package/dist/assets/ntriples-BWf6tqTo.js +0 -1
- package/dist/assets/number-overlay-editor-cvUhY9ie.js +0 -9
- package/dist/assets/numbers--nDjbAPa.js +0 -1
- package/dist/assets/octave-DmFvn7Va.js +0 -1
- package/dist/assets/once-hq2TLzOp.js +0 -1
- package/dist/assets/outline-panel-Dr0105mz.js +0 -1
- package/dist/assets/oz-TIwA1cRs.js +0 -1
- package/dist/assets/packages-panel-CZHZDUXZ.js +0 -1
- package/dist/assets/packet-DYOGHKS2-CwDZ6UjC.js +0 -1
- package/dist/assets/panel-context-aIZ10ULn.js +0 -1
- package/dist/assets/panels-DkMIu1eO.js +0 -1
- package/dist/assets/pascal-BFfHjByI.js +0 -1
- package/dist/assets/perl-iyEBGoKl.js +0 -1
- package/dist/assets/pick-neNJUP_8.js +0 -1
- package/dist/assets/pie-VRWISCQL-OxD1_FlH.js +0 -1
- package/dist/assets/pieDiagram-ADFJNKIX-ixj1Ihpk.js +0 -30
- package/dist/assets/pig-Du8JEd9u.js +0 -1
- package/dist/assets/play-BdC4C3dp.js +0 -1
- package/dist/assets/plus-BYq_Btg-.js +0 -1
- package/dist/assets/popover-AtoFZ7i4.js +0 -1
- package/dist/assets/powershell-rJPOSwVp.js +0 -1
- package/dist/assets/precisionRound-CU2C3Vxx.js +0 -1
- package/dist/assets/process-output-CGSREMph.js +0 -1
- package/dist/assets/properties-B7p1o35g.js +0 -1
- package/dist/assets/protobuf-DSVPm4uR.js +0 -1
- package/dist/assets/pug-5wW7Sn9S.js +0 -1
- package/dist/assets/pug-BBnJinJ-.js +0 -1
- package/dist/assets/puppet-CvB_7oA0.js +0 -1
- package/dist/assets/purify.es-BFDc-_i_.js +0 -2
- package/dist/assets/python-D-LGD-zO.js +0 -1
- package/dist/assets/q-s96Dgstm.js +0 -1
- package/dist/assets/quadrantDiagram-AYHSOK5B-DAgQxEHI.js +0 -7
- package/dist/assets/r-DCKN0Q_M.js +0 -1
- package/dist/assets/radar-ZZBFDIW7-DJSwOnYp.js +0 -1
- package/dist/assets/range-D-0CV4c0.js +0 -1
- package/dist/assets/react-vega-BVBnH7ue.js +0 -190
- package/dist/assets/react-vega-BfEZWy9T.js +0 -1
- package/dist/assets/readonly-python-code-3lQBDicq.js +0 -1
- package/dist/assets/refresh-ccw-CfYqAbmq.js +0 -1
- package/dist/assets/refresh-cw-CiOe0azG.js +0 -1
- package/dist/assets/renderShortcut-DrDh2657.js +0 -1
- package/dist/assets/request-registry-1QRLEb_0.js +0 -1
- package/dist/assets/requests-9-v2bhoi.js +0 -1
- package/dist/assets/requirementDiagram-UZGBJVZJ-DC0CM6P-.js +0 -64
- package/dist/assets/rotate-ccw-JPx2hOFZ.js +0 -1
- package/dist/assets/rpm-DKF6hj80.js +0 -1
- package/dist/assets/ruby-DrHWYpO-.js +0 -1
- package/dist/assets/run-page-DX60GJ1i.js +0 -1
- package/dist/assets/runs-Qc-nusQ0.js +0 -1
- package/dist/assets/sankeyDiagram-TZEHDZUN-DAWWzAvZ.js +0 -10
- package/dist/assets/sas-Bf--oEyw.js +0 -1
- package/dist/assets/save-bKSHuTCo.js +0 -1
- package/dist/assets/scheme-BZSq5_CL.js +0 -1
- package/dist/assets/scratchpad-panel-DxI-sH1n.js +0 -1
- package/dist/assets/secrets-panel-DWMqzwkS.js +0 -1
- package/dist/assets/select-BwwUWhww.js +0 -1
- package/dist/assets/sequenceDiagram-WL72ISMW-Dmh7vbtw.js +0 -145
- package/dist/assets/session-DdnWW30b.js +0 -1
- package/dist/assets/session-panel-DxZNtbiE.js +0 -1
- package/dist/assets/settings-C1bg8A2T.js +0 -1
- package/dist/assets/share-0LPgOyiW.js +0 -1
- package/dist/assets/shell-C5LsobAY.js +0 -1
- package/dist/assets/sieve-B6cTRfjv.js +0 -1
- package/dist/assets/slides-component-BZCkobYT.css +0 -1
- package/dist/assets/slides-component-ncUJNz7U.js +0 -1
- package/dist/assets/smalltalk-B-ZeF8oP.js +0 -1
- package/dist/assets/snippets-panel-CFXjJW29.js +0 -1
- package/dist/assets/sparkles-B79Qf6ma.js +0 -1
- package/dist/assets/sparql-hKgXdTt3.js +0 -1
- package/dist/assets/spec-DqqZbNbU.js +0 -1
- package/dist/assets/spinner-C5wIpWgQ.js +0 -1
- package/dist/assets/square-COtNnHUC.js +0 -1
- package/dist/assets/square-function-BecUoMho.js +0 -1
- package/dist/assets/src-lJewPvdk.js +0 -1
- package/dist/assets/state-BFn0AerH.js +0 -3
- package/dist/assets/state-BZaEj59U.js +0 -1
- package/dist/assets/state-BgrGQPFs.js +0 -1
- package/dist/assets/state-CDUQVvOe.js +0 -1
- package/dist/assets/stateDiagram-FKZM4ZOC-D9krI4Nw.js +0 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-CbPEQmLi.js +0 -1
- package/dist/assets/stex-Dn4qnyVB.js +0 -1
- package/dist/assets/strings-pfr2N700.js +0 -2
- package/dist/assets/stylus-MJ5VouuS.js +0 -1
- package/dist/assets/swift-jqL65uqK.js +0 -1
- package/dist/assets/switch-YkPg_CVc.js +0 -1
- package/dist/assets/table-B03CpBmt.js +0 -1
- package/dist/assets/table-qC3alE1r.js +0 -1
- package/dist/assets/tcl-D9FDKTky.js +0 -1
- package/dist/assets/terminal-BEaHyVIQ.js +0 -62
- package/dist/assets/textarea-CWy4stSy.js +0 -1
- package/dist/assets/textile-Ne1MkNjB.js +0 -1
- package/dist/assets/time-DLcLlk0u.js +0 -1
- package/dist/assets/timeline-definition-IT6M3QCI-DknnNgba.js +0 -61
- package/dist/assets/toDate-BGIVWsZ9.js +0 -1
- package/dist/assets/toFinite-2vTWYoIX.js +0 -1
- package/dist/assets/toNumber-BvwE1TMv.js +0 -1
- package/dist/assets/toml-Ba1TjbvG.js +0 -1
- package/dist/assets/tooltip-DmqhBBs6.js +0 -1
- package/dist/assets/tracing-CIygWG5q.js +0 -1
- package/dist/assets/tracing-panel-Dk7FE-7H.js +0 -2
- package/dist/assets/trash-2-DunI72kV.js +0 -1
- package/dist/assets/trash-9_cXnavq.js +0 -1
- package/dist/assets/tree-B2IkUHDB.js +0 -3
- package/dist/assets/treemap-GDKQZRPO-DQhwLg1W.js +0 -1
- package/dist/assets/triangle-alert-DJ8dAd4j.js +0 -1
- package/dist/assets/troff-ClRZFpM8.js +0 -1
- package/dist/assets/ttcn-JOxk9-wl.js +0 -1
- package/dist/assets/ttcn-cfg-D-oWP0t7.js +0 -1
- package/dist/assets/turtle-CfJStbTs.js +0 -1
- package/dist/assets/types-BteCqkNg.js +0 -1
- package/dist/assets/useAddCell-BZ5oFC7U.js +0 -1
- package/dist/assets/useAsyncData-aCoWDe-l.js +0 -1
- package/dist/assets/useBoolean-Dk1Mb_so.js +0 -1
- package/dist/assets/useCellActionButton-Dd3hgOb6.js +0 -1
- package/dist/assets/useDateFormatter-BEz9SEXo.js +0 -1
- package/dist/assets/useDebounce-LVL1r3-M.js +0 -1
- package/dist/assets/useDeleteCell-BHcPGuXL.js +0 -1
- package/dist/assets/useDependencyPanelTab-B94SJnJl.js +0 -1
- package/dist/assets/useEventListener-DGjKht0c.js +0 -1
- package/dist/assets/useHotkey-DALUNe8I.js +0 -1
- package/dist/assets/useIframeCapabilities-C8jvQ1Lj.js +0 -1
- package/dist/assets/useInstallPackage-CeM6oPsT.js +0 -1
- package/dist/assets/useInterval-BTxxJQ7C.js +0 -1
- package/dist/assets/useLifecycle-N3bfh_O1.js +0 -1
- package/dist/assets/useNotebookActions-PmHNCN16.js +0 -1
- package/dist/assets/useNumberFormatter-wQU1z0W_.js +0 -1
- package/dist/assets/usePress-BXMIcLWP.js +0 -7
- package/dist/assets/useRunCells-BJn5ZEb6.js +0 -1
- package/dist/assets/useSplitCell-Bfb8riCm.js +0 -1
- package/dist/assets/useTheme-DCDmxPD0.js +0 -1
- package/dist/assets/utils-8btzWeZg.js +0 -1
- package/dist/assets/utils-BZwMGX81.js +0 -61
- package/dist/assets/vb-DtMAcbIy.js +0 -1
- package/dist/assets/vbscript-CUB17r-X.js +0 -1
- package/dist/assets/vega-component-DtSTT5wO.js +0 -1
- package/dist/assets/vega-loader.browser-DXARUlxo.js +0 -6
- package/dist/assets/velocity-Dwo66olV.js +0 -1
- package/dist/assets/verilog-DuexQCyX.js +0 -1
- package/dist/assets/vhdl-Mgyyw75F.js +0 -1
- package/dist/assets/webidl-DZaOA0mR.js +0 -1
- package/dist/assets/worker-BPV9SmHz.js +0 -120
- package/dist/assets/workflow-BAgKBPlq.js +0 -1
- package/dist/assets/write-secret-modal-CInxHVWJ.js +0 -1
- package/dist/assets/x-Bv2rCglF.js +0 -1
- package/dist/assets/xquery-DpQixCSm.js +0 -1
- package/dist/assets/xychartDiagram-PRI3JC2R-DgjhbmH4.js +0 -7
- package/dist/assets/yacas-B1gHpHXz.js +0 -1
- package/dist/assets/youtube-D6LtMx2w.js +0 -1
- package/dist/assets/z80-IF9HkI5m.js +0 -1
- package/src/components/slides/slides-component.tsx +0 -158
- /package/dist/assets/{Deferred-DxQeE5uh.js → Deferred-Bk0r4KDZ.js} +0 -0
- /package/dist/assets/{SSRProvider-D3zWcDme.js → SSRProvider-1sSrgJwI.js} +0 -0
- /package/dist/assets/{apl-CArdF_Ee.js → apl-BYqtBlld.js} +0 -0
- /package/dist/assets/{asciiarmor-rf6n_8YZ.js → asciiarmor-DUW0Iozu.js} +0 -0
- /package/dist/assets/{asn1-Bl4vlAxN.js → asn1-ClnHsHDP.js} +0 -0
- /package/dist/assets/{azure-C2phEgLq.js → azure-BGC9_IAe.js} +0 -0
- /package/dist/assets/{blob-CTort_or.js → blob-CpeNXBj-.js} +0 -0
- /package/dist/assets/{brainfuck-CWRjg_-2.js → brainfuck-FB_E90sw.js} +0 -0
- /package/dist/assets/{bundle.esm-BIoPrMH_.js → bundle.esm-sq57iaa5.js} +0 -0
- /package/dist/assets/{cjs-D5tzp-Y6.js → cjs-BRGiG41H.js} +0 -0
- /package/dist/assets/{clike-B4xEkWXN.js → clike-B7PZCnaI.js} +0 -0
- /package/dist/assets/{clojure-04C6o-hL.js → clojure-DtLrahuY.js} +0 -0
- /package/dist/assets/{clsx-XrBBnd7s.js → clsx-Dz_KRrWq.js} +0 -0
- /package/dist/assets/{cmake-Dh64a3j4.js → cmake-DGfhkTv5.js} +0 -0
- /package/dist/assets/{cobol-B24ofC4q.js → cobol-Cpbk-vCU.js} +0 -0
- /package/dist/assets/{coffeescript-B0i0O-b-.js → coffeescript-BATQF8kE.js} +0 -0
- /package/dist/assets/{commonlisp-NXg-Bye5.js → commonlisp-C9N48zGs.js} +0 -0
- /package/dist/assets/{createLucideIcon-w-Qo9n0R.js → createLucideIcon-D5guW7EU.js} +0 -0
- /package/dist/assets/{crystal-BOjNTZjx.js → crystal-D2nrZv1k.js} +0 -0
- /package/dist/assets/{css-C_vknI7E.js → css-DNoZFvlx.js} +0 -0
- /package/dist/assets/{cypher-DwQoZmH9.js → cypher-6TFCZzgE.js} +0 -0
- /package/dist/assets/{d-xedQGhmO.js → d-DHH1X7PS.js} +0 -0
- /package/dist/assets/{defaultLocale-BLne0bXb.js → defaultLocale-C92Rrpmf.js} +0 -0
- /package/dist/assets/{defaultLocale-JieDVWC_.js → defaultLocale-D_rSvXvJ.js} +0 -0
- /package/dist/assets/{diff-ChFnp8JW.js → diff-DNDp4fOd.js} +0 -0
- /package/dist/assets/{dtd-KbDPyUs4.js → dtd-BYdB19UC.js} +0 -0
- /package/dist/assets/{dylan-0KH4Nowk.js → dylan-3sqQfqPE.js} +0 -0
- /package/dist/assets/{ecl-B5iM_b7s.js → ecl-79y60Sdt.js} +0 -0
- /package/dist/assets/{eiffel-sVM1STl5.js → eiffel-Cy1qkCDz.js} +0 -0
- /package/dist/assets/{elm-BlNENVB6.js → elm-DrRzHEES.js} +0 -0
- /package/dist/assets/{emotion-is-prop-valid.esm-DYxi7n2b.js → emotion-is-prop-valid.esm-UWgehH47.js} +0 -0
- /package/dist/assets/{erlang-C0uOSFok.js → erlang-D3BTE-y0.js} +0 -0
- /package/dist/assets/{errors-CZb6hI2x.js → errors-DVkmLSXX.js} +0 -0
- /package/dist/assets/{events-Qeh-bHlj.js → events-CWUex2qo.js} +0 -0
- /package/dist/assets/{extends-Co37_JfG.js → extends-q1GgI0Ag.js} +0 -0
- /package/dist/assets/{forth-Dkvgp5v0.js → forth-DGce5eRS.js} +0 -0
- /package/dist/assets/{fortran-DWGt9NN5.js → fortran-CS97oQQW.js} +0 -0
- /package/dist/assets/{gas-ucVnXY28.js → gas-7e_zvN4u.js} +0 -0
- /package/dist/assets/{gherkin-BRjIORXo.js → gherkin-3f1nzx4Y.js} +0 -0
- /package/dist/assets/{groovy-BwyAyRPC.js → groovy-Bn1MvSId.js} +0 -0
- /package/dist/assets/{haskell-Cs-Andhs.js → haskell-qtyafuM6.js} +0 -0
- /package/dist/assets/{haxe-BW46cyaq.js → haxe-CQwWk_Ht.js} +0 -0
- /package/dist/assets/{idl-BGiQ18ct.js → idl-BnUby_AK.js} +0 -0
- /package/dist/assets/{invariant-CkiqGLcK.js → invariant-BUdrueMv.js} +0 -0
- /package/dist/assets/{javascript-I9_Q-6Fg.js → javascript-BFKHKHDt.js} +0 -0
- /package/dist/assets/{jsx-runtime-Blw4afVn.js → jsx-runtime-BqBOg78p.js} +0 -0
- /package/dist/assets/{julia-Wfay9brY.js → julia-BZeLe6be.js} +0 -0
- /package/dist/assets/{livescript-J6EnSQWw.js → livescript-LB6oZdgV.js} +0 -0
- /package/dist/assets/{loro_wasm_bg-B_AVgvOe.js → loro_wasm_bg-DSqjo7Pf.js} +0 -0
- /package/dist/assets/{lua-BO_knq_Q.js → lua-D73MeF_d.js} +0 -0
- /package/dist/assets/{main-BNL5rxQw.js → main-B0OX4z33.js} +0 -0
- /package/dist/assets/{mathematica-DU8ikXHk.js → mathematica-SckqhulL.js} +0 -0
- /package/dist/assets/{mbox-Dzzw6MxI.js → mbox-DpdjYR8y.js} +0 -0
- /package/dist/assets/{micromark-factory-space-DzSMahmM.js → micromark-factory-space-8Uk-uN5W.js} +0 -0
- /package/dist/assets/{mirc-82uLLidC.js → mirc-9Mp8ii_5.js} +0 -0
- /package/dist/assets/{mllike-WTbu2PGL.js → mllike-CteazA5r.js} +0 -0
- /package/dist/assets/{modelica-w4uKZrXu.js → modelica-DruS-uJ8.js} +0 -0
- /package/dist/assets/{mscgen-Bf7m7BDT.js → mscgen-Dqm6ZJyo.js} +0 -0
- /package/dist/assets/{mumps-Bicgf-gh.js → mumps-DAwJeUn4.js} +0 -0
- /package/dist/assets/{ntriples-CyotCBD4.js → ntriples-D5_p8srT.js} +0 -0
- /package/dist/assets/{objectWithoutPropertiesLoose-smPWkHxB.js → objectWithoutPropertiesLoose-BQlZis3f.js} +0 -0
- /package/dist/assets/{octave-BP7UuRZ-.js → octave-StxXX2kg.js} +0 -0
- /package/dist/assets/{ordinal-DuTuuUgV.js → ordinal-DTOdb5Da.js} +0 -0
- /package/dist/assets/{oz-C9dsRBsA.js → oz-CZcv8Gut.js} +0 -0
- /package/dist/assets/{pascal-Do-HizJs.js → pascal-BTSTYf7j.js} +0 -0
- /package/dist/assets/{paths-BzSgteR-.js → paths-DsQUzvvb.js} +0 -0
- /package/dist/assets/{perl-DkWjygEp.js → perl-D3WNCnWS.js} +0 -0
- /package/dist/assets/{pig-C5cO5Lzu.js → pig-m1LfHx7X.js} +0 -0
- /package/dist/assets/{powershell-B7iMkhi7.js → powershell-C7evXFhK.js} +0 -0
- /package/dist/assets/{preload-helper-D2MJg03u.js → preload-helper-BFv3hW2s.js} +0 -0
- /package/dist/assets/{prop-types-BFRDxSKF.js → prop-types-D9vVr8W2.js} +0 -0
- /package/dist/assets/{properties-BojS2wNP.js → properties-CX3A241c.js} +0 -0
- /package/dist/assets/{protobuf-C3jQLUT4.js → protobuf-CEqDY4vo.js} +0 -0
- /package/dist/assets/{puppet-BIu7yw7Q.js → puppet-DlFBPmUd.js} +0 -0
- /package/dist/assets/{python-BvK-LeGt.js → python-kNH0316T.js} +0 -0
- /package/dist/assets/{q-DxTFD_3l.js → q-KQ_N2MXi.js} +0 -0
- /package/dist/assets/{r-D9kMb9Pl.js → r-Dj_WdT8c.js} +0 -0
- /package/dist/assets/{range-1DwpgXvM.js → range-Bc7-zhbC.js} +0 -0
- /package/dist/assets/{react-icons.esm-BUYTQ32a.js → react-icons.esm-B8rtE4cC.js} +0 -0
- /package/dist/assets/{react-resizable-panels.browser.esm-BUNcfKXO.js → react-resizable-panels.browser.esm-xQHRvEag.js} +0 -0
- /package/dist/assets/{requests-CsNnmup3.js → requests-DdU2Ap88.js} +0 -0
- /package/dist/assets/{rpm-DMBmptJ_.js → rpm-C3VyCeYo.js} +0 -0
- /package/dist/assets/{ruby-Bi66LQBu.js → ruby-9RpAFOsP.js} +0 -0
- /package/dist/assets/{sas-DDMCLlZz.js → sas-CFBIkOrK.js} +0 -0
- /package/dist/assets/{scheme-MngEI34z.js → scheme-n4WmsRUQ.js} +0 -0
- /package/dist/assets/{shell-BSVgrHzY.js → shell-BDAgpmgp.js} +0 -0
- /package/dist/assets/{sieve-DvUWNrPv.js → sieve-BVNIn7Yz.js} +0 -0
- /package/dist/assets/{simple-mode-DxeVZov3.js → simple-mode-C-nP-kAb.js} +0 -0
- /package/dist/assets/{smalltalk-CeZ66qpG.js → smalltalk-C7nE9dmX.js} +0 -0
- /package/dist/assets/{sparql-oFx_t7AO.js → sparql-DPFIzZM3.js} +0 -0
- /package/dist/assets/{stex-jWatZkll.js → stex--zUcZkER.js} +0 -0
- /package/dist/assets/{stylus-KE-9LQSK.js → stylus-DGcebGVS.js} +0 -0
- /package/dist/assets/{swift-A-ZhZWU8.js → swift-DiAJo7C6.js} +0 -0
- /package/dist/assets/{tcl-CREXWwrr.js → tcl-DpD837eJ.js} +0 -0
- /package/dist/assets/{textile-Cj8L4qVJ.js → textile-DEqOicm6.js} +0 -0
- /package/dist/assets/{timer-DBQ_H0G1.js → timer-DwQQMK5T.js} +0 -0
- /package/dist/assets/{toml-BwSlV2Pt.js → toml-BdA-7EhB.js} +0 -0
- /package/dist/assets/{troff-DWonWT6V.js → troff-iGRgQHLe.js} +0 -0
- /package/dist/assets/{ttcn--CHQduBW.js → ttcn-CLQ1c3XL.js} +0 -0
- /package/dist/assets/{ttcn-cfg-Cei3Mnk3.js → ttcn-cfg-BFj90pgD.js} +0 -0
- /package/dist/assets/{turtle-BaGuNPTf.js → turtle-DwFVq6UC.js} +0 -0
- /package/dist/assets/{types-DOdUT9LT.js → types-D8yP89N6.js} +0 -0
- /package/dist/assets/{use-toast-BDYuj3zG.js → use-toast-PYIpV284.js} +0 -0
- /package/dist/assets/{useDeepCompareMemoize-D0WTlCXt.js → useDeepCompareMemoize-pHFuC8FJ.js} +0 -0
- /package/dist/assets/{useNonce-CbdaHKzX.js → useNonce-DfoVjkkH.js} +0 -0
- /package/dist/assets/{uuid-DXdzqzcr.js → uuid-CCkGk34L.js} +0 -0
- /package/dist/assets/{vb-DQgwufRi.js → vb-gm5P9Pn5.js} +0 -0
- /package/dist/assets/{vbscript-B66XhQhu.js → vbscript-gQvKiDdU.js} +0 -0
- /package/dist/assets/{velocity-D7CxwqhZ.js → velocity-CkfRmD_d.js} +0 -0
- /package/dist/assets/{verilog-SCT9zECa.js → verilog-D3b05tu1.js} +0 -0
- /package/dist/assets/{vhdl-Bz6d75os.js → vhdl-DRo1SU3e.js} +0 -0
- /package/dist/assets/{webidl-B7LbwCfy.js → webidl-DFtmGFay.js} +0 -0
- /package/dist/assets/{ws-BApgRfsy.js → ws-BV-4clkP.js} +0 -0
- /package/dist/assets/{xquery-BOMK2ySj.js → xquery-CzUikajR.js} +0 -0
- /package/dist/assets/{yacas-Yk74VuuD.js → yacas-BqvQWbYq.js} +0 -0
- /package/dist/assets/{z80-BQKQ7DhX.js → z80-CQqkYd-2.js} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"use no memo";
|
|
3
3
|
|
|
4
4
|
import type { Table } from "@tanstack/react-table";
|
|
5
|
-
import {
|
|
5
|
+
import { useVirtualizer } from "@tanstack/react-virtual";
|
|
6
6
|
import {
|
|
7
7
|
ChevronDown,
|
|
8
8
|
ChevronLeft,
|
|
@@ -37,9 +37,6 @@ import { cn } from "@/utils/cn";
|
|
|
37
37
|
import { Events } from "@/utils/events";
|
|
38
38
|
import { prettyNumber } from "@/utils/numbers";
|
|
39
39
|
import { PluralWord } from "@/utils/pluralize";
|
|
40
|
-
import type { PageRange } from "./types";
|
|
41
|
-
|
|
42
|
-
const MAX_PAGES_BEFORE_CLAMPING = 100;
|
|
43
40
|
|
|
44
41
|
interface DataTablePaginationProps<TData> {
|
|
45
42
|
table: Table<TData>;
|
|
@@ -189,6 +186,81 @@ export const DataTablePagination = <TData,>({
|
|
|
189
186
|
);
|
|
190
187
|
};
|
|
191
188
|
|
|
189
|
+
const PAGE_ITEM_HEIGHT = 32;
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* Compute contiguous ranges of page numbers whose string starts with `prefix`,
|
|
193
|
+
* without scanning every page. O(log10(totalPages)).
|
|
194
|
+
*
|
|
195
|
+
* For prefix "5", totalPages=500: [[5,5], [50,59], [500,500]]
|
|
196
|
+
*/
|
|
197
|
+
export function matchingPageRanges(
|
|
198
|
+
prefix: string,
|
|
199
|
+
totalPages: number,
|
|
200
|
+
): [number, number][] {
|
|
201
|
+
const n = Number.parseInt(prefix, 10);
|
|
202
|
+
if (Number.isNaN(n) || n <= 0 || String(n) !== prefix) {
|
|
203
|
+
return [];
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
const ranges: [number, number][] = [];
|
|
207
|
+
let power = 1;
|
|
208
|
+
while (n * power <= totalPages) {
|
|
209
|
+
const start = n * power;
|
|
210
|
+
const end = Math.min((n + 1) * power - 1, totalPages);
|
|
211
|
+
ranges.push([start, end]);
|
|
212
|
+
power *= 10;
|
|
213
|
+
}
|
|
214
|
+
return ranges;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
interface PageMapping {
|
|
218
|
+
count: number;
|
|
219
|
+
pageAtIndex: (index: number) => number;
|
|
220
|
+
indexOfPage: (page: number) => number;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
function createPageMapping(search: string, totalPages: number): PageMapping {
|
|
224
|
+
if (search === "") {
|
|
225
|
+
return {
|
|
226
|
+
count: totalPages,
|
|
227
|
+
pageAtIndex: (i) => i + 1,
|
|
228
|
+
indexOfPage: (p) => p - 1,
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
const ranges = matchingPageRanges(search, totalPages);
|
|
233
|
+
let count = 0;
|
|
234
|
+
for (const [s, e] of ranges) {
|
|
235
|
+
count += e - s + 1;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
return {
|
|
239
|
+
count,
|
|
240
|
+
pageAtIndex: (i) => {
|
|
241
|
+
let offset = 0;
|
|
242
|
+
for (const [start, end] of ranges) {
|
|
243
|
+
const size = end - start + 1;
|
|
244
|
+
if (i < offset + size) {
|
|
245
|
+
return start + (i - offset);
|
|
246
|
+
}
|
|
247
|
+
offset += size;
|
|
248
|
+
}
|
|
249
|
+
return -1;
|
|
250
|
+
},
|
|
251
|
+
indexOfPage: (p) => {
|
|
252
|
+
let offset = 0;
|
|
253
|
+
for (const [start, end] of ranges) {
|
|
254
|
+
if (p >= start && p <= end) {
|
|
255
|
+
return offset + (p - start);
|
|
256
|
+
}
|
|
257
|
+
offset += end - start + 1;
|
|
258
|
+
}
|
|
259
|
+
return -1;
|
|
260
|
+
},
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
|
|
192
264
|
export const PageSelector = ({
|
|
193
265
|
currentPage,
|
|
194
266
|
totalPages,
|
|
@@ -199,19 +271,31 @@ export const PageSelector = ({
|
|
|
199
271
|
onPageChange: (page: number) => void;
|
|
200
272
|
}) => {
|
|
201
273
|
const [open, setOpen] = React.useState(false);
|
|
274
|
+
const [search, setSearch] = React.useState("");
|
|
202
275
|
|
|
203
|
-
const
|
|
204
|
-
() =>
|
|
205
|
-
[
|
|
276
|
+
const mapping = React.useMemo(
|
|
277
|
+
() => createPageMapping(search, totalPages),
|
|
278
|
+
[search, totalPages],
|
|
206
279
|
);
|
|
207
280
|
|
|
208
281
|
const handleSelect = (page: number) => {
|
|
209
282
|
onPageChange(page - 1);
|
|
283
|
+
setSearch("");
|
|
210
284
|
setOpen(false);
|
|
211
285
|
};
|
|
212
286
|
|
|
287
|
+
const listHeight = Math.min(mapping.count * PAGE_ITEM_HEIGHT, 240);
|
|
288
|
+
|
|
213
289
|
return (
|
|
214
|
-
<Popover
|
|
290
|
+
<Popover
|
|
291
|
+
open={totalPages > 1 ? open : false}
|
|
292
|
+
onOpenChange={(next) => {
|
|
293
|
+
setOpen(next);
|
|
294
|
+
if (!next) {
|
|
295
|
+
setSearch("");
|
|
296
|
+
}
|
|
297
|
+
}}
|
|
298
|
+
>
|
|
215
299
|
<PopoverTrigger asChild={true} disabled={totalPages <= 1}>
|
|
216
300
|
<button
|
|
217
301
|
type="button"
|
|
@@ -229,18 +313,15 @@ export const PageSelector = ({
|
|
|
229
313
|
</button>
|
|
230
314
|
</PopoverTrigger>
|
|
231
315
|
<PopoverContent className="w-36 p-0" align="center" sideOffset={6}>
|
|
232
|
-
<Command
|
|
233
|
-
shouldFilter={true}
|
|
234
|
-
filter={(value, search) => {
|
|
235
|
-
return value.startsWith(search) ? 1 : 0;
|
|
236
|
-
}}
|
|
237
|
-
>
|
|
316
|
+
<Command shouldFilter={false} value={String(currentPage)}>
|
|
238
317
|
<CommandInput
|
|
239
318
|
placeholder={`Page (1–${totalPages})`}
|
|
240
319
|
rootClassName="px-2 h-8"
|
|
241
320
|
className="text-xs h-8"
|
|
242
321
|
autoFocus={true}
|
|
243
322
|
icon={null}
|
|
323
|
+
value={search}
|
|
324
|
+
onValueChange={setSearch}
|
|
244
325
|
onKeyDown={(e) => {
|
|
245
326
|
// Allow navigation/editing keys, block non-numeric input
|
|
246
327
|
const allowed = [
|
|
@@ -248,6 +329,8 @@ export const PageSelector = ({
|
|
|
248
329
|
"Delete",
|
|
249
330
|
"ArrowLeft",
|
|
250
331
|
"ArrowRight",
|
|
332
|
+
"ArrowUp",
|
|
333
|
+
"ArrowDown",
|
|
251
334
|
"Tab",
|
|
252
335
|
"Enter",
|
|
253
336
|
"Escape",
|
|
@@ -257,27 +340,19 @@ export const PageSelector = ({
|
|
|
257
340
|
}
|
|
258
341
|
}}
|
|
259
342
|
/>
|
|
260
|
-
<CommandList className="max-h-60">
|
|
261
|
-
{
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
onMouseDown={Events.preventFocus}
|
|
273
|
-
>
|
|
274
|
-
{item.page}
|
|
275
|
-
</CommandItem>
|
|
276
|
-
),
|
|
343
|
+
<CommandList className="max-h-60 overflow-hidden">
|
|
344
|
+
{mapping.count === 0 ? (
|
|
345
|
+
<CommandEmpty className="py-2 text-center text-xs text-muted-foreground">
|
|
346
|
+
No matching page
|
|
347
|
+
</CommandEmpty>
|
|
348
|
+
) : (
|
|
349
|
+
<VirtualizedPageList
|
|
350
|
+
mapping={mapping}
|
|
351
|
+
currentPage={currentPage}
|
|
352
|
+
listHeight={listHeight}
|
|
353
|
+
onSelect={handleSelect}
|
|
354
|
+
/>
|
|
277
355
|
)}
|
|
278
|
-
<CommandEmpty className="py-2 text-center text-xs text-muted-foreground">
|
|
279
|
-
No matching page
|
|
280
|
-
</CommandEmpty>
|
|
281
356
|
</CommandList>
|
|
282
357
|
</Command>
|
|
283
358
|
</PopoverContent>
|
|
@@ -285,57 +360,95 @@ export const PageSelector = ({
|
|
|
285
360
|
);
|
|
286
361
|
};
|
|
287
362
|
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
const
|
|
300
|
-
for (let i = 0; i < count; i++) {
|
|
301
|
-
items.push({ type: "page", page: start + i });
|
|
302
|
-
}
|
|
303
|
-
};
|
|
304
|
-
|
|
305
|
-
addPages(1, 10);
|
|
306
|
-
items.push({ type: "ellipsis", key: "e1" });
|
|
307
|
-
|
|
308
|
-
if (currentPage > 10 && currentPage <= middle - 5) {
|
|
309
|
-
items.push(
|
|
310
|
-
{ type: "page", page: currentPage },
|
|
311
|
-
{ type: "ellipsis", key: "e1b" },
|
|
312
|
-
);
|
|
313
|
-
}
|
|
363
|
+
const VirtualizedPageList = ({
|
|
364
|
+
mapping,
|
|
365
|
+
currentPage,
|
|
366
|
+
listHeight,
|
|
367
|
+
onSelect,
|
|
368
|
+
}: {
|
|
369
|
+
mapping: PageMapping;
|
|
370
|
+
currentPage: number;
|
|
371
|
+
listHeight: number;
|
|
372
|
+
onSelect: (page: number) => void;
|
|
373
|
+
}) => {
|
|
374
|
+
const parentRef = React.useRef<HTMLDivElement>(null);
|
|
314
375
|
|
|
315
|
-
|
|
316
|
-
items.push({ type: "ellipsis", key: "e2" });
|
|
376
|
+
const currentIndex = mapping.indexOfPage(currentPage);
|
|
317
377
|
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
378
|
+
const virtualizer = useVirtualizer({
|
|
379
|
+
count: mapping.count,
|
|
380
|
+
getScrollElement: () => parentRef.current,
|
|
381
|
+
estimateSize: () => PAGE_ITEM_HEIGHT,
|
|
382
|
+
overscan: 10,
|
|
383
|
+
initialOffset:
|
|
384
|
+
currentIndex > 0
|
|
385
|
+
? Math.max(0, currentIndex * PAGE_ITEM_HEIGHT - listHeight / 2)
|
|
386
|
+
: 0,
|
|
387
|
+
});
|
|
324
388
|
|
|
325
|
-
|
|
389
|
+
// Scroll to top when filtered results change (user is searching)
|
|
390
|
+
const prevCount = React.useRef(mapping.count);
|
|
391
|
+
React.useEffect(() => {
|
|
392
|
+
if (mapping.count !== prevCount.current) {
|
|
393
|
+
virtualizer.scrollToIndex(0);
|
|
394
|
+
prevCount.current = mapping.count;
|
|
395
|
+
}
|
|
396
|
+
}, [mapping.count, virtualizer]);
|
|
326
397
|
|
|
327
|
-
return
|
|
328
|
-
}
|
|
398
|
+
return (
|
|
399
|
+
<div ref={parentRef} style={{ height: listHeight, overflow: "auto" }}>
|
|
400
|
+
<div
|
|
401
|
+
style={{
|
|
402
|
+
height: virtualizer.getTotalSize(),
|
|
403
|
+
width: "100%",
|
|
404
|
+
position: "relative",
|
|
405
|
+
}}
|
|
406
|
+
>
|
|
407
|
+
{virtualizer.getVirtualItems().map((virtualItem) => {
|
|
408
|
+
const page = mapping.pageAtIndex(virtualItem.index);
|
|
409
|
+
return (
|
|
410
|
+
<CommandItem
|
|
411
|
+
key={page}
|
|
412
|
+
value={String(page)}
|
|
413
|
+
data-testid="page-option"
|
|
414
|
+
aria-selected={page === currentPage}
|
|
415
|
+
className={cn(
|
|
416
|
+
"text-xs cursor-pointer",
|
|
417
|
+
page === currentPage && "font-semibold bg-accent",
|
|
418
|
+
)}
|
|
419
|
+
style={{
|
|
420
|
+
position: "absolute",
|
|
421
|
+
top: 0,
|
|
422
|
+
left: 0,
|
|
423
|
+
width: "100%",
|
|
424
|
+
height: virtualItem.size,
|
|
425
|
+
transform: `translateY(${virtualItem.start}px)`,
|
|
426
|
+
}}
|
|
427
|
+
onSelect={() => onSelect(page)}
|
|
428
|
+
onMouseDown={Events.preventFocus}
|
|
429
|
+
>
|
|
430
|
+
{page}
|
|
431
|
+
</CommandItem>
|
|
432
|
+
);
|
|
433
|
+
})}
|
|
434
|
+
</div>
|
|
435
|
+
</div>
|
|
436
|
+
);
|
|
437
|
+
};
|
|
329
438
|
|
|
330
439
|
export function prettifyRowCount(rowCount: number, locale: string): string {
|
|
331
440
|
return `${prettyNumber(rowCount, locale)} ${new PluralWord("row").pluralize(rowCount)}`;
|
|
332
441
|
}
|
|
333
442
|
|
|
334
|
-
export const prettifyRowColumnCount = (
|
|
335
|
-
numRows
|
|
336
|
-
totalColumns
|
|
337
|
-
locale
|
|
338
|
-
|
|
443
|
+
export const prettifyRowColumnCount = ({
|
|
444
|
+
numRows,
|
|
445
|
+
totalColumns,
|
|
446
|
+
locale,
|
|
447
|
+
}: {
|
|
448
|
+
numRows: number | "too_many";
|
|
449
|
+
totalColumns: number;
|
|
450
|
+
locale: string;
|
|
451
|
+
}): string => {
|
|
339
452
|
const rowsLabel =
|
|
340
453
|
numRows === "too_many" ? "Unknown" : prettifyRowCount(numRows, locale);
|
|
341
454
|
const columnsLabel = `${prettyNumber(totalColumns, locale)} ${new PluralWord("column").pluralize(totalColumns)}`;
|
|
@@ -5,7 +5,12 @@ import { rpc } from "@/plugins/core/rpc";
|
|
|
5
5
|
|
|
6
6
|
export type DownloadAsArgs = (req: {
|
|
7
7
|
format: "csv" | "json" | "parquet";
|
|
8
|
-
}) => Promise<{
|
|
8
|
+
}) => Promise<{
|
|
9
|
+
url: string;
|
|
10
|
+
filename: string;
|
|
11
|
+
error?: string | null;
|
|
12
|
+
missing_packages?: string[] | null;
|
|
13
|
+
}>;
|
|
9
14
|
|
|
10
15
|
export const DownloadAsSchema = rpc
|
|
11
16
|
.input(
|
|
@@ -17,5 +22,7 @@ export const DownloadAsSchema = rpc
|
|
|
17
22
|
z.object({
|
|
18
23
|
url: z.string(),
|
|
19
24
|
filename: z.string(),
|
|
25
|
+
error: z.string().nullish(),
|
|
26
|
+
missing_packages: z.array(z.string()).nullish(),
|
|
20
27
|
}),
|
|
21
28
|
);
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/* Copyright 2026 Marimo. All rights reserved. */
|
|
2
|
+
|
|
3
|
+
import type { CellValueSentinel, CellValueSentinelType } from "./types";
|
|
4
|
+
|
|
5
|
+
const WHITESPACE_CHARS: Record<string, { marker: string; name: string }> = {
|
|
6
|
+
" ": { marker: "\u2423", name: "space" }, // open box (space symbol)
|
|
7
|
+
"\t": { marker: "\\t", name: "tab" },
|
|
8
|
+
"\n": { marker: "\\n", name: "newline" },
|
|
9
|
+
"\r": { marker: "\\r", name: "newline" },
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
function renderWhitespaceMarkers(str: string): string {
|
|
13
|
+
return [...str].map((ch) => WHITESPACE_CHARS[ch]?.marker ?? ch).join("");
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function describeWhitespace(str: string): string {
|
|
17
|
+
const counts: Record<string, number> = {};
|
|
18
|
+
for (const ch of str) {
|
|
19
|
+
const name = WHITESPACE_CHARS[ch]?.name ?? "character";
|
|
20
|
+
counts[name] = (counts[name] ?? 0) + 1;
|
|
21
|
+
}
|
|
22
|
+
return Object.entries(counts)
|
|
23
|
+
.map(([name, count]) => `${count} ${name}${count > 1 ? "s" : ""}`)
|
|
24
|
+
.join(", ");
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
interface SentinelConfig {
|
|
28
|
+
label: (value: CellValueSentinel["value"]) => string;
|
|
29
|
+
tooltip: (value: CellValueSentinel["value"]) => string;
|
|
30
|
+
ariaLabel: (value: CellValueSentinel["value"]) => string;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const SENTINEL_CONFIG: Record<CellValueSentinelType, SentinelConfig> = {
|
|
34
|
+
null: {
|
|
35
|
+
label: () => "None",
|
|
36
|
+
tooltip: () => "None",
|
|
37
|
+
ariaLabel: () => "None",
|
|
38
|
+
},
|
|
39
|
+
"empty-string": {
|
|
40
|
+
label: () => "<empty>",
|
|
41
|
+
tooltip: () => "<empty>",
|
|
42
|
+
ariaLabel: () => "empty string",
|
|
43
|
+
},
|
|
44
|
+
whitespace: {
|
|
45
|
+
label: (value) => renderWhitespaceMarkers(String(value)),
|
|
46
|
+
tooltip: (value) => describeWhitespace(String(value)),
|
|
47
|
+
ariaLabel: (value) => describeWhitespace(String(value)),
|
|
48
|
+
},
|
|
49
|
+
nan: {
|
|
50
|
+
label: () => "NaN",
|
|
51
|
+
tooltip: () => "NaN",
|
|
52
|
+
ariaLabel: () => "NaN",
|
|
53
|
+
},
|
|
54
|
+
"positive-infinity": {
|
|
55
|
+
label: () => "inf",
|
|
56
|
+
tooltip: () => "Infinity",
|
|
57
|
+
ariaLabel: () => "infinity",
|
|
58
|
+
},
|
|
59
|
+
"negative-infinity": {
|
|
60
|
+
label: () => "-inf",
|
|
61
|
+
tooltip: () => "-Infinity",
|
|
62
|
+
ariaLabel: () => "negative infinity",
|
|
63
|
+
},
|
|
64
|
+
nat: {
|
|
65
|
+
label: () => "NaT",
|
|
66
|
+
tooltip: () => "NaT (Not a Time)",
|
|
67
|
+
ariaLabel: () => "Not a Time",
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
export function SentinelCell({
|
|
72
|
+
sentinel,
|
|
73
|
+
}: {
|
|
74
|
+
sentinel: CellValueSentinel;
|
|
75
|
+
}): React.ReactElement {
|
|
76
|
+
const config = SENTINEL_CONFIG[sentinel.type];
|
|
77
|
+
const label = config.label(sentinel.value);
|
|
78
|
+
const tooltip = config.tooltip(sentinel.value);
|
|
79
|
+
const ariaLabel = config.ariaLabel(sentinel.value);
|
|
80
|
+
|
|
81
|
+
return (
|
|
82
|
+
<span
|
|
83
|
+
className="italic text-muted-foreground bg-muted rounded px-1"
|
|
84
|
+
aria-label={ariaLabel}
|
|
85
|
+
title={tooltip}
|
|
86
|
+
>
|
|
87
|
+
<span className="opacity-70">{label}</span>
|
|
88
|
+
</span>
|
|
89
|
+
);
|
|
90
|
+
}
|
|
@@ -95,6 +95,29 @@ export type DataTableSelection =
|
|
|
95
95
|
| "multi-cell"
|
|
96
96
|
| null;
|
|
97
97
|
|
|
98
|
+
export type CellValueSentinel =
|
|
99
|
+
| { type: "null"; value: null | undefined }
|
|
100
|
+
| { type: "empty-string"; value: string }
|
|
101
|
+
| { type: "whitespace"; value: string }
|
|
102
|
+
| { type: "nan"; value: number | string }
|
|
103
|
+
| { type: "positive-infinity"; value: number | string }
|
|
104
|
+
| { type: "negative-infinity"; value: number | string }
|
|
105
|
+
| { type: "nat"; value: string };
|
|
106
|
+
|
|
107
|
+
export type CellValueSentinelType = CellValueSentinel["type"];
|
|
108
|
+
|
|
109
|
+
export function isNumericType(
|
|
110
|
+
dataType: DataType | undefined,
|
|
111
|
+
): dataType is "number" | "integer" {
|
|
112
|
+
return dataType === "number" || dataType === "integer";
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
export function isTemporalType(
|
|
116
|
+
dataType: DataType | undefined,
|
|
117
|
+
): dataType is "date" | "datetime" | "time" {
|
|
118
|
+
return dataType === "date" || dataType === "datetime" || dataType === "time";
|
|
119
|
+
}
|
|
120
|
+
|
|
98
121
|
export function extractTimezone(dtype: string | undefined): string | undefined {
|
|
99
122
|
if (!dtype) {
|
|
100
123
|
return undefined;
|
|
@@ -105,7 +128,3 @@ export function extractTimezone(dtype: string | undefined): string | undefined {
|
|
|
105
128
|
const match = /^datetime(?:64)?\[[^,]+,([^,]+)]$/.exec(dtype);
|
|
106
129
|
return match?.[1]?.trim();
|
|
107
130
|
}
|
|
108
|
-
|
|
109
|
-
export type PageRange =
|
|
110
|
-
| { type: "page"; page: number }
|
|
111
|
-
| { type: "ellipsis"; key: string };
|
|
@@ -5,7 +5,15 @@ import type { TableData } from "@/plugins/impl/DataTablePlugin";
|
|
|
5
5
|
import { vegaLoadData } from "@/plugins/impl/vega/loader";
|
|
6
6
|
import { jsonParseWithSpecialChar } from "@/utils/json/json-parser";
|
|
7
7
|
import { getMimeValues } from "./mime-cell";
|
|
8
|
-
import {
|
|
8
|
+
import type { DataType } from "@/core/kernel/messages";
|
|
9
|
+
import {
|
|
10
|
+
type CellValueSentinel,
|
|
11
|
+
INDEX_COLUMN_NAME,
|
|
12
|
+
isNumericType,
|
|
13
|
+
isTemporalType,
|
|
14
|
+
} from "./types";
|
|
15
|
+
|
|
16
|
+
const WHITESPACE_ONLY_RE = /^[\s]+$/;
|
|
9
17
|
|
|
10
18
|
/**
|
|
11
19
|
* Convenience function to load table data.
|
|
@@ -85,6 +93,71 @@ export function getPageIndexForRow(
|
|
|
85
93
|
return null;
|
|
86
94
|
}
|
|
87
95
|
|
|
96
|
+
// String representations of numeric special values.
|
|
97
|
+
// Only matched when the caller indicates the column is numeric.
|
|
98
|
+
type StringValueSentinelType = Extract<
|
|
99
|
+
CellValueSentinel,
|
|
100
|
+
{ value: number | string }
|
|
101
|
+
>["type"];
|
|
102
|
+
|
|
103
|
+
const NUMERIC_STRING_SPECIALS: Record<string, StringValueSentinelType> = {
|
|
104
|
+
NaN: "nan",
|
|
105
|
+
Infinity: "positive-infinity",
|
|
106
|
+
"-Infinity": "negative-infinity",
|
|
107
|
+
inf: "positive-infinity",
|
|
108
|
+
"-inf": "negative-infinity",
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* Detect if a cell value is a sentinel (null, empty string, whitespace,
|
|
113
|
+
* NaN, infinity, NaT). Column-type-dependent sentinels (string "NaN",
|
|
114
|
+
* "NaT", etc.) are matched based on `dataType`.
|
|
115
|
+
*/
|
|
116
|
+
export function detectSentinel(
|
|
117
|
+
value: unknown,
|
|
118
|
+
dataType: DataType | undefined,
|
|
119
|
+
): CellValueSentinel | null {
|
|
120
|
+
if (value == null) {
|
|
121
|
+
return { type: "null", value };
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
if (typeof value === "string") {
|
|
125
|
+
if (value === "") {
|
|
126
|
+
return { type: "empty-string", value };
|
|
127
|
+
}
|
|
128
|
+
if (WHITESPACE_ONLY_RE.test(value)) {
|
|
129
|
+
return { type: "whitespace", value };
|
|
130
|
+
}
|
|
131
|
+
// String "NaN"/"Infinity" in a numeric column = actual special float value
|
|
132
|
+
if (isNumericType(dataType)) {
|
|
133
|
+
const type = NUMERIC_STRING_SPECIALS[value];
|
|
134
|
+
if (type) {
|
|
135
|
+
return { type, value };
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
// String "NaT" in a temporal column = pandas Not-a-Time sentinel
|
|
139
|
+
if (isTemporalType(dataType) && value === "NaT") {
|
|
140
|
+
return { type: "nat", value };
|
|
141
|
+
}
|
|
142
|
+
return null;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
if (typeof value === "number") {
|
|
146
|
+
if (Number.isNaN(value)) {
|
|
147
|
+
return { type: "nan", value };
|
|
148
|
+
}
|
|
149
|
+
if (value === Number.POSITIVE_INFINITY) {
|
|
150
|
+
return { type: "positive-infinity", value };
|
|
151
|
+
}
|
|
152
|
+
if (value === Number.NEGATIVE_INFINITY) {
|
|
153
|
+
return { type: "negative-infinity", value };
|
|
154
|
+
}
|
|
155
|
+
return null;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
return null;
|
|
159
|
+
}
|
|
160
|
+
|
|
88
161
|
/**
|
|
89
162
|
* Stringify an unknown value. Converts objects to JSON strings.
|
|
90
163
|
* @param opts.value - The value to stringify.
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/* Copyright 2026 Marimo. All rights reserved. */
|
|
2
|
+
|
|
3
|
+
import { render, screen } from "@testing-library/react";
|
|
4
|
+
import { Provider } from "jotai";
|
|
5
|
+
import React from "react";
|
|
6
|
+
import { beforeEach, describe, expect, it, vi } from "vitest";
|
|
7
|
+
import { MockRequestClient } from "@/__mocks__/requests";
|
|
8
|
+
import { viewStateAtom } from "@/core/mode";
|
|
9
|
+
import { requestClientAtom } from "@/core/network/requests";
|
|
10
|
+
import { store } from "@/core/state/jotai";
|
|
11
|
+
import { MissingPackagePrompt } from "../missing-package-prompt";
|
|
12
|
+
|
|
13
|
+
const mockOpenApplication = vi.fn();
|
|
14
|
+
vi.mock("@/components/editor/chrome/state", () => ({
|
|
15
|
+
useChromeActions: () => ({
|
|
16
|
+
openApplication: mockOpenApplication,
|
|
17
|
+
}),
|
|
18
|
+
}));
|
|
19
|
+
|
|
20
|
+
vi.mock("@/components/editor/chrome/panels/packages-state", () => ({
|
|
21
|
+
packagesToInstallAtom: {},
|
|
22
|
+
}));
|
|
23
|
+
|
|
24
|
+
const mockRequestAnimationFrame = vi.fn((callback) => {
|
|
25
|
+
callback();
|
|
26
|
+
return 1;
|
|
27
|
+
});
|
|
28
|
+
vi.stubGlobal("requestAnimationFrame", mockRequestAnimationFrame);
|
|
29
|
+
|
|
30
|
+
const mockInput = {
|
|
31
|
+
focus: vi.fn(),
|
|
32
|
+
value: "",
|
|
33
|
+
dispatchEvent: vi.fn(),
|
|
34
|
+
};
|
|
35
|
+
vi.spyOn(document, "getElementById").mockReturnValue(
|
|
36
|
+
mockInput as unknown as HTMLInputElement,
|
|
37
|
+
);
|
|
38
|
+
|
|
39
|
+
function createTestWrapper() {
|
|
40
|
+
const wrapper = ({ children }: { children: React.ReactNode }) => (
|
|
41
|
+
<Provider store={store}>{children}</Provider>
|
|
42
|
+
);
|
|
43
|
+
return { wrapper };
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
describe("MissingPackagePrompt", () => {
|
|
47
|
+
const { wrapper } = createTestWrapper();
|
|
48
|
+
|
|
49
|
+
beforeEach(() => {
|
|
50
|
+
vi.clearAllMocks();
|
|
51
|
+
store.set(requestClientAtom, MockRequestClient.create());
|
|
52
|
+
store.set(viewStateAtom, { mode: "edit", cellAnchor: null });
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it("should render backend description and install button in edit mode", () => {
|
|
56
|
+
render(
|
|
57
|
+
<MissingPackagePrompt
|
|
58
|
+
packages={["polars"]}
|
|
59
|
+
featureName="Parquet export"
|
|
60
|
+
description="Parquet export requires a DataFrame library."
|
|
61
|
+
/>,
|
|
62
|
+
{ wrapper },
|
|
63
|
+
);
|
|
64
|
+
expect(
|
|
65
|
+
screen.getByText("Parquet export requires a DataFrame library."),
|
|
66
|
+
).toBeInTheDocument();
|
|
67
|
+
expect(screen.getByText("Install polars")).toBeInTheDocument();
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
it("should fall back to generic copy when description is absent", () => {
|
|
71
|
+
render(
|
|
72
|
+
<MissingPackagePrompt
|
|
73
|
+
packages={["polars"]}
|
|
74
|
+
featureName="Parquet export"
|
|
75
|
+
/>,
|
|
76
|
+
{ wrapper },
|
|
77
|
+
);
|
|
78
|
+
expect(
|
|
79
|
+
screen.getByText("Parquet export requires polars"),
|
|
80
|
+
).toBeInTheDocument();
|
|
81
|
+
expect(screen.getByText("Install polars")).toBeInTheDocument();
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
it("should render generic line in read mode and not leak packages or description", () => {
|
|
85
|
+
store.set(viewStateAtom, { mode: "read", cellAnchor: null });
|
|
86
|
+
render(
|
|
87
|
+
<MissingPackagePrompt
|
|
88
|
+
packages={["polars"]}
|
|
89
|
+
featureName="Parquet export"
|
|
90
|
+
description="Install polars to enable Parquet."
|
|
91
|
+
/>,
|
|
92
|
+
{ wrapper },
|
|
93
|
+
);
|
|
94
|
+
expect(
|
|
95
|
+
screen.getByText("Parquet export isn't available in this notebook"),
|
|
96
|
+
).toBeInTheDocument();
|
|
97
|
+
expect(
|
|
98
|
+
screen.queryByText("Install polars to enable Parquet."),
|
|
99
|
+
).not.toBeInTheDocument();
|
|
100
|
+
expect(screen.queryByText("Install polars")).not.toBeInTheDocument();
|
|
101
|
+
expect(screen.queryByText(/polars/)).not.toBeInTheDocument();
|
|
102
|
+
});
|
|
103
|
+
});
|