@macrostrat/column-views 2.1.4 → 2.2.1
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 +13 -0
- package/dist/esm/{column-views.77b49a43.js → column-views.0265cf7f.js} +52 -23
- package/dist/esm/column-views.0265cf7f.js.map +1 -0
- package/dist/esm/{column-views.4ab0ec82.js → column-views.073c42da.js} +142 -76
- package/dist/esm/column-views.073c42da.js.map +1 -0
- package/dist/esm/column-views.079119f4.js +17 -0
- package/dist/esm/column-views.079119f4.js.map +1 -0
- package/dist/esm/{column-views.5e2dc19d.js → column-views.0ce9b697.js} +3 -3
- package/dist/esm/{column-views.5e2dc19d.js.map → column-views.0ce9b697.js.map} +1 -1
- package/dist/esm/{column-views.448c0687.css → column-views.1151416d.css} +5 -5
- package/dist/esm/column-views.1151416d.css.map +1 -0
- package/dist/esm/{column-views.686d21ad.js → column-views.22ec902b.js} +4 -1
- package/dist/esm/column-views.22ec902b.js.map +1 -0
- package/dist/esm/{column-views.42b89c52.js → column-views.29a551f6.js} +60 -27
- package/dist/esm/column-views.29a551f6.js.map +1 -0
- package/dist/esm/{column-views.fbc7401f.js → column-views.2aef5df8.js} +5 -5
- package/dist/esm/{column-views.fbc7401f.js.map → column-views.2aef5df8.js.map} +1 -1
- package/dist/esm/{column-views.ab0380ed.js → column-views.2e854496.js} +3 -3
- package/dist/esm/{column-views.ab0380ed.js.map → column-views.2e854496.js.map} +1 -1
- package/dist/esm/{column-views.7ca9e1cd.js → column-views.2eceafb5.js} +19 -21
- package/dist/esm/column-views.2eceafb5.js.map +1 -0
- package/dist/esm/{column-views.b17f793f.css → column-views.321af3ae.css} +7 -1
- package/dist/esm/{column-views.686d21ad.js.map → column-views.321af3ae.css.map} +1 -1
- package/dist/esm/{column-views.75ea6dbe.js → column-views.382c486d.js} +11 -6
- package/dist/esm/column-views.382c486d.js.map +1 -0
- package/dist/esm/column-views.3a7179c4.js +137 -0
- package/dist/esm/column-views.3a7179c4.js.map +1 -0
- package/dist/esm/{column-views.8e3dec90.js → column-views.413217dc.js} +2 -2
- package/dist/esm/column-views.413217dc.js.map +1 -0
- package/dist/esm/column-views.418f948f.js +15 -0
- package/dist/esm/{column-views.38a305a0.js.map → column-views.418f948f.js.map} +1 -1
- package/dist/esm/{column-views.4d22c21c.js → column-views.41e5f0dc.js} +22 -4
- package/dist/esm/column-views.41e5f0dc.js.map +1 -0
- package/dist/esm/{column-views.676cb1d3.js → column-views.469a4952.js} +3 -3
- package/dist/esm/{column-views.676cb1d3.js.map → column-views.469a4952.js.map} +1 -1
- package/dist/esm/column-views.4ed90896.js +105 -0
- package/dist/esm/column-views.4ed90896.js.map +1 -0
- package/dist/esm/{column-views.547b2730.js → column-views.53722d0a.js} +19 -15
- package/dist/esm/column-views.53722d0a.js.map +1 -0
- package/dist/esm/{column-views.39657bbf.js → column-views.54f8b909.js} +7 -2
- package/dist/esm/column-views.54f8b909.js.map +1 -0
- package/dist/esm/{column-views.b72918ce.css → column-views.562db43a.css} +10 -2
- package/dist/esm/column-views.562db43a.css.map +1 -0
- package/dist/esm/{column-views.9e1c82fe.js → column-views.58b891df.js} +2 -2
- package/dist/esm/{column-views.9e1c82fe.js.map → column-views.58b891df.js.map} +1 -1
- package/dist/esm/{column-views.86619334.js → column-views.60365cdb.js} +2 -2
- package/dist/esm/{column-views.86619334.js.map → column-views.60365cdb.js.map} +1 -1
- package/dist/esm/column-views.6698b95a.js +108 -0
- package/dist/esm/column-views.6698b95a.js.map +1 -0
- package/dist/esm/column-views.6e7082db.js +16 -0
- package/dist/esm/column-views.6e7082db.js.map +1 -0
- package/dist/esm/column-views.70164236.js +206 -0
- package/dist/esm/column-views.70164236.js.map +1 -0
- package/dist/esm/{column-views.2ff3dd8b.js → column-views.748dce47.js} +31 -60
- package/dist/esm/column-views.748dce47.js.map +1 -0
- package/dist/esm/{column-views.775846c9.js → column-views.7683bb52.js} +9 -40
- package/dist/esm/column-views.7683bb52.js.map +1 -0
- package/dist/esm/{column-views.e7ab5af0.js → column-views.787d7696.js} +3 -3
- package/dist/esm/{column-views.e7ab5af0.js.map → column-views.787d7696.js.map} +1 -1
- package/dist/esm/{column-views.f20eb583.js → column-views.81bddbee.js} +6 -8
- package/dist/esm/column-views.81bddbee.js.map +1 -0
- package/dist/esm/{column-views.cc5244c4.js → column-views.8284c3a9.js} +91 -55
- package/dist/esm/column-views.8284c3a9.js.map +1 -0
- package/dist/esm/{column-views.f08929e2.js → column-views.88d63dd0.js} +5 -3
- package/dist/esm/column-views.88d63dd0.js.map +1 -0
- package/dist/esm/{column-views.935ef6f7.js → column-views.8b623b27.js} +2 -2
- package/dist/esm/{column-views.935ef6f7.js.map → column-views.8b623b27.js.map} +1 -1
- package/dist/esm/{column-views.3f246167.js → column-views.8c296309.js} +5 -5
- package/dist/esm/column-views.8c296309.js.map +1 -0
- package/dist/esm/{column-views.64a84c43.js → column-views.a3fabf0f.js} +38 -30
- package/dist/esm/column-views.a3fabf0f.js.map +1 -0
- package/dist/esm/column-views.abeab9aa.js +184 -0
- package/dist/esm/column-views.abeab9aa.js.map +1 -0
- package/dist/esm/{column-views.02f3732a.js → column-views.adec2e4c.js} +40 -20
- package/dist/esm/column-views.adec2e4c.js.map +1 -0
- package/dist/esm/{column-views.9892f825.js → column-views.aecf25bc.js} +75 -42
- package/dist/esm/column-views.aecf25bc.js.map +1 -0
- package/dist/esm/{column-views.1f7fb650.js → column-views.b08d82e6.js} +3 -3
- package/dist/esm/{column-views.1f7fb650.js.map → column-views.b08d82e6.js.map} +1 -1
- package/dist/esm/{column-views.769fa0ee.js → column-views.b29f8718.js} +2 -2
- package/dist/esm/{column-views.769fa0ee.js.map → column-views.b29f8718.js.map} +1 -1
- package/dist/esm/column-views.b7016f82.css +54 -0
- package/dist/esm/column-views.b7016f82.css.map +1 -0
- package/dist/esm/{column-views.0732894f.js → column-views.bbc77227.js} +2 -2
- package/dist/esm/{column-views.0732894f.js.map → column-views.bbc77227.js.map} +1 -1
- package/dist/esm/column-views.c2fbcba8.js +15 -0
- package/dist/esm/{column-views.0a159282.js.map → column-views.c2fbcba8.js.map} +1 -1
- package/dist/esm/{column-views.e3b9a317.js → column-views.c3495702.js} +2 -2
- package/dist/esm/{column-views.e3b9a317.js.map → column-views.c3495702.js.map} +1 -1
- package/dist/esm/{column-views.f7523c1d.js → column-views.c92a359e.js} +2 -2
- package/dist/esm/{column-views.f7523c1d.js.map → column-views.c92a359e.js.map} +1 -1
- package/dist/esm/{column-views.243da806.js → column-views.cae1a6a1.js} +3 -3
- package/dist/esm/{column-views.243da806.js.map → column-views.cae1a6a1.js.map} +1 -1
- package/dist/esm/{column-views.cdadc5c2.js → column-views.cc733361.js} +7 -1
- package/dist/esm/column-views.cc733361.js.map +1 -0
- package/dist/esm/{column-views.a195109e.js → column-views.d86555b0.js} +2 -2
- package/dist/esm/{column-views.a195109e.js.map → column-views.d86555b0.js.map} +1 -1
- package/dist/esm/{column-views.a6301a41.js → column-views.df34441c.js} +6 -8
- package/dist/esm/column-views.df34441c.js.map +1 -0
- package/dist/esm/{column-views.97d542eb.js → column-views.e17f00d3.js} +4 -4
- package/dist/esm/column-views.e17f00d3.js.map +1 -0
- package/dist/esm/{column-views.7715e35e.js → column-views.e1bc3cfa.js} +3 -3
- package/dist/esm/{column-views.7715e35e.js.map → column-views.e1bc3cfa.js.map} +1 -1
- package/dist/esm/{column-views.8d4ce558.css → column-views.e33ac5c9.css} +26 -9
- package/dist/esm/column-views.e33ac5c9.css.map +1 -0
- package/dist/esm/column-views.ea4ebbb7.js +31 -0
- package/dist/esm/column-views.ea4ebbb7.js.map +1 -0
- package/dist/esm/{column-views.78bd3f09.js → column-views.f0b0fc56.js} +2 -2
- package/dist/esm/{column-views.78bd3f09.js.map → column-views.f0b0fc56.js.map} +1 -1
- package/dist/esm/column-views.faacfc3c.js +92 -0
- package/dist/esm/column-views.faacfc3c.js.map +1 -0
- package/dist/esm/{column-views.d48cb0d8.js → column-views.fcf25ec6.js} +7 -1
- package/dist/esm/column-views.fcf25ec6.js.map +1 -0
- package/dist/esm/index.d.ts +264 -441
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +12 -12
- package/dist/node/column-views.0201566d.js +2 -0
- package/dist/node/column-views.0201566d.js.map +1 -0
- package/dist/node/column-views.07c503d3.js +2 -0
- package/dist/node/column-views.07c503d3.js.map +1 -0
- package/dist/node/{column-views.3a55ecd7.css → column-views.0840b115.css} +2 -2
- package/dist/node/column-views.0840b115.css.map +1 -0
- package/dist/node/column-views.0b3a384e.js +2 -0
- package/dist/node/column-views.0b3a384e.js.map +1 -0
- package/dist/node/column-views.0bd15ee4.js +2 -0
- package/dist/node/column-views.0bd15ee4.js.map +1 -0
- package/dist/node/{column-views.2a6b842d.js → column-views.0e7ac946.js} +2 -2
- package/dist/node/column-views.0e7ac946.js.map +1 -0
- package/dist/node/column-views.108db52e.js +2 -0
- package/dist/node/column-views.108db52e.js.map +1 -0
- package/dist/node/column-views.1261be59.js +2 -0
- package/dist/node/column-views.1261be59.js.map +1 -0
- package/dist/node/column-views.16f336ee.js +2 -0
- package/dist/node/column-views.16f336ee.js.map +1 -0
- package/dist/node/column-views.18d54bbb.js +2 -0
- package/dist/node/column-views.18d54bbb.js.map +1 -0
- package/dist/node/column-views.19a84c01.js +2 -0
- package/dist/node/column-views.19a84c01.js.map +1 -0
- package/dist/node/column-views.1a3c399e.js +2 -0
- package/dist/node/column-views.1a3c399e.js.map +1 -0
- package/dist/node/column-views.29483479.js +2 -0
- package/dist/node/column-views.29483479.js.map +1 -0
- package/dist/node/column-views.29eb25bd.css +2 -0
- package/dist/node/column-views.29eb25bd.css.map +1 -0
- package/dist/node/column-views.312db572.js +2 -0
- package/dist/node/column-views.312db572.js.map +1 -0
- package/dist/node/{column-views.2ca669bc.js → column-views.32344397.js} +2 -2
- package/dist/node/{column-views.2ca669bc.js.map → column-views.32344397.js.map} +1 -1
- package/dist/node/column-views.44952ae6.js +2 -0
- package/dist/node/column-views.44952ae6.js.map +1 -0
- package/dist/node/{column-views.a372c943.js → column-views.45a03acc.js} +2 -2
- package/dist/node/{column-views.a372c943.js.map → column-views.45a03acc.js.map} +1 -1
- package/dist/node/{column-views.0cbd4a3f.js → column-views.48a3cfa3.js} +2 -2
- package/dist/node/{column-views.0cbd4a3f.js.map → column-views.48a3cfa3.js.map} +1 -1
- package/dist/node/{column-views.42db0bb8.js → column-views.4b4c214a.js} +2 -2
- package/dist/node/{column-views.42db0bb8.js.map → column-views.4b4c214a.js.map} +1 -1
- package/dist/node/column-views.50a992d3.css +2 -0
- package/dist/node/column-views.50a992d3.css.map +1 -0
- package/dist/node/{column-views.65f091ea.js → column-views.54363c13.js} +2 -2
- package/dist/node/{column-views.65f091ea.js.map → column-views.54363c13.js.map} +1 -1
- package/dist/node/{column-views.858b5cf4.js → column-views.554d44a7.js} +2 -2
- package/dist/node/{column-views.858b5cf4.js.map → column-views.554d44a7.js.map} +1 -1
- package/dist/node/column-views.573cb29d.js +2 -0
- package/dist/node/column-views.573cb29d.js.map +1 -0
- package/dist/node/{column-views.492b4917.js → column-views.57dd069c.js} +2 -2
- package/dist/node/{column-views.492b4917.js.map → column-views.57dd069c.js.map} +1 -1
- package/dist/node/{column-views.2e4e357d.js → column-views.588b02a1.js} +2 -2
- package/dist/node/{column-views.2e4e357d.js.map → column-views.588b02a1.js.map} +1 -1
- package/dist/node/column-views.5a8bc8e3.js +2 -0
- package/dist/node/column-views.5a8bc8e3.js.map +1 -0
- package/dist/node/column-views.5f3b0b04.js +2 -0
- package/dist/node/column-views.5f3b0b04.js.map +1 -0
- package/dist/node/column-views.6099a3a9.js +2 -0
- package/dist/node/column-views.6099a3a9.js.map +1 -0
- package/dist/node/column-views.6919fd2a.js +2 -0
- package/dist/node/column-views.6919fd2a.js.map +1 -0
- package/dist/node/{column-views.45fab61b.js → column-views.6b8424fd.js} +2 -2
- package/dist/node/{column-views.45fab61b.js.map → column-views.6b8424fd.js.map} +1 -1
- package/dist/node/column-views.7425d37b.js +2 -0
- package/dist/node/column-views.7425d37b.js.map +1 -0
- package/dist/node/column-views.77ace3a2.js +2 -0
- package/dist/node/column-views.77ace3a2.js.map +1 -0
- package/dist/node/column-views.7f9c7448.js +2 -0
- package/dist/node/column-views.7f9c7448.js.map +1 -0
- package/dist/node/column-views.92e29010.js +2 -0
- package/dist/node/column-views.92e29010.js.map +1 -0
- package/dist/node/{column-views.7010a03b.js → column-views.93febe9b.js} +2 -2
- package/dist/node/{column-views.7010a03b.js.map → column-views.93febe9b.js.map} +1 -1
- package/dist/node/{column-views.51bc87ca.js → column-views.94c84716.js} +2 -2
- package/dist/node/{column-views.51bc87ca.js.map → column-views.94c84716.js.map} +1 -1
- package/dist/node/column-views.a16cd1f2.js +2 -0
- package/dist/node/column-views.a16cd1f2.js.map +1 -0
- package/dist/node/{column-views.eeca917f.js → column-views.a1e29a15.js} +2 -2
- package/dist/node/{column-views.eeca917f.js.map → column-views.a1e29a15.js.map} +1 -1
- package/dist/node/column-views.aae09aca.js +2 -0
- package/dist/node/column-views.aae09aca.js.map +1 -0
- package/dist/node/column-views.abe0a664.js +2 -0
- package/dist/node/column-views.abe0a664.js.map +1 -0
- package/dist/node/{column-views.a2274834.js → column-views.ae9536b3.js} +2 -2
- package/dist/node/{column-views.a2274834.js.map → column-views.ae9536b3.js.map} +1 -1
- package/dist/node/column-views.aef76eee.js +2 -0
- package/dist/node/column-views.aef76eee.js.map +1 -0
- package/dist/node/column-views.cd7b223b.css +2 -0
- package/dist/node/column-views.cd7b223b.css.map +1 -0
- package/dist/node/{column-views.df97f28e.js → column-views.ce5904a6.js} +2 -2
- package/dist/node/{column-views.df97f28e.js.map → column-views.ce5904a6.js.map} +1 -1
- package/dist/node/column-views.d4545f9f.js +2 -0
- package/dist/node/column-views.d4545f9f.js.map +1 -0
- package/dist/node/{column-views.c7f6fc0a.js → column-views.d529d3aa.js} +2 -2
- package/dist/node/{column-views.c7f6fc0a.js.map → column-views.d529d3aa.js.map} +1 -1
- package/dist/node/{column-views.2d957a97.js → column-views.db4ccacc.js} +2 -2
- package/dist/node/column-views.db4ccacc.js.map +1 -0
- package/dist/node/column-views.e2562224.js +2 -0
- package/dist/node/column-views.e2562224.js.map +1 -0
- package/dist/node/column-views.e803e4ae.css +2 -0
- package/dist/node/column-views.e803e4ae.css.map +1 -0
- package/dist/node/column-views.ebe61439.js +2 -0
- package/dist/node/column-views.ebe61439.js.map +1 -0
- package/dist/node/column-views.edb4ba54.js +2 -0
- package/dist/node/column-views.edb4ba54.js.map +1 -0
- package/dist/node/column-views.f0f5cefd.js +2 -0
- package/dist/node/column-views.f0f5cefd.js.map +1 -0
- package/dist/node/column-views.f1ad131a.js +2 -0
- package/dist/node/column-views.f1ad131a.js.map +1 -0
- package/dist/node/{column-views.58d2f993.js → column-views.f7d72702.js} +2 -2
- package/dist/node/{column-views.58d2f993.js.map → column-views.f7d72702.js.map} +1 -1
- package/dist/node/{column-views.e3ba0594.js → column-views.fcdc74c4.js} +2 -2
- package/dist/node/{column-views.e3ba0594.js.map → column-views.fcdc74c4.js.map} +1 -1
- package/dist/node/index.js +1 -1
- package/dist/node/index.js.map +1 -1
- package/package.json +15 -13
- package/src/age-axis.module.sass +4 -2
- package/src/age-axis.ts +49 -15
- package/src/age-model-overlay.ts +22 -1
- package/src/column.module.sass +29 -9
- package/src/column.ts +99 -24
- package/src/correlation-chart/main.ts +11 -3
- package/src/correlation-chart/prepare-data.ts +7 -4
- package/src/correlation-chart/stories/correlation-chart.stories.ts +26 -1
- package/src/data-provider/base.ts +32 -24
- package/src/data-provider/fetch.ts +10 -3
- package/src/data-provider/index.ts +1 -0
- package/src/data-provider/store.ts +74 -13
- package/src/{units/selection.ts → data-provider/unit-selection.ts} +22 -8
- package/src/facets/base-sample-column.module.sass +14 -0
- package/src/facets/base-sample-column.ts +114 -0
- package/src/facets/detrital-zircon/index.ts +31 -63
- package/src/facets/fossils/index.module.sass +43 -13
- package/src/facets/fossils/index.ts +232 -158
- package/src/facets/fossils/provider.ts +121 -25
- package/src/facets/index.ts +1 -0
- package/src/facets/measurements/index.ts +1 -2
- package/src/maps/column-correlation/state.ts +0 -1
- package/src/prepare-units/composite-scale.ts +183 -155
- package/src/prepare-units/dynamic-scales.ts +298 -0
- package/src/prepare-units/helpers.ts +99 -87
- package/src/prepare-units/index.ts +77 -51
- package/src/prepare-units/types.ts +138 -0
- package/src/prepare-units/utils.ts +29 -1
- package/src/section.ts +46 -9
- package/src/unit-details/panel.module.sass +8 -1
- package/src/unit-details/panel.ts +123 -53
- package/src/unit-details/popover.ts +6 -1
- package/src/units/boxes.ts +2 -7
- package/src/units/composite.ts +7 -50
- package/src/units/index.ts +0 -1
- package/dist/esm/column-views.02f3732a.js.map +0 -1
- package/dist/esm/column-views.0a159282.js +0 -13
- package/dist/esm/column-views.1e055ed5.js +0 -53
- package/dist/esm/column-views.1e055ed5.js.map +0 -1
- package/dist/esm/column-views.2ff3dd8b.js.map +0 -1
- package/dist/esm/column-views.3048acc1.js +0 -66
- package/dist/esm/column-views.3048acc1.js.map +0 -1
- package/dist/esm/column-views.38a305a0.js +0 -13
- package/dist/esm/column-views.39657bbf.js.map +0 -1
- package/dist/esm/column-views.3f246167.js.map +0 -1
- package/dist/esm/column-views.42b89c52.js.map +0 -1
- package/dist/esm/column-views.448c0687.css.map +0 -1
- package/dist/esm/column-views.4ab0ec82.js.map +0 -1
- package/dist/esm/column-views.4d22c21c.js.map +0 -1
- package/dist/esm/column-views.547b2730.js.map +0 -1
- package/dist/esm/column-views.64a84c43.js.map +0 -1
- package/dist/esm/column-views.75ea6dbe.js.map +0 -1
- package/dist/esm/column-views.775846c9.js.map +0 -1
- package/dist/esm/column-views.77b49a43.js.map +0 -1
- package/dist/esm/column-views.7ca9e1cd.js.map +0 -1
- package/dist/esm/column-views.8703a35b.js +0 -163
- package/dist/esm/column-views.8703a35b.js.map +0 -1
- package/dist/esm/column-views.8d4ce558.css.map +0 -1
- package/dist/esm/column-views.8e3dec90.js.map +0 -1
- package/dist/esm/column-views.97d542eb.js.map +0 -1
- package/dist/esm/column-views.9892f825.js.map +0 -1
- package/dist/esm/column-views.a6301a41.js.map +0 -1
- package/dist/esm/column-views.b17f793f.css.map +0 -1
- package/dist/esm/column-views.b3c1eb9e.js +0 -16
- package/dist/esm/column-views.b3c1eb9e.js.map +0 -1
- package/dist/esm/column-views.b72918ce.css.map +0 -1
- package/dist/esm/column-views.c71c321c.js +0 -104
- package/dist/esm/column-views.c71c321c.js.map +0 -1
- package/dist/esm/column-views.cc5244c4.js.map +0 -1
- package/dist/esm/column-views.cdadc5c2.js.map +0 -1
- package/dist/esm/column-views.d48cb0d8.js.map +0 -1
- package/dist/esm/column-views.f08929e2.js.map +0 -1
- package/dist/esm/column-views.f20eb583.js.map +0 -1
- package/dist/node/column-views.085f4a51.js +0 -2
- package/dist/node/column-views.085f4a51.js.map +0 -1
- package/dist/node/column-views.0dfc7ef7.js +0 -2
- package/dist/node/column-views.0dfc7ef7.js.map +0 -1
- package/dist/node/column-views.1a0b56fc.js +0 -2
- package/dist/node/column-views.1a0b56fc.js.map +0 -1
- package/dist/node/column-views.2926f656.css +0 -2
- package/dist/node/column-views.2926f656.css.map +0 -1
- package/dist/node/column-views.2a6b842d.js.map +0 -1
- package/dist/node/column-views.2d957a97.js.map +0 -1
- package/dist/node/column-views.307661d1.css +0 -2
- package/dist/node/column-views.307661d1.css.map +0 -1
- package/dist/node/column-views.33752461.js +0 -2
- package/dist/node/column-views.33752461.js.map +0 -1
- package/dist/node/column-views.38357d4a.js +0 -2
- package/dist/node/column-views.38357d4a.js.map +0 -1
- package/dist/node/column-views.3a55ecd7.css.map +0 -1
- package/dist/node/column-views.3eeac38d.js +0 -2
- package/dist/node/column-views.3eeac38d.js.map +0 -1
- package/dist/node/column-views.45168c80.js +0 -2
- package/dist/node/column-views.45168c80.js.map +0 -1
- package/dist/node/column-views.4ca62e5d.js +0 -2
- package/dist/node/column-views.4ca62e5d.js.map +0 -1
- package/dist/node/column-views.6ae7bb69.js +0 -2
- package/dist/node/column-views.6ae7bb69.js.map +0 -1
- package/dist/node/column-views.6f7a432f.js +0 -2
- package/dist/node/column-views.6f7a432f.js.map +0 -1
- package/dist/node/column-views.755f726e.js +0 -2
- package/dist/node/column-views.755f726e.js.map +0 -1
- package/dist/node/column-views.758b9bc1.js +0 -2
- package/dist/node/column-views.758b9bc1.js.map +0 -1
- package/dist/node/column-views.78d3f3c5.js +0 -2
- package/dist/node/column-views.78d3f3c5.js.map +0 -1
- package/dist/node/column-views.80fcf105.js +0 -2
- package/dist/node/column-views.80fcf105.js.map +0 -1
- package/dist/node/column-views.8cfed88b.js +0 -2
- package/dist/node/column-views.8cfed88b.js.map +0 -1
- package/dist/node/column-views.91043465.js +0 -2
- package/dist/node/column-views.91043465.js.map +0 -1
- package/dist/node/column-views.976a829b.js +0 -2
- package/dist/node/column-views.976a829b.js.map +0 -1
- package/dist/node/column-views.99fb74c0.js +0 -2
- package/dist/node/column-views.99fb74c0.js.map +0 -1
- package/dist/node/column-views.9b7a9ae1.js +0 -2
- package/dist/node/column-views.9b7a9ae1.js.map +0 -1
- package/dist/node/column-views.9de31cdb.js +0 -2
- package/dist/node/column-views.9de31cdb.js.map +0 -1
- package/dist/node/column-views.a4e6d4ad.js +0 -2
- package/dist/node/column-views.a4e6d4ad.js.map +0 -1
- package/dist/node/column-views.a501cea0.js +0 -2
- package/dist/node/column-views.a501cea0.js.map +0 -1
- package/dist/node/column-views.a7256aa7.js +0 -2
- package/dist/node/column-views.a7256aa7.js.map +0 -1
- package/dist/node/column-views.c4b409e1.css +0 -2
- package/dist/node/column-views.c4b409e1.css.map +0 -1
- package/dist/node/column-views.cef1b814.js +0 -2
- package/dist/node/column-views.cef1b814.js.map +0 -1
- package/dist/node/column-views.d6708353.js +0 -2
- package/dist/node/column-views.d6708353.js.map +0 -1
- package/dist/node/column-views.d9add589.js +0 -2
- package/dist/node/column-views.d9add589.js.map +0 -1
- package/dist/node/column-views.dfb2361a.js +0 -2
- package/dist/node/column-views.dfb2361a.js.map +0 -1
- package/dist/node/column-views.e9515ec1.js +0 -2
- package/dist/node/column-views.e9515ec1.js.map +0 -1
|
@@ -14,8 +14,12 @@ import {
|
|
|
14
14
|
Parenthetical,
|
|
15
15
|
Value,
|
|
16
16
|
} from "@macrostrat/data-components";
|
|
17
|
-
import { useMacrostratData, useMacrostratDefs } from "../data-provider";
|
|
18
17
|
import {
|
|
18
|
+
useColumnUnitsMap,
|
|
19
|
+
useMacrostratData,
|
|
20
|
+
useMacrostratDefs,
|
|
21
|
+
} from "../data-provider";
|
|
22
|
+
import type {
|
|
19
23
|
Environment,
|
|
20
24
|
UnitLong,
|
|
21
25
|
UnitLongFull,
|
|
@@ -40,7 +44,8 @@ export function UnitDetailsPanel({
|
|
|
40
44
|
]),
|
|
41
45
|
lithologyFeatures,
|
|
42
46
|
actions,
|
|
43
|
-
|
|
47
|
+
hiddenActions = null,
|
|
48
|
+
onSelectUnit,
|
|
44
49
|
columnUnits,
|
|
45
50
|
onClickItem,
|
|
46
51
|
}: {
|
|
@@ -49,10 +54,11 @@ export function UnitDetailsPanel({
|
|
|
49
54
|
showLithologyProportions?: boolean;
|
|
50
55
|
className?: string;
|
|
51
56
|
actions?: ReactNode;
|
|
57
|
+
hiddenActions?: ReactNode;
|
|
52
58
|
features?: Set<UnitDetailsFeature>;
|
|
53
59
|
lithologyFeatures?: Set<LithologyTagFeature>;
|
|
54
60
|
columnUnits?: UnitLong[];
|
|
55
|
-
|
|
61
|
+
onSelectUnit?: (unitID: number) => void;
|
|
56
62
|
onClickItem?: (item: any) => void;
|
|
57
63
|
}) {
|
|
58
64
|
const [showJSON, setShowJSON] = useState(false);
|
|
@@ -66,24 +72,27 @@ export function UnitDetailsPanel({
|
|
|
66
72
|
features,
|
|
67
73
|
lithologyFeatures,
|
|
68
74
|
onClickItem,
|
|
75
|
+
onSelectUnit,
|
|
69
76
|
});
|
|
70
77
|
}
|
|
71
78
|
|
|
72
79
|
let title = defaultNameFunction(unit);
|
|
73
80
|
|
|
74
|
-
let hiddenActions = null;
|
|
75
81
|
if (features.has(UnitDetailsFeature.JSONToggle)) {
|
|
76
|
-
hiddenActions = h(
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
82
|
+
hiddenActions = h([
|
|
83
|
+
h(Button, {
|
|
84
|
+
icon: "code",
|
|
85
|
+
small: true,
|
|
86
|
+
minimal: true,
|
|
87
|
+
key: "json-view-toggle",
|
|
88
|
+
className: classNames("json-view-toggle", { enabled: setShowJSON }),
|
|
89
|
+
onClick(evt) {
|
|
90
|
+
setShowJSON(!showJSON);
|
|
91
|
+
evt.stopPropagation();
|
|
92
|
+
},
|
|
93
|
+
}),
|
|
94
|
+
hiddenActions,
|
|
95
|
+
]);
|
|
87
96
|
}
|
|
88
97
|
|
|
89
98
|
return h("div.unit-details-panel", { className }, [
|
|
@@ -114,15 +123,13 @@ export function LegendPanelHeader({
|
|
|
114
123
|
return h("header.legend-panel-header", [
|
|
115
124
|
h("div.title-container", [
|
|
116
125
|
h.if(title != null)("h3", title),
|
|
117
|
-
h.if(hiddenActions != null
|
|
126
|
+
h.if(hiddenActions != null)(
|
|
118
127
|
"span.hidden-actions-container",
|
|
119
|
-
h("div.hidden-actions",
|
|
120
|
-
h.if(id != null)("code.unit-id", id),
|
|
121
|
-
h.if(hiddenActions != null)([hiddenActions]),
|
|
122
|
-
]),
|
|
128
|
+
h("div.hidden-actions", hiddenActions),
|
|
123
129
|
),
|
|
124
130
|
]),
|
|
125
131
|
h("div.spacer"),
|
|
132
|
+
h.if(id != null)("code.unit-id", id),
|
|
126
133
|
h.if(actions != null)(ButtonGroup, { minimal: true }, actions),
|
|
127
134
|
h.if(onClose != null)(Button, {
|
|
128
135
|
icon: "cross",
|
|
@@ -145,7 +152,7 @@ export enum UnitDetailsFeature {
|
|
|
145
152
|
|
|
146
153
|
function UnitDetailsContent({
|
|
147
154
|
unit,
|
|
148
|
-
|
|
155
|
+
onSelectUnit,
|
|
149
156
|
columnUnits,
|
|
150
157
|
lithologyFeatures = new Set([
|
|
151
158
|
LithologyTagFeature.Proportion,
|
|
@@ -159,7 +166,7 @@ function UnitDetailsContent({
|
|
|
159
166
|
getItemHref,
|
|
160
167
|
}: {
|
|
161
168
|
unit: UnitLong;
|
|
162
|
-
|
|
169
|
+
onSelectUnit?: (unitID: number) => void;
|
|
163
170
|
columnUnits?: UnitLong[];
|
|
164
171
|
lithologyFeatures?: Set<LithologyTagFeature>;
|
|
165
172
|
features?: Set<UnitDetailsFeature>;
|
|
@@ -269,12 +276,20 @@ function UnitDetailsContent({
|
|
|
269
276
|
h(
|
|
270
277
|
DataField,
|
|
271
278
|
{ label: "Above" },
|
|
272
|
-
h(UnitIDList, {
|
|
279
|
+
h(UnitIDList, {
|
|
280
|
+
units: unit.units_above,
|
|
281
|
+
onSelectUnit,
|
|
282
|
+
showNames: true,
|
|
283
|
+
}),
|
|
273
284
|
),
|
|
274
285
|
h(
|
|
275
286
|
DataField,
|
|
276
287
|
{ label: "Below" },
|
|
277
|
-
h(UnitIDList, {
|
|
288
|
+
h(UnitIDList, {
|
|
289
|
+
units: unit.units_below,
|
|
290
|
+
onSelectUnit,
|
|
291
|
+
showNames: true,
|
|
292
|
+
}),
|
|
278
293
|
),
|
|
279
294
|
]),
|
|
280
295
|
colorSwatch,
|
|
@@ -529,6 +544,20 @@ function enhanceLithologies(
|
|
|
529
544
|
});
|
|
530
545
|
}
|
|
531
546
|
|
|
547
|
+
export function ClickableText({
|
|
548
|
+
onClick,
|
|
549
|
+
className,
|
|
550
|
+
children,
|
|
551
|
+
}: {
|
|
552
|
+
onClick: () => void;
|
|
553
|
+
className?: string;
|
|
554
|
+
children: ReactNode;
|
|
555
|
+
}) {
|
|
556
|
+
/** An optionally clickable text element */
|
|
557
|
+
const tag = onClick != null ? "a" : "span";
|
|
558
|
+
return h(tag, { onClick, className }, children);
|
|
559
|
+
}
|
|
560
|
+
|
|
532
561
|
export function Identifier({
|
|
533
562
|
id,
|
|
534
563
|
onClick,
|
|
@@ -539,51 +568,92 @@ export function Identifier({
|
|
|
539
568
|
className?: string;
|
|
540
569
|
}) {
|
|
541
570
|
/** An item that displays a numeric identifier, optionally clickable */
|
|
542
|
-
const
|
|
571
|
+
const _onClick = onClick != null ? () => onClick(id) : null;
|
|
572
|
+
|
|
543
573
|
return h(
|
|
544
|
-
|
|
574
|
+
ClickableText,
|
|
545
575
|
{
|
|
546
|
-
onClick
|
|
547
|
-
|
|
548
|
-
},
|
|
549
|
-
className: classNames(
|
|
550
|
-
"identifier",
|
|
551
|
-
{ clickable: onClick != null },
|
|
552
|
-
className,
|
|
553
|
-
),
|
|
576
|
+
onClick: _onClick,
|
|
577
|
+
className: classNames("identifier", className),
|
|
554
578
|
},
|
|
555
579
|
id,
|
|
556
580
|
);
|
|
557
581
|
}
|
|
558
582
|
|
|
559
|
-
|
|
560
|
-
|
|
583
|
+
type UnitInfo = {
|
|
584
|
+
unitID: number;
|
|
585
|
+
colID?: number;
|
|
586
|
+
name?: string;
|
|
587
|
+
};
|
|
561
588
|
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
589
|
+
function UnitIDList({ units, onSelectUnit, showNames = false }) {
|
|
590
|
+
const unitsMap = useColumnUnitsMap();
|
|
591
|
+
|
|
592
|
+
const extUnits: UnitInfo[] = useMemo(() => {
|
|
593
|
+
const u1 = units.filter((d) => d != 0);
|
|
594
|
+
if (showNames) {
|
|
595
|
+
return u1.map((unitID) => {
|
|
596
|
+
const unitData = unitsMap?.get(unitID);
|
|
597
|
+
let name: string = undefined;
|
|
598
|
+
if (unitData != null) {
|
|
599
|
+
name = defaultNameFunction(unitData);
|
|
600
|
+
}
|
|
601
|
+
return {
|
|
602
|
+
unitID,
|
|
603
|
+
colID: unitData?.col_id,
|
|
604
|
+
name,
|
|
605
|
+
};
|
|
606
|
+
});
|
|
607
|
+
} else {
|
|
608
|
+
return u1.map((unitID) => ({ unitID }));
|
|
609
|
+
}
|
|
610
|
+
}, [units, unitsMap]);
|
|
565
611
|
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
tag = "a";
|
|
612
|
+
if (extUnits.length === 0) {
|
|
613
|
+
return h("span.no-units", "None");
|
|
569
614
|
}
|
|
570
615
|
|
|
571
616
|
return h(
|
|
572
617
|
ItemList,
|
|
573
|
-
{ className: "
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
onClick() {
|
|
578
|
-
selectUnit?.(unitID);
|
|
579
|
-
},
|
|
580
|
-
key: unitID,
|
|
581
|
-
id: unitID,
|
|
582
|
-
});
|
|
583
|
-
}),
|
|
618
|
+
{ className: "units-list" },
|
|
619
|
+
extUnits.map((info) =>
|
|
620
|
+
h("span.item", h(UnitIdentifier, { ...info, onSelectUnit })),
|
|
621
|
+
),
|
|
584
622
|
);
|
|
585
623
|
}
|
|
586
624
|
|
|
625
|
+
function UnitIdentifier({
|
|
626
|
+
unitID,
|
|
627
|
+
colID,
|
|
628
|
+
name,
|
|
629
|
+
onSelectUnit,
|
|
630
|
+
}: UnitInfo & { onSelectUnit?: (unitID: number) => void }) {
|
|
631
|
+
const onClick = useMemo(() => {
|
|
632
|
+
if (onSelectUnit == null) return null;
|
|
633
|
+
return () => {
|
|
634
|
+
onSelectUnit(unitID);
|
|
635
|
+
};
|
|
636
|
+
}, [onSelectUnit]);
|
|
637
|
+
|
|
638
|
+
if (name != null) {
|
|
639
|
+
return h(
|
|
640
|
+
ClickableText,
|
|
641
|
+
{
|
|
642
|
+
className: "unit-name",
|
|
643
|
+
onClick,
|
|
644
|
+
},
|
|
645
|
+
name,
|
|
646
|
+
);
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
return h(Identifier, {
|
|
650
|
+
className: "unit-id",
|
|
651
|
+
onClick,
|
|
652
|
+
key: unitID,
|
|
653
|
+
id: unitID,
|
|
654
|
+
});
|
|
655
|
+
}
|
|
656
|
+
|
|
587
657
|
function IntervalProportions({ unit, onClickItem }) {
|
|
588
658
|
const i0 = unit.b_int_id;
|
|
589
659
|
const i1 = unit.t_int_id;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import hyper from "@macrostrat/hyper";
|
|
2
2
|
import { Popover } from "@blueprintjs/core";
|
|
3
3
|
import styles from "./popover.module.sass";
|
|
4
|
-
import { useSelectedUnit, useUnitSelectionStore } from "../
|
|
4
|
+
import { useSelectedUnit, useUnitSelectionStore } from "../data-provider";
|
|
5
5
|
import { UnitDetailsPanel } from "./panel";
|
|
6
6
|
|
|
7
7
|
const h = hyper.styled(styles);
|
|
@@ -54,6 +54,7 @@ function InteractionBarrier({ children }) {
|
|
|
54
54
|
|
|
55
55
|
export function UnitSelectionPopover() {
|
|
56
56
|
const unit = useSelectedUnit();
|
|
57
|
+
const selectUnit = useUnitSelectionStore((state) => state.onUnitSelected);
|
|
57
58
|
const position = useUnitSelectionStore((state) => state.overlayPosition);
|
|
58
59
|
if (unit == null) {
|
|
59
60
|
return null;
|
|
@@ -76,6 +77,10 @@ export function UnitSelectionPopover() {
|
|
|
76
77
|
unit,
|
|
77
78
|
showLithologyProportions: true,
|
|
78
79
|
className: "legend-panel",
|
|
80
|
+
onSelectUnit: (id: number) => {
|
|
81
|
+
console.log("Selected unit in popover:", id);
|
|
82
|
+
selectUnit(id, null, null);
|
|
83
|
+
},
|
|
79
84
|
}),
|
|
80
85
|
),
|
|
81
86
|
);
|
package/src/units/boxes.ts
CHANGED
|
@@ -12,12 +12,11 @@ import { SizeAwareLabel, Clickable } from "@macrostrat/ui-components";
|
|
|
12
12
|
import hyper from "@macrostrat/hyper";
|
|
13
13
|
import { forwardRef, ReactNode, useContext, useMemo } from "react";
|
|
14
14
|
import { resolveID, scalePattern } from "./resolvers";
|
|
15
|
-
import { useUnitSelectionTarget } from "
|
|
15
|
+
import { useUnitSelectionTarget, useLithologies } from "../data-provider";
|
|
16
16
|
import { IUnit } from "./types";
|
|
17
17
|
import styles from "./boxes.module.sass";
|
|
18
18
|
import classNames from "classnames";
|
|
19
19
|
import { getUnitHeightRange } from "../prepare-units/utils";
|
|
20
|
-
import { useLithologies } from "../data-provider";
|
|
21
20
|
import { getMixedUnitColor } from "./colors";
|
|
22
21
|
import type { RectBounds } from "./types";
|
|
23
22
|
|
|
@@ -45,9 +44,7 @@ interface UnitProps extends Clickable, Partial<RectBounds>, UnitRectOptions {
|
|
|
45
44
|
}
|
|
46
45
|
|
|
47
46
|
export interface LabeledUnitProps
|
|
48
|
-
extends UnitRectOptions,
|
|
49
|
-
Clickable,
|
|
50
|
-
Partial<RectBounds> {
|
|
47
|
+
extends UnitRectOptions, Clickable, Partial<RectBounds> {
|
|
51
48
|
division: IUnit;
|
|
52
49
|
patternID?: string | number;
|
|
53
50
|
label: string;
|
|
@@ -162,8 +159,6 @@ function Unit(props: UnitProps) {
|
|
|
162
159
|
|
|
163
160
|
const [ref, selected, onClick] = useUnitSelectionTarget(d);
|
|
164
161
|
|
|
165
|
-
//const key = `unit-${d.unit_id}`;
|
|
166
|
-
|
|
167
162
|
return h(
|
|
168
163
|
"g.unit",
|
|
169
164
|
{
|
package/src/units/composite.ts
CHANGED
|
@@ -16,8 +16,11 @@ import {
|
|
|
16
16
|
import { BaseUnit } from "@macrostrat/api-types";
|
|
17
17
|
import { LabeledUnit, UnitBoxes } from "./boxes";
|
|
18
18
|
import styles from "./composite.module.sass";
|
|
19
|
-
import {
|
|
20
|
-
|
|
19
|
+
import {
|
|
20
|
+
useCompositeScale,
|
|
21
|
+
useMacrostratColumnData,
|
|
22
|
+
useUnitSelectionDispatch,
|
|
23
|
+
} from "../data-provider";
|
|
21
24
|
|
|
22
25
|
const h = hyperStyled(styles);
|
|
23
26
|
|
|
@@ -157,13 +160,12 @@ export function SectionLabelsColumn(props: ICompositeUnitProps) {
|
|
|
157
160
|
shouldRenderNote,
|
|
158
161
|
} = props;
|
|
159
162
|
|
|
160
|
-
const {
|
|
163
|
+
const { totalHeight, axisType } = useMacrostratColumnData();
|
|
164
|
+
const _compositeScale = useCompositeScale();
|
|
161
165
|
|
|
162
166
|
const unlabeledUnits = useContext(UnlabeledDivisionsContext);
|
|
163
167
|
const unitsToLabel = noteMode == "unlabeled" ? unlabeledUnits : undefined;
|
|
164
168
|
|
|
165
|
-
const _compositeScale = compositeScale(sections);
|
|
166
|
-
|
|
167
169
|
const selectUnit = useUnitSelectionDispatch();
|
|
168
170
|
|
|
169
171
|
return h("div.section-labels-column", [
|
|
@@ -199,57 +201,12 @@ export function SectionLabelsColumn(props: ICompositeUnitProps) {
|
|
|
199
201
|
]);
|
|
200
202
|
}
|
|
201
203
|
|
|
202
|
-
type CompositeScaleOpts = {
|
|
203
|
-
clamped?: boolean;
|
|
204
|
-
};
|
|
205
|
-
|
|
206
204
|
export interface CompositeColumnScale {
|
|
207
205
|
(val: number): number;
|
|
208
206
|
copy(): CompositeColumnScale;
|
|
209
207
|
domain(): number[];
|
|
210
208
|
}
|
|
211
209
|
|
|
212
|
-
export function compositeScale(
|
|
213
|
-
sections,
|
|
214
|
-
opts: CompositeScaleOpts = {},
|
|
215
|
-
): CompositeColumnScale {
|
|
216
|
-
/** A basic composite scale that works across all sections. This isn't a fully featured,
|
|
217
|
-
* contiuous D3 scale, but it shares enough attributes to be useful for
|
|
218
|
-
* laying out notes.
|
|
219
|
-
*/
|
|
220
|
-
const { clamped = true } = opts;
|
|
221
|
-
|
|
222
|
-
const scales = sections.map((group) => {
|
|
223
|
-
const { scaleInfo } = group;
|
|
224
|
-
return scaleInfo.scale.copy().clamp(clamped);
|
|
225
|
-
});
|
|
226
|
-
|
|
227
|
-
let baseScale: any = (val) => {
|
|
228
|
-
// Find the scale for the section that contains the value
|
|
229
|
-
const scale = scales.find((scale) => {
|
|
230
|
-
return scale.domain()[0] <= val && val <= scale.domain()[1];
|
|
231
|
-
});
|
|
232
|
-
|
|
233
|
-
if (scale) {
|
|
234
|
-
return scale(val);
|
|
235
|
-
} else {
|
|
236
|
-
// return nan
|
|
237
|
-
return NaN;
|
|
238
|
-
}
|
|
239
|
-
};
|
|
240
|
-
|
|
241
|
-
baseScale.copy = () => {
|
|
242
|
-
return baseScale;
|
|
243
|
-
};
|
|
244
|
-
|
|
245
|
-
baseScale.domain = () => {
|
|
246
|
-
// Return a domain that covers all sections
|
|
247
|
-
return [scales[0].domain()[0], scales[scales.length - 1].domain()[1]];
|
|
248
|
-
};
|
|
249
|
-
|
|
250
|
-
return baseScale as CompositeColumnScale;
|
|
251
|
-
}
|
|
252
|
-
|
|
253
210
|
export function ColumnNotesProvider(props) {
|
|
254
211
|
// A fake column axis provider that allows scales to cross
|
|
255
212
|
const { children, scale, totalHeight, pixelScale } = props;
|
package/src/units/index.ts
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;;;;;;;;;;;;AAeA,MAAM,0BAAI,CAAA,GAAA,sBAAI,EAAE,MAAM,CAAC,CAAA,GAAA,uEAAK;AAE5B,MAAM,oCAAc,CAAC,SAAE,KAAK,eAAE,cAAc,gBAAI,aAAa,OAAO;IAClE,MAAM,eAAE,WAAW,EAAE,GAAG,CAAA,GAAA,iBAAS,EAAE,CAAA,GAAA,oBAAY;IAC/C,iCAAiC;IACjC,IAAI,IAAI,KAAK,GAAG,CAAC,KAAK,KAAK,CAAC,cAAc,cAAc;IAExD,OAAO,wBAAE,UAAU;QAAE,WAAW;IAAkB,GAAG;QACnD,wBAAE,CAAA,GAAA,iBAAS,GAAG;YACZ,OAAO;wBACP;QACF;KACD;AACH;AAEO,SAAS,0CAAkB,KAAK;IACrC,MAAM,SAAE,QAAQ,aAAO,OAAO,iBAAM,SAAS,UAAE,MAAM,EAAE,GAAG;IAC1D,OAAO,wBACL,wCACA;mBAAE;QAAW,OAAO;oBAAE;QAAO;IAAE,GAC/B;QACE;QACA;QACA,wBAAE,EAAE,CAAC,MAAM,CAAA,GAAA,oBAAY,GAAG;YAAE,WAAW;QAAgB,GAAG;KAC3D;AAEL;AAEO,SAAS;IACd,MAAM,YAAE,QAAQ,YAAE,QAAQ,eAAE,WAAW,EAAE,GAAG,CAAA,GAAA,yCAAsB;IAElE,MAAM,WAAW,SAAS,GAAG,CAAC,CAAC;QAC7B,OAAO;YACL,KAAK,CAAC,QAAQ,EAAE,QAAQ,UAAU,EAAE;YACpC,GAAG,QAAQ,SAAS;QACtB;IACF;IAEA,OAAO,wBAAE,2CAAsB;kBAC7B;kBACA;qBACA;IACF;AACF;AAQO,SAAS,0CAAqB,KAAsC;IACzE,MAAM,YAAE,QAAQ,eAAE,WAAW,YAAE,QAAQ,EAAE,GAAG;IAE5C,IAAI,YAAY,CAAA,GAAA,qBAAa,EAAE,OAAO,EACpC,OAAO;IAGT,IAAI,YAAoB;IACxB,IAAI,WAAW;IACf,IAAI,YAAY,CAAA,GAAA,qBAAa,EAAE,KAAK,EAAE;QACpC,YAAY;QACZ,WAAW;IACb,OAAO,IAAI,YAAY,CAAA,GAAA,qBAAa,EAAE,MAAM,EAAE;QAC5C,YAAY;QACZ,WAAW;IACb;IAEA,OAAO,wBAAE;QACP,wBAAE,2CAAmB;YACnB,OAAO;YACP,MAAM;YACN,QAAQ;QACV;QACA,wBACE,CAAA,GAAA,UAAE,GACF;YACE,WAAW;YACX,OAAO;gBAAE,OAAO,CAAC,IAAI,CAAC;gBAAE,QAAQ,GAAG,YAAY,EAAE,CAAC;YAAC;YACnD,OAAO;YACP,QAAQ;QACV,GACA,SAAS,GAAG,CAAC,CAAC,OAAO;YACnB,MAAM,OAAE,GAAG,SAAE,KAAK,EAAE,GAAG;YAEvB,OAAO,wBAAE,CAAA,GAAA,cAAM,GAAG;qBAChB;gBACA,WAAW;uBACX;gBACA,eAAe;YACjB;QACF;KAEH;AACH;AAEO,SAAS,0CAAU,OAAE,GAAG,EAAE;IAC/B,qEAAqE,GACrE,MAAM,QAAQ,CAAA,GAAA,wCAAgB;IAC9B,MAAM,WAAW,MAAM;IAEvB,QAAQ,GAAG,CAAC,KAAK;IAEjB,IAAI,OAAO,QAAQ,YAAY,MAC7B,OAAO;IAGT,OAAO,wBACL,kBACA;QACE,OAAO;YACL,KAAK;QACP;IACF,GACA;QAAC,wBAAE;QAAa,wBAAE,CAAA,GAAA,yCAAO,GAAG;iBAAE;YAAK,WAAW;QAAQ;KAAG;AAE7D","sources":["packages/column-views/src/age-axis.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport {\n SVG,\n ColumnAxis,\n ColumnContext,\n ColumnAxisType,\n AgeAxis,\n} from \"@macrostrat/column-components\";\nimport { useContext } from \"react\";\nimport styles from \"./age-axis.module.sass\";\nimport { useCompositeScale, useMacrostratColumnData } from \"./data-provider\";\nimport { Parenthetical } from \"@macrostrat/data-components\";\nimport { PackageScaleLayoutData } from \"./prepare-units/composite-scale\";\nimport { AgeLabel } from \"./unit-details\";\n\nconst h = hyper.styled(styles);\n\nconst AgeAxisCore = ({ ticks, tickSpacing = 40, showDomain = false }) => {\n const { pixelHeight } = useContext(ColumnContext);\n // A tick roughly every 40 pixels\n let v = Math.max(Math.round(pixelHeight / tickSpacing), 1);\n\n return h(\"g.axis\", { transform: \"translate(20 0)\" }, [\n h(ColumnAxis, {\n ticks: v,\n showDomain,\n }),\n ]);\n};\n\nexport function VerticalAxisLabel(props) {\n const { label = \"Age\", unit = \"Ma\", className, height } = props;\n return h(\n \"div.column-axis-label.age-axis-label\",\n { className, style: { height } },\n [\n label,\n \" \",\n h.if(unit)(Parenthetical, { className: \"age-axis-unit\" }, unit),\n ],\n );\n}\n\nexport function CompositeAgeAxis() {\n const { axisType, sections, totalHeight } = useMacrostratColumnData();\n\n const packages = sections.map((section) => {\n return {\n key: `section-${section.section_id}`,\n ...section.scaleInfo,\n };\n });\n\n return h(CompositeAgeAxisCore, {\n axisType,\n packages,\n totalHeight,\n });\n}\n\nexport interface CompositeStratigraphicScaleInfo {\n axisType: ColumnAxisType;\n totalHeight: number;\n packages: PackageScaleLayoutData[];\n}\n\nexport function CompositeAgeAxisCore(props: CompositeStratigraphicScaleInfo) {\n const { axisType, totalHeight, packages } = props;\n\n if (axisType == ColumnAxisType.ORDINAL) {\n return null;\n }\n\n let axisLabel: string = \"Age\";\n let axisUnit = \"Ma\";\n if (axisType == ColumnAxisType.DEPTH) {\n axisLabel = \"Depth\";\n axisUnit = \"m\";\n } else if (axisType == ColumnAxisType.HEIGHT) {\n axisLabel = \"Height\";\n axisUnit = \"m\";\n }\n\n return h([\n h(VerticalAxisLabel, {\n label: axisLabel,\n unit: axisUnit,\n height: totalHeight,\n }),\n h(\n SVG,\n {\n className: \"age-axis-column\",\n style: { width: `22px`, height: `${totalHeight}px` },\n width: 22,\n height: totalHeight,\n },\n packages.map((group, i) => {\n const { key, scale } = group;\n\n return h(AgeAxis, {\n key,\n className: \"age-axis\",\n scale,\n tickSizeOuter: 3,\n });\n }),\n ),\n ]);\n}\n\nexport function AgeCursor({ age }) {\n /** A cursor that shows the age at a specific point on the age axis. */\n const scale = useCompositeScale();\n const heightPx = scale(age);\n\n console.log(age, heightPx);\n\n if (age == null || heightPx == null) {\n return null;\n }\n\n return h(\n \"div.age-cursor\",\n {\n style: {\n top: heightPx,\n },\n },\n [h(\"div.line\"), h(AgeLabel, { age, className: \"label\" })],\n );\n}\n"],"names":[],"version":3,"file":"column-views.02f3732a.js.map"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import {fetchAllColumns as $33a46f9423c8104a$export$45bd78cd093090fa, useColumnFeatures as $33a46f9423c8104a$export$e3270a4e30e40ff9, fetchLithologies as $33a46f9423c8104a$export$1aa679bd5e605f82, fetchIntervals as $33a46f9423c8104a$export$5d2ec2e733dfe6c7, fetchEnvironments as $33a46f9423c8104a$export$780b4b253712916c, fetchRefs as $33a46f9423c8104a$export$cd7bfa0860f58b96, fetchStratNames as $33a46f9423c8104a$export$8ea8f45a7ffe4183, fetchUnits as $33a46f9423c8104a$export$b97b9bdd6a521298, fetchColumnUnits as $33a46f9423c8104a$export$d3d8b0fabcc76c5d} from "./column-views.3f246167.js";
|
|
2
|
-
import {useMacrostratStore as $774a5efa27d1c77b$export$fb98d5bae3a6800, useMacrostratDefs as $774a5efa27d1c77b$export$89dd4e5ae4a82373, useMacrostratColumns as $774a5efa27d1c77b$export$81eaae0b474404fd, useMacrostratData as $774a5efa27d1c77b$export$b9c9fc603d74a555, MacrostratDataProvider as $774a5efa27d1c77b$export$690613f93cdc5576, MacrostratAPIProvider as $774a5efa27d1c77b$export$3098013bc6cc316d, MacrostratColumnProvider as $774a5efa27d1c77b$export$9e42f9b6e0d67c7d, LithologiesProvider as $774a5efa27d1c77b$export$8492a5cae82b6a70, useLithologies as $774a5efa27d1c77b$export$4d18a90c945d129f, useEnvironments as $774a5efa27d1c77b$export$c6b216bf4c71b61f} from "./column-views.7ca9e1cd.js";
|
|
3
|
-
import {useColumnNav as $b8de97dfa82f4910$export$91cb5ac808759b34, ColumnNavProvider as $b8de97dfa82f4910$export$36fed9e0f93a8fde} from "./column-views.6d6b73b4.js";
|
|
4
|
-
import {MacrostratColumnDataProvider as $d5074f164411387e$export$7fec7bd80ff9c10e, useMacrostratColumnData as $d5074f164411387e$export$f8509b7cce386c7d, useMacrostratUnits as $d5074f164411387e$export$6fb40844db555b2, useCompositeScale as $d5074f164411387e$export$a7fc62995ec4f76} from "./column-views.1e055ed5.js";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
export {$33a46f9423c8104a$export$45bd78cd093090fa as fetchAllColumns, $33a46f9423c8104a$export$e3270a4e30e40ff9 as useColumnFeatures, $33a46f9423c8104a$export$1aa679bd5e605f82 as fetchLithologies, $33a46f9423c8104a$export$5d2ec2e733dfe6c7 as fetchIntervals, $33a46f9423c8104a$export$780b4b253712916c as fetchEnvironments, $33a46f9423c8104a$export$cd7bfa0860f58b96 as fetchRefs, $33a46f9423c8104a$export$8ea8f45a7ffe4183 as fetchStratNames, $33a46f9423c8104a$export$b97b9bdd6a521298 as fetchUnits, $33a46f9423c8104a$export$d3d8b0fabcc76c5d as fetchColumnUnits, $774a5efa27d1c77b$export$fb98d5bae3a6800 as useMacrostratStore, $774a5efa27d1c77b$export$89dd4e5ae4a82373 as useMacrostratDefs, $774a5efa27d1c77b$export$81eaae0b474404fd as useMacrostratColumns, $774a5efa27d1c77b$export$b9c9fc603d74a555 as useMacrostratData, $774a5efa27d1c77b$export$690613f93cdc5576 as MacrostratDataProvider, $774a5efa27d1c77b$export$3098013bc6cc316d as MacrostratAPIProvider, $774a5efa27d1c77b$export$9e42f9b6e0d67c7d as MacrostratColumnProvider, $774a5efa27d1c77b$export$8492a5cae82b6a70 as LithologiesProvider, $774a5efa27d1c77b$export$4d18a90c945d129f as useLithologies, $774a5efa27d1c77b$export$c6b216bf4c71b61f as useEnvironments, $b8de97dfa82f4910$export$91cb5ac808759b34 as useColumnNav, $b8de97dfa82f4910$export$36fed9e0f93a8fde as ColumnNavProvider, $d5074f164411387e$export$7fec7bd80ff9c10e as MacrostratColumnDataProvider, $d5074f164411387e$export$f8509b7cce386c7d as useMacrostratColumnData, $d5074f164411387e$export$6fb40844db555b2 as useMacrostratUnits, $d5074f164411387e$export$a7fc62995ec4f76 as useCompositeScale};
|
|
13
|
-
//# sourceMappingURL=column-views.0a159282.js.map
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import {createCompositeScale as $728f6cf6c12cd490$export$3ada7641926a616d} from "./column-views.4ab0ec82.js";
|
|
2
|
-
import {createContext as $a90Ta$createContext, useMemo as $a90Ta$useMemo, useContext as $a90Ta$useContext} from "react";
|
|
3
|
-
import $a90Ta$macrostrathyper from "@macrostrat/hyper";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const $d5074f164411387e$var$MacrostratColumnDataContext = (0, $a90Ta$createContext)(null);
|
|
9
|
-
function $d5074f164411387e$export$7fec7bd80ff9c10e({ children: children, units: units, sections: sections, totalHeight: totalHeight, axisType: axisType }) {
|
|
10
|
-
/** Provider for Macrostrat column data.
|
|
11
|
-
* As a general rule, we want to provide data and column-axis
|
|
12
|
-
* height calculations through the context, since these need to
|
|
13
|
-
* be accessed by any component that lays out information on the
|
|
14
|
-
* column.
|
|
15
|
-
*
|
|
16
|
-
* Cross-axis layout and view configuration (e.g., showing and hiding
|
|
17
|
-
* of different components or labels) should be handled through passing
|
|
18
|
-
* props to the components themselves.
|
|
19
|
-
* */ const value = (0, $a90Ta$useMemo)(()=>{
|
|
20
|
-
return {
|
|
21
|
-
units: units,
|
|
22
|
-
sections: sections,
|
|
23
|
-
totalHeight: totalHeight,
|
|
24
|
-
axisType: axisType
|
|
25
|
-
};
|
|
26
|
-
}, [
|
|
27
|
-
units,
|
|
28
|
-
sections,
|
|
29
|
-
totalHeight,
|
|
30
|
-
axisType
|
|
31
|
-
]);
|
|
32
|
-
return (0, $a90Ta$macrostrathyper)($d5074f164411387e$var$MacrostratColumnDataContext.Provider, {
|
|
33
|
-
value: value
|
|
34
|
-
}, children);
|
|
35
|
-
}
|
|
36
|
-
function $d5074f164411387e$export$f8509b7cce386c7d() {
|
|
37
|
-
const ctx = (0, $a90Ta$useContext)($d5074f164411387e$var$MacrostratColumnDataContext);
|
|
38
|
-
if (!ctx) throw new Error("useMacrostratColumnData must be used within a MacrostratColumnDataProvider");
|
|
39
|
-
return ctx;
|
|
40
|
-
}
|
|
41
|
-
function $d5074f164411387e$export$6fb40844db555b2() {
|
|
42
|
-
return $d5074f164411387e$export$f8509b7cce386c7d().units;
|
|
43
|
-
}
|
|
44
|
-
function $d5074f164411387e$export$a7fc62995ec4f76() {
|
|
45
|
-
const ctx = $d5074f164411387e$export$f8509b7cce386c7d();
|
|
46
|
-
return (0, $a90Ta$useMemo)(()=>(0, $728f6cf6c12cd490$export$3ada7641926a616d)(ctx.sections, true), [
|
|
47
|
-
ctx.sections
|
|
48
|
-
]);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
export {$d5074f164411387e$export$7fec7bd80ff9c10e as MacrostratColumnDataProvider, $d5074f164411387e$export$f8509b7cce386c7d as useMacrostratColumnData, $d5074f164411387e$export$6fb40844db555b2 as useMacrostratUnits, $d5074f164411387e$export$a7fc62995ec4f76 as useCompositeScale};
|
|
53
|
-
//# sourceMappingURL=column-views.1e055ed5.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":";;;;;;;AAuBA,MAAM,oDACJ,CAAA,GAAA,oBAAY,EAA+B;AAEtC,SAAS,0CAA6B,YAC3C,QAAQ,SACR,KAAK,YACL,QAAQ,eACR,WAAW,YACX,QAAQ,EAC8C;IACtD;;;;;;;;;KASG,GAEH,MAAM,QAAQ,CAAA,GAAA,cAAM,EAAE;QACpB,OAAO;mBACL;sBACA;yBACA;sBACA;QACF;IACF,GAAG;QAAC;QAAO;QAAU;QAAa;KAAS;IAE3C,OAAO,CAAA,GAAA,sBAAA,EAAE,kDAA4B,QAAQ,EAAE;eAAE;IAAM,GAAG;AAC5D;AAEO,SAAS;IACd,MAAM,MAAM,CAAA,GAAA,iBAAS,EAAE;IACvB,IAAI,CAAC,KACH,MAAM,IAAI,MACR;IAGJ,OAAO;AACT;AAEO,SAAS;IACd,OAAO,4CAA0B,KAAK;AACxC;AAEO,SAAS;IACd,MAAM,MAAM;IACZ,OAAO,CAAA,GAAA,cAAM,EACX,IAAM,CAAA,GAAA,yCAAmB,EAAE,IAAI,QAAQ,EAAE,OACzC;QAAC,IAAI,QAAQ;KAAC;AAElB","sources":["packages/column-views/src/data-provider/store.ts"],"sourcesContent":["import {\n createContext,\n useContext,\n ReactNode,\n useMemo,\n useEffect,\n} from \"react\";\nimport h from \"@macrostrat/hyper\";\nimport {\n createCompositeScale,\n PackageLayoutData,\n CompositeColumnScale,\n} from \"../prepare-units/composite-scale\";\nimport { ExtUnit } from \"../prepare-units/helpers\";\nimport { ColumnAxisType } from \"@macrostrat/column-components\";\n\nexport interface MacrostratColumnDataContext {\n units: ExtUnit[];\n sections: PackageLayoutData[];\n totalHeight?: number;\n axisType?: ColumnAxisType;\n}\n\nconst MacrostratColumnDataContext =\n createContext<MacrostratColumnDataContext>(null);\n\nexport function MacrostratColumnDataProvider({\n children,\n units,\n sections,\n totalHeight,\n axisType,\n}: MacrostratColumnDataContext & { children: ReactNode }) {\n /** Provider for Macrostrat column data.\n * As a general rule, we want to provide data and column-axis\n * height calculations through the context, since these need to\n * be accessed by any component that lays out information on the\n * column.\n *\n * Cross-axis layout and view configuration (e.g., showing and hiding\n * of different components or labels) should be handled through passing\n * props to the components themselves.\n * */\n\n const value = useMemo(() => {\n return {\n units,\n sections,\n totalHeight,\n axisType,\n };\n }, [units, sections, totalHeight, axisType]);\n\n return h(MacrostratColumnDataContext.Provider, { value }, children);\n}\n\nexport function useMacrostratColumnData() {\n const ctx = useContext(MacrostratColumnDataContext);\n if (!ctx) {\n throw new Error(\n \"useMacrostratColumnData must be used within a MacrostratColumnDataProvider\",\n );\n }\n return ctx;\n}\n\nexport function useMacrostratUnits() {\n return useMacrostratColumnData().units;\n}\n\nexport function useCompositeScale(): CompositeColumnScale {\n const ctx = useMacrostratColumnData();\n return useMemo(\n () => createCompositeScale(ctx.sections, true),\n [ctx.sections],\n );\n}\n"],"names":[],"version":3,"file":"column-views.1e055ed5.js.map"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;;;;;;;;;;;;;;AAcA,MAAM,0BAAI,CAAA,GAAA,sBAAI,EAAE,MAAM,CAAC,CAAA,GAAA,uEAAK;AAgB5B,SAAS,sCAAgB,QAAE,IAAI,EAAE;IAC/B,MAAM,UAAE,MAAM,UAAE,MAAM,EAAE,GAAG,CAAA,GAAA,kBAAU;IAErC,MAAM,SAAE,KAAK,SAAE,KAAK,EAAE,GAAG;IACzB,MAAM,IAAI,OAAO;IACjB,MAAM,KAAK,OAAO;IAElB,OAAO,wBAAE,yBAAyB;WAAE;QAAG,OAAO,KAAK;QAAG,GAAG;gBAAG;IAAO;AACrE;AAEA,SAAS,0CAAc,KAAwB;IAC7C,MAAM,QAAE,IAAI,SAAE,KAAK,UAAE,MAAM,SAAE,KAAK,WAAE,OAAO,EAAE,GAAG;IAChD,MAAM,QAAE,IAAI,QAAE,IAAI,EAAE,GAAG;IACvB,MAAM,YAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,EAAE;IAE5B,MAAM,SAAS;IAEf,MAAM,aAAa,SAAS,SAAS;IACrC,MAAM,iBAAiB,aAAa;IAEpC,OAAO,wBACL,sBACA;QAAE,WAAW,CAAA,GAAA,iBAAS,EAAE;YAAE,aAAa;QAAe;IAAG,GACzD;QACE,wBACE,CAAA,GAAA,2BAAmB,GACnB;mBAAE;YAAO,aAAa;YAAQ,gBAAgB;YAAM,eAAe;QAAG,GACtE;YACE,wBAAE,EAAE,CAAC,QAAQ,MAAM,uCAAiB;sBAAE;YAAK;YAC3C,KAAK,GAAG,CAAC,CAAC;gBACR,OAAO,wBAAE,CAAA,GAAA,qBAAa,GAAG;oBACvB,WAAW;oBACX,MAAM,EAAE,aAAa;oBACrB,OAAO;gBACT;YACF;SACD;KAEJ;AAEL;AAEA,MAAM,qCAAe,CAAC,KAAO,CAAC,IAAM,EAAE,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC,OAAO;AAE9D,SAAS,0CAAe,YAAE,QAAQ,SAAE,QAAQ,WAAW;IACrD,MAAM,OAAO,CAAA,GAAA,yCAAsB,EAAE;QAAE,QAAQ;IAAS;IACxD,MAAM,QAAQ,CAAA,GAAA,wCAAiB;IAE/B,MAAM,QAAe,CAAA,GAAA,cAAM,EAAE;QAC3B,IAAI,QAAQ,QAAQ,SAAS,MAAM,OAAO,EAAE;QAC5C,IAAI,aAAa,MAAM,IAAI,CAAC,KAAK,MAAM;QACvC,WAAW,IAAI,CAAC,CAAC,GAAG;YAClB,MAAM,KAAK,MAAM,SAAS,CAAC,mCAAa;YACxC,MAAM,KAAK,MAAM,SAAS,CAAC,mCAAa;YACxC,OAAO,KAAK;QACd;QAEA,MAAM,QAAQ,WAAW,GAAG,CAAC,CAAC;YAC5B,MAAM,OAAO,MAAM,IAAI,CAAC,mCAAa;YACrC,OAAO;gBACL,YAAY,MAAM;gBAClB,QAAQ,MAAM;gBACd,MAAM;sBACN;gBACA,IAAI,MAAM;YACZ;QACF;QAEA,OAAO,MAAM,MAAM,CAAC,CAAC,IAAM,EAAE,IAAI,IAAI;IACvC,GAAG;QAAC;QAAM;KAAM;IAEhB,MAAM,QAAQ;IACd,MAAM,cAAc;IAEpB,MAAM,gBAAgB,QAAQ;IAE9B,MAAM,gBAAgB,CAAA,GAAA,cAAM,EAAE;QAC5B,OAAO,CAAC;YACN,OAAO,wBAAE,2CAAe;gBACtB,OAAO;gBACP,QAAQ;uBACR;gBACA,GAAG,KAAK;YACV;QACF;IACF,GAAG;QAAC;QAAO;KAAM;IAEjB,IAAI,QAAQ,QAAQ,SAAS,MAAM,OAAO;IAE1C,OAAO,wBACL,kBACA,wBAAE,CAAA,GAAA,yCAAU,GAAG;eACb;qBACA;eACA;uBACA;QACA,0BAA0B;IAC5B;AAEJ","sources":["packages/column-views/src/facets/detrital-zircon/index.ts"],"sourcesContent":["import {\n DetritalSpectrumPlot,\n DetritalSeries,\n usePlotArea,\n} from \"@macrostrat/data-components\";\nimport { IUnit } from \"../../units/types\";\nimport hyper from \"@macrostrat/hyper\";\nimport { useDetritalMeasurements, MeasurementInfo } from \"./provider\";\nimport { useMacrostratUnits } from \"../../data-provider\";\nimport { ColumnNotes } from \"../../notes\";\nimport { useMemo } from \"react\";\nimport styles from \"./index.module.sass\";\nimport classNames from \"classnames\";\n\nconst h = hyper.styled(styles);\n\ninterface DetritalItemProps {\n note: {\n data: MeasurementInfo[];\n unit?: IUnit;\n };\n spacing?: {\n below?: number;\n above?: number;\n };\n width?: number;\n height?: number;\n color?: string;\n}\n\nfunction DepositionalAge({ unit }) {\n const { xScale, height } = usePlotArea();\n\n const { t_age, b_age } = unit;\n const x = xScale(t_age);\n const x1 = xScale(b_age);\n\n return h(\"rect.depositional-age\", { x, width: x1 - x, y: 0, height });\n}\n\nfunction DetritalGroup(props: DetritalItemProps) {\n const { note, width, height, color, spacing } = props;\n const { data, unit } = note;\n const { geo_unit } = data[0];\n\n const _color = color;\n\n const spaceBelow = spacing?.below ?? 100;\n const hideAxisLabels = spaceBelow < 60;\n\n return h(\n \"div.detrital-group\",\n { className: classNames({ \"hide-axis\": hideAxisLabels }) },\n [\n h(\n DetritalSpectrumPlot,\n { width, innerHeight: height, showAxisLabels: true, paddingBottom: 40 },\n [\n h.if(unit != null)(DepositionalAge, { unit }),\n data.map((d) => {\n return h(DetritalSeries, {\n bandwidth: 20,\n data: d.measure_value,\n color: _color,\n });\n }),\n ],\n ),\n ],\n );\n}\n\nconst matchingUnit = (dz) => (d) => d.unit_id == dz[0].unit_id;\n\nfunction DetritalColumn({ columnID, color = \"magenta\" }) {\n const data = useDetritalMeasurements({ col_id: columnID });\n const units = useMacrostratUnits();\n\n const notes: any[] = useMemo(() => {\n if (data == null || units == null) return [];\n let dzUnitData = Array.from(data.values());\n dzUnitData.sort((a, b) => {\n const v1 = units.findIndex(matchingUnit(a));\n const v2 = units.findIndex(matchingUnit(b));\n return v1 - v2;\n });\n\n const data1 = dzUnitData.map((d) => {\n const unit = units.find(matchingUnit(d));\n return {\n top_height: unit?.t_age,\n height: unit?.b_age,\n data: d,\n unit,\n id: unit?.unit_id,\n };\n });\n\n return data1.filter((d) => d.unit != null);\n }, [data, units]);\n\n const width = 400;\n const paddingLeft = 40;\n\n const spectrumWidth = width - paddingLeft;\n\n const noteComponent = useMemo(() => {\n return (props) => {\n return h(DetritalGroup, {\n width: spectrumWidth,\n height: 40,\n color,\n ...props,\n });\n };\n }, [width, color]);\n\n if (data == null || units == null) return null;\n\n return h(\n \"div.dz-spectra\",\n h(ColumnNotes, {\n width,\n paddingLeft,\n notes,\n noteComponent,\n deltaConnectorAttachment: 20,\n }),\n );\n}\n\nexport { DetritalColumn, DetritalGroup };\n"],"names":[],"version":3,"file":"column-views.2ff3dd8b.js.map"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import {group as $7EBVZ$group} from "d3-array";
|
|
2
|
-
import {createAPIContext as $7EBVZ$createAPIContext, useAPIResult as $7EBVZ$useAPIResult} from "@macrostrat/ui-components";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const $a3ff7da576c02df0$var$responseUnwrapper = (d)=>d.records;
|
|
7
|
-
const $a3ff7da576c02df0$var$pbdbAPIContext = (0, $7EBVZ$createAPIContext)({
|
|
8
|
-
baseURL: "https://training.paleobiodb.org/data1.2",
|
|
9
|
-
unwrapResponse: $a3ff7da576c02df0$var$responseUnwrapper
|
|
10
|
-
});
|
|
11
|
-
var $a3ff7da576c02df0$export$a990c76b38782f57 = /*#__PURE__*/ function(FossilDataType) {
|
|
12
|
-
FossilDataType["Occurrences"] = "occs";
|
|
13
|
-
FossilDataType["Collections"] = "colls";
|
|
14
|
-
return FossilDataType;
|
|
15
|
-
}({});
|
|
16
|
-
function $a3ff7da576c02df0$export$c4ed16553d869511(type, { col_id: col_id }) {
|
|
17
|
-
const params = {
|
|
18
|
-
ms_column: col_id,
|
|
19
|
-
show: "full,mslink"
|
|
20
|
-
};
|
|
21
|
-
return (0, $7EBVZ$useAPIResult)(`/${type}/list.json`, params, {
|
|
22
|
-
context: $a3ff7da576c02df0$var$pbdbAPIContext
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
function $a3ff7da576c02df0$var$useMacrostratFossilData({ col_id: col_id }) {
|
|
26
|
-
return (0, $7EBVZ$useAPIResult)("/fossils", {
|
|
27
|
-
col_id: col_id
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
function $a3ff7da576c02df0$var$createMacrostratCollection(d) {
|
|
31
|
-
let unit_id = null;
|
|
32
|
-
let col_id = null;
|
|
33
|
-
// Standardize names of Macrostrat units and columns
|
|
34
|
-
if (d.msu !== null) unit_id = parseInt(d.msu.replace(/^\w+:/, ""));
|
|
35
|
-
if (d.msc !== null) col_id = parseInt(d.msc.replace(/^\w+:/, ""));
|
|
36
|
-
return {
|
|
37
|
-
...d,
|
|
38
|
-
unit_id: unit_id,
|
|
39
|
-
col_id: col_id,
|
|
40
|
-
cltn_id: parseInt(d.oid.replace(/^col:/, "")),
|
|
41
|
-
cltn_name: d.nam,
|
|
42
|
-
t_age: d.t_age,
|
|
43
|
-
b_age: d.b_age
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
function $a3ff7da576c02df0$export$e6af757fa9780077({ col_id: col_id }) {
|
|
47
|
-
// Fossil links are stored in both Macrostrat and PBDB, depending on how the link was assembled. Here
|
|
48
|
-
// we create a unified view of data over both sources.
|
|
49
|
-
const r1 = $a3ff7da576c02df0$export$c4ed16553d869511("colls", {
|
|
50
|
-
col_id: col_id
|
|
51
|
-
});
|
|
52
|
-
const r2 = $a3ff7da576c02df0$var$useMacrostratFossilData({
|
|
53
|
-
col_id: col_id
|
|
54
|
-
});
|
|
55
|
-
if (r1 == null || r2 == null) return null;
|
|
56
|
-
const r1a = r1.map($a3ff7da576c02df0$var$createMacrostratCollection);
|
|
57
|
-
const data = [
|
|
58
|
-
...r1a,
|
|
59
|
-
...r2
|
|
60
|
-
];
|
|
61
|
-
return (0, $7EBVZ$group)(data, (d)=>d.unit_id);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
export {$a3ff7da576c02df0$export$a990c76b38782f57 as FossilDataType, $a3ff7da576c02df0$export$c4ed16553d869511 as usePBDBFossilData, $a3ff7da576c02df0$export$e6af757fa9780077 as useFossilData};
|
|
66
|
-
//# sourceMappingURL=column-views.3048acc1.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":";;;;;AAGA,MAAM,0CAAoB,CAAC,IAAM,EAAE,OAAO;AAE1C,MAAM,uCAAiB,CAAA,GAAA,uBAAe,EAAE;IACtC,SAAS;IACT,gBAAgB;AAClB;AAEO,IAAA,AAAK,mEAAA;;;WAAA;;AAKL,SAAS,0CACd,IAAoB,EACpB,UAAE,MAAM,EAAE;IAEV,MAAM,SAAS;QACb,WAAW;QACX,MAAM;IACR;IACA,OAAO,CAAA,GAAA,mBAAW,EAAE,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,QAAQ;QAChD,SAAS;IACX;AACF;AAaA,SAAS,8CAAwB,UAAE,MAAM,EAAE;IACzC,OAAO,CAAA,GAAA,mBAAW,EAAE,YAAY;gBAAE;IAAO;AAC3C;AAEA,SAAS,iDAA2B,CAAC;IACnC,IAAI,UAAU;IACd,IAAI,SAAS;IACb,oDAAoD;IACpD,IAAI,EAAE,GAAG,KAAK,MACZ,UAAU,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS;IAE5C,IAAI,EAAE,GAAG,KAAK,MACZ,SAAS,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS;IAG3C,OAAO;QACL,GAAG,CAAC;iBACJ;gBACA;QACA,SAAS,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS;QACzC,WAAW,EAAE,GAAG;QAChB,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,KAAK;IAChB;AACF;AAEO,SAAS,0CAAc,UAAE,MAAM,EAAE;IACtC,qGAAqG;IACrG,sDAAsD;IAEtD,MAAM,KAAK,mDAA8C;gBAAE;IAAO;IAElE,MAAM,KAAK,8CAAwB;gBAAE;IAAO;IAE5C,IAAI,MAAM,QAAQ,MAAM,MAAM,OAAO;IACrC,MAAM,MAAM,GAAG,GAAG,CAAC;IAEnB,MAAM,OAAO;WAAI;WAAQ;KAAG;IAE5B,OAAO,CAAA,GAAA,YAAI,EAAE,MAAM,CAAC,IAAM,EAAE,OAAO;AACrC","sources":["packages/column-views/src/facets/fossils/provider.ts"],"sourcesContent":["import { group } from \"d3-array\";\nimport { createAPIContext, useAPIResult } from \"@macrostrat/ui-components\";\n\nconst responseUnwrapper = (d) => d.records;\n\nconst pbdbAPIContext = createAPIContext({\n baseURL: \"https://training.paleobiodb.org/data1.2\",\n unwrapResponse: responseUnwrapper,\n});\n\nexport enum FossilDataType {\n Occurrences = \"occs\",\n Collections = \"colls\",\n}\n\nexport function usePBDBFossilData(\n type: FossilDataType,\n { col_id },\n): any[] | null {\n const params = {\n ms_column: col_id,\n show: \"full,mslink\",\n };\n return useAPIResult(`/${type}/list.json`, params, {\n context: pbdbAPIContext,\n });\n}\n\nexport interface PBDBCollection {\n unit_id: number;\n col_id: number;\n cltn_id: number;\n cltn_name: string;\n pbdb_occs: number;\n t_age: number;\n b_age: number;\n [key: string]: any; // Allow for additional properties\n}\n\nfunction useMacrostratFossilData({ col_id }): PBDBCollection[] | null {\n return useAPIResult(\"/fossils\", { col_id });\n}\n\nfunction createMacrostratCollection(d): PBDBCollection {\n let unit_id = null;\n let col_id = null;\n // Standardize names of Macrostrat units and columns\n if (d.msu !== null) {\n unit_id = parseInt(d.msu.replace(/^\\w+:/, \"\"));\n }\n if (d.msc !== null) {\n col_id = parseInt(d.msc.replace(/^\\w+:/, \"\"));\n }\n\n return {\n ...d,\n unit_id,\n col_id,\n cltn_id: parseInt(d.oid.replace(/^col:/, \"\")),\n cltn_name: d.nam,\n t_age: d.t_age,\n b_age: d.b_age,\n };\n}\n\nexport function useFossilData({ col_id }) {\n // Fossil links are stored in both Macrostrat and PBDB, depending on how the link was assembled. Here\n // we create a unified view of data over both sources.\n\n const r1 = usePBDBFossilData(FossilDataType.Collections, { col_id });\n\n const r2 = useMacrostratFossilData({ col_id });\n\n if (r1 == null || r2 == null) return null;\n const r1a = r1.map(createMacrostratCollection);\n\n const data = [...r1a, ...r2];\n\n return group(data, (d) => d.unit_id);\n}\n"],"names":[],"version":3,"file":"column-views.3048acc1.js.map"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import {TruncatedList as $b9286605a04210d4$export$653e47a7a0da0f0d, PBDBFossilsColumn as $b9286605a04210d4$export$554267114407ef68, BaseMeasurementsColumn as $b9286605a04210d4$export$ce5c4f2fdf4e644d} from "./column-views.8703a35b.js";
|
|
2
|
-
import {DetritalGroup as $715dd5fedd79146a$export$1b3047373cd1c8c7, DetritalColumn as $715dd5fedd79146a$export$f176396e104db8d5} from "./column-views.2ff3dd8b.js";
|
|
3
|
-
import {IsotopesDataset as $d71d096cfe00860f$export$c69bd0285aa5d775, IsotopesColumn as $d71d096cfe00860f$export$5d8aa8022c284748, MeasurementDataContext as $5dbb619f2c7bef60$export$c644ef985ce7a4c4, MeasurementDataProvider as $5dbb619f2c7bef60$export$5f01d5b342a89841, useMeasurementData as $5dbb619f2c7bef60$export$8a0335fd9ff72150} from "./column-views.86619334.js";
|
|
4
|
-
import {SGPMeasurementsColumn as $6ff130029901daab$export$c49cf57576706bab} from "./column-views.97d542eb.js";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
export {$b9286605a04210d4$export$653e47a7a0da0f0d as TruncatedList, $b9286605a04210d4$export$554267114407ef68 as PBDBFossilsColumn, $b9286605a04210d4$export$ce5c4f2fdf4e644d as BaseMeasurementsColumn, $715dd5fedd79146a$export$1b3047373cd1c8c7 as DetritalGroup, $715dd5fedd79146a$export$f176396e104db8d5 as DetritalColumn, $d71d096cfe00860f$export$c69bd0285aa5d775 as IsotopesDataset, $d71d096cfe00860f$export$5d8aa8022c284748 as IsotopesColumn, $5dbb619f2c7bef60$export$c644ef985ce7a4c4 as MeasurementDataContext, $5dbb619f2c7bef60$export$5f01d5b342a89841 as MeasurementDataProvider, $5dbb619f2c7bef60$export$8a0335fd9ff72150 as useMeasurementData, $6ff130029901daab$export$c49cf57576706bab as SGPMeasurementsColumn};
|
|
13
|
-
//# sourceMappingURL=column-views.38a305a0.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":";;;;;AAQA,MAAM,2BAAK;AAiBJ,MAAM,2CAA6B,SACxC,CAAC,EACD,CAAC,EACD,WAA2B,CAAA,GAAA,qBAAa,EAAE,GAAG,EAC7C,YAAoB,KAAK;IAEzB,MAAM,MAAM,CAAA,GAAA,uBAAe,EACzB,yCAAmB,GAAG,WACtB,yCAAmB,GAAG,WACtB;IAEF,OAAO,OAAO,CAAA,GAAA,2BAAmB,EAAE,QAAQ;AAC7C;AAGO,SAAS,0CACd,CAAuB,EACvB,CAAuB,EACvB,YAAoB,wBAAE;IAEtB,OAAO,yCAAa,GAAG,GAAG,CAAA,GAAA,qBAAa,EAAE,GAAG,EAAE;AAChD;AAQO,SAAS,yCACd,IAAyB,EACzB,QAAwB;IAExB,OAAQ;QACN,KAAK,CAAA,GAAA,qBAAa,EAAE,GAAG;YACrB,OAAO;gBAAC,KAAK,UAAU,IAAI,KAAK,KAAK;gBAAE,KAAK,UAAU,IAAI,KAAK,KAAK;aAAC;QACvE,KAAK,CAAA,GAAA,qBAAa,EAAE,KAAK;QACzB,KAAK,CAAA,GAAA,qBAAa,EAAE,OAAO;QAC3B,KAAK,CAAA,GAAA,qBAAa,EAAE,MAAM;YACxB,OAAO;gBAAC,KAAK,UAAU,IAAI,KAAK,KAAK;gBAAE,KAAK,UAAU,IAAI,KAAK,KAAK;aAAC;QACvE;YACE,MAAM,IAAI,MAAM,CAAC,mBAAmB,EAAE,UAAU;IACpD;AACF;AAEO,MAAM,4CAAmB,CAAC;IAC/B,OAAO,CAAC,GAAa;QACnB,MAAM,QAAQ,yCAAmB,GAAG;QACpC,MAAM,QAAQ,yCAAmB,GAAG;QACpC,MAAM,QAAQ,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE;QACjC,IAAI,SAAS,GACX,OAAO;QAET,OAAO,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE;IAC5B;AACF;AAEO,SAAS,0CAAe,CAAU;IACvC,IAAI,MAAM,OAAO,CAAC,IAChB,OAAO;IAET,OAAO;QAAC;KAAE;AACZ;AAEO,SAAS,0CAAgB,CAAyB;IACvD,IAAI,OAAO,KAAK,UACd,IAAI,WAAW;IAEjB,IAAI,MAAM,IACR,OAAO;IAET,OAAO;AACT","sources":["packages/column-views/src/prepare-units/utils.ts"],"sourcesContent":["import type { BaseUnit } from \"@macrostrat/api-types\";\nimport {\n AgeRangeRelationship,\n compareAgeRanges,\n} from \"@macrostrat/stratigraphy-utils\";\nimport { ColumnAxisType } from \"@macrostrat/column-components\";\nimport { StratigraphicPackage } from \"./helpers\";\n\nconst dt = 0.001;\n\ninterface UnitsOverlap {\n (\n a: StratigraphicPackage,\n b: StratigraphicPackage,\n axisType?: ColumnAxisType.AGE,\n tolerance?: number,\n ): boolean;\n (\n a: BaseUnit,\n b: BaseUnit,\n axisType: ColumnAxisType,\n tolerance?: number,\n ): boolean;\n}\n\nexport const unitsOverlap: UnitsOverlap = function (\n a,\n b,\n axisType: ColumnAxisType = ColumnAxisType.AGE,\n tolerance: number = 0.001,\n): boolean {\n const rel = compareAgeRanges(\n getUnitHeightRange(a, axisType),\n getUnitHeightRange(b, axisType),\n tolerance,\n );\n return rel != AgeRangeRelationship.Disjoint;\n};\n\n/** A more permissive overlap function in the age space */\nexport function agesOverlap(\n a: StratigraphicPackage,\n b: StratigraphicPackage,\n tolerance: number = dt,\n): boolean {\n return unitsOverlap(a, b, ColumnAxisType.AGE, tolerance);\n}\n\nexport interface PossiblyClippedUnit extends BaseUnit {\n // Internally created clipped positions\n t_clip_pos?: number;\n b_clip_pos?: number;\n}\n\nexport function getUnitHeightRange(\n unit: PossiblyClippedUnit,\n axisType: ColumnAxisType,\n): [number, number] {\n switch (axisType) {\n case ColumnAxisType.AGE:\n return [unit.b_clip_pos ?? unit.b_age, unit.t_clip_pos ?? unit.t_age];\n case ColumnAxisType.DEPTH:\n case ColumnAxisType.ORDINAL:\n case ColumnAxisType.HEIGHT:\n return [unit.b_clip_pos ?? unit.b_pos, unit.t_clip_pos ?? unit.t_pos];\n default:\n throw new Error(`Unknown axis type: ${axisType}`);\n }\n}\n\nexport const createUnitSorter = (axisType: ColumnAxisType) => {\n return (a: BaseUnit, b: BaseUnit) => {\n const a_pos = getUnitHeightRange(a, axisType);\n const b_pos = getUnitHeightRange(b, axisType);\n const d_top = a_pos[1] - b_pos[1];\n if (d_top != 0) {\n return d_top;\n }\n return a_pos[0] - b_pos[0];\n };\n};\n\nexport function ensureArray<T>(x: T | T[]): T[] {\n if (Array.isArray(x)) {\n return x;\n }\n return [x];\n}\n\nexport function ensureRealFloat(x: number | string | null): number | null {\n if (typeof x == \"string\") {\n x = parseFloat(x);\n }\n if (isNaN(x)) {\n return null;\n }\n return x;\n}\n"],"names":[],"version":3,"file":"column-views.39657bbf.js.map"}
|