@svgsketch/core 0.7.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +611 -38
- package/dist/index.d.ts +611 -38
- package/dist/index.js +11 -10
- package/dist/index.mjs +11 -10
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
var It=(M=>(M.LINEAR="linear",M.EASE="ease",M.EASE_IN="ease-in",M.EASE_OUT="ease-out",M.EASE_IN_OUT="ease-in-out",M.EASE_IN_QUAD="ease-in-quad",M.EASE_OUT_QUAD="ease-out-quad",M.EASE_IN_OUT_QUAD="ease-in-out-quad",M.EASE_IN_CUBIC="ease-in-cubic",M.EASE_OUT_CUBIC="ease-out-cubic",M.EASE_IN_OUT_CUBIC="ease-in-out-cubic",M.EASE_IN_QUART="ease-in-quart",M.EASE_OUT_QUART="ease-out-quart",M.EASE_IN_OUT_QUART="ease-in-out-quart",M.EASE_IN_SINE="ease-in-sine",M.EASE_OUT_SINE="ease-out-sine",M.EASE_IN_OUT_SINE="ease-in-out-sine",M.EASE_IN_QUINT="ease-in-quint",M.EASE_OUT_QUINT="ease-out-quint",M.EASE_IN_OUT_QUINT="ease-in-out-quint",M.EASE_IN_EXPO="ease-in-expo",M.EASE_OUT_EXPO="ease-out-expo",M.EASE_IN_OUT_EXPO="ease-in-out-expo",M.EASE_IN_CIRC="ease-in-circ",M.EASE_OUT_CIRC="ease-out-circ",M.EASE_IN_OUT_CIRC="ease-in-out-circ",M.EASE_IN_BACK="ease-in-back",M.EASE_OUT_BACK="ease-out-back",M.EASE_IN_OUT_BACK="ease-in-out-back",M.CUSTOM_BEZIER="custom-bezier",M.LINEAR_FUNCTION="linear-function",M.STEPS="steps",M))(It||{}),_e={linear:null,ease:[.25,.1,.25,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1],"ease-in-quad":[.55,.085,.68,.53],"ease-out-quad":[.25,.46,.45,.94],"ease-in-out-quad":[.455,.03,.515,.955],"ease-in-cubic":[.55,.055,.675,.19],"ease-out-cubic":[.215,.61,.355,1],"ease-in-out-cubic":[.645,.045,.355,1],"ease-in-quart":[.895,.03,.685,.22],"ease-out-quart":[.165,.84,.44,1],"ease-in-out-quart":[.77,0,.175,1],"ease-in-sine":[.47,0,.745,.715],"ease-out-sine":[.39,.575,.565,1],"ease-in-out-sine":[.445,.05,.55,.95],"ease-in-quint":[.755,.05,.855,.06],"ease-out-quint":[.23,1,.32,1],"ease-in-out-quint":[.86,0,.07,1],"ease-in-expo":[.95,.05,.795,.035],"ease-out-expo":[.19,1,.22,1],"ease-in-out-expo":[1,0,0,1],"ease-in-circ":[.6,.04,.98,.335],"ease-out-circ":[.075,.82,.165,1],"ease-in-out-circ":[.785,.135,.15,.86],"ease-in-back":[.6,-.28,.735,.045],"ease-out-back":[.175,.885,.32,1.275],"ease-in-out-back":[.68,-.55,.265,1.55],"custom-bezier":null,"linear-function":null,steps:null};function Pi(r){let e=_e[r];return e?`cubic-bezier(${e.join(", ")})`:"linear"}var vi=[{value:"click",label:"Click"},{value:"mouseenter",label:"Mouse Enter"},{value:"mouseleave",label:"Mouse Leave"},{value:"focus",label:"Focus"},{value:"blur",label:"Blur"},{value:"load",label:"Page Load"}];var Et=(l=>(l.LINEAR="linear",l.QUADRATIC="quadratic",l.CUBIC="cubic",l.CATMULL_ROM="catmull-rom",l.ARC="arc",l.BASIS="basis",l.MIXED="mixed",l))(Et||{}),xr=(n=>(n.SMOOTH="smooth",n.CORNER="corner",n.SYMMETRIC="symmetric",n))(xr||{});var U=2;function Sr(r){let e=Array.isArray(r.library)?[...r.library]:[],t=new Set(e.map(u=>u.id));if(Array.isArray(r.symbols))for(let u of r.symbols)!u||t.has(u.id)||(e.push({...u,kind:"symbol"}),t.add(u.id));if(Array.isArray(r.markers))for(let u of r.markers)!u||t.has(u.id)||(e.push({...u,kind:"marker"}),t.add(u.id));let n=new Map,i=(u,c)=>{let{id:h,sourceId:d,...m}=u,p=JSON.stringify({kind:c,...m}),y=n.get(p);if(y)return y;let g=t.has(u.id)?`grd-${oe()}`:u.id;t.add(g),n.set(p,g);let $=c==="linear-gradient"?{kind:"linear-gradient",id:g,name:u.sourceId??g,sourceId:u.sourceId,gradient:Ft(u)}:{kind:"radial-gradient",id:g,name:u.sourceId??g,sourceId:u.sourceId,gradient:Ft(u)};return e.push($),g},a=new Map;if(Array.isArray(r.customPatterns))for(let u of r.customPatterns){if(!u)continue;let c=t.has(u.id)?`pat-${oe()}`:u.id;t.add(c),a.set(u.id,c),e.push(_r(u,c))}let o=u=>{if(u.customPatternId){let w=a.get(u.customPatternId);if(w)return w}let{id:c,sourceId:h,customPatternId:d,...m}=u,p=JSON.stringify({kind:"pattern",...m}),y=n.get(p);if(y)return y;let g=t.has(u.id)?`pat-${oe()}`:u.id;t.add(g),n.set(p,g);let $={kind:"pattern",id:g,name:u.sourceId??g,sourceId:u.sourceId,pattern:m};return e.push($),g};for(let u of r.shapes??[]){let c=u.state;if(!c)continue;let h=c.fillGradient;h&&(h.type==="linear-gradient"||h.type==="radial-gradient"?c.fillLibraryId=i(h,h.type):h.type==="pattern"&&(c.fillLibraryId=o(h)));let d=c.strokeGradient;d&&(d.type==="linear-gradient"||d.type==="radial-gradient"?c.strokeLibraryId=i(d,d.type):d.type==="pattern"&&(c.strokeLibraryId=o(d)));let m=c.filters;if(Array.isArray(m)&&m.length>0){let p=l(m,c,u.id);c.filterLibraryIds=[p]}}return r.library=e,r;function l(u,c,h){let d={filters:u,colorInterpolation:c.filterColorInterpolation,filterUnits:c.filterUnits,primitiveUnits:c.primitiveUnits,x:c.filterX,y:c.filterY,width:c.filterWidth,height:c.filterHeight},m=JSON.stringify({kind:"filter",...d}),p=n.get(m);if(p)return p;let y=`filter-${h}`,g=t.has(y)?`flt-${oe()}`:y;t.add(g),n.set(m,g);let $={kind:"filter",id:g,name:g,filters:d.filters,...d.colorInterpolation?{colorInterpolation:d.colorInterpolation}:{},...d.filterUnits?{filterUnits:d.filterUnits}:{},...d.primitiveUnits?{primitiveUnits:d.primitiveUnits}:{},...d.x!==void 0?{x:d.x}:{},...d.y!==void 0?{y:d.y}:{},...d.width!==void 0?{width:d.width}:{},...d.height!==void 0?{height:d.height}:{}};return e.push($),g}}function _r(r,e){return{kind:"pattern",id:e,name:r.name??e,pattern:{type:"pattern",svgContent:r.svgContent,width:r.width,height:r.height,patternType:"custom",color:"#000000",backgroundColor:"transparent",scale:1,rotation:0,opacity:1,patternUnits:"userSpaceOnUse"}}}function Ft(r){let{id:e,sourceId:t,...n}=r;return n}var ke=0;function oe(){return ke=ke+1&65535,`${Date.now().toString(36)}-${ke.toString(36)}`}var Lt=Object.freeze({1:Sr});function kr(r){let e=r.schemaVersion;return typeof e!="number"||!Number.isFinite(e)||e<1?1:Math.floor(e)}function we(r,e=Lt){let t=JSON.parse(JSON.stringify(r)),n=kr(t);if(n>U)return t;if(n===U)return t.schemaVersion=U,t;for(;n<U;){let i=e[n];if(!i)throw new Error(`[svgsketch/core] No migration registered for schema version ${n} \u2192 ${n+1}. Cannot safely upgrade this document to version ${U}.`);t=i(t),n+=1}return t.schemaVersion=U,t}var wr=new Set(["circle","rectangle","square","ellipse","text","triangle","ngon","star","cross","ring","spiral","gear","arrow","line","spline","polyline","image"]);function le(r){let e=[],t=[];if(r==null||typeof r!="object")return e.push({path:"",message:"Snapshot must be a non-null object",severity:"error"}),{valid:!1,errors:e,warnings:t};let n=r;if(n.schemaVersion!==void 0&&(typeof n.schemaVersion!="number"||!Number.isInteger(n.schemaVersion)?e.push({path:"schemaVersion",message:"schemaVersion must be an integer",severity:"error"}):n.schemaVersion>U&&t.push({path:"schemaVersion",message:`schemaVersion ${n.schemaVersion} is newer than supported (${U})`,severity:"warning"})),!Array.isArray(n.shapes))e.push({path:"shapes",message:"shapes must be an array",severity:"error"});else{let i=new Set;n.shapes.forEach((a,o)=>{Tr(a,`shapes[${o}]`,e,t,i)})}if(!Array.isArray(n.viewboxes))e.push({path:"viewboxes",message:"viewboxes must be an array",severity:"error"});else{let i=new Set;n.viewboxes.forEach((a,o)=>{Rr(a,`viewboxes[${o}]`,e,t,i)})}return n.guides!==void 0&&(Array.isArray(n.guides)?n.guides.forEach((i,a)=>{Ar(i,`guides[${a}]`,e,t)}):e.push({path:"guides",message:"guides must be an array",severity:"error"})),n.groups!==void 0&&(Array.isArray(n.groups)?n.groups.forEach((i,a)=>{Cr(i,`groups[${a}]`,e)}):e.push({path:"groups",message:"groups must be an array",severity:"error"})),n.clipMaskGroups!==void 0&&(Array.isArray(n.clipMaskGroups)?n.clipMaskGroups.forEach((i,a)=>{Ir(i,`clipMaskGroups[${a}]`,e)}):e.push({path:"clipMaskGroups",message:"clipMaskGroups must be an array",severity:"error"})),n.measurements!==void 0&&(Array.isArray(n.measurements)||e.push({path:"measurements",message:"measurements must be an array",severity:"error"})),{valid:e.length===0,errors:e,warnings:t}}function Tr(r,e,t,n,i){if(r===null||typeof r!="object"){t.push({path:e,message:"Shape must be a non-null object",severity:"error"});return}let a=r;typeof a.id!="string"||a.id.length===0?t.push({path:`${e}.id`,message:"Shape id must be a non-empty string",severity:"error"}):i.has(a.id)?t.push({path:`${e}.id`,message:`Duplicate shape id: "${a.id}"`,severity:"error"}):i.add(a.id),typeof a.type!="string"?t.push({path:`${e}.type`,message:"Shape type must be a string",severity:"error"}):wr.has(a.type)||n.push({path:`${e}.type`,message:`Unknown shape type: "${a.type}"`,severity:"warning"}),a.state===void 0||a.state===null||typeof a.state!="object"?t.push({path:`${e}.state`,message:"Shape state must be a non-null object",severity:"error"}):Mr(a.state,`${e}.state`,t,n)}var Pr=/^\s*\{\{\s*[\w.\-]+\s*\}\}\s*$/;function vr(r){return typeof r=="number"?isFinite(r):typeof r=="string"?Pr.test(r):!1}function Mr(r,e,t,n){let i=["x","y","width","height","radius","rx","ry","rotation","fontSize"];for(let o of i)r[o]!==void 0&&!vr(r[o])&&t.push({path:`${e}.${o}`,message:`${o} must be a finite number or a {{variable}} reference`,severity:"error"});let a=["width","height","radius","fontSize"];for(let o of a){let l=r[o];typeof l=="number"&&l<=0&&n.push({path:`${e}.${o}`,message:`${o} should be positive (got ${l})`,severity:"warning"})}}function Rr(r,e,t,n,i){if(r===null||typeof r!="object"){t.push({path:e,message:"Viewbox must be a non-null object",severity:"error"});return}let a=r;typeof a.id!="string"||a.id.length===0?t.push({path:`${e}.id`,message:"Viewbox id must be a non-empty string",severity:"error"}):i.has(a.id)?t.push({path:`${e}.id`,message:`Duplicate viewbox id: "${a.id}"`,severity:"error"}):i.add(a.id);for(let o of["x","y","width","height"])(typeof a[o]!="number"||!isFinite(a[o]))&&t.push({path:`${e}.${o}`,message:`${o} must be a finite number`,severity:"error"});typeof a.width=="number"&&a.width<=0&&t.push({path:`${e}.width`,message:"Viewbox width must be positive",severity:"error"}),typeof a.height=="number"&&a.height<=0&&t.push({path:`${e}.height`,message:"Viewbox height must be positive",severity:"error"})}function Ar(r,e,t,n){if(r===null||typeof r!="object"){t.push({path:e,message:"Guide must be a non-null object",severity:"error"});return}let i=r;(typeof i.id!="string"||i.id.length===0)&&t.push({path:`${e}.id`,message:"Guide id must be a non-empty string",severity:"error"}),i.orientation!=="horizontal"&&i.orientation!=="vertical"&&t.push({path:`${e}.orientation`,message:'Guide orientation must be "horizontal" or "vertical"',severity:"error"}),(typeof i.position!="number"||!isFinite(i.position))&&t.push({path:`${e}.position`,message:"Guide position must be a finite number",severity:"error"})}function Cr(r,e,t){if(r===null||typeof r!="object"){t.push({path:e,message:"Group must be a non-null object",severity:"error"});return}let n=r;(typeof n.id!="string"||n.id.length===0)&&t.push({path:`${e}.id`,message:"Group id must be a non-empty string",severity:"error"}),n.parentId!==null&&typeof n.parentId!="string"&&t.push({path:`${e}.parentId`,message:"Group parentId must be a string or null",severity:"error"})}function Ir(r,e,t){if(r===null||typeof r!="object"){t.push({path:e,message:"ClipMaskGroup must be a non-null object",severity:"error"});return}let n=r;(typeof n.id!="string"||n.id.length===0)&&t.push({path:`${e}.id`,message:"ClipMaskGroup id must be a non-empty string",severity:"error"}),n.type!=="clip"&&n.type!=="mask"&&t.push({path:`${e}.type`,message:'ClipMaskGroup type must be "clip" or "mask"',severity:"error"}),(typeof n.clipShapeId!="string"||n.clipShapeId.length===0)&&t.push({path:`${e}.clipShapeId`,message:"clipShapeId must be a non-empty string",severity:"error"}),Array.isArray(n.contentShapeIds)||t.push({path:`${e}.contentShapeIds`,message:"contentShapeIds must be an array",severity:"error"})}function T(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?`id-${crypto.randomUUID()}`:`id-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}function Te(r={}){let e={schemaVersion:U,shapes:r.shapes?r.shapes.map(t=>({...t})):[],viewboxes:r.viewboxes?r.viewboxes.map(t=>({...t})):[]};return r.metadata&&(e.documentMetadata={title:"",description:"",author:"",keywords:[],license:"",licenseUrl:"",language:"en",customMetadata:{},...r.metadata}),e}function Er(r){let{type:e,id:t,...n}=r,i={};for(let[a,o]of Object.entries(n))o!==void 0&&(i[a]=o);return{id:t??T(),type:e,state:i}}function ue(r,e,t,n,i){return{id:i??T(),x:r,y:e,width:t,height:n}}var Fr=["schemaVersion","documentMetadata","templateVariables","viewboxes","guides","measurements","groups","clipMaskGroups","customPatterns","symbols","animationTimeline","shapes"];function Pe(r,e={}){let{indent:t=2,trailingNewline:n=!0,validate:i=!1}=e;if(i){let l=le(r);if(!l.valid){let u=l.errors.map(c=>` ${c.path}: ${c.message}`).join(`
|
|
1
|
+
var Gt=(T=>(T.LINEAR="linear",T.EASE="ease",T.EASE_IN="ease-in",T.EASE_OUT="ease-out",T.EASE_IN_OUT="ease-in-out",T.EASE_IN_QUAD="ease-in-quad",T.EASE_OUT_QUAD="ease-out-quad",T.EASE_IN_OUT_QUAD="ease-in-out-quad",T.EASE_IN_CUBIC="ease-in-cubic",T.EASE_OUT_CUBIC="ease-out-cubic",T.EASE_IN_OUT_CUBIC="ease-in-out-cubic",T.EASE_IN_QUART="ease-in-quart",T.EASE_OUT_QUART="ease-out-quart",T.EASE_IN_OUT_QUART="ease-in-out-quart",T.EASE_IN_SINE="ease-in-sine",T.EASE_OUT_SINE="ease-out-sine",T.EASE_IN_OUT_SINE="ease-in-out-sine",T.EASE_IN_QUINT="ease-in-quint",T.EASE_OUT_QUINT="ease-out-quint",T.EASE_IN_OUT_QUINT="ease-in-out-quint",T.EASE_IN_EXPO="ease-in-expo",T.EASE_OUT_EXPO="ease-out-expo",T.EASE_IN_OUT_EXPO="ease-in-out-expo",T.EASE_IN_CIRC="ease-in-circ",T.EASE_OUT_CIRC="ease-out-circ",T.EASE_IN_OUT_CIRC="ease-in-out-circ",T.EASE_IN_BACK="ease-in-back",T.EASE_OUT_BACK="ease-out-back",T.EASE_IN_OUT_BACK="ease-in-out-back",T.CUSTOM_BEZIER="custom-bezier",T.LINEAR_FUNCTION="linear-function",T.STEPS="steps",T))(Gt||{}),Me={linear:null,ease:[.25,.1,.25,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1],"ease-in-quad":[.55,.085,.68,.53],"ease-out-quad":[.25,.46,.45,.94],"ease-in-out-quad":[.455,.03,.515,.955],"ease-in-cubic":[.55,.055,.675,.19],"ease-out-cubic":[.215,.61,.355,1],"ease-in-out-cubic":[.645,.045,.355,1],"ease-in-quart":[.895,.03,.685,.22],"ease-out-quart":[.165,.84,.44,1],"ease-in-out-quart":[.77,0,.175,1],"ease-in-sine":[.47,0,.745,.715],"ease-out-sine":[.39,.575,.565,1],"ease-in-out-sine":[.445,.05,.55,.95],"ease-in-quint":[.755,.05,.855,.06],"ease-out-quint":[.23,1,.32,1],"ease-in-out-quint":[.86,0,.07,1],"ease-in-expo":[.95,.05,.795,.035],"ease-out-expo":[.19,1,.22,1],"ease-in-out-expo":[1,0,0,1],"ease-in-circ":[.6,.04,.98,.335],"ease-out-circ":[.075,.82,.165,1],"ease-in-out-circ":[.785,.135,.15,.86],"ease-in-back":[.6,-.28,.735,.045],"ease-out-back":[.175,.885,.32,1.275],"ease-in-out-back":[.68,-.55,.265,1.55],"custom-bezier":null,"linear-function":null,steps:null};function es(r){let e=Me[r];return e?`cubic-bezier(${e.join(", ")})`:"linear"}var ts=[{value:"click",label:"Click"},{value:"mouseenter",label:"Mouse Enter"},{value:"mouseleave",label:"Mouse Leave"},{value:"focus",label:"Focus"},{value:"blur",label:"Blur"},{value:"load",label:"Page Load"}];var Ut=(l=>(l.LINEAR="linear",l.QUADRATIC="quadratic",l.CUBIC="cubic",l.CATMULL_ROM="catmull-rom",l.ARC="arc",l.BASIS="basis",l.MIXED="mixed",l))(Ut||{}),Mr=(n=>(n.SMOOTH="smooth",n.CORNER="corner",n.SYMMETRIC="symmetric",n))(Mr||{});function is(r){return r==="color"?"live":"stamped"}var j=2;function Cr(r){let e=Array.isArray(r.library)?[...r.library]:[],t=new Set(e.map(u=>u.id));if(Array.isArray(r.symbols))for(let u of r.symbols)!u||t.has(u.id)||(e.push({...u,kind:"symbol"}),t.add(u.id));if(Array.isArray(r.markers))for(let u of r.markers)!u||t.has(u.id)||(e.push({...u,kind:"marker"}),t.add(u.id));let n=new Map,s=(u,c)=>{let{id:d,sourceId:p,...m}=u,h=JSON.stringify({kind:c,...m}),y=n.get(h);if(y)return y;let g=t.has(u.id)?`grd-${fe()}`:u.id;t.add(g),n.set(h,g);let b=c==="linear-gradient"?{kind:"linear-gradient",id:g,name:u.sourceId??g,sourceId:u.sourceId,gradient:Nt(u)}:{kind:"radial-gradient",id:g,name:u.sourceId??g,sourceId:u.sourceId,gradient:Nt(u)};return e.push(b),g},a=new Map;if(Array.isArray(r.customPatterns))for(let u of r.customPatterns){if(!u)continue;let c=t.has(u.id)?`pat-${fe()}`:u.id;t.add(c),a.set(u.id,c),e.push(Rr(u,c))}let o=u=>{if(u.customPatternId){let _=a.get(u.customPatternId);if(_)return _}let{id:c,sourceId:d,customPatternId:p,...m}=u,h=JSON.stringify({kind:"pattern",...m}),y=n.get(h);if(y)return y;let g=t.has(u.id)?`pat-${fe()}`:u.id;t.add(g),n.set(h,g);let b={kind:"pattern",id:g,name:u.sourceId??g,sourceId:u.sourceId,pattern:m};return e.push(b),g};for(let u of r.shapes??[]){let c=u.state;if(!c)continue;let d=c.fillGradient;d&&(d.type==="linear-gradient"||d.type==="radial-gradient"?c.fillLibraryId=s(d,d.type):d.type==="pattern"&&(c.fillLibraryId=o(d)));let p=c.strokeGradient;p&&(p.type==="linear-gradient"||p.type==="radial-gradient"?c.strokeLibraryId=s(p,p.type):p.type==="pattern"&&(c.strokeLibraryId=o(p)));let m=c.filters;if(Array.isArray(m)&&m.length>0){let h=l(m,c,u.id);c.filterLibraryIds=[h]}}return r.library=e,r;function l(u,c,d){let p={filters:u,colorInterpolation:c.filterColorInterpolation,filterUnits:c.filterUnits,primitiveUnits:c.primitiveUnits,x:c.filterX,y:c.filterY,width:c.filterWidth,height:c.filterHeight},m=JSON.stringify({kind:"filter",...p}),h=n.get(m);if(h)return h;let y=`filter-${d}`,g=t.has(y)?`flt-${fe()}`:y;t.add(g),n.set(m,g);let b={kind:"filter",id:g,name:g,filters:p.filters,...p.colorInterpolation?{colorInterpolation:p.colorInterpolation}:{},...p.filterUnits?{filterUnits:p.filterUnits}:{},...p.primitiveUnits?{primitiveUnits:p.primitiveUnits}:{},...p.x!==void 0?{x:p.x}:{},...p.y!==void 0?{y:p.y}:{},...p.width!==void 0?{width:p.width}:{},...p.height!==void 0?{height:p.height}:{}};return e.push(b),g}}function Rr(r,e){return{kind:"pattern",id:e,name:r.name??e,pattern:{type:"pattern",svgContent:r.svgContent,width:r.width,height:r.height,patternType:"custom",color:"#000000",backgroundColor:"transparent",scale:1,rotation:0,opacity:1,patternUnits:"userSpaceOnUse"}}}function Nt(r){let{id:e,sourceId:t,...n}=r;return n}var Ce=0;function fe(){return Ce=Ce+1&65535,`${Date.now().toString(36)}-${Ce.toString(36)}`}var Vt=Object.freeze({1:Cr});function Ar(r){let e=r.schemaVersion;return typeof e!="number"||!Number.isFinite(e)||e<1?1:Math.floor(e)}function Re(r,e=Vt){let t=JSON.parse(JSON.stringify(r)),n=Ar(t);if(n>j)return t;if(n===j)return t.schemaVersion=j,t;for(;n<j;){let s=e[n];if(!s)throw new Error(`[svgsketch/core] No migration registered for schema version ${n} \u2192 ${n+1}. Cannot safely upgrade this document to version ${j}.`);t=s(t),n+=1}return t.schemaVersion=j,t}var Ir=new Set(["circle","rectangle","square","ellipse","text","triangle","ngon","star","cross","ring","spiral","gear","arrow","line","path","polyline","image"]);function me(r){let e=[],t=[];if(r==null||typeof r!="object")return e.push({path:"",message:"Snapshot must be a non-null object",severity:"error"}),{valid:!1,errors:e,warnings:t};let n=r;if(n.schemaVersion!==void 0&&(typeof n.schemaVersion!="number"||!Number.isInteger(n.schemaVersion)?e.push({path:"schemaVersion",message:"schemaVersion must be an integer",severity:"error"}):n.schemaVersion>j&&t.push({path:"schemaVersion",message:`schemaVersion ${n.schemaVersion} is newer than supported (${j})`,severity:"warning"})),!Array.isArray(n.shapes))e.push({path:"shapes",message:"shapes must be an array",severity:"error"});else{let s=new Set;n.shapes.forEach((a,o)=>{Lr(a,`shapes[${o}]`,e,t,s)})}if(!Array.isArray(n.viewboxes))e.push({path:"viewboxes",message:"viewboxes must be an array",severity:"error"});else{let s=new Set;n.viewboxes.forEach((a,o)=>{Or(a,`viewboxes[${o}]`,e,t,s)})}return n.guides!==void 0&&(Array.isArray(n.guides)?n.guides.forEach((s,a)=>{Gr(s,`guides[${a}]`,e,t)}):e.push({path:"guides",message:"guides must be an array",severity:"error"})),n.groups!==void 0&&(Array.isArray(n.groups)?n.groups.forEach((s,a)=>{Ur(s,`groups[${a}]`,e)}):e.push({path:"groups",message:"groups must be an array",severity:"error"})),n.clipMaskGroups!==void 0&&(Array.isArray(n.clipMaskGroups)?n.clipMaskGroups.forEach((s,a)=>{Nr(s,`clipMaskGroups[${a}]`,e)}):e.push({path:"clipMaskGroups",message:"clipMaskGroups must be an array",severity:"error"})),n.measurements!==void 0&&(Array.isArray(n.measurements)||e.push({path:"measurements",message:"measurements must be an array",severity:"error"})),{valid:e.length===0,errors:e,warnings:t}}function Lr(r,e,t,n,s){if(r===null||typeof r!="object"){t.push({path:e,message:"Shape must be a non-null object",severity:"error"});return}let a=r;typeof a.id!="string"||a.id.length===0?t.push({path:`${e}.id`,message:"Shape id must be a non-empty string",severity:"error"}):s.has(a.id)?t.push({path:`${e}.id`,message:`Duplicate shape id: "${a.id}"`,severity:"error"}):s.add(a.id),typeof a.type!="string"?t.push({path:`${e}.type`,message:"Shape type must be a string",severity:"error"}):Ir.has(a.type)||n.push({path:`${e}.type`,message:`Unknown shape type: "${a.type}"`,severity:"warning"}),a.state===void 0||a.state===null||typeof a.state!="object"?t.push({path:`${e}.state`,message:"Shape state must be a non-null object",severity:"error"}):Br(a.state,`${e}.state`,t,n)}var Er=/^\s*\{\{\s*[\w.\-]+\s*\}\}\s*$/;function Dr(r){return typeof r=="number"?isFinite(r):typeof r=="string"?Er.test(r):!1}function Br(r,e,t,n){let s=["x","y","width","height","radius","rx","ry","rotation","fontSize"];for(let o of s)r[o]!==void 0&&!Dr(r[o])&&t.push({path:`${e}.${o}`,message:`${o} must be a finite number or a {{variable}} reference`,severity:"error"});let a=["width","height","radius","fontSize"];for(let o of a){let l=r[o];typeof l=="number"&&l<=0&&n.push({path:`${e}.${o}`,message:`${o} should be positive (got ${l})`,severity:"warning"})}}function Or(r,e,t,n,s){if(r===null||typeof r!="object"){t.push({path:e,message:"Viewbox must be a non-null object",severity:"error"});return}let a=r;typeof a.id!="string"||a.id.length===0?t.push({path:`${e}.id`,message:"Viewbox id must be a non-empty string",severity:"error"}):s.has(a.id)?t.push({path:`${e}.id`,message:`Duplicate viewbox id: "${a.id}"`,severity:"error"}):s.add(a.id);for(let o of["x","y","width","height"])(typeof a[o]!="number"||!isFinite(a[o]))&&t.push({path:`${e}.${o}`,message:`${o} must be a finite number`,severity:"error"});typeof a.width=="number"&&a.width<=0&&t.push({path:`${e}.width`,message:"Viewbox width must be positive",severity:"error"}),typeof a.height=="number"&&a.height<=0&&t.push({path:`${e}.height`,message:"Viewbox height must be positive",severity:"error"})}function Gr(r,e,t,n){if(r===null||typeof r!="object"){t.push({path:e,message:"Guide must be a non-null object",severity:"error"});return}let s=r;(typeof s.id!="string"||s.id.length===0)&&t.push({path:`${e}.id`,message:"Guide id must be a non-empty string",severity:"error"}),s.orientation!=="horizontal"&&s.orientation!=="vertical"&&t.push({path:`${e}.orientation`,message:'Guide orientation must be "horizontal" or "vertical"',severity:"error"}),(typeof s.position!="number"||!isFinite(s.position))&&t.push({path:`${e}.position`,message:"Guide position must be a finite number",severity:"error"})}function Ur(r,e,t){if(r===null||typeof r!="object"){t.push({path:e,message:"Group must be a non-null object",severity:"error"});return}let n=r;(typeof n.id!="string"||n.id.length===0)&&t.push({path:`${e}.id`,message:"Group id must be a non-empty string",severity:"error"}),n.parentId!==null&&typeof n.parentId!="string"&&t.push({path:`${e}.parentId`,message:"Group parentId must be a string or null",severity:"error"})}function Nr(r,e,t){if(r===null||typeof r!="object"){t.push({path:e,message:"ClipMaskGroup must be a non-null object",severity:"error"});return}let n=r;(typeof n.id!="string"||n.id.length===0)&&t.push({path:`${e}.id`,message:"ClipMaskGroup id must be a non-empty string",severity:"error"}),n.type!=="clip"&&n.type!=="mask"&&t.push({path:`${e}.type`,message:'ClipMaskGroup type must be "clip" or "mask"',severity:"error"}),(typeof n.clipShapeId!="string"||n.clipShapeId.length===0)&&t.push({path:`${e}.clipShapeId`,message:"clipShapeId must be a non-empty string",severity:"error"}),Array.isArray(n.contentShapeIds)||t.push({path:`${e}.contentShapeIds`,message:"contentShapeIds must be an array",severity:"error"})}function v(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?`id-${crypto.randomUUID()}`:`id-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}function Ae(r={}){let e={schemaVersion:j,shapes:r.shapes?r.shapes.map(t=>({...t})):[],viewboxes:r.viewboxes?r.viewboxes.map(t=>({...t})):[]};return r.metadata&&(e.documentMetadata={title:"",description:"",author:"",keywords:[],license:"",licenseUrl:"",language:"en",customMetadata:{},...r.metadata}),e}function Vr(r){let{type:e,id:t,...n}=r,s={};for(let[a,o]of Object.entries(n))o!==void 0&&(s[a]=o);return{id:t??v(),type:e,state:s}}function ge(r,e,t,n,s){return{id:s??v(),x:r,y:e,width:t,height:n}}var zr=["schemaVersion","documentMetadata","templateVariables","viewboxes","guides","measurements","groups","clipMaskGroups","customPatterns","symbols","animationTimeline","shapes"];function Ie(r,e={}){let{indent:t=2,trailingNewline:n=!0,validate:s=!1}=e;if(s){let l=me(r);if(!l.valid){let u=l.errors.map(c=>` ${c.path}: ${c.message}`).join(`
|
|
2
2
|
`);throw new Error(`Invalid document:
|
|
3
|
-
${u}`)}}let a={};for(let l of
|
|
4
|
-
`:o}function
|
|
3
|
+
${u}`)}}let a={};for(let l of zr){let u=r[l];if(u!==void 0)switch(l){case"shapes":a[l]=u.map(Wr);break;case"viewboxes":case"guides":case"measurements":case"groups":case"clipMaskGroups":case"symbols":case"customPatterns":a[l]=jr(u).map(ae);break;case"documentMetadata":a[l]=ae(u);break;case"animationTimeline":a[l]=ae(u);break;default:a[l]=u}}let o=JSON.stringify(a,null,t);return n?o+`
|
|
4
|
+
`:o}function Le(r,e={}){let{validate:t=!0,migrate:n=!0}=e,s;try{s=JSON.parse(r)}catch(o){throw new Error(`Failed to parse .svgs document: ${o.message}`)}if(s===null||typeof s!="object"||Array.isArray(s))throw new Error("Invalid .svgs document: root must be a JSON object");let a=s;if(n&&(a=Re(a)),t){let o=me(a);if(!o.valid){let l=o.errors.map(u=>` ${u.path}: ${u.message}`).join(`
|
|
5
5
|
`);throw new Error(`Invalid .svgs document:
|
|
6
|
-
${l}`)}}return a}function Lr(r){return[...r].sort((e,t)=>e.id.localeCompare(t.id))}function re(r){if(r==null)return r;if(Array.isArray(r))return r.map(re);if(typeof r!="object")return r;let e={},t=Object.keys(r).sort();for(let n of t)e[n]=re(r[n]);return e}function Dr(r){let e={};return e.id=r.id,e.type=r.type,e.state=re(r.state),e}var N=/\{\{\s*([\w.\-]+)\s*\}\}/g;function Me(r,e){return r.replace(N,(t,n)=>{let i=e[n];return i!==void 0?String(i):t})}function Re(r,e={}){let t={};if(r.templateVariables)for(let i of r.templateVariables)i.defaultValue!==void 0&&i.defaultValue!==""&&(t[i.name]=i.defaultValue);if(Object.assign(t,e),Object.keys(t).length===0)return JSON.parse(JSON.stringify(r));let n=JSON.parse(JSON.stringify(r));for(let i of n.shapes)ce(i.state,t);if(n.documentMetadata){let i=n.documentMetadata;ce(i,t)}return n}function ce(r,e){for(let t of Object.keys(r)){let n=r[t];if(typeof n=="string"){if(N.lastIndex=0,N.test(n)){N.lastIndex=0;let i=Me(n,e);if(Or(n)){let a=Number(i);if(!isNaN(a)&&Br(t)){r[t]=a;continue}}r[t]=i}}else if(Array.isArray(n))for(let i=0;i<n.length;i++)typeof n[i]=="string"?(N.lastIndex=0,N.test(n[i])&&(N.lastIndex=0,n[i]=Me(n[i],e))):n[i]!==null&&typeof n[i]=="object"&&ce(n[i],e);else n!==null&&typeof n=="object"&&ce(n,e)}}function Or(r){return/^\s*\{\{\s*[\w.\-]+\s*\}\}\s*$/.test(r)}var Gr=new Set(["x","y","width","height","radius","rx","ry","cx","cy","x1","y1","x2","y2","fontSize","borderWidth","cornerRadius","opacity","fillOpacity","strokeOpacity","rotation","skewX","skewY","scaleX","scaleY","letterSpacing","wordSpacing","lineHeight","sides","arms","innerRadiusPercent","armWidthPercent","teeth","toothDepthPercent","holeRadiusPercent","turns","thicknessPercent","direction","headWidthPercent","headLengthPercent","shaftWidthPercent","shiftAngle","dashLength","gapLength","textPathStartOffset","imageOpacity"]);function Br(r){return Gr.has(r)}function Ae(r){let e=r.templateVariables??[],t=new Set(e.map(a=>a.name)),n=new Set;for(let a of r.shapes)de(a.state,n);r.documentMetadata&&de(r.documentMetadata,n);let i=[...n].filter(a=>!t.has(a)).sort();return{defined:[...e],undeclared:i}}function de(r,e){for(let t of Object.values(r))if(typeof t=="string"){let n;for(N.lastIndex=0;(n=N.exec(t))!==null;)e.add(n[1])}else if(Array.isArray(t))for(let n of t)if(typeof n=="string"){let i;for(N.lastIndex=0;(i=N.exec(n))!==null;)e.add(i[1])}else n!==null&&typeof n=="object"&&de(n,e);else t!==null&&typeof t=="object"&&de(t,e)}function Ur(r){let e={};for(let t of r){let n=t.indexOf("=");if(n===-1)throw new Error(`Invalid variable format: "${t}". Expected "name=value".`);let i=t.slice(0,n).trim(),a=t.slice(n+1);if(!i)throw new Error(`Invalid variable format: "${t}". Variable name cannot be empty.`);e[i]=a}return e}var Nr=3,Vr=12;function zr(r){return r==null||!Number.isFinite(r)?3:r<0?0:r>12?12:Math.floor(r)}function Ie(r,e){if(!Number.isFinite(r))return r;let t=Math.pow(10,e);return Math.round(r*t)/t}var jr=/-?\d+(?:\.\d+)?(?:[eE][-+]?\d+)?/g;function Dt(r,e){return r.replace(jr,t=>{let n=parseFloat(t);return Number.isFinite(n)?String(Ie(n,e)):t})}var Wr=new Set(["rawTransform","strokeDasharray","filterX","filterY","filterWidth","filterHeight","cssClipPath"]),Hr=new Set(["metadata","customMetadata","customAttrs","customData","bindings","richTextData","cssMaskProperties","rawMetadata"]);function z(r,e,t){if(e==null)return e;if(typeof e=="number")return Ie(e,t);if(typeof e=="string")return Wr.has(r)?Dt(e,t):e;if(typeof e=="boolean")return e;if(Array.isArray(e))return e.map(n=>z(r,n,t));if(typeof e=="object"){if(Hr.has(r))return e;if(r==="symbolOverrides"){let i={};for(let[a,o]of Object.entries(e))i[a]=z("state",o,t);return i}let n={};for(let[i,a]of Object.entries(e))n[i]=z(i,a,t);return n}return e}function Ce(r,e){return{id:r.id,type:r.type,state:z("state",r.state,e)}}function Xr(r,e){let t={...r,shapes:r.shapes.map(n=>Ce(n,e)),viewboxes:r.viewboxes.map(n=>z("viewbox",n,e))};return r.guides&&(t.guides=r.guides.map(n=>z("guide",n,e))),r.measurements&&(t.measurements=r.measurements.map(n=>z("measurement",n,e))),r.animationTimeline&&(t.animationTimeline=z("animationTimeline",r.animationTimeline,e)),r.symbols&&(t.symbols=r.symbols.map(n=>({...n,shapes:n.shapes.map(i=>Ce(i,e))}))),r.markers&&(t.markers=r.markers.map(n=>z("marker",n,e))),r.customPatterns&&(t.customPatterns=r.customPatterns.map(n=>z("customPattern",n,e))),t}function pe(r,e,t=-90){let n=[],i=t*Math.PI/180;for(let a=0;a<r;a++){let o=i+a*2*Math.PI/r;n.push({x:e*Math.cos(o),y:e*Math.sin(o)})}return n}function Le(r,e,t,n=-90){let i=[],a=e*(t/100),o=n*Math.PI/180;for(let l=0;l<r*2;l++){let u=o+l*Math.PI/r,c=l%2===0?e:a;i.push({x:c*Math.cos(u),y:c*Math.sin(u)})}return i}function De(r,e,t=0){let n=r*(e/100)/2,i=[{x:-n,y:-r},{x:n,y:-r},{x:n,y:-n},{x:r,y:-n},{x:r,y:n},{x:n,y:n},{x:n,y:r},{x:-n,y:r},{x:-n,y:n},{x:-r,y:n},{x:-r,y:-n},{x:-n,y:-n}];if(t===0)return i;let a=Math.cos(t*Math.PI/180),o=Math.sin(t*Math.PI/180);return i.map(l=>({x:l.x*a-l.y*o,y:l.x*o+l.y*a}))}function Oe(r,e,t,n,i=-90){let o=r*2*(t/100),l=r*(e/100),u=l*(n/100),c=[{x:r,y:0},{x:r-o,y:-l/2},{x:r-o,y:-u/2},{x:-r,y:-u/2},{x:-r,y:u/2},{x:r-o,y:u/2},{x:r-o,y:l/2}];if(i===0)return c;let h=Math.cos(i*Math.PI/180),d=Math.sin(i*Math.PI/180);return c.map(m=>({x:m.x*h-m.y*d,y:m.x*d+m.y*h}))}function Ge(r,e,t,n,i=0){let a=r,o=a*(t/100),l=a*(n/100),u=l/2,c=e*Math.PI/180,h=Math.cos(c),d=Math.sin(c),m=Math.abs(h),p=Math.abs(d),y=Math.max(m,p)||1,g={x:h*(a/y),y:d*(a/y)},$={x:g.x+h*o,y:g.y+d*o},w=Math.min(l,a-u),x=-a+u+w,S=a-u-w,_={x:-a,y:-a},A={x:a,y:-a},C={x:a,y:a},b={x:-a,y:a},k;if(m>=p&&h>0){let P=Math.max(x,Math.min(S,g.y)),R={x:a,y:P-u},F={x:a,y:P+u};k=[_,A,R,$,F,C,b]}else if(m>=p&&h<=0){let P=Math.max(x,Math.min(S,g.y)),R={x:-a,y:P+u},F={x:-a,y:P-u};k=[_,A,C,b,R,$,F]}else if(d<0){let P=Math.max(x,Math.min(S,g.x)),R={x:P-u,y:-a},F={x:P+u,y:-a};k=[_,R,$,F,A,C,b]}else{let P=Math.max(x,Math.min(S,g.x)),R={x:P+u,y:a},F={x:P-u,y:a};k=[_,A,C,R,$,F,b]}if(i===0)return k;let v=Math.cos(i*Math.PI/180),L=Math.sin(i*Math.PI/180);return k.map(P=>({x:P.x*v-P.y*L,y:P.x*L+P.y*v}))}function Be(r,e,t,n,i=0){let a=Math.max(2,Math.round(e)),o=r*(t/100),l=r*(n/100)/2,u=a+1,c=[];for(let g=0;g<u;g++){let $=g/(u-1),w=-r+$*2*r,x=0;g>0&&g<u-1&&(x=g%2===1?o:-o),c.push({x,y:w})}let h=[],d=[];for(let g=0;g<u;g++){if(g===0||g===u-1){h.push({...c[g]}),d.push({...c[g]});continue}let $=c[g-1],w=c[g],x=c[g+1],S=w.x-$.x,_=w.y-$.y,A=Math.hypot(S,_)||1,C=S/A,b=_/A,k=x.x-w.x,v=x.y-w.y,L=Math.hypot(k,v)||1,P=k/L,R=v/L,F=(C+P)/2,I=(b+R)/2,D=Math.hypot(F,I),M,V;D<1e-6?(M=-b,V=C):(M=-I/D,V=F/D),h.push({x:w.x-M*l,y:w.y-V*l}),d.push({x:w.x+M*l,y:w.y+V*l})}let m=[];m.push(h[0]);for(let g=1;g<u-1;g++)m.push(d[g]);m.push(h[u-1]);for(let g=u-2;g>=1;g--)m.push(h[g]);if(i===0)return m;let p=Math.cos(i*Math.PI/180),y=Math.sin(i*Math.PI/180);return m.map(g=>({x:g.x*p-g.y*y,y:g.x*y+g.y*p}))}function Ue(r,e,t,n=0){let i=r,a=Math.max(.3,Math.min(.9,e/100)),o=-i*(t/100),l={x:0,y:i},u={x:0,y:o},c={x:-i*a,y:i*.4},h={x:-i*a,y:-i},d={x:i*a,y:-i},m={x:i*a,y:i*.4},p=[l,c,h,u,d,m,l],y=n===0?p:(()=>{let A=Math.cos(n*Math.PI/180),C=Math.sin(n*Math.PI/180);return p.map(b=>({x:b.x*A-b.y*C,y:b.x*C+b.y*A}))})(),[g,$,w,x,S,_]=y;return`M ${g.x} ${g.y} C ${$.x} ${$.y} ${w.x} ${w.y} ${x.x} ${x.y} C ${S.x} ${S.y} ${_.x} ${_.y} ${g.x} ${g.y} Z`}function Ne(r,e,t,n=0){let i=Math.max(3,Math.round(e)),a=Math.max(.3,Math.min(1,t/100)),o=r,l=o*1.7,u=o*1.15,c=[];for(let b=0;b<i;b++){let v=(90+b/i*360)*Math.PI/180;c.push({x:l/2*Math.cos(v),y:-(u/2)*Math.sin(v)})}let h=.15,d=0;for(let b=0;b<i;b++){let k=c[b],v=c[(b+1)%i];d=Math.max(d,Math.hypot(v.x-k.x,v.y-k.y))}let m=d/(2*(1-h))+.001,p=Math.max(m,d*(.68+a*.35)),y=c.map(b=>{let k=b.y/(u/2);return p*(1-h*k)});function g(b){let k=c[b],v=c[(b+1)%i],L=y[b],P=y[(b+1)%i],R=v.x-k.x,F=v.y-k.y,I=Math.hypot(R,F)||1,D=(L*L-P*P+I*I)/(2*I),M=Math.sqrt(Math.max(0,L*L-D*D)),V=k.x+D/I*R,Q=k.y+D/I*F,J=-F/I,Se=R/I,ee={x:V+J*M,y:Q+Se*M},Y={x:V-J*M,y:Q-Se*M};return ee.x*ee.x+ee.y*ee.y>Y.x*Y.x+Y.y*Y.y?ee:Y}let $=[];for(let b=0;b<i;b++)$.push(g(b));let w=14,x=[];for(let b=0;b<i;b++){let k=c[b],v=y[b],L=$[(b-1+i)%i],P=$[b],R=Math.atan2(L.y-k.y,L.x-k.x),I=Math.atan2(P.y-k.y,P.x-k.x)-R;I<=0&&(I+=2*Math.PI);let D=2*Math.PI-I,M=R+I/2,V=R-D/2,Q={x:k.x+v*Math.cos(M),y:k.y+v*Math.sin(M)},J={x:k.x+v*Math.cos(V),y:k.y+v*Math.sin(V)},ee=Q.x*Q.x+Q.y*Q.y>J.x*J.x+J.y*J.y?I:-D;for(let Y=0;Y<w;Y++){let $r=Y/w,Ct=R+$r*ee;x.push({x:k.x+v*Math.cos(Ct),y:k.y+v*Math.sin(Ct)})}}let S=0;for(let b of x){let k=Math.max(Math.abs(b.x),Math.abs(b.y));k>S&&(S=k)}if(S>0&&S!==o){let b=o/S;for(let k of x)k.x*=b,k.y*=b}let _=b=>{if(n===0)return b;let k=Math.cos(n*Math.PI/180),v=Math.sin(n*Math.PI/180);return{x:b.x*k-b.y*v,y:b.x*v+b.y*k}},A=x.map(_),C=`M ${A[0].x} ${A[0].y}`;for(let b=1;b<A.length;b++)C+=` L ${A[b].x} ${A[b].y}`;return C+=" Z",C}function j(r,e=0,t=0){if(r.length<3)return"";if(e<=0)return r.map((a,o)=>(o===0?"M":"L")+`${a.x},${a.y}`).join(" ")+" Z";let n=Math.min(e,t*.4),i="";for(let a=0;a<r.length;a++){let o=r[(a-1+r.length)%r.length],l=r[a],u=r[(a+1)%r.length],c={x:o.x-l.x,y:o.y-l.y},h=Math.hypot(c.x,c.y);c.x/=h,c.y/=h;let d={x:u.x-l.x,y:u.y-l.y},m=Math.hypot(d.x,d.y);d.x/=m,d.y/=m;let p=Math.min(n,h/2),y=Math.min(n,m/2),g={x:l.x+c.x*p,y:l.y+c.y*p},$={x:l.x+d.x*y,y:l.y+d.y*y};i+=a===0?`M${g.x},${g.y}`:` L${g.x},${g.y}`,i+=` Q${l.x},${l.y} ${$.x},${$.y}`}return i+" Z"}function Ve(r,e,t="evenodd"){let n=r*(e/100),i=t==="nonzero"?1:0;return`M ${r} 0 A ${r} ${r} 0 1 1 ${-r} 0 A ${r} ${r} 0 1 1 ${r} 0 Z M ${n} 0 A ${n} ${n} 0 1 ${i} ${-n} 0 A ${n} ${n} 0 1 ${i} ${n} 0 Z`}function ze(r,e,t,n=1,i=0){let a=r*(t/100),l=Math.round(e*36),u=e*2*Math.PI,c=(r-a/2)/u,h=i*Math.PI/180,d=[],m=[];for(let g=0;g<=l;g++){let $=g/l,w=$*u*n+h,x=c*($*u)+a/2,S=a/2;d.push({x:(x+S*.3)*Math.cos(w),y:(x+S*.3)*Math.sin(w)}),m.push({x:Math.max(0,x-S*.3)*Math.cos(w),y:Math.max(0,x-S*.3)*Math.sin(w)})}let p=`M ${d[0].x} ${d[0].y}`;for(let g=1;g<d.length;g++)p+=` L ${d[g].x} ${d[g].y}`;let y=m[m.length-1];p+=` L ${y.x} ${y.y}`;for(let g=m.length-2;g>=0;g--)p+=` L ${m[g].x} ${m[g].y}`;return p+=" Z",p}var Yr=.2;function Bt(r,e,t,n=0){let i=e*(t/100),a=e,o=e-i,l=2*Math.PI/r,u=l*Yr/2,c=l/4,h=n*Math.PI/180,d=[];for(let m=0;m<r;m++){let p=h+m*l;d.push({x:o*Math.cos(p),y:o*Math.sin(p)}),d.push({x:a*Math.cos(p+c-u),y:a*Math.sin(p+c-u)}),d.push({x:a*Math.cos(p+c+u),y:a*Math.sin(p+c+u)}),d.push({x:o*Math.cos(p+l/2),y:o*Math.sin(p+l/2)})}return d}function je(r,e,t,n=0,i=0,a="evenodd",o=0){let l=Bt(r,e,t,o),u=Math.min(n,e*.1),c=j(l,u,e);if(i>0){let h=e*(i/100),d=a==="nonzero"?1:0;c+=` M ${h} 0 A ${h} ${h} 0 1 ${d} ${-h} 0 A ${h} ${h} 0 1 ${d} ${h} 0 Z`}return c}function We(r,e,t,n,i,a="round",o="uniform",l){let u=Math.min(t,n)/2,c,h,d,m,p,y,g,$;if(o==="non-uniform"&&l?(c=Math.min(l.radiusTL??i,u),h=Math.min(l.radiusTR??i,u),d=Math.min(l.radiusBR??i,u),m=Math.min(l.radiusBL??i,u),p=l.shapeTL??a,y=l.shapeTR??a,g=l.shapeBR??a,$=l.shapeBL??a):(c=h=d=m=Math.min(i,u),p=y=g=$=a),!(a!=="round"||o==="non-uniform"||c>0&&p!=="round"||h>0&&y!=="round"||d>0&&g!=="round"||m>0&&$!=="round")&&c===h&&h===d&&d===m)return null;let x=`M${r+c},${e}`;return x+=` L${r+t-h},${e}`,x+=he(y,h,r+t,e,"tr"),x+=` L${r+t},${e+n-d}`,x+=he(g,d,r+t,e+n,"br"),x+=` L${r+m},${e+n}`,x+=he($,m,r,e+n,"bl"),x+=` L${r},${e+c}`,x+=he(p,c,r,e,"tl"),x+=" Z",x}function he(r,e,t,n,i){if(e<=0)return"";switch(r){case"round":switch(i){case"tr":return` A${e},${e} 0 0 1 ${t},${n+e}`;case"br":return` A${e},${e} 0 0 1 ${t-e},${n}`;case"bl":return` A${e},${e} 0 0 1 ${t},${n-e}`;case"tl":return` A${e},${e} 0 0 1 ${t+e},${n}`}break;case"scoop":switch(i){case"tr":return` A${e},${e} 0 0 0 ${t},${n+e}`;case"br":return` A${e},${e} 0 0 0 ${t-e},${n}`;case"bl":return` A${e},${e} 0 0 0 ${t},${n-e}`;case"tl":return` A${e},${e} 0 0 0 ${t+e},${n}`}break;case"bevel":switch(i){case"tr":return` L${t},${n+e}`;case"br":return` L${t-e},${n}`;case"bl":return` L${t},${n-e}`;case"tl":return` L${t+e},${n}`}break;case"notch":switch(i){case"tr":return` L${t-e},${n+e} L${t},${n+e}`;case"br":return` L${t-e},${n-e} L${t-e},${n}`;case"bl":return` L${t+e},${n-e} L${t},${n-e}`;case"tl":return` L${t+e},${n+e} L${t+e},${n}`}break}return""}function He(r,e,t=!1,n=.5,i){if(r.length<2)return r.length===1?`M ${r[0].x} ${r[0].y}`:"";switch(e){case"LINEAR":case"linear":return Ot(r,t);case"QUADRATIC":case"quadratic":return qr(r,t);case"CUBIC":case"cubic":return Kr(r,t);case"ARC":case"arc":return Zr(r,t,i);case"MIXED":case"mixed":return Gt(r,t);case"CATMULL_ROM":case"catmull-rom":return Qr(r,t,n);case"BASIS":case"basis":return Jr(r,t);default:return r.some(a=>a.segmentType)?Gt(r,t):Ot(r,t)}}function Ot(r,e){let t=`M ${r[0].x} ${r[0].y}`,n=0;for(let i=1;i<r.length;i++)r[i].isSubpathStart?(e&&i-n>2&&(t+=" Z"),t+=` M ${r[i].x} ${r[i].y}`,n=i):t+=` L ${r[i].x} ${r[i].y}`;return e&&r.length-n>2&&(t+=" Z"),t}function qr(r,e){let t=`M ${r[0].x} ${r[0].y}`,n=0;for(let i=0;i<r.length-1;i++){let a=r[i],o=r[i+1];if(o.isSubpathStart){if(e&&i-n>=1){let u=r[n],c=a.handleOut??{x:(a.x+u.x)/2,y:(a.y+u.y)/2};t+=` Q ${c.x} ${c.y} ${u.x} ${u.y} Z`}t+=` M ${o.x} ${o.y}`,n=i+1;continue}let l=a.handleOut??{x:(a.x+o.x)/2,y:(a.y+o.y)/2};t+=` Q ${l.x} ${l.y} ${o.x} ${o.y}`}if(e&&r.length-n>1){let i=r[r.length-1],a=r[n],o=i.handleOut??{x:(i.x+a.x)/2,y:(i.y+a.y)/2};t+=` Q ${o.x} ${o.y} ${a.x} ${a.y} Z`}return t}function Kr(r,e){let t=`M ${r[0].x} ${r[0].y}`,n=0;for(let i=0;i<r.length-1;i++){let a=r[i],o=r[i+1];if(o.isSubpathStart){if(e&&i-n>=1){let c=r[n],h=a.handleOut??{x:a.x,y:a.y},d=c.handleIn??{x:c.x,y:c.y};t+=` C ${h.x} ${h.y} ${d.x} ${d.y} ${c.x} ${c.y} Z`}t+=` M ${o.x} ${o.y}`,n=i+1;continue}let l=a.handleOut??{x:a.x,y:a.y},u=o.handleIn??{x:o.x,y:o.y};t+=` C ${l.x} ${l.y} ${u.x} ${u.y} ${o.x} ${o.y}`}if(e&&r.length-n>1){let i=r[r.length-1],a=r[n],o=i.handleOut??{x:i.x,y:i.y},l=a.handleIn??{x:a.x,y:a.y};t+=` C ${o.x} ${o.y} ${l.x} ${l.y} ${a.x} ${a.y} Z`}return t}function Zr(r,e,t){let n=`M ${r[0].x} ${r[0].y}`,i=0,a={rx:50,ry:50,rotation:0,largeArc:!1,sweep:!0};for(let o=0;o<r.length-1;o++){let l=r[o+1];if(l.isSubpathStart){if(e&&o-i>=1){let c=r[i],h=t?.[o]??a;n+=` A ${h.rx} ${h.ry} ${h.rotation} ${h.largeArc?1:0} ${h.sweep?1:0} ${c.x} ${c.y} Z`}n+=` M ${l.x} ${l.y}`,i=o+1;continue}let u=t?.[o]??a;n+=` A ${u.rx} ${u.ry} ${u.rotation} ${u.largeArc?1:0} ${u.sweep?1:0} ${l.x} ${l.y}`}if(e&&r.length-i>1){let o=r[i],l=t?.[r.length-1]??a;n+=` A ${l.rx} ${l.ry} ${l.rotation} ${l.largeArc?1:0} ${l.sweep?1:0} ${o.x} ${o.y} Z`}return n}function Gt(r,e){let t=`M ${r[0].x} ${r[0].y}`,n=0;for(let i=0;i<r.length-1;i++){let a=r[i],o=r[i+1];if(o.isSubpathStart){if(e&&i-n>=1){let l=r[n];t+=Ee(a,l,l.segmentType),t+=" Z"}t+=` M ${o.x} ${o.y}`,n=i+1;continue}t+=Ee(a,o,o.segmentType)}if(e&&r.length-n>1){let i=r[r.length-1],a=r[n];t+=Ee(i,a,a.segmentType),t+=" Z"}return t}function Ee(r,e,t){let n=(t??(r.handleOut||e.handleIn?"CUBIC":"LINEAR")).toUpperCase();if(n==="LINEAR")return` L ${e.x} ${e.y}`;if(n==="QUADRATIC"){let o=r.handleOut??{x:(r.x+e.x)/2,y:(r.y+e.y)/2};return` Q ${o.x} ${o.y} ${e.x} ${e.y}`}if(n==="ARC"){let o=e.arcParams;return o?` A ${o.rx} ${o.ry} ${o.rotation} ${o.largeArc?1:0} ${o.sweep?1:0} ${e.x} ${e.y}`:` L ${e.x} ${e.y}`}let i=r.handleOut??{x:r.x,y:r.y},a=e.handleIn??{x:e.x,y:e.y};return` C ${i.x} ${i.y} ${a.x} ${a.y} ${e.x} ${e.y}`}function Qr(r,e,t){if(r.length<2)return r.length===1?`M ${r[0].x} ${r[0].y}`:"";let n=t,i=e?[r[r.length-1],...r,r[0],r[1]]:[r[0],...r,r[r.length-1]],a=`M ${r[0].x} ${r[0].y}`,o=e?r.length:r.length-1;for(let l=0;l<o;l++){let u=i[l],c=i[l+1],h=i[l+2],d=i[l+3],m=Math.hypot(h.x-c.x,h.y-c.y),p=Math.hypot(c.x-u.x,c.y-u.y),y=Math.hypot(d.x-h.x,d.y-h.y),g=Math.pow(p,n),$=Math.pow(m,n),w=Math.pow(y,n),x=Math.pow(p,2*n),S=Math.pow(m,2*n),_=Math.pow(y,2*n),A,C,b,k;p<1e-8?(A=c.x,C=c.y):(A=(x*h.x-S*u.x+(2*x+3*g*$+S)*c.x)/(3*g*(g+$)),C=(x*h.y-S*u.y+(2*x+3*g*$+S)*c.y)/(3*g*(g+$))),y<1e-8?(b=h.x,k=h.y):(b=(_*c.x-S*d.x+(2*_+3*w*$+S)*h.x)/(3*w*(w+$)),k=(_*c.y-S*d.y+(2*_+3*w*$+S)*h.y)/(3*w*(w+$))),a+=` C ${A} ${C} ${b} ${k} ${h.x} ${h.y}`}return e&&(a+=" Z"),a}function Jr(r,e){let t=r.length;if(t<2)return t===1?`M ${r[0].x} ${r[0].y}`:"";if(t===2)return`M ${r[0].x} ${r[0].y} L ${r[1].x} ${r[1].y}`;if(e){let a=(r[0].x+4*r[1].x+r[2].x)/6,o=(r[0].y+4*r[1].y+r[2].y)/6,l=`M ${a} ${o}`;for(let u=0;u<t;u++){let c=r[(u+1)%t],h=r[(u+2)%t],d=r[(u+3)%t];l+=Fe(c,h,d)}return l+=" Z",l}let n=r,i=`M ${n[0].x} ${n[0].y}`;i+=` L ${(5*n[0].x+n[1].x)/6} ${(5*n[0].y+n[1].y)/6}`;for(let a=0;a<=t-3;a++)i+=Fe(n[a],n[a+1],n[a+2]);return i+=Fe(n[t-2],n[t-1],n[t-1]),i+=` L ${n[t-1].x} ${n[t-1].y}`,i}function Fe(r,e,t){return` C ${(2*r.x+e.x)/3} ${(2*r.y+e.y)/3} ${(r.x+2*e.x)/3} ${(r.y+2*e.y)/3} ${(r.x+4*e.x+t.x)/6} ${(r.y+4*e.y+t.y)/6}`}function ie(r,e,t){let n=Number.isFinite(e)?Math.max(1,e):8,i=Number.isFinite(t)?Math.max(1,t):4;switch(r){case"dashed":case"dotted":case"custom":return`${n} ${i}`;default:return null}}function O(r){return r.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function en(r){let e=r.fillType;return e||(r.fillGradient?r.fillGradient.r!==void 0?"radial-gradient":"linear-gradient":r.linearGradient?"linear-gradient":r.radialGradient?"radial-gradient":"solid")}function fe(r){let e=new Map,t=r.state,n=t;switch(r.type){case"circle":e.set("cx",String(t.x??0)),e.set("cy",String(t.y??0)),e.set("r",String(t.radius??50));break;case"ellipse":e.set("cx",String(t.cx??0)),e.set("cy",String(t.cy??0)),e.set("rx",String(t.rx??50)),e.set("ry",String(t.ry??30));break;case"rectangle":case"square":e.set("x",String(t.x??0)),e.set("y",String(t.y??0)),e.set("width",String(t.width??100)),e.set("height",String(t.height??100)),(t.cornerRadius??0)>0&&e.set("rx",String(t.cornerRadius));break;case"line":e.set("x1",String(t.x1??0)),e.set("y1",String(t.y1??0)),e.set("x2",String(t.x2??0)),e.set("y2",String(t.y2??0));break;case"text":e.set("x",String(t.x??0)),e.set("y",String(t.y??0)),t.fontSize&&e.set("font-size",String(t.fontSize)),t.fontFamily&&e.set("font-family",t.fontFamily),t.fontWeight&&e.set("font-weight",t.fontWeight),t.fontStyle&&e.set("font-style",t.fontStyle),t.textAnchor&&e.set("text-anchor",t.textAnchor),t.letterSpacing&&e.set("letter-spacing",String(t.letterSpacing));break;case"image":e.set("x",String(t.x??0)),e.set("y",String(t.y??0)),e.set("width",String(t.width??100)),e.set("height",String(t.height??100)),n.href&&e.set("href",String(n.href));break}let i=en(n);i==="none"?e.set("fill","none"):i==="linear-gradient"||i==="radial-gradient"?e.set("fill",`url(#gradient-fill-${r.id})`):i==="pattern"?e.set("fill",`url(#pattern-fill-${r.id})`):e.set("fill",t.fillColor??"#000000");let a=t.opacity;a!==void 0&&a<1&&e.set("opacity",String(a));let o=t.fillOpacity;o!==void 0&&o<1&&e.set("fill-opacity",String(o)),t.fillRule&&t.fillRule!=="nonzero"&&e.set("fill-rule",t.fillRule);let l=n.strokeType??"solid";if(l==="none")e.set("stroke","none");else if(l==="linear-gradient"||l==="radial-gradient")e.set("stroke",`url(#gradient-stroke-${r.id})`);else{let _=t.borderColor??"none";_!=="none"&&e.set("stroke",_)}let u=t.borderWidth;u!=null&&u!==0&&e.set("stroke-width",String(u));let c=t.strokeOpacity;c!==void 0&&c<1&&e.set("stroke-opacity",String(c));let h=t.lineStyle??"solid",d=t.dashLength??8,m=t.gapLength??4,p=ie(h,d,m);p&&(e.set("stroke-dasharray",p),h==="dotted"&&e.set("stroke-linecap","round"));let y=tn(n);y&&e.set("transform",y);let g=n.filters;g&&g.length>0&&e.set("filter",`url(#filter-${r.id})`);let $=t.shapeRendering;$&&$!=="auto"&&e.set("shape-rendering",$);let w=n.startEndpoint,x=n.endEndpoint;w&&w!=="none"&&e.set("marker-start",`url(#line-marker-${w})`),x&&x!=="none"&&e.set("marker-end",`url(#line-marker-${x})`);let S=n.metadata;return S&&(S.role&&e.set("role",S.role),S.ariaLabel&&e.set("aria-label",S.ariaLabel)),e}function Ut(r){switch(r.type){case"circle":return"circle";case"ellipse":return"ellipse";case"rectangle":case"square":return"rect";case"line":return"line";case"text":return"text";case"image":return"image";case"spline":case"polyline":case"triangle":case"ngon":case"star":case"cross":case"ring":case"spiral":case"gear":case"arrow":return"path";default:return"g"}}function tn(r){let e=r.rotation??0,t=r.skewX??0,n=r.skewY??0,i=r.scaleX??1,a=r.scaleY??1;if(e===0&&t===0&&n===0&&i===1&&a===1)return null;let o=r.customPivot;if(!o)return null;let l=[];return l.push(`translate(${o.x}, ${o.y})`),e!==0&&l.push(`rotate(${e})`),(i!==1||a!==1)&&l.push(`scale(${i}, ${a})`),t!==0&&l.push(`skewX(${t})`),n!==0&&l.push(`skewY(${n})`),l.push(`translate(${-o.x}, ${-o.y})`),l.join(" ")}function W(r,e){let t=r.viewboxes?.[0];return{width:e.width??t?.width??800,height:e.height??t?.height??600}}function s(r,e){return e==null||e===""?"":` ${r}="${O(String(e))}"`}function me(r){let e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(r);return e?{r:parseInt(e[1],16)/255,g:parseInt(e[2],16)/255,b:parseInt(e[3],16)/255}:{r:0,g:0,b:0}}function rn(r,e,t){let{offsetX:n,offsetY:i,blurRadius:a,spread:o,color:l,opacity:u}=r,c="";if(o===0)c+=`<feDropShadow${s("in",e)}${s("dx",n)}${s("dy",i)}${s("stdDeviation",a/2)}${s("flood-color",l)}${s("flood-opacity",u)}${s("result",`${t}_shadow`)}/>`,c+=`<feMerge${s("result",t)}><feMergeNode${s("in",`${t}_shadow`)}/><feMergeNode${s("in",e)}/></feMerge>`;else{c+=`<feColorMatrix${s("in",e)}${s("type","matrix")}${s("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0")}${s("result",`${t}_alpha`)}/>`;let h=o>0?"dilate":"erode",d=Math.abs(o);c+=`<feMorphology${s("in",`${t}_alpha`)}${s("operator",h)}${s("radius",d)}${s("result",`${t}_spread`)}/>`,c+=`<feGaussianBlur${s("in",`${t}_spread`)}${s("stdDeviation",a/2)}${s("result",`${t}_blur`)}/>`,c+=`<feOffset${s("in",`${t}_blur`)}${s("dx",n)}${s("dy",i)}${s("result",`${t}_offset`)}/>`,c+=`<feFlood${s("flood-color",l)}${s("flood-opacity",u)}${s("result",`${t}_color`)}/>`,c+=`<feComposite${s("in",`${t}_color`)}${s("in2",`${t}_offset`)}${s("operator","in")}${s("result",`${t}_shadow`)}/>`,c+=`<feMerge${s("result",t)}><feMergeNode${s("in",`${t}_shadow`)}/><feMergeNode${s("in",e)}/></feMerge>`}return c}function nn(r,e,t){let{offsetX:n,offsetY:i,blurRadius:a,choke:o,color:l,opacity:u}=r,c=a*(1-o/100),h="";return h+=`<feColorMatrix${s("in",e)}${s("type","matrix")}${s("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0")}${s("result",`${t}_alpha`)}/>`,h+=`<feComponentTransfer${s("in",`${t}_alpha`)}${s("result",`${t}_inverted`)}><feFuncA${s("type","table")}${s("tableValues","1 0")}/></feComponentTransfer>`,h+=`<feGaussianBlur${s("in",`${t}_inverted`)}${s("stdDeviation",c/2)}${s("result",`${t}_blur`)}/>`,h+=`<feOffset${s("in",`${t}_blur`)}${s("dx",n)}${s("dy",i)}${s("result",`${t}_offset`)}/>`,h+=`<feFlood${s("flood-color",l)}${s("flood-opacity",u)}${s("result",`${t}_color`)}/>`,h+=`<feComposite${s("in",`${t}_color`)}${s("in2",`${t}_offset`)}${s("operator","in")}${s("result",`${t}_coloredShadow`)}/>`,h+=`<feComposite${s("in",`${t}_coloredShadow`)}${s("in2",`${t}_alpha`)}${s("operator","in")}${s("result",`${t}_innerShadow`)}/>`,h+=`<feComposite${s("in",`${t}_innerShadow`)}${s("in2",e)}${s("operator","over")}${s("result",t)}/>`,h}function sn(r,e,t){let{blurX:n,blurY:i}=r;return n===0&&i===0?E(e,t):`<feGaussianBlur${s("in",e)}${s("stdDeviation",`${n/2} ${i/2}`)}${s("result",t)}/>`}function an(r,e,t){let{distance:n,angle:i}=r;if(n===0)return E(e,t);let a=i*Math.PI/180,o=Math.abs(Math.cos(a)*n),l=Math.abs(Math.sin(a)*n);return`<feGaussianBlur${s("in",e)}${s("stdDeviation",`${o/2} ${l/2}`)}${s("result",t)}/>`}function Nt(r,e,t){let{x:n,y:i,z:a,color:o,surfaceScale:l,diffuseConstant:u,specularConstant:c,specularExponent:h}=r,d="";return d+=`<feDiffuseLighting${s("in","SourceAlpha")}${s("surfaceScale",l)}${s("diffuseConstant",u)}${s("lighting-color",o)}${s("result",`${t}_diffuse`)}>`,d+=`<fePointLight${s("x",n)}${s("y",i)}${s("z",a)}/>`,d+="</feDiffuseLighting>",d+=`<feSpecularLighting${s("in","SourceAlpha")}${s("surfaceScale",l)}${s("specularConstant",c)}${s("specularExponent",h)}${s("lighting-color",o)}${s("result",`${t}_specular`)}>`,d+=`<fePointLight${s("x",n)}${s("y",i)}${s("z",a)}/>`,d+="</feSpecularLighting>",d+=`<feComposite${s("in",e)}${s("in2",`${t}_diffuse`)}${s("operator","arithmetic")}${s("k1",1)}${s("k2",0)}${s("k3",0)}${s("k4",0)}${s("result",`${t}_lit`)}/>`,d+=`<feComposite${s("in",`${t}_specular`)}${s("in2",`${t}_lit`)}${s("operator","arithmetic")}${s("k1",0)}${s("k2",1)}${s("k3",1)}${s("k4",0)}${s("result",t)}/>`,d}function Vt(r,e,t){let{x:n,y:i,z:a,pointsAtX:o,pointsAtY:l,pointsAtZ:u,coneAngle:c,color:h,surfaceScale:d,specularConstant:m,specularExponent:p}=r,y="";return y+=`<feSpecularLighting${s("in","SourceAlpha")}${s("surfaceScale",d)}${s("specularConstant",m)}${s("specularExponent",p)}${s("lighting-color",h)}${s("result",`${t}_specular`)}>`,y+=`<feSpotLight${s("x",n)}${s("y",i)}${s("z",a)}${s("pointsAtX",o)}${s("pointsAtY",l)}${s("pointsAtZ",u)}${s("limitingConeAngle",c)}/>`,y+="</feSpecularLighting>",y+=`<feComposite${s("in",`${t}_specular`)}${s("in2","SourceAlpha")}${s("operator","in")}${s("result",`${t}_clipped`)}/>`,y+=`<feComposite${s("in",`${t}_clipped`)}${s("in2",e)}${s("operator","arithmetic")}${s("k1",0)}${s("k2",1)}${s("k3",1)}${s("k4",0)}${s("result",t)}/>`,y}function zt(r){switch(r.kind){case"point":return`<fePointLight${s("x",r.x)}${s("y",r.y)}${s("z",r.z)}/>`;case"spot":{let e=`<feSpotLight${s("x",r.x)}${s("y",r.y)}${s("z",r.z)}${s("pointsAtX",r.pointsAtX)}${s("pointsAtY",r.pointsAtY)}${s("pointsAtZ",r.pointsAtZ)}`;return r.limitingConeAngle!==void 0&&(e+=s("limitingConeAngle",r.limitingConeAngle)),r.specularExponent!==void 0&&(e+=s("specularExponent",r.specularExponent)),e+"/>"}case"distant":return`<feDistantLight${s("azimuth",r.azimuth)}${s("elevation",r.elevation)}/>`}}function on(r,e,t){return`<feDiffuseLighting${s("in",e)}${s("surfaceScale",r.surfaceScale)}${s("diffuseConstant",r.diffuseConstant)}${s("lighting-color",r.color)}${s("result",t)}>`+zt(r.lightSource)+"</feDiffuseLighting>"}function ln(r,e,t){return`<feSpecularLighting${s("in",e)}${s("surfaceScale",r.surfaceScale)}${s("specularConstant",r.specularConstant)}${s("specularExponent",r.specularExponent)}${s("lighting-color",r.color)}${s("result",t)}>`+zt(r.lightSource)+"</feSpecularLighting>"}function un(r,e,t){let{width:n,color:i,opacity:a,position:o}=r,l="";if(o==="inside")l+=`<feMorphology${s("in","SourceAlpha")}${s("operator","erode")}${s("radius",n)}${s("result",`${t}_eroded`)}/>`,l+=`<feComposite${s("in","SourceAlpha")}${s("in2",`${t}_eroded`)}${s("operator","out")}${s("result",`${t}_outlineAlpha`)}/>`,l+=`<feFlood${s("flood-color",i)}${s("flood-opacity",a)}${s("result",`${t}_color`)}/>`,l+=`<feComposite${s("in",`${t}_color`)}${s("in2",`${t}_outlineAlpha`)}${s("operator","in")}${s("result",`${t}_outline`)}/>`,l+=`<feComposite${s("in",`${t}_outline`)}${s("in2",e)}${s("operator","over")}${s("result",t)}/>`;else{let u=o==="outside"?n:n/2;l+=`<feMorphology${s("in","SourceAlpha")}${s("operator","dilate")}${s("radius",u)}${s("result",`${t}_dilated`)}/>`,l+=`<feComposite${s("in",`${t}_dilated`)}${s("in2","SourceAlpha")}${s("operator","out")}${s("result",`${t}_outlineAlpha`)}/>`,l+=`<feFlood${s("flood-color",i)}${s("flood-opacity",a)}${s("result",`${t}_color`)}/>`,l+=`<feComposite${s("in",`${t}_color`)}${s("in2",`${t}_outlineAlpha`)}${s("operator","in")}${s("result",`${t}_outline`)}/>`,l+=`<feMerge${s("result",t)}><feMergeNode${s("in",`${t}_outline`)}/><feMergeNode${s("in",e)}/></feMerge>`}return l}function cn(r,e,t){let{amount:n}=r;if(n===0)return E(e,t);let i=1+4*n,a=-n,o=[0,a,0,a,i,a,0,a,0].join(" ");return`<feConvolveMatrix${s("in",e)}${s("order","3")}${s("kernelMatrix",o)}${s("divisor","1")}${s("bias","0")}${s("preserveAlpha","true")}${s("edgeMode","duplicate")}${s("result",t)}/>`}function dn(r,e,t){let{blockSize:n}=r;if(n<=1)return E(e,t);let i=n/2,a="";return a+=`<feMorphology${s("in",e)}${s("operator","erode")}${s("radius",i)}${s("result",`${t}_eroded`)}/>`,a+=`<feMorphology${s("in",`${t}_eroded`)}${s("operator","dilate")}${s("radius",i)}${s("result",t)}/>`,a}function hn(r,e,t){let{scale:n,frequency:i,octaves:a,warpType:o}=r;if(n===0)return E(e,t);let l="";return l+=`<feTurbulence${s("type",o)}${s("baseFrequency",i)}${s("numOctaves",a)}${s("seed",0)}${s("result",`${t}_turbulence`)}/>`,l+=`<feDisplacementMap${s("in",e)}${s("in2",`${t}_turbulence`)}${s("scale",n)}${s("xChannelSelector","R")}${s("yChannelSelector","G")}${s("result",t)}/>`,l}function pn(r,e,t){let{operator:n,radiusX:i,radiusY:a}=r;return i===0&&a===0?E(e,t):`<feMorphology${s("in",e)}${s("operator",n)}${s("radius",`${i} ${a}`)}${s("result",t)}/>`}function fn(r,e,t){let{levels:n}=r;if(n<2)return E(e,t);let i=[];for(let l=0;l<n;l++)i.push(l/(n-1));let a=i.join(" "),o=`<feComponentTransfer${s("in",e)}${s("result",t)}>`;return o+=`<feFuncR${s("type","discrete")}${s("tableValues",a)}/>`,o+=`<feFuncG${s("type","discrete")}${s("tableValues",a)}/>`,o+=`<feFuncB${s("type","discrete")}${s("tableValues",a)}/>`,o+="</feComponentTransfer>",o}function mn(r,e,t){let{levels:n,contrast:i}=r;if(n<2)return E(e,t);let a=[];for(let u=0;u<n;u++){let c=u/(n-1),h=c;i!==1&&(h=.5+(c-.5)*i,h=Math.max(0,Math.min(1,h))),a.push(h)}let o=a.join(" "),l=`<feComponentTransfer${s("in",e)}${s("result",t)}>`;return l+=`<feFuncR${s("type","table")}${s("tableValues",o)}/>`,l+=`<feFuncG${s("type","table")}${s("tableValues",o)}/>`,l+=`<feFuncB${s("type","table")}${s("tableValues",o)}/>`,l+="</feComponentTransfer>",l}function gn(r,e,t){let{radius:n}=r;if(n===0)return E(e,t);let i="";return i+=`<feGaussianBlur${s("in","SourceAlpha")}${s("stdDeviation",n)}${s("result",`${t}_blurredAlpha`)}/>`,i+=`<feComponentTransfer${s("in",`${t}_blurredAlpha`)}${s("result",`${t}_thresholdAlpha`)}><feFuncA${s("type","linear")}${s("slope",20)}${s("intercept",-9)}/></feComponentTransfer>`,i+=`<feComposite${s("in",e)}${s("in2",`${t}_thresholdAlpha`)}${s("operator","in")}${s("result",t)}/>`,i}function yn(r,e,t){let{amount:n}=r;if(n===0)return E(e,t);let i=1-n;return`<feColorMatrix${s("color-interpolation-filters","sRGB")}${s("in",e)}${s("type","saturate")}${s("values",i)}${s("result",t)}/>`}function bn(r,e,t){let{red:n,green:i,blue:a}=r;if(n===1&&i===1&&a===1)return E(e,t);let o=`<feComponentTransfer${s("in",e)}${s("result",t)}>`;return o+=`<feFuncR${s("type","linear")}${s("slope",n)}${s("intercept",0)}/>`,o+=`<feFuncG${s("type","linear")}${s("slope",i)}${s("intercept",0)}/>`,o+=`<feFuncB${s("type","linear")}${s("slope",a)}${s("intercept",0)}/>`,o+="</feComponentTransfer>",o}function $n(r,e,t){let{amount:n}=r;if(n===1)return E(e,t);let i=`<feComponentTransfer${s("color-interpolation-filters","sRGB")}${s("in",e)}${s("result",t)}>`;return i+=`<feFuncR${s("type","linear")}${s("slope",n)}${s("intercept",0)}/>`,i+=`<feFuncG${s("type","linear")}${s("slope",n)}${s("intercept",0)}/>`,i+=`<feFuncB${s("type","linear")}${s("slope",n)}${s("intercept",0)}/>`,i+="</feComponentTransfer>",i}function xn(r,e,t){let{amount:n}=r;if(n===1)return E(e,t);let i=.5*(1-n),a=`<feComponentTransfer${s("color-interpolation-filters","sRGB")}${s("in",e)}${s("result",t)}>`;return a+=`<feFuncR${s("type","linear")}${s("slope",n)}${s("intercept",i)}/>`,a+=`<feFuncG${s("type","linear")}${s("slope",n)}${s("intercept",i)}/>`,a+=`<feFuncB${s("type","linear")}${s("slope",n)}${s("intercept",i)}/>`,a+="</feComponentTransfer>",a}function Sn(r,e,t){let{amount:n}=r;if(n===1)return E(e,t);let i=`<feComponentTransfer${s("color-interpolation-filters","sRGB")}${s("in",e)}${s("result",t)}>`;return i+=`<feFuncA${s("type","linear")}${s("slope",n)}${s("intercept",0)}/>`,i+="</feComponentTransfer>",i}function _n(r,e,t){let{amount:n}=r;if(n===0)return E(e,t);let i=n,a=1-n,o=`${i} ${a}`,l=`<feComponentTransfer${s("color-interpolation-filters","sRGB")}${s("in",e)}${s("result",t)}>`;return l+=`<feFuncR${s("type","table")}${s("tableValues",o)}/>`,l+=`<feFuncG${s("type","table")}${s("tableValues",o)}/>`,l+=`<feFuncB${s("type","table")}${s("tableValues",o)}/>`,l+="</feComponentTransfer>",l}function kn(r,e,t){let{angle:n}=r;return n===0||n===360?E(e,t):`<feColorMatrix${s("color-interpolation-filters","sRGB")}${s("in",e)}${s("type","hueRotate")}${s("values",n)}${s("result",t)}/>`}function wn(r,e,t){let{amount:n}=r;return n===1?E(e,t):`<feColorMatrix${s("color-interpolation-filters","sRGB")}${s("in",e)}${s("type","saturate")}${s("values",n)}${s("result",t)}/>`}function Tn(r,e,t){let{threshold:n}=r,i="";if(i+=`<feColorMatrix${s("in",e)}${s("type","saturate")}${s("values",0)}${s("result",`${t}_gray`)}/>`,n===.5)i+=`<feComponentTransfer${s("in",`${t}_gray`)}${s("result",t)}>`,i+=`<feFuncR${s("type","discrete")}${s("tableValues","0 1")}/>`,i+=`<feFuncG${s("type","discrete")}${s("tableValues","0 1")}/>`,i+=`<feFuncB${s("type","discrete")}${s("tableValues","0 1")}/>`,i+="</feComponentTransfer>";else{let o=[];for(let u=0;u<256;u++)o.push(u/255<n?0:1);let l=o.join(" ");i+=`<feComponentTransfer${s("in",`${t}_gray`)}${s("result",t)}>`,i+=`<feFuncR${s("type","table")}${s("tableValues",l)}/>`,i+=`<feFuncG${s("type","table")}${s("tableValues",l)}/>`,i+=`<feFuncB${s("type","table")}${s("tableValues",l)}/>`,i+="</feComponentTransfer>"}return i}function Pn(r,e,t){let{amount:n}=r;if(n===0)return E(e,t);let i=[.393,.769,.189,0,0],a=[.349,.686,.168,0,0],o=[.272,.534,.131,0,0],l=[1,0,0,0,0],u=[0,1,0,0,0],c=[0,0,1,0,0],h=(g,$)=>g.map((w,x)=>w*(1-n)+$[x]*n),d=h(l,i),m=h(u,a),p=h(c,o),y=[...d,...m,...p,0,0,0,1,0].join(" ");return`<feColorMatrix${s("color-interpolation-filters","sRGB")}${s("in",e)}${s("type","matrix")}${s("values",y)}${s("result",t)}/>`}function vn(r,e,t){let{shadowColor:n,highlightColor:i}=r,a=me(n),o=me(i),l="";return l+=`<feColorMatrix${s("in",e)}${s("type","saturate")}${s("values",0)}${s("result",`${t}_gray`)}/>`,l+=`<feComponentTransfer${s("in",`${t}_gray`)}${s("result",t)}>`,l+=`<feFuncR${s("type","table")}${s("tableValues",`${a.r} ${o.r}`)}/>`,l+=`<feFuncG${s("type","table")}${s("tableValues",`${a.g} ${o.g}`)}/>`,l+=`<feFuncB${s("type","table")}${s("tableValues",`${a.b} ${o.b}`)}/>`,l+="</feComponentTransfer>",l}function Mn(r,e,t){let{intensity:n}=r;if(n===0)return E(e,t);let i="";i+=`<feComponentTransfer${s("in",e)}${s("result",`${t}_invert`)}>`,i+=`<feFuncR${s("type","table")}${s("tableValues","1 0")}/>`,i+=`<feFuncG${s("type","table")}${s("tableValues","1 0")}/>`,i+=`<feFuncB${s("type","table")}${s("tableValues","1 0")}/>`,i+="</feComponentTransfer>",i+=`<feColorMatrix${s("in",`${t}_invert`)}${s("type","saturate")}${s("values",0)}${s("result",`${t}_gray`)}/>`;let a=[.1,.1,.1,0,0],o=[.3,.4,.3,0,0],l=[.5,.5,.8,0,0],u=[1,0,0,0,0],c=[0,1,0,0,0],h=[0,0,1,0,0],d=($,w)=>$.map((x,S)=>x*(1-n)+w[S]*n),m=d(u,a),p=d(c,o),y=d(h,l),g=[...m,...p,...y,0,0,0,1,0].join(" ");return i+=`<feColorMatrix${s("in",`${t}_gray`)}${s("type","matrix")}${s("values",g)}${s("result",t)}/>`,i}function Rn(r,e,t){let{amount:n,scale:i}=r;if(n===0)return E(e,t);let a=1/i,o="";return o+=`<feTurbulence${s("type","fractalNoise")}${s("baseFrequency",a)}${s("numOctaves",3)}${s("seed",0)}${s("result",`${t}_noise`)}/>`,o+=`<feColorMatrix${s("in",`${t}_noise`)}${s("type","saturate")}${s("values",0)}${s("result",`${t}_noiseGray`)}/>`,o+=`<feBlend${s("in",e)}${s("in2",`${t}_noiseGray`)}${s("mode","overlay")}${s("result",`${t}_blended`)}/>`,o+=`<feComposite${s("in",`${t}_blended`)}${s("in2",e)}${s("operator","arithmetic")}${s("k1",0)}${s("k2",n)}${s("k3",1-n)}${s("k4",0)}${s("result",`${t}_amt`)}/>`,o+=`<feComposite${s("in",`${t}_amt`)}${s("in2",e)}${s("operator","in")}${s("result",t)}/>`,o}function An(r,e,t){let{strength:n,angle:i}=r;if(n===0)return E(e,t);let a=i*Math.PI/180,o=Math.cos(a),l=Math.sin(a),u=n,c=[-(u*(o+l)),-(u*l),u*(-o+l),-(u*o),1,u*o,u*(o-l),u*l,u*(o+l)].join(" ");return`<feConvolveMatrix${s("in",e)}${s("order","3 3")}${s("kernelMatrix",c)}${s("divisor",1)}${s("bias",.5)}${s("preserveAlpha","true")}${s("result",t)}/>`}function Cn(r,e,t){let{amount:n,size:i}=r;if(n===0)return E(e,t);let a=.5/i,o="";return o+=`<feTurbulence${s("type","fractalNoise")}${s("baseFrequency",`${a} ${a}`)}${s("numOctaves",5)}${s("seed",0)}${s("stitchTiles","stitch")}${s("result",`${t}_grain`)}/>`,o+=`<feColorMatrix${s("in",`${t}_grain`)}${s("type","saturate")}${s("values",0)}${s("result",`${t}_grainGray`)}/>`,o+=`<feBlend${s("in",e)}${s("in2",`${t}_grainGray`)}${s("mode","soft-light")}${s("result",`${t}_blended`)}/>`,o+=`<feComposite${s("in",`${t}_blended`)}${s("in2",e)}${s("operator","arithmetic")}${s("k1",0)}${s("k2",n)}${s("k3",1-n)}${s("k4",0)}${s("result",`${t}_amt`)}/>`,o+=`<feComposite${s("in",`${t}_amt`)}${s("in2",e)}${s("operator","in")}${s("result",t)}/>`,o}function In(r,e,t){let{wetness:n,turbulence:i}=r;if(n===0&&i===0)return E(e,t);let a="";return a+=`<feTurbulence${s("type","fractalNoise")}${s("baseFrequency",.02+i*.03)}${s("numOctaves",4)}${s("seed",42)}${s("result",`${t}_turb`)}/>`,a+=`<feDisplacementMap${s("in",e)}${s("in2",`${t}_turb`)}${s("scale",n*15)}${s("xChannelSelector","R")}${s("yChannelSelector","G")}${s("result",`${t}_disp`)}/>`,a+=`<feGaussianBlur${s("in",`${t}_disp`)}${s("stdDeviation",n*2)}${s("result",`${t}_blur`)}/>`,a+=`<feBlend${s("in",`${t}_blur`)}${s("in2",e)}${s("mode","multiply")}${s("result",t)}/>`,a}function En(r,e,t){let{thickness:n,texture:i}=r;if(n===0&&i===0)return E(e,t);let a="";a+=`<feTurbulence${s("type","turbulence")}${s("baseFrequency",.03+i*.02)}${s("numOctaves",3)}${s("seed",1e3)}${s("result",`${t}_brush`)}/>`;let o=Math.max(3,8-Math.floor(n*5)),l=Array.from({length:o+1},(u,c)=>c/o).join(" ");a+=`<feComponentTransfer${s("in",e)}${s("result",`${t}_poster`)}>`;for(let u of["R","G","B"])a+=`<feFunc${u}${s("type","discrete")}${s("tableValues",l)}/>`;return a+="</feComponentTransfer>",a+=`<feDisplacementMap${s("in",`${t}_poster`)}${s("in2",`${t}_brush`)}${s("scale",i*4)}${s("xChannelSelector","R")}${s("yChannelSelector","G")}${s("result",`${t}_disp`)}/>`,a+=`<feMorphology${s("in",`${t}_disp`)}${s("operator","dilate")}${s("radius",n*.5)}${s("result",`${t}_thick`)}/>`,a+=`<feComposite${s("in",`${t}_thick`)}${s("in2",e)}${s("operator","in")}${s("result",t)}/>`,a}function Fn(r,e,t){let{spread:n,edges:i}=r;if(n===0&&i===0)return E(e,t);let a="";return a+=`<feTurbulence${s("type","fractalNoise")}${s("baseFrequency",.01+i*.02)}${s("numOctaves",5)}${s("seed",1100)}${s("result",`${t}_ink`)}/>`,a+=`<feMorphology${s("in",e)}${s("operator","dilate")}${s("radius",n*3)}${s("result",`${t}_dilate`)}/>`,a+=`<feDisplacementMap${s("in",`${t}_dilate`)}${s("in2",`${t}_ink`)}${s("scale",i*10)}${s("xChannelSelector","R")}${s("yChannelSelector","G")}${s("result",`${t}_disp`)}/>`,a+=`<feGaussianBlur${s("in",`${t}_disp`)}${s("stdDeviation",n*.5)}${s("result",t)}/>`,a}function Ln(r,e,t){let{wrinkles:n,shine:i}=r;if(n===0&&i===0)return E(e,t);let a="";return a+=`<feTurbulence${s("type","turbulence")}${s("baseFrequency",.02)}${s("numOctaves",4)}${s("seed",1200)}${s("result",`${t}_wrinkle`)}/>`,a+=`<feDisplacementMap${s("in",e)}${s("in2",`${t}_wrinkle`)}${s("scale",n*15)}${s("xChannelSelector","R")}${s("yChannelSelector","G")}${s("result",`${t}_disp`)}/>`,a+=`<feSpecularLighting${s("in",`${t}_wrinkle`)}${s("surfaceScale",n*2)}${s("specularConstant",i*1.5)}${s("specularExponent",20)}${s("result",`${t}_sheen`)}>`,a+=`<feDistantLight${s("azimuth",45)}${s("elevation",60)}/>`,a+="</feSpecularLighting>",a+=`<feBlend${s("in",`${t}_disp`)}${s("in2",`${t}_sheen`)}${s("mode","screen")}${s("result",`${t}_blend`)}/>`,a+=`<feComposite${s("in",`${t}_blend`)}${s("in2",e)}${s("operator","in")}${s("result",t)}/>`,a}function Dn(r,e,t){let{density:n,size:i}=r;if(n===0)return E(e,t);let a="",o=1-n;a+=`<feTurbulence${s("type","turbulence")}${s("baseFrequency",.1/i)}${s("numOctaves",1)}${s("seed",1400)}${s("result",`${t}_hole`)}/>`,a+=`<feComponentTransfer${s("in",`${t}_hole`)}${s("result",`${t}_thresh`)}>`;for(let l of["R","G","B","A"])a+=`<feFunc${l}${s("type","linear")}${s("slope",10)}${s("intercept",-o*10+5)}/>`;a+="</feComponentTransfer>",a+=`<feComponentTransfer${s("in",`${t}_thresh`)}${s("result",`${t}_clamp`)}>`;for(let l of["R","G","B","A"])a+=`<feFunc${l}${s("type","table")}${s("tableValues","0 0 1 1")}/>`;return a+="</feComponentTransfer>",a+=`<feComposite${s("in",e)}${s("in2",`${t}_clamp`)}${s("operator","in")}${s("result",t)}/>`,a}function On(r,e,t){let{color:n,radius:i,intensity:a}=r;if(a===0||i===0)return E(e,t);let{r:o,g:l,b:u}=me(n),c="";return c+=`<feColorMatrix${s("in",e)}${s("type","matrix")}${s("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0")}${s("result",`${t}_alpha`)}/>`,c+=`<feGaussianBlur${s("in",`${t}_alpha`)}${s("stdDeviation",i/2)}${s("result",`${t}_blur`)}/>`,c+=`<feColorMatrix${s("in",`${t}_blur`)}${s("type","matrix")}${s("values",`0 0 0 0 ${o} 0 0 0 0 ${l} 0 0 0 0 ${u} 0 0 0 ${a} 0`)}${s("result",`${t}_color`)}/>`,c+=`<feMerge${s("result",t)}><feMergeNode${s("in",`${t}_color`)}/><feMergeNode${s("in",e)}/></feMerge>`,c}function Gn(r,e,t){let{color:n,radius:i,intensity:a}=r;if(a===0||i===0)return E(e,t);let{r:o,g:l,b:u}=me(n),c="";return c+=`<feColorMatrix${s("in",e)}${s("type","matrix")}${s("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0")}${s("result",`${t}_alpha`)}/>`,c+=`<feMorphology${s("in",`${t}_alpha`)}${s("operator","erode")}${s("radius",i/4)}${s("result",`${t}_erode`)}/>`,c+=`<feComposite${s("in",`${t}_alpha`)}${s("in2",`${t}_erode`)}${s("operator","out")}${s("result",`${t}_edge`)}/>`,c+=`<feGaussianBlur${s("in",`${t}_edge`)}${s("stdDeviation",i/3)}${s("result",`${t}_blur`)}/>`,c+=`<feColorMatrix${s("in",`${t}_blur`)}${s("type","matrix")}${s("values",`0 0 0 0 ${o} 0 0 0 0 ${l} 0 0 0 0 ${u} 0 0 0 ${a*2} 0`)}${s("result",`${t}_color`)}/>`,c+=`<feComposite${s("in",`${t}_color`)}${s("in2",`${t}_alpha`)}${s("operator","in")}${s("result",`${t}_clipped`)}/>`,c+=`<feComposite${s("in",`${t}_clipped`)}${s("in2",e)}${s("operator","over")}${s("result",t)}/>`,c}function E(r,e){return`<feMerge${s("result",e)}><feMergeNode${s("in",r)}/></feMerge>`}function jt(r,e,t,n){switch(r.type){case"drop-shadow":return rn(r,e,t);case"inner-shadow":return nn(r,e,t);case"gaussian-blur":return sn(r,e,t);case"motion-blur":return an(r,e,t);case"point-light":{let i=r;return Nt(n?{...i,x:i.x+n.x,y:i.y+n.y}:i,e,t)}case"spot-light":{let i=r;return Vt(n?{...i,x:i.x+n.x,y:i.y+n.y,pointsAtX:i.pointsAtX+n.x,pointsAtY:i.pointsAtY+n.y}:i,e,t)}case"diffuse-lighting":return on(r,e,t);case"specular-lighting":return ln(r,e,t);case"outline":return un(r,e,t);case"sharpen":return cn(r,e,t);case"pixelate":return dn(r,e,t);case"warp":return hn(r,e,t);case"morphology":return pn(r,e,t);case"contouring-discrete":return fn(r,e,t);case"contouring-table":return mn(r,e,t);case"round-edges":return gn(r,e,t);case"grayscale":return yn(r,e,t);case"channel-painter":return bn(r,e,t);case"brightness":return $n(r,e,t);case"contrast":return xn(r,e,t);case"opacity":return Sn(r,e,t);case"invert":return _n(r,e,t);case"hue-rotate":return kn(r,e,t);case"saturate":return wn(r,e,t);case"black-and-white":return Tn(r,e,t);case"sepia":return Pn(r,e,t);case"duotone":return vn(r,e,t);case"xray":return Mn(r,e,t);case"noise":return Rn(r,e,t);case"emboss":return An(r,e,t);case"film-grain":return Cn(r,e,t);case"watercolor":return In(r,e,t);case"gouache":return En(r,e,t);case"ink-blot":return Fn(r,e,t);case"crumpled-plastic":return Ln(r,e,t);case"riddled":return Dn(r,e,t);case"glow":return On(r,e,t);case"inner-glow":return Gn(r,e,t);case"raw-svg":return r.svgContent;default:return E(e,t)}}function Bn(r){return r.some(e=>e.type==="gaussian-blur"||e.type==="motion-blur"||e.type==="drop-shadow"||e.type==="inner-shadow"||e.type==="glow"||e.type==="inner-glow"||e.type==="outline"||e.type==="morphology"||e.type==="warp")}function Xe(r,e,t={}){let n=e.filter(S=>S.enabled);if(n.length===0)return"";let i=t.colorInterpolation&&t.colorInterpolation!=="auto"?s("color-interpolation-filters",t.colorInterpolation):"",a=n.find(S=>S.type==="raw-svg");if(a){let S=t.colorInterpolation&&t.colorInterpolation!=="auto"?t.colorInterpolation:a.colorInterpolationFilters,_=t.filterUnits??a.filterUnits,A=t.primitiveUnits??a.primitiveUnits,C=t.x??a.x,b=t.y??a.y,k=t.width??a.width,v=t.height??a.height;return`<filter${s("id",r)}${s("x",C)}${s("y",b)}${s("width",k)}${s("height",v)}${s("filterUnits",_)}${s("primitiveUnits",A)}${s("color-interpolation-filters",S)}${s("flood-color",a.floodColor)}${s("flood-opacity",a.floodOpacity)}${s("lighting-color",a.lightingColor)}>${a.svgContent}</filter>`}let o=n.some(S=>S.type==="gaussian-blur"&&S.quality==="high"||S.type==="motion-blur"&&S.quality==="high"),l=Bn(n),u=l?o?"-200%":"-100%":"-10%",c=l?o?"500%":"300%":"120%",h="",d="SourceGraphic",m=0;for(let S of n){let _=`result${m++}`;h+=jt(S,d,_),d=_}let p=t.filterUnits??"objectBoundingBox",y=t.primitiveUnits??"userSpaceOnUse",g=t.x??u,$=t.y??u,w=t.width??c,x=t.height??c;return`<filter${s("id",r)}${s("x",g)}${s("y",$)}${s("width",w)}${s("height",x)}${s("filterUnits",p)}${s("primitiveUnits",y)}${i}>${h}</filter>`}function Un(r){let e="",t=new Set;for(let n of r){let i=n.state.filters;if(!i||i.length===0)continue;let a=i.filter(c=>c.enabled);if(a.length===0)continue;let o=n.state.filterLibraryIds,l=Array.isArray(o)&&o.length>0?o[0]:`filter-${n.id}`;if(t.has(l))continue;t.add(l);let u=n.state;e+=Xe(l,a,{colorInterpolation:u.filterColorInterpolation,filterUnits:u.filterUnits,primitiveUnits:u.primitiveUnits,x:u.filterX,y:u.filterY,width:u.filterWidth,height:u.filterHeight})}return e}function Ye(r,e,t){return!e||e.length===0||e.filter(i=>i.enabled).length===0?"":Array.isArray(t)&&t.length>0?` filter="${t.map(a=>`url(#${O(a)})`).join(" ")}"`:` filter="url(#filter-${O(r)})"`}function ge(r,e,t,n){let i=n?.strokeWidth!=null?Math.max(.5,e*n.strokeWidth):Math.max(1,e/10);switch(r){case"stripes":return[{tag:"rect",attrs:{width:n?.strokeWidth!=null?Math.max(.01,Math.min(1,n.strokeWidth))*e:e/2,height:e,fill:t}}];case"dots":{let a=n?.dotRadius!=null?Math.max(.05,Math.min(.45,n.dotRadius)):.25;return[{tag:"circle",attrs:{cx:e/2,cy:e/2,r:e*a,fill:t}}]}case"grid":return[{tag:"path",attrs:{d:`M ${e} 0 L 0 0 0 ${e}`,fill:"none",stroke:t,"stroke-width":i}}];case"checkerboard":return[{tag:"rect",attrs:{width:e/2,height:e/2,fill:t}},{tag:"rect",attrs:{x:e/2,y:e/2,width:e/2,height:e/2,fill:t}}];case"diagonal":{let a=n?.strokeWidth!=null?Math.max(.5,e*n.strokeWidth):Math.max(1,e/5);return[{tag:"path",attrs:{d:`M 0 ${e} L ${e} 0`,stroke:t,"stroke-width":a}}]}case"crosshatch":return[{tag:"path",attrs:{d:`M 0 ${e} L ${e} 0 M 0 0 L ${e} ${e}`,stroke:t,"stroke-width":i}}];case"zigzag":{let a=n?.amplitude!=null?Math.max(.05,Math.min(.5,n.amplitude)):.25,o=e*a;return[{tag:"path",attrs:{d:`M 0 ${o} L ${e/4} 0 L ${e/2} ${o} L ${e*3/4} 0 L ${e} ${o}`,fill:"none",stroke:t,"stroke-width":i}}]}case"waves":{let a=n?.amplitude!=null?Math.max(.05,Math.min(.5,n.amplitude)):.25,o=e*a,l=e/2;return[{tag:"path",attrs:{d:`M 0 ${l} Q ${e/4} ${l-o} ${e/2} ${l} T ${e} ${l}`,fill:"none",stroke:t,"stroke-width":i}}]}case"triangles":{let a=e*.866;return[{tag:"path",attrs:{d:`M ${e/2} 0 L ${e} ${a} L 0 ${a} Z`,fill:"none",stroke:t,"stroke-width":i}}]}case"hexagons":{let a=e*.866;return[{tag:"path",attrs:{d:`M ${e*.25} 0 L ${e*.75} 0 L ${e} ${a*.5} L ${e*.75} ${a} L ${e*.25} ${a} L 0 ${a*.5} Z`,fill:"none",stroke:t,"stroke-width":i}}]}case"diamonds":return[{tag:"path",attrs:{d:`M ${e/2} 0 L ${e} ${e/2} L ${e/2} ${e} L 0 ${e/2} Z`,fill:"none",stroke:t,"stroke-width":i}}];case"circles":return[{tag:"circle",attrs:{cx:e/2,cy:e/2,r:e/3,fill:"none",stroke:t,"stroke-width":i}}];case"bricks":{let a=n?.strokeWidth!=null?Math.max(.5,e*n.strokeWidth):Math.max(1,e/15);return[{tag:"rect",attrs:{x:0,y:0,width:e,height:e/2,fill:"none",stroke:t,"stroke-width":a}},{tag:"rect",attrs:{x:-e/2,y:e/2,width:e,height:e/2,fill:"none",stroke:t,"stroke-width":a}},{tag:"rect",attrs:{x:e/2,y:e/2,width:e,height:e/2,fill:"none",stroke:t,"stroke-width":a}}]}case"herringbone":return[{tag:"path",attrs:{d:`M 0 0 L ${e/2} ${e/2} L 0 ${e} M ${e/2} ${e/2} L ${e} 0 M ${e/2} ${e/2} L ${e} ${e}`,fill:"none",stroke:t,"stroke-width":i}}];default:return[]}}function Nn(r){let e=Object.entries(r.attrs).map(([t,n])=>` ${t}="${n}"`).join("");return`<${r.tag}${e}/>`}function qe(r,e,t,n,i){let a=10*e,o="";o+=`<rect width="${a}" height="${a}" fill="${n}"/>`;let l=ge(r,a,t,i);for(let u of l)o+=Nn(u);return{svgContent:o,width:a,height:a}}var ye="0 0 10 10",Ke=6,Ze=6;function ne(){return[{id:"line-marker-arrow",refX:10,refY:5,element:{tag:"path",attrs:{d:"M 0 0 L 10 5 L 0 10 Z",fill:"context-stroke",stroke:"context-stroke"}}},{id:"line-marker-open-arrow",refX:10,refY:5,element:{tag:"path",attrs:{d:"M 0 0 L 10 5 L 0 10",fill:"none",stroke:"context-stroke","stroke-width":1.5,"stroke-linejoin":"round","stroke-linecap":"round"}}},{id:"line-marker-circle",refX:5,refY:5,element:{tag:"circle",attrs:{cx:5,cy:5,r:3.2,fill:"context-stroke",stroke:"context-stroke"}}},{id:"line-marker-diamond",refX:5,refY:5,element:{tag:"path",attrs:{d:"M 5 0 L 10 5 L 5 10 L 0 5 Z",fill:"context-stroke",stroke:"context-stroke"}}},{id:"line-marker-square",refX:5,refY:5,element:{tag:"rect",attrs:{x:1.5,y:1.5,width:7,height:7,fill:"context-stroke",stroke:"context-stroke"}}}]}var Wt={"line-marker-arrow":"mkr-builtin-arrow","line-marker-open-arrow":"mkr-builtin-open-arrow","line-marker-circle":"mkr-builtin-circle","line-marker-diamond":"mkr-builtin-diamond","line-marker-square":"mkr-builtin-square"},Vn={"mkr-builtin-arrow":"Arrow","mkr-builtin-open-arrow":"Open Arrow","mkr-builtin-circle":"Circle","mkr-builtin-diamond":"Diamond","mkr-builtin-square":"Square"};function zn(){return ne().map(r=>{let e=Wt[r.id]??r.id;return{kind:"marker",id:e,name:Vn[e]??e,viewBox:ye,refX:r.refX,refY:r.refY,markerWidth:6,markerHeight:6,markerUnits:"strokeWidth",orient:"auto-start-reverse",shapes:[],builtIn:!0}})}function f(r,e){return e==null||e===""?"":` ${r}="${O(String(e))}"`}function Z(r,e){let t=r.rawTransform;if(t)return t;let n=r.rotation??0,i=r.skewX??0,a=r.skewY??0,o=r.scaleX??1,l=r.scaleY??1;if(n===0&&i===0&&a===0&&o===1&&l===1)return null;let u=r.customPivot??e;if(!u)return null;let c=[];return c.push(`translate(${u.x}, ${u.y})`),n!==0&&c.push(`rotate(${n})`),(o!==1||l!==1)&&c.push(`scale(${o}, ${l})`),i!==0&&c.push(`skewX(${i})`),a!==0&&c.push(`skewY(${a})`),c.push(`translate(${-u.x}, ${-u.y})`),c.join(" ")}function jn(r,e,t){let n=r.rotation??0,i=r.skewX??0,a=r.skewY??0,o=r.scaleX??1,l=r.scaleY??1,u=r.customPivot??{x:e,y:t},c=[];return(n!==0||i!==0||a!==0||o!==1||l!==1)&&(c.push(`translate(${u.x}, ${u.y})`),n!==0&&c.push(`rotate(${n})`),(o!==1||l!==1)&&c.push(`scale(${o}, ${l})`),i!==0&&c.push(`skewX(${i})`),a!==0&&c.push(`skewY(${a})`),c.push(`translate(${-u.x}, ${-u.y})`)),c.push(`translate(${e}, ${t})`),c.join(" ")}function Wn(r){if(typeof r=="string"){let n=r.trim();return n.length>0?n:void 0}if(!r||typeof r!="object")return;let e=r,t=[];return e.underline&&t.push("underline"),e.strikethrough&&t.push("line-through"),e.overline&&t.push("overline"),t.length>0?t.join(" "):void 0}function Hn(r){if(typeof r.strokeDasharray=="string")return r.strokeDasharray;let e=r.lineStyle??"solid",t=r.dashLength??8,n=r.gapLength??4;return ie(e,t,n)}function Xn(r){let e=r.fillType;return e||(r.fillGradient?r.fillGradient.r!==void 0?"radial-gradient":"linear-gradient":r.linearGradient?"linear-gradient":r.radialGradient?"radial-gradient":"solid")}function Yn(r){return r.fillGradient??r.linearGradient??r.radialGradient??void 0}function H(r,e){let t=f("data-shape-id",e),n=Xn(r),i=Yn(r);if(n==="none")t+=f("fill","none");else if(n==="linear-gradient"||n==="radial-gradient"){let _=r.fillLibraryId??i?.id;t+=f("fill",`url(#${_??`gradient-fill-${e}`})`)}else if(n==="pattern"){let _=r.fillLibraryId??i?.id;t+=f("fill",`url(#${_??`pattern-fill-${e}`})`)}else t+=f("fill",r.fillColor??"#000000");let a=r.opacity;a!==void 0&&a<1&&(t+=f("opacity",a));let o=r.fillOpacity;o!==void 0&&o<1&&(t+=f("fill-opacity",o));let l=r.fillRule;l&&l!=="nonzero"&&(t+=f("fill-rule",l));let u=r.strokeType??"solid",c=r.strokeGradient;if(u==="none")t+=f("stroke","none");else if(u==="linear-gradient"||u==="radial-gradient"){let _=r.strokeLibraryId??c?.id;t+=f("stroke",`url(#${_??`gradient-stroke-${e}`})`)}else if(u==="pattern"){let _=r.strokeLibraryId??c?.id;t+=f("stroke",`url(#${_??`pattern-stroke-${e}`})`)}else t+=f("stroke",r.borderColor??"none");let h=r.borderWidth;h!=null&&(t+=f("stroke-width",h));let d=r.strokeOpacity;d!==void 0&&d<1&&(t+=f("stroke-opacity",d));let m=r.paintOrder;m&&m!=="normal"&&(t+=f("paint-order",m));let p=r.markerStart,y=r.markerMid,g=r.markerEnd;p&&(t+=f("marker-start",`url(#${p})`)),y&&(t+=f("marker-mid",`url(#${y})`)),g&&(t+=f("marker-end",`url(#${g})`));let $=Hn(r);$&&(t+=f("stroke-dasharray",$),!r.strokeDasharray&&r.lineStyle==="dotted"&&(t+=f("stroke-linecap","round")));let w=r.dashOffset;w!==void 0&&w!==0&&(t+=f("stroke-dashoffset",w));let x=r.shapeRendering;x&&x!=="auto"&&(t+=f("shape-rendering",x)),t+=Ye(e,r.filters,r.filterLibraryIds);let S=r.metadata;return S&&(S.role&&(t+=f("role",S.role)),S.ariaLabel&&(t+=f("aria-label",S.ariaLabel))),t}function qn(r){let e=r.metadata;if(!e)return"";let t="";return e.title&&(t+=`<title>${O(e.title)}</title>`),e.description&&(t+=`<desc>${O(e.description)}</desc>`),t}function Kn(r,e){let t=qn(e);if(!t)return r;let n=r.lastIndexOf("/>");if(n===-1){let o=r.indexOf(">");return o===-1?r:r.slice(0,o+1)+t+r.slice(o+1)}let i=r.match(/^<(\w+)/),a=i?i[1]:"g";return r.slice(0,n)+">"+t+`</${a}>`}function Qe(r){let e="",t=r.startEndpoint,n=r.endEndpoint;return t&&t!=="none"&&(e+=f("marker-start",`url(#line-marker-${t})`)),n&&n!=="none"&&(e+=f("marker-end",`url(#line-marker-${n})`)),e}function Ht(r){let e=r.state,t=e.x??0,n=e.y??0,i=e.radius??50,a=Z(e,{x:t,y:n});return`<circle${f("cx",t)}${f("cy",n)}${f("r",i)}${H(e,r.id)}${a?f("transform",a):""}/>`}function Xt(r){let e=r.state,t=e.cx??0,n=e.cy??0,i=e.rx??50,a=e.ry??30,o=Z(e,{x:t,y:n});return`<ellipse${f("cx",t)}${f("cy",n)}${f("rx",i)}${f("ry",a)}${H(e,r.id)}${o?f("transform",o):""}/>`}function Yt(r){let e=r.state,t=e,n=e.x??0,i=e.y??0,a=e.width??100,o=e.height??100,l=e.cornerRadius??0,u=t.cornerShape??"round",c=t.cornerMode??"uniform",h={x:n+a/2,y:i+o/2},d=Z(e,h);if(u!=="round"||c==="non-uniform"){let m=We(n,i,a,o,l,u,c,c==="non-uniform"?{radiusTL:t.cornerRadiusTL,radiusTR:t.cornerRadiusTR,radiusBR:t.cornerRadiusBR,radiusBL:t.cornerRadiusBL,shapeTL:t.cornerShapeTL,shapeTR:t.cornerShapeTR,shapeBR:t.cornerShapeBR,shapeBL:t.cornerShapeBL}:void 0);if(m)return`<path${f("d",m)}${H(e,r.id)}${d?f("transform",d):""}/>`}return`<rect${f("x",n)}${f("y",i)}${f("width",a)}${f("height",o)}${l>0?f("rx",l):""}${H(e,r.id)}${d?f("transform",d):""}/>`}function qt(r){let e=r.state,t=e.x1??0,n=e.y1??0,i=e.x2??100,a=e.y2??100,o={x:(t+i)/2,y:(n+a)/2},l=Z(e,o);return`<line${f("x1",t)}${f("y1",n)}${f("x2",i)}${f("y2",a)}${H(e,r.id)}${Qe(e)}${l?f("transform",l):""}/>`}function Kt(r){let e=r.state,t=e.x??0,n=e.y??0,i=e.text??"",a=e.fontSize??16,o=e.fontFamily??"sans-serif",l=e.fontWeight??"normal",u=e.fontStyle??"normal",c=e.textAnchor??"start",h=Wn(e.textDecoration),d=e.letterSpacing,p=Z(e,{x:t,y:n}),y=f("x",t)+f("y",n);y+=f("font-size",a),y+=f("font-family",o),l!=="normal"&&(y+=f("font-weight",l)),u!=="normal"&&(y+=f("font-style",u)),c!=="start"&&(y+=f("text-anchor",c)),h&&(y+=f("text-decoration",h)),d&&(y+=f("letter-spacing",d));let g=e.textLength;g!==void 0&&g>0&&(y+=f("textLength",g),e.lengthAdjust==="spacingAndGlyphs"&&(y+=f("lengthAdjust","spacingAndGlyphs")));let $=e.textDirection;$&&$!=="ltr"&&(y+=f("direction",$));let w=e.unicodeBidi;w&&w!=="normal"&&(y+=f("unicode-bidi",w));let x=e.fontVariationSettings;if(x&&Object.keys(x).length>0){let _=Object.entries(x).map(([A,C])=>`'${A}' ${C}`).join(", ");y+=f("style",`font-variation-settings: ${_}`)}if(y+=H(e,r.id),p&&(y+=f("transform",p)),e.isTextPath&&e.textPathPoints){let _=e.textPathPoints,A=e.textPathStartOffset??0,C=e.textPathSide,b=`text-path-${r.id}`,k="";if(_.length>=2)if(C==="right"){let v=_[_.length-1];k=`M ${v.x} ${v.y}`;for(let L=_.length-1;L>0;L--){let P=_[L],R=_[L-1],F=P.handleIn??P,I=R.handleOut??R;k+=` C ${F.x} ${F.y}, ${I.x} ${I.y}, ${R.x} ${R.y}`}}else{k=`M ${_[0].x} ${_[0].y}`;for(let v=0;v<_.length-1;v++){let L=_[v],P=_[v+1],R=L.handleOut??L,F=P.handleIn??P;k+=` C ${R.x} ${R.y}, ${F.x} ${F.y}, ${P.x} ${P.y}`}}return`<defs><path id="${O(b)}"${f("d",k)} fill="none"/></defs><text${y}><textPath href="#${O(b)}"${f("startOffset",`${A}%`)}>${O(i)}</textPath></text>`}if(e.charOffsets&&Array.isArray(e.charOffsets)&&e.charOffsets.length>0){let _=Array.from(i),A=0,C=0,b="";for(let k=0;k<_.length;k++){let v=e.charOffsets[k]??{x:0,y:0,rotate:0},L=v.x-A,P=v.y-C,R=f("dx",L)+f("dy",P);v.rotate!==0&&(R+=f("rotate",v.rotate)),b+=`<tspan${R}>${O(_[k])}</tspan>`,A=v.x,C=v.y}return`<text${y}>${b}</text>`}if(e.richTextData&&typeof e.richTextData=="object"){let _=e.richTextData;if(Array.isArray(_.lines)&&_.lines.length>0){let A=e.linePositions,C=typeof _.lineHeight=="number"?_.lineHeight:1.2,b=a*C,k=_.baseStyle??{},v="";return _.lines.forEach((L,P)=>{L.segments.forEach((R,F)=>{let I="";if(F===0){let D=A?.[P];D?((Math.abs(D.x)>.001||P>0)&&(I+=f("x",t+D.x)),(Math.abs(D.dy)>.001||P>0)&&(I+=f("dy",D.dy))):P>0&&(I+=f("x",t),I+=f("dy",`${b}px`))}I+=Zn(R.style??{},k),I+=' xml:space="preserve"',v+=`<tspan${I}>${O(R.text)}</tspan>`})}),`<text${y}>${v}</text>`}}return`<text${y}>${O(i)}</text>`}function Zn(r,e){let t="";r.fontFamily!==void 0&&r.fontFamily!==e.fontFamily&&(t+=f("font-family",String(r.fontFamily))),r.fontSize!==void 0&&r.fontSize!==e.fontSize&&(t+=f("font-size",String(r.fontSize))),r.fontWeight!==void 0&&r.fontWeight!==e.fontWeight&&(t+=f("font-weight",String(r.fontWeight))),r.fontStyle!==void 0&&r.fontStyle!==e.fontStyle&&(t+=f("font-style",String(r.fontStyle)));let n=r.textDecoration,i=e.textDecoration;if(n&&(!i||n.underline!==i.underline||n.strikethrough!==i.strikethrough||n.overline!==i.overline)){let o=[];n.underline&&o.push("underline"),n.strikethrough&&o.push("line-through"),n.overline&&o.push("overline"),o.length>0&&(t+=f("text-decoration",o.join(" ")))}if(r.baselineShift!==void 0&&r.baselineShift!==e.baselineShift){let a=r.baselineShift;a==="super"||a==="sub"?t+=f("baseline-shift",a):typeof a=="number"&&(t+=f("baseline-shift",`${a}px`))}return r.letterSpacing!==void 0&&r.letterSpacing!==e.letterSpacing&&(t+=f("letter-spacing",String(r.letterSpacing))),r.fill!==void 0&&r.fill!==e.fill&&(t+=f("fill",String(r.fill))),r.fillOpacity!==void 0&&r.fillOpacity!==e.fillOpacity&&(t+=f("fill-opacity",String(r.fillOpacity))),r.direction!==void 0&&r.direction!==e.direction&&(t+=f("direction",String(r.direction))),r.unicodeBidi!==void 0&&r.unicodeBidi!==e.unicodeBidi&&(t+=f("unicode-bidi",String(r.unicodeBidi))),t}function Zt(r){let e=r.state,t=e.splinePoints??[],n=e.splineCurveType??"CUBIC",i=e.splineClosed??!1,a=e.splineTension??.5,o=e.splineArcParams,l=He(t,n,i,a,o),u=t.length>0?e.customPivot??{x:t[0].x,y:t[0].y}:void 0,c=u?Z(e,u):null;return`<path${f("d",l)}${H(e,r.id)}${Qe(e)}${c?f("transform",c):""}/>`}function Qt(r){let e=r.state,t=e.polylinePoints??[],n=e.polylineClosed??!1,i=t.map(u=>`${u.x},${u.y}`).join(" "),a=t.length>0?e.customPivot??{x:t[0].x,y:t[0].y}:void 0,o=a?Z(e,a):null;return`<${n?"polygon":"polyline"}${f("points",i)}${H(e,r.id)}${Qe(e)}${o?f("transform",o):""}/>`}function Jt(r){let e=r.state,t=e.x??0,n=e.y??0,i=e.width??100,a=e.height??100,o=e.href??"",l=e.imageOpacity,u=e.preserveAspectRatio?"xMidYMid meet":"none",c={x:t+i/2,y:n+a/2},h=Z(e,c);return`<image${f("x",t)}${f("y",n)}${f("width",i)}${f("height",a)}${f("href",o)}${f("preserveAspectRatio",u)}${l!==void 0&&l<1?f("opacity",l):""}${H(e,r.id)}${h?f("transform",h):""}/>`}function er(r){let e=r.state,t=e.cx??0,n=e.cy??0,i=e.radius??50,a=e.cornerRadius??0,o=e.shiftAngle??-90,l=e.fillRule??"nonzero",u=jn(e,t,n),c="";switch(r.type){case"triangle":c=j(pe(3,i,o),a,i);break;case"ngon":{let d=e.sides??6;c=j(pe(d,i,o),a,i);break}case"star":{let d=e.arms??5,m=e.innerRadiusPercent??50;c=j(Le(d,i,m,o),a,i);break}case"cross":{let d=e.armWidthPercent??40;c=j(De(i,d,o),a,i);break}case"ring":{let d=e.innerRadiusPercent??50;c=Ve(i,d,l);break}case"spiral":{let d=e.turns??3,m=e.thicknessPercent??20,p=e.spiralDirection??1;c=ze(i,d,m,p,o);break}case"gear":{let d=e.teeth??8,m=e.toothDepthPercent??30,p=e.holeRadiusPercent??0;c=je(d,i,m,a,p,l,o);break}case"arrow":{let d=e.headWidthPercent??100,m=e.headLengthPercent??30,p=e.shaftWidthPercent??40;c=j(Oe(i,d,m,p,o),a,i);break}case"speechBubble":{let d=e.tailAngleDeg??45,m=e.tailLengthPercent??40,p=e.tailWidthPercent??25;c=j(Ge(i,d,m,p,o),a,i);break}case"lightning":{let d=e.boltSegments??3,m=e.boltJaggednessPercent??40,p=e.boltWidthPercent??30;c=j(Be(i,d,m,p,o),a,i);break}case"heart":{let d=e.lobeRadiusPercent??50,m=e.cleftDepthPercent??25;c=Ue(i,d,m,o);break}case"cloud":{let d=e.cloudBumps??5,m=e.cloudPuffinessPercent??60;c=Ne(i,d,m,o);break}default:return`<!-- unsupported polygon shape: ${O(r.type)} -->`}let h="";return(r.type==="ring"||r.type==="gear")&&(h=f("fill-rule",l)),`<path${f("d",c)}${h}${H(e,r.id)}${f("transform",u)}/>`}function G(r){let e;switch(r.type){case"circle":e=Ht(r);break;case"ellipse":e=Xt(r);break;case"rectangle":case"square":e=Yt(r);break;case"line":e=qt(r);break;case"text":e=Kt(r);break;case"spline":e=Zt(r);break;case"polyline":e=Qt(r);break;case"image":e=Jt(r);break;case"triangle":case"ngon":case"star":case"cross":case"ring":case"spiral":case"gear":case"arrow":case"speechBubble":case"lightning":case"heart":case"cloud":e=er(r);break;default:return`<!-- unsupported shape type: ${O(r.type)} -->`}return Kn(e,r.state)}function tr(r,e){let t=(e.stops??[]).map(n=>{let i=`<stop${f("offset",`${n.offset*100}%`)}${f("stop-color",n.color)}`;return n.opacity!==void 0&&n.opacity<1&&(i+=f("stop-opacity",n.opacity)),i+="/>",i}).join("");return`<linearGradient${f("id",r)}${f("x1",`${e.x1*100}%`)}${f("y1",`${e.y1*100}%`)}${f("x2",`${e.x2*100}%`)}${f("y2",`${e.y2*100}%`)}${e.spreadMethod?f("spreadMethod",e.spreadMethod):""}>${t}</linearGradient>`}function rr(r,e){let t=(e.stops??[]).map(o=>{let l=`<stop${f("offset",`${o.offset*100}%`)}${f("stop-color",o.color)}`;return o.opacity!==void 0&&o.opacity<1&&(l+=f("stop-opacity",o.opacity)),l+="/>",l}).join(""),n="",i=e.ry!==void 0&&e.ry!==e.r,a=!!e.rotation;if(i||a){let o=e.cx??.5,l=e.cy??.5,u=[];u.push(`translate(${o}, ${l})`),a&&u.push(`rotate(${e.rotation})`),i&&e.ry!==0&&u.push(`scale(1, ${e.ry/e.r})`),u.push(`translate(-${o}, -${l})`),n=f("gradientTransform",u.join(" "))}return`<radialGradient${f("id",r)}${f("cx",`${e.cx*100}%`)}${f("cy",`${e.cy*100}%`)}${f("fx",`${e.fx*100}%`)}${f("fy",`${e.fy*100}%`)}${f("r",`${e.r*100}%`)}${e.spreadMethod?f("spreadMethod",e.spreadMethod):""}${n}>${t}</radialGradient>`}function nr(r,e){if(e.svgContent!=null){let l=e.width??10,u=e.height??10,c=e.patternUnits??"userSpaceOnUse",h=e.patternContentUnits,d=e.patternTransform,m=e.viewBox,p=e.preserveAspectRatio,y=e.x??0,g=e.y??0,$=`<pattern${f("id",r)}`;return $+=f("patternUnits",c),h&&($+=f("patternContentUnits",h)),y&&($+=f("x",y)),g&&($+=f("y",g)),$+=f("width",l),$+=f("height",u),m&&($+=f("viewBox",m)),p&&($+=f("preserveAspectRatio",p)),d&&($+=f("patternTransform",d)),$+=`>${e.svgContent}</pattern>`,$}let t=10*(e.scale??1),n=e.rotation??0,i=e.color||"#000000",a=e.backgroundColor||"#ffffff",o="";return o+=`<rect${f("width",t)}${f("height",t)}${f("fill",a)}/>`,o+=Qn(e.patternType,t,i),`<pattern${f("id",r)}${f("patternUnits","userSpaceOnUse")}${f("width",t)}${f("height",t)}${n?f("patternTransform",`rotate(${n})`):""}>${o}</pattern>`}function Qn(r,e,t){return ge(r,e,t).map(i=>{let a=Object.entries(i.attrs).map(([o,l])=>f(o,l)).join("");return`<${i.tag}${a}/>`}).join("")}function Jn(r){let e=new Set,t=new Set;for(let n of r){let i=n.state;i.markerStart&&e.add(i.markerStart),i.markerMid&&e.add(i.markerMid),i.markerEnd&&e.add(i.markerEnd);let a=i.startEndpoint,o=i.endEndpoint;a&&a!=="none"&&t.add(a),o&&o!=="none"&&t.add(o)}return{ids:e,legacyEndpoints:t}}function q(r){let e=Array.isArray(r)?Jn(r):r;if(e.ids.size===0&&e.legacyEndpoints.size===0)return"";let t="",n=ne();for(let i of n){let a=i.id,o=a.replace("line-marker-",""),l=`mkr-builtin-${o}`,u=e.legacyEndpoints.has(o)||e.ids.has(a),c=e.ids.has(l);if(!u&&!c)continue;let h=i.element,d=Object.entries(h.attrs).map(([y,g])=>f(y,g)).join(""),m=`<${h.tag}${d}/>`,p=y=>{t+=`<marker${f("id",y)}${f("viewBox",ye)}${f("refX",i.refX)}${f("refY",i.refY)}${f("markerWidth",6)}${f("markerHeight",6)}${f("orient","auto-start-reverse")}>${m}</marker>`};u&&p(a),c&&p(l)}return t}var te=r=>r.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,"""),ir=["linear-gradient","radial-gradient","pattern","filter","marker","symbol"];function sr(r){switch(r.kind){case"symbol":return ar(r);case"marker":return or(r);case"linear-gradient":return lr(r);case"radial-gradient":return ur(r);case"pattern":return cr(r);case"filter":return dr(r)}}function ar(r){let e=r.shapes.map(t=>G(t)).join("");return`<symbol id="${te(r.id)}" viewBox="${te(r.viewBox)}">${e}</symbol>`}function or(r){let e;if(r.builtIn){let n=ne().find(i=>r.id.includes(i.id)||r.id===i.id);if(n){let i=Object.entries(n.element.attrs).map(([a,o])=>` ${a}="${te(String(o))}"`).join("");e=`<${n.element.tag}${i}/>`}else e=""}else e=r.shapes.map(n=>G(n)).join("");let t=typeof r.orient=="number"?String(r.orient):r.orient;return`<marker id="${te(r.id)}" viewBox="${te(r.viewBox)}" refX="${r.refX}" refY="${r.refY}" markerWidth="${r.markerWidth}" markerHeight="${r.markerHeight}" markerUnits="${te(r.markerUnits)}" orient="${te(t)}">${e}</marker>`}function lr(r){let e={...r.gradient,type:"linear-gradient",id:r.id};return tr(r.id,e)}function ur(r){let e={...r.gradient,type:"radial-gradient",id:r.id};return rr(r.id,e)}function cr(r){let e={...r.pattern,type:"pattern",id:r.id};return nr(r.id,e)}function dr(r){return Xe(r.id,r.filters,{colorInterpolation:r.colorInterpolation,filterUnits:r.filterUnits,primitiveUnits:r.primitiveUnits,x:r.x,y:r.y,width:r.width,height:r.height})}function hr(r){let e=new Map;for(let n of r){let i=e.get(n.kind);i?i.push(n):e.set(n.kind,[n])}let t="";for(let n of ir){let i=e.get(n);if(i)for(let a of i)t+=sr(a)}return t}function ei(r){let e=new Set,t=n=>{typeof n=="string"&&n&&e.add(n)};for(let n of r){let i=n.state;if(!i)continue;t(i.fillLibraryId),t(i.strokeLibraryId),t(i.markerStart),t(i.markerMid),t(i.markerEnd),t(i.symbolId);let a=i.filterLibraryIds;if(Array.isArray(a))for(let o of a)t(o)}return e}function K(r,e){let t=new Map;for(let l of e)t.set(l.id,l);let n=new Map,i=l=>{if(!l)return;let u=t.get(l);u&&n.set(l,u)},a=(l,u)=>{if(!l||typeof l!="object")return;let c=l;if(!c.id||n.has(c.id))return;let h=u==="linear-gradient"?"linear-gradient":u==="radial-gradient"?"radial-gradient":u==="pattern"?"pattern":null;if(!h)return;let{id:d,sourceId:m,...p}=l,y;if(h==="linear-gradient")y={kind:"linear-gradient",id:c.id,name:m??c.id,sourceId:m,gradient:p};else if(h==="radial-gradient")y={kind:"radial-gradient",id:c.id,name:m??c.id,sourceId:m,gradient:p};else{let{customPatternId:g,...$}=p;y={kind:"pattern",id:c.id,name:m??c.id,sourceId:m,pattern:$}}n.set(c.id,y)},o=(l,u)=>{let c=l.filters;if(!Array.isArray(c)||c.length===0)return;let h=`filter-${u}`;n.has(h)||n.set(h,{kind:"filter",id:h,name:h,filters:c,...l.filterColorInterpolation&&l.filterColorInterpolation!=="auto"?{colorInterpolation:l.filterColorInterpolation}:{},...l.filterUnits?{filterUnits:l.filterUnits}:{},...l.primitiveUnits?{primitiveUnits:l.primitiveUnits}:{},...typeof l.filterX=="string"?{x:l.filterX}:{},...typeof l.filterY=="string"?{y:l.filterY}:{},...typeof l.filterWidth=="string"?{width:l.filterWidth}:{},...typeof l.filterHeight=="string"?{height:l.filterHeight}:{}})};for(let l of r){let u=l.state;if(!u)continue;i(u.fillLibraryId),i(u.strokeLibraryId),i(u.markerStart),i(u.markerMid),i(u.markerEnd),i(u.symbolId);let c=u.filterLibraryIds;if(Array.isArray(c))for(let h of c)typeof h=="string"&&i(h);u.fillLibraryId||a(u.fillGradient,u.fillType),u.strokeLibraryId||a(u.strokeGradient,u.strokeType),(!Array.isArray(c)||c.length===0)&&o(u,l.id)}return n.size===0?"":hr(Array.from(n.values()))}var ti={x:"x",y:"y",cx:"cx",cy:"cy",x1:"x1",y1:"y1",x2:"x2",y2:"y2",posX:"x",posY:"y",radius:"r",r:"r",rx:"rx",ry:"ry",width:"width",height:"height",opacity:"opacity",fillOpacity:"fill-opacity",strokeOpacity:"stroke-opacity",fillColor:"fill",strokeColor:"stroke",strokeWidth:"stroke-width",borderWidth:"stroke-width",cornerRadius:"rx",fontSize:"font-size"},ri=new Set(["rotation","skewX","skewY"]);function ni(r){let t=_e[r];return t?t.join(" "):"0 0 1 1"}function se(r){return r.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function Je(r){return r.cycleDuration!==void 0&&r.cycleDuration>0?r.cycleDuration:r.keyframes.length===0?0:r.keyframes[r.keyframes.length-1].time}function et(r,e){let t=r.keyframes;if(t.length===0)return{values:[],keyTimes:[],keySplines:[]};let n=t.map(o=>String(o.value)),i=t.map(o=>e>0?(o.time/e).toFixed(4):"0"),a=[];for(let o=1;o<t.length;o++)a.push(ni(t[o].easing));return{values:n,keyTimes:i,keySplines:a}}function tt(r){let e=r.beginTrigger;if(!e)return"0s";switch(e.type){case"time":return`${e.value}s`;case"event":return e.value;default:return"0s"}}function rt(r){return r.cycleInfinite?"indefinite":r.cycleRepeats&&r.cycleRepeats>1?String(r.cycleRepeats):null}function ii(r){let e=ti[r.property];if(!e)return"";let t=Je(r);if(t<=0)return"";let{values:n,keyTimes:i,keySplines:a}=et(r,t);if(n.length<2)return"";let o=`<animate attributeName="${se(e)}"`;o+=` values="${se(n.join(";"))}"`,o+=` keyTimes="${i.join(";")}"`,a.length>0&&a.some(u=>u!=="0 0 1 1")&&(o+=' calcMode="spline"',o+=` keySplines="${a.join(";")}"`),o+=` dur="${t}s"`,o+=` begin="${tt(r)}"`;let l=rt(r);return l&&(o+=` repeatCount="${l}"`),o+=' fill="freeze"',o+="/>",o}function si(r){let e;switch(r.property){case"rotation":e="rotate";break;case"skewX":e="skewX";break;case"skewY":e="skewY";break;default:return""}let t=Je(r);if(t<=0)return"";let{values:n,keyTimes:i,keySplines:a}=et(r,t);if(n.length<2)return"";let o=e==="rotate"&&r.transformOrigin?n.map(c=>`${c} ${r.transformOrigin.x} ${r.transformOrigin.y}`):n,l='<animateTransform attributeName="transform"';l+=` type="${e}"`,l+=` values="${se(o.join(";"))}"`,l+=` keyTimes="${i.join(";")}"`,a.length>0&&a.some(c=>c!=="0 0 1 1")&&(l+=' calcMode="spline"',l+=` keySplines="${a.join(";")}"`),l+=` dur="${t}s"`,l+=` begin="${tt(r)}"`;let u=rt(r);return u&&(l+=` repeatCount="${u}"`),l+=` additive="${r.additive??"sum"}"`,l+=' fill="freeze"',l+="/>",l}function ai(r){if(!r.motionPath)return"";let e=Je(r);if(e<=0)return"";let{keyTimes:t,keySplines:n}=et(r,e),i=r.keyframes.map(c=>{let h=typeof c.value=="number"?c.value:parseFloat(c.value);return Math.max(0,Math.min(1,h))}),a=!!r.motionPathRef&&(r.motionPathRef.mode??"trackShape")==="curveTemplate",o="<animateMotion";a||(o+=` path="${se(r.motionPath)}"`),o+=` keyTimes="${t.join(";")}"`,o+=` keyPoints="${i.join(";")}"`,n.length>0&&n.some(c=>c!=="0 0 1 1")&&(o+=' calcMode="spline"',o+=` keySplines="${n.join(";")}"`),o+=` dur="${e}s"`,o+=` begin="${tt(r)}"`;let l=rt(r);l&&(o+=` repeatCount="${l}"`),o+=' fill="freeze"';let u=r.motionRotate??"auto";return o+=` rotate="${u}"`,a?o+=`><mpath href="#${se(r.motionPathRef.shapeId)}"/></animateMotion>`:o+="/>",o}function nt(r){let e=new Map;for(let t of r.tracks){if(!t.enabled||t.keyframes.length<2)continue;let n=[...t.keyframes].sort((o,l)=>o.time-l.time),i={...t,locked:t.locked??!1,keyframes:n.map(o=>({time:o.time,value:o.value,easing:o.easing}))},a="";if(t.property==="pathMotion"&&t.motionPath?a=ai(i):ri.has(t.property)?a=si(i):a=ii(i),a){let o=e.get(t.shapeId)??[];o.push(a),e.set(t.shapeId,o)}}return e}function ae(r,e={}){let{xmlDeclaration:t=!0,backgroundColor:n,indent:i=!0,className:a}=e,o=r.viewboxes?.[0],l=e.width??o?.width??800,u=e.height??o?.height??600,c=e.viewBox??`0 0 ${l} ${u}`,h=i?`
|
|
7
|
-
`:"",d=i?" ":"",m=r.shapes??[],p=m.filter(R=>R.state?.displayMode==="motionOnly"),y=m.filter(R=>R.state?.displayMode!=="motionOnly"),g=ci(r),$=di(r),w=[...Array.isArray(r.library)?r.library:[],...($??[]).filter(R=>!R.builtIn&&!(Array.isArray(r.library)&&r.library.some(F=>F.id===R.id)))],x=K(y,w),S=q(y),_=gi(g,y),A=oi(p),C=x.length>0||S.length>0||_.length>0||A.length>0,b="";C&&(b=`${h}${d}<defs>${h}`,x.length>0&&(b+=`${d}${d}${x}${h}`),S.length>0&&(b+=`${d}${d}${S}${h}`),_.length>0&&(b+=`${d}${d}${_}${h}`),A.length>0&&(b+=`${d}${d}${A}${h}`),b+=`${d}</defs>`);let k="";n&&(k=`${h}${d}<rect width="${l}" height="${u}" fill="${n}"/>`);let v=r.animationTimeline?nt(r.animationTimeline):null,L=y.map(R=>{let F=R.type==="symbol-instance"?mi(R,g):G(R),I=v?.get(R.id);return I&&I.length>0&&(F=yi(F,I,d)),`${d}${F}`}).join(h),P="";return t&&(P+=`<?xml version="1.0" encoding="UTF-8"?>${h}`),P+='<svg xmlns="http://www.w3.org/2000/svg"',P+=` width="${l}" height="${u}"`,P+=` viewBox="${c}"`,a&&(P+=` class="${a}"`),P+=">",P+=b,P+=k,y.length>0&&(P+=`${h}${L}`),P+=`${h}</svg>${h}`,P}function oi(r){if(r.length===0)return"";let e=[];for(let t of r){let n=li(t);if(!n)continue;let i=ui(n);e.push(`<path id="${pr(t.id)}" d="${pr(i)}"/>`)}return e.join("")}function li(r){let e=r.state;if(typeof e?.d=="string")return e.d;switch(r.type){case"rectangle":{let t=e?.x??0,n=e?.y??0,i=e?.width??0,a=e?.height??0;return i<=0||a<=0?null:`M${t},${n}h${i}v${a}h${-i}Z`}case"circle":{let t=e?.cx??0,n=e?.cy??0,i=e?.radius??0;return i<=0?null:`M${t-i},${n}A${i},${i} 0 1 0 ${t+i},${n}A${i},${i} 0 1 0 ${t-i},${n}Z`}case"ellipse":{let t=e?.cx??0,n=e?.cy??0,i=e?.rx??0,a=e?.ry??0;return i<=0||a<=0?null:`M${t-i},${n}A${i},${a} 0 1 0 ${t+i},${n}A${i},${a} 0 1 0 ${t-i},${n}Z`}case"line":{let t=e?.x1??0,n=e?.y1??0,i=e?.x2??0,a=e?.y2??0;return`M${t},${n}L${i},${a}`}default:return null}}function ui(r){let e=/[Mm]\s*(-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)[\s,]+(-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)/.exec(r);if(!e)return r;let t=parseFloat(e[1]),n=parseFloat(e[2]);if(!isFinite(t)||!isFinite(n)||t===0&&n===0)return r;let i=!0;return r.replace(/([MLCQSTHVAZ])\s*([\d\s.,e+-]*)/gi,(a,o,l)=>{let u=o.toUpperCase(),c=o!==u,h=i;if(i=!1,u==="Z")return a;let d=l.trim().split(/[\s,]+/).filter(p=>p.length>0).map(Number);if(d.length===0||c&&!h)return a;let m=[];if(u==="H")for(let p of d)m.push(p-t);else if(u==="V")for(let p of d)m.push(p-n);else if(u==="A")for(let p=0;p<d.length;p+=7)m.push(d[p],d[p+1],d[p+2],d[p+3],d[p+4]),p+5<d.length&&m.push(d[p+5]-t),p+6<d.length&&m.push(d[p+6]-n);else for(let p=0;p<d.length;p+=2)m.push(d[p]-t),p+1<d.length&&m.push(d[p+1]-n);return`${o} ${m.join(" ")}`})}function pr(r){return r.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}function ci(r){let t=(Array.isArray(r.library)?r.library:[]).filter(n=>n.kind==="symbol");return t.length>0?t:r.symbols??[]}function di(r){let t=(Array.isArray(r.library)?r.library:[]).filter(n=>n.kind==="marker");return t.length>0?t:r.markers}var it=r=>r.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,"""),hi=r=>r.replace(/[^a-zA-Z0-9_-]/g,"_");function fr(r){let e=r.state.symbolId??"",t=r.state.variantKey??"";return r.state.symbolOverrides&&Object.keys(r.state.symbolOverrides).length>0?`${e}--ovr-${r.id}`:t?`${e}--${hi(t)}`:e}function pi(r,e){return r.map(t=>{let n=e[t.id];return!n||Object.keys(n).length===0?t:{...t,state:{...t.state,...n}}})}function fi(r,e){return e?r.variants?.[e]??r.shapes:r.shapes}function mi(r,e){let t=fr(r),n=r.state.x??0,i=r.state.y??0,a=r.state.width??100,o=r.state.height??100;return`<use href="#${it(t)}" x="${n}" y="${i}" width="${a}" height="${o}"/>`}function gi(r,e){if(r.length===0)return"";let t=new Map;for(let a of r)t.set(a.id,a);let n=new Map;for(let a of e){if(a.type!=="symbol-instance")continue;let o=a.state.symbolId??"",l=t.get(o);if(!l)continue;let u=fr(a);if(n.has(u))continue;let c=fi(l,a.state.variantKey??""),h=a.state.symbolOverrides;h&&Object.keys(h).length>0&&(c=pi(c,h)),n.set(u,{def:l,resolved:c})}if(n.size===0)return"";let i=[];for(let[a,{def:o,resolved:l}]of n){let u=l.map(c=>G(c)).join("");i.push(`<symbol id="${it(a)}" viewBox="${it(o.viewBox)}">${u}</symbol>`)}return i.join("")}function yi(r,e,t){let n=e.join(""),i=r.lastIndexOf("/>");if(i!==-1){let o=r.match(/^<(\w+)/),l=o?o[1]:"g";return r.slice(0,i)+">"+n+`</${l}>`}let a=r.match(/<\/(\w+)>$/);if(a){let o=r.lastIndexOf(`</${a[1]}>`);return r.slice(0,o)+n+r.slice(o)}return r+n}function st(r,e){let t=W(r,e);return ae(r,{width:t.width,height:t.height,xmlDeclaration:e.xmlDeclaration??!1,indent:!0})}function bi(r){return r==="class"?"className":r==="for"?"htmlFor":r.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function mr(r){return r.replace(/\s([a-z][a-z-]*?)=/g,(e,t)=>t.startsWith("data-")||t.startsWith("aria-")?e:` ${bi(t)}=`)}function at(r,e){let t=e.componentName??"SvgComponent",n=W(r,e),i=e.indent??" ",a=r.shapes??[],o=e.typescript??!1,l=Array.isArray(r.library)?r.library:[],u=K(a,l),c=q(a),h=u+c,d=h.length>0,m=a.map(y=>{let g=G(y);return`${i}${i}${i}${mr(g)}`}),p=[];p.push("import React from 'react';"),p.push(""),o?(p.push(`interface ${t}Props {`),p.push(`${i}className?: string;`),p.push(`${i}style?: React.CSSProperties;`),p.push("}"),p.push(""),p.push(`const ${t}: React.FC<${t}Props> = ({ className, style }) => {`)):p.push(`const ${t} = ({ className, style }) => {`),p.push(`${i}return (`),p.push(`${i}${i}<svg xmlns="http://www.w3.org/2000/svg" width="${n.width}" height="${n.height}" viewBox="0 0 ${n.width} ${n.height}" className={className} style={style}>`),d&&(p.push(`${i}${i}${i}<defs>`),p.push(`${i}${i}${i}${i}${mr(h)}`),p.push(`${i}${i}${i}</defs>`));for(let y of m)p.push(y);return p.push(`${i}${i}</svg>`),p.push(`${i});`),p.push("};"),p.push(""),p.push(`export default ${t};`),p.push(""),p.join(`
|
|
8
|
-
|
|
9
|
-
`)}
|
|
10
|
-
`)}function
|
|
6
|
+
${l}`)}}return a}function jr(r){return[...r].sort((e,t)=>e.id.localeCompare(t.id))}function ae(r){if(r==null)return r;if(Array.isArray(r))return r.map(ae);if(typeof r!="object")return r;let e={},t=Object.keys(r).sort();for(let n of t)e[n]=ae(r[n]);return e}function Wr(r){let e={};return e.id=r.id,e.type=r.type,e.state=ae(r.state),e}var H=/\{\{\s*([\w.\-]+)\s*\}\}/g;function Ee(r,e){return r.replace(H,(t,n)=>{let s=e[n];return s!==void 0?String(s):t})}function De(r,e={}){let t={};if(r.templateVariables)for(let s of r.templateVariables)s.defaultValue!==void 0&&s.defaultValue!==""&&(t[s.name]=s.defaultValue);if(Object.assign(t,e),Object.keys(t).length===0)return JSON.parse(JSON.stringify(r));let n=JSON.parse(JSON.stringify(r));for(let s of n.shapes)ye(s.state,t);if(n.documentMetadata){let s=n.documentMetadata;ye(s,t)}return n}function ye(r,e){for(let t of Object.keys(r)){let n=r[t];if(typeof n=="string"){if(H.lastIndex=0,H.test(n)){H.lastIndex=0;let s=Ee(n,e);if(Hr(n)){let a=Number(s);if(!isNaN(a)&&Yr(t)){r[t]=a;continue}}r[t]=s}}else if(Array.isArray(n))for(let s=0;s<n.length;s++)typeof n[s]=="string"?(H.lastIndex=0,H.test(n[s])&&(H.lastIndex=0,n[s]=Ee(n[s],e))):n[s]!==null&&typeof n[s]=="object"&&ye(n[s],e);else n!==null&&typeof n=="object"&&ye(n,e)}}function Hr(r){return/^\s*\{\{\s*[\w.\-]+\s*\}\}\s*$/.test(r)}var Xr=new Set(["x","y","width","height","radius","rx","ry","cx","cy","x1","y1","x2","y2","fontSize","borderWidth","cornerRadius","opacity","fillOpacity","strokeOpacity","rotation","skewX","skewY","scaleX","scaleY","letterSpacing","wordSpacing","lineHeight","sides","arms","innerRadiusPercent","armWidthPercent","teeth","toothDepthPercent","holeRadiusPercent","turns","thicknessPercent","direction","headWidthPercent","headLengthPercent","shaftWidthPercent","shiftAngle","dashLength","gapLength","textPathStartOffset","imageOpacity"]);function Yr(r){return Xr.has(r)}function Be(r){let e=r.templateVariables??[],t=new Set(e.map(a=>a.name)),n=new Set;for(let a of r.shapes)be(a.state,n);r.documentMetadata&&be(r.documentMetadata,n);let s=[...n].filter(a=>!t.has(a)).sort();return{defined:[...e],undeclared:s}}function be(r,e){for(let t of Object.values(r))if(typeof t=="string"){let n;for(H.lastIndex=0;(n=H.exec(t))!==null;)e.add(n[1])}else if(Array.isArray(t))for(let n of t)if(typeof n=="string"){let s;for(H.lastIndex=0;(s=H.exec(n))!==null;)e.add(s[1])}else n!==null&&typeof n=="object"&&be(n,e);else t!==null&&typeof t=="object"&&be(t,e)}function qr(r){let e={};for(let t of r){let n=t.indexOf("=");if(n===-1)throw new Error(`Invalid variable format: "${t}". Expected "name=value".`);let s=t.slice(0,n).trim(),a=t.slice(n+1);if(!s)throw new Error(`Invalid variable format: "${t}". Variable name cannot be empty.`);e[s]=a}return e}var Zr=3,Kr=12;function Qr(r){return r==null||!Number.isFinite(r)?3:r<0?0:r>12?12:Math.floor(r)}function Ge(r,e){if(!Number.isFinite(r))return r;let t=Math.pow(10,e);return Math.round(r*t)/t}var Jr=/-?\d+(?:\.\d+)?(?:[eE][-+]?\d+)?/g;function zt(r,e){return r.replace(Jr,t=>{let n=parseFloat(t);return Number.isFinite(n)?String(Ge(n,e)):t})}var en=new Set(["rawTransform","strokeDasharray","filterX","filterY","filterWidth","filterHeight","cssClipPath"]),tn=new Set(["metadata","customMetadata","customAttrs","customData","bindings","richTextData","cssMaskProperties","rawMetadata"]);function q(r,e,t){if(e==null)return e;if(typeof e=="number")return Ge(e,t);if(typeof e=="string")return en.has(r)?zt(e,t):e;if(typeof e=="boolean")return e;if(Array.isArray(e))return e.map(n=>q(r,n,t));if(typeof e=="object"){if(tn.has(r))return e;if(r==="symbolOverrides"){let s={};for(let[a,o]of Object.entries(e))s[a]=q("state",o,t);return s}let n={};for(let[s,a]of Object.entries(e))n[s]=q(s,a,t);return n}return e}function Oe(r,e){return{id:r.id,type:r.type,state:q("state",r.state,e)}}function rn(r,e){let t={...r,shapes:r.shapes.map(n=>Oe(n,e)),viewboxes:r.viewboxes.map(n=>q("viewbox",n,e))};return r.guides&&(t.guides=r.guides.map(n=>q("guide",n,e))),r.measurements&&(t.measurements=r.measurements.map(n=>q("measurement",n,e))),r.animationTimeline&&(t.animationTimeline=q("animationTimeline",r.animationTimeline,e)),r.symbols&&(t.symbols=r.symbols.map(n=>({...n,shapes:n.shapes.map(s=>Oe(s,e))}))),r.markers&&(t.markers=r.markers.map(n=>q("marker",n,e))),r.customPatterns&&(t.customPatterns=r.customPatterns.map(n=>q("customPattern",n,e))),t}function xe(r,e,t=-90){let n=[],s=t*Math.PI/180;for(let a=0;a<r;a++){let o=s+a*2*Math.PI/r;n.push({x:e*Math.cos(o),y:e*Math.sin(o)})}return n}function Ve(r,e,t,n=-90){let s=[],a=e*(t/100),o=n*Math.PI/180;for(let l=0;l<r*2;l++){let u=o+l*Math.PI/r,c=l%2===0?e:a;s.push({x:c*Math.cos(u),y:c*Math.sin(u)})}return s}function ze(r,e,t=0){let n=r*(e/100)/2,s=[{x:-n,y:-r},{x:n,y:-r},{x:n,y:-n},{x:r,y:-n},{x:r,y:n},{x:n,y:n},{x:n,y:r},{x:-n,y:r},{x:-n,y:n},{x:-r,y:n},{x:-r,y:-n},{x:-n,y:-n}];if(t===0)return s;let a=Math.cos(t*Math.PI/180),o=Math.sin(t*Math.PI/180);return s.map(l=>({x:l.x*a-l.y*o,y:l.x*o+l.y*a}))}function je(r,e,t,n,s=-90){let o=r*2*(t/100),l=r*(e/100),u=l*(n/100),c=[{x:r,y:0},{x:r-o,y:-l/2},{x:r-o,y:-u/2},{x:-r,y:-u/2},{x:-r,y:u/2},{x:r-o,y:u/2},{x:r-o,y:l/2}];if(s===0)return c;let d=Math.cos(s*Math.PI/180),p=Math.sin(s*Math.PI/180);return c.map(m=>({x:m.x*d-m.y*p,y:m.x*p+m.y*d}))}function We(r,e,t,n,s=0){let a=r,o=a*(t/100),l=a*(n/100),u=l/2,c=e*Math.PI/180,d=Math.cos(c),p=Math.sin(c),m=Math.abs(d),h=Math.abs(p),y=Math.max(m,h)||1,g={x:d*(a/y),y:p*(a/y)},b={x:g.x+d*o,y:g.y+p*o},_=Math.min(l,a-u),S=-a+u+_,P=a-u-_,x={x:-a,y:-a},C={x:a,y:-a},I={x:a,y:a},$={x:-a,y:a},k;if(m>=h&&d>0){let w=Math.max(S,Math.min(P,g.y)),F={x:a,y:w-u},A={x:a,y:w+u};k=[x,C,F,b,A,I,$]}else if(m>=h&&d<=0){let w=Math.max(S,Math.min(P,g.y)),F={x:-a,y:w+u},A={x:-a,y:w-u};k=[x,C,I,$,F,b,A]}else if(p<0){let w=Math.max(S,Math.min(P,g.x)),F={x:w-u,y:-a},A={x:w+u,y:-a};k=[x,F,b,A,C,I,$]}else{let w=Math.max(S,Math.min(P,g.x)),F={x:w+u,y:a},A={x:w-u,y:a};k=[x,C,I,F,b,A,$]}if(s===0)return k;let M=Math.cos(s*Math.PI/180),L=Math.sin(s*Math.PI/180);return k.map(w=>({x:w.x*M-w.y*L,y:w.x*L+w.y*M}))}function He(r,e,t,n,s=0){let a=Math.max(2,Math.round(e)),o=r*(t/100),l=r*(n/100)/2,u=a+1,c=[];for(let g=0;g<u;g++){let b=g/(u-1),_=-r+b*2*r,S=0;g>0&&g<u-1&&(S=g%2===1?o:-o),c.push({x:S,y:_})}let d=[],p=[];for(let g=0;g<u;g++){if(g===0||g===u-1){d.push({...c[g]}),p.push({...c[g]});continue}let b=c[g-1],_=c[g],S=c[g+1],P=_.x-b.x,x=_.y-b.y,C=Math.hypot(P,x)||1,I=P/C,$=x/C,k=S.x-_.x,M=S.y-_.y,L=Math.hypot(k,M)||1,w=k/L,F=M/L,A=(I+w)/2,R=($+F)/2,D=Math.hypot(A,R),T,G;D<1e-6?(T=-$,G=I):(T=-R/D,G=A/D),d.push({x:_.x-T*l,y:_.y-G*l}),p.push({x:_.x+T*l,y:_.y+G*l})}let m=[];m.push(d[0]);for(let g=1;g<u-1;g++)m.push(p[g]);m.push(d[u-1]);for(let g=u-2;g>=1;g--)m.push(d[g]);if(s===0)return m;let h=Math.cos(s*Math.PI/180),y=Math.sin(s*Math.PI/180);return m.map(g=>({x:g.x*h-g.y*y,y:g.x*y+g.y*h}))}function Xe(r,e,t,n=0){let s=r,a=Math.max(.3,Math.min(.9,e/100)),o=-s*(t/100),l={x:0,y:s},u={x:0,y:o},c={x:-s*a,y:s*.4},d={x:-s*a,y:-s},p={x:s*a,y:-s},m={x:s*a,y:s*.4},h=[l,c,d,u,p,m,l],y=n===0?h:(()=>{let C=Math.cos(n*Math.PI/180),I=Math.sin(n*Math.PI/180);return h.map($=>({x:$.x*C-$.y*I,y:$.x*I+$.y*C}))})(),[g,b,_,S,P,x]=y;return`M ${g.x} ${g.y} C ${b.x} ${b.y} ${_.x} ${_.y} ${S.x} ${S.y} C ${P.x} ${P.y} ${x.x} ${x.y} ${g.x} ${g.y} Z`}function Ye(r,e,t,n=0){let s=Math.max(3,Math.round(e)),a=Math.max(.3,Math.min(1,t/100)),o=r,l=o*1.7,u=o*1.15,c=[];for(let $=0;$<s;$++){let M=(90+$/s*360)*Math.PI/180;c.push({x:l/2*Math.cos(M),y:-(u/2)*Math.sin(M)})}let d=.15,p=0;for(let $=0;$<s;$++){let k=c[$],M=c[($+1)%s];p=Math.max(p,Math.hypot(M.x-k.x,M.y-k.y))}let m=p/(2*(1-d))+.001,h=Math.max(m,p*(.68+a*.35)),y=c.map($=>{let k=$.y/(u/2);return h*(1-d*k)});function g($){let k=c[$],M=c[($+1)%s],L=y[$],w=y[($+1)%s],F=M.x-k.x,A=M.y-k.y,R=Math.hypot(F,A)||1,D=(L*L-w*w+R*R)/(2*R),T=Math.sqrt(Math.max(0,L*L-D*D)),G=k.x+D/R*F,W=k.y+D/R*A,X=-A/R,ie=F/R,Y={x:G+X*T,y:W+ie*T},O={x:G-X*T,y:W-ie*T};return Y.x*Y.x+Y.y*Y.y>O.x*O.x+O.y*O.y?Y:O}let b=[];for(let $=0;$<s;$++)b.push(g($));let _=14,S=[];for(let $=0;$<s;$++){let k=c[$],M=y[$],L=b[($-1+s)%s],w=b[$],F=Math.atan2(L.y-k.y,L.x-k.x),R=Math.atan2(w.y-k.y,w.x-k.x)-F;R<=0&&(R+=2*Math.PI);let D=2*Math.PI-R,T=F+R/2,G=F-D/2,W={x:k.x+M*Math.cos(T),y:k.y+M*Math.sin(T)},X={x:k.x+M*Math.cos(G),y:k.y+M*Math.sin(G)},Y=W.x*W.x+W.y*W.y>X.x*X.x+X.y*X.y?R:-D;for(let O=0;O<_;O++){let he=O/_,se=F+he*Y;S.push({x:k.x+M*Math.cos(se),y:k.y+M*Math.sin(se)})}}let P=0;for(let $ of S){let k=Math.max(Math.abs($.x),Math.abs($.y));k>P&&(P=k)}if(P>0&&P!==o){let $=o/P;for(let k of S)k.x*=$,k.y*=$}let x=$=>{if(n===0)return $;let k=Math.cos(n*Math.PI/180),M=Math.sin(n*Math.PI/180);return{x:$.x*k-$.y*M,y:$.x*M+$.y*k}},C=S.map(x),I=`M ${C[0].x} ${C[0].y}`;for(let $=1;$<C.length;$++)I+=` L ${C[$].x} ${C[$].y}`;return I+=" Z",I}function Z(r,e=0,t=0){if(r.length<3)return"";if(e<=0)return r.map((a,o)=>(o===0?"M":"L")+`${a.x},${a.y}`).join(" ")+" Z";let n=Math.min(e,t*.4),s="";for(let a=0;a<r.length;a++){let o=r[(a-1+r.length)%r.length],l=r[a],u=r[(a+1)%r.length],c={x:o.x-l.x,y:o.y-l.y},d=Math.hypot(c.x,c.y);c.x/=d,c.y/=d;let p={x:u.x-l.x,y:u.y-l.y},m=Math.hypot(p.x,p.y);p.x/=m,p.y/=m;let h=Math.min(n,d/2),y=Math.min(n,m/2),g={x:l.x+c.x*h,y:l.y+c.y*h},b={x:l.x+p.x*y,y:l.y+p.y*y};s+=a===0?`M${g.x},${g.y}`:` L${g.x},${g.y}`,s+=` Q${l.x},${l.y} ${b.x},${b.y}`}return s+" Z"}function qe(r,e,t="evenodd"){let n=r*(e/100),s=t==="nonzero"?1:0;return`M ${r} 0 A ${r} ${r} 0 1 1 ${-r} 0 A ${r} ${r} 0 1 1 ${r} 0 Z M ${n} 0 A ${n} ${n} 0 1 ${s} ${-n} 0 A ${n} ${n} 0 1 ${s} ${n} 0 Z`}function Ze(r,e,t,n=1,s=0){let a=r*(t/100),l=Math.round(e*36),u=e*2*Math.PI,c=(r-a/2)/u,d=s*Math.PI/180,p=[],m=[];for(let g=0;g<=l;g++){let b=g/l,_=b*u*n+d,S=c*(b*u)+a/2,P=a/2;p.push({x:(S+P*.3)*Math.cos(_),y:(S+P*.3)*Math.sin(_)}),m.push({x:Math.max(0,S-P*.3)*Math.cos(_),y:Math.max(0,S-P*.3)*Math.sin(_)})}let h=`M ${p[0].x} ${p[0].y}`;for(let g=1;g<p.length;g++)h+=` L ${p[g].x} ${p[g].y}`;let y=m[m.length-1];h+=` L ${y.x} ${y.y}`;for(let g=m.length-2;g>=0;g--)h+=` L ${m[g].x} ${m[g].y}`;return h+=" Z",h}var nn=.2;function jt(r,e,t,n=0){let s=e*(t/100),a=e,o=e-s,l=2*Math.PI/r,u=l*nn/2,c=l/4,d=n*Math.PI/180,p=[];for(let m=0;m<r;m++){let h=d+m*l;p.push({x:o*Math.cos(h),y:o*Math.sin(h)}),p.push({x:a*Math.cos(h+c-u),y:a*Math.sin(h+c-u)}),p.push({x:a*Math.cos(h+c+u),y:a*Math.sin(h+c+u)}),p.push({x:o*Math.cos(h+l/2),y:o*Math.sin(h+l/2)})}return p}function Ke(r,e,t,n=0,s=0,a="evenodd",o=0){let l=jt(r,e,t,o),u=Math.min(n,e*.1),c=Z(l,u,e);if(s>0){let d=e*(s/100),p=a==="nonzero"?1:0;c+=` M ${d} 0 A ${d} ${d} 0 1 ${p} ${-d} 0 A ${d} ${d} 0 1 ${p} ${d} 0 Z`}return c}function Qe(r,e,t,n,s,a="round",o="uniform",l){let u=Math.min(t,n)/2,c,d,p,m,h,y,g,b;if(o==="non-uniform"&&l?(c=Math.min(l.radiusTL??s,u),d=Math.min(l.radiusTR??s,u),p=Math.min(l.radiusBR??s,u),m=Math.min(l.radiusBL??s,u),h=l.shapeTL??a,y=l.shapeTR??a,g=l.shapeBR??a,b=l.shapeBL??a):(c=d=p=m=Math.min(s,u),h=y=g=b=a),!(a!=="round"||o==="non-uniform"||c>0&&h!=="round"||d>0&&y!=="round"||p>0&&g!=="round"||m>0&&b!=="round")&&c===d&&d===p&&p===m)return null;let S=`M${r+c},${e}`;return S+=` L${r+t-d},${e}`,S+=$e(y,d,r+t,e,"tr"),S+=` L${r+t},${e+n-p}`,S+=$e(g,p,r+t,e+n,"br"),S+=` L${r+m},${e+n}`,S+=$e(b,m,r,e+n,"bl"),S+=` L${r},${e+c}`,S+=$e(h,c,r,e,"tl"),S+=" Z",S}function $e(r,e,t,n,s){if(e<=0)return"";switch(r){case"round":switch(s){case"tr":return` A${e},${e} 0 0 1 ${t},${n+e}`;case"br":return` A${e},${e} 0 0 1 ${t-e},${n}`;case"bl":return` A${e},${e} 0 0 1 ${t},${n-e}`;case"tl":return` A${e},${e} 0 0 1 ${t+e},${n}`}break;case"scoop":switch(s){case"tr":return` A${e},${e} 0 0 0 ${t},${n+e}`;case"br":return` A${e},${e} 0 0 0 ${t-e},${n}`;case"bl":return` A${e},${e} 0 0 0 ${t},${n-e}`;case"tl":return` A${e},${e} 0 0 0 ${t+e},${n}`}break;case"bevel":switch(s){case"tr":return` L${t},${n+e}`;case"br":return` L${t-e},${n}`;case"bl":return` L${t},${n-e}`;case"tl":return` L${t+e},${n}`}break;case"notch":switch(s){case"tr":return` L${t-e},${n+e} L${t},${n+e}`;case"br":return` L${t-e},${n-e} L${t-e},${n}`;case"bl":return` L${t+e},${n-e} L${t},${n-e}`;case"tl":return` L${t+e},${n+e} L${t+e},${n}`}break}return""}function Je(r,e,t=!1,n=.5,s){if(r.length<2)return r.length===1?`M ${r[0].x} ${r[0].y}`:"";switch(e){case"CATMULL_ROM":case"catmull-rom":return ln(r,t,n);case"BASIS":case"basis":return un(r,t);case"ARC":case"arc":return s&&s.length>0?sn(r,t,s):ue(r,t,"CUBIC");case"LINEAR":case"linear":return ue(r,t,"LINEAR");case"QUADRATIC":case"quadratic":return ue(r,t,"QUADRATIC");case"CUBIC":case"cubic":return ue(r,t,"CUBIC");default:return ue(r,t)}}function sn(r,e,t){let n=`M ${r[0].x} ${r[0].y}`,s=0,a={rx:50,ry:50,rotation:0,largeArc:!1,sweep:!0};for(let o=0;o<r.length-1;o++){let l=r[o+1];if(l.isSubpathStart){if(e&&o-s>=1){let c=r[s],d=t?.[o]??a;n+=` A ${d.rx} ${d.ry} ${d.rotation} ${d.largeArc?1:0} ${d.sweep?1:0} ${c.x} ${c.y} Z`}n+=` M ${l.x} ${l.y}`,s=o+1;continue}let u=t?.[o]??a;n+=` A ${u.rx} ${u.ry} ${u.rotation} ${u.largeArc?1:0} ${u.sweep?1:0} ${l.x} ${l.y}`}if(e&&r.length-s>1){let o=r[s],l=t?.[r.length-1]??a;n+=` A ${l.rx} ${l.ry} ${l.rotation} ${l.largeArc?1:0} ${l.sweep?1:0} ${o.x} ${o.y} Z`}return n}function ue(r,e,t){let n=`M ${r[0].x} ${r[0].y}`,s=0,a=null,o=null;for(let l=0;l<r.length-1;l++){let u=r[l],c=r[l+1];if(c.isSubpathStart){if(e&&l-s>=1){let p=r[s];n+=Ue(u,p,p.segmentType,a,o,t),n+=" Z"}n+=` M ${c.x} ${c.y}`,s=l+1,a=null,o=null;continue}n+=Ue(u,c,c.segmentType,a,o,t);let d=on(c.segmentType??t,u,c);a=d,d==="quad"?o=u.handleOut??null:o=null}if(e&&r.length-s>1){let l=r[r.length-1],u=r[s];n+=Ue(l,u,u.segmentType,a,o,t),n+=" Z"}return n}var an=.001;function oe(r,e){return Math.abs(r-e)<an}function on(r,e,t){let n=(r??(e.handleOut||t.handleIn?"CUBIC":"LINEAR")).toUpperCase();return n==="CUBIC"||n==="SMOOTH_CUBIC"?"cubic":n==="QUADRATIC"||n==="SMOOTH_QUADRATIC"?"quad":null}function Ue(r,e,t,n,s,a){let o=(t??a??(r.handleOut||e.handleIn?"CUBIC":"LINEAR")).toUpperCase();if(o==="LINEAR"||o==="HORIZONTAL"||o==="VERTICAL")return(o==="HORIZONTAL"||o==="LINEAR")&&oe(r.y,e.y)?` H ${e.x}`:(o==="VERTICAL"||o==="LINEAR")&&oe(r.x,e.x)?` V ${e.y}`:` L ${e.x} ${e.y}`;if(o==="ARC"){let c=e.arcParams;return c?` A ${c.rx} ${c.ry} ${c.rotation} ${c.largeArc?1:0} ${c.sweep?1:0} ${e.x} ${e.y}`:` L ${e.x} ${e.y}`}if(o==="QUADRATIC"||o==="SMOOTH_QUADRATIC"){let c=r.handleOut??{x:(r.x+e.x)/2,y:(r.y+e.y)/2};return n==="quad"&&s&&oe(c.x,2*r.x-s.x)&&oe(c.y,2*r.y-s.y)?` T ${e.x} ${e.y}`:` Q ${c.x} ${c.y} ${e.x} ${e.y}`}let l=r.handleOut??{x:r.x,y:r.y},u=e.handleIn??{x:e.x,y:e.y};return n==="cubic"&&r.handleIn&&r.handleOut&&oe(r.handleOut.x,2*r.x-r.handleIn.x)&&oe(r.handleOut.y,2*r.y-r.handleIn.y)?` S ${u.x} ${u.y} ${e.x} ${e.y}`:` C ${l.x} ${l.y} ${u.x} ${u.y} ${e.x} ${e.y}`}function ln(r,e,t){if(r.length<2)return r.length===1?`M ${r[0].x} ${r[0].y}`:"";let n=t,s=e?[r[r.length-1],...r,r[0],r[1]]:[r[0],...r,r[r.length-1]],a=`M ${r[0].x} ${r[0].y}`,o=e?r.length:r.length-1;for(let l=0;l<o;l++){let u=s[l],c=s[l+1],d=s[l+2],p=s[l+3],m=Math.hypot(d.x-c.x,d.y-c.y),h=Math.hypot(c.x-u.x,c.y-u.y),y=Math.hypot(p.x-d.x,p.y-d.y),g=Math.pow(h,n),b=Math.pow(m,n),_=Math.pow(y,n),S=Math.pow(h,2*n),P=Math.pow(m,2*n),x=Math.pow(y,2*n),C,I,$,k;h<1e-8?(C=c.x,I=c.y):(C=(S*d.x-P*u.x+(2*S+3*g*b+P)*c.x)/(3*g*(g+b)),I=(S*d.y-P*u.y+(2*S+3*g*b+P)*c.y)/(3*g*(g+b))),y<1e-8?($=d.x,k=d.y):($=(x*c.x-P*p.x+(2*x+3*_*b+P)*d.x)/(3*_*(_+b)),k=(x*c.y-P*p.y+(2*x+3*_*b+P)*d.y)/(3*_*(_+b))),a+=` C ${C} ${I} ${$} ${k} ${d.x} ${d.y}`}return e&&(a+=" Z"),a}function un(r,e){let t=r.length;if(t<2)return t===1?`M ${r[0].x} ${r[0].y}`:"";if(t===2)return`M ${r[0].x} ${r[0].y} L ${r[1].x} ${r[1].y}`;if(e){let a=(r[0].x+4*r[1].x+r[2].x)/6,o=(r[0].y+4*r[1].y+r[2].y)/6,l=`M ${a} ${o}`;for(let u=0;u<t;u++){let c=r[(u+1)%t],d=r[(u+2)%t],p=r[(u+3)%t];l+=Ne(c,d,p)}return l+=" Z",l}let n=r,s=`M ${n[0].x} ${n[0].y}`;s+=` L ${(5*n[0].x+n[1].x)/6} ${(5*n[0].y+n[1].y)/6}`;for(let a=0;a<=t-3;a++)s+=Ne(n[a],n[a+1],n[a+2]);return s+=Ne(n[t-2],n[t-1],n[t-1]),s+=` L ${n[t-1].x} ${n[t-1].y}`,s}function Ne(r,e,t){return` C ${(2*r.x+e.x)/3} ${(2*r.y+e.y)/3} ${(r.x+2*e.x)/3} ${(r.y+2*e.y)/3} ${(r.x+4*e.x+t.x)/6} ${(r.y+4*e.y+t.y)/6}`}function ce(r,e,t){let n=Number.isFinite(e)?Math.max(1,e):8,s=Number.isFinite(t)?Math.max(1,t):4;switch(r){case"dashed":case"dotted":case"custom":return`${n} ${s}`;default:return null}}function B(r){return r.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function cn(r){let e=r.fillType;return e||(r.fillGradient?r.fillGradient.r!==void 0?"radial-gradient":"linear-gradient":r.linearGradient?"linear-gradient":r.radialGradient?"radial-gradient":"solid")}function Se(r){let e=new Map,t=r.state,n=t;switch(r.type){case"circle":e.set("cx",String(t.x??0)),e.set("cy",String(t.y??0)),e.set("r",String(t.radius??50));break;case"ellipse":e.set("cx",String(t.cx??0)),e.set("cy",String(t.cy??0)),e.set("rx",String(t.rx??50)),e.set("ry",String(t.ry??30));break;case"rectangle":case"square":e.set("x",String(t.x??0)),e.set("y",String(t.y??0)),e.set("width",String(t.width??100)),e.set("height",String(t.height??100)),(t.cornerRadius??0)>0&&e.set("rx",String(t.cornerRadius));break;case"line":e.set("x1",String(t.x1??0)),e.set("y1",String(t.y1??0)),e.set("x2",String(t.x2??0)),e.set("y2",String(t.y2??0));break;case"text":e.set("x",String(t.x??0)),e.set("y",String(t.y??0)),t.fontSize&&e.set("font-size",String(t.fontSize)),t.fontFamily&&e.set("font-family",t.fontFamily),t.fontWeight&&e.set("font-weight",t.fontWeight),t.fontStyle&&e.set("font-style",t.fontStyle),t.textAnchor&&e.set("text-anchor",t.textAnchor),t.letterSpacing&&e.set("letter-spacing",String(t.letterSpacing));break;case"image":e.set("x",String(t.x??0)),e.set("y",String(t.y??0)),e.set("width",String(t.width??100)),e.set("height",String(t.height??100)),n.href&&e.set("href",String(n.href));break}let s=cn(n);s==="none"?e.set("fill","none"):s==="linear-gradient"||s==="radial-gradient"?e.set("fill",`url(#gradient-fill-${r.id})`):s==="pattern"?e.set("fill",`url(#pattern-fill-${r.id})`):e.set("fill",t.fillColor??"#000000");let a=t.opacity;a!==void 0&&a<1&&e.set("opacity",String(a));let o=t.fillOpacity;o!==void 0&&o<1&&e.set("fill-opacity",String(o)),t.fillRule&&t.fillRule!=="nonzero"&&e.set("fill-rule",t.fillRule);let l=n.strokeType??"solid";if(l==="none")e.set("stroke","none");else if(l==="linear-gradient"||l==="radial-gradient")e.set("stroke",`url(#gradient-stroke-${r.id})`);else{let x=t.borderColor??"none";x!=="none"&&e.set("stroke",x)}let u=t.borderWidth;u!=null&&u!==0&&e.set("stroke-width",String(u));let c=t.strokeOpacity;c!==void 0&&c<1&&e.set("stroke-opacity",String(c));let d=t.lineStyle??"solid",p=t.dashLength??8,m=t.gapLength??4,h=ce(d,p,m);h&&(e.set("stroke-dasharray",h),d==="dotted"&&e.set("stroke-linecap","round"));let y=dn(n);y&&e.set("transform",y);let g=n.filters;g&&g.length>0&&e.set("filter",`url(#filter-${r.id})`);let b=t.shapeRendering;b&&b!=="auto"&&e.set("shape-rendering",b);let _=n.startEndpoint,S=n.endEndpoint;_&&_!=="none"&&e.set("marker-start",`url(#line-marker-${_})`),S&&S!=="none"&&e.set("marker-end",`url(#line-marker-${S})`);let P=n.metadata;return P&&(P.role&&e.set("role",P.role),P.ariaLabel&&e.set("aria-label",P.ariaLabel)),e}function Wt(r){switch(r.type){case"circle":return"circle";case"ellipse":return"ellipse";case"rectangle":case"square":return"rect";case"line":return"line";case"text":return"text";case"image":return"image";case"path":case"polyline":case"triangle":case"ngon":case"star":case"cross":case"ring":case"spiral":case"gear":case"arrow":return"path";default:return"g"}}function dn(r){let e=r.rotation??0,t=r.skewX??0,n=r.skewY??0,s=r.scaleX??1,a=r.scaleY??1;if(e===0&&t===0&&n===0&&s===1&&a===1)return null;let o=r.customPivot;if(!o)return null;let l=[];return l.push(`translate(${o.x}, ${o.y})`),e!==0&&l.push(`rotate(${e})`),(s!==1||a!==1)&&l.push(`scale(${s}, ${a})`),t!==0&&l.push(`skewX(${t})`),n!==0&&l.push(`skewY(${n})`),l.push(`translate(${-o.x}, ${-o.y})`),l.join(" ")}function K(r,e){let t=r.viewboxes?.[0];return{width:e.width??t?.width??800,height:e.height??t?.height??600}}function i(r,e){return e==null||e===""?"":` ${r}="${B(String(e))}"`}function _e(r){let e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(r);return e?{r:parseInt(e[1],16)/255,g:parseInt(e[2],16)/255,b:parseInt(e[3],16)/255}:{r:0,g:0,b:0}}function pn(r,e,t){let{offsetX:n,offsetY:s,blurRadius:a,spread:o,color:l,opacity:u}=r,c="";if(o===0)c+=`<feDropShadow${i("in",e)}${i("dx",n)}${i("dy",s)}${i("stdDeviation",a/2)}${i("flood-color",l)}${i("flood-opacity",u)}${i("result",`${t}_shadow`)}/>`,c+=`<feMerge${i("result",t)}><feMergeNode${i("in",`${t}_shadow`)}/><feMergeNode${i("in",e)}/></feMerge>`;else{c+=`<feColorMatrix${i("in",e)}${i("type","matrix")}${i("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0")}${i("result",`${t}_alpha`)}/>`;let d=o>0?"dilate":"erode",p=Math.abs(o);c+=`<feMorphology${i("in",`${t}_alpha`)}${i("operator",d)}${i("radius",p)}${i("result",`${t}_spread`)}/>`,c+=`<feGaussianBlur${i("in",`${t}_spread`)}${i("stdDeviation",a/2)}${i("result",`${t}_blur`)}/>`,c+=`<feOffset${i("in",`${t}_blur`)}${i("dx",n)}${i("dy",s)}${i("result",`${t}_offset`)}/>`,c+=`<feFlood${i("flood-color",l)}${i("flood-opacity",u)}${i("result",`${t}_color`)}/>`,c+=`<feComposite${i("in",`${t}_color`)}${i("in2",`${t}_offset`)}${i("operator","in")}${i("result",`${t}_shadow`)}/>`,c+=`<feMerge${i("result",t)}><feMergeNode${i("in",`${t}_shadow`)}/><feMergeNode${i("in",e)}/></feMerge>`}return c}function hn(r,e,t){let{offsetX:n,offsetY:s,blurRadius:a,choke:o,color:l,opacity:u}=r,c=a*(1-o/100),d="";return d+=`<feColorMatrix${i("in",e)}${i("type","matrix")}${i("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0")}${i("result",`${t}_alpha`)}/>`,d+=`<feComponentTransfer${i("in",`${t}_alpha`)}${i("result",`${t}_inverted`)}><feFuncA${i("type","table")}${i("tableValues","1 0")}/></feComponentTransfer>`,d+=`<feGaussianBlur${i("in",`${t}_inverted`)}${i("stdDeviation",c/2)}${i("result",`${t}_blur`)}/>`,d+=`<feOffset${i("in",`${t}_blur`)}${i("dx",n)}${i("dy",s)}${i("result",`${t}_offset`)}/>`,d+=`<feFlood${i("flood-color",l)}${i("flood-opacity",u)}${i("result",`${t}_color`)}/>`,d+=`<feComposite${i("in",`${t}_color`)}${i("in2",`${t}_offset`)}${i("operator","in")}${i("result",`${t}_coloredShadow`)}/>`,d+=`<feComposite${i("in",`${t}_coloredShadow`)}${i("in2",`${t}_alpha`)}${i("operator","in")}${i("result",`${t}_innerShadow`)}/>`,d+=`<feComposite${i("in",`${t}_innerShadow`)}${i("in2",e)}${i("operator","over")}${i("result",t)}/>`,d}function fn(r,e,t){let{blurX:n,blurY:s}=r;return n===0&&s===0?E(e,t):`<feGaussianBlur${i("in",e)}${i("stdDeviation",`${n/2} ${s/2}`)}${i("result",t)}/>`}function mn(r,e,t){let{distance:n,angle:s}=r;if(n===0)return E(e,t);let a=s*Math.PI/180,o=Math.abs(Math.cos(a)*n),l=Math.abs(Math.sin(a)*n);return`<feGaussianBlur${i("in",e)}${i("stdDeviation",`${o/2} ${l/2}`)}${i("result",t)}/>`}function Ht(r,e,t){let{x:n,y:s,z:a,color:o,surfaceScale:l,diffuseConstant:u,specularConstant:c,specularExponent:d}=r,p="";return p+=`<feDiffuseLighting${i("in","SourceAlpha")}${i("surfaceScale",l)}${i("diffuseConstant",u)}${i("lighting-color",o)}${i("result",`${t}_diffuse`)}>`,p+=`<fePointLight${i("x",n)}${i("y",s)}${i("z",a)}/>`,p+="</feDiffuseLighting>",p+=`<feSpecularLighting${i("in","SourceAlpha")}${i("surfaceScale",l)}${i("specularConstant",c)}${i("specularExponent",d)}${i("lighting-color",o)}${i("result",`${t}_specular`)}>`,p+=`<fePointLight${i("x",n)}${i("y",s)}${i("z",a)}/>`,p+="</feSpecularLighting>",p+=`<feComposite${i("in",e)}${i("in2",`${t}_diffuse`)}${i("operator","arithmetic")}${i("k1",1)}${i("k2",0)}${i("k3",0)}${i("k4",0)}${i("result",`${t}_lit`)}/>`,p+=`<feComposite${i("in",`${t}_specular`)}${i("in2",`${t}_lit`)}${i("operator","arithmetic")}${i("k1",0)}${i("k2",1)}${i("k3",1)}${i("k4",0)}${i("result",t)}/>`,p}function Xt(r,e,t){let{x:n,y:s,z:a,pointsAtX:o,pointsAtY:l,pointsAtZ:u,coneAngle:c,color:d,surfaceScale:p,specularConstant:m,specularExponent:h}=r,y="";return y+=`<feSpecularLighting${i("in","SourceAlpha")}${i("surfaceScale",p)}${i("specularConstant",m)}${i("specularExponent",h)}${i("lighting-color",d)}${i("result",`${t}_specular`)}>`,y+=`<feSpotLight${i("x",n)}${i("y",s)}${i("z",a)}${i("pointsAtX",o)}${i("pointsAtY",l)}${i("pointsAtZ",u)}${i("limitingConeAngle",c)}/>`,y+="</feSpecularLighting>",y+=`<feComposite${i("in",`${t}_specular`)}${i("in2","SourceAlpha")}${i("operator","in")}${i("result",`${t}_clipped`)}/>`,y+=`<feComposite${i("in",`${t}_clipped`)}${i("in2",e)}${i("operator","arithmetic")}${i("k1",0)}${i("k2",1)}${i("k3",1)}${i("k4",0)}${i("result",t)}/>`,y}function Yt(r){switch(r.kind){case"point":return`<fePointLight${i("x",r.x)}${i("y",r.y)}${i("z",r.z)}/>`;case"spot":{let e=`<feSpotLight${i("x",r.x)}${i("y",r.y)}${i("z",r.z)}${i("pointsAtX",r.pointsAtX)}${i("pointsAtY",r.pointsAtY)}${i("pointsAtZ",r.pointsAtZ)}`;return r.limitingConeAngle!==void 0&&(e+=i("limitingConeAngle",r.limitingConeAngle)),r.specularExponent!==void 0&&(e+=i("specularExponent",r.specularExponent)),e+"/>"}case"distant":return`<feDistantLight${i("azimuth",r.azimuth)}${i("elevation",r.elevation)}/>`}}function gn(r,e,t){return`<feDiffuseLighting${i("in",e)}${i("surfaceScale",r.surfaceScale)}${i("diffuseConstant",r.diffuseConstant)}${i("lighting-color",r.color)}${i("result",t)}>`+Yt(r.lightSource)+"</feDiffuseLighting>"}function yn(r,e,t){return`<feSpecularLighting${i("in",e)}${i("surfaceScale",r.surfaceScale)}${i("specularConstant",r.specularConstant)}${i("specularExponent",r.specularExponent)}${i("lighting-color",r.color)}${i("result",t)}>`+Yt(r.lightSource)+"</feSpecularLighting>"}function bn(r,e,t){let{width:n,color:s,opacity:a,position:o}=r,l="";if(o==="inside")l+=`<feMorphology${i("in","SourceAlpha")}${i("operator","erode")}${i("radius",n)}${i("result",`${t}_eroded`)}/>`,l+=`<feComposite${i("in","SourceAlpha")}${i("in2",`${t}_eroded`)}${i("operator","out")}${i("result",`${t}_outlineAlpha`)}/>`,l+=`<feFlood${i("flood-color",s)}${i("flood-opacity",a)}${i("result",`${t}_color`)}/>`,l+=`<feComposite${i("in",`${t}_color`)}${i("in2",`${t}_outlineAlpha`)}${i("operator","in")}${i("result",`${t}_outline`)}/>`,l+=`<feComposite${i("in",`${t}_outline`)}${i("in2",e)}${i("operator","over")}${i("result",t)}/>`;else{let u=o==="outside"?n:n/2;l+=`<feMorphology${i("in","SourceAlpha")}${i("operator","dilate")}${i("radius",u)}${i("result",`${t}_dilated`)}/>`,l+=`<feComposite${i("in",`${t}_dilated`)}${i("in2","SourceAlpha")}${i("operator","out")}${i("result",`${t}_outlineAlpha`)}/>`,l+=`<feFlood${i("flood-color",s)}${i("flood-opacity",a)}${i("result",`${t}_color`)}/>`,l+=`<feComposite${i("in",`${t}_color`)}${i("in2",`${t}_outlineAlpha`)}${i("operator","in")}${i("result",`${t}_outline`)}/>`,l+=`<feMerge${i("result",t)}><feMergeNode${i("in",`${t}_outline`)}/><feMergeNode${i("in",e)}/></feMerge>`}return l}function $n(r,e,t){let{amount:n}=r;if(n===0)return E(e,t);let s=1+4*n,a=-n,o=[0,a,0,a,s,a,0,a,0].join(" ");return`<feConvolveMatrix${i("in",e)}${i("order","3")}${i("kernelMatrix",o)}${i("divisor","1")}${i("bias","0")}${i("preserveAlpha","true")}${i("edgeMode","duplicate")}${i("result",t)}/>`}function xn(r,e,t){let{blockSize:n}=r;if(n<=1)return E(e,t);let s=n/2,a="";return a+=`<feMorphology${i("in",e)}${i("operator","erode")}${i("radius",s)}${i("result",`${t}_eroded`)}/>`,a+=`<feMorphology${i("in",`${t}_eroded`)}${i("operator","dilate")}${i("radius",s)}${i("result",t)}/>`,a}function Sn(r,e,t){let{scale:n,frequency:s,octaves:a,warpType:o}=r;if(n===0)return E(e,t);let l="";return l+=`<feTurbulence${i("type",o)}${i("baseFrequency",s)}${i("numOctaves",a)}${i("seed",0)}${i("result",`${t}_turbulence`)}/>`,l+=`<feDisplacementMap${i("in",e)}${i("in2",`${t}_turbulence`)}${i("scale",n)}${i("xChannelSelector","R")}${i("yChannelSelector","G")}${i("result",t)}/>`,l}function kn(r,e,t){let{operator:n,radiusX:s,radiusY:a}=r;return s===0&&a===0?E(e,t):`<feMorphology${i("in",e)}${i("operator",n)}${i("radius",`${s} ${a}`)}${i("result",t)}/>`}function _n(r,e,t){let{levels:n}=r;if(n<2)return E(e,t);let s=[];for(let l=0;l<n;l++)s.push(l/(n-1));let a=s.join(" "),o=`<feComponentTransfer${i("in",e)}${i("result",t)}>`;return o+=`<feFuncR${i("type","discrete")}${i("tableValues",a)}/>`,o+=`<feFuncG${i("type","discrete")}${i("tableValues",a)}/>`,o+=`<feFuncB${i("type","discrete")}${i("tableValues",a)}/>`,o+="</feComponentTransfer>",o}function vn(r,e,t){let{levels:n,contrast:s}=r;if(n<2)return E(e,t);let a=[];for(let u=0;u<n;u++){let c=u/(n-1),d=c;s!==1&&(d=.5+(c-.5)*s,d=Math.max(0,Math.min(1,d))),a.push(d)}let o=a.join(" "),l=`<feComponentTransfer${i("in",e)}${i("result",t)}>`;return l+=`<feFuncR${i("type","table")}${i("tableValues",o)}/>`,l+=`<feFuncG${i("type","table")}${i("tableValues",o)}/>`,l+=`<feFuncB${i("type","table")}${i("tableValues",o)}/>`,l+="</feComponentTransfer>",l}function wn(r,e,t){let{radius:n}=r;if(n===0)return E(e,t);let s="";return s+=`<feGaussianBlur${i("in","SourceAlpha")}${i("stdDeviation",n)}${i("result",`${t}_blurredAlpha`)}/>`,s+=`<feComponentTransfer${i("in",`${t}_blurredAlpha`)}${i("result",`${t}_thresholdAlpha`)}><feFuncA${i("type","linear")}${i("slope",20)}${i("intercept",-9)}/></feComponentTransfer>`,s+=`<feComposite${i("in",e)}${i("in2",`${t}_thresholdAlpha`)}${i("operator","in")}${i("result",t)}/>`,s}function Pn(r,e,t){let{amount:n}=r;if(n===0)return E(e,t);let s=1-n;return`<feColorMatrix${i("color-interpolation-filters","sRGB")}${i("in",e)}${i("type","saturate")}${i("values",s)}${i("result",t)}/>`}function Tn(r,e,t){let{red:n,green:s,blue:a}=r;if(n===1&&s===1&&a===1)return E(e,t);let o=`<feComponentTransfer${i("in",e)}${i("result",t)}>`;return o+=`<feFuncR${i("type","linear")}${i("slope",n)}${i("intercept",0)}/>`,o+=`<feFuncG${i("type","linear")}${i("slope",s)}${i("intercept",0)}/>`,o+=`<feFuncB${i("type","linear")}${i("slope",a)}${i("intercept",0)}/>`,o+="</feComponentTransfer>",o}function Fn(r,e,t){let{amount:n}=r;if(n===1)return E(e,t);let s=`<feComponentTransfer${i("color-interpolation-filters","sRGB")}${i("in",e)}${i("result",t)}>`;return s+=`<feFuncR${i("type","linear")}${i("slope",n)}${i("intercept",0)}/>`,s+=`<feFuncG${i("type","linear")}${i("slope",n)}${i("intercept",0)}/>`,s+=`<feFuncB${i("type","linear")}${i("slope",n)}${i("intercept",0)}/>`,s+="</feComponentTransfer>",s}function Mn(r,e,t){let{amount:n}=r;if(n===1)return E(e,t);let s=.5*(1-n),a=`<feComponentTransfer${i("color-interpolation-filters","sRGB")}${i("in",e)}${i("result",t)}>`;return a+=`<feFuncR${i("type","linear")}${i("slope",n)}${i("intercept",s)}/>`,a+=`<feFuncG${i("type","linear")}${i("slope",n)}${i("intercept",s)}/>`,a+=`<feFuncB${i("type","linear")}${i("slope",n)}${i("intercept",s)}/>`,a+="</feComponentTransfer>",a}function Cn(r,e,t){let{amount:n}=r;if(n===1)return E(e,t);let s=`<feComponentTransfer${i("color-interpolation-filters","sRGB")}${i("in",e)}${i("result",t)}>`;return s+=`<feFuncA${i("type","linear")}${i("slope",n)}${i("intercept",0)}/>`,s+="</feComponentTransfer>",s}function Rn(r,e,t){let{amount:n}=r;if(n===0)return E(e,t);let s=n,a=1-n,o=`${s} ${a}`,l=`<feComponentTransfer${i("color-interpolation-filters","sRGB")}${i("in",e)}${i("result",t)}>`;return l+=`<feFuncR${i("type","table")}${i("tableValues",o)}/>`,l+=`<feFuncG${i("type","table")}${i("tableValues",o)}/>`,l+=`<feFuncB${i("type","table")}${i("tableValues",o)}/>`,l+="</feComponentTransfer>",l}function An(r,e,t){let{angle:n}=r;return n===0||n===360?E(e,t):`<feColorMatrix${i("color-interpolation-filters","sRGB")}${i("in",e)}${i("type","hueRotate")}${i("values",n)}${i("result",t)}/>`}function In(r,e,t){let{amount:n}=r;return n===1?E(e,t):`<feColorMatrix${i("color-interpolation-filters","sRGB")}${i("in",e)}${i("type","saturate")}${i("values",n)}${i("result",t)}/>`}function Ln(r,e,t){let{threshold:n}=r,s="";if(s+=`<feColorMatrix${i("in",e)}${i("type","saturate")}${i("values",0)}${i("result",`${t}_gray`)}/>`,n===.5)s+=`<feComponentTransfer${i("in",`${t}_gray`)}${i("result",t)}>`,s+=`<feFuncR${i("type","discrete")}${i("tableValues","0 1")}/>`,s+=`<feFuncG${i("type","discrete")}${i("tableValues","0 1")}/>`,s+=`<feFuncB${i("type","discrete")}${i("tableValues","0 1")}/>`,s+="</feComponentTransfer>";else{let o=[];for(let u=0;u<256;u++)o.push(u/255<n?0:1);let l=o.join(" ");s+=`<feComponentTransfer${i("in",`${t}_gray`)}${i("result",t)}>`,s+=`<feFuncR${i("type","table")}${i("tableValues",l)}/>`,s+=`<feFuncG${i("type","table")}${i("tableValues",l)}/>`,s+=`<feFuncB${i("type","table")}${i("tableValues",l)}/>`,s+="</feComponentTransfer>"}return s}function En(r,e,t){let{amount:n}=r;if(n===0)return E(e,t);let s=[.393,.769,.189,0,0],a=[.349,.686,.168,0,0],o=[.272,.534,.131,0,0],l=[1,0,0,0,0],u=[0,1,0,0,0],c=[0,0,1,0,0],d=(g,b)=>g.map((_,S)=>_*(1-n)+b[S]*n),p=d(l,s),m=d(u,a),h=d(c,o),y=[...p,...m,...h,0,0,0,1,0].join(" ");return`<feColorMatrix${i("color-interpolation-filters","sRGB")}${i("in",e)}${i("type","matrix")}${i("values",y)}${i("result",t)}/>`}function Dn(r,e,t){let{shadowColor:n,highlightColor:s}=r,a=_e(n),o=_e(s),l="";return l+=`<feColorMatrix${i("in",e)}${i("type","saturate")}${i("values",0)}${i("result",`${t}_gray`)}/>`,l+=`<feComponentTransfer${i("in",`${t}_gray`)}${i("result",t)}>`,l+=`<feFuncR${i("type","table")}${i("tableValues",`${a.r} ${o.r}`)}/>`,l+=`<feFuncG${i("type","table")}${i("tableValues",`${a.g} ${o.g}`)}/>`,l+=`<feFuncB${i("type","table")}${i("tableValues",`${a.b} ${o.b}`)}/>`,l+="</feComponentTransfer>",l}function Bn(r,e,t){let{intensity:n}=r;if(n===0)return E(e,t);let s="";s+=`<feComponentTransfer${i("in",e)}${i("result",`${t}_invert`)}>`,s+=`<feFuncR${i("type","table")}${i("tableValues","1 0")}/>`,s+=`<feFuncG${i("type","table")}${i("tableValues","1 0")}/>`,s+=`<feFuncB${i("type","table")}${i("tableValues","1 0")}/>`,s+="</feComponentTransfer>",s+=`<feColorMatrix${i("in",`${t}_invert`)}${i("type","saturate")}${i("values",0)}${i("result",`${t}_gray`)}/>`;let a=[.1,.1,.1,0,0],o=[.3,.4,.3,0,0],l=[.5,.5,.8,0,0],u=[1,0,0,0,0],c=[0,1,0,0,0],d=[0,0,1,0,0],p=(b,_)=>b.map((S,P)=>S*(1-n)+_[P]*n),m=p(u,a),h=p(c,o),y=p(d,l),g=[...m,...h,...y,0,0,0,1,0].join(" ");return s+=`<feColorMatrix${i("in",`${t}_gray`)}${i("type","matrix")}${i("values",g)}${i("result",t)}/>`,s}function On(r,e,t){let{amount:n,scale:s}=r;if(n===0)return E(e,t);let a=1/s,o="";return o+=`<feTurbulence${i("type","fractalNoise")}${i("baseFrequency",a)}${i("numOctaves",3)}${i("seed",0)}${i("result",`${t}_noise`)}/>`,o+=`<feColorMatrix${i("in",`${t}_noise`)}${i("type","saturate")}${i("values",0)}${i("result",`${t}_noiseGray`)}/>`,o+=`<feBlend${i("in",e)}${i("in2",`${t}_noiseGray`)}${i("mode","overlay")}${i("result",`${t}_blended`)}/>`,o+=`<feComposite${i("in",`${t}_blended`)}${i("in2",e)}${i("operator","arithmetic")}${i("k1",0)}${i("k2",n)}${i("k3",1-n)}${i("k4",0)}${i("result",`${t}_amt`)}/>`,o+=`<feComposite${i("in",`${t}_amt`)}${i("in2",e)}${i("operator","in")}${i("result",t)}/>`,o}function Gn(r,e,t){let{strength:n,angle:s}=r;if(n===0)return E(e,t);let a=s*Math.PI/180,o=Math.cos(a),l=Math.sin(a),u=n,c=[-(u*(o+l)),-(u*l),u*(-o+l),-(u*o),1,u*o,u*(o-l),u*l,u*(o+l)].join(" ");return`<feConvolveMatrix${i("in",e)}${i("order","3 3")}${i("kernelMatrix",c)}${i("divisor",1)}${i("bias",.5)}${i("preserveAlpha","true")}${i("result",t)}/>`}function Un(r,e,t){let{amount:n,size:s}=r;if(n===0)return E(e,t);let a=.5/s,o="";return o+=`<feTurbulence${i("type","fractalNoise")}${i("baseFrequency",`${a} ${a}`)}${i("numOctaves",5)}${i("seed",0)}${i("stitchTiles","stitch")}${i("result",`${t}_grain`)}/>`,o+=`<feColorMatrix${i("in",`${t}_grain`)}${i("type","saturate")}${i("values",0)}${i("result",`${t}_grainGray`)}/>`,o+=`<feBlend${i("in",e)}${i("in2",`${t}_grainGray`)}${i("mode","soft-light")}${i("result",`${t}_blended`)}/>`,o+=`<feComposite${i("in",`${t}_blended`)}${i("in2",e)}${i("operator","arithmetic")}${i("k1",0)}${i("k2",n)}${i("k3",1-n)}${i("k4",0)}${i("result",`${t}_amt`)}/>`,o+=`<feComposite${i("in",`${t}_amt`)}${i("in2",e)}${i("operator","in")}${i("result",t)}/>`,o}function Nn(r,e,t){let{wetness:n,turbulence:s}=r;if(n===0&&s===0)return E(e,t);let a="";return a+=`<feTurbulence${i("type","fractalNoise")}${i("baseFrequency",.02+s*.03)}${i("numOctaves",4)}${i("seed",42)}${i("result",`${t}_turb`)}/>`,a+=`<feDisplacementMap${i("in",e)}${i("in2",`${t}_turb`)}${i("scale",n*15)}${i("xChannelSelector","R")}${i("yChannelSelector","G")}${i("result",`${t}_disp`)}/>`,a+=`<feGaussianBlur${i("in",`${t}_disp`)}${i("stdDeviation",n*2)}${i("result",`${t}_blur`)}/>`,a+=`<feBlend${i("in",`${t}_blur`)}${i("in2",e)}${i("mode","multiply")}${i("result",t)}/>`,a}function Vn(r,e,t){let{thickness:n,texture:s}=r;if(n===0&&s===0)return E(e,t);let a="";a+=`<feTurbulence${i("type","turbulence")}${i("baseFrequency",.03+s*.02)}${i("numOctaves",3)}${i("seed",1e3)}${i("result",`${t}_brush`)}/>`;let o=Math.max(3,8-Math.floor(n*5)),l=Array.from({length:o+1},(u,c)=>c/o).join(" ");a+=`<feComponentTransfer${i("in",e)}${i("result",`${t}_poster`)}>`;for(let u of["R","G","B"])a+=`<feFunc${u}${i("type","discrete")}${i("tableValues",l)}/>`;return a+="</feComponentTransfer>",a+=`<feDisplacementMap${i("in",`${t}_poster`)}${i("in2",`${t}_brush`)}${i("scale",s*4)}${i("xChannelSelector","R")}${i("yChannelSelector","G")}${i("result",`${t}_disp`)}/>`,a+=`<feMorphology${i("in",`${t}_disp`)}${i("operator","dilate")}${i("radius",n*.5)}${i("result",`${t}_thick`)}/>`,a+=`<feComposite${i("in",`${t}_thick`)}${i("in2",e)}${i("operator","in")}${i("result",t)}/>`,a}function zn(r,e,t){let{spread:n,edges:s}=r;if(n===0&&s===0)return E(e,t);let a="";return a+=`<feTurbulence${i("type","fractalNoise")}${i("baseFrequency",.01+s*.02)}${i("numOctaves",5)}${i("seed",1100)}${i("result",`${t}_ink`)}/>`,a+=`<feMorphology${i("in",e)}${i("operator","dilate")}${i("radius",n*3)}${i("result",`${t}_dilate`)}/>`,a+=`<feDisplacementMap${i("in",`${t}_dilate`)}${i("in2",`${t}_ink`)}${i("scale",s*10)}${i("xChannelSelector","R")}${i("yChannelSelector","G")}${i("result",`${t}_disp`)}/>`,a+=`<feGaussianBlur${i("in",`${t}_disp`)}${i("stdDeviation",n*.5)}${i("result",t)}/>`,a}function jn(r,e,t){let{wrinkles:n,shine:s}=r;if(n===0&&s===0)return E(e,t);let a="";return a+=`<feTurbulence${i("type","turbulence")}${i("baseFrequency",.02)}${i("numOctaves",4)}${i("seed",1200)}${i("result",`${t}_wrinkle`)}/>`,a+=`<feDisplacementMap${i("in",e)}${i("in2",`${t}_wrinkle`)}${i("scale",n*15)}${i("xChannelSelector","R")}${i("yChannelSelector","G")}${i("result",`${t}_disp`)}/>`,a+=`<feSpecularLighting${i("in",`${t}_wrinkle`)}${i("surfaceScale",n*2)}${i("specularConstant",s*1.5)}${i("specularExponent",20)}${i("result",`${t}_sheen`)}>`,a+=`<feDistantLight${i("azimuth",45)}${i("elevation",60)}/>`,a+="</feSpecularLighting>",a+=`<feBlend${i("in",`${t}_disp`)}${i("in2",`${t}_sheen`)}${i("mode","screen")}${i("result",`${t}_blend`)}/>`,a+=`<feComposite${i("in",`${t}_blend`)}${i("in2",e)}${i("operator","in")}${i("result",t)}/>`,a}function Wn(r,e,t){let{density:n,size:s}=r;if(n===0)return E(e,t);let a="",o=1-n;a+=`<feTurbulence${i("type","turbulence")}${i("baseFrequency",.1/s)}${i("numOctaves",1)}${i("seed",1400)}${i("result",`${t}_hole`)}/>`,a+=`<feComponentTransfer${i("in",`${t}_hole`)}${i("result",`${t}_thresh`)}>`;for(let l of["R","G","B","A"])a+=`<feFunc${l}${i("type","linear")}${i("slope",10)}${i("intercept",-o*10+5)}/>`;a+="</feComponentTransfer>",a+=`<feComponentTransfer${i("in",`${t}_thresh`)}${i("result",`${t}_clamp`)}>`;for(let l of["R","G","B","A"])a+=`<feFunc${l}${i("type","table")}${i("tableValues","0 0 1 1")}/>`;return a+="</feComponentTransfer>",a+=`<feComposite${i("in",e)}${i("in2",`${t}_clamp`)}${i("operator","in")}${i("result",t)}/>`,a}function Hn(r,e,t){let{color:n,radius:s,intensity:a}=r;if(a===0||s===0)return E(e,t);let{r:o,g:l,b:u}=_e(n),c="";return c+=`<feColorMatrix${i("in",e)}${i("type","matrix")}${i("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0")}${i("result",`${t}_alpha`)}/>`,c+=`<feGaussianBlur${i("in",`${t}_alpha`)}${i("stdDeviation",s/2)}${i("result",`${t}_blur`)}/>`,c+=`<feColorMatrix${i("in",`${t}_blur`)}${i("type","matrix")}${i("values",`0 0 0 0 ${o} 0 0 0 0 ${l} 0 0 0 0 ${u} 0 0 0 ${a} 0`)}${i("result",`${t}_color`)}/>`,c+=`<feMerge${i("result",t)}><feMergeNode${i("in",`${t}_color`)}/><feMergeNode${i("in",e)}/></feMerge>`,c}function Xn(r,e,t){let{color:n,radius:s,intensity:a}=r;if(a===0||s===0)return E(e,t);let{r:o,g:l,b:u}=_e(n),c="";return c+=`<feColorMatrix${i("in",e)}${i("type","matrix")}${i("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0")}${i("result",`${t}_alpha`)}/>`,c+=`<feMorphology${i("in",`${t}_alpha`)}${i("operator","erode")}${i("radius",s/4)}${i("result",`${t}_erode`)}/>`,c+=`<feComposite${i("in",`${t}_alpha`)}${i("in2",`${t}_erode`)}${i("operator","out")}${i("result",`${t}_edge`)}/>`,c+=`<feGaussianBlur${i("in",`${t}_edge`)}${i("stdDeviation",s/3)}${i("result",`${t}_blur`)}/>`,c+=`<feColorMatrix${i("in",`${t}_blur`)}${i("type","matrix")}${i("values",`0 0 0 0 ${o} 0 0 0 0 ${l} 0 0 0 0 ${u} 0 0 0 ${a*2} 0`)}${i("result",`${t}_color`)}/>`,c+=`<feComposite${i("in",`${t}_color`)}${i("in2",`${t}_alpha`)}${i("operator","in")}${i("result",`${t}_clipped`)}/>`,c+=`<feComposite${i("in",`${t}_clipped`)}${i("in2",e)}${i("operator","over")}${i("result",t)}/>`,c}function E(r,e){return`<feMerge${i("result",e)}><feMergeNode${i("in",r)}/></feMerge>`}function et(r){switch(r.type){case"feBlend":return Yn(r);case"feColorMatrix":return qn(r);case"feComponentTransfer":return Zn(r);case"feComposite":return Kn(r);case"feConvolveMatrix":return Qn(r);case"feDiffuseLighting":return Jn(r);case"feSpecularLighting":return ei(r);case"feDisplacementMap":return ti(r);case"feDropShadow":return ri(r);case"feFlood":return ni(r);case"feGaussianBlur":return ii(r);case"feImage":return si(r);case"feMerge":return ai(r);case"feMorphology":return oi(r);case"feOffset":return li(r);case"feTile":return ui(r);case"feTurbulence":return ci(r)}}function U(r){let e="";if(e+=i("in",r.in),e+=i("x",r.x),e+=i("y",r.y),e+=i("width",r.width),e+=i("height",r.height),e+=i("color-interpolation-filters",r.colorInterpolationFilters),e+=i("result",r.result),r.unknownAttrs){let t=Object.keys(r.unknownAttrs).sort();for(let n of t)e+=i(n,r.unknownAttrs[n])}return e}function N(r){return r.animations&&r.animations.length>0?r.animations.join(""):""}function Yn(r){let e=`<feBlend${U(r)}${i("in2",r.in2)}${i("mode",r.mode)}`;r.noComposite&&(e+=' no-composite="no-composite"');let t=N(r);return t?`${e}>${t}</feBlend>`:`${e}/>`}function qn(r){let e=`<feColorMatrix${U(r)}${i("type",r.matrixType)}${i("values",r.values)}`,t=N(r);return t?`${e}>${t}</feColorMatrix>`:`${e}/>`}function ke(r,e){if(!e)return"";let t=`feFunc${r}`;switch(e.type){case"identity":return`<${t} type="identity"/>`;case"table":case"discrete":return`<${t} type="${e.type}"${i("tableValues",e.tableValues.join(" "))}/>`;case"linear":return`<${t} type="linear"${i("slope",e.slope)}${i("intercept",e.intercept)}/>`;case"gamma":return`<${t} type="gamma"${i("amplitude",e.amplitude)}${i("exponent",e.exponent)}${i("offset",e.offset)}/>`}}function Zn(r){let e="";return e+=ke("R",r.funcR),e+=ke("G",r.funcG),e+=ke("B",r.funcB),e+=ke("A",r.funcA),e+=N(r),`<feComponentTransfer${U(r)}>${e}</feComponentTransfer>`}function Kn(r){let e=`<feComposite${U(r)}${i("in2",r.in2)}${i("operator",r.operator)}`;r.operator==="arithmetic"&&(e+=i("k1",r.k1),e+=i("k2",r.k2),e+=i("k3",r.k3),e+=i("k4",r.k4));let t=N(r);return t?`${e}>${t}</feComposite>`:`${e}/>`}function Qn(r){let e=`<feConvolveMatrix${U(r)}`;e+=i("order",r.order),e+=i("kernelMatrix",r.kernelMatrix),e+=i("divisor",r.divisor),e+=i("bias",r.bias),e+=i("targetX",r.targetX),e+=i("targetY",r.targetY),e+=i("edgeMode",r.edgeMode),e+=i("kernelUnitLength",r.kernelUnitLength),r.preserveAlpha!==void 0&&(e+=i("preserveAlpha",r.preserveAlpha?"true":"false"));let t=N(r);return t?`${e}>${t}</feConvolveMatrix>`:`${e}/>`}function qt(r){switch(r.kind){case"feDistantLight":return`<feDistantLight${i("azimuth",r.azimuth)}${i("elevation",r.elevation)}/>`;case"fePointLight":return`<fePointLight${i("x",r.x)}${i("y",r.y)}${i("z",r.z)}/>`;case"feSpotLight":{let e=`<feSpotLight${i("x",r.x)}${i("y",r.y)}${i("z",r.z)}${i("pointsAtX",r.pointsAtX)}${i("pointsAtY",r.pointsAtY)}${i("pointsAtZ",r.pointsAtZ)}`;return e+=i("specularExponent",r.specularExponent),e+=i("limitingConeAngle",r.limitingConeAngle),e+"/>"}}}function Jn(r){let e=`<feDiffuseLighting${U(r)}`;e+=i("surfaceScale",r.surfaceScale),e+=i("diffuseConstant",r.diffuseConstant),e+=i("kernelUnitLength",r.kernelUnitLength),e+=i("lighting-color",r.lightingColor);let t="";return r.lightSource&&(t+=qt(r.lightSource)),t+=N(r),`${e}>${t}</feDiffuseLighting>`}function ei(r){let e=`<feSpecularLighting${U(r)}`;e+=i("surfaceScale",r.surfaceScale),e+=i("specularConstant",r.specularConstant),e+=i("specularExponent",r.specularExponent),e+=i("kernelUnitLength",r.kernelUnitLength),e+=i("lighting-color",r.lightingColor);let t="";return r.lightSource&&(t+=qt(r.lightSource)),t+=N(r),`${e}>${t}</feSpecularLighting>`}function ti(r){let e=`<feDisplacementMap${U(r)}`;e+=i("in2",r.in2),e+=i("scale",r.scale),e+=i("xChannelSelector",r.xChannelSelector),e+=i("yChannelSelector",r.yChannelSelector);let t=N(r);return t?`${e}>${t}</feDisplacementMap>`:`${e}/>`}function ri(r){let e=`<feDropShadow${U(r)}`;e+=i("dx",r.dx),e+=i("dy",r.dy),e+=i("stdDeviation",r.stdDeviation),e+=i("flood-color",r.floodColor),e+=i("flood-opacity",r.floodOpacity);let t=N(r);return t?`${e}>${t}</feDropShadow>`:`${e}/>`}function ni(r){let e=`<feFlood${U(r)}${i("flood-color",r.floodColor)}${i("flood-opacity",r.floodOpacity)}`,t=N(r);return t?`${e}>${t}</feFlood>`:`${e}/>`}function ii(r){let e=`<feGaussianBlur${U(r)}${i("stdDeviation",r.stdDeviation)}${i("edgeMode",r.edgeMode)}`,t=N(r);return t?`${e}>${t}</feGaussianBlur>`:`${e}/>`}function si(r){let e=`<feImage${U(r)}`;r.href!==void 0?e+=i("href",r.href):r.xlinkHref!==void 0&&(e+=i("xlink:href",r.xlinkHref)),e+=i("preserveAspectRatio",r.preserveAspectRatio),e+=i("crossorigin",r.crossorigin);let t=N(r);return t?`${e}>${t}</feImage>`:`${e}/>`}function ai(r){let e="";for(let t of r.nodes)e+=`<feMergeNode${i("in",t.in)}/>`;return e+=N(r),`<feMerge${U(r)}>${e}</feMerge>`}function oi(r){let e=`<feMorphology${U(r)}${i("operator",r.operator)}${i("radius",r.radius)}`,t=N(r);return t?`${e}>${t}</feMorphology>`:`${e}/>`}function li(r){let e=`<feOffset${U(r)}${i("dx",r.dx)}${i("dy",r.dy)}`,t=N(r);return t?`${e}>${t}</feOffset>`:`${e}/>`}function ui(r){let e=`<feTile${U(r)}`,t=N(r);return t?`${e}>${t}</feTile>`:`${e}/>`}function ci(r){let e=`<feTurbulence${U(r)}`;e+=i("baseFrequency",r.baseFrequency),e+=i("numOctaves",r.numOctaves),e+=i("seed",r.seed),e+=i("stitchTiles",r.stitchTiles),e+=i("type",r.turbulenceType);let t=N(r);return t?`${e}>${t}</feTurbulence>`:`${e}/>`}function Zt(r,e){let t=`<filter${i("id",r)}`;t+=i("x",e.x),t+=i("y",e.y),t+=i("width",e.width),t+=i("height",e.height),t+=i("filterUnits",e.filterUnits),t+=i("primitiveUnits",e.primitiveUnits),e.filterColorInterpolation&&e.filterColorInterpolation!=="auto"&&(t+=i("color-interpolation-filters",e.filterColorInterpolation)),t+=i("flood-color",e.floodColor),t+=i("flood-opacity",e.floodOpacity),t+=i("lighting-color",e.lightingColor),t+=">",e.filterTitle&&(t+=`<title>${B(e.filterTitle)}</title>`),e.filterDescription&&(t+=`<desc>${B(e.filterDescription)}</desc>`);for(let n of e.primitives)t+=et(n);if(e.filterAnimations)for(let n of e.filterAnimations)t+=n;return t+="</filter>",t}function Kt(r,e,t,n){switch(r.type){case"drop-shadow":return pn(r,e,t);case"inner-shadow":return hn(r,e,t);case"gaussian-blur":return fn(r,e,t);case"motion-blur":return mn(r,e,t);case"point-light":{let s=r;return Ht(n?{...s,x:s.x+n.x,y:s.y+n.y}:s,e,t)}case"spot-light":{let s=r;return Xt(n?{...s,x:s.x+n.x,y:s.y+n.y,pointsAtX:s.pointsAtX+n.x,pointsAtY:s.pointsAtY+n.y}:s,e,t)}case"diffuse-lighting":return gn(r,e,t);case"specular-lighting":return yn(r,e,t);case"outline":return bn(r,e,t);case"sharpen":return $n(r,e,t);case"pixelate":return xn(r,e,t);case"warp":return Sn(r,e,t);case"morphology":return kn(r,e,t);case"contouring-discrete":return _n(r,e,t);case"contouring-table":return vn(r,e,t);case"round-edges":return wn(r,e,t);case"grayscale":return Pn(r,e,t);case"channel-painter":return Tn(r,e,t);case"brightness":return Fn(r,e,t);case"contrast":return Mn(r,e,t);case"opacity":return Cn(r,e,t);case"invert":return Rn(r,e,t);case"hue-rotate":return An(r,e,t);case"saturate":return In(r,e,t);case"black-and-white":return Ln(r,e,t);case"sepia":return En(r,e,t);case"duotone":return Dn(r,e,t);case"xray":return Bn(r,e,t);case"noise":return On(r,e,t);case"emboss":return Gn(r,e,t);case"film-grain":return Un(r,e,t);case"watercolor":return Nn(r,e,t);case"gouache":return Vn(r,e,t);case"ink-blot":return zn(r,e,t);case"crumpled-plastic":return jn(r,e,t);case"riddled":return Wn(r,e,t);case"glow":return Hn(r,e,t);case"inner-glow":return Xn(r,e,t);case"raw-svg":return r.svgContent;case"svg-primitive-chain":return r.primitives.map(et).join("");default:return E(e,t)}}function di(r){return r.some(e=>e.type==="gaussian-blur"||e.type==="motion-blur"||e.type==="drop-shadow"||e.type==="inner-shadow"||e.type==="glow"||e.type==="inner-glow"||e.type==="outline"||e.type==="morphology"||e.type==="warp"||e.type==="svg-primitive-chain"&&e.primitives.some(t=>t.type==="feGaussianBlur"||t.type==="feDropShadow"||t.type==="feOffset"||t.type==="feMorphology"||t.type==="feDisplacementMap"||t.type==="feTurbulence"))}function tt(r,e,t={}){let n=e.filter(x=>x.enabled);if(n.length===0)return"";let s=t.colorInterpolation&&t.colorInterpolation!=="auto"?i("color-interpolation-filters",t.colorInterpolation):"",a=n.find(x=>x.type==="raw-svg");if(a){let x=t.colorInterpolation&&t.colorInterpolation!=="auto"?t.colorInterpolation:a.colorInterpolationFilters,C=t.filterUnits??a.filterUnits,I=t.primitiveUnits??a.primitiveUnits,$=t.x??a.x,k=t.y??a.y,M=t.width??a.width,L=t.height??a.height;return`<filter${i("id",r)}${i("x",$)}${i("y",k)}${i("width",M)}${i("height",L)}${i("filterUnits",C)}${i("primitiveUnits",I)}${i("color-interpolation-filters",x)}${i("flood-color",a.floodColor)}${i("flood-opacity",a.floodOpacity)}${i("lighting-color",a.lightingColor)}>${a.svgContent}</filter>`}let o=n.find(x=>x.type==="svg-primitive-chain");if(o){let x={...o,x:t.x??o.x,y:t.y??o.y,width:t.width??o.width,height:t.height??o.height,filterUnits:t.filterUnits??o.filterUnits,primitiveUnits:t.primitiveUnits??o.primitiveUnits,filterColorInterpolation:t.colorInterpolation&&t.colorInterpolation!=="auto"?t.colorInterpolation:o.filterColorInterpolation};return Zt(r,x)}let l=n.some(x=>x.type==="gaussian-blur"&&x.quality==="high"||x.type==="motion-blur"&&x.quality==="high"),u=di(n),c=u?l?"-200%":"-100%":"-10%",d=u?l?"500%":"300%":"120%",p="",m="SourceGraphic",h=0;for(let x of n){let C=`result${h++}`;p+=Kt(x,m,C),m=C}let y=t.filterUnits??"objectBoundingBox",g=t.primitiveUnits??"userSpaceOnUse",b=t.x??c,_=t.y??c,S=t.width??d,P=t.height??d;return`<filter${i("id",r)}${i("x",b)}${i("y",_)}${i("width",S)}${i("height",P)}${i("filterUnits",y)}${i("primitiveUnits",g)}${s}>${p}</filter>`}function pi(r){let e="",t=new Set;for(let n of r){let s=n.state.filters;if(!s||s.length===0)continue;let a=s.filter(c=>c.enabled);if(a.length===0)continue;let o=n.state.filterLibraryIds,l=Array.isArray(o)&&o.length>0?o[0]:`filter-${n.id}`;if(t.has(l))continue;t.add(l);let u=n.state;e+=tt(l,a,{colorInterpolation:u.filterColorInterpolation,filterUnits:u.filterUnits,primitiveUnits:u.primitiveUnits,x:u.filterX,y:u.filterY,width:u.filterWidth,height:u.filterHeight})}return e}function rt(r,e,t){return!e||e.length===0||e.filter(s=>s.enabled).length===0?"":Array.isArray(t)&&t.length>0?` filter="${t.map(a=>`url(#${B(a)})`).join(" ")}"`:` filter="url(#filter-${B(r)})"`}function ve(r,e,t,n){let s=n?.strokeWidth!=null?Math.max(.5,e*n.strokeWidth):Math.max(1,e/10);switch(r){case"stripes":return[{tag:"rect",attrs:{width:n?.strokeWidth!=null?Math.max(.01,Math.min(1,n.strokeWidth))*e:e/2,height:e,fill:t}}];case"dots":{let a=n?.dotRadius!=null?Math.max(.05,Math.min(.45,n.dotRadius)):.25;return[{tag:"circle",attrs:{cx:e/2,cy:e/2,r:e*a,fill:t}}]}case"grid":return[{tag:"path",attrs:{d:`M ${e} 0 L 0 0 0 ${e}`,fill:"none",stroke:t,"stroke-width":s}}];case"checkerboard":return[{tag:"rect",attrs:{width:e/2,height:e/2,fill:t}},{tag:"rect",attrs:{x:e/2,y:e/2,width:e/2,height:e/2,fill:t}}];case"diagonal":{let a=n?.strokeWidth!=null?Math.max(.5,e*n.strokeWidth):Math.max(1,e/5);return[{tag:"path",attrs:{d:`M 0 ${e} L ${e} 0`,stroke:t,"stroke-width":a}}]}case"crosshatch":return[{tag:"path",attrs:{d:`M 0 ${e} L ${e} 0 M 0 0 L ${e} ${e}`,stroke:t,"stroke-width":s}}];case"zigzag":{let a=n?.amplitude!=null?Math.max(.05,Math.min(.5,n.amplitude)):.25,o=e*a;return[{tag:"path",attrs:{d:`M 0 ${o} L ${e/4} 0 L ${e/2} ${o} L ${e*3/4} 0 L ${e} ${o}`,fill:"none",stroke:t,"stroke-width":s}}]}case"waves":{let a=n?.amplitude!=null?Math.max(.05,Math.min(.5,n.amplitude)):.25,o=e*a,l=e/2;return[{tag:"path",attrs:{d:`M 0 ${l} Q ${e/4} ${l-o} ${e/2} ${l} T ${e} ${l}`,fill:"none",stroke:t,"stroke-width":s}}]}case"triangles":{let a=e*.866;return[{tag:"path",attrs:{d:`M ${e/2} 0 L ${e} ${a} L 0 ${a} Z`,fill:"none",stroke:t,"stroke-width":s}}]}case"hexagons":{let a=e*.866;return[{tag:"path",attrs:{d:`M ${e*.25} 0 L ${e*.75} 0 L ${e} ${a*.5} L ${e*.75} ${a} L ${e*.25} ${a} L 0 ${a*.5} Z`,fill:"none",stroke:t,"stroke-width":s}}]}case"diamonds":return[{tag:"path",attrs:{d:`M ${e/2} 0 L ${e} ${e/2} L ${e/2} ${e} L 0 ${e/2} Z`,fill:"none",stroke:t,"stroke-width":s}}];case"circles":return[{tag:"circle",attrs:{cx:e/2,cy:e/2,r:e/3,fill:"none",stroke:t,"stroke-width":s}}];case"bricks":{let a=n?.strokeWidth!=null?Math.max(.5,e*n.strokeWidth):Math.max(1,e/15);return[{tag:"rect",attrs:{x:0,y:0,width:e,height:e/2,fill:"none",stroke:t,"stroke-width":a}},{tag:"rect",attrs:{x:-e/2,y:e/2,width:e,height:e/2,fill:"none",stroke:t,"stroke-width":a}},{tag:"rect",attrs:{x:e/2,y:e/2,width:e,height:e/2,fill:"none",stroke:t,"stroke-width":a}}]}case"herringbone":return[{tag:"path",attrs:{d:`M 0 0 L ${e/2} ${e/2} L 0 ${e} M ${e/2} ${e/2} L ${e} 0 M ${e/2} ${e/2} L ${e} ${e}`,fill:"none",stroke:t,"stroke-width":s}}];default:return[]}}function hi(r){let e=Object.entries(r.attrs).map(([t,n])=>` ${t}="${n}"`).join("");return`<${r.tag}${e}/>`}function nt(r,e,t,n,s){let a=10*e,o="";o+=`<rect width="${a}" height="${a}" fill="${n}"/>`;let l=ve(r,a,t,s);for(let u of l)o+=hi(u);return{svgContent:o,width:a,height:a}}var we="0 0 10 10",it=6,st=6;function le(){return[{id:"line-marker-arrow",refX:10,refY:5,element:{tag:"path",attrs:{d:"M 0 0 L 10 5 L 0 10 Z",fill:"context-stroke",stroke:"context-stroke"}}},{id:"line-marker-open-arrow",refX:10,refY:5,element:{tag:"path",attrs:{d:"M 0 0 L 10 5 L 0 10",fill:"none",stroke:"context-stroke","stroke-width":1.5,"stroke-linejoin":"round","stroke-linecap":"round"}}},{id:"line-marker-circle",refX:5,refY:5,element:{tag:"circle",attrs:{cx:5,cy:5,r:3.2,fill:"context-stroke",stroke:"context-stroke"}}},{id:"line-marker-diamond",refX:5,refY:5,element:{tag:"path",attrs:{d:"M 5 0 L 10 5 L 5 10 L 0 5 Z",fill:"context-stroke",stroke:"context-stroke"}}},{id:"line-marker-square",refX:5,refY:5,element:{tag:"rect",attrs:{x:1.5,y:1.5,width:7,height:7,fill:"context-stroke",stroke:"context-stroke"}}}]}var Qt={"line-marker-arrow":"mkr-builtin-arrow","line-marker-open-arrow":"mkr-builtin-open-arrow","line-marker-circle":"mkr-builtin-circle","line-marker-diamond":"mkr-builtin-diamond","line-marker-square":"mkr-builtin-square"},fi={"mkr-builtin-arrow":"Arrow","mkr-builtin-open-arrow":"Open Arrow","mkr-builtin-circle":"Circle","mkr-builtin-diamond":"Diamond","mkr-builtin-square":"Square"};function mi(){return le().map(r=>{let e=Qt[r.id]??r.id;return{kind:"marker",id:e,name:fi[e]??e,viewBox:we,refX:r.refX,refY:r.refY,markerWidth:6,markerHeight:6,markerUnits:"strokeWidth",orient:"auto-start-reverse",shapes:[],builtIn:!0}})}function f(r,e){return e==null||e===""?"":` ${r}="${B(String(e))}"`}function gi(r){if(r&&typeof r=="object"){let e=r;return"dx"in e?{x:typeof e.x=="number"?e.x:null,y:typeof e.y=="number"?e.y:null,dx:typeof e.dx=="number"?e.dx:0,dy:typeof e.dy=="number"?e.dy:0,rotate:typeof e.rotate=="number"?e.rotate:0}:{x:null,y:null,dx:typeof e.x=="number"?e.x:0,dy:typeof e.y=="number"?e.y:0,rotate:typeof e.rotate=="number"?e.rotate:0}}return{x:null,y:null,dx:0,dy:0,rotate:0}}function Jt(r,e){let t=-1;for(let s=r.length-1;s>=0;s--)if(r[s][e]!==null){t=s;break}if(t<0)return[];let n=new Array(t+1);for(let s=0;s<=t;s++)n[s]=r[s][e]??0;return n}function er(r,e){let t=-1;for(let s=r.length-1;s>=0;s--)if(r[s][e]!==0){t=s;break}if(t<0)return[];let n=new Array(t+1);for(let s=0;s<=t;s++)n[s]=r[s][e];return n}function yi(r){if(r.length===0)return[];let e=r.length-1,t=r[e].rotate;for(;e>0&&r[e-1].rotate===t;)e--;if(e===0&&t===0)return[];let n=new Array(e+1);for(let s=0;s<=e;s++)n[s]=r[s].rotate;return n}function tr(r){let e=r.ancestorTransform;return!e||e.length<6?null:`matrix(${e[0]}, ${e[1]}, ${e[2]}, ${e[3]}, ${e[4]}, ${e[5]})`}function re(r,e){let t=tr(r),n=r.rawTransform;if(n)return t?`${t} ${n}`:n;let s=r.rotation??0,a=r.skewX??0,o=r.skewY??0,l=r.scaleX??1,u=r.scaleY??1;if(s===0&&a===0&&o===0&&l===1&&u===1)return t;let c=r.customPivot??e;if(!c)return t;let d=[];return t&&d.push(t),d.push(`translate(${c.x}, ${c.y})`),s!==0&&d.push(`rotate(${s})`),(l!==1||u!==1)&&d.push(`scale(${l}, ${u})`),a!==0&&d.push(`skewX(${a})`),o!==0&&d.push(`skewY(${o})`),d.push(`translate(${-c.x}, ${-c.y})`),d.join(" ")}function bi(r,e,t){let n=tr(r),s=r.rotation??0,a=r.skewX??0,o=r.skewY??0,l=r.scaleX??1,u=r.scaleY??1,c=r.customPivot??{x:e,y:t},d=[];return n&&d.push(n),(s!==0||a!==0||o!==0||l!==1||u!==1)&&(d.push(`translate(${c.x}, ${c.y})`),s!==0&&d.push(`rotate(${s})`),(l!==1||u!==1)&&d.push(`scale(${l}, ${u})`),a!==0&&d.push(`skewX(${a})`),o!==0&&d.push(`skewY(${o})`),d.push(`translate(${-c.x}, ${-c.y})`)),d.push(`translate(${e}, ${t})`),d.join(" ")}function $i(r){if(typeof r=="string"){let n=r.trim();return n.length>0?n:void 0}if(!r||typeof r!="object")return;let e=r,t=[];return e.underline&&t.push("underline"),e.strikethrough&&t.push("line-through"),e.overline&&t.push("overline"),t.length>0?t.join(" "):void 0}function xi(r){if(typeof r.strokeDasharray=="string")return r.strokeDasharray;let e=r.lineStyle??"solid",t=r.dashLength??8,n=r.gapLength??4;return ce(e,t,n)}function Si(r){let e=r.fillType;return e||(r.fillGradient?r.fillGradient.r!==void 0?"radial-gradient":"linear-gradient":r.linearGradient?"linear-gradient":r.radialGradient?"radial-gradient":"solid")}function ki(r){return r.fillGradient??r.linearGradient??r.radialGradient??void 0}function Q(r,e){let t=f("data-shape-id",e),n=Si(r),s=ki(r);if(n==="none")t+=f("fill","none");else if(n==="linear-gradient"||n==="radial-gradient"){let x=r.fillLibraryId??s?.id;t+=f("fill",`url(#${x??`gradient-fill-${e}`})`)}else if(n==="pattern"){let x=r.fillLibraryId??s?.id;t+=f("fill",`url(#${x??`pattern-fill-${e}`})`)}else t+=f("fill",r.fillColor??"#000000");let a=r.opacity;a!==void 0&&a<1&&(t+=f("opacity",a));let o=r.fillOpacity;o!==void 0&&o<1&&(t+=f("fill-opacity",o));let l=r.fillRule;l&&l!=="nonzero"&&(t+=f("fill-rule",l));let u=r.strokeType??"solid",c=r.strokeGradient;if(u==="none")t+=f("stroke","none");else if(u==="linear-gradient"||u==="radial-gradient"){let x=r.strokeLibraryId??c?.id;t+=f("stroke",`url(#${x??`gradient-stroke-${e}`})`)}else if(u==="pattern"){let x=r.strokeLibraryId??c?.id;t+=f("stroke",`url(#${x??`pattern-stroke-${e}`})`)}else t+=f("stroke",r.borderColor??"none");let d=r.borderWidth;d!=null&&(t+=f("stroke-width",d));let p=r.strokeOpacity;p!==void 0&&p<1&&(t+=f("stroke-opacity",p));let m=r.paintOrder;m&&m!=="normal"&&(t+=f("paint-order",m));let h=r.markerStart,y=r.markerMid,g=r.markerEnd;h&&(t+=f("marker-start",`url(#${h})`)),y&&(t+=f("marker-mid",`url(#${y})`)),g&&(t+=f("marker-end",`url(#${g})`));let b=xi(r);b&&(t+=f("stroke-dasharray",b),!r.strokeDasharray&&r.lineStyle==="dotted"&&(t+=f("stroke-linecap","round")));let _=r.dashOffset;_!==void 0&&_!==0&&(t+=f("stroke-dashoffset",_));let S=r.shapeRendering;S&&S!=="auto"&&(t+=f("shape-rendering",S)),t+=rt(e,r.filters,r.filterLibraryIds);let P=r.metadata;return P&&(P.role&&(t+=f("role",P.role)),P.ariaLabel&&(t+=f("aria-label",P.ariaLabel))),t}function _i(r){let e=r.metadata;if(!e)return"";let t="";return e.title&&(t+=`<title>${B(e.title)}</title>`),e.description&&(t+=`<desc>${B(e.description)}</desc>`),t}function vi(r,e){let t=_i(e);if(!t)return r;let n=r.lastIndexOf("/>");if(n===-1){let o=r.indexOf(">");return o===-1?r:r.slice(0,o+1)+t+r.slice(o+1)}let s=r.match(/^<(\w+)/),a=s?s[1]:"g";return r.slice(0,n)+">"+t+`</${a}>`}function at(r){let e="",t=r.startEndpoint,n=r.endEndpoint;return t&&t!=="none"&&(e+=f("marker-start",`url(#line-marker-${t})`)),n&&n!=="none"&&(e+=f("marker-end",`url(#line-marker-${n})`)),e}function rr(r){let e=r.state,t=e.x??0,n=e.y??0,s=e.radius??50,a=re(e,{x:t,y:n});return`<circle${f("cx",t)}${f("cy",n)}${f("r",s)}${Q(e,r.id)}${a?f("transform",a):""}/>`}function nr(r){let e=r.state,t=e.cx??0,n=e.cy??0,s=e.rx??50,a=e.ry??30,o=re(e,{x:t,y:n});return`<ellipse${f("cx",t)}${f("cy",n)}${f("rx",s)}${f("ry",a)}${Q(e,r.id)}${o?f("transform",o):""}/>`}function ir(r){let e=r.state,t=e,n=e.x??0,s=e.y??0,a=e.width??100,o=e.height??100,l=e.cornerRadius??0,u=t.cornerShape??"round",c=t.cornerMode??"uniform",d={x:n+a/2,y:s+o/2},p=re(e,d);if(u!=="round"||c==="non-uniform"){let m=Qe(n,s,a,o,l,u,c,c==="non-uniform"?{radiusTL:t.cornerRadiusTL,radiusTR:t.cornerRadiusTR,radiusBR:t.cornerRadiusBR,radiusBL:t.cornerRadiusBL,shapeTL:t.cornerShapeTL,shapeTR:t.cornerShapeTR,shapeBR:t.cornerShapeBR,shapeBL:t.cornerShapeBL}:void 0);if(m)return`<path${f("d",m)}${Q(e,r.id)}${p?f("transform",p):""}/>`}return`<rect${f("x",n)}${f("y",s)}${f("width",a)}${f("height",o)}${l>0?f("rx",l):""}${Q(e,r.id)}${p?f("transform",p):""}/>`}function sr(r){let e=r.state,t=e.x1??0,n=e.y1??0,s=e.x2??100,a=e.y2??100,o={x:(t+s)/2,y:(n+a)/2},l=re(e,o);return`<line${f("x1",t)}${f("y1",n)}${f("x2",s)}${f("y2",a)}${Q(e,r.id)}${at(e)}${l?f("transform",l):""}/>`}function ar(r){let e=r.state,t=e.x??0,n=e.y??0,s=e.text??"",a=e.fontSize??16,o=e.fontFamily??"sans-serif",l=e.fontWeight??"normal",u=e.fontStyle??"normal",c=e.textAnchor??"start",d=$i(e.textDecoration),p=e.letterSpacing,h=re(e,{x:t,y:n}),y=f("x",t)+f("y",n);y+=f("font-size",a),y+=f("font-family",o),l!=="normal"&&(y+=f("font-weight",l)),u!=="normal"&&(y+=f("font-style",u)),c!=="start"&&(y+=f("text-anchor",c)),d&&(y+=f("text-decoration",d)),p&&(y+=f("letter-spacing",p));let g=e.textLength;g!==void 0&&g>0&&(y+=f("textLength",g),e.lengthAdjust==="spacingAndGlyphs"&&(y+=f("lengthAdjust","spacingAndGlyphs")));let b=e.textDirection;b&&b!=="ltr"&&(y+=f("direction",b));let _=e.unicodeBidi;_&&_!=="normal"&&(y+=f("unicode-bidi",_));let S=e.fontVariationSettings;if(S&&Object.keys(S).length>0){let x=Object.entries(S).map(([C,I])=>`'${C}' ${I}`).join(", ");y+=f("style",`font-variation-settings: ${x}`)}if(y+=Q(e,r.id),h&&(y+=f("transform",h)),e.isTextPath&&e.textPathPoints){let x=e.textPathPoints,C=e.textPathStartOffset??0,I=e.textPathSide,$=`text-path-${r.id}`,k="";if(x.length>=2)if(I==="right"){let M=x[x.length-1];k=`M ${M.x} ${M.y}`;for(let L=x.length-1;L>0;L--){let w=x[L],F=x[L-1],A=w.handleIn??w,R=F.handleOut??F;k+=` C ${A.x} ${A.y}, ${R.x} ${R.y}, ${F.x} ${F.y}`}}else{k=`M ${x[0].x} ${x[0].y}`;for(let M=0;M<x.length-1;M++){let L=x[M],w=x[M+1],F=L.handleOut??L,A=w.handleIn??w;k+=` C ${F.x} ${F.y}, ${A.x} ${A.y}, ${w.x} ${w.y}`}}return`<defs><path id="${B($)}"${f("d",k)} fill="none"/></defs><text${y}><textPath href="#${B($)}"${f("startOffset",`${C}%`)}>${B(s)}</textPath></text>`}if(e.charOffsets&&Array.isArray(e.charOffsets)&&e.charOffsets.length>0){let x=e.charOffsets.map(gi),C=s.split(`
|
|
7
|
+
`),I=e.linePositions??[],$=a*1.25,k="",M=0;return C.forEach((L,w)=>{let F=Array.from(L).length,A=x.slice(M,M+F),R=I[w],D=R?t+R.x:w>0?t:NaN,T=R?R.dy:w>0?$:NaN,G="",W=Jt(A,"x");if(Number.isFinite(D)||W.length>0){let se=W.length>0?W.slice():[];Number.isFinite(D)&&(se[0]=se[0]??D),G+=f("x",se.join(" "))}let X=Jt(A,"y");X.length>0&&(G+=f("y",X.join(" ")));let ie=er(A,"dx");ie.length>0&&(G+=f("dx",ie.join(" ")));let Y=er(A,"dy"),O=Y.length>0||Number.isFinite(T)?Y.slice():[];for(Number.isFinite(T)&&(O[0]=(O[0]??0)+T);O.length>0&&O[O.length-1]===0;)O.pop();O.length>0&&(G+=f("dy",O.join(" ")));let he=yi(A);he.length>0&&(G+=f("rotate",he.join(" "))),k+=`<tspan${G}>${B(L)}</tspan>`,M+=F+1}),`<text${y}>${k}</text>`}if(e.richTextData&&typeof e.richTextData=="object"){let x=e.richTextData;if(Array.isArray(x.lines)&&x.lines.length>0){let C=e.linePositions,I=typeof x.lineHeight=="number"?x.lineHeight:1.2,$=a*I,k=x.baseStyle??{},M="";return x.lines.forEach((L,w)=>{L.segments.forEach((F,A)=>{let R="";if(A===0){let D=C?.[w];D?((Math.abs(D.x)>.001||w>0)&&(R+=f("x",t+D.x)),(Math.abs(D.dy)>.001||w>0)&&(R+=f("dy",D.dy))):w>0&&(R+=f("x",t),R+=f("dy",`${$}px`))}R+=wi(F.style??{},k),R+=' xml:space="preserve"',M+=`<tspan${R}>${B(F.text)}</tspan>`})}),`<text${y}>${M}</text>`}}return`<text${y}>${B(s)}</text>`}function wi(r,e){let t="";r.fontFamily!==void 0&&r.fontFamily!==e.fontFamily&&(t+=f("font-family",String(r.fontFamily))),r.fontSize!==void 0&&r.fontSize!==e.fontSize&&(t+=f("font-size",String(r.fontSize))),r.fontWeight!==void 0&&r.fontWeight!==e.fontWeight&&(t+=f("font-weight",String(r.fontWeight))),r.fontStyle!==void 0&&r.fontStyle!==e.fontStyle&&(t+=f("font-style",String(r.fontStyle)));let n=r.textDecoration,s=e.textDecoration;if(n&&(!s||n.underline!==s.underline||n.strikethrough!==s.strikethrough||n.overline!==s.overline)){let o=[];n.underline&&o.push("underline"),n.strikethrough&&o.push("line-through"),n.overline&&o.push("overline"),o.length>0&&(t+=f("text-decoration",o.join(" ")))}if(r.baselineShift!==void 0&&r.baselineShift!==e.baselineShift){let a=r.baselineShift;a==="super"||a==="sub"?t+=f("baseline-shift",a):typeof a=="number"&&(t+=f("baseline-shift",`${a}px`))}return r.letterSpacing!==void 0&&r.letterSpacing!==e.letterSpacing&&(t+=f("letter-spacing",String(r.letterSpacing))),r.fill!==void 0&&r.fill!==e.fill&&(t+=f("fill",String(r.fill))),r.fillOpacity!==void 0&&r.fillOpacity!==e.fillOpacity&&(t+=f("fill-opacity",String(r.fillOpacity))),r.direction!==void 0&&r.direction!==e.direction&&(t+=f("direction",String(r.direction))),r.unicodeBidi!==void 0&&r.unicodeBidi!==e.unicodeBidi&&(t+=f("unicode-bidi",String(r.unicodeBidi))),t}function or(r){let e=r.state,t=e.pathPoints??[],n=e.pathCurveType??"CUBIC",s=e.pathClosed??!1,a=e.pathTension??.5,o=e.pathArcParams,l=Je(t,n,s,a,o),u=t.length>0?e.customPivot??{x:t[0].x,y:t[0].y}:void 0,c=u?re(e,u):null;return`<path${f("d",l)}${Q(e,r.id)}${at(e)}${c?f("transform",c):""}/>`}function lr(r){let e=r.state,t=e.polylinePoints??[],n=e.polylineClosed??!1,s=t.map(u=>`${u.x},${u.y}`).join(" "),a=t.length>0?e.customPivot??{x:t[0].x,y:t[0].y}:void 0,o=a?re(e,a):null;return`<${n?"polygon":"polyline"}${f("points",s)}${Q(e,r.id)}${at(e)}${o?f("transform",o):""}/>`}function ur(r){let e=r.state,t=e.x??0,n=e.y??0,s=e.width??100,a=e.height??100,o=e.href??"",l=e.imageOpacity,u=e.preserveAspectRatio?"xMidYMid meet":"none",c={x:t+s/2,y:n+a/2},d=re(e,c);return`<image${f("x",t)}${f("y",n)}${f("width",s)}${f("height",a)}${f("href",o)}${f("preserveAspectRatio",u)}${l!==void 0&&l<1?f("opacity",l):""}${Q(e,r.id)}${d?f("transform",d):""}/>`}function cr(r){let e=r.state,t=e.cx??0,n=e.cy??0,s=e.radius??50,a=e.cornerRadius??0,o=e.shiftAngle??-90,l=e.fillRule??"nonzero",u=bi(e,t,n),c="";switch(r.type){case"triangle":c=Z(xe(3,s,o),a,s);break;case"ngon":{let p=e.sides??6;c=Z(xe(p,s,o),a,s);break}case"star":{let p=e.arms??5,m=e.innerRadiusPercent??50;c=Z(Ve(p,s,m,o),a,s);break}case"cross":{let p=e.armWidthPercent??40;c=Z(ze(s,p,o),a,s);break}case"ring":{let p=e.innerRadiusPercent??50;c=qe(s,p,l);break}case"spiral":{let p=e.turns??3,m=e.thicknessPercent??20,h=e.spiralDirection??1;c=Ze(s,p,m,h,o);break}case"gear":{let p=e.teeth??8,m=e.toothDepthPercent??30,h=e.holeRadiusPercent??0;c=Ke(p,s,m,a,h,l,o);break}case"arrow":{let p=e.headWidthPercent??100,m=e.headLengthPercent??30,h=e.shaftWidthPercent??40;c=Z(je(s,p,m,h,o),a,s);break}case"speechBubble":{let p=e.tailAngleDeg??45,m=e.tailLengthPercent??40,h=e.tailWidthPercent??25;c=Z(We(s,p,m,h,o),a,s);break}case"lightning":{let p=e.boltSegments??3,m=e.boltJaggednessPercent??40,h=e.boltWidthPercent??30;c=Z(He(s,p,m,h,o),a,s);break}case"heart":{let p=e.lobeRadiusPercent??50,m=e.cleftDepthPercent??25;c=Xe(s,p,m,o);break}case"cloud":{let p=e.cloudBumps??5,m=e.cloudPuffinessPercent??60;c=Ye(s,p,m,o);break}default:return`<!-- unsupported polygon shape: ${B(r.type)} -->`}let d="";return(r.type==="ring"||r.type==="gear")&&(d=f("fill-rule",l)),`<path${f("d",c)}${d}${Q(e,r.id)}${f("transform",u)}/>`}function V(r){let e;switch(r.type){case"circle":e=rr(r);break;case"ellipse":e=nr(r);break;case"rectangle":case"square":e=ir(r);break;case"line":e=sr(r);break;case"text":e=ar(r);break;case"path":e=or(r);break;case"polyline":e=lr(r);break;case"image":e=ur(r);break;case"triangle":case"ngon":case"star":case"cross":case"ring":case"spiral":case"gear":case"arrow":case"speechBubble":case"lightning":case"heart":case"cloud":e=cr(r);break;default:return`<!-- unsupported shape type: ${B(r.type)} -->`}return vi(e,r.state)}function dr(r,e){let t=(e.stops??[]).map(o=>{let l=`<stop${f("offset",`${o.offset*100}%`)}${f("stop-color",o.color)}`;return o.opacity!==void 0&&o.opacity<1&&(l+=f("stop-opacity",o.opacity)),l+="/>",l}).join(""),n=e.gradientUnits==="userSpaceOnUse",s=o=>n?String(o):`${o*100}%`,a=n?f("gradientUnits","userSpaceOnUse"):"";return`<linearGradient${f("id",r)}${a}${f("x1",s(e.x1))}${f("y1",s(e.y1))}${f("x2",s(e.x2))}${f("y2",s(e.y2))}${e.spreadMethod?f("spreadMethod",e.spreadMethod):""}>${t}</linearGradient>`}function pr(r,e){let t=(e.stops??[]).map(d=>{let p=`<stop${f("offset",`${d.offset*100}%`)}${f("stop-color",d.color)}`;return d.opacity!==void 0&&d.opacity<1&&(p+=f("stop-opacity",d.opacity)),p+="/>",p}).join(""),n=e.gradientUnits==="userSpaceOnUse",s=d=>n?String(d):`${d*100}%`,a=n?f("gradientUnits","userSpaceOnUse"):"",o="",l=e.ry!==void 0&&e.ry!==e.r,u=!!e.rotation;if(l||u){let d=e.cx??(n?0:.5),p=e.cy??(n?0:.5),m=[];m.push(`translate(${d}, ${p})`),u&&m.push(`rotate(${e.rotation})`),l&&e.ry!==0&&m.push(`scale(1, ${e.ry/e.r})`),m.push(`translate(-${d}, -${p})`),o=f("gradientTransform",m.join(" "))}let c=e.fr!==void 0&&e.fr>0?f("fr",s(e.fr)):"";return`<radialGradient${f("id",r)}${a}${f("cx",s(e.cx))}${f("cy",s(e.cy))}${f("fx",s(e.fx))}${f("fy",s(e.fy))}${f("r",s(e.r))}${c}${e.spreadMethod?f("spreadMethod",e.spreadMethod):""}${o}>${t}</radialGradient>`}function hr(r,e){if(e.svgContent!=null){let l=e.width??10,u=e.height??10,c=e.patternUnits??"userSpaceOnUse",d=e.patternContentUnits,p=e.patternTransform,m=e.viewBox,h=e.preserveAspectRatio,y=e.x??0,g=e.y??0,b=`<pattern${f("id",r)}`;return b+=f("patternUnits",c),d&&(b+=f("patternContentUnits",d)),y&&(b+=f("x",y)),g&&(b+=f("y",g)),b+=f("width",l),b+=f("height",u),m&&(b+=f("viewBox",m)),h&&(b+=f("preserveAspectRatio",h)),p&&(b+=f("patternTransform",p)),b+=`>${e.svgContent}</pattern>`,b}let t=10*(e.scale??1),n=e.rotation??0,s=e.color||"#000000",a=e.backgroundColor||"#ffffff",o="";return o+=`<rect${f("width",t)}${f("height",t)}${f("fill",a)}/>`,o+=Pi(e.patternType,t,s),`<pattern${f("id",r)}${f("patternUnits","userSpaceOnUse")}${f("width",t)}${f("height",t)}${n?f("patternTransform",`rotate(${n})`):""}>${o}</pattern>`}function Pi(r,e,t){return ve(r,e,t).map(s=>{let a=Object.entries(s.attrs).map(([o,l])=>f(o,l)).join("");return`<${s.tag}${a}/>`}).join("")}function Ti(r){let e=new Set,t=new Set;for(let n of r){let s=n.state;s.markerStart&&e.add(s.markerStart),s.markerMid&&e.add(s.markerMid),s.markerEnd&&e.add(s.markerEnd);let a=s.startEndpoint,o=s.endEndpoint;a&&a!=="none"&&t.add(a),o&&o!=="none"&&t.add(o)}return{ids:e,legacyEndpoints:t}}function ee(r){let e=Array.isArray(r)?Ti(r):r;if(e.ids.size===0&&e.legacyEndpoints.size===0)return"";let t="",n=le();for(let s of n){let a=s.id,o=a.replace("line-marker-",""),l=`mkr-builtin-${o}`,u=e.legacyEndpoints.has(o)||e.ids.has(a),c=e.ids.has(l);if(!u&&!c)continue;let d=s.element,p=Object.entries(d.attrs).map(([y,g])=>f(y,g)).join(""),m=`<${d.tag}${p}/>`,h=y=>{t+=`<marker${f("id",y)}${f("viewBox",we)}${f("refX",s.refX)}${f("refY",s.refY)}${f("markerWidth",6)}${f("markerHeight",6)}${f("orient","auto-start-reverse")}>${m}</marker>`};u&&h(a),c&&h(l)}return t}var ne=r=>r.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,"""),fr=["linear-gradient","radial-gradient","pattern","filter","marker","symbol"];function mr(r){switch(r.kind){case"symbol":return gr(r);case"marker":return yr(r);case"linear-gradient":return br(r);case"radial-gradient":return $r(r);case"pattern":return xr(r);case"filter":return Sr(r)}}function gr(r){let e=r.shapes.map(t=>V(t)).join("");return`<symbol id="${ne(r.id)}" viewBox="${ne(r.viewBox)}">${e}</symbol>`}function yr(r){let e;if(r.builtIn){let n=le().find(s=>r.id.includes(s.id)||r.id===s.id);if(n){let s=Object.entries(n.element.attrs).map(([a,o])=>` ${a}="${ne(String(o))}"`).join("");e=`<${n.element.tag}${s}/>`}else e=""}else e=r.shapes.map(n=>V(n)).join("");let t=typeof r.orient=="number"?String(r.orient):r.orient;return`<marker id="${ne(r.id)}" viewBox="${ne(r.viewBox)}" refX="${r.refX}" refY="${r.refY}" markerWidth="${r.markerWidth}" markerHeight="${r.markerHeight}" markerUnits="${ne(r.markerUnits)}" orient="${ne(t)}">${e}</marker>`}function br(r){let e={...r.gradient,type:"linear-gradient",id:r.id};return dr(r.id,e)}function $r(r){let e={...r.gradient,type:"radial-gradient",id:r.id};return pr(r.id,e)}function xr(r){let e={...r.pattern,type:"pattern",id:r.id};return hr(r.id,e)}function Sr(r){return tt(r.id,r.filters,{colorInterpolation:r.colorInterpolation,filterUnits:r.filterUnits,primitiveUnits:r.primitiveUnits,x:r.x,y:r.y,width:r.width,height:r.height})}function kr(r){let e=new Map;for(let n of r){let s=e.get(n.kind);s?s.push(n):e.set(n.kind,[n])}let t="";for(let n of fr){let s=e.get(n);if(s)for(let a of s)t+=mr(a)}return t}function Fi(r){let e=new Set,t=n=>{typeof n=="string"&&n&&e.add(n)};for(let n of r){let s=n.state;if(!s)continue;t(s.fillLibraryId),t(s.strokeLibraryId),t(s.markerStart),t(s.markerMid),t(s.markerEnd),t(s.symbolId);let a=s.filterLibraryIds;if(Array.isArray(a))for(let o of a)t(o)}return e}function te(r,e){let t=new Map;for(let l of e)t.set(l.id,l);let n=new Map,s=l=>{if(!l)return;let u=t.get(l);u&&n.set(l,u)},a=(l,u)=>{if(!l||typeof l!="object")return;let c=l;if(!c.id||n.has(c.id))return;let d=u==="linear-gradient"?"linear-gradient":u==="radial-gradient"?"radial-gradient":u==="pattern"?"pattern":null;if(!d)return;let{id:p,sourceId:m,...h}=l,y;if(d==="linear-gradient")y={kind:"linear-gradient",id:c.id,name:m??c.id,sourceId:m,gradient:h};else if(d==="radial-gradient")y={kind:"radial-gradient",id:c.id,name:m??c.id,sourceId:m,gradient:h};else{let{customPatternId:g,...b}=h;y={kind:"pattern",id:c.id,name:m??c.id,sourceId:m,pattern:b}}n.set(c.id,y)},o=(l,u)=>{let c=l.filters;if(!Array.isArray(c)||c.length===0)return;let d=`filter-${u}`;n.has(d)||n.set(d,{kind:"filter",id:d,name:d,filters:c,...l.filterColorInterpolation&&l.filterColorInterpolation!=="auto"?{colorInterpolation:l.filterColorInterpolation}:{},...l.filterUnits?{filterUnits:l.filterUnits}:{},...l.primitiveUnits?{primitiveUnits:l.primitiveUnits}:{},...typeof l.filterX=="string"?{x:l.filterX}:{},...typeof l.filterY=="string"?{y:l.filterY}:{},...typeof l.filterWidth=="string"?{width:l.filterWidth}:{},...typeof l.filterHeight=="string"?{height:l.filterHeight}:{}})};for(let l of r){let u=l.state;if(!u)continue;s(u.fillLibraryId),s(u.strokeLibraryId),s(u.markerStart),s(u.markerMid),s(u.markerEnd),s(u.symbolId);let c=u.filterLibraryIds;if(Array.isArray(c))for(let d of c)typeof d=="string"&&s(d);u.fillLibraryId||a(u.fillGradient,u.fillType),u.strokeLibraryId||a(u.strokeGradient,u.strokeType),(!Array.isArray(c)||c.length===0)&&o(u,l.id)}return n.size===0?"":kr(Array.from(n.values()))}var Mi={x:"x",y:"y",cx:"cx",cy:"cy",x1:"x1",y1:"y1",x2:"x2",y2:"y2",posX:"x",posY:"y",radius:"r",r:"r",rx:"rx",ry:"ry",width:"width",height:"height",opacity:"opacity",fillOpacity:"fill-opacity",strokeOpacity:"stroke-opacity",fillColor:"fill",strokeColor:"stroke",strokeWidth:"stroke-width",borderWidth:"stroke-width",cornerRadius:"rx",fontSize:"font-size"},Ci=new Set(["rotation","skewX","skewY"]);function Ri(r){let t=Me[r];return t?t.join(" "):"0 0 1 1"}function de(r){return r.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function ot(r){return r.cycleDuration!==void 0&&r.cycleDuration>0?r.cycleDuration:r.keyframes.length===0?0:r.keyframes[r.keyframes.length-1].time}function lt(r,e){let t=r.keyframes;if(t.length===0)return{values:[],keyTimes:[],keySplines:[]};let n=t.map(o=>String(o.value)),s=t.map(o=>e>0?(o.time/e).toFixed(4):"0"),a=[];for(let o=1;o<t.length;o++)a.push(Ri(t[o].easing));return{values:n,keyTimes:s,keySplines:a}}function ut(r){let e=r.beginTrigger;if(!e)return"0s";switch(e.type){case"time":return`${e.value}s`;case"event":return e.value;default:return"0s"}}function ct(r){return r.cycleInfinite?"indefinite":r.cycleRepeats&&r.cycleRepeats>1?String(r.cycleRepeats):null}function Ai(r){let e=Mi[r.property];if(!e)return"";let t=ot(r);if(t<=0)return"";let{values:n,keyTimes:s,keySplines:a}=lt(r,t);if(n.length<2)return"";let o=`<animate attributeName="${de(e)}"`;o+=` values="${de(n.join(";"))}"`,o+=` keyTimes="${s.join(";")}"`,a.length>0&&a.some(u=>u!=="0 0 1 1")&&(o+=' calcMode="spline"',o+=` keySplines="${a.join(";")}"`),o+=` dur="${t}s"`,o+=` begin="${ut(r)}"`;let l=ct(r);return l&&(o+=` repeatCount="${l}"`),o+=' fill="freeze"',o+="/>",o}function Ii(r){let e;switch(r.property){case"rotation":e="rotate";break;case"skewX":e="skewX";break;case"skewY":e="skewY";break;default:return""}let t=ot(r);if(t<=0)return"";let{values:n,keyTimes:s,keySplines:a}=lt(r,t);if(n.length<2)return"";let o=e==="rotate"&&r.transformOrigin?n.map(c=>`${c} ${r.transformOrigin.x} ${r.transformOrigin.y}`):n,l='<animateTransform attributeName="transform"';l+=` type="${e}"`,l+=` values="${de(o.join(";"))}"`,l+=` keyTimes="${s.join(";")}"`,a.length>0&&a.some(c=>c!=="0 0 1 1")&&(l+=' calcMode="spline"',l+=` keySplines="${a.join(";")}"`),l+=` dur="${t}s"`,l+=` begin="${ut(r)}"`;let u=ct(r);return u&&(l+=` repeatCount="${u}"`),l+=` additive="${r.additive??"sum"}"`,l+=' fill="freeze"',l+="/>",l}function Li(r){if(!r.motionPath)return"";let e=ot(r);if(e<=0)return"";let{keyTimes:t,keySplines:n}=lt(r,e),s=r.keyframes.map(c=>{let d=typeof c.value=="number"?c.value:parseFloat(c.value);return Math.max(0,Math.min(1,d))}),a=!!r.motionPathRef&&(r.motionPathRef.mode??"trackShape")==="curveTemplate",o="<animateMotion";a||(o+=` path="${de(r.motionPath)}"`),o+=` keyTimes="${t.join(";")}"`,o+=` keyPoints="${s.join(";")}"`,n.length>0&&n.some(c=>c!=="0 0 1 1")&&(o+=' calcMode="spline"',o+=` keySplines="${n.join(";")}"`),o+=` dur="${e}s"`,o+=` begin="${ut(r)}"`;let l=ct(r);l&&(o+=` repeatCount="${l}"`),o+=' fill="freeze"';let u=r.motionRotate??"auto";return o+=` rotate="${u}"`,a?o+=`><mpath href="#${de(r.motionPathRef.shapeId)}"/></animateMotion>`:o+="/>",o}function dt(r){let e=new Map;for(let t of r.tracks){if(!t.enabled||t.keyframes.length<2)continue;let n=[...t.keyframes].sort((o,l)=>o.time-l.time),s={...t,locked:t.locked??!1,keyframes:n.map(o=>({time:o.time,value:o.value,easing:o.easing}))},a="";if(t.property==="pathMotion"&&t.motionPath?a=Li(s):Ci.has(t.property)?a=Ii(s):a=Ai(s),a){let o=e.get(t.shapeId)??[];o.push(a),e.set(t.shapeId,o)}}return e}function pe(r,e={}){let{xmlDeclaration:t=!0,backgroundColor:n,indent:s=!0,className:a}=e,o=r.viewboxes?.[0],l=e.width??o?.width??800,u=e.height??o?.height??600,c=e.viewBox??`0 0 ${l} ${u}`,d=s?`
|
|
8
|
+
`:"",p=s?" ":"",m=r.shapes??[],h=m.filter(F=>F.state?.displayMode==="motionOnly"),y=m.filter(F=>F.state?.displayMode!=="motionOnly"),g=Oi(r),b=Gi(r),_=[...Array.isArray(r.library)?r.library:[],...(b??[]).filter(F=>!F.builtIn&&!(Array.isArray(r.library)&&r.library.some(A=>A.id===F.id)))],S=te(y,_),P=ee(y),x=ji(g,y),C=Ei(h),I=S.length>0||P.length>0||x.length>0||C.length>0,$="";I&&($=`${d}${p}<defs>${d}`,S.length>0&&($+=`${p}${p}${S}${d}`),P.length>0&&($+=`${p}${p}${P}${d}`),x.length>0&&($+=`${p}${p}${x}${d}`),C.length>0&&($+=`${p}${p}${C}${d}`),$+=`${p}</defs>`);let k="";n&&(k=`${d}${p}<rect width="${l}" height="${u}" fill="${n}"/>`);let M=r.animationTimeline?dt(r.animationTimeline):null,L=y.map(F=>{let A=F.type==="symbol-instance"?zi(F,g):V(F),R=M?.get(F.id);return R&&R.length>0&&(A=Wi(A,R,p)),`${p}${A}`}).join(d),w="";return t&&(w+=`<?xml version="1.0" encoding="UTF-8"?>${d}`),w+='<svg xmlns="http://www.w3.org/2000/svg"',w+=` width="${l}" height="${u}"`,w+=` viewBox="${c}"`,a&&(w+=` class="${a}"`),w+=">",w+=$,w+=k,y.length>0&&(w+=`${d}${L}`),w+=`${d}</svg>${d}`,w}function Ei(r){if(r.length===0)return"";let e=[];for(let t of r){let n=Di(t);if(!n)continue;let s=Bi(n);e.push(`<path id="${_r(t.id)}" d="${_r(s)}"/>`)}return e.join("")}function Di(r){let e=r.state;if(typeof e?.d=="string")return e.d;switch(r.type){case"rectangle":{let t=e?.x??0,n=e?.y??0,s=e?.width??0,a=e?.height??0;return s<=0||a<=0?null:`M${t},${n}h${s}v${a}h${-s}Z`}case"circle":{let t=e?.cx??0,n=e?.cy??0,s=e?.radius??0;return s<=0?null:`M${t-s},${n}A${s},${s} 0 1 0 ${t+s},${n}A${s},${s} 0 1 0 ${t-s},${n}Z`}case"ellipse":{let t=e?.cx??0,n=e?.cy??0,s=e?.rx??0,a=e?.ry??0;return s<=0||a<=0?null:`M${t-s},${n}A${s},${a} 0 1 0 ${t+s},${n}A${s},${a} 0 1 0 ${t-s},${n}Z`}case"line":{let t=e?.x1??0,n=e?.y1??0,s=e?.x2??0,a=e?.y2??0;return`M${t},${n}L${s},${a}`}default:return null}}function Bi(r){let e=/[Mm]\s*(-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)[\s,]+(-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)/.exec(r);if(!e)return r;let t=parseFloat(e[1]),n=parseFloat(e[2]);if(!isFinite(t)||!isFinite(n)||t===0&&n===0)return r;let s=!0;return r.replace(/([MLCQSTHVAZ])\s*([\d\s.,e+-]*)/gi,(a,o,l)=>{let u=o.toUpperCase(),c=o!==u,d=s;if(s=!1,u==="Z")return a;let p=l.trim().split(/[\s,]+/).filter(h=>h.length>0).map(Number);if(p.length===0||c&&!d)return a;let m=[];if(u==="H")for(let h of p)m.push(h-t);else if(u==="V")for(let h of p)m.push(h-n);else if(u==="A")for(let h=0;h<p.length;h+=7)m.push(p[h],p[h+1],p[h+2],p[h+3],p[h+4]),h+5<p.length&&m.push(p[h+5]-t),h+6<p.length&&m.push(p[h+6]-n);else for(let h=0;h<p.length;h+=2)m.push(p[h]-t),h+1<p.length&&m.push(p[h+1]-n);return`${o} ${m.join(" ")}`})}function _r(r){return r.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}function Oi(r){let t=(Array.isArray(r.library)?r.library:[]).filter(n=>n.kind==="symbol");return t.length>0?t:r.symbols??[]}function Gi(r){let t=(Array.isArray(r.library)?r.library:[]).filter(n=>n.kind==="marker");return t.length>0?t:r.markers}var pt=r=>r.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,"""),Ui=r=>r.replace(/[^a-zA-Z0-9_-]/g,"_");function vr(r){let e=r.state.symbolId??"",t=r.state.variantKey??"";return r.state.symbolOverrides&&Object.keys(r.state.symbolOverrides).length>0?`${e}--ovr-${r.id}`:t?`${e}--${Ui(t)}`:e}function Ni(r,e){return r.map(t=>{let n=e[t.id];return!n||Object.keys(n).length===0?t:{...t,state:{...t.state,...n}}})}function Vi(r,e){return e?r.variants?.[e]??r.shapes:r.shapes}function zi(r,e){let t=vr(r),n=r.state.x??0,s=r.state.y??0,a=r.state.width??100,o=r.state.height??100;return`<use href="#${pt(t)}" x="${n}" y="${s}" width="${a}" height="${o}"/>`}function ji(r,e){if(r.length===0)return"";let t=new Map;for(let a of r)t.set(a.id,a);let n=new Map;for(let a of e){if(a.type!=="symbol-instance")continue;let o=a.state.symbolId??"",l=t.get(o);if(!l)continue;let u=vr(a);if(n.has(u))continue;let c=Vi(l,a.state.variantKey??""),d=a.state.symbolOverrides;d&&Object.keys(d).length>0&&(c=Ni(c,d)),n.set(u,{def:l,resolved:c})}if(n.size===0)return"";let s=[];for(let[a,{def:o,resolved:l}]of n){let u=l.map(c=>V(c)).join("");s.push(`<symbol id="${pt(a)}" viewBox="${pt(o.viewBox)}">${u}</symbol>`)}return s.join("")}function Wi(r,e,t){let n=e.join(""),s=r.lastIndexOf("/>");if(s!==-1){let o=r.match(/^<(\w+)/),l=o?o[1]:"g";return r.slice(0,s)+">"+n+`</${l}>`}let a=r.match(/<\/(\w+)>$/);if(a){let o=r.lastIndexOf(`</${a[1]}>`);return r.slice(0,o)+n+r.slice(o)}return r+n}function ht(r,e){let t=K(r,e);return pe(r,{width:t.width,height:t.height,xmlDeclaration:e.xmlDeclaration??!1,indent:!0})}function Hi(r){return r==="class"?"className":r==="for"?"htmlFor":r.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function wr(r){return r.replace(/\s([a-z][a-z-]*?)=/g,(e,t)=>t.startsWith("data-")||t.startsWith("aria-")?e:` ${Hi(t)}=`)}function ft(r,e){let t=e.componentName??"SvgComponent",n=K(r,e),s=e.indent??" ",a=r.shapes??[],o=e.typescript??!1,l=Array.isArray(r.library)?r.library:[],u=te(a,l),c=ee(a),d=u+c,p=d.length>0,m=a.map(y=>{let g=V(y);return`${s}${s}${s}${wr(g)}`}),h=[];h.push("import React from 'react';"),h.push(""),o?(h.push(`interface ${t}Props {`),h.push(`${s}className?: string;`),h.push(`${s}style?: React.CSSProperties;`),h.push("}"),h.push(""),h.push(`const ${t}: React.FC<${t}Props> = ({ className, style }) => {`)):h.push(`const ${t} = ({ className, style }) => {`),h.push(`${s}return (`),h.push(`${s}${s}<svg xmlns="http://www.w3.org/2000/svg" width="${n.width}" height="${n.height}" viewBox="0 0 ${n.width} ${n.height}" className={className} style={style}>`),p&&(h.push(`${s}${s}${s}<defs>`),h.push(`${s}${s}${s}${s}${wr(d)}`),h.push(`${s}${s}${s}</defs>`));for(let y of m)h.push(y);return h.push(`${s}${s}</svg>`),h.push(`${s});`),h.push("};"),h.push(""),h.push(`export default ${t};`),h.push(""),h.join(`
|
|
9
|
+
`)}function mt(r,e){let t=e.componentName??"SvgComponent",n=K(r,e),s=e.indent??" ",a=r.shapes??[],o=e.typescript??!1,l=Array.isArray(r.library)?r.library:[],u=te(a,l),c=ee(a),d=u+c,p=d.length>0,m=a.map(y=>`${s}${s}${V(y)}`),h=[];h.push("<template>"),h.push(`${s}<svg xmlns="http://www.w3.org/2000/svg" width="${n.width}" height="${n.height}" viewBox="0 0 ${n.width} ${n.height}" :class="className" :style="style">`),p&&(h.push(`${s}${s}<defs>`),h.push(`${s}${s}${s}${d}`),h.push(`${s}${s}</defs>`));for(let y of m)h.push(y);return h.push(`${s}</svg>`),h.push("</template>"),h.push(""),o?h.push('<script setup lang="ts">'):h.push("<script setup>"),h.push(`// ${t}`),o?(h.push("defineProps<{"),h.push(`${s}className?: string;`),h.push(`${s}style?: Record<string, string>;`),h.push("}>();")):(h.push("defineProps({"),h.push(`${s}className: { type: String, default: '' },`),h.push(`${s}style: { type: Object, default: () => ({}) },`),h.push("});")),h.push("</script>"),h.push(""),h.join(`
|
|
10
|
+
`)}var Xi=new Set(["circle","ellipse","rectangle","square","line","text","image"]);function Pr(r){return r.replace(/\\/g,"\\\\").replace(/'/g,"\\'")}function Tr(r){return r.replace(/\\/g,"\\\\").replace(/`/g,"\\`").replace(/\$\{/g,"\\${")}function Yi(r){if(!Xi.has(r.type))return!0;let e=r.state.metadata;return!!(e?.title||e?.description||r.type==="text"&&r.state.isTextPath)}function gt(r,e){let t=e.componentName??"createSvg",n=K(r,e),s=e.indent??" ",a=r.shapes??[],o=e.typescript??!1,l=[];l.push("import * as d3 from 'd3';"),l.push(""),o?l.push(`export function ${t}(container: string | HTMLElement): d3.Selection<SVGSVGElement, unknown, HTMLElement, unknown> {`):l.push(`export function ${t}(container) {`),l.push(`${s}const svg = d3.select(container)`),l.push(`${s}${s}.append('svg')`),l.push(`${s}${s}.attr('xmlns', 'http://www.w3.org/2000/svg')`),l.push(`${s}${s}.attr('width', ${n.width})`),l.push(`${s}${s}.attr('height', ${n.height})`),l.push(`${s}${s}.attr('viewBox', '0 0 ${n.width} ${n.height}');`),l.push("");let u=Array.isArray(r.library)?r.library:[],c=te(a,u),d=ee(a),p=`${c}${d}`;p.length>0&&(l.push(`${s}svg.append('defs').html(\`${Tr(p)}\`);`),l.push(""));for(let m=0;m<a.length;m++){let h=a[m];if(l.push(`${s}// ${h.type}${h.state.metadata?.name?` \u2014 ${h.state.metadata.name}`:""}`),Yi(h)){l.push(`${s}svg.append('g').html(\`${Tr(V(h))}\`);`),l.push("");continue}let y=Wt(h),g=Se(h),b=`shape${m+1}`;l.push(`${s}const ${b} = svg.append('${y}')`);for(let[_,S]of g)l.push(`${s}${s}.attr('${_}', '${Pr(S)}')`);h.type==="text"&&h.state.text&&l.push(`${s}${s}.text('${Pr(h.state.text)}')`),l[l.length-1]=l[l.length-1]+";",l.push("")}return l.push(`${s}return svg;`),l.push("}"),l.push(""),l.join(`
|
|
11
|
+
`)}function Fr(r,e){let t=r.state.metadata?.name;return t?t.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,""):`${r.type}-${e+1}`}var qi=new Set(["fill","fill-opacity","fill-rule","stroke","stroke-width","stroke-opacity","stroke-dasharray","stroke-linecap","opacity","transform","filter"]);function yt(r,e){let t=K(r,e),n=e.indent??" ",s=r.shapes??[],a=[];for(let u=0;u<s.length;u++){let c=s[u],d=Fr(c,u),p=Se(c),m=[];for(let[h,y]of p)qi.has(h)&&m.push(`${n}${h}: ${y};`);m.length>0&&a.push(`.${d} {
|
|
11
12
|
${m.join(`
|
|
12
13
|
`)}
|
|
13
|
-
}`)}let o=[];for(let u=0;u<
|
|
14
|
-
`)}function ct(r,e){let t=_i(r,e),n={...e};switch(n.format){case"svg":return st(t,n);case"react":return at(t,n);case"vue":return ot(t,n);case"d3":return lt(t,n);case"css":return ut(t,n);default:throw new Error(`Unsupported code format: ${n.format}`)}}function _i(r,e){return Array.isArray(r)?{shapes:r,viewboxes:[{id:"default",x:0,y:0,width:e.width??800,height:e.height??600}]}:r}var dt=class r{_snapshot;constructor(e={}){let{width:t=800,height:n=600,viewboxId:i}=e,a=ue(0,0,t,n,i);this._snapshot=Te({viewboxes:[a]})}static fromSnapshot(e){let t=new r;return t._snapshot=JSON.parse(JSON.stringify(e)),t}static fromJSON(e,t){let n=ve(e,t),i=new r;return i._snapshot=n,i}add(e){let t="build"in e&&typeof e.build=="function"?e.build():e;return this._snapshot.shapes.push(t),this}addAll(...e){for(let t of e)this.add(t);return this}remove(e){let t=this._snapshot.shapes.length;return this._snapshot.shapes=this._snapshot.shapes.filter(n=>n.id!==e),this._snapshot.shapes.length<t}get shapes(){return this._snapshot.shapes}findShape(e){return this._snapshot.shapes.find(t=>t.id===e)}size(e,t){return this._snapshot.viewboxes.length>0?(this._snapshot.viewboxes[0].width=e,this._snapshot.viewboxes[0].height=t):this._snapshot.viewboxes=[ue(0,0,e,t)],this}get width(){return this._snapshot.viewboxes[0]?.width??800}get height(){return this._snapshot.viewboxes[0]?.height??600}title(e){return this._ensureMetadata(),this._snapshot.documentMetadata.title=e,this}description(e){return this._ensureMetadata(),this._snapshot.documentMetadata.description=e,this}author(e){return this._ensureMetadata(),this._snapshot.documentMetadata.author=e,this}keywords(...e){return this._ensureMetadata(),this._snapshot.documentMetadata.keywords=e,this}license(e,t){return this._ensureMetadata(),this._snapshot.documentMetadata.license=e,t!==void 0&&(this._snapshot.documentMetadata.licenseUrl=t),this}language(e){return this._ensureMetadata(),this._snapshot.documentMetadata.language=e,this}customMetadata(e){return this._ensureMetadata(),this._snapshot.documentMetadata.customMetadata={...this._snapshot.documentMetadata.customMetadata,...e},this}get meta(){return this._snapshot.documentMetadata}defineSymbol(e,t,n){this._snapshot.symbols||(this._snapshot.symbols=[]);let i=T(),a=t.map(l=>"build"in l&&typeof l.build=="function"?l.build():l),o={kind:"symbol",id:i,name:e,viewBox:n?.viewBox??"0 0 100 100",shapes:a};return n?.groups&&(o.groups=n.groups),n?.thumbnail&&(o.thumbnail=n.thumbnail),this._snapshot.symbols.push(o),i}placeSymbolInstance(e,t,n,i,a){let o={id:T(),type:"symbol-instance",state:{symbolId:e,x:t,y:n,width:i??100,height:a??100}};return this._snapshot.shapes.push(o),this}removeSymbol(e){if(!this._snapshot.symbols)return!1;let t=this._snapshot.symbols.length;return this._snapshot.symbols=this._snapshot.symbols.filter(n=>n.id!==e),this._snapshot.symbols.length<t}get symbols(){return this._snapshot.symbols??[]}addClipGroup(e,t,n){this._snapshot.clipMaskGroups||(this._snapshot.clipMaskGroups=[]);let i=T(),a={id:i,type:"clip",clipShapeIds:e,contentShapeIds:t,parentId:null};return n?.clipPathUnits&&(a.clipPathUnits=n.clipPathUnits),n?.rawDefinition&&(a.rawDefinition=n.rawDefinition),this._snapshot.clipMaskGroups.push(a),i}addMaskGroup(e,t,n){this._snapshot.clipMaskGroups||(this._snapshot.clipMaskGroups=[]);let i=T(),a={id:i,type:"mask",clipShapeIds:e,contentShapeIds:t,parentId:null};return n?.maskUnits&&(a.maskUnits=n.maskUnits),n?.maskContentUnits&&(a.maskContentUnits=n.maskContentUnits),n?.maskBounds&&(a.maskBounds=n.maskBounds),n?.maskType&&(a.maskType=n.maskType),n?.rawDefinition&&(a.rawDefinition=n.rawDefinition),this._snapshot.clipMaskGroups.push(a),i}removeClipMaskGroup(e){if(!this._snapshot.clipMaskGroups)return!1;let t=this._snapshot.clipMaskGroups.length;return this._snapshot.clipMaskGroups=this._snapshot.clipMaskGroups.filter(n=>n.id!==e),this._snapshot.clipMaskGroups.length<t}addGuide(e,t,n){this._snapshot.guides||(this._snapshot.guides=[]);let i=T(),a={id:i,orientation:e,position:t,controlPointOffset:0};return n?.color&&(a.color=n.color),n?.opacity!==void 0&&(a.opacity=n.opacity),this._snapshot.guides.push(a),i}removeGuide(e){if(!this._snapshot.guides)return!1;let t=this._snapshot.guides.length;return this._snapshot.guides=this._snapshot.guides.filter(n=>n.id!==e),this._snapshot.guides.length<t}clearGuides(){return this._snapshot.guides=[],this}get guides(){return this._snapshot.guides??[]}addMeasurement(e,t,n){this._snapshot.measurements||(this._snapshot.measurements=[]);let i=T(),a={id:i,type:e,points:t,visible:n?.visible??!0,snapDivisions:n?.snapDivisions??1};return n?.color&&(a.color=n.color),n?.opacity!==void 0&&(a.opacity=n.opacity),this._snapshot.measurements.push(a),i}removeMeasurement(e){if(!this._snapshot.measurements)return!1;let t=this._snapshot.measurements.length;return this._snapshot.measurements=this._snapshot.measurements.filter(n=>n.id!==e),this._snapshot.measurements.length<t}get measurements(){return this._snapshot.measurements??[]}addCustomPattern(e,t,n,i){this._snapshot.customPatterns||(this._snapshot.customPatterns=[]);let a=T();return this._snapshot.customPatterns.push({id:a,name:e,svgContent:t,width:n,height:i}),a}removeCustomPattern(e){if(!this._snapshot.customPatterns)return!1;let t=this._snapshot.customPatterns.length;return this._snapshot.customPatterns=this._snapshot.customPatterns.filter(n=>n.id!==e),this._snapshot.customPatterns.length<t}get customPatterns(){return this._snapshot.customPatterns??[]}addGroup(e,t){this._snapshot.groups||(this._snapshot.groups=[]);let n=e??T();return this._snapshot.groups.push({id:n,parentId:t??null}),n}removeGroup(e){if(!this._snapshot.groups)return!1;let t=this._snapshot.groups.length;this._snapshot.groups=this._snapshot.groups.filter(n=>n.id!==e);for(let n of this._snapshot.shapes)n.state.groupId===e&&delete n.state.groupId;return this._snapshot.groups.length<t}moveToGroup(e,t){let n=this._snapshot.shapes.find(i=>i.id===e);return n&&(n.state.groupId=t),this}removeFromGroup(e){let t=this._snapshot.shapes.find(n=>n.id===e);return t&&delete t.state.groupId,this}bringToFront(e){let t=this._snapshot.shapes.findIndex(n=>n.id===e);if(t>=0){let[n]=this._snapshot.shapes.splice(t,1);this._snapshot.shapes.push(n)}return this}sendToBack(e){let t=this._snapshot.shapes.findIndex(n=>n.id===e);if(t>=0){let[n]=this._snapshot.shapes.splice(t,1);this._snapshot.shapes.unshift(n)}return this}reorder(e,t){let n=this._snapshot.shapes.findIndex(i=>i.id===e);if(n>=0){let[i]=this._snapshot.shapes.splice(n,1),a=Math.max(0,Math.min(t,this._snapshot.shapes.length));this._snapshot.shapes.splice(a,0,i)}return this}defineVariable(e,t,n,i){this._snapshot.templateVariables||(this._snapshot.templateVariables=[]);let a=this._snapshot.templateVariables.find(o=>o.name===e);if(a)a.type=t,a.defaultValue=n,i?.label!==void 0&&(a.label=i.label),i?.description!==void 0&&(a.description=i.description);else{let o={name:e,type:t,defaultValue:n};i?.label!==void 0&&(o.label=i.label),i?.description!==void 0&&(o.description=i.description),this._snapshot.templateVariables.push(o)}return this}removeVariable(e){return this._snapshot.templateVariables&&(this._snapshot.templateVariables=this._snapshot.templateVariables.filter(t=>t.name!==e)),this}get variables(){return this._snapshot.templateVariables??[]}inspectVariables(){return Ae(this._snapshot)}setTimeline(e){return"build"in e&&typeof e.build=="function"?this._snapshot.animationTimeline=e.build():this._snapshot.animationTimeline=e,this}clearTimeline(){return delete this._snapshot.animationTimeline,this}get timeline(){return this._snapshot.animationTimeline}toSVG(e){let{variables:t,...n}=e??{},i=Re(this._snapshot,t);return ae(i,n)}toJSON(e){return Pe(this._snapshot,e)}toSnapshot(){return JSON.parse(JSON.stringify(this._snapshot))}toCode(e,t){return ct(this._snapshot,{...t,format:e})}_ensureMetadata(){this._snapshot.documentMetadata||(this._snapshot.documentMetadata={title:"",description:"",author:"",keywords:[],license:"",licenseUrl:"",language:"en",customMetadata:{}})}};var ht=class{_track;constructor(e,t){this._track={id:T(),shapeId:e,property:t,keyframes:[],enabled:!0,locked:!1}}id(e){return this._track.id=e,this}keyframe(e,t,n="linear"){return this._track.keyframes.push({time:e,value:t,easing:n}),this}keyframeBezier(e,t,n){return this._track.keyframes.push({time:e,value:t,easing:"custom-bezier",customBezier:n}),this}keyframeLinear(e,t,n){return this._track.keyframes.push({time:e,value:t,easing:"linear-function",linearPoints:n}),this}keyframes(...e){return this._track.keyframes.push(...e),this}disabled(){return this._track.enabled=!1,this}locked(){return this._track.locked=!0,this}motionPath(e){return this._track.motionPath=e,this}motionPathRef(e,t="trackShape"){return this._track.motionPathRef={shapeId:e,mode:t},this}beginTrigger(e,t){return this._track.beginTrigger={type:e,value:t},this}endTrigger(e,t){return this._track.endTrigger={type:e,value:t},this}cycleDuration(e){return this._track.cycleDuration=e,this}cycleRepeats(e){return this._track.cycleRepeats=e,this}infinite(){return this._track.cycleInfinite=!0,this}cycle(e){return this._track.cycleBehavior=e,this}transformOrigin(e,t){return this._track.transformOrigin={x:e,y:t},this}motionRotate(e){return this._track.motionRotate=e,this}additive(e){return this._track.additive=e,this}build(){let e=[...this._track.keyframes].sort((t,n)=>t.time-n.time);return{...this._track,keyframes:e}}},pt=class{_duration;_loop=!1;_playbackSpeed=1;_tracks=[];constructor(e){this._duration=e}loop(e=!0){return this._loop=e,this}speed(e){return this._playbackSpeed=e,this}duration(e){return this._duration=e,this}addTrack(e){return this._tracks.push(e),this}addTracks(...e){return this._tracks.push(...e),this}buildTimeline(){return{duration:this._duration,loop:this._loop,playbackSpeed:this._playbackSpeed,tracks:this._tracks.map(e=>e.build())}}build(){let e=this.buildTimeline();return{duration:e.duration,loop:e.loop,playbackSpeed:e.playbackSpeed,tracks:e.tracks.map(t=>({id:t.id,shapeId:t.shapeId,property:t.property,enabled:t.enabled,locked:t.locked||void 0,motionPath:t.motionPath,motionPathRef:t.motionPathRef,beginTrigger:t.beginTrigger,endTrigger:t.endTrigger,cycleDuration:t.cycleDuration,cycleRepeats:t.cycleRepeats,cycleInfinite:t.cycleInfinite,cycleBehavior:t.cycleBehavior,transformOrigin:t.transformOrigin,motionRotate:t.motionRotate,additive:t.additive,keyframes:t.keyframes.map(n=>({time:n.time,value:n.value,easing:n.easing,...n.customBezier?{customBezier:n.customBezier}:{},...n.linearPoints?{linearPoints:n.linearPoints}:{}}))}))}}};var B=class{_id;_type;_state={};constructor(e,t){this._type=e,this._id=t??T()}id(e){return this._id=e,this}locked(e=!0){return this._state.locked=e,this}visible(e=!0){return this._state.visible=e,this}displayMode(e){return this._state.displayMode=e,this}motionOnly(){return this._state.displayMode="motionOnly",this}fill(e,t){return this._state.fillColor=e,this._state.fillType="solid",t!==void 0&&(this._state.fillOpacity=t),this}noFill(){return this._state.fillType="none",this}fillGradient(e){let t="build"in e?e.build():e;return this._state.fillType=t.type,this._state.fillGradient=t,this}fillPattern(e){let t="build"in e?e.build():e;return this._state.fillType="pattern",this._state.fillGradient=t,this}fillOpacity(e){return this._state.fillOpacity=e,this}fillRule(e){return this._state.fillRule=e,this}stroke(e,t){return this._state.borderColor=e,t!==void 0&&(this._state.borderWidth=t),this}noStroke(){return this._state.borderColor="none",this._state.borderWidth=0,this}strokeWidth(e){return this._state.borderWidth=e,this}strokeOpacity(e){return this._state.strokeOpacity=e,this}strokeGradient(e){let t="build"in e?e.build():e;return this._state.strokeType=t.type,this._state.strokeGradient=t,this}strokePattern(e){let t="build"in e?e.build():e;return this._state.strokeType="pattern",this._state.strokeGradient=t,this}strokeLinejoin(e){return this._state.strokeLinejoin=e,this}strokeLinecap(e){return this._state.strokeLinecap=e,this}strokeMiterlimit(e){return this._state.strokeMiterlimit=e,this}dashOffset(e){return this._state.dashOffset=e,this}strokeDasharray(e){return this._state.strokeDasharray=e,this}dash(e,t,n){return this._state.lineStyle=e,e==="custom"&&(t!==void 0&&(this._state.dashLength=t),n!==void 0&&(this._state.gapLength=n)),this}opacity(e){return this._state.opacity=e,this}rotate(e){return this._state.rotation=e,this}skew(e,t){return this._state.skewX=e,this._state.skewY=t,this}scale(e,t){return this._state.scaleX=e,this._state.scaleY=t??e,this}pivot(e,t){return this._state.customPivot={x:e,y:t},this}filter(...e){let t=this._state.filters??[];return this._state.filters=[...t,...e],this}dropShadow(e={}){let t={id:`drop-shadow-${T()}`,type:"drop-shadow",enabled:!0,offsetX:e.offsetX??4,offsetY:e.offsetY??4,blurRadius:e.blurRadius??8,spread:e.spread??0,color:e.color??"#000000",opacity:e.opacity??.3};return this.filter(t)}innerShadow(e={}){let t={id:`inner-shadow-${T()}`,type:"inner-shadow",enabled:!0,offsetX:e.offsetX??2,offsetY:e.offsetY??2,blurRadius:e.blurRadius??4,choke:e.choke??0,color:e.color??"#000000",opacity:e.opacity??.5};return this.filter(t)}blur(e,t,n){let i=e??4,a=t??i,o={id:`gaussian-blur-${T()}`,type:"gaussian-blur",enabled:!0,blurX:i,blurY:a,linked:i===a,quality:n?.quality??"normal"};return this.filter(o)}glow(e={}){let t={id:`glow-${T()}`,type:"glow",enabled:!0,color:e.color??"#ffffff",radius:e.radius??10,intensity:e.intensity??.8};return this.filter(t)}innerGlow(e={}){let t={id:`inner-glow-${T()}`,type:"inner-glow",enabled:!0,color:e.color??"#ffffff",radius:e.radius??10,intensity:e.intensity??.8};return this.filter(t)}grayscale(e=1){let t={id:`grayscale-${T()}`,type:"grayscale",enabled:!0,amount:e};return this.filter(t)}sepia(e=1){let t={id:`sepia-${T()}`,type:"sepia",enabled:!0,amount:e};return this.filter(t)}outline(e={}){return this.filter({id:`outline-${T()}`,type:"outline",enabled:!0,width:e.width??3,color:e.color??"#000000",opacity:e.opacity??1,position:e.position??"outside"})}motionBlur(e={}){let t={id:`motion-blur-${T()}`,type:"motion-blur",enabled:!0,distance:e.distance??10,angle:e.angle??0,quality:e.quality??"normal"};return this.filter(t)}pointLight(e={}){let t={id:`point-light-${T()}`,type:"point-light",enabled:!0,x:e.x??100,y:e.y??100,z:e.z??200,color:e.color??"#ffffff",surfaceScale:e.surfaceScale??5,diffuseConstant:e.diffuseConstant??1,specularConstant:e.specularConstant??1,specularExponent:e.specularExponent??20};return this.filter(t)}spotLight(e={}){let t={id:`spot-light-${T()}`,type:"spot-light",enabled:!0,x:e.x??100,y:e.y??0,z:e.z??200,pointsAtX:e.pointsAtX??100,pointsAtY:e.pointsAtY??100,pointsAtZ:e.pointsAtZ??0,coneAngle:e.coneAngle??30,color:e.color??"#ffffff",surfaceScale:e.surfaceScale??5,specularConstant:e.specularConstant??1,specularExponent:e.specularExponent??20};return this.filter(t)}sharpen(e=1){let t={id:`sharpen-${T()}`,type:"sharpen",enabled:!0,amount:e};return this.filter(t)}pixelate(e=8){let t={id:`pixelate-${T()}`,type:"pixelate",enabled:!0,blockSize:e};return this.filter(t)}warp(e={}){let t={id:`warp-${T()}`,type:"warp",enabled:!0,scale:e.scale??10,frequency:e.frequency??.02,octaves:e.octaves??1,warpType:e.warpType??"turbulence"};return this.filter(t)}morphology(e={}){let t=e.radiusX??2,n=e.radiusY??t,i={id:`morphology-${T()}`,type:"morphology",enabled:!0,operator:e.operator??"dilate",radiusX:t,radiusY:n,linked:e.linked??t===n};return this.filter(i)}contouring(e={}){if((e.mode??"discrete")==="table"){let i={id:`contouring-table-${T()}`,type:"contouring-table",enabled:!0,levels:e.levels??4,contrast:e.contrast??1};return this.filter(i)}let n={id:`contouring-discrete-${T()}`,type:"contouring-discrete",enabled:!0,levels:e.levels??4};return this.filter(n)}roundEdges(e=4){let t={id:`round-edges-${T()}`,type:"round-edges",enabled:!0,radius:e};return this.filter(t)}channelPainter(e={}){let t={id:`channel-painter-${T()}`,type:"channel-painter",enabled:!0,red:e.red??1,green:e.green??1,blue:e.blue??1};return this.filter(t)}brightness(e=1){let t={id:`brightness-${T()}`,type:"brightness",enabled:!0,amount:e};return this.filter(t)}contrast(e=1){let t={id:`contrast-${T()}`,type:"contrast",enabled:!0,amount:e};return this.filter(t)}filterOpacity(e=1){let t={id:`opacity-${T()}`,type:"opacity",enabled:!0,amount:e};return this.filter(t)}invert(e=1){let t={id:`invert-${T()}`,type:"invert",enabled:!0,amount:e};return this.filter(t)}hueRotate(e=0){let t={id:`hue-rotate-${T()}`,type:"hue-rotate",enabled:!0,angle:e};return this.filter(t)}saturate(e=1){let t={id:`saturate-${T()}`,type:"saturate",enabled:!0,amount:e};return this.filter(t)}blackAndWhite(e=.5){let t={id:`black-and-white-${T()}`,type:"black-and-white",enabled:!0,threshold:e};return this.filter(t)}duotone(e={}){let t={id:`duotone-${T()}`,type:"duotone",enabled:!0,shadowColor:e.shadowColor??"#000000",highlightColor:e.highlightColor??"#ffffff"};return this.filter(t)}xray(e=1){let t={id:`xray-${T()}`,type:"xray",enabled:!0,intensity:e};return this.filter(t)}noise(e={}){let t={id:`noise-${T()}`,type:"noise",enabled:!0,amount:e.amount??.3,scale:e.scale??1};return this.filter(t)}emboss(e={}){let t={id:`emboss-${T()}`,type:"emboss",enabled:!0,strength:e.strength??1,angle:e.angle??135};return this.filter(t)}filmGrain(e={}){let t={id:`film-grain-${T()}`,type:"film-grain",enabled:!0,amount:e.amount??.3,size:e.size??1};return this.filter(t)}watercolor(e={}){let t={id:`watercolor-${T()}`,type:"watercolor",enabled:!0,wetness:e.wetness??.5,turbulence:e.turbulence??.5};return this.filter(t)}gouache(e={}){let t={id:`gouache-${T()}`,type:"gouache",enabled:!0,thickness:e.thickness??.5,texture:e.texture??.5};return this.filter(t)}inkBlot(e={}){let t={id:`ink-blot-${T()}`,type:"ink-blot",enabled:!0,spread:e.spread??.5,edges:e.edges??.5};return this.filter(t)}crumpledPlastic(e={}){let t={id:`crumpled-plastic-${T()}`,type:"crumpled-plastic",enabled:!0,wrinkles:e.wrinkles??.5,shine:e.shine??.5};return this.filter(t)}riddled(e={}){let t={id:`riddled-${T()}`,type:"riddled",enabled:!0,density:e.density??.5,size:e.size??1};return this.filter(t)}cssClipPath(e){return this._state.cssClipPath=e,this}cssMaskProperties(e){return this._state.cssMaskProperties=e,this}metadata(e){return this._state.metadata={...this._state.metadata,...e},this}group(e){return this._state.groupId=e,this}build(){return{id:this._id,type:this._type,state:{...this._state}}}},ft=class extends B{constructor(e,t,n){if(n<0)throw new RangeError("Circle radius must be non-negative");super("circle"),this._state.x=e,this._state.y=t,this._state.radius=n}position(e,t){return this._state.x=e,this._state.y=t,this}radius(e){return this._state.radius=e,this}},mt=class extends B{constructor(e,t,n,i){if(n<0||i<0)throw new RangeError("Ellipse radii must be non-negative");super("ellipse"),this._state.cx=e,this._state.cy=t,this._state.rx=n,this._state.ry=i}position(e,t){return this._state.cx=e,this._state.cy=t,this}radii(e,t){return this._state.rx=e,this._state.ry=t,this}},gt=class extends B{constructor(e,t,n,i){if(n<0||i<0)throw new RangeError("Rectangle dimensions must be non-negative");super("rectangle"),this._state.x=e,this._state.y=t,this._state.width=n,this._state.height=i}position(e,t){return this._state.x=e,this._state.y=t,this}size(e,t){return this._state.width=e,this._state.height=t,this}cornerRadius(e){return this._state.cornerRadius=e,this}},yt=class extends B{constructor(e,t,n){if(n<0)throw new RangeError("Square size must be non-negative");super("square"),this._state.x=e,this._state.y=t,this._state.width=n,this._state.height=n}position(e,t){return this._state.x=e,this._state.y=t,this}size(e){return this._state.width=e,this._state.height=e,this}cornerRadius(e){return this._state.cornerRadius=e,this}},bt=class extends B{constructor(e,t,n,i){super("line"),this._state.x1=e,this._state.y1=t,this._state.x2=n,this._state.y2=i}from(e,t){return this._state.x1=e,this._state.y1=t,this}to(e,t){return this._state.x2=e,this._state.y2=t,this}markerStart(e){return this._state.startEndpoint=e,this}markerEnd(e){return this._state.endEndpoint=e,this}markers(e,t){return this._state.startEndpoint=e,this._state.endEndpoint=t,this}},$t=class extends B{constructor(e,t,n){super("text"),this._state.x=e,this._state.y=t,this._state.text=n}position(e,t){return this._state.x=e,this._state.y=t,this}content(e){return this._state.text=e,this}fontSize(e){return this._state.fontSize=e,this}fontFamily(e){return this._state.fontFamily=e,this}fontWeight(e){return this._state.fontWeight=e,this}fontStyle(e){return this._state.fontStyle=e,this}anchor(e){return this._state.textAnchor=e,this}letterSpacing(e){return this._state.letterSpacing=e,this}lineHeight(e){return this._state.lineHeight=e,this}decoration(e){return this._state.textDecoration=e,this}transform(e){return this._state.textTransform=e,this}textPath(e,t=0){return this._state.isTextPath=!0,this._state.textPathPoints=e,this._state.textPathStartOffset=t,this}textPathOffset(e){return this._state.textPathStartOffset=e,this}textPathSide(e){return this._state.textPathSide=e,this}direction(e){return this._state.textDirection=e,this}unicodeBidi(e){return this._state.unicodeBidi=e,this}dominantBaseline(e){return this._state.dominantBaseline=e,this}writingMode(e){return this._state.writingMode=e,this}wordSpacing(e){return this._state.wordSpacing=e,this}baselineShift(e){return this._state.baselineShift=e,this}inlineSize(e){return this._state.inlineSize=e,this}overflowWrap(e){return this._state.overflowWrap=e,this}whiteSpace(e){return this._state.whiteSpace=e,this}fontVariationSettings(e){return this._state.fontVariationSettings=e,this}charOffsets(e){return this._state.charOffsets=e,this}shapeInsideRef(e){return this._state.shapeInsideRef=e,this}shapePadding(e){return this._state.shapePadding=e,this}richTextData(e){return this._state.richTextData=e,this}},X=class extends B{constructor(e,t,n,i){super(e),this._state.cx=t,this._state.cy=n,this._state.radius=i}position(e,t){return this._state.cx=e,this._state.cy=t,this}radius(e){return this._state.radius=e,this}shiftAngle(e){return this._state.shiftAngle=e,this}cornerRadius(e){return this._state.cornerRadius=e,this}},xt=class extends X{constructor(e,t,n){super("triangle",e,t,n)}},St=class extends X{constructor(e,t,n,i=5){super("ngon",e,t,n),this._state.sides=i}sides(e){return this._state.sides=e,this}},_t=class extends X{constructor(e,t,n){super("star",e,t,n),this._state.arms=5,this._state.innerRadiusPercent=40}arms(e){return this._state.arms=e,this}innerRadius(e){return this._state.innerRadiusPercent=e,this}},kt=class extends X{constructor(e,t,n){super("cross",e,t,n),this._state.armWidthPercent=35}armWidth(e){return this._state.armWidthPercent=e,this}},wt=class extends X{constructor(e,t,n){super("ring",e,t,n),this._state.innerRadiusPercent=60}innerRadius(e){return this._state.innerRadiusPercent=e,this}},Tt=class extends X{constructor(e,t,n){super("spiral",e,t,n),this._state.turns=3,this._state.thicknessPercent=15,this._state.spiralDirection=1}turns(e){return this._state.turns=e,this}thickness(e){return this._state.thicknessPercent=e,this}direction(e){return this._state.spiralDirection=e,this}},Pt=class extends X{constructor(e,t,n){super("gear",e,t,n),this._state.teeth=8,this._state.toothDepthPercent=25}teeth(e){return this._state.teeth=e,this}toothDepth(e){return this._state.toothDepthPercent=e,this}holeRadius(e){return this._state.holeRadiusPercent=e,this}},vt=class extends X{constructor(e,t,n){super("arrow",e,t,n),this._state.headWidthPercent=100,this._state.headLengthPercent=35,this._state.shaftWidthPercent=35}headWidth(e){return this._state.headWidthPercent=e,this}headLength(e){return this._state.headLengthPercent=e,this}shaftWidth(e){return this._state.shaftWidthPercent=e,this}},Mt=class extends B{constructor(e=[]){super("spline"),this._state.splinePoints=[...e],this._state.splineCurveType="cubic",this._state.splineClosed=!1}points(e){return this._state.splinePoints=[...e],this}addPoint(e,t){let n=this._state.splinePoints??[];return n.push({x:e,y:t}),this._state.splinePoints=n,this}curveType(e){return this._state.splineCurveType=e,this}closed(e=!0){return this._state.splineClosed=e,this}tension(e){return this._state.splineTension=e,this}arcParams(e){return this._state.splineArcParams=e,this}markerStart(e){return this._state.startEndpoint=e,this}markerEnd(e){return this._state.endEndpoint=e,this}markers(e,t){return this._state.startEndpoint=e,this._state.endEndpoint=t,this}},Rt=class extends B{constructor(e=[]){super("polyline"),this._state.polylinePoints=[...e],this._state.polylineClosed=!1}points(e){return this._state.polylinePoints=[...e],this}addPoint(e,t){let n=this._state.polylinePoints??[];return n.push({x:e,y:t}),this._state.polylinePoints=n,this}closed(e=!0){return this._state.polylineClosed=e,this}markerStart(e){return this._state.startEndpoint=e,this}markerEnd(e){return this._state.endEndpoint=e,this}markers(e,t){return this._state.startEndpoint=e,this._state.endEndpoint=t,this}},At=class extends B{constructor(e,t,n,i,a){super("image"),this._state.x=e,this._state.y=t,this._state.width=n,this._state.height=i,this._state.href=a}position(e,t){return this._state.x=e,this._state.y=t,this}size(e,t){return this._state.width=e,this._state.height=t,this}src(e){return this._state.href=e,this}preserveAspectRatio(e){return this._state.preserveAspectRatio=e,this}};var be=class{_x1;_y1;_x2;_y2;_stops=[];_spreadMethod="pad";_opacity=1;_id;constructor(e=0,t=0,n=1,i=0){this._x1=e,this._y1=t,this._x2=n,this._y2=i,this._id=T()}stop(e,t,n=1){return this._stops.push({offset:e,color:t,opacity:n}),this}direction(e,t,n,i){return this._x1=e,this._y1=t,this._x2=n,this._y2=i,this}spread(e){return this._spreadMethod=e,this}opacity(e){return this._opacity=e,this}build(){return{type:"linear-gradient",id:this._id,x1:this._x1,y1:this._y1,x2:this._x2,y2:this._y2,stops:[...this._stops],spreadMethod:this._spreadMethod,opacity:this._opacity}}},$e=class{_cx=.5;_cy=.5;_fx=.5;_fy=.5;_r=.5;_ry=.5;_rotation=0;_stops=[];_spreadMethod="pad";_opacity=1;_id;constructor(){this._id=T()}center(e,t){return this._cx=e,this._cy=t,this}focus(e,t){return this._fx=e,this._fy=t,this}radius(e,t){return this._r=e,this._ry=t??e,this}rotation(e){return this._rotation=e,this}stop(e,t,n=1){return this._stops.push({offset:e,color:t,opacity:n}),this}spread(e){return this._spreadMethod=e,this}opacity(e){return this._opacity=e,this}build(){return{type:"radial-gradient",id:this._id,cx:this._cx,cy:this._cy,fx:this._fx,fy:this._fy,r:this._r,ry:this._ry,rotation:this._rotation,stops:[...this._stops],spreadMethod:this._spreadMethod,opacity:this._opacity}}},xe=class{_patternType;_color;_backgroundColor;_scale=1;_rotation=0;_opacity=1;_patternParams;_id;_svgContent;_width;_height;_patternUnits;_patternContentUnits;_patternTransform;_viewBox;_preserveAspectRatio;_x;_y;_customPatternId;constructor(e="stripes",t="#000000",n="#ffffff"){this._patternType=e,this._color=t,this._backgroundColor=n,this._id=T()}scale(e){return this._scale=e,this}rotation(e){return this._rotation=e,this}opacity(e){return this._opacity=e,this}params(e){return this._patternParams=e,this}svgContent(e){return this._svgContent=e,this}size(e,t){return this._width=e,this._height=t,this}patternUnits(e){return this._patternUnits=e,this}patternContentUnits(e){return this._patternContentUnits=e,this}patternTransform(e){return this._patternTransform=e,this}viewBox(e){return this._viewBox=e,this}preserveAspectRatio(e){return this._preserveAspectRatio=e,this}position(e,t){return this._x=e,this._y=t,this}customPatternId(e){return this._customPatternId=e,this}build(){let e,t,n;if(this._svgContent!==void 0)e=this._svgContent,t=this._width??10,n=this._height??10;else{let a=qe(this._patternType,this._scale,this._color,this._backgroundColor,this._patternParams);e=a.svgContent,t=this._width??a.width,n=this._height??a.height}let i={type:"pattern",id:this._id,patternType:this._svgContent!==void 0?"custom":this._patternType,color:this._color,backgroundColor:this._backgroundColor,scale:this._scale,rotation:this._rotation,opacity:this._opacity,svgContent:e,width:t,height:n,patternUnits:this._patternUnits??"userSpaceOnUse",patternParams:this._patternParams,patternTransform:this._patternTransform??(this._rotation?`rotate(${this._rotation})`:void 0)};return this._patternContentUnits&&(i.patternContentUnits=this._patternContentUnits),this._viewBox&&(i.viewBox=this._viewBox),this._preserveAspectRatio&&(i.preserveAspectRatio=this._preserveAspectRatio),this._x!==void 0&&(i.x=this._x),this._y!==void 0&&(i.y=this._y),this._customPatternId&&(i.customPatternId=this._customPatternId),i}};function ki(r=0,e=0,t=1,n=0){return new be(r,e,t,n)}function wi(){return new $e}function Ti(r="stripes",e="#000000",t="#ffffff"){return new xe(r,e,t)}export{vt as Arrow,Wt as BUILTIN_MARKER_ID_MAP,U as CURRENT_SCHEMA_VERSION,ft as Circle,kt as Cross,Nr as DEFAULT_COORDINATE_PRECISION,dt as Document,_e as EASING_CURVES,vi as EVENT_TRIGGER_OPTIONS,It as EasingType,mt as Ellipse,Pt as Gear,At as ImageShape,ir as LIBRARY_EMIT_ORDER,bt as Line,be as LinearGradientBuilder,Ze as MARKER_HEIGHT,ye as MARKER_VIEWBOX,Ke as MARKER_WIDTH,Vr as MAX_COORDINATE_PRECISION,Lt as MIGRATIONS,St as NGon,xe as PatternBuilder,Rt as Polyline,$e as RadialGradientBuilder,gt as Rectangle,wt as Ring,B as ShapeBuilder,Tt as Spiral,Mt as Spline,Et as SplineCurveType,xr as SplinePointType,yt as Square,_t as Star,$t as Text,pt as Timeline,ht as Track,xt as Triangle,ei as collectReferencedLibraryIds,Oe as computeArrowVertices,Ne as computeCloudPath,De as computeCrossVertices,ie as computeDashArray,je as computeGearPath,Bt as computeGearVertices,Ue as computeHeartPath,Be as computeLightningVertices,pe as computePolygonVertices,We as computeRectanglePath,Ve as computeRingPath,Ge as computeSpeechBubbleVertices,ze as computeSpiralPath,He as computeSplinePath,Le as computeStarVertices,Te as createDocument,Er as createShape,ue as createViewbox,O as escXml,Ae as extractVariables,Ye as filterAttr,ct as generateCode,ut as generateCssCode,lt as generateD3Code,T as generateId,qe as generatePatternSvgContent,at as generateReactCode,st as generateSvgCode,ot as generateVueCode,zn as getBuiltInMarkerDefs,Pi as getEasingCubicBezier,zr as getEffectivePrecision,ne as getMarkerDescriptors,ge as getPatternElements,ki as linearGradient,we as migrateSnapshot,ve as parseDocument,Ur as parseVariableArgs,Ti as pattern,wi as radialGradient,nt as renderAnimationElements,q as renderBuiltinMarkerDefs,Ht as renderCircle,Xt as renderEllipse,Un as renderFilterDefs,dr as renderFilterLibraryDef,jt as renderFilterPrimitivesForType,Jt as renderImage,sr as renderLibraryDef,hr as renderLibraryDefs,qt as renderLine,lr as renderLinearGradientLibraryDef,or as renderMarkerLibraryDef,cr as renderPatternLibraryDef,er as renderPolygonShape,Qt as renderPolyline,ur as renderRadialGradientLibraryDef,Yt as renderRectangle,K as renderReferencedLibraryDefs,G as renderShape,Zt as renderSpline,ar as renderSymbolLibraryDef,Kt as renderText,ae as renderToSvg,Ie as roundCoord,Dt as roundNumberString,Ce as roundSerializedShape,Xr as roundSnapshot,Pe as stringifyDocument,Me as substituteString,Re as substituteVariables,le as validateSnapshot,j as verticesToPath};
|
|
14
|
+
}`)}let o=[];for(let u=0;u<s.length;u++){let c=s[u],d=Fr(c,u),p=V(c),m=p.indexOf(" ");m!==-1&&(p=p.slice(0,m)+` class="${d}"`+p.slice(m)),o.push(`${n}${p}`)}let l=[];l.push("<style>");for(let u of a)l.push(u);l.push("</style>"),l.push(""),l.push(`<svg xmlns="http://www.w3.org/2000/svg" width="${t.width}" height="${t.height}" viewBox="0 0 ${t.width} ${t.height}">`);for(let u of o)l.push(u);return l.push("</svg>"),l.push(""),l.join(`
|
|
15
|
+
`)}function bt(r,e){let t=Zi(r,e),n={...e};switch(n.format){case"svg":return ht(t,n);case"react":return ft(t,n);case"vue":return mt(t,n);case"d3":return gt(t,n);case"css":return yt(t,n);default:throw new Error(`Unsupported code format: ${n.format}`)}}function Zi(r,e){return Array.isArray(r)?{shapes:r,viewboxes:[{id:"default",x:0,y:0,width:e.width??800,height:e.height??600}]}:r}var $t=class r{_snapshot;constructor(e={}){let{width:t=800,height:n=600,viewboxId:s}=e,a=ge(0,0,t,n,s);this._snapshot=Ae({viewboxes:[a]})}static fromSnapshot(e){let t=new r;return t._snapshot=JSON.parse(JSON.stringify(e)),t}static fromJSON(e,t){let n=Le(e,t),s=new r;return s._snapshot=n,s}add(e){let t="build"in e&&typeof e.build=="function"?e.build():e;return this._snapshot.shapes.push(t),this}addAll(...e){for(let t of e)this.add(t);return this}remove(e){let t=this._snapshot.shapes.length;return this._snapshot.shapes=this._snapshot.shapes.filter(n=>n.id!==e),this._snapshot.shapes.length<t}get shapes(){return this._snapshot.shapes}findShape(e){return this._snapshot.shapes.find(t=>t.id===e)}size(e,t){return this._snapshot.viewboxes.length>0?(this._snapshot.viewboxes[0].width=e,this._snapshot.viewboxes[0].height=t):this._snapshot.viewboxes=[ge(0,0,e,t)],this}get width(){return this._snapshot.viewboxes[0]?.width??800}get height(){return this._snapshot.viewboxes[0]?.height??600}title(e){return this._ensureMetadata(),this._snapshot.documentMetadata.title=e,this}description(e){return this._ensureMetadata(),this._snapshot.documentMetadata.description=e,this}author(e){return this._ensureMetadata(),this._snapshot.documentMetadata.author=e,this}keywords(...e){return this._ensureMetadata(),this._snapshot.documentMetadata.keywords=e,this}license(e,t){return this._ensureMetadata(),this._snapshot.documentMetadata.license=e,t!==void 0&&(this._snapshot.documentMetadata.licenseUrl=t),this}language(e){return this._ensureMetadata(),this._snapshot.documentMetadata.language=e,this}customMetadata(e){return this._ensureMetadata(),this._snapshot.documentMetadata.customMetadata={...this._snapshot.documentMetadata.customMetadata,...e},this}get meta(){return this._snapshot.documentMetadata}defineSymbol(e,t,n){this._snapshot.symbols||(this._snapshot.symbols=[]);let s=v(),a=t.map(l=>"build"in l&&typeof l.build=="function"?l.build():l),o={kind:"symbol",id:s,name:e,viewBox:n?.viewBox??"0 0 100 100",shapes:a};return n?.groups&&(o.groups=n.groups),n?.thumbnail&&(o.thumbnail=n.thumbnail),this._snapshot.symbols.push(o),s}placeSymbolInstance(e,t,n,s,a){let o={id:v(),type:"symbol-instance",state:{symbolId:e,x:t,y:n,width:s??100,height:a??100}};return this._snapshot.shapes.push(o),this}removeSymbol(e){if(!this._snapshot.symbols)return!1;let t=this._snapshot.symbols.length;return this._snapshot.symbols=this._snapshot.symbols.filter(n=>n.id!==e),this._snapshot.symbols.length<t}get symbols(){return this._snapshot.symbols??[]}addClipGroup(e,t,n){this._snapshot.clipMaskGroups||(this._snapshot.clipMaskGroups=[]);let s=v(),a={id:s,type:"clip",clipShapeIds:e,contentShapeIds:t,parentId:null};return n?.clipPathUnits&&(a.clipPathUnits=n.clipPathUnits),n?.rawDefinition&&(a.rawDefinition=n.rawDefinition),this._snapshot.clipMaskGroups.push(a),s}addMaskGroup(e,t,n){this._snapshot.clipMaskGroups||(this._snapshot.clipMaskGroups=[]);let s=v(),a={id:s,type:"mask",clipShapeIds:e,contentShapeIds:t,parentId:null};return n?.maskUnits&&(a.maskUnits=n.maskUnits),n?.maskContentUnits&&(a.maskContentUnits=n.maskContentUnits),n?.maskBounds&&(a.maskBounds=n.maskBounds),n?.maskType&&(a.maskType=n.maskType),n?.rawDefinition&&(a.rawDefinition=n.rawDefinition),this._snapshot.clipMaskGroups.push(a),s}removeClipMaskGroup(e){if(!this._snapshot.clipMaskGroups)return!1;let t=this._snapshot.clipMaskGroups.length;return this._snapshot.clipMaskGroups=this._snapshot.clipMaskGroups.filter(n=>n.id!==e),this._snapshot.clipMaskGroups.length<t}addGuide(e,t,n){this._snapshot.guides||(this._snapshot.guides=[]);let s=v(),a={id:s,orientation:e,position:t,controlPointOffset:0};return n?.color&&(a.color=n.color),n?.opacity!==void 0&&(a.opacity=n.opacity),this._snapshot.guides.push(a),s}removeGuide(e){if(!this._snapshot.guides)return!1;let t=this._snapshot.guides.length;return this._snapshot.guides=this._snapshot.guides.filter(n=>n.id!==e),this._snapshot.guides.length<t}clearGuides(){return this._snapshot.guides=[],this}get guides(){return this._snapshot.guides??[]}addMeasurement(e,t,n){this._snapshot.measurements||(this._snapshot.measurements=[]);let s=v(),a={id:s,type:e,points:t,visible:n?.visible??!0,snapDivisions:n?.snapDivisions??1};return n?.color&&(a.color=n.color),n?.opacity!==void 0&&(a.opacity=n.opacity),this._snapshot.measurements.push(a),s}removeMeasurement(e){if(!this._snapshot.measurements)return!1;let t=this._snapshot.measurements.length;return this._snapshot.measurements=this._snapshot.measurements.filter(n=>n.id!==e),this._snapshot.measurements.length<t}get measurements(){return this._snapshot.measurements??[]}addCustomPattern(e,t,n,s){this._snapshot.customPatterns||(this._snapshot.customPatterns=[]);let a=v();return this._snapshot.customPatterns.push({id:a,name:e,svgContent:t,width:n,height:s}),a}removeCustomPattern(e){if(!this._snapshot.customPatterns)return!1;let t=this._snapshot.customPatterns.length;return this._snapshot.customPatterns=this._snapshot.customPatterns.filter(n=>n.id!==e),this._snapshot.customPatterns.length<t}get customPatterns(){return this._snapshot.customPatterns??[]}addGroup(e,t){this._snapshot.groups||(this._snapshot.groups=[]);let n=e??v();return this._snapshot.groups.push({id:n,parentId:t??null}),n}removeGroup(e){if(!this._snapshot.groups)return!1;let t=this._snapshot.groups.length;this._snapshot.groups=this._snapshot.groups.filter(n=>n.id!==e);for(let n of this._snapshot.shapes)n.state.groupId===e&&delete n.state.groupId;return this._snapshot.groups.length<t}moveToGroup(e,t){let n=this._snapshot.shapes.find(s=>s.id===e);return n&&(n.state.groupId=t),this}removeFromGroup(e){let t=this._snapshot.shapes.find(n=>n.id===e);return t&&delete t.state.groupId,this}bringToFront(e){let t=this._snapshot.shapes.findIndex(n=>n.id===e);if(t>=0){let[n]=this._snapshot.shapes.splice(t,1);this._snapshot.shapes.push(n)}return this}sendToBack(e){let t=this._snapshot.shapes.findIndex(n=>n.id===e);if(t>=0){let[n]=this._snapshot.shapes.splice(t,1);this._snapshot.shapes.unshift(n)}return this}reorder(e,t){let n=this._snapshot.shapes.findIndex(s=>s.id===e);if(n>=0){let[s]=this._snapshot.shapes.splice(n,1),a=Math.max(0,Math.min(t,this._snapshot.shapes.length));this._snapshot.shapes.splice(a,0,s)}return this}defineVariable(e,t,n,s){this._snapshot.templateVariables||(this._snapshot.templateVariables=[]);let a=this._snapshot.templateVariables.find(o=>o.name===e);if(a)a.type=t,a.defaultValue=n,s?.label!==void 0&&(a.label=s.label),s?.description!==void 0&&(a.description=s.description);else{let o={name:e,type:t,defaultValue:n};s?.label!==void 0&&(o.label=s.label),s?.description!==void 0&&(o.description=s.description),this._snapshot.templateVariables.push(o)}return this}removeVariable(e){return this._snapshot.templateVariables&&(this._snapshot.templateVariables=this._snapshot.templateVariables.filter(t=>t.name!==e)),this}get variables(){return this._snapshot.templateVariables??[]}inspectVariables(){return Be(this._snapshot)}setTimeline(e){return"build"in e&&typeof e.build=="function"?this._snapshot.animationTimeline=e.build():this._snapshot.animationTimeline=e,this}clearTimeline(){return delete this._snapshot.animationTimeline,this}get timeline(){return this._snapshot.animationTimeline}toSVG(e){let{variables:t,...n}=e??{},s=De(this._snapshot,t);return pe(s,n)}toJSON(e){return Ie(this._snapshot,e)}toSnapshot(){return JSON.parse(JSON.stringify(this._snapshot))}toCode(e,t){return bt(this._snapshot,{...t,format:e})}_ensureMetadata(){this._snapshot.documentMetadata||(this._snapshot.documentMetadata={title:"",description:"",author:"",keywords:[],license:"",licenseUrl:"",language:"en",customMetadata:{}})}};var xt=class{_track;constructor(e,t){this._track={id:v(),shapeId:e,property:t,keyframes:[],enabled:!0,locked:!1}}id(e){return this._track.id=e,this}keyframe(e,t,n="linear"){return this._track.keyframes.push({time:e,value:t,easing:n}),this}keyframeBezier(e,t,n){return this._track.keyframes.push({time:e,value:t,easing:"custom-bezier",customBezier:n}),this}keyframeLinear(e,t,n){return this._track.keyframes.push({time:e,value:t,easing:"linear-function",linearPoints:n}),this}keyframes(...e){return this._track.keyframes.push(...e),this}disabled(){return this._track.enabled=!1,this}locked(){return this._track.locked=!0,this}motionPath(e){return this._track.motionPath=e,this}motionPathRef(e,t="trackShape"){return this._track.motionPathRef={shapeId:e,mode:t},this}beginTrigger(e,t){return this._track.beginTrigger={type:e,value:t},this}endTrigger(e,t){return this._track.endTrigger={type:e,value:t},this}cycleDuration(e){return this._track.cycleDuration=e,this}cycleRepeats(e){return this._track.cycleRepeats=e,this}infinite(){return this._track.cycleInfinite=!0,this}cycle(e){return this._track.cycleBehavior=e,this}transformOrigin(e,t){return this._track.transformOrigin={x:e,y:t},this}motionRotate(e){return this._track.motionRotate=e,this}additive(e){return this._track.additive=e,this}build(){let e=[...this._track.keyframes].sort((t,n)=>t.time-n.time);return{...this._track,keyframes:e}}},St=class{_duration;_loop=!1;_playbackSpeed=1;_tracks=[];constructor(e){this._duration=e}loop(e=!0){return this._loop=e,this}speed(e){return this._playbackSpeed=e,this}duration(e){return this._duration=e,this}addTrack(e){return this._tracks.push(e),this}addTracks(...e){return this._tracks.push(...e),this}buildTimeline(){return{duration:this._duration,loop:this._loop,playbackSpeed:this._playbackSpeed,tracks:this._tracks.map(e=>e.build())}}build(){let e=this.buildTimeline();return{duration:e.duration,loop:e.loop,playbackSpeed:e.playbackSpeed,tracks:e.tracks.map(t=>({id:t.id,shapeId:t.shapeId,property:t.property,enabled:t.enabled,locked:t.locked||void 0,motionPath:t.motionPath,motionPathRef:t.motionPathRef,beginTrigger:t.beginTrigger,endTrigger:t.endTrigger,cycleDuration:t.cycleDuration,cycleRepeats:t.cycleRepeats,cycleInfinite:t.cycleInfinite,cycleBehavior:t.cycleBehavior,transformOrigin:t.transformOrigin,motionRotate:t.motionRotate,additive:t.additive,keyframes:t.keyframes.map(n=>({time:n.time,value:n.value,easing:n.easing,...n.customBezier?{customBezier:n.customBezier}:{},...n.linearPoints?{linearPoints:n.linearPoints}:{}}))}))}}};var z=class{_id;_type;_state={};constructor(e,t){this._type=e,this._id=t??v()}id(e){return this._id=e,this}locked(e=!0){return this._state.locked=e,this}visible(e=!0){return this._state.visible=e,this}displayMode(e){return this._state.displayMode=e,this}motionOnly(){return this._state.displayMode="motionOnly",this}fill(e,t){return this._state.fillColor=e,this._state.fillType="solid",t!==void 0&&(this._state.fillOpacity=t),this}noFill(){return this._state.fillType="none",this}fillGradient(e){let t="build"in e?e.build():e;return this._state.fillType=t.type,this._state.fillGradient=t,this}fillPattern(e){let t="build"in e?e.build():e;return this._state.fillType="pattern",this._state.fillGradient=t,this}fillOpacity(e){return this._state.fillOpacity=e,this}fillRule(e){return this._state.fillRule=e,this}stroke(e,t){return this._state.borderColor=e,t!==void 0&&(this._state.borderWidth=t),this}noStroke(){return this._state.borderColor="none",this._state.borderWidth=0,this}strokeWidth(e){return this._state.borderWidth=e,this}strokeOpacity(e){return this._state.strokeOpacity=e,this}strokeGradient(e){let t="build"in e?e.build():e;return this._state.strokeType=t.type,this._state.strokeGradient=t,this}strokePattern(e){let t="build"in e?e.build():e;return this._state.strokeType="pattern",this._state.strokeGradient=t,this}strokeLinejoin(e){return this._state.strokeLinejoin=e,this}strokeLinecap(e){return this._state.strokeLinecap=e,this}strokeMiterlimit(e){return this._state.strokeMiterlimit=e,this}dashOffset(e){return this._state.dashOffset=e,this}strokeDasharray(e){return this._state.strokeDasharray=e,this}dash(e,t,n){return this._state.lineStyle=e,e==="custom"&&(t!==void 0&&(this._state.dashLength=t),n!==void 0&&(this._state.gapLength=n)),this}opacity(e){return this._state.opacity=e,this}rotate(e){return this._state.rotation=e,this}skew(e,t){return this._state.skewX=e,this._state.skewY=t,this}scale(e,t){return this._state.scaleX=e,this._state.scaleY=t??e,this}pivot(e,t){return this._state.customPivot={x:e,y:t},this}filter(...e){let t=this._state.filters??[];return this._state.filters=[...t,...e],this}dropShadow(e={}){let t={id:`drop-shadow-${v()}`,type:"drop-shadow",enabled:!0,offsetX:e.offsetX??4,offsetY:e.offsetY??4,blurRadius:e.blurRadius??8,spread:e.spread??0,color:e.color??"#000000",opacity:e.opacity??.3};return this.filter(t)}innerShadow(e={}){let t={id:`inner-shadow-${v()}`,type:"inner-shadow",enabled:!0,offsetX:e.offsetX??2,offsetY:e.offsetY??2,blurRadius:e.blurRadius??4,choke:e.choke??0,color:e.color??"#000000",opacity:e.opacity??.5};return this.filter(t)}blur(e,t,n){let s=e??4,a=t??s,o={id:`gaussian-blur-${v()}`,type:"gaussian-blur",enabled:!0,blurX:s,blurY:a,linked:s===a,quality:n?.quality??"normal"};return this.filter(o)}glow(e={}){let t={id:`glow-${v()}`,type:"glow",enabled:!0,color:e.color??"#ffffff",radius:e.radius??10,intensity:e.intensity??.8};return this.filter(t)}innerGlow(e={}){let t={id:`inner-glow-${v()}`,type:"inner-glow",enabled:!0,color:e.color??"#ffffff",radius:e.radius??10,intensity:e.intensity??.8};return this.filter(t)}grayscale(e=1){let t={id:`grayscale-${v()}`,type:"grayscale",enabled:!0,amount:e};return this.filter(t)}sepia(e=1){let t={id:`sepia-${v()}`,type:"sepia",enabled:!0,amount:e};return this.filter(t)}outline(e={}){return this.filter({id:`outline-${v()}`,type:"outline",enabled:!0,width:e.width??3,color:e.color??"#000000",opacity:e.opacity??1,position:e.position??"outside"})}motionBlur(e={}){let t={id:`motion-blur-${v()}`,type:"motion-blur",enabled:!0,distance:e.distance??10,angle:e.angle??0,quality:e.quality??"normal"};return this.filter(t)}pointLight(e={}){let t={id:`point-light-${v()}`,type:"point-light",enabled:!0,x:e.x??100,y:e.y??100,z:e.z??200,color:e.color??"#ffffff",surfaceScale:e.surfaceScale??5,diffuseConstant:e.diffuseConstant??1,specularConstant:e.specularConstant??1,specularExponent:e.specularExponent??20};return this.filter(t)}spotLight(e={}){let t={id:`spot-light-${v()}`,type:"spot-light",enabled:!0,x:e.x??100,y:e.y??0,z:e.z??200,pointsAtX:e.pointsAtX??100,pointsAtY:e.pointsAtY??100,pointsAtZ:e.pointsAtZ??0,coneAngle:e.coneAngle??30,color:e.color??"#ffffff",surfaceScale:e.surfaceScale??5,specularConstant:e.specularConstant??1,specularExponent:e.specularExponent??20};return this.filter(t)}sharpen(e=1){let t={id:`sharpen-${v()}`,type:"sharpen",enabled:!0,amount:e};return this.filter(t)}pixelate(e=8){let t={id:`pixelate-${v()}`,type:"pixelate",enabled:!0,blockSize:e};return this.filter(t)}warp(e={}){let t={id:`warp-${v()}`,type:"warp",enabled:!0,scale:e.scale??10,frequency:e.frequency??.02,octaves:e.octaves??1,warpType:e.warpType??"turbulence"};return this.filter(t)}morphology(e={}){let t=e.radiusX??2,n=e.radiusY??t,s={id:`morphology-${v()}`,type:"morphology",enabled:!0,operator:e.operator??"dilate",radiusX:t,radiusY:n,linked:e.linked??t===n};return this.filter(s)}contouring(e={}){if((e.mode??"discrete")==="table"){let s={id:`contouring-table-${v()}`,type:"contouring-table",enabled:!0,levels:e.levels??4,contrast:e.contrast??1};return this.filter(s)}let n={id:`contouring-discrete-${v()}`,type:"contouring-discrete",enabled:!0,levels:e.levels??4};return this.filter(n)}roundEdges(e=4){let t={id:`round-edges-${v()}`,type:"round-edges",enabled:!0,radius:e};return this.filter(t)}channelPainter(e={}){let t={id:`channel-painter-${v()}`,type:"channel-painter",enabled:!0,red:e.red??1,green:e.green??1,blue:e.blue??1};return this.filter(t)}brightness(e=1){let t={id:`brightness-${v()}`,type:"brightness",enabled:!0,amount:e};return this.filter(t)}contrast(e=1){let t={id:`contrast-${v()}`,type:"contrast",enabled:!0,amount:e};return this.filter(t)}filterOpacity(e=1){let t={id:`opacity-${v()}`,type:"opacity",enabled:!0,amount:e};return this.filter(t)}invert(e=1){let t={id:`invert-${v()}`,type:"invert",enabled:!0,amount:e};return this.filter(t)}hueRotate(e=0){let t={id:`hue-rotate-${v()}`,type:"hue-rotate",enabled:!0,angle:e};return this.filter(t)}saturate(e=1){let t={id:`saturate-${v()}`,type:"saturate",enabled:!0,amount:e};return this.filter(t)}blackAndWhite(e=.5){let t={id:`black-and-white-${v()}`,type:"black-and-white",enabled:!0,threshold:e};return this.filter(t)}duotone(e={}){let t={id:`duotone-${v()}`,type:"duotone",enabled:!0,shadowColor:e.shadowColor??"#000000",highlightColor:e.highlightColor??"#ffffff"};return this.filter(t)}xray(e=1){let t={id:`xray-${v()}`,type:"xray",enabled:!0,intensity:e};return this.filter(t)}noise(e={}){let t={id:`noise-${v()}`,type:"noise",enabled:!0,amount:e.amount??.3,scale:e.scale??1};return this.filter(t)}emboss(e={}){let t={id:`emboss-${v()}`,type:"emboss",enabled:!0,strength:e.strength??1,angle:e.angle??135};return this.filter(t)}filmGrain(e={}){let t={id:`film-grain-${v()}`,type:"film-grain",enabled:!0,amount:e.amount??.3,size:e.size??1};return this.filter(t)}watercolor(e={}){let t={id:`watercolor-${v()}`,type:"watercolor",enabled:!0,wetness:e.wetness??.5,turbulence:e.turbulence??.5};return this.filter(t)}gouache(e={}){let t={id:`gouache-${v()}`,type:"gouache",enabled:!0,thickness:e.thickness??.5,texture:e.texture??.5};return this.filter(t)}inkBlot(e={}){let t={id:`ink-blot-${v()}`,type:"ink-blot",enabled:!0,spread:e.spread??.5,edges:e.edges??.5};return this.filter(t)}crumpledPlastic(e={}){let t={id:`crumpled-plastic-${v()}`,type:"crumpled-plastic",enabled:!0,wrinkles:e.wrinkles??.5,shine:e.shine??.5};return this.filter(t)}riddled(e={}){let t={id:`riddled-${v()}`,type:"riddled",enabled:!0,density:e.density??.5,size:e.size??1};return this.filter(t)}cssClipPath(e){return this._state.cssClipPath=e,this}cssMaskProperties(e){return this._state.cssMaskProperties=e,this}metadata(e){return this._state.metadata={...this._state.metadata,...e},this}group(e){return this._state.groupId=e,this}build(){return{id:this._id,type:this._type,state:{...this._state}}}},kt=class extends z{constructor(e,t,n){if(n<0)throw new RangeError("Circle radius must be non-negative");super("circle"),this._state.x=e,this._state.y=t,this._state.radius=n}position(e,t){return this._state.x=e,this._state.y=t,this}radius(e){return this._state.radius=e,this}},_t=class extends z{constructor(e,t,n,s){if(n<0||s<0)throw new RangeError("Ellipse radii must be non-negative");super("ellipse"),this._state.cx=e,this._state.cy=t,this._state.rx=n,this._state.ry=s}position(e,t){return this._state.cx=e,this._state.cy=t,this}radii(e,t){return this._state.rx=e,this._state.ry=t,this}},vt=class extends z{constructor(e,t,n,s){if(n<0||s<0)throw new RangeError("Rectangle dimensions must be non-negative");super("rectangle"),this._state.x=e,this._state.y=t,this._state.width=n,this._state.height=s}position(e,t){return this._state.x=e,this._state.y=t,this}size(e,t){return this._state.width=e,this._state.height=t,this}cornerRadius(e){return this._state.cornerRadius=e,this}},wt=class extends z{constructor(e,t,n){if(n<0)throw new RangeError("Square size must be non-negative");super("square"),this._state.x=e,this._state.y=t,this._state.width=n,this._state.height=n}position(e,t){return this._state.x=e,this._state.y=t,this}size(e){return this._state.width=e,this._state.height=e,this}cornerRadius(e){return this._state.cornerRadius=e,this}},Pt=class extends z{constructor(e,t,n,s){super("line"),this._state.x1=e,this._state.y1=t,this._state.x2=n,this._state.y2=s}from(e,t){return this._state.x1=e,this._state.y1=t,this}to(e,t){return this._state.x2=e,this._state.y2=t,this}markerStart(e){return this._state.startEndpoint=e,this}markerEnd(e){return this._state.endEndpoint=e,this}markers(e,t){return this._state.startEndpoint=e,this._state.endEndpoint=t,this}},Tt=class extends z{constructor(e,t,n){super("text"),this._state.x=e,this._state.y=t,this._state.text=n}position(e,t){return this._state.x=e,this._state.y=t,this}content(e){return this._state.text=e,this}fontSize(e){return this._state.fontSize=e,this}fontFamily(e){return this._state.fontFamily=e,this}fontWeight(e){return this._state.fontWeight=e,this}fontStyle(e){return this._state.fontStyle=e,this}anchor(e){return this._state.textAnchor=e,this}letterSpacing(e){return this._state.letterSpacing=e,this}lineHeight(e){return this._state.lineHeight=e,this}decoration(e){return this._state.textDecoration=e,this}transform(e){return this._state.textTransform=e,this}textPath(e,t=0){return this._state.isTextPath=!0,this._state.textPathPoints=e,this._state.textPathStartOffset=t,this}textPathOffset(e){return this._state.textPathStartOffset=e,this}textPathSide(e){return this._state.textPathSide=e,this}direction(e){return this._state.textDirection=e,this}unicodeBidi(e){return this._state.unicodeBidi=e,this}dominantBaseline(e){return this._state.dominantBaseline=e,this}writingMode(e){return this._state.writingMode=e,this}wordSpacing(e){return this._state.wordSpacing=e,this}baselineShift(e){return this._state.baselineShift=e,this}inlineSize(e){return this._state.inlineSize=e,this}overflowWrap(e){return this._state.overflowWrap=e,this}whiteSpace(e){return this._state.whiteSpace=e,this}fontVariationSettings(e){return this._state.fontVariationSettings=e,this}charOffsets(e){return this._state.charOffsets=e,this}shapeInsideRef(e){return this._state.shapeInsideRef=e,this}shapePadding(e){return this._state.shapePadding=e,this}richTextData(e){return this._state.richTextData=e,this}},J=class extends z{constructor(e,t,n,s){super(e),this._state.cx=t,this._state.cy=n,this._state.radius=s}position(e,t){return this._state.cx=e,this._state.cy=t,this}radius(e){return this._state.radius=e,this}shiftAngle(e){return this._state.shiftAngle=e,this}cornerRadius(e){return this._state.cornerRadius=e,this}},Ft=class extends J{constructor(e,t,n){super("triangle",e,t,n)}},Mt=class extends J{constructor(e,t,n,s=5){super("ngon",e,t,n),this._state.sides=s}sides(e){return this._state.sides=e,this}},Ct=class extends J{constructor(e,t,n){super("star",e,t,n),this._state.arms=5,this._state.innerRadiusPercent=40}arms(e){return this._state.arms=e,this}innerRadius(e){return this._state.innerRadiusPercent=e,this}},Rt=class extends J{constructor(e,t,n){super("cross",e,t,n),this._state.armWidthPercent=35}armWidth(e){return this._state.armWidthPercent=e,this}},At=class extends J{constructor(e,t,n){super("ring",e,t,n),this._state.innerRadiusPercent=60}innerRadius(e){return this._state.innerRadiusPercent=e,this}},It=class extends J{constructor(e,t,n){super("spiral",e,t,n),this._state.turns=3,this._state.thicknessPercent=15,this._state.spiralDirection=1}turns(e){return this._state.turns=e,this}thickness(e){return this._state.thicknessPercent=e,this}direction(e){return this._state.spiralDirection=e,this}},Lt=class extends J{constructor(e,t,n){super("gear",e,t,n),this._state.teeth=8,this._state.toothDepthPercent=25}teeth(e){return this._state.teeth=e,this}toothDepth(e){return this._state.toothDepthPercent=e,this}holeRadius(e){return this._state.holeRadiusPercent=e,this}},Et=class extends J{constructor(e,t,n){super("arrow",e,t,n),this._state.headWidthPercent=100,this._state.headLengthPercent=35,this._state.shaftWidthPercent=35}headWidth(e){return this._state.headWidthPercent=e,this}headLength(e){return this._state.headLengthPercent=e,this}shaftWidth(e){return this._state.shaftWidthPercent=e,this}},Dt=class extends z{constructor(e=[]){super("path"),this._state.pathPoints=[...e],this._state.pathCurveType="cubic",this._state.pathClosed=!1}points(e){return this._state.pathPoints=[...e],this}addPoint(e,t){let n=this._state.pathPoints??[];return n.push({x:e,y:t}),this._state.pathPoints=n,this}curveType(e){return this._state.pathCurveType=e,this}closed(e=!0){return this._state.pathClosed=e,this}tension(e){return this._state.pathTension=e,this}arcParams(e){return this._state.pathArcParams=e,this}markerStart(e){return this._state.startEndpoint=e,this}markerEnd(e){return this._state.endEndpoint=e,this}markers(e,t){return this._state.startEndpoint=e,this._state.endEndpoint=t,this}},Bt=class extends z{constructor(e=[]){super("polyline"),this._state.polylinePoints=[...e],this._state.polylineClosed=!1}points(e){return this._state.polylinePoints=[...e],this}addPoint(e,t){let n=this._state.polylinePoints??[];return n.push({x:e,y:t}),this._state.polylinePoints=n,this}closed(e=!0){return this._state.polylineClosed=e,this}markerStart(e){return this._state.startEndpoint=e,this}markerEnd(e){return this._state.endEndpoint=e,this}markers(e,t){return this._state.startEndpoint=e,this._state.endEndpoint=t,this}},Ot=class extends z{constructor(e,t,n,s,a){super("image"),this._state.x=e,this._state.y=t,this._state.width=n,this._state.height=s,this._state.href=a}position(e,t){return this._state.x=e,this._state.y=t,this}size(e,t){return this._state.width=e,this._state.height=t,this}src(e){return this._state.href=e,this}preserveAspectRatio(e){return this._state.preserveAspectRatio=e,this}};var Pe=class{_x1;_y1;_x2;_y2;_stops=[];_spreadMethod="pad";_opacity=1;_id;constructor(e=0,t=0,n=1,s=0){this._x1=e,this._y1=t,this._x2=n,this._y2=s,this._id=v()}stop(e,t,n=1){return this._stops.push({offset:e,color:t,opacity:n}),this}direction(e,t,n,s){return this._x1=e,this._y1=t,this._x2=n,this._y2=s,this}spread(e){return this._spreadMethod=e,this}opacity(e){return this._opacity=e,this}build(){return{type:"linear-gradient",id:this._id,x1:this._x1,y1:this._y1,x2:this._x2,y2:this._y2,stops:[...this._stops],spreadMethod:this._spreadMethod,opacity:this._opacity}}},Te=class{_cx=.5;_cy=.5;_fx=.5;_fy=.5;_r=.5;_ry=.5;_rotation=0;_stops=[];_spreadMethod="pad";_opacity=1;_id;constructor(){this._id=v()}center(e,t){return this._cx=e,this._cy=t,this}focus(e,t){return this._fx=e,this._fy=t,this}radius(e,t){return this._r=e,this._ry=t??e,this}rotation(e){return this._rotation=e,this}stop(e,t,n=1){return this._stops.push({offset:e,color:t,opacity:n}),this}spread(e){return this._spreadMethod=e,this}opacity(e){return this._opacity=e,this}build(){return{type:"radial-gradient",id:this._id,cx:this._cx,cy:this._cy,fx:this._fx,fy:this._fy,r:this._r,ry:this._ry,rotation:this._rotation,stops:[...this._stops],spreadMethod:this._spreadMethod,opacity:this._opacity}}},Fe=class{_patternType;_color;_backgroundColor;_scale=1;_rotation=0;_opacity=1;_patternParams;_id;_svgContent;_width;_height;_patternUnits;_patternContentUnits;_patternTransform;_viewBox;_preserveAspectRatio;_x;_y;_customPatternId;constructor(e="stripes",t="#000000",n="#ffffff"){this._patternType=e,this._color=t,this._backgroundColor=n,this._id=v()}scale(e){return this._scale=e,this}rotation(e){return this._rotation=e,this}opacity(e){return this._opacity=e,this}params(e){return this._patternParams=e,this}svgContent(e){return this._svgContent=e,this}size(e,t){return this._width=e,this._height=t,this}patternUnits(e){return this._patternUnits=e,this}patternContentUnits(e){return this._patternContentUnits=e,this}patternTransform(e){return this._patternTransform=e,this}viewBox(e){return this._viewBox=e,this}preserveAspectRatio(e){return this._preserveAspectRatio=e,this}position(e,t){return this._x=e,this._y=t,this}customPatternId(e){return this._customPatternId=e,this}build(){let e,t,n;if(this._svgContent!==void 0)e=this._svgContent,t=this._width??10,n=this._height??10;else{let a=nt(this._patternType,this._scale,this._color,this._backgroundColor,this._patternParams);e=a.svgContent,t=this._width??a.width,n=this._height??a.height}let s={type:"pattern",id:this._id,patternType:this._svgContent!==void 0?"custom":this._patternType,color:this._color,backgroundColor:this._backgroundColor,scale:this._scale,rotation:this._rotation,opacity:this._opacity,svgContent:e,width:t,height:n,patternUnits:this._patternUnits??"userSpaceOnUse",patternParams:this._patternParams,patternTransform:this._patternTransform??(this._rotation?`rotate(${this._rotation})`:void 0)};return this._patternContentUnits&&(s.patternContentUnits=this._patternContentUnits),this._viewBox&&(s.viewBox=this._viewBox),this._preserveAspectRatio&&(s.preserveAspectRatio=this._preserveAspectRatio),this._x!==void 0&&(s.x=this._x),this._y!==void 0&&(s.y=this._y),this._customPatternId&&(s.customPatternId=this._customPatternId),s}};function Ki(r=0,e=0,t=1,n=0){return new Pe(r,e,t,n)}function Qi(){return new Te}function Ji(r="stripes",e="#000000",t="#ffffff"){return new Fe(r,e,t)}export{Et as Arrow,Qt as BUILTIN_MARKER_ID_MAP,j as CURRENT_SCHEMA_VERSION,kt as Circle,Rt as Cross,Zr as DEFAULT_COORDINATE_PRECISION,$t as Document,Me as EASING_CURVES,ts as EVENT_TRIGGER_OPTIONS,Gt as EasingType,_t as Ellipse,Lt as Gear,Ot as ImageShape,fr as LIBRARY_EMIT_ORDER,Pt as Line,Pe as LinearGradientBuilder,st as MARKER_HEIGHT,we as MARKER_VIEWBOX,it as MARKER_WIDTH,Kr as MAX_COORDINATE_PRECISION,Vt as MIGRATIONS,Mt as NGon,Dt as Path,Ut as PathCurveType,Mr as PathPointType,Fe as PatternBuilder,Bt as Polyline,Te as RadialGradientBuilder,vt as Rectangle,At as Ring,z as ShapeBuilder,It as Spiral,wt as Square,Ct as Star,Tt as Text,St as Timeline,xt as Track,Ft as Triangle,Fi as collectReferencedLibraryIds,je as computeArrowVertices,Ye as computeCloudPath,ze as computeCrossVertices,ce as computeDashArray,Ke as computeGearPath,jt as computeGearVertices,Xe as computeHeartPath,He as computeLightningVertices,xe as computePolygonVertices,Qe as computeRectanglePath,qe as computeRingPath,We as computeSpeechBubbleVertices,Ze as computeSpiralPath,Je as computeSplinePath,Ve as computeStarVertices,Ae as createDocument,Vr as createShape,ge as createViewbox,is as defaultVariableMode,B as escXml,Be as extractVariables,rt as filterAttr,bt as generateCode,yt as generateCssCode,gt as generateD3Code,v as generateId,nt as generatePatternSvgContent,ft as generateReactCode,ht as generateSvgCode,mt as generateVueCode,mi as getBuiltInMarkerDefs,es as getEasingCubicBezier,Qr as getEffectivePrecision,le as getMarkerDescriptors,ve as getPatternElements,Ki as linearGradient,Re as migrateSnapshot,Le as parseDocument,qr as parseVariableArgs,Ji as pattern,Qi as radialGradient,dt as renderAnimationElements,ee as renderBuiltinMarkerDefs,rr as renderCircle,nr as renderEllipse,pi as renderFilterDefs,Sr as renderFilterLibraryDef,et as renderFilterPrimitive,Kt as renderFilterPrimitivesForType,ur as renderImage,mr as renderLibraryDef,kr as renderLibraryDefs,sr as renderLine,br as renderLinearGradientLibraryDef,yr as renderMarkerLibraryDef,xr as renderPatternLibraryDef,cr as renderPolygonShape,lr as renderPolyline,$r as renderRadialGradientLibraryDef,ir as renderRectangle,te as renderReferencedLibraryDefs,V as renderShape,or as renderSpline,Zt as renderSvgPrimitiveChainFilter,gr as renderSymbolLibraryDef,ar as renderText,pe as renderToSvg,Ge as roundCoord,zt as roundNumberString,Oe as roundSerializedShape,rn as roundSnapshot,Ie as stringifyDocument,Ee as substituteString,De as substituteVariables,me as validateSnapshot,Z as verticesToPath};
|