@macrostrat/column-components
Version:
React rendering primitives for stratigraphic columns
61 lines (54 loc) • 2.35 kB
JavaScript
import {PhotoLibraryContext as $5dca8eedb675a134$export$9f4be09e3914797a} from "./column-components.f1b5de43.js";
import {useState as $jXGEG$useState, useContext as $jXGEG$useContext} from "react";
import $jXGEG$macrostrathyper from "@macrostrat/hyper";
import $jXGEG$reactimages, {ModalGateway as $jXGEG$ModalGateway, Modal as $jXGEG$Modal} from "react-images";
/*
* decaffeinate suggestions:
* DS102: Remove unnecessary code created because of implicit returns
* DS207: Consider shorter variations of null checks
* Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
*/
const $cd5f05c7dd40d93b$var$PhotoGallery = function(props) {
const { images: images, isOpen: isOpen = false, onClose: onClose, ...rest } = props;
// We just disable this until we figure it out.
//return null;
const [ix, setIndex] = (0, $jXGEG$useState)(0);
const increment = (step)=>function() {
const newIx = (ix + step) % images.length;
return setIndex(newIx);
};
return (0, $jXGEG$macrostrathyper)((0, $jXGEG$ModalGateway), null, [
(0, $jXGEG$macrostrathyper).if(isOpen)((0, $jXGEG$Modal), {
onClose: onClose
}, [
(0, $jXGEG$macrostrathyper)((0, $jXGEG$reactimages), {
views: images,
currentIndex: ix,
...rest
})
])
]);
};
function $cd5f05c7dd40d93b$export$24f17aabaa7629ce(props) {
// TODO: figure out web error "Cannot find module `fscreen`"
const { photos: photos, computePhotoPath: computePhotoPath } = (0, $jXGEG$useContext)((0, $5dca8eedb675a134$export$9f4be09e3914797a));
if (photos == null) return null;
const { photoIDs: photoIDs, ...rest } = props;
const displayedPhotos = photoIDs.map((id)=>{
return photos.find((d)=>d.id === id);
});
const getPaths = function(d) {
const src = computePhotoPath(d);
return {
src: src,
caption: d.note
};
};
const images = displayedPhotos.filter((d)=>d != null).map(getPaths);
return (0, $jXGEG$macrostrathyper)($cd5f05c7dd40d93b$var$PhotoGallery, {
images: images,
...rest
});
}
export {$cd5f05c7dd40d93b$export$24f17aabaa7629ce as PhotoOverlay};
//# sourceMappingURL=column-components.6a153738.js.map