@marimo-team/islands 0.22.1-dev105 → 0.22.1-dev2
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/{ConnectedDataExplorerComponent-CTfvzyMi.js → ConnectedDataExplorerComponent-Dl1grr8z.js} +12 -12
- package/dist/{_basePickBy-DEctY8Qy.js → _basePickBy-QjOmBDRE.js} +3 -10
- package/dist/{_baseSet-Bk810b_4.js → _baseSet-xgn1IbGV.js} +8 -1
- package/dist/{_baseUniq-B1NzzhU7.js → _baseUniq-B4eL5sTC.js} +2 -2
- package/dist/{any-language-editor-Bj-3432h.js → any-language-editor-CT_9yBde.js} +18 -18
- package/dist/apl-C1bki_dE.js +4 -0
- package/dist/{arc-CEWBr4jc.js → arc-DLJpPF9M.js} +2 -2
- package/dist/architecture-7HQA4BMR-BRyVh_Za.js +6 -0
- package/dist/{architectureDiagram-VXUJARFQ-BKlUkb-q.js → architectureDiagram-VXUJARFQ-vxgYGIMP.js} +19 -19
- package/dist/arrays-Du-jRBAy.js +55 -0
- package/dist/asciiarmor-BdlkCCRr.js +4 -0
- package/dist/asn1-CvE30hox.js +4 -0
- package/dist/{blockDiagram-VD42YOAC-DvgBlX1D.js → blockDiagram-VD42YOAC-C7x6YTH7.js} +14 -14
- package/dist/brainfuck-BalwWy1a.js +4 -0
- package/dist/{c4Diagram-YG6GDRKO-BN-xpNUK.js → c4Diagram-YG6GDRKO-Cx4oseGg.js} +6 -6
- package/dist/{capabilities-BC3mzKnw.js → capabilities-26mwv03y.js} +1 -1
- package/dist/{channel-Dz_ka_DS.js → channel-C_50jIAn.js} +1 -1
- package/dist/{chat-ui-BvK3aDSR.js → chat-ui-CtqUthFR.js} +19 -19
- package/dist/{chunk-4BX2VUAB-BChPAwlt.js → chunk-4BX2VUAB-C2skOn1Z.js} +1 -1
- package/dist/{chunk-4F5CHEZ2-9eJ5uB6a.js → chunk-4F5CHEZ2-Dvo_CFnR.js} +1 -1
- package/dist/{chunk-55IACEB6-wWyiO7Qo.js → chunk-55IACEB6-DRsSqxbU.js} +1 -1
- package/dist/{chunk-5FQGJX7Z-DHiDX6JT.js → chunk-5FQGJX7Z-C428iZBW.js} +3 -3
- package/dist/{chunk-ABZYJK2D-DYZpeLRO.js → chunk-ABZYJK2D-D5YIs71w.js} +3 -3
- package/dist/{chunk-ATLVNIR6-9VSIMo3q.js → chunk-ATLVNIR6-CyOjzOcf.js} +2 -2
- package/dist/{chunk-B2363JML-CkfqLBeZ.js → chunk-B2363JML-BzZqINRO.js} +1 -1
- package/dist/{chunk-B4BG7PRW-CyIVj-RO.js → chunk-B4BG7PRW-ZJeV3KdD.js} +7 -7
- package/dist/{chunk-CVBHYZKI-DqdOZevv.js → chunk-CVBHYZKI-BXHgce-x.js} +1 -1
- package/dist/{chunk-DI55MBZ5-kmoX4_PJ.js → chunk-DI55MBZ5-Dx_wwX6l.js} +6 -6
- package/dist/{chunk-EXTU4WIE-anbpETeD.js → chunk-EXTU4WIE-CgefpSXQ.js} +2 -2
- package/dist/{chunk-FMBD7UC4-WPL5C7Yr.js → chunk-FMBD7UC4-BjIaI-XO.js} +1 -1
- package/dist/{chunk-FRFDVMJY-DiBbw2aO.js → chunk-FRFDVMJY-Derq8UzY.js} +1 -1
- package/dist/{chunk-HN2XXSSU-GC9oeSst.js → chunk-HN2XXSSU-DAhNp1ig.js} +1 -1
- package/dist/{chunk-JA3XYJ7Z-DT9thFja.js → chunk-JA3XYJ7Z-CcIOIFpc.js} +3 -3
- package/dist/{chunk-JZLCHNYA-CoUG-3_5.js → chunk-JZLCHNYA-CgO0GG1p.js} +6 -6
- package/dist/{chunk-MI3HLSF2-CAUClZTk.js → chunk-MI3HLSF2-AKwFNP3m.js} +1 -1
- package/dist/{chunk-N4CR4FBY-CgZCueW4.js → chunk-N4CR4FBY-2qzGzAxT.js} +7 -7
- package/dist/{chunk-PL6DKKU2-B93gSUY5.js → chunk-PL6DKKU2-KoG71Zin.js} +1 -1
- package/dist/{chunk-QN33PNHL-T-uF7h40.js → chunk-QN33PNHL-Dp1qBo28.js} +2 -2
- package/dist/{chunk-QXUST7PY-D1a8s9iP.js → chunk-QXUST7PY-BxmmeIwf.js} +10 -10
- package/dist/{chunk-QZHKN3VN-cTJMhkeY.js → chunk-QZHKN3VN-BK9tlbfw.js} +1 -1
- package/dist/{chunk-S3R3BYOJ-KAv7zltL.js → chunk-S3R3BYOJ-D3Rys9ZW.js} +6 -6
- package/dist/{chunk-SJTYNZTY-CxP2rIlm.js → chunk-SJTYNZTY-Co-DhKAG.js} +1 -1
- package/dist/{chunk-TCCFYFTB-BrhaBdR8.js → chunk-TCCFYFTB-BAhzIqBO.js} +6 -6
- package/dist/{chunk-TQ3KTPDO-C0j_j938.js → chunk-TQ3KTPDO-DxYI735Z.js} +1 -1
- package/dist/{chunk-TZMSLE5B-BY2BhygM.js → chunk-TZMSLE5B-Dxumt0wv.js} +3 -3
- package/dist/{chunk-UMXZTB3W-BDwe1tzK.js → chunk-UMXZTB3W-CuahpKin.js} +1 -1
- package/dist/classDiagram-2ON5EDUG-DkOvXRlx.js +30 -0
- package/dist/classDiagram-v2-WZHVMYZB-CYoFMQKE.js +30 -0
- package/dist/{clike-D8Yzpo0X.js → clike-B90WKs4D.js} +1 -1
- package/dist/clojure-CUC2I1hM.js +4 -0
- package/dist/{clone-DgKKB0qR.js → clone-DDndUqI0.js} +1 -1
- package/dist/cmake-8PcMxXnB.js +4 -0
- package/dist/cobol-DkkkDz5v.js +4 -0
- package/dist/{code-block-37QAKDTI-CdeP6GC3.js → code-block-37QAKDTI-D9EnJeBI.js} +1 -1
- package/dist/coffeescript-CCupxOZf.js +4 -0
- package/dist/commonlisp-DhUfGX6b.js +4 -0
- package/dist/{constants-CXiS0vdr.js → constants-D1Am36hX.js} +1 -1
- package/dist/{cose-bilkent-S5V4N54A-CFYo67PX.js → cose-bilkent-S5V4N54A-DvCk1aXi.js} +2 -2
- package/dist/crystal-DSaw6rFQ.js +4 -0
- package/dist/css-D4QDewkG.js +4 -0
- package/dist/cypher-CrYVqw_F.js +4 -0
- package/dist/d-Cr3H3pPx.js +4 -0
- package/dist/{dagre-6UL2VRFP-CblBywCi.js → dagre-6UL2VRFP-BXBaU8PB.js} +16 -16
- package/dist/{dagre-lLfkMavw.js → dagre-D3dlYz-r.js} +9 -19
- package/dist/{data-grid-overlay-editor-nQBPvGNe.js → data-grid-overlay-editor-nZux6_d2.js} +2 -2
- package/dist/{diagram-PSM6KHXK-CEWNAeex.js → diagram-PSM6KHXK-CJxjk4LG.js} +22 -22
- package/dist/{diagram-QEK2KX5R-DvNPI6r6.js → diagram-QEK2KX5R-IMILPh_p.js} +17 -17
- package/dist/{diagram-S2PKOQOG-Bd8sWp1V.js → diagram-S2PKOQOG-6O0g6Boj.js} +17 -17
- package/dist/diff-ODiZJGls.js +4 -0
- package/dist/{dist-5XnuIjzQ.js → dist-5nTQE2yt.js} +2 -2
- package/dist/dist-B0R_ZM4-.js +6 -0
- package/dist/dist-B4a9_9pj.js +5 -0
- package/dist/{dist-DqWKkHpR.js → dist-B6Op2ogv.js} +2 -2
- package/dist/{dist-n5m_P2Mr.js → dist-B9KLrfoh.js} +1 -1
- package/dist/dist-BCSUKEwO.js +5 -0
- package/dist/{dist-B7Wxocl4.js → dist-BJ3fhRYu.js} +2 -2
- package/dist/dist-BONIDQq6.js +5 -0
- package/dist/{dist-C-8pSTml.js → dist-BUSLKXcu.js} +2 -2
- package/dist/dist-BYeRx2hb.js +5 -0
- package/dist/{dist-nggqqIVv.js → dist-BemtTYzN.js} +5 -5
- package/dist/{dist-DM6PPTtq.js → dist-BiZZAo22.js} +1 -1
- package/dist/{dist-DS6k03oP.js → dist-BkXs8bw0.js} +1 -1
- package/dist/{dist-CgCO1-j-.js → dist-BoNJsA65.js} +1 -1
- package/dist/{dist-_k5rxRQI.js → dist-Brb6VNc4.js} +2 -2
- package/dist/{dist-B5pakFbT.js → dist-C-EcLtO9.js} +1 -1
- package/dist/{dist-CD0aazOL.js → dist-C0XYIHKJ.js} +1 -1
- package/dist/{dist-C6R5LnmH.js → dist-C9qF7MRB.js} +2 -2
- package/dist/{dist-DFBgTyQ4.js → dist-CBwMSFDu.js} +2 -2
- package/dist/{dist-BnIjtwRq.js → dist-CQidOwep.js} +3 -3
- package/dist/{dist-BKKbDTix.js → dist-CTwGwcQ8.js} +2 -2
- package/dist/{dist-B7pzGu3v.js → dist-CVqlhD3M.js} +2 -2
- package/dist/{dist-Dv7FDx1_.js → dist-Ci_jEudG.js} +1 -1
- package/dist/{dist-xzh9kCE-.js → dist-CnFp2Kcl.js} +2 -2
- package/dist/{dist-BqO6WmbK.js → dist-CxAX99oC.js} +2 -2
- package/dist/{dist-DJ3EjUNc.js → dist-DBXPlQ0D.js} +1 -1
- package/dist/{dist-DUY_SIWT.js → dist-DBYL08Lu.js} +4 -4
- package/dist/{dist-DInzmbT2.js → dist-DLNKBPsk.js} +4 -4
- package/dist/{dist-C_tLMuB0.js → dist-DStU8He1.js} +2 -2
- package/dist/dist-DZjX5TYv.js +5 -0
- package/dist/{dist-B4HRhSlD.js → dist-Dg65j0em.js} +1 -1
- package/dist/{dist-Ck4gp1Wp.js → dist-DjaZNkZ7.js} +3 -3
- package/dist/dist-Dkw9x6kc.js +5 -0
- package/dist/{dist-BnCNDnA7.js → dist-DmFS6KZW.js} +3 -3
- package/dist/dist-Ds6UaXGR.js +6 -0
- package/dist/{dist-DqezbmBd.js → dist-DwmxBUOe.js} +2 -2
- package/dist/dist-KuEJ1Q53.js +8 -0
- package/dist/dist-S72WNyTZ.js +5 -0
- package/dist/dist-bTG-yssT.js +5 -0
- package/dist/dist-diF0sguc.js +8 -0
- package/dist/dist-mJ84BIgu.js +8 -0
- package/dist/{dist-CDXh0OSg.js → dist-qoCY8giM.js} +2 -2
- package/dist/{dist-BmqJ8_Hr.js → dist-v-1kgqZ3.js} +1 -1
- package/dist/dist-wSIhFWQz.js +8 -0
- package/dist/{dockerfile-m9DOSpI5.js → dockerfile-DfXhjEUG.js} +1 -1
- package/dist/dtd-C-t2Rk7F.js +4 -0
- package/dist/dylan-B4ctBLGp.js +4 -0
- package/dist/ecl-DqWfymni.js +4 -0
- package/dist/eiffel-DjBKKAr7.js +4 -0
- package/dist/elm--fxeC0FV.js +4 -0
- package/dist/{erDiagram-Q2GNP2WA-C5bM6dcx.js → erDiagram-Q2GNP2WA-sho7Cl9f.js} +15 -15
- package/dist/erlang-CaKXCX6H.js +4 -0
- package/dist/{esm-C9_jY_wu.js → esm-CMg2ABu6.js} +2 -2
- package/dist/{esm-BBsFNcPe.js → esm-cqK9POGH.js} +105 -105
- package/dist/{factor-Nva0iSXt.js → factor--4HHM8Rw.js} +1 -1
- package/dist/factor-DlLO5EFS.js +4 -0
- package/dist/{flowDiagram-NV44I4VS-CULNNnl6.js → flowDiagram-NV44I4VS-C4nY4Fbz.js} +17 -17
- package/dist/forth-rOO6LVj_.js +4 -0
- package/dist/fortran-CUg15VGR.js +4 -0
- package/dist/{ganttDiagram-JELNMOA3-DIi-PAjP.js → ganttDiagram-JELNMOA3-CtxNcCM2.js} +10 -10
- package/dist/gas-BMRJspiW.js +4 -0
- package/dist/{get-CqYRpAGT.js → get-CqrzlV1v.js} +1 -1
- package/dist/gherkin-DRxzijZU.js +4 -0
- package/dist/{gitGraph-G5XIXVHT-S7ypWRtz.js → gitGraph-G5XIXVHT-SL6TDof6.js} +3 -3
- package/dist/{gitGraphDiagram-V2S2FVAM-BGDZsLhF.js → gitGraphDiagram-V2S2FVAM-D9885mxd.js} +17 -17
- package/dist/{glide-data-editor-D0IYL4_F.js → glide-data-editor-CkVEV-Gk.js} +8 -8
- package/dist/{graphlib-TFMRsJse.js → graphlib-CxWdvYQt.js} +2 -2
- package/dist/groovy-BmrQ8pUP.js +4 -0
- package/dist/haskell-BuaYfKOz.js +4 -0
- package/dist/haxe-DcH9eA0a.js +5 -0
- package/dist/idl-DGlcm4Ls.js +4 -0
- package/dist/{info-VBDWY6EO-CRCLLsdb.js → info-VBDWY6EO-6MXPTSmi.js} +3 -3
- package/dist/infoDiagram-HS3SLOUP-Bw2FlRwF.js +30 -0
- package/dist/{input-C5uUN4xL.js → input-BSde8uV4.js} +4 -4
- package/dist/javascript-CeTk7rzr.js +4 -0
- package/dist/{journeyDiagram-XKPGCS4Q-DUANVNzR.js → journeyDiagram-XKPGCS4Q-BXlCEth8.js} +7 -7
- package/dist/julia-BoP_q1gm.js +4 -0
- package/dist/{kanban-definition-3W4ZIXB7-dEyZPMAd.js → kanban-definition-3W4ZIXB7-CorxzSYm.js} +12 -12
- package/dist/{katex-Ckd8lBne.js → katex-CkLtKXwv.js} +1 -1
- package/dist/{label-DwSVaniz.js → label-DTNqw9tv.js} +1 -1
- package/dist/{line-LK_5q2B9.js → line-PAEmCpyD.js} +3 -3
- package/dist/{linear-CJ6ctpF3.js → linear-v57w-fIs.js} +4 -4
- package/dist/livescript-B7IMN-ba.js +4 -0
- package/dist/{loader-DrMJeyDu.js → loader-3c9hT4kT.js} +1 -1
- package/dist/lua-q1InavKb.js +4 -0
- package/dist/main.js +4354 -4397
- package/dist/mathematica-DvR8-_EI.js +4 -0
- package/dist/mbox-7h5MNBS_.js +4 -0
- package/dist/{mermaid-4DMBBIKO-C2ajbN0u.js → mermaid-4DMBBIKO-Cw46o6DN.js} +1 -1
- package/dist/{mermaid-Bwy7OYzI.js → mermaid-CEKslOkI.js} +46 -46
- package/dist/{mermaid-parser.core-DDGHdNnp.js → mermaid-parser.core-cq4YDee-.js} +8 -8
- package/dist/{mhchem-DAXq6Zll.js → mhchem-BuY5LDSq.js} +1 -1
- package/dist/{mindmap-definition-VGOIOE7T-jZ7-PfhM.js → mindmap-definition-VGOIOE7T-DRsT8UaN.js} +14 -14
- package/dist/mirc-D-XM8A5c.js +4 -0
- package/dist/mllike-BQGkkbmf.js +6 -0
- package/dist/modelica-D_yRj_WU.js +4 -0
- package/dist/mscgen-B-rltAjp.js +6 -0
- package/dist/mumps-2kh8TU2b.js +4 -0
- package/dist/{nsis-DgKbDAVQ.js → nsis-B6EN9LWI.js} +1 -1
- package/dist/nsis-CtusEqwb.js +4 -0
- package/dist/ntriples-BdAXw6zV.js +4 -0
- package/dist/{number-overlay-editor-BqzX9dHu.js → number-overlay-editor-DxLoVuuE.js} +1 -1
- package/dist/octave-CsNFmVp5.js +4 -0
- package/dist/{once-BfpiMcdf.js → once-CZno0h-b.js} +1 -1
- package/dist/{ordinal-COPPjmMz.js → ordinal-D7fa8Sey.js} +1 -1
- package/dist/oz-odIXCrKd.js +4 -0
- package/dist/{packet-DYOGHKS2-DPTC67cY.js → packet-DYOGHKS2-Dw08gMaZ.js} +3 -3
- package/dist/pascal-B9Mfk3Fo.js +4 -0
- package/dist/perl-C48inLcz.js +4 -0
- package/dist/{pie-VRWISCQL-DfbgsrV5.js → pie-VRWISCQL-C5SPSvT8.js} +3 -3
- package/dist/{pieDiagram-ADFJNKIX-BiAFdzOP.js → pieDiagram-ADFJNKIX-DhJ1Cx2O.js} +22 -22
- package/dist/pig-uwRtAssU.js +4 -0
- package/dist/powershell-CXqlca-i.js +4 -0
- package/dist/{precisionRound-Duzbr5ur.js → precisionRound-CGLoV26P.js} +1 -1
- package/dist/{process-output-CT8hHGp6.js → process-output-KyzWazB-.js} +163 -163
- package/dist/properties-D6Zu1rpK.js +4 -0
- package/dist/protobuf-BlNNWZaR.js +4 -0
- package/dist/pug-DytcK7bv.js +4 -0
- package/dist/{pug-CTpLcc1b.js → pug-xrm7jQ2R.js} +1 -1
- package/dist/puppet-lJ8Ok3iY.js +4 -0
- package/dist/python-cMaF7kUp.js +4 -0
- package/dist/q-Dgt2HYQh.js +4 -0
- package/dist/{quadrantDiagram-AYHSOK5B-CZjWO4oG.js → quadrantDiagram-AYHSOK5B-DXUFIWlz.js} +5 -5
- package/dist/r-Bm4S4awf.js +4 -0
- package/dist/{radar-ZZBFDIW7-B5Hwx2a8.js → radar-ZZBFDIW7-BvY0bgSg.js} +3 -3
- package/dist/range-CYz5jI--.js +17 -0
- package/dist/{react-vega-JMnqwKtN.js → react-vega-CzRAIHrv.js} +18 -18
- package/dist/react-vega-DayQmZjG.js +9 -0
- package/dist/{requirementDiagram-UZGBJVZJ-D9PkMDa5.js → requirementDiagram-UZGBJVZJ-DO_gtQIb.js} +14 -14
- package/dist/rpm-_8LbzMVc.js +5 -0
- package/dist/ruby-Cr8IJ5VZ.js +4 -0
- package/dist/{sankeyDiagram-TZEHDZUN-DuCG1ouO.js → sankeyDiagram-TZEHDZUN-OZzXEkuG.js} +5 -5
- package/dist/sas-CFcSfo2_.js +4 -0
- package/dist/scheme-N4XRoKgc.js +4 -0
- package/dist/{sequenceDiagram-WL72ISMW-BLJqizTv.js → sequenceDiagram-WL72ISMW-K7nZRifV.js} +8 -8
- package/dist/shell-B4L7f_ds.js +4 -0
- package/dist/sieve-UI6J3Gm0.js +4 -0
- package/dist/{slides-component-BsaaAy66.js → slides-component-CIcSvFh7.js} +1 -1
- package/dist/smalltalk-BuaPZAZU.js +4 -0
- package/dist/sparql-1rKrq463.js +4 -0
- package/dist/{spec-BLAZSydG.js → spec-DYaR1rJh.js} +2 -2
- package/dist/{src-szye8OCw.js → src-DbP20yFZ.js} +1 -1
- package/dist/{stateDiagram-FKZM4ZOC-CmZfv4_-.js → stateDiagram-FKZM4ZOC-DzXJZAq7.js} +19 -19
- package/dist/stateDiagram-v2-4FDKWEC3-BZBPUmyF.js +29 -0
- package/dist/{step-1PmBKr2y.js → step-qd10PbTJ.js} +1 -1
- package/dist/stex-CZyTRGVB.js +4 -0
- package/dist/style.css +1 -1
- package/dist/stylus-DvSovJEP.js +4 -0
- package/dist/swift-D-_E7Yyb.js +4 -0
- package/dist/tcl-Di5sAVHN.js +4 -0
- package/dist/textile-Benwt66z.js +4 -0
- package/dist/{time-B8tcX_hU.js → time-Bdnxi22U.js} +4 -4
- package/dist/{timeline-definition-IT6M3QCI-C7yv4fEk.js → timeline-definition-IT6M3QCI-DNoLAh-i.js} +4 -4
- package/dist/{toDate-BWaG12Pv.js → toDate-D6VXexnV.js} +2 -2
- package/dist/toml-CeOvPOkY.js +4 -0
- package/dist/{treemap-GDKQZRPO-B_LAAEIM.js → treemap-GDKQZRPO-C5OoxpmV.js} +3 -3
- package/dist/troff-DJN9hfgu.js +4 -0
- package/dist/ttcn-DQW2Psjf.js +4 -0
- package/dist/ttcn-cfg-zFG_MNpg.js +4 -0
- package/dist/turtle-DHRyNlSc.js +4 -0
- package/dist/{types-Dqw69fPc.js → types-CQ-RbYxp.js} +1 -1
- package/dist/{useAsyncData-Dqt2tV1E.js → useAsyncData-Cd4Urlww.js} +2 -2
- package/dist/{useDeepCompareMemoize-D2PKDkrk.js → useDeepCompareMemoize-X7clcrcQ.js} +3 -3
- package/dist/{useIframeCapabilities-DlwLttZw.js → useIframeCapabilities-BVQrlRBd.js} +1 -1
- package/dist/{useLifecycle-CJ_5Z4Mk.js → useLifecycle-Dids8BPm.js} +1 -1
- package/dist/{useTheme-BIAKDAh6.js → useTheme-Dm1WaAGy.js} +1 -1
- package/dist/vb-CXWH9DD-.js +4 -0
- package/dist/vbscript-qr8qVck5.js +4 -0
- package/dist/{vega-component-CTOT0vRO.js → vega-component-A6unyUJS.js} +12 -12
- package/dist/{vega-loader.browser-hMqVC9bf.js → vega-loader.browser-DqEcFOPD.js} +3 -3
- package/dist/velocity-C_9pUJRx.js +4 -0
- package/dist/verilog-DxBstgBa.js +4 -0
- package/dist/vhdl-odUxAbE6.js +4 -0
- package/dist/webidl-Dfn5Rku4.js +4 -0
- package/dist/xquery-CrJs6SXr.js +4 -0
- package/dist/{xychartDiagram-PRI3JC2R-DC0-6FAB.js → xychartDiagram-PRI3JC2R-ehVeySMW.js} +13 -13
- package/dist/yacas-B-uDDLZe.js +4 -0
- package/dist/z80-51gxgAXE.js +4 -0
- package/package.json +1 -1
- package/src/components/data-table/TableBottomBar.tsx +165 -0
- package/src/components/data-table/TableTopBar.tsx +141 -0
- package/src/components/data-table/data-table.tsx +29 -36
- package/src/components/data-table/export-actions.tsx +231 -0
- package/src/components/data-table/pagination.tsx +171 -251
- package/src/components/data-table/range-focus/__tests__/cell-selection-stats.test.tsx +16 -12
- package/src/components/data-table/range-focus/cell-selection-stats.tsx +9 -2
- package/src/plugins/impl/DataTablePlugin.tsx +4 -0
- package/dist/apl-Y7yFAg6_.js +0 -4
- package/dist/architecture-7HQA4BMR-SvLOcNCN.js +0 -6
- package/dist/arrays--2cd0hte.js +0 -59
- package/dist/asciiarmor-Bl8b2p0w.js +0 -4
- package/dist/asn1-BF6cywqm.js +0 -4
- package/dist/brainfuck-BuqydWe3.js +0 -4
- package/dist/classDiagram-2ON5EDUG-LT-Hu_dE.js +0 -30
- package/dist/classDiagram-v2-WZHVMYZB-G4qrOqlY.js +0 -30
- package/dist/clojure-CAHAWK5H.js +0 -4
- package/dist/cmake-BogDc4GF.js +0 -4
- package/dist/cobol-DRnpeU4u.js +0 -4
- package/dist/coffeescript-9MgX7RN8.js +0 -4
- package/dist/commonlisp-CVz2KONN.js +0 -4
- package/dist/crystal-td8mwLG5.js +0 -4
- package/dist/css-BK451dBn.js +0 -4
- package/dist/cypher-DuNPR6Ie.js +0 -4
- package/dist/d-DL6oP_-2.js +0 -4
- package/dist/diff-D9CplOBj.js +0 -4
- package/dist/dist-BOx8CJbo.js +0 -5
- package/dist/dist-BYoWtcAc.js +0 -5
- package/dist/dist-BaGdTXK1.js +0 -5
- package/dist/dist-BhGA2ia0.js +0 -8
- package/dist/dist-BoHuwe5C.js +0 -5
- package/dist/dist-CJ-2wW2z.js +0 -8
- package/dist/dist-Ccbo2rCF.js +0 -8
- package/dist/dist-CwayJLIO.js +0 -5
- package/dist/dist-D-jpfI6q.js +0 -6
- package/dist/dist-DShjplLu.js +0 -8
- package/dist/dist-DhBqFguQ.js +0 -5
- package/dist/dist-DiCgMCy4.js +0 -6
- package/dist/dist-Dqa-QKVa.js +0 -5
- package/dist/dist-OFv2DOPe.js +0 -5
- package/dist/dtd-Ce1c54UO.js +0 -4
- package/dist/dylan-B43wjIwg.js +0 -4
- package/dist/ecl-DK-fZmir.js +0 -4
- package/dist/eiffel-CNuvvPqD.js +0 -4
- package/dist/elm-DZEkBjgQ.js +0 -4
- package/dist/erlang-Dw4PDZV_.js +0 -4
- package/dist/factor-C9JRv63g.js +0 -4
- package/dist/forth-CKhoqn4e.js +0 -4
- package/dist/fortran-Do51bToK.js +0 -4
- package/dist/gas-BZfL3Uwh.js +0 -4
- package/dist/gherkin-BwQh4ehw.js +0 -4
- package/dist/groovy-CG5kCGiv.js +0 -4
- package/dist/haskell-BKii9uTg.js +0 -4
- package/dist/haxe-Bsz30J8x.js +0 -5
- package/dist/idl-BlxgaPKj.js +0 -4
- package/dist/infoDiagram-HS3SLOUP-fkZhmVE7.js +0 -30
- package/dist/javascript-SNhUvTcB.js +0 -4
- package/dist/julia-CGZzaDyk.js +0 -4
- package/dist/livescript-Cj6cX-Ys.js +0 -4
- package/dist/lua-BcVHrD8f.js +0 -4
- package/dist/mathematica-DLY8ZGoJ.js +0 -4
- package/dist/mbox-BNTsMWS5.js +0 -4
- package/dist/mirc-oyeOBir2.js +0 -4
- package/dist/mllike-ByxznKQw.js +0 -6
- package/dist/modelica-DNLhoyD8.js +0 -4
- package/dist/mscgen-DkZltsli.js +0 -6
- package/dist/mumps-TTiQB1xv.js +0 -4
- package/dist/nsis-RT1O1Ph8.js +0 -4
- package/dist/ntriples-CxsCiZ7Z.js +0 -4
- package/dist/octave-CkLh5tpW.js +0 -4
- package/dist/oz-yI7U9eVH.js +0 -4
- package/dist/pascal-CQK8sfDe.js +0 -4
- package/dist/perl-BEG8-kZl.js +0 -4
- package/dist/pig-DLLCqQaR.js +0 -4
- package/dist/powershell-CtjMkVO_.js +0 -4
- package/dist/properties-Domeb57z.js +0 -4
- package/dist/protobuf-0yk85TV6.js +0 -4
- package/dist/pug-B-BiNkM-.js +0 -4
- package/dist/puppet-C0N4vevK.js +0 -4
- package/dist/python-BZFa8G3C.js +0 -4
- package/dist/q-gcj7dgJv.js +0 -4
- package/dist/r-DavzTuPU.js +0 -4
- package/dist/react-vega-DfxWeueH.js +0 -9
- package/dist/rpm-bPj31ya8.js +0 -5
- package/dist/ruby-3UzzijjE.js +0 -4
- package/dist/sas-D9upmCP9.js +0 -4
- package/dist/scheme-DqWYzIFR.js +0 -4
- package/dist/shell-w63nkNmU.js +0 -4
- package/dist/sieve-Dz_ISrl6.js +0 -4
- package/dist/smalltalk-BXZ14pkr.js +0 -4
- package/dist/sparql-Boyc0wkb.js +0 -4
- package/dist/stateDiagram-v2-4FDKWEC3-BpOH8Bgl.js +0 -29
- package/dist/stex-DYK84lGq.js +0 -4
- package/dist/stylus-m9L_f1X1.js +0 -4
- package/dist/swift-C4TGn99K.js +0 -4
- package/dist/tcl-D_L0cfYZ.js +0 -4
- package/dist/textile-BAofYdKN.js +0 -4
- package/dist/toml-DCDKACLL.js +0 -4
- package/dist/troff-JHOU2VZK.js +0 -4
- package/dist/ttcn-Cxhng3qq.js +0 -4
- package/dist/ttcn-cfg-DJgUIu5n.js +0 -4
- package/dist/turtle-DKYkKZjV.js +0 -4
- package/dist/vb-C9rpn9hN.js +0 -4
- package/dist/vbscript-BQ7rxQU0.js +0 -4
- package/dist/velocity-C8WXmzLz.js +0 -4
- package/dist/verilog-BUXJEyEq.js +0 -4
- package/dist/vhdl-C18YIXfF.js +0 -4
- package/dist/webidl-D97EKzDx.js +0 -4
- package/dist/xquery-BZM6yzG2.js +0 -4
- package/dist/yacas-CXKck-Ok.js +0 -4
- package/dist/z80-BbF6ykWc.js +0 -4
- package/src/components/data-table/TableActions.tsx +0 -170
- package/src/components/data-table/download-actions.tsx +0 -224
- /package/dist/{ImageComparisonComponent-B5q26YVi.js → ImageComparisonComponent-DY3J_vIU.js} +0 -0
- /package/dist/{Plot-syRHsk-l.js → Plot-WhbJAbBh.js} +0 -0
- /package/dist/{apl-BqjtmlWW.js → apl-Oc3bL26_.js} +0 -0
- /package/dist/{array-D7wW5QoO.js → array-ByIS7m3B.js} +0 -0
- /package/dist/{asciiarmor-D9C9bbeV.js → asciiarmor-DTbPh2VI.js} +0 -0
- /package/dist/{asn1-D_zR1ubK.js → asn1-CGhwu1Ri.js} +0 -0
- /package/dist/{asterisk-B0dLLA8Z.js → asterisk-BApaB_8m.js} +0 -0
- /package/dist/{brainfuck-79SC7EYA.js → brainfuck-CA0L8lRq.js} +0 -0
- /package/dist/{chunk-DR5Q36YT-BxPcQ21t.js → chunk-DR5Q36YT-C40cYcy5.js} +0 -0
- /package/dist/{click-outside-container-DNfggvIW.js → click-outside-container-vCXhHl-R.js} +0 -0
- /package/dist/{clike-DFDX2jWq.js → clike-CEtUBPHD.js} +0 -0
- /package/dist/{clojure-Bb3Od9By.js → clojure-BszjvdGo.js} +0 -0
- /package/dist/{cmake-DYGUYEtU.js → cmake-B2Gvps8b.js} +0 -0
- /package/dist/{cobol-CcWmcAFT.js → cobol-DuMch8nn.js} +0 -0
- /package/dist/{coffeescript-BVa1qoL6.js → coffeescript-L9aKXVsJ.js} +0 -0
- /package/dist/{colors-6DRQ0kEF.js → colors-IJ-2cn2o.js} +0 -0
- /package/dist/{common-keywords-Bz8dNfWa.js → common-keywords-CsU75Ked.js} +0 -0
- /package/dist/{commonlisp-zi51jgUH.js → commonlisp-CrtdssxB.js} +0 -0
- /package/dist/{crystal-QjpegJHM.js → crystal-vvNY0LpY.js} +0 -0
- /package/dist/{css-B_GfJtcK.js → css-B1GdzqT1.js} +0 -0
- /package/dist/{cypher-BVuYJpGf.js → cypher-BtZvV7bW.js} +0 -0
- /package/dist/{cytoscape.esm-BYAuS6uS.js → cytoscape.esm-CRfNlsPy.js} +0 -0
- /package/dist/{d-BT97RiQI.js → d-B0UN3V-Z.js} +0 -0
- /package/dist/{defaultLocale-B_A76Zpk.js → defaultLocale-Bxoo2-30.js} +0 -0
- /package/dist/{defaultLocale-DjFHq3Xk.js → defaultLocale-qS7DaAmi.js} +0 -0
- /package/dist/{diff-CHd93v7L.js → diff-DOpgjj1W.js} +0 -0
- /package/dist/{dist-CqR8FBcH.js → dist-BjWd_Ei9.js} +0 -0
- /package/dist/{dist-CORAUsE1.js → dist-KZI_BHqV.js} +0 -0
- /package/dist/{dtd-akLFIRuZ.js → dtd-Ctnjxrle.js} +0 -0
- /package/dist/{duckdb-keywords-CQAIHMbC.js → duckdb-keywords-DjrZdCO2.js} +0 -0
- /package/dist/{dylan-Iy-rgNOc.js → dylan-DFXkoaZy.js} +0 -0
- /package/dist/{ebnf-CTkZpZPT.js → ebnf-XJCIl_em.js} +0 -0
- /package/dist/{ecl-BhUXC_aR.js → ecl-C1NExZip.js} +0 -0
- /package/dist/{eiffel-DIRAlWPD.js → eiffel-uXVGgleg.js} +0 -0
- /package/dist/{elm-BDgVzkJ4.js → elm-CBOFnnib.js} +0 -0
- /package/dist/{emotion-is-prop-valid.esm-DdzHpbbG.js → emotion-is-prop-valid.esm-CJVjyntJ.js} +0 -0
- /package/dist/{erlang-Djcs_NwB.js → erlang-DMnrT8XK.js} +0 -0
- /package/dist/{error-banner-DkDzvax3.js → error-banner-Bx9kIgrs.js} +0 -0
- /package/dist/{esm-BRwAuUu2.js → esm-D4gzqVRq.js} +0 -0
- /package/dist/{fcl-OXoT8w4k.js → fcl-fh4Mj0bc.js} +0 -0
- /package/dist/{forth-c_NTahPv.js → forth-DDpxS4nw.js} +0 -0
- /package/dist/{fortran-Bpxt27dn.js → fortran-B6uYqQMz.js} +0 -0
- /package/dist/{gas-RVBts6ZK.js → gas-BKnWzuFz.js} +0 -0
- /package/dist/{gherkin-Hf6PTauh.js → gherkin-pBt0wT4X.js} +0 -0
- /package/dist/{groovy-CKjO-cRi.js → groovy-DKsn4ppB.js} +0 -0
- /package/dist/{haskell-DC1Gan6v.js → haskell-BJVBJQcy.js} +0 -0
- /package/dist/{haxe-Bpne--ot.js → haxe-rLN5UZU5.js} +0 -0
- /package/dist/{http-CPVO27fZ.js → http-CbJFDV7c.js} +0 -0
- /package/dist/{idl-GRIbMIEq.js → idl-B4mwMAo-.js} +0 -0
- /package/dist/{init-BfRhston.js → init-Cge3yl4r.js} +0 -0
- /package/dist/{invariant-CzjtdzpE.js → invariant-D4hPsZFI.js} +0 -0
- /package/dist/{isEmpty-D_Jzlmqv.js → isEmpty-BQtUinxJ.js} +0 -0
- /package/dist/{javascript-nS0zxWNO.js → javascript-Hf2NLNC0.js} +0 -0
- /package/dist/{julia-CQpdTxmO.js → julia-GGpx21YN.js} +0 -0
- /package/dist/{katex-Dg42UEnr.js → katex-CQ_cP8Uu.js} +0 -0
- /package/dist/{livescript-D5kqrQol.js → livescript-CSvXMspZ.js} +0 -0
- /package/dist/{lua-CKifrpGK.js → lua-CVMR5LMW.js} +0 -0
- /package/dist/{main-C01_ic0d.js → main-CvkAPtaq.js} +0 -0
- /package/dist/{math-BbMyrONz.js → math-CEWMqgbD.js} +0 -0
- /package/dist/{mathematica-CxT3f_fi.js → mathematica-JENNt-p4.js} +0 -0
- /package/dist/{mbox-C2_n_I9h.js → mbox-mzifoc8E.js} +0 -0
- /package/dist/{memoize-CwWm-NpB.js → memoize-CuHciEBb.js} +0 -0
- /package/dist/{merge-Byt9w-nO.js → merge-CA_buyY3.js} +0 -0
- /package/dist/{micromark-factory-space-YUxUai1y.js → micromark-factory-space-BHslBP9f.js} +0 -0
- /package/dist/{mirc-BTQeASBH.js → mirc-BXoiItvN.js} +0 -0
- /package/dist/{mllike-BxO6Hl5N.js → mllike-H-KR9OuH.js} +0 -0
- /package/dist/{modelica-DuivZReX.js → modelica-B6Hm3mMl.js} +0 -0
- /package/dist/{mscgen-DwD83FOm.js → mscgen-D8TF_Hei.js} +0 -0
- /package/dist/{mumps-CdVjp3OE.js → mumps-CD-kNPt4.js} +0 -0
- /package/dist/{nginx-Bi9TuNqb.js → nginx-9EZQIKsh.js} +0 -0
- /package/dist/{node-sql-parser-Bet3kHkt.js → node-sql-parser-DIe6Cq_-.js} +0 -0
- /package/dist/{now-uNLDfbuW.js → now-CXAdKY5k.js} +0 -0
- /package/dist/{ntriples-DBS60qLp.js → ntriples-DgnpxU40.js} +0 -0
- /package/dist/{octave-BL0tQUFC.js → octave-CkobqyVm.js} +0 -0
- /package/dist/{oz-DBrG4vwi.js → oz-ChDLd9tS.js} +0 -0
- /package/dist/{pascal-BWV9h8yS.js → pascal-CvlkwK7E.js} +0 -0
- /package/dist/{path-C_x2ySFi.js → path-B-82hpi8.js} +0 -0
- /package/dist/{perl-Bm5a83JW.js → perl-BNEFTNbM.js} +0 -0
- /package/dist/{pig-CbJDoHaE.js → pig-Cd1DMS7P.js} +0 -0
- /package/dist/{powershell-tG44m5Cy.js → powershell-CPxA0zpc.js} +0 -0
- /package/dist/{properties-DUZGzdb1.js → properties-BaFBm-Xa.js} +0 -0
- /package/dist/{protobuf-CcoKXY0d.js → protobuf-BQV_-X0H.js} +0 -0
- /package/dist/{puppet-BH73L_Gw.js → puppet-LXLST0mx.js} +0 -0
- /package/dist/{purify.es-BwXbuO3r.js → purify.es-ukiMXY-F.js} +0 -0
- /package/dist/{python-NJIxLTZp.js → python-DLjLzX4k.js} +0 -0
- /package/dist/{q-MotBNA65.js → q-DswTX1Y9.js} +0 -0
- /package/dist/{r-BUgBPae7.js → r-CO7NpMwE.js} +0 -0
- /package/dist/{range-DwpxnYuB.js → range-BYuZFTbA.js} +0 -0
- /package/dist/{rpm-C_PaGodG.js → rpm-BlmEDT6r.js} +0 -0
- /package/dist/{ruby-DFLM2XD8.js → ruby-BTPKgeZZ.js} +0 -0
- /package/dist/{sas-BMyyu8oO.js → sas-DTDTiNO8.js} +0 -0
- /package/dist/{scheme-Qet9zYAe.js → scheme-UzAAg4GJ.js} +0 -0
- /package/dist/{shell-BKHx4Jjo.js → shell-DQ0hQCsB.js} +0 -0
- /package/dist/{sieve-CVo7dc4j.js → sieve-BVyYIx9u.js} +0 -0
- /package/dist/{simple-mode-CVFBIo6d.js → simple-mode-Dryu-fC9.js} +0 -0
- /package/dist/{smalltalk-BHr2nCth.js → smalltalk-DAdMAHTu.js} +0 -0
- /package/dist/{solr-Bt9XtM2H.js → solr-Bn6k51kO.js} +0 -0
- /package/dist/{sparql-QSu0ZCcc.js → sparql-Bi7quYgw.js} +0 -0
- /package/dist/{spreadsheet-BWfuwc0V.js → spreadsheet-UpVklYg7.js} +0 -0
- /package/dist/{sql-BdV3YOCG.js → sql-qyORs189.js} +0 -0
- /package/dist/{stex-Btoi8e7I.js → stex-Ze8D4R_5.js} +0 -0
- /package/dist/{stylus-CLZH9-Ps.js → stylus-jhpzcQ6Y.js} +0 -0
- /package/dist/{swift-JNDJdNIE.js → swift-BrO8qThZ.js} +0 -0
- /package/dist/{tcl-J5aE7aj5.js → tcl-s5QI5gv3.js} +0 -0
- /package/dist/{textile-6Hn05XQM.js → textile-ClhvJrxM.js} +0 -0
- /package/dist/{tiddlywiki-BWn8rSwJ.js → tiddlywiki-CmAAqw9M.js} +0 -0
- /package/dist/{tiki-XORjA1c3.js → tiki-DzCRe_s0.js} +0 -0
- /package/dist/{timer-pEiW44EO.js → timer-BPKOAfmx.js} +0 -0
- /package/dist/{toml-BceyeuiF.js → toml-TFa3EJQE.js} +0 -0
- /package/dist/{treemap-BzS5cW_6.js → treemap-CmLtUuWe.js} +0 -0
- /package/dist/{troff-DeMyd5Pf.js → troff-SqLg0heF.js} +0 -0
- /package/dist/{ttcn-DurvvcB-.js → ttcn-Cfrap7HJ.js} +0 -0
- /package/dist/{ttcn-cfg-BuYui6Rv.js → ttcn-cfg-Dopc-iwE.js} +0 -0
- /package/dist/{turtle-CD8Qf-tp.js → turtle-Dt52DvVH.js} +0 -0
- /package/dist/{vb-BklM-Nqk.js → vb-D1pAvfDe.js} +0 -0
- /package/dist/{vbscript-DbMEEX0d.js → vbscript-DZ7RBxn5.js} +0 -0
- /package/dist/{velocity-CERL-_vq.js → velocity-Csau7eZy.js} +0 -0
- /package/dist/{verilog-BD6jNce6.js → verilog-gXlZACs5.js} +0 -0
- /package/dist/{vhdl-U-1_N98i.js → vhdl-NaUWbI1B.js} +0 -0
- /package/dist/{webidl-IUn0dzoa.js → webidl-BJmPjW01.js} +0 -0
- /package/dist/{xquery-QeeHdSO2.js → xquery-CJIPsC0g.js} +0 -0
- /package/dist/{yacas-C9XcEPAJ.js → yacas-8f2Vjiiz.js} +0 -0
- /package/dist/{z80-C-nD1oRy.js → z80-s5Xk2hCP.js} +0 -0
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
"use no memo";
|
|
3
3
|
|
|
4
4
|
import type { Table } from "@tanstack/react-table";
|
|
5
|
+
import { range } from "lodash-es";
|
|
5
6
|
import {
|
|
6
7
|
ChevronDown,
|
|
7
8
|
ChevronLeft,
|
|
@@ -12,126 +13,47 @@ import {
|
|
|
12
13
|
import React from "react";
|
|
13
14
|
import { useLocale } from "react-aria";
|
|
14
15
|
import { Button } from "@/components/ui/button";
|
|
16
|
+
import {
|
|
17
|
+
Command,
|
|
18
|
+
CommandEmpty,
|
|
19
|
+
CommandInput,
|
|
20
|
+
CommandItem,
|
|
21
|
+
CommandList,
|
|
22
|
+
} from "@/components/ui/command";
|
|
15
23
|
import {
|
|
16
24
|
DropdownMenu,
|
|
17
25
|
DropdownMenuContent,
|
|
18
26
|
DropdownMenuItem,
|
|
19
27
|
DropdownMenuLabel,
|
|
20
|
-
DropdownMenuSeparator,
|
|
21
28
|
DropdownMenuTrigger,
|
|
22
29
|
} from "@/components/ui/dropdown-menu";
|
|
23
|
-
import {
|
|
24
|
-
|
|
30
|
+
import {
|
|
31
|
+
Popover,
|
|
32
|
+
PopoverContent,
|
|
33
|
+
PopoverTrigger,
|
|
34
|
+
} from "@/components/ui/popover";
|
|
35
|
+
import { Tooltip } from "@/components/ui/tooltip";
|
|
25
36
|
import { cn } from "@/utils/cn";
|
|
26
37
|
import { Events } from "@/utils/events";
|
|
27
38
|
import { prettyNumber } from "@/utils/numbers";
|
|
28
39
|
import { PluralWord } from "@/utils/pluralize";
|
|
29
|
-
import {
|
|
30
|
-
Select,
|
|
31
|
-
SelectContent,
|
|
32
|
-
SelectGroup,
|
|
33
|
-
SelectItem,
|
|
34
|
-
SelectLabel,
|
|
35
|
-
SelectTrigger,
|
|
36
|
-
SelectValue,
|
|
37
|
-
} from "../ui/select";
|
|
38
|
-
import type { DataTableSelection, PageRange } from "./types";
|
|
40
|
+
import type { PageRange } from "./types";
|
|
39
41
|
|
|
40
42
|
const MAX_PAGES_BEFORE_CLAMPING = 100;
|
|
41
43
|
|
|
42
44
|
interface DataTablePaginationProps<TData> {
|
|
43
45
|
table: Table<TData>;
|
|
44
|
-
selection?: DataTableSelection;
|
|
45
|
-
totalColumns: number;
|
|
46
|
-
onSelectAllRowsChange?: (value: boolean) => void;
|
|
47
46
|
tableLoading?: boolean;
|
|
48
47
|
showPageSizeSelector?: boolean;
|
|
49
48
|
}
|
|
50
49
|
|
|
51
50
|
export const DataTablePagination = <TData,>({
|
|
52
51
|
table,
|
|
53
|
-
selection,
|
|
54
|
-
onSelectAllRowsChange,
|
|
55
|
-
totalColumns,
|
|
56
52
|
tableLoading,
|
|
57
53
|
showPageSizeSelector,
|
|
58
54
|
}: DataTablePaginationProps<TData>) => {
|
|
59
55
|
const { locale } = useLocale();
|
|
60
56
|
|
|
61
|
-
const renderTotal = () => {
|
|
62
|
-
const { rowSelection, cellSelection } = table.getState();
|
|
63
|
-
let selected = Object.keys(rowSelection).length;
|
|
64
|
-
let isAllPageSelected = table.getIsAllPageRowsSelected();
|
|
65
|
-
const numRows = table.getRowCount();
|
|
66
|
-
let isAllSelected = selected === numRows;
|
|
67
|
-
|
|
68
|
-
const isCellSelection =
|
|
69
|
-
selection === "single-cell" || selection === "multi-cell";
|
|
70
|
-
if (isCellSelection) {
|
|
71
|
-
selected = cellSelection.length;
|
|
72
|
-
isAllPageSelected = false;
|
|
73
|
-
isAllSelected = false;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
if (isAllPageSelected && !isAllSelected) {
|
|
77
|
-
return (
|
|
78
|
-
<>
|
|
79
|
-
<span>{prettyNumber(selected, locale)} selected</span>
|
|
80
|
-
<Button
|
|
81
|
-
size="xs"
|
|
82
|
-
data-testid="select-all-button"
|
|
83
|
-
variant="link"
|
|
84
|
-
className="h-4 print:hidden"
|
|
85
|
-
onMouseDown={Events.preventFocus}
|
|
86
|
-
onClick={() => {
|
|
87
|
-
if (onSelectAllRowsChange) {
|
|
88
|
-
onSelectAllRowsChange(true);
|
|
89
|
-
} else {
|
|
90
|
-
table.toggleAllRowsSelected(true);
|
|
91
|
-
}
|
|
92
|
-
}}
|
|
93
|
-
>
|
|
94
|
-
Select all {prettyNumber(numRows, locale)}
|
|
95
|
-
</Button>
|
|
96
|
-
</>
|
|
97
|
-
);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
if (selected) {
|
|
101
|
-
return (
|
|
102
|
-
<>
|
|
103
|
-
<span>{prettyNumber(selected, locale)} selected</span>
|
|
104
|
-
<Button
|
|
105
|
-
size="xs"
|
|
106
|
-
data-testid="clear-selection-button"
|
|
107
|
-
variant="link"
|
|
108
|
-
className="h-4 print:hidden"
|
|
109
|
-
onMouseDown={Events.preventFocus}
|
|
110
|
-
onClick={() => {
|
|
111
|
-
if (!isCellSelection) {
|
|
112
|
-
if (onSelectAllRowsChange) {
|
|
113
|
-
onSelectAllRowsChange(false);
|
|
114
|
-
} else {
|
|
115
|
-
table.toggleAllRowsSelected(false);
|
|
116
|
-
}
|
|
117
|
-
} else if (table.resetCellSelection) {
|
|
118
|
-
table.resetCellSelection();
|
|
119
|
-
}
|
|
120
|
-
}}
|
|
121
|
-
>
|
|
122
|
-
Clear selection
|
|
123
|
-
</Button>
|
|
124
|
-
</>
|
|
125
|
-
);
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
const rowColumnCount = prettifyRowColumnCount(
|
|
129
|
-
numRows,
|
|
130
|
-
totalColumns,
|
|
131
|
-
locale,
|
|
132
|
-
);
|
|
133
|
-
return <span>{rowColumnCount}</span>;
|
|
134
|
-
};
|
|
135
57
|
const currentPage = Math.min(
|
|
136
58
|
table.getState().pagination.pageIndex + 1,
|
|
137
59
|
table.getPageCount(),
|
|
@@ -153,65 +75,72 @@ export const DataTablePagination = <TData,>({
|
|
|
153
75
|
|
|
154
76
|
const renderPageSizeSelector = () => {
|
|
155
77
|
return (
|
|
156
|
-
<div className="flex items-center
|
|
157
|
-
<
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
78
|
+
<div className="flex items-center text-xs whitespace-nowrap mr-1 print:hidden">
|
|
79
|
+
<DropdownMenu>
|
|
80
|
+
<DropdownMenuTrigger asChild={true}>
|
|
81
|
+
<button
|
|
82
|
+
type="button"
|
|
83
|
+
className="border rounded justify-between pl-1.5 pr-0.5 h-6 text-xs items-center hover:bg-accent inline-flex gap-0.5"
|
|
84
|
+
>
|
|
85
|
+
{pageSize} / page
|
|
86
|
+
<ChevronDown className="h-3 w-3 opacity-50 mb-px" />
|
|
87
|
+
</button>
|
|
88
|
+
</DropdownMenuTrigger>
|
|
89
|
+
<DropdownMenuContent align="center" sideOffset={6}>
|
|
90
|
+
<DropdownMenuLabel className="text-xs text-muted-foreground">
|
|
91
|
+
Rows per page
|
|
92
|
+
</DropdownMenuLabel>
|
|
93
|
+
{[...pageSizes].map((size) => (
|
|
94
|
+
<DropdownMenuItem
|
|
95
|
+
key={size}
|
|
96
|
+
className={cn(
|
|
97
|
+
"text-xs cursor-pointer",
|
|
98
|
+
size === pageSize && "font-semibold bg-accent",
|
|
99
|
+
)}
|
|
100
|
+
onSelect={() => table.setPageSize(size)}
|
|
101
|
+
onMouseDown={Events.preventFocus}
|
|
102
|
+
>
|
|
103
|
+
{size}
|
|
104
|
+
</DropdownMenuItem>
|
|
105
|
+
))}
|
|
106
|
+
</DropdownMenuContent>
|
|
107
|
+
</DropdownMenu>
|
|
179
108
|
</div>
|
|
180
109
|
);
|
|
181
110
|
};
|
|
182
111
|
|
|
183
112
|
return (
|
|
184
|
-
<div className="flex flex-
|
|
185
|
-
<div className="
|
|
186
|
-
<div className="text-sm text-muted-foreground">{renderTotal()}</div>
|
|
113
|
+
<div className="flex flex-col lg:flex-row items-center gap-0.5 lg:gap-1 px-2">
|
|
114
|
+
<div className="order-2 lg:order-first">
|
|
187
115
|
{showPageSizeSelector && renderPageSizeSelector()}
|
|
188
116
|
</div>
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
</
|
|
203
|
-
<
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
117
|
+
<div className="order-1 lg:order-last flex items-center print:hidden">
|
|
118
|
+
<Tooltip content="First page">
|
|
119
|
+
<Button
|
|
120
|
+
size="xs"
|
|
121
|
+
variant="text"
|
|
122
|
+
data-testid="first-page-button"
|
|
123
|
+
className="hidden h-6 w-5 p-0 lg:flex"
|
|
124
|
+
onClick={() => handlePageChange(() => table.setPageIndex(0))}
|
|
125
|
+
onMouseDown={Events.preventFocus}
|
|
126
|
+
disabled={!table.getCanPreviousPage()}
|
|
127
|
+
>
|
|
128
|
+
<ChevronsLeft className="h-4 w-4" />
|
|
129
|
+
</Button>
|
|
130
|
+
</Tooltip>
|
|
131
|
+
<Tooltip content="Previous page">
|
|
132
|
+
<Button
|
|
133
|
+
size="xs"
|
|
134
|
+
variant="text"
|
|
135
|
+
data-testid="previous-page-button"
|
|
136
|
+
className="h-6 w-5 p-0"
|
|
137
|
+
onClick={() => handlePageChange(() => table.previousPage())}
|
|
138
|
+
onMouseDown={Events.preventFocus}
|
|
139
|
+
disabled={!table.getCanPreviousPage()}
|
|
140
|
+
>
|
|
141
|
+
<ChevronLeft className="h-4 w-4" />
|
|
142
|
+
</Button>
|
|
143
|
+
</Tooltip>
|
|
215
144
|
<div className="flex items-center justify-center text-xs font-medium gap-1">
|
|
216
145
|
<span>Page</span>
|
|
217
146
|
<PageSelector
|
|
@@ -225,32 +154,36 @@ export const DataTablePagination = <TData,>({
|
|
|
225
154
|
of {prettyNumber(totalPages, locale)}
|
|
226
155
|
</span>
|
|
227
156
|
</div>
|
|
228
|
-
<
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
157
|
+
<Tooltip content="Next page">
|
|
158
|
+
<Button
|
|
159
|
+
size="xs"
|
|
160
|
+
variant="text"
|
|
161
|
+
data-testid="next-page-button"
|
|
162
|
+
className="h-6 w-5 p-0"
|
|
163
|
+
onClick={() => handlePageChange(() => table.nextPage())}
|
|
164
|
+
onMouseDown={Events.preventFocus}
|
|
165
|
+
disabled={!table.getCanNextPage()}
|
|
166
|
+
>
|
|
167
|
+
<ChevronRight className="h-4 w-4" />
|
|
168
|
+
</Button>
|
|
169
|
+
</Tooltip>
|
|
170
|
+
<Tooltip content="Last page">
|
|
171
|
+
<Button
|
|
172
|
+
size="xs"
|
|
173
|
+
variant="text"
|
|
174
|
+
data-testid="last-page-button"
|
|
175
|
+
className="hidden h-6 w-5 p-0 lg:flex"
|
|
176
|
+
onClick={() =>
|
|
177
|
+
handlePageChange(() =>
|
|
178
|
+
table.setPageIndex(table.getPageCount() - 1),
|
|
179
|
+
)
|
|
180
|
+
}
|
|
181
|
+
onMouseDown={Events.preventFocus}
|
|
182
|
+
disabled={!table.getCanNextPage()}
|
|
183
|
+
>
|
|
184
|
+
<ChevronsRight className="h-4 w-4" />
|
|
185
|
+
</Button>
|
|
186
|
+
</Tooltip>
|
|
254
187
|
</div>
|
|
255
188
|
</div>
|
|
256
189
|
);
|
|
@@ -266,102 +199,89 @@ export const PageSelector = ({
|
|
|
266
199
|
onPageChange: (page: number) => void;
|
|
267
200
|
}) => {
|
|
268
201
|
const [open, setOpen] = React.useState(false);
|
|
269
|
-
const [jumpValue, setJumpValue] = React.useState("");
|
|
270
|
-
const jumpInputId = React.useId();
|
|
271
202
|
|
|
272
203
|
const pageRanges = React.useMemo(
|
|
273
204
|
() => getPageRanges(currentPage, totalPages),
|
|
274
205
|
[currentPage, totalPages],
|
|
275
206
|
);
|
|
276
207
|
|
|
277
|
-
const
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
onPageChange(page - 1);
|
|
281
|
-
setJumpValue("");
|
|
282
|
-
setOpen(false);
|
|
283
|
-
}
|
|
208
|
+
const handleSelect = (page: number) => {
|
|
209
|
+
onPageChange(page - 1);
|
|
210
|
+
setOpen(false);
|
|
284
211
|
};
|
|
285
212
|
|
|
286
213
|
return (
|
|
287
|
-
<
|
|
288
|
-
<
|
|
214
|
+
<Popover open={totalPages > 1 ? open : false} onOpenChange={setOpen}>
|
|
215
|
+
<PopoverTrigger asChild={true} disabled={totalPages <= 1}>
|
|
289
216
|
<button
|
|
290
217
|
type="button"
|
|
291
|
-
className=
|
|
218
|
+
className={cn(
|
|
219
|
+
"border rounded justify-between pl-1.5 pr-0.5 h-6 min-w-9 text-xs items-center inline-flex gap-0.5",
|
|
220
|
+
totalPages > 1
|
|
221
|
+
? "hover:bg-accent cursor-pointer"
|
|
222
|
+
: "opacity-50 cursor-default",
|
|
223
|
+
)}
|
|
292
224
|
data-testid="page-select"
|
|
225
|
+
disabled={totalPages <= 1}
|
|
293
226
|
>
|
|
294
227
|
{currentPage}
|
|
295
228
|
<ChevronDown className="h-3 w-3 opacity-50 mb-px" />
|
|
296
229
|
</button>
|
|
297
|
-
</
|
|
298
|
-
<
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
if (e.key === "Enter") {
|
|
353
|
-
handleJump();
|
|
354
|
-
}
|
|
355
|
-
e.stopPropagation();
|
|
356
|
-
}}
|
|
357
|
-
className="h-6 text-xs"
|
|
358
|
-
data-testid="page-jump-input"
|
|
359
|
-
/>
|
|
360
|
-
</div>
|
|
361
|
-
</>
|
|
362
|
-
)}
|
|
363
|
-
</DropdownMenuContent>
|
|
364
|
-
</DropdownMenu>
|
|
230
|
+
</PopoverTrigger>
|
|
231
|
+
<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
|
+
>
|
|
238
|
+
<CommandInput
|
|
239
|
+
placeholder={`Page (1–${totalPages})`}
|
|
240
|
+
rootClassName="px-2 h-8"
|
|
241
|
+
className="text-xs h-8"
|
|
242
|
+
autoFocus={true}
|
|
243
|
+
icon={null}
|
|
244
|
+
onKeyDown={(e) => {
|
|
245
|
+
// Allow navigation/editing keys, block non-numeric input
|
|
246
|
+
const allowed = [
|
|
247
|
+
"Backspace",
|
|
248
|
+
"Delete",
|
|
249
|
+
"ArrowLeft",
|
|
250
|
+
"ArrowRight",
|
|
251
|
+
"Tab",
|
|
252
|
+
"Enter",
|
|
253
|
+
"Escape",
|
|
254
|
+
];
|
|
255
|
+
if (!allowed.includes(e.key) && !/^\d$/.test(e.key)) {
|
|
256
|
+
e.preventDefault();
|
|
257
|
+
}
|
|
258
|
+
}}
|
|
259
|
+
/>
|
|
260
|
+
<CommandList className="max-h-60">
|
|
261
|
+
{pageRanges.map((item) =>
|
|
262
|
+
item.type === "ellipsis" ? null : (
|
|
263
|
+
<CommandItem
|
|
264
|
+
key={item.page}
|
|
265
|
+
value={String(item.page)}
|
|
266
|
+
data-testid="page-option"
|
|
267
|
+
className={cn(
|
|
268
|
+
"text-xs cursor-pointer",
|
|
269
|
+
item.page === currentPage && "font-semibold bg-accent",
|
|
270
|
+
)}
|
|
271
|
+
onSelect={() => handleSelect(item.page)}
|
|
272
|
+
onMouseDown={Events.preventFocus}
|
|
273
|
+
>
|
|
274
|
+
{item.page}
|
|
275
|
+
</CommandItem>
|
|
276
|
+
),
|
|
277
|
+
)}
|
|
278
|
+
<CommandEmpty className="py-2 text-center text-xs text-muted-foreground">
|
|
279
|
+
No matching page
|
|
280
|
+
</CommandEmpty>
|
|
281
|
+
</CommandList>
|
|
282
|
+
</Command>
|
|
283
|
+
</PopoverContent>
|
|
284
|
+
</Popover>
|
|
365
285
|
);
|
|
366
286
|
};
|
|
367
287
|
|
|
@@ -5,6 +5,7 @@ import { render, screen } from "@testing-library/react";
|
|
|
5
5
|
import { useEffect } from "react";
|
|
6
6
|
import { I18nProvider } from "react-aria";
|
|
7
7
|
import { describe, expect, it } from "vitest";
|
|
8
|
+
import { TooltipProvider } from "@/components/ui/tooltip";
|
|
8
9
|
import { SELECT_COLUMN_ID } from "../../types";
|
|
9
10
|
import { useCellSelectionReducerActions } from "../atoms";
|
|
10
11
|
import { CellSelectionStats } from "../cell-selection-stats";
|
|
@@ -23,27 +24,30 @@ const TestHarness = ({
|
|
|
23
24
|
actions.setSelectedCells(selectedCellIds);
|
|
24
25
|
}, [actions, selectedCellIds]);
|
|
25
26
|
return (
|
|
26
|
-
<
|
|
27
|
-
<
|
|
28
|
-
|
|
27
|
+
<TooltipProvider>
|
|
28
|
+
<I18nProvider locale="en-US">
|
|
29
|
+
<CellSelectionStats table={table} />
|
|
30
|
+
</I18nProvider>
|
|
31
|
+
</TooltipProvider>
|
|
29
32
|
);
|
|
30
33
|
};
|
|
31
34
|
|
|
32
35
|
describe("CellSelectionStats", () => {
|
|
33
|
-
it("should
|
|
36
|
+
it("should show hint when fewer than 2 cells are selected", () => {
|
|
34
37
|
const row = createMockRow("0", [
|
|
35
38
|
createMockCell("0_0", 10),
|
|
36
39
|
createMockCell("0_1", 20),
|
|
37
40
|
]);
|
|
38
41
|
const table = createMockTable([row], []);
|
|
39
42
|
|
|
40
|
-
|
|
43
|
+
render(
|
|
41
44
|
<CellSelectionProvider>
|
|
42
45
|
<TestHarness table={table} selectedCellIds={new Set(["0_0"])} />
|
|
43
46
|
</CellSelectionProvider>,
|
|
44
47
|
);
|
|
45
48
|
|
|
46
|
-
expect(
|
|
49
|
+
expect(screen.getByText("No selection")).toBeInTheDocument();
|
|
50
|
+
expect(screen.queryByText(/Count:/)).not.toBeInTheDocument();
|
|
47
51
|
});
|
|
48
52
|
|
|
49
53
|
it("should display Count stat when 2 or more cells are selected", () => {
|
|
@@ -181,20 +185,20 @@ describe("CellSelectionStats", () => {
|
|
|
181
185
|
expect(screen.getByText("Average: 0")).toBeInTheDocument();
|
|
182
186
|
});
|
|
183
187
|
|
|
184
|
-
it("should
|
|
188
|
+
it("should show hint instead of stats when exactly one cell is selected", () => {
|
|
185
189
|
const row = createMockRow("0", [
|
|
186
190
|
createMockCell("0_0", 10),
|
|
187
191
|
createMockCell("0_1", 20),
|
|
188
192
|
]);
|
|
189
193
|
const table = createMockTable([row], []);
|
|
190
194
|
|
|
191
|
-
|
|
195
|
+
render(
|
|
192
196
|
<CellSelectionProvider>
|
|
193
197
|
<TestHarness table={table} selectedCellIds={new Set(["0_0"])} />
|
|
194
198
|
</CellSelectionProvider>,
|
|
195
199
|
);
|
|
196
200
|
|
|
197
|
-
expect(
|
|
201
|
+
expect(screen.getByText("No selection")).toBeInTheDocument();
|
|
198
202
|
expect(screen.queryByText(/Count:/)).not.toBeInTheDocument();
|
|
199
203
|
});
|
|
200
204
|
|
|
@@ -301,14 +305,14 @@ describe("CellSelectionStats", () => {
|
|
|
301
305
|
expect(screen.getByText("Average: 25")).toBeInTheDocument();
|
|
302
306
|
});
|
|
303
307
|
|
|
304
|
-
it("should
|
|
308
|
+
it("should show hint when only checkbox column cells are selected", () => {
|
|
305
309
|
const selectCellId1 = `0_${SELECT_COLUMN_ID}`;
|
|
306
310
|
const selectCellId2 = `1_${SELECT_COLUMN_ID}`;
|
|
307
311
|
const row1 = createMockRow("0", [createMockCell(selectCellId1, true)]);
|
|
308
312
|
const row2 = createMockRow("1", [createMockCell(selectCellId2, false)]);
|
|
309
313
|
const table = createMockTable([row1, row2], []);
|
|
310
314
|
|
|
311
|
-
|
|
315
|
+
render(
|
|
312
316
|
<CellSelectionProvider>
|
|
313
317
|
<TestHarness
|
|
314
318
|
table={table}
|
|
@@ -317,7 +321,7 @@ describe("CellSelectionStats", () => {
|
|
|
317
321
|
</CellSelectionProvider>,
|
|
318
322
|
);
|
|
319
323
|
|
|
320
|
-
expect(
|
|
324
|
+
expect(screen.getByText("No selection")).toBeInTheDocument();
|
|
321
325
|
expect(screen.queryByText(/Count:/)).not.toBeInTheDocument();
|
|
322
326
|
});
|
|
323
327
|
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import type { Table } from "@tanstack/react-table";
|
|
4
4
|
import { useAtomValue } from "jotai";
|
|
5
5
|
import { useLocale } from "react-aria";
|
|
6
|
+
import { Tooltip } from "@/components/ui/tooltip";
|
|
6
7
|
import { cn } from "@/utils/cn";
|
|
7
8
|
import { selectedCellsAtom } from "./atoms";
|
|
8
9
|
import {
|
|
@@ -31,7 +32,13 @@ export const CellSelectionStats = <TData,>({
|
|
|
31
32
|
const dataCellCount = countDataCellsInSelection(selectedCells);
|
|
32
33
|
|
|
33
34
|
if (dataCellCount < 2) {
|
|
34
|
-
return
|
|
35
|
+
return (
|
|
36
|
+
<Tooltip content="Select multiple cells to see stats">
|
|
37
|
+
<span className={cn("text-sm text-muted-foreground italic", className)}>
|
|
38
|
+
No selection
|
|
39
|
+
</span>
|
|
40
|
+
</Tooltip>
|
|
41
|
+
);
|
|
35
42
|
}
|
|
36
43
|
|
|
37
44
|
const numericValues = getNumericValuesFromSelectedCells(table, selectedCells);
|
|
@@ -39,7 +46,7 @@ export const CellSelectionStats = <TData,>({
|
|
|
39
46
|
return (
|
|
40
47
|
<div
|
|
41
48
|
className={cn(
|
|
42
|
-
"flex items-center justify-end gap-3 text-
|
|
49
|
+
"flex items-center justify-end gap-3 text-sm text-muted-foreground shrink-0",
|
|
43
50
|
className,
|
|
44
51
|
)}
|
|
45
52
|
>
|
|
@@ -466,6 +466,7 @@ interface DataTableProps<T> extends Data<T>, DataTableFunctions {
|
|
|
466
466
|
hoverTemplate?: string | null;
|
|
467
467
|
cellHoverTexts?: Record<string, Record<string, string | null>> | null;
|
|
468
468
|
toggleDisplayHeader?: () => void;
|
|
469
|
+
isChartBuilderOpen?: boolean;
|
|
469
470
|
host: HTMLElement;
|
|
470
471
|
cellId?: CellId | null;
|
|
471
472
|
}
|
|
@@ -749,6 +750,7 @@ export const LoadingDataTableComponent = memo(
|
|
|
749
750
|
> | null
|
|
750
751
|
}
|
|
751
752
|
toggleDisplayHeader={toggleDisplayHeader}
|
|
753
|
+
isChartBuilderOpen={displayHeader}
|
|
752
754
|
getRow={getRow}
|
|
753
755
|
cellId={cellId}
|
|
754
756
|
maxHeight={props.maxHeight}
|
|
@@ -821,6 +823,7 @@ const DataTableComponent = ({
|
|
|
821
823
|
hoverTemplate,
|
|
822
824
|
cellHoverTexts,
|
|
823
825
|
toggleDisplayHeader,
|
|
826
|
+
isChartBuilderOpen,
|
|
824
827
|
calculate_top_k_rows,
|
|
825
828
|
preview_column,
|
|
826
829
|
getRow,
|
|
@@ -1088,6 +1091,7 @@ const DataTableComponent = ({
|
|
|
1088
1091
|
getRowIds={get_row_ids}
|
|
1089
1092
|
toggleDisplayHeader={toggleDisplayHeader}
|
|
1090
1093
|
showChartBuilder={showChartBuilder}
|
|
1094
|
+
isChartBuilderOpen={isChartBuilderOpen}
|
|
1091
1095
|
showPageSizeSelector={showPageSizeSelector}
|
|
1092
1096
|
// Hidden in VSCode (for now) because we don't have a panel to show
|
|
1093
1097
|
// the table explorer.
|
package/dist/apl-Y7yFAg6_.js
DELETED