@macrostrat/map-interface 1.6.0 → 2.0.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 +8 -0
- package/dist/container.cjs +131 -0
- package/dist/container.cjs.map +1 -0
- package/dist/container.d.ts +17 -0
- package/dist/container.js +131 -0
- package/dist/container.js.map +1 -0
- package/dist/context-panel/index.cjs +79 -0
- package/dist/context-panel/index.cjs.map +1 -0
- package/dist/context-panel/index.d.ts +36 -0
- package/dist/context-panel/index.js +79 -0
- package/dist/context-panel/index.js.map +1 -0
- package/dist/context-panel/main.module.sass.cjs +16 -0
- package/dist/context-panel/main.module.sass.cjs.map +1 -0
- package/dist/context-panel/main.module.sass.js +16 -0
- package/dist/context-panel/main.module.sass.js.map +1 -0
- package/dist/controls.cjs +54 -0
- package/dist/controls.cjs.map +1 -0
- package/dist/controls.d.ts +3 -0
- package/dist/controls.js +54 -0
- package/dist/controls.js.map +1 -0
- package/dist/dev/index.d.ts +4 -0
- package/dist/dev/main.module.sass.cjs +30 -0
- package/dist/dev/main.module.sass.cjs.map +1 -0
- package/dist/dev/main.module.sass.js +30 -0
- package/dist/dev/main.module.sass.js.map +1 -0
- package/dist/dev/map-page.cjs +155 -0
- package/dist/dev/map-page.cjs.map +1 -0
- package/dist/dev/map-page.d.ts +26 -0
- package/dist/dev/map-page.js +155 -0
- package/dist/dev/map-page.js.map +1 -0
- package/dist/dev/tile-extent.cjs +39 -0
- package/dist/dev/tile-extent.cjs.map +1 -0
- package/dist/dev/tile-extent.d.ts +10 -0
- package/dist/dev/tile-extent.js +39 -0
- package/dist/dev/tile-extent.js.map +1 -0
- package/dist/dev/vector-tile-features.cjs +212 -0
- package/dist/dev/vector-tile-features.cjs.map +1 -0
- package/dist/dev/vector-tile-features.d.ts +29 -0
- package/dist/dev/vector-tile-features.js +212 -0
- package/dist/dev/vector-tile-features.js.map +1 -0
- package/dist/dev/xray.cjs +93 -0
- package/dist/dev/xray.cjs.map +1 -0
- package/dist/dev/xray.d.ts +41 -0
- package/dist/dev/xray.js +93 -0
- package/dist/dev/xray.js.map +1 -0
- package/dist/expansion-panel/headers.cjs +20 -0
- package/dist/expansion-panel/headers.cjs.map +1 -0
- package/dist/expansion-panel/headers.d.ts +1 -0
- package/dist/expansion-panel/headers.js +20 -0
- package/dist/expansion-panel/headers.js.map +1 -0
- package/dist/expansion-panel/index.cjs +125 -0
- package/dist/expansion-panel/index.cjs.map +1 -0
- package/dist/expansion-panel/index.d.ts +18 -0
- package/dist/expansion-panel/index.js +125 -0
- package/dist/expansion-panel/index.js.map +1 -0
- package/dist/expansion-panel/main.module.sass.cjs +27 -0
- package/dist/expansion-panel/main.module.sass.cjs.map +1 -0
- package/dist/expansion-panel/main.module.sass.js +27 -0
- package/dist/expansion-panel/main.module.sass.js.map +1 -0
- package/dist/hash-string.cjs +81 -0
- package/dist/hash-string.cjs.map +1 -0
- package/dist/hash-string.d.ts +12 -0
- package/dist/hash-string.js +81 -0
- package/dist/hash-string.js.map +1 -0
- package/dist/helpers.cjs +162 -0
- package/dist/helpers.cjs.map +1 -0
- package/dist/helpers.d.ts +34 -0
- package/dist/helpers.js +162 -0
- package/dist/helpers.js.map +1 -0
- package/dist/index.cjs +73 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.js +73 -0
- package/dist/index.js.map +1 -0
- package/dist/location-details/fetch.d.ts +4 -0
- package/dist/location-details/fossil-collections/collections.cjs +68 -0
- package/dist/location-details/fossil-collections/collections.cjs.map +1 -0
- package/dist/location-details/fossil-collections/collections.d.ts +3 -0
- package/dist/location-details/fossil-collections/collections.js +68 -0
- package/dist/location-details/fossil-collections/collections.js.map +1 -0
- package/dist/location-details/fossil-collections/index.cjs +13 -0
- package/dist/location-details/fossil-collections/index.cjs.map +1 -0
- package/dist/location-details/fossil-collections/index.d.ts +3 -0
- package/dist/location-details/fossil-collections/index.js +13 -0
- package/dist/location-details/fossil-collections/index.js.map +1 -0
- package/dist/location-details/fossil-collections/main.module.sass.cjs +8 -0
- package/dist/location-details/fossil-collections/main.module.sass.cjs.map +1 -0
- package/dist/location-details/fossil-collections/main.module.sass.js +8 -0
- package/dist/location-details/fossil-collections/main.module.sass.js.map +1 -0
- package/dist/location-details/index.d.ts +5 -0
- package/dist/location-details/info-blocks.cjs +81 -0
- package/dist/location-details/info-blocks.cjs.map +1 -0
- package/dist/location-details/info-blocks.d.ts +9 -0
- package/dist/location-details/info-blocks.js +81 -0
- package/dist/location-details/info-blocks.js.map +1 -0
- package/dist/location-details/info-blocks.module.sass.cjs +18 -0
- package/dist/location-details/info-blocks.module.sass.cjs.map +1 -0
- package/dist/location-details/info-blocks.module.sass.js +18 -0
- package/dist/location-details/info-blocks.module.sass.js.map +1 -0
- package/dist/location-details/macrostrat-linked.cjs +355 -0
- package/dist/location-details/macrostrat-linked.cjs.map +1 -0
- package/dist/location-details/macrostrat-linked.d.ts +1 -0
- package/dist/location-details/macrostrat-linked.js +355 -0
- package/dist/location-details/macrostrat-linked.js.map +1 -0
- package/dist/location-details/main.module.sass.cjs +20 -0
- package/dist/location-details/main.module.sass.cjs.map +1 -0
- package/dist/location-details/main.module.sass.js +20 -0
- package/dist/location-details/main.module.sass.js.map +1 -0
- package/dist/location-details/physiography.cjs +30 -0
- package/dist/location-details/physiography.cjs.map +1 -0
- package/dist/location-details/physiography.d.ts +1 -0
- package/dist/location-details/physiography.js +30 -0
- package/dist/location-details/physiography.js.map +1 -0
- package/dist/location-details/reg-strat.cjs +90 -0
- package/dist/location-details/reg-strat.cjs.map +1 -0
- package/dist/location-details/reg-strat.d.ts +6 -0
- package/dist/location-details/reg-strat.js +90 -0
- package/dist/location-details/reg-strat.js.map +1 -0
- package/dist/location-details/utils/formatting.cjs +16 -0
- package/dist/location-details/utils/formatting.cjs.map +1 -0
- package/dist/location-details/utils/formatting.d.ts +16 -0
- package/dist/location-details/utils/formatting.js +16 -0
- package/dist/location-details/utils/formatting.js.map +1 -0
- package/dist/location-details/utils/fossils.cjs +149 -0
- package/dist/location-details/utils/fossils.cjs.map +1 -0
- package/dist/location-details/utils/fossils.d.ts +3 -0
- package/dist/location-details/utils/fossils.js +149 -0
- package/dist/location-details/utils/fossils.js.map +1 -0
- package/dist/location-details/utils/index.cjs +15 -0
- package/dist/location-details/utils/index.cjs.map +1 -0
- package/dist/location-details/utils/index.d.ts +12 -0
- package/dist/location-details/utils/index.js +15 -0
- package/dist/location-details/utils/index.js.map +1 -0
- package/dist/location-details/xdd-panel/article.cjs +62 -0
- package/dist/location-details/xdd-panel/article.cjs.map +1 -0
- package/dist/location-details/xdd-panel/article.d.ts +1 -0
- package/dist/location-details/xdd-panel/article.js +62 -0
- package/dist/location-details/xdd-panel/article.js.map +1 -0
- package/dist/location-details/xdd-panel/index.cjs +69 -0
- package/dist/location-details/xdd-panel/index.cjs.map +1 -0
- package/dist/location-details/xdd-panel/index.d.ts +18 -0
- package/dist/location-details/xdd-panel/index.js +69 -0
- package/dist/location-details/xdd-panel/index.js.map +1 -0
- package/dist/location-details/xdd-panel/journal.cjs +25 -0
- package/dist/{cjs/map-interface.3ca778c5.js.map → location-details/xdd-panel/journal.cjs.map} +1 -1
- package/dist/location-details/xdd-panel/journal.d.ts +20 -0
- package/dist/location-details/xdd-panel/journal.js +25 -0
- package/dist/location-details/xdd-panel/journal.js.map +1 -0
- package/dist/location-panel/header.cjs +109 -0
- package/dist/location-panel/header.cjs.map +1 -0
- package/dist/location-panel/header.d.ts +16 -0
- package/dist/location-panel/header.js +109 -0
- package/dist/location-panel/header.js.map +1 -0
- package/dist/location-panel/index.cjs +42 -0
- package/dist/location-panel/index.cjs.map +1 -0
- package/dist/location-panel/index.d.ts +15 -0
- package/dist/location-panel/index.js +42 -0
- package/dist/location-panel/index.js.map +1 -0
- package/dist/location-panel/main.module.sass.cjs +23 -0
- package/dist/location-panel/main.module.sass.cjs.map +1 -0
- package/dist/location-panel/main.module.sass.js +23 -0
- package/dist/location-panel/main.module.sass.js.map +1 -0
- package/dist/main.module.sass.cjs +70 -0
- package/dist/main.module.sass.cjs.map +1 -0
- package/dist/main.module.sass.js +70 -0
- package/dist/main.module.sass.js.map +1 -0
- package/dist/map-interface.css +1060 -0
- package/dist/map-view.cjs +200 -0
- package/dist/map-view.cjs.map +1 -0
- package/dist/map-view.d.ts +41 -0
- package/dist/map-view.js +200 -0
- package/dist/map-view.js.map +1 -0
- package/dist/utils.cjs +35 -0
- package/dist/utils.cjs.map +1 -0
- package/dist/utils.d.ts +7 -0
- package/dist/utils.js +35 -0
- package/dist/utils.js.map +1 -0
- package/package.json +51 -48
- package/src/context-panel/main.module.sass +3 -3
- package/src/dev/main.module.sass +1 -1
- package/src/expansion-panel/main.module.sass +4 -4
- package/src/location-details/fossil-collections/main.module.sass +1 -1
- package/src/location-details/info-blocks.module.sass +35 -0
- package/src/location-details/info-blocks.ts +1 -1
- package/src/location-details/macrostrat-linked.ts +1 -1
- package/src/location-details/{main.module.styl → main.module.sass} +21 -21
- package/src/location-panel/main.module.sass +3 -3
- package/src/main.module.sass +15 -15
- package/dist/cjs/index.js +0 -54
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/map-interface.0e252a74.js +0 -88
- package/dist/cjs/map-interface.0e252a74.js.map +0 -1
- package/dist/cjs/map-interface.11056b04.js +0 -390
- package/dist/cjs/map-interface.11056b04.js.map +0 -1
- package/dist/cjs/map-interface.12e5d744.js +0 -123
- package/dist/cjs/map-interface.12e5d744.js.map +0 -1
- package/dist/cjs/map-interface.1b386e07.css +0 -111
- package/dist/cjs/map-interface.1b386e07.css.map +0 -1
- package/dist/cjs/map-interface.1faa2839.js +0 -14
- package/dist/cjs/map-interface.1faa2839.js.map +0 -1
- package/dist/cjs/map-interface.225c9340.js +0 -71
- package/dist/cjs/map-interface.225c9340.js.map +0 -1
- package/dist/cjs/map-interface.23d5c62c.js +0 -135
- package/dist/cjs/map-interface.23d5c62c.js.map +0 -1
- package/dist/cjs/map-interface.24a1c14e.js +0 -46
- package/dist/cjs/map-interface.24a1c14e.js.map +0 -1
- package/dist/cjs/map-interface.26497065.css +0 -92
- package/dist/cjs/map-interface.26497065.css.map +0 -1
- package/dist/cjs/map-interface.31742bd3.js +0 -65
- package/dist/cjs/map-interface.31742bd3.js.map +0 -1
- package/dist/cjs/map-interface.354aaa39.js +0 -135
- package/dist/cjs/map-interface.354aaa39.js.map +0 -1
- package/dist/cjs/map-interface.368b346c.css +0 -45
- package/dist/cjs/map-interface.368b346c.css.map +0 -1
- package/dist/cjs/map-interface.3ca778c5.js +0 -57
- package/dist/cjs/map-interface.4267aa3a.js +0 -68
- package/dist/cjs/map-interface.4267aa3a.js.map +0 -1
- package/dist/cjs/map-interface.441d3b83.css +0 -69
- package/dist/cjs/map-interface.441d3b83.css.map +0 -1
- package/dist/cjs/map-interface.46d1c77b.js +0 -189
- package/dist/cjs/map-interface.46d1c77b.js.map +0 -1
- package/dist/cjs/map-interface.4a3d9662.js +0 -112
- package/dist/cjs/map-interface.4a3d9662.js.map +0 -1
- package/dist/cjs/map-interface.4a401c1f.css +0 -584
- package/dist/cjs/map-interface.4a401c1f.css.map +0 -1
- package/dist/cjs/map-interface.4c5addca.js +0 -89
- package/dist/cjs/map-interface.4c5addca.js.map +0 -1
- package/dist/cjs/map-interface.5a4f4529.js +0 -38
- package/dist/cjs/map-interface.5a4f4529.js.map +0 -1
- package/dist/cjs/map-interface.633d24e6.css +0 -22
- package/dist/cjs/map-interface.633d24e6.css.map +0 -1
- package/dist/cjs/map-interface.67001b26.js +0 -66
- package/dist/cjs/map-interface.67001b26.js.map +0 -1
- package/dist/cjs/map-interface.69b2e2a9.js +0 -25
- package/dist/cjs/map-interface.69b2e2a9.js.map +0 -1
- package/dist/cjs/map-interface.70458f75.js +0 -26
- package/dist/cjs/map-interface.70458f75.js.map +0 -1
- package/dist/cjs/map-interface.7170f35e.js +0 -65
- package/dist/cjs/map-interface.7170f35e.js.map +0 -1
- package/dist/cjs/map-interface.7509f2c1.js +0 -29
- package/dist/cjs/map-interface.7509f2c1.js.map +0 -1
- package/dist/cjs/map-interface.7bdbe4b6.js +0 -220
- package/dist/cjs/map-interface.7bdbe4b6.js.map +0 -1
- package/dist/cjs/map-interface.8d67cc21.js +0 -100
- package/dist/cjs/map-interface.8d67cc21.js.map +0 -1
- package/dist/cjs/map-interface.99a048dc.js +0 -79
- package/dist/cjs/map-interface.99a048dc.js.map +0 -1
- package/dist/cjs/map-interface.a3c2552f.js +0 -33
- package/dist/cjs/map-interface.a3c2552f.js.map +0 -1
- package/dist/cjs/map-interface.a960d638.js +0 -185
- package/dist/cjs/map-interface.a960d638.js.map +0 -1
- package/dist/cjs/map-interface.a9fe0f5d.js +0 -170
- package/dist/cjs/map-interface.a9fe0f5d.js.map +0 -1
- package/dist/cjs/map-interface.abe5fe65.js +0 -50
- package/dist/cjs/map-interface.abe5fe65.js.map +0 -1
- package/dist/cjs/map-interface.adb45df9.css +0 -191
- package/dist/cjs/map-interface.adb45df9.css.map +0 -1
- package/dist/cjs/map-interface.ae4c52a6.css +0 -52
- package/dist/cjs/map-interface.ae4c52a6.css.map +0 -1
- package/dist/cjs/map-interface.bda26b27.js +0 -134
- package/dist/cjs/map-interface.bda26b27.js.map +0 -1
- package/dist/cjs/map-interface.c5061c96.js +0 -36
- package/dist/cjs/map-interface.c5061c96.js.map +0 -1
- package/dist/cjs/map-interface.cd485bb4.js +0 -41
- package/dist/cjs/map-interface.cd485bb4.js.map +0 -1
- package/dist/cjs/map-interface.cf6c9a68.js +0 -208
- package/dist/cjs/map-interface.cf6c9a68.js.map +0 -1
- package/dist/cjs/map-interface.e74ded77.js +0 -135
- package/dist/cjs/map-interface.e74ded77.js.map +0 -1
- package/dist/cjs/map-interface.e975d65c.js +0 -23
- package/dist/cjs/map-interface.e975d65c.js.map +0 -1
- package/dist/cjs/map-interface.e9bcd5c0.js +0 -268
- package/dist/cjs/map-interface.e9bcd5c0.js.map +0 -1
- package/dist/cjs/map-interface.f8826069.js +0 -46
- package/dist/cjs/map-interface.f8826069.js.map +0 -1
- package/dist/cjs/map-interface.f9611285.js +0 -32
- package/dist/cjs/map-interface.f9611285.js.map +0 -1
- package/dist/cjs/map-interface.ffb109ef.js +0 -46
- package/dist/cjs/map-interface.ffb109ef.js.map +0 -1
- package/dist/esm/index.d.ts +0 -334
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/index.js +0 -27
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/map-interface.01826888.js +0 -67
- package/dist/esm/map-interface.01826888.js.map +0 -1
- package/dist/esm/map-interface.021cf79b.js +0 -18
- package/dist/esm/map-interface.021cf79b.js.map +0 -1
- package/dist/esm/map-interface.065737fe.js +0 -172
- package/dist/esm/map-interface.065737fe.js.map +0 -1
- package/dist/esm/map-interface.0b1aa8f2.js +0 -81
- package/dist/esm/map-interface.0b1aa8f2.js.map +0 -1
- package/dist/esm/map-interface.1843c708.js +0 -83
- package/dist/esm/map-interface.1843c708.js.map +0 -1
- package/dist/esm/map-interface.1d38872e.js +0 -385
- package/dist/esm/map-interface.1d38872e.js.map +0 -1
- package/dist/esm/map-interface.1db44824.js +0 -24
- package/dist/esm/map-interface.1db44824.js.map +0 -1
- package/dist/esm/map-interface.22ea3934.js +0 -41
- package/dist/esm/map-interface.22ea3934.js.map +0 -1
- package/dist/esm/map-interface.2350f590.js +0 -48
- package/dist/esm/map-interface.2350f590.js.map +0 -1
- package/dist/esm/map-interface.27587c50.js +0 -126
- package/dist/esm/map-interface.27587c50.js.map +0 -1
- package/dist/esm/map-interface.2892a5fb.js +0 -178
- package/dist/esm/map-interface.2892a5fb.js.map +0 -1
- package/dist/esm/map-interface.3033c825.js +0 -40
- package/dist/esm/map-interface.3033c825.js.map +0 -1
- package/dist/esm/map-interface.3f07937e.js +0 -124
- package/dist/esm/map-interface.3f07937e.js.map +0 -1
- package/dist/esm/map-interface.473f1f2b.js +0 -28
- package/dist/esm/map-interface.473f1f2b.js.map +0 -1
- package/dist/esm/map-interface.50edfdfd.js +0 -74
- package/dist/esm/map-interface.50edfdfd.js.map +0 -1
- package/dist/esm/map-interface.557de808.js +0 -13
- package/dist/esm/map-interface.557de808.js.map +0 -1
- package/dist/esm/map-interface.578a7505.js +0 -130
- package/dist/esm/map-interface.578a7505.js.map +0 -1
- package/dist/esm/map-interface.59896194.js +0 -37
- package/dist/esm/map-interface.59896194.js.map +0 -1
- package/dist/esm/map-interface.64c62ba1.js +0 -62
- package/dist/esm/map-interface.64c62ba1.js.map +0 -1
- package/dist/esm/map-interface.672c2e0b.js +0 -182
- package/dist/esm/map-interface.672c2e0b.js.map +0 -1
- package/dist/esm/map-interface.6e65dcaf.js +0 -58
- package/dist/esm/map-interface.6e65dcaf.js.map +0 -1
- package/dist/esm/map-interface.70d6a7ff.js +0 -16
- package/dist/esm/map-interface.70d6a7ff.js.map +0 -1
- package/dist/esm/map-interface.72b1bfba.js +0 -94
- package/dist/esm/map-interface.72b1bfba.js.map +0 -1
- package/dist/esm/map-interface.786d6e58.js +0 -258
- package/dist/esm/map-interface.786d6e58.js.map +0 -1
- package/dist/esm/map-interface.7ea8a1e0.js +0 -40
- package/dist/esm/map-interface.7ea8a1e0.js.map +0 -1
- package/dist/esm/map-interface.9152234b.js +0 -114
- package/dist/esm/map-interface.9152234b.js.map +0 -1
- package/dist/esm/map-interface.957e414c.js +0 -52
- package/dist/esm/map-interface.957e414c.js.map +0 -1
- package/dist/esm/map-interface.a03a7a23.js +0 -16
- package/dist/esm/map-interface.a03a7a23.js.map +0 -1
- package/dist/esm/map-interface.a8c94450.js +0 -55
- package/dist/esm/map-interface.a8c94450.js.map +0 -1
- package/dist/esm/map-interface.bdef07d2.js +0 -34
- package/dist/esm/map-interface.bdef07d2.js.map +0 -1
- package/dist/esm/map-interface.c2a61cbf.js +0 -62
- package/dist/esm/map-interface.c2a61cbf.js.map +0 -1
- package/dist/esm/map-interface.c52c2fec.js +0 -130
- package/dist/esm/map-interface.c52c2fec.js.map +0 -1
- package/dist/esm/map-interface.c99b53b6.js +0 -43
- package/dist/esm/map-interface.c99b53b6.js.map +0 -1
- package/dist/esm/map-interface.ca1ee406.js +0 -214
- package/dist/esm/map-interface.ca1ee406.js.map +0 -1
- package/dist/esm/map-interface.e418553b.js +0 -107
- package/dist/esm/map-interface.e418553b.js.map +0 -1
- package/dist/esm/map-interface.e63d862d.js +0 -15
- package/dist/esm/map-interface.e63d862d.js.map +0 -1
- package/dist/esm/map-interface.f7b8bdb7.js +0 -192
- package/dist/esm/map-interface.f7b8bdb7.js.map +0 -1
- package/dist/node/index.js +0 -2
- package/dist/node/index.js.map +0 -1
- package/dist/node/map-interface.07882229.css +0 -2
- package/dist/node/map-interface.07882229.css.map +0 -1
- package/dist/node/map-interface.0e71fd95.js +0 -2
- package/dist/node/map-interface.0e71fd95.js.map +0 -1
- package/dist/node/map-interface.10f5ef81.js +0 -2
- package/dist/node/map-interface.10f5ef81.js.map +0 -1
- package/dist/node/map-interface.1a5eecac.js +0 -2
- package/dist/node/map-interface.1a5eecac.js.map +0 -1
- package/dist/node/map-interface.1be49df8.css +0 -2
- package/dist/node/map-interface.1be49df8.css.map +0 -1
- package/dist/node/map-interface.254e457a.js +0 -2
- package/dist/node/map-interface.254e457a.js.map +0 -1
- package/dist/node/map-interface.2d12b35c.js +0 -2
- package/dist/node/map-interface.2d12b35c.js.map +0 -1
- package/dist/node/map-interface.33b7734a.js +0 -2
- package/dist/node/map-interface.33b7734a.js.map +0 -1
- package/dist/node/map-interface.3ea55e0c.js +0 -2
- package/dist/node/map-interface.3ea55e0c.js.map +0 -1
- package/dist/node/map-interface.41e916d1.js +0 -2
- package/dist/node/map-interface.41e916d1.js.map +0 -1
- package/dist/node/map-interface.42ef081d.css +0 -2
- package/dist/node/map-interface.42ef081d.css.map +0 -1
- package/dist/node/map-interface.47b81f95.js +0 -2
- package/dist/node/map-interface.47b81f95.js.map +0 -1
- package/dist/node/map-interface.4b4f8fdf.js +0 -2
- package/dist/node/map-interface.4b4f8fdf.js.map +0 -1
- package/dist/node/map-interface.4df6e2c7.js +0 -2
- package/dist/node/map-interface.4df6e2c7.js.map +0 -1
- package/dist/node/map-interface.5736d6f8.js +0 -2
- package/dist/node/map-interface.5736d6f8.js.map +0 -1
- package/dist/node/map-interface.593e09ed.js +0 -2
- package/dist/node/map-interface.593e09ed.js.map +0 -1
- package/dist/node/map-interface.62b147ce.js +0 -2
- package/dist/node/map-interface.62b147ce.js.map +0 -1
- package/dist/node/map-interface.6314eef1.js +0 -2
- package/dist/node/map-interface.6314eef1.js.map +0 -1
- package/dist/node/map-interface.713361a4.js +0 -2
- package/dist/node/map-interface.713361a4.js.map +0 -1
- package/dist/node/map-interface.722387fb.js +0 -2
- package/dist/node/map-interface.722387fb.js.map +0 -1
- package/dist/node/map-interface.78e05655.js +0 -2
- package/dist/node/map-interface.78e05655.js.map +0 -1
- package/dist/node/map-interface.7aaa58c9.js +0 -2
- package/dist/node/map-interface.7aaa58c9.js.map +0 -1
- package/dist/node/map-interface.83fa8028.js +0 -2
- package/dist/node/map-interface.83fa8028.js.map +0 -1
- package/dist/node/map-interface.9317d050.js +0 -2
- package/dist/node/map-interface.9317d050.js.map +0 -1
- package/dist/node/map-interface.971af4bc.js +0 -2
- package/dist/node/map-interface.971af4bc.js.map +0 -1
- package/dist/node/map-interface.9824c03a.js +0 -2
- package/dist/node/map-interface.9824c03a.js.map +0 -1
- package/dist/node/map-interface.992dea73.js +0 -2
- package/dist/node/map-interface.992dea73.js.map +0 -1
- package/dist/node/map-interface.a1252092.css +0 -2
- package/dist/node/map-interface.a1252092.css.map +0 -1
- package/dist/node/map-interface.a8a16138.js +0 -2
- package/dist/node/map-interface.a8a16138.js.map +0 -1
- package/dist/node/map-interface.ae3d2d83.js +0 -2
- package/dist/node/map-interface.ae3d2d83.js.map +0 -1
- package/dist/node/map-interface.b0e1ad1b.js +0 -2
- package/dist/node/map-interface.b0e1ad1b.js.map +0 -1
- package/dist/node/map-interface.b14f08e8.js +0 -2
- package/dist/node/map-interface.b14f08e8.js.map +0 -1
- package/dist/node/map-interface.b33fab5e.js +0 -2
- package/dist/node/map-interface.b33fab5e.js.map +0 -1
- package/dist/node/map-interface.bd78832e.css +0 -2
- package/dist/node/map-interface.bd78832e.css.map +0 -1
- package/dist/node/map-interface.bf86da7c.js +0 -2
- package/dist/node/map-interface.bf86da7c.js.map +0 -1
- package/dist/node/map-interface.c5c0ad06.js +0 -2
- package/dist/node/map-interface.c5c0ad06.js.map +0 -1
- package/dist/node/map-interface.d22d91e9.css +0 -2
- package/dist/node/map-interface.d22d91e9.css.map +0 -1
- package/dist/node/map-interface.d2fce135.css +0 -2
- package/dist/node/map-interface.d2fce135.css.map +0 -1
- package/dist/node/map-interface.d5eba479.css +0 -2
- package/dist/node/map-interface.d5eba479.css.map +0 -1
- package/dist/node/map-interface.e7598785.js +0 -2
- package/dist/node/map-interface.e7598785.js.map +0 -1
- package/dist/node/map-interface.ed6b5586.js +0 -2
- package/dist/node/map-interface.ed6b5586.js.map +0 -1
- package/dist/node/map-interface.f13f7aeb.js +0 -2
- package/dist/node/map-interface.f13f7aeb.js.map +0 -1
- package/dist/node/map-interface.f413c362.js +0 -2
- package/dist/node/map-interface.f413c362.js.map +0 -1
- package/dist/node/map-interface.f4d2a5eb.js +0 -2
- package/dist/node/map-interface.f4d2a5eb.js.map +0 -1
- package/dist/node/map-interface.fdd35e74.js +0 -2
- package/dist/node/map-interface.fdd35e74.js.map +0 -1
- package/src/location-details/info-blocks.module.styl +0 -39
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import h from "@macrostrat/hyper";
|
|
2
|
+
import { ExpansionPanel } from "@macrostrat/map-interface";
|
|
3
|
+
import { addCommas } from "./utils/formatting.js";
|
|
4
|
+
function RegionalStratigraphy({
|
|
5
|
+
mapInfo,
|
|
6
|
+
columnInfo,
|
|
7
|
+
columnURL,
|
|
8
|
+
expanded = true
|
|
9
|
+
}) {
|
|
10
|
+
if (!mapInfo || !mapInfo.mapData) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
return RegionalStratigraphyInner({
|
|
14
|
+
mapInfo,
|
|
15
|
+
columnInfo,
|
|
16
|
+
columnURL,
|
|
17
|
+
expanded
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function RegionalStratigraphyInner(props) {
|
|
21
|
+
const { mapInfo, columnInfo, columnURL, expanded } = props;
|
|
22
|
+
if (mapInfo?.mapData == null || !columnInfo) return null;
|
|
23
|
+
return h(
|
|
24
|
+
ExpansionPanel,
|
|
25
|
+
{
|
|
26
|
+
classes: { root: "regional-panel" },
|
|
27
|
+
title: "Regional stratigraphy",
|
|
28
|
+
expanded
|
|
29
|
+
},
|
|
30
|
+
[h.if(columnInfo != null)(ColumnData, { columnInfo, columnURL })]
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
function ColumnData({ columnInfo, columnURL }) {
|
|
34
|
+
return h("div.column-data", [
|
|
35
|
+
h("a", { href: columnURL + "/" + columnInfo.col_id }, "View column page"),
|
|
36
|
+
h(MapAttribute, {
|
|
37
|
+
label: "Name: ",
|
|
38
|
+
content: [columnInfo.col_name]
|
|
39
|
+
}),
|
|
40
|
+
h(MapAttribute, {
|
|
41
|
+
label: "Column ID: ",
|
|
42
|
+
content: [columnInfo.col_id]
|
|
43
|
+
}),
|
|
44
|
+
h(MapAttribute, {
|
|
45
|
+
label: "Group: ",
|
|
46
|
+
content: [columnInfo.col_group]
|
|
47
|
+
}),
|
|
48
|
+
h(MapAttribute, {
|
|
49
|
+
label: "Group ID: ",
|
|
50
|
+
content: [columnInfo.col_group_id]
|
|
51
|
+
}),
|
|
52
|
+
h.if(columnInfo.min_min_thick || columnInfo.max_thick)(MapAttribute, {
|
|
53
|
+
label: "Thickness: ",
|
|
54
|
+
content: [
|
|
55
|
+
addCommas(parseInt(columnInfo.min_min_thick)),
|
|
56
|
+
" - ",
|
|
57
|
+
addCommas(parseInt(columnInfo.max_thick)),
|
|
58
|
+
h("span.age-ma", ["m"])
|
|
59
|
+
]
|
|
60
|
+
}),
|
|
61
|
+
h(MapAttribute, {
|
|
62
|
+
label: "Age: ",
|
|
63
|
+
content: [
|
|
64
|
+
columnInfo.b_age,
|
|
65
|
+
" - ",
|
|
66
|
+
columnInfo.t_age,
|
|
67
|
+
" ",
|
|
68
|
+
h("span.age-ma", ["Ma"])
|
|
69
|
+
]
|
|
70
|
+
}),
|
|
71
|
+
h(MapAttribute, {
|
|
72
|
+
label: "Area: ",
|
|
73
|
+
content: [addCommas(columnInfo.col_area), " ", h("span.age-ma", ["km2"])]
|
|
74
|
+
}),
|
|
75
|
+
h(MapAttribute, {
|
|
76
|
+
label: "Fossil collections: ",
|
|
77
|
+
content: [addCommas(columnInfo.pbdb_collections)]
|
|
78
|
+
})
|
|
79
|
+
]);
|
|
80
|
+
}
|
|
81
|
+
function MapAttribute(props) {
|
|
82
|
+
return h("div.map-source-attr", [
|
|
83
|
+
h("span.attr", [props.label]),
|
|
84
|
+
...props.content
|
|
85
|
+
]);
|
|
86
|
+
}
|
|
87
|
+
export {
|
|
88
|
+
RegionalStratigraphy
|
|
89
|
+
};
|
|
90
|
+
//# sourceMappingURL=reg-strat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reg-strat.js","sources":["../../src/location-details/reg-strat.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport { ExpansionPanel } from \"@macrostrat/map-interface\";\nimport { addCommas } from \"./utils\";\n\nexport function RegionalStratigraphy({\n mapInfo,\n columnInfo,\n columnURL,\n expanded = true,\n}) {\n if (!mapInfo || !mapInfo.mapData) {\n return null;\n }\n\n return RegionalStratigraphyInner({\n mapInfo,\n columnInfo,\n columnURL,\n expanded,\n });\n}\n\nfunction RegionalStratigraphyInner(props) {\n const { mapInfo, columnInfo, columnURL, expanded } = props;\n\n if (mapInfo?.mapData == null || !columnInfo) return null;\n\n return h(\n ExpansionPanel,\n {\n classes: { root: \"regional-panel\" },\n title: \"Regional stratigraphy\",\n expanded,\n },\n [h.if(columnInfo != null)(ColumnData, { columnInfo, columnURL })],\n );\n}\n\nfunction ColumnData({ columnInfo, columnURL }) {\n return h(\"div.column-data\", [\n h(\"a\", { href: columnURL + \"/\" + columnInfo.col_id }, \"View column page\"),\n h(MapAttribute, {\n label: \"Name: \",\n content: [columnInfo.col_name],\n }),\n h(MapAttribute, {\n label: \"Column ID: \",\n content: [columnInfo.col_id],\n }),\n h(MapAttribute, {\n label: \"Group: \",\n content: [columnInfo.col_group],\n }),\n h(MapAttribute, {\n label: \"Group ID: \",\n content: [columnInfo.col_group_id],\n }),\n h.if(columnInfo.min_min_thick || columnInfo.max_thick)(MapAttribute, {\n label: \"Thickness: \",\n content: [\n addCommas(parseInt(columnInfo.min_min_thick)),\n \" - \",\n addCommas(parseInt(columnInfo.max_thick)),\n h(\"span.age-ma\", [\"m\"]),\n ],\n }),\n h(MapAttribute, {\n label: \"Age: \",\n content: [\n columnInfo.b_age,\n \" - \",\n columnInfo.t_age,\n \" \",\n h(\"span.age-ma\", [\"Ma\"]),\n ],\n }),\n h(MapAttribute, {\n label: \"Area: \",\n content: [addCommas(columnInfo.col_area), \" \", h(\"span.age-ma\", [\"km2\"])],\n }),\n h(MapAttribute, {\n label: \"Fossil collections: \",\n content: [addCommas(columnInfo.pbdb_collections)],\n }),\n ]);\n}\n\nfunction MapAttribute(props) {\n return h(\"div.map-source-attr\", [\n h(\"span.attr\", [props.label]),\n ...props.content,\n ]);\n}\n"],"names":[],"mappings":";;;AAIO,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AACb,GAAG;AACD,MAAI,CAAC,WAAW,CAAC,QAAQ,SAAS;AAChC,WAAO;AAAA,EACT;AAEA,SAAO,0BAA0B;AAAA,IAC/B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACD;AACH;AAEA,SAAS,0BAA0B,OAAO;AACxC,QAAM,EAAE,SAAS,YAAY,WAAW,aAAa;AAErD,MAAI,SAAS,WAAW,QAAQ,CAAC,WAAY,QAAO;AAEpD,SAAO;AAAA,IACL;AAAA,IACA;AAAA,MACE,SAAS,EAAE,MAAM,iBAAA;AAAA,MACjB,OAAO;AAAA,MACP;AAAA,IAAA;AAAA,IAEF,CAAC,EAAE,GAAG,cAAc,IAAI,EAAE,YAAY,EAAE,YAAY,WAAW,CAAC;AAAA,EAAA;AAEpE;AAEA,SAAS,WAAW,EAAE,YAAY,aAAa;AAC7C,SAAO,EAAE,mBAAmB;AAAA,IAC1B,EAAE,KAAK,EAAE,MAAM,YAAY,MAAM,WAAW,OAAA,GAAU,kBAAkB;AAAA,IACxE,EAAE,cAAc;AAAA,MACd,OAAO;AAAA,MACP,SAAS,CAAC,WAAW,QAAQ;AAAA,IAAA,CAC9B;AAAA,IACD,EAAE,cAAc;AAAA,MACd,OAAO;AAAA,MACP,SAAS,CAAC,WAAW,MAAM;AAAA,IAAA,CAC5B;AAAA,IACD,EAAE,cAAc;AAAA,MACd,OAAO;AAAA,MACP,SAAS,CAAC,WAAW,SAAS;AAAA,IAAA,CAC/B;AAAA,IACD,EAAE,cAAc;AAAA,MACd,OAAO;AAAA,MACP,SAAS,CAAC,WAAW,YAAY;AAAA,IAAA,CAClC;AAAA,IACD,EAAE,GAAG,WAAW,iBAAiB,WAAW,SAAS,EAAE,cAAc;AAAA,MACnE,OAAO;AAAA,MACP,SAAS;AAAA,QACP,UAAU,SAAS,WAAW,aAAa,CAAC;AAAA,QAC5C;AAAA,QACA,UAAU,SAAS,WAAW,SAAS,CAAC;AAAA,QACxC,EAAE,eAAe,CAAC,GAAG,CAAC;AAAA,MAAA;AAAA,IACxB,CACD;AAAA,IACD,EAAE,cAAc;AAAA,MACd,OAAO;AAAA,MACP,SAAS;AAAA,QACP,WAAW;AAAA,QACX;AAAA,QACA,WAAW;AAAA,QACX;AAAA,QACA,EAAE,eAAe,CAAC,IAAI,CAAC;AAAA,MAAA;AAAA,IACzB,CACD;AAAA,IACD,EAAE,cAAc;AAAA,MACd,OAAO;AAAA,MACP,SAAS,CAAC,UAAU,WAAW,QAAQ,GAAG,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;AAAA,IAAA,CACzE;AAAA,IACD,EAAE,cAAc;AAAA,MACd,OAAO;AAAA,MACP,SAAS,CAAC,UAAU,WAAW,gBAAgB,CAAC;AAAA,IAAA,CACjD;AAAA,EAAA,CACF;AACH;AAEA,SAAS,aAAa,OAAO;AAC3B,SAAO,EAAE,uBAAuB;AAAA,IAC9B,EAAE,aAAa,CAAC,MAAM,KAAK,CAAC;AAAA,IAC5B,GAAG,MAAM;AAAA,EAAA,CACV;AACH;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const d3Format = require("d3-format");
|
|
4
|
+
d3Format.format(".4~f");
|
|
5
|
+
d3Format.format(".3~f");
|
|
6
|
+
d3Format.format(".2~f");
|
|
7
|
+
d3Format.format(".1~f");
|
|
8
|
+
d3Format.format(".0f");
|
|
9
|
+
const addCommas = (x) => {
|
|
10
|
+
x = parseInt(x);
|
|
11
|
+
var parts = x.toString().split(".");
|
|
12
|
+
parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
|
|
13
|
+
return parts.join(".");
|
|
14
|
+
};
|
|
15
|
+
exports.addCommas = addCommas;
|
|
16
|
+
//# sourceMappingURL=formatting.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatting.cjs","sources":["../../../src/location-details/utils/formatting.ts"],"sourcesContent":["import { format } from \"d3-format\";\n\nexport const fmt4 = format(\".4~f\");\nexport const fmt3 = format(\".3~f\");\nexport const fmt2 = format(\".2~f\");\nexport const fmt1 = format(\".1~f\");\nexport const fmtInt = format(\".0f\");\n\nexport const addCommas = (x) => {\n x = parseInt(x);\n var parts = x.toString().split(\".\");\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n return parts.join(\".\");\n};\n"],"names":["format"],"mappings":";;;AAEoBA,SAAAA,OAAO,MAAM;AACbA,SAAAA,OAAO,MAAM;AACbA,SAAAA,OAAO,MAAM;AACbA,SAAAA,OAAO,MAAM;AACXA,SAAAA,OAAO,KAAK;AAE3B,MAAM,YAAY,CAAC,MAAM;AAC9B,MAAI,SAAS,CAAC;AACd,MAAI,QAAQ,EAAE,SAAA,EAAW,MAAM,GAAG;AAClC,QAAM,CAAC,IAAI,MAAM,CAAC,EAAE,QAAQ,yBAAyB,GAAG;AACxD,SAAO,MAAM,KAAK,GAAG;AACvB;;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare const fmt4: (n: number | {
|
|
2
|
+
valueOf(): number;
|
|
3
|
+
}) => string;
|
|
4
|
+
export declare const fmt3: (n: number | {
|
|
5
|
+
valueOf(): number;
|
|
6
|
+
}) => string;
|
|
7
|
+
export declare const fmt2: (n: number | {
|
|
8
|
+
valueOf(): number;
|
|
9
|
+
}) => string;
|
|
10
|
+
export declare const fmt1: (n: number | {
|
|
11
|
+
valueOf(): number;
|
|
12
|
+
}) => string;
|
|
13
|
+
export declare const fmtInt: (n: number | {
|
|
14
|
+
valueOf(): number;
|
|
15
|
+
}) => string;
|
|
16
|
+
export declare const addCommas: (x: any) => any;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { format } from "d3-format";
|
|
2
|
+
format(".4~f");
|
|
3
|
+
format(".3~f");
|
|
4
|
+
format(".2~f");
|
|
5
|
+
format(".1~f");
|
|
6
|
+
format(".0f");
|
|
7
|
+
const addCommas = (x) => {
|
|
8
|
+
x = parseInt(x);
|
|
9
|
+
var parts = x.toString().split(".");
|
|
10
|
+
parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
|
|
11
|
+
return parts.join(".");
|
|
12
|
+
};
|
|
13
|
+
export {
|
|
14
|
+
addCommas
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=formatting.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatting.js","sources":["../../../src/location-details/utils/formatting.ts"],"sourcesContent":["import { format } from \"d3-format\";\n\nexport const fmt4 = format(\".4~f\");\nexport const fmt3 = format(\".3~f\");\nexport const fmt2 = format(\".2~f\");\nexport const fmt1 = format(\".1~f\");\nexport const fmtInt = format(\".0f\");\n\nexport const addCommas = (x) => {\n x = parseInt(x);\n var parts = x.toString().split(\".\");\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n return parts.join(\".\");\n};\n"],"names":[],"mappings":";AAEoB,OAAO,MAAM;AACb,OAAO,MAAM;AACb,OAAO,MAAM;AACb,OAAO,MAAM;AACX,OAAO,KAAK;AAE3B,MAAM,YAAY,CAAC,MAAM;AAC9B,MAAI,SAAS,CAAC;AACd,MAAI,QAAQ,EAAE,SAAA,EAAW,MAAM,GAAG;AAClC,QAAM,CAAC,IAAI,MAAM,CAAC,EAAE,QAAQ,yBAAyB,GAAG;AACxD,SAAO,MAAM,KAAK,GAAG;AACvB;"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
function makeOccurrenceTree(data) {
|
|
4
|
+
let occurrenceTree = { phyla: [] };
|
|
5
|
+
let rankMap = {
|
|
6
|
+
25: "unranked",
|
|
7
|
+
23: "kingdom",
|
|
8
|
+
22: "subkingdom",
|
|
9
|
+
21: "superphylum",
|
|
10
|
+
20: "phylum",
|
|
11
|
+
19: "subphylum",
|
|
12
|
+
18: "superclass",
|
|
13
|
+
17: "class",
|
|
14
|
+
16: "subclass",
|
|
15
|
+
15: "infraclass",
|
|
16
|
+
14: "superorder",
|
|
17
|
+
13: "order",
|
|
18
|
+
12: "suborder",
|
|
19
|
+
11: "infraorder",
|
|
20
|
+
10: "superfamily",
|
|
21
|
+
9: "family",
|
|
22
|
+
8: "subfamily",
|
|
23
|
+
7: "tribe",
|
|
24
|
+
6: "subtribe",
|
|
25
|
+
5: "genus",
|
|
26
|
+
4: "subgenus",
|
|
27
|
+
3: "species",
|
|
28
|
+
2: "subspecies"
|
|
29
|
+
};
|
|
30
|
+
function getIndex(data2, term, property) {
|
|
31
|
+
for (let i = 0, len = data2.length; i < len; i++) {
|
|
32
|
+
if (data2[i][property] === term) return i;
|
|
33
|
+
}
|
|
34
|
+
return -1;
|
|
35
|
+
}
|
|
36
|
+
data.forEach((d) => {
|
|
37
|
+
d.rank = d.rnk ? rankMap[d.rnk] : d.idr ? rankMap[d.idr] : "Unknown";
|
|
38
|
+
d.italics = d.rnk < 6 ? "italics" : "";
|
|
39
|
+
if (typeof d.tna === "undefined") {
|
|
40
|
+
d.tna = d.idn;
|
|
41
|
+
}
|
|
42
|
+
d.old_name = d.tna.split(" ")[0] != d.idg ? d.tna : "";
|
|
43
|
+
d.url = d.rank === "species" ? d.idg + " " + d.ids : d.tid ? d.tid.split(":")[1] > 0 ? d.idg : "" : "";
|
|
44
|
+
if (d.idg) {
|
|
45
|
+
let genusRes = d.rsg ? d.rsg + " " : "";
|
|
46
|
+
let speciesRes = d.rss ? " " + d.rss + " " : " ";
|
|
47
|
+
d.genusRes = genusRes;
|
|
48
|
+
if (d.rank === "species") {
|
|
49
|
+
d.display_name1 = d.tna;
|
|
50
|
+
d.display_name2 = d.tna != d.idg + " " + d.ids ? "(" + d.tna + ")" : "";
|
|
51
|
+
d.display_name3 = "";
|
|
52
|
+
} else {
|
|
53
|
+
d.display_name1 = d.idg;
|
|
54
|
+
d.display_name2 = speciesRes;
|
|
55
|
+
d.display_name3 = d.ids;
|
|
56
|
+
}
|
|
57
|
+
} else {
|
|
58
|
+
d.display_name1 = d.tna;
|
|
59
|
+
d.display_name2 = "";
|
|
60
|
+
}
|
|
61
|
+
let phyla = [];
|
|
62
|
+
for (let i = 0; i < occurrenceTree.phyla.length; i++) {
|
|
63
|
+
phyla.push(occurrenceTree.phyla[i].phylum);
|
|
64
|
+
}
|
|
65
|
+
if (phyla.indexOf(d.phl) < 0) {
|
|
66
|
+
let newPhylum = { phylum: d.phl, classes: [] };
|
|
67
|
+
occurrenceTree.phyla.push(newPhylum);
|
|
68
|
+
}
|
|
69
|
+
let phyla_classes = [];
|
|
70
|
+
for (let i = 0; i < occurrenceTree.phyla.length; i++) {
|
|
71
|
+
for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {
|
|
72
|
+
phyla_classes.push(
|
|
73
|
+
occurrenceTree.phyla[i].phylum + "-" + occurrenceTree.phyla[i].classes[j].nameClass
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
if (phyla_classes.indexOf(d.phl + "-" + d.cll) < 0) {
|
|
78
|
+
let newClass = { nameClass: d.cll, families: [] };
|
|
79
|
+
let phylumIndex2 = getIndex(occurrenceTree.phyla, d.phl, "phylum");
|
|
80
|
+
occurrenceTree.phyla[phylumIndex2]["classes"].push(newClass);
|
|
81
|
+
}
|
|
82
|
+
let phyla_class_family = [];
|
|
83
|
+
for (let i = 0; i < occurrenceTree.phyla.length; i++) {
|
|
84
|
+
for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {
|
|
85
|
+
for (let k = 0; k < occurrenceTree.phyla[i].classes[j].families.length; k++) {
|
|
86
|
+
phyla_class_family.push(
|
|
87
|
+
occurrenceTree.phyla[i].phylum + "-" + occurrenceTree.phyla[i].classes[j].nameClass + "-" + occurrenceTree.phyla[i].classes[j].families[k].family
|
|
88
|
+
);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
if (phyla_class_family.indexOf(d.phl + "-" + d.cll + "-" + d.fml) < 0) {
|
|
93
|
+
let newFamily = { family: d.fml, genera: [] };
|
|
94
|
+
let phylumIndex2 = getIndex(occurrenceTree.phyla, d.phl, "phylum");
|
|
95
|
+
let classIndex2 = getIndex(
|
|
96
|
+
occurrenceTree.phyla[phylumIndex2].classes,
|
|
97
|
+
d.cll,
|
|
98
|
+
"nameClass"
|
|
99
|
+
);
|
|
100
|
+
occurrenceTree.phyla[phylumIndex2].classes[classIndex2]["families"].push(
|
|
101
|
+
newFamily
|
|
102
|
+
);
|
|
103
|
+
}
|
|
104
|
+
let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, "phylum");
|
|
105
|
+
let classIndex = getIndex(
|
|
106
|
+
occurrenceTree.phyla[phylumIndex].classes,
|
|
107
|
+
d.cll,
|
|
108
|
+
"nameClass"
|
|
109
|
+
);
|
|
110
|
+
let familyIndex = getIndex(
|
|
111
|
+
occurrenceTree.phyla[phylumIndex].classes[classIndex].families,
|
|
112
|
+
d.fml,
|
|
113
|
+
"family"
|
|
114
|
+
);
|
|
115
|
+
occurrenceTree.phyla[phylumIndex].classes[classIndex].families[familyIndex].genera.push(d);
|
|
116
|
+
});
|
|
117
|
+
for (let i = 0; i < occurrenceTree.phyla.length; i++) {
|
|
118
|
+
for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {
|
|
119
|
+
let undefinedFamilyIndex;
|
|
120
|
+
for (let k = 0; k < occurrenceTree.phyla[i].classes[j].families.length; k++) {
|
|
121
|
+
if (typeof occurrenceTree.phyla[i].classes[j].families[k].family === "undefined") {
|
|
122
|
+
undefinedFamilyIndex = k;
|
|
123
|
+
occurrenceTree.phyla[i].classes[j].families[k].family = "Miscellaneous " + (typeof occurrenceTree.phyla[i].classes[j].nameClass === "undefined") ? "Miscellaneous unranked taxa" : occurrenceTree.phyla[i].classes[j].nameClass;
|
|
124
|
+
occurrenceTree.phyla[i].classes[j].families[k].noFamily = true;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
if (typeof undefinedFamilyIndex != "undefined") {
|
|
128
|
+
occurrenceTree.phyla[i].classes[j].families.push(
|
|
129
|
+
occurrenceTree.phyla[i].classes[j].families.splice(
|
|
130
|
+
undefinedFamilyIndex,
|
|
131
|
+
1
|
|
132
|
+
)[0]
|
|
133
|
+
);
|
|
134
|
+
}
|
|
135
|
+
if (typeof occurrenceTree.phyla[i].classes[j].nameClass === "undefined") {
|
|
136
|
+
undefinedFamilyIndex = j;
|
|
137
|
+
occurrenceTree.phyla[i].classes[j].nameClass = "Miscellaneous " + (typeof occurrenceTree.phyla[i].phylum === "undefined") ? "Miscellaneous unranked taxa" : occurrenceTree.phyla[i].phylum;
|
|
138
|
+
occurrenceTree.phyla[i].classes[j].noClass = true;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
if (typeof occurrenceTree.phyla[i].phylum === "undefined") {
|
|
142
|
+
occurrenceTree.phyla[i].phylum = "Unranked taxa";
|
|
143
|
+
occurrenceTree.phyla[i].unranked = true;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
return occurrenceTree;
|
|
147
|
+
}
|
|
148
|
+
exports.makeOccurrenceTree = makeOccurrenceTree;
|
|
149
|
+
//# sourceMappingURL=fossils.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fossils.cjs","sources":["../../../src/location-details/utils/fossils.ts"],"sourcesContent":["export function makeOccurrenceTree(data) {\n let occurrenceTree = { phyla: [] };\n let rankMap = {\n 25: \"unranked\",\n 23: \"kingdom\",\n 22: \"subkingdom\",\n 21: \"superphylum\",\n 20: \"phylum\",\n 19: \"subphylum\",\n 18: \"superclass\",\n 17: \"class\",\n 16: \"subclass\",\n 15: \"infraclass\",\n 14: \"superorder\",\n 13: \"order\",\n 12: \"suborder\",\n 11: \"infraorder\",\n 10: \"superfamily\",\n 9: \"family\",\n 8: \"subfamily\",\n 7: \"tribe\",\n 6: \"subtribe\",\n 5: \"genus\",\n 4: \"subgenus\",\n 3: \"species\",\n 2: \"subspecies\",\n };\n\n function getIndex(data, term, property) {\n for (let i = 0, len = data.length; i < len; i++) {\n if (data[i][property] === term) return i;\n }\n return -1;\n }\n\n data.forEach((d) => {\n // Some preprocessing\n d.rank = d.rnk ? rankMap[d.rnk] : d.idr ? rankMap[d.idr] : \"Unknown\";\n d.italics = d.rnk < 6 ? \"italics\" : \"\";\n if (typeof d.tna === \"undefined\") {\n d.tna = d.idn;\n }\n d.old_name = d.tna.split(\" \")[0] != d.idg ? d.tna : \"\";\n d.url =\n d.rank === \"species\"\n ? d.idg + \" \" + d.ids\n : d.tid\n ? d.tid.split(\":\")[1] > 0\n ? d.idg\n : \"\"\n : \"\";\n\n // If it has a genus name...\n if (d.idg) {\n let genusRes = d.rsg ? d.rsg + \" \" : \"\";\n let speciesRes = d.rss ? \" \" + d.rss + \" \" : \" \";\n d.genusRes = genusRes;\n // If it's a species...\n if (d.rank === \"species\") {\n d.display_name1 = d.tna;\n d.display_name2 = d.tna != d.idg + \" \" + d.ids ? \"(\" + d.tna + \")\" : \"\";\n d.display_name3 = \"\";\n } else {\n d.display_name1 = d.idg;\n d.display_name2 = speciesRes;\n d.display_name3 = d.ids;\n }\n } else {\n d.display_name1 = d.tna;\n d.display_name2 = \"\";\n }\n\n // Find unique phyla\n let phyla = [];\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n phyla.push(occurrenceTree.phyla[i].phylum);\n }\n\n if (phyla.indexOf(d.phl) < 0) {\n let newPhylum = { phylum: d.phl, classes: [] };\n occurrenceTree.phyla.push(newPhylum);\n }\n\n // Find unique phylum/class combinations\n let phyla_classes = [];\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {\n phyla_classes.push(\n occurrenceTree.phyla[i].phylum +\n \"-\" +\n occurrenceTree.phyla[i].classes[j].nameClass,\n );\n }\n }\n\n if (phyla_classes.indexOf(d.phl + \"-\" + d.cll) < 0) {\n let newClass = { nameClass: d.cll, families: [] };\n let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, \"phylum\");\n occurrenceTree.phyla[phylumIndex][\"classes\"].push(newClass);\n }\n\n // Find unique phylum/class/family combinations\n let phyla_class_family = [];\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {\n for (\n let k = 0;\n k < occurrenceTree.phyla[i].classes[j].families.length;\n k++\n ) {\n phyla_class_family.push(\n occurrenceTree.phyla[i].phylum +\n \"-\" +\n occurrenceTree.phyla[i].classes[j].nameClass +\n \"-\" +\n occurrenceTree.phyla[i].classes[j].families[k].family,\n );\n }\n }\n }\n\n if (phyla_class_family.indexOf(d.phl + \"-\" + d.cll + \"-\" + d.fml) < 0) {\n let newFamily = { family: d.fml, genera: [] };\n let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, \"phylum\");\n let classIndex = getIndex(\n occurrenceTree.phyla[phylumIndex].classes,\n d.cll,\n \"nameClass\",\n );\n occurrenceTree.phyla[phylumIndex].classes[classIndex][\"families\"].push(\n newFamily,\n );\n }\n\n // Place genera into the right phylum/class/family\n let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, \"phylum\");\n let classIndex = getIndex(\n occurrenceTree.phyla[phylumIndex].classes,\n d.cll,\n \"nameClass\",\n );\n let familyIndex = getIndex(\n occurrenceTree.phyla[phylumIndex].classes[classIndex].families,\n d.fml,\n \"family\",\n );\n occurrenceTree.phyla[phylumIndex].classes[classIndex].families[\n familyIndex\n ].genera.push(d);\n });\n\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n let undefinedClassIndex;\n for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {\n let undefinedFamilyIndex;\n for (\n let k = 0;\n k < occurrenceTree.phyla[i].classes[j].families.length;\n k++\n ) {\n if (\n typeof occurrenceTree.phyla[i].classes[j].families[k].family ===\n \"undefined\"\n ) {\n undefinedFamilyIndex = k;\n occurrenceTree.phyla[i].classes[j].families[k].family =\n \"Miscellaneous \" +\n (typeof occurrenceTree.phyla[i].classes[j].nameClass ===\n \"undefined\")\n ? \"Miscellaneous unranked taxa\"\n : occurrenceTree.phyla[i].classes[j].nameClass;\n occurrenceTree.phyla[i].classes[j].families[k].noFamily = true;\n }\n }\n\n if (typeof undefinedFamilyIndex != \"undefined\") {\n occurrenceTree.phyla[i].classes[j].families.push(\n occurrenceTree.phyla[i].classes[j].families.splice(\n undefinedFamilyIndex,\n 1,\n )[0],\n );\n }\n\n if (typeof occurrenceTree.phyla[i].classes[j].nameClass === \"undefined\") {\n undefinedFamilyIndex = j;\n occurrenceTree.phyla[i].classes[j].nameClass =\n \"Miscellaneous \" +\n (typeof occurrenceTree.phyla[i].phylum === \"undefined\")\n ? \"Miscellaneous unranked taxa\"\n : occurrenceTree.phyla[i].phylum;\n occurrenceTree.phyla[i].classes[j].noClass = true;\n }\n }\n\n if (typeof undefinedClassIndex != \"undefined\") {\n occurrenceTree.phyla[i].classes.push(\n occurrenceTree.phyla[i].classes.splice(undefinedClassIndex, 1)[0],\n );\n }\n\n if (typeof occurrenceTree.phyla[i].phylum === \"undefined\") {\n occurrenceTree.phyla[i].phylum = \"Unranked taxa\";\n occurrenceTree.phyla[i].unranked = true;\n }\n }\n\n return occurrenceTree;\n}\n"],"names":["data","phylumIndex","classIndex"],"mappings":"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"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
function makeOccurrenceTree(data) {
|
|
2
|
+
let occurrenceTree = { phyla: [] };
|
|
3
|
+
let rankMap = {
|
|
4
|
+
25: "unranked",
|
|
5
|
+
23: "kingdom",
|
|
6
|
+
22: "subkingdom",
|
|
7
|
+
21: "superphylum",
|
|
8
|
+
20: "phylum",
|
|
9
|
+
19: "subphylum",
|
|
10
|
+
18: "superclass",
|
|
11
|
+
17: "class",
|
|
12
|
+
16: "subclass",
|
|
13
|
+
15: "infraclass",
|
|
14
|
+
14: "superorder",
|
|
15
|
+
13: "order",
|
|
16
|
+
12: "suborder",
|
|
17
|
+
11: "infraorder",
|
|
18
|
+
10: "superfamily",
|
|
19
|
+
9: "family",
|
|
20
|
+
8: "subfamily",
|
|
21
|
+
7: "tribe",
|
|
22
|
+
6: "subtribe",
|
|
23
|
+
5: "genus",
|
|
24
|
+
4: "subgenus",
|
|
25
|
+
3: "species",
|
|
26
|
+
2: "subspecies"
|
|
27
|
+
};
|
|
28
|
+
function getIndex(data2, term, property) {
|
|
29
|
+
for (let i = 0, len = data2.length; i < len; i++) {
|
|
30
|
+
if (data2[i][property] === term) return i;
|
|
31
|
+
}
|
|
32
|
+
return -1;
|
|
33
|
+
}
|
|
34
|
+
data.forEach((d) => {
|
|
35
|
+
d.rank = d.rnk ? rankMap[d.rnk] : d.idr ? rankMap[d.idr] : "Unknown";
|
|
36
|
+
d.italics = d.rnk < 6 ? "italics" : "";
|
|
37
|
+
if (typeof d.tna === "undefined") {
|
|
38
|
+
d.tna = d.idn;
|
|
39
|
+
}
|
|
40
|
+
d.old_name = d.tna.split(" ")[0] != d.idg ? d.tna : "";
|
|
41
|
+
d.url = d.rank === "species" ? d.idg + " " + d.ids : d.tid ? d.tid.split(":")[1] > 0 ? d.idg : "" : "";
|
|
42
|
+
if (d.idg) {
|
|
43
|
+
let genusRes = d.rsg ? d.rsg + " " : "";
|
|
44
|
+
let speciesRes = d.rss ? " " + d.rss + " " : " ";
|
|
45
|
+
d.genusRes = genusRes;
|
|
46
|
+
if (d.rank === "species") {
|
|
47
|
+
d.display_name1 = d.tna;
|
|
48
|
+
d.display_name2 = d.tna != d.idg + " " + d.ids ? "(" + d.tna + ")" : "";
|
|
49
|
+
d.display_name3 = "";
|
|
50
|
+
} else {
|
|
51
|
+
d.display_name1 = d.idg;
|
|
52
|
+
d.display_name2 = speciesRes;
|
|
53
|
+
d.display_name3 = d.ids;
|
|
54
|
+
}
|
|
55
|
+
} else {
|
|
56
|
+
d.display_name1 = d.tna;
|
|
57
|
+
d.display_name2 = "";
|
|
58
|
+
}
|
|
59
|
+
let phyla = [];
|
|
60
|
+
for (let i = 0; i < occurrenceTree.phyla.length; i++) {
|
|
61
|
+
phyla.push(occurrenceTree.phyla[i].phylum);
|
|
62
|
+
}
|
|
63
|
+
if (phyla.indexOf(d.phl) < 0) {
|
|
64
|
+
let newPhylum = { phylum: d.phl, classes: [] };
|
|
65
|
+
occurrenceTree.phyla.push(newPhylum);
|
|
66
|
+
}
|
|
67
|
+
let phyla_classes = [];
|
|
68
|
+
for (let i = 0; i < occurrenceTree.phyla.length; i++) {
|
|
69
|
+
for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {
|
|
70
|
+
phyla_classes.push(
|
|
71
|
+
occurrenceTree.phyla[i].phylum + "-" + occurrenceTree.phyla[i].classes[j].nameClass
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (phyla_classes.indexOf(d.phl + "-" + d.cll) < 0) {
|
|
76
|
+
let newClass = { nameClass: d.cll, families: [] };
|
|
77
|
+
let phylumIndex2 = getIndex(occurrenceTree.phyla, d.phl, "phylum");
|
|
78
|
+
occurrenceTree.phyla[phylumIndex2]["classes"].push(newClass);
|
|
79
|
+
}
|
|
80
|
+
let phyla_class_family = [];
|
|
81
|
+
for (let i = 0; i < occurrenceTree.phyla.length; i++) {
|
|
82
|
+
for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {
|
|
83
|
+
for (let k = 0; k < occurrenceTree.phyla[i].classes[j].families.length; k++) {
|
|
84
|
+
phyla_class_family.push(
|
|
85
|
+
occurrenceTree.phyla[i].phylum + "-" + occurrenceTree.phyla[i].classes[j].nameClass + "-" + occurrenceTree.phyla[i].classes[j].families[k].family
|
|
86
|
+
);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
if (phyla_class_family.indexOf(d.phl + "-" + d.cll + "-" + d.fml) < 0) {
|
|
91
|
+
let newFamily = { family: d.fml, genera: [] };
|
|
92
|
+
let phylumIndex2 = getIndex(occurrenceTree.phyla, d.phl, "phylum");
|
|
93
|
+
let classIndex2 = getIndex(
|
|
94
|
+
occurrenceTree.phyla[phylumIndex2].classes,
|
|
95
|
+
d.cll,
|
|
96
|
+
"nameClass"
|
|
97
|
+
);
|
|
98
|
+
occurrenceTree.phyla[phylumIndex2].classes[classIndex2]["families"].push(
|
|
99
|
+
newFamily
|
|
100
|
+
);
|
|
101
|
+
}
|
|
102
|
+
let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, "phylum");
|
|
103
|
+
let classIndex = getIndex(
|
|
104
|
+
occurrenceTree.phyla[phylumIndex].classes,
|
|
105
|
+
d.cll,
|
|
106
|
+
"nameClass"
|
|
107
|
+
);
|
|
108
|
+
let familyIndex = getIndex(
|
|
109
|
+
occurrenceTree.phyla[phylumIndex].classes[classIndex].families,
|
|
110
|
+
d.fml,
|
|
111
|
+
"family"
|
|
112
|
+
);
|
|
113
|
+
occurrenceTree.phyla[phylumIndex].classes[classIndex].families[familyIndex].genera.push(d);
|
|
114
|
+
});
|
|
115
|
+
for (let i = 0; i < occurrenceTree.phyla.length; i++) {
|
|
116
|
+
for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {
|
|
117
|
+
let undefinedFamilyIndex;
|
|
118
|
+
for (let k = 0; k < occurrenceTree.phyla[i].classes[j].families.length; k++) {
|
|
119
|
+
if (typeof occurrenceTree.phyla[i].classes[j].families[k].family === "undefined") {
|
|
120
|
+
undefinedFamilyIndex = k;
|
|
121
|
+
occurrenceTree.phyla[i].classes[j].families[k].family = "Miscellaneous " + (typeof occurrenceTree.phyla[i].classes[j].nameClass === "undefined") ? "Miscellaneous unranked taxa" : occurrenceTree.phyla[i].classes[j].nameClass;
|
|
122
|
+
occurrenceTree.phyla[i].classes[j].families[k].noFamily = true;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
if (typeof undefinedFamilyIndex != "undefined") {
|
|
126
|
+
occurrenceTree.phyla[i].classes[j].families.push(
|
|
127
|
+
occurrenceTree.phyla[i].classes[j].families.splice(
|
|
128
|
+
undefinedFamilyIndex,
|
|
129
|
+
1
|
|
130
|
+
)[0]
|
|
131
|
+
);
|
|
132
|
+
}
|
|
133
|
+
if (typeof occurrenceTree.phyla[i].classes[j].nameClass === "undefined") {
|
|
134
|
+
undefinedFamilyIndex = j;
|
|
135
|
+
occurrenceTree.phyla[i].classes[j].nameClass = "Miscellaneous " + (typeof occurrenceTree.phyla[i].phylum === "undefined") ? "Miscellaneous unranked taxa" : occurrenceTree.phyla[i].phylum;
|
|
136
|
+
occurrenceTree.phyla[i].classes[j].noClass = true;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
if (typeof occurrenceTree.phyla[i].phylum === "undefined") {
|
|
140
|
+
occurrenceTree.phyla[i].phylum = "Unranked taxa";
|
|
141
|
+
occurrenceTree.phyla[i].unranked = true;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
return occurrenceTree;
|
|
145
|
+
}
|
|
146
|
+
export {
|
|
147
|
+
makeOccurrenceTree
|
|
148
|
+
};
|
|
149
|
+
//# sourceMappingURL=fossils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fossils.js","sources":["../../../src/location-details/utils/fossils.ts"],"sourcesContent":["export function makeOccurrenceTree(data) {\n let occurrenceTree = { phyla: [] };\n let rankMap = {\n 25: \"unranked\",\n 23: \"kingdom\",\n 22: \"subkingdom\",\n 21: \"superphylum\",\n 20: \"phylum\",\n 19: \"subphylum\",\n 18: \"superclass\",\n 17: \"class\",\n 16: \"subclass\",\n 15: \"infraclass\",\n 14: \"superorder\",\n 13: \"order\",\n 12: \"suborder\",\n 11: \"infraorder\",\n 10: \"superfamily\",\n 9: \"family\",\n 8: \"subfamily\",\n 7: \"tribe\",\n 6: \"subtribe\",\n 5: \"genus\",\n 4: \"subgenus\",\n 3: \"species\",\n 2: \"subspecies\",\n };\n\n function getIndex(data, term, property) {\n for (let i = 0, len = data.length; i < len; i++) {\n if (data[i][property] === term) return i;\n }\n return -1;\n }\n\n data.forEach((d) => {\n // Some preprocessing\n d.rank = d.rnk ? rankMap[d.rnk] : d.idr ? rankMap[d.idr] : \"Unknown\";\n d.italics = d.rnk < 6 ? \"italics\" : \"\";\n if (typeof d.tna === \"undefined\") {\n d.tna = d.idn;\n }\n d.old_name = d.tna.split(\" \")[0] != d.idg ? d.tna : \"\";\n d.url =\n d.rank === \"species\"\n ? d.idg + \" \" + d.ids\n : d.tid\n ? d.tid.split(\":\")[1] > 0\n ? d.idg\n : \"\"\n : \"\";\n\n // If it has a genus name...\n if (d.idg) {\n let genusRes = d.rsg ? d.rsg + \" \" : \"\";\n let speciesRes = d.rss ? \" \" + d.rss + \" \" : \" \";\n d.genusRes = genusRes;\n // If it's a species...\n if (d.rank === \"species\") {\n d.display_name1 = d.tna;\n d.display_name2 = d.tna != d.idg + \" \" + d.ids ? \"(\" + d.tna + \")\" : \"\";\n d.display_name3 = \"\";\n } else {\n d.display_name1 = d.idg;\n d.display_name2 = speciesRes;\n d.display_name3 = d.ids;\n }\n } else {\n d.display_name1 = d.tna;\n d.display_name2 = \"\";\n }\n\n // Find unique phyla\n let phyla = [];\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n phyla.push(occurrenceTree.phyla[i].phylum);\n }\n\n if (phyla.indexOf(d.phl) < 0) {\n let newPhylum = { phylum: d.phl, classes: [] };\n occurrenceTree.phyla.push(newPhylum);\n }\n\n // Find unique phylum/class combinations\n let phyla_classes = [];\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {\n phyla_classes.push(\n occurrenceTree.phyla[i].phylum +\n \"-\" +\n occurrenceTree.phyla[i].classes[j].nameClass,\n );\n }\n }\n\n if (phyla_classes.indexOf(d.phl + \"-\" + d.cll) < 0) {\n let newClass = { nameClass: d.cll, families: [] };\n let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, \"phylum\");\n occurrenceTree.phyla[phylumIndex][\"classes\"].push(newClass);\n }\n\n // Find unique phylum/class/family combinations\n let phyla_class_family = [];\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {\n for (\n let k = 0;\n k < occurrenceTree.phyla[i].classes[j].families.length;\n k++\n ) {\n phyla_class_family.push(\n occurrenceTree.phyla[i].phylum +\n \"-\" +\n occurrenceTree.phyla[i].classes[j].nameClass +\n \"-\" +\n occurrenceTree.phyla[i].classes[j].families[k].family,\n );\n }\n }\n }\n\n if (phyla_class_family.indexOf(d.phl + \"-\" + d.cll + \"-\" + d.fml) < 0) {\n let newFamily = { family: d.fml, genera: [] };\n let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, \"phylum\");\n let classIndex = getIndex(\n occurrenceTree.phyla[phylumIndex].classes,\n d.cll,\n \"nameClass\",\n );\n occurrenceTree.phyla[phylumIndex].classes[classIndex][\"families\"].push(\n newFamily,\n );\n }\n\n // Place genera into the right phylum/class/family\n let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, \"phylum\");\n let classIndex = getIndex(\n occurrenceTree.phyla[phylumIndex].classes,\n d.cll,\n \"nameClass\",\n );\n let familyIndex = getIndex(\n occurrenceTree.phyla[phylumIndex].classes[classIndex].families,\n d.fml,\n \"family\",\n );\n occurrenceTree.phyla[phylumIndex].classes[classIndex].families[\n familyIndex\n ].genera.push(d);\n });\n\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n let undefinedClassIndex;\n for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {\n let undefinedFamilyIndex;\n for (\n let k = 0;\n k < occurrenceTree.phyla[i].classes[j].families.length;\n k++\n ) {\n if (\n typeof occurrenceTree.phyla[i].classes[j].families[k].family ===\n \"undefined\"\n ) {\n undefinedFamilyIndex = k;\n occurrenceTree.phyla[i].classes[j].families[k].family =\n \"Miscellaneous \" +\n (typeof occurrenceTree.phyla[i].classes[j].nameClass ===\n \"undefined\")\n ? \"Miscellaneous unranked taxa\"\n : occurrenceTree.phyla[i].classes[j].nameClass;\n occurrenceTree.phyla[i].classes[j].families[k].noFamily = true;\n }\n }\n\n if (typeof undefinedFamilyIndex != \"undefined\") {\n occurrenceTree.phyla[i].classes[j].families.push(\n occurrenceTree.phyla[i].classes[j].families.splice(\n undefinedFamilyIndex,\n 1,\n )[0],\n );\n }\n\n if (typeof occurrenceTree.phyla[i].classes[j].nameClass === \"undefined\") {\n undefinedFamilyIndex = j;\n occurrenceTree.phyla[i].classes[j].nameClass =\n \"Miscellaneous \" +\n (typeof occurrenceTree.phyla[i].phylum === \"undefined\")\n ? \"Miscellaneous unranked taxa\"\n : occurrenceTree.phyla[i].phylum;\n occurrenceTree.phyla[i].classes[j].noClass = true;\n }\n }\n\n if (typeof undefinedClassIndex != \"undefined\") {\n occurrenceTree.phyla[i].classes.push(\n occurrenceTree.phyla[i].classes.splice(undefinedClassIndex, 1)[0],\n );\n }\n\n if (typeof occurrenceTree.phyla[i].phylum === \"undefined\") {\n occurrenceTree.phyla[i].phylum = \"Unranked taxa\";\n occurrenceTree.phyla[i].unranked = true;\n }\n }\n\n return occurrenceTree;\n}\n"],"names":["data","phylumIndex","classIndex"],"mappings":"AAAO,SAAS,mBAAmB,MAAM;AACvC,MAAI,iBAAiB,EAAE,OAAO,GAAC;AAC/B,MAAI,UAAU;AAAA,IACZ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EAAA;AAGL,WAAS,SAASA,OAAM,MAAM,UAAU;AACtC,aAAS,IAAI,GAAG,MAAMA,MAAK,QAAQ,IAAI,KAAK,KAAK;AAC/C,UAAIA,MAAK,CAAC,EAAE,QAAQ,MAAM,KAAM,QAAO;AAAA,IACzC;AACA,WAAO;AAAA,EACT;AAEA,OAAK,QAAQ,CAAC,MAAM;AAElB,MAAE,OAAO,EAAE,MAAM,QAAQ,EAAE,GAAG,IAAI,EAAE,MAAM,QAAQ,EAAE,GAAG,IAAI;AAC3D,MAAE,UAAU,EAAE,MAAM,IAAI,YAAY;AACpC,QAAI,OAAO,EAAE,QAAQ,aAAa;AAChC,QAAE,MAAM,EAAE;AAAA,IACZ;AACA,MAAE,WAAW,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM;AACpD,MAAE,MACA,EAAE,SAAS,YACP,EAAE,MAAM,MAAM,EAAE,MAChB,EAAE,MACA,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC,IAAI,IACpB,EAAE,MACF,KACF;AAGR,QAAI,EAAE,KAAK;AACT,UAAI,WAAW,EAAE,MAAM,EAAE,MAAM,MAAM;AACrC,UAAI,aAAa,EAAE,MAAM,MAAM,EAAE,MAAM,MAAM;AAC7C,QAAE,WAAW;AAEb,UAAI,EAAE,SAAS,WAAW;AACxB,UAAE,gBAAgB,EAAE;AACpB,UAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,MAAM,EAAE,MAAM,MAAM,EAAE,MAAM,MAAM;AACrE,UAAE,gBAAgB;AAAA,MACpB,OAAO;AACL,UAAE,gBAAgB,EAAE;AACpB,UAAE,gBAAgB;AAClB,UAAE,gBAAgB,EAAE;AAAA,MACtB;AAAA,IACF,OAAO;AACL,QAAE,gBAAgB,EAAE;AACpB,QAAE,gBAAgB;AAAA,IACpB;AAGA,QAAI,QAAQ,CAAA;AACZ,aAAS,IAAI,GAAG,IAAI,eAAe,MAAM,QAAQ,KAAK;AACpD,YAAM,KAAK,eAAe,MAAM,CAAC,EAAE,MAAM;AAAA,IAC3C;AAEA,QAAI,MAAM,QAAQ,EAAE,GAAG,IAAI,GAAG;AAC5B,UAAI,YAAY,EAAE,QAAQ,EAAE,KAAK,SAAS,GAAC;AAC3C,qBAAe,MAAM,KAAK,SAAS;AAAA,IACrC;AAGA,QAAI,gBAAgB,CAAA;AACpB,aAAS,IAAI,GAAG,IAAI,eAAe,MAAM,QAAQ,KAAK;AACpD,eAAS,IAAI,GAAG,IAAI,eAAe,MAAM,CAAC,EAAE,QAAQ,QAAQ,KAAK;AAC/D,sBAAc;AAAA,UACZ,eAAe,MAAM,CAAC,EAAE,SACtB,MACA,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE;AAAA,QAAA;AAAA,MAEzC;AAAA,IACF;AAEA,QAAI,cAAc,QAAQ,EAAE,MAAM,MAAM,EAAE,GAAG,IAAI,GAAG;AAClD,UAAI,WAAW,EAAE,WAAW,EAAE,KAAK,UAAU,GAAC;AAC9C,UAAIC,eAAc,SAAS,eAAe,OAAO,EAAE,KAAK,QAAQ;AAChE,qBAAe,MAAMA,YAAW,EAAE,SAAS,EAAE,KAAK,QAAQ;AAAA,IAC5D;AAGA,QAAI,qBAAqB,CAAA;AACzB,aAAS,IAAI,GAAG,IAAI,eAAe,MAAM,QAAQ,KAAK;AACpD,eAAS,IAAI,GAAG,IAAI,eAAe,MAAM,CAAC,EAAE,QAAQ,QAAQ,KAAK;AAC/D,iBACM,IAAI,GACR,IAAI,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,QAChD,KACA;AACA,6BAAmB;AAAA,YACjB,eAAe,MAAM,CAAC,EAAE,SACtB,MACA,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,YACnC,MACA,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,EAAE;AAAA,UAAA;AAAA,QAErD;AAAA,MACF;AAAA,IACF;AAEA,QAAI,mBAAmB,QAAQ,EAAE,MAAM,MAAM,EAAE,MAAM,MAAM,EAAE,GAAG,IAAI,GAAG;AACrE,UAAI,YAAY,EAAE,QAAQ,EAAE,KAAK,QAAQ,GAAC;AAC1C,UAAIA,eAAc,SAAS,eAAe,OAAO,EAAE,KAAK,QAAQ;AAChE,UAAIC,cAAa;AAAA,QACf,eAAe,MAAMD,YAAW,EAAE;AAAA,QAClC,EAAE;AAAA,QACF;AAAA,MAAA;AAEF,qBAAe,MAAMA,YAAW,EAAE,QAAQC,WAAU,EAAE,UAAU,EAAE;AAAA,QAChE;AAAA,MAAA;AAAA,IAEJ;AAGA,QAAI,cAAc,SAAS,eAAe,OAAO,EAAE,KAAK,QAAQ;AAChE,QAAI,aAAa;AAAA,MACf,eAAe,MAAM,WAAW,EAAE;AAAA,MAClC,EAAE;AAAA,MACF;AAAA,IAAA;AAEF,QAAI,cAAc;AAAA,MAChB,eAAe,MAAM,WAAW,EAAE,QAAQ,UAAU,EAAE;AAAA,MACtD,EAAE;AAAA,MACF;AAAA,IAAA;AAEF,mBAAe,MAAM,WAAW,EAAE,QAAQ,UAAU,EAAE,SACpD,WACF,EAAE,OAAO,KAAK,CAAC;AAAA,EACjB,CAAC;AAED,WAAS,IAAI,GAAG,IAAI,eAAe,MAAM,QAAQ,KAAK;AAEpD,aAAS,IAAI,GAAG,IAAI,eAAe,MAAM,CAAC,EAAE,QAAQ,QAAQ,KAAK;AAC/D,UAAI;AACJ,eACM,IAAI,GACR,IAAI,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,QAChD,KACA;AACA,YACE,OAAO,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,EAAE,WACtD,aACA;AACA,iCAAuB;AACvB,yBAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,EAAE,SAC7C,oBACC,OAAO,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,cACzC,eACE,gCACA,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE;AACzC,yBAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,EAAE,WAAW;AAAA,QAC5D;AAAA,MACF;AAEA,UAAI,OAAO,wBAAwB,aAAa;AAC9C,uBAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,UAC1C,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,YAC1C;AAAA,YACA;AAAA,UAAA,EACA,CAAC;AAAA,QAAA;AAAA,MAEP;AAEA,UAAI,OAAO,eAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,cAAc,aAAa;AACvE,+BAAuB;AACvB,uBAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,YACjC,oBACC,OAAO,eAAe,MAAM,CAAC,EAAE,WAAW,eACvC,gCACA,eAAe,MAAM,CAAC,EAAE;AAC9B,uBAAe,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,UAAU;AAAA,MAC/C;AAAA,IACF;AAQA,QAAI,OAAO,eAAe,MAAM,CAAC,EAAE,WAAW,aAAa;AACzD,qBAAe,MAAM,CAAC,EAAE,SAAS;AACjC,qBAAe,MAAM,CAAC,EAAE,WAAW;AAAA,IACrC;AAAA,EACF;AAEA,SAAO;AACT;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const hexToRgb = (hex, opacity) => {
|
|
4
|
+
if (!hex) {
|
|
5
|
+
return "rgba(0,0,0,0.3)";
|
|
6
|
+
}
|
|
7
|
+
hex = hex.replace("#", "");
|
|
8
|
+
let bigint = parseInt(hex, 16);
|
|
9
|
+
let r = bigint >> 16 & 255;
|
|
10
|
+
let g = bigint >> 8 & 255;
|
|
11
|
+
let b = bigint & 255;
|
|
12
|
+
return `rgba(${r},${g},${b},${opacity})`;
|
|
13
|
+
};
|
|
14
|
+
exports.hexToRgb = hexToRgb;
|
|
15
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../../src/location-details/utils/index.ts"],"sourcesContent":["export const sum = (data, prop) => {\n if (!data || !data.length) {\n return [];\n }\n return data\n .map((d) => {\n return d[prop];\n })\n .reduce((a, b) => {\n return a + b;\n }, 0);\n};\n\nexport const hexToRgb = (hex, opacity) => {\n if (!hex) {\n return \"rgba(0,0,0,0.3)\";\n }\n hex = hex.replace(\"#\", \"\");\n let bigint = parseInt(hex, 16);\n let r = (bigint >> 16) & 255;\n let g = (bigint >> 8) & 255;\n let b = bigint & 255;\n return `rgba(${r},${g},${b},${opacity || 0.8})`;\n};\n\nexport type TimescaleDivision = {\n name: string;\n abbrev: string;\n t_age: number;\n b_age: number;\n color: string;\n};\n\nexport const timescale: TimescaleDivision[] = [\n { name: \"Quaternary\", abbrev: \"Q\", t_age: 0, b_age: 2.588, color: \"#F9F97F\" },\n {\n name: \"Neogene\",\n abbrev: \"Ng\",\n t_age: 2.588,\n b_age: 23.03,\n color: \"#FFE619\",\n },\n {\n name: \"Paleogene\",\n abbrev: \"Pg\",\n t_age: 23.03,\n b_age: 66,\n color: \"#FD9A52\",\n },\n { name: \"Cretaceous\", abbrev: \"K\", t_age: 66, b_age: 145, color: \"#7FC64E\" },\n { name: \"Jurassic\", abbrev: \"J\", t_age: 145, b_age: 201.3, color: \"#34B2C9\" },\n {\n name: \"Triassic\",\n abbrev: \"Tr\",\n t_age: 201.3,\n b_age: 252.17,\n color: \"#812B92\",\n },\n {\n name: \"Permian\",\n abbrev: \"P\",\n t_age: 252.17,\n b_age: 298.9,\n color: \"#F04028\",\n },\n {\n name: \"Carboniferous\",\n abbrev: \"C\",\n t_age: 298.9,\n b_age: 358.9,\n color: \"#67A599\",\n },\n {\n name: \"Devonian\",\n abbrev: \"D\",\n t_age: 358.9,\n b_age: 419.2,\n color: \"#CB8C37\",\n },\n {\n name: \"Silurian\",\n abbrev: \"S\",\n t_age: 419.2,\n b_age: 443.8,\n color: \"#B3E1B6\",\n },\n {\n name: \"Ordovician\",\n abbrev: \"O\",\n t_age: 443.8,\n b_age: 485.4,\n color: \"#009270\",\n },\n {\n name: \"Cambrian\",\n abbrev: \"Cm\",\n t_age: 485.4,\n b_age: 541,\n color: \"#7FA056\",\n },\n { name: \"Ediacaran\", abbrev: \"E\", t_age: 541, b_age: 635, color: \"#FFC3E1\" },\n {\n name: \"Cryogenian\",\n abbrev: \"Cr\",\n t_age: 635,\n b_age: 720,\n color: \"#FFAFD7\",\n },\n { name: \"Tonian\", abbrev: \"T\", t_age: 720, b_age: 1000, color: \"#FFA5D2\" },\n { name: \"Stenian\", abbrev: \"St\", t_age: 1000, b_age: 1200, color: \"#FFA5D2\" },\n {\n name: \"Ectasian\",\n abbrev: \"Ec\",\n t_age: 1200,\n b_age: 1400,\n color: \"#FF98CC\",\n },\n {\n name: \"Calymmian\",\n abbrev: \"Ca\",\n t_age: 1400,\n b_age: 1600,\n color: \"#FF8BC5\",\n },\n {\n name: \"Statherian\",\n abbrev: \"St\",\n t_age: 1600,\n b_age: 1800,\n color: \"#EE93C1\",\n },\n {\n name: \"Orosirian\",\n abbrev: \"Or\",\n t_age: 1800,\n b_age: 2050,\n color: \"#E874AF\",\n },\n { name: \"Rhyacian\", abbrev: \"R\", t_age: 2050, b_age: 2300, color: \"#EB84B8\" },\n {\n name: \"Siderian\",\n abbrev: \"Sd\",\n t_age: 2300,\n b_age: 2500,\n color: \"#E874AF\",\n },\n];\n\nexport * from \"./fossils\";\nexport * from \"./formatting\";\n"],"names":[],"mappings":";;AAaO,MAAM,WAAW,CAAC,KAAK,YAAY;AACxC,MAAI,CAAC,KAAK;AACR,WAAO;AAAA,EACT;AACA,QAAM,IAAI,QAAQ,KAAK,EAAE;AACzB,MAAI,SAAS,SAAS,KAAK,EAAE;AAC7B,MAAI,IAAK,UAAU,KAAM;AACzB,MAAI,IAAK,UAAU,IAAK;AACxB,MAAI,IAAI,SAAS;AACjB,SAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAc;AAC9C;;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const sum: (data: any, prop: any) => any;
|
|
2
|
+
export declare const hexToRgb: (hex: any, opacity: any) => string;
|
|
3
|
+
export type TimescaleDivision = {
|
|
4
|
+
name: string;
|
|
5
|
+
abbrev: string;
|
|
6
|
+
t_age: number;
|
|
7
|
+
b_age: number;
|
|
8
|
+
color: string;
|
|
9
|
+
};
|
|
10
|
+
export declare const timescale: TimescaleDivision[];
|
|
11
|
+
export * from './fossils';
|
|
12
|
+
export * from './formatting';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const hexToRgb = (hex, opacity) => {
|
|
2
|
+
if (!hex) {
|
|
3
|
+
return "rgba(0,0,0,0.3)";
|
|
4
|
+
}
|
|
5
|
+
hex = hex.replace("#", "");
|
|
6
|
+
let bigint = parseInt(hex, 16);
|
|
7
|
+
let r = bigint >> 16 & 255;
|
|
8
|
+
let g = bigint >> 8 & 255;
|
|
9
|
+
let b = bigint & 255;
|
|
10
|
+
return `rgba(${r},${g},${b},${opacity})`;
|
|
11
|
+
};
|
|
12
|
+
export {
|
|
13
|
+
hexToRgb
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/location-details/utils/index.ts"],"sourcesContent":["export const sum = (data, prop) => {\n if (!data || !data.length) {\n return [];\n }\n return data\n .map((d) => {\n return d[prop];\n })\n .reduce((a, b) => {\n return a + b;\n }, 0);\n};\n\nexport const hexToRgb = (hex, opacity) => {\n if (!hex) {\n return \"rgba(0,0,0,0.3)\";\n }\n hex = hex.replace(\"#\", \"\");\n let bigint = parseInt(hex, 16);\n let r = (bigint >> 16) & 255;\n let g = (bigint >> 8) & 255;\n let b = bigint & 255;\n return `rgba(${r},${g},${b},${opacity || 0.8})`;\n};\n\nexport type TimescaleDivision = {\n name: string;\n abbrev: string;\n t_age: number;\n b_age: number;\n color: string;\n};\n\nexport const timescale: TimescaleDivision[] = [\n { name: \"Quaternary\", abbrev: \"Q\", t_age: 0, b_age: 2.588, color: \"#F9F97F\" },\n {\n name: \"Neogene\",\n abbrev: \"Ng\",\n t_age: 2.588,\n b_age: 23.03,\n color: \"#FFE619\",\n },\n {\n name: \"Paleogene\",\n abbrev: \"Pg\",\n t_age: 23.03,\n b_age: 66,\n color: \"#FD9A52\",\n },\n { name: \"Cretaceous\", abbrev: \"K\", t_age: 66, b_age: 145, color: \"#7FC64E\" },\n { name: \"Jurassic\", abbrev: \"J\", t_age: 145, b_age: 201.3, color: \"#34B2C9\" },\n {\n name: \"Triassic\",\n abbrev: \"Tr\",\n t_age: 201.3,\n b_age: 252.17,\n color: \"#812B92\",\n },\n {\n name: \"Permian\",\n abbrev: \"P\",\n t_age: 252.17,\n b_age: 298.9,\n color: \"#F04028\",\n },\n {\n name: \"Carboniferous\",\n abbrev: \"C\",\n t_age: 298.9,\n b_age: 358.9,\n color: \"#67A599\",\n },\n {\n name: \"Devonian\",\n abbrev: \"D\",\n t_age: 358.9,\n b_age: 419.2,\n color: \"#CB8C37\",\n },\n {\n name: \"Silurian\",\n abbrev: \"S\",\n t_age: 419.2,\n b_age: 443.8,\n color: \"#B3E1B6\",\n },\n {\n name: \"Ordovician\",\n abbrev: \"O\",\n t_age: 443.8,\n b_age: 485.4,\n color: \"#009270\",\n },\n {\n name: \"Cambrian\",\n abbrev: \"Cm\",\n t_age: 485.4,\n b_age: 541,\n color: \"#7FA056\",\n },\n { name: \"Ediacaran\", abbrev: \"E\", t_age: 541, b_age: 635, color: \"#FFC3E1\" },\n {\n name: \"Cryogenian\",\n abbrev: \"Cr\",\n t_age: 635,\n b_age: 720,\n color: \"#FFAFD7\",\n },\n { name: \"Tonian\", abbrev: \"T\", t_age: 720, b_age: 1000, color: \"#FFA5D2\" },\n { name: \"Stenian\", abbrev: \"St\", t_age: 1000, b_age: 1200, color: \"#FFA5D2\" },\n {\n name: \"Ectasian\",\n abbrev: \"Ec\",\n t_age: 1200,\n b_age: 1400,\n color: \"#FF98CC\",\n },\n {\n name: \"Calymmian\",\n abbrev: \"Ca\",\n t_age: 1400,\n b_age: 1600,\n color: \"#FF8BC5\",\n },\n {\n name: \"Statherian\",\n abbrev: \"St\",\n t_age: 1600,\n b_age: 1800,\n color: \"#EE93C1\",\n },\n {\n name: \"Orosirian\",\n abbrev: \"Or\",\n t_age: 1800,\n b_age: 2050,\n color: \"#E874AF\",\n },\n { name: \"Rhyacian\", abbrev: \"R\", t_age: 2050, b_age: 2300, color: \"#EB84B8\" },\n {\n name: \"Siderian\",\n abbrev: \"Sd\",\n t_age: 2300,\n b_age: 2500,\n color: \"#E874AF\",\n },\n];\n\nexport * from \"./fossils\";\nexport * from \"./formatting\";\n"],"names":[],"mappings":"AAaO,MAAM,WAAW,CAAC,KAAK,YAAY;AACxC,MAAI,CAAC,KAAK;AACR,WAAO;AAAA,EACT;AACA,QAAM,IAAI,QAAQ,KAAK,EAAE;AACzB,MAAI,SAAS,SAAS,KAAK,EAAE;AAC7B,MAAI,IAAK,UAAU,KAAM;AACzB,MAAI,IAAK,UAAU,IAAK;AACxB,MAAI,IAAI,SAAS;AACjB,SAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAc;AAC9C;"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const React = require("react");
|
|
4
|
+
const core = require("@blueprintjs/core");
|
|
5
|
+
const uiComponents = require("@macrostrat/ui-components");
|
|
6
|
+
const h = require("@macrostrat/hyper");
|
|
7
|
+
function Article(props) {
|
|
8
|
+
const [expanded, setExpanded] = React.useState(false);
|
|
9
|
+
const { data } = props;
|
|
10
|
+
const toggleExpand = () => {
|
|
11
|
+
setExpanded(!expanded);
|
|
12
|
+
};
|
|
13
|
+
let year;
|
|
14
|
+
try {
|
|
15
|
+
year = data.coverDate ? data.coverDate.match(/\d{4}/)[0] : "";
|
|
16
|
+
} catch (e) {
|
|
17
|
+
year = "";
|
|
18
|
+
}
|
|
19
|
+
const authors = data?.authors?.split("; ") ?? [];
|
|
20
|
+
const authorList = authors.length > 0 ? h(uiComponents.AuthorList, { names: authors }) : "Unknown";
|
|
21
|
+
const iconName = expanded ? "chevron-up" : "chevron-down";
|
|
22
|
+
return h("div.article", [
|
|
23
|
+
h("div.article-title", [
|
|
24
|
+
h("p.article-author", [authorList, year.length ? ` ${year}. ` : ""]),
|
|
25
|
+
h(
|
|
26
|
+
"a.title-link",
|
|
27
|
+
{ href: data.URL, target: "_blank" },
|
|
28
|
+
h("strong", [data.title + "."])
|
|
29
|
+
),
|
|
30
|
+
h(
|
|
31
|
+
"span",
|
|
32
|
+
{},
|
|
33
|
+
h(core.Button, {
|
|
34
|
+
onClick: toggleExpand,
|
|
35
|
+
minimal: true,
|
|
36
|
+
rightIcon: iconName,
|
|
37
|
+
className: "flat-btn"
|
|
38
|
+
})
|
|
39
|
+
)
|
|
40
|
+
]),
|
|
41
|
+
h(
|
|
42
|
+
core.Collapse,
|
|
43
|
+
{ isOpen: expanded },
|
|
44
|
+
h(
|
|
45
|
+
"span",
|
|
46
|
+
{ className: expanded ? "" : "hidden" },
|
|
47
|
+
h(
|
|
48
|
+
"div.quotes",
|
|
49
|
+
{},
|
|
50
|
+
data.highlight.map(
|
|
51
|
+
(snippet, si) => h("p.gdd-snippet", {
|
|
52
|
+
key: si,
|
|
53
|
+
dangerouslySetInnerHTML: { __html: `...${snippet}...` }
|
|
54
|
+
})
|
|
55
|
+
)
|
|
56
|
+
)
|
|
57
|
+
)
|
|
58
|
+
)
|
|
59
|
+
]);
|
|
60
|
+
}
|
|
61
|
+
exports.Article = Article;
|
|
62
|
+
//# sourceMappingURL=article.cjs.map
|