watch-tail 0.3.1 → 0.5.0
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/README.md +157 -3
- package/build/client/_app/immutable/assets/0.BQQ1YLPc.css +2 -0
- package/build/client/_app/immutable/assets/0.BQQ1YLPc.css.br +0 -0
- package/build/client/_app/immutable/assets/0.BQQ1YLPc.css.gz +0 -0
- package/build/client/_app/immutable/assets/BrushContext.2tkUc39H.css +1 -0
- package/build/client/_app/immutable/assets/BrushContext.2tkUc39H.css.br +0 -0
- package/build/client/_app/immutable/assets/BrushContext.2tkUc39H.css.gz +0 -0
- package/build/client/_app/immutable/assets/ChartAnnotations.Bw8CGteN.css +1 -0
- package/build/client/_app/immutable/assets/ChartAnnotations.Bw8CGteN.css.br +0 -0
- package/build/client/_app/immutable/assets/ChartAnnotations.Bw8CGteN.css.gz +0 -0
- package/build/client/_app/immutable/assets/Circle.C5MKzgk2.css +1 -0
- package/build/client/_app/immutable/assets/Circle.C5MKzgk2.css.br +1 -0
- package/build/client/_app/immutable/assets/Circle.C5MKzgk2.css.gz +0 -0
- package/build/client/_app/immutable/assets/DefaultTooltip.CGOVIm3D.css +1 -0
- package/build/client/_app/immutable/assets/DefaultTooltip.CGOVIm3D.css.br +0 -0
- package/build/client/_app/immutable/assets/DefaultTooltip.CGOVIm3D.css.gz +0 -0
- package/build/client/_app/immutable/assets/EventScatter.DA5sZ1c0.css +1 -0
- package/build/client/_app/immutable/assets/EventScatter.DA5sZ1c0.css.br +0 -0
- package/build/client/_app/immutable/assets/EventScatter.DA5sZ1c0.css.gz +0 -0
- package/build/client/_app/immutable/assets/Labels.sEaJtb97.css +1 -0
- package/build/client/_app/immutable/assets/Labels.sEaJtb97.css.br +0 -0
- package/build/client/_app/immutable/assets/Labels.sEaJtb97.css.gz +0 -0
- package/build/client/_app/immutable/assets/Legend.DnhxhJ2I.css +1 -0
- package/build/client/_app/immutable/assets/Legend.DnhxhJ2I.css.br +0 -0
- package/build/client/_app/immutable/assets/Legend.DnhxhJ2I.css.gz +0 -0
- package/build/client/_app/immutable/assets/Path.B0wDzTrn.css +1 -0
- package/build/client/_app/immutable/assets/Path.B0wDzTrn.css.br +0 -0
- package/build/client/_app/immutable/assets/Path.B0wDzTrn.css.gz +0 -0
- package/build/client/_app/immutable/assets/TransformContext.1cjyViIk.css +1 -0
- package/build/client/_app/immutable/assets/TransformContext.1cjyViIk.css.br +0 -0
- package/build/client/_app/immutable/assets/TransformContext.1cjyViIk.css.gz +0 -0
- package/build/client/_app/immutable/assets/Voronoi.ce7atosu.css +1 -0
- package/build/client/_app/immutable/assets/Voronoi.ce7atosu.css.br +0 -0
- package/build/client/_app/immutable/assets/Voronoi.ce7atosu.css.gz +0 -0
- package/build/client/_app/immutable/chunks/AUlz4-kZ.js +1 -0
- package/build/client/_app/immutable/chunks/AUlz4-kZ.js.br +0 -0
- package/build/client/_app/immutable/chunks/AUlz4-kZ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B1t8v2wP.js +1 -0
- package/build/client/_app/immutable/chunks/B1t8v2wP.js.br +0 -0
- package/build/client/_app/immutable/chunks/B1t8v2wP.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B6nyufJR.js +1 -0
- package/build/client/_app/immutable/chunks/B6nyufJR.js.br +0 -0
- package/build/client/_app/immutable/chunks/B6nyufJR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BR2LaRms.js +1 -0
- package/build/client/_app/immutable/chunks/BR2LaRms.js.br +1 -0
- package/build/client/_app/immutable/chunks/BR2LaRms.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BR7qH0F5.js +1 -0
- package/build/client/_app/immutable/chunks/BR7qH0F5.js.br +0 -0
- package/build/client/_app/immutable/chunks/BR7qH0F5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BkXArOra.js +1 -0
- package/build/client/_app/immutable/chunks/BkXArOra.js.br +0 -0
- package/build/client/_app/immutable/chunks/BkXArOra.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bl052uUt.js +1 -0
- package/build/client/_app/immutable/chunks/Bl052uUt.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bl052uUt.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bmk_Voz6.js +1 -0
- package/build/client/_app/immutable/chunks/Bmk_Voz6.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bmk_Voz6.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bp63j1zN.js +1 -0
- package/build/client/_app/immutable/chunks/Bp63j1zN.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bp63j1zN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BwntJtbK.js +1 -0
- package/build/client/_app/immutable/chunks/BwntJtbK.js.br +0 -0
- package/build/client/_app/immutable/chunks/BwntJtbK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C20WvNRq.js +1 -0
- package/build/client/_app/immutable/chunks/C20WvNRq.js.br +0 -0
- package/build/client/_app/immutable/chunks/C20WvNRq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C58PZtCD.js +4 -0
- package/build/client/_app/immutable/chunks/C58PZtCD.js.br +0 -0
- package/build/client/_app/immutable/chunks/C58PZtCD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CCch3uox.js +1 -0
- package/build/client/_app/immutable/chunks/CCch3uox.js.br +0 -0
- package/build/client/_app/immutable/chunks/CCch3uox.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CDbeYGlD.js +1 -0
- package/build/client/_app/immutable/chunks/CDbeYGlD.js.br +0 -0
- package/build/client/_app/immutable/chunks/CDbeYGlD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CJFHBop_.js +1 -0
- package/build/client/_app/immutable/chunks/CJFHBop_.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJFHBop_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CYw9ugj1.js +1 -0
- package/build/client/_app/immutable/chunks/CYw9ugj1.js.br +0 -0
- package/build/client/_app/immutable/chunks/CYw9ugj1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CjJd0uRB.js +1 -0
- package/build/client/_app/immutable/chunks/CjJd0uRB.js.br +1 -0
- package/build/client/_app/immutable/chunks/CjJd0uRB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CoEFQJcr.js +1 -0
- package/build/client/_app/immutable/chunks/CoEFQJcr.js.br +0 -0
- package/build/client/_app/immutable/chunks/CoEFQJcr.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D-JtVVAo.js +1 -0
- package/build/client/_app/immutable/chunks/D-JtVVAo.js.br +0 -0
- package/build/client/_app/immutable/chunks/D-JtVVAo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DJDlf6lC.js +1 -0
- package/build/client/_app/immutable/chunks/DJDlf6lC.js.br +0 -0
- package/build/client/_app/immutable/chunks/DJDlf6lC.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DJLYkl5w.js +1 -0
- package/build/client/_app/immutable/chunks/DJLYkl5w.js.br +0 -0
- package/build/client/_app/immutable/chunks/DJLYkl5w.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DPKdNiYi.js +1 -0
- package/build/client/_app/immutable/chunks/DPKdNiYi.js.br +0 -0
- package/build/client/_app/immutable/chunks/DPKdNiYi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DQi7bc16.js +1 -0
- package/build/client/_app/immutable/chunks/DQi7bc16.js.br +0 -0
- package/build/client/_app/immutable/chunks/DQi7bc16.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DVTgeA2y.js +2 -0
- package/build/client/_app/immutable/chunks/DVTgeA2y.js.br +0 -0
- package/build/client/_app/immutable/chunks/DVTgeA2y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Db0q5_zr.js +1 -0
- package/build/client/_app/immutable/chunks/Db0q5_zr.js.br +0 -0
- package/build/client/_app/immutable/chunks/Db0q5_zr.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dfvzj6n2.js +1 -0
- package/build/client/_app/immutable/chunks/Dfvzj6n2.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dfvzj6n2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Di37PX72.js +1 -0
- package/build/client/_app/immutable/chunks/Di37PX72.js.br +0 -0
- package/build/client/_app/immutable/chunks/Di37PX72.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DyIYFD7i.js → DkyYNO4U.js} +1 -1
- package/build/client/_app/immutable/chunks/DkyYNO4U.js.br +0 -0
- package/build/client/_app/immutable/chunks/DkyYNO4U.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DmRhEzIa.js +1 -0
- package/build/client/_app/immutable/chunks/DmRhEzIa.js.br +0 -0
- package/build/client/_app/immutable/chunks/DmRhEzIa.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dp8S9ymS.js +1 -0
- package/build/client/_app/immutable/chunks/Dp8S9ymS.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dp8S9ymS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DslUcEd-.js +1 -0
- package/build/client/_app/immutable/chunks/DslUcEd-.js.br +0 -0
- package/build/client/_app/immutable/chunks/DslUcEd-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dt_Zd6U2.js +1 -0
- package/build/client/_app/immutable/chunks/Dt_Zd6U2.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dt_Zd6U2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DwezeuNE.js +5 -0
- package/build/client/_app/immutable/chunks/DwezeuNE.js.br +0 -0
- package/build/client/_app/immutable/chunks/DwezeuNE.js.gz +0 -0
- package/build/client/_app/immutable/chunks/HclGiUj8.js +1 -0
- package/build/client/_app/immutable/chunks/HclGiUj8.js.br +0 -0
- package/build/client/_app/immutable/chunks/HclGiUj8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/PYzEcuyd.js +10 -0
- package/build/client/_app/immutable/chunks/PYzEcuyd.js.br +0 -0
- package/build/client/_app/immutable/chunks/PYzEcuyd.js.gz +0 -0
- package/build/client/_app/immutable/chunks/RobXhXPM.js +1 -0
- package/build/client/_app/immutable/chunks/RobXhXPM.js.br +1 -0
- package/build/client/_app/immutable/chunks/RobXhXPM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/UySfXNq7.js +1 -0
- package/build/client/_app/immutable/chunks/UySfXNq7.js.br +0 -0
- package/build/client/_app/immutable/chunks/UySfXNq7.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Y5urAfNy.js +1 -0
- package/build/client/_app/immutable/chunks/Y5urAfNy.js.br +0 -0
- package/build/client/_app/immutable/chunks/Y5urAfNy.js.gz +0 -0
- package/build/client/_app/immutable/chunks/_Zq76xnA.js +15 -0
- package/build/client/_app/immutable/chunks/_Zq76xnA.js.br +0 -0
- package/build/client/_app/immutable/chunks/_Zq76xnA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/dbhDrJmm.js +1 -0
- package/build/client/_app/immutable/chunks/dbhDrJmm.js.br +0 -0
- package/build/client/_app/immutable/chunks/dbhDrJmm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/pqiPC7Y8.js +3 -0
- package/build/client/_app/immutable/chunks/pqiPC7Y8.js.br +0 -0
- package/build/client/_app/immutable/chunks/pqiPC7Y8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/yCfI4PCa.js +1 -0
- package/build/client/_app/immutable/chunks/yCfI4PCa.js.br +0 -0
- package/build/client/_app/immutable/chunks/yCfI4PCa.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.vMZB8_Zr.js +2 -0
- package/build/client/_app/immutable/entry/app.vMZB8_Zr.js.br +0 -0
- package/build/client/_app/immutable/entry/app.vMZB8_Zr.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.pM5lNk_5.js +1 -0
- package/build/client/_app/immutable/entry/start.pM5lNk_5.js.br +0 -0
- package/build/client/_app/immutable/entry/start.pM5lNk_5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.CZO0sIxX.js +1 -0
- package/build/client/_app/immutable/nodes/0.CZO0sIxX.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.CZO0sIxX.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.zcN3R_zF.js +1 -0
- package/build/client/_app/immutable/nodes/1.zcN3R_zF.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.zcN3R_zF.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.DxevVqut.js +2 -0
- package/build/client/_app/immutable/nodes/2.DxevVqut.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.DxevVqut.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/handler.js +9 -7
- package/build/handler.js.map +1 -1
- package/build/index.js +9 -7
- package/build/index.js.map +1 -1
- package/build/server/chunks/chunks/Arc.canvas.js-D6g58nSp.js +701 -0
- package/build/server/chunks/chunks/Arc.canvas.js-D6g58nSp.js.map +1 -0
- package/build/server/chunks/chunks/Arc.js-D78Cf_4M.js +31 -0
- package/build/server/chunks/chunks/Arc.js-D78Cf_4M.js.map +1 -0
- package/build/server/chunks/chunks/Bar.js-Cv73T8_D.js +448 -0
- package/build/server/chunks/chunks/Bar.js-Cv73T8_D.js.map +1 -0
- package/build/server/chunks/chunks/ChartAnnotations.js-Ci22VB_6.js +983 -0
- package/build/server/chunks/chunks/ChartAnnotations.js-Ci22VB_6.js.map +1 -0
- package/build/server/chunks/chunks/Circle.html.js-BjwyNRG3.js +355 -0
- package/build/server/chunks/chunks/Circle.html.js-BjwyNRG3.js.map +1 -0
- package/build/server/chunks/chunks/ClipPath.canvas.js-CFTBDWVU.js +170 -0
- package/build/server/chunks/chunks/ClipPath.canvas.js-CFTBDWVU.js.map +1 -0
- package/build/server/chunks/chunks/DefaultTooltip.js-0r5rbE-1.js +352 -0
- package/build/server/chunks/chunks/DefaultTooltip.js-0r5rbE-1.js.map +1 -0
- package/build/server/chunks/chunks/EventScatter.js-DqCMPeHG.js +7304 -0
- package/build/server/chunks/chunks/EventScatter.js-DqCMPeHG.js.map +1 -0
- package/build/server/chunks/chunks/Labels.js-DpagpV6d.js +497 -0
- package/build/server/chunks/chunks/Labels.js-DpagpV6d.js.map +1 -0
- package/build/server/chunks/chunks/Legend.js-BOpwpe5s.js +343 -0
- package/build/server/chunks/chunks/Legend.js-BOpwpe5s.js.map +1 -0
- package/build/server/chunks/chunks/Line.html.js-BM5tR11G.js +423 -0
- package/build/server/chunks/chunks/Line.html.js-BM5tR11G.js.map +1 -0
- package/build/server/chunks/chunks/Link.canvas.js-P8ySzEAw.js +756 -0
- package/build/server/chunks/chunks/Link.canvas.js-P8ySzEAw.js.map +1 -0
- package/build/server/chunks/chunks/Path.canvas.js-DNAtnEBt.js +1259 -0
- package/build/server/chunks/chunks/Path.canvas.js-DNAtnEBt.js.map +1 -0
- package/build/server/chunks/chunks/Points.html.js-CLbHD6OP.js +228 -0
- package/build/server/chunks/chunks/Points.html.js-CLbHD6OP.js.map +1 -0
- package/build/server/chunks/chunks/Points.js-e6g0Re6H.js +14 -0
- package/build/server/chunks/chunks/Points.js-e6g0Re6H.js.map +1 -0
- package/build/server/chunks/chunks/Points2.js-BMGdkzTE.js +25 -0
- package/build/server/chunks/chunks/Points2.js-BMGdkzTE.js.map +1 -0
- package/build/server/chunks/chunks/Rect.html.js-Q3UvRwNn.js +547 -0
- package/build/server/chunks/chunks/Rect.html.js-Q3UvRwNn.js.map +1 -0
- package/build/server/chunks/chunks/Spline.js-BuZPz2PJ.js +516 -0
- package/build/server/chunks/chunks/Spline.js-BuZPz2PJ.js.map +1 -0
- package/build/server/chunks/chunks/Text.html.js-C8xO5Nz6.js +847 -0
- package/build/server/chunks/chunks/Text.html.js-C8xO5Nz6.js.map +1 -0
- package/build/server/chunks/chunks/TooltipItem.js-T0cKLjLu.js +314 -0
- package/build/server/chunks/chunks/TooltipItem.js-T0cKLjLu.js.map +1 -0
- package/build/server/chunks/chunks/Voronoi.js-DevTsXQE.js +2052 -0
- package/build/server/chunks/chunks/Voronoi.js-DevTsXQE.js.map +1 -0
- package/build/server/chunks/chunks/archive.js-C6rz09rJ.js +584 -0
- package/build/server/chunks/chunks/archive.js-C6rz09rJ.js.map +1 -0
- package/build/server/chunks/chunks/array.js-CBp0H4t3.js +8 -0
- package/build/server/chunks/chunks/array.js-CBp0H4t3.js.map +1 -0
- package/build/server/chunks/chunks/attributes.js-BVWo7wbg.js +25 -0
- package/build/server/chunks/chunks/attributes.js-BVWo7wbg.js.map +1 -0
- package/build/server/chunks/chunks/{env2.js-D7xrfc37.js → aws.js-DkPqAybc.js} +13 -64
- package/build/server/chunks/chunks/aws.js-DkPqAybc.js.map +1 -0
- package/build/server/chunks/chunks/band.js-C7izXphE.js +155 -0
- package/build/server/chunks/chunks/band.js-C7izXphE.js.map +1 -0
- package/build/server/chunks/chunks/centroid.js-BnGN3LH0.js +1356 -0
- package/build/server/chunks/chunks/centroid.js-BnGN3LH0.js.map +1 -0
- package/build/server/chunks/chunks/common.js-BWQB8Die.js +5760 -0
- package/build/server/chunks/chunks/common.js-BWQB8Die.js.map +1 -0
- package/build/server/chunks/chunks/env2.js-CcIskxOZ.js +60 -0
- package/build/server/chunks/chunks/env2.js-CcIskxOZ.js.map +1 -0
- package/build/server/chunks/chunks/{exports.js-CvFPPbaH.js → exports.js-ClPPfcHj.js} +6 -1
- package/build/server/chunks/chunks/exports.js-ClPPfcHj.js.map +1 -0
- package/build/server/chunks/chunks/group.js-DBFzWAox.js +30 -0
- package/build/server/chunks/chunks/group.js-DBFzWAox.js.map +1 -0
- package/build/server/chunks/chunks/index-server.js-DNLOKvM0.js +248 -0
- package/build/server/chunks/chunks/index-server.js-DNLOKvM0.js.map +1 -0
- package/build/server/chunks/chunks/index-server2.js-l0sNRNKZ.js +2 -0
- package/build/server/chunks/chunks/index-server2.js-l0sNRNKZ.js.map +1 -0
- package/build/server/chunks/chunks/{internal2.js-DZ8ZzzjN.js → internal.js-DZ8ZzzjN.js} +1 -1
- package/build/server/chunks/chunks/internal.js-DZ8ZzzjN.js.map +1 -0
- package/build/server/chunks/chunks/internal2.js-DDcktblR.js +188 -0
- package/build/server/chunks/chunks/internal2.js-DDcktblR.js.map +1 -0
- package/build/server/chunks/chunks/key.svelte.js-CWIvXc6L.js +695 -0
- package/build/server/chunks/chunks/key.svelte.js-CWIvXc6L.js.map +1 -0
- package/build/server/chunks/chunks/{internal.js-B-DZpK-L.js → legacy-client.js-DJmDw3Zx.js} +13 -439
- package/build/server/chunks/chunks/legacy-client.js-DJmDw3Zx.js.map +1 -0
- package/build/server/chunks/chunks/level-filter.js-H_AdNbCw.js +297 -0
- package/build/server/chunks/chunks/level-filter.js-H_AdNbCw.js.map +1 -0
- package/build/server/chunks/chunks/lineRadial.js-Dm0GMqo3.js +126 -0
- package/build/server/chunks/chunks/lineRadial.js-Dm0GMqo3.js.map +1 -0
- package/build/server/chunks/chunks/linear.js-CTOKrHn9.js +1046 -0
- package/build/server/chunks/chunks/linear.js-CTOKrHn9.js.map +1 -0
- package/build/server/chunks/chunks/log-buffer.js-CpI7gyom.js +471 -0
- package/build/server/chunks/chunks/log-buffer.js-CpI7gyom.js.map +1 -0
- package/build/server/chunks/chunks/math.js-BqujbaBs.js +50 -0
- package/build/server/chunks/chunks/math.js-BqujbaBs.js.map +1 -0
- package/build/server/chunks/chunks/max.js-CuS0BpRI.js +11 -0
- package/build/server/chunks/chunks/max.js-CuS0BpRI.js.map +1 -0
- package/build/server/chunks/chunks/min.js-DZWt5tPl.js +11 -0
- package/build/server/chunks/chunks/min.js-DZWt5tPl.js.map +1 -0
- package/build/server/chunks/chunks/motion.svelte.js-DCHSFMu-.js +677 -0
- package/build/server/chunks/chunks/motion.svelte.js-DCHSFMu-.js.map +1 -0
- package/build/server/chunks/chunks/occlusion.js-DJ-AdK9u.js +33 -0
- package/build/server/chunks/chunks/occlusion.js-DJ-AdK9u.js.map +1 -0
- package/build/server/chunks/chunks/path.js-BizMrlzb.js +488 -0
- package/build/server/chunks/chunks/path.js-BizMrlzb.js.map +1 -0
- package/build/server/chunks/chunks/path2.js-pquT2Kg6.js +27 -0
- package/build/server/chunks/chunks/path2.js-pquT2Kg6.js.map +1 -0
- package/build/server/chunks/chunks/pointRadial.js-Deeu1LXx.js +7 -0
- package/build/server/chunks/chunks/pointRadial.js-Deeu1LXx.js.map +1 -0
- package/build/server/chunks/chunks/rect.svelte.js-zeS7FWjB.js +187 -0
- package/build/server/chunks/chunks/rect.svelte.js-zeS7FWjB.js.map +1 -0
- package/build/server/chunks/chunks/scales.svelte.js-D_1popPi.js +276 -0
- package/build/server/chunks/chunks/scales.svelte.js-D_1popPi.js.map +1 -0
- package/build/server/chunks/chunks/series-buckets.js-CX_rWCeH.js +123 -0
- package/build/server/chunks/chunks/series-buckets.js-CX_rWCeH.js.map +1 -0
- package/build/server/chunks/chunks/{server.js-ByNB8uti.js → server.js-CAEBuMIH.js} +167 -2
- package/build/server/chunks/chunks/server.js-CAEBuMIH.js.map +1 -0
- package/build/server/chunks/chunks/source.js-DZEVvuho.js +21 -0
- package/build/server/chunks/chunks/source.js-DZEVvuho.js.map +1 -0
- package/build/server/chunks/chunks/{state.js-V2NYGhy_.js → state.js-Dves8H8h.js} +5 -4
- package/build/server/chunks/chunks/state.js-Dves8H8h.js.map +1 -0
- package/build/server/chunks/chunks/types.js-x3GyGPOz.js +11 -0
- package/build/server/chunks/chunks/types.js-x3GyGPOz.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/archive/_server.ts.js-sNd3lS0y.js +39 -0
- package/build/server/chunks/entries/endpoints/api/archive/_server.ts.js-sNd3lS0y.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/health/{_server.ts.js-aiNZfkco.js → _server.ts.js-VctnBhIJ.js} +5 -3
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-VctnBhIJ.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/identity/_server.ts.js-Dt540Sio.js +73 -0
- package/build/server/chunks/entries/endpoints/api/identity/_server.ts.js-Dt540Sio.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/log-groups/{_server.ts.js-D143-vRl.js → _server.ts.js-BGyWbj78.js} +57 -7
- package/build/server/chunks/entries/endpoints/api/log-groups/_server.ts.js-BGyWbj78.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/regions/{_server.ts.js-CDNL7msU.js → _server.ts.js-CBqfN6Pg.js} +5 -3
- package/build/server/chunks/entries/endpoints/api/regions/_server.ts.js-CBqfN6Pg.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/series/_server.ts.js-DjGMqXKo.js +194 -0
- package/build/server/chunks/entries/endpoints/api/series/_server.ts.js-DjGMqXKo.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/stream/{_server.ts.js-D_i-xW6_.js → _server.ts.js-C-XDemlx.js} +324 -222
- package/build/server/chunks/entries/endpoints/api/stream/_server.ts.js-C-XDemlx.js.map +1 -0
- package/build/server/chunks/entries/fallbacks/{error.svelte.js-CAasf3PF.js → error.svelte.js-DdUYlUJV.js} +7 -5
- package/build/server/chunks/entries/fallbacks/{error.svelte.js-CAasf3PF.js.map → error.svelte.js-DdUYlUJV.js.map} +1 -1
- package/build/server/chunks/entries/pages/_layout.svelte.js-CBQpEToy.js +22 -0
- package/build/server/chunks/entries/pages/_layout.svelte.js-CBQpEToy.js.map +1 -0
- package/build/server/chunks/entries/pages/{_page.svelte.js-DzAAqWz2.js → _page.svelte.js-B-kVwiNh.js} +563 -349
- package/build/server/chunks/entries/pages/_page.svelte.js-B-kVwiNh.js.map +1 -0
- package/build/server/chunks/{handler-CuWqZDuC.js → handler-BHf-eLnl.js} +3 -3
- package/build/server/chunks/{handler-CuWqZDuC.js.map → handler-BHf-eLnl.js.map} +1 -1
- package/build/server/chunks/{index.js-NHTL74z2.js → index.js-D6Auup1Z.js} +6 -5
- package/build/server/chunks/index.js-D6Auup1Z.js.map +1 -0
- package/build/server/chunks/manifest.js-B3Q7n9I6.js +91 -0
- package/build/server/chunks/manifest.js-B3Q7n9I6.js.map +1 -0
- package/build/server/chunks/nodes/0.js-BMP_Yttt.js +9 -0
- package/build/server/chunks/nodes/{0.js-Bg4_hDjk.js.map → 0.js-BMP_Yttt.js.map} +1 -1
- package/build/server/chunks/nodes/1.js-2HQHUOse.js +9 -0
- package/build/server/chunks/nodes/{1.js-CDSk3TvW.js.map → 1.js-2HQHUOse.js.map} +1 -1
- package/build/server/chunks/nodes/2.js-7RtHpiHN.js +9 -0
- package/build/server/chunks/nodes/2.js-7RtHpiHN.js.map +1 -0
- package/dist/cli/completions.js +6 -0
- package/dist/cli/index.js +149 -30
- package/dist/cli/options.js +28 -2
- package/dist/cli/preflight.js +72 -0
- package/dist/cli/ui.js +7 -3
- package/dist/lib/cli/aws.js +12 -4
- package/dist/lib/log-buffer.js +314 -0
- package/dist/lib/log-format.js +185 -0
- package/dist/lib/types.js +0 -4
- package/package.json +7 -2
- package/build/client/_app/immutable/assets/0.CocWI5K4.css +0 -2
- package/build/client/_app/immutable/assets/0.CocWI5K4.css.br +0 -0
- package/build/client/_app/immutable/assets/0.CocWI5K4.css.gz +0 -0
- package/build/client/_app/immutable/chunks/05WsiB4A.js +0 -1
- package/build/client/_app/immutable/chunks/05WsiB4A.js.br +0 -0
- package/build/client/_app/immutable/chunks/05WsiB4A.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DyIYFD7i.js.br +0 -0
- package/build/client/_app/immutable/chunks/DyIYFD7i.js.gz +0 -0
- package/build/client/_app/immutable/chunks/ZAD2y5xJ.js +0 -3
- package/build/client/_app/immutable/chunks/ZAD2y5xJ.js.br +0 -0
- package/build/client/_app/immutable/chunks/ZAD2y5xJ.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.D0_YFW4X.js +0 -2
- package/build/client/_app/immutable/entry/app.D0_YFW4X.js.br +0 -0
- package/build/client/_app/immutable/entry/app.D0_YFW4X.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.D1rrHrg2.js +0 -1
- package/build/client/_app/immutable/entry/start.D1rrHrg2.js.br +0 -0
- package/build/client/_app/immutable/entry/start.D1rrHrg2.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.DHBUWbOo.js +0 -1
- package/build/client/_app/immutable/nodes/0.DHBUWbOo.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.DHBUWbOo.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.D1vhnOgO.js +0 -1
- package/build/client/_app/immutable/nodes/1.D1vhnOgO.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.D1vhnOgO.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.BPdL6B7F.js +0 -5
- package/build/client/_app/immutable/nodes/2.BPdL6B7F.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.BPdL6B7F.js.gz +0 -0
- package/build/server/chunks/chunks/env2.js-D7xrfc37.js.map +0 -1
- package/build/server/chunks/chunks/exports.js-CvFPPbaH.js.map +0 -1
- package/build/server/chunks/chunks/internal.js-B-DZpK-L.js.map +0 -1
- package/build/server/chunks/chunks/internal2.js-DZ8ZzzjN.js.map +0 -1
- package/build/server/chunks/chunks/server.js-ByNB8uti.js.map +0 -1
- package/build/server/chunks/chunks/state.js-V2NYGhy_.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-aiNZfkco.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/log-groups/_server.ts.js-D143-vRl.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/regions/_server.ts.js-CDNL7msU.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/stream/_server.ts.js-D_i-xW6_.js.map +0 -1
- package/build/server/chunks/entries/pages/_layout.svelte.js-Bx7lXkAi.js +0 -22
- package/build/server/chunks/entries/pages/_layout.svelte.js-Bx7lXkAi.js.map +0 -1
- package/build/server/chunks/entries/pages/_page.svelte.js-DzAAqWz2.js.map +0 -1
- package/build/server/chunks/index.js-NHTL74z2.js.map +0 -1
- package/build/server/chunks/manifest.js-8g4gjxwf.js +0 -70
- package/build/server/chunks/manifest.js-8g4gjxwf.js.map +0 -1
- package/build/server/chunks/nodes/0.js-Bg4_hDjk.js +0 -9
- package/build/server/chunks/nodes/1.js-CDSk3TvW.js +0 -9
- package/build/server/chunks/nodes/2.js-BVhBcWrN.js +0 -9
- package/build/server/chunks/nodes/2.js-BVhBcWrN.js.map +0 -1
package/README.md
CHANGED
|
@@ -36,7 +36,9 @@ work for every line.
|
|
|
36
36
|
with the full value on hover - so a 95-character Lambda stream name cannot push your message off
|
|
37
37
|
screen.
|
|
38
38
|
- **Logs arrive as payloads, not prose.** JSON entries are pretty-printed with syntax colouring by
|
|
39
|
-
default, and one toggle shows the raw line when you need the wire format.
|
|
39
|
+
default, and one toggle shows the raw line when you need the wire format. With that toggle off,
|
|
40
|
+
**click a line that carries JSON** and just that payload opens beneath it - indented, coloured, and
|
|
41
|
+
without losing the raw line - and clicking again closes it.
|
|
40
42
|
- **"What happened an hour ago?" is the normal question.** Flip to **Historic** and scan 15 min, 1 h,
|
|
41
43
|
3 h, 12 h, 24 h, 5 days - or pick a custom `from`/`to` window. The scan finishes on its own and the
|
|
42
44
|
window lives in the URL, so `…&mode=historic&range=24h` is a shareable view of an incident.
|
|
@@ -45,6 +47,10 @@ work for every line.
|
|
|
45
47
|
actions, and binds to loopback. Throwaway keys are used for a local emulator and only there.
|
|
46
48
|
- **It is one command and it goes away.** `npx watch-tail`, Ctrl+C. Nothing is deployed, nothing is
|
|
47
49
|
sent anywhere, and there is no agent, sidecar or daemon to clean up.
|
|
50
|
+
- **You keep what you have seen.** Logs you stream are appended to a local DuckDB file, so the incident
|
|
51
|
+
you looked at last week is still there - no re-scanning AWS, no 14-day cliff, no credentials needed
|
|
52
|
+
to read it back. Switch the source to **Local archive** in the UI and the same window controls work
|
|
53
|
+
against that file.
|
|
48
54
|
|
|
49
55
|
Use it when you are debugging a Lambda, chasing an API Gateway 5xx, watching a worker drain a queue,
|
|
50
56
|
or handing a teammate a link that shows exactly the window you are staring at.
|
|
@@ -54,11 +60,24 @@ or handing a teammate a link that shows exactly the window you are staring at.
|
|
|
54
60
|
- **Region-first UI** - pick a region, see its log groups (with stored size), click one to stream.
|
|
55
61
|
- **Live and historic** - follow new events over SSE, or scan a fixed window up to the 14 days
|
|
56
62
|
CloudWatch Logs keeps.
|
|
57
|
-
- **A log window built for real logs** - horizontal scrolling or wrapping, JSON pretty-printing
|
|
58
|
-
drag-resizable stream-name column and group-list pane, level colouring,
|
|
63
|
+
- **A log window built for real logs** - horizontal scrolling or wrapping, JSON pretty-printing with
|
|
64
|
+
click-to-open payloads, drag-resizable stream-name column and group-list pane, level colouring,
|
|
65
|
+
pause/clear/auto-scroll.
|
|
59
66
|
- **Shareable views** - region, group, mode and window all live in the URL.
|
|
60
67
|
- **Local emulation friendly** - `--floci` points at [floci](https://floci.io) on port 4566 for
|
|
61
68
|
development without an AWS account.
|
|
69
|
+
- **History that outlives the window** - everything you stream is archived to a local
|
|
70
|
+
[DuckDB](https://duckdb.org) file, so you can come back to it later - after the 14-day CloudWatch
|
|
71
|
+
limit, with no AWS credentials at all - and query it with plain SQL.
|
|
72
|
+
- **See the shape of an incident before you read it.** A scatter chart above the log view plots events
|
|
73
|
+
over time, coloured by level, so a spike is visible in one glance. Drag across it to zoom into that
|
|
74
|
+
moment - the log view follows the brush, and a click clears it.
|
|
75
|
+
- **Follow more than one group at once.** Tick extra groups in the sidebar and the chart and the log
|
|
76
|
+
view cover all of them, with a group column and a merged stream; the selection lives in the URL.
|
|
77
|
+
- **Severity you can filter on.** Every archived line is tagged `error`, `warn`, `info` or `debug`,
|
|
78
|
+
and the viewer has chips to narrow to one level. A level the log itself declares
|
|
79
|
+
(`{"level":"error"}`) is trusted; otherwise it is read from the line, and a line that carries no
|
|
80
|
+
level at all stays unclassified instead of being called `info`.
|
|
62
81
|
|
|
63
82
|
## Install
|
|
64
83
|
|
|
@@ -90,6 +109,8 @@ watch-tail [options]
|
|
|
90
109
|
--print Print the environment that would be used, then exit
|
|
91
110
|
--list List the AWS profiles found on disk, then exit
|
|
92
111
|
--verbose Log the server's own output
|
|
112
|
+
--db <path> Database file for local history (default: app data dir)
|
|
113
|
+
--no-archive Do not keep a local history archive
|
|
93
114
|
-h, --help Show this help
|
|
94
115
|
-v, --version Show the version
|
|
95
116
|
```
|
|
@@ -153,6 +174,27 @@ running aws sso login --profile my-profile
|
|
|
153
174
|
signed in - credentials work now
|
|
154
175
|
```
|
|
155
176
|
|
|
177
|
+
If you did not name a profile and you have more than one, it asks which one first. The answer decides
|
|
178
|
+
both the login and the profile the app runs with, so a chosen profile is applied by restarting the
|
|
179
|
+
server with it (and with that profile's own region). **A profile that already works is never sent to a
|
|
180
|
+
login prompt**: the CLI asks `sts:GetCallerIdentity` about the chosen profile first, and only offers a
|
|
181
|
+
login when that profile really has nothing usable.
|
|
182
|
+
|
|
183
|
+
```text
|
|
184
|
+
? Which AWS profile should watch-tail use? (type to search, then Enter)
|
|
185
|
+
using profile beyond-mzansi
|
|
186
|
+
restarting with profile beyond-mzansi
|
|
187
|
+
profile beyond-mzansi already works (AWSReservedSSO_AWSAdministratorAccess) - using it
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
```text
|
|
191
|
+
? Which AWS profile should watch-tail use? (type to search, then Enter)
|
|
192
|
+
using profile beyond-mzansi
|
|
193
|
+
? Sign in to the SSO session for beyond-mzansi. Run `aws sso login --profile beyond-mzansi` now? › yes
|
|
194
|
+
restarting with profile beyond-mzansi
|
|
195
|
+
signed in as beyond-mzansi - credentials work now
|
|
196
|
+
```
|
|
197
|
+
|
|
156
198
|
| Your profile | What it runs |
|
|
157
199
|
| -------------------------------------- | ------------------------------------------------------------------------------------------ |
|
|
158
200
|
| `sso_session` / `sso_start_url` | `aws sso login --profile <name>` |
|
|
@@ -182,11 +224,111 @@ npx watch-tail --floci # throwaway credentials are supplied automati
|
|
|
182
224
|
sets `AWS_ENDPOINT_URL` - as this repository's `pnpm floci:up` writes for the dev server - the CLI
|
|
183
225
|
ignores it, says so, and runs against real AWS; your own exported variables always win over that file.
|
|
184
226
|
|
|
227
|
+
## Local history
|
|
228
|
+
|
|
229
|
+
While a stream is open, every event that arrives is appended to a local DuckDB file. Nothing else
|
|
230
|
+
changes: the live tail, the historic scan and the UI work exactly as before. What the archive adds is
|
|
231
|
+
a **second source** you can read later.
|
|
232
|
+
|
|
233
|
+
In the UI, a **Local archive** toggle appears next to the mode controls whenever the archive is
|
|
234
|
+
available. Choosing it:
|
|
235
|
+
|
|
236
|
+
- lists the log groups the archive holds for the current region, with how many events are stored
|
|
237
|
+
locally,
|
|
238
|
+
- replays a window from the file instead of calling CloudWatch - instant, and **no credentials
|
|
239
|
+
needed**, so it works with an expired SSO session, offline, or on a machine that never had AWS
|
|
240
|
+
access,
|
|
241
|
+
- keeps the same range controls (`15m` … `5d`, or a custom `from`/`to`), and puts the source in the URL
|
|
242
|
+
so `…&source=archive&range=24h` is a shareable view of the archive.
|
|
243
|
+
|
|
244
|
+
```bash
|
|
245
|
+
watch-tail # archive on, file in your app data directory
|
|
246
|
+
watch-tail --db ./logs.duckdb # keep the archive next to the project instead
|
|
247
|
+
watch-tail --no-archive # do not archive anything
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
The default file is `archive.duckdb` inside your platform's data directory:
|
|
251
|
+
|
|
252
|
+
| Platform | Path |
|
|
253
|
+
| -------- | ------------------------------------------------------------ |
|
|
254
|
+
| macOS | `~/Library/Application Support/watch-tail/archive.duckdb` |
|
|
255
|
+
| Linux | `${XDG_DATA_HOME:-~/.local/share}/watch-tail/archive.duckdb` |
|
|
256
|
+
| Windows | `%LOCALAPPDATA%\watch-tail\archive.duckdb` |
|
|
257
|
+
|
|
258
|
+
`WATCH_STREAM_ARCHIVE=off` turns the archive off for the server, and `WATCH_STREAM_ARCHIVE_DB` sets the
|
|
259
|
+
file, for people who drive the server directly.
|
|
260
|
+
|
|
261
|
+
Because it is a DuckDB database, you can point any DuckDB client at the same file - with the app
|
|
262
|
+
stopped, since DuckDB allows one writer:
|
|
263
|
+
|
|
264
|
+
```bash
|
|
265
|
+
duckdb ~/Library/Application\ Support/watch-tail/archive.duckdb
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
```sql
|
|
269
|
+
SELECT log_group, count(*) AS events, max(timestamp_ms) AS newest
|
|
270
|
+
FROM log_events
|
|
271
|
+
GROUP BY log_group
|
|
272
|
+
ORDER BY events DESC;
|
|
273
|
+
|
|
274
|
+
SELECT to_timestamp(timestamp_ms / 1000) AS at, message
|
|
275
|
+
FROM log_events
|
|
276
|
+
WHERE log_group = '/aws/lambda/checkout' AND message ILIKE '%timeout%'
|
|
277
|
+
ORDER BY timestamp_ms;
|
|
278
|
+
|
|
279
|
+
-- how many errors per group, ignoring levels that were never detected
|
|
280
|
+
SELECT log_group, level, count(*) AS events
|
|
281
|
+
FROM log_events
|
|
282
|
+
WHERE level = 'error'
|
|
283
|
+
GROUP BY log_group, level
|
|
284
|
+
ORDER BY events DESC;
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
Three things worth knowing:
|
|
288
|
+
|
|
289
|
+
- **DuckDB is an optional dependency.** It is a native module (roughly 114 MB installed, prebuilt for
|
|
290
|
+
every supported platform - no compiler needed). If it cannot be installed or loaded, `watch-tail`
|
|
291
|
+
runs exactly as it did before, without history, and says so in the startup banner. To skip it
|
|
292
|
+
deliberately: `npm install -g watch-tail --no-optional`.
|
|
293
|
+
- **One process owns the file.** DuckDB takes an exclusive lock, so a second `watch-tail` on the same
|
|
294
|
+
archive runs without history while the first is up; `--db` is the way to keep two instances
|
|
295
|
+
separate.
|
|
296
|
+
- Levels are detected, not received: CloudWatch Logs does not report a severity, so `error`/`warn`/
|
|
297
|
+
`info`/`debug` come from the line itself, and `NULL` means nothing could be read from it.
|
|
298
|
+
- **The archive is as wide as what you watched.** Events are recorded as they stream, so history covers
|
|
299
|
+
the windows you have actually visited. It is also local, unencrypted and outside your AWS account -
|
|
300
|
+
treat the file like the logs themselves.
|
|
301
|
+
|
|
302
|
+
## The chart
|
|
303
|
+
|
|
304
|
+
In **Historic** mode (and for the local archive) a scatter chart sits above the log view: X is time, Y
|
|
305
|
+
is the number of events in a bucket, and each level is its own colour. Drag across it to brush a
|
|
306
|
+
range - the log view, the window chip and the URL all follow, so a brush is a shareable view of the
|
|
307
|
+
spike you just found. Click the chart to clear the brush, or press **Reset zoom** to go back to the
|
|
308
|
+
preset window. The level chips filter the chart and the log view together.
|
|
309
|
+
|
|
310
|
+
A drag only counts as a zoom when it is a real drag: a click, or a pointer that slips a couple of
|
|
311
|
+
pixels, clears the brush instead of zooming into a sliver of a window, and the view is re-scoped when
|
|
312
|
+
you release rather than while you drag - so the stream is not restarted mid-gesture.
|
|
313
|
+
|
|
314
|
+
With several groups selected, the counts cover all of them and the chart's legend splits the totals by
|
|
315
|
+
level. The archive answers the chart with one SQL query over the whole window; a CloudWatch view has no
|
|
316
|
+
aggregate API, so there the chart counts the events already in the view.
|
|
317
|
+
|
|
318
|
+
The panel has a header you can click to collapse it, and it remembers that choice: collapsed, it is
|
|
319
|
+
just one line of totals and per-level counts, and the space goes back to the log view.
|
|
320
|
+
|
|
321
|
+
The chart is drawn with [layerchart](https://www.layerchart.com), which is **loaded on demand**: the
|
|
322
|
+
charting code is fetched in the browser only once the panel is open, so it never delays the log view's
|
|
323
|
+
first paint. Measured on the production build, an open panel pulls about 235 KiB of chart code after
|
|
324
|
+
the page has started, and a collapsed one pulls none at all.
|
|
325
|
+
|
|
185
326
|
## Development
|
|
186
327
|
|
|
187
328
|
```bash
|
|
188
329
|
pnpm install
|
|
189
330
|
pnpm dev # SvelteKit dev server on http://localhost:5173
|
|
331
|
+
# (its history archive lives in .watch-tail/)
|
|
190
332
|
pnpm seed # fixtures in the local emulator (--watch for live traffic)
|
|
191
333
|
pnpm dev:aws --profile my-profile # dev server against a real profile
|
|
192
334
|
pnpm build # adapter-node build + the CLI in dist/
|
|
@@ -234,6 +376,13 @@ SvelteKit server routes (Node)
|
|
|
234
376
|
v
|
|
235
377
|
CloudWatch Logs API -- ambient AWS credentials
|
|
236
378
|
or floci on http://localhost:4566
|
|
379
|
+
|
|
380
|
+
Everything streamed is also appended to a local archive,
|
|
381
|
+
which the UI can read back without AWS:
|
|
382
|
+
|
|
383
|
+
SvelteKit server ---- @duckdb/node-api ----> archive.duckdb (DuckDB file)
|
|
384
|
+
^
|
|
385
|
+
Browser -- GET /api/stream?source=archive -+
|
|
237
386
|
```
|
|
238
387
|
|
|
239
388
|
The CLI (`src/cli/`) boots the packaged adapter-node server, waits for `/api/health` and opens a
|
|
@@ -249,6 +398,11 @@ browser. Full details, including the HTTP and SSE contract, are in [ARCHITECTURE
|
|
|
249
398
|
Binding elsewhere prints a warning - only do it on a trusted network.
|
|
250
399
|
- floci omits `logStreamName` in `FilterLogEvents`, so the stream column stays empty locally; real AWS
|
|
251
400
|
fills it.
|
|
401
|
+
- The archive is written from the same process that serves the UI, so it only grows while something is
|
|
402
|
+
streaming. A window you never opened is not in it, and events dropped by the 10 000-event cap of a
|
|
403
|
+
historic scan are not archived either.
|
|
404
|
+
- Archived events are de-duplicated by CloudWatch event id (or by a hash of timestamp, stream and
|
|
405
|
+
message when an emulator omits ids), so re-scanning the same window does not duplicate rows.
|
|
252
406
|
|
|
253
407
|
## License
|
|
254
408
|
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
|
|
2
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-900:oklch(37.8% .077 168.94);--color-emerald-950:oklch(26.2% .051 172.552);--color-teal-300:oklch(85.5% .138 181.071);--color-teal-400:oklch(77.7% .152 181.912);--color-teal-700:oklch(51.1% .096 186.391);--color-teal-900:oklch(38.6% .063 188.416);--color-teal-950:oklch(27.7% .046 192.524);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--color-sky-800:oklch(44.3% .11 240.79);--color-sky-900:oklch(39.1% .09 240.876);--color-sky-950:oklch(29.3% .066 243.157);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-900:oklch(38% .189 293.745);--color-violet-950:oklch(28.3% .141 291.089);--color-fuchsia-300:oklch(83.3% .145 321.434);--color-neutral-100:oklch(97% 0 none);--color-neutral-200:oklch(92.2% 0 none);--color-neutral-300:oklch(87% 0 none);--color-neutral-400:oklch(70.8% 0 none);--color-neutral-500:oklch(55.6% 0 none);--color-neutral-600:oklch(43.9% 0 none);--color-neutral-700:oklch(37.1% 0 none);--color-neutral-800:oklch(26.9% 0 none);--color-neutral-900:oklch(20.5% 0 none);--color-neutral-950:oklch(14.5% 0 none);--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wider:.05em;--radius-md:.375rem;--radius-lg:.5rem;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-y-0{inset-block:0}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.ml-1{margin-left:var(--spacing)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.h-2{height:calc(var(--spacing) * 2)}.h-5{height:calc(var(--spacing) * 5)}.h-dvh{height:100dvh}.min-h-0{min-height:0}.min-h-\[30rem\]{min-height:30rem}.min-h-full{min-height:100%}.w-2{width:calc(var(--spacing) * 2)}.w-40{width:calc(var(--spacing) * 40)}.w-\[7\.5rem\]{width:7.5rem}.w-\[9rem\]{width:9rem}.w-full{width:100%}.w-max{width:max-content}.max-w-\[22rem\]{max-width:22rem}.min-w-0{min-width:0}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.animate-pulse{animation:var(--animate-pulse)}.cursor-col-resize{cursor:col-resize}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-amber-700{border-color:var(--color-amber-700)}.border-amber-800{border-color:var(--color-amber-800)}.border-amber-900{border-color:var(--color-amber-900)}.border-emerald-900{border-color:var(--color-emerald-900)}.border-neutral-700{border-color:var(--color-neutral-700)}.border-neutral-800{border-color:var(--color-neutral-800)}.border-neutral-900{border-color:var(--color-neutral-900)}.border-red-800{border-color:var(--color-red-800)}.border-red-900{border-color:var(--color-red-900)}.border-sky-700{border-color:var(--color-sky-700)}.border-sky-800{border-color:var(--color-sky-800)}.border-sky-900{border-color:var(--color-sky-900)}.border-teal-700{border-color:var(--color-teal-700)}.border-teal-900{border-color:var(--color-teal-900)}.border-transparent{border-color:#0000}.border-violet-900{border-color:var(--color-violet-900)}.bg-amber-400{background-color:var(--color-amber-400)}.bg-amber-950\/40{background-color:#46190166}@supports (color:color-mix(in lab, red, red)){.bg-amber-950\/40{background-color:color-mix(in oklab, var(--color-amber-950) 40%, transparent)}}.bg-amber-950\/50{background-color:#46190180}@supports (color:color-mix(in lab, red, red)){.bg-amber-950\/50{background-color:color-mix(in oklab, var(--color-amber-950) 50%, transparent)}}.bg-amber-950\/70{background-color:#461901b3}@supports (color:color-mix(in lab, red, red)){.bg-amber-950\/70{background-color:color-mix(in oklab, var(--color-amber-950) 70%, transparent)}}.bg-emerald-400{background-color:var(--color-emerald-400)}.bg-emerald-950\/70{background-color:#002c22b3}@supports (color:color-mix(in lab, red, red)){.bg-emerald-950\/70{background-color:color-mix(in oklab, var(--color-emerald-950) 70%, transparent)}}.bg-neutral-500{background-color:var(--color-neutral-500)}.bg-neutral-800{background-color:var(--color-neutral-800)}.bg-neutral-800\/60{background-color:#26262699}@supports (color:color-mix(in lab, red, red)){.bg-neutral-800\/60{background-color:color-mix(in oklab, var(--color-neutral-800) 60%, transparent)}}.bg-neutral-800\/80{background-color:#262626cc}@supports (color:color-mix(in lab, red, red)){.bg-neutral-800\/80{background-color:color-mix(in oklab, var(--color-neutral-800) 80%, transparent)}}.bg-neutral-900{background-color:var(--color-neutral-900)}.bg-neutral-900\/40{background-color:#17171766}@supports (color:color-mix(in lab, red, red)){.bg-neutral-900\/40{background-color:color-mix(in oklab, var(--color-neutral-900) 40%, transparent)}}.bg-neutral-900\/60{background-color:#17171799}@supports (color:color-mix(in lab, red, red)){.bg-neutral-900\/60{background-color:color-mix(in oklab, var(--color-neutral-900) 60%, transparent)}}.bg-neutral-900\/70{background-color:#171717b3}@supports (color:color-mix(in lab, red, red)){.bg-neutral-900\/70{background-color:color-mix(in oklab, var(--color-neutral-900) 70%, transparent)}}.bg-neutral-950{background-color:var(--color-neutral-950)}.bg-neutral-950\/60{background-color:#0a0a0a99}@supports (color:color-mix(in lab, red, red)){.bg-neutral-950\/60{background-color:color-mix(in oklab, var(--color-neutral-950) 60%, transparent)}}.bg-neutral-950\/90{background-color:#0a0a0ae6}@supports (color:color-mix(in lab, red, red)){.bg-neutral-950\/90{background-color:color-mix(in oklab, var(--color-neutral-950) 90%, transparent)}}.bg-red-400{background-color:var(--color-red-400)}.bg-red-950\/50{background-color:#46080980}@supports (color:color-mix(in lab, red, red)){.bg-red-950\/50{background-color:color-mix(in oklab, var(--color-red-950) 50%, transparent)}}.bg-red-950\/70{background-color:#460809b3}@supports (color:color-mix(in lab, red, red)){.bg-red-950\/70{background-color:color-mix(in oklab, var(--color-red-950) 70%, transparent)}}.bg-sky-400{background-color:var(--color-sky-400)}.bg-sky-950\/50{background-color:#052f4a80}@supports (color:color-mix(in lab, red, red)){.bg-sky-950\/50{background-color:color-mix(in oklab, var(--color-sky-950) 50%, transparent)}}.bg-sky-950\/60{background-color:#052f4a99}@supports (color:color-mix(in lab, red, red)){.bg-sky-950\/60{background-color:color-mix(in oklab, var(--color-sky-950) 60%, transparent)}}.bg-sky-950\/70{background-color:#052f4ab3}@supports (color:color-mix(in lab, red, red)){.bg-sky-950\/70{background-color:color-mix(in oklab, var(--color-sky-950) 70%, transparent)}}.bg-teal-950\/50{background-color:#022f2e80}@supports (color:color-mix(in lab, red, red)){.bg-teal-950\/50{background-color:color-mix(in oklab, var(--color-teal-950) 50%, transparent)}}.bg-teal-950\/60{background-color:#022f2e99}@supports (color:color-mix(in lab, red, red)){.bg-teal-950\/60{background-color:color-mix(in oklab, var(--color-teal-950) 60%, transparent)}}.bg-transparent{background-color:#0000}.bg-violet-950\/60{background-color:#2f0d6899}@supports (color:color-mix(in lab, red, red)){.bg-violet-950\/60{background-color:color-mix(in oklab, var(--color-violet-950) 60%, transparent)}}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.pr-1{padding-right:var(--spacing)}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.625rem\]{font-size:.625rem}.text-\[0\.6875rem\]{font-size:.6875rem}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-200{color:var(--color-amber-200)}.text-amber-300{color:var(--color-amber-300)}.text-amber-300\/80{color:#ffd236cc}@supports (color:color-mix(in lab, red, red)){.text-amber-300\/80{color:color-mix(in oklab, var(--color-amber-300) 80%, transparent)}}.text-amber-400\/80{color:#fcbb00cc}@supports (color:color-mix(in lab, red, red)){.text-amber-400\/80{color:color-mix(in oklab, var(--color-amber-400) 80%, transparent)}}.text-emerald-300{color:var(--color-emerald-300)}.text-emerald-400\/80{color:#00d294cc}@supports (color:color-mix(in lab, red, red)){.text-emerald-400\/80{color:color-mix(in oklab, var(--color-emerald-400) 80%, transparent)}}.text-fuchsia-300{color:var(--color-fuchsia-300)}.text-neutral-100{color:var(--color-neutral-100)}.text-neutral-200{color:var(--color-neutral-200)}.text-neutral-300{color:var(--color-neutral-300)}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-600{color:var(--color-neutral-600)}.text-red-300{color:var(--color-red-300)}.text-red-400{color:var(--color-red-400)}.text-sky-200{color:var(--color-sky-200)}.text-sky-300{color:var(--color-sky-300)}.text-sky-400{color:var(--color-sky-400)}.text-sky-400\/80{color:#00bcfecc}@supports (color:color-mix(in lab, red, red)){.text-sky-400\/80{color:color-mix(in oklab, var(--color-sky-400) 80%, transparent)}}.text-teal-300{color:var(--color-teal-300)}.text-teal-300\/80{color:#46ecd5cc}@supports (color:color-mix(in lab, red, red)){.text-teal-300\/80{color:color-mix(in oklab, var(--color-teal-300) 80%, transparent)}}.text-teal-400\/80{color:#00d3bdcc}@supports (color:color-mix(in lab, red, red)){.text-teal-400\/80{color:color-mix(in oklab, var(--color-teal-400) 80%, transparent)}}.text-violet-300{color:var(--color-violet-300)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-sky-500{accent-color:var(--color-sky-500)}.opacity-70{opacity:.7}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.selection\:bg-sky-900\/60 ::selection{background-color:#024a7099}@supports (color:color-mix(in lab, red, red)){.selection\:bg-sky-900\/60 ::selection{background-color:color-mix(in oklab, var(--color-sky-900) 60%, transparent)}}.selection\:bg-sky-900\/60::selection{background-color:#024a7099}@supports (color:color-mix(in lab, red, red)){.selection\:bg-sky-900\/60::selection{background-color:color-mix(in oklab, var(--color-sky-900) 60%, transparent)}}.placeholder\:text-neutral-600::placeholder{color:var(--color-neutral-600)}@media (hover:hover){.hover\:border-neutral-700:hover{border-color:var(--color-neutral-700)}.hover\:border-neutral-800:hover{border-color:var(--color-neutral-800)}.hover\:border-sky-600:hover{border-color:var(--color-sky-600)}.hover\:bg-neutral-900\/60:hover{background-color:#17171799}@supports (color:color-mix(in lab, red, red)){.hover\:bg-neutral-900\/60:hover{background-color:color-mix(in oklab, var(--color-neutral-900) 60%, transparent)}}.hover\:bg-sky-500\/30:hover{background-color:#00a5ef4d}@supports (color:color-mix(in lab, red, red)){.hover\:bg-sky-500\/30:hover{background-color:color-mix(in oklab, var(--color-sky-500) 30%, transparent)}}.hover\:text-neutral-100:hover{color:var(--color-neutral-100)}.hover\:text-neutral-200:hover{color:var(--color-neutral-200)}}.focus\:border-sky-600:focus{border-color:var(--color-sky-600)}.focus\:bg-sky-500\/50:focus{background-color:#00a5ef80}@supports (color:color-mix(in lab, red, red)){.focus\:bg-sky-500\/50:focus{background-color:color-mix(in oklab, var(--color-sky-500) 50%, transparent)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (width>=40rem){.sm\:inline{display:inline}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}}@media (width>=64rem){.lg\:block{display:block}.lg\:w-2{width:calc(var(--spacing) * 2)}.lg\:shrink-0{flex-shrink:0}.lg\:flex-row{flex-direction:row}}@media (width>=80rem){.xl\:inline{display:inline}}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer base{:where(.lc-brush-context.svelte-13b5ode){touch-action:none;position:absolute}:where(.lc-brush-container.svelte-13b5ode),:where(.lc-brush-panel.svelte-13b5ode){position:absolute}:where(.lc-brush-range.svelte-13b5ode){cursor:move;-webkit-user-select:none;user-select:none;z-index:10;background:color-mix(in oklab, var(--color-surface-content,currentColor) 10%, transparent);position:absolute}:where(.lc-brush-handle.svelte-13b5ode){-webkit-user-select:none;user-select:none;z-index:10;position:absolute}:where(.lc-brush-handle.svelte-13b5ode)[data-position=top],:where(.lc-brush-handle.svelte-13b5ode)[data-position=bottom]{cursor:ns-resize}:where(.lc-brush-handle.svelte-13b5ode)[data-position=left],:where(.lc-brush-handle.svelte-13b5ode)[data-position=right]{cursor:ew-resize}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer components{:where(.lc-annotation-line){--stroke-color:var(--color-surface-content,currentColor)}:where(.lc-annotation-line-label){pointer-events:none;font-size:12px}:where(.lc-annotation-point-label){pointer-events:none}:where(.lc-annotation-point-ring){--fill-color:none;--stroke-color:var(--color-surface-content,currentColor)}:where(.lc-annotation-point-link){--stroke-color:var(--color-surface-content,currentColor);fill:none;pointer-events:none}:where(.lc-annotation-range-label){pointer-events:none;font-size:12px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer base{:where(.lc-layout-svg .lc-circle,svg.lc-circle):not([fill]){fill:var(--fill-color)}:where(.lc-layout-svg .lc-circle,svg.lc-circle):not([stroke]){stroke:var(--stroke-color)}:where(.lc-circle){--fill-color:var(--color-surface-content,currentColor);--stroke-color:initial}:where(.lc-layout-html .lc-circle){box-sizing:border-box}:where(.lc-layout-html .lc-circle):not([background]){background:var(--fill-color)}:where(.lc-layout-html .lc-circle):not([border-color]){border-color:var(--stroke-color)}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
�`d�Oh�>������e���}�}� �Bz~�j�m� '�����B�.$BJ�t�"ѥ���(a����c9��R3D���<�qްI���Y�els�Ǭ����Ay�OYY�$�:(h���N�`1'�u�>�Pʴ���&O�$a�����9�UHde?��
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer components{:where(.lc-tooltip-separator.svelte-168nzpv){background-color:color-mix(in oklab, var(--color-surface-content,currentColor) 20%, transparent);border-radius:4px;grid-column:1/-1;height:1px;margin-top:4px;margin-bottom:4px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer base{:where(.lc-layout-svg .lc-rect,svg.lc-rect):not([fill]){fill:var(--fill-color)}:where(.lc-layout-svg .lc-rect,svg.lc-rect):not([stroke]){stroke:var(--stroke-color)}:where(.lc-rect){--fill-color:var(--color-surface-content,currentColor);--stroke-color:initial}:where(.lc-layout-html .lc-rect){box-sizing:border-box}:where(.lc-layout-html .lc-rect):not([background]){background:var(--fill-color)}:where(.lc-layout-html .lc-rect):not([border-color]){border-color:var(--stroke-color)}:where(.lc-text-svg){paint-order:stroke;overflow:visible}:where(.lc-layout-svg .lc-text,svg.lc-text):not([fill]){color:var(--fill-color);fill:currentColor}:where(.lc-layout-svg .lc-text,svg.lc-text):not([stroke]){stroke:var(--stroke-color)}:where(.lc-text){--fill-color:var(--color-surface-content,currentColor);--stroke-color:initial}:where(.lc-layout-html .lc-text){text-box:trim-both cap alphabetic}:where(.lc-layout-html .lc-text):not([background-color]){color:var(--fill-color)}:where(.lc-layout-html .lc-text):not([border-color]){border-color:var(--stroke-color)}:where(.lc-layout-svg .lc-line,svg.lc-line):not([stroke]){stroke:var(--stroke-color)}:where(.lc-line){--stroke-color:var(--color-surface-content,currentColor)}:where(.lc-layout-html .lc-line):not([background-color]){background-color:var(--stroke-color)}:where(.lc-layout-svg.svelte-1gsduri){position:absolute;inset:0;overflow:visible}:where(.lc-layout-svg.svelte-1gsduri).disablePointerEvents{pointer-events:none}:where(.lc-layout-svg.svelte-1gsduri).clip{overflow:hidden}:where(.lc-layout-canvas.svelte-t1ysbs){position:absolute;inset:0}:where(.lc-layout-canvas.svelte-t1ysbs).disablePointerEvents{pointer-events:none}:where(.lc-hit-canvas.svelte-t1ysbs){pointer-events:none;image-rendering:pixelated;opacity:0;position:absolute;inset:0}:where(.lc-hit-canvas.svelte-t1ysbs).debug{border:1px solid var(--color-danger,red);opacity:1}:where(.lc-layout-html.svelte-93izsv){position:absolute;inset:0}:where(.lc-layout-html.svelte-93izsv).disablePointerEvents{pointer-events:none}:where(.lc-layout-html.svelte-93izsv).clip{overflow:hidden}}@layer components{:where(.lc-tooltip-root.svelte-1p9vmt8){z-index:50;-webkit-user-select:none;user-select:none;position:absolute}:where(.lc-tooltip-root.svelte-1p9vmt8).portaled{position:fixed}:where(.lc-tooltip-root.svelte-1p9vmt8).disablePointerEvents{pointer-events:none}:where(.lc-tooltip-container.svelte-1p9vmt8):not([data-variant=none]){-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:.25rem;height:100%;padding:4px 8px;font-size:.875rem;line-height:1.25rem;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}:where(.lc-tooltip-container.svelte-1p9vmt8)[data-variant=default]{color:var(--color-surface-content,currentColor);background-color:color-mix(in oklab, var(--lightningcss-light,var(--color-surface-100,white))var(--lightningcss-dark,var(--color-surface-300,black)) 90%, transparent)}:where(.lc-tooltip-container.svelte-1p9vmt8)[data-variant=default] .label{color:color-mix(in oklab, var(--color-surface-content,currentColor) 75%, transparent)}:where(.lc-tooltip-container.svelte-1p9vmt8)[data-variant=invert]{color:var(--color-surface-100,var(--lightningcss-light,#fff)var(--lightningcss-dark,#000));background-color:color-mix(in oklab, var(--color-surface-content,currentColor) 90%, transparent)}:where(.lc-tooltip-container.svelte-1p9vmt8)[data-variant=invert] .label{color:color-mix(in oklab, var(--color-surface-100,var(--lightningcss-light,#fff)var(--lightningcss-dark,#000)) 50%, transparent)}:where(.lc-tooltip-header.svelte-2lbpvv){white-space:nowrap;border-bottom:1px solid color-mix(in oklab, var(--color-surface-content,currentColor) 20%, transparent);align-items:center;gap:8px;margin-bottom:4px;padding-bottom:4px;font-weight:600;display:flex}:where(.lc-tooltip-header-color.svelte-2lbpvv){background-color:var(--color);border-radius:9999px;flex-shrink:0;width:8px;height:8px;display:inline-block}:where(.lc-tooltip-list.svelte-1x98x0g){grid-template-columns:1fr auto;align-items:start;gap:4px 8px;display:grid}:where(.lc-tooltip-item-root.svelte-1vsi2t9){display:contents}:where(.lc-tooltip-item-root[data-highlighted].svelte-1vsi2t9)>:where(.lc-tooltip-item-label.svelte-1vsi2t9,.lc-tooltip-item-value.svelte-1vsi2t9){opacity:1;transition:opacity .15s}:where(.lc-tooltip-item-root[data-highlighted=false].svelte-1vsi2t9)>:where(.lc-tooltip-item-label.svelte-1vsi2t9,.lc-tooltip-item-value.svelte-1vsi2t9){opacity:.1}:where(.lc-tooltip-item-color.svelte-1vsi2t9){background-color:var(--color);border-radius:9999px;width:8px;height:8px;display:inline-block}:where(.lc-tooltip-item-label.svelte-1vsi2t9){white-space:nowrap;align-items:center;gap:8px;display:flex}:where(.lc-tooltip-item-value.svelte-1vsi2t9){font-variant-numeric:tabular-nums}:where(.lc-tooltip-item-value.svelte-1vsi2t9)[data-align=right]{text-align:right}:where(.lc-tooltip-item-value.svelte-1vsi2t9)[data-align=center]{text-align:center}:where(.lc-tooltip-context-container.svelte-1jgq1k7){position:absolute}:where(.lc-tooltip-context.svelte-1jgq1k7){touch-action:var(--touch-action);position:absolute}:where(.lc-tooltip-context.svelte-1jgq1k7).debug{outline:1px solid var(--color-danger);background-color:color-mix(in oklab, var(--color-danger) 10%, transparent)}:where(.lc-tooltip-voronoi-path).debug{stroke:var(--color-danger);fill:color-mix(in oklab, var(--color-danger) 10%, transparent)}:where(.lc-tooltip-rect.svelte-1jgq1k7){fill:#0000}:where(.lc-tooltip-rect.svelte-1jgq1k7).debug{stroke:var(--color-danger);fill:color-mix(in oklab, var(--color-danger) 10%, transparent)}:where(.lc-tooltip-quadtree-rect.svelte-1jgq1k7){fill:#0000}:where(.lc-tooltip-quadtree-rect.svelte-1jgq1k7).debug{stroke:var(--color-danger);fill:color-mix(in oklab, var(--color-danger) 10%, transparent)}:where(.lc-axis-rule),:where(.lc-axis-tick){--stroke-color:color-mix(in oklab, var(--color-surface-content,currentColor) 50%, transparent)}:where(.lc-axis-grid){--stroke-color:color-mix(in oklab, var(--color-surface-content,currentColor) 10%, transparent)}:where(.lc-axis-label,.lc-axis-tick-label){stroke:var(--color-surface-100,var(--lightningcss-light,#fff)var(--lightningcss-dark,#000));stroke-width:2px;font-size:10px;font-weight:300}:where(.lc-rule-x-line,.lc-rule-y-line,.lc-rule-x-radial-line,.lc-rule-y-radial-circle):not([class*=lc-axis],[class*=lc-grid]){--stroke-color:color-mix(in oklab, var(--color-surface-content,currentColor) 50%, transparent)}:where(.lc-rule-y-radial-circle){--fill-color:none}:where(.lc-debug-frame){--fill-color:color-mix(in oklab, var(--color-danger) 10%, transparent)}:where(.lc-grid-x-rule,.lc-grid-x-end-rule,.lc-grid-x-radial-line,.lc-grid-y-rule,.lc-grid-y-end-rule,.lc-grid-y-radial-line){--stroke-color:color-mix(in oklab, var(--color-surface-content,currentColor) 10%, transparent)}:where(.lc-grid-y-radial-circle){--fill-color:none;--stroke-color:color-mix(in oklab, var(--color-surface-content,currentColor) 10%, transparent)}:where(.lc-highlight-area){--fill-color:color-mix(in oklab, var(--color-surface-content,currentColor) 5%, transparent)}:where(.lc-highlight-bar){--fill-color:var(--color-primary,currentColor)}:where(.lc-highlight-line){--stroke-color:color-mix(in oklab, var(--color-surface-content,currentColor) 20%, transparent);stroke-width:2px;stroke-dasharray:2 2;pointer-events:none}:where(.lc-highlight-point){--stroke-color:white;--fill-color:var(--color-primary,currentColor);paint-order:stroke;filter:drop-shadow(var(--drop-shadow-sm,0 1px 2px #00000026))}}.lc-root-container.svelte-15q3ff,.lc-root-container.svelte-15q3ff *{box-sizing:border-box}.lc-root-container.svelte-15q3ff{-webkit-user-select:var(--lc-user-select,none);user-select:var(--lc-user-select,none)}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer components{:where(.lc-labels-text){font-size:var(--labels-font-size,12px);--fill-color:var(--color-surface-content,currentColor);--stroke-color:var(--color-surface-100,var(--lightningcss-light,#fff)var(--lightningcss-dark,#000))}:where(.lc-labels-text)[data-placement=inside],:where(.lc-labels-text)[data-placement=center]{--fill-color:var(--color-surface-100,var(--lightningcss-light,#fff)var(--lightningcss-dark,#000));--stroke-color:var(--color-surface-content,currentColor)}:where(.lc-labels-link){--stroke-color:var(--color-surface-content,currentColor);fill:none;opacity:.4;pointer-events:none}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer components{:where(.lc-legend-container.svelte-1i67e7g){z-index:1;display:inline-block}:where(.lc-legend-container.svelte-1i67e7g)[data-placement]{position:absolute}:where(.lc-legend-container.svelte-1i67e7g)[data-placement=top-left]{top:0;left:0}:where(.lc-legend-container.svelte-1i67e7g)[data-placement=top]{top:0;left:50%;transform:translate(-50%)}:where(.lc-legend-container.svelte-1i67e7g)[data-placement=top-right]{top:0;right:0}:where(.lc-legend-container.svelte-1i67e7g)[data-placement=left]{top:50%;left:0;transform:translateY(-50%)}:where(.lc-legend-container.svelte-1i67e7g)[data-placement=center]{top:50%;left:50%;transform:translate(-50%,-50%)}:where(.lc-legend-container.svelte-1i67e7g)[data-placement=right]{top:50%;right:0;transform:translateY(-50%)}:where(.lc-legend-container.svelte-1i67e7g)[data-placement=bottom-left]{bottom:0;left:0}:where(.lc-legend-container.svelte-1i67e7g)[data-placement=bottom]{bottom:0;left:50%;transform:translate(-50%)}:where(.lc-legend-container.svelte-1i67e7g)[data-placement=bottom-right]{bottom:0;right:0}:where(.lc-legend-title.svelte-1i67e7g){font-size:10px;font-weight:600}:where(.lc-legend-ramp-svg.svelte-1i67e7g){overflow:visible}:where(.lc-legend-tick-text.svelte-1i67e7g){fill:var(--color-surface-content,currentColor);font-size:10px}:where(.lc-legend-tick-line.svelte-1i67e7g){stroke:var(--color-surface-content,currentColor)}:where(.lc-legend-indicator.svelte-1i67e7g){fill:var(--color-surface-content,currentColor)}:where(.lc-legend-swatch-group.svelte-1i67e7g){gap:.25rem 1rem;display:flex}:where(.lc-legend-swatch-group.svelte-1i67e7g)[data-orientation=vertical]{flex-direction:column}:where(.lc-legend-swatch-button.svelte-1i67e7g){white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.25rem;display:flex;overflow:hidden}:where(.lc-legend-swatch.svelte-1i67e7g){border-radius:9999px;flex-shrink:0;width:16px;height:16px}:where(.lc-legend-swatch-label.svelte-1i67e7g){color:var(--color-surface-content,currentColor);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1.33333;overflow:hidden}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer base{:where(.lc-group-div.svelte-1mg96lr){position:absolute}:where(.lc-marker){overflow:visible}:where(.lc-marker)[data-type=arrow],:where(.lc-marker)[data-type=circle-stroke],:where(.lc-marker)[data-type=square-stroke],:where(.lc-marker)[data-type=line]{fill:none;stroke:context-stroke;stroke-linecap:round;stroke-linejoin:round}:where(.lc-marker)[data-type=circle]{stroke:var(--color-surface-100,var(--lightningcss-light,#fff)var(--lightningcss-dark,#000))}:where(.lc-marker)[data-type=triangle],:where(.lc-marker)[data-type=dot],:where(.lc-marker)[data-type=circle],:where(.lc-marker)[data-type=square]{fill:context-stroke}:where(.lc-marker)[data-type=circle-stroke],:where(.lc-marker)[data-type=square-stroke]{fill:var(--color-surface-100,var(--lightningcss-light,#fff)var(--lightningcss-dark,#000))}:where(.lc-path){--fill-color:transparent;--stroke-color:var(--color-surface-content,currentColor)}:where(.lc-layout-svg .lc-path,svg.lc-path):not([fill]){fill:var(--fill-color)}:where(.lc-layout-svg .lc-path,svg.lc-path):not([stroke]){stroke:var(--stroke-color)}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer base{:where(.lc-transform-context.svelte-1ckwaxu){height:100%}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer components{:where(.lc-voronoi-path,.lc-voronoi-geo-path){fill:#0000;stroke:#0000}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{u as e}from"./DslUcEd-.js";import{l as t}from"./Dt_Zd6U2.js";var n=class extends Map{constructor(e,t=s){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),e!=null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(i(this,e))}has(e){return super.has(i(this,e))}set(e,t){return super.set(a(this,e),t)}delete(e){return super.delete(o(this,e))}},r=class extends Set{constructor(e,t=s){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),e!=null)for(let t of e)this.add(t)}has(e){return super.has(i(this,e))}add(e){return super.add(a(this,e))}delete(e){return super.delete(o(this,e))}};function i({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):n}function a({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function o({_intern:e,_key:t},n){let r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function s(e){return typeof e==`object`&&e?e.valueOf():e}var c=Symbol(`implicit`);function l(){var t=new n,r=[],i=[],a=c;function o(e){let n=t.get(e);if(n===void 0){if(a!==c)return a;t.set(e,n=r.push(e)-1)}return i[n%i.length]}return o.domain=function(e){if(!arguments.length)return r.slice();r=[],t=new n;for(let n of e)t.has(n)||t.set(n,r.push(n)-1);return o},o.range=function(e){return arguments.length?(i=Array.from(e),o):i.slice()},o.unknown=function(e){return arguments.length?(a=e,o):a},o.copy=function(){return l(r,i).unknown(a)},e.apply(o,arguments),o}function u(){var n=l().unknown(void 0),r=n.domain,i=n.range,a=0,o=1,s,c,d=!1,f=0,p=0,m=.5;delete n.unknown;function h(){var e=r().length,n=o<a,l=n?o:a,u=n?a:o;s=(u-l)/Math.max(1,e-f+p*2),d&&(s=Math.floor(s)),l+=(u-l-s*(e-f))*m,c=s*(1-f),d&&(l=Math.round(l),c=Math.round(c));var h=t(e).map(function(e){return l+s*e});return i(n?h.reverse():h)}return n.domain=function(e){return arguments.length?(r(e),h()):r()},n.range=function(e){return arguments.length?([a,o]=e,a=+a,o=+o,h()):[a,o]},n.rangeRound=function(e){return[a,o]=e,a=+a,o=+o,d=!0,h()},n.bandwidth=function(){return c},n.step=function(){return s},n.round=function(e){return arguments.length?(d=!!e,h()):d},n.padding=function(e){return arguments.length?(f=Math.min(1,p=+e),h()):f},n.paddingInner=function(e){return arguments.length?(f=Math.min(1,e),h()):f},n.paddingOuter=function(e){return arguments.length?(p=+e,h()):p},n.align=function(e){return arguments.length?(m=Math.max(0,Math.min(1,e)),h()):m},n.copy=function(){return u(r(),[a,o]).round(d).paddingInner(f).paddingOuter(p).align(m)},e.apply(h(),arguments)}export{r as i,l as n,n as r,u as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{J as e,ht as t}from"./pqiPC7Y8.js";import{t as n}from"./Db0q5_zr.js";import{t as r}from"./CCch3uox.js";import{t as i}from"./Dt_Zd6U2.js";import{i as a}from"./Di37PX72.js";function o(e){let t=e?.all??0,n=e?.x??t,r=e?.y??t,i=e?.left??n,a=e?.right??n,o=e?.top??r;return{left:i,right:a,bottom:e?.bottom??r,top:o}}function s(s,l){let u=t(()=>l?.());return t=>{let l=o(e(u)?.insets),d=s.xScale.domain(),f=s.yScale.domain(),p=i(e(u)?.x??s.x),m=i(e(u)?.y??s.y),h=i(e(u)?.x1??s.x1),g=i(e(u)?.y1??s.y1),_=(e(u)?.x1??s.config.x1)!=null,v=(e(u)?.y1??s.config.y1)!=null;if(a(s.yScale)){let e=c(s.yScale(m(t))??0)+(v&&s.y1Scale?s.y1Scale(g(t)):0)+l.top,i=Math.max(0,s.yScale.bandwidth?(v&&s.y1Scale?s.y1Scale.bandwidth?.()??0:s.yScale.bandwidth())-l.bottom-l.top:0),a=p(t),o=0,u=0;return Array.isArray(a)?(o=r(a),u=n(a)):a==null?(o=0,u=0):a>0?(o=n([0,d[0]]),u=a):(o=a,u=r([0,d[1]])),{x:s.xScale(o)+l.left,y:e,width:Math.max(0,s.xScale(u)-s.xScale(o)-l.left-l.right),height:i}}if(a(s.xScale)){let e=c(s.xScale(p(t)))+(_&&s.x1Scale?s.x1Scale(h(t)):0)+l.left,i=Math.max(0,s.xScale.bandwidth?(_&&s.x1Scale?s.x1Scale.bandwidth?.()??0:s.xScale.bandwidth())-l.left-l.right:0),a=m(t),o=0,u=0;return Array.isArray(a)?(o=n(a),u=r(a)):a==null?(o=0,u=0):a>0?(o=a,u=n([0,f[0]])):(o=r([0,f[1]]),u=a),s.yRange[0]<s.yRange[1]&&([o,u]=[u,o]),{x:e,y:s.yScale(o)+l.top,width:i,height:s.yScale(u)-s.yScale(o)-l.bottom-l.top}}if(s.xInterval){let e=p(t),i=s.xInterval.floor(e),a=s.xInterval.offset(i),o=s.xScale(i),c=s.xScale(a),u=Math.min(o,c)+l.left,d=Math.abs(c-o)-l.left-l.right,h=m(t),g=0,_=0;return Array.isArray(h)?(g=n(h),_=r(h)):h==null?(g=0,_=0):h>0?(g=h,_=n([0,f[0]])):(g=r([0,f[1]]),_=h),{x:u,y:s.yScale(g)+l.top,width:d,height:s.yScale(_)-s.yScale(g)-l.bottom-l.top}}if(s.yInterval){let e=m(t),i=s.yInterval.floor(e),a=s.yInterval.offset(i),o=s.yScale(i),c=s.yScale(a),u=Math.min(o,c)+l.top,f=Math.abs(c-o)-l.top-l.bottom,h=p(t),g=0,_=0;Array.isArray(h)?(g=r(h),_=n(h)):h==null?(g=0,_=0):h>0?(g=n([0,d[0]]),_=h):(g=h,_=r([0,d[1]]));let v=s.xScale(g)+l.left;return{x:v,y:u,width:s.xScale(_)-v-l.right,height:f}}}}function c(e){return Array.isArray(e)?e[0]:e}function l(e,t,n){let r=0,i=0,a=0,o=0;typeof e==`number`?r=i=a=o=e:Array.isArray(e)?[r,i,a,o]=e:e&&(r=e.topLeft??0,i=e.topRight??0,a=e.bottomRight??0,o=e.bottomLeft??0);let s=Math.min(t,n)/2;return[Math.min(Math.max(0,r),s),Math.min(Math.max(0,i),s),Math.min(Math.max(0,a),s),Math.min(Math.max(0,o),s)]}function u([e,t,n,r]){return e===t&&t===n&&n===r}export{o as i,s as n,l as r,u as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{At as e,D as t,Dt as n,J as r,O as i,ft as a,mt as o,tt as s}from"./pqiPC7Y8.js";import"./CJFHBop_.js";function c(e){return Object.prototype.toString.call(e)===`[object Date]`}function l(e,t,n,r){if(typeof n==`number`||c(n)){let i=r-n,a=(n-t)/(e.dt||1/60),o=(a+(e.opts.stiffness*i-e.opts.damping*a)*e.inv_mass)*e.dt;return Math.abs(o)<e.opts.precision&&Math.abs(i)<e.opts.precision?r:(e.settled=!1,c(n)?new Date(n.getTime()+o):n+o)}if(Array.isArray(n))return n.map((i,a)=>l(e,t[a],n[a],r[a]));if(typeof n==`object`){let i={};for(let a in n)i[a]=l(e,t[a],n[a],r[a]);return i}throw Error(`Cannot spring ${typeof n} values`)}var u=class c{#e=o(.15);#t=o(.8);#n=o(.01);#r;#i;#a=void 0;#o=0;#s=1;#c=0;#l=null;#u=null;constructor(e,t={}){this.#r=o(e),this.#i=o(e),typeof t.stiffness==`number`&&(this.#e.v=d(t.stiffness,0,1)),typeof t.damping==`number`&&(this.#t.v=d(t.damping,0,1)),typeof t.precision==`number`&&(this.#n.v=t.precision)}static of(e,t){let n=new c(e(),t);return s(()=>{n.set(e())}),n}#d(e){if(a(this.#i,e),this.#r.v??=e,this.#a??=this.#r.v,!this.#l){this.#o=i.now();var n=1e3/(this.#c*60);this.#l??=t(e=>{this.#s=Math.min(this.#s+n,1);let t=Math.min(e-this.#o,1e3/30),r={inv_mass:this.#s,opts:{stiffness:this.#e.v,damping:this.#t.v,precision:this.#n.v},settled:!0,dt:t*60/1e3};var i=l(r,this.#a,this.#r.v,this.#i.v);return this.#a=this.#r.v,this.#o=e,a(this.#r,i),r.settled&&(this.#l=null),!r.settled})}return this.#l.promise}set(t,r){if(this.#u?.reject(Error(`Aborted`)),r?.instant||this.#r.v===void 0)return this.#l?.abort(),this.#l=null,a(this.#r,a(this.#i,t)),this.#a=t,Promise.resolve();r?.preserveMomentum&&(this.#s=0,this.#c=r.preserveMomentum);var i=this.#u=n();return i.promise.catch(e),this.#d(t).then(()=>{i===this.#u&&i.resolve(void 0)}),i.promise}get current(){return r(this.#r)}get damping(){return r(this.#t)}set damping(e){a(this.#t,d(e,0,1))}get precision(){return r(this.#n)}set precision(e){a(this.#n,e)}get stiffness(){return r(this.#e)}set stiffness(e){a(this.#e,d(e,0,1))}get target(){return r(this.#i)}set target(e){this.set(e)}};function d(e,t,n){return Math.max(t,Math.min(n,e))}function f(e){return e}function p(e){return e<.5?4*e*e*e:.5*(2*e-2)**3+1}function m(e){return e*e*e}function h(e,t){if(e===t||e!==e)return()=>e;let n=typeof e;if(n!==typeof t||Array.isArray(e)!==Array.isArray(t))throw Error(`Cannot interpolate values of different type`);if(Array.isArray(e)){let n=t.map((t,n)=>h(e[n],t));return e=>n.map(t=>t(e))}if(n===`object`){if(!e||!t)throw Error(`Object cannot be null`);if(c(e)&&c(t)){let n=e.getTime(),r=t.getTime()-n;return e=>new Date(n+e*r)}let n=Object.keys(t),r={};return n.forEach(n=>{r[n]=h(e[n],t[n])}),e=>{let t={};return n.forEach(n=>{t[n]=r[n](e)}),t}}if(n===`number`){let n=t-e;return t=>e+t*n}return()=>t}var g=class e{#e;#t;#n;#r=null;constructor(e,t={}){this.#e=o(e),this.#t=o(e),this.#n=t}static of(t,n){let r=new e(t(),n);return s(()=>{r.set(t())}),r}set(e,n){a(this.#t,e);let{delay:r=0,duration:o=400,easing:s=f,interpolate:c=h}={...this.#n,...n};if(o===0)return this.#r?.abort(),a(this.#e,e),Promise.resolve();let l=i.now()+r,u,d=!1,p=this.#r;return this.#r=t(t=>{if(t<l)return!0;if(!d){d=!0;let t=this.#e.v;u=c(t,e),typeof o==`function`&&(o=o(t,e)),p?.abort(),p=null}let n=t-l;return n>o?(a(this.#e,e),!1):(a(this.#e,u(s(n/o))),!0)}),this.#r.promise}get current(){return r(this.#e)}get target(){return r(this.#t)}set target(e){this.set(e)}};export{u as i,m as n,p as r,g as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e,t){return[(t=+t)*Math.cos(e-=Math.PI/2),t*Math.sin(e)]}export{e as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
)�function e(e,t){return[(t=+t)*Math.cos(e-=Math.PI/2),t*Math.sin(e)]}export{e as t};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{J as e,ht as t}from"./pqiPC7Y8.js";import{F as n,H as r,L as i,t as a}from"./CJFHBop_.js";import{c as o,n as s}from"./Dt_Zd6U2.js";var c=new r(`LayerContext`);function l(){return c.get()}function u(e){return c.set(e)}function d(e){return typeof e==`string`||typeof e==`function`}function f(...e){return e.some(e=>e!==void 0&&d(e))}function ee(e,t,n,r=0){if(e==null)return r;if(typeof e==`number`)return e;let a;if(typeof e==`string`)a=i(t,e);else if(typeof e==`function`)a=e(t);else return r;if(n){let e=n(a);return typeof e==`number`&&isFinite(e)?e:r}return typeof a==`number`?a:r}function p(e,t){if(e!=null){if(typeof e==`number`)return e;if(typeof e==`string`)return i(t,e);if(typeof e==`function`)return e(t)}}function m(e,t,n,r,i=[0,0]){let a=p(e,n),o=p(t,n);return a==null||o==null?i:r([a,o])??i}function h(e){return e.startsWith(`#`)||e.includes(`(`)}function g(e,t){if(!(typeof e!=`string`||h(e)))return t!=null&&i(t,e)!==void 0?e:void 0}function te(e,t,n,...r){if(e!=null){if(typeof e==`function`){let i=e(t,...r);return i==null?void 0:typeof i==`string`&&h(i)?i:_(i,n)}if(typeof e==`string`){if(h(e))return e;let r=i(t,e);return r===void 0?e:_(r,n)}}}function _(e,t){let n=t?t(e):void 0;return String(n??e)}function v(e,t,...n){if(e!==void 0)return typeof e==`function`?e(t,...n):e}var y=new r(`FacetPanelContext`);function b(){return y.getOr(void 0)??void 0}function x(e){return y.set(e)}function S(){let e=a(),t=b();return n=>s(n??t?.().data??e.data)}var C=new r(`GeoContext`);function ne(){return C.getOr({projection:void 0})}function re(e){return C.set(e)}function w(e,t,n,r,[i,a,o,s]){let c=n-i-a,l=r-a-o,u=n-o-s,d=r-s-i;return[`M${e+i},${t}`,`h${c}`,a>0?`a${a},${a} 0 0 1 ${a},${a}`:``,`v${l}`,o>0?`a${o},${o} 0 0 1 ${-o},${o}`:``,`h${-u}`,s>0?`a${s},${s} 0 0 1 ${-s},${-s}`:``,`v${-d}`,i>0?`a${i},${i} 0 0 1 ${i},${-i}`:``,`z`].filter(Boolean).join(` `)}function ie(e){if(e==null||e===``||e===`none`)return null;let t;return t=typeof e==`number`?[e,e]:Array.isArray(e)?e.filter(e=>Number.isFinite(e)):e.split(/[\s,]+/).filter(e=>e.length>0).map(e=>Number(e.replace(`px`,``))).filter(e=>Number.isFinite(e)),t.length===0||t.every(e=>e===0)?null:(t.length%2==1&&(t=[...t,...t]),t)}function ae(e,t,n=`to right`){let r=[],i=0;for(let n=0;n<e.length;n++){let a=e[n],o=n%2==0?t:`transparent`;r.push(`${o} ${i}px ${i+a}px`),i+=a}return`repeating-linear-gradient(${n}, ${r.join(`, `)})`}function T(e,t=0){let n=e;return n=n.replace(/([MLTQCSAZ])(-?\d*\.?\d+),(-?\d*\.?\d+)/g,(e,n,r,i)=>`${n}${r},${t}`),n=n.replace(/([v])(-?\d*\.?\d+)/g,(e,t,n)=>`${t}0`),n=n.replace(/a(-?\d*\.?\d+),(-?\d*\.?\d+) (\d+) (\d+) (\d+) (-?\d*\.?\d+),(-?\d*\.?\d+)/g,(e,t,n,r,i,a,o,s)=>`a${t},0 ${r} ${i} ${a} ${o},0`),n}var E=(e,t,n,r)=>{if(n===`length`||n===`prototype`||n===`arguments`||n===`caller`)return;let i=Object.getOwnPropertyDescriptor(e,n),a=Object.getOwnPropertyDescriptor(t,n);(D(i,a)||!r)&&Object.defineProperty(e,n,a)},D=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},O=(e,t)=>{let n=Object.getPrototypeOf(t);n!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,n)},k=(e,t)=>`/* Wrapped ${e}*/\n${t}`,A=Object.getOwnPropertyDescriptor(Function.prototype,`toString`),j=Object.getOwnPropertyDescriptor(Function.prototype.toString,`name`),M=(e,t,n)=>{let r=n===``?``:`with ${n.trim()}() `,i=k.bind(null,r,t.toString());Object.defineProperty(i,"name",j);let{writable:a,enumerable:o,configurable:s}=A;Object.defineProperty(e,"toString",{value:i,writable:a,enumerable:o,configurable:s})};function N(e,t,{ignoreNonConfigurable:n=!1}={}){let{name:r}=e;for(let r of Reflect.ownKeys(t))E(e,t,r,n);return O(e,t),M(e,t,r),e}var P=2147483647,F=new WeakMap,I=new WeakMap,L=new WeakMap;function R(e,t){let n=e.get(t);if(n){if(n.maxAge<=Date.now()){e.delete(t);return}return n}}function z(e,{cacheKey:t,cache:n=new Map,maxAge:r}={}){if(r===0)return e;if(typeof r==`number`&&Number.isFinite(r)){if(r>P)throw TypeError(`The \`maxAge\` option cannot exceed ${P}.`);if(r<0)throw TypeError("The `maxAge` option should not be a negative number.")}let i=function(...a){let o=t?t(a):a[0],s=R(n,o);if(s)return s.data;let c=e.apply(this,a),l=typeof r==`function`?r(...a):r;if(l!==void 0&&l!==1/0){if(!Number.isFinite(l))throw TypeError("The `maxAge` function must return a finite number, `0`, or `Infinity`.");if(l<=0)return c;if(l>P)throw TypeError(`The \`maxAge\` function result cannot exceed ${P}.`)}if(n.set(o,{data:c,maxAge:l===void 0||l===1/0?1/0:Date.now()+l}),l!==void 0&&l!==1/0){let e=setTimeout(()=>{n.delete(o),I.get(i)?.delete(e)},l);e.unref?.();let t=I.get(i)??new Set;t.add(e),I.set(i,t)}return c};return N(i,e,{ignoreNonConfigurable:!0}),F.set(i,n),L.set(i,t??(e=>e[0])),i}function B(e){return!e||e===`none`||e===`transparent`||/rgba\(\s*\d+\s*,\s*\d+\s*,\s*\d+\s*,\s*0\s*\)/.test(e)}function V(e){return typeof e==`string`?e.includes(`var(`)||e.toLowerCase()===`currentcolor`:!1}var H=`__layerchart_canvas_styles_id`;function U(e){if(!e)return{};let t={},n=e.split(`;`).filter(e=>e.trim());for(let e of n){let n=e.indexOf(`:`);if(n===-1)continue;let r=e.slice(0,n).trim(),i=e.slice(n+1).trim();if(!r||!i)continue;let a=r.replace(/-([a-z])/g,(e,t)=>t.toUpperCase());t[a]=i}return t}var W=[`fill`,`fillOpacity`,`stroke`,`strokeOpacity`,`strokeWidth`,`strokeDasharray`,`opacity`,`fontWeight`,`fontSize`,`fontFamily`,`textAnchor`,`textAlign`,`paintOrder`];function G(e,{styles:t,classes:n}={}){if(typeof document>`u`){let e={...t};return e.fontSize||=`10px`,e.fontFamily||=`sans-serif`,e}try{let r=document.getElementById(H);return r||(r=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`),r.setAttribute(`id`,H),r.style.display=`none`,e.after(r)),r=r,r.removeAttribute(`style`),r.removeAttribute(`class`),t&&Object.assign(r.style,t),r.style.display=`none`,n&&r.setAttribute(`class`,o(n).split(` `).filter(e=>!e.startsWith(`transition-`)).join(` `)),W.reduce((e,t)=>(e[t]=window.getComputedStyle(r)[t],e),{})}catch(e){return console.error(`Unable to get computed styles`,e),{}}}function K(e,{styles:t,classes:n}={}){return JSON.stringify({canvasId:e.id,styles:t,classes:n})}var q=z(G,{cacheKey:([e,t])=>K(e,t)});function J(e,t,n={},{applyText:r}={}){let i=U(n.style),a={...n.styles,...i},o;if(typeof document>`u`||n.classes==null&&!Object.values(a).some(V))o=a,typeof document>`u`&&!o.stroke&&!o.fill&&(o={...o,stroke:`black`});else{let{constantStyles:t,variableStyles:r}=Object.entries(a).reduce((e,[t,n])=>(V(n)?e.variableStyles[t]=n:(typeof n==`number`||typeof n==`string`)&&(e.constantStyles[t]=n),e),{constantStyles:{},variableStyles:{}});o={...q(e.canvas,{styles:r,classes:n.classes}),...t}}let s=o?.paintOrder===`stroke`?[`stroke`,`fill`]:[`fill`,`stroke`];if(o?.opacity&&(e.globalAlpha*=Number(o?.opacity)),r){let t=o.fontSize||`10px`,n=o.fontFamily||`sans-serif`;e.font=`${o.fontWeight||``} ${t} ${n}`.trim(),o.textAnchor===`middle`?e.textAlign=`center`:o.textAnchor===`end`?e.textAlign=`right`:o.textAnchor===`start`?e.textAlign=`left`:o.textAlign&&(e.textAlign=o.textAlign)}if(o.strokeDasharray&&o.strokeDasharray!==`none`){let t=o.strokeDasharray.split(/[\s,]+/).filter(e=>e.length>0).map(e=>Number(e.replace(`px`,``)));t.length>0&&t.every(e=>!isNaN(e))&&e.setLineDash(t)}for(let r of s)if(r===`fill`){let r=n.styles?.fill&&(typeof CanvasGradient<`u`&&n.styles?.fill instanceof CanvasGradient||typeof CanvasPattern<`u`&&n.styles?.fill instanceof CanvasPattern||!V(n.styles?.fill))?n.styles.fill:o?.fill;if(r&&!B(r)){let n=e.globalAlpha,i=Number(o?.fillOpacity);e.globalAlpha*=isNaN(i)?1:i,e.fillStyle=r,t.fill(e),e.globalAlpha=n}}else if(r===`stroke`){let r=n.styles?.stroke&&(typeof CanvasGradient<`u`&&n.styles?.stroke instanceof CanvasGradient||!V(n.styles?.stroke))?n.styles?.stroke:o?.stroke;if(r&&![`none`].includes(r)){let n=e.globalAlpha,i=Number(o?.strokeOpacity);Number(o?.opacity),!isNaN(i)&&i!==1&&(e.globalAlpha*=i),e.lineWidth=typeof o?.strokeWidth==`string`?Number(o?.strokeWidth?.replace(`px`,``)):o?.strokeWidth??1,e.strokeStyle=r,t.stroke(e),e.globalAlpha=n}}}function Y(e,t,n={}){let r=new Path2D(t??``);J(e,{fill:e=>e.fill(r),stroke:e=>e.stroke(r)},n)}function oe(e,t,n,r={}){t&&J(e,{fill:e=>e.fillText(t.toString(),n.x,n.y),stroke:e=>e.strokeText(t.toString(),n.x,n.y)},r,{applyText:!0})}function X(e,t,n={}){let{x:r,y:i,width:a,height:o,corners:s}=t,c=t.rx??0,l=t.ry??c;if((!s||s.every(e=>e===s[0]))&&c===0&&l===0&&!s){J(e,{fill:e=>e.fillRect(r,i,a,o),stroke:e=>e.strokeRect(r,i,a,o)},n);return}if(typeof e.roundRect==`function`){e.beginPath(),e.roundRect(r,i,a,o,s??[c,l]),J(e,{fill:e=>e.fill(),stroke:e=>e.stroke()},n),e.closePath();return}if(s){Y(e,w(r,i,a,o,s),n);return}let u=Math.min(c,a/2),d=Math.min(l,o/2);Y(e,[`M${r+u},${i}`,`h${a-2*u}`,`a${u},${d} 0 0 1 ${u},${d}`,`v${o-2*d}`,`a${u},${d} 0 0 1 ${-u},${d}`,`h${2*u-a}`,`a${u},${d} 0 0 1 ${-u},${-d}`,`v${2*d-o}`,`a${u},${d} 0 0 1 ${u},${-d}`,`z`].join(` `),n)}function Z(e,t,n={}){e.beginPath(),e.arc(t.cx,t.cy,t.r,0,2*Math.PI),J(e,{fill:e=>{e.fill()},stroke:e=>{e.stroke()}},n),e.closePath()}function se(e,t,n){let r=typeof window<`u`&&window.devicePixelRatio||1;return e.canvas.width=t*r,e.canvas.height=n*r,e.canvas.style.width=`${t}px`,e.canvas.style.height=`${n}px`,e.scale(r,r),{width:e.canvas.width,height:e.canvas.height}}function Q(e,t,n){let r=(typeof window<`u`?window.devicePixelRatio:null)??1,[i,a,o,s]=e.getImageData(t*r,n*r,1,1).data;return{r:i,g:a,b:o,a:s}}function ce(e,t,n,r,i,a){let o=e.createLinearGradient(t,n,r,i);for(let{offset:e,color:t}of a)o.addColorStop(e,t);return o}var le=z(ce,{cacheKey:e=>JSON.stringify(e.slice(1))});function ue(e,t,n,r,i){let a=document.createElement(`canvas`),o=a.getContext(`2d`);e.canvas.after(a);let s=(typeof window<`u`?window.devicePixelRatio:1)||1;a.width=Math.max(1,Math.round(t*s)),a.height=Math.max(1,Math.round(n*s)),o.scale(s,s),i&&(o.fillStyle=i,o.fillRect(0,0,t,n));for(let e of r){if(o.save(),e.type===`circle`)Z(o,{cx:e.cx,cy:e.cy,r:e.r},{styles:{fill:e.fill,opacity:e.opacity}});else if(e.type===`line`)Y(o,e.path,{styles:{stroke:e.stroke,strokeWidth:e.strokeWidth,opacity:e.opacity}});else if(e.type===`rect`){let t=typeof e.rx==`string`?$(e.rx,e.width):e.rx,n=typeof e.ry==`string`?$(e.ry,e.height):e.ry??t;X(o,{x:e.x,y:e.y,width:e.width,height:e.height,rx:t,ry:n},{styles:{fill:e.fill,opacity:e.opacity}})}o.restore()}let c=e.createPattern(a,`repeat`);if(c){let e=t/a.width,r=n/a.height;c.setTransform(new DOMMatrix([e,0,0,r,0,0]))}return e.canvas.parentElement?.removeChild(a),c}var de=z(ue,{cacheKey:e=>JSON.stringify(e.slice(1))});function $(e,t){if(e.endsWith(`%`)){let n=parseFloat(e);return Number.isFinite(n)?t/2*(n/100):0}let n=parseFloat(e);return Number.isFinite(n)?n:0}function fe(r){let i=t(r),a=t(()=>e(i)&&typeof e(i)==`object`?n(e(i)):e(i));return{get current(){return e(a)}}}export{te as C,l as D,v as E,u as O,f as S,m as T,re as _,Q as a,x as b,X as c,z as d,ae as f,ne as g,w as h,q as i,oe as l,ie as m,le as n,Z as o,T as p,de as r,Y as s,fe as t,se as u,b as v,ee as w,g as x,S as y};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as e}from"./Dt_Zd6U2.js";function t(e){return typeof e==`object`&&!!e&&typeof e!=`function`}function n(n,r,...i){return t(n)?{...n,class:e(r,...i,n.class)}:{class:e(r,...i)}}export{n as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){let n=+this._x.call(null,e),r=+this._y.call(null,e);return t(this.cover(n,r),n,r,e)}function t(e,t,n,r){if(isNaN(t)||isNaN(n))return e;var i,a=e._root,o={data:r},s=e._x0,c=e._y0,l=e._x1,u=e._y1,d,f,p,m,h,g,_,v;if(!a)return e._root=o,e;for(;a.length;)if((h=t>=(d=(s+l)/2))?s=d:l=d,(g=n>=(f=(c+u)/2))?c=f:u=f,i=a,!(a=a[_=g<<1|h]))return i[_]=o,e;if(p=+e._x.call(null,a.data),m=+e._y.call(null,a.data),t===p&&n===m)return o.next=a,i?i[_]=o:e._root=o,e;do i=i?i[_]=[,,,,]:e._root=[,,,,],(h=t>=(d=(s+l)/2))?s=d:l=d,(g=n>=(f=(c+u)/2))?c=f:u=f;while((_=g<<1|h)==(v=(m>=f)<<1|p>=d));return i[v]=a,i[_]=o,e}function n(e){var n,r,i=e.length,a,o,s=Array(i),c=Array(i),l=1/0,u=1/0,d=-1/0,f=-1/0;for(r=0;r<i;++r)isNaN(a=+this._x.call(null,n=e[r]))||isNaN(o=+this._y.call(null,n))||(s[r]=a,c[r]=o,a<l&&(l=a),a>d&&(d=a),o<u&&(u=o),o>f&&(f=o));if(l>d||u>f)return this;for(this.cover(l,u).cover(d,f),r=0;r<i;++r)t(this,s[r],c[r],e[r]);return this}function r(e,t){if(isNaN(e=+e)||isNaN(t=+t))return this;var n=this._x0,r=this._y0,i=this._x1,a=this._y1;if(isNaN(n))i=(n=Math.floor(e))+1,a=(r=Math.floor(t))+1;else{for(var o=i-n||1,s=this._root,c,l;n>e||e>=i||r>t||t>=a;)switch(l=(t<r)<<1|e<n,c=[,,,,],c[l]=s,s=c,o*=2,l){case 0:i=n+o,a=r+o;break;case 1:n=i-o,a=r+o;break;case 2:i=n+o,r=a-o;break;case 3:n=i-o,r=a-o}this._root&&this._root.length&&(this._root=s)}return this._x0=n,this._y0=r,this._x1=i,this._y1=a,this}function i(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function a(e){return arguments.length?this.cover(+e[0][0],+e[0][1]).cover(+e[1][0],+e[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function o(e,t,n,r,i){this.node=e,this.x0=t,this.y0=n,this.x1=r,this.y1=i}function s(e,t,n){var r,i=this._x0,a=this._y0,s,c,l,u,d=this._x1,f=this._y1,p=[],m=this._root,h,g;for(m&&p.push(new o(m,i,a,d,f)),n==null?n=1/0:(i=e-n,a=t-n,d=e+n,f=t+n,n*=n);h=p.pop();)if(!(!(m=h.node)||(s=h.x0)>d||(c=h.y0)>f||(l=h.x1)<i||(u=h.y1)<a)){if(m.length){var _=(s+l)/2,v=(c+u)/2;p.push(new o(m[3],_,v,l,u),new o(m[2],s,v,_,u),new o(m[1],_,c,l,v),new o(m[0],s,c,_,v)),(g=(t>=v)<<1|e>=_)&&(h=p[p.length-1],p[p.length-1]=p[p.length-1-g],p[p.length-1-g]=h)}else{var y=e-+this._x.call(null,m.data),b=t-+this._y.call(null,m.data),x=y*y+b*b;if(x<n){var S=Math.sqrt(n=x);i=e-S,a=t-S,d=e+S,f=t+S,r=m.data}}}return r}function c(e){if(isNaN(u=+this._x.call(null,e))||isNaN(d=+this._y.call(null,e)))return this;var t,n=this._root,r,i,a,o=this._x0,s=this._y0,c=this._x1,l=this._y1,u,d,f,p,m,h,g,_;if(!n)return this;if(n.length)for(;;){if((m=u>=(f=(o+c)/2))?o=f:c=f,(h=d>=(p=(s+l)/2))?s=p:l=p,t=n,!(n=n[g=h<<1|m]))return this;if(!n.length)break;(t[g+1&3]||t[g+2&3]||t[g+3&3])&&(r=t,_=g)}for(;n.data!==e;)if(i=n,!(n=n.next))return this;return(a=n.next)&&delete n.next,i?(a?i.next=a:delete i.next,this):t?(a?t[g]=a:delete t[g],(n=t[0]||t[1]||t[2]||t[3])&&n===(t[3]||t[2]||t[1]||t[0])&&!n.length&&(r?r[_]=n:this._root=n),this):(this._root=a,this)}function l(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function u(){return this._root}function d(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function f(e){var t=[],n,r=this._root,i,a,s,c,l;for(r&&t.push(new o(r,this._x0,this._y0,this._x1,this._y1));n=t.pop();)if(!e(r=n.node,a=n.x0,s=n.y0,c=n.x1,l=n.y1)&&r.length){var u=(a+c)/2,d=(s+l)/2;(i=r[3])&&t.push(new o(i,u,d,c,l)),(i=r[2])&&t.push(new o(i,a,d,u,l)),(i=r[1])&&t.push(new o(i,u,s,c,d)),(i=r[0])&&t.push(new o(i,a,s,u,d))}return this}function p(e){var t=[],n=[],r;for(this._root&&t.push(new o(this._root,this._x0,this._y0,this._x1,this._y1));r=t.pop();){var i=r.node;if(i.length){var a,s=r.x0,c=r.y0,l=r.x1,u=r.y1,d=(s+l)/2,f=(c+u)/2;(a=i[0])&&t.push(new o(a,s,c,d,f)),(a=i[1])&&t.push(new o(a,d,c,l,f)),(a=i[2])&&t.push(new o(a,s,f,d,u)),(a=i[3])&&t.push(new o(a,d,f,l,u))}n.push(r)}for(;r=n.pop();)e(r.node,r.x0,r.y0,r.x1,r.y1);return this}function m(e){return e[0]}function h(e){return arguments.length?(this._x=e,this):this._x}function g(e){return e[1]}function _(e){return arguments.length?(this._y=e,this):this._y}function v(e,t,n){var r=new y(t??m,n??g,NaN,NaN,NaN,NaN);return e==null?r:r.addAll(e)}function y(e,t,n,r,i,a){this._x=e,this._y=t,this._x0=n,this._y0=r,this._x1=i,this._y1=a,this._root=void 0}function b(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var x=v.prototype=y.prototype;x.copy=function(){var e=new y(this._x,this._y,this._x0,this._y0,this._x1,this._y1),t=this._root,n,r;if(!t)return e;if(!t.length)return e._root=b(t),e;for(n=[{source:t,target:e._root=[,,,,]}];t=n.pop();)for(var i=0;i<4;++i)(r=t.source[i])&&(r.length?n.push({source:r,target:t.target[i]=[,,,,]}):t.target[i]=b(r));return e},x.add=e,x.addAll=n,x.cover=r,x.data=i,x.extent=a,x.find=s,x.remove=c,x.removeAll=l,x.root=u,x.size=d,x.visit=f,x.visitAfter=p,x.x=h,x.y=_;export{v as quadtree};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{A as e,B as t,Et as n,G as r,I as i,J as a,K as o,M as s,P as c,R as l,V as u,W as d,a as f,b as p,bt as m,ct as h,f as g,ft as _,ht as v,i as y,it as b,j as x,lt as S,m as C,mt as w,nt as T,ot as E,rt as D,s as O,st as k,x as A,y as j,yt as ee,z as te}from"./pqiPC7Y8.js";import"./xihTtKlq.js";import{R as M,i as N,t as ne}from"./CJFHBop_.js";import{c as re,f as P,s as ie,t as ae}from"./DslUcEd-.js";import{t as oe}from"./AUlz4-kZ.js";import{t as F}from"./Db0q5_zr.js";import{t as I}from"./CCch3uox.js";import{c as L,l as R,s as se}from"./Dt_Zd6U2.js";import{t as z}from"./BkXArOra.js";import{t as ce}from"./Dfvzj6n2.js";function le(e=M){if(e===M)return B;if(typeof e!=`function`)throw TypeError(`compare is not a function`);return(t,n)=>{let r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function B(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:+(e>t))}function V(e,t,n=0,r=1/0,i){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(i=i===void 0?B:le(i);r>n;){if(r-n>600){let a=r-n+1,o=t-n+1,s=Math.log(a),c=.5*Math.exp(2*s/3),l=.5*Math.sqrt(s*c*(a-c)/a)*(o-a/2<0?-1:1),u=Math.max(n,Math.floor(t-o*c/a+l)),d=Math.min(r,Math.floor(t+(a-o)*c/a+l));V(e,t,u,d,i)}let a=e[t],o=n,s=r;for(H(e,n,t),i(e[r],a)>0&&H(e,n,r);o<s;){for(H(e,o,s),++o,--s;i(e[o],a)<0;)++o;for(;i(e[s],a)>0;)--s}i(e[n],a)===0?H(e,n,s):(++s,H(e,s,r)),s<=t&&(n=s+1),t<=s&&(r=s-1)}return e}function H(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}function ue(e,t,n){if(e=Float64Array.from(P(e,n)),(r=e.length)&&!isNaN(t=+t)){if(t<=0||r<2)return I(e);if(t>=1)return F(e);var r,i=(r-1)*t,a=Math.floor(i),o=F(V(e,a).subarray(0,a+1));return o+(I(e.subarray(a+1))-o)*(i-a)}}function de(e,t){for(var n=Array(t),r=0;r<t;++r)n[r]=e(r/(t-1));return n}var U=new Set([`$$slots`,`$$events`,`$$legacy`,`interpolator`,`steps`,`height`,`width`,`ref`]),W=u(`<image></image>`);function fe(e,t){m(t,!0);let n=y(t,`steps`,3,10),r=y(t,`height`,3,`20px`),i=y(t,`width`,3,`100%`),o=y(t,`ref`,15),s=f(t,U),c=w(void 0);b(()=>{o(a(c))});let u=w(``);D(()=>{let e=document.createElement(`canvas`);e.width=n(),e.height=1;let r=e.getContext(`2d`);for(let e=0;e<n();++e)t.interpolator&&(r.fillStyle=t.interpolator(e/(n()-1))),r.fillRect(e,0,1,1);_(u,e.toDataURL(),!0)});var d=W();g(d,e=>({href:a(u),preserveAspectRatio:`none`,height:r(),width:i(),...e}),[()=>z(s,`lc-color-ramp`)]),O(d,e=>_(c,e),()=>a(c)),l(e,d),ee()}var pe=new Set([`$$slots`,`$$events`,`$$legacy`,`scale`,`title`,`width`,`height`,`ticks`,`tickFormat`,`tickValues`,`tickFontSize`,`tickLength`,`placement`,`orientation`,`onclick`,`onpointerenter`,`onpointerleave`,`variant`,`selected`,`value`,`classes`,`ref`,`class`,`children`]),me=u(`<rect></rect>`),he=u(`<line></line>`),ge=u(`<text text-anchor="middle"> </text><!>`,1),_e=u(`<path></path>`),ve=u(`<svg><g class="lc-legend-ramp-g"><!></g><g class="lc-legend-tick-group"></g><!></svg>`),ye=t(`<button type="button"><div></div> <div> </div></button>`),be=t(`<div></div>`),xe=t(`<div><div> </div> <!></div>`);function G(t,u){m(u,!0);let d=y(u,`title`,3,``),D=y(u,`width`,3,320),M=y(u,`height`,3,10),P=y(u,`ticks`,19,()=>D()/64),F=y(u,`tickFontSize`,3,10),I=y(u,`tickLength`,3,4),le=y(u,`orientation`,3,`horizontal`),B=y(u,`classes`,19,()=>({})),V=y(u,`ref`,15),H=f(u,pe),U=w(void 0);b(()=>{V(a(U))});let W=ne(),G=v(()=>{if(!W.series)return!1;let e=W.series.series??[];return!W.cGroups&&e.length>0&&!W.series.isDefaultSeries&&e.some(e=>e.color)}),K=v(()=>a(G)?null:u.scale??W.cScale),q=v(()=>{if(!a(G)||!W.series)return null;let e=W.series.series??[];return e.length===0?null:e.filter(e=>e&&e.key).map(e=>{let t=e.label??e.key;return typeof t!=`string`&&(t=String(e.key)),{key:e.key,label:t,color:e.color??`currentColor`}})}),J=v(()=>{if(!a(K))return{xScale:void 0,interpolator:void 0,swatches:void 0,tickLabelOffset:0,tickLine:!0,tickLength:I(),tickFormat:u.tickFormat,tickValues:u.tickValues};if(a(K).interpolate){let e=Math.min(a(K).domain().length,a(K).range().length),t=a(K).copy().rangeRound?.(de(re(0,D()),e));return{xScale:t,interpolator:a(K).copy().domain(de(re(0,1),e)),tickFormat:u.tickFormat??t?.tickFormat?.(),tickLabelOffset:0,tickLine:!0,tickValues:u.tickValues,tickLength:I(),swatches:void 0}}if(a(K).interpolator){let e=Object.assign(a(K).copy().interpolator(ie(0,D())),{range(){return[0,D()]}}),t=a(K).interpolator(),n=u.tickValues;if(!e.ticks&&n===void 0){let e=Math.round(P()+1);n=R(e).map(t=>ue(a(K).domain(),t/(e-1)))}let r=u.tickFormat??e.tickFormat?.();return{interpolator:t,tickValues:n,tickFormat:r,swatches:void 0,tickLabelOffset:0,tickLine:!0,tickLength:I(),xScale:e}}if(a(K).invertExtent){let e=a(K).thresholds?a(K).thresholds():a(K).quantiles?a(K).quantiles():a(K).domain(),t=ae().domain([-1,a(K).range().length-1]).rangeRound([0,D()]);return{xScale:t,swatches:a(K).range().map((e,n)=>({x:t(n-1),y:0,width:t(n)-t(n-1),height:M(),fill:e})),tickValues:R(e.length),tickFormat:t=>{let n=e[t];return u.tickFormat?N(n,u.tickFormat):n},tickLabelOffset:0,tickLine:!0,tickLength:I(),interpolator:void 0}}{let e=oe().domain(a(K).domain()).rangeRound([0,D()]),t=a(K).domain().map(t=>({x:e(t),y:0,width:Math.max(0,e.bandwidth()-1),height:M(),fill:a(K)(t)})),n=a(K).domain(),r=e.bandwidth()/2;return{xScale:e,tickFormat:u.tickFormat,tickLabelOffset:r,tickLine:!1,tickLength:0,tickValues:n,swatches:t,interpolator:void 0}}}),Se=v(()=>!!a(K)&&!a(K).interpolate&&!a(K).interpolator&&!a(K).invertExtent),Y=v(()=>u.variant??(a(q)||a(Se)?`swatches`:`ramp`)),X=v(()=>u.selected??W.series?.selectedKeys?.current??[]),Z=v(()=>{if(a(Y)!==`ramp`||!a(K))return null;let e=u.value;if(e==null){let t=W.tooltip?.data;if(t==null)return null;e=W.c?.(t)}if(e==null)return null;if(a(K).invertExtent){let t=a(K).range().indexOf(a(K)(e));if(t<0)return null;let n=a(J).xScale?.(t-1),r=a(J).xScale?.(t);return typeof n!=`number`||typeof r!=`number`?null:(n+r)/2}let t=a(J).xScale?.(e);return typeof t!=`number`||!Number.isFinite(t)?null:t+a(J).tickLabelOffset}),Ce=v(()=>a(q)?a(q).map(e=>({value:e.key,label:e.label,color:e.color,onclick:t=>W.series?.selectedKeys?.toggle?.(e.key),onpointerenter:t=>{W.series.highlightKey=e.key},onpointerleave:e=>{W.series.highlightKey=null},selected:a(X).length===0||a(X).includes(e.key)})):(a(J).tickValues??a(J).xScale?.ticks?.(P())??[]).map(e=>({value:e,label:u.tickFormat?N(e,ce(u.tickFormat)):e,color:a(K)?.(e)??``,onclick:t=>W.series?.selectedKeys?.toggle?.(e),onpointerenter:t=>{W.series.highlightKey=e},onpointerleave:e=>{W.series.highlightKey=null},selected:a(X).length===0||a(X).includes(e)})));var Q=xe();g(Q,e=>({...H,"data-placement":u.placement,class:e}),[()=>L(`lc-legend-container`,u.class,B().root)],void 0,void 0,`svelte-1i67e7g`);var $=E(Q),we=h($,!0),Te=S($,2),Ee=t=>{var n=te(),r=k(n);{let t=v(()=>({values:a(J).tickValues??a(J).xScale?.ticks?.(P())??[],scale:a(K),seriesItems:a(q)}));e(r,()=>u.children,()=>a(t))}l(t,n)},De=e=>{let t=v(()=>6),r=v(()=>M()+I()+F()),o=v(()=>a(r));var d=ve(),f=E(d),m=E(f),_=e=>{fe(e,{get width(){return D()},get height(){return M()},get interpolator(){return a(J).interpolator},class:`lc-legend-color-ramp`})},y=e=>{var t=te(),n=k(t);x(n,17,()=>a(J).swatches,s,(e,t)=>{var n=me();g(n,e=>({...e}),[()=>z(a(t),`lc-legend-ramp-swatch`)],void 0,void 0,`svelte-1i67e7g`),l(e,n)}),l(e,t)};c(m,e=>{a(J).interpolator?e(_):a(J).swatches&&e(y,1)}),n(f);var b=S(f);x(b,21,()=>u.tickValues??a(J).xScale?.ticks?.(P())??[],s,(e,t)=>{var n=ge(),o=k(n);let s;var d=h(o,!0),f=S(o),m=e=>{var n=he();C(n,`y1`,0),T((e,t,r)=>{C(n,`x1`,e),C(n,`x2`,t),C(n,`y2`,M()+I()),p(n,0,r,`svelte-1i67e7g`)},[()=>a(J).xScale?.(a(t)),()=>a(J).xScale?.(a(t)),()=>A(L(`lc-legend-tick-line`,B().tick))]),l(e,n)};c(f,e=>{a(J).tickLine&&e(m)}),T((e,t,n)=>{C(o,`x`,e),C(o,`y`,a(r)),p(o,0,t,`svelte-1i67e7g`),s=j(o,``,s,{"font-size":F()}),i(d,n)},[()=>a(J).xScale?.(a(t))+a(J).tickLabelOffset,()=>A(L(`lc-legend-tick-text`,B().label)),()=>u.tickFormat?N(a(t),ce(u.tickFormat)):a(t)]),l(e,n)}),n(b);var w=S(b),O=e=>{var n=_e();T(e=>{C(n,`d`,`M${a(Z)-4},${M()+a(t)+1} L${a(Z)+4},${M()+a(t)+1} L${a(Z)??``},${M()??``} Z`),p(n,0,e,`svelte-1i67e7g`)},[()=>A(L(`lc-legend-indicator`))]),l(e,n)};c(w,e=>{a(Z)!=null&&e(O)}),n(d),T(e=>{C(d,`width`,D()),C(d,`height`,a(o)),C(d,`viewBox`,`0 0 ${D()??``} ${a(o)??``}`),p(d,0,e,`svelte-1i67e7g`)},[()=>A(L(`lc-legend-ramp-svg`))]),l(e,d)},Oe=e=>{var t=be();x(t,21,()=>a(Ce),s,(e,t)=>{var s=ye();let c;var d=E(s);let f;var m=S(d,2),g=h(m,!0);n(s),T((e,n,r,o)=>{p(s,1,e,`svelte-1i67e7g`),c=j(s,``,c,{opacity:n}),p(d,1,r,`svelte-1i67e7g`),f=j(d,``,f,{"background-color":a(t).color}),p(m,1,o,`svelte-1i67e7g`),i(g,a(t).label)},[()=>A(L(`lc-legend-swatch-button`,se(B()?.item,a(t)))),()=>a(X).length===0||a(X).includes(a(t).value)?1:.3,()=>A(L(`lc-legend-swatch`,B().swatch)),()=>A(L(`lc-legend-swatch-label`,B().label))]),r(`click`,s,e=>u.onclick?.(e,a(t))??a(t).onclick?.(e)),o(`pointerenter`,s,e=>u.onpointerenter?.(e,a(t))??a(t).onpointerenter?.(e)),o(`pointerleave`,s,e=>u.onpointerleave?.(e,a(t))??a(t).onpointerleave?.(e)),l(e,s)}),n(t),T(e=>{p(t,1,e,`svelte-1i67e7g`),C(t,`data-orientation`,le())},[()=>A(L(`lc-legend-swatch-group`,B().items))]),l(e,t)};c(Te,e=>{u.children?e(Ee):a(Y)===`ramp`?e(De,1):a(Y)===`swatches`&&e(Oe,2)}),n(Q),O(Q,e=>_(U,e),()=>a(U)),T(e=>{p($,1,e,`svelte-1i67e7g`),i(we,d())},[()=>A(L(`lc-legend-title`,B().title))]),l(t,Q),ee()}d([`click`]);export{G as default};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{A as e,J as t,M as n,P as r,R as i,a,bt as o,ft as s,ht as c,i as l,j as u,k as d,o as f,st as p,yt as m,z as h}from"./pqiPC7Y8.js";import"./xihTtKlq.js";import{t as g}from"./CJFHBop_.js";import{g as _,y as v}from"./BR7qH0F5.js";import{t as y}from"./Dt_Zd6U2.js";import{i as b}from"./Di37PX72.js";import{t as x}from"./BkXArOra.js";import{t as S}from"./BR2LaRms.js";import{n as C,r as w,t as T}from"./C20WvNRq.js";var E=class{#e=()=>({});#t=c(()=>this.#e());ctx=g();markData=v();geo=_();constructor(e){this.#e=e,this.ctx.registerComponent({name:`Points`,kind:`mark`,markInfo:()=>{let e=t(this.#t);return{data:e.data,x:e.x,y:e.y,seriesKey:e.seriesKey,color:e.fill??e.stroke}}})}#n=c(()=>this.ctx.series.series.find(e=>e.key===t(this.#t).seriesKey));get series(){return t(this.#n)}set series(e){s(this.#n,e)}#r=c(()=>this.series?.value??(this.series?.data?void 0:this.series?.key));get seriesAccessor(){return t(this.#r)}set seriesAccessor(e){s(this.#r,e)}#i=c(()=>this.ctx.stackAccessorsFor({seriesKey:t(this.#t).seriesKey,ownData:t(this.#t).data!=null}));get stackAccessors(){return t(this.#i)}set stackAccessors(e){s(this.#i,e)}#a=c(()=>y(t(this.#t).x??(this.ctx.valueAxis===`x`?this.seriesAccessor:void 0)??this.ctx.x));get xAccessor(){return t(this.#a)}set xAccessor(e){s(this.#a,e)}#o=c(()=>{let e=t(this.#t);return e.y?y(e.y):this.stackAccessors?this.stackAccessors.y1:Array.isArray(this.seriesAccessor)&&this.ctx.valueAxis===`y`?y(this.seriesAccessor[1]):y((this.ctx.valueAxis===`y`?this.seriesAccessor:void 0)??this.ctx.y)});get yAccessor(){return t(this.#o)}set yAccessor(e){s(this.#o,e)}#s=c(()=>this.markData(t(this.#t).data??this.series?.data));get pointsData(){return t(this.#s)}set pointsData(e){s(this.#s,e)}#c(e,n,r,i){let a=t(this.#t).seriesKey;return typeof n==`function`?n(e,this.ctx):n??(i&&a?i(a)+(i.bandwidth?.()??0)/2:b(r)&&!this.ctx.radial?r.bandwidth()/2:0)}#l(e,n,r,i){let a=t(this.#t);if(this.geo.projection){let[t,o]=this.geo.projection([e,n])??[0,0];return{x:t,y:o,r:this.ctx.config.r?this.ctx.rGet(r):a.r??5,xValue:e,yValue:n,data:r,edgeIndex:i}}let o=this.ctx.xScale(e),s=this.ctx.yScale(n),c=o+this.#c(o,a.offsetX,this.ctx.xScale,this.ctx.x1Scale??void 0),l=s+this.#c(s,a.offsetY,this.ctx.yScale,this.ctx.y1Scale??void 0),u=S(c,l);return{x:this.ctx.radial?u[0]:c,y:this.ctx.radial?u[1]:l,r:this.ctx.config.r?this.ctx.rGet(r):a.r??5,xValue:e,yValue:n,data:r,edgeIndex:i}}#u=c(()=>this.pointsData.flatMap(e=>{let t=this.xAccessor(e),n=this.yAccessor(e);return Array.isArray(t)?t.filter(Boolean).map((t,r)=>this.#l(t,n,e,r)):Array.isArray(n)?n.filter(Boolean).map((n,r)=>this.#l(t,n,e,r)):t!=null&&n!=null?this.#l(t,n,e):[]}));get points(){return t(this.#u)}set points(e){s(this.#u,e)}},D=new Set([`$$slots`,`$$events`,`$$legacy`,`Circle`,`data`,`x`,`y`,`seriesKey`,`r`,`offsetX`,`offsetY`,`fill`,`fillOpacity`,`stroke`,`strokeWidth`,`opacity`,`children`]);function O(s,g){o(g,!0);let _=l(g,`r`,3,5),v=a(g,D),y=new E(()=>({data:g.data,x:g.x,y:g.y,seriesKey:g.seriesKey,r:_(),offsetX:g.offsetX,offsetY:g.offsetY,fill:g.fill,fillOpacity:g.fillOpacity,stroke:g.stroke,strokeWidth:g.strokeWidth,opacity:g.opacity}));function b(e){let t=y.ctx.cKey(e);return t==null?y.series?.key==null||y.ctx.series.visibleSeries.length<=1||y.ctx.series.isHighlighted(y.series.key,!0)?1:.1:y.ctx.series.isHighlighted(t,!0)?1:.1}var S=h(),C=p(S),w=t=>{var n=h(),r=p(n);e(r,()=>g.children,()=>({points:y.points})),i(t,n)},T=e=>{var r=h(),a=p(r);u(a,17,()=>y.points,n,(e,n)=>{var r=h(),a=p(r);{let e=c(()=>g.fill??y.series?.color??(y.ctx.config.c?y.ctx.cGet(t(n).data):null)),r=c(()=>g.opacity??b(t(n).data)),i=c(()=>x(v,`lc-point`));d(a,()=>g.Circle,(a,o)=>{o(a,f({get cx(){return t(n).x},get cy(){return t(n).y},get r(){return t(n).r},get fill(){return t(e)},get fillOpacity(){return g.fillOpacity},get stroke(){return g.stroke},get strokeWidth(){return g.strokeWidth},get opacity(){return t(r)}},()=>y.series?.props,()=>t(i)))})}i(e,r)}),i(e,r)};r(C,e=>{g.children?e(w):e(T,-1)}),i(s,S),m()}var k=new Set([`$$slots`,`$$events`,`$$legacy`]);function A(e,t){let n=a(t,k);O(e,f({get Circle(){return w}},()=>n))}var j=new Set([`$$slots`,`$$events`,`$$legacy`]);function M(e,t){let n=a(t,j);O(e,f({get Circle(){return C}},()=>n))}var N=new Set([`$$slots`,`$$events`,`$$legacy`]);function P(e,t){let n=a(t,N);O(e,f({get Circle(){return T}},()=>n))}export{M as n,A as r,P as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{u as e}from"./DVTgeA2y.js";function t(e){return function(){return e}}function n(t){let n=3;return t.digits=function(e){if(!arguments.length)return n;if(e==null)n=null;else{let t=Math.floor(e);if(!(t>=0))throw RangeError(`invalid digits: ${e}`);n=t}return t},()=>new e(n)}export{t as n,n as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{A as e,At as t,B as n,Et as r,J as i,P as a,R as o,V as s,Z as c,a as l,bt as u,d,f,ft as p,ht as m,i as h,it as g,j as _,mt as v,ot as y,rt as b,s as x,st as S,yt as C,z as w}from"./pqiPC7Y8.js";import"./xihTtKlq.js";import{I as T,t as E}from"./CJFHBop_.js";import{C as D,E as O,S as k,T as A,g as j,m as M,o as N,t as P,w as F,y as I}from"./BR7qH0F5.js";import{c as L}from"./Dt_Zd6U2.js";import{n as R,r as z}from"./CoEFQJcr.js";var B=(e,t)=>t;function V(e,t,n,r){let i=typeof t.cx==`number`?t.cx:t.cx==null&&n.config.x!=null&&Number(n.xGet(e))||0,a=typeof t.cy==`number`?t.cy:t.cy==null&&n.config.y!=null&&Number(n.yGet(e))||0,o=typeof t.r==`number`?t.r:t.r==null&&n.config.r!=null&&Number(n.rGet(e))||1;if(r.projection){let[i,a]=A(t.cx,t.cy,e,r.projection);return{cx:i,cy:a,r:F(t.r,e,n.rScale,o)}}return{cx:F(t.cx,e,n.xScale,i),cy:F(t.cy,e,n.yScale,a),r:F(t.r,e,n.rScale,o)}}var H=class{#e=()=>({});chartCtx=E();markData=I();geo=j();#t=m(()=>M(this.#e().dashArray));get dashArrayResolved(){return i(this.#t)}set dashArrayResolved(e){p(this.#t,e)}#n=m(()=>this.dashArrayResolved?this.dashArrayResolved.join(` `):void 0);get dashArrayAttr(){return i(this.#n)}set dashArrayAttr(e){p(this.#n,e)}#r=m(()=>this.#e().data!=null||k(this.#e().cx,this.#e().cy,this.#e().r));get dataMode(){return i(this.#r)}set dataMode(e){p(this.#r,e)}#i=m(()=>this.dataMode?this.markData(this.#e().data):[]);#a=null;#o=m(()=>{if(!this.dataMode)return[];let e=this.#e(),t=e.key??B;return i(this.#i).map((n,r)=>{let i=t(n,r),a=V(n,e,this.chartCtx,this.geo),o=this.#a?.get(i);return{d:n,key:i,cx:o?.cx??a.cx,cy:o?.cy??a.cy,r:o?.r??a.r}})});get resolvedItems(){return i(this.#o)}set resolvedItems(e){p(this.#o,e)}#s;#c;#l;#u=m(()=>typeof this.#e().fill==`string`?this.#e().fill:void 0);get staticFill(){return i(this.#u)}set staticFill(e){p(this.#u,e)}#d=m(()=>typeof this.#e().fillOpacity==`number`?this.#e().fillOpacity:void 0);get staticFillOpacity(){return i(this.#d)}set staticFillOpacity(e){p(this.#d,e)}#f=m(()=>typeof this.#e().stroke==`string`?this.#e().stroke:void 0);get staticStroke(){return i(this.#f)}set staticStroke(e){p(this.#f,e)}#p=m(()=>typeof this.#e().strokeWidth==`number`?this.#e().strokeWidth:void 0);get staticStrokeWidth(){return i(this.#p)}set staticStrokeWidth(e){p(this.#p,e)}#m=m(()=>typeof this.#e().opacity==`number`?this.#e().opacity:void 0);get staticOpacity(){return i(this.#m)}set staticOpacity(e){p(this.#m,e)}#h=m(()=>typeof this.#e().class==`string`?this.#e().class:void 0);get staticClassName(){return i(this.#h)}set staticClassName(e){p(this.#h,e)}constructor(e){this.#e=e;let t=e(),n=t.initialCx??(typeof t.cx==`number`?t.cx:0),r=t.initialCy??(typeof t.cy==`number`?t.cy:0),a=t.initialR??(typeof t.r==`number`?t.r:1);if(this.#s=z(n,()=>typeof e().cx==`number`?e().cx:0,t.motion),this.#c=z(r,()=>typeof e().cy==`number`?e().cy:0,t.motion),this.#l=z(a,()=>typeof e().r==`number`?e().r:1,t.motion),this.#a=R(t.motion),this.#a){let t=this.#a;b(()=>{if(!this.dataMode)return;let n=e(),r=n.key??B,a=new Set;for(let e=0;e<i(this.#i).length;e++){let o=i(this.#i)[e],s=r(o,e);a.add(s);let l=V(o,n,this.chartCtx,this.geo);c(()=>t.update(s,l))}c(()=>t.cleanup(a))})}}get motionCx(){return this.#s.current}get motionCy(){return this.#c.current}get motionR(){return this.#l.current}};function U(e,t){return t?{data:e.data,x:typeof e.cx==`string`?e.cx:void 0,y:typeof e.cy==`string`?e.cy:void 0,color:typeof e.fill==`string`?e.fill:void 0}:{}}var W=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`]),G=s(`<circle></circle>`);function K(e,t){u(t,!0);let n=h(t,`ref`,15),r=l(t,W),s=new H(()=>r),c=v(void 0);g(()=>{n(i(c))}),s.chartCtx.registerComponent({name:`Circle`,kind:`mark`,markInfo:()=>U(r,s.dataMode)});var d=w(),y=S(d),b=e=>{var n=w(),a=S(n);_(a,17,()=>s.resolvedItems,e=>e.key,(e,n)=>{let a=m(()=>D(t.fill,i(n).d,s.chartCtx.cScale)),c=m(()=>D(t.stroke,i(n).d,s.chartCtx.cScale)),l=m(()=>O(t.fillOpacity,i(n).d)),u=m(()=>O(t.strokeWidth,i(n).d)),d=m(()=>O(t.opacity,i(n).d)),p=m(()=>O(t.class,i(n).d));var h=G();f(h,e=>({...r,cx:i(n).cx,cy:i(n).cy,r:i(n).r,fill:i(a),"fill-opacity":i(l),stroke:i(c),"stroke-width":i(u),opacity:i(d),"stroke-dasharray":s.dashArrayAttr,class:e}),[()=>L(`lc-circle`,i(p))]),o(e,h)}),o(e,n)},T=e=>{var t=G();f(t,e=>({...r,cx:s.motionCx,cy:s.motionCy,r:s.motionR,fill:s.staticFill,"fill-opacity":s.staticFillOpacity,stroke:s.staticStroke,"stroke-width":s.staticStrokeWidth,opacity:s.staticOpacity,"stroke-dasharray":s.dashArrayAttr,class:e}),[()=>L(`lc-circle`,s.staticClassName)]),x(t,e=>p(c,e),()=>i(c)),o(e,t)};a(y,e=>{s.dataMode?e(b):e(T,-1)}),o(e,d),C()}var q=new Set([`$$slots`,`$$events`,`$$legacy`]);function J(e,t){u(t,!0);let n=l(t,q),r=new H(()=>n);function i(e,n,i,a,o,s,c){return e?T({styles:{strokeWidth:o??r.staticStrokeWidth}},e):{styles:{fill:n??t.fill,fillOpacity:a??r.staticFillOpacity,stroke:i??t.stroke,strokeWidth:o??r.staticStrokeWidth,opacity:s??r.staticOpacity},classes:L(`lc-circle`,c??r.staticClassName),style:[t.style,r.dashArrayAttr?`stroke-dasharray: ${r.dashArrayAttr}`:void 0].filter(Boolean).join(`; `)||void 0}}function a(e,n){if(r.dataMode)for(let a of r.resolvedItems){let o=i(n,D(t.fill,a.d,r.chartCtx.cScale),D(t.stroke,a.d,r.chartCtx.cScale),O(t.fillOpacity,a.d),O(t.strokeWidth,a.d),O(t.opacity,a.d),O(t.class,a.d));N(e,a,o)}else{let t=i(n);N(e,{cx:r.motionCx,cy:r.motionCy,r:r.motionR},t)}}let o=P(()=>t.fill),s=P(()=>t.stroke);r.chartCtx.registerComponent({name:`Circle`,kind:`mark`,markInfo:()=>U(n,r.dataMode),canvasRender:{render:a,events:{click:t.onclick,pointerdown:t.onpointerdown,pointerenter:t.onpointerenter,pointermove:t.onpointermove,pointerleave:t.onpointerleave},deps:()=>[r.dataMode,r.dataMode?r.resolvedItems:null,r.motionCx,r.motionCy,r.motionR,o.current,t.fillOpacity,s.current,t.strokeWidth,t.opacity,t.class,t.style,r.dashArrayAttr]}}),C()}var Y=new Set([`$$slots`,`$$events`,`$$legacy`,`children`]),X=n(`<div></div>`),Z=n(`<div><!></div>`);function Q(n,s){u(s,!0);let c=l(s,Y),p=new H(()=>c),h=m(()=>typeof s.strokeWidth==`number`?`${s.strokeWidth}px`:typeof s.stroke==`string`?`1px`:void 0);p.chartCtx.registerComponent({name:`Circle`,kind:`mark`,markInfo:()=>U(c,p.dataMode)});var g=w(),v=S(g),b=e=>{var t=w(),n=S(t);_(n,17,()=>p.resolvedItems,e=>e.key,(e,t)=>{let n=m(()=>D(s.fill,i(t).d,p.chartCtx.cScale)),r=m(()=>D(s.stroke,i(t).d,p.chartCtx.cScale)),a=m(()=>O(s.strokeWidth,i(t).d)),l=m(()=>O(s.opacity,i(t).d)),u=m(()=>O(s.class,i(t).d)),h=m(()=>i(a)==null?i(r)==null?void 0:`1px`:`${i(a)}px`);var g=X();f(g,e=>({...c,class:e,[d]:{position:`absolute`,left:`${i(t).cx??``}px`,top:`${i(t).cy??``}px`,width:`${i(t).r*2}px`,height:`${i(t).r*2}px`,"border-radius":`50%`,background:i(n),"background-origin":`border-box`,opacity:i(l),"border-width":i(h),"border-color":i(r),"border-style":p.dashArrayResolved?`dashed`:`solid`,transform:`translate(-50%, -50%)`}}),[()=>L(`lc-circle`,i(u))]),o(e,g)}),o(e,t)},x=n=>{var a=Z();f(a,e=>({...c,class:e,[d]:{position:`absolute`,left:`${p.motionCx??``}px`,top:`${p.motionCy??``}px`,width:`${p.motionR*2}px`,height:`${p.motionR*2}px`,"border-radius":`50%`,background:p.staticFill,"background-origin":`border-box`,opacity:p.staticOpacity,"border-width":i(h),"border-color":p.staticStroke,"border-style":p.dashArrayResolved?`dashed`:`solid`,transform:`translate(-50%, -50%)`}}),[()=>L(`lc-circle`,p.staticClassName)]);var l=y(a);e(l,()=>s.children??t),r(a),o(n,a)};a(v,e=>{p.dataMode?e(b):e(x,-1)}),o(n,g),C()}export{J as n,K as r,Q as t};
|
|
Binary file
|
|
Binary file
|