@macrostrat/column-components
Version:
React rendering primitives for stratigraphic columns
3 lines (2 loc) • 982 B
JavaScript
import{createContext as e}from"react";import{StatefulComponent as t}from"@macrostrat/ui-components";import s from"@macrostrat/hyper";function o(e,t,s,o){Object.defineProperty(e,t,{get:s,set:o,enumerable:!0,configurable:!0})}var r={};o(r,"FaciesContext",()=>i),o(r,"FaciesProvider",()=>a);let i=e({facies:[],onColorChanged(){}});class a extends t{constructor(e){super(e),this.state={facies:e.initialFacies||[],__colorMap:{}},this.getFaciesColor=this.getFaciesColor.bind(this),this.setFaciesColor=this.setFaciesColor.bind(this)}getFaciesColor(e){let{__colorMap:t}=this.state;return t[e]||null}setFaciesColor(e,t){let s=this.state.facies.findIndex(t=>t.id===e);return this.updateState({facies:{[s]:{color:{$set:t}}}})}render(){let e,t,{facies:o}=this.state,{children:r,...a}=this.props,c={facies:o,...{getFaciesColor:e,setFaciesColor:t}=this,...a};return s(i.Provider,{value:c},r)}}export{i as FaciesContext,a as FaciesProvider};
//# sourceMappingURL=column-components.ac3ed2cd.js.map