PageSourceSearch

https://jack.art/_next/static/chunks/5443.0ef35115ae0d9f1c.js

js jack.art collected 2026-10-04 20:11:21 UTC 3,048 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[520,5443],{20363:(t,e,a)=>{function r(t,e){return t<=1||"Aligned"===e?Array(t).fill(0):Array.from({length:t},(e,a)=>-30+60*a/(t-1))}function n(t,e,a){return t>1&&"Divergent"===e&&a%2==1?-1:1}function i(t,e){return 1===t?"Solo":"Divergent"===e?"Counter-rotating":"Synchronized"}a.d(e,{Jg:()=>i,ah:()=>r,s0:()=>n})},60520:(t,e,a)=>{a.r(e),a.d(e,{portrait:()=>i});var r=a(20363),n=a(66463);function i(t,e,a,i,l){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,d=arguments.length>6&&void 0!==arguments[6]?arguments[6]:"Divergent";(e.width!==l||e.height!==l)&&(e.width=e.height=l),(a.width!==l||a.height!==l)&&(a.width=a.height=l);let h=e.getContext("2d"),u=a.getContext("2d",{willReadFrequently:!0});h.globalCompositeOperation="source-over",h.fillStyle="#000",h.fillRect(0,0,l,l);let g=(0,r.ah)(i.count,d);for(let[e,n]of i.layers.entries()){let f=i.startAngle+g[e]+o*(0,r.s0)(i.count,d,e);t.draw(a,{...n.params,yaw:f,azimuth:n.params.azimuth+f},n.identity,n.seed);let s=u.getImageData(0,0,l,l),c=[1,3,5].map(t=>parseInt(n.color.slice(t,t+2),16));for(let t=0;t<s.data.length;t+=4){let e=1-s.data[t]/255;s.data[t]=c[0],s.data[t+1]=c[1],s.data[t+2]=c[2],s.data[t+3]=Math.round(255*e)}u.putImageData(s,0,0),h.globalCompositeOperation="screen",h.drawImage(a,.075*l,.075*l,.85*l,.85*l)}h.globalCompositeOperation="source-over";let f=h.getImageData(0,0,l,l);(0,n.t)(f.data),h.putImageData(f,0,0)}},65443:(t,e,a)=>{a.d(e,{createFaceGif:()=>d});var r=a(30902),n=a(4581),i=a(34444),l=a(60520),o=a(68054);async function d(t,e,a,d,h,u,g){var f,s;let c=arguments.length>7&&void 0!==arguments[7]&&arguments[7];if(!Number.isSafeInteger(e)||e<1||e>1e6)throw Error("INVALID FACE.");let m=new n.GnmPortraitRenderer(t,12),p=c?(0,o.mZ)(e):null,w=null!=(f=null==p?void 0:p.output)?f:(0,i.kycOutput)(e),y=a.getContext("2d",{willReadFrequently:!0});if(!y)throw Error("CANVAS UNAVAILABLE.");for(let[t,e]of[720,540,360].entries()){a.width=a.height=e;let n=(0,r.GIFEncoder)();for(let a=0;a<96;a++){if(g())throw new DOMException("Cancelled","AbortError");(0,l.portrait)(m,d,h,w,e,a/96*360,null!=(s=null==p?void 0:p.alignment)?s:"Divergent"),y.fillStyle="#000",y.fillRect(0,0,e,e),y.drawImage(d,-(.05*e),-(.05*e),1.1*e,1.1*e);let i=y.getImageData(0,0,e,e).data,o=(0,r.quantize)(i,256);n.writeFrame((0,r.applyPalette)(i,o),e,e,{palette:o,delay:(Math.round((a+1)*468/96)-Math.round(468*a/96))*10,repeat:0,dispose:1}),u(Math.round((96*t+a+1)/288*99)),await new Promise(t=>setTimeout(t,0))}n.finish();let i=n.bytes();if(i.byteLength<=49e5)return u(100),new Blob([new Uint8Array(i)],{type:"image/gif"})}throw Error("GIF TOO LARGE. PLEASE TRY ANOTHER FACE.")}},66463:(t,e,a)=>{a.d(e,{t:()=>r});function r(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1.65;for(let a=0;a<t.length;a+=4){let r=t[a],n=t[a+1],i=t[a+2],l=Math.max(r,n,i),o=l-Math.min(r,n,i);if(0===o)continue;let d=Math.min(e,l/o);t[a]=Math.round(l-(l-r)*d),t[a+1]=Math.round(l-(l-n)*d),t[a+2]=Math.round(l-(l-i)*d)}}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.