Socket
Socket
Sign inDemoInstall

culori

Package Overview
Dependencies
Maintainers
3
Versions
256
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

culori - npm Package Compare versions

Comparing version 2.1.1 to 3.0.0-alpha.0

src/hsl/parseHslLegacy.js

5

bundled/culori.min.js

@@ -1,1 +0,4 @@

var culori=(()=>{var yr=Object.defineProperty;var N0=Object.getOwnPropertyDescriptor;var Y0=Object.getOwnPropertyNames;var B0=Object.prototype.hasOwnProperty;var Z0=(e,t)=>{for(var r in t)yr(e,r,{get:t[r],enumerable:!0})},G0=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Y0(t))!B0.call(e,n)&&n!==r&&yr(e,n,{get:()=>t[n],enumerable:!(o=N0(t,n))||o.enumerable});return e};var F0=e=>G0(yr({},"__esModule",{value:!0}),e);var Tl={};Z0(Tl,{a98:()=>Zf,average:()=>Fo,averageAngle:()=>_,averageNumber:()=>Hr,blend:()=>l0,clampChroma:()=>L0,clampRgb:()=>k0,colorsNamed:()=>Ot,convertA98ToXyz65:()=>at,convertCubehelixToRgb:()=>Nt,convertDlchToLab65:()=>ye,convertHsiToRgb:()=>it,convertHslToRgb:()=>st,convertHsvToRgb:()=>ke,convertHwbToRgb:()=>ct,convertJabToJch:()=>bt,convertJabToRgb:()=>Be,convertJabToXyz65:()=>Ne,convertJchToJab:()=>xt,convertLab65ToDlch:()=>ze,convertLab65ToRgb:()=>re,convertLab65ToXyz65:()=>Ae,convertLabToLch:()=>O,convertLabToRgb:()=>Ge,convertLabToXyz50:()=>de,convertLchToLab:()=>q,convertLchuvToLuv:()=>Mt,convertLrgbToOklab:()=>We,convertLrgbToRgb:()=>j,convertLuvToLchuv:()=>gt,convertLuvToXyz50:()=>Xe,convertOkhslToOklab:()=>Ke,convertOkhsvToOklab:()=>Ve,convertOklabToLrgb:()=>K,convertOklabToOkhsl:()=>Ue,convertOklabToOkhsv:()=>Qe,convertOklabToRgb:()=>ae,convertP3ToXyz65:()=>yt,convertProphotoToXyz50:()=>Lt,convertRec2020ToXyz65:()=>_t,convertRgbToCubehelix:()=>jt,convertRgbToHsi:()=>pt,convertRgbToHsl:()=>mt,convertRgbToHsv:()=>Le,convertRgbToHwb:()=>ht,convertRgbToJab:()=>Ye,convertRgbToLab:()=>Fe,convertRgbToLab65:()=>oe,convertRgbToLrgb:()=>J,convertRgbToOklab:()=>ne,convertRgbToXyb:()=>tr,convertRgbToXyz50:()=>U,convertRgbToXyz65:()=>E,convertRgbToYiq:()=>ar,convertXybToRgb:()=>rr,convertXyz50ToLab:()=>ue,convertXyz50ToLuv:()=>we,convertXyz50ToProphoto:()=>kt,convertXyz50ToRgb:()=>W,convertXyz50ToXyz65:()=>nr,convertXyz65ToA98:()=>ft,convertXyz65ToJab:()=>je,convertXyz65ToLab65:()=>Ie,convertXyz65ToP3:()=>zt,convertXyz65ToRec2020:()=>Rt,convertXyz65ToRgb:()=>N,convertXyz65ToXyz50:()=>or,convertYiqToRgb:()=>fr,converter:()=>b,cubehelix:()=>Gf,differenceCie76:()=>jo,differenceCie94:()=>No,differenceCiede2000:()=>Yo,differenceCmc:()=>Bo,differenceEuclidean:()=>qe,differenceHueChroma:()=>te,differenceHueNaive:()=>Bt,differenceHueSaturation:()=>ee,differenceHyab:()=>Zo,differenceKotsarenkoRamos:()=>Go,displayable:()=>he,dlab:()=>Ff,dlch:()=>Wf,easingGamma:()=>br,easingInOutSine:()=>J0,easingMidpoint:()=>mr,easingSmootherstep:()=>D0,easingSmoothstep:()=>I0,filterBrightness:()=>w0,filterContrast:()=>X0,filterDeficiencyDeuter:()=>q0,filterDeficiencyProt:()=>O0,filterDeficiencyTrit:()=>A0,filterGrayscale:()=>H0,filterHueRotate:()=>C0,filterInvert:()=>P0,filterSaturate:()=>$0,filterSepia:()=>S0,fixupAlpha:()=>x,fixupHueDecreasing:()=>Co,fixupHueIncreasing:()=>Po,fixupHueLonger:()=>Ho,fixupHueShorter:()=>L,formatCss:()=>r0,formatHex:()=>o0,formatHex8:()=>n0,formatHsl:()=>f0,formatRgb:()=>a0,getMode:()=>k,hsi:()=>Uf,hsl:()=>Kf,hsv:()=>Qf,hwb:()=>Vf,interpolate:()=>u0,interpolateWith:()=>yo,interpolateWithPremultipliedAlpha:()=>c0,interpolatorLinear:()=>p,interpolatorPiecewise:()=>Jt,interpolatorSplineBasis:()=>cr,interpolatorSplineBasisClosed:()=>hr,interpolatorSplineMonotone:()=>M0,interpolatorSplineMonotone2:()=>v0,interpolatorSplineMonotoneClosed:()=>T0,interpolatorSplineNatural:()=>x0,interpolatorSplineNaturalClosed:()=>g0,jab:()=>el,jch:()=>tl,lab:()=>rl,lab65:()=>ol,lch:()=>nl,lch65:()=>al,lchuv:()=>fl,lerp:()=>Oe,lrgb:()=>ll,luv:()=>il,mapAlphaDivide:()=>sr,mapAlphaMultiply:()=>pr,mapTransferGamma:()=>p0,mapTransferLinear:()=>St,mapper:()=>ce,modeA98:()=>wr,modeCubehelix:()=>Pr,modeDlab:()=>Ar,modeDlch:()=>Ir,modeHsi:()=>Dr,modeHsl:()=>dt,modeHsv:()=>ut,modeHwb:()=>Jr,modeJab:()=>Br,modeJch:()=>Zr,modeLab:()=>Re,modeLab65:()=>Wr,modeLch:()=>_e,modeLch65:()=>Ur,modeLchuv:()=>Kr,modeLrgb:()=>Qr,modeLuv:()=>Vr,modeOkhsl:()=>to,modeOkhsv:()=>ro,modeOklab:()=>oo,modeOklch:()=>no,modeP3:()=>ao,modeProphoto:()=>io,modeRec2020:()=>mo,modeRgb:()=>B,modeXyb:()=>ho,modeXyz50:()=>bo,modeXyz65:()=>xo,modeYiq:()=>go,nearest:()=>R0,okhsl:()=>pl,okhsv:()=>sl,oklab:()=>ml,oklch:()=>dl,p3:()=>ul,parse:()=>Yt,parseHex:()=>At,parseHsl:()=>Wt,parseHwb:()=>Ut,parseLab:()=>Kt,parseLch:()=>Qt,parseNamed:()=>qt,parseRgb:()=>It,parseTransparent:()=>Dt,prophoto:()=>cl,random:()=>i0,rec2020:()=>hl,removeParser:()=>Eo,rgb:()=>bl,round:()=>lr,samples:()=>y0,serializeHex:()=>ir,serializeHex8:()=>Mo,serializeHsl:()=>To,serializeRgb:()=>vo,useMode:()=>v,useParser:()=>Sr,wcagContrast:()=>E0,wcagLuminance:()=>gr,xyb:()=>xl,xyz50:()=>gl,xyz65:()=>Ml,yiq:()=>vl});var W0=(e,t)=>{if(typeof e=="number"){if(t===3)return{mode:"rgb",r:(e>>8&15|e>>4&240)/255,g:(e>>4&15|e&240)/255,b:(e&15|e<<4&240)/255};if(t===4)return{mode:"rgb",r:(e>>12&15|e>>8&240)/255,g:(e>>8&15|e>>4&240)/255,b:(e>>4&15|e&240)/255,alpha:(e&15|e<<4&240)/255};if(t===6)return{mode:"rgb",r:(e>>16&255)/255,g:(e>>8&255)/255,b:(e&255)/255};if(t===8)return{mode:"rgb",r:(e>>24&255)/255,g:(e>>16&255)/255,b:(e>>8&255)/255,alpha:(e&255)/255}}},Ct=W0;var U0={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Ot=U0;var K0=e=>Ct(Ot[e.toLowerCase()],6),qt=K0;var Q0=/^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i,V0=e=>{let t;return(t=e.match(Q0))?Ct(parseInt(t[1],16),t[1].length):void 0},At=V0;var C="([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)",fe=`(?:${C}|none)`,Me=`${C}%`,D=`(?:${C}%|none)`,nt=`(?:${C}%|${C})`,F=`(?:${C}%|${C}|none)`,$o=`(?:${C}(deg|grad|rad|turn)|${C})`,Ce=`(?:${C}(deg|grad|rad|turn)|${C}|none)`,pe="\\s*,\\s*";var S="\\s+",zr=new RegExp("^"+F+"$");var en=new RegExp(`^rgba?\\(\\s*${C}${pe}${C}${pe}${C}\\s*(?:,\\s*${nt}\\s*)?\\)$`),tn=new RegExp(`^rgba?\\(\\s*${Me}${pe}${Me}${pe}${Me}\\s*(?:,\\s*${nt}\\s*)?\\)$`),rn=new RegExp(`^rgba?\\(\\s*${fe}${S}${fe}${S}${fe}\\s*(?:\\/\\s*${F}\\s*)?\\)$`),on=new RegExp(`^rgba?\\(\\s*${D}${S}${D}${S}${D}\\s*(?:\\/\\s*${F}\\s*)?\\)$`),nn=e=>{let t={mode:"rgb"},r;if(r=e.match(en)||e.match(rn))r[1]!==void 0&&(t.r=r[1]/255),r[2]!==void 0&&(t.g=r[2]/255),r[3]!==void 0&&(t.b=r[3]/255);else if(r=e.match(tn)||e.match(on))r[1]!==void 0&&(t.r=r[1]/100),r[2]!==void 0&&(t.g=r[2]/100),r[3]!==void 0&&(t.b=r[3]/100);else return;return r[4]!==void 0?t.alpha=r[4]/100:r[5]!==void 0&&(t.alpha=+r[5]),t},It=nn;var an=e=>e==="transparent"?{mode:"rgb",r:0,g:0,b:0,alpha:0}:void 0,Dt=an;var fn=(e,t,r)=>e+r*(t-e),Oe=fn;var ln=e=>{let t=[];for(let r=0;r<e.length-1;r++){let o=e[r],n=e[r+1];o===void 0&&n===void 0?t.push(void 0):o!==void 0&&n!==void 0?t.push([o,n]):t.push(o!==void 0?[o,o]:[n,n])}return t},Jt=e=>t=>{let r=ln(t);return o=>{let n=o*r.length,a=o>=1?r.length-1:Math.max(Math.floor(n),0),f=r[a];return f===void 0?void 0:e(f[0],f[1],n-a)}};var p=Jt(Oe);var x=e=>{let t=!1,r=e.map(o=>o!==void 0?(t=!0,o):1);return t?r:e};var pn={mode:"rgb",channels:["r","g","b","alpha"],parse:[At,It,qt,Dt,"srgb"],serialize:"srgb",interpolate:{r:p,g:p,b:p,alpha:{use:p,fixup:x}}},B=pn;var kr=e=>Math.pow(Math.abs(e),2.19921875)*Math.sign(e),sn=e=>{let t=kr(e.r),r=kr(e.g),o=kr(e.b),n={mode:"xyz65",x:.5766690429101305*t+.1855582379065463*r+.1882286462349947*o,y:.297344975250536*t+.6273635662554661*r+.0752914584939979*o,z:.0270313613864123*t+.0706888525358272*r+.9913375368376386*o};return e.alpha!==void 0&&(n.alpha=e.alpha),n},at=sn;var Lr=e=>Math.pow(Math.abs(e),.4547069271758437)*Math.sign(e),mn=({x:e,y:t,z:r,alpha:o})=>{let n={mode:"a98",r:Lr(e*2.0415879038107465-t*.5650069742788597-.3447313507783297*r),g:Lr(e*-.9692436362808798+t*1.8759675015077206+.0415550574071756*r),b:Lr(e*.0134442806320312-t*.1183623922310184+1.0151749943912058*r)};return o!==void 0&&(n.alpha=o),n},ft=mn;var Rr=e=>{let t=Math.abs(e);return t<.04045?e/12.92:(Math.sign(e)||1)*Math.pow((t+.055)/1.055,2.4)},dn=({r:e,g:t,b:r,alpha:o})=>{let n={mode:"lrgb",r:Rr(e),g:Rr(t),b:Rr(r)};return o!==void 0&&(n.alpha=o),n},J=dn;var un=e=>{let{r:t,g:r,b:o,alpha:n}=J(e),a={mode:"xyz65",x:.4123907992659593*t+.357584339383878*r+.1804807884018343*o,y:.2126390058715102*t+.715168678767756*r+.0721923153607337*o,z:.0193308187155918*t+.119194779794626*r+.9505321522496607*o};return n!==void 0&&(a.alpha=n),a},E=un;var _r=e=>{let t=Math.abs(e);return t>.0031308?(Math.sign(e)||1)*(1.055*Math.pow(t,.4166666666666667)-.055):e*12.92},cn=({r:e,g:t,b:r,alpha:o},n="rgb")=>{let a={mode:n,r:_r(e),g:_r(t),b:_r(r)};return o!==void 0&&(a.alpha=o),a},j=cn;var hn=({x:e,y:t,z:r,alpha:o})=>{let n=j({r:e*3.2409699419045226-t*1.537383177570094-.4986107602930034*r,g:e*-.9692436362808796+t*1.8759675015077204+.0415550574071756*r,b:e*.0556300796969936-t*.2039769588889765+1.0569715142428784*r});return o!==void 0&&(n.alpha=o),n},N=hn;var bn={...B,mode:"a98",parse:["a98-rgb"],serialize:"a98-rgb",fromMode:{rgb:e=>ft(E(e)),xyz65:ft},toMode:{rgb:e=>N(at(e)),xyz65:at}},wr=bn;var xn=e=>(e=e%360)<0?e+360:e,T=xn;var Et=(e,t)=>e.map((r,o,n)=>{if(r===void 0)return r;let a=T(r);return o===0||e[o-1]===void 0?a:t(a-T(n[o-1]))}).reduce((r,o)=>!r.length||o===void 0||r[r.length-1]===void 0?(r.push(o),r):(r.push(o+r[r.length-1]),r),[]),L=e=>Et(e,t=>Math.abs(t)<=180?t:t-360*Math.sign(t)),Ho=e=>Et(e,t=>Math.abs(t)>=180||t===0?t:t-360*Math.sign(t)),Po=e=>Et(e,t=>t>=0?t:t+360),Co=e=>Et(e,t=>t<=0?t:t-360);var R=[-.14861,1.78277,-.29227,-.90649,1.97294,0],Oo=Math.PI/180,qo=180/Math.PI;var Ao=R[3]*R[4],Io=R[1]*R[4],Do=R[1]*R[2]-R[0]*R[3],gn=({r:e,g:t,b:r,alpha:o})=>{let n=(Do*r+e*Ao-t*Io)/(Do+Ao-Io),a=r-n,f=(R[4]*(t-n)-R[2]*a)/R[3],l={mode:"cubehelix",l:n,s:n===0||n===1?void 0:Math.sqrt(a*a+f*f)/(R[4]*n*(1-n))};return l.s&&(l.h=Math.atan2(f,a)*qo-120),o!==void 0&&(l.alpha=o),l},jt=gn;var Mn=({h:e,s:t,l:r,alpha:o})=>{let n={mode:"rgb"};e=(e===void 0?0:e+120)*Oo;let a=t===void 0?0:t*r*(1-r),f=Math.cos(e),l=Math.sin(e);return n.r=r+a*(R[0]*f+R[1]*l),n.g=r+a*(R[2]*f+R[3]*l),n.b=r+a*(R[4]*f+R[5]*l),o!==void 0&&(n.alpha=o),n},Nt=Mn;function vn(e){let t=e.match(/^color\(\s*([a-z0-9-]+)\s*(.*?)\s*\)$/);if(!t)return;let r=Xr[t[1]];if(!r)return;let o={mode:r},[n,a]=t[2].split(/\s*\/\s*/),f;if(a!==void 0){if(f=a.match(zr),!f)return;f[1]!==void 0?o.alpha=f[1]/100:f[2]!==void 0&&(o.alpha=+f[2])}let l=n.split(/\s+/),i=k(r).channels;for(let s=0,m;s<i.length;s++)if(m=i[s],m!=="alpha"){if(s>=l.length||!l[s]){o[m]=0;continue}if(!(f=l[s].match(zr)))return;f[1]!==void 0?o[m]=f[1]/100:f[2]!==void 0&&(o[m]=+f[2])}return o}var Tn=e=>{if(typeof e!="string")return;let t,r=0,o=ve.length;for(;r<o;)if((t=ve[r++](e))!==void 0)return t;return vn(e)},Yt=Tn;var yn=(e,t)=>e===void 0?void 0:typeof e!="object"?Yt(e):e.mode!==void 0?e:t?{...e,mode:t}:void 0,Y=yn;var zn=(e="rgb")=>t=>(t=Y(t,e))!==void 0?t.mode===e?t:Q[t.mode][e]?Q[t.mode][e](t):e==="rgb"?Q[t.mode].rgb(t):Q.rgb[e](Q[t.mode].rgb(t)):void 0,b=zn;var Q={},Jo={},ve=[],Xr={},kn=e=>e,v=e=>(Q[e.mode]={...Q[e.mode],...e.toMode},Object.keys(e.fromMode||{}).forEach(t=>{Q[t]||(Q[t]={}),Q[t][e.mode]=e.fromMode[t]}),e.ranges||(e.ranges={}),e.difference||(e.difference={}),e.channels.forEach(t=>{if(e.ranges[t]===void 0&&(e.ranges[t]=[0,1]),!e.interpolate[t])throw new Error(`Missing interpolator for: ${t}`);typeof e.interpolate[t]=="function"&&(e.interpolate[t]={use:e.interpolate[t]}),e.interpolate[t].fixup||(e.interpolate[t].fixup=kn)}),Jo[e.mode]=e,(e.parse||[]).forEach(t=>{typeof t=="function"?Sr(t):typeof t=="string"&&(Xr[t]=e.mode)}),b(e.mode)),k=e=>Jo[e],Sr=e=>{ve.indexOf(e)<0&&ve.push(e)},Eo=e=>{let t=ve.indexOf(e);t>0&&ve.splice(t,1)};var ee=(e,t)=>{if(e.h===void 0||t.h===void 0||!e.s||!t.s)return 0;let r=T(e.h),o=T(t.h),n=Math.sin((o-r+360)/2*Math.PI/180);return 2*Math.sqrt(e.s*t.s)*n},Bt=(e,t)=>{if(e.h===void 0||t.h===void 0)return 0;let r=T(e.h),o=T(t.h);return Math.abs(o-r)>180?r-(o-360*Math.sign(o-r)):o-r},te=(e,t)=>{if(e.h===void 0||t.h===void 0||!e.c||!t.c)return 0;let r=T(e.h),o=T(t.h),n=Math.sin((o-r+360)/2*Math.PI/180);return 2*Math.sqrt(e.c*t.c)*n},qe=(e="rgb",t=[1,1,1,0])=>{let r=k(e),o=r.channels,n=r.difference,a=b(e);return(f,l)=>{let i=a(f),s=a(l);return Math.sqrt(o.reduce((m,d,h)=>{let u=n[d]?n[d](i,s):i[d]-s[d];return m+(t[h]||0)*Math.pow(isNaN(u)?0:u,2)},0))}},jo=()=>qe("lab65"),No=(e=1,t=.045,r=.015)=>{let o=b("lab65");return(n,a)=>{let f=o(n),l=o(a),i=f.l,s=f.a,m=f.b,d=Math.sqrt(s*s+m*m),h=l.l,u=l.a,c=l.b,g=Math.sqrt(u*u+c*c),M=Math.pow(i-h,2),z=Math.pow(d-g,2),w=Math.pow(s-u,2)+Math.pow(m-c,2)-z;return Math.sqrt(M/Math.pow(e,2)+z/Math.pow(1+t*d,2)+w/Math.pow(1+r*d,2))}},Yo=(e=1,t=1,r=1)=>{let o=b("lab65");return(n,a)=>{let f=o(n),l=o(a),i=f.l,s=f.a,m=f.b,d=Math.sqrt(s*s+m*m),h=l.l,u=l.a,c=l.b,g=Math.sqrt(u*u+c*c),M=(d+g)/2,z=.5*(1-Math.sqrt(Math.pow(M,7)/(Math.pow(M,7)+Math.pow(25,7)))),w=s*(1+z),X=u*(1+z),$=Math.sqrt(w*w+m*m),H=Math.sqrt(X*X+c*c),P=Math.abs(w)+Math.abs(m)===0?0:Math.atan2(m,w);P+=(P<0)*2*Math.PI;let A=Math.abs(X)+Math.abs(c)===0?0:Math.atan2(c,X);A+=(A<0)*2*Math.PI;let be=h-i,ie=H-$,G=$*H===0?0:A-P;G-=(G>Math.PI)*2*Math.PI,G+=(G<-Math.PI)*2*Math.PI;let V=2*Math.sqrt($*H)*Math.sin(G/2),xe=(i+h)/2,ge=($+H)/2,I;$*H===0?I=P+A:(I=(P+A)/2,I-=(Math.abs(P-A)>Math.PI)*Math.PI,I+=(I<0)*2*Math.PI);let $t=Math.pow(xe-50,2),Ht=1-.17*Math.cos(I-Math.PI/6)+.24*Math.cos(2*I)+.32*Math.cos(3*I+Math.PI/30)-.2*Math.cos(4*I-63*Math.PI/180),tt=1+.015*$t/Math.sqrt(20+$t),rt=1+.045*ge,Pe=1+.015*ge*Ht,Mr=30*Math.PI/180*Math.exp(-1*Math.pow((180/Math.PI*I-275)/25,2)),Pt=2*Math.sqrt(Math.pow(ge,7)/(Math.pow(ge,7)+Math.pow(25,7))),ot=-1*Math.sin(2*Mr)*Pt;return Math.sqrt(Math.pow(be/(e*tt),2)+Math.pow(ie/(t*rt),2)+Math.pow(V/(r*Pe),2)+ot*ie/(t*rt)*V/(r*Pe))}},Bo=(e=1,t=1)=>{let r=b("lab65");return(o,n)=>{let a=r(o),f=a.l,l=a.a,i=a.b,s=Math.sqrt(l*l+i*i),m=Math.atan2(i,l);m=m+2*Math.PI*(m<0);let d=r(n),h=d.l,u=d.a,c=d.b,g=Math.sqrt(u*u+c*c),M=Math.pow(f-h,2),z=Math.pow(s-g,2),w=Math.pow(l-u,2)+Math.pow(i-c,2)-z,X=Math.sqrt(Math.pow(s,4)/(Math.pow(s,4)+1900)),$=m>=164/180*Math.PI&&m<=345/180*Math.PI?.56+Math.abs(.2*Math.cos(m+168/180*Math.PI)):.36+Math.abs(.4*Math.cos(m+35/180*Math.PI)),H=f<16?.511:.040975*f/(1+.01765*f),P=.0638*s/(1+.0131*s)+.638,A=P*(X*$+1-X);return Math.sqrt(M/Math.pow(e*H,2)+z/Math.pow(t*P,2)+w/Math.pow(A,2))}},Zo=()=>{let e=b("lab65");return(t,r)=>{let o=e(t),n=e(r),a=o.l-n.l,f=o.a-n.a,l=o.b-n.b;return Math.abs(a)+Math.sqrt(f*f+l*l)}},Go=()=>qe("yiq",[.5053,.299,.1957]);var _=e=>{let t=e.reduce((r,o)=>{if(o!==void 0){let n=o*Math.PI/180;r.sin+=Math.sin(n),r.cos+=Math.cos(n)}return r},{sin:0,cos:0});return Math.atan2(t.sin,t.cos)*180/Math.PI},Hr=e=>{let t=e.filter(r=>r!==void 0);return t.length?t.reduce((r,o)=>r+o,0)/t.length:void 0},$r=e=>typeof e=="function";function Fo(e,t="rgb",r){let o=k(t),n=e.map(b(t));return o.channels.reduce((a,f)=>{let l=n.map(i=>i[f]).filter(i=>i!==void 0);if(l.length){let i;$r(r)?i=r:r&&$r(r[f])?i=r[f]:o.average&&$r(o.average[f])?i=o.average[f]:i=Hr,a[f]=i(l,f)}return a},{mode:t})}var Ln={mode:"cubehelix",channels:["h","s","l","alpha"],parse:["--cubehelix"],serialize:"--cubehelix",ranges:{h:[0,360],s:[0,4.614],l:[0,1]},fromMode:{rgb:jt},toMode:{rgb:Nt},interpolate:{h:{use:p,fixup:L},s:p,l:p,alpha:{use:p,fixup:x}},difference:{h:ee},average:{h:_}},Pr=Ln;var Rn=({l:e,a:t,b:r,alpha:o},n="lch")=>{let a=Math.sqrt(t*t+r*r),f={mode:n,l:e,c:a};return a&&(f.h=T(Math.atan2(r,t)*180/Math.PI)),o!==void 0&&(f.alpha=o),f},O=Rn;var _n=({l:e,c:t,h:r,alpha:o},n="lab")=>{let a={mode:n,l:e,a:t?t*Math.cos(r/180*Math.PI):0,b:t?t*Math.sin(r/180*Math.PI):0};return o!==void 0&&(a.alpha=o),a},q=_n;var Zt=Math.pow(29,3)/Math.pow(3,3),Gt=Math.pow(6,3)/Math.pow(29,3);var y={X:.9642956764295677,Y:1,Z:.8251046025104602},se={X:.3127/.329,Y:1,Z:(1-.3127-.329)/.329},Yi=Math.pow(29,3)/Math.pow(3,3),Bi=Math.pow(6,3)/Math.pow(29,3);var Cr=e=>Math.pow(e,3)>Gt?Math.pow(e,3):(116*e-16)/Zt,wn=({l:e,a:t,b:r,alpha:o})=>{let n=(e+16)/116,a=t/500+n,f=n-r/200,l={mode:"xyz65",x:Cr(a)*se.X,y:Cr(n)*se.Y,z:Cr(f)*se.Z};return o!==void 0&&(l.alpha=o),l},Ae=wn;var Xn=e=>N(Ae(e)),re=Xn;var Or=e=>e>Gt?Math.cbrt(e):(Zt*e+16)/116,Sn=({x:e,y:t,z:r,alpha:o})=>{let n=Or(e/se.X),a=Or(t/se.Y),f=Or(r/se.Z),l={mode:"lab65",l:116*a-16,a:500*(n-a),b:200*(a-f)};return o!==void 0&&(l.alpha=o),l},Ie=Sn;var $n=e=>{let t=Ie(E(e));return e.r===e.b&&e.b===e.g&&(t.a=t.b=0),t},oe=$n;var Te=.14444444444444443*Math.PI,De=Math.cos(Te),Je=Math.sin(Te),Ft=100/Math.log(139/100);var Hn=({l:e,c:t,h:r,alpha:o})=>{let n={mode:"lab65",l:(Math.exp(e*1/Ft)-1)/.0039};if(r===void 0)n.a=n.b=0;else{let a=(Math.exp(.0435*t*1*1)-1)/.075,f=a*Math.cos(r/180*Math.PI-Te),l=a*Math.sin(r/180*Math.PI-Te);n.a=f*De-l/.83*Je,n.b=f*Je+l/.83*De}return o!==void 0&&(n.alpha=o),n},ye=Hn;var Pn=({l:e,a:t,b:r,alpha:o})=>{let n=t*De+r*Je,a=.83*(r*De-t*Je),f=Math.sqrt(n*n+a*a),l={mode:"dlch",l:Ft/1*Math.log(1+.0039*e),c:Math.log(1+.075*f)/(.0435*1*1)};return l.c&&(l.h=T((Math.atan2(a,n)+Te)/Math.PI*180)),o!==void 0&&(l.alpha=o),l},ze=Pn;var Wo=e=>ye(O(e,"dlch")),Uo=e=>q(ze(e),"dlab"),Cn={mode:"dlab",parse:["--din99o-lab"],serialize:"--din99o-lab",toMode:{lab65:Wo,rgb:e=>re(Wo(e))},fromMode:{lab65:Uo,rgb:e=>Uo(oe(e))},channels:["l","a","b","alpha"],ranges:{l:[0,100],a:[-40.09,45.501],b:[-40.469,44.344]},interpolate:{l:p,a:p,b:p,alpha:{use:p,fixup:x}}},Ar=Cn;var On={mode:"dlch",parse:["--din99o-lch"],serialize:"--din99o-lch",toMode:{lab65:ye,dlab:e=>q(e,"dlab"),rgb:e=>re(ye(e))},fromMode:{lab65:ze,dlab:e=>O(e,"dlch"),rgb:e=>ze(oe(e))},channels:["l","c","h","alpha"],ranges:{l:[0,100],c:[0,51.484],h:[0,360]},interpolate:{l:p,c:p,h:{use:p,fixup:L},alpha:{use:p,fixup:x}},difference:{h:te},average:{h:_}},Ir=On;function it({h:e,s:t,i:r,alpha:o}){e=T(e);let n=Math.abs(e/60%2-1),a;switch(Math.floor(e/60)){case 0:a={r:r*(1+t*(3/(2-n)-1)),g:r*(1+t*(3*(1-n)/(2-n)-1)),b:r*(1-t)};break;case 1:a={r:r*(1+t*(3*(1-n)/(2-n)-1)),g:r*(1+t*(3/(2-n)-1)),b:r*(1-t)};break;case 2:a={r:r*(1-t),g:r*(1+t*(3/(2-n)-1)),b:r*(1+t*(3*(1-n)/(2-n)-1))};break;case 3:a={r:r*(1-t),g:r*(1+t*(3*(1-n)/(2-n)-1)),b:r*(1+t*(3/(2-n)-1))};break;case 4:a={r:r*(1+t*(3*(1-n)/(2-n)-1)),g:r*(1-t),b:r*(1+t*(3/(2-n)-1))};break;case 5:a={r:r*(1+t*(3/(2-n)-1)),g:r*(1-t),b:r*(1+t*(3*(1-n)/(2-n)-1))};break;default:a={r:r*(1-t),g:r*(1-t),b:r*(1-t)}}return a.mode="rgb",o!==void 0&&(a.alpha=o),a}function pt({r:e,g:t,b:r,alpha:o}){let n=Math.max(e,t,r),a=Math.min(e,t,r),f={mode:"hsi",s:e+t+r===0?0:1-3*a/(e+t+r),i:(e+t+r)/3};return n-a!==0&&(f.h=(n===e?(t-r)/(n-a)+(t<r)*6:n===t?(r-e)/(n-a)+2:(e-t)/(n-a)+4)*60),o!==void 0&&(f.alpha=o),f}var qn={mode:"hsi",toMode:{rgb:it},parse:["--hsi"],serialize:"--hsi",fromMode:{rgb:pt},channels:["h","s","i","alpha"],ranges:{h:[0,360]},interpolate:{h:{use:p,fixup:L},s:p,i:p,alpha:{use:p,fixup:x}},difference:{h:ee},average:{h:_}},Dr=qn;function st({h:e,s:t,l:r,alpha:o}){e=T(e);let n=r+t*(r<.5?r:1-r),a=n-(n-r)*2*Math.abs(e/60%2-1),f;switch(Math.floor(e/60)){case 0:f={r:n,g:a,b:2*r-n};break;case 1:f={r:a,g:n,b:2*r-n};break;case 2:f={r:2*r-n,g:n,b:a};break;case 3:f={r:2*r-n,g:a,b:n};break;case 4:f={r:a,g:2*r-n,b:n};break;case 5:f={r:n,g:2*r-n,b:a};break;default:f={r:2*r-n,g:2*r-n,b:2*r-n}}return f.mode="rgb",o!==void 0&&(f.alpha=o),f}function mt({r:e,g:t,b:r,alpha:o}){let n=Math.max(e,t,r),a=Math.min(e,t,r),f={mode:"hsl",s:n===a?0:(n-a)/(1-Math.abs(n+a-1)),l:.5*(n+a)};return n-a!==0&&(f.h=(n===e?(t-r)/(n-a)+(t<r)*6:n===t?(r-e)/(n-a)+2:(e-t)/(n-a)+4)*60),o!==void 0&&(f.alpha=o),f}var An=(e,t)=>{switch(t){case"deg":return+e;case"rad":return e/Math.PI*180;case"grad":return e/10*9;case"turn":return e*360}},Ee=An;var In=new RegExp(`^hsla?\\(\\s*${$o}${pe}${Me}${pe}${Me}\\s*(?:,\\s*${nt}\\s*)?\\)$`),Dn=new RegExp(`^hsla?\\(\\s*${Ce}${S}${D}${S}${D}\\s*(?:\\/\\s*${F}\\s*)?\\)$`),Jn=e=>{let t=e.match(In)||e.match(Dn);if(!t)return;let r={mode:"hsl"};return t[3]!==void 0?r.h=+t[3]:t[1]!==void 0&&t[2]!==void 0&&(r.h=Ee(t[1],t[2])),t[4]!==void 0&&(r.s=Math.min(Math.max(0,t[4]/100),1)),t[5]!==void 0&&(r.l=Math.min(Math.max(0,t[5]/100),1)),t[6]!==void 0?r.alpha=t[6]/100:t[7]!==void 0&&(r.alpha=+t[7]),r},Wt=Jn;var En={mode:"hsl",toMode:{rgb:st},fromMode:{rgb:mt},channels:["h","s","l","alpha"],ranges:{h:[0,360]},parse:[Wt],serialize:e=>`hsl(${e.h||0} ${e.s!==void 0?e.s*100+"%":"none"} ${e.l!==void 0?e.l*100+"%":"none"}${e.alpha<1?` / ${e.alpha}`:""})`,interpolate:{h:{use:p,fixup:L},s:p,l:p,alpha:{use:p,fixup:x}},difference:{h:ee},average:{h:_}},dt=En;function ke({h:e,s:t,v:r,alpha:o}){e=T(e);let n=Math.abs(e/60%2-1),a;switch(Math.floor(e/60)){case 0:a={r,g:r*(1-t*n),b:r*(1-t)};break;case 1:a={r:r*(1-t*n),g:r,b:r*(1-t)};break;case 2:a={r:r*(1-t),g:r,b:r*(1-t*n)};break;case 3:a={r:r*(1-t),g:r*(1-t*n),b:r};break;case 4:a={r:r*(1-t*n),g:r*(1-t),b:r};break;case 5:a={r,g:r*(1-t),b:r*(1-t*n)};break;default:a={r:r*(1-t),g:r*(1-t),b:r*(1-t)}}return a.mode="rgb",o!==void 0&&(a.alpha=o),a}function Le({r:e,g:t,b:r,alpha:o}){let n=Math.max(e,t,r),a=Math.min(e,t,r),f={mode:"hsv",s:n===0?0:1-a/n,v:n};return n-a!==0&&(f.h=(n===e?(t-r)/(n-a)+(t<r)*6:n===t?(r-e)/(n-a)+2:(e-t)/(n-a)+4)*60),o!==void 0&&(f.alpha=o),f}var jn={mode:"hsv",toMode:{rgb:ke},parse:["--hsv"],serialize:"--hsv",fromMode:{rgb:Le},channels:["h","s","v","alpha"],ranges:{h:[0,360]},interpolate:{h:{use:p,fixup:L},s:p,v:p,alpha:{use:p,fixup:x}},difference:{h:ee},average:{h:_}},ut=jn;function ct({h:e,w:t,b:r,alpha:o}){if(t+r>1){let n=t+r;t/=n,r/=n}return ke({h:e,s:r===1?1:1-t/(1-r),v:1-r,alpha:o})}function ht(e){let t=Le(e);if(t===void 0)return;let r={mode:"hwb",w:(1-t.s)*t.v,b:1-t.v};return t.h!==void 0&&(r.h=t.h),t.alpha!==void 0&&(r.alpha=t.alpha),r}var Nn=new RegExp(`^hwb\\(\\s*${Ce}${S}${D}${S}${D}\\s*(?:\\/\\s*${F}\\s*)?\\)$`),Yn=e=>{let t=e.match(Nn);if(!t)return;let r={mode:"hwb"};return t[3]!==void 0?r.h=+t[3]:t[1]!==void 0&&t[2]!==void 0&&(r.h=Ee(t[1],t[2])),t[4]!==void 0&&(r.w=t[4]/100),t[5]!==void 0&&(r.b=t[5]/100),t[6]!==void 0?r.alpha=t[6]/100:t[7]!==void 0&&(r.alpha=+t[7]),r},Ut=Yn;var Bn={mode:"hwb",toMode:{rgb:ct},fromMode:{rgb:ht},channels:["h","w","b","alpha"],ranges:{h:[0,360]},parse:[Ut],serialize:e=>`hwb(${e.h||0} ${e.w*100}% ${e.b*100}%${e.alpha<1?` / ${e.alpha}`:""})`,interpolate:{h:{use:p,fixup:L},w:p,b:p,alpha:{use:p,fixup:x}},difference:{h:Bt},average:{h:_}},Jr=Bn;var Zn=.1593017578125,Gn=134.03437499999998,Fn=.8359375,Wn=18.8515625,Un=18.6875,Kn=16295499532821565e-27,Er=e=>{let t=Math.pow(e/1e4,Zn);return Math.pow((Fn+Wn*t)/(1+Un*t),Gn)||0},jr=e=>Math.max(e*203,0),Qn=({x:e,y:t,z:r,alpha:o})=>{e=jr(e),t=jr(t),r=jr(r);let n=1.15*e-.15*r,a=.66*t+.34*e,f=Er(.41478972*n+.579999*a+.014648*r),l=Er(-.20151*n+1.120649*a+.0531008*r),i=Er(-.0166008*n+.2648*a+.6684799*r),s=(f+l)/2,m={mode:"jab",j:.44*s/(1-.56*s)-Kn,a:3.524*f-4.066708*l+.542708*i,b:.199076*f+1.096799*l-1.295875*i};return o!==void 0&&(m.alpha=o),m},je=Qn;var Vn=.1593017578125,ea=134.03437499999998,ta=.8359375,ra=18.8515625,oa=18.6875,Ko=16295499532821565e-27,Nr=e=>{let t=Math.pow(e,1/ea);return 1e4*Math.pow((ta-t)/(oa*t-ra),1/Vn)||0},Yr=e=>e/203,na=({j:e,a:t,b:r,alpha:o})=>{let n=(e+Ko)/(.44+.56*(e+Ko)),a=Nr(n+.13860504*t+.058047316*r),f=Nr(n-.13860504*t-.058047316*r),l=Nr(n-.096019242*t-.8118919*r),i={mode:"xyz65",x:Yr(1.661373024652174*a-.914523081304348*f+.23136208173913045*l),y:Yr(-.3250758611844533*a+1.571847026732543*f-.21825383453227928*l),z:Yr(-.090982811*a-.31272829*f+1.5227666*l)};return o!==void 0&&(i.alpha=o),i},Ne=na;var aa=e=>{let t=je(E(e));return e.r===e.b&&e.b===e.g&&(t.a=t.b=0),t},Ye=aa;var fa=e=>N(Ne(e)),Be=fa;var la={mode:"jab",channels:["j","a","b","alpha"],parse:["--jzazbz"],serialize:"--jzazbz",fromMode:{rgb:Ye,xyz65:je},toMode:{rgb:Be,xyz65:Ne},ranges:{j:[0,.222],a:[-.109,.129],b:[-.185,.134]},interpolate:{j:p,a:p,b:p,alpha:{use:p,fixup:x}}},Br=la;var ia=({j:e,a:t,b:r,alpha:o})=>{let n=Math.sqrt(t*t+r*r),a={mode:"jch",j:e,c:n};return n&&(a.h=T(Math.atan2(r,t)*180/Math.PI)),o!==void 0&&(a.alpha=o),a},bt=ia;var pa=({j:e,c:t,h:r,alpha:o})=>{let n={mode:"jab",j:e,a:t?t*Math.cos(r/180*Math.PI):0,b:t?t*Math.sin(r/180*Math.PI):0};return o!==void 0&&(n.alpha=o),n},xt=pa;var sa={mode:"jch",parse:["--jzczhz"],serialize:"--jzczhz",toMode:{jab:xt,rgb:e=>Be(xt(e))},fromMode:{rgb:e=>bt(Ye(e)),jab:bt},channels:["j","c","h","alpha"],ranges:{j:[0,.221],c:[0,.19],h:[0,360]},interpolate:{h:{use:p,fixup:L},c:p,j:p,alpha:{use:p,fixup:x}},difference:{h:te},average:{h:_}},Zr=sa;var me=Math.pow(29,3)/Math.pow(3,3),Ze=Math.pow(6,3)/Math.pow(29,3);var Gr=e=>Math.pow(e,3)>Ze?Math.pow(e,3):(116*e-16)/me,ma=({l:e,a:t,b:r,alpha:o})=>{let n=(e+16)/116,a=t/500+n,f=n-r/200,l={mode:"xyz50",x:Gr(a)*y.X,y:Gr(n)*y.Y,z:Gr(f)*y.Z};return o!==void 0&&(l.alpha=o),l},de=ma;var da=({x:e,y:t,z:r,alpha:o})=>{let n=j({r:e*3.1341359569958707-t*1.6173863321612538-.4906619460083532*r,g:e*-.978795502912089+t*1.916254567259524+.03344273116131949*r,b:e*.07195537988411677-t*.2289768264158322+1.405386058324125*r});return o!==void 0&&(n.alpha=o),n},W=da;var ua=e=>W(de(e)),Ge=ua;var ca=e=>{let{r:t,g:r,b:o,alpha:n}=J(e),a={mode:"xyz50",x:.436065742824811*t+.3851514688337912*r+.14307845442264197*o,y:.22249319175623702*t+.7168870538238823*r+.06061979053616537*o,z:.013923904500943465*t+.09708128566574634*r+.7140993584005155*o};return n!==void 0&&(a.alpha=n),a},U=ca;var Fr=e=>e>Ze?Math.cbrt(e):(me*e+16)/116,ha=({x:e,y:t,z:r,alpha:o})=>{let n=Fr(e/y.X),a=Fr(t/y.Y),f=Fr(r/y.Z),l={mode:"lab",l:116*a-16,a:500*(n-a),b:200*(a-f)};return o!==void 0&&(l.alpha=o),l},ue=ha;var ba=e=>{let t=ue(U(e));return e.r===e.b&&e.b===e.g&&(t.a=t.b=0),t},Fe=ba;var xa=new RegExp(`^lab\\(\\s*${D}${S}${fe}${S}${fe}\\s*(?:\\/\\s*${F}\\s*)?\\)$`),ga=e=>{let t=e.match(xa);if(!t)return;let r={mode:"lab"};return t[1]!==void 0&&(r.l=+t[1]),t[2]!==void 0&&(r.a=+t[2]),t[3]!==void 0&&(r.b=+t[3]),t[4]!==void 0?r.alpha=t[4]/100:t[5]!==void 0&&(r.alpha=+t[5]),r},Kt=ga;var Ma={mode:"lab",toMode:{xyz50:de,rgb:Ge},fromMode:{xyz50:ue,rgb:Fe},channels:["l","a","b","alpha"],ranges:{l:[0,100],a:[-79.287,93.55],b:[-112.029,93.388]},parse:[Kt],serialize:e=>`lab(${e.l!==void 0?e.l+"%":"none"} ${e.a!==void 0?e.a:"none"} ${e.b!==void 0?e.b:"none"}${e.alpha<1?` / ${e.alpha}`:""})`,interpolate:{l:p,a:p,b:p,alpha:{use:p,fixup:x}}},Re=Ma;var va={...Re,mode:"lab65",parse:["--lab-d65"],serialize:"--lab-d65",toMode:{xyz65:Ae,rgb:re},fromMode:{xyz65:Ie,rgb:oe},ranges:{l:[0,100],a:[-86.182,98.234],b:[-107.86,94.477]}},Wr=va;var Ta=new RegExp(`^lch\\(\\s*${D}${S}${fe}${S}${Ce}\\s*(?:\\/\\s*${F}\\s*)?\\)$`),ya=e=>{let t=e.match(Ta);if(!t)return;let r={mode:"lch"};return t[1]!==void 0&&(r.l=+t[1]),t[2]!==void 0&&(r.c=Math.max(0,+t[2])),t[5]!==void 0?r.h=+t[5]:t[3]!==void 0&&t[4]!==void 0&&(r.h=Ee(t[3],t[4])),t[6]!==void 0?r.alpha=t[6]/100:t[7]!==void 0&&(r.alpha=+t[7]),r},Qt=ya;var za={mode:"lch",toMode:{lab:q,rgb:e=>Ge(q(e))},fromMode:{rgb:e=>O(Fe(e)),lab:O},channels:["l","c","h","alpha"],ranges:{l:[0,100],c:[0,131.207],h:[0,360]},parse:[Qt],serialize:e=>`lch(${e.l!==void 0?e.l+"%":"none"} ${e.c!==void 0?e.c:"none"} ${e.h||0}${e.alpha<1?` / ${e.alpha}`:""})`,interpolate:{h:{use:p,fixup:L},c:p,l:p,alpha:{use:p,fixup:x}},difference:{h:te},average:{h:_}},_e=za;var ka={..._e,mode:"lch65",parse:["--lch-d65"],serialize:"--lch-d65",toMode:{lab65:e=>q(e,"lab65"),rgb:e=>re(q(e,"lab65"))},fromMode:{rgb:e=>O(oe(e),"lch65"),lab65:e=>O(e,"lch65")},ranges:{l:[0,100],c:[0,133.807],h:[0,360]}},Ur=ka;var La=({l:e,u:t,v:r,alpha:o})=>{let n=Math.sqrt(t*t+r*r),a={mode:"lchuv",l:e,c:n};return n&&(a.h=T(Math.atan2(r,t)*180/Math.PI)),o!==void 0&&(a.alpha=o),a},gt=La;var Ra=({l:e,c:t,h:r,alpha:o})=>{let n={mode:"luv",l:e,u:t?t*Math.cos(r/180*Math.PI):0,v:t?t*Math.sin(r/180*Math.PI):0};return o!==void 0&&(n.alpha=o),n},Mt=Ra;var Qo=(e,t,r)=>4*e/(e+15*t+3*r),Vo=(e,t,r)=>9*t/(e+15*t+3*r),_a=Qo(y.X,y.Y,y.Z),wa=Vo(y.X,y.Y,y.Z),Xa=e=>e<=Ze?me*e:116*Math.cbrt(e)-16,Sa=({x:e,y:t,z:r,alpha:o})=>{let n=Xa(t/y.Y),a=Qo(e,t,r),f=Vo(e,t,r);!isFinite(a)||!isFinite(f)?n=a=f=0:(a=13*n*(a-_a),f=13*n*(f-wa));let l={mode:"luv",l:n,u:a,v:f};return o!==void 0&&(l.alpha=o),l},we=Sa;var $a=(e,t,r)=>4*e/(e+15*t+3*r),Ha=(e,t,r)=>9*t/(e+15*t+3*r),Pa=$a(y.X,y.Y,y.Z),Ca=Ha(y.X,y.Y,y.Z),Oa=({l:e,u:t,v:r,alpha:o})=>{let n=t/(13*e)+Pa,a=r/(13*e)+Ca,f=y.Y*(e<=8?e/me:Math.pow((e+16)/116,3)),l=f*(9*n)/(4*a),i=f*(12-3*n-20*a)/(4*a),s={mode:"xyz50",x:l,y:f,z:i};return o!==void 0&&(s.alpha=o),s},Xe=Oa;var qa=e=>gt(we(U(e))),Aa=e=>W(Xe(Mt(e))),Ia={mode:"lchuv",toMode:{luv:Mt,rgb:Aa},fromMode:{rgb:qa,luv:gt},channels:["l","c","h","alpha"],parse:["--lchuv"],serialize:"--lchuv",ranges:{l:[0,100],c:[0,176.956],h:[0,360]},interpolate:{h:{use:p,fixup:L},c:p,l:p,alpha:{use:p,fixup:x}},difference:{h:te},average:{h:_}},Kr=Ia;var Da={...B,mode:"lrgb",toMode:{rgb:j},fromMode:{rgb:J},parse:["--srgb-linear"],serialize:"--srgb-linear"},Qr=Da;var Ja={mode:"luv",toMode:{xyz50:Xe,rgb:e=>W(Xe(e))},fromMode:{xyz50:we,rgb:e=>we(U(e))},channels:["l","u","v","alpha"],parse:["--luv"],serialize:"--luv",ranges:{l:[0,100],u:[-84.936,175.042],v:[-125.882,87.243]},interpolate:{l:p,u:p,v:p,alpha:{use:p,fixup:x}}},Vr=Ja;var Ea=({r:e,g:t,b:r,alpha:o})=>{let n=Math.cbrt(.41222147079999993*e+.5363325363*t+.0514459929*r),a=Math.cbrt(.2119034981999999*e+.6806995450999999*t+.1073969566*r),f=Math.cbrt(.08830246189999998*e+.2817188376*t+.6299787005000002*r),l={mode:"oklab",l:.2104542553*n+.793617785*a-.0040720468*f,a:1.9779984951*n-2.428592205*a+.4505937099*f,b:.0259040371*n+.7827717662*a-.808675766*f};return o!==void 0&&(l.alpha=o),l},We=Ea;var ja=e=>{let t=We(J(e));return e.r===e.b&&e.b===e.g&&(t.a=t.b=0),t},ne=ja;var Na=({l:e,a:t,b:r,alpha:o})=>{let n=Math.pow(e*.9999999984505198+.39633779217376786*t+.2158037580607588*r,3),a=Math.pow(e*1.0000000088817609-.10556134232365635*t-.06385417477170591*r,3),f=Math.pow(e*1.0000000546724108-.08948418209496575*t-1.2914855378640917*r,3),l={mode:"lrgb",r:4.076741661347994*n-3.307711590408193*a+.230969928729428*f,g:-1.2684380040921763*n+2.6097574006633715*a-.3413193963102197*f,b:-.004196086541837188*n-.7034186144594493*a+1.7076147009309444*f};return o!==void 0&&(l.alpha=o),l},K=Na;var Ya=e=>j(K(e)),ae=Ya;function vt(e){let o=1.170873786407767;return .5*(o*e-.206+Math.sqrt((o*e-.206)*(o*e-.206)+4*.03*o*e))}function Se(e){let o=1.170873786407767;return(e*e+.206*e)/(o*(e+.03))}function Ba(e,t){let r,o,n,a,f,l,i,s;-1.88170328*e-.80936493*t>1?(r=1.19086277,o=1.76576728,n=.59662641,a=.75515197,f=.56771245,l=4.0767416621,i=-3.3077115913,s=.2309699292):1.81444104*e-1.19445276*t>1?(r=.73956515,o=-.45954404,n=.08285427,a=.1254107,f=.14503204,l=-1.2684380046,i=2.6097574011,s=-.3413193965):(r=1.35733652,o=-.00915799,n=-1.1513021,a=-.50559606,f=.00692167,l=-.0041960863,i=-.7034186147,s=1.707614701);let m=r+o*e+n*t+a*e*e+f*e*t,d=.3963377774*e+.2158037573*t,h=-.1055613458*e-.0638541728*t,u=-.0894841775*e-1.291485548*t;{let c=1+m*d,g=1+m*h,M=1+m*u,z=c*c*c,w=g*g*g,X=M*M*M,$=3*d*c*c,H=3*h*g*g,P=3*u*M*M,A=6*d*d*c,be=6*h*h*g,ie=6*u*u*M,G=l*z+i*w+s*X,V=l*$+i*H+s*P,xe=l*A+i*be+s*ie;m=m-G*V/(V*V-.5*G*xe)}return m}function eo(e,t){let r=Ba(e,t),o=K({l:1,a:r*e,b:r*t}),n=Math.cbrt(1/Math.max(o.r,o.g,o.b)),a=n*r;return[n,a]}function Za(e,t,r,o,n,a=null){a||(a=eo(e,t));let f;if((r-n)*a[1]-(a[0]-n)*o<=0)f=a[1]*n/(o*a[0]+a[1]*(n-r));else{f=a[1]*(n-1)/(o*(a[0]-1)+a[1]*(n-r));{let l=r-n,i=o,s=.3963377774*e+.2158037573*t,m=-.1055613458*e-.0638541728*t,d=-.0894841775*e-1.291485548*t,h=l+i*s,u=l+i*m,c=l+i*d;{let g=n*(1-f)+f*r,M=f*o,z=g+M*s,w=g+M*m,X=g+M*d,$=z*z*z,H=w*w*w,P=X*X*X,A=3*h*z*z,be=3*u*w*w,ie=3*c*X*X,G=6*h*h*z,V=6*u*u*w,xe=6*c*c*X,ge=4.0767416621*$-3.3077115913*H+.2309699292*P-1,I=4.0767416621*A-3.3077115913*be+.2309699292*ie,$t=4.0767416621*G-3.3077115913*V+.2309699292*xe,Ht=I/(I*I-.5*ge*$t),tt=-ge*Ht,rt=-1.2684380046*$+2.6097574011*H-.3413193965*P-1,Pe=-1.2684380046*A+2.6097574011*be-.3413193965*ie,Mr=-1.2684380046*G+2.6097574011*V-.3413193965*xe,Pt=Pe/(Pe*Pe-.5*rt*Mr),ot=-rt*Pt,Xo=-.0041960863*$-.7034186147*H+1.707614701*P-1,vr=-.0041960863*A-.7034186147*be+1.707614701*ie,j0=-.0041960863*G-.7034186147*V+1.707614701*xe,So=vr/(vr*vr-.5*Xo*j0),Tr=-Xo*So;tt=Ht>=0?tt:1e6,ot=Pt>=0?ot:1e6,Tr=So>=0?Tr:1e6,f+=Math.min(tt,Math.min(ot,Tr))}}}return f}function Tt(e,t,r=null){r||(r=eo(e,t));let o=r[0],n=r[1];return[n/o,n/(1-o)]}function Vt(e,t,r){let o=eo(t,r),n=Za(t,r,e,1,e,o),a=Tt(t,r,o),f=.11516993+1/(7.4477897+4.1590124*r+t*(-2.19557347+1.75198401*r+t*(-2.13704948-10.02301043*r+t*(-4.24894561+5.38770819*r+4.69891013*t)))),l=.11239642+1/(1.6132032-.68124379*r+t*(.40370612+.90148123*r+t*(-.27087943+.6122399*r+t*(.00299215-.45399568*r-.14661872*t)))),i=n/Math.min(e*a[0],(1-e)*a[1]),s=e*f,m=(1-e)*l,d=.9*i*Math.sqrt(Math.sqrt(1/(1/(s*s*s*s)+1/(m*m*m*m))));return s=e*.4,m=(1-e)*.8,[Math.sqrt(1/(1/(s*s)+1/(m*m))),d,n]}function Ue(e){let t={mode:"okhsl",l:vt(e.l)};e.alpha!==void 0&&(t.alpha=e.alpha);let r=Math.sqrt(e.a*e.a+e.b*e.b);if(!r)return t.s=0,t;let[o,n,a]=Vt(e.l,e.a/r,e.b/r),f;if(r<n){let l=0,i=.8*o,s=1-i/n;f=(r-l)/(i+s*(r-l))*.8}else{let l=n,i=.2*n*n*1.25*1.25/o,s=1-i/(a-n);f=.8+.2*((r-l)/(i+s*(r-l)))}return f&&(t.s=f,t.h=T(Math.atan2(e.b,e.a)*180/Math.PI)),t}function Ke(e){let t=Se(e.l),r={mode:"oklab",l:t};if(e.alpha!==void 0&&(r.alpha=e.alpha),!e.s||e.l===1)return r.a=r.b=0,r;let o=Math.cos(e.h/180*Math.PI),n=Math.sin(e.h/180*Math.PI),[a,f,l]=Vt(t,o,n),i,s,m,d;e.s<.8?(i=1.25*e.s,s=0,m=.8*a,d=1-m/f):(i=5*(e.s-.8),s=f,m=.2*f*f*1.25*1.25/a,d=1-m/(l-f));let h=s+i*m/(1-d*i);return r.a=h*o,r.b=h*n,r}var Ga={...dt,mode:"okhsl",channels:["h","s","l","alpha"],parse:["--okhsl"],serialize:"--okhsl",fromMode:{oklab:Ue,rgb:e=>Ue(ne(e))},toMode:{oklab:Ke,rgb:e=>ae(Ke(e))}},to=Ga;function Qe(e){let t=Math.sqrt(e.a*e.a+e.b*e.b),r=e.l,o=t?e.a/t:1,n=t?e.b/t:1,[a,f]=Tt(o,n),l=.5,i=1-l/a,s=f/(t+r*f),m=s*r,d=s*t,h=Se(m),u=d*h/m,c=K({l:h,a:o*u,b:n*u}),g=Math.cbrt(1/Math.max(c.r,c.g,c.b,0));r=r/g,t=t/g*vt(r)/r,r=vt(r);let M={mode:"okhsv",s:t?(l+f)*d/(f*l+f*i*d):0,v:r?r/m:0};return M.s&&(M.h=T(Math.atan2(e.b,e.a)*180/Math.PI)),e.alpha!==void 0&&(M.alpha=e.alpha),M}function Ve(e){let t={mode:"oklab"};e.alpha!==void 0&&(t.alpha=e.alpha);let r=e.h||0,o=Math.cos(r/180*Math.PI),n=Math.sin(r/180*Math.PI),[a,f]=Tt(o,n),l=.5,i=1-l/a,s=1-e.s*l/(l+f-f*i*e.s),m=e.s*f*l/(l+f-f*i*e.s),d=Se(s),h=m*d/s,u=K({l:d,a:o*h,b:n*h}),c=Math.cbrt(1/Math.max(u.r,u.g,u.b,0)),g=Se(e.v*s),M=m*g/s;return t.l=g*c,t.a=M*o*c,t.b=M*n*c,t}var Fa={...ut,mode:"okhsv",channels:["h","s","v","alpha"],parse:["--okhsv"],serialize:"--okhsv",fromMode:{oklab:Qe,rgb:e=>Qe(ne(e))},toMode:{oklab:Ve,rgb:e=>ae(Ve(e))}},ro=Fa;var Wa={...Re,mode:"oklab",toMode:{lrgb:K,rgb:ae},fromMode:{lrgb:We,rgb:ne},ranges:{l:[0,.999],a:[-.233,.276],b:[-.311,.198]},parse:["--oklab"],serialize:"--oklab"},oo=Wa;var Ua={..._e,mode:"oklch",toMode:{oklab:e=>q(e,"oklab"),rgb:e=>ae(q(e,"oklab"))},fromMode:{rgb:e=>O(ne(e),"oklch"),oklab:e=>O(e,"oklch")},parse:["--oklch"],serialize:"--oklch",ranges:{l:[0,.999],c:[0,.322],h:[0,360]}},no=Ua;var Ka=e=>{let{r:t,g:r,b:o,alpha:n}=J(e),a={mode:"xyz65",x:.486570948648216*t+.265667693169093*r+.1982172852343625*o,y:.2289745640697487*t+.6917385218365062*r+.079286914093745*o,z:0*t+.0451133818589026*r+1.043944368900976*o};return n!==void 0&&(a.alpha=n),a},yt=Ka;var Qa=({x:e,y:t,z:r,alpha:o})=>{let n=j({r:e*2.4934969119414263-t*.9313836179191242-.402710784450717*r,g:e*-.8294889695615749+t*1.7626640603183465+.0236246858419436*r,b:e*.0358458302437845-t*.0761723892680418+.9568845240076871*r},"p3");return o!==void 0&&(n.alpha=o),n},zt=Qa;var Va={...B,mode:"p3",parse:["display-p3"],serialize:"display-p3",fromMode:{rgb:e=>zt(E(e)),xyz65:zt},toMode:{rgb:e=>N(yt(e)),xyz65:yt}},ao=Va;var fo=e=>{let t=Math.abs(e);return t>=.001953125?Math.sign(e)*Math.pow(t,.5555555555555556):16*e},ef=({x:e,y:t,z:r,alpha:o})=>{let n={mode:"prophoto",r:fo(e*1.3457868816471585-t*.2555720873797946-.0511018649755453*r),g:fo(e*-.5446307051249019+t*1.5082477428451466+.0205274474364214*r),b:fo(e*0+t*0+1.2119675456389452*r)};return o!==void 0&&(n.alpha=o),n},kt=ef;var lo=e=>{let t=Math.abs(e);return t>=.03125?Math.sign(e)*Math.pow(t,1.8):e/16},tf=e=>{let t=lo(e.r),r=lo(e.g),o=lo(e.b),n={mode:"xyz50",x:.7977666449006423*t+.1351812974005331*r+.0313477341283922*o,y:.2880748288194013*t+.7118352342418731*r+899369387256e-16*o,z:0*t+0*r+.8251046025104602*o};return e.alpha!==void 0&&(n.alpha=e.alpha),n},Lt=tf;var rf={...B,mode:"prophoto",parse:["prophoto-rgb"],serialize:"prophoto-rgb",fromMode:{xyz50:kt,rgb:e=>kt(U(e))},toMode:{xyz50:Lt,rgb:e=>W(Lt(e))}},io=rf;var e0=1.09929682680944,of=.018053968510807,po=e=>{let t=Math.abs(e);return t>of?(Math.sign(e)||1)*(e0*Math.pow(t,.45)-(e0-1)):4.5*e},nf=({x:e,y:t,z:r,alpha:o})=>{let n={mode:"rec2020",r:po(e*1.7166511879712683-t*.3556707837763925-.2533662813736599*r),g:po(e*-.6666843518324893+t*1.6164812366349395+.0157685458139111*r),b:po(e*.0176398574453108-t*.0427706132578085+.9421031212354739*r)};return o!==void 0&&(n.alpha=o),n},Rt=nf;var t0=1.09929682680944,af=.018053968510807,so=e=>{let t=Math.abs(e);return t<af*4.5?e/4.5:(Math.sign(e)||1)*Math.pow((t+t0-1)/t0,1/.45)},ff=e=>{let t=so(e.r),r=so(e.g),o=so(e.b),n={mode:"xyz65",x:.6369580483012911*t+.1446169035862083*r+.1688809751641721*o,y:.262700212011267*t+.6779980715188708*r+.059301716469862*o,z:0*t+.0280726930490874*r+1.0609850577107909*o};return e.alpha!==void 0&&(n.alpha=e.alpha),n},_t=ff;var lf={...B,mode:"rec2020",fromMode:{xyz65:Rt,rgb:e=>Rt(E(e))},toMode:{xyz65:_t,rgb:e=>N(_t(e))},parse:["rec2020"],serialize:"rec2020"},mo=lf;var le=.0037930732552754493,er=Math.cbrt(le);var uo=e=>Math.cbrt(e)-er,pf=e=>{let{r:t,g:r,b:o,alpha:n}=J(e),a=uo(.3*t+.622*r+.078*o+le),f=uo(.23*t+.692*r+.078*o+le),l=uo(.2434226892454782*t+.2047674442449682*r+.5518098665095535*o+le),i={mode:"xyb",x:(a-f)/2,y:(a+f)/2,b:l-(a+f)/2};return n!==void 0&&(i.alpha=n),i},tr=pf;var co=e=>Math.pow(e+er,3),sf=({x:e,y:t,b:r,alpha:o})=>{let n=co(e+t)-le,a=co(t-e)-le,f=co(r+t)-le,l=j({r:11.031566904639861*n-9.866943908131562*a-.16462299650829934*f,g:-3.2541473810744237*n+4.418770377582723*a-.16462299650829934*f,b:-3.6588512867136815*n+2.7129230459360922*a+1.9459282407775895*f});return o!==void 0&&(l.alpha=o),l},rr=sf;var mf={mode:"xyb",channels:["x","y","b","alpha"],parse:["--xyb"],serialize:"--xyb",toMode:{rgb:rr},fromMode:{rgb:tr},ranges:{x:[-.0154,.0281],y:[0,.8453],b:[-.2778,.388]},interpolate:{x:p,y:p,b:p,alpha:{use:p,fixup:x}}},ho=mf;var df={mode:"xyz50",parse:["xyz-d50","--xyz-d50"],serialize:"xyz-d50",toMode:{rgb:W,lab:ue},fromMode:{rgb:U,lab:de},channels:["x","y","z","alpha"],ranges:{x:[0,.964],y:[0,.999],z:[0,.825]},interpolate:{x:p,y:p,z:p,alpha:{use:p,fixup:x}}},bo=df;var uf=e=>{let{x:t,y:r,z:o,alpha:n}=e,a={mode:"xyz50",x:1.0479298208405488*t+.0229467933410191*r-.0501922295431356*o,y:.0296278156881593*t+.990434484573249*r-.0170738250293851*o,z:-.0092430581525912*t+.0150551448965779*r+.7518742899580008*o};return n!==void 0&&(a.alpha=n),a},or=uf;var cf=e=>{let{x:t,y:r,z:o,alpha:n}=e,a={mode:"xyz65",x:.9554734527042182*t-.0230985368742614*r+.0632593086610217*o,y:-.0283697069632081*t+1.0099954580058226*r+.021041398966943*o,z:.0123140016883199*t-.0205076964334779*r+1.3303659366080753*o};return n!==void 0&&(a.alpha=n),a},nr=cf;var hf={mode:"xyz65",toMode:{rgb:N,xyz50:or},fromMode:{rgb:E,xyz50:nr},ranges:{x:[0,.95],y:[0,1],z:[0,1.088]},channels:["x","y","z","alpha"],parse:["xyz","xyz-d65","--xyz-d65"],serialize:"xyz-d65",interpolate:{x:p,y:p,z:p,alpha:{use:p,fixup:x}}},xo=hf;var bf=({r:e,g:t,b:r,alpha:o})=>{let n={mode:"yiq",y:.29889531*e+.58662247*t+.11448223*r,i:.59597799*e-.2741761*t-.32180189*r,q:.21147017*e-.52261711*t+.31114694*r};return o!==void 0&&(n.alpha=o),n},ar=bf;var xf=({y:e,i:t,q:r,alpha:o})=>{let n={mode:"rgb",r:e+.95608445*t+.6208885*r,g:e-.27137664*t-.6486059*r,b:e-1.10561724*t+1.70250126*r};return o!==void 0&&(n.alpha=o),n},fr=xf;var gf={mode:"yiq",toMode:{rgb:fr},fromMode:{rgb:ar},channels:["y","i","q","alpha"],parse:["--yiq"],serialize:"--yiq",ranges:{i:[-.595,.595],q:[-.522,.522]},interpolate:{y:p,i:p,q:p,alpha:{use:p,fixup:x}}},go=gf;var Mf=(e,t)=>Math.round(e*(t=Math.pow(10,t)))/t,vf=(e=4)=>t=>typeof t=="number"?Mf(t,e):t,lr=vf;var wt=lr(2),Xt=e=>Math.max(0,Math.min(1,e)),$e=e=>Math.round(Xt(e)*255),ir=e=>{if(e===void 0)return;let t=$e(e.r),r=$e(e.g),o=$e(e.b);return"#"+(1<<24|t<<16|r<<8|o).toString(16).slice(1)},Mo=e=>{if(e===void 0)return;let t=$e(e.alpha!==void 0?e.alpha:1);return ir(e)+(1<<8|t).toString(16).slice(1)},vo=e=>{if(e===void 0)return;let t=e.r!==void 0?$e(e.r):"none",r=e.g!==void 0?$e(e.g):"none",o=e.b!==void 0?$e(e.b):"none";return e.alpha===void 0||e.alpha===1?`rgb(${t}, ${r}, ${o})`:`rgba(${t}, ${r}, ${o}, ${wt(Xt(e.alpha))})`},To=e=>{if(e===void 0)return;let t=wt(e.h||0),r=e.s!==void 0?wt(Xt(e.s)*100)+"%":"none",o=e.l!==void 0?wt(Xt(e.l)*100)+"%":"none";return e.alpha===void 0||e.alpha===1?`hsl(${t}, ${r}, ${o})`:`hsla(${t}, ${r}, ${o}, ${wt(Xt(e.alpha))})`},r0=e=>{let t=Y(e);if(!t)return;let r=k(t.mode);if(!r.serialize||typeof r.serialize=="string"){let o=`color(${r.serialize||`--${t.mode}`} `;return r.channels.forEach((n,a)=>{n!=="alpha"&&(o+=(a?" ":"")+(t[n]!==void 0?t[n]:"none"))}),t.alpha!==void 0&&t.alpha<1&&(o+=` / ${t.alpha}`),o+")"}if(typeof r.serialize=="function")return r.serialize(t)},o0=e=>ir(b("rgb")(e)),n0=e=>Mo(b("rgb")(e)),a0=e=>vo(b("rgb")(e)),f0=e=>To(b("hsl")(e));var Tf={normal:(e,t)=>t,multiply:(e,t)=>e*t,screen:(e,t)=>e+t-e*t,"hard-light":(e,t)=>t<.5?e*2*t:2*t*(1-e)-1,overlay:(e,t)=>e<.5?t*2*e:2*e*(1-t)-1,darken:(e,t)=>Math.min(e,t),lighten:(e,t)=>Math.max(e,t),"color-dodge":(e,t)=>e===0?0:t===1?1:Math.min(1,e/(1-t)),"color-burn":(e,t)=>e===1?1:t===0?0:1-Math.min(1,(1-e)/t),"soft-light":(e,t)=>t<.5?e-(1-2*t)*e*(1-e):e+(2*t-1)*((e<.25?((16*e-12)*e+4)*e:Math.sqrt(e))-e),difference:(e,t)=>Math.abs(e-t),exclusion:(e,t)=>e+t-2*e*t},yf=(e,t="normal",r="rgb")=>{let o=typeof t=="function"?t:Tf[t],n=b(r),a=k(r).channels;return e.map(l=>{let i=n(l);return i.alpha===void 0&&(i.alpha=1),i}).reduce((l,i)=>{if(l===void 0)return i;let s=i.alpha+l.alpha*(1-i.alpha);return a.reduce((m,d)=>(d!=="alpha"&&(s===0?m[d]=0:(m[d]=i.alpha*(1-l.alpha)*i[d]+i.alpha*l.alpha*o(l[d],i[d])+(1-i.alpha)*l.alpha*l[d],m[d]=Math.max(0,Math.min(1,m[d]/s)))),m),{mode:r,alpha:s})})},l0=yf;var zf=([e,t])=>e+Math.random()*(t-e),kf=e=>Object.keys(e).reduce((t,r)=>{let o=e[r];return t[r]=Array.isArray(o)?o:[o,o],t},{}),Lf=(e="rgb",t={})=>{let r=k(e),o=kf(t);return r.channels.reduce((n,a)=>((o.alpha||a!=="alpha")&&(n[a]=zf(o[a]||r.ranges[a])),n),{mode:e})},i0=Lf;var ce=(e,t="rgb",r=!1)=>{let o=t?k(t).channels:null,n=t?b(t):Y;return a=>{let f=n(a),l=(o||k(a.mode).channels).reduce((s,m)=>{let d=e(f[m],m,f,t);return d!==void 0&&!isNaN(d)&&(s[m]=d),s},{mode:t});if(!r)return l;let i=Y(a);return i&&i.mode!==l.mode?b(i.mode)(l):l}},pr=(e,t,r)=>t!=="alpha"?(e||0)*(r.alpha!==void 0?r.alpha:1):e,sr=(e,t,r)=>t!=="alpha"&&r.alpha!==0?(e||0)/(r.alpha!==void 0?r.alpha:1):e,St=(e=1,t=0)=>(r,o)=>o!=="alpha"?r*e+t:r,p0=(e=1,t=1,r=0)=>(o,n)=>n!=="alpha"?e*Math.pow(o,t)+r:o;var Rf=e=>{e[0]===void 0&&(e[0]=0),e[e.length-1]===void 0&&(e[e.length-1]=1);let t=1,r,o,n,a;for(;t<e.length;){if(e[t]===void 0){for(o=t,n=e[t-1],r=t;e[r]===void 0;)r++;for(a=(e[r]-n)/(r-t+1);t<r;)e[t]=n+(t+1-o)*a,t++}else e[t]<e[t-1]&&(e[t]=e[t-1]);t++}return e},s0=Rf;var _f=(e=.5)=>t=>e<=0?1:e>=1?0:Math.pow(t,Math.log(.5)/Math.log(e)),mr=_f;var dr=e=>typeof e=="function",He=e=>e&&typeof e=="object",m0=e=>typeof e=="number",d0=(e,t="rgb",r,o)=>{let n=k(t),a=b(t),f=[],l=[],i={};e.forEach(h=>{Array.isArray(h)?(f.push(a(h[0])),l.push(h[1])):m0(h)||dr(h)?i[l.length]=h:(f.push(a(h)),l.push(void 0))}),s0(l);let s=n.channels.reduce((h,u)=>{let c;return He(r)&&He(r[u])&&r[u].fixup?c=r[u].fixup:He(n.interpolate[u])&&n.interpolate[u].fixup?c=n.interpolate[u].fixup:c=g=>g,h[u]=c(f.map(g=>g[u])),h},{});if(o){let h=f.map((u,c)=>n.channels.reduce((g,M)=>(g[M]=s[M][c],g),{mode:t}));s=n.channels.reduce((u,c)=>(u[c]=h.map(g=>{let M=o(g[c],c,g,t);return isNaN(M)?void 0:M}),u),{})}let m=n.channels.reduce((h,u)=>{let c;return dr(r)?c=r:He(r)&&dr(r[u])?c=r[u]:He(r)&&He(r[u])&&r[u].use?c=r[u].use:dr(n.interpolate[u])?c=n.interpolate[u]:He(n.interpolate[u])&&(c=n.interpolate[u].use),h[u]=c(s[u]),h},{}),d=f.length-1;return h=>{if(h=Math.min(Math.max(0,h),1),h<=l[0])return f[0];if(h>l[d])return f[d];let u=0;for(;l[u]<h;)u++;let c=l[u-1],g=l[u]-c,M=(h-c)/g,z=i[u]||i[0];z!==void 0&&(m0(z)&&(z=mr((z-c)/g)),M=z(M));let w=(u-1+M)/d;return n.channels.reduce((X,$)=>{let H=m[$](w);return H!==void 0&&(X[$]=H),X},{mode:t})}},u0=(e,t="rgb",r)=>d0(e,t,r),yo=(e,t)=>(r,o="rgb",n)=>{let a=t?ce(t,o):void 0,f=d0(r,o,n,e);return a?l=>a(f(l)):f},c0=yo(pr,sr);var ur=(e,t)=>(e+t)%t,h0=(e,t,r,o,n)=>{let a=n*n,f=a*n;return((1-3*n+3*a-f)*e+(4-6*a+3*f)*t+(1+3*n+3*a-3*f)*r+f*o)/6},cr=e=>t=>{let r=e.length-1,o=t>=1?r-1:Math.max(0,Math.floor(t*r));return h0(o>0?e[o-1]:2*e[o]-e[o+1],e[o],e[o+1],o<r-1?e[o+2]:2*e[o+1]-e[o],(t-o/r)*r)},hr=e=>t=>{let r=e.length-1,o=Math.floor(t*r);return h0(e[ur(o-1,e.length)],e[ur(o,e.length)],e[ur(o+1,e.length)],e[ur(o+2,e.length)],(t-o/r)*r)};var b0=e=>{let t,r=e.length-1,o=new Array(r),n=new Array(r),a=new Array(r);for(o[1]=1/4,n[1]=(6*e[1]-e[0])/4,t=2;t<r;++t)o[t]=1/(4-o[t-1]),n[t]=(6*e[t]-(t==r-1?e[r]:0)-n[t-1])*o[t];for(a[0]=e[0],a[r]=e[r],r-1>0&&(a[r-1]=n[r-1]),t=r-2;t>0;--t)a[t]=n[t]-o[t]*a[t+1];return a},x0=e=>cr(b0(e)),g0=e=>hr(b0(e));var et=Math.sign,zo=Math.min,Z=Math.abs,ko=e=>{let t=e.length-1,r=[],o=[],n=[];for(let a=0;a<t;a++)r.push((e[a+1]-e[a])*t),o.push(a>0?.5*(e[a+1]-e[a-1])*t:void 0),n.push(a>0?(et(r[a-1])+et(r[a]))*zo(Z(r[a-1]),Z(r[a]),.5*Z(o[a])):void 0);return[r,o,n]},Lo=(e,t,r)=>{let o=e.length-1,n=o*o;return a=>{let f;a>=1?f=o-1:f=Math.max(0,Math.floor(a*o));let l=a-f/o,i=l*l,s=i*l;return(t[f]+t[f+1]-2*r[f])*n*s+(3*r[f]-2*t[f]-t[f+1])*o*i+t[f]*l+e[f]}},M0=e=>{if(e.length<3)return p(e);let t=e.length-1,[r,,o]=ko(e);return o[0]=r[0],o[t]=r[t-1],Lo(e,o,r)},v0=e=>{if(e.length<3)return p(e);let t=e.length-1,[r,o,n]=ko(e);return o[0]=(e[1]*2-e[0]*1.5-e[2]*.5)*t,o[t]=(e[t]*1.5-e[t-1]*2+e[t-2]*.5)*t,n[0]=o[0]*r[0]<=0?0:Z(o[0])>2*Z(r[0])?2*r[0]:o[0],n[t]=o[t]*r[t-1]<=0?0:Z(o[t])>2*Z(r[t-1])?2*r[t-1]:o[t],Lo(e,n,r)},T0=e=>{let t=e.length-1,[r,o,n]=ko(e);o[0]=.5*(e[1]-e[t])*t,o[t]=.5*(e[0]-e[t-1])*t;let a=(e[0]-e[t])*t,f=a;return n[0]=(et(a)+et(r[0]))*zo(Z(a),Z(r[0]),.5*Z(o[0])),n[t]=(et(r[t-1])+et(f))*zo(Z(r[t-1]),Z(f),.5*Z(o[t])),Lo(e,n,r)};var wf=(e=1)=>e===1?t=>t:t=>Math.pow(t,e),br=wf;var Xf=(e=2,t=1)=>{let r=br(t);if(e<2)return e<1?[]:[r(.5)];let o=[];for(let n=0;n<e;n++)o.push(r(n/(e-1)));return o},y0=Xf;var Sf=b("rgb"),$f=e=>{let t=Sf(e);return t!==void 0&&t.r>=0&&t.r<=1&&t.g>=0&&t.g<=1&&t.b>=0&&t.b<=1},he=$f;var Hf=b("rgb"),z0=e=>{let t=Hf(e);return t.r=Math.max(0,Math.min(t.r,1)),t.g=Math.max(0,Math.min(t.g,1)),t.b=Math.max(0,Math.min(t.b,1)),t},k0=e=>(e=Y(e),e===void 0||he(e)?e:b(e.mode)(z0(e))),L0=(e,t="lch")=>{if(e=Y(e),e===void 0||he(e))return e;let r=b(e.mode);e=b(t)(e);let o={...e,c:0};if(!he(o))return r(z0(o));let n=0,a=e.c,f=k(t).ranges.c,l=(f[1]-f[0])/Math.pow(2,13),i;for(;a-n>l;)o.c=n+(a-n)*.5,he(o)?(i=o.c,n=o.c):a=o.c;return r(he(o)?o:{...o,c:i})};var Pf=(e,t=qe(),r=o=>o)=>{let o=e.map((n,a)=>({color:r(n),i:a}));return(n,a=1,f=1/0)=>(isFinite(a)&&(a=Math.max(1,Math.min(a,o.length-1))),o.forEach(l=>{l.d=t(n,l.color)}),o.sort((l,i)=>l.d-i.d).slice(0,a).filter(l=>l.d<f).map(l=>e[l.i]))},R0=Pf;var Cf=(e,t,r)=>e===void 0||t===void 0?void 0:e+r*(t-e),_0=Cf;var Ro=e=>Math.max(e,0),_o=e=>Math.max(Math.min(e,1),0),Of=e=>{let t=1-_o(e);return[.393+.607*t,.769-.769*t,.189-.189*t,0,.349-.349*t,.686+.314*t,.168-.168*t,0,.272-.272*t,.534-.534*t,.131+.869*t,0,0,0,0,1]},qf=e=>{let t=Ro(e);return[.213+.787*t,.715-.715*t,.072-.072*t,0,.213-.213*t,.715+.285*t,.072-.072*t,0,.213-.213*t,.715-.715*t,.072+.928*t,0,0,0,0,1]},Af=e=>{let t=1-_o(e);return[.2126+.7874*t,.7152-.7152*t,.0722-.0722*t,0,.2126-.2126*t,.7152+.2848*t,.0722-.0722*t,0,.2126-.2126*t,.7152-.7152*t,.0722+.9278*t,0,0,0,0,1]},If=e=>{let t=Math.PI*e/180,r=Math.cos(t),o=Math.sin(t);return[.213+r*.787-o*.213,.715-r*.715-o*.715,.072-r*.072+o*.928,0,.213-r*.213+o*.143,.715+r*.285+o*.14,.072-r*.072-o*.283,0,.213-r*.213-o*.787,.715-r*.715+o*.715,.072+r*.928+o*.072,0,0,0,0,1]},xr=(e,t,r=!1)=>{let o=b(t),n=k(t).channels;return a=>{let f=o(a);if(!f)return;let l={mode:t},i,s=n.length;for(let d=0;d<e.length;d++)i=n[Math.floor(d/s)],f[i]!==void 0&&(l[i]=(l[i]||0)+e[d]*(f[n[d%s]]||0));if(!r)return l;let m=Y(a);return m&&l.mode!==m.mode?b(m.mode)(l):l}},w0=(e=1,t="rgb")=>{let r=Ro(e);return ce(St(r),t,!0)},X0=(e=1,t="rgb")=>{let r=Ro(e);return ce(St(r,(1-r)/2),t,!0)},S0=(e=1,t="rgb")=>xr(Of(e),t,!0),$0=(e=1,t="rgb")=>xr(qf(e),t,!0),H0=(e=1,t="rgb")=>xr(Af(e),t,!0),P0=(e=1,t="rgb")=>{let r=_o(e);return ce((o,n)=>n==="alpha"?o:_0(r,1-r,o),t,!0)},C0=(e=0,t="rgb")=>xr(If(e),t,!0);var Df=b("rgb"),Jf=[[1,0,-0,0,1,0,-0,-0,1],[.856167,.182038,-.038205,.029342,.955115,.015544,-.00288,-.001563,1.004443],[.734766,.334872,-.069637,.05184,.919198,.028963,-.004928,-.004209,1.009137],[.630323,.465641,-.095964,.069181,.890046,.040773,-.006308,-.007724,1.014032],[.539009,.579343,-.118352,.082546,.866121,.051332,-.007136,-.011959,1.019095],[.458064,.679578,-.137642,.092785,.846313,.060902,-.007494,-.016807,1.024301],[.38545,.769005,-.154455,.100526,.829802,.069673,-.007442,-.02219,1.029632],[.319627,.849633,-.169261,.106241,.815969,.07779,-.007025,-.028051,1.035076],[.259411,.923008,-.18242,.110296,.80434,.085364,-.006276,-.034346,1.040622],[.203876,.990338,-.194214,.112975,.794542,.092483,-.005222,-.041043,1.046265],[.152286,1.052583,-.204868,.114503,.786281,.099216,-.003882,-.048116,1.051998]],Ef=[[1,0,-0,0,1,0,-0,-0,1],[.866435,.177704,-.044139,.049567,.939063,.01137,-.003453,.007233,.99622],[.760729,.319078,-.079807,.090568,.889315,.020117,-.006027,.013325,.992702],[.675425,.43385,-.109275,.125303,.847755,.026942,-.00795,.018572,.989378],[.605511,.52856,-.134071,.155318,.812366,.032316,-.009376,.023176,.9862],[.547494,.607765,-.155259,.181692,.781742,.036566,-.01041,.027275,.983136],[.498864,.674741,-.173604,.205199,.754872,.039929,-.011131,.030969,.980162],[.457771,.731899,-.18967,.226409,.731012,.042579,-.011595,.034333,.977261],[.422823,.781057,-.203881,.245752,.709602,.044646,-.011843,.037423,.974421],[.392952,.82361,-.216562,.263559,.69021,.046232,-.01191,.040281,.97163],[.367322,.860646,-.227968,.280085,.672501,.047413,-.01182,.04294,.968881]],jf=[[1,0,-0,0,1,0,-0,-0,1],[.92667,.092514,-.019184,.021191,.964503,.014306,.008437,.054813,.93675],[.89572,.13333,-.02905,.029997,.9454,.024603,.013027,.104707,.882266],[.905871,.127791,-.033662,.026856,.941251,.031893,.01341,.148296,.838294],[.948035,.08949,-.037526,.014364,.946792,.038844,.010853,.193991,.795156],[1.017277,.027029,-.044306,-.006113,.958479,.047634,.006379,.248708,.744913],[1.104996,-.046633,-.058363,-.032137,.971635,.060503,.001336,.317922,.680742],[1.193214,-.109812,-.083402,-.058496,.97941,.079086,-.002346,.403492,.598854],[1.257728,-.139648,-.118081,-.078003,.975409,.102594,-.003316,.501214,.502102],[1.278864,-.125333,-.153531,-.084748,.957674,.127074,-989e-6,.601151,.399838],[1.255528,-.076749,-.178779,-.078411,.930809,.147602,.004733,.691367,.3039]],wo=(e,t)=>{let r=Math.max(0,Math.min(1,t)),o=Math.round(r/.1),n=Math.round(r%.1),a=e[o];if(n>0&&o<e.length-1){let f=e[o+1];a=a.map((l,i)=>Oe(a[i],f[i],n))}return f=>{let l=Y(f);if(l===void 0)return;let{r:i,g:s,b:m}=Df(l),d={mode:"rgb",r:a[0]*i+a[1]*s+a[2]*m,g:a[3]*i+a[4]*s+a[5]*m,b:a[6]*i+a[7]*s+a[8]*m};return l.alpha!==void 0&&(d.alpha=l.alpha),b(l.mode)(d)}},O0=(e=1)=>wo(Jf,e),q0=(e=1)=>wo(Ef,e),A0=(e=1)=>wo(jf,e);var Nf=e=>e*e*(3-2*e),I0=Nf;var Yf=e=>e*e*e*(e*(e*6-15)+10),D0=Yf;var Bf=e=>(1-Math.cos(e*Math.PI))/2,J0=Bf;function gr(e){let t=b("lrgb")(e);return .2126*t.r+.7152*t.g+.0722*t.b}function E0(e,t){let r=gr(e),o=gr(t);return(Math.max(r,o)+.05)/(Math.min(r,o)+.05)}var Zf=v(wr),Gf=v(Pr),Ff=v(Ar),Wf=v(Ir),Uf=v(Dr),Kf=v(dt),Qf=v(ut),Vf=v(Jr),el=v(Br),tl=v(Zr),rl=v(Re),ol=v(Wr),nl=v(_e),al=v(Ur),fl=v(Kr),ll=v(Qr),il=v(Vr),pl=v(to),sl=v(ro),ml=v(oo),dl=v(no),ul=v(ao),cl=v(io),hl=v(mo),bl=v(B),xl=v(ho),gl=v(bo),Ml=v(xo),vl=v(go);return F0(Tl);})();
var culori=(()=>{var Lr=Object.defineProperty;var W0=Object.getOwnPropertyDescriptor;var U0=Object.getOwnPropertyNames;var K0=Object.prototype.hasOwnProperty;var Q0=(e,t)=>{for(var r in t)Lr(e,r,{get:t[r],enumerable:!0})},V0=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of U0(t))!K0.call(e,n)&&n!==r&&Lr(e,n,{get:()=>t[n],enumerable:!(o=W0(t,n))||o.enumerable});return e};var en=e=>V0(Lr({},"__esModule",{value:!0}),e);var Si={};Q0(Si,{a98:()=>ri,average:()=>Vo,averageAngle:()=>w,averageNumber:()=>Or,blend:()=>d0,clampChroma:()=>S0,clampRgb:()=>X0,colorsNamed:()=>St,convertA98ToXyz65:()=>tt,convertCubehelixToRgb:()=>Yt,convertDlchToLab65:()=>ve,convertHsiToRgb:()=>nt,convertHslToRgb:()=>ft,convertHsvToRgb:()=>ye,convertHwbToRgb:()=>ut,convertJabToJch:()=>st,convertJabToRgb:()=>De,convertJabToXyz65:()=>Ie,convertJchToJab:()=>dt,convertLab65ToDlch:()=>Me,convertLab65ToRgb:()=>ee,convertLab65ToXyz65:()=>Ne,convertLabToLch:()=>C,convertLabToRgb:()=>je,convertLabToXyz50:()=>pe,convertLchToLab:()=>O,convertLchuvToLuv:()=>ht,convertLrgbToOklab:()=>Ye,convertLrgbToRgb:()=>j,convertLuvToLchuv:()=>ct,convertLuvToXyz50:()=>_e,convertOkhslToOklab:()=>Ze,convertOkhsvToOklab:()=>Ge,convertOklabToLrgb:()=>W,convertOklabToOkhsl:()=>Be,convertOklabToOkhsv:()=>Fe,convertOklabToRgb:()=>oe,convertP3ToXyz65:()=>gt,convertProphotoToXyz50:()=>yt,convertRec2020ToXyz65:()=>zt,convertRgbToCubehelix:()=>Et,convertRgbToHsi:()=>at,convertRgbToHsl:()=>it,convertRgbToHsv:()=>Te,convertRgbToHwb:()=>mt,convertRgbToJab:()=>qe,convertRgbToLab:()=>Ee,convertRgbToLab65:()=>te,convertRgbToLrgb:()=>D,convertRgbToOklab:()=>re,convertRgbToXyb:()=>nr,convertRgbToXyz50:()=>G,convertRgbToXyz65:()=>J,convertRgbToYiq:()=>lr,convertXybToRgb:()=>ar,convertXyz50ToLab:()=>ue,convertXyz50ToLuv:()=>Le,convertXyz50ToProphoto:()=>Mt,convertXyz50ToRgb:()=>F,convertXyz50ToXyz65:()=>ir,convertXyz65ToA98:()=>rt,convertXyz65ToJab:()=>Ae,convertXyz65ToLab65:()=>$e,convertXyz65ToP3:()=>vt,convertXyz65ToRec2020:()=>Tt,convertXyz65ToRgb:()=>E,convertXyz65ToXyz50:()=>fr,convertYiqToRgb:()=>pr,converter:()=>x,cubehelix:()=>oi,differenceCie76:()=>Fo,differenceCie94:()=>Go,differenceCiede2000:()=>Wo,differenceCmc:()=>Uo,differenceEuclidean:()=>Pe,differenceHueChroma:()=>V,differenceHueNaive:()=>Bt,differenceHueSaturation:()=>Q,differenceHyab:()=>Ko,differenceKotsarenkoRamos:()=>Qo,displayable:()=>se,dlab:()=>ni,dlch:()=>ai,easingGamma:()=>vr,easingInOutSine:()=>Z0,easingMidpoint:()=>cr,easingSmootherstep:()=>B0,easingSmoothstep:()=>Y0,filterBrightness:()=>$0,filterContrast:()=>C0,filterDeficiencyDeuter:()=>j0,filterDeficiencyProt:()=>J0,filterDeficiencyTrit:()=>E0,filterGrayscale:()=>I0,filterHueRotate:()=>D0,filterInvert:()=>q0,filterSaturate:()=>A0,filterSepia:()=>O0,fixupAlpha:()=>g,fixupHueDecreasing:()=>Jo,fixupHueIncreasing:()=>Do,fixupHueLonger:()=>qo,fixupHueShorter:()=>_,formatCss:()=>l0,formatHex:()=>p0,formatHex8:()=>u0,formatHsl:()=>s0,formatRgb:()=>m0,getMode:()=>L,hsi:()=>fi,hsl:()=>ii,hsv:()=>li,hwb:()=>pi,interpolate:()=>v0,interpolateWith:()=>_o,interpolateWithPremultipliedAlpha:()=>M0,interpolatorLinear:()=>u,interpolatorPiecewise:()=>Jt,interpolatorSplineBasis:()=>xr,interpolatorSplineBasisClosed:()=>gr,interpolatorSplineMonotone:()=>L0,interpolatorSplineMonotone2:()=>_0,interpolatorSplineMonotoneClosed:()=>R0,interpolatorSplineNatural:()=>z0,interpolatorSplineNaturalClosed:()=>k0,jab:()=>ui,jch:()=>mi,lab:()=>si,lab65:()=>di,lch:()=>ci,lch65:()=>hi,lchuv:()=>bi,lerp:()=>Se,lrgb:()=>xi,luv:()=>gi,mapAlphaDivide:()=>dr,mapAlphaMultiply:()=>sr,mapTransferGamma:()=>h0,mapTransferLinear:()=>_t,mapper:()=>me,modeA98:()=>$r,modeCubehelix:()=>Ar,modeDlab:()=>Jr,modeDlch:()=>jr,modeHsi:()=>Er,modeHsl:()=>lt,modeHsv:()=>pt,modeHwb:()=>Yr,modeJab:()=>Wr,modeJch:()=>Ur,modeLab:()=>ze,modeLab65:()=>Vr,modeLch:()=>ke,modeLch65:()=>eo,modeLchuv:()=>to,modeLrgb:()=>ro,modeLuv:()=>oo,modeOkhsl:()=>ao,modeOkhsv:()=>fo,modeOklab:()=>io,modeOklch:()=>lo,modeP3:()=>po,modeProphoto:()=>so,modeRec2020:()=>bo,modeRgb:()=>Y,modeXyb:()=>vo,modeXyz50:()=>Mo,modeXyz65:()=>yo,modeYiq:()=>To,nearest:()=>P0,okhsl:()=>vi,okhsv:()=>Mi,oklab:()=>yi,oklch:()=>Ti,p3:()=>zi,parse:()=>Ct,parseHex:()=>Nt,parseHsl:()=>Ut,parseHslLegacy:()=>Wt,parseHwb:()=>Kt,parseLab:()=>Qt,parseLch:()=>Vt,parseNamed:()=>Pt,parseOklab:()=>tr,parseOklch:()=>rr,parseRgb:()=>qt,parseRgbLegacy:()=>$t,parseTransparent:()=>Dt,prophoto:()=>ki,random:()=>c0,rec2020:()=>Li,removeParser:()=>Ao,rgb:()=>_i,round:()=>ur,samples:()=>w0,serializeHex:()=>mr,serializeHex8:()=>zo,serializeHsl:()=>Lo,serializeRgb:()=>ko,useMode:()=>y,useParser:()=>Rr,wcagContrast:()=>F0,wcagLuminance:()=>yr,xyb:()=>Ri,xyz50:()=>wi,xyz65:()=>Hi,yiq:()=>Xi});var tn=(e,t)=>{if(typeof e=="number"){if(t===3)return{mode:"rgb",r:(e>>8&15|e>>4&240)/255,g:(e>>4&15|e&240)/255,b:(e&15|e<<4&240)/255};if(t===4)return{mode:"rgb",r:(e>>12&15|e>>8&240)/255,g:(e>>8&15|e>>4&240)/255,b:(e>>4&15|e&240)/255,alpha:(e&15|e<<4&240)/255};if(t===6)return{mode:"rgb",r:(e>>16&255)/255,g:(e>>8&255)/255,b:(e&255)/255};if(t===8)return{mode:"rgb",r:(e>>24&255)/255,g:(e>>16&255)/255,b:(e>>8&255)/255,alpha:(e&255)/255}}},Xt=tn;var rn={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},St=rn;var on=e=>Xt(St[e.toLowerCase()],6),Pt=on;var nn=/^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i,an=e=>{let t;return(t=e.match(nn))?Xt(parseInt(t[1],16),t[1].length):void 0},Nt=an;var $="([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)",Di=`(?:${$}|none)`,be=`${$}%`,Ji=`(?:${$}%|none)`,Ve=`(?:${$}%|${$})`,fn=`(?:${$}%|${$}|none)`,Co=`(?:${$}(deg|grad|rad|turn)|${$})`,ji=`(?:${$}(deg|grad|rad|turn)|${$}|none)`,fe="\\s*,\\s*";var Ei=new RegExp("^"+fn+"$");var ln=new RegExp(`^rgba?\\(\\s*${$}${fe}${$}${fe}${$}\\s*(?:,\\s*${Ve}\\s*)?\\)$`),pn=new RegExp(`^rgba?\\(\\s*${be}${fe}${be}${fe}${be}\\s*(?:,\\s*${Ve}\\s*)?\\)$`),un=e=>{let t={mode:"rgb"},r;if(r=e.match(ln))r[1]!==void 0&&(t.r=r[1]/255),r[2]!==void 0&&(t.g=r[2]/255),r[3]!==void 0&&(t.b=r[3]/255);else if(r=e.match(pn))r[1]!==void 0&&(t.r=r[1]/100),r[2]!==void 0&&(t.g=r[2]/100),r[3]!==void 0&&(t.b=r[3]/100);else return;return r[4]!==void 0?t.alpha=r[4]/100:r[5]!==void 0&&(t.alpha=+r[5]),t},$t=un;var mn=(e,t)=>e===void 0?void 0:typeof e!="object"?Ct(e):e.mode!==void 0?e:t?{...e,mode:t}:void 0,q=mn;var sn=(e="rgb")=>t=>(t=q(t,e))!==void 0?t.mode===e?t:U[t.mode][e]?U[t.mode][e](t):e==="rgb"?U[t.mode].rgb(t):U.rgb[e](U[t.mode].rgb(t)):void 0,x=sn;var U={},Oo={},xe=[],_r={},dn=e=>e,y=e=>(U[e.mode]={...U[e.mode],...e.toMode},Object.keys(e.fromMode||{}).forEach(t=>{U[t]||(U[t]={}),U[t][e.mode]=e.fromMode[t]}),e.ranges||(e.ranges={}),e.difference||(e.difference={}),e.channels.forEach(t=>{if(e.ranges[t]===void 0&&(e.ranges[t]=[0,1]),!e.interpolate[t])throw new Error(`Missing interpolator for: ${t}`);typeof e.interpolate[t]=="function"&&(e.interpolate[t]={use:e.interpolate[t]}),e.interpolate[t].fixup||(e.interpolate[t].fixup=dn)}),Oo[e.mode]=e,(e.parse||[]).forEach(t=>{typeof t=="function"?Rr(t):typeof t=="string"&&(_r[t]=e.mode)}),x(e.mode)),L=e=>Oo[e],Rr=e=>{xe.indexOf(e)<0&&xe.push(e)},Ao=e=>{let t=xe.indexOf(e);t>0&&xe.splice(t,1)};var wr=/[^\x00-\x7F]|[a-zA-Z_]/,cn=/[^\x00-\x7F]|[-\w]/,p={Function:"function",Ident:"ident",Number:"number",Percentage:"percentage",ParenClose:")",None:"none",Hue:"hue",Alpha:"alpha"};function Ot(e){let t=e[e._i],r=e[e._i+1];return t==="-"||t==="+"?/\d/.test(r)||r==="."&&/\d/.test(e[e._i+2]):t==="."?/\d/.test(r):/\d/.test(t)}function Hr(e){if(e._i>=e.length)return!1;let t=e[e._i];if(t.match(wr))return!0;if(t==="-"){if(e.length-e._i<2)return!1;let r=e[e._i+1];return!!(r.match(wr)||r==="-")}return!1}var hn={deg:1,rad:180/Math.PI,grad:9/10,turn:360};function et(e){let t="";if(/[+-]/.test(e[e._i])&&(t+=e[e._i++]),t+=At(e),e[e._i]==="."&&/\d/.test(e[e._i+1])&&(t+=e[e._i++]+At(e)),/e/i.test(e[e._i])&&(/[+-]/.test(e[e._i+1])&&/\d/.test(e[e._i+2])?t+=e[e._i++]+e[e._i++]+At(e):/\d/.test(e[e._i+1])&&(t+=e[e._i++]+At(e))),Hr(e)){let r=It(e);return/deg|rad|turn|grad/.test(r)?{type:p.Hue,value:t*hn[r]}:void 0}return e[e._i]==="%"?(e._i++,{type:p.Percentage,value:+t}):{type:p.Number,value:+t}}function At(e){let t="";for(;/\d/.test(e[e._i]);)t+=e[e._i++];return t}function It(e){let t="";for(;e._i<e.length&&e[e._i].match(cn);)t+=e[e._i++];return t}function bn(e){let t=It(e);return e[e._i]==="("?(e._i++,{type:p.Function,value:t}):t==="none"?{type:p.None,value:void 0}:{type:p.Ident,value:t}}function xn(e=""){let t=e.trim().split("");t._i=0;let r=[],o;for(;t._i<t.length;){if(o=t[t._i++],o===`
`||o===" "||o===" "){for(;t._i<t.length&&(t[t._i]===`
`||t[t._i]===" "||t[t._i]===" ");)t._i++;continue}if(o===",")return;if(o===")"){r.push({type:p.ParenClose});continue}if(o==="+"){if(Ot(t)){t._i--,r.push(et(t));continue}return}if(o==="-"){if(Ot(t)){t._i--,r.push(et(t));continue}else if(Hr(t)){t._i--,r.push({type:p.Ident,value:It(t)});continue}return}if(o==="."){if(Ot(t)){t._i--,r.push(et(t));continue}return}if(o==="/"){for(;t._i<t.length&&(t[t._i]===`
`||t[t._i]===" "||t[t._i]===" ");)t._i++;let n;if(Ot(t)&&(n=et(t),n.type!==p.Hue)){r.push({type:p.Alpha,value:n});continue}if(Hr(t)&&It(t)==="none"){r.push({type:p.Alpha,value:{type:p.None,value:void 0}});continue}return}if(o.match(/\d/)){t._i--,r.push(et(t));continue}if(o.match(wr)){t._i--,r.push(bn(t));continue}return}return r}function gn(e){e._i=0;let t=e[e._i++];if(!t||t.type!==p.Function||t.value!=="color"||(t=e[e._i++],t.type!==p.Ident))return;let r=_r[t.value];if(!r)return;let o={mode:r},n=Io(e,!1);if(!n)return;let a=L(r).channels;for(let f=0,i;f<a.length;f++)i=n[f],i.type!==p.None&&(o[a[f]]=i.type===p.Number?i.value:i.value/100);return o}function Io(e,t){let r=[],o;for(;e._i<e.length;){if(o=e[e._i++],o.type===p.None||o.type===p.Number||o.type===p.Alpha||o.type===p.Percentage||o.type===p.Hue){r.push(o);continue}if(o.type===p.ParenClose){if(e._i<e.length)return;continue}return}if(!(r.length<3||r.length>4)){if(r.length===4){if(r[3].type!==p.Alpha)return;r[3]=r[3].value}return r.length===3&&r.push({type:p.None,value:void 0}),r.every(n=>n.type!==p.Alpha)?r:void 0}}function vn(e,t){e._i=0;let r=e[e._i++];if(!r||r.type!==p.Function)return;let o=Io(e,t);if(o)return o.unshift(r.value),o}var Mn=e=>{if(typeof e!="string")return;let t=xn(e),r=t?vn(t,!0):void 0,o,n=0,a=xe.length;for(;n<a;)if((o=xe[n++](e,r))!==void 0)return o;return t?gn(t):void 0},Ct=Mn;function yn(e,t){if(!t||t[0]!=="rgb"&&t[0]!=="rgba")return;let r={mode:"rgb"},[,o,n,a,f]=t;if(!(o.type===p.Hue||n.type===p.Hue||a.type===p.Hue))return o.type!==p.None&&(r.r=o.type===p.Number?o.value/255:o.value/100),n.type!==p.None&&(r.g=n.type===p.Number?n.value/255:n.value/100),a.type!==p.None&&(r.b=a.type===p.Number?a.value/255:a.value/100),f.type!==p.None&&(r.alpha=f.type===p.Number?f.value:f.value/100),r}var qt=yn;var Tn=e=>e==="transparent"?{mode:"rgb",r:0,g:0,b:0,alpha:0}:void 0,Dt=Tn;var zn=(e,t,r)=>e+r*(t-e),Se=zn;var kn=e=>{let t=[];for(let r=0;r<e.length-1;r++){let o=e[r],n=e[r+1];o===void 0&&n===void 0?t.push(void 0):o!==void 0&&n!==void 0?t.push([o,n]):t.push(o!==void 0?[o,o]:[n,n])}return t},Jt=e=>t=>{let r=kn(t);return o=>{let n=o*r.length,a=o>=1?r.length-1:Math.max(Math.floor(n),0),f=r[a];return f===void 0?void 0:e(f[0],f[1],n-a)}};var u=Jt(Se);var g=e=>{let t=!1,r=e.map(o=>o!==void 0?(t=!0,o):1);return t?r:e};var Ln={mode:"rgb",channels:["r","g","b","alpha"],parse:[qt,Nt,$t,Pt,Dt,"srgb"],serialize:"srgb",interpolate:{r:u,g:u,b:u,alpha:{use:u,fixup:g}}},Y=Ln;var Xr=e=>Math.pow(Math.abs(e),2.19921875)*Math.sign(e),_n=e=>{let t=Xr(e.r),r=Xr(e.g),o=Xr(e.b),n={mode:"xyz65",x:.5766690429101305*t+.1855582379065463*r+.1882286462349947*o,y:.297344975250536*t+.6273635662554661*r+.0752914584939979*o,z:.0270313613864123*t+.0706888525358272*r+.9913375368376386*o};return e.alpha!==void 0&&(n.alpha=e.alpha),n},tt=_n;var Sr=e=>Math.pow(Math.abs(e),.4547069271758437)*Math.sign(e),Rn=({x:e,y:t,z:r,alpha:o})=>{let n={mode:"a98",r:Sr(e*2.0415879038107465-t*.5650069742788597-.3447313507783297*r),g:Sr(e*-.9692436362808798+t*1.8759675015077206+.0415550574071756*r),b:Sr(e*.0134442806320312-t*.1183623922310184+1.0151749943912058*r)};return o!==void 0&&(n.alpha=o),n},rt=Rn;var Pr=e=>{let t=Math.abs(e);return t<.04045?e/12.92:(Math.sign(e)||1)*Math.pow((t+.055)/1.055,2.4)},wn=({r:e,g:t,b:r,alpha:o})=>{let n={mode:"lrgb",r:Pr(e),g:Pr(t),b:Pr(r)};return o!==void 0&&(n.alpha=o),n},D=wn;var Hn=e=>{let{r:t,g:r,b:o,alpha:n}=D(e),a={mode:"xyz65",x:.4123907992659593*t+.357584339383878*r+.1804807884018343*o,y:.2126390058715102*t+.715168678767756*r+.0721923153607337*o,z:.0193308187155918*t+.119194779794626*r+.9505321522496607*o};return n!==void 0&&(a.alpha=n),a},J=Hn;var Nr=e=>{let t=Math.abs(e);return t>.0031308?(Math.sign(e)||1)*(1.055*Math.pow(t,.4166666666666667)-.055):e*12.92},Xn=({r:e,g:t,b:r,alpha:o},n="rgb")=>{let a={mode:n,r:Nr(e),g:Nr(t),b:Nr(r)};return o!==void 0&&(a.alpha=o),a},j=Xn;var Sn=({x:e,y:t,z:r,alpha:o})=>{let n=j({r:e*3.2409699419045226-t*1.537383177570094-.4986107602930034*r,g:e*-.9692436362808796+t*1.8759675015077204+.0415550574071756*r,b:e*.0556300796969936-t*.2039769588889765+1.0569715142428784*r});return o!==void 0&&(n.alpha=o),n},E=Sn;var Pn={...Y,mode:"a98",parse:["a98-rgb"],serialize:"a98-rgb",fromMode:{rgb:e=>rt(J(e)),xyz65:rt},toMode:{rgb:e=>E(tt(e)),xyz65:tt}},$r=Pn;var Nn=e=>(e=e%360)<0?e+360:e,T=Nn;var jt=(e,t)=>e.map((r,o,n)=>{if(r===void 0)return r;let a=T(r);return o===0||e[o-1]===void 0?a:t(a-T(n[o-1]))}).reduce((r,o)=>!r.length||o===void 0||r[r.length-1]===void 0?(r.push(o),r):(r.push(o+r[r.length-1]),r),[]),_=e=>jt(e,t=>Math.abs(t)<=180?t:t-360*Math.sign(t)),qo=e=>jt(e,t=>Math.abs(t)>=180||t===0?t:t-360*Math.sign(t)),Do=e=>jt(e,t=>t>=0?t:t+360),Jo=e=>jt(e,t=>t<=0?t:t-360);var R=[-.14861,1.78277,-.29227,-.90649,1.97294,0],jo=Math.PI/180,Eo=180/Math.PI;var Yo=R[3]*R[4],Bo=R[1]*R[4],Zo=R[1]*R[2]-R[0]*R[3],$n=({r:e,g:t,b:r,alpha:o})=>{let n=(Zo*r+e*Yo-t*Bo)/(Zo+Yo-Bo),a=r-n,f=(R[4]*(t-n)-R[2]*a)/R[3],i={mode:"cubehelix",l:n,s:n===0||n===1?void 0:Math.sqrt(a*a+f*f)/(R[4]*n*(1-n))};return i.s&&(i.h=Math.atan2(f,a)*Eo-120),o!==void 0&&(i.alpha=o),i},Et=$n;var Cn=({h:e,s:t,l:r,alpha:o})=>{let n={mode:"rgb"};e=(e===void 0?0:e+120)*jo;let a=t===void 0?0:t*r*(1-r),f=Math.cos(e),i=Math.sin(e);return n.r=r+a*(R[0]*f+R[1]*i),n.g=r+a*(R[2]*f+R[3]*i),n.b=r+a*(R[4]*f+R[5]*i),o!==void 0&&(n.alpha=o),n},Yt=Cn;var Q=(e,t)=>{if(e.h===void 0||t.h===void 0||!e.s||!t.s)return 0;let r=T(e.h),o=T(t.h),n=Math.sin((o-r+360)/2*Math.PI/180);return 2*Math.sqrt(e.s*t.s)*n},Bt=(e,t)=>{if(e.h===void 0||t.h===void 0)return 0;let r=T(e.h),o=T(t.h);return Math.abs(o-r)>180?r-(o-360*Math.sign(o-r)):o-r},V=(e,t)=>{if(e.h===void 0||t.h===void 0||!e.c||!t.c)return 0;let r=T(e.h),o=T(t.h),n=Math.sin((o-r+360)/2*Math.PI/180);return 2*Math.sqrt(e.c*t.c)*n},Pe=(e="rgb",t=[1,1,1,0])=>{let r=L(e),o=r.channels,n=r.difference,a=x(e);return(f,i)=>{let l=a(f),m=a(i);return Math.sqrt(o.reduce((s,d,b)=>{let c=n[d]?n[d](l,m):l[d]-m[d];return s+(t[b]||0)*Math.pow(isNaN(c)?0:c,2)},0))}},Fo=()=>Pe("lab65"),Go=(e=1,t=.045,r=.015)=>{let o=x("lab65");return(n,a)=>{let f=o(n),i=o(a),l=f.l,m=f.a,s=f.b,d=Math.sqrt(m*m+s*s),b=i.l,c=i.a,h=i.b,v=Math.sqrt(c*c+h*h),M=Math.pow(l-b,2),k=Math.pow(d-v,2),H=Math.pow(m-c,2)+Math.pow(s-h,2)-k;return Math.sqrt(M/Math.pow(e,2)+k/Math.pow(1+t*d,2)+H/Math.pow(1+r*d,2))}},Wo=(e=1,t=1,r=1)=>{let o=x("lab65");return(n,a)=>{let f=o(n),i=o(a),l=f.l,m=f.a,s=f.b,d=Math.sqrt(m*m+s*s),b=i.l,c=i.a,h=i.b,v=Math.sqrt(c*c+h*h),M=(d+v)/2,k=.5*(1-Math.sqrt(Math.pow(M,7)/(Math.pow(M,7)+Math.pow(25,7)))),H=m*(1+k),X=c*(1+k),S=Math.sqrt(H*H+s*s),P=Math.sqrt(X*X+h*h),N=Math.abs(H)+Math.abs(s)===0?0:Math.atan2(s,H);N+=(N<0)*2*Math.PI;let A=Math.abs(X)+Math.abs(h)===0?0:Math.atan2(h,X);A+=(A<0)*2*Math.PI;let de=b-l,ae=P-S,Z=S*P===0?0:A-N;Z-=(Z>Math.PI)*2*Math.PI,Z+=(Z<-Math.PI)*2*Math.PI;let K=2*Math.sqrt(S*P)*Math.sin(Z/2),ce=(l+b)/2,he=(S+P)/2,I;S*P===0?I=N+A:(I=(N+A)/2,I-=(Math.abs(N-A)>Math.PI)*Math.PI,I+=(I<0)*2*Math.PI);let Rt=Math.pow(ce-50,2),wt=1-.17*Math.cos(I-Math.PI/6)+.24*Math.cos(2*I)+.32*Math.cos(3*I+Math.PI/30)-.2*Math.cos(4*I-63*Math.PI/180),Ue=1+.015*Rt/Math.sqrt(20+Rt),Ke=1+.045*he,Xe=1+.015*he*wt,Tr=30*Math.PI/180*Math.exp(-1*Math.pow((180/Math.PI*I-275)/25,2)),Ht=2*Math.sqrt(Math.pow(he,7)/(Math.pow(he,7)+Math.pow(25,7))),Qe=-1*Math.sin(2*Tr)*Ht;return Math.sqrt(Math.pow(de/(e*Ue),2)+Math.pow(ae/(t*Ke),2)+Math.pow(K/(r*Xe),2)+Qe*ae/(t*Ke)*K/(r*Xe))}},Uo=(e=1,t=1)=>{let r=x("lab65");return(o,n)=>{let a=r(o),f=a.l,i=a.a,l=a.b,m=Math.sqrt(i*i+l*l),s=Math.atan2(l,i);s=s+2*Math.PI*(s<0);let d=r(n),b=d.l,c=d.a,h=d.b,v=Math.sqrt(c*c+h*h),M=Math.pow(f-b,2),k=Math.pow(m-v,2),H=Math.pow(i-c,2)+Math.pow(l-h,2)-k,X=Math.sqrt(Math.pow(m,4)/(Math.pow(m,4)+1900)),S=s>=164/180*Math.PI&&s<=345/180*Math.PI?.56+Math.abs(.2*Math.cos(s+168/180*Math.PI)):.36+Math.abs(.4*Math.cos(s+35/180*Math.PI)),P=f<16?.511:.040975*f/(1+.01765*f),N=.0638*m/(1+.0131*m)+.638,A=N*(X*S+1-X);return Math.sqrt(M/Math.pow(e*P,2)+k/Math.pow(t*N,2)+H/Math.pow(A,2))}},Ko=()=>{let e=x("lab65");return(t,r)=>{let o=e(t),n=e(r),a=o.l-n.l,f=o.a-n.a,i=o.b-n.b;return Math.abs(a)+Math.sqrt(f*f+i*i)}},Qo=()=>Pe("yiq",[.5053,.299,.1957]);var w=e=>{let t=e.reduce((r,o)=>{if(o!==void 0){let n=o*Math.PI/180;r.sin+=Math.sin(n),r.cos+=Math.cos(n)}return r},{sin:0,cos:0});return Math.atan2(t.sin,t.cos)*180/Math.PI},Or=e=>{let t=e.filter(r=>r!==void 0);return t.length?t.reduce((r,o)=>r+o,0)/t.length:void 0},Cr=e=>typeof e=="function";function Vo(e,t="rgb",r){let o=L(t),n=e.map(x(t));return o.channels.reduce((a,f)=>{let i=n.map(l=>l[f]).filter(l=>l!==void 0);if(i.length){let l;Cr(r)?l=r:r&&Cr(r[f])?l=r[f]:o.average&&Cr(o.average[f])?l=o.average[f]:l=Or,a[f]=l(i,f)}return a},{mode:t})}var On={mode:"cubehelix",channels:["h","s","l","alpha"],parse:["--cubehelix"],serialize:"--cubehelix",ranges:{h:[0,360],s:[0,4.614],l:[0,1]},fromMode:{rgb:Et},toMode:{rgb:Yt},interpolate:{h:{use:u,fixup:_},s:u,l:u,alpha:{use:u,fixup:g}},difference:{h:Q},average:{h:w}},Ar=On;var An=({l:e,a:t,b:r,alpha:o},n="lch")=>{let a=Math.sqrt(t*t+r*r),f={mode:n,l:e,c:a};return a&&(f.h=T(Math.atan2(r,t)*180/Math.PI)),o!==void 0&&(f.alpha=o),f},C=An;var In=({l:e,c:t,h:r,alpha:o},n="lab")=>{let a={mode:n,l:e,a:t?t*Math.cos(r/180*Math.PI):0,b:t?t*Math.sin(r/180*Math.PI):0};return o!==void 0&&(a.alpha=o),a},O=In;var Zt=Math.pow(29,3)/Math.pow(3,3),Ft=Math.pow(6,3)/Math.pow(29,3);var z={X:.9642956764295677,Y:1,Z:.8251046025104602},ie={X:.3127/.329,Y:1,Z:(1-.3127-.329)/.329},fp=Math.pow(29,3)/Math.pow(3,3),ip=Math.pow(6,3)/Math.pow(29,3);var Ir=e=>Math.pow(e,3)>Ft?Math.pow(e,3):(116*e-16)/Zt,qn=({l:e,a:t,b:r,alpha:o})=>{let n=(e+16)/116,a=t/500+n,f=n-r/200,i={mode:"xyz65",x:Ir(a)*ie.X,y:Ir(n)*ie.Y,z:Ir(f)*ie.Z};return o!==void 0&&(i.alpha=o),i},Ne=qn;var Dn=e=>E(Ne(e)),ee=Dn;var qr=e=>e>Ft?Math.cbrt(e):(Zt*e+16)/116,Jn=({x:e,y:t,z:r,alpha:o})=>{let n=qr(e/ie.X),a=qr(t/ie.Y),f=qr(r/ie.Z),i={mode:"lab65",l:116*a-16,a:500*(n-a),b:200*(a-f)};return o!==void 0&&(i.alpha=o),i},$e=Jn;var jn=e=>{let t=$e(J(e));return e.r===e.b&&e.b===e.g&&(t.a=t.b=0),t},te=jn;var ge=.14444444444444443*Math.PI,Ce=Math.cos(ge),Oe=Math.sin(ge),Gt=100/Math.log(139/100);var En=({l:e,c:t,h:r,alpha:o})=>{let n={mode:"lab65",l:(Math.exp(e*1/Gt)-1)/.0039};if(r===void 0)n.a=n.b=0;else{let a=(Math.exp(.0435*t*1*1)-1)/.075,f=a*Math.cos(r/180*Math.PI-ge),i=a*Math.sin(r/180*Math.PI-ge);n.a=f*Ce-i/.83*Oe,n.b=f*Oe+i/.83*Ce}return o!==void 0&&(n.alpha=o),n},ve=En;var Yn=({l:e,a:t,b:r,alpha:o})=>{let n=t*Ce+r*Oe,a=.83*(r*Ce-t*Oe),f=Math.sqrt(n*n+a*a),i={mode:"dlch",l:Gt/1*Math.log(1+.0039*e),c:Math.log(1+.075*f)/(.0435*1*1)};return i.c&&(i.h=T((Math.atan2(a,n)+ge)/Math.PI*180)),o!==void 0&&(i.alpha=o),i},Me=Yn;var e0=e=>ve(C(e,"dlch")),t0=e=>O(Me(e),"dlab"),Bn={mode:"dlab",parse:["--din99o-lab"],serialize:"--din99o-lab",toMode:{lab65:e0,rgb:e=>ee(e0(e))},fromMode:{lab65:t0,rgb:e=>t0(te(e))},channels:["l","a","b","alpha"],ranges:{l:[0,100],a:[-40.09,45.501],b:[-40.469,44.344]},interpolate:{l:u,a:u,b:u,alpha:{use:u,fixup:g}}},Jr=Bn;var Zn={mode:"dlch",parse:["--din99o-lch"],serialize:"--din99o-lch",toMode:{lab65:ve,dlab:e=>O(e,"dlab"),rgb:e=>ee(ve(e))},fromMode:{lab65:Me,dlab:e=>C(e,"dlch"),rgb:e=>Me(te(e))},channels:["l","c","h","alpha"],ranges:{l:[0,100],c:[0,51.484],h:[0,360]},interpolate:{l:u,c:u,h:{use:u,fixup:_},alpha:{use:u,fixup:g}},difference:{h:V},average:{h:w}},jr=Zn;function nt({h:e,s:t,i:r,alpha:o}){e=T(e);let n=Math.abs(e/60%2-1),a;switch(Math.floor(e/60)){case 0:a={r:r*(1+t*(3/(2-n)-1)),g:r*(1+t*(3*(1-n)/(2-n)-1)),b:r*(1-t)};break;case 1:a={r:r*(1+t*(3*(1-n)/(2-n)-1)),g:r*(1+t*(3/(2-n)-1)),b:r*(1-t)};break;case 2:a={r:r*(1-t),g:r*(1+t*(3/(2-n)-1)),b:r*(1+t*(3*(1-n)/(2-n)-1))};break;case 3:a={r:r*(1-t),g:r*(1+t*(3*(1-n)/(2-n)-1)),b:r*(1+t*(3/(2-n)-1))};break;case 4:a={r:r*(1+t*(3*(1-n)/(2-n)-1)),g:r*(1-t),b:r*(1+t*(3/(2-n)-1))};break;case 5:a={r:r*(1+t*(3/(2-n)-1)),g:r*(1-t),b:r*(1+t*(3*(1-n)/(2-n)-1))};break;default:a={r:r*(1-t),g:r*(1-t),b:r*(1-t)}}return a.mode="rgb",o!==void 0&&(a.alpha=o),a}function at({r:e,g:t,b:r,alpha:o}){let n=Math.max(e,t,r),a=Math.min(e,t,r),f={mode:"hsi",s:e+t+r===0?0:1-3*a/(e+t+r),i:(e+t+r)/3};return n-a!==0&&(f.h=(n===e?(t-r)/(n-a)+(t<r)*6:n===t?(r-e)/(n-a)+2:(e-t)/(n-a)+4)*60),o!==void 0&&(f.alpha=o),f}var Fn={mode:"hsi",toMode:{rgb:nt},parse:["--hsi"],serialize:"--hsi",fromMode:{rgb:at},channels:["h","s","i","alpha"],ranges:{h:[0,360]},interpolate:{h:{use:u,fixup:_},s:u,i:u,alpha:{use:u,fixup:g}},difference:{h:Q},average:{h:w}},Er=Fn;function ft({h:e,s:t,l:r,alpha:o}){e=T(e);let n=r+t*(r<.5?r:1-r),a=n-(n-r)*2*Math.abs(e/60%2-1),f;switch(Math.floor(e/60)){case 0:f={r:n,g:a,b:2*r-n};break;case 1:f={r:a,g:n,b:2*r-n};break;case 2:f={r:2*r-n,g:n,b:a};break;case 3:f={r:2*r-n,g:a,b:n};break;case 4:f={r:a,g:2*r-n,b:n};break;case 5:f={r:n,g:2*r-n,b:a};break;default:f={r:2*r-n,g:2*r-n,b:2*r-n}}return f.mode="rgb",o!==void 0&&(f.alpha=o),f}function it({r:e,g:t,b:r,alpha:o}){let n=Math.max(e,t,r),a=Math.min(e,t,r),f={mode:"hsl",s:n===a?0:(n-a)/(1-Math.abs(n+a-1)),l:.5*(n+a)};return n-a!==0&&(f.h=(n===e?(t-r)/(n-a)+(t<r)*6:n===t?(r-e)/(n-a)+2:(e-t)/(n-a)+4)*60),o!==void 0&&(f.alpha=o),f}var Gn=(e,t)=>{switch(t){case"deg":return+e;case"rad":return e/Math.PI*180;case"grad":return e/10*9;case"turn":return e*360}},r0=Gn;var Wn=new RegExp(`^hsla?\\(\\s*${Co}${fe}${be}${fe}${be}\\s*(?:,\\s*${Ve}\\s*)?\\)$`),Un=e=>{let t=e.match(Wn);if(!t)return;let r={mode:"hsl"};return t[3]!==void 0?r.h=+t[3]:t[1]!==void 0&&t[2]!==void 0&&(r.h=r0(t[1],t[2])),t[4]!==void 0&&(r.s=Math.min(Math.max(0,t[4]/100),1)),t[5]!==void 0&&(r.l=Math.min(Math.max(0,t[5]/100),1)),t[6]!==void 0?r.alpha=t[6]/100:t[7]!==void 0&&(r.alpha=+t[7]),r},Wt=Un;function Kn(e,t){if(!t||t[0]!=="hsl"&&t[0]!=="hsla")return;let r={mode:"hsl"},[,o,n,a,f]=t;if(o.type!==p.None){if(o.type===p.Percentage)return;r.h=o.value}if(n.type!==p.None){if(n.type===p.Hue)return;r.s=n.type===p.Number?n.value:n.value/100}if(a.type!==p.None){if(a.type===p.Hue)return;r.l=a.type===p.Number?a.value:a.value/100}return f.type!==p.None&&(r.alpha=f.type===p.Number?f.value:f.value/100),r}var Ut=Kn;var Qn={mode:"hsl",toMode:{rgb:ft},fromMode:{rgb:it},channels:["h","s","l","alpha"],ranges:{h:[0,360]},parse:[Ut,Wt],serialize:e=>`hsl(${e.h||0} ${e.s!==void 0?e.s*100+"%":"none"} ${e.l!==void 0?e.l*100+"%":"none"}${e.alpha<1?` / ${e.alpha}`:""})`,interpolate:{h:{use:u,fixup:_},s:u,l:u,alpha:{use:u,fixup:g}},difference:{h:Q},average:{h:w}},lt=Qn;function ye({h:e,s:t,v:r,alpha:o}){e=T(e);let n=Math.abs(e/60%2-1),a;switch(Math.floor(e/60)){case 0:a={r,g:r*(1-t*n),b:r*(1-t)};break;case 1:a={r:r*(1-t*n),g:r,b:r*(1-t)};break;case 2:a={r:r*(1-t),g:r,b:r*(1-t*n)};break;case 3:a={r:r*(1-t),g:r*(1-t*n),b:r};break;case 4:a={r:r*(1-t*n),g:r*(1-t),b:r};break;case 5:a={r,g:r*(1-t),b:r*(1-t*n)};break;default:a={r:r*(1-t),g:r*(1-t),b:r*(1-t)}}return a.mode="rgb",o!==void 0&&(a.alpha=o),a}function Te({r:e,g:t,b:r,alpha:o}){let n=Math.max(e,t,r),a=Math.min(e,t,r),f={mode:"hsv",s:n===0?0:1-a/n,v:n};return n-a!==0&&(f.h=(n===e?(t-r)/(n-a)+(t<r)*6:n===t?(r-e)/(n-a)+2:(e-t)/(n-a)+4)*60),o!==void 0&&(f.alpha=o),f}var Vn={mode:"hsv",toMode:{rgb:ye},parse:["--hsv"],serialize:"--hsv",fromMode:{rgb:Te},channels:["h","s","v","alpha"],ranges:{h:[0,360]},interpolate:{h:{use:u,fixup:_},s:u,v:u,alpha:{use:u,fixup:g}},difference:{h:Q},average:{h:w}},pt=Vn;function ut({h:e,w:t,b:r,alpha:o}){if(t+r>1){let n=t+r;t/=n,r/=n}return ye({h:e,s:r===1?1:1-t/(1-r),v:1-r,alpha:o})}function mt(e){let t=Te(e);if(t===void 0)return;let r={mode:"hwb",w:(1-t.s)*t.v,b:1-t.v};return t.h!==void 0&&(r.h=t.h),t.alpha!==void 0&&(r.alpha=t.alpha),r}function ea(e,t){if(!t||t[0]!=="hwb")return;let r={mode:"hwb"},[,o,n,a,f]=t;if(o.type!==p.None){if(o.type===p.Percentage)return;r.h=o.value}if(n.type!==p.None){if(n.type===p.Hue)return;r.w=n.type===p.Number?n.value:n.value/100}if(a.type!==p.None){if(a.type===p.Hue)return;r.b=a.type===p.Number?a.value:a.value/100}return f.type!==p.None&&(r.alpha=f.type===p.Number?f.value:f.value/100),r}var Kt=ea;var ta={mode:"hwb",toMode:{rgb:ut},fromMode:{rgb:mt},channels:["h","w","b","alpha"],ranges:{h:[0,360]},parse:[Kt],serialize:e=>`hwb(${e.h||0} ${e.w*100}% ${e.b*100}%${e.alpha<1?` / ${e.alpha}`:""})`,interpolate:{h:{use:u,fixup:_},w:u,b:u,alpha:{use:u,fixup:g}},difference:{h:Bt},average:{h:w}},Yr=ta;var ra=.1593017578125,oa=134.03437499999998,na=.8359375,aa=18.8515625,fa=18.6875,ia=16295499532821565e-27,Br=e=>{let t=Math.pow(e/1e4,ra);return Math.pow((na+aa*t)/(1+fa*t),oa)||0},Zr=e=>Math.max(e*203,0),la=({x:e,y:t,z:r,alpha:o})=>{e=Zr(e),t=Zr(t),r=Zr(r);let n=1.15*e-.15*r,a=.66*t+.34*e,f=Br(.41478972*n+.579999*a+.014648*r),i=Br(-.20151*n+1.120649*a+.0531008*r),l=Br(-.0166008*n+.2648*a+.6684799*r),m=(f+i)/2,s={mode:"jab",j:.44*m/(1-.56*m)-ia,a:3.524*f-4.066708*i+.542708*l,b:.199076*f+1.096799*i-1.295875*l};return o!==void 0&&(s.alpha=o),s},Ae=la;var pa=.1593017578125,ua=134.03437499999998,ma=.8359375,sa=18.8515625,da=18.6875,o0=16295499532821565e-27,Fr=e=>{let t=Math.pow(e,1/ua);return 1e4*Math.pow((ma-t)/(da*t-sa),1/pa)||0},Gr=e=>e/203,ca=({j:e,a:t,b:r,alpha:o})=>{let n=(e+o0)/(.44+.56*(e+o0)),a=Fr(n+.13860504*t+.058047316*r),f=Fr(n-.13860504*t-.058047316*r),i=Fr(n-.096019242*t-.8118919*r),l={mode:"xyz65",x:Gr(1.661373024652174*a-.914523081304348*f+.23136208173913045*i),y:Gr(-.3250758611844533*a+1.571847026732543*f-.21825383453227928*i),z:Gr(-.090982811*a-.31272829*f+1.5227666*i)};return o!==void 0&&(l.alpha=o),l},Ie=ca;var ha=e=>{let t=Ae(J(e));return e.r===e.b&&e.b===e.g&&(t.a=t.b=0),t},qe=ha;var ba=e=>E(Ie(e)),De=ba;var xa={mode:"jab",channels:["j","a","b","alpha"],parse:["--jzazbz"],serialize:"--jzazbz",fromMode:{rgb:qe,xyz65:Ae},toMode:{rgb:De,xyz65:Ie},ranges:{j:[0,.222],a:[-.109,.129],b:[-.185,.134]},interpolate:{j:u,a:u,b:u,alpha:{use:u,fixup:g}}},Wr=xa;var ga=({j:e,a:t,b:r,alpha:o})=>{let n=Math.sqrt(t*t+r*r),a={mode:"jch",j:e,c:n};return n&&(a.h=T(Math.atan2(r,t)*180/Math.PI)),o!==void 0&&(a.alpha=o),a},st=ga;var va=({j:e,c:t,h:r,alpha:o})=>{let n={mode:"jab",j:e,a:t?t*Math.cos(r/180*Math.PI):0,b:t?t*Math.sin(r/180*Math.PI):0};return o!==void 0&&(n.alpha=o),n},dt=va;var Ma={mode:"jch",parse:["--jzczhz"],serialize:"--jzczhz",toMode:{jab:dt,rgb:e=>De(dt(e))},fromMode:{rgb:e=>st(qe(e)),jab:st},channels:["j","c","h","alpha"],ranges:{j:[0,.221],c:[0,.19],h:[0,360]},interpolate:{h:{use:u,fixup:_},c:u,j:u,alpha:{use:u,fixup:g}},difference:{h:V},average:{h:w}},Ur=Ma;var le=Math.pow(29,3)/Math.pow(3,3),Je=Math.pow(6,3)/Math.pow(29,3);var Kr=e=>Math.pow(e,3)>Je?Math.pow(e,3):(116*e-16)/le,ya=({l:e,a:t,b:r,alpha:o})=>{let n=(e+16)/116,a=t/500+n,f=n-r/200,i={mode:"xyz50",x:Kr(a)*z.X,y:Kr(n)*z.Y,z:Kr(f)*z.Z};return o!==void 0&&(i.alpha=o),i},pe=ya;var Ta=({x:e,y:t,z:r,alpha:o})=>{let n=j({r:e*3.1341359569958707-t*1.6173863321612538-.4906619460083532*r,g:e*-.978795502912089+t*1.916254567259524+.03344273116131949*r,b:e*.07195537988411677-t*.2289768264158322+1.405386058324125*r});return o!==void 0&&(n.alpha=o),n},F=Ta;var za=e=>F(pe(e)),je=za;var ka=e=>{let{r:t,g:r,b:o,alpha:n}=D(e),a={mode:"xyz50",x:.436065742824811*t+.3851514688337912*r+.14307845442264197*o,y:.22249319175623702*t+.7168870538238823*r+.06061979053616537*o,z:.013923904500943465*t+.09708128566574634*r+.7140993584005155*o};return n!==void 0&&(a.alpha=n),a},G=ka;var Qr=e=>e>Je?Math.cbrt(e):(le*e+16)/116,La=({x:e,y:t,z:r,alpha:o})=>{let n=Qr(e/z.X),a=Qr(t/z.Y),f=Qr(r/z.Z),i={mode:"lab",l:116*a-16,a:500*(n-a),b:200*(a-f)};return o!==void 0&&(i.alpha=o),i},ue=La;var _a=e=>{let t=ue(G(e));return e.r===e.b&&e.b===e.g&&(t.a=t.b=0),t},Ee=_a;function Ra(e,t){if(!t||t[0]!=="lab")return;let r={mode:"lab"},[,o,n,a,f]=t;if(!(o.type===p.Hue||n.type===p.Hue||a.type===p.Hue))return o.type!==p.None&&(r.l=o.value),n.type!==p.None&&(r.a=n.type===p.Number?n.value:n.value*125/100),a.type!==p.None&&(r.b=a.type===p.Number?a.value:a.value*125/100),f.type!==p.None&&(r.alpha=f.type===p.Number?f.value:f.value/100),r}var Qt=Ra;var wa={mode:"lab",toMode:{xyz50:pe,rgb:je},fromMode:{xyz50:ue,rgb:Ee},channels:["l","a","b","alpha"],ranges:{l:[0,100],a:[-100,100],b:[-100,100]},parse:[Qt],serialize:e=>`lab(${e.l!==void 0?e.l:"none"} ${e.a!==void 0?e.a:"none"} ${e.b!==void 0?e.b:"none"}${e.alpha<1?` / ${e.alpha}`:""})`,interpolate:{l:u,a:u,b:u,alpha:{use:u,fixup:g}}},ze=wa;var Ha={...ze,mode:"lab65",parse:["--lab-d65"],serialize:"--lab-d65",toMode:{xyz65:Ne,rgb:ee},fromMode:{xyz65:$e,rgb:te},ranges:{l:[0,100],a:[-86.182,98.234],b:[-107.86,94.477]}},Vr=Ha;function Xa(e,t){if(!t||t[0]!=="lch")return;let r={mode:"lch"},[,o,n,a,f]=t;if(o.type!==p.None){if(o.type===p.Hue)return;r.l=o.value}if(n.type!==p.None&&(r.c=Math.max(0,n.type===p.Number?n.value:n.value*150/100)),a.type!==p.None){if(a.type===p.Percentage)return;r.h=a.value}return f.type!==p.None&&(r.alpha=f.type===p.Number?f.value:f.value/100),r}var Vt=Xa;var Sa={mode:"lch",toMode:{lab:O,rgb:e=>je(O(e))},fromMode:{rgb:e=>C(Ee(e)),lab:C},channels:["l","c","h","alpha"],ranges:{l:[0,100],c:[0,150],h:[0,360]},parse:[Vt],serialize:e=>`lch(${e.l!==void 0?e.l:"none"} ${e.c!==void 0?e.c:"none"} ${e.h||0}${e.alpha<1?` / ${e.alpha}`:""})`,interpolate:{h:{use:u,fixup:_},c:u,l:u,alpha:{use:u,fixup:g}},difference:{h:V},average:{h:w}},ke=Sa;var Pa={...ke,mode:"lch65",parse:["--lch-d65"],serialize:"--lch-d65",toMode:{lab65:e=>O(e,"lab65"),rgb:e=>ee(O(e,"lab65"))},fromMode:{rgb:e=>C(te(e),"lch65"),lab65:e=>C(e,"lch65")},ranges:{l:[0,100],c:[0,133.807],h:[0,360]}},eo=Pa;var Na=({l:e,u:t,v:r,alpha:o})=>{let n=Math.sqrt(t*t+r*r),a={mode:"lchuv",l:e,c:n};return n&&(a.h=T(Math.atan2(r,t)*180/Math.PI)),o!==void 0&&(a.alpha=o),a},ct=Na;var $a=({l:e,c:t,h:r,alpha:o})=>{let n={mode:"luv",l:e,u:t?t*Math.cos(r/180*Math.PI):0,v:t?t*Math.sin(r/180*Math.PI):0};return o!==void 0&&(n.alpha=o),n},ht=$a;var n0=(e,t,r)=>4*e/(e+15*t+3*r),a0=(e,t,r)=>9*t/(e+15*t+3*r),Ca=n0(z.X,z.Y,z.Z),Oa=a0(z.X,z.Y,z.Z),Aa=e=>e<=Je?le*e:116*Math.cbrt(e)-16,Ia=({x:e,y:t,z:r,alpha:o})=>{let n=Aa(t/z.Y),a=n0(e,t,r),f=a0(e,t,r);!isFinite(a)||!isFinite(f)?n=a=f=0:(a=13*n*(a-Ca),f=13*n*(f-Oa));let i={mode:"luv",l:n,u:a,v:f};return o!==void 0&&(i.alpha=o),i},Le=Ia;var qa=(e,t,r)=>4*e/(e+15*t+3*r),Da=(e,t,r)=>9*t/(e+15*t+3*r),Ja=qa(z.X,z.Y,z.Z),ja=Da(z.X,z.Y,z.Z),Ea=({l:e,u:t,v:r,alpha:o})=>{let n=t/(13*e)+Ja,a=r/(13*e)+ja,f=z.Y*(e<=8?e/le:Math.pow((e+16)/116,3)),i=f*(9*n)/(4*a),l=f*(12-3*n-20*a)/(4*a),m={mode:"xyz50",x:i,y:f,z:l};return o!==void 0&&(m.alpha=o),m},_e=Ea;var Ya=e=>ct(Le(G(e))),Ba=e=>F(_e(ht(e))),Za={mode:"lchuv",toMode:{luv:ht,rgb:Ba},fromMode:{rgb:Ya,luv:ct},channels:["l","c","h","alpha"],parse:["--lchuv"],serialize:"--lchuv",ranges:{l:[0,100],c:[0,176.956],h:[0,360]},interpolate:{h:{use:u,fixup:_},c:u,l:u,alpha:{use:u,fixup:g}},difference:{h:V},average:{h:w}},to=Za;var Fa={...Y,mode:"lrgb",toMode:{rgb:j},fromMode:{rgb:D},parse:["srgb-linear"],serialize:"srgb-linear"},ro=Fa;var Ga={mode:"luv",toMode:{xyz50:_e,rgb:e=>F(_e(e))},fromMode:{xyz50:Le,rgb:e=>Le(G(e))},channels:["l","u","v","alpha"],parse:["--luv"],serialize:"--luv",ranges:{l:[0,100],u:[-84.936,175.042],v:[-125.882,87.243]},interpolate:{l:u,u,v:u,alpha:{use:u,fixup:g}}},oo=Ga;var Wa=({r:e,g:t,b:r,alpha:o})=>{let n=Math.cbrt(.41222147079999993*e+.5363325363*t+.0514459929*r),a=Math.cbrt(.2119034981999999*e+.6806995450999999*t+.1073969566*r),f=Math.cbrt(.08830246189999998*e+.2817188376*t+.6299787005000002*r),i={mode:"oklab",l:.2104542553*n+.793617785*a-.0040720468*f,a:1.9779984951*n-2.428592205*a+.4505937099*f,b:.0259040371*n+.7827717662*a-.808675766*f};return o!==void 0&&(i.alpha=o),i},Ye=Wa;var Ua=e=>{let t=Ye(D(e));return e.r===e.b&&e.b===e.g&&(t.a=t.b=0),t},re=Ua;var Ka=({l:e,a:t,b:r,alpha:o})=>{let n=Math.pow(e*.9999999984505198+.39633779217376786*t+.2158037580607588*r,3),a=Math.pow(e*1.0000000088817609-.10556134232365635*t-.06385417477170591*r,3),f=Math.pow(e*1.0000000546724108-.08948418209496575*t-1.2914855378640917*r,3),i={mode:"lrgb",r:4.076741661347994*n-3.307711590408193*a+.230969928729428*f,g:-1.2684380040921763*n+2.6097574006633715*a-.3413193963102197*f,b:-.004196086541837188*n-.7034186144594493*a+1.7076147009309444*f};return o!==void 0&&(i.alpha=o),i},W=Ka;var Qa=e=>j(W(e)),oe=Qa;function bt(e){let o=1.170873786407767;return .5*(o*e-.206+Math.sqrt((o*e-.206)*(o*e-.206)+4*.03*o*e))}function Re(e){let o=1.170873786407767;return(e*e+.206*e)/(o*(e+.03))}function Va(e,t){let r,o,n,a,f,i,l,m;-1.88170328*e-.80936493*t>1?(r=1.19086277,o=1.76576728,n=.59662641,a=.75515197,f=.56771245,i=4.0767416621,l=-3.3077115913,m=.2309699292):1.81444104*e-1.19445276*t>1?(r=.73956515,o=-.45954404,n=.08285427,a=.1254107,f=.14503204,i=-1.2684380046,l=2.6097574011,m=-.3413193965):(r=1.35733652,o=-.00915799,n=-1.1513021,a=-.50559606,f=.00692167,i=-.0041960863,l=-.7034186147,m=1.707614701);let s=r+o*e+n*t+a*e*e+f*e*t,d=.3963377774*e+.2158037573*t,b=-.1055613458*e-.0638541728*t,c=-.0894841775*e-1.291485548*t;{let h=1+s*d,v=1+s*b,M=1+s*c,k=h*h*h,H=v*v*v,X=M*M*M,S=3*d*h*h,P=3*b*v*v,N=3*c*M*M,A=6*d*d*h,de=6*b*b*v,ae=6*c*c*M,Z=i*k+l*H+m*X,K=i*S+l*P+m*N,ce=i*A+l*de+m*ae;s=s-Z*K/(K*K-.5*Z*ce)}return s}function no(e,t){let r=Va(e,t),o=W({l:1,a:r*e,b:r*t}),n=Math.cbrt(1/Math.max(o.r,o.g,o.b)),a=n*r;return[n,a]}function ef(e,t,r,o,n,a=null){a||(a=no(e,t));let f;if((r-n)*a[1]-(a[0]-n)*o<=0)f=a[1]*n/(o*a[0]+a[1]*(n-r));else{f=a[1]*(n-1)/(o*(a[0]-1)+a[1]*(n-r));{let i=r-n,l=o,m=.3963377774*e+.2158037573*t,s=-.1055613458*e-.0638541728*t,d=-.0894841775*e-1.291485548*t,b=i+l*m,c=i+l*s,h=i+l*d;{let v=n*(1-f)+f*r,M=f*o,k=v+M*m,H=v+M*s,X=v+M*d,S=k*k*k,P=H*H*H,N=X*X*X,A=3*b*k*k,de=3*c*H*H,ae=3*h*X*X,Z=6*b*b*k,K=6*c*c*H,ce=6*h*h*X,he=4.0767416621*S-3.3077115913*P+.2309699292*N-1,I=4.0767416621*A-3.3077115913*de+.2309699292*ae,Rt=4.0767416621*Z-3.3077115913*K+.2309699292*ce,wt=I/(I*I-.5*he*Rt),Ue=-he*wt,Ke=-1.2684380046*S+2.6097574011*P-.3413193965*N-1,Xe=-1.2684380046*A+2.6097574011*de-.3413193965*ae,Tr=-1.2684380046*Z+2.6097574011*K-.3413193965*ce,Ht=Xe/(Xe*Xe-.5*Ke*Tr),Qe=-Ke*Ht,No=-.0041960863*S-.7034186147*P+1.707614701*N-1,zr=-.0041960863*A-.7034186147*de+1.707614701*ae,G0=-.0041960863*Z-.7034186147*K+1.707614701*ce,$o=zr/(zr*zr-.5*No*G0),kr=-No*$o;Ue=wt>=0?Ue:1e6,Qe=Ht>=0?Qe:1e6,kr=$o>=0?kr:1e6,f+=Math.min(Ue,Math.min(Qe,kr))}}}return f}function xt(e,t,r=null){r||(r=no(e,t));let o=r[0],n=r[1];return[n/o,n/(1-o)]}function er(e,t,r){let o=no(t,r),n=ef(t,r,e,1,e,o),a=xt(t,r,o),f=.11516993+1/(7.4477897+4.1590124*r+t*(-2.19557347+1.75198401*r+t*(-2.13704948-10.02301043*r+t*(-4.24894561+5.38770819*r+4.69891013*t)))),i=.11239642+1/(1.6132032-.68124379*r+t*(.40370612+.90148123*r+t*(-.27087943+.6122399*r+t*(.00299215-.45399568*r-.14661872*t)))),l=n/Math.min(e*a[0],(1-e)*a[1]),m=e*f,s=(1-e)*i,d=.9*l*Math.sqrt(Math.sqrt(1/(1/(m*m*m*m)+1/(s*s*s*s))));return m=e*.4,s=(1-e)*.8,[Math.sqrt(1/(1/(m*m)+1/(s*s))),d,n]}function Be(e){let t={mode:"okhsl",l:bt(e.l)};e.alpha!==void 0&&(t.alpha=e.alpha);let r=Math.sqrt(e.a*e.a+e.b*e.b);if(!r)return t.s=0,t;let[o,n,a]=er(e.l,e.a/r,e.b/r),f;if(r<n){let i=0,l=.8*o,m=1-l/n;f=(r-i)/(l+m*(r-i))*.8}else{let i=n,l=.2*n*n*1.25*1.25/o,m=1-l/(a-n);f=.8+.2*((r-i)/(l+m*(r-i)))}return f&&(t.s=f,t.h=T(Math.atan2(e.b,e.a)*180/Math.PI)),t}function Ze(e){let t=Re(e.l),r={mode:"oklab",l:t};if(e.alpha!==void 0&&(r.alpha=e.alpha),!e.s||e.l===1)return r.a=r.b=0,r;let o=Math.cos(e.h/180*Math.PI),n=Math.sin(e.h/180*Math.PI),[a,f,i]=er(t,o,n),l,m,s,d;e.s<.8?(l=1.25*e.s,m=0,s=.8*a,d=1-s/f):(l=5*(e.s-.8),m=f,s=.2*f*f*1.25*1.25/a,d=1-s/(i-f));let b=m+l*s/(1-d*l);return r.a=b*o,r.b=b*n,r}var tf={...lt,mode:"okhsl",channels:["h","s","l","alpha"],parse:["--okhsl"],serialize:"--okhsl",fromMode:{oklab:Be,rgb:e=>Be(re(e))},toMode:{oklab:Ze,rgb:e=>oe(Ze(e))}},ao=tf;function Fe(e){let t=Math.sqrt(e.a*e.a+e.b*e.b),r=e.l,o=t?e.a/t:1,n=t?e.b/t:1,[a,f]=xt(o,n),i=.5,l=1-i/a,m=f/(t+r*f),s=m*r,d=m*t,b=Re(s),c=d*b/s,h=W({l:b,a:o*c,b:n*c}),v=Math.cbrt(1/Math.max(h.r,h.g,h.b,0));r=r/v,t=t/v*bt(r)/r,r=bt(r);let M={mode:"okhsv",s:t?(i+f)*d/(f*i+f*l*d):0,v:r?r/s:0};return M.s&&(M.h=T(Math.atan2(e.b,e.a)*180/Math.PI)),e.alpha!==void 0&&(M.alpha=e.alpha),M}function Ge(e){let t={mode:"oklab"};e.alpha!==void 0&&(t.alpha=e.alpha);let r=e.h||0,o=Math.cos(r/180*Math.PI),n=Math.sin(r/180*Math.PI),[a,f]=xt(o,n),i=.5,l=1-i/a,m=1-e.s*i/(i+f-f*l*e.s),s=e.s*f*i/(i+f-f*l*e.s),d=Re(m),b=s*d/m,c=W({l:d,a:o*b,b:n*b}),h=Math.cbrt(1/Math.max(c.r,c.g,c.b,0)),v=Re(e.v*m),M=s*v/m;return t.l=v*h,t.a=M*o*h,t.b=M*n*h,t}var rf={...pt,mode:"okhsv",channels:["h","s","v","alpha"],parse:["--okhsv"],serialize:"--okhsv",fromMode:{oklab:Fe,rgb:e=>Fe(re(e))},toMode:{oklab:Ge,rgb:e=>oe(Ge(e))}},fo=rf;function of(e,t){if(!t||t[0]!=="oklab")return;let r={mode:"oklab"},[,o,n,a,f]=t;if(!(o.type===p.Hue||n.type===p.Hue||a.type===p.Hue))return o.type!==p.None&&(r.l=o.type===p.Number?o.value:o.value/100),n.type!==p.None&&(r.a=n.type===p.Number?n.value:n.value*.4/100),a.type!==p.None&&(r.b=a.type===p.Number?a.value:a.value*.4/100),f.type!==p.None&&(r.alpha=f.type===p.Number?f.value:f.value/100),r}var tr=of;var nf={...ze,mode:"oklab",toMode:{lrgb:W,rgb:oe},fromMode:{lrgb:Ye,rgb:re},ranges:{l:[0,1],a:[-.4,.4],b:[-.4,.4]},parse:[tr,"--oklab"],serialize:e=>`oklab(${e.l!==void 0?e.l:"none"} ${e.a!==void 0?e.a:"none"} ${e.b!==void 0?e.b:"none"}${e.alpha<1?` / ${e.alpha}`:""})`},io=nf;function af(e,t){if(!t||t[0]!=="oklch")return;let r={mode:"oklch"},[,o,n,a,f]=t;if(o.type!==p.None){if(o.type===p.Hue)return;r.l=n.type===p.Number?o.value:o.value/100}if(n.type!==p.None&&(r.c=Math.max(0,n.type===p.Number?n.value:n.value*.4/100)),a.type!==p.None){if(a.type===p.Percentage)return;r.h=a.value}return f.type!==p.None&&(r.alpha=f.type===p.Number?f.value:f.value/100),r}var rr=af;var ff={...ke,mode:"oklch",toMode:{oklab:e=>O(e,"oklab"),rgb:e=>oe(O(e,"oklab"))},fromMode:{rgb:e=>C(re(e),"oklch"),oklab:e=>C(e,"oklch")},parse:[rr,"--oklch"],serialize:e=>`oklch(${e.l!==void 0?e.l:"none"} ${e.c!==void 0?e.c:"none"} ${e.h||0}${e.alpha<1?` / ${e.alpha}`:""})`,ranges:{l:[0,1],c:[0,.4],h:[0,360]}},lo=ff;var lf=e=>{let{r:t,g:r,b:o,alpha:n}=D(e),a={mode:"xyz65",x:.486570948648216*t+.265667693169093*r+.1982172852343625*o,y:.2289745640697487*t+.6917385218365062*r+.079286914093745*o,z:0*t+.0451133818589026*r+1.043944368900976*o};return n!==void 0&&(a.alpha=n),a},gt=lf;var pf=({x:e,y:t,z:r,alpha:o})=>{let n=j({r:e*2.4934969119414263-t*.9313836179191242-.402710784450717*r,g:e*-.8294889695615749+t*1.7626640603183465+.0236246858419436*r,b:e*.0358458302437845-t*.0761723892680418+.9568845240076871*r},"p3");return o!==void 0&&(n.alpha=o),n},vt=pf;var uf={...Y,mode:"p3",parse:["display-p3"],serialize:"display-p3",fromMode:{rgb:e=>vt(J(e)),xyz65:vt},toMode:{rgb:e=>E(gt(e)),xyz65:gt}},po=uf;var uo=e=>{let t=Math.abs(e);return t>=.001953125?Math.sign(e)*Math.pow(t,.5555555555555556):16*e},mf=({x:e,y:t,z:r,alpha:o})=>{let n={mode:"prophoto",r:uo(e*1.3457868816471585-t*.2555720873797946-.0511018649755453*r),g:uo(e*-.5446307051249019+t*1.5082477428451466+.0205274474364214*r),b:uo(e*0+t*0+1.2119675456389452*r)};return o!==void 0&&(n.alpha=o),n},Mt=mf;var mo=e=>{let t=Math.abs(e);return t>=.03125?Math.sign(e)*Math.pow(t,1.8):e/16},sf=e=>{let t=mo(e.r),r=mo(e.g),o=mo(e.b),n={mode:"xyz50",x:.7977666449006423*t+.1351812974005331*r+.0313477341283922*o,y:.2880748288194013*t+.7118352342418731*r+899369387256e-16*o,z:0*t+0*r+.8251046025104602*o};return e.alpha!==void 0&&(n.alpha=e.alpha),n},yt=sf;var df={...Y,mode:"prophoto",parse:["prophoto-rgb"],serialize:"prophoto-rgb",fromMode:{xyz50:Mt,rgb:e=>Mt(G(e))},toMode:{xyz50:yt,rgb:e=>F(yt(e))}},so=df;var f0=1.09929682680944,cf=.018053968510807,co=e=>{let t=Math.abs(e);return t>cf?(Math.sign(e)||1)*(f0*Math.pow(t,.45)-(f0-1)):4.5*e},hf=({x:e,y:t,z:r,alpha:o})=>{let n={mode:"rec2020",r:co(e*1.7166511879712683-t*.3556707837763925-.2533662813736599*r),g:co(e*-.6666843518324893+t*1.6164812366349395+.0157685458139111*r),b:co(e*.0176398574453108-t*.0427706132578085+.9421031212354739*r)};return o!==void 0&&(n.alpha=o),n},Tt=hf;var i0=1.09929682680944,bf=.018053968510807,ho=e=>{let t=Math.abs(e);return t<bf*4.5?e/4.5:(Math.sign(e)||1)*Math.pow((t+i0-1)/i0,1/.45)},xf=e=>{let t=ho(e.r),r=ho(e.g),o=ho(e.b),n={mode:"xyz65",x:.6369580483012911*t+.1446169035862083*r+.1688809751641721*o,y:.262700212011267*t+.6779980715188708*r+.059301716469862*o,z:0*t+.0280726930490874*r+1.0609850577107909*o};return e.alpha!==void 0&&(n.alpha=e.alpha),n},zt=xf;var gf={...Y,mode:"rec2020",fromMode:{xyz65:Tt,rgb:e=>Tt(J(e))},toMode:{xyz65:zt,rgb:e=>E(zt(e))},parse:["rec2020"],serialize:"rec2020"},bo=gf;var ne=.0037930732552754493,or=Math.cbrt(ne);var xo=e=>Math.cbrt(e)-or,vf=e=>{let{r:t,g:r,b:o,alpha:n}=D(e),a=xo(.3*t+.622*r+.078*o+ne),f=xo(.23*t+.692*r+.078*o+ne),i=xo(.2434226892454782*t+.2047674442449682*r+.5518098665095535*o+ne),l={mode:"xyb",x:(a-f)/2,y:(a+f)/2,b:i-(a+f)/2};return n!==void 0&&(l.alpha=n),l},nr=vf;var go=e=>Math.pow(e+or,3),Mf=({x:e,y:t,b:r,alpha:o})=>{let n=go(e+t)-ne,a=go(t-e)-ne,f=go(r+t)-ne,i=j({r:11.031566904639861*n-9.866943908131562*a-.16462299650829934*f,g:-3.2541473810744237*n+4.418770377582723*a-.16462299650829934*f,b:-3.6588512867136815*n+2.7129230459360922*a+1.9459282407775895*f});return o!==void 0&&(i.alpha=o),i},ar=Mf;var yf={mode:"xyb",channels:["x","y","b","alpha"],parse:["--xyb"],serialize:"--xyb",toMode:{rgb:ar},fromMode:{rgb:nr},ranges:{x:[-.0154,.0281],y:[0,.8453],b:[-.2778,.388]},interpolate:{x:u,y:u,b:u,alpha:{use:u,fixup:g}}},vo=yf;var Tf={mode:"xyz50",parse:["xyz-d50","--xyz-d50"],serialize:"xyz-d50",toMode:{rgb:F,lab:ue},fromMode:{rgb:G,lab:pe},channels:["x","y","z","alpha"],ranges:{x:[0,.964],y:[0,.999],z:[0,.825]},interpolate:{x:u,y:u,z:u,alpha:{use:u,fixup:g}}},Mo=Tf;var zf=e=>{let{x:t,y:r,z:o,alpha:n}=e,a={mode:"xyz50",x:1.0479298208405488*t+.0229467933410191*r-.0501922295431356*o,y:.0296278156881593*t+.990434484573249*r-.0170738250293851*o,z:-.0092430581525912*t+.0150551448965779*r+.7518742899580008*o};return n!==void 0&&(a.alpha=n),a},fr=zf;var kf=e=>{let{x:t,y:r,z:o,alpha:n}=e,a={mode:"xyz65",x:.9554734527042182*t-.0230985368742614*r+.0632593086610217*o,y:-.0283697069632081*t+1.0099954580058226*r+.021041398966943*o,z:.0123140016883199*t-.0205076964334779*r+1.3303659366080753*o};return n!==void 0&&(a.alpha=n),a},ir=kf;var Lf={mode:"xyz65",toMode:{rgb:E,xyz50:fr},fromMode:{rgb:J,xyz50:ir},ranges:{x:[0,.95],y:[0,1],z:[0,1.088]},channels:["x","y","z","alpha"],parse:["xyz","xyz-d65","--xyz-d65"],serialize:"xyz-d65",interpolate:{x:u,y:u,z:u,alpha:{use:u,fixup:g}}},yo=Lf;var _f=({r:e,g:t,b:r,alpha:o})=>{let n={mode:"yiq",y:.29889531*e+.58662247*t+.11448223*r,i:.59597799*e-.2741761*t-.32180189*r,q:.21147017*e-.52261711*t+.31114694*r};return o!==void 0&&(n.alpha=o),n},lr=_f;var Rf=({y:e,i:t,q:r,alpha:o})=>{let n={mode:"rgb",r:e+.95608445*t+.6208885*r,g:e-.27137664*t-.6486059*r,b:e-1.10561724*t+1.70250126*r};return o!==void 0&&(n.alpha=o),n},pr=Rf;var wf={mode:"yiq",toMode:{rgb:pr},fromMode:{rgb:lr},channels:["y","i","q","alpha"],parse:["--yiq"],serialize:"--yiq",ranges:{i:[-.595,.595],q:[-.522,.522]},interpolate:{y:u,i:u,q:u,alpha:{use:u,fixup:g}}},To=wf;var Hf=(e,t)=>Math.round(e*(t=Math.pow(10,t)))/t,Xf=(e=4)=>t=>typeof t=="number"?Hf(t,e):t,ur=Xf;var kt=ur(2),Lt=e=>Math.max(0,Math.min(1,e)),we=e=>Math.round(Lt(e)*255),mr=e=>{if(e===void 0)return;let t=we(e.r),r=we(e.g),o=we(e.b);return"#"+(1<<24|t<<16|r<<8|o).toString(16).slice(1)},zo=e=>{if(e===void 0)return;let t=we(e.alpha!==void 0?e.alpha:1);return mr(e)+(1<<8|t).toString(16).slice(1)},ko=e=>{if(e===void 0)return;let t=e.r!==void 0?we(e.r):"none",r=e.g!==void 0?we(e.g):"none",o=e.b!==void 0?we(e.b):"none";return e.alpha===void 0||e.alpha===1?`rgb(${t}, ${r}, ${o})`:`rgba(${t}, ${r}, ${o}, ${kt(Lt(e.alpha))})`},Lo=e=>{if(e===void 0)return;let t=kt(e.h||0),r=e.s!==void 0?kt(Lt(e.s)*100)+"%":"none",o=e.l!==void 0?kt(Lt(e.l)*100)+"%":"none";return e.alpha===void 0||e.alpha===1?`hsl(${t}, ${r}, ${o})`:`hsla(${t}, ${r}, ${o}, ${kt(Lt(e.alpha))})`},l0=e=>{let t=q(e);if(!t)return;let r=L(t.mode);if(!r.serialize||typeof r.serialize=="string"){let o=`color(${r.serialize||`--${t.mode}`} `;return r.channels.forEach((n,a)=>{n!=="alpha"&&(o+=(a?" ":"")+(t[n]!==void 0?t[n]:"none"))}),t.alpha!==void 0&&t.alpha<1&&(o+=` / ${t.alpha}`),o+")"}if(typeof r.serialize=="function")return r.serialize(t)},p0=e=>mr(x("rgb")(e)),u0=e=>zo(x("rgb")(e)),m0=e=>ko(x("rgb")(e)),s0=e=>Lo(x("hsl")(e));var Sf={normal:(e,t)=>t,multiply:(e,t)=>e*t,screen:(e,t)=>e+t-e*t,"hard-light":(e,t)=>t<.5?e*2*t:2*t*(1-e)-1,overlay:(e,t)=>e<.5?t*2*e:2*e*(1-t)-1,darken:(e,t)=>Math.min(e,t),lighten:(e,t)=>Math.max(e,t),"color-dodge":(e,t)=>e===0?0:t===1?1:Math.min(1,e/(1-t)),"color-burn":(e,t)=>e===1?1:t===0?0:1-Math.min(1,(1-e)/t),"soft-light":(e,t)=>t<.5?e-(1-2*t)*e*(1-e):e+(2*t-1)*((e<.25?((16*e-12)*e+4)*e:Math.sqrt(e))-e),difference:(e,t)=>Math.abs(e-t),exclusion:(e,t)=>e+t-2*e*t},Pf=(e,t="normal",r="rgb")=>{let o=typeof t=="function"?t:Sf[t],n=x(r),a=L(r).channels;return e.map(i=>{let l=n(i);return l.alpha===void 0&&(l.alpha=1),l}).reduce((i,l)=>{if(i===void 0)return l;let m=l.alpha+i.alpha*(1-l.alpha);return a.reduce((s,d)=>(d!=="alpha"&&(m===0?s[d]=0:(s[d]=l.alpha*(1-i.alpha)*l[d]+l.alpha*i.alpha*o(i[d],l[d])+(1-l.alpha)*i.alpha*i[d],s[d]=Math.max(0,Math.min(1,s[d]/m)))),s),{mode:r,alpha:m})})},d0=Pf;var Nf=([e,t])=>e+Math.random()*(t-e),$f=e=>Object.keys(e).reduce((t,r)=>{let o=e[r];return t[r]=Array.isArray(o)?o:[o,o],t},{}),Cf=(e="rgb",t={})=>{let r=L(e),o=$f(t);return r.channels.reduce((n,a)=>((o.alpha||a!=="alpha")&&(n[a]=Nf(o[a]||r.ranges[a])),n),{mode:e})},c0=Cf;var me=(e,t="rgb",r=!1)=>{let o=t?L(t).channels:null,n=t?x(t):q;return a=>{let f=n(a);if(!f)return;let i=(o||L(a.mode).channels).reduce((m,s)=>{let d=e(f[s],s,f,t);return d!==void 0&&!isNaN(d)&&(m[s]=d),m},{mode:t});if(!r)return i;let l=q(a);return l&&l.mode!==i.mode?x(l.mode)(i):i}},sr=(e,t,r)=>t!=="alpha"?(e||0)*(r.alpha!==void 0?r.alpha:1):e,dr=(e,t,r)=>t!=="alpha"&&r.alpha!==0?(e||0)/(r.alpha!==void 0?r.alpha:1):e,_t=(e=1,t=0)=>(r,o)=>o!=="alpha"?r*e+t:r,h0=(e=1,t=1,r=0)=>(o,n)=>n!=="alpha"?e*Math.pow(o,t)+r:o;var Of=e=>{e[0]===void 0&&(e[0]=0),e[e.length-1]===void 0&&(e[e.length-1]=1);let t=1,r,o,n,a;for(;t<e.length;){if(e[t]===void 0){for(o=t,n=e[t-1],r=t;e[r]===void 0;)r++;for(a=(e[r]-n)/(r-t+1);t<r;)e[t]=n+(t+1-o)*a,t++}else e[t]<e[t-1]&&(e[t]=e[t-1]);t++}return e},b0=Of;var Af=(e=.5)=>t=>e<=0?1:e>=1?0:Math.pow(t,Math.log(.5)/Math.log(e)),cr=Af;var hr=e=>typeof e=="function",He=e=>e&&typeof e=="object",x0=e=>typeof e=="number",g0=(e,t="rgb",r,o)=>{let n=L(t),a=x(t),f=[],i=[],l={};e.forEach(b=>{Array.isArray(b)?(f.push(a(b[0])),i.push(b[1])):x0(b)||hr(b)?l[i.length]=b:(f.push(a(b)),i.push(void 0))}),b0(i);let m=n.channels.reduce((b,c)=>{let h;return He(r)&&He(r[c])&&r[c].fixup?h=r[c].fixup:He(n.interpolate[c])&&n.interpolate[c].fixup?h=n.interpolate[c].fixup:h=v=>v,b[c]=h(f.map(v=>v[c])),b},{});if(o){let b=f.map((c,h)=>n.channels.reduce((v,M)=>(v[M]=m[M][h],v),{mode:t}));m=n.channels.reduce((c,h)=>(c[h]=b.map(v=>{let M=o(v[h],h,v,t);return isNaN(M)?void 0:M}),c),{})}let s=n.channels.reduce((b,c)=>{let h;return hr(r)?h=r:He(r)&&hr(r[c])?h=r[c]:He(r)&&He(r[c])&&r[c].use?h=r[c].use:hr(n.interpolate[c])?h=n.interpolate[c]:He(n.interpolate[c])&&(h=n.interpolate[c].use),b[c]=h(m[c]),b},{}),d=f.length-1;return b=>{if(b=Math.min(Math.max(0,b),1),b<=i[0])return f[0];if(b>i[d])return f[d];let c=0;for(;i[c]<b;)c++;let h=i[c-1],v=i[c]-h,M=(b-h)/v,k=l[c]||l[0];k!==void 0&&(x0(k)&&(k=cr((k-h)/v)),M=k(M));let H=(c-1+M)/d;return n.channels.reduce((X,S)=>{let P=s[S](H);return P!==void 0&&(X[S]=P),X},{mode:t})}},v0=(e,t="rgb",r)=>g0(e,t,r),_o=(e,t)=>(r,o="rgb",n)=>{let a=t?me(t,o):void 0,f=g0(r,o,n,e);return a?i=>a(f(i)):f},M0=_o(sr,dr);var br=(e,t)=>(e+t)%t,y0=(e,t,r,o,n)=>{let a=n*n,f=a*n;return((1-3*n+3*a-f)*e+(4-6*a+3*f)*t+(1+3*n+3*a-3*f)*r+f*o)/6},xr=e=>t=>{let r=e.length-1,o=t>=1?r-1:Math.max(0,Math.floor(t*r));return y0(o>0?e[o-1]:2*e[o]-e[o+1],e[o],e[o+1],o<r-1?e[o+2]:2*e[o+1]-e[o],(t-o/r)*r)},gr=e=>t=>{let r=e.length-1,o=Math.floor(t*r);return y0(e[br(o-1,e.length)],e[br(o,e.length)],e[br(o+1,e.length)],e[br(o+2,e.length)],(t-o/r)*r)};var T0=e=>{let t,r=e.length-1,o=new Array(r),n=new Array(r),a=new Array(r);for(o[1]=1/4,n[1]=(6*e[1]-e[0])/4,t=2;t<r;++t)o[t]=1/(4-o[t-1]),n[t]=(6*e[t]-(t==r-1?e[r]:0)-n[t-1])*o[t];for(a[0]=e[0],a[r]=e[r],r-1>0&&(a[r-1]=n[r-1]),t=r-2;t>0;--t)a[t]=n[t]-o[t]*a[t+1];return a},z0=e=>xr(T0(e)),k0=e=>gr(T0(e));var We=Math.sign,Ro=Math.min,B=Math.abs,wo=e=>{let t=e.length-1,r=[],o=[],n=[];for(let a=0;a<t;a++)r.push((e[a+1]-e[a])*t),o.push(a>0?.5*(e[a+1]-e[a-1])*t:void 0),n.push(a>0?(We(r[a-1])+We(r[a]))*Ro(B(r[a-1]),B(r[a]),.5*B(o[a])):void 0);return[r,o,n]},Ho=(e,t,r)=>{let o=e.length-1,n=o*o;return a=>{let f;a>=1?f=o-1:f=Math.max(0,Math.floor(a*o));let i=a-f/o,l=i*i,m=l*i;return(t[f]+t[f+1]-2*r[f])*n*m+(3*r[f]-2*t[f]-t[f+1])*o*l+t[f]*i+e[f]}},L0=e=>{if(e.length<3)return u(e);let t=e.length-1,[r,,o]=wo(e);return o[0]=r[0],o[t]=r[t-1],Ho(e,o,r)},_0=e=>{if(e.length<3)return u(e);let t=e.length-1,[r,o,n]=wo(e);return o[0]=(e[1]*2-e[0]*1.5-e[2]*.5)*t,o[t]=(e[t]*1.5-e[t-1]*2+e[t-2]*.5)*t,n[0]=o[0]*r[0]<=0?0:B(o[0])>2*B(r[0])?2*r[0]:o[0],n[t]=o[t]*r[t-1]<=0?0:B(o[t])>2*B(r[t-1])?2*r[t-1]:o[t],Ho(e,n,r)},R0=e=>{let t=e.length-1,[r,o,n]=wo(e);o[0]=.5*(e[1]-e[t])*t,o[t]=.5*(e[0]-e[t-1])*t;let a=(e[0]-e[t])*t,f=a;return n[0]=(We(a)+We(r[0]))*Ro(B(a),B(r[0]),.5*B(o[0])),n[t]=(We(r[t-1])+We(f))*Ro(B(r[t-1]),B(f),.5*B(o[t])),Ho(e,n,r)};var If=(e=1)=>e===1?t=>t:t=>Math.pow(t,e),vr=If;var qf=(e=2,t=1)=>{let r=vr(t);if(e<2)return e<1?[]:[r(.5)];let o=[];for(let n=0;n<e;n++)o.push(r(n/(e-1)));return o},w0=qf;var Df=x("rgb"),Jf=e=>{let t=Df(e);return t!==void 0&&t.r>=0&&t.r<=1&&t.g>=0&&t.g<=1&&t.b>=0&&t.b<=1},se=Jf;var jf=x("rgb"),H0=e=>{let t=jf(e);return t.r=Math.max(0,Math.min(t.r,1)),t.g=Math.max(0,Math.min(t.g,1)),t.b=Math.max(0,Math.min(t.b,1)),t},X0=e=>(e=q(e),e===void 0||se(e)?e:x(e.mode)(H0(e))),S0=(e,t="lch")=>{if(e=q(e),e===void 0||se(e))return e;let r=x(e.mode);e=x(t)(e);let o={...e,c:0};if(!se(o))return r(H0(o));let n=0,a=e.c,f=L(t).ranges.c,i=(f[1]-f[0])/Math.pow(2,13),l;for(;a-n>i;)o.c=n+(a-n)*.5,se(o)?(l=o.c,n=o.c):a=o.c;return r(se(o)?o:{...o,c:l})};var Ef=(e,t=Pe(),r=o=>o)=>{let o=e.map((n,a)=>({color:r(n),i:a}));return(n,a=1,f=1/0)=>(isFinite(a)&&(a=Math.max(1,Math.min(a,o.length-1))),o.forEach(i=>{i.d=t(n,i.color)}),o.sort((i,l)=>i.d-l.d).slice(0,a).filter(i=>i.d<f).map(i=>e[i.i]))},P0=Ef;var Yf=(e,t,r)=>e===void 0||t===void 0?void 0:e+r*(t-e),N0=Yf;var Xo=e=>Math.max(e,0),So=e=>Math.max(Math.min(e,1),0),Bf=e=>{let t=1-So(e);return[.393+.607*t,.769-.769*t,.189-.189*t,0,.349-.349*t,.686+.314*t,.168-.168*t,0,.272-.272*t,.534-.534*t,.131+.869*t,0,0,0,0,1]},Zf=e=>{let t=Xo(e);return[.213+.787*t,.715-.715*t,.072-.072*t,0,.213-.213*t,.715+.285*t,.072-.072*t,0,.213-.213*t,.715-.715*t,.072+.928*t,0,0,0,0,1]},Ff=e=>{let t=1-So(e);return[.2126+.7874*t,.7152-.7152*t,.0722-.0722*t,0,.2126-.2126*t,.7152+.2848*t,.0722-.0722*t,0,.2126-.2126*t,.7152-.7152*t,.0722+.9278*t,0,0,0,0,1]},Gf=e=>{let t=Math.PI*e/180,r=Math.cos(t),o=Math.sin(t);return[.213+r*.787-o*.213,.715-r*.715-o*.715,.072-r*.072+o*.928,0,.213-r*.213+o*.143,.715+r*.285+o*.14,.072-r*.072-o*.283,0,.213-r*.213-o*.787,.715-r*.715+o*.715,.072+r*.928+o*.072,0,0,0,0,1]},Mr=(e,t,r=!1)=>{let o=x(t),n=L(t).channels;return a=>{let f=o(a);if(!f)return;let i={mode:t},l,m=n.length;for(let d=0;d<e.length;d++)l=n[Math.floor(d/m)],f[l]!==void 0&&(i[l]=(i[l]||0)+e[d]*(f[n[d%m]]||0));if(!r)return i;let s=q(a);return s&&i.mode!==s.mode?x(s.mode)(i):i}},$0=(e=1,t="rgb")=>{let r=Xo(e);return me(_t(r),t,!0)},C0=(e=1,t="rgb")=>{let r=Xo(e);return me(_t(r,(1-r)/2),t,!0)},O0=(e=1,t="rgb")=>Mr(Bf(e),t,!0),A0=(e=1,t="rgb")=>Mr(Zf(e),t,!0),I0=(e=1,t="rgb")=>Mr(Ff(e),t,!0),q0=(e=1,t="rgb")=>{let r=So(e);return me((o,n)=>n==="alpha"?o:N0(r,1-r,o),t,!0)},D0=(e=0,t="rgb")=>Mr(Gf(e),t,!0);var Wf=x("rgb"),Uf=[[1,0,-0,0,1,0,-0,-0,1],[.856167,.182038,-.038205,.029342,.955115,.015544,-.00288,-.001563,1.004443],[.734766,.334872,-.069637,.05184,.919198,.028963,-.004928,-.004209,1.009137],[.630323,.465641,-.095964,.069181,.890046,.040773,-.006308,-.007724,1.014032],[.539009,.579343,-.118352,.082546,.866121,.051332,-.007136,-.011959,1.019095],[.458064,.679578,-.137642,.092785,.846313,.060902,-.007494,-.016807,1.024301],[.38545,.769005,-.154455,.100526,.829802,.069673,-.007442,-.02219,1.029632],[.319627,.849633,-.169261,.106241,.815969,.07779,-.007025,-.028051,1.035076],[.259411,.923008,-.18242,.110296,.80434,.085364,-.006276,-.034346,1.040622],[.203876,.990338,-.194214,.112975,.794542,.092483,-.005222,-.041043,1.046265],[.152286,1.052583,-.204868,.114503,.786281,.099216,-.003882,-.048116,1.051998]],Kf=[[1,0,-0,0,1,0,-0,-0,1],[.866435,.177704,-.044139,.049567,.939063,.01137,-.003453,.007233,.99622],[.760729,.319078,-.079807,.090568,.889315,.020117,-.006027,.013325,.992702],[.675425,.43385,-.109275,.125303,.847755,.026942,-.00795,.018572,.989378],[.605511,.52856,-.134071,.155318,.812366,.032316,-.009376,.023176,.9862],[.547494,.607765,-.155259,.181692,.781742,.036566,-.01041,.027275,.983136],[.498864,.674741,-.173604,.205199,.754872,.039929,-.011131,.030969,.980162],[.457771,.731899,-.18967,.226409,.731012,.042579,-.011595,.034333,.977261],[.422823,.781057,-.203881,.245752,.709602,.044646,-.011843,.037423,.974421],[.392952,.82361,-.216562,.263559,.69021,.046232,-.01191,.040281,.97163],[.367322,.860646,-.227968,.280085,.672501,.047413,-.01182,.04294,.968881]],Qf=[[1,0,-0,0,1,0,-0,-0,1],[.92667,.092514,-.019184,.021191,.964503,.014306,.008437,.054813,.93675],[.89572,.13333,-.02905,.029997,.9454,.024603,.013027,.104707,.882266],[.905871,.127791,-.033662,.026856,.941251,.031893,.01341,.148296,.838294],[.948035,.08949,-.037526,.014364,.946792,.038844,.010853,.193991,.795156],[1.017277,.027029,-.044306,-.006113,.958479,.047634,.006379,.248708,.744913],[1.104996,-.046633,-.058363,-.032137,.971635,.060503,.001336,.317922,.680742],[1.193214,-.109812,-.083402,-.058496,.97941,.079086,-.002346,.403492,.598854],[1.257728,-.139648,-.118081,-.078003,.975409,.102594,-.003316,.501214,.502102],[1.278864,-.125333,-.153531,-.084748,.957674,.127074,-989e-6,.601151,.399838],[1.255528,-.076749,-.178779,-.078411,.930809,.147602,.004733,.691367,.3039]],Po=(e,t)=>{let r=Math.max(0,Math.min(1,t)),o=Math.round(r/.1),n=Math.round(r%.1),a=e[o];if(n>0&&o<e.length-1){let f=e[o+1];a=a.map((i,l)=>Se(a[l],f[l],n))}return f=>{let i=q(f);if(i===void 0)return;let{r:l,g:m,b:s}=Wf(i),d={mode:"rgb",r:a[0]*l+a[1]*m+a[2]*s,g:a[3]*l+a[4]*m+a[5]*s,b:a[6]*l+a[7]*m+a[8]*s};return i.alpha!==void 0&&(d.alpha=i.alpha),x(i.mode)(d)}},J0=(e=1)=>Po(Uf,e),j0=(e=1)=>Po(Kf,e),E0=(e=1)=>Po(Qf,e);var Vf=e=>e*e*(3-2*e),Y0=Vf;var ei=e=>e*e*e*(e*(e*6-15)+10),B0=ei;var ti=e=>(1-Math.cos(e*Math.PI))/2,Z0=ti;function yr(e){let t=x("lrgb")(e);return .2126*t.r+.7152*t.g+.0722*t.b}function F0(e,t){let r=yr(e),o=yr(t);return(Math.max(r,o)+.05)/(Math.min(r,o)+.05)}var ri=y($r),oi=y(Ar),ni=y(Jr),ai=y(jr),fi=y(Er),ii=y(lt),li=y(pt),pi=y(Yr),ui=y(Wr),mi=y(Ur),si=y(ze),di=y(Vr),ci=y(ke),hi=y(eo),bi=y(to),xi=y(ro),gi=y(oo),vi=y(ao),Mi=y(fo),yi=y(io),Ti=y(lo),zi=y(po),ki=y(so),Li=y(bo),_i=y(Y),Ri=y(vo),wi=y(Mo),Hi=y(yo),Xi=y(To);return en(Si);})();

2

package.json
{
"name": "culori",
"version": "2.1.1",
"version": "3.0.0-alpha.0",
"type": "module",

@@ -5,0 +5,0 @@ "main": "./bundled/culori.cjs",

import convertHslToRgb from './convertHslToRgb.js';
import convertRgbToHsl from './convertRgbToHsl.js';
import parseHslLegacy from './parseHslLegacy.js';
import parseHsl from './parseHsl.js';

@@ -27,3 +28,3 @@ import { fixupHueShorter } from '../fixup/hue.js';

parse: [parseHsl],
parse: [parseHsl, parseHslLegacy],
serialize: c =>

@@ -30,0 +31,0 @@ `hsl(${c.h || 0} ${c.s !== undefined ? c.s * 100 + '%' : 'none'} ${

@@ -1,51 +0,38 @@

import hueToDeg from '../util/hue.js';
import {
hue,
per,
num_per,
hue_none,
per_none,
num_per_none,
c,
s
} from '../util/regex.js';
import { Tok } from '../parse.js';
/*
hsl() regular expressions.
Reference: https://drafts.csswg.org/css-color/#the-hsl-notation
*/
const hsl_old = new RegExp(
`^hsla?\\(\\s*${hue}${c}${per}${c}${per}\\s*(?:,\\s*${num_per}\\s*)?\\)$`
);
const hsl_new = new RegExp(
`^hsla?\\(\\s*${hue_none}${s}${per_none}${s}${per_none}\\s*(?:\\/\\s*${num_per_none}\\s*)?\\)$`
);
function parseHsl(color, parsed) {
if (!parsed || (parsed[0] !== 'hsl' && parsed[0] !== 'hsla')) {
return undefined;
}
const res = { mode: 'hsl' };
const [, h, s, l, alpha] = parsed;
const parseHsl = color => {
let match = color.match(hsl_old) || color.match(hsl_new);
if (!match) return;
let res = { mode: 'hsl' };
if (h.type !== Tok.None) {
if (h.type === Tok.Percentage) {
return undefined;
}
res.h = h.value;
}
if (match[3] !== undefined) {
res.h = +match[3];
} else if (match[1] !== undefined && match[2] !== undefined) {
res.h = hueToDeg(match[1], match[2]);
if (s.type !== Tok.None) {
if (s.type === Tok.Hue) {
return undefined;
}
res.s = s.type === Tok.Number ? s.value : s.value / 100;
}
if (match[4] !== undefined) {
res.s = Math.min(Math.max(0, match[4] / 100), 1);
if (l.type !== Tok.None) {
if (l.type === Tok.Hue) {
return undefined;
}
res.l = l.type === Tok.Number ? l.value : l.value / 100;
}
if (match[5] !== undefined) {
res.l = Math.min(Math.max(0, match[5] / 100), 1);
if (alpha.type !== Tok.None) {
res.alpha = alpha.type === Tok.Number ? alpha.value : alpha.value / 100;
}
if (match[6] !== undefined) {
res.alpha = match[6] / 100;
} else if (match[7] !== undefined) {
res.alpha = +match[7];
}
return res;
};
}
export default parseHsl;

@@ -1,41 +0,38 @@

import { hue_none, per_none, num_per_none, s } from '../util/regex.js';
import hueToDeg from '../util/hue.js';
import { Tok } from '../parse.js';
/*
hwb() regular expressions.
Reference: https://drafts.csswg.org/css-color/#the-hwb-notation
*/
const hwb = new RegExp(
`^hwb\\(\\s*${hue_none}${s}${per_none}${s}${per_none}\\s*(?:\\/\\s*${num_per_none}\\s*)?\\)$`
);
const parseHwb = color => {
let match = color.match(hwb);
if (!match) {
function ParseHwb(color, parsed) {
if (!parsed || parsed[0] !== 'hwb') {
return undefined;
}
const res = { mode: 'hwb' };
const [, h, w, b, alpha] = parsed;
let res = { mode: 'hwb' };
if (h.type !== Tok.None) {
if (h.type === Tok.Percentage) {
return undefined;
}
res.h = h.value;
}
if (match[3] !== undefined) {
res.h = +match[3];
} else if (match[1] !== undefined && match[2] !== undefined) {
res.h = hueToDeg(match[1], match[2]);
if (w.type !== Tok.None) {
if (w.type === Tok.Hue) {
return undefined;
}
res.w = w.type === Tok.Number ? w.value : w.value / 100;
}
if (match[4] !== undefined) {
res.w = match[4] / 100;
if (b.type !== Tok.None) {
if (b.type === Tok.Hue) {
return undefined;
}
res.b = b.type === Tok.Number ? b.value : b.value / 100;
}
if (match[5] !== undefined) {
res.b = match[5] / 100;
if (alpha.type !== Tok.None) {
res.alpha = alpha.type === Tok.Number ? alpha.value : alpha.value / 100;
}
if (match[6] !== undefined) {
res.alpha = match[6] / 100;
} else if (match[7] !== undefined) {
res.alpha = +match[7];
}
return res;
};
}
export default parseHwb;
export default ParseHwb;

@@ -153,2 +153,6 @@ // Color space definitions

export { default as parseRgb } from './rgb/parseRgb.js';
export { default as parseHslLegacy } from './hsl/parseHslLegacy.js';
export { default as parseRgbLegacy } from './rgb/parseRgbLegacy.js';
export { default as parseOklab } from './oklab/parseOklab.js';
export { default as parseOklch } from './oklch/parseOklch.js';

@@ -155,0 +159,0 @@ export { default as convertA98ToXyz65 } from './a98/convertA98ToXyz65.js';

@@ -154,2 +154,6 @@ // Color space definitions

export { default as parseRgb } from './rgb/parseRgb.js';
export { default as parseHslLegacy } from './hsl/parseHslLegacy.js';
export { default as parseRgbLegacy } from './rgb/parseRgbLegacy.js';
export { default as parseOklab } from './oklab/parseOklab.js';
export { default as parseOklch } from './oklch/parseOklch.js';

@@ -156,0 +160,0 @@ export { default as convertA98ToXyz65 } from './a98/convertA98ToXyz65.js';

@@ -26,4 +26,4 @@ import convertLabToRgb from './convertLabToRgb.js';

l: [0, 100],
a: [-79.287, 93.55],
b: [-112.029, 93.388]
a: [-100, 100],
b: [-100, 100]
},

@@ -33,3 +33,3 @@

serialize: c =>
`lab(${c.l !== undefined ? c.l + '%' : 'none'} ${
`lab(${c.l !== undefined ? c.l : 'none'} ${
c.a !== undefined ? c.a : 'none'

@@ -36,0 +36,0 @@ } ${c.b !== undefined ? c.b : 'none'}${

@@ -1,40 +0,28 @@

import { num_none, per_none, num_per_none, s } from '../util/regex.js';
import { Tok } from '../parse.js';
/*
lab() and lch() regular expressions.
Reference: https://drafts.csswg.org/css-color/#lab-colors
*/
const lab = new RegExp(
`^lab\\(\\s*${per_none}${s}${num_none}${s}${num_none}\\s*(?:\\/\\s*${num_per_none}\\s*)?\\)$`
);
const parseLab = color => {
let match = color.match(lab);
if (!match) {
function parseLab(color, parsed) {
if (!parsed || parsed[0] !== 'lab') {
return undefined;
}
let res = { mode: 'lab' };
if (match[1] !== undefined) {
res.l = +match[1];
const res = { mode: 'lab' };
const [, l, a, b, alpha] = parsed;
if (l.type === Tok.Hue || a.type === Tok.Hue || b.type === Tok.Hue) {
return undefined;
}
if (match[2] !== undefined) {
res.a = +match[2];
if (l.type !== Tok.None) {
res.l = l.value;
}
if (match[3] !== undefined) {
res.b = +match[3];
if (a.type !== Tok.None) {
res.a = a.type === Tok.Number ? a.value : (a.value * 125) / 100;
}
if (match[4] !== undefined) {
res.alpha = match[4] / 100;
} else if (match[5] !== undefined) {
res.alpha = +match[5];
if (b.type !== Tok.None) {
res.b = b.type === Tok.Number ? b.value : (b.value * 125) / 100;
}
if (alpha.type !== Tok.None) {
res.alpha = alpha.type === Tok.Number ? alpha.value : alpha.value / 100;
}
return res;
};
}
export default parseLab;

@@ -29,3 +29,3 @@ import convertLabToLch from './convertLabToLch.js';

l: [0, 100],
c: [0, 131.207],
c: [0, 150],
h: [0, 360]

@@ -36,3 +36,3 @@ },

serialize: c =>
`lch(${c.l !== undefined ? c.l + '%' : 'none'} ${
`lch(${c.l !== undefined ? c.l : 'none'} ${
c.c !== undefined ? c.c : 'none'

@@ -39,0 +39,0 @@ } ${c.h || 0}${c.alpha < 1 ? ` / ${c.alpha}` : ''})`,

@@ -1,46 +0,34 @@

import hueToDeg from '../util/hue.js';
import {
hue_none,
num_none,
per_none,
num_per_none,
s
} from '../util/regex.js';
import { Tok } from '../parse.js';
const lch = new RegExp(
`^lch\\(\\s*${per_none}${s}${num_none}${s}${hue_none}\\s*(?:\\/\\s*${num_per_none}\\s*)?\\)$`
);
const parseLch = color => {
let match = color.match(lch);
if (!match) {
function parseLch(color, parsed) {
if (!parsed || parsed[0] !== 'lch') {
return undefined;
}
let res = { mode: 'lch' };
if (match[1] !== undefined) {
res.l = +match[1];
const res = { mode: 'lch' };
const [, l, c, h, alpha] = parsed;
if (l.type !== Tok.None) {
if (l.type === Tok.Hue) {
return undefined;
}
res.l = l.value;
}
if (match[2] !== undefined) {
res.c = Math.max(0, +match[2]);
if (c.type !== Tok.None) {
res.c = Math.max(
0,
c.type === Tok.Number ? c.value : (c.value * 150) / 100
);
}
if (match[5] !== undefined) {
res.h = +match[5];
} else if (match[3] !== undefined && match[4] !== undefined) {
res.h = hueToDeg(match[3], match[4]);
if (h.type !== Tok.None) {
if (h.type === Tok.Percentage) {
return undefined;
}
res.h = h.value;
}
if (match[6] !== undefined) {
res.alpha = match[6] / 100;
} else if (match[7] !== undefined) {
res.alpha = +match[7];
if (alpha.type !== Tok.None) {
res.alpha = alpha.type === Tok.Number ? alpha.value : alpha.value / 100;
}
return res;
};
}
export default parseLch;

@@ -17,6 +17,6 @@ import rgb from '../rgb/definition.js';

parse: ['--srgb-linear'],
serialize: '--srgb-linear'
parse: ['srgb-linear'],
serialize: 'srgb-linear'
};
export default definition;

@@ -10,2 +10,5 @@ import converter from './converter.js';

let conv_color = conv(color);
if (!conv_color) {
return undefined;
}
let res = (channels || getMode(color.mode).channels).reduce(

@@ -12,0 +15,0 @@ (res, ch) => {

@@ -5,2 +5,3 @@ import convertOklabToLrgb from './convertOklabToLrgb.js';

import convertOklabToRgb from './convertOklabToRgb.js';
import parseOklab from './parseOklab.js';

@@ -29,11 +30,16 @@ import lab from '../lab/definition.js';

ranges: {
l: [0, 0.999],
a: [-0.233, 0.276],
b: [-0.311, 0.198]
l: [0, 1],
a: [-0.4, 0.4],
b: [-0.4, 0.4]
},
parse: ['--oklab'],
serialize: '--oklab'
parse: [parseOklab, '--oklab'],
serialize: c =>
`oklab(${c.l !== undefined ? c.l : 'none'} ${
c.a !== undefined ? c.a : 'none'
} ${c.b !== undefined ? c.b : 'none'}${
c.alpha < 1 ? ` / ${c.alpha}` : ''
})`
};
export default definition;

@@ -6,2 +6,3 @@ import lch from '../lch/definition.js';

import convertRgbToOklab from '../oklab/convertRgbToOklab.js';
import parseOklch from './parseOklch.js';

@@ -22,8 +23,11 @@ const definition = {

parse: ['--oklch'],
serialize: '--oklch',
parse: [parseOklch, '--oklch'],
serialize: c =>
`oklch(${c.l !== undefined ? c.l : 'none'} ${
c.c !== undefined ? c.c : 'none'
} ${c.h || 0}${c.alpha < 1 ? ` / ${c.alpha}` : ''})`,
ranges: {
l: [0, 0.999],
c: [0, 0.322],
l: [0, 1],
c: [0, 0.4],
h: [0, 360]

@@ -30,0 +34,0 @@ }

import { parsers, colorProfiles, getMode } from './modes.js';
import { rx_num_per_none } from './util/regex.js';
function parseColorSyntax(color) {
const m = color.match(/^color\(\s*([a-z0-9-]+)\s*(.*?)\s*\)$/);
if (!m) {
/* eslint-disable-next-line no-control-regex */
const IdentStartCodePoint = /[^\x00-\x7F]|[a-zA-Z_]/;
/* eslint-disable-next-line no-control-regex */
const IdentCodePoint = /[^\x00-\x7F]|[-\w]/;
export const Tok = {
Function: 'function',
Ident: 'ident',
Number: 'number',
Percentage: 'percentage',
ParenClose: ')',
None: 'none',
Hue: 'hue',
Alpha: 'alpha'
};
/*
4.3.10. Check if three code points would start a number
https://drafts.csswg.org/css-syntax/#starts-with-a-number
*/
function is_num(chars) {
let ch = chars[chars._i];
let ch1 = chars[chars._i + 1];
if (ch === '-' || ch === '+') {
return (
/\d/.test(ch1) || (ch1 === '.' && /\d/.test(chars[chars._i + 2]))
);
}
if (ch === '.') {
return /\d/.test(ch1);
}
return /\d/.test(ch);
}
/*
Check if the stream starts with an identifier.
*/
function is_ident(chars) {
if (chars._i >= chars.length) {
return false;
}
let ch = chars[chars._i];
if (ch.match(IdentStartCodePoint)) {
return true;
}
if (ch === '-') {
if (chars.length - chars._i < 2) {
return false;
}
let ch1 = chars[chars._i + 1];
if (ch1.match(IdentStartCodePoint) || ch1 === '-') {
return true;
}
return false;
}
return false;
}
/*
4.3.3. Consume a numeric token
https://drafts.csswg.org/css-syntax/#consume-numeric-token
*/
const huenits = {
deg: 1,
rad: 180 / Math.PI,
grad: 9 / 10,
turn: 360
};
function num(chars) {
let value = '';
if (/[+-]/.test(chars[chars._i])) {
value += chars[chars._i++];
}
value += digits(chars);
if (chars[chars._i] === '.' && /\d/.test(chars[chars._i + 1])) {
value += chars[chars._i++] + digits(chars);
}
if (/e/i.test(chars[chars._i])) {
if (
/[+-]/.test(chars[chars._i + 1]) &&
/\d/.test(chars[chars._i + 2])
) {
value += chars[chars._i++] + chars[chars._i++] + digits(chars);
} else if (/\d/.test(chars[chars._i + 1])) {
value += chars[chars._i++] + digits(chars);
}
}
if (is_ident(chars)) {
let id = ident(chars);
if (/deg|rad|turn|grad/.test(id)) {
return { type: Tok.Hue, value: value * huenits[id] };
}
return undefined;
}
const mode = colorProfiles[m[1]];
if (chars[chars._i] === '%') {
chars._i++;
return { type: Tok.Percentage, value: +value };
}
return { type: Tok.Number, value: +value };
}
/*
Consume digits.
*/
function digits(chars) {
let v = '';
while (/\d/.test(chars[chars._i])) {
v += chars[chars._i++];
}
return v;
}
/*
Consume an identifier.
*/
function ident(chars) {
let v = '';
while (chars._i < chars.length && chars[chars._i].match(IdentCodePoint)) {
v += chars[chars._i++];
}
return v;
}
/*
Consume an ident-like token.
*/
function identlike(chars) {
let v = ident(chars);
if (chars[chars._i] === '(') {
chars._i++;
return { type: Tok.Function, value: v };
}
if (v === 'none') {
return { type: Tok.None, value: undefined };
}
return { type: Tok.Ident, value: v };
}
export function tokenize(str = '') {
let chars = str.trim().split('');
chars._i = 0;
let tokens = [];
let ch;
while (chars._i < chars.length) {
ch = chars[chars._i++];
/*
Consume whitespace without emitting it
*/
if (ch === '\n' || ch === '\t' || ch === ' ') {
while (
chars._i < chars.length &&
(chars[chars._i] === '\n' ||
chars[chars._i] === '\t' ||
chars[chars._i] === ' ')
) {
chars._i++;
}
continue;
}
if (ch === ',') {
return undefined;
}
if (ch === ')') {
tokens.push({ type: Tok.ParenClose });
continue;
}
if (ch === '+') {
if (is_num(chars)) {
chars._i--;
tokens.push(num(chars));
continue;
}
return undefined;
}
if (ch === '-') {
if (is_num(chars)) {
chars._i--;
tokens.push(num(chars));
continue;
} else if (is_ident(chars)) {
chars._i--;
tokens.push({ type: Tok.Ident, value: ident(chars) });
continue;
}
return undefined;
}
if (ch === '.') {
if (is_num(chars)) {
chars._i--;
tokens.push(num(chars));
continue;
}
return undefined;
}
if (ch === '/') {
while (
chars._i < chars.length &&
(chars[chars._i] === '\n' ||
chars[chars._i] === '\t' ||
chars[chars._i] === ' ')
) {
chars._i++;
}
let alpha;
if (is_num(chars)) {
alpha = num(chars);
if (alpha.type !== Tok.Hue) {
tokens.push({ type: Tok.Alpha, value: alpha });
continue;
}
}
if (is_ident(chars)) {
if (ident(chars) === 'none') {
tokens.push({
type: Tok.Alpha,
value: { type: Tok.None, value: undefined }
});
continue;
}
}
return undefined;
}
if (ch.match(/\d/)) {
chars._i--;
tokens.push(num(chars));
continue;
}
if (ch.match(IdentStartCodePoint)) {
chars._i--;
tokens.push(identlike(chars));
continue;
}
/*
Treat everything not already handled as an error.
*/
return undefined;
}
return tokens;
}
export function parseColorSyntax(tokens) {
tokens._i = 0;
let token = tokens[tokens._i++];
if (!token || token.type !== Tok.Function || token.value !== 'color') {
return undefined;
}
token = tokens[tokens._i++];
if (token.type !== Tok.Ident) {
return undefined;
}
const mode = colorProfiles[token.value];
if (!mode) {

@@ -14,38 +274,71 @@ return undefined;

const res = { mode };
const [cmp_string, alpha] = m[2].split(/\s*\/\s*/);
let cm;
if (alpha !== undefined) {
cm = alpha.match(rx_num_per_none);
if (!cm) {
return undefined;
const coords = consumeCoords(tokens, false);
if (!coords) {
return undefined;
}
const channels = getMode(mode).channels;
for (let ii = 0, c; ii < channels.length; ii++) {
c = coords[ii];
if (c.type !== Tok.None) {
res[channels[ii]] = c.type === Tok.Number ? c.value : c.value / 100;
}
if (cm[1] !== undefined) {
res.alpha = cm[1] / 100;
} else if (cm[2] !== undefined) {
res.alpha = +cm[2];
}
}
const components = cmp_string.split(/\s+/);
let channels = getMode(mode).channels;
for (let i = 0, ch; i < channels.length; i++) {
ch = channels[i];
if (ch === 'alpha') {
return res;
}
function consumeCoords(tokens, includeHue) {
const coords = [];
let token;
while (tokens._i < tokens.length) {
token = tokens[tokens._i++];
if (
token.type === Tok.None ||
token.type === Tok.Number ||
token.type === Tok.Alpha ||
token.type === Tok.Percentage ||
token.type === Tok.Hue
) {
coords.push(token);
continue;
}
if (i >= components.length || !components[i]) {
res[ch] = 0;
if (token.type === Tok.ParenClose) {
if (tokens._i < tokens.length) {
return undefined;
}
continue;
}
if (!(cm = components[i].match(rx_num_per_none))) {
return undefined;
}
if (coords.length < 3 || coords.length > 4) {
return undefined;
}
if (coords.length === 4) {
if (coords[3].type !== Tok.Alpha) {
return undefined;
}
if (cm[1] !== undefined) {
res[ch] = cm[1] / 100;
} else if (cm[2] !== undefined) {
res[ch] = +cm[2];
}
coords[3] = coords[3].value;
}
return res;
if (coords.length === 3) {
coords.push({ type: Tok.None, value: undefined });
}
return coords.every(c => c.type !== Tok.Alpha) ? coords : undefined;
}
export function parseModernSyntax(tokens, includeHue) {
tokens._i = 0;
let token = tokens[tokens._i++];
if (!token || token.type !== Tok.Function) {
return undefined;
}
let coords = consumeCoords(tokens, includeHue);
if (!coords) {
return undefined;
}
coords.unshift(token.value);
return coords;
}
const parse = color => {

@@ -55,2 +348,4 @@ if (typeof color !== 'string') {

}
const tokens = tokenize(color);
const parsed = tokens ? parseModernSyntax(tokens, true) : undefined;
let result = undefined;

@@ -60,9 +355,9 @@ let i = 0;

while (i < len) {
if ((result = parsers[i++](color)) !== undefined) {
if ((result = parsers[i++](color, parsed)) !== undefined) {
return result;
}
}
return parseColorSyntax(color);
return tokens ? parseColorSyntax(tokens) : undefined;
};
export default parse;
import parseNamed from './parseNamed.js';
import parseHex from './parseHex.js';
import parseRgbLegacy from './parseRgbLegacy.js';
import parseRgb from './parseRgb.js';

@@ -15,5 +16,11 @@ import parseTransparent from './parseTransparent.js';

channels: ['r', 'g', 'b', 'alpha'],
parse: [parseHex, parseRgb, parseNamed, parseTransparent, 'srgb'],
parse: [
parseRgb,
parseHex,
parseRgbLegacy,
parseNamed,
parseTransparent,
'srgb'
],
serialize: 'srgb',
interpolate: {

@@ -20,0 +27,0 @@ r: interpolatorLinear,

@@ -1,68 +0,28 @@

import {
num,
per,
num_per,
num_none,
per_none,
num_per_none,
c,
s
} from '../util/regex.js';
import { Tok } from '../parse.js';
/*
rgb() regular expressions.
Reference: https://drafts.csswg.org/css-color/#rgb-functions
*/
const rgb_num_old = new RegExp(
`^rgba?\\(\\s*${num}${c}${num}${c}${num}\\s*(?:,\\s*${num_per}\\s*)?\\)$`
);
const rgb_per_old = new RegExp(
`^rgba?\\(\\s*${per}${c}${per}${c}${per}\\s*(?:,\\s*${num_per}\\s*)?\\)$`
);
const rgb_num_new = new RegExp(
`^rgba?\\(\\s*${num_none}${s}${num_none}${s}${num_none}\\s*(?:\\/\\s*${num_per_none}\\s*)?\\)$`
);
const rgb_per_new = new RegExp(
`^rgba?\\(\\s*${per_none}${s}${per_none}${s}${per_none}\\s*(?:\\/\\s*${num_per_none}\\s*)?\\)$`
);
const parseRgb = color => {
let res = { mode: 'rgb' };
let match;
if ((match = color.match(rgb_num_old) || color.match(rgb_num_new))) {
if (match[1] !== undefined) {
res.r = match[1] / 255;
}
if (match[2] !== undefined) {
res.g = match[2] / 255;
}
if (match[3] !== undefined) {
res.b = match[3] / 255;
}
} else if ((match = color.match(rgb_per_old) || color.match(rgb_per_new))) {
if (match[1] !== undefined) {
res.r = match[1] / 100;
}
if (match[2] !== undefined) {
res.g = match[2] / 100;
}
if (match[3] !== undefined) {
res.b = match[3] / 100;
}
} else {
function parseRgb(color, parsed) {
if (!parsed || (parsed[0] !== 'rgb' && parsed[0] !== 'rgba')) {
return undefined;
}
if (match[4] !== undefined) {
res.alpha = match[4] / 100;
} else if (match[5] !== undefined) {
res.alpha = +match[5];
const res = { mode: 'rgb' };
const [, r, g, b, alpha] = parsed;
if (r.type === Tok.Hue || g.type === Tok.Hue || b.type === Tok.Hue) {
return undefined;
}
if (r.type !== Tok.None) {
res.r = r.type === Tok.Number ? r.value / 255 : r.value / 100;
}
if (g.type !== Tok.None) {
res.g = g.type === Tok.Number ? g.value / 255 : g.value / 100;
}
if (b.type !== Tok.None) {
res.b = b.type === Tok.Number ? b.value / 255 : b.value / 100;
}
if (alpha.type !== Tok.None) {
res.alpha = alpha.type === Tok.Number ? alpha.value : alpha.value / 100;
}
return res;
};
}
export default parseRgb;

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

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

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc