@macrostrat/column-views 2.1.3 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -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.0e06c069.js → column-views.0859feb3.js} +52 -23
- package/dist/esm/column-views.0859feb3.js.map +1 -0
- package/dist/esm/{column-views.d099eaf9.js → column-views.0a8a07f4.js} +3 -3
- package/dist/esm/{column-views.d099eaf9.js.map → column-views.0a8a07f4.js.map} +1 -1
- package/dist/esm/{column-views.0732894f.js → column-views.0f7f6ee6.js} +2 -2
- package/dist/esm/{column-views.0732894f.js.map → column-views.0f7f6ee6.js.map} +1 -1
- package/dist/esm/{column-views.57636733.css → column-views.1151416d.css} +5 -5
- package/dist/esm/column-views.1151416d.css.map +1 -0
- package/dist/esm/{column-views.53f4160e.js → column-views.1b644998.js} +3 -3
- package/dist/esm/{column-views.53f4160e.js.map → column-views.1b644998.js.map} +1 -1
- 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.3b637517.js → column-views.285cbb65.js} +40 -20
- package/dist/esm/column-views.285cbb65.js.map +1 -0
- package/dist/esm/column-views.2d602a57.js +37 -0
- package/dist/esm/column-views.2d602a57.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.3a7179c4.js +137 -0
- package/dist/esm/column-views.3a7179c4.js.map +1 -0
- package/dist/esm/{column-views.49adc09e.js → column-views.3e1b8c7d.js} +2 -2
- package/dist/esm/{column-views.49adc09e.js.map → column-views.3e1b8c7d.js.map} +1 -1
- package/dist/esm/{column-views.a23b2c92.js → column-views.3f528c5c.js} +50 -22
- package/dist/esm/column-views.3f528c5c.js.map +1 -0
- package/dist/esm/{column-views.1e055ed5.js → column-views.4fd4ec92.js} +17 -3
- package/dist/esm/column-views.4fd4ec92.js.map +1 -0
- package/dist/esm/{column-views.6ca980ae.js → column-views.53186d53.js} +2 -2
- package/dist/esm/{column-views.6ca980ae.js.map → column-views.53186d53.js.map} +1 -1
- 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.a2cf8f33.js → column-views.5a49cd68.js} +8 -38
- package/dist/esm/column-views.5a49cd68.js.map +1 -0
- package/dist/esm/{column-views.2e0ff311.js → column-views.5d969bc5.js} +6 -58
- package/dist/esm/column-views.5d969bc5.js.map +1 -0
- package/dist/esm/{column-views.43fb819d.js → column-views.63b7e5aa.js} +3 -3
- package/dist/esm/{column-views.43fb819d.js.map → column-views.63b7e5aa.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.6c644353.js +184 -0
- package/dist/esm/column-views.6c644353.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.34a1ac4f.js → column-views.73b8ff16.js} +20 -22
- package/dist/esm/column-views.73b8ff16.js.map +1 -0
- package/dist/esm/{column-views.9771145a.js → column-views.77561197.js} +91 -55
- package/dist/esm/column-views.77561197.js.map +1 -0
- package/dist/esm/{column-views.572b70fd.js → column-views.83395185.js} +3 -3
- package/dist/esm/{column-views.572b70fd.js.map → column-views.83395185.js.map} +1 -1
- package/dist/esm/{column-views.6dc251d3.js → column-views.86a51ce7.js} +2 -2
- package/dist/esm/{column-views.6dc251d3.js.map → column-views.86a51ce7.js.map} +1 -1
- 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.3f246167.js → column-views.8c296309.js} +5 -5
- package/dist/esm/column-views.8c296309.js.map +1 -0
- package/dist/esm/{column-views.7d47a72a.js → column-views.8d24b179.js} +3 -3
- package/dist/esm/{column-views.7d47a72a.js.map → column-views.8d24b179.js.map} +1 -1
- package/dist/esm/{column-views.3d001ab8.js → column-views.986e7566.js} +7 -7
- package/dist/esm/{column-views.3d001ab8.js.map → column-views.986e7566.js.map} +1 -1
- package/dist/esm/{column-views.86619334.js → column-views.9ddbe7df.js} +2 -2
- package/dist/esm/{column-views.86619334.js.map → column-views.9ddbe7df.js.map} +1 -1
- package/dist/esm/{column-views.abe90091.js → column-views.ae7c0a2b.js} +31 -60
- package/dist/esm/column-views.ae7c0a2b.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.b7016f82.css +54 -0
- package/dist/esm/column-views.b7016f82.css.map +1 -0
- package/dist/esm/{column-views.a5c1bbf0.js → column-views.ba0381cc.js} +2 -2
- package/dist/esm/{column-views.a5c1bbf0.js.map → column-views.ba0381cc.js.map} +1 -1
- package/dist/esm/{column-views.ff031876.js → column-views.c518ef14.js} +9 -4
- package/dist/esm/column-views.c518ef14.js.map +1 -0
- 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.cdadc5c2.js → column-views.cc733361.js} +7 -1
- package/dist/esm/column-views.cc733361.js.map +1 -0
- package/dist/esm/{column-views.4d22c21c.js → column-views.d15d8655.js} +22 -4
- package/dist/esm/column-views.d15d8655.js.map +1 -0
- package/dist/esm/{column-views.5e2dc19d.js → column-views.d261b02d.js} +3 -3
- package/dist/esm/{column-views.5e2dc19d.js.map → column-views.d261b02d.js.map} +1 -1
- package/dist/esm/{column-views.323cad41.js → column-views.d406665d.js} +5 -5
- package/dist/esm/{column-views.323cad41.js.map → column-views.d406665d.js.map} +1 -1
- package/dist/esm/{column-views.7715e35e.js → column-views.d69c4a9f.js} +3 -3
- package/dist/esm/{column-views.7715e35e.js.map → column-views.d69c4a9f.js.map} +1 -1
- package/dist/esm/{column-views.07db2ab1.js → column-views.d9c6b527.js} +15 -12
- package/dist/esm/column-views.d9c6b527.js.map +1 -0
- package/dist/esm/{column-views.b12a6374.css → column-views.e33ac5c9.css} +30 -9
- package/dist/esm/column-views.e33ac5c9.css.map +1 -0
- package/dist/esm/column-views.e3bf5384.js +15 -0
- package/dist/esm/{column-views.6d5e3098.js.map → column-views.e3bf5384.js.map} +1 -1
- package/dist/esm/{column-views.a8926321.js → column-views.e4c26185.js} +2 -2
- package/dist/esm/{column-views.a8926321.js.map → column-views.e4c26185.js.map} +1 -1
- package/dist/esm/column-views.e84bd756.js +92 -0
- package/dist/esm/column-views.e84bd756.js.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.ed05e233.js +13 -0
- package/dist/esm/{column-views.3729c372.js.map → column-views.ed05e233.js.map} +1 -1
- package/dist/esm/{column-views.64a84c43.js → column-views.f2fd0e4a.js} +10 -2
- package/dist/esm/column-views.f2fd0e4a.js.map +1 -0
- package/dist/esm/{column-views.103b1cb0.js → column-views.f46a0b36.js} +2 -2
- package/dist/esm/{column-views.103b1cb0.js.map → column-views.f46a0b36.js.map} +1 -1
- 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 +235 -397
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +12 -12
- package/dist/node/{column-views.36094762.js → column-views.01debc76.js} +2 -2
- package/dist/node/{column-views.36094762.js.map → column-views.01debc76.js.map} +1 -1
- package/dist/node/{column-views.31f57130.js → column-views.040499c9.js} +2 -2
- package/dist/node/{column-views.31f57130.js.map → column-views.040499c9.js.map} +1 -1
- package/dist/node/{column-views.50034105.js → column-views.07ff1fdf.js} +2 -2
- package/dist/node/{column-views.50034105.js.map → column-views.07ff1fdf.js.map} +1 -1
- 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.105f6ad2.js +2 -0
- package/dist/node/column-views.105f6ad2.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.4381c411.js → column-views.13e69859.js} +2 -2
- package/dist/node/{column-views.4381c411.js.map → column-views.13e69859.js.map} +1 -1
- package/dist/node/column-views.16f336ee.js +2 -0
- package/dist/node/column-views.16f336ee.js.map +1 -0
- package/dist/node/{column-views.c18d5bf5.js → column-views.1a7f8afd.js} +2 -2
- package/dist/node/{column-views.c18d5bf5.js.map → column-views.1a7f8afd.js.map} +1 -1
- package/dist/node/column-views.29eb25bd.css +2 -0
- package/dist/node/column-views.29eb25bd.css.map +1 -0
- package/dist/node/column-views.2bd97c2e.js +2 -0
- package/dist/node/column-views.2bd97c2e.js.map +1 -0
- package/dist/node/column-views.3b37363f.js +2 -0
- package/dist/node/column-views.3b37363f.js.map +1 -0
- package/dist/node/column-views.45296250.js +2 -0
- package/dist/node/column-views.45296250.js.map +1 -0
- 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.492c2c72.js} +2 -2
- package/dist/node/{column-views.42db0bb8.js.map → column-views.492c2c72.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.573cb29d.js +2 -0
- package/dist/node/column-views.573cb29d.js.map +1 -0
- package/dist/node/column-views.576e3c5a.js +2 -0
- package/dist/node/column-views.576e3c5a.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.6fd5a922.js +2 -0
- package/dist/node/column-views.6fd5a922.js.map +1 -0
- package/dist/node/column-views.7150ba18.js +2 -0
- package/dist/node/column-views.7150ba18.js.map +1 -0
- package/dist/node/column-views.728c8dfc.js +2 -0
- package/dist/node/column-views.728c8dfc.js.map +1 -0
- package/dist/node/column-views.7425d37b.js +2 -0
- package/dist/node/column-views.7425d37b.js.map +1 -0
- package/dist/node/{column-views.2e4e357d.js → column-views.75582658.js} +2 -2
- package/dist/node/{column-views.2e4e357d.js.map → column-views.75582658.js.map} +1 -1
- 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.a2274834.js → column-views.81294fb7.js} +2 -2
- package/dist/node/{column-views.a2274834.js.map → column-views.81294fb7.js.map} +1 -1
- package/dist/node/column-views.827a9894.js +2 -0
- package/dist/node/column-views.827a9894.js.map +1 -0
- package/dist/node/column-views.87b1439e.js +2 -0
- package/dist/node/column-views.87b1439e.js.map +1 -0
- package/dist/node/{column-views.e4f18ff7.js → column-views.9dda582d.js} +2 -2
- package/dist/node/{column-views.e4f18ff7.js.map → column-views.9dda582d.js.map} +1 -1
- package/dist/node/column-views.9e155f20.js +2 -0
- package/dist/node/column-views.9e155f20.js.map +1 -0
- package/dist/node/column-views.a16cd1f2.js +2 -0
- package/dist/node/column-views.a16cd1f2.js.map +1 -0
- package/dist/node/{column-views.adf9e5b3.js → column-views.a34732e7.js} +2 -2
- package/dist/node/{column-views.adf9e5b3.js.map → column-views.a34732e7.js.map} +1 -1
- package/dist/node/{column-views.f17b6142.js → column-views.a396d3ac.js} +2 -2
- package/dist/node/{column-views.f17b6142.js.map → column-views.a396d3ac.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.db5d74bd.js → column-views.ac1b58b7.js} +2 -2
- package/dist/node/{column-views.db5d74bd.js.map → column-views.ac1b58b7.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.b64cd0ea.js +2 -0
- package/dist/node/column-views.b64cd0ea.js.map +1 -0
- package/dist/node/column-views.b6cd4360.js +2 -0
- package/dist/node/column-views.b6cd4360.js.map +1 -0
- package/dist/node/column-views.c0be1157.js +2 -0
- package/dist/node/column-views.c0be1157.js.map +1 -0
- package/dist/node/column-views.c29e9eb8.js +2 -0
- package/dist/node/column-views.c29e9eb8.js.map +1 -0
- package/dist/node/column-views.c8df6435.js +2 -0
- package/dist/node/column-views.c8df6435.js.map +1 -0
- package/dist/node/column-views.cd2a5c85.js +2 -0
- package/dist/node/column-views.cd2a5c85.js.map +1 -0
- package/dist/node/{column-views.3d220e0c.js → column-views.cd77a1d8.js} +2 -2
- package/dist/node/{column-views.3d220e0c.js.map → column-views.cd77a1d8.js.map} +1 -1
- package/dist/node/column-views.cd7b223b.css +2 -0
- package/dist/node/column-views.cd7b223b.css.map +1 -0
- package/dist/node/column-views.cf2a78c1.js +2 -0
- package/dist/node/column-views.cf2a78c1.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.7010a03b.js → column-views.dd972321.js} +2 -2
- package/dist/node/{column-views.7010a03b.js.map → column-views.dd972321.js.map} +1 -1
- package/dist/node/column-views.e065152e.js +2 -0
- package/dist/node/column-views.e065152e.js.map +1 -0
- package/dist/node/{column-views.6c7a40e0.js → column-views.e08f8715.js} +2 -2
- package/dist/node/{column-views.6c7a40e0.js.map → column-views.e08f8715.js.map} +1 -1
- package/dist/node/{column-views.507635e2.js → column-views.e0d9865e.js} +2 -2
- package/dist/node/column-views.e0d9865e.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.edb4ba54.js +2 -0
- package/dist/node/column-views.edb4ba54.js.map +1 -0
- package/dist/node/index.js +1 -1
- package/dist/node/index.js.map +1 -1
- package/package.json +14 -14
- 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 +32 -9
- package/src/column.ts +91 -19
- package/src/correlation-chart/main.ts +10 -2
- 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 +33 -25
- package/src/data-provider/fetch.ts +10 -3
- package/src/data-provider/store.ts +16 -10
- 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 +246 -80
- package/src/facets/fossils/provider.ts +121 -25
- package/src/facets/index.ts +2 -0
- package/src/facets/measurements/index.ts +38 -0
- package/src/facets/measurements/provider.ts +80 -0
- 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 +5 -0
- package/src/units/boxes.ts +2 -69
- package/src/units/composite.ts +3 -49
- package/src/units/selection.ts +21 -7
- package/dist/esm/column-views.07db2ab1.js.map +0 -1
- package/dist/esm/column-views.0e06c069.js.map +0 -1
- package/dist/esm/column-views.1c92b88f.js +0 -16
- package/dist/esm/column-views.1c92b88f.js.map +0 -1
- package/dist/esm/column-views.1e055ed5.js.map +0 -1
- package/dist/esm/column-views.2e0ff311.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.34a1ac4f.js.map +0 -1
- package/dist/esm/column-views.3729c372.js +0 -13
- package/dist/esm/column-views.39657bbf.js.map +0 -1
- package/dist/esm/column-views.3b637517.js.map +0 -1
- package/dist/esm/column-views.3f246167.js.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.57636733.css.map +0 -1
- package/dist/esm/column-views.60dc6bfc.js +0 -108
- package/dist/esm/column-views.60dc6bfc.js.map +0 -1
- package/dist/esm/column-views.64a84c43.js.map +0 -1
- package/dist/esm/column-views.6d5e3098.js +0 -11
- package/dist/esm/column-views.9771145a.js.map +0 -1
- package/dist/esm/column-views.9892f825.js.map +0 -1
- package/dist/esm/column-views.a23b2c92.js.map +0 -1
- package/dist/esm/column-views.a2cf8f33.js.map +0 -1
- package/dist/esm/column-views.abe90091.js.map +0 -1
- package/dist/esm/column-views.b12a6374.css.map +0 -1
- package/dist/esm/column-views.b17f793f.css.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.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.ff031876.js.map +0 -1
- package/dist/node/column-views.0bb1ec93.js +0 -2
- package/dist/node/column-views.0bb1ec93.js.map +0 -1
- package/dist/node/column-views.13c4ea85.js +0 -2
- package/dist/node/column-views.13c4ea85.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.226d0bdb.js +0 -2
- package/dist/node/column-views.226d0bdb.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.2ab1c2f8.js +0 -2
- package/dist/node/column-views.2ab1c2f8.js.map +0 -1
- package/dist/node/column-views.3345cd7a.js +0 -2
- package/dist/node/column-views.3345cd7a.js.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.372bbee2.js +0 -2
- package/dist/node/column-views.372bbee2.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.3f032518.js +0 -2
- package/dist/node/column-views.3f032518.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.507635e2.js.map +0 -1
- package/dist/node/column-views.556e8f69.js +0 -2
- package/dist/node/column-views.556e8f69.js.map +0 -1
- package/dist/node/column-views.5f05b73f.js +0 -2
- package/dist/node/column-views.5f05b73f.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.755f726e.js +0 -2
- package/dist/node/column-views.755f726e.js.map +0 -1
- package/dist/node/column-views.75b0a8f8.js +0 -2
- package/dist/node/column-views.75b0a8f8.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.8cfed88b.js +0 -2
- package/dist/node/column-views.8cfed88b.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.a501cea0.js +0 -2
- package/dist/node/column-views.a501cea0.js.map +0 -1
- package/dist/node/column-views.af275c48.js +0 -2
- package/dist/node/column-views.af275c48.js.map +0 -1
- package/dist/node/column-views.afbf351c.js +0 -2
- package/dist/node/column-views.afbf351c.js.map +0 -1
- package/dist/node/column-views.b180e8c9.js +0 -2
- package/dist/node/column-views.b180e8c9.js.map +0 -1
- package/dist/node/column-views.cd468adb.css +0 -2
- package/dist/node/column-views.cd468adb.css.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.e1a43131.css +0 -2
- package/dist/node/column-views.e1a43131.css.map +0 -1
- package/dist/node/column-views.e9515ec1.js +0 -2
- package/dist/node/column-views.e9515ec1.js.map +0 -1
- package/dist/node/column-views.f15a6ed4.js +0 -2
- package/dist/node/column-views.f15a6ed4.js.map +0 -1
- package/dist/node/column-views.fc05616e.js +0 -2
- package/dist/node/column-views.fc05616e.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.13c4ea85.js";import"./column-views.99fb74c0.js";import"./column-views.af275c48.js";import"./column-views.78d3f3c5.js";import"./column-views.fc05616e.js";import{useMemo as e}from"react";import{Timescale as t,TimescaleOrientation as n}from"@macrostrat/timescale";import{SVG as o}from"@macrostrat/column-components";import i from"@macrostrat/hyper";var a=globalThis,s={},l={},r=a.parcelRequirea149;null==r&&((r=function(e){if(e in s)return s[e].exports;if(e in l){var t=l[e];delete l[e];var n={id:e,exports:{}};return s[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){l[e]=t},a.parcelRequirea149=r),r.register;var c=r("4Abge"),m=r("7YHvf"),u=r("lgTAP"),p=r("wtIgl"),d=r("iYfAq");let f=i.styled(m&&m.__esModule?m.default:m);function h(e){let{unconformityLabels:t=!0,unitComponent:n,unitComponentProps:o,showLabels:i=!0,width:a=300,columnWidth:s=150,showLabelColumn:l=!0,clipUnits:r=!0,maxInternalColumns:m}=e,u=(0,p.useMacrostratUnits)(),d=u[0]?.unit_id;return f(c.LabelTrackerProvider,{units:u,key:d},[f(b,{width:s,unitComponent:n,unitComponentProps:o,showLabels:i,clipUnits:r,maxInternalColumns:m,unconformityLabels:t}),f.if(l)(c.SectionLabelsColumn,{width:a-s})])}function b(e){let{width:t,showLabels:n,unitComponent:i,unitComponentProps:a,clipUnits:s,maxInternalColumns:l,unconformityLabels:r=!0}=e,{sections:c,totalHeight:m}=(0,p.useMacrostratColumnData)(),u=c.map(e=>e.scaleInfo),d=t-2;return f("div.section-units-container",{style:{width:t}},[f(o,{className:"sections",height:m,innerWidth:d,paddingH:1},c.map(e=>{let{units:t,scaleInfo:o,section_id:r}=e;return f(g,{units:t,scaleInfo:o,key:`section-${r}`,unitComponent:i,unitComponentProps:a,showLabels:n,width:d,clipUnits:s,maxInternalColumns:l})})),f.if(r)(x,{width:t,sections:u})])}function g(t){let{units:n,scaleInfo:o,unitComponent:i,showLabels:a=!0,width:s=300,unitComponentProps:l,className:r,clipUnits:m=!0,maxInternalColumns:p}=t,{domain:d,pixelScale:h,pixelHeight:b}=o,g=e(()=>({...l,nColumns:Math.min(p??Math.floor(s/10),l?.nColumns??1/0,Math.max(...n.map(e=>e.column))+1)}),[n,l,p,s]);return f("g.section",{className:r,style:{"--section-height":`${b}px`,"--section-width":`${s}px`},transform:`translate(0 ${o.offset})`},f(u.MacrostratColumnProvider,{units:n,domain:d,pixelScale:h},f(c.CompositeUnitsColumn,{width:s,showLabels:a,unitComponent:i,unitComponentProps:g,clipToFrame:m})))}function C(e){let{sections:t}=(0,p.useMacrostratColumnData)();return f(w,{packages:t.map(e=>e.scaleInfo),...e})}function w(e){let o,{levels:i=3,packages:a,unconformityLabels:s=!1}=e,l=(o="number"==typeof i?[2,Math.max(2+Math.min(i,5)-1,1)]:i)[1]-o[0]+1;return f("div.timescale-column",[f("div.timescales",a.map(e=>{let{domain:i,pixelHeight:a,paddingTop:s,key:r}=e;return f("div.timescale-container",{style:{paddingTop:s,"--timescale-level-count":l},key:r},[f(t,{orientation:n.VERTICAL,length:a,levels:o,absoluteAgeScale:!0,showAgeAxis:!1,ageRange:i})])})),f.if(s)(x,{width:"100%",sections:a,className:"unconformity-labels"})])}function x(e){let{width:t,sections:n,className:o}=e;return f("div.unconformity-labels",{style:{width:t},className:o},n.map((e,o)=>{let i=n[o-1],a=e.offset-e.paddingTop;return f(v,{upperAge:i?.domain[0],lowerAge:e.domain[1],style:{width:t,height:e.paddingTop,top:a}})}))}function v({upperAge:e,lowerAge:t,style:n}){if(null==e||null==t)return null;let o=Math.abs(e-t),i=null;return o>1e3?i="giga":o>100?i="mega":o>10?i="large":o<1&&(i="small"),f("div.unconformity",{style:n,className:i},[f("div.unconformity-text",f(d.Duration,{value:o}))])}export{h as SectionsColumn,x as UnconformityLabels,C as CompositeTimescale,w as CompositeTimescaleCore};
|
|
2
|
-
//# sourceMappingURL=column-views.372bbee2.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,W,C,K,O,A,Q,a,C,C,wB,C,K,uB,A,Q,O,C,K,+B,A,Q,M,mB,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,E,S,E,E,S,E,E,S,E,E,S,E,E,SCmBA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAyBhB,SAAS,EAAe,CAAyB,EACtD,GAAM,CAAA,mBACJ,EAAqB,CAAA,CAAA,CAAA,cACrB,CAAa,CAAA,mBACb,CAAkB,CAAA,WAClB,EAAa,CAAA,CAAA,CAAA,MACb,EAAQ,GAAA,CAAA,YACR,EAAc,GAAA,CAAA,gBACd,EAAkB,CAAA,CAAA,CAAA,UAClB,EAAY,CAAA,CAAA,CAAA,mBACZ,CAAkB,CACnB,CAAG,EAEE,EAAQ,AAAA,CAAA,EAAA,EAAA,kBAAiB,AAAjB,IAGR,EAAM,CAAK,CAAC,EAAE,EAAE,QAEtB,OAAO,EAAE,EAAA,oBAAmB,CAAG,CAAE,MAAA,EAAO,IAAA,CAAI,EAAG,CAC7C,EAAE,EAAoB,CACpB,MAAO,EACP,cAAA,EACA,mBAAA,EACA,WAAA,EACA,UAAA,EACA,mBAAA,EACA,mBAAA,CACF,GACA,EAAE,EAAE,CAAC,GAAiB,EAAA,mBAAkB,CAAG,CACzC,MAAO,EAAQ,CACjB,GACD,CACH,CAEA,SAAS,EAAmB,CAAyB,EACnD,GAAM,CAAA,MACJ,CAAK,CAAA,WACL,CAAU,CAAA,cACV,CAAa,CAAA,mBACb,CAAkB,CAAA,UAClB,CAAS,CAAA,mBACT,CAAkB,CAAA,mBAClB,EAAqB,CAAA,CAAA,CACtB,CAAG,EAEE,CAAA,SAAE,CAAQ,CAAA,YAAE,CAAW,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAA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","sources":["<anon>","packages/column-views/src/section.ts"],"sourcesContent":["import \"./column-views.13c4ea85.js\";\nimport \"./column-views.99fb74c0.js\";\nimport \"./column-views.af275c48.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport \"./column-views.fc05616e.js\";\nimport {useMemo as $dA1GT$useMemo} from \"react\";\nimport {Timescale as $dA1GT$Timescale, TimescaleOrientation as $dA1GT$TimescaleOrientation} from \"@macrostrat/timescale\";\nimport {SVG as $dA1GT$SVG} from \"@macrostrat/column-components\";\nimport $dA1GT$macrostrathyper from \"@macrostrat/hyper\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\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\nvar $4Abge = parcelRequire(\"4Abge\");\n\n\n\n\n\nvar $7YHvf = parcelRequire(\"7YHvf\");\n\nvar $lgTAP = parcelRequire(\"lgTAP\");\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $iYfAq = parcelRequire(\"iYfAq\");\nconst $69e10b1ec4ac73f6$var$h = (0, $dA1GT$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($7YHvf))));\nfunction $69e10b1ec4ac73f6$export$38cb0ab5af8f50d7(props) {\n const { unconformityLabels: unconformityLabels = true, unitComponent: unitComponent, unitComponentProps: unitComponentProps, showLabels: showLabels = true, width: width = 300, columnWidth: columnWidth = 150, showLabelColumn: showLabelColumn = true, clipUnits: clipUnits = true, maxInternalColumns: maxInternalColumns } = props;\n const units = (0, $wtIgl.useMacrostratUnits)();\n // Get a unique key for the column\n const key = units[0]?.unit_id;\n return $69e10b1ec4ac73f6$var$h((0, $4Abge.LabelTrackerProvider), {\n units: units,\n key: key\n }, [\n $69e10b1ec4ac73f6$var$h($69e10b1ec4ac73f6$var$SectionUnitsColumn, {\n width: columnWidth,\n unitComponent: unitComponent,\n unitComponentProps: unitComponentProps,\n showLabels: showLabels,\n clipUnits: clipUnits,\n maxInternalColumns: maxInternalColumns,\n unconformityLabels: unconformityLabels\n }),\n $69e10b1ec4ac73f6$var$h.if(showLabelColumn)((0, $4Abge.SectionLabelsColumn), {\n width: width - columnWidth\n })\n ]);\n}\nfunction $69e10b1ec4ac73f6$var$SectionUnitsColumn(props) {\n const { width: width, showLabels: showLabels, unitComponent: unitComponent, unitComponentProps: unitComponentProps, clipUnits: clipUnits, maxInternalColumns: maxInternalColumns, unconformityLabels: unconformityLabels = true } = props;\n const { sections: sections, totalHeight: totalHeight } = (0, $wtIgl.useMacrostratColumnData)();\n const scaleData = sections.map((section)=>{\n return section.scaleInfo;\n });\n const innerWidth = width - 2;\n return $69e10b1ec4ac73f6$var$h(\"div.section-units-container\", {\n style: {\n width: width\n }\n }, [\n $69e10b1ec4ac73f6$var$h((0, $dA1GT$SVG), {\n className: \"sections\",\n height: totalHeight,\n innerWidth: innerWidth,\n paddingH: 1\n }, sections.map((group)=>{\n const { units: units, scaleInfo: scaleInfo, section_id: section_id } = group;\n const key = `section-${section_id}`;\n return $69e10b1ec4ac73f6$var$h($69e10b1ec4ac73f6$var$SectionUnits, {\n units: units,\n scaleInfo: scaleInfo,\n key: key,\n unitComponent: unitComponent,\n unitComponentProps: unitComponentProps,\n showLabels: showLabels,\n width: innerWidth,\n clipUnits: clipUnits,\n maxInternalColumns: maxInternalColumns\n });\n })),\n $69e10b1ec4ac73f6$var$h.if(unconformityLabels)($69e10b1ec4ac73f6$export$e12e53eeee198b99, {\n width: width,\n sections: scaleData\n })\n ]);\n}\nfunction $69e10b1ec4ac73f6$var$SectionUnits(props) {\n // Section with \"squishy\" timescale\n const { units: units, scaleInfo: scaleInfo, unitComponent: unitComponent, showLabels: showLabels = true, width: width = 300, unitComponentProps: unitComponentProps, className: className, clipUnits: clipUnits = true, maxInternalColumns: maxInternalColumns } = props;\n const { domain: domain, pixelScale: pixelScale, pixelHeight: pixelHeight } = scaleInfo;\n /** Ensure that we can arrange units into the maximum number\n * of columns defined by unitComponentProps, but that we don't\n * use more than necessary.\n */ const _unitComponentProps = (0, $dA1GT$useMemo)(()=>{\n return {\n ...unitComponentProps,\n nColumns: Math.min(maxInternalColumns ?? Math.floor(width / 10), unitComponentProps?.nColumns ?? Infinity, Math.max(...units.map((d)=>d.column)) + 1)\n };\n }, [\n units,\n unitComponentProps,\n maxInternalColumns,\n width\n ]);\n const style = {\n \"--section-height\": `${pixelHeight}px`,\n \"--section-width\": `${width}px`\n };\n return $69e10b1ec4ac73f6$var$h(\"g.section\", {\n className: className,\n style: style,\n transform: `translate(0 ${scaleInfo.offset})`\n }, $69e10b1ec4ac73f6$var$h((0, $lgTAP.MacrostratColumnProvider), {\n units: units,\n domain: domain,\n pixelScale: pixelScale\n }, $69e10b1ec4ac73f6$var$h((0, $4Abge.CompositeUnitsColumn), {\n width: width,\n showLabels: showLabels,\n unitComponent: unitComponent,\n unitComponentProps: _unitComponentProps,\n clipToFrame: clipUnits\n })));\n}\nfunction $69e10b1ec4ac73f6$export$db2df5a73a6fbe10(props) {\n const { sections: sections } = (0, $wtIgl.useMacrostratColumnData)();\n const sectionScales = sections.map((section)=>{\n return section.scaleInfo;\n });\n return $69e10b1ec4ac73f6$var$h($69e10b1ec4ac73f6$export$463f46772c64d403, {\n packages: sectionScales,\n ...props\n });\n}\nfunction $69e10b1ec4ac73f6$export$463f46772c64d403(props) {\n const { levels: levels = 3, packages: packages, unconformityLabels: unconformityLabels = false } = props;\n let _levels;\n if (typeof levels === \"number\") // If levels is a number, use the most common starting level\n _levels = [\n 2,\n Math.max(2 + Math.min(levels, 5) - 1, 1)\n ];\n else _levels = levels;\n const nCols = _levels[1] - _levels[0] + 1;\n return $69e10b1ec4ac73f6$var$h(\"div.timescale-column\", [\n $69e10b1ec4ac73f6$var$h(\"div.timescales\", packages.map((group)=>{\n const { domain: domain, pixelHeight: pixelHeight, paddingTop: paddingTop, key: key } = group;\n return $69e10b1ec4ac73f6$var$h(\"div.timescale-container\", {\n style: {\n paddingTop: paddingTop,\n \"--timescale-level-count\": nCols\n },\n key: key\n }, [\n $69e10b1ec4ac73f6$var$h((0, $dA1GT$Timescale), {\n orientation: (0, $dA1GT$TimescaleOrientation).VERTICAL,\n length: pixelHeight,\n levels: _levels,\n absoluteAgeScale: true,\n showAgeAxis: false,\n ageRange: domain\n })\n ]);\n })),\n $69e10b1ec4ac73f6$var$h.if(unconformityLabels)($69e10b1ec4ac73f6$export$e12e53eeee198b99, {\n width: \"100%\",\n sections: packages,\n className: \"unconformity-labels\"\n })\n ]);\n}\nfunction $69e10b1ec4ac73f6$export$e12e53eeee198b99(props) {\n const { width: width, sections: sections, className: className } = props;\n return $69e10b1ec4ac73f6$var$h(\"div.unconformity-labels\", {\n style: {\n width: width\n },\n className: className\n }, sections.map((scaleInfo, i)=>{\n const lastGroup = sections[i - 1];\n const top = scaleInfo.offset - scaleInfo.paddingTop;\n const upperAge = lastGroup?.domain[0];\n const lowerAge = scaleInfo.domain[1];\n return $69e10b1ec4ac73f6$var$h($69e10b1ec4ac73f6$var$Unconformity, {\n upperAge: upperAge,\n lowerAge: lowerAge,\n style: {\n width: width,\n height: scaleInfo.paddingTop,\n top: top\n }\n });\n }));\n}\nfunction $69e10b1ec4ac73f6$var$Unconformity({ upperAge: upperAge, lowerAge: lowerAge, style: style }) {\n if (upperAge == null || lowerAge == null) return null;\n const ageGap = Math.abs(upperAge - lowerAge);\n let className = null;\n if (ageGap > 1000) className = \"giga\";\n else if (ageGap > 100) className = \"mega\";\n else if (ageGap > 10) className = \"large\";\n else if (ageGap < 1) className = \"small\";\n return $69e10b1ec4ac73f6$var$h(\"div.unconformity\", {\n style: style,\n className: className\n }, [\n $69e10b1ec4ac73f6$var$h(\"div.unconformity-text\", $69e10b1ec4ac73f6$var$h((0, $iYfAq.Duration), {\n value: ageGap\n }))\n ]);\n}\n\n\nexport {$69e10b1ec4ac73f6$export$38cb0ab5af8f50d7 as SectionsColumn, $69e10b1ec4ac73f6$export$e12e53eeee198b99 as UnconformityLabels, $69e10b1ec4ac73f6$export$db2df5a73a6fbe10 as CompositeTimescale, $69e10b1ec4ac73f6$export$463f46772c64d403 as CompositeTimescaleCore};\n//# sourceMappingURL=column-views.372bbee2.js.map\n","import {\n CompositeUnitsColumn,\n LabelTrackerProvider,\n SectionLabelsColumn,\n} from \"./units\";\nimport { ReactNode, FunctionComponent, useMemo } from \"react\";\nimport { Timescale, TimescaleOrientation } from \"@macrostrat/timescale\";\nimport { ColumnAxisType, SVG } from \"@macrostrat/column-components\";\nimport hyper from \"@macrostrat/hyper\";\nimport styles from \"./column.module.sass\";\nimport type { ExtUnit } from \"./prepare-units/helpers\";\nimport { PackageScaleLayoutData } from \"./prepare-units/composite-scale\";\nimport {\n useMacrostratColumnData,\n useMacrostratUnits,\n MacrostratColumnProvider,\n} from \"./data-provider\";\nimport { Duration } from \"./unit-details\";\n\nconst h = hyper.styled(styles);\n\nexport interface SectionSharedProps {\n unitComponent?: FunctionComponent<any>;\n unitComponentProps?: any;\n showLabels?: boolean;\n width?: number;\n columnWidth?: number;\n children?: ReactNode;\n showLabelColumn?: boolean;\n axisType?: ColumnAxisType;\n className?: string;\n clipUnits?: boolean;\n maxInternalColumns?: number;\n // Space between sections\n verticalSpacing?: number;\n // Whether to render unconformity labels\n unconformityLabels?: boolean;\n}\n\nexport interface SectionProps extends SectionSharedProps {\n units: ExtUnit[];\n scaleInfo: PackageScaleLayoutData;\n}\n\nexport function SectionsColumn(props: SectionSharedProps) {\n const {\n unconformityLabels = true,\n unitComponent,\n unitComponentProps,\n showLabels = true,\n width = 300,\n columnWidth = 150,\n showLabelColumn = true,\n clipUnits = true,\n maxInternalColumns,\n } = props;\n\n const units = useMacrostratUnits();\n\n // Get a unique key for the column\n const key = units[0]?.unit_id;\n\n return h(LabelTrackerProvider, { units, key }, [\n h(SectionUnitsColumn, {\n width: columnWidth,\n unitComponent,\n unitComponentProps,\n showLabels,\n clipUnits,\n maxInternalColumns,\n unconformityLabels,\n }),\n h.if(showLabelColumn)(SectionLabelsColumn, {\n width: width - columnWidth,\n }),\n ]);\n}\n\nfunction SectionUnitsColumn(props: SectionSharedProps) {\n const {\n width,\n showLabels,\n unitComponent,\n unitComponentProps,\n clipUnits,\n maxInternalColumns,\n unconformityLabels = true,\n } = props;\n\n const { sections, totalHeight } = useMacrostratColumnData();\n\n const scaleData: PackageScaleLayoutData[] = sections.map((section) => {\n return section.scaleInfo;\n });\n\n const innerWidth = width - 2;\n\n return h(\"div.section-units-container\", { style: { width } }, [\n h(\n SVG,\n {\n className: \"sections\",\n height: totalHeight,\n innerWidth,\n paddingH: 1,\n },\n sections.map((group) => {\n const { units, scaleInfo, section_id } = group;\n\n const key = `section-${section_id}`;\n return h(\n SectionUnits,\n {\n units,\n scaleInfo,\n key,\n unitComponent,\n unitComponentProps,\n showLabels,\n width: innerWidth,\n clipUnits,\n maxInternalColumns,\n }, // This unconformity is with the section _above_\n );\n }),\n ),\n h.if(unconformityLabels)(UnconformityLabels, {\n width,\n sections: scaleData,\n }),\n ]);\n}\n\nfunction SectionUnits(props: SectionProps) {\n // Section with \"squishy\" timescale\n const {\n units,\n scaleInfo,\n unitComponent,\n showLabels = true,\n width = 300,\n unitComponentProps,\n className,\n clipUnits = true,\n maxInternalColumns,\n } = props;\n\n const { domain, pixelScale, pixelHeight } = scaleInfo;\n\n /** Ensure that we can arrange units into the maximum number\n * of columns defined by unitComponentProps, but that we don't\n * use more than necessary.\n */\n const _unitComponentProps = useMemo(() => {\n return {\n ...unitComponentProps,\n nColumns: Math.min(\n maxInternalColumns ?? Math.floor(width / 10),\n unitComponentProps?.nColumns ?? Infinity,\n Math.max(...units.map((d) => d.column)) + 1,\n ),\n //axisType,\n };\n }, [units, unitComponentProps, maxInternalColumns, width]);\n\n const style = {\n \"--section-height\": `${pixelHeight}px`,\n \"--section-width\": `${width}px`,\n };\n\n return h(\n \"g.section\",\n { className, style, transform: `translate(0 ${scaleInfo.offset})` },\n h(\n MacrostratColumnProvider,\n {\n units,\n domain,\n pixelScale, // Actually pixels per myr,\n },\n h(CompositeUnitsColumn, {\n width,\n showLabels,\n unitComponent,\n unitComponentProps: _unitComponentProps,\n clipToFrame: clipUnits,\n }),\n ),\n );\n}\n\ninterface CompositeTimescaleProps {\n levels?: [number, number] | number;\n}\n\nexport function CompositeTimescale(props: CompositeTimescaleProps) {\n const { sections } = useMacrostratColumnData();\n const sectionScales = sections.map((section) => {\n return section.scaleInfo;\n });\n\n return h(CompositeTimescaleCore, {\n packages: sectionScales,\n ...props,\n });\n}\n\ntype CompositeTimescaleCoreProps = CompositeTimescaleProps & {\n packages: PackageScaleLayoutData[];\n unconformityLabels?: boolean;\n};\n\nexport function CompositeTimescaleCore(props: CompositeTimescaleCoreProps) {\n const { levels = 3, packages, unconformityLabels = false } = props;\n\n let _levels: [number, number];\n if (typeof levels === \"number\") {\n // If levels is a number, use the most common starting level\n _levels = [2, Math.max(2 + Math.min(levels, 5) - 1, 1)];\n } else {\n _levels = levels;\n }\n\n const nCols = _levels[1] - _levels[0] + 1;\n\n return h(\"div.timescale-column\", [\n h(\n \"div.timescales\",\n packages.map((group) => {\n const { domain, pixelHeight, paddingTop, key } = group;\n return h(\n \"div.timescale-container\",\n { style: { paddingTop, \"--timescale-level-count\": nCols }, key },\n [\n h(Timescale, {\n orientation: TimescaleOrientation.VERTICAL,\n length: pixelHeight,\n levels: _levels,\n absoluteAgeScale: true,\n showAgeAxis: false,\n ageRange: domain as [number, number],\n }),\n ],\n );\n }),\n ),\n h.if(unconformityLabels)(UnconformityLabels, {\n width: \"100%\",\n sections: packages,\n className: \"unconformity-labels\",\n }),\n ]);\n}\n\nexport function UnconformityLabels(props: {\n width: string | number;\n sections: PackageScaleLayoutData[];\n className?: string;\n}) {\n const { width, sections, className } = props;\n\n return h(\n \"div.unconformity-labels\",\n {\n style: {\n width,\n },\n className,\n },\n sections.map((scaleInfo, i) => {\n const lastGroup = sections[i - 1];\n const top = scaleInfo.offset - scaleInfo.paddingTop;\n const upperAge = lastGroup?.domain[0];\n const lowerAge = scaleInfo.domain[1];\n return h(Unconformity, {\n upperAge,\n lowerAge,\n style: {\n width,\n height: scaleInfo.paddingTop,\n top,\n },\n });\n }),\n );\n}\n\nfunction Unconformity({ upperAge, lowerAge, style }) {\n if (upperAge == null || lowerAge == null) {\n return null;\n }\n\n const ageGap = Math.abs(upperAge - lowerAge);\n\n let className: string = null;\n if (ageGap > 1000) {\n className = \"giga\";\n } else if (ageGap > 100) {\n className = \"mega\";\n } else if (ageGap > 10) {\n className = \"large\";\n } else if (ageGap < 1) {\n className = \"small\";\n }\n\n return h(\"div.unconformity\", { style, className }, [\n h(\"div.unconformity-text\", h(Duration, { value: ageGap })),\n ]);\n}\n"],"names":["useMemo","$dA1GT$useMemo","Timescale","$dA1GT$Timescale","TimescaleOrientation","$dA1GT$TimescaleOrientation","SVG","$dA1GT$SVG","$dA1GT$macrostrathyper","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$4Abge","$7YHvf","$lgTAP","$wtIgl","$iYfAq","$69e10b1ec4ac73f6$var$h","styled","a","__esModule","default","$69e10b1ec4ac73f6$export$38cb0ab5af8f50d7","props","unconformityLabels","unitComponent","unitComponentProps","showLabels","width","columnWidth","showLabelColumn","clipUnits","maxInternalColumns","units","useMacrostratUnits","key","unit_id","LabelTrackerProvider","$69e10b1ec4ac73f6$var$SectionUnitsColumn","if","SectionLabelsColumn","sections","totalHeight","useMacrostratColumnData","scaleData","map","section","scaleInfo","innerWidth","style","className","height","paddingH","group","section_id","$69e10b1ec4ac73f6$var$SectionUnits","$69e10b1ec4ac73f6$export$e12e53eeee198b99","domain","pixelScale","pixelHeight","_unitComponentProps","nColumns","Math","min","floor","Infinity","max","d","column","transform","offset","MacrostratColumnProvider","CompositeUnitsColumn","clipToFrame","$69e10b1ec4ac73f6$export$db2df5a73a6fbe10","$69e10b1ec4ac73f6$export$463f46772c64d403","packages","_levels","levels","nCols","paddingTop","orientation","VERTICAL","length","absoluteAgeScale","showAgeAxis","ageRange","i","lastGroup","top","$69e10b1ec4ac73f6$var$Unconformity","upperAge","lowerAge","ageGap","abs","Duration","value","SectionsColumn","UnconformityLabels","CompositeTimescale","CompositeTimescaleCore"],"version":3,"file":"column-views.372bbee2.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{joinURL as t,addQueryString as e,useAPIResult as a}from"@macrostrat/ui-components";import n from"cross-fetch";import{feature as o}from"topojson-client";import{geoArea as r}from"d3-geo";function s(t,e,a,n){Object.defineProperty(t,e,{get:a,set:n,enumerable:!0,configurable:!0})}var l={};function c(t,e){return n("https://macrostrat.org/api/v2"+t,e)}async function i(a={}){let{apiBaseURL:o,projectID:s,format:l="topojson",statusCode:c,fetch:u=n}=a,f={format:l};null!=s&&(f={...f,project_id:s}),null!=c&&(f={...f,status_code:c}),null==s&&(f={...f,all:!0});let m="/columns";null!=o&&(m=t(o,m)),m=e(m,f);let p=await u(m,{method:"GET",headers:{"Content-Type":"application/json"}});if(null==p)return null;let h=await p.json();return d[l](h).filter(t=>null!=t.geometry).map(t=>{if(1e-8>r(t.geometry)){let e=t.geometry.coordinates[0][0];t.geometry={type:"Point",coordinates:e}}return t}).map((t,e)=>({id:t.properties?.col_id,...t}))}function u({apiRoute:t="/columns",status_code:e,project_id:n,format:o="geojson"}){let r;null==e&&null==n&&(r=!0);let s=d[o];return a(t,{format:o,all:r,status_code:e,project_id:n},s)}function f(t){return t?.features}s(l,"fetchAllColumns",()=>i),s(l,"useColumnFeatures",()=>u),s(l,"fetchLithologies",()=>p),s(l,"fetchIntervals",()=>h),s(l,"fetchEnvironments",()=>$),s(l,"fetchRefs",()=>g),s(l,"fetchStratNames",()=>j),s(l,"fetchUnits",()=>w),s(l,"fetchColumnUnits",()=>y);let d={topojson:function(t){try{let{data:e}=t.success,{features:a}=o(e,e.objects.output);return a}catch(t){return console.error(t),[]}},geojson:function(t){return f(t?.success?.data)},geojson_bare:f};async function m(t){return null==t?null:(await t.json()).success.data}async function p(t=c){let e=await t("/defs/lithologies?all");return await m(e)}async function h(t,e=c){let a="/defs/intervals";null!=t?a+=`?timescale_id=${t}`:a+="?all";let n=await e(a);return await m(n)}async function $(t=c){let e=await t("/defs/environments?all");return await m(e)}async function g(t,e=c){let a="/defs/refs";if(0==t.length)return[];a+="?ref_id="+t.join(",");let n=await e(a);return await m(n)}async function j(t,e=c){let a="/defs/strat_names";if(0==t.length)return[];a+="?strat_name_id="+t.join(",");let n=await e(a);return await m(n)}async function w(t,e=c){let a=t.map(t=>y(t,e));return await Promise.all(a)}async function y(t,e=c){let a=new URLSearchParams;a.append("response","long"),a.append("col_id",t.toString());let n=await e("/units?"+a.toString()),o=await n.json();if(!o.success)throw Error("Failed to fetch column units");return{columnID:t,units:o.success.data}}export{i as fetchAllColumns,u as useColumnFeatures,p as fetchLithologies,h as fetchIntervals,$ as fetchEnvironments,g as fetchRefs,j as fetchStratNames,w as fetchUnits,y as fetchColumnUnits};
|
|
2
|
-
//# sourceMappingURL=column-views.38357d4a.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"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","sources":["<anon>","packages/column-views/src/data-provider/fetch.ts"],"sourcesContent":["import {joinURL as $iGnPX$joinURL, addQueryString as $iGnPX$addQueryString, useAPIResult as $iGnPX$useAPIResult} from \"@macrostrat/ui-components\";\nimport $iGnPX$crossfetch from \"cross-fetch\";\nimport {feature as $iGnPX$feature} from \"topojson-client\";\nimport {geoArea as $iGnPX$geoArea} from \"d3-geo\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $482a09479937d1e2$exports = {};\n\n$parcel$export($482a09479937d1e2$exports, \"fetchAllColumns\", () => $482a09479937d1e2$export$45bd78cd093090fa);\n$parcel$export($482a09479937d1e2$exports, \"useColumnFeatures\", () => $482a09479937d1e2$export$e3270a4e30e40ff9);\n$parcel$export($482a09479937d1e2$exports, \"fetchLithologies\", () => $482a09479937d1e2$export$1aa679bd5e605f82);\n$parcel$export($482a09479937d1e2$exports, \"fetchIntervals\", () => $482a09479937d1e2$export$5d2ec2e733dfe6c7);\n$parcel$export($482a09479937d1e2$exports, \"fetchEnvironments\", () => $482a09479937d1e2$export$780b4b253712916c);\n$parcel$export($482a09479937d1e2$exports, \"fetchRefs\", () => $482a09479937d1e2$export$cd7bfa0860f58b96);\n$parcel$export($482a09479937d1e2$exports, \"fetchStratNames\", () => $482a09479937d1e2$export$8ea8f45a7ffe4183);\n$parcel$export($482a09479937d1e2$exports, \"fetchUnits\", () => $482a09479937d1e2$export$b97b9bdd6a521298);\n$parcel$export($482a09479937d1e2$exports, \"fetchColumnUnits\", () => $482a09479937d1e2$export$d3d8b0fabcc76c5d);\n\n\n\n\nfunction $482a09479937d1e2$var$defaultFetch(url, options) {\n const baseURL = \"https://macrostrat.org/api/v2\";\n return (0, $iGnPX$crossfetch)(baseURL + url, options);\n}\nasync function $482a09479937d1e2$export$45bd78cd093090fa(options = {}) {\n const { apiBaseURL: apiBaseURL, projectID: projectID, format: format = \"topojson\", statusCode: statusCode, fetch: fetch = (0, $iGnPX$crossfetch) } = options;\n let args = {\n format: format\n };\n if (projectID != null) args = {\n ...args,\n project_id: projectID\n };\n if (statusCode != null) args = {\n ...args,\n status_code: statusCode\n };\n if (projectID == null) args = {\n ...args,\n all: true\n };\n let url = \"/columns\";\n if (apiBaseURL != null) url = (0, $iGnPX$joinURL)(apiBaseURL, url);\n // Try with fetch\n url = (0, $iGnPX$addQueryString)(url, args);\n const res = await fetch(url, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (res == null) return null;\n // Get JSON\n const data = await res.json();\n return $482a09479937d1e2$var$postProcessColumns($482a09479937d1e2$var$columnProcessors[format](data));\n}\nfunction $482a09479937d1e2$export$e3270a4e30e40ff9({ apiRoute: apiRoute = \"/columns\", status_code: status_code, project_id: project_id, format: format = \"geojson\" }) {\n let all = undefined;\n if (status_code == null && project_id == null) all = true;\n const processor = $482a09479937d1e2$var$columnProcessors[format];\n return (0, $iGnPX$useAPIResult)(apiRoute, {\n format: format,\n all: all,\n status_code: status_code,\n project_id: project_id\n }, processor);\n}\nfunction $482a09479937d1e2$var$processGeoJSON(res) {\n return $482a09479937d1e2$var$processGeoJSONBare(res?.success?.data);\n}\nfunction $482a09479937d1e2$var$processGeoJSONBare(res) {\n return res?.features;\n}\nfunction $482a09479937d1e2$var$processTopoJSON(res) {\n try {\n const { data: data } = res.success;\n const { features: f } = (0, $iGnPX$feature)(data, data.objects.output);\n return f;\n } catch (err) {\n console.error(err);\n return [];\n }\n}\nfunction $482a09479937d1e2$var$postProcessColumns(columns) {\n return $482a09479937d1e2$var$promoteColumnIDs($482a09479937d1e2$var$convertSmallAreasToPoints($482a09479937d1e2$var$removeFeaturesWithoutGeometry(columns)));\n}\nfunction $482a09479937d1e2$var$promoteColumnIDs(features) {\n return features.map((f, i)=>{\n return {\n id: f.properties?.col_id,\n ...f\n };\n });\n}\nfunction $482a09479937d1e2$var$removeFeaturesWithoutGeometry(features) {\n return features.filter((f)=>f.geometry != null);\n}\nfunction $482a09479937d1e2$var$convertSmallAreasToPoints(features) {\n return features.map((f)=>{\n // GeoArea takes a long time to run. We are really more worried about points that are zero-area\n if ((0, $iGnPX$geoArea)(f.geometry) < 1e-8) {\n const centroid = f.geometry.coordinates[0][0];\n f.geometry = {\n type: \"Point\",\n coordinates: centroid\n };\n }\n return f;\n });\n}\nconst $482a09479937d1e2$var$columnProcessors = {\n topojson: $482a09479937d1e2$var$processTopoJSON,\n geojson: $482a09479937d1e2$var$processGeoJSON,\n geojson_bare: $482a09479937d1e2$var$processGeoJSONBare\n};\nasync function $482a09479937d1e2$var$unwrapResponse(res) {\n if (res == null) return null;\n const resData = await res.json();\n return resData[\"success\"][\"data\"];\n}\nasync function $482a09479937d1e2$export$1aa679bd5e605f82(fetch = $482a09479937d1e2$var$defaultFetch) {\n const res = await fetch(\"/defs/lithologies?all\");\n return await $482a09479937d1e2$var$unwrapResponse(res);\n}\nasync function $482a09479937d1e2$export$5d2ec2e733dfe6c7(timescaleID, fetch = $482a09479937d1e2$var$defaultFetch) {\n let url = `/defs/intervals`;\n if (timescaleID != null) url += `?timescale_id=${timescaleID}`;\n else url += \"?all\";\n const res = await fetch(url);\n return await $482a09479937d1e2$var$unwrapResponse(res);\n}\nasync function $482a09479937d1e2$export$780b4b253712916c(fetch = $482a09479937d1e2$var$defaultFetch) {\n const res = await fetch(\"/defs/environments?all\");\n return await $482a09479937d1e2$var$unwrapResponse(res);\n}\nasync function $482a09479937d1e2$export$cd7bfa0860f58b96(refs, fetch = $482a09479937d1e2$var$defaultFetch) {\n let url = `/defs/refs`;\n if (refs.length == 0) return [];\n url += \"?ref_id=\" + refs.join(\",\");\n const res = await fetch(url);\n return await $482a09479937d1e2$var$unwrapResponse(res);\n}\nasync function $482a09479937d1e2$export$8ea8f45a7ffe4183(names, fetch = $482a09479937d1e2$var$defaultFetch) {\n let url = `/defs/strat_names`;\n if (names.length == 0) return [];\n url += \"?strat_name_id=\" + names.join(\",\");\n const res = await fetch(url);\n return await $482a09479937d1e2$var$unwrapResponse(res);\n}\nasync function $482a09479937d1e2$export$b97b9bdd6a521298(columns, fetch = $482a09479937d1e2$var$defaultFetch) {\n const promises = columns.map((col_id)=>$482a09479937d1e2$export$d3d8b0fabcc76c5d(col_id, fetch));\n return await Promise.all(promises);\n}\nasync function $482a09479937d1e2$export$d3d8b0fabcc76c5d(col_id, fetch = $482a09479937d1e2$var$defaultFetch) {\n const params = new URLSearchParams();\n params.append(\"response\", \"long\");\n params.append(\"col_id\", col_id.toString());\n const res = await fetch(\"/units?\" + params.toString());\n const data = await res.json();\n if (!data.success) throw new Error(\"Failed to fetch column units\");\n const units = data.success.data;\n return {\n columnID: col_id,\n units: units\n };\n}\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};\n//# sourceMappingURL=column-views.38357d4a.js.map\n","import {\n ColumnGeoJSONRecord,\n ColumnGeoJSONRecordWithID,\n MacrostratRef,\n StratName,\n StratUnit,\n UnitLong,\n} from \"@macrostrat/api-types\";\nimport {\n addQueryString,\n joinURL,\n useAPIResult,\n} from \"@macrostrat/ui-components\";\nimport crossFetch from \"cross-fetch\";\nimport { feature } from \"topojson-client\";\nimport { geoArea } from \"d3-geo\";\n\nfunction defaultFetch(\n url: string,\n options: RequestInit | undefined = undefined,\n) {\n const baseURL = \"https://macrostrat.org/api/v2\";\n return crossFetch(baseURL + url, options);\n}\n\nexport interface ColumnFetchOptions {\n apiBaseURL?: string;\n projectID?: number;\n statusCode?: \"in process\";\n format?: \"geojson\" | \"topojson\" | \"geojson_bare\";\n fetch?: any;\n}\n\nexport async function fetchAllColumns(\n options: ColumnFetchOptions = {},\n): Promise<ColumnGeoJSONRecord[]> {\n const {\n apiBaseURL,\n projectID,\n format = \"topojson\",\n statusCode,\n fetch = crossFetch,\n } = options;\n\n let args: any = { format };\n if (projectID != null) {\n args = { ...args, project_id: projectID };\n }\n if (statusCode != null) {\n args = { ...args, status_code: statusCode };\n }\n\n if (projectID == null) {\n args = { ...args, all: true };\n }\n\n let url = \"/columns\";\n if (apiBaseURL != null) {\n url = joinURL(apiBaseURL, url);\n }\n\n // Try with fetch\n url = addQueryString(url, args);\n\n const res = await fetch(url, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n });\n\n if (res == null) {\n return null;\n }\n\n // Get JSON\n const data = await res.json();\n return postProcessColumns(columnProcessors[format](data));\n}\n\nexport function useColumnFeatures({\n apiRoute = \"/columns\",\n status_code,\n project_id,\n format = \"geojson\",\n}) {\n let all: boolean = undefined;\n if (status_code == null && project_id == null) {\n all = true;\n }\n\n const processor = columnProcessors[format];\n\n return useAPIResult(\n apiRoute,\n { format, all, status_code, project_id },\n processor,\n );\n}\n\nfunction processGeoJSON(res) {\n return processGeoJSONBare(res?.success?.data);\n}\n\nfunction processGeoJSONBare(res) {\n return res?.features;\n}\n\nfunction processTopoJSON(res) {\n try {\n const { data } = res.success;\n const { features: f } = feature(data, data.objects.output) as any;\n return f;\n } catch (err) {\n console.error(err);\n return [];\n }\n}\n\nfunction postProcessColumns(columns) {\n return promoteColumnIDs(\n convertSmallAreasToPoints(removeFeaturesWithoutGeometry(columns)),\n );\n}\n\nfunction promoteColumnIDs(\n features: ColumnGeoJSONRecord[],\n): ColumnGeoJSONRecordWithID[] {\n return features.map((f, i) => {\n return {\n id: f.properties?.col_id,\n ...f,\n };\n });\n}\n\nfunction removeFeaturesWithoutGeometry(features) {\n return features.filter((f) => f.geometry != null);\n}\n\nfunction convertSmallAreasToPoints(features) {\n return features.map((f) => {\n // GeoArea takes a long time to run. We are really more worried about points that are zero-area\n if (geoArea(f.geometry) < 1e-8) {\n const centroid = f.geometry.coordinates[0][0];\n f.geometry = {\n type: \"Point\",\n coordinates: centroid,\n };\n }\n return f;\n });\n}\n\nconst columnProcessors = {\n topojson: processTopoJSON,\n geojson: processGeoJSON,\n geojson_bare: processGeoJSONBare,\n};\n\nasync function unwrapResponse(res) {\n if (res == null) {\n return null;\n }\n const resData = await res.json();\n return resData[\"success\"][\"data\"];\n}\n\nexport async function fetchLithologies(fetch = defaultFetch) {\n const res = await fetch(\"/defs/lithologies?all\");\n return await unwrapResponse(res);\n}\n\nexport async function fetchIntervals(\n timescaleID: number | null,\n fetch = defaultFetch,\n) {\n let url = `/defs/intervals`;\n if (timescaleID != null) {\n url += `?timescale_id=${timescaleID}`;\n } else {\n url += \"?all\";\n }\n const res = await fetch(url);\n return await unwrapResponse(res);\n}\n\nexport async function fetchEnvironments(fetch = defaultFetch) {\n const res = await fetch(\"/defs/environments?all\");\n return await unwrapResponse(res);\n}\n\nexport async function fetchRefs(\n refs: number[],\n fetch = defaultFetch,\n): Promise<MacrostratRef[]> {\n let url = `/defs/refs`;\n if (refs.length == 0) {\n return [];\n }\n url += \"?ref_id=\" + refs.join(\",\");\n const res = await fetch(url);\n return await unwrapResponse(res);\n}\n\nexport async function fetchStratNames(\n names: number[],\n fetch = defaultFetch,\n): Promise<StratName[]> {\n let url = `/defs/strat_names`;\n if (names.length == 0) {\n return [];\n }\n url += \"?strat_name_id=\" + names.join(\",\");\n const res = await fetch(url);\n return await unwrapResponse(res);\n}\n\nexport type ColumnData = {\n units: UnitLong[];\n columnID: number;\n};\n\nexport async function fetchUnits(\n columns: number[],\n fetch = defaultFetch,\n): Promise<ColumnData[]> {\n const promises = columns.map((col_id) => fetchColumnUnits(col_id, fetch));\n return await Promise.all(promises);\n}\n\nexport async function fetchColumnUnits(\n col_id: number,\n fetch = defaultFetch,\n): Promise<ColumnData> {\n const params = new URLSearchParams();\n params.append(\"response\", \"long\");\n params.append(\"col_id\", col_id.toString());\n const res = await fetch(\"/units\" + \"?\" + params.toString());\n const data = await res.json();\n if (!data.success) {\n throw new Error(\"Failed to fetch column units\");\n }\n const units = data.success.data;\n return { columnID: col_id, units };\n}\n"],"names":["joinURL","$iGnPX$joinURL","addQueryString","$iGnPX$addQueryString","useAPIResult","$iGnPX$useAPIResult","$iGnPX$crossfetch","feature","$iGnPX$feature","geoArea","$iGnPX$geoArea","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$482a09479937d1e2$exports","$482a09479937d1e2$var$defaultFetch","url","options","baseURL","$482a09479937d1e2$export$45bd78cd093090fa","apiBaseURL","projectID","format","statusCode","fetch","args","project_id","status_code","all","res","method","headers","data","json","features","$482a09479937d1e2$var$columnProcessors","filter","f","geometry","map","centroid","coordinates","type","i","id","properties","col_id","$482a09479937d1e2$export$e3270a4e30e40ff9","apiRoute","processor","$482a09479937d1e2$var$processGeoJSONBare","$482a09479937d1e2$export$1aa679bd5e605f82","$482a09479937d1e2$export$5d2ec2e733dfe6c7","$482a09479937d1e2$export$780b4b253712916c","$482a09479937d1e2$export$cd7bfa0860f58b96","$482a09479937d1e2$export$8ea8f45a7ffe4183","$482a09479937d1e2$export$b97b9bdd6a521298","$482a09479937d1e2$export$d3d8b0fabcc76c5d","topojson","success","objects","output","err","console","error","geojson","geojson_bare","$482a09479937d1e2$var$unwrapResponse","resData","timescaleID","refs","length","join","names","columns","promises","Promise","params","URLSearchParams","append","toString","Error","columnID","units","fetchAllColumns","useColumnFeatures","fetchLithologies","fetchIntervals","fetchEnvironments","fetchRefs","fetchStratNames","fetchUnits","fetchColumnUnits"],"version":3,"file":"column-views.38357d4a.js.map","sourceRoot":"../../../../"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"ACAA,2CAII,mKAOA,uDAGJ,sCAGA,+KAQA,qDAGA,2EAKE,yKAIA","sources":["column-views.3a55ecd7.css","packages/column-views/src/age-axis.module.sass"],"sourcesContent":["._FHjpa_age-axis {\n transform: translateX(20px);\n}\n\n._FHjpa_age-axis .tick text {\n text-anchor: middle;\n font-size: var(--column-axis-font-size, .8rem);\n transform: rotate(-90deg)translate(8px, -12px);\n font-weight: 400 !important;\n}\n\n._FHjpa_age-axis .tick line {\n stroke-width: 1px !important;\n}\n\n._FHjpa_age-axis-column {\n flex-shrink: 0;\n}\n\n._FHjpa_age-axis-label {\n writing-mode: vertical-lr;\n font-size: var(--column-axis-font-size, .8rem);\n text-align: center;\n max-height: 100vh;\n position: sticky;\n top: 0;\n transform: rotate(180deg);\n}\n\n._FHjpa_age-axis-unit {\n color: var(--text-subtle-color);\n}\n\n._FHjpa_age-cursor {\n pointer-events: none;\n position: absolute;\n left: 30px;\n right: 0;\n}\n\n._FHjpa_age-cursor ._FHjpa_line {\n border-bottom: 2px solid var(--column-axis-cursor-color, var(--column-cursor-color, var(--column-stroke-color)));\n transform: translateY(-1px);\n}\n\n._FHjpa_age-cursor ._FHjpa_label {\n writing-mode: vertical-lr;\n background-color: var(--column-background-color);\n text-align: center;\n padding: 4px 2px;\n transform: rotate(180deg)translate(16px, 50%);\n}\n/*# sourceMappingURL=column-views.3a55ecd7.css.map */\n",".age-axis\n transform: translateX(20px)\n\n :global(.tick)\n text\n text-anchor: middle\n // TODO: allow font size to vary without this..\n font-weight: 400 !important\n transform: rotate(-90deg) translate(8px, -12px)\n font-size: var(--column-axis-font-size, 0.8rem)\n\n line\n stroke-width: 1px !important\n\n.age-axis-column\n flex-shrink: 0\n\n.age-axis-label\n writing-mode: vertical-lr\n transform: rotate(180deg)\n font-size: var(--column-axis-font-size, 0.8rem)\n text-align: center\n position: sticky\n top: 0\n max-height: 100vh\n.age-axis-unit\n color: var(--text-subtle-color)\n\n.age-cursor\n position: absolute\n left: 30px\n right: 0\n pointer-events: none\n .line\n border-bottom: 2px solid var(--column-axis-cursor-color, var(--column-cursor-color, var(--column-stroke-color)))\n transform: translateY(-1px)\n\n .label\n writing-mode: vertical-lr\n padding: 4px 2px\n transform: rotate(180deg) translate(16px, 50%)\n background-color: var(--column-background-color)\n text-align: center\n\n\n\n \n"],"names":[],"version":3,"file":"column-views.3a55ecd7.css.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import e from"@macrostrat/hyper";import{useKeyHandler as t}from"@macrostrat/ui-components";import{createContext as n,useContext as i,useState as l,useEffect as u,useRef as o,useCallback as r}from"react";import{useStore as d,createStore as a}from"zustand";function c(e,t,n,i){Object.defineProperty(e,t,{get:n,set:i,enumerable:!0,configurable:!0})}var s={};c(s,"useUnitSelectionDispatch",()=>U),c(s,"useUnitSelectionStore",()=>p),c(s,"useSelectedUnit",()=>S),c(s,"UnitSelectionProvider",()=>g),c(s,"useUnitSelectionTarget",()=>$),c(s,"UnitKeyboardNavigation",()=>h);let f=n(null);function U(){let e=i(f);return null==e?()=>{}:d(e,e=>e.onUnitSelected)}function p(e){let t=i(f);return null==t?null:d(t,e)}function S(){return p(e=>e.selectedUnitData)}function g(t){let[n]=l(()=>a(e=>({selectedUnit:null,selectedUnitData:null,overlayPosition:null,setSelectedUnit(t){if(null==t)return void e({selectedUnit:null,selectedUnitData:null});"number"==typeof t?e({selectedUnit:t,selectedUnitData:null}):"unit_id"in t&&e({selectedUnit:t.unit_id,selectedUnitData:t})},onUnitSelected:(n,i,l)=>{let u=t.columnRef?.current,o=null;if(t.onClickedColumn){let e={unitID:n?.unit_id,unit:n,target:i,height:u?.getBoundingClientRect().height||0};t.onClickedColumn(e,l)}if(null!=n&&null!=u&&null!=i){let e=u.getBoundingClientRect(),t=i.getBoundingClientRect();o={x:t.left-e.left,y:t.top-e.top,width:t.width,height:t.height}}return t.onUnitSelected?.(n?.unit_id,n),e({selectedUnit:n?.unit_id,selectedUnitData:n,overlayPosition:o})}}))),{units:i,selectedUnit:o}=t;return u(()=>{if(null!=o){let e=i?.find(e=>e.unit_id===o);n.setState({selectedUnit:o,selectedUnitData:e})}else n.setState({selectedUnit:null,selectedUnitData:null})},[o,i]),e(f.Provider,{value:n},t.children)}function $(e){let t=o(),n=S(),i=p(e=>e.onUnitSelected),l=n?.unit_id==e.unit_id,d=r(n=>{null!=i&&(i(e,t.current,n),n.stopPropagation())},[e,i]);return u(()=>{l&&null!=i&&(i(e,t.current,null),t.current?.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"}))},[l,i]),[t,l,d]}function h({units:e}){let n=S(),i=U(),l=e.findIndex(e=>e.unit_id===n?.unit_id),u={38:l-1,40:l+1};return t(t=>{let n=u[t.keyCode];null==n||n<0||n>=e.length||(i(e[n],null,null),t.stopPropagation())},[e,l]),null}export{U as useUnitSelectionDispatch,p as useUnitSelectionStore,S as useSelectedUnit,g as UnitSelectionProvider,$ as useUnitSelectionTarget,h as UnitKeyboardNavigation};
|
|
2
|
-
//# sourceMappingURL=column-views.3eeac38d.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"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","sources":["<anon>","packages/column-views/src/units/selection.ts"],"sourcesContent":["import $TyplV$macrostrathyper from \"@macrostrat/hyper\";\nimport {useKeyHandler as $TyplV$useKeyHandler} from \"@macrostrat/ui-components\";\nimport {createContext as $TyplV$createContext, useContext as $TyplV$useContext, useState as $TyplV$useState, useEffect as $TyplV$useEffect, useRef as $TyplV$useRef, useCallback as $TyplV$useCallback} from \"react\";\nimport {useStore as $TyplV$useStore, createStore as $TyplV$createStore} from \"zustand\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $f7d31510668965d8$exports = {};\n\n$parcel$export($f7d31510668965d8$exports, \"useUnitSelectionDispatch\", () => $f7d31510668965d8$export$77a278d5ca56e309);\n$parcel$export($f7d31510668965d8$exports, \"useUnitSelectionStore\", () => $f7d31510668965d8$export$b220b1d3591dc9e5);\n$parcel$export($f7d31510668965d8$exports, \"useSelectedUnit\", () => $f7d31510668965d8$export$f0dd93f90aa8e5da);\n$parcel$export($f7d31510668965d8$exports, \"UnitSelectionProvider\", () => $f7d31510668965d8$export$f19d75b1d4b676a4);\n$parcel$export($f7d31510668965d8$exports, \"useUnitSelectionTarget\", () => $f7d31510668965d8$export$cbbec12b1451fe7d);\n$parcel$export($f7d31510668965d8$exports, \"UnitKeyboardNavigation\", () => $f7d31510668965d8$export$70f5ee19650fc7d1);\n\n\n\n\nconst $f7d31510668965d8$var$UnitSelectionContext = (0, $TyplV$createContext)(null);\nfunction $f7d31510668965d8$export$77a278d5ca56e309() {\n const store = (0, $TyplV$useContext)($f7d31510668965d8$var$UnitSelectionContext);\n if (store == null) return ()=>{};\n return (0, $TyplV$useStore)(store, (state)=>state.onUnitSelected);\n}\nfunction $f7d31510668965d8$export$b220b1d3591dc9e5(selector) {\n const store = (0, $TyplV$useContext)($f7d31510668965d8$var$UnitSelectionContext);\n if (store == null) return null;\n return (0, $TyplV$useStore)(store, selector);\n}\nfunction $f7d31510668965d8$export$f0dd93f90aa8e5da() {\n return $f7d31510668965d8$export$b220b1d3591dc9e5((state)=>state.selectedUnitData);\n}\nfunction $f7d31510668965d8$export$f19d75b1d4b676a4(props) {\n const [store] = (0, $TyplV$useState)(()=>(0, $TyplV$createStore)((set)=>({\n selectedUnit: null,\n selectedUnitData: null,\n overlayPosition: null,\n setSelectedUnit (selectedUnit) {\n if (selectedUnit == null) {\n set({\n selectedUnit: null,\n selectedUnitData: null\n });\n return;\n // If it's a number, set the selected unit\n } else if (typeof selectedUnit === \"number\") set({\n selectedUnit: selectedUnit,\n selectedUnitData: null\n });\n else if (\"unit_id\" in selectedUnit) set({\n selectedUnit: selectedUnit.unit_id,\n selectedUnitData: selectedUnit\n });\n },\n onUnitSelected: (unit, target, event)=>{\n const el = props.columnRef?.current;\n let overlayPosition = null;\n /** This is not the natural place to get positions within the column,\n * but it will work for now.\n */ if (props.onClickedColumn) {\n // Infer height from top and bottom height of unit (because that's passed back with the call)\n //const py = event.y;\n //const [bottom, top] = getUnitHeightRange(unit, axisType);\n //const height = Math.abs(bottom - top);\n /** Ideally this would be defined at the column level */ const columnClickData = {\n unitID: unit?.unit_id,\n unit: unit,\n target: target,\n height: el?.getBoundingClientRect().height || 0\n };\n props.onClickedColumn(columnClickData, event);\n }\n if (unit != null && el != null && target != null) {\n const rect = el.getBoundingClientRect();\n const targetRect = target.getBoundingClientRect();\n overlayPosition = {\n x: targetRect.left - rect.left,\n y: targetRect.top - rect.top,\n width: targetRect.width,\n height: targetRect.height\n };\n }\n props.onUnitSelected?.(unit?.unit_id, unit);\n return set({\n selectedUnit: unit?.unit_id,\n selectedUnitData: unit,\n overlayPosition: overlayPosition\n });\n }\n })));\n const { units: units, selectedUnit: selectedUnit } = props;\n (0, $TyplV$useEffect)(()=>{\n // Synchronize store with provided props\n if (selectedUnit != null) {\n const unitData = units?.find((u)=>u.unit_id === selectedUnit);\n store.setState({\n selectedUnit: selectedUnit,\n selectedUnitData: unitData\n });\n } else store.setState({\n selectedUnit: null,\n selectedUnitData: null\n });\n }, [\n selectedUnit,\n units\n ]);\n return (0, $TyplV$macrostrathyper)($f7d31510668965d8$var$UnitSelectionContext.Provider, {\n value: store\n }, props.children);\n}\nfunction $f7d31510668965d8$export$cbbec12b1451fe7d(unit) {\n const ref = (0, $TyplV$useRef)();\n const selectedUnit = $f7d31510668965d8$export$f0dd93f90aa8e5da();\n const onSelectUnit = $f7d31510668965d8$export$b220b1d3591dc9e5((state)=>state.onUnitSelected);\n const selected = selectedUnit?.unit_id == unit.unit_id;\n const onClick = (0, $TyplV$useCallback)((evt)=>{\n if (onSelectUnit == null) return;\n onSelectUnit(unit, ref.current, evt);\n evt.stopPropagation();\n }, [\n unit,\n onSelectUnit\n ]);\n (0, $TyplV$useEffect)(()=>{\n if (!selected || onSelectUnit == null) return;\n // In case we haven't set the position of the unit (if we don't have a target), set the selected unit\n onSelectUnit(unit, ref.current, null);\n // Scroll the unit into view\n ref.current?.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n inline: \"nearest\"\n });\n }, [\n selected,\n onSelectUnit\n ]);\n return [\n ref,\n selected,\n onClick\n ];\n}\nfunction $f7d31510668965d8$export$70f5ee19650fc7d1({ units: units }) {\n const selectedUnit = $f7d31510668965d8$export$f0dd93f90aa8e5da();\n const selectUnit = $f7d31510668965d8$export$77a278d5ca56e309();\n const ix = units.findIndex((unit)=>unit.unit_id === selectedUnit?.unit_id);\n const keyMap = {\n 38: ix - 1,\n 40: ix + 1\n };\n (0, $TyplV$useKeyHandler)((event)=>{\n const nextIx = keyMap[event.keyCode];\n if (nextIx == null || nextIx < 0 || nextIx >= units.length) return;\n selectUnit(units[nextIx], null, null);\n event.stopPropagation();\n }, [\n units,\n ix\n ]);\n return null;\n}\n\n\nexport {$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.3eeac38d.js.map\n","import { BaseUnit } from \"@macrostrat/api-types\";\nimport h from \"@macrostrat/hyper\";\nimport { useKeyHandler } from \"@macrostrat/ui-components\";\nimport {\n createContext,\n useContext,\n useEffect,\n useState,\n ReactNode,\n RefObject,\n useRef,\n useCallback,\n MouseEvent,\n} from \"react\";\nimport { createStore, StoreApi, useStore } from \"zustand\";\nimport type { RectBounds, IUnit } from \"./types\";\nimport {\n getUnitHeightRange,\n useMacrostratColumnData,\n} from \"@macrostrat/column-views\";\n\ntype UnitSelectDispatch = (\n unit: BaseUnit | null,\n target: HTMLElement | null,\n event: Event | null,\n) => void;\n\nconst UnitSelectionContext = createContext<StoreApi<UnitSelectionStore>>(null);\n\nexport function useUnitSelectionDispatch(): UnitSelectDispatch {\n const store = useContext(UnitSelectionContext);\n if (store == null) {\n return () => {};\n }\n return useStore(store, (state) => state.onUnitSelected);\n}\n\nexport function useUnitSelectionStore<T>(\n selector: (state: UnitSelectionStore) => T,\n): T {\n const store = useContext(UnitSelectionContext);\n if (store == null) {\n return null;\n }\n return useStore(store, selector);\n}\n\nexport function useSelectedUnit() {\n return useUnitSelectionStore((state) => state.selectedUnitData);\n}\n\ninterface UnitSelectionStore {\n selectedUnit: number | null;\n selectedUnitData: BaseUnit | null;\n overlayPosition: RectBounds | null;\n onUnitSelected: UnitSelectDispatch;\n setSelectedUnit: (unit: number | null) => void;\n}\n\nexport interface ColumnClickData {\n unitID: number | null;\n unit: BaseUnit | null;\n target: HTMLElement | null;\n height: number;\n // Room for boundary IDs eventually\n}\n\nexport function UnitSelectionProvider<T extends BaseUnit>(props: {\n children: ReactNode;\n columnRef?: RefObject<HTMLElement>;\n units: T[];\n selectedUnit: number | null;\n onClickedColumn?: (columnClickData: ColumnClickData, event: Event) => void;\n onUnitSelected?: (unitID: number | null, unit: T | null) => void;\n}) {\n const [store] = useState(() =>\n createStore<UnitSelectionStore>((set) => ({\n selectedUnit: null,\n selectedUnitData: null,\n overlayPosition: null,\n setSelectedUnit(selectedUnit: number | null | BaseUnit) {\n if (selectedUnit == null) {\n set({ selectedUnit: null, selectedUnitData: null });\n return;\n // If it's a number, set the selected unit\n } else if (typeof selectedUnit === \"number\") {\n set({ selectedUnit, selectedUnitData: null });\n } else if (\"unit_id\" in selectedUnit) {\n set({\n selectedUnit: selectedUnit.unit_id,\n selectedUnitData: selectedUnit,\n });\n }\n },\n onUnitSelected: (unit: T, target: HTMLElement, event: PointerEvent) => {\n const el = props.columnRef?.current;\n let overlayPosition = null;\n\n /** This is not the natural place to get positions within the column,\n * but it will work for now.\n */\n if (props.onClickedColumn) {\n // Infer height from top and bottom height of unit (because that's passed back with the call)\n //const py = event.y;\n //const [bottom, top] = getUnitHeightRange(unit, axisType);\n //const height = Math.abs(bottom - top);\n\n /** Ideally this would be defined at the column level */\n const columnClickData: ColumnClickData = {\n unitID: unit?.unit_id,\n unit,\n target,\n height: el?.getBoundingClientRect().height || 0,\n };\n props.onClickedColumn(columnClickData, event);\n }\n\n if (unit != null && el != null && target != null) {\n const rect = el.getBoundingClientRect();\n const targetRect = target.getBoundingClientRect();\n\n overlayPosition = {\n x: targetRect.left - rect.left,\n y: targetRect.top - rect.top,\n width: targetRect.width,\n height: targetRect.height,\n };\n }\n props.onUnitSelected?.(unit?.unit_id, unit);\n\n return set({\n selectedUnit: unit?.unit_id,\n selectedUnitData: unit,\n overlayPosition,\n });\n },\n })),\n );\n\n const { units, selectedUnit } = props;\n\n useEffect(() => {\n // Synchronize store with provided props\n if (selectedUnit != null) {\n const unitData = units?.find((u) => u.unit_id === selectedUnit);\n store.setState({ selectedUnit, selectedUnitData: unitData });\n } else {\n store.setState({ selectedUnit: null, selectedUnitData: null });\n }\n }, [selectedUnit, units]);\n\n return h(UnitSelectionContext.Provider, { value: store }, props.children);\n}\n\nexport function useUnitSelectionTarget(\n unit: IUnit,\n): [React.RefObject<HTMLElement>, boolean, (evt: Event) => void] {\n const ref = useRef<HTMLElement>();\n const selectedUnit = useSelectedUnit();\n const onSelectUnit = useUnitSelectionStore((state) => state.onUnitSelected);\n const selected = selectedUnit?.unit_id == unit.unit_id;\n\n const onClick = useCallback(\n (evt: Event) => {\n if (onSelectUnit == null) return;\n onSelectUnit(unit, ref.current, evt);\n evt.stopPropagation();\n },\n [unit, onSelectUnit],\n );\n\n useEffect(() => {\n if (!selected || onSelectUnit == null) return;\n // In case we haven't set the position of the unit (if we don't have a target), set the selected unit\n onSelectUnit(unit, ref.current, null);\n\n // Scroll the unit into view\n ref.current?.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n inline: \"nearest\",\n });\n }, [selected, onSelectUnit]);\n\n return [ref, selected, onClick];\n}\n\nexport function UnitKeyboardNavigation<T extends BaseUnit>({\n units,\n}: {\n units: T[];\n}) {\n const selectedUnit = useSelectedUnit();\n const selectUnit = useUnitSelectionDispatch();\n\n const ix = units.findIndex((unit) => unit.unit_id === selectedUnit?.unit_id);\n\n const keyMap = {\n 38: ix - 1,\n 40: ix + 1,\n };\n\n useKeyHandler(\n (event) => {\n const nextIx = keyMap[event.keyCode];\n if (nextIx == null || nextIx < 0 || nextIx >= units.length) return;\n selectUnit(units[nextIx], null, null);\n event.stopPropagation();\n },\n [units, ix],\n );\n return null;\n}\n"],"names":["$TyplV$macrostrathyper","useKeyHandler","$TyplV$useKeyHandler","createContext","$TyplV$createContext","useContext","$TyplV$useContext","useState","$TyplV$useState","useEffect","$TyplV$useEffect","useRef","$TyplV$useRef","useCallback","$TyplV$useCallback","useStore","$TyplV$useStore","createStore","$TyplV$createStore","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$f7d31510668965d8$exports","$f7d31510668965d8$export$77a278d5ca56e309","$f7d31510668965d8$export$b220b1d3591dc9e5","$f7d31510668965d8$export$f0dd93f90aa8e5da","$f7d31510668965d8$export$f19d75b1d4b676a4","$f7d31510668965d8$export$cbbec12b1451fe7d","$f7d31510668965d8$export$70f5ee19650fc7d1","$f7d31510668965d8$var$UnitSelectionContext","store","state","onUnitSelected","selector","selectedUnitData","props","selectedUnit","overlayPosition","setSelectedUnit","unit_id","unit","target","event","el","columnRef","current","onClickedColumn","columnClickData","unitID","height","getBoundingClientRect","rect","targetRect","x","left","y","top","width","units","unitData","find","u","setState","Provider","value","children","ref","onSelectUnit","selected","onClick","evt","stopPropagation","scrollIntoView","behavior","block","inline","selectUnit","ix","findIndex","keyMap","nextIx","keyCode","length","useUnitSelectionDispatch","useUnitSelectionStore","useSelectedUnit","UnitSelectionProvider","useUnitSelectionTarget","UnitKeyboardNavigation"],"version":3,"file":"column-views.3eeac38d.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.d6708353.js";import"./column-views.78d3f3c5.js";import"./column-views.fc05616e.js";import e from"@macrostrat/hyper";import{ColumnAxisType as a,SVG as t,AgeAxis as s}from"@macrostrat/column-components";import"react";import{Parenthetical as i}from"@macrostrat/data-components";function r(e,a,t,s){Object.defineProperty(e,a,{get:t,set:s,enumerable:!0,configurable:!0})}var o=globalThis,l={},c={},n=o.parcelRequirea149;null==n&&((n=function(e){if(e in l)return l[e].exports;if(e in c){var a=c[e];delete c[e];var t={id:e,exports:{}};return l[e]=t,a.call(t.exports,t,t.exports),t.exports}var s=Error("Cannot find module '"+e+"'");throw s.code="MODULE_NOT_FOUND",s}).register=function(e,a){c[e]=a},o.parcelRequirea149=n),n.register;var u={};r(u,"VerticalAxisLabel",()=>f),r(u,"CompositeAgeAxis",()=>x),r(u,"CompositeAgeAxisCore",()=>A),r(u,"AgeCursor",()=>b);var m=n("6kMGl"),p=n("wtIgl"),g=n("iYfAq");let d=e.styled(m&&m.__esModule?m.default:m);function f(e){let{label:a="Age",unit:t="Ma",className:s,height:r}=e;return d("div.column-axis-label.age-axis-label",{className:s,style:{height:r}},[a," ",d.if(t)(i,{className:"age-axis-unit"},t)])}function x(){let{axisType:e,sections:a,totalHeight:t}=(0,p.useMacrostratColumnData)();return d(A,{axisType:e,packages:a.map(e=>({key:`section-${e.section_id}`,...e.scaleInfo})),totalHeight:t})}function A(e){let{axisType:i,totalHeight:r,packages:o}=e;if(i==a.ORDINAL)return null;let l="Age",c="Ma";return i==a.DEPTH?(l="Depth",c="m"):i==a.HEIGHT&&(l="Height",c="m"),d([d(f,{label:l,unit:c,height:r}),d(t,{className:"age-axis-column",style:{width:"22px",height:`${r}px`},width:22,height:r},o.map((e,a)=>{let{key:t,scale:i}=e;return d(s,{key:t,className:"age-axis",scale:i,tickSizeOuter:3})}))])}function b({age:e}){let a=(0,p.useCompositeScale)()(e);return(console.log(e,a),null==e||null==a)?null:d("div.age-cursor",{style:{top:a}},[d("div.line"),d(g.AgeLabel,{age:e,className:"label"})])}export{f as VerticalAxisLabel,x as CompositeAgeAxis,A as CompositeAgeAxisCore,b as AgeCursor};
|
|
2
|
-
//# sourceMappingURL=column-views.3f032518.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,Q,M,mB,A,Q,kB,C,C,O,C,C,W,C,K,+B,A,O,O,A,Q,iB,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,oB,I,G,E,E,mB,I,G,E,E,uB,I,G,E,E,Y,I,G,I,E,E,S,E,E,S,E,E,SCeA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAehB,SAAS,EAAkB,CAAK,EACrC,GAAM,CAAA,MAAE,EAAQ,KAAA,CAAA,KAAO,EAAO,IAAA,CAAA,UAAM,CAAS,CAAA,OAAE,CAAM,CAAE,CAAG,EAC1D,OAAO,EACL,uCACA,CAAE,UAAA,EAAW,MAAO,CAAE,OAAA,CAAO,CAAE,EAC/B,CACE,EACA,IACA,EAAE,EAAE,CAAC,GAAM,EAAe,CAAE,UAAW,eAAgB,EAAG,GAC3D,CAEL,CAEO,SAAS,IACd,GAAM,CAAA,SAAE,CAAQ,CAAA,SAAE,CAAQ,CAAA,YAAE,CAAW,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAS5C,OAAO,EAAE,EAAsB,CAC7B,SAAA,EACA,SATe,EAAS,GAAG,CAAC,AAAC,GACtB,CAAA,CACL,IAAK,CAAC,QAAQ,EAAE,EAAQ,UAAU,CAAA,CAAE,CACpC,GAAG,EAAQ,SAAS,AACtB,CAAA,GAMA,YAAA,CACF,EACF,CAQO,SAAS,EAAqB,CAAsC,EACzE,GAAM,CAAA,SAAE,CAAQ,CAAA,YAAE,CAAW,CAAA,SAAE,CAAQ,CAAE,CAAG,EAE5C,GAAI,GAAY,AAAA,EAAe,OAAO,CACpC,OAAO,KAGT,IAAI,EAAoB,MACpB,EAAW,KASf,OARI,GAAY,AAAA,EAAe,KAAK,EAClC,EAAY,QACZ,EAAW,KACF,GAAY,AAAA,EAAe,MAAM,GAC1C,EAAY,SACZ,EAAW,KAGN,EAAE,CACP,EAAE,EAAmB,CACnB,MAAO,EACP,KAAM,EACN,OAAQ,CACV,GACA,EACE,EACA,CACE,UAAW,kBACX,MAAO,CAAE,MAAO,OAAQ,OAAQ,CAAA,EAAG,EAAY,EAAE,CAAC,AAAC,EACnD,MAAO,GACP,OAAQ,CACV,EACA,EAAS,GAAG,CAAC,CAAC,EAAO,KACnB,GAAM,CAAA,IAAE,CAAG,CAAA,MAAE,CAAK,CAAE,CAAG,EAEvB,OAAO,EAAE,EAAS,CAChB,IAAA,EACA,UAAW,WACX,MAAA,EACA,cAAe,CACjB,EACF,IAEH,CACH,CAEO,SAAS,EAAU,CAAA,IAAE,CAAG,CAAE,EAG/B,IAAM,EAAW,AADH,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,IACS,SAIvB,CAFA,QAAQ,GAAG,CAAC,EAAK,GAEb,AAAO,MAAP,GAAe,AAAY,MAAZ,GACV,KAGF,EACL,iBACA,CACE,MAAO,CACL,IAAK,CACP,CACF,EACA,CAAC,EAAE,YAAa,EAAE,EAAA,QAAO,CAAG,CAAE,IAAA,EAAK,UAAW,OAAQ,GAAG,CAE7D,Q,K,iB,C,K,gB,C,K,oB,C,K,S","sources":["<anon>","packages/column-views/src/age-axis.ts"],"sourcesContent":["import \"./column-views.d6708353.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport \"./column-views.fc05616e.js\";\nimport $fXMLu$macrostrathyper from \"@macrostrat/hyper\";\nimport {ColumnContext as $fXMLu$ColumnContext, ColumnAxis as $fXMLu$ColumnAxis, ColumnAxisType as $fXMLu$ColumnAxisType, SVG as $fXMLu$SVG, AgeAxis as $fXMLu$AgeAxis} from \"@macrostrat/column-components\";\nimport {useContext as $fXMLu$useContext} from \"react\";\nimport {Parenthetical as $fXMLu$Parenthetical} 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 $1aa4ef695e55d51d$exports = {};\n\n$parcel$export($1aa4ef695e55d51d$exports, \"VerticalAxisLabel\", () => $1aa4ef695e55d51d$export$64204d5cbb3e8227);\n$parcel$export($1aa4ef695e55d51d$exports, \"CompositeAgeAxis\", () => $1aa4ef695e55d51d$export$40b6b0e4520eeb34);\n$parcel$export($1aa4ef695e55d51d$exports, \"CompositeAgeAxisCore\", () => $1aa4ef695e55d51d$export$ac30ca3cf5df959d);\n$parcel$export($1aa4ef695e55d51d$exports, \"AgeCursor\", () => $1aa4ef695e55d51d$export$20d84abfcfa68dfa);\n\n\n\n\nvar $6kMGl = parcelRequire(\"6kMGl\");\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\n\nvar $iYfAq = parcelRequire(\"iYfAq\");\nconst $1aa4ef695e55d51d$var$h = (0, $fXMLu$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($6kMGl))));\nconst $1aa4ef695e55d51d$var$AgeAxisCore = ({ ticks: ticks, tickSpacing: tickSpacing = 40, showDomain: showDomain = false })=>{\n const { pixelHeight: pixelHeight } = (0, $fXMLu$useContext)((0, $fXMLu$ColumnContext));\n // A tick roughly every 40 pixels\n let v = Math.max(Math.round(pixelHeight / tickSpacing), 1);\n return $1aa4ef695e55d51d$var$h(\"g.axis\", {\n transform: \"translate(20 0)\"\n }, [\n $1aa4ef695e55d51d$var$h((0, $fXMLu$ColumnAxis), {\n ticks: v,\n showDomain: showDomain\n })\n ]);\n};\nfunction $1aa4ef695e55d51d$export$64204d5cbb3e8227(props) {\n const { label: label = \"Age\", unit: unit = \"Ma\", className: className, height: height } = props;\n return $1aa4ef695e55d51d$var$h(\"div.column-axis-label.age-axis-label\", {\n className: className,\n style: {\n height: height\n }\n }, [\n label,\n \" \",\n $1aa4ef695e55d51d$var$h.if(unit)((0, $fXMLu$Parenthetical), {\n className: \"age-axis-unit\"\n }, unit)\n ]);\n}\nfunction $1aa4ef695e55d51d$export$40b6b0e4520eeb34() {\n const { axisType: axisType, sections: sections, totalHeight: totalHeight } = (0, $wtIgl.useMacrostratColumnData)();\n const packages = sections.map((section)=>{\n return {\n key: `section-${section.section_id}`,\n ...section.scaleInfo\n };\n });\n return $1aa4ef695e55d51d$var$h($1aa4ef695e55d51d$export$ac30ca3cf5df959d, {\n axisType: axisType,\n packages: packages,\n totalHeight: totalHeight\n });\n}\nfunction $1aa4ef695e55d51d$export$ac30ca3cf5df959d(props) {\n const { axisType: axisType, totalHeight: totalHeight, packages: packages } = props;\n if (axisType == (0, $fXMLu$ColumnAxisType).ORDINAL) return null;\n let axisLabel = \"Age\";\n let axisUnit = \"Ma\";\n if (axisType == (0, $fXMLu$ColumnAxisType).DEPTH) {\n axisLabel = \"Depth\";\n axisUnit = \"m\";\n } else if (axisType == (0, $fXMLu$ColumnAxisType).HEIGHT) {\n axisLabel = \"Height\";\n axisUnit = \"m\";\n }\n return $1aa4ef695e55d51d$var$h([\n $1aa4ef695e55d51d$var$h($1aa4ef695e55d51d$export$64204d5cbb3e8227, {\n label: axisLabel,\n unit: axisUnit,\n height: totalHeight\n }),\n $1aa4ef695e55d51d$var$h((0, $fXMLu$SVG), {\n className: \"age-axis-column\",\n style: {\n width: `22px`,\n height: `${totalHeight}px`\n },\n width: 22,\n height: totalHeight\n }, packages.map((group, i)=>{\n const { key: key, scale: scale } = group;\n return $1aa4ef695e55d51d$var$h((0, $fXMLu$AgeAxis), {\n key: key,\n className: \"age-axis\",\n scale: scale,\n tickSizeOuter: 3\n });\n }))\n ]);\n}\nfunction $1aa4ef695e55d51d$export$20d84abfcfa68dfa({ age: age }) {\n /** A cursor that shows the age at a specific point on the age axis. */ const scale = (0, $wtIgl.useCompositeScale)();\n const heightPx = scale(age);\n console.log(age, heightPx);\n if (age == null || heightPx == null) return null;\n return $1aa4ef695e55d51d$var$h(\"div.age-cursor\", {\n style: {\n top: heightPx\n }\n }, [\n $1aa4ef695e55d51d$var$h(\"div.line\"),\n $1aa4ef695e55d51d$var$h((0, $iYfAq.AgeLabel), {\n age: age,\n className: \"label\"\n })\n ]);\n}\n\n\nexport {$1aa4ef695e55d51d$export$64204d5cbb3e8227 as VerticalAxisLabel, $1aa4ef695e55d51d$export$40b6b0e4520eeb34 as CompositeAgeAxis, $1aa4ef695e55d51d$export$ac30ca3cf5df959d as CompositeAgeAxisCore, $1aa4ef695e55d51d$export$20d84abfcfa68dfa as AgeCursor};\n//# sourceMappingURL=column-views.3f032518.js.map\n","import hyper from \"@macrostrat/hyper\";\nimport {\n SVG,\n ColumnAxis,\n ColumnContext,\n ColumnAxisType,\n AgeAxis,\n} from \"@macrostrat/column-components\";\nimport { useContext } from \"react\";\nimport styles from \"./age-axis.module.sass\";\nimport { useCompositeScale, useMacrostratColumnData } from \"./data-provider\";\nimport { Parenthetical } from \"@macrostrat/data-components\";\nimport { PackageScaleLayoutData } from \"./prepare-units/composite-scale\";\nimport { AgeLabel } from \"./unit-details\";\n\nconst h = hyper.styled(styles);\n\nconst AgeAxisCore = ({ ticks, tickSpacing = 40, showDomain = false }) => {\n const { pixelHeight } = useContext(ColumnContext);\n // A tick roughly every 40 pixels\n let v = Math.max(Math.round(pixelHeight / tickSpacing), 1);\n\n return h(\"g.axis\", { transform: \"translate(20 0)\" }, [\n h(ColumnAxis, {\n ticks: v,\n showDomain,\n }),\n ]);\n};\n\nexport function VerticalAxisLabel(props) {\n const { label = \"Age\", unit = \"Ma\", className, height } = props;\n return h(\n \"div.column-axis-label.age-axis-label\",\n { className, style: { height } },\n [\n label,\n \" \",\n h.if(unit)(Parenthetical, { className: \"age-axis-unit\" }, unit),\n ],\n );\n}\n\nexport function CompositeAgeAxis() {\n const { axisType, sections, totalHeight } = useMacrostratColumnData();\n\n const packages = sections.map((section) => {\n return {\n key: `section-${section.section_id}`,\n ...section.scaleInfo,\n };\n });\n\n return h(CompositeAgeAxisCore, {\n axisType,\n packages,\n totalHeight,\n });\n}\n\nexport interface CompositeStratigraphicScaleInfo {\n axisType: ColumnAxisType;\n totalHeight: number;\n packages: PackageScaleLayoutData[];\n}\n\nexport function CompositeAgeAxisCore(props: CompositeStratigraphicScaleInfo) {\n const { axisType, totalHeight, packages } = props;\n\n if (axisType == ColumnAxisType.ORDINAL) {\n return null;\n }\n\n let axisLabel: string = \"Age\";\n let axisUnit = \"Ma\";\n if (axisType == ColumnAxisType.DEPTH) {\n axisLabel = \"Depth\";\n axisUnit = \"m\";\n } else if (axisType == ColumnAxisType.HEIGHT) {\n axisLabel = \"Height\";\n axisUnit = \"m\";\n }\n\n return h([\n h(VerticalAxisLabel, {\n label: axisLabel,\n unit: axisUnit,\n height: totalHeight,\n }),\n h(\n SVG,\n {\n className: \"age-axis-column\",\n style: { width: `22px`, height: `${totalHeight}px` },\n width: 22,\n height: totalHeight,\n },\n packages.map((group, i) => {\n const { key, scale } = group;\n\n return h(AgeAxis, {\n key,\n className: \"age-axis\",\n scale,\n tickSizeOuter: 3,\n });\n }),\n ),\n ]);\n}\n\nexport function AgeCursor({ age }) {\n /** A cursor that shows the age at a specific point on the age axis. */\n const scale = useCompositeScale();\n const heightPx = scale(age);\n\n console.log(age, heightPx);\n\n if (age == null || heightPx == null) {\n return null;\n }\n\n return h(\n \"div.age-cursor\",\n {\n style: {\n top: heightPx,\n },\n },\n [h(\"div.line\"), h(AgeLabel, { age, className: \"label\" })],\n );\n}\n"],"names":["$fXMLu$macrostrathyper","ColumnAxisType","$fXMLu$ColumnAxisType","SVG","$fXMLu$SVG","AgeAxis","$fXMLu$AgeAxis","Parenthetical","$fXMLu$Parenthetical","$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","$1aa4ef695e55d51d$exports","$1aa4ef695e55d51d$export$64204d5cbb3e8227","$1aa4ef695e55d51d$export$40b6b0e4520eeb34","$1aa4ef695e55d51d$export$ac30ca3cf5df959d","$1aa4ef695e55d51d$export$20d84abfcfa68dfa","$6kMGl","$wtIgl","$iYfAq","$1aa4ef695e55d51d$var$h","styled","a","__esModule","default","props","label","unit","className","height","style","if","axisType","sections","totalHeight","useMacrostratColumnData","packages","map","section","key","section_id","scaleInfo","ORDINAL","axisLabel","axisUnit","DEPTH","HEIGHT","width","group","i","scale","tickSizeOuter","age","heightPx","useCompositeScale","console","log","top","AgeLabel","VerticalAxisLabel","CompositeAgeAxis","CompositeAgeAxisCore","AgeCursor"],"version":3,"file":"column-views.3f032518.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.755f726e.js";import"./column-views.33752461.js";import"./column-views.8cfed88b.js";import{ColumnAxisType as e}from"@macrostrat/column-components";import{useMemo as t}from"react";function r(e,t,r,o){Object.defineProperty(e,t,{get:r,set:o,enumerable:!0,configurable:!0})}var o,n=globalThis,a={},i={},s=n.parcelRequirea149;null==s&&((s=function(e){if(e in a)return a[e].exports;if(e in i){var t=i[e];delete i[e];var r={id:e,exports:{}};return a[e]=r,t.call(r.exports,r,r.exports),r.exports}var o=Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}).register=function(e,t){i[e]=t},n.parcelRequirea149=s),s.register;var c={};r(c,"MergeSectionsMode",()=>u),r(c,"usePreparedColumnUnits",()=>g),r(c,"prepareColumnUnits",()=>b),r(c,"preprocessUnits",()=>s("ickj2").preprocessUnits),r(c,"groupUnitsIntoSections",()=>s("ickj2").groupUnitsIntoSections);var p=s("ickj2"),l=s("bBAza"),f=s("iWhRv"),u=((o={}).ALL="all",o.OVERLAPPING="overlapping",o);function g(e,r){return t(()=>b(e,r),[e,...Object.values(r)])}function b(t,r){let o,{t_age:n,b_age:a,mergeSections:i="overlapping",axisType:s,unconformityHeight:c,collapseSmallUnconformities:u=!1}=r,g=t.filter(e=>(0,f.agesOverlap)(e,{t_age:n,b_age:a}));if("all"==i&&s!=e.ORDINAL){let[e,t]=(0,p.getSectionAgeRange)(g);o=[{section_id:0,t_age:n??t,b_age:a??e,units:g}]}else o=(0,p.groupUnitsIntoSections)(g,s);let b=o;"overlapping"==i&&s!=e.ORDINAL&&(b=(0,p.mergeOverlappingSections)(b)),b=(b=b.filter(e=>null!=e)).map(e=>{let{t_age:t,b_age:o}=e;return{...e,t_age:Math.max(t,r.t_age??-1/0),b_age:Math.min(o,r.b_age??1/0)}});let m=(0,l.computeSectionHeights)(b,r);if(u){let e=c??30;"number"==typeof u&&(e=u),m=(0,l.collapseUnconformitiesByPixelHeight)(m,e,r)}let{totalHeight:$,sections:d}=(0,l.finalizeSectionHeights)(m,c),_=d.map(e=>({...e,units:(0,p.preprocessUnits)(e,s)}));return{units:_.reduce((e,t)=>{let{units:r}=t;for(let t of r)e.push(t);return e},[]),totalHeight:$,sections:_}}Object.keys(f).forEach(function(e){"default"===e||"__esModule"===e||Object.prototype.hasOwnProperty.call(c,e)||Object.defineProperty(c,e,{enumerable:!0,get:function(){return f[e]}})});export{u as MergeSectionsMode,g as usePreparedColumnUnits,b as prepareColumnUnits,$57278f42f24b59e5$export$55543e159517d62d as preprocessUnits,$57278f42f24b59e5$export$dfbd00399d639b4c as groupUnitsIntoSections,$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};
|
|
2
|
-
//# sourceMappingURL=column-views.45168c80.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,Q,kB,C,K,+B,A,Q,W,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,ICgCY,E,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,oB,I,G,E,E,yB,I,G,E,E,qB,I,G,E,E,kB,I,A,E,S,e,E,E,E,yB,I,A,E,S,sB,E,I,E,E,S,E,E,S,E,E,SAAA,G,CAAA,E,C,G,G,C,M,E,W,C,cAAA,GAUL,SAAS,EACd,CAAgB,CAChB,CAA6B,EAK7B,OAAO,AAAA,EAAQ,IACN,EAAmB,EAAM,GAC/B,CAAC,KAAS,OAAO,MAAM,CAAC,GAAS,CACtC,CAEO,SAAS,EACd,CAAiB,CACjB,CAA6B,EAI7B,IAeI,EAfE,CAAA,MACJ,CAAK,CAAA,MACL,CAAK,CAAA,cACL,EAAA,aAAA,CAAA,SACA,CAAQ,CAAA,mBACR,CAAkB,CAAA,4BAClB,EAA8B,CAAA,CAAA,CAC/B,CAAG,EAGA,EAAS,EAAM,MAAM,CAAC,AAAC,GAElB,AAAA,CAAA,EAAA,EAAA,WAAU,AAAV,EAAY,EAAG,CAAE,MAAA,EAAO,MAAA,CAAM,IAIvC,GACE,AAAA,OAAA,GACA,GAAY,AAAA,EAAe,OAAO,CAClC,CAEA,GAAM,CAAC,EAAY,EAAW,CAAG,AAAA,CAAA,EAAA,EAAA,kBAAiB,AAAjB,EAAmB,GACpD,EAAY,CACV,CACE,WAAY,EAIZ,MAAO,GAAS,EAChB,MAAO,GAAS,EAChB,MAAO,CACT,EACD,AACH,MACE,EAAY,AAAA,CAAA,EAAA,EAAA,sBAAqB,AAArB,EAAuB,EAAQ,GAO7C,IAAI,EAAW,CAEb,AAAA,CAAA,eAAA,GACA,GAAY,AAAA,EAAe,OAAO,EAElC,CAAA,EAAW,AAAA,CAAA,EAAA,EAAA,wBAAuB,AAAvB,EAAyB,EAJtC,EAYA,EAAW,AALX,CAAA,EAAW,EAAS,MAAM,CAAC,AAAC,GAAM,AAAK,MAAL,EAAlC,EAKoB,GAAG,CAAC,AAAC,IACvB,GAAM,CAAA,MAAE,CAAK,CAAA,MAAE,CAAK,CAAE,CAAG,EACzB,MAAO,CACL,GAAG,CAAO,CACV,MAAO,KAAK,GAAG,CAAC,EAAO,EAAQ,KAAK,EAAI,CAAC,KACzC,MAAO,KAAK,GAAG,CAAC,EAAO,EAAQ,KAAK,EAAI,IAC1C,CACF,GAMA,IAAI,EAAqB,AAAA,CAAA,EAAA,EAAA,qBAAoB,AAApB,EAAsB,EAAU,GAEzD,GAAI,EAAsC,CACxC,IAAI,EAAY,GAAsB,EAClC,AAAsC,CAAA,UAAtC,OAAO,GACT,CAAA,EAAY,CADd,EAIA,EAAqB,AAAA,CAAA,EAAA,EAAA,mCAAkC,AAAlC,EACnB,EACA,EACA,EAEJ,CAGA,GAAM,CAAA,YAAE,CAAW,CAAE,SAAU,CAAS,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,sBAAqB,AAArB,EAC3C,EACA,GAOI,EAAc,EAAU,GAAG,CAAC,AAAC,GAC1B,CAAA,CACL,GAAG,CAAO,CACV,MAAO,AAAA,CAAA,EAAA,EAAA,eAAc,AAAd,EAAgB,EAAS,EAClC,CAAA,GAeF,MAAO,CACL,MATa,EAAY,MAAM,CAAC,CAAC,EAAK,KACtC,GAAM,CAAA,MAAE,CAAK,CAAE,CAAG,EAClB,IAAK,IAAM,KAAQ,EACjB,EAAI,IAAI,CAAC,GAEX,OAAO,CACT,EAAG,EAAE,EAIH,YAAA,EACA,SAAU,CACZ,CACF,C,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,A,C,C,E,A,C,E,U,K,iB,C,K,sB,C,K,kB,C,6C,e,C,6C,sB,C,4C,Y,C,4C,kB,C,6C,W,C,6C,gB,C,6C,W,C,6C,e","sources":["<anon>","packages/column-views/src/prepare-units/index.ts"],"sourcesContent":["import \"./column-views.755f726e.js\";\nimport \"./column-views.33752461.js\";\nimport \"./column-views.8cfed88b.js\";\nimport {ColumnAxisType as $7dPhe$ColumnAxisType} from \"@macrostrat/column-components\";\nimport {useMemo as $7dPhe$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 $031426a894870747$exports = {};\n\n$parcel$export($031426a894870747$exports, \"MergeSectionsMode\", () => $031426a894870747$export$e1644389ce074058);\n$parcel$export($031426a894870747$exports, \"usePreparedColumnUnits\", () => $031426a894870747$export$206a0cb85295e433);\n$parcel$export($031426a894870747$exports, \"prepareColumnUnits\", () => $031426a894870747$export$be8c5a449df4bde4);\n$parcel$export($031426a894870747$exports, \"preprocessUnits\", () => (parcelRequire(\"ickj2\")).preprocessUnits);\n$parcel$export($031426a894870747$exports, \"groupUnitsIntoSections\", () => (parcelRequire(\"ickj2\")).groupUnitsIntoSections);\n\nvar $ickj2 = parcelRequire(\"ickj2\");\n\n\n\nvar $bBAza = parcelRequire(\"bBAza\");\n\nvar $iWhRv = parcelRequire(\"iWhRv\");\nvar $031426a894870747$export$e1644389ce074058 = /*#__PURE__*/ function(MergeSectionsMode) {\n MergeSectionsMode[\"ALL\"] = \"all\";\n MergeSectionsMode[\"OVERLAPPING\"] = \"overlapping\";\n return MergeSectionsMode;\n}({});\nfunction $031426a894870747$export$206a0cb85295e433(data, options) {\n /** This function wraps and memoizes all preparation steps for converting\n * an array of units from the /units route to a form ready for usage.\n */ return (0, $7dPhe$useMemo)(()=>{\n return $031426a894870747$export$be8c5a449df4bde4(data, options);\n }, [\n data,\n ...Object.values(options)\n ]);\n}\nfunction $031426a894870747$export$be8c5a449df4bde4(units, options) {\n /** Prepare units for rendering into Macrostrat columns */ const { t_age: t_age, b_age: b_age, mergeSections: mergeSections = \"overlapping\", axisType: axisType, unconformityHeight: unconformityHeight, collapseSmallUnconformities: collapseSmallUnconformities = false } = options;\n /** Prototype filtering to age range */ let units1 = units.filter((d)=>{\n // Filter units by t_age and b_age, inclusive\n return (0, $iWhRv.agesOverlap)(d, {\n t_age: t_age,\n b_age: b_age\n });\n });\n let sections0;\n if (mergeSections == \"all\" && axisType != (0, $7dPhe$ColumnAxisType).ORDINAL) {\n // For the \"merge sections\" mode, we need to create a single section\n const [b_unit_age, t_unit_age] = (0, $ickj2.getSectionAgeRange)(units1);\n sections0 = [\n {\n section_id: 0,\n /**\n * If ages limits are directly specified, use them to define the section bounds.\n * */ t_age: t_age ?? t_unit_age,\n b_age: b_age ?? b_unit_age,\n units: units1\n }\n ];\n } else sections0 = (0, $ickj2.groupUnitsIntoSections)(units1, axisType);\n /** Merging overlapping sections really only makes sense for age/height/depth\n * columns. Ordinal columns are numbered by section so merging them\n * results in collisions.\n */ let sections = sections0;\n if (mergeSections == \"overlapping\" && axisType != (0, $7dPhe$ColumnAxisType).ORDINAL) sections = (0, $ickj2.mergeOverlappingSections)(sections);\n // Filter out undefined sections just in case\n sections = sections.filter((d)=>d != null);\n /* Now that we are done merging sections, we can ensure that our sections\n * are correctly limited to the t_age and b_age applied to the overall column.\n */ sections = sections.map((section)=>{\n const { t_age: t_age, b_age: b_age } = section;\n return {\n ...section,\n t_age: Math.max(t_age, options.t_age ?? -Infinity),\n b_age: Math.min(b_age, options.b_age ?? Infinity)\n };\n });\n /* Compute pixel scales etc. for sections\n * We need to do this now to determine which unconformities\n * are small enough to collapse.\n */ let sectionsWithScales = (0, $bBAza.computeSectionHeights)(sections, options);\n if (collapseSmallUnconformities ?? false) {\n let threshold = unconformityHeight ?? 30;\n if (typeof collapseSmallUnconformities == \"number\") threshold = collapseSmallUnconformities;\n sectionsWithScales = (0, $bBAza.collapseUnconformitiesByPixelHeight)(sectionsWithScales, threshold, options);\n }\n /** Prepare section scale information using groups */ const { totalHeight: totalHeight, sections: sections2 } = (0, $bBAza.finalizeSectionHeights)(sectionsWithScales, unconformityHeight);\n /** For each section, find units that are overlapping.\n * We do this after merging sections so that we can\n * handle cases where there are overlapping units across sections\n * */ const sectionsOut = sections2.map((section)=>{\n return {\n ...section,\n units: (0, $ickj2.preprocessUnits)(section, axisType)\n };\n });\n /** Reconstitute the units so that they are sorted by section and properly enhanced.\n * This is mostly important so that unit keyboard navigation\n * predictably selects adjacent units.\n */ const units2 = sectionsOut.reduce((acc, group)=>{\n const { units: units } = group;\n for (const unit of units)acc.push(unit);\n return acc;\n }, []);\n return {\n units: units2,\n totalHeight: totalHeight,\n sections: sectionsOut\n };\n}\n$parcel$exportWildcard($031426a894870747$exports, $iWhRv);\n\n\nexport {$031426a894870747$export$e1644389ce074058 as MergeSectionsMode, $031426a894870747$export$206a0cb85295e433 as usePreparedColumnUnits, $031426a894870747$export$be8c5a449df4bde4 as prepareColumnUnits, $57278f42f24b59e5$export$55543e159517d62d as preprocessUnits, $57278f42f24b59e5$export$dfbd00399d639b4c as groupUnitsIntoSections, $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.45168c80.js.map\n","import {\n getSectionAgeRange,\n groupUnitsIntoSections,\n mergeOverlappingSections,\n preprocessUnits,\n} from \"./helpers\";\nimport { ColumnAxisType } from \"@macrostrat/column-components\";\nimport { useMemo } from \"react\";\nimport type { ExtUnit } from \"./helpers\";\nimport { UnitLong } from \"@macrostrat/api-types\";\nimport {\n collapseUnconformitiesByPixelHeight,\n ColumnScaleOptions,\n CompositeColumnData,\n computeSectionHeights,\n finalizeSectionHeights,\n PackageLayoutData,\n} from \"./composite-scale\";\nimport type { SectionInfo } from \"./helpers\";\nimport { agesOverlap, getUnitHeightRange, unitsOverlap } from \"./utils\";\n\nexport * from \"./utils\";\nexport { preprocessUnits, groupUnitsIntoSections };\n\nexport interface PrepareColumnOptions extends ColumnScaleOptions {\n axisType: ColumnAxisType;\n t_age?: number;\n b_age?: number;\n mergeSections?: MergeSectionsMode;\n collapseSmallUnconformities?: boolean | number;\n}\n\nexport enum MergeSectionsMode {\n ALL = \"all\",\n OVERLAPPING = \"overlapping\",\n}\n\nexport interface PreparedColumnData extends CompositeColumnData {\n sections: PackageLayoutData[];\n units: ExtUnit[];\n}\n\nexport function usePreparedColumnUnits(\n data: UnitLong[],\n options: PrepareColumnOptions,\n): PreparedColumnData {\n /** This function wraps and memoizes all preparation steps for converting\n * an array of units from the /units route to a form ready for usage.\n */\n return useMemo(() => {\n return prepareColumnUnits(data, options);\n }, [data, ...Object.values(options)]);\n}\n\nexport function prepareColumnUnits(\n units: UnitLong[],\n options: PrepareColumnOptions,\n): PreparedColumnData {\n /** Prepare units for rendering into Macrostrat columns */\n\n const {\n t_age,\n b_age,\n mergeSections = MergeSectionsMode.OVERLAPPING,\n axisType,\n unconformityHeight,\n collapseSmallUnconformities = false,\n } = options;\n\n /** Prototype filtering to age range */\n let units1 = units.filter((d) => {\n // Filter units by t_age and b_age, inclusive\n return agesOverlap(d, { t_age, b_age });\n });\n\n let sections0: SectionInfo<UnitLong>[];\n if (\n mergeSections == MergeSectionsMode.ALL &&\n axisType != ColumnAxisType.ORDINAL\n ) {\n // For the \"merge sections\" mode, we need to create a single section\n const [b_unit_age, t_unit_age] = getSectionAgeRange(units1);\n sections0 = [\n {\n section_id: 0,\n /**\n * If ages limits are directly specified, use them to define the section bounds.\n * */\n t_age: t_age ?? t_unit_age,\n b_age: b_age ?? b_unit_age,\n units: units1,\n },\n ];\n } else {\n sections0 = groupUnitsIntoSections(units1, axisType);\n }\n\n /** Merging overlapping sections really only makes sense for age/height/depth\n * columns. Ordinal columns are numbered by section so merging them\n * results in collisions.\n */\n let sections = sections0;\n if (\n mergeSections == MergeSectionsMode.OVERLAPPING &&\n axisType != ColumnAxisType.ORDINAL\n ) {\n sections = mergeOverlappingSections(sections);\n }\n // Filter out undefined sections just in case\n sections = sections.filter((d) => d != null);\n\n /* Now that we are done merging sections, we can ensure that our sections\n * are correctly limited to the t_age and b_age applied to the overall column.\n */\n sections = sections.map((section) => {\n const { t_age, b_age } = section;\n return {\n ...section,\n t_age: Math.max(t_age, options.t_age ?? -Infinity),\n b_age: Math.min(b_age, options.b_age ?? Infinity),\n };\n });\n\n /* Compute pixel scales etc. for sections\n * We need to do this now to determine which unconformities\n * are small enough to collapse.\n */\n let sectionsWithScales = computeSectionHeights(sections, options);\n\n if (collapseSmallUnconformities ?? false) {\n let threshold = unconformityHeight ?? 30;\n if (typeof collapseSmallUnconformities == \"number\") {\n threshold = collapseSmallUnconformities;\n }\n\n sectionsWithScales = collapseUnconformitiesByPixelHeight(\n sectionsWithScales,\n threshold,\n options,\n );\n }\n\n /** Prepare section scale information using groups */\n const { totalHeight, sections: sections2 } = finalizeSectionHeights(\n sectionsWithScales,\n unconformityHeight,\n );\n\n /** For each section, find units that are overlapping.\n * We do this after merging sections so that we can\n * handle cases where there are overlapping units across sections\n * */\n const sectionsOut = sections2.map((section) => {\n return {\n ...section,\n units: preprocessUnits(section, axisType),\n };\n });\n\n /** Reconstitute the units so that they are sorted by section and properly enhanced.\n * This is mostly important so that unit keyboard navigation\n * predictably selects adjacent units.\n */\n const units2 = sectionsOut.reduce((acc, group) => {\n const { units } = group;\n for (const unit of units) {\n acc.push(unit);\n }\n return acc;\n }, []);\n\n return {\n units: units2,\n totalHeight,\n sections: sectionsOut,\n };\n}\n"],"names":["ColumnAxisType","$7dPhe$ColumnAxisType","useMemo","$7dPhe$useMemo","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","MergeSectionsMode","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$031426a894870747$exports","$031426a894870747$export$e1644389ce074058","$031426a894870747$export$206a0cb85295e433","$031426a894870747$export$be8c5a449df4bde4","preprocessUnits","groupUnitsIntoSections","$ickj2","$bBAza","$iWhRv","data","options","values","units","sections0","t_age","b_age","mergeSections","axisType","unconformityHeight","collapseSmallUnconformities","units1","filter","d","agesOverlap","ORDINAL","b_unit_age","t_unit_age","getSectionAgeRange","section_id","sections","mergeOverlappingSections","map","section","Math","max","Infinity","min","sectionsWithScales","computeSectionHeights","threshold","collapseUnconformitiesByPixelHeight","totalHeight","sections2","finalizeSectionHeights","sectionsOut","reduce","acc","group","unit","push","keys","forEach","key","prototype","hasOwnProperty","source","usePreparedColumnUnits","prepareColumnUnits","$57278f42f24b59e5$export$55543e159517d62d","$57278f42f24b59e5$export$dfbd00399d639b4c","$f811753598b339f3$export$f1a15f539858307","unitsOverlap","$f811753598b339f3$export$70e712e2ac0237a","getUnitHeightRange","$f811753598b339f3$export$d92a67740c050efb","$f811753598b339f3$export$ab14c04795685c55","createUnitSorter","$f811753598b339f3$export$d0c8ecbd4ed8940c","ensureArray","$f811753598b339f3$export$97de5b0a6b4e4dac","ensureRealFloat"],"version":3,"file":"column-views.45168c80.js.map","sourceRoot":"../../../../"}
|
|
@@ -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.b180e8c9.js\";\nimport \"./column-views.6bba8c57.js\";\nimport \"./column-views.13c4ea85.js\";\nimport \"./column-views.af275c48.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.507635e2.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.507635e2.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.99fb74c0.js";import"./column-views.507635e2.js";import"./column-views.3eeac38d.js";import"./column-views.fc05616e.js";import"./column-views.0bb1ec93.js";import"./column-views.78d3f3c5.js";import"./column-views.372bbee2.js";import"./column-views.3f032518.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.556e8f69.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,EACA,4BAAA,CACF,GAEA,GAAI,AAAoB,IAApB,EAAS,MAAM,CACjB,OAAO,EACL,6BACA,EAAE,EAAe,CACf,MAAO,eACP,YAAa,oCACb,KAAM,cACR,IAIJ,IAAI,EAAY,EAAE,EAAa,CAAE,UAAW,EAAK,GAAG,CAAI,AAAC,EAAG,CAC1D,EACA,EAAE,EAAE,CAAC,GAAiB,EAAA,oBAAmB,EACzC,EAAE,EAAE,CAAC,GAAoB,EAAA,sBAAqB,CAAG,CAAE,MAAA,CAAM,GAC1D,EAKG,EAAsB,GAAsB,CAAA,EAkBhD,MAjBI,CAAA,GAAmB,AAAgB,MAAhB,GAAwB,AAAkB,MAAlB,CAAkB,GAC/D,CAAA,EAAsB,CAAA,CADxB,EAII,GACF,CAAA,EAAO,EACL,EAAA,qBAAoB,CACpB,CACE,UAAW,EACX,eAAA,EACA,aAAA,EACA,MAAA,CACF,EACA,EADA,EAKG,EACL,EAAA,4BAA2B,CAC3B,CAAE,MAAA,EAAO,SAAA,EAAU,YAAA,EAAa,SAAA,CAAS,EACzC,EAEJ,CAMA,SAAS,EAAY,CAAuB,EAC1C,GAAM,CAAA,cACJ,EAAgB,EAAA,aAAY,AAAA,CAAA,mBAC5B,EAAqB,CAAA,CAAA,CAAA,WACrB,EAAa,CAAA,CAAA,CACb,MAAO,EAAS,GAAG,CACnB,YAAa,EAAe,GAAG,CAC/B,gBAAiB,EAAmB,CAAA,CAAI,CAAA,UACxC,CAAS,CAAA,UACT,CAAS,CAAA,UACT,EAAY,CAAA,CAAA,CAAA,SACZ,CAAQ,CAAA,cACR,CAAa,CAAA,gBACb,CAAe,CAAA,mBACf,CAAkB,CAAA,YAClB,CAAW,CACZ,CAAG,EAEE,CAAA,SAAE,CAAQ,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAGjB,EAAc,CACd,CAAA,EAFQ,GAGV,CAAA,EAHU,CAEZ,EAGA,IAAI,EAAkB,CAClB,CAAA,EAAc,AANN,EAMc,IACxB,CAAA,EAAkB,CAAA,CADpB,EAIA,IAAI,EAAiB,GAAiB,CAAA,EAMtC,OALI,AAAmB,MAAnB,GACF,CAAA,EAAiB,CAAA,CADnB,EAGA,EAAiB,GAAY,AAAA,EAAe,GAAG,EAAI,EAE5C,EACL,EACA,CACE,GAAG,AA2BT,SACE,EAA8C,IAAI,EAKlD,IAAM,EAAW,AAAA,CAAA,EAAA,EAAA,wBAAuB,AAAvB,IACX,EAAU,AAAA,EACd,AAAC,IACC,IAAW,KAAM,KAAM,EACzB,EACA,CAAC,EAAS,EAIN,EAAQ,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,IAER,EAAc,AAAA,EAClB,AAAC,IACC,IAAM,EAAS,EAAM,MAAM,CACzB,EAAI,OAAO,CAAG,EAAI,aAAa,CAAC,qBAAqB,GAAG,GAAG,EAE7D,IAAe,KAAM,EAAQ,EAC/B,EACA,CAAC,EAAO,EAAa,EAGjB,EAAa,AAAA,EAAY,KAC7B,IAAe,KAAM,KAAM,KAC7B,EAAG,CAAC,EAAa,SAEjB,AAAI,AAAgB,MAAhB,EACK,CACL,QAAA,EACA,YAAa,KAAA,EACb,YAAa,KAAA,EACb,WAAY,KAAA,CACd,EAGK,CAAE,YAAA,EAAa,YAAa,EAAa,WAAA,EAAY,QAAA,CAAQ,CACtE,EApE+B,EAAY,CACrC,UAAA,CACF,EACA,EAAE,aAAc,CAAE,IAAK,CAAU,EAAG,CAClC,EAAE,EAAA,gBAAe,EACjB,EAAE,EAAE,CAAC,GAAgB,EAAA,kBAAiB,CAAG,CAAE,OAAQ,CAAgB,GACnE,EAAE,EAAA,cAAa,CAAG,CAChB,cAAA,EACA,WAAA,EACA,MA5BM,EA6BN,YAAA,EACA,gBAAA,EACA,UAAA,EACA,mBAAA,EACA,mBAAA,CACF,GACA,EACD,EAEL,CAuDO,SAAS,EAAgB,CAA2B,EACzD,GAAM,CAAA,UAAE,CAAS,CAAE,GAAG,EAAM,CAAG,EACzB,EAAW,AAAA,IAEjB,OAAO,EAAE,uBAAwB,CAC/B,UAAW,AAAA,EAAW,EAAW,CAC/B,YAAa,GAAU,WAAa,CAAA,CACtC,GACA,GAAG,CAAI,AACT,EACF,CAEO,SAAS,EAAgB,CAAA,KAAE,CAAI,CAAA,aAAE,EAAe,CAAA,CAAA,CAAM,SAC3D,AAAI,AAAQ,MAAR,EAAqB,KAClB,EAAE,kBAAmB,CAC1B,EAAE,uBAAwB,CACxB,EAAE,KAAM,EAAK,QAAQ,EACrB,EAAE,EAAE,CAAC,GAAc,KAAM,EAAE,EAAA,UAAS,CAAG,CAAE,GAAI,EAAK,MAAM,AAAC,IAC1D,EACD,EAAE,EAAW,CAAE,IAAK,CAAA,EAAM,MAAO,QAAS,MAAO,EAAK,SAAS,AAAC,GAChE,EAAE,EAAA,eAAc,CAAG,CACjB,KAAM,EAAK,IAAI,CACf,OAAQ,CAAA,EACR,IAAK,CAAA,EACL,UAAW,aACb,GACD,CACH,Q,K,M,C,K,e,C,K,e","sources":["<anon>","packages/column-views/src/column.ts"],"sourcesContent":["import \"./column-views.99fb74c0.js\";\nimport \"./column-views.507635e2.js\";\nimport \"./column-views.3eeac38d.js\";\nimport \"./column-views.fc05616e.js\";\nimport \"./column-views.0bb1ec93.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport \"./column-views.372bbee2.js\";\nimport \"./column-views.3f032518.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.556e8f69.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.556e8f69.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.8cfed88b.js";import"./column-views.78d3f3c5.js";import"./column-views.a501cea0.js";import"./column-views.c18d5bf5.js";import"./column-views.3345cd7a.js";import e from"@macrostrat/hyper";import{useMemo as t}from"react";var n=globalThis,i={},o={},l=n.parcelRequirea149;null==l&&((l=function(e){if(e in i)return i[e].exports;if(e in o){var t=o[e];delete o[e];var n={id:e,exports:{}};return i[e]=n,t.call(n.exports,n,n.exports),n.exports}var l=Error("Cannot find module '"+e+"'");throw l.code="MODULE_NOT_FOUND",l}).register=function(e,t){o[e]=t},n.parcelRequirea149=l),l.register,Object.defineProperty({},"PBDBFossilsColumn",{get:()=>p,set:void 0,enumerable:!0,configurable:!0});var r=l("iWhRv"),a=l("wtIgl"),u=l("dx7no"),s=l("6KYbn"),c=l("jDygK");let d=e.styled(c&&c.__esModule?c.default:c);function f(e){let{note:t,spacing:n}=e,{data:i,unit:o}=t,l=i,r=null;if(i.length>5){let e=i.length-5;l=i.slice(0,5),r=d("li.too-many",`and ${e} more`)}return d("ul.fossil-collections",[l.map(e=>d("li.collection",{key:e.cltn_id},[d(m,{collection:e})])),r])}function m({collection:e}){return d("a.link-id",{href:`https://paleobiodb.org/classic/basicCollectionSearch?collection_no=${e.cltn_id}`},e.cltn_name)}function p({columnID:e,color:n="magenta"}){let i=(0,u.useFossilData)({col_id:e}),{axisType:o,units:l}=(0,a.useMacrostratColumnData)(),c=t(()=>{if(null==i||null==l)return[];let e=Array.from(i.values()).map(e=>{let t;return{data:e,unit:l.find((t=e[0],e=>e.unit_id==t.unit_id))}}).filter(e=>null!=e.unit);return e.sort((e,t)=>l.indexOf(e.unit)-l.indexOf(t.unit)),e.map(e=>{let{unit:t,data:n}=e,i=(0,r.getUnitHeightRange)(t,o);return{top_height:i[1],height:i[0],data:n,unit:t,id:t.unit_id}})},[i,l]),m=t(()=>e=>d(f,{color:n,...e}),[500,n]);return null==i||null==l?null:d("div.dz-spectra",d(s.ColumnNotes,{width:500,paddingLeft:40,notes:c,noteComponent:m}))}export{p as PBDBFossilsColumn};
|
|
2
|
-
//# sourceMappingURL=column-views.5f05b73f.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,M,mB,A,Q,W,C,K,O,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,O,c,C,C,E,oB,C,I,I,E,I,K,E,W,C,E,a,C,C,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SCUA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAgBvB,SAAS,EAAW,CAAsB,EACxC,GAAM,CAAA,KAAE,CAAI,CAAA,QAAE,CAAO,CAAE,CAAG,EACpB,CAAA,KAAE,CAAI,CAAA,KAAE,CAAI,CAAE,CAAG,EAEnB,EAAK,EAEL,EAAU,KACd,GAAI,EAAK,MAAM,CAAG,EAAG,CACnB,IAAM,EAAI,EAAK,MAAM,CAAG,EACxB,EAAK,EAAK,KAAK,CAAC,EAAG,GACnB,EAAU,EAAE,cAAe,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAC5C,CAEA,OAAO,EAAE,wBAAyB,CAChC,EAAG,GAAG,CAAC,AAAC,GACC,EAAE,gBAAiB,CAAE,IAAK,EAAE,OAAO,AAAC,EAAG,CAC5C,EAAE,EAAoB,CAAE,WAAY,CAAE,GACvC,GAEH,EACD,CACH,CAEA,SAAS,EAAmB,CAAA,WAAE,CAAU,CAAkC,EACxE,OAAO,EACL,YACA,CACE,KAAM,CAAC,mEAAmE,EAAE,EAAW,OAAO,CAAA,CAAE,AAClG,EACA,EAAW,SAAS,CAExB,CAIO,SAAS,EAAkB,CAAA,SAAE,CAAQ,CAAA,MAAE,EAAQ,SAAA,CAAW,EAC/D,IAAM,EAAO,AAAA,CAAA,EAAA,EAAA,aAAY,AAAZ,EAAc,CAAE,OAAQ,CAAS,GACxC,CAAA,SAAE,CAAQ,CAAA,MAAE,CAAK,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAEtB,EAAe,AAAA,EAAQ,KAC3B,GAAI,AAAQ,MAAR,GAAgB,AAAS,MAAT,EAAe,MAAO,EAAE,CAC5C,IAAI,EAAc,MAAM,IAAI,CAAC,EAAK,MAAM,IACrC,GAAG,CAAC,AAAC,QATU,QAUP,CACL,KAAM,EACN,KAAM,EAAM,IAAI,EAZJ,EAYkB,CAAC,CAAC,EAAE,CAZf,AAAC,GAAM,EAAE,OAAO,EAAI,EAAG,OAAO,EAanD,IAED,MAAM,CAAC,AAAC,GAAM,AAAU,MAAV,EAAE,IAAI,EAQvB,OANA,EAAY,IAAI,CAAC,CAAC,EAAG,IAGZ,AAFI,EAAM,OAAO,CAAC,EAAE,IAAI,EACpB,EAAM,OAAO,CAAC,EAAE,IAAI,GAI1B,EAAY,GAAG,CAAC,AAAC,IACtB,GAAM,CAAA,KAAE,CAAI,CAAA,KAAE,CAAI,CAAE,CAAG,EACjB,EAAc,AAAA,CAAA,EAAA,EAAA,kBAAiB,AAAjB,EAAmB,EAAM,GAE7C,MAAO,CACL,WAAY,CAAW,CAAC,EAAE,CAC1B,OAAQ,CAAW,CAAC,EAAE,CACtB,KAAA,EACA,KAAA,EACA,GAAI,EAAK,OAAO,AAClB,CACF,EACF,EAAG,CAAC,EAAM,EAAM,EAKV,EAAgB,AAAA,EAAQ,IACrB,AAAC,GACC,EAAE,EAAY,CACnB,MAAA,EACA,GAAG,CAAK,AACV,GAED,CAVW,IAUH,EAAM,SAEjB,AAAI,AAAQ,MAAR,GAAgB,AAAS,MAAT,EAAsB,KAEnC,EACL,iBACA,EAAE,EAAA,WAAU,CAAG,CACb,MAjBU,IAkBV,YAjBgB,GAkBhB,MAAA,EACA,cAAA,CACF,GAEJ,Q,K,iB","sources":["<anon>","packages/column-views/src/facets/fossils/index.ts"],"sourcesContent":["import \"./column-views.8cfed88b.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport \"./column-views.a501cea0.js\";\nimport \"./column-views.c18d5bf5.js\";\nimport \"./column-views.3345cd7a.js\";\nimport $2jHE4$macrostrathyper from \"@macrostrat/hyper\";\nimport {useMemo as $2jHE4$useMemo} 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 $ea2f112131e22f14$exports = {};\n\n$parcel$export($ea2f112131e22f14$exports, \"PBDBFossilsColumn\", () => $ea2f112131e22f14$export$554267114407ef68);\n\nvar $iWhRv = parcelRequire(\"iWhRv\");\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\n\nvar $dx7no = parcelRequire(\"dx7no\");\n\nvar $6KYbn = parcelRequire(\"6KYbn\");\n\n\nvar $jDygK = parcelRequire(\"jDygK\");\nconst $ea2f112131e22f14$var$h = (0, $2jHE4$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($jDygK))));\nfunction $ea2f112131e22f14$var$FossilInfo(props) {\n const { note: note, spacing: spacing } = props;\n const { data: data, unit: unit } = note;\n let d1 = data;\n let tooMany = null;\n if (data.length > 5) {\n const n = data.length - 5;\n d1 = data.slice(0, 5);\n tooMany = $ea2f112131e22f14$var$h(\"li.too-many\", `and ${n} more`);\n }\n return $ea2f112131e22f14$var$h(\"ul.fossil-collections\", [\n d1.map((d)=>{\n return $ea2f112131e22f14$var$h(\"li.collection\", {\n key: d.cltn_id\n }, [\n $ea2f112131e22f14$var$h($ea2f112131e22f14$var$PBDBCollectionLink, {\n collection: d\n })\n ]);\n }),\n tooMany\n ]);\n}\nfunction $ea2f112131e22f14$var$PBDBCollectionLink({ collection: collection }) {\n return $ea2f112131e22f14$var$h(\"a.link-id\", {\n href: `https://paleobiodb.org/classic/basicCollectionSearch?collection_no=${collection.cltn_id}`\n }, collection.cltn_name);\n}\nconst $ea2f112131e22f14$var$matchingUnit = (dz)=>(d)=>d.unit_id == dz.unit_id;\nfunction $ea2f112131e22f14$export$554267114407ef68({ columnID: columnID, color: color = \"magenta\" }) {\n const data = (0, $dx7no.useFossilData)({\n col_id: columnID\n });\n const { axisType: axisType, units: units } = (0, $wtIgl.useMacrostratColumnData)();\n const notes = (0, $2jHE4$useMemo)(()=>{\n if (data == null || units == null) return [];\n let unitRefData = Array.from(data.values()).map((d)=>{\n return {\n data: d,\n unit: units.find($ea2f112131e22f14$var$matchingUnit(d[0]))\n };\n }).filter((d)=>d.unit != null);\n unitRefData.sort((a, b)=>{\n const v1 = units.indexOf(a.unit);\n const v2 = units.indexOf(b.unit);\n return v1 - v2;\n });\n return unitRefData.map((d)=>{\n const { unit: unit, data: data } = d;\n const heightRange = (0, $iWhRv.getUnitHeightRange)(unit, axisType);\n return {\n top_height: heightRange[1],\n height: heightRange[0],\n data: data,\n unit: unit,\n id: unit.unit_id\n };\n });\n }, [\n data,\n units\n ]);\n const width = 500;\n const paddingLeft = 40;\n const noteComponent = (0, $2jHE4$useMemo)(()=>{\n return (props)=>{\n return $ea2f112131e22f14$var$h($ea2f112131e22f14$var$FossilInfo, {\n color: color,\n ...props\n });\n };\n }, [\n width,\n color\n ]);\n if (data == null || units == null) return null;\n return $ea2f112131e22f14$var$h(\"div.dz-spectra\", $ea2f112131e22f14$var$h((0, $6KYbn.ColumnNotes), {\n width: width,\n paddingLeft: paddingLeft,\n notes: notes,\n noteComponent: noteComponent\n }));\n}\n\n\nexport {$ea2f112131e22f14$export$554267114407ef68 as PBDBFossilsColumn};\n//# sourceMappingURL=column-views.5f05b73f.js.map\n","import { getUnitHeightRange } from \"../../prepare-units\";\nimport { useMacrostratColumnData } from \"../../data-provider\";\nimport hyper from \"@macrostrat/hyper\";\nimport { PBDBCollection, useFossilData } from \"./provider\";\nimport { useMacrostratUnits } from \"../../data-provider\";\nimport { ColumnNotes } from \"../../notes\";\nimport { useMemo } from \"react\";\nimport type { IUnit } from \"../../units\";\nimport styles from \"./index.module.sass\";\n\nconst h = hyper.styled(styles);\n\ninterface FossilItemProps {\n note: {\n data: PBDBCollection[];\n unit?: IUnit;\n };\n spacing?: {\n below?: number;\n above?: number;\n };\n width?: number;\n height?: number;\n color?: string;\n}\n\nfunction FossilInfo(props: FossilItemProps) {\n const { note, spacing } = props;\n const { data, unit } = note;\n\n let d1 = data;\n\n let tooMany = null;\n if (data.length > 5) {\n const n = data.length - 5;\n d1 = data.slice(0, 5);\n tooMany = h(\"li.too-many\", `and ${n} more`);\n }\n\n return h(\"ul.fossil-collections\", [\n d1.map((d) => {\n return h(\"li.collection\", { key: d.cltn_id }, [\n h(PBDBCollectionLink, { collection: d }),\n ]);\n }),\n tooMany,\n ]);\n}\n\nfunction PBDBCollectionLink({ collection }: { collection: PBDBCollection }) {\n return h(\n \"a.link-id\",\n {\n href: `https://paleobiodb.org/classic/basicCollectionSearch?collection_no=${collection.cltn_id}`,\n },\n collection.cltn_name,\n );\n}\n\nconst matchingUnit = (dz) => (d) => d.unit_id == dz.unit_id;\n\nexport function PBDBFossilsColumn({ columnID, color = \"magenta\" }) {\n const data = useFossilData({ col_id: columnID });\n const { axisType, units } = useMacrostratColumnData();\n\n const notes: any[] = useMemo(() => {\n if (data == null || units == null) return [];\n let unitRefData = Array.from(data.values())\n .map((d) => {\n return {\n data: d,\n unit: units.find(matchingUnit(d[0])),\n };\n })\n .filter((d) => d.unit != null);\n\n unitRefData.sort((a, b) => {\n const v1 = units.indexOf(a.unit);\n const v2 = units.indexOf(b.unit);\n return v1 - v2;\n });\n\n return unitRefData.map((d) => {\n const { unit, data } = d;\n const heightRange = getUnitHeightRange(unit, axisType);\n\n return {\n top_height: heightRange[1],\n height: heightRange[0],\n data,\n unit,\n id: unit.unit_id,\n };\n });\n }, [data, units]);\n\n const width = 500;\n const paddingLeft = 40;\n\n const noteComponent = useMemo(() => {\n return (props) => {\n return h(FossilInfo, {\n color,\n ...props,\n });\n };\n }, [width, color]);\n\n if (data == null || units == null) return null;\n\n return h(\n \"div.dz-spectra\",\n h(ColumnNotes, {\n width,\n paddingLeft,\n notes,\n noteComponent,\n }),\n );\n}\n"],"names":["$2jHE4$macrostrathyper","useMemo","$2jHE4$useMemo","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","Object","defineProperty","get","$ea2f112131e22f14$export$554267114407ef68","set","s","enumerable","configurable","$iWhRv","$wtIgl","$dx7no","$6KYbn","$jDygK","$ea2f112131e22f14$var$h","styled","a","__esModule","default","$ea2f112131e22f14$var$FossilInfo","props","note","spacing","data","unit","d1","tooMany","length","n","slice","map","d","key","cltn_id","$ea2f112131e22f14$var$PBDBCollectionLink","collection","href","cltn_name","columnID","color","useFossilData","col_id","axisType","units","useMacrostratColumnData","notes","unitRefData","Array","from","values","dz","find","unit_id","filter","sort","b","v1","indexOf","heightRange","getUnitHeightRange","top_height","height","noteComponent","ColumnNotes","width","paddingLeft","PBDBFossilsColumn"],"version":3,"file":"column-views.5f05b73f.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
function e(e,t,n,i){Object.defineProperty(e,t,{get:n,set:i,enumerable:!0,configurable:!0})}var t,n,i,a,r,U,o,d,s,c,l,D,G,X,_,p,u,b,f,h,g={};e(g,"clickable",()=>t,e=>t=e),e(g,"color-swatch",()=>n,e=>n=e),e(g,"discourage-break",()=>i,e=>i=e),e(g,"hidden-actions",()=>a,e=>a=e),e(g,"hidden-actions-container",()=>r,e=>r=e),e(g,"identifier",()=>U,e=>U=e),e(g,"interval-proportions",()=>o,e=>o=e),e(g,"legend-panel-header",()=>d,e=>d=e),e(g,"no-units",()=>s,e=>s=e),e(g,"proportion",()=>c,e=>c=e),e(g,"refs",()=>l,e=>l=e),e(g,"sep",()=>D,e=>D=e),e(g,"spacer",()=>G,e=>G=e),e(g,"strat-name-id",()=>X,e=>X=e),e(g,"strat-name-text",()=>_,e=>_=e),e(g,"title-container",()=>p,e=>p=e),e(g,"unit-details-content",()=>u,e=>u=e),e(g,"unit-details-content-holder",()=>b,e=>b=e),e(g,"unit-details-panel",()=>f,e=>f=e),e(g,"unit-id",()=>h,e=>h=e),t="XUD4UG_clickable",n="XUD4UG_color-swatch",i="XUD4UG_discourage-break",a="XUD4UG_hidden-actions",r="XUD4UG_hidden-actions-container",U="XUD4UG_identifier",o="XUD4UG_interval-proportions",d="XUD4UG_legend-panel-header",s="XUD4UG_no-units",c="XUD4UG_proportion",l="XUD4UG_refs",D="XUD4UG_sep",G="XUD4UG_spacer",X="XUD4UG_strat-name-id",_="XUD4UG_strat-name-text",p="XUD4UG_title-container",u="XUD4UG_unit-details-content",b="XUD4UG_unit-details-content-holder",f="XUD4UG_unit-details-panel",h="XUD4UG_unit-id";export{g as default};
|
|
2
|
-
//# sourceMappingURL=column-views.6ae7bb69.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,EACA,EACA,EACA,EACA,EACA,EACA,EACA,E,E,C,E,E,E,Y,I,E,A,G,E,G,E,E,e,I,E,A,G,E,G,E,E,mB,I,E,A,G,E,G,E,E,iB,I,E,A,G,E,G,E,E,2B,I,E,A,G,E,G,E,E,a,I,E,A,G,E,G,E,E,uB,I,E,A,G,E,G,E,E,sB,I,E,A,G,E,G,E,E,W,I,E,A,G,E,G,E,E,a,I,E,A,G,E,G,E,E,O,I,E,A,G,E,G,E,E,M,I,E,A,G,E,G,E,E,S,I,E,A,G,E,G,E,E,gB,I,E,A,G,E,G,E,E,kB,I,E,A,G,E,G,E,E,kB,I,E,A,G,E,G,E,E,uB,I,E,A,G,E,G,E,E,8B,I,E,A,G,E,G,E,E,qB,I,E,A,G,E,G,E,E,U,I,E,A,G,E,GAnBA,EAA8B,mBAC9B,EAAiC,sBACjC,EAAqC,0BACrC,EAAmC,wBACnC,EAA6C,kCAC7C,EAA+B,oBAC/B,EAAyC,8BACzC,EAAwC,6BACxC,EAA6B,kBAC7B,EAA+B,oBAC/B,EAAyB,cACzB,EAAwB,aACxB,EAA2B,gBAC3B,EAAkC,uBAClC,EAAoC,yBACpC,EAAoC,yBACpC,EAAyC,8BACzC,EAAgD,qCAChD,EAAuC,4BACvC,EAA4B,wB,K,O","sources":["<anon>","packages/column-views/src/unit-details/panel.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 $fdcbde10b14fc2b9$exports = {};\n\n$parcel$export($fdcbde10b14fc2b9$exports, \"clickable\", () => $fdcbde10b14fc2b9$export$60d5655c6babb2a0, (v) => $fdcbde10b14fc2b9$export$60d5655c6babb2a0 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"color-swatch\", () => $fdcbde10b14fc2b9$export$def51519e6441a17, (v) => $fdcbde10b14fc2b9$export$def51519e6441a17 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"discourage-break\", () => $fdcbde10b14fc2b9$export$46755bac45eea0a4, (v) => $fdcbde10b14fc2b9$export$46755bac45eea0a4 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"hidden-actions\", () => $fdcbde10b14fc2b9$export$b36b9e25cc36a950, (v) => $fdcbde10b14fc2b9$export$b36b9e25cc36a950 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"hidden-actions-container\", () => $fdcbde10b14fc2b9$export$76ccfd847a96b3a0, (v) => $fdcbde10b14fc2b9$export$76ccfd847a96b3a0 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"identifier\", () => $fdcbde10b14fc2b9$export$c2ab62c7bf24634, (v) => $fdcbde10b14fc2b9$export$c2ab62c7bf24634 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"interval-proportions\", () => $fdcbde10b14fc2b9$export$ff33e8e065b5d268, (v) => $fdcbde10b14fc2b9$export$ff33e8e065b5d268 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"legend-panel-header\", () => $fdcbde10b14fc2b9$export$ce652ed9af8e3365, (v) => $fdcbde10b14fc2b9$export$ce652ed9af8e3365 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"no-units\", () => $fdcbde10b14fc2b9$export$aff88130074c0d5f, (v) => $fdcbde10b14fc2b9$export$aff88130074c0d5f = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"proportion\", () => $fdcbde10b14fc2b9$export$5a14da41381fe262, (v) => $fdcbde10b14fc2b9$export$5a14da41381fe262 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"refs\", () => $fdcbde10b14fc2b9$export$21666b427502ea6d, (v) => $fdcbde10b14fc2b9$export$21666b427502ea6d = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"sep\", () => $fdcbde10b14fc2b9$export$5aee1a5bd9743d8f, (v) => $fdcbde10b14fc2b9$export$5aee1a5bd9743d8f = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"spacer\", () => $fdcbde10b14fc2b9$export$8cc075c801fd6817, (v) => $fdcbde10b14fc2b9$export$8cc075c801fd6817 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"strat-name-id\", () => $fdcbde10b14fc2b9$export$3ab27000c02e6186, (v) => $fdcbde10b14fc2b9$export$3ab27000c02e6186 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"strat-name-text\", () => $fdcbde10b14fc2b9$export$8c87307ec8883986, (v) => $fdcbde10b14fc2b9$export$8c87307ec8883986 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"title-container\", () => $fdcbde10b14fc2b9$export$8a49b8d8484a58d8, (v) => $fdcbde10b14fc2b9$export$8a49b8d8484a58d8 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"unit-details-content\", () => $fdcbde10b14fc2b9$export$1c30616b5f94c6bc, (v) => $fdcbde10b14fc2b9$export$1c30616b5f94c6bc = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"unit-details-content-holder\", () => $fdcbde10b14fc2b9$export$1dcba08cee5317f8, (v) => $fdcbde10b14fc2b9$export$1dcba08cee5317f8 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"unit-details-panel\", () => $fdcbde10b14fc2b9$export$f94e3d1eb82ee550, (v) => $fdcbde10b14fc2b9$export$f94e3d1eb82ee550 = v);\n$parcel$export($fdcbde10b14fc2b9$exports, \"unit-id\", () => $fdcbde10b14fc2b9$export$e22f189945dfce76, (v) => $fdcbde10b14fc2b9$export$e22f189945dfce76 = v);\nvar $fdcbde10b14fc2b9$export$60d5655c6babb2a0;\nvar $fdcbde10b14fc2b9$export$def51519e6441a17;\nvar $fdcbde10b14fc2b9$export$46755bac45eea0a4;\nvar $fdcbde10b14fc2b9$export$b36b9e25cc36a950;\nvar $fdcbde10b14fc2b9$export$76ccfd847a96b3a0;\nvar $fdcbde10b14fc2b9$export$c2ab62c7bf24634;\nvar $fdcbde10b14fc2b9$export$ff33e8e065b5d268;\nvar $fdcbde10b14fc2b9$export$ce652ed9af8e3365;\nvar $fdcbde10b14fc2b9$export$aff88130074c0d5f;\nvar $fdcbde10b14fc2b9$export$5a14da41381fe262;\nvar $fdcbde10b14fc2b9$export$21666b427502ea6d;\nvar $fdcbde10b14fc2b9$export$5aee1a5bd9743d8f;\nvar $fdcbde10b14fc2b9$export$8cc075c801fd6817;\nvar $fdcbde10b14fc2b9$export$3ab27000c02e6186;\nvar $fdcbde10b14fc2b9$export$8c87307ec8883986;\nvar $fdcbde10b14fc2b9$export$8a49b8d8484a58d8;\nvar $fdcbde10b14fc2b9$export$1c30616b5f94c6bc;\nvar $fdcbde10b14fc2b9$export$1dcba08cee5317f8;\nvar $fdcbde10b14fc2b9$export$f94e3d1eb82ee550;\nvar $fdcbde10b14fc2b9$export$e22f189945dfce76;\n$fdcbde10b14fc2b9$export$60d5655c6babb2a0 = `XUD4UG_clickable`;\n$fdcbde10b14fc2b9$export$def51519e6441a17 = `XUD4UG_color-swatch`;\n$fdcbde10b14fc2b9$export$46755bac45eea0a4 = `XUD4UG_discourage-break`;\n$fdcbde10b14fc2b9$export$b36b9e25cc36a950 = `XUD4UG_hidden-actions`;\n$fdcbde10b14fc2b9$export$76ccfd847a96b3a0 = `XUD4UG_hidden-actions-container`;\n$fdcbde10b14fc2b9$export$c2ab62c7bf24634 = `XUD4UG_identifier`;\n$fdcbde10b14fc2b9$export$ff33e8e065b5d268 = `XUD4UG_interval-proportions`;\n$fdcbde10b14fc2b9$export$ce652ed9af8e3365 = `XUD4UG_legend-panel-header`;\n$fdcbde10b14fc2b9$export$aff88130074c0d5f = `XUD4UG_no-units`;\n$fdcbde10b14fc2b9$export$5a14da41381fe262 = `XUD4UG_proportion`;\n$fdcbde10b14fc2b9$export$21666b427502ea6d = `XUD4UG_refs`;\n$fdcbde10b14fc2b9$export$5aee1a5bd9743d8f = `XUD4UG_sep`;\n$fdcbde10b14fc2b9$export$8cc075c801fd6817 = `XUD4UG_spacer`;\n$fdcbde10b14fc2b9$export$3ab27000c02e6186 = `XUD4UG_strat-name-id`;\n$fdcbde10b14fc2b9$export$8c87307ec8883986 = `XUD4UG_strat-name-text`;\n$fdcbde10b14fc2b9$export$8a49b8d8484a58d8 = `XUD4UG_title-container`;\n$fdcbde10b14fc2b9$export$1c30616b5f94c6bc = `XUD4UG_unit-details-content`;\n$fdcbde10b14fc2b9$export$1dcba08cee5317f8 = `XUD4UG_unit-details-content-holder`;\n$fdcbde10b14fc2b9$export$f94e3d1eb82ee550 = `XUD4UG_unit-details-panel`;\n$fdcbde10b14fc2b9$export$e22f189945dfce76 = `XUD4UG_unit-id`;\n\n\nexport {$fdcbde10b14fc2b9$exports as default};\n//# sourceMappingURL=column-views.6ae7bb69.js.map\n",null],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$fdcbde10b14fc2b9$export$60d5655c6babb2a0","$fdcbde10b14fc2b9$export$def51519e6441a17","$fdcbde10b14fc2b9$export$46755bac45eea0a4","$fdcbde10b14fc2b9$export$b36b9e25cc36a950","$fdcbde10b14fc2b9$export$76ccfd847a96b3a0","$fdcbde10b14fc2b9$export$c2ab62c7bf24634","$fdcbde10b14fc2b9$export$ff33e8e065b5d268","$fdcbde10b14fc2b9$export$ce652ed9af8e3365","$fdcbde10b14fc2b9$export$aff88130074c0d5f","$fdcbde10b14fc2b9$export$5a14da41381fe262","$fdcbde10b14fc2b9$export$21666b427502ea6d","$fdcbde10b14fc2b9$export$5aee1a5bd9743d8f","$fdcbde10b14fc2b9$export$8cc075c801fd6817","$fdcbde10b14fc2b9$export$3ab27000c02e6186","$fdcbde10b14fc2b9$export$8c87307ec8883986","$fdcbde10b14fc2b9$export$8a49b8d8484a58d8","$fdcbde10b14fc2b9$export$1c30616b5f94c6bc","$fdcbde10b14fc2b9$export$1dcba08cee5317f8","$fdcbde10b14fc2b9$export$f94e3d1eb82ee550","$fdcbde10b14fc2b9$export$e22f189945dfce76","$fdcbde10b14fc2b9$exports","default"],"version":3,"file":"column-views.6ae7bb69.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.8cfed88b.js";import{group as e}from"d3-array";import{ColumnAxisType as t}from"@macrostrat/column-components";import{compareAgeRanges as n}from"@macrostrat/stratigraphy-utils";var i=globalThis,r={},a={},o=i.parcelRequirea149;null==o&&((o=function(e){if(e in r)return r[e].exports;if(e in a){var t=a[e];delete a[e];var n={id:e,exports:{}};return r[e]=n,t.call(n.exports,n,n.exports),n.exports}var i=Error("Cannot find module '"+e+"'");throw i.code="MODULE_NOT_FOUND",i}).register=function(e,t){a[e]=t},i.parcelRequirea149=o),o.register;var s=o("iWhRv");function g(e,n=t.AGE){let i=e.units.map((...e)=>(function(e,n,i,r=t.AGE){let a=i.filter(t=>t.unit_id!=e.unit_id&&(0,s.unitsOverlap)(e,t,r)),o=(0,s.getUnitHeightRange)(e,r),g=a.some(e=>(0,s.getUnitHeightRange)(e,r)[0]<o[0]+.001),u=0;return 1==a.length&&(u=1),{...e,bottomOverlap:g,column:u,overlappingUnits:a.map(e=>e.unit_id)}})(...e,0));for(let r of i){let a=i.filter(e=>r.overlappingUnits.includes(e.unit_id)).map(e=>e.column);if(a.includes(r.column)){let e=0;for(;a.includes(e);)e++;r.column=e}if(n==t.AGE){let[t,i]=(0,s.getUnitHeightRange)(r,n);t>e.b_age&&(r.b_clip_pos=e.b_age),i<e.t_age&&(r.t_clip_pos=e.t_age)}}return i}function u(i,r=t.AGE){if(r!=t.AGE)return function(e,i=t.AGE){let r=[];for(let t of e){let e=(0,s.getUnitHeightRange)(t,i),a=r.find(t=>n(e,t.heightRange));null==a?r.push({heightRange:e,units:[t]}):(a.units.push(t),a.heightRange=[Math.max(a.heightRange[0],e[0]),Math.min(a.heightRange[1],e[1])])}return r.map((e,t)=>{let[n,i]=l(e.units);return{section_id:-t,t_age:i,b_age:n,units:e.units}})}(i,r);let a=Array.from(e(i,e=>e.section_id)),o=(0,s.createUnitSorter)(r),g=a.map(([e,t])=>{let[n,i]=l(t);return t.sort(o),{section_id:e,t_age:i,b_age:n,units:t}}),p=(0,s.createUnitSorter)(t.AGE);return g.sort(p),g}function l(e){let t=e.map(e=>e.t_age);return[Math.max(...e.map(e=>e.b_age)),Math.min(...t)]}function p(e){let[t,...n]=e,i=[t];for(let e of n){let t=i[i.length-1];if(t.b_age<e.t_age||t.t_age>e.b_age){i.push(e);continue}t.section_id=[...(0,s.ensureArray)(t.section_id),...(0,s.ensureArray)(e.section_id)],t.units.push(...e.units),t.b_age=Math.max(t.b_age,e.b_age),t.t_age=Math.min(t.t_age,e.t_age)}return i}export{g as preprocessUnits,u as groupUnitsIntoSections,l as getSectionAgeRange,p as mergeOverlappingSections};
|
|
2
|
-
//# sourceMappingURL=column-views.755f726e.js.map
|