@marimo-team/frontend 0.21.2-dev64 → 0.21.2-dev69
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-CSyn_YBv.js → CellStatus-BWh3L8zx.js} +1 -1
- package/dist/assets/{ConnectedDataExplorerComponent-Dl5LOVOh.js → ConnectedDataExplorerComponent-BUeDbkXy.js} +1 -1
- package/dist/assets/{JsonOutput-C6G83us5.js → JsonOutput-Bmx1vme7.js} +11 -11
- package/dist/assets/LazyAnyLanguageCodeMirror-BTEcIffn.js +2 -0
- package/dist/assets/{MarimoErrorOutput-DocWeKjV.js → MarimoErrorOutput-3snr3JrQ.js} +4 -4
- package/dist/assets/{RenderHTML-26aAKQ-8.js → RenderHTML-C9ZqxJ8H.js} +1 -1
- package/dist/assets/{add-cell-with-ai-BSWYMy0y.js → add-cell-with-ai-u_AX7UAd.js} +9 -9
- package/dist/assets/{add-connection-dialog-S-Hiw5Sn.js → add-connection-dialog-COHTxTf9.js} +1 -1
- package/dist/assets/{agent-panel-CEBChEgo.js → agent-panel-DiqyaNm8.js} +5 -5
- package/dist/assets/{ai-model-dropdown-C_T_oAXa.js → ai-model-dropdown-Dybmv5gR.js} +4 -4
- package/dist/assets/{any-language-editor-Dx3VFLbz.js → any-language-editor-DVOJvjS_.js} +1 -1
- package/dist/assets/apl-EWXxdJ89.js +1 -0
- package/dist/assets/{app-config-button-CEpYCUvC.js → app-config-button-BldM7HZH.js} +1 -1
- package/dist/assets/{arc-CFxCF0f6.js → arc-CM3JIGAK.js} +1 -1
- package/dist/assets/{architecture-7HQA4BMR-3vsMDKTP.js → architecture-7HQA4BMR-CjBWfzkw.js} +1 -1
- package/dist/assets/{architectureDiagram-VXUJARFQ-D9kPM0z9.js → architectureDiagram-VXUJARFQ-Bj7Il1tu.js} +1 -1
- package/dist/assets/asciiarmor-DSR32lM3.js +1 -0
- package/dist/assets/asn1-CzLTElTA.js +1 -0
- package/dist/assets/{blockDiagram-VD42YOAC-BAyg1LmM.js → blockDiagram-VD42YOAC-oQ23Vi0_.js} +1 -1
- package/dist/assets/brainfuck-C9KAsPxY.js +1 -0
- package/dist/assets/{c4Diagram-YG6GDRKO--4bijtys.js → c4Diagram-YG6GDRKO-BmG_s0MV.js} +1 -1
- package/dist/assets/{cache-panel-tss6GZ39.js → cache-panel-CcvLLOUr.js} +1 -1
- package/dist/assets/{cell-editor-By2GGVYQ.js → cell-editor-D6-drdh3.js} +8 -8
- package/dist/assets/{cell-link-BgNPg6FR.js → cell-link-DV3G9zVQ.js} +1 -1
- package/dist/assets/{cells-BZ2tqr8k.js → cells-B8rT_yJt.js} +54 -54
- package/dist/assets/channel-Ce6sVGv4.js +1 -0
- package/dist/assets/{chat-display-2RrXeUHQ.js → chat-display-DSlMdLnv.js} +1 -1
- package/dist/assets/chat-panel-BhurwxDK.js +3 -0
- package/dist/assets/{chat-ui-gqaOvAn5.js → chat-ui-BL1vsaOH.js} +1 -1
- package/dist/assets/{chunk-4BX2VUAB-DF0hGcQN.js → chunk-4BX2VUAB-B189RnQe.js} +1 -1
- package/dist/assets/chunk-55IACEB6-BKJUfbeh.js +1 -0
- package/dist/assets/chunk-5FQGJX7Z-KaqPPQRg.js +113 -0
- package/dist/assets/{chunk-ABZYJK2D-YAqD84U8.js → chunk-ABZYJK2D-B25ZPF-K.js} +3 -3
- package/dist/assets/{chunk-ATLVNIR6-DbiqnFFy.js → chunk-ATLVNIR6-B45gjfoT.js} +1 -1
- package/dist/assets/{chunk-B4BG7PRW-CPghmS_2.js → chunk-B4BG7PRW-uViI8VWN.js} +1 -1
- package/dist/assets/{chunk-CVBHYZKI-5HVb4Wim.js → chunk-CVBHYZKI-DDPYtx7T.js} +1 -1
- package/dist/assets/{chunk-DI55MBZ5-CfK3aKqu.js → chunk-DI55MBZ5-DLM1fyq0.js} +1 -1
- package/dist/assets/{chunk-EXTU4WIE-Ce4YyDo3.js → chunk-EXTU4WIE-se83eFLa.js} +1 -1
- package/dist/assets/{chunk-FMBD7UC4-BeZPwy7p.js → chunk-FMBD7UC4-DVUAz4cp.js} +1 -1
- package/dist/assets/{chunk-HN2XXSSU-DjhZVPDs.js → chunk-HN2XXSSU-Bm9ByQAV.js} +1 -1
- package/dist/assets/{chunk-JA3XYJ7Z-DZPNtCK-.js → chunk-JA3XYJ7Z-Bf9EPUd3.js} +1 -1
- package/dist/assets/{chunk-JZLCHNYA-Dpe2M-yf.js → chunk-JZLCHNYA-CgH-oTl4.js} +1 -1
- package/dist/assets/{chunk-MI3HLSF2-pZk5-wBb.js → chunk-MI3HLSF2-BjSxv-Tb.js} +1 -1
- package/dist/assets/{chunk-N4CR4FBY-DUuhotFe.js → chunk-N4CR4FBY-DggtmLIl.js} +2 -2
- package/dist/assets/{chunk-QN33PNHL-DOzVADWo.js → chunk-QN33PNHL-BieKJXyS.js} +1 -1
- package/dist/assets/{chunk-QXUST7PY-Bs7vzMFW.js → chunk-QXUST7PY-8icnqUGK.js} +1 -1
- package/dist/assets/{chunk-QZHKN3VN-iAvgjPDy.js → chunk-QZHKN3VN-CETeUy72.js} +1 -1
- package/dist/assets/{chunk-S3R3BYOJ-CmOcQqk_.js → chunk-S3R3BYOJ-Czh1h7v6.js} +1 -1
- package/dist/assets/{chunk-TZMSLE5B-C1A4ubRR.js → chunk-TZMSLE5B-jYelYMXU.js} +1 -1
- package/dist/assets/classDiagram-2ON5EDUG-hMIK1Zdj.js +1 -0
- package/dist/assets/classDiagram-v2-WZHVMYZB-CoXOcl4J.js +1 -0
- package/dist/assets/{clike-BbrvoIeH.js → clike-OJZcTpQL.js} +1 -1
- package/dist/assets/clojure-DQhuUUMF.js +1 -0
- package/dist/assets/cmake-CH_Sxc86.js +1 -0
- package/dist/assets/cobol-CUc3YqiS.js +1 -0
- package/dist/assets/{code-block-37QAKDTI-DlumEtkK.js → code-block-37QAKDTI-OmWrUFvA.js} +1 -1
- package/dist/assets/coffeescript-jkPo-KDH.js +1 -0
- package/dist/assets/{column-preview-Bxza9N1V.js → column-preview-MbViuzSN.js} +1 -1
- package/dist/assets/{command-BeKqRjOY.js → command-DvKBTmQJ.js} +1 -1
- package/dist/assets/command-palette-D1yVCClb.js +1 -0
- package/dist/assets/{common-D8-arIFt.js → common-MJu6yCEK.js} +1 -1
- package/dist/assets/commonlisp-Da0K5kk2.js +1 -0
- package/dist/assets/{components-4-hSIFip.js → components-CWfQv9p5.js} +1 -1
- package/dist/assets/components-fIfcCZSp.js +1 -0
- package/dist/assets/context-aware-panel-BPlijhXd.js +3 -0
- package/dist/assets/{cose-bilkent-S5V4N54A-Dc-Xjmtt.js → cose-bilkent-S5V4N54A-Bi0_d7cB.js} +1 -1
- package/dist/assets/crystal-BNWfY9C_.js +1 -0
- package/dist/assets/{css-D6ibtNcd.js → css-Cupd7xng.js} +1 -1
- package/dist/assets/cypher--c26tz0e.js +1 -0
- package/dist/assets/d-Byku2dmh.js +1 -0
- package/dist/assets/{dagre-6UL2VRFP-CwgYeOyd.js → dagre-6UL2VRFP-Cj7QD8QV.js} +1 -1
- package/dist/assets/{data-grid-overlay-editor-DGw11cpx.js → data-grid-overlay-editor-CrDdi6s3.js} +1 -1
- package/dist/assets/{datasource-xu50qvjI.js → datasource-xomiPYKd.js} +2 -2
- package/dist/assets/{dependency-graph-panel-_khCuhB-.js → dependency-graph-panel-B24Gr6L4.js} +3 -3
- package/dist/assets/{diagram-PSM6KHXK-DSWsukz1.js → diagram-PSM6KHXK-f8hiJ27Z.js} +1 -1
- package/dist/assets/{diagram-QEK2KX5R-CUGL1lw-.js → diagram-QEK2KX5R-DhD0I0gb.js} +1 -1
- package/dist/assets/{diagram-S2PKOQOG-CNDV3U9h.js → diagram-S2PKOQOG-CMxSsKXF.js} +1 -1
- package/dist/assets/diff-a9CLcKdR.js +1 -0
- package/dist/assets/dist-BBGASQNR.js +1 -0
- package/dist/assets/{dist-DoTdV6qI.js → dist-BRCCPMsT.js} +1 -1
- package/dist/assets/{dist-BGKOvmq0.js → dist-CJ8RtgvK.js} +1 -1
- package/dist/assets/{dist-3Yb9jUpo.js → dist-COABhHhr.js} +1 -1
- package/dist/assets/dist-Cp7t_Bws.js +1 -0
- package/dist/assets/{dist-CtXmSZyI.js → dist-DROvTz9O.js} +1 -1
- package/dist/assets/dist-DWBTB8aa.js +1 -0
- package/dist/assets/{dist-DaPIfS-Q.js → dist-DeX768Hg.js} +1 -1
- package/dist/assets/{dist-p1_vuZ9R.js → dist-DrDZNjDr.js} +1 -1
- package/dist/assets/dist-Hf_DuPpM.js +7 -0
- package/dist/assets/{dist-Dhl1En-E.js → dist-LxLdJkvD.js} +1 -1
- package/dist/assets/{dist-DMoYJC-G.js → dist-VjWmUZA0.js} +1 -1
- package/dist/assets/{dist-Cgj9ydRR.js → dist-X-byYzEZ.js} +1 -1
- package/dist/assets/dist-Xnna0a3m.js +1 -0
- package/dist/assets/{dist-CgQ63H-M.js → dist-y02bFELW.js} +1 -1
- package/dist/assets/{dockerfile-bIFruQXZ.js → dockerfile-Cgz0GlPW.js} +1 -1
- package/dist/assets/{documentation-panel-B9z_DT6E.js → documentation-panel-DHLN-LCs.js} +1 -1
- package/dist/assets/{download-BX5RBVL8.js → download-CNJtCoWG.js} +4 -4
- package/dist/assets/dtd-CmqpGLbC.js +1 -0
- package/dist/assets/dylan-Cihtx9iT.js +1 -0
- package/dist/assets/ecl-CZoQOU3U.js +1 -0
- package/dist/assets/{edit-page-D2jHQ99Z.js → edit-page-DSclvhsD.js} +7 -7
- package/dist/assets/eiffel-Br4OQEbu.js +1 -0
- package/dist/assets/elm-BPOnYPcO.js +1 -0
- package/dist/assets/{erDiagram-Q2GNP2WA-DfiRRg2v.js → erDiagram-Q2GNP2WA-BZbca8vs.js} +1 -1
- package/dist/assets/erlang-DuwMV84m.js +1 -0
- package/dist/assets/{error-panel-B-L35J0Q.js → error-panel-BprMlRWd.js} +1 -1
- package/dist/assets/{esm-Uis3U2sE.js → esm-BjKAkBIt.js} +1 -1
- package/dist/assets/factor-6YAhArFy.js +1 -0
- package/dist/assets/{factor-COZKt8xO.js → factor-ByjtQqb6.js} +1 -1
- package/dist/assets/{file-explorer-panel-Dxy2wacg.js → file-explorer-panel-m1TdIRXI.js} +2 -2
- package/dist/assets/{file-icons-zT5xSrpN.js → file-icons-I3TgHXBH.js} +1 -1
- package/dist/assets/{floating-outline-DlCEpJuo.js → floating-outline-BUsBWnrz.js} +1 -1
- package/dist/assets/{flowDiagram-NV44I4VS-Dnt7RRaD.js → flowDiagram-NV44I4VS-ffFKaqut.js} +1 -1
- package/dist/assets/{focus-CpM6NAz2.js → focus-DWfOBGUg.js} +1 -1
- package/dist/assets/{form-DqfJycRl.js → form-DNvI4VkE.js} +1 -1
- package/dist/assets/forth-2Nj_EUdH.js +1 -0
- package/dist/assets/fortran-CCKPCngf.js +1 -0
- package/dist/assets/{gallery-page-plavkcxH.js → gallery-page-C-cbnxxr.js} +1 -1
- package/dist/assets/{ganttDiagram-JELNMOA3-DzaeerR-.js → ganttDiagram-JELNMOA3-fI3e8q9G.js} +1 -1
- package/dist/assets/gas-DQfJyQA6.js +1 -0
- package/dist/assets/gherkin-CtG4Rl1f.js +1 -0
- package/dist/assets/{gitGraph-G5XIXVHT-DX1Iaeeg.js → gitGraph-G5XIXVHT-Dr_vttV5.js} +1 -1
- package/dist/assets/{gitGraphDiagram-V2S2FVAM-BwL84Mis.js → gitGraphDiagram-V2S2FVAM-B9zkU5OL.js} +1 -1
- package/dist/assets/{glide-data-editor-BoppQYWx.js → glide-data-editor-BUABnEhp.js} +4 -4
- package/dist/assets/{globals-zG_ueqN3.js → globals-B7uZUVXG.js} +1 -1
- package/dist/assets/groovy-DmN1hhD-.js +1 -0
- package/dist/assets/haskell-Bv99dcka.js +1 -0
- package/dist/assets/haxe-C4SwAtv2.js +1 -0
- package/dist/assets/{home-page-CPKakvcY.js → home-page-B1ioyqaQ.js} +2 -2
- package/dist/assets/{hooks-DVW0qFsD.js → hooks-BamtnkZu.js} +1 -1
- package/dist/assets/{html-to-image-D_3oFpSp.js → html-to-image-BtnUxAf2.js} +1 -1
- package/dist/assets/idl-Cip3qUaw.js +1 -0
- package/dist/assets/{index-BUi88mQ-.js → index-ZQyELpNQ.js} +7 -7
- package/dist/assets/{info-VBDWY6EO-DI87Cx_N.js → info-VBDWY6EO-_MKnIvva.js} +1 -1
- package/dist/assets/infoDiagram-HS3SLOUP-DcmWVuHy.js +2 -0
- package/dist/assets/javascript-D01OZFLf.js +1 -0
- package/dist/assets/{journeyDiagram-XKPGCS4Q-KRjBx01o.js → journeyDiagram-XKPGCS4Q-Bi3SDkGt.js} +1 -1
- package/dist/assets/julia-CdUg5Gin.js +1 -0
- package/dist/assets/{kanban-definition-3W4ZIXB7-C9LSOY6_.js → kanban-definition-3W4ZIXB7-DHPI88SO.js} +1 -1
- package/dist/assets/katex-CKMiPDPy.js +1 -0
- package/dist/assets/{kiosk-mode-PvGxCz81.js → kiosk-mode-DvjY7Q8k.js} +1 -1
- package/dist/assets/{layout-b4TrkjtJ.js → layout-BprbwmmO.js} +4 -4
- package/dist/assets/{line-vDGbKzUj.js → line-BX1v8gkY.js} +1 -1
- package/dist/assets/{linear-JR9qrU26.js → linear-_5G-OhLA.js} +1 -1
- package/dist/assets/livescript-CmA_pEQi.js +1 -0
- package/dist/assets/{logs-panel-CIdtLrmS.js → logs-panel-Iivn5vVF.js} +1 -1
- package/dist/assets/{loro_wasm_bg-BYni_6Sh.js → loro_wasm_bg-C9dMIWjp.js} +1 -1
- package/dist/assets/lua-BBGGibto.js +1 -0
- package/dist/assets/markdown-renderer-f7AvSa1a.js +5 -0
- package/dist/assets/mathematica-EVwiHsb7.js +1 -0
- package/dist/assets/mbox-f9FpJMps.js +1 -0
- package/dist/assets/mermaid-4DMBBIKO-CsD09XZ_.js +1 -0
- package/dist/assets/{mermaid-g45SBZs4.js → mermaid-BdekQaCQ.js} +3 -3
- package/dist/assets/{mermaid-parser.core-D2CUV57N.js → mermaid-parser.core-hTN4xwYK.js} +2 -2
- package/dist/assets/{mhchem-eTdlE0-_.js → mhchem-CgESkxWV.js} +1 -1
- package/dist/assets/micromark-factory-space-4isUgE6w.js +1 -0
- package/dist/assets/{mindmap-definition-VGOIOE7T-DbAsaD82.js → mindmap-definition-VGOIOE7T-DEN1Ym_B.js} +1 -1
- package/dist/assets/mirc-CKQuidRI.js +1 -0
- package/dist/assets/mllike-DSE7K0L_.js +1 -0
- package/dist/assets/modelica-BLWpmE6J.js +1 -0
- package/dist/assets/mscgen-DUGTvav7.js +1 -0
- package/dist/assets/mumps-De-aL68G.js +1 -0
- package/dist/assets/{name-cell-input-CFXvT7wQ.js → name-cell-input-CzVNuMqK.js} +1 -1
- package/dist/assets/{nsis-CQJx4ihu.js → nsis-BKA2hITd.js} +1 -1
- package/dist/assets/nsis-GZVZ8s9U.js +1 -0
- package/dist/assets/ntriples-8e_qYaH4.js +1 -0
- package/dist/assets/{number-overlay-editor-BIXBlRQQ.js → number-overlay-editor-CDWHq1mJ.js} +1 -1
- package/dist/assets/octave-BV_-gmS1.js +1 -0
- package/dist/assets/{ordinal-vRIIH2-b.js → ordinal-BL0TAfDQ.js} +1 -1
- package/dist/assets/{outline-panel-Dbp5O4xk.js → outline-panel-QyE6tr_2.js} +1 -1
- package/dist/assets/oz-B0uIrvBT.js +1 -0
- package/dist/assets/{packages-panel-C6Cj2Dox.js → packages-panel-D9pbtgFY.js} +1 -1
- package/dist/assets/{packet-DYOGHKS2-tVzgtQkA.js → packet-DYOGHKS2-Cr8AvEnH.js} +1 -1
- package/dist/assets/panels-CIHy1Jh4.js +1 -0
- package/dist/assets/pascal-P8oljycx.js +1 -0
- package/dist/assets/perl-C9B7mnkS.js +1 -0
- package/dist/assets/{pie-VRWISCQL-QmTjjdah.js → pie-VRWISCQL-18iiky4b.js} +1 -1
- package/dist/assets/{pieDiagram-ADFJNKIX-DPlhC-O4.js → pieDiagram-ADFJNKIX-BY90tkn0.js} +1 -1
- package/dist/assets/pig-CrydCWlQ.js +1 -0
- package/dist/assets/powershell-BNzz8aRp.js +1 -0
- package/dist/assets/{process-output-CgWMJc-C.js → process-output-5fC8hAfT.js} +1 -1
- package/dist/assets/properties-C81OZegg.js +1 -0
- package/dist/assets/protobuf-DXcVcUng.js +1 -0
- package/dist/assets/{pug-Yt6Urxo2.js → pug-Bc3B5zy9.js} +1 -1
- package/dist/assets/pug-D2oI7kNu.js +1 -0
- package/dist/assets/puppet-DNlzsFMc.js +1 -0
- package/dist/assets/python-CdBemvol.js +1 -0
- package/dist/assets/q-CB51ViwQ.js +1 -0
- package/dist/assets/{quadrantDiagram-AYHSOK5B-jnE3mG3Y.js → quadrantDiagram-AYHSOK5B-DscgxREu.js} +1 -1
- package/dist/assets/r-lEjVwdCN.js +1 -0
- package/dist/assets/{radar-ZZBFDIW7-2_FgLRzo.js → radar-ZZBFDIW7-DP-828em.js} +1 -1
- package/dist/assets/{react-vega-_sDwqIeC.js → react-vega-CFucxlM_.js} +1 -1
- package/dist/assets/{react-vega-Bg7wgNWC.js → react-vega-C_nbap4W.js} +1 -1
- package/dist/assets/{readonly-python-code-CjHN1YzV.js → readonly-python-code-CvuT43MO.js} +1 -1
- package/dist/assets/{requirementDiagram-UZGBJVZJ-BwnFZdZm.js → requirementDiagram-UZGBJVZJ-DuOL6ww3.js} +1 -1
- package/dist/assets/rpm-DDM5IEHy.js +1 -0
- package/dist/assets/ruby-93dn3nLg.js +1 -0
- package/dist/assets/run-page-DMxwtlBe.js +1 -0
- package/dist/assets/{sankeyDiagram-TZEHDZUN-G8bGgtok.js → sankeyDiagram-TZEHDZUN-CrhC3Xh7.js} +1 -1
- package/dist/assets/sas-CbG03D2N.js +1 -0
- package/dist/assets/scheme-B2cyUK_0.js +1 -0
- package/dist/assets/scratchpad-panel-Bkco4w7y.js +1 -0
- package/dist/assets/{secrets-panel-v_peqjs9.js → secrets-panel-ByDa4skC.js} +1 -1
- package/dist/assets/{sequenceDiagram-WL72ISMW-CVokZRk6.js → sequenceDiagram-WL72ISMW-DNBtGacp.js} +1 -1
- package/dist/assets/session-panel-Bg7Zvg3Y.js +1 -0
- package/dist/assets/shell-BUKevxDL.js +1 -0
- package/dist/assets/sieve-DBd5VCju.js +1 -0
- package/dist/assets/smalltalk-DEMxPY2H.js +1 -0
- package/dist/assets/{snippets-panel-wGOEVyqu.js → snippets-panel-Cn-0B9yk.js} +1 -1
- package/dist/assets/sparql-CuX1PPeN.js +1 -0
- package/dist/assets/{src-aBHYsoaw.js → src-BNdxo5s1.js} +1 -1
- package/dist/assets/{state-CI4FLWoL.js → state-DLmIk5GZ.js} +1 -1
- package/dist/assets/{stateDiagram-FKZM4ZOC-M7FBTKFZ.js → stateDiagram-FKZM4ZOC-Krq7gbW2.js} +1 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-Cw5LDI5M.js +1 -0
- package/dist/assets/{step-B_iSQA2q.js → step-OYH2hb7p.js} +1 -1
- package/dist/assets/stylus-aDxbv1u4.js +1 -0
- package/dist/assets/swift-OTokpssg.js +1 -0
- package/dist/assets/{switch-SqaUg_Rv.js → switch-CdyDieX7.js} +1 -1
- package/dist/assets/tcl-DJhWqArt.js +1 -0
- package/dist/assets/{terminal-C9H1AYRi.js → terminal-Cdh7bzOl.js} +1 -1
- package/dist/assets/{textarea-7F6-nuwz.js → textarea-y9GCP54I.js} +1 -1
- package/dist/assets/textile-DpS9C_zY.js +1 -0
- package/dist/assets/{time-Dl8wmbMf.js → time-LzCXNX8h.js} +1 -1
- package/dist/assets/{timeline-definition-IT6M3QCI-CfGh-Wfj.js → timeline-definition-IT6M3QCI-DOl0hCPz.js} +1 -1
- package/dist/assets/toml-kj-ibVms.js +1 -0
- package/dist/assets/{tracing-DxuknZTG.js → tracing-CggYKKpk.js} +1 -1
- package/dist/assets/{tracing-panel-yQoYble5.js → tracing-panel-BYfwYVLg.js} +2 -2
- package/dist/assets/{treemap-GDKQZRPO-Cnt0pazm.js → treemap-GDKQZRPO-CWmDSzQU.js} +1 -1
- package/dist/assets/troff-DLJL07gk.js +1 -0
- package/dist/assets/ttcn-cfg-DuCZQ2Km.js +1 -0
- package/dist/assets/ttcn-twc1Q5xq.js +1 -0
- package/dist/assets/turtle-BiLqIa2_.js +1 -0
- package/dist/assets/{useAddCell-Dluq9z9F.js → useAddCell-BGHDEB1g.js} +1 -1
- package/dist/assets/useCellActionButton-BbGQe83V.js +1 -0
- package/dist/assets/{useDeleteCell-B-MR7EAI.js → useDeleteCell-DG1VBfwX.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-D39ukyvA.js → useDependencyPanelTab-luj9RYTO.js} +1 -1
- package/dist/assets/{useNotebookActions-BqjNClzw.js → useNotebookActions-D_r5jyXa.js} +1 -1
- package/dist/assets/useRunCells--USKPEQy.js +1 -0
- package/dist/assets/{useSplitCell-BwJPHVng.js → useSplitCell-DGXfa81A.js} +1 -1
- package/dist/assets/vb-BYvNbVBU.js +1 -0
- package/dist/assets/vbscript-CE30tjpc.js +1 -0
- package/dist/assets/{vega-component-BlvDymW4.js → vega-component-C3vNdTdH.js} +1 -1
- package/dist/assets/velocity-k2jshUC1.js +1 -0
- package/dist/assets/verilog-D-u-JakI.js +1 -0
- package/dist/assets/vhdl-CdNH8uWZ.js +1 -0
- package/dist/assets/webidl-CdMZNGiF.js +1 -0
- package/dist/assets/{write-secret-modal-xvi72o3J.js → write-secret-modal-BlZo70J1.js} +1 -1
- package/dist/assets/xquery-XKE48gN2.js +1 -0
- package/dist/assets/{xychartDiagram-PRI3JC2R-BjJjKS-4.js → xychartDiagram-PRI3JC2R-sn3q6uOF.js} +1 -1
- package/dist/assets/yacas-DbyKcdb9.js +1 -0
- package/dist/assets/z80-F2-i3nLg.js +1 -0
- package/dist/index.html +39 -39
- package/package.json +1 -1
- package/src/__mocks__/requests.ts +1 -0
- package/src/components/datasources/datasources.tsx +45 -0
- package/src/components/markdown/markdown-renderer.tsx +18 -2
- package/src/core/datasets/__tests__/data-source.test.ts +88 -1
- package/src/core/datasets/data-source-connections.ts +44 -0
- package/src/core/datasets/request-registry.ts +13 -0
- package/src/core/islands/bridge.ts +1 -0
- package/src/core/islands/main.ts +1 -0
- package/src/core/kernel/messages.ts +2 -0
- 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 +2 -0
- package/src/core/wasm/bridge.ts +10 -0
- package/src/core/websocket/useMarimoKernelConnection.tsx +4 -0
- package/dist/assets/LazyAnyLanguageCodeMirror-BLyxzRTe.js +0 -2
- package/dist/assets/apl-DmIuLoM5.js +0 -1
- package/dist/assets/asciiarmor-Dw7r6FD5.js +0 -1
- package/dist/assets/asn1-49M6dOZ5.js +0 -1
- package/dist/assets/brainfuck-Dzb-bFPz.js +0 -1
- package/dist/assets/channel-8md9AqRV.js +0 -1
- package/dist/assets/chat-panel-DTfbqRHb.js +0 -3
- package/dist/assets/chunk-55IACEB6-DxdbD43d.js +0 -1
- package/dist/assets/chunk-5FQGJX7Z-Fb8WLBdo.js +0 -113
- package/dist/assets/classDiagram-2ON5EDUG-Ds4AwoP7.js +0 -1
- package/dist/assets/classDiagram-v2-WZHVMYZB-BmeOa_lI.js +0 -1
- package/dist/assets/clojure-D3f46AOj.js +0 -1
- package/dist/assets/cmake-CRns6FWA.js +0 -1
- package/dist/assets/cobol-tD7VjYkY.js +0 -1
- package/dist/assets/coffeescript-BMoHntr0.js +0 -1
- package/dist/assets/command-palette-Dx3dFDHn.js +0 -1
- package/dist/assets/commonlisp-tEbZ2txa.js +0 -1
- package/dist/assets/components-DlVdNzZL.js +0 -1
- package/dist/assets/context-aware-panel-BAsDUfG1.js +0 -3
- package/dist/assets/crystal-tXxqRSmg.js +0 -1
- package/dist/assets/cypher-Clgr1THu.js +0 -1
- package/dist/assets/d-DGpF2gtm.js +0 -1
- package/dist/assets/diff-DQ8hzfLT.js +0 -1
- package/dist/assets/dist-BqsOX_yK.js +0 -1
- package/dist/assets/dist-CBYsx1lD.js +0 -1
- package/dist/assets/dist-CkG7HeJJ.js +0 -1
- package/dist/assets/dist-DkNQl8fU.js +0 -1
- package/dist/assets/dtd-9XKjDaRs.js +0 -1
- package/dist/assets/dylan-DQ7WSVaJ.js +0 -1
- package/dist/assets/ecl-_b3Ij92M.js +0 -1
- package/dist/assets/eiffel-v705-6sV.js +0 -1
- package/dist/assets/elm-kOjuB_fu.js +0 -1
- package/dist/assets/erlang-BKLrKn97.js +0 -1
- package/dist/assets/factor-CKv1cDHM.js +0 -1
- package/dist/assets/forth-BeW6w9NP.js +0 -1
- package/dist/assets/fortran-B8S6_jJw.js +0 -1
- package/dist/assets/gas-T2YF_8DP.js +0 -1
- package/dist/assets/gherkin-CCQo3jOa.js +0 -1
- package/dist/assets/groovy-D_aCkoaG.js +0 -1
- package/dist/assets/haskell-CVb05Hdq.js +0 -1
- package/dist/assets/haxe-BETJ4Q1p.js +0 -1
- package/dist/assets/idl-C9DSrKQo.js +0 -1
- package/dist/assets/infoDiagram-HS3SLOUP-D-RQJqJ1.js +0 -2
- package/dist/assets/javascript-kMjsCkN0.js +0 -1
- package/dist/assets/julia-BP2iEwTU.js +0 -1
- package/dist/assets/katex-BPQZrIDk.js +0 -1
- package/dist/assets/livescript-DldCoAUO.js +0 -1
- package/dist/assets/lua-CZVER5WL.js +0 -1
- package/dist/assets/markdown-renderer-CGLrhCH1.js +0 -10
- package/dist/assets/mathematica-CyS1-stp.js +0 -1
- package/dist/assets/mbox-m36f2d6F.js +0 -1
- package/dist/assets/mermaid-4DMBBIKO-BDW1wyAE.js +0 -1
- package/dist/assets/mirc-1VmF-8bO.js +0 -1
- package/dist/assets/mllike-C03wQNgL.js +0 -1
- package/dist/assets/modelica-DIzukV30.js +0 -1
- package/dist/assets/mscgen-DWz8dZ6d.js +0 -1
- package/dist/assets/mumps-CYbIrX8J.js +0 -1
- package/dist/assets/nsis-CTQ0yRGk.js +0 -1
- package/dist/assets/ntriples-DSrrK8pU.js +0 -1
- package/dist/assets/octave-DMlW_nfV.js +0 -1
- package/dist/assets/oz-D3yFc57L.js +0 -1
- package/dist/assets/panels-DxPykKF0.js +0 -1
- package/dist/assets/pascal-CQlQ3IN5.js +0 -1
- package/dist/assets/perl-DTZU_RzN.js +0 -1
- package/dist/assets/pig-Bhpnxpuq.js +0 -1
- package/dist/assets/powershell-NPR7ALKW.js +0 -1
- package/dist/assets/properties-vlTR87QN.js +0 -1
- package/dist/assets/protobuf-ByJ2pOLE.js +0 -1
- package/dist/assets/pug-CvW2XR0Z.js +0 -1
- package/dist/assets/puppet-Cq5I7FGe.js +0 -1
- package/dist/assets/python-BIseM0wl.js +0 -1
- package/dist/assets/q-Cxw6-L9w.js +0 -1
- package/dist/assets/r-BCPAUffd.js +0 -1
- package/dist/assets/rpm-axYHg47r.js +0 -1
- package/dist/assets/ruby-C3FVRZdA.js +0 -1
- package/dist/assets/run-page-Ce8MQ2gg.js +0 -1
- package/dist/assets/sas-CN65u8vG.js +0 -1
- package/dist/assets/scheme-CbiUNoDs.js +0 -1
- package/dist/assets/scratchpad-panel-OulpXAJO.js +0 -1
- package/dist/assets/session-panel-BBXXuMQG.js +0 -1
- package/dist/assets/shell-YEnz9M61.js +0 -1
- package/dist/assets/sieve-C-HxQpVW.js +0 -1
- package/dist/assets/smalltalk-CzvuDqf0.js +0 -1
- package/dist/assets/sparql-Djedbp-5.js +0 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-BKLDpEGo.js +0 -1
- package/dist/assets/stylus-BpnZbov-.js +0 -1
- package/dist/assets/swift-DAHNa7bf.js +0 -1
- package/dist/assets/tcl-DTQfPx3q.js +0 -1
- package/dist/assets/textile-DXtfasKT.js +0 -1
- package/dist/assets/toml-BjmTwkhj.js +0 -1
- package/dist/assets/troff-Bc3qMmWc.js +0 -1
- package/dist/assets/ttcn-Bh7caDZp.js +0 -1
- package/dist/assets/ttcn-cfg-D18s1FKk.js +0 -1
- package/dist/assets/turtle-B1l6GoUm.js +0 -1
- package/dist/assets/useCellActionButton-DBXavVBJ.js +0 -1
- package/dist/assets/useRunCells-CwObo_j4.js +0 -1
- package/dist/assets/vb-OtZQD18A.js +0 -1
- package/dist/assets/vbscript-CMGATyY1.js +0 -1
- package/dist/assets/velocity-OiAuGLJe.js +0 -1
- package/dist/assets/verilog-S0G4VOpd.js +0 -1
- package/dist/assets/vhdl-CXVV79Yf.js +0 -1
- package/dist/assets/webidl-y1Tmj9tM.js +0 -1
- package/dist/assets/xquery-CwVKvibA.js +0 -1
- package/dist/assets/yacas-DR-AnMl3.js +0 -1
- package/dist/assets/z80-Lzkm5uuH.js +0 -1
- /package/dist/assets/{ImageComparisonComponent-B5E3m5MZ.js → ImageComparisonComponent-DxLwmmB2.js} +0 -0
- /package/dist/assets/{Inputs-eZfYMYYP.js → Inputs-W60db12_.js} +0 -0
- /package/dist/assets/{Plot-Dmxt4wRt.js → Plot-I39ar7fU.js} +0 -0
- /package/dist/assets/{apl-BHRaMaxV.js → apl-lvMF4O0c.js} +0 -0
- /package/dist/assets/{array-DU5T25JX.js → array-CRE2-wlR.js} +0 -0
- /package/dist/assets/{asciiarmor-Drw3Y_jV.js → asciiarmor-NoSIZ2RH.js} +0 -0
- /package/dist/assets/{asn1-B3Ivdxp7.js → asn1-Bn2zPmGi.js} +0 -0
- /package/dist/assets/{asterisk-GbGHf9GU.js → asterisk-1BK_fEUT.js} +0 -0
- /package/dist/assets/{azure-DElN0h0I.js → azure-BMhMRXAG.js} +0 -0
- /package/dist/assets/{brainfuck-Bmwix9UB.js → brainfuck-CyXrVlbF.js} +0 -0
- /package/dist/assets/{bundle.esm-idScn0w0.js → bundle.esm-_LzfhNmX.js} +0 -0
- /package/dist/assets/{card-kQvf6H4E.js → card-CBqenxaU.js} +0 -0
- /package/dist/assets/{chunk-4F5CHEZ2-B4VRPZ37.js → chunk-4F5CHEZ2-CvMYQKai.js} +0 -0
- /package/dist/assets/{chunk-B2363JML-CjIajB1P.js → chunk-B2363JML-oWpkFXOG.js} +0 -0
- /package/dist/assets/{chunk-DR5Q36YT-Bjmp_CNY.js → chunk-DR5Q36YT-DSjZQa_3.js} +0 -0
- /package/dist/assets/{chunk-FRFDVMJY-BfDKbo_T.js → chunk-FRFDVMJY-DxIaf4yl.js} +0 -0
- /package/dist/assets/{chunk-PL6DKKU2-pYEFWkPZ.js → chunk-PL6DKKU2-DwnNxWA0.js} +0 -0
- /package/dist/assets/{chunk-SJTYNZTY-VcrI9yao.js → chunk-SJTYNZTY-DBAl0fNt.js} +0 -0
- /package/dist/assets/{chunk-TQ3KTPDO-tIPcwIpX.js → chunk-TQ3KTPDO-B7j-UFPQ.js} +0 -0
- /package/dist/assets/{chunk-UMXZTB3W-Cpwtyir-.js → chunk-UMXZTB3W-BGNdYqf-.js} +0 -0
- /package/dist/assets/{clear-button-Cw33rRmg.js → clear-button-CuSHRx11.js} +0 -0
- /package/dist/assets/{click-outside-container-CsPwIqYr.js → click-outside-container-CiRBqxMF.js} +0 -0
- /package/dist/assets/{clike-E6D0qPLZ.js → clike-DKMmTh42.js} +0 -0
- /package/dist/assets/{clojure-D2u7A17s.js → clojure-PSUkitBX.js} +0 -0
- /package/dist/assets/{cmake-BAcX9pfJ.js → cmake-DzLpRry9.js} +0 -0
- /package/dist/assets/{cobol-Blv8cOIQ.js → cobol-DAqlVpNy.js} +0 -0
- /package/dist/assets/{coffeescript-Bd0runsx.js → coffeescript-CVRVei5N.js} +0 -0
- /package/dist/assets/{colors-Dtrl_rUb.js → colors-k4pzE1JC.js} +0 -0
- /package/dist/assets/{common-keywords-DpBQRN1C.js → common-keywords-CL5lDC0w.js} +0 -0
- /package/dist/assets/{commonlisp-B_IfCLCi.js → commonlisp-DGLna-nK.js} +0 -0
- /package/dist/assets/{crystal-BPH2tGA2.js → crystal-D1je9SnX.js} +0 -0
- /package/dist/assets/{css-DWR7mhwJ.js → css-CpgzfyW4.js} +0 -0
- /package/dist/assets/{cypher-S-rGklkM.js → cypher-SIaJhgm6.js} +0 -0
- /package/dist/assets/{cytoscape.esm-CVhOSlMZ.js → cytoscape.esm-0erX9Txj.js} +0 -0
- /package/dist/assets/{d-C128j5m6.js → d-BQbC3v5b.js} +0 -0
- /package/dist/assets/{diff-CThVlVra.js → diff-Du4D-Lj4.js} +0 -0
- /package/dist/assets/{dist-21ZHvMu-.js → dist-BKkfH6MG.js} +0 -0
- /package/dist/assets/{dist-uEEVcSIS.js → dist-BZJrw9vI.js} +0 -0
- /package/dist/assets/{dist-DniPQ7Qm.js → dist-BrZ_53nc.js} +0 -0
- /package/dist/assets/{dist-Cy2hdQdy.js → dist-C8Dcw0WD.js} +0 -0
- /package/dist/assets/{dist-BxyvBCI5.js → dist-C9G2F7Z1.js} +0 -0
- /package/dist/assets/{dist-DUGSlPOG.js → dist-CRmIdrta.js} +0 -0
- /package/dist/assets/{dist-Rq9HjYxD.js → dist-CTTKEfeu.js} +0 -0
- /package/dist/assets/{dist-CIhoH-X1.js → dist-CwHZ5Z_A.js} +0 -0
- /package/dist/assets/{dist-C9z0M-mT.js → dist-CwjzLMbM.js} +0 -0
- /package/dist/assets/{dist--yGrqaJH.js → dist-D699xT6P.js} +0 -0
- /package/dist/assets/{dist-D8g9Gob3.js → dist-DBBqNJ3C.js} +0 -0
- /package/dist/assets/{dist-BZXUFc1L.js → dist-DKnn_Tta.js} +0 -0
- /package/dist/assets/{dist-DVEj2fgt.js → dist-DbWhwe76.js} +0 -0
- /package/dist/assets/{dist-BHxWDjO3.js → dist-DmMcU97h.js} +0 -0
- /package/dist/assets/{dist-BbueVrZr.js → dist-DvbdggRI.js} +0 -0
- /package/dist/assets/{dist-lnKPBMeZ.js → dist-SDxzhwJU.js} +0 -0
- /package/dist/assets/{dist-BmUQz5fw.js → dist-Sjq7q5Ez.js} +0 -0
- /package/dist/assets/{dist-CmNOQaWE.js → dist-epQooxQL.js} +0 -0
- /package/dist/assets/{dtd-BloyElsS.js → dtd-C8APvYNQ.js} +0 -0
- /package/dist/assets/{duckdb-keywords-DrrKcwLz.js → duckdb-keywords-CKBoTxEb.js} +0 -0
- /package/dist/assets/{dylan-BpjltVYk.js → dylan-CTr_RHNL.js} +0 -0
- /package/dist/assets/{ebnf-DuKzoTsP.js → ebnf-CviyCkP7.js} +0 -0
- /package/dist/assets/{ecl-DIGfXI2n.js → ecl-BVnD0OAx.js} +0 -0
- /package/dist/assets/{eiffel-Nuvt3i0o.js → eiffel-9mt0KSLh.js} +0 -0
- /package/dist/assets/{elm-khTI8oMm.js → elm-CItjDkKL.js} +0 -0
- /package/dist/assets/{empty-state-GQ-H0WrT.js → empty-state-DUEogWxf.js} +0 -0
- /package/dist/assets/{erlang-Bz0rifYN.js → erlang-D8gZbSC3.js} +0 -0
- /package/dist/assets/{esm-DXwI6ZUw.js → esm-BMWduMhT.js} +0 -0
- /package/dist/assets/{esm-DZILy413.js → esm-BQO8KtRU.js} +0 -0
- /package/dist/assets/{fcl-DopXl_Cb.js → fcl-DjfeL5F6.js} +0 -0
- /package/dist/assets/{field-BpgzO1qL.js → field-BEG4O-GE.js} +0 -0
- /package/dist/assets/{formatting-D99dzYue.js → formatting-8sgDjIAp.js} +0 -0
- /package/dist/assets/{forth-SxB4ZE9Q.js → forth-DgH1dN75.js} +0 -0
- /package/dist/assets/{fortran-DzfX8wbd.js → fortran-DueLTtxK.js} +0 -0
- /package/dist/assets/{gas-DBFUG9nK.js → gas-BtO1qNqf.js} +0 -0
- /package/dist/assets/{gherkin-6FC2E3f3.js → gherkin-Byo7wP7t.js} +0 -0
- /package/dist/assets/{groovy-p_lTFq3O.js → groovy-wqVc62K1.js} +0 -0
- /package/dist/assets/{haskell-BEXqDWIp.js → haskell-t8q2n4aR.js} +0 -0
- /package/dist/assets/{haxe-CzFMbUhy.js → haxe-I2Ep_IKg.js} +0 -0
- /package/dist/assets/{http-BxcKXOao.js → http-VleqgIZJ.js} +0 -0
- /package/dist/assets/{icons-CIUvkMzI.js → icons-CAcY8GzB.js} +0 -0
- /package/dist/assets/{idl-CuZt9Cr8.js → idl-zLnMWGy-.js} +0 -0
- /package/dist/assets/{init-_0O8gaZg.js → init-C5GnArQr.js} +0 -0
- /package/dist/assets/{javascript-CULX8PvY.js → javascript-Z0GGm0j8.js} +0 -0
- /package/dist/assets/{julia-DowlkI_L.js → julia-iSGDYIgg.js} +0 -0
- /package/dist/assets/{katex-BrOUG02-.js → katex-BUjpoqH9.js} +0 -0
- /package/dist/assets/{label-CNKB6XuV.js → label-KlZhD0Wz.js} +0 -0
- /package/dist/assets/{links-BpU-Tgoi.js → links-BwkQr4sn.js} +0 -0
- /package/dist/assets/{livescript-DwfI62L3.js → livescript-BFHCYYQr.js} +0 -0
- /package/dist/assets/{loro_wasm_bg-G5oJHASf.js → loro_wasm_bg-DbCRx7th.js} +0 -0
- /package/dist/assets/{lua-TCNDuI3W.js → lua-CReDSu5T.js} +0 -0
- /package/dist/assets/{marimo-icons-xeZXdanj.js → marimo-icons-DyCeIvCg.js} +0 -0
- /package/dist/assets/{math-BSPSgcD8.js → math-D5yoTCoa.js} +0 -0
- /package/dist/assets/{mathematica-hf3OzlV6.js → mathematica-Zm2C8amS.js} +0 -0
- /package/dist/assets/{mbox-CpM9PyZY.js → mbox-WgafSHjo.js} +0 -0
- /package/dist/assets/{mirc-CocHA0SZ.js → mirc-BYSZ-Sqw.js} +0 -0
- /package/dist/assets/{mllike-CPBcvlCk.js → mllike-oFV79iRi.js} +0 -0
- /package/dist/assets/{modelica--OnAmDkI.js → modelica-Kw0oZiZv.js} +0 -0
- /package/dist/assets/{mscgen-CtSx20C4.js → mscgen-zIXnH6Xb.js} +0 -0
- /package/dist/assets/{multi-icon-DQ0zErpq.js → multi-icon-CDO-SrVQ.js} +0 -0
- /package/dist/assets/{mumps-BavaVlaQ.js → mumps-CpHKxUaP.js} +0 -0
- /package/dist/assets/{nginx-BFZZWp0k.js → nginx-D7OKXoUe.js} +0 -0
- /package/dist/assets/{node-sql-parser-Bb3JynSW.js → node-sql-parser-GMJwIlZ5.js} +0 -0
- /package/dist/assets/{ntriples-B5NSxx1D.js → ntriples-CKdsn4A2.js} +0 -0
- /package/dist/assets/{octave-jVWS5ZX5.js → octave-C2KzGqDI.js} +0 -0
- /package/dist/assets/{oz-Ci6i2p3E.js → oz-DjI17vbg.js} +0 -0
- /package/dist/assets/{panel-context--v5sYr8m.js → panel-context-DsLB_70p.js} +0 -0
- /package/dist/assets/{pascal-BI-nobSy.js → pascal-DkEHIeYy.js} +0 -0
- /package/dist/assets/{path-Bve_rTap.js → path-CK3C5L0Q.js} +0 -0
- /package/dist/assets/{perl-DQPnX7YE.js → perl-awUeMoRf.js} +0 -0
- /package/dist/assets/{pig-Bh76ij4R.js → pig-4piEzRGm.js} +0 -0
- /package/dist/assets/{powershell-uUfnWMx0.js → powershell-BcdXyDpe.js} +0 -0
- /package/dist/assets/{properties-Br22JNZV.js → properties-BCPnyAME.js} +0 -0
- /package/dist/assets/{protobuf-DaigdXrD.js → protobuf-UUgrcPiO.js} +0 -0
- /package/dist/assets/{puppet-BGGCC9ZJ.js → puppet-CK_Jbc3D.js} +0 -0
- /package/dist/assets/{python-DuwDWlpq.js → python-87A6eX9C.js} +0 -0
- /package/dist/assets/{q-BbDtxSzU.js → q-JHqp7Nwz.js} +0 -0
- /package/dist/assets/{r-CB416o25.js → r-c8ebDReJ.js} +0 -0
- /package/dist/assets/{react-resizable-panels.browser.esm-CHZt2sgR.js → react-resizable-panels.browser.esm-Dmf4Xg1J.js} +0 -0
- /package/dist/assets/{renderShortcut-DKHsNYY8.js → renderShortcut-BcNNtnIV.js} +0 -0
- /package/dist/assets/{request-registry-kkWOuc4m.js → request-registry-5S3nI4D-.js} +0 -0
- /package/dist/assets/{requests-ELfSRZg2.js → requests-A6SCIaF6.js} +0 -0
- /package/dist/assets/{rpm-DgDcBXHy.js → rpm-CHLEEyak.js} +0 -0
- /package/dist/assets/{ruby-ASZz88uL.js → ruby-Y-uPbf0g.js} +0 -0
- /package/dist/assets/{runs-ClVtrGLV.js → runs-B_mJSod5.js} +0 -0
- /package/dist/assets/{sas-r-6e1yzr.js → sas-Mox1fRNZ.js} +0 -0
- /package/dist/assets/{scheme-Zi7xVoso.js → scheme-BnTHsLZG.js} +0 -0
- /package/dist/assets/{shell-pXDc9W8j.js → shell-C8EAw2yh.js} +0 -0
- /package/dist/assets/{sieve-DMn8OnOt.js → sieve-Dd1bnzub.js} +0 -0
- /package/dist/assets/{simple-mode-Bcot9qoq.js → simple-mode-BGiIHaLF.js} +0 -0
- /package/dist/assets/{slides-component-BhJkZVhE.js → slides-component-Da4ws_2P.js} +0 -0
- /package/dist/assets/{smalltalk-kxU8S6r5.js → smalltalk-BUSkf3e4.js} +0 -0
- /package/dist/assets/{solr-BCnpA4mK.js → solr-CDPrSrj5.js} +0 -0
- /package/dist/assets/{sparql-CA3NQZJW.js → sparql-DeaDxQi8.js} +0 -0
- /package/dist/assets/{spreadsheet-C39QEIvH.js → spreadsheet-BsJYzkOI.js} +0 -0
- /package/dist/assets/{sql-CE9Btgz4.js → sql-F2Gt8FSJ.js} +0 -0
- /package/dist/assets/{src-cSe6DUft.js → src-BgRVyE5A.js} +0 -0
- /package/dist/assets/{state-JpzFxtY6.js → state-DnmL6F-D.js} +0 -0
- /package/dist/assets/{stylus-DRN2WCqM.js → stylus-DYCEsZr5.js} +0 -0
- /package/dist/assets/{swift-BCXokZ3z.js → swift-Duztmfb3.js} +0 -0
- /package/dist/assets/{table-BX1kXOsy.js → table-C-4zXNgf.js} +0 -0
- /package/dist/assets/{tcl-CHeLjBFR.js → tcl-DI2Tsoc-.js} +0 -0
- /package/dist/assets/{textile-B9G88G2h.js → textile-Bu0-gYeb.js} +0 -0
- /package/dist/assets/{tiddlywiki-CIp8hgce.js → tiddlywiki-BiVbsin5.js} +0 -0
- /package/dist/assets/{tiki-C22wqq7_.js → tiki-BjQr6gnj.js} +0 -0
- /package/dist/assets/{timer-DolQqlHY.js → timer-ubTuPSiq.js} +0 -0
- /package/dist/assets/{toggle-iY_IwLg6.js → toggle-wwEdkCCQ.js} +0 -0
- /package/dist/assets/{toml-C5eRG8KV.js → toml-DS7p65H0.js} +0 -0
- /package/dist/assets/{treemap-wGELRPvg.js → treemap-D7anCkBi.js} +0 -0
- /package/dist/assets/{troff-CynCaHoK.js → troff-CmiSltql.js} +0 -0
- /package/dist/assets/{ttcn-B5PzIipG.js → ttcn-BcG2XAz0.js} +0 -0
- /package/dist/assets/{ttcn-cfg-Cboa6Jff.js → ttcn-cfg-rI2k2_Cz.js} +0 -0
- /package/dist/assets/{turtle-DqWnTCnP.js → turtle-7DaLnk-7.js} +0 -0
- /package/dist/assets/{types-DQ8fCbJK.js → types-CzVV1kKu.js} +0 -0
- /package/dist/assets/{useDeepCompareMemoize-BeNvU69i.js → useDeepCompareMemoize-Boltfl1B.js} +0 -0
- /package/dist/assets/{useInterval-THXC3A8S.js → useInterval-B8uaa6vj.js} +0 -0
- /package/dist/assets/{vb-D8y-MYBx.js → vb-B69cws1B.js} +0 -0
- /package/dist/assets/{vbscript-BnxMJuyI.js → vbscript-oR9jLSFn.js} +0 -0
- /package/dist/assets/{velocity-BxU4epmQ.js → velocity-CC4QjE_N.js} +0 -0
- /package/dist/assets/{verilog-BgK37K4c.js → verilog-DbzXDa_i.js} +0 -0
- /package/dist/assets/{vhdl-BV4w9W-F.js → vhdl-qbVPPYo_.js} +0 -0
- /package/dist/assets/{web-vitals-Q0-_CtWm.js → web-vitals--izkZsoM.js} +0 -0
- /package/dist/assets/{webidl-DaaapXpa.js → webidl-BkN24yvL.js} +0 -0
- /package/dist/assets/{ws-CnD6N6WA.js → ws-BYrDQlXa.js} +0 -0
- /package/dist/assets/{xquery-CXfthI-4.js → xquery-B3G1Qm2c.js} +0 -0
- /package/dist/assets/{yacas-DNslH_e4.js → yacas-DWdEPLXb.js} +0 -0
- /package/dist/assets/{z80-BrPJ63JS.js → z80-cCig3JnZ.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as Aa,n as q,r as sr,s as Xe,t as le}from"./chunk-LvLJmgfZ.js";import{c as Oa,m as ka,p as Ma,u as Lt}from"./useEvent-O0nX5vok.js";import{t as Ia}from"./react-Bj1aDYRI.js";import"./react-dom-CSu739Rf.js";import{t as Wt}from"./compiler-runtime-B3qBwwSJ.js";import{a as Ua,i as Fa,o as Da,r as _a,s as ja,t as Pa}from"./useLifecycle-DA9DjSPo.js";import{t as Ra}from"./isString-C4t9bzpo.js";import{a as $a,r as Ba,t as La}from"./utils-BGl6s90X.js";import{c as Wa,m as qa}from"./useEventListener-Dy81QR4n.js";import{t as Ha}from"./invariant-CQUIhlu2.js";import{t as Ga}from"./jsx-runtime-icT_Ltz2.js";import{t as lr}from"./button-Ej3vmCIF.js";import{t as cr}from"./cn-BoaCR37F.js";import{t as za}from"./createReducer-Dvh64vBW.js";import{t as ur}from"./createLucideIcon-Cm-Z7dYr.js";import{t as dr}from"./spec-DbOXZaHd.js";import{n as Ya}from"./table-Od8PbuV-.js";import{t as Qa}from"./square-function-B-8YRDsr.js";import{t as Va}from"./badge-DPjNGpcf.js";import{r as Ka}from"./useTheme-BYu4ZPLV.js";import"./Combination-CXstThSr.js";import{a as fr,c as pr,i as Te,n as Ze,o as hr,r as Le,s as et,t as tt}from"./select-dNVaT2hT.js";import{t as Ja}from"./tooltip-BCGmr4TU.js";import{t as Xa}from"./useDateFormatter-BOFB4HZc.js";import{t as Za}from"./useNumberFormatter-Da4iNOMq.js";import"./vega-loader.browser-W8QXhYr5.js";import{i as eo,n as mr}from"./react-vega-_sDwqIeC.js";import"./defaultLocale-D_LmbLH5.js";import"./defaultLocale-CvLIK2MU.js";import{n as to}from"./error-banner-D6woGaqN.js";import{n as no}from"./useAsyncData-VEt7lMhG.js";import{t as ro}from"./label-CNKB6XuV.js";var io=ur("chart-column-big",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["rect",{x:"15",y:"5",width:"4",height:"12",rx:"1",key:"q8uenq"}],["rect",{x:"7",y:"8",width:"4",height:"9",rx:"1",key:"sr5ea"}]]),ao=ur("list-ordered",[["path",{d:"M11 5h10",key:"1cz7ny"}],["path",{d:"M11 12h10",key:"1438ji"}],["path",{d:"M11 19h10",key:"11t30w"}],["path",{d:"M4 4h1v5",key:"10yrso"}],["path",{d:"M4 9h2",key:"r1h2o0"}],["path",{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02",key:"xtkcd5"}]]),gr=Wt();function Ie(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]]);return n}var oo=le(((e,t)=>{var n=(function(){function r(p,f){return f!=null&&p instanceof f}var a;try{a=Map}catch{a=function(){}}var i;try{i=Set}catch{i=function(){}}var s;try{s=Promise}catch{s=function(){}}function c(p,f,g,y,v){typeof f=="object"&&(g=f.depth,y=f.prototype,v=f.includeNonEnumerable,f=f.circular);var b=[],x=[],S=typeof Buffer<"u";f===void 0&&(f=!0),g===void 0&&(g=1/0);function C(T,w){if(T===null)return null;if(w===0)return T;var N,D;if(typeof T!="object")return T;if(r(T,a))N=new a;else if(r(T,i))N=new i;else if(r(T,s))N=new s(function(pe,M){T.then(function(Y){pe(C(Y,w-1))},function(Y){M(C(Y,w-1))})});else if(c.__isArray(T))N=[];else if(c.__isRegExp(T))N=new RegExp(T.source,d(T)),T.lastIndex&&(N.lastIndex=T.lastIndex);else if(c.__isDate(T))N=new Date(T.getTime());else{if(S&&Buffer.isBuffer(T))return N=Buffer.allocUnsafe?Buffer.allocUnsafe(T.length):new Buffer(T.length),T.copy(N),N;r(T,Error)?N=Object.create(T):y===void 0?(D=Object.getPrototypeOf(T),N=Object.create(D)):(N=Object.create(y),D=y)}if(f){var k=b.indexOf(T);if(k!=-1)return x[k];b.push(T),x.push(N)}for(var I in r(T,a)&&T.forEach(function(pe,M){var Y=C(M,w-1),Je=C(pe,w-1);N.set(Y,Je)}),r(T,i)&&T.forEach(function(pe){var M=C(pe,w-1);N.add(M)}),T){var _;D&&(_=Object.getOwnPropertyDescriptor(D,I)),!(_&&_.set==null)&&(N[I]=C(T[I],w-1))}if(Object.getOwnPropertySymbols)for(var xe=Object.getOwnPropertySymbols(T),I=0;I<xe.length;I++){var X=xe[I],W=Object.getOwnPropertyDescriptor(T,X);W&&!W.enumerable&&!v||(N[X]=C(T[X],w-1),W.enumerable||Object.defineProperty(N,X,{enumerable:!1}))}if(v)for(var fe=Object.getOwnPropertyNames(T),I=0;I<fe.length;I++){var Ee=fe[I],W=Object.getOwnPropertyDescriptor(T,Ee);W&&W.enumerable||(N[Ee]=C(T[Ee],w-1),Object.defineProperty(N,Ee,{enumerable:!1}))}return N}return C(p,g)}c.clonePrototype=function(p){if(p===null)return null;var f=function(){};return f.prototype=p,new f};function h(p){return Object.prototype.toString.call(p)}c.__objToStr=h;function o(p){return typeof p=="object"&&h(p)==="[object Date]"}c.__isDate=o;function l(p){return typeof p=="object"&&h(p)==="[object Array]"}c.__isArray=l;function u(p){return typeof p=="object"&&h(p)==="[object RegExp]"}c.__isRegExp=u;function d(p){var f="";return p.global&&(f+="g"),p.ignoreCase&&(f+="i"),p.multiline&&(f+="m"),f}return c.__getRegExpFlags=d,c})();typeof t=="object"&&t.exports&&(t.exports=n)})),so=le(((e,t)=>{var n=Array.isArray,r=Object.keys,a=Object.prototype.hasOwnProperty;t.exports=function i(s,c){if(s===c)return!0;if(s&&c&&typeof s=="object"&&typeof c=="object"){var h=n(s),o=n(c),l,u,d;if(h&&o){if(u=s.length,u!=c.length)return!1;for(l=u;l--!==0;)if(!i(s[l],c[l]))return!1;return!0}if(h!=o)return!1;var p=s instanceof Date,f=c instanceof Date;if(p!=f)return!1;if(p&&f)return s.getTime()==c.getTime();var g=s instanceof RegExp,y=c instanceof RegExp;if(g!=y)return!1;if(g&&y)return s.toString()==c.toString();var v=r(s);if(u=v.length,u!==r(c).length)return!1;for(l=u;l--!==0;)if(!a.call(c,v[l]))return!1;for(l=u;l--!==0;)if(d=v[l],!i(s[d],c[d]))return!1;return!0}return s!==s&&c!==c}})),yr=Xe(le(((e,t)=>{t.exports=function(n,r){r||(r={}),typeof r=="function"&&(r={cmp:r});var a=typeof r.cycles=="boolean"?r.cycles:!1,i=r.cmp&&(function(c){return function(h){return function(o,l){return c({key:o,value:h[o]},{key:l,value:h[l]})}}})(r.cmp),s=[];return(function c(h){if(h&&h.toJSON&&typeof h.toJSON=="function"&&(h=h.toJSON()),h!==void 0){if(typeof h=="number")return isFinite(h)?""+h:"null";if(typeof h!="object")return JSON.stringify(h);var o,l;if(Array.isArray(h)){for(l="[",o=0;o<h.length;o++)o&&(l+=","),l+=c(h[o])||"null";return l+"]"}if(h===null)return"null";if(s.indexOf(h)!==-1){if(a)return JSON.stringify("__cycle__");throw TypeError("Converting circular structure to JSON")}var u=s.push(h)-1,d=Object.keys(h).sort(i&&i(h));for(l="",o=0;o<d.length;o++){var p=d[o],f=c(h[p]);f&&(l&&(l+=","),l+=JSON.stringify(p)+":"+f)}return s.splice(u,1),"{"+l+"}"}})(n)}}))());so(),oo();function Ue(e,t,n){return e.fields=t||[],e.fname=n,e}function qt(e){throw Error(e)}function Ht(e){var t=[],n=null,r=0,a=e.length,i="",s,c,h;e+="";function o(){t.push(i+e.substring(s,c)),i="",s=c+1}for(s=c=0;c<a;++c)if(h=e[c],h==="\\")i+=e.substring(s,c),s=++c;else if(h===n)o(),n=null,r=-1;else{if(n)continue;s===r&&h==='"'||s===r&&h==="'"?(s=c+1,n=h):h==="."&&!r?c>s?o():s=c+1:h==="["?(c>s&&o(),r=s=c+1):h==="]"&&(r||qt("Access path missing open bracket: "+e),r>0&&o(),r=0,s=c+1)}return r&&qt("Access path missing closing bracket: "+e),n&&qt("Access path missing closing quote: "+e),c>s&&(c++,o()),t}var nt=Array.isArray;function vr(e){return e===Object(e)}function Gt(e){return typeof e=="string"}function zt(e){return nt(e)?"["+e.map(zt)+"]":vr(e)||Gt(e)?JSON.stringify(e).replace("\u2028","\\u2028").replace("\u2029","\\u2029"):e}function lo(e,t){var n=Ht(e),r="return _["+n.map(zt).join("][")+"];";return Ue(Function("_",r),[e=n.length===1?n[0]:e],t||e)}var We=[];lo("id"),Ue(function(e){return e},We,"identity"),Ue(function(){return 0},We,"zero"),Ue(function(){return 1},We,"one"),Ue(function(){return!0},We,"true"),Ue(function(){return!1},We,"false");function rt(e,t,n){var r=[t].concat([].slice.call(n));console[e](...r)}function co(e,t){var n=e||0;return{level:function(r){return arguments.length?(n=+r,this):n},error:function(){return n>=1&&rt(t||"error","ERROR",arguments),this},warn:function(){return n>=2&&rt(t||"warn","WARN",arguments),this},info:function(){return n>=3&&rt(t||"log","INFO",arguments),this},debug:function(){return n>=4&&rt(t||"log","DEBUG",arguments),this}}}function Yt(e){return typeof e=="boolean"}function Fe(e){for(var t={},n=0,r=e.length;n<r;++n)t[e[n]]=!0;return t}Set.prototype.toJSON=function(){return`Set(${[...this].map(e=>(0,yr.default)(e)).join(",")})`};const Q=yr.default;function H(e,t){return e.indexOf(t)>-1}function uo(e,t){let n=0;for(let[r,a]of e.entries())if(t(a,r,n++))return!0;return!1}const j=Object.keys;function fo(e){let t=e.replace(/\W/g,"_");return(e.match(/^\d+/)?"_":"")+t}function po(e,t="datum"){return`${t}[${zt(Ht(e).join("."))}]`}function ho(e){return`${Ht(e).map(t=>t.replace(".","\\.")).join("\\.")}`}function mo(...e){for(let t of e)if(t!==void 0)return t}function go(e){return yo(e)?e:`__${e}`}function yo(e){return e.indexOf("__")===0}const Se="column",br="facet",xr="latitude",Er="longitude",Tr="latitude2",Sr="longitude2",ce="color",it="fill",at="stroke",ot="shape",qe="size",st="opacity",lt="fillOpacity",ct="strokeOpacity",ut="strokeWidth",Qt="text",Nr="order",Cr="detail",wr="tooltip",Ar="href";var vo={x:1,y:1,x2:1,y2:1},Or={longitude:1,longitude2:1,latitude:1,latitude2:1};j(Or);var dt=Object.assign({},vo,Or,{color:1,fill:1,stroke:1,opacity:1,fillOpacity:1,strokeOpacity:1,strokeWidth:1,size:1,shape:1,order:1,text:1,detail:1,key:1,tooltip:1,href:1});function ft(e){return e==="color"||e==="fill"||e==="stroke"}var kr={row:1,column:1,facet:1};j(kr);var He=Object.assign({},dt,kr);const bo=j(He);var{order:Pd,detail:Rd}=He,xo=Ie(He,["order","detail"]),{order:$d,detail:Bd,row:Ld,column:Wd,facet:qd}=He,Eo=Ie(He,["order","detail","row","column","facet"]);j(xo),j(Eo),j(dt);var{x:Hd,y:Gd,x2:zd,y2:Yd,latitude:Qd,longitude:Vd,latitude2:Kd,longitude2:Jd}=dt,Vt=Ie(dt,["x","y","x2","y2","latitude","longitude","latitude2","longitude2"]);const Mr=j(Vt);var Ir={x:1,y:1};j(Ir);var{text:Xd,tooltip:Zd,href:ef,detail:tf,key:nf,order:rf}=Vt,Ur=Ie(Vt,["text","tooltip","href","detail","key","order"]);j(Ur);var Fr=Object.assign({},Ir,Ur);j(Fr);function To(e){return!!Fr[e]}function So(e,t){return Co(e)[t]}var Kt={area:"always",bar:"always",circle:"always",geoshape:"always",line:"always",rule:"always",point:"always",rect:"always",square:"always",trail:"always",text:"always",tick:"always"},{geoshape:af}=Kt,No=Ie(Kt,["geoshape"]);function Co(e){switch(e){case ce:case it:case at:case Cr:case"key":case wr:case Ar:case Nr:case st:case lt:case ct:case ut:case br:case"row":case Se:return Kt;case"x":case"y":case xr:case Er:return No;case"x2":case"y2":case Tr:case Sr:return{rule:"always",bar:"always",rect:"always",area:"always",circle:"binned",point:"binned",square:"binned",tick:"binned",line:"binned",trail:"binned"};case qe:return{point:"always",tick:"always",rule:"always",circle:"always",square:"always",bar:"always",text:"always",line:"always",trail:"always"};case ot:return{point:"always",geoshape:"always"};case Qt:return{text:"always"}}}function Jt(e){switch(e){case"x":case"y":case qe:case ut:case st:case lt:case ct:case"x2":case"y2":return;case br:case"row":case Se:case ot:case Qt:case wr:case Ar:return"discrete";case ce:case it:case at:return"flexible";case xr:case Er:case Tr:case Sr:case Cr:case"key":case Nr:return}throw Error("rangeType not implemented for "+e)}var Dr={orient:1,bandPosition:1,domain:1,domainColor:1,domainDash:1,domainDashOffset:1,domainOpacity:1,domainWidth:1,format:1,formatType:1,grid:1,gridColor:1,gridDash:1,gridDashOffset:1,gridOpacity:1,gridWidth:1,labelAlign:1,labelAngle:1,labelBaseline:1,labelBound:1,labelColor:1,labelFlush:1,labelFlushOffset:1,labelFont:1,labelFontSize:1,labelFontStyle:1,labelFontWeight:1,labelLimit:1,labelOpacity:1,labelOverlap:1,labelPadding:1,labels:1,labelSeparation:1,maxExtent:1,minExtent:1,offset:1,position:1,tickColor:1,tickCount:1,tickDash:1,tickDashOffset:1,tickExtra:1,tickMinStep:1,tickOffset:1,tickOpacity:1,tickRound:1,ticks:1,tickSize:1,tickWidth:1,title:1,titleAlign:1,titleAnchor:1,titleAngle:1,titleBaseline:1,titleColor:1,titleFont:1,titleFontSize:1,titleFontStyle:1,titleFontWeight:1,titleLimit:1,titleOpacity:1,titlePadding:1,titleX:1,titleY:1,values:1,zindex:1},wo=Object.assign({},Dr,{encoding:1});j(Object.assign({gridScale:1,scale:1},Dr,{encode:1}));const _r=j(wo);var jr={clipHeight:1,columnPadding:1,columns:1,cornerRadius:1,direction:1,fillColor:1,format:1,formatType:1,gradientLength:1,gradientOpacity:1,gradientStrokeColor:1,gradientStrokeWidth:1,gradientThickness:1,gridAlign:1,labelAlign:1,labelBaseline:1,labelColor:1,labelFont:1,labelFontSize:1,labelFontStyle:1,labelFontWeight:1,labelLimit:1,labelOffset:1,labelOpacity:1,labelOverlap:1,labelPadding:1,labelSeparation:1,legendX:1,legendY:1,offset:1,orient:1,padding:1,rowPadding:1,strokeColor:1,symbolDash:1,symbolDashOffset:1,symbolFillColor:1,symbolOffset:1,symbolOpacity:1,symbolSize:1,symbolStrokeColor:1,symbolStrokeWidth:1,symbolType:1,tickCount:1,tickMinStep:1,title:1,titleAlign:1,titleAnchor:1,titleBaseline:1,titleColor:1,titleFont:1,titleFontSize:1,titleFontStyle:1,titleFontWeight:1,titleLimit:1,titleOpacity:1,titleOrient:1,titlePadding:1,type:1,values:1,zindex:1},Ao=Object.assign({},jr,{opacity:1,shape:1,stroke:1,fill:1,size:1,strokeWidth:1,encode:1});const Pr=j(jr);j(Ao);var Oo=sr({BAR_WITH_POINT_SCALE_AND_RANGESTEP_NULL:()=>cs,CANNOT_FIX_RANGE_STEP_WITH_FIT:()=>Io,CANNOT_UNION_CUSTOM_DOMAIN_WITH_FIELD_DOMAIN:()=>fs,CONCAT_CANNOT_SHARE_AXIS:()=>Bo,FIT_NON_SINGLE:()=>Mo,INVALID_CHANNEL_FOR_AXIS:()=>ks,INVALID_SPEC:()=>ko,LINE_WITH_VARYING_SIZE:()=>rs,MORE_THAN_ONE_SORT:()=>Os,NO_FIELDS_NEEDS_AS:()=>Go,NO_INIT_SCALE_BINDINGS:()=>Po,REPEAT_CANNOT_SHARE_AXIS:()=>Lo,SCALE_BINDINGS_CONTINUOUS:()=>jo,UNABLE_TO_MERGE_DOMAINS:()=>As,cannotApplySizeToNonOrientedMark:()=>ys,cannotProjectOnChannelWithoutField:()=>Uo,cannotStackNonLinearScale:()=>Is,cannotStackRangedMark:()=>Ms,cannotUseScalePropertyWithNonColor:()=>ps,channelRequiredForBinned:()=>Ls,columnsNotSupportByRowCol:()=>$o,dayReplacedWithDate:()=>Ds,differentParse:()=>qo,discreteChannelCannotEncode:()=>ls,domainRequiredForThresholdScale:()=>Ws,domainSortDropped:()=>ws,droppedDay:()=>_s,droppingColor:()=>es,emptyFieldDef:()=>ts,encodingOverridden:()=>zo,errorBand1DNotSupport:()=>Bs,errorBarCenterAndExtentAreNotNeeded:()=>js,errorBarCenterIsNotNeeded:()=>$s,errorBarCenterIsUsedWithWrongExtent:()=>Ps,errorBarContinuousAxisHasCustomizedAggregate:()=>Rs,facetChannelDropped:()=>ss,facetChannelShouldBeDiscrete:()=>os,incompatibleChannel:()=>is,independentScaleMeansIndependentGuide:()=>Cs,invalidAggregate:()=>Xo,invalidEncodingChannel:()=>as,invalidFieldType:()=>Vo,invalidFieldTypeForCountAggregate:()=>Jo,invalidTimeUnit:()=>Fs,invalidTransformIgnored:()=>Ho,latLongDeprecated:()=>ns,lineWithRange:()=>us,mergeConflictingDomainProperty:()=>Ns,mergeConflictingProperty:()=>Ss,missingFieldType:()=>Zo,nearestNotSupportForContinuous:()=>Fo,noSuchRepeatedValue:()=>Ro,nonZeroScaleUsedWithLengthMark:()=>Ko,orientOverridden:()=>ds,primitiveChannelDef:()=>Qo,projectionOverridden:()=>Yo,rangeStepDropped:()=>vs,scalePropertyNotWorkWithScaleType:()=>Es,scaleTypeNotWorkWithChannel:()=>bs,scaleTypeNotWorkWithFieldDef:()=>xs,scaleTypeNotWorkWithMark:()=>Ts,selectionNotFound:()=>_o,selectionNotSupported:()=>Do,stackNonSummativeAggregate:()=>Us,unaggregateDomainHasNoEffectForRawField:()=>hs,unaggregateDomainWithNonSharedDomainOp:()=>ms,unaggregatedDomainWithLogScale:()=>gs,unrecognizedParse:()=>Wo},1);const ko="Invalid spec",Mo='Autosize "fit" only works for single views and layered views.',Io='Cannot use a fixed value of "rangeStep" when "autosize" is "fit".';function Uo(e){return`Cannot project a selection on encoding channel "${e}", which has no field.`}function Fo(e){return`The "nearest" transform is not supported for ${e} marks.`}function Do(e){return`Selection not supported for ${e} yet`}function _o(e){return`Cannot find a selection named "${e}"`}const jo="Scale bindings are currently only supported for scales with unbinned, continuous domains.",Po="Selections bound to scales cannot be separately initialized.";function Ro(e){return`Unknown repeated value "${e}".`}function $o(e){return`The "columns" property cannot be used when "${e}" has nested row/column.`}const Bo="Axes cannot be shared in concatenated views yet (https://github.com/vega/vega-lite/issues/2415).",Lo="Axes cannot be shared in repeated views yet (https://github.com/vega/vega-lite/issues/2415).";function Wo(e){return`Unrecognized parse "${e}".`}function qo(e,t,n){return`An ancestor parsed field "${e}" as ${n} but a child wants to parse the field as ${t}.`}function Ho(e){return`Ignoring an invalid transform: ${Q(e)}.`}const Go='If "from.fields" is not specified, "as" has to be a string that specifies the key to be used for the data from the secondary source.';function zo(e){return`Layer's shared ${e.join(",")} channel ${e.length===1?"is":"are"} overriden`}function Yo(e){let{parentProjection:t,projection:n}=e;return`Layer's shared projection ${Q(t)} is overridden by a child projection ${Q(n)}.`}function Qo(e,t,n){return`Channel ${e} is a ${t}. Converted to {value: ${Q(n)}}.`}function Vo(e){return`Invalid field type "${e}"`}function Ko(e,t,n){return`A ${n.scaleType?`${n.scaleType} scale`:n.zeroFalse?"scale with zero=false":"scale with custom domain that excludes zero"} is used to encode ${e}'s ${t}. This can be misleading as the ${t==="x"?"width":"height"} of the ${e} can be arbitrary based on the scale domain. You may want to use point mark instead.`}function Jo(e,t){return`Invalid field type "${e}" for aggregate: "${t}", using "quantitative" instead.`}function Xo(e){return`Invalid aggregation operator "${e}"`}function Zo(e,t){return`Missing type for channel "${e}", using "${t}" instead.`}function es(e,t){let{fill:n,stroke:r}=t;return`Dropping color ${e} as the plot also has `+(n&&r?"fill and stroke":n?"fill":"stroke")}function ts(e,t){return`Dropping ${Q(e)} from channel "${t}" since it does not contain data field or value.`}function ns(e,t,n){return`${e}-encoding with type ${t} is deprecated. Replacing with ${n}-encoding.`}const rs="Line marks cannot encode size with a non-groupby field. You may want to use trail marks instead.";function is(e,t,n){return`${e} dropped as it is incompatible with "${t}"${n?` when ${n}`:""}.`}function as(e){return`${e}-encoding is dropped as ${e} is not a valid encoding channel.`}function os(e){return`${e} encoding should be discrete (ordinal / nominal / binned).`}function ss(e){return`Facet encoding dropped as ${e.join(" and ")} ${e.length>1?"are":"is"} also specified.`}function ls(e,t){return`Using discrete channel "${e}" to encode "${t}" field can be misleading as it does not encode ${t==="ordinal"?"order":"magnitude"}.`}const cs="Bar mark should not be used with point scale when rangeStep is null. Please use band scale instead.";function us(e,t){return`Line mark is for continuous lines and thus cannot be used with ${e&&t?"x2 and y2":e?"x2":"y2"}. We will use the rule mark (line segments) instead.`}function ds(e,t){return`Specified orient "${e}" overridden with "${t}"`}const fs="custom domain scale cannot be unioned with default field-based domain";function ps(e){return`Cannot use the scale property "${e}" with non-color channel.`}function hs(e){return`Using unaggregated domain with raw field has no effect (${Q(e)}).`}function ms(e){return`Unaggregated domain not applicable for "${e}" since it produces values outside the origin domain of the source data.`}function gs(e){return`Unaggregated domain is currently unsupported for log scale (${Q(e)}).`}function ys(e){return`Cannot apply size to non-oriented mark "${e}".`}function vs(e){return`rangeStep for "${e}" is dropped as top-level ${e==="x"?"width":"height"} is provided.`}function bs(e,t,n){return`Channel "${e}" does not work with "${t}" scale. We are using "${n}" scale instead.`}function xs(e,t){return`FieldDef does not work with "${e}" scale. We are using "${t}" scale instead.`}function Es(e,t,n){return`${n}-scale's "${t}" is dropped as it does not work with ${e} scale.`}function Ts(e,t){return`Scale type "${t}" does not work with mark "${e}".`}function Ss(e,t,n,r){return`Conflicting ${t.toString()} property "${e.toString()}" (${Q(n)} and ${Q(r)}). Using ${Q(n)}.`}function Ns(e,t,n,r){return`Conflicting ${t.toString()} property "${e.toString()}" (${Q(n)} and ${Q(r)}). Using the union of the two domains.`}function Cs(e){return`Setting the scale to be independent for "${e}" means we also have to set the guide (axis or legend) to be independent.`}function ws(e){return`Dropping sort property ${Q(e)} as unioned domains only support boolean or op 'count'.`}const As="Unable to merge domains",Os="Domains that should be unioned has conflicting sort properties. Sort will be set to true.",ks="Invalid channel for axis.";function Ms(e){return`Cannot stack "${e}" if there is already "${e}2"`}function Is(e){return`Cannot stack non-linear scale (${e})`}function Us(e){return`Stacking is applied even though the aggregate function is non-summative ("${e}")`}function Fs(e,t){return`Invalid ${e}: ${Q(t)}`}function Ds(e){return`Time unit "${e}" is not supported. We are replacing it with ${e.replace("day","date")}.`}function _s(e){return`Dropping day from datetime ${Q(e)} as day cannot be combined with other units.`}function js(e,t){return`${t?"extent ":""}${t&&e?"and ":""}${e?"center ":""}${t&&e?"are ":"is "}not needed when data are aggregated.`}function Ps(e,t,n){return`${e} is not usually used with ${t} for ${n}.`}function Rs(e,t){return`Continuous axis should not have customized aggregation function ${e}; ${t} already agregates the axis.`}function $s(e,t){return`Center is not needed to be specified in ${t} when extent is ${e}.`}function Bs(e){return`1D error band does not support ${e}`}function Ls(e){return`Channel ${e} is required for "binned" bin`}function Ws(e){return`Domain for ${e} is required for threshold scale`}const Z=Oo;var Rr=co(2);function me(...e){Rr.warn.apply(Rr,arguments)}const qs={quantitative:1,ordinal:1,temporal:1,nominal:1,geojson:1},ee="quantitative",Ne="ordinal",ge="temporal",Ce="nominal";function Hs(e){if(e)switch(e=e.toLowerCase(),e){case"q":case ee:return"quantitative";case"t":case ge:return"temporal";case"o":case Ne:return"ordinal";case"n":case Ce:return"nominal";case"geojson":return"geojson"}}var F;(function(e){e.LINEAR="linear",e.LOG="log",e.POW="pow",e.SQRT="sqrt",e.SYMLOG="symlog",e.TIME="time",e.UTC="utc",e.QUANTILE="quantile",e.QUANTIZE="quantize",e.THRESHOLD="threshold",e.BIN_ORDINAL="bin-ordinal",e.ORDINAL="ordinal",e.POINT="point",e.BAND="band"})(F||(F={}));const Gs=j({linear:"numeric",log:"numeric",pow:"numeric",sqrt:"numeric",symlog:"numeric",time:"time",utc:"time",ordinal:"ordinal","bin-ordinal":"bin-ordinal",point:"ordinal-position",band:"ordinal-position",quantile:"discretizing",quantize:"discretizing",threshold:"discretizing"}),$r=["linear","log","pow","sqrt","symlog","time","utc"];var zs=Fe($r),Ys=Fe(["quantile","quantize","threshold"]),Qs=Fe($r.concat(["quantile","quantize","threshold"])),Vs=Fe(["ordinal","bin-ordinal","point","band"]);function we(e){return e in Vs}function Ks(e){return e in Qs}function De(e){return e in zs}function Js(e){return e in Ys}var Xt={type:1,domain:1,align:1,range:1,rangeStep:1,scheme:1,bins:1,reverse:1,round:1,clamp:1,nice:1,base:1,exponent:1,constant:1,interpolate:1,zero:1,padding:1,paddingInner:1,paddingOuter:1};const Br=j(Xt);var{type:of,domain:sf,range:lf,rangeStep:cf,scheme:uf}=Xt;j(Ie(Xt,["type","domain","range","rangeStep","scheme"])),Zs();function Zt(e,t){switch(t){case"type":case"domain":case"reverse":case"range":return!0;case"scheme":case"interpolate":return!H(["point","band","identity"],e);case"bins":return!H(["point","band","identity","ordinal"],e);case"round":return De(e)||e==="band"||e==="point";case"padding":return De(e)||H(["point","band"],e);case"paddingOuter":case"rangeStep":case"align":return H(["point","band"],e);case"paddingInner":return e==="band";case"clamp":return De(e);case"nice":return De(e)||e==="quantize"||e==="threshold";case"exponent":return e==="pow";case"base":return e==="log";case"constant":return e==="symlog";case"zero":return Ks(e)&&!H(["log","time","utc","threshold","quantile"],e)}}function Xs(e,t){switch(t){case"interpolate":case"scheme":return ft(e)?void 0:Z.cannotUseScalePropertyWithNonColor(e);case"align":case"type":case"bins":case"domain":case"range":case"base":case"exponent":case"constant":case"nice":case"padding":case"paddingInner":case"paddingOuter":case"rangeStep":case"reverse":case"round":case"clamp":case"zero":return}}function Lr(e,t){return H(["ordinal","nominal"],t)?e===void 0||we(e):t==="temporal"?H([F.TIME,F.UTC,void 0],e):t==="quantitative"?H([F.LOG,F.POW,F.SQRT,F.SYMLOG,F.QUANTILE,F.QUANTIZE,F.THRESHOLD,F.LINEAR,void 0],e):!0}function Wr(e,t){switch(e){case"x":case"y":return De(t)||H(["band","point"],t);case qe:case ut:case st:case lt:case ct:return De(t)||Js(t)||H(["band","point"],t);case ce:case it:case at:return t!=="band";case ot:return t==="ordinal"}return!1}function Zs(){let e={};for(let t of bo)for(let n of j(qs))for(let r of Gs){let a=el(t,n);Wr(t,r)&&Lr(r,n)&&(e[a]=e[a]||[],e[a].push(r))}return e}function el(e,t){return e+"_"+t}var te=le(((e,t)=>{var n=t.exports,r="__name__";n.namedfunc=function(o,l){return l[r]=o,l},n.name=function(o){return o==null?null:o[r]},n.identity=function(o){return o},n.true=n.namedfunc("true",function(){return!0}),n.false=n.namedfunc("false",function(){return!1}),n.duplicate=function(o){return JSON.parse(JSON.stringify(o))},n.equal=function(o,l){return JSON.stringify(o)===JSON.stringify(l)},n.extend=function(o){for(var l,u,d=1,p=arguments.length;d<p;++d)for(u in l=arguments[d],l)o[u]=l[u];return o},n.length=function(o){return o!=null&&o.length!=null?o.length:null},n.keys=function(o){var l=[],u;for(u in o)l.push(u);return l},n.vals=function(o){var l=[],u;for(u in o)l.push(o[u]);return l},n.toMap=function(o,l){return(l=n.$(l))?o.reduce(function(u,d){return u[l(d)]=1,u},{}):o.reduce(function(u,d){return u[d]=1,u},{})},n.keystr=function(o){var l=o.length;if(!l)return"";for(var u=String(o[0]),d=1;d<l;++d)u+="|"+String(o[d]);return u};var a=Object.prototype.toString;n.isObject=function(o){return o===Object(o)},n.isFunction=function(o){return a.call(o)==="[object Function]"},n.isString=function(o){return typeof value=="string"||a.call(o)==="[object String]"},n.isArray=Array.isArray||function(o){return a.call(o)==="[object Array]"},n.isNumber=function(o){return typeof o=="number"||a.call(o)==="[object Number]"},n.isBoolean=function(o){return o===!0||o===!1||a.call(o)=="[object Boolean]"},n.isDate=function(o){return a.call(o)==="[object Date]"},n.isValid=function(o){return o!=null&&o===o},n.isBuffer=typeof Buffer=="function"&&Buffer.isBuffer||n.false,n.number=function(o){return o==null||o===""?null:+o},n.boolean=function(o){return o==null||o===""?null:o==="false"?!1:!!o},n.date=function(o,l){var u=l||Date;return o==null||o===""?null:u.parse(o)},n.array=function(o){return o==null?[]:n.isArray(o)?o:[o]},n.str=function(o){return n.isArray(o)?"["+o.map(n.str)+"]":n.isObject(o)||n.isString(o)?JSON.stringify(o).replace("\u2028","\\u2028").replace("\u2029","\\u2029"):o};var i=/\[(.*?)\]|[^.\[]+/g;n.field=function(o){return String(o).match(i).map(function(l){return l[0]==="["?l[1]!=="'"&&l[1]!=='"'?l.slice(1,-1):l.slice(2,-2).replace(/\\(["'])/g,"$1"):l})},n.accessor=function(o){return o==null||n.isFunction(o)?o:n.namedfunc(o,Function("x","return x["+n.field(o).map(n.str).join("][")+"];"))},n.$=n.accessor,n.mutator=function(o){var l;return n.isString(o)&&(l=n.field(o)).length>1?function(u,d){for(var p=0;p<l.length-1;++p)u=u[l[p]];u[l[p]]=d}:function(u,d){u[o]=d}},n.$func=function(o,l){return function(u){u=n.$(u)||n.identity;var d=o+(n.name(u)?"_"+n.name(u):"");return n.namedfunc(d,function(p){return l(u(p))})}},n.$valid=n.$func("valid",n.isValid),n.$length=n.$func("length",n.length),n.$in=function(o,l){o=n.$(o);var u=n.isArray(l)?n.toMap(l):l;return function(d){return!!u[o(d)]}},n.comparator=function(o){var l=[];return o===void 0&&(o=[]),o=n.array(o).map(function(u){var d=1;return u[0]==="-"?(d=-1,u=u.slice(1)):u[0]==="+"&&(d=1,u=u.slice(1)),l.push(d),n.accessor(u)}),function(u,d){var p,f,g,y;for(p=0,f=o.length;p<f;++p)if(g=o[p],y=n.cmp(g(u),g(d)),y)return y*l[p];return 0}},n.cmp=function(o,l){return(o<l||o==null)&&l!=null?-1:(o>l||l==null)&&o!=null?1:(l=l instanceof Date?+l:l,(o=o instanceof Date?+o:o)!==o&&l===l?-1:l!==l&&o===o?1:0)},n.numcmp=function(o,l){return o-l},n.stablesort=function(o,l,u){var d=o.reduce(function(p,f,g){return p[u(f)]=g,p},{});return o.sort(function(p,f){var g=l(p),y=l(f);return g<y?-1:g>y?1:d[u(p)]-d[u(f)]}),o},n.permute=function(o){for(var l=o.length,u,d;l;)d=Math.floor(Math.random()*l--),u=o[l],o[l]=o[d],o[d]=u},n.pad=function(o,l,u,d){d||(d=" ");var p=l-o.length;if(p<=0)return o;switch(u){case"left":return s(p,d)+o;case"middle":case"center":return s(Math.floor(p/2),d)+o+s(Math.ceil(p/2),d);default:return o+s(p,d)}};function s(o,l){var u="",d;for(d=0;d<o;++d)u+=l;return u}n.truncate=function(o,l,u,d,p){var f=o.length;if(f<=l)return o;p=p===void 0?"\u2026":String(p);var g=Math.max(0,l-p.length);switch(u){case"left":return p+(d?c(o,g,1):o.slice(f-g));case"middle":case"center":var y=Math.ceil(g/2),v=Math.floor(g/2);return(d?c(o,y):o.slice(0,y))+p+(d?c(o,v,1):o.slice(f-v));default:return(d?c(o,g):o.slice(0,g))+p}};function c(o,l,u){var d=0,p=o.split(h);return o=u?(p=p.reverse()).filter(function(f){return d+=f.length,d<=l}).reverse():p.filter(function(f){return d+=f.length,d<=l}),o.length?o.join("").trim():p[0].slice(0,l)}var h=/([\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u2028\u2029\u3000\uFEFF])/})),qr=te(),U=te();function K(e,t){return e.indexOf(t)!==-1}function ae(e,t){for(let n=0;n<e.length;n++)if(!t(e[n],n))return!1;return!0}function G(e,t,n){if(e.forEach)e.forEach.call(n,t);else for(let r in e)t.call(n,e[r],r,e)}function ue(e,t){let n=0,r;for(r in e)if(t(e[r],r,n++))return!0;return!1}function tl(e,t){return e.filter(function(n){return!K(t,n)})}function nl(e){return Object.keys(e)}function oe(e){return!!e.parent}var Hr={channel:1,aggregate:1,autoCount:1,bin:1,timeUnit:1,hasFn:1,sort:1,stack:1,field:1,type:1,format:1,scale:1,axis:1,legend:1,value:1};const en=nl(Hr);function rl(e){return e in Hr}var il={bin:1,scale:1,sort:1,axis:1,legend:1};function tn(e){return il[e]}const al=["maxbins","divide","extent","base","step","steps","minstep"],ol=["field","op","order"];var Gr=al.map(e=>({parent:"bin",child:e}));const nn=ol.map(e=>({parent:"sort",child:e})),pt=Br.map(e=>({parent:"scale",child:e}));var zr=_r.map(e=>({parent:"axis",child:e})),Yr=Pr.map(e=>({parent:"legend",child:e}));const ht=[].concat(Gr,nn,pt,zr,Yr),Qr=["width","height","background","padding","title"];var Vr=".";function mt(e){return oe(e)?e.parent+Vr+e.child:e}function sl(e){let t=e.split(Vr);if(t.length===1)return e;if(t.length===2)return{parent:t[0],child:t[1]};throw"Invalid property key with "+t.length+" dots: "+e}var ll=ht.reduce((e,t)=>(e[t.parent]=e[t.parent]||[],e[t.parent][t.child]=t,e),{});function de(e,t){return(ll[e]||{})[t]}function Kr(e){return rl(e)||oe(e)}const cl=[].concat(en,ht),Jr=["type","field","bin","timeUnit","aggregate","autoCount","channel","mark","stack","scale","sort","axis","legend"].concat(Gr,pt,zr,Yr,nn);var m;(function(e){e.MARK="mark",e.TRANSFORM="transform",e.STACK="stack",e.FORMAT="format",e.CHANNEL="channel",e.AGGREGATE="aggregate",e.AUTOCOUNT="autoCount",e.BIN="bin",e.HAS_FN="hasFn",e.TIMEUNIT="timeUnit",e.FIELD="field",e.TYPE="type",e.SORT="sort",e.SCALE="scale",e.AXIS="axis",e.LEGEND="legend",e.WIDTH="width",e.HEIGHT="height",e.BACKGROUND="background",e.PADDING="padding",e.TITLE="title"})(m||(m={}));const Ge="area",gt="line",ze="point",rn="rect",an="rule",yt="text",vt="tick",on="circle",sn="square";var ul={area:1,bar:1,line:1,point:1,text:1,tick:1,trail:1,rect:1,geoshape:1,rule:1,circle:1,square:1};function dl(e){return H(["line","area","trail"],e)}const fl=j(ul);function pl(e){return e.type}Fe(fl),["january","february","march","april","may","june","july","august","september","october","november","december"].map(e=>e.substr(0,3)),["sunday","monday","tuesday","wednesday","thursday","friday","saturday"].map(e=>e.substr(0,3));var B;(function(e){e.YEAR="year",e.MONTH="month",e.DAY="day",e.DATE="date",e.HOURS="hours",e.MINUTES="minutes",e.SECONDS="seconds",e.MILLISECONDS="milliseconds",e.YEARMONTH="yearmonth",e.YEARMONTHDATE="yearmonthdate",e.YEARMONTHDATEHOURS="yearmonthdatehours",e.YEARMONTHDATEHOURSMINUTES="yearmonthdatehoursminutes",e.YEARMONTHDATEHOURSMINUTESSECONDS="yearmonthdatehoursminutesseconds",e.MONTHDATE="monthdate",e.MONTHDATEHOURS="monthdatehours",e.HOURSMINUTES="hoursminutes",e.HOURSMINUTESSECONDS="hoursminutesseconds",e.MINUTESSECONDS="minutesseconds",e.SECONDSMILLISECONDS="secondsmilliseconds",e.QUARTER="quarter",e.YEARQUARTER="yearquarter",e.QUARTERMONTH="quartermonth",e.YEARQUARTERMONTH="yearquartermonth",e.UTCYEAR="utcyear",e.UTCMONTH="utcmonth",e.UTCDAY="utcday",e.UTCDATE="utcdate",e.UTCHOURS="utchours",e.UTCMINUTES="utcminutes",e.UTCSECONDS="utcseconds",e.UTCMILLISECONDS="utcmilliseconds",e.UTCYEARMONTH="utcyearmonth",e.UTCYEARMONTHDATE="utcyearmonthdate",e.UTCYEARMONTHDATEHOURS="utcyearmonthdatehours",e.UTCYEARMONTHDATEHOURSMINUTES="utcyearmonthdatehoursminutes",e.UTCYEARMONTHDATEHOURSMINUTESSECONDS="utcyearmonthdatehoursminutesseconds",e.UTCMONTHDATE="utcmonthdate",e.UTCMONTHDATEHOURS="utcmonthdatehours",e.UTCHOURSMINUTES="utchoursminutes",e.UTCHOURSMINUTESSECONDS="utchoursminutesseconds",e.UTCMINUTESSECONDS="utcminutesseconds",e.UTCSECONDSMILLISECONDS="utcsecondsmilliseconds",e.UTCQUARTER="utcquarter",e.UTCYEARQUARTER="utcyearquarter",e.UTCQUARTERMONTH="utcquartermonth",e.UTCYEARQUARTERMONTH="utcyearquartermonth"})(B||(B={}));var ln={year:1,quarter:1,month:1,day:1,date:1,hours:1,minutes:1,seconds:1,milliseconds:1};const Xr=j(ln);function hl(e){return!!ln[e]}var cn={utcyear:1,utcquarter:1,utcmonth:1,utcday:1,utcdate:1,utchours:1,utcminutes:1,utcseconds:1,utcmilliseconds:1};function ml(e){return!!cn[e]}var gl={yearquarter:1,yearquartermonth:1,yearmonth:1,yearmonthdate:1,yearmonthdatehours:1,yearmonthdatehoursminutes:1,yearmonthdatehoursminutesseconds:1,quartermonth:1,monthdate:1,monthdatehours:1,hoursminutes:1,hoursminutesseconds:1,minutesseconds:1,secondsmilliseconds:1},Zr={utcyearquarter:1,utcyearquartermonth:1,utcyearmonth:1,utcyearmonthdate:1,utcyearmonthdatehours:1,utcyearmonthdatehoursminutes:1,utcyearmonthdatehoursminutesseconds:1,utcquartermonth:1,utcmonthdate:1,utcmonthdatehours:1,utchoursminutes:1,utchoursminutesseconds:1,utcminutesseconds:1,utcsecondsmilliseconds:1},yl=Object.assign({},cn,Zr);function vl(e){return!!yl[e]}var ei=Object.assign({},ln,cn,gl,Zr);j(ei);function bl(e){return!!ei[e]}var xl={year:"setFullYear",month:"setMonth",date:"setDate",hours:"setHours",minutes:"setMinutes",seconds:"setSeconds",milliseconds:"setMilliseconds",quarter:null,day:null};function El(e,t){let n=vl(e),r=n?new Date(Date.UTC(1972,0,1,0,0,0,0)):new Date(1972,0,1,0,0,0,0);for(let a of Xr)if(ni(e,a))switch(a){case B.DAY:throw Error("Cannot convert to TimeUnits containing 'day'");case B.QUARTER:{let{getDateMethod:i,setDateMethod:s}=ti("month",n);r[s](Math.floor(t[i]()/3)*3);break}default:{let{getDateMethod:i,setDateMethod:s}=ti(a,n);r[s](t[i]())}}return r}function ti(e,t){let n=xl[e];return{setDateMethod:t?"setUTC"+n.substr(3):n,getDateMethod:"get"+(t?"UTC":"")+n.substr(3)}}function ni(e,t){let n=e.indexOf(t);return n>-1&&(t!==B.SECONDS||n===0||e.charAt(n-1)!=="i")}function A(e){return bt(e)||Tl(e)}function bt(e){return e==="?"}function Tl(e){return e!==void 0&&e!=null&&(!!e.enum||!!e.name)&&!(0,qr.isArray)(e)}function un(e,t,n){return(0,U.extend)({},{name:t,enum:n},e==="?"?{}:e)}function dn(e){let t={},n={};for(let r of e){let a=[0];for(let s=0;s<r.length;s++)r.charAt(s).toUpperCase()===r.charAt(s)&&a.push(s);let i=a.map(s=>r.charAt(s)).join("").toLowerCase();if(!n[i]){t[r]=i,n[i]=!0;continue}if(a[a.length-1]!==r.length-1&&(i=a.concat([r.length-1]).map(s=>r.charAt(s)).join("").toLowerCase(),!n[i])){t[r]=i,n[i]=!0;continue}for(let s=1;!t[r];s++){let c=i+"_"+s;if(!n[c]){t[r]=c,n[c]=!0;break}}}return t}const xt={mark:"m",channel:"c",aggregate:"a",autoCount:"#",hasFn:"h",bin:"b",sort:"so",stack:"st",scale:"s",format:"f",axis:"ax",legend:"l",value:"v",timeUnit:"tu",field:"f",type:"t",binProps:{maxbins:"mb",min:"mi",max:"ma",base:"b",step:"s",steps:"ss",minstep:"ms",divide:"d"},sortProps:{field:"f",op:"o",order:"or"},scaleProps:dn(Br),axisProps:dn(_r),legendProps:dn(Pr)};function Ye(e){if(oe(e))return xt[e.parent]+"-"+xt[e.parent+"Props"][e.child];if(xt[e])return xt[e];throw Error("Default name undefined for "+e)}var V=[!1,!0],Sl={maxbins:[5,10,20],extent:[void 0],base:[10],step:[void 0],steps:[void 0],minstep:[void 0],divide:[[5,2]],binned:[!1],anchor:[void 0],nice:[!0]},Nl={field:[void 0],op:["min","mean"],order:["ascending","descending"]},Cl={type:[void 0,F.LOG],domain:[void 0],base:[void 0],exponent:[1,2],constant:[void 0],bins:[void 0],clamp:V,nice:V,reverse:V,round:V,zero:V,padding:[void 0],paddingInner:[void 0],paddingOuter:[void 0],interpolate:[void 0],range:[void 0],rangeStep:[17,21],scheme:[void 0]},wl={zindex:[1,0],offset:[void 0],orient:[void 0],values:[void 0],bandPosition:[void 0],encoding:[void 0],domain:V,domainColor:[void 0],domainDash:[void 0],domainDashOffset:[void 0],domainOpacity:[void 0],domainWidth:[void 0],formatType:[void 0],grid:V,gridColor:[void 0],gridDash:[void 0],gridDashOffset:[void 0],gridOpacity:[void 0],gridWidth:[void 0],format:[void 0],labels:V,labelAlign:[void 0],labelAngle:[void 0],labelBaseline:[void 0],labelColor:[void 0],labelFlushOffset:[void 0],labelFont:[void 0],labelFontSize:[void 0],labelFontStyle:[void 0],labelFontWeight:[void 0],labelLimit:[void 0],labelOpacity:[void 0],labelSeparation:[void 0],labelOverlap:[void 0],labelPadding:[void 0],labelBound:[void 0],labelFlush:[void 0],maxExtent:[void 0],minExtent:[void 0],position:[void 0],ticks:V,tickColor:[void 0],tickCount:[void 0],tickDash:[void 0],tickExtra:[void 0],tickDashOffset:[void 0],tickMinStep:[void 0],tickOffset:[void 0],tickOpacity:[void 0],tickRound:[void 0],tickSize:[void 0],tickWidth:[void 0],title:[void 0],titleAlign:[void 0],titleAnchor:[void 0],titleAngle:[void 0],titleBaseline:[void 0],titleColor:[void 0],titleFont:[void 0],titleFontSize:[void 0],titleFontStyle:[void 0],titleFontWeight:[void 0],titleLimit:[void 0],titleOpacity:[void 0],titlePadding:[void 0],titleX:[void 0],titleY:[void 0]};const Al={mark:[ze,"bar",gt,Ge,rn,vt,yt],channel:["x","y","row",Se,qe,ce],aggregate:[void 0,"mean"],autoCount:V,bin:V,hasFn:V,timeUnit:[void 0,B.YEAR,B.MONTH,B.MINUTES,B.SECONDS],field:[void 0],type:[Ce,Ne,ee,ge],sort:["ascending","descending"],stack:["zero","normalize","center",null],value:[void 0],format:[void 0],title:[void 0],scale:[!0],axis:V,legend:V,binProps:Sl,sortProps:Nl,scaleProps:Cl,axisProps:wl,legendProps:{orient:["left","right"],format:[void 0],type:[void 0],values:[void 0],zindex:[void 0],clipHeight:[void 0],columnPadding:[void 0],columns:[void 0],cornerRadius:[void 0],direction:[void 0],encoding:[void 0],fillColor:[void 0],formatType:[void 0],gridAlign:[void 0],offset:[void 0],padding:[void 0],rowPadding:[void 0],strokeColor:[void 0],labelAlign:[void 0],labelBaseline:[void 0],labelColor:[void 0],labelFont:[void 0],labelFontSize:[void 0],labelFontStyle:[void 0],labelFontWeight:[void 0],labelLimit:[void 0],labelOffset:[void 0],labelOpacity:[void 0],labelOverlap:[void 0],labelPadding:[void 0],labelSeparation:[void 0],legendX:[void 0],legendY:[void 0],gradientLength:[void 0],gradientOpacity:[void 0],gradientStrokeColor:[void 0],gradientStrokeWidth:[void 0],gradientThickness:[void 0],symbolDash:[void 0],symbolDashOffset:[void 0],symbolFillColor:[void 0],symbolOffset:[void 0],symbolOpacity:[void 0],symbolSize:[void 0],symbolStrokeColor:[void 0],symbolStrokeWidth:[void 0],symbolType:[void 0],tickCount:[void 0],tickMinStep:[void 0],title:[void 0],titleAnchor:[void 0],titleAlign:[void 0],titleBaseline:[void 0],titleColor:[void 0],titleFont:[void 0],titleFontSize:[void 0],titleFontStyle:[void 0],titleFontWeight:[void 0],titleLimit:[void 0],titleOpacity:[void 0],titleOrient:[void 0],titlePadding:[void 0]}};function fn(e,t,n){if(e==="field"||oe(e)&&e.parent==="sort"&&e.child==="field")return t.fieldNames();let r;if(r=oe(e)?n.enum[e.parent+"Props"][e.child]:n.enum[e],r!==void 0)return r;throw Error("No default enumValues for "+JSON.stringify(e))}const Qe={verbose:!1,defaultSpecConfig:{line:{point:!0},scale:{useUnaggregatedDomain:!0}},propertyPrecedence:Jr.map(mt),enum:Al,numberNominalProportion:.05,numberNominalLimit:40,constraintManuallySpecifiedValue:!1,autoAddCount:!1,hasAppropriateGraphicTypeForMark:!0,omitAggregate:!1,omitAggregatePlotWithDimensionOnlyOnFacet:!0,omitAggregatePlotWithoutDimension:!1,omitBarLineAreaWithOcclusion:!0,omitBarTickWithSize:!0,omitMultipleNonPositionalChannels:!0,omitRaw:!1,omitRawContinuousFieldForAggregatePlot:!0,omitRepeatedField:!0,omitNonPositionalOrFacetOverPositionalChannels:!0,omitTableWithOcclusionIfAutoAddCount:!0,omitVerticalDotPlot:!1,omitInvalidStackSpec:!0,omitNonSumStack:!0,preferredBinAxis:"x",preferredTemporalAxis:"x",preferredOrdinalAxis:"y",preferredNominalAxis:"y",preferredFacet:"row",minCardinalityForBin:15,maxCardinalityForCategoricalColor:20,maxCardinalityForFacet:20,maxCardinalityForShape:6,timeUnitShouldHaveVariation:!0,typeMatchesSchemaType:!0,stylize:!0,smallRangeStepForHighCardinalityOrFacet:{maxCardinality:10,rangeStep:12},nominalColorScaleForHighCardinality:{maxCardinality:10,palette:"category20"},xAxisOnTopForHighYCardinalityWithoutColumn:{maxCardinality:30},maxGoodCardinalityForFacet:5,maxGoodCardinalityForColor:7,minPercentUniqueForKey:.8,minCardinalityForKey:50};var ri={argmax:1,argmin:1,average:1,count:1,distinct:1,max:1,mean:1,median:1,min:1,missing:1,q1:1,q3:1,ci0:1,ci1:1,stderr:1,stdev:1,stdevp:1,sum:1,valid:1,values:1,variance:1,variancep:1};function Ol(e){return!!e&&!!e.argmin}function kl(e){return!!e&&!!e.argmax}j(ri);function Ml(e){return Gt(e)&&!!ri[e]}const ii=["count","sum","distinct","valid","missing"];Fe(["mean","average","median","q1","q3","min","max"]);function Il(e){return Yt(e)&&(e=Pl(e,void 0)),"bin"+j(e).map(t=>fo(`_${t}_${e[t]}`)).join("")}function ai(e){return e===!0||Ul(e)&&!e.binned}function Ul(e){return vr(e)}function pn(e){switch(e){case"row":case Se:case qe:case ce:case it:case at:case ut:case st:case lt:case ct:case ot:return 6;default:return 10}}function oi(e){return!!e&&!!e.condition&&!nt(e.condition)&&ye(e.condition)}function ye(e){return!!e&&(!!e.field||e.aggregate==="count")}function hn(e){return ye(e)&&Gt(e.field)}function Fl(e){return!!e.op}function mn(e,t={}){let n=e.field,r=t.prefix,a=t.suffix,i="";if(_l(e))n=go("count");else{let s;if(!t.nofn)if(Fl(e))s=e.op;else{let{bin:c,aggregate:h,timeUnit:o}=e;ai(c)?(s=Il(c),a=(t.binSuffix||"")+(t.suffix||"")):h?kl(h)?(i=`.${n}`,n=`argmax_${h.argmax}`):Ol(h)?(i=`.${n}`,n=`argmin_${h.argmin}`):s=String(h):o&&(s=String(o))}s&&(n=n?`${s}_${n}`:s)}return a&&(n=`${n}_${a}`),r&&(n=`${r}_${n}`),t.forAs?n:t.expr?po(n,t.expr)+i:ho(n)+i}function si(e){switch(e.type){case"nominal":case"ordinal":case"geojson":return!0;case"quantitative":return!!e.bin;case"temporal":return!1}throw Error(Z.invalidFieldType(e.type))}function Dl(e){return!si(e)}function _l(e){return e.aggregate==="count"}function jl(e){if(ye(e))return e;if(oi(e))return e.condition}function Pl(e,t){return Yt(e)?{maxbins:pn(t)}:e==="binned"?{binned:!0}:!e.maxbins&&!e.step?Object.assign({},e,{maxbins:pn(t)}):e}var _e={compatible:!0};function Rl(e,t){let n=e.type;if(n==="geojson"&&t!=="shape")return{compatible:!1,warning:`Channel ${t} should not be used with a geojson data.`};switch(t){case"row":case"column":case"facet":return Dl(e)?{compatible:!1,warning:Z.facetChannelShouldBeDiscrete(t)}:_e;case"x":case"y":case"color":case"fill":case"stroke":case"text":case"detail":case"key":case"tooltip":case"href":return _e;case"longitude":case"longitude2":case"latitude":case"latitude2":return n==="quantitative"?_e:{compatible:!1,warning:`Channel ${t} should be used with a quantitative field only, not ${e.type} field.`};case"opacity":case"fillOpacity":case"strokeOpacity":case"strokeWidth":case"size":case"x2":case"y2":return n==="nominal"&&!e.sort?{compatible:!1,warning:`Channel ${t} should not be used with an unsorted discrete field.`}:_e;case"shape":return H(["ordinal","nominal","geojson"],e.type)?_e:{compatible:!1,warning:"Shape channel should be used with only either discrete or geojson data."};case"order":return e.type==="nominal"&&!("sort"in e)?{compatible:!1,warning:"Channel order is inappropriate for nominal field, which has no inherent order."}:_e}throw Error("channelCompatability not implemented for channel "+t)}function $l(e,t,n,r){let a=Bl(t,n,r),{type:i}=e;return To(t)?i===void 0?a:Wr(t,i)?Lr(i,n.type)?i:(me(Z.scaleTypeNotWorkWithFieldDef(i,a)),a):(me(Z.scaleTypeNotWorkWithChannel(t,i,a)),a):null}function Bl(e,t,n){switch(t.type){case"nominal":case"ordinal":return ft(e)||Jt(e)==="discrete"?(e==="shape"&&t.type==="ordinal"&&me(Z.discreteChannelCannotEncode(e,"ordinal")),"ordinal"):H(["x","y"],e)&&(H(["rect","bar","rule"],n)||n==="bar")?"band":"point";case"temporal":return ft(e)?"time":Jt(e)==="discrete"?(me(Z.discreteChannelCannotEncode(e,"temporal")),"ordinal"):"time";case"quantitative":return ft(e)?ai(t.bin)?"bin-ordinal":"linear":Jt(e)==="discrete"?(me(Z.discreteChannelCannotEncode(e,"quantitative")),"ordinal"):"linear";case"geojson":return}throw Error(Z.invalidFieldType(t.type))}var se;(function(e){e.QUANTITATIVE=ee,e.ORDINAL=Ne,e.TEMPORAL=ge,e.NOMINAL=Ce,e.KEY="key"})(se||(se={}));function li(e){return e==="ordinal"||e==="nominal"||e===se.KEY}var ne=class ir{constructor(t=null){this.index=t?Object.assign({},t):{}}has(t){return mt(t)in this.index}get(t){return this.index[mt(t)]}set(t,n){return this.index[mt(t)]=n,this}setByKey(t,n){this.index[t]=n}map(t){let n=new ir;for(let r in this.index)n.index[r]=t(this.index[r]);return n}size(){return(0,U.keys)(this.index).length}duplicate(){return new ir(this.index)}};function ci(e,t){let n=e&&e[t];return n?nt(n)?uo(n,r=>!!r.field):ye(n)||oi(n):!1}var Ll={zero:1,center:1,normalize:1};function Wl(e){return!!Ll[e]}const ql=["bar",Ge,an,ze,on,sn,gt,yt,vt],Hl=["bar",Ge];function Gl(e){let t=e.x,n=e.y;if(ye(t)&&ye(n))if(t.type==="quantitative"&&n.type==="quantitative"){if(t.stack)return"x";if(n.stack)return"y";if(!!t.aggregate!=!!n.aggregate)return t.aggregate?"x":"y"}else{if(t.type==="quantitative")return"x";if(n.type==="quantitative")return"y"}else{if(ye(t)&&t.type==="quantitative")return"x";if(ye(n)&&n.type==="quantitative")return"y"}}function zl(e,t,n,r={}){let a=pl(e)?e.type:e;if(!H(ql,a))return null;let i=Gl(t);if(!i)return null;let s=t[i],c=hn(s)?mn(s,{}):void 0,h=i==="x"?"y":"x",o=t[h],l=hn(o)?mn(o,{}):void 0,u=Mr.reduce((p,f)=>{if(f!=="tooltip"&&ci(t,f)){let g=t[f];(nt(g)?g:[g]).forEach(y=>{let v=jl(y);if(v.aggregate)return;let b=hn(v)?mn(v,{}):void 0;(!b||b!==l&&b!==c)&&p.push({channel:f,fieldDef:v})})}return p},[]),d;if(s.stack===void 0?u.length>0&&(d=H(Hl,a)?mo(n,"zero"):n):d=Yt(s.stack)?s.stack?"zero":null:s.stack,!d||!Wl(d))return null;if(s.scale&&s.scale.type&&s.scale.type!==F.LINEAR){if(r.disallowNonLinearStack)return null;me(Z.cannotStackNonLinearScale(s.scale.type))}return ci(t,i==="x"?"x2":"y2")?(s.stack!==void 0&&me(Z.cannotStackRangedMark(i)),null):(s.aggregate&&!H(ii,s.aggregate)&&me(Z.stackNonSummativeAggregate(s.aggregate)),{groupbyChannel:o?h:void 0,fieldChannel:i,impute:dl(a),stackBy:u,offset:d})}var Yl=te();function Ql(e){return ue(e.encodings,t=>O(t)&&!A(t.aggregate)&&!!t.aggregate||Tt(t))}function ui(e){if(!Jl(e))return null;let t=gi(e.encodings,{schema:null,wildcardMode:"null"}),n=e.mark;return zl(n,t,void 0,{disallowNonLinearStack:!0})}function Vl(e){for(let t of e.encodings)if(t[m.STACK]!==void 0&&!A(t[m.STACK]))return t[m.STACK]}function Kl(e){for(let t of e.encodings)if(t[m.STACK]!==void 0&&!A(t.channel))return t.channel;return null}function Jl(e){if(A(e.mark))return!1;let t=(0,Yl.toMap)(tl(cl,[m.STACK,m.CHANNEL,m.MARK,m.FIELD,m.AGGREGATE,m.AUTOCOUNT,m.SCALE,de("scale","type"),m.TYPE])),n=e.encodings.filter(r=>!ie(r));for(let r of n)if(di(r,{exclude:t}))return!1;return!0}function di(e,t={}){if(!(0,U.isObject)(e))return!1;for(let n in e)if(e.hasOwnProperty(n)&&(A(e[n])&&(!t.exclude||!t.exclude[n])||di(e[n],t)))return!0;return!1}var fi=te();function Xl(e){return e.map(t=>Zl(t))}function Zl(e){return t=>e[t]===void 0?t:e[t]}function Ae(e,t){return A(e)?!bt(e)&&e.enum?"?"+JSON.stringify(e.enum):"?":t?t(e):e}function Et(e,t){return t?t(e):e}const gn=new ne,yn=[].concat(Jr,nn,[m.TRANSFORM,m.STACK],Qr).reduce((e,t)=>e.set(t,!0),new ne),vn={axis:{x:!0,y:!0,row:!0,column:!0},legend:{color:!0,opacity:!0,size:!0,shape:!0},scale:{x:!0,y:!0,color:!0,opacity:!0,row:!0,column:!0,size:!0,shape:!0},sort:{x:!0,y:!0,path:!0,order:!0},stack:{x:!0,y:!0}};function je(e,t=yn,n=gn){let r=[];t.get(m.MARK)&&r.push(Ae(e.mark,n.get(m.MARK))),e.transform&&e.transform.length>0&&r.push("transform:"+JSON.stringify(e.transform));let a;if(t.get(m.STACK)&&(a=ui(e)),e.encodings){let i=e.encodings.reduce((s,c)=>{if(!ie(c)){let h;h=a&&c.channel===a.fieldChannel?pi(Object.assign({},c,{stack:a.offset}),t,n):pi(c,t,n),h&&s.push(h)}return s},[]).sort().join("|");i&&r.push(i)}for(let i of Qr){let s=i.toString();if(t.get(i)&&e[s]){let c=e[s];r.push(`${s}=${JSON.stringify(c)}`)}}return r.join("|")}function pi(e,t=yn,n=gn){let r=[];if(t.get(m.CHANNEL)&&r.push(Ae(e.channel,n.get(m.CHANNEL))),O(e)){let a=hi(e,t,n);a&&r.push(a)}else re(e)?r.push(e.value):P(e)&&r.push("autocount()");return r.join(":")}function hi(e,t=yn,n=gn){if(t.get(m.AGGREGATE)&&ie(e))return"-";let r=ec(e,t,n),a=tc(e,t,n),i;if(O(e)){if(i=t.get("field")?Ae(e.field,n.get("field")):"...",t.get(m.TYPE))if(A(e.type))i+=","+Ae(e.type,n.get(m.TYPE));else{let s=((e.type||"quantitative")+"").substr(0,1);i+=","+Ae(s,n.get(m.TYPE))}i+=a.map(s=>{let c=s.value instanceof Array?"["+s.value+"]":s.value;return","+s.key+"="+c}).join("")}else P(e)&&(i="*,q");return i?r?((0,fi.isString)(r)?r:"?"+((0,U.keys)(r).length>0?JSON.stringify(r):""))+"("+i+")":i:null}function ec(e,t,n){if(t.get(m.AGGREGATE)&&e.aggregate&&!A(e.aggregate))return Et(e.aggregate,n.get(m.AGGREGATE));if(t.get(m.AGGREGATE)&&Tt(e))return Et("count",n.get(m.AGGREGATE));if(t.get(m.TIMEUNIT)&&e.timeUnit&&!A(e.timeUnit))return Et(e.timeUnit,n.get(m.TIMEUNIT));if(t.get(m.BIN)&&e.bin&&!A(e.bin))return"bin";{let r=null;for(let a of[m.AGGREGATE,m.AUTOCOUNT,m.TIMEUNIT,m.BIN]){let i=e[a];t.get(a)&&e[a]&&A(i)&&(r||(r={}),r[a]=bt(i)?i:i.enum)}return r&&e.hasFn&&(r.hasFn=!0),r}}function tc(e,t,n){let r=[];if(!(0,U.isBoolean)(e.bin)&&!bt(e.bin)){let a=e.bin;for(let i in a){let s=de("bin",i);s&&t.get(s)&&a[i]!==void 0&&r.push({key:i,value:Ae(a[i],n.get(s))})}r.sort((i,s)=>i.key.localeCompare(s.key))}for(let a of[m.SCALE,m.SORT,m.STACK,m.AXIS,m.LEGEND])if(!(!A(e.channel)&&!vn[a][e.channel])&&t.get(a)&&e[a]!==void 0){let i=e[a];if((0,U.isBoolean)(i)||i===null)r.push({key:a+"",value:i||!1});else if((0,fi.isString)(i))r.push({key:a+"",value:Et(JSON.stringify(i),n.get(a))});else{let s=[];for(let c in i){let h=de(a,c);h&&t.get(h)&&i[c]!==void 0&&s.push({key:c,value:Ae(i[c],n.get(h))})}if(s.length>0){let c=s.sort((h,o)=>h.key.localeCompare(o.key)).reduce((h,o)=>(h[o.key]=o.value,h),{});r.push({key:a+"",value:JSON.stringify(c)})}}}return r}function bn(e,t,n){let r=[],a=0;for(let i=0;i<n;i++){let s=e.indexOf(t,a);if(s!==-1)r.push(e.substring(a,s)),a=s+1;else break}if(r.push(e.substr(a)),r.length!==n+1)for(;r.length!==n+1;)r.push("");return r}var nc;(function(e){function t(i,s){let c=s.indexOf("(")===-1?n(bn(s,",",2)):a(s);return Object.assign({channel:i},c)}e.encoding=t;function n(i){let s={};s.field=i[0],s.type=Hs(i[1].toUpperCase())||"?";let c=i[2],h=0,o=0;for(;o<c.length;){let l=c.indexOf("=",o),u;if(l!==-1){let d=c.substring(o,l);if(c[o+d.length+1]==="{"){let p=o+d.length+1;h=r(p,c,"}");let f=c.substring(p,h+1);u=JSON.parse(f),o=h+2}else if(c[o+d.length+1]==="["){let p=o+d.length+1,f=r(p,c,"]"),g=c.substring(p,f+1);u=JSON.parse(g),o=f+2}else{let p=o,f=c.indexOf(",",o+d.length);f===-1&&(f=c.length),o=f+1,u=JSON.parse(c.substring(p+d.length+1,f))}tn(d)?s[d]=u:(s.bin=s.bin||{},s.bin[d]=u)}else break}return s}e.rawFieldDef=n;function r(i,s,c){for(let h=i;h<s.length;h++)if(s[h]===c)return h}e.getClosingIndex=r;function a(i){let s={};if(i[0]==="?"){let c=r(1,i,"}"),h=JSON.parse(i.substring(1,c+1));for(let o in h)(0,qr.isArray)(h[o])?s[o]={enum:h[o]}:s[o]=h[o];return Object.assign({},s,n(bn(i.substring(c+2,i.length-1),",",2)))}else{let c=i.substring(0,i.indexOf("(")),h=bn(i.substring(c.length+1,i.length-1),",",2);if(Ml(c))return Object.assign({aggregate:c},n(h));if(bl(c))return Object.assign({timeUnit:c},n(h));if(c==="bin")return Object.assign({bin:{}},n(h))}}e.fn=a})(nc||(nc={}));var mi=te();function re(e){return e!=null&&e.value!==void 0}function O(e){return e!=null&&(e.field||e.aggregate==="count")}function P(e){return e!=null&&"autoCount"in e}function ie(e){return P(e)&&e.autoCount===!1}function Tt(e){return P(e)&&e.autoCount===!0}var rc=[m.AGGREGATE,m.BIN,m.TIMEUNIT,m.FIELD,m.TYPE,m.SCALE,m.SORT,m.AXIS,m.LEGEND,m.STACK,m.FORMAT];function gi(e,t){let{wildcardMode:n="skip"}=t,r={};for(let a of e){if(ie(a))continue;let{channel:i}=a;if(A(i))throw Error("Cannot convert wildcard channel to a fixed channel");let s=re(a)?ic(a):xn(a,t);if(s===null){if(t.wildcardMode==="null")return null;continue}r[i]=s}return r}function ic(e){let{value:t}=e;return A(t)?null:{value:t}}function xn(e,t={}){let{props:n=rc,schema:r,wildcardMode:a="skip"}=t;if(O(e)){let i={};for(let s of n){let c=e[s];if(A(c)){if(a==="skip")continue;return null}if(c!==void 0){if(!(!vn[s]||vn[s][e.channel]))continue;if(tn(s)&&(0,mi.isObject)(c)){for(let h in c=Object.assign({},c),c)if(A(c[h])){if(a==="null")return null;delete c[h]}}if(s==="bin"&&c===!1)continue;s==="type"&&c==="key"?i.type="nominal":i[s]=c}if(s===m.SCALE&&r&&e.type==="ordinal"){let h=e.scale,{ordinalDomain:o}=r.fieldSchema(e.field);h!==null&&o&&(i[m.SCALE]=Object.assign({domain:o},(0,mi.isObject)(h)?h:{}))}}return i}else{if(e.autoCount===!1)throw Error("Cannot convert {autoCount: false} into a field def");return{aggregate:"count",field:"*",type:"quantitative"}}}function Ve(e){return O(e)?!ve(e)&&e.type!=="temporal":P(e)}function ve(e){if(O(e)){let t=xn(e,{props:["bin","timeUnit","type"]});return si(t)||!!t.timeUnit}return!1}function Oe(e){let t=e.scale===!0||e.scale==="?"?{}:e.scale||{},{type:n,channel:r,timeUnit:a,bin:i}=e;if(A(t.type)||A(n)||A(r)||A(i))return;if(t.type)return t.type;if(n==="temporal"&&A(a)||n==="quantitative"&&A(i))return;let s={type:n===se.KEY?"nominal":n,timeUnit:a,bin:i};return $l({type:t.type},r,s,void 0)}function L(e,t,n,r){function a(i){return e(i=new Date(+i)),i}return a.floor=a,a.round=function(i){var s=new Date(+i),c=new Date(i-1);return e(s),e(c),t(c,1),i-s<c-i?s:c},a.ceil=function(i){return e(i=new Date(i-1)),t(i,1),i},a.offset=function(i,s){return t(i=new Date(+i),s==null?1:Math.floor(s)),i},a.range=function(i,s,c){var h=[];if(i=new Date(i-1),s=new Date(+s),c=c==null?1:Math.floor(c),!(i<s)||!(c>0))return h;for(t(i,1),e(i),i<s&&h.push(new Date(+i));t(i,c),e(i),i<s;)h.push(new Date(+i));return h},a.filter=function(i){return L(function(s){for(;e(s),!i(s);)s.setTime(s-1)},function(s,c){for(;--c>=0;)for(;t(s,1),!i(s););})},n&&(a.count=function(i,s){return St.setTime(+i),Nt.setTime(+s),e(St),e(Nt),Math.floor(n(St,Nt))},a.every=function(i){return i=Math.floor(i),!isFinite(i)||!(i>0)?null:i>1?a.filter(r?function(s){return r(s)%i===0}:function(s){return a.count(0,s)%i===0}):a}),a}var St,Nt,z=q((()=>{St=new Date,Nt=new Date})),Ct,wt,ac=q((()=>{z(),Ct=L(function(){},function(e,t){e.setTime(+e+t)},function(e,t){return t-e}),Ct.every=function(e){return e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?L(function(t){t.setTime(Math.floor(t/e)*e)},function(t,n){t.setTime(+t+n*e)},function(t,n){return(n-t)/e}):Ct},wt=Ct})),En,oc=q((()=>{z(),En=L(function(e){e.setMilliseconds(0)},function(e,t){e.setTime(+e+t*1e3)},function(e,t){return(t-e)/1e3},function(e){return e.getSeconds()})})),Tn,sc=q((()=>{z(),Tn=L(function(e){e.setSeconds(0,0)},function(e,t){e.setTime(+e+t*6e4)},function(e,t){return(t-e)/6e4},function(e){return e.getMinutes()})})),Sn,lc=q((()=>{z(),Sn=L(function(e){e.setMinutes(0,0,0)},function(e,t){e.setTime(+e+t*36e5)},function(e,t){return(t-e)/36e5},function(e){return e.getHours()})})),Nn,cc=q((()=>{z(),Nn=L(function(e){e.setHours(0,0,0,0)},function(e,t){e.setDate(e.getDate()+t)},function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*6e4)/864e5},function(e){return e.getDate()-1})}));function ke(e){return L(function(t){t.setHours(0,0,0,0),t.setDate(t.getDate()-(t.getDay()+7-e)%7)},function(t,n){t.setDate(t.getDate()+n*7)},function(t,n){return(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/6048e5})}var At,Cn,wn,An,On,kn,Mn,In,uc=q((()=>{z(),At=ke(0),Cn=ke(1),wn=ke(2),An=ke(3),On=ke(4),kn=ke(5),Mn=ke(6),In=At})),Un,dc=q((()=>{z(),Un=L(function(e){e.setHours(0,0,0,0),e.setDate(1)},function(e,t){e.setMonth(e.getMonth()+t)},function(e,t){return t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12},function(e){return e.getMonth()})})),Fn,fc=q((()=>{z(),Fn=L(function(e){e.setHours(0,0,0,0),e.setMonth(0,1)},function(e,t){e.setFullYear(e.getFullYear()+t)},function(e,t){return t.getFullYear()-e.getFullYear()},function(e){return e.getFullYear()})})),Dn,pc=q((()=>{z(),Dn=L(function(e){e.setUTCMilliseconds(0)},function(e,t){e.setTime(+e+t*1e3)},function(e,t){return(t-e)/1e3},function(e){return e.getUTCSeconds()})})),_n,hc=q((()=>{z(),_n=L(function(e){e.setUTCSeconds(0,0)},function(e,t){e.setTime(+e+t*6e4)},function(e,t){return(t-e)/6e4},function(e){return e.getUTCMinutes()})})),jn,mc=q((()=>{z(),jn=L(function(e){e.setUTCMinutes(0,0,0)},function(e,t){e.setTime(+e+t*36e5)},function(e,t){return(t-e)/36e5},function(e){return e.getUTCHours()})})),Pn,gc=q((()=>{z(),Pn=L(function(e){e.setUTCHours(0,0,0,0)},function(e,t){e.setUTCDate(e.getUTCDate()+t)},function(e,t){return(t-e)/864e5},function(e){return e.getUTCDate()-1})}));function Me(e){return L(function(t){t.setUTCHours(0,0,0,0),t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7)},function(t,n){t.setUTCDate(t.getUTCDate()+n*7)},function(t,n){return(n-t)/6048e5})}var Ot,Rn,$n,Bn,Ln,Wn,qn,Hn,yc=q((()=>{z(),Ot=Me(0),Rn=Me(1),$n=Me(2),Bn=Me(3),Ln=Me(4),Wn=Me(5),qn=Me(6),Hn=Ot})),Gn,vc=q((()=>{z(),Gn=L(function(e){e.setUTCHours(0,0,0,0),e.setUTCDate(1)},function(e,t){e.setUTCMonth(e.getUTCMonth()+t)},function(e,t){return t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12},function(e){return e.getUTCMonth()})})),zn,bc=q((()=>{z(),zn=L(function(e){e.setUTCHours(0,0,0,0),e.setUTCMonth(0,1)},function(e,t){e.setUTCFullYear(e.getUTCFullYear()+t)},function(e,t){return t.getUTCFullYear()-e.getUTCFullYear()},function(e){return e.getUTCFullYear()})})),xc=sr({day:()=>Nn,days:()=>xi,friday:()=>kn,fridays:()=>wi,hour:()=>Sn,hours:()=>bi,interval:()=>L,millisecond:()=>wt,milliseconds:()=>Yn,minute:()=>Tn,minutes:()=>vi,monday:()=>Cn,mondays:()=>Ti,month:()=>Un,months:()=>ki,saturday:()=>Mn,saturdays:()=>Ai,second:()=>En,seconds:()=>yi,sunday:()=>At,sundays:()=>Ei,thursday:()=>On,thursdays:()=>Ci,tuesday:()=>wn,tuesdays:()=>Si,utcDay:()=>Pn,utcDays:()=>ji,utcFriday:()=>Wn,utcFridays:()=>Wi,utcHour:()=>jn,utcHours:()=>_i,utcMillisecond:()=>Ii,utcMilliseconds:()=>Ui,utcMinute:()=>_n,utcMinutes:()=>Di,utcMonday:()=>Rn,utcMondays:()=>Ri,utcMonth:()=>Gn,utcMonths:()=>Gi,utcSaturday:()=>qn,utcSaturdays:()=>qi,utcSecond:()=>Dn,utcSeconds:()=>Fi,utcSunday:()=>Ot,utcSundays:()=>Pi,utcThursday:()=>Ln,utcThursdays:()=>Li,utcTuesday:()=>$n,utcTuesdays:()=>$i,utcWednesday:()=>Bn,utcWednesdays:()=>Bi,utcWeek:()=>Hn,utcWeeks:()=>Hi,utcYear:()=>zn,utcYears:()=>zi,wednesday:()=>An,wednesdays:()=>Ni,week:()=>In,weeks:()=>Oi,year:()=>Fn,years:()=>Mi},1),Yn,yi,vi,bi,xi,Ei,Ti,Si,Ni,Ci,wi,Ai,Oi,ki,Mi,Ii,Ui,Fi,Di,_i,ji,Pi,Ri,$i,Bi,Li,Wi,qi,Hi,Gi,zi,Ec=q((()=>{z(),ac(),oc(),sc(),lc(),cc(),uc(),dc(),fc(),pc(),hc(),mc(),gc(),yc(),vc(),bc(),Yn=wt.range,yi=En.range,vi=Tn.range,bi=Sn.range,xi=Nn.range,Ei=At.range,Ti=Cn.range,Si=wn.range,Ni=An.range,Ci=On.range,wi=kn.range,Ai=Mn.range,Oi=In.range,ki=Un.range,Mi=Fn.range,Ii=wt,Ui=Yn,Fi=Dn.range,Di=_n.range,_i=jn.range,ji=Pn.range,Pi=Ot.range,Ri=Rn.range,$i=$n.range,Bi=Bn.range,Li=Ln.range,Wi=Wn.range,qi=qn.range,Hi=Hn.range,Gi=Gn.range,zi=zn.range})),Tc=le(((e,t)=>{var n=(Ec(),Aa(xc)),r=new Date,a=new Date(0,0,1).setFullYear(0),i=new Date(Date.UTC(0,0,1)).setUTCFullYear(0);function s(f){return r.setTime(+f),r}function c(f,g,y,v,b,x){var S={type:f,date:g,unit:y};return v?S.step=v:S.minstep=1,b!=null&&(S.min=b),x!=null&&(S.max=x),S}function h(f,g,y,v,b,x){return c(f,function(S){return g.offset(y,S)},function(S){return g.count(y,S)},v,b,x)}var o=[h("second",n.second,a),h("minute",n.minute,a),h("hour",n.hour,a),h("day",n.day,a,[1,7]),h("month",n.month,a,[1,3,6]),h("year",n.year,a),c("seconds",function(f){return new Date(1970,0,1,0,0,f)},function(f){return s(f).getSeconds()},null,0,59),c("minutes",function(f){return new Date(1970,0,1,0,f)},function(f){return s(f).getMinutes()},null,0,59),c("hours",function(f){return new Date(1970,0,1,f)},function(f){return s(f).getHours()},null,0,23),c("weekdays",function(f){return new Date(1970,0,4+f)},function(f){return s(f).getDay()},[1],0,6),c("dates",function(f){return new Date(1970,0,f)},function(f){return s(f).getDate()},[1],1,31),c("months",function(f){return new Date(1970,f%12,1)},function(f){return s(f).getMonth()},[1],0,11)],l=[h("second",n.utcSecond,i),h("minute",n.utcMinute,i),h("hour",n.utcHour,i),h("day",n.utcDay,i,[1,7]),h("month",n.utcMonth,i,[1,3,6]),h("year",n.utcYear,i),c("seconds",function(f){return new Date(Date.UTC(1970,0,1,0,0,f))},function(f){return s(f).getUTCSeconds()},null,0,59),c("minutes",function(f){return new Date(Date.UTC(1970,0,1,0,f))},function(f){return s(f).getUTCMinutes()},null,0,59),c("hours",function(f){return new Date(Date.UTC(1970,0,1,f))},function(f){return s(f).getUTCHours()},null,0,23),c("weekdays",function(f){return new Date(Date.UTC(1970,0,4+f))},function(f){return s(f).getUTCDay()},[1],0,6),c("dates",function(f){return new Date(Date.UTC(1970,0,f))},function(f){return s(f).getUTCDate()},[1],1,31),c("months",function(f){return new Date(Date.UTC(1970,f%12,1))},function(f){return s(f).getUTCMonth()},[1],0,11)],u=[[31536e6,5],[7776e6,4],[2592e6,4],[12096e5,3],[6048e5,3],[1728e5,3],[864e5,3],[432e5,2],[216e5,2],[108e5,2],[36e5,2],[18e5,1],[9e5,1],[3e5,1],[6e4,1],[3e4,0],[15e3,0],[5e3,0],[1e3,0]];function d(f,g,y,v){var b=u[0],x,S,C;for(x=1,S=u.length;x<S;++x)if(b=u[x],g>b[0]){if(C=g/b[0],C>v)return f[u[x-1][1]];if(C>=y)return f[b[1]]}return f[u[S-1][1]]}function p(f){var g={},y,v;for(y=0,v=f.length;y<v;++y)g[f[y].type]=f[y];return g.find=function(b,x,S){return d(f,b,x,S)},g}t.exports=p(o),t.exports.utc=p(l)})),Sc=le(((e,t)=>{var n=te(),r=Tc(),a=1e-15;function i(u){if(!u)throw Error("Missing binning options.");var d=u.maxbins||15,p=u.base||10,f=Math.log(p),g=u.div||[5,2],y=u.min,v=u.max,b=v-y,x,S,C,T,w,N,D;if(u.step)x=u.step;else if(u.steps)x=u.steps[Math.min(u.steps.length-1,s(u.steps,b/d,0,u.steps.length))];else{for(S=Math.ceil(Math.log(d)/f),C=u.minstep||0,x=Math.max(C,p**+(Math.round(Math.log(b)/f)-S));Math.ceil(b/x)>d;)x*=p;for(N=0;N<g.length;++N)w=x/g[N],w>=C&&b/w<=d&&(x=w)}return w=Math.log(x),T=w>=0?0:~~(-w/f)+1,D=p**(-T-1),y=Math.min(y,Math.floor(y/x+D)*x),v=Math.ceil(v/x)*x,{start:y,stop:v,step:x,unit:{precision:T},value:c,index:h}}function s(u,d,p,f){for(;p<f;){var g=p+f>>>1;n.cmp(u[g],d)<0?p=g+1:f=g}return p}function c(u){return this.step*Math.floor(u/this.step+a)}function h(u){return Math.floor((u-this.start)/this.step+a)}function o(u){return this.unit.date(c.call(this,u))}function l(u){return h.call(this,this.unit.unit(u))}i.date=function(u){if(!u)throw Error("Missing date binning options.");var d=u.utc?r.utc:r,p=u.min,f=u.max,g=u.maxbins||20,y=u.minbins||4,v=f-+p,b=u.unit?d[u.unit]:d.find(v,y,g),x=i({min:b.min==null?b.unit(p):b.min,max:b.max==null?b.unit(f):b.max,maxbins:g,minstep:b.minstep,steps:b.step});return x.unit=b,x.index=l,u.raw||(x.value=o),x},t.exports=i})),Yi=le(((e,t)=>{var n=te(),r="__types__",a={boolean:n.boolean,integer:n.number,number:n.number,date:n.date,string:function(p){return p==null||p===""?null:p+""}},i={boolean:function(p){return p==="true"||p==="false"||n.isBoolean(p)},integer:function(p){return i.number(p)&&(p=+p)===~~p},number:function(p){return!isNaN(+p)&&!n.isDate(p)},date:function(p){return!isNaN(Date.parse(p))}};function s(p,f){if(!f)return p&&p[r]||null;p[r]=f}function c(p){return n.keys(p)}function h(p){return"["+p+"]"}function o(p,f){p=n.array(p),f=n.$(f);var g,y,v;if(p[r]&&(g=f(p[r]),n.isString(g)))return g;for(y=0,v=p.length;!n.isValid(g)&&y<v;++y)g=f?f(p[y]):p[y];return n.isDate(g)?"date":n.isNumber(g)?"number":n.isBoolean(g)?"boolean":n.isString(g)?"string":null}function l(p,f){if(p.length){var g=f?n.identity:(f=c(p[0]),h);return f.reduce(function(y,v){return y[v]=o(p,g(v)),y},{})}}function u(p,f){p=n.array(p),f=n.$(f);var g,y,v,b=["boolean","integer","number","date"];for(g=0;g<p.length;++g){for(v=f?f(p[g]):p[g],y=0;y<b.length;++y)n.isValid(v)&&!i[b[y]](v)&&(b.splice(y,1),--y);if(b.length===0)return"string"}return b[0]}function d(p,f){var g=f?n.identity:(f=c(p[0]),h);return f.reduce(function(y,v){return y[v]=u(p,g(v)),y},{})}o.annotation=s,o.all=l,o.infer=u,o.inferAll=d,o.parsers=a,t.exports=o})),Nc=le(((e,t)=>{var n=te(),r=t.exports;r.repeat=function(a,i){var s=Array(i),c;for(c=0;c<i;++c)s[c]=a;return s},r.zeros=function(a){return r.repeat(0,a)},r.range=function(a,i,s){if(arguments.length<3&&(s=1,arguments.length<2&&(i=a,a=0)),(i-a)/s==1/0)throw Error("Infinite range");var c=[],h=-1,o;if(s<0)for(;(o=a+s*++h)>i;)c.push(o);else for(;(o=a+s*++h)<i;)c.push(o);return c},r.random={},r.random.uniform=function(a,i){i===void 0&&(i=a===void 0?1:a,a=0);var s=i-a,c=function(){return a+s*Math.random()};return c.samples=function(h){return r.zeros(h).map(c)},c.pdf=function(h){return h>=a&&h<=i?1/s:0},c.cdf=function(h){return h<a?0:h>i?1:(h-a)/s},c.icdf=function(h){return h>=0&&h<=1?a+h*s:NaN},c},r.random.integer=function(a,i){i===void 0&&(i=a,a=0);var s=i-a,c=function(){return a+Math.floor(s*Math.random())};return c.samples=function(h){return r.zeros(h).map(c)},c.pdf=function(h){return h===Math.floor(h)&&h>=a&&h<i?1/s:0},c.cdf=function(h){var o=Math.floor(h);return o<a?0:o>=i?1:(o-a+1)/s},c.icdf=function(h){return h>=0&&h<=1?a-1+Math.floor(h*s):NaN},c},r.random.normal=function(a,i){a||(a=0),i||(i=1);var s,c=function(){var h=0,o=0,l,u;if(s!==void 0)return h=s,s=void 0,h;do h=Math.random()*2-1,o=Math.random()*2-1,l=h*h+o*o;while(l===0||l>1);return u=Math.sqrt(-2*Math.log(l)/l),s=a+o*u*i,a+h*u*i};return c.samples=function(h){return r.zeros(h).map(c)},c.pdf=function(h){var o=Math.exp((h-a)**2/(-2*i**2));return 1/(i*Math.sqrt(2*Math.PI))*o},c.cdf=function(h){var o,l=(h-a)/i,u=Math.abs(l);if(u>37)o=0;else{var d,p=Math.exp(-u*u/2);u<7.07106781186547?(d=.0352624965998911*u+.700383064443688,d=d*u+6.37396220353165,d=d*u+33.912866078383,d=d*u+112.079291497871,d=d*u+221.213596169931,d=d*u+220.206867912376,o=p*d,d=.0883883476483184*u+1.75566716318264,d=d*u+16.064177579207,d=d*u+86.7807322029461,d=d*u+296.564248779674,d=d*u+637.333633378831,d=d*u+793.826512519948,d=d*u+440.413735824752,o/=d):(d=u+.65,d=u+4/d,d=u+3/d,d=u+2/d,d=u+1/d,o=p/d/2.506628274631)}return l>0?1-o:o},c.icdf=function(h){if(h<=0||h>=1)return NaN;var o=2*h-1,l=8*(Math.PI-3)/(3*Math.PI*(4-Math.PI)),u=2/(Math.PI*l)+Math.log(1-o**2)/2,d=Math.log(1-o*o)/l,p=(o>0?1:-1)*Math.sqrt(Math.sqrt(u*u-d)-u);return a+i*Math.SQRT2*p},c},r.random.bootstrap=function(a,i){var s=a.filter(n.isValid),c=s.length,h=i?r.random.normal(0,i):null,o=function(){return s[~~(Math.random()*c)]+(h?h():0)};return o.samples=function(l){return r.zeros(l).map(o)},o}})),Cc=le(((e,t)=>{var n=te(),r=Yi(),a=Nc(),i=t.exports;i.unique=function(o,l,u){l=n.$(l),u||(u=[]);var d={},p,f,g;for(f=0,g=o.length;f<g;++f)p=l?l(o[f]):o[f],!(p in d)&&(d[p]=1,u.push(p));return u},i.count=function(o){return o&&o.length||0},i.count.valid=function(o,l){l=n.$(l);var u,d,p,f=0;for(d=0,p=o.length;d<p;++d)u=l?l(o[d]):o[d],n.isValid(u)&&(f+=1);return f},i.count.missing=function(o,l){l=n.$(l);var u,d,p,f=0;for(d=0,p=o.length;d<p;++d)u=l?l(o[d]):o[d],u??(f+=1);return f},i.count.distinct=function(o,l){l=n.$(l);var u={},d,p,f,g=0;for(p=0,f=o.length;p<f;++p)d=l?l(o[p]):o[p],!(d in u)&&(u[d]=1,g+=1);return g},i.count.map=function(o,l){l=n.$(l);var u={},d,p,f;for(p=0,f=o.length;p<f;++p)d=l?l(o[p]):o[p],u[d]=d in u?u[d]+1:1;return u},i.median=function(o,l){return l&&(o=o.map(n.$(l))),o=o.filter(n.isValid).sort(n.cmp),i.quantile(o,.5)},i.quartile=function(o,l){l&&(o=o.map(n.$(l))),o=o.filter(n.isValid).sort(n.cmp);var u=i.quantile;return[u(o,.25),u(o,.5),u(o,.75)]},i.quantile=function(o,l,u){u===void 0&&(u=l,l=n.identity),l=n.$(l);var d=(o.length-1)*u+1,p=Math.floor(d),f=+l(o[p-1]),g=d-p;return g?f+g*(l(o[p])-f):f},i.sum=function(o,l){l=n.$(l);for(var u=0,d=0,p=o.length,f;d<p;++d)f=l?l(o[d]):o[d],n.isValid(f)&&(u+=f);return u},i.mean=function(o,l){l=n.$(l);var u=0,d,p,f,g,y;for(p=0,g=0,f=o.length;p<f;++p)y=l?l(o[p]):o[p],n.isValid(y)&&(d=y-u,u+=d/++g);return u},i.mean.geometric=function(o,l){l=n.$(l);var u=1,d,p,f,g;for(g=0,d=0,p=o.length;g<p;++g)if(f=l?l(o[g]):o[g],n.isValid(f)){if(f<=0)throw Error("Geometric mean only defined for positive values.");u*=f,++d}return u=d>0?u**(1/d):0,u},i.mean.harmonic=function(o,l){l=n.$(l);var u=0,d,p,f,g;for(g=0,d=0,p=o.length;g<p;++g)f=l?l(o[g]):o[g],n.isValid(f)&&(u+=1/f,++d);return d/u},i.variance=function(o,l){if(l=n.$(l),!n.isArray(o)||o.length<2)return 0;var u=0,d=0,p,f,g,y;for(f=0,g=0;f<o.length;++f)y=l?l(o[f]):o[f],n.isValid(y)&&(p=y-u,u+=p/++g,d+=p*(y-u));return d/=g-1,d},i.stdev=function(o,l){return Math.sqrt(i.variance(o,l))},i.modeskew=function(o,l){var u=i.mean(o,l),d=i.median(o,l),p=i.stdev(o,l);return p===0?0:(u-d)/p},i.min=function(o,l){return i.extent(o,l)[0]},i.max=function(o,l){return i.extent(o,l)[1]},i.extent=function(o,l){l=n.$(l);var u,d,p,f,g=o.length;for(f=0;f<g;++f)if(p=l?l(o[f]):o[f],n.isValid(p)){u=d=p;break}for(;f<g;++f)p=l?l(o[f]):o[f],n.isValid(p)&&(p<u&&(u=p),p>d&&(d=p));return[u,d]},i.extent.index=function(o,l){l=n.$(l);var u=-1,d=-1,p,f,g,y,v=o.length;for(y=0;y<v;++y)if(g=l?l(o[y]):o[y],n.isValid(g)){p=f=g,u=d=y;break}for(;y<v;++y)g=l?l(o[y]):o[y],n.isValid(g)&&(g<p&&(p=g,u=y),g>f&&(f=g,d=y));return[u,d]},i.dot=function(o,l,u){var d=0,p,f;if(u)for(l=n.$(l),u=n.$(u),p=0;p<o.length;++p)f=l(o[p])*u(o[p]),f===f&&(d+=f);else{if(o.length!==l.length)throw Error("Array lengths must match.");for(p=0;p<o.length;++p)f=o[p]*l[p],f===f&&(d+=f)}return d},i.dist=function(o,l,u,d){var p=n.isFunction(u)||n.isString(u),f=o,g=p?o:l,y=p?d:u,v=y===2||y==null,b=o.length,x=0,S,C;for(p&&(l=n.$(l),u=n.$(u)),C=0;C<b;++C)S=p?l(f[C])-u(g[C]):f[C]-g[C],x+=v?S*S:Math.abs(S)**+y;return v?Math.sqrt(x):x**(1/y)},i.cohensd=function(o,l,u){var d=u?o.map(n.$(l)):o,p=u?o.map(n.$(u)):l,f=i.mean(d),g=i.mean(p),y=i.count.valid(d),v=i.count.valid(p);if(y+v-2<=0)return 0;var b=i.variance(d),x=i.variance(p),S=Math.sqrt(((y-1)*b+(v-1)*x)/(y+v-2));return S===0?0:(f-g)/S},i.covariance=function(o,l,u){var d=u?o.map(n.$(l)):o,p=u?o.map(n.$(u)):l,f=d.length,g=i.mean(d),y=i.mean(p),v=0,b=0,x,S,C,T,w;if(f!==p.length)throw Error("Input lengths must match.");for(x=0;x<f;++x)if(S=d[x],T=n.isValid(S),C=p[x],w=n.isValid(C),T&&w)v+=(S-g)*(C-y),++b;else if(T||w)throw Error("Valid values must align.");return v/(b-1)},i.rank=function(o,l){l=n.$(l)||n.identity;var u=o.map(function(x,S){return{idx:S,val:l(x)}}).sort(n.comparator("val")),d=o.length,p=Array(d),f=-1,g={},y,v,b;for(y=0;y<d;++y){if(v=u[y].val,f<0&&g===v)f=y-1;else if(f>-1&&g!==v){for(b=1+(y-1+f)/2;f<y;++f)p[u[f].idx]=b;f=-1}p[u[y].idx]=y+1,g=v}if(f>-1)for(b=1+(d-1+f)/2;f<d;++f)p[u[f].idx]=b;return p},i.cor=function(o,l,u){var d=u;u=d?o.map(n.$(u)):l,l=d?o.map(n.$(l)):o;var p=i.dot(l,u),f=i.mean(l),g=i.mean(u),y=i.stdev(l),v=i.stdev(u),b=o.length;return(p-b*f*g)/((b-1)*y*v)},i.cor.rank=function(o,l,u){var d=u?i.rank(o,l):i.rank(o),p=u?i.rank(o,u):i.rank(l),f=o.length,g,y,v;for(g=0,y=0;g<f;++g)v=d[g]-p[g],y+=v*v;return 1-6*y/(f*(f*f-1))},i.cor.dist=function(o,l,u){var d=u?o.map(n.$(l)):o,p=u?o.map(n.$(u)):l,f=i.dist.mat(d),g=i.dist.mat(p),y=f.length,v,b,x,S;for(v=0,b=0,x=0,S=0;v<y;++v)b+=f[v]*f[v],x+=g[v]*g[v],S+=f[v]*g[v];return Math.sqrt(S/Math.sqrt(b*x))},i.linearRegression=function(o,l,u){var d=u?o.map(n.$(l)):o,p=u?o.map(n.$(u)):l,f=d.length,g=i.covariance(d,p),y=i.stdev(d),v=i.stdev(p),b=g/(y*y),x=i.mean(p)-b*i.mean(d),S={slope:b,intercept:x,R:g/(y*v),rss:0},C,T;for(T=0;T<f;++T)n.isValid(d[T])&&n.isValid(p[T])&&(C=b*d[T]+x-p[T],S.rss+=C*C);return S},i.bootstrap={},i.bootstrap.ci=function(o,l,u,d,p){var f,g,y,v,b,x,S;for(n.isFunction(l)||n.isString(l)?(f=o.map(n.$(l)),g=u,y=d,v=p):(f=o,g=l,y=u,v=d),g=g?+g:1e3,y||(y=.05),b=a.random.bootstrap(f,v),S=0,x=Array(g);S<g;++S)x[S]=i.mean(b.samples(f.length));return x.sort(n.numcmp),[i.quantile(x,y/2),i.quantile(x,1-y/2)]},i.z={},i.z.ci=function(o,l,u){var d=o,p=l;(n.isFunction(l)||n.isString(l))&&(d=o.map(n.$(l)),p=u),p||(p=.05);var f=p===.05?1.96:a.random.normal(0,1).icdf(1-p/2),g=i.mean(d),y=i.stdev(d)/Math.sqrt(i.count.valid(d));return[g-f*y,g+f*y]},i.z.test=function(o,l,u,d){return n.isFunction(u)||n.isString(u)?(d&&d.paired?c:h)(d,o,l,u):n.isArray(l)?(u&&u.paired?c:h)(u,o,l):n.isFunction(l)||n.isString(l)?s(u,o,l):s(l,o)};function s(o,l,u){var d=o&&o.nullh||0,p=a.random.normal(0,1),f=i.mean(l,u),g=i.stdev(l,u)/Math.sqrt(i.count.valid(l,u));if(g===0)return f-d===0?1:0;var y=(f-d)/g;return 2*p.cdf(-Math.abs(y))}function c(o,l,u,d){var p=d?l.map(n.$(u)):l,f=d?l.map(n.$(d)):u,g=i.count(p),y=i.count(f),v=[],b;if(g!==y)throw Error("Array lengths must match.");for(b=0;b<g;++b)n.isValid(p[b])&&n.isValid(f[b])&&v.push(p[b]-f[b]);return i.z.test(v,o&&o.nullh||0)}function h(o,l,u,d){var p=d?l.map(n.$(u)):l,f=d?l.map(n.$(d)):u,g=i.count.valid(p),y=i.count.valid(f),v=a.random.normal(0,1),b=i.mean(p)-i.mean(f)-(o&&o.nullh||0),x=Math.sqrt(i.variance(p)/g+i.variance(f)/y);if(x===0)return b===0?1:0;var S=b/x;return 2*v.cdf(-Math.abs(S))}i.dist.mat=function(o){var l=o.length,u=l*l,d=Array(u),p=a.zeros(l),f=0,g,y,v;for(y=0;y<l;++y)for(d[y*l+y]=0,v=y+1;v<l;++v)d[y*l+v]=g=Math.abs(o[y]-o[v]),d[v*l+y]=g,p[y]+=g,p[v]+=g;for(y=0;y<l;++y)f+=p[y],p[y]/=l;for(f/=u,y=0;y<l;++y)for(v=y;v<l;++v)d[y*l+v]+=f-p[y]-p[v],d[v*l+y]=d[y*l+v];return d},i.entropy=function(o,l){l=n.$(l);var u,d,p=0,f=0,g=o.length;for(u=0;u<g;++u)p+=l?l(o[u]):o[u];if(p===0)return 0;for(u=0;u<g;++u)d=(l?l(o[u]):o[u])/p,d&&(f+=d*Math.log(d));return-f/Math.LN2},i.mutual=function(o,l,u,d){var p=d?o.map(n.$(l)):o,f=d?o.map(n.$(u)):l,g=d?o.map(n.$(d)):u,y={},v={},b=g.length,x=0,S=0,C=0,T,w,N;for(N=0;N<b;++N)y[p[N]]=0,v[f[N]]=0;for(N=0;N<b;++N)y[p[N]]+=g[N],v[f[N]]+=g[N],x+=g[N];for(w=1/(x*Math.LN2),N=0;N<b;++N)g[N]!==0&&(T=x*g[N]/(y[p[N]]*v[f[N]]),S+=g[N]*w*Math.log(T),C+=g[N]*w*Math.log(g[N]/x));return[S,1+S/C]},i.mutual.info=function(o,l,u,d){return i.mutual(o,l,u,d)[0]},i.mutual.dist=function(o,l,u,d){return i.mutual(o,l,u,d)[1]},i.profile=function(o,l){var u=0,d=0,p=0,f=0,g=null,y=null,v=0,b=[],x={},S,C,T,w,N;for(T=0;T<o.length;++T)w=l?l(o[T]):o[T],x[w]=w in x?x[w]+1:(f+=1,1),w==null?++p:n.isValid(w)&&(N=typeof w=="string"?w.length:w,(g===null||N<g)&&(g=N),(y===null||N>y)&&(y=N),S=N-u,u+=S/++d,v+=S*(N-u),b.push(N));return v/=d-1,C=Math.sqrt(v),b.sort(n.cmp),{type:r(o,l),unique:x,count:o.length,valid:d,missing:p,distinct:f,min:g,max:y,mean:u,stdev:C,median:w=i.quantile(b,.5),q1:i.quantile(b,.25),q3:i.quantile(b,.75),modeskew:C===0?0:(u-w)/C}},i.summary=function(o,l){l||(l=n.keys(o[0]));var u=l.map(function(d){var p=i.profile(o,n.$(d));return p.field=d,p});return u.__summary__=!0,u}})),wc=Xe(Sc()),Ac=Yi(),Oc=Cc(),kc=wc.default;function Mc(e,t={},n={fields:[]}){t=(0,U.extend)({},Qe,t);let r=(0,Oc.summary)(e),a=(0,Ac.inferAll)(e),i=n.fields.reduce((c,h)=>(c[h.name]=h,c),{}),s=r.map(function(c,h){let o=c.field,l=a[o]==="date"?R.DATETIME:a[o],u=c.distinct,d;if(l===R.NUMBER)d=ee;else if(l===R.INTEGER)d=u<t.numberNominalLimit&&u/c.count<t.numberNominalProportion?Ce:ee;else if(l===R.DATETIME){d=ge,c.min=new Date(e[0][o]),c.max=new Date(e[0][o]);for(let g of e){let y=new Date(g[o]).getTime();y<c.min.getTime()&&(c.min=new Date(y)),y>c.max.getTime()&&(c.max=new Date(y))}}else d=Ce;d==="nominal"&&u/c.count>t.minPercentUniqueForKey&&c.count>t.minCardinalityForKey&&(d=se.KEY);let p={name:o,originalIndex:h,vlType:d,type:l,stats:c,timeStats:{},binStats:{}},f=i[p.name];return p=(0,U.extend)(p,f),p});for(let c of s)if(c.vlType==="quantitative")for(let h of t.enum.binProps.maxbins)c.binStats[h]=Qi(h,c.stats);else if(c.vlType==="temporal")for(let h of t.enum.timeUnit)h!==void 0&&(c.timeStats[h]=Vi(h,c.stats));return new Ic(Object.assign({},n,{fields:s}))}var kt={nominal:0,key:1,ordinal:2,temporal:3,quantitative:4},Ic=class{constructor(e){this._tableSchema=e,e.fields.sort(function(t,n){return kt[t.vlType]<kt[n.vlType]?-1:kt[t.vlType]>kt[n.vlType]?1:t.name.localeCompare(n.name)}),e.fields.forEach((t,n)=>t.index=n),this._fieldSchemaIndex=e.fields.reduce((t,n)=>(t[n.name]=n,t),{})}fieldNames(){return this._tableSchema.fields.map(e=>e.name)}get fieldSchemas(){return this._tableSchema.fields}fieldSchema(e){return this._fieldSchemaIndex[e]}tableSchema(){let e=(0,U.duplicate)(this._tableSchema);return e.fields.sort((t,n)=>t.originalIndex-n.originalIndex),e}primitiveType(e){return this._fieldSchemaIndex[e]?this._fieldSchemaIndex[e].type:null}vlType(e){return this._fieldSchemaIndex[e]?this._fieldSchemaIndex[e].vlType:null}cardinality(e,t=!0,n=!1){let r=this._fieldSchemaIndex[e.field];if(e.aggregate||P(e)&&e.autoCount)return 1;if(e.bin){let a;a=typeof e.bin=="boolean"?{maxbins:pn(e.channel)}:e.bin==="?"?{enum:[!0,!1]}:e.bin;let i=a.maxbins;return r.binStats[i]||(r.binStats[i]=Qi(i,r.stats)),r.binStats[i].distinct}else if(e.timeUnit){if(t)switch(e.timeUnit){case B.SECONDS:return 60;case B.MINUTES:return 60;case B.HOURS:return 24;case B.DAY:return 7;case B.DATE:return 31;case B.MONTH:return 12;case B.QUARTER:return 4;case B.MILLISECONDS:return 1e3}let a=e.timeUnit,i=r.timeStats;return(!i||!i[a])&&(i=Object.assign({},i,{[a]:Vi(e.timeUnit,r.stats)})),n?i[a].distinct-Ki(i[a].unique,["Invalid Date",null]):i[a].distinct}else return r?n?r.stats.distinct-Ki(r.stats.unique,[NaN,null]):r.stats.distinct:null}timeUnitHasVariation(e){if(!e.timeUnit)return;if(e.timeUnit===B.DAY){let n=(0,U.extend)({},e,{timeUnit:B.DATE});if(this.cardinality(n,!1,!0)<=1)return!1}let t=e.timeUnit;for(let n of Xr)if(ni(t,n)){let r=(0,U.extend)({},e,{timeUnit:n});if(this.cardinality(r,!1,!0)<=1)return!1}return!0}domain(e){let t=this._fieldSchemaIndex[e.field],n=(0,U.keys)(t.stats.unique);return t.vlType==="quantitative"?[+t.stats.min,+t.stats.max]:t.type===R.DATETIME?[t.stats.min,t.stats.max]:t.type===R.INTEGER||t.type===R.NUMBER?(n=n.map(r=>+r),n.sort(U.cmp)):t.vlType==="ordinal"&&t.ordinalDomain?t.ordinalDomain:n.map(r=>r==="null"?null:r).sort(U.cmp)}stats(e){let t=this._fieldSchemaIndex[e.field];return t?t.stats:null}};function Qi(e,t){let n=kc({min:t.min,max:t.max,maxbins:e}),r=(0,U.extend)({},t);return r.unique=Uc(n,t.unique),r.distinct=(n.stop-n.start)/n.step,r.min=n.start,r.max=n.stop,r}function Vi(e,t){let n=(0,U.extend)({},t),r={};return(0,U.keys)(t.unique).forEach(function(a){let i=a==="null"?null:new Date(a),s;s=i===null?null:isNaN(i.getTime())?"Invalid Date":(e===B.DAY?i.getDay():El(e,i)).toString(),r[s]=(r[s]||0)+t.unique[a]}),n.unique=r,n.distinct=(0,U.keys)(r).length,n}function Uc(e,t){let n={};for(let r in t){let a;a=r===null?null:isNaN(Number(r))?NaN:e.value(Number(r)),n[a]=(n[a]||0)+t[r]}return n}function Ki(e,t){return t.reduce(function(n,r){return e[r]?n+1:n},0)}var R;(function(e){e[e.STRING="string"]="STRING",e[e.NUMBER="number"]="NUMBER",e[e.INTEGER="integer"]="INTEGER",e[e.BOOLEAN="boolean"]="BOOLEAN",e[e.DATETIME="datetime"]="DATETIME"})(R||(R={}));var Ji=class{constructor(e){this.constraint=e}name(){return this.constraint.name}description(){return this.constraint.description}properties(){return this.constraint.properties}strict(){return this.constraint.strict}},Xi=class extends Ji{constructor(e){super(e)}hasAllRequiredPropertiesSpecific(e){return ae(this.constraint.properties,t=>{if(oe(t)){let n=t.parent,r=t.child;return e[n]?!A(e[n][r]):!0}return e[t]?!A(e[t]):!0})}satisfy(e,t,n,r){return!this.constraint.allowWildcardForProperties&&!this.hasAllRequiredPropertiesSpecific(e)?!0:this.constraint.satisfy(e,t,n,r)}};const Zi=[{name:"aggregateOpSupportedByType",description:"Aggregate function should be supported by data type.",properties:[m.TYPE,m.AGGREGATE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>e.aggregate?!li(e.type):!0},{name:"asteriskFieldWithCountOnly",description:'Field="*" should be disallowed except aggregate="count"',properties:[m.FIELD,m.AGGREGATE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>e.field==="*"==(e.aggregate==="count")},{name:"minCardinalityForBin",description:"binned quantitative field should not have too low cardinality",properties:[m.BIN,m.FIELD,m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>{if(e.bin&&e.type==="quantitative"){let a={channel:e.channel,field:e.field,type:e.type};return t.cardinality(a)>=r.minCardinalityForBin}return!0}},{name:"binAppliedForQuantitative",description:"bin should be applied to quantitative field only.",properties:[m.TYPE,m.BIN],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>e.bin?e.type===ee:!0},{name:"channelFieldCompatible",description:"encoding channel's range type be compatible with channel type.",properties:[m.CHANNEL,m.TYPE,m.BIN,m.TIMEUNIT],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>{let a=Object.assign({field:"f"},xn(e,{schema:t,props:["bin","timeUnit","type"]})),{compatible:i}=Rl(a,e.channel);return i?!0:!!((e.channel==="row"||e.channel==="column")&&(hl(a.timeUnit)||ml(a.timeUnit)))}},{name:"hasFn",description:"A field with as hasFn flag should have one of aggregate, timeUnit, or bin.",properties:[m.AGGREGATE,m.BIN,m.TIMEUNIT],allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n,r)=>e.hasFn?!!e.aggregate||!!e.bin||!!e.timeUnit:!0},{name:"omitScaleZeroWithBinnedField",description:"Do not use scale zero with binned field",properties:[m.SCALE,de("scale","zero"),m.BIN],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>!(e.bin&&e.scale&&e.scale.zero===!0)},{name:"onlyOneTypeOfFunction",description:"Only of of aggregate, autoCount, timeUnit, or bin should be applied at the same time.",properties:[m.AGGREGATE,m.AUTOCOUNT,m.TIMEUNIT,m.BIN],allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n,r)=>O(e)?(!A(e.aggregate)&&e.aggregate?1:0)+(!A(e.bin)&&e.bin?1:0)+(!A(e.timeUnit)&&e.timeUnit?1:0)<=1:!0},{name:"timeUnitAppliedForTemporal",description:"Time unit should be applied to temporal field only.",properties:[m.TYPE,m.TIMEUNIT],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>!(e.timeUnit&&e.type!=="temporal")},{name:"timeUnitShouldHaveVariation",description:"A particular time unit should be applied only if they produce unique values.",properties:[m.TIMEUNIT,m.TYPE],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>e.timeUnit&&e.type==="temporal"?!n.has("timeUnit")&&!r.constraintManuallySpecifiedValue?!0:t.timeUnitHasVariation(e):!0},{name:"scalePropertiesSupportedByScaleType",description:"Scale properties must be supported by correct scale type",properties:[].concat(pt,[m.SCALE,m.TYPE]),allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n,r)=>{if(e.scale){let a=e.scale,i=Oe(e);if(i==null)return!0;for(let s in a){if(s==="type"||s==="name"||s==="enum")continue;let c=s;if(i==="point"){if(!Zt("point",c)&&!Zt("band",c))return!1}else if(!Zt(i,c))return!1}}return!0}},{name:"scalePropertiesSupportedByChannel",description:"Not all scale properties are supported by all encoding channels",properties:[].concat(pt,[m.SCALE,m.CHANNEL]),allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n,r)=>{if(e){let a=e.channel,i=e.scale;if(a&&!A(a)&&i){if(a==="row"||a==="column")return!1;for(let s in i)if(i.hasOwnProperty(s)&&!(s==="type"||s==="name"||s==="enum")&&Xs(a,s)!==void 0)return!1}}return!0}},{name:"typeMatchesPrimitiveType",description:"Data type should be supported by field's primitive type.",properties:[m.FIELD,m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>{if(e.field==="*")return!0;let a=t.primitiveType(e.field),i=e.type;if(!n.has("field")&&!n.has("type")&&!r.constraintManuallySpecifiedValue)return!0;switch(a){case R.BOOLEAN:case R.STRING:return i!=="quantitative"&&i!=="temporal";case R.NUMBER:case R.INTEGER:return i!==ge;case R.DATETIME:return i===ge;case null:return!1}throw Error("Not implemented")}},{name:"typeMatchesSchemaType",description:"Enumerated data type of a field should match the field's type in the schema.",properties:[m.FIELD,m.TYPE],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>!n.has("field")&&!n.has("type")&&!r.constraintManuallySpecifiedValue?!0:e.field==="*"?e.type===ee:t.vlType(e.field)===e.type},{name:"maxCardinalityForCategoricalColor",description:"Categorical channel should not have too high cardinality",properties:[m.CHANNEL,m.FIELD],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>e.channel==="color"&&(e.type==="nominal"||e.type===se.KEY)?t.cardinality(e)<=r.maxCardinalityForCategoricalColor:!0},{name:"maxCardinalityForFacet",description:"Row/column channel should not have too high cardinality",properties:[m.CHANNEL,m.FIELD,m.BIN,m.TIMEUNIT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>e.channel==="row"||e.channel==="column"?t.cardinality(e)<=r.maxCardinalityForFacet:!0},{name:"maxCardinalityForShape",description:"Shape channel should not have too high cardinality",properties:[m.CHANNEL,m.FIELD,m.BIN,m.TIMEUNIT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>e.channel==="shape"?t.cardinality(e)<=r.maxCardinalityForShape:!0},{name:"dataTypeAndFunctionMatchScaleType",description:"Scale type must match data type",properties:[m.TYPE,m.SCALE,de("scale","type"),m.TIMEUNIT,m.BIN],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>{if(e.scale){let a=e.type,i=Oe(e);if(li(a))return i===void 0||we(i);if(a==="temporal")return e.timeUnit?K([F.TIME,F.UTC,void 0],i)||we(i):K([F.TIME,F.UTC,void 0],i);if(a==="quantitative")return e.bin?K([F.LINEAR,void 0],i):K([F.LOG,F.POW,F.SQRT,F.QUANTILE,F.QUANTIZE,F.LINEAR,void 0],i)}return!0}},{name:"stackIsOnlyUsedWithXY",description:"stack should only be allowed for x and y channels",properties:[m.STACK,m.CHANNEL],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>e.stack?e.channel==="x"||e.channel==="y":!0}].map(e=>new Xi(e));Zi.reduce((e,t)=>(e[t.name()]=t,e),{});const Fc=Zi.reduce((e,t)=>{for(let n of t.properties())e.set(n,e.get(n)||[]),e.get(n).push(t);return e},new ne),ea=[{name:"doesNotSupportConstantValue",description:"row, column, x, y, order, and detail should not work with constant values.",properties:[m.TYPE,m.AGGREGATE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>!K(["row","column","x","y","detail","order"],e.channel)}].map(e=>new Xi(e));ea.reduce((e,t)=>(e[t.name()]=t,e),{});const Dc=ea.reduce((e,t)=>{for(let n of t.properties())e.set(n,e.get(n)||[]),e.get(n).push(t);return e},new ne);function _c(e,t,n,r,a,i){let s=Fc.get(e)||[],c=r.getEncodingQueryByIndex(n);for(let o of s)if((o.strict()||i[o.name()])&&!o.satisfy(c,a,r.wildcardIndex.encodings[n],i)){let l="(enc) "+o.name();return i.verbose&&console.log(l+" failed with "+r.toShorthand()+" for "+t.name),l}let h=Dc.get(e)||[];for(let o of h)if((o.strict()||i[o.name()])&&re(c)&&!o.satisfy(c,a,r.wildcardIndex.encodings[n],i)){let l="(enc) "+o.name();return i.verbose&&console.log(l+" failed with "+r.toShorthand()+" for "+t.name),l}return null}var jc=Mr.reduce((e,t)=>(e[t]=!0,e),{}),Pc=class extends Ji{constructor(e){super(e)}hasAllRequiredPropertiesSpecific(e){return ae(this.constraint.properties,t=>{if(t===m.MARK)return!A(e.getMark());if(oe(t)){let n=t.parent,r=t.child;return ae(e.getEncodings(),a=>a[n]?!A(a[n][r]):!0)}if(!Kr(t))throw Error("UNIMPLEMENTED");return ae(e.getEncodings(),n=>n[t]?!A(n[t]):!0)})}satisfy(e,t,n){return!this.constraint.allowWildcardForProperties&&!this.hasAllRequiredPropertiesSpecific(e)?!0:this.constraint.satisfy(e,t,n)}};const ta=[{name:"noRepeatedChannel",description:"Each encoding channel should only be used once.",properties:[m.CHANNEL],allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n)=>{let r={};return ae(e.getEncodings(),a=>A(a.channel)?!0:r[a.channel]?!1:(r[a.channel]=!0,!0))}},{name:"alwaysIncludeZeroInScaleWithBarMark",description:"Do not recommend bar mark if scale does not start at zero",properties:[m.MARK,m.SCALE,de("scale","zero"),m.CHANNEL,m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{let r=e.getMark(),a=e.getEncodings();if(r==="bar"){for(let i of a)if(O(i)&&(i.channel==="x"||i.channel==="y")&&i.type==="quantitative"&&i.scale&&i.scale.zero===!1)return!1}return!0}},{name:"autoAddCount",description:"Automatically adding count only for plots with only ordinal, binned quantitative, or temporal with timeunit fields.",properties:[m.BIN,m.TIMEUNIT,m.TYPE,m.AUTOCOUNT],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>ue(e.getEncodings(),r=>Tt(r))?ae(e.getEncodings(),r=>{if(re(r)||P(r))return!0;switch(r.type){case ee:return!!r.bin;case ge:return!!r.timeUnit;case Ne:case se.KEY:case Ce:return!0}throw Error("Unsupported Type")}):ae(e.wildcardIndex.encodingIndicesByProperty.get("autoCount")||[],r=>{let a=e.getEncodingQueryByIndex(r);return P(a)&&!A(a.autoCount)})?ue(e.getEncodings(),r=>(O(r)||P(r))&&r.type==="quantitative"?ie(r)?!1:O(r)&&(!r.bin||A(r.bin)):O(r)&&r.type==="temporal"?!r.timeUnit||A(r.timeUnit):!1):!0},{name:"channelPermittedByMarkType",description:"Each encoding channel should be supported by the mark type",properties:[m.CHANNEL,m.MARK],allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n)=>{let r=e.getMark();return A(r)?!0:ae(e.getEncodings(),a=>A(a.channel)?!0:!!So(a.channel,r))}},{name:"hasAllRequiredChannelsForMark",description:"All required channels for the specified mark should be specified",properties:[m.CHANNEL,m.MARK],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{let r=e.getMark();switch(r){case Ge:case gt:return e.channelUsed("x")&&e.channelUsed("y");case yt:return e.channelUsed(Qt);case"bar":case on:case sn:case vt:case an:case rn:return e.channelUsed("x")||e.channelUsed("y");case ze:return!e.wildcardIndex.hasProperty(m.CHANNEL)||e.channelUsed("x")||e.channelUsed("y")}throw Error("hasAllRequiredChannelsForMark not implemented for mark"+JSON.stringify(r))}},{name:"omitAggregate",description:"Omit aggregate plots.",properties:[m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>!e.isAggregate()},{name:"omitAggregatePlotWithDimensionOnlyOnFacet",description:"Omit aggregate plots with dimensions only on facets as that leads to inefficient use of space.",properties:[m.CHANNEL,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>{if(e.isAggregate()){let r=!1,a=!1,i=!1;if(e.specQuery.encodings.forEach((s,c)=>{re(s)||ie(s)||O(s)&&!s.aggregate&&(a=!0,K(["row","column"],s.channel)?e.wildcardIndex.hasEncodingProperty(c,m.CHANNEL)&&(i=!0):r=!0)}),a&&!r&&(i||n.constraintManuallySpecifiedValue))return!1}return!0}},{name:"omitAggregatePlotWithoutDimension",description:"Aggregate plots without dimension should be omitted",properties:[m.AGGREGATE,m.AUTOCOUNT,m.BIN,m.TIMEUNIT,m.TYPE],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>e.isAggregate()?ue(e.getEncodings(),r=>!!(ve(r)||O(r)&&r.type==="temporal")):!0},{name:"omitBarLineAreaWithOcclusion",description:"Don't use bar, line or area to visualize raw plot as they often lead to occlusion.",properties:[m.MARK,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>K(["bar","line","area"],e.getMark())?e.isAggregate():!0},{name:"omitBarTickWithSize",description:"Do not map field to size channel with bar and tick mark",properties:[m.CHANNEL,m.MARK],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{if(K(["tick","bar"],e.getMark())&&e.channelEncodingField("size")){if(n.constraintManuallySpecifiedValue)return!1;{let r=e.specQuery.encodings;for(let a=0;a<r.length;a++)if(r[a].channel==="size")return!e.wildcardIndex.hasEncodingProperty(a,m.CHANNEL)}}return!0}},{name:"omitBarAreaForLogScale",description:"Do not use bar and area mark for x and y's log scale",properties:[m.MARK,m.CHANNEL,m.SCALE,de("scale","type"),m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{let r=e.getMark(),a=e.getEncodings();if(r==="area"||r==="bar"){for(let i of a)if(O(i)&&(i.channel==="x"||i.channel==="y")&&i.scale&&Oe(i)===F.LOG)return!1}return!0}},{name:"omitMultipleNonPositionalChannels",description:"Unless manually specified, do not use multiple non-positional encoding channel to avoid over-encoding.",properties:[m.CHANNEL],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{let r=e.specQuery.encodings,a=0,i=!1;for(let s=0;s<r.length;s++){let c=r[s];if(re(c)||ie(c))continue;let h=c.channel;if(!A(h)&&jc[h+""]&&(a+=1,e.wildcardIndex.hasEncodingProperty(s,m.CHANNEL)&&(i=!0),a>1&&(i||n.constraintManuallySpecifiedValue)))return!1}return!0}},{name:"omitNonPositionalOrFacetOverPositionalChannels",description:"Do not use non-positional channels unless all positional channels are used",properties:[m.CHANNEL],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>{let r=e.specQuery.encodings,a=!1,i=!1,s=!1,c=!1;for(let h=0;h<r.length;h++){let o=r[h];if(re(o)||ie(o))continue;let l=o.channel;l==="x"?s=!0:l==="y"?c=!0:A(l)||(a=!0,e.wildcardIndex.hasEncodingProperty(h,m.CHANNEL)&&(i=!0))}return i||n.constraintManuallySpecifiedValue&&a?s&&c:!0}},{name:"omitRaw",description:"Omit raw plots.",properties:[m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>!!e.isAggregate()},{name:"omitRawContinuousFieldForAggregatePlot",description:"Aggregate plot should not use raw continuous field as group by values. (Quantitative should be binned. Temporal should have time unit.)",properties:[m.AGGREGATE,m.AUTOCOUNT,m.TIMEUNIT,m.BIN,m.TYPE],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{if(e.isAggregate()){let r=e.specQuery.encodings;for(let a=0;a<r.length;a++){let i=r[a];if(!(re(i)||ie(i))&&(O(i)&&i.type==="temporal"&&!i.timeUnit&&(e.wildcardIndex.hasEncodingProperty(a,m.TIMEUNIT)||n.constraintManuallySpecifiedValue)||i.type==="quantitative"&&O(i)&&!i.bin&&!i.aggregate&&(e.wildcardIndex.hasEncodingProperty(a,m.BIN)||e.wildcardIndex.hasEncodingProperty(a,m.AGGREGATE)||e.wildcardIndex.hasEncodingProperty(a,m.AUTOCOUNT)||n.constraintManuallySpecifiedValue)))return!1}}return!0}},{name:"omitRawDetail",description:"Do not use detail channel with raw plot.",properties:[m.CHANNEL,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>e.isAggregate()?!0:ae(e.specQuery.encodings,(r,a)=>re(r)||ie(r)?!0:!(r.channel==="detail"&&(e.wildcardIndex.hasEncodingProperty(a,m.CHANNEL)||n.constraintManuallySpecifiedValue)))},{name:"omitRepeatedField",description:"Each field should be mapped to only one channel",properties:[m.FIELD],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{let r={},a={},i=e.specQuery.encodings;for(let s=0;s<i.length;s++){let c=i[s];if(re(c)||P(c))continue;let h;if(c.field&&!A(c.field)&&(h=c.field),P(c)&&!A(c.autoCount)&&(h="count_*"),h){if(e.wildcardIndex.hasEncodingProperty(s,m.FIELD)&&(a[h]=!0),r[h]&&(a[h]||n.constraintManuallySpecifiedValue))return!1;r[h]=!0}}return!0}},{name:"omitVerticalDotPlot",description:"Do not output vertical dot plot.",properties:[m.CHANNEL],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{let r=e.getEncodings();return!(r.length===1&&r[0].channel==="y")}},{name:"hasAppropriateGraphicTypeForMark",description:"Has appropriate graphic type for mark",properties:[m.CHANNEL,m.MARK,m.TYPE,m.TIMEUNIT,m.BIN,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>{let r=e.getMark();switch(r){case Ge:case gt:if(e.isAggregate()){let u=e.getEncodingQueryByChannel("x"),d=e.getEncodingQueryByChannel("y"),p=Ve(u),f=Ve(d);return u&&d&&p!==f&&!(O(u)&&!p&&K(["nominal","key"],u.type))&&!(O(d)&&!f&&K(["nominal","key"],d.type))}return!0;case yt:return!0;case"bar":case vt:if(e.channelEncodingField("size"))return!1;{let u=e.getEncodingQueryByChannel("x"),d=e.getEncodingQueryByChannel("y");return Ve(u)!==Ve(d)}case rn:let a=e.getEncodingQueryByChannel("x"),i=e.getEncodingQueryByChannel("y"),s=ve(a),c=ve(i),h=e.getEncodingQueryByChannel(ce),o=Ve(h),l=O(h)?h.type===Ne:!1;return(s&&c||s&&!e.channelUsed("y")||c&&!e.channelUsed("x"))&&(!h||h&&(o||l));case on:case ze:case sn:case an:return!0}throw Error("hasAllRequiredChannelsForMark not implemented for mark"+r)}},{name:"omitInvalidStackSpec",description:"If stack is specified, must follow Vega-Lite stack rules",properties:[m.STACK,m.FIELD,m.CHANNEL,m.MARK,m.AGGREGATE,m.AUTOCOUNT,m.SCALE,de("scale","type"),m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{if(!e.wildcardIndex.hasProperty(m.STACK))return!0;let r=e.getVlStack();return!(r===null&&e.getStackOffset()!==null||r.fieldChannel!==e.getStackChannel())}},{name:"omitNonSumStack",description:"Stack specifications that use non-summative aggregates should be omitted (even implicit ones)",properties:[m.CHANNEL,m.MARK,m.AGGREGATE,m.AUTOCOUNT,m.SCALE,de("scale","type"),m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{let r=e.getVlStack();return!(r!=null&&!K(ii,e.getEncodingQueryByChannel(r.fieldChannel).aggregate))}},{name:"omitTableWithOcclusionIfAutoAddCount",description:"Plots without aggregation or autocount where x and y are both discrete should be omitted if autoAddCount is enabled as they often lead to occlusion",properties:[m.CHANNEL,m.TYPE,m.TIMEUNIT,m.BIN,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>{if(n.autoAddCount){let r=e.getEncodingQueryByChannel("x"),a=e.getEncodingQueryByChannel("y");if((!O(r)||ve(r))&&(!O(a)||ve(a)))return e.isAggregate()?ae(e.getEncodings(),i=>{let s=i.channel;return!(s!=="x"&&s!=="y"&&s!=="row"&&s!=="column"&&O(i)&&!i.aggregate)}):!1}return!0}}].map(e=>new Pc(e));ta.reduce((e,t)=>(e[t.name()]=t,e),{});var Rc=ta.reduce((e,t)=>{for(let n of t.properties())e.set(n,e.get(n)||[]),e.get(n).push(t);return e},new ne);function na(e,t,n,r,a){let i=Rc.get(e)||[];for(let s of i)if((s.strict()||a[s.name()])&&!s.satisfy(n,r,a)){let c="(spec) "+s.name();return a.verbose&&console.log(c+" failed with "+n.toShorthand()+" for "+t.name),c}return null}var Mt=new ne;function $c(e){return Mt.get(e)}Mt.set("mark",(e,t,n)=>(r,a)=>(a.getMark().enum.forEach(i=>{a.setMark(i),na("mark",e.mark,a,t,n)||r.push(a.duplicate())}),a.resetMark(),r)),en.forEach(e=>{Mt.set(e,ra(e))}),ht.forEach(e=>{Mt.set(e,ra(e))});function ra(e){return(t,n,r)=>(a,i)=>{let s=t.encodingIndicesByProperty.get(e);function c(h){if(h===s.length){a.push(i.duplicate());return}let o=s[h],l=t.encodings[o].get(e),u=i.getEncodingQueryByIndex(o),d=i.getEncodingProperty(o,e);re(u)||ie(u)||!d?c(h+1):(l.enum.forEach(p=>{p===null&&(p=void 0),i.setEncodingProperty(o,e,p,l),!_c(e,l,o,i,n,r)&&(na(e,l,i,n,r)||c(h+1))}),i.resetEncodingProperty(o,e,l))}return c(0),a}}var Bc=te();function Lc(e){return(0,Bc.isObject)(e)&&!!e.property}function Ke(e,t,n){return t||(t=new ne),n||(n=new ne),e.forEach(r=>{Lc(r)?(t.setByKey(r.property,!0),n.setByKey(r.property,r.replace)):t.setByKey(r,!0)}),{include:t,replaceIndex:n,replacer:Xl(n)}}const ia=[m.FIELD,m.TYPE,m.AGGREGATE,m.BIN,m.TIMEUNIT,m.STACK],Wc=ia.concat([{property:m.CHANNEL,replace:{x:"xy",y:"xy",color:"style",size:"style",shape:"style",opacity:"style",row:"facet",column:"facet"}}]);var aa=te(),Qn={};function It(e,t){Qn[e]=t}function qc(e,t){if(t){let n={name:"",path:"",items:[]},r={},a=[],i=[],s=[];for(let c=0;c<t.length;c++){a.push(c>0?a[c-1].duplicate():new ne),i.push(c>0?i[c-1].duplicate():new ne);let h=t[c].groupBy;if((0,aa.isArray)(h)){let o=Ke(h,a[c],i[c]);s.push(o.replacer)}}return e.forEach(c=>{let h="",o=n;for(let l=0;l<t.length;l++){let u=o.groupBy=t[l].groupBy;o.orderGroupBy=t[l].orderGroupBy;let d=(0,aa.isArray)(u)?je(c.specQuery,a[l],s[l]):Qn[u](c.specQuery);h+="/"+d,r[h]||(r[h]={name:d,path:h,items:[]},o.items.push(r[h])),o=r[h]}o.items.push(c)}),n}else return{name:"",path:"",items:e}}var oa=Ke([m.FIELD]);function Hc(e,t){return Qn[t](e)}It("field",e=>je(e,oa.include,oa.replacer));const sa=Ke(ia);It("fieldTransform",e=>je(e,sa.include,sa.replacer));const la=Ke(Wc);It("encoding",e=>je(e,la.include,la.replacer)),It("spec",e=>JSON.stringify(e));var Gc=class{constructor(){this._mark=void 0,this._encodings={},this._encodingIndicesByProperty=new ne}setEncodingProperty(e,t,n){let r=this._encodings;(r[e]=r[e]||new ne).set(t,n);let a=this._encodingIndicesByProperty;return a.set(t,a.get(t)||[]),a.get(t).push(e),this}hasEncodingProperty(e,t){return!!this._encodings[e]&&this._encodings[e].has(t)}hasProperty(e){if(Kr(e))return this.encodingIndicesByProperty.has(e);if(e==="mark")return!!this.mark;throw Error("Unimplemented for property "+e)}isEmpty(){return!this.mark&&this.encodingIndicesByProperty.size()===0}setMark(e){return this._mark=e,this}get mark(){return this._mark}get encodings(){return this._encodings}get encodingIndicesByProperty(){return this._encodingIndicesByProperty}},zc=te(),Yc=class ar{constructor(t,n,r,a,i){this._rankingScore={},this._spec=t,this._channelFieldCount=t.encodings.reduce((s,c)=>(!A(c.channel)&&(!P(c)||c.autoCount!==!1)&&(s[c.channel+""]=1),s),{}),this._wildcardIndex=n,this._assignedWildcardIndex=i,this._opt=a,this._schema=r}static build(t,n,r){let a=new Gc;if(A(t.mark)){let i=Ye(m.MARK);t.mark=un(t.mark,i,r.enum.mark),a.setMark(t.mark)}if(t.encodings.forEach((i,s)=>{P(i)&&(console.warn("A field with autoCount should not be included as autoCount meant to be an internal object."),i.type=ee),O(i)&&i.type===void 0&&(i.type="?"),en.forEach(c=>{if(A(i[c])){let h=Ye(c)+s,o=fn(c,n,r),l=i[c]=un(i[c],h,o);a.setEncodingProperty(s,c,l)}}),ht.forEach(c=>{let h=i[c.parent];if(h){let o=c.child;if(A(h[o])){let l=Ye(c)+s,u=fn(c,n,r),d=h[o]=un(h[o],l,u);a.setEncodingProperty(s,c,d)}}})}),r.autoAddCount){let i={name:Ye(m.CHANNEL)+t.encodings.length,enum:fn(m.CHANNEL,n,r)},s={name:Ye(m.AUTOCOUNT)+t.encodings.length,enum:[!1,!0]},c={channel:i,autoCount:s,type:ee};t.encodings.push(c);let h=t.encodings.length-1;a.setEncodingProperty(h,m.CHANNEL,i),a.setEncodingProperty(h,m.AUTOCOUNT,s)}return new ar(t,a,n,r,{})}get wildcardIndex(){return this._wildcardIndex}get schema(){return this._schema}get specQuery(){return this._spec}duplicate(){return new ar((0,U.duplicate)(this._spec),this._wildcardIndex,this._schema,this._opt,(0,U.duplicate)(this._assignedWildcardIndex))}setMark(t){let n=this._wildcardIndex.mark.name;this._assignedWildcardIndex[n]=this._spec.mark=t}resetMark(){let t=this._spec.mark=this._wildcardIndex.mark;delete this._assignedWildcardIndex[t.name]}getMark(){return this._spec.mark}getEncodingProperty(t,n){let r=this._spec.encodings[t];return oe(n)?r[n.parent][n.child]:r[n]}setEncodingProperty(t,n,r,a){let i=this._spec.encodings[t];n===m.CHANNEL&&i.channel&&!A(i.channel)&&this._channelFieldCount[i.channel]--,oe(n)?i[n.parent][n.child]=r:tn(n)&&r===!0?i[n]=(0,U.extend)({},i[n],{enum:void 0,name:void 0}):i[n]=r,this._assignedWildcardIndex[a.name]=r,n===m.CHANNEL&&(this._channelFieldCount[r]=(this._channelFieldCount[r]||0)+1)}resetEncodingProperty(t,n,r){let a=this._spec.encodings[t];n===m.CHANNEL&&this._channelFieldCount[a.channel]--,oe(n)?a[n.parent][n.child]=r:a[n]=r,delete this._assignedWildcardIndex[r.name]}channelUsed(t){return this._channelFieldCount[t]>0}channelEncodingField(t){return O(this.getEncodingQueryByChannel(t))}getEncodings(){return this._spec.encodings.filter(t=>!ie(t))}getEncodingQueryByChannel(t){for(let n of this._spec.encodings)if(n.channel===t)return n}getEncodingQueryByIndex(t){return this._spec.encodings[t]}isAggregate(){return Ql(this._spec)}getVlStack(){return ui(this._spec)}getStackOffset(){return Vl(this._spec)}getStackChannel(){return Kl(this._spec)}toShorthand(t){if(t){if((0,zc.isString)(t))return Hc(this.specQuery,t);let n=Ke(t);return je(this._spec,n.include,n.replacer)}return je(this._spec)}toSpec(t){if(A(this._spec.mark))return null;let n={};return t||(t=this._spec.data),t&&(n.data=t),this._spec.transform&&(n.transform=this._spec.transform),n.mark=this._spec.mark,n.encoding=gi(this.specQuery.encodings,{schema:this._schema,wildcardMode:"null"}),this._spec.width&&(n.width=this._spec.width),this._spec.height&&(n.height=this._spec.height),this._spec.background&&(n.background=this._spec.background),this._spec.padding&&(n.padding=this._spec.padding),this._spec.title&&(n.title=this._spec.title),n.encoding===null?null:((this._spec.config||this._opt.defaultSpecConfig)&&(n.config=(0,U.extend)({},this._opt.defaultSpecConfig,this._spec.config)),n)}getRankingScore(t){return this._rankingScore[t]}setRankingScore(t,n){this._rankingScore[t]=n}};function Qc(e){if(e.groupBy){let t={groupBy:e.groupBy};e.orderBy&&(t.orderGroupBy=e.orderBy);let n={spec:(0,U.duplicate)(e.spec),nest:[t]};return e.chooseBy&&(n.chooseBy=e.chooseBy),e.config&&(n.config=e.config),n}return(0,U.duplicate)(e)}function ca(e){return e.items!==void 0}function Vn(e){let t=e.items[0];for(;t&&ca(t);)t=t.items[0];return t}var Pe=class{constructor(e){this.type=e,this.scoreIndex=this.initScore()}getFeatureScore(e){let t=this.type,n=this.scoreIndex[e];if(n!==void 0)return{type:t,feature:e,score:n}}},J;(function(e){e[e.Q=ee]="Q",e[e.BIN_Q="bin_"+ee]="BIN_Q",e[e.T=ge]="T",e[e.TIMEUNIT_T="timeUnit_time"]="TIMEUNIT_T",e[e.TIMEUNIT_O="timeUnit_"+Ne]="TIMEUNIT_O",e[e.O=Ne]="O",e[e.N=Ce]="N",e[e.K=se.KEY]="K",e[e.NONE="-"]="NONE"})(J||(J={}));const ua=J.Q,Ut=J.BIN_Q,Kn=J.T,Re=J.TIMEUNIT_T,Ft=J.TIMEUNIT_O,Dt=J.O,_t=J.N,Jn=J.K,jt=J.NONE;function Pt(e){return e.bin?J.BIN_Q:e.timeUnit?we(Oe(e))?J.TIMEUNIT_O:J.TIMEUNIT_T:e.type}var Vc=class extends Pe{constructor(){super("Axis")}initScore(e={}){e=Object.assign({},Qe,e);let t={};return[{feature:Ut,opt:"preferredBinAxis"},{feature:Kn,opt:"preferredTemporalAxis"},{feature:Re,opt:"preferredTemporalAxis"},{feature:Ft,opt:"preferredTemporalAxis"},{feature:Dt,opt:"preferredOrdinalAxis"},{feature:_t,opt:"preferredNominalAxis"}].forEach(n=>{e[n.opt]==="x"?t[n.feature+"_y"]=-.01:e[n.opt]==="y"&&(t[n.feature+"_x"]=-.01)}),t}featurize(e,t){return e+"_"+t}getScore(e,t,n){return e.getEncodings().reduce((r,a)=>{if(O(a)||P(a)){let i=Pt(a),s=this.featurize(i,a.channel),c=this.getFeatureScore(s);c&&r.push(c)}return r},[])}},Kc=class extends Pe{constructor(){super("Dimension")}initScore(){return{row:-2,column:-2,color:0,opacity:0,size:0,shape:0}}getScore(e,t,n){return e.isAggregate()&&e.getEncodings().reduce((r,a)=>{if(P(a)||O(a)&&!a.aggregate){let i=this.getFeatureScore(a.channel+"");if(i&&i.score>r.score)return i}return r},{type:"Dimension",feature:"No Dimension",score:-5}),[]}},Jc=class extends Pe{constructor(){super("Facet")}initScore(e){e=Object.assign({},Qe,e);let t={};return e.preferredFacet==="row"?t[Se]=-.01:e.preferredFacet==="column"&&(t.row=-.01),t}getScore(e,t,n){return e.getEncodings().reduce((r,a)=>{if(O(a)||P(a)){let i=this.getFeatureScore(a.channel);i&&r.push(i)}return r},[])}},Xc=class extends Pe{constructor(){super("SizeChannel")}initScore(){return{bar_size:-2,tick_size:-2}}getScore(e,t,n){let r=e.getMark();return e.getEncodings().reduce((a,i)=>{if(O(i)||P(i)){let s=r+"_"+i.channel,c=this.getFeatureScore(s);c&&a.push(c)}return a},[])}},Zc=class extends Pe{constructor(){super("TypeChannel")}initScore(){let e={},t={x:0,y:0,size:-.575,color:-.725,text:-2,opacity:-3,shape:-10,row:-10,column:-10,detail:-20};[ua,Kn,Re].forEach(a=>{(0,U.keys)(t).forEach(i=>{e[this.featurize(a,i)]=t[i]})});let n=(0,U.extend)({},t,{row:-.75,column:-.75,shape:-3.1,text:-3.2,detail:-4});[Ut,Ft,Dt].forEach(a=>{(0,U.keys)(n).forEach(i=>{e[this.featurize(a,i)]=n[i]})});let r={x:0,y:0,color:-.6,shape:-.65,row:-.7,column:-.7,text:-.8,detail:-2,size:-3,opacity:-3.1};return(0,U.keys)(r).forEach(a=>{e[this.featurize(_t,a)]=r[a],e[this.featurize(Jn,a)]=K(["x","y","detail"],a)?-1:r[a]-2}),e}featurize(e,t){return e+"_"+t}getScore(e,t,n){let r=e.getEncodings().reduce((i,s)=>{if(O(s)||P(s)){let c=hi(s);(i[c]=i[c]||[]).push(s)}return i},{}),a=[];return G(r,i=>{let s=i.reduce((c,h)=>{if(O(h)||P(h)){let o=Pt(h),l=this.featurize(o,h.channel),u=this.getFeatureScore(l);if(c===null||u.score>c.score)return u}return c},null);a.push(s)}),a}},eu=class extends Pe{constructor(){super("Mark")}initScore(){return tu()}getScore(e,t,n){let r=e.getMark();(r==="circle"||r==="square")&&(r=ze);let a=e.getEncodingQueryByChannel("x"),i=a?Pt(a):jt,s=e.getEncodingQueryByChannel("y"),c=s?Pt(s):jt,h=!e.isAggregate(),o=i+"_"+c+"_"+h+"_"+r,l=this.getFeatureScore(o);return l?[l]:(console.error("feature score missing for",o),[])}};function $(e,t,n,r){return e+"_"+t+"_"+n+"_"+r}function tu(){let e=[ua,Kn],t=[Ut,Ft,Dt,_t,Jn,jt],n={};e.forEach(r=>{e.forEach(a=>{G({point:0,text:-.2,tick:-.5,rect:-1,bar:-2,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!0,s);n[c]=i}),G({point:0,text:-.2,tick:-.5,bar:-2,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!1,s);n[c]=i})})}),e.forEach(r=>{t.forEach(a=>{G({tick:0,point:-.2,text:-.5,bar:-2,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!0,s);n[c]=i;let h=$(a,r,!0,s);n[h]=i})}),[Re].forEach(a=>{G({point:0,text:-.5,tick:-1,bar:-2,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!0,s);n[c]=i;let h=$(a,r,!0,s);n[h]=i})}),[jt,_t,Dt,Jn].forEach(a=>{G({bar:0,point:-.2,tick:-.25,text:-.3,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!1,s);n[c]=i;let h=$(a,r,!1,s);n[h]=i})}),[Ut].forEach(a=>{G({bar:0,point:-.2,tick:-.25,text:-.3,line:-.5,area:-.5,rule:-2.5},(i,s)=>{let c=$(r,a,!1,s);n[c]=i;let h=$(a,r,!1,s);n[h]=i})}),[Re,Ft].forEach(a=>{G({line:0,area:-.1,bar:-.2,point:-.3,tick:-.35,text:-.4,rule:-2.5},(i,s)=>{let c=$(r,a,!1,s);n[c]=i;let h=$(a,r,!1,s);n[h]=i})})}),[Re].forEach(r=>{[Re].forEach(a=>{let i={point:0,rect:-.1,text:-.5,tick:-1,bar:-2,line:-2,area:-2,rule:-2.5};G(i,(s,c)=>{let h=$(r,a,!0,c);n[h]=s}),G(i,(s,c)=>{let h=$(r,a,!1,c);n[h]=s})}),t.forEach(a=>{let i={tick:0,point:-.2,text:-.5,rect:-1,bar:-2,line:-2,area:-2,rule:-2.5};G(i,(s,c)=>{let h=$(r,a,!0,c);n[h]=s}),G(i,(s,c)=>{let h=$(a,r,!0,c);n[h]=s}),G(i,(s,c)=>{let h=$(r,a,!1,c);n[h]=s}),G(i,(s,c)=>{let h=$(a,r,!1,c);n[h]=s})})});for(let r of t)for(let a of t){let i={point:0,rect:0,text:-.1,tick:-1,bar:-2,line:-2,area:-2,rule:-2.5};G(i,(s,c)=>{let h=$(r,a,!0,c);n[h]=s}),G(i,(s,c)=>{let h=$(r,a,!1,c);n[h]=s})}return n}var nu=[new Vc,new Kc,new Jc,new eu,new Xc,new Zc];function ru(e,t,n){let r=nu.reduce((a,i)=>{let s=i.getScore(e,t,n);return a.concat(s)},[]);return{score:r.reduce((a,i)=>a+i.score,0),features:r}}const be="aggregationQuality";function iu(e,t,n){let r=au(e,t,n);return{score:r.score,features:[r]}}function au(e,t,n){let r=e.getEncodings();if(e.isAggregate()){if(ue(r,a=>O(a)&&(a.type==="quantitative"&&!a.bin&&!a.aggregate||a.type==="temporal"&&!a.timeUnit)))return{type:be,score:.1,feature:"Aggregate with raw continuous"};if(ue(r,a=>O(a)&&ve(a))){let a=ue(r,s=>O(s)&&s.aggregate==="count"||Tt(s)),i=ue(r,s=>O(s)&&!!s.bin);return a?{type:be,score:.8,feature:"Aggregate with count"}:i?{type:be,score:.7,feature:"Aggregate with bin but without count"}:{type:be,score:.9,feature:"Aggregate without count and without bin"}}return{type:be,score:.3,feature:"Aggregate without dimension"}}else return ue(r,a=>O(a)&&!ve(a))?{type:be,score:1,feature:"Raw with measure"}:{type:be,score:.2,feature:"Raw without measure"}}function ou(e,t,n){let r=e.wildcardIndex.encodingIndicesByProperty.get("field");if(!r)return{score:0,features:[]};let a=e.specQuery.encodings,i=t.fieldSchemas.length,s=[],c=0,h=1;for(let o=r.length-1;o>=0;o--){let l=r[o],u=a[l],d;if(O(u))d=u.field;else continue;let p=e.wildcardIndex.encodings[l].get("field"),f=t.fieldSchema(d).index,g=-f*h;c+=g,s.push({score:g,type:"fieldOrder",feature:`field ${p.name} is ${d} (#${f} in the schema)`}),h*=i}return{score:c,features:s}}var da={};function Xn(e,t){da[e]=t}function su(e){return da[e]}function fa(e,t,n,r){return!t.nest||r===t.nest.length?(t.orderBy||t.chooseBy)&&(e.items.sort(lu(t.orderBy||t.chooseBy,n,t.config)),t.chooseBy&&e.items.length>0&&e.items.splice(1)):(e.items.forEach(a=>{fa(a,t,n,r+1)}),t.nest[r].orderGroupBy&&e.items.sort(cu(t.nest[r].orderGroupBy,n,t.config))),e}function lu(e,t,n){return(r,a)=>e instanceof Array?Rt(e,r,a,t,n):Rt([e],r,a,t,n)}function cu(e,t,n){return(r,a)=>{let i=Vn(r),s=Vn(a);return e instanceof Array?Rt(e,i,s,t,n):Rt([e],i,s,t,n)}}function Rt(e,t,n,r,a){for(let i of e){let s=pa(n,i,r,a).score-pa(t,i,r,a).score;if(s!==0)return s}return 0}function pa(e,t,n,r){if(e.getRankingScore(t)!==void 0)return e.getRankingScore(t);let a=su(t)(e,n,r);return e.setRankingScore(t,a),a}Xn("effectiveness",ru),Xn(be,iu),Xn("fieldOrder",ou);function uu(e,t,n){let r={};return e=e.map(function(a){return n.smallRangeStepForHighCardinalityOrFacet&&(a=du(a,t,r,n)),n.nominalColorScaleForHighCardinality&&(a=fu(a,t,r,n)),n.xAxisOnTopForHighYCardinalityWithoutColumn&&(a=pu(a,t,r,n)),a}),e}function du(e,t,n,r){["row","y",Se,"x"].forEach(s=>{n[s]=e.getEncodingQueryByChannel(s)});let a=n.y;if(a!==void 0&&O(a)&&(n.row||t.cardinality(a)>r.smallRangeStepForHighCardinalityOrFacet.maxCardinality)){a.scale===void 0&&(a.scale={});let s=Oe(a);a.scale&&(s===void 0||we(s))&&(a.scale.rangeStep||(a.scale.rangeStep=12))}let i=n.x;if(O(i)&&(n.column||t.cardinality(i)>r.smallRangeStepForHighCardinalityOrFacet.maxCardinality)){i.scale===void 0&&(i.scale={});let s=Oe(i);i.scale&&(s===void 0||we(s))&&(i.scale.rangeStep||(i.scale.rangeStep=12))}return e}function fu(e,t,n,r){n[ce]=e.getEncodingQueryByChannel(ce);let a=n[ce];return O(a)&&a!==void 0&&(a.type==="nominal"||a.type===se.KEY)&&t.cardinality(a)>r.nominalColorScaleForHighCardinality.maxCardinality&&(a.scale===void 0&&(a.scale={}),a.scale&&(a.scale.range||(a.scale.scheme=r.nominalColorScaleForHighCardinality.palette))),e}function pu(e,t,n,r){if([Se,"x","y"].forEach(a=>{n[a]=e.getEncodingQueryByChannel(a)}),n.column===void 0){let a=n.x,i=n.y;O(a)&&O(i)&&i!==void 0&&i.field&&we(Oe(i))&&a!==void 0&&t.cardinality(i)>r.xAxisOnTopForHighYCardinalityWithoutColumn.maxCardinality&&(a.axis===void 0&&(a.axis={}),a.axis&&!a.axis.orient&&(a.axis.orient="top"))}return e}function hu(e,t,n=Qe){let r=Yc.build(e,t,n),a=r.wildcardIndex,i=[r];return n.propertyPrecedence.forEach(s=>{let c=sl(s);if(a.hasProperty(c)){let h=$c(c)(a,t,n);i=i.reduce(h,[])}}),n.stylize&&(n.nominalColorScaleForHighCardinality!==null||n.smallRangeStepForHighCardinalityOrFacet!==null||n.xAxisOnTopForHighYCardinalityWithoutColumn!==null)?uu(i,t,n):i}function ha(e,t,n){e=Object.assign({},Qc(e),{config:Object.assign({},Qe,n,e.config)});let r=fa(qc(hu(e.spec,t,e.config),e.nest),e,t,0);return{query:e,result:r}}var Zn=Xe(Ia(),1),E=Xe(Ga(),1);const $e={[R.BOOLEAN]:(0,E.jsx)(Fa,{className:"h-5 w-5 inline-flex opacity-60"}),[R.DATETIME]:(0,E.jsx)(Da,{className:"h-5 w-5 inline-flex opacity-60"}),[R.NUMBER]:(0,E.jsx)(Ua,{className:"h-5 w-5 inline-flex opacity-60"}),[R.STRING]:(0,E.jsx)(_a,{className:"h-5 w-5 inline-flex opacity-60"}),[R.INTEGER]:(0,E.jsx)(ao,{className:"h-5 w-5 inline-flex opacity-60"})};var ma=12;const mu=e=>{let t=(0,gr.c)(45),{schema:n}=e,[r,a]=(0,Zn.useState)(),[i,s]=(0,Zn.useState)(),c,h,o,l,u,d,p,f;if(t[0]!==n||t[1]!==r||t[2]!==i){c=n.fieldNames();let k;t[11]!==n||t[12]!==r?(k=r?n.stats({field:r,channel:"x"}):void 0,t[11]=n,t[12]=r,t[13]=k):k=t[13],o=k;let I;t[14]===Symbol.for("react.memo_cache_sentinel")?(I=(0,E.jsx)(io,{className:"text-muted-foreground",width:40,height:40,strokeWidth:1.5}),t[14]=I):I=t[14];let _=I,xe=i?c:c.slice(0,ma);h=c.length>ma,d="flex flex-col justify-center items-center h-full flex-1 gap-2",p=_,f=(0,E.jsxs)("span",{className:"text-muted-foreground font-semibold",children:[c.length>0?c.length:"No"," fields"]}),l="hidden lg:grid grid-cols-2 xl:grid-cols-3 gap-2 p-2 bg-(--slate-1) border rounded lg:items-center items-start w-fit grid-flow-dense max-h-[300px] overflow-auto";let X;t[15]!==n||t[16]!==r?(X=W=>{let fe=n.cardinality({channel:"x",field:W});return(0,E.jsxs)("span",{className:cr("hover:bg-muted self-start px-2 py-2 rounded flex flex-row gap-1 items-center cursor-pointer lg:justify-center text-sm truncate shrink-0 overflow-hidden",r===W&&"bg-muted"),onClick:()=>{if(r===W){a(void 0);return}a(W)},children:[$e[n.primitiveType(W)],W,fe>1&&(0,E.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",fe,")"]})]},W)},t[15]=n,t[16]=r,t[17]=X):X=t[17],u=xe.map(X),t[0]=n,t[1]=r,t[2]=i,t[3]=c,t[4]=h,t[5]=o,t[6]=l,t[7]=u,t[8]=d,t[9]=p,t[10]=f}else c=t[3],h=t[4],o=t[5],l=t[6],u=t[7],d=t[8],p=t[9],f=t[10];let g;t[18]!==h||t[19]!==i?(g=h&&(0,E.jsx)(lr,{"data-testid":"marimo-plugin-data-explorer-show-more-columns",variant:"link",size:"sm",className:"self-center col-span-3 -mt-1",onClick:()=>s(vu),children:i?"Show less":"Show more"}),t[18]=h,t[19]=i,t[20]=g):g=t[20];let y;t[21]!==l||t[22]!==u||t[23]!==g?(y=(0,E.jsxs)("div",{className:l,children:[u,g]}),t[21]=l,t[22]=u,t[23]=g,t[24]=y):y=t[24];let v=r||"",b=c.length===0,x;t[25]===Symbol.for("react.memo_cache_sentinel")?(x=k=>{a(k)},t[25]=x):x=t[25];let S;t[26]===Symbol.for("react.memo_cache_sentinel")?(S=(0,E.jsx)(et,{className:"min-w-[210px] h-full",children:(0,E.jsx)(pr,{placeholder:"Select a column"})}),t[26]=S):S=t[26];let C;t[27]===n?C=t[28]:(C=n.fieldNames().map(k=>(0,E.jsx)(Te,{value:k.toString(),children:(0,E.jsxs)("span",{className:"flex items-center gap-2 flex-1",children:[$e[n.primitiveType(k)],(0,E.jsx)("span",{className:"flex-1",children:k}),(0,E.jsxs)("span",{className:"text-muted-foreground text-xs font-semibold",children:["(",n.vlType(k),")"]})]})},k)),t[27]=n,t[28]=C);let T;t[29]===C?T=t[30]:(T=(0,E.jsx)(Ze,{children:(0,E.jsx)(Le,{children:C})}),t[29]=C,t[30]=T);let w;t[31]!==T||t[32]!==v||t[33]!==b?(w=(0,E.jsx)("div",{className:"lg:hidden",children:(0,E.jsxs)(tt,{"data-testid":"marimo-plugin-data-explorer-column-select",value:v,disabled:b,onValueChange:x,children:[S,T]})}),t[31]=T,t[32]=v,t[33]=b,t[34]=w):w=t[34];let N;t[35]!==r||t[36]!==o?(N=r&&(0,E.jsx)("div",{className:"grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-3 gap-2 p-2 text-sm",children:gu.map(k=>(0,E.jsxs)("div",{className:"flex flex-row gap-2 min-w-[100px]",children:[(0,E.jsx)("span",{className:"font-semibold",children:k}),(0,E.jsx)("span",{children:(0,E.jsx)(yu,{value:o==null?void 0:o[k]})})]},k))}),t[35]=r,t[36]=o,t[37]=N):N=t[37];let D;return t[38]!==w||t[39]!==N||t[40]!==d||t[41]!==p||t[42]!==f||t[43]!==y?(D=(0,E.jsxs)("div",{className:d,children:[p,f,y,w,N]}),t[38]=w,t[39]=N,t[40]=d,t[41]=p,t[42]=f,t[43]=y,t[44]=D):D=t[44],D};var gu=["distinct","min","max","mean","median","q1","q3","stdev"],yu=e=>{let t=(0,gr.c)(8),{value:n}=e,r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r={maximumFractionDigits:2},t[0]=r):r=t[0];let a=Za(r),i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i={year:"numeric",month:"short",day:"numeric"},t[1]=i):i=t[1];let s=Xa(i);if(typeof n=="number"){let c;return t[2]!==a||t[3]!==n?(c=a.format(n),t[2]=a,t[3]=n,t[4]=c):c=t[4],c}if(typeof n=="string")return n;if(typeof n=="object"&&n instanceof Date){let c;return t[5]!==s||t[6]!==n?(c=s.format(n),t[5]=s,t[6]=n,t[7]=c):c=t[7],c}return String(n)};function vu(e){return!e}var bu=["argmax","argmin","average","count","distinct","exponential","exponentialb","product","max","mean","median","min","missing","q1","q3","ci0","ci1","stderr","stdev","stdevp","sum","valid","values","variance","variancep"];const xu=e=>Ra(e)?bu.includes(e):!1;function Eu(e){return e?e==="bin"?{bin:!0}:xu(e)?{aggregate:e}:Tu(e)?{timeUnit:e}:{}:{}}function Tu(e){return e?ga.includes(e)||ya.includes(e):!1}const Su=["bin","min","max","mean","median","sum"],ga=["year","month","date","day","hours","minutes","seconds","milliseconds"],ya=["yearmonth","yearmonthdate","monthdate"];function Nu(e){let{aggregate:t,bin:n,timeUnit:r}=e;if(n)return"bin";if(t)return t.toString();if(r)return r.toString()}const Cu=["?","area","bar","circle","geoshape","line","point","rect","rule","square","text","tick","trail"],wu={type:"histograms",limit:12,createQuery(e){return{spec:{data:e.spec.data,mark:"?",transform:e.spec.transform,encodings:[{channel:"?",bin:"?",timeUnit:"?",field:"?",type:"?"},{channel:"?",aggregate:"count",field:"*",type:"quantitative"}]},groupBy:"fieldTransform",orderBy:["fieldOrder","aggregationQuality","effectiveness"],chooseBy:["aggregationQuality","effectiveness"],config:{autoAddCount:!1}}}};function va(e){let t={};for(let n in e)e[n]!==void 0&&(t[n]=e[n]);return t}function Au(e,t){let{fn:n,...r}=e;return{channel:t,...Eu(n),...r}}function Ou(e){let{aggregate:t,bin:n,timeUnit:r,field:a,scale:i,legend:s,axis:c,sort:h,description:o}=e,{type:l}=e;if(A(l))throw Error("Wildcard not support");l==="ordinal"&&(qa.warn("Ordinal type is not supported. Using nominal type instead."),l="nominal");let u=Nu({aggregate:t,bin:n,timeUnit:r});return Ha(a!==void 0,"Field is required for fieldQ"),va({field:a,fn:u,type:l,sort:h,scale:i,axis:c,legend:s,description:o})}function ku(e){return{mark:e.mark,encodings:Mu(e.encoding),config:e.config}}function Mu(e){return e?Object.entries(e).map(([t,n])=>Au(n,t)):[]}function er(e){let{type:t,limit:n,additionalFieldQuery:r}=e;return{type:t,limit:n,createQuery(a){return{spec:{...a.spec,encodings:[...a.spec.encodings,r]},groupBy:"field",orderBy:["fieldOrder","aggregationQuality","effectiveness"],chooseBy:["aggregationQuality","effectiveness"],config:{autoAddCount:!0}}}}}const Iu=er({type:"addCategoricalField",limit:4,additionalFieldQuery:{channel:"?",field:"?",type:"nominal"}}),Uu=er({type:"addQuantitativeField",limit:4,additionalFieldQuery:{channel:"?",bin:"?",aggregate:"?",field:"?",type:"quantitative"}}),Fu=er({type:"addTemporalField",limit:2,additionalFieldQuery:{channel:"?",hasFn:!0,timeUnit:"?",field:"?",type:"temporal"}}),Du=["color","fill","stroke","opacity","fillOpacity","strokeOpacity","strokeWidth","size","shape","strokeDash","angle","time"];function _u(e){return!xa(e).hasAnyWildcard}function ju(e){let t=["x","y","color"],n=["row","column"],r=new Set(e.encodings.map(s=>s.channel)),a=t.every(s=>r.has(s)),i=n.some(s=>r.has(s));return a&&i}function ba(e){return e.encodings.length===0}function xa(e){let t=!1,n=!1,r=!1;for(let a of e.encodings)re(a)||(P(a)?A(a.autoCount)&&(n=!0):(A(a.field)&&(t=!0),(A(a.aggregate)||A(a.bin)||A(a.timeUnit))&&(n=!0),A(a.channel)&&(r=!0)));return{hasAnyWildcard:r||t||n,hasWildcardField:t,hasWildcardFn:n,hasWildcardChannel:r}}var Ea={name:"source"};function Pu(e){let t=!1,n=!1,r=!1;return e.encodings.forEach(a=>{a.channel==="x"||a.channel==="y"?t=!0:a.channel==="row"||a.channel==="column"?r=!0:typeof a.channel=="string"&&eo(Du,a.channel)&&(n=!0)}),{hasOpenPosition:t,hasStyleChannel:n,hasOpenFacet:r}}function Ru(e,t){let n={},{hasOpenPosition:r,hasStyleChannel:a,hasOpenFacet:i}=Pu(e.spec);return(r||a)&&(n.addQuantitativeField=$t(Uu,e,t)),(r||a||i)&&(n.addCategoricalField=$t(Iu,e,t)),r&&(n.addTemporalField=$t(Fu,e,t)),n}function tr(e,t){if(ba(e.spec))return{plots:[],query:e,limit:1};let n=ha(e,t).result;return{plots:[Ta(n,Ea)[0]],query:e,limit:1}}function $t(e,t,n){let r=e.createQuery(t),a=ha(r,n).result;return{plots:Ta(a,Ea),query:r,limit:e.limit}}function Ta(e,t){return e.items.map(n=>ca(n)?Sa(t,Vn(n)):Sa(t,n))}function Sa(e,t){return{fieldInfos:t.getEncodings().filter(O).map(n=>({fieldDef:Ou(n),channel:n.channel})),spec:t.toSpec(e)}}function $u(e){let{spec:t,autoAddCount:n}=e,r=ku(t),{hasAnyWildcard:a,hasWildcardFn:i,hasWildcardField:s}=xa(r);return{spec:r,groupBy:Bu({hasWildcardFn:i,hasWildcardField:s}),orderBy:["fieldOrder","aggregationQuality","effectiveness"],chooseBy:["aggregationQuality","effectiveness"],config:a?{autoAddCount:n}:void 0}}function Bu(e){let{hasWildcardFn:t,hasWildcardField:n}=e;return t?"fieldTransform":n?"field":"encoding"}function Lu(){return{mark:"?",encoding:{},config:{},schema:null}}var{valueAtom:Be,useActions:Wu}=za(Lu,{setSchema:(e,t)=>({...e,schema:t}),setMark:(e,t)=>({...e,mark:t}),setEncoding:(e,t)=>{let n=va({...e.encoding,...t});return{...e,encoding:n}},set:(e,t)=>{let{schema:n,...r}=t;return{...e,...r}}});function Na(){return Wu()}const qu=Ma(e=>{let t=e(Be);if(!t.schema)return{};let n=$u({spec:t,autoAddCount:!0});return ba(n.spec)?{main:tr(n,t.schema),histograms:$t(wu,n,t.schema)}:_u(n.spec)&&!ju(n.spec)?{main:tr(n,t.schema),...Ru(n,t.schema)}:{main:tr(n,t.schema)}});var nr=Wt(),Hu=["x","y","row","column"],Gu=["color","size","shape"];const zu=e=>{let t=(0,nr.c)(26),{schema:n,mark:r}=e,a=Lt(Be),i=Na(),s=a.encoding.x&&a.encoding.y,c;t[0]!==i||t[1]!==s||t[2]!==n||t[3]!==a.encoding?(c=C=>(0,E.jsx)(Yu,{schema:n,label:C,disabled:(C==="row"||C==="column")&&!s,fieldDefinition:a.encoding[C],onChange:T=>i.setEncoding({[C]:T})},C),t[0]=i,t[1]=s,t[2]=n,t[3]=a.encoding,t[4]=c):c=t[4];let h=c,o;t[5]===r?o=t[6]:(o=r.toString(),t[5]=r,t[6]=o);let l;t[7]===i?l=t[8]:(l=C=>i.setMark(C),t[7]=i,t[8]=l);let u;t[9]===Symbol.for("react.memo_cache_sentinel")?(u=(0,E.jsx)(et,{children:(0,E.jsx)(pr,{placeholder:"Mark"})}),t[9]=u):u=t[9];let d;t[10]===Symbol.for("react.memo_cache_sentinel")?(d=(0,E.jsx)(Ze,{children:(0,E.jsxs)(Le,{children:[(0,E.jsx)(fr,{children:"Mark"}),Cu.map(Vu)]})}),t[10]=d):d=t[10];let p;t[11]!==o||t[12]!==l?(p=(0,E.jsxs)(tt,{"data-testid":"marimo-plugin-data-explorer-mark-select",value:o,onValueChange:l,children:[u,d]}),t[11]=o,t[12]=l,t[13]=p):p=t[13];let f=p,g;t[14]===Symbol.for("react.memo_cache_sentinel")?(g=(0,E.jsx)("span",{className:"col-span-2 flex items-center justify-between w-full",children:(0,E.jsx)("div",{className:"text-sm font-semibold",children:"Encodings"})}),t[14]=g):g=t[14];let y;t[15]===h?y=t[16]:(y=Hu.map(h),t[15]=h,t[16]=y);let v;t[17]===Symbol.for("react.memo_cache_sentinel")?(v=(0,E.jsx)("div",{children:"Mark"}),t[17]=v):v=t[17];let b;t[18]===f?b=t[19]:(b=(0,E.jsxs)("span",{className:"col-span-2 text-sm font-semibold w-full border-t border-divider flex items-center justify-between pt-2 pr-[30px]",children:[v,f]}),t[18]=f,t[19]=b);let x;t[20]===h?x=t[21]:(x=Gu.map(h),t[20]=h,t[21]=x);let S;return t[22]!==b||t[23]!==x||t[24]!==y?(S=(0,E.jsxs)("div",{className:"grid gap-x-2 gap-y-4 justify-items-start py-3 pl-4 pr-2 bg-(--slate-1) border rounded items-center grid-template-columns-[repeat(2,_minmax(0,_min-content))] self-start",children:[g,y,b,x]}),t[22]=b,t[23]=x,t[24]=y,t[25]=S):S=t[25],S};var Yu=e=>{let t=(0,nr.c)(43),{label:n,schema:r,fieldDefinition:a,disabled:i,onChange:s}=e,c;t[0]!==a||t[1]!==r?(c=()=>{if(!a)return"--";if(a.field==="*")return(0,E.jsxs)("span",{className:"flex gap-2 flex-1",children:[$e[R.NUMBER],(0,E.jsx)("span",{className:"text-left flex-1",children:"Count"})]});let _=a.field.toString();return(0,E.jsxs)("span",{className:"flex gap-2 flex-1",children:[$e[r.primitiveType(_)],(0,E.jsx)("span",{className:"text-left flex-1",children:a.fn?`${a.fn}(${a.field})`:_})]})},t[0]=a,t[1]=r,t[2]=c):c=t[2];let h=c,o;t[3]===s?o=t[4]:(o=()=>{s(void 0)},t[3]=s,t[4]=o);let l=o,u;t[5]===(a==null?void 0:a.field)?u=t[6]:(u=(a==null?void 0:a.field.toString())??"",t[5]=a==null?void 0:a.field,t[6]=u);let d=u,p;t[7]===n?p=t[8]:(p=(0,E.jsx)(ro,{className:"text-(--slate-11) font-semibold",children:n}),t[7]=n,t[8]=p);let f;t[9]!==s||t[10]!==r?(f=_=>{s(_==="*"?{field:"*",fn:"count",type:"quantitative"}:{field:_,type:r.vlType(_)})},t[9]=s,t[10]=r,t[11]=f):f=t[11];let g=d?l:void 0,y;t[12]===h?y=t[13]:(y=h(),t[12]=h,t[13]=y);let v;t[14]!==g||t[15]!==y?(v=(0,E.jsx)(et,{className:"min-w-[140px] lg:min-w-[210px] h-full",onClear:g,children:y}),t[14]=g,t[15]=y,t[16]=v):v=t[16];let b;t[17]===r?b=t[18]:(b=r.fieldNames().map(_=>(0,E.jsx)(Te,{value:_.toString(),children:(0,E.jsxs)("span",{className:"flex items-center gap-2 flex-1",children:[$e[r.primitiveType(_)],(0,E.jsx)("span",{className:"flex-1",children:_}),(0,E.jsxs)("span",{className:"text-muted-foreground text-xs font-semibold",children:["(",r.vlType(_),")"]})]})},_)),t[17]=r,t[18]=b);let x;t[19]===r?x=t[20]:(x=r.fieldNames().length===0&&(0,E.jsx)(Te,{disabled:!0,value:"--",children:"No columns"}),t[19]=r,t[20]=x);let S;t[21]===Symbol.for("react.memo_cache_sentinel")?(S=(0,E.jsx)(hr,{}),t[21]=S):S=t[21];let C;t[22]===Symbol.for("react.memo_cache_sentinel")?(C=(0,E.jsx)(Te,{value:"*",children:(0,E.jsxs)("span",{className:"flex items-center gap-1 flex-1",children:[$e[R.NUMBER],(0,E.jsx)("span",{className:"flex-1",children:"Count"})]})},"*"),t[22]=C):C=t[22];let T;t[23]!==x||t[24]!==b?(T=(0,E.jsx)(Ze,{children:(0,E.jsxs)(Le,{children:[b,x,S,C]})}),t[23]=x,t[24]=b,t[25]=T):T=t[25];let w;t[26]!==i||t[27]!==d||t[28]!==T||t[29]!==f||t[30]!==v?(w=(0,E.jsxs)(tt,{value:d,disabled:i,onValueChange:f,children:[v,T]}),t[26]=i,t[27]=d,t[28]=T,t[29]=f,t[30]=v,t[31]=w):w=t[31];let N;t[32]!==a||t[33]!==s?(N=a&&(0,E.jsx)(Qu,{field:a,onChange:s}),t[32]=a,t[33]=s,t[34]=N):N=t[34];let D;t[35]===N?D=t[36]:(D=(0,E.jsx)("div",{className:"w-[26px]",children:N}),t[35]=N,t[36]=D);let k;t[37]!==w||t[38]!==D?(k=(0,E.jsxs)("div",{className:"flex flex-row gap-1 h-[26px]",children:[w,D]}),t[37]=w,t[38]=D,t[39]=k):k=t[39];let I;return t[40]!==k||t[41]!==p?(I=(0,E.jsxs)(E.Fragment,{children:[p,k]}),t[40]=k,t[41]=p,t[42]=I):I=t[42],I},rr="__",Qu=e=>{let t=(0,nr.c)(10),{field:n,onChange:r}=e;if(n.field==="*")return null;let a;if(t[0]!==n||t[1]!==r){a=Symbol.for("react.early_return_sentinel");e:{let i=[];if(n.type===se.QUANTITATIVE&&(i=[["",Su]]),n.type===se.TEMPORAL&&(i=[["Single",ga],["Multi",ya]]),i.length>0){let s=d=>{r({...n,fn:d===rr?void 0:d})},c;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,E.jsx)(et,{className:"h-full px-1",hideChevron:!0,variant:"ghost",children:(0,E.jsx)(Qa,{size:14,strokeWidth:1.5})}),t[3]=c):c=t[3];let h,o;t[4]===Symbol.for("react.memo_cache_sentinel")?(h=(0,E.jsx)(Le,{children:(0,E.jsx)(Te,{value:rr,children:"None"})}),o=(0,E.jsx)(hr,{}),t[4]=h,t[5]=o):(h=t[4],o=t[5]);let l=(0,E.jsxs)(Ze,{children:[h,o,i.map(Ju)]}),u;t[6]!==n.fn||t[7]!==s||t[8]!==l?(u=(0,E.jsxs)(tt,{"data-testid":"marimo-plugin-data-explorer-field-options",value:n.fn,onValueChange:s,children:[c,l]}),t[6]=n.fn,t[7]=s,t[8]=l,t[9]=u):u=t[9],a=u;break e}}t[0]=n,t[1]=r,t[2]=a}else a=t[2];return a===Symbol.for("react.early_return_sentinel")?null:a};function Vu(e){return(0,E.jsx)(Te,{value:e,children:e==="?"?"auto":e},e)}function Ku(e){return(0,E.jsx)(Te,{value:e??rr,children:ja(e)},e)}function Ju(e){let[t,n]=e;return(0,E.jsxs)(Le,{children:[t&&(0,E.jsx)(fr,{children:t}),n.map(Ku)]},t)}var Bt=Wt(),Xu=e=>{let t=(0,Bt.c)(5),n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n=ka(),t[0]=n):n=t[0];let r=n,a;t[1]===e?a=t[2]:(a=()=>{let s=r.sub(Be,()=>{let{schema:h,...o}=r.get(Be);e.setValue(o)}),c=e.value;return c&&Object.keys(c).length>0&&r.set(Be,c),s},t[1]=e,t[2]=a),Pa(a);let i;return t[3]===e?i=t[4]:(i=(0,E.jsx)(Oa,{store:r,children:(0,E.jsx)(wa,{...e})}),t[3]=e,t[4]=i),i};function Ca(e){return{padding:{left:20,right:20,top:20,bottom:20},actions:{export:{svg:!0,png:!0},source:!1,compiled:!1,editor:!1},theme:e==="dark"?"dark":void 0,tooltip:Ba.call,renderer:"canvas"}}var Zu=Xu;const wa=e=>{var xe,X,W,fe,Ee,pe;let t=(0,Bt.c)(43),{data:n}=e,r=Na(),a;t[0]!==r||t[1]!==n?(a=async()=>{if(!n)return{};let M=await $a(n,{type:"csv",parse:"auto"},{replacePeriod:!0}),Y=Mc(M);return r.setSchema(Y),{chartData:M,schema:Y}},t[0]=r,t[1]=n,t[2]=a):a=t[2];let i;t[3]===n?i=t[4]:(i=[n],t[3]=n,t[4]=i);let{data:s,isPending:c,error:h}=no(a,i),{mark:o}=Lt(Be),l=Lt(qu),{theme:u}=Ka();if(h){let M;return t[5]===h?M=t[6]:(M=(0,E.jsx)(to,{error:h}),t[5]=h,t[6]=M),M}if(!s){let M;return t[7]===Symbol.for("react.memo_cache_sentinel")?(M=(0,E.jsx)("div",{}),t[7]=M):M=t[7],M}let{chartData:d,schema:p}=s;if(c||!p){let M;return t[8]===Symbol.for("react.memo_cache_sentinel")?(M=(0,E.jsx)("div",{}),t[8]=M):M=t[8],M}let f=(X=(xe=l.main)==null?void 0:xe.plots)==null?void 0:X[0],g;t[9]===(f==null?void 0:f.fieldInfos)?g=t[10]:(g=new Set(f==null?void 0:f.fieldInfos.map(rd)),t[9]=f==null?void 0:f.fieldInfos,t[10]=g);let y=g,v;t[11]!==d||t[12]!==f||t[13]!==p||t[14]!==u?(v=()=>{if(!f)return(0,E.jsx)(mu,{schema:p});let M=f.spec,Y=dr(nd(M),d);return(0,E.jsx)("div",{className:cr("flex overflow-y-auto justify-center items-center flex-1 w-[90%]"),children:(0,E.jsx)(mr,{"data-container-width":La(Y),spec:Y,options:Ca(u)})})},t[11]=d,t[12]=f,t[13]=p,t[14]=u,t[15]=v):v=t[15];let b=v,x;t[16]!==o||t[17]!==p?(x=(0,E.jsx)(zu,{mark:o,schema:p}),t[16]=o,t[17]=p,t[18]=x):x=t[18];let S;t[19]===b?S=t[20]:(S=b(),t[19]=b,t[20]=S);let C;t[21]!==x||t[22]!==S?(C=(0,E.jsxs)("div",{className:"flex items-center gap-2",children:[x,S]}),t[21]=x,t[22]=S,t[23]=C):C=t[23];let T=(W=l.histograms)==null?void 0:W.plots,w=(fe=l.addCategoricalField)==null?void 0:fe.plots,N=(Ee=l.addQuantitativeField)==null?void 0:Ee.plots,D=(pe=l.addTemporalField)==null?void 0:pe.plots,k;if(t[24]!==r||t[25]!==d||t[26]!==y||t[27]!==N||t[28]!==D||t[29]!==T||t[30]!==w||t[31]!==u){let M;t[33]!==r||t[34]!==d||t[35]!==y||t[36]!==u?(M=(Y,Je)=>(0,E.jsx)(td,{title:(0,E.jsx)("div",{className:"flex flex-row gap-1",children:Y.fieldInfos.map(he=>{let or=he.fieldDef.field==="*"?"Count":he.fieldDef.fn?`${he.fieldDef.fn}(${he.fieldDef.field})`:he.fieldDef.field.toString();return(0,E.jsx)(Va,{variant:y.has(he.fieldDef.field)?"secondary":"defaultOutline",children:or},or)})}),actions:(0,E.jsx)(Ja,{content:"Make main plot",children:(0,E.jsx)(lr,{"data-testid":"marimo-plugin-data-explorer-make-main-plot",variant:"text",size:"icon",onClick:()=>{let he=Wa.fromEntries(Y.fieldInfos.map(id));r.setEncoding(he)},children:(0,E.jsx)(Ya,{className:"w-4 h-4"})})}),children:(0,E.jsx)(mr,{options:Ca(u),spec:dr(Y.spec,d)},Je)},Je),t[33]=r,t[34]=d,t[35]=y,t[36]=u,t[37]=M):M=t[37],k=[T,w,N,D].filter(Boolean).flat().map(M),t[24]=r,t[25]=d,t[26]=y,t[27]=N,t[28]=D,t[29]=T,t[30]=w,t[31]=u,t[32]=k}else k=t[32];let I;t[38]===k?I=t[39]:(I=(0,E.jsx)(ed,{children:k}),t[38]=k,t[39]=I);let _;return t[40]!==I||t[41]!==C?(_=(0,E.jsxs)("div",{className:"flex flex-col gap-2",children:[C,I]}),t[40]=I,t[41]=C,t[42]=_):_=t[42],_};var ed=e=>{let t=(0,Bt.c)(2),{children:n}=e;if(Zn.Children.count(n)===0)return null;let r;return t[0]===n?r=t[1]:(r=(0,E.jsx)("div",{className:"flex flex-row overflow-x-auto overflow-y-hidden gap-4 snap-x pb-4",children:n}),t[0]=n,t[1]=r),r},td=e=>{let t=(0,Bt.c)(10),{title:n,children:r,actions:a}=e,i;t[0]===n?i=t[1]:(i=(0,E.jsx)("div",{className:"text-sm font-medium",children:n}),t[0]=n,t[1]=i);let s;t[2]!==a||t[3]!==i?(s=(0,E.jsxs)("div",{className:"flex flex-row justify-between items-center bg-(--slate-3) py-0.5 px-2",children:[i,a]}),t[2]=a,t[3]=i,t[4]=s):s=t[4];let c;t[5]===r?c=t[6]:(c=(0,E.jsx)("div",{className:"px-6 pt-2 max-h-[280px] overflow-y-auto",children:r}),t[5]=r,t[6]=c);let h;return t[7]!==s||t[8]!==c?(h=(0,E.jsxs)("div",{className:"shrink-0 bg-card shadow-md border overflow-hidden rounded snap-start",children:[s,c]}),t[7]=s,t[8]=c,t[9]=h):h=t[9],h};function nd(e){var t,n;return(t=e.encoding)!=null&&t.row||(n=e.encoding)!=null&&n.column||(e.width="container"),e}function rd(e){return e.fieldDef.field}function id(e){return[e.channel,e.fieldDef]}export{wa as DataExplorerComponent,Zu as default};
|
|
1
|
+
import{a as Aa,n as q,r as sr,s as Xe,t as le}from"./chunk-LvLJmgfZ.js";import{c as Oa,m as ka,p as Ma,u as Lt}from"./useEvent-O0nX5vok.js";import{t as Ia}from"./react-Bj1aDYRI.js";import"./react-dom-CSu739Rf.js";import{t as Wt}from"./compiler-runtime-B3qBwwSJ.js";import{a as Ua,i as Fa,o as Da,r as _a,s as ja,t as Pa}from"./useLifecycle-DA9DjSPo.js";import{t as Ra}from"./isString-C4t9bzpo.js";import{a as $a,r as Ba,t as La}from"./utils-BGl6s90X.js";import{c as Wa,m as qa}from"./useEventListener-Dy81QR4n.js";import{t as Ha}from"./invariant-CQUIhlu2.js";import{t as Ga}from"./jsx-runtime-icT_Ltz2.js";import{t as lr}from"./button-Ej3vmCIF.js";import{t as cr}from"./cn-BoaCR37F.js";import{t as za}from"./createReducer-Dvh64vBW.js";import{t as ur}from"./createLucideIcon-Cm-Z7dYr.js";import{t as dr}from"./spec-DbOXZaHd.js";import{n as Ya}from"./table-Od8PbuV-.js";import{t as Qa}from"./square-function-B-8YRDsr.js";import{t as Va}from"./badge-DPjNGpcf.js";import{r as Ka}from"./useTheme-BYu4ZPLV.js";import"./Combination-CXstThSr.js";import{a as fr,c as pr,i as Te,n as Ze,o as hr,r as Le,s as et,t as tt}from"./select-dNVaT2hT.js";import{t as Ja}from"./tooltip-BCGmr4TU.js";import{t as Xa}from"./useDateFormatter-BOFB4HZc.js";import{t as Za}from"./useNumberFormatter-Da4iNOMq.js";import"./vega-loader.browser-W8QXhYr5.js";import{i as eo,n as mr}from"./react-vega-CFucxlM_.js";import"./defaultLocale-D_LmbLH5.js";import"./defaultLocale-CvLIK2MU.js";import{n as to}from"./error-banner-D6woGaqN.js";import{n as no}from"./useAsyncData-VEt7lMhG.js";import{t as ro}from"./label-KlZhD0Wz.js";var io=ur("chart-column-big",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["rect",{x:"15",y:"5",width:"4",height:"12",rx:"1",key:"q8uenq"}],["rect",{x:"7",y:"8",width:"4",height:"9",rx:"1",key:"sr5ea"}]]),ao=ur("list-ordered",[["path",{d:"M11 5h10",key:"1cz7ny"}],["path",{d:"M11 12h10",key:"1438ji"}],["path",{d:"M11 19h10",key:"11t30w"}],["path",{d:"M4 4h1v5",key:"10yrso"}],["path",{d:"M4 9h2",key:"r1h2o0"}],["path",{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02",key:"xtkcd5"}]]),gr=Wt();function Ie(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]]);return n}var oo=le(((e,t)=>{var n=(function(){function r(p,f){return f!=null&&p instanceof f}var a;try{a=Map}catch{a=function(){}}var i;try{i=Set}catch{i=function(){}}var s;try{s=Promise}catch{s=function(){}}function c(p,f,g,y,v){typeof f=="object"&&(g=f.depth,y=f.prototype,v=f.includeNonEnumerable,f=f.circular);var b=[],x=[],S=typeof Buffer<"u";f===void 0&&(f=!0),g===void 0&&(g=1/0);function C(T,w){if(T===null)return null;if(w===0)return T;var N,D;if(typeof T!="object")return T;if(r(T,a))N=new a;else if(r(T,i))N=new i;else if(r(T,s))N=new s(function(pe,M){T.then(function(Y){pe(C(Y,w-1))},function(Y){M(C(Y,w-1))})});else if(c.__isArray(T))N=[];else if(c.__isRegExp(T))N=new RegExp(T.source,d(T)),T.lastIndex&&(N.lastIndex=T.lastIndex);else if(c.__isDate(T))N=new Date(T.getTime());else{if(S&&Buffer.isBuffer(T))return N=Buffer.allocUnsafe?Buffer.allocUnsafe(T.length):new Buffer(T.length),T.copy(N),N;r(T,Error)?N=Object.create(T):y===void 0?(D=Object.getPrototypeOf(T),N=Object.create(D)):(N=Object.create(y),D=y)}if(f){var k=b.indexOf(T);if(k!=-1)return x[k];b.push(T),x.push(N)}for(var I in r(T,a)&&T.forEach(function(pe,M){var Y=C(M,w-1),Je=C(pe,w-1);N.set(Y,Je)}),r(T,i)&&T.forEach(function(pe){var M=C(pe,w-1);N.add(M)}),T){var _;D&&(_=Object.getOwnPropertyDescriptor(D,I)),!(_&&_.set==null)&&(N[I]=C(T[I],w-1))}if(Object.getOwnPropertySymbols)for(var xe=Object.getOwnPropertySymbols(T),I=0;I<xe.length;I++){var X=xe[I],W=Object.getOwnPropertyDescriptor(T,X);W&&!W.enumerable&&!v||(N[X]=C(T[X],w-1),W.enumerable||Object.defineProperty(N,X,{enumerable:!1}))}if(v)for(var fe=Object.getOwnPropertyNames(T),I=0;I<fe.length;I++){var Ee=fe[I],W=Object.getOwnPropertyDescriptor(T,Ee);W&&W.enumerable||(N[Ee]=C(T[Ee],w-1),Object.defineProperty(N,Ee,{enumerable:!1}))}return N}return C(p,g)}c.clonePrototype=function(p){if(p===null)return null;var f=function(){};return f.prototype=p,new f};function h(p){return Object.prototype.toString.call(p)}c.__objToStr=h;function o(p){return typeof p=="object"&&h(p)==="[object Date]"}c.__isDate=o;function l(p){return typeof p=="object"&&h(p)==="[object Array]"}c.__isArray=l;function u(p){return typeof p=="object"&&h(p)==="[object RegExp]"}c.__isRegExp=u;function d(p){var f="";return p.global&&(f+="g"),p.ignoreCase&&(f+="i"),p.multiline&&(f+="m"),f}return c.__getRegExpFlags=d,c})();typeof t=="object"&&t.exports&&(t.exports=n)})),so=le(((e,t)=>{var n=Array.isArray,r=Object.keys,a=Object.prototype.hasOwnProperty;t.exports=function i(s,c){if(s===c)return!0;if(s&&c&&typeof s=="object"&&typeof c=="object"){var h=n(s),o=n(c),l,u,d;if(h&&o){if(u=s.length,u!=c.length)return!1;for(l=u;l--!==0;)if(!i(s[l],c[l]))return!1;return!0}if(h!=o)return!1;var p=s instanceof Date,f=c instanceof Date;if(p!=f)return!1;if(p&&f)return s.getTime()==c.getTime();var g=s instanceof RegExp,y=c instanceof RegExp;if(g!=y)return!1;if(g&&y)return s.toString()==c.toString();var v=r(s);if(u=v.length,u!==r(c).length)return!1;for(l=u;l--!==0;)if(!a.call(c,v[l]))return!1;for(l=u;l--!==0;)if(d=v[l],!i(s[d],c[d]))return!1;return!0}return s!==s&&c!==c}})),yr=Xe(le(((e,t)=>{t.exports=function(n,r){r||(r={}),typeof r=="function"&&(r={cmp:r});var a=typeof r.cycles=="boolean"?r.cycles:!1,i=r.cmp&&(function(c){return function(h){return function(o,l){return c({key:o,value:h[o]},{key:l,value:h[l]})}}})(r.cmp),s=[];return(function c(h){if(h&&h.toJSON&&typeof h.toJSON=="function"&&(h=h.toJSON()),h!==void 0){if(typeof h=="number")return isFinite(h)?""+h:"null";if(typeof h!="object")return JSON.stringify(h);var o,l;if(Array.isArray(h)){for(l="[",o=0;o<h.length;o++)o&&(l+=","),l+=c(h[o])||"null";return l+"]"}if(h===null)return"null";if(s.indexOf(h)!==-1){if(a)return JSON.stringify("__cycle__");throw TypeError("Converting circular structure to JSON")}var u=s.push(h)-1,d=Object.keys(h).sort(i&&i(h));for(l="",o=0;o<d.length;o++){var p=d[o],f=c(h[p]);f&&(l&&(l+=","),l+=JSON.stringify(p)+":"+f)}return s.splice(u,1),"{"+l+"}"}})(n)}}))());so(),oo();function Ue(e,t,n){return e.fields=t||[],e.fname=n,e}function qt(e){throw Error(e)}function Ht(e){var t=[],n=null,r=0,a=e.length,i="",s,c,h;e+="";function o(){t.push(i+e.substring(s,c)),i="",s=c+1}for(s=c=0;c<a;++c)if(h=e[c],h==="\\")i+=e.substring(s,c),s=++c;else if(h===n)o(),n=null,r=-1;else{if(n)continue;s===r&&h==='"'||s===r&&h==="'"?(s=c+1,n=h):h==="."&&!r?c>s?o():s=c+1:h==="["?(c>s&&o(),r=s=c+1):h==="]"&&(r||qt("Access path missing open bracket: "+e),r>0&&o(),r=0,s=c+1)}return r&&qt("Access path missing closing bracket: "+e),n&&qt("Access path missing closing quote: "+e),c>s&&(c++,o()),t}var nt=Array.isArray;function vr(e){return e===Object(e)}function Gt(e){return typeof e=="string"}function zt(e){return nt(e)?"["+e.map(zt)+"]":vr(e)||Gt(e)?JSON.stringify(e).replace("\u2028","\\u2028").replace("\u2029","\\u2029"):e}function lo(e,t){var n=Ht(e),r="return _["+n.map(zt).join("][")+"];";return Ue(Function("_",r),[e=n.length===1?n[0]:e],t||e)}var We=[];lo("id"),Ue(function(e){return e},We,"identity"),Ue(function(){return 0},We,"zero"),Ue(function(){return 1},We,"one"),Ue(function(){return!0},We,"true"),Ue(function(){return!1},We,"false");function rt(e,t,n){var r=[t].concat([].slice.call(n));console[e](...r)}function co(e,t){var n=e||0;return{level:function(r){return arguments.length?(n=+r,this):n},error:function(){return n>=1&&rt(t||"error","ERROR",arguments),this},warn:function(){return n>=2&&rt(t||"warn","WARN",arguments),this},info:function(){return n>=3&&rt(t||"log","INFO",arguments),this},debug:function(){return n>=4&&rt(t||"log","DEBUG",arguments),this}}}function Yt(e){return typeof e=="boolean"}function Fe(e){for(var t={},n=0,r=e.length;n<r;++n)t[e[n]]=!0;return t}Set.prototype.toJSON=function(){return`Set(${[...this].map(e=>(0,yr.default)(e)).join(",")})`};const Q=yr.default;function H(e,t){return e.indexOf(t)>-1}function uo(e,t){let n=0;for(let[r,a]of e.entries())if(t(a,r,n++))return!0;return!1}const j=Object.keys;function fo(e){let t=e.replace(/\W/g,"_");return(e.match(/^\d+/)?"_":"")+t}function po(e,t="datum"){return`${t}[${zt(Ht(e).join("."))}]`}function ho(e){return`${Ht(e).map(t=>t.replace(".","\\.")).join("\\.")}`}function mo(...e){for(let t of e)if(t!==void 0)return t}function go(e){return yo(e)?e:`__${e}`}function yo(e){return e.indexOf("__")===0}const Se="column",br="facet",xr="latitude",Er="longitude",Tr="latitude2",Sr="longitude2",ce="color",it="fill",at="stroke",ot="shape",qe="size",st="opacity",lt="fillOpacity",ct="strokeOpacity",ut="strokeWidth",Qt="text",Nr="order",Cr="detail",wr="tooltip",Ar="href";var vo={x:1,y:1,x2:1,y2:1},Or={longitude:1,longitude2:1,latitude:1,latitude2:1};j(Or);var dt=Object.assign({},vo,Or,{color:1,fill:1,stroke:1,opacity:1,fillOpacity:1,strokeOpacity:1,strokeWidth:1,size:1,shape:1,order:1,text:1,detail:1,key:1,tooltip:1,href:1});function ft(e){return e==="color"||e==="fill"||e==="stroke"}var kr={row:1,column:1,facet:1};j(kr);var He=Object.assign({},dt,kr);const bo=j(He);var{order:Pd,detail:Rd}=He,xo=Ie(He,["order","detail"]),{order:$d,detail:Bd,row:Ld,column:Wd,facet:qd}=He,Eo=Ie(He,["order","detail","row","column","facet"]);j(xo),j(Eo),j(dt);var{x:Hd,y:Gd,x2:zd,y2:Yd,latitude:Qd,longitude:Vd,latitude2:Kd,longitude2:Jd}=dt,Vt=Ie(dt,["x","y","x2","y2","latitude","longitude","latitude2","longitude2"]);const Mr=j(Vt);var Ir={x:1,y:1};j(Ir);var{text:Xd,tooltip:Zd,href:ef,detail:tf,key:nf,order:rf}=Vt,Ur=Ie(Vt,["text","tooltip","href","detail","key","order"]);j(Ur);var Fr=Object.assign({},Ir,Ur);j(Fr);function To(e){return!!Fr[e]}function So(e,t){return Co(e)[t]}var Kt={area:"always",bar:"always",circle:"always",geoshape:"always",line:"always",rule:"always",point:"always",rect:"always",square:"always",trail:"always",text:"always",tick:"always"},{geoshape:af}=Kt,No=Ie(Kt,["geoshape"]);function Co(e){switch(e){case ce:case it:case at:case Cr:case"key":case wr:case Ar:case Nr:case st:case lt:case ct:case ut:case br:case"row":case Se:return Kt;case"x":case"y":case xr:case Er:return No;case"x2":case"y2":case Tr:case Sr:return{rule:"always",bar:"always",rect:"always",area:"always",circle:"binned",point:"binned",square:"binned",tick:"binned",line:"binned",trail:"binned"};case qe:return{point:"always",tick:"always",rule:"always",circle:"always",square:"always",bar:"always",text:"always",line:"always",trail:"always"};case ot:return{point:"always",geoshape:"always"};case Qt:return{text:"always"}}}function Jt(e){switch(e){case"x":case"y":case qe:case ut:case st:case lt:case ct:case"x2":case"y2":return;case br:case"row":case Se:case ot:case Qt:case wr:case Ar:return"discrete";case ce:case it:case at:return"flexible";case xr:case Er:case Tr:case Sr:case Cr:case"key":case Nr:return}throw Error("rangeType not implemented for "+e)}var Dr={orient:1,bandPosition:1,domain:1,domainColor:1,domainDash:1,domainDashOffset:1,domainOpacity:1,domainWidth:1,format:1,formatType:1,grid:1,gridColor:1,gridDash:1,gridDashOffset:1,gridOpacity:1,gridWidth:1,labelAlign:1,labelAngle:1,labelBaseline:1,labelBound:1,labelColor:1,labelFlush:1,labelFlushOffset:1,labelFont:1,labelFontSize:1,labelFontStyle:1,labelFontWeight:1,labelLimit:1,labelOpacity:1,labelOverlap:1,labelPadding:1,labels:1,labelSeparation:1,maxExtent:1,minExtent:1,offset:1,position:1,tickColor:1,tickCount:1,tickDash:1,tickDashOffset:1,tickExtra:1,tickMinStep:1,tickOffset:1,tickOpacity:1,tickRound:1,ticks:1,tickSize:1,tickWidth:1,title:1,titleAlign:1,titleAnchor:1,titleAngle:1,titleBaseline:1,titleColor:1,titleFont:1,titleFontSize:1,titleFontStyle:1,titleFontWeight:1,titleLimit:1,titleOpacity:1,titlePadding:1,titleX:1,titleY:1,values:1,zindex:1},wo=Object.assign({},Dr,{encoding:1});j(Object.assign({gridScale:1,scale:1},Dr,{encode:1}));const _r=j(wo);var jr={clipHeight:1,columnPadding:1,columns:1,cornerRadius:1,direction:1,fillColor:1,format:1,formatType:1,gradientLength:1,gradientOpacity:1,gradientStrokeColor:1,gradientStrokeWidth:1,gradientThickness:1,gridAlign:1,labelAlign:1,labelBaseline:1,labelColor:1,labelFont:1,labelFontSize:1,labelFontStyle:1,labelFontWeight:1,labelLimit:1,labelOffset:1,labelOpacity:1,labelOverlap:1,labelPadding:1,labelSeparation:1,legendX:1,legendY:1,offset:1,orient:1,padding:1,rowPadding:1,strokeColor:1,symbolDash:1,symbolDashOffset:1,symbolFillColor:1,symbolOffset:1,symbolOpacity:1,symbolSize:1,symbolStrokeColor:1,symbolStrokeWidth:1,symbolType:1,tickCount:1,tickMinStep:1,title:1,titleAlign:1,titleAnchor:1,titleBaseline:1,titleColor:1,titleFont:1,titleFontSize:1,titleFontStyle:1,titleFontWeight:1,titleLimit:1,titleOpacity:1,titleOrient:1,titlePadding:1,type:1,values:1,zindex:1},Ao=Object.assign({},jr,{opacity:1,shape:1,stroke:1,fill:1,size:1,strokeWidth:1,encode:1});const Pr=j(jr);j(Ao);var Oo=sr({BAR_WITH_POINT_SCALE_AND_RANGESTEP_NULL:()=>cs,CANNOT_FIX_RANGE_STEP_WITH_FIT:()=>Io,CANNOT_UNION_CUSTOM_DOMAIN_WITH_FIELD_DOMAIN:()=>fs,CONCAT_CANNOT_SHARE_AXIS:()=>Bo,FIT_NON_SINGLE:()=>Mo,INVALID_CHANNEL_FOR_AXIS:()=>ks,INVALID_SPEC:()=>ko,LINE_WITH_VARYING_SIZE:()=>rs,MORE_THAN_ONE_SORT:()=>Os,NO_FIELDS_NEEDS_AS:()=>Go,NO_INIT_SCALE_BINDINGS:()=>Po,REPEAT_CANNOT_SHARE_AXIS:()=>Lo,SCALE_BINDINGS_CONTINUOUS:()=>jo,UNABLE_TO_MERGE_DOMAINS:()=>As,cannotApplySizeToNonOrientedMark:()=>ys,cannotProjectOnChannelWithoutField:()=>Uo,cannotStackNonLinearScale:()=>Is,cannotStackRangedMark:()=>Ms,cannotUseScalePropertyWithNonColor:()=>ps,channelRequiredForBinned:()=>Ls,columnsNotSupportByRowCol:()=>$o,dayReplacedWithDate:()=>Ds,differentParse:()=>qo,discreteChannelCannotEncode:()=>ls,domainRequiredForThresholdScale:()=>Ws,domainSortDropped:()=>ws,droppedDay:()=>_s,droppingColor:()=>es,emptyFieldDef:()=>ts,encodingOverridden:()=>zo,errorBand1DNotSupport:()=>Bs,errorBarCenterAndExtentAreNotNeeded:()=>js,errorBarCenterIsNotNeeded:()=>$s,errorBarCenterIsUsedWithWrongExtent:()=>Ps,errorBarContinuousAxisHasCustomizedAggregate:()=>Rs,facetChannelDropped:()=>ss,facetChannelShouldBeDiscrete:()=>os,incompatibleChannel:()=>is,independentScaleMeansIndependentGuide:()=>Cs,invalidAggregate:()=>Xo,invalidEncodingChannel:()=>as,invalidFieldType:()=>Vo,invalidFieldTypeForCountAggregate:()=>Jo,invalidTimeUnit:()=>Fs,invalidTransformIgnored:()=>Ho,latLongDeprecated:()=>ns,lineWithRange:()=>us,mergeConflictingDomainProperty:()=>Ns,mergeConflictingProperty:()=>Ss,missingFieldType:()=>Zo,nearestNotSupportForContinuous:()=>Fo,noSuchRepeatedValue:()=>Ro,nonZeroScaleUsedWithLengthMark:()=>Ko,orientOverridden:()=>ds,primitiveChannelDef:()=>Qo,projectionOverridden:()=>Yo,rangeStepDropped:()=>vs,scalePropertyNotWorkWithScaleType:()=>Es,scaleTypeNotWorkWithChannel:()=>bs,scaleTypeNotWorkWithFieldDef:()=>xs,scaleTypeNotWorkWithMark:()=>Ts,selectionNotFound:()=>_o,selectionNotSupported:()=>Do,stackNonSummativeAggregate:()=>Us,unaggregateDomainHasNoEffectForRawField:()=>hs,unaggregateDomainWithNonSharedDomainOp:()=>ms,unaggregatedDomainWithLogScale:()=>gs,unrecognizedParse:()=>Wo},1);const ko="Invalid spec",Mo='Autosize "fit" only works for single views and layered views.',Io='Cannot use a fixed value of "rangeStep" when "autosize" is "fit".';function Uo(e){return`Cannot project a selection on encoding channel "${e}", which has no field.`}function Fo(e){return`The "nearest" transform is not supported for ${e} marks.`}function Do(e){return`Selection not supported for ${e} yet`}function _o(e){return`Cannot find a selection named "${e}"`}const jo="Scale bindings are currently only supported for scales with unbinned, continuous domains.",Po="Selections bound to scales cannot be separately initialized.";function Ro(e){return`Unknown repeated value "${e}".`}function $o(e){return`The "columns" property cannot be used when "${e}" has nested row/column.`}const Bo="Axes cannot be shared in concatenated views yet (https://github.com/vega/vega-lite/issues/2415).",Lo="Axes cannot be shared in repeated views yet (https://github.com/vega/vega-lite/issues/2415).";function Wo(e){return`Unrecognized parse "${e}".`}function qo(e,t,n){return`An ancestor parsed field "${e}" as ${n} but a child wants to parse the field as ${t}.`}function Ho(e){return`Ignoring an invalid transform: ${Q(e)}.`}const Go='If "from.fields" is not specified, "as" has to be a string that specifies the key to be used for the data from the secondary source.';function zo(e){return`Layer's shared ${e.join(",")} channel ${e.length===1?"is":"are"} overriden`}function Yo(e){let{parentProjection:t,projection:n}=e;return`Layer's shared projection ${Q(t)} is overridden by a child projection ${Q(n)}.`}function Qo(e,t,n){return`Channel ${e} is a ${t}. Converted to {value: ${Q(n)}}.`}function Vo(e){return`Invalid field type "${e}"`}function Ko(e,t,n){return`A ${n.scaleType?`${n.scaleType} scale`:n.zeroFalse?"scale with zero=false":"scale with custom domain that excludes zero"} is used to encode ${e}'s ${t}. This can be misleading as the ${t==="x"?"width":"height"} of the ${e} can be arbitrary based on the scale domain. You may want to use point mark instead.`}function Jo(e,t){return`Invalid field type "${e}" for aggregate: "${t}", using "quantitative" instead.`}function Xo(e){return`Invalid aggregation operator "${e}"`}function Zo(e,t){return`Missing type for channel "${e}", using "${t}" instead.`}function es(e,t){let{fill:n,stroke:r}=t;return`Dropping color ${e} as the plot also has `+(n&&r?"fill and stroke":n?"fill":"stroke")}function ts(e,t){return`Dropping ${Q(e)} from channel "${t}" since it does not contain data field or value.`}function ns(e,t,n){return`${e}-encoding with type ${t} is deprecated. Replacing with ${n}-encoding.`}const rs="Line marks cannot encode size with a non-groupby field. You may want to use trail marks instead.";function is(e,t,n){return`${e} dropped as it is incompatible with "${t}"${n?` when ${n}`:""}.`}function as(e){return`${e}-encoding is dropped as ${e} is not a valid encoding channel.`}function os(e){return`${e} encoding should be discrete (ordinal / nominal / binned).`}function ss(e){return`Facet encoding dropped as ${e.join(" and ")} ${e.length>1?"are":"is"} also specified.`}function ls(e,t){return`Using discrete channel "${e}" to encode "${t}" field can be misleading as it does not encode ${t==="ordinal"?"order":"magnitude"}.`}const cs="Bar mark should not be used with point scale when rangeStep is null. Please use band scale instead.";function us(e,t){return`Line mark is for continuous lines and thus cannot be used with ${e&&t?"x2 and y2":e?"x2":"y2"}. We will use the rule mark (line segments) instead.`}function ds(e,t){return`Specified orient "${e}" overridden with "${t}"`}const fs="custom domain scale cannot be unioned with default field-based domain";function ps(e){return`Cannot use the scale property "${e}" with non-color channel.`}function hs(e){return`Using unaggregated domain with raw field has no effect (${Q(e)}).`}function ms(e){return`Unaggregated domain not applicable for "${e}" since it produces values outside the origin domain of the source data.`}function gs(e){return`Unaggregated domain is currently unsupported for log scale (${Q(e)}).`}function ys(e){return`Cannot apply size to non-oriented mark "${e}".`}function vs(e){return`rangeStep for "${e}" is dropped as top-level ${e==="x"?"width":"height"} is provided.`}function bs(e,t,n){return`Channel "${e}" does not work with "${t}" scale. We are using "${n}" scale instead.`}function xs(e,t){return`FieldDef does not work with "${e}" scale. We are using "${t}" scale instead.`}function Es(e,t,n){return`${n}-scale's "${t}" is dropped as it does not work with ${e} scale.`}function Ts(e,t){return`Scale type "${t}" does not work with mark "${e}".`}function Ss(e,t,n,r){return`Conflicting ${t.toString()} property "${e.toString()}" (${Q(n)} and ${Q(r)}). Using ${Q(n)}.`}function Ns(e,t,n,r){return`Conflicting ${t.toString()} property "${e.toString()}" (${Q(n)} and ${Q(r)}). Using the union of the two domains.`}function Cs(e){return`Setting the scale to be independent for "${e}" means we also have to set the guide (axis or legend) to be independent.`}function ws(e){return`Dropping sort property ${Q(e)} as unioned domains only support boolean or op 'count'.`}const As="Unable to merge domains",Os="Domains that should be unioned has conflicting sort properties. Sort will be set to true.",ks="Invalid channel for axis.";function Ms(e){return`Cannot stack "${e}" if there is already "${e}2"`}function Is(e){return`Cannot stack non-linear scale (${e})`}function Us(e){return`Stacking is applied even though the aggregate function is non-summative ("${e}")`}function Fs(e,t){return`Invalid ${e}: ${Q(t)}`}function Ds(e){return`Time unit "${e}" is not supported. We are replacing it with ${e.replace("day","date")}.`}function _s(e){return`Dropping day from datetime ${Q(e)} as day cannot be combined with other units.`}function js(e,t){return`${t?"extent ":""}${t&&e?"and ":""}${e?"center ":""}${t&&e?"are ":"is "}not needed when data are aggregated.`}function Ps(e,t,n){return`${e} is not usually used with ${t} for ${n}.`}function Rs(e,t){return`Continuous axis should not have customized aggregation function ${e}; ${t} already agregates the axis.`}function $s(e,t){return`Center is not needed to be specified in ${t} when extent is ${e}.`}function Bs(e){return`1D error band does not support ${e}`}function Ls(e){return`Channel ${e} is required for "binned" bin`}function Ws(e){return`Domain for ${e} is required for threshold scale`}const Z=Oo;var Rr=co(2);function me(...e){Rr.warn.apply(Rr,arguments)}const qs={quantitative:1,ordinal:1,temporal:1,nominal:1,geojson:1},ee="quantitative",Ne="ordinal",ge="temporal",Ce="nominal";function Hs(e){if(e)switch(e=e.toLowerCase(),e){case"q":case ee:return"quantitative";case"t":case ge:return"temporal";case"o":case Ne:return"ordinal";case"n":case Ce:return"nominal";case"geojson":return"geojson"}}var F;(function(e){e.LINEAR="linear",e.LOG="log",e.POW="pow",e.SQRT="sqrt",e.SYMLOG="symlog",e.TIME="time",e.UTC="utc",e.QUANTILE="quantile",e.QUANTIZE="quantize",e.THRESHOLD="threshold",e.BIN_ORDINAL="bin-ordinal",e.ORDINAL="ordinal",e.POINT="point",e.BAND="band"})(F||(F={}));const Gs=j({linear:"numeric",log:"numeric",pow:"numeric",sqrt:"numeric",symlog:"numeric",time:"time",utc:"time",ordinal:"ordinal","bin-ordinal":"bin-ordinal",point:"ordinal-position",band:"ordinal-position",quantile:"discretizing",quantize:"discretizing",threshold:"discretizing"}),$r=["linear","log","pow","sqrt","symlog","time","utc"];var zs=Fe($r),Ys=Fe(["quantile","quantize","threshold"]),Qs=Fe($r.concat(["quantile","quantize","threshold"])),Vs=Fe(["ordinal","bin-ordinal","point","band"]);function we(e){return e in Vs}function Ks(e){return e in Qs}function De(e){return e in zs}function Js(e){return e in Ys}var Xt={type:1,domain:1,align:1,range:1,rangeStep:1,scheme:1,bins:1,reverse:1,round:1,clamp:1,nice:1,base:1,exponent:1,constant:1,interpolate:1,zero:1,padding:1,paddingInner:1,paddingOuter:1};const Br=j(Xt);var{type:of,domain:sf,range:lf,rangeStep:cf,scheme:uf}=Xt;j(Ie(Xt,["type","domain","range","rangeStep","scheme"])),Zs();function Zt(e,t){switch(t){case"type":case"domain":case"reverse":case"range":return!0;case"scheme":case"interpolate":return!H(["point","band","identity"],e);case"bins":return!H(["point","band","identity","ordinal"],e);case"round":return De(e)||e==="band"||e==="point";case"padding":return De(e)||H(["point","band"],e);case"paddingOuter":case"rangeStep":case"align":return H(["point","band"],e);case"paddingInner":return e==="band";case"clamp":return De(e);case"nice":return De(e)||e==="quantize"||e==="threshold";case"exponent":return e==="pow";case"base":return e==="log";case"constant":return e==="symlog";case"zero":return Ks(e)&&!H(["log","time","utc","threshold","quantile"],e)}}function Xs(e,t){switch(t){case"interpolate":case"scheme":return ft(e)?void 0:Z.cannotUseScalePropertyWithNonColor(e);case"align":case"type":case"bins":case"domain":case"range":case"base":case"exponent":case"constant":case"nice":case"padding":case"paddingInner":case"paddingOuter":case"rangeStep":case"reverse":case"round":case"clamp":case"zero":return}}function Lr(e,t){return H(["ordinal","nominal"],t)?e===void 0||we(e):t==="temporal"?H([F.TIME,F.UTC,void 0],e):t==="quantitative"?H([F.LOG,F.POW,F.SQRT,F.SYMLOG,F.QUANTILE,F.QUANTIZE,F.THRESHOLD,F.LINEAR,void 0],e):!0}function Wr(e,t){switch(e){case"x":case"y":return De(t)||H(["band","point"],t);case qe:case ut:case st:case lt:case ct:return De(t)||Js(t)||H(["band","point"],t);case ce:case it:case at:return t!=="band";case ot:return t==="ordinal"}return!1}function Zs(){let e={};for(let t of bo)for(let n of j(qs))for(let r of Gs){let a=el(t,n);Wr(t,r)&&Lr(r,n)&&(e[a]=e[a]||[],e[a].push(r))}return e}function el(e,t){return e+"_"+t}var te=le(((e,t)=>{var n=t.exports,r="__name__";n.namedfunc=function(o,l){return l[r]=o,l},n.name=function(o){return o==null?null:o[r]},n.identity=function(o){return o},n.true=n.namedfunc("true",function(){return!0}),n.false=n.namedfunc("false",function(){return!1}),n.duplicate=function(o){return JSON.parse(JSON.stringify(o))},n.equal=function(o,l){return JSON.stringify(o)===JSON.stringify(l)},n.extend=function(o){for(var l,u,d=1,p=arguments.length;d<p;++d)for(u in l=arguments[d],l)o[u]=l[u];return o},n.length=function(o){return o!=null&&o.length!=null?o.length:null},n.keys=function(o){var l=[],u;for(u in o)l.push(u);return l},n.vals=function(o){var l=[],u;for(u in o)l.push(o[u]);return l},n.toMap=function(o,l){return(l=n.$(l))?o.reduce(function(u,d){return u[l(d)]=1,u},{}):o.reduce(function(u,d){return u[d]=1,u},{})},n.keystr=function(o){var l=o.length;if(!l)return"";for(var u=String(o[0]),d=1;d<l;++d)u+="|"+String(o[d]);return u};var a=Object.prototype.toString;n.isObject=function(o){return o===Object(o)},n.isFunction=function(o){return a.call(o)==="[object Function]"},n.isString=function(o){return typeof value=="string"||a.call(o)==="[object String]"},n.isArray=Array.isArray||function(o){return a.call(o)==="[object Array]"},n.isNumber=function(o){return typeof o=="number"||a.call(o)==="[object Number]"},n.isBoolean=function(o){return o===!0||o===!1||a.call(o)=="[object Boolean]"},n.isDate=function(o){return a.call(o)==="[object Date]"},n.isValid=function(o){return o!=null&&o===o},n.isBuffer=typeof Buffer=="function"&&Buffer.isBuffer||n.false,n.number=function(o){return o==null||o===""?null:+o},n.boolean=function(o){return o==null||o===""?null:o==="false"?!1:!!o},n.date=function(o,l){var u=l||Date;return o==null||o===""?null:u.parse(o)},n.array=function(o){return o==null?[]:n.isArray(o)?o:[o]},n.str=function(o){return n.isArray(o)?"["+o.map(n.str)+"]":n.isObject(o)||n.isString(o)?JSON.stringify(o).replace("\u2028","\\u2028").replace("\u2029","\\u2029"):o};var i=/\[(.*?)\]|[^.\[]+/g;n.field=function(o){return String(o).match(i).map(function(l){return l[0]==="["?l[1]!=="'"&&l[1]!=='"'?l.slice(1,-1):l.slice(2,-2).replace(/\\(["'])/g,"$1"):l})},n.accessor=function(o){return o==null||n.isFunction(o)?o:n.namedfunc(o,Function("x","return x["+n.field(o).map(n.str).join("][")+"];"))},n.$=n.accessor,n.mutator=function(o){var l;return n.isString(o)&&(l=n.field(o)).length>1?function(u,d){for(var p=0;p<l.length-1;++p)u=u[l[p]];u[l[p]]=d}:function(u,d){u[o]=d}},n.$func=function(o,l){return function(u){u=n.$(u)||n.identity;var d=o+(n.name(u)?"_"+n.name(u):"");return n.namedfunc(d,function(p){return l(u(p))})}},n.$valid=n.$func("valid",n.isValid),n.$length=n.$func("length",n.length),n.$in=function(o,l){o=n.$(o);var u=n.isArray(l)?n.toMap(l):l;return function(d){return!!u[o(d)]}},n.comparator=function(o){var l=[];return o===void 0&&(o=[]),o=n.array(o).map(function(u){var d=1;return u[0]==="-"?(d=-1,u=u.slice(1)):u[0]==="+"&&(d=1,u=u.slice(1)),l.push(d),n.accessor(u)}),function(u,d){var p,f,g,y;for(p=0,f=o.length;p<f;++p)if(g=o[p],y=n.cmp(g(u),g(d)),y)return y*l[p];return 0}},n.cmp=function(o,l){return(o<l||o==null)&&l!=null?-1:(o>l||l==null)&&o!=null?1:(l=l instanceof Date?+l:l,(o=o instanceof Date?+o:o)!==o&&l===l?-1:l!==l&&o===o?1:0)},n.numcmp=function(o,l){return o-l},n.stablesort=function(o,l,u){var d=o.reduce(function(p,f,g){return p[u(f)]=g,p},{});return o.sort(function(p,f){var g=l(p),y=l(f);return g<y?-1:g>y?1:d[u(p)]-d[u(f)]}),o},n.permute=function(o){for(var l=o.length,u,d;l;)d=Math.floor(Math.random()*l--),u=o[l],o[l]=o[d],o[d]=u},n.pad=function(o,l,u,d){d||(d=" ");var p=l-o.length;if(p<=0)return o;switch(u){case"left":return s(p,d)+o;case"middle":case"center":return s(Math.floor(p/2),d)+o+s(Math.ceil(p/2),d);default:return o+s(p,d)}};function s(o,l){var u="",d;for(d=0;d<o;++d)u+=l;return u}n.truncate=function(o,l,u,d,p){var f=o.length;if(f<=l)return o;p=p===void 0?"\u2026":String(p);var g=Math.max(0,l-p.length);switch(u){case"left":return p+(d?c(o,g,1):o.slice(f-g));case"middle":case"center":var y=Math.ceil(g/2),v=Math.floor(g/2);return(d?c(o,y):o.slice(0,y))+p+(d?c(o,v,1):o.slice(f-v));default:return(d?c(o,g):o.slice(0,g))+p}};function c(o,l,u){var d=0,p=o.split(h);return o=u?(p=p.reverse()).filter(function(f){return d+=f.length,d<=l}).reverse():p.filter(function(f){return d+=f.length,d<=l}),o.length?o.join("").trim():p[0].slice(0,l)}var h=/([\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u2028\u2029\u3000\uFEFF])/})),qr=te(),U=te();function K(e,t){return e.indexOf(t)!==-1}function ae(e,t){for(let n=0;n<e.length;n++)if(!t(e[n],n))return!1;return!0}function G(e,t,n){if(e.forEach)e.forEach.call(n,t);else for(let r in e)t.call(n,e[r],r,e)}function ue(e,t){let n=0,r;for(r in e)if(t(e[r],r,n++))return!0;return!1}function tl(e,t){return e.filter(function(n){return!K(t,n)})}function nl(e){return Object.keys(e)}function oe(e){return!!e.parent}var Hr={channel:1,aggregate:1,autoCount:1,bin:1,timeUnit:1,hasFn:1,sort:1,stack:1,field:1,type:1,format:1,scale:1,axis:1,legend:1,value:1};const en=nl(Hr);function rl(e){return e in Hr}var il={bin:1,scale:1,sort:1,axis:1,legend:1};function tn(e){return il[e]}const al=["maxbins","divide","extent","base","step","steps","minstep"],ol=["field","op","order"];var Gr=al.map(e=>({parent:"bin",child:e}));const nn=ol.map(e=>({parent:"sort",child:e})),pt=Br.map(e=>({parent:"scale",child:e}));var zr=_r.map(e=>({parent:"axis",child:e})),Yr=Pr.map(e=>({parent:"legend",child:e}));const ht=[].concat(Gr,nn,pt,zr,Yr),Qr=["width","height","background","padding","title"];var Vr=".";function mt(e){return oe(e)?e.parent+Vr+e.child:e}function sl(e){let t=e.split(Vr);if(t.length===1)return e;if(t.length===2)return{parent:t[0],child:t[1]};throw"Invalid property key with "+t.length+" dots: "+e}var ll=ht.reduce((e,t)=>(e[t.parent]=e[t.parent]||[],e[t.parent][t.child]=t,e),{});function de(e,t){return(ll[e]||{})[t]}function Kr(e){return rl(e)||oe(e)}const cl=[].concat(en,ht),Jr=["type","field","bin","timeUnit","aggregate","autoCount","channel","mark","stack","scale","sort","axis","legend"].concat(Gr,pt,zr,Yr,nn);var m;(function(e){e.MARK="mark",e.TRANSFORM="transform",e.STACK="stack",e.FORMAT="format",e.CHANNEL="channel",e.AGGREGATE="aggregate",e.AUTOCOUNT="autoCount",e.BIN="bin",e.HAS_FN="hasFn",e.TIMEUNIT="timeUnit",e.FIELD="field",e.TYPE="type",e.SORT="sort",e.SCALE="scale",e.AXIS="axis",e.LEGEND="legend",e.WIDTH="width",e.HEIGHT="height",e.BACKGROUND="background",e.PADDING="padding",e.TITLE="title"})(m||(m={}));const Ge="area",gt="line",ze="point",rn="rect",an="rule",yt="text",vt="tick",on="circle",sn="square";var ul={area:1,bar:1,line:1,point:1,text:1,tick:1,trail:1,rect:1,geoshape:1,rule:1,circle:1,square:1};function dl(e){return H(["line","area","trail"],e)}const fl=j(ul);function pl(e){return e.type}Fe(fl),["january","february","march","april","may","june","july","august","september","october","november","december"].map(e=>e.substr(0,3)),["sunday","monday","tuesday","wednesday","thursday","friday","saturday"].map(e=>e.substr(0,3));var B;(function(e){e.YEAR="year",e.MONTH="month",e.DAY="day",e.DATE="date",e.HOURS="hours",e.MINUTES="minutes",e.SECONDS="seconds",e.MILLISECONDS="milliseconds",e.YEARMONTH="yearmonth",e.YEARMONTHDATE="yearmonthdate",e.YEARMONTHDATEHOURS="yearmonthdatehours",e.YEARMONTHDATEHOURSMINUTES="yearmonthdatehoursminutes",e.YEARMONTHDATEHOURSMINUTESSECONDS="yearmonthdatehoursminutesseconds",e.MONTHDATE="monthdate",e.MONTHDATEHOURS="monthdatehours",e.HOURSMINUTES="hoursminutes",e.HOURSMINUTESSECONDS="hoursminutesseconds",e.MINUTESSECONDS="minutesseconds",e.SECONDSMILLISECONDS="secondsmilliseconds",e.QUARTER="quarter",e.YEARQUARTER="yearquarter",e.QUARTERMONTH="quartermonth",e.YEARQUARTERMONTH="yearquartermonth",e.UTCYEAR="utcyear",e.UTCMONTH="utcmonth",e.UTCDAY="utcday",e.UTCDATE="utcdate",e.UTCHOURS="utchours",e.UTCMINUTES="utcminutes",e.UTCSECONDS="utcseconds",e.UTCMILLISECONDS="utcmilliseconds",e.UTCYEARMONTH="utcyearmonth",e.UTCYEARMONTHDATE="utcyearmonthdate",e.UTCYEARMONTHDATEHOURS="utcyearmonthdatehours",e.UTCYEARMONTHDATEHOURSMINUTES="utcyearmonthdatehoursminutes",e.UTCYEARMONTHDATEHOURSMINUTESSECONDS="utcyearmonthdatehoursminutesseconds",e.UTCMONTHDATE="utcmonthdate",e.UTCMONTHDATEHOURS="utcmonthdatehours",e.UTCHOURSMINUTES="utchoursminutes",e.UTCHOURSMINUTESSECONDS="utchoursminutesseconds",e.UTCMINUTESSECONDS="utcminutesseconds",e.UTCSECONDSMILLISECONDS="utcsecondsmilliseconds",e.UTCQUARTER="utcquarter",e.UTCYEARQUARTER="utcyearquarter",e.UTCQUARTERMONTH="utcquartermonth",e.UTCYEARQUARTERMONTH="utcyearquartermonth"})(B||(B={}));var ln={year:1,quarter:1,month:1,day:1,date:1,hours:1,minutes:1,seconds:1,milliseconds:1};const Xr=j(ln);function hl(e){return!!ln[e]}var cn={utcyear:1,utcquarter:1,utcmonth:1,utcday:1,utcdate:1,utchours:1,utcminutes:1,utcseconds:1,utcmilliseconds:1};function ml(e){return!!cn[e]}var gl={yearquarter:1,yearquartermonth:1,yearmonth:1,yearmonthdate:1,yearmonthdatehours:1,yearmonthdatehoursminutes:1,yearmonthdatehoursminutesseconds:1,quartermonth:1,monthdate:1,monthdatehours:1,hoursminutes:1,hoursminutesseconds:1,minutesseconds:1,secondsmilliseconds:1},Zr={utcyearquarter:1,utcyearquartermonth:1,utcyearmonth:1,utcyearmonthdate:1,utcyearmonthdatehours:1,utcyearmonthdatehoursminutes:1,utcyearmonthdatehoursminutesseconds:1,utcquartermonth:1,utcmonthdate:1,utcmonthdatehours:1,utchoursminutes:1,utchoursminutesseconds:1,utcminutesseconds:1,utcsecondsmilliseconds:1},yl=Object.assign({},cn,Zr);function vl(e){return!!yl[e]}var ei=Object.assign({},ln,cn,gl,Zr);j(ei);function bl(e){return!!ei[e]}var xl={year:"setFullYear",month:"setMonth",date:"setDate",hours:"setHours",minutes:"setMinutes",seconds:"setSeconds",milliseconds:"setMilliseconds",quarter:null,day:null};function El(e,t){let n=vl(e),r=n?new Date(Date.UTC(1972,0,1,0,0,0,0)):new Date(1972,0,1,0,0,0,0);for(let a of Xr)if(ni(e,a))switch(a){case B.DAY:throw Error("Cannot convert to TimeUnits containing 'day'");case B.QUARTER:{let{getDateMethod:i,setDateMethod:s}=ti("month",n);r[s](Math.floor(t[i]()/3)*3);break}default:{let{getDateMethod:i,setDateMethod:s}=ti(a,n);r[s](t[i]())}}return r}function ti(e,t){let n=xl[e];return{setDateMethod:t?"setUTC"+n.substr(3):n,getDateMethod:"get"+(t?"UTC":"")+n.substr(3)}}function ni(e,t){let n=e.indexOf(t);return n>-1&&(t!==B.SECONDS||n===0||e.charAt(n-1)!=="i")}function A(e){return bt(e)||Tl(e)}function bt(e){return e==="?"}function Tl(e){return e!==void 0&&e!=null&&(!!e.enum||!!e.name)&&!(0,qr.isArray)(e)}function un(e,t,n){return(0,U.extend)({},{name:t,enum:n},e==="?"?{}:e)}function dn(e){let t={},n={};for(let r of e){let a=[0];for(let s=0;s<r.length;s++)r.charAt(s).toUpperCase()===r.charAt(s)&&a.push(s);let i=a.map(s=>r.charAt(s)).join("").toLowerCase();if(!n[i]){t[r]=i,n[i]=!0;continue}if(a[a.length-1]!==r.length-1&&(i=a.concat([r.length-1]).map(s=>r.charAt(s)).join("").toLowerCase(),!n[i])){t[r]=i,n[i]=!0;continue}for(let s=1;!t[r];s++){let c=i+"_"+s;if(!n[c]){t[r]=c,n[c]=!0;break}}}return t}const xt={mark:"m",channel:"c",aggregate:"a",autoCount:"#",hasFn:"h",bin:"b",sort:"so",stack:"st",scale:"s",format:"f",axis:"ax",legend:"l",value:"v",timeUnit:"tu",field:"f",type:"t",binProps:{maxbins:"mb",min:"mi",max:"ma",base:"b",step:"s",steps:"ss",minstep:"ms",divide:"d"},sortProps:{field:"f",op:"o",order:"or"},scaleProps:dn(Br),axisProps:dn(_r),legendProps:dn(Pr)};function Ye(e){if(oe(e))return xt[e.parent]+"-"+xt[e.parent+"Props"][e.child];if(xt[e])return xt[e];throw Error("Default name undefined for "+e)}var V=[!1,!0],Sl={maxbins:[5,10,20],extent:[void 0],base:[10],step:[void 0],steps:[void 0],minstep:[void 0],divide:[[5,2]],binned:[!1],anchor:[void 0],nice:[!0]},Nl={field:[void 0],op:["min","mean"],order:["ascending","descending"]},Cl={type:[void 0,F.LOG],domain:[void 0],base:[void 0],exponent:[1,2],constant:[void 0],bins:[void 0],clamp:V,nice:V,reverse:V,round:V,zero:V,padding:[void 0],paddingInner:[void 0],paddingOuter:[void 0],interpolate:[void 0],range:[void 0],rangeStep:[17,21],scheme:[void 0]},wl={zindex:[1,0],offset:[void 0],orient:[void 0],values:[void 0],bandPosition:[void 0],encoding:[void 0],domain:V,domainColor:[void 0],domainDash:[void 0],domainDashOffset:[void 0],domainOpacity:[void 0],domainWidth:[void 0],formatType:[void 0],grid:V,gridColor:[void 0],gridDash:[void 0],gridDashOffset:[void 0],gridOpacity:[void 0],gridWidth:[void 0],format:[void 0],labels:V,labelAlign:[void 0],labelAngle:[void 0],labelBaseline:[void 0],labelColor:[void 0],labelFlushOffset:[void 0],labelFont:[void 0],labelFontSize:[void 0],labelFontStyle:[void 0],labelFontWeight:[void 0],labelLimit:[void 0],labelOpacity:[void 0],labelSeparation:[void 0],labelOverlap:[void 0],labelPadding:[void 0],labelBound:[void 0],labelFlush:[void 0],maxExtent:[void 0],minExtent:[void 0],position:[void 0],ticks:V,tickColor:[void 0],tickCount:[void 0],tickDash:[void 0],tickExtra:[void 0],tickDashOffset:[void 0],tickMinStep:[void 0],tickOffset:[void 0],tickOpacity:[void 0],tickRound:[void 0],tickSize:[void 0],tickWidth:[void 0],title:[void 0],titleAlign:[void 0],titleAnchor:[void 0],titleAngle:[void 0],titleBaseline:[void 0],titleColor:[void 0],titleFont:[void 0],titleFontSize:[void 0],titleFontStyle:[void 0],titleFontWeight:[void 0],titleLimit:[void 0],titleOpacity:[void 0],titlePadding:[void 0],titleX:[void 0],titleY:[void 0]};const Al={mark:[ze,"bar",gt,Ge,rn,vt,yt],channel:["x","y","row",Se,qe,ce],aggregate:[void 0,"mean"],autoCount:V,bin:V,hasFn:V,timeUnit:[void 0,B.YEAR,B.MONTH,B.MINUTES,B.SECONDS],field:[void 0],type:[Ce,Ne,ee,ge],sort:["ascending","descending"],stack:["zero","normalize","center",null],value:[void 0],format:[void 0],title:[void 0],scale:[!0],axis:V,legend:V,binProps:Sl,sortProps:Nl,scaleProps:Cl,axisProps:wl,legendProps:{orient:["left","right"],format:[void 0],type:[void 0],values:[void 0],zindex:[void 0],clipHeight:[void 0],columnPadding:[void 0],columns:[void 0],cornerRadius:[void 0],direction:[void 0],encoding:[void 0],fillColor:[void 0],formatType:[void 0],gridAlign:[void 0],offset:[void 0],padding:[void 0],rowPadding:[void 0],strokeColor:[void 0],labelAlign:[void 0],labelBaseline:[void 0],labelColor:[void 0],labelFont:[void 0],labelFontSize:[void 0],labelFontStyle:[void 0],labelFontWeight:[void 0],labelLimit:[void 0],labelOffset:[void 0],labelOpacity:[void 0],labelOverlap:[void 0],labelPadding:[void 0],labelSeparation:[void 0],legendX:[void 0],legendY:[void 0],gradientLength:[void 0],gradientOpacity:[void 0],gradientStrokeColor:[void 0],gradientStrokeWidth:[void 0],gradientThickness:[void 0],symbolDash:[void 0],symbolDashOffset:[void 0],symbolFillColor:[void 0],symbolOffset:[void 0],symbolOpacity:[void 0],symbolSize:[void 0],symbolStrokeColor:[void 0],symbolStrokeWidth:[void 0],symbolType:[void 0],tickCount:[void 0],tickMinStep:[void 0],title:[void 0],titleAnchor:[void 0],titleAlign:[void 0],titleBaseline:[void 0],titleColor:[void 0],titleFont:[void 0],titleFontSize:[void 0],titleFontStyle:[void 0],titleFontWeight:[void 0],titleLimit:[void 0],titleOpacity:[void 0],titleOrient:[void 0],titlePadding:[void 0]}};function fn(e,t,n){if(e==="field"||oe(e)&&e.parent==="sort"&&e.child==="field")return t.fieldNames();let r;if(r=oe(e)?n.enum[e.parent+"Props"][e.child]:n.enum[e],r!==void 0)return r;throw Error("No default enumValues for "+JSON.stringify(e))}const Qe={verbose:!1,defaultSpecConfig:{line:{point:!0},scale:{useUnaggregatedDomain:!0}},propertyPrecedence:Jr.map(mt),enum:Al,numberNominalProportion:.05,numberNominalLimit:40,constraintManuallySpecifiedValue:!1,autoAddCount:!1,hasAppropriateGraphicTypeForMark:!0,omitAggregate:!1,omitAggregatePlotWithDimensionOnlyOnFacet:!0,omitAggregatePlotWithoutDimension:!1,omitBarLineAreaWithOcclusion:!0,omitBarTickWithSize:!0,omitMultipleNonPositionalChannels:!0,omitRaw:!1,omitRawContinuousFieldForAggregatePlot:!0,omitRepeatedField:!0,omitNonPositionalOrFacetOverPositionalChannels:!0,omitTableWithOcclusionIfAutoAddCount:!0,omitVerticalDotPlot:!1,omitInvalidStackSpec:!0,omitNonSumStack:!0,preferredBinAxis:"x",preferredTemporalAxis:"x",preferredOrdinalAxis:"y",preferredNominalAxis:"y",preferredFacet:"row",minCardinalityForBin:15,maxCardinalityForCategoricalColor:20,maxCardinalityForFacet:20,maxCardinalityForShape:6,timeUnitShouldHaveVariation:!0,typeMatchesSchemaType:!0,stylize:!0,smallRangeStepForHighCardinalityOrFacet:{maxCardinality:10,rangeStep:12},nominalColorScaleForHighCardinality:{maxCardinality:10,palette:"category20"},xAxisOnTopForHighYCardinalityWithoutColumn:{maxCardinality:30},maxGoodCardinalityForFacet:5,maxGoodCardinalityForColor:7,minPercentUniqueForKey:.8,minCardinalityForKey:50};var ri={argmax:1,argmin:1,average:1,count:1,distinct:1,max:1,mean:1,median:1,min:1,missing:1,q1:1,q3:1,ci0:1,ci1:1,stderr:1,stdev:1,stdevp:1,sum:1,valid:1,values:1,variance:1,variancep:1};function Ol(e){return!!e&&!!e.argmin}function kl(e){return!!e&&!!e.argmax}j(ri);function Ml(e){return Gt(e)&&!!ri[e]}const ii=["count","sum","distinct","valid","missing"];Fe(["mean","average","median","q1","q3","min","max"]);function Il(e){return Yt(e)&&(e=Pl(e,void 0)),"bin"+j(e).map(t=>fo(`_${t}_${e[t]}`)).join("")}function ai(e){return e===!0||Ul(e)&&!e.binned}function Ul(e){return vr(e)}function pn(e){switch(e){case"row":case Se:case qe:case ce:case it:case at:case ut:case st:case lt:case ct:case ot:return 6;default:return 10}}function oi(e){return!!e&&!!e.condition&&!nt(e.condition)&&ye(e.condition)}function ye(e){return!!e&&(!!e.field||e.aggregate==="count")}function hn(e){return ye(e)&&Gt(e.field)}function Fl(e){return!!e.op}function mn(e,t={}){let n=e.field,r=t.prefix,a=t.suffix,i="";if(_l(e))n=go("count");else{let s;if(!t.nofn)if(Fl(e))s=e.op;else{let{bin:c,aggregate:h,timeUnit:o}=e;ai(c)?(s=Il(c),a=(t.binSuffix||"")+(t.suffix||"")):h?kl(h)?(i=`.${n}`,n=`argmax_${h.argmax}`):Ol(h)?(i=`.${n}`,n=`argmin_${h.argmin}`):s=String(h):o&&(s=String(o))}s&&(n=n?`${s}_${n}`:s)}return a&&(n=`${n}_${a}`),r&&(n=`${r}_${n}`),t.forAs?n:t.expr?po(n,t.expr)+i:ho(n)+i}function si(e){switch(e.type){case"nominal":case"ordinal":case"geojson":return!0;case"quantitative":return!!e.bin;case"temporal":return!1}throw Error(Z.invalidFieldType(e.type))}function Dl(e){return!si(e)}function _l(e){return e.aggregate==="count"}function jl(e){if(ye(e))return e;if(oi(e))return e.condition}function Pl(e,t){return Yt(e)?{maxbins:pn(t)}:e==="binned"?{binned:!0}:!e.maxbins&&!e.step?Object.assign({},e,{maxbins:pn(t)}):e}var _e={compatible:!0};function Rl(e,t){let n=e.type;if(n==="geojson"&&t!=="shape")return{compatible:!1,warning:`Channel ${t} should not be used with a geojson data.`};switch(t){case"row":case"column":case"facet":return Dl(e)?{compatible:!1,warning:Z.facetChannelShouldBeDiscrete(t)}:_e;case"x":case"y":case"color":case"fill":case"stroke":case"text":case"detail":case"key":case"tooltip":case"href":return _e;case"longitude":case"longitude2":case"latitude":case"latitude2":return n==="quantitative"?_e:{compatible:!1,warning:`Channel ${t} should be used with a quantitative field only, not ${e.type} field.`};case"opacity":case"fillOpacity":case"strokeOpacity":case"strokeWidth":case"size":case"x2":case"y2":return n==="nominal"&&!e.sort?{compatible:!1,warning:`Channel ${t} should not be used with an unsorted discrete field.`}:_e;case"shape":return H(["ordinal","nominal","geojson"],e.type)?_e:{compatible:!1,warning:"Shape channel should be used with only either discrete or geojson data."};case"order":return e.type==="nominal"&&!("sort"in e)?{compatible:!1,warning:"Channel order is inappropriate for nominal field, which has no inherent order."}:_e}throw Error("channelCompatability not implemented for channel "+t)}function $l(e,t,n,r){let a=Bl(t,n,r),{type:i}=e;return To(t)?i===void 0?a:Wr(t,i)?Lr(i,n.type)?i:(me(Z.scaleTypeNotWorkWithFieldDef(i,a)),a):(me(Z.scaleTypeNotWorkWithChannel(t,i,a)),a):null}function Bl(e,t,n){switch(t.type){case"nominal":case"ordinal":return ft(e)||Jt(e)==="discrete"?(e==="shape"&&t.type==="ordinal"&&me(Z.discreteChannelCannotEncode(e,"ordinal")),"ordinal"):H(["x","y"],e)&&(H(["rect","bar","rule"],n)||n==="bar")?"band":"point";case"temporal":return ft(e)?"time":Jt(e)==="discrete"?(me(Z.discreteChannelCannotEncode(e,"temporal")),"ordinal"):"time";case"quantitative":return ft(e)?ai(t.bin)?"bin-ordinal":"linear":Jt(e)==="discrete"?(me(Z.discreteChannelCannotEncode(e,"quantitative")),"ordinal"):"linear";case"geojson":return}throw Error(Z.invalidFieldType(t.type))}var se;(function(e){e.QUANTITATIVE=ee,e.ORDINAL=Ne,e.TEMPORAL=ge,e.NOMINAL=Ce,e.KEY="key"})(se||(se={}));function li(e){return e==="ordinal"||e==="nominal"||e===se.KEY}var ne=class ir{constructor(t=null){this.index=t?Object.assign({},t):{}}has(t){return mt(t)in this.index}get(t){return this.index[mt(t)]}set(t,n){return this.index[mt(t)]=n,this}setByKey(t,n){this.index[t]=n}map(t){let n=new ir;for(let r in this.index)n.index[r]=t(this.index[r]);return n}size(){return(0,U.keys)(this.index).length}duplicate(){return new ir(this.index)}};function ci(e,t){let n=e&&e[t];return n?nt(n)?uo(n,r=>!!r.field):ye(n)||oi(n):!1}var Ll={zero:1,center:1,normalize:1};function Wl(e){return!!Ll[e]}const ql=["bar",Ge,an,ze,on,sn,gt,yt,vt],Hl=["bar",Ge];function Gl(e){let t=e.x,n=e.y;if(ye(t)&&ye(n))if(t.type==="quantitative"&&n.type==="quantitative"){if(t.stack)return"x";if(n.stack)return"y";if(!!t.aggregate!=!!n.aggregate)return t.aggregate?"x":"y"}else{if(t.type==="quantitative")return"x";if(n.type==="quantitative")return"y"}else{if(ye(t)&&t.type==="quantitative")return"x";if(ye(n)&&n.type==="quantitative")return"y"}}function zl(e,t,n,r={}){let a=pl(e)?e.type:e;if(!H(ql,a))return null;let i=Gl(t);if(!i)return null;let s=t[i],c=hn(s)?mn(s,{}):void 0,h=i==="x"?"y":"x",o=t[h],l=hn(o)?mn(o,{}):void 0,u=Mr.reduce((p,f)=>{if(f!=="tooltip"&&ci(t,f)){let g=t[f];(nt(g)?g:[g]).forEach(y=>{let v=jl(y);if(v.aggregate)return;let b=hn(v)?mn(v,{}):void 0;(!b||b!==l&&b!==c)&&p.push({channel:f,fieldDef:v})})}return p},[]),d;if(s.stack===void 0?u.length>0&&(d=H(Hl,a)?mo(n,"zero"):n):d=Yt(s.stack)?s.stack?"zero":null:s.stack,!d||!Wl(d))return null;if(s.scale&&s.scale.type&&s.scale.type!==F.LINEAR){if(r.disallowNonLinearStack)return null;me(Z.cannotStackNonLinearScale(s.scale.type))}return ci(t,i==="x"?"x2":"y2")?(s.stack!==void 0&&me(Z.cannotStackRangedMark(i)),null):(s.aggregate&&!H(ii,s.aggregate)&&me(Z.stackNonSummativeAggregate(s.aggregate)),{groupbyChannel:o?h:void 0,fieldChannel:i,impute:dl(a),stackBy:u,offset:d})}var Yl=te();function Ql(e){return ue(e.encodings,t=>O(t)&&!A(t.aggregate)&&!!t.aggregate||Tt(t))}function ui(e){if(!Jl(e))return null;let t=gi(e.encodings,{schema:null,wildcardMode:"null"}),n=e.mark;return zl(n,t,void 0,{disallowNonLinearStack:!0})}function Vl(e){for(let t of e.encodings)if(t[m.STACK]!==void 0&&!A(t[m.STACK]))return t[m.STACK]}function Kl(e){for(let t of e.encodings)if(t[m.STACK]!==void 0&&!A(t.channel))return t.channel;return null}function Jl(e){if(A(e.mark))return!1;let t=(0,Yl.toMap)(tl(cl,[m.STACK,m.CHANNEL,m.MARK,m.FIELD,m.AGGREGATE,m.AUTOCOUNT,m.SCALE,de("scale","type"),m.TYPE])),n=e.encodings.filter(r=>!ie(r));for(let r of n)if(di(r,{exclude:t}))return!1;return!0}function di(e,t={}){if(!(0,U.isObject)(e))return!1;for(let n in e)if(e.hasOwnProperty(n)&&(A(e[n])&&(!t.exclude||!t.exclude[n])||di(e[n],t)))return!0;return!1}var fi=te();function Xl(e){return e.map(t=>Zl(t))}function Zl(e){return t=>e[t]===void 0?t:e[t]}function Ae(e,t){return A(e)?!bt(e)&&e.enum?"?"+JSON.stringify(e.enum):"?":t?t(e):e}function Et(e,t){return t?t(e):e}const gn=new ne,yn=[].concat(Jr,nn,[m.TRANSFORM,m.STACK],Qr).reduce((e,t)=>e.set(t,!0),new ne),vn={axis:{x:!0,y:!0,row:!0,column:!0},legend:{color:!0,opacity:!0,size:!0,shape:!0},scale:{x:!0,y:!0,color:!0,opacity:!0,row:!0,column:!0,size:!0,shape:!0},sort:{x:!0,y:!0,path:!0,order:!0},stack:{x:!0,y:!0}};function je(e,t=yn,n=gn){let r=[];t.get(m.MARK)&&r.push(Ae(e.mark,n.get(m.MARK))),e.transform&&e.transform.length>0&&r.push("transform:"+JSON.stringify(e.transform));let a;if(t.get(m.STACK)&&(a=ui(e)),e.encodings){let i=e.encodings.reduce((s,c)=>{if(!ie(c)){let h;h=a&&c.channel===a.fieldChannel?pi(Object.assign({},c,{stack:a.offset}),t,n):pi(c,t,n),h&&s.push(h)}return s},[]).sort().join("|");i&&r.push(i)}for(let i of Qr){let s=i.toString();if(t.get(i)&&e[s]){let c=e[s];r.push(`${s}=${JSON.stringify(c)}`)}}return r.join("|")}function pi(e,t=yn,n=gn){let r=[];if(t.get(m.CHANNEL)&&r.push(Ae(e.channel,n.get(m.CHANNEL))),O(e)){let a=hi(e,t,n);a&&r.push(a)}else re(e)?r.push(e.value):P(e)&&r.push("autocount()");return r.join(":")}function hi(e,t=yn,n=gn){if(t.get(m.AGGREGATE)&&ie(e))return"-";let r=ec(e,t,n),a=tc(e,t,n),i;if(O(e)){if(i=t.get("field")?Ae(e.field,n.get("field")):"...",t.get(m.TYPE))if(A(e.type))i+=","+Ae(e.type,n.get(m.TYPE));else{let s=((e.type||"quantitative")+"").substr(0,1);i+=","+Ae(s,n.get(m.TYPE))}i+=a.map(s=>{let c=s.value instanceof Array?"["+s.value+"]":s.value;return","+s.key+"="+c}).join("")}else P(e)&&(i="*,q");return i?r?((0,fi.isString)(r)?r:"?"+((0,U.keys)(r).length>0?JSON.stringify(r):""))+"("+i+")":i:null}function ec(e,t,n){if(t.get(m.AGGREGATE)&&e.aggregate&&!A(e.aggregate))return Et(e.aggregate,n.get(m.AGGREGATE));if(t.get(m.AGGREGATE)&&Tt(e))return Et("count",n.get(m.AGGREGATE));if(t.get(m.TIMEUNIT)&&e.timeUnit&&!A(e.timeUnit))return Et(e.timeUnit,n.get(m.TIMEUNIT));if(t.get(m.BIN)&&e.bin&&!A(e.bin))return"bin";{let r=null;for(let a of[m.AGGREGATE,m.AUTOCOUNT,m.TIMEUNIT,m.BIN]){let i=e[a];t.get(a)&&e[a]&&A(i)&&(r||(r={}),r[a]=bt(i)?i:i.enum)}return r&&e.hasFn&&(r.hasFn=!0),r}}function tc(e,t,n){let r=[];if(!(0,U.isBoolean)(e.bin)&&!bt(e.bin)){let a=e.bin;for(let i in a){let s=de("bin",i);s&&t.get(s)&&a[i]!==void 0&&r.push({key:i,value:Ae(a[i],n.get(s))})}r.sort((i,s)=>i.key.localeCompare(s.key))}for(let a of[m.SCALE,m.SORT,m.STACK,m.AXIS,m.LEGEND])if(!(!A(e.channel)&&!vn[a][e.channel])&&t.get(a)&&e[a]!==void 0){let i=e[a];if((0,U.isBoolean)(i)||i===null)r.push({key:a+"",value:i||!1});else if((0,fi.isString)(i))r.push({key:a+"",value:Et(JSON.stringify(i),n.get(a))});else{let s=[];for(let c in i){let h=de(a,c);h&&t.get(h)&&i[c]!==void 0&&s.push({key:c,value:Ae(i[c],n.get(h))})}if(s.length>0){let c=s.sort((h,o)=>h.key.localeCompare(o.key)).reduce((h,o)=>(h[o.key]=o.value,h),{});r.push({key:a+"",value:JSON.stringify(c)})}}}return r}function bn(e,t,n){let r=[],a=0;for(let i=0;i<n;i++){let s=e.indexOf(t,a);if(s!==-1)r.push(e.substring(a,s)),a=s+1;else break}if(r.push(e.substr(a)),r.length!==n+1)for(;r.length!==n+1;)r.push("");return r}var nc;(function(e){function t(i,s){let c=s.indexOf("(")===-1?n(bn(s,",",2)):a(s);return Object.assign({channel:i},c)}e.encoding=t;function n(i){let s={};s.field=i[0],s.type=Hs(i[1].toUpperCase())||"?";let c=i[2],h=0,o=0;for(;o<c.length;){let l=c.indexOf("=",o),u;if(l!==-1){let d=c.substring(o,l);if(c[o+d.length+1]==="{"){let p=o+d.length+1;h=r(p,c,"}");let f=c.substring(p,h+1);u=JSON.parse(f),o=h+2}else if(c[o+d.length+1]==="["){let p=o+d.length+1,f=r(p,c,"]"),g=c.substring(p,f+1);u=JSON.parse(g),o=f+2}else{let p=o,f=c.indexOf(",",o+d.length);f===-1&&(f=c.length),o=f+1,u=JSON.parse(c.substring(p+d.length+1,f))}tn(d)?s[d]=u:(s.bin=s.bin||{},s.bin[d]=u)}else break}return s}e.rawFieldDef=n;function r(i,s,c){for(let h=i;h<s.length;h++)if(s[h]===c)return h}e.getClosingIndex=r;function a(i){let s={};if(i[0]==="?"){let c=r(1,i,"}"),h=JSON.parse(i.substring(1,c+1));for(let o in h)(0,qr.isArray)(h[o])?s[o]={enum:h[o]}:s[o]=h[o];return Object.assign({},s,n(bn(i.substring(c+2,i.length-1),",",2)))}else{let c=i.substring(0,i.indexOf("(")),h=bn(i.substring(c.length+1,i.length-1),",",2);if(Ml(c))return Object.assign({aggregate:c},n(h));if(bl(c))return Object.assign({timeUnit:c},n(h));if(c==="bin")return Object.assign({bin:{}},n(h))}}e.fn=a})(nc||(nc={}));var mi=te();function re(e){return e!=null&&e.value!==void 0}function O(e){return e!=null&&(e.field||e.aggregate==="count")}function P(e){return e!=null&&"autoCount"in e}function ie(e){return P(e)&&e.autoCount===!1}function Tt(e){return P(e)&&e.autoCount===!0}var rc=[m.AGGREGATE,m.BIN,m.TIMEUNIT,m.FIELD,m.TYPE,m.SCALE,m.SORT,m.AXIS,m.LEGEND,m.STACK,m.FORMAT];function gi(e,t){let{wildcardMode:n="skip"}=t,r={};for(let a of e){if(ie(a))continue;let{channel:i}=a;if(A(i))throw Error("Cannot convert wildcard channel to a fixed channel");let s=re(a)?ic(a):xn(a,t);if(s===null){if(t.wildcardMode==="null")return null;continue}r[i]=s}return r}function ic(e){let{value:t}=e;return A(t)?null:{value:t}}function xn(e,t={}){let{props:n=rc,schema:r,wildcardMode:a="skip"}=t;if(O(e)){let i={};for(let s of n){let c=e[s];if(A(c)){if(a==="skip")continue;return null}if(c!==void 0){if(!(!vn[s]||vn[s][e.channel]))continue;if(tn(s)&&(0,mi.isObject)(c)){for(let h in c=Object.assign({},c),c)if(A(c[h])){if(a==="null")return null;delete c[h]}}if(s==="bin"&&c===!1)continue;s==="type"&&c==="key"?i.type="nominal":i[s]=c}if(s===m.SCALE&&r&&e.type==="ordinal"){let h=e.scale,{ordinalDomain:o}=r.fieldSchema(e.field);h!==null&&o&&(i[m.SCALE]=Object.assign({domain:o},(0,mi.isObject)(h)?h:{}))}}return i}else{if(e.autoCount===!1)throw Error("Cannot convert {autoCount: false} into a field def");return{aggregate:"count",field:"*",type:"quantitative"}}}function Ve(e){return O(e)?!ve(e)&&e.type!=="temporal":P(e)}function ve(e){if(O(e)){let t=xn(e,{props:["bin","timeUnit","type"]});return si(t)||!!t.timeUnit}return!1}function Oe(e){let t=e.scale===!0||e.scale==="?"?{}:e.scale||{},{type:n,channel:r,timeUnit:a,bin:i}=e;if(A(t.type)||A(n)||A(r)||A(i))return;if(t.type)return t.type;if(n==="temporal"&&A(a)||n==="quantitative"&&A(i))return;let s={type:n===se.KEY?"nominal":n,timeUnit:a,bin:i};return $l({type:t.type},r,s,void 0)}function L(e,t,n,r){function a(i){return e(i=new Date(+i)),i}return a.floor=a,a.round=function(i){var s=new Date(+i),c=new Date(i-1);return e(s),e(c),t(c,1),i-s<c-i?s:c},a.ceil=function(i){return e(i=new Date(i-1)),t(i,1),i},a.offset=function(i,s){return t(i=new Date(+i),s==null?1:Math.floor(s)),i},a.range=function(i,s,c){var h=[];if(i=new Date(i-1),s=new Date(+s),c=c==null?1:Math.floor(c),!(i<s)||!(c>0))return h;for(t(i,1),e(i),i<s&&h.push(new Date(+i));t(i,c),e(i),i<s;)h.push(new Date(+i));return h},a.filter=function(i){return L(function(s){for(;e(s),!i(s);)s.setTime(s-1)},function(s,c){for(;--c>=0;)for(;t(s,1),!i(s););})},n&&(a.count=function(i,s){return St.setTime(+i),Nt.setTime(+s),e(St),e(Nt),Math.floor(n(St,Nt))},a.every=function(i){return i=Math.floor(i),!isFinite(i)||!(i>0)?null:i>1?a.filter(r?function(s){return r(s)%i===0}:function(s){return a.count(0,s)%i===0}):a}),a}var St,Nt,z=q((()=>{St=new Date,Nt=new Date})),Ct,wt,ac=q((()=>{z(),Ct=L(function(){},function(e,t){e.setTime(+e+t)},function(e,t){return t-e}),Ct.every=function(e){return e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?L(function(t){t.setTime(Math.floor(t/e)*e)},function(t,n){t.setTime(+t+n*e)},function(t,n){return(n-t)/e}):Ct},wt=Ct})),En,oc=q((()=>{z(),En=L(function(e){e.setMilliseconds(0)},function(e,t){e.setTime(+e+t*1e3)},function(e,t){return(t-e)/1e3},function(e){return e.getSeconds()})})),Tn,sc=q((()=>{z(),Tn=L(function(e){e.setSeconds(0,0)},function(e,t){e.setTime(+e+t*6e4)},function(e,t){return(t-e)/6e4},function(e){return e.getMinutes()})})),Sn,lc=q((()=>{z(),Sn=L(function(e){e.setMinutes(0,0,0)},function(e,t){e.setTime(+e+t*36e5)},function(e,t){return(t-e)/36e5},function(e){return e.getHours()})})),Nn,cc=q((()=>{z(),Nn=L(function(e){e.setHours(0,0,0,0)},function(e,t){e.setDate(e.getDate()+t)},function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*6e4)/864e5},function(e){return e.getDate()-1})}));function ke(e){return L(function(t){t.setHours(0,0,0,0),t.setDate(t.getDate()-(t.getDay()+7-e)%7)},function(t,n){t.setDate(t.getDate()+n*7)},function(t,n){return(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/6048e5})}var At,Cn,wn,An,On,kn,Mn,In,uc=q((()=>{z(),At=ke(0),Cn=ke(1),wn=ke(2),An=ke(3),On=ke(4),kn=ke(5),Mn=ke(6),In=At})),Un,dc=q((()=>{z(),Un=L(function(e){e.setHours(0,0,0,0),e.setDate(1)},function(e,t){e.setMonth(e.getMonth()+t)},function(e,t){return t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12},function(e){return e.getMonth()})})),Fn,fc=q((()=>{z(),Fn=L(function(e){e.setHours(0,0,0,0),e.setMonth(0,1)},function(e,t){e.setFullYear(e.getFullYear()+t)},function(e,t){return t.getFullYear()-e.getFullYear()},function(e){return e.getFullYear()})})),Dn,pc=q((()=>{z(),Dn=L(function(e){e.setUTCMilliseconds(0)},function(e,t){e.setTime(+e+t*1e3)},function(e,t){return(t-e)/1e3},function(e){return e.getUTCSeconds()})})),_n,hc=q((()=>{z(),_n=L(function(e){e.setUTCSeconds(0,0)},function(e,t){e.setTime(+e+t*6e4)},function(e,t){return(t-e)/6e4},function(e){return e.getUTCMinutes()})})),jn,mc=q((()=>{z(),jn=L(function(e){e.setUTCMinutes(0,0,0)},function(e,t){e.setTime(+e+t*36e5)},function(e,t){return(t-e)/36e5},function(e){return e.getUTCHours()})})),Pn,gc=q((()=>{z(),Pn=L(function(e){e.setUTCHours(0,0,0,0)},function(e,t){e.setUTCDate(e.getUTCDate()+t)},function(e,t){return(t-e)/864e5},function(e){return e.getUTCDate()-1})}));function Me(e){return L(function(t){t.setUTCHours(0,0,0,0),t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7)},function(t,n){t.setUTCDate(t.getUTCDate()+n*7)},function(t,n){return(n-t)/6048e5})}var Ot,Rn,$n,Bn,Ln,Wn,qn,Hn,yc=q((()=>{z(),Ot=Me(0),Rn=Me(1),$n=Me(2),Bn=Me(3),Ln=Me(4),Wn=Me(5),qn=Me(6),Hn=Ot})),Gn,vc=q((()=>{z(),Gn=L(function(e){e.setUTCHours(0,0,0,0),e.setUTCDate(1)},function(e,t){e.setUTCMonth(e.getUTCMonth()+t)},function(e,t){return t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12},function(e){return e.getUTCMonth()})})),zn,bc=q((()=>{z(),zn=L(function(e){e.setUTCHours(0,0,0,0),e.setUTCMonth(0,1)},function(e,t){e.setUTCFullYear(e.getUTCFullYear()+t)},function(e,t){return t.getUTCFullYear()-e.getUTCFullYear()},function(e){return e.getUTCFullYear()})})),xc=sr({day:()=>Nn,days:()=>xi,friday:()=>kn,fridays:()=>wi,hour:()=>Sn,hours:()=>bi,interval:()=>L,millisecond:()=>wt,milliseconds:()=>Yn,minute:()=>Tn,minutes:()=>vi,monday:()=>Cn,mondays:()=>Ti,month:()=>Un,months:()=>ki,saturday:()=>Mn,saturdays:()=>Ai,second:()=>En,seconds:()=>yi,sunday:()=>At,sundays:()=>Ei,thursday:()=>On,thursdays:()=>Ci,tuesday:()=>wn,tuesdays:()=>Si,utcDay:()=>Pn,utcDays:()=>ji,utcFriday:()=>Wn,utcFridays:()=>Wi,utcHour:()=>jn,utcHours:()=>_i,utcMillisecond:()=>Ii,utcMilliseconds:()=>Ui,utcMinute:()=>_n,utcMinutes:()=>Di,utcMonday:()=>Rn,utcMondays:()=>Ri,utcMonth:()=>Gn,utcMonths:()=>Gi,utcSaturday:()=>qn,utcSaturdays:()=>qi,utcSecond:()=>Dn,utcSeconds:()=>Fi,utcSunday:()=>Ot,utcSundays:()=>Pi,utcThursday:()=>Ln,utcThursdays:()=>Li,utcTuesday:()=>$n,utcTuesdays:()=>$i,utcWednesday:()=>Bn,utcWednesdays:()=>Bi,utcWeek:()=>Hn,utcWeeks:()=>Hi,utcYear:()=>zn,utcYears:()=>zi,wednesday:()=>An,wednesdays:()=>Ni,week:()=>In,weeks:()=>Oi,year:()=>Fn,years:()=>Mi},1),Yn,yi,vi,bi,xi,Ei,Ti,Si,Ni,Ci,wi,Ai,Oi,ki,Mi,Ii,Ui,Fi,Di,_i,ji,Pi,Ri,$i,Bi,Li,Wi,qi,Hi,Gi,zi,Ec=q((()=>{z(),ac(),oc(),sc(),lc(),cc(),uc(),dc(),fc(),pc(),hc(),mc(),gc(),yc(),vc(),bc(),Yn=wt.range,yi=En.range,vi=Tn.range,bi=Sn.range,xi=Nn.range,Ei=At.range,Ti=Cn.range,Si=wn.range,Ni=An.range,Ci=On.range,wi=kn.range,Ai=Mn.range,Oi=In.range,ki=Un.range,Mi=Fn.range,Ii=wt,Ui=Yn,Fi=Dn.range,Di=_n.range,_i=jn.range,ji=Pn.range,Pi=Ot.range,Ri=Rn.range,$i=$n.range,Bi=Bn.range,Li=Ln.range,Wi=Wn.range,qi=qn.range,Hi=Hn.range,Gi=Gn.range,zi=zn.range})),Tc=le(((e,t)=>{var n=(Ec(),Aa(xc)),r=new Date,a=new Date(0,0,1).setFullYear(0),i=new Date(Date.UTC(0,0,1)).setUTCFullYear(0);function s(f){return r.setTime(+f),r}function c(f,g,y,v,b,x){var S={type:f,date:g,unit:y};return v?S.step=v:S.minstep=1,b!=null&&(S.min=b),x!=null&&(S.max=x),S}function h(f,g,y,v,b,x){return c(f,function(S){return g.offset(y,S)},function(S){return g.count(y,S)},v,b,x)}var o=[h("second",n.second,a),h("minute",n.minute,a),h("hour",n.hour,a),h("day",n.day,a,[1,7]),h("month",n.month,a,[1,3,6]),h("year",n.year,a),c("seconds",function(f){return new Date(1970,0,1,0,0,f)},function(f){return s(f).getSeconds()},null,0,59),c("minutes",function(f){return new Date(1970,0,1,0,f)},function(f){return s(f).getMinutes()},null,0,59),c("hours",function(f){return new Date(1970,0,1,f)},function(f){return s(f).getHours()},null,0,23),c("weekdays",function(f){return new Date(1970,0,4+f)},function(f){return s(f).getDay()},[1],0,6),c("dates",function(f){return new Date(1970,0,f)},function(f){return s(f).getDate()},[1],1,31),c("months",function(f){return new Date(1970,f%12,1)},function(f){return s(f).getMonth()},[1],0,11)],l=[h("second",n.utcSecond,i),h("minute",n.utcMinute,i),h("hour",n.utcHour,i),h("day",n.utcDay,i,[1,7]),h("month",n.utcMonth,i,[1,3,6]),h("year",n.utcYear,i),c("seconds",function(f){return new Date(Date.UTC(1970,0,1,0,0,f))},function(f){return s(f).getUTCSeconds()},null,0,59),c("minutes",function(f){return new Date(Date.UTC(1970,0,1,0,f))},function(f){return s(f).getUTCMinutes()},null,0,59),c("hours",function(f){return new Date(Date.UTC(1970,0,1,f))},function(f){return s(f).getUTCHours()},null,0,23),c("weekdays",function(f){return new Date(Date.UTC(1970,0,4+f))},function(f){return s(f).getUTCDay()},[1],0,6),c("dates",function(f){return new Date(Date.UTC(1970,0,f))},function(f){return s(f).getUTCDate()},[1],1,31),c("months",function(f){return new Date(Date.UTC(1970,f%12,1))},function(f){return s(f).getUTCMonth()},[1],0,11)],u=[[31536e6,5],[7776e6,4],[2592e6,4],[12096e5,3],[6048e5,3],[1728e5,3],[864e5,3],[432e5,2],[216e5,2],[108e5,2],[36e5,2],[18e5,1],[9e5,1],[3e5,1],[6e4,1],[3e4,0],[15e3,0],[5e3,0],[1e3,0]];function d(f,g,y,v){var b=u[0],x,S,C;for(x=1,S=u.length;x<S;++x)if(b=u[x],g>b[0]){if(C=g/b[0],C>v)return f[u[x-1][1]];if(C>=y)return f[b[1]]}return f[u[S-1][1]]}function p(f){var g={},y,v;for(y=0,v=f.length;y<v;++y)g[f[y].type]=f[y];return g.find=function(b,x,S){return d(f,b,x,S)},g}t.exports=p(o),t.exports.utc=p(l)})),Sc=le(((e,t)=>{var n=te(),r=Tc(),a=1e-15;function i(u){if(!u)throw Error("Missing binning options.");var d=u.maxbins||15,p=u.base||10,f=Math.log(p),g=u.div||[5,2],y=u.min,v=u.max,b=v-y,x,S,C,T,w,N,D;if(u.step)x=u.step;else if(u.steps)x=u.steps[Math.min(u.steps.length-1,s(u.steps,b/d,0,u.steps.length))];else{for(S=Math.ceil(Math.log(d)/f),C=u.minstep||0,x=Math.max(C,p**+(Math.round(Math.log(b)/f)-S));Math.ceil(b/x)>d;)x*=p;for(N=0;N<g.length;++N)w=x/g[N],w>=C&&b/w<=d&&(x=w)}return w=Math.log(x),T=w>=0?0:~~(-w/f)+1,D=p**(-T-1),y=Math.min(y,Math.floor(y/x+D)*x),v=Math.ceil(v/x)*x,{start:y,stop:v,step:x,unit:{precision:T},value:c,index:h}}function s(u,d,p,f){for(;p<f;){var g=p+f>>>1;n.cmp(u[g],d)<0?p=g+1:f=g}return p}function c(u){return this.step*Math.floor(u/this.step+a)}function h(u){return Math.floor((u-this.start)/this.step+a)}function o(u){return this.unit.date(c.call(this,u))}function l(u){return h.call(this,this.unit.unit(u))}i.date=function(u){if(!u)throw Error("Missing date binning options.");var d=u.utc?r.utc:r,p=u.min,f=u.max,g=u.maxbins||20,y=u.minbins||4,v=f-+p,b=u.unit?d[u.unit]:d.find(v,y,g),x=i({min:b.min==null?b.unit(p):b.min,max:b.max==null?b.unit(f):b.max,maxbins:g,minstep:b.minstep,steps:b.step});return x.unit=b,x.index=l,u.raw||(x.value=o),x},t.exports=i})),Yi=le(((e,t)=>{var n=te(),r="__types__",a={boolean:n.boolean,integer:n.number,number:n.number,date:n.date,string:function(p){return p==null||p===""?null:p+""}},i={boolean:function(p){return p==="true"||p==="false"||n.isBoolean(p)},integer:function(p){return i.number(p)&&(p=+p)===~~p},number:function(p){return!isNaN(+p)&&!n.isDate(p)},date:function(p){return!isNaN(Date.parse(p))}};function s(p,f){if(!f)return p&&p[r]||null;p[r]=f}function c(p){return n.keys(p)}function h(p){return"["+p+"]"}function o(p,f){p=n.array(p),f=n.$(f);var g,y,v;if(p[r]&&(g=f(p[r]),n.isString(g)))return g;for(y=0,v=p.length;!n.isValid(g)&&y<v;++y)g=f?f(p[y]):p[y];return n.isDate(g)?"date":n.isNumber(g)?"number":n.isBoolean(g)?"boolean":n.isString(g)?"string":null}function l(p,f){if(p.length){var g=f?n.identity:(f=c(p[0]),h);return f.reduce(function(y,v){return y[v]=o(p,g(v)),y},{})}}function u(p,f){p=n.array(p),f=n.$(f);var g,y,v,b=["boolean","integer","number","date"];for(g=0;g<p.length;++g){for(v=f?f(p[g]):p[g],y=0;y<b.length;++y)n.isValid(v)&&!i[b[y]](v)&&(b.splice(y,1),--y);if(b.length===0)return"string"}return b[0]}function d(p,f){var g=f?n.identity:(f=c(p[0]),h);return f.reduce(function(y,v){return y[v]=u(p,g(v)),y},{})}o.annotation=s,o.all=l,o.infer=u,o.inferAll=d,o.parsers=a,t.exports=o})),Nc=le(((e,t)=>{var n=te(),r=t.exports;r.repeat=function(a,i){var s=Array(i),c;for(c=0;c<i;++c)s[c]=a;return s},r.zeros=function(a){return r.repeat(0,a)},r.range=function(a,i,s){if(arguments.length<3&&(s=1,arguments.length<2&&(i=a,a=0)),(i-a)/s==1/0)throw Error("Infinite range");var c=[],h=-1,o;if(s<0)for(;(o=a+s*++h)>i;)c.push(o);else for(;(o=a+s*++h)<i;)c.push(o);return c},r.random={},r.random.uniform=function(a,i){i===void 0&&(i=a===void 0?1:a,a=0);var s=i-a,c=function(){return a+s*Math.random()};return c.samples=function(h){return r.zeros(h).map(c)},c.pdf=function(h){return h>=a&&h<=i?1/s:0},c.cdf=function(h){return h<a?0:h>i?1:(h-a)/s},c.icdf=function(h){return h>=0&&h<=1?a+h*s:NaN},c},r.random.integer=function(a,i){i===void 0&&(i=a,a=0);var s=i-a,c=function(){return a+Math.floor(s*Math.random())};return c.samples=function(h){return r.zeros(h).map(c)},c.pdf=function(h){return h===Math.floor(h)&&h>=a&&h<i?1/s:0},c.cdf=function(h){var o=Math.floor(h);return o<a?0:o>=i?1:(o-a+1)/s},c.icdf=function(h){return h>=0&&h<=1?a-1+Math.floor(h*s):NaN},c},r.random.normal=function(a,i){a||(a=0),i||(i=1);var s,c=function(){var h=0,o=0,l,u;if(s!==void 0)return h=s,s=void 0,h;do h=Math.random()*2-1,o=Math.random()*2-1,l=h*h+o*o;while(l===0||l>1);return u=Math.sqrt(-2*Math.log(l)/l),s=a+o*u*i,a+h*u*i};return c.samples=function(h){return r.zeros(h).map(c)},c.pdf=function(h){var o=Math.exp((h-a)**2/(-2*i**2));return 1/(i*Math.sqrt(2*Math.PI))*o},c.cdf=function(h){var o,l=(h-a)/i,u=Math.abs(l);if(u>37)o=0;else{var d,p=Math.exp(-u*u/2);u<7.07106781186547?(d=.0352624965998911*u+.700383064443688,d=d*u+6.37396220353165,d=d*u+33.912866078383,d=d*u+112.079291497871,d=d*u+221.213596169931,d=d*u+220.206867912376,o=p*d,d=.0883883476483184*u+1.75566716318264,d=d*u+16.064177579207,d=d*u+86.7807322029461,d=d*u+296.564248779674,d=d*u+637.333633378831,d=d*u+793.826512519948,d=d*u+440.413735824752,o/=d):(d=u+.65,d=u+4/d,d=u+3/d,d=u+2/d,d=u+1/d,o=p/d/2.506628274631)}return l>0?1-o:o},c.icdf=function(h){if(h<=0||h>=1)return NaN;var o=2*h-1,l=8*(Math.PI-3)/(3*Math.PI*(4-Math.PI)),u=2/(Math.PI*l)+Math.log(1-o**2)/2,d=Math.log(1-o*o)/l,p=(o>0?1:-1)*Math.sqrt(Math.sqrt(u*u-d)-u);return a+i*Math.SQRT2*p},c},r.random.bootstrap=function(a,i){var s=a.filter(n.isValid),c=s.length,h=i?r.random.normal(0,i):null,o=function(){return s[~~(Math.random()*c)]+(h?h():0)};return o.samples=function(l){return r.zeros(l).map(o)},o}})),Cc=le(((e,t)=>{var n=te(),r=Yi(),a=Nc(),i=t.exports;i.unique=function(o,l,u){l=n.$(l),u||(u=[]);var d={},p,f,g;for(f=0,g=o.length;f<g;++f)p=l?l(o[f]):o[f],!(p in d)&&(d[p]=1,u.push(p));return u},i.count=function(o){return o&&o.length||0},i.count.valid=function(o,l){l=n.$(l);var u,d,p,f=0;for(d=0,p=o.length;d<p;++d)u=l?l(o[d]):o[d],n.isValid(u)&&(f+=1);return f},i.count.missing=function(o,l){l=n.$(l);var u,d,p,f=0;for(d=0,p=o.length;d<p;++d)u=l?l(o[d]):o[d],u??(f+=1);return f},i.count.distinct=function(o,l){l=n.$(l);var u={},d,p,f,g=0;for(p=0,f=o.length;p<f;++p)d=l?l(o[p]):o[p],!(d in u)&&(u[d]=1,g+=1);return g},i.count.map=function(o,l){l=n.$(l);var u={},d,p,f;for(p=0,f=o.length;p<f;++p)d=l?l(o[p]):o[p],u[d]=d in u?u[d]+1:1;return u},i.median=function(o,l){return l&&(o=o.map(n.$(l))),o=o.filter(n.isValid).sort(n.cmp),i.quantile(o,.5)},i.quartile=function(o,l){l&&(o=o.map(n.$(l))),o=o.filter(n.isValid).sort(n.cmp);var u=i.quantile;return[u(o,.25),u(o,.5),u(o,.75)]},i.quantile=function(o,l,u){u===void 0&&(u=l,l=n.identity),l=n.$(l);var d=(o.length-1)*u+1,p=Math.floor(d),f=+l(o[p-1]),g=d-p;return g?f+g*(l(o[p])-f):f},i.sum=function(o,l){l=n.$(l);for(var u=0,d=0,p=o.length,f;d<p;++d)f=l?l(o[d]):o[d],n.isValid(f)&&(u+=f);return u},i.mean=function(o,l){l=n.$(l);var u=0,d,p,f,g,y;for(p=0,g=0,f=o.length;p<f;++p)y=l?l(o[p]):o[p],n.isValid(y)&&(d=y-u,u+=d/++g);return u},i.mean.geometric=function(o,l){l=n.$(l);var u=1,d,p,f,g;for(g=0,d=0,p=o.length;g<p;++g)if(f=l?l(o[g]):o[g],n.isValid(f)){if(f<=0)throw Error("Geometric mean only defined for positive values.");u*=f,++d}return u=d>0?u**(1/d):0,u},i.mean.harmonic=function(o,l){l=n.$(l);var u=0,d,p,f,g;for(g=0,d=0,p=o.length;g<p;++g)f=l?l(o[g]):o[g],n.isValid(f)&&(u+=1/f,++d);return d/u},i.variance=function(o,l){if(l=n.$(l),!n.isArray(o)||o.length<2)return 0;var u=0,d=0,p,f,g,y;for(f=0,g=0;f<o.length;++f)y=l?l(o[f]):o[f],n.isValid(y)&&(p=y-u,u+=p/++g,d+=p*(y-u));return d/=g-1,d},i.stdev=function(o,l){return Math.sqrt(i.variance(o,l))},i.modeskew=function(o,l){var u=i.mean(o,l),d=i.median(o,l),p=i.stdev(o,l);return p===0?0:(u-d)/p},i.min=function(o,l){return i.extent(o,l)[0]},i.max=function(o,l){return i.extent(o,l)[1]},i.extent=function(o,l){l=n.$(l);var u,d,p,f,g=o.length;for(f=0;f<g;++f)if(p=l?l(o[f]):o[f],n.isValid(p)){u=d=p;break}for(;f<g;++f)p=l?l(o[f]):o[f],n.isValid(p)&&(p<u&&(u=p),p>d&&(d=p));return[u,d]},i.extent.index=function(o,l){l=n.$(l);var u=-1,d=-1,p,f,g,y,v=o.length;for(y=0;y<v;++y)if(g=l?l(o[y]):o[y],n.isValid(g)){p=f=g,u=d=y;break}for(;y<v;++y)g=l?l(o[y]):o[y],n.isValid(g)&&(g<p&&(p=g,u=y),g>f&&(f=g,d=y));return[u,d]},i.dot=function(o,l,u){var d=0,p,f;if(u)for(l=n.$(l),u=n.$(u),p=0;p<o.length;++p)f=l(o[p])*u(o[p]),f===f&&(d+=f);else{if(o.length!==l.length)throw Error("Array lengths must match.");for(p=0;p<o.length;++p)f=o[p]*l[p],f===f&&(d+=f)}return d},i.dist=function(o,l,u,d){var p=n.isFunction(u)||n.isString(u),f=o,g=p?o:l,y=p?d:u,v=y===2||y==null,b=o.length,x=0,S,C;for(p&&(l=n.$(l),u=n.$(u)),C=0;C<b;++C)S=p?l(f[C])-u(g[C]):f[C]-g[C],x+=v?S*S:Math.abs(S)**+y;return v?Math.sqrt(x):x**(1/y)},i.cohensd=function(o,l,u){var d=u?o.map(n.$(l)):o,p=u?o.map(n.$(u)):l,f=i.mean(d),g=i.mean(p),y=i.count.valid(d),v=i.count.valid(p);if(y+v-2<=0)return 0;var b=i.variance(d),x=i.variance(p),S=Math.sqrt(((y-1)*b+(v-1)*x)/(y+v-2));return S===0?0:(f-g)/S},i.covariance=function(o,l,u){var d=u?o.map(n.$(l)):o,p=u?o.map(n.$(u)):l,f=d.length,g=i.mean(d),y=i.mean(p),v=0,b=0,x,S,C,T,w;if(f!==p.length)throw Error("Input lengths must match.");for(x=0;x<f;++x)if(S=d[x],T=n.isValid(S),C=p[x],w=n.isValid(C),T&&w)v+=(S-g)*(C-y),++b;else if(T||w)throw Error("Valid values must align.");return v/(b-1)},i.rank=function(o,l){l=n.$(l)||n.identity;var u=o.map(function(x,S){return{idx:S,val:l(x)}}).sort(n.comparator("val")),d=o.length,p=Array(d),f=-1,g={},y,v,b;for(y=0;y<d;++y){if(v=u[y].val,f<0&&g===v)f=y-1;else if(f>-1&&g!==v){for(b=1+(y-1+f)/2;f<y;++f)p[u[f].idx]=b;f=-1}p[u[y].idx]=y+1,g=v}if(f>-1)for(b=1+(d-1+f)/2;f<d;++f)p[u[f].idx]=b;return p},i.cor=function(o,l,u){var d=u;u=d?o.map(n.$(u)):l,l=d?o.map(n.$(l)):o;var p=i.dot(l,u),f=i.mean(l),g=i.mean(u),y=i.stdev(l),v=i.stdev(u),b=o.length;return(p-b*f*g)/((b-1)*y*v)},i.cor.rank=function(o,l,u){var d=u?i.rank(o,l):i.rank(o),p=u?i.rank(o,u):i.rank(l),f=o.length,g,y,v;for(g=0,y=0;g<f;++g)v=d[g]-p[g],y+=v*v;return 1-6*y/(f*(f*f-1))},i.cor.dist=function(o,l,u){var d=u?o.map(n.$(l)):o,p=u?o.map(n.$(u)):l,f=i.dist.mat(d),g=i.dist.mat(p),y=f.length,v,b,x,S;for(v=0,b=0,x=0,S=0;v<y;++v)b+=f[v]*f[v],x+=g[v]*g[v],S+=f[v]*g[v];return Math.sqrt(S/Math.sqrt(b*x))},i.linearRegression=function(o,l,u){var d=u?o.map(n.$(l)):o,p=u?o.map(n.$(u)):l,f=d.length,g=i.covariance(d,p),y=i.stdev(d),v=i.stdev(p),b=g/(y*y),x=i.mean(p)-b*i.mean(d),S={slope:b,intercept:x,R:g/(y*v),rss:0},C,T;for(T=0;T<f;++T)n.isValid(d[T])&&n.isValid(p[T])&&(C=b*d[T]+x-p[T],S.rss+=C*C);return S},i.bootstrap={},i.bootstrap.ci=function(o,l,u,d,p){var f,g,y,v,b,x,S;for(n.isFunction(l)||n.isString(l)?(f=o.map(n.$(l)),g=u,y=d,v=p):(f=o,g=l,y=u,v=d),g=g?+g:1e3,y||(y=.05),b=a.random.bootstrap(f,v),S=0,x=Array(g);S<g;++S)x[S]=i.mean(b.samples(f.length));return x.sort(n.numcmp),[i.quantile(x,y/2),i.quantile(x,1-y/2)]},i.z={},i.z.ci=function(o,l,u){var d=o,p=l;(n.isFunction(l)||n.isString(l))&&(d=o.map(n.$(l)),p=u),p||(p=.05);var f=p===.05?1.96:a.random.normal(0,1).icdf(1-p/2),g=i.mean(d),y=i.stdev(d)/Math.sqrt(i.count.valid(d));return[g-f*y,g+f*y]},i.z.test=function(o,l,u,d){return n.isFunction(u)||n.isString(u)?(d&&d.paired?c:h)(d,o,l,u):n.isArray(l)?(u&&u.paired?c:h)(u,o,l):n.isFunction(l)||n.isString(l)?s(u,o,l):s(l,o)};function s(o,l,u){var d=o&&o.nullh||0,p=a.random.normal(0,1),f=i.mean(l,u),g=i.stdev(l,u)/Math.sqrt(i.count.valid(l,u));if(g===0)return f-d===0?1:0;var y=(f-d)/g;return 2*p.cdf(-Math.abs(y))}function c(o,l,u,d){var p=d?l.map(n.$(u)):l,f=d?l.map(n.$(d)):u,g=i.count(p),y=i.count(f),v=[],b;if(g!==y)throw Error("Array lengths must match.");for(b=0;b<g;++b)n.isValid(p[b])&&n.isValid(f[b])&&v.push(p[b]-f[b]);return i.z.test(v,o&&o.nullh||0)}function h(o,l,u,d){var p=d?l.map(n.$(u)):l,f=d?l.map(n.$(d)):u,g=i.count.valid(p),y=i.count.valid(f),v=a.random.normal(0,1),b=i.mean(p)-i.mean(f)-(o&&o.nullh||0),x=Math.sqrt(i.variance(p)/g+i.variance(f)/y);if(x===0)return b===0?1:0;var S=b/x;return 2*v.cdf(-Math.abs(S))}i.dist.mat=function(o){var l=o.length,u=l*l,d=Array(u),p=a.zeros(l),f=0,g,y,v;for(y=0;y<l;++y)for(d[y*l+y]=0,v=y+1;v<l;++v)d[y*l+v]=g=Math.abs(o[y]-o[v]),d[v*l+y]=g,p[y]+=g,p[v]+=g;for(y=0;y<l;++y)f+=p[y],p[y]/=l;for(f/=u,y=0;y<l;++y)for(v=y;v<l;++v)d[y*l+v]+=f-p[y]-p[v],d[v*l+y]=d[y*l+v];return d},i.entropy=function(o,l){l=n.$(l);var u,d,p=0,f=0,g=o.length;for(u=0;u<g;++u)p+=l?l(o[u]):o[u];if(p===0)return 0;for(u=0;u<g;++u)d=(l?l(o[u]):o[u])/p,d&&(f+=d*Math.log(d));return-f/Math.LN2},i.mutual=function(o,l,u,d){var p=d?o.map(n.$(l)):o,f=d?o.map(n.$(u)):l,g=d?o.map(n.$(d)):u,y={},v={},b=g.length,x=0,S=0,C=0,T,w,N;for(N=0;N<b;++N)y[p[N]]=0,v[f[N]]=0;for(N=0;N<b;++N)y[p[N]]+=g[N],v[f[N]]+=g[N],x+=g[N];for(w=1/(x*Math.LN2),N=0;N<b;++N)g[N]!==0&&(T=x*g[N]/(y[p[N]]*v[f[N]]),S+=g[N]*w*Math.log(T),C+=g[N]*w*Math.log(g[N]/x));return[S,1+S/C]},i.mutual.info=function(o,l,u,d){return i.mutual(o,l,u,d)[0]},i.mutual.dist=function(o,l,u,d){return i.mutual(o,l,u,d)[1]},i.profile=function(o,l){var u=0,d=0,p=0,f=0,g=null,y=null,v=0,b=[],x={},S,C,T,w,N;for(T=0;T<o.length;++T)w=l?l(o[T]):o[T],x[w]=w in x?x[w]+1:(f+=1,1),w==null?++p:n.isValid(w)&&(N=typeof w=="string"?w.length:w,(g===null||N<g)&&(g=N),(y===null||N>y)&&(y=N),S=N-u,u+=S/++d,v+=S*(N-u),b.push(N));return v/=d-1,C=Math.sqrt(v),b.sort(n.cmp),{type:r(o,l),unique:x,count:o.length,valid:d,missing:p,distinct:f,min:g,max:y,mean:u,stdev:C,median:w=i.quantile(b,.5),q1:i.quantile(b,.25),q3:i.quantile(b,.75),modeskew:C===0?0:(u-w)/C}},i.summary=function(o,l){l||(l=n.keys(o[0]));var u=l.map(function(d){var p=i.profile(o,n.$(d));return p.field=d,p});return u.__summary__=!0,u}})),wc=Xe(Sc()),Ac=Yi(),Oc=Cc(),kc=wc.default;function Mc(e,t={},n={fields:[]}){t=(0,U.extend)({},Qe,t);let r=(0,Oc.summary)(e),a=(0,Ac.inferAll)(e),i=n.fields.reduce((c,h)=>(c[h.name]=h,c),{}),s=r.map(function(c,h){let o=c.field,l=a[o]==="date"?R.DATETIME:a[o],u=c.distinct,d;if(l===R.NUMBER)d=ee;else if(l===R.INTEGER)d=u<t.numberNominalLimit&&u/c.count<t.numberNominalProportion?Ce:ee;else if(l===R.DATETIME){d=ge,c.min=new Date(e[0][o]),c.max=new Date(e[0][o]);for(let g of e){let y=new Date(g[o]).getTime();y<c.min.getTime()&&(c.min=new Date(y)),y>c.max.getTime()&&(c.max=new Date(y))}}else d=Ce;d==="nominal"&&u/c.count>t.minPercentUniqueForKey&&c.count>t.minCardinalityForKey&&(d=se.KEY);let p={name:o,originalIndex:h,vlType:d,type:l,stats:c,timeStats:{},binStats:{}},f=i[p.name];return p=(0,U.extend)(p,f),p});for(let c of s)if(c.vlType==="quantitative")for(let h of t.enum.binProps.maxbins)c.binStats[h]=Qi(h,c.stats);else if(c.vlType==="temporal")for(let h of t.enum.timeUnit)h!==void 0&&(c.timeStats[h]=Vi(h,c.stats));return new Ic(Object.assign({},n,{fields:s}))}var kt={nominal:0,key:1,ordinal:2,temporal:3,quantitative:4},Ic=class{constructor(e){this._tableSchema=e,e.fields.sort(function(t,n){return kt[t.vlType]<kt[n.vlType]?-1:kt[t.vlType]>kt[n.vlType]?1:t.name.localeCompare(n.name)}),e.fields.forEach((t,n)=>t.index=n),this._fieldSchemaIndex=e.fields.reduce((t,n)=>(t[n.name]=n,t),{})}fieldNames(){return this._tableSchema.fields.map(e=>e.name)}get fieldSchemas(){return this._tableSchema.fields}fieldSchema(e){return this._fieldSchemaIndex[e]}tableSchema(){let e=(0,U.duplicate)(this._tableSchema);return e.fields.sort((t,n)=>t.originalIndex-n.originalIndex),e}primitiveType(e){return this._fieldSchemaIndex[e]?this._fieldSchemaIndex[e].type:null}vlType(e){return this._fieldSchemaIndex[e]?this._fieldSchemaIndex[e].vlType:null}cardinality(e,t=!0,n=!1){let r=this._fieldSchemaIndex[e.field];if(e.aggregate||P(e)&&e.autoCount)return 1;if(e.bin){let a;a=typeof e.bin=="boolean"?{maxbins:pn(e.channel)}:e.bin==="?"?{enum:[!0,!1]}:e.bin;let i=a.maxbins;return r.binStats[i]||(r.binStats[i]=Qi(i,r.stats)),r.binStats[i].distinct}else if(e.timeUnit){if(t)switch(e.timeUnit){case B.SECONDS:return 60;case B.MINUTES:return 60;case B.HOURS:return 24;case B.DAY:return 7;case B.DATE:return 31;case B.MONTH:return 12;case B.QUARTER:return 4;case B.MILLISECONDS:return 1e3}let a=e.timeUnit,i=r.timeStats;return(!i||!i[a])&&(i=Object.assign({},i,{[a]:Vi(e.timeUnit,r.stats)})),n?i[a].distinct-Ki(i[a].unique,["Invalid Date",null]):i[a].distinct}else return r?n?r.stats.distinct-Ki(r.stats.unique,[NaN,null]):r.stats.distinct:null}timeUnitHasVariation(e){if(!e.timeUnit)return;if(e.timeUnit===B.DAY){let n=(0,U.extend)({},e,{timeUnit:B.DATE});if(this.cardinality(n,!1,!0)<=1)return!1}let t=e.timeUnit;for(let n of Xr)if(ni(t,n)){let r=(0,U.extend)({},e,{timeUnit:n});if(this.cardinality(r,!1,!0)<=1)return!1}return!0}domain(e){let t=this._fieldSchemaIndex[e.field],n=(0,U.keys)(t.stats.unique);return t.vlType==="quantitative"?[+t.stats.min,+t.stats.max]:t.type===R.DATETIME?[t.stats.min,t.stats.max]:t.type===R.INTEGER||t.type===R.NUMBER?(n=n.map(r=>+r),n.sort(U.cmp)):t.vlType==="ordinal"&&t.ordinalDomain?t.ordinalDomain:n.map(r=>r==="null"?null:r).sort(U.cmp)}stats(e){let t=this._fieldSchemaIndex[e.field];return t?t.stats:null}};function Qi(e,t){let n=kc({min:t.min,max:t.max,maxbins:e}),r=(0,U.extend)({},t);return r.unique=Uc(n,t.unique),r.distinct=(n.stop-n.start)/n.step,r.min=n.start,r.max=n.stop,r}function Vi(e,t){let n=(0,U.extend)({},t),r={};return(0,U.keys)(t.unique).forEach(function(a){let i=a==="null"?null:new Date(a),s;s=i===null?null:isNaN(i.getTime())?"Invalid Date":(e===B.DAY?i.getDay():El(e,i)).toString(),r[s]=(r[s]||0)+t.unique[a]}),n.unique=r,n.distinct=(0,U.keys)(r).length,n}function Uc(e,t){let n={};for(let r in t){let a;a=r===null?null:isNaN(Number(r))?NaN:e.value(Number(r)),n[a]=(n[a]||0)+t[r]}return n}function Ki(e,t){return t.reduce(function(n,r){return e[r]?n+1:n},0)}var R;(function(e){e[e.STRING="string"]="STRING",e[e.NUMBER="number"]="NUMBER",e[e.INTEGER="integer"]="INTEGER",e[e.BOOLEAN="boolean"]="BOOLEAN",e[e.DATETIME="datetime"]="DATETIME"})(R||(R={}));var Ji=class{constructor(e){this.constraint=e}name(){return this.constraint.name}description(){return this.constraint.description}properties(){return this.constraint.properties}strict(){return this.constraint.strict}},Xi=class extends Ji{constructor(e){super(e)}hasAllRequiredPropertiesSpecific(e){return ae(this.constraint.properties,t=>{if(oe(t)){let n=t.parent,r=t.child;return e[n]?!A(e[n][r]):!0}return e[t]?!A(e[t]):!0})}satisfy(e,t,n,r){return!this.constraint.allowWildcardForProperties&&!this.hasAllRequiredPropertiesSpecific(e)?!0:this.constraint.satisfy(e,t,n,r)}};const Zi=[{name:"aggregateOpSupportedByType",description:"Aggregate function should be supported by data type.",properties:[m.TYPE,m.AGGREGATE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>e.aggregate?!li(e.type):!0},{name:"asteriskFieldWithCountOnly",description:'Field="*" should be disallowed except aggregate="count"',properties:[m.FIELD,m.AGGREGATE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>e.field==="*"==(e.aggregate==="count")},{name:"minCardinalityForBin",description:"binned quantitative field should not have too low cardinality",properties:[m.BIN,m.FIELD,m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>{if(e.bin&&e.type==="quantitative"){let a={channel:e.channel,field:e.field,type:e.type};return t.cardinality(a)>=r.minCardinalityForBin}return!0}},{name:"binAppliedForQuantitative",description:"bin should be applied to quantitative field only.",properties:[m.TYPE,m.BIN],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>e.bin?e.type===ee:!0},{name:"channelFieldCompatible",description:"encoding channel's range type be compatible with channel type.",properties:[m.CHANNEL,m.TYPE,m.BIN,m.TIMEUNIT],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>{let a=Object.assign({field:"f"},xn(e,{schema:t,props:["bin","timeUnit","type"]})),{compatible:i}=Rl(a,e.channel);return i?!0:!!((e.channel==="row"||e.channel==="column")&&(hl(a.timeUnit)||ml(a.timeUnit)))}},{name:"hasFn",description:"A field with as hasFn flag should have one of aggregate, timeUnit, or bin.",properties:[m.AGGREGATE,m.BIN,m.TIMEUNIT],allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n,r)=>e.hasFn?!!e.aggregate||!!e.bin||!!e.timeUnit:!0},{name:"omitScaleZeroWithBinnedField",description:"Do not use scale zero with binned field",properties:[m.SCALE,de("scale","zero"),m.BIN],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>!(e.bin&&e.scale&&e.scale.zero===!0)},{name:"onlyOneTypeOfFunction",description:"Only of of aggregate, autoCount, timeUnit, or bin should be applied at the same time.",properties:[m.AGGREGATE,m.AUTOCOUNT,m.TIMEUNIT,m.BIN],allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n,r)=>O(e)?(!A(e.aggregate)&&e.aggregate?1:0)+(!A(e.bin)&&e.bin?1:0)+(!A(e.timeUnit)&&e.timeUnit?1:0)<=1:!0},{name:"timeUnitAppliedForTemporal",description:"Time unit should be applied to temporal field only.",properties:[m.TYPE,m.TIMEUNIT],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>!(e.timeUnit&&e.type!=="temporal")},{name:"timeUnitShouldHaveVariation",description:"A particular time unit should be applied only if they produce unique values.",properties:[m.TIMEUNIT,m.TYPE],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>e.timeUnit&&e.type==="temporal"?!n.has("timeUnit")&&!r.constraintManuallySpecifiedValue?!0:t.timeUnitHasVariation(e):!0},{name:"scalePropertiesSupportedByScaleType",description:"Scale properties must be supported by correct scale type",properties:[].concat(pt,[m.SCALE,m.TYPE]),allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n,r)=>{if(e.scale){let a=e.scale,i=Oe(e);if(i==null)return!0;for(let s in a){if(s==="type"||s==="name"||s==="enum")continue;let c=s;if(i==="point"){if(!Zt("point",c)&&!Zt("band",c))return!1}else if(!Zt(i,c))return!1}}return!0}},{name:"scalePropertiesSupportedByChannel",description:"Not all scale properties are supported by all encoding channels",properties:[].concat(pt,[m.SCALE,m.CHANNEL]),allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n,r)=>{if(e){let a=e.channel,i=e.scale;if(a&&!A(a)&&i){if(a==="row"||a==="column")return!1;for(let s in i)if(i.hasOwnProperty(s)&&!(s==="type"||s==="name"||s==="enum")&&Xs(a,s)!==void 0)return!1}}return!0}},{name:"typeMatchesPrimitiveType",description:"Data type should be supported by field's primitive type.",properties:[m.FIELD,m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>{if(e.field==="*")return!0;let a=t.primitiveType(e.field),i=e.type;if(!n.has("field")&&!n.has("type")&&!r.constraintManuallySpecifiedValue)return!0;switch(a){case R.BOOLEAN:case R.STRING:return i!=="quantitative"&&i!=="temporal";case R.NUMBER:case R.INTEGER:return i!==ge;case R.DATETIME:return i===ge;case null:return!1}throw Error("Not implemented")}},{name:"typeMatchesSchemaType",description:"Enumerated data type of a field should match the field's type in the schema.",properties:[m.FIELD,m.TYPE],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>!n.has("field")&&!n.has("type")&&!r.constraintManuallySpecifiedValue?!0:e.field==="*"?e.type===ee:t.vlType(e.field)===e.type},{name:"maxCardinalityForCategoricalColor",description:"Categorical channel should not have too high cardinality",properties:[m.CHANNEL,m.FIELD],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>e.channel==="color"&&(e.type==="nominal"||e.type===se.KEY)?t.cardinality(e)<=r.maxCardinalityForCategoricalColor:!0},{name:"maxCardinalityForFacet",description:"Row/column channel should not have too high cardinality",properties:[m.CHANNEL,m.FIELD,m.BIN,m.TIMEUNIT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>e.channel==="row"||e.channel==="column"?t.cardinality(e)<=r.maxCardinalityForFacet:!0},{name:"maxCardinalityForShape",description:"Shape channel should not have too high cardinality",properties:[m.CHANNEL,m.FIELD,m.BIN,m.TIMEUNIT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n,r)=>e.channel==="shape"?t.cardinality(e)<=r.maxCardinalityForShape:!0},{name:"dataTypeAndFunctionMatchScaleType",description:"Scale type must match data type",properties:[m.TYPE,m.SCALE,de("scale","type"),m.TIMEUNIT,m.BIN],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>{if(e.scale){let a=e.type,i=Oe(e);if(li(a))return i===void 0||we(i);if(a==="temporal")return e.timeUnit?K([F.TIME,F.UTC,void 0],i)||we(i):K([F.TIME,F.UTC,void 0],i);if(a==="quantitative")return e.bin?K([F.LINEAR,void 0],i):K([F.LOG,F.POW,F.SQRT,F.QUANTILE,F.QUANTIZE,F.LINEAR,void 0],i)}return!0}},{name:"stackIsOnlyUsedWithXY",description:"stack should only be allowed for x and y channels",properties:[m.STACK,m.CHANNEL],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>e.stack?e.channel==="x"||e.channel==="y":!0}].map(e=>new Xi(e));Zi.reduce((e,t)=>(e[t.name()]=t,e),{});const Fc=Zi.reduce((e,t)=>{for(let n of t.properties())e.set(n,e.get(n)||[]),e.get(n).push(t);return e},new ne),ea=[{name:"doesNotSupportConstantValue",description:"row, column, x, y, order, and detail should not work with constant values.",properties:[m.TYPE,m.AGGREGATE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n,r)=>!K(["row","column","x","y","detail","order"],e.channel)}].map(e=>new Xi(e));ea.reduce((e,t)=>(e[t.name()]=t,e),{});const Dc=ea.reduce((e,t)=>{for(let n of t.properties())e.set(n,e.get(n)||[]),e.get(n).push(t);return e},new ne);function _c(e,t,n,r,a,i){let s=Fc.get(e)||[],c=r.getEncodingQueryByIndex(n);for(let o of s)if((o.strict()||i[o.name()])&&!o.satisfy(c,a,r.wildcardIndex.encodings[n],i)){let l="(enc) "+o.name();return i.verbose&&console.log(l+" failed with "+r.toShorthand()+" for "+t.name),l}let h=Dc.get(e)||[];for(let o of h)if((o.strict()||i[o.name()])&&re(c)&&!o.satisfy(c,a,r.wildcardIndex.encodings[n],i)){let l="(enc) "+o.name();return i.verbose&&console.log(l+" failed with "+r.toShorthand()+" for "+t.name),l}return null}var jc=Mr.reduce((e,t)=>(e[t]=!0,e),{}),Pc=class extends Ji{constructor(e){super(e)}hasAllRequiredPropertiesSpecific(e){return ae(this.constraint.properties,t=>{if(t===m.MARK)return!A(e.getMark());if(oe(t)){let n=t.parent,r=t.child;return ae(e.getEncodings(),a=>a[n]?!A(a[n][r]):!0)}if(!Kr(t))throw Error("UNIMPLEMENTED");return ae(e.getEncodings(),n=>n[t]?!A(n[t]):!0)})}satisfy(e,t,n){return!this.constraint.allowWildcardForProperties&&!this.hasAllRequiredPropertiesSpecific(e)?!0:this.constraint.satisfy(e,t,n)}};const ta=[{name:"noRepeatedChannel",description:"Each encoding channel should only be used once.",properties:[m.CHANNEL],allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n)=>{let r={};return ae(e.getEncodings(),a=>A(a.channel)?!0:r[a.channel]?!1:(r[a.channel]=!0,!0))}},{name:"alwaysIncludeZeroInScaleWithBarMark",description:"Do not recommend bar mark if scale does not start at zero",properties:[m.MARK,m.SCALE,de("scale","zero"),m.CHANNEL,m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{let r=e.getMark(),a=e.getEncodings();if(r==="bar"){for(let i of a)if(O(i)&&(i.channel==="x"||i.channel==="y")&&i.type==="quantitative"&&i.scale&&i.scale.zero===!1)return!1}return!0}},{name:"autoAddCount",description:"Automatically adding count only for plots with only ordinal, binned quantitative, or temporal with timeunit fields.",properties:[m.BIN,m.TIMEUNIT,m.TYPE,m.AUTOCOUNT],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>ue(e.getEncodings(),r=>Tt(r))?ae(e.getEncodings(),r=>{if(re(r)||P(r))return!0;switch(r.type){case ee:return!!r.bin;case ge:return!!r.timeUnit;case Ne:case se.KEY:case Ce:return!0}throw Error("Unsupported Type")}):ae(e.wildcardIndex.encodingIndicesByProperty.get("autoCount")||[],r=>{let a=e.getEncodingQueryByIndex(r);return P(a)&&!A(a.autoCount)})?ue(e.getEncodings(),r=>(O(r)||P(r))&&r.type==="quantitative"?ie(r)?!1:O(r)&&(!r.bin||A(r.bin)):O(r)&&r.type==="temporal"?!r.timeUnit||A(r.timeUnit):!1):!0},{name:"channelPermittedByMarkType",description:"Each encoding channel should be supported by the mark type",properties:[m.CHANNEL,m.MARK],allowWildcardForProperties:!0,strict:!0,satisfy:(e,t,n)=>{let r=e.getMark();return A(r)?!0:ae(e.getEncodings(),a=>A(a.channel)?!0:!!So(a.channel,r))}},{name:"hasAllRequiredChannelsForMark",description:"All required channels for the specified mark should be specified",properties:[m.CHANNEL,m.MARK],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{let r=e.getMark();switch(r){case Ge:case gt:return e.channelUsed("x")&&e.channelUsed("y");case yt:return e.channelUsed(Qt);case"bar":case on:case sn:case vt:case an:case rn:return e.channelUsed("x")||e.channelUsed("y");case ze:return!e.wildcardIndex.hasProperty(m.CHANNEL)||e.channelUsed("x")||e.channelUsed("y")}throw Error("hasAllRequiredChannelsForMark not implemented for mark"+JSON.stringify(r))}},{name:"omitAggregate",description:"Omit aggregate plots.",properties:[m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>!e.isAggregate()},{name:"omitAggregatePlotWithDimensionOnlyOnFacet",description:"Omit aggregate plots with dimensions only on facets as that leads to inefficient use of space.",properties:[m.CHANNEL,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>{if(e.isAggregate()){let r=!1,a=!1,i=!1;if(e.specQuery.encodings.forEach((s,c)=>{re(s)||ie(s)||O(s)&&!s.aggregate&&(a=!0,K(["row","column"],s.channel)?e.wildcardIndex.hasEncodingProperty(c,m.CHANNEL)&&(i=!0):r=!0)}),a&&!r&&(i||n.constraintManuallySpecifiedValue))return!1}return!0}},{name:"omitAggregatePlotWithoutDimension",description:"Aggregate plots without dimension should be omitted",properties:[m.AGGREGATE,m.AUTOCOUNT,m.BIN,m.TIMEUNIT,m.TYPE],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>e.isAggregate()?ue(e.getEncodings(),r=>!!(ve(r)||O(r)&&r.type==="temporal")):!0},{name:"omitBarLineAreaWithOcclusion",description:"Don't use bar, line or area to visualize raw plot as they often lead to occlusion.",properties:[m.MARK,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>K(["bar","line","area"],e.getMark())?e.isAggregate():!0},{name:"omitBarTickWithSize",description:"Do not map field to size channel with bar and tick mark",properties:[m.CHANNEL,m.MARK],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{if(K(["tick","bar"],e.getMark())&&e.channelEncodingField("size")){if(n.constraintManuallySpecifiedValue)return!1;{let r=e.specQuery.encodings;for(let a=0;a<r.length;a++)if(r[a].channel==="size")return!e.wildcardIndex.hasEncodingProperty(a,m.CHANNEL)}}return!0}},{name:"omitBarAreaForLogScale",description:"Do not use bar and area mark for x and y's log scale",properties:[m.MARK,m.CHANNEL,m.SCALE,de("scale","type"),m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{let r=e.getMark(),a=e.getEncodings();if(r==="area"||r==="bar"){for(let i of a)if(O(i)&&(i.channel==="x"||i.channel==="y")&&i.scale&&Oe(i)===F.LOG)return!1}return!0}},{name:"omitMultipleNonPositionalChannels",description:"Unless manually specified, do not use multiple non-positional encoding channel to avoid over-encoding.",properties:[m.CHANNEL],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{let r=e.specQuery.encodings,a=0,i=!1;for(let s=0;s<r.length;s++){let c=r[s];if(re(c)||ie(c))continue;let h=c.channel;if(!A(h)&&jc[h+""]&&(a+=1,e.wildcardIndex.hasEncodingProperty(s,m.CHANNEL)&&(i=!0),a>1&&(i||n.constraintManuallySpecifiedValue)))return!1}return!0}},{name:"omitNonPositionalOrFacetOverPositionalChannels",description:"Do not use non-positional channels unless all positional channels are used",properties:[m.CHANNEL],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>{let r=e.specQuery.encodings,a=!1,i=!1,s=!1,c=!1;for(let h=0;h<r.length;h++){let o=r[h];if(re(o)||ie(o))continue;let l=o.channel;l==="x"?s=!0:l==="y"?c=!0:A(l)||(a=!0,e.wildcardIndex.hasEncodingProperty(h,m.CHANNEL)&&(i=!0))}return i||n.constraintManuallySpecifiedValue&&a?s&&c:!0}},{name:"omitRaw",description:"Omit raw plots.",properties:[m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>!!e.isAggregate()},{name:"omitRawContinuousFieldForAggregatePlot",description:"Aggregate plot should not use raw continuous field as group by values. (Quantitative should be binned. Temporal should have time unit.)",properties:[m.AGGREGATE,m.AUTOCOUNT,m.TIMEUNIT,m.BIN,m.TYPE],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{if(e.isAggregate()){let r=e.specQuery.encodings;for(let a=0;a<r.length;a++){let i=r[a];if(!(re(i)||ie(i))&&(O(i)&&i.type==="temporal"&&!i.timeUnit&&(e.wildcardIndex.hasEncodingProperty(a,m.TIMEUNIT)||n.constraintManuallySpecifiedValue)||i.type==="quantitative"&&O(i)&&!i.bin&&!i.aggregate&&(e.wildcardIndex.hasEncodingProperty(a,m.BIN)||e.wildcardIndex.hasEncodingProperty(a,m.AGGREGATE)||e.wildcardIndex.hasEncodingProperty(a,m.AUTOCOUNT)||n.constraintManuallySpecifiedValue)))return!1}}return!0}},{name:"omitRawDetail",description:"Do not use detail channel with raw plot.",properties:[m.CHANNEL,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>e.isAggregate()?!0:ae(e.specQuery.encodings,(r,a)=>re(r)||ie(r)?!0:!(r.channel==="detail"&&(e.wildcardIndex.hasEncodingProperty(a,m.CHANNEL)||n.constraintManuallySpecifiedValue)))},{name:"omitRepeatedField",description:"Each field should be mapped to only one channel",properties:[m.FIELD],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{let r={},a={},i=e.specQuery.encodings;for(let s=0;s<i.length;s++){let c=i[s];if(re(c)||P(c))continue;let h;if(c.field&&!A(c.field)&&(h=c.field),P(c)&&!A(c.autoCount)&&(h="count_*"),h){if(e.wildcardIndex.hasEncodingProperty(s,m.FIELD)&&(a[h]=!0),r[h]&&(a[h]||n.constraintManuallySpecifiedValue))return!1;r[h]=!0}}return!0}},{name:"omitVerticalDotPlot",description:"Do not output vertical dot plot.",properties:[m.CHANNEL],allowWildcardForProperties:!0,strict:!1,satisfy:(e,t,n)=>{let r=e.getEncodings();return!(r.length===1&&r[0].channel==="y")}},{name:"hasAppropriateGraphicTypeForMark",description:"Has appropriate graphic type for mark",properties:[m.CHANNEL,m.MARK,m.TYPE,m.TIMEUNIT,m.BIN,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>{let r=e.getMark();switch(r){case Ge:case gt:if(e.isAggregate()){let u=e.getEncodingQueryByChannel("x"),d=e.getEncodingQueryByChannel("y"),p=Ve(u),f=Ve(d);return u&&d&&p!==f&&!(O(u)&&!p&&K(["nominal","key"],u.type))&&!(O(d)&&!f&&K(["nominal","key"],d.type))}return!0;case yt:return!0;case"bar":case vt:if(e.channelEncodingField("size"))return!1;{let u=e.getEncodingQueryByChannel("x"),d=e.getEncodingQueryByChannel("y");return Ve(u)!==Ve(d)}case rn:let a=e.getEncodingQueryByChannel("x"),i=e.getEncodingQueryByChannel("y"),s=ve(a),c=ve(i),h=e.getEncodingQueryByChannel(ce),o=Ve(h),l=O(h)?h.type===Ne:!1;return(s&&c||s&&!e.channelUsed("y")||c&&!e.channelUsed("x"))&&(!h||h&&(o||l));case on:case ze:case sn:case an:return!0}throw Error("hasAllRequiredChannelsForMark not implemented for mark"+r)}},{name:"omitInvalidStackSpec",description:"If stack is specified, must follow Vega-Lite stack rules",properties:[m.STACK,m.FIELD,m.CHANNEL,m.MARK,m.AGGREGATE,m.AUTOCOUNT,m.SCALE,de("scale","type"),m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{if(!e.wildcardIndex.hasProperty(m.STACK))return!0;let r=e.getVlStack();return!(r===null&&e.getStackOffset()!==null||r.fieldChannel!==e.getStackChannel())}},{name:"omitNonSumStack",description:"Stack specifications that use non-summative aggregates should be omitted (even implicit ones)",properties:[m.CHANNEL,m.MARK,m.AGGREGATE,m.AUTOCOUNT,m.SCALE,de("scale","type"),m.TYPE],allowWildcardForProperties:!1,strict:!0,satisfy:(e,t,n)=>{let r=e.getVlStack();return!(r!=null&&!K(ii,e.getEncodingQueryByChannel(r.fieldChannel).aggregate))}},{name:"omitTableWithOcclusionIfAutoAddCount",description:"Plots without aggregation or autocount where x and y are both discrete should be omitted if autoAddCount is enabled as they often lead to occlusion",properties:[m.CHANNEL,m.TYPE,m.TIMEUNIT,m.BIN,m.AGGREGATE,m.AUTOCOUNT],allowWildcardForProperties:!1,strict:!1,satisfy:(e,t,n)=>{if(n.autoAddCount){let r=e.getEncodingQueryByChannel("x"),a=e.getEncodingQueryByChannel("y");if((!O(r)||ve(r))&&(!O(a)||ve(a)))return e.isAggregate()?ae(e.getEncodings(),i=>{let s=i.channel;return!(s!=="x"&&s!=="y"&&s!=="row"&&s!=="column"&&O(i)&&!i.aggregate)}):!1}return!0}}].map(e=>new Pc(e));ta.reduce((e,t)=>(e[t.name()]=t,e),{});var Rc=ta.reduce((e,t)=>{for(let n of t.properties())e.set(n,e.get(n)||[]),e.get(n).push(t);return e},new ne);function na(e,t,n,r,a){let i=Rc.get(e)||[];for(let s of i)if((s.strict()||a[s.name()])&&!s.satisfy(n,r,a)){let c="(spec) "+s.name();return a.verbose&&console.log(c+" failed with "+n.toShorthand()+" for "+t.name),c}return null}var Mt=new ne;function $c(e){return Mt.get(e)}Mt.set("mark",(e,t,n)=>(r,a)=>(a.getMark().enum.forEach(i=>{a.setMark(i),na("mark",e.mark,a,t,n)||r.push(a.duplicate())}),a.resetMark(),r)),en.forEach(e=>{Mt.set(e,ra(e))}),ht.forEach(e=>{Mt.set(e,ra(e))});function ra(e){return(t,n,r)=>(a,i)=>{let s=t.encodingIndicesByProperty.get(e);function c(h){if(h===s.length){a.push(i.duplicate());return}let o=s[h],l=t.encodings[o].get(e),u=i.getEncodingQueryByIndex(o),d=i.getEncodingProperty(o,e);re(u)||ie(u)||!d?c(h+1):(l.enum.forEach(p=>{p===null&&(p=void 0),i.setEncodingProperty(o,e,p,l),!_c(e,l,o,i,n,r)&&(na(e,l,i,n,r)||c(h+1))}),i.resetEncodingProperty(o,e,l))}return c(0),a}}var Bc=te();function Lc(e){return(0,Bc.isObject)(e)&&!!e.property}function Ke(e,t,n){return t||(t=new ne),n||(n=new ne),e.forEach(r=>{Lc(r)?(t.setByKey(r.property,!0),n.setByKey(r.property,r.replace)):t.setByKey(r,!0)}),{include:t,replaceIndex:n,replacer:Xl(n)}}const ia=[m.FIELD,m.TYPE,m.AGGREGATE,m.BIN,m.TIMEUNIT,m.STACK],Wc=ia.concat([{property:m.CHANNEL,replace:{x:"xy",y:"xy",color:"style",size:"style",shape:"style",opacity:"style",row:"facet",column:"facet"}}]);var aa=te(),Qn={};function It(e,t){Qn[e]=t}function qc(e,t){if(t){let n={name:"",path:"",items:[]},r={},a=[],i=[],s=[];for(let c=0;c<t.length;c++){a.push(c>0?a[c-1].duplicate():new ne),i.push(c>0?i[c-1].duplicate():new ne);let h=t[c].groupBy;if((0,aa.isArray)(h)){let o=Ke(h,a[c],i[c]);s.push(o.replacer)}}return e.forEach(c=>{let h="",o=n;for(let l=0;l<t.length;l++){let u=o.groupBy=t[l].groupBy;o.orderGroupBy=t[l].orderGroupBy;let d=(0,aa.isArray)(u)?je(c.specQuery,a[l],s[l]):Qn[u](c.specQuery);h+="/"+d,r[h]||(r[h]={name:d,path:h,items:[]},o.items.push(r[h])),o=r[h]}o.items.push(c)}),n}else return{name:"",path:"",items:e}}var oa=Ke([m.FIELD]);function Hc(e,t){return Qn[t](e)}It("field",e=>je(e,oa.include,oa.replacer));const sa=Ke(ia);It("fieldTransform",e=>je(e,sa.include,sa.replacer));const la=Ke(Wc);It("encoding",e=>je(e,la.include,la.replacer)),It("spec",e=>JSON.stringify(e));var Gc=class{constructor(){this._mark=void 0,this._encodings={},this._encodingIndicesByProperty=new ne}setEncodingProperty(e,t,n){let r=this._encodings;(r[e]=r[e]||new ne).set(t,n);let a=this._encodingIndicesByProperty;return a.set(t,a.get(t)||[]),a.get(t).push(e),this}hasEncodingProperty(e,t){return!!this._encodings[e]&&this._encodings[e].has(t)}hasProperty(e){if(Kr(e))return this.encodingIndicesByProperty.has(e);if(e==="mark")return!!this.mark;throw Error("Unimplemented for property "+e)}isEmpty(){return!this.mark&&this.encodingIndicesByProperty.size()===0}setMark(e){return this._mark=e,this}get mark(){return this._mark}get encodings(){return this._encodings}get encodingIndicesByProperty(){return this._encodingIndicesByProperty}},zc=te(),Yc=class ar{constructor(t,n,r,a,i){this._rankingScore={},this._spec=t,this._channelFieldCount=t.encodings.reduce((s,c)=>(!A(c.channel)&&(!P(c)||c.autoCount!==!1)&&(s[c.channel+""]=1),s),{}),this._wildcardIndex=n,this._assignedWildcardIndex=i,this._opt=a,this._schema=r}static build(t,n,r){let a=new Gc;if(A(t.mark)){let i=Ye(m.MARK);t.mark=un(t.mark,i,r.enum.mark),a.setMark(t.mark)}if(t.encodings.forEach((i,s)=>{P(i)&&(console.warn("A field with autoCount should not be included as autoCount meant to be an internal object."),i.type=ee),O(i)&&i.type===void 0&&(i.type="?"),en.forEach(c=>{if(A(i[c])){let h=Ye(c)+s,o=fn(c,n,r),l=i[c]=un(i[c],h,o);a.setEncodingProperty(s,c,l)}}),ht.forEach(c=>{let h=i[c.parent];if(h){let o=c.child;if(A(h[o])){let l=Ye(c)+s,u=fn(c,n,r),d=h[o]=un(h[o],l,u);a.setEncodingProperty(s,c,d)}}})}),r.autoAddCount){let i={name:Ye(m.CHANNEL)+t.encodings.length,enum:fn(m.CHANNEL,n,r)},s={name:Ye(m.AUTOCOUNT)+t.encodings.length,enum:[!1,!0]},c={channel:i,autoCount:s,type:ee};t.encodings.push(c);let h=t.encodings.length-1;a.setEncodingProperty(h,m.CHANNEL,i),a.setEncodingProperty(h,m.AUTOCOUNT,s)}return new ar(t,a,n,r,{})}get wildcardIndex(){return this._wildcardIndex}get schema(){return this._schema}get specQuery(){return this._spec}duplicate(){return new ar((0,U.duplicate)(this._spec),this._wildcardIndex,this._schema,this._opt,(0,U.duplicate)(this._assignedWildcardIndex))}setMark(t){let n=this._wildcardIndex.mark.name;this._assignedWildcardIndex[n]=this._spec.mark=t}resetMark(){let t=this._spec.mark=this._wildcardIndex.mark;delete this._assignedWildcardIndex[t.name]}getMark(){return this._spec.mark}getEncodingProperty(t,n){let r=this._spec.encodings[t];return oe(n)?r[n.parent][n.child]:r[n]}setEncodingProperty(t,n,r,a){let i=this._spec.encodings[t];n===m.CHANNEL&&i.channel&&!A(i.channel)&&this._channelFieldCount[i.channel]--,oe(n)?i[n.parent][n.child]=r:tn(n)&&r===!0?i[n]=(0,U.extend)({},i[n],{enum:void 0,name:void 0}):i[n]=r,this._assignedWildcardIndex[a.name]=r,n===m.CHANNEL&&(this._channelFieldCount[r]=(this._channelFieldCount[r]||0)+1)}resetEncodingProperty(t,n,r){let a=this._spec.encodings[t];n===m.CHANNEL&&this._channelFieldCount[a.channel]--,oe(n)?a[n.parent][n.child]=r:a[n]=r,delete this._assignedWildcardIndex[r.name]}channelUsed(t){return this._channelFieldCount[t]>0}channelEncodingField(t){return O(this.getEncodingQueryByChannel(t))}getEncodings(){return this._spec.encodings.filter(t=>!ie(t))}getEncodingQueryByChannel(t){for(let n of this._spec.encodings)if(n.channel===t)return n}getEncodingQueryByIndex(t){return this._spec.encodings[t]}isAggregate(){return Ql(this._spec)}getVlStack(){return ui(this._spec)}getStackOffset(){return Vl(this._spec)}getStackChannel(){return Kl(this._spec)}toShorthand(t){if(t){if((0,zc.isString)(t))return Hc(this.specQuery,t);let n=Ke(t);return je(this._spec,n.include,n.replacer)}return je(this._spec)}toSpec(t){if(A(this._spec.mark))return null;let n={};return t||(t=this._spec.data),t&&(n.data=t),this._spec.transform&&(n.transform=this._spec.transform),n.mark=this._spec.mark,n.encoding=gi(this.specQuery.encodings,{schema:this._schema,wildcardMode:"null"}),this._spec.width&&(n.width=this._spec.width),this._spec.height&&(n.height=this._spec.height),this._spec.background&&(n.background=this._spec.background),this._spec.padding&&(n.padding=this._spec.padding),this._spec.title&&(n.title=this._spec.title),n.encoding===null?null:((this._spec.config||this._opt.defaultSpecConfig)&&(n.config=(0,U.extend)({},this._opt.defaultSpecConfig,this._spec.config)),n)}getRankingScore(t){return this._rankingScore[t]}setRankingScore(t,n){this._rankingScore[t]=n}};function Qc(e){if(e.groupBy){let t={groupBy:e.groupBy};e.orderBy&&(t.orderGroupBy=e.orderBy);let n={spec:(0,U.duplicate)(e.spec),nest:[t]};return e.chooseBy&&(n.chooseBy=e.chooseBy),e.config&&(n.config=e.config),n}return(0,U.duplicate)(e)}function ca(e){return e.items!==void 0}function Vn(e){let t=e.items[0];for(;t&&ca(t);)t=t.items[0];return t}var Pe=class{constructor(e){this.type=e,this.scoreIndex=this.initScore()}getFeatureScore(e){let t=this.type,n=this.scoreIndex[e];if(n!==void 0)return{type:t,feature:e,score:n}}},J;(function(e){e[e.Q=ee]="Q",e[e.BIN_Q="bin_"+ee]="BIN_Q",e[e.T=ge]="T",e[e.TIMEUNIT_T="timeUnit_time"]="TIMEUNIT_T",e[e.TIMEUNIT_O="timeUnit_"+Ne]="TIMEUNIT_O",e[e.O=Ne]="O",e[e.N=Ce]="N",e[e.K=se.KEY]="K",e[e.NONE="-"]="NONE"})(J||(J={}));const ua=J.Q,Ut=J.BIN_Q,Kn=J.T,Re=J.TIMEUNIT_T,Ft=J.TIMEUNIT_O,Dt=J.O,_t=J.N,Jn=J.K,jt=J.NONE;function Pt(e){return e.bin?J.BIN_Q:e.timeUnit?we(Oe(e))?J.TIMEUNIT_O:J.TIMEUNIT_T:e.type}var Vc=class extends Pe{constructor(){super("Axis")}initScore(e={}){e=Object.assign({},Qe,e);let t={};return[{feature:Ut,opt:"preferredBinAxis"},{feature:Kn,opt:"preferredTemporalAxis"},{feature:Re,opt:"preferredTemporalAxis"},{feature:Ft,opt:"preferredTemporalAxis"},{feature:Dt,opt:"preferredOrdinalAxis"},{feature:_t,opt:"preferredNominalAxis"}].forEach(n=>{e[n.opt]==="x"?t[n.feature+"_y"]=-.01:e[n.opt]==="y"&&(t[n.feature+"_x"]=-.01)}),t}featurize(e,t){return e+"_"+t}getScore(e,t,n){return e.getEncodings().reduce((r,a)=>{if(O(a)||P(a)){let i=Pt(a),s=this.featurize(i,a.channel),c=this.getFeatureScore(s);c&&r.push(c)}return r},[])}},Kc=class extends Pe{constructor(){super("Dimension")}initScore(){return{row:-2,column:-2,color:0,opacity:0,size:0,shape:0}}getScore(e,t,n){return e.isAggregate()&&e.getEncodings().reduce((r,a)=>{if(P(a)||O(a)&&!a.aggregate){let i=this.getFeatureScore(a.channel+"");if(i&&i.score>r.score)return i}return r},{type:"Dimension",feature:"No Dimension",score:-5}),[]}},Jc=class extends Pe{constructor(){super("Facet")}initScore(e){e=Object.assign({},Qe,e);let t={};return e.preferredFacet==="row"?t[Se]=-.01:e.preferredFacet==="column"&&(t.row=-.01),t}getScore(e,t,n){return e.getEncodings().reduce((r,a)=>{if(O(a)||P(a)){let i=this.getFeatureScore(a.channel);i&&r.push(i)}return r},[])}},Xc=class extends Pe{constructor(){super("SizeChannel")}initScore(){return{bar_size:-2,tick_size:-2}}getScore(e,t,n){let r=e.getMark();return e.getEncodings().reduce((a,i)=>{if(O(i)||P(i)){let s=r+"_"+i.channel,c=this.getFeatureScore(s);c&&a.push(c)}return a},[])}},Zc=class extends Pe{constructor(){super("TypeChannel")}initScore(){let e={},t={x:0,y:0,size:-.575,color:-.725,text:-2,opacity:-3,shape:-10,row:-10,column:-10,detail:-20};[ua,Kn,Re].forEach(a=>{(0,U.keys)(t).forEach(i=>{e[this.featurize(a,i)]=t[i]})});let n=(0,U.extend)({},t,{row:-.75,column:-.75,shape:-3.1,text:-3.2,detail:-4});[Ut,Ft,Dt].forEach(a=>{(0,U.keys)(n).forEach(i=>{e[this.featurize(a,i)]=n[i]})});let r={x:0,y:0,color:-.6,shape:-.65,row:-.7,column:-.7,text:-.8,detail:-2,size:-3,opacity:-3.1};return(0,U.keys)(r).forEach(a=>{e[this.featurize(_t,a)]=r[a],e[this.featurize(Jn,a)]=K(["x","y","detail"],a)?-1:r[a]-2}),e}featurize(e,t){return e+"_"+t}getScore(e,t,n){let r=e.getEncodings().reduce((i,s)=>{if(O(s)||P(s)){let c=hi(s);(i[c]=i[c]||[]).push(s)}return i},{}),a=[];return G(r,i=>{let s=i.reduce((c,h)=>{if(O(h)||P(h)){let o=Pt(h),l=this.featurize(o,h.channel),u=this.getFeatureScore(l);if(c===null||u.score>c.score)return u}return c},null);a.push(s)}),a}},eu=class extends Pe{constructor(){super("Mark")}initScore(){return tu()}getScore(e,t,n){let r=e.getMark();(r==="circle"||r==="square")&&(r=ze);let a=e.getEncodingQueryByChannel("x"),i=a?Pt(a):jt,s=e.getEncodingQueryByChannel("y"),c=s?Pt(s):jt,h=!e.isAggregate(),o=i+"_"+c+"_"+h+"_"+r,l=this.getFeatureScore(o);return l?[l]:(console.error("feature score missing for",o),[])}};function $(e,t,n,r){return e+"_"+t+"_"+n+"_"+r}function tu(){let e=[ua,Kn],t=[Ut,Ft,Dt,_t,Jn,jt],n={};e.forEach(r=>{e.forEach(a=>{G({point:0,text:-.2,tick:-.5,rect:-1,bar:-2,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!0,s);n[c]=i}),G({point:0,text:-.2,tick:-.5,bar:-2,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!1,s);n[c]=i})})}),e.forEach(r=>{t.forEach(a=>{G({tick:0,point:-.2,text:-.5,bar:-2,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!0,s);n[c]=i;let h=$(a,r,!0,s);n[h]=i})}),[Re].forEach(a=>{G({point:0,text:-.5,tick:-1,bar:-2,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!0,s);n[c]=i;let h=$(a,r,!0,s);n[h]=i})}),[jt,_t,Dt,Jn].forEach(a=>{G({bar:0,point:-.2,tick:-.25,text:-.3,line:-2,area:-2,rule:-2.5},(i,s)=>{let c=$(r,a,!1,s);n[c]=i;let h=$(a,r,!1,s);n[h]=i})}),[Ut].forEach(a=>{G({bar:0,point:-.2,tick:-.25,text:-.3,line:-.5,area:-.5,rule:-2.5},(i,s)=>{let c=$(r,a,!1,s);n[c]=i;let h=$(a,r,!1,s);n[h]=i})}),[Re,Ft].forEach(a=>{G({line:0,area:-.1,bar:-.2,point:-.3,tick:-.35,text:-.4,rule:-2.5},(i,s)=>{let c=$(r,a,!1,s);n[c]=i;let h=$(a,r,!1,s);n[h]=i})})}),[Re].forEach(r=>{[Re].forEach(a=>{let i={point:0,rect:-.1,text:-.5,tick:-1,bar:-2,line:-2,area:-2,rule:-2.5};G(i,(s,c)=>{let h=$(r,a,!0,c);n[h]=s}),G(i,(s,c)=>{let h=$(r,a,!1,c);n[h]=s})}),t.forEach(a=>{let i={tick:0,point:-.2,text:-.5,rect:-1,bar:-2,line:-2,area:-2,rule:-2.5};G(i,(s,c)=>{let h=$(r,a,!0,c);n[h]=s}),G(i,(s,c)=>{let h=$(a,r,!0,c);n[h]=s}),G(i,(s,c)=>{let h=$(r,a,!1,c);n[h]=s}),G(i,(s,c)=>{let h=$(a,r,!1,c);n[h]=s})})});for(let r of t)for(let a of t){let i={point:0,rect:0,text:-.1,tick:-1,bar:-2,line:-2,area:-2,rule:-2.5};G(i,(s,c)=>{let h=$(r,a,!0,c);n[h]=s}),G(i,(s,c)=>{let h=$(r,a,!1,c);n[h]=s})}return n}var nu=[new Vc,new Kc,new Jc,new eu,new Xc,new Zc];function ru(e,t,n){let r=nu.reduce((a,i)=>{let s=i.getScore(e,t,n);return a.concat(s)},[]);return{score:r.reduce((a,i)=>a+i.score,0),features:r}}const be="aggregationQuality";function iu(e,t,n){let r=au(e,t,n);return{score:r.score,features:[r]}}function au(e,t,n){let r=e.getEncodings();if(e.isAggregate()){if(ue(r,a=>O(a)&&(a.type==="quantitative"&&!a.bin&&!a.aggregate||a.type==="temporal"&&!a.timeUnit)))return{type:be,score:.1,feature:"Aggregate with raw continuous"};if(ue(r,a=>O(a)&&ve(a))){let a=ue(r,s=>O(s)&&s.aggregate==="count"||Tt(s)),i=ue(r,s=>O(s)&&!!s.bin);return a?{type:be,score:.8,feature:"Aggregate with count"}:i?{type:be,score:.7,feature:"Aggregate with bin but without count"}:{type:be,score:.9,feature:"Aggregate without count and without bin"}}return{type:be,score:.3,feature:"Aggregate without dimension"}}else return ue(r,a=>O(a)&&!ve(a))?{type:be,score:1,feature:"Raw with measure"}:{type:be,score:.2,feature:"Raw without measure"}}function ou(e,t,n){let r=e.wildcardIndex.encodingIndicesByProperty.get("field");if(!r)return{score:0,features:[]};let a=e.specQuery.encodings,i=t.fieldSchemas.length,s=[],c=0,h=1;for(let o=r.length-1;o>=0;o--){let l=r[o],u=a[l],d;if(O(u))d=u.field;else continue;let p=e.wildcardIndex.encodings[l].get("field"),f=t.fieldSchema(d).index,g=-f*h;c+=g,s.push({score:g,type:"fieldOrder",feature:`field ${p.name} is ${d} (#${f} in the schema)`}),h*=i}return{score:c,features:s}}var da={};function Xn(e,t){da[e]=t}function su(e){return da[e]}function fa(e,t,n,r){return!t.nest||r===t.nest.length?(t.orderBy||t.chooseBy)&&(e.items.sort(lu(t.orderBy||t.chooseBy,n,t.config)),t.chooseBy&&e.items.length>0&&e.items.splice(1)):(e.items.forEach(a=>{fa(a,t,n,r+1)}),t.nest[r].orderGroupBy&&e.items.sort(cu(t.nest[r].orderGroupBy,n,t.config))),e}function lu(e,t,n){return(r,a)=>e instanceof Array?Rt(e,r,a,t,n):Rt([e],r,a,t,n)}function cu(e,t,n){return(r,a)=>{let i=Vn(r),s=Vn(a);return e instanceof Array?Rt(e,i,s,t,n):Rt([e],i,s,t,n)}}function Rt(e,t,n,r,a){for(let i of e){let s=pa(n,i,r,a).score-pa(t,i,r,a).score;if(s!==0)return s}return 0}function pa(e,t,n,r){if(e.getRankingScore(t)!==void 0)return e.getRankingScore(t);let a=su(t)(e,n,r);return e.setRankingScore(t,a),a}Xn("effectiveness",ru),Xn(be,iu),Xn("fieldOrder",ou);function uu(e,t,n){let r={};return e=e.map(function(a){return n.smallRangeStepForHighCardinalityOrFacet&&(a=du(a,t,r,n)),n.nominalColorScaleForHighCardinality&&(a=fu(a,t,r,n)),n.xAxisOnTopForHighYCardinalityWithoutColumn&&(a=pu(a,t,r,n)),a}),e}function du(e,t,n,r){["row","y",Se,"x"].forEach(s=>{n[s]=e.getEncodingQueryByChannel(s)});let a=n.y;if(a!==void 0&&O(a)&&(n.row||t.cardinality(a)>r.smallRangeStepForHighCardinalityOrFacet.maxCardinality)){a.scale===void 0&&(a.scale={});let s=Oe(a);a.scale&&(s===void 0||we(s))&&(a.scale.rangeStep||(a.scale.rangeStep=12))}let i=n.x;if(O(i)&&(n.column||t.cardinality(i)>r.smallRangeStepForHighCardinalityOrFacet.maxCardinality)){i.scale===void 0&&(i.scale={});let s=Oe(i);i.scale&&(s===void 0||we(s))&&(i.scale.rangeStep||(i.scale.rangeStep=12))}return e}function fu(e,t,n,r){n[ce]=e.getEncodingQueryByChannel(ce);let a=n[ce];return O(a)&&a!==void 0&&(a.type==="nominal"||a.type===se.KEY)&&t.cardinality(a)>r.nominalColorScaleForHighCardinality.maxCardinality&&(a.scale===void 0&&(a.scale={}),a.scale&&(a.scale.range||(a.scale.scheme=r.nominalColorScaleForHighCardinality.palette))),e}function pu(e,t,n,r){if([Se,"x","y"].forEach(a=>{n[a]=e.getEncodingQueryByChannel(a)}),n.column===void 0){let a=n.x,i=n.y;O(a)&&O(i)&&i!==void 0&&i.field&&we(Oe(i))&&a!==void 0&&t.cardinality(i)>r.xAxisOnTopForHighYCardinalityWithoutColumn.maxCardinality&&(a.axis===void 0&&(a.axis={}),a.axis&&!a.axis.orient&&(a.axis.orient="top"))}return e}function hu(e,t,n=Qe){let r=Yc.build(e,t,n),a=r.wildcardIndex,i=[r];return n.propertyPrecedence.forEach(s=>{let c=sl(s);if(a.hasProperty(c)){let h=$c(c)(a,t,n);i=i.reduce(h,[])}}),n.stylize&&(n.nominalColorScaleForHighCardinality!==null||n.smallRangeStepForHighCardinalityOrFacet!==null||n.xAxisOnTopForHighYCardinalityWithoutColumn!==null)?uu(i,t,n):i}function ha(e,t,n){e=Object.assign({},Qc(e),{config:Object.assign({},Qe,n,e.config)});let r=fa(qc(hu(e.spec,t,e.config),e.nest),e,t,0);return{query:e,result:r}}var Zn=Xe(Ia(),1),E=Xe(Ga(),1);const $e={[R.BOOLEAN]:(0,E.jsx)(Fa,{className:"h-5 w-5 inline-flex opacity-60"}),[R.DATETIME]:(0,E.jsx)(Da,{className:"h-5 w-5 inline-flex opacity-60"}),[R.NUMBER]:(0,E.jsx)(Ua,{className:"h-5 w-5 inline-flex opacity-60"}),[R.STRING]:(0,E.jsx)(_a,{className:"h-5 w-5 inline-flex opacity-60"}),[R.INTEGER]:(0,E.jsx)(ao,{className:"h-5 w-5 inline-flex opacity-60"})};var ma=12;const mu=e=>{let t=(0,gr.c)(45),{schema:n}=e,[r,a]=(0,Zn.useState)(),[i,s]=(0,Zn.useState)(),c,h,o,l,u,d,p,f;if(t[0]!==n||t[1]!==r||t[2]!==i){c=n.fieldNames();let k;t[11]!==n||t[12]!==r?(k=r?n.stats({field:r,channel:"x"}):void 0,t[11]=n,t[12]=r,t[13]=k):k=t[13],o=k;let I;t[14]===Symbol.for("react.memo_cache_sentinel")?(I=(0,E.jsx)(io,{className:"text-muted-foreground",width:40,height:40,strokeWidth:1.5}),t[14]=I):I=t[14];let _=I,xe=i?c:c.slice(0,ma);h=c.length>ma,d="flex flex-col justify-center items-center h-full flex-1 gap-2",p=_,f=(0,E.jsxs)("span",{className:"text-muted-foreground font-semibold",children:[c.length>0?c.length:"No"," fields"]}),l="hidden lg:grid grid-cols-2 xl:grid-cols-3 gap-2 p-2 bg-(--slate-1) border rounded lg:items-center items-start w-fit grid-flow-dense max-h-[300px] overflow-auto";let X;t[15]!==n||t[16]!==r?(X=W=>{let fe=n.cardinality({channel:"x",field:W});return(0,E.jsxs)("span",{className:cr("hover:bg-muted self-start px-2 py-2 rounded flex flex-row gap-1 items-center cursor-pointer lg:justify-center text-sm truncate shrink-0 overflow-hidden",r===W&&"bg-muted"),onClick:()=>{if(r===W){a(void 0);return}a(W)},children:[$e[n.primitiveType(W)],W,fe>1&&(0,E.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",fe,")"]})]},W)},t[15]=n,t[16]=r,t[17]=X):X=t[17],u=xe.map(X),t[0]=n,t[1]=r,t[2]=i,t[3]=c,t[4]=h,t[5]=o,t[6]=l,t[7]=u,t[8]=d,t[9]=p,t[10]=f}else c=t[3],h=t[4],o=t[5],l=t[6],u=t[7],d=t[8],p=t[9],f=t[10];let g;t[18]!==h||t[19]!==i?(g=h&&(0,E.jsx)(lr,{"data-testid":"marimo-plugin-data-explorer-show-more-columns",variant:"link",size:"sm",className:"self-center col-span-3 -mt-1",onClick:()=>s(vu),children:i?"Show less":"Show more"}),t[18]=h,t[19]=i,t[20]=g):g=t[20];let y;t[21]!==l||t[22]!==u||t[23]!==g?(y=(0,E.jsxs)("div",{className:l,children:[u,g]}),t[21]=l,t[22]=u,t[23]=g,t[24]=y):y=t[24];let v=r||"",b=c.length===0,x;t[25]===Symbol.for("react.memo_cache_sentinel")?(x=k=>{a(k)},t[25]=x):x=t[25];let S;t[26]===Symbol.for("react.memo_cache_sentinel")?(S=(0,E.jsx)(et,{className:"min-w-[210px] h-full",children:(0,E.jsx)(pr,{placeholder:"Select a column"})}),t[26]=S):S=t[26];let C;t[27]===n?C=t[28]:(C=n.fieldNames().map(k=>(0,E.jsx)(Te,{value:k.toString(),children:(0,E.jsxs)("span",{className:"flex items-center gap-2 flex-1",children:[$e[n.primitiveType(k)],(0,E.jsx)("span",{className:"flex-1",children:k}),(0,E.jsxs)("span",{className:"text-muted-foreground text-xs font-semibold",children:["(",n.vlType(k),")"]})]})},k)),t[27]=n,t[28]=C);let T;t[29]===C?T=t[30]:(T=(0,E.jsx)(Ze,{children:(0,E.jsx)(Le,{children:C})}),t[29]=C,t[30]=T);let w;t[31]!==T||t[32]!==v||t[33]!==b?(w=(0,E.jsx)("div",{className:"lg:hidden",children:(0,E.jsxs)(tt,{"data-testid":"marimo-plugin-data-explorer-column-select",value:v,disabled:b,onValueChange:x,children:[S,T]})}),t[31]=T,t[32]=v,t[33]=b,t[34]=w):w=t[34];let N;t[35]!==r||t[36]!==o?(N=r&&(0,E.jsx)("div",{className:"grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-3 gap-2 p-2 text-sm",children:gu.map(k=>(0,E.jsxs)("div",{className:"flex flex-row gap-2 min-w-[100px]",children:[(0,E.jsx)("span",{className:"font-semibold",children:k}),(0,E.jsx)("span",{children:(0,E.jsx)(yu,{value:o==null?void 0:o[k]})})]},k))}),t[35]=r,t[36]=o,t[37]=N):N=t[37];let D;return t[38]!==w||t[39]!==N||t[40]!==d||t[41]!==p||t[42]!==f||t[43]!==y?(D=(0,E.jsxs)("div",{className:d,children:[p,f,y,w,N]}),t[38]=w,t[39]=N,t[40]=d,t[41]=p,t[42]=f,t[43]=y,t[44]=D):D=t[44],D};var gu=["distinct","min","max","mean","median","q1","q3","stdev"],yu=e=>{let t=(0,gr.c)(8),{value:n}=e,r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r={maximumFractionDigits:2},t[0]=r):r=t[0];let a=Za(r),i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i={year:"numeric",month:"short",day:"numeric"},t[1]=i):i=t[1];let s=Xa(i);if(typeof n=="number"){let c;return t[2]!==a||t[3]!==n?(c=a.format(n),t[2]=a,t[3]=n,t[4]=c):c=t[4],c}if(typeof n=="string")return n;if(typeof n=="object"&&n instanceof Date){let c;return t[5]!==s||t[6]!==n?(c=s.format(n),t[5]=s,t[6]=n,t[7]=c):c=t[7],c}return String(n)};function vu(e){return!e}var bu=["argmax","argmin","average","count","distinct","exponential","exponentialb","product","max","mean","median","min","missing","q1","q3","ci0","ci1","stderr","stdev","stdevp","sum","valid","values","variance","variancep"];const xu=e=>Ra(e)?bu.includes(e):!1;function Eu(e){return e?e==="bin"?{bin:!0}:xu(e)?{aggregate:e}:Tu(e)?{timeUnit:e}:{}:{}}function Tu(e){return e?ga.includes(e)||ya.includes(e):!1}const Su=["bin","min","max","mean","median","sum"],ga=["year","month","date","day","hours","minutes","seconds","milliseconds"],ya=["yearmonth","yearmonthdate","monthdate"];function Nu(e){let{aggregate:t,bin:n,timeUnit:r}=e;if(n)return"bin";if(t)return t.toString();if(r)return r.toString()}const Cu=["?","area","bar","circle","geoshape","line","point","rect","rule","square","text","tick","trail"],wu={type:"histograms",limit:12,createQuery(e){return{spec:{data:e.spec.data,mark:"?",transform:e.spec.transform,encodings:[{channel:"?",bin:"?",timeUnit:"?",field:"?",type:"?"},{channel:"?",aggregate:"count",field:"*",type:"quantitative"}]},groupBy:"fieldTransform",orderBy:["fieldOrder","aggregationQuality","effectiveness"],chooseBy:["aggregationQuality","effectiveness"],config:{autoAddCount:!1}}}};function va(e){let t={};for(let n in e)e[n]!==void 0&&(t[n]=e[n]);return t}function Au(e,t){let{fn:n,...r}=e;return{channel:t,...Eu(n),...r}}function Ou(e){let{aggregate:t,bin:n,timeUnit:r,field:a,scale:i,legend:s,axis:c,sort:h,description:o}=e,{type:l}=e;if(A(l))throw Error("Wildcard not support");l==="ordinal"&&(qa.warn("Ordinal type is not supported. Using nominal type instead."),l="nominal");let u=Nu({aggregate:t,bin:n,timeUnit:r});return Ha(a!==void 0,"Field is required for fieldQ"),va({field:a,fn:u,type:l,sort:h,scale:i,axis:c,legend:s,description:o})}function ku(e){return{mark:e.mark,encodings:Mu(e.encoding),config:e.config}}function Mu(e){return e?Object.entries(e).map(([t,n])=>Au(n,t)):[]}function er(e){let{type:t,limit:n,additionalFieldQuery:r}=e;return{type:t,limit:n,createQuery(a){return{spec:{...a.spec,encodings:[...a.spec.encodings,r]},groupBy:"field",orderBy:["fieldOrder","aggregationQuality","effectiveness"],chooseBy:["aggregationQuality","effectiveness"],config:{autoAddCount:!0}}}}}const Iu=er({type:"addCategoricalField",limit:4,additionalFieldQuery:{channel:"?",field:"?",type:"nominal"}}),Uu=er({type:"addQuantitativeField",limit:4,additionalFieldQuery:{channel:"?",bin:"?",aggregate:"?",field:"?",type:"quantitative"}}),Fu=er({type:"addTemporalField",limit:2,additionalFieldQuery:{channel:"?",hasFn:!0,timeUnit:"?",field:"?",type:"temporal"}}),Du=["color","fill","stroke","opacity","fillOpacity","strokeOpacity","strokeWidth","size","shape","strokeDash","angle","time"];function _u(e){return!xa(e).hasAnyWildcard}function ju(e){let t=["x","y","color"],n=["row","column"],r=new Set(e.encodings.map(s=>s.channel)),a=t.every(s=>r.has(s)),i=n.some(s=>r.has(s));return a&&i}function ba(e){return e.encodings.length===0}function xa(e){let t=!1,n=!1,r=!1;for(let a of e.encodings)re(a)||(P(a)?A(a.autoCount)&&(n=!0):(A(a.field)&&(t=!0),(A(a.aggregate)||A(a.bin)||A(a.timeUnit))&&(n=!0),A(a.channel)&&(r=!0)));return{hasAnyWildcard:r||t||n,hasWildcardField:t,hasWildcardFn:n,hasWildcardChannel:r}}var Ea={name:"source"};function Pu(e){let t=!1,n=!1,r=!1;return e.encodings.forEach(a=>{a.channel==="x"||a.channel==="y"?t=!0:a.channel==="row"||a.channel==="column"?r=!0:typeof a.channel=="string"&&eo(Du,a.channel)&&(n=!0)}),{hasOpenPosition:t,hasStyleChannel:n,hasOpenFacet:r}}function Ru(e,t){let n={},{hasOpenPosition:r,hasStyleChannel:a,hasOpenFacet:i}=Pu(e.spec);return(r||a)&&(n.addQuantitativeField=$t(Uu,e,t)),(r||a||i)&&(n.addCategoricalField=$t(Iu,e,t)),r&&(n.addTemporalField=$t(Fu,e,t)),n}function tr(e,t){if(ba(e.spec))return{plots:[],query:e,limit:1};let n=ha(e,t).result;return{plots:[Ta(n,Ea)[0]],query:e,limit:1}}function $t(e,t,n){let r=e.createQuery(t),a=ha(r,n).result;return{plots:Ta(a,Ea),query:r,limit:e.limit}}function Ta(e,t){return e.items.map(n=>ca(n)?Sa(t,Vn(n)):Sa(t,n))}function Sa(e,t){return{fieldInfos:t.getEncodings().filter(O).map(n=>({fieldDef:Ou(n),channel:n.channel})),spec:t.toSpec(e)}}function $u(e){let{spec:t,autoAddCount:n}=e,r=ku(t),{hasAnyWildcard:a,hasWildcardFn:i,hasWildcardField:s}=xa(r);return{spec:r,groupBy:Bu({hasWildcardFn:i,hasWildcardField:s}),orderBy:["fieldOrder","aggregationQuality","effectiveness"],chooseBy:["aggregationQuality","effectiveness"],config:a?{autoAddCount:n}:void 0}}function Bu(e){let{hasWildcardFn:t,hasWildcardField:n}=e;return t?"fieldTransform":n?"field":"encoding"}function Lu(){return{mark:"?",encoding:{},config:{},schema:null}}var{valueAtom:Be,useActions:Wu}=za(Lu,{setSchema:(e,t)=>({...e,schema:t}),setMark:(e,t)=>({...e,mark:t}),setEncoding:(e,t)=>{let n=va({...e.encoding,...t});return{...e,encoding:n}},set:(e,t)=>{let{schema:n,...r}=t;return{...e,...r}}});function Na(){return Wu()}const qu=Ma(e=>{let t=e(Be);if(!t.schema)return{};let n=$u({spec:t,autoAddCount:!0});return ba(n.spec)?{main:tr(n,t.schema),histograms:$t(wu,n,t.schema)}:_u(n.spec)&&!ju(n.spec)?{main:tr(n,t.schema),...Ru(n,t.schema)}:{main:tr(n,t.schema)}});var nr=Wt(),Hu=["x","y","row","column"],Gu=["color","size","shape"];const zu=e=>{let t=(0,nr.c)(26),{schema:n,mark:r}=e,a=Lt(Be),i=Na(),s=a.encoding.x&&a.encoding.y,c;t[0]!==i||t[1]!==s||t[2]!==n||t[3]!==a.encoding?(c=C=>(0,E.jsx)(Yu,{schema:n,label:C,disabled:(C==="row"||C==="column")&&!s,fieldDefinition:a.encoding[C],onChange:T=>i.setEncoding({[C]:T})},C),t[0]=i,t[1]=s,t[2]=n,t[3]=a.encoding,t[4]=c):c=t[4];let h=c,o;t[5]===r?o=t[6]:(o=r.toString(),t[5]=r,t[6]=o);let l;t[7]===i?l=t[8]:(l=C=>i.setMark(C),t[7]=i,t[8]=l);let u;t[9]===Symbol.for("react.memo_cache_sentinel")?(u=(0,E.jsx)(et,{children:(0,E.jsx)(pr,{placeholder:"Mark"})}),t[9]=u):u=t[9];let d;t[10]===Symbol.for("react.memo_cache_sentinel")?(d=(0,E.jsx)(Ze,{children:(0,E.jsxs)(Le,{children:[(0,E.jsx)(fr,{children:"Mark"}),Cu.map(Vu)]})}),t[10]=d):d=t[10];let p;t[11]!==o||t[12]!==l?(p=(0,E.jsxs)(tt,{"data-testid":"marimo-plugin-data-explorer-mark-select",value:o,onValueChange:l,children:[u,d]}),t[11]=o,t[12]=l,t[13]=p):p=t[13];let f=p,g;t[14]===Symbol.for("react.memo_cache_sentinel")?(g=(0,E.jsx)("span",{className:"col-span-2 flex items-center justify-between w-full",children:(0,E.jsx)("div",{className:"text-sm font-semibold",children:"Encodings"})}),t[14]=g):g=t[14];let y;t[15]===h?y=t[16]:(y=Hu.map(h),t[15]=h,t[16]=y);let v;t[17]===Symbol.for("react.memo_cache_sentinel")?(v=(0,E.jsx)("div",{children:"Mark"}),t[17]=v):v=t[17];let b;t[18]===f?b=t[19]:(b=(0,E.jsxs)("span",{className:"col-span-2 text-sm font-semibold w-full border-t border-divider flex items-center justify-between pt-2 pr-[30px]",children:[v,f]}),t[18]=f,t[19]=b);let x;t[20]===h?x=t[21]:(x=Gu.map(h),t[20]=h,t[21]=x);let S;return t[22]!==b||t[23]!==x||t[24]!==y?(S=(0,E.jsxs)("div",{className:"grid gap-x-2 gap-y-4 justify-items-start py-3 pl-4 pr-2 bg-(--slate-1) border rounded items-center grid-template-columns-[repeat(2,_minmax(0,_min-content))] self-start",children:[g,y,b,x]}),t[22]=b,t[23]=x,t[24]=y,t[25]=S):S=t[25],S};var Yu=e=>{let t=(0,nr.c)(43),{label:n,schema:r,fieldDefinition:a,disabled:i,onChange:s}=e,c;t[0]!==a||t[1]!==r?(c=()=>{if(!a)return"--";if(a.field==="*")return(0,E.jsxs)("span",{className:"flex gap-2 flex-1",children:[$e[R.NUMBER],(0,E.jsx)("span",{className:"text-left flex-1",children:"Count"})]});let _=a.field.toString();return(0,E.jsxs)("span",{className:"flex gap-2 flex-1",children:[$e[r.primitiveType(_)],(0,E.jsx)("span",{className:"text-left flex-1",children:a.fn?`${a.fn}(${a.field})`:_})]})},t[0]=a,t[1]=r,t[2]=c):c=t[2];let h=c,o;t[3]===s?o=t[4]:(o=()=>{s(void 0)},t[3]=s,t[4]=o);let l=o,u;t[5]===(a==null?void 0:a.field)?u=t[6]:(u=(a==null?void 0:a.field.toString())??"",t[5]=a==null?void 0:a.field,t[6]=u);let d=u,p;t[7]===n?p=t[8]:(p=(0,E.jsx)(ro,{className:"text-(--slate-11) font-semibold",children:n}),t[7]=n,t[8]=p);let f;t[9]!==s||t[10]!==r?(f=_=>{s(_==="*"?{field:"*",fn:"count",type:"quantitative"}:{field:_,type:r.vlType(_)})},t[9]=s,t[10]=r,t[11]=f):f=t[11];let g=d?l:void 0,y;t[12]===h?y=t[13]:(y=h(),t[12]=h,t[13]=y);let v;t[14]!==g||t[15]!==y?(v=(0,E.jsx)(et,{className:"min-w-[140px] lg:min-w-[210px] h-full",onClear:g,children:y}),t[14]=g,t[15]=y,t[16]=v):v=t[16];let b;t[17]===r?b=t[18]:(b=r.fieldNames().map(_=>(0,E.jsx)(Te,{value:_.toString(),children:(0,E.jsxs)("span",{className:"flex items-center gap-2 flex-1",children:[$e[r.primitiveType(_)],(0,E.jsx)("span",{className:"flex-1",children:_}),(0,E.jsxs)("span",{className:"text-muted-foreground text-xs font-semibold",children:["(",r.vlType(_),")"]})]})},_)),t[17]=r,t[18]=b);let x;t[19]===r?x=t[20]:(x=r.fieldNames().length===0&&(0,E.jsx)(Te,{disabled:!0,value:"--",children:"No columns"}),t[19]=r,t[20]=x);let S;t[21]===Symbol.for("react.memo_cache_sentinel")?(S=(0,E.jsx)(hr,{}),t[21]=S):S=t[21];let C;t[22]===Symbol.for("react.memo_cache_sentinel")?(C=(0,E.jsx)(Te,{value:"*",children:(0,E.jsxs)("span",{className:"flex items-center gap-1 flex-1",children:[$e[R.NUMBER],(0,E.jsx)("span",{className:"flex-1",children:"Count"})]})},"*"),t[22]=C):C=t[22];let T;t[23]!==x||t[24]!==b?(T=(0,E.jsx)(Ze,{children:(0,E.jsxs)(Le,{children:[b,x,S,C]})}),t[23]=x,t[24]=b,t[25]=T):T=t[25];let w;t[26]!==i||t[27]!==d||t[28]!==T||t[29]!==f||t[30]!==v?(w=(0,E.jsxs)(tt,{value:d,disabled:i,onValueChange:f,children:[v,T]}),t[26]=i,t[27]=d,t[28]=T,t[29]=f,t[30]=v,t[31]=w):w=t[31];let N;t[32]!==a||t[33]!==s?(N=a&&(0,E.jsx)(Qu,{field:a,onChange:s}),t[32]=a,t[33]=s,t[34]=N):N=t[34];let D;t[35]===N?D=t[36]:(D=(0,E.jsx)("div",{className:"w-[26px]",children:N}),t[35]=N,t[36]=D);let k;t[37]!==w||t[38]!==D?(k=(0,E.jsxs)("div",{className:"flex flex-row gap-1 h-[26px]",children:[w,D]}),t[37]=w,t[38]=D,t[39]=k):k=t[39];let I;return t[40]!==k||t[41]!==p?(I=(0,E.jsxs)(E.Fragment,{children:[p,k]}),t[40]=k,t[41]=p,t[42]=I):I=t[42],I},rr="__",Qu=e=>{let t=(0,nr.c)(10),{field:n,onChange:r}=e;if(n.field==="*")return null;let a;if(t[0]!==n||t[1]!==r){a=Symbol.for("react.early_return_sentinel");e:{let i=[];if(n.type===se.QUANTITATIVE&&(i=[["",Su]]),n.type===se.TEMPORAL&&(i=[["Single",ga],["Multi",ya]]),i.length>0){let s=d=>{r({...n,fn:d===rr?void 0:d})},c;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,E.jsx)(et,{className:"h-full px-1",hideChevron:!0,variant:"ghost",children:(0,E.jsx)(Qa,{size:14,strokeWidth:1.5})}),t[3]=c):c=t[3];let h,o;t[4]===Symbol.for("react.memo_cache_sentinel")?(h=(0,E.jsx)(Le,{children:(0,E.jsx)(Te,{value:rr,children:"None"})}),o=(0,E.jsx)(hr,{}),t[4]=h,t[5]=o):(h=t[4],o=t[5]);let l=(0,E.jsxs)(Ze,{children:[h,o,i.map(Ju)]}),u;t[6]!==n.fn||t[7]!==s||t[8]!==l?(u=(0,E.jsxs)(tt,{"data-testid":"marimo-plugin-data-explorer-field-options",value:n.fn,onValueChange:s,children:[c,l]}),t[6]=n.fn,t[7]=s,t[8]=l,t[9]=u):u=t[9],a=u;break e}}t[0]=n,t[1]=r,t[2]=a}else a=t[2];return a===Symbol.for("react.early_return_sentinel")?null:a};function Vu(e){return(0,E.jsx)(Te,{value:e,children:e==="?"?"auto":e},e)}function Ku(e){return(0,E.jsx)(Te,{value:e??rr,children:ja(e)},e)}function Ju(e){let[t,n]=e;return(0,E.jsxs)(Le,{children:[t&&(0,E.jsx)(fr,{children:t}),n.map(Ku)]},t)}var Bt=Wt(),Xu=e=>{let t=(0,Bt.c)(5),n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n=ka(),t[0]=n):n=t[0];let r=n,a;t[1]===e?a=t[2]:(a=()=>{let s=r.sub(Be,()=>{let{schema:h,...o}=r.get(Be);e.setValue(o)}),c=e.value;return c&&Object.keys(c).length>0&&r.set(Be,c),s},t[1]=e,t[2]=a),Pa(a);let i;return t[3]===e?i=t[4]:(i=(0,E.jsx)(Oa,{store:r,children:(0,E.jsx)(wa,{...e})}),t[3]=e,t[4]=i),i};function Ca(e){return{padding:{left:20,right:20,top:20,bottom:20},actions:{export:{svg:!0,png:!0},source:!1,compiled:!1,editor:!1},theme:e==="dark"?"dark":void 0,tooltip:Ba.call,renderer:"canvas"}}var Zu=Xu;const wa=e=>{var xe,X,W,fe,Ee,pe;let t=(0,Bt.c)(43),{data:n}=e,r=Na(),a;t[0]!==r||t[1]!==n?(a=async()=>{if(!n)return{};let M=await $a(n,{type:"csv",parse:"auto"},{replacePeriod:!0}),Y=Mc(M);return r.setSchema(Y),{chartData:M,schema:Y}},t[0]=r,t[1]=n,t[2]=a):a=t[2];let i;t[3]===n?i=t[4]:(i=[n],t[3]=n,t[4]=i);let{data:s,isPending:c,error:h}=no(a,i),{mark:o}=Lt(Be),l=Lt(qu),{theme:u}=Ka();if(h){let M;return t[5]===h?M=t[6]:(M=(0,E.jsx)(to,{error:h}),t[5]=h,t[6]=M),M}if(!s){let M;return t[7]===Symbol.for("react.memo_cache_sentinel")?(M=(0,E.jsx)("div",{}),t[7]=M):M=t[7],M}let{chartData:d,schema:p}=s;if(c||!p){let M;return t[8]===Symbol.for("react.memo_cache_sentinel")?(M=(0,E.jsx)("div",{}),t[8]=M):M=t[8],M}let f=(X=(xe=l.main)==null?void 0:xe.plots)==null?void 0:X[0],g;t[9]===(f==null?void 0:f.fieldInfos)?g=t[10]:(g=new Set(f==null?void 0:f.fieldInfos.map(rd)),t[9]=f==null?void 0:f.fieldInfos,t[10]=g);let y=g,v;t[11]!==d||t[12]!==f||t[13]!==p||t[14]!==u?(v=()=>{if(!f)return(0,E.jsx)(mu,{schema:p});let M=f.spec,Y=dr(nd(M),d);return(0,E.jsx)("div",{className:cr("flex overflow-y-auto justify-center items-center flex-1 w-[90%]"),children:(0,E.jsx)(mr,{"data-container-width":La(Y),spec:Y,options:Ca(u)})})},t[11]=d,t[12]=f,t[13]=p,t[14]=u,t[15]=v):v=t[15];let b=v,x;t[16]!==o||t[17]!==p?(x=(0,E.jsx)(zu,{mark:o,schema:p}),t[16]=o,t[17]=p,t[18]=x):x=t[18];let S;t[19]===b?S=t[20]:(S=b(),t[19]=b,t[20]=S);let C;t[21]!==x||t[22]!==S?(C=(0,E.jsxs)("div",{className:"flex items-center gap-2",children:[x,S]}),t[21]=x,t[22]=S,t[23]=C):C=t[23];let T=(W=l.histograms)==null?void 0:W.plots,w=(fe=l.addCategoricalField)==null?void 0:fe.plots,N=(Ee=l.addQuantitativeField)==null?void 0:Ee.plots,D=(pe=l.addTemporalField)==null?void 0:pe.plots,k;if(t[24]!==r||t[25]!==d||t[26]!==y||t[27]!==N||t[28]!==D||t[29]!==T||t[30]!==w||t[31]!==u){let M;t[33]!==r||t[34]!==d||t[35]!==y||t[36]!==u?(M=(Y,Je)=>(0,E.jsx)(td,{title:(0,E.jsx)("div",{className:"flex flex-row gap-1",children:Y.fieldInfos.map(he=>{let or=he.fieldDef.field==="*"?"Count":he.fieldDef.fn?`${he.fieldDef.fn}(${he.fieldDef.field})`:he.fieldDef.field.toString();return(0,E.jsx)(Va,{variant:y.has(he.fieldDef.field)?"secondary":"defaultOutline",children:or},or)})}),actions:(0,E.jsx)(Ja,{content:"Make main plot",children:(0,E.jsx)(lr,{"data-testid":"marimo-plugin-data-explorer-make-main-plot",variant:"text",size:"icon",onClick:()=>{let he=Wa.fromEntries(Y.fieldInfos.map(id));r.setEncoding(he)},children:(0,E.jsx)(Ya,{className:"w-4 h-4"})})}),children:(0,E.jsx)(mr,{options:Ca(u),spec:dr(Y.spec,d)},Je)},Je),t[33]=r,t[34]=d,t[35]=y,t[36]=u,t[37]=M):M=t[37],k=[T,w,N,D].filter(Boolean).flat().map(M),t[24]=r,t[25]=d,t[26]=y,t[27]=N,t[28]=D,t[29]=T,t[30]=w,t[31]=u,t[32]=k}else k=t[32];let I;t[38]===k?I=t[39]:(I=(0,E.jsx)(ed,{children:k}),t[38]=k,t[39]=I);let _;return t[40]!==I||t[41]!==C?(_=(0,E.jsxs)("div",{className:"flex flex-col gap-2",children:[C,I]}),t[40]=I,t[41]=C,t[42]=_):_=t[42],_};var ed=e=>{let t=(0,Bt.c)(2),{children:n}=e;if(Zn.Children.count(n)===0)return null;let r;return t[0]===n?r=t[1]:(r=(0,E.jsx)("div",{className:"flex flex-row overflow-x-auto overflow-y-hidden gap-4 snap-x pb-4",children:n}),t[0]=n,t[1]=r),r},td=e=>{let t=(0,Bt.c)(10),{title:n,children:r,actions:a}=e,i;t[0]===n?i=t[1]:(i=(0,E.jsx)("div",{className:"text-sm font-medium",children:n}),t[0]=n,t[1]=i);let s;t[2]!==a||t[3]!==i?(s=(0,E.jsxs)("div",{className:"flex flex-row justify-between items-center bg-(--slate-3) py-0.5 px-2",children:[i,a]}),t[2]=a,t[3]=i,t[4]=s):s=t[4];let c;t[5]===r?c=t[6]:(c=(0,E.jsx)("div",{className:"px-6 pt-2 max-h-[280px] overflow-y-auto",children:r}),t[5]=r,t[6]=c);let h;return t[7]!==s||t[8]!==c?(h=(0,E.jsxs)("div",{className:"shrink-0 bg-card shadow-md border overflow-hidden rounded snap-start",children:[s,c]}),t[7]=s,t[8]=c,t[9]=h):h=t[9],h};function nd(e){var t,n;return(t=e.encoding)!=null&&t.row||(n=e.encoding)!=null&&n.column||(e.width="container"),e}function rd(e){return e.fieldDef.field}function id(e){return[e.channel,e.fieldDef]}export{wa as DataExplorerComponent,Zu as default};
|