@weng-lab/visualization 2.4.0-beta.3 → 2.4.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/components/ScatterPlot/ScatterPlotViewport.d.ts +2 -1
- package/dist/src/components/ScatterPlot/ScatterPlotViewport.d.ts.map +1 -1
- package/dist/src/components/ScatterPlot/scatterplot.d.ts.map +1 -1
- package/dist/src/components/ScatterPlot/types.d.ts +13 -0
- package/dist/src/components/ScatterPlot/types.d.ts.map +1 -1
- package/dist/visualization.es10.js +11 -11
- package/dist/visualization.es100.js +1 -1
- package/dist/visualization.es101.js +13 -32
- package/dist/visualization.es101.js.map +1 -1
- package/dist/visualization.es102.js +72 -43
- package/dist/visualization.es102.js.map +1 -1
- package/dist/visualization.es103.js +31 -74
- package/dist/visualization.es103.js.map +1 -1
- package/dist/visualization.es104.js +13 -25
- package/dist/visualization.es104.js.map +1 -1
- package/dist/visualization.es105.js +62 -83
- package/dist/visualization.es105.js.map +1 -1
- package/dist/visualization.es106.js +57 -32
- package/dist/visualization.es106.js.map +1 -1
- package/dist/visualization.es107.js +32 -13
- package/dist/visualization.es107.js.map +1 -1
- package/dist/visualization.es108.js +43 -72
- package/dist/visualization.es108.js.map +1 -1
- package/dist/visualization.es109.js +74 -31
- package/dist/visualization.es109.js.map +1 -1
- package/dist/visualization.es11.js +9 -9
- package/dist/visualization.es110.js +25 -13
- package/dist/visualization.es110.js.map +1 -1
- package/dist/visualization.es111.js +84 -221
- package/dist/visualization.es111.js.map +1 -1
- package/dist/visualization.es112.js +36 -2
- package/dist/visualization.es112.js.map +1 -1
- package/dist/visualization.es113.js +26 -557
- package/dist/visualization.es113.js.map +1 -1
- package/dist/visualization.es114.js +69 -213
- package/dist/visualization.es114.js.map +1 -1
- package/dist/visualization.es115.js +222 -2
- package/dist/visualization.es115.js.map +1 -1
- package/dist/visualization.es116.js +2 -4800
- package/dist/visualization.es116.js.map +1 -1
- package/dist/visualization.es117.js +557 -25
- package/dist/visualization.es117.js.map +1 -1
- package/dist/visualization.es118.js +212 -43
- package/dist/visualization.es118.js.map +1 -1
- package/dist/visualization.es119.js +2 -144
- package/dist/visualization.es119.js.map +1 -1
- package/dist/visualization.es12.js +2 -2
- package/dist/visualization.es120.js +4797 -144
- package/dist/visualization.es120.js.map +1 -1
- package/dist/visualization.es121.js +25 -26
- package/dist/visualization.es121.js.map +1 -1
- package/dist/visualization.es122.js +43 -68
- package/dist/visualization.es122.js.map +1 -1
- package/dist/visualization.es123.js +144 -64
- package/dist/visualization.es123.js.map +1 -1
- package/dist/visualization.es124.js +146 -60
- package/dist/visualization.es124.js.map +1 -1
- package/dist/visualization.es125.js +64 -2
- package/dist/visualization.es125.js.map +1 -1
- package/dist/visualization.es126.js +7 -1606
- package/dist/visualization.es126.js.map +1 -1
- package/dist/visualization.es127.js +5 -64
- package/dist/visualization.es127.js.map +1 -1
- package/dist/visualization.es128.js +43 -7
- package/dist/visualization.es128.js.map +1 -1
- package/dist/visualization.es129.js +31 -5
- package/dist/visualization.es129.js.map +1 -1
- package/dist/visualization.es13.js +7 -7
- package/dist/visualization.es130.js +7 -42
- package/dist/visualization.es130.js.map +1 -1
- package/dist/visualization.es131.js +6 -71
- package/dist/visualization.es131.js.map +1 -1
- package/dist/visualization.es132.js +3 -16
- package/dist/visualization.es132.js.map +1 -1
- package/dist/visualization.es133.js +16 -11
- package/dist/visualization.es133.js.map +1 -1
- package/dist/visualization.es134.js +17 -5
- package/dist/visualization.es134.js.map +1 -1
- package/dist/visualization.es135.js +32 -60
- package/dist/visualization.es135.js.map +1 -1
- package/dist/visualization.es136.js +15 -37
- package/dist/visualization.es136.js.map +1 -1
- package/dist/visualization.es137.js +9 -35
- package/dist/visualization.es137.js.map +1 -1
- package/dist/visualization.es138.js +6 -83
- package/dist/visualization.es138.js.map +1 -1
- package/dist/visualization.es139.js +6 -28
- package/dist/visualization.es139.js.map +1 -1
- package/dist/visualization.es140.js +9 -6
- package/dist/visualization.es140.js.map +1 -1
- package/dist/visualization.es141.js +4 -4
- package/dist/visualization.es141.js.map +1 -1
- package/dist/visualization.es142.js +4 -3
- package/dist/visualization.es142.js.map +1 -1
- package/dist/visualization.es143.js +8 -84
- package/dist/visualization.es143.js.map +1 -1
- package/dist/visualization.es144.js +4 -89
- package/dist/visualization.es144.js.map +1 -1
- package/dist/visualization.es145.js +11 -11
- package/dist/visualization.es145.js.map +1 -1
- package/dist/visualization.es146.js +26 -5
- package/dist/visualization.es146.js.map +1 -1
- package/dist/visualization.es147.js +18 -13
- package/dist/visualization.es147.js.map +1 -1
- package/dist/visualization.es148.js +28 -7
- package/dist/visualization.es148.js.map +1 -1
- package/dist/visualization.es149.js +59 -12
- package/dist/visualization.es149.js.map +1 -1
- package/dist/visualization.es15.js +8 -8
- package/dist/visualization.es150.js +38 -72
- package/dist/visualization.es150.js.map +1 -1
- package/dist/visualization.es151.js +36 -22
- package/dist/visualization.es151.js.map +1 -1
- package/dist/visualization.es152.js +83 -22
- package/dist/visualization.es152.js.map +1 -1
- package/dist/visualization.es153.js +28 -40
- package/dist/visualization.es153.js.map +1 -1
- package/dist/visualization.es154.js +7 -7
- package/dist/visualization.es154.js.map +1 -1
- package/dist/visualization.es155.js +4 -12
- package/dist/visualization.es155.js.map +1 -1
- package/dist/visualization.es156.js +3 -17
- package/dist/visualization.es156.js.map +1 -1
- package/dist/visualization.es157.js +3 -36
- package/dist/visualization.es157.js.map +1 -1
- package/dist/visualization.es158.js +5 -24
- package/dist/visualization.es158.js.map +1 -1
- package/dist/visualization.es159.js +33 -27
- package/dist/visualization.es159.js.map +1 -1
- package/dist/visualization.es160.js +15 -30
- package/dist/visualization.es160.js.map +1 -1
- package/dist/visualization.es161.js +6 -6
- package/dist/visualization.es161.js.map +1 -1
- package/dist/visualization.es162.js +11 -6
- package/dist/visualization.es162.js.map +1 -1
- package/dist/visualization.es163.js +9 -3
- package/dist/visualization.es163.js.map +1 -1
- package/dist/visualization.es164.js +6 -16
- package/dist/visualization.es164.js.map +1 -1
- package/dist/visualization.es165.js +7 -16
- package/dist/visualization.es165.js.map +1 -1
- package/dist/visualization.es166.js +9 -32
- package/dist/visualization.es166.js.map +1 -1
- package/dist/visualization.es167.js +6 -16
- package/dist/visualization.es167.js.map +1 -1
- package/dist/visualization.es168.js +6 -10
- package/dist/visualization.es168.js.map +1 -1
- package/dist/visualization.es169.js +5 -6
- package/dist/visualization.es169.js.map +1 -1
- package/dist/visualization.es170.js +14 -6
- package/dist/visualization.es170.js.map +1 -1
- package/dist/visualization.es171.js +5 -10
- package/dist/visualization.es171.js.map +1 -1
- package/dist/visualization.es172.js +3 -4
- package/dist/visualization.es172.js.map +1 -1
- package/dist/visualization.es173.js +6 -4
- package/dist/visualization.es173.js.map +1 -1
- package/dist/visualization.es174.js +6 -8
- package/dist/visualization.es174.js.map +1 -1
- package/dist/visualization.es175.js +9 -4
- package/dist/visualization.es175.js.map +1 -1
- package/dist/visualization.es176.js +31 -11
- package/dist/visualization.es176.js.map +1 -1
- package/dist/visualization.es177.js +113 -25
- package/dist/visualization.es177.js.map +1 -1
- package/dist/visualization.es178.js +72 -32
- package/dist/visualization.es178.js.map +1 -1
- package/dist/visualization.es179.js +19 -111
- package/dist/visualization.es179.js.map +1 -1
- package/dist/visualization.es18.js +1 -1
- package/dist/visualization.es180.js +22 -3
- package/dist/visualization.es180.js.map +1 -1
- package/dist/visualization.es181.js +40 -5
- package/dist/visualization.es181.js.map +1 -1
- package/dist/visualization.es182.js +6 -32
- package/dist/visualization.es182.js.map +1 -1
- package/dist/visualization.es183.js +12 -15
- package/dist/visualization.es183.js.map +1 -1
- package/dist/visualization.es184.js +17 -7
- package/dist/visualization.es184.js.map +1 -1
- package/dist/visualization.es185.js +36 -11
- package/dist/visualization.es185.js.map +1 -1
- package/dist/visualization.es186.js +23 -18
- package/dist/visualization.es186.js.map +1 -1
- package/dist/visualization.es187.js +27 -27
- package/dist/visualization.es187.js.map +1 -1
- package/dist/visualization.es188.js +84 -3
- package/dist/visualization.es188.js.map +1 -1
- package/dist/visualization.es189.js +90 -8
- package/dist/visualization.es189.js.map +1 -1
- package/dist/visualization.es190.js +12 -15
- package/dist/visualization.es190.js.map +1 -1
- package/dist/visualization.es191.js +6 -11
- package/dist/visualization.es191.js.map +1 -1
- package/dist/visualization.es192.js +14 -5
- package/dist/visualization.es192.js.map +1 -1
- package/dist/visualization.es193.js +7 -12
- package/dist/visualization.es193.js.map +1 -1
- package/dist/visualization.es194.js +13 -3
- package/dist/visualization.es194.js.map +1 -1
- package/dist/visualization.es195.js +72 -2
- package/dist/visualization.es195.js.map +1 -1
- package/dist/visualization.es196.js +16 -10
- package/dist/visualization.es196.js.map +1 -1
- package/dist/visualization.es197.js +11 -30
- package/dist/visualization.es197.js.map +1 -1
- package/dist/visualization.es198.js +5 -43
- package/dist/visualization.es198.js.map +1 -1
- package/dist/visualization.es199.js +8 -50
- package/dist/visualization.es199.js.map +1 -1
- package/dist/visualization.es2.js +7 -7
- package/dist/visualization.es20.js +10 -35
- package/dist/visualization.es20.js.map +1 -1
- package/dist/visualization.es200.js +16 -3
- package/dist/visualization.es200.js.map +1 -1
- package/dist/visualization.es201.js +11 -3
- package/dist/visualization.es201.js.map +1 -1
- package/dist/visualization.es202.js +5 -5
- package/dist/visualization.es202.js.map +1 -1
- package/dist/visualization.es203.js +11 -4
- package/dist/visualization.es203.js.map +1 -1
- package/dist/visualization.es204.js +3 -10
- package/dist/visualization.es204.js.map +1 -1
- package/dist/visualization.es205.js +2 -4
- package/dist/visualization.es205.js.map +1 -1
- package/dist/visualization.es206.js +10 -17
- package/dist/visualization.es206.js.map +1 -1
- package/dist/visualization.es207.js +30 -18
- package/dist/visualization.es207.js.map +1 -1
- package/dist/visualization.es208.js +42 -36
- package/dist/visualization.es208.js.map +1 -1
- package/dist/visualization.es209.js +50 -2
- package/dist/visualization.es209.js.map +1 -1
- package/dist/visualization.es21.js +53 -42
- package/dist/visualization.es21.js.map +1 -1
- package/dist/visualization.es210.js +3 -2
- package/dist/visualization.es210.js.map +1 -1
- package/dist/visualization.es211.js +3 -4
- package/dist/visualization.es211.js.map +1 -1
- package/dist/visualization.es212.js +5 -14
- package/dist/visualization.es212.js.map +1 -1
- package/dist/visualization.es213.js +5 -3
- package/dist/visualization.es213.js.map +1 -1
- package/dist/visualization.es214.js +11 -7
- package/dist/visualization.es214.js.map +1 -1
- package/dist/visualization.es215.js +4 -3
- package/dist/visualization.es215.js.map +1 -1
- package/dist/visualization.es216.js +17 -6
- package/dist/visualization.es216.js.map +1 -1
- package/dist/visualization.es217.js +17 -8
- package/dist/visualization.es217.js.map +1 -1
- package/dist/visualization.es218.js +36 -6
- package/dist/visualization.es218.js.map +1 -1
- package/dist/visualization.es219.js +2 -8
- package/dist/visualization.es219.js.map +1 -1
- package/dist/visualization.es22.js +35 -7
- package/dist/visualization.es22.js.map +1 -1
- package/dist/visualization.es220.js +2 -10
- package/dist/visualization.es220.js.map +1 -1
- package/dist/visualization.es221.js +4 -7
- package/dist/visualization.es221.js.map +1 -1
- package/dist/visualization.es222.js +14 -6
- package/dist/visualization.es222.js.map +1 -1
- package/dist/visualization.es223.js +3 -6
- package/dist/visualization.es223.js.map +1 -1
- package/dist/visualization.es224.js +7 -15
- package/dist/visualization.es224.js.map +1 -1
- package/dist/visualization.es225.js +3 -6
- package/dist/visualization.es225.js.map +1 -1
- package/dist/visualization.es226.js +6 -3
- package/dist/visualization.es226.js.map +1 -1
- package/dist/visualization.es227.js +74 -6
- package/dist/visualization.es227.js.map +1 -1
- package/dist/visualization.es228.js +2 -7
- package/dist/visualization.es228.js.map +1 -1
- package/dist/visualization.es229.js +482 -9
- package/dist/visualization.es229.js.map +1 -1
- package/dist/visualization.es23.js +43 -47
- package/dist/visualization.es23.js.map +1 -1
- package/dist/visualization.es230.js +2 -75
- package/dist/visualization.es230.js.map +1 -1
- package/dist/visualization.es231.js +124 -2
- package/dist/visualization.es231.js.map +1 -1
- package/dist/visualization.es232.js +2 -483
- package/dist/visualization.es232.js.map +1 -1
- package/dist/visualization.es233.js +1606 -2
- package/dist/visualization.es233.js.map +1 -1
- package/dist/visualization.es234.js +17 -122
- package/dist/visualization.es234.js.map +1 -1
- package/dist/visualization.es235.js +3 -18
- package/dist/visualization.es235.js.map +1 -1
- package/dist/visualization.es236.js +35 -3
- package/dist/visualization.es236.js.map +1 -1
- package/dist/visualization.es237.js +3 -35
- package/dist/visualization.es237.js.map +1 -1
- package/dist/visualization.es239.js +35 -2
- package/dist/visualization.es239.js.map +1 -1
- package/dist/visualization.es24.js +7 -33
- package/dist/visualization.es24.js.map +1 -1
- package/dist/visualization.es240.js +2 -35
- package/dist/visualization.es240.js.map +1 -1
- package/dist/visualization.es241.js +30 -2
- package/dist/visualization.es241.js.map +1 -1
- package/dist/visualization.es242.js +18 -51
- package/dist/visualization.es242.js.map +1 -1
- package/dist/visualization.es243.js +3 -31
- package/dist/visualization.es243.js.map +1 -1
- package/dist/visualization.es244.js +3 -33
- package/dist/visualization.es244.js.map +1 -1
- package/dist/visualization.es245.js +3 -12
- package/dist/visualization.es245.js.map +1 -1
- package/dist/visualization.es246.js +3 -3
- package/dist/visualization.es246.js.map +1 -1
- package/dist/visualization.es247.js +3 -3
- package/dist/visualization.es247.js.map +1 -1
- package/dist/visualization.es248.js +2 -2
- package/dist/visualization.es248.js.map +1 -1
- package/dist/visualization.es249.js +3 -3
- package/dist/visualization.es249.js.map +1 -1
- package/dist/visualization.es25.js +45 -5
- package/dist/visualization.es25.js.map +1 -1
- package/dist/visualization.es250.js +7 -3
- package/dist/visualization.es250.js.map +1 -1
- package/dist/visualization.es251.js +48 -3
- package/dist/visualization.es251.js.map +1 -1
- package/dist/visualization.es252.js +3 -3
- package/dist/visualization.es252.js.map +1 -1
- package/dist/visualization.es253.js +5 -6
- package/dist/visualization.es253.js.map +1 -1
- package/dist/visualization.es254.js +4 -48
- package/dist/visualization.es254.js.map +1 -1
- package/dist/visualization.es255.js +3 -3
- package/dist/visualization.es255.js.map +1 -1
- package/dist/visualization.es256.js +5 -5
- package/dist/visualization.es256.js.map +1 -1
- package/dist/visualization.es257.js +4 -4
- package/dist/visualization.es257.js.map +1 -1
- package/dist/visualization.es258.js +7 -4
- package/dist/visualization.es258.js.map +1 -1
- package/dist/visualization.es259.js +33 -5
- package/dist/visualization.es259.js.map +1 -1
- package/dist/visualization.es26.js +32 -42
- package/dist/visualization.es26.js.map +1 -1
- package/dist/visualization.es260.js +3 -4
- package/dist/visualization.es260.js.map +1 -1
- package/dist/visualization.es261.js +3 -23
- package/dist/visualization.es261.js.map +1 -1
- package/dist/visualization.es262.js +6 -53
- package/dist/visualization.es262.js.map +1 -1
- package/dist/visualization.es263.js +11 -19
- package/dist/visualization.es263.js.map +1 -1
- package/dist/visualization.es264.js +2 -7
- package/dist/visualization.es264.js.map +1 -1
- package/dist/visualization.es265.js +3 -34
- package/dist/visualization.es265.js.map +1 -1
- package/dist/visualization.es266.js +3 -3
- package/dist/visualization.es266.js.map +1 -1
- package/dist/visualization.es267.js +10 -3
- package/dist/visualization.es267.js.map +1 -1
- package/dist/visualization.es268.js +25 -6
- package/dist/visualization.es268.js.map +1 -1
- package/dist/visualization.es269.js +4 -12
- package/dist/visualization.es269.js.map +1 -1
- package/dist/visualization.es27.js +7 -7
- package/dist/visualization.es27.js.map +1 -1
- package/dist/visualization.es270.js +33 -2
- package/dist/visualization.es270.js.map +1 -1
- package/dist/visualization.es271.js +61 -3
- package/dist/visualization.es271.js.map +1 -1
- package/dist/visualization.es272.js +237 -3
- package/dist/visualization.es272.js.map +1 -1
- package/dist/visualization.es273.js +991 -9
- package/dist/visualization.es273.js.map +1 -1
- package/dist/visualization.es274.js +23 -25
- package/dist/visualization.es274.js.map +1 -1
- package/dist/visualization.es275.js +53 -4
- package/dist/visualization.es275.js.map +1 -1
- package/dist/visualization.es276.js +51 -30
- package/dist/visualization.es276.js.map +1 -1
- package/dist/visualization.es277.js +27 -233
- package/dist/visualization.es277.js.map +1 -1
- package/dist/visualization.es278.js +33 -992
- package/dist/visualization.es278.js.map +1 -1
- package/dist/visualization.es279.js +12 -61
- package/dist/visualization.es279.js.map +1 -1
- package/dist/visualization.es28.js +44 -11
- package/dist/visualization.es28.js.map +1 -1
- package/dist/visualization.es280.js +3 -30
- package/dist/visualization.es280.js.map +1 -1
- package/dist/visualization.es281.js +12 -3
- package/dist/visualization.es281.js.map +1 -1
- package/dist/visualization.es282.js +35 -10
- package/dist/visualization.es282.js.map +1 -1
- package/dist/visualization.es283.js +259 -35
- package/dist/visualization.es283.js.map +1 -1
- package/dist/visualization.es284.js +56 -257
- package/dist/visualization.es284.js.map +1 -1
- package/dist/visualization.es285.js +5 -59
- package/dist/visualization.es285.js.map +1 -1
- package/dist/visualization.es286.js +21 -5
- package/dist/visualization.es286.js.map +1 -1
- package/dist/visualization.es287.js +35 -5
- package/dist/visualization.es287.js.map +1 -1
- package/dist/visualization.es288.js +29 -135
- package/dist/visualization.es288.js.map +1 -1
- package/dist/visualization.es289.js +15 -6
- package/dist/visualization.es289.js.map +1 -1
- package/dist/visualization.es29.js +7 -54
- package/dist/visualization.es29.js.map +1 -1
- package/dist/visualization.es290.js +19 -22
- package/dist/visualization.es290.js.map +1 -1
- package/dist/visualization.es291.js +8 -37
- package/dist/visualization.es291.js.map +1 -1
- package/dist/visualization.es292.js +5 -32
- package/dist/visualization.es292.js.map +1 -1
- package/dist/visualization.es293.js +140 -14
- package/dist/visualization.es293.js.map +1 -1
- package/dist/visualization.es294.js +6 -19
- package/dist/visualization.es294.js.map +1 -1
- package/dist/visualization.es295.js +109 -8
- package/dist/visualization.es295.js.map +1 -1
- package/dist/visualization.es296.js +12 -109
- package/dist/visualization.es296.js.map +1 -1
- package/dist/visualization.es297.js +141 -12
- package/dist/visualization.es297.js.map +1 -1
- package/dist/visualization.es298.js +5 -141
- package/dist/visualization.es298.js.map +1 -1
- package/dist/visualization.es299.js +71 -5
- package/dist/visualization.es299.js.map +1 -1
- package/dist/visualization.es3.js +11 -11
- package/dist/visualization.es300.js +33 -69
- package/dist/visualization.es300.js.map +1 -1
- package/dist/visualization.es301.js +20 -35
- package/dist/visualization.es301.js.map +1 -1
- package/dist/visualization.es302.js +3 -20
- package/dist/visualization.es302.js.map +1 -1
- package/dist/visualization.es303.js +24 -3
- package/dist/visualization.es303.js.map +1 -1
- package/dist/visualization.es304.js +29 -23
- package/dist/visualization.es304.js.map +1 -1
- package/dist/visualization.es305.js +2 -31
- package/dist/visualization.es305.js.map +1 -1
- package/dist/visualization.es306.js +2 -2
- package/dist/visualization.es306.js.map +1 -1
- package/dist/visualization.es307.js +6 -2
- package/dist/visualization.es307.js.map +1 -1
- package/dist/visualization.es308.js +15 -6
- package/dist/visualization.es308.js.map +1 -1
- package/dist/visualization.es309.js +34 -14
- package/dist/visualization.es309.js.map +1 -1
- package/dist/visualization.es310.js +25 -32
- package/dist/visualization.es310.js.map +1 -1
- package/dist/visualization.es311.js +10 -27
- package/dist/visualization.es311.js.map +1 -1
- package/dist/visualization.es312.js +6 -10
- package/dist/visualization.es312.js.map +1 -1
- package/dist/visualization.es313.js +13 -6
- package/dist/visualization.es313.js.map +1 -1
- package/dist/visualization.es314.js +11 -13
- package/dist/visualization.es314.js.map +1 -1
- package/dist/visualization.es315.js +2 -12
- package/dist/visualization.es315.js.map +1 -1
- package/dist/visualization.es316.js +3 -2
- package/dist/visualization.es316.js.map +1 -1
- package/dist/visualization.es317.js +2 -3
- package/dist/visualization.es317.js.map +1 -1
- package/dist/visualization.es318.js +104 -2
- package/dist/visualization.es318.js.map +1 -1
- package/dist/visualization.es319.js +4 -103
- package/dist/visualization.es319.js.map +1 -1
- package/dist/visualization.es32.js +13 -13
- package/dist/visualization.es320.js +3 -5
- package/dist/visualization.es320.js.map +1 -1
- package/dist/visualization.es321.js +19 -3
- package/dist/visualization.es321.js.map +1 -1
- package/dist/visualization.es322.js +5 -18
- package/dist/visualization.es322.js.map +1 -1
- package/dist/visualization.es323.js +14 -5
- package/dist/visualization.es323.js.map +1 -1
- package/dist/visualization.es324.js +4 -14
- package/dist/visualization.es324.js.map +1 -1
- package/dist/visualization.es325.js +28 -4
- package/dist/visualization.es325.js.map +1 -1
- package/dist/visualization.es326.js +6 -28
- package/dist/visualization.es326.js.map +1 -1
- package/dist/visualization.es327.js +2 -7
- package/dist/visualization.es327.js.map +1 -1
- package/dist/visualization.es328.js +20 -2
- package/dist/visualization.es328.js.map +1 -1
- package/dist/visualization.es329.js +21 -20
- package/dist/visualization.es329.js.map +1 -1
- package/dist/visualization.es330.js +6 -21
- package/dist/visualization.es330.js.map +1 -1
- package/dist/visualization.es331.js +7 -5
- package/dist/visualization.es331.js.map +1 -1
- package/dist/visualization.es332.js +18 -7
- package/dist/visualization.es332.js.map +1 -1
- package/dist/visualization.es333.js +44 -19
- package/dist/visualization.es333.js.map +1 -1
- package/dist/visualization.es334.js +7 -44
- package/dist/visualization.es334.js.map +1 -1
- package/dist/visualization.es335.js +20 -7
- package/dist/visualization.es335.js.map +1 -1
- package/dist/visualization.es336.js +52 -18
- package/dist/visualization.es336.js.map +1 -1
- package/dist/visualization.es337.js +25 -52
- package/dist/visualization.es337.js.map +1 -1
- package/dist/visualization.es338.js +11 -27
- package/dist/visualization.es338.js.map +1 -1
- package/dist/visualization.es339.js +19 -11
- package/dist/visualization.es339.js.map +1 -1
- package/dist/visualization.es340.js +10 -17
- package/dist/visualization.es340.js.map +1 -1
- package/dist/visualization.es341.js +4 -11
- package/dist/visualization.es341.js.map +1 -1
- package/dist/visualization.es342.js +4 -5
- package/dist/visualization.es342.js.map +1 -1
- package/dist/visualization.es343.js +4 -4
- package/dist/visualization.es343.js.map +1 -1
- package/dist/visualization.es344.js +175 -3
- package/dist/visualization.es344.js.map +1 -1
- package/dist/visualization.es345.js +36 -172
- package/dist/visualization.es345.js.map +1 -1
- package/dist/visualization.es346.js +5 -39
- package/dist/visualization.es346.js.map +1 -1
- package/dist/visualization.es347.js +3 -5
- package/dist/visualization.es347.js.map +1 -1
- package/dist/visualization.es348.js +2 -4
- package/dist/visualization.es348.js.map +1 -1
- package/dist/visualization.es349.js +30 -2
- package/dist/visualization.es349.js.map +1 -1
- package/dist/visualization.es350.js +7 -29
- package/dist/visualization.es350.js.map +1 -1
- package/dist/visualization.es351.js +11 -8
- package/dist/visualization.es351.js.map +1 -1
- package/dist/visualization.es352.js +3 -10
- package/dist/visualization.es352.js.map +1 -1
- package/dist/visualization.es353.js +65 -3
- package/dist/visualization.es353.js.map +1 -1
- package/dist/visualization.es354.js +7 -66
- package/dist/visualization.es354.js.map +1 -1
- package/dist/visualization.es355.js +5 -7
- package/dist/visualization.es355.js.map +1 -1
- package/dist/visualization.es356.js +13 -4
- package/dist/visualization.es356.js.map +1 -1
- package/dist/visualization.es357.js +34 -13
- package/dist/visualization.es357.js.map +1 -1
- package/dist/visualization.es358.js +4 -34
- package/dist/visualization.es358.js.map +1 -1
- package/dist/visualization.es359.js +9 -4
- package/dist/visualization.es359.js.map +1 -1
- package/dist/visualization.es36.js +1 -1
- package/dist/visualization.es360.js +2 -10
- package/dist/visualization.es360.js.map +1 -1
- package/dist/visualization.es361.js +5 -2
- package/dist/visualization.es361.js.map +1 -1
- package/dist/visualization.es362.js +2 -5
- package/dist/visualization.es362.js.map +1 -1
- package/dist/visualization.es363.js +10 -2
- package/dist/visualization.es363.js.map +1 -1
- package/dist/visualization.es364.js +10 -10
- package/dist/visualization.es364.js.map +1 -1
- package/dist/visualization.es365.js +13 -10
- package/dist/visualization.es365.js.map +1 -1
- package/dist/visualization.es366.js +2 -13
- package/dist/visualization.es366.js.map +1 -1
- package/dist/visualization.es367.js +10 -2
- package/dist/visualization.es367.js.map +1 -1
- package/dist/visualization.es368.js +8 -10
- package/dist/visualization.es368.js.map +1 -1
- package/dist/visualization.es369.js +5 -7
- package/dist/visualization.es369.js.map +1 -1
- package/dist/visualization.es37.js +3 -3
- package/dist/visualization.es370.js +24 -5
- package/dist/visualization.es370.js.map +1 -1
- package/dist/visualization.es371.js +19 -25
- package/dist/visualization.es371.js.map +1 -1
- package/dist/visualization.es372.js +41 -19
- package/dist/visualization.es372.js.map +1 -1
- package/dist/visualization.es373.js +3 -41
- package/dist/visualization.es373.js.map +1 -1
- package/dist/visualization.es374.js +9 -3
- package/dist/visualization.es374.js.map +1 -1
- package/dist/visualization.es375.js +8 -8
- package/dist/visualization.es375.js.map +1 -1
- package/dist/visualization.es376.js +35 -8
- package/dist/visualization.es376.js.map +1 -1
- package/dist/visualization.es377.js +9 -35
- package/dist/visualization.es377.js.map +1 -1
- package/dist/visualization.es378.js +30 -8
- package/dist/visualization.es378.js.map +1 -1
- package/dist/visualization.es379.js +4 -31
- package/dist/visualization.es379.js.map +1 -1
- package/dist/visualization.es38.js +1 -1
- package/dist/visualization.es380.js +2 -5
- package/dist/visualization.es380.js.map +1 -1
- package/dist/visualization.es381.js +16 -2
- package/dist/visualization.es381.js.map +1 -1
- package/dist/visualization.es382.js +23 -14
- package/dist/visualization.es382.js.map +1 -1
- package/dist/visualization.es383.js +2 -25
- package/dist/visualization.es383.js.map +1 -1
- package/dist/visualization.es384.js +63 -2
- package/dist/visualization.es384.js.map +1 -1
- package/dist/visualization.es385.js +2 -63
- package/dist/visualization.es385.js.map +1 -1
- package/dist/visualization.es386.js +2 -2
- package/dist/visualization.es386.js.map +1 -1
- package/dist/visualization.es387.js +6 -2
- package/dist/visualization.es387.js.map +1 -1
- package/dist/visualization.es388.js +36 -5
- package/dist/visualization.es388.js.map +1 -1
- package/dist/visualization.es389.js +14 -30
- package/dist/visualization.es389.js.map +1 -1
- package/dist/visualization.es39.js +7 -54
- package/dist/visualization.es39.js.map +1 -1
- package/dist/visualization.es390.js +3 -20
- package/dist/visualization.es390.js.map +1 -1
- package/dist/visualization.es391.js +4 -3
- package/dist/visualization.es391.js.map +1 -1
- package/dist/visualization.es392.js +4 -4
- package/dist/visualization.es392.js.map +1 -1
- package/dist/visualization.es393.js +48 -4
- package/dist/visualization.es393.js.map +1 -1
- package/dist/visualization.es394.js +25 -47
- package/dist/visualization.es394.js.map +1 -1
- package/dist/visualization.es395.js +15 -25
- package/dist/visualization.es395.js.map +1 -1
- package/dist/visualization.es396.js +8 -15
- package/dist/visualization.es396.js.map +1 -1
- package/dist/visualization.es397.js +20 -10
- package/dist/visualization.es397.js.map +1 -1
- package/dist/visualization.es398.js +14 -20
- package/dist/visualization.es398.js.map +1 -1
- package/dist/visualization.es399.js +4 -14
- package/dist/visualization.es399.js.map +1 -1
- package/dist/visualization.es4.js +6 -6
- package/dist/visualization.es40.js +67 -145
- package/dist/visualization.es40.js.map +1 -1
- package/dist/visualization.es400.js +13 -4
- package/dist/visualization.es400.js.map +1 -1
- package/dist/visualization.es401.js +48 -12
- package/dist/visualization.es401.js.map +1 -1
- package/dist/visualization.es402.js +5 -48
- package/dist/visualization.es402.js.map +1 -1
- package/dist/visualization.es403.js +12 -5
- package/dist/visualization.es403.js.map +1 -1
- package/dist/visualization.es404.js +2 -13
- package/dist/visualization.es404.js.map +1 -1
- package/dist/visualization.es405.js +7 -2
- package/dist/visualization.es405.js.map +1 -1
- package/dist/visualization.es406.js +209 -6
- package/dist/visualization.es406.js.map +1 -1
- package/dist/visualization.es407.js +25 -208
- package/dist/visualization.es407.js.map +1 -1
- package/dist/visualization.es408.js +3 -26
- package/dist/visualization.es408.js.map +1 -1
- package/dist/visualization.es409.js +16 -4
- package/dist/visualization.es409.js.map +1 -1
- package/dist/visualization.es41.js +12 -111
- package/dist/visualization.es41.js.map +1 -1
- package/dist/visualization.es410.js +14 -15
- package/dist/visualization.es410.js.map +1 -1
- package/dist/visualization.es411.js +12 -12
- package/dist/visualization.es411.js.map +1 -1
- package/dist/visualization.es412.js +2 -15
- package/dist/visualization.es412.js.map +1 -1
- package/dist/visualization.es413.js +2 -2
- package/dist/visualization.es413.js.map +1 -1
- package/dist/visualization.es414.js +2 -2
- package/dist/visualization.es414.js.map +1 -1
- package/dist/visualization.es415.js +5 -2
- package/dist/visualization.es415.js.map +1 -1
- package/dist/visualization.es416.js +2 -5
- package/dist/visualization.es416.js.map +1 -1
- package/dist/visualization.es417.js +25 -2
- package/dist/visualization.es417.js.map +1 -1
- package/dist/visualization.es418.js +22 -25
- package/dist/visualization.es418.js.map +1 -1
- package/dist/visualization.es419.js +7 -20
- package/dist/visualization.es419.js.map +1 -1
- package/dist/visualization.es42.js +54 -7
- package/dist/visualization.es42.js.map +1 -1
- package/dist/visualization.es420.js +67 -8
- package/dist/visualization.es420.js.map +1 -1
- package/dist/visualization.es421.js +5 -67
- package/dist/visualization.es421.js.map +1 -1
- package/dist/visualization.es422.js +28 -5
- package/dist/visualization.es422.js.map +1 -1
- package/dist/visualization.es423.js +10 -29
- package/dist/visualization.es423.js.map +1 -1
- package/dist/visualization.es424.js +6 -10
- package/dist/visualization.es424.js.map +1 -1
- package/dist/visualization.es425.js +2 -6
- package/dist/visualization.es425.js.map +1 -1
- package/dist/visualization.es426.js +5 -2
- package/dist/visualization.es426.js.map +1 -1
- package/dist/visualization.es427.js +25 -4
- package/dist/visualization.es427.js.map +1 -1
- package/dist/visualization.es428.js +10 -25
- package/dist/visualization.es428.js.map +1 -1
- package/dist/visualization.es429.js +26 -10
- package/dist/visualization.es429.js.map +1 -1
- package/dist/visualization.es43.js +147 -7
- package/dist/visualization.es43.js.map +1 -1
- package/dist/visualization.es430.js +9 -26
- package/dist/visualization.es430.js.map +1 -1
- package/dist/visualization.es431.js +10 -9
- package/dist/visualization.es431.js.map +1 -1
- package/dist/visualization.es432.js +2 -11
- package/dist/visualization.es432.js.map +1 -1
- package/dist/visualization.es433.js +16 -2
- package/dist/visualization.es433.js.map +1 -1
- package/dist/visualization.es434.js +30 -16
- package/dist/visualization.es434.js.map +1 -1
- package/dist/visualization.es435.js +26 -30
- package/dist/visualization.es435.js.map +1 -1
- package/dist/visualization.es436.js +2 -26
- package/dist/visualization.es436.js.map +1 -1
- package/dist/visualization.es437.js +9 -2
- package/dist/visualization.es437.js.map +1 -1
- package/dist/visualization.es438.js +12 -8
- package/dist/visualization.es438.js.map +1 -1
- package/dist/visualization.es439.js +21 -11
- package/dist/visualization.es439.js.map +1 -1
- package/dist/visualization.es44.js +111 -34
- package/dist/visualization.es44.js.map +1 -1
- package/dist/visualization.es440.js +12 -22
- package/dist/visualization.es440.js.map +1 -1
- package/dist/visualization.es441.js +3 -13
- package/dist/visualization.es441.js.map +1 -1
- package/dist/visualization.es442.js +2 -3
- package/dist/visualization.es442.js.map +1 -1
- package/dist/visualization.es443.js +18 -2
- package/dist/visualization.es443.js.map +1 -1
- package/dist/visualization.es444.js +3 -17
- package/dist/visualization.es444.js.map +1 -1
- package/dist/visualization.es445.js +11 -3
- package/dist/visualization.es445.js.map +1 -1
- package/dist/visualization.es446.js +11 -12
- package/dist/visualization.es446.js.map +1 -1
- package/dist/visualization.es447.js +7 -11
- package/dist/visualization.es447.js.map +1 -1
- package/dist/visualization.es448.js +19 -7
- package/dist/visualization.es448.js.map +1 -1
- package/dist/visualization.es449.js +23 -19
- package/dist/visualization.es449.js.map +1 -1
- package/dist/visualization.es45.js +7 -69
- package/dist/visualization.es45.js.map +1 -1
- package/dist/visualization.es450.js +9 -20
- package/dist/visualization.es450.js.map +1 -1
- package/dist/visualization.es451.js +48 -9
- package/dist/visualization.es451.js.map +1 -1
- package/dist/visualization.es452.js +13 -46
- package/dist/visualization.es452.js.map +1 -1
- package/dist/visualization.es453.js +31 -13
- package/dist/visualization.es453.js.map +1 -1
- package/dist/visualization.es454.js +19 -32
- package/dist/visualization.es454.js.map +1 -1
- package/dist/visualization.es455.js +28 -19
- package/dist/visualization.es455.js.map +1 -1
- package/dist/visualization.es456.js +3 -31
- package/dist/visualization.es456.js.map +1 -1
- package/dist/visualization.es457.js +18 -3
- package/dist/visualization.es457.js.map +1 -1
- package/dist/visualization.es458.js +12 -17
- package/dist/visualization.es458.js.map +1 -1
- package/dist/visualization.es459.js +10 -13
- package/dist/visualization.es459.js.map +1 -1
- package/dist/visualization.es46.js +33 -11
- package/dist/visualization.es46.js.map +1 -1
- package/dist/visualization.es460.js +28 -9
- package/dist/visualization.es460.js.map +1 -1
- package/dist/visualization.es461.js +6 -30
- package/dist/visualization.es461.js.map +1 -1
- package/dist/visualization.es462.js +8 -6
- package/dist/visualization.es462.js.map +1 -1
- package/dist/visualization.es463.js +2 -8
- package/dist/visualization.es463.js.map +1 -1
- package/dist/visualization.es464.js +17 -2
- package/dist/visualization.es464.js.map +1 -1
- package/dist/visualization.es465.js +8 -16
- package/dist/visualization.es465.js.map +1 -1
- package/dist/visualization.es466.js +9 -8
- package/dist/visualization.es466.js.map +1 -1
- package/dist/visualization.es467.js +614 -8
- package/dist/visualization.es467.js.map +1 -1
- package/dist/visualization.es468.js +44 -609
- package/dist/visualization.es468.js.map +1 -1
- package/dist/visualization.es469.js +13 -51
- package/dist/visualization.es469.js.map +1 -1
- package/dist/visualization.es47.js +65 -64
- package/dist/visualization.es47.js.map +1 -1
- package/dist/visualization.es470.js +11 -13
- package/dist/visualization.es470.js.map +1 -1
- package/dist/visualization.es471.js +21 -9
- package/dist/visualization.es471.js.map +1 -1
- package/dist/visualization.es472.js +34 -22
- package/dist/visualization.es472.js.map +1 -1
- package/dist/visualization.es473.js +12 -34
- package/dist/visualization.es473.js.map +1 -1
- package/dist/visualization.es474.js +18 -12
- package/dist/visualization.es474.js.map +1 -1
- package/dist/visualization.es475.js +21 -14
- package/dist/visualization.es475.js.map +1 -1
- package/dist/visualization.es476.js +22 -21
- package/dist/visualization.es476.js.map +1 -1
- package/dist/visualization.es477.js +37 -21
- package/dist/visualization.es477.js.map +1 -1
- package/dist/visualization.es478.js +12 -35
- package/dist/visualization.es478.js.map +1 -1
- package/dist/visualization.es479.js +33 -12
- package/dist/visualization.es479.js.map +1 -1
- package/dist/visualization.es48.js +109 -236
- package/dist/visualization.es48.js.map +1 -1
- package/dist/visualization.es480.js +51 -34
- package/dist/visualization.es480.js.map +1 -1
- package/dist/visualization.es481.js +3 -57
- package/dist/visualization.es481.js.map +1 -1
- package/dist/visualization.es482.js +3 -4
- package/dist/visualization.es482.js.map +1 -1
- package/dist/visualization.es483.js +7 -3
- package/dist/visualization.es483.js.map +1 -1
- package/dist/visualization.es484.js +16 -7
- package/dist/visualization.es484.js.map +1 -1
- package/dist/visualization.es485.js +2 -16
- package/dist/visualization.es485.js.map +1 -1
- package/dist/visualization.es486.js +2 -2
- package/dist/visualization.es486.js.map +1 -1
- package/dist/visualization.es487.js +2 -2
- package/dist/visualization.es487.js.map +1 -1
- package/dist/visualization.es488.js +2 -2
- package/dist/visualization.es488.js.map +1 -1
- package/dist/visualization.es489.js +10 -29
- package/dist/visualization.es489.js.map +1 -1
- package/dist/visualization.es49.js +5 -97
- package/dist/visualization.es49.js.map +1 -1
- package/dist/visualization.es490.js +9 -119
- package/dist/visualization.es490.js.map +1 -1
- package/dist/visualization.es491.js +6 -29
- package/dist/visualization.es491.js.map +1 -1
- package/dist/visualization.es492.js +8 -10
- package/dist/visualization.es492.js.map +1 -1
- package/dist/visualization.es493.js +6 -13
- package/dist/visualization.es493.js.map +1 -1
- package/dist/visualization.es494.js +5 -32
- package/dist/visualization.es494.js.map +1 -1
- package/dist/visualization.es495.js +13 -27
- package/dist/visualization.es495.js.map +1 -1
- package/dist/visualization.es496.js +5 -10
- package/dist/visualization.es496.js.map +1 -1
- package/dist/visualization.es497.js +6 -12
- package/dist/visualization.es497.js.map +1 -1
- package/dist/visualization.es498.js +6 -17
- package/dist/visualization.es498.js.map +1 -1
- package/dist/visualization.es499.js +6 -23
- package/dist/visualization.es499.js.map +1 -1
- package/dist/visualization.es5.js +10 -10
- package/dist/visualization.es50.js +34 -27
- package/dist/visualization.es50.js.map +1 -1
- package/dist/visualization.es500.js +3 -16
- package/dist/visualization.es500.js.map +1 -1
- package/dist/visualization.es501.js +4 -96
- package/dist/visualization.es501.js.map +1 -1
- package/dist/visualization.es502.js +8 -27
- package/dist/visualization.es502.js.map +1 -1
- package/dist/visualization.es503.js +29 -72
- package/dist/visualization.es503.js.map +1 -1
- package/dist/visualization.es504.js +117 -49
- package/dist/visualization.es504.js.map +1 -1
- package/dist/visualization.es505.js +28 -33
- package/dist/visualization.es505.js.map +1 -1
- package/dist/visualization.es506.js +9 -40
- package/dist/visualization.es506.js.map +1 -1
- package/dist/visualization.es507.js +13 -9
- package/dist/visualization.es507.js.map +1 -1
- package/dist/visualization.es508.js +32 -9
- package/dist/visualization.es508.js.map +1 -1
- package/dist/visualization.es509.js +28 -6
- package/dist/visualization.es509.js.map +1 -1
- package/dist/visualization.es51.js +57 -22
- package/dist/visualization.es51.js.map +1 -1
- package/dist/visualization.es510.js +10 -8
- package/dist/visualization.es510.js.map +1 -1
- package/dist/visualization.es511.js +11 -5
- package/dist/visualization.es511.js.map +1 -1
- package/dist/visualization.es512.js +17 -5
- package/dist/visualization.es512.js.map +1 -1
- package/dist/visualization.es513.js +23 -14
- package/dist/visualization.es513.js.map +1 -1
- package/dist/visualization.es514.js +16 -5
- package/dist/visualization.es514.js.map +1 -1
- package/dist/visualization.es515.js +96 -6
- package/dist/visualization.es515.js.map +1 -1
- package/dist/visualization.es516.js +28 -6
- package/dist/visualization.es516.js.map +1 -1
- package/dist/visualization.es517.js +71 -6
- package/dist/visualization.es517.js.map +1 -1
- package/dist/visualization.es518.js +51 -3
- package/dist/visualization.es518.js.map +1 -1
- package/dist/visualization.es519.js +34 -4
- package/dist/visualization.es519.js.map +1 -1
- package/dist/visualization.es52.js +47 -18
- package/dist/visualization.es52.js.map +1 -1
- package/dist/visualization.es520.js +40 -8
- package/dist/visualization.es520.js.map +1 -1
- package/dist/visualization.es522.js +1 -1
- package/dist/visualization.es53.js +44 -20
- package/dist/visualization.es53.js.map +1 -1
- package/dist/visualization.es532.js +1 -1
- package/dist/visualization.es533.js +3 -3
- package/dist/visualization.es534.js +2 -2
- package/dist/visualization.es535.js +2 -2
- package/dist/visualization.es537.js +7 -7
- package/dist/visualization.es539.js +1 -1
- package/dist/visualization.es54.js +21 -70
- package/dist/visualization.es54.js.map +1 -1
- package/dist/visualization.es542.js +17 -17
- package/dist/visualization.es544.js +7 -7
- package/dist/visualization.es546.js +9 -20
- package/dist/visualization.es546.js.map +1 -1
- package/dist/visualization.es547.js +9 -7
- package/dist/visualization.es547.js.map +1 -1
- package/dist/visualization.es548.js +18 -3
- package/dist/visualization.es548.js.map +1 -1
- package/dist/visualization.es549.js +7 -6
- package/dist/visualization.es549.js.map +1 -1
- package/dist/visualization.es55.js +116 -57
- package/dist/visualization.es55.js.map +1 -1
- package/dist/visualization.es550.js +7 -7
- package/dist/visualization.es550.js.map +1 -1
- package/dist/visualization.es551.js +3 -5
- package/dist/visualization.es551.js.map +1 -1
- package/dist/visualization.es552.js +4 -4
- package/dist/visualization.es552.js.map +1 -1
- package/dist/visualization.es553.js +15 -7
- package/dist/visualization.es553.js.map +1 -1
- package/dist/visualization.es554.js +3 -15
- package/dist/visualization.es554.js.map +1 -1
- package/dist/visualization.es555.js +9 -9
- package/dist/visualization.es555.js.map +1 -1
- package/dist/visualization.es556.js +4 -4
- package/dist/visualization.es556.js.map +1 -1
- package/dist/visualization.es557.js +5 -4
- package/dist/visualization.es557.js.map +1 -1
- package/dist/visualization.es558.js +8 -5
- package/dist/visualization.es558.js.map +1 -1
- package/dist/visualization.es559.js +7 -30
- package/dist/visualization.es559.js.map +1 -1
- package/dist/visualization.es56.js +96 -18700
- package/dist/visualization.es56.js.map +1 -1
- package/dist/visualization.es560.js +4 -34
- package/dist/visualization.es560.js.map +1 -1
- package/dist/visualization.es561.js +3 -51
- package/dist/visualization.es561.js.map +1 -1
- package/dist/visualization.es562.js +4 -9
- package/dist/visualization.es562.js.map +1 -1
- package/dist/visualization.es563.js +11 -4
- package/dist/visualization.es563.js.map +1 -1
- package/dist/visualization.es564.js +9 -5
- package/dist/visualization.es564.js.map +1 -1
- package/dist/visualization.es565.js +30 -3
- package/dist/visualization.es565.js.map +1 -1
- package/dist/visualization.es566.js +24 -3
- package/dist/visualization.es566.js.map +1 -1
- package/dist/visualization.es567.js +50 -14
- package/dist/visualization.es567.js.map +1 -1
- package/dist/visualization.es568.js +1 -1
- package/dist/visualization.es568.js.map +1 -1
- package/dist/visualization.es569.js +8 -9
- package/dist/visualization.es569.js.map +1 -1
- package/dist/visualization.es57.js +35 -5
- package/dist/visualization.es57.js.map +1 -1
- package/dist/visualization.es570.js +20 -11
- package/dist/visualization.es570.js.map +1 -1
- package/dist/visualization.es571.js +7 -9
- package/dist/visualization.es571.js.map +1 -1
- package/dist/visualization.es572.js +6 -24
- package/dist/visualization.es572.js.map +1 -1
- package/dist/visualization.es573.js +5 -3
- package/dist/visualization.es573.js.map +1 -1
- package/dist/visualization.es574.js +7 -8
- package/dist/visualization.es574.js.map +1 -1
- package/dist/visualization.es575.js +15 -32
- package/dist/visualization.es575.js.map +1 -1
- package/dist/visualization.es576.js +4 -9
- package/dist/visualization.es576.js.map +1 -1
- package/dist/visualization.es577.js +6 -9
- package/dist/visualization.es577.js.map +1 -1
- package/dist/visualization.es578.js +33 -17
- package/dist/visualization.es578.js.map +1 -1
- package/dist/visualization.es579.js +7 -6
- package/dist/visualization.es579.js.map +1 -1
- package/dist/visualization.es58.js +66 -5
- package/dist/visualization.es58.js.map +1 -1
- package/dist/visualization.es580.js +32 -7
- package/dist/visualization.es580.js.map +1 -1
- package/dist/visualization.es582.js +3 -3
- package/dist/visualization.es583.js +1 -1
- package/dist/visualization.es59.js +244 -58
- package/dist/visualization.es59.js.map +1 -1
- package/dist/visualization.es596.js +2 -2
- package/dist/visualization.es597.js +3 -3
- package/dist/visualization.es598.js +2 -2
- package/dist/visualization.es6.js +14 -14
- package/dist/visualization.es60.js +93 -807
- package/dist/visualization.es60.js.map +1 -1
- package/dist/visualization.es602.js +4 -4
- package/dist/visualization.es603.js +3 -4
- package/dist/visualization.es603.js.map +1 -1
- package/dist/visualization.es604.js +10 -7
- package/dist/visualization.es604.js.map +1 -1
- package/dist/visualization.es605.js +289 -5
- package/dist/visualization.es605.js.map +1 -1
- package/dist/visualization.es606.js +4 -18
- package/dist/visualization.es606.js.map +1 -1
- package/dist/visualization.es607.js +7 -13
- package/dist/visualization.es607.js.map +1 -1
- package/dist/visualization.es608.js +5 -289
- package/dist/visualization.es608.js.map +1 -1
- package/dist/visualization.es609.js +18 -3
- package/dist/visualization.es609.js.map +1 -1
- package/dist/visualization.es61.js +31 -0
- package/dist/visualization.es61.js.map +1 -0
- package/dist/visualization.es610.js +14 -11
- package/dist/visualization.es610.js.map +1 -1
- package/dist/visualization.es611.js +3 -5
- package/dist/visualization.es611.js.map +1 -1
- package/dist/visualization.es612.js +5 -3
- package/dist/visualization.es612.js.map +1 -1
- package/dist/visualization.es62.js +21 -129
- package/dist/visualization.es62.js.map +1 -1
- package/dist/visualization.es63.js +17 -66
- package/dist/visualization.es63.js.map +1 -1
- package/dist/visualization.es64.js +20 -112
- package/dist/visualization.es64.js.map +1 -1
- package/dist/visualization.es65.js +70 -5
- package/dist/visualization.es65.js.map +1 -1
- package/dist/visualization.es66.js +56 -34
- package/dist/visualization.es66.js.map +1 -1
- package/dist/visualization.es67.js +52 -58
- package/dist/visualization.es67.js.map +1 -1
- package/dist/visualization.es68.js +55 -47
- package/dist/visualization.es68.js.map +1 -1
- package/dist/visualization.es69.js +42 -44
- package/dist/visualization.es69.js.map +1 -1
- package/dist/visualization.es7.js +2 -2
- package/dist/visualization.es70.js +5 -20
- package/dist/visualization.es70.js.map +1 -1
- package/dist/visualization.es71.js +4 -115
- package/dist/visualization.es71.js.map +1 -1
- package/dist/visualization.es72.js +18 -98
- package/dist/visualization.es72.js.map +1 -1
- package/dist/visualization.es73.js +5 -52
- package/dist/visualization.es73.js.map +1 -1
- package/dist/visualization.es74.js +26 -54
- package/dist/visualization.es74.js.map +1 -1
- package/dist/visualization.es75.js +30 -42
- package/dist/visualization.es75.js.map +1 -1
- package/dist/visualization.es76.js +18701 -5
- package/dist/visualization.es76.js.map +1 -1
- package/dist/visualization.es77.js +5 -5
- package/dist/visualization.es77.js.map +1 -1
- package/dist/visualization.es78.js +5 -18
- package/dist/visualization.es78.js.map +1 -1
- package/dist/visualization.es79.js +59 -4
- package/dist/visualization.es79.js.map +1 -1
- package/dist/visualization.es8.js +24 -24
- package/dist/visualization.es8.js.map +1 -1
- package/dist/visualization.es80.js +805 -21
- package/dist/visualization.es80.js.map +1 -1
- package/dist/visualization.es82.js +128 -37
- package/dist/visualization.es82.js.map +1 -1
- package/dist/visualization.es83.js +36 -77
- package/dist/visualization.es83.js.map +1 -1
- package/dist/visualization.es84.js +81 -46
- package/dist/visualization.es84.js.map +1 -1
- package/dist/visualization.es85.js +46 -56
- package/dist/visualization.es85.js.map +1 -1
- package/dist/visualization.es86.js +55 -6
- package/dist/visualization.es86.js.map +1 -1
- package/dist/visualization.es87.js +6 -12
- package/dist/visualization.es87.js.map +1 -1
- package/dist/visualization.es88.js +12 -57
- package/dist/visualization.es88.js.map +1 -1
- package/dist/visualization.es89.js +56 -62
- package/dist/visualization.es89.js.map +1 -1
- package/dist/visualization.es9.js +1 -1
- package/dist/visualization.es90.js +60 -31
- package/dist/visualization.es90.js.map +1 -1
- package/dist/visualization.es92.js +1 -1
- package/dist/visualization.es93.js +1 -1
- package/dist/visualization.es94.js +1 -1
- package/dist/visualization.es96.js +2 -2
- package/dist/visualization.es97.js +2 -2
- package/dist/visualization.es98.js +1 -1
- package/dist/visualization.es99.js +1 -1
- package/package.json +1 -1
- package/dist/visualization.es81.js +0 -34
- package/dist/visualization.es81.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es48.js","sources":["../src/components/ScatterPlot/ScatterPlotViewport.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport CircularProgress from \"@mui/material/CircularProgress\";\nimport { Box, Stack } from \"@mui/material\";\nimport { Group } from \"@visx/group\";\nimport { AxisBottom, AxisLeft, AxisRight, AxisTop } from \"@visx/axis\";\nimport { LinePath } from \"@visx/shape\";\nimport { Text } from \"@visx/text\";\nimport { curveBasis } from \"@visx/curve\";\nimport { localPoint } from \"@visx/event\";\nimport { ScaleLinear } from \"@visx/vendor/d3-scale\";\nimport { BackgroundGradient, ChartProps, CrosshairPosition, Point, SelectionMode, ZoomType } from \"./types\";\nimport { drawCanvasPoint, getTicks, isPointVisible, partitionPointsByHover, prepareCanvas, rescaleX, rescaleY } from \"./helpers\";\nimport AnimatedPoints from \"./AnimatedPoints\";\nimport PointLabels from \"./PointLabels\";\nimport GradientLegend from \"./GradientLegend\";\nimport Crosshair from \"./Crosshair\";\nimport { useDragSelection } from \"./hooks/useDragSelection\";\n\ntype ScatterPlotViewportProps<T extends object> = {\n size: number;\n margin: { top: number; left: number };\n boundedWidth: number;\n boundedHeight: number;\n loading: boolean;\n pointData: Point<T>[];\n animation?: ChartProps<T, boolean | undefined, boolean | undefined>[\"animation\"];\n animationGroupSize?: number;\n animationBuffer?: number;\n xScale: ScaleLinear<number, number, never>;\n yScale: ScaleLinear<number, number, never>;\n zoom: ZoomType;\n selectMode: SelectionMode;\n selectable: boolean;\n disableZoom?: boolean;\n groupPointsAnchor?: keyof Point<T> | keyof T;\n hoveredPoint: Point<T> | null;\n handleMouseMove: (event: React.MouseEvent<SVGElement>, zoom: ZoomType) => void;\n handleMouseLeave: () => void;\n onDisplayedPointsChange?: (points: Point<T>[]) => void;\n onSelectionChange?: (selectedPoints: Point<T>[]) => void;\n onPointClicked?: (point: Point<T>) => void;\n leftAxisLabel?: string;\n bottomAxisLabel?: string;\n border: boolean;\n originLine?: boolean;\n backgroundGradient?: BackgroundGradient;\n /** Crosshair position in data coordinates, or null for no crosshair. */\n crosshair?: CrosshairPosition | null;\n divRef: React.RefObject<HTMLDivElement | null>;\n};\n\n/**\n * Hover growth eases in over this long, and is dropped instantly on the way out.\n * Easing the exit too would drag a tail of still-shrinking points behind the cursor\n * whenever it sweeps across a dense plot.\n */\nconst HOVER_GROW_MS = 120;\n\nconst easeOutCubic = (t: number) => 1 - Math.pow(1 - t, 3);\n\nconst ScatterPlotViewport = <T extends object>({\n size,\n margin,\n boundedWidth,\n boundedHeight,\n loading,\n pointData,\n animation,\n animationGroupSize,\n animationBuffer,\n xScale,\n yScale,\n zoom,\n selectMode,\n selectable,\n disableZoom,\n groupPointsAnchor,\n hoveredPoint,\n handleMouseMove,\n handleMouseLeave,\n onDisplayedPointsChange,\n onSelectionChange,\n onPointClicked,\n leftAxisLabel,\n bottomAxisLabel,\n border,\n originLine,\n backgroundGradient,\n crosshair,\n divRef,\n}: ScatterPlotViewportProps<T>) => {\n const graphRef = useRef<SVGRectElement | null>(null);\n const canvasRef = useRef<HTMLCanvasElement | null>(null);\n // Hover growth is driven straight onto the canvas through a ref. A redraw is ~0.3ms at\n // 3.4k points so the drawing is cheap, but a re-render per frame would not be.\n const hoverAmountRef = useRef(0);\n const animatedKeysRef = useRef<Set<string> | null>(null);\n\n // Animation state — viewport owns what it renders\n const [showPointAnimation, setShowPointAnimation] = useState(Boolean(animation));\n\n useEffect(() => {\n if (!animation) return;\n if (pointData.length > 2500) {\n setShowPointAnimation(false);\n return;\n }\n const duration = 450;\n const buffer = (animationBuffer ?? 0.03) * 1000;\n const groups = Math.ceil(pointData.length / (animationGroupSize ?? 1));\n const total = duration + groups * buffer;\n\n const t = window.setTimeout(() => setShowPointAnimation(false), total);\n return () => window.clearTimeout(t);\n }, [animation, animationBuffer, animationGroupSize, pointData.length]);\n\n const { lines, isDragging, x, y, dx, dy, dragStart, dragMove, dragEnd, completeSelection } =\n useDragSelection({ pointData, margin, xScale, yScale, onSelectionChange });\n\n // Passive event listeners to prevent default scroll/touch behavior on the chart surface\n useEffect(() => {\n const graphElement = graphRef.current;\n\n const handleWheel = (event: WheelEvent) => { event.preventDefault(); };\n const handleTouchMove = (event: TouchEvent) => { event.preventDefault(); };\n const handleTouchStart = (event: TouchEvent) => { event.preventDefault(); };\n\n if (graphElement) {\n graphElement.addEventListener('wheel', handleWheel, { passive: false });\n graphElement.addEventListener('touchstart', handleTouchStart, { passive: false });\n graphElement.addEventListener('touchmove', handleTouchMove, { passive: false });\n }\n\n return () => {\n if (graphElement) {\n graphElement.removeEventListener('wheel', handleWheel);\n graphElement.removeEventListener('touchstart', handleTouchStart);\n graphElement.removeEventListener('touchmove', handleTouchMove);\n }\n };\n }, []);\n\n const xScaleTransformed = useMemo(\n () => rescaleX(xScale, zoom.transformMatrix.translateX, zoom.transformMatrix.scaleX),\n [xScale, zoom.transformMatrix]\n );\n const yScaleTransformed = useMemo(\n () => rescaleY(yScale, zoom.transformMatrix.translateY, zoom.transformMatrix.scaleY),\n [yScale, zoom.transformMatrix]\n );\n\n const groupedPoints: Point<T>[] = useMemo(() => {\n const anchor = groupPointsAnchor;\n if (anchor && hoveredPoint) {\n return pointData.filter((point) => {\n if (anchor in point) {\n return point[anchor as keyof Point<T>] === hoveredPoint[anchor as keyof Point<T>];\n }\n if (point.metaData && hoveredPoint.metaData) {\n return point.metaData[anchor as keyof T] === hoveredPoint.metaData[anchor as keyof T];\n }\n return false;\n });\n }\n return hoveredPoint ? [hoveredPoint] : [];\n }, [hoveredPoint, groupPointsAnchor, pointData]);\n\n const previousHoveredKeysRef = useRef<Set<string>>(new Set());\n\n const hoveredPointKeys = useMemo(() => {\n const next = new Set(groupedPoints.map((point) => `${point.x},${point.y}`));\n const previous = previousHoveredKeysRef.current;\n\n // Moving between points inside one anchored group rebuilds this set, but its contents\n // are unchanged - the hovered group is the same group. Handing back the previous Set\n // keeps its identity stable, so the redraw effect and the hover growth it drives both\n // sit still instead of restarting on every point the cursor crosses. Purely a\n // memoisation hint: the contents are correct either way.\n if (next.size === previous.size && [...next].every((key) => previous.has(key))) {\n return previous;\n }\n\n previousHoveredKeysRef.current = next;\n return next;\n }, [groupedPoints]);\n\n const currentDisplayedPoints = useMemo(\n () => pointData.filter((point) => {\n const tx = xScaleTransformed(point.x);\n const ty = yScaleTransformed(point.y);\n return tx >= 0 && tx <= boundedWidth && ty >= 0 && ty <= boundedHeight;\n }),\n [pointData, xScaleTransformed, yScaleTransformed, boundedWidth, boundedHeight]\n );\n\n const drawPoints = useCallback((\n xST: ScaleLinear<number, number, never>,\n yST: ScaleLinear<number, number, never>,\n canvas: HTMLCanvasElement\n ) => {\n const context = canvas.getContext('2d');\n if (!context) return;\n\n prepareCanvas(context, boundedWidth, boundedHeight);\n\n if (backgroundGradient) {\n const [colorLow, colorMid, colorHigh] = backgroundGradient.colorScale ?? [\"red\", \"white\", \"blue\"];\n const W = boundedWidth;\n const H = boundedHeight;\n const x0 = xST(0);\n const y0 = yST(0);\n const fraction = Math.max(0.001, Math.min(0.999, (x0 * W - y0 * H + H * H) / (W * W + H * H)));\n const gradient = context.createLinearGradient(0, H, W, 0);\n gradient.addColorStop(0, colorLow);\n gradient.addColorStop(fraction, colorMid);\n gradient.addColorStop(1, colorHigh);\n context.globalAlpha = backgroundGradient.opacity ?? 1;\n context.fillStyle = gradient;\n context.fillRect(0, 0, W, H);\n context.globalAlpha = 1;\n }\n\n const { nonHovered, hovered } = partitionPointsByHover(pointData, hoveredPointKeys);\n\n const drawRenderedPoint = (point: Point<T>, isHovered: boolean) => {\n const transformedX = xST(point.x);\n const transformedY = yST(point.y);\n if (!isPointVisible(transformedX, transformedY, boundedWidth, boundedHeight)) return;\n drawCanvasPoint(context, point, transformedX, transformedY, isHovered ? hoverAmountRef.current : 0);\n };\n\n nonHovered.forEach((point) => drawRenderedPoint(point, false));\n hovered.forEach((point) => drawRenderedPoint(point, true));\n }, [boundedHeight, boundedWidth, hoveredPointKeys, pointData, backgroundGradient]);\n\n useEffect(() => {\n const canvas = canvasRef.current;\n if (!canvas || showPointAnimation) return;\n\n // Leaving is instant: drop the growth and repaint once.\n if (hoveredPointKeys.size === 0) {\n animatedKeysRef.current = null;\n hoverAmountRef.current = 0;\n drawPoints(xScaleTransformed, yScaleTransformed, canvas);\n return;\n }\n\n // Only a change of hovered set starts the growth. This effect also runs on pan, zoom\n // and data changes, which should repaint at the size the points have already reached\n // rather than snapping them back to zero.\n if (animatedKeysRef.current === hoveredPointKeys) {\n drawPoints(xScaleTransformed, yScaleTransformed, canvas);\n return;\n }\n animatedKeysRef.current = hoveredPointKeys;\n\n const startedAt = performance.now();\n hoverAmountRef.current = 0;\n let frame = requestAnimationFrame(function step() {\n const t = Math.min(1, (performance.now() - startedAt) / HOVER_GROW_MS);\n hoverAmountRef.current = easeOutCubic(t);\n drawPoints(xScaleTransformed, yScaleTransformed, canvas);\n if (t < 1) frame = requestAnimationFrame(step);\n });\n\n return () => cancelAnimationFrame(frame);\n }, [drawPoints, xScaleTransformed, yScaleTransformed, showPointAnimation, hoveredPointKeys]);\n\n const handlePointClick = useCallback(() => {\n if (hoveredPoint) onPointClicked?.(hoveredPoint);\n }, [hoveredPoint, onPointClicked]);\n\n const surfaceCursor = disableZoom\n ? selectable\n ? isDragging ? 'none' : 'crosshair'\n : isDragging ? 'none' : 'default'\n : hoveredPoint\n ? 'default'\n : selectMode === 'select'\n ? isDragging ? 'none' : 'crosshair'\n : zoom.isDragging\n ? 'grabbing'\n : 'grab';\n\n const handleSelectionEnd = (event: React.MouseEvent<SVGRectElement> | React.TouchEvent<SVGRectElement>) => {\n dragEnd(event);\n completeSelection(zoom);\n };\n\n const onSurfaceMouseDown = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? dragStart\n : disableZoom ? undefined : zoom.dragStart;\n const onSurfaceMouseUp = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : zoom.dragEnd;\n const onSurfaceMouseMove = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? (isDragging ? dragMove : undefined)\n : disableZoom ? undefined : zoom.dragMove;\n const onSurfaceMouseLeave = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : zoom.dragEnd;\n const onSurfaceTouchStart = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? dragStart\n : disableZoom ? undefined : zoom.dragStart;\n const onSurfaceTouchEnd = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : zoom.dragEnd;\n const onSurfaceTouchMove = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? (isDragging ? dragMove : undefined)\n : disableZoom ? undefined : zoom.dragMove;\n const onSurfaceWheel: React.WheelEventHandler<SVGRectElement> = (event) => {\n setShowPointAnimation(false);\n if (!disableZoom) {\n const point = localPoint(event) || { x: 0, y: 0 };\n const zoomDirection = event.deltaY < 0 ? 1.1 : 0.9;\n zoom.scale({ scaleX: zoomDirection, scaleY: zoomDirection, point });\n }\n };\n\n const previousDisplayedPoints = useRef<Point<T>[]>([]);\n\n useEffect(() => {\n const haveDisplayedPointsChanged = (prevPoints: Point<T>[], nextPoints: Point<T>[]) => {\n if (prevPoints.length !== nextPoints.length) return true;\n return !prevPoints.every((point, index) => {\n const nextPoint = nextPoints[index];\n return (\n point.x === nextPoint.x &&\n point.y === nextPoint.y &&\n point.r === nextPoint.r &&\n point.shape === nextPoint.shape &&\n point.color === nextPoint.color &&\n point.opacity === nextPoint.opacity\n );\n });\n };\n\n if (haveDisplayedPointsChanged(previousDisplayedPoints.current, currentDisplayedPoints)) {\n onDisplayedPointsChange?.(currentDisplayedPoints);\n previousDisplayedPoints.current = currentDisplayedPoints;\n }\n }, [currentDisplayedPoints, onDisplayedPointsChange]);\n\n return (\n <Stack justifyContent=\"center\" alignItems=\"center\" direction=\"row\" sx={{ position: \"relative\" }}>\n <Box sx={{ width: size, height: size }}>\n {loading ? (\n <Box display=\"flex\" width=\"100%\" height=\"100%\" sx={{ justifyContent: \"center\", alignItems: \"center\" }}>\n <CircularProgress />\n </Box>\n ) : (\n <div style={{ position: \"relative\" }} ref={divRef}>\n <canvas\n ref={canvasRef}\n width={boundedWidth * 2}\n height={boundedHeight * 2}\n style={{\n userSelect: \"none\",\n position: \"absolute\",\n top: margin.top,\n left: margin.left,\n width: boundedWidth,\n height: boundedHeight,\n backgroundColor: \"transparent\",\n }}\n />\n <svg\n width={size}\n height={size}\n overflow=\"visible\"\n style={{ position: \"absolute\", userSelect: \"none\" }}\n onMouseMove={(event) => {\n if (isDragging) handleMouseLeave();\n else handleMouseMove(event, zoom);\n }}\n onMouseLeave={handleMouseLeave}\n >\n <Group top={margin.top} left={margin.left}>\n {showPointAnimation && animation && (\n <AnimatedPoints\n pointData={pointData}\n animation={animation}\n animationGroupSize={animationGroupSize}\n animationBuffer={animationBuffer}\n xScaleTransformed={xScaleTransformed}\n yScaleTransformed={yScaleTransformed}\n boundedWidth={boundedWidth}\n boundedHeight={boundedHeight}\n />\n )}\n {selectMode === \"select\" && (\n <>\n {lines.map((line, index) => (\n <LinePath\n key={`line-${index}`}\n fill=\"transparent\"\n stroke=\"black\"\n strokeWidth={3}\n data={line}\n curve={curveBasis}\n x={(datum) => datum.x}\n y={(datum) => datum.y}\n />\n ))}\n {isDragging && (\n <g>\n <line x1={x - margin.left + dx - 6} y1={y - margin.top + dy} x2={x - margin.left + dx + 6} y2={y - margin.top + dy} stroke=\"black\" strokeWidth={1} />\n <line x1={x - margin.left + dx} y1={y - margin.top + dy - 6} x2={x - margin.left + dx} y2={y - margin.top + dy + 6} stroke=\"black\" strokeWidth={1} />\n <circle cx={x - margin.left} cy={y - margin.top} r={4} fill=\"transparent\" stroke=\"black\" pointerEvents=\"none\" />\n </g>\n )}\n </>\n )}\n {originLine && (() => {\n const x0 = xScaleTransformed(0);\n const y0 = yScaleTransformed(0);\n return (\n <>\n {y0 >= 0 && y0 <= boundedHeight && (\n <line x1={0} x2={boundedWidth} y1={y0} y2={y0} stroke=\"#000\" strokeWidth={1} strokeDasharray=\"4,4\" pointerEvents=\"none\" />\n )}\n {x0 >= 0 && x0 <= boundedWidth && (\n <line x1={x0} x2={x0} y1={0} y2={boundedHeight} stroke=\"#000\" strokeWidth={1} strokeDasharray=\"4,4\" pointerEvents=\"none\" />\n )}\n </>\n );\n })()}\n <rect\n ref={graphRef}\n fill=\"transparent\"\n width={boundedWidth}\n height={boundedHeight}\n style={{ cursor: surfaceCursor }}\n onMouseDown={onSurfaceMouseDown}\n onMouseUp={onSurfaceMouseUp}\n onMouseMove={onSurfaceMouseMove}\n onMouseLeave={onSurfaceMouseLeave}\n onTouchStart={onSurfaceTouchStart}\n onTouchEnd={onSurfaceTouchEnd}\n onTouchMove={onSurfaceTouchMove}\n onWheel={onSurfaceWheel}\n onClick={handlePointClick}\n />\n {crosshair && !isDragging && (\n <Crosshair\n position={{\n x: xScaleTransformed(crosshair.x),\n y: yScaleTransformed(crosshair.y),\n }}\n boundedWidth={boundedWidth}\n boundedHeight={boundedHeight}\n />\n )}\n </Group>\n <Group top={margin.top} left={margin.left}>\n <AxisLeft\n scale={yScaleTransformed}\n tickLabelProps={() => ({\n fill: \"#1c1917\",\n fontSize: 10,\n textAnchor: \"end\",\n verticalAnchor: \"middle\",\n x: -10,\n })}\n tickValues={getTicks(yScaleTransformed, 5)}\n />\n <AxisBottom\n top={boundedHeight}\n scale={xScaleTransformed}\n tickLabelProps={() => ({\n fill: \"#1c1917\",\n fontSize: 11,\n textAnchor: \"middle\",\n })}\n tickValues={getTicks(xScaleTransformed, 5)}\n />\n {border && (\n <>\n <AxisTop top={0} scale={xScaleTransformed} tickValues={[]} />\n <AxisRight scale={yScaleTransformed} tickValues={[]} left={boundedWidth} />\n </>\n )}\n <Text textAnchor=\"middle\" verticalAnchor=\"end\" angle={-90} fontSize={15} y={boundedHeight / 2} x={0} dx={-50}>\n {leftAxisLabel}\n </Text>\n <Text textAnchor=\"middle\" verticalAnchor=\"start\" fontSize={15} y={boundedHeight} x={boundedWidth / 2} dy={50}>\n {bottomAxisLabel}\n </Text>\n </Group>\n <PointLabels\n pointData={pointData}\n xScaleTransformed={xScaleTransformed}\n yScaleTransformed={yScaleTransformed}\n boundedWidth={boundedWidth}\n boundedHeight={boundedHeight}\n margin={margin}\n />\n {backgroundGradient?.legend && (\n <GradientLegend\n backgroundGradient={backgroundGradient}\n boundedHeight={boundedHeight}\n barLeft={margin.left + boundedWidth + 25}\n marginTop={margin.top}\n />\n )}\n </svg>\n </div>\n )}\n </Box>\n </Stack>\n );\n};\n\nexport default ScatterPlotViewport;\n"],"names":["HOVER_GROW_MS","easeOutCubic","t","Math","pow","ScatterPlotViewport","size","margin","boundedWidth","boundedHeight","loading","pointData","animation","animationGroupSize","animationBuffer","xScale","yScale","zoom","selectMode","selectable","disableZoom","groupPointsAnchor","hoveredPoint","handleMouseMove","handleMouseLeave","onDisplayedPointsChange","onSelectionChange","onPointClicked","leftAxisLabel","bottomAxisLabel","border","originLine","backgroundGradient","crosshair","divRef","graphRef","useRef","canvasRef","hoverAmountRef","animatedKeysRef","showPointAnimation","setShowPointAnimation","useState","Boolean","useEffect","length","duration","buffer","groups","ceil","total","window","setTimeout","clearTimeout","lines","isDragging","x","y","dx","dy","dragStart","dragMove","dragEnd","completeSelection","useDragSelection","graphElement","current","handleWheel","event","preventDefault","handleTouchMove","handleTouchStart","addEventListener","passive","removeEventListener","xScaleTransformed","useMemo","rescaleX","transformMatrix","translateX","scaleX","yScaleTransformed","rescaleY","translateY","scaleY","groupedPoints","anchor","filter","point","metaData","previousHoveredKeysRef","Set","hoveredPointKeys","next","map","previous","every","key","has","currentDisplayedPoints","tx","ty","drawPoints","useCallback","xST","yST","canvas","context","getContext","prepareCanvas","colorLow","colorMid","colorHigh","colorScale","W","H","x0","y0","fraction","max","min","gradient","createLinearGradient","addColorStop","globalAlpha","opacity","fillStyle","fillRect","nonHovered","hovered","partitionPointsByHover","drawRenderedPoint","isHovered","transformedX","transformedY","isPointVisible","drawCanvasPoint","forEach","startedAt","performance","now","frame","requestAnimationFrame","step","cancelAnimationFrame","handlePointClick","surfaceCursor","handleSelectionEnd","onSurfaceMouseDown","undefined","onSurfaceMouseUp","onSurfaceMouseMove","onSurfaceMouseLeave","onSurfaceTouchStart","onSurfaceTouchEnd","onSurfaceTouchMove","onSurfaceWheel","localPoint","zoomDirection","deltaY","scale","previousDisplayedPoints","haveDisplayedPointsChanged","prevPoints","nextPoints","index","nextPoint","r","shape","color","jsx","Stack","position","Box","width","height","justifyContent","alignItems","CircularProgress","jsxs","userSelect","top","left","backgroundColor","Group","AnimatedPoints","Fragment","line","LinePath","curveBasis","datum","cursor","Crosshair","AxisLeft","fill","fontSize","textAnchor","verticalAnchor","getTicks","AxisBottom","AxisTop","AxisRight","Text","PointLabels","legend","GradientLegend"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"visualization.es48.js","sources":["../src/components/ViolinPlot/singleViolin.tsx"],"sourcesContent":["import { scaleLinear } from '@visx/scale';\nimport { max as d3max } from '@visx/vendor/d3-array';\nimport { curveBasis } from '@visx/curve';\nimport { line } from '@visx/shape';\nimport { range } from '@visx/vendor/d3-array';\nimport React, { useCallback, useMemo } from \"react\";\nimport CrossPlot from \"./crossPlot\";\nimport { calculateBoxStats, scottRule, silvermanRule, kernelDensityEstimator, gaussian, seededRandom } from \"./helpers\";\nimport { ViolinPoint, SingleViolinProps, TooltipData } from \"./types\";\nimport ViolinTooltip from \"./violinTooltip\";\nimport { Portal, useTooltip } from \"@visx/tooltip\";\n\nconst SingleViolin = <T,>({\n distribution,\n distIndex,\n violinProps,\n crossProps,\n valueScale,\n labelScale,\n offset,\n labels,\n disableCrossPlot,\n disableViolinPlot,\n horizontal,\n pointTooltipBody,\n onViolinClicked,\n onPointClicked\n}: SingleViolinProps<T>) => {\n\n const {\n tooltipData,\n tooltipLeft,\n tooltipTop,\n tooltipOpen,\n showTooltip,\n hideTooltip,\n } = useTooltip<TooltipData<T>>();\n\n const data = distribution.data.flatMap(d => d.value)\n\n //get all the stats for the box plot\n const { min, max, firstQuartile, thirdQuartile, median, outliers } = calculateBoxStats(data, crossProps?.outliers ?? \"all\");\n\n const outlierPoints: ViolinPoint<T>[] = distribution.data\n .filter(d => outliers.includes(d.value))\n .map(d => ({\n ...d,\n outlier: true\n }));\n const pointsNoOutliers: ViolinPoint<T>[] = distribution.data.filter(d => !outliers.includes(d.value))\n\n const violinData = useMemo(() => {\n const step = (max - min) / Math.max(100, data.length);\n const ticks = range(min, max, step);\n\n //bandwidth / binwidth for smoothing, based on user input\n const bandwidth = typeof violinProps?.bandwidth === \"number\"\n ? violinProps.bandwidth\n : typeof violinProps?.bandwidth === \"function\"\n ? violinProps.bandwidth(data)\n : violinProps?.bandwidth === \"scott\"\n ? scottRule(data)\n : silvermanRule(data);\n\n const kde = kernelDensityEstimator(gaussian(bandwidth), ticks);\n\n const densityData = kde(data);\n\n return [...densityData].sort((a, b) => a.value - b.value)\n }, [data, max, min, violinProps])\n\n const violinWidth = Math.min(labelScale.bandwidth(), 50);\n const boxWidth = crossProps?.medianWidth ?? violinWidth * .25;\n\n const violinTooltip: TooltipData<T> = useMemo(() => ({\n label: distribution.label,\n sampleSize: distribution.data.length,\n median: median.toFixed(2),\n firstQuartile: firstQuartile.toFixed(2),\n thirdQuartile: thirdQuartile.toFixed(2)\n }), [distribution.label, distribution.data.length, median, firstQuartile, thirdQuartile]);\n\n const handleMouseMove = useCallback((event: React.MouseEvent<SVGPathElement>, data: TooltipData<T>, point?: ViolinPoint<T>) => {\n showTooltip({\n tooltipData: point && pointTooltipBody ? { point: point } : data,\n tooltipLeft: event.pageX,\n tooltipTop: event.pageY,\n });\n }, [pointTooltipBody, showTooltip]);\n\n const handleViolinClick = () => {\n if (!onViolinClicked || !tooltipData) return;\n\n if (tooltipData) {\n onViolinClicked(distribution);\n }\n };\n\n const handlePointClick = (point: ViolinPoint<T>) => {\n if (!onPointClicked || !tooltipData) return;\n\n if (tooltipData) {\n onPointClicked(point);\n }\n };\n\n //center of each Violin\n const violinCenter = horizontal ? (labelScale(labels[distIndex]) ?? 0) + violinWidth / 2 : (labelScale(labels[distIndex]) ?? 0) + offset + labelScale.bandwidth() / 2;\n const widthScale = scaleLinear()\n .domain([0, d3max(violinData, d => Math.abs(d.count)) || 1])\n .range([0, violinWidth / 2]);\n\n //filter out nan values if any\n const filteredData = violinData.filter(d => d && d.count != null && d.value != null);\n\n //mirror the data so that both sides are drawn\n let points = [\n ...filteredData.map(d => ({\n x: violinCenter + (widthScale(d.count) as number),\n y: valueScale(d.value),\n })),\n ...filteredData.slice().reverse().map(d => ({\n x: violinCenter - (widthScale(d.count) as number),\n y: valueScale(d.value),\n }))\n ];\n\n // close the path at the second point instead of the first since points 0,1 are closer together\n if (points.length > 2) {\n const modifiedPoints = points.slice(1);\n modifiedPoints.push(points[0]);\n modifiedPoints.push(points[1]);\n points = modifiedPoints;\n }\n\n const violinPath = line<{ x: number; y: number }>()\n .x(d => horizontal ? d.y : d.x)\n .y(d => horizontal ? d.x : d.y)\n .curve(curveBasis)(points) ?? null;\n\n return (\n <React.Fragment key={`frag-${distIndex}`}>\n {\n //display plots if enough data provided\n <g\n key={`group-${distIndex}`}\n onMouseLeave={hideTooltip}\n transform={horizontal ? `translate(${offset}, 0)` : `translate(0, 0)`}\n >\n {distribution.data.length >= (violinProps?.pointDisplayThreshold ?? 3) && !disableViolinPlot && violinPath && (\n <>\n <path\n d={violinPath}\n fill={distribution.violinColor ?? 'none'}\n fillOpacity={distribution.opacity ?? 0.3}\n stroke={distribution.violinColor ?? 'black'}\n strokeOpacity={distribution.opacity ?? 1}\n strokeWidth={\n tooltipData === violinTooltip\n ? (violinProps?.stroke ?? 1) + 1\n : violinProps?.stroke ?? 1\n }\n pointerEvents=\"all\"\n onMouseMove={(e) => handleMouseMove(e, violinTooltip)}\n onClick={handleViolinClick}\n />\n </>\n )\n }\n {distribution.data.length >= (violinProps?.pointDisplayThreshold ?? 3) && !disableCrossPlot &&\n <CrossPlot\n crossProps={crossProps}\n left={horizontal ? 0 : violinCenter}\n top={horizontal ? violinCenter : 0}\n median={median}\n firstQuartile={firstQuartile}\n thirdQuartile={thirdQuartile}\n valueScale={valueScale}\n medianWidth={boxWidth}\n tooltipData={tooltipData ?? {}}\n handleMouseMove={handleMouseMove}\n handleCrossClick={handleViolinClick}\n disableViolinPlot={disableViolinPlot}\n tooltip={violinTooltip}\n horizontal={horizontal}\n />\n }\n {/* Outliers */}\n {outlierPoints.map((outlier, index) => {\n const vertcy = valueScale(outlier.value);\n const horizoncx = valueScale(outlier.value)\n const cx = horizontal ? horizoncx : violinCenter\n const cy = horizontal ? violinCenter : vertcy\n\n const pointTooltip = {\n outlier: true,\n label: distribution.label,\n value: outlier.value.toFixed(2),\n };\n\n const isHighlighted = pointTooltipBody\n ? tooltipData?.point === outlier :\n tooltipData?.label === pointTooltip.label &&\n tooltipData?.value === pointTooltip.value;\n\n const radius = outlier.radius ?? 4\n\n return (\n <circle\n key={`outlier-${index}`}\n cx={cx}\n cy={cy}\n r={isHighlighted ? radius + 1 : radius}\n stroke={isHighlighted ? \"#000000\" : (outlier.stroke ?? \"none\")}\n fill={outlier.color ?? distribution.violinColor ?? \"#000000\"}\n opacity={outlier.opacity ?? distribution.opacity ?? 1}\n pointerEvents=\"all\"\n onMouseMove={(e) => handleMouseMove(e, pointTooltip, outlier)}\n onClick={() => handlePointClick(outlier)}\n />\n )\n })}\n {/* show all poionts for each distribution */}\n {distribution.data.length >= (violinProps?.pointDisplayThreshold ?? 3) && violinProps?.showAllPoints &&\n pointsNoOutliers.map((point: ViolinPoint<T>, index: number) => {\n\n const vertcy = valueScale(point.value);\n const horizoncx = valueScale(point.value)\n\n const jitterAmount = violinProps?.jitter ?? 0;\n const seed = `${distribution.label}-${point}-${index}`;\n const jitterX = jitterAmount > 0\n ? (seededRandom(seed) - 0.5) * 2 * jitterAmount\n : 0;\n\n const cx = horizontal ? horizoncx : violinCenter + jitterX;\n const cy = horizontal ? violinCenter + jitterX : vertcy\n\n const pointTooltip = {\n label: distribution.label,\n value: point.value.toFixed(2),\n };\n\n const isHighlighted = pointTooltipBody\n ? tooltipData?.point === point :\n tooltipData?.label === pointTooltip.label &&\n tooltipData?.value === pointTooltip.value;\n\n const r = point.radius ?? 2\n const radius = isHighlighted ? r + 1 : r;\n\n return (\n <path\n key={`${distIndex}-point-${index}`}\n d={`M ${cx},${cy} m -${radius},0 a ${radius},${radius} 0 1,0 ${2 * radius},0 a ${radius},${radius} 0 1,0 -${2 * radius},0`}\n stroke={isHighlighted ? \"black\" : (point.stroke ?? \"none\")}\n fill={point.color ?? distribution.violinColor ?? \"black\"}\n opacity={point.opacity ?? distribution.opacity ?? 1}\n pointerEvents=\"all\"\n onMouseMove={(e) => handleMouseMove(e, pointTooltip, point)}\n onClick={() => handlePointClick(point)}\n />\n );\n })\n }\n {/* display points if data points are less than threshold (3) */}\n {distribution.data.length < (violinProps?.pointDisplayThreshold ?? 3) &&\n distribution.data.map((point: ViolinPoint<T>, index: number) => {\n const vertcy = valueScale(point.value);\n const horizoncx = valueScale(point.value)\n const cx = horizontal ? horizoncx : violinCenter\n const cy = horizontal ? violinCenter : vertcy\n const radius = point.radius ?? 2;\n\n const pointTooltip = {\n label: distribution.label,\n value: point.value.toFixed(2),\n };\n\n const isHighlighted = pointTooltipBody\n ? tooltipData?.point === point :\n tooltipData?.label === pointTooltip.label &&\n tooltipData?.value === pointTooltip.value;\n\n return (\n <circle\n key={`thresh-${index}`}\n cx={cx}\n cy={cy}\n r={isHighlighted ? radius + 1 : radius}\n stroke={isHighlighted ? \"black\" : (point.stroke ?? \"none\")}\n fill={point.color ?? distribution.violinColor ?? \"black\"}\n opacity={point.opacity ?? distribution.opacity ?? 1}\n pointerEvents=\"all\"\n onMouseMove={(e) => handleMouseMove(e, pointTooltip, point)}\n onClick={() => handlePointClick(point)}\n />\n );\n })}\n\n </g>\n }\n {tooltipOpen && tooltipData && (\n <Portal>\n <ViolinTooltip\n left={tooltipLeft ?? 0}\n top={tooltipTop ?? 0}\n data={tooltipData}\n open={tooltipOpen}\n key={`${tooltipLeft}-${tooltipTop}`}\n pointTooltipBody={pointTooltipBody}\n />\n </Portal>\n )}\n </React.Fragment>\n )\n}\n\nexport default SingleViolin;"],"names":["SingleViolin","distribution","distIndex","violinProps","crossProps","valueScale","labelScale","offset","labels","disableCrossPlot","disableViolinPlot","horizontal","pointTooltipBody","onViolinClicked","onPointClicked","tooltipData","tooltipLeft","tooltipTop","tooltipOpen","showTooltip","hideTooltip","useTooltip","data","flatMap","d","value","min","max","firstQuartile","thirdQuartile","median","outliers","calculateBoxStats","outlierPoints","filter","includes","map","outlier","pointsNoOutliers","violinData","useMemo","step","Math","length","ticks","range","bandwidth","scottRule","silvermanRule","kernelDensityEstimator","gaussian","sort","a","b","violinWidth","boxWidth","medianWidth","violinTooltip","label","sampleSize","toFixed","handleMouseMove","useCallback","event","point","pageX","pageY","handleViolinClick","handlePointClick","violinCenter","widthScale","scaleLinear","domain","d3max","abs","count","filteredData","points","x","y","slice","reverse","modifiedPoints","push","violinPath","line","curve","curveBasis","jsxs","React","pointDisplayThreshold","jsx","Fragment","violinColor","opacity","stroke","e","CrossPlot","index","vertcy","horizoncx","cx","cy","pointTooltip","isHighlighted","radius","color","showAllPoints","jitterAmount","jitter","seed","jitterX","seededRandom","r","Portal","ViolinTooltip"],"mappings":"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"}
|
|
@@ -1,44 +1,61 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { frame as
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
class v extends
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
import { jsx as m } from "react/jsx-runtime";
|
|
2
|
+
import { useContext as u, Component as l } from "react";
|
|
3
|
+
import { usePresence as c } from "./visualization.es222.js";
|
|
4
|
+
import { LayoutGroupContext as f } from "./visualization.es223.js";
|
|
5
|
+
import { SwitchLayoutGroupContext as d } from "./visualization.es225.js";
|
|
6
|
+
import { frame as h } from "./visualization.es334.js";
|
|
7
|
+
import { microtask as y } from "./visualization.es373.js";
|
|
8
|
+
import { globalProjectionState as g } from "./visualization.es469.js";
|
|
9
|
+
let i = !1;
|
|
10
|
+
class v extends l {
|
|
11
|
+
/**
|
|
12
|
+
* This only mounts projection nodes for components that
|
|
13
|
+
* need measuring, we might want to do it for all components
|
|
14
|
+
* in order to incorporate transforms
|
|
15
|
+
*/
|
|
16
|
+
componentDidMount() {
|
|
17
|
+
const { visualElement: t, layoutGroup: o, switchLayoutGroup: e, layoutId: s } = this.props, { projection: n } = t;
|
|
18
|
+
n && (o.group && o.group.add(n), e && e.register && s && e.register(n), i && n.root.didUpdate(), n.addEventListener("animationComplete", () => {
|
|
19
|
+
this.safeToRemove();
|
|
20
|
+
}), n.setOptions({
|
|
21
|
+
...n.options,
|
|
22
|
+
layoutDependency: this.props.layoutDependency,
|
|
23
|
+
onExitComplete: () => this.safeToRemove()
|
|
24
|
+
})), g.hasEverUpdated = !0;
|
|
13
25
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
26
|
+
getSnapshotBeforeUpdate(t) {
|
|
27
|
+
const { layoutDependency: o, visualElement: e, drag: s, isPresent: n } = this.props, { projection: r } = e;
|
|
28
|
+
return r && (r.isPresent = n, t.layoutDependency !== o && r.setOptions({
|
|
29
|
+
...r.options,
|
|
30
|
+
layoutDependency: o
|
|
31
|
+
}), i = !0, s || t.layoutDependency !== o || o === void 0 || t.isPresent !== n ? r.willUpdate() : this.safeToRemove(), t.isPresent !== n && (n ? r.promote() : r.relegate() || h.postRender(() => {
|
|
32
|
+
const p = r.getStack();
|
|
33
|
+
(!p || !p.members.length) && this.safeToRemove();
|
|
34
|
+
}))), null;
|
|
19
35
|
}
|
|
20
|
-
|
|
21
|
-
const {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
onMove: o(i),
|
|
26
|
-
onEnd: (a, d) => {
|
|
27
|
-
delete this.session, s && r.postRender(() => s(a, d));
|
|
28
|
-
}
|
|
29
|
-
};
|
|
36
|
+
componentDidUpdate() {
|
|
37
|
+
const { visualElement: t, layoutAnchor: o } = this.props, { projection: e } = t;
|
|
38
|
+
e && (e.options.layoutAnchor = o, e.root.didUpdate(), y.postRender(() => {
|
|
39
|
+
!e.currentAnimation && e.isLead() && this.safeToRemove();
|
|
40
|
+
}));
|
|
30
41
|
}
|
|
31
|
-
|
|
32
|
-
|
|
42
|
+
componentWillUnmount() {
|
|
43
|
+
const { visualElement: t, layoutGroup: o, switchLayoutGroup: e } = this.props, { projection: s } = t;
|
|
44
|
+
i = !0, s && (s.scheduleCheckAfterUnmount(), o && o.group && o.group.remove(s), e && e.deregister && e.deregister(s));
|
|
33
45
|
}
|
|
34
|
-
|
|
35
|
-
|
|
46
|
+
safeToRemove() {
|
|
47
|
+
const { safeToRemove: t } = this.props;
|
|
48
|
+
t && t();
|
|
36
49
|
}
|
|
37
|
-
|
|
38
|
-
|
|
50
|
+
render() {
|
|
51
|
+
return null;
|
|
39
52
|
}
|
|
40
53
|
}
|
|
54
|
+
function E(a) {
|
|
55
|
+
const [t, o] = c(), e = u(f);
|
|
56
|
+
return m(v, { ...a, layoutGroup: e, switchLayoutGroup: u(d), isPresent: t, safeToRemove: o });
|
|
57
|
+
}
|
|
41
58
|
export {
|
|
42
|
-
|
|
59
|
+
E as MeasureLayout
|
|
43
60
|
};
|
|
44
61
|
//# sourceMappingURL=visualization.es480.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es480.js","sources":["../../../node_modules/.pnpm/framer-motion@12.38.0_@emotion+is-prop-valid@1.4.0_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/framer-motion/dist/es/
|
|
1
|
+
{"version":3,"file":"visualization.es480.js","sources":["../../../node_modules/.pnpm/framer-motion@12.38.0_@emotion+is-prop-valid@1.4.0_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs"],"sourcesContent":["\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { globalProjectionState, frame, microtask } from 'motion-dom';\nimport { useContext, Component } from 'react';\nimport { usePresence } from '../../../components/AnimatePresence/use-presence.mjs';\nimport { LayoutGroupContext } from '../../../context/LayoutGroupContext.mjs';\nimport { SwitchLayoutGroupContext } from '../../../context/SwitchLayoutGroupContext.mjs';\n\n/**\n * Track whether we've taken any snapshots yet. If not,\n * we can safely skip notification of didUpdate.\n *\n * Difficult to capture in a test but to prevent flickering\n * we must set this to true either on update or unmount.\n * Running `next-env/layout-id` in Safari will show this behaviour if broken.\n */\nlet hasTakenAnySnapshot = false;\nclass MeasureLayoutWithContext extends Component {\n /**\n * This only mounts projection nodes for components that\n * need measuring, we might want to do it for all components\n * in order to incorporate transforms\n */\n componentDidMount() {\n const { visualElement, layoutGroup, switchLayoutGroup, layoutId } = this.props;\n const { projection } = visualElement;\n if (projection) {\n if (layoutGroup.group)\n layoutGroup.group.add(projection);\n if (switchLayoutGroup && switchLayoutGroup.register && layoutId) {\n switchLayoutGroup.register(projection);\n }\n if (hasTakenAnySnapshot) {\n projection.root.didUpdate();\n }\n projection.addEventListener(\"animationComplete\", () => {\n this.safeToRemove();\n });\n projection.setOptions({\n ...projection.options,\n layoutDependency: this.props.layoutDependency,\n onExitComplete: () => this.safeToRemove(),\n });\n }\n globalProjectionState.hasEverUpdated = true;\n }\n getSnapshotBeforeUpdate(prevProps) {\n const { layoutDependency, visualElement, drag, isPresent } = this.props;\n const { projection } = visualElement;\n if (!projection)\n return null;\n /**\n * TODO: We use this data in relegate to determine whether to\n * promote a previous element. There's no guarantee its presence data\n * will have updated by this point - if a bug like this arises it will\n * have to be that we markForRelegation and then find a new lead some other way,\n * perhaps in didUpdate\n */\n projection.isPresent = isPresent;\n if (prevProps.layoutDependency !== layoutDependency) {\n projection.setOptions({\n ...projection.options,\n layoutDependency,\n });\n }\n hasTakenAnySnapshot = true;\n if (drag ||\n prevProps.layoutDependency !== layoutDependency ||\n layoutDependency === undefined ||\n prevProps.isPresent !== isPresent) {\n projection.willUpdate();\n }\n else {\n this.safeToRemove();\n }\n if (prevProps.isPresent !== isPresent) {\n if (isPresent) {\n projection.promote();\n }\n else if (!projection.relegate()) {\n /**\n * If there's another stack member taking over from this one,\n * it's in charge of the exit animation and therefore should\n * be in charge of the safe to remove. Otherwise we call it here.\n */\n frame.postRender(() => {\n const stack = projection.getStack();\n if (!stack || !stack.members.length) {\n this.safeToRemove();\n }\n });\n }\n }\n return null;\n }\n componentDidUpdate() {\n const { visualElement, layoutAnchor } = this.props;\n const { projection } = visualElement;\n if (projection) {\n projection.options.layoutAnchor = layoutAnchor;\n projection.root.didUpdate();\n microtask.postRender(() => {\n if (!projection.currentAnimation && projection.isLead()) {\n this.safeToRemove();\n }\n });\n }\n }\n componentWillUnmount() {\n const { visualElement, layoutGroup, switchLayoutGroup: promoteContext, } = this.props;\n const { projection } = visualElement;\n hasTakenAnySnapshot = true;\n if (projection) {\n projection.scheduleCheckAfterUnmount();\n if (layoutGroup && layoutGroup.group)\n layoutGroup.group.remove(projection);\n if (promoteContext && promoteContext.deregister)\n promoteContext.deregister(projection);\n }\n }\n safeToRemove() {\n const { safeToRemove } = this.props;\n safeToRemove && safeToRemove();\n }\n render() {\n return null;\n }\n}\nfunction MeasureLayout(props) {\n const [isPresent, safeToRemove] = usePresence();\n const layoutGroup = useContext(LayoutGroupContext);\n return (jsx(MeasureLayoutWithContext, { ...props, layoutGroup: layoutGroup, switchLayoutGroup: useContext(SwitchLayoutGroupContext), isPresent: isPresent, safeToRemove: safeToRemove }));\n}\n\nexport { MeasureLayout };\n//# sourceMappingURL=MeasureLayout.mjs.map\n"],"names":["hasTakenAnySnapshot","MeasureLayoutWithContext","Component","visualElement","layoutGroup","switchLayoutGroup","layoutId","projection","globalProjectionState","prevProps","layoutDependency","drag","isPresent","frame","stack","layoutAnchor","microtask","promoteContext","safeToRemove","MeasureLayout","props","usePresence","useContext","LayoutGroupContext","jsx","SwitchLayoutGroupContext"],"mappings":";;;;;;;;AAgBA,IAAIA,IAAsB;AAC1B,MAAMC,UAAiCC,EAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAM7C,oBAAoB;AAChB,UAAM,EAAE,eAAAC,GAAe,aAAAC,GAAa,mBAAAC,GAAmB,UAAAC,EAAQ,IAAK,KAAK,OACnE,EAAE,YAAAC,EAAU,IAAKJ;AACvB,IAAII,MACIH,EAAY,SACZA,EAAY,MAAM,IAAIG,CAAU,GAChCF,KAAqBA,EAAkB,YAAYC,KACnDD,EAAkB,SAASE,CAAU,GAErCP,KACAO,EAAW,KAAK,UAAS,GAE7BA,EAAW,iBAAiB,qBAAqB,MAAM;AACnD,WAAK,aAAY;AAAA,IACrB,CAAC,GACDA,EAAW,WAAW;AAAA,MAClB,GAAGA,EAAW;AAAA,MACd,kBAAkB,KAAK,MAAM;AAAA,MAC7B,gBAAgB,MAAM,KAAK,aAAY;AAAA,IACvD,CAAa,IAELC,EAAsB,iBAAiB;AAAA,EAC3C;AAAA,EACA,wBAAwBC,GAAW;AAC/B,UAAM,EAAE,kBAAAC,GAAkB,eAAAP,GAAe,MAAAQ,GAAM,WAAAC,EAAS,IAAK,KAAK,OAC5D,EAAE,YAAAL,EAAU,IAAKJ;AACvB,WAAKI,MASLA,EAAW,YAAYK,GACnBH,EAAU,qBAAqBC,KAC/BH,EAAW,WAAW;AAAA,MAClB,GAAGA,EAAW;AAAA,MACd,kBAAAG;AAAA,IAChB,CAAa,GAELV,IAAsB,IAClBW,KACAF,EAAU,qBAAqBC,KAC/BA,MAAqB,UACrBD,EAAU,cAAcG,IACxBL,EAAW,WAAU,IAGrB,KAAK,aAAY,GAEjBE,EAAU,cAAcG,MACpBA,IACAL,EAAW,QAAO,IAEZA,EAAW,cAMjBM,EAAM,WAAW,MAAM;AACnB,YAAMC,IAAQP,EAAW,SAAQ;AACjC,OAAI,CAACO,KAAS,CAACA,EAAM,QAAQ,WACzB,KAAK,aAAY;AAAA,IAEzB,CAAC,KAGF;AAAA,EACX;AAAA,EACA,qBAAqB;AACjB,UAAM,EAAE,eAAAX,GAAe,cAAAY,EAAY,IAAK,KAAK,OACvC,EAAE,YAAAR,EAAU,IAAKJ;AACvB,IAAII,MACAA,EAAW,QAAQ,eAAeQ,GAClCR,EAAW,KAAK,UAAS,GACzBS,EAAU,WAAW,MAAM;AACvB,MAAI,CAACT,EAAW,oBAAoBA,EAAW,OAAM,KACjD,KAAK,aAAY;AAAA,IAEzB,CAAC;AAAA,EAET;AAAA,EACA,uBAAuB;AACnB,UAAM,EAAE,eAAAJ,GAAe,aAAAC,GAAa,mBAAmBa,EAAc,IAAM,KAAK,OAC1E,EAAE,YAAAV,EAAU,IAAKJ;AACvB,IAAAH,IAAsB,IAClBO,MACAA,EAAW,0BAAyB,GAChCH,KAAeA,EAAY,SAC3BA,EAAY,MAAM,OAAOG,CAAU,GACnCU,KAAkBA,EAAe,cACjCA,EAAe,WAAWV,CAAU;AAAA,EAEhD;AAAA,EACA,eAAe;AACX,UAAM,EAAE,cAAAW,MAAiB,KAAK;AAC9B,IAAAA,KAAgBA,EAAY;AAAA,EAChC;AAAA,EACA,SAAS;AACL,WAAO;AAAA,EACX;AACJ;AACA,SAASC,EAAcC,GAAO;AAC1B,QAAM,CAACR,GAAWM,CAAY,IAAIG,EAAW,GACvCjB,IAAckB,EAAWC,CAAkB;AACjD,SAAQC,EAAIvB,GAA0B,EAAE,GAAGmB,GAAO,aAAahB,GAAa,mBAAmBkB,EAAWG,CAAwB,GAAG,WAAWb,GAAW,cAAcM,EAAY,CAAE;AAC3L;","x_google_ignoreList":[0]}
|
|
@@ -1,61 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { usePresence as c } from "./visualization.es212.js";
|
|
4
|
-
import { LayoutGroupContext as f } from "./visualization.es213.js";
|
|
5
|
-
import { SwitchLayoutGroupContext as d } from "./visualization.es215.js";
|
|
6
|
-
import { frame as h } from "./visualization.es335.js";
|
|
7
|
-
import { microtask as y } from "./visualization.es374.js";
|
|
8
|
-
import { globalProjectionState as g } from "./visualization.es470.js";
|
|
9
|
-
let i = !1;
|
|
10
|
-
class v extends l {
|
|
11
|
-
/**
|
|
12
|
-
* This only mounts projection nodes for components that
|
|
13
|
-
* need measuring, we might want to do it for all components
|
|
14
|
-
* in order to incorporate transforms
|
|
15
|
-
*/
|
|
16
|
-
componentDidMount() {
|
|
17
|
-
const { visualElement: t, layoutGroup: o, switchLayoutGroup: e, layoutId: s } = this.props, { projection: n } = t;
|
|
18
|
-
n && (o.group && o.group.add(n), e && e.register && s && e.register(n), i && n.root.didUpdate(), n.addEventListener("animationComplete", () => {
|
|
19
|
-
this.safeToRemove();
|
|
20
|
-
}), n.setOptions({
|
|
21
|
-
...n.options,
|
|
22
|
-
layoutDependency: this.props.layoutDependency,
|
|
23
|
-
onExitComplete: () => this.safeToRemove()
|
|
24
|
-
})), g.hasEverUpdated = !0;
|
|
25
|
-
}
|
|
26
|
-
getSnapshotBeforeUpdate(t) {
|
|
27
|
-
const { layoutDependency: o, visualElement: e, drag: s, isPresent: n } = this.props, { projection: r } = e;
|
|
28
|
-
return r && (r.isPresent = n, t.layoutDependency !== o && r.setOptions({
|
|
29
|
-
...r.options,
|
|
30
|
-
layoutDependency: o
|
|
31
|
-
}), i = !0, s || t.layoutDependency !== o || o === void 0 || t.isPresent !== n ? r.willUpdate() : this.safeToRemove(), t.isPresent !== n && (n ? r.promote() : r.relegate() || h.postRender(() => {
|
|
32
|
-
const p = r.getStack();
|
|
33
|
-
(!p || !p.members.length) && this.safeToRemove();
|
|
34
|
-
}))), null;
|
|
35
|
-
}
|
|
36
|
-
componentDidUpdate() {
|
|
37
|
-
const { visualElement: t, layoutAnchor: o } = this.props, { projection: e } = t;
|
|
38
|
-
e && (e.options.layoutAnchor = o, e.root.didUpdate(), y.postRender(() => {
|
|
39
|
-
!e.currentAnimation && e.isLead() && this.safeToRemove();
|
|
40
|
-
}));
|
|
41
|
-
}
|
|
42
|
-
componentWillUnmount() {
|
|
43
|
-
const { visualElement: t, layoutGroup: o, switchLayoutGroup: e } = this.props, { projection: s } = t;
|
|
44
|
-
i = !0, s && (s.scheduleCheckAfterUnmount(), o && o.group && o.group.remove(s), e && e.deregister && e.deregister(s));
|
|
45
|
-
}
|
|
46
|
-
safeToRemove() {
|
|
47
|
-
const { safeToRemove: t } = this.props;
|
|
48
|
-
t && t();
|
|
49
|
-
}
|
|
50
|
-
render() {
|
|
51
|
-
return null;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
function E(a) {
|
|
55
|
-
const [t, o] = c(), e = u(f);
|
|
56
|
-
return m(v, { ...a, layoutGroup: e, switchLayoutGroup: u(d), isPresent: t, safeToRemove: o });
|
|
1
|
+
function n(o, t) {
|
|
2
|
+
return t ? `${o}. For more information and steps for solving, visit https://motion.dev/troubleshooting/${t}` : o;
|
|
57
3
|
}
|
|
58
4
|
export {
|
|
59
|
-
|
|
5
|
+
n as formatErrorMessage
|
|
60
6
|
};
|
|
61
7
|
//# sourceMappingURL=visualization.es481.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es481.js","sources":["../../../node_modules/.pnpm/
|
|
1
|
+
{"version":3,"file":"visualization.es481.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/format-error-message.mjs"],"sourcesContent":["function formatErrorMessage(message, errorCode) {\n return errorCode\n ? `${message}. For more information and steps for solving, visit https://motion.dev/troubleshooting/${errorCode}`\n : message;\n}\n\nexport { formatErrorMessage };\n//# sourceMappingURL=format-error-message.mjs.map\n"],"names":["formatErrorMessage","message","errorCode"],"mappings":"AAAA,SAASA,EAAmBC,GAASC,GAAW;AAC5C,SAAOA,IACD,GAAGD,CAAO,0FAA0FC,CAAS,KAC7GD;AACV;","x_google_ignoreList":[0]}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
}
|
|
1
|
+
import { backIn as o } from "./visualization.es483.js";
|
|
2
|
+
const c = (t) => t >= 1 ? 1 : (t *= 2) < 1 ? 0.5 * o(t) : 0.5 * (2 - Math.pow(2, -10 * (t - 1)));
|
|
4
3
|
export {
|
|
5
|
-
|
|
4
|
+
c as anticipate
|
|
6
5
|
};
|
|
7
6
|
//# sourceMappingURL=visualization.es482.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es482.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/
|
|
1
|
+
{"version":3,"file":"visualization.es482.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/anticipate.mjs"],"sourcesContent":["import { backIn } from './back.mjs';\n\nconst anticipate = (p) => p >= 1\n ? 1\n : (p *= 2) < 1\n ? 0.5 * backIn(p)\n : 0.5 * (2 - Math.pow(2, -10 * (p - 1)));\n\nexport { anticipate };\n//# sourceMappingURL=anticipate.mjs.map\n"],"names":["anticipate","p","backIn"],"mappings":";AAEK,MAACA,IAAa,CAACC,MAAMA,KAAK,IACzB,KACCA,KAAK,KAAK,IACP,MAAMC,EAAOD,CAAC,IACd,OAAO,IAAI,KAAK,IAAI,GAAG,OAAOA,IAAI,EAAE;","x_google_ignoreList":[0]}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { cubicBezier as r } from "./visualization.es484.js";
|
|
2
|
+
import { mirrorEasing as o } from "./visualization.es485.js";
|
|
3
|
+
import { reverseEasing as t } from "./visualization.es486.js";
|
|
4
|
+
const c = /* @__PURE__ */ r(0.33, 1.53, 0.69, 0.99), i = /* @__PURE__ */ t(c), s = /* @__PURE__ */ o(i);
|
|
3
5
|
export {
|
|
4
|
-
|
|
6
|
+
i as backIn,
|
|
7
|
+
s as backInOut,
|
|
8
|
+
c as backOut
|
|
5
9
|
};
|
|
6
10
|
//# sourceMappingURL=visualization.es483.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es483.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/
|
|
1
|
+
{"version":3,"file":"visualization.es483.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/back.mjs"],"sourcesContent":["import { cubicBezier } from './cubic-bezier.mjs';\nimport { mirrorEasing } from './modifiers/mirror.mjs';\nimport { reverseEasing } from './modifiers/reverse.mjs';\n\nconst backOut = /*@__PURE__*/ cubicBezier(0.33, 1.53, 0.69, 0.99);\nconst backIn = /*@__PURE__*/ reverseEasing(backOut);\nconst backInOut = /*@__PURE__*/ mirrorEasing(backIn);\n\nexport { backIn, backInOut, backOut };\n//# sourceMappingURL=back.mjs.map\n"],"names":["backOut","cubicBezier","backIn","reverseEasing","backInOut","mirrorEasing"],"mappings":";;;AAIK,MAACA,IAAwB,gBAAAC,EAAY,MAAM,MAAM,MAAM,IAAI,GAC1DC,IAAuB,gBAAAC,EAAcH,CAAO,GAC5CI,IAA0B,gBAAAC,EAAaH,CAAM;","x_google_ignoreList":[0]}
|
|
@@ -1,10 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { noop as b } from "./visualization.es306.js";
|
|
2
|
+
const s = (n, i, r) => (((1 - 3 * r + 3 * i) * n + (3 * r - 6 * i)) * n + 3 * i) * n, f = 1e-7, l = 12;
|
|
3
|
+
function a(n, i, r, c, o) {
|
|
4
|
+
let e, t, u = 0;
|
|
5
|
+
do
|
|
6
|
+
t = i + (r - i) / 2, e = s(t, c, o) - n, e > 0 ? r = t : i = t;
|
|
7
|
+
while (Math.abs(e) > f && ++u < l);
|
|
8
|
+
return t;
|
|
9
|
+
}
|
|
10
|
+
function d(n, i, r, c) {
|
|
11
|
+
if (n === i && r === c)
|
|
12
|
+
return b;
|
|
13
|
+
const o = (e) => a(e, 0, 1, n, r);
|
|
14
|
+
return (e) => e === 0 || e === 1 ? e : s(o(e), i, c);
|
|
15
|
+
}
|
|
5
16
|
export {
|
|
6
|
-
|
|
7
|
-
s as backInOut,
|
|
8
|
-
c as backOut
|
|
17
|
+
d as cubicBezier
|
|
9
18
|
};
|
|
10
19
|
//# sourceMappingURL=visualization.es484.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es484.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/
|
|
1
|
+
{"version":3,"file":"visualization.es484.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/cubic-bezier.mjs"],"sourcesContent":["import { noop } from '../noop.mjs';\n\n/*\n Bezier function generator\n This has been modified from Gaëtan Renaudeau's BezierEasing\n https://github.com/gre/bezier-easing/blob/master/src/index.js\n https://github.com/gre/bezier-easing/blob/master/LICENSE\n \n I've removed the newtonRaphsonIterate algo because in benchmarking it\n wasn't noticeably faster than binarySubdivision, indeed removing it\n usually improved times, depending on the curve.\n I also removed the lookup table, as for the added bundle size and loop we're\n only cutting ~4 or so subdivision iterations. I bumped the max iterations up\n to 12 to compensate and this still tended to be faster for no perceivable\n loss in accuracy.\n Usage\n const easeOut = cubicBezier(.17,.67,.83,.67);\n const x = easeOut(0.5); // returns 0.627...\n*/\n// Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.\nconst calcBezier = (t, a1, a2) => (((1.0 - 3.0 * a2 + 3.0 * a1) * t + (3.0 * a2 - 6.0 * a1)) * t + 3.0 * a1) *\n t;\nconst subdivisionPrecision = 0.0000001;\nconst subdivisionMaxIterations = 12;\nfunction binarySubdivide(x, lowerBound, upperBound, mX1, mX2) {\n let currentX;\n let currentT;\n let i = 0;\n do {\n currentT = lowerBound + (upperBound - lowerBound) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - x;\n if (currentX > 0.0) {\n upperBound = currentT;\n }\n else {\n lowerBound = currentT;\n }\n } while (Math.abs(currentX) > subdivisionPrecision &&\n ++i < subdivisionMaxIterations);\n return currentT;\n}\nfunction cubicBezier(mX1, mY1, mX2, mY2) {\n // If this is a linear gradient, return linear easing\n if (mX1 === mY1 && mX2 === mY2)\n return noop;\n const getTForX = (aX) => binarySubdivide(aX, 0, 1, mX1, mX2);\n // If animation is at start/end, return t without easing\n return (t) => t === 0 || t === 1 ? t : calcBezier(getTForX(t), mY1, mY2);\n}\n\nexport { cubicBezier };\n//# sourceMappingURL=cubic-bezier.mjs.map\n"],"names":["calcBezier","t","a1","a2","subdivisionPrecision","subdivisionMaxIterations","binarySubdivide","x","lowerBound","upperBound","mX1","mX2","currentX","currentT","i","cubicBezier","mY1","mY2","noop","getTForX","aX"],"mappings":";AAoBA,MAAMA,IAAa,CAACC,GAAGC,GAAIC,SAAU,IAAM,IAAMA,IAAK,IAAMD,KAAMD,KAAK,IAAME,IAAK,IAAMD,MAAOD,IAAI,IAAMC,KACrGD,GACEG,IAAuB,MACvBC,IAA2B;AACjC,SAASC,EAAgBC,GAAGC,GAAYC,GAAYC,GAAKC,GAAK;AAC1D,MAAIC,GACAC,GACAC,IAAI;AACR;AACI,IAAAD,IAAWL,KAAcC,IAAaD,KAAc,GACpDI,IAAWZ,EAAWa,GAAUH,GAAKC,CAAG,IAAIJ,GACxCK,IAAW,IACXH,IAAaI,IAGbL,IAAaK;AAAA,SAEZ,KAAK,IAAID,CAAQ,IAAIR,KAC1B,EAAEU,IAAIT;AACV,SAAOQ;AACX;AACA,SAASE,EAAYL,GAAKM,GAAKL,GAAKM,GAAK;AAErC,MAAIP,MAAQM,KAAOL,MAAQM;AACvB,WAAOC;AACX,QAAMC,IAAW,CAACC,MAAOd,EAAgBc,GAAI,GAAG,GAAGV,GAAKC,CAAG;AAE3D,SAAO,CAACV,MAAMA,MAAM,KAAKA,MAAM,IAAIA,IAAID,EAAWmB,EAASlB,CAAC,GAAGe,GAAKC,CAAG;AAC3E;","x_google_ignoreList":[0]}
|
|
@@ -1,19 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
const s = (n, i, r) => (((1 - 3 * r + 3 * i) * n + (3 * r - 6 * i)) * n + 3 * i) * n, f = 1e-7, l = 12;
|
|
3
|
-
function a(n, i, r, c, o) {
|
|
4
|
-
let e, t, u = 0;
|
|
5
|
-
do
|
|
6
|
-
t = i + (r - i) / 2, e = s(t, c, o) - n, e > 0 ? r = t : i = t;
|
|
7
|
-
while (Math.abs(e) > f && ++u < l);
|
|
8
|
-
return t;
|
|
9
|
-
}
|
|
10
|
-
function d(n, i, r, c) {
|
|
11
|
-
if (n === i && r === c)
|
|
12
|
-
return b;
|
|
13
|
-
const o = (e) => a(e, 0, 1, n, r);
|
|
14
|
-
return (e) => e === 0 || e === 1 ? e : s(o(e), i, c);
|
|
15
|
-
}
|
|
1
|
+
const t = (o) => (r) => r <= 0.5 ? o(2 * r) / 2 : (2 - o(2 * (1 - r))) / 2;
|
|
16
2
|
export {
|
|
17
|
-
|
|
3
|
+
t as mirrorEasing
|
|
18
4
|
};
|
|
19
5
|
//# sourceMappingURL=visualization.es485.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es485.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/
|
|
1
|
+
{"version":3,"file":"visualization.es485.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/modifiers/mirror.mjs"],"sourcesContent":["// Accepts an easing function and returns a new one that outputs mirrored values for\n// the second half of the animation. Turns easeIn into easeInOut.\nconst mirrorEasing = (easing) => (p) => p <= 0.5 ? easing(2 * p) / 2 : (2 - easing(2 * (1 - p))) / 2;\n\nexport { mirrorEasing };\n//# sourceMappingURL=mirror.mjs.map\n"],"names":["mirrorEasing","easing","p"],"mappings":"AAEK,MAACA,IAAe,CAACC,MAAW,CAACC,MAAMA,KAAK,MAAMD,EAAO,IAAIC,CAAC,IAAI,KAAK,IAAID,EAAO,KAAK,IAAIC,EAAE,KAAK;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es486.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/modifiers/
|
|
1
|
+
{"version":3,"file":"visualization.es486.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/modifiers/reverse.mjs"],"sourcesContent":["// Accepts an easing function and returns a new one that outputs reversed values.\n// Turns easeIn into easeOut.\nconst reverseEasing = (easing) => (p) => 1 - easing(1 - p);\n\nexport { reverseEasing };\n//# sourceMappingURL=reverse.mjs.map\n"],"names":["reverseEasing","easing","p"],"mappings":"AAEK,MAACA,IAAgB,CAACC,MAAW,CAACC,MAAM,IAAID,EAAO,IAAIC,CAAC;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es487.js","sources":["../../../node_modules/.pnpm/motion
|
|
1
|
+
{"version":3,"file":"visualization.es487.js","sources":["../../../node_modules/.pnpm/framer-motion@12.38.0_@emotion+is-prop-valid@1.4.0_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/framer-motion/dist/es/motion/utils/symbol.mjs"],"sourcesContent":["const motionComponentSymbol = Symbol.for(\"motionComponentSymbol\");\n\nexport { motionComponentSymbol };\n//# sourceMappingURL=symbol.mjs.map\n"],"names":["motionComponentSymbol"],"mappings":"AAAK,MAACA,IAAwB,uBAAO,IAAI,uBAAuB;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualization.es488.js","sources":[
|
|
1
|
+
{"version":3,"file":"visualization.es488.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|