@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
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"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","sources":["<anon>","packages/column-views/src/prepare-units/helpers.ts"],"sourcesContent":["import \"./column-views.8cfed88b.js\";\nimport {group as $lOZ4A$group} from \"d3-array\";\nimport {ColumnAxisType as $lOZ4A$ColumnAxisType} from \"@macrostrat/column-components\";\nimport {compareAgeRanges as $lOZ4A$compareAgeRanges} from \"@macrostrat/stratigraphy-utils\";\n\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\n\n\n\nvar $iWhRv = parcelRequire(\"iWhRv\");\n\nconst $57278f42f24b59e5$var$dt = 0.001;\nfunction $57278f42f24b59e5$export$55543e159517d62d(section, axisType = (0, $lOZ4A$ColumnAxisType).AGE) {\n /** Preprocess units to add overlapping units and columns. */ const units = section.units;\n let divisions = units.map((...args)=>$57278f42f24b59e5$var$extendDivision(...args, axisType));\n for (let d of divisions){\n const overlappingUnits = divisions.filter((u)=>d.overlappingUnits.includes(u.unit_id));\n // Overlapping columns\n const columns = overlappingUnits.map((d)=>d.column);\n if (columns.includes(d.column)) {\n let col = 0;\n // Go through columns to find a better index\n while(columns.includes(col))col++;\n d.column = col;\n }\n // If unit overlaps the edges of a section, set the clip positions\n if (axisType == (0, $lOZ4A$ColumnAxisType).AGE) {\n const [b_pos, t_pos] = (0, $iWhRv.getUnitHeightRange)(d, axisType);\n if (b_pos > section.b_age) d.b_clip_pos = section.b_age;\n if (t_pos < section.t_age) d.t_clip_pos = section.t_age;\n }\n }\n // TODO: we may want to re-enable this simpler processing for sections,\n // but we want it to be less universally applied.\n // if (axisType != ColumnAxisType.AGE) {\n // return preprocessSectionUnits(divisions, axisType);\n // }\n //\n return divisions;\n}\nfunction $57278f42f24b59e5$var$extendDivision(unit, i, divisions, axisType = (0, $lOZ4A$ColumnAxisType).AGE) {\n const overlappingUnits = divisions.filter((d)=>d.unit_id != unit.unit_id && (0, $iWhRv.unitsOverlap)(unit, d, axisType));\n const u_pos = (0, $iWhRv.getUnitHeightRange)(unit, axisType);\n const bottomOverlap = overlappingUnits.some((d)=>{\n const d_pos = (0, $iWhRv.getUnitHeightRange)(d, axisType);\n // Check if the unit is below the current unit\n return d_pos[0] < u_pos[0] + $57278f42f24b59e5$var$dt;\n });\n let column = 0;\n if (overlappingUnits.length == 1) column = 1;\n return {\n ...unit,\n bottomOverlap: bottomOverlap,\n column: column,\n overlappingUnits: overlappingUnits.map((d)=>d.unit_id)\n };\n}\nfunction $57278f42f24b59e5$export$dfbd00399d639b4c(units, axisType = (0, $lOZ4A$ColumnAxisType).AGE) {\n if (axisType != (0, $lOZ4A$ColumnAxisType).AGE) return $57278f42f24b59e5$var$groupUnitsIntoSectionByOverlap(units, axisType);\n /** Group units into sections by section_id.\n * This works for large-scale Macrostrat columns, where units are grouped by section_id.\n * */ let groups = Array.from((0, $lOZ4A$group)(units, (d)=>d.section_id));\n const unitComparator = (0, $iWhRv.createUnitSorter)(axisType);\n const groups1 = groups.map(([section_id, sectionUnits])=>{\n const [b_age, t_age] = $57278f42f24b59e5$export$8093438ec3e4c6fd(sectionUnits);\n // sort units by position\n sectionUnits.sort(unitComparator);\n return {\n section_id: section_id,\n t_age: t_age,\n b_age: b_age,\n units: sectionUnits\n };\n });\n // Sort sections by increasing top age, then increasing bottom age.\n // Sections have no relative ordinal position other than age...\n const compareSections = (0, $iWhRv.createUnitSorter)((0, $lOZ4A$ColumnAxisType).AGE);\n groups1.sort(compareSections);\n return groups1;\n}\nfunction $57278f42f24b59e5$var$groupUnitsIntoSectionByOverlap(units, axisType = (0, $lOZ4A$ColumnAxisType).AGE) {\n /** Group units into sections by overlap.\n * This creates \"synthetic\" sections that correspond to packages bound by scale gaps.\n * This is most useful in the height and depth domains, where gaps (e.g., missing core) are\n * common.\n * */ // Start with each unit as its own \"section\", and progressively merge...\n const sectionList = [];\n for (const unit of units){\n // Check if the unit overlaps with any existing section\n const heightRange = (0, $iWhRv.getUnitHeightRange)(unit, axisType);\n let section = sectionList.find((s)=>(0, $lOZ4A$compareAgeRanges)(heightRange, s.heightRange));\n if (section == null) // No overlap, create a new section\n sectionList.push({\n heightRange: heightRange,\n units: [\n unit\n ]\n });\n else {\n // Overlap, merge the unit into the section\n section.units.push(unit);\n // Update the height range\n section.heightRange = [\n Math.max(section.heightRange[0], heightRange[0]),\n Math.min(section.heightRange[1], heightRange[1])\n ];\n }\n }\n // We should have a section for each unit, now we can convert to SectionInfo\n // Ages have to be really actually ages, not heights\n return sectionList.map((section, i)=>{\n const [b_age, t_age] = $57278f42f24b59e5$export$8093438ec3e4c6fd(section.units);\n return {\n // Negative section IDs are used to indicate that these are synthetic sections\n section_id: -i,\n t_age: t_age,\n b_age: b_age,\n units: section.units\n };\n });\n}\nfunction $57278f42f24b59e5$export$8093438ec3e4c6fd(units) {\n /** Get the overall age range of a set of units. */ const t_ages = units.map((d)=>d.t_age);\n const b_ages = units.map((d)=>d.b_age);\n const t_age = Math.min(...t_ages);\n const b_age = Math.max(...b_ages);\n return [\n b_age,\n t_age\n ];\n}\nfunction $57278f42f24b59e5$export$e7bb744b9be37f3d(sections) {\n /** Columns can have sections that overlap in time. Here, we merge overlapping\n * sections into a single section to correctly render gap-bound packages.\n */ const [firstSection, ...rest] = sections;\n const newSections = [\n firstSection\n ];\n for (const section of rest){\n const lastSection = newSections[newSections.length - 1];\n if (lastSection.b_age < section.t_age || lastSection.t_age > section.b_age) {\n // No overlap, add the section as normal\n newSections.push(section);\n continue;\n }\n // Overlap, merge the sections\n lastSection.section_id = [\n ...(0, $iWhRv.ensureArray)(lastSection.section_id),\n ...(0, $iWhRv.ensureArray)(section.section_id)\n ];\n lastSection.units.push(...section.units);\n lastSection.b_age = Math.max(lastSection.b_age, section.b_age);\n lastSection.t_age = Math.min(lastSection.t_age, section.t_age);\n }\n return newSections;\n}\nfunction $57278f42f24b59e5$var$preprocessSectionUnits(units, axisType = (0, $lOZ4A$ColumnAxisType).DEPTH) {\n /** Preprocess units for a \"section\" column type, which is guaranteed to be simpler. */ // We have to assume the units are ordered...\n let thickness = 0;\n return units.map((unit, i)=>{\n let u1 = $57278f42f24b59e5$var$preprocessSectionUnit(unit, i, units, thickness, axisType);\n thickness += Math.abs(u1.t_pos - u1.b_pos);\n return u1;\n });\n}\nfunction $57278f42f24b59e5$var$preprocessSectionUnit(unit, i, units, accumulatedThickness = 0, axisType = (0, $lOZ4A$ColumnAxisType).DEPTH) {\n /** Preprocess a single unit for a \"section\" column type.\n * No provision for overlapping units.\n * */ let b_pos = unit.b_pos;\n let t_pos = unit.t_pos;\n if (b_pos == t_pos && axisType == (0, $lOZ4A$ColumnAxisType).ORDINAL) t_pos = t_pos - 1;\n let unit_name = unit.unit_name;\n // eODP columns sometimes have overlapping core sections, which are encoded in the name field\n // Match eODP section names\n const match = unit.unit_name.match(/^(\\d+(\\.\\d+)?)-(\\d+(\\.\\d+)?): (.+)/);\n if (match) {\n // These values should already be set if we've used the show_positions flag\n t_pos ?? (t_pos = (0, $iWhRv.ensureRealFloat)(match[1]));\n b_pos ?? (b_pos = (0, $iWhRv.ensureRealFloat)(match[3]));\n unit_name = match[5];\n }\n return {\n ...unit,\n b_pos: (0, $iWhRv.ensureRealFloat)(b_pos),\n t_pos: (0, $iWhRv.ensureRealFloat)(t_pos),\n unit_name: unit_name,\n bottomOverlap: false,\n overlappingUnits: []\n };\n}\n\n\nexport {$57278f42f24b59e5$export$55543e159517d62d as preprocessUnits, $57278f42f24b59e5$export$dfbd00399d639b4c as groupUnitsIntoSections, $57278f42f24b59e5$export$8093438ec3e4c6fd as getSectionAgeRange, $57278f42f24b59e5$export$e7bb744b9be37f3d as mergeOverlappingSections};\n//# sourceMappingURL=column-views.755f726e.js.map\n","import type { BaseUnit, UnitLong } from \"@macrostrat/api-types\";\nimport { group } from \"d3-array\";\nimport { ColumnAxisType } from \"@macrostrat/column-components\";\nimport {\n unitsOverlap,\n getUnitHeightRange,\n createUnitSorter,\n ensureArray,\n ensureRealFloat,\n PossiblyClippedUnit,\n} from \"./utils\";\nimport { compareAgeRanges } from \"@macrostrat/stratigraphy-utils\";\n\nconst dt = 0.001;\n\nexport interface StratigraphicPackage {\n /** A collection of stratigraphic information organized in time, corresponding\n * to single or multiple columns. */\n t_age: number;\n b_age: number;\n}\n\nexport interface SectionInfo<T extends UnitLong = ExtUnit>\n extends StratigraphicPackage {\n /** A time-bounded part of a single stratigraphic column. */\n section_id: number | number[];\n units: T[];\n}\n\nexport interface ExtUnit extends UnitLong {\n bottomOverlap: boolean;\n overlappingUnits: number[];\n column?: number;\n /* Positions (ages or heights) where the unit is clipped to its containing section.\n * This is relevant if we are filtering by age/height/depth range.\n */\n t_clip_pos?: number;\n b_clip_pos?: number;\n}\n\nexport function preprocessUnits<T extends UnitLong = UnitLong>(\n section: SectionInfo<T>,\n axisType: ColumnAxisType = ColumnAxisType.AGE,\n): ExtUnit[] {\n /** Preprocess units to add overlapping units and columns. */\n const units = section.units;\n let divisions = units.map((...args) => extendDivision(...args, axisType));\n for (let d of divisions) {\n const overlappingUnits = divisions.filter((u) =>\n d.overlappingUnits.includes(u.unit_id),\n );\n\n // Overlapping columns\n const columns = overlappingUnits.map((d) => d.column);\n\n if (columns.includes(d.column)) {\n let col = 0;\n // Go through columns to find a better index\n while (columns.includes(col)) {\n col++;\n }\n d.column = col;\n }\n\n // If unit overlaps the edges of a section, set the clip positions\n if (axisType == ColumnAxisType.AGE) {\n const [b_pos, t_pos] = getUnitHeightRange(d, axisType);\n if (b_pos > section.b_age) {\n d.b_clip_pos = section.b_age;\n }\n if (t_pos < section.t_age) {\n d.t_clip_pos = section.t_age;\n }\n }\n }\n\n // TODO: we may want to re-enable this simpler processing for sections,\n // but we want it to be less universally applied.\n // if (axisType != ColumnAxisType.AGE) {\n // return preprocessSectionUnits(divisions, axisType);\n // }\n //\n return divisions;\n}\n\nfunction extendDivision(\n unit: UnitLong,\n i: number,\n divisions: UnitLong[],\n axisType: ColumnAxisType = ColumnAxisType.AGE,\n): ExtUnit {\n const overlappingUnits = divisions.filter(\n (d) => d.unit_id != unit.unit_id && unitsOverlap(unit, d, axisType),\n );\n const u_pos = getUnitHeightRange(unit, axisType);\n const bottomOverlap = overlappingUnits.some((d) => {\n const d_pos = getUnitHeightRange(d, axisType);\n // Check if the unit is below the current unit\n return d_pos[0] < u_pos[0] + dt;\n });\n let column = 0;\n if (overlappingUnits.length == 1) {\n column = 1;\n }\n\n return {\n ...unit,\n bottomOverlap,\n column,\n overlappingUnits: overlappingUnits.map((d) => d.unit_id),\n };\n}\n\nexport function groupUnitsIntoSections<T extends UnitLong>(\n units: T[],\n axisType: ColumnAxisType = ColumnAxisType.AGE,\n): SectionInfo<T>[] {\n if (axisType != ColumnAxisType.AGE) {\n return groupUnitsIntoSectionByOverlap(units, axisType);\n }\n\n /** Group units into sections by section_id.\n * This works for large-scale Macrostrat columns, where units are grouped by section_id.\n * */\n let groups = Array.from(group(units, (d) => d.section_id));\n const unitComparator = createUnitSorter(axisType);\n\n const groups1 = groups.map(([section_id, sectionUnits]) => {\n const [b_age, t_age] = getSectionAgeRange(sectionUnits);\n // sort units by position\n sectionUnits.sort(unitComparator);\n return { section_id, t_age, b_age, units: sectionUnits };\n });\n // Sort sections by increasing top age, then increasing bottom age.\n // Sections have no relative ordinal position other than age...\n const compareSections = createUnitSorter(ColumnAxisType.AGE) as (\n a: StratigraphicPackage,\n b: StratigraphicPackage,\n ) => number;\n groups1.sort(compareSections);\n return groups1;\n}\n\ninterface WorkingSection {\n units: UnitLong[];\n // Position or age\n heightRange?: [number, number];\n}\n\nfunction groupUnitsIntoSectionByOverlap<T extends UnitLong>(\n units: T[],\n axisType: ColumnAxisType = ColumnAxisType.AGE,\n): SectionInfo<T>[] {\n /** Group units into sections by overlap.\n * This creates \"synthetic\" sections that correspond to packages bound by scale gaps.\n * This is most useful in the height and depth domains, where gaps (e.g., missing core) are\n * common.\n * */\n // Start with each unit as its own \"section\", and progressively merge...\n const sectionList: WorkingSection[] = [];\n for (const unit of units) {\n // Check if the unit overlaps with any existing section\n const heightRange = getUnitHeightRange(unit, axisType);\n let section: WorkingSection | undefined = sectionList.find((s) =>\n compareAgeRanges(heightRange, s.heightRange),\n );\n if (section == null) {\n // No overlap, create a new section\n sectionList.push({\n heightRange,\n units: [unit],\n });\n } else {\n // Overlap, merge the unit into the section\n section.units.push(unit);\n // Update the height range\n section.heightRange = [\n Math.max(section.heightRange[0], heightRange[0]),\n Math.min(section.heightRange[1], heightRange[1]),\n ];\n }\n }\n // We should have a section for each unit, now we can convert to SectionInfo\n // Ages have to be really actually ages, not heights\n\n return sectionList.map((section, i) => {\n const [b_age, t_age] = getSectionAgeRange(section.units);\n return {\n // Negative section IDs are used to indicate that these are synthetic sections\n section_id: -i,\n t_age: t_age,\n b_age: b_age,\n units: section.units as T[],\n };\n });\n}\n\nexport function getSectionAgeRange(units: BaseUnit[]): [number, number] {\n /** Get the overall age range of a set of units. */\n const t_ages = units.map((d) => d.t_age);\n const b_ages = units.map((d) => d.b_age);\n const t_age = Math.min(...t_ages);\n const b_age = Math.max(...b_ages);\n return [b_age, t_age];\n}\n\nexport function mergeOverlappingSections<T extends UnitLong>(\n sections: SectionInfo<T>[],\n): SectionInfo<T>[] {\n /** Columns can have sections that overlap in time. Here, we merge overlapping\n * sections into a single section to correctly render gap-bound packages.\n */\n const [firstSection, ...rest] = sections;\n const newSections = [firstSection];\n for (const section of rest) {\n const lastSection = newSections[newSections.length - 1];\n if (\n lastSection.b_age < section.t_age ||\n lastSection.t_age > section.b_age\n ) {\n // No overlap, add the section as normal\n newSections.push(section);\n continue;\n }\n\n // Overlap, merge the sections\n lastSection.section_id = [\n ...ensureArray(lastSection.section_id),\n ...ensureArray(section.section_id),\n ];\n lastSection.units.push(...section.units);\n lastSection.b_age = Math.max(lastSection.b_age, section.b_age);\n lastSection.t_age = Math.min(lastSection.t_age, section.t_age);\n }\n return newSections;\n}\n\nfunction preprocessSectionUnits(\n units: UnitLong[],\n axisType: ColumnAxisType = ColumnAxisType.DEPTH,\n): ExtUnit[] {\n /** Preprocess units for a \"section\" column type, which is guaranteed to be simpler. */\n // We have to assume the units are ordered...\n let thickness = 0;\n return units.map((unit, i) => {\n let u1 = preprocessSectionUnit(unit, i, units, thickness, axisType);\n thickness += Math.abs(u1.t_pos - u1.b_pos);\n return u1;\n });\n}\n\nfunction preprocessSectionUnit(\n unit: UnitLong,\n i: number,\n units: UnitLong[],\n accumulatedThickness: number = 0,\n axisType: ColumnAxisType = ColumnAxisType.DEPTH,\n): ExtUnit {\n /** Preprocess a single unit for a \"section\" column type.\n * No provision for overlapping units.\n * */\n\n let b_pos = unit.b_pos;\n let t_pos = unit.t_pos;\n\n if (b_pos == t_pos && axisType == ColumnAxisType.ORDINAL) {\n t_pos = t_pos - 1;\n }\n\n let unit_name = unit.unit_name;\n\n // eODP columns sometimes have overlapping core sections, which are encoded in the name field\n // Match eODP section names\n const match = unit.unit_name.match(/^(\\d+(\\.\\d+)?)-(\\d+(\\.\\d+)?): (.+)/);\n\n if (match) {\n // These values should already be set if we've used the show_positions flag\n t_pos ??= ensureRealFloat(match[1]);\n b_pos ??= ensureRealFloat(match[3]);\n unit_name = match[5];\n }\n\n return {\n ...unit,\n b_pos: ensureRealFloat(b_pos),\n t_pos: ensureRealFloat(t_pos),\n unit_name,\n bottomOverlap: false,\n overlappingUnits: [],\n };\n}\n"],"names":["group","$lOZ4A$group","ColumnAxisType","$lOZ4A$ColumnAxisType","compareAgeRanges","$lOZ4A$compareAgeRanges","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$iWhRv","$57278f42f24b59e5$export$55543e159517d62d","section","axisType","AGE","divisions","units","map","args","$57278f42f24b59e5$var$extendDivision","unit","i","overlappingUnits","filter","d","unit_id","unitsOverlap","u_pos","getUnitHeightRange","bottomOverlap","some","d_pos","column","length","columns","u","includes","col","b_pos","t_pos","b_age","b_clip_pos","t_age","t_clip_pos","$57278f42f24b59e5$export$dfbd00399d639b4c","$57278f42f24b59e5$var$groupUnitsIntoSectionByOverlap","sectionList","heightRange","find","s","push","Math","max","min","$57278f42f24b59e5$export$8093438ec3e4c6fd","section_id","groups","Array","from","unitComparator","createUnitSorter","groups1","sectionUnits","sort","compareSections","t_ages","$57278f42f24b59e5$export$e7bb744b9be37f3d","sections","firstSection","rest","newSections","lastSection","ensureArray","preprocessUnits","groupUnitsIntoSections","getSectionAgeRange","mergeOverlappingSections"],"version":3,"file":"column-views.755f726e.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.99fb74c0.js";import"./column-views.91043465.js";import"./column-views.3eeac38d.js";import"./column-views.6f7a432f.js";import"./column-views.dfb2361a.js";import"./column-views.78d3f3c5.js";import"./column-views.a7256aa7.js";import"./column-views.4ca62e5d.js";import"./column-views.45168c80.js";import{ColumnAxisType as e}from"@macrostrat/column-components";import{hyperStyled as o}from"@macrostrat/hyper";import{useDarkMode as n}from"@macrostrat/ui-components";import t from"classnames";import{useRef as i,useCallback as l}from"react";import{NonIdealState as r}from"@blueprintjs/core";import{DataField as s}from"@macrostrat/data-components";function a(e,o,n,t){Object.defineProperty(e,o,{get:n,set:t,enumerable:!0,configurable:!0})}var c=globalThis,u={},m={},f=c.parcelRequirea149;null==f&&((f=function(e){if(e in u)return u[e].exports;if(e in m){var o=m[e];delete m[e];var n={id:e,exports:{}};return u[e]=n,o.call(n.exports,n,n.exports),n.exports}var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}).register=function(e,o){m[e]=o},c.parcelRequirea149=f),f.register;var d={};a(d,"Column",()=>x),a(d,"ColumnContainer",()=>y),a(d,"ColumnBasicInfo",()=>R);var p=f("7YHvf"),v=f("7tWYE"),b=f("a3mb1"),g=f("iYfAq"),h=f("2KV3o"),C=f("wtIgl"),S=f("7exMg"),_=f("4hG2H"),H=f("610tc");let w=o(p&&p.__esModule?p.default:p);function x(o){let{showUnitPopover:n=!1,keyboardNavigation:t=!1,mergeSections:l,onUnitSelected:s,selectedUnit:a,children:c,units:u,axisType:m=e.AGE,t_age:f,b_age:d,unconformityHeight:p=30,targetUnitHeight:v=20,pixelScale:g,minPixelScale:S=.2,minSectionHeight:_=50,collapseSmallUnconformities:x=!0,allowUnitSelection:y,...R}=o,E=i(),{sections:A,units:M,totalHeight:F}=(0,H.usePreparedColumnUnits)(u,{axisType:m,t_age:f,b_age:d,mergeSections:l,targetUnitHeight:v,unconformityHeight:p,pixelScale:g,minPixelScale:S,minSectionHeight:_,collapseSmallUnconformities:x});if(0===A.length)return w("div.column-container.empty",w(r,{title:"Empty column",description:"No sections found in this column.",icon:"warning-sign"}));let j=w(U,{columnRef:E,...R},[c,w.if(n)(h.UnitSelectionPopover),w.if(t)(b.UnitKeyboardNavigation,{units:M})]),N=y??!1;return(n||null!=a||null!=s)&&(N=!0),N&&(j=w(b.UnitSelectionProvider,{columnRef:E,onUnitSelected:s,selectedUnit:a,units:M},j)),w(C.MacrostratColumnDataProvider,{units:M,sections:A,totalHeight:F,axisType:m},j)}function U(o){let{unitComponent:n=v.UnitComponent,unconformityLabels:t=!0,showLabels:i=!0,width:r=300,columnWidth:s=150,showLabelColumn:a=!0,className:c,columnRef:u,clipUnits:m=!1,children:f,showTimescale:d,timescaleLevels:p,maxInternalColumns:g,onMouseOver:h}=o,{axisType:H}=(0,C.useMacrostratColumnData)(),x=s;x>r&&(x=r);let U=a;x>r-10&&(U=!1);let R=d??!0;return null!=p&&(R=!0),R=H==e.AGE&&R,w(y,{...function(e=null){let o=(0,b.useUnitSelectionDispatch)(),n=l(e=>{o?.(null,null,e)},[o]),t=(0,C.useCompositeScale)(),i=l(o=>{let n=t.invert(o.clientY-o.currentTarget.getBoundingClientRect().top);e?.(null,n,o)},[t,e]),r=l(()=>{e?.(null,null,null)},[e]);return null==e?{onClick:n,onMouseOver:void 0,onMouseMove:void 0,onMouseOut:void 0}:{onMouseOver:i,onMouseMove:i,onMouseOut:r,onClick:n}}(h),className:c},w("div.column",{ref:u},[w(_.CompositeAgeAxis),w.if(R)(S.CompositeTimescale,{levels:p}),w(S.SectionsColumn,{unitComponent:n,showLabels:i,width:r,columnWidth:x,showLabelColumn:U,clipUnits:m,unconformityLabels:t,maxInternalColumns:g}),f]))}function y(e){let{className:o,...i}=e,l=n();return w("div.column-container",{className:t(o,{"dark-mode":l?.isEnabled??!1}),...i})}function R({data:e,showColumnID:o=!0}){return null==e?null:w("div.column-info",[w("div.column-title-row",[w("h2",e.col_name),w.if(o)("h4",w(g.Identifier,{id:e.col_id}))]),w(s,{row:!0,label:"Group",value:e.col_group}),w(g.ReferencesField,{refs:e.refs,inline:!1,row:!0,className:"column-refs"})])}export{x as Column,y as ColumnContainer,R as ColumnBasicInfo};
|
|
2
|
-
//# sourceMappingURL=column-views.758b9bc1.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,kB,C,K,+B,A,Q,e,C,K,mB,A,Q,e,C,K,2B,A,Q,M,Y,A,Q,U,C,C,e,C,K,O,A,Q,iB,C,K,mB,A,Q,a,C,K,6B,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,I,G,E,E,kB,I,G,E,E,kB,I,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SCmCA,IAAM,EAAI,AAAA,E,AAAY,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAgCf,SAAS,EAAO,CAAkB,EACvC,GAAM,CAAA,gBACJ,EAAkB,CAAA,CAAA,CAAA,mBAClB,EAAqB,CAAA,CAAA,CAAA,cACrB,CAAa,CAAA,eACb,CAAc,CAAA,aACd,CAAY,CAAA,SACZ,CAAQ,CACR,MAAO,CAAQ,CAAA,SACf,EAAW,AAAA,EAAe,GAAG,CAAA,MAC7B,CAAK,CAAA,MACL,CAAK,CAAA,mBACL,EAAqB,EAAA,CAAA,iBACrB,EAAmB,EAAA,CAAA,WACnB,CAAU,CAAA,cACV,EAAgB,EAAA,CAAA,iBAChB,EAAmB,EAAA,CAAA,4BACnB,EAA8B,CAAA,CAAA,CAAA,mBAC9B,CAAkB,CAClB,GAAG,EACJ,CAAG,EACE,EAAM,AAAA,IAGN,CAAA,SAAE,CAAQ,CAAA,MAAE,CAAK,CAAA,YAAE,CAAW,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,sBAAqB,AAArB,EAAuB,EAAU,CACxE,SAAA,EACA,MAAA,EACA,MAAA,EACA,cAAA,EACA,iBAAA,EACA,mBAAA,EACA,WAAA,EACA,cAAA,EACA,iBAAA,EAC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","sources":["<anon>","packages/column-views/src/column.ts"],"sourcesContent":["import \"./column-views.99fb74c0.js\";\nimport \"./column-views.91043465.js\";\nimport \"./column-views.3eeac38d.js\";\nimport \"./column-views.6f7a432f.js\";\nimport \"./column-views.dfb2361a.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport \"./column-views.a7256aa7.js\";\nimport \"./column-views.4ca62e5d.js\";\nimport \"./column-views.45168c80.js\";\nimport {ColumnAxisType as $6sU8d$ColumnAxisType} from \"@macrostrat/column-components\";\nimport {hyperStyled as $6sU8d$hyperStyled} from \"@macrostrat/hyper\";\nimport {useDarkMode as $6sU8d$useDarkMode} from \"@macrostrat/ui-components\";\nimport $6sU8d$classnames from \"classnames\";\nimport {useRef as $6sU8d$useRef, useCallback as $6sU8d$useCallback} from \"react\";\nimport {NonIdealState as $6sU8d$NonIdealState} from \"@blueprintjs/core\";\nimport {DataField as $6sU8d$DataField} from \"@macrostrat/data-components\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $4721fb147cb3f5e1$exports = {};\n\n$parcel$export($4721fb147cb3f5e1$exports, \"Column\", () => $4721fb147cb3f5e1$export$816b5d811295e6bc);\n$parcel$export($4721fb147cb3f5e1$exports, \"ColumnContainer\", () => $4721fb147cb3f5e1$export$2194471aa3d52446);\n$parcel$export($4721fb147cb3f5e1$exports, \"ColumnBasicInfo\", () => $4721fb147cb3f5e1$export$fcdf79c491a4504f);\n\n\n\n\n\n\nvar $7YHvf = parcelRequire(\"7YHvf\");\n\nvar $7tWYE = parcelRequire(\"7tWYE\");\nvar $a3mb1 = parcelRequire(\"a3mb1\");\n\nvar $iYfAq = parcelRequire(\"iYfAq\");\nvar $2KV3o = parcelRequire(\"2KV3o\");\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $7exMg = parcelRequire(\"7exMg\");\n\nvar $4hG2H = parcelRequire(\"4hG2H\");\n\nvar $610tc = parcelRequire(\"610tc\");\n\n\nconst $4721fb147cb3f5e1$var$h = (0, $6sU8d$hyperStyled)((0, (/*@__PURE__*/$parcel$interopDefault($7YHvf))));\nfunction $4721fb147cb3f5e1$export$816b5d811295e6bc(props) {\n const { showUnitPopover: showUnitPopover = false, keyboardNavigation: keyboardNavigation = false, mergeSections: mergeSections, onUnitSelected: onUnitSelected, selectedUnit: selectedUnit, children: children, units: rawUnits, axisType: axisType = (0, $6sU8d$ColumnAxisType).AGE, t_age: t_age, b_age: b_age, unconformityHeight: unconformityHeight = 30, targetUnitHeight: targetUnitHeight = 20, pixelScale: pixelScale, minPixelScale: minPixelScale = 0.2, minSectionHeight: minSectionHeight = 50, collapseSmallUnconformities: collapseSmallUnconformities = true, allowUnitSelection: allowUnitSelection, ...rest } = props;\n const ref = (0, $6sU8d$useRef)();\n // Selected item position\n const { sections: sections, units: units, totalHeight: totalHeight } = (0, $610tc.usePreparedColumnUnits)(rawUnits, {\n axisType: axisType,\n t_age: t_age,\n b_age: b_age,\n mergeSections: mergeSections,\n targetUnitHeight: targetUnitHeight,\n unconformityHeight: unconformityHeight,\n pixelScale: pixelScale,\n minPixelScale: minPixelScale,\n minSectionHeight: minSectionHeight,\n collapseSmallUnconformities: collapseSmallUnconformities\n });\n if (sections.length === 0) return $4721fb147cb3f5e1$var$h(\"div.column-container.empty\", $4721fb147cb3f5e1$var$h((0, $6sU8d$NonIdealState), {\n title: \"Empty column\",\n description: \"No sections found in this column.\",\n icon: \"warning-sign\"\n }));\n let main = $4721fb147cb3f5e1$var$h($4721fb147cb3f5e1$var$ColumnInner, {\n columnRef: ref,\n ...rest\n }, [\n children,\n $4721fb147cb3f5e1$var$h.if(showUnitPopover)((0, $2KV3o.UnitSelectionPopover)),\n $4721fb147cb3f5e1$var$h.if(keyboardNavigation)((0, $a3mb1.UnitKeyboardNavigation), {\n units: units\n })\n ]);\n /* By default, unit selection is disabled. However, if any related props are passed,\n we enable it.\n */ let _allowUnitSelection = allowUnitSelection ?? false;\n if (showUnitPopover || selectedUnit != null || onUnitSelected != null) _allowUnitSelection = true;\n if (_allowUnitSelection) main = $4721fb147cb3f5e1$var$h((0, $a3mb1.UnitSelectionProvider), {\n columnRef: ref,\n onUnitSelected: onUnitSelected,\n selectedUnit: selectedUnit,\n units: units\n }, main);\n return $4721fb147cb3f5e1$var$h((0, $wtIgl.MacrostratColumnDataProvider), {\n units: units,\n sections: sections,\n totalHeight: totalHeight,\n axisType: axisType\n }, main);\n}\nfunction $4721fb147cb3f5e1$var$ColumnInner(props) {\n const { unitComponent: unitComponent = (0, $7tWYE.UnitComponent), unconformityLabels: unconformityLabels = true, showLabels: showLabels = true, width: _width = 300, columnWidth: _columnWidth = 150, showLabelColumn: _showLabelColumn = true, className: className, columnRef: columnRef, clipUnits: clipUnits = false, children: children, showTimescale: showTimescale, timescaleLevels: timescaleLevels, maxInternalColumns: maxInternalColumns, onMouseOver: onMouseOver } = props;\n const { axisType: axisType } = (0, $wtIgl.useMacrostratColumnData)();\n let width = _width;\n let columnWidth = _columnWidth;\n if (columnWidth > width) columnWidth = width;\n let showLabelColumn = _showLabelColumn;\n if (columnWidth > width - 10) showLabelColumn = false;\n let _showTimescale = showTimescale ?? true;\n if (timescaleLevels != null) _showTimescale = true;\n _showTimescale = axisType == (0, $6sU8d$ColumnAxisType).AGE && _showTimescale;\n return $4721fb147cb3f5e1$var$h($4721fb147cb3f5e1$export$2194471aa3d52446, {\n ...$4721fb147cb3f5e1$var$useMouseEventHandlers(onMouseOver),\n className: className\n }, $4721fb147cb3f5e1$var$h(\"div.column\", {\n ref: columnRef\n }, [\n $4721fb147cb3f5e1$var$h((0, $4hG2H.CompositeAgeAxis)),\n $4721fb147cb3f5e1$var$h.if(_showTimescale)((0, $7exMg.CompositeTimescale), {\n levels: timescaleLevels\n }),\n $4721fb147cb3f5e1$var$h((0, $7exMg.SectionsColumn), {\n unitComponent: unitComponent,\n showLabels: showLabels,\n width: width,\n columnWidth: columnWidth,\n showLabelColumn: showLabelColumn,\n clipUnits: clipUnits,\n unconformityLabels: unconformityLabels,\n maxInternalColumns: maxInternalColumns\n }),\n children\n ]));\n}\nfunction $4721fb147cb3f5e1$var$useMouseEventHandlers(_onMouseOver = null) {\n /** Click event handler */ // Click handler for unit selection\n const dispatch = (0, $a3mb1.useUnitSelectionDispatch)();\n const onClick = (0, $6sU8d$useCallback)((evt)=>{\n dispatch?.(null, null, evt);\n }, [\n dispatch\n ]);\n /** Hover event handlers */ const scale = (0, $wtIgl.useCompositeScale)();\n const onMouseOver = (0, $6sU8d$useCallback)((evt)=>{\n const height = scale.invert(evt.clientY - evt.currentTarget.getBoundingClientRect().top);\n _onMouseOver?.(null, height, evt);\n }, [\n scale,\n _onMouseOver\n ]);\n const onMouseOut = (0, $6sU8d$useCallback)(()=>{\n _onMouseOver?.(null, null, null);\n }, [\n _onMouseOver\n ]);\n if (_onMouseOver == null) return {\n onClick: onClick,\n onMouseOver: undefined,\n onMouseMove: undefined,\n onMouseOut: undefined\n };\n return {\n onMouseOver: onMouseOver,\n onMouseMove: onMouseOver,\n onMouseOut: onMouseOut,\n onClick: onClick\n };\n}\nfunction $4721fb147cb3f5e1$export$2194471aa3d52446(props) {\n const { className: className, ...rest } = props;\n const darkMode = (0, $6sU8d$useDarkMode)();\n return $4721fb147cb3f5e1$var$h(\"div.column-container\", {\n className: (0, $6sU8d$classnames)(className, {\n \"dark-mode\": darkMode?.isEnabled ?? false\n }),\n ...rest\n });\n}\nfunction $4721fb147cb3f5e1$export$fcdf79c491a4504f({ data: data, showColumnID: showColumnID = true }) {\n if (data == null) return null;\n return $4721fb147cb3f5e1$var$h(\"div.column-info\", [\n $4721fb147cb3f5e1$var$h(\"div.column-title-row\", [\n $4721fb147cb3f5e1$var$h(\"h2\", data.col_name),\n $4721fb147cb3f5e1$var$h.if(showColumnID)(\"h4\", $4721fb147cb3f5e1$var$h((0, $iYfAq.Identifier), {\n id: data.col_id\n }))\n ]),\n $4721fb147cb3f5e1$var$h((0, $6sU8d$DataField), {\n row: true,\n label: \"Group\",\n value: data.col_group\n }),\n $4721fb147cb3f5e1$var$h((0, $iYfAq.ReferencesField), {\n refs: data.refs,\n inline: false,\n row: true,\n className: \"column-refs\"\n })\n ]);\n}\n\n\nexport {$4721fb147cb3f5e1$export$816b5d811295e6bc as Column, $4721fb147cb3f5e1$export$2194471aa3d52446 as ColumnContainer, $4721fb147cb3f5e1$export$fcdf79c491a4504f as ColumnBasicInfo};\n//# sourceMappingURL=column-views.758b9bc1.js.map\n","import { ColumnAxisType } from \"@macrostrat/column-components\";\nimport { hyperStyled } from \"@macrostrat/hyper\";\nimport { useDarkMode } from \"@macrostrat/ui-components\";\nimport classNames from \"classnames\";\nimport { RefObject, useRef, HTMLAttributes, useCallback } from \"react\";\nimport styles from \"./column.module.sass\";\nimport {\n UnitSelectionProvider,\n UnitComponent,\n UnitKeyboardNavigation,\n useUnitSelectionDispatch,\n} from \"./units\";\n\nimport { ColumnHeightScaleOptions } from \"./prepare-units/composite-scale\";\nimport {\n Identifier,\n ReferencesField,\n UnitSelectionPopover,\n} from \"./unit-details\";\nimport {\n MacrostratColumnDataProvider,\n useCompositeScale,\n useMacrostratColumnData,\n} from \"./data-provider\";\nimport {\n SectionSharedProps,\n CompositeTimescale,\n SectionsColumn,\n} from \"./section\";\nimport { CompositeAgeAxis } from \"./age-axis\";\nimport { MergeSectionsMode, usePreparedColumnUnits } from \"./prepare-units\";\nimport { UnitLong } from \"@macrostrat/api-types\";\nimport { NonIdealState } from \"@blueprintjs/core\";\nimport { DataField } from \"@macrostrat/data-components\";\n\nconst h = hyperStyled(styles);\n\ninterface BaseColumnProps extends SectionSharedProps {\n className?: string;\n showLabelColumn?: boolean;\n keyboardNavigation?: boolean;\n showLabels?: boolean;\n maxInternalColumns?: number;\n // Timescale properties\n showTimescale?: boolean;\n timescaleLevels?: number | [number, number];\n onMouseOver?: (\n unit: UnitLong | null,\n height: number | null,\n evt: MouseEvent,\n ) => void;\n}\n\nexport interface ColumnProps extends BaseColumnProps, ColumnHeightScaleOptions {\n // Macrostrat units\n units: UnitLong[];\n t_age?: number;\n b_age?: number;\n mergeSections?: MergeSectionsMode;\n showUnitPopover?: boolean;\n allowUnitSelection?: boolean;\n selectedUnit?: number | null;\n onUnitSelected?: (unitID: number | null, unit: any) => void;\n // Unconformity height in pixels\n unconformityHeight?: number;\n}\n\nexport function Column(props: ColumnProps) {\n const {\n showUnitPopover = false,\n keyboardNavigation = false,\n mergeSections,\n onUnitSelected,\n selectedUnit,\n children,\n units: rawUnits,\n axisType = ColumnAxisType.AGE,\n t_age,\n b_age,\n unconformityHeight = 30,\n targetUnitHeight = 20,\n pixelScale,\n minPixelScale = 0.2,\n minSectionHeight = 50,\n collapseSmallUnconformities = true,\n allowUnitSelection,\n ...rest\n } = props;\n const ref = useRef<HTMLElement>();\n // Selected item position\n\n const { sections, units, totalHeight } = usePreparedColumnUnits(rawUnits, {\n axisType,\n t_age,\n b_age,\n mergeSections,\n targetUnitHeight,\n unconformityHeight,\n pixelScale,\n minPixelScale,\n minSectionHeight,\n collapseSmallUnconformities,\n });\n\n if (sections.length === 0) {\n return h(\n \"div.column-container.empty\",\n h(NonIdealState, {\n title: \"Empty column\",\n description: \"No sections found in this column.\",\n icon: \"warning-sign\",\n }),\n );\n }\n\n let main: any = h(ColumnInner, { columnRef: ref, ...rest }, [\n children,\n h.if(showUnitPopover)(UnitSelectionPopover),\n h.if(keyboardNavigation)(UnitKeyboardNavigation, { units }),\n ]);\n\n /* By default, unit selection is disabled. However, if any related props are passed,\n we enable it.\n */\n let _allowUnitSelection = allowUnitSelection ?? false;\n if (showUnitPopover || selectedUnit != null || onUnitSelected != null) {\n _allowUnitSelection = true;\n }\n\n if (_allowUnitSelection) {\n main = h(\n UnitSelectionProvider,\n {\n columnRef: ref,\n onUnitSelected,\n selectedUnit,\n units,\n },\n main,\n );\n }\n\n return h(\n MacrostratColumnDataProvider,\n { units, sections, totalHeight, axisType },\n main,\n );\n}\n\ninterface ColumnInnerProps extends BaseColumnProps {\n columnRef: RefObject<HTMLElement>;\n}\n\nfunction ColumnInner(props: ColumnInnerProps) {\n const {\n unitComponent = UnitComponent,\n unconformityLabels = true,\n showLabels = true,\n width: _width = 300,\n columnWidth: _columnWidth = 150,\n showLabelColumn: _showLabelColumn = true,\n className,\n columnRef,\n clipUnits = false,\n children,\n showTimescale,\n timescaleLevels,\n maxInternalColumns,\n onMouseOver,\n } = props;\n\n const { axisType } = useMacrostratColumnData();\n\n let width = _width;\n let columnWidth = _columnWidth;\n if (columnWidth > width) {\n columnWidth = width;\n }\n let showLabelColumn = _showLabelColumn;\n if (columnWidth > width - 10) {\n showLabelColumn = false;\n }\n\n let _showTimescale = showTimescale ?? true;\n if (timescaleLevels != null) {\n _showTimescale = true;\n }\n _showTimescale = axisType == ColumnAxisType.AGE && _showTimescale;\n\n return h(\n ColumnContainer,\n {\n ...useMouseEventHandlers(onMouseOver),\n className,\n },\n h(\"div.column\", { ref: columnRef }, [\n h(CompositeAgeAxis),\n h.if(_showTimescale)(CompositeTimescale, { levels: timescaleLevels }),\n h(SectionsColumn, {\n unitComponent,\n showLabels,\n width,\n columnWidth,\n showLabelColumn,\n clipUnits,\n unconformityLabels,\n maxInternalColumns,\n }),\n children,\n ]),\n );\n}\n\ntype ColumnMouseOverHandler = (\n unit: UnitLong | null,\n height: number | null,\n evt: MouseEvent,\n) => void;\n\nfunction useMouseEventHandlers(\n _onMouseOver: ColumnMouseOverHandler | null = null,\n) {\n /** Click event handler */\n\n // Click handler for unit selection\n const dispatch = useUnitSelectionDispatch();\n const onClick = useCallback(\n (evt) => {\n dispatch?.(null, null, evt as any);\n },\n [dispatch],\n );\n\n /** Hover event handlers */\n const scale = useCompositeScale();\n\n const onMouseOver = useCallback(\n (evt) => {\n const height = scale.invert(\n evt.clientY - evt.currentTarget.getBoundingClientRect().top,\n );\n _onMouseOver?.(null, height, evt);\n },\n [scale, _onMouseOver],\n );\n\n const onMouseOut = useCallback(() => {\n _onMouseOver?.(null, null, null);\n }, [_onMouseOver]);\n\n if (_onMouseOver == null) {\n return {\n onClick,\n onMouseOver: undefined,\n onMouseMove: undefined,\n onMouseOut: undefined,\n };\n }\n\n return { onMouseOver, onMouseMove: onMouseOver, onMouseOut, onClick };\n}\n\nexport interface ColumnContainerProps extends HTMLAttributes<HTMLDivElement> {\n className?: string;\n}\n\nexport function ColumnContainer(props: ColumnContainerProps) {\n const { className, ...rest } = props;\n const darkMode = useDarkMode();\n\n return h(\"div.column-container\", {\n className: classNames(className, {\n \"dark-mode\": darkMode?.isEnabled ?? false,\n }),\n ...rest,\n });\n}\n\nexport function ColumnBasicInfo({ data, showColumnID = true }) {\n if (data == null) return null;\n return h(\"div.column-info\", [\n h(\"div.column-title-row\", [\n h(\"h2\", data.col_name),\n h.if(showColumnID)(\"h4\", h(Identifier, { id: data.col_id })),\n ]),\n h(DataField, { row: true, label: \"Group\", value: data.col_group }),\n h(ReferencesField, {\n refs: data.refs,\n inline: false,\n row: true,\n className: \"column-refs\",\n }),\n ]);\n}\n"],"names":["ColumnAxisType","$6sU8d$ColumnAxisType","hyperStyled","$6sU8d$hyperStyled","useDarkMode","$6sU8d$useDarkMode","$6sU8d$classnames","useRef","$6sU8d$useRef","useCallback","$6sU8d$useCallback","NonIdealState","$6sU8d$NonIdealState","DataField","$6sU8d$DataField","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$4721fb147cb3f5e1$exports","$4721fb147cb3f5e1$export$816b5d811295e6bc","$4721fb147cb3f5e1$export$2194471aa3d52446","$4721fb147cb3f5e1$export$fcdf79c491a4504f","$7YHvf","$7tWYE","$a3mb1","$iYfAq","$2KV3o","$wtIgl","$7exMg","$4hG2H","$610tc","$4721fb147cb3f5e1$var$h","a","__esModule","default","props","showUnitPopover","keyboardNavigation","mergeSections","onUnitSelected","selectedUnit","children","units","rawUnits","axisType","AGE","t_age","b_age","unconformityHeight","targetUnitHeight","pixelScale","minPixelScale","minSectionHeight","collapseSmallUnconformities","allowUnitSelection","rest","ref","sections","totalHeight","usePreparedColumnUnits","length","title","description","icon","main","$4721fb147cb3f5e1$var$ColumnInner","columnRef","if","UnitSelectionPopover","UnitKeyboardNavigation","_allowUnitSelection","UnitSelectionProvider","MacrostratColumnDataProvider","unitComponent","UnitComponent","unconformityLabels","showLabels","width","_width","columnWidth","_columnWidth","showLabelColumn","_showLabelColumn","className","clipUnits","showTimescale","timescaleLevels","maxInternalColumns","onMouseOver","useMacrostratColumnData","_showTimescale","$4721fb147cb3f5e1$var$useMouseEventHandlers","_onMouseOver","dispatch","useUnitSelectionDispatch","onClick","evt","scale","useCompositeScale","height","invert","clientY","currentTarget","getBoundingClientRect","top","onMouseOut","undefined","onMouseMove","CompositeAgeAxis","CompositeTimescale","levels","SectionsColumn","darkMode","isEnabled","data","showColumnID","col_name","Identifier","col_id","row","label","value","col_group","ReferencesField","refs","inline","Column","ColumnContainer","ColumnBasicInfo"],"version":3,"file":"column-views.758b9bc1.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.33752461.js";import{createContext as e,useMemo as t,useContext as r}from"react";import a from"@macrostrat/hyper";function o(e,t,r,a){Object.defineProperty(e,t,{get:r,set:a,enumerable:!0,configurable:!0})}var s=globalThis,n={},i={},c=s.parcelRequirea149;null==c&&((c=function(e){if(e in n)return n[e].exports;if(e in i){var t=i[e];delete i[e];var r={id:e,exports:{}};return n[e]=r,t.call(r.exports,r,r.exports),r.exports}var a=Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}).register=function(e,t){i[e]=t},s.parcelRequirea149=c),c.register;var u={};o(u,"MacrostratColumnDataProvider",()=>p),o(u,"useMacrostratColumnData",()=>d),o(u,"useMacrostratUnits",()=>m),o(u,"useCompositeScale",()=>b);var l=c("bBAza");let f=e(null);function p({children:e,units:r,sections:o,totalHeight:s,axisType:n}){let i=t(()=>({units:r,sections:o,totalHeight:s,axisType:n}),[r,o,s,n]);return a(f.Provider,{value:i},e)}function d(){let e=r(f);if(!e)throw Error("useMacrostratColumnData must be used within a MacrostratColumnDataProvider");return e}function m(){return d().units}function b(){let e=d();return t(()=>(0,l.createCompositeScale)(e.sections,!0),[e.sections])}export{p as MacrostratColumnDataProvider,d as useMacrostratColumnData,m as useMacrostratUnits,b as useCompositeScale};
|
|
2
|
-
//# sourceMappingURL=column-views.78d3f3c5.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,Q,iB,C,C,W,C,C,c,C,K,O,A,Q,M,mB,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,+B,I,G,E,E,0B,I,G,E,E,qB,I,G,E,E,oB,I,G,I,E,E,SCuBA,IAAM,EACJ,AAAA,EAA2C,MAEtC,SAAS,EAA6B,CAAA,SAC3C,CAAQ,CAAA,MACR,CAAK,CAAA,SACL,CAAQ,CAAA,YACR,CAAW,CAAA,SACX,CAAQ,CAC8C,EAYtD,IAAM,EAAQ,AAAA,EAAQ,IACb,CAAA,CACL,MAAA,EACA,SAAA,EACA,YAAA,EACA,SAAA,CACF,CAAA,EACC,CAAC,EAAO,EAAU,EAAa,EAAS,EAE3C,OAAO,AAAA,EAAE,EAA4B,QAAQ,CAAE,CAAE,MAAA,CAAM,EAAG,EAC5D,CAEO,SAAS,IACd,IAAM,EAAM,AAAA,EAAW,GACvB,GAAI,CAAC,EACH,MAAM,AAAI,MACR,8EAGJ,OAAO,CACT,CAEO,SAAS,IACd,OAAO,IAA0B,KAAK,AACxC,CAEO,SAAS,IACd,IAAM,EAAM,IACZ,OAAO,AAAA,EACL,IAAM,AAAA,CAAA,EAAA,EAAA,oBAAmB,AAAnB,EAAqB,EAAI,QAAQ,CAAE,CAAA,GACzC,CAAC,EAAI,QAAQ,CAAC,CAElB,Q,K,4B,C,K,uB,C,K,kB,C,K,iB","sources":["<anon>","packages/column-views/src/data-provider/store.ts"],"sourcesContent":["import \"./column-views.33752461.js\";\nimport {createContext as $eJc70$createContext, useMemo as $eJc70$useMemo, useContext as $eJc70$useContext} from \"react\";\nimport $eJc70$macrostrathyper from \"@macrostrat/hyper\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $91525b65c57a1e5d$exports = {};\n\n$parcel$export($91525b65c57a1e5d$exports, \"MacrostratColumnDataProvider\", () => $91525b65c57a1e5d$export$7fec7bd80ff9c10e);\n$parcel$export($91525b65c57a1e5d$exports, \"useMacrostratColumnData\", () => $91525b65c57a1e5d$export$f8509b7cce386c7d);\n$parcel$export($91525b65c57a1e5d$exports, \"useMacrostratUnits\", () => $91525b65c57a1e5d$export$6fb40844db555b2);\n$parcel$export($91525b65c57a1e5d$exports, \"useCompositeScale\", () => $91525b65c57a1e5d$export$a7fc62995ec4f76);\n\n\n\nvar $bBAza = parcelRequire(\"bBAza\");\nconst $91525b65c57a1e5d$var$MacrostratColumnDataContext = (0, $eJc70$createContext)(null);\nfunction $91525b65c57a1e5d$export$7fec7bd80ff9c10e({ children: children, units: units, sections: sections, totalHeight: totalHeight, axisType: axisType }) {\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 * */ const value = (0, $eJc70$useMemo)(()=>{\n return {\n units: units,\n sections: sections,\n totalHeight: totalHeight,\n axisType: axisType\n };\n }, [\n units,\n sections,\n totalHeight,\n axisType\n ]);\n return (0, $eJc70$macrostrathyper)($91525b65c57a1e5d$var$MacrostratColumnDataContext.Provider, {\n value: value\n }, children);\n}\nfunction $91525b65c57a1e5d$export$f8509b7cce386c7d() {\n const ctx = (0, $eJc70$useContext)($91525b65c57a1e5d$var$MacrostratColumnDataContext);\n if (!ctx) throw new Error(\"useMacrostratColumnData must be used within a MacrostratColumnDataProvider\");\n return ctx;\n}\nfunction $91525b65c57a1e5d$export$6fb40844db555b2() {\n return $91525b65c57a1e5d$export$f8509b7cce386c7d().units;\n}\nfunction $91525b65c57a1e5d$export$a7fc62995ec4f76() {\n const ctx = $91525b65c57a1e5d$export$f8509b7cce386c7d();\n return (0, $eJc70$useMemo)(()=>(0, $bBAza.createCompositeScale)(ctx.sections, true), [\n ctx.sections\n ]);\n}\n\n\nexport {$91525b65c57a1e5d$export$7fec7bd80ff9c10e as MacrostratColumnDataProvider, $91525b65c57a1e5d$export$f8509b7cce386c7d as useMacrostratColumnData, $91525b65c57a1e5d$export$6fb40844db555b2 as useMacrostratUnits, $91525b65c57a1e5d$export$a7fc62995ec4f76 as useCompositeScale};\n//# sourceMappingURL=column-views.78d3f3c5.js.map\n","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":["createContext","$eJc70$createContext","useMemo","$eJc70$useMemo","useContext","$eJc70$useContext","$eJc70$macrostrathyper","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$91525b65c57a1e5d$exports","$91525b65c57a1e5d$export$7fec7bd80ff9c10e","$91525b65c57a1e5d$export$f8509b7cce386c7d","$91525b65c57a1e5d$export$6fb40844db555b2","$91525b65c57a1e5d$export$a7fc62995ec4f76","$bBAza","$91525b65c57a1e5d$var$MacrostratColumnDataContext","children","units","sections","totalHeight","axisType","value","Provider","ctx","createCompositeScale","MacrostratColumnDataProvider","useMacrostratColumnData","useMacrostratUnits","useCompositeScale"],"version":3,"file":"column-views.78d3f3c5.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.085f4a51.js";import"./column-views.d9add589.js";import"./column-views.7010a03b.js";import"./column-views.2a6b842d.js";function e(e,a){return Object.keys(a).forEach(function(r){"default"===r||"__esModule"===r||Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:function(){return a[r]}})}),e}var a=globalThis,r={},t={},o=a.parcelRequirea149;null==o&&((o=function(e){if(e in r)return r[e].exports;if(e in t){var a=t[e];delete t[e];var o={id:e,exports:{}};return r[e]=o,a.call(o.exports,o,o.exports),o.exports}var f=Error("Cannot find module '"+e+"'");throw f.code="MODULE_NOT_FOUND",f}).register=function(e,a){t[e]=a},a.parcelRequirea149=o),o.register;var f={},s=o("3S9SB"),c=o("7kahb"),n=o("28PcI"),u=o("2koQo");e(f,s),e(f,c),e(f,n),e(f,u);export{$ea2f112131e22f14$export$653e47a7a0da0f0d as TruncatedList,$ea2f112131e22f14$export$554267114407ef68 as PBDBFossilsColumn,$ea2f112131e22f14$export$ce5c4f2fdf4e644d as BaseMeasurementsColumn,$68f55e74a5c97233$export$1b3047373cd1c8c7 as DetritalGroup,$68f55e74a5c97233$export$f176396e104db8d5 as DetritalColumn,$5ccf8f2b270f7458$export$c69bd0285aa5d775 as IsotopesDataset,$5ccf8f2b270f7458$export$5d8aa8022c284748 as IsotopesColumn,$5cb80f5b33baeaea$export$c644ef985ce7a4c4 as MeasurementDataContext,$5cb80f5b33baeaea$export$5f01d5b342a89841 as MeasurementDataProvider,$5cb80f5b33baeaea$export$8a0335fd9ff72150 as useMeasurementData,$30f674067bcc490b$export$c49cf57576706bab as SGPMeasurementsColumn};
|
|
2
|
-
//# sourceMappingURL=column-views.80fcf105.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,C,S,E,C,C,C,E,O,O,I,C,G,O,C,S,C,E,Y,G,A,e,G,O,S,C,c,C,I,C,E,I,O,c,C,E,E,C,W,C,E,I,W,O,C,C,E,A,C,E,G,C,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,E,E,S,E,E,S,E,E,S,E,E,G,E,E,G,E,E,G,E,E,U,6C,a,C,6C,iB,C,6C,sB,C,6C,a,C,6C,c,C,6C,e,C,6C,c,C,6C,sB,C,6C,uB,C,6C,kB,C,6C,qB","sources":["<anon>","packages/column-views/src/facets/index.ts"],"sourcesContent":["import \"./column-views.085f4a51.js\";\nimport \"./column-views.d9add589.js\";\nimport \"./column-views.7010a03b.js\";\nimport \"./column-views.2a6b842d.js\";\n\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule' || Object.prototype.hasOwnProperty.call(dest, key)) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n }\n });\n });\n\n return dest;\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $a66a583913c03b09$exports = {};\n\nvar $3S9SB = parcelRequire(\"3S9SB\");\n\nvar $7kahb = parcelRequire(\"7kahb\");\n\nvar $28PcI = parcelRequire(\"28PcI\");\n\nvar $2koQo = parcelRequire(\"2koQo\");\n$parcel$exportWildcard($a66a583913c03b09$exports, $3S9SB);\n$parcel$exportWildcard($a66a583913c03b09$exports, $7kahb);\n$parcel$exportWildcard($a66a583913c03b09$exports, $28PcI);\n$parcel$exportWildcard($a66a583913c03b09$exports, $2koQo);\n\n\nexport {$ea2f112131e22f14$export$653e47a7a0da0f0d as TruncatedList, $ea2f112131e22f14$export$554267114407ef68 as PBDBFossilsColumn, $ea2f112131e22f14$export$ce5c4f2fdf4e644d as BaseMeasurementsColumn, $68f55e74a5c97233$export$1b3047373cd1c8c7 as DetritalGroup, $68f55e74a5c97233$export$f176396e104db8d5 as DetritalColumn, $5ccf8f2b270f7458$export$c69bd0285aa5d775 as IsotopesDataset, $5ccf8f2b270f7458$export$5d8aa8022c284748 as IsotopesColumn, $5cb80f5b33baeaea$export$c644ef985ce7a4c4 as MeasurementDataContext, $5cb80f5b33baeaea$export$5f01d5b342a89841 as MeasurementDataProvider, $5cb80f5b33baeaea$export$8a0335fd9ff72150 as useMeasurementData, $30f674067bcc490b$export$c49cf57576706bab as SGPMeasurementsColumn};\n//# sourceMappingURL=column-views.80fcf105.js.map\n","export * from \"./fossils\";\nexport * from \"./detrital-zircon\";\nexport * from \"./carbon-isotopes\";\nexport * from \"./measurements\";\n"],"names":["$parcel$exportWildcard","dest","source","Object","keys","forEach","key","prototype","hasOwnProperty","call","defineProperty","enumerable","get","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","err","Error","code","register","$a66a583913c03b09$exports","$3S9SB","$7kahb","$28PcI","$2koQo","$ea2f112131e22f14$export$653e47a7a0da0f0d","TruncatedList","$ea2f112131e22f14$export$554267114407ef68","PBDBFossilsColumn","$ea2f112131e22f14$export$ce5c4f2fdf4e644d","BaseMeasurementsColumn","$68f55e74a5c97233$export$1b3047373cd1c8c7","DetritalGroup","$68f55e74a5c97233$export$f176396e104db8d5","DetritalColumn","$5ccf8f2b270f7458$export$c69bd0285aa5d775","IsotopesDataset","$5ccf8f2b270f7458$export$5d8aa8022c284748","IsotopesColumn","$5cb80f5b33baeaea$export$c644ef985ce7a4c4","MeasurementDataContext","$5cb80f5b33baeaea$export$5f01d5b342a89841","MeasurementDataProvider","$5cb80f5b33baeaea$export$8a0335fd9ff72150","useMeasurementData","$30f674067bcc490b$export$c49cf57576706bab","SGPMeasurementsColumn"],"version":3,"file":"column-views.80fcf105.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{compareAgeRanges as e,AgeRangeRelationship as t}from"@macrostrat/stratigraphy-utils";import{ColumnAxisType as r}from"@macrostrat/column-components";function a(e,t,r,a){Object.defineProperty(e,t,{get:r,set:a,enumerable:!0,configurable:!0})}var n={};a(n,"unitsOverlap",()=>o),a(n,"getUnitHeightRange",()=>i),a(n,"agesOverlap",()=>s),a(n,"createUnitSorter",()=>c),a(n,"ensureArray",()=>p),a(n,"ensureRealFloat",()=>f);let o=function(a,n,o=r.AGE,s=.001){return e(i(a,o),i(n,o),s)!=t.Disjoint};function s(e,t,a=.001){return o(e,t,r.AGE,a)}function i(e,t){switch(t){case r.AGE:return[e.b_clip_pos??e.b_age,e.t_clip_pos??e.t_age];case r.DEPTH:case r.ORDINAL:case r.HEIGHT:return[e.b_clip_pos??e.b_pos,e.t_clip_pos??e.t_pos];default:throw Error(`Unknown axis type: ${t}`)}}let c=e=>(t,r)=>{let a=i(t,e),n=i(r,e),o=a[1]-n[1];return 0!=o?o:a[0]-n[0]};function p(e){return Array.isArray(e)?e:[e]}function f(e){return("string"==typeof e&&(e=parseFloat(e)),isNaN(e))?null:e}export{o as unitsOverlap,i as getUnitHeightRange,s as agesOverlap,c as createUnitSorter,p as ensureArray,f as ensureRealFloat};
|
|
2
|
-
//# sourceMappingURL=column-views.8cfed88b.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,O,oB,C,C,wB,C,K,gC,A,Q,kB,C,K,+B,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,C,E,E,E,e,I,G,E,E,qB,I,G,E,E,c,I,G,E,E,mB,I,G,E,E,c,I,G,E,E,kB,I,GCyBO,IAAM,EAA6B,SACxC,CAAC,CACD,CAAC,CACD,EAA2B,AAAA,EAAe,GAAG,CAC7C,EAAoB,IAAK,EAOzB,OAAO,AALK,AAAA,EACV,EAAmB,EAAG,GACtB,EAAmB,EAAG,GACtB,IAEY,AAAA,EAAqB,QAAQ,AAC7C,EAGO,SAAS,EACd,CAAuB,CACvB,CAAuB,CACvB,EAnCS,IAmCa,EAEtB,OAAO,EAAa,EAAG,EAAG,AAAA,EAAe,GAAG,CAAE,EAChD,CAQO,SAAS,EACd,CAAyB,CACzB,CAAwB,EAExB,OAAQ,GACN,KAAK,AAAA,EAAe,GAAG,CACrB,MAAO,CAAC,EAAK,UAAU,EAAI,EAAK,KAAK,CAAE,EAAK,UAAU,EAAI,EAAK,KAAK,CAAC,AACvE,MAAK,AAAA,EAAe,KAAK,CACzB,KAAK,AAAA,EAAe,OAAO,CAC3B,KAAK,AAAA,EAAe,MAAM,CACxB,MAAO,CAAC,EAAK,UAAU,EAAI,EAAK,KAAK,CAAE,EAAK,UAAU,EAAI,EAAK,KAAK,CAAC,AACvE,SACE,MAAM,AAAI,MAAM,CAAC,mBAAmB,EAAE,EAAA,CAAU,CACpD,CACF,CAEO,IAAM,EAAmB,AAAC,GACxB,CAAC,EAAa,KACnB,IAAM,EAAQ,EAAmB,EAAG,GAC9B,EAAQ,EAAmB,EAAG,GAC9B,EAAQ,CAAK,CAAC,EAAE,CAAG,CAAK,CAAC,EAAE,QACjC,AAAI,AAAS,GAAT,EACK,EAEF,CAAK,CAAC,EAAE,CAAG,CAAK,CAAC,EAAE,AAC5B,EAGK,SAAS,EAAe,CAAU,SACvC,AAAI,MAAM,OAAO,CAAC,GACT,EAEF,CAAC,EAAE,AACZ,CAEO,SAAS,EAAgB,CAAyB,QAIvD,CAHI,AAAY,UAAZ,OAAO,GACT,CAAA,EAAI,WAAW,EADjB,EAGI,MAAM,IACD,KAEF,CACT,Q,K,Y,C,K,kB,C,K,W,C,K,gB,C,K,W,C,K,e","sources":["<anon>","packages/column-views/src/prepare-units/utils.ts"],"sourcesContent":["import {compareAgeRanges as $6wq4o$compareAgeRanges, AgeRangeRelationship as $6wq4o$AgeRangeRelationship} from \"@macrostrat/stratigraphy-utils\";\nimport {ColumnAxisType as $6wq4o$ColumnAxisType} from \"@macrostrat/column-components\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $f811753598b339f3$exports = {};\n\n$parcel$export($f811753598b339f3$exports, \"unitsOverlap\", () => $f811753598b339f3$export$f1a15f539858307);\n$parcel$export($f811753598b339f3$exports, \"getUnitHeightRange\", () => $f811753598b339f3$export$70e712e2ac0237a);\n$parcel$export($f811753598b339f3$exports, \"agesOverlap\", () => $f811753598b339f3$export$d92a67740c050efb);\n$parcel$export($f811753598b339f3$exports, \"createUnitSorter\", () => $f811753598b339f3$export$ab14c04795685c55);\n$parcel$export($f811753598b339f3$exports, \"ensureArray\", () => $f811753598b339f3$export$d0c8ecbd4ed8940c);\n$parcel$export($f811753598b339f3$exports, \"ensureRealFloat\", () => $f811753598b339f3$export$97de5b0a6b4e4dac);\n\n\nconst $f811753598b339f3$var$dt = 0.001;\nconst $f811753598b339f3$export$f1a15f539858307 = function(a, b, axisType = (0, $6wq4o$ColumnAxisType).AGE, tolerance = 0.001) {\n const rel = (0, $6wq4o$compareAgeRanges)($f811753598b339f3$export$70e712e2ac0237a(a, axisType), $f811753598b339f3$export$70e712e2ac0237a(b, axisType), tolerance);\n return rel != (0, $6wq4o$AgeRangeRelationship).Disjoint;\n};\nfunction $f811753598b339f3$export$d92a67740c050efb(a, b, tolerance = $f811753598b339f3$var$dt) {\n return $f811753598b339f3$export$f1a15f539858307(a, b, (0, $6wq4o$ColumnAxisType).AGE, tolerance);\n}\nfunction $f811753598b339f3$export$70e712e2ac0237a(unit, axisType) {\n switch(axisType){\n case (0, $6wq4o$ColumnAxisType).AGE:\n return [\n unit.b_clip_pos ?? unit.b_age,\n unit.t_clip_pos ?? unit.t_age\n ];\n case (0, $6wq4o$ColumnAxisType).DEPTH:\n case (0, $6wq4o$ColumnAxisType).ORDINAL:\n case (0, $6wq4o$ColumnAxisType).HEIGHT:\n return [\n unit.b_clip_pos ?? unit.b_pos,\n unit.t_clip_pos ?? unit.t_pos\n ];\n default:\n throw new Error(`Unknown axis type: ${axisType}`);\n }\n}\nconst $f811753598b339f3$export$ab14c04795685c55 = (axisType)=>{\n return (a, b)=>{\n const a_pos = $f811753598b339f3$export$70e712e2ac0237a(a, axisType);\n const b_pos = $f811753598b339f3$export$70e712e2ac0237a(b, axisType);\n const d_top = a_pos[1] - b_pos[1];\n if (d_top != 0) return d_top;\n return a_pos[0] - b_pos[0];\n };\n};\nfunction $f811753598b339f3$export$d0c8ecbd4ed8940c(x) {\n if (Array.isArray(x)) return x;\n return [\n x\n ];\n}\nfunction $f811753598b339f3$export$97de5b0a6b4e4dac(x) {\n if (typeof x == \"string\") x = parseFloat(x);\n if (isNaN(x)) return null;\n return x;\n}\n\n\nexport {$f811753598b339f3$export$f1a15f539858307 as unitsOverlap, $f811753598b339f3$export$70e712e2ac0237a as getUnitHeightRange, $f811753598b339f3$export$d92a67740c050efb as agesOverlap, $f811753598b339f3$export$ab14c04795685c55 as createUnitSorter, $f811753598b339f3$export$d0c8ecbd4ed8940c as ensureArray, $f811753598b339f3$export$97de5b0a6b4e4dac as ensureRealFloat};\n//# sourceMappingURL=column-views.8cfed88b.js.map\n","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":["compareAgeRanges","$6wq4o$compareAgeRanges","AgeRangeRelationship","$6wq4o$AgeRangeRelationship","ColumnAxisType","$6wq4o$ColumnAxisType","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$f811753598b339f3$exports","$f811753598b339f3$export$f1a15f539858307","$f811753598b339f3$export$70e712e2ac0237a","$f811753598b339f3$export$d92a67740c050efb","$f811753598b339f3$export$ab14c04795685c55","$f811753598b339f3$export$d0c8ecbd4ed8940c","$f811753598b339f3$export$97de5b0a6b4e4dac","a","b","axisType","AGE","tolerance","rel","Disjoint","unit","b_clip_pos","b_age","t_clip_pos","t_age","DEPTH","ORDINAL","HEIGHT","b_pos","t_pos","Error","a_pos","d_top","x","Array","isArray","parseFloat","isNaN","unitsOverlap","getUnitHeightRange","agesOverlap","createUnitSorter","ensureArray","ensureRealFloat"],"version":3,"file":"column-views.8cfed88b.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.2e4e357d.js";import"./column-views.2d957a97.js";import"./column-views.6bba8c57.js";import"./column-views.976a829b.js";import"./column-views.9de31cdb.js";import"./column-views.e7e26765.js";import"./column-views.e6720522.js";import"./column-views.3eeac38d.js";import e from"@macrostrat/hyper";import{LithologyColumn as o,useColumnLayout as t,useGeologicPattern as n}from"@macrostrat/column-components";import{useInDarkMode as i}from"@macrostrat/ui-components";import{useMemo as r}from"react";function a(e,o){return Object.keys(o).forEach(function(t){"default"===t||"__esModule"===t||Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:function(){return o[t]}})}),e}function d(e,o,t,n){Object.defineProperty(e,o,{get:t,set:n,enumerable:!0,configurable:!0})}var s=globalThis,c={},l={},u=s.parcelRequirea149;null==u&&((u=function(e){if(e in c)return c[e].exports;if(e in l){var o=l[e];delete l[e];var t={id:e,exports:{}};return c[e]=t,o.call(t.exports,t,t.exports),t.exports}var n=Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}).register=function(e,o){l[e]=o},s.parcelRequirea149=u),u.register;var f={};d(f,"UnitsColumn",()=>g),d(f,"SimpleUnitsColumn",()=>_),d(f,"BasicUnitComponent",()=>h),d(f,"UnitComponent",()=>S),d(f,"useUnitColor",()=>w),d(f,"ColoredUnitComponent",()=>E),d(f,"useUnitColorByEnvironment",()=>H),d(f,"EnvironmentColoredUnitComponent",()=>y);var b=u("jiUaC"),m=u("1n4Pb"),p=u("bfmPX"),$=u("4Abge"),C=u("lgTAP"),v=u("5VyZI"),U=u("lI6Sf"),x=u("a3mb1");function g({width:t=100}){return e(o,{width:t},e(m.UnitBoxes))}function _(o){let{columnWidth:t,width:n,gutterWidth:i=0,labelOffset:r=30}=o;return e([e(g,{width:t}),e(b.UnitNamesColumn,{transform:`translate(${t+i})`,paddingLeft:r,width:n-t-i})])}function h({division:o,...t}){return e(S,{division:o,...t,backgroundColor:o.color,patternID:o.patternID})}function S({division:o,nColumns:n=2,...i}){let r=i.width??t()?.width,a=0==(o.overlappingUnits?.length??0)?1:n,d=(o.column??0)%a;return e($.TrackedLabeledUnit,{division:o,...i,width:r/a,x:d*r/a})}function w(e,o={}){let t=(0,C.useLithologies)(),n=i(),{asBackground:a=!0}=o;return r(()=>null==e||null==t?null:(0,p.getMixedUnitColor)(e,t,n,a),[e?.unit_id,t,n,a])}function E(o){let t=w(o.division);return e(S,{fill:n(r(()=>(0,v.resolveID)(o.division),[o.division?.unit_id])),backgroundColor:t,...o})}function H(e,o={}){let t=(0,C.useEnvironments)(),n=(0,C.useLithologies)(),a=i(),{asBackground:d=!0}=o;return r(()=>{if(null==e||null==t)return null;let o=(0,p.getMixedUnitColor)(e,t,a,d,{key:"environ",id_key:"environ_id"});return null!=o?o:(0,p.getMixedUnitColor)(e,n,a,d)},[e?.unit_id,t,n,a,d])}function y(o){let t=H(o.division);return e(S,{fill:n(r(()=>(0,v.resolveID)(o.division),[o.division?.unit_id])),backgroundColor:t,...o})}a(f,p),a(f,$),a(f,U),a(f,x);export{g as UnitsColumn,_ as SimpleUnitsColumn,h as BasicUnitComponent,S as UnitComponent,w as useUnitColor,E as ColoredUnitComponent,H as useUnitColorByEnvironment,y as EnvironmentColoredUnitComponent,$0557c7dbdd54c055$export$175d3e927f1a9860 as getMixedUnitColor,$6b7af672ec278734$export$e4e89ab6c86ac513 as LabelTrackerProvider,$6b7af672ec278734$export$f613830566442374 as TrackedLabeledUnit,$6b7af672ec278734$export$1dfa200d57964eee as CompositeUnitComponent,$6b7af672ec278734$export$a6684360fef0406e as CompositeUnitsColumn,$6b7af672ec278734$export$d8c3f2fdd653a082 as AnnotatedUnitsColumn,$6b7af672ec278734$export$13984e34afdbb040 as SectionLabelsColumn,$6b7af672ec278734$export$723b790ebe9cdff8 as compositeScale,$6b7af672ec278734$export$6cc7a9df4edde18 as ColumnNotesProvider,$f7d31510668965d8$export$77a278d5ca56e309 as useUnitSelectionDispatch,$f7d31510668965d8$export$b220b1d3591dc9e5 as useUnitSelectionStore,$f7d31510668965d8$export$f0dd93f90aa8e5da as useSelectedUnit,$f7d31510668965d8$export$f19d75b1d4b676a4 as UnitSelectionProvider,$f7d31510668965d8$export$cbbec12b1451fe7d as useUnitSelectionTarget,$f7d31510668965d8$export$70f5ee19650fc7d1 as UnitKeyboardNavigation};
|
|
2
|
-
//# sourceMappingURL=column-views.91043465.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,M,mB,A,Q,mB,C,C,mB,C,C,sB,C,K,+B,A,Q,iB,C,K,2B,A,Q,W,C,K,O,C,S,E,C,C,C,E,O,O,I,C,G,O,C,S,C,E,Y,G,A,e,G,O,S,C,c,C,I,C,E,I,O,c,C,E,E,C,W,C,E,I,W,O,C,C,E,A,C,E,G,C,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,c,I,G,E,E,oB,I,G,E,E,qB,I,G,E,E,gB,I,G,E,E,e,I,G,E,E,uB,I,G,E,E,4B,I,G,E,E,kC,I,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SCsBO,SAAS,EAAY,CAAA,MAAE,EAAQ,GAAA,CAAK,EAIzC,OAAO,AAAA,EAAE,EAAiB,CAAE,MAAA,CAAM,EAAG,AAAA,EAAE,EAAA,SAAQ,EACjD,CAEO,SAAS,EAAkB,CAA0B,EAK1D,GAAM,CAAA,YAAE,CAAW,CAAA,MAAE,CAAK,CAAA,YAAE,EAAc,CAAA,CAAA,YAAG,EAAc,EAAA,CAAI,CAAG,EAElE,OAAO,AAAA,EAAE,CACP,AAAA,EAAE,EAAa,CACb,MAAO,CACT,GACA,AAAA,EAAE,EAAA,eAAc,CAAG,CACjB,UAAW,CAAC,UAAU,EAAE,EAAc,EAAY,CAAC,CAAC,CACpD,YAAa,EACb,MAAO,EAAQ,EAAc,CAC/B,GACD,CACH,CAEO,SAAS,EAAmB,CAAA,SAAE,CAAQ,CAAE,GAAG,EAAM,EAGtD,OAAO,AAAA,EAAE,EAAe,CACtB,SAAA,EACA,GAAG,CAAI,CACP,gBAAiB,EAAS,KAAK,CAC/B,UAAW,EAAS,SAAS,AAC/B,EACF,CAEO,SAAS,EAAc,CAAA,SAAE,CAAQ,CAAA,SAAE,EAAW,CAAA,CAAG,GAAG,EAAM,EAC/D,IAAM,EAAQ,EAAK,KAAK,EAAI,AAAA,KAAmB,MAGzC,EAAY,AAAqB,GADb,CAAA,EAAS,gBAAgB,EAAE,QAAU,CAAA,EACpB,EAAI,EACzC,EAAW,AAAC,CAAA,EAAS,MAAM,EAAI,CAAA,EAAK,EAI1C,OAAO,AAAA,EAAE,EAAA,kBAAiB,CAAG,CAC3B,SAAA,EACA,GAAG,CAAI,CACP,MANmB,EAAQ,EAO3B,EANS,EAAW,EAAS,CAO/B,EACF,CAMO,SAAS,EAAa,CAAI,CAAE,EAAyB,CAAC,CAAC,EAE5D,IAAM,EAAU,AAAA,CAAA,EAAA,EAAA,cAAa,AAAb,IACV,EAAa,AAAA,IACb,CAAA,aAAE,EAAe,CAAA,CAAA,CAAM,CAAG,EAEhC,OAAO,AAAA,EAAQ,IACb,AAAI,AAAQ,MAAR,GAAgB,AAAW,MAAX,EAAwB,KACrC,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,EAAkB,EAAM,EAAS,EAAY,GACnD,CAAC,GAAM,QAAS,EAAS,EAAY,EAAa,CACvD,CAEO,SAAS,EAAqB,CAAK,EAGxC,IAAM,EAAkB,EAAa,EAAM,QAAQ,EAQnD,OAAO,AAAA,EAAE,EAAe,CACtB,KAHW,AAAA,EAJK,AAAA,EAAQ,IACjB,AAAA,CAAA,EAAA,EAAA,SAAQ,AAAR,EAAU,EAAM,QAAQ,EAC9B,CAAC,EAAM,QAAQ,EAAE,QAAQ,GAM1B,gBAAA,EACA,GAAG,CAAK,AACV,EACF,CAEO,SAAS,EACd,CAAI,CACJ,EAAyB,CAAC,CAAC,EAG3B,IAAM,EAAiB,AAAA,CAAA,EAAA,EAAA,eAAc,AAAd,IACjB,EAAU,AAAA,CAAA,EAAA,EAAA,cAAa,AAAb,IACV,EAAa,AAAA,IACb,CAAA,aAAE,EAAe,CAAA,CAAA,CAAM,CAAG,EAEhC,OAAO,AAAA,EAAQ,KACb,GAAI,AAAQ,MAAR,GAAgB,AAAkB,MAAlB,EAAwB,OAAO,KACnD,IAAI,EAAI,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,EAAkB,EAAM,EAAgB,EAAY,EAAc,CACxE,IAAK,UACL,OAAQ,YACV,UACA,AAAI,AAAK,MAAL,EACK,EAGF,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,EAAkB,EAAM,EAAS,EAAY,EACtD,EAAG,CAAC,GAAM,QAAS,EAAgB,EAAS,EAAY,EAAa,CACvE,CAEO,SAAS,EAAgC,CAAK,EAGnD,IAAM,EAAkB,EAA0B,EAAM,QAAQ,EAQhE,OAAO,AAAA,EAAE,EAAe,CACtB,KAHW,AAAA,EAJK,AAAA,EAAQ,IACjB,AAAA,CAAA,EAAA,EAAA,SAAQ,AAAR,EAAU,EAAM,QAAQ,EAC9B,CAAC,EAAM,QAAQ,EAAE,QAAQ,GAM1B,gBAAA,EACA,GAAG,CAAK,AACV,EACF,C,E,E,G,E,E,G,E,E,G,E,E,U,K,W,C,K,iB,C,K,kB,C,K,a,C,K,Y,C,K,oB,C,K,yB,C,K,+B,C,6C,iB,C,6C,oB,C,6C,kB,C,6C,sB,C,6C,oB,C,6C,oB,C,6C,mB,C,6C,c,C,4C,mB,C,6C,wB,C,6C,qB,C,6C,e,C,6C,qB,C,6C,sB,C,6C,sB","sources":["<anon>","packages/column-views/src/units/index.ts"],"sourcesContent":["import \"./column-views.2e4e357d.js\";\nimport \"./column-views.2d957a97.js\";\nimport \"./column-views.6bba8c57.js\";\nimport \"./column-views.976a829b.js\";\nimport \"./column-views.9de31cdb.js\";\nimport \"./column-views.e7e26765.js\";\nimport \"./column-views.e6720522.js\";\nimport \"./column-views.3eeac38d.js\";\nimport $6u7Ut$macrostrathyper from \"@macrostrat/hyper\";\nimport {LithologyColumn as $6u7Ut$LithologyColumn, useColumnLayout as $6u7Ut$useColumnLayout, useGeologicPattern as $6u7Ut$useGeologicPattern} from \"@macrostrat/column-components\";\nimport {useInDarkMode as $6u7Ut$useInDarkMode} from \"@macrostrat/ui-components\";\nimport {useMemo as $6u7Ut$useMemo} from \"react\";\n\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule' || Object.prototype.hasOwnProperty.call(dest, key)) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n }\n });\n });\n\n return dest;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $1da06db49d2262cb$exports = {};\n\n$parcel$export($1da06db49d2262cb$exports, \"UnitsColumn\", () => $1da06db49d2262cb$export$3750278673318c9a);\n$parcel$export($1da06db49d2262cb$exports, \"SimpleUnitsColumn\", () => $1da06db49d2262cb$export$2006342ddaa547c6);\n$parcel$export($1da06db49d2262cb$exports, \"BasicUnitComponent\", () => $1da06db49d2262cb$export$600691a8e9d13a7);\n$parcel$export($1da06db49d2262cb$exports, \"UnitComponent\", () => $1da06db49d2262cb$export$48a4cacf2b7a4441);\n$parcel$export($1da06db49d2262cb$exports, \"useUnitColor\", () => $1da06db49d2262cb$export$62c7735c72801c19);\n$parcel$export($1da06db49d2262cb$exports, \"ColoredUnitComponent\", () => $1da06db49d2262cb$export$6012fd1584b5d0c0);\n$parcel$export($1da06db49d2262cb$exports, \"useUnitColorByEnvironment\", () => $1da06db49d2262cb$export$4830e703a903113);\n$parcel$export($1da06db49d2262cb$exports, \"EnvironmentColoredUnitComponent\", () => $1da06db49d2262cb$export$c2fe8a14da82d570);\n\n\n\nvar $jiUaC = parcelRequire(\"jiUaC\");\n\nvar $1n4Pb = parcelRequire(\"1n4Pb\");\n\n\nvar $bfmPX = parcelRequire(\"bfmPX\");\n\nvar $4Abge = parcelRequire(\"4Abge\");\n\nvar $lgTAP = parcelRequire(\"lgTAP\");\n\n\nvar $5VyZI = parcelRequire(\"5VyZI\");\n\nvar $lI6Sf = parcelRequire(\"lI6Sf\");\n\nvar $a3mb1 = parcelRequire(\"a3mb1\");\nfunction $1da06db49d2262cb$export$3750278673318c9a({ width: width = 100 }) {\n /*\n A column showing units with USGS color fill\n */ return (0, $6u7Ut$macrostrathyper)((0, $6u7Ut$LithologyColumn), {\n width: width\n }, (0, $6u7Ut$macrostrathyper)((0, $1n4Pb.UnitBoxes)));\n}\nfunction $1da06db49d2262cb$export$2006342ddaa547c6(props) {\n /*\n A column with units and names either\n overlapping or offset to the right\n */ const { columnWidth: columnWidth, width: width, gutterWidth: gutterWidth = 0, labelOffset: labelOffset = 30 } = props;\n return (0, $6u7Ut$macrostrathyper)([\n (0, $6u7Ut$macrostrathyper)($1da06db49d2262cb$export$3750278673318c9a, {\n width: columnWidth\n }),\n (0, $6u7Ut$macrostrathyper)((0, $jiUaC.UnitNamesColumn), {\n transform: `translate(${columnWidth + gutterWidth})`,\n paddingLeft: labelOffset,\n width: width - columnWidth - gutterWidth\n })\n ]);\n}\nfunction $1da06db49d2262cb$export$600691a8e9d13a7({ division: division, ...rest }) {\n /** A unit that allows directly setting colors and patterns. */ return (0, $6u7Ut$macrostrathyper)($1da06db49d2262cb$export$48a4cacf2b7a4441, {\n division: division,\n ...rest,\n backgroundColor: division.color,\n patternID: division.patternID\n });\n}\nfunction $1da06db49d2262cb$export$48a4cacf2b7a4441({ division: division, nColumns: nColumns = 2, ...rest }) {\n const width = rest.width ?? (0, $6u7Ut$useColumnLayout)()?.width;\n const nOverlappingUnits = division.overlappingUnits?.length ?? 0;\n const _nColumns = nOverlappingUnits == 0 ? 1 : nColumns;\n const columnIx = (division.column ?? 0) % _nColumns;\n const reducedWidth = width / _nColumns;\n const x = columnIx * width / _nColumns;\n return (0, $6u7Ut$macrostrathyper)((0, $4Abge.TrackedLabeledUnit), {\n division: division,\n ...rest,\n width: reducedWidth,\n x: x\n });\n}\nfunction $1da06db49d2262cb$export$62c7735c72801c19(unit, opts = {}) {\n /** Get the color for a unit based on its lithology */ const lithMap = (0, $lgTAP.useLithologies)();\n const inDarkMode = (0, $6u7Ut$useInDarkMode)();\n const { asBackground: asBackground = true } = opts;\n return (0, $6u7Ut$useMemo)(()=>{\n if (unit == null || lithMap == null) return null;\n return (0, $bfmPX.getMixedUnitColor)(unit, lithMap, inDarkMode, asBackground);\n }, [\n unit?.unit_id,\n lithMap,\n inDarkMode,\n asBackground\n ]);\n}\nfunction $1da06db49d2262cb$export$6012fd1584b5d0c0(props) {\n /** A unit component that is colored using a mixture of lithologies.\n * This is a separate component because it depends on more providers/contexts to determine coloring. */ const backgroundColor = $1da06db49d2262cb$export$62c7735c72801c19(props.division);\n const patternID = (0, $6u7Ut$useMemo)(()=>{\n return (0, $5VyZI.resolveID)(props.division); // ?? getPatternID(props.division.lith, lithMap);\n }, [\n props.division?.unit_id\n ]);\n const fill = (0, $6u7Ut$useGeologicPattern)(patternID);\n return (0, $6u7Ut$macrostrathyper)($1da06db49d2262cb$export$48a4cacf2b7a4441, {\n fill: fill,\n backgroundColor: backgroundColor,\n ...props\n });\n}\nfunction $1da06db49d2262cb$export$4830e703a903113(unit, opts = {}) {\n /** Get the color for a unit based on its lithology */ const environmentMap = (0, $lgTAP.useEnvironments)();\n const lithMap = (0, $lgTAP.useLithologies)();\n const inDarkMode = (0, $6u7Ut$useInDarkMode)();\n const { asBackground: asBackground = true } = opts;\n return (0, $6u7Ut$useMemo)(()=>{\n if (unit == null || environmentMap == null) return null;\n let c = (0, $bfmPX.getMixedUnitColor)(unit, environmentMap, inDarkMode, asBackground, {\n key: \"environ\",\n id_key: \"environ_id\"\n });\n if (c != null) return c;\n // Fallback to lithology color if no environment color is found\n return (0, $bfmPX.getMixedUnitColor)(unit, lithMap, inDarkMode, asBackground);\n }, [\n unit?.unit_id,\n environmentMap,\n lithMap,\n inDarkMode,\n asBackground\n ]);\n}\nfunction $1da06db49d2262cb$export$c2fe8a14da82d570(props) {\n /** A unit component that is colored using a mixture of lithologies.\n * This is a separate component because it depends on more providers/contexts to determine coloring. */ const backgroundColor = $1da06db49d2262cb$export$4830e703a903113(props.division);\n const patternID = (0, $6u7Ut$useMemo)(()=>{\n return (0, $5VyZI.resolveID)(props.division); // ?? getPatternID(props.division.lith, lithMap);\n }, [\n props.division?.unit_id\n ]);\n const fill = (0, $6u7Ut$useGeologicPattern)(patternID);\n return (0, $6u7Ut$macrostrathyper)($1da06db49d2262cb$export$48a4cacf2b7a4441, {\n fill: fill,\n backgroundColor: backgroundColor,\n ...props\n });\n}\nfunction $1da06db49d2262cb$var$getPatternID(liths, lithMap) {\n if (lithMap == null || liths == null || liths.length == 0) return null;\n const patternIDs = new Set();\n for (const lith of liths){\n const lithData = lithMap.get(lith.lith_id);\n if (lithData) patternIDs.add(`${lithData.fill}`);\n }\n let id = patternIDs.values()[0];\n if (id == \"0\") return null;\n return id;\n}\n$parcel$exportWildcard($1da06db49d2262cb$exports, $bfmPX);\n$parcel$exportWildcard($1da06db49d2262cb$exports, $4Abge);\n$parcel$exportWildcard($1da06db49d2262cb$exports, $lI6Sf);\n$parcel$exportWildcard($1da06db49d2262cb$exports, $a3mb1);\n\n\nexport {$1da06db49d2262cb$export$3750278673318c9a as UnitsColumn, $1da06db49d2262cb$export$2006342ddaa547c6 as SimpleUnitsColumn, $1da06db49d2262cb$export$600691a8e9d13a7 as BasicUnitComponent, $1da06db49d2262cb$export$48a4cacf2b7a4441 as UnitComponent, $1da06db49d2262cb$export$62c7735c72801c19 as useUnitColor, $1da06db49d2262cb$export$6012fd1584b5d0c0 as ColoredUnitComponent, $1da06db49d2262cb$export$4830e703a903113 as useUnitColorByEnvironment, $1da06db49d2262cb$export$c2fe8a14da82d570 as EnvironmentColoredUnitComponent, $0557c7dbdd54c055$export$175d3e927f1a9860 as getMixedUnitColor, $6b7af672ec278734$export$e4e89ab6c86ac513 as LabelTrackerProvider, $6b7af672ec278734$export$f613830566442374 as TrackedLabeledUnit, $6b7af672ec278734$export$1dfa200d57964eee as CompositeUnitComponent, $6b7af672ec278734$export$a6684360fef0406e as CompositeUnitsColumn, $6b7af672ec278734$export$d8c3f2fdd653a082 as AnnotatedUnitsColumn, $6b7af672ec278734$export$13984e34afdbb040 as SectionLabelsColumn, $6b7af672ec278734$export$723b790ebe9cdff8 as compositeScale, $6b7af672ec278734$export$6cc7a9df4edde18 as ColumnNotesProvider, $f7d31510668965d8$export$77a278d5ca56e309 as useUnitSelectionDispatch, $f7d31510668965d8$export$b220b1d3591dc9e5 as useUnitSelectionStore, $f7d31510668965d8$export$f0dd93f90aa8e5da as useSelectedUnit, $f7d31510668965d8$export$f19d75b1d4b676a4 as UnitSelectionProvider, $f7d31510668965d8$export$cbbec12b1451fe7d as useUnitSelectionTarget, $f7d31510668965d8$export$70f5ee19650fc7d1 as UnitKeyboardNavigation};\n//# sourceMappingURL=column-views.91043465.js.map\n","import h from \"@macrostrat/hyper\";\nimport {\n LithologyColumn,\n useGeologicPattern,\n} from \"@macrostrat/column-components\";\nimport { UnitNamesColumn } from \"./names\";\nimport { ICompositeUnitProps } from \"./composite\";\nimport { UnitBoxes, UnitProps } from \"./boxes\";\nimport { useColumnLayout } from \"@macrostrat/column-components\";\nimport { useInDarkMode } from \"@macrostrat/ui-components\";\nimport { getMixedUnitColor } from \"./colors\";\nimport { TrackedLabeledUnit } from \"./composite\";\nimport { useEnvironments, useLithologies } from \"../data-provider\";\nimport { useMemo } from \"react\";\nimport { resolveID } from \"./resolvers\";\nimport { Lithology } from \"@macrostrat/api-types\";\n\nexport * from \"./composite\";\nexport * from \"./types\";\nexport * from \"./selection\";\nexport * from \"./colors\";\n\nexport function UnitsColumn({ width = 100 }) {\n /*\n A column showing units with USGS color fill\n */\n return h(LithologyColumn, { width }, h(UnitBoxes));\n}\n\nexport function SimpleUnitsColumn(props: ICompositeUnitProps) {\n /*\n A column with units and names either\n overlapping or offset to the right\n */\n const { columnWidth, width, gutterWidth = 0, labelOffset = 30 } = props;\n\n return h([\n h(UnitsColumn, {\n width: columnWidth,\n }),\n h(UnitNamesColumn, {\n transform: `translate(${columnWidth + gutterWidth})`,\n paddingLeft: labelOffset,\n width: width - columnWidth - gutterWidth,\n }),\n ]);\n}\n\nexport function BasicUnitComponent({ division, ...rest }) {\n /** A unit that allows directly setting colors and patterns. */\n\n return h(UnitComponent, {\n division,\n ...rest,\n backgroundColor: division.color,\n patternID: division.patternID,\n });\n}\n\nexport function UnitComponent({ division, nColumns = 2, ...rest }) {\n const width = rest.width ?? useColumnLayout()?.width;\n\n const nOverlappingUnits = division.overlappingUnits?.length ?? 0;\n const _nColumns = nOverlappingUnits == 0 ? 1 : nColumns;\n const columnIx = (division.column ?? 0) % _nColumns;\n const reducedWidth = width / _nColumns;\n const x = (columnIx * width) / _nColumns;\n\n return h(TrackedLabeledUnit, {\n division,\n ...rest,\n width: reducedWidth,\n x,\n });\n}\n\ninterface UnitColorOptions {\n asBackground?: boolean;\n}\n\nexport function useUnitColor(unit, opts: UnitColorOptions = {}): string | null {\n /** Get the color for a unit based on its lithology */\n const lithMap = useLithologies();\n const inDarkMode = useInDarkMode();\n const { asBackground = true } = opts;\n\n return useMemo(() => {\n if (unit == null || lithMap == null) return null;\n return getMixedUnitColor(unit, lithMap, inDarkMode, asBackground);\n }, [unit?.unit_id, lithMap, inDarkMode, asBackground]);\n}\n\nexport function ColoredUnitComponent(props) {\n /** A unit component that is colored using a mixture of lithologies.\n * This is a separate component because it depends on more providers/contexts to determine coloring. */\n const backgroundColor = useUnitColor(props.division);\n\n const patternID = useMemo(() => {\n return resolveID(props.division); // ?? getPatternID(props.division.lith, lithMap);\n }, [props.division?.unit_id]);\n\n const fill = useGeologicPattern(patternID);\n\n return h(UnitComponent, {\n fill,\n backgroundColor,\n ...props,\n });\n}\n\nexport function useUnitColorByEnvironment(\n unit,\n opts: UnitColorOptions = {},\n): string | null {\n /** Get the color for a unit based on its lithology */\n const environmentMap = useEnvironments();\n const lithMap = useLithologies();\n const inDarkMode = useInDarkMode();\n const { asBackground = true } = opts;\n\n return useMemo(() => {\n if (unit == null || environmentMap == null) return null;\n let c = getMixedUnitColor(unit, environmentMap, inDarkMode, asBackground, {\n key: \"environ\",\n id_key: \"environ_id\",\n });\n if (c != null) {\n return c;\n }\n // Fallback to lithology color if no environment color is found\n return getMixedUnitColor(unit, lithMap, inDarkMode, asBackground);\n }, [unit?.unit_id, environmentMap, lithMap, inDarkMode, asBackground]);\n}\n\nexport function EnvironmentColoredUnitComponent(props) {\n /** A unit component that is colored using a mixture of lithologies.\n * This is a separate component because it depends on more providers/contexts to determine coloring. */\n const backgroundColor = useUnitColorByEnvironment(props.division);\n\n const patternID = useMemo(() => {\n return resolveID(props.division); // ?? getPatternID(props.division.lith, lithMap);\n }, [props.division?.unit_id]);\n\n const fill = useGeologicPattern(patternID);\n\n return h(UnitComponent, {\n fill,\n backgroundColor,\n ...props,\n });\n}\n\nfunction getPatternID(\n liths: Array<Lithology>,\n lithMap: Map<number, Lithology>,\n): string | null {\n if (lithMap == null || liths == null || liths.length == 0) {\n return null;\n }\n const patternIDs = new Set<string>();\n for (const lith of liths) {\n const lithData = lithMap.get(lith.lith_id);\n if (lithData) {\n patternIDs.add(`${lithData.fill}`);\n }\n }\n let id = patternIDs.values()[0];\n if (id == \"0\") return null;\n return id;\n}\n"],"names":["$6u7Ut$macrostrathyper","LithologyColumn","$6u7Ut$LithologyColumn","useColumnLayout","$6u7Ut$useColumnLayout","useGeologicPattern","$6u7Ut$useGeologicPattern","useInDarkMode","$6u7Ut$useInDarkMode","useMemo","$6u7Ut$useMemo","$parcel$exportWildcard","dest","source","Object","keys","forEach","key","prototype","hasOwnProperty","call","defineProperty","enumerable","get","$parcel$export","e","n","v","s","set","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","err","Error","code","register","$1da06db49d2262cb$exports","$1da06db49d2262cb$export$3750278673318c9a","$1da06db49d2262cb$export$2006342ddaa547c6","$1da06db49d2262cb$export$600691a8e9d13a7","$1da06db49d2262cb$export$48a4cacf2b7a4441","$1da06db49d2262cb$export$62c7735c72801c19","$1da06db49d2262cb$export$6012fd1584b5d0c0","$1da06db49d2262cb$export$4830e703a903113","$1da06db49d2262cb$export$c2fe8a14da82d570","$jiUaC","$1n4Pb","$bfmPX","$4Abge","$lgTAP","$5VyZI","$lI6Sf","$a3mb1","width","UnitBoxes","props","columnWidth","gutterWidth","labelOffset","UnitNamesColumn","transform","paddingLeft","division","rest","backgroundColor","color","patternID","nColumns","_nColumns","nOverlappingUnits","overlappingUnits","length","columnIx","column","TrackedLabeledUnit","x","unit","opts","lithMap","useLithologies","inDarkMode","asBackground","getMixedUnitColor","unit_id","fill","resolveID","environmentMap","useEnvironments","c","id_key","UnitsColumn","SimpleUnitsColumn","BasicUnitComponent","UnitComponent","useUnitColor","ColoredUnitComponent","useUnitColorByEnvironment","EnvironmentColoredUnitComponent","$0557c7dbdd54c055$export$175d3e927f1a9860","$6b7af672ec278734$export$e4e89ab6c86ac513","LabelTrackerProvider","$6b7af672ec278734$export$f613830566442374","$6b7af672ec278734$export$1dfa200d57964eee","CompositeUnitComponent","$6b7af672ec278734$export$a6684360fef0406e","CompositeUnitsColumn","$6b7af672ec278734$export$d8c3f2fdd653a082","AnnotatedUnitsColumn","$6b7af672ec278734$export$13984e34afdbb040","SectionLabelsColumn","$6b7af672ec278734$export$723b790ebe9cdff8","compositeScale","$6b7af672ec278734$export$6cc7a9df4edde18","ColumnNotesProvider","$f7d31510668965d8$export$77a278d5ca56e309","useUnitSelectionDispatch","$f7d31510668965d8$export$b220b1d3591dc9e5","useUnitSelectionStore","$f7d31510668965d8$export$f0dd93f90aa8e5da","useSelectedUnit","$f7d31510668965d8$export$f19d75b1d4b676a4","UnitSelectionProvider","$f7d31510668965d8$export$cbbec12b1451fe7d","useUnitSelectionTarget","$f7d31510668965d8$export$70f5ee19650fc7d1","UnitKeyboardNavigation"],"version":3,"file":"column-views.91043465.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.2e4e357d.js";import"./column-views.2d957a97.js";import"./column-views.6a0a35e7.js";import"./column-views.78d3f3c5.js";import"./column-views.3eeac38d.js";import{hyperStyled as e}from"@macrostrat/hyper";import{LithologyColumn as t,SVG as n,ColumnContext as o}from"@macrostrat/column-components";import{createContext as a,useState as i,useRef as r,useCallback as l,useContext as s,useEffect as c}from"react";function d(e,t,n,o){Object.defineProperty(e,t,{get:n,set:o,enumerable:!0,configurable:!0})}var u=globalThis,p={},m={},f=u.parcelRequirea149;null==f&&((f=function(e){if(e in p)return p[e].exports;if(e in m){var t=m[e];delete m[e];var n={id:e,exports:{}};return p[e]=n,t.call(n.exports,n,n.exports),n.exports}var o=Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}).register=function(e,t){m[e]=t},u.parcelRequirea149=f),f.register;var b={};d(b,"LabelTrackerProvider",()=>S),d(b,"TrackedLabeledUnit",()=>y),d(b,"CompositeUnitComponent",()=>w),d(b,"CompositeUnitsColumn",()=>L),d(b,"AnnotatedUnitsColumn",()=>P),d(b,"SectionLabelsColumn",()=>T),d(b,"compositeScale",()=>N),d(b,"ColumnNotesProvider",()=>F);var C=f("jiUaC"),v=f("1n4Pb"),x=f("45u6B"),h=f("wtIgl"),$=f("a3mb1");let g=e(x&&x.__esModule?x.default:x),U=a(null),H=a(null),_=e=>e.unit_id;function S(e){let{children:t,units:n,findUnitID:o=_}=e,[a,s]=i(null),c=r({}),d=l((e,t)=>{let a=o(e);c.current[a]=t,Object.keys(c.current).length==n.length&&s(n.filter(e=>{let t=o(e);return!1==c.current[t]}))},[c,n,o]);return g(U.Provider,{value:d},g(H.Provider,{value:a},t))}function y({division:e,nameForDivision:t=C.defaultNameFunction,...n}){let o=s(U);return g(v.LabeledUnit,{division:e,label:t(e),onLabelUpdated(t,n){o?.(e,n)},...n})}let w=y;function L(e){let{width:n,unitComponent:o=y,unitComponentProps:a,clipToFrame:i,...r}=e;return g(t,{width:n,clipToFrame:i},[g(v.UnitBoxes,{unitComponent:o,unitComponentProps:a,...r})])}function P(e){return c(()=>{console.warn("AnnotatedUnitsColumn is deprecated and currently renders a no-op for transition purposes")},[]),null}function T(e){let{width:t=300,noteMode:o="unlabeled",labelOffset:a=30,noteComponent:i,shouldRenderNote:r}=e,{sections:l,totalHeight:c,axisType:d}=(0,h.useMacrostratColumnData)(),u=s(H),p=N(l),m=(0,$.useUnitSelectionDispatch)();return g("div.section-labels-column",[g(F,{units:[],scale:p,totalHeight:c,axisType:d},g(n,{height:c,innerWidth:t-4,paddingH:1,paddingLeft:3},g(C.UnitNamesColumn,{divisions:"unlabeled"==o?u:void 0,paddingLeft:a,width:t,noteComponent:i,shouldRenderNote:r,scale:p,onClickNote(e){m(e.data,null,null)}})))])}function N(e,t={}){let{clamped:n=!0}=t,o=e.map(e=>{let{scaleInfo:t}=e;return t.scale.copy().clamp(n)}),a=e=>{let t=o.find(t=>t.domain()[0]<=e&&e<=t.domain()[1]);return t?t(e):NaN};return a.copy=()=>a,a.domain=()=>[o[0].domain()[0],o[o.length-1].domain()[1]],a}function F(e){let{children:t,scale:n,totalHeight:a,pixelScale:i}=e,{axisType:r}=(0,h.useMacrostratColumnData)();return g(o.Provider,{value:{divisions:[],scale:n,scaleClamped:n,pixelHeight:a,pixelsPerMeter:i,axisType:r,zoom:1}},t)}export{S as LabelTrackerProvider,y as TrackedLabeledUnit,w as CompositeUnitComponent,L as CompositeUnitsColumn,P as AnnotatedUnitsColumn,T as SectionLabelsColumn,N as compositeScale,F as ColumnNotesProvider};
|
|
2
|
-
//# sourceMappingURL=column-views.976a829b.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,e,C,K,mB,A,Q,mB,C,C,O,C,C,iB,C,K,+B,A,Q,iB,C,C,Y,C,C,U,C,C,e,C,C,c,C,C,a,C,K,O,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,uB,I,G,E,E,qB,I,G,E,E,yB,I,G,E,E,uB,I,G,E,E,uB,I,G,E,E,sB,I,G,E,E,iB,I,G,E,E,sB,I,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SCqBA,IAAM,EAAI,AAAA,E,AAAY,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAMhB,EAAsB,AAAA,EAAc,MACpC,EAA4B,AAAA,EAAc,MAE1C,EAAuB,AAAC,GAAM,EAAE,OAAO,CAEtC,SAAS,EAAqB,CAAK,EAIxC,GAAM,CAAA,SAAE,CAAQ,CAAA,MAAE,CAAK,CAAA,WAAE,EAAa,CAAA,CAAsB,CAAG,EACzD,CAAC,EAAoB,EAAsB,CAAG,AAAA,EAElD,MACI,EAAkB,AAAA,EAAqB,CAAC,GACxC,EAAuB,AAAA,EAC3B,CAAC,EAAK,KACJ,IAAM,EAAK,EAAW,EACtB,CAAA,EAAgB,OAAO,CAAC,EAAG,CAAG,EAC1B,OAAO,IAAI,CAAC,EAAgB,OAAO,EAAE,MAAM,EAAI,EAAM,MAAM,EAC7D,EAEE,EAAM,MAAM,CAAC,AAAC,IACZ,IAAM,EAAK,EAAW,GACtB,MAAO,AAA+B,CAAA,GAA/B,EAAgB,OAAO,CAAC,EAAG,AACpC,GAGN,EACA,CAAC,EAAiB,EAAO,EAAW,EAItC,OAAO,EACL,EAAoB,QAAQ,CAC5B,CAAE,MAHU,CAGJ,EACR,EACE,EAA0B,QAAQ,CAClC,CAAE,MAAO,CAAmB,EAC5B,GA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","sources":["<anon>","packages/column-views/src/units/composite.ts"],"sourcesContent":["import \"./column-views.2e4e357d.js\";\nimport \"./column-views.2d957a97.js\";\nimport \"./column-views.6a0a35e7.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport \"./column-views.3eeac38d.js\";\nimport {hyperStyled as $hj0lx$hyperStyled} from \"@macrostrat/hyper\";\nimport {LithologyColumn as $hj0lx$LithologyColumn, SVG as $hj0lx$SVG, ColumnContext as $hj0lx$ColumnContext} from \"@macrostrat/column-components\";\nimport {createContext as $hj0lx$createContext, useState as $hj0lx$useState, useRef as $hj0lx$useRef, useCallback as $hj0lx$useCallback, useContext as $hj0lx$useContext, useEffect as $hj0lx$useEffect} from \"react\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $6b7af672ec278734$exports = {};\n\n$parcel$export($6b7af672ec278734$exports, \"LabelTrackerProvider\", () => $6b7af672ec278734$export$e4e89ab6c86ac513);\n$parcel$export($6b7af672ec278734$exports, \"TrackedLabeledUnit\", () => $6b7af672ec278734$export$f613830566442374);\n$parcel$export($6b7af672ec278734$exports, \"CompositeUnitComponent\", () => $6b7af672ec278734$export$1dfa200d57964eee);\n$parcel$export($6b7af672ec278734$exports, \"CompositeUnitsColumn\", () => $6b7af672ec278734$export$a6684360fef0406e);\n$parcel$export($6b7af672ec278734$exports, \"AnnotatedUnitsColumn\", () => $6b7af672ec278734$export$d8c3f2fdd653a082);\n$parcel$export($6b7af672ec278734$exports, \"SectionLabelsColumn\", () => $6b7af672ec278734$export$13984e34afdbb040);\n$parcel$export($6b7af672ec278734$exports, \"compositeScale\", () => $6b7af672ec278734$export$723b790ebe9cdff8);\n$parcel$export($6b7af672ec278734$exports, \"ColumnNotesProvider\", () => $6b7af672ec278734$export$6cc7a9df4edde18);\n\n\n\nvar $jiUaC = parcelRequire(\"jiUaC\");\n\n\nvar $1n4Pb = parcelRequire(\"1n4Pb\");\n\nvar $45u6B = parcelRequire(\"45u6B\");\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $a3mb1 = parcelRequire(\"a3mb1\");\nconst $6b7af672ec278734$var$h = (0, $hj0lx$hyperStyled)((0, (/*@__PURE__*/$parcel$interopDefault($45u6B))));\nconst $6b7af672ec278734$var$LabelTrackerContext = (0, $hj0lx$createContext)(null);\nconst $6b7af672ec278734$var$UnlabeledDivisionsContext = (0, $hj0lx$createContext)(null);\nconst $6b7af672ec278734$var$findMacrostratUnitID = (u)=>u.unit_id;\nfunction $6b7af672ec278734$export$e4e89ab6c86ac513(props) {\n /** Tracker for units to handle state for whether their labels fit inline or not.\n * Designed to work for single or composite columns.\n */ const { children: children, units: units, findUnitID: findUnitID = $6b7af672ec278734$var$findMacrostratUnitID } = props;\n const [unlabeledDivisions, setUnlabeledDivisions] = (0, $hj0lx$useState)(null);\n const labelTrackerRef = (0, $hj0lx$useRef)({});\n const trackLabelVisibility = (0, $hj0lx$useCallback)((div, visible)=>{\n const id = findUnitID(div);\n labelTrackerRef.current[id] = visible;\n if (Object.keys(labelTrackerRef.current).length == units.length) setUnlabeledDivisions(// @ts-ignore\n units.filter((d)=>{\n const id = findUnitID(d);\n return labelTrackerRef.current[id] == false;\n }));\n }, [\n labelTrackerRef,\n units,\n findUnitID\n ]);\n const value = trackLabelVisibility;\n return $6b7af672ec278734$var$h($6b7af672ec278734$var$LabelTrackerContext.Provider, {\n value: value\n }, $6b7af672ec278734$var$h($6b7af672ec278734$var$UnlabeledDivisionsContext.Provider, {\n value: unlabeledDivisions\n }, children));\n}\nfunction $6b7af672ec278734$export$f613830566442374({ division: division, nameForDivision: nameForDivision = (0, $jiUaC.defaultNameFunction), ...rest }) {\n const trackLabelVisibility = (0, $hj0lx$useContext)($6b7af672ec278734$var$LabelTrackerContext);\n return $6b7af672ec278734$var$h((0, $1n4Pb.LabeledUnit), {\n division: division,\n label: nameForDivision(division),\n onLabelUpdated (label, visible) {\n // If there is al LabelTrackerContext, update the label visibility\n trackLabelVisibility?.(division, visible);\n },\n ...rest\n });\n}\nconst $6b7af672ec278734$export$1dfa200d57964eee = $6b7af672ec278734$export$f613830566442374;\nfunction $6b7af672ec278734$export$a6684360fef0406e(props) {\n /*\n A column with units and names either\n overlapping or offset to the right\n */ const { width: width, unitComponent: unitComponent = $6b7af672ec278734$export$f613830566442374, unitComponentProps: unitComponentProps, clipToFrame: clipToFrame, ...rest } = props;\n return $6b7af672ec278734$var$h((0, $hj0lx$LithologyColumn), {\n width: width,\n clipToFrame: clipToFrame\n }, [\n $6b7af672ec278734$var$h((0, $1n4Pb.UnitBoxes), {\n unitComponent: unitComponent,\n unitComponentProps: unitComponentProps,\n ...rest\n })\n ]);\n}\nfunction $6b7af672ec278734$export$d8c3f2fdd653a082(props) {\n (0, $hj0lx$useEffect)(()=>{\n console.warn(\"AnnotatedUnitsColumn is deprecated and currently renders a no-op for transition purposes\");\n }, []);\n return null;\n}\nfunction $6b7af672ec278734$export$13984e34afdbb040(props) {\n // Section with \"squishy\" time scale\n const { width: width = 300, noteMode: noteMode = \"unlabeled\", labelOffset: labelOffset = 30, noteComponent: noteComponent, shouldRenderNote: shouldRenderNote } = props;\n const { sections: sections, totalHeight: totalHeight, axisType: axisType } = (0, $wtIgl.useMacrostratColumnData)();\n const unlabeledUnits = (0, $hj0lx$useContext)($6b7af672ec278734$var$UnlabeledDivisionsContext);\n const unitsToLabel = noteMode == \"unlabeled\" ? unlabeledUnits : undefined;\n const _compositeScale = $6b7af672ec278734$export$723b790ebe9cdff8(sections);\n const selectUnit = (0, $a3mb1.useUnitSelectionDispatch)();\n return $6b7af672ec278734$var$h(\"div.section-labels-column\", [\n $6b7af672ec278734$var$h($6b7af672ec278734$export$6cc7a9df4edde18, {\n units: [],\n scale: _compositeScale,\n totalHeight: totalHeight,\n axisType: axisType\n }, $6b7af672ec278734$var$h((0, $hj0lx$SVG), {\n height: totalHeight,\n innerWidth: width - 4,\n paddingH: 1,\n paddingLeft: 3\n }, $6b7af672ec278734$var$h((0, $jiUaC.UnitNamesColumn), {\n divisions: unitsToLabel,\n paddingLeft: labelOffset,\n width: width,\n noteComponent: noteComponent,\n shouldRenderNote: shouldRenderNote,\n scale: _compositeScale,\n onClickNote (note) {\n selectUnit(note.data, null, null);\n }\n })))\n ]);\n}\nfunction $6b7af672ec278734$export$723b790ebe9cdff8(sections, opts = {}) {\n /** A basic composite scale that works across all sections. This isn't a fully featured,\n * contiuous D3 scale, but it shares enough attributes to be useful for\n * laying out notes.\n */ const { clamped: clamped = true } = opts;\n const scales = sections.map((group)=>{\n const { scaleInfo: scaleInfo } = group;\n return scaleInfo.scale.copy().clamp(clamped);\n });\n let baseScale = (val)=>{\n // Find the scale for the section that contains the value\n const scale = scales.find((scale)=>{\n return scale.domain()[0] <= val && val <= scale.domain()[1];\n });\n if (scale) return scale(val);\n else // return nan\n return NaN;\n };\n baseScale.copy = ()=>{\n return baseScale;\n };\n baseScale.domain = ()=>{\n // Return a domain that covers all sections\n return [\n scales[0].domain()[0],\n scales[scales.length - 1].domain()[1]\n ];\n };\n return baseScale;\n}\nfunction $6b7af672ec278734$export$6cc7a9df4edde18(props) {\n // A fake column axis provider that allows scales to cross\n const { children: children, scale: scale, totalHeight: totalHeight, pixelScale: pixelScale } = props;\n const { axisType: axisType } = (0, $wtIgl.useMacrostratColumnData)();\n return $6b7af672ec278734$var$h((0, $hj0lx$ColumnContext).Provider, {\n value: {\n divisions: [],\n scale: scale,\n scaleClamped: scale,\n pixelHeight: totalHeight,\n pixelsPerMeter: pixelScale,\n axisType: axisType,\n zoom: 1\n }\n }, children);\n}\n\n\nexport {$6b7af672ec278734$export$e4e89ab6c86ac513 as LabelTrackerProvider, $6b7af672ec278734$export$f613830566442374 as TrackedLabeledUnit, $6b7af672ec278734$export$1dfa200d57964eee as CompositeUnitComponent, $6b7af672ec278734$export$a6684360fef0406e as CompositeUnitsColumn, $6b7af672ec278734$export$d8c3f2fdd653a082 as AnnotatedUnitsColumn, $6b7af672ec278734$export$13984e34afdbb040 as SectionLabelsColumn, $6b7af672ec278734$export$723b790ebe9cdff8 as compositeScale, $6b7af672ec278734$export$6cc7a9df4edde18 as ColumnNotesProvider};\n//# sourceMappingURL=column-views.976a829b.js.map\n","import { hyperStyled } from \"@macrostrat/hyper\";\nimport {\n LithologyColumn,\n SVG,\n ColumnContext,\n} from \"@macrostrat/column-components\";\nimport { defaultNameFunction, UnitNamesColumn } from \"./names\";\nimport {\n createContext,\n useContext,\n useState,\n useRef,\n useCallback,\n useEffect,\n} from \"react\";\nimport { BaseUnit } from \"@macrostrat/api-types\";\nimport { LabeledUnit, UnitBoxes } from \"./boxes\";\nimport styles from \"./composite.module.sass\";\nimport { useMacrostratColumnData } from \"../data-provider\";\nimport { useUnitSelectionDispatch } from \"../units\";\n\nconst h = hyperStyled(styles);\n\ninterface LabelTracker {\n [key: number]: boolean;\n}\n\nconst LabelTrackerContext = createContext(null);\nconst UnlabeledDivisionsContext = createContext(null);\n\nconst findMacrostratUnitID = (u) => u.unit_id;\n\nexport function LabelTrackerProvider(props) {\n /** Tracker for units to handle state for whether their labels fit inline or not.\n * Designed to work for single or composite columns.\n */\n const { children, units, findUnitID = findMacrostratUnitID } = props;\n const [unlabeledDivisions, setUnlabeledDivisions] = useState<\n BaseUnit[] | null\n >(null);\n const labelTrackerRef = useRef<LabelTracker>({});\n const trackLabelVisibility = useCallback(\n (div, visible) => {\n const id = findUnitID(div);\n labelTrackerRef.current[id] = visible;\n if (Object.keys(labelTrackerRef.current).length == units.length) {\n setUnlabeledDivisions(\n // @ts-ignore\n units.filter((d) => {\n const id = findUnitID(d);\n return labelTrackerRef.current[id] == false;\n }),\n );\n }\n },\n [labelTrackerRef, units, findUnitID],\n );\n\n const value = trackLabelVisibility;\n return h(\n LabelTrackerContext.Provider,\n { value },\n h(\n UnlabeledDivisionsContext.Provider,\n { value: unlabeledDivisions },\n children,\n ),\n );\n}\n\nfunction TrackedLabeledUnit({\n division,\n nameForDivision = defaultNameFunction,\n ...rest\n}) {\n const trackLabelVisibility = useContext(LabelTrackerContext);\n return h(LabeledUnit, {\n division,\n label: nameForDivision(division),\n onLabelUpdated(label, visible) {\n // If there is al LabelTrackerContext, update the label visibility\n trackLabelVisibility?.(division, visible);\n },\n ...rest,\n });\n}\n\nexport const CompositeUnitComponent = TrackedLabeledUnit;\n\ntype BaseUnitProps = {\n width: number;\n showLabels?: boolean;\n columnWidth?: number;\n clipToFrame?: boolean;\n};\n\ntype ICompositeUnitProps = BaseUnitProps & {\n gutterWidth?: number;\n labelOffset?: number;\n paddingLeft?: number;\n nameForDivision?: (division: BaseUnit) => string;\n children?: React.ReactNode;\n unitComponent?: React.FC<any>;\n unitComponentProps?: any;\n noteMode?: \"labeled\" | \"unlabeled\";\n showLabelColumn?: boolean;\n noteComponent?: React.FC<any>;\n shouldRenderNote?: (d: any) => boolean;\n};\n\ninterface CompositeUnitProps {\n unitComponent: React.FC<any>;\n unitComponentProps?: any;\n width: number;\n showLabels?: boolean;\n clipToFrame?: boolean;\n}\n\nexport function CompositeUnitsColumn(props: CompositeUnitProps) {\n /*\n A column with units and names either\n overlapping or offset to the right\n */\n const {\n width,\n unitComponent = TrackedLabeledUnit,\n unitComponentProps,\n clipToFrame,\n ...rest\n } = props;\n\n return h(LithologyColumn, { width, clipToFrame }, [\n h(UnitBoxes, {\n unitComponent,\n unitComponentProps,\n ...rest,\n }),\n ]);\n}\n\nexport function AnnotatedUnitsColumn(props: ICompositeUnitProps) {\n useEffect(() => {\n console.warn(\n \"AnnotatedUnitsColumn is deprecated and currently renders a no-op for transition purposes\",\n );\n }, []);\n return null;\n}\n\nexport function SectionLabelsColumn(props: ICompositeUnitProps) {\n // Section with \"squishy\" time scale\n const {\n width = 300,\n noteMode = \"unlabeled\",\n labelOffset = 30,\n noteComponent,\n shouldRenderNote,\n } = props;\n\n const { sections, totalHeight, axisType } = useMacrostratColumnData();\n\n const unlabeledUnits = useContext(UnlabeledDivisionsContext);\n const unitsToLabel = noteMode == \"unlabeled\" ? unlabeledUnits : undefined;\n\n const _compositeScale = compositeScale(sections);\n\n const selectUnit = useUnitSelectionDispatch();\n\n return h(\"div.section-labels-column\", [\n h(\n ColumnNotesProvider,\n {\n units: [],\n scale: _compositeScale,\n totalHeight,\n axisType,\n },\n h(\n SVG,\n {\n height: totalHeight,\n innerWidth: width - 4,\n paddingH: 1,\n paddingLeft: 3,\n },\n h(UnitNamesColumn, {\n divisions: unitsToLabel,\n paddingLeft: labelOffset,\n width,\n noteComponent,\n shouldRenderNote,\n scale: _compositeScale,\n onClickNote(note) {\n selectUnit(note.data, null, null);\n },\n }),\n ),\n ),\n ]);\n}\n\ntype CompositeScaleOpts = {\n clamped?: boolean;\n};\n\nexport interface CompositeColumnScale {\n (val: number): number;\n copy(): CompositeColumnScale;\n domain(): number[];\n}\n\nexport function compositeScale(\n sections,\n opts: CompositeScaleOpts = {},\n): CompositeColumnScale {\n /** A basic composite scale that works across all sections. This isn't a fully featured,\n * contiuous D3 scale, but it shares enough attributes to be useful for\n * laying out notes.\n */\n const { clamped = true } = opts;\n\n const scales = sections.map((group) => {\n const { scaleInfo } = group;\n return scaleInfo.scale.copy().clamp(clamped);\n });\n\n let baseScale: any = (val) => {\n // Find the scale for the section that contains the value\n const scale = scales.find((scale) => {\n return scale.domain()[0] <= val && val <= scale.domain()[1];\n });\n\n if (scale) {\n return scale(val);\n } else {\n // return nan\n return NaN;\n }\n };\n\n baseScale.copy = () => {\n return baseScale;\n };\n\n baseScale.domain = () => {\n // Return a domain that covers all sections\n return [scales[0].domain()[0], scales[scales.length - 1].domain()[1]];\n };\n\n return baseScale as CompositeColumnScale;\n}\n\nexport function ColumnNotesProvider(props) {\n // A fake column axis provider that allows scales to cross\n const { children, scale, totalHeight, pixelScale } = props;\n\n const { axisType } = useMacrostratColumnData();\n\n return h(\n ColumnContext.Provider,\n {\n value: {\n divisions: [],\n scale,\n scaleClamped: scale,\n pixelHeight: totalHeight,\n pixelsPerMeter: pixelScale,\n axisType,\n zoom: 1,\n },\n },\n children,\n );\n}\n\nexport { TrackedLabeledUnit, ICompositeUnitProps };\n"],"names":["hyperStyled","$hj0lx$hyperStyled","LithologyColumn","$hj0lx$LithologyColumn","SVG","$hj0lx$SVG","ColumnContext","$hj0lx$ColumnContext","createContext","$hj0lx$createContext","useState","$hj0lx$useState","useRef","$hj0lx$useRef","useCallback","$hj0lx$useCallback","useContext","$hj0lx$useContext","useEffect","$hj0lx$useEffect","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$6b7af672ec278734$exports","$6b7af672ec278734$export$e4e89ab6c86ac513","$6b7af672ec278734$export$f613830566442374","$6b7af672ec278734$export$1dfa200d57964eee","$6b7af672ec278734$export$a6684360fef0406e","$6b7af672ec278734$export$d8c3f2fdd653a082","$6b7af672ec278734$export$13984e34afdbb040","$6b7af672ec278734$export$723b790ebe9cdff8","$6b7af672ec278734$export$6cc7a9df4edde18","$jiUaC","$1n4Pb","$45u6B","$wtIgl","$a3mb1","$6b7af672ec278734$var$h","a","__esModule","default","$6b7af672ec278734$var$LabelTrackerContext","$6b7af672ec278734$var$UnlabeledDivisionsContext","$6b7af672ec278734$var$findMacrostratUnitID","u","unit_id","props","children","units","findUnitID","unlabeledDivisions","setUnlabeledDivisions","labelTrackerRef","trackLabelVisibility","div","visible","current","keys","length","filter","d","Provider","value","division","nameForDivision","defaultNameFunction","rest","LabeledUnit","label","onLabelUpdated","width","unitComponent","unitComponentProps","clipToFrame","UnitBoxes","console","warn","noteMode","labelOffset","noteComponent","shouldRenderNote","sections","totalHeight","axisType","useMacrostratColumnData","unlabeledUnits","_compositeScale","selectUnit","useUnitSelectionDispatch","scale","height","innerWidth","paddingH","paddingLeft","UnitNamesColumn","divisions","undefined","onClickNote","note","data","opts","clamped","scales","map","group","scaleInfo","copy","clamp","baseScale","val","find","domain","NaN","pixelScale","scaleClamped","pixelHeight","pixelsPerMeter","zoom","LabelTrackerProvider","TrackedLabeledUnit","CompositeUnitComponent","CompositeUnitsColumn","AnnotatedUnitsColumn","SectionLabelsColumn","compositeScale","ColumnNotesProvider"],"version":3,"file":"column-views.976a829b.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
function n(n,c,a,e){Object.defineProperty(n,c,{get:a,set:e,enumerable:!0,configurable:!0})}var c,a,e,o,t,i,l,m,f,r,u,s,_,g={};n(g,"column-container",()=>c,n=>c=n),n(g,"timescale-column",()=>a,n=>a=n),n(g,"section-main",()=>e,n=>e=n),n(g,"section-units-container",()=>o,n=>o=n),n(g,"main-column",()=>t,n=>t=n),n(g,"unconformity-labels",()=>i,n=>i=n),n(g,"unconformity",()=>l,n=>l=n),n(g,"giga",()=>m,n=>m=n),n(g,"mega",()=>f,n=>f=n),n(g,"large",()=>r,n=>r=n),n(g,"small",()=>u,n=>u=n),n(g,"unconformity-text",()=>s,n=>s=n),n(g,"column-title-row",()=>_,n=>_=n),c="column-container_afc440",a="timescale-column_afc440",e="section-main_afc440",o="section-units-container_afc440",t="main-column_afc440",i="unconformity-labels_afc440",l="unconformity_afc440",m="giga_afc440",f="mega_afc440",r="large_afc440",u="small_afc440",s="unconformity-text_afc440",_="column-title-row_afc440";export{g as default};
|
|
2
|
-
//# sourceMappingURL=column-views.99fb74c0.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,ICAA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,E,E,C,E,E,E,mB,I,E,A,G,E,G,E,E,mB,I,E,A,G,E,G,E,E,e,I,E,A,G,E,G,E,E,0B,I,E,A,G,E,G,E,E,c,I,E,A,G,E,G,E,E,sB,I,E,A,G,E,G,E,E,e,I,E,A,G,E,G,E,E,O,I,E,A,G,E,G,E,E,O,I,E,A,G,E,G,E,E,Q,I,E,A,G,E,G,E,E,Q,I,E,A,G,E,G,E,E,oB,I,E,A,G,E,G,E,E,mB,I,E,A,G,E,GAZA,EAAqC,0BACrC,EAAqC,0BACrC,EAAiC,sBACjC,EAA4C,iCAC5C,EAAgC,qBAChC,EAAwC,6BACxC,EAAiC,sBACjC,EAAyB,cACzB,EAAyB,cACzB,EAA0B,eAC1B,EAA0B,eAC1B,EAAsC,2BACtC,EAAqC,iC,K,O","sources":["<anon>","packages/column-views/src/column.module.sass"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $5cefe1c5058d37da$exports = {};\n\n$parcel$export($5cefe1c5058d37da$exports, \"column-container\", () => $5cefe1c5058d37da$export$e908cef0cccb98df, (v) => $5cefe1c5058d37da$export$e908cef0cccb98df = v);\n$parcel$export($5cefe1c5058d37da$exports, \"timescale-column\", () => $5cefe1c5058d37da$export$82c2e1a892d790ab, (v) => $5cefe1c5058d37da$export$82c2e1a892d790ab = v);\n$parcel$export($5cefe1c5058d37da$exports, \"section-main\", () => $5cefe1c5058d37da$export$add6075ee40659c8, (v) => $5cefe1c5058d37da$export$add6075ee40659c8 = v);\n$parcel$export($5cefe1c5058d37da$exports, \"section-units-container\", () => $5cefe1c5058d37da$export$37c0a390e37eb2da, (v) => $5cefe1c5058d37da$export$37c0a390e37eb2da = v);\n$parcel$export($5cefe1c5058d37da$exports, \"main-column\", () => $5cefe1c5058d37da$export$9c88f9a435c40ccb, (v) => $5cefe1c5058d37da$export$9c88f9a435c40ccb = v);\n$parcel$export($5cefe1c5058d37da$exports, \"unconformity-labels\", () => $5cefe1c5058d37da$export$d726faed2da21993, (v) => $5cefe1c5058d37da$export$d726faed2da21993 = v);\n$parcel$export($5cefe1c5058d37da$exports, \"unconformity\", () => $5cefe1c5058d37da$export$7b4a6d978979c0fa, (v) => $5cefe1c5058d37da$export$7b4a6d978979c0fa = v);\n$parcel$export($5cefe1c5058d37da$exports, \"giga\", () => $5cefe1c5058d37da$export$197e40aa3a484017, (v) => $5cefe1c5058d37da$export$197e40aa3a484017 = v);\n$parcel$export($5cefe1c5058d37da$exports, \"mega\", () => $5cefe1c5058d37da$export$580f1e8cf64f2815, (v) => $5cefe1c5058d37da$export$580f1e8cf64f2815 = v);\n$parcel$export($5cefe1c5058d37da$exports, \"large\", () => $5cefe1c5058d37da$export$f09585a853dddd32, (v) => $5cefe1c5058d37da$export$f09585a853dddd32 = v);\n$parcel$export($5cefe1c5058d37da$exports, \"small\", () => $5cefe1c5058d37da$export$3c17b0e969a90510, (v) => $5cefe1c5058d37da$export$3c17b0e969a90510 = v);\n$parcel$export($5cefe1c5058d37da$exports, \"unconformity-text\", () => $5cefe1c5058d37da$export$925235908943319a, (v) => $5cefe1c5058d37da$export$925235908943319a = v);\n$parcel$export($5cefe1c5058d37da$exports, \"column-title-row\", () => $5cefe1c5058d37da$export$54e339397196c97b, (v) => $5cefe1c5058d37da$export$54e339397196c97b = v);\nvar $5cefe1c5058d37da$export$e908cef0cccb98df;\nvar $5cefe1c5058d37da$export$82c2e1a892d790ab;\nvar $5cefe1c5058d37da$export$add6075ee40659c8;\nvar $5cefe1c5058d37da$export$37c0a390e37eb2da;\nvar $5cefe1c5058d37da$export$9c88f9a435c40ccb;\nvar $5cefe1c5058d37da$export$d726faed2da21993;\nvar $5cefe1c5058d37da$export$7b4a6d978979c0fa;\nvar $5cefe1c5058d37da$export$197e40aa3a484017;\nvar $5cefe1c5058d37da$export$580f1e8cf64f2815;\nvar $5cefe1c5058d37da$export$f09585a853dddd32;\nvar $5cefe1c5058d37da$export$3c17b0e969a90510;\nvar $5cefe1c5058d37da$export$925235908943319a;\nvar $5cefe1c5058d37da$export$54e339397196c97b;\n$5cefe1c5058d37da$export$e908cef0cccb98df = \"column-container_afc440\";\n$5cefe1c5058d37da$export$82c2e1a892d790ab = \"timescale-column_afc440\";\n$5cefe1c5058d37da$export$add6075ee40659c8 = \"section-main_afc440\";\n$5cefe1c5058d37da$export$37c0a390e37eb2da = \"section-units-container_afc440\";\n$5cefe1c5058d37da$export$9c88f9a435c40ccb = \"main-column_afc440\";\n$5cefe1c5058d37da$export$d726faed2da21993 = \"unconformity-labels_afc440\";\n$5cefe1c5058d37da$export$7b4a6d978979c0fa = \"unconformity_afc440\";\n$5cefe1c5058d37da$export$197e40aa3a484017 = \"giga_afc440\";\n$5cefe1c5058d37da$export$580f1e8cf64f2815 = \"mega_afc440\";\n$5cefe1c5058d37da$export$f09585a853dddd32 = \"large_afc440\";\n$5cefe1c5058d37da$export$3c17b0e969a90510 = \"small_afc440\";\n$5cefe1c5058d37da$export$925235908943319a = \"unconformity-text_afc440\";\n$5cefe1c5058d37da$export$54e339397196c97b = \"column-title-row_afc440\";\n\n\nexport {$5cefe1c5058d37da$exports as default};\n//# sourceMappingURL=column-views.99fb74c0.js.map\n",null],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$5cefe1c5058d37da$export$e908cef0cccb98df","$5cefe1c5058d37da$export$82c2e1a892d790ab","$5cefe1c5058d37da$export$add6075ee40659c8","$5cefe1c5058d37da$export$37c0a390e37eb2da","$5cefe1c5058d37da$export$9c88f9a435c40ccb","$5cefe1c5058d37da$export$d726faed2da21993","$5cefe1c5058d37da$export$7b4a6d978979c0fa","$5cefe1c5058d37da$export$197e40aa3a484017","$5cefe1c5058d37da$export$580f1e8cf64f2815","$5cefe1c5058d37da$export$f09585a853dddd32","$5cefe1c5058d37da$export$3c17b0e969a90510","$5cefe1c5058d37da$export$925235908943319a","$5cefe1c5058d37da$export$54e339397196c97b","$5cefe1c5058d37da$exports","default"],"version":3,"file":"column-views.99fb74c0.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.38357d4a.js";import"./column-views.9de31cdb.js";import"./column-views.95411f1b.js";import"./column-views.78d3f3c5.js";function e(e,a){return Object.keys(a).forEach(function(r){"default"===r||"__esModule"===r||Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:function(){return a[r]}})}),e}var a=globalThis,r={},t={},o=a.parcelRequirea149;null==o&&((o=function(e){if(e in r)return r[e].exports;if(e in t){var a=t[e];delete t[e];var o={id:e,exports:{}};return r[e]=o,a.call(o.exports,o,o.exports),o.exports}var s=Error("Cannot find module '"+e+"'");throw s.code="MODULE_NOT_FOUND",s}).register=function(e,a){t[e]=a},a.parcelRequirea149=o),o.register;var s={},c=o("Piirt"),$=o("lgTAP"),b=o("6W0kE"),f=o("wtIgl");e(s,c),e(s,$),e(s,b),e(s,f);export{$482a09479937d1e2$export$45bd78cd093090fa as fetchAllColumns,$482a09479937d1e2$export$e3270a4e30e40ff9 as useColumnFeatures,$482a09479937d1e2$export$1aa679bd5e605f82 as fetchLithologies,$482a09479937d1e2$export$5d2ec2e733dfe6c7 as fetchIntervals,$482a09479937d1e2$export$780b4b253712916c as fetchEnvironments,$482a09479937d1e2$export$cd7bfa0860f58b96 as fetchRefs,$482a09479937d1e2$export$8ea8f45a7ffe4183 as fetchStratNames,$482a09479937d1e2$export$b97b9bdd6a521298 as fetchUnits,$482a09479937d1e2$export$d3d8b0fabcc76c5d as fetchColumnUnits,$8750144f23b92eb9$export$fb98d5bae3a6800 as useMacrostratStore,$8750144f23b92eb9$export$89dd4e5ae4a82373 as useMacrostratDefs,$8750144f23b92eb9$export$81eaae0b474404fd as useMacrostratColumns,$8750144f23b92eb9$export$b9c9fc603d74a555 as useMacrostratData,$8750144f23b92eb9$export$690613f93cdc5576 as MacrostratDataProvider,$8750144f23b92eb9$export$3098013bc6cc316d as MacrostratAPIProvider,$8750144f23b92eb9$export$9e42f9b6e0d67c7d as MacrostratColumnProvider,$8750144f23b92eb9$export$8492a5cae82b6a70 as LithologiesProvider,$8750144f23b92eb9$export$4d18a90c945d129f as useLithologies,$8750144f23b92eb9$export$c6b216bf4c71b61f as useEnvironments,$d8324406f284950a$export$91cb5ac808759b34 as useColumnNav,$d8324406f284950a$export$36fed9e0f93a8fde as ColumnNavProvider,$91525b65c57a1e5d$export$7fec7bd80ff9c10e as MacrostratColumnDataProvider,$91525b65c57a1e5d$export$f8509b7cce386c7d as useMacrostratColumnData,$91525b65c57a1e5d$export$6fb40844db555b2 as useMacrostratUnits,$91525b65c57a1e5d$export$a7fc62995ec4f76 as useCompositeScale};
|
|
2
|
-
//# sourceMappingURL=column-views.9b7a9ae1.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,C,S,E,C,C,C,E,O,O,I,C,G,O,C,S,C,E,Y,G,A,e,G,O,S,C,c,C,I,C,E,I,O,c,C,E,E,C,W,C,E,I,W,O,C,C,E,A,C,E,G,C,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,E,E,S,E,E,S,E,E,S,E,E,G,E,E,G,E,E,G,E,E,U,6C,e,C,6C,iB,C,6C,gB,C,6C,c,C,6C,iB,C,6C,S,C,6C,e,C,6C,U,C,6C,gB,C,4C,kB,C,6C,iB,C,6C,oB,C,6C,iB,C,6C,sB,C,6C,qB,C,6C,wB,C,6C,mB,C,6C,c,C,6C,e,C,6C,Y,C,6C,iB,C,6C,4B,C,6C,uB,C,4C,kB,C,4C,iB","sources":["<anon>","packages/column-views/src/data-provider/index.ts"],"sourcesContent":["import \"./column-views.38357d4a.js\";\nimport \"./column-views.9de31cdb.js\";\nimport \"./column-views.95411f1b.js\";\nimport \"./column-views.78d3f3c5.js\";\n\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule' || Object.prototype.hasOwnProperty.call(dest, key)) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n }\n });\n });\n\n return dest;\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $6f2fe440dde82d53$exports = {};\n\nvar $Piirt = parcelRequire(\"Piirt\");\n\nvar $lgTAP = parcelRequire(\"lgTAP\");\n\nvar $6W0kE = parcelRequire(\"6W0kE\");\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n$parcel$exportWildcard($6f2fe440dde82d53$exports, $Piirt);\n$parcel$exportWildcard($6f2fe440dde82d53$exports, $lgTAP);\n$parcel$exportWildcard($6f2fe440dde82d53$exports, $6W0kE);\n$parcel$exportWildcard($6f2fe440dde82d53$exports, $wtIgl);\n\n\nexport {$482a09479937d1e2$export$45bd78cd093090fa as fetchAllColumns, $482a09479937d1e2$export$e3270a4e30e40ff9 as useColumnFeatures, $482a09479937d1e2$export$1aa679bd5e605f82 as fetchLithologies, $482a09479937d1e2$export$5d2ec2e733dfe6c7 as fetchIntervals, $482a09479937d1e2$export$780b4b253712916c as fetchEnvironments, $482a09479937d1e2$export$cd7bfa0860f58b96 as fetchRefs, $482a09479937d1e2$export$8ea8f45a7ffe4183 as fetchStratNames, $482a09479937d1e2$export$b97b9bdd6a521298 as fetchUnits, $482a09479937d1e2$export$d3d8b0fabcc76c5d as fetchColumnUnits, $8750144f23b92eb9$export$fb98d5bae3a6800 as useMacrostratStore, $8750144f23b92eb9$export$89dd4e5ae4a82373 as useMacrostratDefs, $8750144f23b92eb9$export$81eaae0b474404fd as useMacrostratColumns, $8750144f23b92eb9$export$b9c9fc603d74a555 as useMacrostratData, $8750144f23b92eb9$export$690613f93cdc5576 as MacrostratDataProvider, $8750144f23b92eb9$export$3098013bc6cc316d as MacrostratAPIProvider, $8750144f23b92eb9$export$9e42f9b6e0d67c7d as MacrostratColumnProvider, $8750144f23b92eb9$export$8492a5cae82b6a70 as LithologiesProvider, $8750144f23b92eb9$export$4d18a90c945d129f as useLithologies, $8750144f23b92eb9$export$c6b216bf4c71b61f as useEnvironments, $d8324406f284950a$export$91cb5ac808759b34 as useColumnNav, $d8324406f284950a$export$36fed9e0f93a8fde as ColumnNavProvider, $91525b65c57a1e5d$export$7fec7bd80ff9c10e as MacrostratColumnDataProvider, $91525b65c57a1e5d$export$f8509b7cce386c7d as useMacrostratColumnData, $91525b65c57a1e5d$export$6fb40844db555b2 as useMacrostratUnits, $91525b65c57a1e5d$export$a7fc62995ec4f76 as useCompositeScale};\n//# sourceMappingURL=column-views.9b7a9ae1.js.map\n","export * from \"./fetch\";\nexport * from \"./base\";\nexport * from \"./column-nav\";\nexport * from \"./store\";\n"],"names":["$parcel$exportWildcard","dest","source","Object","keys","forEach","key","prototype","hasOwnProperty","call","defineProperty","enumerable","get","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","err","Error","code","register","$6f2fe440dde82d53$exports","$Piirt","$lgTAP","$6W0kE","$wtIgl","$482a09479937d1e2$export$45bd78cd093090fa","fetchAllColumns","$482a09479937d1e2$export$e3270a4e30e40ff9","useColumnFeatures","$482a09479937d1e2$export$1aa679bd5e605f82","fetchLithologies","$482a09479937d1e2$export$5d2ec2e733dfe6c7","fetchIntervals","$482a09479937d1e2$export$780b4b253712916c","fetchEnvironments","$482a09479937d1e2$export$cd7bfa0860f58b96","fetchRefs","$482a09479937d1e2$export$8ea8f45a7ffe4183","fetchStratNames","$482a09479937d1e2$export$b97b9bdd6a521298","fetchUnits","$482a09479937d1e2$export$d3d8b0fabcc76c5d","fetchColumnUnits","$8750144f23b92eb9$export$fb98d5bae3a6800","useMacrostratStore","$8750144f23b92eb9$export$89dd4e5ae4a82373","useMacrostratDefs","$8750144f23b92eb9$export$81eaae0b474404fd","useMacrostratColumns","$8750144f23b92eb9$export$b9c9fc603d74a555","useMacrostratData","$8750144f23b92eb9$export$690613f93cdc5576","MacrostratDataProvider","$8750144f23b92eb9$export$3098013bc6cc316d","MacrostratAPIProvider","$8750144f23b92eb9$export$9e42f9b6e0d67c7d","MacrostratColumnProvider","$8750144f23b92eb9$export$8492a5cae82b6a70","LithologiesProvider","$8750144f23b92eb9$export$4d18a90c945d129f","useLithologies","$8750144f23b92eb9$export$c6b216bf4c71b61f","useEnvironments","$d8324406f284950a$export$91cb5ac808759b34","useColumnNav","$d8324406f284950a$export$36fed9e0f93a8fde","ColumnNavProvider","$91525b65c57a1e5d$export$7fec7bd80ff9c10e","MacrostratColumnDataProvider","$91525b65c57a1e5d$export$f8509b7cce386c7d","useMacrostratColumnData","$91525b65c57a1e5d$export$6fb40844db555b2","useMacrostratUnits","$91525b65c57a1e5d$export$a7fc62995ec4f76","useCompositeScale"],"version":3,"file":"column-views.9b7a9ae1.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.38357d4a.js";import"./column-views.78d3f3c5.js";import e from"cross-fetch";import{useContext as t,useEffect as r,useMemo as a,useState as s,createContext as n}from"react";import o from"@macrostrat/hyper";import{create as l,useStore as i}from"zustand";import{APIProvider as u}from"@macrostrat/ui-components";import{ColumnProvider as c}from"@macrostrat/column-components";function f(e,t,r,a){Object.defineProperty(e,t,{get:r,set:a,enumerable:!0,configurable:!0})}var m=globalThis,p={},d={},v=m.parcelRequirea149;null==v&&((v=function(e){if(e in p)return p[e].exports;if(e in d){var t=d[e];delete d[e];var r={id:e,exports:{}};return p[e]=r,t.call(r.exports,r,r.exports),r.exports}var a=Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}).register=function(e,t){d[e]=t},m.parcelRequirea149=v),v.register;var h={};f(h,"useMacrostratStore",()=>M),f(h,"useMacrostratDefs",()=>P),f(h,"useMacrostratColumns",()=>x),f(h,"useMacrostratData",()=>C),f(h,"MacrostratDataProvider",()=>L),f(h,"MacrostratAPIProvider",()=>_),f(h,"MacrostratColumnProvider",()=>y),f(h,"LithologiesProvider",()=>D),f(h,"useLithologies",()=>E),f(h,"useEnvironments",()=>S);var g=v("Piirt"),b=v("wtIgl");function $(t="https://macrostrat.org/api/v2"){return l((r,a)=>{var s,n,o,l,i,u,c,f,m,p,d,v;return{baseURL:t,inFlightRequests:new Set,async fetch(r,s){let n=t+r,{inFlightRequests:o}=a();if(o.has(n))return null;o.add(n);let l=await e(n,s);return o.delete(n),l},...(s=r,n=a,{lithologies:null,async getLithologies(e){let{lithologies:t,fetch:r}=n(),a=t;if(null==a){let e=await (0,g.fetchLithologies)(r);if(null==e)return;s({lithologies:a=new Map(e.map(e=>[e.lith_id,e]))})}return null==e?a.values():e.map(e=>a.get(e))}}),...(o=r,l=a,{intervals:null,async getIntervals(e,t){var r,a;let{intervals:s,fetch:n}=l(),i=s;if(null==s||(r=s,a=t,!(null!=r&&(null==a||Array.from(r.values()).some(e=>e.timescale_id==a))))){let e=await (0,g.fetchIntervals)(t,n);if(null==e)return[];let r=s??new Map;for(let t of e)r.set(t.int_id,t);o({intervals:i=r})}return null==e&&null==t?Array.from(i.values()):null!=t?Array.from(i.values()).filter(e=>e.timescale_id==t):e.map(e=>s.get(e))}}),...(i=r,u=a,{environments:null,async getEnvironments(e){let{environments:t,fetch:r}=u(),a=t;if(null==a){let e=await (0,g.fetchEnvironments)(r);if(null==e)return[];i({environments:a=new Map(e.map(e=>[e.environ_id,e]))})}return null==e?a.values():e.map(e=>a.get(e))}}),...(c=r,f=a,{columnFootprints:new Map,async getColumns(e,t){let{columnFootprints:r,baseURL:a,fetch:s}=f(),n=e??-1,o=t;null==e&&(o=!1);let l=r.get(n);if(null==l||l.inProcess!=o){let a=await (0,g.fetchAllColumns)({projectID:e,statusCode:null,fetch:s});if(null==a)return;if(o){let t=await (0,g.fetchAllColumns)({projectID:e,statusCode:"in process",fetch:s});if(null==t)return;a=a.concat(t)}l={project_id:e,inProcess:t,columns:a};let i=new Map(r);i.set(n,l),c({columnFootprints:i})}return l.columns}}),...(m=r,p=a,{refs:new Map,async getRefs(e){let{refs:t,fetch:r}=p(),a=e.filter(e=>!t.has(e));if(0==a.length)return e.map(e=>t.get(e));let s=await (0,g.fetchRefs)(a,r);if(null==s)return[];for(let e of s)t.set(e.ref_id,e);return m({refs:t}),e.map(e=>t.get(e))}}),...(d=r,v=a,{stratNames:null,async getStratNames(e){let{stratNames:t,fetch:r}=v(),a=t??new Map,s=[],n=[];for(let t of e)a.has(t)?s.push(a.get(t)):n.push(t);if(n.length>0){let e=await (0,g.fetchStratNames)(n,r);if(null==e)return s;for(let t of e)a.set(t.strat_name_id,t);d({stratNames:a})}return e.map(e=>a.get(e))}})}})}function M(e){let r=t(R);if(null==r)throw Error("Missing MacrostratDataProvider");return"api"===e?r:i(r,e)}let w={lithologies:e=>e.getLithologies,intervals:e=>e.getIntervals,columns:e=>e.getColumns,environments:e=>e.getEnvironments,refs:e=>e.getRefs,strat_names:e=>e.getStratNames};function P(e){if("columns"==e)throw Error("Columns are not provided as a map");let t=M(w[e]);return r(()=>{t()},[]),M(t=>t[e])}function x(e,t){let s=M(e=>e.getColumns),n=M(e=>e.columnFootprints),o=n?.get(e??-1);return r(()=>{(null==o||t&&!o.inProcess)&&s(e,t)},[o,t,s]),a(()=>{if(null==o)return null;let e=o.columns;return!t&&o.inProcess&&(e.features=e.features?.filter(e=>"in process"!=e.properties.status)),e},[o,t])}function C(e,...t){let a=M(w[e]),[n,o]=s(null);return r(()=>{try{a(...t).then(o)}catch(e){console.error(e)}},[a,...t]),n}let R=n($());function L(e){let{baseURL:t="https://dev.macrostrat.org/api/v2",children:r}=e,[a]=s(()=>$(t));return o(_,{baseURL:t},o(R.Provider,{value:a},r))}function _({children:e,useDev:t=!1,baseURL:r}){return r??(r=t?"https://dev.macrostrat.org/api/v2":"https://macrostrat.org/api/v2"),o(u,{baseURL:r,unwrapResponse:e=>e.success.data},e)}function y(e){let{axisType:t}=(0,b.useMacrostratColumnData)(),{units:r,domain:a,pixelScale:s,children:n}=e;return o(c,{axisType:t,divisions:r,range:a,pixelsPerMeter:s},n)}function D({children:e}){return r(()=>{console.warn("LithologiesProvider is deprecated. Replace with MacrostratDataProvider")},[]),e}function E(){let e=M(e=>e.getLithologies),t=M(e=>e.lithologies);return r(()=>{null==t&&e()},[t,e]),t}function S(){let e=M(e=>e.getEnvironments),t=M(e=>e.environments);return r(()=>{null==t&&e()},[t,e]),t}export{M as useMacrostratStore,P as useMacrostratDefs,x as useMacrostratColumns,C as useMacrostratData,L as MacrostratDataProvider,_ as MacrostratAPIProvider,y as MacrostratColumnProvider,D as LithologiesProvider,E as useLithologies,S as useEnvironments};
|
|
2
|
-
//# sourceMappingURL=column-views.9de31cdb.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,Q,M,a,A,Q,c,C,C,a,C,C,W,C,C,Y,C,C,iB,C,K,O,A,Q,M,mB,A,Q,U,C,C,Y,C,K,S,A,Q,e,C,K,2B,A,Q,kB,C,K,+B,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,qB,I,G,E,E,oB,I,G,E,E,uB,I,G,E,E,oB,I,G,E,E,yB,I,G,E,E,wB,I,G,E,E,2B,I,G,E,E,sB,I,G,E,E,iB,I,G,E,E,kB,I,G,I,E,E,S,E,E,SCgEA,SAAS,EACP,EAAkB,+BAA+B,EAEjD,OAAO,AAAA,EAAwB,CAAC,EAAK,SAqGP,EAAK,EAsCP,EAAK,EAnBF,EAAK,EAxEV,EAAK,EApBR,EAAK,EA8IC,EAAK,QAzKzB,CACL,QAAA,EACA,iBAAkB,IAAI,IACtB,MAAM,MAAM,CAAW,CAAE,CAAqB,EAC5C,IAAM,EAAO,EAAU,EAEjB,CAAA,iBAAE,CAAgB,CAAE,CAAG,IAC7B,GAAI,EAAiB,GAAG,CAAC,GACvB,OAAO,KAET,EAAiB,GAAG,CAAC,GAErB,IAAM,EAAM,MAAM,AAAA,EAAU,EAAM,GAGlC,OAFA,EAAiB,MAAM,CAAC,GAEjB,CACT,MAoF0B,EAnFA,EAmFK,EAnFA,EAoF5B,CACL,YAAa,KACb,MAAM,eAAe,CAAoB,EACvC,GAAM,CAAA,YAAE,CAAW,CAAA,MAAE,CAAK,CAAE,CAAG,IAC3B,EAAU,EACd,GAAI,AAAW,MAAX,EAAiB,CACnB,IAAM,EAAO,MAAM,AAAA,CAAA,EAAA,EAAA,gBAAe,AAAf,EAAiB,GACpC,GAAI,AAAQ,MAAR,EAAc,OAElB,EAAI,CAAE,YADN,EAAU,IAAI,IAAI,EAAK,GAAG,CAAC,AAAC,GAAM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","sources":["<anon>","packages/column-views/src/data-provider/base.ts"],"sourcesContent":["import \"./column-views.38357d4a.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport $fUENy$crossfetch from \"cross-fetch\";\nimport {useContext as $fUENy$useContext, useEffect as $fUENy$useEffect, useMemo as $fUENy$useMemo, useState as $fUENy$useState, createContext as $fUENy$createContext} from \"react\";\nimport $fUENy$macrostrathyper from \"@macrostrat/hyper\";\nimport {create as $fUENy$create, useStore as $fUENy$useStore} from \"zustand\";\nimport {APIProvider as $fUENy$APIProvider} from \"@macrostrat/ui-components\";\nimport {ColumnProvider as $fUENy$ColumnProvider} from \"@macrostrat/column-components\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $8750144f23b92eb9$exports = {};\n\n$parcel$export($8750144f23b92eb9$exports, \"useMacrostratStore\", () => $8750144f23b92eb9$export$fb98d5bae3a6800);\n$parcel$export($8750144f23b92eb9$exports, \"useMacrostratDefs\", () => $8750144f23b92eb9$export$89dd4e5ae4a82373);\n$parcel$export($8750144f23b92eb9$exports, \"useMacrostratColumns\", () => $8750144f23b92eb9$export$81eaae0b474404fd);\n$parcel$export($8750144f23b92eb9$exports, \"useMacrostratData\", () => $8750144f23b92eb9$export$b9c9fc603d74a555);\n$parcel$export($8750144f23b92eb9$exports, \"MacrostratDataProvider\", () => $8750144f23b92eb9$export$690613f93cdc5576);\n$parcel$export($8750144f23b92eb9$exports, \"MacrostratAPIProvider\", () => $8750144f23b92eb9$export$3098013bc6cc316d);\n$parcel$export($8750144f23b92eb9$exports, \"MacrostratColumnProvider\", () => $8750144f23b92eb9$export$9e42f9b6e0d67c7d);\n$parcel$export($8750144f23b92eb9$exports, \"LithologiesProvider\", () => $8750144f23b92eb9$export$8492a5cae82b6a70);\n$parcel$export($8750144f23b92eb9$exports, \"useLithologies\", () => $8750144f23b92eb9$export$4d18a90c945d129f);\n$parcel$export($8750144f23b92eb9$exports, \"useEnvironments\", () => $8750144f23b92eb9$export$c6b216bf4c71b61f);\n/** Data provider for information that needs to be loaded in bulk for frontend views */ \n\n\n\n\nvar $Piirt = parcelRequire(\"Piirt\");\n\n\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\nfunction $8750144f23b92eb9$var$createMacrostratStore(baseURL = \"https://macrostrat.org/api/v2\") {\n return (0, $fUENy$create)((set, get)=>{\n return {\n baseURL: baseURL,\n inFlightRequests: new Set(),\n async fetch (url, options) {\n const url1 = baseURL + url;\n // Avoid duplicate requests\n const { inFlightRequests: inFlightRequests } = get();\n if (inFlightRequests.has(url1)) return null; // Return null if already in flight\n inFlightRequests.add(url1);\n //set({ inFlightRequests });\n const res = await (0, $fUENy$crossfetch)(url1, options);\n inFlightRequests.delete(url1);\n //set({in})\n return res;\n },\n ...$8750144f23b92eb9$var$createLithologiesSlice(set, get),\n ...$8750144f23b92eb9$var$createIntervalsSlice(set, get),\n ...$8750144f23b92eb9$var$createEnvironmentsSlice(set, get),\n ...$8750144f23b92eb9$var$createColumnsSlice(set, get),\n ...$8750144f23b92eb9$var$createRefsSlice(set, get),\n ...$8750144f23b92eb9$var$createStratNamesSlice(set, get)\n };\n });\n}\nfunction $8750144f23b92eb9$var$createRefsSlice(set, get) {\n return {\n refs: new Map(),\n async getRefs (ids) {\n const { refs: refs, fetch: fetch } = get();\n const missing = ids.filter((id)=>!refs.has(id));\n if (missing.length == 0) return ids.map((id)=>refs.get(id));\n const data = await (0, $Piirt.fetchRefs)(missing, fetch);\n if (data == null) return [];\n for (const d of data)refs.set(d.ref_id, d);\n set({\n refs: refs\n });\n return ids.map((id)=>refs.get(id));\n }\n };\n}\nfunction $8750144f23b92eb9$var$createColumnsSlice(set, get) {\n // Column footprints separated by project\n return {\n columnFootprints: new Map(),\n async getColumns (projectID, inProcess) {\n const { columnFootprints: columnFootprints, baseURL: baseURL, fetch: fetch } = get();\n const key = projectID ?? -1;\n let _inProcess = inProcess;\n if (projectID == null) // If no project is specified, in process columns cannot be included\n _inProcess = false;\n let footprints = columnFootprints.get(key);\n if (footprints == null || footprints.inProcess != _inProcess) {\n // Fetch the columns\n const statusCode = inProcess ? \"in process\" : null;\n let columns = await (0, $Piirt.fetchAllColumns)({\n projectID: projectID,\n statusCode: null,\n fetch: fetch\n });\n if (columns == null) return;\n if (_inProcess) {\n const inProcessColumns = await (0, $Piirt.fetchAllColumns)({\n projectID: projectID,\n statusCode: \"in process\",\n fetch: fetch\n });\n if (inProcessColumns == null) return;\n // Combine active and in-process columns\n columns = columns.concat(inProcessColumns);\n }\n footprints = {\n project_id: projectID,\n inProcess: inProcess,\n columns: columns\n };\n // We could break multi-project result sets into separate caches here...\n // Copy the original map\n const columnFootprints2 = new Map(columnFootprints);\n columnFootprints2.set(key, footprints);\n set({\n columnFootprints: columnFootprints2\n });\n }\n return footprints.columns;\n }\n };\n}\nfunction $8750144f23b92eb9$var$createLithologiesSlice(set, get) {\n return {\n lithologies: null,\n async getLithologies (ids) {\n const { lithologies: lithologies, fetch: fetch } = get();\n let lithMap = lithologies;\n if (lithMap == null) {\n const data = await (0, $Piirt.fetchLithologies)(fetch);\n if (data == null) return;\n lithMap = new Map(data.map((d)=>[\n d.lith_id,\n d\n ]));\n set({\n lithologies: lithMap\n });\n }\n // Now get the lithologies\n if (ids == null) return lithMap.values();\n return ids.map((id)=>lithMap.get(id));\n }\n };\n}\nfunction $8750144f23b92eb9$var$createEnvironmentsSlice(set, get) {\n return {\n environments: null,\n async getEnvironments (ids) {\n const { environments: environments, fetch: fetch } = get();\n let envMap = environments;\n if (envMap == null) {\n const data = await (0, $Piirt.fetchEnvironments)(fetch);\n if (data == null) return [];\n envMap = new Map(data.map((d)=>[\n d.environ_id,\n d\n ]));\n set({\n environments: envMap\n });\n }\n // Now get the environments\n if (ids == null) return envMap.values();\n return ids.map((id)=>envMap.get(id));\n }\n };\n}\nfunction $8750144f23b92eb9$var$createIntervalsSlice(set, get) {\n return {\n intervals: null,\n async getIntervals (ids, timescaleID) {\n const { intervals: intervals, fetch: fetch } = get();\n let _intervals = intervals;\n if (intervals == null || !$8750144f23b92eb9$var$includesTimescale(intervals, timescaleID)) {\n // Fetch the intervals\n const data = await (0, $Piirt.fetchIntervals)(timescaleID, fetch);\n if (data == null) return [];\n const intervalMap = intervals ?? new Map();\n for (const d of data)intervalMap.set(d.int_id, d);\n _intervals = intervalMap;\n set({\n intervals: _intervals\n });\n }\n if (ids == null && timescaleID == null) return Array.from(_intervals.values());\n if (timescaleID != null) return Array.from(_intervals.values()).filter((d)=>d.timescale_id == timescaleID);\n return ids.map((id)=>intervals.get(id));\n }\n };\n}\nfunction $8750144f23b92eb9$var$createStratNamesSlice(set, get) {\n return {\n stratNames: null,\n async getStratNames (ids) {\n const { stratNames: stratNames, fetch: fetch } = get();\n let nameMap = stratNames ?? new Map();\n let stratNamesAlreadyLoaded = [];\n let stratNamesToLoad = [];\n for (const id of ids)if (nameMap.has(id)) stratNamesAlreadyLoaded.push(nameMap.get(id));\n else stratNamesToLoad.push(id);\n if (stratNamesToLoad.length > 0) {\n const data = await (0, $Piirt.fetchStratNames)(stratNamesToLoad, fetch);\n if (data == null) return stratNamesAlreadyLoaded;\n for (const d of data)nameMap.set(d.strat_name_id, d);\n set({\n stratNames: nameMap\n });\n }\n return ids.map((id)=>nameMap.get(id));\n }\n };\n}\nfunction $8750144f23b92eb9$var$includesTimescale(intervals, timescaleID) {\n if (intervals == null) return false;\n if (timescaleID == null) return true;\n return Array.from(intervals.values()).some((d)=>d.timescale_id == timescaleID);\n}\nfunction $8750144f23b92eb9$export$fb98d5bae3a6800(selector) {\n const ctx = (0, $fUENy$useContext)($8750144f23b92eb9$var$MacrostratDataProviderContext);\n if (ctx == null) throw new Error(\"Missing MacrostratDataProvider\");\n if (selector === \"api\") return ctx;\n return (0, $fUENy$useStore)(ctx, selector);\n}\nconst $8750144f23b92eb9$var$dataTypeMapping = {\n lithologies: (store)=>store.getLithologies,\n intervals: (store)=>store.getIntervals,\n columns: (store)=>store.getColumns,\n environments: (store)=>store.getEnvironments,\n refs: (store)=>store.getRefs,\n strat_names: (store)=>store.getStratNames\n};\nfunction $8750144f23b92eb9$export$89dd4e5ae4a82373(dataType) {\n if (dataType == \"columns\") throw new Error(\"Columns are not provided as a map\");\n const operator = $8750144f23b92eb9$export$fb98d5bae3a6800($8750144f23b92eb9$var$dataTypeMapping[dataType]);\n (0, $fUENy$useEffect)(()=>{\n operator();\n }, []);\n return $8750144f23b92eb9$export$fb98d5bae3a6800((state)=>state[dataType]);\n}\nfunction $8750144f23b92eb9$export$81eaae0b474404fd(projectID, inProcess) {\n const getColumns = $8750144f23b92eb9$export$fb98d5bae3a6800((s)=>s.getColumns);\n const columnsMap = $8750144f23b92eb9$export$fb98d5bae3a6800((s)=>s.columnFootprints);\n const key = projectID ?? -1;\n const colData = columnsMap?.get(key);\n (0, $fUENy$useEffect)(()=>{\n // Refetch if the columns are not available, or if we have requested inProcess columns where we didn't before\n if (colData == null || inProcess && !colData.inProcess) getColumns(projectID, inProcess);\n // If we've already fetched the columns there's nothing to do...\n }, [\n colData,\n inProcess,\n getColumns\n ]);\n return (0, $fUENy$useMemo)(()=>{\n if (colData == null) return null;\n let columns = colData.columns;\n if (!inProcess && colData.inProcess) // Our available set of columns includes 'in process' columns, but we don't want them\n columns.features = columns.features?.filter((d)=>d.properties.status != \"in process\");\n return columns;\n }, [\n colData,\n inProcess\n ]);\n}\nfunction $8750144f23b92eb9$export$b9c9fc603d74a555(dataType, ...args) {\n const selector = $8750144f23b92eb9$var$dataTypeMapping[dataType];\n const operator = $8750144f23b92eb9$export$fb98d5bae3a6800(selector);\n const [value, setValue] = (0, $fUENy$useState)(null);\n (0, $fUENy$useEffect)(()=>{\n try {\n operator(...args).then(setValue);\n } catch (e) {\n console.error(e);\n }\n }, [\n operator,\n ...args\n ]);\n return value;\n}\n/** By default, we provide a store linked to the production API */ const $8750144f23b92eb9$var$MacrostratDataProviderContext = (0, $fUENy$createContext)($8750144f23b92eb9$var$createMacrostratStore());\nfunction $8750144f23b92eb9$export$690613f93cdc5576(props) {\n const { baseURL: baseURL = \"https://dev.macrostrat.org/api/v2\", children: children } = props;\n const [store] = (0, $fUENy$useState)(()=>$8750144f23b92eb9$var$createMacrostratStore(baseURL));\n return (0, $fUENy$macrostrathyper)($8750144f23b92eb9$export$3098013bc6cc316d, {\n baseURL: baseURL\n }, (0, $fUENy$macrostrathyper)($8750144f23b92eb9$var$MacrostratDataProviderContext.Provider, {\n value: store\n }, children));\n}\nfunction $8750144f23b92eb9$export$3098013bc6cc316d({ children: children, useDev: useDev = false, baseURL: baseURL }) {\n baseURL ?? (baseURL = useDev ? \"https://dev.macrostrat.org/api/v2\" : \"https://macrostrat.org/api/v2\");\n return (0, $fUENy$macrostrathyper)((0, $fUENy$APIProvider), {\n baseURL: baseURL,\n unwrapResponse: (res)=>res.success.data\n }, children);\n}\nfunction $8750144f23b92eb9$export$9e42f9b6e0d67c7d(props) {\n /** A column provider specialized the Macrostrat API. Maps more\n * generic concepts to Macrostrat-specific ones.\n */ const { axisType: axisType } = (0, $wtIgl.useMacrostratColumnData)();\n const { units: units, domain: domain, pixelScale: pixelScale, children: children } = props;\n return (0, $fUENy$macrostrathyper)((0, $fUENy$ColumnProvider), {\n axisType: axisType,\n divisions: units,\n range: domain,\n pixelsPerMeter: pixelScale\n }, children);\n}\nfunction $8750144f23b92eb9$export$8492a5cae82b6a70({ children: children }) {\n (0, $fUENy$useEffect)(()=>{\n console.warn(\"LithologiesProvider is deprecated. Replace with MacrostratDataProvider\");\n }, []);\n return children;\n}\nfunction $8750144f23b92eb9$export$4d18a90c945d129f() {\n const getLithologies = $8750144f23b92eb9$export$fb98d5bae3a6800((s)=>s.getLithologies);\n const lithologies = $8750144f23b92eb9$export$fb98d5bae3a6800((s)=>s.lithologies);\n (0, $fUENy$useEffect)(()=>{\n if (lithologies == null) getLithologies();\n }, [\n lithologies,\n getLithologies\n ]);\n return lithologies;\n}\nfunction $8750144f23b92eb9$export$c6b216bf4c71b61f() {\n const getEnvironments = $8750144f23b92eb9$export$fb98d5bae3a6800((s)=>s.getEnvironments);\n const environments = $8750144f23b92eb9$export$fb98d5bae3a6800((s)=>s.environments);\n (0, $fUENy$useEffect)(()=>{\n if (environments == null) getEnvironments();\n }, [\n environments,\n getEnvironments\n ]);\n return environments;\n}\n\n\nexport {$8750144f23b92eb9$export$fb98d5bae3a6800 as useMacrostratStore, $8750144f23b92eb9$export$89dd4e5ae4a82373 as useMacrostratDefs, $8750144f23b92eb9$export$81eaae0b474404fd as useMacrostratColumns, $8750144f23b92eb9$export$b9c9fc603d74a555 as useMacrostratData, $8750144f23b92eb9$export$690613f93cdc5576 as MacrostratDataProvider, $8750144f23b92eb9$export$3098013bc6cc316d as MacrostratAPIProvider, $8750144f23b92eb9$export$9e42f9b6e0d67c7d as MacrostratColumnProvider, $8750144f23b92eb9$export$8492a5cae82b6a70 as LithologiesProvider, $8750144f23b92eb9$export$4d18a90c945d129f as useLithologies, $8750144f23b92eb9$export$c6b216bf4c71b61f as useEnvironments};\n//# sourceMappingURL=column-views.9de31cdb.js.map\n","/** Data provider for information that needs to be loaded in bulk for frontend views */\nimport baseFetch from \"cross-fetch\";\nimport { createContext, useContext, useEffect, useMemo, useState } from \"react\";\nimport h from \"@macrostrat/hyper\";\nimport { create, useStore } from \"zustand\";\nimport {\n ColumnGeoJSONRecord,\n ColumnGeoJSONRecordWithID,\n Environment,\n MacrostratRef,\n StratName,\n} from \"@macrostrat/api-types\";\nimport {\n fetchAllColumns,\n fetchEnvironments,\n fetchIntervals,\n fetchLithologies,\n fetchRefs,\n fetchStratNames,\n} from \"./fetch\";\nimport { APIProvider } from \"@macrostrat/ui-components\";\nimport { ColumnProvider } from \"@macrostrat/column-components\";\n\nimport { ReactNode } from \"react\";\nimport { useMacrostratColumnData } from \"./store\";\n\nexport interface MacrostratDataProviderProps {\n baseURL: string;\n children: React.ReactNode;\n}\n\ninterface ColumnFootprintsStorage {\n project_id: number;\n // Whether the \"in process\" flag was used\n inProcess: boolean;\n // The column footprints\n columns: ColumnGeoJSONRecordWithID[];\n}\n\ninterface RefsSlice {\n refs: Map<number, MacrostratRef>;\n inFlightRequests: Set<string>; // Track requests to avoid duplicates\n getRefs(ids: number[]): Promise<MacrostratRef[]>;\n}\n\ninterface MacrostratStore extends RefsSlice {\n baseURL: string;\n fetch: any;\n lithologies: Map<number, any> | null;\n getLithologies(ids: number[] | null): Promise<any>;\n intervals: Map<number, any> | null;\n getIntervals(ids: number[] | null, timescaleID: number | null): Promise<any>;\n environments: Map<number, Environment> | null;\n getEnvironments(ids: number[] | null): Promise<Environment[]>;\n columnFootprints: Map<number, ColumnFootprintsStorage>;\n getColumns(\n projectID: number | null,\n inProcess: boolean,\n ): Promise<ColumnGeoJSONRecord[]>;\n // Strat names unify both \"strat names\" and \"concepts\"\n stratNames: Map<number, StratName> | null;\n getStratNames(ids: number[] | null): Promise<StratName[]>;\n}\n\nfunction createMacrostratStore(\n baseURL: string = \"https://macrostrat.org/api/v2\",\n) {\n return create<MacrostratStore>((set, get): MacrostratStore => {\n return {\n baseURL,\n inFlightRequests: new Set(),\n async fetch(url: string, options?: RequestInit) {\n const url1 = baseURL + url;\n // Avoid duplicate requests\n const { inFlightRequests } = get();\n if (inFlightRequests.has(url1)) {\n return null; // Return null if already in flight\n }\n inFlightRequests.add(url1);\n //set({ inFlightRequests });\n const res = await baseFetch(url1, options);\n inFlightRequests.delete(url1);\n //set({in})\n return res;\n },\n ...createLithologiesSlice(set, get),\n ...createIntervalsSlice(set, get),\n ...createEnvironmentsSlice(set, get),\n ...createColumnsSlice(set, get),\n ...createRefsSlice(set, get),\n ...createStratNamesSlice(set, get),\n };\n });\n}\n\nfunction createRefsSlice(set, get) {\n return {\n refs: new Map(),\n async getRefs(ids: number[]): Promise<MacrostratRef[]> {\n const { refs, fetch } = get();\n const missing = ids.filter((id) => !refs.has(id));\n if (missing.length == 0) {\n return ids.map((id) => refs.get(id));\n }\n const data = await fetchRefs(missing, fetch);\n if (data == null) return [];\n for (const d of data) {\n refs.set(d.ref_id, d);\n }\n set({ refs });\n return ids.map((id) => refs.get(id));\n },\n };\n}\n\nfunction createColumnsSlice(set, get) {\n // Column footprints separated by project\n return {\n columnFootprints: new Map(),\n async getColumns(projectID: number | null, inProcess: boolean) {\n const { columnFootprints, baseURL, fetch } = get();\n const key = projectID ?? -1;\n let _inProcess = inProcess;\n if (projectID == null) {\n // If no project is specified, in process columns cannot be included\n _inProcess = false;\n }\n let footprints = columnFootprints.get(key);\n if (footprints == null || footprints.inProcess != _inProcess) {\n // Fetch the columns\n const statusCode = inProcess ? \"in process\" : null;\n let columns = await fetchAllColumns({\n projectID,\n statusCode: null,\n fetch,\n });\n if (columns == null) {\n return;\n }\n if (_inProcess) {\n const inProcessColumns = await fetchAllColumns({\n projectID,\n statusCode: \"in process\",\n fetch,\n });\n if (inProcessColumns == null) {\n return;\n }\n // Combine active and in-process columns\n columns = columns.concat(inProcessColumns);\n }\n\n footprints = {\n project_id: projectID,\n inProcess,\n columns,\n };\n // We could break multi-project result sets into separate caches here...\n // Copy the original map\n const columnFootprints2 = new Map(columnFootprints);\n columnFootprints2.set(key, footprints);\n set({ columnFootprints: columnFootprints2 });\n }\n return footprints.columns;\n },\n };\n}\n\nfunction createLithologiesSlice(set, get) {\n return {\n lithologies: null,\n async getLithologies(ids: number[] | null) {\n const { lithologies, fetch } = get();\n let lithMap = lithologies;\n if (lithMap == null) {\n const data = await fetchLithologies(fetch);\n if (data == null) return;\n lithMap = new Map(data.map((d) => [d.lith_id, d]));\n set({ lithologies: lithMap });\n }\n // Now get the lithologies\n if (ids == null) return lithMap.values();\n return ids.map((id) => lithMap.get(id));\n },\n };\n}\n\nfunction createEnvironmentsSlice(set, get) {\n return {\n environments: null,\n async getEnvironments(ids: number[] | null): Promise<Environment[]> {\n const { environments, fetch } = get();\n let envMap = environments;\n if (envMap == null) {\n const data = await fetchEnvironments(fetch);\n if (data == null) return [];\n envMap = new Map(data.map((d) => [d.environ_id, d]));\n set({ environments: envMap });\n }\n // Now get the environments\n if (ids == null) return envMap.values();\n return ids.map((id) => envMap.get(id));\n },\n };\n}\n\nfunction createIntervalsSlice(set, get) {\n return {\n intervals: null,\n async getIntervals(ids: number[] | null, timescaleID: number | null) {\n const { intervals, fetch } = get();\n let _intervals = intervals;\n if (intervals == null || !includesTimescale(intervals, timescaleID)) {\n // Fetch the intervals\n const data = await fetchIntervals(timescaleID, fetch);\n if (data == null) {\n return [];\n }\n const intervalMap = intervals ?? new Map();\n for (const d of data) {\n intervalMap.set(d.int_id, d);\n }\n _intervals = intervalMap;\n set({ intervals: _intervals });\n }\n if (ids == null && timescaleID == null)\n return Array.from(_intervals.values());\n if (timescaleID != null) {\n return Array.from(_intervals.values() as any[]).filter(\n (d) => d.timescale_id == timescaleID,\n );\n }\n return ids.map((id) => intervals.get(id));\n },\n };\n}\n\nfunction createStratNamesSlice(set, get) {\n return {\n stratNames: null,\n async getStratNames(ids: number[] | null): Promise<StratName[]> {\n const { stratNames, fetch } = get();\n let nameMap = stratNames ?? new Map();\n let stratNamesAlreadyLoaded = [];\n let stratNamesToLoad = [];\n for (const id of ids) {\n if (nameMap.has(id)) {\n stratNamesAlreadyLoaded.push(nameMap.get(id));\n } else {\n stratNamesToLoad.push(id);\n }\n }\n if (stratNamesToLoad.length > 0) {\n const data = await fetchStratNames(stratNamesToLoad, fetch);\n if (data == null) return stratNamesAlreadyLoaded;\n for (const d of data) {\n nameMap.set(d.strat_name_id, d);\n }\n set({ stratNames: nameMap });\n }\n return ids.map((id) => nameMap.get(id));\n },\n };\n}\n\nfunction includesTimescale(intervals: Map<number, any>, timescaleID: number) {\n if (intervals == null) return false;\n if (timescaleID == null) return true;\n return Array.from(intervals.values()).some(\n (d) => d.timescale_id == timescaleID,\n );\n}\n\ntype MacrostratSelector = (store: MacrostratStore) => any;\n\nexport function useMacrostratStore(selector: MacrostratSelector | \"api\") {\n const ctx = useContext(MacrostratDataProviderContext);\n if (ctx == null) {\n throw new Error(\"Missing MacrostratDataProvider\");\n }\n if (selector === \"api\") {\n return ctx;\n }\n\n return useStore(ctx, selector);\n}\n\ntype DataTypeKey =\n | \"lithologies\"\n | \"intervals\"\n | \"columns\"\n | \"environments\"\n | \"refs\"\n | \"strat_names\";\n\nconst dataTypeMapping = {\n lithologies: (store) => store.getLithologies,\n intervals: (store) => store.getIntervals,\n columns: (store) => store.getColumns,\n environments: (store) => store.getEnvironments,\n refs: (store) => store.getRefs,\n strat_names: (store) => store.getStratNames,\n};\n\nexport function useMacrostratDefs(dataType: string): Map<number, any> | null {\n if (dataType == \"columns\") {\n throw new Error(\"Columns are not provided as a map\");\n }\n const operator = useMacrostratStore(dataTypeMapping[dataType]);\n useEffect(() => {\n operator();\n }, []);\n return useMacrostratStore((state) => state[dataType]);\n}\n\nexport function useMacrostratColumns(\n projectID: number | null,\n inProcess: boolean,\n) {\n const getColumns = useMacrostratStore((s) => s.getColumns);\n const columnsMap = useMacrostratStore((s) => s.columnFootprints);\n const key = projectID ?? -1;\n const colData = columnsMap?.get(key);\n useEffect(() => {\n // Refetch if the columns are not available, or if we have requested inProcess columns where we didn't before\n if (colData == null || (inProcess && !colData.inProcess)) {\n getColumns(projectID, inProcess);\n }\n // If we've already fetched the columns there's nothing to do...\n }, [colData, inProcess, getColumns]);\n\n return useMemo(() => {\n if (colData == null) return null;\n let columns = colData.columns;\n if (!inProcess && colData.inProcess) {\n // Our available set of columns includes 'in process' columns, but we don't want them\n columns.features = columns.features?.filter(\n (d) => d.properties.status != \"in process\",\n );\n }\n return columns;\n }, [colData, inProcess]);\n}\n\nexport function useMacrostratData(dataType: DataTypeKey, ...args: any[]) {\n const selector = dataTypeMapping[dataType];\n const operator = useMacrostratStore(selector);\n\n const [value, setValue] = useState(null);\n\n useEffect(() => {\n try {\n operator(...args).then(setValue);\n } catch (e) {\n console.error(e);\n }\n }, [operator, ...args]);\n\n return value;\n}\n\n/** By default, we provide a store linked to the production API */\nconst MacrostratDataProviderContext = createContext(createMacrostratStore());\n\nexport function MacrostratDataProvider(props: MacrostratDataProviderProps) {\n const { baseURL = \"https://dev.macrostrat.org/api/v2\", children } = props;\n\n const [store] = useState(() => createMacrostratStore(baseURL));\n\n return h(\n MacrostratAPIProvider,\n { baseURL },\n h(MacrostratDataProviderContext.Provider, { value: store }, children),\n );\n}\n\n/** Legacy API provider so useAPIResult can work */\n\ntype APIProviderProps = {\n children: ReactNode;\n useDev?: boolean;\n baseURL?: string;\n};\n\nexport function MacrostratAPIProvider({\n children,\n useDev = false,\n baseURL,\n}: APIProviderProps) {\n baseURL ??= useDev\n ? \"https://dev.macrostrat.org/api/v2\"\n : \"https://macrostrat.org/api/v2\";\n\n return h(\n APIProvider,\n {\n baseURL,\n unwrapResponse: (res) => res.success.data,\n },\n children,\n );\n}\n\nexport function MacrostratColumnProvider(props) {\n /** A column provider specialized the Macrostrat API. Maps more\n * generic concepts to Macrostrat-specific ones.\n */\n\n const { axisType } = useMacrostratColumnData();\n const { units, domain, pixelScale, children } = props;\n return h(\n ColumnProvider,\n { axisType, divisions: units, range: domain, pixelsPerMeter: pixelScale },\n children,\n );\n}\n\n/** This is now a legacy provider */\nexport function LithologiesProvider({ children }) {\n useEffect(() => {\n console.warn(\n \"LithologiesProvider is deprecated. Replace with MacrostratDataProvider\",\n );\n }, []);\n return children;\n}\n\nexport function useLithologies() {\n const getLithologies = useMacrostratStore((s) => s.getLithologies);\n const lithologies = useMacrostratStore((s) => s.lithologies);\n useEffect(() => {\n if (lithologies == null) getLithologies();\n }, [lithologies, getLithologies]);\n return lithologies;\n}\n\nexport function useEnvironments() {\n const getEnvironments = useMacrostratStore((s) => s.getEnvironments);\n const environments = useMacrostratStore((s) => s.environments);\n useEffect(() => {\n if (environments == null) getEnvironments();\n }, [environments, getEnvironments]);\n return environments;\n}\n"],"names":["$fUENy$crossfetch","useContext","$fUENy$useContext","useEffect","$fUENy$useEffect","useMemo","$fUENy$useMemo","useState","$fUENy$useState","createContext","$fUENy$createContext","$fUENy$macrostrathyper","create","$fUENy$create","useStore","$fUENy$useStore","APIProvider","$fUENy$APIProvider","ColumnProvider","$fUENy$ColumnProvider","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$8750144f23b92eb9$exports","$8750144f23b92eb9$export$fb98d5bae3a6800","$8750144f23b92eb9$export$89dd4e5ae4a82373","$8750144f23b92eb9$export$81eaae0b474404fd","$8750144f23b92eb9$export$b9c9fc603d74a555","$8750144f23b92eb9$export$690613f93cdc5576","$8750144f23b92eb9$export$3098013bc6cc316d","$8750144f23b92eb9$export$9e42f9b6e0d67c7d","$8750144f23b92eb9$export$8492a5cae82b6a70","$8750144f23b92eb9$export$4d18a90c945d129f","$8750144f23b92eb9$export$c6b216bf4c71b61f","$Piirt","$wtIgl","$8750144f23b92eb9$var$createMacrostratStore","baseURL","inFlightRequests","Set","fetch","url","options","url1","has","add","res","delete","lithologies","getLithologies","ids","lithMap","data","fetchLithologies","Map","map","d","lith_id","values","intervals","getIntervals","timescaleID","_intervals","Array","from","some","timescale_id","fetchIntervals","intervalMap","int_id","filter","environments","getEnvironments","envMap","fetchEnvironments","environ_id","columnFootprints","getColumns","projectID","inProcess","key","_inProcess","footprints","columns","fetchAllColumns","statusCode","inProcessColumns","concat","project_id","columnFootprints2","refs","getRefs","missing","length","fetchRefs","ref_id","stratNames","getStratNames","nameMap","stratNamesAlreadyLoaded","stratNamesToLoad","push","fetchStratNames","strat_name_id","selector","ctx","$8750144f23b92eb9$var$MacrostratDataProviderContext","$8750144f23b92eb9$var$dataTypeMapping","store","strat_names","dataType","operator","state","columnsMap","colData","features","properties","status","args","value","setValue","then","console","error","props","children","Provider","useDev","unwrapResponse","success","axisType","useMacrostratColumnData","units","domain","pixelScale","divisions","range","pixelsPerMeter","warn","useMacrostratStore","useMacrostratDefs","useMacrostratColumns","useMacrostratData","MacrostratDataProvider","MacrostratAPIProvider","MacrostratColumnProvider","LithologiesProvider","useLithologies","useEnvironments"],"version":3,"file":"column-views.9de31cdb.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
function e(e,t,a,n){Object.defineProperty(e,t,{get:a,set:n,enumerable:!0,configurable:!0})}var t,a,n={};e(n,"too-many",()=>t,e=>t=e),e(n,"truncated-list",()=>a,e=>a=e),t="VC2fja_too-many",a="VC2fja_truncated-list";export{n as default};
|
|
2
|
-
//# sourceMappingURL=column-views.a4e6d4ad.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,ICAA,EACA,E,E,C,E,E,E,W,I,E,A,G,E,G,E,E,iB,I,E,A,G,E,GADA,EAA6B,kBAC7B,EAAmC,+B,K,O","sources":["<anon>","packages/column-views/src/facets/fossils/index.module.sass"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $e4bc3df6e06d50e7$exports = {};\n\n$parcel$export($e4bc3df6e06d50e7$exports, \"too-many\", () => $e4bc3df6e06d50e7$export$76144d85d033d82a, (v) => $e4bc3df6e06d50e7$export$76144d85d033d82a = v);\n$parcel$export($e4bc3df6e06d50e7$exports, \"truncated-list\", () => $e4bc3df6e06d50e7$export$12f42f335e4f5e49, (v) => $e4bc3df6e06d50e7$export$12f42f335e4f5e49 = v);\nvar $e4bc3df6e06d50e7$export$76144d85d033d82a;\nvar $e4bc3df6e06d50e7$export$12f42f335e4f5e49;\n$e4bc3df6e06d50e7$export$76144d85d033d82a = `VC2fja_too-many`;\n$e4bc3df6e06d50e7$export$12f42f335e4f5e49 = `VC2fja_truncated-list`;\n\n\nexport {$e4bc3df6e06d50e7$exports as default};\n//# sourceMappingURL=column-views.a4e6d4ad.js.map\n",null],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$e4bc3df6e06d50e7$export$76144d85d033d82a","$e4bc3df6e06d50e7$export$12f42f335e4f5e49","$e4bc3df6e06d50e7$exports","default"],"version":3,"file":"column-views.a4e6d4ad.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{group as e}from"d3-array";import{createAPIContext as l,useAPIResult as a}from"@macrostrat/ui-components";let o=l({baseURL:"https://training.paleobiodb.org/data1.2",unwrapResponse:e=>e.records});var t,s=((t={}).Occurrences="occs",t.Collections="colls",t);function n(e,{col_id:l}){return a(`/${e}/list.json`,{ms_column:l,show:"full,mslink"},{context:o})}function c(e){let l=null,a=null;return null!==e.msu&&(l=parseInt(e.msu.replace(/^\w+:/,""))),null!==e.msc&&(a=parseInt(e.msc.replace(/^\w+:/,""))),{...e,unit_id:l,col_id:a,cltn_id:parseInt(e.oid.replace(/^col:/,"")),cltn_name:e.nam,t_age:e.t_age,b_age:e.b_age}}function r({col_id:l}){let o=n("colls",{col_id:l}),t=function({col_id:e}){return a("/fossils",{col_id:e})}({col_id:l});return null==o||null==t?null:e([...o.map(c),...t],e=>e.unit_id)}export{s as FossilDataType,n as usePBDBFossilData,r as useFossilData};
|
|
2
|
-
//# sourceMappingURL=column-views.a501cea0.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,O,S,C,K,U,A,Q,oB,C,C,gB,C,K,2B,CCKA,IAAM,EAAiB,AAAA,EAAiB,CACtC,QAAS,0CACT,eAJwB,AAAC,GAAM,EAAE,OAAO,AAK1C,GAEO,IAAK,EAAA,G,CAAA,E,C,G,W,C,O,E,W,C,QAAA,GAKL,SAAS,EACd,CAAoB,CACpB,CAAA,OAAE,CAAM,CAAE,EAMV,OAAO,AAAA,EAAa,CAAC,CAAC,EAAE,EAAK,UAAU,CAAC,CAJzB,CACb,UAAW,EACX,KAAM,aACR,EACkD,CAChD,QAAS,CACX,EACF,CAiBA,SAAS,EAA2B,CAAC,EACnC,IAAI,EAAU,KACV,EAAS,KASb,OAPI,AAAU,OAAV,EAAE,GAAG,EACP,CAAA,EAAU,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,QAAS,IAD5C,EAGI,AAAU,OAAV,EAAE,GAAG,EACP,CAAA,EAAS,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,QAAS,IAD3C,EAIO,CACL,GAAG,CAAC,CACJ,QAAA,EACA,OAAA,EACA,QAAS,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,QAAS,KACzC,UAAW,EAAE,GAAG,CAChB,MAAO,EAAE,KAAK,CACd,MAAO,EAAE,KAAK,AAChB,CACF,CAEO,SAAS,EAAc,CAAA,OAAE,CAAM,CAAE,EAItC,IAAM,EAAK,EAAA,QAA8C,CAAE,OAAA,CAAO,GAE5D,EAAK,AAhCb,SAAiC,CAAA,OAAE,CAAM,CAAE,EACzC,OAAO,AAAA,EAAa,WAAY,CAAE,OAAA,CAAO,EAC3C,EA8BqC,CAAE,OAAA,CAAO,UAE5C,AAAI,AAAM,MAAN,GAAc,AAAM,MAAN,EAAmB,KAK9B,AAAA,EAFM,IAFD,EAAG,GAAG,CAAC,MAEM,EAAG,CAET,AAAC,GAAM,EAAE,OAAO,CACrC,Q,K,c,C,K,iB,C,K,a","sources":["<anon>","packages/column-views/src/facets/fossils/provider.ts"],"sourcesContent":["import {group as $lb6L3$group} from \"d3-array\";\nimport {createAPIContext as $lb6L3$createAPIContext, useAPIResult as $lb6L3$useAPIResult} from \"@macrostrat/ui-components\";\n\n\n\nconst $8e174c7ae24a4598$var$responseUnwrapper = (d)=>d.records;\nconst $8e174c7ae24a4598$var$pbdbAPIContext = (0, $lb6L3$createAPIContext)({\n baseURL: \"https://training.paleobiodb.org/data1.2\",\n unwrapResponse: $8e174c7ae24a4598$var$responseUnwrapper\n});\nvar $8e174c7ae24a4598$export$a990c76b38782f57 = /*#__PURE__*/ function(FossilDataType) {\n FossilDataType[\"Occurrences\"] = \"occs\";\n FossilDataType[\"Collections\"] = \"colls\";\n return FossilDataType;\n}({});\nfunction $8e174c7ae24a4598$export$c4ed16553d869511(type, { col_id: col_id }) {\n const params = {\n ms_column: col_id,\n show: \"full,mslink\"\n };\n return (0, $lb6L3$useAPIResult)(`/${type}/list.json`, params, {\n context: $8e174c7ae24a4598$var$pbdbAPIContext\n });\n}\nfunction $8e174c7ae24a4598$var$useMacrostratFossilData({ col_id: col_id }) {\n return (0, $lb6L3$useAPIResult)(\"/fossils\", {\n col_id: col_id\n });\n}\nfunction $8e174c7ae24a4598$var$createMacrostratCollection(d) {\n let unit_id = null;\n let col_id = null;\n // Standardize names of Macrostrat units and columns\n if (d.msu !== null) unit_id = parseInt(d.msu.replace(/^\\w+:/, \"\"));\n if (d.msc !== null) col_id = parseInt(d.msc.replace(/^\\w+:/, \"\"));\n return {\n ...d,\n unit_id: unit_id,\n col_id: 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}\nfunction $8e174c7ae24a4598$export$e6af757fa9780077({ col_id: 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 const r1 = $8e174c7ae24a4598$export$c4ed16553d869511(\"colls\", {\n col_id: col_id\n });\n const r2 = $8e174c7ae24a4598$var$useMacrostratFossilData({\n col_id: col_id\n });\n if (r1 == null || r2 == null) return null;\n const r1a = r1.map($8e174c7ae24a4598$var$createMacrostratCollection);\n const data = [\n ...r1a,\n ...r2\n ];\n return (0, $lb6L3$group)(data, (d)=>d.unit_id);\n}\n\n\nexport {$8e174c7ae24a4598$export$a990c76b38782f57 as FossilDataType, $8e174c7ae24a4598$export$c4ed16553d869511 as usePBDBFossilData, $8e174c7ae24a4598$export$e6af757fa9780077 as useFossilData};\n//# sourceMappingURL=column-views.a501cea0.js.map\n","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":["group","$lb6L3$group","createAPIContext","$lb6L3$createAPIContext","useAPIResult","$lb6L3$useAPIResult","$8e174c7ae24a4598$var$pbdbAPIContext","baseURL","unwrapResponse","d","records","FossilDataType","$8e174c7ae24a4598$export$a990c76b38782f57","$8e174c7ae24a4598$export$c4ed16553d869511","type","col_id","ms_column","show","context","$8e174c7ae24a4598$var$createMacrostratCollection","unit_id","msu","parseInt","replace","msc","cltn_id","oid","cltn_name","nam","t_age","b_age","$8e174c7ae24a4598$export$e6af757fa9780077","r1","r2","$8e174c7ae24a4598$var$useMacrostratFossilData","map","usePBDBFossilData","useFossilData"],"version":3,"file":"column-views.a501cea0.js.map","sourceRoot":"../../../../"}
|