handler-playable-sdk 0.3.24 → 0.3.26
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-GQ4H4WYC.js → chunk-XBPJ3IWP.js} +12 -12
- package/dist/index.cjs +11 -11
- 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 +19 -19
- 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-XBPJ3IWP.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.24",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.26",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_0x3c1d(_0x4a4899,_0x481f21){_0x4a4899=_0x4a4899-(-0x259a+-0xf69+0x3590);var _0x5abe92=a0_0x2897();var _0x592ae2=_0x5abe92[_0x4a4899];if(a0_0x3c1d['QPcXhD']===undefined){var _0x40c27d=function(_0x7b6a49){var _0x5a48d6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x350885='',_0x70e725='',_0xaa0d52=_0x350885+_0x40c27d;for(var _0x581639=-0x5d1+0xa2f+-0x2b*0x1a,_0x1b0298,_0x3600a1,_0x4069f7=0x2b*-0x5c+-0x1365+0x22d9;_0x3600a1=_0x7b6a49['charAt'](_0x4069f7++);~_0x3600a1&&(_0x1b0298=_0x581639%(0xc2*-0x5+0xb*-0x95+-0xa35*-0x1)?_0x1b0298*(-0x2*-0x229+-0x83*0x46+0x8*0x3f8)+_0x3600a1:_0x3600a1,_0x581639++%(-0x26*0xfb+-0x12*-0xb1+-0x1c*-0xe3))?_0x350885+=_0xaa0d52['charCodeAt'](_0x4069f7+(-0x2291+-0x993+0x2c2e))-(-0x44d*-0x3+0x3f*0x27+-0x1676)!==-0x6f*0x7+-0x1244+-0x30b*-0x7?String['fromCharCode'](0x8*0x167+-0x1*0xbfb+0x1c2&_0x1b0298>>(-(-0x1*-0x235f+0x1177+-0x34d4)*_0x581639&0x5*-0x678+-0x641*-0x1+0x1*0x1a1d)):_0x581639:0x1e49+-0x42a*-0x3+-0x2ac7){_0x3600a1=_0x5a48d6['indexOf'](_0x3600a1);}for(var _0x1d4506=0xdc8+0x2f*-0x7f+0x1*0x989,_0x213043=_0x350885['length'];_0x1d4506<_0x213043;_0x1d4506++){_0x70e725+='%'+('00'+_0x350885['charCodeAt'](_0x1d4506)['toString'](-0x373*-0x5+-0xd*-0x95+-0x2c*0x90))['slice'](-(-0x745+-0x166a+0x1*0x1db1));}return decodeURIComponent(_0x70e725);};var _0x34a971=function(_0x12b29b,_0x46b87d){var _0x42bc5b=[],_0x881096=0x207*0x8+0x303*0x6+-0x42*0x85,_0x3a5810,_0x371de0='';_0x12b29b=_0x40c27d(_0x12b29b);var _0x17c17b;for(_0x17c17b=0x836+0x1*0x14d2+-0x2*0xe84;_0x17c17b<-0x6*0x31+-0x18d*0x1+-0x3b3*-0x1;_0x17c17b++){_0x42bc5b[_0x17c17b]=_0x17c17b;}for(_0x17c17b=-0x3ce+0x1*0x1b1+0x21d;_0x17c17b<0xf4*-0x2+0xf*0xdd+-0xa0b;_0x17c17b++){_0x881096=(_0x881096+_0x42bc5b[_0x17c17b]+_0x46b87d['charCodeAt'](_0x17c17b%_0x46b87d['length']))%(0x1ae1+-0x11d4*0x1+-0x2af*0x3),_0x3a5810=_0x42bc5b[_0x17c17b],_0x42bc5b[_0x17c17b]=_0x42bc5b[_0x881096],_0x42bc5b[_0x881096]=_0x3a5810;}_0x17c17b=0x25c3*0x1+-0x117f+-0x1444,_0x881096=0x168+0xc24+0x33*-0x44;for(var _0xd54143=-0x3*0xac1+-0x17a*0x4+0x262b;_0xd54143<_0x12b29b['length'];_0xd54143++){_0x17c17b=(_0x17c17b+(-0xb*-0x1b1+-0x206+-0x1094))%(0x778+0x550*-0x7+-0x2*-0xf5c),_0x881096=(_0x881096+_0x42bc5b[_0x17c17b])%(0xc2*-0x11+0x1b15*0x1+-0xd33),_0x3a5810=_0x42bc5b[_0x17c17b],_0x42bc5b[_0x17c17b]=_0x42bc5b[_0x881096],_0x42bc5b[_0x881096]=_0x3a5810,_0x371de0+=String['fromCharCode'](_0x12b29b['charCodeAt'](_0xd54143)^_0x42bc5b[(_0x42bc5b[_0x17c17b]+_0x42bc5b[_0x881096])%(-0x2253*-0x1+0x1671+-0x37c4)]);}return _0x371de0;};a0_0x3c1d['zLvKBR']=_0x34a971,a0_0x3c1d['Dntkjf']={},a0_0x3c1d['QPcXhD']=!![];}var _0xdfe40=_0x5abe92[0x18b*-0x14+0x16*-0x13f+0x1*0x3a46],_0x4fc45e=_0x4a4899+_0xdfe40,_0x37a3a4=a0_0x3c1d['Dntkjf'][_0x4fc45e];if(!_0x37a3a4){if(a0_0x3c1d['XqImKP']===undefined){var _0x483e0e=function(_0xa05f1f){this['YoKrmB']=_0xa05f1f,this['prOwHd']=[0xc4f+-0x62*0x49+0x5b*0x2c,0x2171+0x5*0x27e+-0x2de7,0x9d+-0xd3c+0x9*0x167],this['UDeaMo']=function(){return'newState';},this['zvKShr']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['sDDyQm']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x483e0e['prototype']['tNwBFi']=function(){var _0x3f60c7=new RegExp(this['zvKShr']+this['sDDyQm']),_0x5aa73b=_0x3f60c7['test'](this['UDeaMo']['toString']())?--this['prOwHd'][0x266a+0x1467+0x2*-0x1d68]:--this['prOwHd'][0x1*0x7b9+0x5*-0x67e+0x83f*0x3];return this['gZWzUm'](_0x5aa73b);},_0x483e0e['prototype']['gZWzUm']=function(_0xa58c0c){if(!Boolean(~_0xa58c0c))return _0xa58c0c;return this['AjxsOW'](this['YoKrmB']);},_0x483e0e['prototype']['AjxsOW']=function(_0x55aa7e){for(var _0x27b216=0xa98+-0x1b9d*-0x1+-0x1*0x2635,_0x315611=this['prOwHd']['length'];_0x27b216<_0x315611;_0x27b216++){this['prOwHd']['push'](Math['round'](Math['random']())),_0x315611=this['prOwHd']['length'];}return _0x55aa7e(this['prOwHd'][-0xbed+-0x1*-0x761+0x1*0x48c]);},new _0x483e0e(a0_0x3c1d)['tNwBFi'](),a0_0x3c1d['XqImKP']=!![];}_0x592ae2=a0_0x3c1d['zLvKBR'](_0x592ae2,_0x481f21),a0_0x3c1d['Dntkjf'][_0x4fc45e]=_0x592ae2;}else _0x592ae2=_0x37a3a4;return _0x592ae2;}(function(_0x55aa7e,_0x27b216){var a0_0x120bdb={_0x60f660:0x17d,_0x4eb400:'l)Sl',_0x6cb615:0x17a,_0x255bbe:0x185,_0x2ff962:0x184,_0x49e9fb:0x176,_0x2c17df:0x17f,_0x16fb10:0x175,_0x578b01:'tLtY',_0x5c6f7f:0x180,_0x5b40b5:0x192,_0x3c1ce1:0x18d,_0x382f6a:0x7b,_0x529bca:0x6b,_0x215e1e:0x70,_0x2707e1:0x29a,_0x4bad46:0x292,_0x512eb3:0x28b,_0x2f64b0:'lJRM',_0x348e81:0x170,_0xcafb4c:'SsQP',_0x1ba73c:0x179,_0x20841f:0x17c,_0x595ec6:0x299,_0x1aa0f0:0x2ad,_0x16f38d:'Ge3t',_0x120117:0x29f,_0x2736fe:0x184,_0x59d1eb:'5$FF',_0x1ed778:0x186,_0x28fd3b:0x194,_0x276a6a:0x18e},a0_0x5120f4={_0x250b07:0xe8},a0_0x2ca8a2={_0x317a73:0x332},a0_0x1a5331={_0x5cf20f:0x100};function _0x2140f4(_0x59d9e3,_0x2a3078,_0x5e9733,_0x48ff7c,_0x4dcb6e){return a0_0x3c1d(_0x48ff7c- -a0_0x1a5331._0x5cf20f,_0x2a3078);}function _0x6797fb(_0x4f960d,_0x3545f3,_0x47d176,_0x4d0574,_0x3417e7){return a0_0x3c1d(_0x3417e7- -a0_0x2ca8a2._0x317a73,_0x4d0574);}function _0x464d13(_0xef9a18,_0x1b6240,_0x40f1ed,_0x772855,_0x3d4290){return a0_0x3c1d(_0x3d4290-a0_0x5120f4._0x250b07,_0x1b6240);}var _0x315611=_0x55aa7e();while(!![]){try{var _0x47a11d=-parseInt(_0x464d13(a0_0x120bdb._0x60f660,a0_0x120bdb._0x4eb400,a0_0x120bdb._0x6cb615,a0_0x120bdb._0x255bbe,a0_0x120bdb._0x2ff962))/(-0xd*-0x6d+-0xd19+0x791)+parseInt(_0x464d13(0x182,'@YMU',a0_0x120bdb._0x49e9fb,a0_0x120bdb._0x2c17df,a0_0x120bdb._0x16fb10))/(0x6d*0xa+0xd31+-0x1171)*(parseInt(_0x464d13(0x189,a0_0x120bdb._0x578b01,a0_0x120bdb._0x5c6f7f,a0_0x120bdb._0x5b40b5,a0_0x120bdb._0x3c1ce1))/(-0x395*-0x4+0x1*0x48a+0x1*-0x12db))+-parseInt(_0x2140f4(-a0_0x120bdb._0x382f6a,'ud0d',-a0_0x120bdb._0x529bca,-0x71,-a0_0x120bdb._0x215e1e))/(0x20ed*0x1+0x17e4+-0x189*0x25)+parseInt(_0x6797fb(-0x287,-0x28b,-a0_0x120bdb._0x2707e1,'Ulld',-a0_0x120bdb._0x4bad46))/(0x1053+-0x1d*0x37+-0x1*0xa13)+parseInt(_0x6797fb(-0x28d,-a0_0x120bdb._0x512eb3,-0x29b,a0_0x120bdb._0x2f64b0,-0x290))/(0x69*0x31+0x191*0x1+-0x15a4*0x1)*(-parseInt(_0x464d13(a0_0x120bdb._0x348e81,a0_0x120bdb._0xcafb4c,0x186,a0_0x120bdb._0x1ba73c,a0_0x120bdb._0x20841f))/(-0xd24*-0x2+0x2*0x342+-0x20c5))+parseInt(_0x6797fb(-a0_0x120bdb._0x595ec6,-a0_0x120bdb._0x1aa0f0,-0x2a5,a0_0x120bdb._0x16f38d,-a0_0x120bdb._0x120117))/(-0x1e5d+0x25*0xe5+-0x2b4)+parseInt(_0x464d13(a0_0x120bdb._0x2736fe,a0_0x120bdb._0x59d1eb,a0_0x120bdb._0x1ed778,a0_0x120bdb._0x28fd3b,a0_0x120bdb._0x276a6a))/(0x1*-0xbe1+-0x17c1+0x1*0x23ab);if(_0x47a11d===_0x27b216)break;else _0x315611['push'](_0x315611['shift']());}catch(_0x53399d){_0x315611['push'](_0x315611['shift']());}}}(a0_0x2897,-0x54776*0x1+0x1152f*-0x7+0x121df1));function a0_0x2897(){var _0x284c05=['W5lcT8ouW7KKhSollSoYWQ10WOhcTG','B8o2lmk/k8kUW53dTg3cM8ox','kSomde7cUJZdOvqG','h8kFW4lcJCoS','z3hcQq','B8kQW4dcU8oyW7JcTq','eCoJA8kMydC7WRZcGvTNW4FdTW','kSk9W4VcR8o+','jYb7W5rutCo+W7tdGCojmq','rSkNtWhdJa','cCo0W7ldHs7dISk9Amo7WQTUl8kc','W7TnEmkHdG','dmowivBdJa','rSkKzmoHfLeLW4a0','WORcISk4p8oBEWCNWOJdHZtdMKK','b3pcKdaqymoCp8ocWO7cPq','CW3dI1Hx','W4HCWPdcQtf9WQpdGZFcMYyHdq','W606fSkOWPjlEa','FSoKnSkSmW','aSocDYRdHG','E20IWPeWWP1odeZdTLvWuW','W5xdV8kIyLO','sCkRzCkwzxieW4KLCsC','nSk/B8oRyW','t8oDkw1/','W75toSkyqCopuc7cJCkAWPWoW6G'];a0_0x2897=function(){return _0x284c05;};return a0_0x2897();}var a0_0x1cf4fa=(function(){var a0_0x4c1c19={_0x269a79:0x42b,_0x558b92:0x42a,_0xe0752f:0x429,_0x271960:'xtub',_0xb738ac:0x432},_0x3f7df7=!![];return function(_0x5428ed,_0x5845a0){var a0_0xcfa71d={_0x15c4fe:0x38d},_0x3eb743=_0x3f7df7?function(){function _0xcb99cb(_0x300912,_0x208706,_0x51fa19,_0x4a4dbc,_0x3bdf7d){return a0_0x3c1d(_0x208706-a0_0xcfa71d._0x15c4fe,_0x4a4dbc);}if(_0x5845a0){var _0x3dbf94=_0x5845a0[_0xcb99cb(a0_0x4c1c19._0x269a79,a0_0x4c1c19._0x558b92,a0_0x4c1c19._0xe0752f,a0_0x4c1c19._0x271960,a0_0x4c1c19._0xb738ac)](_0x5428ed,arguments);return _0x5845a0=null,_0x3dbf94;}}:function(){};return _0x3f7df7=![],_0x3eb743;};}()),a0_0x11f0f4=a0_0x1cf4fa(this,function(){var a0_0x1c680f={_0x4eb776:0x191,_0x2d511c:0x182,_0x2bfea5:0x186,_0xff4c08:'bRDE',_0x1d1721:0x18d,_0x46086d:'cxCp',_0x148308:0x1a1,_0xb086f7:'xtub',_0x25103c:0x87,_0x3aabb1:0x82,_0x57a509:0x86,_0x2d10f8:0x78,_0x223f1c:0x8b,_0x4d4192:0x192,_0x13668c:0x1a7,_0x37b229:0x19d,_0x466cbb:'tLtY',_0x508939:0x1a4,_0x4eb34b:0x82,_0x150d57:0x7f,_0x57856a:0x84,_0x823f5d:0x84,_0x440c63:0x19e,_0xef0352:0x193,_0x481327:0x19a,_0x5db8d5:'y&86',_0x5d0322:'0gvh',_0x339b1e:0x89,_0x40434f:0x8e,_0x4b800a:0x85,_0x54eb51:'BxI0',_0x69e351:0x7e,_0x2febfb:0x73,_0x52eff6:0x7c,_0x2594f9:0x199,_0xf4ffea:0x192,_0x53d718:'#LUA',_0x1b2f60:0x194,_0x39217c:0x1a2},a0_0x40ecdb={_0x43ad75:0x2c2},a0_0x545d0d={_0x482a04:0xf6};function _0x131669(_0xd589d8,_0x1b8769,_0x5ebbf7,_0x391b14,_0x5939b8){return a0_0x3c1d(_0x5ebbf7-a0_0x545d0d._0x482a04,_0x391b14);}var _0x13228b={};_0x13228b[_0x131669(a0_0x1c680f._0x4eb776,a0_0x1c680f._0x2d511c,a0_0x1c680f._0x2bfea5,a0_0x1c680f._0xff4c08,0x17c)]=_0x131669(a0_0x1c680f._0x1d1721,0x19c,0x194,a0_0x1c680f._0x46086d,a0_0x1c680f._0x148308)+_0x41f230(a0_0x1c680f._0xb086f7,-0x7f,-a0_0x1c680f._0x25103c,-a0_0x1c680f._0x3aabb1,-0x86)+'+$';function _0x41f230(_0x26438d,_0x48e16b,_0x1363f4,_0x38a524,_0x33abf4){return a0_0x3c1d(_0x48e16b- -0x117,_0x26438d);}var _0x507f29=_0x13228b;function _0x1bb402(_0x1cd14e,_0x3e4249,_0x29a3cf,_0x545b8d,_0x51360f){return a0_0x3c1d(_0x29a3cf-a0_0x40ecdb._0x43ad75,_0x545b8d);}return a0_0x11f0f4[_0x41f230('etXd',-a0_0x1c680f._0x57a509,-a0_0x1c680f._0x2d10f8,-a0_0x1c680f._0x223f1c,-0x88)+'ing']()[_0x131669(a0_0x1c680f._0x4d4192,a0_0x1c680f._0x13668c,a0_0x1c680f._0x37b229,a0_0x1c680f._0x466cbb,a0_0x1c680f._0x508939)+'h'](_0x507f29[_0x41f230('SsQP',-a0_0x1c680f._0x4eb34b,-a0_0x1c680f._0x150d57,-a0_0x1c680f._0x57856a,-a0_0x1c680f._0x823f5d)])['toStr'+_0x131669(a0_0x1c680f._0x440c63,a0_0x1c680f._0xef0352,a0_0x1c680f._0x481327,a0_0x1c680f._0x5db8d5,0x1a3)]()[_0x41f230(a0_0x1c680f._0x5d0322,-a0_0x1c680f._0x339b1e,-a0_0x1c680f._0x40434f,-a0_0x1c680f._0x4b800a,-0x88)+_0x41f230(a0_0x1c680f._0x54eb51,-a0_0x1c680f._0x69e351,-a0_0x1c680f._0x25103c,-a0_0x1c680f._0x2febfb,-a0_0x1c680f._0x52eff6)+'r'](a0_0x11f0f4)[_0x131669(a0_0x1c680f._0x2594f9,a0_0x1c680f._0xf4ffea,a0_0x1c680f._0x4eb776,a0_0x1c680f._0x53d718,a0_0x1c680f._0x1b2f60)+'h'](_0x507f29[_0x131669(a0_0x1c680f._0x1d1721,a0_0x1c680f._0x39217c,a0_0x1c680f._0x2594f9,a0_0x1c680f._0x466cbb,a0_0x1c680f._0x440c63)]);});a0_0x11f0f4();import{A as a0_0x1e1325,B as a0_0xa58e9,C as a0_0x4a6fbe,D as a0_0x3b779b,b as a0_0x437bd1,c as a0_0x45beee,d as a0_0x583cb9,e as a0_0x4ff5cc,f as a0_0x31112a,g as a0_0x51b9f6,h as a0_0x5082c1,i as a0_0x19c0bf,j as a0_0x39b64a,k as a0_0x491a07,l as a0_0x27a177,m as a0_0x533923,n as a0_0x31d79c,o as a0_0x43c438,p as a0_0x25a6d2,q as a0_0x2e49bd,r as a0_0x2dcbc9,s as a0_0x4ae220,t as a0_0x21348e,u as a0_0x4b70e9,v as a0_0xc65d72,w as a0_0x5649bf,x as a0_0xc740db,y as a0_0x2b0baf,z as a0_0x31c0e1}from'../chunk-GQ4H4WYC.js';import{a as a0_0x1502e0,b as a0_0x52569c,c as a0_0x3d2921,d as a0_0x14c72a,e as a0_0x2d5c6e}from'../chunk-I5OOVR5U.js';import'../chunk-LV4HGC5G.js';import'../chunk-ZLL42OOV.js';import'../chunk-E6WJCS24.js';import'../chunk-Q7FPWOA3.js';export{a0_0x1502e0 as AssetCache,a0_0x3d2921 as AssetLoader,a0_0x4b70e9 as AssetSystem,a0_0x14c72a as AssetTextures,a0_0x4ae220 as Assets,a0_0x43c438 as BaseSystem,a0_0x31d79c as GameEngine,a0_0x4ff5cc as GameObject,a0_0x31112a as GameObjectManager,a0_0x533923 as ObjectFactory,a0_0x583cb9 as Renderer,a0_0x25a6d2 as RuntimeObjectRegistry,a0_0x45beee as Transform,a0_0xa58e9 as applyScreenAnchor,a0_0x2e49bd as basePixi,a0_0x5649bf as clearResponsiveElements,a0_0x437bd1 as createPixiBase,a0_0x39b64a as getRegisteredFontIds,a0_0xc65d72 as globalResponsiveMultipliers,a0_0x2d5c6e as initAssetTextures,a0_0x21348e as initAssets,a0_0x4a6fbe as layout,a0_0x27a177 as playLottieOverlay,a0_0x19c0bf as registerFont,a0_0x52569c as registerType,a0_0x2b0baf as resolveAnchorVec2,a0_0x51b9f6 as resolveFont,a0_0x5082c1 as resolveFontWeight,a0_0x31c0e1 as resolveScreenAnchorPoint,a0_0x1e1325 as resolveScreenRatioPoint,a0_0x3b779b as runInitSequence,a0_0x491a07 as setLottieInstance,a0_0x2dcbc9 as spawnSceneFromConfig,a0_0xc740db as updateScreenState};
|
|
1
|
+
(function(_0x4ceb07,_0xb0ace3){var a0_0x5e7054={_0x5348f9:0x2f7,_0x4d8e4b:0x2f4,_0x134d2f:0x2fd,_0x478a17:0x316,_0x25d9ed:0x310,_0x1e7f27:0x317,_0x5b92e2:0x2f5,_0x2cd5d9:'i*O9',_0x20ff63:0x2e7,_0x5837ae:0x2f7,_0x33e770:0x1f4,_0x161f9d:0x1e8,_0x51d341:'FdG2',_0x3518ff:0x30d,_0x2c6668:'CGCj',_0x5142eb:0x311,_0xbe224f:0x303,_0x3ca697:0x2f8,_0x5135cc:0x302,_0x5b5675:0x2f6,_0x4ffbd5:0x2fc,_0x316e3d:0x1fa,_0x22bfd7:0x202,_0x43640d:0x20b,_0x7d230d:'xzl6',_0x5496c6:0x1f6,_0x4ac992:0x1fc,_0x4f5656:0x1ee,_0x50ece2:0x1ea,_0x38e7c6:'PtKP',_0x2c902b:0x1ee,_0x182908:0x31c,_0x1572f5:0x30e,_0xdc4286:0x326,_0x3fc653:0x327,_0x45eda5:0x1f2,_0x4dbdf2:0x1e7},a0_0xe1375e={_0x3b5eb9:0x1ea},a0_0x3bc36e={_0x2858b6:0xfa},_0x183611=_0x4ceb07();function _0x3c4990(_0x1b4a04,_0x12db8e,_0x11d3a4,_0x5a212a,_0x496ac4){return a0_0xcf90(_0x12db8e-a0_0x3bc36e._0x2858b6,_0x5a212a);}function _0x397f5c(_0x33bad1,_0x141ec9,_0x1fecdc,_0x293d7e,_0x35c444){return a0_0xcf90(_0x33bad1-a0_0xe1375e._0x3b5eb9,_0x141ec9);}function _0x1a816a(_0x1bc8ca,_0x5f114f,_0x1ffa46,_0x4bdc38,_0x1c48bd){return a0_0xcf90(_0x1bc8ca-0x216,_0x5f114f);}while(!![]){try{var _0x5bde58=parseInt(_0x397f5c(a0_0x5e7054._0x5348f9,'i*O9',a0_0x5e7054._0x4d8e4b,a0_0x5e7054._0x134d2f,0x2eb))/(-0x1f7c+0x62*0x7+0x1ccf)+parseInt(_0x1a816a(a0_0x5e7054._0x478a17,'gjGN',a0_0x5e7054._0x25d9ed,a0_0x5e7054._0x1e7f27,0x308))/(0x223f+0x2*0xfde+0x1*-0x41f9)*(parseInt(_0x397f5c(a0_0x5e7054._0x5b92e2,a0_0x5e7054._0x2cd5d9,a0_0x5e7054._0x20ff63,a0_0x5e7054._0x5837ae,0x2ff))/(0x1124*0x2+0x153e+0x9*-0x62b))+-parseInt(_0x3c4990(0x1e6,a0_0x5e7054._0x33e770,a0_0x5e7054._0x161f9d,a0_0x5e7054._0x51d341,a0_0x5e7054._0x33e770))/(-0x1*-0x43+-0x65*-0x31+-0xe*0x166)+-parseInt(_0x1a816a(a0_0x5e7054._0x3518ff,a0_0x5e7054._0x2c6668,a0_0x5e7054._0x5142eb,a0_0x5e7054._0xbe224f,a0_0x5e7054._0x1e7f27))/(0x3*0x21b+-0x481*-0x8+-0x2*0x152a)*(-parseInt(_0x397f5c(a0_0x5e7054._0x3ca697,'iu1r',a0_0x5e7054._0x5135cc,a0_0x5e7054._0x5b5675,a0_0x5e7054._0x4ffbd5))/(0x2*-0x1145+0x5ab+0x1*0x1ce5))+-parseInt(_0x3c4990(a0_0x5e7054._0x316e3d,a0_0x5e7054._0x22bfd7,a0_0x5e7054._0x43640d,a0_0x5e7054._0x7d230d,a0_0x5e7054._0x5496c6))/(-0xb*0x1bd+0x19a5+-0x67f*0x1)+-parseInt(_0x3c4990(a0_0x5e7054._0x4ac992,a0_0x5e7054._0x4f5656,a0_0x5e7054._0x50ece2,a0_0x5e7054._0x38e7c6,a0_0x5e7054._0x2c902b))/(0x7e6+-0x12f*-0x1+0x14b*-0x7)*(parseInt(_0x1a816a(a0_0x5e7054._0x182908,a0_0x5e7054._0x51d341,a0_0x5e7054._0x1572f5,a0_0x5e7054._0xdc4286,a0_0x5e7054._0x3fc653))/(-0x7c7*-0x1+0x4a*-0x2+-0x106*0x7))+parseInt(_0x3c4990(0x200,a0_0x5e7054._0x45eda5,0x1fb,a0_0x5e7054._0x7d230d,a0_0x5e7054._0x4dbdf2))/(-0x723+0xccf+-0x5a2);if(_0x5bde58===_0xb0ace3)break;else _0x183611['push'](_0x183611['shift']());}catch(_0x2f8c8b){_0x183611['push'](_0x183611['shift']());}}}(a0_0x421c,0xdfcdb+0xa8c18+0x7f6a2*-0x2));var a0_0x47d2cb=(function(){var a0_0x4f0802={_0x403871:0x3c6,_0x2ab3e3:0x3d2,_0x3684aa:0x3c8,_0x503214:'wr5J'},_0x1f4a4a=!![];return function(_0x406cea,_0x300fa5){var _0x444b84=_0x1f4a4a?function(){function _0x44ad7b(_0x4f37b3,_0xa9b7ea,_0x3bc562,_0x479c45,_0x3f2258){return a0_0xcf90(_0x479c45-0x2cf,_0x3f2258);}if(_0x300fa5){var _0x57fe02=_0x300fa5[_0x44ad7b(a0_0x4f0802._0x403871,a0_0x4f0802._0x2ab3e3,a0_0x4f0802._0x3684aa,0x3ca,a0_0x4f0802._0x503214)](_0x406cea,arguments);return _0x300fa5=null,_0x57fe02;}}:function(){};return _0x1f4a4a=![],_0x444b84;};}()),a0_0x2c78fb=a0_0x47d2cb(this,function(){var a0_0x1738d8={_0x16c93c:0x156,_0x47a9bd:0x155,_0x407bfb:0x14e,_0x52cc40:'AKcb',_0x356109:0x154,_0x2b65b2:0x140,_0x3e19b1:0x141,_0x5921dd:'eV[c',_0x367290:0x14b,_0x360702:0x49d,_0x371ed2:0x4a4,_0x3698ba:0x4a6,_0x4631fd:0x4a3,_0x3faa8f:'fHN!',_0x3cc06b:0x4a2,_0x2cd9e8:0x494,_0x104a1:0x4a9,_0x37a5c3:'ZGtP',_0x472fae:0x263,_0x4fb9e0:0x25c,_0x581cd7:0x15f,_0x49b697:0x155,_0xbbea7f:'35o9',_0x57e8af:0x15b,_0x4647b1:0x26e,_0xa45395:0x275,_0x44adbd:0x272,_0x5b3570:0x27f,_0x15a8c9:'xz(v',_0x11dd02:0x269,_0x2e7145:0x26a,_0x1b08ee:0x261,_0x4c3751:'Ljm9',_0x19b5d8:0x261,_0x4e7c00:0x26c,_0x2031e7:0x26d,_0x1d356c:0x269,_0x10d54e:0x499,_0x21e7bf:0x4ad,_0x3b28d8:0x496,_0x5c29b5:'xzl6'},a0_0x98b969={_0x5ed3c5:0x24b},a0_0x4a0010={_0x1b67dd:0x39e},a0_0x37be6d={_0x264230:0x163},_0x5d5548={};_0x5d5548[_0x42e4fb(-a0_0x1738d8._0x16c93c,-a0_0x1738d8._0x47a9bd,-a0_0x1738d8._0x407bfb,a0_0x1738d8._0x52cc40,-a0_0x1738d8._0x356109)]='(((.+'+_0x42e4fb(-a0_0x1738d8._0x2b65b2,-a0_0x1738d8._0x3e19b1,-0x142,a0_0x1738d8._0x5921dd,-a0_0x1738d8._0x367290)+'+$';function _0x2be661(_0x7e5460,_0x2dd3bf,_0x23dcc6,_0x37c7c9,_0x18208f){return a0_0xcf90(_0x37c7c9-a0_0x37be6d._0x264230,_0x7e5460);}function _0x39a9ec(_0x387ce1,_0x59446d,_0x4da168,_0x2d9904,_0x3c686a){return a0_0xcf90(_0x387ce1-a0_0x4a0010._0x1b67dd,_0x3c686a);}var _0x1abea0=_0x5d5548;function _0x42e4fb(_0x5846e8,_0x43e858,_0x14d693,_0x3c8a74,_0x52eebb){return a0_0xcf90(_0x14d693- -a0_0x98b969._0x5ed3c5,_0x3c8a74);}return a0_0x2c78fb[_0x39a9ec(a0_0x1738d8._0x360702,a0_0x1738d8._0x371ed2,a0_0x1738d8._0x3698ba,a0_0x1738d8._0x4631fd,a0_0x1738d8._0x3faa8f)+_0x39a9ec(a0_0x1738d8._0x3cc06b,a0_0x1738d8._0x2cd9e8,0x4ab,a0_0x1738d8._0x104a1,'&Kua')]()[_0x2be661(a0_0x1738d8._0x37a5c3,0x25d,a0_0x1738d8._0x472fae,a0_0x1738d8._0x4fb9e0,0x257)+'h'](_0x1abea0[_0x42e4fb(-a0_0x1738d8._0x581cd7,-0x153,-a0_0x1738d8._0x49b697,a0_0x1738d8._0xbbea7f,-a0_0x1738d8._0x57e8af)])['toStr'+_0x2be661(a0_0x1738d8._0x3faa8f,a0_0x1738d8._0x4647b1,a0_0x1738d8._0xa45395,a0_0x1738d8._0x44adbd,a0_0x1738d8._0x5b3570)]()[_0x2be661(a0_0x1738d8._0x15a8c9,a0_0x1738d8._0x11dd02,0x25c,a0_0x1738d8._0x2e7145,a0_0x1738d8._0x1b08ee)+_0x2be661(a0_0x1738d8._0x4c3751,a0_0x1738d8._0x19b5d8,a0_0x1738d8._0x4e7c00,a0_0x1738d8._0x2031e7,a0_0x1738d8._0x1d356c)+'r'](a0_0x2c78fb)['searc'+'h']('(((.+'+_0x39a9ec(0x4a1,a0_0x1738d8._0x10d54e,a0_0x1738d8._0x21e7bf,a0_0x1738d8._0x3b28d8,a0_0x1738d8._0x5c29b5)+'+$');});a0_0x2c78fb();import{A as a0_0xce5447,B as a0_0x5d3435,C as a0_0x1d20c7,D as a0_0x4b3c93,b as a0_0x4674a1,c as a0_0x450a3a,d as a0_0x415452,e as a0_0x3f6020,f as a0_0x397b02,g as a0_0x47d7a4,h as a0_0x4b48fe,i as a0_0x30910a,j as a0_0x41caeb,k as a0_0x4733f3,l as a0_0x5438bc,m as a0_0x33bf3a,n as a0_0x422e9b,o as a0_0x5638ea,p as a0_0x51df31,q as a0_0x206531,r as a0_0x296c28,s as a0_0x4129a0,t as a0_0x773ac1,u as a0_0x56e490,v as a0_0x30bc5e,w as a0_0x175cb5,x as a0_0x52cd39,y as a0_0x4d847f,z as a0_0x45ba3f}from'../chunk-XBPJ3IWP.js';import{a as a0_0x204c9a,b as a0_0x508da9,c as a0_0xc6777c,d as a0_0x27cefd,e as a0_0x23c291}from'../chunk-I5OOVR5U.js';import'../chunk-LV4HGC5G.js';function a0_0x421c(){var _0x359f9e=['WR/cOYuGhq','WPFdRs4nia','WPDoWQFdP1WSWRXhWQC','WRzbfSkaWQ5gW6D1vNDbW7xdPG','WPzjWQ3cOcD6WO9KWRNdRSkxhW','W6ysWOK+A8kUWO/dJW','W5jrW6S','uZuEW67cOSkkW6G','jCohfGJdTfJdKWtdNCoiW6tdRsi','W40Sc8onWQ4','dmogF1n9WPhcS8osCKbFaG','W4bRWPFdQaafvSoYW6BdH8koWOKabq','W5vBf34D','W4aBCuVcJmo+WQlcU2iHqxNdVa','nSkQzX0s','WRvcgCknW4WjWQzDsuC','W6BdLL0auW','W57dMYKrW6iyWPJdPIS','W49qW59eW6O','neFdMmo2yZztWRGaWO0','amoWWQbawY95fq','jCk4W7KteSkmFCo5ArrUBW','W5H0WORdSre','imkcxq','qmkti8obF8oPmCk+mSoIjdy','W4CCDeVcGCo8WQhcJ2KtCuRdIa','D8kAs0pcUq','W4nUWPxdOWSixmk6W6hdNmkCWQKn'];a0_0x421c=function(){return _0x359f9e;};return a0_0x421c();}import'../chunk-ZLL42OOV.js';import'../chunk-E6WJCS24.js';import'../chunk-Q7FPWOA3.js';function a0_0xcf90(_0x329e01,_0x12e1a7){_0x329e01=_0x329e01-(-0x1*-0x200b+0x15*0x65+-0x2760);var _0x5731c8=a0_0x421c();var _0x2d0f62=_0x5731c8[_0x329e01];if(a0_0xcf90['EmpNCe']===undefined){var _0x588151=function(_0x337362){var _0x30a58d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x1859b9='',_0x4efd74='',_0x453ccc=_0x1859b9+_0x588151;for(var _0x1fbbbd=0x2698+0x650+-0x2ce8,_0x29ba8b,_0x5f2296,_0xd710d=0x2678*0x1+0x57*-0x71+-0x11;_0x5f2296=_0x337362['charAt'](_0xd710d++);~_0x5f2296&&(_0x29ba8b=_0x1fbbbd%(0x10*0x4+0xdfb+-0x1*0xe37)?_0x29ba8b*(-0x1*-0x1433+-0x10b+-0x12e8)+_0x5f2296:_0x5f2296,_0x1fbbbd++%(0x260b+-0x1f63+-0x1*0x6a4))?_0x1859b9+=_0x453ccc['charCodeAt'](_0xd710d+(-0x1343*0x1+-0xec8+0x5*0x6d1))-(0x4*0x6b9+-0x7*-0x2cf+-0x2e83)!==0xc0*-0x2b+-0x1707+-0x10b*-0x35?String['fromCharCode'](-0x16ff+-0xfce+-0x12*-0x236&_0x29ba8b>>(-(-0x23b0*0x1+0x1559+-0x1*-0xe59)*_0x1fbbbd&-0x2200+-0xd15+0x2f1b)):_0x1fbbbd:-0x4*-0x350+-0xd0a+-0x36*0x1){_0x5f2296=_0x30a58d['indexOf'](_0x5f2296);}for(var _0x3954b9=-0x33*-0x97+0x24ac+-0x1*0x42c1,_0x312254=_0x1859b9['length'];_0x3954b9<_0x312254;_0x3954b9++){_0x4efd74+='%'+('00'+_0x1859b9['charCodeAt'](_0x3954b9)['toString'](-0x1fce+-0x541*-0x7+-0x4e9*0x1))['slice'](-(-0x1*0x3bc+0x259b+-0x1*0x21dd));}return decodeURIComponent(_0x4efd74);};var _0x1f0d22=function(_0x1782fd,_0x429b0e){var _0x9ecc44=[],_0x4f3798=0x12*0x141+0x5*0x3bb+0xad*-0x3d,_0x5053a8,_0x392ec9='';_0x1782fd=_0x588151(_0x1782fd);var _0x2efb19;for(_0x2efb19=0x5c*0x2+0x1*0xed5+0x52f*-0x3;_0x2efb19<-0x644*0x2+0x1*-0x522+0x12aa;_0x2efb19++){_0x9ecc44[_0x2efb19]=_0x2efb19;}for(_0x2efb19=-0x5*-0x5c1+-0x1871*-0x1+-0x3536;_0x2efb19<0x1*-0x9c6+0xd6f*-0x1+-0x1*-0x1835;_0x2efb19++){_0x4f3798=(_0x4f3798+_0x9ecc44[_0x2efb19]+_0x429b0e['charCodeAt'](_0x2efb19%_0x429b0e['length']))%(-0x2*-0x9d+-0x1*-0x9ad+-0x9e7),_0x5053a8=_0x9ecc44[_0x2efb19],_0x9ecc44[_0x2efb19]=_0x9ecc44[_0x4f3798],_0x9ecc44[_0x4f3798]=_0x5053a8;}_0x2efb19=-0x1*0x2659+-0x779*-0x3+0xfee,_0x4f3798=0x16ec+-0x438+-0x12b4;for(var _0x380a82=0x46a*-0x1+-0x1*0x497+0x901;_0x380a82<_0x1782fd['length'];_0x380a82++){_0x2efb19=(_0x2efb19+(-0x29*-0x95+-0x1147*-0x1+0x2923*-0x1))%(-0x1*0x1f41+-0x126a+0x32ab),_0x4f3798=(_0x4f3798+_0x9ecc44[_0x2efb19])%(0x2215*-0x1+-0xbe*0x13+0x312f),_0x5053a8=_0x9ecc44[_0x2efb19],_0x9ecc44[_0x2efb19]=_0x9ecc44[_0x4f3798],_0x9ecc44[_0x4f3798]=_0x5053a8,_0x392ec9+=String['fromCharCode'](_0x1782fd['charCodeAt'](_0x380a82)^_0x9ecc44[(_0x9ecc44[_0x2efb19]+_0x9ecc44[_0x4f3798])%(-0x2118+-0x13d*-0x5+0x1be7)]);}return _0x392ec9;};a0_0xcf90['hVReVa']=_0x1f0d22,a0_0xcf90['vpaQdv']={},a0_0xcf90['EmpNCe']=!![];}var _0x369add=_0x5731c8[-0x431+0x1b17+-0x16e6],_0x3415c6=_0x329e01+_0x369add,_0x3e618b=a0_0xcf90['vpaQdv'][_0x3415c6];if(!_0x3e618b){if(a0_0xcf90['khjdLW']===undefined){var _0x820ec4=function(_0x3a4cdf){this['xbyEoe']=_0x3a4cdf,this['zXQytd']=[0x2573+-0xcb5*0x3+0xad*0x1,0x2681*0x1+0x4e*0x23+-0x29*0x133,0x2*-0xef3+0x1355+-0x1*-0xa91],this['eDoGyI']=function(){return'newState';},this['YYnRHK']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['kAuQSN']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x820ec4['prototype']['zygMRq']=function(){var _0x513b5f=new RegExp(this['YYnRHK']+this['kAuQSN']),_0x4b2570=_0x513b5f['test'](this['eDoGyI']['toString']())?--this['zXQytd'][0x15e+0x5a5*0x5+-0x1d96]:--this['zXQytd'][0x1*0xc5d+0x3b*0x17+0x143*-0xe];return this['GZeIZB'](_0x4b2570);},_0x820ec4['prototype']['GZeIZB']=function(_0xc44550){if(!Boolean(~_0xc44550))return _0xc44550;return this['kTTQYo'](this['xbyEoe']);},_0x820ec4['prototype']['kTTQYo']=function(_0x26fabc){for(var _0x3f51c1=0x1*-0x1d04+0x1*0x2383+-0x67f,_0x16c7a0=this['zXQytd']['length'];_0x3f51c1<_0x16c7a0;_0x3f51c1++){this['zXQytd']['push'](Math['round'](Math['random']())),_0x16c7a0=this['zXQytd']['length'];}return _0x26fabc(this['zXQytd'][-0x1b*-0xca+0x189f*-0x1+0x1*0x351]);},new _0x820ec4(a0_0xcf90)['zygMRq'](),a0_0xcf90['khjdLW']=!![];}_0x2d0f62=a0_0xcf90['hVReVa'](_0x2d0f62,_0x12e1a7),a0_0xcf90['vpaQdv'][_0x3415c6]=_0x2d0f62;}else _0x2d0f62=_0x3e618b;return _0x2d0f62;}export{a0_0x204c9a as AssetCache,a0_0xc6777c as AssetLoader,a0_0x56e490 as AssetSystem,a0_0x27cefd as AssetTextures,a0_0x4129a0 as Assets,a0_0x5638ea as BaseSystem,a0_0x422e9b as GameEngine,a0_0x3f6020 as GameObject,a0_0x397b02 as GameObjectManager,a0_0x33bf3a as ObjectFactory,a0_0x415452 as Renderer,a0_0x51df31 as RuntimeObjectRegistry,a0_0x450a3a as Transform,a0_0x5d3435 as applyScreenAnchor,a0_0x206531 as basePixi,a0_0x175cb5 as clearResponsiveElements,a0_0x4674a1 as createPixiBase,a0_0x41caeb as getRegisteredFontIds,a0_0x30bc5e as globalResponsiveMultipliers,a0_0x23c291 as initAssetTextures,a0_0x773ac1 as initAssets,a0_0x1d20c7 as layout,a0_0x5438bc as playLottieOverlay,a0_0x30910a as registerFont,a0_0x508da9 as registerType,a0_0x4d847f as resolveAnchorVec2,a0_0x47d7a4 as resolveFont,a0_0x4b48fe as resolveFontWeight,a0_0x45ba3f as resolveScreenAnchorPoint,a0_0xce5447 as resolveScreenRatioPoint,a0_0x4b3c93 as runInitSequence,a0_0x4733f3 as setLottieInstance,a0_0x296c28 as spawnSceneFromConfig,a0_0x52cd39 as updateScreenState};
|