UNPKG

@responsive-email/react-email

Version:

A utility for writing responsive email templates with react-email

2 lines 1.42 kB
import o from"react";function C(t){return e=>{let s=o.Children.toArray(e.children),d=s.filter(t).map(n=>n.props.span??1);d.length>3&&console.warn("You've exceeded the recommended 3-column limit in your email template. Consider sticking to a maximum of 3 columns for best practice.");let a=d.reduce((n,r)=>n+r,0),m=e.paddingLeft??0,c=e.paddingLeft??0,u=(e.maxWidth??600-m-c)/a;return o.createElement("table",{align:"center",width:"100%",border:0,cellPadding:"0",cellSpacing:"0",role:"presentation",...e,style:{textAlign:"center",fontSize:0,...e.style}},o.createElement("tbody",null,o.createElement("tr",null,o.createElement("td",{style:{padding:`${e.paddingTop??0}px ${e.paddingRight??0}px ${e.paddingBottom??0}px ${e.paddingLeft??0}px`}},s.map((n,r)=>{if(t(n)){let i=n.props,g=i.span??1;return o.createElement("table",{key:r,align:"center",width:"100%",border:0,cellPadding:"0",cellSpacing:"0",role:"presentation",...i,style:{maxWidth:u*g,display:"inline-block",verticalAlign:"top",fontSize:16,boxSizing:"border-box",...i.style}},o.createElement("tbody",null,o.createElement("tr",null,o.createElement("td",{...i.tdProps},i.children))))}return n})))))}}import p from"react";function l(){let t=e=>p.createElement(p.Fragment,null);return{isResponsiveColumn:e=>p.isValidElement(e)&&e.type===t,component:t}}var{isResponsiveColumn:B,component:W}=l();export{C as a,B as b,W as c}; //# sourceMappingURL=chunk-FIZV45M4.mjs.map