tweakit 0.4.2 → 0.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/dist/tweaks/{bezier-EH6GR3RN.js → bezier-W6K7LDKM.js} +1 -1
  2. package/dist/tweaks/{chunk-GDMWOXFU.js → chunk-36FYZSWP.js} +1 -1
  3. package/dist/tweaks/chunk-R7BLRFON.js +1 -0
  4. package/dist/tweaks/{chunk-5G6TFQOD.js → chunk-X5DD246E.js} +1 -1
  5. package/dist/tweaks/clip-7ZYA76G4.js +1 -0
  6. package/dist/tweaks/colour-5W24RKYH.js +1 -0
  7. package/dist/tweaks/core.js +1 -1
  8. package/dist/tweaks/{fold-FNCV4C7P.js → fold-EIXF4KHZ.js} +1 -1
  9. package/dist/tweaks/{gradient-RKPRTDSQ.js → gradient-7UHCGHF2.js} +1 -1
  10. package/dist/tweaks/{heavy-LD64N5S4.js → heavy-O4TB6NMH.js} +1 -1
  11. package/dist/tweaks/{image-TFIUSCCY.js → image-XHCPC5OK.js} +1 -1
  12. package/dist/tweaks/{interval-VFQ2O75Q.js → interval-D6SSAQB4.js} +1 -1
  13. package/dist/tweaks/{monitor-EAU6GD6P.js → monitor-ZDLYLKC4.js} +1 -1
  14. package/dist/tweaks/{motion-FUAKWKPW.js → motion-AAMZUKLO.js} +1 -1
  15. package/dist/tweaks/{plot-AMSWXKO7.js → plot-Z2PJJQOR.js} +1 -1
  16. package/dist/tweaks/{point-UF7RGMGJ.js → point-44JV524M.js} +1 -1
  17. package/dist/tweaks/{shadow-54LEQGQ6.js → shadow-PMJG5SZY.js} +1 -1
  18. package/dist/tweaks/{sides-WJF2NEGM.js → sides-JITGW2AD.js} +1 -1
  19. package/dist/tweaks/{spring-YHAPWWTF.js → spring-CGJCZJ6Q.js} +1 -1
  20. package/dist/tweaks/{tabs-C45GWZYF.js → tabs-U5XC6JHJ.js} +1 -1
  21. package/dist/tweaks.css +1 -1
  22. package/dist/tweaks.js +3 -3
  23. package/dist/types/tweaks/panel.d.ts +20 -1
  24. package/dist/types/tweaks/schema.d.ts +78 -0
  25. package/dist/types/tweaks/types.d.ts +1 -1
  26. package/package.json +1 -1
  27. package/dist/tweaks/chunk-3GZFWFKC.js +0 -1
  28. package/dist/tweaks/colour-G6UZ5HIL.js +0 -1
@@ -1 +1 @@
1
- import{a as f,e as J,j as Q}from"./chunk-5G6TFQOD.js";import{Y as q,g as A,u as M,v as N,w as I,y as K,z as U}from"./chunk-3GZFWFKC.js";function ee(v,$){let R=[.25,.1,.25,1],b=-.25,w=1.25,H=w-b,o=8,Y=e=>e.map((n,i)=>A(n,i%2?b:0,i%2?w:1)),t=Array.isArray(v.value)&&v.value.length===4?v.value.map(Number):R.slice();t.some(e=>!Number.isFinite(e))&&(t=R.slice()),t=Y(t);let Z=t.slice(),E=M("div","tw-bezier");v.label&&E.append(I("div","tw-bezier-label",v.label));let d=M("div","tw-bezier-graph"),k=f("svg","tw-bezier-svg");k.setAttribute("preserveAspectRatio","none");let G=f("line","tw-bezier-guide"),P=f("line","tw-bezier-guide"),X=f("line","tw-bezier-diag"),j=f("line","tw-bezier-ctl"),O=f("line","tw-bezier-ctl"),S=f("path","tw-bezier-curve");k.append(G,P,X,j,O,S);let g=N("tw-bezier-handle");g.setAttribute("aria-label","Control point 1");let x=N("tw-bezier-handle");x.setAttribute("aria-label","Control point 2"),d.append(k,g,x);let W=M("div","tw-fields tw-bezier-fields");E.append(d,W);let h=0,C=0,F=e=>o+e*(h-2*o),D=e=>C-o-(e-b)/H*(C-2*o),z=(e,n,i,m,a)=>{e.setAttribute("x1",n),e.setAttribute("y1",i),e.setAttribute("x2",m),e.setAttribute("y2",a)},y=()=>{if(g.setAttribute("aria-label",`Control point 1, x ${t[0]}, y ${t[1]}`),x.setAttribute("aria-label",`Control point 2, x ${t[2]}, y ${t[3]}`),h=d.offsetWidth,C=d.offsetHeight,h<2)return;k.setAttribute("viewBox",`0 0 ${h} ${C}`);let[e,n,i,m]=t,a=F(0),c=D(0),r=F(1),l=D(1),u=F(e),p=D(n),s=F(i),B=D(m);z(G,o,c,h-o,c),z(P,o,l,h-o,l),z(X,a,c,r,l),z(j,a,c,u,p),z(O,r,l,s,B),S.setAttribute("d",`M${a},${c} C${u},${p} ${s},${B} ${r},${l}`),g.style.left=u+"px",g.style.top=p+"px",x.style.left=s+"px",x.style.top=B+"px"},T=[{label:"X1",i:0,lo:0,hi:1},{label:"Y1",i:1,lo:b,hi:w},{label:"X2",i:2,lo:0,hi:1},{label:"Y2",i:3,lo:b,hi:w}],_=T.map(e=>{let n=Q({label:e.label,value:t[e.i],step:.01,min:e.lo,max:e.hi},i=>{t[e.i]=i,y(),$(t.slice())});return W.append(n.el),n}),L=()=>_.forEach((e,n)=>e.set(t[T[n].i])),V=(e,n)=>{let i=null,m=0,a=0,c=1;J(e,{onDown:r=>{r.preventDefault(),i=d.getBoundingClientRect(),m=d.offsetWidth||i.width,a=d.offsetHeight||i.height,c=i.width/m,e.classList.add("is-dragging"),e.focus({focusVisible:!1})},onMove:r=>{let l=(r.clientX-i.left)/c,u=(r.clientY-i.top)/c,p=A((l-o)/(m-2*o),0,1),s=A(b+(a-o-u)/(a-2*o)*H,b,w);t[n*2]=+p.toFixed(2),t[n*2+1]=+s.toFixed(2),y(),L(),$(t.slice())},onEnd:()=>{i=null,e.classList.remove("is-dragging")}}),e.addEventListener("keydown",r=>{if(r.key==="Escape")return e.blur();if(r.key==="Home"){r.preventDefault(),t=Z.slice(),y(),L(),$(t.slice());return}let l=r.key==="ArrowRight"?1:r.key==="ArrowLeft"?-1:0,u=r.key==="ArrowUp"?1:r.key==="ArrowDown"?-1:0;if(!l&&!u)return;r.preventDefault();let p=r.shiftKey?.1:.01,s=n*2;l&&(t[s]=+A(t[s]+l*p,0,1).toFixed(2)),u&&(t[s+1]=+A(t[s+1]+u*p,b,w).toFixed(2)),y(),L(),$(t.slice())})};return V(g,0),V(x,1),K(y),U(E,[[window,"resize"],[window,"tw-reflow"]],y),{el:E,set:e=>{if(Array.isArray(e)&&e.length===4){let n=e.map(Number);if(n.some(i=>!Number.isFinite(i)))return;t=Y(n),y(),L()}},get:()=>t.slice()}}q("cubicbezier",ee);
1
+ import{a as f,e as J,j as Q}from"./chunk-X5DD246E.js";import{Y as q,g as A,u as M,v as N,w as I,y as K,z as U}from"./chunk-R7BLRFON.js";function ee(v,$){let R=[.25,.1,.25,1],b=-.25,w=1.25,H=w-b,o=8,Y=e=>e.map((n,i)=>A(n,i%2?b:0,i%2?w:1)),t=Array.isArray(v.value)&&v.value.length===4?v.value.map(Number):R.slice();t.some(e=>!Number.isFinite(e))&&(t=R.slice()),t=Y(t);let Z=t.slice(),E=M("div","tw-bezier");v.label&&E.append(I("div","tw-bezier-label",v.label));let d=M("div","tw-bezier-graph"),k=f("svg","tw-bezier-svg");k.setAttribute("preserveAspectRatio","none");let G=f("line","tw-bezier-guide"),P=f("line","tw-bezier-guide"),X=f("line","tw-bezier-diag"),j=f("line","tw-bezier-ctl"),O=f("line","tw-bezier-ctl"),S=f("path","tw-bezier-curve");k.append(G,P,X,j,O,S);let g=N("tw-bezier-handle");g.setAttribute("aria-label","Control point 1");let x=N("tw-bezier-handle");x.setAttribute("aria-label","Control point 2"),d.append(k,g,x);let W=M("div","tw-fields tw-bezier-fields");E.append(d,W);let h=0,C=0,F=e=>o+e*(h-2*o),D=e=>C-o-(e-b)/H*(C-2*o),z=(e,n,i,m,a)=>{e.setAttribute("x1",n),e.setAttribute("y1",i),e.setAttribute("x2",m),e.setAttribute("y2",a)},y=()=>{if(g.setAttribute("aria-label",`Control point 1, x ${t[0]}, y ${t[1]}`),x.setAttribute("aria-label",`Control point 2, x ${t[2]}, y ${t[3]}`),h=d.offsetWidth,C=d.offsetHeight,h<2)return;k.setAttribute("viewBox",`0 0 ${h} ${C}`);let[e,n,i,m]=t,a=F(0),c=D(0),r=F(1),l=D(1),u=F(e),p=D(n),s=F(i),B=D(m);z(G,o,c,h-o,c),z(P,o,l,h-o,l),z(X,a,c,r,l),z(j,a,c,u,p),z(O,r,l,s,B),S.setAttribute("d",`M${a},${c} C${u},${p} ${s},${B} ${r},${l}`),g.style.left=u+"px",g.style.top=p+"px",x.style.left=s+"px",x.style.top=B+"px"},T=[{label:"X1",i:0,lo:0,hi:1},{label:"Y1",i:1,lo:b,hi:w},{label:"X2",i:2,lo:0,hi:1},{label:"Y2",i:3,lo:b,hi:w}],_=T.map(e=>{let n=Q({label:e.label,value:t[e.i],step:.01,min:e.lo,max:e.hi},i=>{t[e.i]=i,y(),$(t.slice())});return W.append(n.el),n}),L=()=>_.forEach((e,n)=>e.set(t[T[n].i])),V=(e,n)=>{let i=null,m=0,a=0,c=1;J(e,{onDown:r=>{r.preventDefault(),i=d.getBoundingClientRect(),m=d.offsetWidth||i.width,a=d.offsetHeight||i.height,c=i.width/m,e.classList.add("is-dragging"),e.focus({focusVisible:!1})},onMove:r=>{let l=(r.clientX-i.left)/c,u=(r.clientY-i.top)/c,p=A((l-o)/(m-2*o),0,1),s=A(b+(a-o-u)/(a-2*o)*H,b,w);t[n*2]=+p.toFixed(2),t[n*2+1]=+s.toFixed(2),y(),L(),$(t.slice())},onEnd:()=>{i=null,e.classList.remove("is-dragging")}}),e.addEventListener("keydown",r=>{if(r.key==="Escape")return e.blur();if(r.key==="Home"){r.preventDefault(),t=Z.slice(),y(),L(),$(t.slice());return}let l=r.key==="ArrowRight"?1:r.key==="ArrowLeft"?-1:0,u=r.key==="ArrowUp"?1:r.key==="ArrowDown"?-1:0;if(!l&&!u)return;r.preventDefault();let p=r.shiftKey?.1:.01,s=n*2;l&&(t[s]=+A(t[s]+l*p,0,1).toFixed(2)),u&&(t[s+1]=+A(t[s+1]+u*p,b,w).toFixed(2)),y(),L(),$(t.slice())})};return V(g,0),V(x,1),K(y),U(E,[[window,"resize"],[window,"tw-reflow"]],y),{el:E,set:e=>{if(Array.isArray(e)&&e.length===4){let n=e.map(Number);if(n.some(i=>!Number.isFinite(i)))return;t=Y(n),y(),L()}},get:()=>t.slice()}}q("cubicbezier",ee);
@@ -1 +1 @@
1
- import{d as ie,f as ot,g as at,i as ue,j as he}from"./chunk-5G6TFQOD.js";import{C as ce,J as le,Y as Ot,g as m,o as Vt,u as v,w as se}from"./chunk-3GZFWFKC.js";var sn=180/Math.PI,Nt=Math.PI/180,V=(t,e)=>[t[0][0]*e[0]+t[0][1]*e[1]+t[0][2]*e[2],t[1][0]*e[0]+t[1][1]*e[1]+t[1][2]*e[2],t[2][0]*e[0]+t[2][1]*e[1]+t[2][2]*e[2]],cn=(t,e)=>{let n=[[0,0,0],[0,0,0],[0,0,0]];for(let o=0;o<3;o++)for(let r=0;r<3;r++)n[o][r]=t[o][0]*e[0][r]+t[o][1]*e[1][r]+t[o][2]*e[2][r];return n},g=t=>Number.isFinite(t)?t:0,ln=(t,e,n)=>Math.min(n,Math.max(e,t)),st=t=>{let e=Math.abs(t);return e<=.04045?t/12.92:Math.sign(t)*((e+.055)/1.055)**2.4},U=t=>{let e=Math.abs(t);return e<=.0031308?t*12.92:Math.sign(t)*(1.055*e**(1/2.4)-.055)},it=1.09929682680944,we=.018053968510807,un=t=>{let e=Math.abs(t);return e<we*4.5?t/4.5:Math.sign(t)*((e+it-1)/it)**(1/.45)},Ce=t=>{let e=Math.abs(t);return e<we?t*4.5:Math.sign(t)*(it*e**.45-(it-1))},ve=1/512,hn=t=>{let e=Math.abs(t);return e<=ve*16?t/16:Math.sign(t)*e**1.8},pn=t=>{let e=Math.abs(t);return e>=ve?Math.sign(t)*e**(1/1.8):16*t},Tt=[[.41239079926595934,.357584339383878,.1804807884018343],[.21263900587151027,.715168678767756,.07219231536073371],[.01933081871559182,.11919477979462598,.9505321522496607]],ct=[[3.2409699419045226,-1.537383177570094,-.4986107602930034],[-.9692436362808796,1.8759675015077202,.04155505740717559],[.05563007969699366,-.20397695888897652,1.0569715142428786]],bn=[[.4865709486482162,.26566769316909306,.19821728523436247],[.2289745640697488,.6917385218365064,.079286914093745],[0,.04511338185890264,1.043944368900976]],ye=[[2.493496911941425,-.9313836179191239,-.40271078445071684],[-.8294889695615747,1.7626640603183463,.023624685841943577],[.03584583024378447,-.07617238926804182,.9568845240076872]],mn=[[.6369580483012914,.14461690358620832,.16888097516417205],[.2627002120112671,.6779980715188708,.05930171646986196],[0,.028072693049087428,1.060985057710791]],$e=[[1.7166511879712674,-.35567078377639233,-.25336628137365974],[-.6666843518324892,1.6164812366349395,.01576854581391113],[.017639857445310783,-.042770613257808524,.9421031212354738]],dn=[[.7977604896723027,.13518583717574031,.0313493495815248],[.2880711282292934,.7118432178101014,8565396060525902e-20],[0,0,.8251046025104601]],fn=[[1.3457989731028281,-.25558010007997534,-.05110628506753401],[-.5446224939028347,1.5082327413132781,.02053603239147973],[0,0,1.2119675456389454]],Ee=[[1.0479298208405488,.022946793341019088,-.05019222954313557],[.029627815688159344,.990434484573249,-.01707382502938514],[-.009243058152591178,.015055144896577895,.7518742899580008]],_e=[[.9554734527042182,-.023098536874261423,.0632593086610217],[-.028369706963208136,1.0099954580058226,.021041398966943008],[.012314001688319899,-.020507696433477912,1.3303659366080753]],gn=[[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],Se=[[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],xn=[[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],Ae=[[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]],lt=216/24389,q=24389/27,z=[.3457/.3585,1,(1-.3457-.3585)/.3585],Y=(t,e,n)=>V(n,[e(t[0]),e(t[1]),e(t[2])]),Z=(t,e,n)=>{let o=V(n,t);return[e(o[0]),e(o[1]),e(o[2])]},pe=t=>{let e=V(Ae,t);return V(Se,[e[0]**3,e[1]**3,e[2]**3])},be=t=>{let e=V(gn,t);return V(xn,[Math.cbrt(e[0]),Math.cbrt(e[1]),Math.cbrt(e[2])])};function me(t){let[e,n,o]=t,r=(e+16)/116,a=n/500+r,s=r-o/200,i=a**3>lt?a**3:(116*a-16)/q,h=e>q*lt?r**3:e/q,p=s**3>lt?s**3:(116*s-16)/q;return V(_e,[i*z[0],h*z[1],p*z[2]])}function de(t){let e=V(Ee,t),n=s=>s>lt?Math.cbrt(s):(q*s+16)/116,o=n(e[0]/z[0]),r=n(e[1]/z[1]),a=n(e[2]/z[2]);return[116*r-16,500*(o-r),200*(r-a)]}var ut=t=>{let e=Math.hypot(t[1],t[2]),n=Math.atan2(t[2],t[1])*sn;return n<0&&(n+=360),[t[0],e,n]},ht=t=>[t[0],t[1]*Math.cos(t[2]*Nt),t[1]*Math.sin(t[2]*Nt)];function Le(t){let e=((Number.isNaN(t[0])?0:t[0])%360+360)%360,n=t[1]/100,o=t[2]/100,r=a=>{let s=(a+e/30)%12,i=n*Math.min(o,1-o);return o-i*Math.max(-1,Math.min(s-3,9-s,1))};return[r(0),r(8),r(4)]}function Ve(t){let e=Math.max(...t),n=Math.min(...t),o=e-n;if(o<1e-9)return NaN;let r;return e===t[0]?r=(t[1]-t[2])/o+(t[1]<t[2]?6:0):e===t[1]?r=(t[2]-t[0])/o+2:r=(t[0]-t[1])/o+4,r*60}function Mn(t){let e=Math.max(...t),n=Math.min(...t),o=(n+e)/2,r=Ve(t),a=e===n||o===0||o===1?0:(e-o)/Math.min(o,1-o);return a<0&&(r+=180,a=-a),r>=360&&(r-=360),[r,a*100,o*100]}function kn(t){let e=t[1]/100,n=t[2]/100;if(e+n>=1){let a=e/(e+n);return[a,a,a]}let o=Le([t[0],100,50]),r=1-e-n;return[o[0]*r+e,o[1]*r+e,o[2]*r+e]}var wn=t=>[Ve(t),Math.min(...t)*100,(1-Math.max(...t))*100];function Cn(t,e){switch(e){case"srgb":return Y(t,st,Tt);case"p3":return Y(t,st,bn);case"rec2020":return Y(t,un,mn);case"prophoto-rgb":return V(_e,Y(t,hn,dn));case"oklab":return pe(t);case"oklch":return pe(ht(t));case"lab":return me(t);case"lch":return me(ht(t));case"hsl":return Y(Le(t),st,Tt);case"hwb":return Y(kn(t),st,Tt)}}function vn(t,e){switch(e){case"srgb":return Z(t,U,ct);case"p3":return Z(t,U,ye);case"rec2020":return Z(t,Ce,$e);case"prophoto-rgb":return Z(V(Ee,t),pn,fn);case"oklab":return be(t);case"oklch":return ut(be(t));case"lab":return de(t);case"lch":return ut(de(t));case"hsl":return Mn(Z(t,U,ct));case"hwb":return wn(Z(t,U,ct))}}function k(t,e,n){return e===n?[t[0],t[1],t[2]]:e==="oklch"&&n==="oklab"?ht(t):e==="oklab"&&n==="oklch"?ut(t):e==="lch"&&n==="lab"?ht(t):e==="lab"&&n==="lch"?ut(t):vn(Cn(t,e),n)}var pt=75e-6,Oe=t=>t.every(e=>e>=-pt&&e<=1+pt),Ft=(t,e)=>Oe(k(t,"oklch",e)),Rt=t=>t.map(e=>Math.min(1,Math.max(0,e))),fe=(t,e)=>Math.hypot(t[0]-e[0],t[1]-e[1],t[2]-e[2]);function bt(t,e){if(Ft(t,e))return k(t,"oklch",e);let n=t[0];if(n>=1)return[1,1,1];if(n<=0)return[0,0,0];if(!Number.isFinite(t[1]))return Rt(k([n,0,g(t[2])],"oklch",e));let o=.02,r=1e-4,a=[t[0],t[1],t[2]],s=0,i=t[1],h=!0,p=Rt(k(a,"oklch",e));if(fe(k(p,e,"oklab"),k(t,"oklch","oklab"))<o)return p;for(;i-s>r;){let u=(s+i)/2;a[1]=u;let b=k(a,"oklch",e);if(h&&Oe(b)){s=u;continue}p=Rt(b);let d=fe(k(p,e,"oklab"),k(a,"oklch","oklab"));if(d<o){if(o-d<r)return p;h=!1,s=u}else i=u}return p}var Te=(t,e)=>{let n=t*Nt,o=Math.cos(n),r=Math.sin(n),a=Ae.map(i=>o*i[1]+r*i[2]),s=cn(e==="p3"?ye:e==="rec2020"?$e:ct,Se);return{d:a,F:s,gam:e==="rec2020"?Ce:U}};function mt(t,e){let{d:[n,o,r],F:a,gam:s}=Te(t,e),i=-pt,h=1+pt;return(p,u)=>{let b=p+u*n,d=p+u*o,E=p+u*r,x=b**3,w=d**3,y=E**3,C=s(a[0][0]*x+a[0][1]*w+a[0][2]*y);if(C<i||C>h)return!1;let A=s(a[1][0]*x+a[1][1]*w+a[1][2]*y);if(A<i||A>h)return!1;let P=s(a[2][0]*x+a[2][1]*w+a[2][2]*y);return P>=i&&P<=h}}function Re(t,e){let{d:[n,o,r],F:a,gam:s}=Te(t,e);return(i,h,p)=>{let u=i+h*n,b=i+h*o,d=i+h*r,E=u**3,x=b**3,w=d**3;p[0]=s(a[0][0]*E+a[0][1]*x+a[0][2]*w),p[1]=s(a[1][0]*E+a[1][1]*x+a[1][2]*w),p[2]=s(a[2][0]*E+a[2][1]*x+a[2][2]*w)}}function dt(t,e,n=.5){if(!t(e,0))return 0;let o=0;for(let r=0;r<16;r++){let a=(o+n)/2;t(e,a)?o=a:n=a}return o}var G=t=>Math.round(Math.min(1,Math.max(0,t))*255).toString(16).padStart(2,"0"),yn=t=>`#${G(t[0])}${G(t[1])}${G(t[2])}`,ft=(t,e,n)=>yn(bt([t,e,n],"srgb"));function Ne(t){let e=String(t).replace("#","").trim();if(e.length===3&&(e=e.split("").map(o=>o+o).join("")),e.length<6)return[.7,.1,280];let n=[parseInt(e.slice(0,2),16)/255,parseInt(e.slice(2,4),16)/255,parseInt(e.slice(4,6),16)/255];return k(n,"srgb","oklch").map(g)}var gt=["hex","srgb","css","hsl","hwb","oklch","oklab","lch","lab","p3","rec2020"],Fe={hex:"HEX",srgb:"RGB",css:"CSS",hsl:"HSL",hwb:"HWB",oklch:"OKLCH",oklab:"OKLab",lch:"LCH",lab:"Lab",p3:"P3",rec2020:"Rec2020"},He=["srgb","css","hsl","hwb","hex"],Ht=t=>!He.includes(t),Ie=t=>t==="hex"||t==="css"?"srgb":t,$n=Object.assign(Object.create(null),{hex:"srgb",srgb:"srgb",css:"srgb",hsl:"hsl",hwb:"hwb",oklch:"oklch",oklab:"oklab",lch:"lch",lab:"lab",p3:"display-p3",rec2020:"rec2020"}),Gn=t=>$n[t]||"oklch",En=Object.assign(Object.create(null),{srgb:"srgb",hsl:"hsl",hwb:"hwb",oklch:"oklch",oklab:"oklab",lch:"lch",lab:"lab","display-p3":"p3",rec2020:"rec2020"}),Bn=t=>En[t]||"oklch",xt=.5,De=(t,e,n)=>Object.freeze(["R","G","B"].map(o=>Object.freeze({k:o,min:0,max:t,step:e,scale:n}))),ge=De(255,1,255),xe=De(1,.01,1),J={oklch:[{k:"L",min:0,max:100,step:1,scale:100},{k:"C",min:0,max:xt,step:.01,scale:1},{k:"H",min:0,max:360,step:1,scale:1}],oklab:[{k:"L",min:0,max:100,step:1,scale:100},{k:"a",min:-.4,max:.4,step:.01,scale:1},{k:"b",min:-.4,max:.4,step:.01,scale:1}],lch:[{k:"L",min:0,max:100,step:1,scale:1},{k:"C",min:0,max:150,step:1,scale:1},{k:"H",min:0,max:360,step:1,scale:1}],lab:[{k:"L",min:0,max:100,step:1,scale:1},{k:"a",min:-125,max:125,step:1,scale:1},{k:"b",min:-125,max:125,step:1,scale:1}],srgb:ge,css:ge,hsl:[{k:"H",min:0,max:360,step:1,scale:1},{k:"S",min:0,max:100,step:1,scale:1},{k:"L",min:0,max:100,step:1,scale:1}],hwb:[{k:"H",min:0,max:360,step:1,scale:1},{k:"W",min:0,max:100,step:1,scale:1},{k:"B",min:0,max:100,step:1,scale:1}],p3:xe,rec2020:xe},Me=t=>t>=1?0:t>=.1?1:t>=.01?2:3,Ge=(t,e,n)=>e==="oklch"?[t[0],t[1],t[2]]:He.includes(n)?e==="srgb"?bt(t,"srgb"):k(bt(t,"srgb"),"srgb",e):k(t,"oklch",e);function Mt(t,e){let n=Ge(t,Ie(e),e);return J[e].map((o,r)=>{let a=g(n[r])*o.scale;return ln(Math.abs(a)<.5*o.step?0:a,o.min,o.max)})}function Be(t,e,n,o){let r=Ie(e),a=Ge(t,r,e).map(g);a[n]=o/J[e][n].scale;let s=k(a,r,"oklch");return[g(s[0]),g(s[1]),g(s[2])]}function Pe(t,e){if(!Ht(e))return"sRGB";let n=bt(t,"srgb");return Math.max(...n)<.03||Math.min(...n)>.97||Ft(t,"srgb")?"sRGB":Ft(t,"p3")?"P3":"wide"}function It(t,e){if(e==="hex")return ft(t[0],t[1],t[2]);let n=J[e],o=Mt(t,e),r=a=>{let s=o[a].toFixed(Me(n[a].step));return n[a].k==="H"&&+s==360?0 .toFixed(Me(n[a].step)):s};return e==="css"?`${r(0)}, ${r(1)}, ${r(2)}`:e==="oklch"||e==="oklab"||e==="lch"||e==="lab"?`${r(0)}% ${r(1)} ${r(2)}`:e==="hsl"||e==="hwb"?`${r(0)} ${r(1)}% ${r(2)}%`:`${r(0)} ${r(1)} ${r(2)}`}var ke=(t,e)=>e==="hex"?t:e==="srgb"?`rgb(${t})`:e==="css"?`rgba(${t}, 1)`:e==="hsl"?`hsl(${t})`:e==="hwb"?`hwb(${t})`:e==="p3"?`color(display-p3 ${t})`:e==="rec2020"?`color(rec2020 ${t})`:`${e}(${t})`;function Xe(t,e,n){let o=g(n);if(e==="hex")return ft(t[0],t[1],t[2])+(o<.999?G(o):"");let r=It(t,e);if(o>=.999)return ke(r,e);let a=+o.toFixed(3);return e==="css"?`rgba(${r}, ${a})`:ke(`${r} / ${a}`,e)}var je=(()=>{try{return document.createElement("canvas").getContext("2d",{colorSpace:"display-p3"})?.getContextAttributes?.().colorSpace==="display-p3"}catch{return!1}})(),Dt=je?{colorSpace:"display-p3"}:{},_n=je?"p3":"srgb",kt=(t,e)=>{let n=t.length-1,o=Math.max(0,Math.min(n,e*n)),r=Math.floor(o),a=o-r;return t[r]*(1-a)+t[Math.min(r+1,n)]*a},Sn=(t,e)=>{let n=mt(t,e),o=new Float64Array(128);for(let r=0;r<128;r++)o[r]=dt(n,r/127);return o},An="var(--tw-checker)",Ln=Object.assign(Object.create(null),{srgb:"srgb","display-p3":"p3",rec2020:"rec2020","prophoto-rgb":"prophoto-rgb"}),jt=/^(rgba?|hsla?|hwb)\([ \t\n\r\f]*([^)]*?)[ \t\n\r\f]*\)$/i,Kt=/^(oklch|oklab|lch|lab|color)\([ \t\n\r\f]*([^)]*?)[ \t\n\r\f]*\)$/i,Vn=/^(srgb|srgb-linear|display-p3|a98-rgb|prophoto-rgb|rec2020|xyz|xyz-d50|xyz-d65)$/i,Ct=/^#?([0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,Gt,Ke=()=>Gt===void 0?Gt=document.createElement("canvas").getContext("2d"):Gt,On=/^(#[0-9a-f]{3,8}|[a-z][a-z-]*(?:\([\w\s.,%+\-\/]*\))?)$/i;function Yn(t){if(t=String(t??"").trim(),!On.test(t))return!1;if(Ct.test(t))return!0;if(Kt.test(t))return Nn(t);if(jt.test(t))return Ze(t)!==null;let e=Ke();return e?["#000","#fff"].some(n=>{e.fillStyle=n;let o=e.fillStyle;return e.fillStyle=t,e.fillStyle!==o}):!0}var Yt="[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:e[+-]?\\d+)?",Tn=new RegExp("^"+Yt+"$","i"),Rn=new RegExp("^"+Yt+"%$","i"),Ye=new RegExp("^("+Yt+")(deg|grad|rad|turn)$","i"),Zt=/[ \t\n\r\f]+/,zt=/^none$/i,Bt=t=>t.replace(/^[ \t\n\r\f]+|[ \t\n\r\f]+$/g,""),Pt=t=>!!t&&!Zt.test(t),B=t=>zt.test(t)?"none":Tn.test(t)?"num":Rn.test(t)?"pct":Ye.test(t)?"angle":null,Xt=t=>{let e=Ye.exec(t);if(!e)return g(parseFloat(t));let n=parseFloat(e[1]),o=e[2].toLowerCase();return g(o==="turn"?n*360:o==="grad"?n*.9:o==="rad"?n*180/Math.PI:n)};function Ze(t){let e=jt.exec(t);if(!e)return null;let n=e[1].toLowerCase().replace(/a$/,""),o=e[2],r,a,s;if(o.includes(",")){if(n==="hwb")return null;let u=o.split(",").map(Bt);if(u.length<3||u.length>4||!u.every(Pt)||(r=u.slice(0,3),a=u[3],s=r.map(B),n==="rgb"?!(s.every(b=>b==="num")||s.every(b=>b==="pct")):!((s[0]==="num"||s[0]==="angle")&&s[1]==="pct"&&s[2]==="pct"))||a!==void 0&&B(a)!=="num"&&B(a)!=="pct")return null}else{let u=o.split("/");if(u.length>2||(r=u[0].split(Zt).filter(Boolean),r.length!==3))return null;if(u.length===2){a=Bt(u[1]);let b=Pt(a)?B(a):null;if(!b||b==="angle")return null}if(s=r.map(B),n==="rgb"?!s.every(b=>b&&b!=="angle"):!(s[0]&&s[0]!=="pct"&&s[1]&&s[1]!=="angle"&&s[2]&&s[2]!=="angle"))return null}let i=(u,b)=>zt.test(u)?0:/%$/.test(u)?parseFloat(u)/100*b:parseFloat(u),h=a===void 0?1:m(i(a,1),0,1);return[n==="rgb"?k([m(i(r[0],255)/255,0,1),m(i(r[1],255)/255,0,1),m(i(r[2],255)/255,0,1)],"srgb","oklch"):k([s[0]==="none"?0:Xt(r[0]),m(i(r[1],100),0,100),m(i(r[2],100),0,100)],n,"oklch"),h]}var Nn=t=>{let e=Kt.exec(t);if(!e)return!1;let n=e[1].toLowerCase(),o=e[2].split("/");if(o.length>2)return!1;let r=o[0].split(Zt).filter(Boolean);if(n==="color"&&!Vn.test(r.shift()||"")||r.length!==3)return!1;let a=n==="lch"||n==="oklch";if(!r.every((s,i)=>{let h=B(s);return h&&(a&&i===2?h!=="pct":h!=="angle")}))return!1;if(o.length===2){let s=Bt(o[1]),i=Pt(s)?B(s):null;if(!i||i==="angle")return!1}return!0};function wt(t){if(t=String(t??"").trim(),Ct.test(t)){let i=t.replace("#",""),h=1;i.length===4?(h=parseInt(i[3]+i[3],16)/255,i=i.slice(0,3)):i.length===8&&(h=parseInt(i.slice(6,8),16)/255,i=i.slice(0,6));let[p,u,b]=Ne("#"+i);return[p,u,b,h]}let e=Kt.exec(t);if(e){let i=e[1].toLowerCase(),[h,p]=e[2].split("/").map(y=>y.trim()),u=h.split(/\s+/).filter(Boolean),b=i;if(i==="color"&&(b=Ln[(u[0]||"").toLowerCase()],u=u.slice(1),!b))return[.7,.1,280,1];let d=(y,C=1)=>!y||zt.test(y)?0:g(parseFloat(y))*(/%$/.test(y)?C:1),E=p?m(d(p,.01),0,1):1,x=i==="lab"?[m(d(u[0]),0,100),d(u[1],1.25),d(u[2],1.25)]:i==="lch"?[m(d(u[0]),0,100),Math.max(0,d(u[1],1.5)),Xt(u[2]||"0")]:i==="color"?[d(u[0],.01),d(u[1],.01),d(u[2],.01)]:i==="oklab"?[m(d(u[0],.01),0,1),d(u[1],.004),d(u[2],.004)]:[m(d(u[0],.01),0,1),Math.max(0,d(u[1],.004)),Xt(u[2]||"0")],w=b==="oklch"?x:k(x,b,"oklch");return[g(w[0]),m(g(w[1]),0,xt),(g(w[2])%360+360)%360,E]}if(jt.test(t)){let i=Ze(t);if(!i)return[0,0,0,1];let[h,p]=i;return[g(h[0]),m(g(h[1]),0,xt),(g(h[2])%360+360)%360,p]}let n=Ke();if(!n)return[0,0,0,1];n.fillStyle="#000",n.fillStyle=t;let o=n.fillStyle;if(Ct.test(o))return wt(o);let r=o.match(/^rgba?\(([^)]*)\)/i),a=((r?r[1]:"").match(/-?[\d.]+(?:e[+-]?\d+)?/gi)||[0,0,0]).map(Number),s=k([a[0]/255,a[1]/255,a[2]/255],"srgb","oklch");return[g(s[0]),g(s[1]),g(s[2]),a[3]!=null?m(g(a[3]),0,1):1]}function ze(t,e){let[n,o,r,a]=wt(t.value||"#7c5cff"),s=gt.includes(t.mode)?t.mode:"oklch",i=NaN,h=null,p=[],u=NaN,b="",d=()=>Xe([n,o,r],s,a),E=v("div","tw-color-body"),x=v("div","tw-wg-area"),w=document.createElement("canvas");w.className="tw-wg-canvas";let y=v("div","tw-wg-thumb");x.append(w,y);let C=v("div","tw-wg-hue"),A=document.createElement("canvas");A.className="tw-wg-hue-canvas";let P=v("div","tw-wg-hue-thumb");C.append(A,P);let _=v("div","tw-wg-alpha"),Wt=v("div","tw-wg-alpha-grad"),vt=v("div","tw-wg-hue-thumb");_.append(Wt,vt),w.setAttribute("aria-hidden","true"),A.setAttribute("aria-hidden","true"),x.tabIndex=0,x.setAttribute("role","group"),x.setAttribute("aria-label","Colour plane: chroma across, lightness up"),C.tabIndex=0,C.setAttribute("role","slider"),C.setAttribute("aria-label","Hue"),C.setAttribute("aria-valuemin","0"),C.setAttribute("aria-valuemax","360"),_.tabIndex=0,_.setAttribute("role","slider"),_.setAttribute("aria-label","Alpha"),_.setAttribute("aria-valuemin","0"),_.setAttribute("aria-valuemax","1");let Ut=v("div","tw-color-mode-row"),R=v("select","tw-color-mode");R.setAttribute("aria-label","Color mode"),gt.forEach(c=>{let l=document.createElement("option");l.value=c,l.textContent=Fe[c],R.append(l)}),R.value=s;let qt=v("span","tw-color-gamut");Ut.append(R,qt);let N=v("div","tw-color-channels");E.append(x,C,_,Ut,N);let $=w.getContext("2d",Dt),Jt=A.getContext("2d"),X=document.createElement("canvas"),We=X.getContext("2d",Dt),yt=null,$t=()=>{let c=x.getBoundingClientRect(),l=Math.round(c.width),f=Math.round(c.height);if(l<2)return;let M=window.devicePixelRatio||1,S=Ht(s)?"p3":"srgb",F=Sn(r,S);h=F;let T=Math.round(l*M),tt=Math.round(f*M),H=Math.max(1,Math.round(T/4)),j=Math.max(1,Math.round(tt/4));(X.width!==H||X.height!==j)&&(X.width=H,X.height=j,yt=new ImageData(H,j,Dt));let et=yt.data,nn=j>1?1/(j-1):0,rn=H>1?1/(H-1):0,on=Re(r,_n),nt=[0,0,0];for(let I=0;I<j;I++){let rt=1-I*nn,St=kt(F,rt);for(let D=0;D<H;D++){on(rt,D*rn*St,nt);let K=(I*H+D)*4;et[K]=Math.round(m(nt[0],0,1)*255),et[K+1]=Math.round(m(nt[1],0,1)*255),et[K+2]=Math.round(m(nt[2],0,1)*255),et[K+3]=255}}if(We.putImageData(yt,0,0),w.width=T,w.height=tt,$.imageSmoothingEnabled=!0,$.drawImage(X,0,0,T,tt),S!=="srgb"){let I=(rt,St,D,K)=>{let an=mt(r,rt),At=[];for(let L=0;L<=100;L++){let W=L/100,Lt=kt(F,W);if(Lt<=0)continue;let ae=dt(an,W,Lt);ae<=0||At.push([Math.min(ae/Lt*T,T-D*M/2),(1-W)*tt])}At.length<2||($.save(),$.strokeStyle=St,$.lineWidth=D*M,$.lineJoin=$.lineCap="round",$.setLineDash(K.map(L=>L*M)),$.beginPath(),At.forEach((L,W)=>W?$.lineTo(L[0],L[1]):$.moveTo(L[0],L[1])),$.stroke(),$.restore())};I("srgb","rgba(255,255,255,0.7)",1.5,[]),I("p3","rgba(255,255,255,0.4)",1,[3,3])}i=r},Qt=.7,te=c=>{let l=k([Qt,dt(mt(c,"srgb"),Qt),c],"oklch","srgb");return`rgb(${m(l[0]*255,0,255)|0},${m(l[1]*255,0,255)|0},${m(l[2]*255,0,255)|0})`},ee=0,Ue=()=>{let c=C.getBoundingClientRect(),l=Math.max(1,Math.round(c.width)),f=Math.max(1,Math.round(c.height));if(!(l<2)&&!(l===ee&&A.width===l)){ee=l,A.width=l,A.height=f;for(let M=0;M<l;M++)Jt.fillStyle=te(M/(l-1)*360),Jt.fillRect(M,0,1,f)}},Et=()=>{let c=h?kt(h,n):.4,l=S=>`${m(S,0,1)*100}%`,f=(S,F)=>{let T=m(S,0,1);return`calc(${T*100}% + ${(.5-T)*F}px)`};y.style.left=l(c>0?o/c:0),y.style.top=l(1-n),P.style.left=f(r/360,16),vt.style.left=f(a,16),_.setAttribute("aria-valuenow",String(+a.toFixed(2)));let M=Math.round(r);C.setAttribute("aria-valuenow",String(M)),C.setAttribute("aria-valuetext",`${M}\xB0`),x.setAttribute("aria-description",`lightness ${Math.round(n*100)}%, chroma ${+o.toFixed(3)}`),Wt.style.background=`linear-gradient(to right, oklch(${n} ${o} ${r} / 0), oklch(${n} ${o} ${r}))`,y.style.background=`oklch(${n} ${o} ${r})`,vt.style.background=`linear-gradient(oklch(${n} ${o} ${r} / ${a}), oklch(${n} ${o} ${r} / ${a})), var(--tw-dropdown-bg)`,r!==u&&(b=te(r),u=r),P.style.background=b},Q=()=>{if(qt.textContent=Pe([n,o,r],s),s==="hex"){let c=N.querySelector(".tw-color-chan-input");c&&document.activeElement!==c&&(c.value=ft(n,o,r)+(a<.999?G(a):""))}else{let c=Mt([n,o,r],s);p.forEach((l,f)=>{l.el.contains(document.activeElement)||l.set(c[f])})}},qe=()=>{Ue(),$t(),Et()},Je=()=>e(d()),ne=c=>{c&&r!==i&&$t(),Et(),Q()},O=c=>{ne(c),Je()},re=()=>{if(N.replaceChildren(),p=[],s==="hex"){N.classList.add("tw-color-channels--hex");let c=v("div","tw-color-chan"),l=v("input","tw-color-chan-input");l.type="text",l.spellcheck=!1,l.setAttribute("aria-label","Hex color"),ce(l),ie(l),l.addEventListener("change",()=>{let f=l.value.trim();Ct.test(f)&&([n,o,r,a]=wt(f),O(!0))}),l.addEventListener("blur",Q),l.addEventListener("keydown",f=>{f.key==="Enter"&&l.blur()}),c.append(se("span","tw-color-chan-label","HEX"),l),N.append(c)}else{N.classList.remove("tw-color-channels--hex");let c=Mt([n,o,r],s);J[s].forEach((l,f)=>{let M=he({label:l.k,value:c[f],min:l.min,max:l.max,step:l.step},S=>{[n,o,r]=Be([n,o,r],s,f,m(S,l.min,l.max)),O(!0)});M.el.addEventListener("focusout",Q),p.push(M),N.append(M.el)})}Q()},_t=c=>h?kt(h,c):.4,Qe=c=>at(c,x);ot(x,c=>{let[l,f]=Qe(c);n=1-f,o=l*_t(n),O(!1)}),x.addEventListener("keydown",c=>{if(c.key==="Home"||c.key==="End"){c.preventDefault();return}let l=c.shiftKey?10:1,f=c.key==="ArrowRight"?l:c.key==="ArrowLeft"?-l:0,M=c.key==="ArrowUp"?l:c.key==="ArrowDown"?-l:c.key==="PageUp"?10:c.key==="PageDown"?-10:0;if(!f&&!M)return;c.preventDefault();let S=_t(n),F=m((S>0?o/S:0)+f*.01,0,1);n=m(n+M*.01,0,1),o=F*_t(n),O(!1)});let tn=c=>at(c,C)[0]*360;ot(C,c=>{r=tn(c),O(!0)}),C.addEventListener("keydown",c=>{let l=Vt(c,r,1,0,360);l!=null&&(c.preventDefault(),r=m(l,0,360),O(!0))});let en=c=>at(c,_)[0];ot(_,c=>{a=en(c),O(!1)}),_.addEventListener("keydown",c=>{let l=Vt(c,a,.01,0,1);l!=null&&(c.preventDefault(),a=m(l,0,1),O(!1))});let oe=c=>{s=c,R.value=c,re(),$t(),Et()};return R.addEventListener("change",()=>{oe(R.value),t.onMode&&t.onMode()}),re(),{el:E,set:c=>{let l=document.activeElement;l&&E.contains(l)&&l.matches("input")&&l.blur(),[n,o,r,a]=wt(c),ne(!0)},get:()=>d(),mode:()=>s,setMode:c=>{c!==s&&gt.includes(c)&&oe(c)},reflow:qe,swatchCss:()=>`linear-gradient(oklch(${n} ${o} ${r} / ${a}), oklch(${n} ${o} ${r} / ${a})), ${An}`,valueText:()=>It([n,o,r],s)+(a<.999?s==="hex"?G(a):` / ${+a.toFixed(2)}`:"")}}function Fn(t,e){let{root:n,trigger:o,right:r}=ue("tw-color",t.label??"Colour"),a=v("span","tw-trigger-chip tw-color-swatch"),s=v("span","tw-trigger-value");r.append(a,s);let i=v("div","tw-color-pop"),h=()=>{a.style.background=p.swatchCss(),s.textContent=p.valueText()},p=ze({value:t.value,onMode:()=>h()},u=>{h(),e(u)});return i.append(p.el),n.append(i),le(n,o,i,{width:240,fallbackH:340,gap:6,onOpen:p.reflow,onReflow:p.reflow}),h(),{el:n,set:u=>{u!=null&&(p.set(u),h())},get:()=>p.get()}}var Zn=(t,e,n,o)=>o<.999?`oklch(${+t.toFixed(4)} ${+e.toFixed(4)} ${+n.toFixed(2)} / ${+o.toFixed(3)})`:`oklch(${+t.toFixed(4)} ${+e.toFixed(4)} ${+n.toFixed(2)})`;Ot("color",Fn);Ot("colorpicker",ze);export{Gn as a,Bn as b,An as c,Yn as d,wt as e,ze as f,Zn as g};
1
+ import{d as ie,f as ot,g as at,i as ue,j as he}from"./chunk-X5DD246E.js";import{C as ce,J as le,Y as Ot,g as m,o as Vt,u as v,w as se}from"./chunk-R7BLRFON.js";var sn=180/Math.PI,Nt=Math.PI/180,V=(t,e)=>[t[0][0]*e[0]+t[0][1]*e[1]+t[0][2]*e[2],t[1][0]*e[0]+t[1][1]*e[1]+t[1][2]*e[2],t[2][0]*e[0]+t[2][1]*e[1]+t[2][2]*e[2]],cn=(t,e)=>{let n=[[0,0,0],[0,0,0],[0,0,0]];for(let o=0;o<3;o++)for(let r=0;r<3;r++)n[o][r]=t[o][0]*e[0][r]+t[o][1]*e[1][r]+t[o][2]*e[2][r];return n},g=t=>Number.isFinite(t)?t:0,ln=(t,e,n)=>Math.min(n,Math.max(e,t)),st=t=>{let e=Math.abs(t);return e<=.04045?t/12.92:Math.sign(t)*((e+.055)/1.055)**2.4},U=t=>{let e=Math.abs(t);return e<=.0031308?t*12.92:Math.sign(t)*(1.055*e**(1/2.4)-.055)},it=1.09929682680944,we=.018053968510807,un=t=>{let e=Math.abs(t);return e<we*4.5?t/4.5:Math.sign(t)*((e+it-1)/it)**(1/.45)},Ce=t=>{let e=Math.abs(t);return e<we?t*4.5:Math.sign(t)*(it*e**.45-(it-1))},ve=1/512,hn=t=>{let e=Math.abs(t);return e<=ve*16?t/16:Math.sign(t)*e**1.8},pn=t=>{let e=Math.abs(t);return e>=ve?Math.sign(t)*e**(1/1.8):16*t},Tt=[[.41239079926595934,.357584339383878,.1804807884018343],[.21263900587151027,.715168678767756,.07219231536073371],[.01933081871559182,.11919477979462598,.9505321522496607]],ct=[[3.2409699419045226,-1.537383177570094,-.4986107602930034],[-.9692436362808796,1.8759675015077202,.04155505740717559],[.05563007969699366,-.20397695888897652,1.0569715142428786]],bn=[[.4865709486482162,.26566769316909306,.19821728523436247],[.2289745640697488,.6917385218365064,.079286914093745],[0,.04511338185890264,1.043944368900976]],ye=[[2.493496911941425,-.9313836179191239,-.40271078445071684],[-.8294889695615747,1.7626640603183463,.023624685841943577],[.03584583024378447,-.07617238926804182,.9568845240076872]],mn=[[.6369580483012914,.14461690358620832,.16888097516417205],[.2627002120112671,.6779980715188708,.05930171646986196],[0,.028072693049087428,1.060985057710791]],$e=[[1.7166511879712674,-.35567078377639233,-.25336628137365974],[-.6666843518324892,1.6164812366349395,.01576854581391113],[.017639857445310783,-.042770613257808524,.9421031212354738]],dn=[[.7977604896723027,.13518583717574031,.0313493495815248],[.2880711282292934,.7118432178101014,8565396060525902e-20],[0,0,.8251046025104601]],fn=[[1.3457989731028281,-.25558010007997534,-.05110628506753401],[-.5446224939028347,1.5082327413132781,.02053603239147973],[0,0,1.2119675456389454]],Ee=[[1.0479298208405488,.022946793341019088,-.05019222954313557],[.029627815688159344,.990434484573249,-.01707382502938514],[-.009243058152591178,.015055144896577895,.7518742899580008]],_e=[[.9554734527042182,-.023098536874261423,.0632593086610217],[-.028369706963208136,1.0099954580058226,.021041398966943008],[.012314001688319899,-.020507696433477912,1.3303659366080753]],gn=[[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],Se=[[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],xn=[[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],Ae=[[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]],lt=216/24389,q=24389/27,z=[.3457/.3585,1,(1-.3457-.3585)/.3585],Y=(t,e,n)=>V(n,[e(t[0]),e(t[1]),e(t[2])]),Z=(t,e,n)=>{let o=V(n,t);return[e(o[0]),e(o[1]),e(o[2])]},pe=t=>{let e=V(Ae,t);return V(Se,[e[0]**3,e[1]**3,e[2]**3])},be=t=>{let e=V(gn,t);return V(xn,[Math.cbrt(e[0]),Math.cbrt(e[1]),Math.cbrt(e[2])])};function me(t){let[e,n,o]=t,r=(e+16)/116,a=n/500+r,s=r-o/200,i=a**3>lt?a**3:(116*a-16)/q,h=e>q*lt?r**3:e/q,p=s**3>lt?s**3:(116*s-16)/q;return V(_e,[i*z[0],h*z[1],p*z[2]])}function de(t){let e=V(Ee,t),n=s=>s>lt?Math.cbrt(s):(q*s+16)/116,o=n(e[0]/z[0]),r=n(e[1]/z[1]),a=n(e[2]/z[2]);return[116*r-16,500*(o-r),200*(r-a)]}var ut=t=>{let e=Math.hypot(t[1],t[2]),n=Math.atan2(t[2],t[1])*sn;return n<0&&(n+=360),[t[0],e,n]},ht=t=>[t[0],t[1]*Math.cos(t[2]*Nt),t[1]*Math.sin(t[2]*Nt)];function Le(t){let e=((Number.isNaN(t[0])?0:t[0])%360+360)%360,n=t[1]/100,o=t[2]/100,r=a=>{let s=(a+e/30)%12,i=n*Math.min(o,1-o);return o-i*Math.max(-1,Math.min(s-3,9-s,1))};return[r(0),r(8),r(4)]}function Ve(t){let e=Math.max(...t),n=Math.min(...t),o=e-n;if(o<1e-9)return NaN;let r;return e===t[0]?r=(t[1]-t[2])/o+(t[1]<t[2]?6:0):e===t[1]?r=(t[2]-t[0])/o+2:r=(t[0]-t[1])/o+4,r*60}function Mn(t){let e=Math.max(...t),n=Math.min(...t),o=(n+e)/2,r=Ve(t),a=e===n||o===0||o===1?0:(e-o)/Math.min(o,1-o);return a<0&&(r+=180,a=-a),r>=360&&(r-=360),[r,a*100,o*100]}function kn(t){let e=t[1]/100,n=t[2]/100;if(e+n>=1){let a=e/(e+n);return[a,a,a]}let o=Le([t[0],100,50]),r=1-e-n;return[o[0]*r+e,o[1]*r+e,o[2]*r+e]}var wn=t=>[Ve(t),Math.min(...t)*100,(1-Math.max(...t))*100];function Cn(t,e){switch(e){case"srgb":return Y(t,st,Tt);case"p3":return Y(t,st,bn);case"rec2020":return Y(t,un,mn);case"prophoto-rgb":return V(_e,Y(t,hn,dn));case"oklab":return pe(t);case"oklch":return pe(ht(t));case"lab":return me(t);case"lch":return me(ht(t));case"hsl":return Y(Le(t),st,Tt);case"hwb":return Y(kn(t),st,Tt)}}function vn(t,e){switch(e){case"srgb":return Z(t,U,ct);case"p3":return Z(t,U,ye);case"rec2020":return Z(t,Ce,$e);case"prophoto-rgb":return Z(V(Ee,t),pn,fn);case"oklab":return be(t);case"oklch":return ut(be(t));case"lab":return de(t);case"lch":return ut(de(t));case"hsl":return Mn(Z(t,U,ct));case"hwb":return wn(Z(t,U,ct))}}function k(t,e,n){return e===n?[t[0],t[1],t[2]]:e==="oklch"&&n==="oklab"?ht(t):e==="oklab"&&n==="oklch"?ut(t):e==="lch"&&n==="lab"?ht(t):e==="lab"&&n==="lch"?ut(t):vn(Cn(t,e),n)}var pt=75e-6,Oe=t=>t.every(e=>e>=-pt&&e<=1+pt),Ft=(t,e)=>Oe(k(t,"oklch",e)),Rt=t=>t.map(e=>Math.min(1,Math.max(0,e))),fe=(t,e)=>Math.hypot(t[0]-e[0],t[1]-e[1],t[2]-e[2]);function bt(t,e){if(Ft(t,e))return k(t,"oklch",e);let n=t[0];if(n>=1)return[1,1,1];if(n<=0)return[0,0,0];if(!Number.isFinite(t[1]))return Rt(k([n,0,g(t[2])],"oklch",e));let o=.02,r=1e-4,a=[t[0],t[1],t[2]],s=0,i=t[1],h=!0,p=Rt(k(a,"oklch",e));if(fe(k(p,e,"oklab"),k(t,"oklch","oklab"))<o)return p;for(;i-s>r;){let u=(s+i)/2;a[1]=u;let b=k(a,"oklch",e);if(h&&Oe(b)){s=u;continue}p=Rt(b);let d=fe(k(p,e,"oklab"),k(a,"oklch","oklab"));if(d<o){if(o-d<r)return p;h=!1,s=u}else i=u}return p}var Te=(t,e)=>{let n=t*Nt,o=Math.cos(n),r=Math.sin(n),a=Ae.map(i=>o*i[1]+r*i[2]),s=cn(e==="p3"?ye:e==="rec2020"?$e:ct,Se);return{d:a,F:s,gam:e==="rec2020"?Ce:U}};function mt(t,e){let{d:[n,o,r],F:a,gam:s}=Te(t,e),i=-pt,h=1+pt;return(p,u)=>{let b=p+u*n,d=p+u*o,E=p+u*r,x=b**3,w=d**3,y=E**3,C=s(a[0][0]*x+a[0][1]*w+a[0][2]*y);if(C<i||C>h)return!1;let A=s(a[1][0]*x+a[1][1]*w+a[1][2]*y);if(A<i||A>h)return!1;let P=s(a[2][0]*x+a[2][1]*w+a[2][2]*y);return P>=i&&P<=h}}function Re(t,e){let{d:[n,o,r],F:a,gam:s}=Te(t,e);return(i,h,p)=>{let u=i+h*n,b=i+h*o,d=i+h*r,E=u**3,x=b**3,w=d**3;p[0]=s(a[0][0]*E+a[0][1]*x+a[0][2]*w),p[1]=s(a[1][0]*E+a[1][1]*x+a[1][2]*w),p[2]=s(a[2][0]*E+a[2][1]*x+a[2][2]*w)}}function dt(t,e,n=.5){if(!t(e,0))return 0;let o=0;for(let r=0;r<16;r++){let a=(o+n)/2;t(e,a)?o=a:n=a}return o}var G=t=>Math.round(Math.min(1,Math.max(0,t))*255).toString(16).padStart(2,"0"),yn=t=>`#${G(t[0])}${G(t[1])}${G(t[2])}`,ft=(t,e,n)=>yn(bt([t,e,n],"srgb"));function Ne(t){let e=String(t).replace("#","").trim();if(e.length===3&&(e=e.split("").map(o=>o+o).join("")),e.length<6)return[.7,.1,280];let n=[parseInt(e.slice(0,2),16)/255,parseInt(e.slice(2,4),16)/255,parseInt(e.slice(4,6),16)/255];return k(n,"srgb","oklch").map(g)}var gt=["hex","srgb","css","hsl","hwb","oklch","oklab","lch","lab","p3","rec2020"],Fe={hex:"HEX",srgb:"RGB",css:"CSS",hsl:"HSL",hwb:"HWB",oklch:"OKLCH",oklab:"OKLab",lch:"LCH",lab:"Lab",p3:"P3",rec2020:"Rec2020"},He=["srgb","css","hsl","hwb","hex"],Ht=t=>!He.includes(t),Ie=t=>t==="hex"||t==="css"?"srgb":t,$n=Object.assign(Object.create(null),{hex:"srgb",srgb:"srgb",css:"srgb",hsl:"hsl",hwb:"hwb",oklch:"oklch",oklab:"oklab",lch:"lch",lab:"lab",p3:"display-p3",rec2020:"rec2020"}),Gn=t=>$n[t]||"oklch",En=Object.assign(Object.create(null),{srgb:"srgb",hsl:"hsl",hwb:"hwb",oklch:"oklch",oklab:"oklab",lch:"lch",lab:"lab","display-p3":"p3",rec2020:"rec2020"}),Bn=t=>En[t]||"oklch",xt=.5,De=(t,e,n)=>Object.freeze(["R","G","B"].map(o=>Object.freeze({k:o,min:0,max:t,step:e,scale:n}))),ge=De(255,1,255),xe=De(1,.01,1),J={oklch:[{k:"L",min:0,max:100,step:1,scale:100},{k:"C",min:0,max:xt,step:.01,scale:1},{k:"H",min:0,max:360,step:1,scale:1}],oklab:[{k:"L",min:0,max:100,step:1,scale:100},{k:"a",min:-.4,max:.4,step:.01,scale:1},{k:"b",min:-.4,max:.4,step:.01,scale:1}],lch:[{k:"L",min:0,max:100,step:1,scale:1},{k:"C",min:0,max:150,step:1,scale:1},{k:"H",min:0,max:360,step:1,scale:1}],lab:[{k:"L",min:0,max:100,step:1,scale:1},{k:"a",min:-125,max:125,step:1,scale:1},{k:"b",min:-125,max:125,step:1,scale:1}],srgb:ge,css:ge,hsl:[{k:"H",min:0,max:360,step:1,scale:1},{k:"S",min:0,max:100,step:1,scale:1},{k:"L",min:0,max:100,step:1,scale:1}],hwb:[{k:"H",min:0,max:360,step:1,scale:1},{k:"W",min:0,max:100,step:1,scale:1},{k:"B",min:0,max:100,step:1,scale:1}],p3:xe,rec2020:xe},Me=t=>t>=1?0:t>=.1?1:t>=.01?2:3,Ge=(t,e,n)=>e==="oklch"?[t[0],t[1],t[2]]:He.includes(n)?e==="srgb"?bt(t,"srgb"):k(bt(t,"srgb"),"srgb",e):k(t,"oklch",e);function Mt(t,e){let n=Ge(t,Ie(e),e);return J[e].map((o,r)=>{let a=g(n[r])*o.scale;return ln(Math.abs(a)<.5*o.step?0:a,o.min,o.max)})}function Be(t,e,n,o){let r=Ie(e),a=Ge(t,r,e).map(g);a[n]=o/J[e][n].scale;let s=k(a,r,"oklch");return[g(s[0]),g(s[1]),g(s[2])]}function Pe(t,e){if(!Ht(e))return"sRGB";let n=bt(t,"srgb");return Math.max(...n)<.03||Math.min(...n)>.97||Ft(t,"srgb")?"sRGB":Ft(t,"p3")?"P3":"wide"}function It(t,e){if(e==="hex")return ft(t[0],t[1],t[2]);let n=J[e],o=Mt(t,e),r=a=>{let s=o[a].toFixed(Me(n[a].step));return n[a].k==="H"&&+s==360?0 .toFixed(Me(n[a].step)):s};return e==="css"?`${r(0)}, ${r(1)}, ${r(2)}`:e==="oklch"||e==="oklab"||e==="lch"||e==="lab"?`${r(0)}% ${r(1)} ${r(2)}`:e==="hsl"||e==="hwb"?`${r(0)} ${r(1)}% ${r(2)}%`:`${r(0)} ${r(1)} ${r(2)}`}var ke=(t,e)=>e==="hex"?t:e==="srgb"?`rgb(${t})`:e==="css"?`rgba(${t}, 1)`:e==="hsl"?`hsl(${t})`:e==="hwb"?`hwb(${t})`:e==="p3"?`color(display-p3 ${t})`:e==="rec2020"?`color(rec2020 ${t})`:`${e}(${t})`;function Xe(t,e,n){let o=g(n);if(e==="hex")return ft(t[0],t[1],t[2])+(o<.999?G(o):"");let r=It(t,e);if(o>=.999)return ke(r,e);let a=+o.toFixed(3);return e==="css"?`rgba(${r}, ${a})`:ke(`${r} / ${a}`,e)}var je=(()=>{try{return document.createElement("canvas").getContext("2d",{colorSpace:"display-p3"})?.getContextAttributes?.().colorSpace==="display-p3"}catch{return!1}})(),Dt=je?{colorSpace:"display-p3"}:{},_n=je?"p3":"srgb",kt=(t,e)=>{let n=t.length-1,o=Math.max(0,Math.min(n,e*n)),r=Math.floor(o),a=o-r;return t[r]*(1-a)+t[Math.min(r+1,n)]*a},Sn=(t,e)=>{let n=mt(t,e),o=new Float64Array(128);for(let r=0;r<128;r++)o[r]=dt(n,r/127);return o},An="var(--tw-checker)",Ln=Object.assign(Object.create(null),{srgb:"srgb","display-p3":"p3",rec2020:"rec2020","prophoto-rgb":"prophoto-rgb"}),jt=/^(rgba?|hsla?|hwb)\([ \t\n\r\f]*([^)]*?)[ \t\n\r\f]*\)$/i,Kt=/^(oklch|oklab|lch|lab|color)\([ \t\n\r\f]*([^)]*?)[ \t\n\r\f]*\)$/i,Vn=/^(srgb|srgb-linear|display-p3|a98-rgb|prophoto-rgb|rec2020|xyz|xyz-d50|xyz-d65)$/i,Ct=/^#?([0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,Gt,Ke=()=>Gt===void 0?Gt=document.createElement("canvas").getContext("2d"):Gt,On=/^(#[0-9a-f]{3,8}|[a-z][a-z-]*(?:\([\w\s.,%+\-\/]*\))?)$/i;function Yn(t){if(t=String(t??"").trim(),!On.test(t))return!1;if(Ct.test(t))return!0;if(Kt.test(t))return Nn(t);if(jt.test(t))return Ze(t)!==null;let e=Ke();return e?["#000","#fff"].some(n=>{e.fillStyle=n;let o=e.fillStyle;return e.fillStyle=t,e.fillStyle!==o}):!0}var Yt="[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:e[+-]?\\d+)?",Tn=new RegExp("^"+Yt+"$","i"),Rn=new RegExp("^"+Yt+"%$","i"),Ye=new RegExp("^("+Yt+")(deg|grad|rad|turn)$","i"),Zt=/[ \t\n\r\f]+/,zt=/^none$/i,Bt=t=>t.replace(/^[ \t\n\r\f]+|[ \t\n\r\f]+$/g,""),Pt=t=>!!t&&!Zt.test(t),B=t=>zt.test(t)?"none":Tn.test(t)?"num":Rn.test(t)?"pct":Ye.test(t)?"angle":null,Xt=t=>{let e=Ye.exec(t);if(!e)return g(parseFloat(t));let n=parseFloat(e[1]),o=e[2].toLowerCase();return g(o==="turn"?n*360:o==="grad"?n*.9:o==="rad"?n*180/Math.PI:n)};function Ze(t){let e=jt.exec(t);if(!e)return null;let n=e[1].toLowerCase().replace(/a$/,""),o=e[2],r,a,s;if(o.includes(",")){if(n==="hwb")return null;let u=o.split(",").map(Bt);if(u.length<3||u.length>4||!u.every(Pt)||(r=u.slice(0,3),a=u[3],s=r.map(B),n==="rgb"?!(s.every(b=>b==="num")||s.every(b=>b==="pct")):!((s[0]==="num"||s[0]==="angle")&&s[1]==="pct"&&s[2]==="pct"))||a!==void 0&&B(a)!=="num"&&B(a)!=="pct")return null}else{let u=o.split("/");if(u.length>2||(r=u[0].split(Zt).filter(Boolean),r.length!==3))return null;if(u.length===2){a=Bt(u[1]);let b=Pt(a)?B(a):null;if(!b||b==="angle")return null}if(s=r.map(B),n==="rgb"?!s.every(b=>b&&b!=="angle"):!(s[0]&&s[0]!=="pct"&&s[1]&&s[1]!=="angle"&&s[2]&&s[2]!=="angle"))return null}let i=(u,b)=>zt.test(u)?0:/%$/.test(u)?parseFloat(u)/100*b:parseFloat(u),h=a===void 0?1:m(i(a,1),0,1);return[n==="rgb"?k([m(i(r[0],255)/255,0,1),m(i(r[1],255)/255,0,1),m(i(r[2],255)/255,0,1)],"srgb","oklch"):k([s[0]==="none"?0:Xt(r[0]),m(i(r[1],100),0,100),m(i(r[2],100),0,100)],n,"oklch"),h]}var Nn=t=>{let e=Kt.exec(t);if(!e)return!1;let n=e[1].toLowerCase(),o=e[2].split("/");if(o.length>2)return!1;let r=o[0].split(Zt).filter(Boolean);if(n==="color"&&!Vn.test(r.shift()||"")||r.length!==3)return!1;let a=n==="lch"||n==="oklch";if(!r.every((s,i)=>{let h=B(s);return h&&(a&&i===2?h!=="pct":h!=="angle")}))return!1;if(o.length===2){let s=Bt(o[1]),i=Pt(s)?B(s):null;if(!i||i==="angle")return!1}return!0};function wt(t){if(t=String(t??"").trim(),Ct.test(t)){let i=t.replace("#",""),h=1;i.length===4?(h=parseInt(i[3]+i[3],16)/255,i=i.slice(0,3)):i.length===8&&(h=parseInt(i.slice(6,8),16)/255,i=i.slice(0,6));let[p,u,b]=Ne("#"+i);return[p,u,b,h]}let e=Kt.exec(t);if(e){let i=e[1].toLowerCase(),[h,p]=e[2].split("/").map(y=>y.trim()),u=h.split(/\s+/).filter(Boolean),b=i;if(i==="color"&&(b=Ln[(u[0]||"").toLowerCase()],u=u.slice(1),!b))return[.7,.1,280,1];let d=(y,C=1)=>!y||zt.test(y)?0:g(parseFloat(y))*(/%$/.test(y)?C:1),E=p?m(d(p,.01),0,1):1,x=i==="lab"?[m(d(u[0]),0,100),d(u[1],1.25),d(u[2],1.25)]:i==="lch"?[m(d(u[0]),0,100),Math.max(0,d(u[1],1.5)),Xt(u[2]||"0")]:i==="color"?[d(u[0],.01),d(u[1],.01),d(u[2],.01)]:i==="oklab"?[m(d(u[0],.01),0,1),d(u[1],.004),d(u[2],.004)]:[m(d(u[0],.01),0,1),Math.max(0,d(u[1],.004)),Xt(u[2]||"0")],w=b==="oklch"?x:k(x,b,"oklch");return[g(w[0]),m(g(w[1]),0,xt),(g(w[2])%360+360)%360,E]}if(jt.test(t)){let i=Ze(t);if(!i)return[0,0,0,1];let[h,p]=i;return[g(h[0]),m(g(h[1]),0,xt),(g(h[2])%360+360)%360,p]}let n=Ke();if(!n)return[0,0,0,1];n.fillStyle="#000",n.fillStyle=t;let o=n.fillStyle;if(Ct.test(o))return wt(o);let r=o.match(/^rgba?\(([^)]*)\)/i),a=((r?r[1]:"").match(/-?[\d.]+(?:e[+-]?\d+)?/gi)||[0,0,0]).map(Number),s=k([a[0]/255,a[1]/255,a[2]/255],"srgb","oklch");return[g(s[0]),g(s[1]),g(s[2]),a[3]!=null?m(g(a[3]),0,1):1]}function ze(t,e){let[n,o,r,a]=wt(t.value||"#7c5cff"),s=gt.includes(t.mode)?t.mode:"oklch",i=NaN,h=null,p=[],u=NaN,b="",d=()=>Xe([n,o,r],s,a),E=v("div","tw-color-body"),x=v("div","tw-wg-area"),w=document.createElement("canvas");w.className="tw-wg-canvas";let y=v("div","tw-wg-thumb");x.append(w,y);let C=v("div","tw-wg-hue"),A=document.createElement("canvas");A.className="tw-wg-hue-canvas";let P=v("div","tw-wg-hue-thumb");C.append(A,P);let _=v("div","tw-wg-alpha"),Wt=v("div","tw-wg-alpha-grad"),vt=v("div","tw-wg-hue-thumb");_.append(Wt,vt),w.setAttribute("aria-hidden","true"),A.setAttribute("aria-hidden","true"),x.tabIndex=0,x.setAttribute("role","group"),x.setAttribute("aria-label","Colour plane: chroma across, lightness up"),C.tabIndex=0,C.setAttribute("role","slider"),C.setAttribute("aria-label","Hue"),C.setAttribute("aria-valuemin","0"),C.setAttribute("aria-valuemax","360"),_.tabIndex=0,_.setAttribute("role","slider"),_.setAttribute("aria-label","Alpha"),_.setAttribute("aria-valuemin","0"),_.setAttribute("aria-valuemax","1");let Ut=v("div","tw-color-mode-row"),R=v("select","tw-color-mode");R.setAttribute("aria-label","Color mode"),gt.forEach(c=>{let l=document.createElement("option");l.value=c,l.textContent=Fe[c],R.append(l)}),R.value=s;let qt=v("span","tw-color-gamut");Ut.append(R,qt);let N=v("div","tw-color-channels");E.append(x,C,_,Ut,N);let $=w.getContext("2d",Dt),Jt=A.getContext("2d"),X=document.createElement("canvas"),We=X.getContext("2d",Dt),yt=null,$t=()=>{let c=x.getBoundingClientRect(),l=Math.round(c.width),f=Math.round(c.height);if(l<2)return;let M=window.devicePixelRatio||1,S=Ht(s)?"p3":"srgb",F=Sn(r,S);h=F;let T=Math.round(l*M),tt=Math.round(f*M),H=Math.max(1,Math.round(T/4)),j=Math.max(1,Math.round(tt/4));(X.width!==H||X.height!==j)&&(X.width=H,X.height=j,yt=new ImageData(H,j,Dt));let et=yt.data,nn=j>1?1/(j-1):0,rn=H>1?1/(H-1):0,on=Re(r,_n),nt=[0,0,0];for(let I=0;I<j;I++){let rt=1-I*nn,St=kt(F,rt);for(let D=0;D<H;D++){on(rt,D*rn*St,nt);let K=(I*H+D)*4;et[K]=Math.round(m(nt[0],0,1)*255),et[K+1]=Math.round(m(nt[1],0,1)*255),et[K+2]=Math.round(m(nt[2],0,1)*255),et[K+3]=255}}if(We.putImageData(yt,0,0),w.width=T,w.height=tt,$.imageSmoothingEnabled=!0,$.drawImage(X,0,0,T,tt),S!=="srgb"){let I=(rt,St,D,K)=>{let an=mt(r,rt),At=[];for(let L=0;L<=100;L++){let W=L/100,Lt=kt(F,W);if(Lt<=0)continue;let ae=dt(an,W,Lt);ae<=0||At.push([Math.min(ae/Lt*T,T-D*M/2),(1-W)*tt])}At.length<2||($.save(),$.strokeStyle=St,$.lineWidth=D*M,$.lineJoin=$.lineCap="round",$.setLineDash(K.map(L=>L*M)),$.beginPath(),At.forEach((L,W)=>W?$.lineTo(L[0],L[1]):$.moveTo(L[0],L[1])),$.stroke(),$.restore())};I("srgb","rgba(255,255,255,0.7)",1.5,[]),I("p3","rgba(255,255,255,0.4)",1,[3,3])}i=r},Qt=.7,te=c=>{let l=k([Qt,dt(mt(c,"srgb"),Qt),c],"oklch","srgb");return`rgb(${m(l[0]*255,0,255)|0},${m(l[1]*255,0,255)|0},${m(l[2]*255,0,255)|0})`},ee=0,Ue=()=>{let c=C.getBoundingClientRect(),l=Math.max(1,Math.round(c.width)),f=Math.max(1,Math.round(c.height));if(!(l<2)&&!(l===ee&&A.width===l)){ee=l,A.width=l,A.height=f;for(let M=0;M<l;M++)Jt.fillStyle=te(M/(l-1)*360),Jt.fillRect(M,0,1,f)}},Et=()=>{let c=h?kt(h,n):.4,l=S=>`${m(S,0,1)*100}%`,f=(S,F)=>{let T=m(S,0,1);return`calc(${T*100}% + ${(.5-T)*F}px)`};y.style.left=l(c>0?o/c:0),y.style.top=l(1-n),P.style.left=f(r/360,16),vt.style.left=f(a,16),_.setAttribute("aria-valuenow",String(+a.toFixed(2)));let M=Math.round(r);C.setAttribute("aria-valuenow",String(M)),C.setAttribute("aria-valuetext",`${M}\xB0`),x.setAttribute("aria-description",`lightness ${Math.round(n*100)}%, chroma ${+o.toFixed(3)}`),Wt.style.background=`linear-gradient(to right, oklch(${n} ${o} ${r} / 0), oklch(${n} ${o} ${r}))`,y.style.background=`oklch(${n} ${o} ${r})`,vt.style.background=`linear-gradient(oklch(${n} ${o} ${r} / ${a}), oklch(${n} ${o} ${r} / ${a})), var(--tw-dropdown-bg)`,r!==u&&(b=te(r),u=r),P.style.background=b},Q=()=>{if(qt.textContent=Pe([n,o,r],s),s==="hex"){let c=N.querySelector(".tw-color-chan-input");c&&document.activeElement!==c&&(c.value=ft(n,o,r)+(a<.999?G(a):""))}else{let c=Mt([n,o,r],s);p.forEach((l,f)=>{l.el.contains(document.activeElement)||l.set(c[f])})}},qe=()=>{Ue(),$t(),Et()},Je=()=>e(d()),ne=c=>{c&&r!==i&&$t(),Et(),Q()},O=c=>{ne(c),Je()},re=()=>{if(N.replaceChildren(),p=[],s==="hex"){N.classList.add("tw-color-channels--hex");let c=v("div","tw-color-chan"),l=v("input","tw-color-chan-input");l.type="text",l.spellcheck=!1,l.setAttribute("aria-label","Hex color"),ce(l),ie(l),l.addEventListener("change",()=>{let f=l.value.trim();Ct.test(f)&&([n,o,r,a]=wt(f),O(!0))}),l.addEventListener("blur",Q),l.addEventListener("keydown",f=>{f.key==="Enter"&&l.blur()}),c.append(se("span","tw-color-chan-label","HEX"),l),N.append(c)}else{N.classList.remove("tw-color-channels--hex");let c=Mt([n,o,r],s);J[s].forEach((l,f)=>{let M=he({label:l.k,value:c[f],min:l.min,max:l.max,step:l.step},S=>{[n,o,r]=Be([n,o,r],s,f,m(S,l.min,l.max)),O(!0)});M.el.addEventListener("focusout",Q),p.push(M),N.append(M.el)})}Q()},_t=c=>h?kt(h,c):.4,Qe=c=>at(c,x);ot(x,c=>{let[l,f]=Qe(c);n=1-f,o=l*_t(n),O(!1)}),x.addEventListener("keydown",c=>{if(c.key==="Home"||c.key==="End"){c.preventDefault();return}let l=c.shiftKey?10:1,f=c.key==="ArrowRight"?l:c.key==="ArrowLeft"?-l:0,M=c.key==="ArrowUp"?l:c.key==="ArrowDown"?-l:c.key==="PageUp"?10:c.key==="PageDown"?-10:0;if(!f&&!M)return;c.preventDefault();let S=_t(n),F=m((S>0?o/S:0)+f*.01,0,1);n=m(n+M*.01,0,1),o=F*_t(n),O(!1)});let tn=c=>at(c,C)[0]*360;ot(C,c=>{r=tn(c),O(!0)}),C.addEventListener("keydown",c=>{let l=Vt(c,r,1,0,360);l!=null&&(c.preventDefault(),r=m(l,0,360),O(!0))});let en=c=>at(c,_)[0];ot(_,c=>{a=en(c),O(!1)}),_.addEventListener("keydown",c=>{let l=Vt(c,a,.01,0,1);l!=null&&(c.preventDefault(),a=m(l,0,1),O(!1))});let oe=c=>{s=c,R.value=c,re(),$t(),Et()};return R.addEventListener("change",()=>{oe(R.value),t.onMode&&t.onMode()}),re(),{el:E,set:c=>{let l=document.activeElement;l&&E.contains(l)&&l.matches("input")&&l.blur(),[n,o,r,a]=wt(c),ne(!0)},get:()=>d(),mode:()=>s,setMode:c=>{c!==s&&gt.includes(c)&&oe(c)},reflow:qe,swatchCss:()=>`linear-gradient(oklch(${n} ${o} ${r} / ${a}), oklch(${n} ${o} ${r} / ${a})), ${An}`,valueText:()=>It([n,o,r],s)+(a<.999?s==="hex"?G(a):` / ${+a.toFixed(2)}`:"")}}function Fn(t,e){let{root:n,trigger:o,right:r}=ue("tw-color",t.label??"Colour"),a=v("span","tw-trigger-chip tw-color-swatch"),s=v("span","tw-trigger-value");r.append(a,s);let i=v("div","tw-color-pop"),h=()=>{a.style.background=p.swatchCss(),s.textContent=p.valueText()},p=ze({value:t.value,onMode:()=>h()},u=>{h(),e(u)});return i.append(p.el),n.append(i),le(n,o,i,{width:240,fallbackH:340,gap:6,onOpen:p.reflow,onReflow:p.reflow}),h(),{el:n,set:u=>{u!=null&&(p.set(u),h())},get:()=>p.get()}}var Zn=(t,e,n,o)=>o<.999?`oklch(${+t.toFixed(4)} ${+e.toFixed(4)} ${+n.toFixed(2)} / ${+o.toFixed(3)})`:`oklch(${+t.toFixed(4)} ${+e.toFixed(4)} ${+n.toFixed(2)})`;Ot("color",Fn);Ot("colorpicker",ze);export{Gn as a,Bn as b,An as c,Yn as d,wt as e,ze as f,Zn as g};
@@ -0,0 +1 @@
1
+ var S=Object.assign(Object.create(null),{ease:[.25,.1,.25,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1]}),L=e=>Math.min(1,Math.max(0,e)),x=15;function H(e){if(typeof e!="string")return null;let t=e.trim().toLowerCase();if(S[t])return S[t];let n=/^cubic-bezier\(([^()]*)\)$/.exec(t);if(!n)return null;let r=n[1].split(",").map(o=>o.trim()?Number(o):NaN);return r.length!==4||!r.every(Number.isFinite)?null:[L(r[0]),r[1],L(r[2]),r[3]]}var ue=e=>H(e)?e.trim().toLowerCase():"linear";function O(e){let t=[];for(let n=0;n<=x;n++){let r=n/x,o=1-r,s=3*o*o*r,i=3*o*r*r,a=r*r*r;t.push([s*e[0]+i*e[2]+a,L(s*e[1]+i*e[3]+a)])}return t}function de(e,t){if(t=L(t),!e)return t;let n=O(e);for(let r=1;r<n.length;r++)if(t<=n[r][0]){let[o,s]=n[r-1],[i,a]=n[r];return i>o?s+(a-s)*(t-o)/(i-o):a}return 1}var T=e=>+(e*100).toFixed(2);function F(e){let t=[...e.stops].sort((a,u)=>a.pos-u.pos),n=a=>`${a.color} ${T(a.pos)}%`,r=H(e.easing);if(!r||t.length<2)return t.map(n).join(", ");let o=O(r),s=e.interpolation||"oklch",i=[n(t[0])];for(let a=1;a<t.length;a++){let u=t[a-1],m=t[a],c=m.pos-u.pos;if(c>1e-6)for(let d=1;d<x;d++){let[f,g]=o[d];i.push(`color-mix(in ${s}, ${u.color}, ${m.color} ${T(g)}%) ${T(u.pos+c*f)}%`)}i.push(n(m))}return i.join(", ")}function $(e,t="to right"){return`linear-gradient(in ${e.interpolation||"oklch"} ${typeof t=="number"?`${t}deg`:t}, ${F(e)})`}var V=e=>e.replace(/([a-z])(?=[A-Z])|([A-Z\d])(?=[A-Z][a-z])/g,"$1$2 ").replace(/^./,t=>t.toUpperCase()).trim(),j=(e,t,n)=>Math.min(n,Math.max(t,e)),me=e=>!!e&&typeof e=="object",we=e=>typeof e=="string"&&(/^#([0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i.test(e.trim())||/^(oklch|oklab|rgba?|hsla?|hwb|lab|lch|color)\(/i.test(e.trim())),P=20,_=e=>{let t=String(e),n=/e-(\d+)$/i.exec(t);if(n)return Math.min(P,Number(n[1])+(t.split("e")[0].split(".")[1]||"").length);let r=t.indexOf(".");return r===-1?0:Math.min(P,t.length-r-1)},z=(e,t,n)=>{if(!(n>0))return e;let r=_(n),o=Number((+t).toFixed(r)),s=Math.round((e-o)/n);return Number.isFinite(s)?Number((o+s*n).toFixed(r)):e},be=(e,t,n,r=e)=>{let o=a=>z(a,r,n),s=Number.isFinite(e)?o(e):-1/0,i=Number.isFinite(t)?o(t):1/0;return s<e&&(s=o(s+n)),i>t&&(i=o(i-n)),s>i?[e,e]:[s,i]},I=(e,t)=>{let n=t-e;return n<=1?.01:n<=10?.1:n<=100?1:10},pe=(e,t,n,r=0,o=null)=>{let s=+e,i=+t,a=+n;if(Number.isFinite(s)||(s=r),Number.isFinite(i)||(i=o??s+100),i<s){let u=s;s=i,i=u}return(!(a>0)||a>i-s)&&(a=I(s,i)),{min:s,max:i,step:a}},ge=(e,t,n,r,o,s=null)=>{let i=e.shiftKey?10:1;switch(e.key){case"ArrowRight":case"ArrowUp":return t+n*i;case"ArrowLeft":case"ArrowDown":return t-n*i;case"PageUp":return s!=null?t+s:null;case"PageDown":return s!=null?t-s:null;case"Home":return r;case"End":return o}return null},he=(e,t,n,r,o=0)=>{let s=e.offsetLeft,i=s+e.offsetWidth,a=t.offsetLeft,u=a+t.offsetWidth;return n<i&&n+r>s||n<u+o&&n+r>a-o},Ee=e=>e>=0?[0,e<=1?1:e*3||100]:[e>=-1?-1:e*3,0],G=e=>e==null?void 0:typeof e=="object"?e.value:e,D=e=>{try{return JSON.stringify(e)}catch{return String(e)}},K=e=>e==null?"":typeof e=="string"?V(e):typeof e=="object"?e.label??(e.value!==void 0?String(e.value):D(e)):String(e),M=(e,t,n)=>{let r=document.createElement(e);return t&&(r.className=t),n!=null&&(r.innerHTML=n),(e=="input"||e=="textarea")&&(r.setAttribute("autocomplete","off"),r.setAttribute("data-1p-ignore",""),r.setAttribute("data-lpignore","true")),r},ve=(e,t)=>{let n=M("button",e,t);return n.type="button",n},W=(e,t,n)=>{let r=M(e,t);return r.textContent=n,e==="button"&&(r.type="button"),r},q=e=>["pointerdown","pointermove","pointerup","click"].forEach(t=>e.addEventListener(t,n=>n.stopPropagation())),X=e=>{requestAnimationFrame(e),document.fonts&&document.fonts.ready&&document.fonts.ready.then(e)},U=(e,t,n)=>{let r=e.isConnected;r||requestAnimationFrame(()=>{e.isConnected&&(r=!0)});let o=i=>{if(!e.isConnected){(r||e.closest("[data-tw-destroyed]"))&&s();return}r=!0,n(i)},s=()=>t.forEach(([i,a])=>i.removeEventListener(a,o));return t.forEach(([i,a])=>i.addEventListener(a,o)),s},ye=()=>requestAnimationFrame(()=>window.dispatchEvent(new Event("tw-reflow"))),Le=(e,t)=>{e.addEventListener("pointerenter",()=>{e.classList.add("is-hover"),t&&t()}),e.addEventListener("pointerleave",()=>e.classList.remove("is-hover"))},E=!1;typeof document<"u"&&(document.addEventListener("pointerdown",()=>{E=!0},!0),document.addEventListener("keydown",()=>{E=!1},!0));var Me=e=>{e.addEventListener("focus",()=>e.classList.toggle("tw-focus-quiet",E)),e.addEventListener("blur",()=>e.classList.remove("tw-focus-quiet"))},Z=(e,t,{width:n,fallbackH:r=300,gap:o=6,align:s="start",prefer:i="below"}={})=>{let a=e.getBoundingClientRect();n==="match"&&(t.style.width=a.width+"px");let u=n==="match"?a.width:t.offsetWidth||n||0,m=s==="end"?a.right-u:s==="center"?a.left+a.width/2-u/2:a.left;t.style.left=Math.max(8,Math.min(m,window.innerWidth-u-8))+"px";let c=t.offsetHeight||r,d=window.innerHeight-a.bottom,f=a.top,g=c+12,v=d>=g,h=f>=g,y=(i==="above"?h||!v&&f>=d:!v&&(h||f>d))?a.top-c-o:a.bottom+o;t.style.top=j(y,o,window.innerHeight-c-o)+"px"},Y=Object.assign(Object.create(null),{accent:"--tw-accent",onAccent:"--tw-on-accent",base:"--tw-base",dropdownBg:"--tw-dropdown-bg",surface:"--tw-surface",surfaceHover:"--tw-surface-hover",surfaceActive:"--tw-surface-active",border:"--tw-border",borderHover:"--tw-border-hover",selection:"--tw-selection",title:"--tw-text-root",section:"--tw-text-section",text:"--tw-text-primary",label:"--tw-text-label",textMuted:"--tw-text-secondary",textFaint:"--tw-text-tertiary",focus:"--tw-text-focus",success:"--tw-success",danger:"--tw-danger",shadow:"--tw-shadow-dropdown",shadowPanel:"--tw-shadow-panel",shadowPanelLifted:"--tw-shadow-panel-lifted",font:"--tw-font-sans",fontMono:"--tw-font-mono",radius:"--tw-radius",density:"--tw-row-height",width:"--tw-width"}),J=new Set(["radius","density","width"]),k=e=>(e/=255,e<=.03928?e/12.92:((e+.055)/1.055)**2.4),Q=e=>{e=String(e).trim();let t=/^#([0-9a-f]{3})$/i.exec(e);if(t)return t[1].split("").map(n=>parseInt(n+n,16));if(t=/^#([0-9a-f]{6})$/i.exec(e),t)return[0,2,4].map(n=>parseInt(t[1].slice(n,n+2),16));if(t=/^rgba?\(([^)]+)\)/i.exec(e),t){let n=t[1].split(/[\s,/]+/).filter(Boolean).map(parseFloat);return[n[0],n[1],n[2]]}return null},ee=e=>{let t=Q(e);if(!t||t.some(r=>!Number.isFinite(r)))return"#ffffff";let n=.2126*k(t[0])+.7152*k(t[1])+.0722*k(t[2]);return 1.05/(n+.05)>=(n+.05)/.0571?"#ffffff":"#161616"},Te=e=>{if(!e||typeof e!="object")return null;let t={};for(let[n,r]of Object.entries(e)){if(n.startsWith("--")){t[n]=String(r);continue}let o=Y[n];o&&(t[o]=J.has(n)&&typeof r=="number"?`${r}px`:String(r))}return t["--tw-accent"]&&!t["--tw-on-accent"]&&(t["--tw-on-accent"]=ee(t["--tw-accent"])),Object.keys(t).length?t:null},te=(e,t)=>{if(e){if(e._twAppliedVars)for(let n of e._twAppliedVars)e.style.removeProperty(n);if(e._twAppliedVars=t?Object.keys(t):null,t)for(let n in t)e.style.setProperty(n,t[n])}},ne=(e,t)=>{let n=t?.closest('[data-tw-scheme="light"]')?"light":t?.closest('[data-tw-scheme="dark"]')?"dark":null;n?e.setAttribute("data-tw-scheme",n):e.removeAttribute("data-tw-scheme")},R=(e,t)=>{te(e,t?.closest(".tw-panel")?._twTheme),ne(e,t)},p=null,A=null,xe=e=>{p&&(!e||e.contains(A))&&p()};function ke(e,t,n,r={}){let o=!1,s=null;n.classList.add("tw-portal"),n.inert=!0,n.addEventListener("pointerdown",l=>t.closest(".tw-panel")?._twEditPointer?.(l),!0),q(n);let i=0,a=0,u=()=>{Z(t,n,{width:r.width,fallbackH:r.fallbackH,gap:r.gap,align:r.align});let l=t.getBoundingClientRect();i=parseFloat(n.style.left)-l.left,a=parseFloat(n.style.top)-l.top},m=()=>{if(o){if(!e.isConnected)return w();u(),r.onReflow&&r.onReflow()}},c=()=>{if(!o)return;if(!e.isConnected)return w();let l=t.getBoundingClientRect(),b=t.closest(".tw-panel")?.getBoundingClientRect();if(!(l.width||l.height)||l.bottom<0||l.top>window.innerHeight||l.right<0||l.left>window.innerWidth||b?.height&&(l.bottom<b.top||l.top>b.bottom))return w();n.style.left=l.left+i+"px",n.style.top=l.top+a+"px"},d=l=>{!e.contains(l.target)&&!n.contains(l.target)&&w()},f=l=>{l.key==="Escape"&&o&&(w(),t.focus())},g=l=>{if(!o)return;let b=l.relatedTarget;(b?e.contains(b)||n.contains(b):E)||(w(),b&&!t.closest(".tw-panel")?.contains(b)&&setTimeout(()=>{!o&&document.activeElement===b&&t.focus()},0))};e.addEventListener("focusout",g),n.addEventListener("focusout",g);let v=()=>n.querySelector('button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [href], [tabindex]:not([tabindex="-1"])'),h=()=>R(n,e),C=l=>{l.every(b=>b.target===n)||h()},y=()=>{p&&p!==w&&p(),p=w,A=t,o=!0,e.classList.add("is-open"),t.setAttribute("aria-expanded","true"),n.inert=!1,document.body.appendChild(n),R(n,e),window.addEventListener("tw-retheme",h),typeof MutationObserver=="function"&&(s=new MutationObserver(C),s.observe(document.documentElement,{subtree:!0,attributes:!0,attributeFilter:["data-tw-scheme"]})),u(),requestAnimationFrame(()=>{if(o&&(n.classList.add("is-open"),r.onOpen&&r.onOpen(),u(),!n.contains(document.activeElement))){let l=r.initialFocus&&r.initialFocus()||v();l&&l.focus({focusVisible:!E})}}),requestAnimationFrame(function l(){if(o){if(!e.isConnected)return w();requestAnimationFrame(l)}}),setTimeout(()=>{o&&document.addEventListener("pointerdown",d,!0)},0),document.addEventListener("keydown",f),window.addEventListener("scroll",c,!0),window.addEventListener("resize",m)},w=()=>{p===w&&(p=null,A=null),n.contains(document.activeElement)&&t.focus(),o=!1,e.classList.remove("is-open"),n.classList.remove("is-open"),n.inert=!0,t.setAttribute("aria-expanded","false"),document.removeEventListener("pointerdown",d,!0),document.removeEventListener("keydown",f),window.removeEventListener("scroll",c,!0),window.removeEventListener("resize",m),window.removeEventListener("tw-retheme",h),s&&(s.disconnect(),s=null),setTimeout(()=>{o||n.remove()},200)};return t.addEventListener("click",()=>{t.disabled||(o?w():y())}),{open:y,close:w,isOpen:()=>o,reflow:m}}var Ae=(e,t)=>{if(e=e.toLowerCase(),e.includes(t))return!0;if(t.length<3)return!1;let n=t.length,r=e.length,o=new Array(r+1).fill(0);for(let s=1;s<=n;s++){let i=[s];for(let a=1;a<=r;a++)i[a]=Math.min(o[a]+1,i[a-1]+1,o[a-1]+(t[s-1]===e[a-1]?0:1));o=i}return Math.min(...o)<=(t.length<6?1:2)},re=typeof matchMedia=="function"?matchMedia("(prefers-reduced-motion: reduce)"):{matches:!1},oe="cubic-bezier(0.22, 1, 0.36, 1)",Ce="cubic-bezier(0.34, 1.2, 0.64, 1)",se=(e,t)=>{re.matches||typeof e.animate!="function"||(e.style.transformOrigin=t>0?"left center":"right center",e.animate([{transform:"scaleX(1)"},{transform:"scaleX(1.18)"},{transform:"scaleX(1)"}],{duration:300,easing:oe}))},ie=(e,t,n)=>{let r=e.querySelector('[data-active="true"]');if(!r)return;let o=r.offsetLeft,s=r.offsetWidth,i=parseFloat(t.style.left);t.style.left=o+"px",t.style.width=s+"px",n&&Number.isFinite(i)&&i!==o&&se(t,o>i?1:-1)},Se=(e,t)=>{e.classList.toggle("is-disabled",t);for(let n of e.children)n.classList.contains("tw-portal")||(n.inert=t)},He=(e,t,n,r)=>{e.classList.toggle("is-collapsed",r),t.setAttribute("aria-expanded",String(!r)),n.inert=r},N=(e,t)=>{let n=e.findIndex(r=>r.dataset.value===String(t));return n<0&&e.length?0:n},ae=(e,t)=>{let n=N(e,t);e.forEach((r,o)=>{let s=r.dataset.value===String(t);r.dataset.active=String(s),r.setAttribute("aria-checked",String(s)),r.tabIndex=o===n?0:-1})},le=(e,t,n)=>{let r=W("button",e,K(t));return r.setAttribute("role","radio"),r._twVal=G(t),r.dataset.value=r._twVal,r.addEventListener("click",()=>n(r._twVal)),r},ce=(e,t,n,r=0)=>{switch(e){case"ArrowRight":return(t+1)%n;case"ArrowLeft":return(t-1+n)%n;case"ArrowDown":return r<0?-1:r?t+r<n?t+r:t:(t+1)%n;case"ArrowUp":return r<0?-1:r?t-r>=0?t-r:t:(t-1+n)%n;case"Home":return 0;case"End":return n-1}return-1};function Oe(e,t,n,r){let o=M("div","tw-seg");o.setAttribute("role","radiogroup"),r&&o.setAttribute("aria-label",r);let s=M("div","tw-seg-pill");o.append(s);let i=e.map(c=>{let d=le("tw-seg-btn",c,f=>m(f));return o.append(d),d}),a=c=>ie(o,s,c),u=()=>{ae(i,t),a(!0)},m=(c,d=!0)=>{c!=null&&!i.some(f=>f._twVal===c)||(t=c,u(),d&&n(c))};return o.addEventListener("keydown",c=>{let d=N(i,t);if(d<0)return;let f=ce(c.key,d,i.length);f<0||(c.preventDefault(),m(i[f]._twVal),i[f].focus())}),u(),X(()=>{a(),o.classList.add("is-ready")}),U(o,[[window,"tw-reflow"]],()=>a()),{el:o,set:c=>m(c,!1),get:()=>t}}var Fe=(e,t="",n=2,r=24)=>`<svg${t?` class="${t}"`:""} viewBox="0 0 ${r} ${r}" fill="none" stroke="currentColor" stroke-width="${n}" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">${e}</svg>`,Pe=(e,t)=>({el:e,set:()=>{},get:()=>{},destroy:t}),B={},Re=(e,t)=>{B[e]=t},Ne=e=>B[e];export{H as a,ue as b,de as c,F as d,$ as e,V as f,j as g,me as h,we as i,_ as j,z as k,be as l,I as m,pe as n,ge as o,he as p,Ee as q,G as r,D as s,K as t,M as u,ve as v,W as w,q as x,X as y,U as z,ye as A,Le as B,Me as C,Z as D,Te as E,te as F,ne as G,R as H,xe as I,ke as J,Ae as K,re as L,oe as M,Ce as N,ie as O,Se as P,He as Q,N as R,ae as S,le as T,ce as U,Oe as V,Fe as W,Pe as X,Re as Y,Ne as Z};
@@ -1 +1 @@
1
- import{C as F,H as T,W as S,Y as $,g as E,j as y,k as L,l as N,u as b,v as C,w as M}from"./chunk-3GZFWFKC.js";var P="http://www.w3.org/2000/svg",K=(t,n)=>{let e=document.createElementNS(P,t);return n&&e.setAttribute("class",n),e},R=(t,n)=>getComputedStyle(t).getPropertyValue(n).trim(),k=t=>{let n=getComputedStyle(t),e=s=>n.getPropertyValue(s).trim();return e("--tw-accent")||e("--tw-text-primary")||"#fff"},V=t=>{let n=!1;t.addEventListener("pointerdown",e=>{n=e.button===0&&document.activeElement!==t}),t.addEventListener("focus",()=>t.select()),t.addEventListener("mouseup",e=>{n&&(n=!1,e.button===0&&document.activeElement===t&&t.selectionStart===0&&t.selectionEnd===t.value.length&&e.preventDefault())})};function I(t,{onDown:n,onMove:e,onEnd:s}={}){let r=null,o=i=>{r===null||i.pointerId!==r||(r=null,s&&s(i))};t.addEventListener("pointerdown",i=>{if(!(i.button!==0||r!==null)){r=i.pointerId;try{t.setPointerCapture(i.pointerId)}catch{}n&&n(i)}}),t.addEventListener("pointermove",i=>{if(i.pointerId===r){if(i.buttons===0)return o(i);e&&e(i)}}),t.addEventListener("pointerup",o),t.addEventListener("pointercancel",o),t.addEventListener("lostpointercapture",o)}var B=(t,n)=>I(t,{onDown:e=>{t.classList.add("is-grabbing"),n(e)},onMove:n,onEnd:()=>t.classList.remove("is-grabbing")}),O=(t,n)=>{let e=n.getBoundingClientRect();return[E((t.clientX-e.left)/e.width,0,1),E((t.clientY-e.top)/e.height,0,1)]},j=(t,n,e=1/0)=>{let s=t.getBoundingClientRect(),r=Math.min(window.devicePixelRatio||1,e);return t.width=s.width*r,t.height=s.height*r,n.setTransform(r,0,0,r,0,0),[s.width,s.height]},z=(t,n)=>{let e=b("div",t),s=C("tw-trigger");s.setAttribute("aria-expanded","false");let r=b("span","tw-trigger-right");return s.append(M("span","tw-trigger-label",n),r),e.append(s),{root:e,trigger:s,right:r}},H=S('<path d="M6 4v8M10 4v8"/>',"",1.5,16);function D(){let t=null,n=0,e=0,s=0;return{show(r,o,i,m){t=b("div","tw-grab-guide tw-portal"),t.innerHTML='<span class="tw-grab-line"></span><span class="tw-grab-dot"></span><span class="tw-grab-arrow"></span><span class="tw-grab-bubble"></span>',n=o,e=r,s=i??r,t.children[1].style.cssText=`left:${r}px;top:${n}px`,T(t,m),document.body.appendChild(t)},move(r,o){t&&(t.children[0].style.cssText=`left:${Math.min(e,r)}px;top:${n}px;width:${Math.abs(r-e)}px`,t.children[2].style.cssText=`left:${r}px;top:${n}px;transform:translate(-50%,-50%) scaleX(${r>=e?1:-1})`,t.children[3].style.cssText=`left:${s}px;top:${n-16}px`,t.children[3].textContent=o)},hide(){t&&(t.remove(),t=null)}}}function G(t,n,e,s,r,o){let i=0,m=0,p=1,d=D();I(t,{onDown:u=>{u.preventDefault(),i=u.clientX,m=s(),p=1,t.classList.add("is-dragging");let a=n.getBoundingClientRect();d.show(u.clientX,a.top+a.height/2,a.left+a.width/2,n),d.move(u.clientX,o())},onMove:u=>{let a=u.shiftKey?10:u.altKey?.1:1;a!==p&&(p=a,i=u.clientX,m=s()),r(m+(u.clientX-i)*e*a),d.move(u.clientX,o())},onEnd:()=>{t.classList.remove("is-dragging"),d.hide()}})}function X(t,n){let e=Number.isFinite(+t.step)&&+t.step>0?+t.step:1,s=l=>l==null?NaN:+l,r=s(t.min),o=s(t.max);if(Number.isFinite(r)&&Number.isFinite(o)&&o<r){let l=r;r=o,o=l}let i=Number.isFinite(r)?r:0,m=y(e),[p,d]=N(Number.isFinite(r)?r:-1/0,Number.isFinite(o)?o:1/0,e,i),u=l=>{let h=L(l,i,e);return t.soft?h:E(h,p,d)},a=u(Number.isFinite(+t.value)?+t.value:0),f=b("div",t.row?"tw-row":"tw-field"),g=b("div","tw-num-wrap"),v=b("span","tw-num-grab",H);v.setAttribute("aria-hidden","true"),v.title="Drag to adjust";let c=b("input","tw-num");c.type="text",c.inputMode="decimal",c.setAttribute("aria-label",t.unit?`${t.label} (${t.unit})`:t.label),c.value=a.toFixed(m),F(c),g.append(v,c),t.unit&&g.append(M("span","tw-num-unit",t.unit)),f.append(M("span",t.row?"tw-row-label":"tw-field-label",t.label),g);let w=(l,h=!0)=>{l=+l,Number.isFinite(l)&&(a=u(l),c.value=a.toFixed(m),h&&n&&n(a))};return c.addEventListener("change",()=>{let l=parseFloat(c.value);w(isNaN(l)?a:l)}),c.addEventListener("keydown",l=>{if(l.key==="Enter")return c.blur();let h=l.key==="ArrowUp"?1:l.key==="ArrowDown"?-1:0;if(!h)return;l.preventDefault();let x=parseFloat(c.value);w((isNaN(x)?a:x)+h*e*(l.shiftKey?10:1))}),G(v,g,e,()=>a,w,()=>c.value),{el:f,set:l=>w(l,!1),get:()=>a}}$("number",(t,n)=>X({...t,row:!0},n));var q=(t,n,e)=>{let s=Math.sqrt(t/e),r=n/(2*Math.sqrt(t*e));return Math.min(2.2,9/Math.max(r*s,.5))};function U(t,n,e,s=64,r=q(t,n,e)){let o=Math.sqrt(t/e),i=n/(2*Math.sqrt(t*e)),m=[];for(let p=0;p<s;p++){let d=p/(s-1)*r,u;if(i<1-1e-4){let a=o*Math.sqrt(1-i*i);u=1-Math.exp(-i*o*d)*(Math.cos(a*d)+i*o/a*Math.sin(a*d))}else if(i<=1+1e-4)u=1-Math.exp(-o*d)*(1+o*d);else{let a=Math.sqrt(i*i-1),f=o*(i+a),g=o*(i-a);u=1-(f*Math.exp(-g*d)-g*Math.exp(-f*d))/(f-g)}m.push(u)}return m}export{K as a,R as b,k as c,V as d,I as e,B as f,O as g,j as h,z as i,X as j,q as k,U as l};
1
+ import{C as F,H as T,W as S,Y as $,g as E,j as y,k as L,l as N,u as b,v as C,w as M}from"./chunk-R7BLRFON.js";var P="http://www.w3.org/2000/svg",K=(t,n)=>{let e=document.createElementNS(P,t);return n&&e.setAttribute("class",n),e},R=(t,n)=>getComputedStyle(t).getPropertyValue(n).trim(),k=t=>{let n=getComputedStyle(t),e=s=>n.getPropertyValue(s).trim();return e("--tw-accent")||e("--tw-text-primary")||"#fff"},V=t=>{let n=!1;t.addEventListener("pointerdown",e=>{n=e.button===0&&document.activeElement!==t}),t.addEventListener("focus",()=>t.select()),t.addEventListener("mouseup",e=>{n&&(n=!1,e.button===0&&document.activeElement===t&&t.selectionStart===0&&t.selectionEnd===t.value.length&&e.preventDefault())})};function I(t,{onDown:n,onMove:e,onEnd:s}={}){let r=null,o=i=>{r===null||i.pointerId!==r||(r=null,s&&s(i))};t.addEventListener("pointerdown",i=>{if(!(i.button!==0||r!==null)){r=i.pointerId;try{t.setPointerCapture(i.pointerId)}catch{}n&&n(i)}}),t.addEventListener("pointermove",i=>{if(i.pointerId===r){if(i.buttons===0)return o(i);e&&e(i)}}),t.addEventListener("pointerup",o),t.addEventListener("pointercancel",o),t.addEventListener("lostpointercapture",o)}var B=(t,n)=>I(t,{onDown:e=>{t.classList.add("is-grabbing"),n(e)},onMove:n,onEnd:()=>t.classList.remove("is-grabbing")}),O=(t,n)=>{let e=n.getBoundingClientRect();return[E((t.clientX-e.left)/e.width,0,1),E((t.clientY-e.top)/e.height,0,1)]},j=(t,n,e=1/0)=>{let s=t.getBoundingClientRect(),r=Math.min(window.devicePixelRatio||1,e);return t.width=s.width*r,t.height=s.height*r,n.setTransform(r,0,0,r,0,0),[s.width,s.height]},z=(t,n)=>{let e=b("div",t),s=C("tw-trigger");s.setAttribute("aria-expanded","false");let r=b("span","tw-trigger-right");return s.append(M("span","tw-trigger-label",n),r),e.append(s),{root:e,trigger:s,right:r}},H=S('<path d="M6 4v8M10 4v8"/>',"",1.5,16);function D(){let t=null,n=0,e=0,s=0;return{show(r,o,i,m){t=b("div","tw-grab-guide tw-portal"),t.innerHTML='<span class="tw-grab-line"></span><span class="tw-grab-dot"></span><span class="tw-grab-arrow"></span><span class="tw-grab-bubble"></span>',n=o,e=r,s=i??r,t.children[1].style.cssText=`left:${r}px;top:${n}px`,T(t,m),document.body.appendChild(t)},move(r,o){t&&(t.children[0].style.cssText=`left:${Math.min(e,r)}px;top:${n}px;width:${Math.abs(r-e)}px`,t.children[2].style.cssText=`left:${r}px;top:${n}px;transform:translate(-50%,-50%) scaleX(${r>=e?1:-1})`,t.children[3].style.cssText=`left:${s}px;top:${n-16}px`,t.children[3].textContent=o)},hide(){t&&(t.remove(),t=null)}}}function G(t,n,e,s,r,o){let i=0,m=0,p=1,d=D();I(t,{onDown:u=>{u.preventDefault(),i=u.clientX,m=s(),p=1,t.classList.add("is-dragging");let a=n.getBoundingClientRect();d.show(u.clientX,a.top+a.height/2,a.left+a.width/2,n),d.move(u.clientX,o())},onMove:u=>{let a=u.shiftKey?10:u.altKey?.1:1;a!==p&&(p=a,i=u.clientX,m=s()),r(m+(u.clientX-i)*e*a),d.move(u.clientX,o())},onEnd:()=>{t.classList.remove("is-dragging"),d.hide()}})}function X(t,n){let e=Number.isFinite(+t.step)&&+t.step>0?+t.step:1,s=l=>l==null?NaN:+l,r=s(t.min),o=s(t.max);if(Number.isFinite(r)&&Number.isFinite(o)&&o<r){let l=r;r=o,o=l}let i=Number.isFinite(r)?r:0,m=y(e),[p,d]=N(Number.isFinite(r)?r:-1/0,Number.isFinite(o)?o:1/0,e,i),u=l=>{let h=L(l,i,e);return t.soft?h:E(h,p,d)},a=u(Number.isFinite(+t.value)?+t.value:0),f=b("div",t.row?"tw-row":"tw-field"),g=b("div","tw-num-wrap"),v=b("span","tw-num-grab",H);v.setAttribute("aria-hidden","true"),v.title="Drag to adjust";let c=b("input","tw-num");c.type="text",c.inputMode="decimal",c.setAttribute("aria-label",t.unit?`${t.label} (${t.unit})`:t.label),c.value=a.toFixed(m),F(c),g.append(v,c),t.unit&&g.append(M("span","tw-num-unit",t.unit)),f.append(M("span",t.row?"tw-row-label":"tw-field-label",t.label),g);let w=(l,h=!0)=>{l=+l,Number.isFinite(l)&&(a=u(l),c.value=a.toFixed(m),h&&n&&n(a))};return c.addEventListener("change",()=>{let l=parseFloat(c.value);w(isNaN(l)?a:l)}),c.addEventListener("keydown",l=>{if(l.key==="Enter")return c.blur();let h=l.key==="ArrowUp"?1:l.key==="ArrowDown"?-1:0;if(!h)return;l.preventDefault();let x=parseFloat(c.value);w((isNaN(x)?a:x)+h*e*(l.shiftKey?10:1))}),G(v,g,e,()=>a,w,()=>c.value),{el:f,set:l=>w(l,!1),get:()=>a}}$("number",(t,n)=>X({...t,row:!0},n));var q=(t,n,e)=>{let s=Math.sqrt(t/e),r=n/(2*Math.sqrt(t*e));return Math.min(2.2,9/Math.max(r*s,.5))};function U(t,n,e,s=64,r=q(t,n,e)){let o=Math.sqrt(t/e),i=n/(2*Math.sqrt(t*e)),m=[];for(let p=0;p<s;p++){let d=p/(s-1)*r,u;if(i<1-1e-4){let a=o*Math.sqrt(1-i*i);u=1-Math.exp(-i*o*d)*(Math.cos(a*d)+i*o/a*Math.sin(a*d))}else if(i<=1+1e-4)u=1-Math.exp(-o*d)*(1+o*d);else{let a=Math.sqrt(i*i-1),f=o*(i+a),g=o*(i-a);u=1-(f*Math.exp(-g*d)-g*Math.exp(-f*d))/(f-g)}m.push(u)}return m}export{K as a,R as b,k as c,V as d,I as e,B as f,O as g,j as h,z as i,X as j,q as k,U as l};
@@ -0,0 +1 @@
1
+ import{h as i,i as y,r as c}from"./chunk-R7BLRFON.js";var g=new Set(["__proto__","constructor","prototype"]),h=(e,n)=>n.reduce((r,t)=>i(r)&&Object.prototype.hasOwnProperty.call(r,t)?r[t]:void 0,e),S=e=>{let n={};for(let r of Object.keys(e)){let t=r.split(".");if(t.some(s=>g.has(s)))continue;let o=n;for(let s of t.slice(0,-1))o=i(o[s])?o[s]:o[s]={};o[t[t.length-1]]=e[r]}return n},d=e=>y(e)&&(typeof CSS>"u"||!CSS.supports||CSS.supports("color",e)),f=(e,n,r)=>Array.isArray(e)?Array.isArray(n)&&(e.every(t=>!i(t))?n.length===e.length&&n.every((t,o)=>f(e[o],t,r)):n.length>=2&&n.length<=64&&n.every(t=>f(e[0],t,r))):i(e)?i(n)&&!Array.isArray(n)&&Object.keys(e).every(t=>f(e[t],n[t],r)):typeof n==typeof e&&(typeof n!="number"||Number.isFinite(n))&&(!r||!y(e)||d(n)),m=(e,n)=>n!=null&&!e.el?.closest(".is-disabled")&&f(e.get(),n,e.m.type==="color"||e.m.type==="gradient")&&(!e.m.options||e.m.options.some(r=>JSON.stringify(c(r))===JSON.stringify(n))),k=(e,n,r=[])=>e.map(t=>[t,h(n,t.path.slice(r.length))]).filter(([t,o])=>m(t,o)),w=(e,n)=>{let r={};for(let[t,o]of n){let s=r;for(let a of t.path.slice(0,-1))s=s[a]||(s[a]={});s[t.path[t.path.length-1]]=o}e.fromJSON({values:r})};function A(e,n,r){let t=JSON.parse(r),o;if(n.kind==="row"){let s=n.entry,a=i(t)&&!Array.isArray(t)&&Object.keys(t).length===1&&Object.prototype.hasOwnProperty.call(t,s.key)?t[s.key]:t;o=m(s,a)?[[s,a]]:[]}else{if(!i(t)||Array.isArray(t))return!1;let s=e.entries.filter(a=>a.path.length>n.path.length&&n.path.every((p,l)=>a.path[l]===p));o=[];for(let a of[t,S(t)])for(let p of[h(a,n.path),a]){let l=i(p)?k(s,p,n.path):[];l.length>o.length&&(o=l)}}return o.length?(w(e,o),o.length):!1}var u=new WeakMap;function O(e,n,r,t){if(!r.alive())return;let o=!1;if(e!==null)try{o=n(e)}catch{}if(r.announce(o?`${o} value${o===1?"":"s"} pasted`:e===null?"Couldn't read the clipboard":"Nothing to paste"),t){let s=o?"is-pasted":"is-refused";t.classList.remove("is-pasted","is-refused"),t.classList.add(s),clearTimeout(u.get(t)),u.set(t,setTimeout(()=>t.classList.remove(s),450))}return!!o}export{O as pasteInto,A as pasteScope,k as pick};
@@ -0,0 +1 @@
1
+ import{c as a,d as b,e as c,f as d,g as e}from"./chunk-36FYZSWP.js";import"./chunk-X5DD246E.js";import"./chunk-R7BLRFON.js";export{a as CHECKER,d as createPickerBody,b as isColor,e as oklchStr,c as parseColor};
@@ -1 +1 @@
1
- import{A as Ht,B as un,C as De,D as pn,E as It,F as Rt,G as fn,H as jt,I as mn,J as gt,K as yt,L as Ze,M as bt,N as Dt,P as ht,Q as $e,R as gn,S as yn,T as bn,U as hn,V as wn,W as we,X as wt,Y as pe,Z as re,d as Jn,e as Gn,f as Nt,g as F,h as ue,i as en,j as tn,k as nn,l as on,m as Ue,n as sn,o as rn,p as an,q as ft,r as Te,s as ln,t as cn,u as L,v as Q,w as X,x as dn,y as mt,z as Qe}from"./chunk-3GZFWFKC.js";var Fe={number:()=>import("./heavy-LD64N5S4.js"),interval:()=>import("./interval-VFQ2O75Q.js"),color:()=>import("./colour-G6UZ5HIL.js"),gradient:()=>import("./gradient-RKPRTDSQ.js"),shadow:()=>import("./shadow-54LEQGQ6.js"),sides:()=>import("./sides-WJF2NEGM.js"),tabs:()=>import("./tabs-C45GWZYF.js"),image:()=>import("./image-TFIUSCCY.js"),fpsgraph:()=>import("./monitor-EAU6GD6P.js"),monitor:()=>import("./monitor-EAU6GD6P.js"),spring:()=>import("./spring-YHAPWWTF.js"),cubicbezier:()=>import("./bezier-EH6GR3RN.js"),motion:()=>Promise.all([import("./bezier-EH6GR3RN.js"),import("./spring-YHAPWWTF.js")]).then(()=>import("./motion-FUAKWKPW.js")),point:()=>import("./point-UF7RGMGJ.js"),plot:()=>import("./plot-AMSWXKO7.js")},vt={},Un=e=>re(e)||!Fe[e]?null:vt[e]||(vt[e]=Fe[e]().catch(t=>{throw delete vt[e],console.error(`[tweaks] control chunk "${e}" failed to load:`,t),t})),$t=(e,t=new Set)=>{for(let s of e)if(s&&(Fe[s.type]&&t.add(s.type),s.children&&$t(s.children,t),s.pages))for(let o of s.pages)$t(o.children,t);return t},Be=e=>{let t=[...$t(e)].map(Un).filter(Boolean);return t.length?Promise.all(t):null};var vn=we('<path class="tw-copy-back" d="m5.5 16.5-.7-.2q-1.5-.6-2.1-2.1-.2-.7-.2-2.7v-2c0-3.3 0-5 1-6s2.7-1 6-1h2c1.4 0 2 0 2.7.2q1.6.5 2.1 2.1l.2.7"/><path class="tw-copy-front" d="M7.5 14.5c0-3.3 0-5 1-6s2.7-1 6-1 5 0 6 1 1 2.7 1 6 0 5-1 6-2.7 1-6 1-5 0-6-1-1-2.7-1-6"/>',"tw-toolbar-btn__copy"),En=we('<path d="m5 14 3.5 3.5L19 6.5"/>',"tw-toolbar-btn__check",2.4),kn=we('<path d="M3 12a9 9 0 1 0 9-9 9 9 0 0 0-7.6 4.2M3.3 3l.2 2q0 2.2.6 2.7t2.7.2l2-.2"/>'),Ln=we('<path d="m17 17 4 4m-2-10a8 8 0 0 0-16 0 8 8 0 0 0 16 0"/>'),Ft=e=>we('<path d="M18 9s-4.4 6-6 6-6-6-6-6"/>',e,2.5),Mn=Ft("tw-chevron"),xn=we('<path d="M20.2 13.5q1.8.8 1.8 1.5 0 .8-2.7 2l-5 2.2Q13 20 12 20q-.7 0-2.4-.8l-4.9-2.3Q2 16 2 15t1.8-1.5"/><path class="tw-layer-top" d="M9.6 4.8Q11.3 4 12 4t2.4.8l4.9 2.3Q22 8 22 9c0 .7-.9 1.1-2.7 2l-5 2.2Q13 14 12 14q-.7 0-2.4-.8l-4.9-2.3Q2 10 2 9c0-.7.9-1.1 2.7-2z"/>'),Cn=we('<path d="M18 6 6 18m12 0L6 6"/>',"",2.2),Bt=we('<circle cx="12" cy="12" r="10"/><path d="M12 16v-4m-.25-3.75a.25.25 0 0 0 .5 0 .25.25 0 0 0-.5 0"/>');var et=(e,t,s)=>{let o=Q("tw-toolbar-btn"+(e?" "+e:""),t);return o.title=s,o.setAttribute("aria-label",s),o},Lt=(e,t,s)=>{let o=et("tw-toolbar-btn--swap",`<span class="tw-toolbar-btn__icons">${vn}${En}</span>`,"Copy values (\u21E7: changed only)");return o.addEventListener("click",async r=>{if(o.disabled)return;let[c,l]=s(r.shiftKey);if(!l){Ee("Nothing has changed",e);return}await eo(c)?(Qn(o),Ee(l>0?`${l} changed value${l===1?"":"s"} copied`:`${t()} values copied`,e)):Ee("Copy failed",e)}),o},Mt=e=>{let t=et("tw-toolbar-btn--reset",kn,"Reset");return t.addEventListener("click",()=>{t.disabled||(qt(t),e())}),t},Qn=e=>{e.classList.add("is-copied"),clearTimeout(e._t),e._t=setTimeout(()=>e.classList.remove("is-copied"),1400)},qt=e=>{let t=e.querySelector("svg");e._spinSettle||(e._spinSettle=()=>{clearTimeout(e._t),e.classList.remove("is-spinning"),t.style.transition="none",t.style.setProperty("--tw-spin","0deg"),t.getBoundingClientRect(),t.style.transition=""},t.addEventListener("transitionend",o=>{o.propertyName==="transform"&&e.classList.contains("is-spinning")&&performance.now()-e._spinT>250&&e._spinSettle()})),e._spinT=performance.now(),t.style.setProperty("--tw-spin",`${(parseFloat(t.style.getPropertyValue("--tw-spin"))||0)-360}deg`),e.classList.add("is-spinning"),clearTimeout(e._t);let s=()=>{t.getAnimations&&t.getAnimations().length?e._t=setTimeout(s,250):e._spinSettle()};e._t=setTimeout(s,600)},ve=null,Tn=0;function Ee(e,t){ve||(ve=L("div","tw-toast tw-portal"),ve.setAttribute("role","status")),ve.isConnected||document.body.appendChild(ve),ve.textContent=e,jt(ve,t),ve.classList.add("is-open"),clearTimeout(Tn),Tn=setTimeout(()=>ve.classList.remove("is-open"),1600)}var V=null,Et=0,kt=null,An=e=>{e.key==="Escape"&&tt()},tt=e=>{e&&kt&&!e.contains(kt)||(clearTimeout(Et),document.removeEventListener("keydown",An),V&&V.classList.remove("is-open"))};function Zn(e,t){V||(V=L("div","tw-tip tw-portal"),V.setAttribute("role","tooltip")),V.isConnected||document.body.appendChild(V),clearTimeout(Et),V.textContent=t,jt(V,e);let s=V.classList.contains("is-open");V.style.visibility="hidden",V.classList.add("is-open"),pn(e,V,{align:"center",prefer:"above",gap:8}),V.style.visibility="",document.addEventListener("keydown",An),kt=e,s||requestAnimationFrame(function o(){if(V.classList.contains("is-open")){if(!kt.isConnected)return tt();requestAnimationFrame(o)}})}function Sn(){V&&(clearTimeout(Et),Et=setTimeout(tt,80))}var Kt=".tw-slider-label, .tw-row-label, .tw-select-label, .tw-trigger-label, .tw-radiogrid-label, .tw-field-label, .tw-folder-title, .tw-fps-label, .tw-plot-label";function qe(e,t){let s=e.querySelector(Kt)||e;if(s===e&&e.classList.contains("tw-separator"))return;let o=s.closest("button"),r=o?L("span","tw-hint",Bt):Q("tw-hint",Bt),c=()=>Zn(r,t);if(o){r.setAttribute("aria-hidden","true");let l=o.getAttribute("aria-description");o.setAttribute("aria-description",l?`${l}. ${t}`:t)}else r.setAttribute("aria-label",t),r.addEventListener("focus",c),r.addEventListener("blur",Sn),r.addEventListener("keydown",l=>{(l.key==="Enter"||l.key===" ")&&l.stopPropagation()});r.addEventListener("pointerenter",c),r.addEventListener("pointerleave",Sn),r.addEventListener("pointerdown",l=>l.stopPropagation()),r.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation()}),s.appendChild(r)}async function eo(e){try{return await navigator.clipboard.writeText(e),!0}catch{}let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.top="-9999px",document.body.appendChild(t),t.focus(),t.select();let s=!1;try{s=document.execCommand("copy")}catch{}return document.body.removeChild(t),s}function _e(e,t,s=0){if(Ct(e))return null;let o=oo(e,t,s);return o&&t&&typeof t=="object"&&(typeof t.render=="function"&&(o.render=t.render),t.disabled!=null&&(o.disabled=t.disabled),t.hint!=null&&(o.hint=String(t.hint)),t.persist===!1&&(o.persist=!1)),o}var Se=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Ct=e=>e==="__proto__"||e==="constructor"||e==="prototype",ke=(e,t)=>e!==t&&!(ue(e)&&ue(t)&&JSON.stringify(e)===JSON.stringify(t)),Tt=(e,t,s)=>{e.set(s),e.set(t)},On=e=>Array.isArray(e.options)&&{type:"radiogrid",options:e.options,value:e.value??Te(e.options[0]),cols:e.cols},to=(e,...t)=>{let s=(t.length?t:[0]).map(c=>ft(Number.isFinite(+c)?+c:0)),o=e.min??Math.min(...s.map(c=>c[0])),r=e.max??Math.max(...s.map(c=>c[1]));return{min:o,max:r,step:e.step??Ue(o,r)}},Xt=(e,t)=>e.label==null?t:String(e.label),Pn=e=>typeof e=="function"?e:void 0,_n=e=>typeof e=="string"&&e.trim()?e.trim().slice(0,12):void 0,Yt=["stiffness","damping","mass","visualDuration","bounce"],Nn={slider:e=>{let t=to(e,e.value??e.min??0);return{value:e.value??t.min,...t,soft:e.soft,unit:_n(e.unit),format:Pn(e.format),parse:Pn(e.parse)}},number:e=>({value:e.value??0,min:e.min,max:e.max,step:e.step??1,soft:e.soft,unit:_n(e.unit)}),checkbox:e=>({value:!!e.value}),radiogrid:On,segmented:On,list:e=>Array.isArray(e.options)&&{options:e.options,value:e.value??Te(e.options[0])},text:e=>({value:e.value??"",rows:e.rows,placeholder:e.placeholder}),spring:e=>{let t=ue(e.value)?e.value:e,s={stiffness:t.stiffness??300,damping:t.damping??26,mass:t.mass??1};Number.isFinite(+t.visualDuration)&&(s.visualDuration=+t.visualDuration),Number.isFinite(+t.bounce)&&(s.bounce=+t.bounce);let o=e.mode??t.mode;return(o==="time"||o==="physics")&&(s.mode=o),{value:s}},motion:e=>{let t=typeof e.value=="string"||Array.isArray(e.value)?{...e,curve:e.value}:ue(e.value)?e.value:e,s=Yt.some(r=>t[r]!=null),o={curve:"ease",duration:300,...s?{}:{visualDuration:.5,bounce:.2}};for(let r of["mode","curve","duration",...Yt])t[r]!=null&&(o[r]=t[r]);return o.mode!=="easing"&&o.mode!=="spring"&&(o.mode=s?"spring":"easing"),{value:o}},point:e=>{if(!Array.isArray(e.components)||!e.components.length)return!1;let t=new Set,s=e.components.map((o,r)=>{let c=String(o.key??((o.label?String(o.label).toLowerCase():"")||`c${r}`)),l=c,p=2;for(;t.has(l);)l=`${c}-${p++}`;return t.add(l),{...o,key:l}});return{components:s,pad:e.pad,invertY:e.invertY,value:Object.fromEntries(s.map(o=>[o.key,o.value??0]))}},buttongroup:e=>({buttons:e.buttons}),separator:()=>({}),tabs:(e,t)=>{if(!e.pages||typeof e.pages!="object"||!Object.keys(e.pages).length)return!1;let s=new Set;return{pages:Object.entries(e.pages).map(([o,r])=>{let c=o.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"tab",l=c,p=2;for(;s.has(l);)l=`${c}-${p++}`;return s.add(l),{key:l,title:o.trim()?o:"Tab",children:Object.entries(r).map(([y,M])=>_e(y,M,t+1)).filter(Boolean)}})}}},no=Object.assign(Object.create(null),{list:"options",radiogrid:"options",segmented:"options",point:"components",tabs:"pages"});function oo(e,t,s=0){if(s>64)return null;let o=Nt(e),r=(c,l,p=o)=>({type:c,key:e,label:p,...l});if(ue(t)&&!Array.isArray(t)&&Se(Nn,t.type)){let c;try{c=Nn[t.type](t,s)}catch(l){return console.error(`[tweaks] malformed "${t.type}" schema value for "${e}" \u2014 control skipped:`,l),null}if(c)return r(String(t.type),c,Xt(t,o));if(Se(t,no[t.type]))return console.error(`[tweaks] malformed "${t.type}" schema value for "${e}" \u2014 control skipped`),null}else if(ue(t)&&!Array.isArray(t)&&typeof t.type=="string"&&(Fe[t.type]||re(t.type))){let{type:c,label:l,...p}=t;return r(c,p,Xt(t,o))}if(Array.isArray(t)&&Array.isArray(t[0])&&t[0].length===2&&typeof t[0][0]=="number"){let c=Number.isFinite(+t[1])?+t[1]:+t[0][0],l=Number.isFinite(+t[2])?+t[2]:+t[0][1];return r("interval",{value:t[0].map(Number),min:c,max:l,step:t[3]??Ue(c,l)})}if(Array.isArray(t)&&t.length<=4&&typeof t[0]=="number"){let c=t[0],[l,p]=ft(c),y=t.length>1?t[1]:l,M=t.length>2?t[2]:p;return r("slider",{value:c,min:y,max:M,step:t[3]??Ue(y,M)})}if(typeof t=="number"){let[c,l]=ft(t);return r("slider",{value:t,min:c,max:l,step:Ue(c,l)})}return typeof t=="boolean"?r("checkbox",{value:t}):Array.isArray(t)?r("list",{options:t,value:Te(t[0])}):ue(t)&&typeof t.action=="function"?r("button",{action:t.action},Xt(t,o)):ue(t)&&Array.isArray(t.options)?r("list",{options:t.options,value:t.value??Te(t.options[0])}):en(t)?r("color",{value:t}):typeof t=="string"?r("text",{value:t}):ue(t)?r("folder",{children:Object.entries(t).filter(([c,l])=>!(c==="render"&&typeof l=="function")&&!((c==="disabled"||c==="hint")&&l!=null)).map(([c,l])=>_e(c,l,s+1)).filter(Boolean)}):null}var St=new Set(["button","fpsgraph","monitor","buttongroup","separator"]),Hn=e=>({...Object.fromEntries(Yt.map(t=>[t,N(e[t])])),mode:e.mode}),In={slider:e=>({value:N(e.value),min:N(e.min),max:N(e.max),step:N(e.step),soft:xt(e.soft),unit:e.unit}),checkbox:e=>e.options?{type:"radiogrid",options:nt(e.options),value:e.value,cols:N(e.cols)}:{value:e.checked==="true"},radiogrid:e=>({options:nt(e.options),value:e.value,cols:N(e.cols)}),list:e=>({options:nt(e.options),value:e.value}),button:(e,t,s)=>({action:()=>Ee(`${s} pressed`,t)}),buttongroup:(e,t)=>({buttons:nt(e.buttons).map(s=>({label:s,action:()=>Ee(`${s} pressed`,t)}))}),separator:()=>({}),number:e=>({value:N(e.value),min:N(e.min),max:N(e.max),step:N(e.step),unit:e.unit}),text:e=>({value:e.value??"",placeholder:e.placeholder,rows:N(e.rows)}),fpsgraph:e=>({label:e.label??"FPS"}),interval:e=>({value:e.value?e.value.split(",").map(Number):void 0,min:N(e.min),max:N(e.max),step:N(e.step)}),sides:e=>({value:e.value??e,corners:xt(e.corners),unit:e.unit,step:N(e.step),min:N(e.min),max:N(e.max)}),shadow:e=>({value:e.value??{...e,inset:xt(e.inset)}}),spring:Hn,motion:e=>({...Hn(e),curve:e.curve&&e.curve.includes(",")?e.curve.split(",").map(Number):e.curve,duration:N(e.duration)}),cubicbezier:e=>({value:e.value?e.value.split(",").map(Number):void 0}),point:e=>{let t=(e.value||"").split(",").map(s=>parseFloat(s));return{components:nt(e.components||"X,Y").map((s,o)=>({key:s.toLowerCase(),label:s,value:isNaN(t[o])?0:t[o],step:N(e.step),min:N(e.min),max:N(e.max)})),pad:xt(e.pad),invertY:e.invertY==="true"}},plot:e=>({expr:e.expr,xMin:N(e.xmin),xMax:N(e.xmax),yMin:N(e.ymin),yMax:N(e.ymax),samples:N(e.samples),editable:e.editable!=="false"})},N=e=>{if(e==null||e==="")return;let t=+e;return Number.isFinite(t)?t:void 0},xt=e=>e==="true"||e==="",nt=e=>(e||"").split(",").map(t=>t.trim()).filter(Boolean),Rn=e=>{let t=e.dataset,s=t.tw,o=t.label??Nt(t.key||s),r=Se(In,s)?In[s](t,e,o):Fe[s]||re(s)?{...t}:null;return r?_e("v",{type:s,label:o,...r}):null};var so=3,jn=32,Dn=200,$n=8;function ro(e,t){let s=e.label,{min:o,max:r,step:c}=sn(e.min,e.max,e.step);e.soft||([o,r]=on(o,r,c));let l=(r-o)/c<=6,p=Number.isFinite(+e.value)?+e.value:o,y=e.soft&&!l?p:F(p,o,r),M=0,k=tn(c),v=L("div","tw-slider-wrap"),m=L("div","tw-slider"),z=L("div","tw-slider-hashmarks"),P=L("div","tw-slider-fill"),_=L("div","tw-slider-handle"),h=X("span","tw-slider-label",s),w=L("span","tw-slider-value"),$=typeof e.unit=="string"?e.unit.trim():"",Ye=document.createTextNode(""),st=$?/^[%°]$/.test($)?$:" "+$:"";w.append(Ye),$&&w.append(X("span","tw-slider-unit",st));let fe=e.format,J=e.parse,me=d=>{if(fe)try{let S=fe(d);if(typeof S=="string"&&S)return S}catch{}return d.toFixed(k)};m.append(z,P,_,h,w),v.append(m),m.tabIndex=0,m.setAttribute("role","slider"),m.setAttribute("aria-label",s),m.setAttribute("aria-valuemin",String(o)),m.setAttribute("aria-valuemax",String(r));let Z=d=>nn(d,o,c),Ne=l?Array.from({length:Math.max(0,Math.round((r-o)/c)-1)},(d,S)=>(S+1)*c/(r-o)*100):[];for(let d of Ne){let S=L("div","tw-slider-hashmark");S.style.left=d+"%",z.append(S)}let ie=()=>{let d=F((y-o)/(r-o||1)*100,0,100),S=M?` + ${M.toFixed(1)}px`:"",I=`${d}%${S}`;P.style.width=M?`calc(${I})`:d+"%",_.style.left=`max(5px, calc(${I} - 9px))`;let R=Z(y),A=me(R);Ye.data=A,m.setAttribute("aria-valuenow",String(R)),m.setAttribute("aria-valuetext",A+st);let K=v.offsetWidth,oe=w.offsetWidth;if(K){oe&&(h.style.maxWidth=Math.max(0,K-oe-30)+"px");let We=Math.max(5,d/100*K+M-9);m.classList.toggle("is-dodge",an(h,w,We,3))}};ie();let B=null,rt=1,Y=null,Le=!0,Ve,ge=null,Me=null,it=`width 0.34s ${Dt}`,g=`left 0.34s ${Dt}, opacity 0.15s, transform 0.2s ${bt}`,U=.2,ae=d=>{if(!B)return y;let S=v.offsetWidth||B.width,I=F((d-B.left)/rt/S,0,1);return F(o+I*(r-o),o,r)},He=d=>{let S=0;d<B.left?S=-$n*Math.sqrt(Math.min(Math.max(0,B.left-d-jn)/Dn,1)):d>B.right&&(S=$n*Math.sqrt(Math.min(Math.max(0,d-B.right-jn)/Dn,1))),m.style.width=`calc(100% + ${Math.abs(S)}px)`,m.style.transform=S<0?`translateX(${S}px)`:""},xe=(d,S=!0)=>{d=+d,Number.isFinite(d)&&(y=l?F(Z(d),o,r):e.soft?d:F(d,o,r),ie(),S&&t(Z(y)))},Ce=Math.max(1,Math.round((r-o)/c)),at=.2,lt=.3,ze=520,le=27,ee=d=>(d-o)/c,q=0,j=0,te=0,ce=!1,ye=null,Ae=y,be=0,ne=()=>{te&&cancelAnimationFrame(te),te=0,be=0},de=d=>{if(!m.isConnected){ne();return}let S=be?Math.min((d-be)/1e3,.05):1/60;be=d;let I=v.offsetWidth||B&&B.width||1,R=ee(F(Ae,o,r)),A=F(Math.round(R+at),0,Ce),K=ce?A+lt*F(R-A,-.5,.5):A;if(Ze&&Ze.matches)q=K,j=0;else{let oe=S,We=1/240;for(;oe>1e-4;){let Pe=Math.min(We,oe);oe-=Pe;let Je=ze*(K-q)-le*j;j+=Je*Pe,q+=j*Pe,q<0&&(q=0,j=0),q>Ce&&(q=Ce,j=0)}}M=(q-A)*c/(r-o||1)*I,y=F(o+A*c,o,r),ie(),A!==ye&&(ye=A,t(Z(y))),!ce&&Math.abs(j)<.004&&Math.abs(q-A)<.004?(q=A,j=0,M=0,ie(),ne(),m.classList.remove("is-active")):te=requestAnimationFrame(de)},G=d=>{q=ee(y),j=0,ce=!0,ye=Math.round(ee(y)),Ae=ae(d),te||(te=requestAnimationFrame(de))};m.addEventListener("pointerdown",d=>{if(!w.classList.contains("is-editing")&&!(d.button!==0||Y)){d.preventDefault(),m.focus({focusVisible:!1}),Me=d.pointerId;try{d.target.setPointerCapture(d.pointerId)}catch{}clearTimeout(Ve),m.style.transition="",Y={x:d.clientX,y:d.clientY},Le=!0,m.classList.add("is-active"),B=v.getBoundingClientRect(),rt=B.width/(v.offsetWidth||B.width),l?(P.style.transition="",_.style.transition="",G(d.clientX)):(P.style.transition=it,_.style.transition=g,xe(ae(d.clientX)))}}),m.addEventListener("pointermove",d=>{if(!(!Y||d.pointerId!==Me)){if(d.buttons===0){he();return}if(Le&&Math.hypot(d.clientX-Y.x,d.clientY-Y.y)>so&&(Le=!1,m.classList.add("is-dragging"),l||(P.style.transition="",_.style.transition="")),!Le)if(He(d.clientX),l)Ae=ae(d.clientX);else{let S;if(d.altKey){ge||(ge={x:d.clientX,v:y});let I=v.offsetWidth||B.width;S=F(ge.v+(d.clientX-ge.x)/I*(r-o)*U,o,r)}else ge=null,S=ae(d.clientX);xe(S)}d.clientX>=B.left&&d.clientX<=B.right&&(m.style.width="",m.style.transform="")}});let he=d=>{!Y||d&&d.pointerId!==Me||(l?(ce=!1,m.classList.remove("is-dragging"),te||(te=requestAnimationFrame(de))):(Ve=setTimeout(()=>{P.style.transition="",_.style.transition=""},360),m.classList.remove("is-active","is-dragging")),m.style.transition=`width 0.35s ${bt}, transform 0.35s ${bt}`,m.style.width="",m.style.transform="",setTimeout(()=>{m.style.transition=""},360),Y=null,ge=null,Me=null)};m.addEventListener("pointerup",he),m.addEventListener("pointercancel",he),m.addEventListener("lostpointercapture",he),un(m,ie),mt(ie),Qe(m,[[window,"resize"]],ie),m.addEventListener("keydown",d=>{if(d.target!==m||Y)return;let S=rn(d,y,c,o,r,(r-o)/10||c*10);S!=null&&(d.preventDefault(),l&&(ne(),M=0,m.classList.remove("is-active")),xe(F(S,o,r)))});let Ie;w.addEventListener("mouseenter",()=>{Ie=setTimeout(()=>w.classList.add("is-editable"),800)}),w.addEventListener("mouseleave",()=>{clearTimeout(Ie),w.classList.contains("is-editing")||w.classList.remove("is-editable")}),w.addEventListener("pointerdown",d=>{d.pointerType&&d.pointerType!=="mouse"?(w.classList.add("is-editable"),d.stopPropagation()):w.classList.contains("is-editable")&&d.stopPropagation()});let Oe=()=>{if(w.classList.contains("is-editing"))return;let d=L("input","tw-slider-input");d.type="text",d.inputMode=J?"text":"decimal",De(d),d.value=J?me(Z(y)):Z(y).toFixed(k);let S=d.value;d.style.width=S.length+1+"ch",w.classList.add("is-editing"),w.replaceWith(d),d.focus(),d.select();let I=()=>{d.replaceWith(w),w.classList.remove("is-editing","is-editable")},R=()=>{let A=d.value,K=NaN;if(A!==S)try{K=J?J(A):Number(A.replace($,"").trim()||NaN)}catch{}Number.isFinite(K)&&xe(e.soft?K:F(K,o,r)),I()};d.addEventListener("pointerdown",A=>A.stopPropagation()),d.addEventListener("blur",R),d.addEventListener("keydown",A=>{A.key==="Enter"?(d.removeEventListener("blur",R),m.focus(),R()):A.key==="Escape"&&(A.stopPropagation(),d.removeEventListener("blur",R),m.focus(),I())})};return w.addEventListener("click",()=>{w.classList.contains("is-editable")&&Oe()}),m.addEventListener("keydown",d=>{d.key==="Enter"&&d.target===m&&!Y&&(d.preventDefault(),Oe())}),{el:v,set:d=>xe(d,!1),get:()=>Z(y)}}function io(e,t){let s=L("div","tw-row"),o=wn([{value:"off",label:"Off"},{value:"on",label:"On"}],e.value?"on":"off",r=>t(r==="on"),e.label);return s.append(X("span","tw-row-label",e.label),o.el),{el:s,set:r=>o.set(r?"on":"off"),get:()=>o.get()==="on"}}function ao(e,t){let s=e.options||[],o=Math.min(3,Math.max(2,e.cols||(s.length<=3?s.length:s.length===4?2:3))),r=L("div","tw-radiogrid"),c=L("div","tw-radiogrid-grid");c.style.setProperty("--tw-rg-cols",o),c.setAttribute("role","radiogroup"),c.setAttribute("aria-label",e.label);let l=e.value??Te(s[0]),p=s.map(k=>{let v=bn("tw-radiogrid-btn",k,m=>M(m));return c.append(v),v}),y=()=>yn(p,l),M=(k,v=!0)=>{k!=null&&!p.some(m=>m._twVal===k)||(l=k,y(),v&&t(k))};return c.addEventListener("keydown",k=>{let v=gn(p,l);if(v<0)return;let m=hn(k.key,v,p.length,o);m<0||(k.preventDefault(),m!==v&&(M(p[m]._twVal),p[m].focus()))}),y(),r.append(X("span","tw-radiogrid-label",e.label),c),{el:r,set:k=>M(k,!1),get:()=>l}}var lo=/^(?:#[0-9a-f]{3,8}|[a-z]+|(?:oklch|oklab|rgba?|hsla?|hwb|lab|lch|color|var)\([^()]*\))$/i,co=Ft("tw-select-chevron");function uo(e,t){let s=e.value,o=e.options.map(h=>({value:Te(h),label:cn(h),color:h&&typeof h=="object"&&typeof h.color=="string"&&lo.test(h.color.trim())?h.color.trim():""})),r=L("div","tw-select"),c=Q("tw-select-trigger");c.setAttribute("aria-haspopup","listbox"),c.setAttribute("aria-expanded","false");let l=L("span","tw-select-right"),p=h=>`linear-gradient(${h}, ${h}), var(--tw-checker)`,y=h=>{let w=L("span","tw-option-swatch");return w.style.background=p(h),w},M=L("span","tw-option-swatch"),k=L("span","tw-select-value");l.append(M,k),l.insertAdjacentHTML("beforeend",co),c.append(X("span","tw-select-label",e.label),l);let v=L("div","tw-select-dropdown");v.setAttribute("role","listbox");let m=o.map(h=>{let w=Q("tw-select-option");return w.setAttribute("role","option"),h.color&&w.append(y(h.color)),w.append(X("span","tw-option-label",h.label)),w.dataset.value=h.value,w.addEventListener("click",()=>{P(h.value),_.close()}),v.append(w),w});r.append(c,v);let z=()=>{let h=o.find(w=>w.value===s);k.textContent=h?.label??s,M.style.display=h?.color?"":"none",h?.color&&(M.style.background=p(h.color)),m.forEach(w=>{let $=w.dataset.value===String(s);w.dataset.selected=String($),w.setAttribute("aria-selected",String($))})},P=(h,w=!0)=>{h!=null&&!o.some($=>$.value===h)||(s=h,z(),w&&t(h))},_=gt(r,c,v,{width:"match",fallbackH:200,gap:4,onOpen:()=>(m.find(h=>h.dataset.value===String(s))||m[0])?.focus()});return c.addEventListener("keydown",h=>{!_.isOpen()&&(h.key==="ArrowDown"||h.key==="ArrowUp")&&(h.preventDefault(),_.open())}),v.addEventListener("keydown",h=>{let w=m.indexOf(document.activeElement),$=w;if(h.key==="ArrowDown")$=w<0?0:Math.min(m.length-1,w+1);else if(h.key==="ArrowUp")$=w<0?m.length-1:Math.max(0,w-1);else if(h.key==="Home")$=0;else if(h.key==="End")$=m.length-1;else return;h.preventDefault(),m[$]?.focus()}),z(),{el:r,set:h=>P(h,!1),get:()=>s}}function po(e){let t=X("button","tw-button",e.label);return t.addEventListener("click",()=>e.action&&e.action()),wt(t)}function fo(e){let t=L("div","tw-row tw-buttongroup");e.label&&t.append(X("span","tw-row-label",e.label));let s=L("div","tw-buttongroup-btns"),o=Array.isArray(e.buttons)?e.buttons.map(r=>[r.label??"Button",r.action]):Object.entries(e.buttons||{});for(let[r,c]of o){let l=X("button","tw-buttongroup-btn",r);l.addEventListener("click",()=>typeof c=="function"&&c()),s.append(l)}return t.append(s),wt(t)}var mo=()=>wt(L("div","tw-separator"));function go(e,t){let s=y=>y==null?"":typeof y=="object"?ln(y):String(y),o=s(e.value),r=e.rows>0,c=L("div",r?"tw-row tw-row-multiline":"tw-row"),l=L(r?"textarea":"input",r?"tw-text tw-textarea":"tw-text");r?l.rows=e.rows:l.type="text",l.value=o,De(l),e.placeholder&&(l.placeholder=e.placeholder),l.addEventListener("input",()=>{o=l.value,t(o)});let p=()=>{let y=l.scrollHeight-l.clientHeight>1;l.classList.toggle("is-clip-top",y&&l.scrollTop>1),l.classList.toggle("is-clip-bottom",y&&l.scrollTop+l.clientHeight<l.scrollHeight-1)};return r&&(l.addEventListener("scroll",p),l.addEventListener("input",p),typeof ResizeObserver=="function"&&new ResizeObserver(p).observe(l)),c.append(X("span","tw-row-label",e.label),l),{el:c,set:y=>{o=s(y),l.value=o,r&&p()},get:()=>o}}function ot(e){let t=L("div","tw-folder"),s=Q("tw-folder-header");s.setAttribute("aria-expanded","true"),s.append(X("span","tw-folder-title",e.label)),s.insertAdjacentHTML("beforeend",Mn);let o=L("div","tw-folder-body"),r=L("div","tw-controls");o.append(r),t.append(s,o);let c=l=>$e(t,s,o,l);return s.addEventListener("click",()=>c(!t.classList.contains("is-collapsed"))),{el:t,body:r,setCollapsed:c}}function Ke(e,t){let s=re(e.type);if(!s)return null;try{return s(e,t)}catch(o){return console.error("[tweaks] control failed to build:",e&&e.type,o),null}}pe("slider",ro);pe("checkbox",io);pe("radiogrid",ao);pe("list",uo);pe("button",po);pe("buttongroup",fo);pe("separator",mo);pe("text",go);pe("folder",ot);var Xe=null;function yo(e,t,s={}){let o=Object.entries(t).filter(([n])=>n!=="_last"||(console.warn('[tweaks] "_last" is reserved (the changed-key channel) \u2014 schema entry skipped'),!1)).map(([n,i])=>_e(n,i)).filter(Boolean),r={},c=[],l=new Set,p=new Set,y=new Set,M=[],k=!1,v=!1,m=[],z=new Map,P=!1,_=-1,h=n=>{if(!k){if(P){console.warn("[tweaks] call ignored \u2014 the panel could not be built");return}v?n():m.push(n)}},w=null,$=function(n,i){return n==="_last"&&this===r?void 0:i===void 0?null:typeof i=="bigint"?String(i):i},Ye=!1,st=()=>{let n={};for(let i of c){let a=n;for(let u of i.path.slice(0,-1))a=a[u]||(a[u]={});a[i.key]=i.get()}return JSON.parse(JSON.stringify(n,$))},fe=()=>{try{return JSON.parse(JSON.stringify(r,$))}catch(n){return Ye||(Ye=!0,console.warn("[tweaks] a value parked on params can't be serialised \u2014 snapshots carry the controls' values only:",n)),st()}},J=s.persist?`tw:${s.persist===!0?e:s.persist}`:null,me=J?`${J}:presets`:null,Z=n=>{try{return JSON.parse(localStorage.getItem(n)||"null")}catch{return null}},Ne=(n,i)=>{try{localStorage.setItem(n,JSON.stringify(i))}catch{}},ie=(n,i)=>i.reduce((a,u)=>a?.[u],n),B=n=>{for(let i of c)if(!i.persist){let a=ie(n,i.path.slice(0,-1));a&&typeof a=="object"&&Reflect.deleteProperty(a,i.key)}return n},rt=J?(()=>{let n=0,i=()=>{n=0,Ne(J,B(fe()))};return M.push(()=>{n&&(clearTimeout(n),i())}),()=>{clearTimeout(n),n=setTimeout(i,150)}})():()=>{},Y=(n,i=r._last)=>{(n?y:p).forEach(a=>{try{a(r,i)}catch(u){console.error("[tweaks] listener threw:",u)}}),k||rt()},Le=n=>typeof n=="function"||typeof n=="symbol"||typeof n=="bigint",Ve=(n,i)=>{if(Le(i))throw new TypeError(`a ${typeof i} is not a control value`);n.set(i),n.target[n.key]=n.get()},ge=n=>{Tt(n,n.raw,n.def),n.target[n.key]=n.get()},Me=!1,it=()=>{if(typeof s.onReset=="function"&&!Me){Me=!0;try{return s.onReset()}finally{Me=!1}}for(let n of c)try{ge(n)}catch(i){console.error(`[tweaks] resetting "${n.path.join(".")}" failed \u2014 control skipped:`,i)}r._last=void 0,Y()},g=L("div","tw-panel");g.dataset.mode="inline",dn(g);let U=L("div","tw-header"),ae=Q("tw-header-toggle");ae.setAttribute("aria-expanded","true");let He=e,xe=X("span","tw-title",He);ae.append(xe);let Ce=L("div","tw-toolbar"),at=()=>{let n={};for(let i of c)ke(i.get(),i.def)&&(n[i.path.join(".")]=i.get());return JSON.parse(JSON.stringify(n,$))},lt=Lt(g,()=>He,n=>{if(!n)return[JSON.stringify(fe(),null,2),-1];let i=at();return[JSON.stringify(i,null,2),Object.keys(i).length]}),ze=Mt(it),le=null;J&&s.presets!==!1&&(le=et("",xn,"Presets"),le.setAttribute("aria-haspopup","menu"),le.setAttribute("aria-expanded","false"),Ce.append(le));let ee=!!s.filter&&(s.toolbar!==!1||(console.warn("[tweaks] opts.filter needs the toolbar (its search button lives there) \u2014 ignored alongside toolbar:false"),!1)),q=ee?et("",Ln,"Filter controls"):null,j=ee?L("input","tw-search"):null;ee&&(j.type="text",j.placeholder="Filter\u2026",j.spellcheck=!1,j.setAttribute("aria-label","Filter controls"),De(j),Ce.append(q)),Ce.append(lt,ze),U.append(ae),ee&&U.append(j),s.toolbar!==!1&&U.append(Ce);let te=[lt,ze,le,q].filter(Boolean);for(let n of te)n.disabled=!0;let ce=!1,ye=!1;U.addEventListener("click",n=>{ye&&(ye=!1,n.preventDefault(),n.stopPropagation())},!0),ae.addEventListener("click",()=>{$e(g,ae,Ae,!g.classList.contains("is-collapsed")),g.dataset.mode==="floating"&&setTimeout(()=>{g.dataset.mode==="floating"&&g.isConnected&&(K(),A())},270)});let Ae=L("div","tw-body"),be=L("div","tw-controls");Ae.append(be),g.append(U,Ae);let ne=It(s.theme);Rt(g,ne),g._twTheme=ne;let de=s.draggable!==!1,G=8,he=28,Ie=()=>({maxX:Math.max(G,window.innerWidth-g.offsetWidth-G),maxY:Math.max(G,window.innerHeight-g.offsetHeight-G)}),Oe=J?`${J}:pos`:null,d=(de||s.floating)&&Oe?Z(Oe):null,S=d||(typeof s.floating=="object"?s.floating:null)||{x:16,y:16},I=+S.x||16,R=+S.y||16,A=()=>{g.style.left=I+"px",g.style.top=R+"px"},K=()=>{let{maxX:n,maxY:i}=Ie();I=F(I,G,n),R=F(R,G,i)};(de||s.floating)&&(s.floating||d)&&(g.dataset.mode="floating",K(),A(),requestAnimationFrame(()=>{!k&&g.dataset.mode==="floating"&&g.isConnected&&(K(),A())}));let oe=n=>{ge(n),r._last=n.key,Y()},We=(n,i)=>{let a=n.querySelector(".tw-slider-value")||n.querySelector(Kt)||n;a.classList.add("tw-resettable"),a.title="Double-click or hold to reset";let u=0,C=0,b=0,T=!1,E=()=>{u&&(clearTimeout(u),u=0,a.classList.remove("tw-reset-holding"))};a.addEventListener("pointerdown",f=>{f.stopPropagation(),T=!1,!(f.pointerType!=="touch"&&f.pointerType!=="pen")&&(C=f.clientX,b=f.clientY,a.classList.add("tw-reset-holding"),u=setTimeout(()=>{u=0,a.classList.remove("tw-reset-holding","is-editable"),T=!0,oe(i)},500))}),a.addEventListener("pointermove",f=>{u&&Math.abs(f.clientX-C)+Math.abs(f.clientY-b)>8&&E()}),a.addEventListener("pointerup",E),a.addEventListener("pointercancel",E),a.addEventListener("pointerleave",E),a.addEventListener("contextmenu",f=>{T&&f.preventDefault()}),a.addEventListener("click",f=>{T&&(f.preventDefault(),f.stopImmediatePropagation(),T=!1)},!0),a.addEventListener("dblclick",f=>{a===n&&f.target.closest&&f.target.closest("input, textarea")||(f.preventDefault(),f.stopPropagation(),oe(i))}),a.classList.contains("tw-slider-value")&&n.addEventListener("dblclick",f=>{let O=f.target;!O.classList||!O.classList.contains("tw-slider-input")||(f.preventDefault(),f.stopPropagation(),O.blur(),oe(i))}),n.addEventListener("keydown",f=>{!f.altKey||f.metaKey||f.ctrlKey||f.key!=="Backspace"&&f.key!=="Delete"||(f.preventDefault(),f.stopPropagation(),f.target.classList&&f.target.classList.contains("tw-slider-input")&&f.target.blur(),oe(i))})},Pe=[],Je,Kn=(n,i)=>!n._hid==!i?!1:(n._hid=i,Je?Je(n,i):n.classList.toggle("tw-cond-hidden",i),!i),At=(n,i)=>{i.hint&&qe(n,i.hint),(i.render||i.disabled!=null)&&Pe.push({node:n,m:i})},Ot=[],Pt=[],ct=[],dt=[],Xn=n=>{typeof n.destroy=="function"&&M.push(n.destroy)},_t=(n,i,a,u=[],C=null)=>{for(let b of i){if(b.type==="tabs"){let f={};l.add(f),a[b.key]=f;let O=re("tabs"),x=O&&O(b);if(!x)continue;dt.push({path:[...u,b.key],ctrl:x,pageKeys:b.pages.map(H=>H.key)}),b.pages.forEach((H,W)=>{let se={};l.add(se),f[H.key]=se,_t(x.bodies[W],H.children,se,[...u,b.key,H.key])}),At(x.el,b),n.append(x.el);continue}if(b.type==="folder"){let f={};l.add(f),a[b.key]=f;let O=ot(b);ct.push({path:[...u,b.key],el:O.el,setCollapsed:O.setCollapsed});let x=ee?{el:O.el,label:b.label,body:O.body}:null;x&&Pt.push(x),_t(O.body,b.children,f,[...u,b.key],x),At(O.el,b),n.append(O.el);continue}let T=!St.has(b.type),E=Ke(b,T?f=>{ke(a[b.key],f)&&(a[b.key]=f,r._last=b.key,Y())}:()=>{});if(E){if(Xn(E),T){let f=E.get();Se(a,b.key)&&E.set(a[b.key]),a[b.key]=E.get();let O={target:a,key:b.key,set:E.set,get:E.get,raw:b.value,def:f,path:[...u,b.key],persist:b.persist!==!1};c.push(O),We(E.el,O)}At(E.el,b),ee&&b.type!=="separator"&&Ot.push({el:E.el,label:b.label,folder:C}),n.append(E.el)}}};if(ee){let n=a=>{let u=a.trim().toLowerCase(),C=!1,b=(T,E)=>{!E&&T.classList.contains("tw-filter-hidden")&&(C=!0),T.classList.toggle("tw-filter-hidden",E)};if(!u)Ot.forEach(T=>b(T.el,!1)),Pt.forEach(T=>b(T.el,!1));else{for(let T of Ot){let E=T.folder&&yt(T.folder.label,u);b(T.el,!(yt(T.label,u)||E))}for(let T of Pt.slice().reverse()){let E=[...T.body.children].some(f=>!f.classList.contains("tw-filter-hidden"));b(T.el,!(yt(T.label,u)||E))}}C&&Ht()},i=()=>{g.classList.remove("is-searching"),j.value="",n("")};q.addEventListener("click",()=>{q.disabled||(g.classList.toggle("is-searching")?(j.focus(),j.select()):i())}),j.addEventListener("input",()=>n(j.value)),j.addEventListener("keydown",a=>{a.key==="Escape"&&(i(),q.focus())})}let Yn=new Set(o.map(n=>n.key)),ut=(n,i)=>{if(!(!n||typeof n!="object")){for(let a of c){let u=ie(n,a.path);if(u!==void 0)try{Ve(a,u)}catch(C){console.error(`[tweaks] restoring "${a.path.join(".")}" failed \u2014 value skipped:`,C)}}for(let a of Object.keys(n))if(!Yn.has(a)&&a!=="_last"&&Se(r,a)&&!Ct(a)&&!Le(n[a]))try{r[a]=n[a]}catch(u){console.error(`[tweaks] restoring "${a}" failed \u2014 value skipped:`,u)}r._last=void 0,Y(i)}},Re=()=>{let n=me?Z(me):null;return Object.assign(Object.create(null),n&&typeof n=="object"?n:{})},zt=n=>{let i=Re();i[n]=fe(),Ne(me,i)},Wt=n=>{let i=Re();i[n]&&ut(i[n])},Jt=n=>{let i=Re();delete i[n],Ne(me,i)},pt=n=>n.map(i=>String(i).replace(/~/g,"~1").replace(/\./g,"~0")).join("."),Vn=()=>{let n={};if(ct.length){let i={};for(let a of ct)i[pt(a.path)]=a.el.classList.contains("is-collapsed");n.folders=i}if(dt.length){let i={};for(let a of dt)i[pt(a.path)]=a.pageKeys[a.ctrl.active()]??null;n.tabs=i}return n},zn=n=>{if(!(!n||typeof n!="object")){if(n.folders)for(let i of ct){let a=n.folders[pt(i.path)];typeof a=="boolean"&&i.setCollapsed(a)}if(n.tabs)for(let i of dt){let a=i.pageKeys.indexOf(n.tabs[pt(i.path)]);a>=0&&a!==i.ctrl.active()&&i.ctrl.activate(a)}}};if(de||s.floating){if(de){g.dataset.draggable="true";let x=L("span","tw-grabber");x.setAttribute("aria-hidden","true"),U.prepend(x)}let n=()=>{if(g.dataset.mode==="floating")return;let x=g.getBoundingClientRect();if(I=x.left,R=x.top,g.parentNode&&(w=L("span","tw-lift-slot"),w.style.width=x.width+"px",w.style.height=x.height+"px",w.setAttribute("aria-hidden","true"),g.before(w)),fn(g,g),document.body.appendChild(g),g.dataset.mode="floating",A(),w&&typeof MutationObserver=="function"){let H=new MutationObserver(()=>{w&&!w.isConnected&&(H.disconnect(),w=null,g.remove())});H.observe(document.documentElement,{childList:!0,subtree:!0}),M.push(()=>H.disconnect())}},i=()=>{Xe&&Xe!==g&&(Xe.style.zIndex=""),g.style.zIndex="99991",Xe=g},a=null,u=0,C=0,b=0,T=0,E=x=>{for(let[H,W]of[["pointermove",f],["pointerup",O],["pointercancel",O]])x?document.addEventListener(H,W,!0):document.removeEventListener(H,W,!0)};de&&U.addEventListener("pointerdown",x=>{if(!(x.button!==0||a!==null||x.target.closest(".tw-toolbar, input, textarea, select"))&&(a=x.pointerId,u=x.clientX,C=x.clientY,ce=!1,E(!0),g.classList.add("is-grabbing"),g.style.transition)){let H=getComputedStyle(g);I=parseFloat(H.left)||I,R=parseFloat(H.top)||R,g.style.transition="",A()}});let f=x=>{if(x.pointerId!==a)return;if(x.buttons===0){O(x);return}let H=x.clientX-u,W=x.clientY-C;if(!ce){if(Math.abs(H)+Math.abs(W)<4)return;ce=!0,n(),i(),b=I,T=R;try{U.setPointerCapture(a)}catch{}g.classList.add("is-dragging")}let{maxX:se,maxY:D}=Ie();I=F(b+H,G,se),R=F(T+W,G,D),A()},O=x=>{if(x.pointerId===a){try{U.releasePointerCapture(a)}catch{}if(a=null,E(!1),ye=ce,ye&&setTimeout(()=>{ye=!1},0),ce){let{maxX:H,maxY:W}=Ie();I<=G+he?I=G:I>=H-he&&(I=H),R<=G+he?R=G:R>=W-he&&(R=W),Ze.matches||(g.style.transition="left 0.32s var(--tw-ease-spring), top 0.32s var(--tw-ease-spring)",setTimeout(()=>{g.style.transition=""},340)),A(),Oe&&Ne(Oe,{x:I,y:R})}g.classList.remove("is-dragging","is-grabbing")}};U.addEventListener("lostpointercapture",O),M.push(()=>E(!1))}let Wn=()=>{(de||s.floating)&&(g.dataset.mode==="floating"&&(K(),A()),M.push(Qe(g,[[window,"resize"]],()=>{g.dataset.mode==="floating"&&(K(),A())})))};if(le){let n=L("div","tw-presets-menu"),i=L("div","tw-presets-save"),a=L("input","tw-presets-input");a.type="text",a.placeholder="Preset name\u2026",a.spellcheck=!1,a.setAttribute("aria-label","New preset name"),De(a);let u=X("button","tw-presets-savebtn","Save");i.append(a,u);let C=L("div","tw-presets-list");n.append(i,C);let b=()=>{let f=Re(),O=Object.keys(f);if(C.replaceChildren(),!O.length)return C.append(X("div","tw-presets-empty","No presets yet"));for(let x of O){let H=L("div","tw-presets-row"),W=X("button","tw-presets-load",x);W.addEventListener("click",()=>{Wt(x),E.close(),Ee(`Loaded \u201C${x}\u201D`,g)});let se=Q("tw-presets-del",Cn);se.setAttribute("aria-label",`Delete preset ${x}`),se.addEventListener("click",D=>{D.stopPropagation(),Jt(x),b()}),H.append(W,se),C.append(H)}},T=()=>{let f=a.value.trim();if(!f){a.focus();return}zt(f),a.value="",b(),Ee(`Saved \u201C${f}\u201D`,g)},E=gt(le,le,n,{width:208,fallbackH:160,gap:6,align:"end",onOpen:()=>{b(),a.focus()}});u.addEventListener("click",T),a.addEventListener("keydown",f=>{f.key==="Enter"&&T()})}if(s.onEditStart||s.onEditEnd){let n=".tw-slider, .tw-num-grab, .tw-pad, .tw-wg-area, .tw-wg-hue, .tw-wg-alpha, .tw-bezier-handle, .tw-gradient-bar, .tw-gradient-stop",i=!1,a=()=>{document.removeEventListener("pointerup",a,!0),document.removeEventListener("pointercancel",a,!0),i&&(i=!1,s.onEditEnd&&s.onEditEnd())},u=C=>{i||!C.target.closest(n)||(i=!0,s.onEditStart&&s.onEditStart(),document.addEventListener("pointerup",a,!0),document.addEventListener("pointercancel",a,!0))};g.addEventListener("pointerdown",u),g._twEditPointer=u,M.push(a)}let Ge=s.undo?(()=>{let i=[],a=0,u=!1,C=0,b=()=>{C=0;let D=fe();JSON.stringify(D)!==JSON.stringify(i[a])&&(i=i.slice(0,a+1),i.push(D),i.length>200&&(i=i.slice(i.length-200)),a=i.length-1)},T=()=>{u||(clearTimeout(C),C=setTimeout(b,350))},E=()=>{C&&(clearTimeout(C),b())};p.add(T),y.add(T);let f=D=>{u=!0,ut(i[D]),u=!1,a=D},O=()=>{E(),a>0&&f(a-1)},x=()=>{E(),a<i.length-1&&f(a+1)},H=()=>g.matches(":hover")||g.contains(document.activeElement),W=D=>!!(D&&D.matches&&(D.matches("input, textarea")||D.isContentEditable)),se=D=>{if(!H()||!(D.metaKey||D.ctrlKey)||W(D.target))return;let Zt=D.key.toLowerCase();Zt==="z"?(D.preventDefault(),D.shiftKey?x():O()):Zt==="y"&&(D.preventDefault(),x())};return{undo:O,redo:x,arm:()=>{i=[fe()],a=0,M.push(Qe(g,[[document,"keydown"]],se))}}})():null,Gt=()=>{if(!k){if(_=M.length,_t(be,o,r),Pe.length){let n=new Map;for(let u of c)n.has(u.key)||n.set(u.key,u);let i=u=>{let C=n.get(u);return C?C.target[C.key]:r[u]},a=()=>{let u=!1;for(let{node:C,m:b}of Pe)try{if(b.render&&Kn(C,!b.render(i))&&(u=!0),b.disabled!=null){let T=typeof b.disabled=="function"?b.disabled(i):b.disabled;ht(C,!!T)}}catch{}u&&Ht()};p.add(a),y.add(a),a(),import("./fold-FNCV4C7P.js").then(u=>{Je=u.fold},()=>{})}if(J&&ut(B(Z(J))),!k){Ge?.arm(),Wn(),v=!0;for(let n of m.splice(0)){if(k)break;try{n()}catch(i){console.error("[tweaks] a call queued before ready failed:",i)}}z.clear();for(let n of te)n.disabled=!1}}},Ut=(n,i)=>{if(String(n).split(".").some(Ct))return console.warn(`[tweaks] set("${n}") ignored \u2014 reserved key`),!1;let a=String(n).split("."),u;if(a.length>1){let E=r;for(let f=0;f<a.length-1&&E;f++)E=E[a[f]],l.has(E)||(E=null);if(u=E&&c.find(f=>f.target===E&&f.key===a[a.length-1]),!u)return console.warn(`[tweaks] set("${n}") \u2014 no control at that path`),!1}else{let E=c.filter(O=>O.key===n),f=E.find(O=>O.target===r);if(!f&&E.length>1)return console.warn(`[tweaks] set("${n}") is ambiguous \u2014 ${E.length} controls share that key; use a dotted path (e.g. "${E[0].path.join(".")}")`),!1;u=f||E[0]}let C=u?u.target:r,b=u?u.key:n,T=C[b];if(u&&Le(i))return console.warn(`[tweaks] set("${n}") ignored \u2014 a ${typeof i} is not a control value`),!1;if(u)try{Ve(u,i)}catch(E){return console.error(`[tweaks] set("${n}") failed \u2014 value skipped:`,E),!1}else{if(l.has(r[n]))return console.warn(`[tweaks] set("${n}") ignored \u2014 it's a folder/tabs group; set its children instead`),!1;r[n]=i}return ke(T,C[b])?(r._last=b,!0):!1},je={el:g,params:r,on(n){return k?()=>{}:(p.add(n),()=>p.delete(n))},set(n,i,a){let u=String(n),C=a?.silent;h(()=>{Ut(u,i)&&Y(C)})},setMany(n,i){if(n==null||typeof n!="object")return;let a=Object.entries(n),u=i?.silent;h(()=>{let C=!1;for(let[b,T]of a)try{Ut(b,T)&&(C=!0)}catch(E){console.error(`[tweaks] setMany("${b}") failed \u2014 key skipped:`,E)}C&&Y(u)})},reset(){v&&!k&&qt(ze),h(it)},toJSON(){return k?{values:{},ui:{}}:{values:fe(),ui:Vn()}},changes(){return k?{}:at()},fromJSON(n,i){if(!n||typeof n!="object")return;let a=i?.silent,u=n.values&&typeof n.values=="object"?{...n.values}:n.values,C=n.ui&&typeof n.ui=="object"?{...n.ui}:n.ui;h(()=>{u&&ut(u,a),zn(C)})},setName(n){k||(He=String(n),xe.textContent=He)},setTheme(n){if(!k){if(ne)for(let i in ne)g.style.removeProperty(i);ne=It(n),g._twTheme=ne,Rt(g,ne),window.dispatchEvent(new Event("tw-retheme"))}},savePreset:n=>k||P||!me||!n?!1:(v||z.set(String(n),"save"),h(()=>zt(n)),!0),loadPreset:n=>{let i=z.get(String(n));return k||P||i==="delete"||!(i==="save"||Re()[n])?!1:(h(()=>Wt(n)),!0)},deletePreset:n=>{me&&(v||z.set(String(n),"delete"),h(()=>Jt(n)))},presets:()=>k?[]:Object.keys(Re()),undo:()=>{Ge&&h(Ge.undo)},redo:()=>{Ge&&h(Ge.redo)},destroy(){if(!k){k=!0,mn(g),tt(g);for(let n of M.splice(0))try{n()}catch{}p.clear(),w&&(w.remove(),w=null),Xe===g&&(Xe=null),g.dataset.twDestroyed="",g.remove()}}},Qt=Be(o);if(Qt){let n=i=>{if(P=!0,m.length=0,_>=0)for(let a of M.splice(_))try{a()}catch{}for(let a of be.children)a.dataset.twDestroyed="";throw p.clear(),c.length=0,be.replaceChildren(),k||console.warn(`[tweaks] "${e}": the panel could not be built \u2014 ${_>=0?"the build threw":"its lazy controls failed to load"}; the API is inert`),i};je.ready=g.ready=Qt.then(Gt).then(()=>je,n),je.ready.catch(()=>{})}else Gt(),je.ready=g.ready=Promise.resolve(je);return je}var bo=(e,t)=>{e.dataset.value=t==null?"":Array.isArray(t)?t.join(","):typeof t=="object"?Object.values(t).join(","):String(t)},ho=(e,t,s)=>{bo(e,s),e.dispatchEvent(new CustomEvent("tw:change",{bubbles:!0,detail:{key:t,value:s}}))},Vt=(e,t)=>[...typeof e.matches=="function"&&e.matches(t)?[e]:[],...e.querySelectorAll(t)];async function Fn(e=document){Vt(e,'.tw-panel[data-mode="inline"]:not([data-tw-panel-bound])').forEach(o=>{let r=o.querySelector(":scope > .tw-header"),c=o.querySelector(":scope > .tw-controls");if(!r||!c)return;o.setAttribute("data-tw-panel-bound","");let l=L("div","tw-body");o.insertBefore(l,c),l.append(c);let p=r.querySelector(".tw-header-toggle"),y=r.querySelector(".tw-title");if(!p&&y&&(p=Q("tw-header-toggle"),y.replaceWith(p),p.append(y)),!!p&&(p.setAttribute("aria-expanded","true"),p.addEventListener("click",()=>$e(o,p,l,!o.classList.contains("is-collapsed"))),!r.querySelector(".tw-toolbar"))){let M=y&&y.textContent||"Panel",k=()=>[...o.querySelectorAll("[data-tw]")].map(P=>P._tw).filter(P=>P&&P.ctrl.get()!==void 0),v=()=>{let P=Object.create(null);for(let _ of k()){let h=_.key,w=2;for(;Se(P,h);)h=`${_.key}-${w++}`;P[h]=_.ctrl.get()}return JSON.stringify(P,null,2)},m=()=>{for(let P of k())P.reset()},z=L("div","tw-toolbar");z.append(Lt(o,()=>M,()=>[v(),-1]),Mt(m)),r.append(z)}}),Vt(e,'[data-tw="folder"]:not([data-tw-bound])').forEach(o=>{o.setAttribute("data-tw-bound","");let r=ot({label:o.dataset.label||"Folder"});[...o.children].forEach(c=>r.body.append(c)),o.append(r.el)});let t=Vt(e,"[data-tw]:not([data-tw-bound])").map(o=>({host:o,meta:Rn(o)})).filter(o=>o.meta);t.forEach(({host:o})=>o.setAttribute("data-tw-bound",""));let s=Be(t.map(o=>o.meta));s&&await s.catch(()=>{});for(let{host:o,meta:r}of t){let c=o.dataset.key||r.label,l,p=v=>{ke(l,v)&&(l=v,ho(o,c,v))},y=Ke(r,p);if(!y)continue;o.closest(".tw-panel, .tw-portal")||o.classList.add("tw-portal"),o.append(y.el),o.dataset.hint&&qe(y.el,o.dataset.hint);let M=y.get();l=M;let k={...y,set:v=>{y.set(v),p(y.get())}};o._tw={ctrl:k,raw:r.value,def:M,key:c,host:o,reset:()=>{Tt(y,r.value,M),p(y.get())}}}}if(typeof document<"u"){let e=()=>Fn(document);document.readyState==="loading"?document.addEventListener("DOMContentLoaded",e):e()}var Bn=e=>L("div",`${e} tw-standalone tw-portal`),qn=(e,t,s)=>{let o=Be(e);if(!o)return t(),Promise.resolve(s);let r=o.then(t).then(()=>s);return r.catch(()=>{}),r};function wo(e,t,s={}){let o=s.key??"value",r=_e(o,t);if(!r||r.type==="folder"||r.type==="tabs")throw new TypeError(`[tweaks] mountControl: "${o}" is not a single-control schema value`);s.label!=null&&(r.label=String(s.label));let c=!St.has(r.type),l=Bn("tw-control");e.append(l);let p=null,y=!1,M=r.value,k,v=!1,m=_=>{ke(M,_)&&(M=_,s.onChange&&s.onChange(_,o))},z=()=>{if(y||(p=Ke(r,c?m:()=>{}),!p))return;r.hint&&qe(p.el,r.hint);let _=()=>{};try{r.render&&!r.render(_)&&p.el.classList.add("tw-cond-hidden")}catch{}try{(typeof r.disabled=="function"?r.disabled(_):r.disabled)&&ht(p.el,!0)}catch{}l.append(p.el),c&&(M=p.get(),v&&(p.set(k),m(p.get())))},P={el:l,set:_=>{y||!c||(p?(p.set(_),m(p.get())):(k=_,v=!0))},get:()=>c?p?p.get():v?k:r.value:void 0,destroy:()=>{y=!0,p&&typeof p.destroy=="function"&&p.destroy(),l.dataset.twDestroyed="",l.remove()},ready:null};return P.ready=qn([r],z,P),P}function vo(e={}){let t=Bn("tw-color-picker"),s=null,o=!1,r=e.value,c,l=!1,p=null,y=v=>{ke(r,v)&&(r=v,e.onChange&&e.onChange(v))},M=()=>{if(o)return;let v=re("colorpicker");v&&(s=v({value:e.value,mode:e.mode},y),r=s.get(),t.append(s.el),p&&s.setMode(p),l&&(s.set(c),y(s.get())),mt(s.reflow))},k={el:t,set:v=>{o||(s?(s.set(v),y(s.get())):(c=v,l=!0))},get:()=>s?s.get():l?c:e.value,mode:()=>s?s.mode():p||e.mode||"oklch",setMode:v=>{s?s.setMode(v):p=v},reflow:()=>{s&&s.reflow()},destroy:()=>{o=!0,t.remove()},ready:null};return k.ready=qn([{type:"color"}],M,k),k}export{vo as createColorPicker,Fn as enhance,Gn as gradientCss,Jn as gradientStops,wo as mountControl,yo as tweaks};
1
+ import{A as qt,B as En,C as $e,D as kn,E as Xt,F as Yt,G as Ln,H as xn,I as Mn,J as Et,K as kt,L as nt,M as Lt,N as Vt,P as xt,Q as Be,R as Cn,S as Sn,T as Tn,U as An,V as On,W as he,X as Mt,Y as ue,Z as ie,d as uo,e as po,f as Kt,g as K,h as de,i as un,j as pn,k as fn,l as mn,m as et,n as gn,o as bn,p as yn,q as wt,r as Ae,s as hn,t as wn,u as x,v as ne,w as Y,x as vn,y as vt,z as tt}from"./chunk-R7BLRFON.js";var Ke={number:()=>import("./heavy-O4TB6NMH.js"),interval:()=>import("./interval-D6SSAQB4.js"),color:()=>import("./colour-5W24RKYH.js"),gradient:()=>import("./gradient-7UHCGHF2.js"),shadow:()=>import("./shadow-PMJG5SZY.js"),sides:()=>import("./sides-JITGW2AD.js"),tabs:()=>import("./tabs-U5XC6JHJ.js"),image:()=>import("./image-XHCPC5OK.js"),fpsgraph:()=>import("./monitor-ZDLYLKC4.js"),monitor:()=>import("./monitor-ZDLYLKC4.js"),spring:()=>import("./spring-CGJCZJ6Q.js"),cubicbezier:()=>import("./bezier-W6K7LDKM.js"),motion:()=>Promise.all([import("./bezier-W6K7LDKM.js"),import("./spring-CGJCZJ6Q.js")]).then(()=>import("./motion-AAMZUKLO.js")),point:()=>import("./point-44JV524M.js"),plot:()=>import("./plot-Z2PJJQOR.js")},Ct={},fo=e=>ie(e)||!Ke[e]?null:Ct[e]||(Ct[e]=Ke[e]().catch(n=>{throw delete Ct[e],console.error(`[tweaks] control chunk "${e}" failed to load:`,n),n})),Jt=(e,n=new Set)=>{for(let r of e)if(r&&(Ke[r.type]&&n.add(r.type),r.children&&Jt(r.children,n),r.pages))for(let o of r.pages)Jt(o.children,n);return n},qe=e=>{let n=[...Jt(e)].map(fo).filter(Boolean);return n.length?Promise.all(n):null};function Ie(e,n,r=0){if(Tt(e))return null;let o=bo(e,n,r);return o&&n&&typeof n=="object"&&(typeof n.render=="function"&&(o.render=n.render),n.disabled!=null&&(o.disabled=n.disabled),n.hint!=null&&(o.hint=String(n.hint)),n.persist===!1&&(o.persist=!1)),o}var Oe=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),Tt=e=>e==="__proto__"||e==="constructor"||e==="prototype",we=(e,n)=>e!==n&&!(de(e)&&de(n)&&JSON.stringify(e)===JSON.stringify(n)),At=(e,n,r)=>{e.set(r),e.set(n)},Pn=e=>Array.isArray(e.options)&&{type:"radiogrid",options:e.options,value:e.value??Ae(e.options[0]),cols:e.cols},mo=(e,...n)=>{let r=(n.length?n:[0]).map(c=>wt(Number.isFinite(+c)?+c:0)),o=e.min??Math.min(...r.map(c=>c[0])),s=e.max??Math.max(...r.map(c=>c[1]));return{min:o,max:s,step:e.step??et(o,s)}},zt=(e,n)=>e.label==null?n:String(e.label),_n=e=>typeof e=="function"?e:void 0,Hn=e=>typeof e=="string"&&e.trim()?e.trim().slice(0,12):void 0,Wt=["stiffness","damping","mass","visualDuration","bounce"],Nn={slider:e=>{let n=mo(e,e.value??e.min??0);return{value:e.value??n.min,...n,soft:e.soft,unit:Hn(e.unit),format:_n(e.format),parse:_n(e.parse)}},number:e=>({value:e.value??0,min:e.min,max:e.max,step:e.step??1,soft:e.soft,unit:Hn(e.unit)}),checkbox:e=>({value:!!e.value}),radiogrid:Pn,segmented:Pn,list:e=>Array.isArray(e.options)&&{options:e.options,value:e.value??Ae(e.options[0])},text:e=>({value:e.value??"",rows:e.rows,placeholder:e.placeholder}),spring:e=>{let n=de(e.value)?e.value:e,r={stiffness:n.stiffness??300,damping:n.damping??26,mass:n.mass??1};Number.isFinite(+n.visualDuration)&&(r.visualDuration=+n.visualDuration),Number.isFinite(+n.bounce)&&(r.bounce=+n.bounce);let o=e.mode??n.mode;return(o==="time"||o==="physics")&&(r.mode=o),{value:r}},motion:e=>{let n=typeof e.value=="string"||Array.isArray(e.value)?{...e,curve:e.value}:de(e.value)?e.value:e,r=Wt.some(s=>n[s]!=null),o={curve:"ease",duration:300,...r?{}:{visualDuration:.5,bounce:.2}};for(let s of["mode","curve","duration",...Wt])n[s]!=null&&(o[s]=n[s]);return o.mode!=="easing"&&o.mode!=="spring"&&(o.mode=r?"spring":"easing"),{value:o}},point:e=>{if(!Array.isArray(e.components)||!e.components.length)return!1;let n=new Set,r=e.components.map((o,s)=>{let c=String(o.key??((o.label?String(o.label).toLowerCase():"")||`c${s}`)),l=c,m=2;for(;n.has(l);)l=`${c}-${m++}`;return n.add(l),{...o,key:l}});return{components:r,pad:e.pad,invertY:e.invertY,value:Object.fromEntries(r.map(o=>[o.key,o.value??0]))}},buttongroup:e=>({buttons:e.buttons}),separator:()=>({}),tabs:(e,n)=>{if(!e.pages||typeof e.pages!="object"||!Object.keys(e.pages).length)return!1;let r=new Set;return{pages:Object.entries(e.pages).map(([o,s])=>{let c=o.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"tab",l=c,m=2;for(;r.has(l);)l=`${c}-${m++}`;return r.add(l),{key:l,title:o.trim()?o:"Tab",children:Object.entries(s).map(([y,C])=>Ie(y,C,n+1)).filter(Boolean)}})}}},go=Object.assign(Object.create(null),{list:"options",radiogrid:"options",segmented:"options",point:"components",tabs:"pages"});function bo(e,n,r=0){if(r>64)return null;let o=Kt(e),s=(c,l,m=o)=>({type:c,key:e,label:m,...l});if(de(n)&&!Array.isArray(n)&&Oe(Nn,n.type)){let c;try{c=Nn[n.type](n,r)}catch(l){return console.error(`[tweaks] malformed "${n.type}" schema value for "${e}" \u2014 control skipped:`,l),null}if(c)return s(String(n.type),c,zt(n,o));if(Oe(n,go[n.type]))return console.error(`[tweaks] malformed "${n.type}" schema value for "${e}" \u2014 control skipped`),null}else if(de(n)&&!Array.isArray(n)&&typeof n.type=="string"&&(Ke[n.type]||ie(n.type))){let{type:c,label:l,...m}=n;return s(c,m,zt(n,o))}if(Array.isArray(n)&&Array.isArray(n[0])&&n[0].length===2&&typeof n[0][0]=="number"){let c=Number.isFinite(+n[1])?+n[1]:+n[0][0],l=Number.isFinite(+n[2])?+n[2]:+n[0][1];return s("interval",{value:n[0].map(Number),min:c,max:l,step:n[3]??et(c,l)})}if(Array.isArray(n)&&n.length<=4&&typeof n[0]=="number"){let c=n[0],[l,m]=wt(c),y=n.length>1?n[1]:l,C=n.length>2?n[2]:m;return s("slider",{value:c,min:y,max:C,step:n[3]??et(y,C)})}if(typeof n=="number"){let[c,l]=wt(n);return s("slider",{value:n,min:c,max:l,step:et(c,l)})}return typeof n=="boolean"?s("checkbox",{value:n}):Array.isArray(n)?s("list",{options:n,value:Ae(n[0])}):de(n)&&typeof n.action=="function"?s("button",{action:n.action},zt(n,o)):de(n)&&Array.isArray(n.options)?s("list",{options:n.options,value:n.value??Ae(n.options[0])}):un(n)?s("color",{value:n}):typeof n=="string"?s("text",{value:n}):de(n)?s("folder",{children:Object.entries(n).filter(([c,l])=>!(c==="render"&&typeof l=="function")&&!((c==="disabled"||c==="hint")&&l!=null)).map(([c,l])=>Ie(c,l,r+1)).filter(Boolean)}):null}var Ot=new Set(["button","fpsgraph","monitor","buttongroup","separator"]),In=e=>({...Object.fromEntries(Wt.map(n=>[n,N(e[n])])),mode:e.mode}),Rn={slider:e=>({value:N(e.value),min:N(e.min),max:N(e.max),step:N(e.step),soft:St(e.soft),unit:e.unit}),checkbox:e=>e.options?{type:"radiogrid",options:ot(e.options),value:e.value,cols:N(e.cols)}:{value:e.checked==="true"},radiogrid:e=>({options:ot(e.options),value:e.value,cols:N(e.cols)}),list:e=>({options:ot(e.options),value:e.value}),buttongroup:e=>({buttons:ot(e.buttons).map(n=>({label:n}))}),separator:()=>({}),number:e=>({value:N(e.value),min:N(e.min),max:N(e.max),step:N(e.step),unit:e.unit}),text:e=>({value:e.value??"",placeholder:e.placeholder,rows:N(e.rows)}),fpsgraph:e=>({label:e.label??"FPS"}),interval:e=>({value:e.value?e.value.split(",").map(Number):void 0,min:N(e.min),max:N(e.max),step:N(e.step)}),sides:e=>({value:e.value??e,corners:St(e.corners),unit:e.unit,step:N(e.step),min:N(e.min),max:N(e.max)}),shadow:e=>({value:e.value??{...e,inset:St(e.inset)}}),spring:In,motion:e=>({...In(e),curve:e.curve&&e.curve.includes(",")?e.curve.split(",").map(Number):e.curve,duration:N(e.duration)}),cubicbezier:e=>({value:e.value?e.value.split(",").map(Number):void 0}),point:e=>{let n=(e.value||"").split(",").map(r=>parseFloat(r));return{components:ot(e.components||"X,Y").map((r,o)=>({key:r.toLowerCase(),label:r,value:isNaN(n[o])?0:n[o],step:N(e.step),min:N(e.min),max:N(e.max)})),pad:St(e.pad),invertY:e.invertY==="true"}},plot:e=>({expr:e.expr,xMin:N(e.xmin),xMax:N(e.xmax),yMin:N(e.ymin),yMax:N(e.ymax),samples:N(e.samples),editable:e.editable!=="false"})},N=e=>{if(e==null||e==="")return;let n=+e;return Number.isFinite(n)?n:void 0},St=e=>e==="true"||e==="",ot=e=>(e||"").split(",").map(n=>n.trim()).filter(Boolean),jn=e=>{let n=e.dataset,r=n.tw,o=n.label??Kt(n.key||r),s=Oe(Rn,r)?Rn[r](n,e,o):Ke[r]||ie(r)?{...n}:null;return s?Ie("v",{type:r,label:o,...s}):null};var Dn=he('<path class="tw-copy-back" d="m5.5 16.5-.7-.2q-1.5-.6-2.1-2.1-.2-.7-.2-2.7v-2c0-3.3 0-5 1-6s2.7-1 6-1h2c1.4 0 2 0 2.7.2q1.6.5 2.1 2.1l.2.7"/><path class="tw-copy-front" d="M7.5 14.5c0-3.3 0-5 1-6s2.7-1 6-1 5 0 6 1 1 2.7 1 6 0 5-1 6-2.7 1-6 1-5 0-6-1-1-2.7-1-6"/>',"tw-toolbar-btn__copy"),Fn=he('<path d="m5 14 3.5 3.5L19 6.5"/>',"tw-toolbar-btn__check",2.4),$n=he('<path d="M3 12a9 9 0 1 0 9-9 9 9 0 0 0-7.6 4.2M3.3 3l.2 2q0 2.2.6 2.7t2.7.2l2-.2"/>'),Bn=he('<path d="m17 17 4 4m-2-10a8 8 0 0 0-16 0 8 8 0 0 0 16 0"/>'),Gt=e=>he('<path d="M18 9s-4.4 6-6 6-6-6-6-6"/>',e,2.5),Kn=Gt("tw-chevron"),qn=he('<path d="M20.2 13.5q1.8.8 1.8 1.5 0 .8-2.7 2l-5 2.2Q13 20 12 20q-.7 0-2.4-.8l-4.9-2.3Q2 16 2 15t1.8-1.5"/><path class="tw-layer-top" d="M9.6 4.8Q11.3 4 12 4t2.4.8l4.9 2.3Q22 8 22 9c0 .7-.9 1.1-2.7 2l-5 2.2Q13 14 12 14q-.7 0-2.4-.8l-4.9-2.3Q2 10 2 9c0-.7.9-1.1 2.7-2z"/>'),Xn=he('<path d="M18 6 6 18m12 0L6 6"/>',"",2.2),Ut=he('<circle cx="12" cy="12" r="10"/><path d="M12 16v-4m-.25-3.75a.25.25 0 0 0 .5 0 .25.25 0 0 0-.5 0"/>');var yo=3,Yn=32,Vn=200,Jn=8;function ho(e,n){let r=e.label,{min:o,max:s,step:c}=gn(e.min,e.max,e.step);e.soft||([o,s]=mn(o,s,c));let l=(s-o)/c<=6,m=Number.isFinite(+e.value)?+e.value:o,y=e.soft&&!l?m:K(m,o,s),C=0,k=pn(c),E=x("div","tw-slider-wrap"),b=x("div","tw-slider"),z=x("div","tw-slider-hashmarks"),P=x("div","tw-slider-fill"),_=x("div","tw-slider-handle"),h=Y("span","tw-slider-label",r),w=x("span","tw-slider-value"),D=typeof e.unit=="string"?e.unit.trim():"",Je=document.createTextNode(""),lt=D?/^[%°]$/.test(D)?D:" "+D:"";w.append(Je),D&&w.append(Y("span","tw-slider-unit",lt));let ae=e.format,G=e.parse,fe=d=>{if(ae)try{let O=ae(d);if(typeof O=="string"&&O)return O}catch{}return d.toFixed(k)};b.append(z,P,_,h,w),E.append(b),b.tabIndex=0,b.setAttribute("role","slider"),b.setAttribute("aria-label",r),b.setAttribute("aria-valuemin",String(o)),b.setAttribute("aria-valuemax",String(s));let oe=d=>fn(d,o,c),je=l?Array.from({length:Math.max(0,Math.round((s-o)/c)-1)},(d,O)=>(O+1)*c/(s-o)*100):[];for(let d of je){let O=x("div","tw-slider-hashmark");O.style.left=d+"%",z.append(O)}let re=()=>{let d=K((y-o)/(s-o||1)*100,0,100),O=C?` + ${C.toFixed(1)}px`:"",U=`${d}%${O}`;P.style.width=C?`calc(${U})`:d+"%",_.style.left=`max(5px, calc(${U} - 9px))`;let j=oe(y),A=fe(j);Je.data=A,b.setAttribute("aria-valuenow",String(j)),b.setAttribute("aria-valuetext",A+lt);let $=E.offsetWidth,te=w.offsetWidth;if($){te&&(h.style.maxWidth=Math.max(0,$-te-30)+"px");let Se=Math.max(5,d/100*$+C-9);b.classList.toggle("is-dodge",yn(h,w,Se,3))}};re();let q=null,ct=1,V=null,ve=!0,ze,me=null,Ee=null,dt=`width 0.34s ${Vt}`,g=`left 0.34s ${Vt}, opacity 0.15s, transform 0.2s ${Lt}`,Z=.2,le=d=>{if(!q)return y;let O=E.offsetWidth||q.width,U=K((d-q.left)/ct/O,0,1);return K(o+U*(s-o),o,s)},We=d=>{let O=0;d<q.left?O=-Jn*Math.sqrt(Math.min(Math.max(0,q.left-d-Yn)/Vn,1)):d>q.right&&(O=Jn*Math.sqrt(Math.min(Math.max(0,d-q.right-Yn)/Vn,1))),b.style.width=`calc(100% + ${Math.abs(O)}px)`,b.style.transform=O<0?`translateX(${O}px)`:""},ke=(d,O=!0)=>{d=+d,Number.isFinite(d)&&(y=l?K(oe(d),o,s):e.soft?d:K(d,o,s),re(),O&&n(oe(y)))},Le=Math.max(1,Math.round((s-o)/c)),ut=.2,pt=.3,ft=520,Ge=27,ee=d=>(d-o)/c,B=0,W=0,F=0,_e=!1,ge=null,be=y,xe=0,Me=()=>{F&&cancelAnimationFrame(F),F=0,xe=0},se=d=>{if(!b.isConnected){Me();return}let O=xe?Math.min((d-xe)/1e3,.05):1/60;xe=d;let U=E.offsetWidth||q&&q.width||1,j=ee(K(be,o,s)),A=K(Math.round(j+ut),0,Le),$=_e?A+pt*K(j-A,-.5,.5):A;if(nt&&nt.matches)B=$,W=0;else{let te=O,Se=1/240;for(;te>1e-4;){let Ue=Math.min(Se,te);te-=Ue;let Qe=ft*($-B)-Ge*W;W+=Qe*Ue,B+=W*Ue,B<0&&(B=0,W=0),B>Le&&(B=Le,W=0)}}C=(B-A)*c/(s-o||1)*U,y=K(o+A*c,o,s),re(),A!==ge&&(ge=A,n(oe(y))),!_e&&Math.abs(W)<.004&&Math.abs(B-A)<.004?(B=A,W=0,C=0,re(),Me(),b.classList.remove("is-active")):F=requestAnimationFrame(se)},Ce=d=>{B=ee(y),W=0,_e=!0,ge=Math.round(ee(y)),be=le(d),F||(F=requestAnimationFrame(se))};b.addEventListener("pointerdown",d=>{if(!w.classList.contains("is-editing")&&!(d.button!==0||V)){d.preventDefault(),b.focus({focusVisible:!1}),Ee=d.pointerId;try{d.target.setPointerCapture(d.pointerId)}catch{}clearTimeout(ze),b.style.transition="",V={x:d.clientX,y:d.clientY},ve=!0,b.classList.add("is-active"),q=E.getBoundingClientRect(),ct=q.width/(E.offsetWidth||q.width),l?(P.style.transition="",_.style.transition="",Ce(d.clientX)):(P.style.transition=dt,_.style.transition=g,ke(le(d.clientX)))}}),b.addEventListener("pointermove",d=>{if(!(!V||d.pointerId!==Ee)){if(d.buttons===0){X();return}if(ve&&Math.hypot(d.clientX-V.x,d.clientY-V.y)>yo&&(ve=!1,b.classList.add("is-dragging"),l||(P.style.transition="",_.style.transition="")),!ve)if(We(d.clientX),l)be=le(d.clientX);else{let O;if(d.altKey){me||(me={x:d.clientX,v:y});let U=E.offsetWidth||q.width;O=K(me.v+(d.clientX-me.x)/U*(s-o)*Z,o,s)}else me=null,O=le(d.clientX);ke(O)}d.clientX>=q.left&&d.clientX<=q.right&&(b.style.width="",b.style.transform="")}});let X=d=>{!V||d&&d.pointerId!==Ee||(l?(_e=!1,b.classList.remove("is-dragging"),F||(F=requestAnimationFrame(se))):(ze=setTimeout(()=>{P.style.transition="",_.style.transition=""},360),b.classList.remove("is-active","is-dragging")),b.style.transition=`width 0.35s ${Lt}, transform 0.35s ${Lt}`,b.style.width="",b.style.transform="",setTimeout(()=>{b.style.transition=""},360),V=null,me=null,Ee=null)};b.addEventListener("pointerup",X),b.addEventListener("pointercancel",X),b.addEventListener("lostpointercapture",X),En(b,re),vt(re),tt(b,[[window,"resize"]],re),b.addEventListener("keydown",d=>{if(d.target!==b||V)return;let O=bn(d,y,c,o,s,(s-o)/10||c*10);O!=null&&(d.preventDefault(),l&&(Me(),C=0,b.classList.remove("is-active")),ke(K(O,o,s)))});let He;w.addEventListener("mouseenter",()=>{He=setTimeout(()=>w.classList.add("is-editable"),800)}),w.addEventListener("mouseleave",()=>{clearTimeout(He),w.classList.contains("is-editing")||w.classList.remove("is-editable")}),w.addEventListener("pointerdown",d=>{d.pointerType&&d.pointerType!=="mouse"?(w.classList.add("is-editable"),d.stopPropagation()):w.classList.contains("is-editable")&&d.stopPropagation()});let De=()=>{if(w.classList.contains("is-editing"))return;let d=x("input","tw-slider-input");d.type="text",d.inputMode=G?"text":"decimal",$e(d),d.value=G?fe(oe(y)):oe(y).toFixed(k);let O=d.value;d.style.width=O.length+1+"ch",w.classList.add("is-editing"),w.replaceWith(d),d.focus(),d.select();let U=()=>{d.replaceWith(w),w.classList.remove("is-editing","is-editable")},j=()=>{let A=d.value,$=NaN;if(A!==O)try{$=G?G(A):Number(A.replace(D,"").trim()||NaN)}catch{}Number.isFinite($)&&ke(e.soft?$:K($,o,s)),U()};d.addEventListener("pointerdown",A=>A.stopPropagation()),d.addEventListener("blur",j),d.addEventListener("keydown",A=>{A.key==="Enter"?(d.removeEventListener("blur",j),b.focus(),j()):A.key==="Escape"&&(A.stopPropagation(),d.removeEventListener("blur",j),b.focus(),U())})};return w.addEventListener("click",()=>{w.classList.contains("is-editable")&&De()}),b.addEventListener("keydown",d=>{d.key==="Enter"&&d.target===b&&!V&&(d.preventDefault(),De())}),{el:E,set:d=>ke(d,!1),get:()=>oe(y)}}function wo(e,n){let r=x("div","tw-row"),o=On([{value:"off",label:"Off"},{value:"on",label:"On"}],e.value?"on":"off",s=>n(s==="on"),e.label);return r.append(Y("span","tw-row-label",e.label),o.el),{el:r,set:s=>o.set(s?"on":"off"),get:()=>o.get()==="on"}}function vo(e,n){let r=e.options||[],o=Math.min(3,Math.max(2,e.cols||(r.length<=3?r.length:r.length===4?2:3))),s=x("div","tw-radiogrid"),c=x("div","tw-radiogrid-grid");c.style.setProperty("--tw-rg-cols",o),c.setAttribute("role","radiogroup"),c.setAttribute("aria-label",e.label);let l=e.value??Ae(r[0]),m=r.map(k=>{let E=Tn("tw-radiogrid-btn",k,b=>C(b));return c.append(E),E}),y=()=>Sn(m,l),C=(k,E=!0)=>{k!=null&&!m.some(b=>b._twVal===k)||(l=k,y(),E&&n(k))};return c.addEventListener("keydown",k=>{let E=Cn(m,l);if(E<0)return;let b=An(k.key,E,m.length,o);b<0||(k.preventDefault(),b!==E&&(C(m[b]._twVal),m[b].focus()))}),y(),s.append(Y("span","tw-radiogrid-label",e.label),c),{el:s,set:k=>C(k,!1),get:()=>l}}var Eo=/^(?:#[0-9a-f]{3,8}|[a-z]+|(?:oklch|oklab|rgba?|hsla?|hwb|lab|lch|color|var)\([^()]*\))$/i,ko=Gt("tw-select-chevron");function Lo(e,n){let r=e.value,o=e.options.map(h=>({value:Ae(h),label:wn(h),color:h&&typeof h=="object"&&typeof h.color=="string"&&Eo.test(h.color.trim())?h.color.trim():""})),s=x("div","tw-select"),c=ne("tw-select-trigger");c.setAttribute("aria-haspopup","listbox"),c.setAttribute("aria-expanded","false");let l=x("span","tw-select-right"),m=h=>`linear-gradient(${h}, ${h}), var(--tw-checker)`,y=h=>{let w=x("span","tw-option-swatch");return w.style.background=m(h),w},C=x("span","tw-option-swatch"),k=x("span","tw-select-value");l.append(C,k),l.insertAdjacentHTML("beforeend",ko),c.append(Y("span","tw-select-label",e.label),l);let E=x("div","tw-select-dropdown");E.setAttribute("role","listbox");let b=o.map(h=>{let w=ne("tw-select-option");return w.setAttribute("role","option"),h.color&&w.append(y(h.color)),w.append(Y("span","tw-option-label",h.label)),w.dataset.value=h.value,w.addEventListener("click",()=>{P(h.value),_.close()}),E.append(w),w});s.append(c,E);let z=()=>{let h=o.find(w=>w.value===r);k.textContent=h?.label??r,C.style.display=h?.color?"":"none",h?.color&&(C.style.background=m(h.color)),b.forEach(w=>{let D=w.dataset.value===String(r);w.dataset.selected=String(D),w.setAttribute("aria-selected",String(D))})},P=(h,w=!0)=>{h!=null&&!o.some(D=>D.value===h)||(r=h,z(),w&&n(h))},_=Et(s,c,E,{width:"match",fallbackH:200,gap:4,onOpen:()=>(b.find(h=>h.dataset.value===String(r))||b[0])?.focus()});return c.addEventListener("keydown",h=>{!_.isOpen()&&(h.key==="ArrowDown"||h.key==="ArrowUp")&&(h.preventDefault(),_.open())}),E.addEventListener("keydown",h=>{let w=b.indexOf(document.activeElement),D=w;if(h.key==="ArrowDown")D=w<0?0:Math.min(b.length-1,w+1);else if(h.key==="ArrowUp")D=w<0?b.length-1:Math.max(0,w-1);else if(h.key==="Home")D=0;else if(h.key==="End")D=b.length-1;else return;h.preventDefault(),b[D]?.focus()}),z(),{el:s,set:h=>P(h,!1),get:()=>r}}function xo(e){let n=Y("button","tw-button",e.label);return n.addEventListener("click",()=>typeof e.action=="function"&&e.action()),Mt(n)}function Mo(e){let n=x("div","tw-row tw-buttongroup");e.label&&n.append(Y("span","tw-row-label",e.label));let r=x("div","tw-buttongroup-btns"),o=Array.isArray(e.buttons)?e.buttons.map(s=>[s.label??"Button",s.action]):Object.entries(e.buttons||{});for(let[s,c]of o){let l=Y("button","tw-buttongroup-btn",s);l.addEventListener("click",()=>typeof c=="function"&&c()),r.append(l)}return n.append(r),Mt(n)}var Co=()=>Mt(x("div","tw-separator"));function So(e,n){let r=y=>y==null?"":typeof y=="object"?hn(y):String(y),o=r(e.value),s=e.rows>0,c=x("div",s?"tw-row tw-row-multiline":"tw-row"),l=x(s?"textarea":"input",s?"tw-text tw-textarea":"tw-text");s?l.rows=e.rows:l.type="text",l.value=o,$e(l),e.placeholder&&(l.placeholder=e.placeholder),l.addEventListener("input",()=>{o=l.value,n(o)});let m=()=>{let y=l.scrollHeight-l.clientHeight>1;l.classList.toggle("is-clip-top",y&&l.scrollTop>1),l.classList.toggle("is-clip-bottom",y&&l.scrollTop+l.clientHeight<l.scrollHeight-1)};return s&&(l.addEventListener("scroll",m),l.addEventListener("input",m),typeof ResizeObserver=="function"&&new ResizeObserver(m).observe(l)),c.append(Y("span","tw-row-label",e.label),l),{el:c,set:y=>{o=r(y),l.value=o,s&&m()},get:()=>o}}function rt(e){let n=x("div","tw-folder"),r=ne("tw-folder-header");r.setAttribute("aria-expanded","true"),r.append(Y("span","tw-folder-title",e.label)),r.insertAdjacentHTML("beforeend",Kn);let o=x("div","tw-folder-body"),s=x("div","tw-controls");o.append(s),n.append(r,o);let c=l=>Be(n,r,o,l);return r.addEventListener("click",()=>c(!n.classList.contains("is-collapsed"))),{el:n,body:s,setCollapsed:c}}function Xe(e,n){let r=ie(e.type);if(!r)return null;try{return r(e,n)}catch(o){return console.error("[tweaks] control failed to build:",e&&e.type,o),null}}ue("slider",ho);ue("checkbox",wo);ue("radiogrid",vo);ue("list",Lo);ue("button",xo);ue("buttongroup",Mo);ue("separator",Co);ue("text",So);ue("folder",rt);var st=(e,n,r)=>{let o=ne("tw-toolbar-btn"+(e?" "+e:""),n);return o.title=r,o.setAttribute("aria-label",r),o},Ht=e=>{let n=st("tw-toolbar-btn--swap",`<span class="tw-toolbar-btn__icons">${Dn}${Fn}</span>`,"Copy values (\u21E7: changed only)");return n.addEventListener("click",async r=>{if(n.disabled)return;let[o,s]=e(r.shiftKey);if(!s)return Pe("Nothing has changed");if(!await en(o))return Pe("Copy failed");To(n),Pe(s>0?`${s} changed value${s===1?"":"s"} copied`:"Values copied")}),n},Re=null,zn=0,Pe=e=>{Re||(Re=x("div","tw-sr"),Re.setAttribute("role","status")),Re.isConnected||document.body.appendChild(Re),Re.textContent="",clearTimeout(zn),zn=setTimeout(()=>{Re.textContent=e},100)},Nt=e=>{let n=st("tw-toolbar-btn--reset",$n,"Reset");return n.addEventListener("click",()=>{n.disabled||(Qt(n),e())}),n},To=e=>{e.classList.add("is-copied"),clearTimeout(e._t),e._t=setTimeout(()=>e.classList.remove("is-copied"),1400)},Qt=e=>{let n=e.querySelector("svg");e._spinSettle||(e._spinSettle=()=>{clearTimeout(e._t),e.classList.remove("is-spinning"),n.style.transition="none",n.style.setProperty("--tw-spin","0deg"),n.getBoundingClientRect(),n.style.transition=""},n.addEventListener("transitionend",o=>{o.propertyName==="transform"&&e.classList.contains("is-spinning")&&performance.now()-e._spinT>250&&e._spinSettle()})),e._spinT=performance.now(),n.style.setProperty("--tw-spin",`${(parseFloat(n.style.getPropertyValue("--tw-spin"))||0)-360}deg`),e.classList.add("is-spinning"),clearTimeout(e._t);let r=()=>{n.getAnimations&&n.getAnimations().length?e._t=setTimeout(r,250):e._spinSettle()};e._t=setTimeout(r,600)},J=null,Pt=0,_t=null,Gn=e=>{e.key==="Escape"&&it()},it=e=>{e&&_t&&!e.contains(_t)||(clearTimeout(Pt),document.removeEventListener("keydown",Gn),J&&J.classList.remove("is-open"))};function Ao(e,n){J||(J=x("div","tw-tip tw-portal"),J.setAttribute("role","tooltip")),J.isConnected||document.body.appendChild(J),clearTimeout(Pt),J.textContent=n,xn(J,e);let r=J.classList.contains("is-open");J.style.visibility="hidden",J.classList.add("is-open"),kn(e,J,{align:"center",prefer:"above",gap:8}),J.style.visibility="",document.addEventListener("keydown",Gn),_t=e,r||requestAnimationFrame(function o(){if(J.classList.contains("is-open")){if(!_t.isConnected)return it();requestAnimationFrame(o)}})}function Wn(){J&&(clearTimeout(Pt),Pt=setTimeout(it,80))}var Zt=".tw-slider-label, .tw-row-label, .tw-select-label, .tw-trigger-label, .tw-radiogrid-label, .tw-field-label, .tw-folder-title, .tw-fps-label, .tw-plot-label";function Ye(e,n){let r=e.querySelector(Zt)||e;if(r===e&&e.classList.contains("tw-separator"))return;let o=r.closest("button"),s=o?x("span","tw-hint",Ut):ne("tw-hint",Ut),c=()=>Ao(s,n);if(o){s.setAttribute("aria-hidden","true");let l=o.getAttribute("aria-description");o.setAttribute("aria-description",l?`${l}. ${n}`:n)}else s.setAttribute("aria-label",n),s.addEventListener("focus",c),s.addEventListener("blur",Wn),s.addEventListener("keydown",l=>{(l.key==="Enter"||l.key===" ")&&l.stopPropagation()});s.addEventListener("pointerenter",c),s.addEventListener("pointerleave",Wn),s.addEventListener("pointerdown",l=>l.stopPropagation()),s.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation()}),r.appendChild(s)}async function en(e){try{return await navigator.clipboard.writeText(e),!0}catch{}let n=document.createElement("textarea");n.value=e,n.style.position="fixed",n.style.top="-9999px",document.body.appendChild(n),n.focus(),n.select();let r=!1;try{r=document.execCommand("copy")}catch{}return document.body.removeChild(n),r}var Ve=null,pe=null,at=null,It=null;function Oo(e,n,r={}){let o=Object.entries(n).filter(([t])=>t!=="_last"||(console.warn('[tweaks] "_last" is reserved (the changed-key channel) \u2014 schema entry skipped'),!1)).map(([t,i])=>Ie(t,i)).filter(Boolean),s={},c=[],l=new Set,m=new Set,y=new Set,C=[],k=!1,E=!1,b=[],z=new Map,P=!1,_=-1,h=t=>{if(!k){if(P){console.warn("[tweaks] call ignored \u2014 the panel could not be built");return}E?t():b.push(t)}},w=null,D=function(t,i){return t==="_last"&&this===s?void 0:i===void 0?null:typeof i=="bigint"?String(i):i},Je=!1,lt=()=>{let t={};for(let i of c){let a=t;for(let u of i.path.slice(0,-1))a=a[u]||(a[u]={});a[i.key]=i.get()}return JSON.parse(JSON.stringify(t,D))},ae=()=>{try{return JSON.parse(JSON.stringify(s,D))}catch(t){return Je||(Je=!0,console.warn("[tweaks] a value parked on params can't be serialised \u2014 snapshots carry the controls' values only:",t)),lt()}},G=r.persist?`tw:${r.persist===!0?e:r.persist}`:null,fe=G?`${G}:presets`:null,oe=t=>{try{return JSON.parse(localStorage.getItem(t)||"null")}catch{return null}},je=(t,i)=>{try{localStorage.setItem(t,JSON.stringify(i))}catch{}},re=(t,i)=>i.reduce((a,u)=>a?.[u],t),q=t=>{for(let i of c)if(!i.persist){let a=re(t,i.path.slice(0,-1));a&&typeof a=="object"&&Reflect.deleteProperty(a,i.key)}return t},ct=G?(()=>{let t=0,i=()=>{t=0,je(G,q(ae()))};return C.push(()=>{t&&(clearTimeout(t),i())}),()=>{clearTimeout(t),t=setTimeout(i,150)}})():()=>{},V=(t,i=s._last)=>{(t?y:m).forEach(a=>{try{a(s,i)}catch(u){console.error("[tweaks] listener threw:",u)}}),k||ct()},ve=t=>typeof t=="function"||typeof t=="symbol"||typeof t=="bigint",ze=(t,i)=>{if(ve(i))throw new TypeError(`a ${typeof i} is not a control value`);t.set(i),t.target[t.key]=t.get()},me=t=>{At(t,t.raw,t.def),t.target[t.key]=t.get()},Ee=!1,dt=()=>{if(typeof r.onReset=="function"&&!Ee){Ee=!0;try{return r.onReset()}finally{Ee=!1}}for(let t of c)try{me(t)}catch(i){console.error(`[tweaks] resetting "${t.path.join(".")}" failed \u2014 control skipped:`,i)}s._last=void 0,V()},g=x("div","tw-panel");g.dataset.mode="inline",vn(g);let Z=x("div","tw-header"),le=ne("tw-header-toggle");le.setAttribute("aria-expanded","true");let We=e,ke=Y("span","tw-title",We);le.append(ke);let Le=x("div","tw-toolbar"),ut=()=>{let t={};for(let i of c)we(i.get(),i.def)&&(t[i.path.join(".")]=i.get());return JSON.parse(JSON.stringify(t,D))},pt=Ht(t=>{if(!t)return[JSON.stringify(ae(),null,2),-1];let i=ut();return[JSON.stringify(i,null,2),Object.keys(i).length]}),ft={panel:g,entries:c,fromJSON:t=>{Te?.flush(),Ne.fromJSON(t),Te?.flush()},announce:Pe,alive:()=>!k},Ge=Nt(dt),ee=null;G&&r.presets!==!1&&(ee=st("",qn,"Presets"),ee.setAttribute("aria-haspopup","menu"),ee.setAttribute("aria-expanded","false"),Le.append(ee));let B=!!r.filter&&(r.toolbar!==!1||(console.warn("[tweaks] opts.filter needs the toolbar (its search button lives there) \u2014 ignored alongside toolbar:false"),!1)),W=B?st("",Bn,"Filter controls"):null,F=B?x("input","tw-search"):null;B&&(F.type="text",F.placeholder="Filter\u2026",F.spellcheck=!1,F.setAttribute("aria-label","Filter controls"),$e(F),Le.append(W)),Le.append(pt,Ge),Z.append(le),B&&Z.append(F),r.toolbar!==!1&&Z.append(Le);let _e=[pt,Ge,ee,W].filter(Boolean);for(let t of _e)t.disabled=!0;let ge=!1,be=!1;Z.addEventListener("click",t=>{be&&(be=!1,t.preventDefault(),t.stopPropagation())},!0),le.addEventListener("click",()=>{Be(g,le,xe,!g.classList.contains("is-collapsed")),g.dataset.mode==="floating"&&setTimeout(()=>{g.dataset.mode==="floating"&&g.isConnected&&(te(),$())},270)});let xe=x("div","tw-body"),Me=x("div","tw-controls");xe.append(Me),g.append(Z,xe);let se=Xt(r.theme);Yt(g,se),g._twTheme=se;let Ce=r.draggable!==!1,X=8,He=28,De=()=>({maxX:Math.max(X,window.innerWidth-g.offsetWidth-X),maxY:Math.max(X,window.innerHeight-g.scrollHeight-1-X)}),d=G?`${G}:pos`:null,O=(Ce||r.floating)&&d?oe(d):null,U=O||(typeof r.floating=="object"?r.floating:null)||{x:16,y:16},j=+U.x||16,A=+U.y||16,$=()=>{g.style.left=j+"px",g.style.top=A+"px",g.style.maxHeight=`calc(100dvh - ${A+X}px)`},te=()=>{let{maxX:t,maxY:i}=De();j=K(j,X,t),A=K(A,X,i)};(Ce||r.floating)&&(r.floating||O)&&(g.dataset.mode="floating",te(),$(),requestAnimationFrame(()=>{!k&&g.dataset.mode==="floating"&&g.isConnected&&(te(),$())}));let Se=t=>{me(t),s._last=t.key,V()},Ue=(t,i)=>{let a=t.querySelector(".tw-slider-value")||t.querySelector(Zt)||t;a.classList.add("tw-resettable"),a.title="Double-click or hold to reset";let u=0,L=0,p=0,T=!1,v=()=>{u&&(clearTimeout(u),u=0,a.classList.remove("tw-reset-holding"))};a.addEventListener("pointerdown",f=>{f.stopPropagation(),T=!1,!(f.pointerType!=="touch"&&f.pointerType!=="pen")&&(L=f.clientX,p=f.clientY,a.classList.add("tw-reset-holding"),u=setTimeout(()=>{u=0,a.classList.remove("tw-reset-holding","is-editable"),T=!0,Se(i)},500))}),a.addEventListener("pointermove",f=>{u&&Math.abs(f.clientX-L)+Math.abs(f.clientY-p)>8&&v()}),a.addEventListener("pointerup",v),a.addEventListener("pointercancel",v),a.addEventListener("pointerleave",v),a.addEventListener("contextmenu",f=>{T&&f.preventDefault()}),a.addEventListener("click",f=>{T&&(f.preventDefault(),f.stopImmediatePropagation(),T=!1)},!0),a.addEventListener("dblclick",f=>{a===t&&f.target.closest&&f.target.closest("input, textarea")||(f.preventDefault(),f.stopPropagation(),Se(i))}),a.classList.contains("tw-slider-value")&&t.addEventListener("dblclick",f=>{let S=f.target;!S.classList||!S.classList.contains("tw-slider-input")||(f.preventDefault(),f.stopPropagation(),S.blur(),Se(i))}),t.addEventListener("keydown",f=>{!f.altKey||f.metaKey||f.ctrlKey||f.key!=="Backspace"&&f.key!=="Delete"||(f.preventDefault(),f.stopPropagation(),f.target.classList&&f.target.classList.contains("tw-slider-input")&&f.target.blur(),Se(i))})},Qe=[],Rt,eo=(t,i)=>!t._hid==!i?!1:(t._hid=i,Rt?Rt(t,i):t.classList.toggle("tw-cond-hidden",i),!i),jt=(t,i)=>{i.hint&&Ye(t,i.hint),(i.render||i.disabled!=null)&&Qe.push({node:t,m:i})},Dt=[],Ft=[],mt=[],gt=[],to=t=>{typeof t.destroy=="function"&&C.push(t.destroy)},$t=(t,i,a,u=[],L=null)=>{for(let p of i){if(p.type==="tabs"){let f={};l.add(f),a[p.key]=f;let S=ie("tabs"),M=S&&S(p);if(!M)continue;gt.push({path:[...u,p.key],ctrl:M,pageKeys:p.pages.map(H=>H.key)}),p.pages.forEach((H,I)=>{let Q={};l.add(Q),f[H.key]=Q,$t(M.bodies[I],H.children,Q,[...u,p.key,H.key])}),jt(M.el,p),t.append(M.el);continue}if(p.type==="folder"){let f={};l.add(f),a[p.key]=f;let S=rt(p);mt.push({path:[...u,p.key],el:S.el,setCollapsed:S.setCollapsed}),Ze.set(S.el,{kind:"folder",path:[...u,p.key],label:p.label});let M=B?{el:S.el,label:p.label,body:S.body}:null;M&&Ft.push(M),$t(S.body,p.children,f,[...u,p.key],M),jt(S.el,p),t.append(S.el);continue}let T=!Ot.has(p.type),v=Xe(p,T?f=>{we(a[p.key],f)&&(a[p.key]=f,s._last=p.key,V())}:()=>{});if(v){if(to(v),T){let f=v.get();Oe(a,p.key)&&v.set(a[p.key]),a[p.key]=v.get();let S={target:a,key:p.key,set:v.set,get:v.get,raw:p.value,def:f,path:[...u,p.key],persist:p.persist!==!1,m:p,el:v.el};c.push(S),Ue(v.el,S),Ze.set(v.el,{kind:"row",entry:S,label:p.label})}jt(v.el,p),B&&p.type!=="separator"&&Dt.push({el:v.el,label:p.label,folder:L}),t.append(v.el)}}};if(B){let t=a=>{let u=a.trim().toLowerCase(),L=!1,p=(T,v)=>{!v&&T.classList.contains("tw-filter-hidden")&&(L=!0),T.classList.toggle("tw-filter-hidden",v)};if(!u)Dt.forEach(T=>p(T.el,!1)),Ft.forEach(T=>p(T.el,!1));else{for(let T of Dt){let v=T.folder&&kt(T.folder.label,u);p(T.el,!(kt(T.label,u)||v))}for(let T of Ft.slice().reverse()){let v=[...T.body.children].some(f=>!f.classList.contains("tw-filter-hidden"));p(T.el,!(kt(T.label,u)||v))}}L&&qt()},i=()=>{g.classList.remove("is-searching"),F.value="",t("")};W.addEventListener("click",()=>{W.disabled||(g.classList.toggle("is-searching")?(F.focus(),F.select()):i())}),F.addEventListener("input",()=>t(F.value)),F.addEventListener("keydown",a=>{a.key==="Escape"&&(i(),W.focus())})}let no=new Set(o.map(t=>t.key)),bt=(t,i)=>{if(!(!t||typeof t!="object")){for(let a of c){let u=re(t,a.path);if(u!==void 0)try{ze(a,u)}catch(L){console.error(`[tweaks] restoring "${a.path.join(".")}" failed \u2014 value skipped:`,L)}}for(let a of Object.keys(t))if(!no.has(a)&&a!=="_last"&&Oe(s,a)&&!Tt(a)&&!ve(t[a]))try{s[a]=t[a]}catch(u){console.error(`[tweaks] restoring "${a}" failed \u2014 value skipped:`,u)}s._last=void 0,V(i)}},Fe=()=>{let t=fe?oe(fe):null;return Object.assign(Object.create(null),t&&typeof t=="object"?t:{})},nn=t=>{let i=Fe();i[t]=ae(),je(fe,i)},on=t=>{let i=Fe();i[t]&&bt(i[t])},rn=t=>{let i=Fe();delete i[t],je(fe,i)},yt=t=>t.map(i=>String(i).replace(/~/g,"~1").replace(/\./g,"~0")).join("."),oo=()=>{let t={};if(mt.length){let i={};for(let a of mt)i[yt(a.path)]=a.el.classList.contains("is-collapsed");t.folders=i}if(gt.length){let i={};for(let a of gt)i[yt(a.path)]=a.pageKeys[a.ctrl.active()]??null;t.tabs=i}return t},ro=t=>{if(!(!t||typeof t!="object")){if(t.folders)for(let i of mt){let a=t.folders[yt(i.path)];typeof a=="boolean"&&i.setCollapsed(a)}if(t.tabs)for(let i of gt){let a=i.pageKeys.indexOf(t.tabs[yt(i.path)]);a>=0&&a!==i.ctrl.active()&&i.ctrl.activate(a)}}};if(Ce||r.floating){if(Ce){g.dataset.draggable="true";let M=x("span","tw-grabber");M.setAttribute("aria-hidden","true"),Z.prepend(M)}let t=()=>{if(g.dataset.mode==="floating")return;let M=g.getBoundingClientRect();if(j=M.left,A=M.top,g.parentNode&&(w=x("span","tw-lift-slot"),w.style.width=M.width+"px",w.style.height=M.height+"px",w.setAttribute("aria-hidden","true"),g.before(w)),Ln(g,g),document.body.appendChild(g),g.dataset.mode="floating",$(),w&&typeof MutationObserver=="function"){let H=new MutationObserver(()=>{w&&!w.isConnected&&(H.disconnect(),w=null,g.remove())});H.observe(document.documentElement,{childList:!0,subtree:!0}),C.push(()=>H.disconnect())}},i=()=>{Ve&&Ve!==g&&(Ve.style.zIndex=""),g.style.zIndex="99991",Ve=g},a=null,u=0,L=0,p=0,T=0,v=M=>{for(let[H,I]of[["pointermove",f],["pointerup",S],["pointercancel",S]])M?document.addEventListener(H,I,!0):document.removeEventListener(H,I,!0)};Ce&&Z.addEventListener("pointerdown",M=>{if(!(M.button!==0||a!==null||M.target.closest(".tw-toolbar, input, textarea, select"))&&(a=M.pointerId,u=M.clientX,L=M.clientY,ge=!1,v(!0),g.classList.add("is-grabbing"),g.style.transition)){let H=getComputedStyle(g);j=parseFloat(H.left)||j,A=parseFloat(H.top)||A,g.style.transition="",$()}});let f=M=>{if(M.pointerId!==a)return;if(M.buttons===0){S(M);return}let H=M.clientX-u,I=M.clientY-L;if(!ge){if(Math.abs(H)+Math.abs(I)<4)return;ge=!0,t(),i(),p=j,T=A;try{Z.setPointerCapture(a)}catch{}g.classList.add("is-dragging")}let{maxX:Q,maxY:R}=De();j=K(p+H,X,Q),A=K(T+I,X,R),$()},S=M=>{if(M.pointerId===a){try{Z.releasePointerCapture(a)}catch{}if(a=null,v(!1),be=ge,be&&setTimeout(()=>{be=!1},0),ge){let{maxX:H,maxY:I}=De();j<=X+He?j=X:j>=H-He&&(j=H),A<=X+He?A=X:A>=I-He&&(A=I),nt.matches||(g.style.transition="left 0.32s var(--tw-ease-spring), top 0.32s var(--tw-ease-spring)",setTimeout(()=>{g.style.transition=""},340)),$(),d&&je(d,{x:j,y:A})}g.classList.remove("is-dragging","is-grabbing")}};Z.addEventListener("lostpointercapture",S),C.push(()=>v(!1))}let so=()=>{(Ce||r.floating)&&(g.dataset.mode==="floating"&&(te(),$()),C.push(tt(g,[[window,"resize"]],()=>{g.dataset.mode==="floating"&&(te(),$())})))};if(ee){let t=x("div","tw-presets-menu"),i=x("div","tw-presets-save"),a=x("input","tw-presets-input");a.type="text",a.placeholder="Preset name\u2026",a.spellcheck=!1,a.setAttribute("aria-label","New preset name"),$e(a);let u=Y("button","tw-presets-savebtn","Save");i.append(a,u);let L=x("div","tw-presets-list");t.append(i,L);let p=()=>{let f=Fe(),S=Object.keys(f);if(L.replaceChildren(),!S.length)return L.append(Y("div","tw-presets-empty","No presets yet"));for(let M of S){let H=x("div","tw-presets-row"),I=Y("button","tw-presets-load",M);I.addEventListener("click",()=>{on(M),v.close(),Pe(`Loaded preset ${M}`)});let Q=ne("tw-presets-del",Xn);Q.setAttribute("aria-label",`Delete preset ${M}`),Q.addEventListener("click",R=>{R.stopPropagation(),rn(M),p()}),H.append(I,Q),L.append(H)}},T=()=>{let f=a.value.trim();if(!f){a.focus();return}nn(f),a.value="",p(),Pe(`Saved preset ${f}`)},v=Et(ee,ee,t,{width:208,fallbackH:160,gap:6,align:"end",onOpen:()=>{p(),a.focus()}});u.addEventListener("click",T),a.addEventListener("keydown",f=>{f.key==="Enter"&&T()})}if(r.onEditStart||r.onEditEnd){let t=".tw-slider, .tw-num-grab, .tw-pad, .tw-wg-area, .tw-wg-hue, .tw-wg-alpha, .tw-bezier-handle, .tw-gradient-bar, .tw-gradient-stop",i=!1,a=()=>{document.removeEventListener("pointerup",a,!0),document.removeEventListener("pointercancel",a,!0),i&&(i=!1,r.onEditEnd&&r.onEditEnd())},u=L=>{i||!L.target.closest(t)||(i=!0,r.onEditStart&&r.onEditStart(),document.addEventListener("pointerup",a,!0),document.addEventListener("pointercancel",a,!0))};g.addEventListener("pointerdown",u),g._twEditPointer=u,C.push(a)}let Te=r.undo?(()=>{let i=[],a=0,u=!1,L=0,p=()=>{L=0;let R=ae();JSON.stringify(R)!==JSON.stringify(i[a])&&(i=i.slice(0,a+1),i.push(R),i.length>200&&(i=i.slice(i.length-200)),a=i.length-1)},T=()=>{u||(clearTimeout(L),L=setTimeout(p,350))},v=()=>{L&&(clearTimeout(L),p())};m.add(T),y.add(T);let f=R=>{u=!0,bt(i[R]),u=!1,a=R},S=()=>{v(),a>0&&f(a-1)},M=()=>{v(),a<i.length-1&&f(a+1)},H=()=>g.matches(":hover")||g.contains(document.activeElement),I=R=>!!(R&&R.matches&&(R.matches("input, textarea")||R.isContentEditable));return{undo:S,redo:M,onKey:R=>{if(!H()||!(R.metaKey||R.ctrlKey)||I(R.target))return;let ht=R.key.toLowerCase();ht==="z"?(R.preventDefault(),R.shiftKey?M():S()):ht==="y"&&(R.preventDefault(),M())},flush:v,arm:()=>{i=[ae()],a=0}}})():null,Ze=new Map,io=t=>{for(;t&&t!==g&&g.contains(t);t=t.parentElement){let i=Ze.get(t);if(i)return i}},ao=t=>{for(;t&&t!==g;t=t.parentElement)if(Ze.get(t)?.kind==="row")return t},Bt=t=>!!(t.closest(".tw-filter-hidden, .tw-cond-hidden, .tw-tabs-page:not([data-active=true])")||t.parentElement?.closest(".is-collapsed")),ce,sn=t=>{let i=t.target;!g.contains(i)&&!i.closest?.(".tw-portal")&&ye()},ye=()=>{ce&&(ce[0].classList.remove("is-picked"),ce=void 0,document.removeEventListener("pointerdown",sn,!0),pe?.[0]===g&&(pe=null))},lo=(t,i)=>{pe&&pe[0]!==g&&pe[1](),ye(),ce=[t,i],pe=[g,ye],t.classList.add("is-picked"),document.addEventListener("pointerdown",sn,!0);let a=[...t.querySelectorAll('button:not(:disabled):not([tabindex="-1"]), [tabindex="0"]')].find(u=>!u.closest(".tw-hint, .tw-portal, [inert]"));a?a.focus({preventScroll:!0,focusVisible:!1}):document.activeElement?.blur?.(),document.getSelection?.()?.removeAllRanges()};C.push(ye),g.addEventListener("pointerdown",t=>{let i=t.target;if(ao(i)||i.closest(".tw-header, .tw-folder-header, button, input, textarea, select")){ce?.[0].contains(i)||ye();return}if(t.button!==0||t.pointerType==="touch")return ye();let a;for(let[u,L]of Ze){let p=(L.kind==="folder"?u.firstElementChild:u).getBoundingClientRect();p.height&&t.clientY>=p.top&&t.clientY<p.bottom&&!Bt(u)&&(a=[u,L])}if(!a)return ye();t.preventDefault(),lo(...a)},!0);let an=t=>!!(t&&t.matches&&(t.matches("input, textarea, select")||t.isContentEditable)),co=t=>{if(t.key==="Escape")return ye();if(!(t.metaKey||t.ctrlKey)||t.altKey||t.repeat||an(t.target))return;let i=t.key.toLowerCase();if(i!=="c"&&i!=="v")return;pe&&!pe[0].isConnected&&pe[1](),ce&&Bt(ce[0])&&ye();let a=document.activeElement,u=ce?ce[1]:pe||!a||Bt(a)?void 0:io(a);if(!u||i==="c"&&String(document.getSelection?.()||""))return;let L=i==="c"?JSON.stringify(u.kind==="row"?u.entry.get():re(ae(),u.path),D,2):"",p=I=>{k||Pe(I?`${u.label} copied`:"Copy failed")},T=ce?.[0],v=document.activeElement,f=!!v?.matches(":focus-visible");if(!at){at=x("textarea","tw-sr"),at.tabIndex=-1,at.setAttribute("aria-hidden","true");for(let I of["copy","paste"])document.addEventListener(I,Q=>It?.(Q),!0)}let S=at,M=()=>{It=null,document.activeElement===S&&(S.blur(),v?.focus?.({preventScroll:!0,focusVisible:f}))},H=It=I=>{if(I.target!==S&&an(I.target))return;if(I.preventDefault(),M(),L)return I.clipboardData?.setData("text/plain",L),p(!!I.clipboardData);let Q=I.clipboardData?.getData("text/plain")??null;import("./clip-7ZYA76G4.js").then(R=>R.pasteInto(Q,ht=>R.pasteScope(ft,u,ht),ft,T),()=>{})};S.isConnected||document.body.appendChild(S),S.value=L,S.focus({preventScroll:!0}),S.select(),setTimeout(()=>{It===H&&(M(),L&&en(L).then(p))},1e3)},ln=()=>{if(!k){if(_=C.length,$t(Me,o,s),Qe.length){let t=new Map;for(let u of c)t.has(u.key)||t.set(u.key,u);let i=u=>{let L=t.get(u);return L?L.target[L.key]:s[u]},a=()=>{let u=!1;for(let{node:L,m:p}of Qe)try{if(p.render&&eo(L,!p.render(i))&&(u=!0),p.disabled!=null){let T=typeof p.disabled=="function"?p.disabled(i):p.disabled;xt(L,!!T)}}catch{}u&&qt()};m.add(a),y.add(a),a(),import("./fold-EIXF4KHZ.js").then(u=>{Rt=u.fold},()=>{})}if(G&&bt(q(oe(G))),!k){Te?.arm(),so(),C.push(tt(g,[[document,"keydown"]],t=>{Te?.onKey(t),co(t)})),E=!0;for(let t of b.splice(0)){if(k)break;try{t()}catch(i){console.error("[tweaks] a call queued before ready failed:",i)}}z.clear();for(let t of _e)t.disabled=!1}}},cn=(t,i)=>{if(String(t).split(".").some(Tt))return console.warn(`[tweaks] set("${t}") ignored \u2014 reserved key`),!1;let a=String(t).split("."),u;if(a.length>1){let v=s;for(let f=0;f<a.length-1&&v;f++)v=v[a[f]],l.has(v)||(v=null);if(u=v&&c.find(f=>f.target===v&&f.key===a[a.length-1]),!u)return console.warn(`[tweaks] set("${t}") \u2014 no control at that path`),!1}else{let v=c.filter(S=>S.key===t),f=v.find(S=>S.target===s);if(!f&&v.length>1)return console.warn(`[tweaks] set("${t}") is ambiguous \u2014 ${v.length} controls share that key; use a dotted path (e.g. "${v[0].path.join(".")}")`),!1;u=f||v[0]}let L=u?u.target:s,p=u?u.key:t,T=L[p];if(u&&ve(i))return console.warn(`[tweaks] set("${t}") ignored \u2014 a ${typeof i} is not a control value`),!1;if(u)try{ze(u,i)}catch(v){return console.error(`[tweaks] set("${t}") failed \u2014 value skipped:`,v),!1}else{if(l.has(s[t]))return console.warn(`[tweaks] set("${t}") ignored \u2014 it's a folder/tabs group; set its children instead`),!1;s[t]=i}return we(T,L[p])?(s._last=p,!0):!1},Ne={el:g,params:s,on(t){return k?()=>{}:(m.add(t),()=>m.delete(t))},set(t,i,a){let u=String(t),L=a?.silent;h(()=>{cn(u,i)&&V(L)})},setMany(t,i){if(t==null||typeof t!="object")return;let a=Object.entries(t),u=i?.silent;h(()=>{let L=!1;for(let[p,T]of a)try{cn(p,T)&&(L=!0)}catch(v){console.error(`[tweaks] setMany("${p}") failed \u2014 key skipped:`,v)}L&&V(u)})},reset(){E&&!k&&Qt(Ge),h(dt)},toJSON(){return k?{values:{},ui:{}}:{values:ae(),ui:oo()}},changes(){return k?{}:ut()},fromJSON(t,i){if(!t||typeof t!="object")return;let a=i?.silent,u=t.values&&typeof t.values=="object"?{...t.values}:t.values,L=t.ui&&typeof t.ui=="object"?{...t.ui}:t.ui;h(()=>{u&&bt(u,a),ro(L)})},setName(t){k||(We=String(t),ke.textContent=We)},setTheme(t){if(!k){if(se)for(let i in se)g.style.removeProperty(i);se=Xt(t),g._twTheme=se,Yt(g,se),window.dispatchEvent(new Event("tw-retheme"))}},savePreset:t=>k||P||!fe||!t?!1:(E||z.set(String(t),"save"),h(()=>nn(t)),!0),loadPreset:t=>{let i=z.get(String(t));return k||P||i==="delete"||!(i==="save"||Fe()[t])?!1:(h(()=>on(t)),!0)},deletePreset:t=>{fe&&(E||z.set(String(t),"delete"),h(()=>rn(t)))},presets:()=>k?[]:Object.keys(Fe()),undo:()=>{Te&&h(Te.undo)},redo:()=>{Te&&h(Te.redo)},destroy(){if(!k){k=!0,Mn(g),it(g);for(let t of C.splice(0))try{t()}catch{}m.clear(),w&&(w.remove(),w=null),Ve===g&&(Ve=null),g.dataset.twDestroyed="",g.remove()}}},dn=qe(o);if(dn){let t=i=>{if(P=!0,b.length=0,_>=0)for(let a of C.splice(_))try{a()}catch{}for(let a of Me.children)a.dataset.twDestroyed="";throw m.clear(),c.length=0,Me.replaceChildren(),k||console.warn(`[tweaks] "${e}": the panel could not be built \u2014 ${_>=0?"the build threw":"its lazy controls failed to load"}; the API is inert`),i};Ne.ready=g.ready=dn.then(ln).then(()=>Ne,t),Ne.ready.catch(()=>{})}else ln(),Ne.ready=g.ready=Promise.resolve(Ne);return Ne}var Po=(e,n)=>{e.dataset.value=n==null?"":Array.isArray(n)?n.join(","):typeof n=="object"?Object.values(n).join(","):String(n)},_o=(e,n,r)=>{Po(e,r),e.dispatchEvent(new CustomEvent("tw:change",{bubbles:!0,detail:{key:n,value:r}}))},tn=(e,n)=>[...typeof e.matches=="function"&&e.matches(n)?[e]:[],...e.querySelectorAll(n)];async function Un(e=document){tn(e,'.tw-panel[data-mode="inline"]:not([data-tw-panel-bound])').forEach(o=>{let s=o.querySelector(":scope > .tw-header"),c=o.querySelector(":scope > .tw-controls");if(!s||!c)return;o.setAttribute("data-tw-panel-bound","");let l=x("div","tw-body");o.insertBefore(l,c),l.append(c);let m=s.querySelector(".tw-header-toggle"),y=s.querySelector(".tw-title");if(!m&&y&&(m=ne("tw-header-toggle"),y.replaceWith(m),m.append(y)),!!m&&(m.setAttribute("aria-expanded","true"),m.addEventListener("click",()=>Be(o,m,l,!o.classList.contains("is-collapsed"))),!s.querySelector(".tw-toolbar"))){let C=y&&y.textContent||"Panel",k=()=>[...o.querySelectorAll("[data-tw]")].map(P=>P._tw).filter(P=>P&&P.ctrl.get()!==void 0),E=()=>{let P=Object.create(null);for(let _ of k()){let h=_.key,w=2;for(;Oe(P,h);)h=`${_.key}-${w++}`;P[h]=_.ctrl.get()}return JSON.stringify(P,null,2)},b=()=>{for(let P of k())P.reset()},z=x("div","tw-toolbar");z.append(Ht(()=>[E(),-1]),Nt(b)),s.append(z)}}),tn(e,'[data-tw="folder"]:not([data-tw-bound])').forEach(o=>{o.setAttribute("data-tw-bound","");let s=rt({label:o.dataset.label||"Folder"});[...o.children].forEach(c=>s.body.append(c)),o.append(s.el)});let n=tn(e,"[data-tw]:not([data-tw-bound])").map(o=>({host:o,meta:jn(o)})).filter(o=>o.meta);n.forEach(({host:o})=>o.setAttribute("data-tw-bound",""));let r=qe(n.map(o=>o.meta));r&&await r.catch(()=>{});for(let{host:o,meta:s}of n){let c=o.dataset.key||s.label,l,m=E=>{we(l,E)&&(l=E,_o(o,c,E))},y=Xe(s,m);if(!y)continue;o.closest(".tw-panel, .tw-portal")||o.classList.add("tw-portal"),o.append(y.el),o.dataset.hint&&Ye(y.el,o.dataset.hint);let C=y.get();l=C;let k={...y,set:E=>{y.set(E),m(y.get())}};o._tw={ctrl:k,raw:s.value,def:C,key:c,host:o,reset:()=>{At(y,s.value,C),m(y.get())}}}}if(typeof document<"u"){let e=()=>Un(document);document.readyState==="loading"?document.addEventListener("DOMContentLoaded",e):e()}var Qn=e=>x("div",`${e} tw-standalone tw-portal`),Zn=(e,n,r)=>{let o=qe(e);if(!o)return n(),Promise.resolve(r);let s=o.then(n).then(()=>r);return s.catch(()=>{}),s};function Ho(e,n,r={}){let o=r.key??"value",s=Ie(o,n);if(!s||s.type==="folder"||s.type==="tabs")throw new TypeError(`[tweaks] mountControl: "${o}" is not a single-control schema value`);r.label!=null&&(s.label=String(r.label));let c=!Ot.has(s.type),l=Qn("tw-control");e.append(l);let m=null,y=!1,C=s.value,k,E=!1,b=_=>{we(C,_)&&(C=_,r.onChange&&r.onChange(_,o))},z=()=>{if(y||(m=Xe(s,c?b:()=>{}),!m))return;s.hint&&Ye(m.el,s.hint);let _=()=>{};try{s.render&&!s.render(_)&&m.el.classList.add("tw-cond-hidden")}catch{}try{(typeof s.disabled=="function"?s.disabled(_):s.disabled)&&xt(m.el,!0)}catch{}l.append(m.el),c&&(C=m.get(),E&&(m.set(k),b(m.get())))},P={el:l,set:_=>{y||!c||(m?(m.set(_),b(m.get())):(k=_,E=!0))},get:()=>c?m?m.get():E?k:s.value:void 0,destroy:()=>{y=!0,m&&typeof m.destroy=="function"&&m.destroy(),l.dataset.twDestroyed="",l.remove()},ready:null};return P.ready=Zn([s],z,P),P}function No(e={}){let n=Qn("tw-color-picker"),r=null,o=!1,s=e.value,c,l=!1,m=null,y=E=>{we(s,E)&&(s=E,e.onChange&&e.onChange(E))},C=()=>{if(o)return;let E=ie("colorpicker");E&&(r=E({value:e.value,mode:e.mode},y),s=r.get(),n.append(r.el),m&&r.setMode(m),l&&(r.set(c),y(r.get())),vt(r.reflow))},k={el:n,set:E=>{o||(r?(r.set(E),y(r.get())):(c=E,l=!0))},get:()=>r?r.get():l?c:e.value,mode:()=>r?r.mode():m||e.mode||"oklch",setMode:E=>{r?r.setMode(E):m=E},reflow:()=>{r&&r.reflow()},destroy:()=>{o=!0,n.remove()},ready:null};return k.ready=Zn([{type:"color"}],C,k),k}export{No as createColorPicker,Un as enhance,po as gradientCss,uo as gradientStops,Ho as mountControl,Oo as tweaks};
@@ -1 +1 @@
1
- import{L as n}from"./chunk-3GZFWFKC.js";var r=(t,i)=>{let a=getComputedStyle(t),m=t._fold?.playState=="running"&&{marginBottom:a.marginBottom,clipPath:a.clipPath,opacity:a.opacity};t._fold?.cancel(),t.classList.remove("tw-cond-hidden");let o=!n.matches&&t.animate&&t.offsetHeight;if(t.classList.toggle("tw-cond-hidden",i),o)try{let s=o+6+parseFloat(a.marginTop),c=o+"px",e={height:c,marginBottom:-s+"px",clipPath:`inset(0 0 ${s}px)`,opacity:0},l={height:c,clipPath:"inset(0)"};(t._fold=t.animate([m||(i?l:e),i?e:l],{duration:350,easing:a.getPropertyValue("--tw-ease-fold").trim()})).onfinish=()=>t.classList.toggle("tw-cond-hidden",i),t.classList.remove("tw-cond-hidden")}catch{}};export{r as fold};
1
+ import{L as n}from"./chunk-R7BLRFON.js";var r=(t,i)=>{let a=getComputedStyle(t),m=t._fold?.playState=="running"&&{marginBottom:a.marginBottom,clipPath:a.clipPath,opacity:a.opacity};t._fold?.cancel(),t.classList.remove("tw-cond-hidden");let o=!n.matches&&t.animate&&t.offsetHeight;if(t.classList.toggle("tw-cond-hidden",i),o)try{let s=o+6+parseFloat(a.marginTop),c=o+"px",e={height:c,marginBottom:-s+"px",clipPath:`inset(0 0 ${s}px)`,opacity:0},l={height:c,clipPath:"inset(0)"};(t._fold=t.animate([m||(i?l:e),i?e:l],{duration:350,easing:a.getPropertyValue("--tw-ease-fold").trim()})).onfinish=()=>t.classList.toggle("tw-cond-hidden",i),t.classList.remove("tw-cond-hidden")}catch{}};export{r as fold};
@@ -1 +1 @@
1
- import{a as W,b as F,c as Z,d as tt,e as I,f as et,g as ot}from"./chunk-GDMWOXFU.js";import{e as J,i as Q}from"./chunk-5G6TFQOD.js";import{J as z,W as U,Y as V,a as X,b as $,c as q,e as Y,g as h,u as y,v as j}from"./chunk-3GZFWFKC.js";var mt=U('<path d="M12 5v14m7-7H5"/>',"",2.5),lt=(o,S)=>o&&!Array.isArray(o)&&typeof o[S]=="string"?o[S]:null,nt=o=>lt(o,"interpolation"),rt=o=>lt(o,"easing"),st=[["linear","Linear"],["ease","Ease"],["ease-in","Ease in"],["ease-out","Ease out"],["ease-in-out","Ease in-out"]];function at(o){let S=[{color:"oklch(0.72 0.19 25)",pos:0},{color:"oklch(0.72 0.16 280)",pos:1}],l=Array.isArray(o)?o:o&&Array.isArray(o.stops)?o.stops:null,a=(p,O)=>tt(p)?{color:String(p).trim(),pos:h(+O||0,0,1)}:null,d=(l||[]).map(p=>Array.isArray(p)?a(p[0],p[1]):p&&typeof p=="object"?a(p.color,p.pos):null).filter(Boolean);return d.length>=2?d:S}function ht(o,S){o.value??(o.value=o.stops);let l=at(o.value),a=l[0],d=$(rt(o.value)),{root:p,trigger:O,right:it}=Q("tw-gradient",o.label??"Gradient"),k=y("span","tw-trigger-chip tw-gradient-preview");k.setAttribute("role","img"),it.append(k);let v=y("div","tw-color-pop tw-gradient-pop"),N=y("div","tw-gradient-bar-row"),B=y("div","tw-gradient-bar"),T=y("div","tw-gradient-grad"),b=y("div","tw-gradient-rail");B.append(T,b);let A=j("tw-gradient-add",mt);A.title="Add a stop after the selected one",A.setAttribute("aria-label","Add a colour stop after the selected one"),N.append(B,A);let C=()=>[...l].sort((t,e)=>t.pos-e.pos),pt=()=>W(u.mode()),D=()=>({stops:C().map(t=>({color:t.color,pos:+t.pos.toFixed(4)})),interpolation:pt(),easing:d}),f=()=>{let t=Y(D());T.style.background=t,k.style.background=`${t}, ${Z}`},G=()=>{k.setAttribute("aria-label",`${l.length} stop${l.length===1?"":"s"}`)},w=()=>S(D()),H=t=>[...b.children].find(e=>e._stop===t),u=et({value:a.color,mode:F(nt(o.value)||"oklch"),onMode:()=>{f(),w()}},t=>{a.color=t,H(a)?.style.setProperty("--stop",t),f(),w()}),g=y("select","tw-color-mode tw-gradient-ease");g.setAttribute("aria-label","Easing between stops"),g.title="How the ramp blends between stops";for(let[t,e]of st){let s=document.createElement("option");s.value=t,s.textContent=e,g.append(s)}let P=()=>{let t=g.querySelector("option[data-custom]");st.some(([e])=>e===d)?t?.remove():(t||(t=document.createElement("option"),t.dataset.custom="",t.textContent="Custom",g.append(t)),t.value=d),g.value=d};g.addEventListener("change",()=>{d=g.value,P(),f(),w()}),u.el.querySelector(".tw-color-mode").after(g),P(),v.append(N,u.el),p.append(v);let M=t=>t.setAttribute("aria-label",`Colour stop at ${Math.round(t._stop.pos*100)}%${t._stop===a?", selected":""}`),ct=()=>{for(let t of b.children)t.dataset.sel=String(t._stop===a),M(t)},R=()=>{b.replaceChildren();for(let t of l){let e=j("tw-gradient-stop");e._stop=t,e.style.left=t.pos*100+"%",e.style.setProperty("--stop",t.color),e.dataset.sel=String(t===a),M(e),e.addEventListener("focus",()=>L(t,!1));let s=!1;J(e,{onDown:n=>{n.preventDefault(),n.stopPropagation(),e.focus({focusVisible:!1}),L(t,!1),s=!1},onMove:n=>{let r=b.getBoundingClientRect();t.pos=h((n.clientX-r.left)/(r.width||1),0,1),e.style.left=t.pos*100+"%",M(e),f(),w(),s=l.length>2&&(n.clientY<r.top-24||n.clientY>r.bottom+24),e.dataset.removing=String(s)},onEnd:()=>{s?_(t):e.dataset.removing="false"}}),e.addEventListener("dblclick",n=>{n.preventDefault(),_(t)}),e.addEventListener("keydown",n=>{let r=n.key==="ArrowLeft"?-1:n.key==="ArrowRight"?1:0;r&&(n.preventDefault(),t.pos=h(t.pos+r*(n.shiftKey?.1:.01),0,1),e.style.left=t.pos*100+"%",M(e),f(),w())}),b.append(e)}},L=(t,e)=>{t!==a&&(u.set(t.color),a=t),e?R():ct()},dt=t=>{let e=b.getBoundingClientRect();return h((t-e.left)/(e.width||1),0,1)},ft=t=>{let e=C(),s=e[0],n=e[e.length-1];for(let m=0;m<e.length-1;m++)if(t>=e[m].pos&&t<=e[m+1].pos){s=e[m],n=e[m+1];break}let r=q(X(d),n.pos>s.pos?h((t-s.pos)/(n.pos-s.pos),0,1):0),i=I(s.color),c=I(n.color),x=m=>m[1]<1e-4,E=c[2]-i[2];E>180?E-=360:E<-180&&(E+=360),(x(i)||x(c))&&(E=0);let ut=(((x(i)&&!x(c)?c[2]:i[2])+E*r)%360+360)%360;return ot(i[0]+(c[0]-i[0])*r,i[1]+(c[1]-i[1])*r,ut,i[3]+(c[3]-i[3])*r)},_=t=>{if(l.length<=2)return;let e=l.indexOf(t);if(e<0)return;l.splice(e,1);let s=a===t?l[Math.max(0,e-1)]:a;f(),L(s,!0),G(),w(),H(a)?.focus()},K=t=>{let e={color:ft(t),pos:h(t,0,1)};return l.push(e),f(),L(e,!0),G(),w(),e},gt=()=>{let t=C(),e=t.indexOf(a);e<0&&(e=0);let s=e<t.length-1?(t[e].pos+t[e+1].pos)/2:e>0?(t[e-1].pos+t[e].pos)/2:h(t[e].pos+.1,0,1);K(s)};return A.addEventListener("click",t=>{t.stopPropagation(),gt()}),B.addEventListener("dblclick",t=>{t.target.closest(".tw-gradient-stop")||(t.preventDefault(),K(dt(t.clientX)))}),v.tabIndex=-1,v.addEventListener("keydown",t=>{(t.key==="Delete"||t.key==="Backspace")&&!t.altKey&&!/^(input|textarea|select)$/i.test(t.target.tagName)&&l.length>2&&(t.preventDefault(),_(a))}),z(p,O,v,{width:260,fallbackH:392,gap:6,onOpen:u.reflow,onReflow:u.reflow,initialFocus:()=>H(a)}),R(),f(),G(),{el:p,set:t=>{let e=nt(t);e&&u.setMode(F(e));let s=rt(t);s!==null&&(d=$(s),P());let n=at(t).sort((r,i)=>r.pos-i.pos);if(n.length===l.length)C().forEach((r,i)=>{r.color=n[i].color,r.pos=n[i].pos;let c=H(r);c&&(c.style.left=r.pos*100+"%",c.style.setProperty("--stop",r.color))});else{let r=a.pos;l=n,a=l.reduce((i,c)=>Math.abs(c.pos-r)<Math.abs(i.pos-r)?c:i,l[0]),R()}f(),G(),u.set(a.color)},get:()=>D()}}V("gradient",ht);
1
+ import{a as W,b as F,c as Z,d as tt,e as I,f as et,g as ot}from"./chunk-36FYZSWP.js";import{e as J,i as Q}from"./chunk-X5DD246E.js";import{J as z,W as U,Y as V,a as X,b as $,c as q,e as Y,g as h,u as y,v as j}from"./chunk-R7BLRFON.js";var mt=U('<path d="M12 5v14m7-7H5"/>',"",2.5),lt=(o,S)=>o&&!Array.isArray(o)&&typeof o[S]=="string"?o[S]:null,nt=o=>lt(o,"interpolation"),rt=o=>lt(o,"easing"),st=[["linear","Linear"],["ease","Ease"],["ease-in","Ease in"],["ease-out","Ease out"],["ease-in-out","Ease in-out"]];function at(o){let S=[{color:"oklch(0.72 0.19 25)",pos:0},{color:"oklch(0.72 0.16 280)",pos:1}],l=Array.isArray(o)?o:o&&Array.isArray(o.stops)?o.stops:null,a=(p,O)=>tt(p)?{color:String(p).trim(),pos:h(+O||0,0,1)}:null,d=(l||[]).map(p=>Array.isArray(p)?a(p[0],p[1]):p&&typeof p=="object"?a(p.color,p.pos):null).filter(Boolean);return d.length>=2?d:S}function ht(o,S){o.value??(o.value=o.stops);let l=at(o.value),a=l[0],d=$(rt(o.value)),{root:p,trigger:O,right:it}=Q("tw-gradient",o.label??"Gradient"),k=y("span","tw-trigger-chip tw-gradient-preview");k.setAttribute("role","img"),it.append(k);let v=y("div","tw-color-pop tw-gradient-pop"),N=y("div","tw-gradient-bar-row"),B=y("div","tw-gradient-bar"),T=y("div","tw-gradient-grad"),b=y("div","tw-gradient-rail");B.append(T,b);let A=j("tw-gradient-add",mt);A.title="Add a stop after the selected one",A.setAttribute("aria-label","Add a colour stop after the selected one"),N.append(B,A);let C=()=>[...l].sort((t,e)=>t.pos-e.pos),pt=()=>W(u.mode()),D=()=>({stops:C().map(t=>({color:t.color,pos:+t.pos.toFixed(4)})),interpolation:pt(),easing:d}),f=()=>{let t=Y(D());T.style.background=t,k.style.background=`${t}, ${Z}`},G=()=>{k.setAttribute("aria-label",`${l.length} stop${l.length===1?"":"s"}`)},w=()=>S(D()),H=t=>[...b.children].find(e=>e._stop===t),u=et({value:a.color,mode:F(nt(o.value)||"oklch"),onMode:()=>{f(),w()}},t=>{a.color=t,H(a)?.style.setProperty("--stop",t),f(),w()}),g=y("select","tw-color-mode tw-gradient-ease");g.setAttribute("aria-label","Easing between stops"),g.title="How the ramp blends between stops";for(let[t,e]of st){let s=document.createElement("option");s.value=t,s.textContent=e,g.append(s)}let P=()=>{let t=g.querySelector("option[data-custom]");st.some(([e])=>e===d)?t?.remove():(t||(t=document.createElement("option"),t.dataset.custom="",t.textContent="Custom",g.append(t)),t.value=d),g.value=d};g.addEventListener("change",()=>{d=g.value,P(),f(),w()}),u.el.querySelector(".tw-color-mode").after(g),P(),v.append(N,u.el),p.append(v);let M=t=>t.setAttribute("aria-label",`Colour stop at ${Math.round(t._stop.pos*100)}%${t._stop===a?", selected":""}`),ct=()=>{for(let t of b.children)t.dataset.sel=String(t._stop===a),M(t)},R=()=>{b.replaceChildren();for(let t of l){let e=j("tw-gradient-stop");e._stop=t,e.style.left=t.pos*100+"%",e.style.setProperty("--stop",t.color),e.dataset.sel=String(t===a),M(e),e.addEventListener("focus",()=>L(t,!1));let s=!1;J(e,{onDown:n=>{n.preventDefault(),n.stopPropagation(),e.focus({focusVisible:!1}),L(t,!1),s=!1},onMove:n=>{let r=b.getBoundingClientRect();t.pos=h((n.clientX-r.left)/(r.width||1),0,1),e.style.left=t.pos*100+"%",M(e),f(),w(),s=l.length>2&&(n.clientY<r.top-24||n.clientY>r.bottom+24),e.dataset.removing=String(s)},onEnd:()=>{s?_(t):e.dataset.removing="false"}}),e.addEventListener("dblclick",n=>{n.preventDefault(),_(t)}),e.addEventListener("keydown",n=>{let r=n.key==="ArrowLeft"?-1:n.key==="ArrowRight"?1:0;r&&(n.preventDefault(),t.pos=h(t.pos+r*(n.shiftKey?.1:.01),0,1),e.style.left=t.pos*100+"%",M(e),f(),w())}),b.append(e)}},L=(t,e)=>{t!==a&&(u.set(t.color),a=t),e?R():ct()},dt=t=>{let e=b.getBoundingClientRect();return h((t-e.left)/(e.width||1),0,1)},ft=t=>{let e=C(),s=e[0],n=e[e.length-1];for(let m=0;m<e.length-1;m++)if(t>=e[m].pos&&t<=e[m+1].pos){s=e[m],n=e[m+1];break}let r=q(X(d),n.pos>s.pos?h((t-s.pos)/(n.pos-s.pos),0,1):0),i=I(s.color),c=I(n.color),x=m=>m[1]<1e-4,E=c[2]-i[2];E>180?E-=360:E<-180&&(E+=360),(x(i)||x(c))&&(E=0);let ut=(((x(i)&&!x(c)?c[2]:i[2])+E*r)%360+360)%360;return ot(i[0]+(c[0]-i[0])*r,i[1]+(c[1]-i[1])*r,ut,i[3]+(c[3]-i[3])*r)},_=t=>{if(l.length<=2)return;let e=l.indexOf(t);if(e<0)return;l.splice(e,1);let s=a===t?l[Math.max(0,e-1)]:a;f(),L(s,!0),G(),w(),H(a)?.focus()},K=t=>{let e={color:ft(t),pos:h(t,0,1)};return l.push(e),f(),L(e,!0),G(),w(),e},gt=()=>{let t=C(),e=t.indexOf(a);e<0&&(e=0);let s=e<t.length-1?(t[e].pos+t[e+1].pos)/2:e>0?(t[e-1].pos+t[e].pos)/2:h(t[e].pos+.1,0,1);K(s)};return A.addEventListener("click",t=>{t.stopPropagation(),gt()}),B.addEventListener("dblclick",t=>{t.target.closest(".tw-gradient-stop")||(t.preventDefault(),K(dt(t.clientX)))}),v.tabIndex=-1,v.addEventListener("keydown",t=>{(t.key==="Delete"||t.key==="Backspace")&&!t.altKey&&!/^(input|textarea|select)$/i.test(t.target.tagName)&&l.length>2&&(t.preventDefault(),_(a))}),z(p,O,v,{width:260,fallbackH:392,gap:6,onOpen:u.reflow,onReflow:u.reflow,initialFocus:()=>H(a)}),R(),f(),G(),{el:p,set:t=>{let e=nt(t);e&&u.setMode(F(e));let s=rt(t);s!==null&&(d=$(s),P());let n=at(t).sort((r,i)=>r.pos-i.pos);if(n.length===l.length)C().forEach((r,i)=>{r.color=n[i].color,r.pos=n[i].pos;let c=H(r);c&&(c.style.left=r.pos*100+"%",c.style.setProperty("--stop",r.color))});else{let r=a.pos;l=n,a=l.reduce((i,c)=>Math.abs(c.pos-r)<Math.abs(i.pos-r)?c:i,l[0]),R()}f(),G(),u.set(a.color)},get:()=>D()}}V("gradient",ht);
@@ -1 +1 @@
1
- import{a,b,c,d,e,f,g,h,i,j,k,l}from"./chunk-5G6TFQOD.js";import"./chunk-3GZFWFKC.js";export{c as accentColor,g as boxFrac,b as cssVar,e as dragGesture,h as fitCanvas,f as grabSurface,j as numField,d as selectAllOnFocus,l as springCurve,k as springSpan,a as svgEl,i as triggerRow};
1
+ import{a,b,c,d,e,f,g,h,i,j,k,l}from"./chunk-X5DD246E.js";import"./chunk-R7BLRFON.js";export{c as accentColor,g as boxFrac,b as cssVar,e as dragGesture,h as fitCanvas,f as grabSurface,j as numField,d as selectAllOnFocus,l as springCurve,k as springSpan,a as svgEl,i as triggerRow};
@@ -1 +1 @@
1
- import{i as u}from"./chunk-5G6TFQOD.js";import{Y as f,u as i}from"./chunk-3GZFWFKC.js";var h=n=>String(n).replace(/[\\"]/g,"\\$&").replace(/[\x00-\x1f\x7f]/g,s=>"\\"+s.charCodeAt(0).toString(16)+" ");function v(n,s){let r=n.value||"",{root:g,trigger:t,right:m}=u("tw-image",n.label);t.removeAttribute("aria-expanded"),t.setAttribute("aria-label",`${n.label}: choose an image`);let p=i("span","tw-image-text"),o=i("span","tw-trigger-chip tw-image-thumb");m.append(o,p);let a=i("input","tw-image-input");a.type="file",a.accept="image/*",g.append(a);let l=()=>{o.dataset.set=r?"true":"false",o.style.backgroundImage=r?`url("${h(r)}")`:"",p.textContent=r?"Replace":"Drop or choose"},c=e=>{if(!e||!e.type.startsWith("image/"))return;let d=new FileReader;d.onload=()=>{r=String(d.result),l(),s(r)},d.readAsDataURL(e)};return t.addEventListener("click",()=>a.click()),a.addEventListener("change",()=>{a.files[0]&&c(a.files[0])}),t.addEventListener("dragover",e=>{e.preventDefault(),t.dataset.over="true"}),t.addEventListener("dragleave",()=>{t.dataset.over="false"}),t.addEventListener("drop",e=>{e.preventDefault(),t.dataset.over="false",e.dataTransfer.files[0]&&c(e.dataTransfer.files[0])}),l(),{el:g,set:e=>{e!=null&&typeof e!="string"||(r=e||"",l())},get:()=>r}}f("image",v);
1
+ import{i as u}from"./chunk-X5DD246E.js";import{Y as f,u as i}from"./chunk-R7BLRFON.js";var h=n=>String(n).replace(/[\\"]/g,"\\$&").replace(/[\x00-\x1f\x7f]/g,s=>"\\"+s.charCodeAt(0).toString(16)+" ");function v(n,s){let r=n.value||"",{root:g,trigger:t,right:m}=u("tw-image",n.label);t.removeAttribute("aria-expanded"),t.setAttribute("aria-label",`${n.label}: choose an image`);let p=i("span","tw-image-text"),o=i("span","tw-trigger-chip tw-image-thumb");m.append(o,p);let a=i("input","tw-image-input");a.type="file",a.accept="image/*",g.append(a);let l=()=>{o.dataset.set=r?"true":"false",o.style.backgroundImage=r?`url("${h(r)}")`:"",p.textContent=r?"Replace":"Drop or choose"},c=e=>{if(!e||!e.type.startsWith("image/"))return;let d=new FileReader;d.onload=()=>{r=String(d.result),l(),s(r)},d.readAsDataURL(e)};return t.addEventListener("click",()=>a.click()),a.addEventListener("change",()=>{a.files[0]&&c(a.files[0])}),t.addEventListener("dragover",e=>{e.preventDefault(),t.dataset.over="true"}),t.addEventListener("dragleave",()=>{t.dataset.over="false"}),t.addEventListener("drop",e=>{e.preventDefault(),t.dataset.over="false",e.dataTransfer.files[0]&&c(e.dataTransfer.files[0])}),l(),{el:g,set:e=>{e!=null&&typeof e!="string"||(r=e||"",l())},get:()=>r}}f("image",v);
@@ -1 +1 @@
1
- import{e as Z}from"./chunk-5G6TFQOD.js";import{B as U,Y,g as r,j as T,k as q,l as B,n as G,o as A,p as P,q as C,u as f,w as V,y as J,z as Q}from"./chunk-3GZFWFKC.js";function nt(a,_){let E=a.label,w=+(a.value&&a.value[0]),x=+(a.value&&a.value[1]),N=Number.isFinite(w)?w:0,k=Number.isFinite(x)?x:1,[S,W]=[C(N),C(k)],R=t=>t!=null&&t!==""&&Number.isFinite(+t),{min:n,max:l,step:h}=G(R(a.min)?a.min:Math.min(S[0],W[0]),R(a.max)?a.max:Math.max(S[1],W[1]),a.step,N,k);[n,l]=B(n,l,h);let $=T(h),b=t=>q(t,n,h),i=r(b(Number.isFinite(w)?w:n),n,l),s=r(b(Number.isFinite(x)?x:l),n,l);if(i>s){let t=i;i=s,s=t}let v=f("div","tw-slider-wrap"),c=f("div","tw-slider tw-interval"),F=f("div","tw-slider-fill"),d=f("div","tw-slider-handle"),u=f("div","tw-slider-handle"),L=V("span","tw-slider-label",E),y=f("span","tw-slider-value");c.append(F,d,u,L,y),v.append(c),[["minimum",d],["maximum",u]].forEach(([t,e])=>{e.tabIndex=0,e.setAttribute("role","slider"),e.setAttribute("aria-label",`${E} ${t}`),e.setAttribute("aria-valuemin",String(n)),e.setAttribute("aria-valuemax",String(l))});let M=t=>(t-n)/(l-n||1)*100,D=t=>`clamp(5px, calc(${t}% - 1.5px), calc(100% - 9px))`,m=()=>{let t=M(i),e=M(s);F.style.left=t+"%",F.style.width=Math.max(0,e-t)+"%",d.style.left=D(t),u.style.left=D(e),y.textContent=`${i.toFixed($)} \u2013 ${s.toFixed($)}`,d.setAttribute("aria-valuenow",String(i)),u.setAttribute("aria-valuenow",String(s));let o=v.offsetWidth;if(o){L.style.maxWidth=Math.max(0,o-y.offsetWidth-12-8-10)+"px";let K=et=>P(L,y,et/100*o-1.5,3);d.classList.toggle("is-dodge",K(M(i))),u.classList.toggle("is-dodge",K(M(s)))}};m();let O=()=>_([i,s]),j=t=>{i=r(Math.min(b(t),s),n,l),m()},H=t=>{s=r(Math.max(b(t),i),n,l),m()},p=null,X=1,g=null,tt=t=>{let e=v.offsetWidth||p.width,o=r((t-p.left)/X/e,0,1);return r(n+o*(l-n),n,l)},z=t=>{let e=tt(t);g||(g=e<i?"lo":e>s?"hi":Math.abs(e-i)<=Math.abs(e-s)?"lo":"hi"),g==="lo"?j(e):H(e),O()};Z(c,{onDown:t=>{t.preventDefault(),p=v.getBoundingClientRect(),X=p.width/(v.offsetWidth||p.width),c.classList.add("is-active","is-dragging"),g=null,z(t.clientX),(g==="lo"?d:u).focus({focusVisible:!1})},onMove:t=>z(t.clientX),onEnd:()=>{p=null,g=null,c.classList.remove("is-active","is-dragging")}}),U(c,m),J(m),Q(c,[[window,"resize"],[window,"tw-reflow"]],m);let I=t=>e=>{let o=t==="lo"?A(e,i,h,n,s):A(e,s,h,i,l);o!=null&&(e.preventDefault(),t==="lo"?j(o):H(o),O())};return d.addEventListener("keydown",I("lo")),u.addEventListener("keydown",I("hi")),{el:v,set:t=>{if(Array.isArray(t)){let e=+t[0],o=+t[1];if(!Number.isFinite(e)||!Number.isFinite(o))return;i=r(b(Math.min(e,o)),n,l),s=r(b(Math.max(e,o)),n,l),m()}},get:()=>[i,s]}}Y("interval",nt);
1
+ import{e as Z}from"./chunk-X5DD246E.js";import{B as U,Y,g as r,j as T,k as q,l as B,n as G,o as A,p as P,q as C,u as f,w as V,y as J,z as Q}from"./chunk-R7BLRFON.js";function nt(a,_){let E=a.label,w=+(a.value&&a.value[0]),x=+(a.value&&a.value[1]),N=Number.isFinite(w)?w:0,k=Number.isFinite(x)?x:1,[S,W]=[C(N),C(k)],R=t=>t!=null&&t!==""&&Number.isFinite(+t),{min:n,max:l,step:h}=G(R(a.min)?a.min:Math.min(S[0],W[0]),R(a.max)?a.max:Math.max(S[1],W[1]),a.step,N,k);[n,l]=B(n,l,h);let $=T(h),b=t=>q(t,n,h),i=r(b(Number.isFinite(w)?w:n),n,l),s=r(b(Number.isFinite(x)?x:l),n,l);if(i>s){let t=i;i=s,s=t}let v=f("div","tw-slider-wrap"),c=f("div","tw-slider tw-interval"),F=f("div","tw-slider-fill"),d=f("div","tw-slider-handle"),u=f("div","tw-slider-handle"),L=V("span","tw-slider-label",E),y=f("span","tw-slider-value");c.append(F,d,u,L,y),v.append(c),[["minimum",d],["maximum",u]].forEach(([t,e])=>{e.tabIndex=0,e.setAttribute("role","slider"),e.setAttribute("aria-label",`${E} ${t}`),e.setAttribute("aria-valuemin",String(n)),e.setAttribute("aria-valuemax",String(l))});let M=t=>(t-n)/(l-n||1)*100,D=t=>`clamp(5px, calc(${t}% - 1.5px), calc(100% - 9px))`,m=()=>{let t=M(i),e=M(s);F.style.left=t+"%",F.style.width=Math.max(0,e-t)+"%",d.style.left=D(t),u.style.left=D(e),y.textContent=`${i.toFixed($)} \u2013 ${s.toFixed($)}`,d.setAttribute("aria-valuenow",String(i)),u.setAttribute("aria-valuenow",String(s));let o=v.offsetWidth;if(o){L.style.maxWidth=Math.max(0,o-y.offsetWidth-12-8-10)+"px";let K=et=>P(L,y,et/100*o-1.5,3);d.classList.toggle("is-dodge",K(M(i))),u.classList.toggle("is-dodge",K(M(s)))}};m();let O=()=>_([i,s]),j=t=>{i=r(Math.min(b(t),s),n,l),m()},H=t=>{s=r(Math.max(b(t),i),n,l),m()},p=null,X=1,g=null,tt=t=>{let e=v.offsetWidth||p.width,o=r((t-p.left)/X/e,0,1);return r(n+o*(l-n),n,l)},z=t=>{let e=tt(t);g||(g=e<i?"lo":e>s?"hi":Math.abs(e-i)<=Math.abs(e-s)?"lo":"hi"),g==="lo"?j(e):H(e),O()};Z(c,{onDown:t=>{t.preventDefault(),p=v.getBoundingClientRect(),X=p.width/(v.offsetWidth||p.width),c.classList.add("is-active","is-dragging"),g=null,z(t.clientX),(g==="lo"?d:u).focus({focusVisible:!1})},onMove:t=>z(t.clientX),onEnd:()=>{p=null,g=null,c.classList.remove("is-active","is-dragging")}}),U(c,m),J(m),Q(c,[[window,"resize"],[window,"tw-reflow"]],m);let I=t=>e=>{let o=t==="lo"?A(e,i,h,n,s):A(e,s,h,i,l);o!=null&&(e.preventDefault(),t==="lo"?j(o):H(o),O())};return d.addEventListener("keydown",I("lo")),u.addEventListener("keydown",I("hi")),{el:v,set:t=>{if(Array.isArray(t)){let e=+t[0],o=+t[1];if(!Number.isFinite(e)||!Number.isFinite(o))return;i=r(b(Math.min(e,o)),n,l),s=r(b(Math.max(e,o)),n,l),m()}},get:()=>[i,s]}}Y("interval",nt);
@@ -1,2 +1,2 @@
1
- import{c as T,h as D}from"./chunk-5G6TFQOD.js";import{X as y,Y as j,g as q,s as L,u as R,w as S}from"./chunk-3GZFWFKC.js";var G=(n,o,u,m,p,k,N)=>{let r=p.length;n.clearRect(0,0,u,m),n.strokeStyle=T(o),n.lineWidth=1.5,n.lineJoin="round",n.beginPath();let s=!1;for(let l=0;l<r;l++){let a=p[(k+l)%r];if(Number.isNaN(a))continue;let w=l/(r-1)*u,b=m-q(N(a),0,1)*m;s?n.lineTo(w,b):(n.moveTo(w,b),s=!0)}n.stroke()},H=n=>{for(let o of["resize","tw-reflow"])window.addEventListener(o,n);return()=>{for(let o of["resize","tw-reflow"])window.removeEventListener(o,n)}};function J(n,o=!1){let u=typeof n.get=="function"?n.get:()=>n.value,m=Math.max(30,Number.isFinite(+n.interval)?+n.interval:200),p;try{p=u()}catch{}let k=typeof p=="number",N=n.view==="graph"||k&&n.graph!==!1&&n.view!=="text"&&n.rows==null,r=R("div","tw-fps tw-monitor"),s=S("span","tw-fps-val","\u2014");r.append(S("span","tw-fps-label",n.label??"Monitor"),s);let l=0,a=0,w=()=>{},b=!1,W=Number.isFinite(+n.decimals)?Math.min(20,Math.max(0,Math.floor(+n.decimals))):2,d=e=>e==null?"\u2014":typeof e=="number"?Number.isInteger(e)||!Number.isFinite(e)?String(e):e.toFixed(W):typeof e=="object"?L(e):String(e),h=()=>{l&&clearInterval(l),l=0,a&&cancelAnimationFrame(a),a=0,w()},v=e=>{let i=f=>{if(o&&(a=requestAnimationFrame(i)),!r.isConnected){b&&h();return}b=!0;let t;try{t=u(f)}catch{return}e(t)};o?a=requestAnimationFrame(i):l=setInterval(i,m)};if(!N&&n.rows){s.remove();let e=Math.max(1,Math.floor(+n.rows)||1),i=R("pre","tw-monitor-buffer");i.style.setProperty("--tw-monitor-rows",e),r.append(i);let f=[];return v(t=>{for(f.push(d(t));f.length>e;)f.shift();i.textContent=f.join(`
1
+ import{c as T,h as D}from"./chunk-X5DD246E.js";import{X as y,Y as j,g as q,s as L,u as R,w as S}from"./chunk-R7BLRFON.js";var G=(n,o,u,m,p,k,N)=>{let r=p.length;n.clearRect(0,0,u,m),n.strokeStyle=T(o),n.lineWidth=1.5,n.lineJoin="round",n.beginPath();let s=!1;for(let l=0;l<r;l++){let a=p[(k+l)%r];if(Number.isNaN(a))continue;let w=l/(r-1)*u,b=m-q(N(a),0,1)*m;s?n.lineTo(w,b):(n.moveTo(w,b),s=!0)}n.stroke()},H=n=>{for(let o of["resize","tw-reflow"])window.addEventListener(o,n);return()=>{for(let o of["resize","tw-reflow"])window.removeEventListener(o,n)}};function J(n,o=!1){let u=typeof n.get=="function"?n.get:()=>n.value,m=Math.max(30,Number.isFinite(+n.interval)?+n.interval:200),p;try{p=u()}catch{}let k=typeof p=="number",N=n.view==="graph"||k&&n.graph!==!1&&n.view!=="text"&&n.rows==null,r=R("div","tw-fps tw-monitor"),s=S("span","tw-fps-val","\u2014");r.append(S("span","tw-fps-label",n.label??"Monitor"),s);let l=0,a=0,w=()=>{},b=!1,W=Number.isFinite(+n.decimals)?Math.min(20,Math.max(0,Math.floor(+n.decimals))):2,d=e=>e==null?"\u2014":typeof e=="number"?Number.isInteger(e)||!Number.isFinite(e)?String(e):e.toFixed(W):typeof e=="object"?L(e):String(e),h=()=>{l&&clearInterval(l),l=0,a&&cancelAnimationFrame(a),a=0,w()},v=e=>{let i=f=>{if(o&&(a=requestAnimationFrame(i)),!r.isConnected){b&&h();return}b=!0;let t;try{t=u(f)}catch{return}e(t)};o?a=requestAnimationFrame(i):l=setInterval(i,m)};if(!N&&n.rows){s.remove();let e=Math.max(1,Math.floor(+n.rows)||1),i=R("pre","tw-monitor-buffer");i.style.setProperty("--tw-monitor-rows",e),r.append(i);let f=[];return v(t=>{for(f.push(d(t));f.length>e;)f.shift();i.textContent=f.join(`
2
2
  `)}),y(r,h)}if(!N)return v(e=>{s.textContent=d(e)}),y(r,h);let C=document.createElement("canvas");C.className="tw-fps-canvas",r.append(C);let F=C.getContext("2d");if(!F)return v(e=>{s.textContent=d(e)}),y(r,h);let A=80,I=new Array(A).fill(NaN),x=0,M=0,E=0,z=()=>{[M,E]=D(C,F,2)};w=H(z);let B=()=>{if(M||z(),!M)return;let e=n.min,i=n.max;if(e==null||i==null){let t=1/0,c=-1/0;for(let g of I)Number.isFinite(g)&&(g<t&&(t=g),g>c&&(c=g));t===1/0?(t=0,c=1):t===c&&(t-=.5,c+=.5);let P=(c-t)*.1;e==null&&(e=t-P),i==null&&(i=c+P)}let f=i-e||1;G(F,r,M,E,I,x,t=>(t-e)/f)};return v(e=>{if(typeof e!="number"||!Number.isFinite(e)){s.textContent=d(e);return}I[x]=e,x=(x+1)%A,s.textContent=d(e),B()}),y(r,h)}var K=()=>{let n=0;return o=>{if(!(o>0))return;let u=n?1e3/(o-n):void 0;return n=o,u}},O=n=>J({...n,label:n.label??"FPS",get:K(),view:"graph",min:0,max:120,decimals:0},!0);j("fpsgraph",O);j("monitor",n=>J(n));