@macrostrat/column-views 2.4.4 → 3.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 +5 -0
- package/dist/age-axis.cjs +123 -0
- package/dist/age-axis.cjs.map +1 -0
- package/dist/age-axis.d.ts +33 -0
- package/dist/age-axis.js +123 -0
- package/dist/age-axis.js.map +1 -0
- package/dist/age-axis.module.sass.cjs +18 -0
- package/dist/age-axis.module.sass.cjs.map +1 -0
- package/dist/age-axis.module.sass.js +18 -0
- package/dist/age-axis.module.sass.js.map +1 -0
- package/dist/age-model-overlay.cjs +48 -0
- package/dist/age-model-overlay.cjs.map +1 -0
- package/dist/age-model-overlay.d.ts +24 -0
- package/dist/age-model-overlay.js +48 -0
- package/dist/age-model-overlay.js.map +1 -0
- package/dist/age-model-overlay.module.sass.cjs +8 -0
- package/dist/age-model-overlay.module.sass.cjs.map +1 -0
- package/dist/age-model-overlay.module.sass.js +8 -0
- package/dist/age-model-overlay.module.sass.js.map +1 -0
- package/dist/column-views.css +685 -0
- package/dist/column.cjs +247 -0
- package/dist/column.cjs.map +1 -0
- package/dist/column.d.ts +44 -0
- package/dist/column.js +247 -0
- package/dist/column.js.map +1 -0
- package/dist/column.module.sass.cjs +33 -0
- package/dist/column.module.sass.cjs.map +1 -0
- package/dist/column.module.sass.js +33 -0
- package/dist/column.module.sass.js.map +1 -0
- package/dist/correlation-chart/hash-string.cjs +46 -0
- package/dist/correlation-chart/hash-string.cjs.map +1 -0
- package/dist/correlation-chart/hash-string.d.ts +3 -0
- package/dist/correlation-chart/hash-string.js +46 -0
- package/dist/correlation-chart/hash-string.js.map +1 -0
- package/dist/correlation-chart/index.d.ts +2 -0
- package/dist/correlation-chart/main.cjs +202 -0
- package/dist/correlation-chart/main.cjs.map +1 -0
- package/dist/correlation-chart/main.d.ts +15 -0
- package/dist/correlation-chart/main.js +202 -0
- package/dist/correlation-chart/main.js.map +1 -0
- package/dist/correlation-chart/main.module.sass.cjs +28 -0
- package/dist/correlation-chart/main.module.sass.cjs.map +1 -0
- package/dist/correlation-chart/main.module.sass.js +28 -0
- package/dist/correlation-chart/main.module.sass.js.map +1 -0
- package/dist/correlation-chart/prepare-data.cjs +62 -0
- package/dist/correlation-chart/prepare-data.cjs.map +1 -0
- package/dist/correlation-chart/prepare-data.d.ts +52 -0
- package/dist/correlation-chart/prepare-data.js +62 -0
- package/dist/correlation-chart/prepare-data.js.map +1 -0
- package/dist/correlation-chart/stories/utils.d.ts +6 -0
- package/dist/correlation-chart/unconformity-line.d.ts +3 -0
- package/dist/data-provider/base.cjs +349 -0
- package/dist/data-provider/base.cjs.map +1 -0
- package/dist/data-provider/base.d.ts +65 -0
- package/dist/data-provider/base.js +349 -0
- package/dist/data-provider/base.js.map +1 -0
- package/dist/data-provider/column-nav.cjs +36 -0
- package/dist/data-provider/column-nav.cjs.map +1 -0
- package/dist/data-provider/column-nav.d.ts +13 -0
- package/dist/data-provider/column-nav.js +36 -0
- package/dist/data-provider/column-nav.js.map +1 -0
- package/dist/data-provider/core.cjs +56 -0
- package/dist/data-provider/core.cjs.map +1 -0
- package/dist/data-provider/core.d.ts +31 -0
- package/dist/data-provider/core.js +56 -0
- package/dist/{esm/column-views.67804ce5.js.map → data-provider/core.js.map} +1 -1
- package/dist/data-provider/fetch.cjs +210 -0
- package/dist/data-provider/fetch.cjs.map +1 -0
- package/dist/data-provider/fetch.d.ts +27 -0
- package/dist/data-provider/fetch.js +210 -0
- package/dist/data-provider/fetch.js.map +1 -0
- package/dist/data-provider/index.d.ts +5 -0
- package/dist/data-provider/store.cjs +107 -0
- package/dist/data-provider/store.cjs.map +1 -0
- package/dist/data-provider/store.d.ts +34 -0
- package/dist/data-provider/store.js +107 -0
- package/dist/data-provider/store.js.map +1 -0
- package/dist/data-provider/unit-selection.cjs +225 -0
- package/dist/data-provider/unit-selection.cjs.map +1 -0
- package/dist/data-provider/unit-selection.d.ts +49 -0
- package/dist/data-provider/unit-selection.js +225 -0
- package/dist/data-provider/unit-selection.js.map +1 -0
- package/dist/facets/carbon-isotopes/data-area.cjs +64 -0
- package/dist/facets/carbon-isotopes/data-area.cjs.map +1 -0
- package/dist/facets/carbon-isotopes/data-area.d.ts +13 -0
- package/dist/facets/carbon-isotopes/data-area.js +64 -0
- package/dist/facets/carbon-isotopes/data-area.js.map +1 -0
- package/dist/facets/carbon-isotopes/data-provider.cjs +20 -0
- package/dist/facets/carbon-isotopes/data-provider.cjs.map +1 -0
- package/dist/facets/carbon-isotopes/data-provider.d.ts +4 -0
- package/dist/facets/carbon-isotopes/data-provider.js +20 -0
- package/dist/facets/carbon-isotopes/data-provider.js.map +1 -0
- package/dist/facets/carbon-isotopes/index.d.ts +2 -0
- package/dist/facets/carbon-isotopes/isotopes-column.cjs +174 -0
- package/dist/facets/carbon-isotopes/isotopes-column.cjs.map +1 -0
- package/dist/facets/carbon-isotopes/isotopes-column.d.ts +19 -0
- package/dist/facets/carbon-isotopes/isotopes-column.js +174 -0
- package/dist/facets/carbon-isotopes/isotopes-column.js.map +1 -0
- package/dist/facets/carbon-isotopes/isotopes-column.module.sass.cjs +15 -0
- package/dist/facets/carbon-isotopes/isotopes-column.module.sass.cjs.map +1 -0
- package/dist/facets/carbon-isotopes/isotopes-column.module.sass.js +15 -0
- package/dist/facets/carbon-isotopes/isotopes-column.module.sass.js.map +1 -0
- package/dist/facets/detrital-zircon/index.cjs +108 -0
- package/dist/facets/detrital-zircon/index.cjs.map +1 -0
- package/dist/facets/detrital-zircon/index.d.ts +24 -0
- package/dist/facets/detrital-zircon/index.js +108 -0
- package/dist/facets/detrital-zircon/index.js.map +1 -0
- package/dist/facets/detrital-zircon/index.module.sass.cjs +11 -0
- package/dist/facets/detrital-zircon/index.module.sass.cjs.map +1 -0
- package/dist/facets/detrital-zircon/index.module.sass.js +11 -0
- package/dist/facets/detrital-zircon/index.module.sass.js.map +1 -0
- package/dist/facets/detrital-zircon/provider.cjs +22 -0
- package/dist/facets/detrital-zircon/provider.cjs.map +1 -0
- package/dist/facets/detrital-zircon/provider.d.ts +31 -0
- package/dist/facets/detrital-zircon/provider.js +22 -0
- package/dist/facets/detrital-zircon/provider.js.map +1 -0
- package/dist/facets/fossils/index.cjs +120 -0
- package/dist/facets/fossils/index.cjs.map +1 -0
- package/dist/facets/fossils/index.d.ts +7 -0
- package/dist/facets/fossils/index.js +120 -0
- package/dist/facets/fossils/index.js.map +1 -0
- package/dist/facets/fossils/provider.cjs +99 -0
- package/dist/facets/fossils/provider.cjs.map +1 -0
- package/dist/facets/fossils/provider.d.ts +29 -0
- package/dist/facets/fossils/provider.js +99 -0
- package/dist/facets/fossils/provider.js.map +1 -0
- package/dist/facets/fossils/taxon-ranges.cjs +145 -0
- package/dist/facets/fossils/taxon-ranges.cjs.map +1 -0
- package/dist/facets/fossils/taxon-ranges.d.ts +3 -0
- package/dist/facets/fossils/taxon-ranges.js +145 -0
- package/dist/facets/fossils/taxon-ranges.js.map +1 -0
- package/dist/facets/fossils/taxon-ranges.module.sass.cjs +13 -0
- package/dist/facets/fossils/taxon-ranges.module.sass.cjs.map +1 -0
- package/dist/facets/fossils/taxon-ranges.module.sass.js +13 -0
- package/dist/facets/fossils/taxon-ranges.module.sass.js.map +1 -0
- package/dist/facets/index.d.ts +4 -0
- package/dist/facets/measurements/base.cjs +128 -0
- package/dist/facets/measurements/base.cjs.map +1 -0
- package/dist/facets/measurements/base.d.ts +46 -0
- package/dist/facets/measurements/base.js +128 -0
- package/dist/facets/measurements/base.js.map +1 -0
- package/dist/facets/measurements/base.module.sass.cjs +8 -0
- package/dist/facets/measurements/base.module.sass.cjs.map +1 -0
- package/dist/facets/measurements/base.module.sass.js +8 -0
- package/dist/facets/measurements/base.module.sass.js.map +1 -0
- package/dist/facets/measurements/index.d.ts +2 -0
- package/dist/facets/measurements/sgp.cjs +62 -0
- package/dist/facets/measurements/sgp.cjs.map +1 -0
- package/dist/facets/measurements/sgp.d.ts +3 -0
- package/dist/facets/measurements/sgp.js +62 -0
- package/dist/facets/measurements/sgp.js.map +1 -0
- package/dist/index.cjs +164 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.js +164 -0
- package/dist/index.js.map +1 -0
- package/dist/maps/_shared/index.d.ts +2 -0
- package/dist/maps/_shared/inset-map.cjs +69 -0
- package/dist/maps/_shared/inset-map.cjs.map +1 -0
- package/dist/maps/_shared/inset-map.d.ts +16 -0
- package/dist/maps/_shared/inset-map.js +69 -0
- package/dist/maps/_shared/inset-map.js.map +1 -0
- package/dist/maps/_shared/styles.cjs +68 -0
- package/dist/maps/_shared/styles.cjs.map +1 -0
- package/dist/maps/_shared/styles.d.ts +2 -0
- package/dist/maps/_shared/styles.js +68 -0
- package/dist/maps/_shared/styles.js.map +1 -0
- package/dist/maps/column-correlation/core.cjs +185 -0
- package/dist/maps/column-correlation/core.cjs.map +1 -0
- package/dist/maps/column-correlation/core.d.ts +9 -0
- package/dist/maps/column-correlation/core.js +185 -0
- package/dist/maps/column-correlation/core.js.map +1 -0
- package/dist/maps/column-correlation/index.d.ts +2 -0
- package/dist/maps/column-correlation/state.cjs +129 -0
- package/dist/maps/column-correlation/state.cjs.map +1 -0
- package/dist/maps/column-correlation/state.d.ts +31 -0
- package/dist/maps/column-correlation/state.js +129 -0
- package/dist/maps/column-correlation/state.js.map +1 -0
- package/dist/maps/column-navigation/index.d.ts +2 -0
- package/dist/maps/column-navigation/mapbox/index.cjs +175 -0
- package/dist/maps/column-navigation/mapbox/index.cjs.map +1 -0
- package/dist/maps/column-navigation/mapbox/index.d.ts +17 -0
- package/dist/maps/column-navigation/mapbox/index.js +175 -0
- package/dist/maps/column-navigation/mapbox/index.js.map +1 -0
- package/dist/maps/column-navigation/mapbox/keyboard-navigation.cjs +99 -0
- package/dist/maps/column-navigation/mapbox/keyboard-navigation.cjs.map +1 -0
- package/dist/maps/column-navigation/mapbox/keyboard-navigation.d.ts +31 -0
- package/dist/maps/column-navigation/mapbox/keyboard-navigation.js +99 -0
- package/dist/maps/column-navigation/mapbox/keyboard-navigation.js.map +1 -0
- package/dist/maps/column-navigation/mapbox/state.cjs +71 -0
- package/dist/maps/column-navigation/mapbox/state.cjs.map +1 -0
- package/dist/maps/column-navigation/mapbox/state.d.ts +23 -0
- package/dist/maps/column-navigation/mapbox/state.js +71 -0
- package/dist/maps/column-navigation/mapbox/state.js.map +1 -0
- package/dist/maps/column-navigation/svg/animated.d.ts +1 -0
- package/dist/maps/column-navigation/svg/index.cjs +92 -0
- package/dist/maps/column-navigation/svg/index.cjs.map +1 -0
- package/dist/maps/column-navigation/svg/index.d.ts +9 -0
- package/dist/maps/column-navigation/svg/index.js +93 -0
- package/dist/maps/column-navigation/svg/index.js.map +1 -0
- package/dist/maps/column-navigation/svg/layers.cjs +175 -0
- package/dist/maps/column-navigation/svg/layers.cjs.map +1 -0
- package/dist/maps/column-navigation/svg/layers.d.ts +54 -0
- package/dist/maps/column-navigation/svg/layers.js +175 -0
- package/dist/maps/column-navigation/svg/layers.js.map +1 -0
- package/dist/maps/column-navigation/utils/keyboard-navigation.cjs +50 -0
- package/dist/maps/column-navigation/utils/keyboard-navigation.cjs.map +1 -0
- package/dist/maps/column-navigation/utils/keyboard-navigation.d.ts +10 -0
- package/dist/maps/column-navigation/utils/keyboard-navigation.js +50 -0
- package/dist/maps/column-navigation/utils/keyboard-navigation.js.map +1 -0
- package/dist/maps/index.d.ts +3 -0
- package/dist/notes.cjs +41 -0
- package/dist/notes.cjs.map +1 -0
- package/dist/notes.d.ts +12 -0
- package/dist/notes.js +41 -0
- package/dist/notes.js.map +1 -0
- package/dist/prepare-units/composite-scale.cjs +284 -0
- package/dist/prepare-units/composite-scale.cjs.map +1 -0
- package/dist/prepare-units/composite-scale.d.ts +19 -0
- package/dist/prepare-units/composite-scale.js +284 -0
- package/dist/prepare-units/composite-scale.js.map +1 -0
- package/dist/prepare-units/dynamic-scales.cjs +190 -0
- package/dist/prepare-units/dynamic-scales.cjs.map +1 -0
- package/dist/prepare-units/dynamic-scales.d.ts +13 -0
- package/dist/prepare-units/dynamic-scales.js +190 -0
- package/dist/prepare-units/dynamic-scales.js.map +1 -0
- package/dist/prepare-units/helpers.cjs +198 -0
- package/dist/prepare-units/helpers.cjs.map +1 -0
- package/dist/prepare-units/helpers.d.ts +10 -0
- package/dist/prepare-units/helpers.js +198 -0
- package/dist/prepare-units/helpers.js.map +1 -0
- package/dist/prepare-units/index.cjs +130 -0
- package/dist/prepare-units/index.cjs.map +1 -0
- package/dist/prepare-units/index.d.ts +10 -0
- package/dist/prepare-units/index.js +131 -0
- package/dist/prepare-units/index.js.map +1 -0
- package/dist/prepare-units/types.cjs +16 -0
- package/dist/prepare-units/types.cjs.map +1 -0
- package/dist/prepare-units/types.d.ts +99 -0
- package/dist/prepare-units/types.js +16 -0
- package/dist/prepare-units/types.js.map +1 -0
- package/dist/prepare-units/utils.cjs +99 -0
- package/dist/prepare-units/utils.cjs.map +1 -0
- package/dist/prepare-units/utils.d.ts +39 -0
- package/dist/prepare-units/utils.js +99 -0
- package/dist/prepare-units/utils.js.map +1 -0
- package/dist/section.cjs +269 -0
- package/dist/section.cjs.map +1 -0
- package/dist/section.d.ts +45 -0
- package/dist/section.js +269 -0
- package/dist/section.js.map +1 -0
- package/dist/unit-details/index.d.ts +3 -0
- package/dist/unit-details/modal-panel.cjs +57 -0
- package/dist/unit-details/modal-panel.cjs.map +1 -0
- package/dist/unit-details/modal-panel.d.ts +1 -0
- package/dist/unit-details/modal-panel.js +57 -0
- package/dist/unit-details/modal-panel.js.map +1 -0
- package/dist/unit-details/panel.cjs +627 -0
- package/dist/unit-details/panel.cjs.map +1 -0
- package/dist/unit-details/panel.d.ts +87 -0
- package/dist/unit-details/panel.js +627 -0
- package/dist/unit-details/panel.js.map +1 -0
- package/dist/unit-details/panel.module.sass.cjs +42 -0
- package/dist/unit-details/panel.module.sass.cjs.map +1 -0
- package/dist/unit-details/panel.module.sass.js +42 -0
- package/dist/unit-details/panel.module.sass.js.map +1 -0
- package/dist/unit-details/popover.cjs +81 -0
- package/dist/unit-details/popover.cjs.map +1 -0
- package/dist/unit-details/popover.d.ts +9 -0
- package/dist/unit-details/popover.js +81 -0
- package/dist/unit-details/popover.js.map +1 -0
- package/dist/unit-details/popover.module.sass.cjs +10 -0
- package/dist/unit-details/popover.module.sass.cjs.map +1 -0
- package/dist/unit-details/popover.module.sass.js +10 -0
- package/dist/unit-details/popover.module.sass.js.map +1 -0
- package/dist/units/boxes.cjs +187 -0
- package/dist/units/boxes.cjs.map +1 -0
- package/dist/units/boxes.d.ts +54 -0
- package/dist/units/boxes.js +187 -0
- package/dist/units/boxes.js.map +1 -0
- package/dist/units/boxes.module.sass.cjs +11 -0
- package/dist/units/boxes.module.sass.cjs.map +1 -0
- package/dist/units/boxes.module.sass.js +11 -0
- package/dist/units/boxes.module.sass.js.map +1 -0
- package/dist/units/colors.cjs +52 -0
- package/dist/units/colors.cjs.map +1 -0
- package/dist/units/colors.d.ts +7 -0
- package/dist/units/colors.js +52 -0
- package/dist/units/colors.js.map +1 -0
- package/dist/units/composite.cjs +157 -0
- package/dist/units/composite.cjs.map +1 -0
- package/dist/units/composite.d.ts +39 -0
- package/dist/units/composite.js +157 -0
- package/dist/units/composite.js.map +1 -0
- package/dist/units/composite.module.sass.cjs +7 -0
- package/dist/units/composite.module.sass.cjs.map +1 -0
- package/dist/units/composite.module.sass.js +7 -0
- package/dist/units/composite.module.sass.js.map +1 -0
- package/dist/units/index.cjs +117 -0
- package/dist/units/index.cjs.map +1 -0
- package/dist/units/index.d.ts +40 -0
- package/dist/units/index.js +118 -0
- package/dist/units/index.js.map +1 -0
- package/dist/units/names.cjs +72 -0
- package/dist/units/names.cjs.map +1 -0
- package/dist/units/names.d.ts +33 -0
- package/dist/units/names.js +72 -0
- package/dist/units/names.js.map +1 -0
- package/dist/units/resolvers.cjs +114 -0
- package/dist/units/resolvers.cjs.map +1 -0
- package/dist/units/resolvers.d.ts +3 -0
- package/dist/units/resolvers.js +114 -0
- package/dist/units/resolvers.js.map +1 -0
- package/dist/units/types.d.ts +16 -0
- package/package.json +52 -55
- package/src/unit-details/popover.module.sass +3 -3
- package/dist/esm/column-views.006d5180.js +0 -97
- package/dist/esm/column-views.006d5180.js.map +0 -1
- package/dist/esm/column-views.052498a6.js +0 -93
- package/dist/esm/column-views.052498a6.js.map +0 -1
- package/dist/esm/column-views.079119f4.js +0 -17
- package/dist/esm/column-views.079119f4.js.map +0 -1
- package/dist/esm/column-views.0abf7e10.js +0 -67
- package/dist/esm/column-views.0abf7e10.js.map +0 -1
- package/dist/esm/column-views.0b3c0d18.js +0 -322
- package/dist/esm/column-views.0b3c0d18.js.map +0 -1
- package/dist/esm/column-views.0ed9da35.js +0 -141
- package/dist/esm/column-views.0ed9da35.js.map +0 -1
- package/dist/esm/column-views.0faf79a9.js +0 -142
- package/dist/esm/column-views.0faf79a9.js.map +0 -1
- package/dist/esm/column-views.16cc7a58.css +0 -37
- package/dist/esm/column-views.16cc7a58.css.map +0 -1
- package/dist/esm/column-views.17a70358.js +0 -16
- package/dist/esm/column-views.17a70358.js.map +0 -1
- package/dist/esm/column-views.19539293.js +0 -86
- package/dist/esm/column-views.19539293.js.map +0 -1
- package/dist/esm/column-views.1af3ec1f.js +0 -139
- package/dist/esm/column-views.1af3ec1f.js.map +0 -1
- package/dist/esm/column-views.1cd55918.js +0 -206
- package/dist/esm/column-views.1cd55918.js.map +0 -1
- package/dist/esm/column-views.22ec902b.js +0 -34
- package/dist/esm/column-views.22ec902b.js.map +0 -1
- package/dist/esm/column-views.2a0010a3.js +0 -15
- package/dist/esm/column-views.2a0010a3.js.map +0 -1
- package/dist/esm/column-views.2c45a7b5.js +0 -25
- package/dist/esm/column-views.2c45a7b5.js.map +0 -1
- package/dist/esm/column-views.321af3ae.css +0 -59
- package/dist/esm/column-views.321af3ae.css.map +0 -1
- package/dist/esm/column-views.334c3947.js +0 -75
- package/dist/esm/column-views.334c3947.js.map +0 -1
- package/dist/esm/column-views.33796541.js +0 -88
- package/dist/esm/column-views.33796541.js.map +0 -1
- package/dist/esm/column-views.337b40a2.js +0 -199
- package/dist/esm/column-views.337b40a2.js.map +0 -1
- package/dist/esm/column-views.338a7a83.css +0 -134
- package/dist/esm/column-views.338a7a83.css.map +0 -1
- package/dist/esm/column-views.33d35a44.js +0 -118
- package/dist/esm/column-views.33d35a44.js.map +0 -1
- package/dist/esm/column-views.3465c8ad.js +0 -16
- package/dist/esm/column-views.3465c8ad.js.map +0 -1
- package/dist/esm/column-views.362aae9a.js +0 -113
- package/dist/esm/column-views.362aae9a.js.map +0 -1
- package/dist/esm/column-views.3b972a9b.css +0 -4
- package/dist/esm/column-views.3b972a9b.css.map +0 -1
- package/dist/esm/column-views.3de4dc43.js +0 -66
- package/dist/esm/column-views.3de4dc43.js.map +0 -1
- package/dist/esm/column-views.40cd59b5.js +0 -13
- package/dist/esm/column-views.40cd59b5.js.map +0 -1
- package/dist/esm/column-views.4252a555.js +0 -248
- package/dist/esm/column-views.4252a555.js.map +0 -1
- package/dist/esm/column-views.45c70ba4.js +0 -38
- package/dist/esm/column-views.45c70ba4.js.map +0 -1
- package/dist/esm/column-views.47b7d9ca.js +0 -206
- package/dist/esm/column-views.47b7d9ca.js.map +0 -1
- package/dist/esm/column-views.47ca059d.js +0 -225
- package/dist/esm/column-views.47ca059d.js.map +0 -1
- package/dist/esm/column-views.4d374a35.js +0 -19
- package/dist/esm/column-views.4d374a35.js.map +0 -1
- package/dist/esm/column-views.54c1f382.css +0 -23
- package/dist/esm/column-views.54c1f382.css.map +0 -1
- package/dist/esm/column-views.562db43a.css +0 -148
- package/dist/esm/column-views.562db43a.css.map +0 -1
- package/dist/esm/column-views.5e1c216f.js +0 -180
- package/dist/esm/column-views.5e1c216f.js.map +0 -1
- package/dist/esm/column-views.60e97132.js +0 -20
- package/dist/esm/column-views.60e97132.js.map +0 -1
- package/dist/esm/column-views.636d6553.js +0 -343
- package/dist/esm/column-views.636d6553.js.map +0 -1
- package/dist/esm/column-views.64f6ddd3.js +0 -9
- package/dist/esm/column-views.64f6ddd3.js.map +0 -1
- package/dist/esm/column-views.6519a353.js +0 -9
- package/dist/esm/column-views.6519a353.js.map +0 -1
- package/dist/esm/column-views.67804ce5.js +0 -68
- package/dist/esm/column-views.6992ca88.js +0 -25
- package/dist/esm/column-views.6992ca88.js.map +0 -1
- package/dist/esm/column-views.6a954628.js +0 -70
- package/dist/esm/column-views.6a954628.js.map +0 -1
- package/dist/esm/column-views.6c670c13.css +0 -26
- package/dist/esm/column-views.6c670c13.css.map +0 -1
- package/dist/esm/column-views.6cff6659.js +0 -11
- package/dist/esm/column-views.6cff6659.js.map +0 -1
- package/dist/esm/column-views.6d6b73b4.js +0 -55
- package/dist/esm/column-views.6d6b73b4.js.map +0 -1
- package/dist/esm/column-views.6f9511d1.css +0 -25
- package/dist/esm/column-views.6f9511d1.css.map +0 -1
- package/dist/esm/column-views.6fff7602.js +0 -94
- package/dist/esm/column-views.6fff7602.js.map +0 -1
- package/dist/esm/column-views.70387120.js +0 -9
- package/dist/esm/column-views.70387120.js.map +0 -1
- package/dist/esm/column-views.708140ab.css +0 -36
- package/dist/esm/column-views.708140ab.css.map +0 -1
- package/dist/esm/column-views.74837922.js +0 -112
- package/dist/esm/column-views.74837922.js.map +0 -1
- package/dist/esm/column-views.76fb9948.js +0 -169
- package/dist/esm/column-views.76fb9948.js.map +0 -1
- package/dist/esm/column-views.7bfb4318.js +0 -161
- package/dist/esm/column-views.7bfb4318.js.map +0 -1
- package/dist/esm/column-views.7dc53f1b.js +0 -168
- package/dist/esm/column-views.7dc53f1b.js.map +0 -1
- package/dist/esm/column-views.85df21ec.js +0 -567
- package/dist/esm/column-views.85df21ec.js.map +0 -1
- package/dist/esm/column-views.87c589b7.js +0 -72
- package/dist/esm/column-views.87c589b7.js.map +0 -1
- package/dist/esm/column-views.8da2b857.js +0 -81
- package/dist/esm/column-views.8da2b857.js.map +0 -1
- package/dist/esm/column-views.8fb37de7.js +0 -9
- package/dist/esm/column-views.8fb37de7.js.map +0 -1
- package/dist/esm/column-views.9512c5d5.js +0 -240
- package/dist/esm/column-views.9512c5d5.js.map +0 -1
- package/dist/esm/column-views.9905b91c.js +0 -11
- package/dist/esm/column-views.9905b91c.js.map +0 -1
- package/dist/esm/column-views.9b77388d.js +0 -41
- package/dist/esm/column-views.9b77388d.js.map +0 -1
- package/dist/esm/column-views.a4f394fe.js +0 -127
- package/dist/esm/column-views.a4f394fe.js.map +0 -1
- package/dist/esm/column-views.a7c5ae16.js +0 -25
- package/dist/esm/column-views.a7c5ae16.js.map +0 -1
- package/dist/esm/column-views.aa9ede4d.js +0 -206
- package/dist/esm/column-views.aa9ede4d.js.map +0 -1
- package/dist/esm/column-views.b7cf0da2.js +0 -60
- package/dist/esm/column-views.b7cf0da2.js.map +0 -1
- package/dist/esm/column-views.beb54e95.js +0 -39
- package/dist/esm/column-views.beb54e95.js.map +0 -1
- package/dist/esm/column-views.c47dba5f.js +0 -9
- package/dist/esm/column-views.c47dba5f.js.map +0 -1
- package/dist/esm/column-views.c750a6df.js +0 -9
- package/dist/esm/column-views.c750a6df.js.map +0 -1
- package/dist/esm/column-views.cb1cc9f2.js +0 -134
- package/dist/esm/column-views.cb1cc9f2.js.map +0 -1
- package/dist/esm/column-views.cb6fc808.css +0 -54
- package/dist/esm/column-views.cb6fc808.css.map +0 -1
- package/dist/esm/column-views.cc733361.js +0 -55
- package/dist/esm/column-views.cc733361.js.map +0 -1
- package/dist/esm/column-views.ce000969.js +0 -187
- package/dist/esm/column-views.ce000969.js.map +0 -1
- package/dist/esm/column-views.d5e788e8.js +0 -31
- package/dist/esm/column-views.d5e788e8.js.map +0 -1
- package/dist/esm/column-views.d7740949.js +0 -152
- package/dist/esm/column-views.d7740949.js.map +0 -1
- package/dist/esm/column-views.d7e6bf67.js +0 -70
- package/dist/esm/column-views.d7e6bf67.js.map +0 -1
- package/dist/esm/column-views.dac0a3bb.js +0 -149
- package/dist/esm/column-views.dac0a3bb.js.map +0 -1
- package/dist/esm/column-views.dc42f5d0.js +0 -48
- package/dist/esm/column-views.dc42f5d0.js.map +0 -1
- package/dist/esm/column-views.e13a0a76.js +0 -138
- package/dist/esm/column-views.e13a0a76.js.map +0 -1
- package/dist/esm/column-views.e40b8bfb.css +0 -14
- package/dist/esm/column-views.e40b8bfb.css.map +0 -1
- package/dist/esm/column-views.e93478c3.css +0 -194
- package/dist/esm/column-views.e93478c3.css.map +0 -1
- package/dist/esm/column-views.ea08f667.js +0 -218
- package/dist/esm/column-views.ea08f667.js.map +0 -1
- package/dist/esm/column-views.ebb5f280.js +0 -13
- package/dist/esm/column-views.ebb5f280.js.map +0 -1
- package/dist/esm/column-views.edf77621.js +0 -22
- package/dist/esm/column-views.edf77621.js.map +0 -1
- package/dist/esm/column-views.f9dab157.js +0 -3
- package/dist/esm/column-views.f9dab157.js.map +0 -1
- package/dist/esm/column-views.fcf25ec6.js +0 -76
- package/dist/esm/column-views.fcf25ec6.js.map +0 -1
- package/dist/esm/column-views.fe42d2fc.js +0 -134
- package/dist/esm/column-views.fe42d2fc.js.map +0 -1
- package/dist/esm/index.d.ts +0 -1008
- 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/node/column-views.012fa10c.js +0 -2
- package/dist/node/column-views.012fa10c.js.map +0 -1
- package/dist/node/column-views.048fdcaf.js +0 -2
- package/dist/node/column-views.048fdcaf.js.map +0 -1
- package/dist/node/column-views.04a72b35.js +0 -2
- package/dist/node/column-views.04a72b35.js.map +0 -1
- package/dist/node/column-views.0840b115.css +0 -2
- package/dist/node/column-views.0840b115.css.map +0 -1
- package/dist/node/column-views.0af5912d.js +0 -2
- package/dist/node/column-views.0af5912d.js.map +0 -1
- package/dist/node/column-views.0bd15ee4.js +0 -2
- package/dist/node/column-views.0bd15ee4.js.map +0 -1
- package/dist/node/column-views.0d254fd3.js +0 -2
- package/dist/node/column-views.0d254fd3.js.map +0 -1
- package/dist/node/column-views.109cb0c8.js +0 -2
- package/dist/node/column-views.109cb0c8.js.map +0 -1
- package/dist/node/column-views.1261be59.js +0 -2
- package/dist/node/column-views.1261be59.js.map +0 -1
- package/dist/node/column-views.133855e6.js +0 -2
- package/dist/node/column-views.133855e6.js.map +0 -1
- package/dist/node/column-views.15b5cecc.js +0 -2
- package/dist/node/column-views.15b5cecc.js.map +0 -1
- package/dist/node/column-views.183745c0.js +0 -2
- package/dist/node/column-views.183745c0.js.map +0 -1
- package/dist/node/column-views.2e2158f5.js +0 -2
- package/dist/node/column-views.2e2158f5.js.map +0 -1
- package/dist/node/column-views.306acd3f.js +0 -2
- package/dist/node/column-views.306acd3f.js.map +0 -1
- package/dist/node/column-views.31153f29.js +0 -2
- package/dist/node/column-views.31153f29.js.map +0 -1
- package/dist/node/column-views.31da008b.js +0 -2
- package/dist/node/column-views.31da008b.js.map +0 -1
- package/dist/node/column-views.3a079e34.css +0 -2
- package/dist/node/column-views.3a079e34.css.map +0 -1
- package/dist/node/column-views.40e758b3.js +0 -2
- package/dist/node/column-views.40e758b3.js.map +0 -1
- package/dist/node/column-views.41876859.js +0 -2
- package/dist/node/column-views.41876859.js.map +0 -1
- package/dist/node/column-views.4a28d695.js +0 -2
- package/dist/node/column-views.4a28d695.js.map +0 -1
- package/dist/node/column-views.4ec769a6.js +0 -2
- package/dist/node/column-views.4ec769a6.js.map +0 -1
- package/dist/node/column-views.50a992d3.css +0 -2
- package/dist/node/column-views.50a992d3.css.map +0 -1
- package/dist/node/column-views.51fbed89.js +0 -2
- package/dist/node/column-views.51fbed89.js.map +0 -1
- package/dist/node/column-views.5950c8eb.js +0 -2
- package/dist/node/column-views.5950c8eb.js.map +0 -1
- package/dist/node/column-views.5987bc26.js +0 -2
- package/dist/node/column-views.5987bc26.js.map +0 -1
- package/dist/node/column-views.5a9331a9.js +0 -2
- package/dist/node/column-views.5a9331a9.js.map +0 -1
- package/dist/node/column-views.5bb858c9.js +0 -2
- package/dist/node/column-views.5bb858c9.js.map +0 -1
- package/dist/node/column-views.5c1b0eeb.css +0 -2
- package/dist/node/column-views.5c1b0eeb.css.map +0 -1
- package/dist/node/column-views.5cbada24.js +0 -2
- package/dist/node/column-views.5cbada24.js.map +0 -1
- package/dist/node/column-views.5fcd2be6.js +0 -2
- package/dist/node/column-views.5fcd2be6.js.map +0 -1
- package/dist/node/column-views.672b683c.js +0 -2
- package/dist/node/column-views.672b683c.js.map +0 -1
- package/dist/node/column-views.6a0a35e7.js +0 -2
- package/dist/node/column-views.6a0a35e7.js.map +0 -1
- package/dist/node/column-views.6a4c2100.css +0 -2
- package/dist/node/column-views.6a4c2100.css.map +0 -1
- package/dist/node/column-views.6a9da051.js +0 -2
- package/dist/node/column-views.6a9da051.js.map +0 -1
- package/dist/node/column-views.6bba8c57.js +0 -2
- package/dist/node/column-views.6bba8c57.js.map +0 -1
- package/dist/node/column-views.75ba0464.css +0 -2
- package/dist/node/column-views.75ba0464.css.map +0 -1
- package/dist/node/column-views.78b2d234.js +0 -2
- package/dist/node/column-views.78b2d234.js.map +0 -1
- package/dist/node/column-views.7b6e7d82.js +0 -2
- package/dist/node/column-views.7b6e7d82.js.map +0 -1
- package/dist/node/column-views.7b9bd06e.css +0 -2
- package/dist/node/column-views.7b9bd06e.css.map +0 -1
- package/dist/node/column-views.7d45bbeb.js +0 -2
- package/dist/node/column-views.7d45bbeb.js.map +0 -1
- package/dist/node/column-views.7f9c7448.js +0 -2
- package/dist/node/column-views.7f9c7448.js.map +0 -1
- package/dist/node/column-views.82cf7c0d.js +0 -2
- package/dist/node/column-views.82cf7c0d.js.map +0 -1
- package/dist/node/column-views.869c7199.js +0 -2
- package/dist/node/column-views.869c7199.js.map +0 -1
- package/dist/node/column-views.8bee789c.js +0 -2
- package/dist/node/column-views.8bee789c.js.map +0 -1
- package/dist/node/column-views.90c36c0b.js +0 -2
- package/dist/node/column-views.90c36c0b.js.map +0 -1
- package/dist/node/column-views.951e3e9a.js +0 -2
- package/dist/node/column-views.951e3e9a.js.map +0 -1
- package/dist/node/column-views.95411f1b.js +0 -2
- package/dist/node/column-views.95411f1b.js.map +0 -1
- package/dist/node/column-views.9cb13e51.css +0 -2
- package/dist/node/column-views.9cb13e51.css.map +0 -1
- package/dist/node/column-views.a0969fc8.js +0 -2
- package/dist/node/column-views.a0969fc8.js.map +0 -1
- package/dist/node/column-views.a2476e39.js +0 -2
- package/dist/node/column-views.a2476e39.js.map +0 -1
- package/dist/node/column-views.a8f5ee28.js +0 -2
- package/dist/node/column-views.a8f5ee28.js.map +0 -1
- package/dist/node/column-views.ad60c02f.js +0 -2
- package/dist/node/column-views.ad60c02f.js.map +0 -1
- package/dist/node/column-views.add5e42b.js +0 -2
- package/dist/node/column-views.add5e42b.js.map +0 -1
- package/dist/node/column-views.b169b4b5.css +0 -2
- package/dist/node/column-views.b169b4b5.css.map +0 -1
- package/dist/node/column-views.b2e5f823.js +0 -2
- package/dist/node/column-views.b2e5f823.js.map +0 -1
- package/dist/node/column-views.b57e5e6e.js +0 -2
- package/dist/node/column-views.b57e5e6e.js.map +0 -1
- package/dist/node/column-views.b762c9a8.js +0 -2
- package/dist/node/column-views.b762c9a8.js.map +0 -1
- package/dist/node/column-views.ba9108fe.js +0 -2
- package/dist/node/column-views.ba9108fe.js.map +0 -1
- package/dist/node/column-views.c16a19fb.js +0 -2
- package/dist/node/column-views.c16a19fb.js.map +0 -1
- package/dist/node/column-views.c3097d9a.js +0 -2
- package/dist/node/column-views.c3097d9a.js.map +0 -1
- package/dist/node/column-views.c4c15e2b.js +0 -2
- package/dist/node/column-views.c4c15e2b.js.map +0 -1
- package/dist/node/column-views.c651b684.js +0 -2
- package/dist/node/column-views.c651b684.js.map +0 -1
- package/dist/node/column-views.c968a185.css +0 -2
- package/dist/node/column-views.c968a185.css.map +0 -1
- package/dist/node/column-views.ccfb9afb.css +0 -2
- package/dist/node/column-views.ccfb9afb.css.map +0 -1
- package/dist/node/column-views.cdcce702.js +0 -2
- package/dist/node/column-views.cdcce702.js.map +0 -1
- package/dist/node/column-views.cf41a6d7.js +0 -2
- package/dist/node/column-views.cf41a6d7.js.map +0 -1
- package/dist/node/column-views.d22bf15c.js +0 -2
- package/dist/node/column-views.d22bf15c.js.map +0 -1
- package/dist/node/column-views.d737de1e.js +0 -2
- package/dist/node/column-views.d737de1e.js.map +0 -1
- package/dist/node/column-views.da902c44.js +0 -2
- package/dist/node/column-views.da902c44.js.map +0 -1
- package/dist/node/column-views.db3377d8.js +0 -2
- package/dist/node/column-views.db3377d8.js.map +0 -1
- package/dist/node/column-views.dbb4a46b.js +0 -2
- package/dist/node/column-views.dbb4a46b.js.map +0 -1
- package/dist/node/column-views.ddc6184e.css +0 -2
- package/dist/node/column-views.ddc6184e.css.map +0 -1
- package/dist/node/column-views.e0e20136.js +0 -2
- package/dist/node/column-views.e0e20136.js.map +0 -1
- package/dist/node/column-views.e2562224.js +0 -2
- package/dist/node/column-views.e2562224.js.map +0 -1
- package/dist/node/column-views.e6720522.js +0 -2
- package/dist/node/column-views.e6720522.js.map +0 -1
- package/dist/node/column-views.e7e26765.js +0 -2
- package/dist/node/column-views.e7e26765.js.map +0 -1
- package/dist/node/column-views.e93b3bdb.js +0 -2
- package/dist/node/column-views.e93b3bdb.js.map +0 -1
- package/dist/node/column-views.ebb44b7d.js +0 -2
- package/dist/node/column-views.ebb44b7d.js.map +0 -1
- package/dist/node/column-views.ec0087a2.js +0 -2
- package/dist/node/column-views.ec0087a2.js.map +0 -1
- package/dist/node/column-views.eea80478.js +0 -2
- package/dist/node/column-views.eea80478.js.map +0 -1
- package/dist/node/column-views.fb3ed7cc.js +0 -2
- package/dist/node/column-views.fb3ed7cc.js.map +0 -1
- package/dist/node/column-views.fc4c2c61.js +0 -2
- package/dist/node/column-views.fc4c2c61.js.map +0 -1
- package/dist/node/column-views.fcb243a2.js +0 -2
- package/dist/node/column-views.fcb243a2.js.map +0 -1
- package/dist/node/column-views.fea32686.js +0 -2
- package/dist/node/column-views.fea32686.js.map +0 -1
- package/dist/node/index.js +0 -2
- package/dist/node/index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,O,M,W,CCQO,SAAS,EACd,CAAc,CACd,CAAO,CACP,EAAa,CAAA,CAAK,CAClB,EAAe,CAAA,CAAI,CACnB,EAAsB,IAAI,EAE1B,GAAM,CAAA,IAAE,EAAM,MAAA,CAAA,OAAQ,EAAS,SAAA,CAAW,CAAG,GAAW,CAAC,EACnD,EAAQ,CAAI,CAAC,EAAI,CACvB,GAAI,AAAS,MAAT,EACF,MAAO,OAET,IAAM,EAAW,EACd,GAAG,CAAC,AAAC,IACJ,IAAI,EAAO,EAAE,IAAI,CAIjB,MAHI,CAAA,AAAQ,MAAR,GAAgB,MAAM,IAAS,GAAQ,CAAA,GACzC,CAAA,EAAO,IADT,EAGO,CACL,QAAS,CAAC,CAAC,EAAO,CAClB,KAAA,EACA,MAAO,GAAS,IAAI,CAAC,CAAC,EAAO,GAAG,KAClC,CACF,GACC,MAAM,CAAC,AAAC,GAAM,AAAW,MAAX,EAAE,KAAK,EAElB,EAAgB,EAAS,MAAM,CAAC,AAAC,GAAM,AAAU,MAAV,EAAE,IAAI,EAC7C,EAAmB,EAAS,MAAM,CAAC,AAAC,GAAM,AAAU,MAAV,EAAE,IAAI,EAEhD,EAAY,EAAc,MAAM,CAAC,CAAC,EAAK,IAAM,EAAM,EAAE,IAAI,CAAE,GACjE,GAAI,EAAY,GAAK,EAAiB,MAAM,CAAG,EAAG,CAGhD,IAAM,EAAY,AAFI,CAAA,EAAI,CAA1B,EAEkC,EAAiB,MAAM,CACzD,EAAiB,OAAO,CAAC,AAAC,IACxB,EAAc,IAAI,CAAC,CACjB,GAAG,CAAC,CACJ,KAAM,CACR,EACF,EACF,CAEA,GAAI,AAAwB,GAAxB,EAAc,MAAM,CACtB,OAAO,KAIT,IAAM,EAAY,AAAA,EAAO,OAAO,CAC9B,EAAc,GAAG,CAAC,AAAC,GAAM,EAAE,KAAK,EAChC,OACA,EAAc,GAAG,CAAC,AAAC,GAAM,EAAE,IAAI,UAGjC,AAAK,EAID,EACK,EAAU,GAAG,CAAC,QAAS,IAAK,GAAG,GAE/B,EAAU,GAAG,CAAC,QAAS,IAAK,GAAG,GAN/B,EAAU,GAAG,EAQxB,C,O,c,C,C,E,oB,C,I,I,E,I,K,E,W,C,E,a,C,C,U,K,iB","sources":["<anon>","packages/column-views/src/units/colors.ts"],"sourcesContent":["import $avoTc$chromajs from \"chroma-js\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $0557c7dbdd54c055$exports = {};\n\n$parcel$export($0557c7dbdd54c055$exports, \"getMixedUnitColor\", () => $0557c7dbdd54c055$export$175d3e927f1a9860);\n\nfunction $0557c7dbdd54c055$export$175d3e927f1a9860(unit, lithMap, inDarkMode = false, asBackground = true, keyOpts = null) {\n const { key: key = \"lith\", id_key: id_key = \"lith_id\" } = keyOpts ?? {};\n const liths = unit[key];\n if (liths == null) return \"gray\";\n const lithData = liths.map((d)=>{\n let prop = d.prop;\n if (prop == null || isNaN(prop) || prop <= 0) prop = null;\n return {\n lith_id: d[id_key],\n prop: prop,\n color: lithMap?.get(d[id_key])?.color\n };\n }).filter((d)=>d.color != null);\n const lithsWithProp = lithData.filter((d)=>d.prop != null);\n const lithsWithoutProp = lithData.filter((d)=>d.prop == null);\n const totalProp = lithsWithProp.reduce((sum, d)=>sum + d.prop, 0);\n if (totalProp < 1 && lithsWithoutProp.length > 0) {\n const remainingProp = 1 - totalProp;\n // Distribute remaining proportion equally among liths without prop\n const equalProp = remainingProp / lithsWithoutProp.length;\n lithsWithoutProp.forEach((d)=>{\n lithsWithProp.push({\n ...d,\n prop: equalProp\n });\n });\n }\n if (lithsWithProp.length == 0) return null;\n // Mix colors proportionally\n const baseColor = (0, $avoTc$chromajs).average(lithsWithProp.map((d)=>d.color), \"lrgb\", lithsWithProp.map((d)=>d.prop));\n if (!asBackground) return baseColor.hex();\n if (inDarkMode) return baseColor.set(\"hsl.l\", 0.2).hex();\n else return baseColor.set(\"hsl.l\", 0.9).hex();\n}\n\n\nexport {$0557c7dbdd54c055$export$175d3e927f1a9860 as getMixedUnitColor};\n//# sourceMappingURL=column-views.6bba8c57.js.map\n","import chroma from \"chroma-js\";\nimport { UnitLong } from \"@macrostrat/api-types\";\n\ninterface KeyOptions {\n key?: string;\n id_key?: string;\n}\n\nexport function getMixedUnitColor(\n unit: UnitLong,\n lithMap,\n inDarkMode = false,\n asBackground = true,\n keyOpts: KeyOptions = null,\n): string | null {\n const { key = \"lith\", id_key = \"lith_id\" } = keyOpts ?? {};\n const liths = unit[key];\n if (liths == null) {\n return \"gray\";\n }\n const lithData = liths\n .map((d) => {\n let prop = d.prop;\n if (prop == null || isNaN(prop) || prop <= 0) {\n prop = null;\n }\n return {\n lith_id: d[id_key],\n prop,\n color: lithMap?.get(d[id_key])?.color,\n };\n })\n .filter((d) => d.color != null);\n\n const lithsWithProp = lithData.filter((d) => d.prop != null);\n const lithsWithoutProp = lithData.filter((d) => d.prop == null);\n\n const totalProp = lithsWithProp.reduce((sum, d) => sum + d.prop, 0);\n if (totalProp < 1 && lithsWithoutProp.length > 0) {\n const remainingProp = 1 - totalProp;\n // Distribute remaining proportion equally among liths without prop\n const equalProp = remainingProp / lithsWithoutProp.length;\n lithsWithoutProp.forEach((d) => {\n lithsWithProp.push({\n ...d,\n prop: equalProp,\n });\n });\n }\n\n if (lithsWithProp.length == 0) {\n return null;\n }\n\n // Mix colors proportionally\n const baseColor = chroma.average(\n lithsWithProp.map((d) => d.color),\n \"lrgb\",\n lithsWithProp.map((d) => d.prop),\n );\n\n if (!asBackground) {\n return baseColor.hex();\n }\n\n if (inDarkMode) {\n return baseColor.set(\"hsl.l\", 0.2).hex();\n } else {\n return baseColor.set(\"hsl.l\", 0.9).hex();\n }\n}\n"],"names":["$avoTc$chromajs","$0557c7dbdd54c055$export$175d3e927f1a9860","unit","lithMap","inDarkMode","asBackground","keyOpts","key","id_key","liths","lithData","map","d","prop","isNaN","lith_id","color","get","filter","lithsWithProp","lithsWithoutProp","totalProp","reduce","sum","length","equalProp","remainingProp","forEach","push","baseColor","average","set","hex","Object","defineProperty","s","enumerable","configurable","getMixedUnitColor"],"version":3,"file":"column-views.6bba8c57.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
._2-5Cia_truncated-list{border-left:1px solid var(--column-stroke-color);background-color:var(--column-background-color);margin:1px 0;padding-left:.2em;font-size:.9em;list-style:none}._2-5Cia_truncated-list li{display:inline}._2-5Cia_truncated-list li:not(:last-child):after{content:", ";color:var(--secondary-color)}._2-5Cia_truncated-list li._2-5Cia_too-many{color:var(--secondary-color);font-style:italic}
|
|
2
|
-
/*# sourceMappingURL=column-views.75ba0464.css.map */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"ACAA,uLAOE,0CAEE,4FAGF","sources":["column-views.75ba0464.css","packages/column-views/src/facets/measurements/base.module.sass"],"sourcesContent":["._2-5Cia_truncated-list {\n border-left: 1px solid var(--column-stroke-color);\n background-color: var(--column-background-color);\n margin: 1px 0;\n padding-left: .2em;\n font-size: .9em;\n list-style: none;\n}\n\n._2-5Cia_truncated-list li {\n display: inline;\n}\n\n._2-5Cia_truncated-list li:not(:last-child):after {\n content: \", \";\n color: var(--secondary-color);\n}\n\n._2-5Cia_truncated-list li._2-5Cia_too-many {\n color: var(--secondary-color);\n font-style: italic;\n}\n/*# sourceMappingURL=column-views.75ba0464.css.map */\n",".truncated-list\n padding-left: 0.2em\n font-size: 0.9em\n list-style: none\n border-left: 1px solid var(--column-stroke-color)\n margin: 1px 0\n background-color: var(--column-background-color)\n li\n display: inline\n &:not(:last-child):after\n content: \", \"\n color: var(--secondary-color)\n li.too-many\n color: var(--secondary-color)\n font-style: italic\n"],"names":[],"version":3,"file":"column-views.75ba0464.css.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.d737de1e.js";import"./column-views.dbb4a46b.js";import e from"@macrostrat/hyper";import t,{useCallback as o}from"react";import{NotesColumn as n}from"@macrostrat/column-components";var r=globalThis,i={},a={},s=r.parcelRequirea149;null==s&&((s=function(e){if(e in i)return i[e].exports;if(e in a){var t=a[e];delete a[e];var o={id:e,exports:{}};return i[e]=o,t.call(o.exports,o,o.exports),o.exports}var n=Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}).register=function(e,t){a[e]=t},r.parcelRequirea149=s),s.register;var l=s("wtIgl"),c=s("iWhRv");function m(e,t){let{axisType:o}=t,[n,r]=(0,c.getUnitHeightRange)(e,o),i=t.nameForDivision??p;return{height:n,top_height:r,data:e,id:e.unit_id,note:i(e)}}let p=e=>e.unit_name.replace("Mbr","Member").replace("Fm","Formation").replace("Gp","Group"),u=t.memo(function(t){let{axisType:r,units:i}=(0,l.useMacrostratColumnData)(),a=(0,l.useCompositeScale)(),{left:s=0,noteComponent:c,shouldRenderNote:p=(e,t)=>!0,nameForDivision:u,minimumHeight:f=0,divisions:d=i,...h}=t,b=o(e=>0==f||Math.abs(a(e.top_height)-a(e.height))>f,[a,f]);return null==d?null:e(n,{transform:`translate(${s})`,editable:!1,noteComponent:c,notes:d.filter(p).map(e=>m(e,{axisType:r,nameForDivision:u})).filter(b),forceOptions:{nodeSpacing:1},...h})});function f(t){let{note:o}=t;return e("p.col-note-label",o.note)}function d(t){let{noteComponent:o=f,...n}=t;return e(u,{noteComponent:o,...n})}export{m as noteForDivision,p as defaultNameFunction,u as UnitDataColumn,d as UnitNamesColumn};
|
|
2
|
-
//# sourceMappingURL=column-views.78b2d234.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,Q,M,mB,A,Q,G,e,C,K,O,A,Q,e,C,K,+B,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,SCmCA,SAAS,EACP,CAAU,CACV,CAA4E,EAE5E,GAAM,CAAA,SAAE,CAAQ,CAAE,CAAG,EAEf,CAAC,EAAQ,EAAW,CAAG,AAAA,CAAA,EAAA,EAAA,kBAAiB,AAAjB,EAAmB,EAAK,GAE/C,EAAkB,EAAK,eAAe,EAAI,EAEhD,MAAO,CACL,OAAA,EACA,WAAA,EACA,KAAM,EACN,GAAI,EAAI,OAAO,CACf,KAAM,EAAgB,EACxB,CACF,CAEA,IAAM,EAAsB,AAAC,GACpB,EAAI,SAAS,CACjB,OAAO,CAAC,MAAO,UACf,OAAO,CAAC,KAAM,aACd,OAAO,CAAC,KAAM,SA2Cb,EAAiB,AAAA,EAAM,IAAI,CAxCjC,SAAyB,CAAoB,EAC3C,GAAM,CAAA,SAAE,CAAQ,CAAA,MAAE,CAAK,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IACtB,EAAQ,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,IACR,CAAA,KACJ,EAAO,CAAA,CAAA,cACP,CAAa,CAAA,iBACb,EAAmB,CAAC,EAA8B,IAAc,CAAA,CAAA,CAAA,gBAChE,CAAe,CAAA,cACf,EAAgB,CAAA,CAAA,UAChB,EAAY,CAAA,CACZ,GAAG,EACJ,CAAG,EAEE,EAAsB,AAAA,EAC1B,AAAC,GACC,AAAqB,GAAjB,GAEG,AADI,KAAK,GAAG,CAAC,EAAM,EAAE,UAAU,EAAI,EAAM,EAAE,MAAM,GAC5C,EAEd,CAAC,EAAO,EAAc,SAGxB,AAAI,AAAa,MAAb,EAA0B,KAMvB,AAAA,EAAE,EAAa,CACpB,UAAW,CAAC,UAAU,EAAE,EAAK,CAAC,CAAC,CAC/B,SAAU,CAAA,EACV,cAAA,EACA,MATwB,EACvB,MAAM,CAAC,GACP,GAAG,CAAC,AAAC,GAAa,EAAgB,EAAG,CAAE,SAAA,EAAU,gBAAA,CAAgB,IACjE,MAAM,CAAC,GAOR,aAAc,CACZ,YAAa,CACf,EACA,GAAG,CAAI,AACT,EACF,GAUA,SAAS,EAAa,CAAyB,EAC7C,GAAM,CAAA,KAAE,CAAI,CAAE,CAAG,EACjB,OAAO,AAAA,EAAE,mBAAoB,EAAK,IAAI,CACxC,CAEO,SAAS,EAAgB,CAAqB,EACnD,GAAM,CAAA,cAAE,EAAgB,CAAA,CAAc,GAAG,EAAM,CAAG,EAClD,OAAO,AAAA,EAAE,EAAgB,CACvB,cAAA,EACA,GAAG,CAAI,AACT,EACF,Q,K,e,C,K,mB,C,K,c,C,K,e","sources":["<anon>","packages/column-views/src/units/names.ts"],"sourcesContent":["import \"./column-views.d737de1e.js\";\nimport \"./column-views.dbb4a46b.js\";\nimport $eWQbS$macrostrathyper from \"@macrostrat/hyper\";\nimport $eWQbS$react, {useCallback as $eWQbS$useCallback} from \"react\";\nimport {NotesColumn as $eWQbS$NotesColumn} from \"@macrostrat/column-components\";\n\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\n\n\n\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $iWhRv = parcelRequire(\"iWhRv\");\nfunction $e80be54614c93c14$export$2f2e65a797f8fc1e(div, opts) {\n const { axisType: axisType } = opts;\n const [height, top_height] = (0, $iWhRv.getUnitHeightRange)(div, axisType);\n const nameForDivision = opts.nameForDivision ?? $e80be54614c93c14$export$c9757aeb43a67df0;\n return {\n height: height,\n top_height: top_height,\n data: div,\n id: div.unit_id,\n note: nameForDivision(div)\n };\n}\nconst $e80be54614c93c14$export$c9757aeb43a67df0 = (div)=>{\n return div.unit_name.replace(\"Mbr\", \"Member\").replace(\"Fm\", \"Formation\").replace(\"Gp\", \"Group\");\n};\nfunction $e80be54614c93c14$var$UnitDataColumn_(props) {\n const { axisType: axisType, units: units } = (0, $wtIgl.useMacrostratColumnData)();\n const scale = (0, $wtIgl.useCompositeScale)();\n const { left: left = 0, noteComponent: noteComponent, shouldRenderNote: shouldRenderNote = (note, i)=>true, nameForDivision: nameForDivision, minimumHeight: minimumHeight = 0, divisions: divisions = units, ...rest } = props;\n const minimumHeightFilter = (0, $eWQbS$useCallback)((d)=>{\n if (minimumHeight == 0) return true;\n const dy = Math.abs(scale(d.top_height) - scale(d.height));\n return dy > minimumHeight;\n }, [\n scale,\n minimumHeight\n ]);\n if (divisions == null) return null;\n const notes = divisions.filter(shouldRenderNote).map((d)=>$e80be54614c93c14$export$2f2e65a797f8fc1e(d, {\n axisType: axisType,\n nameForDivision: nameForDivision\n })).filter(minimumHeightFilter);\n return (0, $eWQbS$macrostrathyper)((0, $eWQbS$NotesColumn), {\n transform: `translate(${left})`,\n editable: false,\n noteComponent: noteComponent,\n notes: notes,\n forceOptions: {\n nodeSpacing: 1\n },\n ...rest\n });\n}\nconst $e80be54614c93c14$export$6316e673796ccb55 = (0, $eWQbS$react).memo($e80be54614c93c14$var$UnitDataColumn_);\nfunction $e80be54614c93c14$var$UnitNameNote(props) {\n const { note: note } = props;\n return (0, $eWQbS$macrostrathyper)(\"p.col-note-label\", note.note);\n}\nfunction $e80be54614c93c14$export$594d19cdd88f8c16(props) {\n const { noteComponent: noteComponent = $e80be54614c93c14$var$UnitNameNote, ...rest } = props;\n return (0, $eWQbS$macrostrathyper)($e80be54614c93c14$export$6316e673796ccb55, {\n noteComponent: noteComponent,\n ...rest\n });\n}\n\n\nexport {$e80be54614c93c14$export$2f2e65a797f8fc1e as noteForDivision, $e80be54614c93c14$export$c9757aeb43a67df0 as defaultNameFunction, $e80be54614c93c14$export$6316e673796ccb55 as UnitDataColumn, $e80be54614c93c14$export$594d19cdd88f8c16 as UnitNamesColumn};\n//# sourceMappingURL=column-views.78b2d234.js.map\n","import h from \"@macrostrat/hyper\";\nimport { useCallback } from \"react\";\nimport {\n ColumnAxisType,\n NotesColumn,\n type ColumnDivision,\n type NoteData,\n type NotesColumnProps,\n} from \"@macrostrat/column-components\";\nimport type { IUnit } from \"./types\";\nimport React from \"react\";\nimport { useCompositeScale, useMacrostratColumnData } from \"../data-provider\";\nimport {\n type CompositeColumnScale,\n getUnitHeightRange,\n} from \"../prepare-units\";\n\ninterface UnitDataProps extends NotesColumnProps {\n left?: number;\n transform?: string;\n nameForDivision?(obj: IUnit): string;\n noteComponent?: React.ComponentType<any>;\n shouldRenderNote?(div: ColumnDivision | IUnit, index: number): boolean;\n divisions?: IUnit[];\n minimumHeight?: number;\n scale?: CompositeColumnScale;\n}\n\ninterface UnitNote extends NoteData {\n height: number;\n top_height: number;\n data: IUnit;\n id: number;\n}\n\nfunction noteForDivision(\n div: IUnit,\n opts: { axisType: ColumnAxisType; nameForDivision?: (obj: IUnit) => string },\n): UnitNote {\n const { axisType } = opts;\n\n const [height, top_height] = getUnitHeightRange(div, axisType);\n\n const nameForDivision = opts.nameForDivision ?? defaultNameFunction;\n\n return {\n height,\n top_height,\n data: div,\n id: div.unit_id,\n note: nameForDivision(div),\n };\n}\n\nconst defaultNameFunction = (div) => {\n return div.unit_name\n .replace(\"Mbr\", \"Member\")\n .replace(\"Fm\", \"Formation\")\n .replace(\"Gp\", \"Group\");\n};\n\nfunction UnitDataColumn_(props: UnitDataProps) {\n const { axisType, units } = useMacrostratColumnData();\n const scale = useCompositeScale();\n const {\n left = 0,\n noteComponent,\n shouldRenderNote = (note: ColumnDivision | IUnit, i: number) => true,\n nameForDivision,\n minimumHeight = 0,\n divisions = units,\n ...rest\n } = props;\n\n const minimumHeightFilter = useCallback(\n (d) => {\n if (minimumHeight == 0) return true;\n const dy = Math.abs(scale(d.top_height) - scale(d.height));\n return dy > minimumHeight;\n },\n [scale, minimumHeight],\n );\n\n if (divisions == null) return null;\n const notes: UnitNote[] = divisions\n .filter(shouldRenderNote)\n .map((d: IUnit) => noteForDivision(d, { axisType, nameForDivision }))\n .filter(minimumHeightFilter);\n\n return h(NotesColumn, {\n transform: `translate(${left})`,\n editable: false,\n noteComponent,\n notes,\n forceOptions: {\n nodeSpacing: 1,\n },\n ...rest,\n });\n}\n\nconst UnitDataColumn = React.memo(UnitDataColumn_);\n\nexport interface UnitNamesProps extends UnitDataProps {\n paddingLeft?: number;\n width: number;\n onClickNote?: (note: any) => void;\n}\n\nfunction UnitNameNote(props: { note: UnitNote }) {\n const { note } = props;\n return h(\"p.col-note-label\", note.note);\n}\n\nexport function UnitNamesColumn(props: UnitNamesProps) {\n const { noteComponent = UnitNameNote, ...rest } = props;\n return h(UnitDataColumn, {\n noteComponent,\n ...rest,\n });\n}\n\nexport { defaultNameFunction, noteForDivision, UnitDataColumn };\n"],"names":["$eWQbS$macrostrathyper","$eWQbS$react","useCallback","$eWQbS$useCallback","NotesColumn","$eWQbS$NotesColumn","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$wtIgl","$iWhRv","$e80be54614c93c14$export$2f2e65a797f8fc1e","div","opts","axisType","height","top_height","getUnitHeightRange","nameForDivision","$e80be54614c93c14$export$c9757aeb43a67df0","data","unit_id","note","unit_name","replace","$e80be54614c93c14$export$6316e673796ccb55","memo","props","units","useMacrostratColumnData","scale","useCompositeScale","left","noteComponent","shouldRenderNote","i","minimumHeight","divisions","rest","minimumHeightFilter","d","dy","Math","abs","transform","editable","notes","filter","map","forceOptions","nodeSpacing","$e80be54614c93c14$var$UnitNameNote","$e80be54614c93c14$export$594d19cdd88f8c16","noteForDivision","defaultNameFunction","UnitDataColumn","UnitNamesColumn"],"version":3,"file":"column-views.78b2d234.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.a0969fc8.js";import{useKeyHandler as e}from"@macrostrat/ui-components";import{useEffect as t,useRef as n,useCallback as l,useMemo as r}from"react";import{atom as o}from"jotai";import{ageRangeQuantifiedDifference as i,AgeRangeRelationship as u}from"@macrostrat/stratigraphy-utils";function a(e,t,n,l){Object.defineProperty(e,t,{get:n,set:l,enumerable:!0,configurable:!0})}var s=globalThis,c={},f={},p=s.parcelRequirea149;null==p&&((p=function(e){if(e in c)return c[e].exports;if(e in f){var t=f[e];delete f[e];var n={id:e,exports:{}};return c[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){f[e]=t},s.parcelRequirea149=p),p.register;var d={};a(d,"useUnitSelectionDispatch",()=>g),a(d,"useSelectedUnit",()=>b),a(d,"allowUnitSelectionAtom",()=>h),a(d,"selectedUnitIDAtom",()=>$),a(d,"useColumnRef",()=>_),a(d,"useAtomOverlayPosition",()=>w),a(d,"UnitSelectionCallbackManager",()=>y),a(d,"useUnitSelectionTarget",()=>A),a(d,"UnitKeyboardNavigation",()=>D);var m=p("gjmI8");function g(){return m.scope.useSetAtom(x)}function b(){return m.scope.useAtomValue(x)}let h=o(!0),$=o(),v=o(),U=o({current:null});function _(){return m.scope.useAtomValue(U)}let x=o(e=>{if(!e(h))return null;let t=e($);if(null==t)return null;let n=e(m.columnUnitsMapAtom);return n?.get(t)||null},(e,t,n,l=null)=>{let r;if(!e(h))throw Error("Unit selection is disabled.");let o=null;if(null==n?r=null:"number"==typeof n?r=n:"unit_id"in n&&(r=n.unit_id),null!=r){let t=e(m.columnUnitsMapAtom);if(!t?.has(r))throw Error(`Unit with ID ${r} not found in current column units.`);o=t.get(r)??null}let i=null,u=e(U)?.current;if(null!=o&&null!=u&&null!=l){let e=u.getBoundingClientRect(),t=l.getBoundingClientRect();i={x:t.left-e.left,y:t.top-e.top,width:t.width,height:t.height}}return t($,r),t(v,i),o});function w(){return m.scope.useAtomValue(v)}function y({onUnitSelected:e}){let n=m.scope.useAtomValue(x);return t(()=>{e?.(n?.unit_id??null,n??null)},[n?.unit_id]),null}function A(e){let r=n(),o=b(),i=g(),u=o?.unit_id==e.unit_id,a=l(t=>{i?.(e,r.current),t.stopPropagation()},[e,i]);return t(()=>{u&&null!=i&&(i(e,r.current),r.current?.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"}))},[u,i]),[r,u,a]}function D({columnData:t,units:n,allowHorizontalNavigation:l}){if(null==n&&null==t)throw Error("Either units or columnData must be provided.");let o=r(()=>{if(null!=t)return t;let e=new Map;for(let t of n)e.has(t.col_id)||e.set(t.col_id,[]),e.get(t.col_id).push(t);let l=[];for(let[t,n]of e)l.push({columnID:t,units:n});return l.sort((e,t)=>e.columnID-t.columnID),l},[t,n]),a=l??null!=t,s=b(),c=g(),f={38:"up",40:"down"};return a&&(f[37]="left",f[39]="right"),e(e=>{let t=f[e.keyCode];if(null==t)return;let n=function(e,t,n){let l,r=e.findIndex(e=>e.columnID===t.col_id);if(-1===r)return null;if("up"===n||"down"===n){let l=e[r].units,o=l.findIndex(e=>e.unit_id===t.unit_id);return -1===o?null:"up"===n?l[o-1]||null:l[o+1]||null}return l="left"===n?(r-1+e.length)%e.length:(r+1)%e.length,function(e,t){let n=[e.b_age,e.t_age],l=[];for(let e of t){let t=i(n,[e.b_age,e.t_age]);if(t.type===u.Identical)return e;l.push({...t,unit:e})}let r=l.filter(e=>e.type===u.Containing);return(r.sort((e,t)=>t.overlap-e.overlap),r.length>0||((r=l.filter(e=>e.type===u.Contained)).sort((e,t)=>t.overlap-e.overlap),r.length>0||((r=l.filter(e=>e.type===u.PartialOverlap)).sort((e,t)=>t.overlap-e.overlap),r.length>0||((r=l.filter(e=>e.type===u.Disjoint)).sort((e,t)=>e.distance-t.distance),r.length>0))))?r[0].unit:null}(t,e[l].units)}(o,s,t);null!=n&&(c(n,null),e.stopPropagation())},[o,s]),null}export{g as useUnitSelectionDispatch,b as useSelectedUnit,h as allowUnitSelectionAtom,$ as selectedUnitIDAtom,_ as useColumnRef,w as useAtomOverlayPosition,y as UnitSelectionCallbackManager,A as useUnitSelectionTarget,D as UnitKeyboardNavigation};
|
|
2
|
-
//# sourceMappingURL=column-views.7b6e7d82.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,Q,iB,C,K,2B,A,Q,a,C,C,U,C,C,e,C,C,W,C,K,O,A,Q,Q,C,K,O,A,Q,gC,C,C,wB,C,K,gC,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,2B,I,G,E,E,kB,I,G,E,E,yB,I,G,E,E,qB,I,G,E,E,e,I,G,E,E,yB,I,G,E,E,+B,I,G,E,E,yB,I,G,E,E,yB,I,G,I,E,E,SCkBO,SAAS,IACd,OAAO,AAAA,EAAA,KAAI,CAAE,UAAU,CAAC,EAC1B,CAEO,SAAS,IACd,OAAO,AAAA,EAAA,KAAI,CAAE,YAAY,CAAC,EAC5B,CAmBO,IAAM,EAAyB,AAAA,EAAc,CAAA,GAEvC,EAAqB,AAAA,IAE5B,EAAsB,AAAA,IAEtB,EAAgB,AAAA,EAAsC,CAAE,QAAS,IAAK,GAErE,SAAS,IACd,OAAO,AAAA,EAAA,KAAI,CAAE,YAAY,CAAC,EAC5B,CAEA,IAAM,EAAmB,AAAA,EACvB,AAAC,IACC,GAAI,CAAC,EAAI,GAAyB,OAAO,KAEzC,IAAM,EAAS,EAAI,GACnB,GAAI,AAAU,MAAV,EAAgB,OAAO,KAC3B,IAAM,EAAW,EAAI,EAAA,kBAAiB,EACtC,OAAO,GAAU,IAAI,IAAW,IAClC,EACA,CACE,EACA,EACA,EACA,EAA6B,IAAI,QAM7B,EAJJ,GAAI,CAAC,EAAI,GACP,MAAM,AAAI,MAAM,+BAIlB,IAAI,EAAwB,KAS5B,GARI,AAAgB,MAAhB,EACF,EAAS,KACA,AAAwB,UAAxB,OAAO,EAChB,EAAS,EACA,YAAa,GACtB,CAAA,EAAS,EAAa,OAAO,AAAP,EAGpB,AAAU,MAAV,EAAgB,CAElB,IAAM,EAAW,EAAI,EAAA,kBAAiB,EACtC,GAAI,CAAC,GAAU,IAAI,GACjB,MAAM,AAAI,MACR,CAAC,aAAa,EAAE,EAAO,mCAAmC,CAAC,EAG/D,EAAO,EAAS,GAAG,CAAC,IAAW,IACjC,CAEA,IAAI,EAAqC,KAEnC,EAAW,EAAI,IAAgB,QAErC,GAAI,AAAQ,MAAR,GAAgB,AAAY,MAAZ,GAAoB,AAAU,MAAV,EAAgB,CACtD,IAAM,EAAO,EAAS,qBAAqB,GACrC,EAAa,EAAO,qBAAqB,GAC/C,EAAkB,CAChB,EAAG,EAAW,IAAI,CAAG,EAAK,IAAI,CAC9B,EAAG,EAAW,GAAG,CAAG,EAAK,GAAG,CAC5B,MAAO,EAAW,KAAK,CACvB,OAAQ,EAAW,MAAM,AAC3B,CACF,CAKA,OAHA,EAAI,EAAoB,GACxB,EAAI,EAAqB,GAElB,CACT,GAGK,SAAS,IACd,OAAO,AAAA,EAAA,KAAI,CAAE,YAAY,CAAC,EAC5B,CAEO,SAAS,EAA6B,CAAA,eAC3C,CAAc,CACS,EACvB,IAAM,EAAe,AAAA,EAAA,KAAI,CAAE,YAAY,CAAC,GAIxC,OAHA,AAAA,EAAU,KACR,IAAiB,GAAc,SAAW,KAAM,GAAgB,KAClE,EAAG,CAAC,GAAc,QAAQ,EACnB,IACT,CAoBO,SAAS,EACd,CAAW,EAEX,IAAM,EAAM,AAAA,IACN,EAAe,IACf,EAAa,IACb,EAAW,GAAc,SAAW,EAAK,OAAO,CAEhD,EAAU,AAAA,EACd,AAAC,IACC,IAAa,EAAM,EAAI,OAAO,EAC9B,EAAI,eAAe,EACrB,EACA,CAAC,EAAM,EAAW,EAgBpB,OAbA,AAAA,EAAU,KACH,GAAY,AAAc,MAAd,IAEjB,EAAW,EAAM,EAAI,OAAO,EAG5B,EAAI,OAAO,EAAE,eAAe,CAC1B,SAAU,SACV,MAAO,SACP,OAAQ,SACV,GACF,EAAG,CAAC,EAAU,EAAW,EAElB,CAAC,EAAK,EAAU,EAAQ,AACjC,CAEO,SAAS,EAAuB,CAAA,WACrC,CAAU,CAAA,MACV,CAAK,CAAA,0BACL,CAAyB,CAK1B,EACC,GAAI,AAAS,MAAT,GAAiB,AAAc,MAAd,EACnB,MAAM,AAAI,MAAM,gDAGlB,IAAI,EAA4B,AAAA,EAAQ,KACtC,GAAI,AAAc,MAAd,EAAoB,OAAO,EAE/B,IAAM,EAAS,IAAI,IACnB,IAAK,IAAM,KAAQ,EACb,AAAC,EAAO,GAAG,CAAC,EAAK,MAAM,GACzB,EAAO,GAAG,CAAC,EAAK,MAAM,CAAE,EAAE,EAE5B,EAAO,GAAG,CAAC,EAAK,MAAM,EAAG,IAAI,CAAC,GAEhC,IAAM,EAAqB,EAAE,CAC7B,IAAK,GAAM,CAAC,EAAO,EAAM,GAAI,EAC3B,EAAK,IAAI,CAAC,CAAE,SAAU,EAAO,MAAA,CAAM,GAIrC,OADA,EAAK,IAAI,CAAC,CAAC,EAAG,IAAM,EAAE,QAAQ,CAAG,EAAE,QAAQ,EACpC,CACT,EAAG,CAAC,EAAY,EAAM,EAGhB,EACJ,GAA6B,AAAc,MAAd,EAEzB,EAAe,IACf,EAAa,IAEb,EAAoC,CACxC,GAAI,KACJ,GAAI,MACN,EAiBA,OAhBI,IACF,CAAM,CAAC,GAAG,CAAG,OACb,CAAM,CAAC,GAAG,CAAG,SAGf,AAAA,EACE,AAAC,IACC,IAAM,EAAY,CAAM,CAAC,EAAM,OAAO,CAAC,CACvC,GAAI,AAAa,MAAb,EAAmB,OACvB,IAAM,EAAW,AAYvB,SACE,CAAwB,CACxB,CAAoB,CACpB,CAAoB,EAEpB,IAkBI,EAlBE,EAAe,EAAW,SAAS,CACvC,AAAC,GAAQ,EAAI,QAAQ,GAAK,EAAW,MAAM,EAE7C,GAAI,AAAiB,KAAjB,EAAqB,OAAO,KAGhC,GAAI,AAAc,OAAd,GAAsB,AAAc,SAAd,EAAsB,CAC9C,IAAM,EAAQ,CAAU,CAAC,EAAa,CAAC,KAAK,CACtC,EAAK,EAAM,SAAS,CAAC,AAAC,GAAS,EAAK,OAAO,GAAK,EAAW,OAAO,SACxE,AAAI,AAAO,KAAP,EAAkB,KAClB,AAAc,OAAd,EACK,CAAK,CAAC,EAAK,EAAE,EAAI,KAEjB,CAAK,CAAC,EAAK,EAAE,EAAI,IAE5B,CAYA,OAPE,EADE,AAAc,SAAd,EAEC,AAAA,CAAA,EAAe,EAAI,EAAW,MAAK,AAAL,EAAU,EAAW,MAAM,CAExC,AAAA,CAAA,EAAe,CAAA,EAAK,EAAW,MAAM,CAIpD,AAOT,SACE,CAAoB,CACpB,CAA0B,EAE1B,IAAM,EAAiB,CAAC,EAAW,KAAK,CAAE,EAAW,KAAK,CAAC,CAErD,EAAuC,EAAE,CAC/C,IAAK,IAAM,KAAa,EAAgB,CAGtC,IAAM,EAAM,AAAA,EAA6B,EAFf,CAAC,EAAU,KAAK,CAAE,EAAU,KAAK,CAAC,EAG5D,GAAI,EAAI,IAAI,GAAK,AAAA,EAAqB,SAAS,CAC7C,OAAO,EAET,EAAS,IAAI,CAAC,CAAE,GAAG,CAAG,CAAE,KAAM,CAAU,EAC1C,CAEA,IAAI,EAAe,EAAS,MAAM,CAChC,AAAC,GAAM,EAAE,IAAI,GAAK,AAAA,EAAqB,UAAU,SAEnD,EAAa,IAAI,CAAC,CAAC,EAAG,IAAM,EAAE,OAAO,CAAG,EAAE,OAAO,EAC7C,EAAa,MAAM,CAAG,IAO1B,AAHA,CAAA,EAAe,EAAS,MAAM,CAC5B,AAAC,GAAM,EAAE,IAAI,GAAK,AAAA,EAAqB,SAAS,CAAA,EAErC,IAAI,CAAC,CAAC,EAAG,IAAM,EAAE,OAAO,CAAG,EAAE,OAAO,EAC7C,EAAa,MAAM,CAAG,IAO1B,AAHA,CAAA,EAAe,EAAS,MAAM,CAC5B,AAAC,GAAM,EAAE,IAAI,GAAK,AAAA,EAAqB,cAAc,CAAA,EAE1C,IAAI,CAAC,CAAC,EAAG,IAAM,EAAE,OAAO,CAAG,EAAE,OAAO,EAC7C,EAAa,MAAM,CAAG,IAO1B,AAHA,CAAA,EAAe,EAAS,MAAM,CAC5B,AAAC,GAAM,EAAE,IAAI,GAAK,AAAA,EAAqB,QAAQ,CAAA,EAEpC,IAAI,CAAC,CAAC,EAAG,IAAM,EAAE,QAAQ,CAAG,EAAE,QAAQ,EAC/C,EAAa,MAAM,CAAG,MACjB,CAAY,CAAC,EAAE,CAAC,IAAI,CAEtB,IACT,EAxDgC,EADL,CAAU,CAAC,EAAiB,CAAC,KAAK,CAE7D,EA7CmC,EAAa,EAAc,EACxC,OAAZ,IACJ,EAAW,EAAU,MACrB,EAAM,eAAe,GACvB,EACA,CAAC,EAAa,EAAa,EAEtB,IACT,Q,K,wB,C,K,e,C,K,sB,C,K,kB,C,K,Y,C,K,sB,C,K,4B,C,K,sB,C,K,sB","sources":["<anon>","packages/column-views/src/data-provider/unit-selection.ts"],"sourcesContent":["import \"./column-views.a0969fc8.js\";\nimport {useKeyHandler as $2lWH8$useKeyHandler} from \"@macrostrat/ui-components\";\nimport {useEffect as $2lWH8$useEffect, useRef as $2lWH8$useRef, useCallback as $2lWH8$useCallback, useMemo as $2lWH8$useMemo} from \"react\";\nimport {atom as $2lWH8$atom} from \"jotai\";\nimport {ageRangeQuantifiedDifference as $2lWH8$ageRangeQuantifiedDifference, AgeRangeRelationship as $2lWH8$AgeRangeRelationship} from \"@macrostrat/stratigraphy-utils\";\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 $cfa36458f00f4b0e$exports = {};\n\n$parcel$export($cfa36458f00f4b0e$exports, \"useUnitSelectionDispatch\", () => $cfa36458f00f4b0e$export$77a278d5ca56e309);\n$parcel$export($cfa36458f00f4b0e$exports, \"useSelectedUnit\", () => $cfa36458f00f4b0e$export$f0dd93f90aa8e5da);\n$parcel$export($cfa36458f00f4b0e$exports, \"allowUnitSelectionAtom\", () => $cfa36458f00f4b0e$export$3c12ff51b216428d);\n$parcel$export($cfa36458f00f4b0e$exports, \"selectedUnitIDAtom\", () => $cfa36458f00f4b0e$export$6d9520abc11d1c2b);\n$parcel$export($cfa36458f00f4b0e$exports, \"useColumnRef\", () => $cfa36458f00f4b0e$export$ab00b48759e36cb4);\n$parcel$export($cfa36458f00f4b0e$exports, \"useAtomOverlayPosition\", () => $cfa36458f00f4b0e$export$36e20e8024573d5c);\n$parcel$export($cfa36458f00f4b0e$exports, \"UnitSelectionCallbackManager\", () => $cfa36458f00f4b0e$export$1a7a0d00e4ba9c81);\n$parcel$export($cfa36458f00f4b0e$exports, \"useUnitSelectionTarget\", () => $cfa36458f00f4b0e$export$cbbec12b1451fe7d);\n$parcel$export($cfa36458f00f4b0e$exports, \"UnitKeyboardNavigation\", () => $cfa36458f00f4b0e$export$70f5ee19650fc7d1);\n\n\n\n\nvar $gjmI8 = parcelRequire(\"gjmI8\");\n\nfunction $cfa36458f00f4b0e$export$77a278d5ca56e309() {\n return (0, $gjmI8.scope).useSetAtom($cfa36458f00f4b0e$var$selectedUnitAtom);\n}\nfunction $cfa36458f00f4b0e$export$f0dd93f90aa8e5da() {\n return (0, $gjmI8.scope).useAtomValue($cfa36458f00f4b0e$var$selectedUnitAtom);\n}\nconst $cfa36458f00f4b0e$export$3c12ff51b216428d = (0, $2lWH8$atom)(true);\nconst $cfa36458f00f4b0e$export$6d9520abc11d1c2b = (0, $2lWH8$atom)();\nconst $cfa36458f00f4b0e$var$overlayPositionAtom = (0, $2lWH8$atom)();\nconst $cfa36458f00f4b0e$var$columnRefAtom = (0, $2lWH8$atom)({\n current: null\n});\nfunction $cfa36458f00f4b0e$export$ab00b48759e36cb4() {\n return (0, $gjmI8.scope).useAtomValue($cfa36458f00f4b0e$var$columnRefAtom);\n}\nconst $cfa36458f00f4b0e$var$selectedUnitAtom = (0, $2lWH8$atom)((get)=>{\n if (!get($cfa36458f00f4b0e$export$3c12ff51b216428d)) return null;\n const unitID = get($cfa36458f00f4b0e$export$6d9520abc11d1c2b);\n if (unitID == null) return null;\n const unitsMap = get((0, $gjmI8.columnUnitsMapAtom));\n return unitsMap?.get(unitID) || null;\n}, (get, set, selectedUnit, target = null)=>{\n if (!get($cfa36458f00f4b0e$export$3c12ff51b216428d)) throw new Error(\"Unit selection is disabled.\");\n let unitID;\n let unit = null;\n if (selectedUnit == null) unitID = null;\n else if (typeof selectedUnit === \"number\") unitID = selectedUnit;\n else if (\"unit_id\" in selectedUnit) unitID = selectedUnit.unit_id;\n if (unitID != null) {\n // Verify that the unit exists in the current colum, else throw\n const unitsMap = get((0, $gjmI8.columnUnitsMapAtom));\n if (!unitsMap?.has(unitID)) throw new Error(`Unit with ID ${unitID} not found in current column units.`);\n unit = unitsMap.get(unitID) ?? null;\n }\n let overlayPosition = null;\n const columnEl = get($cfa36458f00f4b0e$var$columnRefAtom)?.current;\n if (unit != null && columnEl != null && target != null) {\n const rect = columnEl.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 set($cfa36458f00f4b0e$export$6d9520abc11d1c2b, unitID);\n set($cfa36458f00f4b0e$var$overlayPositionAtom, overlayPosition);\n return unit;\n});\nfunction $cfa36458f00f4b0e$export$36e20e8024573d5c() {\n return (0, $gjmI8.scope).useAtomValue($cfa36458f00f4b0e$var$overlayPositionAtom);\n}\nfunction $cfa36458f00f4b0e$export$1a7a0d00e4ba9c81({ onUnitSelected: onUnitSelected }) {\n const selectedUnit = (0, $gjmI8.scope).useAtomValue($cfa36458f00f4b0e$var$selectedUnitAtom);\n (0, $2lWH8$useEffect)(()=>{\n onUnitSelected?.(selectedUnit?.unit_id ?? null, selectedUnit ?? null);\n }, [\n selectedUnit?.unit_id\n ]);\n return null;\n}\nfunction $cfa36458f00f4b0e$export$cbbec12b1451fe7d(unit) {\n const ref = (0, $2lWH8$useRef)();\n const selectedUnit = $cfa36458f00f4b0e$export$f0dd93f90aa8e5da();\n const selectUnit = $cfa36458f00f4b0e$export$77a278d5ca56e309();\n const selected = selectedUnit?.unit_id == unit.unit_id;\n const onClick = (0, $2lWH8$useCallback)((evt)=>{\n selectUnit?.(unit, ref.current);\n evt.stopPropagation();\n }, [\n unit,\n selectUnit\n ]);\n (0, $2lWH8$useEffect)(()=>{\n if (!selected || selectUnit == 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 selectUnit(unit, ref.current);\n // Scroll the unit into view\n ref.current?.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n inline: \"nearest\"\n });\n }, [\n selected,\n selectUnit\n ]);\n return [\n ref,\n selected,\n onClick\n ];\n}\nfunction $cfa36458f00f4b0e$export$70f5ee19650fc7d1({ columnData: columnData, units: units, allowHorizontalNavigation: allowHorizontalNavigation }) {\n if (units == null && columnData == null) throw new Error(\"Either units or columnData must be provided.\");\n let _columnData = (0, $2lWH8$useMemo)(()=>{\n if (columnData != null) return columnData;\n // Build column data from units\n const colMap = new Map();\n for (const unit of units){\n if (!colMap.has(unit.col_id)) colMap.set(unit.col_id, []);\n colMap.get(unit.col_id).push(unit);\n }\n const cols = [];\n for (const [colID, units] of colMap)cols.push({\n columnID: colID,\n units: units\n });\n // Sort columns by columnID\n cols.sort((a, b)=>a.columnID - b.columnID);\n return cols;\n }, [\n columnData,\n units\n ]);\n // Default to allowing horizontal navigation only if columnData is provided\n const _allowHorizontalNavigation = allowHorizontalNavigation ?? columnData != null;\n const selectedUnit = $cfa36458f00f4b0e$export$f0dd93f90aa8e5da();\n const selectUnit = $cfa36458f00f4b0e$export$77a278d5ca56e309();\n const keyMap = {\n 38: \"up\",\n 40: \"down\"\n };\n if (_allowHorizontalNavigation) {\n keyMap[37] = \"left\";\n keyMap[39] = \"right\";\n }\n (0, $2lWH8$useKeyHandler)((event)=>{\n const direction = keyMap[event.keyCode];\n if (direction == null) return;\n const nextUnit = $cfa36458f00f4b0e$var$getBestUnit(_columnData, selectedUnit, direction);\n if (nextUnit == null) return;\n selectUnit(nextUnit, null);\n event.stopPropagation();\n }, [\n _columnData,\n selectedUnit\n ]);\n return null;\n}\nfunction $cfa36458f00f4b0e$var$getBestUnit(columnData, targetUnit, direction) {\n const thisColIndex = columnData.findIndex((col)=>col.columnID === targetUnit.col_id);\n if (thisColIndex === -1) return null;\n // If up or down, stay in the same column\n if (direction === \"up\" || direction === \"down\") {\n const units = columnData[thisColIndex].units;\n const ix = units.findIndex((unit)=>unit.unit_id === targetUnit.unit_id);\n if (ix === -1) return null;\n if (direction === \"up\") return units[ix - 1] || null;\n else return units[ix + 1] || null;\n }\n // If left or right, move to adjacent column\n let adjacentColIndex;\n if (direction === \"left\") adjacentColIndex = (thisColIndex - 1 + columnData.length) % columnData.length;\n else adjacentColIndex = (thisColIndex + 1) % columnData.length;\n const adjacentColUnits = columnData[adjacentColIndex].units;\n return $cfa36458f00f4b0e$var$getMostOverlappingUnit(targetUnit, adjacentColUnits);\n}\nfunction $cfa36458f00f4b0e$var$getMostOverlappingUnit(targetUnit, candidateUnits) {\n const targetAgeRange = [\n targetUnit.b_age,\n targetUnit.t_age\n ];\n const overlaps = [];\n for (const candidate of candidateUnits){\n const candidateAgeRange = [\n candidate.b_age,\n candidate.t_age\n ];\n const rel = (0, $2lWH8$ageRangeQuantifiedDifference)(targetAgeRange, candidateAgeRange);\n if (rel.type === (0, $2lWH8$AgeRangeRelationship).Identical) return candidate;\n overlaps.push({\n ...rel,\n unit: candidate\n });\n }\n let bestOverlaps = overlaps.filter((d)=>d.type === (0, $2lWH8$AgeRangeRelationship).Containing);\n bestOverlaps.sort((a, b)=>b.overlap - a.overlap);\n if (bestOverlaps.length > 0) return bestOverlaps[0].unit;\n bestOverlaps = overlaps.filter((d)=>d.type === (0, $2lWH8$AgeRangeRelationship).Contained);\n bestOverlaps.sort((a, b)=>b.overlap - a.overlap);\n if (bestOverlaps.length > 0) return bestOverlaps[0].unit;\n bestOverlaps = overlaps.filter((d)=>d.type === (0, $2lWH8$AgeRangeRelationship).PartialOverlap);\n bestOverlaps.sort((a, b)=>b.overlap - a.overlap);\n if (bestOverlaps.length > 0) return bestOverlaps[0].unit;\n bestOverlaps = overlaps.filter((d)=>d.type === (0, $2lWH8$AgeRangeRelationship).Disjoint);\n bestOverlaps.sort((a, b)=>a.distance - b.distance);\n if (bestOverlaps.length > 0) return bestOverlaps[0].unit;\n return null;\n}\n\n\nexport {$cfa36458f00f4b0e$export$77a278d5ca56e309 as useUnitSelectionDispatch, $cfa36458f00f4b0e$export$f0dd93f90aa8e5da as useSelectedUnit, $cfa36458f00f4b0e$export$3c12ff51b216428d as allowUnitSelectionAtom, $cfa36458f00f4b0e$export$6d9520abc11d1c2b as selectedUnitIDAtom, $cfa36458f00f4b0e$export$ab00b48759e36cb4 as useColumnRef, $cfa36458f00f4b0e$export$36e20e8024573d5c as useAtomOverlayPosition, $cfa36458f00f4b0e$export$1a7a0d00e4ba9c81 as UnitSelectionCallbackManager, $cfa36458f00f4b0e$export$cbbec12b1451fe7d as useUnitSelectionTarget, $cfa36458f00f4b0e$export$70f5ee19650fc7d1 as UnitKeyboardNavigation};\n//# sourceMappingURL=column-views.7b6e7d82.js.map\n","import { BaseUnit, UnitLong } from \"@macrostrat/api-types\";\nimport { useKeyHandler } from \"@macrostrat/ui-components\";\nimport { useEffect, useRef, useCallback, useMemo } from \"react\";\nimport type { RectBounds, IUnit } from \"../units/types\";\nimport { atom } from \"jotai\";\nimport { columnUnitsMapAtom, scope } from \"./core\";\nimport { ColumnData } from \"@macrostrat/column-views\";\nimport {\n AgeRangeQuantifiedDifference,\n ageRangeQuantifiedDifference,\n AgeRangeRelationship,\n} from \"@macrostrat/stratigraphy-utils\";\n\ntype UnitSelectDispatch = (\n unit: number | BaseUnit | null,\n target: HTMLElement | null,\n) => void;\n\nexport function useUnitSelectionDispatch(): UnitSelectDispatch {\n return scope.useSetAtom(selectedUnitAtom);\n}\n\nexport function useSelectedUnit() {\n return scope.useAtomValue(selectedUnitAtom);\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 interface UnitSelectionCallbacks {\n // It's sort of unfortunate that we need to pass in the column ref here\n onClickedColumn?: (columnClickData: ColumnClickData, event: Event) => void;\n onUnitSelected?: <T extends BaseUnit>(\n unitID: number | null,\n unit: T | null,\n ) => void;\n}\n\nexport const allowUnitSelectionAtom = atom<boolean>(true);\n\nexport const selectedUnitIDAtom = atom<number | null>();\n\nconst overlayPositionAtom = atom<RectBounds | null>();\n\nconst columnRefAtom = atom<{ current: HTMLElement | null }>({ current: null });\n\nexport function useColumnRef() {\n return scope.useAtomValue(columnRefAtom);\n}\n\nconst selectedUnitAtom = atom(\n (get) => {\n if (!get(allowUnitSelectionAtom)) return null;\n\n const unitID = get(selectedUnitIDAtom);\n if (unitID == null) return null;\n const unitsMap = get(columnUnitsMapAtom);\n return unitsMap?.get(unitID) || null;\n },\n (\n get,\n set,\n selectedUnit: number | BaseUnit | null,\n target: HTMLElement | null = null,\n ): BaseUnit | null => {\n if (!get(allowUnitSelectionAtom)) {\n throw new Error(\"Unit selection is disabled.\");\n }\n\n let unitID: number | null;\n let unit: BaseUnit | null = null;\n if (selectedUnit == null) {\n unitID = null;\n } else if (typeof selectedUnit === \"number\") {\n unitID = selectedUnit;\n } else if (\"unit_id\" in selectedUnit) {\n unitID = selectedUnit.unit_id;\n }\n\n if (unitID != null) {\n // Verify that the unit exists in the current colum, else throw\n const unitsMap = get(columnUnitsMapAtom);\n if (!unitsMap?.has(unitID)) {\n throw new Error(\n `Unit with ID ${unitID} not found in current column units.`,\n );\n }\n unit = unitsMap.get(unitID) ?? null;\n }\n\n let overlayPosition: RectBounds | null = null;\n\n const columnEl = get(columnRefAtom)?.current;\n\n if (unit != null && columnEl != null && target != null) {\n const rect = columnEl.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\n set(selectedUnitIDAtom, unitID);\n set(overlayPositionAtom, overlayPosition);\n\n return unit;\n },\n);\n\nexport function useAtomOverlayPosition() {\n return scope.useAtomValue(overlayPositionAtom);\n}\n\nexport function UnitSelectionCallbackManager({\n onUnitSelected,\n}: UnitSelectionCallbacks) {\n const selectedUnit = scope.useAtomValue(selectedUnitAtom);\n useEffect(() => {\n onUnitSelected?.(selectedUnit?.unit_id ?? null, selectedUnit ?? null);\n }, [selectedUnit?.unit_id]);\n return null;\n}\n\n/** TODO: figure out if onClickedColumn is still needed\n /** This is not the natural place to get positions within the column,\n * but it will work for now.\nif (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 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\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 selectUnit = useUnitSelectionDispatch();\n const selected = selectedUnit?.unit_id == unit.unit_id;\n\n const onClick = useCallback(\n (evt: Event) => {\n selectUnit?.(unit, ref.current);\n evt.stopPropagation();\n },\n [unit, selectUnit],\n );\n\n useEffect(() => {\n if (!selected || selectUnit == 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 selectUnit(unit, ref.current);\n\n // Scroll the unit into view\n ref.current?.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n inline: \"nearest\",\n });\n }, [selected, selectUnit]);\n\n return [ref, selected, onClick];\n}\n\nexport function UnitKeyboardNavigation({\n columnData,\n units,\n allowHorizontalNavigation,\n}: {\n columnData?: ColumnData[];\n units?: UnitLong[];\n allowHorizontalNavigation?: boolean;\n}) {\n if (units == null && columnData == null) {\n throw new Error(\"Either units or columnData must be provided.\");\n }\n\n let _columnData: ColumnData[] = useMemo(() => {\n if (columnData != null) return columnData;\n // Build column data from units\n const colMap = new Map<number, UnitLong[]>();\n for (const unit of units!) {\n if (!colMap.has(unit.col_id)) {\n colMap.set(unit.col_id, []);\n }\n colMap.get(unit.col_id)!.push(unit);\n }\n const cols: ColumnData[] = [];\n for (const [colID, units] of colMap) {\n cols.push({ columnID: colID, units });\n }\n // Sort columns by columnID\n cols.sort((a, b) => a.columnID - b.columnID);\n return cols;\n }, [columnData, units]);\n\n // Default to allowing horizontal navigation only if columnData is provided\n const _allowHorizontalNavigation =\n allowHorizontalNavigation ?? columnData != null;\n\n const selectedUnit = useSelectedUnit() as UnitLong | null;\n const selectUnit = useUnitSelectionDispatch();\n\n const keyMap: Record<number, Direction> = {\n 38: \"up\",\n 40: \"down\",\n };\n if (_allowHorizontalNavigation) {\n keyMap[37] = \"left\";\n keyMap[39] = \"right\";\n }\n\n useKeyHandler(\n (event) => {\n const direction = keyMap[event.keyCode];\n if (direction == null) return;\n const nextUnit = getBestUnit(_columnData, selectedUnit, direction);\n if (nextUnit == null) return;\n selectUnit(nextUnit, null);\n event.stopPropagation();\n },\n [_columnData, selectedUnit],\n );\n return null;\n}\n\ntype Direction = \"up\" | \"down\" | \"left\" | \"right\";\n\nfunction getBestUnit(\n columnData: ColumnData[],\n targetUnit: UnitLong,\n direction: Direction,\n): UnitLong | null {\n const thisColIndex = columnData.findIndex(\n (col) => col.columnID === targetUnit.col_id,\n );\n if (thisColIndex === -1) return null;\n\n // If up or down, stay in the same column\n if (direction === \"up\" || direction === \"down\") {\n const units = columnData[thisColIndex].units;\n const ix = units.findIndex((unit) => unit.unit_id === targetUnit.unit_id);\n if (ix === -1) return null;\n if (direction === \"up\") {\n return units[ix - 1] || null;\n } else {\n return units[ix + 1] || null;\n }\n }\n\n // If left or right, move to adjacent column\n let adjacentColIndex: number;\n if (direction === \"left\") {\n adjacentColIndex =\n (thisColIndex - 1 + columnData.length) % columnData.length;\n } else {\n adjacentColIndex = (thisColIndex + 1) % columnData.length;\n }\n\n const adjacentColUnits = columnData[adjacentColIndex].units;\n return getMostOverlappingUnit(targetUnit, adjacentColUnits);\n}\n\ntype UnitAgeRangeRelationship = AgeRangeQuantifiedDifference & {\n unit: UnitLong;\n};\n\nfunction getMostOverlappingUnit(\n targetUnit: UnitLong,\n candidateUnits: UnitLong[],\n): UnitLong | null {\n const targetAgeRange = [targetUnit.b_age, targetUnit.t_age];\n\n const overlaps: UnitAgeRangeRelationship[] = [];\n for (const candidate of candidateUnits) {\n const candidateAgeRange = [candidate.b_age, candidate.t_age];\n\n const rel = ageRangeQuantifiedDifference(targetAgeRange, candidateAgeRange);\n if (rel.type === AgeRangeRelationship.Identical) {\n return candidate;\n }\n overlaps.push({ ...rel, unit: candidate });\n }\n\n let bestOverlaps = overlaps.filter(\n (d) => d.type === AgeRangeRelationship.Containing,\n );\n bestOverlaps.sort((a, b) => b.overlap - a.overlap);\n if (bestOverlaps.length > 0) {\n return bestOverlaps[0].unit;\n }\n\n bestOverlaps = overlaps.filter(\n (d) => d.type === AgeRangeRelationship.Contained,\n );\n bestOverlaps.sort((a, b) => b.overlap - a.overlap);\n if (bestOverlaps.length > 0) {\n return bestOverlaps[0].unit;\n }\n\n bestOverlaps = overlaps.filter(\n (d) => d.type === AgeRangeRelationship.PartialOverlap,\n );\n bestOverlaps.sort((a, b) => b.overlap - a.overlap);\n if (bestOverlaps.length > 0) {\n return bestOverlaps[0].unit;\n }\n\n bestOverlaps = overlaps.filter(\n (d) => d.type === AgeRangeRelationship.Disjoint,\n );\n bestOverlaps.sort((a, b) => a.distance - b.distance);\n if (bestOverlaps.length > 0) {\n return bestOverlaps[0].unit;\n }\n return null;\n}\n"],"names":["useKeyHandler","$2lWH8$useKeyHandler","useEffect","$2lWH8$useEffect","useRef","$2lWH8$useRef","useCallback","$2lWH8$useCallback","useMemo","$2lWH8$useMemo","atom","$2lWH8$atom","ageRangeQuantifiedDifference","$2lWH8$ageRangeQuantifiedDifference","AgeRangeRelationship","$2lWH8$AgeRangeRelationship","$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","$cfa36458f00f4b0e$exports","$cfa36458f00f4b0e$export$77a278d5ca56e309","$cfa36458f00f4b0e$export$f0dd93f90aa8e5da","$cfa36458f00f4b0e$export$3c12ff51b216428d","$cfa36458f00f4b0e$export$6d9520abc11d1c2b","$cfa36458f00f4b0e$export$ab00b48759e36cb4","$cfa36458f00f4b0e$export$36e20e8024573d5c","$cfa36458f00f4b0e$export$1a7a0d00e4ba9c81","$cfa36458f00f4b0e$export$cbbec12b1451fe7d","$cfa36458f00f4b0e$export$70f5ee19650fc7d1","$gjmI8","scope","useSetAtom","$cfa36458f00f4b0e$var$selectedUnitAtom","useAtomValue","$cfa36458f00f4b0e$var$overlayPositionAtom","$cfa36458f00f4b0e$var$columnRefAtom","current","unitID","unitsMap","columnUnitsMapAtom","selectedUnit","target","unit","unit_id","has","overlayPosition","columnEl","rect","getBoundingClientRect","targetRect","x","left","y","top","width","height","onUnitSelected","ref","selectUnit","selected","onClick","evt","stopPropagation","scrollIntoView","behavior","block","inline","columnData","units","allowHorizontalNavigation","_columnData","colMap","Map","col_id","push","cols","colID","columnID","sort","a","b","_allowHorizontalNavigation","keyMap","event","direction","keyCode","nextUnit","$cfa36458f00f4b0e$var$getBestUnit","targetUnit","adjacentColIndex","thisColIndex","findIndex","col","ix","length","$cfa36458f00f4b0e$var$getMostOverlappingUnit","candidateUnits","targetAgeRange","b_age","t_age","overlaps","candidate","rel","type","Identical","bestOverlaps","filter","d","Containing","overlap","Contained","PartialOverlap","Disjoint","distance","useUnitSelectionDispatch","useSelectedUnit","allowUnitSelectionAtom","selectedUnitIDAtom","useColumnRef","useAtomOverlayPosition","UnitSelectionCallbackManager","useUnitSelectionTarget","UnitKeyboardNavigation"],"version":3,"file":"column-views.7b6e7d82.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
.xOGVkG_isotopes-column{position:relative}.xOGVkG_isotopes-scale-axis{pointer-events:none;height:45px;margin-top:-45px;position:sticky;bottom:0;left:0}.xOGVkG_isotopes-scale-axis svg{background-color:var(--column-background-color)}.xOGVkG_isotopes-scale-axis path,.xOGVkG_isotopes-scale-axis line{stroke:var(--column-text-color);fill:none}.xOGVkG_isotopes-scale-axis text{fill:var(--column-text-color)}.xOGVkG_scale-lines .xOGVkG_tick.xOGVkG_zero line{stroke-width:1px;stroke-dasharray:none}.xOGVkG_scale-lines .xOGVkG_tick line{stroke:var(--column-text-color);stroke-dasharray:1 4}
|
|
2
|
-
/*# sourceMappingURL=column-views.7b9bd06e.css.map */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"ACAA,0CAGA,6GAQE,gFAGA,4GAIA,+DAMI,yFAGF","sources":["column-views.7b9bd06e.css","packages/column-views/src/facets/carbon-isotopes/isotopes-column.module.sass"],"sourcesContent":[".xOGVkG_isotopes-column {\n position: relative;\n}\n\n.xOGVkG_isotopes-scale-axis {\n pointer-events: none;\n height: 45px;\n margin-top: -45px;\n position: sticky;\n bottom: 0;\n left: 0;\n}\n\n.xOGVkG_isotopes-scale-axis svg {\n background-color: var(--column-background-color);\n}\n\n.xOGVkG_isotopes-scale-axis path, .xOGVkG_isotopes-scale-axis line {\n stroke: var(--column-text-color);\n fill: none;\n}\n\n.xOGVkG_isotopes-scale-axis text {\n fill: var(--column-text-color);\n}\n\n.xOGVkG_scale-lines .xOGVkG_tick.xOGVkG_zero line {\n stroke-width: 1px;\n stroke-dasharray: none;\n}\n\n.xOGVkG_scale-lines .xOGVkG_tick line {\n stroke: var(--column-text-color);\n stroke-dasharray: 1 4;\n}\n/*# sourceMappingURL=column-views.7b9bd06e.css.map */\n",".isotopes-column\n position: relative\n\n.isotopes-scale-axis\n position: sticky\n bottom: 0\n left: 0\n pointer-events: none\n margin-top: -45px\n height: 45px\n\n svg\n background-color: var(--column-background-color)\n\n path, line\n stroke: var(--column-text-color)\n fill: none\n\n text\n fill: var(--column-text-color)\n\n.scale-lines\n .tick\n &.zero\n line\n stroke-width: 1px\n stroke-dasharray: none\n line\n stroke: var(--column-text-color)\n stroke-dasharray: 1 4\n\n"],"names":[],"version":3,"file":"column-views.7b9bd06e.css.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{geoCentroid as t}from"d3-geo";import{geoVoronoi as n}from"d3-geo-voronoi";function o(t,n,o,e){if(null==t)return;let r=e(n[o]),i=t.map(t=>{let o=e(n[t]),a=o[0]-r[0];return{col_index:t,angle:Math.atan2(o[1]-r[1],a)}});function f(t){let n=i[0];for(let o of i)Math.abs(a(t-o.angle))<Math.abs(a(t-n.angle))&&(n=o);return n.col_index}return i.sort(t=>t.angle),{37:f(Math.PI),38:f(3*Math.PI/2),39:f(0),40:f(Math.PI/2)}}function a(t){return t>Math.PI?t-=2*Math.PI:t<=-Math.PI&&(t+=2*Math.PI),t}function e(o){let a=o.map(t),e=n(a);return{centroids:a,tri:e}}export{o as buildKeyMapping,e as buildTriangulation};
|
|
2
|
-
//# sourceMappingURL=column-views.7d45bbeb.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,O,e,C,K,Q,A,Q,c,C,K,gB,CCGO,SAAS,EACd,CAAS,CACT,CAAS,CACT,CAAY,CACZ,CAAU,EAEV,GAAI,AAAa,MAAb,EAAmB,OAEvB,IAAM,EAAkB,EAAW,CAAS,CAAC,EAAa,EAEtD,EAAa,EAAU,GAAG,CAAC,AAAC,IAC9B,IAAM,EAAW,EAAW,CAAS,CAAC,EAAM,EACtC,EAAK,CAAQ,CAAC,EAAE,CAAG,CAAe,CAAC,EAAE,CAE3C,MAAO,CAAE,UAAW,EAAO,MAAO,KAAK,KAAK,CADjC,CAAQ,CAAC,EAAE,CAAG,CAAe,CAAC,EAAE,CACM,EAAI,CACvD,GAIA,SAAS,EAAa,CAAG,EAEvB,IAAI,EAAO,CAAU,CAAC,EAAE,CACxB,IAAK,IAAI,KAAQ,EAEb,KAAK,GAAG,CAAC,EAAU,EAAM,EAAK,KAAK,GACnC,KAAK,GAAG,CAAC,EAAU,EAAM,EAAK,KAAK,IAEnC,CAAA,EAAO,CALX,EAQA,OAAO,EAAK,SAAS,AACvB,CAEA,OAhBA,EAAW,IAAI,CAAC,AAAC,GAAM,EAAE,KAAK,EAgBvB,CACL,GAAI,EAAa,KAAK,EAAE,EACxB,GAAI,EAAa,EAAK,KAAK,EAAE,CAAI,GACjC,GAAI,EAAa,GACjB,GAAI,EAAa,KAAK,EAAE,CAAG,EAC7B,CACF,CAEA,SAAS,EAAU,CAAK,EAMtB,OALI,EAAQ,KAAK,EAAE,CACjB,GAAS,EAAI,KAAK,EAAE,CACX,GAAS,CAAC,KAAK,EAAE,EAC1B,CAAA,GAAS,EAAI,KAAK,EAAE,AAAF,EAEb,CACT,CAEO,SAAS,EAAmB,CAAQ,EACzC,IAAM,EAAY,EAAS,GAAG,CAAC,GACzB,EAAM,AAAA,EAAW,GACvB,MAAO,CAAE,UAAA,EAAW,IAAA,CAAI,CAC1B,Q,K,e,C,K,kB","sources":["<anon>","packages/column-views/src/maps/column-navigation/utils/keyboard-navigation.ts"],"sourcesContent":["import {geoCentroid as $dlZgj$geoCentroid} from \"d3-geo\";\nimport {geoVoronoi as $dlZgj$geoVoronoi} from \"d3-geo-voronoi\";\n\n\n\nfunction $ffb3b0c606918d1d$export$b3975a0f05980d25(neighbors, centroids, currentIndex, projection) {\n if (neighbors == null) return;\n const currentCentroid = projection(centroids[currentIndex]);\n let edgeAngles = neighbors.map((index)=>{\n const centroid = projection(centroids[index]);\n const dx = centroid[0] - currentCentroid[0];\n const dy = centroid[1] - currentCentroid[1];\n return {\n col_index: index,\n angle: Math.atan2(dy, dx)\n };\n });\n edgeAngles.sort((d)=>d.angle);\n function closestAngle(num) {\n // Find closest angle in array of neighbors\n let curr = edgeAngles[0];\n for (let next of edgeAngles)if (Math.abs($ffb3b0c606918d1d$var$normalize(num - next.angle)) < Math.abs($ffb3b0c606918d1d$var$normalize(num - curr.angle))) curr = next;\n return curr.col_index;\n }\n return {\n 37: closestAngle(Math.PI),\n 38: closestAngle(3 * Math.PI / 2),\n 39: closestAngle(0),\n 40: closestAngle(Math.PI / 2)\n };\n}\nfunction $ffb3b0c606918d1d$var$normalize(angle) {\n if (angle > Math.PI) angle -= 2 * Math.PI;\n else if (angle <= -Math.PI) angle += 2 * Math.PI;\n return angle;\n}\nfunction $ffb3b0c606918d1d$export$39cd73f2cb8dc4f7(features) {\n const centroids = features.map((0, $dlZgj$geoCentroid));\n const tri = (0, $dlZgj$geoVoronoi)(centroids);\n return {\n centroids: centroids,\n tri: tri\n };\n}\n\n\nexport {$ffb3b0c606918d1d$export$b3975a0f05980d25 as buildKeyMapping, $ffb3b0c606918d1d$export$39cd73f2cb8dc4f7 as buildTriangulation};\n//# sourceMappingURL=column-views.7d45bbeb.js.map\n","import { geoCentroid } from \"d3-geo\";\nimport { geoVoronoi } from \"d3-geo-voronoi\";\n\nexport function buildKeyMapping(\n neighbors,\n centroids,\n currentIndex,\n projection,\n) {\n if (neighbors == null) return;\n\n const currentCentroid = projection(centroids[currentIndex]);\n\n let edgeAngles = neighbors.map((index) => {\n const centroid = projection(centroids[index]);\n const dx = centroid[0] - currentCentroid[0];\n const dy = centroid[1] - currentCentroid[1];\n return { col_index: index, angle: Math.atan2(dy, dx) };\n });\n\n edgeAngles.sort((d) => d.angle);\n\n function closestAngle(num) {\n // Find closest angle in array of neighbors\n let curr = edgeAngles[0];\n for (let next of edgeAngles) {\n if (\n Math.abs(normalize(num - next.angle)) <\n Math.abs(normalize(num - curr.angle))\n ) {\n curr = next;\n }\n }\n return curr.col_index;\n }\n\n return {\n 37: closestAngle(Math.PI), // left\n 38: closestAngle((3 * Math.PI) / 2), // up\n 39: closestAngle(0), // right\n 40: closestAngle(Math.PI / 2), // down\n };\n}\n\nfunction normalize(angle) {\n if (angle > Math.PI) {\n angle -= 2 * Math.PI;\n } else if (angle <= -Math.PI) {\n angle += 2 * Math.PI;\n }\n return angle;\n}\n\nexport function buildTriangulation(features) {\n const centroids = features.map(geoCentroid);\n const tri = geoVoronoi(centroids);\n return { centroids, tri };\n}\n"],"names":["geoCentroid","$dlZgj$geoCentroid","geoVoronoi","$dlZgj$geoVoronoi","$ffb3b0c606918d1d$export$b3975a0f05980d25","neighbors","centroids","currentIndex","projection","currentCentroid","edgeAngles","map","index","centroid","dx","col_index","angle","Math","atan2","closestAngle","num","curr","next","abs","$ffb3b0c606918d1d$var$normalize","sort","d","PI","$ffb3b0c606918d1d$export$39cd73f2cb8dc4f7","features","tri","buildKeyMapping","buildTriangulation"],"version":3,"file":"column-views.7d45bbeb.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
function e(e,a,i,t){Object.defineProperty(e,a,{get:i,set:t,enumerable:!0,configurable:!0})}var a,i,t={};e(t,"HybridScaleType",()=>r),e(t,"HeightMethod",()=>m);var r=((a={}).EquidistantSurfaces="equidistant-surfaces",a.ApproximateHeight="approximate-height",a),m=((i={}).Minimum="minimum",i.Average="average",i.Maximum="maximum",i);export{r as HybridScaleType,m as HeightMethod};
|
|
2
|
-
//# sourceMappingURL=column-views.7f9c7448.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,IC8BY,EAOA,E,E,C,E,E,E,kB,I,G,E,E,e,I,GAPL,IAAK,G,CAAA,E,C,G,mB,C,uB,E,iB,C,qBAAA,GAOA,G,CAAA,E,C,G,O,C,U,E,O,C,U,E,O,C,UAAA,U,K,e,C,K,Y","sources":["<anon>","packages/column-views/src/prepare-units/types.ts"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $6a8fb6360a4f5dac$exports = {};\n\n$parcel$export($6a8fb6360a4f5dac$exports, \"HybridScaleType\", () => $6a8fb6360a4f5dac$export$45e8e2d7a1794c23);\n$parcel$export($6a8fb6360a4f5dac$exports, \"HeightMethod\", () => $6a8fb6360a4f5dac$export$e40aae6f0de9bb95);\nvar $6a8fb6360a4f5dac$export$45e8e2d7a1794c23 = /*#__PURE__*/ function(HybridScaleType) {\n // An age-domain scale that puts equal vertical space between surfaces\n HybridScaleType[\"EquidistantSurfaces\"] = \"equidistant-surfaces\";\n // A height-domain scale that is based on the average height of units between surfaces\n HybridScaleType[\"ApproximateHeight\"] = \"approximate-height\";\n return HybridScaleType;\n}({});\nvar $6a8fb6360a4f5dac$export$e40aae6f0de9bb95 = /*#__PURE__*/ function(HeightMethod) {\n HeightMethod[\"Minimum\"] = \"minimum\";\n HeightMethod[\"Average\"] = \"average\";\n HeightMethod[\"Maximum\"] = \"maximum\";\n return HeightMethod;\n}({});\n\n\nexport {$6a8fb6360a4f5dac$export$45e8e2d7a1794c23 as HybridScaleType, $6a8fb6360a4f5dac$export$e40aae6f0de9bb95 as HeightMethod};\n//# sourceMappingURL=column-views.7f9c7448.js.map\n","import type { UnitLong } from \"@macrostrat/api-types\";\nimport type { ColumnAxisType } from \"@macrostrat/column-components\";\nimport type { ScaleContinuousNumeric } from \"d3-scale\";\n\nexport interface ColumnHeightScaleOptions {\n /** A fixed pixel scale to use for the section (pixels per Myr) */\n pixelScale?: number;\n /** The target height of a constituent unit in pixels, for dynamic\n * scale generation */\n targetUnitHeight?: number;\n /** Min height of a section in pixels. Will override minPixelScale in some cases. */\n minSectionHeight?: number;\n /** The minimum pixel scale to use for the section (pixels per Myr). This is mostly\n * needed because small sections (<1-2 units) don't necessarily have space to comfortably\n * render two axis labels */\n minPixelScale?: number;\n // Axis scale type\n axisType?: ColumnAxisType;\n // Unconformity height in pixels\n unconformityHeight?: number;\n // Whether to collapse unconformities that are less than a height threshold\n collapseSmallUnconformities?: boolean | number;\n // A continuous scale to use instead of generating one\n // TODO: discontinuous scales are not yet supported\n scale?: ScaleContinuousNumeric<number, number>;\n // Hybrid scale type.\n // This overrides parameters such as the axis type\n hybridScale?: HybridScaleDefinition;\n}\n\nexport enum HybridScaleType {\n // An age-domain scale that puts equal vertical space between surfaces\n EquidistantSurfaces = \"equidistant-surfaces\",\n // A height-domain scale that is based on the average height of units between surfaces\n ApproximateHeight = \"approximate-height\",\n}\n\nexport enum HeightMethod {\n Minimum = \"minimum\",\n Average = \"average\",\n Maximum = \"maximum\",\n}\n\nexport interface HybridScaleOptions {\n pixelOffset?: number;\n pixelScale?: number;\n}\n\nexport type ApproxHeightScaleOptions = {\n minHeight?: number;\n defaultHeight?: number;\n heightMethod?: HeightMethod;\n};\n\nexport type HybridScaleDefinition =\n | ({\n type: HybridScaleType.ApproximateHeight;\n } & ApproxHeightScaleOptions)\n | {\n type: HybridScaleType.EquidistantSurfaces;\n };\n\nexport interface SectionScaleOptions extends ColumnHeightScaleOptions {\n axisType: ColumnAxisType;\n domain: [number, number];\n}\n\n/** Output of a section scale. For now, this assumes that the\n * mapping is linear, but it could be extended to support arbitrary\n * scale functions.\n */\nexport interface PackageScaleInfo {\n domain: [number, number];\n pixelHeight: number;\n // TODO: add a function\n scale: ScaleContinuousNumeric<number, number>;\n pixelScale?: number; // if it's a linear scale, this could be defined\n // Subsidiary scale for height mapping (for hybrid scales)\n heightScale?: ScaleContinuousNumeric<number, number>;\n}\n\nexport type PackageScaleLayoutData = PackageScaleInfo & {\n // A unique key for the section to use in React\n key: string;\n offset: number;\n // How much to\n paddingTop: number;\n};\nexport interface StratigraphicPackage {\n /** A collection of stratigraphic information organized in time, corresponding\n * to single or multiple columns. */\n t_age: number;\n b_age: number;\n}\n\nexport interface SectionInfo<\n T extends UnitLong = ExtUnit,\n> extends StratigraphicPackage {\n /** A time-bounded part of a single stratigraphic column. */\n section_id: number | number[];\n units: T[];\n b_pos?: number;\n t_pos?: number;\n}\n\nexport interface ExtUnit extends UnitLong {\n bottomOverlap: boolean;\n overlappingUnits: number[];\n column?: number;\n /* Positions (ages or heights) where the unit is clipped to its containing section.\n * This is relevant if we are filtering by age/height/depth range.\n */\n t_clip_pos?: number;\n b_clip_pos?: number;\n}\n\nexport type PackageLayoutData<T extends UnitLong = ExtUnit> = SectionInfo<T> & {\n scaleInfo: PackageScaleLayoutData;\n // A unique key for the section to use in React\n key: string;\n};\n\nexport interface CompositeScaleData {\n totalHeight: number;\n sections: PackageScaleLayoutData[];\n}\n\nexport interface ColumnScaleOptions extends ColumnHeightScaleOptions {\n axisType: ColumnAxisType;\n unconformityHeight: number;\n}\n\nexport interface CompositeColumnData<T extends UnitLong = ExtUnit> extends Omit<\n CompositeScaleData,\n \"sections\"\n> {\n sections: PackageLayoutData<T>[];\n}\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","HybridScaleType","HeightMethod","$6a8fb6360a4f5dac$exports","$6a8fb6360a4f5dac$export$45e8e2d7a1794c23","$6a8fb6360a4f5dac$export$e40aae6f0de9bb95"],"version":3,"file":"column-views.7f9c7448.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import e from"@macrostrat/hyper";import{createContext as a,useContext as t}from"react";import{useAPIResult as r}from"@macrostrat/ui-components";function o(e,a,t,r){Object.defineProperty(e,a,{get:t,set:r,enumerable:!0,configurable:!0})}var s={};o(s,"MeasurementDataContext",()=>n),o(s,"MeasurementDataProvider",()=>u),o(s,"useMeasurementData",()=>m);let n=a(null);function u(a){let{children:t,...o}=a,s=r("/measurements",{...o,show_values:!0,response:"long"});return e(n.Provider,{value:s,children:t})}let m=()=>t(n);export{n as MeasurementDataContext,u as MeasurementDataProvider,m as useMeasurementData};
|
|
2
|
-
//# sourceMappingURL=column-views.82cf7c0d.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,O,M,mB,A,Q,iB,C,C,c,C,K,O,A,Q,gB,C,K,2B,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,C,E,E,E,yB,I,G,E,E,0B,I,G,E,E,qB,I,GCIA,IAAM,EAAyB,AAAA,EAAc,MAEtC,SAAS,EAAwB,CAAK,EAC3C,GAAM,CAAA,SAAE,CAAQ,CAAE,GAAG,EAAQ,CAAG,EAC1B,EAAM,AAAA,EAAa,gBAAiB,CACxC,GAAG,CAAM,CACT,YAAa,CAAA,EACb,SAAU,MACZ,GACA,OAAO,AAAA,EAAE,EAAuB,QAAQ,CAAE,CAAE,MAAO,EAAK,SAAA,CAAS,EACnE,CAEA,IAAM,EAAqB,IAAM,AAAA,EAAW,U,K,sB,C,K,uB,C,K,kB","sources":["<anon>","packages/column-views/src/facets/carbon-isotopes/data-provider.ts"],"sourcesContent":["import $78BZm$macrostrathyper from \"@macrostrat/hyper\";\nimport {createContext as $78BZm$createContext, useContext as $78BZm$useContext} from \"react\";\nimport {useAPIResult as $78BZm$useAPIResult} from \"@macrostrat/ui-components\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $5cb80f5b33baeaea$exports = {};\n\n$parcel$export($5cb80f5b33baeaea$exports, \"MeasurementDataContext\", () => $5cb80f5b33baeaea$export$c644ef985ce7a4c4);\n$parcel$export($5cb80f5b33baeaea$exports, \"MeasurementDataProvider\", () => $5cb80f5b33baeaea$export$5f01d5b342a89841);\n$parcel$export($5cb80f5b33baeaea$exports, \"useMeasurementData\", () => $5cb80f5b33baeaea$export$8a0335fd9ff72150);\n\n\n\nconst $5cb80f5b33baeaea$export$c644ef985ce7a4c4 = (0, $78BZm$createContext)(null);\nfunction $5cb80f5b33baeaea$export$5f01d5b342a89841(props) {\n const { children: children, ...params } = props;\n const res = (0, $78BZm$useAPIResult)(\"/measurements\", {\n ...params,\n show_values: true,\n response: \"long\"\n });\n return (0, $78BZm$macrostrathyper)($5cb80f5b33baeaea$export$c644ef985ce7a4c4.Provider, {\n value: res,\n children: children\n });\n}\nconst $5cb80f5b33baeaea$export$8a0335fd9ff72150 = ()=>(0, $78BZm$useContext)($5cb80f5b33baeaea$export$c644ef985ce7a4c4);\n\n\nexport {$5cb80f5b33baeaea$export$c644ef985ce7a4c4 as MeasurementDataContext, $5cb80f5b33baeaea$export$5f01d5b342a89841 as MeasurementDataProvider, $5cb80f5b33baeaea$export$8a0335fd9ff72150 as useMeasurementData};\n//# sourceMappingURL=column-views.82cf7c0d.js.map\n","import h from \"@macrostrat/hyper\";\nimport { useContext, createContext } from \"react\";\nimport { useAPIResult } from \"@macrostrat/ui-components\";\n\nconst MeasurementDataContext = createContext(null);\n\nexport function MeasurementDataProvider(props) {\n const { children, ...params } = props;\n const res = useAPIResult(\"/measurements\", {\n ...params,\n show_values: true,\n response: \"long\",\n });\n return h(MeasurementDataContext.Provider, { value: res, children });\n}\n\nconst useMeasurementData = () => useContext(MeasurementDataContext);\n\nexport { useMeasurementData, MeasurementDataContext };\n"],"names":["$78BZm$macrostrathyper","createContext","$78BZm$createContext","useContext","$78BZm$useContext","useAPIResult","$78BZm$useAPIResult","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$5cb80f5b33baeaea$exports","$5cb80f5b33baeaea$export$c644ef985ce7a4c4","$5cb80f5b33baeaea$export$5f01d5b342a89841","$5cb80f5b33baeaea$export$8a0335fd9ff72150","props","children","params","res","show_values","response","Provider","value","MeasurementDataContext","MeasurementDataProvider","useMeasurementData"],"version":3,"file":"column-views.82cf7c0d.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
function e(e,a,t,i){Object.defineProperty(e,a,{get:t,set:i,enumerable:!0,configurable:!0})}var a,t,i,o,r,d={};e(d,"depositional-age",()=>a,e=>a=e),e(d,"detrital-group",()=>t,e=>t=e),e(d,"hide-axis",()=>i,e=>i=e),e(d,"dz-spectra",()=>o,e=>o=e),e(d,"floating-axis",()=>r,e=>r=e),a="depositional-age_977b40",t="detrital-group_977b40",i="hide-axis_977b40",o="dz-spectra_977b40",r="floating-axis_977b40";export{d as default};
|
|
2
|
-
//# sourceMappingURL=column-views.869c7199.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,E,E,C,E,E,E,mB,I,E,A,G,E,G,E,E,iB,I,E,A,G,E,G,E,E,Y,I,E,A,G,E,G,E,E,a,I,E,A,G,E,G,E,E,gB,I,E,A,G,E,GAJA,EAAqC,0BACrC,EAAmC,wBACnC,EAA8B,mBAC9B,EAA+B,oBAC/B,EAAkC,8B,K,O","sources":["<anon>","packages/column-views/src/facets/detrital-zircon/index.module.sass"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $e2ccd234d29c9f88$exports = {};\n\n$parcel$export($e2ccd234d29c9f88$exports, \"depositional-age\", () => $e2ccd234d29c9f88$export$88015686163fb53c, (v) => $e2ccd234d29c9f88$export$88015686163fb53c = v);\n$parcel$export($e2ccd234d29c9f88$exports, \"detrital-group\", () => $e2ccd234d29c9f88$export$d45a020c7ade36c2, (v) => $e2ccd234d29c9f88$export$d45a020c7ade36c2 = v);\n$parcel$export($e2ccd234d29c9f88$exports, \"hide-axis\", () => $e2ccd234d29c9f88$export$a17a3a86840394bc, (v) => $e2ccd234d29c9f88$export$a17a3a86840394bc = v);\n$parcel$export($e2ccd234d29c9f88$exports, \"dz-spectra\", () => $e2ccd234d29c9f88$export$62aa26bd1520c04, (v) => $e2ccd234d29c9f88$export$62aa26bd1520c04 = v);\n$parcel$export($e2ccd234d29c9f88$exports, \"floating-axis\", () => $e2ccd234d29c9f88$export$75f20c0d8de07b35, (v) => $e2ccd234d29c9f88$export$75f20c0d8de07b35 = v);\nvar $e2ccd234d29c9f88$export$88015686163fb53c;\nvar $e2ccd234d29c9f88$export$d45a020c7ade36c2;\nvar $e2ccd234d29c9f88$export$a17a3a86840394bc;\nvar $e2ccd234d29c9f88$export$62aa26bd1520c04;\nvar $e2ccd234d29c9f88$export$75f20c0d8de07b35;\n$e2ccd234d29c9f88$export$88015686163fb53c = \"depositional-age_977b40\";\n$e2ccd234d29c9f88$export$d45a020c7ade36c2 = \"detrital-group_977b40\";\n$e2ccd234d29c9f88$export$a17a3a86840394bc = \"hide-axis_977b40\";\n$e2ccd234d29c9f88$export$62aa26bd1520c04 = \"dz-spectra_977b40\";\n$e2ccd234d29c9f88$export$75f20c0d8de07b35 = \"floating-axis_977b40\";\n\n\nexport {$e2ccd234d29c9f88$exports as default};\n//# sourceMappingURL=column-views.869c7199.js.map\n",null],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$e2ccd234d29c9f88$export$88015686163fb53c","$e2ccd234d29c9f88$export$d45a020c7ade36c2","$e2ccd234d29c9f88$export$a17a3a86840394bc","$e2ccd234d29c9f88$export$62aa26bd1520c04","$e2ccd234d29c9f88$export$75f20c0d8de07b35","$e2ccd234d29c9f88$exports","default"],"version":3,"file":"column-views.869c7199.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.d737de1e.js";import{line as e}from"d3-shape";import{createContext as t,useContext as r}from"react";import o from"@macrostrat/hyper";import{ColumnLayoutContext as a}from"@macrostrat/column-components";var n=globalThis,l={},c={},i=n.parcelRequirea149;null==i&&((i=function(e){if(e in l)return l[e].exports;if(e in c){var t=c[e];delete c[e];var r={id:e,exports:{}};return l[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){c[e]=t},n.parcelRequirea149=i),i.register;var s=i("wtIgl");let u=function(e){let{xScale:t,scale:r,getHeight:o,...a}=e;return function(e,a=0){let n=o(e);return((e,t)=>{let r=e.domain();return r[0]<t<r[1]})(r,n)?[t(e.value),r(n)]:null}},p=t(null),d=function(t){let n=r(a)?.xScale,l=(0,s.useCompositeScale)(),{corrected:c,system:i,children:d,getHeight:m,clipY:f=!1}=t;null==m&&(m=function(e){return null==e.height&&console.log(e),e.height});let b=u({xScale:n,scale:l,corrected:c,system:i,getHeight:m}),x="avg_"+i;c&&(x+="_corr");let g=e().x(e=>n(e[x])).y(e=>l(e.height));return o(p.Provider,{value:{pointLocator:b,lineLocator:g,corrected:c,system:i,clipY:f}},o("g.data",d))},m=function(e){let{pointLocator:t}=r(p),{datum:a,strokeWidth:n,...l}=e,c=t(a);if(null==c)return null;let[i,s]=c;return o("circle",{key:a.sample_id,cx:i,cy:s,r:2,...l})},f=function(e){let{values:t,...a}=e,{lineLocator:n}=r(p);return o("path",{d:n(t),fill:"transparent",...a})},b=()=>r(p);export{d as IsotopesDataArea,m as IsotopeDataPoint,f as IsotopeDataLine,b as useDataLocator};
|
|
2
|
-
//# sourceMappingURL=column-views.8bee789c.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,Q,Q,C,K,U,A,Q,iB,C,C,c,C,K,O,A,Q,M,mB,A,Q,uB,C,K,+B,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,SCWA,IAAM,EAAqB,SAAU,CAAI,EACvC,GAAM,CAAA,OAAE,CAAM,CAAA,MAAE,CAAK,CAAA,UAAE,CAAS,CAAE,GAAG,EAAM,CAAG,EAC9C,OAAO,SAAU,CAAC,CAAE,EAAI,CAAC,EACvB,IAAM,EAAS,EAAU,SACzB,AAAK,AATQ,CAAA,CAAC,EAAO,KACvB,IAAM,EAAS,EAAM,MAAM,GAC3B,OAAO,CAAM,CAAC,EAAE,CAAG,EAAM,CAAM,CAAC,EAAE,AACpC,CAAA,EAMkB,EAAO,GACd,CAAC,EAAO,EAAE,KAAK,EAAG,EAAM,GAAQ,CADF,IAEvC,CACF,EAEM,EAAsB,AAAA,EAAc,MAWpC,EAAmB,SAAU,CAAoB,EACrD,IAAM,EAAS,AAAA,EAAW,IAAsB,OAE1C,EAAQ,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,IAEV,CAAA,UAAE,CAAS,CAAA,OAAE,CAAM,CAAA,SAAE,CAAQ,CAAA,UAAE,CAAS,CAAA,MAAE,EAAQ,CAAA,CAAA,CAAO,CAAG,CAC5D,AAAa,OAAb,GACF,CAAA,EAAY,SAAU,CAAC,EAIrB,OAHI,AAAY,MAAZ,EAAE,MAAM,EACV,QAAQ,GAAG,CAAC,GAEP,EAAE,MAAM,AACjB,CAAA,EAIF,IAAM,EAAe,EAAmB,CACtC,OAAA,EACA,MAAA,EACA,UAAA,EACA,OAAA,EACA,UAAA,CACF,GAEI,EAAS,OAAS,CAClB,CAAA,GACF,CAAA,GAAU,OADZ,EAGA,IAAM,EAAc,AAAA,IACjB,CAAC,CAAC,AAAC,GAAM,EAAO,CAAC,CAAC,EAAO,GAEzB,CAAC,CAAC,AAAC,GAAM,EAAM,EAAE,MAAM,GAG1B,OAAO,AAAA,EAAE,EAAoB,QAAQ,CAAE,CAAE,MAD3B,CAAE,aAAA,EAAc,YAAA,EAAa,UAAA,EAAW,OAAA,EAAQ,MAAA,CAAM,CACrB,EAAG,AAAA,EAAE,SAAU,GAChE,EAEM,EAAmB,SAAU,CAAK,EACtC,GAAM,CAAA,aAAE,CAAY,CAAE,CAAG,AAAA,EAAW,GAC9B,CAAA,MAAE,CAAK,CAAA,YAAE,CAAW,CAAE,GAAG,EAAM,CAAG,EAClC,EAAM,EAAa,GACzB,GAAI,AAAO,MAAP,EAAa,OAAO,KACxB,GAAM,CAAC,EAAI,EAAG,CAAG,EAEjB,OAAO,AAAA,EAAE,SAAU,CACjB,IAAK,EAAM,SAAS,CACpB,GAAA,EACA,GAAA,EACA,EAAG,EACH,GAAG,CAAI,AACT,EACF,EAEM,EAAkB,SAAU,CAAK,EACrC,GAAM,CAAE,OAAQ,CAAU,CAAE,GAAG,EAAM,CAAG,EAClC,CAAA,YAAE,CAAW,CAAE,CAAG,AAAA,EAAW,GACnC,OAAO,AAAA,EAAE,OAAQ,CACf,EAAG,EAAY,GACf,KAAM,cACN,GAAG,CAAI,AACT,EACF,EAEM,EAAiB,IAAM,AAAA,EAAW,U,K,gB,C,K,gB,C,K,e,C,K,c","sources":["<anon>","packages/column-views/src/facets/carbon-isotopes/data-area.ts"],"sourcesContent":["import \"./column-views.d737de1e.js\";\nimport {line as $5eSmp$line} from \"d3-shape\";\nimport {createContext as $5eSmp$createContext, useContext as $5eSmp$useContext} from \"react\";\nimport $5eSmp$macrostrathyper from \"@macrostrat/hyper\";\nimport {ColumnLayoutContext as $5eSmp$ColumnLayoutContext} from \"@macrostrat/column-components\";\n\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\n\n\n\n\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\nconst $561e9bb965350dc6$var$inDomain = (scale, num)=>{\n const domain = scale.domain();\n return domain[0] < num < domain[1];\n};\nconst $561e9bb965350dc6$var$createPointLocator = function(opts) {\n const { xScale: xScale, scale: scale, getHeight: getHeight, ...rest } = opts;\n return function(d, s = 0) {\n const height = getHeight(d);\n if (!$561e9bb965350dc6$var$inDomain(scale, height)) return null;\n return [\n xScale(d.value),\n scale(height)\n ];\n };\n};\nconst $561e9bb965350dc6$var$IsotopesDataContext = (0, $5eSmp$createContext)(null);\nconst $561e9bb965350dc6$export$309ef8546e07d921 = function(props) {\n const xScale = (0, $5eSmp$useContext)((0, $5eSmp$ColumnLayoutContext))?.xScale;\n const scale = (0, $wtIgl.useCompositeScale)();\n let { corrected: corrected, system: system, children: children, getHeight: getHeight, clipY: clipY = false } = props;\n if (getHeight == null) getHeight = function(d) {\n if (d.height == null) console.log(d);\n return d.height;\n };\n // Handlers for creating points and lines\n const pointLocator = $561e9bb965350dc6$var$createPointLocator({\n xScale: xScale,\n scale: scale,\n corrected: corrected,\n system: system,\n getHeight: getHeight\n });\n let column = \"avg_\" + system;\n if (corrected) column += \"_corr\";\n const lineLocator = (0, $5eSmp$line)().x((d)=>xScale(d[column]))// @ts-ignore\n .y((d)=>scale(d.height));\n const value = {\n pointLocator: pointLocator,\n lineLocator: lineLocator,\n corrected: corrected,\n system: system,\n clipY: clipY\n };\n return (0, $5eSmp$macrostrathyper)($561e9bb965350dc6$var$IsotopesDataContext.Provider, {\n value: value\n }, (0, $5eSmp$macrostrathyper)(\"g.data\", children));\n};\nconst $561e9bb965350dc6$export$4cb5d059db4e2bd = function(props) {\n const { pointLocator: pointLocator } = (0, $5eSmp$useContext)($561e9bb965350dc6$var$IsotopesDataContext);\n const { datum: datum, strokeWidth: strokeWidth, ...rest } = props;\n const loc = pointLocator(datum);\n if (loc == null) return null;\n const [cx, cy] = loc;\n return (0, $5eSmp$macrostrathyper)(\"circle\", {\n key: datum.sample_id,\n cx: cx,\n cy: cy,\n r: 2,\n ...rest\n });\n};\nconst $561e9bb965350dc6$export$628a3ef6eb9c3a89 = function(props) {\n const { values: lineValues, ...rest } = props;\n const { lineLocator: lineLocator } = (0, $5eSmp$useContext)($561e9bb965350dc6$var$IsotopesDataContext);\n return (0, $5eSmp$macrostrathyper)(\"path\", {\n d: lineLocator(lineValues),\n fill: \"transparent\",\n ...rest\n });\n};\nconst $561e9bb965350dc6$export$919dbb10b6b5b75 = ()=>(0, $5eSmp$useContext)($561e9bb965350dc6$var$IsotopesDataContext);\n\n\nexport {$561e9bb965350dc6$export$309ef8546e07d921 as IsotopesDataArea, $561e9bb965350dc6$export$4cb5d059db4e2bd as IsotopeDataPoint, $561e9bb965350dc6$export$628a3ef6eb9c3a89 as IsotopeDataLine, $561e9bb965350dc6$export$919dbb10b6b5b75 as useDataLocator};\n//# sourceMappingURL=column-views.8bee789c.js.map\n","import { line } from \"d3-shape\";\nimport { createContext, useContext } from \"react\";\nimport h from \"@macrostrat/hyper\";\nimport { ColumnLayoutContext } from \"@macrostrat/column-components\";\nimport { useCompositeScale } from \"../../data-provider\";\n\nconst inDomain = (scale, num) => {\n const domain = scale.domain();\n return domain[0] < num < domain[1];\n};\n\nconst createPointLocator = function (opts) {\n const { xScale, scale, getHeight, ...rest } = opts;\n return function (d, s = 0) {\n const height = getHeight(d);\n if (!inDomain(scale, height)) return null;\n return [xScale(d.value), scale(height)];\n };\n};\n\nconst IsotopesDataContext = createContext(null);\n\nexport interface DataAreaProps {\n clipY: boolean;\n parameter: string;\n corrected: boolean;\n system: string;\n children: React.ReactNode;\n getHeight?: Function;\n}\n\nconst IsotopesDataArea = function (props: DataAreaProps) {\n const xScale = useContext(ColumnLayoutContext)?.xScale;\n\n const scale = useCompositeScale();\n\n let { corrected, system, children, getHeight, clipY = false } = props;\n if (getHeight == null) {\n getHeight = function (d) {\n if (d.height == null) {\n console.log(d);\n }\n return d.height;\n };\n }\n\n // Handlers for creating points and lines\n const pointLocator = createPointLocator({\n xScale,\n scale,\n corrected,\n system,\n getHeight,\n });\n\n let column = \"avg_\" + system;\n if (corrected) {\n column += \"_corr\";\n }\n const lineLocator = line()\n .x((d) => xScale(d[column]))\n // @ts-ignore\n .y((d) => scale(d.height));\n\n const value = { pointLocator, lineLocator, corrected, system, clipY };\n return h(IsotopesDataContext.Provider, { value }, h(\"g.data\", children));\n};\n\nconst IsotopeDataPoint = function (props) {\n const { pointLocator } = useContext(IsotopesDataContext);\n const { datum, strokeWidth, ...rest } = props;\n const loc = pointLocator(datum);\n if (loc == null) return null;\n const [cx, cy] = loc;\n\n return h(\"circle\", {\n key: datum.sample_id,\n cx,\n cy,\n r: 2,\n ...rest,\n });\n};\n\nconst IsotopeDataLine = function (props) {\n const { values: lineValues, ...rest } = props;\n const { lineLocator } = useContext(IsotopesDataContext);\n return h(\"path\", {\n d: lineLocator(lineValues),\n fill: \"transparent\",\n ...rest,\n });\n};\n\nconst useDataLocator = () => useContext(IsotopesDataContext);\n\nexport { IsotopesDataArea, IsotopeDataPoint, IsotopeDataLine, useDataLocator };\n"],"names":["line","$5eSmp$line","createContext","$5eSmp$createContext","useContext","$5eSmp$useContext","$5eSmp$macrostrathyper","ColumnLayoutContext","$5eSmp$ColumnLayoutContext","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$wtIgl","$561e9bb965350dc6$var$createPointLocator","opts","xScale","scale","getHeight","rest","d","s","height","$561e9bb965350dc6$var$inDomain","num","domain","value","$561e9bb965350dc6$var$IsotopesDataContext","$561e9bb965350dc6$export$309ef8546e07d921","props","useCompositeScale","corrected","system","children","clipY","console","log","pointLocator","column","lineLocator","x","y","Provider","$561e9bb965350dc6$export$4cb5d059db4e2bd","datum","strokeWidth","loc","cx","cy","key","sample_id","r","$561e9bb965350dc6$export$628a3ef6eb9c3a89","values","lineValues","fill","$561e9bb965350dc6$export$919dbb10b6b5b75","IsotopesDataArea","IsotopeDataPoint","IsotopeDataLine","useDataLocator"],"version":3,"file":"column-views.8bee789c.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.2e2158f5.js";import{create as e,useStore as r}from"zustand";import{lineIntersect as t}from"@turf/line-intersect";import o from"@turf/distance";import{nearestPointOnLine as n}from"@turf/nearest-point-on-line";import{centroid as i}from"@turf/centroid";import{createContext as a,useState as s,useEffect as l,useContext as u}from"react";import c from"@macrostrat/hyper";import{createComputed as f}from"zustand-computed";import{buffer as p}from"@turf/buffer";import{booleanPointInPolygon as m}from"@turf/boolean-point-in-polygon";function d(e,r,t,o){Object.defineProperty(e,r,{get:t,set:o,enumerable:!0,configurable:!0})}var g=globalThis,b={},y={},C=g.parcelRequirea149;null==C&&((C=function(e){if(e in b)return b[e].exports;if(e in y){var r=y[e];delete y[e];var t={id:e,exports:{}};return b[e]=t,r.call(t.exports,t,t.exports),t.exports}var o=Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}).register=function(e,r){y[e]=r},g.parcelRequirea149=C),C.register;var v={};d(v,"ColumnCorrelationProvider",()=>h),d(v,"useCorrelationMapStore",()=>M);var P=C("lgTAP");let L=a(null),x=f(e=>{var r,a;return{focusedColumns:(r=e.columns,a=e.focusedLine,null==r||null==a||a.coordinates.length<2?[]:function(e,r){var t,a;let s=e.map(e=>i(e.geometry)),l=s.map(e=>n(r,e)),u=l.map(e=>o(e.geometry.coordinates,r.coordinates[0]));return t=e.map((e,r)=>({...e,properties:{...e.properties,centroid:s[r],nearestPointOnLine:l[r],distanceAlongLine:u[r]}})),a=e=>e.properties.distanceAlongLine,t.sort((e,r)=>a(e)-a(r))}(function(e,r){if(null==e||null==r)return[];let o=p(r,1,{units:"degrees"}),n=e.filter(e=>e.geometry?.type=="Point"&&m(e.geometry,o));return[...e.filter(e=>{let o=e.geometry;return null!=o&&("Polygon"==o.type||"MultiPolygon"==o.type)&&t(r,o).features.length>0}),...n]}(r,a),a))}});function h({children:t,columns:o,projectID:n,inProcess:i,focusedLine:a,onSelectColumns:u}){let[f]=s(()=>e(x((e,r)=>({focusedLine:a,projectID:n,columns:null,onClickMap(t,o){let n=r(),i=t.originalEvent.shiftKey,a=n.focusedLine?.coordinates??[];a.length>=2&&!i&&(a=[]),e({focusedLine:{type:"LineString",coordinates:[...a,o.coordinates]}})}})))),p=(0,P.useMacrostratColumns)(n,i);l(()=>{null!=p&&f.setState({columns:p})},[p]);let m=r(f,e=>e.focusedColumns),d=r(f,e=>e.focusedLine);return l(()=>{u?.(m,d)},[m,d]),c(L.Provider,{value:f},t)}function M(e){let t=u(L);if(null==t)throw Error("Missing CorrelationMapProvider");return r(t,e)}export{h as ColumnCorrelationProvider,M as useCorrelationMapStore};
|
|
2
|
-
//# sourceMappingURL=column-views.90c36c0b.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,Q,U,C,C,Y,C,K,S,A,Q,iB,C,K,sB,A,Q,M,gB,A,Q,sB,C,K,6B,A,Q,Y,C,K,gB,A,Q,iB,C,C,Y,C,C,a,C,C,c,C,K,O,A,Q,M,mB,A,Q,kB,C,K,kB,A,Q,U,C,K,c,A,Q,yB,C,K,gC,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,4B,I,G,E,E,yB,I,G,I,E,E,SCyCA,IAAM,EACJ,AAAA,EAAoD,MAOhD,EAAW,AAAA,EAAe,AAAC,QA2E/B,EACA,QA3EO,CAEL,cAAA,EAwEF,EAxE0C,EAAM,OAAO,CAyEvD,EAzEyD,EAAM,WAAW,CA2E1E,AAAI,AAAW,MAAX,GAAmB,AAAQ,MAAR,GAAgB,EAAK,WAAW,CAAC,MAAM,CAAG,EACxD,EAAE,CAEJ,AA8CT,SACE,CAA8B,CAC9B,CAAgB,MAyBF,EAAM,EAvBpB,IAAM,EAAY,EAAQ,GAAG,CAAC,AAAC,GAAQ,AAAA,EAAS,EAAI,QAAQ,GACtD,EAAkB,EAAU,GAAG,CAAC,AAAC,GACrC,AAAA,EAAmB,EAAM,IAErB,EAAY,EAAgB,GAAG,CAAC,AAAC,GACrC,AAAA,EAAS,EAAM,QAAQ,CAAC,WAAW,CAAE,EAAK,WAAW,CAAC,EAAE,GAe1D,OAGc,EAfG,EAAQ,GAAG,CAAC,CAAC,EAAK,IAC1B,CAAA,CACL,GAAG,CAAG,CACN,WAAY,CACV,GAAG,EAAI,UAAU,CACjB,SAAU,CAAS,CAAC,EAAE,CACtB,mBAAoB,CAAe,CAAC,EAAE,CACtC,kBAAmB,CAAS,CAAC,EAAE,AACjC,CACF,CAAA,GAMkB,EAHM,AAAC,GAAM,EAAE,UAAU,CAAC,iBAAiB,CAIxD,EAAK,IAAI,CAAC,CAAC,EAAG,IAAM,EAAS,GAAK,EAAS,GAHpD,EAtEI,AAKJ,SACE,CAA8B,CAC9B,CAAgB,EAEhB,GAAI,AAAW,MAAX,GAAmB,AAAQ,MAAR,EACrB,MAAO,EAAE,CAIX,IAAM,EAAe,AAAA,EAAO,EAAM,EAAG,CAAE,MAAO,SAAU,GAElD,EAAe,EAAQ,MAAM,CAAC,AAAC,GACnC,AAAI,EAAI,QAAQ,EAAE,MAAQ,SAGnB,AAAA,EAAsB,EAAI,QAAQ,CAAE,IAc7C,MAAO,IAXsB,EAAQ,MAAM,CAAC,AAAC,IAC3C,IAAM,EAAO,EAAI,QAAQ,QAGzB,AAAY,MAAR,GACA,CAAA,AAAa,WAAb,EAAK,IAAI,EAAiB,AAAa,gBAAb,EAAK,IAAI,AAAI,GAGpC,AADc,AAAA,EAAc,EAAM,GACrB,QAAQ,CAAC,MAAM,CAAG,CACxC,MAEoC,EAAa,AACnD,EAnC+B,EAAS,GACpC,GA/EF,IAGK,SAAS,EAA0B,CAAA,SACxC,CAAQ,CAAA,QACR,CAAO,CAAA,UACP,CAAS,CAAA,UACT,CAAS,CAAA,YACT,CAAW,CAAA,gBACX,CAAe,CACU,EACzB,GAAM,CAAC,EAAM,CAAG,AAAA,EAAS,IAChB,AAAA,EACL,EAAS,CAAC,EAAK,IACN,CAAA,CACL,YAAA,EACA,UAAA,EACA,QAAS,KACT,WAAW,CAA6B,CAAE,CAAY,EACpD,IAAM,EAAQ,IAER,EAAkB,EAAM,aAAa,CAAC,QAAQ,CAChD,EAAiB,EAAM,WAAW,EAAE,aAAe,EAAE,AAErD,CAAA,EAAe,MAAM,EAAI,GAAK,CAAC,GAEjC,CAAA,EAAiB,EAAE,AAAF,EAEnB,EAAI,CACF,YAAa,CACX,KAAM,aACN,YAAa,IAAI,EAAgB,EAAM,WAAW,CAAC,AACrD,CACF,EACF,CACF,CAAA,KAOA,EAAW,AAAA,CAAA,EAAA,EAAA,oBAAmB,AAAnB,EAAqB,EAAW,GACjD,AAAA,EAAU,KACJ,AAAY,MAAZ,GACF,EAAM,QAAQ,CAAC,CAAE,QAAS,CAAS,EAEvC,EAAG,CAAC,EAAS,EAGb,IAAM,EAAiB,AAAA,EAAS,EAAO,AAAC,GAAU,EAAM,cAAc,EAChE,EAAe,AAAA,EAAS,EAAO,AAAC,GAAU,EAAM,WAAW,EAMjE,OAJA,AAAA,EAAU,KACR,IAAkB,EAAgB,EACpC,EAAG,CAAC,EAAgB,EAAa,EAE1B,AAAA,EAAE,EAAwB,QAAQ,CAAE,CAAE,MAAO,CAAM,EAAG,EAC/D,CAEO,SAAS,EACd,CAA6D,EAE7D,IAAM,EAAW,AAAA,EAAW,GAC5B,GAAI,AAAY,MAAZ,EACF,MAAM,AAAI,MAAM,kCAElB,OAAO,AAAA,EAAS,EAAU,EAC5B,Q,K,yB,C,K,sB","sources":["<anon>","packages/column-views/src/maps/column-correlation/state.ts"],"sourcesContent":["import \"./column-views.2e2158f5.js\";\nimport {create as $g7zod$create, useStore as $g7zod$useStore} from \"zustand\";\nimport {lineIntersect as $g7zod$lineIntersect} from \"@turf/line-intersect\";\nimport $g7zod$turfdistance from \"@turf/distance\";\nimport {nearestPointOnLine as $g7zod$nearestPointOnLine} from \"@turf/nearest-point-on-line\";\nimport {centroid as $g7zod$centroid} from \"@turf/centroid\";\nimport {createContext as $g7zod$createContext, useState as $g7zod$useState, useEffect as $g7zod$useEffect, useContext as $g7zod$useContext} from \"react\";\nimport $g7zod$macrostrathyper from \"@macrostrat/hyper\";\nimport {createComputed as $g7zod$createComputed} from \"zustand-computed\";\nimport {buffer as $g7zod$buffer} from \"@turf/buffer\";\nimport {booleanPointInPolygon as $g7zod$booleanPointInPolygon} from \"@turf/boolean-point-in-polygon\";\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 $c36af3ba15da093b$exports = {};\n\n$parcel$export($c36af3ba15da093b$exports, \"ColumnCorrelationProvider\", () => $c36af3ba15da093b$export$72ffe141ebf87ef1);\n$parcel$export($c36af3ba15da093b$exports, \"useCorrelationMapStore\", () => $c36af3ba15da093b$export$21398703d3a9bb4d);\n\n\n\n\n\n\n\n\n\nvar $lgTAP = parcelRequire(\"lgTAP\");\n\n\nconst $c36af3ba15da093b$var$CorrelationStoreContext = (0, $g7zod$createContext)(null);\n/** A computed store that will automatically update when the state changes */ const $c36af3ba15da093b$var$computed = (0, $g7zod$createComputed)((state)=>{\n return {\n // We compute the focused columns based on columns and focusedLine\n focusedColumns: $c36af3ba15da093b$var$buildCorrelationColumns(state.columns, state.focusedLine)\n };\n});\nfunction $c36af3ba15da093b$export$72ffe141ebf87ef1({ children: children, columns: columns, projectID: projectID, inProcess: inProcess, focusedLine: focusedLine, onSelectColumns: onSelectColumns }) {\n const [store] = (0, $g7zod$useState)(()=>{\n return (0, $g7zod$create)($c36af3ba15da093b$var$computed((set, get)=>{\n return {\n focusedLine: focusedLine,\n projectID: projectID,\n columns: null,\n onClickMap (event, point) {\n const state = get();\n // Check if shift key is pressed\n const shiftKeyPressed = event.originalEvent.shiftKey;\n let existingCoords = state.focusedLine?.coordinates ?? [];\n if (existingCoords.length >= 2 && !shiftKeyPressed) // Reset the line to zero length\n existingCoords = [];\n set({\n focusedLine: {\n type: \"LineString\",\n coordinates: [\n ...existingCoords,\n point.coordinates\n ]\n }\n });\n }\n };\n }));\n });\n // Set up the store\n /** TODO: move the fetching of all columns to within the map */ const _columns = (0, $lgTAP.useMacrostratColumns)(projectID, inProcess);\n (0, $g7zod$useEffect)(()=>{\n if (_columns != null) store.setState({\n columns: _columns\n });\n }, [\n _columns\n ]);\n // Kind of an awkward way to do this but we need to allow the selector to run\n const focusedColumns = (0, $g7zod$useStore)(store, (state)=>state.focusedColumns);\n const _focusedLine = (0, $g7zod$useStore)(store, (state)=>state.focusedLine);\n (0, $g7zod$useEffect)(()=>{\n onSelectColumns?.(focusedColumns, _focusedLine);\n }, [\n focusedColumns,\n _focusedLine\n ]);\n return (0, $g7zod$macrostrathyper)($c36af3ba15da093b$var$CorrelationStoreContext.Provider, {\n value: store\n }, children);\n}\nfunction $c36af3ba15da093b$export$21398703d3a9bb4d(selector) {\n const storeApi = (0, $g7zod$useContext)($c36af3ba15da093b$var$CorrelationStoreContext);\n if (storeApi == null) throw new Error(\"Missing CorrelationMapProvider\");\n return (0, $g7zod$useStore)(storeApi, selector);\n}\nfunction $c36af3ba15da093b$var$buildCorrelationColumns(columns, line) {\n if (columns == null || line == null || line.coordinates.length < 2) return [];\n return $c36af3ba15da093b$var$orderColumnsByDistance($c36af3ba15da093b$var$computeIntersectingColumns(columns, line), line);\n}\nfunction $c36af3ba15da093b$var$computeIntersectingColumns(columns, line) {\n if (columns == null || line == null) return [];\n /** eODP-focused process. Find buffers around line and then find columns intersecting that buffer */ const bufferedLine = (0, $g7zod$buffer)(line, 1, {\n units: \"degrees\"\n });\n const nearbyPoints = columns.filter((col)=>{\n if (col.geometry?.type != \"Point\") return false;\n return (0, $g7zod$booleanPointInPolygon)(col.geometry, bufferedLine);\n });\n const intersectingPolygons = columns.filter((col)=>{\n const poly = col.geometry;\n // Some in-process datasets seem to have null geometries\n if (poly == null) return false;\n if (poly.type != \"Polygon\" && poly.type != \"MultiPolygon\") return false;\n const intersection = (0, $g7zod$lineIntersect)(line, poly);\n return intersection.features.length > 0;\n });\n return [\n ...intersectingPolygons,\n ...nearbyPoints\n ];\n}\nfunction $c36af3ba15da093b$var$orderColumnsByDistance(columns, line) {\n const centroids = columns.map((col)=>(0, $g7zod$centroid)(col.geometry));\n const projectedPoints = centroids.map((point)=>(0, $g7zod$nearestPointOnLine)(line, point));\n const distances = projectedPoints.map((point)=>(0, $g7zod$turfdistance)(point.geometry.coordinates, line.coordinates[0]));\n let newColumns = columns.map((col, i)=>{\n return {\n ...col,\n properties: {\n ...col.properties,\n centroid: centroids[i],\n nearestPointOnLine: projectedPoints[i],\n distanceAlongLine: distances[i]\n }\n };\n });\n return $c36af3ba15da093b$var$sorted(newColumns, (d)=>d.properties.distanceAlongLine);\n}\nfunction $c36af3ba15da093b$var$sorted(data, accessor) {\n return data.sort((a, b)=>accessor(a) - accessor(b));\n}\n\n\nexport {$c36af3ba15da093b$export$72ffe141ebf87ef1 as ColumnCorrelationProvider, $c36af3ba15da093b$export$21398703d3a9bb4d as useCorrelationMapStore};\n//# sourceMappingURL=column-views.90c36c0b.js.map\n","import { LineString, Point } from \"geojson\";\nimport { create, StoreApi, useStore } from \"zustand\";\nimport type { ColumnGeoJSONRecord } from \"@macrostrat/api-types\";\n// Turf intersection\nimport { lineIntersect } from \"@turf/line-intersect\";\nimport distance from \"@turf/distance\";\nimport { nearestPointOnLine } from \"@turf/nearest-point-on-line\";\nimport { centroid } from \"@turf/centroid\";\nimport {\n createContext,\n useState,\n useContext,\n ReactNode,\n useEffect,\n} from \"react\";\nimport h from \"@macrostrat/hyper\";\nimport { createComputed } from \"zustand-computed\";\nimport { useMacrostratColumns } from \"../../data-provider/base\";\nimport { buffer } from \"@turf/buffer\";\nimport { booleanPointInPolygon } from \"@turf/boolean-point-in-polygon\";\n\nexport interface CorrelationMapInput {\n columns: ColumnGeoJSONRecord[];\n focusedLine: LineString | null;\n}\n\nexport interface CorrelationMapStore extends CorrelationMapInput {\n onClickMap: (event: mapboxgl.MapMouseEvent, point: Point) => void;\n}\n\nexport interface CorrelationProviderProps extends CorrelationMapInput {\n projectID?: number;\n inProcess?: boolean;\n columns: ColumnGeoJSONRecord[] | null;\n children: ReactNode;\n onSelectColumns?: (\n columns: FocusedColumnGeoJSONRecord[],\n line: LineString | null,\n ) => void;\n}\n\nconst CorrelationStoreContext =\n createContext<StoreApi<CorrelationMapStore> | null>(null);\n\ntype ComputedStore = {\n focusedColumns: FocusedColumnGeoJSONRecord[];\n};\n\n/** A computed store that will automatically update when the state changes */\nconst computed = createComputed((state: CorrelationMapStore): ComputedStore => {\n return {\n // We compute the focused columns based on columns and focusedLine\n focusedColumns: buildCorrelationColumns(state.columns, state.focusedLine),\n };\n}) as any;\n\nexport function ColumnCorrelationProvider({\n children,\n columns,\n projectID,\n inProcess,\n focusedLine,\n onSelectColumns,\n}: CorrelationProviderProps) {\n const [store] = useState(() => {\n return create<CorrelationMapStore & ComputedStore>(\n computed((set, get): CorrelationMapStore => {\n return {\n focusedLine,\n projectID,\n columns: null,\n onClickMap(event: mapboxgl.MapMouseEvent, point: Point) {\n const state = get();\n // Check if shift key is pressed\n const shiftKeyPressed = event.originalEvent.shiftKey;\n let existingCoords = state.focusedLine?.coordinates ?? [];\n\n if (existingCoords.length >= 2 && !shiftKeyPressed) {\n // Reset the line to zero length\n existingCoords = [];\n }\n set({\n focusedLine: {\n type: \"LineString\",\n coordinates: [...existingCoords, point.coordinates],\n },\n });\n },\n };\n }),\n );\n });\n\n // Set up the store\n /** TODO: move the fetching of all columns to within the map */\n const _columns = useMacrostratColumns(projectID, inProcess);\n useEffect(() => {\n if (_columns != null) {\n store.setState({ columns: _columns });\n }\n }, [_columns]);\n\n // Kind of an awkward way to do this but we need to allow the selector to run\n const focusedColumns = useStore(store, (state) => state.focusedColumns);\n const _focusedLine = useStore(store, (state) => state.focusedLine);\n\n useEffect(() => {\n onSelectColumns?.(focusedColumns, _focusedLine);\n }, [focusedColumns, _focusedLine]);\n\n return h(CorrelationStoreContext.Provider, { value: store }, children);\n}\n\nexport function useCorrelationMapStore(\n selector: (state: CorrelationMapStore & ComputedStore) => any,\n) {\n const storeApi = useContext(CorrelationStoreContext);\n if (storeApi == null) {\n throw new Error(\"Missing CorrelationMapProvider\");\n }\n return useStore(storeApi, selector);\n}\n\nfunction buildCorrelationColumns(\n columns: ColumnGeoJSONRecord[],\n line: LineString,\n): FocusedColumnGeoJSONRecord[] {\n if (columns == null || line == null || line.coordinates.length < 2) {\n return [];\n }\n return orderColumnsByDistance(\n computeIntersectingColumns(columns, line),\n line,\n );\n}\n\nfunction computeIntersectingColumns(\n columns: ColumnGeoJSONRecord[],\n line: LineString,\n): ColumnGeoJSONRecord[] {\n if (columns == null || line == null) {\n return [];\n }\n\n /** eODP-focused process. Find buffers around line and then find columns intersecting that buffer */\n const bufferedLine = buffer(line, 1, { units: \"degrees\" });\n\n const nearbyPoints = columns.filter((col) => {\n if (col.geometry?.type != \"Point\") {\n return false;\n }\n return booleanPointInPolygon(col.geometry, bufferedLine);\n });\n\n const intersectingPolygons = columns.filter((col) => {\n const poly = col.geometry;\n\n // Some in-process datasets seem to have null geometries\n if (poly == null) return false;\n if (poly.type != \"Polygon\" && poly.type != \"MultiPolygon\") return false;\n\n const intersection = lineIntersect(line, poly);\n return intersection.features.length > 0;\n });\n\n return [...intersectingPolygons, ...nearbyPoints];\n}\n\ninterface FocusedColumnGeoJSONRecord extends ColumnGeoJSONRecord {\n properties: {\n centroid: Point;\n nearestPointOnLine: Point;\n distanceAlongLine: number;\n } & ColumnGeoJSONRecord[\"properties\"];\n}\n\nfunction orderColumnsByDistance(\n columns: ColumnGeoJSONRecord[],\n line: LineString,\n): FocusedColumnGeoJSONRecord[] {\n const centroids = columns.map((col) => centroid(col.geometry));\n const projectedPoints = centroids.map((point) =>\n nearestPointOnLine(line, point),\n );\n const distances = projectedPoints.map((point) =>\n distance(point.geometry.coordinates, line.coordinates[0]),\n );\n\n let newColumns = columns.map((col, i) => {\n return {\n ...col,\n properties: {\n ...col.properties,\n centroid: centroids[i],\n nearestPointOnLine: projectedPoints[i],\n distanceAlongLine: distances[i],\n },\n };\n });\n\n return sorted(newColumns, (d) => d.properties.distanceAlongLine);\n}\n\nfunction sorted(data, accessor: (d) => number) {\n return data.sort((a, b) => accessor(a) - accessor(b));\n}\n"],"names":["create","$g7zod$create","useStore","$g7zod$useStore","lineIntersect","$g7zod$lineIntersect","$g7zod$turfdistance","nearestPointOnLine","$g7zod$nearestPointOnLine","centroid","$g7zod$centroid","createContext","$g7zod$createContext","useState","$g7zod$useState","useEffect","$g7zod$useEffect","useContext","$g7zod$useContext","$g7zod$macrostrathyper","createComputed","$g7zod$createComputed","buffer","$g7zod$buffer","booleanPointInPolygon","$g7zod$booleanPointInPolygon","$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","$c36af3ba15da093b$exports","$c36af3ba15da093b$export$72ffe141ebf87ef1","$c36af3ba15da093b$export$21398703d3a9bb4d","$lgTAP","$c36af3ba15da093b$var$CorrelationStoreContext","$c36af3ba15da093b$var$computed","state","columns","line","focusedColumns","focusedLine","coordinates","length","$c36af3ba15da093b$var$orderColumnsByDistance","data","accessor","centroids","map","col","geometry","projectedPoints","point","distances","i","properties","distanceAlongLine","d","sort","a","b","$c36af3ba15da093b$var$computeIntersectingColumns","bufferedLine","units","nearbyPoints","filter","type","poly","intersection","features","children","projectID","inProcess","onSelectColumns","store","onClickMap","event","shiftKeyPressed","originalEvent","shiftKey","existingCoords","_columns","useMacrostratColumns","setState","_focusedLine","Provider","value","selector","storeApi","ColumnCorrelationProvider","useCorrelationMapStore"],"version":3,"file":"column-views.90c36c0b.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.db3377d8.js";import"./column-views.7d45bbeb.js";import e from"@macrostrat/hyper";import{FeatureLayer as r,Feature as t,MapContext as o}from"@macrostrat/svg-map-components";import{useAPIResult as s,useKeyHandler as a}from"@macrostrat/ui-components";import l from"chroma-js";import{useContext as n,useMemo as u}from"react";function i(e,r,t,o){Object.defineProperty(e,r,{get:t,set:o,enumerable:!0,configurable:!0})}var c,f=globalThis,p={},m={},d=f.parcelRequirea149;null==d&&((d=function(e){if(e in p)return p[e].exports;if(e in m){var r=m[e];delete m[e];var t={id:e,exports:{}};return p[e]=t,r.call(t.exports,t,t.exports),t.exports}var o=Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}).register=function(e,r){m[e]=r},f.parcelRequirea149=d),d.register;var C={};i(C,"MeasurementsLayer",()=>$),i(C,"ColumnFeatures",()=>_),i(C,"ColumnKeyboardNavigation",()=>h),i(C,"Columns",()=>x),i(C,"ColumnCenters",()=>k),i(C,"CurrentColumn",()=>j);var g=d("Piirt"),y=d("iVYEX");let b={fill:"rgb(239, 180, 249)",stroke:"magenta"};function $(t){let{style:o=b,...a}=t,l=s("/measurements",{...a,format:"geojson",response:"light"});return null==l?null:e(r,{useCanvas:!1,style:o,features:l.features?.filter(e=>null!=e.properties.unit_id)??[]})}function _(o){let{features:s,onClick:a,color:n="rgba(150,150,150, 1)",singleFeature:u=!0}=o,i=l(n);return e(r,{className:"columns",useCanvas:null==a,style:{fill:i.alpha(.2).css(),stroke:i.alpha(.4).css()}},s?.map(r=>e(t,{id:r.id??r.properties.col_id,onClick:a,feature:r})))}var v=((c=v||{}).InProcess="in process",c);function h(t){let{features:s=[],col_id:l=null,onChange:i,showLayers:c=!1,...f}=t,{projection:p}=n(o),{centroids:m,tri:d}=u(()=>(0,y.buildTriangulation)(s),[s]),C=u(()=>s.findIndex(e=>e.properties.col_id==l),[s,l]),g=d.delaunay.neighbors[C],b=u(()=>(0,y.buildKeyMapping)(g,m,C,p),[g,C]);if(a(e=>{let r=b[e.keyCode];null!=r&&i(s[r])},[b]),null==g)return null;let $=g.map(e=>s[e]);return e.if(c)([e(r,{features:d.links().features,useCanvas:!1,style:{stroke:"purple",fill:"transparent"}}),e(r,{features:$,useCanvas:!1,style:{stroke:"rgb(93, 101, 212)",strokeWidth:3,fill:"rgba(93, 101, 212, 0.5)"}}),e(r,{features:[{type:"Feature",geometry:{type:"MultiPoint",coordinates:m}}],useCanvas:!1,style:{r:1,fill:"purple"}})])}let x=r=>{let{apiRoute:t="/columns",onChange:o,col_id:s=null,status_code:a,project_id:l,color:n,filterColumns:u,showDebugLayers:i=!1,format:c="topojson"}=r,f=(0,g.useColumnFeatures)({apiRoute:t,status_code:a,project_id:l,format:c});return null==f?null:(null!=u&&(f=f.filter(u)),e([e(h,{features:f,col_id:s,onChange:o,status_code:a,project_id:l,showLayers:i}),e(_,{features:f,onClick:o,color:n})]))},k=r=>e(x,{apiRoute:"/defs/columns",...r}),j=t=>{let{feature:o}=t;return e(r,{features:[o],style:{fill:"rgba(255,0,0,0.4)",stroke:"rgba(255,0,0,0.6)",strokeWidth:2}})};export{$ as MeasurementsLayer,_ as ColumnFeatures,h as ColumnKeyboardNavigation,x as Columns,k as ColumnCenters,j as CurrentColumn};
|
|
2
|
-
//# sourceMappingURL=column-views.951e3e9a.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,Q,M,mB,A,Q,gB,C,C,W,C,C,c,C,K,gC,A,Q,gB,C,C,iB,C,K,2B,A,Q,M,W,A,Q,c,C,C,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,ICwEK,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,iB,I,G,E,E,2B,I,G,E,E,U,I,G,E,E,gB,I,G,E,E,gB,I,G,I,E,E,S,E,E,SAvDL,IAAM,EAAe,CACnB,KAAM,qBACN,OAAQ,SACV,EAEO,SAAS,EAAkB,CAAK,EACrC,GAAM,CAAA,MAAE,EAAQ,CAAA,CAAc,GAAG,EAAQ,CAAG,EACtC,EAAW,AAAA,EAAa,gBAAiB,CAC7C,GAAG,CAAM,CACT,OAAQ,UACR,SAAU,OACZ,UACA,AAAI,AAAO,MAAP,EAAoB,KAEjB,AAAA,EAAE,EAAc,CACrB,UAAW,CAAA,EACX,MAAA,EACA,SAAU,EAAI,QAAQ,EAAE,OAAO,AAAC,GAAM,AAAwB,MAAxB,EAAE,UAAU,CAAC,OAAO,GAAa,EAAE,AAC3E,EACF,CAMA,SAAS,EAAe,CAAK,EAC3B,GAAM,CAAA,SACJ,CAAQ,CAAA,QACR,CAAO,CAAA,MACP,EAAQ,sBAAA,CAAA,cACR,EAAgB,CAAA,CAAA,CACjB,CAAG,EAEE,EAAI,AAAA,EAAO,GAEjB,OAAO,AAAA,EACL,EACA,CACE,UAAW,UACX,UAAW,AAAW,MAAX,EACX,MAAO,CACL,KAAM,EAAE,KAAK,CAAC,IAAK,GAAG,GACtB,OAAQ,EAAE,KAAK,CAAC,IAAK,GAAG,EAC1B,CACF,EACA,GAAU,IAAI,AAAC,GACN,AAAA,EAAE,EAAS,CAChB,GAAI,EAAE,EAAE,EAAI,EAAE,UAAU,CAAC,MAAM,CAC/B,QAAA,EACA,QAAS,CACX,IAGN,CAEA,IAAK,G,CAAA,EAAA,GAAA,CAAA,G,S,C,aAAA,GAgBL,SAAS,EAAyB,CAAuB,EAEvD,GAAM,CAAA,SACJ,EAAW,EAAE,CAAA,OACb,EAAS,IAAA,CAAA,SACT,CAAQ,CAAA,WACR,EAAa,CAAA,CAAA,CACb,GAAG,EACJ,CAAG,EACE,CAAA,WAAE,CAAU,CAAE,CAAG,AAAA,EAAW,GAC5B,CAAA,UAAE,CAAS,CAAA,IAAE,CAAG,CAAE,CAAG,AAAA,EACzB,IAAM,AAAA,CAAA,EAAA,EAAA,kBAAiB,AAAjB,EAAmB,GACzB,CAAC,EAAS,EAGN,EAAe,AAAA,EAAQ,IACpB,EAAS,SAAS,CAAC,AAAC,GAAM,EAAE,UAAU,CAAC,MAAM,EAAI,GACvD,CAAC,EAAU,EAAO,EAEf,EAAY,EAAI,QAAQ,CAAC,SAAS,CAAC,EAAa,CAEhD,EAAa,AAAA,EAAQ,IAClB,AAAA,CAAA,EAAA,EAAA,eAAc,AAAd,EAAgB,EAAW,EAAW,EAAc,GAC1D,CAAC,EAAW,EAAa,EAY5B,GAVA,AAAA,EACE,AAAC,IACC,IAAM,EAAe,CAAU,CAAC,EAAM,OAAO,CAAC,AAC1B,OAAhB,GAEJ,EAAS,CAAQ,CAAC,EAAa,CACjC,EACA,CAAC,EAAW,EAGV,AAAa,MAAb,EAAmB,OAAO,KAC9B,IAAM,EAAmB,EAAU,GAAG,CAAC,AAAC,GAAM,CAAQ,CAAC,EAAE,EAEzD,OAAO,AAAA,EAAE,EAAE,CAAC,GAAY,CACtB,AAAA,EAAE,EAAc,CACd,SAAU,EAAI,KAAK,GAAG,QAAQ,CAC9B,UAAW,CAAA,EACX,MAAO,CACL,OAAQ,SACR,KAAM,aACR,CACF,GACA,AAAA,EAAE,EAAc,CACd,SAAU,EACV,UAAW,CAAA,EACX,MAAO,CACL,OAAQ,oBACR,YAAa,EACb,KAAM,yBACR,CACF,GACA,AAAA,EAAE,EAAc,CACd,SAAU,CACR,CACE,KAAM,UACN,SAAU,CACR,KAAM,aACN,YAAa,CACf,CACF,EACD,CACD,UAAW,CAAA,EACX,MAAO,CACL,EAAG,EACH,KAAM,QACR,CACF,GACD,CACH,CAUA,IAAM,EAAU,AAAC,IACf,GAAM,CAAA,SACJ,EAAW,UAAA,CAAA,SACX,CAAQ,CAAA,OACR,EAAS,IAAA,CAAA,YACT,CAAW,CAAA,WACX,CAAU,CAAA,MACV,CAAK,CAAA,cACL,CAAa,CAAA,gBACb,EAAkB,CAAA,CAAA,CAAA,OAClB,EAAS,UAAA,CACV,CAAG,EAEA,EAAkB,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,EAAkB,CACtC,SAAA,EACA,YAAA,EACA,WAAA,EACA,OAAA,CACF,UAEA,AAAI,AAAY,MAAZ,EAAyB,MAEzB,AAAiB,MAAjB,GACF,CAAA,EAAW,EAAS,MAAM,CAAC,EAD7B,EAIO,AAAA,EAAE,CACP,AAAA,EAAE,EAA0B,CAC1B,SAAA,EACA,OAAA,EACA,SAAA,EACA,YAAA,EACA,WAAA,EACA,WAAY,CACd,GACA,AAAA,EAAE,EAAgB,CAAE,SAAA,EAAU,QAAS,EAAU,MAAA,CAAM,GACxD,EACH,EAEM,EAAgB,AAAC,GACd,AAAA,EAAE,EAAS,CAAE,SAAU,gBAAiB,GAAG,CAAK,AAAC,GAGpD,EAAgB,AAAC,IACrB,GAAM,CAAA,QAAE,CAAO,CAAE,CAAG,EACpB,OAAO,AAAA,EAAE,EAAc,CACrB,SAAU,CAAC,EAAQ,CACnB,MAAO,CACL,KAAM,oBACN,OAAQ,oBACR,YAAa,CACf,CACF,EACF,S,K,iB,C,K,c,C,K,wB,C,K,O,C,K,a,C,K,a","sources":["<anon>","packages/column-views/src/maps/column-navigation/svg/layers.ts"],"sourcesContent":["import \"./column-views.db3377d8.js\";\nimport \"./column-views.7d45bbeb.js\";\nimport $jYcXf$macrostrathyper from \"@macrostrat/hyper\";\nimport {FeatureLayer as $jYcXf$FeatureLayer, Feature as $jYcXf$Feature, MapContext as $jYcXf$MapContext} from \"@macrostrat/svg-map-components\";\nimport {useAPIResult as $jYcXf$useAPIResult, useKeyHandler as $jYcXf$useKeyHandler} from \"@macrostrat/ui-components\";\nimport $jYcXf$chromajs from \"chroma-js\";\nimport {useContext as $jYcXf$useContext, useMemo as $jYcXf$useMemo} from \"react\";\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 $372e0c9189556f66$exports = {};\n\n$parcel$export($372e0c9189556f66$exports, \"MeasurementsLayer\", () => $372e0c9189556f66$export$2254347cd20e6080);\n$parcel$export($372e0c9189556f66$exports, \"ColumnFeatures\", () => $372e0c9189556f66$export$f177ff57c101017a);\n$parcel$export($372e0c9189556f66$exports, \"ColumnKeyboardNavigation\", () => $372e0c9189556f66$export$8c41dd563753848);\n$parcel$export($372e0c9189556f66$exports, \"Columns\", () => $372e0c9189556f66$export$f02cc02ad0e0bba3);\n$parcel$export($372e0c9189556f66$exports, \"ColumnCenters\", () => $372e0c9189556f66$export$4d8f6e6df85d9012);\n$parcel$export($372e0c9189556f66$exports, \"CurrentColumn\", () => $372e0c9189556f66$export$b9d912252344e099);\n\n\n\n\n\n\nvar $Piirt = parcelRequire(\"Piirt\");\n\nvar $iVYEX = parcelRequire(\"iVYEX\");\nconst $372e0c9189556f66$var$defaultStyle = {\n fill: \"rgb(239, 180, 249)\",\n stroke: \"magenta\"\n};\nfunction $372e0c9189556f66$export$2254347cd20e6080(props) {\n const { style: style = $372e0c9189556f66$var$defaultStyle, ...params } = props;\n const res = (0, $jYcXf$useAPIResult)(\"/measurements\", {\n ...params,\n format: \"geojson\",\n response: \"light\"\n });\n if (res == null) return null;\n return (0, $jYcXf$macrostrathyper)((0, $jYcXf$FeatureLayer), {\n useCanvas: false,\n style: style,\n features: res.features?.filter((d)=>d.properties.unit_id != null) ?? []\n });\n}\nfunction $372e0c9189556f66$export$f177ff57c101017a(props) {\n const { features: features, onClick: onClick, color: color = \"rgba(150,150,150, 1)\", singleFeature: singleFeature = true } = props;\n const c = (0, $jYcXf$chromajs)(color);\n return (0, $jYcXf$macrostrathyper)((0, $jYcXf$FeatureLayer), {\n className: \"columns\",\n useCanvas: onClick == null,\n style: {\n fill: c.alpha(0.2).css(),\n stroke: c.alpha(0.4).css()\n }\n }, features?.map((f)=>{\n return (0, $jYcXf$macrostrathyper)((0, $jYcXf$Feature), {\n id: f.id ?? f.properties.col_id,\n onClick: onClick,\n feature: f\n });\n }));\n}\nvar $372e0c9189556f66$var$MacrostratStatusCode = /*#__PURE__*/ function(MacrostratStatusCode) {\n MacrostratStatusCode[\"InProcess\"] = \"in process\";\n return MacrostratStatusCode;\n}($372e0c9189556f66$var$MacrostratStatusCode || {});\nfunction $372e0c9189556f66$export$8c41dd563753848(props) {\n /** Keyboard navigation of columns using a Delaunay triangulation */ const { features: features = [], col_id: col_id = null, onChange: onChange, showLayers: showLayers = false, ...projectArgs } = props;\n const { projection: projection } = (0, $jYcXf$useContext)((0, $jYcXf$MapContext));\n const { centroids: centroids, tri: tri } = (0, $jYcXf$useMemo)(()=>(0, $iVYEX.buildTriangulation)(features), [\n features\n ]);\n const currentIndex = (0, $jYcXf$useMemo)(()=>{\n return features.findIndex((d)=>d.properties.col_id == col_id);\n }, [\n features,\n col_id\n ]);\n const neighbors = tri.delaunay.neighbors[currentIndex];\n const keyMapping = (0, $jYcXf$useMemo)(()=>{\n return (0, $iVYEX.buildKeyMapping)(neighbors, centroids, currentIndex, projection);\n }, [\n neighbors,\n currentIndex\n ]);\n (0, $jYcXf$useKeyHandler)((event)=>{\n const nextColumnIx = keyMapping[event.keyCode];\n if (nextColumnIx == null) return;\n // @ts-ignore\n onChange(features[nextColumnIx]);\n }, [\n keyMapping\n ]);\n if (neighbors == null) return null;\n const neighborFeatures = neighbors.map((d)=>features[d]);\n return (0, $jYcXf$macrostrathyper).if(showLayers)([\n (0, $jYcXf$macrostrathyper)((0, $jYcXf$FeatureLayer), {\n features: tri.links().features,\n useCanvas: false,\n style: {\n stroke: \"purple\",\n fill: \"transparent\"\n }\n }),\n (0, $jYcXf$macrostrathyper)((0, $jYcXf$FeatureLayer), {\n features: neighborFeatures,\n useCanvas: false,\n style: {\n stroke: \"rgb(93, 101, 212)\",\n strokeWidth: 3,\n fill: \"rgba(93, 101, 212, 0.5)\"\n }\n }),\n (0, $jYcXf$macrostrathyper)((0, $jYcXf$FeatureLayer), {\n features: [\n {\n type: \"Feature\",\n geometry: {\n type: \"MultiPoint\",\n coordinates: centroids\n }\n }\n ],\n useCanvas: false,\n style: {\n r: 1,\n fill: \"purple\"\n }\n })\n ]);\n}\nconst $372e0c9189556f66$export$f02cc02ad0e0bba3 = (props)=>{\n const { apiRoute: apiRoute = \"/columns\", onChange: onChange, col_id: col_id = null, status_code: status_code, project_id: project_id, color: color, filterColumns: filterColumns, showDebugLayers: showDebugLayers = false, format: format = \"topojson\" } = props;\n let features = (0, $Piirt.useColumnFeatures)({\n apiRoute: apiRoute,\n status_code: status_code,\n project_id: project_id,\n format: format\n });\n if (features == null) return null;\n if (filterColumns != null) features = features.filter(filterColumns);\n return (0, $jYcXf$macrostrathyper)([\n (0, $jYcXf$macrostrathyper)($372e0c9189556f66$export$8c41dd563753848, {\n features: features,\n col_id: col_id,\n onChange: onChange,\n status_code: status_code,\n project_id: project_id,\n showLayers: showDebugLayers\n }),\n (0, $jYcXf$macrostrathyper)($372e0c9189556f66$export$f177ff57c101017a, {\n features: features,\n onClick: onChange,\n color: color\n })\n ]);\n};\nconst $372e0c9189556f66$export$4d8f6e6df85d9012 = (props)=>{\n return (0, $jYcXf$macrostrathyper)($372e0c9189556f66$export$f02cc02ad0e0bba3, {\n apiRoute: \"/defs/columns\",\n ...props\n });\n};\nconst $372e0c9189556f66$export$b9d912252344e099 = (props)=>{\n const { feature: feature } = props;\n return (0, $jYcXf$macrostrathyper)((0, $jYcXf$FeatureLayer), {\n features: [\n feature\n ],\n style: {\n fill: \"rgba(255,0,0,0.4)\",\n stroke: \"rgba(255,0,0,0.6)\",\n strokeWidth: 2\n }\n });\n};\n\n\nexport {$372e0c9189556f66$export$2254347cd20e6080 as MeasurementsLayer, $372e0c9189556f66$export$f177ff57c101017a as ColumnFeatures, $372e0c9189556f66$export$8c41dd563753848 as ColumnKeyboardNavigation, $372e0c9189556f66$export$f02cc02ad0e0bba3 as Columns, $372e0c9189556f66$export$4d8f6e6df85d9012 as ColumnCenters, $372e0c9189556f66$export$b9d912252344e099 as CurrentColumn};\n//# sourceMappingURL=column-views.951e3e9a.js.map\n","import h from \"@macrostrat/hyper\";\nimport {\n Feature,\n FeatureLayer,\n MapContext,\n} from \"@macrostrat/svg-map-components\";\nimport { useAPIResult, useKeyHandler } from \"@macrostrat/ui-components\";\nimport chroma from \"chroma-js\";\nimport { ExtendedFeature } from \"d3-geo\";\nimport { Polygon } from \"geojson\";\nimport { useContext, useMemo } from \"react\";\nimport { useColumnFeatures } from \"../../../data-provider\";\nimport {\n buildKeyMapping,\n buildTriangulation,\n} from \"../utils/keyboard-navigation\";\n\nconst defaultStyle = {\n fill: \"rgb(239, 180, 249)\",\n stroke: \"magenta\",\n};\n\nexport function MeasurementsLayer(props) {\n const { style = defaultStyle, ...params } = props;\n const res: any = useAPIResult(\"/measurements\", {\n ...params,\n format: \"geojson\",\n response: \"light\",\n });\n if (res == null) return null;\n\n return h(FeatureLayer, {\n useCanvas: false,\n style,\n features: res.features?.filter((d) => d.properties.unit_id != null) ?? [],\n });\n}\n\ntype ColumnProps = { col_id: number };\n\ntype ColumnFeature = ExtendedFeature<Polygon, ColumnProps>;\n\nfunction ColumnFeatures(props) {\n const {\n features,\n onClick,\n color = \"rgba(150,150,150, 1)\",\n singleFeature = true,\n } = props;\n\n const c = chroma(color);\n\n return h(\n FeatureLayer,\n {\n className: \"columns\",\n useCanvas: onClick == null,\n style: {\n fill: c.alpha(0.2).css(),\n stroke: c.alpha(0.4).css(),\n },\n },\n features?.map((f) => {\n return h(Feature, {\n id: f.id ?? f.properties.col_id,\n onClick,\n feature: f,\n });\n }),\n );\n}\n\nenum MacrostratStatusCode {\n InProcess = \"in process\",\n}\n\ninterface ColumnNavProps {\n col_id: number;\n status_code?: MacrostratStatusCode;\n project_id?: number;\n onChange(col_id: number): void;\n}\n\ninterface KeyboardNavProps extends ColumnNavProps {\n features: ColumnFeature[];\n showLayers: boolean;\n}\n\nfunction ColumnKeyboardNavigation(props: KeyboardNavProps) {\n /** Keyboard navigation of columns using a Delaunay triangulation */\n const {\n features = [],\n col_id = null,\n onChange,\n showLayers = false,\n ...projectArgs\n } = props;\n const { projection } = useContext(MapContext);\n const { centroids, tri } = useMemo(\n () => buildTriangulation(features),\n [features],\n );\n\n const currentIndex = useMemo(() => {\n return features.findIndex((d) => d.properties.col_id == col_id);\n }, [features, col_id]);\n\n const neighbors = tri.delaunay.neighbors[currentIndex];\n\n const keyMapping = useMemo(() => {\n return buildKeyMapping(neighbors, centroids, currentIndex, projection);\n }, [neighbors, currentIndex]);\n\n useKeyHandler(\n (event) => {\n const nextColumnIx = keyMapping[event.keyCode];\n if (nextColumnIx == null) return;\n // @ts-ignore\n onChange(features[nextColumnIx]);\n },\n [keyMapping],\n );\n\n if (neighbors == null) return null;\n const neighborFeatures = neighbors.map((d) => features[d]);\n\n return h.if(showLayers)([\n h(FeatureLayer, {\n features: tri.links().features,\n useCanvas: false,\n style: {\n stroke: \"purple\",\n fill: \"transparent\",\n },\n }),\n h(FeatureLayer, {\n features: neighborFeatures,\n useCanvas: false,\n style: {\n stroke: \"rgb(93, 101, 212)\",\n strokeWidth: 3,\n fill: \"rgba(93, 101, 212, 0.5)\",\n },\n }),\n h(FeatureLayer, {\n features: [\n {\n type: \"Feature\",\n geometry: {\n type: \"MultiPoint\",\n coordinates: centroids,\n },\n },\n ],\n useCanvas: false,\n style: {\n r: 1,\n fill: \"purple\",\n },\n }),\n ]);\n}\n\ninterface ColumnExtraInfo {\n apiRoute?: string;\n color?: string;\n filterColumns?(d: ColumnFeature): boolean;\n showDebugLayers?: boolean;\n format?: \"topojson\" | \"geojson\";\n}\n\nconst Columns = (props: ColumnNavProps & ColumnExtraInfo) => {\n const {\n apiRoute = \"/columns\",\n onChange,\n col_id = null,\n status_code,\n project_id,\n color,\n filterColumns,\n showDebugLayers = false,\n format = \"topojson\",\n } = props;\n\n let features: any[] = useColumnFeatures({\n apiRoute,\n status_code,\n project_id,\n format,\n }) as any;\n\n if (features == null) return null;\n\n if (filterColumns != null) {\n features = features.filter(filterColumns);\n }\n\n return h([\n h(ColumnKeyboardNavigation, {\n features,\n col_id,\n onChange,\n status_code,\n project_id,\n showLayers: showDebugLayers,\n }),\n h(ColumnFeatures, { features, onClick: onChange, color }),\n ]);\n};\n\nconst ColumnCenters = (props: ColumnNavProps) => {\n return h(Columns, { apiRoute: \"/defs/columns\", ...props });\n};\n\nconst CurrentColumn = (props) => {\n const { feature } = props;\n return h(FeatureLayer, {\n features: [feature],\n style: {\n fill: \"rgba(255,0,0,0.4)\",\n stroke: \"rgba(255,0,0,0.6)\",\n strokeWidth: 2,\n },\n });\n};\n\nexport {\n Columns,\n CurrentColumn,\n ColumnCenters,\n ColumnFeatures,\n ColumnKeyboardNavigation,\n};\n"],"names":["$jYcXf$macrostrathyper","FeatureLayer","$jYcXf$FeatureLayer","Feature","$jYcXf$Feature","MapContext","$jYcXf$MapContext","useAPIResult","$jYcXf$useAPIResult","useKeyHandler","$jYcXf$useKeyHandler","$jYcXf$chromajs","useContext","$jYcXf$useContext","useMemo","$jYcXf$useMemo","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","MacrostratStatusCode","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$372e0c9189556f66$exports","$372e0c9189556f66$export$2254347cd20e6080","$372e0c9189556f66$export$f177ff57c101017a","$372e0c9189556f66$export$8c41dd563753848","$372e0c9189556f66$export$f02cc02ad0e0bba3","$372e0c9189556f66$export$4d8f6e6df85d9012","$372e0c9189556f66$export$b9d912252344e099","$Piirt","$iVYEX","$372e0c9189556f66$var$defaultStyle","fill","stroke","props","style","params","res","format","response","useCanvas","features","filter","d","properties","unit_id","onClick","color","singleFeature","c","className","alpha","css","map","f","col_id","feature","$372e0c9189556f66$var$MacrostratStatusCode","onChange","showLayers","projectArgs","projection","centroids","tri","buildTriangulation","currentIndex","findIndex","neighbors","delaunay","keyMapping","buildKeyMapping","event","nextColumnIx","keyCode","neighborFeatures","if","links","strokeWidth","type","geometry","coordinates","r","apiRoute","status_code","project_id","filterColumns","showDebugLayers","useColumnFeatures","MeasurementsLayer","ColumnFeatures","ColumnKeyboardNavigation","Columns","ColumnCenters","CurrentColumn"],"version":3,"file":"column-views.951e3e9a.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import e from"@macrostrat/hyper";import{getQueryString as t,setQueryString as r}from"@macrostrat/ui-components";import{createContext as o,useContext as i,useState as n,useEffect as u}from"react";function a(e,t,r,o){Object.defineProperty(e,t,{get:r,set:o,enumerable:!0,configurable:!0})}var l={};a(l,"useColumnNav",()=>s),a(l,"ColumnNavProvider",()=>d);let c=o(null);function s(e={col_id:495,unit_id:null}){let o=i(c);if(null!=o)return o;let[a,l]=n(function(e){let{col_id:t,unit_id:r,project_id:o,status_code:i}=e??{};return null==t?null:{col_id:t,unit_id:r,project_id:o,status_code:i}}(t(window.location.search))??e);u(()=>r(a),[a]);let{col_id:d,project_id:f,status_code:p}=a;return[a,e=>{let t=e;"properties"in e&&(t={col_id:e.properties.col_id,project_id:f,status_code:p}),r(t),l(t)}]}function d({children:t,...r}){let o=s(r);return e(c.Provider,{value:o},t)}export{s as useColumnNav,d as ColumnNavProvider};
|
|
2
|
-
//# sourceMappingURL=column-views.95411f1b.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,O,M,mB,A,Q,kB,C,C,kB,C,K,2B,A,Q,iB,C,C,c,C,C,Y,C,C,a,C,K,O,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,C,E,E,E,e,I,G,E,E,oB,I,GCaA,IAAM,EAAe,AAAA,EAAwC,MAEtD,SAAS,EACd,EAA0B,CAAE,OAAQ,IAAK,QAAS,IAAK,CAAC,EAExD,IAAM,EAAM,AAAA,EAAW,GACvB,GAAI,AAAO,MAAP,EAAa,OAAO,EAExB,GAAM,CAAC,EAAY,EAAc,CAAG,AAAA,EAClC,AAoBJ,SAA2B,CAAW,EACpC,GAAM,CAAA,OAAE,CAAM,CAAA,QAAE,CAAO,CAAA,WAAE,CAAU,CAAA,YAAE,CAAW,CAAE,CAAG,GAAU,CAAC,SAChE,AAAI,AAAU,MAAV,EAAuB,KACpB,CAAE,OAAA,EAAQ,QAAA,EAAS,WAAA,EAAY,YAAA,CAAY,CACpD,EAxBsB,AAAA,EAAe,OAAO,QAAQ,CAAC,MAAM,IAAM,GAG/D,AAAA,EAAU,IAAM,AAAA,EAAe,GAAa,CAAC,EAAW,EAExD,GAAM,CAAA,OAAE,CAAM,CAAA,WAAE,CAAU,CAAA,YAAE,CAAW,CAAE,CAAG,EAY5C,MAAO,CAAC,EAViB,AAAC,IACxB,IAAI,EAAO,CACP,CAAA,eAAgB,GAClB,CAAA,EAAO,CAAE,OAAQ,EAAI,UAAU,CAAC,MAAM,CAAE,WAAA,EAAY,YAAA,CAAY,CAAA,EAGlE,AAAA,EAAe,GACf,EAAc,EAChB,EAEqC,AACvC,CAQO,SAAS,EAAkB,CAAA,SAAE,CAAQ,CAAE,GAAG,EAAa,EAE5D,IAAM,EAAQ,EAAa,GAC3B,OAAO,AAAA,EAAE,EAAa,QAAQ,CAAE,CAAE,MAAA,CAAM,EAAG,EAC7C,Q,K,Y,C,K,iB","sources":["<anon>","packages/column-views/src/data-provider/column-nav.ts"],"sourcesContent":["import $h0mWc$macrostrathyper from \"@macrostrat/hyper\";\nimport {getQueryString as $h0mWc$getQueryString, setQueryString as $h0mWc$setQueryString} from \"@macrostrat/ui-components\";\nimport {createContext as $h0mWc$createContext, useContext as $h0mWc$useContext, useState as $h0mWc$useState, useEffect as $h0mWc$useEffect} from \"react\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $d8324406f284950a$exports = {};\n\n$parcel$export($d8324406f284950a$exports, \"useColumnNav\", () => $d8324406f284950a$export$91cb5ac808759b34);\n$parcel$export($d8324406f284950a$exports, \"ColumnNavProvider\", () => $d8324406f284950a$export$36fed9e0f93a8fde);\n\n\n\nconst $d8324406f284950a$var$ColumnNavCtx = (0, $h0mWc$createContext)(null);\nfunction $d8324406f284950a$export$91cb5ac808759b34(defaultArgs = {\n col_id: 495,\n unit_id: null\n}) {\n const ctx = (0, $h0mWc$useContext)($d8324406f284950a$var$ColumnNavCtx);\n if (ctx != null) return ctx;\n const [columnArgs, setColumnArgs] = (0, $h0mWc$useState)($d8324406f284950a$var$extractColumnArgs((0, $h0mWc$getQueryString)(window.location.search)) ?? defaultArgs);\n (0, $h0mWc$useEffect)(()=>(0, $h0mWc$setQueryString)(columnArgs), [\n columnArgs\n ]);\n const { col_id: col_id, project_id: project_id, status_code: status_code } = columnArgs;\n const setCurrentColumn = (obj)=>{\n let args = obj;\n if (\"properties\" in obj) args = {\n col_id: obj.properties.col_id,\n project_id: project_id,\n status_code: status_code\n };\n // Set query string\n (0, $h0mWc$setQueryString)(args);\n setColumnArgs(args);\n };\n return [\n columnArgs,\n setCurrentColumn\n ];\n}\nfunction $d8324406f284950a$var$extractColumnArgs(search) {\n const { col_id: col_id, unit_id: unit_id, project_id: project_id, status_code: status_code } = search ?? {};\n if (col_id == null) return null;\n return {\n col_id: col_id,\n unit_id: unit_id,\n project_id: project_id,\n status_code: status_code\n };\n}\nfunction $d8324406f284950a$export$36fed9e0f93a8fde({ children: children, ...defaultArgs }) {\n /** Column navigation provider that manages the query string for selected columns */ const value = $d8324406f284950a$export$91cb5ac808759b34(defaultArgs);\n return (0, $h0mWc$macrostrathyper)($d8324406f284950a$var$ColumnNavCtx.Provider, {\n value: value\n }, children);\n}\n\n\nexport {$d8324406f284950a$export$91cb5ac808759b34 as useColumnNav, $d8324406f284950a$export$36fed9e0f93a8fde as ColumnNavProvider};\n//# sourceMappingURL=column-views.95411f1b.js.map\n","import h from \"@macrostrat/hyper\";\nimport { getQueryString, setQueryString } from \"@macrostrat/ui-components\";\nimport { createContext, useContext, useEffect, useState } from \"react\";\n\nexport interface ColumnArgs {\n col_id?: number;\n unit_id?: number;\n project_id?: number;\n status_code?: \"in process\";\n}\n\ntype ColumnManagerData = [ColumnArgs, (c: ColumnArgs) => void];\n\nconst ColumnNavCtx = createContext<ColumnManagerData | null>(null);\n\nexport function useColumnNav(\n defaultArgs: ColumnArgs = { col_id: 495, unit_id: null },\n): ColumnManagerData {\n const ctx = useContext(ColumnNavCtx);\n if (ctx != null) return ctx;\n\n const [columnArgs, setColumnArgs] = useState<ColumnArgs>(\n extractColumnArgs(getQueryString(window.location.search)) ?? defaultArgs,\n );\n\n useEffect(() => setQueryString(columnArgs), [columnArgs]);\n\n const { col_id, project_id, status_code } = columnArgs;\n\n const setCurrentColumn = (obj) => {\n let args = obj;\n if (\"properties\" in obj) {\n args = { col_id: obj.properties.col_id, project_id, status_code };\n }\n // Set query string\n setQueryString(args);\n setColumnArgs(args);\n };\n\n return [columnArgs, setCurrentColumn];\n}\n\nfunction extractColumnArgs(search: any): ColumnArgs | null {\n const { col_id, unit_id, project_id, status_code } = search ?? {};\n if (col_id == null) return null;\n return { col_id, unit_id, project_id, status_code };\n}\n\nexport function ColumnNavProvider({ children, ...defaultArgs }) {\n /** Column navigation provider that manages the query string for selected columns */\n const value = useColumnNav(defaultArgs as any);\n return h(ColumnNavCtx.Provider, { value }, children);\n}\n"],"names":["$h0mWc$macrostrathyper","getQueryString","$h0mWc$getQueryString","setQueryString","$h0mWc$setQueryString","createContext","$h0mWc$createContext","useContext","$h0mWc$useContext","useState","$h0mWc$useState","useEffect","$h0mWc$useEffect","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$d8324406f284950a$exports","$d8324406f284950a$export$91cb5ac808759b34","$d8324406f284950a$export$36fed9e0f93a8fde","$d8324406f284950a$var$ColumnNavCtx","defaultArgs","col_id","unit_id","ctx","columnArgs","setColumnArgs","$d8324406f284950a$var$extractColumnArgs","search","project_id","status_code","window","location","obj","args","properties","children","value","Provider","useColumnNav","ColumnNavProvider"],"version":3,"file":"column-views.95411f1b.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
.vpjVaa_page-header{flex-direction:row;justify-content:space-between;margin-bottom:1em;display:flex}.vpjVaa_diagram-container{flex:1;min-height:0;display:flex;position:relative}.vpjVaa_diagram-container.vpjVaa_map-inset .vpjVaa_column-selection-map{z-index:1000;width:12em;height:12em;position:absolute;top:1em;right:1em}.vpjVaa_diagram-container.vpjVaa_map-expanded{flex-direction:row;gap:1em}.vpjVaa_diagram-container.vpjVaa_map-expanded .vpjVaa_assistant{width:40em;position:relative}.vpjVaa_column-selection-map,.vpjVaa_unit-details-panel,.vpjVaa_main-area{border-radius:6px;box-shadow:0 1px 3px #0000004d}.vpjVaa_column-selection-map{flex:1;width:40em;min-height:12em;max-height:40em;position:relative;top:0;right:0;overflow:hidden}.vpjVaa_column-selection-map .vpjVaa_correlation-map{height:100%;position:relative}.vpjVaa_unit-details-panel{background:var(--panel-secondary-background-color);flex:2;max-width:100%;padding:1em;overflow:scroll}.vpjVaa_main-area{background-color:var(--panel-secondary-background-color);flex:1;min-width:0;min-height:0;position:relative;overflow:scroll}.vpjVaa_correlation-diagram{background-color:var(--panel-secondary-background-color);--column-background-color:var(--background-color);--column-stroke-color:var(--text-color);padding:1em 1em 1em 0}.vpjVaa_package{position:relative}.vpjVaa_package .vpjVaa_package-overlay{border:2px solid red;position:absolute;top:9px;left:0}.vpjVaa_package .vpjVaa_laterally-extensive-unit .vpjVaa_strat-col-span{border:2px solid red;position:absolute}.vpjVaa_package .vpjVaa_column-container{flex-direction:row;display:flex}.vpjVaa_map-expanded-button{z-index:100;position:absolute;top:.5em;right:.5em}.vpjVaa_main-panel{flex-direction:column;height:100%;display:flex;position:relative}.vpjVaa_main-chart{position:relative}.vpjVaa_correlation-chart-inner{flex-direction:row;display:flex;position:relative}.vpjVaa_age-axis-container{z-index:100;background-color:var(--panel-secondary-background-color);flex-direction:row;padding-left:1em;padding-right:2px;display:flex;position:sticky;left:0}
|
|
2
|
-
/*# sourceMappingURL=column-views.9cb13e51.css.map */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"ACGA,oGAMA,6EAOI,gJAQF,yEAIE,6FAIJ,2HAIA,+HAGE,mFAYF,gIAOA,6IASA,qMASA,kCAGE,8FAMA,+GAIA,yEAIF,8EAMA,oFAMA,qCAGA,kFAKA","sources":["column-views.9cb13e51.css","packages/column-views/src/correlation-chart/main.module.sass"],"sourcesContent":[".vpjVaa_page-header {\n flex-direction: row;\n justify-content: space-between;\n margin-bottom: 1em;\n display: flex;\n}\n\n.vpjVaa_diagram-container {\n flex: 1;\n min-height: 0;\n display: flex;\n position: relative;\n}\n\n.vpjVaa_diagram-container.vpjVaa_map-inset .vpjVaa_column-selection-map {\n z-index: 1000;\n width: 12em;\n height: 12em;\n position: absolute;\n top: 1em;\n right: 1em;\n}\n\n.vpjVaa_diagram-container.vpjVaa_map-expanded {\n flex-direction: row;\n gap: 1em;\n}\n\n.vpjVaa_diagram-container.vpjVaa_map-expanded .vpjVaa_assistant {\n width: 40em;\n position: relative;\n}\n\n.vpjVaa_column-selection-map, .vpjVaa_unit-details-panel, .vpjVaa_main-area {\n border-radius: 6px;\n box-shadow: 0 1px 3px #0000004d;\n}\n\n.vpjVaa_column-selection-map {\n flex: 1;\n width: 40em;\n min-height: 12em;\n max-height: 40em;\n position: relative;\n top: 0;\n right: 0;\n overflow: hidden;\n}\n\n.vpjVaa_column-selection-map .vpjVaa_correlation-map {\n height: 100%;\n position: relative;\n}\n\n.vpjVaa_unit-details-panel {\n background: var(--panel-secondary-background-color);\n flex: 2;\n max-width: 100%;\n padding: 1em;\n overflow: scroll;\n}\n\n.vpjVaa_main-area {\n background-color: var(--panel-secondary-background-color);\n flex: 1;\n min-width: 0;\n min-height: 0;\n position: relative;\n overflow: scroll;\n}\n\n.vpjVaa_correlation-diagram {\n background-color: var(--panel-secondary-background-color);\n --column-background-color: var(--background-color);\n --column-stroke-color: var(--text-color);\n padding: 1em 1em 1em 0;\n}\n\n.vpjVaa_package {\n position: relative;\n}\n\n.vpjVaa_package .vpjVaa_package-overlay {\n border: 2px solid red;\n position: absolute;\n top: 9px;\n left: 0;\n}\n\n.vpjVaa_package .vpjVaa_laterally-extensive-unit .vpjVaa_strat-col-span {\n border: 2px solid red;\n position: absolute;\n}\n\n.vpjVaa_package .vpjVaa_column-container {\n flex-direction: row;\n display: flex;\n}\n\n.vpjVaa_map-expanded-button {\n z-index: 100;\n position: absolute;\n top: .5em;\n right: .5em;\n}\n\n.vpjVaa_main-panel {\n flex-direction: column;\n height: 100%;\n display: flex;\n position: relative;\n}\n\n.vpjVaa_main-chart {\n position: relative;\n}\n\n.vpjVaa_correlation-chart-inner {\n flex-direction: row;\n display: flex;\n position: relative;\n}\n\n.vpjVaa_age-axis-container {\n z-index: 100;\n background-color: var(--panel-secondary-background-color);\n flex-direction: row;\n padding-left: 1em;\n padding-right: 2px;\n display: flex;\n position: sticky;\n left: 0;\n}\n/*# sourceMappingURL=column-views.9cb13e51.css.map */\n","$map-size: 40em\n$map-size-inset: 12em\n\n.page-header\n display: flex\n flex-direction: row\n justify-content: space-between\n margin-bottom: 1em\n\n.diagram-container\n flex: 1\n position: relative\n min-height: 0\n display: flex\n\n &.map-inset\n .column-selection-map\n position: absolute\n top: 1em\n right: 1em\n height: $map-size-inset\n width: $map-size-inset\n z-index: 1000\n\n &.map-expanded\n flex-direction: row\n gap: 1em\n\n .assistant\n width: 40em\n position: relative\n\n.column-selection-map, .unit-details-panel, .main-area\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.3)\n border-radius: 6px\n\n.column-selection-map\n overflow: hidden\n\n .correlation-map\n height: 100%\n position: relative\n\n flex: 1\n min-height: $map-size-inset\n max-height: $map-size\n width: $map-size\n position: relative\n top: 0\n right: 0\n\n.unit-details-panel\n overflow: scroll\n background: var(--panel-secondary-background-color)\n flex: 2\n padding: 1em\n max-width: 100%\n\n.main-area\n position: relative\n flex: 1\n min-height: 0\n min-width: 0\n overflow: scroll\n background-color: var(--panel-secondary-background-color)\n\n\n.correlation-diagram\n padding: 1em\n padding-left: 0\n background-color: var(--panel-secondary-background-color)\n //box-shadow: 0 0 0.3em 0 var(--card-shadow-color)\n --column-background-color: var(--background-color)\n --column-stroke-color: var(--text-color)\n\n\n.package\n position: relative\n\n .package-overlay\n position: absolute\n top: 9px\n left: 0\n border: 2px solid red\n\n .laterally-extensive-unit .strat-col-span\n position: absolute\n border: 2px solid red\n\n .column-container\n display: flex\n flex-direction: row\n\n.map-expanded-button\n position: absolute\n top: 0.5em\n right: 0.5em\n z-index: 100\n\n.main-panel\n position: relative\n height: 100%\n display: flex\n flex-direction: column\n\n.main-chart\n position: relative\n\n.correlation-chart-inner\n display: flex\n flex-direction: row\n position: relative\n\n.age-axis-container\n display: flex\n flex-direction: row\n position: sticky\n left: 0\n z-index: 100\n padding-left: 1em\n padding-right: 2px\n background-color: var(--panel-secondary-background-color)\n"],"names":[],"version":3,"file":"column-views.9cb13e51.css.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{atom as e}from"jotai";import{createIsolation as t}from"jotai-scope";import{useRef as r,useEffect as o}from"react";import a from"@macrostrat/hyper";let c=t();function f({children:e,atoms:t,shouldUpdateAtoms:r=!0}){try{return c.useStore(),e}catch{return a(c.Provider,{store:null,initialValues:t},[a.if(r)(n,{atoms:t}),e])}}function n({atoms:e}){let t=c.useStore(),a=r(e.length);for(let[r,c]of(o(()=>{a.current!==e.length&&(console.error("Error: number of atoms in ScopedAtomUpdater has changed."),a.current=e.length)},[e.length]),e))o(()=>{t.set(r,c)},[t,c]);return null}let s=e(),l=e(e=>{let t=e(s);if(!t)return null;let r=new Map;return t.forEach(e=>{r.set(e.unit_id,e)}),r});export{c as scope,f as ScopedProvider,s as columnUnitsAtom,l as columnUnitsMapAtom};
|
|
2
|
-
//# sourceMappingURL=column-views.a0969fc8.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,O,Q,C,K,O,A,Q,mB,C,K,a,A,Q,U,C,C,a,C,K,O,A,Q,M,mB,CCkBO,IAAM,EAAwB,AAAA,IAU9B,SAAS,EAAe,CAAA,SAC7B,CAAQ,CAAA,MACR,CAAK,CAAA,kBACL,EAAoB,CAAA,CAAA,CACN,EAGd,GAAI,CAGF,OAFM,EAAM,QAAQ,GAEb,CACT,CAAE,KAAM,CACN,OAAO,AAAA,EAAE,EAAM,QAAQ,CAAE,CAAE,MAAO,KAAM,cAAe,CAAM,EAAG,CAC9D,AAAA,EAAE,EAAE,CAAC,GAAmB,EAAa,CAAE,MAAA,CAAM,GAC7C,EACD,CACH,CACF,CAEA,SAAS,EAAY,CAAA,MACnB,CAAK,CAGN,EAQC,IAAM,EAAQ,EAAM,QAAQ,GAGtB,EAAgB,AAAA,EAAO,EAAM,MAAM,EAQzC,IAAK,GAAM,CAAC,EAAM,EAAM,GAPxB,AAAA,EAAU,KACJ,EAAc,OAAO,GAAK,EAAM,MAAM,GACxC,QAAQ,KAAK,CAAC,4DACd,EAAc,OAAO,CAAG,EAAM,MAAM,CAExC,EAAG,CAAC,EAAM,MAAM,CAAC,EAEW,GAC1B,AAAA,EAAU,KACR,EAAM,GAAG,CAAC,EAAM,EAClB,EAAG,CAAC,EAAO,EAAM,EAEnB,OAAO,IACT,CAEO,IAAM,EAAkB,AAAA,IAElB,EAAqB,AAAA,EAAmC,AAAC,IACpE,IAAM,EAAQ,EAAI,GAClB,GAAI,CAAC,EAAO,OAAO,KACnB,IAAM,EAAU,IAAI,IAIpB,OAHA,EAAM,OAAO,CAAC,AAAC,IACb,EAAQ,GAAG,CAAC,EAAK,OAAO,CAAE,EAC5B,GACO,CACT,U,K,K,C,K,c,C,K,e,C,K,kB","sources":["<anon>","packages/column-views/src/data-provider/core.ts"],"sourcesContent":["import {atom as $90FvY$atom} from \"jotai\";\nimport {createIsolation as $90FvY$createIsolation} from \"jotai-scope\";\nimport {useRef as $90FvY$useRef, useEffect as $90FvY$useEffect} from \"react\";\nimport $90FvY$macrostrathyper from \"@macrostrat/hyper\";\n\n\n\n\n\nconst $ffce9913d28c4a58$export$5cff813ca8e50db9 = (0, $90FvY$createIsolation)();\nfunction $ffce9913d28c4a58$export$deff48bd299912d9({ children: children, atoms: atoms, shouldUpdateAtoms: shouldUpdateAtoms = true }) {\n // Always use the same store instance in this tree\n let val = null;\n try {\n val = $ffce9913d28c4a58$export$5cff813ca8e50db9.useStore();\n // This store has already been provided\n return children;\n } catch {\n return (0, $90FvY$macrostrathyper)($ffce9913d28c4a58$export$5cff813ca8e50db9.Provider, {\n store: null,\n initialValues: atoms\n }, [\n (0, $90FvY$macrostrathyper).if(shouldUpdateAtoms)($ffce9913d28c4a58$var$AtomUpdater, {\n atoms: atoms\n }),\n children\n ]);\n }\n}\nfunction $ffce9913d28c4a58$var$AtomUpdater({ atoms: atoms }) {\n /**\n * A generic updater to sync Jotai atoms with state passed as props.\n * Useful for scoped providers where state needs to be synced outside\n * the current context.\n */ /** TODO: this is an awkward way to keep atoms updated */ // The scoped store\n const store = $ffce9913d28c4a58$export$5cff813ca8e50db9.useStore();\n // Warn on atoms changing length\n const prevLengthRef = (0, $90FvY$useRef)(atoms.length);\n (0, $90FvY$useEffect)(()=>{\n if (prevLengthRef.current !== atoms.length) {\n console.error(\"Error: number of atoms in ScopedAtomUpdater has changed.\");\n prevLengthRef.current = atoms.length;\n }\n }, [\n atoms.length\n ]);\n for (const [atom, value] of atoms)(0, $90FvY$useEffect)(()=>{\n store.set(atom, value);\n }, [\n store,\n value\n ]);\n return null;\n}\nconst $ffce9913d28c4a58$export$533095c4f32f2edc = (0, $90FvY$atom)();\nconst $ffce9913d28c4a58$export$c798b7ff7cb2357b = (0, $90FvY$atom)((get)=>{\n const units = get($ffce9913d28c4a58$export$533095c4f32f2edc);\n if (!units) return null;\n const unitMap = new Map();\n units.forEach((unit)=>{\n unitMap.set(unit.unit_id, unit);\n });\n return unitMap;\n});\n\n\nexport {$ffce9913d28c4a58$export$5cff813ca8e50db9 as scope, $ffce9913d28c4a58$export$deff48bd299912d9 as ScopedProvider, $ffce9913d28c4a58$export$533095c4f32f2edc as columnUnitsAtom, $ffce9913d28c4a58$export$c798b7ff7cb2357b as columnUnitsMapAtom};\n//# sourceMappingURL=column-views.a0969fc8.js.map\n","import { atom, type WritableAtom } from \"jotai\";\nimport { createIsolation } from \"jotai-scope\";\nimport { BaseUnit } from \"@macrostrat/api-types\";\nimport { ReactNode, useEffect, useRef } from \"react\";\nimport h from \"@macrostrat/hyper\";\n\ninterface StateIsolation {\n Provider: (props: {\n store?: any;\n initialValues?: AtomMap;\n children: ReactNode;\n }) => ReactNode;\n useStore: () => any;\n useAtom: any;\n useAtomValue: any;\n useSetAtom: any;\n}\n\nexport const scope: StateIsolation = createIsolation();\n\nexport type AtomMap = [WritableAtom<any, any, any>, any][];\n\ntype ProviderProps = {\n children: ReactNode;\n atoms?: AtomMap;\n shouldUpdateAtoms?: boolean;\n};\n\nexport function ScopedProvider({\n children,\n atoms,\n shouldUpdateAtoms = true,\n}: ProviderProps) {\n // Always use the same store instance in this tree\n let val = null;\n try {\n val = scope.useStore();\n // This store has already been provided\n return children;\n } catch {\n return h(scope.Provider, { store: null, initialValues: atoms }, [\n h.if(shouldUpdateAtoms)(AtomUpdater, { atoms }),\n children,\n ]);\n }\n}\n\nfunction AtomUpdater({\n atoms,\n}: {\n atoms: [WritableAtom<any, any, any>, any][];\n}) {\n /**\n * A generic updater to sync Jotai atoms with state passed as props.\n * Useful for scoped providers where state needs to be synced outside\n * the current context.\n */\n /** TODO: this is an awkward way to keep atoms updated */\n // The scoped store\n const store = scope.useStore();\n\n // Warn on atoms changing length\n const prevLengthRef = useRef(atoms.length);\n useEffect(() => {\n if (prevLengthRef.current !== atoms.length) {\n console.error(\"Error: number of atoms in ScopedAtomUpdater has changed.\");\n prevLengthRef.current = atoms.length;\n }\n }, [atoms.length]);\n\n for (const [atom, value] of atoms) {\n useEffect(() => {\n store.set(atom, value);\n }, [store, value]);\n }\n return null;\n}\n\nexport const columnUnitsAtom = atom<BaseUnit[]>();\n\nexport const columnUnitsMapAtom = atom<Map<number, BaseUnit> | null>((get) => {\n const units = get(columnUnitsAtom);\n if (!units) return null;\n const unitMap = new Map<number, BaseUnit>();\n units.forEach((unit) => {\n unitMap.set(unit.unit_id, unit);\n });\n return unitMap;\n});\n"],"names":["atom","$90FvY$atom","createIsolation","$90FvY$createIsolation","useRef","$90FvY$useRef","useEffect","$90FvY$useEffect","$90FvY$macrostrathyper","$ffce9913d28c4a58$export$5cff813ca8e50db9","$ffce9913d28c4a58$export$deff48bd299912d9","children","atoms","shouldUpdateAtoms","useStore","Provider","store","initialValues","if","$ffce9913d28c4a58$var$AtomUpdater","prevLengthRef","length","value","current","console","error","set","$ffce9913d28c4a58$export$533095c4f32f2edc","$ffce9913d28c4a58$export$c798b7ff7cb2357b","get","units","unitMap","Map","forEach","unit","unit_id","scope","ScopedProvider","columnUnitsAtom","columnUnitsMapAtom"],"version":3,"file":"column-views.a0969fc8.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.db3377d8.js";import"./column-views.2e2158f5.js";import"./column-views.95411f1b.js";import"./column-views.d737de1e.js";import"./column-views.7b6e7d82.js";function e(e,a){return Object.keys(a).forEach(function(t){"default"===t||"__esModule"===t||Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:function(){return a[t]}})}),e}var a=globalThis,t={},r={},o=a.parcelRequirea149;null==o&&((o=function(e){if(e in t)return t[e].exports;if(e in r){var a=r[e];delete r[e];var o={id:e,exports:{}};return t[e]=o,a.call(o.exports,o,o.exports),o.exports}var c=Error("Cannot find module '"+e+"'");throw c.code="MODULE_NOT_FOUND",c}).register=function(e,a){r[e]=a},a.parcelRequirea149=o),o.register;var c={},$=o("Piirt"),s=o("lgTAP"),b=o("6W0kE"),f=o("wtIgl"),d=o("5SO8b");e(c,$),e(c,s),e(c,b),e(c,f),e(c,d);export{$482a09479937d1e2$export$45bd78cd093090fa as fetchAllColumns,$482a09479937d1e2$export$e3270a4e30e40ff9 as useColumnFeatures,$482a09479937d1e2$export$1aa679bd5e605f82 as fetchLithologies,$482a09479937d1e2$export$5d2ec2e733dfe6c7 as fetchIntervals,$482a09479937d1e2$export$780b4b253712916c as fetchEnvironments,$482a09479937d1e2$export$cd7bfa0860f58b96 as fetchRefs,$482a09479937d1e2$export$8ea8f45a7ffe4183 as fetchStratNames,$482a09479937d1e2$export$b97b9bdd6a521298 as fetchUnits,$482a09479937d1e2$export$d3d8b0fabcc76c5d as fetchColumnUnits,$8750144f23b92eb9$export$fb98d5bae3a6800 as useMacrostratStore,$8750144f23b92eb9$export$33b1392d23dde04 as useMacrostratBaseURL,$8750144f23b92eb9$export$3403c79cb24c043c as useMacrostratFetch,$8750144f23b92eb9$export$89dd4e5ae4a82373 as useMacrostratDefs,$8750144f23b92eb9$export$81eaae0b474404fd as useMacrostratColumns,$8750144f23b92eb9$export$39176e4592b7b9ab as useMacrostratColumnInfo,$8750144f23b92eb9$export$b9c9fc603d74a555 as useMacrostratData,$8750144f23b92eb9$export$690613f93cdc5576 as MacrostratDataProvider,$8750144f23b92eb9$export$3098013bc6cc316d as MacrostratAPIProvider,$8750144f23b92eb9$export$9e42f9b6e0d67c7d as MacrostratColumnProvider,$8750144f23b92eb9$export$8492a5cae82b6a70 as LithologiesProvider,$8750144f23b92eb9$export$4d18a90c945d129f as useLithologies,$8750144f23b92eb9$export$c6b216bf4c71b61f as useEnvironments,$d8324406f284950a$export$91cb5ac808759b34 as useColumnNav,$d8324406f284950a$export$36fed9e0f93a8fde as ColumnNavProvider,$91525b65c57a1e5d$export$ef5395089200109b as MacrostratColumnStateProvider,$91525b65c57a1e5d$export$7fec7bd80ff9c10e as MacrostratColumnDataProvider,$91525b65c57a1e5d$export$f19d75b1d4b676a4 as UnitSelectionProvider,$91525b65c57a1e5d$export$f8509b7cce386c7d as useMacrostratColumnData,$91525b65c57a1e5d$export$6fb40844db555b2 as useMacrostratUnits,$91525b65c57a1e5d$export$7513be0cfd10d9cc as useColumnUnitsMap,$91525b65c57a1e5d$export$a7fc62995ec4f76 as useCompositeScale,$cfa36458f00f4b0e$export$77a278d5ca56e309 as useUnitSelectionDispatch,$cfa36458f00f4b0e$export$f0dd93f90aa8e5da as useSelectedUnit,$cfa36458f00f4b0e$export$3c12ff51b216428d as allowUnitSelectionAtom,$cfa36458f00f4b0e$export$6d9520abc11d1c2b as selectedUnitIDAtom,$cfa36458f00f4b0e$export$ab00b48759e36cb4 as useColumnRef,$cfa36458f00f4b0e$export$36e20e8024573d5c as useAtomOverlayPosition,$cfa36458f00f4b0e$export$1a7a0d00e4ba9c81 as UnitSelectionCallbackManager,$cfa36458f00f4b0e$export$cbbec12b1451fe7d as useUnitSelectionTarget,$cfa36458f00f4b0e$export$70f5ee19650fc7d1 as UnitKeyboardNavigation};
|
|
2
|
-
//# sourceMappingURL=column-views.a2476e39.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,C,S,E,C,C,C,E,O,O,I,C,G,O,C,S,C,E,Y,G,A,e,G,O,S,C,c,C,I,C,E,I,O,c,C,E,E,C,W,C,E,I,W,O,C,C,E,A,C,E,G,C,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,G,E,E,G,E,E,G,E,E,G,E,E,U,6C,e,C,6C,iB,C,6C,gB,C,6C,c,C,6C,iB,C,6C,S,C,6C,e,C,6C,U,C,6C,gB,C,4C,kB,C,4C,oB,C,6C,kB,C,6C,iB,C,6C,oB,C,6C,uB,C,6C,iB,C,6C,sB,C,6C,qB,C,6C,wB,C,6C,mB,C,6C,c,C,6C,e,C,6C,Y,C,6C,iB,C,6C,6B,C,6C,4B,C,6C,qB,C,6C,uB,C,4C,kB,C,6C,iB,C,4C,iB,C,6C,wB,C,6C,e,C,6C,sB,C,6C,kB,C,6C,Y,C,6C,sB,C,6C,4B,C,6C,sB,C,6C,sB","sources":["<anon>","packages/column-views/src/data-provider/index.ts"],"sourcesContent":["import \"./column-views.db3377d8.js\";\nimport \"./column-views.2e2158f5.js\";\nimport \"./column-views.95411f1b.js\";\nimport \"./column-views.d737de1e.js\";\nimport \"./column-views.7b6e7d82.js\";\n\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule' || Object.prototype.hasOwnProperty.call(dest, key)) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n }\n });\n });\n\n return dest;\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $6f2fe440dde82d53$exports = {};\n\nvar $Piirt = parcelRequire(\"Piirt\");\n\nvar $lgTAP = parcelRequire(\"lgTAP\");\n\nvar $6W0kE = parcelRequire(\"6W0kE\");\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $5SO8b = parcelRequire(\"5SO8b\");\n$parcel$exportWildcard($6f2fe440dde82d53$exports, $Piirt);\n$parcel$exportWildcard($6f2fe440dde82d53$exports, $lgTAP);\n$parcel$exportWildcard($6f2fe440dde82d53$exports, $6W0kE);\n$parcel$exportWildcard($6f2fe440dde82d53$exports, $wtIgl);\n$parcel$exportWildcard($6f2fe440dde82d53$exports, $5SO8b);\n\n\nexport {$482a09479937d1e2$export$45bd78cd093090fa as fetchAllColumns, $482a09479937d1e2$export$e3270a4e30e40ff9 as useColumnFeatures, $482a09479937d1e2$export$1aa679bd5e605f82 as fetchLithologies, $482a09479937d1e2$export$5d2ec2e733dfe6c7 as fetchIntervals, $482a09479937d1e2$export$780b4b253712916c as fetchEnvironments, $482a09479937d1e2$export$cd7bfa0860f58b96 as fetchRefs, $482a09479937d1e2$export$8ea8f45a7ffe4183 as fetchStratNames, $482a09479937d1e2$export$b97b9bdd6a521298 as fetchUnits, $482a09479937d1e2$export$d3d8b0fabcc76c5d as fetchColumnUnits, $8750144f23b92eb9$export$fb98d5bae3a6800 as useMacrostratStore, $8750144f23b92eb9$export$33b1392d23dde04 as useMacrostratBaseURL, $8750144f23b92eb9$export$3403c79cb24c043c as useMacrostratFetch, $8750144f23b92eb9$export$89dd4e5ae4a82373 as useMacrostratDefs, $8750144f23b92eb9$export$81eaae0b474404fd as useMacrostratColumns, $8750144f23b92eb9$export$39176e4592b7b9ab as useMacrostratColumnInfo, $8750144f23b92eb9$export$b9c9fc603d74a555 as useMacrostratData, $8750144f23b92eb9$export$690613f93cdc5576 as MacrostratDataProvider, $8750144f23b92eb9$export$3098013bc6cc316d as MacrostratAPIProvider, $8750144f23b92eb9$export$9e42f9b6e0d67c7d as MacrostratColumnProvider, $8750144f23b92eb9$export$8492a5cae82b6a70 as LithologiesProvider, $8750144f23b92eb9$export$4d18a90c945d129f as useLithologies, $8750144f23b92eb9$export$c6b216bf4c71b61f as useEnvironments, $d8324406f284950a$export$91cb5ac808759b34 as useColumnNav, $d8324406f284950a$export$36fed9e0f93a8fde as ColumnNavProvider, $91525b65c57a1e5d$export$ef5395089200109b as MacrostratColumnStateProvider, $91525b65c57a1e5d$export$7fec7bd80ff9c10e as MacrostratColumnDataProvider, $91525b65c57a1e5d$export$f19d75b1d4b676a4 as UnitSelectionProvider, $91525b65c57a1e5d$export$f8509b7cce386c7d as useMacrostratColumnData, $91525b65c57a1e5d$export$6fb40844db555b2 as useMacrostratUnits, $91525b65c57a1e5d$export$7513be0cfd10d9cc as useColumnUnitsMap, $91525b65c57a1e5d$export$a7fc62995ec4f76 as useCompositeScale, $cfa36458f00f4b0e$export$77a278d5ca56e309 as useUnitSelectionDispatch, $cfa36458f00f4b0e$export$f0dd93f90aa8e5da as useSelectedUnit, $cfa36458f00f4b0e$export$3c12ff51b216428d as allowUnitSelectionAtom, $cfa36458f00f4b0e$export$6d9520abc11d1c2b as selectedUnitIDAtom, $cfa36458f00f4b0e$export$ab00b48759e36cb4 as useColumnRef, $cfa36458f00f4b0e$export$36e20e8024573d5c as useAtomOverlayPosition, $cfa36458f00f4b0e$export$1a7a0d00e4ba9c81 as UnitSelectionCallbackManager, $cfa36458f00f4b0e$export$cbbec12b1451fe7d as useUnitSelectionTarget, $cfa36458f00f4b0e$export$70f5ee19650fc7d1 as UnitKeyboardNavigation};\n//# sourceMappingURL=column-views.a2476e39.js.map\n","export * from \"./fetch\";\nexport * from \"./base\";\nexport * from \"./column-nav\";\nexport * from \"./store\";\nexport * from \"./unit-selection\";\n"],"names":["$parcel$exportWildcard","dest","source","Object","keys","forEach","key","prototype","hasOwnProperty","call","defineProperty","enumerable","get","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","err","Error","code","register","$6f2fe440dde82d53$exports","$Piirt","$lgTAP","$6W0kE","$wtIgl","$5SO8b","$482a09479937d1e2$export$45bd78cd093090fa","fetchAllColumns","$482a09479937d1e2$export$e3270a4e30e40ff9","useColumnFeatures","$482a09479937d1e2$export$1aa679bd5e605f82","fetchLithologies","$482a09479937d1e2$export$5d2ec2e733dfe6c7","fetchIntervals","$482a09479937d1e2$export$780b4b253712916c","fetchEnvironments","$482a09479937d1e2$export$cd7bfa0860f58b96","fetchRefs","$482a09479937d1e2$export$8ea8f45a7ffe4183","fetchStratNames","$482a09479937d1e2$export$b97b9bdd6a521298","fetchUnits","$482a09479937d1e2$export$d3d8b0fabcc76c5d","fetchColumnUnits","$8750144f23b92eb9$export$fb98d5bae3a6800","useMacrostratStore","$8750144f23b92eb9$export$33b1392d23dde04","useMacrostratBaseURL","$8750144f23b92eb9$export$3403c79cb24c043c","useMacrostratFetch","$8750144f23b92eb9$export$89dd4e5ae4a82373","useMacrostratDefs","$8750144f23b92eb9$export$81eaae0b474404fd","useMacrostratColumns","$8750144f23b92eb9$export$39176e4592b7b9ab","useMacrostratColumnInfo","$8750144f23b92eb9$export$b9c9fc603d74a555","useMacrostratData","$8750144f23b92eb9$export$690613f93cdc5576","MacrostratDataProvider","$8750144f23b92eb9$export$3098013bc6cc316d","MacrostratAPIProvider","$8750144f23b92eb9$export$9e42f9b6e0d67c7d","MacrostratColumnProvider","$8750144f23b92eb9$export$8492a5cae82b6a70","LithologiesProvider","$8750144f23b92eb9$export$4d18a90c945d129f","useLithologies","$8750144f23b92eb9$export$c6b216bf4c71b61f","useEnvironments","$d8324406f284950a$export$91cb5ac808759b34","useColumnNav","$d8324406f284950a$export$36fed9e0f93a8fde","ColumnNavProvider","$91525b65c57a1e5d$export$ef5395089200109b","MacrostratColumnStateProvider","$91525b65c57a1e5d$export$7fec7bd80ff9c10e","MacrostratColumnDataProvider","$91525b65c57a1e5d$export$f19d75b1d4b676a4","UnitSelectionProvider","$91525b65c57a1e5d$export$f8509b7cce386c7d","useMacrostratColumnData","$91525b65c57a1e5d$export$6fb40844db555b2","useMacrostratUnits","$91525b65c57a1e5d$export$7513be0cfd10d9cc","useColumnUnitsMap","$91525b65c57a1e5d$export$a7fc62995ec4f76","useCompositeScale","$cfa36458f00f4b0e$export$77a278d5ca56e309","useUnitSelectionDispatch","$cfa36458f00f4b0e$export$f0dd93f90aa8e5da","useSelectedUnit","$cfa36458f00f4b0e$export$3c12ff51b216428d","allowUnitSelectionAtom","$cfa36458f00f4b0e$export$6d9520abc11d1c2b","selectedUnitIDAtom","$cfa36458f00f4b0e$export$ab00b48759e36cb4","useColumnRef","$cfa36458f00f4b0e$export$36e20e8024573d5c","useAtomOverlayPosition","$cfa36458f00f4b0e$export$1a7a0d00e4ba9c81","UnitSelectionCallbackManager","$cfa36458f00f4b0e$export$cbbec12b1451fe7d","useUnitSelectionTarget","$cfa36458f00f4b0e$export$70f5ee19650fc7d1","UnitKeyboardNavigation"],"version":3,"file":"column-views.a2476e39.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.048fdcaf.js";import"./column-views.4a28d695.js";import"./column-views.31da008b.js";function e(e,a){return Object.keys(a).forEach(function(t){"default"===t||"__esModule"===t||Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:function(){return a[t]}})}),e}var a=globalThis,t={},r={},c=a.parcelRequirea149;null==c&&((c=function(e){if(e in t)return t[e].exports;if(e in r){var a=r[e];delete r[e];var c={id:e,exports:{}};return t[e]=c,a.call(c.exports,c,c.exports),c.exports}var o=Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}).register=function(e,a){r[e]=a},a.parcelRequirea149=c),c.register;var o={},i=c("iYfAq"),f=c("2KV3o"),n=c("2tdcx");e(o,i),e(o,f),e(o,n);export{$4a89f93cd5289383$export$fbd245232df17557 as UnitDetailsPanel,$4a89f93cd5289383$export$fc503c39cc5cff43 as LegendPanelHeader,$4a89f93cd5289383$export$ec297f6f9a6ccad0 as UnitDetailsFeature,$4a89f93cd5289383$export$3b11bc38611c5941 as Duration,$4a89f93cd5289383$export$895d4931dd696e25 as ReferencesField,$4a89f93cd5289383$export$989167234458594d as Identifier,$4a89f93cd5289383$export$37ebfd237811b1eb as AgeLabel,$4a89f93cd5289383$export$b6867fc5221f9f65 as ClickableText,$1c6e0a5d10814cef$export$6716aecc2c9afbe2 as UnitDetailsPopover,$1c6e0a5d10814cef$export$db1115efab13710d as UnitSelectionPopover,$a8b0b0b16d1f0073$export$cfdbe8496aa51962 as UnitDetailsPanelWithNavigation};
|
|
2
|
-
//# sourceMappingURL=column-views.a8f5ee28.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"A,M,6C,A,O,6C,A,O,6C,C,S,E,C,C,C,E,O,O,I,C,G,O,C,S,C,E,Y,G,A,e,G,O,S,C,c,C,I,C,E,I,O,c,C,E,E,C,W,C,E,I,W,O,C,C,E,A,C,E,G,C,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,E,E,S,E,E,S,E,E,G,E,E,G,E,E,U,6C,gB,C,6C,iB,C,6C,kB,C,6C,Q,C,6C,e,C,6C,U,C,6C,Q,C,6C,a,C,6C,kB,C,6C,oB,C,6C,8B","sources":["<anon>","packages/column-views/src/unit-details/index.ts"],"sourcesContent":["import \"./column-views.048fdcaf.js\";\nimport \"./column-views.4a28d695.js\";\nimport \"./column-views.31da008b.js\";\n\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule' || Object.prototype.hasOwnProperty.call(dest, key)) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n }\n });\n });\n\n return dest;\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $af300f8688b62310$exports = {};\n\nvar $iYfAq = parcelRequire(\"iYfAq\");\n\nvar $2KV3o = parcelRequire(\"2KV3o\");\n\nvar $2tdcx = parcelRequire(\"2tdcx\");\n$parcel$exportWildcard($af300f8688b62310$exports, $iYfAq);\n$parcel$exportWildcard($af300f8688b62310$exports, $2KV3o);\n$parcel$exportWildcard($af300f8688b62310$exports, $2tdcx);\n\n\nexport {$4a89f93cd5289383$export$fbd245232df17557 as UnitDetailsPanel, $4a89f93cd5289383$export$fc503c39cc5cff43 as LegendPanelHeader, $4a89f93cd5289383$export$ec297f6f9a6ccad0 as UnitDetailsFeature, $4a89f93cd5289383$export$3b11bc38611c5941 as Duration, $4a89f93cd5289383$export$895d4931dd696e25 as ReferencesField, $4a89f93cd5289383$export$989167234458594d as Identifier, $4a89f93cd5289383$export$37ebfd237811b1eb as AgeLabel, $4a89f93cd5289383$export$b6867fc5221f9f65 as ClickableText, $1c6e0a5d10814cef$export$6716aecc2c9afbe2 as UnitDetailsPopover, $1c6e0a5d10814cef$export$db1115efab13710d as UnitSelectionPopover, $a8b0b0b16d1f0073$export$cfdbe8496aa51962 as UnitDetailsPanelWithNavigation};\n//# sourceMappingURL=column-views.a8f5ee28.js.map\n","export * from \"./panel\";\nexport * from \"./popover\";\nexport * from \"./modal-panel\";\n"],"names":["$parcel$exportWildcard","dest","source","Object","keys","forEach","key","prototype","hasOwnProperty","call","defineProperty","enumerable","get","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","err","Error","code","register","$af300f8688b62310$exports","$iYfAq","$2KV3o","$2tdcx","$4a89f93cd5289383$export$fbd245232df17557","UnitDetailsPanel","$4a89f93cd5289383$export$fc503c39cc5cff43","LegendPanelHeader","$4a89f93cd5289383$export$ec297f6f9a6ccad0","UnitDetailsFeature","$4a89f93cd5289383$export$3b11bc38611c5941","Duration","$4a89f93cd5289383$export$895d4931dd696e25","ReferencesField","$4a89f93cd5289383$export$989167234458594d","Identifier","$4a89f93cd5289383$export$37ebfd237811b1eb","AgeLabel","$4a89f93cd5289383$export$b6867fc5221f9f65","ClickableText","$1c6e0a5d10814cef$export$6716aecc2c9afbe2","UnitDetailsPopover","$1c6e0a5d10814cef$export$db1115efab13710d","UnitSelectionPopover","$a8b0b0b16d1f0073$export$cfdbe8496aa51962","UnitDetailsPanelWithNavigation"],"version":3,"file":"column-views.a8f5ee28.js.map","sourceRoot":"../../../../"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"./column-views.0bd15ee4.js";import"./column-views.d737de1e.js";import"./column-views.048fdcaf.js";import e from"@macrostrat/hyper";import{ColumnAxisType as a,SVG as t,AgeAxis as i}from"@macrostrat/column-components";import"react";import{Parenthetical as s}from"@macrostrat/data-components";function o(e,a,t,i){Object.defineProperty(e,a,{get:t,set:i,enumerable:!0,configurable:!0})}var r=globalThis,l={},c={},n=r.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 i=Error("Cannot find module '"+e+"'");throw i.code="MODULE_NOT_FOUND",i}).register=function(e,a){c[e]=a},r.parcelRequirea149=n),n.register;var p={};o(p,"VerticalAxisLabel",()=>d),o(p,"CompositeAgeAxis",()=>f),o(p,"CompositeAgeAxisCore",()=>A),o(p,"ApproximateHeightAxis",()=>h),o(p,"AgeCursor",()=>b);var u=n("6kMGl"),m=n("wtIgl"),g=n("iYfAq");let x=e.styled(u&&u.__esModule?u.default:u);function d(e){let{label:a="Age",unit:t="Ma",className:i,height:o}=e;return x("div.column-axis-label.age-axis-label",{className:i,style:{height:o}},[a," ",x.if(t)(s,{className:"age-axis-unit"},t)])}function f(e){let{axisType:a,sections:t,totalHeight:i}=(0,m.useMacrostratColumnData)();return x(A,{axisType:a,packages:t.map(e=>({key:`section-${e.section_id}`,...e.scaleInfo})),totalHeight:i,...e})}function h(e){let{axisType:a,sections:t,totalHeight:i}=(0,m.useMacrostratColumnData)();return x(A,{axisType:a,axisLabel:"Approx. height",axisUnit:"m",packages:t.map(e=>{let{scaleInfo:a}=e;if(null==a.heightScale)throw Error("No height scale available for section");return{key:`section-${e.section_id}`,...a,scale:a.heightScale}}),totalHeight:i,...e})}function A(e){let{axisType:s,axisLabel:o,axisUnit:r,totalHeight:l,packages:c,...n}=e;if(s==a.ORDINAL)return null;let p=o??"Age",u=r??"Ma";return s==a.DEPTH?(p="Depth",u="m"):s==a.HEIGHT&&(p="Height",u="m"),x("div.composite-age-axis",n,[x(d,{label:p,unit:u,height:l}),x(t,{className:"age-axis-column",style:{width:"22px",height:`${l}px`},width:22,height:l},c.map((e,a)=>{let{key:t,scale:s}=e;return x(i,{key:t,className:"age-axis",scale:s,tickSizeOuter:3})}))])}function b({age:e}){let a=(0,m.useCompositeScale)()(e);return null==e||null==a?null:x("div.age-cursor",{style:{top:a}},[x("div.line"),x(g.AgeLabel,{age:e,className:"label"})])}export{d as VerticalAxisLabel,f as CompositeAgeAxis,A as CompositeAgeAxisCore,h as ApproximateHeightAxis,b as AgeCursor};
|
|
2
|
-
//# sourceMappingURL=column-views.ad60c02f.js.map
|