Socket
Socket
Sign inDemoInstall

satori

Package Overview
Dependencies
Maintainers
1
Versions
113
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

satori - npm Package Compare versions

Comparing version 0.0.12 to 0.0.13

4

dist/esm/index.js

@@ -1,3 +0,3 @@

var it=Object.defineProperty,Pt=Object.defineProperties,Mt=Object.getOwnPropertyDescriptor,Bt=Object.getOwnPropertyDescriptors,Dt=Object.getOwnPropertyNames,Et=Object.getOwnPropertySymbols;var _t=Object.prototype.hasOwnProperty,Yt=Object.prototype.propertyIsEnumerable;var St=(t,n,e)=>n in t?it(t,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[n]=e,Z=(t,n)=>{for(var e in n||(n={}))_t.call(n,e)&&St(t,e,n[e]);if(Et)for(var e of Et(n))Yt.call(n,e)&&St(t,e,n[e]);return t},Rt=(t,n)=>Pt(t,Bt(n)),zt=t=>it(t,"__esModule",{value:!0});var Tt=(t,n)=>()=>(t&&(n=t(t=0)),n);var Ut=(t,n)=>{for(var e in n)it(t,e,{get:n[e],enumerable:!0})},Xt=(t,n,e,i)=>{if(n&&typeof n=="object"||typeof n=="function")for(let a of Dt(n))!_t.call(t,a)&&(e||a!=="default")&&it(t,a,{get:()=>n[a],enumerable:!(i=Mt(n,a))||i.enumerable});return t};var Ht=(t=>(n,e)=>t&&t.get(n)||(e=Xt(zt({}),n,1),t&&t.set(n,e),e))(typeof WeakMap!="undefined"?new WeakMap:0);var g=Tt(()=>{});var It={};Ut(It,{default:()=>Jt});import*as Vt from"yoga-layout-prebuilt";var Jt,Lt=Tt(()=>{g();Jt=Vt});g();g();g();var at;{let t=(Lt(),Ht(It));t.default?at=t.default:at=t}function jt(t){at=t}function B(){return at}g();g();function ut(t){let n=typeof t;return!(n==="number"||n==="bigint"||n==="string"||n==="boolean")}function At(t){return/^class\s/.test(Function.prototype.toString.call(t))}function Q(t,n){return[t[0]*n[0]+t[2]*n[1],t[1]*n[0]+t[3]*n[1],t[0]*n[2]+t[2]*n[3],t[1]*n[2]+t[3]*n[3],t[0]*n[4]+t[2]*n[5]+t[4],t[1]*n[4]+t[3]*n[5]+t[5]]}function N(t,n,e){let i=n[t];return typeof i=="undefined"?e:i}g();g();var Ft={p:{display:"block",marginTop:"1em",marginBottom:"1em"},div:{display:"block"},blockquote:{display:"block",marginTop:"1em",marginBottom:"1em",marginLeft:40,marginRight:40},center:{display:"block",textAlign:"center"},hr:{display:"block",marginTop:"0.5em",marginBottom:"0.5em",marginLeft:"auto",marginRight:"auto",borderWidth:1,borderStyle:"inset"},h1:{display:"block",fontSize:"2em",marginTop:"0.67em",marginBottom:"0.67em",marginLeft:0,marginRight:0,fontWeight:"bold"},h2:{display:"block",fontSize:"1.5em",marginTop:"0.83em",marginBottom:"0.83em",marginLeft:0,marginRight:0,fontWeight:"bold"},h3:{display:"block",fontSize:"1.17em",marginTop:"1em",marginBottom:"1em",marginLeft:0,marginRight:0,fontWeight:"bold"},h4:{display:"block",marginTop:"1.33em",marginBottom:"1.33em",marginLeft:0,marginRight:0,fontWeight:"bold"},h5:{display:"block",fontSize:"0.83em",marginTop:"1.67em",marginBottom:"1.67em",marginLeft:0,marginRight:0,fontWeight:"bold"},h6:{display:"block",fontSize:"0.67em",marginTop:"2.33em",marginBottom:"2.33em",marginLeft:0,marginRight:0,fontWeight:"bold"},u:{textDecoration:"underline"},strong:{fontWeight:"bold"},b:{fontWeight:"bold"},i:{fontStyle:"italic"},em:{fontStyle:"italic"},code:{fontFamily:"monospace"},kbd:{fontFamily:"monospace"},pre:{display:"block",fontFamily:"monospace",whiteSpace:"pre",marginTop:"1em",marginBottom:"1em"},mark:{backgroundColor:"yellow",color:"black"},big:{fontSize:"larger"},small:{fontSize:"smaller"},s:{textDecoration:"line-through"}};g();var Kt=new Set(["color","font","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textTransform","whiteSpace","letterSpacing","transform","wordBreak","textShadowOffset","textShadowColor","textShadowRadius","opacity"]);function ct(t){let n={};for(let e in t)Kt.has(e)&&(n[e]=t[e]);return n}g();import{getPropertyName as Ct,getStylesForProperty as qt}from"css-to-react-native";import Nt from"parse-css-dimension";import{parseElementStyle as Zt}from"css-background-parser";var Qt=new Set(["flex","flexGrow","flexShrink","flexBasis","fontWeight","lineHeight","opacity","scale","scaleX","scaleY"]),wt=[1,0,0,1,0,0];function te(t,n){return typeof n=="number"?Qt.has(t)?String(n):n+"px":n}function Ot(t,n){if(typeof t=="number")return t;try{let e=new Nt(t);if(e.type==="length")switch(e.unit){case"em":return e.value*n;case"rem":return e.value*16;default:return e.value}else if(e.type==="angle")switch(e.unit){case"deg":return e.value;case"rad":return e.value*180/Math.PI;default:return e.value}}catch{}}function st(t,n){let e=[];for(let o in t){let r=Ct(o);e.push([r,te(r,t[o])])}let i=e.reduce((o,r)=>{let s=Ct(r[0]),c=r[1];return Object.assign(o,qt(s,c,!0))},{});if(i.backgroundImage){let{backgrounds:o}=Zt(i);i.backgroundImage=o}let a=i.fontSize||n.fontSize;if(typeof a=="string")try{let o=new Nt(a);switch(o.unit){case"em":a=o.value*n.fontSize;break;case"rem":a=o.value*16;break}}catch{a=16}i.fontSize=a;for(let o in i){let r=i[o];if(typeof r=="string"){let s=Ot(r,a);typeof s!="undefined"&&(i[o]=s),r=i[o]}if(o==="opacity"&&(r=i[o]=r*n.opacity),o==="transform"){let s=[...wt],c=r;for(let l of c){let b=Object.keys(l)[0],p=l[b],d=typeof p=="string"?Ot(p,a):p,f=[...wt];switch(b){case"translateX":f[4]=d;break;case"translateY":f[5]=d;break;case"scaleX":f[0]=d;break;case"scaleY":f[3]=d;break;case"rotate":let y=d*Math.PI/180,x=Math.cos(y),$=Math.sin(y);f[0]=x,f[1]=$,f[2]=-$,f[3]=x;break;case"skewX":f[2]=Math.tan(d*Math.PI/180);break;case"skewY":f[1]=Math.tan(d*Math.PI/180);break}s=Q(f,s)}i.transform=s}}return i}function mt(t,n,e,i,a){let o=B(),r=Z(Z(Z({},e),st(Ft[n],e)),st(i,e));if(n==="img"){let s=parseInt(a.width),l=parseInt(a.height)/s;r.width||(r.width=s),r.height||(r.height=l*r.width)}return t.setDisplay(N(r.display,{flex:o.DISPLAY_FLEX,none:o.DISPLAY_NONE},o.DISPLAY_FLEX)),t.setAlignContent(N(r.alignContent,{stretch:o.ALIGN_STRETCH,center:o.ALIGN_CENTER,"flex-start":o.ALIGN_FLEX_START,"flex-end":o.ALIGN_FLEX_END,"space-between":o.ALIGN_SPACE_BETWEEN,"space-around":o.ALIGN_SPACE_AROUND,baseline:o.ALIGN_BASELINE,normal:o.ALIGN_AUTO},o.ALIGN_AUTO)),t.setAlignItems(N(r.alignItems,{stretch:o.ALIGN_STRETCH,center:o.ALIGN_CENTER,"flex-start":o.ALIGN_FLEX_START,"flex-end":o.ALIGN_FLEX_END,baseline:o.ALIGN_BASELINE,normal:o.ALIGN_AUTO},o.ALIGN_FLEX_START)),t.setAlignSelf(N(r.alignSelf,{stretch:o.ALIGN_STRETCH,center:o.ALIGN_CENTER,"flex-start":o.ALIGN_FLEX_START,"flex-end":o.ALIGN_FLEX_END,baseline:o.ALIGN_BASELINE,normal:o.ALIGN_AUTO},o.ALIGN_AUTO)),t.setJustifyContent(N(r.justifyContent,{center:o.JUSTIFY_CENTER,"flex-start":o.JUSTIFY_FLEX_START,"flex-end":o.JUSTIFY_FLEX_END,"space-between":o.JUSTIFY_SPACE_BETWEEN,"space-around":o.JUSTIFY_SPACE_AROUND},o.JUSTIFY_FLEX_START)),t.setFlexDirection(N(r.flexDirection,{row:o.FLEX_DIRECTION_ROW,column:o.FLEX_DIRECTION_COLUMN,"row-reverse":o.FLEX_DIRECTION_ROW_REVERSE,"column-reverse":o.FLEX_DIRECTION_COLUMN_REVERSE},o.FLEX_DIRECTION_ROW)),t.setFlexWrap(N(r.flexWrap,{wrap:o.WRAP_WRAP,nowrap:o.WRAP_NO_WRAP,"wrap-reverse":o.WRAP_WRAP_REVERSE},o.WRAP_WRAP)),typeof r.flexBasis!="undefined"&&t.setFlexBasis(r.flexBasis),t.setFlexGrow(typeof r.flexGrow=="undefined"?0:r.flexGrow),t.setFlexShrink(typeof r.flexShrink=="undefined"?1:r.flexShrink),typeof r.maxHeight!="undefined"&&t.setMaxHeight(r.maxHeight),typeof r.maxWidth!="undefined"&&t.setMaxWidth(r.maxWidth),typeof r.minHeight!="undefined"&&t.setMinHeight(r.minHeight),typeof r.minWidth!="undefined"&&t.setMinWidth(r.minWidth),t.setOverflow(N(r.overflow,{visible:o.OVERFLOW_VISIBLE,hidden:o.OVERFLOW_HIDDEN},o.OVERFLOW_VISIBLE)),t.setMargin(o.EDGE_TOP,r.marginTop||0),t.setMargin(o.EDGE_BOTTOM,r.marginBottom||0),t.setMargin(o.EDGE_LEFT,r.marginLeft||0),t.setMargin(o.EDGE_RIGHT,r.marginRight||0),t.setBorder(o.EDGE_TOP,r.borderWidth||0),t.setBorder(o.EDGE_BOTTOM,r.borderWidth||0),t.setBorder(o.EDGE_LEFT,r.borderWidth||0),t.setBorder(o.EDGE_RIGHT,r.borderWidth||0),t.setPadding(o.EDGE_TOP,r.paddingTop||0),t.setPadding(o.EDGE_BOTTOM,r.paddingBottom||0),t.setPadding(o.EDGE_LEFT,r.paddingLeft||0),t.setPadding(o.EDGE_RIGHT,r.paddingRight||0),t.setPositionType(N(r.position,{absolute:o.POSITION_TYPE_ABSOLUTE,relative:o.POSITION_TYPE_RELATIVE},o.POSITION_TYPE_RELATIVE)),typeof r.top!="undefined"&&t.setPosition(o.EDGE_TOP,r.top),typeof r.bottom!="undefined"&&t.setPosition(o.EDGE_BOTTOM,r.bottom),typeof r.left!="undefined"&&t.setPosition(o.EDGE_LEFT,r.left),typeof r.right!="undefined"&&t.setPosition(o.EDGE_RIGHT,r.right),typeof r.height!="undefined"?t.setHeight(r.height):t.setHeightAuto(),typeof r.width!="undefined"?t.setWidth(r.width):t.setWidthAuto(),[r,ct(r)]}g();g();g();function rt({left:t,top:n,width:e,height:i},a,o){let r;if(o)r=a;else{let s=t+e/2,c=n+i/2;r=Q([1,0,0,1,s,c],Q(a,[1,0,0,1,-s,-c])),a.__parent&&(r=Q(a.__parent,r)),a.splice(0,6,...r)}return`matrix(${r.map(s=>s.toFixed(2)).join(",")})`}function gt({id:t,content:n,filter:e,left:i,top:a,width:o,height:r,isInheritingTransform:s,path:c,image:l,debug:b},p){let d="",f=1,y="";return p.transform&&(d=rt({left:i,top:a,width:o,height:r},p.transform,s)),p.opacity&&(f=+p.opacity),b&&(y=`<rect x="${i}" y="${a}" width="${o}" height="${c===null?.5:r}" fill="transparent" stroke="#575eff" stroke-width="1" ${d?`transform="${d}"`:""}></rect>`),l?`${e?`${e}<g filter="url(#satori_s-${t})">`:""}<image href="${l}" x="${i}" y="${a}" width="${o}" height="${r}" ${d?`transform="${d}"`:""} ${f!==1?`opacity="${f}"`:""}></image>${e?"</g>":""}${y}`:c===null?`${e?`${e}<g filter="url(#satori_s-${t})">`:""}<text x="${i}" y="${a}" width="${o}" height="${r}" fill="${p.color}" font-weight="${p.fontWeight}" font-style="${p.fontStyle}" font-size="${p.fontSize}" font-family="${p.fontFamily}" ${p.letterSpacing?`letter-spacing="${p.letterSpacing}"`:""} ${d?`transform="${d}"`:""} ${f!==1?`opacity="${f}"`:""}>${n}</text>${e?"</g>":""}${y}`:`${e?`${e}<g filter="url(#satori_s-${t})">`:""}<path fill="${p.color}" ${d?`transform="${d}"`:""} ${f!==1?`opacity="${f}"`:""} d="${c}"></path>${e?"</g>":""}${y}`}g();function J({id:t,width:n,height:e},i){if(!i.shadowColor||!i.shadowOffset||typeof i.shadowRadius=="undefined")return"";let a=i.shadowRadius*i.shadowRadius/4,o=Math.min(i.shadowOffset.width-a,0),r=Math.max(i.shadowOffset.width+a+n,n),s=Math.min(i.shadowOffset.height-a,0),c=Math.max(i.shadowOffset.height+a+e,e);return`<defs><filter id="satori_s-${t}" x="${o/n*100}%" y="${s/e*100}%" width="${(r-o)/n*100}%" height="${(c-s)/e*100}%"><feDropShadow dx="${i.shadowOffset.width}" dy="${i.shadowOffset.height}" stdDeviation="${i.shadowRadius/2}" flood-color="${i.shadowColor}" flood-opacity="1"/></filter></defs>`}function*pt(t,n){let e=B(),i="en",a=new Intl.Segmenter(i,{granularity:"word"}),o=new Intl.Segmenter(i,{granularity:"grapheme"}),{parentStyle:r,parent:s,font:c,id:l,isInheritingTransform:b,debug:p,embedFont:d,graphemeImages:f}=n;r.textTransform==="uppercase"?t=t.toLocaleUpperCase(i):r.textTransform==="lowercase"?t=t.toLocaleLowerCase(i):r.textTransform==="capitalize"&&(t=[...a.segment(t)].map(m=>[...o.segment(m.segment)].map((h,L)=>L===0?h.segment.toLocaleUpperCase(i):h.segment).join("")).join(""));let x=[...N(r.wordBreak,{normal:a,"break-all":o,"break-word":o,"keep-all":a},a).segment(t)].map(m=>m.segment),$=e.Node.create();$.setAlignItems(e.ALIGN_BASELINE),r.textAlign==="left"?$.setJustifyContent(e.JUSTIFY_FLEX_START):r.textAlign==="center"?$.setJustifyContent(e.JUSTIFY_CENTER):r.textAlign==="right"?$.setJustifyContent(e.JUSTIFY_FLEX_END):r.textAlign==="justify"&&$.setJustifyContent(e.JUSTIFY_SPACE_BETWEEN),s.insertChild($,s.getChildCount());let _=c.getFont(r),C=_.ascender/_.unitsPerEm*r.fontSize,R=-(_.descender/_.unitsPerEm)*r.fontSize,U=(C+R)*1.2,{textAlign:D}=r,w=[],O=[],T=[];$.setMeasureFunc((m,h,L,K)=>{let G=[],k="",P=0,H="",A=0,V=0,q=-1;w=[],O=[0];for(let Y=0;Y<x.length;Y++){let z=x[Y];if([" ",`
`," ","\u3000"].includes(z))k+=z,P=c.measure(_,k,r),T[Y]=null;else{let et=f&&f[z]?r.fontSize:c.measure(_,z,r);A||(k="",P=0);let Gt=P||",.!?:-@)>]}%#".indexOf(z[0])<0,$t=!A||!!P;Gt&&A+P+et>m?(w.push(A),G.push(H),H=z,A=et,O.push(1),q=-1):(H+=k+z,A+=P+et,$t&&O[O.length-1]++),k="",P=0,$t&&q++,V=Math.max(V,A),T[Y]={y:G.length*U,x:A-et,width:et,line:G.length,lineIndex:q}}}return A&&(G.push(H),w.push(A)),G.length>1&&(V=m),{width:V,height:G.length*U}});let[X,v]=yield,F="";r.position==="absolute"&&$.calculateLayout();let{left:M,top:I,width:W}=$.getComputedLayout(),tt=X+M,u=v+I;for(let m=0;m<x.length;m++){if(!T[m])continue;let h=x[m],L=null,K=null,G=T[m].y,k=T[m].x,P=T[m].width,H=U,A=W-w[T[m].line];if(D==="right"||D==="end")k+=A;else if(D==="center")k+=A/2;else if(D==="justify"){let q=T[m].line;if(q<w.length-1){let Y=O[q];k+=(Y>1?A/(Y-1):0)*T[m].lineIndex}}f&&f[h]?K=f[h]:d?L=c.getSVG(_,h,Rt(Z({},r),{left:tt+k,top:u+G,letterSpacing:r.letterSpacing})):G+=C;let V="";r.textShadowOffset&&(V=J({width:P,height:H,id:l},{shadowColor:r.textShadowColor,shadowOffset:r.textShadowOffset,shadowRadius:r.textShadowRadius})),F+=gt({content:h,filter:V,id:l,left:tt+k,top:u+G,width:P,height:H,isInheritingTransform:b,path:L,image:K,debug:p},r)}return F}g();g();g();var dt=dt||{};dt.parse=function(){var t={linearGradient:/^(\-(webkit|o|ms|moz)\-)?(linear\-gradient)/i,repeatingLinearGradient:/^(\-(webkit|o|ms|moz)\-)?(repeating\-linear\-gradient)/i,radialGradient:/^(\-(webkit|o|ms|moz)\-)?(radial\-gradient)/i,repeatingRadialGradient:/^(\-(webkit|o|ms|moz)\-)?(repeating\-radial\-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest\-side|closest\-corner|farthest\-side|farthest\-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))px/,percentageValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))\%/,emValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))em/,angleValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))deg/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^\#([0-9a-fA-F]+)/,literalColor:/^([a-zA-Z]+)/,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,number:/^(([0-9]*\.[0-9]+)|([0-9]+\.?))/},n="";function e(u){var m=new Error(n+": "+u);throw m.source=n,m}function i(){var u=a();return n.length>0&&e("Invalid input not EOF"),u}function a(){return R(o)}function o(){return r("linear-gradient",t.linearGradient,c)||r("repeating-linear-gradient",t.repeatingLinearGradient,c)||r("radial-gradient",t.radialGradient,p)||r("repeating-radial-gradient",t.repeatingRadialGradient,p)}function r(u,m,h){return s(m,function(L){var K=h();return K&&(W(t.comma)||e("Missing comma before color stops")),{type:u,orientation:K,colorStops:R(j)}})}function s(u,m){var h=W(u);if(h){W(t.startCall)||e("Missing (");var L=m(h);return W(t.endCall)||e("Missing )"),L}}function c(){return l()||b()}function l(){return I("directional",t.sideOrCorner,1)}function b(){return I("angular",t.angleValue,1)}function p(){var u,m=d(),h;return m&&(u=[],u.push(m),h=n,W(t.comma)&&(m=d(),m?u.push(m):n=h)),u}function d(){var u=f()||y();if(u)u.at=$();else{var m=x();if(m){u=m;var h=$();h&&(u.at=h)}else{var L=_();L&&(u={type:"default-radial",at:L})}}return u}function f(){var u=I("shape",/^(circle)/i,0);return u&&(u.style=M()||x()),u}function y(){var u=I("shape",/^(ellipse)/i,0);return u&&(u.style=v()||x()),u}function x(){return I("extent-keyword",t.extentKeywords,1)}function $(){if(I("position",/^at/,0)){var u=_();return u||e("Missing positioning value"),u}}function _(){var u=C();if(u.x||u.y)return{type:"position",value:u}}function C(){return{x:v(),y:v()}}function R(u){var m=u(),h=[];if(m)for(h.push(m);W(t.comma);)m=u(),m?h.push(m):e("One extra comma");return h}function j(){var u=U();return u||e("Expected color definition"),u.length=v(),u}function U(){return w()||T()||O()||D()}function D(){return I("literal",t.literalColor,0)}function w(){return I("hex",t.hexColor,1)}function O(){return s(t.rgbColor,function(){return{type:"rgb",value:R(X)}})}function T(){return s(t.rgbaColor,function(){return{type:"rgba",value:R(X)}})}function X(){return W(t.number)[1]}function v(){return I("%",t.percentageValue,1)||F()||M()}function F(){return I("position-keyword",t.positionKeywords,1)}function M(){return I("px",t.pixelValue,1)||I("em",t.emValue,1)}function I(u,m,h){var L=W(m);if(L)return{type:u,value:L[h]}}function W(u){var m,h;return h=/^[\n\r\t\s]+/.exec(n),h&&tt(h[0].length),m=u.exec(n),m&&tt(m[0].length),m}function tt(u){n=n.substr(u)}return function(u){return n=u.toString(),i()}}();var vt=dt;function ee(t){return t.type==="literal"?t.value:t.type==="hex"?`#${t.value}`:t.type==="rgb"?`rgb(${t.value.join(",")})`:t.type==="rgba"?`rgba(${t.value.join(",")})`:"transparent"}function ht({id:t,width:n},{image:e}){if(e.startsWith("linear-gradient(")){let i=vt.parse(e)[0],a,o,r,s;if(i.orientation.type==="directional")[a,o,r,s]={top:[0,1,0,0],bottom:[0,0,0,1],left:[1,0,0,0],right:[0,0,1,0]}[i.orientation.value];else if(i.orientation.type==="angular"){let f=+i.orientation.value/180*Math.PI-Math.PI/2,y=Math.cos(f),x=Math.sin(f);a=0,o=0,r=y,s=x,r<0&&(a-=r,r=0),s<0&&(o-=s,s=0)}let c=n,l=[];for(let f of i.colorStops){let y=ee(f);if(!l.length&&(l.push({offset:0,color:y}),typeof f.length=="undefined"||f.length.value==="0"))continue;let x=typeof f.length=="undefined"?void 0:f.length.type==="%"?f.length.value/100:f.length.value/c;l.push({offset:x,color:y})}l.length||l.push({offset:0,color:"transparent"});let b=l[l.length-1];b.offset!==1&&(typeof b.offset=="undefined"?b.offset=1:l.push({offset:1,color:b.color}));let p=0,d=1;for(let f=0;f<l.length;f++)if(typeof l[f].offset=="undefined"){for(d<f&&(d=f);typeof l[d].offset=="undefined";)d++;l[f].offset=(l[d].offset-l[p].offset)/(d-p)*(f-p)+l[p].offset}else p=f;return[`satori_bi${t}`,`<linearGradient id="satori_bi${t}" x1="${a}" y1="${o}" x2="${r}" y2="${s}">${l.map(f=>`<stop offset="${f.offset*100}%" stop-color="${f.color}"/>`).join("")}</linearGradient>`]}if(e.startsWith("url(")){let i=e.slice(4,-1);return[`satori_bi${t}`,`<pattern id="satori_bi${t}" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${i}" x="0" y="0" width="1" height="1"/></pattern>`]}}g();function ft(t,n,e){return e<t+n&&(e/2<t&&e/2<n?t=n=e/2:e/2<t?t=e-n:e/2<n&&(n=e-t)),[t,n]}function nt({left:t,top:n,width:e,height:i},a){let{borderTopLeftRadius:o,borderTopRightRadius:r,borderBottomLeftRadius:s,borderBottomRightRadius:c}=a;return o=Math.min(o||0,e,i),r=Math.min(r||0,e,i),s=Math.min(s||0,e,i),c=Math.min(c||0,e,i),!o&&!r&&!s&&!c?"":([o,r]=ft(o,r,e),[o,s]=ft(o,s,i),[r,c]=ft(r,c,i),[s,c]=ft(s,c,e),`M${t+o},${n} h${e-o-r} a${r},${r} 0 0 1 ${r},${r} v${i-r-c} a${c},${c} 0 0 1 ${-c},${c} h${c+s-e} a${s},${s} 0 0 1 ${-s},${-s} v${s+o-i} a${o},${o} 0 0 1 ${o},${-o}`)}function bt({id:t,left:n,top:e,width:i,height:a,isInheritingTransform:o,debug:r},s){if(s.display==="none")return"";let c="rect",l="transparent",b=0,p="",d="",f=[],y=1,x="";if(s.backgroundColor&&f.push(s.backgroundColor),s.borderWidth&&(b=s.borderWidth,l=s.borderColor),s.opacity&&(y=+s.opacity),s.transform&&(p=rt({left:n,top:e,width:i,height:a},s.transform,o)),s.backgroundImage){let C=s.backgroundImage.map((R,j)=>ht({id:t+"_"+j,width:i,height:a},R)).filter(Boolean);for(let R of C)d+=R[1],f.push(`url(#${R[0]})`)}let $=nt({left:n,top:e,width:i,height:a},s);$&&(c="path");let _=J({width:i,height:a,id:t},s);return f.length||f.push("transparent"),r&&(x=`<rect x="${n}" y="${e}" width="${i}" height="${a}" fill="transparent" stroke="#ff5757" stroke-width="1" ${p?`transform="${p}"`:""}></rect>`),`${d?`<defs>${d}</defs>`:""}${_?`${_}<g filter="url(#satori_s-${t})">`:""}${y!==1?`<g opacity="${y}">`:""}${f.map((C,R)=>C==="transparent"&&!(R===f.length-1&&b)?"":`<${c} x="${n}" y="${e}" width="${i}" height="${a}" fill="${C}" ${R===f.length-1&&b?`stroke="${l}" stroke-width="${b}"`:""} ${$?`d="${$}"`:""} ${p?`transform="${p}"`:""}></${c}>`).join("")}${y!==1?"</g>":""}${_?"</g>":""}${x}`}g();function yt({id:t,left:n,top:e,width:i,height:a,src:o,debug:r},s){if(s.display==="none")return"";let c="",l=1,b=s.objectFit==="contain"?"xMidYMid":s.objectFit==="cover"?"xMidYMid slice":"none",p=nt({left:n,top:e,width:i,height:a},s);p&&(c=`<clipPath id="satori_c-${t}"><path x="${n}" y="${e}" width="${i}" height="${a}" d="${p}"></path></clipPath>`),s.opacity&&(l=+s.opacity);let d=J({width:i,height:a,id:t},s);return`${d}${d?`<g filter="url(#satori_s-${t})">`:""}${c}<image href="${o}" x="${n}" y="${e}" width="${i}" height="${a}" preserveAspectRatio="${b}" ${c?`clip-path="url(#satori_c-${t})"`:""} ${l!==1?`opacity="${l}"`:""}></image>${d?"</g>":""}`}function*ot(t,n){let e=B(),{id:i,inheritedStyle:a,parent:o,font:r,debug:s,embedFont:c=!0,graphemeImages:l}=n;if(t===null||typeof t=="undefined")return yield,"";if(!ut(t)||typeof t.type=="function"){let F;if(!ut(t))F=pt(String(t),n);else{if(At(t.type))throw new Error("Class component is not supported.");F=ot(t.type(t.props),n)}F.next();let M=yield;return F.next(M).value}let{type:b,props:p}=t,{style:d,children:f}=p,y=e.Node.create();o.insertChild(y,o.getChildCount());let[x,$]=mt(y,b,a,d,p),_=x.transform===a.transform;_||(x.transform.__parent=a.transform);let C=typeof f=="undefined"?[]:[].concat(f),R=[],j=0;for(let F of C){let M=ot(F,{id:i*C.length+ ++j,parentStyle:x,inheritedStyle:$,isInheritingTransform:!0,parent:y,font:r,embedFont:c,debug:s,graphemeImages:l});M.next(),R.push(M)}let[U,D]=yield;x.position==="absolute"&&y.calculateLayout();let{left:w,top:O,width:T,height:X}=y.getComputedLayout();w+=U,O+=D;let v="";b==="img"?v=yt({id:i,left:w,top:O,width:T,height:X,src:p.src,isInheritingTransform:_,debug:s},x):v=bt({id:i,left:w,top:O,width:T,height:X,isInheritingTransform:_,debug:s},x);for(let F of R)v+=F.next([w,O]).value;return v}g();import kt from"opentype.js";var lt=class{constructor(n){this.fonts=new Map;for(let e of n){let i=e.data,a="buffer"in i?kt.parse(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):kt.parse(i);this.defaultFont||(this.defaultFont=a),this.fonts.has(e.name)||this.fonts.set(e.name,[]),this.fonts.get(e.name).push([a,e.weight,e.style])}}get({name:n,weight:e,style:i}){if(!this.fonts.has(n))return this.defaultFont;e==="normal"&&(e=400),e==="bold"&&(e=700);let a=[...this.fonts.get(n)];return a.sort(([o,r,s],[c,l,b])=>{if(r!==l)return r?!l||r===e?-1:l===e?1:e===400&&r===500||e===500&&r===400?-1:e===400&&l===500||e===500&&l===400?1:e<400?r<e&&l<e?l-r:r<e?-1:l<e?1:r-l:e<r&&e<l?r-l:e<r?-1:e<l?1:l-r:1;if(s!==b){if(s===i)return-1;if(b===i)return 1}return-1}),a[0][0]}getFont({fontFamily:n,fontWeight:e=400,fontStyle:i="normal"}){return this.get({name:n,weight:e,style:i})}measure(n,e,{fontSize:i,letterSpacing:a=0}){return n.getAdvanceWidth(e,i,{letterSpacing:a/i})}getSVG(n,e,{fontSize:i,top:a,left:o,letterSpacing:r=0}){return a+=n.ascender/n.unitsPerEm*i,n.getPath(e,o,a,i,{letterSpacing:r/i}).toPathData(2)}};g();function xt({width:t,height:n,content:e},i){return`<svg width="${t}" height="${n}" viewBox="0 0 ${t} ${n}" xmlns="http://www.w3.org/2000/svg">${e}</svg>`}function Wt(t,n){let e=B();if(!e)throw new Error("Satori is not initialized.");let i=new lt(n.fonts),a=e.Node.create();a.setWidth(n.width),a.setHeight(n.height),a.setFlexDirection(e.FLEX_DIRECTION_ROW),a.setFlexWrap(e.WRAP_WRAP),a.setAlignContent(e.ALIGN_AUTO),a.setAlignItems(e.ALIGN_FLEX_START),a.setJustifyContent(e.JUSTIFY_FLEX_START);let o=ot(t,{id:1,parentStyle:{},inheritedStyle:{fontSize:16,fontWeight:"normal",fontFamily:"serif",fontStyle:"normal",lineHeight:1.2,color:"black",opacity:1},parent:a,font:i,embedFont:n.embedFont,debug:n.debug,graphemeImages:n.graphemeImages});o.next(),a.calculateLayout(n.width,n.height,e.DIRECTION_LTR);let r=o.next([0,0]).value;return xt({width:n.width,height:n.height,content:r})}export{Wt as default,jt as init};
var nt=Object.defineProperty,Pt=Object.defineProperties,Bt=Object.getOwnPropertyDescriptor,Mt=Object.getOwnPropertyDescriptors,Dt=Object.getOwnPropertyNames,Et=Object.getOwnPropertySymbols;var _t=Object.prototype.hasOwnProperty,Yt=Object.prototype.propertyIsEnumerable;var St=(t,r,e)=>r in t?nt(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,K=(t,r)=>{for(var e in r||(r={}))_t.call(r,e)&&St(t,e,r[e]);if(Et)for(var e of Et(r))Yt.call(r,e)&&St(t,e,r[e]);return t},Tt=(t,r)=>Pt(t,Mt(r)),zt=t=>nt(t,"__esModule",{value:!0});var Rt=(t,r)=>()=>(t&&(r=t(t=0)),r);var Ut=(t,r)=>{for(var e in r)nt(t,e,{get:r[e],enumerable:!0})},Xt=(t,r,e,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of Dt(r))!_t.call(t,a)&&(e||a!=="default")&&nt(t,a,{get:()=>r[a],enumerable:!(i=Bt(r,a))||i.enumerable});return t};var Ht=(t=>(r,e)=>t&&t.get(r)||(e=Xt(zt({}),r,1),t&&t.set(r,e),e))(typeof WeakMap!="undefined"?new WeakMap:0);var m=Rt(()=>{});var It={};Ut(It,{default:()=>Jt});import*as Vt from"yoga-layout-prebuilt";var Jt,Lt=Rt(()=>{m();Jt=Vt});m();m();m();var ot;{let t=(Lt(),Ht(It));t.default?ot=t.default:ot=t}function jt(t){ot=t}function B(){return ot}m();m();function ft(t){let r=typeof t;return!(r==="number"||r==="bigint"||r==="string"||r==="boolean")}function wt(t){return/^class\s/.test(Function.prototype.toString.call(t))}function q(t,r){return[t[0]*r[0]+t[2]*r[1],t[1]*r[0]+t[3]*r[1],t[0]*r[2]+t[2]*r[3],t[1]*r[2]+t[3]*r[3],t[0]*r[4]+t[2]*r[5]+t[4],t[1]*r[4]+t[3]*r[5]+t[5]]}function O(t,r,e){let i=r[t];return typeof i=="undefined"?e:i}m();m();var At={p:{display:"block",marginTop:"1em",marginBottom:"1em"},div:{display:"block"},blockquote:{display:"block",marginTop:"1em",marginBottom:"1em",marginLeft:40,marginRight:40},center:{display:"block",textAlign:"center"},hr:{display:"block",marginTop:"0.5em",marginBottom:"0.5em",marginLeft:"auto",marginRight:"auto",borderWidth:1,borderStyle:"inset"},h1:{display:"block",fontSize:"2em",marginTop:"0.67em",marginBottom:"0.67em",marginLeft:0,marginRight:0,fontWeight:"bold"},h2:{display:"block",fontSize:"1.5em",marginTop:"0.83em",marginBottom:"0.83em",marginLeft:0,marginRight:0,fontWeight:"bold"},h3:{display:"block",fontSize:"1.17em",marginTop:"1em",marginBottom:"1em",marginLeft:0,marginRight:0,fontWeight:"bold"},h4:{display:"block",marginTop:"1.33em",marginBottom:"1.33em",marginLeft:0,marginRight:0,fontWeight:"bold"},h5:{display:"block",fontSize:"0.83em",marginTop:"1.67em",marginBottom:"1.67em",marginLeft:0,marginRight:0,fontWeight:"bold"},h6:{display:"block",fontSize:"0.67em",marginTop:"2.33em",marginBottom:"2.33em",marginLeft:0,marginRight:0,fontWeight:"bold"},u:{textDecoration:"underline"},strong:{fontWeight:"bold"},b:{fontWeight:"bold"},i:{fontStyle:"italic"},em:{fontStyle:"italic"},code:{fontFamily:"monospace"},kbd:{fontFamily:"monospace"},pre:{display:"block",fontFamily:"monospace",whiteSpace:"pre",marginTop:"1em",marginBottom:"1em"},mark:{backgroundColor:"yellow",color:"black"},big:{fontSize:"larger"},small:{fontSize:"smaller"},s:{textDecoration:"line-through"}};m();var Kt=new Set(["color","font","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textTransform","whiteSpace","letterSpacing","transform","wordBreak","textShadowOffset","textShadowColor","textShadowRadius","opacity"]);function lt(t){let r={};for(let e in t)Kt.has(e)&&(r[e]=t[e]);return r}m();import{getPropertyName as Ct,getStylesForProperty as qt}from"css-to-react-native";import Nt from"parse-css-dimension";import{parseElementStyle as Zt}from"css-background-parser";var Qt=new Set(["flex","flexGrow","flexShrink","flexBasis","fontWeight","lineHeight","opacity","scale","scaleX","scaleY"]),Ft=[1,0,0,1,0,0];function te(t,r){return typeof r=="number"?Qt.has(t)?String(r):r+"px":r}function Ot(t,r){if(typeof t=="number")return t;try{let e=new Nt(t);if(e.type==="length")switch(e.unit){case"em":return e.value*r;case"rem":return e.value*16;default:return e.value}else if(e.type==="angle")switch(e.unit){case"deg":return e.value;case"rad":return e.value*180/Math.PI;default:return e.value}}catch{}}function it(t,r){let e=[];for(let o in t){let n=Ct(o);e.push([n,te(n,t[o])])}let i=e.reduce((o,n)=>{let s=Ct(n[0]),c=n[1];return Object.assign(o,qt(s,c,!0))},{});if(i.backgroundImage){let{backgrounds:o}=Zt(i);i.backgroundImage=o}let a=i.fontSize||r.fontSize;if(typeof a=="string")try{let o=new Nt(a);switch(o.unit){case"em":a=o.value*r.fontSize;break;case"rem":a=o.value*16;break}}catch{a=16}typeof i.fontSize!="undefined"&&(i.fontSize=a);for(let o in i){let n=i[o];if(typeof n=="string"){let s=Ot(n,a);typeof s!="undefined"&&(i[o]=s),n=i[o]}if(o==="opacity"&&(n=i[o]=n*r.opacity),o==="transform"){let s=[...Ft],c=n;for(let u of c){let y=Object.keys(u)[0],d=u[y],p=typeof d=="string"?Ot(d,a):d,f=[...Ft];switch(y){case"translateX":f[4]=p;break;case"translateY":f[5]=p;break;case"scaleX":f[0]=p;break;case"scaleY":f[3]=p;break;case"rotate":let g=p*Math.PI/180,$=Math.cos(g),L=Math.sin(g);f[0]=$,f[1]=L,f[2]=-L,f[3]=$;break;case"skewX":f[2]=Math.tan(p*Math.PI/180);break;case"skewY":f[1]=Math.tan(p*Math.PI/180);break}s=q(f,s)}i.transform=s}}return i}function ut(t,r,e,i,a){let o=B(),n=K(K(K({},e),it(At[r],e)),it(i,e));if(r==="img"){let s=parseInt(a.width),u=parseInt(a.height)/s;n.width||(n.width=s),n.height||(n.height=u*n.width)}return t.setDisplay(O(n.display,{flex:o.DISPLAY_FLEX,none:o.DISPLAY_NONE},o.DISPLAY_FLEX)),t.setAlignContent(O(n.alignContent,{stretch:o.ALIGN_STRETCH,center:o.ALIGN_CENTER,"flex-start":o.ALIGN_FLEX_START,"flex-end":o.ALIGN_FLEX_END,"space-between":o.ALIGN_SPACE_BETWEEN,"space-around":o.ALIGN_SPACE_AROUND,baseline:o.ALIGN_BASELINE,normal:o.ALIGN_AUTO},o.ALIGN_AUTO)),t.setAlignItems(O(n.alignItems,{stretch:o.ALIGN_STRETCH,center:o.ALIGN_CENTER,"flex-start":o.ALIGN_FLEX_START,"flex-end":o.ALIGN_FLEX_END,baseline:o.ALIGN_BASELINE,normal:o.ALIGN_AUTO},o.ALIGN_FLEX_START)),t.setAlignSelf(O(n.alignSelf,{stretch:o.ALIGN_STRETCH,center:o.ALIGN_CENTER,"flex-start":o.ALIGN_FLEX_START,"flex-end":o.ALIGN_FLEX_END,baseline:o.ALIGN_BASELINE,normal:o.ALIGN_AUTO},o.ALIGN_AUTO)),t.setJustifyContent(O(n.justifyContent,{center:o.JUSTIFY_CENTER,"flex-start":o.JUSTIFY_FLEX_START,"flex-end":o.JUSTIFY_FLEX_END,"space-between":o.JUSTIFY_SPACE_BETWEEN,"space-around":o.JUSTIFY_SPACE_AROUND},o.JUSTIFY_FLEX_START)),t.setFlexDirection(O(n.flexDirection,{row:o.FLEX_DIRECTION_ROW,column:o.FLEX_DIRECTION_COLUMN,"row-reverse":o.FLEX_DIRECTION_ROW_REVERSE,"column-reverse":o.FLEX_DIRECTION_COLUMN_REVERSE},o.FLEX_DIRECTION_ROW)),t.setFlexWrap(O(n.flexWrap,{wrap:o.WRAP_WRAP,nowrap:o.WRAP_NO_WRAP,"wrap-reverse":o.WRAP_WRAP_REVERSE},o.WRAP_WRAP)),typeof n.flexBasis!="undefined"&&t.setFlexBasis(n.flexBasis),t.setFlexGrow(typeof n.flexGrow=="undefined"?0:n.flexGrow),t.setFlexShrink(typeof n.flexShrink=="undefined"?1:n.flexShrink),typeof n.maxHeight!="undefined"&&t.setMaxHeight(n.maxHeight),typeof n.maxWidth!="undefined"&&t.setMaxWidth(n.maxWidth),typeof n.minHeight!="undefined"&&t.setMinHeight(n.minHeight),typeof n.minWidth!="undefined"&&t.setMinWidth(n.minWidth),t.setOverflow(O(n.overflow,{visible:o.OVERFLOW_VISIBLE,hidden:o.OVERFLOW_HIDDEN},o.OVERFLOW_VISIBLE)),t.setMargin(o.EDGE_TOP,n.marginTop||0),t.setMargin(o.EDGE_BOTTOM,n.marginBottom||0),t.setMargin(o.EDGE_LEFT,n.marginLeft||0),t.setMargin(o.EDGE_RIGHT,n.marginRight||0),t.setBorder(o.EDGE_TOP,n.borderWidth||0),t.setBorder(o.EDGE_BOTTOM,n.borderWidth||0),t.setBorder(o.EDGE_LEFT,n.borderWidth||0),t.setBorder(o.EDGE_RIGHT,n.borderWidth||0),t.setPadding(o.EDGE_TOP,n.paddingTop||0),t.setPadding(o.EDGE_BOTTOM,n.paddingBottom||0),t.setPadding(o.EDGE_LEFT,n.paddingLeft||0),t.setPadding(o.EDGE_RIGHT,n.paddingRight||0),t.setPositionType(O(n.position,{absolute:o.POSITION_TYPE_ABSOLUTE,relative:o.POSITION_TYPE_RELATIVE},o.POSITION_TYPE_RELATIVE)),typeof n.top!="undefined"&&t.setPosition(o.EDGE_TOP,n.top),typeof n.bottom!="undefined"&&t.setPosition(o.EDGE_BOTTOM,n.bottom),typeof n.left!="undefined"&&t.setPosition(o.EDGE_LEFT,n.left),typeof n.right!="undefined"&&t.setPosition(o.EDGE_RIGHT,n.right),typeof n.height!="undefined"?t.setHeight(n.height):t.setHeightAuto(),typeof n.width!="undefined"?t.setWidth(n.width):t.setWidthAuto(),[n,lt(n)]}m();import{LineBreaker as ee}from"css-line-break";import{splitGraphemes as re}from"text-segmentation";m();m();function Q({left:t,top:r,width:e,height:i},a,o){let n;if(o)n=a;else{let s=t+e/2,c=r+i/2;n=q([1,0,0,1,s,c],q(a,[1,0,0,1,-s,-c])),a.__parent&&(n=q(a.__parent,n)),a.splice(0,6,...n)}return`matrix(${n.map(s=>s.toFixed(2)).join(",")})`}function ct({id:t,content:r,filter:e,left:i,top:a,width:o,height:n,isInheritingTransform:s,path:c,image:u,debug:y},d){let p="",f=1,g="";return d.transform&&(p=Q({left:i,top:a,width:o,height:n},d.transform,s)),d.opacity&&(f=+d.opacity),y&&(g=`<rect x="${i}" y="${a}" width="${o}" height="${c===null?.5:n}" fill="transparent" stroke="#575eff" stroke-width="1" ${p?`transform="${p}"`:""}></rect>`),u?`${e?`${e}<g filter="url(#satori_s-${t})">`:""}<image href="${u}" x="${i}" y="${a}" width="${o}" height="${n}" ${p?`transform="${p}"`:""} ${f!==1?`opacity="${f}"`:""}></image>${e?"</g>":""}${g}`:c===null?`${e?`${e}<g filter="url(#satori_s-${t})">`:""}<text x="${i}" y="${a}" width="${o}" height="${n}" fill="${d.color}" font-weight="${d.fontWeight}" font-style="${d.fontStyle}" font-size="${d.fontSize}" font-family="${d.fontFamily}" ${d.letterSpacing?`letter-spacing="${d.letterSpacing}"`:""} ${p?`transform="${p}"`:""} ${f!==1?`opacity="${f}"`:""}>${r}</text>${e?"</g>":""}${g}`:`${e?`${e}<g filter="url(#satori_s-${t})">`:""}<path fill="${d.color}" ${p?`transform="${p}"`:""} ${f!==1?`opacity="${f}"`:""} d="${c}"></path>${e?"</g>":""}${g}`}m();function J({id:t,width:r,height:e},i){if(!i.shadowColor||!i.shadowOffset||typeof i.shadowRadius=="undefined")return"";let a=i.shadowRadius*i.shadowRadius/4,o=Math.min(i.shadowOffset.width-a,0),n=Math.max(i.shadowOffset.width+a+r,r),s=Math.min(i.shadowOffset.height-a,0),c=Math.max(i.shadowOffset.height+a+e,e);return`<defs><filter id="satori_s-${t}" x="${o/r*100}%" y="${s/e*100}%" width="${(n-o)/r*100}%" height="${(c-s)/e*100}%"><feDropShadow dx="${i.shadowOffset.width}" dy="${i.shadowOffset.height}" stdDeviation="${i.shadowRadius/2}" flood-color="${i.shadowColor}" flood-opacity="1"/></filter></defs>`}var tt="en",pt=typeof Intl!="undefined"&&"Segmenter"in Intl,ne=pt?new Intl.Segmenter(tt,{granularity:"word"}):null,oe=pt?new Intl.Segmenter(tt,{granularity:"grapheme"}):null,ie=[32,160,4961,65792,65793,4153,4241],ae=t=>{let r=ee(t,{lineBreak:"strict",wordBreak:"normal"}),e=[],i;for(;!(i=r.next()).done;)if(i.value){let a=i.value.slice(),o=[].map.call(a,s=>s.codePointAt(0)),n="";o.forEach(s=>{ie.includes(s)?(n.length&&e.push(n),e.push(String.fromCodePoint(s)),n=""):n+=String.fromCodePoint(s)}),n.length&&e.push(n)}return e};function mt(t,r){return pt?r==="word"?[...ne.segment(t)].map(e=>e.segment):[...oe.segment(t)].map(e=>e.segment):r==="word"?ae(t):re(t)}function*dt(t,r){let e=B(),{parentStyle:i,parent:a,font:o,id:n,isInheritingTransform:s,debug:c,embedFont:u,graphemeImages:y}=r;i.textTransform==="uppercase"?t=t.toLocaleUpperCase(tt):i.textTransform==="lowercase"?t=t.toLocaleLowerCase(tt):i.textTransform==="capitalize"&&(t=mt(t,"word").map(x=>mt(x,"grapheme").map((W,l)=>l===0?W.toLocaleUpperCase(tt):W).join("")).join(""));let d=O(i.wordBreak,{normal:"word","break-all":"grapheme","break-word":"grapheme","keep-all":"word"},"word"),p=mt(t,d),f=e.Node.create();f.setAlignItems(e.ALIGN_BASELINE),i.textAlign==="left"?f.setJustifyContent(e.JUSTIFY_FLEX_START):i.textAlign==="center"?f.setJustifyContent(e.JUSTIFY_CENTER):i.textAlign==="right"?f.setJustifyContent(e.JUSTIFY_FLEX_END):i.textAlign==="justify"&&f.setJustifyContent(e.JUSTIFY_SPACE_BETWEEN),a.insertChild(f,a.getChildCount());let g=o.getFont(i),$=g.ascender/g.unitsPerEm*i.fontSize,L=-(g.descender/g.unitsPerEm)*i.fontSize,w=($+L)*1.2,{textAlign:E}=i,v=[],P=[],A=[];f.setMeasureFunc((x,W,l,h)=>{let b=[],S="",C=0,H="",I=0,V=0,j=-1;v=[],P=[0];for(let Y=0;Y<p.length;Y++){let z=p[Y];if([" ",`
`," ","\u3000"].includes(z))S+=z,C=o.measure(g,S,i),A[Y]=null;else{let Z=y&&y[z]?i.fontSize:o.measure(g,z,i);I||(S="",C=0);let Gt=C||",.!?:-@)>]}%#".indexOf(z[0])<0,$t=!I||!!C;Gt&&I+C+Z>x?(v.push(I),b.push(H),H=z,I=Z,P.push(1),j=-1):(H+=S+z,I+=C+Z,$t&&P[P.length-1]++),S="",C=0,$t&&j++,V=Math.max(V,I),A[Y]={y:b.length*w,x:I-Z,width:Z,line:b.length,lineIndex:j}}}return I&&(b.push(H),v.push(I)),b.length>1&&(V=x),{width:V,height:b.length*w}});let[M,D]=yield,U="";i.position==="absolute"&&f.calculateLayout();let{left:X,top:k,width:F}=f.getComputedLayout(),G=M+X,R=D+k;for(let x=0;x<p.length;x++){if(!A[x])continue;let W=p[x],l=null,h=null,b=A[x].y,S=A[x].x,C=A[x].width,H=w,I=F-v[A[x].line];if(E==="right"||E==="end")S+=I;else if(E==="center")S+=I/2;else if(E==="justify"){let j=A[x].line;if(j<v.length-1){let Y=P[j];S+=(Y>1?I/(Y-1):0)*A[x].lineIndex}}y&&y[W]?h=y[W]:u?l=o.getSVG(g,W,Tt(K({},i),{left:G+S,top:R+b,letterSpacing:i.letterSpacing})):b+=$;let V="";i.textShadowOffset&&(V=J({width:C,height:H,id:n},{shadowColor:i.textShadowColor,shadowOffset:i.textShadowOffset,shadowRadius:i.textShadowRadius})),U+=ct({content:W,filter:V,id:n,left:G+S,top:R+b,width:C,height:H,isInheritingTransform:s,path:l,image:h,debug:c},i)}return U}m();m();m();var gt=gt||{};gt.parse=function(){var t={linearGradient:/^(\-(webkit|o|ms|moz)\-)?(linear\-gradient)/i,repeatingLinearGradient:/^(\-(webkit|o|ms|moz)\-)?(repeating\-linear\-gradient)/i,radialGradient:/^(\-(webkit|o|ms|moz)\-)?(radial\-gradient)/i,repeatingRadialGradient:/^(\-(webkit|o|ms|moz)\-)?(repeating\-radial\-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest\-side|closest\-corner|farthest\-side|farthest\-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))px/,percentageValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))\%/,emValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))em/,angleValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))deg/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^\#([0-9a-fA-F]+)/,literalColor:/^([a-zA-Z]+)/,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,number:/^(([0-9]*\.[0-9]+)|([0-9]+\.?))/},r="";function e(l){var h=new Error(r+": "+l);throw h.source=r,h}function i(){var l=a();return r.length>0&&e("Invalid input not EOF"),l}function a(){return E(o)}function o(){return n("linear-gradient",t.linearGradient,c)||n("repeating-linear-gradient",t.repeatingLinearGradient,c)||n("radial-gradient",t.radialGradient,d)||n("repeating-radial-gradient",t.repeatingRadialGradient,d)}function n(l,h,b){return s(h,function(S){var C=b();return C&&(x(t.comma)||e("Missing comma before color stops")),{type:l,orientation:C,colorStops:E(v)}})}function s(l,h){var b=x(l);if(b){x(t.startCall)||e("Missing (");var S=h(b);return x(t.endCall)||e("Missing )"),S}}function c(){return u()||y()}function u(){return R("directional",t.sideOrCorner,1)}function y(){return R("angular",t.angleValue,1)}function d(){var l,h=p(),b;return h&&(l=[],l.push(h),b=r,x(t.comma)&&(h=p(),h?l.push(h):r=b)),l}function p(){var l=f()||g();if(l)l.at=L();else{var h=$();if(h){l=h;var b=L();b&&(l.at=b)}else{var S=N();S&&(l={type:"default-radial",at:S})}}return l}function f(){var l=R("shape",/^(circle)/i,0);return l&&(l.style=G()||$()),l}function g(){var l=R("shape",/^(ellipse)/i,0);return l&&(l.style=k()||$()),l}function $(){return R("extent-keyword",t.extentKeywords,1)}function L(){if(R("position",/^at/,0)){var l=N();return l||e("Missing positioning value"),l}}function N(){var l=w();if(l.x||l.y)return{type:"position",value:l}}function w(){return{x:k(),y:k()}}function E(l){var h=l(),b=[];if(h)for(b.push(h);x(t.comma);)h=l(),h?b.push(h):e("One extra comma");return b}function v(){var l=P();return l||e("Expected color definition"),l.length=k(),l}function P(){return M()||U()||D()||A()}function A(){return R("literal",t.literalColor,0)}function M(){return R("hex",t.hexColor,1)}function D(){return s(t.rgbColor,function(){return{type:"rgb",value:E(X)}})}function U(){return s(t.rgbaColor,function(){return{type:"rgba",value:E(X)}})}function X(){return x(t.number)[1]}function k(){return R("%",t.percentageValue,1)||F()||G()}function F(){return R("position-keyword",t.positionKeywords,1)}function G(){return R("px",t.pixelValue,1)||R("em",t.emValue,1)}function R(l,h,b){var S=x(h);if(S)return{type:l,value:S[b]}}function x(l){var h,b;return b=/^[\n\r\t\s]+/.exec(r),b&&W(b[0].length),h=l.exec(r),h&&W(h[0].length),h}function W(l){r=r.substr(l)}return function(l){return r=l.toString(),i()}}();var vt=gt;function se(t){return t.type==="literal"?t.value:t.type==="hex"?`#${t.value}`:t.type==="rgb"?`rgb(${t.value.join(",")})`:t.type==="rgba"?`rgba(${t.value.join(",")})`:"transparent"}function ht({id:t,width:r},{image:e}){if(e.startsWith("linear-gradient(")){let i=vt.parse(e)[0],a,o,n,s;if(i.orientation.type==="directional")[a,o,n,s]={top:[0,1,0,0],bottom:[0,0,0,1],left:[1,0,0,0],right:[0,0,1,0]}[i.orientation.value];else if(i.orientation.type==="angular"){let f=+i.orientation.value/180*Math.PI-Math.PI/2,g=Math.cos(f),$=Math.sin(f);a=0,o=0,n=g,s=$,n<0&&(a-=n,n=0),s<0&&(o-=s,s=0)}let c=r,u=[];for(let f of i.colorStops){let g=se(f);if(!u.length&&(u.push({offset:0,color:g}),typeof f.length=="undefined"||f.length.value==="0"))continue;let $=typeof f.length=="undefined"?void 0:f.length.type==="%"?f.length.value/100:f.length.value/c;u.push({offset:$,color:g})}u.length||u.push({offset:0,color:"transparent"});let y=u[u.length-1];y.offset!==1&&(typeof y.offset=="undefined"?y.offset=1:u.push({offset:1,color:y.color}));let d=0,p=1;for(let f=0;f<u.length;f++)if(typeof u[f].offset=="undefined"){for(p<f&&(p=f);typeof u[p].offset=="undefined";)p++;u[f].offset=(u[p].offset-u[d].offset)/(p-d)*(f-d)+u[d].offset}else d=f;return[`satori_bi${t}`,`<linearGradient id="satori_bi${t}" x1="${a}" y1="${o}" x2="${n}" y2="${s}">${u.map(f=>`<stop offset="${f.offset*100}%" stop-color="${f.color}"/>`).join("")}</linearGradient>`]}if(e.startsWith("url(")){let i=e.slice(4,-1);return[`satori_bi${t}`,`<pattern id="satori_bi${t}" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${i}" x="0" y="0" width="1" height="1"/></pattern>`]}}m();function at(t,r,e){return e<t+r&&(e/2<t&&e/2<r?t=r=e/2:e/2<t?t=e-r:e/2<r&&(r=e-t)),[t,r]}function et({left:t,top:r,width:e,height:i},a){let{borderTopLeftRadius:o,borderTopRightRadius:n,borderBottomLeftRadius:s,borderBottomRightRadius:c}=a;return o=Math.min(o||0,e,i),n=Math.min(n||0,e,i),s=Math.min(s||0,e,i),c=Math.min(c||0,e,i),!o&&!n&&!s&&!c?"":([o,n]=at(o,n,e),[o,s]=at(o,s,i),[n,c]=at(n,c,i),[s,c]=at(s,c,e),`M${t+o},${r} h${e-o-n} a${n},${n} 0 0 1 ${n},${n} v${i-n-c} a${c},${c} 0 0 1 ${-c},${c} h${c+s-e} a${s},${s} 0 0 1 ${-s},${-s} v${s+o-i} a${o},${o} 0 0 1 ${o},${-o}`)}function bt({id:t,left:r,top:e,width:i,height:a,isInheritingTransform:o,debug:n},s){if(s.display==="none")return"";let c="rect",u="transparent",y=0,d="",p="",f=[],g=1,$="";if(s.backgroundColor&&f.push(s.backgroundColor),s.borderWidth&&(y=s.borderWidth,u=s.borderColor),s.opacity&&(g=+s.opacity),s.transform&&(d=Q({left:r,top:e,width:i,height:a},s.transform,o)),s.backgroundImage){let w=s.backgroundImage.map((E,v)=>ht({id:t+"_"+v,width:i,height:a},E)).filter(Boolean);for(let E of w)p+=E[1],f.push(`url(#${E[0]})`)}let L=et({left:r,top:e,width:i,height:a},s);L&&(c="path");let N=J({width:i,height:a,id:t},s);return f.length||f.push("transparent"),n&&($=`<rect x="${r}" y="${e}" width="${i}" height="${a}" fill="transparent" stroke="#ff5757" stroke-width="1" ${d?`transform="${d}"`:""}></rect>`),`${p?`<defs>${p}</defs>`:""}${N?`${N}<g filter="url(#satori_s-${t})">`:""}${g!==1?`<g opacity="${g}">`:""}${f.map((w,E)=>w==="transparent"&&!(E===f.length-1&&y)?"":`<${c} x="${r}" y="${e}" width="${i}" height="${a}" fill="${w}" ${E===f.length-1&&y?`stroke="${u}" stroke-width="${y}"`:""} ${L?`d="${L}"`:""} ${d?`transform="${d}"`:""}></${c}>`).join("")}${g!==1?"</g>":""}${N?"</g>":""}${$}`}m();function yt({id:t,left:r,top:e,width:i,height:a,src:o,debug:n},s){if(s.display==="none")return"";let c="",u=1,y=s.objectFit==="contain"?"xMidYMid":s.objectFit==="cover"?"xMidYMid slice":"none",d=et({left:r,top:e,width:i,height:a},s);d&&(c=`<clipPath id="satori_c-${t}"><path x="${r}" y="${e}" width="${i}" height="${a}" d="${d}"></path></clipPath>`),s.opacity&&(u=+s.opacity);let p=J({width:i,height:a,id:t},s);return`${p}${p?`<g filter="url(#satori_s-${t})">`:""}${c}<image href="${o}" x="${r}" y="${e}" width="${i}" height="${a}" preserveAspectRatio="${y}" ${c?`clip-path="url(#satori_c-${t})"`:""} ${u!==1?`opacity="${u}"`:""}></image>${p?"</g>":""}`}function*rt(t,r){let e=B(),{id:i,inheritedStyle:a,parent:o,font:n,debug:s,embedFont:c=!0,graphemeImages:u}=r;if(t===null||typeof t=="undefined")return yield,"";if(!ft(t)||typeof t.type=="function"){let F;if(!ft(t))F=dt(String(t),r);else{if(wt(t.type))throw new Error("Class component is not supported.");F=rt(t.type(t.props),r)}F.next();let G=yield;return F.next(G).value}let{type:y,props:d}=t,{style:p,children:f}=d,g=e.Node.create();o.insertChild(g,o.getChildCount());let[$,L]=ut(g,y,a,p,d),N=$.transform===a.transform;N||($.transform.__parent=a.transform);let w=typeof f=="undefined"?[]:[].concat(f),E=[],v=0;for(let F of w){let G=rt(F,{id:i*w.length+ ++v,parentStyle:$,inheritedStyle:L,isInheritingTransform:!0,parent:g,font:n,embedFont:c,debug:s,graphemeImages:u});G.next(),E.push(G)}let[P,A]=yield;$.position==="absolute"&&g.calculateLayout();let{left:M,top:D,width:U,height:X}=g.getComputedLayout();M+=P,D+=A;let k="";y==="img"?k=yt({id:i,left:M,top:D,width:U,height:X,src:d.src,isInheritingTransform:N,debug:s},$):k=bt({id:i,left:M,top:D,width:U,height:X,isInheritingTransform:N,debug:s},$);for(let F of E)k+=F.next([M,D]).value;return k}m();import kt from"opentype.js";var st=class{constructor(r){this.fonts=new Map;for(let e of r){let i=e.data,a="buffer"in i?kt.parse(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):kt.parse(i);this.defaultFont||(this.defaultFont=a),this.fonts.has(e.name)||this.fonts.set(e.name,[]),this.fonts.get(e.name).push([a,e.weight,e.style])}}get({name:r,weight:e,style:i}){if(!this.fonts.has(r))return this.defaultFont;e==="normal"&&(e=400),e==="bold"&&(e=700);let a=[...this.fonts.get(r)];return a.sort(([o,n,s],[c,u,y])=>{if(n!==u)return n?!u||n===e?-1:u===e?1:e===400&&n===500||e===500&&n===400?-1:e===400&&u===500||e===500&&u===400?1:e<400?n<e&&u<e?u-n:n<e?-1:u<e?1:n-u:e<n&&e<u?n-u:e<n?-1:e<u?1:u-n:1;if(s!==y){if(s===i)return-1;if(y===i)return 1}return-1}),a[0][0]}getFont({fontFamily:r,fontWeight:e=400,fontStyle:i="normal"}){return this.get({name:r,weight:e,style:i})}measure(r,e,{fontSize:i,letterSpacing:a=0}){return r.getAdvanceWidth(e,i,{letterSpacing:a/i})}getSVG(r,e,{fontSize:i,top:a,left:o,letterSpacing:n=0}){return a+=r.ascender/r.unitsPerEm*i,r.getPath(e,o,a,i,{letterSpacing:n/i}).toPathData(2)}};m();function xt({width:t,height:r,content:e},i){return`<svg width="${t}" height="${r}" viewBox="0 0 ${t} ${r}" xmlns="http://www.w3.org/2000/svg">${e}</svg>`}function Wt(t,r){let e=B();if(!e)throw new Error("Satori is not initialized.");let i=new st(r.fonts),a=e.Node.create();a.setWidth(r.width),a.setHeight(r.height),a.setFlexDirection(e.FLEX_DIRECTION_ROW),a.setFlexWrap(e.WRAP_WRAP),a.setAlignContent(e.ALIGN_AUTO),a.setAlignItems(e.ALIGN_FLEX_START),a.setJustifyContent(e.JUSTIFY_FLEX_START);let o=rt(t,{id:1,parentStyle:{},inheritedStyle:{fontSize:16,fontWeight:"normal",fontFamily:"serif",fontStyle:"normal",lineHeight:1.2,color:"black",opacity:1},parent:a,font:i,embedFont:r.embedFont,debug:r.debug,graphemeImages:r.graphemeImages});o.next(),a.calculateLayout(r.width,r.height,e.DIRECTION_LTR);let n=o.next([0,0]).value;return xt({width:r.width,height:r.height,content:n})}export{Wt as default,jt as init};
//# sourceMappingURL=index.js.map

@@ -1,3 +0,3 @@

var Ot=Object.defineProperty,Nt=Object.defineProperties;var vt=Object.getOwnPropertyDescriptors;var yt=Object.getOwnPropertySymbols;var kt=Object.prototype.hasOwnProperty,Wt=Object.prototype.propertyIsEnumerable;var xt=(t,o,r)=>o in t?Ot(t,o,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[o]=r,q=(t,o)=>{for(var r in o||(o={}))kt.call(o,r)&&xt(t,r,o[r]);if(yt)for(var r of yt(o))Wt.call(o,r)&&xt(t,r,o[r]);return t},$t=(t,o)=>Nt(t,vt(o));var Et;function Gt(t){Et=t}function M(){return Et}function st(t){let o=typeof t;return!(o==="number"||o==="bigint"||o==="string"||o==="boolean")}function St(t){return/^class\s/.test(Function.prototype.toString.call(t))}function Z(t,o){return[t[0]*o[0]+t[2]*o[1],t[1]*o[0]+t[3]*o[1],t[0]*o[2]+t[2]*o[3],t[1]*o[2]+t[3]*o[3],t[0]*o[4]+t[2]*o[5]+t[4],t[1]*o[4]+t[3]*o[5]+t[5]]}function O(t,o,r){let i=o[t];return typeof i=="undefined"?r:i}var _t={p:{display:"block",marginTop:"1em",marginBottom:"1em"},div:{display:"block"},blockquote:{display:"block",marginTop:"1em",marginBottom:"1em",marginLeft:40,marginRight:40},center:{display:"block",textAlign:"center"},hr:{display:"block",marginTop:"0.5em",marginBottom:"0.5em",marginLeft:"auto",marginRight:"auto",borderWidth:1,borderStyle:"inset"},h1:{display:"block",fontSize:"2em",marginTop:"0.67em",marginBottom:"0.67em",marginLeft:0,marginRight:0,fontWeight:"bold"},h2:{display:"block",fontSize:"1.5em",marginTop:"0.83em",marginBottom:"0.83em",marginLeft:0,marginRight:0,fontWeight:"bold"},h3:{display:"block",fontSize:"1.17em",marginTop:"1em",marginBottom:"1em",marginLeft:0,marginRight:0,fontWeight:"bold"},h4:{display:"block",marginTop:"1.33em",marginBottom:"1.33em",marginLeft:0,marginRight:0,fontWeight:"bold"},h5:{display:"block",fontSize:"0.83em",marginTop:"1.67em",marginBottom:"1.67em",marginLeft:0,marginRight:0,fontWeight:"bold"},h6:{display:"block",fontSize:"0.67em",marginTop:"2.33em",marginBottom:"2.33em",marginLeft:0,marginRight:0,fontWeight:"bold"},u:{textDecoration:"underline"},strong:{fontWeight:"bold"},b:{fontWeight:"bold"},i:{fontStyle:"italic"},em:{fontStyle:"italic"},code:{fontFamily:"monospace"},kbd:{fontFamily:"monospace"},pre:{display:"block",fontFamily:"monospace",whiteSpace:"pre",marginTop:"1em",marginBottom:"1em"},mark:{backgroundColor:"yellow",color:"black"},big:{fontSize:"larger"},small:{fontSize:"smaller"},s:{textDecoration:"line-through"}};var Pt=new Set(["color","font","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textTransform","whiteSpace","letterSpacing","transform","wordBreak","textShadowOffset","textShadowColor","textShadowRadius","opacity"]);function ft(t){let o={};for(let r in t)Pt.has(r)&&(o[r]=t[r]);return o}import{getPropertyName as Rt,getStylesForProperty as Mt}from"css-to-react-native";import Lt from"parse-css-dimension";import{parseElementStyle as Bt}from"css-background-parser";var Dt=new Set(["flex","flexGrow","flexShrink","flexBasis","fontWeight","lineHeight","opacity","scale","scaleX","scaleY"]),Tt=[1,0,0,1,0,0];function Yt(t,o){return typeof o=="number"?Dt.has(t)?String(o):o+"px":o}function It(t,o){if(typeof t=="number")return t;try{let r=new Lt(t);if(r.type==="length")switch(r.unit){case"em":return r.value*o;case"rem":return r.value*16;default:return r.value}else if(r.type==="angle")switch(r.unit){case"deg":return r.value;case"rad":return r.value*180/Math.PI;default:return r.value}}catch{}}function ot(t,o){let r=[];for(let n in t){let e=Rt(n);r.push([e,Yt(e,t[n])])}let i=r.reduce((n,e)=>{let a=Rt(e[0]),c=e[1];return Object.assign(n,Mt(a,c,!0))},{});if(i.backgroundImage){let{backgrounds:n}=Bt(i);i.backgroundImage=n}let s=i.fontSize||o.fontSize;if(typeof s=="string")try{let n=new Lt(s);switch(n.unit){case"em":s=n.value*o.fontSize;break;case"rem":s=n.value*16;break}}catch{s=16}i.fontSize=s;for(let n in i){let e=i[n];if(typeof e=="string"){let a=It(e,s);typeof a!="undefined"&&(i[n]=a),e=i[n]}if(n==="opacity"&&(e=i[n]=e*o.opacity),n==="transform"){let a=[...Tt],c=e;for(let l of c){let h=Object.keys(l)[0],g=l[h],d=typeof g=="string"?It(g,s):g,f=[...Tt];switch(h){case"translateX":f[4]=d;break;case"translateY":f[5]=d;break;case"scaleX":f[0]=d;break;case"scaleY":f[3]=d;break;case"rotate":let b=d*Math.PI/180,y=Math.cos(b),x=Math.sin(b);f[0]=y,f[1]=x,f[2]=-x,f[3]=y;break;case"skewX":f[2]=Math.tan(d*Math.PI/180);break;case"skewY":f[1]=Math.tan(d*Math.PI/180);break}a=Z(f,a)}i.transform=a}}return i}function lt(t,o,r,i,s){let n=M(),e=q(q(q({},r),ot(_t[o],r)),ot(i,r));if(o==="img"){let a=parseInt(s.width),l=parseInt(s.height)/a;e.width||(e.width=a),e.height||(e.height=l*e.width)}return t.setDisplay(O(e.display,{flex:n.DISPLAY_FLEX,none:n.DISPLAY_NONE},n.DISPLAY_FLEX)),t.setAlignContent(O(e.alignContent,{stretch:n.ALIGN_STRETCH,center:n.ALIGN_CENTER,"flex-start":n.ALIGN_FLEX_START,"flex-end":n.ALIGN_FLEX_END,"space-between":n.ALIGN_SPACE_BETWEEN,"space-around":n.ALIGN_SPACE_AROUND,baseline:n.ALIGN_BASELINE,normal:n.ALIGN_AUTO},n.ALIGN_AUTO)),t.setAlignItems(O(e.alignItems,{stretch:n.ALIGN_STRETCH,center:n.ALIGN_CENTER,"flex-start":n.ALIGN_FLEX_START,"flex-end":n.ALIGN_FLEX_END,baseline:n.ALIGN_BASELINE,normal:n.ALIGN_AUTO},n.ALIGN_FLEX_START)),t.setAlignSelf(O(e.alignSelf,{stretch:n.ALIGN_STRETCH,center:n.ALIGN_CENTER,"flex-start":n.ALIGN_FLEX_START,"flex-end":n.ALIGN_FLEX_END,baseline:n.ALIGN_BASELINE,normal:n.ALIGN_AUTO},n.ALIGN_AUTO)),t.setJustifyContent(O(e.justifyContent,{center:n.JUSTIFY_CENTER,"flex-start":n.JUSTIFY_FLEX_START,"flex-end":n.JUSTIFY_FLEX_END,"space-between":n.JUSTIFY_SPACE_BETWEEN,"space-around":n.JUSTIFY_SPACE_AROUND},n.JUSTIFY_FLEX_START)),t.setFlexDirection(O(e.flexDirection,{row:n.FLEX_DIRECTION_ROW,column:n.FLEX_DIRECTION_COLUMN,"row-reverse":n.FLEX_DIRECTION_ROW_REVERSE,"column-reverse":n.FLEX_DIRECTION_COLUMN_REVERSE},n.FLEX_DIRECTION_ROW)),t.setFlexWrap(O(e.flexWrap,{wrap:n.WRAP_WRAP,nowrap:n.WRAP_NO_WRAP,"wrap-reverse":n.WRAP_WRAP_REVERSE},n.WRAP_WRAP)),typeof e.flexBasis!="undefined"&&t.setFlexBasis(e.flexBasis),t.setFlexGrow(typeof e.flexGrow=="undefined"?0:e.flexGrow),t.setFlexShrink(typeof e.flexShrink=="undefined"?1:e.flexShrink),typeof e.maxHeight!="undefined"&&t.setMaxHeight(e.maxHeight),typeof e.maxWidth!="undefined"&&t.setMaxWidth(e.maxWidth),typeof e.minHeight!="undefined"&&t.setMinHeight(e.minHeight),typeof e.minWidth!="undefined"&&t.setMinWidth(e.minWidth),t.setOverflow(O(e.overflow,{visible:n.OVERFLOW_VISIBLE,hidden:n.OVERFLOW_HIDDEN},n.OVERFLOW_VISIBLE)),t.setMargin(n.EDGE_TOP,e.marginTop||0),t.setMargin(n.EDGE_BOTTOM,e.marginBottom||0),t.setMargin(n.EDGE_LEFT,e.marginLeft||0),t.setMargin(n.EDGE_RIGHT,e.marginRight||0),t.setBorder(n.EDGE_TOP,e.borderWidth||0),t.setBorder(n.EDGE_BOTTOM,e.borderWidth||0),t.setBorder(n.EDGE_LEFT,e.borderWidth||0),t.setBorder(n.EDGE_RIGHT,e.borderWidth||0),t.setPadding(n.EDGE_TOP,e.paddingTop||0),t.setPadding(n.EDGE_BOTTOM,e.paddingBottom||0),t.setPadding(n.EDGE_LEFT,e.paddingLeft||0),t.setPadding(n.EDGE_RIGHT,e.paddingRight||0),t.setPositionType(O(e.position,{absolute:n.POSITION_TYPE_ABSOLUTE,relative:n.POSITION_TYPE_RELATIVE},n.POSITION_TYPE_RELATIVE)),typeof e.top!="undefined"&&t.setPosition(n.EDGE_TOP,e.top),typeof e.bottom!="undefined"&&t.setPosition(n.EDGE_BOTTOM,e.bottom),typeof e.left!="undefined"&&t.setPosition(n.EDGE_LEFT,e.left),typeof e.right!="undefined"&&t.setPosition(n.EDGE_RIGHT,e.right),typeof e.height!="undefined"?t.setHeight(e.height):t.setHeightAuto(),typeof e.width!="undefined"?t.setWidth(e.width):t.setWidthAuto(),[e,ft(e)]}function et({left:t,top:o,width:r,height:i},s,n){let e;if(n)e=s;else{let a=t+r/2,c=o+i/2;e=Z([1,0,0,1,a,c],Z(s,[1,0,0,1,-a,-c])),s.__parent&&(e=Z(s.__parent,e)),s.splice(0,6,...e)}return`matrix(${e.map(a=>a.toFixed(2)).join(",")})`}function ut({id:t,content:o,filter:r,left:i,top:s,width:n,height:e,isInheritingTransform:a,path:c,image:l,debug:h},g){let d="",f=1,b="";return g.transform&&(d=et({left:i,top:s,width:n,height:e},g.transform,a)),g.opacity&&(f=+g.opacity),h&&(b=`<rect x="${i}" y="${s}" width="${n}" height="${c===null?.5:e}" fill="transparent" stroke="#575eff" stroke-width="1" ${d?`transform="${d}"`:""}></rect>`),l?`${r?`${r}<g filter="url(#satori_s-${t})">`:""}<image href="${l}" x="${i}" y="${s}" width="${n}" height="${e}" ${d?`transform="${d}"`:""} ${f!==1?`opacity="${f}"`:""}></image>${r?"</g>":""}${b}`:c===null?`${r?`${r}<g filter="url(#satori_s-${t})">`:""}<text x="${i}" y="${s}" width="${n}" height="${e}" fill="${g.color}" font-weight="${g.fontWeight}" font-style="${g.fontStyle}" font-size="${g.fontSize}" font-family="${g.fontFamily}" ${g.letterSpacing?`letter-spacing="${g.letterSpacing}"`:""} ${d?`transform="${d}"`:""} ${f!==1?`opacity="${f}"`:""}>${o}</text>${r?"</g>":""}${b}`:`${r?`${r}<g filter="url(#satori_s-${t})">`:""}<path fill="${g.color}" ${d?`transform="${d}"`:""} ${f!==1?`opacity="${f}"`:""} d="${c}"></path>${r?"</g>":""}${b}`}function V({id:t,width:o,height:r},i){if(!i.shadowColor||!i.shadowOffset||typeof i.shadowRadius=="undefined")return"";let s=i.shadowRadius*i.shadowRadius/4,n=Math.min(i.shadowOffset.width-s,0),e=Math.max(i.shadowOffset.width+s+o,o),a=Math.min(i.shadowOffset.height-s,0),c=Math.max(i.shadowOffset.height+s+r,r);return`<defs><filter id="satori_s-${t}" x="${n/o*100}%" y="${a/r*100}%" width="${(e-n)/o*100}%" height="${(c-a)/r*100}%"><feDropShadow dx="${i.shadowOffset.width}" dy="${i.shadowOffset.height}" stdDeviation="${i.shadowRadius/2}" flood-color="${i.shadowColor}" flood-opacity="1"/></filter></defs>`}function*ct(t,o){let r=M(),i="en",s=new Intl.Segmenter(i,{granularity:"word"}),n=new Intl.Segmenter(i,{granularity:"grapheme"}),{parentStyle:e,parent:a,font:c,id:l,isInheritingTransform:h,debug:g,embedFont:d,graphemeImages:f}=o;e.textTransform==="uppercase"?t=t.toLocaleUpperCase(i):e.textTransform==="lowercase"?t=t.toLocaleLowerCase(i):e.textTransform==="capitalize"&&(t=[...s.segment(t)].map(m=>[...n.segment(m.segment)].map((p,I)=>I===0?p.segment.toLocaleUpperCase(i):p.segment).join("")).join(""));let y=[...O(e.wordBreak,{normal:s,"break-all":n,"break-word":n,"keep-all":s},s).segment(t)].map(m=>m.segment),x=r.Node.create();x.setAlignItems(r.ALIGN_BASELINE),e.textAlign==="left"?x.setJustifyContent(r.JUSTIFY_FLEX_START):e.textAlign==="center"?x.setJustifyContent(r.JUSTIFY_CENTER):e.textAlign==="right"?x.setJustifyContent(r.JUSTIFY_FLEX_END):e.textAlign==="justify"&&x.setJustifyContent(r.JUSTIFY_SPACE_BETWEEN),a.insertChild(x,a.getChildCount());let S=c.getFont(e),F=S.ascender/S.unitsPerEm*e.fontSize,_=-(S.descender/S.unitsPerEm)*e.fontSize,z=(F+_)*1.2,{textAlign:B}=e,C=[],w=[],R=[];x.setMeasureFunc((m,p,I,j)=>{let W=[],v="",G=0,U="",L=0,H=0,K=-1;C=[],w=[0];for(let D=0;D<y.length;D++){let Y=y[D];if([" ",`
`," ","\u3000"].includes(Y))v+=Y,G=c.measure(S,v,e),R[D]=null;else{let tt=f&&f[Y]?e.fontSize:c.measure(S,Y,e);L||(v="",G=0);let wt=G||",.!?:-@)>]}%#".indexOf(Y[0])<0,bt=!L||!!G;wt&&L+G+tt>m?(C.push(L),W.push(U),U=Y,L=tt,w.push(1),K=-1):(U+=v+Y,L+=G+tt,bt&&w[w.length-1]++),v="",G=0,bt&&K++,H=Math.max(H,L),R[D]={y:W.length*z,x:L-tt,width:tt,line:W.length,lineIndex:K}}}return L&&(W.push(U),C.push(L)),W.length>1&&(H=m),{width:H,height:W.length*z}});let[X,N]=yield,A="";e.position==="absolute"&&x.calculateLayout();let{left:P,top:T,width:k}=x.getComputedLayout(),Q=X+P,u=N+T;for(let m=0;m<y.length;m++){if(!R[m])continue;let p=y[m],I=null,j=null,W=R[m].y,v=R[m].x,G=R[m].width,U=z,L=k-C[R[m].line];if(B==="right"||B==="end")v+=L;else if(B==="center")v+=L/2;else if(B==="justify"){let K=R[m].line;if(K<C.length-1){let D=w[K];v+=(D>1?L/(D-1):0)*R[m].lineIndex}}f&&f[p]?j=f[p]:d?I=c.getSVG(S,p,$t(q({},e),{left:Q+v,top:u+W,letterSpacing:e.letterSpacing})):W+=F;let H="";e.textShadowOffset&&(H=V({width:G,height:U,id:l},{shadowColor:e.textShadowColor,shadowOffset:e.textShadowOffset,shadowRadius:e.textShadowRadius})),A+=ut({content:p,filter:H,id:l,left:Q+v,top:u+W,width:G,height:U,isInheritingTransform:h,path:I,image:j,debug:g},e)}return A}var mt=mt||{};mt.parse=function(){var t={linearGradient:/^(\-(webkit|o|ms|moz)\-)?(linear\-gradient)/i,repeatingLinearGradient:/^(\-(webkit|o|ms|moz)\-)?(repeating\-linear\-gradient)/i,radialGradient:/^(\-(webkit|o|ms|moz)\-)?(radial\-gradient)/i,repeatingRadialGradient:/^(\-(webkit|o|ms|moz)\-)?(repeating\-radial\-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest\-side|closest\-corner|farthest\-side|farthest\-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))px/,percentageValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))\%/,emValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))em/,angleValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))deg/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^\#([0-9a-fA-F]+)/,literalColor:/^([a-zA-Z]+)/,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,number:/^(([0-9]*\.[0-9]+)|([0-9]+\.?))/},o="";function r(u){var m=new Error(o+": "+u);throw m.source=o,m}function i(){var u=s();return o.length>0&&r("Invalid input not EOF"),u}function s(){return _(n)}function n(){return e("linear-gradient",t.linearGradient,c)||e("repeating-linear-gradient",t.repeatingLinearGradient,c)||e("radial-gradient",t.radialGradient,g)||e("repeating-radial-gradient",t.repeatingRadialGradient,g)}function e(u,m,p){return a(m,function(I){var j=p();return j&&(k(t.comma)||r("Missing comma before color stops")),{type:u,orientation:j,colorStops:_(J)}})}function a(u,m){var p=k(u);if(p){k(t.startCall)||r("Missing (");var I=m(p);return k(t.endCall)||r("Missing )"),I}}function c(){return l()||h()}function l(){return T("directional",t.sideOrCorner,1)}function h(){return T("angular",t.angleValue,1)}function g(){var u,m=d(),p;return m&&(u=[],u.push(m),p=o,k(t.comma)&&(m=d(),m?u.push(m):o=p)),u}function d(){var u=f()||b();if(u)u.at=x();else{var m=y();if(m){u=m;var p=x();p&&(u.at=p)}else{var I=S();I&&(u={type:"default-radial",at:I})}}return u}function f(){var u=T("shape",/^(circle)/i,0);return u&&(u.style=P()||y()),u}function b(){var u=T("shape",/^(ellipse)/i,0);return u&&(u.style=N()||y()),u}function y(){return T("extent-keyword",t.extentKeywords,1)}function x(){if(T("position",/^at/,0)){var u=S();return u||r("Missing positioning value"),u}}function S(){var u=F();if(u.x||u.y)return{type:"position",value:u}}function F(){return{x:N(),y:N()}}function _(u){var m=u(),p=[];if(m)for(p.push(m);k(t.comma);)m=u(),m?p.push(m):r("One extra comma");return p}function J(){var u=z();return u||r("Expected color definition"),u.length=N(),u}function z(){return C()||R()||w()||B()}function B(){return T("literal",t.literalColor,0)}function C(){return T("hex",t.hexColor,1)}function w(){return a(t.rgbColor,function(){return{type:"rgb",value:_(X)}})}function R(){return a(t.rgbaColor,function(){return{type:"rgba",value:_(X)}})}function X(){return k(t.number)[1]}function N(){return T("%",t.percentageValue,1)||A()||P()}function A(){return T("position-keyword",t.positionKeywords,1)}function P(){return T("px",t.pixelValue,1)||T("em",t.emValue,1)}function T(u,m,p){var I=k(m);if(I)return{type:u,value:I[p]}}function k(u){var m,p;return p=/^[\n\r\t\s]+/.exec(o),p&&Q(p[0].length),m=u.exec(o),m&&Q(m[0].length),m}function Q(u){o=o.substr(u)}return function(u){return o=u.toString(),i()}}();var At=mt;function zt(t){return t.type==="literal"?t.value:t.type==="hex"?`#${t.value}`:t.type==="rgb"?`rgb(${t.value.join(",")})`:t.type==="rgba"?`rgba(${t.value.join(",")})`:"transparent"}function gt({id:t,width:o},{image:r}){if(r.startsWith("linear-gradient(")){let i=At.parse(r)[0],s,n,e,a;if(i.orientation.type==="directional")[s,n,e,a]={top:[0,1,0,0],bottom:[0,0,0,1],left:[1,0,0,0],right:[0,0,1,0]}[i.orientation.value];else if(i.orientation.type==="angular"){let f=+i.orientation.value/180*Math.PI-Math.PI/2,b=Math.cos(f),y=Math.sin(f);s=0,n=0,e=b,a=y,e<0&&(s-=e,e=0),a<0&&(n-=a,a=0)}let c=o,l=[];for(let f of i.colorStops){let b=zt(f);if(!l.length&&(l.push({offset:0,color:b}),typeof f.length=="undefined"||f.length.value==="0"))continue;let y=typeof f.length=="undefined"?void 0:f.length.type==="%"?f.length.value/100:f.length.value/c;l.push({offset:y,color:b})}l.length||l.push({offset:0,color:"transparent"});let h=l[l.length-1];h.offset!==1&&(typeof h.offset=="undefined"?h.offset=1:l.push({offset:1,color:h.color}));let g=0,d=1;for(let f=0;f<l.length;f++)if(typeof l[f].offset=="undefined"){for(d<f&&(d=f);typeof l[d].offset=="undefined";)d++;l[f].offset=(l[d].offset-l[g].offset)/(d-g)*(f-g)+l[g].offset}else g=f;return[`satori_bi${t}`,`<linearGradient id="satori_bi${t}" x1="${s}" y1="${n}" x2="${e}" y2="${a}">${l.map(f=>`<stop offset="${f.offset*100}%" stop-color="${f.color}"/>`).join("")}</linearGradient>`]}if(r.startsWith("url(")){let i=r.slice(4,-1);return[`satori_bi${t}`,`<pattern id="satori_bi${t}" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${i}" x="0" y="0" width="1" height="1"/></pattern>`]}}function it(t,o,r){return r<t+o&&(r/2<t&&r/2<o?t=o=r/2:r/2<t?t=r-o:r/2<o&&(o=r-t)),[t,o]}function rt({left:t,top:o,width:r,height:i},s){let{borderTopLeftRadius:n,borderTopRightRadius:e,borderBottomLeftRadius:a,borderBottomRightRadius:c}=s;return n=Math.min(n||0,r,i),e=Math.min(e||0,r,i),a=Math.min(a||0,r,i),c=Math.min(c||0,r,i),!n&&!e&&!a&&!c?"":([n,e]=it(n,e,r),[n,a]=it(n,a,i),[e,c]=it(e,c,i),[a,c]=it(a,c,r),`M${t+n},${o} h${r-n-e} a${e},${e} 0 0 1 ${e},${e} v${i-e-c} a${c},${c} 0 0 1 ${-c},${c} h${c+a-r} a${a},${a} 0 0 1 ${-a},${-a} v${a+n-i} a${n},${n} 0 0 1 ${n},${-n}`)}function dt({id:t,left:o,top:r,width:i,height:s,isInheritingTransform:n,debug:e},a){if(a.display==="none")return"";let c="rect",l="transparent",h=0,g="",d="",f=[],b=1,y="";if(a.backgroundColor&&f.push(a.backgroundColor),a.borderWidth&&(h=a.borderWidth,l=a.borderColor),a.opacity&&(b=+a.opacity),a.transform&&(g=et({left:o,top:r,width:i,height:s},a.transform,n)),a.backgroundImage){let F=a.backgroundImage.map((_,J)=>gt({id:t+"_"+J,width:i,height:s},_)).filter(Boolean);for(let _ of F)d+=_[1],f.push(`url(#${_[0]})`)}let x=rt({left:o,top:r,width:i,height:s},a);x&&(c="path");let S=V({width:i,height:s,id:t},a);return f.length||f.push("transparent"),e&&(y=`<rect x="${o}" y="${r}" width="${i}" height="${s}" fill="transparent" stroke="#ff5757" stroke-width="1" ${g?`transform="${g}"`:""}></rect>`),`${d?`<defs>${d}</defs>`:""}${S?`${S}<g filter="url(#satori_s-${t})">`:""}${b!==1?`<g opacity="${b}">`:""}${f.map((F,_)=>F==="transparent"&&!(_===f.length-1&&h)?"":`<${c} x="${o}" y="${r}" width="${i}" height="${s}" fill="${F}" ${_===f.length-1&&h?`stroke="${l}" stroke-width="${h}"`:""} ${x?`d="${x}"`:""} ${g?`transform="${g}"`:""}></${c}>`).join("")}${b!==1?"</g>":""}${S?"</g>":""}${y}`}function pt({id:t,left:o,top:r,width:i,height:s,src:n,debug:e},a){if(a.display==="none")return"";let c="",l=1,h=a.objectFit==="contain"?"xMidYMid":a.objectFit==="cover"?"xMidYMid slice":"none",g=rt({left:o,top:r,width:i,height:s},a);g&&(c=`<clipPath id="satori_c-${t}"><path x="${o}" y="${r}" width="${i}" height="${s}" d="${g}"></path></clipPath>`),a.opacity&&(l=+a.opacity);let d=V({width:i,height:s,id:t},a);return`${d}${d?`<g filter="url(#satori_s-${t})">`:""}${c}<image href="${n}" x="${o}" y="${r}" width="${i}" height="${s}" preserveAspectRatio="${h}" ${c?`clip-path="url(#satori_c-${t})"`:""} ${l!==1?`opacity="${l}"`:""}></image>${d?"</g>":""}`}function*nt(t,o){let r=M(),{id:i,inheritedStyle:s,parent:n,font:e,debug:a,embedFont:c=!0,graphemeImages:l}=o;if(t===null||typeof t=="undefined")return yield,"";if(!st(t)||typeof t.type=="function"){let A;if(!st(t))A=ct(String(t),o);else{if(St(t.type))throw new Error("Class component is not supported.");A=nt(t.type(t.props),o)}A.next();let P=yield;return A.next(P).value}let{type:h,props:g}=t,{style:d,children:f}=g,b=r.Node.create();n.insertChild(b,n.getChildCount());let[y,x]=lt(b,h,s,d,g),S=y.transform===s.transform;S||(y.transform.__parent=s.transform);let F=typeof f=="undefined"?[]:[].concat(f),_=[],J=0;for(let A of F){let P=nt(A,{id:i*F.length+ ++J,parentStyle:y,inheritedStyle:x,isInheritingTransform:!0,parent:b,font:e,embedFont:c,debug:a,graphemeImages:l});P.next(),_.push(P)}let[z,B]=yield;y.position==="absolute"&&b.calculateLayout();let{left:C,top:w,width:R,height:X}=b.getComputedLayout();C+=z,w+=B;let N="";h==="img"?N=pt({id:i,left:C,top:w,width:R,height:X,src:g.src,isInheritingTransform:S,debug:a},y):N=dt({id:i,left:C,top:w,width:R,height:X,isInheritingTransform:S,debug:a},y);for(let A of _)N+=A.next([C,w]).value;return N}import Ft from"opentype.js";var at=class{constructor(o){this.fonts=new Map;for(let r of o){let i=r.data,s="buffer"in i?Ft.parse(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):Ft.parse(i);this.defaultFont||(this.defaultFont=s),this.fonts.has(r.name)||this.fonts.set(r.name,[]),this.fonts.get(r.name).push([s,r.weight,r.style])}}get({name:o,weight:r,style:i}){if(!this.fonts.has(o))return this.defaultFont;r==="normal"&&(r=400),r==="bold"&&(r=700);let s=[...this.fonts.get(o)];return s.sort(([n,e,a],[c,l,h])=>{if(e!==l)return e?!l||e===r?-1:l===r?1:r===400&&e===500||r===500&&e===400?-1:r===400&&l===500||r===500&&l===400?1:r<400?e<r&&l<r?l-e:e<r?-1:l<r?1:e-l:r<e&&r<l?e-l:r<e?-1:r<l?1:l-e:1;if(a!==h){if(a===i)return-1;if(h===i)return 1}return-1}),s[0][0]}getFont({fontFamily:o,fontWeight:r=400,fontStyle:i="normal"}){return this.get({name:o,weight:r,style:i})}measure(o,r,{fontSize:i,letterSpacing:s=0}){return o.getAdvanceWidth(r,i,{letterSpacing:s/i})}getSVG(o,r,{fontSize:i,top:s,left:n,letterSpacing:e=0}){return s+=o.ascender/o.unitsPerEm*i,o.getPath(r,n,s,i,{letterSpacing:e/i}).toPathData(2)}};function ht({width:t,height:o,content:r},i){return`<svg width="${t}" height="${o}" viewBox="0 0 ${t} ${o}" xmlns="http://www.w3.org/2000/svg">${r}</svg>`}function Ct(t,o){let r=M();if(!r)throw new Error("Satori is not initialized.");let i=new at(o.fonts),s=r.Node.create();s.setWidth(o.width),s.setHeight(o.height),s.setFlexDirection(r.FLEX_DIRECTION_ROW),s.setFlexWrap(r.WRAP_WRAP),s.setAlignContent(r.ALIGN_AUTO),s.setAlignItems(r.ALIGN_FLEX_START),s.setJustifyContent(r.JUSTIFY_FLEX_START);let n=nt(t,{id:1,parentStyle:{},inheritedStyle:{fontSize:16,fontWeight:"normal",fontFamily:"serif",fontStyle:"normal",lineHeight:1.2,color:"black",opacity:1},parent:s,font:i,embedFont:o.embedFont,debug:o.debug,graphemeImages:o.graphemeImages});n.next(),s.calculateLayout(o.width,o.height,r.DIRECTION_LTR);let e=n.next([0,0]).value;return ht({width:o.width,height:o.height,content:e})}export{Ct as default,Gt as init};
var Ot=Object.defineProperty,Nt=Object.defineProperties;var vt=Object.getOwnPropertyDescriptors;var yt=Object.getOwnPropertySymbols;var kt=Object.prototype.hasOwnProperty,Wt=Object.prototype.propertyIsEnumerable;var xt=(t,o,e)=>o in t?Ot(t,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[o]=e,j=(t,o)=>{for(var e in o||(o={}))kt.call(o,e)&&xt(t,e,o[e]);if(yt)for(var e of yt(o))Wt.call(o,e)&&xt(t,e,o[e]);return t},$t=(t,o)=>Nt(t,vt(o));var Et;function Gt(t){Et=t}function P(){return Et}function it(t){let o=typeof t;return!(o==="number"||o==="bigint"||o==="string"||o==="boolean")}function St(t){return/^class\s/.test(Function.prototype.toString.call(t))}function K(t,o){return[t[0]*o[0]+t[2]*o[1],t[1]*o[0]+t[3]*o[1],t[0]*o[2]+t[2]*o[3],t[1]*o[2]+t[3]*o[3],t[0]*o[4]+t[2]*o[5]+t[4],t[1]*o[4]+t[3]*o[5]+t[5]]}function F(t,o,e){let i=o[t];return typeof i=="undefined"?e:i}var _t={p:{display:"block",marginTop:"1em",marginBottom:"1em"},div:{display:"block"},blockquote:{display:"block",marginTop:"1em",marginBottom:"1em",marginLeft:40,marginRight:40},center:{display:"block",textAlign:"center"},hr:{display:"block",marginTop:"0.5em",marginBottom:"0.5em",marginLeft:"auto",marginRight:"auto",borderWidth:1,borderStyle:"inset"},h1:{display:"block",fontSize:"2em",marginTop:"0.67em",marginBottom:"0.67em",marginLeft:0,marginRight:0,fontWeight:"bold"},h2:{display:"block",fontSize:"1.5em",marginTop:"0.83em",marginBottom:"0.83em",marginLeft:0,marginRight:0,fontWeight:"bold"},h3:{display:"block",fontSize:"1.17em",marginTop:"1em",marginBottom:"1em",marginLeft:0,marginRight:0,fontWeight:"bold"},h4:{display:"block",marginTop:"1.33em",marginBottom:"1.33em",marginLeft:0,marginRight:0,fontWeight:"bold"},h5:{display:"block",fontSize:"0.83em",marginTop:"1.67em",marginBottom:"1.67em",marginLeft:0,marginRight:0,fontWeight:"bold"},h6:{display:"block",fontSize:"0.67em",marginTop:"2.33em",marginBottom:"2.33em",marginLeft:0,marginRight:0,fontWeight:"bold"},u:{textDecoration:"underline"},strong:{fontWeight:"bold"},b:{fontWeight:"bold"},i:{fontStyle:"italic"},em:{fontStyle:"italic"},code:{fontFamily:"monospace"},kbd:{fontFamily:"monospace"},pre:{display:"block",fontFamily:"monospace",whiteSpace:"pre",marginTop:"1em",marginBottom:"1em"},mark:{backgroundColor:"yellow",color:"black"},big:{fontSize:"larger"},small:{fontSize:"smaller"},s:{textDecoration:"line-through"}};var Pt=new Set(["color","font","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textTransform","whiteSpace","letterSpacing","transform","wordBreak","textShadowOffset","textShadowColor","textShadowRadius","opacity"]);function at(t){let o={};for(let e in t)Pt.has(e)&&(o[e]=t[e]);return o}import{getPropertyName as Tt,getStylesForProperty as Bt}from"css-to-react-native";import Lt from"parse-css-dimension";import{parseElementStyle as Mt}from"css-background-parser";var Dt=new Set(["flex","flexGrow","flexShrink","flexBasis","fontWeight","lineHeight","opacity","scale","scaleX","scaleY"]),Rt=[1,0,0,1,0,0];function Yt(t,o){return typeof o=="number"?Dt.has(t)?String(o):o+"px":o}function It(t,o){if(typeof t=="number")return t;try{let e=new Lt(t);if(e.type==="length")switch(e.unit){case"em":return e.value*o;case"rem":return e.value*16;default:return e.value}else if(e.type==="angle")switch(e.unit){case"deg":return e.value;case"rad":return e.value*180/Math.PI;default:return e.value}}catch{}}function rt(t,o){let e=[];for(let n in t){let r=Tt(n);e.push([r,Yt(r,t[n])])}let i=e.reduce((n,r)=>{let a=Tt(r[0]),c=r[1];return Object.assign(n,Bt(a,c,!0))},{});if(i.backgroundImage){let{backgrounds:n}=Mt(i);i.backgroundImage=n}let s=i.fontSize||o.fontSize;if(typeof s=="string")try{let n=new Lt(s);switch(n.unit){case"em":s=n.value*o.fontSize;break;case"rem":s=n.value*16;break}}catch{s=16}typeof i.fontSize!="undefined"&&(i.fontSize=s);for(let n in i){let r=i[n];if(typeof r=="string"){let a=It(r,s);typeof a!="undefined"&&(i[n]=a),r=i[n]}if(n==="opacity"&&(r=i[n]=r*o.opacity),n==="transform"){let a=[...Rt],c=r;for(let u of c){let b=Object.keys(u)[0],d=u[b],m=typeof d=="string"?It(d,s):d,f=[...Rt];switch(b){case"translateX":f[4]=m;break;case"translateY":f[5]=m;break;case"scaleX":f[0]=m;break;case"scaleY":f[3]=m;break;case"rotate":let g=m*Math.PI/180,x=Math.cos(g),I=Math.sin(g);f[0]=x,f[1]=I,f[2]=-I,f[3]=x;break;case"skewX":f[2]=Math.tan(m*Math.PI/180);break;case"skewY":f[1]=Math.tan(m*Math.PI/180);break}a=K(f,a)}i.transform=a}}return i}function st(t,o,e,i,s){let n=P(),r=j(j(j({},e),rt(_t[o],e)),rt(i,e));if(o==="img"){let a=parseInt(s.width),u=parseInt(s.height)/a;r.width||(r.width=a),r.height||(r.height=u*r.width)}return t.setDisplay(F(r.display,{flex:n.DISPLAY_FLEX,none:n.DISPLAY_NONE},n.DISPLAY_FLEX)),t.setAlignContent(F(r.alignContent,{stretch:n.ALIGN_STRETCH,center:n.ALIGN_CENTER,"flex-start":n.ALIGN_FLEX_START,"flex-end":n.ALIGN_FLEX_END,"space-between":n.ALIGN_SPACE_BETWEEN,"space-around":n.ALIGN_SPACE_AROUND,baseline:n.ALIGN_BASELINE,normal:n.ALIGN_AUTO},n.ALIGN_AUTO)),t.setAlignItems(F(r.alignItems,{stretch:n.ALIGN_STRETCH,center:n.ALIGN_CENTER,"flex-start":n.ALIGN_FLEX_START,"flex-end":n.ALIGN_FLEX_END,baseline:n.ALIGN_BASELINE,normal:n.ALIGN_AUTO},n.ALIGN_FLEX_START)),t.setAlignSelf(F(r.alignSelf,{stretch:n.ALIGN_STRETCH,center:n.ALIGN_CENTER,"flex-start":n.ALIGN_FLEX_START,"flex-end":n.ALIGN_FLEX_END,baseline:n.ALIGN_BASELINE,normal:n.ALIGN_AUTO},n.ALIGN_AUTO)),t.setJustifyContent(F(r.justifyContent,{center:n.JUSTIFY_CENTER,"flex-start":n.JUSTIFY_FLEX_START,"flex-end":n.JUSTIFY_FLEX_END,"space-between":n.JUSTIFY_SPACE_BETWEEN,"space-around":n.JUSTIFY_SPACE_AROUND},n.JUSTIFY_FLEX_START)),t.setFlexDirection(F(r.flexDirection,{row:n.FLEX_DIRECTION_ROW,column:n.FLEX_DIRECTION_COLUMN,"row-reverse":n.FLEX_DIRECTION_ROW_REVERSE,"column-reverse":n.FLEX_DIRECTION_COLUMN_REVERSE},n.FLEX_DIRECTION_ROW)),t.setFlexWrap(F(r.flexWrap,{wrap:n.WRAP_WRAP,nowrap:n.WRAP_NO_WRAP,"wrap-reverse":n.WRAP_WRAP_REVERSE},n.WRAP_WRAP)),typeof r.flexBasis!="undefined"&&t.setFlexBasis(r.flexBasis),t.setFlexGrow(typeof r.flexGrow=="undefined"?0:r.flexGrow),t.setFlexShrink(typeof r.flexShrink=="undefined"?1:r.flexShrink),typeof r.maxHeight!="undefined"&&t.setMaxHeight(r.maxHeight),typeof r.maxWidth!="undefined"&&t.setMaxWidth(r.maxWidth),typeof r.minHeight!="undefined"&&t.setMinHeight(r.minHeight),typeof r.minWidth!="undefined"&&t.setMinWidth(r.minWidth),t.setOverflow(F(r.overflow,{visible:n.OVERFLOW_VISIBLE,hidden:n.OVERFLOW_HIDDEN},n.OVERFLOW_VISIBLE)),t.setMargin(n.EDGE_TOP,r.marginTop||0),t.setMargin(n.EDGE_BOTTOM,r.marginBottom||0),t.setMargin(n.EDGE_LEFT,r.marginLeft||0),t.setMargin(n.EDGE_RIGHT,r.marginRight||0),t.setBorder(n.EDGE_TOP,r.borderWidth||0),t.setBorder(n.EDGE_BOTTOM,r.borderWidth||0),t.setBorder(n.EDGE_LEFT,r.borderWidth||0),t.setBorder(n.EDGE_RIGHT,r.borderWidth||0),t.setPadding(n.EDGE_TOP,r.paddingTop||0),t.setPadding(n.EDGE_BOTTOM,r.paddingBottom||0),t.setPadding(n.EDGE_LEFT,r.paddingLeft||0),t.setPadding(n.EDGE_RIGHT,r.paddingRight||0),t.setPositionType(F(r.position,{absolute:n.POSITION_TYPE_ABSOLUTE,relative:n.POSITION_TYPE_RELATIVE},n.POSITION_TYPE_RELATIVE)),typeof r.top!="undefined"&&t.setPosition(n.EDGE_TOP,r.top),typeof r.bottom!="undefined"&&t.setPosition(n.EDGE_BOTTOM,r.bottom),typeof r.left!="undefined"&&t.setPosition(n.EDGE_LEFT,r.left),typeof r.right!="undefined"&&t.setPosition(n.EDGE_RIGHT,r.right),typeof r.height!="undefined"?t.setHeight(r.height):t.setHeightAuto(),typeof r.width!="undefined"?t.setWidth(r.width):t.setWidthAuto(),[r,at(r)]}import{LineBreaker as zt}from"css-line-break";import{splitGraphemes as Ut}from"text-segmentation";function Z({left:t,top:o,width:e,height:i},s,n){let r;if(n)r=s;else{let a=t+e/2,c=o+i/2;r=K([1,0,0,1,a,c],K(s,[1,0,0,1,-a,-c])),s.__parent&&(r=K(s.__parent,r)),s.splice(0,6,...r)}return`matrix(${r.map(a=>a.toFixed(2)).join(",")})`}function ft({id:t,content:o,filter:e,left:i,top:s,width:n,height:r,isInheritingTransform:a,path:c,image:u,debug:b},d){let m="",f=1,g="";return d.transform&&(m=Z({left:i,top:s,width:n,height:r},d.transform,a)),d.opacity&&(f=+d.opacity),b&&(g=`<rect x="${i}" y="${s}" width="${n}" height="${c===null?.5:r}" fill="transparent" stroke="#575eff" stroke-width="1" ${m?`transform="${m}"`:""}></rect>`),u?`${e?`${e}<g filter="url(#satori_s-${t})">`:""}<image href="${u}" x="${i}" y="${s}" width="${n}" height="${r}" ${m?`transform="${m}"`:""} ${f!==1?`opacity="${f}"`:""}></image>${e?"</g>":""}${g}`:c===null?`${e?`${e}<g filter="url(#satori_s-${t})">`:""}<text x="${i}" y="${s}" width="${n}" height="${r}" fill="${d.color}" font-weight="${d.fontWeight}" font-style="${d.fontStyle}" font-size="${d.fontSize}" font-family="${d.fontFamily}" ${d.letterSpacing?`letter-spacing="${d.letterSpacing}"`:""} ${m?`transform="${m}"`:""} ${f!==1?`opacity="${f}"`:""}>${o}</text>${e?"</g>":""}${g}`:`${e?`${e}<g filter="url(#satori_s-${t})">`:""}<path fill="${d.color}" ${m?`transform="${m}"`:""} ${f!==1?`opacity="${f}"`:""} d="${c}"></path>${e?"</g>":""}${g}`}function V({id:t,width:o,height:e},i){if(!i.shadowColor||!i.shadowOffset||typeof i.shadowRadius=="undefined")return"";let s=i.shadowRadius*i.shadowRadius/4,n=Math.min(i.shadowOffset.width-s,0),r=Math.max(i.shadowOffset.width+s+o,o),a=Math.min(i.shadowOffset.height-s,0),c=Math.max(i.shadowOffset.height+s+e,e);return`<defs><filter id="satori_s-${t}" x="${n/o*100}%" y="${a/e*100}%" width="${(r-n)/o*100}%" height="${(c-a)/e*100}%"><feDropShadow dx="${i.shadowOffset.width}" dy="${i.shadowOffset.height}" stdDeviation="${i.shadowRadius/2}" flood-color="${i.shadowColor}" flood-opacity="1"/></filter></defs>`}var Q="en",ut=typeof Intl!="undefined"&&"Segmenter"in Intl,Xt=ut?new Intl.Segmenter(Q,{granularity:"word"}):null,Ht=ut?new Intl.Segmenter(Q,{granularity:"grapheme"}):null,Vt=[32,160,4961,65792,65793,4153,4241],Jt=t=>{let o=zt(t,{lineBreak:"strict",wordBreak:"normal"}),e=[],i;for(;!(i=o.next()).done;)if(i.value){let s=i.value.slice(),n=[].map.call(s,a=>a.codePointAt(0)),r="";n.forEach(a=>{Vt.includes(a)?(r.length&&e.push(r),e.push(String.fromCodePoint(a)),r=""):r+=String.fromCodePoint(a)}),r.length&&e.push(r)}return e};function lt(t,o){return ut?o==="word"?[...Xt.segment(t)].map(e=>e.segment):[...Ht.segment(t)].map(e=>e.segment):o==="word"?Jt(t):Ut(t)}function*ct(t,o){let e=P(),{parentStyle:i,parent:s,font:n,id:r,isInheritingTransform:a,debug:c,embedFont:u,graphemeImages:b}=o;i.textTransform==="uppercase"?t=t.toLocaleUpperCase(Q):i.textTransform==="lowercase"?t=t.toLocaleLowerCase(Q):i.textTransform==="capitalize"&&(t=lt(t,"word").map(y=>lt(y,"grapheme").map((k,l)=>l===0?k.toLocaleUpperCase(Q):k).join("")).join(""));let d=F(i.wordBreak,{normal:"word","break-all":"grapheme","break-word":"grapheme","keep-all":"word"},"word"),m=lt(t,d),f=e.Node.create();f.setAlignItems(e.ALIGN_BASELINE),i.textAlign==="left"?f.setJustifyContent(e.JUSTIFY_FLEX_START):i.textAlign==="center"?f.setJustifyContent(e.JUSTIFY_CENTER):i.textAlign==="right"?f.setJustifyContent(e.JUSTIFY_FLEX_END):i.textAlign==="justify"&&f.setJustifyContent(e.JUSTIFY_SPACE_BETWEEN),s.insertChild(f,s.getChildCount());let g=n.getFont(i),x=g.ascender/g.unitsPerEm*i.fontSize,I=-(g.descender/g.unitsPerEm)*i.fontSize,L=(x+I)*1.2,{textAlign:$}=i,N=[],G=[],w=[];f.setMeasureFunc((y,k,l,p)=>{let h=[],E="",A=0,X="",R=0,H=0,J=-1;N=[],G=[0];for(let D=0;D<m.length;D++){let Y=m[D];if([" ",`
`," ","\u3000"].includes(Y))E+=Y,A=n.measure(g,E,i),w[D]=null;else{let q=b&&b[Y]?i.fontSize:n.measure(g,Y,i);R||(E="",A=0);let Ft=A||",.!?:-@)>]}%#".indexOf(Y[0])<0,bt=!R||!!A;Ft&&R+A+q>y?(N.push(R),h.push(X),X=Y,R=q,G.push(1),J=-1):(X+=E+Y,R+=A+q,bt&&G[G.length-1]++),E="",A=0,bt&&J++,H=Math.max(H,R),w[D]={y:h.length*L,x:R-q,width:q,line:h.length,lineIndex:J}}}return R&&(h.push(X),N.push(R)),h.length>1&&(H=y),{width:H,height:h.length*L}});let[B,M]=yield,z="";i.position==="absolute"&&f.calculateLayout();let{left:U,top:v,width:C}=f.getComputedLayout(),W=B+U,T=M+v;for(let y=0;y<m.length;y++){if(!w[y])continue;let k=m[y],l=null,p=null,h=w[y].y,E=w[y].x,A=w[y].width,X=L,R=C-N[w[y].line];if($==="right"||$==="end")E+=R;else if($==="center")E+=R/2;else if($==="justify"){let J=w[y].line;if(J<N.length-1){let D=G[J];E+=(D>1?R/(D-1):0)*w[y].lineIndex}}b&&b[k]?p=b[k]:u?l=n.getSVG(g,k,$t(j({},i),{left:W+E,top:T+h,letterSpacing:i.letterSpacing})):h+=x;let H="";i.textShadowOffset&&(H=V({width:A,height:X,id:r},{shadowColor:i.textShadowColor,shadowOffset:i.textShadowOffset,shadowRadius:i.textShadowRadius})),z+=ft({content:k,filter:H,id:r,left:W+E,top:T+h,width:A,height:X,isInheritingTransform:a,path:l,image:p,debug:c},i)}return z}var mt=mt||{};mt.parse=function(){var t={linearGradient:/^(\-(webkit|o|ms|moz)\-)?(linear\-gradient)/i,repeatingLinearGradient:/^(\-(webkit|o|ms|moz)\-)?(repeating\-linear\-gradient)/i,radialGradient:/^(\-(webkit|o|ms|moz)\-)?(radial\-gradient)/i,repeatingRadialGradient:/^(\-(webkit|o|ms|moz)\-)?(repeating\-radial\-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest\-side|closest\-corner|farthest\-side|farthest\-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))px/,percentageValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))\%/,emValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))em/,angleValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))deg/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^\#([0-9a-fA-F]+)/,literalColor:/^([a-zA-Z]+)/,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,number:/^(([0-9]*\.[0-9]+)|([0-9]+\.?))/},o="";function e(l){var p=new Error(o+": "+l);throw p.source=o,p}function i(){var l=s();return o.length>0&&e("Invalid input not EOF"),l}function s(){return $(n)}function n(){return r("linear-gradient",t.linearGradient,c)||r("repeating-linear-gradient",t.repeatingLinearGradient,c)||r("radial-gradient",t.radialGradient,d)||r("repeating-radial-gradient",t.repeatingRadialGradient,d)}function r(l,p,h){return a(p,function(E){var A=h();return A&&(y(t.comma)||e("Missing comma before color stops")),{type:l,orientation:A,colorStops:$(N)}})}function a(l,p){var h=y(l);if(h){y(t.startCall)||e("Missing (");var E=p(h);return y(t.endCall)||e("Missing )"),E}}function c(){return u()||b()}function u(){return T("directional",t.sideOrCorner,1)}function b(){return T("angular",t.angleValue,1)}function d(){var l,p=m(),h;return p&&(l=[],l.push(p),h=o,y(t.comma)&&(p=m(),p?l.push(p):o=h)),l}function m(){var l=f()||g();if(l)l.at=I();else{var p=x();if(p){l=p;var h=I();h&&(l.at=h)}else{var E=O();E&&(l={type:"default-radial",at:E})}}return l}function f(){var l=T("shape",/^(circle)/i,0);return l&&(l.style=W()||x()),l}function g(){var l=T("shape",/^(ellipse)/i,0);return l&&(l.style=v()||x()),l}function x(){return T("extent-keyword",t.extentKeywords,1)}function I(){if(T("position",/^at/,0)){var l=O();return l||e("Missing positioning value"),l}}function O(){var l=L();if(l.x||l.y)return{type:"position",value:l}}function L(){return{x:v(),y:v()}}function $(l){var p=l(),h=[];if(p)for(h.push(p);y(t.comma);)p=l(),p?h.push(p):e("One extra comma");return h}function N(){var l=G();return l||e("Expected color definition"),l.length=v(),l}function G(){return B()||z()||M()||w()}function w(){return T("literal",t.literalColor,0)}function B(){return T("hex",t.hexColor,1)}function M(){return a(t.rgbColor,function(){return{type:"rgb",value:$(U)}})}function z(){return a(t.rgbaColor,function(){return{type:"rgba",value:$(U)}})}function U(){return y(t.number)[1]}function v(){return T("%",t.percentageValue,1)||C()||W()}function C(){return T("position-keyword",t.positionKeywords,1)}function W(){return T("px",t.pixelValue,1)||T("em",t.emValue,1)}function T(l,p,h){var E=y(p);if(E)return{type:l,value:E[h]}}function y(l){var p,h;return h=/^[\n\r\t\s]+/.exec(o),h&&k(h[0].length),p=l.exec(o),p&&k(p[0].length),p}function k(l){o=o.substr(l)}return function(l){return o=l.toString(),i()}}();var wt=mt;function jt(t){return t.type==="literal"?t.value:t.type==="hex"?`#${t.value}`:t.type==="rgb"?`rgb(${t.value.join(",")})`:t.type==="rgba"?`rgba(${t.value.join(",")})`:"transparent"}function dt({id:t,width:o},{image:e}){if(e.startsWith("linear-gradient(")){let i=wt.parse(e)[0],s,n,r,a;if(i.orientation.type==="directional")[s,n,r,a]={top:[0,1,0,0],bottom:[0,0,0,1],left:[1,0,0,0],right:[0,0,1,0]}[i.orientation.value];else if(i.orientation.type==="angular"){let f=+i.orientation.value/180*Math.PI-Math.PI/2,g=Math.cos(f),x=Math.sin(f);s=0,n=0,r=g,a=x,r<0&&(s-=r,r=0),a<0&&(n-=a,a=0)}let c=o,u=[];for(let f of i.colorStops){let g=jt(f);if(!u.length&&(u.push({offset:0,color:g}),typeof f.length=="undefined"||f.length.value==="0"))continue;let x=typeof f.length=="undefined"?void 0:f.length.type==="%"?f.length.value/100:f.length.value/c;u.push({offset:x,color:g})}u.length||u.push({offset:0,color:"transparent"});let b=u[u.length-1];b.offset!==1&&(typeof b.offset=="undefined"?b.offset=1:u.push({offset:1,color:b.color}));let d=0,m=1;for(let f=0;f<u.length;f++)if(typeof u[f].offset=="undefined"){for(m<f&&(m=f);typeof u[m].offset=="undefined";)m++;u[f].offset=(u[m].offset-u[d].offset)/(m-d)*(f-d)+u[d].offset}else d=f;return[`satori_bi${t}`,`<linearGradient id="satori_bi${t}" x1="${s}" y1="${n}" x2="${r}" y2="${a}">${u.map(f=>`<stop offset="${f.offset*100}%" stop-color="${f.color}"/>`).join("")}</linearGradient>`]}if(e.startsWith("url(")){let i=e.slice(4,-1);return[`satori_bi${t}`,`<pattern id="satori_bi${t}" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${i}" x="0" y="0" width="1" height="1"/></pattern>`]}}function nt(t,o,e){return e<t+o&&(e/2<t&&e/2<o?t=o=e/2:e/2<t?t=e-o:e/2<o&&(o=e-t)),[t,o]}function tt({left:t,top:o,width:e,height:i},s){let{borderTopLeftRadius:n,borderTopRightRadius:r,borderBottomLeftRadius:a,borderBottomRightRadius:c}=s;return n=Math.min(n||0,e,i),r=Math.min(r||0,e,i),a=Math.min(a||0,e,i),c=Math.min(c||0,e,i),!n&&!r&&!a&&!c?"":([n,r]=nt(n,r,e),[n,a]=nt(n,a,i),[r,c]=nt(r,c,i),[a,c]=nt(a,c,e),`M${t+n},${o} h${e-n-r} a${r},${r} 0 0 1 ${r},${r} v${i-r-c} a${c},${c} 0 0 1 ${-c},${c} h${c+a-e} a${a},${a} 0 0 1 ${-a},${-a} v${a+n-i} a${n},${n} 0 0 1 ${n},${-n}`)}function gt({id:t,left:o,top:e,width:i,height:s,isInheritingTransform:n,debug:r},a){if(a.display==="none")return"";let c="rect",u="transparent",b=0,d="",m="",f=[],g=1,x="";if(a.backgroundColor&&f.push(a.backgroundColor),a.borderWidth&&(b=a.borderWidth,u=a.borderColor),a.opacity&&(g=+a.opacity),a.transform&&(d=Z({left:o,top:e,width:i,height:s},a.transform,n)),a.backgroundImage){let L=a.backgroundImage.map(($,N)=>dt({id:t+"_"+N,width:i,height:s},$)).filter(Boolean);for(let $ of L)m+=$[1],f.push(`url(#${$[0]})`)}let I=tt({left:o,top:e,width:i,height:s},a);I&&(c="path");let O=V({width:i,height:s,id:t},a);return f.length||f.push("transparent"),r&&(x=`<rect x="${o}" y="${e}" width="${i}" height="${s}" fill="transparent" stroke="#ff5757" stroke-width="1" ${d?`transform="${d}"`:""}></rect>`),`${m?`<defs>${m}</defs>`:""}${O?`${O}<g filter="url(#satori_s-${t})">`:""}${g!==1?`<g opacity="${g}">`:""}${f.map((L,$)=>L==="transparent"&&!($===f.length-1&&b)?"":`<${c} x="${o}" y="${e}" width="${i}" height="${s}" fill="${L}" ${$===f.length-1&&b?`stroke="${u}" stroke-width="${b}"`:""} ${I?`d="${I}"`:""} ${d?`transform="${d}"`:""}></${c}>`).join("")}${g!==1?"</g>":""}${O?"</g>":""}${x}`}function pt({id:t,left:o,top:e,width:i,height:s,src:n,debug:r},a){if(a.display==="none")return"";let c="",u=1,b=a.objectFit==="contain"?"xMidYMid":a.objectFit==="cover"?"xMidYMid slice":"none",d=tt({left:o,top:e,width:i,height:s},a);d&&(c=`<clipPath id="satori_c-${t}"><path x="${o}" y="${e}" width="${i}" height="${s}" d="${d}"></path></clipPath>`),a.opacity&&(u=+a.opacity);let m=V({width:i,height:s,id:t},a);return`${m}${m?`<g filter="url(#satori_s-${t})">`:""}${c}<image href="${n}" x="${o}" y="${e}" width="${i}" height="${s}" preserveAspectRatio="${b}" ${c?`clip-path="url(#satori_c-${t})"`:""} ${u!==1?`opacity="${u}"`:""}></image>${m?"</g>":""}`}function*et(t,o){let e=P(),{id:i,inheritedStyle:s,parent:n,font:r,debug:a,embedFont:c=!0,graphemeImages:u}=o;if(t===null||typeof t=="undefined")return yield,"";if(!it(t)||typeof t.type=="function"){let C;if(!it(t))C=ct(String(t),o);else{if(St(t.type))throw new Error("Class component is not supported.");C=et(t.type(t.props),o)}C.next();let W=yield;return C.next(W).value}let{type:b,props:d}=t,{style:m,children:f}=d,g=e.Node.create();n.insertChild(g,n.getChildCount());let[x,I]=st(g,b,s,m,d),O=x.transform===s.transform;O||(x.transform.__parent=s.transform);let L=typeof f=="undefined"?[]:[].concat(f),$=[],N=0;for(let C of L){let W=et(C,{id:i*L.length+ ++N,parentStyle:x,inheritedStyle:I,isInheritingTransform:!0,parent:g,font:r,embedFont:c,debug:a,graphemeImages:u});W.next(),$.push(W)}let[G,w]=yield;x.position==="absolute"&&g.calculateLayout();let{left:B,top:M,width:z,height:U}=g.getComputedLayout();B+=G,M+=w;let v="";b==="img"?v=pt({id:i,left:B,top:M,width:z,height:U,src:d.src,isInheritingTransform:O,debug:a},x):v=gt({id:i,left:B,top:M,width:z,height:U,isInheritingTransform:O,debug:a},x);for(let C of $)v+=C.next([B,M]).value;return v}import At from"opentype.js";var ot=class{constructor(o){this.fonts=new Map;for(let e of o){let i=e.data,s="buffer"in i?At.parse(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):At.parse(i);this.defaultFont||(this.defaultFont=s),this.fonts.has(e.name)||this.fonts.set(e.name,[]),this.fonts.get(e.name).push([s,e.weight,e.style])}}get({name:o,weight:e,style:i}){if(!this.fonts.has(o))return this.defaultFont;e==="normal"&&(e=400),e==="bold"&&(e=700);let s=[...this.fonts.get(o)];return s.sort(([n,r,a],[c,u,b])=>{if(r!==u)return r?!u||r===e?-1:u===e?1:e===400&&r===500||e===500&&r===400?-1:e===400&&u===500||e===500&&u===400?1:e<400?r<e&&u<e?u-r:r<e?-1:u<e?1:r-u:e<r&&e<u?r-u:e<r?-1:e<u?1:u-r:1;if(a!==b){if(a===i)return-1;if(b===i)return 1}return-1}),s[0][0]}getFont({fontFamily:o,fontWeight:e=400,fontStyle:i="normal"}){return this.get({name:o,weight:e,style:i})}measure(o,e,{fontSize:i,letterSpacing:s=0}){return o.getAdvanceWidth(e,i,{letterSpacing:s/i})}getSVG(o,e,{fontSize:i,top:s,left:n,letterSpacing:r=0}){return s+=o.ascender/o.unitsPerEm*i,o.getPath(e,n,s,i,{letterSpacing:r/i}).toPathData(2)}};function ht({width:t,height:o,content:e},i){return`<svg width="${t}" height="${o}" viewBox="0 0 ${t} ${o}" xmlns="http://www.w3.org/2000/svg">${e}</svg>`}function Ct(t,o){let e=P();if(!e)throw new Error("Satori is not initialized.");let i=new ot(o.fonts),s=e.Node.create();s.setWidth(o.width),s.setHeight(o.height),s.setFlexDirection(e.FLEX_DIRECTION_ROW),s.setFlexWrap(e.WRAP_WRAP),s.setAlignContent(e.ALIGN_AUTO),s.setAlignItems(e.ALIGN_FLEX_START),s.setJustifyContent(e.JUSTIFY_FLEX_START);let n=et(t,{id:1,parentStyle:{},inheritedStyle:{fontSize:16,fontWeight:"normal",fontFamily:"serif",fontStyle:"normal",lineHeight:1.2,color:"black",opacity:1},parent:s,font:i,embedFont:o.embedFont,debug:o.debug,graphemeImages:o.graphemeImages});n.next(),s.calculateLayout(o.width,o.height,e.DIRECTION_LTR);let r=n.next([0,0]).value;return ht({width:o.width,height:o.height,content:r})}export{Ct as default,Gt as init};
//# sourceMappingURL=index.wasm.js.map
{
"name": "satori",
"version": "0.0.12",
"version": "0.0.13",
"description": "Satori converts HTML JSX to SVG string.",

@@ -54,7 +54,9 @@ "module": "./dist/esm/index.js",

"css-background-parser": "^0.1.0",
"css-line-break": "^2.1.0",
"css-to-react-native": "^3.0.0",
"opentype.js": "^1.3.4",
"parse-css-dimension": "^1.1.0",
"text-segmentation": "^1.0.3",
"yoga-layout-prebuilt": "^1.10.0"
}
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc