@macrostrat/column-views 2.0.1 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/dist/esm/{column-views.8dd877af.js → column-views.006d5180.js} +2 -1
- package/dist/esm/column-views.006d5180.js.map +1 -0
- package/dist/esm/column-views.05586d1f.js +22 -0
- package/dist/esm/column-views.05586d1f.js.map +1 -0
- package/dist/esm/column-views.0732894f.js +86 -0
- package/dist/esm/column-views.0732894f.js.map +1 -0
- package/dist/esm/column-views.09f22f45.js +64 -0
- package/dist/esm/column-views.09f22f45.js.map +1 -0
- package/dist/esm/column-views.10eba967.js +11 -0
- package/dist/esm/column-views.10eba967.js.map +1 -0
- package/dist/esm/{column-views.8e51206e.js → column-views.1af9761e.js} +19 -3
- package/dist/esm/column-views.1af9761e.js.map +1 -0
- package/dist/esm/column-views.1c92b88f.js +16 -0
- package/dist/esm/column-views.1c92b88f.js.map +1 -0
- package/dist/esm/{column-views.ea237aa8.js → column-views.1e055ed5.js} +6 -5
- package/dist/esm/column-views.1e055ed5.js.map +1 -0
- package/dist/esm/column-views.210514ec.js +11 -0
- package/dist/esm/column-views.210514ec.js.map +1 -0
- package/dist/esm/{column-views.240ef158.css → column-views.217078ab.css} +4 -3
- package/dist/esm/column-views.217078ab.css.map +1 -0
- package/dist/esm/column-views.2c43c055.js +156 -0
- package/dist/esm/column-views.2c43c055.js.map +1 -0
- package/dist/esm/column-views.2c45a7b5.js +25 -0
- package/dist/esm/column-views.2c45a7b5.js.map +1 -0
- package/dist/esm/column-views.2ca34210.js +151 -0
- package/dist/esm/column-views.2ca34210.js.map +1 -0
- package/dist/esm/{column-views.88de2cee.js → column-views.2cb87813.js} +4 -4
- package/dist/esm/{column-views.88de2cee.js.map → column-views.2cb87813.js.map} +1 -1
- package/dist/esm/{column-views.3bec70d6.js → column-views.2d8e0e0f.js} +9 -8
- package/dist/esm/column-views.2d8e0e0f.js.map +1 -0
- package/dist/esm/column-views.3048acc1.js +66 -0
- package/dist/esm/column-views.3048acc1.js.map +1 -0
- package/dist/esm/column-views.3199d35a.css +61 -0
- package/dist/esm/column-views.3199d35a.css.map +1 -0
- package/dist/esm/column-views.34a52db7.js +31 -0
- package/dist/esm/column-views.34a52db7.js.map +1 -0
- package/dist/esm/column-views.39657bbf.js.map +1 -1
- package/dist/esm/{column-views.28ee5f43.js → column-views.3ba9213d.js} +16 -5
- package/dist/esm/column-views.3ba9213d.js.map +1 -0
- package/dist/esm/column-views.3de4dc43.js.map +1 -1
- package/dist/esm/column-views.403a7b48.css +24 -0
- package/dist/esm/column-views.403a7b48.css.map +1 -0
- package/dist/esm/column-views.4637f4ce.js.map +1 -1
- package/dist/esm/column-views.494447ef.css +2 -0
- package/dist/esm/column-views.494447ef.css.map +1 -0
- package/dist/esm/column-views.4950ea28.js +28 -0
- package/dist/esm/column-views.4950ea28.js.map +1 -0
- package/dist/esm/{column-views.86c4b36f.js → column-views.4ab0ec82.js} +44 -13
- package/dist/esm/column-views.4ab0ec82.js.map +1 -0
- package/dist/esm/{column-views.9bdd477a.js → column-views.4d22c21c.js} +2 -2
- package/dist/esm/{column-views.9bdd477a.js.map → column-views.4d22c21c.js.map} +1 -1
- package/dist/esm/{column-views.b775c0a3.js → column-views.52a6eb47.js} +3 -3
- package/dist/esm/{column-views.b775c0a3.js.map → column-views.52a6eb47.js.map} +1 -1
- package/dist/esm/{column-views.f2e5a72f.js → column-views.52b03330.js} +3 -3
- package/dist/esm/{column-views.f2e5a72f.js.map → column-views.52b03330.js.map} +1 -1
- package/dist/esm/column-views.57636733.css +22 -0
- package/dist/esm/column-views.57636733.css.map +1 -0
- package/dist/esm/{column-views.aa9fcdba.js → column-views.59792b70.js} +18 -15
- package/dist/esm/column-views.59792b70.js.map +1 -0
- package/dist/esm/{column-views.68409161.js → column-views.59bb0cba.js} +2 -3
- package/dist/esm/column-views.59bb0cba.js.map +1 -0
- package/dist/esm/{column-views.134b2e2a.js → column-views.5ae1d963.js} +2 -2
- package/dist/esm/{column-views.134b2e2a.js.map → column-views.5ae1d963.js.map} +1 -1
- package/dist/esm/column-views.5cc09c1d.js.map +1 -1
- package/dist/esm/column-views.5e2dc19d.js +187 -0
- package/dist/esm/column-views.5e2dc19d.js.map +1 -0
- package/dist/esm/{column-views.33dbc778.js → column-views.633c42a3.js} +2 -1
- package/dist/esm/column-views.633c42a3.js.map +1 -0
- package/dist/esm/{column-views.e77b9d6b.js → column-views.6549388a.js} +4 -5
- package/dist/esm/column-views.6549388a.js.map +1 -0
- package/dist/esm/{column-views.1ece326b.js → column-views.66f823ba.js} +63 -12
- package/dist/esm/column-views.66f823ba.js.map +1 -0
- package/dist/esm/{column-views.dff52504.js → column-views.686d21ad.js} +10 -1
- package/dist/esm/column-views.686d21ad.js.map +1 -0
- package/dist/esm/column-views.68afac63.js +90 -0
- package/dist/esm/column-views.68afac63.js.map +1 -0
- package/dist/esm/column-views.6992ca88.js +25 -0
- package/dist/esm/column-views.6992ca88.js.map +1 -0
- package/dist/esm/column-views.69c0e90d.js +5 -0
- package/dist/esm/column-views.69c0e90d.js.map +1 -0
- package/dist/esm/column-views.6d6b73b4.js.map +1 -1
- package/dist/esm/column-views.708140ab.css +36 -0
- package/dist/esm/column-views.708140ab.css.map +1 -0
- package/dist/esm/column-views.7631c221.js +13 -0
- package/dist/esm/column-views.7631c221.js.map +1 -0
- package/dist/esm/{column-views.650bd9f5.js → column-views.7715e35e.js} +17 -13
- package/dist/esm/column-views.7715e35e.js.map +1 -0
- package/dist/esm/column-views.7a414dd1.css +56 -0
- package/dist/esm/column-views.7a414dd1.css.map +1 -0
- package/dist/esm/column-views.7a726ca9.js +24 -0
- package/dist/esm/column-views.7a726ca9.js.map +1 -0
- package/dist/esm/column-views.7e21d1ec.js +34 -0
- package/dist/esm/column-views.7e21d1ec.js.map +1 -0
- package/dist/esm/{column-views.a98214b2.js → column-views.7e350ae2.js} +3 -3
- package/dist/esm/{column-views.a98214b2.js.map → column-views.7e350ae2.js.map} +1 -1
- package/dist/esm/column-views.83a557b3.js +11 -0
- package/dist/esm/column-views.83a557b3.js.map +1 -0
- package/dist/esm/{column-views.30646469.js → column-views.85c6a716.js} +2 -2
- package/dist/esm/column-views.85c6a716.js.map +1 -0
- package/dist/esm/column-views.86619334.js +9 -0
- package/dist/esm/column-views.86619334.js.map +1 -0
- package/dist/esm/{column-views.9ced149e.js → column-views.8833218c.js} +25 -6
- package/dist/esm/column-views.8833218c.js.map +1 -0
- package/dist/esm/column-views.88984b34.js +92 -0
- package/dist/esm/column-views.88984b34.js.map +1 -0
- package/dist/esm/{column-views.40c1f361.js → column-views.89b9e542.js} +11 -18
- package/dist/esm/column-views.89b9e542.js.map +1 -0
- package/dist/esm/column-views.8a1db14e.js +105 -0
- package/dist/esm/column-views.8a1db14e.js.map +1 -0
- package/dist/esm/column-views.8e7b01d2.js +43 -0
- package/dist/esm/column-views.8e7b01d2.js.map +1 -0
- package/dist/esm/column-views.8f108485.js +128 -0
- package/dist/esm/column-views.8f108485.js.map +1 -0
- package/dist/esm/column-views.904b9365.js +57 -0
- package/dist/esm/column-views.904b9365.js.map +1 -0
- package/dist/esm/column-views.90a863af.js +11 -0
- package/dist/esm/column-views.90a863af.js.map +1 -0
- package/dist/esm/{column-views.f71ec4b4.js → column-views.91385fdc.js} +67 -30
- package/dist/esm/column-views.91385fdc.js.map +1 -0
- package/dist/esm/{column-views.1c589cc4.js → column-views.9892f825.js} +55 -4
- package/dist/esm/column-views.9892f825.js.map +1 -0
- package/dist/esm/{column-views.1edc7300.js → column-views.9b77388d.js} +6 -5
- package/dist/esm/column-views.9b77388d.js.map +1 -0
- package/dist/esm/column-views.a582d4b5.js +7 -0
- package/dist/esm/column-views.a582d4b5.js.map +1 -0
- package/dist/esm/column-views.a7c5ae16.js +25 -0
- package/dist/esm/column-views.a7c5ae16.js.map +1 -0
- package/dist/esm/{column-views.5c02fee2.js → column-views.a91dde4a.js} +10 -9
- package/dist/esm/column-views.a91dde4a.js.map +1 -0
- package/dist/esm/{column-views.fc2b4611.js → column-views.a94e99a2.js} +2 -2
- package/dist/esm/{column-views.fc2b4611.js.map → column-views.a94e99a2.js.map} +1 -1
- package/dist/esm/column-views.ad472a38.css +54 -0
- package/dist/esm/column-views.ad472a38.css.map +1 -0
- package/dist/esm/{column-views.e2b9c23c.css → column-views.b17f793f.css} +21 -1
- package/dist/esm/column-views.b17f793f.css.map +1 -0
- package/dist/esm/column-views.b2b5f52c.js +19 -0
- package/dist/esm/column-views.b2b5f52c.js.map +1 -0
- package/dist/esm/column-views.b324842f.css +57 -0
- package/dist/esm/column-views.b324842f.css.map +1 -0
- package/dist/esm/{column-views.9804efda.js → column-views.b9fe5176.js} +14 -8
- package/dist/esm/column-views.b9fe5176.js.map +1 -0
- package/dist/esm/{column-views.fa6f3292.js → column-views.bb46641f.js} +7 -8
- package/dist/esm/column-views.bb46641f.js.map +1 -0
- package/dist/esm/column-views.bba13f77.css +54 -0
- package/dist/esm/column-views.bba13f77.css.map +1 -0
- package/dist/esm/{column-views.b2e5f1d9.js → column-views.bcffe6e5.js} +4 -4
- package/dist/esm/{column-views.b2e5f1d9.js.map → column-views.bcffe6e5.js.map} +1 -1
- package/dist/esm/{column-views.f1efcc2c.js → column-views.c25e8b32.js} +3 -3
- package/dist/esm/{column-views.f1efcc2c.js.map → column-views.c25e8b32.js.map} +1 -1
- package/dist/esm/column-views.c5e108f9.js +34 -0
- package/dist/esm/column-views.c5e108f9.js.map +1 -0
- package/dist/esm/{column-views.34636ec7.js → column-views.c71c321c.js} +11 -11
- package/dist/esm/column-views.c71c321c.js.map +1 -0
- package/dist/esm/{column-views.5b2635fd.js → column-views.c8e2983a.js} +4 -4
- package/dist/esm/{column-views.5b2635fd.js.map → column-views.c8e2983a.js.map} +1 -1
- package/dist/esm/column-views.cae5a0ad.js +37 -0
- package/dist/esm/column-views.cae5a0ad.js.map +1 -0
- package/dist/esm/{column-views.4c4c5bac.js → column-views.d2037465.js} +14 -8
- package/dist/esm/column-views.d2037465.js.map +1 -0
- package/dist/esm/column-views.dc42f5d0.js.map +1 -1
- package/dist/esm/column-views.e20f6a4b.js +124 -0
- package/dist/esm/column-views.e20f6a4b.js.map +1 -0
- package/dist/esm/column-views.e4975dd6.css +146 -0
- package/dist/esm/column-views.e4975dd6.css.map +1 -0
- package/dist/esm/column-views.e9f8b2a7.js +20 -0
- package/dist/esm/column-views.e9f8b2a7.js.map +1 -0
- package/dist/esm/column-views.edeab611.js +204 -0
- package/dist/esm/column-views.edeab611.js.map +1 -0
- package/dist/esm/{column-views.57c4ddf3.js → column-views.f08929e2.js} +2 -2
- package/dist/esm/column-views.f08929e2.js.map +1 -0
- package/dist/esm/column-views.f13a1d6e.js +37 -0
- package/dist/esm/column-views.f13a1d6e.js.map +1 -0
- package/dist/esm/column-views.f2948ff8.js +101 -0
- package/dist/esm/column-views.f2948ff8.js.map +1 -0
- package/dist/esm/column-views.f9dab157.js.map +1 -1
- package/dist/esm/column-views.fa19cea0.js +108 -0
- package/dist/esm/column-views.fa19cea0.js.map +1 -0
- package/dist/esm/index.d.ts +325 -296
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +13 -11
- package/dist/esm/index.js.map +1 -1
- package/dist/node/column-views.007bf6c1.js +2 -0
- package/dist/node/column-views.007bf6c1.js.map +1 -0
- package/dist/node/column-views.00848c9a.js +2 -0
- package/dist/node/column-views.00848c9a.js.map +1 -0
- package/dist/node/column-views.0278b7e5.js +2 -0
- package/dist/node/column-views.0278b7e5.js.map +1 -0
- package/dist/node/column-views.04407342.js +2 -0
- package/dist/node/column-views.04407342.js.map +1 -0
- package/dist/node/column-views.072d3dcd.js +2 -0
- package/dist/node/column-views.072d3dcd.js.map +1 -0
- package/dist/node/column-views.0859f5d2.js +2 -0
- package/dist/node/column-views.0859f5d2.js.map +1 -0
- package/dist/node/column-views.0b579299.css +2 -0
- package/dist/node/column-views.0b579299.css.map +1 -0
- package/dist/node/column-views.0b72c188.js +2 -0
- package/dist/node/column-views.0b72c188.js.map +1 -0
- package/dist/node/column-views.1064fcfb.js +2 -0
- package/dist/node/column-views.1064fcfb.js.map +1 -0
- package/dist/node/column-views.10a2bad6.js +2 -0
- package/dist/node/column-views.10a2bad6.js.map +1 -0
- package/dist/node/column-views.12864efd.js +2 -0
- package/dist/node/column-views.12864efd.js.map +1 -0
- package/dist/node/column-views.12a70e9d.js +2 -0
- package/dist/node/column-views.12a70e9d.js.map +1 -0
- package/dist/node/column-views.139b0855.js +2 -0
- package/dist/node/column-views.139b0855.js.map +1 -0
- package/dist/node/column-views.1a0b56fc.js +2 -0
- package/dist/node/column-views.1a0b56fc.js.map +1 -0
- package/dist/node/column-views.1de87649.js +2 -0
- package/dist/node/column-views.1de87649.js.map +1 -0
- package/dist/node/column-views.22673dc1.js +2 -0
- package/dist/node/column-views.22673dc1.js.map +1 -0
- package/dist/node/column-views.273ac4a8.js +2 -0
- package/dist/node/column-views.273ac4a8.js.map +1 -0
- package/dist/node/column-views.28609db2.css +2 -0
- package/dist/node/column-views.28609db2.css.map +1 -0
- package/dist/node/column-views.286d444d.js +2 -0
- package/dist/node/column-views.286d444d.js.map +1 -0
- package/dist/node/column-views.2877f398.js +2 -0
- package/dist/node/column-views.2877f398.js.map +1 -0
- package/dist/node/column-views.2a70b9a2.js +2 -0
- package/dist/node/column-views.2a70b9a2.js.map +1 -0
- package/dist/node/column-views.2e4e357d.js +2 -0
- package/dist/node/column-views.2e4e357d.js.map +1 -0
- package/dist/node/column-views.2fa1c4e6.css +2 -0
- package/dist/node/column-views.2fa1c4e6.css.map +1 -0
- package/dist/node/column-views.33102ceb.js +2 -0
- package/dist/node/column-views.33102ceb.js.map +1 -0
- package/dist/node/column-views.3345cd7a.js +2 -0
- package/dist/node/column-views.3345cd7a.js.map +1 -0
- package/dist/node/column-views.33752461.js +2 -0
- package/dist/node/column-views.33752461.js.map +1 -0
- package/dist/node/column-views.34b48ee4.js +2 -0
- package/dist/node/column-views.34b48ee4.js.map +1 -0
- package/dist/node/column-views.39d3a0be.js +2 -0
- package/dist/node/column-views.39d3a0be.js.map +1 -0
- package/dist/node/column-views.3a55ecd7.css +2 -0
- package/dist/node/column-views.3a55ecd7.css.map +1 -0
- package/dist/node/column-views.3bd09ad6.js +2 -0
- package/dist/node/column-views.3bd09ad6.js.map +1 -0
- package/dist/node/column-views.3cb3345e.js +2 -0
- package/dist/node/column-views.3cb3345e.js.map +1 -0
- package/dist/node/column-views.3f3cfcce.js +2 -0
- package/dist/node/column-views.3f3cfcce.js.map +1 -0
- package/dist/node/column-views.41876859.js +2 -0
- package/dist/node/column-views.41876859.js.map +1 -0
- package/dist/node/column-views.41d01674.js +2 -0
- package/dist/node/column-views.41d01674.js.map +1 -0
- package/dist/node/column-views.44b75011.js +2 -0
- package/dist/node/column-views.44b75011.js.map +1 -0
- package/dist/node/column-views.45168c80.js +2 -0
- package/dist/node/column-views.45168c80.js.map +1 -0
- package/dist/node/column-views.47f67ad4.js +2 -0
- package/dist/node/column-views.47f67ad4.js.map +1 -0
- package/dist/node/column-views.4e2bdf9b.js +2 -0
- package/dist/node/column-views.4e2bdf9b.js.map +1 -0
- package/dist/node/column-views.51fbed89.js +2 -0
- package/dist/node/column-views.51fbed89.js.map +1 -0
- package/dist/node/column-views.5b6833f0.js +2 -0
- package/dist/node/column-views.5b6833f0.js.map +1 -0
- package/dist/node/column-views.5c1b0eeb.css +2 -0
- package/dist/node/column-views.5c1b0eeb.css.map +1 -0
- package/dist/node/column-views.63165cf3.css +2 -0
- package/dist/node/column-views.63165cf3.css.map +1 -0
- package/dist/node/column-views.65ad6310.css +2 -0
- package/dist/node/column-views.65ad6310.css.map +1 -0
- package/dist/node/column-views.664dc6c9.js +2 -0
- package/dist/node/column-views.664dc6c9.js.map +1 -0
- package/dist/node/column-views.68224fdd.css +2 -0
- package/dist/node/column-views.68224fdd.css.map +1 -0
- package/dist/node/column-views.68ded006.js +2 -0
- package/dist/node/column-views.68ded006.js.map +1 -0
- package/dist/node/column-views.6a0a35e7.js +2 -0
- package/dist/node/column-views.6a0a35e7.js.map +1 -0
- package/dist/node/column-views.6a4c2100.css +2 -0
- package/dist/node/column-views.6a4c2100.css.map +1 -0
- package/dist/node/column-views.6a9da051.js +2 -0
- package/dist/node/column-views.6a9da051.js.map +1 -0
- package/dist/node/column-views.6b441349.js +2 -0
- package/dist/node/column-views.6b441349.js.map +1 -0
- package/dist/node/column-views.6b6b756b.js +2 -0
- package/dist/node/column-views.6b6b756b.js.map +1 -0
- package/dist/node/column-views.6bba8c57.js +2 -0
- package/dist/node/column-views.6bba8c57.js.map +1 -0
- package/dist/node/column-views.6d1551bd.js +2 -0
- package/dist/node/column-views.6d1551bd.js.map +1 -0
- package/dist/node/column-views.6da49480.js +2 -0
- package/dist/node/column-views.6da49480.js.map +1 -0
- package/dist/node/column-views.71c48a11.js +2 -0
- package/dist/node/column-views.71c48a11.js.map +1 -0
- package/dist/node/column-views.7350ac73.js +2 -0
- package/dist/node/column-views.7350ac73.js.map +1 -0
- package/dist/node/column-views.755f726e.js +2 -0
- package/dist/node/column-views.755f726e.js.map +1 -0
- package/dist/node/column-views.770d2c95.js +2 -0
- package/dist/node/column-views.770d2c95.js.map +1 -0
- package/dist/node/column-views.78d3f3c5.js +2 -0
- package/dist/node/column-views.78d3f3c5.js.map +1 -0
- package/dist/node/column-views.7b9bd06e.css +2 -0
- package/dist/node/column-views.7b9bd06e.css.map +1 -0
- package/dist/node/column-views.7be87c6b.js +2 -0
- package/dist/node/column-views.7be87c6b.js.map +1 -0
- package/dist/node/column-views.7d45bbeb.js +2 -0
- package/dist/node/column-views.7d45bbeb.js.map +1 -0
- package/dist/node/column-views.7f621850.js +2 -0
- package/dist/node/column-views.7f621850.js.map +1 -0
- package/dist/node/column-views.82cf7c0d.js +2 -0
- package/dist/node/column-views.82cf7c0d.js.map +1 -0
- package/dist/node/column-views.869c7199.js +2 -0
- package/dist/node/column-views.869c7199.js.map +1 -0
- package/dist/node/column-views.8a02b1fe.js +2 -0
- package/dist/node/column-views.8a02b1fe.js.map +1 -0
- package/dist/node/column-views.8acd24ca.js +2 -0
- package/dist/node/column-views.8acd24ca.js.map +1 -0
- package/dist/node/column-views.8c00beb4.js +2 -0
- package/dist/node/column-views.8c00beb4.js.map +1 -0
- package/dist/node/column-views.8cfed88b.js +2 -0
- package/dist/node/column-views.8cfed88b.js.map +1 -0
- package/dist/node/column-views.8f54691f.js +2 -0
- package/dist/node/column-views.8f54691f.js.map +1 -0
- package/dist/node/column-views.95411f1b.js +2 -0
- package/dist/node/column-views.95411f1b.js.map +1 -0
- package/dist/node/column-views.9cb13e51.css +2 -0
- package/dist/node/column-views.9cb13e51.css.map +1 -0
- package/dist/node/column-views.a0aac838.js +2 -0
- package/dist/node/column-views.a0aac838.js.map +1 -0
- package/dist/node/column-views.a208338e.js +2 -0
- package/dist/node/column-views.a208338e.js.map +1 -0
- package/dist/node/column-views.a501cea0.js +2 -0
- package/dist/node/column-views.a501cea0.js.map +1 -0
- package/dist/node/column-views.a634ac7f.js +2 -0
- package/dist/node/column-views.a634ac7f.js.map +1 -0
- package/dist/node/column-views.a8ffe072.js +2 -0
- package/dist/node/column-views.a8ffe072.js.map +1 -0
- package/dist/node/column-views.b169b4b5.css +2 -0
- package/dist/node/column-views.b169b4b5.css.map +1 -0
- package/dist/node/column-views.b55bd885.css +2 -0
- package/dist/node/column-views.b55bd885.css.map +1 -0
- package/dist/node/column-views.b773edb8.js +2 -0
- package/dist/node/column-views.b773edb8.js.map +1 -0
- package/dist/node/column-views.baf032f1.js +2 -0
- package/dist/node/column-views.baf032f1.js.map +1 -0
- package/dist/node/column-views.bb510980.js +2 -0
- package/dist/node/column-views.bb510980.js.map +1 -0
- package/dist/node/column-views.c968a185.css +2 -0
- package/dist/node/column-views.c968a185.css.map +1 -0
- package/dist/node/column-views.ca16625d.js +2 -0
- package/dist/node/column-views.ca16625d.js.map +1 -0
- package/dist/node/column-views.cd3c430b.js +2 -0
- package/dist/node/column-views.cd3c430b.js.map +1 -0
- package/dist/node/column-views.cd468adb.css +2 -0
- package/dist/node/column-views.cd468adb.css.map +1 -0
- package/dist/node/column-views.cdcce702.js +2 -0
- package/dist/node/column-views.cdcce702.js.map +1 -0
- package/dist/node/column-views.ce6808fe.js +2 -0
- package/dist/node/column-views.ce6808fe.js.map +1 -0
- package/dist/node/column-views.cf90f63d.js +2 -0
- package/dist/node/column-views.cf90f63d.js.map +1 -0
- package/dist/node/column-views.d0ee3385.js +2 -0
- package/dist/node/column-views.d0ee3385.js.map +1 -0
- package/dist/node/column-views.d6708353.js +2 -0
- package/dist/node/column-views.d6708353.js.map +1 -0
- package/dist/node/column-views.d9bbd6fb.css +2 -0
- package/dist/node/column-views.d9bbd6fb.css.map +1 -0
- package/dist/node/column-views.dfe9f0a9.js +2 -0
- package/dist/node/column-views.dfe9f0a9.js.map +1 -0
- package/dist/node/column-views.e52994ea.js +2 -0
- package/dist/node/column-views.e52994ea.js.map +1 -0
- package/dist/node/column-views.e6720522.js +2 -0
- package/dist/node/column-views.e6720522.js.map +1 -0
- package/dist/node/column-views.e77dd525.js +2 -0
- package/dist/node/column-views.e77dd525.js.map +1 -0
- package/dist/node/column-views.e7cd811c.css +2 -0
- package/dist/node/column-views.e7cd811c.css.map +1 -0
- package/dist/node/column-views.e7e26765.js +2 -0
- package/dist/node/column-views.e7e26765.js.map +1 -0
- package/dist/node/column-views.e9515ec1.js +2 -0
- package/dist/node/column-views.e9515ec1.js.map +1 -0
- package/dist/node/column-views.ebb44b7d.js +2 -0
- package/dist/node/column-views.ebb44b7d.js.map +1 -0
- package/dist/node/column-views.ee8cb107.js +2 -0
- package/dist/node/column-views.ee8cb107.js.map +1 -0
- package/dist/node/column-views.eea80478.js +2 -0
- package/dist/node/column-views.eea80478.js.map +1 -0
- package/dist/node/column-views.f7315cbc.css +2 -0
- package/dist/node/column-views.f7315cbc.css.map +1 -0
- package/dist/node/column-views.f76ba19f.js +2 -0
- package/dist/node/column-views.f76ba19f.js.map +1 -0
- package/dist/node/column-views.fea32686.js +2 -0
- package/dist/node/column-views.fea32686.js.map +1 -0
- package/dist/node/index.js +1 -1
- package/dist/node/index.js.map +1 -1
- package/package.json +16 -15
- package/src/age-axis.module.sass +20 -0
- package/src/age-axis.ts +25 -3
- package/src/age-model-overlay.ts +2 -2
- package/src/column.module.sass +3 -3
- package/src/column.ts +92 -19
- package/src/correlation-chart/main.ts +25 -12
- package/src/correlation-chart/prepare-data.ts +6 -6
- package/src/correlation-chart/stories/correlation-chart.stories.ts +12 -6
- package/src/data-provider/base.ts +20 -11
- package/src/data-provider/column-nav.ts +2 -2
- package/src/data-provider/fetch.ts +9 -9
- package/src/data-provider/store.ts +15 -10
- package/src/{carbon-isotopes → facets/carbon-isotopes}/data-area.ts +5 -4
- package/src/{carbon-isotopes → facets/carbon-isotopes}/index.ts +0 -1
- package/src/facets/carbon-isotopes/isotopes-column.module.sass +31 -0
- package/src/{carbon-isotopes → facets/carbon-isotopes}/isotopes-column.ts +119 -87
- package/src/facets/detrital-zircon/index.module.sass +22 -0
- package/src/facets/detrital-zircon/index.ts +132 -0
- package/src/facets/detrital-zircon/provider.ts +51 -0
- package/src/facets/fossils/index.module.sass +14 -0
- package/src/facets/fossils/index.ts +120 -0
- package/src/facets/fossils/provider.ts +80 -0
- package/src/facets/index.ts +3 -0
- package/src/index.ts +2 -1
- package/src/maps/_shared/inset-map.stories.ts +1 -1
- package/src/maps/_shared/inset-map.ts +2 -2
- package/src/maps/_shared/styles.ts +3 -1
- package/src/maps/column-correlation/column-correlation-map.stories.ts +3 -3
- package/src/maps/column-correlation/core.ts +17 -26
- package/src/maps/column-correlation/state.ts +9 -9
- package/src/maps/column-navigation/mapbox/column-navigation-map.stories.ts +177 -1
- package/src/maps/column-navigation/mapbox/index.ts +18 -15
- package/src/maps/column-navigation/mapbox/keyboard-navigation.ts +4 -4
- package/src/maps/column-navigation/mapbox/state.ts +16 -6
- package/src/maps/column-navigation/svg/animated.ts +2 -2
- package/src/maps/column-navigation/svg/column-navigation-svg-map.stories.ts +2 -2
- package/src/maps/column-navigation/svg/index.ts +2 -4
- package/src/maps/column-navigation/svg/layers.ts +5 -7
- package/src/maps/column-navigation/utils/keyboard-navigation.ts +1 -1
- package/src/notes.ts +49 -0
- package/src/prepare-units/composite-scale.ts +73 -25
- package/src/prepare-units/helpers.ts +78 -13
- package/src/prepare-units/index.ts +17 -17
- package/src/prepare-units/utils.ts +7 -7
- package/src/section.ts +8 -8
- package/src/unit-details/panel.ts +103 -19
- package/src/unit-details/popover.ts +5 -5
- package/src/units/boxes.ts +20 -10
- package/src/units/colors.ts +12 -5
- package/src/units/composite.ts +16 -11
- package/src/units/index.ts +77 -10
- package/src/units/names.ts +19 -16
- package/src/units/resolvers.ts +3 -0
- package/src/units/selection.ts +44 -11
- package/src/units/types.ts +2 -0
- package/dist/esm/column-views.062d164a.js +0 -86
- package/dist/esm/column-views.062d164a.js.map +0 -1
- package/dist/esm/column-views.07521ce6.js +0 -25
- package/dist/esm/column-views.07521ce6.js.map +0 -1
- package/dist/esm/column-views.1c589cc4.js.map +0 -1
- package/dist/esm/column-views.1ece326b.js.map +0 -1
- package/dist/esm/column-views.1edc7300.js.map +0 -1
- package/dist/esm/column-views.240ef158.css.map +0 -1
- package/dist/esm/column-views.28ee5f43.js.map +0 -1
- package/dist/esm/column-views.30646469.js.map +0 -1
- package/dist/esm/column-views.33dbc778.js.map +0 -1
- package/dist/esm/column-views.343b5aa2.js +0 -98
- package/dist/esm/column-views.343b5aa2.js.map +0 -1
- package/dist/esm/column-views.34636ec7.js.map +0 -1
- package/dist/esm/column-views.3bec70d6.js.map +0 -1
- package/dist/esm/column-views.3f4db8cb.js +0 -117
- package/dist/esm/column-views.3f4db8cb.js.map +0 -1
- package/dist/esm/column-views.40c1f361.js.map +0 -1
- package/dist/esm/column-views.4c4c5bac.js.map +0 -1
- package/dist/esm/column-views.57c4ddf3.js.map +0 -1
- package/dist/esm/column-views.5c02fee2.js.map +0 -1
- package/dist/esm/column-views.650bd9f5.js.map +0 -1
- package/dist/esm/column-views.68409161.js.map +0 -1
- package/dist/esm/column-views.86c4b36f.js.map +0 -1
- package/dist/esm/column-views.8dd877af.js.map +0 -1
- package/dist/esm/column-views.8e51206e.js.map +0 -1
- package/dist/esm/column-views.94b5cca1.js +0 -34
- package/dist/esm/column-views.94b5cca1.js.map +0 -1
- package/dist/esm/column-views.9804efda.js.map +0 -1
- package/dist/esm/column-views.9ced149e.js.map +0 -1
- package/dist/esm/column-views.a7be0a4a.css +0 -157
- package/dist/esm/column-views.a7be0a4a.css.map +0 -1
- package/dist/esm/column-views.aa9fcdba.js.map +0 -1
- package/dist/esm/column-views.ac9fb5e1.js +0 -163
- package/dist/esm/column-views.ac9fb5e1.js.map +0 -1
- package/dist/esm/column-views.c58aad3f.js +0 -88
- package/dist/esm/column-views.c58aad3f.js.map +0 -1
- package/dist/esm/column-views.d1ad48eb.js +0 -11
- package/dist/esm/column-views.d1ad48eb.js.map +0 -1
- package/dist/esm/column-views.dff52504.js.map +0 -1
- package/dist/esm/column-views.e2b9c23c.css.map +0 -1
- package/dist/esm/column-views.e77b9d6b.js.map +0 -1
- package/dist/esm/column-views.ea237aa8.js.map +0 -1
- package/dist/esm/column-views.f71ec4b4.js.map +0 -1
- package/dist/esm/column-views.fa6f3292.js.map +0 -1
- package/src/carbon-isotopes/column.module.sass +0 -136
- package/src/carbon-isotopes/column.ts +0 -133
- package/src/carbon-isotopes/core.ts +0 -81
- /package/src/{carbon-isotopes → facets/carbon-isotopes}/data-provider.ts +0 -0
|
@@ -15,7 +15,7 @@ import { geoArea } from "d3-geo";
|
|
|
15
15
|
|
|
16
16
|
function defaultFetch(
|
|
17
17
|
url: string,
|
|
18
|
-
options: RequestInit | undefined = undefined
|
|
18
|
+
options: RequestInit | undefined = undefined,
|
|
19
19
|
) {
|
|
20
20
|
const baseURL = "https://macrostrat.org/api/v2";
|
|
21
21
|
return crossFetch(baseURL + url, options);
|
|
@@ -30,7 +30,7 @@ export interface ColumnFetchOptions {
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
export async function fetchAllColumns(
|
|
33
|
-
options: ColumnFetchOptions = {}
|
|
33
|
+
options: ColumnFetchOptions = {},
|
|
34
34
|
): Promise<ColumnGeoJSONRecord[]> {
|
|
35
35
|
const {
|
|
36
36
|
apiBaseURL,
|
|
@@ -92,7 +92,7 @@ export function useColumnFeatures({
|
|
|
92
92
|
return useAPIResult(
|
|
93
93
|
apiRoute,
|
|
94
94
|
{ format, all, status_code, project_id },
|
|
95
|
-
processor
|
|
95
|
+
processor,
|
|
96
96
|
);
|
|
97
97
|
}
|
|
98
98
|
|
|
@@ -117,12 +117,12 @@ function processTopoJSON(res) {
|
|
|
117
117
|
|
|
118
118
|
function postProcessColumns(columns) {
|
|
119
119
|
return promoteColumnIDs(
|
|
120
|
-
convertSmallAreasToPoints(removeFeaturesWithoutGeometry(columns))
|
|
120
|
+
convertSmallAreasToPoints(removeFeaturesWithoutGeometry(columns)),
|
|
121
121
|
);
|
|
122
122
|
}
|
|
123
123
|
|
|
124
124
|
function promoteColumnIDs(
|
|
125
|
-
features: ColumnGeoJSONRecord[]
|
|
125
|
+
features: ColumnGeoJSONRecord[],
|
|
126
126
|
): ColumnGeoJSONRecordWithID[] {
|
|
127
127
|
return features.map((f, i) => {
|
|
128
128
|
return {
|
|
@@ -171,7 +171,7 @@ export async function fetchLithologies(fetch = defaultFetch) {
|
|
|
171
171
|
|
|
172
172
|
export async function fetchIntervals(
|
|
173
173
|
timescaleID: number | null,
|
|
174
|
-
fetch = defaultFetch
|
|
174
|
+
fetch = defaultFetch,
|
|
175
175
|
) {
|
|
176
176
|
let url = `/defs/intervals`;
|
|
177
177
|
if (timescaleID != null) {
|
|
@@ -190,7 +190,7 @@ export async function fetchEnvironments(fetch = defaultFetch) {
|
|
|
190
190
|
|
|
191
191
|
export async function fetchRefs(
|
|
192
192
|
refs: number[],
|
|
193
|
-
fetch = defaultFetch
|
|
193
|
+
fetch = defaultFetch,
|
|
194
194
|
): Promise<MacrostratRef[]> {
|
|
195
195
|
let url = `/defs/refs`;
|
|
196
196
|
if (refs.length == 0) {
|
|
@@ -208,7 +208,7 @@ export type ColumnData = {
|
|
|
208
208
|
|
|
209
209
|
export async function fetchUnits(
|
|
210
210
|
columns: number[],
|
|
211
|
-
fetch = defaultFetch
|
|
211
|
+
fetch = defaultFetch,
|
|
212
212
|
): Promise<ColumnData[]> {
|
|
213
213
|
const promises = columns.map((col_id) => fetchColumnUnits(col_id, fetch));
|
|
214
214
|
return await Promise.all(promises);
|
|
@@ -216,7 +216,7 @@ export async function fetchUnits(
|
|
|
216
216
|
|
|
217
217
|
export async function fetchColumnUnits(
|
|
218
218
|
col_id: number,
|
|
219
|
-
fetch = defaultFetch
|
|
219
|
+
fetch = defaultFetch,
|
|
220
220
|
): Promise<ColumnData> {
|
|
221
221
|
const params = new URLSearchParams();
|
|
222
222
|
params.append("response", "long");
|
|
@@ -1,8 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
createContext,
|
|
3
|
+
useContext,
|
|
4
|
+
ReactNode,
|
|
5
|
+
useMemo,
|
|
6
|
+
useEffect,
|
|
7
|
+
} from "react";
|
|
2
8
|
import h from "@macrostrat/hyper";
|
|
3
9
|
import {
|
|
4
10
|
createCompositeScale,
|
|
5
11
|
PackageLayoutData,
|
|
12
|
+
CompositeColumnScale,
|
|
6
13
|
} from "../prepare-units/composite-scale";
|
|
7
14
|
import { ExtUnit } from "../prepare-units/helpers";
|
|
8
15
|
import { ColumnAxisType } from "@macrostrat/column-components";
|
|
@@ -51,7 +58,7 @@ export function useMacrostratColumnData() {
|
|
|
51
58
|
const ctx = useContext(MacrostratColumnDataContext);
|
|
52
59
|
if (!ctx) {
|
|
53
60
|
throw new Error(
|
|
54
|
-
"useMacrostratColumnData must be used within a MacrostratColumnDataProvider"
|
|
61
|
+
"useMacrostratColumnData must be used within a MacrostratColumnDataProvider",
|
|
55
62
|
);
|
|
56
63
|
}
|
|
57
64
|
return ctx;
|
|
@@ -61,12 +68,10 @@ export function useMacrostratUnits() {
|
|
|
61
68
|
return useMacrostratColumnData().units;
|
|
62
69
|
}
|
|
63
70
|
|
|
64
|
-
export function useCompositeScale() {
|
|
65
|
-
const ctx =
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
71
|
-
return createCompositeScale(ctx.sections, true);
|
|
71
|
+
export function useCompositeScale(): CompositeColumnScale {
|
|
72
|
+
const ctx = useMacrostratColumnData();
|
|
73
|
+
return useMemo(
|
|
74
|
+
() => createCompositeScale(ctx.sections, true),
|
|
75
|
+
[ctx.sections],
|
|
76
|
+
);
|
|
72
77
|
}
|
|
@@ -2,6 +2,7 @@ import { line } from "d3-shape";
|
|
|
2
2
|
import { createContext, useContext } from "react";
|
|
3
3
|
import h from "@macrostrat/hyper";
|
|
4
4
|
import { ColumnLayoutContext } from "@macrostrat/column-components";
|
|
5
|
+
import { useCompositeScale } from "../../data-provider";
|
|
5
6
|
|
|
6
7
|
const inDomain = (scale, num) => {
|
|
7
8
|
const domain = scale.domain();
|
|
@@ -29,9 +30,11 @@ export interface DataAreaProps {
|
|
|
29
30
|
}
|
|
30
31
|
|
|
31
32
|
const IsotopesDataArea = function (props: DataAreaProps) {
|
|
32
|
-
const
|
|
33
|
+
const xScale = useContext(ColumnLayoutContext)?.xScale;
|
|
33
34
|
|
|
34
|
-
|
|
35
|
+
const scale = useCompositeScale();
|
|
36
|
+
|
|
37
|
+
let { corrected, system, children, getHeight, clipY = false } = props;
|
|
35
38
|
if (getHeight == null) {
|
|
36
39
|
getHeight = function (d) {
|
|
37
40
|
if (d.height == null) {
|
|
@@ -63,8 +66,6 @@ const IsotopesDataArea = function (props: DataAreaProps) {
|
|
|
63
66
|
return h(IsotopesDataContext.Provider, { value }, h("g.data", children));
|
|
64
67
|
};
|
|
65
68
|
|
|
66
|
-
IsotopesDataArea.defaultProps = { clipY: false };
|
|
67
|
-
|
|
68
69
|
const IsotopeDataPoint = function (props) {
|
|
69
70
|
const { pointLocator } = useContext(IsotopesDataContext);
|
|
70
71
|
const { datum, strokeWidth, ...rest } = props;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
.isotopes-column
|
|
2
|
+
position: relative
|
|
3
|
+
|
|
4
|
+
.isotopes-scale-axis
|
|
5
|
+
position: sticky
|
|
6
|
+
bottom: 0
|
|
7
|
+
left: 0
|
|
8
|
+
pointer-events: none
|
|
9
|
+
margin-top: -45px
|
|
10
|
+
height: 45px
|
|
11
|
+
|
|
12
|
+
svg
|
|
13
|
+
background-color: var(--column-background-color)
|
|
14
|
+
|
|
15
|
+
path, line
|
|
16
|
+
stroke: var(--column-text-color)
|
|
17
|
+
fill: none
|
|
18
|
+
|
|
19
|
+
text
|
|
20
|
+
fill: var(--column-text-color)
|
|
21
|
+
|
|
22
|
+
.scale-lines
|
|
23
|
+
.tick
|
|
24
|
+
&.zero
|
|
25
|
+
line
|
|
26
|
+
stroke-width: 1px
|
|
27
|
+
stroke-dasharray: none
|
|
28
|
+
line
|
|
29
|
+
stroke: var(--column-text-color)
|
|
30
|
+
stroke-dasharray: 1 4
|
|
31
|
+
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import h from "@macrostrat/hyper";
|
|
1
|
+
import { useMemo } from "react";
|
|
2
|
+
import hyper from "@macrostrat/hyper";
|
|
4
3
|
import classNames from "classnames";
|
|
5
4
|
import { AxisBottom } from "@visx/axis";
|
|
6
5
|
import { useMeasurementData } from "./data-provider";
|
|
@@ -12,14 +11,18 @@ import {
|
|
|
12
11
|
} from "./data-area";
|
|
13
12
|
import { referenceMeasuresToColumn } from "@macrostrat/stratigraphy-utils";
|
|
14
13
|
import {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
SVG,
|
|
15
|
+
ColumnLayoutProvider,
|
|
16
|
+
useColumnLayout,
|
|
18
17
|
} from "@macrostrat/column-components";
|
|
19
|
-
import {
|
|
20
|
-
|
|
18
|
+
import {
|
|
19
|
+
useMacrostratColumnData,
|
|
20
|
+
useMacrostratUnits,
|
|
21
|
+
} from "../../data-provider";
|
|
22
|
+
import styles from "./isotopes-column.module.sass";
|
|
23
|
+
import { scaleLinear } from "d3-scale";
|
|
21
24
|
|
|
22
|
-
const
|
|
25
|
+
const h = hyper.styled(styles);
|
|
23
26
|
|
|
24
27
|
type IsotopesTextProps = {
|
|
25
28
|
datum: any;
|
|
@@ -36,64 +39,10 @@ function IsotopeText({ datum, text, ...rest }: IsotopesTextProps) {
|
|
|
36
39
|
y,
|
|
37
40
|
...rest,
|
|
38
41
|
},
|
|
39
|
-
text
|
|
42
|
+
text,
|
|
40
43
|
);
|
|
41
44
|
}
|
|
42
45
|
|
|
43
|
-
function ColumnScale(props) {
|
|
44
|
-
const {
|
|
45
|
-
label,
|
|
46
|
-
showAxis = true,
|
|
47
|
-
nTicks = 6,
|
|
48
|
-
tickValues: _tickVals,
|
|
49
|
-
...rest
|
|
50
|
-
} = props;
|
|
51
|
-
const { xScale, pixelHeight, width } = useContext(ColumnLayoutContext);
|
|
52
|
-
|
|
53
|
-
const tickValues = _tickVals ?? xScale.ticks(nTicks);
|
|
54
|
-
|
|
55
|
-
return h("g.scale.isotope-scale-axis", [
|
|
56
|
-
h(
|
|
57
|
-
"g.scale-lines",
|
|
58
|
-
tickValues.map((value) => {
|
|
59
|
-
const strokeDasharray = value == 0 ? null : "2 6";
|
|
60
|
-
return h(ScaleLine, { value, stroke: "#ddd", strokeDasharray });
|
|
61
|
-
})
|
|
62
|
-
),
|
|
63
|
-
h.if(showAxis)([
|
|
64
|
-
h("rect.underlay", {
|
|
65
|
-
x: 0,
|
|
66
|
-
y: pixelHeight,
|
|
67
|
-
width,
|
|
68
|
-
height: 30,
|
|
69
|
-
}),
|
|
70
|
-
h(AxisBottom, {
|
|
71
|
-
scale: xScale,
|
|
72
|
-
tickLength: 3,
|
|
73
|
-
tickValues,
|
|
74
|
-
...rest,
|
|
75
|
-
top: pixelHeight,
|
|
76
|
-
tickLabelProps(tickValue, i) {
|
|
77
|
-
// Compensate for negative sign
|
|
78
|
-
let dx;
|
|
79
|
-
if (tickValue < 0) {
|
|
80
|
-
dx = -2;
|
|
81
|
-
}
|
|
82
|
-
return {
|
|
83
|
-
dy: "-1px",
|
|
84
|
-
dx,
|
|
85
|
-
fontSize: 10,
|
|
86
|
-
textAnchor: "middle",
|
|
87
|
-
fill: "#aaa",
|
|
88
|
-
};
|
|
89
|
-
},
|
|
90
|
-
labelOffset: 0,
|
|
91
|
-
label,
|
|
92
|
-
}),
|
|
93
|
-
]),
|
|
94
|
-
]);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
46
|
interface ScaleLineProps {
|
|
98
47
|
value: number;
|
|
99
48
|
className?: string;
|
|
@@ -105,19 +54,27 @@ interface ScaleLineProps {
|
|
|
105
54
|
|
|
106
55
|
function ScaleLine(props: ScaleLineProps) {
|
|
107
56
|
let { value, className, labelBottom, labelOffset, ...rest } = props;
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
}
|
|
111
|
-
if (labelOffset == null) {
|
|
112
|
-
labelOffset = 12;
|
|
113
|
-
}
|
|
114
|
-
const { xScale, pixelHeight } = useContext(ColumnLayoutContext);
|
|
57
|
+
const { sections } = useMacrostratColumnData();
|
|
58
|
+
|
|
59
|
+
const { xScale } = useColumnLayout();
|
|
115
60
|
const x = xScale(value);
|
|
116
61
|
const transform = `translate(${x})`;
|
|
117
62
|
className = classNames(className, { zero: value === 0 });
|
|
118
63
|
return h("g.tick", { transform, className, key: value }, [
|
|
119
|
-
h(
|
|
120
|
-
|
|
64
|
+
h(
|
|
65
|
+
"g.tick-lines",
|
|
66
|
+
sections.map((d) => {
|
|
67
|
+
const { scaleInfo } = d;
|
|
68
|
+
const y1 = scaleInfo.offset;
|
|
69
|
+
const y2 = y1 + scaleInfo.pixelHeight;
|
|
70
|
+
return h("line", {
|
|
71
|
+
y1,
|
|
72
|
+
y2,
|
|
73
|
+
strokeDasharray: props.strokeDasharray,
|
|
74
|
+
strokeWidth: 1,
|
|
75
|
+
});
|
|
76
|
+
}),
|
|
77
|
+
),
|
|
121
78
|
]);
|
|
122
79
|
}
|
|
123
80
|
|
|
@@ -151,16 +108,20 @@ interface IsotopeColumnProps extends IsotopesDatasetProps {
|
|
|
151
108
|
domain: [number, number];
|
|
152
109
|
transform?: string;
|
|
153
110
|
getHeight?: Function;
|
|
111
|
+
nTicks?: number;
|
|
112
|
+
showAxis?: boolean;
|
|
154
113
|
}
|
|
155
114
|
|
|
156
115
|
function IsotopesDataset(props) {
|
|
157
116
|
const { parameter, color = "dodgerblue" } = props;
|
|
158
|
-
const
|
|
117
|
+
const units = useMacrostratUnits();
|
|
159
118
|
const measures = useMeasurementData() ?? [];
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
119
|
+
|
|
120
|
+
const points = useMemo(() => {
|
|
121
|
+
const data = measures.filter((d) => d.measurement === parameter);
|
|
122
|
+
const refMeasures = referenceMeasuresToColumn(units, data);
|
|
123
|
+
return unnestPoints(refMeasures);
|
|
124
|
+
}, [measures, parameter, units]);
|
|
164
125
|
|
|
165
126
|
return h(
|
|
166
127
|
IsotopesDataArea,
|
|
@@ -176,13 +137,13 @@ function IsotopesDataset(props) {
|
|
|
176
137
|
datum: d,
|
|
177
138
|
fill: color,
|
|
178
139
|
});
|
|
179
|
-
})
|
|
180
|
-
)
|
|
140
|
+
}),
|
|
141
|
+
),
|
|
181
142
|
);
|
|
182
143
|
}
|
|
183
144
|
|
|
184
145
|
function IsotopesColumn(
|
|
185
|
-
props: IsotopeColumnProps & { children?: React.ReactNode }
|
|
146
|
+
props: IsotopeColumnProps & { children?: React.ReactNode },
|
|
186
147
|
) {
|
|
187
148
|
const {
|
|
188
149
|
width = 120,
|
|
@@ -193,21 +154,92 @@ function IsotopesColumn(
|
|
|
193
154
|
children = null,
|
|
194
155
|
transform,
|
|
195
156
|
getHeight,
|
|
157
|
+
showAxis = true,
|
|
158
|
+
tickValues: _tickVals,
|
|
159
|
+
nTicks = 6,
|
|
196
160
|
...rest
|
|
197
161
|
} = props;
|
|
198
162
|
|
|
163
|
+
const { totalHeight } = useMacrostratColumnData();
|
|
164
|
+
|
|
199
165
|
let _children: any = children;
|
|
200
166
|
if (children == null && parameter != null) {
|
|
201
167
|
_children = h(IsotopesDataset, { parameter, color, getHeight });
|
|
202
168
|
}
|
|
203
169
|
|
|
170
|
+
const xScale = useMemo(
|
|
171
|
+
() => scaleLinear().domain(domain).range([0, width]),
|
|
172
|
+
[domain, width],
|
|
173
|
+
);
|
|
174
|
+
|
|
175
|
+
const tickValues = _tickVals ?? xScale.ticks(nTicks);
|
|
176
|
+
|
|
177
|
+
return h("div.isotopes-column", [
|
|
178
|
+
h(
|
|
179
|
+
SVG,
|
|
180
|
+
{
|
|
181
|
+
height: totalHeight,
|
|
182
|
+
innerWidth: width,
|
|
183
|
+
paddingH: 15,
|
|
184
|
+
},
|
|
185
|
+
h(
|
|
186
|
+
ColumnLayoutProvider,
|
|
187
|
+
{ width, xScale },
|
|
188
|
+
h("g.isotopes-column", { className: parameter, transform }, [
|
|
189
|
+
h(ColumnScaleLines, {
|
|
190
|
+
xScale,
|
|
191
|
+
tickValues,
|
|
192
|
+
width,
|
|
193
|
+
...rest,
|
|
194
|
+
}),
|
|
195
|
+
_children,
|
|
196
|
+
]),
|
|
197
|
+
),
|
|
198
|
+
),
|
|
199
|
+
h.if(showAxis)(ColumnScaleAxis, {
|
|
200
|
+
width,
|
|
201
|
+
label: label ?? parameter,
|
|
202
|
+
xScale,
|
|
203
|
+
tickValues,
|
|
204
|
+
...rest,
|
|
205
|
+
}),
|
|
206
|
+
]);
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
function ColumnScaleAxis(props) {
|
|
210
|
+
const { label, xScale, width, showAxis = true, tickValues, ...rest } = props;
|
|
211
|
+
|
|
212
|
+
return h("div.isotopes-scale-axis", [
|
|
213
|
+
h(
|
|
214
|
+
SVG,
|
|
215
|
+
{
|
|
216
|
+
innerWidth: width,
|
|
217
|
+
height: 45,
|
|
218
|
+
paddingH: 15,
|
|
219
|
+
},
|
|
220
|
+
[
|
|
221
|
+
h(AxisBottom, {
|
|
222
|
+
scale: xScale,
|
|
223
|
+
tickLength: 5,
|
|
224
|
+
tickValues,
|
|
225
|
+
stroke: "var(--column-stroke-color)",
|
|
226
|
+
tickStroke: "var(--column-stroke-color)",
|
|
227
|
+
...rest,
|
|
228
|
+
label,
|
|
229
|
+
}),
|
|
230
|
+
],
|
|
231
|
+
),
|
|
232
|
+
]);
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
function ColumnScaleLines(props) {
|
|
236
|
+
const { tickValues, xScale } = props;
|
|
237
|
+
|
|
204
238
|
return h(
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
_children,
|
|
210
|
-
])
|
|
239
|
+
"g.scale-lines",
|
|
240
|
+
tickValues.map((value) => {
|
|
241
|
+
return h(ScaleLine, { value });
|
|
242
|
+
}),
|
|
211
243
|
);
|
|
212
244
|
}
|
|
213
245
|
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
|
|
2
|
+
.depositional-age
|
|
3
|
+
fill: var(--column-stroke-color)
|
|
4
|
+
fill-opacity: 0.25
|
|
5
|
+
stroke-width: 1px
|
|
6
|
+
stroke: var(--column-stroke-color)
|
|
7
|
+
|
|
8
|
+
.detrital-group
|
|
9
|
+
margin: -5px
|
|
10
|
+
margin-left: -10px
|
|
11
|
+
margin-bottom: -36px
|
|
12
|
+
|
|
13
|
+
&.hide-axis :global .visx-axis
|
|
14
|
+
tspan, text
|
|
15
|
+
display: none
|
|
16
|
+
|
|
17
|
+
.dz-spectra
|
|
18
|
+
position: relative
|
|
19
|
+
|
|
20
|
+
.floating-axis
|
|
21
|
+
position: sticky
|
|
22
|
+
bottom: 0
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DetritalSpectrumPlot,
|
|
3
|
+
DetritalSeries,
|
|
4
|
+
usePlotArea,
|
|
5
|
+
} from "@macrostrat/data-components";
|
|
6
|
+
import { IUnit } from "../../units/types";
|
|
7
|
+
import hyper from "@macrostrat/hyper";
|
|
8
|
+
import { useDetritalMeasurements, MeasurementInfo } from "./provider";
|
|
9
|
+
import { useMacrostratUnits } from "../../data-provider";
|
|
10
|
+
import { ColumnNotes } from "../../notes";
|
|
11
|
+
import { useMemo } from "react";
|
|
12
|
+
import styles from "./index.module.sass";
|
|
13
|
+
import classNames from "classnames";
|
|
14
|
+
|
|
15
|
+
const h = hyper.styled(styles);
|
|
16
|
+
|
|
17
|
+
interface DetritalItemProps {
|
|
18
|
+
note: {
|
|
19
|
+
data: MeasurementInfo[];
|
|
20
|
+
unit?: IUnit;
|
|
21
|
+
};
|
|
22
|
+
spacing?: {
|
|
23
|
+
below?: number;
|
|
24
|
+
above?: number;
|
|
25
|
+
};
|
|
26
|
+
width?: number;
|
|
27
|
+
height?: number;
|
|
28
|
+
color?: string;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function DepositionalAge({ unit }) {
|
|
32
|
+
const { xScale, height } = usePlotArea();
|
|
33
|
+
|
|
34
|
+
const { t_age, b_age } = unit;
|
|
35
|
+
const x = xScale(t_age);
|
|
36
|
+
const x1 = xScale(b_age);
|
|
37
|
+
|
|
38
|
+
return h("rect.depositional-age", { x, width: x1 - x, y: 0, height });
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function DetritalGroup(props: DetritalItemProps) {
|
|
42
|
+
const { note, width, height, color, spacing } = props;
|
|
43
|
+
const { data, unit } = note;
|
|
44
|
+
const { geo_unit } = data[0];
|
|
45
|
+
|
|
46
|
+
const _color = color;
|
|
47
|
+
|
|
48
|
+
const spaceBelow = spacing?.below ?? 100;
|
|
49
|
+
const hideAxisLabels = spaceBelow < 60;
|
|
50
|
+
|
|
51
|
+
return h(
|
|
52
|
+
"div.detrital-group",
|
|
53
|
+
{ className: classNames({ "hide-axis": hideAxisLabels }) },
|
|
54
|
+
[
|
|
55
|
+
h(
|
|
56
|
+
DetritalSpectrumPlot,
|
|
57
|
+
{ width, innerHeight: height, showAxisLabels: true, paddingBottom: 40 },
|
|
58
|
+
[
|
|
59
|
+
h.if(unit != null)(DepositionalAge, { unit }),
|
|
60
|
+
data.map((d) => {
|
|
61
|
+
return h(DetritalSeries, {
|
|
62
|
+
bandwidth: 20,
|
|
63
|
+
data: d.measure_value,
|
|
64
|
+
color: _color,
|
|
65
|
+
});
|
|
66
|
+
}),
|
|
67
|
+
],
|
|
68
|
+
),
|
|
69
|
+
],
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const matchingUnit = (dz) => (d) => d.unit_id == dz[0].unit_id;
|
|
74
|
+
|
|
75
|
+
function DetritalColumn({ columnID, color = "magenta" }) {
|
|
76
|
+
const data = useDetritalMeasurements({ col_id: columnID });
|
|
77
|
+
const units = useMacrostratUnits();
|
|
78
|
+
|
|
79
|
+
const notes: any[] = useMemo(() => {
|
|
80
|
+
if (data == null || units == null) return [];
|
|
81
|
+
let dzUnitData = Array.from(data.values());
|
|
82
|
+
dzUnitData.sort((a, b) => {
|
|
83
|
+
const v1 = units.findIndex(matchingUnit(a));
|
|
84
|
+
const v2 = units.findIndex(matchingUnit(b));
|
|
85
|
+
return v1 - v2;
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
const data1 = dzUnitData.map((d) => {
|
|
89
|
+
const unit = units.find(matchingUnit(d));
|
|
90
|
+
return {
|
|
91
|
+
top_height: unit?.t_age,
|
|
92
|
+
height: unit?.b_age,
|
|
93
|
+
data: d,
|
|
94
|
+
unit,
|
|
95
|
+
id: unit?.unit_id,
|
|
96
|
+
};
|
|
97
|
+
});
|
|
98
|
+
|
|
99
|
+
return data1.filter((d) => d.unit != null);
|
|
100
|
+
}, [data, units]);
|
|
101
|
+
|
|
102
|
+
const width = 400;
|
|
103
|
+
const paddingLeft = 40;
|
|
104
|
+
|
|
105
|
+
const spectrumWidth = width - paddingLeft;
|
|
106
|
+
|
|
107
|
+
const noteComponent = useMemo(() => {
|
|
108
|
+
return (props) => {
|
|
109
|
+
return h(DetritalGroup, {
|
|
110
|
+
width: spectrumWidth,
|
|
111
|
+
height: 40,
|
|
112
|
+
color,
|
|
113
|
+
...props,
|
|
114
|
+
});
|
|
115
|
+
};
|
|
116
|
+
}, [width, color]);
|
|
117
|
+
|
|
118
|
+
if (data == null || units == null) return null;
|
|
119
|
+
|
|
120
|
+
return h(
|
|
121
|
+
"div.dz-spectra",
|
|
122
|
+
h(ColumnNotes, {
|
|
123
|
+
width,
|
|
124
|
+
paddingLeft,
|
|
125
|
+
notes,
|
|
126
|
+
noteComponent,
|
|
127
|
+
deltaConnectorAttachment: 20,
|
|
128
|
+
}),
|
|
129
|
+
);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
export { DetritalColumn, DetritalGroup };
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { group } from "d3-array";
|
|
2
|
+
import { useAPIResult } from "@macrostrat/ui-components";
|
|
3
|
+
|
|
4
|
+
export interface MeasurementInfo {
|
|
5
|
+
measurement_id: number;
|
|
6
|
+
measuremeta_id: number;
|
|
7
|
+
measurement: string;
|
|
8
|
+
measure_units: string;
|
|
9
|
+
measure_phase: string;
|
|
10
|
+
method: string;
|
|
11
|
+
n: number;
|
|
12
|
+
ref_id: number;
|
|
13
|
+
sample_name: string;
|
|
14
|
+
geo_unit: string;
|
|
15
|
+
samp_lith: string;
|
|
16
|
+
samp_lith_id: number;
|
|
17
|
+
samp_desc: string;
|
|
18
|
+
samp_age: string;
|
|
19
|
+
lat: number;
|
|
20
|
+
lng: number;
|
|
21
|
+
unit_id: number;
|
|
22
|
+
unit_rel_pos?: any;
|
|
23
|
+
col_id: number;
|
|
24
|
+
strat_name_id: number;
|
|
25
|
+
match_basis: string;
|
|
26
|
+
ref: string;
|
|
27
|
+
measure_value: number[];
|
|
28
|
+
measure_error: number[];
|
|
29
|
+
measure_position: any[];
|
|
30
|
+
measure_n: number[];
|
|
31
|
+
sample_no: string[];
|
|
32
|
+
error_units: string;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export function useDetritalMeasurements(columnArgs) {
|
|
36
|
+
const params = {
|
|
37
|
+
...columnArgs,
|
|
38
|
+
measure_phase: "zircon",
|
|
39
|
+
response: "long",
|
|
40
|
+
show_values: true,
|
|
41
|
+
// Other isotope systems are organized separately
|
|
42
|
+
measurement: "207Pb-206Pb",
|
|
43
|
+
};
|
|
44
|
+
const res: MeasurementInfo[] = useAPIResult(
|
|
45
|
+
"/measurements",
|
|
46
|
+
params,
|
|
47
|
+
columnArgs,
|
|
48
|
+
);
|
|
49
|
+
if (res == null) return null;
|
|
50
|
+
return group(res, (d) => d.unit_id);
|
|
51
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
.fossil-collections
|
|
2
|
+
padding-left: 0.2em
|
|
3
|
+
font-size: 0.9em
|
|
4
|
+
list-style: none
|
|
5
|
+
border-left: 1px solid var(--column-stroke-color)
|
|
6
|
+
margin: 1px 0
|
|
7
|
+
li
|
|
8
|
+
display: inline
|
|
9
|
+
&:not(:last-child):after
|
|
10
|
+
content: ", "
|
|
11
|
+
color: var(--secondary-color)
|
|
12
|
+
li.too-many
|
|
13
|
+
color: var(--secondary-color)
|
|
14
|
+
font-style: italic
|