handler-playable-sdk 0.3.27 → 0.3.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-I4VSVF3L.js → chunk-53UBQCSX.js} +15 -24
- package/dist/index.cjs +11 -20
- package/dist/index.js +1 -1
- package/dist/pixi/index.cjs +1 -1
- package/dist/pixi/index.js +1 -1
- package/dist/three/index.cjs +11 -11
- package/dist/three/index.js +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{E as F,F as G,G as H,H as I,I as J,J as K,K as L,L as M,M as N,N as O,O as P,P as Q,Q as R,a}from"./chunk-
|
|
1
|
+
import{E as F,F as G,G as H,H as I,I as J,J as K,K as L,L as M,M as N,N as O,O as P,P as Q,Q as R,a}from"./chunk-53UBQCSX.js";import"./chunk-I5OOVR5U.js";import{a as q,b as r,c as s,d as t,e as u,f as v,g as w,h as x,i as y,j as z,k as A,l as B,m as C,n as D,o as E}from"./chunk-LV4HGC5G.js";import{a as b,b as c,c as d,d as e,e as f,f as g,g as h,h as i,i as j,j as k,k as l,l as m,m as n,n as o,o as p}from"./chunk-ZLL42OOV.js";import"./chunk-E6WJCS24.js";import"./chunk-Q7FPWOA3.js";export{B as ConfigWatcher,K as DebugPanel,A as DefaultReloadStrategy,Q as Handler,L as PreviewShell,d as applyConfigOverride,e as applyConfigOverrides,n as applyConfigsToDisk,x as applyDefaults,a as baseLottie,P as bootstrap,f as clearConfigOverrides,g as clearConfigOverridesForObject,j as configOverrideManager,M as createPreviewShell,k as deepClone,R as default,H as defaultPreset,G as deviceGroups,F as devicePresets,C as diffConfigs,l as exportConfigsAsJSON,i as getConfigOverrides,m as getConfigStateSummary,b as getOverrideMode,I as getPresetById,J as getPresetsByCategory,s as loadAllObjectConfigs,q as loadComponentSchemas,t as loadEngineConfig,u as loadGamePromptConfig,y as loadObjectCentricConfig,r as loadObjectConfig,v as loadSceneConfig,D as rehydrateObject,h as removeConfigOverride,o as resetToApplied,p as resetToOriginal,O as setBootstrapDependencies,c as setOverrideMode,E as setupHotReload,N as setupLiveEditBridge,z as toLegacyFormat,w as validateObjectConfig};
|
package/dist/pixi/index.cjs
CHANGED
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
<button class="debug-btn primary" data-modal-apply>Apply</button>
|
|
45
45
|
</div>
|
|
46
46
|
</div>
|
|
47
|
-
`,this.modal=n}attachModalListeners(){if(!this.modal)return;this.modal.querySelectorAll("[data-modal-close]").forEach(s=>{s.addEventListener("click",()=>this.close())}),this.modal.querySelectorAll("[data-tab]").forEach(s=>{s.addEventListener("click",o=>{let l=o.target.dataset.tab;l&&this.switchTab(l)})});let n=this.modal.querySelector("[data-ai-generate]");n==null||n.addEventListener("click",()=>{this.openAiEditor("generate")});let r=this.modal.querySelector("[data-ai-edit]");r==null||r.addEventListener("click",()=>{this.openAiEditor("edit")});let a=this.modal.querySelector("[data-modal-apply]");a==null||a.addEventListener("click",()=>{this.apply()}),this.modal.addEventListener("click",s=>{s.target===this.modal&&this.close()})}switchTab(t){if(!this.modal)return;this.modal.querySelectorAll("[data-tab]").forEach(r=>{r.classList.toggle("active",r.getAttribute("data-tab")===t)}),this.modal.querySelectorAll("[data-tab-panel]").forEach(r=>{r.classList.toggle("active",r.getAttribute("data-tab-panel")===t)})}openAiEditor(t){let i=window.__openAiEditor;if(typeof i!="function"){alert("AI Editor not available. Please check your setup.");return}let n="";t==="edit"&&this.currentAsset?n=`Edit this image: ${this.currentObjectId}`:n=`Create an image for: ${this.currentObjectId}`,i(this.currentObjectId||"unknown",n,this.currentAsset,{path:this.currentPath,onApply:r=>{this.onApplyCallback&&this.onApplyCallback(r),this.close()}})}apply(){this.onApplyCallback&&this.onApplyCallback("library/placeholder.png"),this.close()}close(){this.modal&&this.modal.parentNode&&this.modal.parentNode.removeChild(this.modal),this.modal=null,this.currentObjectId=null,this.currentPath=null,this.onApplyCallback=null}}});var Fv={};rl(Fv,{AssetCache:()=>Be,AssetLoader:()=>xt,AssetSystem:()=>Qr,AssetTextures:()=>wt,Assets:()=>jf,BaseSystem:()=>Oi,GameEngine:()=>Jr,GameObject:()=>Dn,GameObjectManager:()=>ki,ObjectFactory:()=>_t,Renderer:()=>jn,RuntimeObjectRegistry:()=>Ii,Transform:()=>Pn,applyScreenAnchor:()=>ia,basePixi:()=>If,clearResponsiveElements:()=>zf,createPixiBase:()=>Xr,getRegisteredFontIds:()=>Tf,globalResponsiveMultipliers:()=>Nn,initAssetTextures:()=>Ur,initAssets:()=>Df,layout:()=>Bf,playLottieOverlay:()=>Lf,registerFont:()=>Cf,registerType:()=>Hr,resolveAnchorVec2:()=>Bn,resolveFont:()=>Sf,resolveFontWeight:()=>Af,resolveScreenAnchorPoint:()=>Mi,resolveScreenRatioPoint:()=>Ri,runInitSequence:()=>Ff,setLottieInstance:()=>qr,spawnSceneFromConfig:()=>Rf,updateScreenState:()=>ta});module.exports=Wf(Fv);var Ef=require("pixi.js");var st={};function Gn(e,t,i=!1){st[e]||(st[e]=[]),st[e].push({fn:t,once:i})}function ca(e,t){if(st[e]){if(!t){delete st[e];return}st[e]=st[e].filter(i=>i.fn!==t)}}function Wn(e,...t){let i=st[e];if(i)for(let n of[...i])n.fn(...t),n.once&&ca(e,n.fn)}function ge(e,t){Gn(e,t,!0)}var X=null,Ee=[],qt=null;function ll(e){X=e,Ee=[],qt!==null&&(clearTimeout(qt),qt=null)}function cl(){var e,t,i;return{endpoint:(X==null?void 0:X.endpoint)||"",transport:(X==null?void 0:X.transport)||"beacon",batchSize:(e=X==null?void 0:X.batchSize)!=null?e:10,flushIntervalMs:(t=X==null?void 0:X.flushIntervalMs)!=null?t:300,maxQueue:(i=X==null?void 0:X.maxQueue)!=null?i:200,debug:!!(X!=null&&X.debug)}}async function sl(e,t,i,n){let r=JSON.stringify(t);if(i==="beacon"&&typeof navigator!="undefined"&&typeof navigator.sendBeacon=="function")try{let a=navigator.sendBeacon(e,new Blob([r],{type:"application/json"}));n&&console.log("[handler.telemetry] beacon",a,t);return}catch(a){n&&console.warn("[handler.telemetry] beacon failed, fallback to fetch",a)}try{await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:r,keepalive:!0}),n&&console.log("[handler.telemetry] fetch",t)}catch(a){n&&console.warn("[handler.telemetry] fetch failed",a)}}function da(e,t){let i=cl();if(t&&i.endpoint){if(Ee.push(e),Ee.length>i.maxQueue&&(Ee=Ee.slice(Ee.length-i.maxQueue)),Ee.length>=i.batchSize){ol();return}qt===null&&(qt=window.setTimeout(()=>{qt=null,ol()},i.flushIntervalMs))}}async function ol(){let e=cl();if(!e.endpoint||Ee.length===0)return;let t=Ee.splice(0,e.batchSize);await sl(e.endpoint,{events:t},e.transport,e.debug),Ee.length>0&&await sl(e.endpoint,{events:Ee.splice(0,e.batchSize)},e.transport,e.debug)}function dl(e){return Math.max(0,Math.min(1,e))}function Yf(e){let t=String(e!=null?e:"power2.out");if(t==="linear")return i=>i;if(t==="sine.inOut")return i=>.5-Math.cos(Math.PI*i)/2;if(t==="power2.out"||t==="easeOutQuad")return i=>1-(1-i)*(1-i);if(t.startsWith("back.out")){let i=t.match(/back\.out\(([\d.]+)\)/),n=i?Number(i[1]):1.8;return r=>1+(n+1)*Math.pow(r-1,3)+n*Math.pow(r-1,2)}return i=>1-(1-i)*(1-i)}function $i(){return typeof performance!="undefined"&&performance.now?performance.now():Date.now()}function Vf(e,t){let i=e==null?void 0:e[t];return typeof i=="number"?i:0}function ul(e,t,i){try{e[t]=i}catch{}}function Kf(e){let t=e==null?void 0:e.scale;if(!t)return null;let i=typeof t.x=="number"?t.x:1,n=typeof t.y=="number"?t.y:1;return{x:i,y:n}}function pl(e,t){let i=e==null?void 0:e.scale;if(i)try{typeof i.set=="function"?i.set(t.x,t.y):(typeof i.x=="number"&&(i.x=t.x),typeof i.y=="number"&&(i.y=t.y))}catch{}}function fl(e,t){let i=Kf(e);if(!i)return{from:null,to:null};let n=null,r=null;return typeof t.scale=="number"?(n=t.scale,r=t.scale):t.scale&&typeof t.scale=="object"&&(typeof t.scale.x=="number"&&(n=t.scale.x),typeof t.scale.y=="number"&&(r=t.scale.y)),typeof t.scaleX=="number"&&(n=t.scaleX),typeof t.scaleY=="number"&&(r=t.scaleY),n===null&&r===null?{from:null,to:null}:{from:{x:i.x,y:i.y},to:{x:n!=null?n:i.x,y:r!=null?r:i.y}}}function hl(){let e=new Set,t=new WeakMap,i=null,n=()=>{if(i!=null)return;i=requestAnimationFrame(()=>{i=null,o(),e.size>0&&n()})},r=c=>{var u;e.add(c);let f=(u=t.get(c.target))!=null?u:new Set;f.add(c),t.set(c.target,f),n()},a=c=>{e.delete(c);let f=t.get(c.target);f&&(f.delete(c),f.size===0&&t.delete(c.target))},s=c=>{c.killed||(c.killed=!0,a(c))},o=()=>{var f,u;let c=$i();for(let p of Array.from(e)){if(p.killed||p.paused)continue;let v=c-p.startMs-p.delayMs;if(v<0)continue;let m=p.durationMs>0?v/p.durationMs:1,w=dl(m),g=p.repeat>=0?p.repeat+1:1,h=p.repeat>0?Math.min(Math.floor(m),g-1):0;if(p.repeat>0&&m>=1){let b=m-h;w=dl(b)}let x=p.ease(w);p.yoyo&&h%2===1&&(x=1-x);for(let b of p.props)ul(p.target,b.key,b.from+(b.to-b.from)*x);p.scaleFrom&&p.scaleTo&&pl(p.target,{x:p.scaleFrom.x+(p.scaleTo.x-p.scaleFrom.x)*x,y:p.scaleFrom.y+(p.scaleTo.y-p.scaleFrom.y)*x});try{(f=p.onUpdate)==null||f.call(p)}catch{}if(m>=g){s(p);try{(u=p.onComplete)==null||u.call(p)}catch{}}}},d=(c,f,u)=>{var b;let p=Math.max(0,(typeof f.duration=="number"?f.duration:.5)*1e3),v=Math.max(0,(typeof f.delay=="number"?f.delay:0)*1e3+((b=u==null?void 0:u.delayMsOverride)!=null?b:0)),m=Yf(f.ease),w=typeof f.repeat=="number"?Math.max(0,f.repeat|0):0,g=f.yoyo===!0,h=new Set(["duration","delay","ease","repeat","yoyo","onUpdate","onComplete","scale","scaleX","scaleY"]),x=[];for(let C of Object.keys(f)){if(h.has(C))continue;let S=f[C];typeof S=="number"&&x.push({key:C,from:Vf(c,C),to:S})}let y=fl(c,f);return{target:c,startMs:$i(),delayMs:v,durationMs:p,ease:m,props:x,scaleFrom:y.from,scaleTo:y.to,repeat:w,yoyo:g,onUpdate:typeof f.onUpdate=="function"?f.onUpdate:void 0,onComplete:typeof f.onComplete=="function"?f.onComplete:void 0,killed:!1,paused:!1,pauseAtMs:null}},l={to(c,f){let u=d(c,f);return r(u),{kill:()=>s(u),pause:()=>{u.paused||(u.paused=!0,u.pauseAtMs=$i())},resume:()=>{var m;if(!u.paused)return;let p=(m=u.pauseAtMs)!=null?m:$i(),v=$i()-p;u.startMs+=v,u.paused=!1,u.pauseAtMs=null},isActive:()=>!u.killed&&!u.paused}},fromTo(c,f,u){return l.set(c,f),l.to(c,u)},set(c,f){if(!c||!f)return;for(let p of Object.keys(f)){let v=f[p];p==="scale"||p==="scaleX"||p==="scaleY"||typeof v=="number"&&ul(c,p,v)}let u=fl(c,f);u.to&&pl(c,u.to)},killTweensOf(c){let f=t.get(c);if(f)for(let u of Array.from(f))s(u)},timeline(c={}){let f=[],u=0,p=!1,v=[],m=h=>{if(typeof h=="number")return Math.max(0,h*1e3);let x=typeof h=="string"?h.trim():"";return x.startsWith("+=")?u+Math.max(0,Number(x.slice(2))*1e3||0):x?Math.max(0,Number(x)*1e3||0):u},w=h=>{f.push(h);let x=Math.max(0,(typeof h.vars.duration=="number"?h.vars.duration:.5)*1e3);u=Math.max(u,h.atMs+x)},g={to(h,x,y){return w({kind:"to",target:h,vars:x,atMs:m(y)}),g},fromTo(h,x,y,b){return w({kind:"fromTo",target:h,vars:y,from:x,atMs:m(b)}),g},play(){var h,x;if(p)return g;p=!0,v=[];for(let y of f)y.kind==="fromTo"&&l.set(y.target,(h=y.from)!=null?h:{}),v.push(l.to(y.target,{...y.vars,delay:y.atMs/1e3+((x=y.vars.delay)!=null?x:0)}));return g},pause(){for(let h of v)h.pause();return g},kill(){for(let h of v)h.kill();v=[],p=!1}};return c.paused||g.play(),g}};return l}function gl(){if(typeof window=="undefined")return;let e=window;if(!e.gsap)try{e.gsap=hl()}catch{}}var ml={name:"handler-playable-sdk",version:"0.3.27",type:"module",description:"Handler Playable SDK v0.1 with contract-aligned surface (root sandbox, canonical event envelope).",main:"dist/index.cjs",module:"dist/index.js",types:"dist/index.d.ts",exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./pixi":{types:"./dist/pixi/index.d.ts",import:"./dist/pixi/index.js",require:"./dist/pixi/index.cjs"},"./pixi/index.css":{import:"./dist/pixi/index.css",require:"./dist/pixi/index.css"},"./three":{types:"./dist/three/index.d.ts",import:"./dist/three/index.js",require:"./dist/three/index.cjs"}},scripts:{prebuild:"python3 src/preview/build-css.py",build:"tsup src/index.ts src/pixi/index.ts src/three/index.ts --format cjs,esm --dts --clean --minify --external lottie-web && npm run create-mjs-symlinks && npm run obfuscate && npm run postbuild",postbuild:"python3 src/preview/copy-css-to-dist.py","create-mjs-symlinks":"cd dist && ln -sf index.js index.mjs && cd pixi && ln -sf index.js index.mjs && cd ../three && ln -sf index.js index.mjs","build:dev":"tsup src/index.ts src/pixi/index.ts src/three/index.ts --format cjs,esm --dts --clean --external lottie-web && npm run create-mjs-symlinks",obfuscate:"javascript-obfuscator dist/pixi/index.js --output dist/pixi/index.js --config obfuscator.config.json && javascript-obfuscator dist/three/index.js --output dist/three/index.js --config obfuscator.config.json",lint:"eslint 'src/**/*.{ts,tsx}'",typecheck:"tsc --noEmit",prepublishOnly:"npm run build","publish:update":"node scripts/publish-and-update.cjs patch","publish:update:minor":"node scripts/publish-and-update.cjs minor","publish:update:major":"node scripts/publish-and-update.cjs major"},author:"Handler",license:"MIT",publishConfig:{access:"public"},repository:{type:"git",url:"https://github.com/HandlerAIGames/handler-playable-sdk.git"},files:["dist","LICENSE","README.md"],peerDependencies:{"lottie-web":"^5.0.0","pixi.js":"^8.0.0",three:"^0.182.0"},peerDependenciesMeta:{"pixi.js":{optional:!0},three:{optional:!0},"lottie-web":{optional:!0}},devDependencies:{"@types/three":"^0.182.0",eslint:"^9.39.2","javascript-obfuscator":"^5.1.0","pixi.js":"8.8.1",three:"^0.182.0","ts-node":"^10.9.2",tsup:"^8.4.0",typescript:"^5.7.2","typescript-eslint":"^8.53.0"},dependencies:{"@google/genai":"^1.35.0","@google/generative-ai":"^0.24.1",sharp:"^0.34.5"}};var me=0,Zf=me++,bl=me++,yl=me++,vl=me++,xl=me++,wl=me++,_l=me++,El=me++,Sl=me++,Al=me++,Cl=me++,Tl=me++,q=Zf;function kl(){return q===bl}function Ll(){return q===yl}function Ol(){return q===vl}function Il(){return q===xl}function Gt(){return q===wl}function Wt(){return q===_l}function Ml(){return q===El}function Rl(){return q===Sl}function Pl(){return q===Al}function ua(){return q===Cl}function pa(){return q===Tl}function jl(){let e=typeof AD_PROTOCOL!="undefined"?AD_PROTOCOL:"none",t=typeof AD_NETWORK!="undefined"?AD_NETWORK:"web_embed";if(e==="mraid")try{mraid.getState(),q=bl;return}catch{}else if(e==="dapi")try{dapi.isReady(),q=yl;return}catch{}if(t==="facebook")try{typeof FbPlayableAd!="undefined"&&(q=vl)}catch{}else if(t==="google")try{typeof ExitApi!="undefined"&&(q=xl)}catch{}else if(t==="mintegral")window.gameReady&&(q=wl);else if(t==="tapjoy")window.TJ_API&&(q=_l);else if(t==="tiktok")window.openAppStore&&(q=El);else if(t==="smadex")try{window.smxTracking&&(q=Sl)}catch{}else if(t==="snapchat")try{window.ScPlayableAd&&(q=Al)}catch{}else t==="vungle"?q=Cl:(e==="nucleo"||t==="nucleo")&&(q=Tl)}var Yn=qn(require("lottie-web"),1),Dl=Yn.default;typeof window!="undefined"&&(window.lottie=Yn.default,window.__baseLottie=Yn.default);ga();function Z(e,t){let i=(r,a)=>a===0?r:i(a,r%a),n=i(e,t);return`${e/n}:${t/n}`}var vx=[{id:"iphone-15-pro-max",label:"iPhone 15 Pro Max",width:430,height:932,category:"iphone",ratio:Z(430,932)},{id:"iphone-15-pro",label:"iPhone 15 Pro",width:393,height:852,category:"iphone",ratio:Z(393,852)},{id:"iphone-15",label:"iPhone 15",width:393,height:852,category:"iphone",ratio:Z(393,852)},{id:"iphone-14",label:"iPhone 14",width:390,height:844,category:"iphone",ratio:Z(390,844)},{id:"iphone-se",label:"iPhone SE",width:375,height:667,category:"iphone",ratio:Z(375,667)},{id:"iphone-12-mini",label:"iPhone 12 Mini",width:360,height:780,category:"iphone",ratio:Z(360,780)}],xx=[{id:"pixel-8-pro",label:"Pixel 8 Pro",width:448,height:998,category:"android",ratio:Z(448,998)},{id:"pixel-8",label:"Pixel 8",width:412,height:915,category:"android",ratio:Z(412,915)},{id:"samsung-s24-ultra",label:"Samsung S24 Ultra",width:412,height:915,category:"android",ratio:Z(412,915)},{id:"samsung-s24",label:"Samsung S24",width:360,height:780,category:"android",ratio:Z(360,780)},{id:"samsung-a54",label:"Samsung A54",width:412,height:915,category:"android",ratio:Z(412,915)},{id:"oneplus-12",label:"OnePlus 12",width:412,height:915,category:"android",ratio:Z(412,915)}],wx=[{id:"ipad-pro-12",label:'iPad Pro 12.9"',width:1024,height:1366,category:"tablet",ratio:Z(1024,1366)},{id:"ipad-pro-11",label:'iPad Pro 11"',width:834,height:1194,category:"tablet",ratio:Z(834,1194)},{id:"ipad-air",label:"iPad Air",width:820,height:1180,category:"tablet",ratio:Z(820,1180)},{id:"ipad-mini",label:"iPad Mini",width:768,height:1024,category:"tablet",ratio:Z(768,1024)},{id:"samsung-tab-s9",label:"Samsung Tab S9",width:800,height:1280,category:"tablet",ratio:Z(800,1280)}],Fl=[{id:"playable-portrait",label:"Playable Portrait",width:320,height:480,category:"playable",ratio:"2:3",mraidScale:1},{id:"mraid-320x480",label:"MRAID 320\xD7480",width:320,height:480,category:"playable",ratio:"2:3",mraidScale:1},{id:"iphone-14",label:"iPhone 14",width:390,height:844,category:"playable",ratio:Z(390,844),mraidScale:.7},{id:"ipad-mini",label:"iPad Mini",width:768,height:1024,category:"playable",ratio:Z(768,1024),mraidScale:.7}];var _x=[...Fl];var ah=Fl[0];ot();var qy=qn(Jp(),1);function Hy(e){return new Promise((t,i)=>{let n=new FileReader;n.onerror=()=>i(new Error("FileReader failed")),n.onload=()=>t(String(n.result||"")),n.readAsDataURL(e)})}function $y(e){var r;let[t,i]=e.split(","),n=t==null?void 0:t.match(/data:(.*?);base64/);return{base64:i!=null?i:"",mimeType:(r=n==null?void 0:n[1])!=null?r:"image/png"}}async function Uy(e){return await new Promise(t=>{let i=new Image;i.onload=()=>t({width:i.naturalWidth||i.width,height:i.naturalHeight||i.height}),i.onerror=()=>t(null),i.src=e})}async function ao(e){var t,i;try{console.log("[ImageUtils] Fetching image data from URL:",e);let n=await fetch(e);if(!n.ok)return console.warn("[ImageUtils] Fetch failed with status:",n.status,e),null;let r=await n.blob();console.log("[ImageUtils] Blob received, size:",r.size,"type:",r.type);let a=await Hy(r),s=await Uy(a),o=$y(a);return console.log("[ImageUtils] Success resolution:",s==null?void 0:s.width,"x",s==null?void 0:s.height,"mime:",o.mimeType),{base64:o.base64,mimeType:o.mimeType,dataUrl:a,width:(t=s==null?void 0:s.width)!=null?t:0,height:(i=s==null?void 0:s.height)!=null?i:0}}catch(n){return console.error("[ImageUtils] Error fetching image data:",n),null}}async function Br(e,t=30){try{console.log("[ImageUtils] Removing background color...");let i=await new Promise((f,u)=>{let p=new Image;p.onload=()=>f(p),p.onerror=()=>u(new Error("Failed to load image")),p.src=e}),n=document.createElement("canvas");n.width=i.width,n.height=i.height;let r=n.getContext("2d");if(!r)return console.error("[ImageUtils] Failed to get canvas context"),e;r.drawImage(i,0,0);let a=r.getImageData(0,0,n.width,n.height),s=a.data,d=[{name:"top-left",offset:0},{name:"top-right",offset:(n.width-1)*4},{name:"bottom-left",offset:(n.height-1)*n.width*4},{name:"bottom-right",offset:((n.height-1)*n.width+(n.width-1))*4}].map(f=>({r:s[f.offset],g:s[f.offset+1],b:s[f.offset+2]})),l=0;for(let f=0;f<s.length;f+=4){let u=s[f],p=s[f+1],v=s[f+2],m=!1;for(let w of d)if(Math.sqrt(Math.pow(u-w.r,2)+Math.pow(p-w.g,2)+Math.pow(v-w.b,2))<t){m=!0;break}m&&(s[f+3]=0,l++)}return console.log(`[ImageUtils] Removed background from ${l} pixels (4-corner sampling, tolerance: ${t})`),r.putImageData(a,0,0),n.toDataURL("image/png")}catch(i){return console.error("[ImageUtils] Error removing background:",i),e}}var Qp=require("@google/genai");async function so(e,t,i=[],n={}){var r,a,s,o,d,l,c;try{if(!(e!=null&&e.trim()))throw new Error("Gemini API key is required");if(!(t!=null&&t.trim()))throw new Error("Prompt is required");for(let g=0;g<i.length;g++){let h=i[g];if(!h.base64||!h.mimeType)throw new Error(`Image ${g+1} is missing required data`);if(h.base64.length<1e3&&console.warn(`Image ${g+1} data appears very small, may be corrupted`),!h.mimeType.startsWith("image/"))throw new Error(`Image ${g+1} has invalid MIME type: ${h.mimeType}`)}let f=new Qp.GoogleGenAI({apiKey:e}),u="gemini-2.5-flash",p=[t];i.length>0&&i.forEach((g,h)=>{p.push({inlineData:{data:g.base64,mimeType:g.mimeType}}),console.log(`[Gemini] Added image ${h+1}: ${g.mimeType}, size: ${Math.round(g.base64.length/1024)}KB`)}),console.log(`[Gemini] Making request with ${i.length} images and prompt length: ${t.length}`);let v=await f.models.generateContent({model:u,contents:p}),m="",w=(s=(a=(r=v.candidates)==null?void 0:r[0])==null?void 0:a.content)==null?void 0:s.parts;if(w)for(let g of w)g.text&&(m+=g.text);if(!m.trim())throw new Error("Empty response from Gemini API");return console.log(`[Gemini] Response received, length: ${m.length}`),m}catch(f){throw console.error("[Gemini] API error:",f),(o=f.message)!=null&&o.includes("Unable to process input image")?new Error("Unable to process the uploaded image. Please ensure it's a valid PNG, JPG, or JPEG file under 10MB and not corrupted."):(d=f.message)!=null&&d.includes("API_KEY_INVALID")?new Error("Invalid Gemini API key. Please check your API key configuration."):(l=f.message)!=null&&l.includes("QUOTA_EXCEEDED")?new Error("Gemini API quota exceeded. Please try again later or check your billing."):(c=f.message)!=null&&c.includes("SAFETY")?new Error("Content was flagged by Gemini safety filters. Please try with different images."):f}}var ef=require("@google/genai");async function Fr(e,t,i=[],n={}){try{console.info("[GEMINI-REAL-SDK] Initializing GoogleGenAI...");let r=new ef.GoogleGenAI({apiKey:e}),a=[{text:t}];i.length>0&&i.forEach((o,d)=>{console.info(`[GEMINI-REAL-SDK] Adding image part ${d}`),a.push({inlineData:{mimeType:o.mimeType,data:o.base64}})}),console.info("[GEMINI-REAL-SDK] Calling generateContent with model: gemini-2.5-flash-image");let s=await r.models.generateContent({model:"gemini-2.5-flash-image",contents:a});if(console.info("[GEMINI-REAL-SDK] Received response from model"),!s.candidates||!s.candidates[0]||!s.candidates[0].content||!s.candidates[0].content.parts)throw new Error("Gemini 2.5 Flash Image returned invalid response structure.");for(let o of s.candidates[0].content.parts)if(o.text)console.log(o.text);else if(o.inlineData){let d=o.inlineData.data,l=o.inlineData.mimeType||"image/png";return console.info("[GEMINI-REAL-SDK] Found inline image data in response"),`data:${l};base64,${d}`}throw new Error("Gemini 2.5 Flash Image returned no image data.")}catch(r){throw console.error("[GEMINI-REAL-SDK] Error in generateImageWithGemini25Flash:",JSON.stringify(r,Object.getOwnPropertyNames(r),2)),r}}var Xy=require("pixi.js");An();ot();var of=require("pixi.js");var Zy=require("pixi.js");ot();function rv(e){return new Promise((t,i)=>{let n=new FileReader;n.onerror=()=>i(new Error("FileReader failed")),n.onload=()=>t(String(n.result||"")),n.readAsDataURL(e)})}function av(e){var r;let[t,i]=e.split(","),n=t==null?void 0:t.match(/data:(.*?);base64/);return{base64:i!=null?i:"",mimeType:(r=n==null?void 0:n[1])!=null?r:"image/png"}}function sv(e){return`
|
|
47
|
+
`,this.modal=n}attachModalListeners(){if(!this.modal)return;this.modal.querySelectorAll("[data-modal-close]").forEach(s=>{s.addEventListener("click",()=>this.close())}),this.modal.querySelectorAll("[data-tab]").forEach(s=>{s.addEventListener("click",o=>{let l=o.target.dataset.tab;l&&this.switchTab(l)})});let n=this.modal.querySelector("[data-ai-generate]");n==null||n.addEventListener("click",()=>{this.openAiEditor("generate")});let r=this.modal.querySelector("[data-ai-edit]");r==null||r.addEventListener("click",()=>{this.openAiEditor("edit")});let a=this.modal.querySelector("[data-modal-apply]");a==null||a.addEventListener("click",()=>{this.apply()}),this.modal.addEventListener("click",s=>{s.target===this.modal&&this.close()})}switchTab(t){if(!this.modal)return;this.modal.querySelectorAll("[data-tab]").forEach(r=>{r.classList.toggle("active",r.getAttribute("data-tab")===t)}),this.modal.querySelectorAll("[data-tab-panel]").forEach(r=>{r.classList.toggle("active",r.getAttribute("data-tab-panel")===t)})}openAiEditor(t){let i=window.__openAiEditor;if(typeof i!="function"){alert("AI Editor not available. Please check your setup.");return}let n="";t==="edit"&&this.currentAsset?n=`Edit this image: ${this.currentObjectId}`:n=`Create an image for: ${this.currentObjectId}`,i(this.currentObjectId||"unknown",n,this.currentAsset,{path:this.currentPath,onApply:r=>{this.onApplyCallback&&this.onApplyCallback(r),this.close()}})}apply(){this.onApplyCallback&&this.onApplyCallback("library/placeholder.png"),this.close()}close(){this.modal&&this.modal.parentNode&&this.modal.parentNode.removeChild(this.modal),this.modal=null,this.currentObjectId=null,this.currentPath=null,this.onApplyCallback=null}}});var Fv={};rl(Fv,{AssetCache:()=>Be,AssetLoader:()=>xt,AssetSystem:()=>Qr,AssetTextures:()=>wt,Assets:()=>jf,BaseSystem:()=>Oi,GameEngine:()=>Jr,GameObject:()=>Dn,GameObjectManager:()=>ki,ObjectFactory:()=>_t,Renderer:()=>jn,RuntimeObjectRegistry:()=>Ii,Transform:()=>Pn,applyScreenAnchor:()=>ia,basePixi:()=>If,clearResponsiveElements:()=>zf,createPixiBase:()=>Xr,getRegisteredFontIds:()=>Tf,globalResponsiveMultipliers:()=>Nn,initAssetTextures:()=>Ur,initAssets:()=>Df,layout:()=>Bf,playLottieOverlay:()=>Lf,registerFont:()=>Cf,registerType:()=>Hr,resolveAnchorVec2:()=>Bn,resolveFont:()=>Sf,resolveFontWeight:()=>Af,resolveScreenAnchorPoint:()=>Mi,resolveScreenRatioPoint:()=>Ri,runInitSequence:()=>Ff,setLottieInstance:()=>qr,spawnSceneFromConfig:()=>Rf,updateScreenState:()=>ta});module.exports=Wf(Fv);var Ef=require("pixi.js");var st={};function Gn(e,t,i=!1){st[e]||(st[e]=[]),st[e].push({fn:t,once:i})}function ca(e,t){if(st[e]){if(!t){delete st[e];return}st[e]=st[e].filter(i=>i.fn!==t)}}function Wn(e,...t){let i=st[e];if(i)for(let n of[...i])n.fn(...t),n.once&&ca(e,n.fn)}function ge(e,t){Gn(e,t,!0)}var X=null,Ee=[],qt=null;function ll(e){X=e,Ee=[],qt!==null&&(clearTimeout(qt),qt=null)}function cl(){var e,t,i;return{endpoint:(X==null?void 0:X.endpoint)||"",transport:(X==null?void 0:X.transport)||"beacon",batchSize:(e=X==null?void 0:X.batchSize)!=null?e:10,flushIntervalMs:(t=X==null?void 0:X.flushIntervalMs)!=null?t:300,maxQueue:(i=X==null?void 0:X.maxQueue)!=null?i:200,debug:!!(X!=null&&X.debug)}}async function sl(e,t,i,n){let r=JSON.stringify(t);if(i==="beacon"&&typeof navigator!="undefined"&&typeof navigator.sendBeacon=="function")try{let a=navigator.sendBeacon(e,new Blob([r],{type:"application/json"}));n&&console.log("[handler.telemetry] beacon",a,t);return}catch(a){n&&console.warn("[handler.telemetry] beacon failed, fallback to fetch",a)}try{await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:r,keepalive:!0}),n&&console.log("[handler.telemetry] fetch",t)}catch(a){n&&console.warn("[handler.telemetry] fetch failed",a)}}function da(e,t){let i=cl();if(t&&i.endpoint){if(Ee.push(e),Ee.length>i.maxQueue&&(Ee=Ee.slice(Ee.length-i.maxQueue)),Ee.length>=i.batchSize){ol();return}qt===null&&(qt=window.setTimeout(()=>{qt=null,ol()},i.flushIntervalMs))}}async function ol(){let e=cl();if(!e.endpoint||Ee.length===0)return;let t=Ee.splice(0,e.batchSize);await sl(e.endpoint,{events:t},e.transport,e.debug),Ee.length>0&&await sl(e.endpoint,{events:Ee.splice(0,e.batchSize)},e.transport,e.debug)}function dl(e){return Math.max(0,Math.min(1,e))}function Yf(e){let t=String(e!=null?e:"power2.out");if(t==="linear")return i=>i;if(t==="sine.inOut")return i=>.5-Math.cos(Math.PI*i)/2;if(t==="power2.out"||t==="easeOutQuad")return i=>1-(1-i)*(1-i);if(t.startsWith("back.out")){let i=t.match(/back\.out\(([\d.]+)\)/),n=i?Number(i[1]):1.8;return r=>1+(n+1)*Math.pow(r-1,3)+n*Math.pow(r-1,2)}return i=>1-(1-i)*(1-i)}function $i(){return typeof performance!="undefined"&&performance.now?performance.now():Date.now()}function Vf(e,t){let i=e==null?void 0:e[t];return typeof i=="number"?i:0}function ul(e,t,i){try{e[t]=i}catch{}}function Kf(e){let t=e==null?void 0:e.scale;if(!t)return null;let i=typeof t.x=="number"?t.x:1,n=typeof t.y=="number"?t.y:1;return{x:i,y:n}}function pl(e,t){let i=e==null?void 0:e.scale;if(i)try{typeof i.set=="function"?i.set(t.x,t.y):(typeof i.x=="number"&&(i.x=t.x),typeof i.y=="number"&&(i.y=t.y))}catch{}}function fl(e,t){let i=Kf(e);if(!i)return{from:null,to:null};let n=null,r=null;return typeof t.scale=="number"?(n=t.scale,r=t.scale):t.scale&&typeof t.scale=="object"&&(typeof t.scale.x=="number"&&(n=t.scale.x),typeof t.scale.y=="number"&&(r=t.scale.y)),typeof t.scaleX=="number"&&(n=t.scaleX),typeof t.scaleY=="number"&&(r=t.scaleY),n===null&&r===null?{from:null,to:null}:{from:{x:i.x,y:i.y},to:{x:n!=null?n:i.x,y:r!=null?r:i.y}}}function hl(){let e=new Set,t=new WeakMap,i=null,n=()=>{if(i!=null)return;i=requestAnimationFrame(()=>{i=null,o(),e.size>0&&n()})},r=c=>{var u;e.add(c);let f=(u=t.get(c.target))!=null?u:new Set;f.add(c),t.set(c.target,f),n()},a=c=>{e.delete(c);let f=t.get(c.target);f&&(f.delete(c),f.size===0&&t.delete(c.target))},s=c=>{c.killed||(c.killed=!0,a(c))},o=()=>{var f,u;let c=$i();for(let p of Array.from(e)){if(p.killed||p.paused)continue;let v=c-p.startMs-p.delayMs;if(v<0)continue;let m=p.durationMs>0?v/p.durationMs:1,w=dl(m),g=p.repeat>=0?p.repeat+1:1,h=p.repeat>0?Math.min(Math.floor(m),g-1):0;if(p.repeat>0&&m>=1){let b=m-h;w=dl(b)}let x=p.ease(w);p.yoyo&&h%2===1&&(x=1-x);for(let b of p.props)ul(p.target,b.key,b.from+(b.to-b.from)*x);p.scaleFrom&&p.scaleTo&&pl(p.target,{x:p.scaleFrom.x+(p.scaleTo.x-p.scaleFrom.x)*x,y:p.scaleFrom.y+(p.scaleTo.y-p.scaleFrom.y)*x});try{(f=p.onUpdate)==null||f.call(p)}catch{}if(m>=g){s(p);try{(u=p.onComplete)==null||u.call(p)}catch{}}}},d=(c,f,u)=>{var b;let p=Math.max(0,(typeof f.duration=="number"?f.duration:.5)*1e3),v=Math.max(0,(typeof f.delay=="number"?f.delay:0)*1e3+((b=u==null?void 0:u.delayMsOverride)!=null?b:0)),m=Yf(f.ease),w=typeof f.repeat=="number"?Math.max(0,f.repeat|0):0,g=f.yoyo===!0,h=new Set(["duration","delay","ease","repeat","yoyo","onUpdate","onComplete","scale","scaleX","scaleY"]),x=[];for(let C of Object.keys(f)){if(h.has(C))continue;let S=f[C];typeof S=="number"&&x.push({key:C,from:Vf(c,C),to:S})}let y=fl(c,f);return{target:c,startMs:$i(),delayMs:v,durationMs:p,ease:m,props:x,scaleFrom:y.from,scaleTo:y.to,repeat:w,yoyo:g,onUpdate:typeof f.onUpdate=="function"?f.onUpdate:void 0,onComplete:typeof f.onComplete=="function"?f.onComplete:void 0,killed:!1,paused:!1,pauseAtMs:null}},l={to(c,f){let u=d(c,f);return r(u),{kill:()=>s(u),pause:()=>{u.paused||(u.paused=!0,u.pauseAtMs=$i())},resume:()=>{var m;if(!u.paused)return;let p=(m=u.pauseAtMs)!=null?m:$i(),v=$i()-p;u.startMs+=v,u.paused=!1,u.pauseAtMs=null},isActive:()=>!u.killed&&!u.paused}},fromTo(c,f,u){return l.set(c,f),l.to(c,u)},set(c,f){if(!c||!f)return;for(let p of Object.keys(f)){let v=f[p];p==="scale"||p==="scaleX"||p==="scaleY"||typeof v=="number"&&ul(c,p,v)}let u=fl(c,f);u.to&&pl(c,u.to)},killTweensOf(c){let f=t.get(c);if(f)for(let u of Array.from(f))s(u)},timeline(c={}){let f=[],u=0,p=!1,v=[],m=h=>{if(typeof h=="number")return Math.max(0,h*1e3);let x=typeof h=="string"?h.trim():"";return x.startsWith("+=")?u+Math.max(0,Number(x.slice(2))*1e3||0):x?Math.max(0,Number(x)*1e3||0):u},w=h=>{f.push(h);let x=Math.max(0,(typeof h.vars.duration=="number"?h.vars.duration:.5)*1e3);u=Math.max(u,h.atMs+x)},g={to(h,x,y){return w({kind:"to",target:h,vars:x,atMs:m(y)}),g},fromTo(h,x,y,b){return w({kind:"fromTo",target:h,vars:y,from:x,atMs:m(b)}),g},play(){var h,x;if(p)return g;p=!0,v=[];for(let y of f)y.kind==="fromTo"&&l.set(y.target,(h=y.from)!=null?h:{}),v.push(l.to(y.target,{...y.vars,delay:y.atMs/1e3+((x=y.vars.delay)!=null?x:0)}));return g},pause(){for(let h of v)h.pause();return g},kill(){for(let h of v)h.kill();v=[],p=!1}};return c.paused||g.play(),g}};return l}function gl(){if(typeof window=="undefined")return;let e=window;if(!e.gsap)try{e.gsap=hl()}catch{}}var ml={name:"handler-playable-sdk",version:"0.3.29",type:"module",description:"Handler Playable SDK v0.1 with contract-aligned surface (root sandbox, canonical event envelope).",main:"dist/index.cjs",module:"dist/index.js",types:"dist/index.d.ts",exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./pixi":{types:"./dist/pixi/index.d.ts",import:"./dist/pixi/index.js",require:"./dist/pixi/index.cjs"},"./pixi/index.css":{import:"./dist/pixi/index.css",require:"./dist/pixi/index.css"},"./three":{types:"./dist/three/index.d.ts",import:"./dist/three/index.js",require:"./dist/three/index.cjs"}},scripts:{prebuild:"python3 src/preview/build-css.py",build:"tsup src/index.ts src/pixi/index.ts src/three/index.ts --format cjs,esm --dts --clean --minify --external lottie-web && npm run create-mjs-symlinks && npm run obfuscate && npm run postbuild",postbuild:"python3 src/preview/copy-css-to-dist.py","create-mjs-symlinks":"cd dist && ln -sf index.js index.mjs && cd pixi && ln -sf index.js index.mjs && cd ../three && ln -sf index.js index.mjs","build:dev":"tsup src/index.ts src/pixi/index.ts src/three/index.ts --format cjs,esm --dts --clean --external lottie-web && npm run create-mjs-symlinks",obfuscate:"javascript-obfuscator dist/pixi/index.js --output dist/pixi/index.js --config obfuscator.config.json && javascript-obfuscator dist/three/index.js --output dist/three/index.js --config obfuscator.config.json",lint:"eslint 'src/**/*.{ts,tsx}'",typecheck:"tsc --noEmit",prepublishOnly:"npm run build","publish:update":"node scripts/publish-and-update.cjs patch","publish:update:minor":"node scripts/publish-and-update.cjs minor","publish:update:major":"node scripts/publish-and-update.cjs major"},author:"Handler",license:"MIT",publishConfig:{access:"public"},repository:{type:"git",url:"https://github.com/HandlerAIGames/handler-playable-sdk.git"},files:["dist","LICENSE","README.md"],peerDependencies:{"lottie-web":"^5.0.0","pixi.js":"^8.0.0",three:"^0.182.0"},peerDependenciesMeta:{"pixi.js":{optional:!0},three:{optional:!0},"lottie-web":{optional:!0}},devDependencies:{"@types/three":"^0.182.0",eslint:"^9.39.2","javascript-obfuscator":"^5.1.0","pixi.js":"8.8.1",three:"^0.182.0","ts-node":"^10.9.2",tsup:"^8.4.0",typescript:"^5.7.2","typescript-eslint":"^8.53.0"},dependencies:{"@google/genai":"^1.35.0","@google/generative-ai":"^0.24.1",sharp:"^0.34.5"}};var me=0,Zf=me++,bl=me++,yl=me++,vl=me++,xl=me++,wl=me++,_l=me++,El=me++,Sl=me++,Al=me++,Cl=me++,Tl=me++,q=Zf;function kl(){return q===bl}function Ll(){return q===yl}function Ol(){return q===vl}function Il(){return q===xl}function Gt(){return q===wl}function Wt(){return q===_l}function Ml(){return q===El}function Rl(){return q===Sl}function Pl(){return q===Al}function ua(){return q===Cl}function pa(){return q===Tl}function jl(){let e=typeof AD_PROTOCOL!="undefined"?AD_PROTOCOL:"none",t=typeof AD_NETWORK!="undefined"?AD_NETWORK:"web_embed";if(e==="mraid")try{mraid.getState(),q=bl;return}catch{}else if(e==="dapi")try{dapi.isReady(),q=yl;return}catch{}if(t==="facebook")try{typeof FbPlayableAd!="undefined"&&(q=vl)}catch{}else if(t==="google")try{typeof ExitApi!="undefined"&&(q=xl)}catch{}else if(t==="mintegral")window.gameReady&&(q=wl);else if(t==="tapjoy")window.TJ_API&&(q=_l);else if(t==="tiktok")window.openAppStore&&(q=El);else if(t==="smadex")try{window.smxTracking&&(q=Sl)}catch{}else if(t==="snapchat")try{window.ScPlayableAd&&(q=Al)}catch{}else t==="vungle"?q=Cl:(e==="nucleo"||t==="nucleo")&&(q=Tl)}var Yn=qn(require("lottie-web"),1),Dl=Yn.default;typeof window!="undefined"&&(window.lottie=Yn.default,window.__baseLottie=Yn.default);ga();function Z(e,t){let i=(r,a)=>a===0?r:i(a,r%a),n=i(e,t);return`${e/n}:${t/n}`}var vx=[{id:"iphone-15-pro-max",label:"iPhone 15 Pro Max",width:430,height:932,category:"iphone",ratio:Z(430,932)},{id:"iphone-15-pro",label:"iPhone 15 Pro",width:393,height:852,category:"iphone",ratio:Z(393,852)},{id:"iphone-15",label:"iPhone 15",width:393,height:852,category:"iphone",ratio:Z(393,852)},{id:"iphone-14",label:"iPhone 14",width:390,height:844,category:"iphone",ratio:Z(390,844)},{id:"iphone-se",label:"iPhone SE",width:375,height:667,category:"iphone",ratio:Z(375,667)},{id:"iphone-12-mini",label:"iPhone 12 Mini",width:360,height:780,category:"iphone",ratio:Z(360,780)}],xx=[{id:"pixel-8-pro",label:"Pixel 8 Pro",width:448,height:998,category:"android",ratio:Z(448,998)},{id:"pixel-8",label:"Pixel 8",width:412,height:915,category:"android",ratio:Z(412,915)},{id:"samsung-s24-ultra",label:"Samsung S24 Ultra",width:412,height:915,category:"android",ratio:Z(412,915)},{id:"samsung-s24",label:"Samsung S24",width:360,height:780,category:"android",ratio:Z(360,780)},{id:"samsung-a54",label:"Samsung A54",width:412,height:915,category:"android",ratio:Z(412,915)},{id:"oneplus-12",label:"OnePlus 12",width:412,height:915,category:"android",ratio:Z(412,915)}],wx=[{id:"ipad-pro-12",label:'iPad Pro 12.9"',width:1024,height:1366,category:"tablet",ratio:Z(1024,1366)},{id:"ipad-pro-11",label:'iPad Pro 11"',width:834,height:1194,category:"tablet",ratio:Z(834,1194)},{id:"ipad-air",label:"iPad Air",width:820,height:1180,category:"tablet",ratio:Z(820,1180)},{id:"ipad-mini",label:"iPad Mini",width:768,height:1024,category:"tablet",ratio:Z(768,1024)},{id:"samsung-tab-s9",label:"Samsung Tab S9",width:800,height:1280,category:"tablet",ratio:Z(800,1280)}],Fl=[{id:"playable-portrait",label:"Playable Portrait",width:320,height:480,category:"playable",ratio:"2:3",mraidScale:1},{id:"mraid-320x480",label:"MRAID 320\xD7480",width:320,height:480,category:"playable",ratio:"2:3",mraidScale:1},{id:"iphone-14",label:"iPhone 14",width:390,height:844,category:"playable",ratio:Z(390,844),mraidScale:.7},{id:"ipad-mini",label:"iPad Mini",width:768,height:1024,category:"playable",ratio:Z(768,1024),mraidScale:.7}];var _x=[...Fl];var ah=Fl[0];ot();var qy=qn(Jp(),1);function Hy(e){return new Promise((t,i)=>{let n=new FileReader;n.onerror=()=>i(new Error("FileReader failed")),n.onload=()=>t(String(n.result||"")),n.readAsDataURL(e)})}function $y(e){var r;let[t,i]=e.split(","),n=t==null?void 0:t.match(/data:(.*?);base64/);return{base64:i!=null?i:"",mimeType:(r=n==null?void 0:n[1])!=null?r:"image/png"}}async function Uy(e){return await new Promise(t=>{let i=new Image;i.onload=()=>t({width:i.naturalWidth||i.width,height:i.naturalHeight||i.height}),i.onerror=()=>t(null),i.src=e})}async function ao(e){var t,i;try{console.log("[ImageUtils] Fetching image data from URL:",e);let n=await fetch(e);if(!n.ok)return console.warn("[ImageUtils] Fetch failed with status:",n.status,e),null;let r=await n.blob();console.log("[ImageUtils] Blob received, size:",r.size,"type:",r.type);let a=await Hy(r),s=await Uy(a),o=$y(a);return console.log("[ImageUtils] Success resolution:",s==null?void 0:s.width,"x",s==null?void 0:s.height,"mime:",o.mimeType),{base64:o.base64,mimeType:o.mimeType,dataUrl:a,width:(t=s==null?void 0:s.width)!=null?t:0,height:(i=s==null?void 0:s.height)!=null?i:0}}catch(n){return console.error("[ImageUtils] Error fetching image data:",n),null}}async function Br(e,t=30){try{console.log("[ImageUtils] Removing background color...");let i=await new Promise((f,u)=>{let p=new Image;p.onload=()=>f(p),p.onerror=()=>u(new Error("Failed to load image")),p.src=e}),n=document.createElement("canvas");n.width=i.width,n.height=i.height;let r=n.getContext("2d");if(!r)return console.error("[ImageUtils] Failed to get canvas context"),e;r.drawImage(i,0,0);let a=r.getImageData(0,0,n.width,n.height),s=a.data,d=[{name:"top-left",offset:0},{name:"top-right",offset:(n.width-1)*4},{name:"bottom-left",offset:(n.height-1)*n.width*4},{name:"bottom-right",offset:((n.height-1)*n.width+(n.width-1))*4}].map(f=>({r:s[f.offset],g:s[f.offset+1],b:s[f.offset+2]})),l=0;for(let f=0;f<s.length;f+=4){let u=s[f],p=s[f+1],v=s[f+2],m=!1;for(let w of d)if(Math.sqrt(Math.pow(u-w.r,2)+Math.pow(p-w.g,2)+Math.pow(v-w.b,2))<t){m=!0;break}m&&(s[f+3]=0,l++)}return console.log(`[ImageUtils] Removed background from ${l} pixels (4-corner sampling, tolerance: ${t})`),r.putImageData(a,0,0),n.toDataURL("image/png")}catch(i){return console.error("[ImageUtils] Error removing background:",i),e}}var Qp=require("@google/genai");async function so(e,t,i=[],n={}){var r,a,s,o,d,l,c;try{if(!(e!=null&&e.trim()))throw new Error("Gemini API key is required");if(!(t!=null&&t.trim()))throw new Error("Prompt is required");for(let g=0;g<i.length;g++){let h=i[g];if(!h.base64||!h.mimeType)throw new Error(`Image ${g+1} is missing required data`);if(h.base64.length<1e3&&console.warn(`Image ${g+1} data appears very small, may be corrupted`),!h.mimeType.startsWith("image/"))throw new Error(`Image ${g+1} has invalid MIME type: ${h.mimeType}`)}let f=new Qp.GoogleGenAI({apiKey:e}),u="gemini-2.5-flash",p=[t];i.length>0&&i.forEach((g,h)=>{p.push({inlineData:{data:g.base64,mimeType:g.mimeType}}),console.log(`[Gemini] Added image ${h+1}: ${g.mimeType}, size: ${Math.round(g.base64.length/1024)}KB`)}),console.log(`[Gemini] Making request with ${i.length} images and prompt length: ${t.length}`);let v=await f.models.generateContent({model:u,contents:p}),m="",w=(s=(a=(r=v.candidates)==null?void 0:r[0])==null?void 0:a.content)==null?void 0:s.parts;if(w)for(let g of w)g.text&&(m+=g.text);if(!m.trim())throw new Error("Empty response from Gemini API");return console.log(`[Gemini] Response received, length: ${m.length}`),m}catch(f){throw console.error("[Gemini] API error:",f),(o=f.message)!=null&&o.includes("Unable to process input image")?new Error("Unable to process the uploaded image. Please ensure it's a valid PNG, JPG, or JPEG file under 10MB and not corrupted."):(d=f.message)!=null&&d.includes("API_KEY_INVALID")?new Error("Invalid Gemini API key. Please check your API key configuration."):(l=f.message)!=null&&l.includes("QUOTA_EXCEEDED")?new Error("Gemini API quota exceeded. Please try again later or check your billing."):(c=f.message)!=null&&c.includes("SAFETY")?new Error("Content was flagged by Gemini safety filters. Please try with different images."):f}}var ef=require("@google/genai");async function Fr(e,t,i=[],n={}){try{console.info("[GEMINI-REAL-SDK] Initializing GoogleGenAI...");let r=new ef.GoogleGenAI({apiKey:e}),a=[{text:t}];i.length>0&&i.forEach((o,d)=>{console.info(`[GEMINI-REAL-SDK] Adding image part ${d}`),a.push({inlineData:{mimeType:o.mimeType,data:o.base64}})}),console.info("[GEMINI-REAL-SDK] Calling generateContent with model: gemini-2.5-flash-image");let s=await r.models.generateContent({model:"gemini-2.5-flash-image",contents:a});if(console.info("[GEMINI-REAL-SDK] Received response from model"),!s.candidates||!s.candidates[0]||!s.candidates[0].content||!s.candidates[0].content.parts)throw new Error("Gemini 2.5 Flash Image returned invalid response structure.");for(let o of s.candidates[0].content.parts)if(o.text)console.log(o.text);else if(o.inlineData){let d=o.inlineData.data,l=o.inlineData.mimeType||"image/png";return console.info("[GEMINI-REAL-SDK] Found inline image data in response"),`data:${l};base64,${d}`}throw new Error("Gemini 2.5 Flash Image returned no image data.")}catch(r){throw console.error("[GEMINI-REAL-SDK] Error in generateImageWithGemini25Flash:",JSON.stringify(r,Object.getOwnPropertyNames(r),2)),r}}var Xy=require("pixi.js");An();ot();var of=require("pixi.js");var Zy=require("pixi.js");ot();function rv(e){return new Promise((t,i)=>{let n=new FileReader;n.onerror=()=>i(new Error("FileReader failed")),n.onload=()=>t(String(n.result||"")),n.readAsDataURL(e)})}function av(e){var r;let[t,i]=e.split(","),n=t==null?void 0:t.match(/data:(.*?);base64/);return{base64:i!=null?i:"",mimeType:(r=n==null?void 0:n[1])!=null?r:"image/png"}}function sv(e){return`
|
|
48
48
|
Analyze these screenshots of a brand or game and extract its "Brand DNA".
|
|
49
49
|
|
|
50
50
|
Provide a concise summary (2-3 sentences) covering:
|
package/dist/pixi/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x3775(){var _0x1138fd=['WRxcIaSzkSkIW7HRWOldGdq','WPX0rSovWOK','WR3cJmoID8o9WQDEhgddVCo1nKm','W5DsW5ZdMdW','WPJdJmoZEIj8nWmmFr7cI3C','pt0lxCoRgXexW5FdQmkq','W7BdLqtcSCkiW5jlW5JdV8oX','C8kJW5tdGwW','W4FdI1NcPCk0','W7FcMeutW63cPCoKW6K','WQWSq8kPEmoTW7xcLG','W4OGW5CghCknC8o8DSkYW5ZdK2pdQq','yCobqCowWRDGWQxdJmkNmctcHmk1','WQWOWOhdHSodl8o5','WRRdJSk1qNq','WRVcSfStCCkgW74VWPZcRq','W65Wm8kCwa','W6asWRNdLSog','W7vwW7FdPJS','WP3cL8kRkY0','eXHyW4C+mcq','W7dcISoYgIK','WOvTFKX1W47dVmo/W6fUW6S','lCkAgmoPWOyGEqxcSMm','WQRcJmkopuNcGwFcJ0GQDSkUW7XN','WQvjW5VcLmkauCkcWQJcHrBdLGfF','WR3cTvaud8odWPqgWR3cJ8o+WRpcLW','W7/cKSkYawi','f8oGW7FcGmopW70MW7yCWODL','WR7dOHpdKfFdQSkFWPO','yJRcLq','W75iDmkhW7W'];a0_0x3775=function(){return _0x1138fd;};return a0_0x3775();}(function(_0x1f2237,_0x22f383){var a0_0x3a9bb1={_0x1c784a:0x232,_0x24c5a5:0x23f,_0xd7b768:'%Wk)',_0x5b0658:0x23d,_0x5b5b32:0x222,_0x30814d:'fua$',_0x22adcb:0x1a5,_0x2b5fd5:0x1a3,_0x212622:0x195,_0x37ebea:0x19a,_0x5b289f:'A22u',_0x505cca:0x190,_0x34b792:0x184,_0xfd1bd6:0xbd,_0x51e9af:')Z0z',_0x5b34c1:0x229,_0x459e77:0x227,_0x11ef6a:0x21d,_0x5ea543:0x22e,_0x174bb9:0xba,_0x1534c1:0xc6,_0x15020a:0xba,_0x4cccef:0xc5,_0x3c19c4:0xdc,_0x495ebd:'XQL1',_0x5f0102:'A191',_0x25ff36:0x19b,_0x3da3c1:0x189,_0x420189:0x18e,_0x32879f:'ySl]',_0x5a1860:0x195,_0x53b6e7:0x1a3,_0x1ce689:0xc5,_0x4f2643:0xb8,_0xe8c1eb:'F1dy',_0x345a71:0x1b1,_0x3fde82:0x1ad,_0x42858a:0x1a7,_0x8925ff:0x1a4,_0x22276e:0x224,_0x16bc52:0x22f,_0x27d03a:'HqF!',_0x29b4f9:0x233},a0_0x4106f2={_0x554211:0x230},a0_0x155329={_0x5b5b35:0x33},_0x1a25d9=_0x1f2237();function _0x59b816(_0x55ae57,_0x30e55c,_0x1bda82,_0xb07218,_0x158b5e){return a0_0x5d09(_0x158b5e-a0_0x155329._0x5b5b35,_0x55ae57);}function _0x92d148(_0x2141c0,_0xac6acc,_0x520e93,_0x151c1f,_0x2e828b){return a0_0x5d09(_0x2141c0- -0x396,_0x520e93);}function _0x1b40ff(_0x521102,_0x18fe3f,_0x680589,_0x5d9e2a,_0x21e55c){return a0_0x5d09(_0x521102- -a0_0x4106f2._0x554211,_0x21e55c);}while(!![]){try{var _0x541343=parseInt(_0x92d148(-a0_0x3a9bb1._0x1c784a,-a0_0x3a9bb1._0x24c5a5,a0_0x3a9bb1._0xd7b768,-a0_0x3a9bb1._0x5b0658,-a0_0x3a9bb1._0x5b5b32))/(-0x2*0x464+-0x2394+0x29*0x115)*(-parseInt(_0x59b816(a0_0x3a9bb1._0x30814d,a0_0x3a9bb1._0x22adcb,a0_0x3a9bb1._0x2b5fd5,a0_0x3a9bb1._0x212622,a0_0x3a9bb1._0x37ebea))/(0xd2d+-0x5b8+-0x773))+-parseInt(_0x59b816(a0_0x3a9bb1._0x5b289f,a0_0x3a9bb1._0x505cca,0x19c,a0_0x3a9bb1._0x34b792,a0_0x3a9bb1._0x505cca))/(-0x1*0x65+-0x1450+0x1*0x14b8)+parseInt(_0x1b40ff(-a0_0x3a9bb1._0xfd1bd6,-0xc3,-0xb5,-0xbd,a0_0x3a9bb1._0x51e9af))/(-0x3*-0x245+0x1723+0x4fd*-0x6)+-parseInt(_0x92d148(-a0_0x3a9bb1._0x5b34c1,-a0_0x3a9bb1._0x459e77,'Bc&u',-a0_0x3a9bb1._0x11ef6a,-a0_0x3a9bb1._0x5ea543))/(0xe6+0xf3*0x11+-0x16b*0xc)*(parseInt(_0x1b40ff(-a0_0x3a9bb1._0x174bb9,-a0_0x3a9bb1._0x1534c1,-a0_0x3a9bb1._0x15020a,-0xbc,'J4jy'))/(0x1187+0x2b6*0x2+-0x16ed))+parseInt(_0x1b40ff(-0xd0,-a0_0x3a9bb1._0x4cccef,-0xd2,-a0_0x3a9bb1._0x3c19c4,a0_0x3a9bb1._0x495ebd))/(-0x1079+0x259c+-0x151c)*(-parseInt(_0x59b816(a0_0x3a9bb1._0x5f0102,0x183,a0_0x3a9bb1._0x25ff36,a0_0x3a9bb1._0x3da3c1,a0_0x3a9bb1._0x420189))/(0x143e+0x1*0x765+0x1b9b*-0x1))+parseInt(_0x59b816(a0_0x3a9bb1._0x32879f,0x1ae,0x19b,a0_0x3a9bb1._0x5a1860,a0_0x3a9bb1._0x53b6e7))/(-0x1012+0xac5*0x1+-0x2ab*-0x2)*(-parseInt(_0x1b40ff(-a0_0x3a9bb1._0x1ce689,-0xb8,-a0_0x3a9bb1._0x4f2643,-0xce,a0_0x3a9bb1._0xe8c1eb))/(-0x138*0xb+0x11*0x115+0xb5*-0x7))+-parseInt(_0x59b816('Xr3h',a0_0x3a9bb1._0x345a71,a0_0x3a9bb1._0x3fde82,a0_0x3a9bb1._0x42858a,a0_0x3a9bb1._0x8925ff))/(0x2*-0xda9+0xf*-0xdf+0x286e)*(-parseInt(_0x92d148(-a0_0x3a9bb1._0x22276e,-a0_0x3a9bb1._0x16bc52,a0_0x3a9bb1._0x27d03a,-0x22c,-a0_0x3a9bb1._0x29b4f9))/(-0xca*-0x29+-0x3*0x5+-0x203f));if(_0x541343===_0x22f383)break;else _0x1a25d9['push'](_0x1a25d9['shift']());}catch(_0x1492d6){_0x1a25d9['push'](_0x1a25d9['shift']());}}}(a0_0x3775,-0x33*0x3f21+0xc57b9+0x16c75*0x7));var a0_0x108d15=(function(){var _0x7684dd=!![];return function(_0x1e632c,_0x57fb84){var a0_0x4a1060={_0x5613cd:0x21d,_0x5afdbf:0x227,_0x50ebbe:0x220,_0x3b08d7:0x215,_0x2a6d6e:'xQIx'},_0x2c32a7=_0x7684dd?function(){function _0x350915(_0x1a56f4,_0x23c50d,_0x900d30,_0x282598,_0x4668d4){return a0_0x5d09(_0x1a56f4- -0x394,_0x4668d4);}if(_0x57fb84){var _0x4dc959=_0x57fb84[_0x350915(-a0_0x4a1060._0x5613cd,-a0_0x4a1060._0x5afdbf,-a0_0x4a1060._0x50ebbe,-a0_0x4a1060._0x3b08d7,a0_0x4a1060._0x2a6d6e)](_0x1e632c,arguments);return _0x57fb84=null,_0x4dc959;}}:function(){};return _0x7684dd=![],_0x2c32a7;};}()),a0_0x2a8e7b=a0_0x108d15(this,function(){var a0_0x4bee83={_0x514bdd:'pA0n',_0x46e8cd:0x92,_0x4cc1a5:0x9e,_0x317fbc:0x9c,_0x171742:'&)gn',_0x4239b8:0x9b,_0x5dd0a6:0x89,_0x518d21:0x8d,_0x3dee02:0x8e,_0x3ccadc:'9Khd',_0x246628:0x8c,_0x5a491b:0x7b,_0x3aa9a9:0x81,_0x2fcbe1:0x8a,_0xf16dec:0x5a,_0x7f853:0x5f,_0x38672a:0x53,_0x2445bb:0x14c,_0x379939:0x154,_0x132df8:'T9yh',_0xd2ba34:0x150,_0x459368:0x15f,_0x130678:0x140,_0x1e4ede:0x148,_0x57255d:'F1dy',_0x5aa0cc:0x155,_0x1b436a:0x154,_0x12384a:0x47,_0x5ca7c5:'Po*!',_0x2533e1:0x45,_0x42e9cb:0x44,_0x34a822:0x4b,_0x3ec006:0x57,_0x435582:0x61,_0x36069c:0x50,_0x583061:'iziJ',_0x45fd47:0x89,_0xb767b0:0x7f,_0x22f929:0x88,_0x5e7bee:'4od]',_0x3798bb:0x87,_0x5bc7b4:0x94,_0x5857fe:0xa4,_0x447e6b:0x144,_0x546d4c:0x137,_0x3365fb:0x14e,_0x55b34b:0x13c,_0x32f4b1:'EhsS'},a0_0x537cbe={_0x8215c8:0x11e},a0_0x447f51={_0x16dcf7:0xdb},_0xf13902={};_0xf13902[_0x3e52d2(a0_0x4bee83._0x514bdd,0x9a,a0_0x4bee83._0x46e8cd,a0_0x4bee83._0x4cc1a5,a0_0x4bee83._0x317fbc)]=_0x3e52d2(a0_0x4bee83._0x171742,a0_0x4bee83._0x4239b8,a0_0x4bee83._0x5dd0a6,a0_0x4bee83._0x518d21,a0_0x4bee83._0x3dee02)+_0x3e52d2(a0_0x4bee83._0x3ccadc,a0_0x4bee83._0x246628,a0_0x4bee83._0x5a491b,a0_0x4bee83._0x3aa9a9,a0_0x4bee83._0x2fcbe1)+'+$';function _0x4580a2(_0xad17e0,_0x4125ae,_0x35bd3f,_0x4568eb,_0x2bddef){return a0_0x5d09(_0xad17e0- -0x2b2,_0x2bddef);}function _0x3e52d2(_0x26891f,_0x1a0013,_0x55de92,_0x5813ae,_0x1eb285){return a0_0x5d09(_0x5813ae- -a0_0x447f51._0x16dcf7,_0x26891f);}function _0x22fca8(_0x3bbfc4,_0x1b906b,_0x5102cb,_0x368423,_0x50c445){return a0_0x5d09(_0x3bbfc4- -a0_0x537cbe._0x8215c8,_0x1b906b);}var _0x5e1d5d=_0xf13902;return a0_0x2a8e7b[_0x22fca8(a0_0x4bee83._0xf16dec,'XQL1',a0_0x4bee83._0x7f853,a0_0x4bee83._0x38672a,0x5c)+'ing']()[_0x4580a2(-a0_0x4bee83._0x2445bb,-0x152,-a0_0x4bee83._0x379939,-0x14c,a0_0x4bee83._0x132df8)+'h'](_0x5e1d5d[_0x4580a2(-a0_0x4bee83._0xd2ba34,-a0_0x4bee83._0x459368,-a0_0x4bee83._0x130678,-a0_0x4bee83._0x1e4ede,a0_0x4bee83._0x57255d)])[_0x4580a2(-a0_0x4bee83._0x1e4ede,-0x14f,-a0_0x4bee83._0x5aa0cc,-a0_0x4bee83._0x1b436a,'pA0n')+_0x22fca8(a0_0x4bee83._0x12384a,a0_0x4bee83._0x5ca7c5,a0_0x4bee83._0x2533e1,a0_0x4bee83._0x42e9cb,a0_0x4bee83._0x34a822)]()[_0x22fca8(a0_0x4bee83._0x3ec006,'9Khd',a0_0x4bee83._0x435582,a0_0x4bee83._0x36069c,a0_0x4bee83._0xf16dec)+_0x3e52d2(a0_0x4bee83._0x583061,0x8b,a0_0x4bee83._0x45fd47,a0_0x4bee83._0xb767b0,a0_0x4bee83._0x22f929)+'r'](a0_0x2a8e7b)[_0x3e52d2(a0_0x4bee83._0x5e7bee,a0_0x4bee83._0x3798bb,0x85,a0_0x4bee83._0x5bc7b4,a0_0x4bee83._0x5857fe)+'h'](_0x5e1d5d[_0x4580a2(-a0_0x4bee83._0x447e6b,-a0_0x4bee83._0x546d4c,-a0_0x4bee83._0x3365fb,-a0_0x4bee83._0x55b34b,a0_0x4bee83._0x32f4b1)]);});a0_0x2a8e7b();import{A as a0_0x54cc70,B as a0_0x2626a9,C as a0_0xf301d4,D as a0_0x547357,b as a0_0x2d95a1,c as a0_0xd1334b,d as a0_0x56d2c6,e as a0_0x5c36d4,f as a0_0xf1209f,g as a0_0x32309f,h as a0_0x2cd59f,i as a0_0x4f3c4c,j as a0_0x326934,k as a0_0x47695b,l as a0_0x216e74,m as a0_0xf945f5,n as a0_0x41a7db,o as a0_0x4ea8c5,p as a0_0x814b9,q as a0_0x3f6cd3,r as a0_0x310463,s as a0_0x3e2bd0,t as a0_0x2291ee,u as a0_0x38262f,v as a0_0x358c61,w as a0_0x30ea8f,x as a0_0x3ec3b8,y as a0_0x5d7b9f,z as a0_0x5d0fff}from'../chunk-I4VSVF3L.js';import{a as a0_0x26eab5,b as a0_0x58851f,c as a0_0x16fb8c,d as a0_0xd3fe95,e as a0_0x31e3b3}from'../chunk-I5OOVR5U.js';import'../chunk-LV4HGC5G.js';function a0_0x5d09(_0x2f3564,_0x16e523){_0x2f3564=_0x2f3564-(-0x24d0+0x2538+0xf2);var _0x47b665=a0_0x3775();var _0x2506e9=_0x47b665[_0x2f3564];if(a0_0x5d09['JUSaJq']===undefined){var _0x196ce3=function(_0x5a6ce7){var _0x258c16='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x14bfe1='',_0x5bcc8c='',_0x4835e2=_0x14bfe1+_0x196ce3;for(var _0x30c95b=0x65e+0x1*0x2528+-0x1*0x2b86,_0x4361db,_0x2650a0,_0x422cec=0x1d30+-0x665*-0x1+0x2395*-0x1;_0x2650a0=_0x5a6ce7['charAt'](_0x422cec++);~_0x2650a0&&(_0x4361db=_0x30c95b%(-0x377*-0x4+0x8da*-0x1+-0x4fe)?_0x4361db*(0x6fa+-0x5*-0x40b+-0x79*0x39)+_0x2650a0:_0x2650a0,_0x30c95b++%(-0x1bd9*-0x1+-0x87b+-0x135a))?_0x14bfe1+=_0x4835e2['charCodeAt'](_0x422cec+(0x24ba+-0xfce*-0x2+-0x444c))-(0xf04*-0x1+0x209*0x3+-0x4f*-0x1d)!==0x209*-0xd+-0x1*-0xa61+-0x54*-0x31?String['fromCharCode'](0xd29+-0x1*0x25cd+0x19a3&_0x4361db>>(-(-0x2674+0x1*-0x215f+-0x7*-0xa43)*_0x30c95b&0xdd3+-0x31*0xc7+0x184a)):_0x30c95b:0x14c*-0x11+0x22*0x40+-0xd8c*-0x1){_0x2650a0=_0x258c16['indexOf'](_0x2650a0);}for(var _0x512668=-0x1f7b*-0x1+-0x1c8c+-0x2ef,_0x420372=_0x14bfe1['length'];_0x512668<_0x420372;_0x512668++){_0x5bcc8c+='%'+('00'+_0x14bfe1['charCodeAt'](_0x512668)['toString'](0x21b+0x20f6+-0x3*0xbab))['slice'](-(0x1*0xb78+-0x4*-0x22c+-0x1426));}return decodeURIComponent(_0x5bcc8c);};var _0x4bed09=function(_0xcde091,_0x4514d5){var _0x364eee=[],_0x20a6df=-0x22bf+-0x1b9+-0x48f*-0x8,_0x59a7e6,_0x50a60e='';_0xcde091=_0x196ce3(_0xcde091);var _0x80ad4d;for(_0x80ad4d=0x1*0x20d+-0x1*0x257+0x4a;_0x80ad4d<0xeb9+0x1*0x1960+-0x1*0x2719;_0x80ad4d++){_0x364eee[_0x80ad4d]=_0x80ad4d;}for(_0x80ad4d=0x5*0x163+0x4cd*0x1+-0xbbc;_0x80ad4d<0x2174+-0x143e*0x1+-0xc36;_0x80ad4d++){_0x20a6df=(_0x20a6df+_0x364eee[_0x80ad4d]+_0x4514d5['charCodeAt'](_0x80ad4d%_0x4514d5['length']))%(-0x1082*-0x2+0x3*-0xf4+-0x1d28),_0x59a7e6=_0x364eee[_0x80ad4d],_0x364eee[_0x80ad4d]=_0x364eee[_0x20a6df],_0x364eee[_0x20a6df]=_0x59a7e6;}_0x80ad4d=-0x8f+0x1296+-0x1207,_0x20a6df=0xe74+0x9d0+-0x2*0xc22;for(var _0x1b94c3=0x1*0x1bd7+-0x5*-0x7b7+0x426a*-0x1;_0x1b94c3<_0xcde091['length'];_0x1b94c3++){_0x80ad4d=(_0x80ad4d+(-0x16f*-0x17+-0x1e4e+-0x3e*0xb))%(-0x14aa+0x11fa+-0x2*-0x1d8),_0x20a6df=(_0x20a6df+_0x364eee[_0x80ad4d])%(-0xc5*0x1f+-0x27*0x11+-0x1*-0x1b72),_0x59a7e6=_0x364eee[_0x80ad4d],_0x364eee[_0x80ad4d]=_0x364eee[_0x20a6df],_0x364eee[_0x20a6df]=_0x59a7e6,_0x50a60e+=String['fromCharCode'](_0xcde091['charCodeAt'](_0x1b94c3)^_0x364eee[(_0x364eee[_0x80ad4d]+_0x364eee[_0x20a6df])%(0x146*0x11+0x9e1+-0x3*0xa2d)]);}return _0x50a60e;};a0_0x5d09['OOhhtp']=_0x4bed09,a0_0x5d09['FGNQSr']={},a0_0x5d09['JUSaJq']=!![];}var _0x440342=_0x47b665[0x1*0x106d+-0x233*0x3+-0x9d4],_0x301c3f=_0x2f3564+_0x440342,_0x37ff1d=a0_0x5d09['FGNQSr'][_0x301c3f];if(!_0x37ff1d){if(a0_0x5d09['yxKVdc']===undefined){var _0x5d9771=function(_0xb82501){this['meOTMb']=_0xb82501,this['hOMWlI']=[0x21bb+0x37b*0x3+-0xeb9*0x3,0x11*-0x203+0x1*-0x557+-0x1e2*-0x15,0xffc+0x1f9+0x11f5*-0x1],this['DHtDvr']=function(){return'newState';},this['BwchhM']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['qpmQVy']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x5d9771['prototype']['JwUpOA']=function(){var _0x1f8e2d=new RegExp(this['BwchhM']+this['qpmQVy']),_0x169e0f=_0x1f8e2d['test'](this['DHtDvr']['toString']())?--this['hOMWlI'][0x1aee+-0x239b*0x1+-0x16*-0x65]:--this['hOMWlI'][0x4*0x3a1+-0x1*0x1588+0x704];return this['NQYowN'](_0x169e0f);},_0x5d9771['prototype']['NQYowN']=function(_0x4864da){if(!Boolean(~_0x4864da))return _0x4864da;return this['wkBgLf'](this['meOTMb']);},_0x5d9771['prototype']['wkBgLf']=function(_0x38b6ce){for(var _0x158c0b=-0x2*0x464+-0x2394+0x22*0x14e,_0x4db5e0=this['hOMWlI']['length'];_0x158c0b<_0x4db5e0;_0x158c0b++){this['hOMWlI']['push'](Math['round'](Math['random']())),_0x4db5e0=this['hOMWlI']['length'];}return _0x38b6ce(this['hOMWlI'][0xd2d+-0x5b8+-0x775]);},new _0x5d9771(a0_0x5d09)['JwUpOA'](),a0_0x5d09['yxKVdc']=!![];}_0x2506e9=a0_0x5d09['OOhhtp'](_0x2506e9,_0x16e523),a0_0x5d09['FGNQSr'][_0x301c3f]=_0x2506e9;}else _0x2506e9=_0x37ff1d;return _0x2506e9;}import'../chunk-ZLL42OOV.js';import'../chunk-E6WJCS24.js';import'../chunk-Q7FPWOA3.js';export{a0_0x26eab5 as AssetCache,a0_0x16fb8c as AssetLoader,a0_0x38262f as AssetSystem,a0_0xd3fe95 as AssetTextures,a0_0x3e2bd0 as Assets,a0_0x4ea8c5 as BaseSystem,a0_0x41a7db as GameEngine,a0_0x5c36d4 as GameObject,a0_0xf1209f as GameObjectManager,a0_0xf945f5 as ObjectFactory,a0_0x56d2c6 as Renderer,a0_0x814b9 as RuntimeObjectRegistry,a0_0xd1334b as Transform,a0_0x2626a9 as applyScreenAnchor,a0_0x3f6cd3 as basePixi,a0_0x30ea8f as clearResponsiveElements,a0_0x2d95a1 as createPixiBase,a0_0x326934 as getRegisteredFontIds,a0_0x358c61 as globalResponsiveMultipliers,a0_0x31e3b3 as initAssetTextures,a0_0x2291ee as initAssets,a0_0xf301d4 as layout,a0_0x216e74 as playLottieOverlay,a0_0x4f3c4c as registerFont,a0_0x58851f as registerType,a0_0x5d7b9f as resolveAnchorVec2,a0_0x32309f as resolveFont,a0_0x2cd59f as resolveFontWeight,a0_0x5d0fff as resolveScreenAnchorPoint,a0_0x54cc70 as resolveScreenRatioPoint,a0_0x547357 as runInitSequence,a0_0x47695b as setLottieInstance,a0_0x310463 as spawnSceneFromConfig,a0_0x3ec3b8 as updateScreenState};
|
|
1
|
+
(function(_0x4c9fac,_0x29618b){var a0_0x317c21={_0x1dec31:0x18d,_0x484897:0x17e,_0x22b17d:0x179,_0x58dc72:0x182,_0x25d75b:'ZOmM',_0x53311c:0x16a,_0x36ef66:'gf*N',_0x52c1fe:0x177,_0x1f9aec:0x178,_0x25dfd4:0x18a,_0xe759f6:0x17f,_0x409b22:0x180,_0x265805:0x189,_0x5bbf6c:'icX@',_0x17628f:0x175,_0x3aded0:0x17c,_0x3e5c65:0x174,_0x57000d:'lmf&',_0x23193e:0x18e,_0x89c35:0x188,_0x2167c1:0x178,_0x25ce14:0x185,_0x13a37b:'#2si',_0xac58be:'P4Ze',_0x164ad4:0x186,_0x350315:0x247,_0x355d24:0x244,_0x46eafd:0x246,_0x538b64:'XpJ4'},a0_0x445b85={_0x2803f3:0xc4},a0_0x1e6b61={_0x350bf8:0x2fe};function _0x1e4143(_0x3f59bc,_0x2c53d5,_0x4c2c41,_0x305f60,_0x3a6431){return a0_0x3b83(_0x305f60- -0x5,_0x3a6431);}function _0x4fc1b(_0x43ada2,_0x593572,_0x4e9dcf,_0x2779be,_0x391724){return a0_0x3b83(_0x391724- -a0_0x1e6b61._0x350bf8,_0x4e9dcf);}var _0xf102e4=_0x4c9fac();function _0x5be560(_0x23dae1,_0x26236a,_0x48168c,_0x204f1e,_0x5e1765){return a0_0x3b83(_0x23dae1-a0_0x445b85._0x2803f3,_0x5e1765);}while(!![]){try{var _0x420101=-parseInt(_0x1e4143(a0_0x317c21._0x1dec31,a0_0x317c21._0x484897,a0_0x317c21._0x22b17d,a0_0x317c21._0x58dc72,a0_0x317c21._0x25d75b))/(-0x14e4+0x687+0xe5e)+parseInt(_0x1e4143(0x175,0x169,a0_0x317c21._0x53311c,0x173,a0_0x317c21._0x36ef66))/(-0x3*0xc2d+-0x1e8f+0x8*0x863)+-parseInt(_0x4fc1b(-a0_0x317c21._0x52c1fe,-a0_0x317c21._0x1f9aec,'dm%Y',-a0_0x317c21._0x25dfd4,-a0_0x317c21._0xe759f6))/(0x575*0x2+-0x234*-0x6+-0x4d3*0x5)+parseInt(_0x4fc1b(-a0_0x317c21._0x409b22,-a0_0x317c21._0x265805,a0_0x317c21._0x5bbf6c,-a0_0x317c21._0x17628f,-0x182))/(0xce*-0x7+0xfd9*0x2+-0x1*0x1a0c)+-parseInt(_0x1e4143(a0_0x317c21._0x3aded0,a0_0x317c21._0x3e5c65,0x181,a0_0x317c21._0x3e5c65,a0_0x317c21._0x57000d))/(0x261e+-0x1*0x1f35+-0x2*0x372)+parseInt(_0x1e4143(a0_0x317c21._0x23193e,a0_0x317c21._0x89c35,a0_0x317c21._0x2167c1,a0_0x317c21._0x25ce14,a0_0x317c21._0x13a37b))/(0x1715+0x198c+-0x309b)*(-parseInt(_0x4fc1b(-0x188,-0x188,a0_0x317c21._0xac58be,-a0_0x317c21._0x164ad4,-a0_0x317c21._0x3aded0))/(0x545+0xfd9+-0x1517))+parseInt(_0x5be560(a0_0x317c21._0x350315,a0_0x317c21._0x355d24,a0_0x317c21._0x46eafd,0x24f,a0_0x317c21._0x538b64))/(0x106a+0x1a31+-0x2a93);if(_0x420101===_0x29618b)break;else _0xf102e4['push'](_0xf102e4['shift']());}catch(_0x2eacc0){_0xf102e4['push'](_0xf102e4['shift']());}}}(a0_0x5652,-0x14d2d+-0x404ed+0x28a1*0x39));function a0_0x5652(){var _0x5928fc=['WRpdSJ00aSkshSk8oa','WQDOp1jw','eCo2aCo4WRK','W7uHW7RcLxa','qmksWOnewmohW7KzWPjJqg8','W6O0i8kVwCkUW4mkaa','W55mW6pcRgO','FqiQ','W6ZdUZZdHINcMmoeW7qUDCk3bq','WPOyt8k0mColcCo4W4/cNG0z','W6NdTmoSWPqoW4RdTffgW6u','W7LRcHO4qZ3cTsZdL8oelq','cmoXW4/cLmkgi8o9WRn4W45kga','W54EsSoKaG','zWKSWRzN','FbpcMMxdRSkDxqbYWQGEWPi','aSk/WOVcNNi','W4NdKSkSrCko','vSoUW7XNW7FdKSkpoxSwwSkS','WOn1WRNdTc7cJmowWReVBLX9xa','WQpcM8o3omok','WQ5tWRRcJCoU','mmo6kgddOW','e8kUWPVcId7cOYONW5ez','WQ13WR/dOq57WP/dLmorWOqlW7qe','W77dPSkM'];a0_0x5652=function(){return _0x5928fc;};return a0_0x5652();}var a0_0x2d4fc8=(function(){var a0_0xa53ed3={_0x889c2e:'3a[$',_0x53a3e9:0x43b,_0x5021d4:0x43c,_0x5797ca:0x428},_0x608794=!![];return function(_0x2dc032,_0x2a9efb){var a0_0x3017ef={_0x4d8fae:0x2be},_0x55ca33=_0x608794?function(){function _0x48f2f3(_0x18ba2d,_0x339b78,_0x286804,_0x177d8f,_0x46b017){return a0_0x3b83(_0x286804-a0_0x3017ef._0x4d8fae,_0x18ba2d);}if(_0x2a9efb){var _0x2aebf4=_0x2a9efb[_0x48f2f3(a0_0xa53ed3._0x889c2e,a0_0xa53ed3._0x53a3e9,0x430,a0_0xa53ed3._0x5021d4,a0_0xa53ed3._0x5797ca)](_0x2dc032,arguments);return _0x2a9efb=null,_0x2aebf4;}}:function(){};return _0x608794=![],_0x55ca33;};}()),a0_0x59977b=a0_0x2d4fc8(this,function(){var a0_0x3c7e16={_0xad910d:0x47f,_0x5a1e9c:0x483,_0x44ab99:'XpJ4',_0x2837f2:0x48c,_0x8e427a:0x20b,_0x3769a0:0x216,_0x2b3d5d:0x13b,_0x2aa540:0x12e,_0x2326a7:0x13b,_0x5e00f1:'Sf%i',_0x72518b:0x484,_0x26e0f3:0x136,_0x47afe3:0x13d,_0x3a5727:'1GwJ',_0x1bbaa5:0x14a,_0x31388c:0x148,_0x3c4a9e:'46jb',_0x57d98e:'84Ne',_0x45bc1d:0x20b,_0x42f365:0x20c,_0xd251b3:0x206,_0x20ff42:0x213,_0x33e6fb:0x485,_0x1fe477:'46jb',_0xb5c702:0x477,_0x210d65:'1@qP',_0x2f386d:0x212,_0x418333:0x20d,_0x21f34a:0x209,_0x58a329:0x213,_0x2f76f1:'XbuX',_0x232e5f:0x1fe,_0x554678:0x214,_0x5b28d7:0x131,_0x86a32c:0x135,_0x3353ac:0x12a,_0x15ee1e:0x136,_0x568f41:'pLye',_0x59ff2d:0x488,_0xf02e21:'%Df)',_0x17d792:0x47b},a0_0x8dede9={_0x120d1b:0x30c},a0_0x18968c={_0x333222:0x38f},a0_0x4eb184={_0x372265:0x2bc};function _0x150a14(_0x111981,_0xf45b8a,_0x376ad6,_0x3bf622,_0x3bc817){return a0_0x3b83(_0x3bf622- -a0_0x4eb184._0x372265,_0x3bc817);}function _0x373ef5(_0x2f61e5,_0x11bcd3,_0x4e5bf1,_0x51a7fc,_0x3e5ddd){return a0_0x3b83(_0x11bcd3- -a0_0x18968c._0x333222,_0x2f61e5);}function _0x10043d(_0x451646,_0x2f0e8b,_0x237962,_0x4ecbe1,_0xc73b28){return a0_0x3b83(_0x451646-a0_0x8dede9._0x120d1b,_0x237962);}var _0x39c112={};_0x39c112[_0x10043d(a0_0x3c7e16._0xad910d,a0_0x3c7e16._0x5a1e9c,a0_0x3c7e16._0x44ab99,a0_0x3c7e16._0x2837f2,a0_0x3c7e16._0x5a1e9c)]=_0x373ef5('ZOmM',-0x20f,-a0_0x3c7e16._0x8e427a,-a0_0x3c7e16._0x3769a0,-0x21c)+_0x150a14(-a0_0x3c7e16._0x2b3d5d,-0x12f,-a0_0x3c7e16._0x2aa540,-a0_0x3c7e16._0x2326a7,'84Ne')+'+$';var _0x427239=_0x39c112;return a0_0x59977b[_0x10043d(0x47d,0x475,a0_0x3c7e16._0x5e00f1,0x472,a0_0x3c7e16._0x72518b)+_0x150a14(-a0_0x3c7e16._0x26e0f3,-a0_0x3c7e16._0x47afe3,-0x12d,-0x133,a0_0x3c7e16._0x3a5727)]()[_0x150a14(-a0_0x3c7e16._0x1bbaa5,-a0_0x3c7e16._0x47afe3,-a0_0x3c7e16._0x31388c,-0x13e,a0_0x3c7e16._0x3c4a9e)+'h'](_0x427239[_0x373ef5(a0_0x3c7e16._0x57d98e,-a0_0x3c7e16._0x45bc1d,-a0_0x3c7e16._0x42f365,-a0_0x3c7e16._0xd251b3,-a0_0x3c7e16._0x20ff42)])['toStr'+_0x10043d(a0_0x3c7e16._0x5a1e9c,a0_0x3c7e16._0x33e6fb,a0_0x3c7e16._0x1fe477,a0_0x3c7e16._0xad910d,a0_0x3c7e16._0xb5c702)]()[_0x373ef5(a0_0x3c7e16._0x210d65,-a0_0x3c7e16._0x2f386d,-a0_0x3c7e16._0x418333,-a0_0x3c7e16._0x21f34a,-a0_0x3c7e16._0x58a329)+_0x373ef5(a0_0x3c7e16._0x2f76f1,-0x20a,-a0_0x3c7e16._0x232e5f,-0x1fe,-a0_0x3c7e16._0x554678)+'r'](a0_0x59977b)[_0x150a14(-a0_0x3c7e16._0x5b28d7,-a0_0x3c7e16._0x86a32c,-a0_0x3c7e16._0x3353ac,-a0_0x3c7e16._0x15ee1e,a0_0x3c7e16._0x568f41)+'h'](_0x427239[_0x10043d(0x482,a0_0x3c7e16._0x59ff2d,a0_0x3c7e16._0xf02e21,a0_0x3c7e16._0x17d792,0x486)]);});a0_0x59977b();import{A as a0_0x5a9cb0,B as a0_0x5b816e,C as a0_0x48bfed,D as a0_0x5a718c,b as a0_0xd08173,c as a0_0x1a3260,d as a0_0x4d73f8,e as a0_0x403f7e,f as a0_0x1f66a7,g as a0_0x275d86,h as a0_0x1ae2d8,i as a0_0x3b24f3,j as a0_0x11cf84,k as a0_0x3f4d35,l as a0_0x305de0,m as a0_0x73163d,n as a0_0x134b37,o as a0_0x397f4e,p as a0_0x40611f,q as a0_0x1525de,r as a0_0x11719b,s as a0_0x3888d9,t as a0_0x23bf32,u as a0_0x370e0c,v as a0_0x2ef634,w as a0_0x232128,x as a0_0x1b5572,y as a0_0x103c43,z as a0_0x129631}from'../chunk-53UBQCSX.js';import{a as a0_0x3897bb,b as a0_0x2abcfa,c as a0_0x8403c6,d as a0_0x33f30e,e as a0_0x4899cf}from'../chunk-I5OOVR5U.js';import'../chunk-LV4HGC5G.js';import'../chunk-ZLL42OOV.js';import'../chunk-E6WJCS24.js';function a0_0x3b83(_0x4bdc3d,_0x4ede34){_0x4bdc3d=_0x4bdc3d-(0x1732+-0x1*-0xabf+0x10*-0x208);var _0x27b484=a0_0x5652();var _0x24118e=_0x27b484[_0x4bdc3d];if(a0_0x3b83['twJAVC']===undefined){var _0x252594=function(_0x279cea){var _0x43b8f8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x4fa795='',_0xe9ceba='',_0x22624c=_0x4fa795+_0x252594;for(var _0x69a47=-0xa50+0x2b9*0x1+0x797,_0x275c4e,_0x15f848,_0x275617=0x7*-0x4b7+-0x13*0x113+0x356a;_0x15f848=_0x279cea['charAt'](_0x275617++);~_0x15f848&&(_0x275c4e=_0x69a47%(-0x1*-0x1c73+-0x4d*0x3+-0x1b88)?_0x275c4e*(0x2f5*-0x7+0x23b5+-0xec2)+_0x15f848:_0x15f848,_0x69a47++%(-0x811+0xfef*0x2+-0x1*0x17c9))?_0x4fa795+=_0x22624c['charCodeAt'](_0x275617+(0x16*-0x148+0x3*0x809+-0x5*-0xd3))-(0x204b+-0xf5*-0x26+-0x449f)!==0xce3*0x1+0xd*-0x82+-0x649?String['fromCharCode'](-0x1*0x13c3+-0x1284+0x2746&_0x275c4e>>(-(-0x1141+0x3*0xced+0x1584*-0x1)*_0x69a47&-0x2395*-0x1+-0x1d*0x8a+-0x13ed)):_0x69a47:0x35b*0x1+-0x1e52+0x27*0xb1){_0x15f848=_0x43b8f8['indexOf'](_0x15f848);}for(var _0x2ce718=-0x1b08+-0x1e2e+-0x1c9b*-0x2,_0x4f6d34=_0x4fa795['length'];_0x2ce718<_0x4f6d34;_0x2ce718++){_0xe9ceba+='%'+('00'+_0x4fa795['charCodeAt'](_0x2ce718)['toString'](0x9f9+0x405+-0x6f7*0x2))['slice'](-(0x162+0xf63*-0x1+0xd3*0x11));}return decodeURIComponent(_0xe9ceba);};var _0x18b6ae=function(_0x4e0de0,_0x4c9fac){var _0x29618b=[],_0xf102e4=0x2308+-0x1c65*0x1+-0x6a3,_0x420101,_0x2eacc0='';_0x4e0de0=_0x252594(_0x4e0de0);var _0x1d13b2;for(_0x1d13b2=-0xc2*0x9+0x1*-0x110b+0x17dd;_0x1d13b2<-0x5d1*0x4+0x809+-0x5*-0x33f;_0x1d13b2++){_0x29618b[_0x1d13b2]=_0x1d13b2;}for(_0x1d13b2=-0x2441+-0x98+0x24d9;_0x1d13b2<-0x17d8+0x74c+0x463*0x4;_0x1d13b2++){_0xf102e4=(_0xf102e4+_0x29618b[_0x1d13b2]+_0x4c9fac['charCodeAt'](_0x1d13b2%_0x4c9fac['length']))%(-0x2221+-0x1*0x196+0x27*0xf1),_0x420101=_0x29618b[_0x1d13b2],_0x29618b[_0x1d13b2]=_0x29618b[_0xf102e4],_0x29618b[_0xf102e4]=_0x420101;}_0x1d13b2=-0x7*0x3cb+-0x5*0x29+0x1b5a,_0xf102e4=-0x236d+-0xe2c+0x3199;for(var _0x131f32=0x1cbf+0x6a1+-0x46c*0x8;_0x131f32<_0x4e0de0['length'];_0x131f32++){_0x1d13b2=(_0x1d13b2+(-0x5*0x6c4+0x2668+0x1*-0x493))%(-0x1*-0x1225+-0x1a18+0x1*0x8f3),_0xf102e4=(_0xf102e4+_0x29618b[_0x1d13b2])%(-0xe4*0x21+-0x54*0x20+0x28e4),_0x420101=_0x29618b[_0x1d13b2],_0x29618b[_0x1d13b2]=_0x29618b[_0xf102e4],_0x29618b[_0xf102e4]=_0x420101,_0x2eacc0+=String['fromCharCode'](_0x4e0de0['charCodeAt'](_0x131f32)^_0x29618b[(_0x29618b[_0x1d13b2]+_0x29618b[_0xf102e4])%(0x5c6+-0x1cfd+0x1837)]);}return _0x2eacc0;};a0_0x3b83['ojalAN']=_0x18b6ae,a0_0x3b83['DlxCFL']={},a0_0x3b83['twJAVC']=!![];}var _0x361e75=_0x27b484[0x3b*0x35+-0x400+-0x837],_0x4307d4=_0x4bdc3d+_0x361e75,_0x528208=a0_0x3b83['DlxCFL'][_0x4307d4];if(!_0x528208){if(a0_0x3b83['KgEwIC']===undefined){var _0x51c8de=function(_0x301e0d){this['FrMJOg']=_0x301e0d,this['hYqWdp']=[0x21fd+-0x12ab+-0x1*0xf51,0xd5f+-0x1cb2+0x1*0xf53,-0x928*-0x3+-0x14e4+-0x694],this['mnhuHx']=function(){return'newState';},this['FRthHo']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['UHWFLk']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x51c8de['prototype']['ilRSCm']=function(){var _0x4ecc88=new RegExp(this['FRthHo']+this['UHWFLk']),_0x59e6c2=_0x4ecc88['test'](this['mnhuHx']['toString']())?--this['hYqWdp'][-0x3*0xc2d+-0x1e8f+0x5*0xd6b]:--this['hYqWdp'][0x575*0x2+-0x234*-0x6+-0x1822*0x1];return this['vWfAfW'](_0x59e6c2);},_0x51c8de['prototype']['vWfAfW']=function(_0x36b297){if(!Boolean(~_0x36b297))return _0x36b297;return this['nGhcKn'](this['FrMJOg']);},_0x51c8de['prototype']['nGhcKn']=function(_0x1a3206){for(var _0x1705b0=0xce*-0x7+0xfd9*0x2+-0x4*0x684,_0x40d5ad=this['hYqWdp']['length'];_0x1705b0<_0x40d5ad;_0x1705b0++){this['hYqWdp']['push'](Math['round'](Math['random']())),_0x40d5ad=this['hYqWdp']['length'];}return _0x1a3206(this['hYqWdp'][0x261e+-0x1*0x1f35+-0x1*0x6e9]);},new _0x51c8de(a0_0x3b83)['ilRSCm'](),a0_0x3b83['KgEwIC']=!![];}_0x24118e=a0_0x3b83['ojalAN'](_0x24118e,_0x4ede34),a0_0x3b83['DlxCFL'][_0x4307d4]=_0x24118e;}else _0x24118e=_0x528208;return _0x24118e;}import'../chunk-Q7FPWOA3.js';export{a0_0x3897bb as AssetCache,a0_0x8403c6 as AssetLoader,a0_0x370e0c as AssetSystem,a0_0x33f30e as AssetTextures,a0_0x3888d9 as Assets,a0_0x397f4e as BaseSystem,a0_0x134b37 as GameEngine,a0_0x403f7e as GameObject,a0_0x1f66a7 as GameObjectManager,a0_0x73163d as ObjectFactory,a0_0x4d73f8 as Renderer,a0_0x40611f as RuntimeObjectRegistry,a0_0x1a3260 as Transform,a0_0x5b816e as applyScreenAnchor,a0_0x1525de as basePixi,a0_0x232128 as clearResponsiveElements,a0_0xd08173 as createPixiBase,a0_0x11cf84 as getRegisteredFontIds,a0_0x2ef634 as globalResponsiveMultipliers,a0_0x4899cf as initAssetTextures,a0_0x23bf32 as initAssets,a0_0x48bfed as layout,a0_0x305de0 as playLottieOverlay,a0_0x3b24f3 as registerFont,a0_0x2abcfa as registerType,a0_0x103c43 as resolveAnchorVec2,a0_0x275d86 as resolveFont,a0_0x1ae2d8 as resolveFontWeight,a0_0x129631 as resolveScreenAnchorPoint,a0_0x5a9cb0 as resolveScreenRatioPoint,a0_0x5a718c as runInitSequence,a0_0x3f4d35 as setLottieInstance,a0_0x11719b as spawnSceneFromConfig,a0_0x1b5572 as updateScreenState};
|