PageSourceSearch

https://www.framecompose.com/_next/static/chunks/8646-b8db8dfd03fa4297.js

js framecompose.com collected 2026-09-24 14:44:05 UTC 29,557 bytes, 1 lines download raw bytes

1!function(){try{var e="u">typeof window?window:"u">typeof global?global:"u">typeof globalThis?globalThis:"u">typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="16c9daba-5427-4fc4-bf39-c610e6b75a5f",e._sentryDebugIdIdentifier="sentry-dbid-16c9daba-5427-4fc4-bf39-c610e6b75a5f")}catch(e){}}();"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8646],{36265:(e,t,r)=>{r.d(t,{t:()=>y});var i=r(95155),a=r(12115),n=r(28086);function o(e,t,r,i){return Number.isFinite(e)?Math.min(r,Math.max(t,Number(e))):i}function l(e){return"fairy-bloom"===e?"magic-bloom":"wind-wisps"===e?"wind-wisps":"magic-bloom"===e?"magic-bloom":"fireflies"===e?"fireflies":"storybook-god-rays"===e?"storybook-god-rays":"magic-ripple"===e?"magic-ripple":"spirit-wisps"===e?"spirit-wisps":"sparkle-burst"}function s(e){return[Math.round(o(e.particleCount,16,260,96)),String(e.seed??""),l(e.styleVariant)].join(":")}function d(e){let t=e()*Math.PI*2,r=Math.sqrt(e());return{fieldXNorm:Math.cos(t)*r,fieldYNorm:Math.sin(t)*r}}function h(e,t,r){return r<=0?0:Math.pow(Math.max(.001,e),.72)*t*r}function g(e,t,r,i){let a=o(i.fieldSpread,0,1,0);if(a<=0)return{x:e,y:t};let n=i.radius*(.5+.9*r.depth);return{x:e*(1-a)+(i.centerX+r.fieldXNorm*n)*a,y:t*(1-a)+(i.centerY+r.fieldYNorm*n)*a}}let u=null;async function c(){return u||(u=Promise.all([r.e(2524),r.e(124)]).then(r.bind(r,50124)).then(()=>Promise.all([r.e(2524),r.e(7819)]).then(r.bind(r,37819))).then(e=>({Application:e.Application,BlurFilter:e.BlurFilter,Container:e.Container,Sprite:e.Sprite,Texture:e.Texture})).catch(e=>(console.warn("[VFX] Pixi module failed to load:",e),null))),u}function f(e,t,r,i){return Number.isFinite(e)?Math.max(t,Math.min(r,e)):i}function p(e){return"wind-wisps"===e?{sparkTint:0xd8e7ff,wispTint:0xd2e8ff,orbTint:0xe1f2ff,rayTint:0xd6e9ff,ringTint:0xcce4ff,glowTint:0xb9dcff,glowAlphaMultiplier:.7,sparkInner:"rgba(246, 252, 255, 1)",sparkOuter:"rgba(186, 218, 255, 0)",sparkCross:"rgba(212, 234, 255, 0.88)",sparkCrossSoft:"rgba(176, 209, 255, 0.52)",wispStart:"rgba(180, 214, 255, 0)",wispMid:"rgba(211, 235, 255, 0.8)",wispCore:"rgba(242, 250, 255, 0.98)",wispEnd:"rgba(180, 214, 255, 0)",glowInner:"rgba(235, 247, 255, 0.96)",glowMid:"rgba(190, 224, 255, 0.74)",glowOuter:"rgba(145, 190, 255, 0)",orbInner:"rgba(250, 254, 255, 0.98)",orbMid:"rgba(216, 237, 255, 0.72)",orbOuter:"rgba(163, 205, 255, 0)",rayInner:"rgba(237, 248, 255, 0.74)",rayOuter:"rgba(167, 204, 255, 0)",ringInner:"rgba(232, 247, 255, 0.88)",ringOuter:"rgba(178, 217, 255, 0)"}:"magic-bloom"===e||"fairy-bloom"===e?{sparkTint:0xf2b8ff,wispTint:0xf6c6ff,orbTint:0xfce0ff,rayTint:0xf8d2ff,ringTint:0xebadff,glowTint:0xe8a0ff,glowAlphaMultiplier:.8,sparkInner:"rgba(255, 249, 255, 1)",sparkOuter:"rgba(246, 194, 255, 0)",sparkCross:"rgba(255, 231, 255, 0.94)",sparkCrossSoft:"rgba(236, 160, 255, 0.64)",wispStart:"rgba(255, 205, 255, 0)",wispMid:"rgba(255, 232, 255, 0.86)",wispCore:"rgba(255, 255, 255, 0.99)",wispEnd:"rgba(255, 205, 255, 0)",glowInner:"rgba(255, 242, 255, 0.98)",glowMid:"rgba(242, 180, 255, 0.82)",glowOuter:"rgba(207, 130, 255, 0)",orbInner:"rgba(255, 248, 255, 0.98)",orbMid:"rgba(246, 206, 255, 0.76)",orbOuter:"rgba(214, 149, 255, 0)",rayInner:"rgba(255, 238, 255, 0.78)",rayOuter:"rgba(226, 163, 255, 0)",ringInner:"rgba(252, 229, 255, 0.92)",ringOuter:"rgba(225, 152, 255, 0)"}:"fireflies"===e?{sparkTint:0xffe68c,wispTint:0xffe9b2,orbTint:0xfff2a8,rayTint:0xffe39b,ringTint:0xffde7a,glowTint:0xffd56a,glowAlphaMultiplier:.74,sparkInner:"rgba(255, 253, 220, 1)",sparkOuter:"rgba(255, 214, 92, 0)",sparkCross:"rgba(255, 242, 186, 0.9)",sparkCrossSoft:"rgba(255, 219, 120, 0.56)",wispStart:"rgba(255, 224, 144, 0)",wispMid:"rgba(255, 240, 184, 0.82)",wispCore:"rgba(255, 252, 224, 0.98)",wispEnd:"rgba(255, 224, 144, 0)",glowInner:"rgba(255, 247, 196, 0.96)",glowMid:"rgba(255, 220, 116, 0.74)",glowOuter:"rgba(255, 177, 70, 0)",orbInner:"rgba(255, 255, 218, 1)",orbMid:"rgba(255, 233, 138, 0.82)",orbOuter:"rgba(255, 193, 77, 0)",rayInner:"rgba(255, 241, 176, 0.74)",rayOuter:"rgba(255, 197, 92, 0)",ringInner:"rgba(255, 236, 162, 0.86)",ringOuter:"rgba(255, 194, 84, 0)"}:"storybook-god-rays"===e?{sparkTint:0xffeac6,wispTint:0xfff1d9,orbTint:0xffefd0,rayT
1int:0xffe0a8,ringTint:0xffdb9b,glowTint:16763e3,glowAlphaMultiplier:.68,sparkInner:"rgba(255, 252, 242, 1)",sparkOuter:"rgba(255, 221, 170, 0)",sparkCross:"rgba(255, 241, 208, 0.88)",sparkCrossSoft:"rgba(255, 210, 152, 0.52)",wispStart:"rgba(255, 230, 184, 0)",wispMid:"rgba(255, 241, 214, 0.82)",wispCore:"rgba(255, 252, 242, 0.98)",wispEnd:"rgba(255, 230, 184, 0)",glowInner:"rgba(255, 249, 228, 0.94)",glowMid:"rgba(255, 224, 168, 0.74)",glowOuter:"rgba(255, 181, 117, 0)",orbInner:"rgba(255, 250, 232, 0.98)",orbMid:"rgba(255, 231, 178, 0.74)",orbOuter:"rgba(255, 190, 130, 0)",rayInner:"rgba(255, 247, 226, 0.84)",rayOuter:"rgba(255, 202, 126, 0)",ringInner:"rgba(255, 235, 193, 0.9)",ringOuter:"rgba(255, 196, 124, 0)"}:"magic-ripple"===e?{sparkTint:0xbfe3ff,wispTint:0xb5f2ff,orbTint:0xccf7ff,rayTint:0xacddff,ringTint:9159935,glowTint:7514871,glowAlphaMultiplier:.82,sparkInner:"rgba(242, 251, 255, 1)",sparkOuter:"rgba(150, 201, 255, 0)",sparkCross:"rgba(214, 240, 255, 0.92)",sparkCrossSoft:"rgba(124, 184, 255, 0.6)",wispStart:"rgba(150, 222, 255, 0)",wispMid:"rgba(205, 242, 255, 0.84)",wispCore:"rgba(238, 252, 255, 0.98)",wispEnd:"rgba(150, 222, 255, 0)",glowInner:"rgba(221, 245, 255, 0.98)",glowMid:"rgba(150, 205, 255, 0.8)",glowOuter:"rgba(95, 146, 232, 0)",orbInner:"rgba(236, 250, 255, 1)",orbMid:"rgba(181, 224, 255, 0.76)",orbOuter:"rgba(117, 170, 240, 0)",rayInner:"rgba(223, 246, 255, 0.76)",rayOuter:"rgba(120, 180, 245, 0)",ringInner:"rgba(194, 229, 255, 0.96)",ringOuter:"rgba(110, 170, 242, 0)"}:"spirit-wisps"===e?{sparkTint:0xc8f4ff,wispTint:0xbff8ff,orbTint:0xdbf7ff,rayTint:0xb6f0ff,ringTint:9690111,glowTint:8703743,glowAlphaMultiplier:.76,sparkInner:"rgba(245, 255, 255, 1)",sparkOuter:"rgba(173, 231, 255, 0)",sparkCross:"rgba(220, 247, 255, 0.9)",sparkCrossSoft:"rgba(155, 221, 255, 0.55)",wispStart:"rgba(168, 229, 255, 0)",wispMid:"rgba(214, 247, 255, 0.86)",wispCore:"rgba(244, 255, 255, 0.99)",wispEnd:"rgba(168, 229, 255, 0)",glowInner:"rgba(223, 249, 255, 0.96)",glowMid:"rgba(163, 223, 255, 0.76)",glowOuter:"rgba(119, 190, 243, 0)",orbInner:"rgba(236, 254, 255, 0.98)",orbMid:"rgba(190, 236, 255, 0.78)",orbOuter:"rgba(131, 196, 243, 0)",rayInner:"rgba(228, 250, 255, 0.78)",rayOuter:"rgba(147, 212, 247, 0)",ringInner:"rgba(205, 240, 255, 0.9)",ringOuter:"rgba(138, 202, 245, 0)"}:{sparkTint:0xf7d88a,wispTint:0xffe6ba,orbTint:0xffe8ad,rayTint:0xffddb2,ringTint:0xffd093,glowTint:0xffd49c,glowAlphaMultiplier:.62,sparkInner:"rgba(255, 255, 250, 1)",sparkOuter:"rgba(255, 234, 174, 0)",sparkCross:"rgba(255, 247, 224, 0.88)",sparkCrossSoft:"rgba(255, 235, 184, 0.5)",wispStart:"rgba(255, 230, 186, 0)",wispMid:"rgba(255, 240, 214, 0.76)",wispCore:"rgba(255, 255, 255, 0.96)",wispEnd:"rgba(255, 230, 186, 0)",glowInner:"rgba(255, 250, 230, 0.95)",glowMid:"rgba(255, 228, 170, 0.72)",glowOuter:"rgba(255, 190, 120, 0)",orbInner:"rgba(255, 252, 232, 1)",orbMid:"rgba(255, 234, 168, 0.76)",orbOuter:"rgba(255, 191, 112, 0)",rayInner:"rgba(255, 246, 220, 0.76)",rayOuter:"rgba(255, 198, 133, 0)",ringInner:"rgba(255, 231, 176, 0.9)",ringOuter:"rgba(255, 195, 114, 0)"}}function b(e,t,r){return{sparkTexture:function(e,t,r){let i=document.createElement("canvas");i.width=80,i.height=80;let a=i.getContext("2d");if(!a)return e.EMPTY;let n=a.createRadialGradient(40,40,0,40,40,22);return n.addColorStop(0,r.sparkInner),n.addColorStop(1,r.sparkOuter),a.fillStyle=n,a.beginPath(),a.arc(40,40,22,0,2*Math.PI),a.fill(),a.strokeStyle=r.sparkCross,a.lineWidth=3.2,a.lineCap="round",a.beginPath(),a.moveTo(12,40),a.lineTo(68,40),a.moveTo(40,12),a.lineTo(40,68),a.stroke(),a.save(),a.translate(40,40),a.rotate(Math.PI/4),a.strokeStyle=r.sparkCrossSoft,a.lineWidth=2,a.beginPath(),a.moveTo(-16,0),a.lineTo(16,0),a.moveTo(0,-16),a.lineTo(0,16),a.stroke(),a.restore(),("magic-bloom"===t||"fairy-bloom"===t)&&(a.save(),a.translate(40,40),a.rotate(Math.PI/8),a.strokeStyle="rgba(231, 158, 255, 0.5)",a.lineWidth=1.4,a.beginPath(),a.moveTo(-10,-22),a.lineTo(10,22),a.moveTo(-22,-10),a.lineTo(22,10),a.stroke(),a.restore()),e.from(i)}(e,t,r),wispTexture:function(e,t){let r=document.createElement("canvas");r.width=128,r.height=56;let i=r.getContext("2d");if(!i)return e.EMPTY;let a=i.createLinearGradient(0,28,128,28);return a.addColorStop(0,t.wispStart),a.addColorStop(.22,t.wispMid),a.addColorStop(.5,t.wispCore),a.addColorStop(.78,t.wispMid),a.addColorStop(1,t.wispEnd),i.fillStyle=a,i.beginPath(),i.ellipse(64,28,60,11,0,0,2*Math.PI),i.fill(),e.from(r)}(e,r),orbTexture:function(e,t){let r=document.createElement("canvas");r.width=72,r.height=72;let i=r.getContext("2d");if(!i)return e.EMPTY;let a=i.createRadialGradient(36,36,0,36,36,36);return a.addColorStop(0,t.orbInner),a.addColorStop(.36,t.orbMid),a.addColorStop(1,t.orbOuter),i.fillStyle=a,i.beginPath(),i.arc(36,36,36,0,2*Math.PI),i.fill(),e.from(r)}(e,r),rayTexture:function(e,t){let r=document.createElement("canvas");r.width=84,r.height=260;let i=r.getContext("2d");if(!i)return e.EMPTY;let a=i.createLinearGradient(42,0,42,260);return a.addColorStop(0,t.rayInner),a.addColorStop(1,t.rayOuter),i.fillStyle=a,i.beginPath(),i.ellipse(42,130,20,124,0,0,2*Math.PI),i.fill(),e.from(r)}(e,r),ringTexture:function(e,t){let r=document.createElement("canvas");r.width=110,r.height=110;let i=r.getContext("2d");if(!i)return e.EMPTY;i.lineWidth=10;let a=i.createRadialGradient(55,55,22,55,55,52);return a.addColorStop(0,t.ringInner),a.addColorStop(1,t.ringOuter),i.strokeStyle=a,i.beginPath(),i.arc(55,55,38,0,2*Math.PI),i.stroke(),e.from(r)}(e,r),glowTexture:function(e,t){let r=document.createElement("canvas");r.width=96,r.height=96;let i=r.getContext("2d");if(!i)return e.EMPTY;let a=i.createRadialGradient(48,48,0,48,48,48);return a.addColorStop(0,t.glowInner),a.addColorStop(.3,t.glowMid),a.addColorStop(1,t.glowOuter),i.fillStyle=a,i.beginPath(),i.arc(48,48,48,0,2*Math.PI),i.fill(),e.from(r)}(e,r)}}function m(e){e.sparkTexture.destroy(!0),e.wispTexture.destroy(!0),e.orbTexture.destroy(!0),e.rayTexture.destroy(!0),e.ringTexture.destroy(!0),e.glowTexture.destroy(!0)}function w(e,t){return"wisp"===t?e.wispTexture:"orb"===t?e.orbTexture:"ray"===t?e.rayTexture:"ring"===t?e.ringTexture:e.sparkTexture}function M(e,t,r){return null!==r&&"spark"===e?r:"wisp"===e?t.wispTint:"orb"===e?t.orbTint:"ray"===e?t.rayTint:"ring"===e?t.ringTint:t.sparkTint}function y({config:e,currentTimeSec:t,className:r,style:u}){let x=(0,a.useRef)(null),k=(0,a.useRef)(e),v=(0,a.useRef)(t),N=(0,a.useRef)(null),S=(0,a.useRef)(!0),T=(0,a.useRef)(0),I=(0,a.useRef)(t),P=e=>{let t=N.current;if(t?.ticker&&(T.current=0,!t.ticker.started))try{t.ticker.start()}catch{}};return(0,a.useEffect)(()=>{k.current=e,P("config-change")},[e]),(0,a.useEffect)(()=>{v.current=t,I.current!==t&&(I.current=t,P("time-change"))},[t]),(0,a.useEffect)(()=>{let e=!1,t=null;return(async()=>{let r=x.current;if(!r)return;let i=await c();if(!i)return;let{Application:a,BlurFilter:u,Container:y,Sprite:P,Texture:C}=i,O=new a;
1if(await O.init({antialias:!0,autoDensity:!0,backgroundAlpha:0,preference:"webgl",resizeTo:r,sharedTicker:!0}),e)return void O.destroy(!0);N.current=O,r.appendChild(O.canvas),O.canvas.style.width="100%",O.canvas.style.height="100%";let _=new y,Y=new y,X=new y;Y.filters=[new u({quality:2,strength:7})],_.addChild(Y),_.addChild(X),O.stage.addChild(_);let E=l(k.current.styleVariant),R=p(E),F=b(C,E,R),A=[],V=[],W=[],H="",z=!1,D="",L=()=>{let e=Number(O.screen?.width),t=Number(O.screen?.height);if(Number.isFinite(e)&&e>0&&Number.isFinite(t)&&t>0)return{width:e,height:t};let i=r.getBoundingClientRect();return{width:Math.max(1,i.width||O.renderer.width||1),height:Math.max(1,i.height||O.renderer.height||1)}},B=(e,t,r)=>{let i=l(e.styleVariant),a="number"==typeof e.radiusNorm&&Number.isFinite(e.radiusNorm)?e.radiusNorm:null;return{centerX:f(e.x,0,1,.5)*t,centerY:f(e.y,0,1,.5)*r,radius:null===a?Math.max(24,e.radius):Math.max(24,Math.min(t,r)*a),radiusNorm:null===a?void 0:a,particleCount:e.particleCount,speed:e.speed,opacity:e.opacity,sparkleSize:e.sparkleSize,fieldSpread:f(e.fieldSpread??NaN,0,1,.32),glowStrength:f(e.glowStrength??NaN,0,1.5,.72),seed:e.seed,styleVariant:i}},G=()=>{for(let e of[...X.removeChildren(),...Y.removeChildren()])e.destroy();A.length=0,V.length=0,W.length=0},q=()=>{var e;G();let t=k.current,{width:r,height:i}=L(),a=B(t,r,i);(e=a.styleVariant)!==E&&(m(F),R=p(E=l(e)),F=b(C,E,R));let n=function(e){let t,r=l(e.styleVariant),i=Math.round(o(e.particleCount,16,260,96)),a=(t=function(e){let t=String(e??"overlay-vfx"),r=0x811c9dc5;for(let e=0;e<t.length;e+=1)r^=t.charCodeAt(e),r=Math.imul(r,0x1000193);return r>>>0}(e.seed)>>>0,()=>{let e=Math.imul((t+=0x6d2b79f5)^t>>>15,1|t);return(((e^=e+Math.imul(e^e>>>7,61|e))^e>>>14)>>>0)/0x100000000}),n="wind-wisps"===r?[{kind:"wisp",weight:.72},{kind:"orb",weight:.2},{kind:"spark",weight:.08}]:"magic-bloom"===r?[{kind:"spark",weight:.5},{kind:"orb",weight:.28},{kind:"wisp",weight:.22}]:"fireflies"===r?[{kind:"orb",weight:.76},{kind:"spark",weight:.18},{kind:"wisp",weight:.06}]:"storybook-god-rays"===r?[{kind:"ray",weight:.26},{kind:"orb",weight:.46},{kind:"spark",weight:.28}]:"magic-ripple"===r?[{kind:"ring",weight:.16},{kind:"spark",weight:.42},{kind:"orb",weight:.32},{kind:"wisp",weight:.1}]:"spirit-wisps"===r?[{kind:"wisp",weight:.62},{kind:"orb",weight:.26},{kind:"spark",weight:.12}]:[{kind:"spark",weight:.6},{kind:"wisp",weight:.24},{kind:"orb",weight:.16}],s="storybook-god-rays"===r?Math.max(6,Math.min(18,Math.round(.2*i))):0,h="magic-ripple"===r?Math.max(4,Math.min(16,Math.round(.12*i))):0,g=[];for(let e=0;e<i;e+=1){let t=function(e,t){let r=t.reduce((e,t)=>e+Math.max(0,t.weight),0);if(r<=0)return"spark";let i=e()*r;for(let e of t)if((i-=Math.max(0,e.weight))<=0)return e.kind;return t[t.length-1]?.kind??"spark"}(a,n);e<s?t="ray":e<h&&(t="ring"),"storybook-god-rays"===r?g.push(function(e,t){let r=d(e);return"ray"===t?{kind:t,orbitNorm:e(),angle:-.22+.44*e(),angularVelocity:(e()-.5)*.08,driftNorm:.35+.48*e(),driftPhase:e()*Math.PI*2,twinkleRate:.22+.54*e(),twinkleOffset:e()*Math.PI*2,scaleNorm:1.9+2.6*e(),lifeOffset:e(),depth:.4+.6*e(),fieldXNorm:r.fieldXNorm,fieldYNorm:r.fieldYNorm}:{kind:t,orbitNorm:Math.pow(e(),.78),angle:e()*Math.PI*2,angularVelocity:(e()-.5)*.34,driftNorm:.22+.52*e(),driftPhase:e()*Math.PI*2,twinkleRate:.6+1.4*e(),twinkleOffset:e()*Math.PI*2,scaleNorm:"orb"===t?.9+.9*e():.54+.68*e(),lifeOffset:e(),depth:.2+.8*e(),fieldXNorm:r.fieldXNorm,fieldYNorm:r.fieldYNorm}}(a,t)):"magic-ripple"===r?g.push(function(e,t){let r=d(e);return"ring"===t?{kind:t,orbitNorm:.08+.2*e(),angle:e()*Math.PI*2,angularVelocity:.22+.32*e(),driftNorm:.05+.12*e(),driftPhase:e()*Math.PI*2,twinkleRate:.58+1.1*e(),twinkleOffset:e()*Math.PI*2,scaleNorm:.9+1.6*e(),lifeOffset:e(),depth:.35+.65*e(),fieldXNorm:r.fieldXNorm,fieldYNorm:r.fieldYNorm}:{kind:t,orbitNorm:Math.pow(e(),.55),angle:e()*Math.PI*2,angularVelocity:(e()>.5?1:-1)*(.24+.52*e()),driftNorm:.14+.42*e(),driftPhase:e()*Math.PI*2,twinkleRate:.9+2.1*e(),twinkleOffset:e()*Math.PI*2,scaleNorm:"wisp"===t?.85+1.2*e():"orb"===t?.75+ +e():.52+.9*e(),lifeOffset:e(),depth:.22+.78*e(),fieldXNorm:r.fieldXNorm,fieldYNorm:r.fieldYNorm}}(a,t)):g.push(function(e,t,r){let i="fireflies"===r,a="magic-bloom"===r,n="wind-wisps"===r,o="spirit-wisps"===r,l=e()>.5?1:-1,s=d(e),h="wisp"===t?.92+1.35*e():"orb"===t?.88+1.24*e():.62+1.08*e();return{kind:t,orbitNorm:Math.pow(e(),a?.42:i?.86:o?.62:n?.71:.58),angle:e()*Math.PI*2,angularVelocity:l*(.16+e()*("wisp"===t?.42:"orb"===t?.3:.84))*(i?.34:o?.7:n?.78:1),driftNorm:.2+e()*("wisp"===t?.9:"orb"===t?.68:.55),driftPhase:e()*Math.PI*2,twinkleRate:(i?.45:.8)+e()*(a?3.7:o?2.9:2.4),twinkleOffset:e()*Math.PI*2,scaleNorm:h*(a?1.15:i?1.08:1),lifeOffset:e(),depth:.25+.75*e(),fieldXNorm:s.fieldXNorm,fieldYNorm:s.fieldYNorm}}(a,t,r))}return g}(a);for(let e of(V.push(...n),n)){let t=new P(w(F,e.kind)),r=new P(F.glowTexture);t.anchor.set(.5),r.anchor.set(.5),X.addChild(t),Y.addChild(r),A.push({sprite:t,glowSprite:r})}H=s(a)};q();let j=()=>
1{if(!S.current){try{O.ticker.stop()}catch{}T.current=0;return}let e=k.current,{width:t,height:i}=L(),a=B(e,t,i),d=l(a.styleVariant);s(a)!==H&&q();let u="number"==typeof v.current?v.current:performance.now()/1e3,c=I.current!==v.current;if(I.current=v.current,c)T.current=0;else if(T.current+=1,T.current>=12){try{O.ticker.stop()}catch{}return}!function(e,t,r,i=[]){let a=o(r.centerX,-1e6,1e6,0),n=o(r.centerY,-1e6,1e6,0),s=Math.max(24,o(r.radius,24,1e6,180)),d=o(r.speed,.2,6,1.1),u=o(r.opacity,0,1,.78),c=s*o(r.sparkleSize,.35,12,3.8)/260,f=l(r.styleVariant),p=(Number.isFinite(t)?t:0)*d;i.length>e.length&&(i.length=e.length);for(let t=0;t<e.length;t+=1){let l=e[t],d="storybook-god-rays"===f?function(e,t,r,i,a){let n=.5+.5*Math.sin(t*e.twinkleRate+e.twinkleOffset),l=.5+.5*Math.sin(.24*t+e.driftPhase),s=o(r.glowStrength,0,1.8,1);if("ray"===e.kind){let o=r.centerX+(e.orbitNorm-.5)*r.radius*1.9+Math.sin(.19*t+e.driftPhase)*r.radius*.24,l=r.centerY-r.radius*(1.24-.38*e.depth)+Math.cos(.14*t+e.twinkleOffset)*r.radius*.06,d=a*(.64+.32*e.scaleNorm),u=a*(5.4+2.7*e.scaleNorm),c=i*(.16+.46*n)*(.58+.42*e.depth),f=g(o,l,e,r);return{kind:"ray",x:f.x,y:f.y,alpha:Math.max(0,Math.min(1,c)),scaleX:d,scaleY:u,rotation:e.angle+.08*Math.sin(.17*t+e.driftPhase),glowScale:h(Math.max(d,u),.94,s)}}let d=r.centerX+(e.orbitNorm-.5)*r.radius*1.6+Math.sin(.3*t+e.driftPhase)*r.radius*.14,u=r.centerY-.86*r.radius+e.depth*r.radius*1.72+Math.cos(.24*t+e.twinkleOffset)*r.radius*.18,c=a*e.scaleNorm,f="orb"===e.kind,p=c*(f?1.26:.82),b=g(d,u,e,r);return{kind:e.kind,x:b.x,y:b.y,alpha:Math.max(0,Math.min(1,i*(.2+.64*n)*(.44+.56*l))),scaleX:f?p:.9*p,scaleY:f?p:.82*p,rotation:.58*e.angle+.24*n,glowScale:h(p,f?4.6:3.2,s)}}(l,p,{...r,centerX:a,centerY:n,radius:s},u,c):"magic-ripple"===f?function(e,t,r,i,a){var n;let l=.5+.5*Math.sin(t*e.twinkleRate+e.twinkleOffset),s=(n=e.lifeOffset+t*(.18+.08*e.depth))-Math.floor(n),d=o(r.glowStrength,0,1.8,1);if("ring"===e.kind){let a=function(e){let t=Number(e.radiusNorm);if(!Number.isFinite(t)||t<=0)return 1;let r=e.radius/(360*t);return!Number.isFinite(r)||r<=0?1:Math.max(.25,Math.min(8,r))}(r),n=r.radius*(.14+1.16*s),o=r.radius*e.orbitNorm*.28,u=r.centerX+Math.cos(e.angle+.34*t)*o,c=r.centerY+Math.sin(e.angle+.3*t)*o,f=Math.max(.16,n/(40*a)),p=i*Math.pow(1-s,1.35)*(.56+.44*l),b=g(u,c,e,r);return{kind:"ring",x:b.x,y:b.y,alpha:Math.max(0,Math.min(1,p)),scaleX:f*(1+.22*e.driftNorm),scaleY:f*(.92+.15*l),rotation:.42*e.angle+1.6*s,glowScale:h(f,2.8,d)}}let u=r.radius*(.2+1.04*s+.2*e.orbitNorm),c=e.angle+t*e.angularVelocity+s*Math.PI*2,f=r.centerX+Math.cos(c)*u+Math.sin(.42*t+e.driftPhase)*r.radius*e.driftNorm*.16,p=r.centerY+Math.sin(c)*u*.88+Math.cos(.36*t+e.twinkleOffset)*r.radius*e.driftNorm*.12,b=a*e.scaleNorm,m="wisp"===e.kind,w="orb"===e.kind,M=b*(m?1.52:w?1.24:.82+.32*l),y=b*(m?.48:w?1.16:.74+.22*l),x=i*(.26+.74*l)*Math.pow(1-.72*s,1.2)*(.52+.48*e.depth),k=g(f,p,e,r);return{kind:e.kind,x:k.x,y:k.y,alpha:Math.max(0,Math.min(1,x)),scaleX:M,scaleY:y,rotation:c*(m?.84:.54)+.42*s,glowScale:h(b,w?4.2:m?3.5:3,d)}}(l,p,{...r,centerX:a,centerY:n,radius:s},u,c):function(e,t,r,i,a,n){let l="wind-wisps"===i,s="magic-bloom"===i,d="fireflies"===i,u="spirit-wisps"===i,c=o(r.glowStrength,0,1.8,1),f=.5+.5*Math.sin(t*e.twinkleRate+e.twinkleOffset),p=.5+.5*Math.sin(.52*t+e.driftPhase),b=r.radius*(.14+e.orbitNorm*(l?.98:s?1.02:d?.78:.88))*(.86+.16*p),m=e.angle+t*e.angularVelocity*(d?.34:u?.72:l?.82:1)+Math.sin(.26*t+e.driftPhase)*(u?.34:.24),w=r.radius*e.driftNorm*(l?.28:u?.34:s?.32:d?.44:.24),M=Math.sin(t*(d?.2
1:.62)+e.driftPhase)*w,y=Math.cos(t*(d?.18:.58)+e.twinkleOffset)*w,x=d?Math.sin(.14*t+e.lifeOffset*Math.PI*2)*r.radius*.18:0,k=r.centerX+Math.cos(m)*b+M,v=r.centerY+Math.sin(m)*b*(l?.72:d?.56:.9)+y-x,N=a*(.2+.8*f)*(.54+.46*e.depth)*(s?.86+.14*p:1);d&&(N*=.72+.28*p);let S=n*e.scaleNorm,T=S,I=S,P=.52*m,C=h(S,2.6,c);if("wisp"===e.kind)T=S*(l?1.95:u?1.8:s?1.52:1.34),I=S*(l?.36:u?.44:.58),P=m*(u?.9:.74),C=h(S,u?4.1:l?3.6:3.2,c),N*=l||u?1.05:.78;else if("orb"===e.kind){let e=S*(d?1.62:1.28);T=e,I=e*(d?1.08:1),P=.28*m+.16*f,C=h(e,d?5.4:s?4.4:3.6,c),N*=d?1.15:.92}else T=S*(.8+.38*f),I=S*(s?.9+.28*p:.76+.24*p),P=.62*m+f*(s?.44:.24),C=h(S,s?3.8:2.8,c);let O=g(k,v,e,r);return{kind:e.kind,x:O.x,y:O.y,alpha:Math.min(1,Math.max(0,N)),scaleX:T,scaleY:I,rotation:P,glowScale:C}}(l,p,{...r,centerX:a,centerY:n,radius:s},f,u,c),b=i[t];b?(b.kind=d.kind,b.x=d.x,b.y=d.y,b.alpha=d.alpha,b.scaleX=d.scaleX,b.scaleY=d.scaleY,b.rotation=d.rotation,b.glowScale=d.glowScale):i.push(d)}}(V,u,a,W);let p=function(e,t){if(!e.startsWith("#"))return t;let r=e.slice(1);if(6!==r.length)return t;let i=Number.parseInt(r,16);return Number.isFinite(i)?i:t}(e.color,NaN),b=Number.isFinite(p)?p:null,m=R.glowTint,y=f(a.glowStrength??NaN,0,1.5,.72),x=R.glowAlphaMultiplier*y,N=x>1e-4,P=[a.fieldSpread??NaN,a.glowStrength??NaN,a.sparkleSize,a.radiusNorm,a.centerX,a.centerY].join(":");D!==P&&(D=P,(0,n.o)({runId:"overlay_param_pipe_v1",hypothesisId:"H3",location:"PixiLocalizedParticleEffect.tsx:tick:param_signature",message:"preview pixi model config changed",data:{fieldSpread:a.fieldSpread??null,glowStrength:a.glowStrength??null,sparkleSize:a.sparkleSize,radiusNorm:a.radiusNorm,centerX:a.centerX,centerY:a.centerY,glowAlphaMultiplier:x,glowEnabled:N,displayScale:1},timestamp:Date.now()}));for(let e=0;e<A.length;e+=1){let t=A[e],r=W[e];if(!r)continue;let i=w(F,r.kind);t.sprite.texture!==i&&(t.sprite.texture=i),t.sprite.position.set(r.x,r.y),t.glowSprite.position.set(r.x,r.y),t.sprite.alpha=r.alpha,t.glowSprite.alpha=r.alpha*x,t.sprite.scale.set(+r.scaleX,+r.scaleY),t.glowSprite.scale.set(+r.glowScale),t.sprite.rotation=r.rotation,t.glowSprite.rotation=r.rotation,t.sprite.tint=M(r.kind,R,b),t.glowSprite.tint=m,t.glowSprite.visible=N}if(!z&&W[0]){z=!0;let e=W[0],o=w(F,e.kind),l=r.getBoundingClientRect(),s=Math.max(1,Math.round(O.renderer.width)),h=Math.max(1,Math.round(O.renderer.height)),g="overlay_center_norm",c=Math.max(0,Math.min(s-1,Math.round(a.centerX))),f=Math.max(0,Math.min(h-1,Math.round(a.centerY))),p=null,y=null,k=null,N=null,S=null,T=null,I=null,P=null,C=null,Y=null,X=null,E=null,A=null,V=null,H=null;try{let e=O.renderer?.extract;if(e&&"function"==typeof e.canvas){let r=e.canvas(_),a=r&&"getContext"in r?r.getContext("2d"):null;if(P=r&&"width"in r?r.width:null,C=r&&"height"in r?r.height:null,r&&a){let e=r.width/Math.max(1,t),n=r.height/Math.max(1,i),o=Math.max(0,Math.min(r.width-1,Math.round(c*e))),l=Math.max(0,Math.min(r.height-1,Math.round(f*n))),s=a.getImageData(o,l,1,1).data;p=[s[0],s[1],s[2],s[3]],T="renderer.extract.canvas(root)",k=p[3]/255,N=[Number((p[0]/255).toFixed(4)),Number((p[1]/255).toFixed(4)),Number((p[2]/255).toFixed(4))],S=[Number(Math.min(1,1.06*N[0]).toFixed(4)),Number(Math.min(1,.96*N[1]).toFixed(4)),Number(Math.min(1,.78*N[2]).toFixed(4))];let d=p[3]/255;d>1e-4&&(y=[Number(Math.min(1,p[0]/255/d).toFixed(4)),Number(Math.min(1,p[1]/255/d).toFixed(4)),Number(Math.min(1,p[2]/255/d).toFixed(4))])}else I="renderer.extract.canvas(root) unavailable"}else I="renderer.extract.canvas unavailable"}catch(e){I=e instanceof Error?e.message:String(e)}try{let e=l.left+c,t=l.top+f,r=Array.from(document.querySelectorAll("video")),i=r.find(r=>{let i=r.getBoundingClientRect();return e>=i.left&&e<=i.right&&t>=i.top&&t<=i.bottom})??r[0]??null;if(i instanceof HTMLVideoElement&&i.videoWidth>0&&i.videoHeight>0){let r=i.getBoundingClientRect(),a=(e-r.left)/Math.max(1,r.width),n=(t-r.top)/Math.max(1,r.height),o=Math.max(0,Math.min(i.videoWidth-1,Math.round(a*i.videoWidth))),l=Math.max(0,Math.min(i.videoHeight-1,Math.round(n*i.videoHeight))),s=document.createElement("canvas");s.width=i.videoWidth,s.height=i.videoHeight;let d=s.getContext("2d",{willReadFrequently:!0});if(d){d.drawImage(i,0,0,s.width,s.height);let e=d.getImageData(o,l,1,1).data;Y=[e[0],e[1],e[2],e[3]],E="html-video-element"}else X="failed to create 2d context for preview base sample"}else{let r=Array.from(document.querySelectorAll("canvas")).filter(e=>e!==O.canvas),i=r.find(r=>{let i=r.getBoundingClientRect();return e>=i.left&&e<=i.right&&t>=i.top&&t<=i.bottom})??r[0]??null;if(i&&i.width>0&&i.height>0){let r=i.getBoundingClientRect(),a=(e-r.left)/Math.max(1,r.width),n=(t-r.top)/Math.max(1,r.height),o=Math.max(0,Math.min(i.width-1,Math.round(a*i.width))),l=Math.max(0,Math.min(i.height-1,Math.round(n*i.height))),s=document.createElement("canvas");s.width=i.width,s.height=i.height;let d=s.getContext("2d",{willReadFrequently:!0});if(d){d.drawImage(i,0,0,s.width,s.height);let e=d.getImageData(o,l,1,1).data;Y=[e[0],e[1],e[2],e[3]],E="sibling-canvas-element"}else X="failed to create 2d context for preview canvas base sample"}else X="preview sibling video/canvas unavailable for base sample"}}catch(e){X=e instanceof Error?e.message:String(e)}if(Y&&y&&p&&p[3]>0){let e=p[3]/255,t=[Y[0]/255,Y[1]/255,Y[2]/255],r=y,i=t.map((e,t)=>e+r[t]-e*r[t]),a=t.map((t,r)=>t*(1-e)+i[r]*e),n=e=>e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4),o=t.map(e=>n(e)),l=r.map(e=>n(e)),s=o.map((e,t)=>e+l[t]-e*l[t]),d=o.map((t,r)=>t*(1-e)+s[r]*e).map(e=>
1Math.max(0,Math.min(1,e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055))),h=e=>[Math.round(255*Math.max(0,Math.min(1,e[0]))),Math.round(255*Math.max(0,Math.min(1,e[1]))),Math.round(255*Math.max(0,Math.min(1,e[2]))),Y?.[3]??255];A=h(a),V=h(d),H="final preview DOM composite pixel capture not available via canvas API in this probe"}else H="insufficient preview base/overlay data to compute screen expectation";console.warn("[OverlayVFX preview debug]",{version:"overlay-vfx-parity-debug-v1",stageWidth:t,stageHeight:i,centerX:a.centerX,centerY:a.centerY,radius:a.radius,radiusNormApprox:a.radius/Math.min(t,i),sparkleSize:a.sparkleSize,displayScale:1,firstParticle:{kind:e.kind,x:e.x,y:e.y,scaleX:e.scaleX,scaleY:e.scaleY,textureWidth:o.width,textureHeight:o.height,drawnWidth:o.width*e.scaleX*1,drawnHeight:o.height*e.scaleY*1},previewProbe:{label:g,x:c,y:f,previewOverlayPixelOverBlack:p,previewOverlayAlpha:k,previewOverlayCanvasStraightColor:N,previewOverlayWarmAdjustedCanvasStraightColor:S,previewOverlayUnpremultipliedColor:y,previewOverlayPixelSource:T,previewOverlayPixelProbeError:I,previewExtractCanvasWidth:P,previewExtractCanvasHeight:C,previewBaseVideoPixel:Y,previewBaseVideoPixelProbeError:X,previewBasePixelSource:E,previewFinalPixelWithOverlayVisible:null,previewExpectedOverBaseSrgbScreen:A,previewExpectedOverBaseLinearScreen:V,previewFinalPixelProbeNote:H}}),(0,n.o)({runId:"overlay_parity_hypothesis_v8",hypothesisId:"H18",location:"PixiLocalizedParticleEffect.tsx:preview_debug_block:overlay_source_probe",message:"[OVERLAY_PARITY_RECIPE_DEBUG] overlay_source_color_probe_preview",data:{styleVariant:d,probeLabel:g,probeX:c,probeY:f,previewOverlayPixelOverBlack:p,previewOverlayAlpha:k,previewOverlayCanvasStraightColor:N,previewOverlayWarmAdjustedCanvasStraightColor:S,previewOverlayUnpremultipliedColor:y,previewOverlayPixelSource:T,previewOverlayPixelProbeError:I,previewExtractCanvasWidth:P,previewExtractCanvasHeight:C,previewBaseVideoPixel:Y,previewBaseVideoPixelProbeError:X,previewBasePixelSource:E,previewFinalPixelWithOverlayVisible:null,previewExpectedOverBaseSrgbScreen:A,previewExpectedOverBaseLinearScreen:V,previewFinalPixelProbeNote:H},timestamp:Date.now()}),(0,n.o)({runId:"overlay_parity_hypothesis_v1",hypothesisId:"H1",location:"PixiLocalizedParticleEffect.tsx:preview_debug_block",message:"overlay_preview_model_snapshot",data:{stageWidth:t,stageHeight:i,rendererWidth:O.renderer.width,rendererHeight:O.renderer.height,canvasWidth:O.canvas.width,canvasHeight:O.canvas.height,hostRectWidth:l.width,hostRectHeight:l.height,devicePixelRatio:window.devicePixelRatio??null,overlayTimeSec:u,centerX:a.centerX,centerY:a.centerY,radius:a.radius,radiusNormApprox:a.radius/Math.min(t,i),firstParticleX:e.x,firstParticleY:e.y,firstParticleScaleX:e.scaleX,firstParticleScaleY:e.scaleY},timestamp:Date.now()}),(0,n.o)({runId:"overlay_parity_hypothesis_v1",hypothesisId:"H4",location:"PixiLocalizedParticleEffect.tsx:preview_debug_block",message:"overlay_preview_style_snapshot",data:{styleVariant:d,displayScale:1,glowTint:m,glowAlphaMultiplier:x,sampleKind:e.kind,sampleTint:M(e.kind,R,b),sampleAlpha:e.alpha,sampleScaleX:e.scaleX,sampleScaleY:e.scaleY,sampleRotation:e.rotation},timestamp:Date.now()}),(0,n.o)({runId:"overlay_parity_hypothesis_v1",hypothesisId:"H2",location:"PixiLocalizedParticleEffect.tsx:preview_debug_block",message:"overlay_preview_time_snapshot",data:{currentTimeInputSec:v.current??null,sampledNowSec:u,tickerDeltaMs:O.ticker.deltaMS},timestamp:Date.now()})}};O.ticker.add(j);let J=null;try{"u">typeof IntersectionObserver&&(J=new IntersectionObserver(e=>{for(let t of e){let e=t.isIntersecting&&t.intersectionRatio>0;if(S.current=e,e){T.current=0;try{O.ticker.started||O.ticker.start()}catch{}}}},{root:null,threshold:[0,.01]})).observe(r)}catch{S.current=!0}t=()=>{if(J)try{J.disconnect()}catch{}O.ticker.remove(j),N.current=null,G(),m(F),O.destroy(!0,{children:!0,texture:!0,textureSource:!0})}})().catch(e=>{console.warn("[VFX] Pixi particle overlay failed to initialize:",e)}),()=>{e=!0,t?.()}},[]),(0,i.jsx)("div",{ref:x,"aria-label":"Localized PixiJS particle effect",className:`pointer-events-none absolute inset-0 ${r??""}`,style:u})}}}]);

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.