UNPKG

@macrostrat/column-components

Version:

React rendering primitives for stratigraphic columns

3 lines (2 loc) 2.6 kB
import"./column-components.298cc9f3.js";import"./column-components.bc81abe8.js";import{Component as e,createContext as t,useRef as r,useContext as n,createElement as l}from"react";import i from"@macrostrat/hyper";import{path as o}from"d3-path";var a=globalThis,s={},f={},u=a.parcelRequirea149;null==u&&((u=function(e){if(e in s)return s[e].exports;if(e in f){var t=f[e];delete f[e];var r={id:e,exports:{}};return s[e]=r,t.call(r.exports,r,r.exports),r.exports}var n=Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}).register=function(e,t){f[e]=t},a.parcelRequirea149=u),u.register;var c=u("aVUB5"),d=u("lDuC7");let m=i.styled(d&&d.__esModule?d.default:d),p=0;function $(){let e=`uuid-${p}`;return p+=1,e}class b extends e{constructor(e){super(e),this.UUID=$()}}let h=t(null),x=function(){let e=n(h);return null==e?r($()).current:e};function C({children:e}){let t=r($());return m(h.Provider,{value:t.current,children:e})}function g(e){let{pixelHeight:t,width:r}=n(c.ColumnLayoutContext),{id:l,className:i}=e;return l.startsWith("#")&&(l=l.slice(1)),m("rect",{id:l,x:0,y:0,width:r,height:t,className:i})}function y(e){let{id:t}=e,{scale:r,divisions:l,grainsizeScale:i}=n(c.ColumnLayoutContext);if(t.startsWith("#")&&(t=t.slice(1)),0===l.length)return null;let[a,s]=r.domain(),f=function(e){let{top:t}=e;return t>s&&(t=s),r(t)},u=function(e){let{bottom:t}=e;return t<a&&(t=a),r(t)},d=l.filter(function(e){return!(e.top<=a)&&!(e.bottom>s)}),p=null,$="m",b=null;for(b of Array.from(d)){null==p&&(p=o()).moveTo(0,u(b)),null!=b.grainsize&&($=b.grainsize);let e=i($);p.lineTo(e,u(b)),p.lineTo(e,f(b))}return p.lineTo(0,f(b)),p.closePath(),m("path",{id:t,key:t,d:p.toString()})}let U=function(e){let{id:t,children:r,...n}=e;return t.startsWith("#")&&(t=t.slice(1)),l("clipPath",{id:t,key:t,...n},r)},v=function(e){let{id:t,...r}=e;return m("use.frame",{xlinkHref:t,fill:"transparent",key:"frame",...r})},D=function(e,t){let r={};for(let n of Array.from(t))r[n+"ID"]=`#${e}-${n}`;return r};function N(e){let{left:t=0,shiftY:r=0,className:n,onClick:l,children:i,frame:o=g,clip:a=!0}=e,{frameID:s,clipID:f}=D(x(),["frame","clip"]),u=null;null!=t&&(u=`translate(${t} ${r})`);let c="frame",d=m(o,{id:s,className:c}),p=null,$=null;return a&&(p=m("defs",{key:"defs"},[d,m(U,{id:f},m(v,{id:s}))]),$=`url(${f})`,d=m(v,{id:s,className:c})),m("g",{className:n,transform:u,onClick:l},[p,d,m("g.inner",{clipPath:$},i)])}export{b as UUIDComponent,x as useUUID,C as UUIDProvider,g as SimpleFrame,y as GrainsizeFrame,U as ClipPath,N as ClippingFrame}; //# sourceMappingURL=column-components.7c8d9782.js.map