@enhance-eng/sandbox 0.3.18 → 0.3.20-beta.94284e2

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/README.md ADDED
@@ -0,0 +1,44 @@
1
+ # @enhance-eng/sandbox
2
+
3
+ Enhance sandbox library for adding preview functionality to your application.
4
+
5
+ **Supported frameworks:** React SPAs and statically generated sites. SSR is not supported.
6
+
7
+ ## Installation
8
+
9
+ ```bash
10
+ npm install @enhance-eng/sandbox
11
+ ```
12
+
13
+ ## Vite
14
+
15
+ Add the plugin to your Vite config:
16
+
17
+ ```typescript
18
+ // vite.config.ts
19
+ import { enhance } from "@enhance-eng/sandbox/vite";
20
+
21
+ export default defineConfig({
22
+ plugins: [enhance()],
23
+ });
24
+ ```
25
+
26
+ That's it. The plugin handles everything automatically.
27
+
28
+ ## Other Build Tools
29
+
30
+ For non-Vite setups, use the CLI to copy the required assets to your public directory:
31
+
32
+ ```bash
33
+ npx enhance-sandbox prepare-sw --public-dir ./public
34
+ ```
35
+
36
+ Then initialize Enhance in your application entry point:
37
+
38
+ ```typescript
39
+ import { Enhance } from "@enhance-eng/sandbox";
40
+
41
+ Enhance.init();
42
+ ```
43
+
44
+ Run the CLI as part of your build process to keep assets up to date.
@@ -1 +1 @@
1
- const _0x2dd179=_0x5506;(function(_0x164057,_0xe92a03){const _0x59c488=_0x5506,_0x47556f=_0x164057();while(!![]){try{const _0xc59887=-parseInt(_0x59c488(0x191))/0x1+parseInt(_0x59c488(0x253))/0x2+-parseInt(_0x59c488(0x1df))/0x3*(parseInt(_0x59c488(0x239))/0x4)+parseInt(_0x59c488(0x1d5))/0x5+parseInt(_0x59c488(0x1e6))/0x6*(-parseInt(_0x59c488(0x250))/0x7)+-parseInt(_0x59c488(0x1ce))/0x8*(-parseInt(_0x59c488(0x208))/0x9)+parseInt(_0x59c488(0x1dd))/0xa;if(_0xc59887===_0xe92a03)break;else _0x47556f['push'](_0x47556f['shift']());}catch(_0x765764){_0x47556f['push'](_0x47556f['shift']());}}}(_0x1c08,0x1b580));var DEFAULT_OVERLAY_PATH=!![]?_0x2dd179(0x206):_0x2dd179(0x206),DEFAULT_BACKEND_URL=!![]?'https://api.enhancelabs.ai':_0x2dd179(0x197),DEFAULT_OVERLAY_HMR=!![]?![]:![];console[_0x2dd179(0x1fc)](_0x2dd179(0x1b6),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x2c79b3){const _0x2eb8e0=_0x2dd179,_0xe3fcc9=_0x2c79b3[_0x2eb8e0(0x25d)]??{};return{'callbackBypass':_0x2c79b3[_0x2eb8e0(0x1e9)],'overlay':{'enabled':!![],'position':_0x2eb8e0(0x261),'enableViteHmr':_0xe3fcc9[_0x2eb8e0(0x238)]??DEFAULT_OVERLAY_HMR},'logLevel':_0x2eb8e0(0x21d),'swPath':_0x2eb8e0(0x1c0),'overlayPath':_0xe3fcc9['overlayPath']??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x2eb8e0(0x1d9),'security':_0xe3fcc9[_0x2eb8e0(0x20c)]??'permissive','backendUrl':_0xe3fcc9[_0x2eb8e0(0x24c)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0xcaa045=_0x2dd179;try{const _0x4cb02f=new URLSearchParams(window['location']['search']);return _0x4cb02f[_0xcaa045(0x214)](_0xcaa045(0x1d1))?.[_0xcaa045(0x1e4)]()||'';}catch{return'';}}var LOG_PREFIX=_0x2dd179(0x221),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x57f78c){const _0x110aa9=_0x2dd179;console[_0x110aa9(0x1fc)](LOG_PREFIX+'\x20loadOverlay()\x20called'),console[_0x110aa9(0x1fc)](LOG_PREFIX+_0x110aa9(0x265)+_0x57f78c[_0x110aa9(0x190)]),console[_0x110aa9(0x1fc)](LOG_PREFIX+_0x110aa9(0x19f)+_0x57f78c['enableViteHmr']),currentOptions=_0x57f78c[_0x110aa9(0x235)],toggleHandler=_0x57f78c[_0x110aa9(0x1f6)];if(overlayController){console[_0x110aa9(0x1fc)](LOG_PREFIX+_0x110aa9(0x19e)),updateOverlay();return;}if(overlayLoadPromise)return console[_0x110aa9(0x1fc)](LOG_PREFIX+_0x110aa9(0x210)),overlayLoadPromise;console[_0x110aa9(0x1fc)](LOG_PREFIX+_0x110aa9(0x209)),overlayLoadPromise=doLoadOverlay(_0x57f78c);try{await overlayLoadPromise,console[_0x110aa9(0x1fc)](LOG_PREFIX+_0x110aa9(0x1c6));}catch(_0x15361e){console[_0x110aa9(0x248)](LOG_PREFIX+'\x20loadOverlay()\x20failed:',_0x15361e);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x296ca4){const _0x4638a0=_0x2dd179;console[_0x4638a0(0x1fc)](LOG_PREFIX+_0x4638a0(0x223));if(typeof window===_0x4638a0(0x260)){console[_0x4638a0(0x1fc)](LOG_PREFIX+_0x4638a0(0x1bb));return;}if(window['__enhanceOverlay']){console[_0x4638a0(0x1fc)](LOG_PREFIX+_0x4638a0(0x24f)),overlayController=window[_0x4638a0(0x1a4)];return;}console['log'](LOG_PREFIX+_0x4638a0(0x1c4));try{_0x296ca4['enableViteHmr']&&(console[_0x4638a0(0x1fc)](LOG_PREFIX+_0x4638a0(0x22c)),await setupRemoteHMR(_0x296ca4[_0x4638a0(0x190)]));console[_0x4638a0(0x1fc)](LOG_PREFIX+_0x4638a0(0x247)+_0x296ca4[_0x4638a0(0x190)]);const _0x45409a=Date[_0x4638a0(0x1b3)](),_0xe19f21=await import(_0x296ca4[_0x4638a0(0x190)]);console[_0x4638a0(0x1fc)](LOG_PREFIX+_0x4638a0(0x1a9)+(Date[_0x4638a0(0x1b3)]()-_0x45409a)+'ms'),console[_0x4638a0(0x1fc)](LOG_PREFIX+_0x4638a0(0x1fe),Object['keys'](_0xe19f21));if(typeof _0xe19f21?.[_0x4638a0(0x1c7)]!==_0x4638a0(0x20e)){console['error'](LOG_PREFIX+_0x4638a0(0x22d)),console['error'](LOG_PREFIX+_0x4638a0(0x1b5),Object[_0x4638a0(0x25b)](_0xe19f21));return;}console['log'](LOG_PREFIX+_0x4638a0(0x20d));const _0x298537=_0xe19f21['createOverlay']();console[_0x4638a0(0x1fc)](LOG_PREFIX+'\x20Controller\x20created:',_0x298537),overlayController=_0x298537,window[_0x4638a0(0x1a4)]=_0x298537,_0x298537['onToggle'](_0x296ca4[_0x4638a0(0x1f6)]),console[_0x4638a0(0x1fc)](LOG_PREFIX+_0x4638a0(0x252)),console[_0x4638a0(0x1fc)](LOG_PREFIX+_0x4638a0(0x1d0)),updateOverlay();}catch(_0x4a2348){console[_0x4638a0(0x248)](LOG_PREFIX+_0x4638a0(0x21c),_0x4a2348);}}function updateOverlay(){const _0xe923a=_0x2dd179;console[_0xe923a(0x1fc)](LOG_PREFIX+'\x20updateOverlay()\x20called'),console[_0xe923a(0x1fc)](LOG_PREFIX+'\x20overlayController\x20exists:\x20'+!!overlayController),console['log'](LOG_PREFIX+_0xe923a(0x268)+!!currentOptions);if(!overlayController||!currentOptions){console[_0xe923a(0x1fc)](LOG_PREFIX+_0xe923a(0x1f5));return;}const _0x2b2603=composeOverlayState(currentOptions);console['log'](LOG_PREFIX+_0xe923a(0x1cd),JSON[_0xe923a(0x1b9)](_0x2b2603,null,0x2)),overlayController[_0xe923a(0x1e7)](_0x2b2603),console['log'](LOG_PREFIX+'\x20Overlay\x20update\x20complete');}function composeOverlayState(_0x17c085){const _0x4ce671=_0x2dd179,_0x1a6204=getEnhancementUrl();return console['log'](LOG_PREFIX+_0x4ce671(0x1b1)+_0x1a6204),console[_0x4ce671(0x1fc)](LOG_PREFIX+_0x4ce671(0x23b)+state['enabled']),console[_0x4ce671(0x1fc)](LOG_PREFIX+'\x20composeOverlayState\x20-\x20state.controlled:\x20'+state[_0x4ce671(0x19b)]),{'enhancementUrl':_0x1a6204,'enabled':state[_0x4ce671(0x200)],'controlled':state[_0x4ce671(0x19b)],'overlayPosition':_0x17c085[_0x4ce671(0x211)]['position'],'securityMode':_0x17c085[_0x4ce671(0x20c)],'backendBaseUrl':_0x17c085[_0x4ce671(0x24c)],'appError':state['appError']};}async function setupRemoteHMR(_0x50c492){const _0x236358=_0x2dd179;console['log'](LOG_PREFIX+'\x20setupRemoteHMR()\x20for\x20'+_0x50c492);if(typeof window==='undefined')return;try{const _0x31029a=new URL(_0x50c492,window['location']['origin']),_0x1b318d=_0x31029a['origin'];console[_0x236358(0x1fc)](LOG_PREFIX+_0x236358(0x18f)+_0x1b318d+_0x236358(0x1de)+window[_0x236358(0x1d7)][_0x236358(0x220)]);if(_0x1b318d===window[_0x236358(0x1d7)]['origin']){console[_0x236358(0x1fc)](LOG_PREFIX+_0x236358(0x21e));return;}console[_0x236358(0x1fc)](LOG_PREFIX+_0x236358(0x1f1)),await ensureReactRefreshPreamble(_0x1b318d),await ensureViteClient(_0x1b318d),console[_0x236358(0x1fc)](LOG_PREFIX+'\x20HMR\x20setup\x20complete');}catch(_0x67c2c3){console[_0x236358(0x231)](LOG_PREFIX+_0x236358(0x202),_0x67c2c3);}}async function ensureReactRefreshPreamble(_0x58a904){const _0x481fd5=_0x2dd179;window[_0x481fd5(0x259)]??(window[_0x481fd5(0x259)]=new Set());if(window['__enhanceReactRefreshInstalledOrigins'][_0x481fd5(0x1fa)](_0x58a904)){console[_0x481fd5(0x1fc)](LOG_PREFIX+_0x481fd5(0x264)+_0x58a904);return;}console[_0x481fd5(0x1fc)](LOG_PREFIX+_0x481fd5(0x1ec)+_0x58a904+_0x481fd5(0x25c));const _0x4c1058=await import(_0x58a904+_0x481fd5(0x1a8)),_0x173e44=_0x4c1058&&typeof _0x4c1058===_0x481fd5(0x20a)&&_0x481fd5(0x233)in _0x4c1058?_0x4c1058[_0x481fd5(0x233)]:_0x4c1058;if(!isRefreshRuntime(_0x173e44)){console[_0x481fd5(0x231)](LOG_PREFIX+_0x481fd5(0x193));return;}_0x173e44[_0x481fd5(0x262)](window),window['$RefreshReg$']=()=>{},window[_0x481fd5(0x257)]=()=>_0x1d3cc8=>_0x1d3cc8,window[_0x481fd5(0x229)]=!![],window[_0x481fd5(0x259)][_0x481fd5(0x1e2)](_0x58a904),console[_0x481fd5(0x1fc)](LOG_PREFIX+_0x481fd5(0x204)+_0x58a904);}async function ensureViteClient(_0x5e3737){const _0x537b79=_0x2dd179;window[_0x537b79(0x1bf)]??(window[_0x537b79(0x1bf)]=new Set());if(window[_0x537b79(0x1bf)][_0x537b79(0x1fa)](_0x5e3737)){console[_0x537b79(0x1fc)](LOG_PREFIX+'\x20Vite\x20client\x20already\x20loaded\x20for\x20'+_0x5e3737);return;}console[_0x537b79(0x1fc)](LOG_PREFIX+_0x537b79(0x225)+_0x5e3737+_0x537b79(0x25c)),await import(_0x5e3737+_0x537b79(0x1f3)),window[_0x537b79(0x1bf)][_0x537b79(0x1e2)](_0x5e3737),console['log'](LOG_PREFIX+_0x537b79(0x1f0)+_0x5e3737);}function isRefreshRuntime(_0x13ffda){const _0x310a76=_0x2dd179;return typeof _0x13ffda===_0x310a76(0x20a)&&_0x13ffda!==null&&'injectIntoGlobalHook'in _0x13ffda&&typeof _0x13ffda[_0x310a76(0x262)]==='function';}var WORKER_MESSAGE_CONFIG=_0x2dd179(0x1ba),WORKER_MESSAGE_DISABLE=_0x2dd179(0x23a),LOG_PREFIX2=_0x2dd179(0x1cb),registration=null,currentOptions2=null;async function registerServiceWorker(_0x56b66c){const _0x3583d2=_0x2dd179;console['log'](LOG_PREFIX2+_0x3583d2(0x1b0)),console[_0x3583d2(0x1fc)](LOG_PREFIX2+_0x3583d2(0x219)+_0x56b66c[_0x3583d2(0x22f)]);if(!(_0x3583d2(0x18e)in navigator)){console[_0x3583d2(0x231)](LOG_PREFIX2+_0x3583d2(0x1ff));return;}console[_0x3583d2(0x1fc)](LOG_PREFIX2+'\x20Service\x20workers\x20supported');const _0x51a9a2=navigator[_0x3583d2(0x18e)]['controller'];console[_0x3583d2(0x1fc)](LOG_PREFIX2+_0x3583d2(0x22e),_0x51a9a2?.[_0x3583d2(0x23c)]??_0x3583d2(0x199)),console[_0x3583d2(0x1fc)](LOG_PREFIX2+_0x3583d2(0x1fd),_0x51a9a2?.[_0x3583d2(0x23f)]??_0x3583d2(0x215));const _0x53dedb=!!_0x51a9a2;currentOptions2=_0x56b66c,console[_0x3583d2(0x1fc)](LOG_PREFIX2+_0x3583d2(0x1be));const _0x5df65b=await detectBlockingServiceWorker(_0x56b66c[_0x3583d2(0x22f)]);if(_0x5df65b){console[_0x3583d2(0x248)](LOG_PREFIX2+_0x3583d2(0x1ef)+_0x5df65b),console[_0x3583d2(0x248)](LOG_PREFIX2+_0x3583d2(0x205));return;}console[_0x3583d2(0x1fc)](LOG_PREFIX2+_0x3583d2(0x224));try{console['log'](LOG_PREFIX2+_0x3583d2(0x1d3)+_0x56b66c[_0x3583d2(0x22f)]+_0x3583d2(0x21a)),registration=await navigator['serviceWorker']['register'](_0x56b66c['swPath'],{'scope':'/'}),console[_0x3583d2(0x1fc)](LOG_PREFIX2+_0x3583d2(0x1eb),{'scope':registration[_0x3583d2(0x26c)],'active':registration[_0x3583d2(0x1bd)]?.['scriptURL'],'waiting':registration[_0x3583d2(0x1ea)]?.['scriptURL'],'installing':registration['installing']?.[_0x3583d2(0x23c)]}),console[_0x3583d2(0x1fc)](LOG_PREFIX2+'\x20Waiting\x20for\x20navigator.serviceWorker.ready...');const _0x5a184a=await navigator[_0x3583d2(0x18e)][_0x3583d2(0x1bc)];console[_0x3583d2(0x1fc)](LOG_PREFIX2+_0x3583d2(0x1e0),_0x5a184a[_0x3583d2(0x1bd)]?.[_0x3583d2(0x23c)]);const _0x55b6a3=ownsCurrentController(_0x56b66c[_0x3583d2(0x22f)]);state['controlled']=_0x55b6a3,console[_0x3583d2(0x1fc)](LOG_PREFIX2+'\x20Page\x20controlled\x20by\x20our\x20SW:\x20'+_0x55b6a3),console['log'](LOG_PREFIX2+_0x3583d2(0x21f),navigator[_0x3583d2(0x18e)]['controller']?.[_0x3583d2(0x23c)]??'none');if(!_0x53dedb&&!navigator['serviceWorker'][_0x3583d2(0x242)]){console['log'](LOG_PREFIX2+_0x3583d2(0x18d)),window['location'][_0x3583d2(0x23e)]();return;}console[_0x3583d2(0x1fc)](LOG_PREFIX2+'\x20Sending\x20customer\x20configuration...'),await sendConfiguration();if(state[_0x3583d2(0x200)]){const _0x26dacd=document[_0x3583d2(0x267)]('[data-enhance-runtime-bootstrap]')!==null;console['log'](LOG_PREFIX2+_0x3583d2(0x1a6)+_0x26dacd);if(!_0x26dacd){console[_0x3583d2(0x1fc)](LOG_PREFIX2+_0x3583d2(0x19d)),window[_0x3583d2(0x1d7)][_0x3583d2(0x23e)]();return;}}console[_0x3583d2(0x1fc)](LOG_PREFIX2+'\x20Updating\x20overlay...'),updateOverlay(),console[_0x3583d2(0x1fc)](LOG_PREFIX2+_0x3583d2(0x1f9));}catch(_0xfef0c3){console[_0x3583d2(0x248)](LOG_PREFIX2+'\x20Failed\x20to\x20register\x20service\x20worker:',_0xfef0c3);}}async function sendConfiguration(){const _0x2da854=_0x2dd179;console[_0x2da854(0x1fc)](LOG_PREFIX2+_0x2da854(0x1b2)),console['log'](LOG_PREFIX2+_0x2da854(0x1d8)+state[_0x2da854(0x200)]+_0x2da854(0x258)+!!currentOptions2);if(!state['enabled']||!currentOptions2){console[_0x2da854(0x1fc)](LOG_PREFIX2+'\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options');return;}const _0xbc51bf=await resolveWorker();if(!_0xbc51bf){console['warn'](LOG_PREFIX2+_0x2da854(0x1a7));return;}const _0x5980fe={'callbackBypass':currentOptions2[_0x2da854(0x1e9)],'securityMode':currentOptions2[_0x2da854(0x20c)]};console[_0x2da854(0x1fc)](LOG_PREFIX2+_0x2da854(0x1f8),JSON[_0x2da854(0x1b9)](_0x5980fe,null,0x2)),_0xbc51bf[_0x2da854(0x1ca)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x5980fe}),console['log'](LOG_PREFIX2+_0x2da854(0x1ae));}async function unregisterServiceWorker(_0x3c3f24){const _0x976cf8=_0x2dd179;console['log'](LOG_PREFIX2+_0x976cf8(0x194));if(!('serviceWorker'in navigator)){console[_0x976cf8(0x1fc)](LOG_PREFIX2+_0x976cf8(0x1e5));return;}try{const _0x5e5e01=registration??await navigator[_0x976cf8(0x18e)][_0x976cf8(0x234)]('/');if(!_0x5e5e01){console[_0x976cf8(0x1fc)](LOG_PREFIX2+'\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister');return;}console['log'](LOG_PREFIX2+_0x976cf8(0x1f4),{'scope':_0x5e5e01['scope'],'active':_0x5e5e01[_0x976cf8(0x1bd)]?.[_0x976cf8(0x23c)],'waiting':_0x5e5e01['waiting']?.[_0x976cf8(0x23c)],'installing':_0x5e5e01[_0x976cf8(0x269)]?.[_0x976cf8(0x23c)]});const _0x197a8d=[_0x5e5e01['active']?.[_0x976cf8(0x23c)],_0x5e5e01[_0x976cf8(0x1ea)]?.[_0x976cf8(0x23c)],_0x5e5e01['installing']?.[_0x976cf8(0x23c)]],_0x46f86e=_0x197a8d['some'](_0x2397dd=>_0x2397dd&&ownsServiceWorker(_0x2397dd,_0x3c3f24));if(!_0x46f86e){console['log'](LOG_PREFIX2+_0x976cf8(0x25e));return;}_0x5e5e01['active']&&(console[_0x976cf8(0x1fc)](LOG_PREFIX2+_0x976cf8(0x24b)),_0x5e5e01[_0x976cf8(0x1bd)][_0x976cf8(0x1ca)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x976cf8(0x1fc)](LOG_PREFIX2+_0x976cf8(0x1c1)),await _0x5e5e01[_0x976cf8(0x1aa)](),registration=null,currentOptions2=null,console[_0x976cf8(0x1fc)](LOG_PREFIX2+'\x20SW\x20unregistered\x20successfully');}catch(_0x1068e1){console[_0x976cf8(0x248)](LOG_PREFIX2+'\x20Failed\x20to\x20unregister\x20service\x20worker:',_0x1068e1);}}function ownsServiceWorker(_0x2b63a9,_0x32bbeb){const _0x1a0b5d=_0x2dd179,_0x56ad95=typeof window!==_0x1a0b5d(0x260)?window[_0x1a0b5d(0x1d7)][_0x1a0b5d(0x220)]:'',_0x3aa297=new URL(_0x32bbeb,_0x56ad95||void 0x0)[_0x1a0b5d(0x218)],_0x407951=_0x2b63a9===_0x3aa297||_0x2b63a9[_0x1a0b5d(0x22b)](_0x1a0b5d(0x1e1));return console[_0x1a0b5d(0x1fc)](LOG_PREFIX2+_0x1a0b5d(0x23d)+_0x2b63a9+_0x1a0b5d(0x1a3)+_0x3aa297+',\x20owns='+_0x407951),_0x407951;}function ownsCurrentController(_0x15895f){const _0x24c191=_0x2dd179;if(typeof navigator===_0x24c191(0x260))return![];const _0x92c39e=navigator['serviceWorker']?.[_0x24c191(0x242)];if(!_0x92c39e)return console[_0x24c191(0x1fc)](LOG_PREFIX2+_0x24c191(0x1fb)),![];return ownsServiceWorker(_0x92c39e[_0x24c191(0x23c)],_0x15895f);}async function detectBlockingServiceWorker(_0x458081){const _0x43053f=_0x2dd179;if(!navigator[_0x43053f(0x18e)])return null;try{const _0x42120=await navigator[_0x43053f(0x18e)][_0x43053f(0x234)]('/');console[_0x43053f(0x1fc)](LOG_PREFIX2+_0x43053f(0x240),_0x42120?.[_0x43053f(0x1bd)]?.['scriptURL']??_0x43053f(0x199));const _0x35f85f=_0x42120?.['active']?.[_0x43053f(0x23c)];if(!_0x35f85f)return null;if(ownsServiceWorker(_0x35f85f,_0x458081))return null;return _0x35f85f;}catch(_0xe72ba1){return console[_0x43053f(0x248)](LOG_PREFIX2+_0x43053f(0x1cc),_0xe72ba1),null;}}async function resolveWorker(){const _0x77e99b=_0x2dd179,_0x1857f2=registration??await navigator['serviceWorker']?.[_0x77e99b(0x234)]('/'),_0x268f46=_0x1857f2?.['active']??_0x1857f2?.[_0x77e99b(0x1ea)]??_0x1857f2?.[_0x77e99b(0x269)]??null;return console[_0x77e99b(0x1fc)](LOG_PREFIX2+_0x77e99b(0x216),_0x268f46?.['scriptURL']??'none',_0x77e99b(0x228)+(_0x268f46?.[_0x77e99b(0x23f)]??_0x77e99b(0x215))),_0x268f46;}var LOG_PREFIX3=_0x2dd179(0x226);function isInitialized(){return typeof window!=='undefined'&&window['__enhanceInitialized']===!![];}function setInitialized(_0x29994d){const _0x42e63f=_0x2dd179;typeof window!==_0x42e63f(0x260)&&(window[_0x42e63f(0x1b4)]=_0x29994d);}function getOptions(){const _0x110d13=_0x2dd179;return typeof window!==_0x110d13(0x260)?window[_0x110d13(0x24a)]??null:null;}function setOptions(_0x53f1a0){const _0x26d6d3=_0x2dd179;typeof window!=='undefined'&&(window[_0x26d6d3(0x24a)]=_0x53f1a0);}var Enhance={'init'(_0x30c037){const _0x52f1c6=_0x2dd179,_0x263502=Date[_0x52f1c6(0x1b3)]();console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x1ab)+_0x263502),console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x20f)+window['location'][_0x52f1c6(0x218)]),console['log'](LOG_PREFIX3+_0x52f1c6(0x1ed)+document[_0x52f1c6(0x232)]),console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x227),JSON[_0x52f1c6(0x1b9)](_0x30c037,null,0x2));if(isInitialized())return console['warn'](LOG_PREFIX3+'\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller'),window['__enhanceController']??createController();setInitialized(!![]),console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x196));const _0x535940=normalizeOptions(_0x30c037);setOptions(_0x535940),console['log'](LOG_PREFIX3+_0x52f1c6(0x217),JSON[_0x52f1c6(0x1b9)](_0x535940,null,0x2));const _0x1aaa31=parseUrlParams();console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x198),JSON[_0x52f1c6(0x1b9)](_0x1aaa31,null,0x2));if(_0x1aaa31['explicitDisable'])return cleanUrlParam(_0x52f1c6(0x251)),console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x212)),createController();if(_0x1aaa31['hasEnhancement'])return console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x1e8)),console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x213)+_0x1aaa31[_0x52f1c6(0x1d1)]),console['log'](LOG_PREFIX3+_0x52f1c6(0x1db)+_0x1aaa31[_0x52f1c6(0x249)]),state[_0x52f1c6(0x200)]=!![],console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x1a1)),void loadOverlay({'overlayPath':_0x535940[_0x52f1c6(0x190)],'enableViteHmr':_0x535940['overlay'][_0x52f1c6(0x1dc)],'options':_0x535940,'onToggle':handleToggle}),console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x1d2)),void registerServiceWorker(_0x535940),console[_0x52f1c6(0x1fc)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20enhancement\x20mode'),createController();return console[_0x52f1c6(0x1fc)](LOG_PREFIX3+'\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params'),console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x230)),void unregisterServiceWorker(_0x535940['swPath']),console[_0x52f1c6(0x1fc)](LOG_PREFIX3+_0x52f1c6(0x1a0)),import.meta[_0x52f1c6(0x21b)]&&(console['log'](LOG_PREFIX3+_0x52f1c6(0x18b)),import.meta[_0x52f1c6(0x21b)]['on'](_0x52f1c6(0x1ac),_0x5bd57f=>{const _0x4b1e13=_0x52f1c6;console[_0x4b1e13(0x1fc)](LOG_PREFIX3+_0x4b1e13(0x1c5),_0x5bd57f),state[_0x4b1e13(0x203)]={'message':_0x5bd57f[_0x4b1e13(0x192)][_0x4b1e13(0x1c2)]},updateOverlay();}),import.meta[_0x52f1c6(0x21b)]['on'](_0x52f1c6(0x22a),()=>{const _0xbdb393=_0x52f1c6;state['appError']&&(console[_0xbdb393(0x1fc)](LOG_PREFIX3+_0xbdb393(0x1d6)),state[_0xbdb393(0x203)]=null,updateOverlay());})),createController();}};function createController(){const _0x38752f=_0x2dd179,_0xd68bb7={'enable'(){const _0x1aafa0=_0x5506,_0x5993f4=getOptions();if(!_0x5993f4)return;state[_0x1aafa0(0x200)]=!![],void loadOverlay({'overlayPath':_0x5993f4[_0x1aafa0(0x190)],'enableViteHmr':_0x5993f4[_0x1aafa0(0x211)]['enableViteHmr'],'options':_0x5993f4,'onToggle':handleToggle}),void registerServiceWorker(_0x5993f4),void sendConfiguration(),updateOverlay();},'disable'(){const _0x58621a=_0x5506,_0x90b8fe=getOptions();if(!_0x90b8fe)return;state['enabled']=![],state[_0x58621a(0x19b)]=![],updateOverlay(),void unregisterServiceWorker(_0x90b8fe[_0x58621a(0x22f)]);},'status'(){const _0x2e1d52=_0x5506;return{'enabled':state[_0x2e1d52(0x200)],'controlled':state[_0x2e1d52(0x19b)]};}};return typeof window!==_0x38752f(0x260)&&(window[_0x38752f(0x207)]=_0xd68bb7),_0xd68bb7;}function handleToggle(){const _0x5882eb=_0x2dd179,_0x11a1ba=createController();state['enabled']?_0x11a1ba['disable']():_0x11a1ba[_0x5882eb(0x1c8)]();}function parseUrlParams(){const _0x5ebe96=_0x2dd179,_0x1d02a5=new URL(window[_0x5ebe96(0x1d7)]['href']),_0xd12da2=_0x1d02a5[_0x5ebe96(0x1f7)]['get'](_0x5ebe96(0x251))?.['toLowerCase'](),_0x5465a2=_0x1d02a5['searchParams']['get'](_0x5ebe96(0x1d1)),_0x433693=_0x1d02a5[_0x5ebe96(0x1f7)]['get'](_0x5ebe96(0x195));return{'hasEnhancement':Boolean(_0x5465a2||_0x433693),'explicitDisable':_0xd12da2==='0'||_0xd12da2===_0x5ebe96(0x222)||_0xd12da2===_0x5ebe96(0x255),'enhancementUrl':_0x5465a2,'enhancementId':_0x433693};}function _0x5506(_0x2a1eae,_0x1a9280){const _0x1c080c=_0x1c08();return _0x5506=function(_0x550628,_0x363150){_0x550628=_0x550628-0x18b;let _0x3971b2=_0x1c080c[_0x550628];return _0x3971b2;},_0x5506(_0x2a1eae,_0x1a9280);}function cleanUrlParam(_0x2cc932){const _0x2a315e=_0x2dd179,_0x44f714=new URL(window[_0x2a315e(0x1d7)][_0x2a315e(0x218)]);_0x44f714[_0x2a315e(0x1f7)]['has'](_0x2cc932)&&(_0x44f714[_0x2a315e(0x1f7)]['delete'](_0x2cc932),window[_0x2a315e(0x24d)][_0x2a315e(0x26a)](null,document[_0x2a315e(0x19a)],_0x44f714[_0x2a315e(0x18c)]()));}var package_default={'name':_0x2dd179(0x1da),'version':_0x2dd179(0x256),'type':_0x2dd179(0x1ee),'description':_0x2dd179(0x1c3),'license':_0x2dd179(0x26b),'main':_0x2dd179(0x24e),'module':_0x2dd179(0x243),'types':'./dist/index.d.ts','exports':{'.':{'types':_0x2dd179(0x1ad),'import':_0x2dd179(0x243),'require':'./dist/index.cjs'},'./vite':{'types':_0x2dd179(0x1b7),'import':_0x2dd179(0x246)}},'files':[_0x2dd179(0x19c),_0x2dd179(0x25a),'enhance.config.sample.json'],'bin':{'enhance-sandbox':_0x2dd179(0x244)},'scripts':{'typecheck':'tsc\x20--noEmit','dev':_0x2dd179(0x1b8),'dev:build':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','dev:staging':_0x2dd179(0x1f2),'dev:staging:build':_0x2dd179(0x263),'build':_0x2dd179(0x254),'build:release':_0x2dd179(0x245),'version':'pnpm\x20version\x20patch\x20--no-git-tag-version'},'dependencies':{'commander':_0x2dd179(0x266),'zod':'^3.22.4'},'devDependencies':{'@types/node':_0x2dd179(0x241),'javascript-obfuscator':_0x2dd179(0x1a5),'tsup':_0x2dd179(0x1a2),'vite':_0x2dd179(0x25f)},'publishConfig':{'access':_0x2dd179(0x1af)}},DEFAULT_SERVICE_WORKER_PATH=_0x2dd179(0x1c0),DEFAULT_RUNTIME_PATH='/assets/enhance-runtime.js',PACKAGE_VERSION=typeof package_default[_0x2dd179(0x236)]===_0x2dd179(0x201)?package_default['version']:_0x2dd179(0x1cf);function normalizeAssetPath(_0xb6a685){const _0x5d342d=_0x2dd179;if(!_0xb6a685)return _0xb6a685;if(_0xb6a685[_0x5d342d(0x1d4)](_0x5d342d(0x237))||_0xb6a685[_0x5d342d(0x1d4)](_0x5d342d(0x1e3)))return _0xb6a685;const _0x45bf97=_0xb6a685['replace'](/^\.\//,'');return _0x45bf97[_0x5d342d(0x1d4)]('/')?_0x45bf97:'/'+_0x45bf97;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x282b1d){const _0x55b14d=_0x2dd179;return Enhance[_0x55b14d(0x20b)](_0x282b1d);},'serviceWorkerURL'(){return defaultSwPath;},'runtimeURL'(){return defaultRuntimePath;},'assetManifest'(){return getAssetManifest();}};function _0x1c08(){const _0x44cd6e=['bin/enhance-sandbox.js','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','./dist/vite/index.js','\x20Importing\x20overlay\x20module\x20from:\x20','error','enhancementId','__enhanceOptions','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','backendUrl','history','./dist/index.cjs','\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit','84SgjKpO','enhance','\x20Overlay\x20controller\x20initialized\x20and\x20cached','38670SaTKsH','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','off','0.3.18','$RefreshSig$',',\x20currentOptions:\x20','__enhanceReactRefreshInstalledOrigins','bin','keys','...','__development','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','^7.2.4','undefined','bottom-right','injectIntoGlobalHook','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','\x20React\x20Refresh\x20already\x20installed\x20for\x20','\x20overlayPath:\x20','^11.1.0','querySelector','\x20currentOptions\x20exists:\x20','installing','replaceState','MIT','scope','\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners','toString','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','serviceWorker','\x20Overlay\x20origin:\x20','overlayPath','147115vFZEEA','err','\x20Invalid\x20React\x20Refresh\x20runtime','\x20unregisterServiceWorker()\x20called','enhancement','\x20First\x20initialization','https://api.enhancelabs.ai','\x20URL\x20params\x20parsed:','none','title','controlled','dist','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay','\x20enableViteHmr:\x20','\x20init()\x20complete\x20-\x20normal\x20mode','\x20Starting\x20overlay\x20load\x20(async)...','^8.5.1',',\x20expected=','__enhanceOverlay','^4.1.1','\x20Enhancement\x20detection:\x20wasEnhanced=','\x20No\x20service\x20worker\x20active\x20to\x20configure','/@react-refresh','\x20Module\x20imported\x20in\x20','unregister','\x20init()\x20called\x20at\x20','vite:error','./dist/index.d.ts','\x20Config\x20sent\x20to\x20SW','public','\x20registerServiceWorker()\x20called','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','\x20sendConfiguration()\x20called','now','__enhanceInitialized','\x20Available\x20exports:','[Enhance\x20Config]\x20Build-time\x20defaults:','./dist/vite/index.d.ts','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','stringify','enhance:configure','\x20No\x20window\x20object\x20-\x20skipping','ready','active','\x20Checking\x20for\x20blocking\x20service\x20worker...','__viteHMRLoaded','/sw-enhance.js','\x20Unregistering\x20SW...','message','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','\x20Vite\x20error\x20detected:','\x20loadOverlay()\x20complete','createOverlay','enable','runtimeURL','postMessage','[Enhance\x20SW-Client]','\x20detectBlocking\x20error:','\x20Updating\x20overlay\x20with\x20state:','8WIGLsq','0.0.0','\x20Calling\x20updateOverlay()...','enhancementUrl','\x20Starting\x20SW\x20registration\x20(async)...','\x20Registering\x20SW\x20at\x20','startsWith','603165LLPHKO','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','location','\x20state.enabled:\x20','/assets/enhance-runtime.js','@enhance-eng/sandbox','\x20enhancementId:\x20','enableViteHmr','681450okTHhb',',\x20page\x20origin:\x20','48EqYJag','\x20SW\x20ready!\x20Active:','sw-enhance','add','https://','trim','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','31794piBmQx','update','\x20Enhancement\x20mode\x20ENABLED','callbackBypass','waiting','\x20Registration\x20returned:','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20','\x20Document\x20readyState:\x20','module','\x20BLOCKING\x20SW\x20detected:\x20','\x20Vite\x20HMR\x20client\x20loaded\x20for\x20','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','/@vite/client','\x20Found\x20registration:','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','onToggle','searchParams','\x20Sending\x20customer\x20config\x20to\x20SW:','\x20registerServiceWorker()\x20complete','has','\x20No\x20current\x20controller','log','\x20Controller\x20state:','\x20Module\x20exports:','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser','enabled','string','\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):','appError','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','https://assets.enhancelabs.ai/overlay.js','__enhanceController','1155006KKZZSW','\x20Starting\x20fresh\x20overlay\x20load...','object','init','security','\x20Calling\x20createOverlay()...','function','\x20Current\x20URL:\x20','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','overlay','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','\x20enhancementUrl:\x20','get','N/A','\x20resolveWorker:','\x20Normalized\x20options:','href','\x20swPath:\x20','\x20with\x20scope\x20\x27/\x27...','hot','\x20Failed\x20to\x20import/create\x20overlay:','info','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','\x20Current\x20controller\x20after\x20ready:','origin','[Enhance\x20Overlay]','false','\x20doLoadOverlay()\x20starting...','\x20No\x20blocking\x20SW\x20found','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','[Enhance\x20Runtime]','\x20Raw\x20options:','state:\x20','__vite_plugin_react_preamble_installed__','vite:beforeUpdate','includes','\x20Setting\x20up\x20remote\x20HMR...','\x20Module\x20missing\x20createOverlay\x20export!','\x20Current\x20controller:','swPath','\x20Unregistering\x20any\x20existing\x20SW...','warn','readyState','default','getRegistration','options','version','http://','enableOverlayHmr','3436qGkeBb','enhance:disable','\x20composeOverlayState\x20-\x20state.enabled:\x20','scriptURL','\x20ownsServiceWorker?\x20scriptURL=','reload','state','\x20detectBlocking\x20-\x20existing\x20registration:','^24.10.1','controller','./dist/index.js'];_0x1c08=function(){return _0x44cd6e;};return _0x1c08();}function getAssetManifest(){return{'version':PACKAGE_VERSION,'serviceWorker':serviceWorkerURL(),'runtime':runtimeURL(),'serviceWorkerDigest':null,'runtimeDigest':null};}function resolveServiceWorkerPath(){return serviceWorkerURL();}function serviceWorkerURL(){return Enhance2['serviceWorkerURL']();}function runtimeURL(){const _0x3e3b4f=_0x2dd179;return Enhance2[_0x3e3b4f(0x1c9)]();}export{Enhance2 as Enhance,getAssetManifest,resolveServiceWorkerPath,runtimeURL,serviceWorkerURL};
1
+ const _0x20861a=_0x253a;(function(_0x36fc9a,_0x510805){const _0x4ac70e=_0x253a,_0xf604f7=_0x36fc9a();while(!![]){try{const _0xcd0922=-parseInt(_0x4ac70e(0x80))/0x1+parseInt(_0x4ac70e(0xcb))/0x2+-parseInt(_0x4ac70e(0x9e))/0x3+-parseInt(_0x4ac70e(0x11b))/0x4+-parseInt(_0x4ac70e(0x81))/0x5*(parseInt(_0x4ac70e(0x10e))/0x6)+-parseInt(_0x4ac70e(0x12e))/0x7+parseInt(_0x4ac70e(0xd8))/0x8*(parseInt(_0x4ac70e(0x85))/0x9);if(_0xcd0922===_0x510805)break;else _0xf604f7['push'](_0xf604f7['shift']());}catch(_0x55a6cb){_0xf604f7['push'](_0xf604f7['shift']());}}}(_0x13c4,0xcba4c));var DEFAULT_OVERLAY_PATH=!![]?_0x20861a(0xc3):_0x20861a(0xc3),DEFAULT_BACKEND_URL=!![]?_0x20861a(0xa9):_0x20861a(0xa9),DEFAULT_OVERLAY_HMR=!![]?![]:![];console[_0x20861a(0xe0)](_0x20861a(0xfb),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x54ecea){const _0x19e82d=_0x20861a,_0x5f10be=_0x54ecea[_0x19e82d(0x141)]??{};return{'callbackBypass':_0x54ecea[_0x19e82d(0xc4)]??[],'overlay':{'enabled':!![],'position':'bottom-right','enableViteHmr':_0x5f10be['enableOverlayHmr']??DEFAULT_OVERLAY_HMR},'logLevel':_0x19e82d(0xdb),'swPath':_0x19e82d(0x108),'overlayPath':_0x5f10be[_0x19e82d(0xe4)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':'/assets/enhance-runtime.js','security':_0x5f10be[_0x19e82d(0x12f)]??_0x19e82d(0x144),'backendUrl':_0x5f10be[_0x19e82d(0xd5)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x4ad7a1=_0x20861a;try{const _0x5a30b6=new URLSearchParams(window[_0x4ad7a1(0x10a)][_0x4ad7a1(0x106)]);return _0x5a30b6[_0x4ad7a1(0x14a)](_0x4ad7a1(0x133))?.['trim']()||'';}catch{return'';}}var LOG_PREFIX=_0x20861a(0xf1),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x7e6b8a){const _0x232863=_0x20861a;console[_0x232863(0xe0)](LOG_PREFIX+'\x20loadOverlay()\x20called'),console['log'](LOG_PREFIX+_0x232863(0xdd)+_0x7e6b8a['overlayPath']),console[_0x232863(0xe0)](LOG_PREFIX+'\x20enableViteHmr:\x20'+_0x7e6b8a[_0x232863(0xa4)]),currentOptions=_0x7e6b8a[_0x232863(0x86)],toggleHandler=_0x7e6b8a[_0x232863(0xfd)];if(overlayController){console['log'](LOG_PREFIX+_0x232863(0xa5)),updateOverlay();return;}if(overlayLoadPromise)return console[_0x232863(0xe0)](LOG_PREFIX+_0x232863(0xa8)),overlayLoadPromise;console[_0x232863(0xe0)](LOG_PREFIX+_0x232863(0x99)),overlayLoadPromise=doLoadOverlay(_0x7e6b8a);try{await overlayLoadPromise,console['log'](LOG_PREFIX+_0x232863(0xec));}catch(_0x56a87a){console[_0x232863(0xb1)](LOG_PREFIX+'\x20loadOverlay()\x20failed:',_0x56a87a);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0xa97800){const _0x11f0e2=_0x20861a;console[_0x11f0e2(0xe0)](LOG_PREFIX+_0x11f0e2(0x115));if(typeof window===_0x11f0e2(0x78)){console[_0x11f0e2(0xe0)](LOG_PREFIX+_0x11f0e2(0x93));return;}if(window[_0x11f0e2(0x10f)]){console[_0x11f0e2(0xe0)](LOG_PREFIX+_0x11f0e2(0x138)),overlayController=window[_0x11f0e2(0x10f)];return;}console[_0x11f0e2(0xe0)](LOG_PREFIX+_0x11f0e2(0x7c));try{_0xa97800[_0x11f0e2(0xa4)]&&(console['log'](LOG_PREFIX+_0x11f0e2(0x137)),await setupRemoteHMR(_0xa97800['overlayPath']));console['log'](LOG_PREFIX+_0x11f0e2(0x10d)+_0xa97800[_0x11f0e2(0xe4)]);const _0x1f0d93=Date[_0x11f0e2(0x135)](),_0x5c931c=await import(_0xa97800[_0x11f0e2(0xe4)]);console[_0x11f0e2(0xe0)](LOG_PREFIX+_0x11f0e2(0xa1)+(Date[_0x11f0e2(0x135)]()-_0x1f0d93)+'ms'),console[_0x11f0e2(0xe0)](LOG_PREFIX+_0x11f0e2(0xac),Object['keys'](_0x5c931c));if(typeof _0x5c931c?.['createOverlay']!==_0x11f0e2(0xbc)){console[_0x11f0e2(0xb1)](LOG_PREFIX+_0x11f0e2(0xad)),console[_0x11f0e2(0xb1)](LOG_PREFIX+_0x11f0e2(0xcc),Object['keys'](_0x5c931c));return;}console[_0x11f0e2(0xe0)](LOG_PREFIX+_0x11f0e2(0x131));const _0x2b2ea6=_0x5c931c[_0x11f0e2(0xc1)]();console['log'](LOG_PREFIX+_0x11f0e2(0xee),_0x2b2ea6),overlayController=_0x2b2ea6,window[_0x11f0e2(0x10f)]=_0x2b2ea6,_0x2b2ea6[_0x11f0e2(0xfd)](_0xa97800[_0x11f0e2(0xfd)]),console[_0x11f0e2(0xe0)](LOG_PREFIX+'\x20Overlay\x20controller\x20initialized\x20and\x20cached'),console['log'](LOG_PREFIX+_0x11f0e2(0xd4)),updateOverlay();}catch(_0x56834d){console[_0x11f0e2(0xb1)](LOG_PREFIX+'\x20Failed\x20to\x20import/create\x20overlay:',_0x56834d);}}function updateOverlay(){const _0x23ff6f=_0x20861a;console[_0x23ff6f(0xe0)](LOG_PREFIX+'\x20updateOverlay()\x20called'),console[_0x23ff6f(0xe0)](LOG_PREFIX+'\x20overlayController\x20exists:\x20'+!!overlayController),console[_0x23ff6f(0xe0)](LOG_PREFIX+_0x23ff6f(0x79)+!!currentOptions);if(!overlayController||!currentOptions){console[_0x23ff6f(0xe0)](LOG_PREFIX+_0x23ff6f(0xa6));return;}const _0x545275=composeOverlayState(currentOptions);console[_0x23ff6f(0xe0)](LOG_PREFIX+_0x23ff6f(0x8e),JSON[_0x23ff6f(0x118)](_0x545275,null,0x2)),overlayController[_0x23ff6f(0x104)](_0x545275),console[_0x23ff6f(0xe0)](LOG_PREFIX+_0x23ff6f(0x82));}function composeOverlayState(_0x2d6a25){const _0x49f640=_0x20861a,_0x14d643=getEnhancementUrl();return console['log'](LOG_PREFIX+_0x49f640(0xf7)+_0x14d643),console[_0x49f640(0xe0)](LOG_PREFIX+_0x49f640(0xf4)+state[_0x49f640(0xdf)]),console[_0x49f640(0xe0)](LOG_PREFIX+_0x49f640(0x96)+state[_0x49f640(0xaf)]),{'enhancementUrl':_0x14d643,'enabled':state[_0x49f640(0xdf)],'controlled':state[_0x49f640(0xaf)],'overlayPosition':_0x2d6a25[_0x49f640(0xea)][_0x49f640(0xf0)],'securityMode':_0x2d6a25[_0x49f640(0x12f)],'backendBaseUrl':_0x2d6a25[_0x49f640(0xd5)],'appError':state[_0x49f640(0xde)]};}async function setupRemoteHMR(_0x10235b){const _0xdd6662=_0x20861a;console[_0xdd6662(0xe0)](LOG_PREFIX+'\x20setupRemoteHMR()\x20for\x20'+_0x10235b);if(typeof window==='undefined')return;try{const _0x369de7=new URL(_0x10235b,window[_0xdd6662(0x10a)][_0xdd6662(0x83)]),_0x2bd4fa=_0x369de7[_0xdd6662(0x83)];console[_0xdd6662(0xe0)](LOG_PREFIX+'\x20Overlay\x20origin:\x20'+_0x2bd4fa+_0xdd6662(0xb7)+window[_0xdd6662(0x10a)][_0xdd6662(0x83)]);if(_0x2bd4fa===window[_0xdd6662(0x10a)][_0xdd6662(0x83)]){console[_0xdd6662(0xe0)](LOG_PREFIX+_0xdd6662(0x121));return;}console['log'](LOG_PREFIX+_0xdd6662(0x94)),await ensureReactRefreshPreamble(_0x2bd4fa),await ensureViteClient(_0x2bd4fa),console[_0xdd6662(0xe0)](LOG_PREFIX+'\x20HMR\x20setup\x20complete');}catch(_0x2afdce){console[_0xdd6662(0x73)](LOG_PREFIX+'\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):',_0x2afdce);}}async function ensureReactRefreshPreamble(_0x25fa82){const _0x558eae=_0x20861a;window[_0x558eae(0xb0)]??(window[_0x558eae(0xb0)]=new Set());if(window[_0x558eae(0xb0)][_0x558eae(0xe5)](_0x25fa82)){console[_0x558eae(0xe0)](LOG_PREFIX+'\x20React\x20Refresh\x20already\x20installed\x20for\x20'+_0x25fa82);return;}console[_0x558eae(0xe0)](LOG_PREFIX+_0x558eae(0xb6)+_0x25fa82+'...');const _0x3527ae=await import(_0x25fa82+_0x558eae(0x75)),_0x17c2ed=_0x3527ae&&typeof _0x3527ae===_0x558eae(0x91)&&_0x558eae(0x127)in _0x3527ae?_0x3527ae[_0x558eae(0x127)]:_0x3527ae;if(!isRefreshRuntime(_0x17c2ed)){console[_0x558eae(0x73)](LOG_PREFIX+_0x558eae(0x13e));return;}_0x17c2ed['injectIntoGlobalHook'](window),window[_0x558eae(0x139)]=()=>{},window['$RefreshSig$']=()=>_0x26ae42=>_0x26ae42,window[_0x558eae(0x130)]=!![],window[_0x558eae(0xb0)][_0x558eae(0x142)](_0x25fa82),console[_0x558eae(0xe0)](LOG_PREFIX+_0x558eae(0x11c)+_0x25fa82);}async function ensureViteClient(_0xac44f9){const _0x2a575b=_0x20861a;window[_0x2a575b(0x105)]??(window['__viteHMRLoaded']=new Set());if(window[_0x2a575b(0x105)]['has'](_0xac44f9)){console['log'](LOG_PREFIX+_0x2a575b(0xb8)+_0xac44f9);return;}console['log'](LOG_PREFIX+'\x20Loading\x20Vite\x20HMR\x20client\x20from\x20'+_0xac44f9+'...'),await import(_0xac44f9+_0x2a575b(0x95)),window[_0x2a575b(0x105)][_0x2a575b(0x142)](_0xac44f9),console['log'](LOG_PREFIX+_0x2a575b(0xd7)+_0xac44f9);}function isRefreshRuntime(_0x30ee79){const _0x32bdf4=_0x20861a;return typeof _0x30ee79==='object'&&_0x30ee79!==null&&_0x32bdf4(0xeb)in _0x30ee79&&typeof _0x30ee79[_0x32bdf4(0xeb)]==='function';}var WORKER_MESSAGE_CONFIG='enhance:configure',WORKER_MESSAGE_DISABLE=_0x20861a(0xc9),LOG_PREFIX2='[Enhance\x20SW-Client]',registration=null,currentOptions2=null;async function registerServiceWorker(_0x15b6eb){const _0x4e00b1=_0x20861a;console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0xe1)),console[_0x4e00b1(0xe0)](LOG_PREFIX2+'\x20swPath:\x20'+_0x15b6eb['swPath']);if(!(_0x4e00b1(0x13d)in navigator)){console[_0x4e00b1(0x73)](LOG_PREFIX2+_0x4e00b1(0xe7));return;}console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0x129));const _0x13fc65=navigator['serviceWorker'][_0x4e00b1(0x126)];console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0xe9),_0x13fc65?.[_0x4e00b1(0x88)]??'none'),console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0x13a),_0x13fc65?.['state']??'N/A');const _0x3ab23d=!!_0x13fc65;currentOptions2=_0x15b6eb,console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0x120));const _0x101871=await detectBlockingServiceWorker(_0x15b6eb[_0x4e00b1(0x11f)]);if(_0x101871){console[_0x4e00b1(0xb1)](LOG_PREFIX2+_0x4e00b1(0xb4)+_0x101871),console['error'](LOG_PREFIX2+_0x4e00b1(0x74));return;}console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0x84));try{console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0xc2)+_0x15b6eb[_0x4e00b1(0x11f)]+_0x4e00b1(0xe2)),registration=await navigator[_0x4e00b1(0x13d)]['register'](_0x15b6eb[_0x4e00b1(0x11f)],{'scope':'/'}),console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0xe8),{'scope':registration['scope'],'active':registration['active']?.[_0x4e00b1(0x88)],'waiting':registration['waiting']?.[_0x4e00b1(0x88)],'installing':registration[_0x4e00b1(0x9b)]?.[_0x4e00b1(0x88)]}),console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0xba));const _0x327ca4=await navigator['serviceWorker'][_0x4e00b1(0xd3)];console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0xd9),_0x327ca4[_0x4e00b1(0xbe)]?.[_0x4e00b1(0x88)]);const _0x58bcbd=ownsCurrentController(_0x15b6eb[_0x4e00b1(0x11f)]);state[_0x4e00b1(0xaf)]=_0x58bcbd,console[_0x4e00b1(0xe0)](LOG_PREFIX2+'\x20Page\x20controlled\x20by\x20our\x20SW:\x20'+_0x58bcbd),console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0x119),navigator[_0x4e00b1(0x13d)][_0x4e00b1(0x126)]?.[_0x4e00b1(0x88)]??'none');if(!_0x3ab23d&&!navigator['serviceWorker'][_0x4e00b1(0x126)]){console[_0x4e00b1(0xe0)](LOG_PREFIX2+'\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...'),window['location'][_0x4e00b1(0x109)]();return;}console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0x143)),await sendConfiguration();if(state[_0x4e00b1(0xdf)]){const _0x209c7e=document[_0x4e00b1(0xc7)](_0x4e00b1(0x101))!==null;console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0xf9)+_0x209c7e);if(!_0x209c7e){console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0x98)),window[_0x4e00b1(0x10a)]['reload']();return;}}console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0x11e)),updateOverlay(),console[_0x4e00b1(0xe0)](LOG_PREFIX2+_0x4e00b1(0xf2));}catch(_0xd3e7db){console[_0x4e00b1(0xb1)](LOG_PREFIX2+_0x4e00b1(0x90),_0xd3e7db);}}async function sendConfiguration(){const _0xfb7487=_0x20861a;console['log'](LOG_PREFIX2+'\x20sendConfiguration()\x20called'),console['log'](LOG_PREFIX2+'\x20state.enabled:\x20'+state[_0xfb7487(0xdf)]+_0xfb7487(0x110)+!!currentOptions2);if(!state[_0xfb7487(0xdf)]||!currentOptions2){console[_0xfb7487(0xe0)](LOG_PREFIX2+_0xfb7487(0xb3));return;}const _0x5a948d=await resolveWorker();if(!_0x5a948d){console[_0xfb7487(0x73)](LOG_PREFIX2+_0xfb7487(0x112));return;}const _0x2ed586={'callbackBypass':currentOptions2[_0xfb7487(0xc4)],'securityMode':currentOptions2[_0xfb7487(0x12f)]};console[_0xfb7487(0xe0)](LOG_PREFIX2+_0xfb7487(0x8d),JSON[_0xfb7487(0x118)](_0x2ed586,null,0x2)),_0x5a948d[_0xfb7487(0x8f)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x2ed586}),console['log'](LOG_PREFIX2+_0xfb7487(0x132));}function _0x13c4(){const _0xea017c=['active','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister','N/A','createOverlay','\x20Registering\x20SW\x20at\x20','https://assets.enhancelabs.ai/overlay.js','callbackBypass','^24.10.1','0.0.0','querySelector','enhance','enhance:disable','title','949660wGFNLO','\x20Available\x20exports:','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','includes','\x20detectBlocking\x20error:','replaceState','version','ENHANCE_OVERLAY_PATH=https://assets-dev.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','ready','\x20Calling\x20updateOverlay()...','backendUrl','serviceWorkerURL','\x20Vite\x20HMR\x20client\x20loaded\x20for\x20','8FrsWcG','\x20SW\x20ready!\x20Active:','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','info','\x20detectBlocking\x20-\x20existing\x20registration:','\x20overlayPath:\x20','appError','enabled','log','\x20registerServiceWorker()\x20called','\x20with\x20scope\x20\x27/\x27...','state:\x20','overlayPath','has','^11.1.0','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser','\x20Registration\x20returned:','\x20Current\x20controller:','overlay','injectIntoGlobalHook','\x20loadOverlay()\x20complete','disable','\x20Controller\x20created:','__enhanceController','position','[Enhance\x20Overlay]','\x20registerServiceWorker()\x20complete','\x20First\x20initialization','\x20composeOverlayState\x20-\x20state.enabled:\x20','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup',',\x20expected=','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','\x20Found\x20registration:','\x20Enhancement\x20detection:\x20wasEnhanced=','unregister','[Enhance\x20Config]\x20Build-time\x20defaults:','\x20Starting\x20SW\x20registration\x20(async)...','onToggle','__enhanceOptions','runtimeURL','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','[data-enhance-runtime-bootstrap]','\x20init()\x20complete\x20-\x20enhancement\x20mode','off','update','__viteHMRLoaded','search','./dev/index.d.ts','/sw-enhance.js','reload','location','\x20Unregistering\x20SW...','\x20init()\x20complete\x20-\x20normal\x20mode','\x20Importing\x20overlay\x20module\x20from:\x20','6smQtRA','__enhanceOverlay',',\x20currentOptions:\x20','\x20Current\x20URL:\x20','\x20No\x20service\x20worker\x20active\x20to\x20configure','MIT','hasEnhancement','\x20doLoadOverlay()\x20starting...','[Enhance\x20Runtime]','\x20Vite\x20error\x20detected:','stringify','\x20Current\x20controller\x20after\x20ready:','\x20Starting\x20overlay\x20load\x20(async)...','5140224rMOajQ','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','./dev/vite/index.js','\x20Updating\x20overlay...','swPath','\x20Checking\x20for\x20blocking\x20service\x20worker...','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','toString','enhancementId','\x20No\x20current\x20controller','\x20init()\x20called\x20at\x20','controller','default','module','\x20Service\x20workers\x20supported','history','public','https://','\x20Normalized\x20options:','10908331kiTYwb','security','__vite_plugin_react_preamble_installed__','\x20Calling\x20createOverlay()...','\x20Config\x20sent\x20to\x20SW','enhancementUrl','toLowerCase','now','err','\x20Setting\x20up\x20remote\x20HMR...','\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit','$RefreshReg$','\x20Controller\x20state:','waiting',',\x20owns=','serviceWorker','\x20Invalid\x20React\x20Refresh\x20runtime','^7.2.4','vite:error','__development','add','\x20Sending\x20customer\x20configuration...','permissive','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','enable','\x20resolveWorker:','searchParams','startsWith','get','@enhance-eng/sandbox','warn','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','/@react-refresh','^8.5.1','replace','undefined','\x20currentOptions\x20exists:\x20','\x20Raw\x20options:','\x20SW\x20unregistered\x20successfully','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','0.3.20','none','tsc\x20--noEmit','1666915JHSAGQ','5979595EVCViX','\x20Overlay\x20update\x20complete','origin','\x20No\x20blocking\x20SW\x20found','62949159WqSLlh','options','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','scriptURL','vite:beforeUpdate','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','\x20unregisterServiceWorker()\x20called','__enhanceInitialized','\x20Sending\x20customer\x20config\x20to\x20SW:','\x20Updating\x20overlay\x20with\x20state:','postMessage','\x20Failed\x20to\x20register\x20service\x20worker:','object','./dev/cli.js','\x20No\x20window\x20object\x20-\x20skipping','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','/@vite/client','\x20composeOverlayState\x20-\x20state.controlled:\x20','explicitDisable','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','\x20Starting\x20fresh\x20overlay\x20load...','delete','installing','message','some','2786502ovpygM','scope','getRegistration','\x20Module\x20imported\x20in\x20','\x20Document\x20readyState:\x20','readyState','enableViteHmr','\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','string','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','https://api.enhancelabs.ai','enhancement','\x20enhancementId:\x20','\x20Module\x20exports:','\x20Module\x20missing\x20createOverlay\x20export!','^3.22.4','controlled','__enhanceReactRefreshInstalledOrigins','error','href','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','\x20BLOCKING\x20SW\x20detected:\x20','\x20URL\x20params\x20parsed:','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20',',\x20page\x20origin:\x20','\x20Vite\x20client\x20already\x20loaded\x20for\x20','/assets/enhance-runtime.js','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','./dev/index.js','function','^4.1.1'];_0x13c4=function(){return _0xea017c;};return _0x13c4();}async function unregisterServiceWorker(_0x3cd7b0){const _0x49f85b=_0x20861a;console[_0x49f85b(0xe0)](LOG_PREFIX2+_0x49f85b(0x8b));if(!(_0x49f85b(0x13d)in navigator)){console[_0x49f85b(0xe0)](LOG_PREFIX2+'\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister');return;}try{const _0x1b34e2=registration??await navigator[_0x49f85b(0x13d)][_0x49f85b(0xa0)]('/');if(!_0x1b34e2){console[_0x49f85b(0xe0)](LOG_PREFIX2+_0x49f85b(0xbf));return;}console[_0x49f85b(0xe0)](LOG_PREFIX2+_0x49f85b(0xf8),{'scope':_0x1b34e2[_0x49f85b(0x9f)],'active':_0x1b34e2[_0x49f85b(0xbe)]?.[_0x49f85b(0x88)],'waiting':_0x1b34e2[_0x49f85b(0x13b)]?.[_0x49f85b(0x88)],'installing':_0x1b34e2[_0x49f85b(0x9b)]?.[_0x49f85b(0x88)]});const _0x583b6c=[_0x1b34e2[_0x49f85b(0xbe)]?.[_0x49f85b(0x88)],_0x1b34e2['waiting']?.[_0x49f85b(0x88)],_0x1b34e2['installing']?.[_0x49f85b(0x88)]],_0x5620bf=_0x583b6c[_0x49f85b(0x9d)](_0x381bc7=>_0x381bc7&&ownsServiceWorker(_0x381bc7,_0x3cd7b0));if(!_0x5620bf){console[_0x49f85b(0xe0)](LOG_PREFIX2+_0x49f85b(0x87));return;}_0x1b34e2[_0x49f85b(0xbe)]&&(console[_0x49f85b(0xe0)](LOG_PREFIX2+'\x20Sending\x20DISABLE\x20message\x20to\x20SW...'),_0x1b34e2[_0x49f85b(0xbe)][_0x49f85b(0x8f)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x49f85b(0xe0)](LOG_PREFIX2+_0x49f85b(0x10b)),await _0x1b34e2[_0x49f85b(0xfa)](),registration=null,currentOptions2=null,console['log'](LOG_PREFIX2+_0x49f85b(0x7b));}catch(_0x43f9d5){console[_0x49f85b(0xb1)](LOG_PREFIX2+'\x20Failed\x20to\x20unregister\x20service\x20worker:',_0x43f9d5);}}function ownsServiceWorker(_0xb411f1,_0x1e1a40){const _0xbe3cc6=_0x20861a,_0x1b2059=typeof window!==_0xbe3cc6(0x78)?window[_0xbe3cc6(0x10a)]['origin']:'',_0x8ca083=new URL(_0x1e1a40,_0x1b2059||void 0x0)['href'],_0x5f2ca0=_0xb411f1===_0x8ca083||_0xb411f1[_0xbe3cc6(0xce)]('sw-enhance');return console['log'](LOG_PREFIX2+'\x20ownsServiceWorker?\x20scriptURL='+_0xb411f1+_0xbe3cc6(0xf6)+_0x8ca083+_0xbe3cc6(0x13c)+_0x5f2ca0),_0x5f2ca0;}function ownsCurrentController(_0x175cf6){const _0x5e2358=_0x20861a;if(typeof navigator===_0x5e2358(0x78))return![];const _0x47b1fc=navigator['serviceWorker']?.['controller'];if(!_0x47b1fc)return console[_0x5e2358(0xe0)](LOG_PREFIX2+_0x5e2358(0x124)),![];return ownsServiceWorker(_0x47b1fc[_0x5e2358(0x88)],_0x175cf6);}async function detectBlockingServiceWorker(_0x34f168){const _0x454e29=_0x20861a;if(!navigator['serviceWorker'])return null;try{const _0x314aae=await navigator['serviceWorker'][_0x454e29(0xa0)]('/');console['log'](LOG_PREFIX2+_0x454e29(0xdc),_0x314aae?.[_0x454e29(0xbe)]?.[_0x454e29(0x88)]??_0x454e29(0x7e));const _0x120e76=_0x314aae?.['active']?.[_0x454e29(0x88)];if(!_0x120e76)return null;if(ownsServiceWorker(_0x120e76,_0x34f168))return null;return _0x120e76;}catch(_0x977b10){return console[_0x454e29(0xb1)](LOG_PREFIX2+_0x454e29(0xcf),_0x977b10),null;}}async function resolveWorker(){const _0x75a298=_0x20861a,_0x547644=registration??await navigator[_0x75a298(0x13d)]?.['getRegistration']('/'),_0x5457bb=_0x547644?.[_0x75a298(0xbe)]??_0x547644?.[_0x75a298(0x13b)]??_0x547644?.['installing']??null;return console[_0x75a298(0xe0)](LOG_PREFIX2+_0x75a298(0x147),_0x5457bb?.[_0x75a298(0x88)]??_0x75a298(0x7e),_0x75a298(0xe3)+(_0x5457bb?.['state']??_0x75a298(0xc0))),_0x5457bb;}var LOG_PREFIX3=_0x20861a(0x116);function isInitialized(){const _0x2ba326=_0x20861a;return typeof window!==_0x2ba326(0x78)&&window[_0x2ba326(0x8c)]===!![];}function setInitialized(_0x56a2b2){const _0x6ec9eb=_0x20861a;typeof window!==_0x6ec9eb(0x78)&&(window[_0x6ec9eb(0x8c)]=_0x56a2b2);}function getOptions(){const _0x24bcdf=_0x20861a;return typeof window!==_0x24bcdf(0x78)?window[_0x24bcdf(0xfe)]??null:null;}function setOptions(_0x14646e){const _0x2be1cc=_0x20861a;typeof window!==_0x2be1cc(0x78)&&(window[_0x2be1cc(0xfe)]=_0x14646e);}var Enhance={'init'(_0x188913={}){const _0x47f09a=_0x20861a,_0x14fb39=Date['now']();console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0x125)+_0x14fb39),console['log'](LOG_PREFIX3+_0x47f09a(0x111)+window[_0x47f09a(0x10a)][_0x47f09a(0xb2)]),console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0xa2)+document[_0x47f09a(0xa3)]),console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0x7a),JSON[_0x47f09a(0x118)](_0x188913,null,0x2));if(isInitialized())return console[_0x47f09a(0x73)](LOG_PREFIX3+'\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller'),window['__enhanceController']??createController();setInitialized(!![]),console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0xf3));const _0x4aa47d=normalizeOptions(_0x188913);setOptions(_0x4aa47d),console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0x12d),JSON[_0x47f09a(0x118)](_0x4aa47d,null,0x2));const _0x2a560a=parseUrlParams();console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0xb5),JSON[_0x47f09a(0x118)](_0x2a560a,null,0x2));if(_0x2a560a[_0x47f09a(0x97)])return cleanUrlParam('enhance'),console['log'](LOG_PREFIX3+'\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting'),createController();if(_0x2a560a[_0x47f09a(0x114)])return console[_0x47f09a(0xe0)](LOG_PREFIX3+'\x20Enhancement\x20mode\x20ENABLED'),console[_0x47f09a(0xe0)](LOG_PREFIX3+'\x20enhancementUrl:\x20'+_0x2a560a[_0x47f09a(0x133)]),console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0xab)+_0x2a560a[_0x47f09a(0x123)]),state['enabled']=!![],console['log'](LOG_PREFIX3+_0x47f09a(0x11a)),void loadOverlay({'overlayPath':_0x4aa47d['overlayPath'],'enableViteHmr':_0x4aa47d[_0x47f09a(0xea)]['enableViteHmr'],'options':_0x4aa47d,'onToggle':handleToggle}),console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0xfc)),void registerServiceWorker(_0x4aa47d),console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0x102)),createController();return console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0xcd)),console[_0x47f09a(0xe0)](LOG_PREFIX3+'\x20Unregistering\x20any\x20existing\x20SW...'),void unregisterServiceWorker(_0x4aa47d['swPath']),console[_0x47f09a(0xe0)](LOG_PREFIX3+_0x47f09a(0x10c)),import.meta.hot&&(console[_0x47f09a(0xe0)](LOG_PREFIX3+'\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners'),import.meta.hot['on'](_0x47f09a(0x140),_0x15fd56=>{const _0x3249e5=_0x47f09a;console[_0x3249e5(0xe0)](LOG_PREFIX3+_0x3249e5(0x117),_0x15fd56),state['appError']={'message':_0x15fd56[_0x3249e5(0x136)][_0x3249e5(0x9c)]},updateOverlay();}),import.meta.hot['on'](_0x47f09a(0x89),()=>{const _0x2f3080=_0x47f09a;state[_0x2f3080(0xde)]&&(console[_0x2f3080(0xe0)](LOG_PREFIX3+_0x2f3080(0x8a)),state['appError']=null,updateOverlay());})),createController();}};function createController(){const _0x2e6cda=_0x20861a,_0xf2ec35={'enable'(){const _0x39eb74=_0x253a,_0x1d5a38=getOptions();if(!_0x1d5a38)return;state[_0x39eb74(0xdf)]=!![],void loadOverlay({'overlayPath':_0x1d5a38[_0x39eb74(0xe4)],'enableViteHmr':_0x1d5a38[_0x39eb74(0xea)][_0x39eb74(0xa4)],'options':_0x1d5a38,'onToggle':handleToggle}),void registerServiceWorker(_0x1d5a38),void sendConfiguration(),updateOverlay();},'disable'(){const _0x3c6602=getOptions();if(!_0x3c6602)return;state['enabled']=![],state['controlled']=![],updateOverlay(),void unregisterServiceWorker(_0x3c6602['swPath']);},'status'(){const _0x4ad7d1=_0x253a;return{'enabled':state[_0x4ad7d1(0xdf)],'controlled':state[_0x4ad7d1(0xaf)]};}};return typeof window!==_0x2e6cda(0x78)&&(window[_0x2e6cda(0xef)]=_0xf2ec35),_0xf2ec35;}function handleToggle(){const _0x3496b6=_0x20861a,_0x4555fc=createController();state['enabled']?_0x4555fc[_0x3496b6(0xed)]():_0x4555fc[_0x3496b6(0x146)]();}function parseUrlParams(){const _0x465a03=_0x20861a,_0x2fd4e3=new URL(window[_0x465a03(0x10a)]['href']),_0x4ca939=_0x2fd4e3[_0x465a03(0x148)][_0x465a03(0x14a)](_0x465a03(0xc8))?.[_0x465a03(0x134)](),_0x2f0f97=_0x2fd4e3[_0x465a03(0x148)][_0x465a03(0x14a)]('enhancementUrl'),_0x4bdab2=_0x2fd4e3[_0x465a03(0x148)]['get'](_0x465a03(0xaa));return{'hasEnhancement':Boolean(_0x2f0f97||_0x4bdab2),'explicitDisable':_0x4ca939==='0'||_0x4ca939==='false'||_0x4ca939===_0x465a03(0x103),'enhancementUrl':_0x2f0f97,'enhancementId':_0x4bdab2};}function cleanUrlParam(_0x207c53){const _0x11c84e=_0x20861a,_0x54c677=new URL(window[_0x11c84e(0x10a)][_0x11c84e(0xb2)]);_0x54c677[_0x11c84e(0x148)][_0x11c84e(0xe5)](_0x207c53)&&(_0x54c677[_0x11c84e(0x148)][_0x11c84e(0x9a)](_0x207c53),window[_0x11c84e(0x12a)][_0x11c84e(0xd0)](null,document[_0x11c84e(0xca)],_0x54c677[_0x11c84e(0x122)]()));}var package_default={'name':_0x20861a(0x72),'version':_0x20861a(0x7d),'type':_0x20861a(0x128),'description':_0x20861a(0xda),'license':_0x20861a(0x113),'main':_0x20861a(0xbb),'module':_0x20861a(0xbb),'types':_0x20861a(0x107),'exports':{'.':{'types':_0x20861a(0x107),'import':_0x20861a(0xbb)},'./vite':{'types':'./dev/vite/index.d.ts','import':_0x20861a(0x11d)}},'files':['dev/'],'bin':{'enhance-sandbox':_0x20861a(0x92)},'scripts':{'typecheck':_0x20861a(0x7f),'dev':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','dev:build':_0x20861a(0xf5),'dev:staging':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','dev:staging:build':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','build':_0x20861a(0x145),'build:release':_0x20861a(0x100),'build:release:dev':_0x20861a(0xd2),'version':'bun\x20version\x20patch\x20--no-git-tag-version'},'dependencies':{'commander':_0x20861a(0xe6),'zod':_0x20861a(0xae)},'devDependencies':{'@types/node':_0x20861a(0xc5),'javascript-obfuscator':_0x20861a(0xbd),'tsup':_0x20861a(0x76),'vite':_0x20861a(0x13f)},'publishConfig':{'access':_0x20861a(0x12b)}},DEFAULT_SERVICE_WORKER_PATH=_0x20861a(0x108),DEFAULT_RUNTIME_PATH=_0x20861a(0xb9),PACKAGE_VERSION=typeof package_default['version']===_0x20861a(0xa7)?package_default[_0x20861a(0xd1)]:_0x20861a(0xc6);function normalizeAssetPath(_0x22c5c8){const _0xfc5d2c=_0x20861a;if(!_0x22c5c8)return _0x22c5c8;if(_0x22c5c8[_0xfc5d2c(0x149)]('http://')||_0x22c5c8['startsWith'](_0xfc5d2c(0x12c)))return _0x22c5c8;const _0x2d6fa5=_0x22c5c8[_0xfc5d2c(0x77)](/^\.\//,'');return _0x2d6fa5[_0xfc5d2c(0x149)]('/')?_0x2d6fa5:'/'+_0x2d6fa5;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x117862){return Enhance['init'](_0x117862);},'serviceWorkerURL'(){return defaultSwPath;},'runtimeURL'(){return defaultRuntimePath;},'assetManifest'(){return getAssetManifest();}};function getAssetManifest(){return{'version':PACKAGE_VERSION,'serviceWorker':serviceWorkerURL(),'runtime':runtimeURL(),'serviceWorkerDigest':null,'runtimeDigest':null};}function resolveServiceWorkerPath(){return serviceWorkerURL();}function serviceWorkerURL(){const _0x426a67=_0x20861a;return Enhance2[_0x426a67(0xd6)]();}function _0x253a(_0x59ffef,_0x33b6d9){_0x59ffef=_0x59ffef-0x72;const _0x13c47d=_0x13c4();let _0x253a4b=_0x13c47d[_0x59ffef];return _0x253a4b;}function runtimeURL(){const _0x170058=_0x20861a;return Enhance2[_0x170058(0xff)]();}export{Enhance2 as Enhance,getAssetManifest,resolveServiceWorkerPath,runtimeURL,serviceWorkerURL};
package/dist/cli.js CHANGED
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- const _0x10da16=_0x858b;(function(_0xb8a3b8,_0x14f4c9){const _0x233ddd=_0x858b,_0x3063b1=_0xb8a3b8();while(!![]){try{const _0x1e7f5e=-parseInt(_0x233ddd(0x1a2))/0x1*(-parseInt(_0x233ddd(0x1a6))/0x2)+parseInt(_0x233ddd(0x1c5))/0x3+-parseInt(_0x233ddd(0x1b0))/0x4*(parseInt(_0x233ddd(0x196))/0x5)+parseInt(_0x233ddd(0x1db))/0x6+parseInt(_0x233ddd(0x1e5))/0x7+parseInt(_0x233ddd(0x1eb))/0x8+parseInt(_0x233ddd(0x106))/0x9*(-parseInt(_0x233ddd(0x1ee))/0xa);if(_0x1e7f5e===_0x14f4c9)break;else _0x3063b1['push'](_0x3063b1['shift']());}catch(_0x189801){_0x3063b1['push'](_0x3063b1['shift']());}}}(_0xe4ca,0xbad0f));import{Command}from'commander';import{resolve,relative}from'path';var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!==_0x10da16(0x17c)?__ENHANCE_DEFAULT_OVERLAY_PATH__:_0x10da16(0x160),DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!==_0x10da16(0x17c)?__ENHANCE_DEFAULT_BACKEND_URL__:_0x10da16(0x198),DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!==_0x10da16(0x17c)?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console[_0x10da16(0x15f)](_0x10da16(0x1f6),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x44fa44){const _0x2c1ef3=_0x10da16,_0x52003d=_0x44fa44[_0x2c1ef3(0x101)]??{};return{'callbackBypass':_0x44fa44[_0x2c1ef3(0x11e)],'overlay':{'enabled':!![],'position':_0x2c1ef3(0x1a3),'enableViteHmr':_0x52003d[_0x2c1ef3(0x1e0)]??DEFAULT_OVERLAY_HMR},'logLevel':'info','swPath':_0x2c1ef3(0x185),'overlayPath':_0x52003d[_0x2c1ef3(0x16e)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x2c1ef3(0x100),'security':_0x52003d[_0x2c1ef3(0x133)]??_0x2c1ef3(0x1fc),'backendUrl':_0x52003d[_0x2c1ef3(0x1d4)]??DEFAULT_BACKEND_URL};}function _0xe4ca(){const _0x13385a=['enabled','\x20registerServiceWorker()\x20called','Copied\x20','none','\x20detectBlocking\x20error:','Enhance\x20sandbox\x20utility\x20CLI','\x20enhancementUrl:\x20','\x20Calling\x20createOverlay()...','sourcePath','\x20No\x20window\x20object\x20-\x20skipping','\x20Registering\x20SW\x20at\x20','\x20Module\x20exports:','vite:error','sw-enhance.js','searchParams','runtimeURL','--public-dir\x20<path>','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','\x20No\x20service\x20worker\x20active\x20to\x20configure','\x20Available\x20exports:','createOverlay','log','https://assets.enhancelabs.ai/overlay.js','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister','search','swFilename','^3.22.4','./dist/index.d.ts','relativeDestination','string','\x20Module\x20imported\x20in\x20','__enhanceOptions','vite:beforeUpdate','installing','has','overlayPath','update','__enhanceReactRefreshInstalledOrigins','skipped','sha256','enhancementId','cwd','\x20Raw\x20options:','MIT','status','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser','\x20First\x20initialization','\x20Updating\x20overlay...','origin','undefined','\x20Found\x20registration:','__enhanceInitialized','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','\x20enhancementId:\x20','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','\x20Setting\x20up\x20remote\x20HMR...','description','\x20Document\x20readyState:\x20','/sw-enhance.js','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','\x20overlayController\x20exists:\x20','swPath','\x20ownsServiceWorker?\x20scriptURL=','[Enhance\x20Runtime]','trim','querySelector','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','code','stdout','\x20Failed\x20to\x20register\x20service\x20worker:','\x20swPath:\x20','./dist/vite/index.d.ts','\x20sendConfiguration()\x20called','some','\x20Calling\x20updateOverlay()...','10CWwdKu','object','https://api.enhancelabs.ai','copyFile','[Enhance\x20Overlay]','enhancementUrl','dist','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','push','/@react-refresh',',\x20owns=','1CneAZe','bottom-right','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','\x20Vite\x20client\x20already\x20loaded\x20for\x20','2117606LCXODo','postMessage','injectIntoGlobalHook','N/A','keys','\x20React\x20Refresh\x20already\x20installed\x20for\x20','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','\x20Updating\x20overlay\x20with\x20state:','./dist/index.cjs','0.3.18','2918236wIRkWl','option','init','\x20Enhancement\x20detection:\x20wasEnhanced=','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','startsWith','\x20Checking\x20for\x20blocking\x20service\x20worker...','copied','controller','\x20doLoadOverlay()\x20starting...','\x20Current\x20URL:\x20','\x20state.enabled:\x20','\x20Vite\x20HMR\x20client\x20loaded\x20for\x20','reload','\x20detectBlocking\x20-\x20existing\x20registration:','error','\x20with\x20scope\x20\x27/\x27...','\x20HMR\x20setup\x20complete','toLowerCase','serviceWorkerURL','2551125LyxpxW','enhance','enhance:configure','\x20loadOverlay()\x20failed:','__enhanceOverlay','__viteHMRLoaded','controlled','onToggle','serviceWorker','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','^11.1.0','url','appError','\x20Starting\x20SW\x20registration\x20(async)...','\x20Overlay\x20controller\x20initialized\x20and\x20cached','backendUrl','\x20composeOverlayState\x20-\x20state.enabled:\x20','$RefreshReg$','bin/enhance-sandbox.js','enhance:disable','mkdir','off','2923446ZsnUhH','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','warn','options','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','enableOverlayHmr','\x20Unregistering\x20any\x20existing\x20SW...','scope','Copy\x20the\x20service\x20worker\x20and\x20overlay\x20bundle\x20into\x20a\x20public\x20directory','function','110439CTnJMf','\x20Module\x20missing\x20createOverlay\x20export!',',\x20expected=','overlay','public','scriptURL','7598072oCZRqq','location','override','18290IhOoEy','/@vite/client','enable','\x20Enhancement\x20mode\x20ENABLED','readFile','\x20init()\x20called\x20at\x20','title','all','[Enhance\x20Config]\x20Build-time\x20defaults:','\x20Controller\x20created:','publicDir','^7.2.4','history','enableViteHmr','permissive','waiting','includes','err','Print\x20the\x20current\x20asset\x20manifest','now','http://','state:\x20','^24.10.1','Skipped\x20','\x20Starting\x20fresh\x20overlay\x20load...',',\x20page\x20origin:\x20','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','prepare-sw',',\x20currentOptions:\x20','\x20Config\x20sent\x20to\x20SW','ENOENT','^8.5.1','\x20Starting\x20overlay\x20load\x20(async)...','/assets/enhance-runtime.js','__development','getRegistration','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','../dist/index.js','unregister','5598qoSXty','\x20unregisterServiceWorker()\x20called','filename','\x20No\x20current\x20controller','hot','add','\x20overlayPath:\x20','\x20resolveWorker:','pnpm\x20version\x20patch\x20--no-git-tag-version','\x20BLOCKING\x20SW\x20detected:\x20','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','enhancement','$RefreshSig$','\x20SW\x20unregistered\x20successfully','active','\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners','./dist/index.js','\x20SW\x20ready!\x20Active:','__vite_plugin_react_preamble_installed__','[Enhance\x20SW-Client]','message','^4.1.1','https://','readyState','callbackBypass','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','digest','stringify','--filename\x20<name>','tsc\x20--noEmit','ready','default','0.0.0','...','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','version','sw-enhance','\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit','enhance-sandbox','command','\x20Failed\x20to\x20import/create\x20overlay:','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','__enhanceController','\x20loadOverlay()\x20called','security','href','\x20Failed\x20to\x20unregister\x20service\x20worker:','\x20setupRemoteHMR()\x20for\x20','destinationPath','\x20No\x20blocking\x20SW\x20found','hasEnhancement','replaceState','toString','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','get','\x20Overlay\x20origin:\x20','requiredOption','\x20URL\x20params\x20parsed:','action','enhance.config.sample.json','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','state','\x20enableViteHmr:\x20','disable','module','write'];_0xe4ca=function(){return _0x13385a;};return _0xe4ca();}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x36748a=_0x10da16;try{const _0x3458cb=new URLSearchParams(window['location'][_0x36748a(0x163)]);return _0x3458cb[_0x36748a(0x13d)](_0x36748a(0x19b))?.[_0x36748a(0x18b)]()||'';}catch{return'';}}var LOG_PREFIX=_0x10da16(0x19a),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x7db93){const _0x31e64d=_0x10da16;console['log'](LOG_PREFIX+_0x31e64d(0x132)),console['log'](LOG_PREFIX+_0x31e64d(0x10c)+_0x7db93[_0x31e64d(0x16e)]),console[_0x31e64d(0x15f)](LOG_PREFIX+_0x31e64d(0x145)+_0x7db93[_0x31e64d(0x1fb)]),currentOptions=_0x7db93[_0x31e64d(0x1de)],toggleHandler=_0x7db93[_0x31e64d(0x1cc)];if(overlayController){console['log'](LOG_PREFIX+'\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay'),updateOverlay();return;}if(overlayLoadPromise)return console[_0x31e64d(0x15f)](LOG_PREFIX+_0x31e64d(0xf9)),overlayLoadPromise;console[_0x31e64d(0x15f)](LOG_PREFIX+_0x31e64d(0x206)),overlayLoadPromise=doLoadOverlay(_0x7db93);try{await overlayLoadPromise,console['log'](LOG_PREFIX+'\x20loadOverlay()\x20complete');}catch(_0xd274b7){console['error'](LOG_PREFIX+_0x31e64d(0x1c8),_0xd274b7);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x38ba53){const _0x316721=_0x10da16;console['log'](LOG_PREFIX+_0x316721(0x1ba));if(typeof window===_0x316721(0x17c)){console['log'](LOG_PREFIX+_0x316721(0x152));return;}if(window[_0x316721(0x1c9)]){console[_0x316721(0x15f)](LOG_PREFIX+_0x316721(0x12c)),overlayController=window['__enhanceOverlay'];return;}console[_0x316721(0x15f)](LOG_PREFIX+_0x316721(0x1dc));try{_0x38ba53[_0x316721(0x1fb)]&&(console[_0x316721(0x15f)](LOG_PREFIX+_0x316721(0x182)),await setupRemoteHMR(_0x38ba53[_0x316721(0x16e)]));console['log'](LOG_PREFIX+'\x20Importing\x20overlay\x20module\x20from:\x20'+_0x38ba53[_0x316721(0x16e)]);const _0x3358c1=Date['now'](),_0x5a054d=await import(_0x38ba53[_0x316721(0x16e)]);console['log'](LOG_PREFIX+_0x316721(0x169)+(Date[_0x316721(0x201)]()-_0x3358c1)+'ms'),console[_0x316721(0x15f)](LOG_PREFIX+_0x316721(0x154),Object[_0x316721(0x1aa)](_0x5a054d));if(typeof _0x5a054d?.['createOverlay']!==_0x316721(0x1e4)){console[_0x316721(0x1c0)](LOG_PREFIX+_0x316721(0x1e6)),console[_0x316721(0x1c0)](LOG_PREFIX+_0x316721(0x15d),Object['keys'](_0x5a054d));return;}console[_0x316721(0x15f)](LOG_PREFIX+_0x316721(0x150));const _0x258a66=_0x5a054d[_0x316721(0x15e)]();console[_0x316721(0x15f)](LOG_PREFIX+_0x316721(0x1f7),_0x258a66),overlayController=_0x258a66,window[_0x316721(0x1c9)]=_0x258a66,_0x258a66['onToggle'](_0x38ba53[_0x316721(0x1cc)]),console[_0x316721(0x15f)](LOG_PREFIX+_0x316721(0x1d3)),console[_0x316721(0x15f)](LOG_PREFIX+_0x316721(0x195)),updateOverlay();}catch(_0x4f3e84){console[_0x316721(0x1c0)](LOG_PREFIX+_0x316721(0x12f),_0x4f3e84);}}function updateOverlay(){const _0x3b452a=_0x10da16;console[_0x3b452a(0x15f)](LOG_PREFIX+'\x20updateOverlay()\x20called'),console[_0x3b452a(0x15f)](LOG_PREFIX+_0x3b452a(0x187)+!!overlayController),console['log'](LOG_PREFIX+'\x20currentOptions\x20exists:\x20'+!!currentOptions);if(!overlayController||!currentOptions){console[_0x3b452a(0x15f)](LOG_PREFIX+'\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update');return;}const _0x294b7d=composeOverlayState(currentOptions);console[_0x3b452a(0x15f)](LOG_PREFIX+_0x3b452a(0x1ad),JSON[_0x3b452a(0x122)](_0x294b7d,null,0x2)),overlayController[_0x3b452a(0x16f)](_0x294b7d),console[_0x3b452a(0x15f)](LOG_PREFIX+'\x20Overlay\x20update\x20complete');}function _0x858b(_0x5a4174,_0x33f7f9){const _0xe4ca9b=_0xe4ca();return _0x858b=function(_0x858b42,_0x16ca67){_0x858b42=_0x858b42-0xf8;let _0x4feb92=_0xe4ca9b[_0x858b42];return _0x4feb92;},_0x858b(_0x5a4174,_0x33f7f9);}function composeOverlayState(_0xb978c7){const _0x31ed78=_0x10da16,_0xcaf78b=getEnhancementUrl();return console['log'](LOG_PREFIX+_0x31ed78(0x1a4)+_0xcaf78b),console[_0x31ed78(0x15f)](LOG_PREFIX+_0x31ed78(0x1d5)+state[_0x31ed78(0x149)]),console[_0x31ed78(0x15f)](LOG_PREFIX+'\x20composeOverlayState\x20-\x20state.controlled:\x20'+state['controlled']),{'enhancementUrl':_0xcaf78b,'enabled':state[_0x31ed78(0x149)],'controlled':state[_0x31ed78(0x1cb)],'overlayPosition':_0xb978c7[_0x31ed78(0x1e8)]['position'],'securityMode':_0xb978c7['security'],'backendBaseUrl':_0xb978c7[_0x31ed78(0x1d4)],'appError':state['appError']};}async function setupRemoteHMR(_0x3d2fa1){const _0x5e47f4=_0x10da16;console[_0x5e47f4(0x15f)](LOG_PREFIX+_0x5e47f4(0x136)+_0x3d2fa1);if(typeof window==='undefined')return;try{const _0x2b7335=new URL(_0x3d2fa1,window[_0x5e47f4(0x1ec)][_0x5e47f4(0x17b)]),_0x19da91=_0x2b7335['origin'];console[_0x5e47f4(0x15f)](LOG_PREFIX+_0x5e47f4(0x13e)+_0x19da91+_0x5e47f4(0xf8)+window[_0x5e47f4(0x1ec)][_0x5e47f4(0x17b)]);if(_0x19da91===window['location']['origin']){console[_0x5e47f4(0x15f)](LOG_PREFIX+_0x5e47f4(0x143));return;}console['log'](LOG_PREFIX+'\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...'),await ensureReactRefreshPreamble(_0x19da91),await ensureViteClient(_0x19da91),console['log'](LOG_PREFIX+_0x5e47f4(0x1c2));}catch(_0x16be7b){console[_0x5e47f4(0x1dd)](LOG_PREFIX+'\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):',_0x16be7b);}}async function ensureReactRefreshPreamble(_0x26eb28){const _0xa812a8=_0x10da16;window[_0xa812a8(0x170)]??=new Set();if(window[_0xa812a8(0x170)][_0xa812a8(0x16d)](_0x26eb28)){console['log'](LOG_PREFIX+_0xa812a8(0x1ab)+_0x26eb28);return;}console[_0xa812a8(0x15f)](LOG_PREFIX+_0xa812a8(0x161)+_0x26eb28+'...');const _0xde6f2=await import(_0x26eb28+_0xa812a8(0x1a0)),_0x5f5af7=_0xde6f2&&typeof _0xde6f2===_0xa812a8(0x197)&&_0xa812a8(0x126)in _0xde6f2?_0xde6f2[_0xa812a8(0x126)]:_0xde6f2;if(!isRefreshRuntime(_0x5f5af7)){console['warn'](LOG_PREFIX+'\x20Invalid\x20React\x20Refresh\x20runtime');return;}_0x5f5af7[_0xa812a8(0x1a8)](window),window[_0xa812a8(0x1d6)]=()=>{},window[_0xa812a8(0x112)]=()=>_0x4187e8=>_0x4187e8,window[_0xa812a8(0x118)]=!![],window['__enhanceReactRefreshInstalledOrigins'][_0xa812a8(0x10b)](_0x26eb28),console[_0xa812a8(0x15f)](LOG_PREFIX+_0xa812a8(0x13c)+_0x26eb28);}async function ensureViteClient(_0x33c82e){const _0x34ee56=_0x10da16;window[_0x34ee56(0x1ca)]??=new Set();if(window[_0x34ee56(0x1ca)][_0x34ee56(0x16d)](_0x33c82e)){console[_0x34ee56(0x15f)](LOG_PREFIX+_0x34ee56(0x1a5)+_0x33c82e);return;}console[_0x34ee56(0x15f)](LOG_PREFIX+_0x34ee56(0x1b5)+_0x33c82e+_0x34ee56(0x128)),await import(_0x33c82e+_0x34ee56(0x1ef)),window[_0x34ee56(0x1ca)]['add'](_0x33c82e),console[_0x34ee56(0x15f)](LOG_PREFIX+_0x34ee56(0x1bd)+_0x33c82e);}function isRefreshRuntime(_0x16ac40){const _0x50b0f3=_0x10da16;return typeof _0x16ac40===_0x50b0f3(0x197)&&_0x16ac40!==null&&'injectIntoGlobalHook'in _0x16ac40&&typeof _0x16ac40[_0x50b0f3(0x1a8)]===_0x50b0f3(0x1e4);}var WORKER_MESSAGE_CONFIG=_0x10da16(0x1c7),WORKER_MESSAGE_DISABLE=_0x10da16(0x1d8),LOG_PREFIX2=_0x10da16(0x119),registration=null,currentOptions2=null;async function registerServiceWorker(_0x2b705c){const _0x4f6a75=_0x10da16;console['log'](LOG_PREFIX2+_0x4f6a75(0x14a)),console[_0x4f6a75(0x15f)](LOG_PREFIX2+_0x4f6a75(0x191)+_0x2b705c['swPath']);if(!(_0x4f6a75(0x1cd)in navigator)){console[_0x4f6a75(0x1dd)](LOG_PREFIX2+_0x4f6a75(0x178));return;}console[_0x4f6a75(0x15f)](LOG_PREFIX2+'\x20Service\x20workers\x20supported');const _0x12a482=navigator['serviceWorker']['controller'];console[_0x4f6a75(0x15f)](LOG_PREFIX2+'\x20Current\x20controller:',_0x12a482?.[_0x4f6a75(0x1ea)]??_0x4f6a75(0x14c)),console[_0x4f6a75(0x15f)](LOG_PREFIX2+'\x20Controller\x20state:',_0x12a482?.[_0x4f6a75(0x144)]??'N/A');const _0x77ab39=!!_0x12a482;currentOptions2=_0x2b705c,console[_0x4f6a75(0x15f)](LOG_PREFIX2+_0x4f6a75(0x1b7));const _0x34931b=await detectBlockingServiceWorker(_0x2b705c[_0x4f6a75(0x188)]);if(_0x34931b){console['error'](LOG_PREFIX2+_0x4f6a75(0x10f)+_0x34931b),console[_0x4f6a75(0x1c0)](LOG_PREFIX2+_0x4f6a75(0x1ac));return;}console[_0x4f6a75(0x15f)](LOG_PREFIX2+_0x4f6a75(0x138));try{console[_0x4f6a75(0x15f)](LOG_PREFIX2+_0x4f6a75(0x153)+_0x2b705c[_0x4f6a75(0x188)]+_0x4f6a75(0x1c1)),registration=await navigator['serviceWorker']['register'](_0x2b705c[_0x4f6a75(0x188)],{'scope':'/'}),console[_0x4f6a75(0x15f)](LOG_PREFIX2+'\x20Registration\x20returned:',{'scope':registration[_0x4f6a75(0x1e2)],'active':registration[_0x4f6a75(0x114)]?.[_0x4f6a75(0x1ea)],'waiting':registration[_0x4f6a75(0x1fd)]?.[_0x4f6a75(0x1ea)],'installing':registration[_0x4f6a75(0x16c)]?.[_0x4f6a75(0x1ea)]}),console['log'](LOG_PREFIX2+_0x4f6a75(0x15a));const _0x38c662=await navigator[_0x4f6a75(0x1cd)][_0x4f6a75(0x125)];console[_0x4f6a75(0x15f)](LOG_PREFIX2+_0x4f6a75(0x117),_0x38c662['active']?.[_0x4f6a75(0x1ea)]);const _0x32d26a=ownsCurrentController(_0x2b705c[_0x4f6a75(0x188)]);state[_0x4f6a75(0x1cb)]=_0x32d26a,console[_0x4f6a75(0x15f)](LOG_PREFIX2+_0x4f6a75(0x186)+_0x32d26a),console[_0x4f6a75(0x15f)](LOG_PREFIX2+'\x20Current\x20controller\x20after\x20ready:',navigator['serviceWorker'][_0x4f6a75(0x1b9)]?.['scriptURL']??_0x4f6a75(0x14c));if(!_0x77ab39&&!navigator['serviceWorker'][_0x4f6a75(0x1b9)]){console['log'](LOG_PREFIX2+_0x4f6a75(0x120)),window[_0x4f6a75(0x1ec)]['reload']();return;}console[_0x4f6a75(0x15f)](LOG_PREFIX2+'\x20Sending\x20customer\x20configuration...'),await sendConfiguration();if(state[_0x4f6a75(0x149)]){const _0x1aa6c0=document[_0x4f6a75(0x18c)]('[data-enhance-runtime-bootstrap]')!==null;console[_0x4f6a75(0x15f)](LOG_PREFIX2+_0x4f6a75(0x1b3)+_0x1aa6c0);if(!_0x1aa6c0){console['log'](LOG_PREFIX2+_0x4f6a75(0x1df)),window[_0x4f6a75(0x1ec)][_0x4f6a75(0x1be)]();return;}}console['log'](LOG_PREFIX2+_0x4f6a75(0x17a)),updateOverlay(),console[_0x4f6a75(0x15f)](LOG_PREFIX2+'\x20registerServiceWorker()\x20complete');}catch(_0x197278){console['error'](LOG_PREFIX2+_0x4f6a75(0x190),_0x197278);}}async function sendConfiguration(){const _0x290e80=_0x10da16;console[_0x290e80(0x15f)](LOG_PREFIX2+_0x290e80(0x193)),console['log'](LOG_PREFIX2+_0x290e80(0x1bc)+state[_0x290e80(0x149)]+_0x290e80(0xfb)+!!currentOptions2);if(!state[_0x290e80(0x149)]||!currentOptions2){console[_0x290e80(0x15f)](LOG_PREFIX2+_0x290e80(0x181));return;}const _0x8e8bf1=await resolveWorker();if(!_0x8e8bf1){console['warn'](LOG_PREFIX2+_0x290e80(0x15c));return;}const _0x3a1a69={'callbackBypass':currentOptions2['callbackBypass'],'securityMode':currentOptions2[_0x290e80(0x133)]};console[_0x290e80(0x15f)](LOG_PREFIX2+'\x20Sending\x20customer\x20config\x20to\x20SW:',JSON['stringify'](_0x3a1a69,null,0x2)),_0x8e8bf1[_0x290e80(0x1a7)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x3a1a69}),console[_0x290e80(0x15f)](LOG_PREFIX2+_0x290e80(0xfc));}async function unregisterServiceWorker(_0x52d445){const _0xc30e33=_0x10da16;console[_0xc30e33(0x15f)](LOG_PREFIX2+_0xc30e33(0x107));if(!('serviceWorker'in navigator)){console[_0xc30e33(0x15f)](LOG_PREFIX2+_0xc30e33(0x17f));return;}try{const _0x422495=registration??await navigator[_0xc30e33(0x1cd)][_0xc30e33(0x102)]('/');if(!_0x422495){console['log'](LOG_PREFIX2+_0xc30e33(0x162));return;}console[_0xc30e33(0x15f)](LOG_PREFIX2+_0xc30e33(0x17d),{'scope':_0x422495[_0xc30e33(0x1e2)],'active':_0x422495[_0xc30e33(0x114)]?.[_0xc30e33(0x1ea)],'waiting':_0x422495['waiting']?.['scriptURL'],'installing':_0x422495['installing']?.[_0xc30e33(0x1ea)]});const _0x4763ad=[_0x422495['active']?.['scriptURL'],_0x422495[_0xc30e33(0x1fd)]?.['scriptURL'],_0x422495[_0xc30e33(0x16c)]?.[_0xc30e33(0x1ea)]],_0x11b239=_0x4763ad[_0xc30e33(0x194)](_0x577aae=>_0x577aae&&ownsServiceWorker(_0x577aae,_0x52d445));if(!_0x11b239){console[_0xc30e33(0x15f)](LOG_PREFIX2+'\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering');return;}_0x422495[_0xc30e33(0x114)]&&(console[_0xc30e33(0x15f)](LOG_PREFIX2+_0xc30e33(0x19e)),_0x422495[_0xc30e33(0x114)][_0xc30e33(0x1a7)]({'type':WORKER_MESSAGE_DISABLE})),console['log'](LOG_PREFIX2+'\x20Unregistering\x20SW...'),await _0x422495[_0xc30e33(0x105)](),registration=null,currentOptions2=null,console[_0xc30e33(0x15f)](LOG_PREFIX2+_0xc30e33(0x113));}catch(_0x1e43d8){console[_0xc30e33(0x1c0)](LOG_PREFIX2+_0xc30e33(0x135),_0x1e43d8);}}function ownsServiceWorker(_0x3109a8,_0x25c65e){const _0x2b184d=_0x10da16,_0x48254b=typeof window!=='undefined'?window[_0x2b184d(0x1ec)][_0x2b184d(0x17b)]:'',_0x5ac730=new URL(_0x25c65e,_0x48254b||void 0x0)[_0x2b184d(0x134)],_0x50f844=_0x3109a8===_0x5ac730||_0x3109a8[_0x2b184d(0x1fe)](_0x2b184d(0x12b));return console[_0x2b184d(0x15f)](LOG_PREFIX2+_0x2b184d(0x189)+_0x3109a8+_0x2b184d(0x1e7)+_0x5ac730+_0x2b184d(0x1a1)+_0x50f844),_0x50f844;}function ownsCurrentController(_0x368f7a){const _0x774f45=_0x10da16;if(typeof navigator===_0x774f45(0x17c))return![];const _0x11c6e3=navigator['serviceWorker']?.['controller'];if(!_0x11c6e3)return console[_0x774f45(0x15f)](LOG_PREFIX2+_0x774f45(0x109)),![];return ownsServiceWorker(_0x11c6e3['scriptURL'],_0x368f7a);}async function detectBlockingServiceWorker(_0x6b273f){const _0x1d921d=_0x10da16;if(!navigator['serviceWorker'])return null;try{const _0x327be9=await navigator[_0x1d921d(0x1cd)][_0x1d921d(0x102)]('/');console[_0x1d921d(0x15f)](LOG_PREFIX2+_0x1d921d(0x1bf),_0x327be9?.[_0x1d921d(0x114)]?.[_0x1d921d(0x1ea)]??_0x1d921d(0x14c));const _0x3ad091=_0x327be9?.[_0x1d921d(0x114)]?.['scriptURL'];if(!_0x3ad091)return null;if(ownsServiceWorker(_0x3ad091,_0x6b273f))return null;return _0x3ad091;}catch(_0x5954d4){return console[_0x1d921d(0x1c0)](LOG_PREFIX2+_0x1d921d(0x14d),_0x5954d4),null;}}async function resolveWorker(){const _0x4a6b73=_0x10da16,_0x20644a=registration??await navigator[_0x4a6b73(0x1cd)]?.[_0x4a6b73(0x102)]('/'),_0x55ca60=_0x20644a?.['active']??_0x20644a?.[_0x4a6b73(0x1fd)]??_0x20644a?.['installing']??null;return console[_0x4a6b73(0x15f)](LOG_PREFIX2+_0x4a6b73(0x10d),_0x55ca60?.[_0x4a6b73(0x1ea)]??'none',_0x4a6b73(0x203)+(_0x55ca60?.['state']??_0x4a6b73(0x1a9))),_0x55ca60;}var LOG_PREFIX3=_0x10da16(0x18a);function isInitialized(){const _0x1c04a9=_0x10da16;return typeof window!=='undefined'&&window[_0x1c04a9(0x17e)]===!![];}function setInitialized(_0x219367){const _0x41292d=_0x10da16;typeof window!==_0x41292d(0x17c)&&(window['__enhanceInitialized']=_0x219367);}function getOptions(){const _0x33daef=_0x10da16;return typeof window!==_0x33daef(0x17c)?window[_0x33daef(0x16a)]??null:null;}function setOptions(_0x4db11a){const _0x436c70=_0x10da16;typeof window!==_0x436c70(0x17c)&&(window[_0x436c70(0x16a)]=_0x4db11a);}var Enhance={'init'(_0x29fe70){const _0x1b6bdb=_0x10da16,_0x5a8116=Date[_0x1b6bdb(0x201)]();console['log'](LOG_PREFIX3+_0x1b6bdb(0x1f3)+_0x5a8116),console['log'](LOG_PREFIX3+_0x1b6bdb(0x1bb)+window[_0x1b6bdb(0x1ec)]['href']),console[_0x1b6bdb(0x15f)](LOG_PREFIX3+_0x1b6bdb(0x184)+document[_0x1b6bdb(0x11d)]),console[_0x1b6bdb(0x15f)](LOG_PREFIX3+_0x1b6bdb(0x175),JSON[_0x1b6bdb(0x122)](_0x29fe70,null,0x2));if(isInitialized())return console[_0x1b6bdb(0x1dd)](LOG_PREFIX3+_0x1b6bdb(0x18d)),window[_0x1b6bdb(0x131)]??createController();setInitialized(!![]),console[_0x1b6bdb(0x15f)](LOG_PREFIX3+_0x1b6bdb(0x179));const _0x3250fe=normalizeOptions(_0x29fe70);setOptions(_0x3250fe),console[_0x1b6bdb(0x15f)](LOG_PREFIX3+'\x20Normalized\x20options:',JSON['stringify'](_0x3250fe,null,0x2));const _0x28e256=parseUrlParams();console[_0x1b6bdb(0x15f)](LOG_PREFIX3+_0x1b6bdb(0x140),JSON[_0x1b6bdb(0x122)](_0x28e256,null,0x2));if(_0x28e256['explicitDisable'])return cleanUrlParam(_0x1b6bdb(0x1c6)),console['log'](LOG_PREFIX3+_0x1b6bdb(0x103)),createController();if(_0x28e256[_0x1b6bdb(0x139)])return console[_0x1b6bdb(0x15f)](LOG_PREFIX3+_0x1b6bdb(0x1f1)),console['log'](LOG_PREFIX3+_0x1b6bdb(0x14f)+_0x28e256[_0x1b6bdb(0x19b)]),console[_0x1b6bdb(0x15f)](LOG_PREFIX3+_0x1b6bdb(0x180)+_0x28e256[_0x1b6bdb(0x173)]),state[_0x1b6bdb(0x149)]=!![],console[_0x1b6bdb(0x15f)](LOG_PREFIX3+_0x1b6bdb(0xff)),void loadOverlay({'overlayPath':_0x3250fe[_0x1b6bdb(0x16e)],'enableViteHmr':_0x3250fe['overlay'][_0x1b6bdb(0x1fb)],'options':_0x3250fe,'onToggle':handleToggle}),console[_0x1b6bdb(0x15f)](LOG_PREFIX3+_0x1b6bdb(0x1d2)),void registerServiceWorker(_0x3250fe),console[_0x1b6bdb(0x15f)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20enhancement\x20mode'),createController();return console[_0x1b6bdb(0x15f)](LOG_PREFIX3+'\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params'),console[_0x1b6bdb(0x15f)](LOG_PREFIX3+_0x1b6bdb(0x1e1)),void unregisterServiceWorker(_0x3250fe[_0x1b6bdb(0x188)]),console['log'](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20normal\x20mode'),import.meta['hot']&&(console['log'](LOG_PREFIX3+_0x1b6bdb(0x115)),import.meta[_0x1b6bdb(0x10a)]['on'](_0x1b6bdb(0x155),_0x46ce06=>{const _0x50b039=_0x1b6bdb;console[_0x50b039(0x15f)](LOG_PREFIX3+'\x20Vite\x20error\x20detected:',_0x46ce06),state['appError']={'message':_0x46ce06[_0x50b039(0x1ff)][_0x50b039(0x11a)]},updateOverlay();}),import.meta[_0x1b6bdb(0x10a)]['on'](_0x1b6bdb(0x16b),()=>{const _0x4fcbde=_0x1b6bdb;state[_0x4fcbde(0x1d1)]&&(console['log'](LOG_PREFIX3+_0x4fcbde(0x129)),state['appError']=null,updateOverlay());})),createController();}};function createController(){const _0x3188fa=_0x10da16,_0x5953fa={'enable'(){const _0x5ecee2=_0x858b,_0x584e35=getOptions();if(!_0x584e35)return;state[_0x5ecee2(0x149)]=!![],void loadOverlay({'overlayPath':_0x584e35['overlayPath'],'enableViteHmr':_0x584e35[_0x5ecee2(0x1e8)][_0x5ecee2(0x1fb)],'options':_0x584e35,'onToggle':handleToggle}),void registerServiceWorker(_0x584e35),void sendConfiguration(),updateOverlay();},'disable'(){const _0xb4b6cc=_0x858b,_0x3a8a62=getOptions();if(!_0x3a8a62)return;state[_0xb4b6cc(0x149)]=![],state[_0xb4b6cc(0x1cb)]=![],updateOverlay(),void unregisterServiceWorker(_0x3a8a62[_0xb4b6cc(0x188)]);},'status'(){const _0x2409f2=_0x858b;return{'enabled':state[_0x2409f2(0x149)],'controlled':state[_0x2409f2(0x1cb)]};}};return typeof window!=='undefined'&&(window[_0x3188fa(0x131)]=_0x5953fa),_0x5953fa;}function handleToggle(){const _0x194bee=_0x10da16,_0x375c80=createController();state[_0x194bee(0x149)]?_0x375c80[_0x194bee(0x146)]():_0x375c80[_0x194bee(0x1f0)]();}function parseUrlParams(){const _0x5507f4=_0x10da16,_0x830c5a=new URL(window[_0x5507f4(0x1ec)][_0x5507f4(0x134)]),_0x30c16d=_0x830c5a['searchParams'][_0x5507f4(0x13d)](_0x5507f4(0x1c6))?.[_0x5507f4(0x1c3)](),_0x20925f=_0x830c5a[_0x5507f4(0x157)][_0x5507f4(0x13d)]('enhancementUrl'),_0x331288=_0x830c5a[_0x5507f4(0x157)]['get'](_0x5507f4(0x111));return{'hasEnhancement':Boolean(_0x20925f||_0x331288),'explicitDisable':_0x30c16d==='0'||_0x30c16d==='false'||_0x30c16d===_0x5507f4(0x1da),'enhancementUrl':_0x20925f,'enhancementId':_0x331288};}function cleanUrlParam(_0x4d4087){const _0x43e573=_0x10da16,_0x56102b=new URL(window[_0x43e573(0x1ec)][_0x43e573(0x134)]);_0x56102b['searchParams'][_0x43e573(0x16d)](_0x4d4087)&&(_0x56102b[_0x43e573(0x157)]['delete'](_0x4d4087),window[_0x43e573(0x1fa)][_0x43e573(0x13a)](null,document[_0x43e573(0x1f4)],_0x56102b[_0x43e573(0x13b)]()));}var package_default={'name':'@enhance-eng/sandbox','version':_0x10da16(0x1af),'type':_0x10da16(0x147),'description':_0x10da16(0x110),'license':_0x10da16(0x176),'main':_0x10da16(0x1ae),'module':_0x10da16(0x116),'types':_0x10da16(0x166),'exports':{'.':{'types':_0x10da16(0x166),'import':'./dist/index.js','require':_0x10da16(0x1ae)},'./vite':{'types':_0x10da16(0x192),'import':'./dist/vite/index.js'}},'files':[_0x10da16(0x19c),'bin',_0x10da16(0x142)],'bin':{'enhance-sandbox':_0x10da16(0x1d7)},'scripts':{'typecheck':_0x10da16(0x124),'dev':_0x10da16(0x1ce),'dev:build':_0x10da16(0x11f),'dev:staging':_0x10da16(0x130),'dev:staging:build':_0x10da16(0x19d),'build':_0x10da16(0x1b4),'build:release':_0x10da16(0x15b),'version':_0x10da16(0x10e)},'dependencies':{'commander':_0x10da16(0x1cf),'zod':_0x10da16(0x165)},'devDependencies':{'@types/node':_0x10da16(0x204),'javascript-obfuscator':_0x10da16(0x11b),'tsup':_0x10da16(0xfe),'vite':_0x10da16(0x1f9)},'publishConfig':{'access':_0x10da16(0x1e9)}},DEFAULT_SERVICE_WORKER_PATH=_0x10da16(0x185),DEFAULT_RUNTIME_PATH=_0x10da16(0x100),DIST_SERVICE_WORKER_PATH=_0x10da16(0x156),DIST_RUNTIME_PATH='assets/enhance-runtime.js',PACKAGE_VERSION=typeof package_default[_0x10da16(0x12a)]===_0x10da16(0x168)?package_default[_0x10da16(0x12a)]:_0x10da16(0x127);function normalizeAssetPath(_0x32b66a){const _0x17a148=_0x10da16;if(!_0x32b66a)return _0x32b66a;if(_0x32b66a[_0x17a148(0x1b6)](_0x17a148(0x202))||_0x32b66a[_0x17a148(0x1b6)](_0x17a148(0x11c)))return _0x32b66a;const _0x30342b=_0x32b66a['replace'](/^\.\//,'');return _0x30342b[_0x17a148(0x1b6)]('/')?_0x30342b:'/'+_0x30342b;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x2fc198){const _0x3d3c80=_0x10da16;return Enhance[_0x3d3c80(0x1b2)](_0x2fc198);},'serviceWorkerURL'(){return defaultSwPath;},'runtimeURL'(){return defaultRuntimePath;},'assetManifest'(){return getAssetManifest();}};function getAssetManifest(){return{'version':PACKAGE_VERSION,'serviceWorker':serviceWorkerURL(),'runtime':runtimeURL(),'serviceWorkerDigest':null,'runtimeDigest':null};}function serviceWorkerURL(){const _0x5392ac=_0x10da16;return Enhance2[_0x5392ac(0x1c4)]();}function runtimeURL(){const _0x6a4b9b=_0x10da16;return Enhance2[_0x6a4b9b(0x158)]();}import{promises as _0xfa62d6}from'fs';import{createHash}from'crypto';import{dirname,join}from'path';import{fileURLToPath}from'url';var distDir=dirname(fileURLToPath(new URL(_0x10da16(0x104),import.meta[_0x10da16(0x1d0)])));async function syncAssets(_0x1d6b9f){const _0x5969ac=_0x10da16,_0x13a51c=[{'sourcePath':DIST_SERVICE_WORKER_PATH,'manifestPath':normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),'override':_0x1d6b9f[_0x5969ac(0x164)]?'./'+_0x1d6b9f[_0x5969ac(0x164)]:void 0x0},{'sourcePath':DIST_RUNTIME_PATH,'manifestPath':normalizeAssetPath(DEFAULT_RUNTIME_PATH)}],_0xa61a5=[];for(const _0x57b55a of _0x13a51c){const _0x42b571=cleanRelativePath(_0x57b55a[_0x5969ac(0x1ed)]??_0x57b55a['manifestPath']),_0x2b6452=join(distDir,cleanRelativePath(_0x57b55a[_0x5969ac(0x151)])),_0x478276=join(_0x1d6b9f['publicDir'],_0x42b571),[_0x3a021e,_0x2f0b7c]=await Promise[_0x5969ac(0x1f5)]([readDigest(_0x2b6452),readDigest(_0x478276)]);if(_0x3a021e&&_0x2f0b7c&&_0x3a021e===_0x2f0b7c){_0xa61a5['push']({'sourcePath':_0x2b6452,'destinationPath':_0x478276,'relativeDestination':_0x42b571,'status':_0x5969ac(0x171)});continue;}await _0xfa62d6[_0x5969ac(0x1d9)](dirname(_0x478276),{'recursive':!![]}),await _0xfa62d6[_0x5969ac(0x199)](_0x2b6452,_0x478276),_0xa61a5[_0x5969ac(0x19f)]({'sourcePath':_0x2b6452,'destinationPath':_0x478276,'relativeDestination':_0x42b571,'status':_0x5969ac(0x1b8)});}return _0xa61a5;}function cleanRelativePath(_0x1964c0){return _0x1964c0['replace'](/^[./]+/,'');}async function readDigest(_0x3910fe){const _0xbc7059=_0x10da16;try{const _0xeb437=await _0xfa62d6[_0xbc7059(0x1f2)](_0x3910fe);return createHash(_0xbc7059(0x172))[_0xbc7059(0x16f)](_0xeb437)[_0xbc7059(0x121)]('base64');}catch(_0x5be0ec){if(_0x5be0ec[_0xbc7059(0x18e)]===_0xbc7059(0xfd))return null;throw _0x5be0ec;}}var program=new Command();program['name'](_0x10da16(0x12d))[_0x10da16(0x183)](_0x10da16(0x14e))[_0x10da16(0x12a)](_0x10da16(0x127)),program[_0x10da16(0x12e)]('manifest')[_0x10da16(0x183)](_0x10da16(0x200))[_0x10da16(0x141)](()=>{const _0x65d2f6=_0x10da16,_0x316166=getAssetManifest();process[_0x65d2f6(0x18f)][_0x65d2f6(0x148)](JSON['stringify'](_0x316166,null,0x2)+'\x0a');}),program[_0x10da16(0x12e)](_0x10da16(0xfa))[_0x10da16(0x183)](_0x10da16(0x1e3))[_0x10da16(0x13f)](_0x10da16(0x159),'Directory\x20to\x20copy\x20the\x20service\x20worker\x20into')[_0x10da16(0x1b1)](_0x10da16(0x123),'Override\x20the\x20service\x20worker\x20output\x20filename\x20(defaults\x20to\x20sw-enhance.js)')[_0x10da16(0x141)](async _0x18799f=>{const _0x1a2eca=_0x10da16,_0x1b5b10=resolve(process[_0x1a2eca(0x174)](),_0x18799f[_0x1a2eca(0x1f8)]),_0x189896=await syncAssets({'publicDir':_0x1b5b10,'swFilename':_0x18799f[_0x1a2eca(0x108)]});for(const _0x29ba42 of _0x189896){const _0x105225=relative(process['cwd'](),_0x29ba42[_0x1a2eca(0x137)]);_0x29ba42[_0x1a2eca(0x177)]===_0x1a2eca(0x171)?process[_0x1a2eca(0x18f)][_0x1a2eca(0x148)](_0x1a2eca(0x205)+_0x29ba42[_0x1a2eca(0x167)]+'\x20(already\x20current)\x20['+_0x105225+']\x0a'):process[_0x1a2eca(0x18f)][_0x1a2eca(0x148)](_0x1a2eca(0x14b)+_0x29ba42[_0x1a2eca(0x167)]+'\x20→\x20'+_0x105225+'\x0a');}}),program['parseAsync']();
3
+ const _0x40a848=_0x4d27;(function(_0x5c3a6f,_0x1defd7){const _0xe64b3c=_0x4d27,_0x5132b4=_0x5c3a6f();while(!![]){try{const _0x4d3ddc=parseInt(_0xe64b3c(0x117))/0x1+-parseInt(_0xe64b3c(0x14f))/0x2*(parseInt(_0xe64b3c(0x13d))/0x3)+parseInt(_0xe64b3c(0x1c9))/0x4*(-parseInt(_0xe64b3c(0x17e))/0x5)+-parseInt(_0xe64b3c(0x185))/0x6*(-parseInt(_0xe64b3c(0x186))/0x7)+parseInt(_0xe64b3c(0x135))/0x8*(-parseInt(_0xe64b3c(0x184))/0x9)+-parseInt(_0xe64b3c(0x139))/0xa*(parseInt(_0xe64b3c(0x203))/0xb)+parseInt(_0xe64b3c(0x1ac))/0xc*(parseInt(_0xe64b3c(0x120))/0xd);if(_0x4d3ddc===_0x1defd7)break;else _0x5132b4['push'](_0x5132b4['shift']());}catch(_0x532610){_0x5132b4['push'](_0x5132b4['shift']());}}}(_0x59e8,0x93ab9));import{Command}from'commander';import{resolve,relative}from'path';var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!==_0x40a848(0x129)?__ENHANCE_DEFAULT_OVERLAY_PATH__:_0x40a848(0x118),DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!=='undefined'?__ENHANCE_DEFAULT_BACKEND_URL__:'https://api.enhancelabs.ai',DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!==_0x40a848(0x129)?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console[_0x40a848(0x204)]('[Enhance\x20Config]\x20Build-time\x20defaults:',{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x44b62d){const _0x5b598e=_0x40a848,_0xa09b1e=_0x44b62d[_0x5b598e(0x128)]??{};return{'callbackBypass':_0x44b62d[_0x5b598e(0x111)]??[],'overlay':{'enabled':!![],'position':_0x5b598e(0x124),'enableViteHmr':_0xa09b1e['enableOverlayHmr']??DEFAULT_OVERLAY_HMR},'logLevel':_0x5b598e(0x1df),'swPath':_0x5b598e(0x1d7),'overlayPath':_0xa09b1e[_0x5b598e(0x1ee)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x5b598e(0x199),'security':_0xa09b1e['security']??_0x5b598e(0x1b8),'backendUrl':_0xa09b1e[_0x5b598e(0x17a)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x4bc0ce=_0x40a848;try{const _0x112450=new URLSearchParams(window[_0x4bc0ce(0x10c)]['search']);return _0x112450[_0x4bc0ce(0x16e)]('enhancementUrl')?.[_0x4bc0ce(0x14a)]()||'';}catch{return'';}}var LOG_PREFIX=_0x40a848(0x206),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0xdafbfb){const _0x52b1ab=_0x40a848;console[_0x52b1ab(0x204)](LOG_PREFIX+_0x52b1ab(0x1a5)),console[_0x52b1ab(0x204)](LOG_PREFIX+_0x52b1ab(0x1e0)+_0xdafbfb[_0x52b1ab(0x1ee)]),console['log'](LOG_PREFIX+_0x52b1ab(0x1b7)+_0xdafbfb[_0x52b1ab(0x1ec)]),currentOptions=_0xdafbfb[_0x52b1ab(0x159)],toggleHandler=_0xdafbfb[_0x52b1ab(0x180)];if(overlayController){console[_0x52b1ab(0x204)](LOG_PREFIX+_0x52b1ab(0x189)),updateOverlay();return;}if(overlayLoadPromise)return console[_0x52b1ab(0x204)](LOG_PREFIX+_0x52b1ab(0x167)),overlayLoadPromise;console[_0x52b1ab(0x204)](LOG_PREFIX+'\x20Starting\x20fresh\x20overlay\x20load...'),overlayLoadPromise=doLoadOverlay(_0xdafbfb);try{await overlayLoadPromise,console['log'](LOG_PREFIX+_0x52b1ab(0x1d8));}catch(_0x25ba0a){console[_0x52b1ab(0x126)](LOG_PREFIX+'\x20loadOverlay()\x20failed:',_0x25ba0a);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x3b1a44){const _0x21649d=_0x40a848;console['log'](LOG_PREFIX+'\x20doLoadOverlay()\x20starting...');if(typeof window===_0x21649d(0x129)){console['log'](LOG_PREFIX+_0x21649d(0x170));return;}if(window[_0x21649d(0x11e)]){console[_0x21649d(0x204)](LOG_PREFIX+'\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit'),overlayController=window[_0x21649d(0x11e)];return;}console[_0x21649d(0x204)](LOG_PREFIX+'\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module');try{_0x3b1a44[_0x21649d(0x1ec)]&&(console[_0x21649d(0x204)](LOG_PREFIX+_0x21649d(0x155)),await setupRemoteHMR(_0x3b1a44[_0x21649d(0x1ee)]));console['log'](LOG_PREFIX+'\x20Importing\x20overlay\x20module\x20from:\x20'+_0x3b1a44[_0x21649d(0x1ee)]);const _0x4969fd=Date[_0x21649d(0x1b0)](),_0x2f91c0=await import(_0x3b1a44['overlayPath']);console[_0x21649d(0x204)](LOG_PREFIX+_0x21649d(0x137)+(Date[_0x21649d(0x1b0)]()-_0x4969fd)+'ms'),console['log'](LOG_PREFIX+_0x21649d(0x1af),Object[_0x21649d(0x1f7)](_0x2f91c0));if(typeof _0x2f91c0?.[_0x21649d(0x194)]!==_0x21649d(0x1b3)){console[_0x21649d(0x126)](LOG_PREFIX+_0x21649d(0x110)),console[_0x21649d(0x126)](LOG_PREFIX+_0x21649d(0x150),Object[_0x21649d(0x1f7)](_0x2f91c0));return;}console[_0x21649d(0x204)](LOG_PREFIX+_0x21649d(0x14d));const _0x329573=_0x2f91c0['createOverlay']();console[_0x21649d(0x204)](LOG_PREFIX+'\x20Controller\x20created:',_0x329573),overlayController=_0x329573,window[_0x21649d(0x11e)]=_0x329573,_0x329573[_0x21649d(0x180)](_0x3b1a44[_0x21649d(0x180)]),console['log'](LOG_PREFIX+_0x21649d(0x123)),console[_0x21649d(0x204)](LOG_PREFIX+_0x21649d(0x16a)),updateOverlay();}catch(_0x3f4484){console[_0x21649d(0x126)](LOG_PREFIX+_0x21649d(0x1b5),_0x3f4484);}}function updateOverlay(){const _0x500069=_0x40a848;console[_0x500069(0x204)](LOG_PREFIX+_0x500069(0x10f)),console[_0x500069(0x204)](LOG_PREFIX+_0x500069(0x1eb)+!!overlayController),console[_0x500069(0x204)](LOG_PREFIX+_0x500069(0x143)+!!currentOptions);if(!overlayController||!currentOptions){console[_0x500069(0x204)](LOG_PREFIX+_0x500069(0x1f2));return;}const _0x328b9d=composeOverlayState(currentOptions);console[_0x500069(0x204)](LOG_PREFIX+_0x500069(0x1c5),JSON[_0x500069(0x1a1)](_0x328b9d,null,0x2)),overlayController[_0x500069(0x140)](_0x328b9d),console[_0x500069(0x204)](LOG_PREFIX+_0x500069(0x13e));}function composeOverlayState(_0x3011cf){const _0x1f9d42=_0x40a848,_0x169692=getEnhancementUrl();return console['log'](LOG_PREFIX+_0x1f9d42(0x10e)+_0x169692),console[_0x1f9d42(0x204)](LOG_PREFIX+_0x1f9d42(0x1d1)+state[_0x1f9d42(0x183)]),console[_0x1f9d42(0x204)](LOG_PREFIX+_0x1f9d42(0x12c)+state[_0x1f9d42(0x113)]),{'enhancementUrl':_0x169692,'enabled':state[_0x1f9d42(0x183)],'controlled':state[_0x1f9d42(0x113)],'overlayPosition':_0x3011cf[_0x1f9d42(0x174)][_0x1f9d42(0x1e6)],'securityMode':_0x3011cf[_0x1f9d42(0x187)],'backendBaseUrl':_0x3011cf[_0x1f9d42(0x17a)],'appError':state[_0x1f9d42(0x15c)]};}async function setupRemoteHMR(_0x2b84e6){const _0x5b7e28=_0x40a848;console[_0x5b7e28(0x204)](LOG_PREFIX+'\x20setupRemoteHMR()\x20for\x20'+_0x2b84e6);if(typeof window===_0x5b7e28(0x129))return;try{const _0x2b0311=new URL(_0x2b84e6,window[_0x5b7e28(0x10c)]['origin']),_0x1e41a9=_0x2b0311[_0x5b7e28(0x1f3)];console[_0x5b7e28(0x204)](LOG_PREFIX+'\x20Overlay\x20origin:\x20'+_0x1e41a9+_0x5b7e28(0x10a)+window[_0x5b7e28(0x10c)][_0x5b7e28(0x1f3)]);if(_0x1e41a9===window['location'][_0x5b7e28(0x1f3)]){console[_0x5b7e28(0x204)](LOG_PREFIX+_0x5b7e28(0x145));return;}console[_0x5b7e28(0x204)](LOG_PREFIX+_0x5b7e28(0x11a)),await ensureReactRefreshPreamble(_0x1e41a9),await ensureViteClient(_0x1e41a9),console[_0x5b7e28(0x204)](LOG_PREFIX+_0x5b7e28(0x1a0));}catch(_0x3a983f){console[_0x5b7e28(0x1dc)](LOG_PREFIX+'\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):',_0x3a983f);}}async function ensureReactRefreshPreamble(_0x1be4c0){const _0x130761=_0x40a848;window[_0x130761(0x1fe)]??=new Set();if(window[_0x130761(0x1fe)][_0x130761(0x205)](_0x1be4c0)){console[_0x130761(0x204)](LOG_PREFIX+'\x20React\x20Refresh\x20already\x20installed\x20for\x20'+_0x1be4c0);return;}console[_0x130761(0x204)](LOG_PREFIX+_0x130761(0x15a)+_0x1be4c0+_0x130761(0x177));const _0x13d196=await import(_0x1be4c0+_0x130761(0x179)),_0x2313dd=_0x13d196&&typeof _0x13d196===_0x130761(0x152)&&_0x130761(0x132)in _0x13d196?_0x13d196['default']:_0x13d196;if(!isRefreshRuntime(_0x2313dd)){console['warn'](LOG_PREFIX+_0x130761(0x1ab));return;}_0x2313dd[_0x130761(0x12a)](window),window['$RefreshReg$']=()=>{},window[_0x130761(0x176)]=()=>_0x28e692=>_0x28e692,window[_0x130761(0x1a8)]=!![],window[_0x130761(0x1fe)][_0x130761(0x1aa)](_0x1be4c0),console[_0x130761(0x204)](LOG_PREFIX+'\x20React\x20Refresh\x20runtime\x20installed\x20for\x20'+_0x1be4c0);}async function ensureViteClient(_0x3d8a74){const _0x747669=_0x40a848;window[_0x747669(0x1e4)]??=new Set();if(window[_0x747669(0x1e4)][_0x747669(0x205)](_0x3d8a74)){console['log'](LOG_PREFIX+_0x747669(0x11f)+_0x3d8a74);return;}console[_0x747669(0x204)](LOG_PREFIX+_0x747669(0x125)+_0x3d8a74+_0x747669(0x177)),await import(_0x3d8a74+_0x747669(0x1ad)),window[_0x747669(0x1e4)][_0x747669(0x1aa)](_0x3d8a74),console[_0x747669(0x204)](LOG_PREFIX+'\x20Vite\x20HMR\x20client\x20loaded\x20for\x20'+_0x3d8a74);}function isRefreshRuntime(_0x4760c6){const _0x166f7b=_0x40a848;return typeof _0x4760c6==='object'&&_0x4760c6!==null&&_0x166f7b(0x12a)in _0x4760c6&&typeof _0x4760c6[_0x166f7b(0x12a)]===_0x166f7b(0x1b3);}var WORKER_MESSAGE_CONFIG='enhance:configure',WORKER_MESSAGE_DISABLE=_0x40a848(0x175),LOG_PREFIX2=_0x40a848(0x1ef),registration=null,currentOptions2=null;function _0x4d27(_0x35a4bd,_0x3bd94e){_0x35a4bd=_0x35a4bd-0x10a;const _0x59e8b7=_0x59e8();let _0x4d2732=_0x59e8b7[_0x35a4bd];return _0x4d2732;}async function registerServiceWorker(_0xf3424a){const _0x2ca286=_0x40a848;console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x1c6)),console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x178)+_0xf3424a[_0x2ca286(0x1c4)]);if(!(_0x2ca286(0x1ca)in navigator)){console[_0x2ca286(0x1dc)](LOG_PREFIX2+_0x2ca286(0x1da));return;}console[_0x2ca286(0x204)](LOG_PREFIX2+'\x20Service\x20workers\x20supported');const _0xce946c=navigator[_0x2ca286(0x1ca)][_0x2ca286(0x1a3)];console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x1bd),_0xce946c?.[_0x2ca286(0x207)]??'none'),console[_0x2ca286(0x204)](LOG_PREFIX2+'\x20Controller\x20state:',_0xce946c?.[_0x2ca286(0x15f)]??_0x2ca286(0x1a9));const _0x5b3f14=!!_0xce946c;currentOptions2=_0xf3424a,console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x164));const _0x297a60=await detectBlockingServiceWorker(_0xf3424a[_0x2ca286(0x1c4)]);if(_0x297a60){console[_0x2ca286(0x126)](LOG_PREFIX2+_0x2ca286(0x161)+_0x297a60),console[_0x2ca286(0x126)](LOG_PREFIX2+_0x2ca286(0x1e7));return;}console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x1be));try{console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x169)+_0xf3424a[_0x2ca286(0x1c4)]+'\x20with\x20scope\x20\x27/\x27...'),registration=await navigator['serviceWorker'][_0x2ca286(0x19b)](_0xf3424a[_0x2ca286(0x1c4)],{'scope':'/'}),console[_0x2ca286(0x204)](LOG_PREFIX2+'\x20Registration\x20returned:',{'scope':registration[_0x2ca286(0x196)],'active':registration['active']?.[_0x2ca286(0x207)],'waiting':registration[_0x2ca286(0x134)]?.['scriptURL'],'installing':registration[_0x2ca286(0x19d)]?.[_0x2ca286(0x207)]}),console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x1d2));const _0x1230b9=await navigator[_0x2ca286(0x1ca)]['ready'];console['log'](LOG_PREFIX2+_0x2ca286(0x19f),_0x1230b9[_0x2ca286(0x114)]?.[_0x2ca286(0x207)]);const _0x172e61=ownsCurrentController(_0xf3424a['swPath']);state[_0x2ca286(0x113)]=_0x172e61,console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x1d4)+_0x172e61),console['log'](LOG_PREFIX2+_0x2ca286(0x19a),navigator[_0x2ca286(0x1ca)][_0x2ca286(0x1a3)]?.[_0x2ca286(0x207)]??_0x2ca286(0x16b));if(!_0x5b3f14&&!navigator[_0x2ca286(0x1ca)]['controller']){console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x11b)),window[_0x2ca286(0x10c)][_0x2ca286(0x122)]();return;}console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x1b4)),await sendConfiguration();if(state[_0x2ca286(0x183)]){const _0x3138cc=document[_0x2ca286(0x12b)](_0x2ca286(0x17b))!==null;console[_0x2ca286(0x204)](LOG_PREFIX2+'\x20Enhancement\x20detection:\x20wasEnhanced='+_0x3138cc);if(!_0x3138cc){console[_0x2ca286(0x204)](LOG_PREFIX2+'\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement'),window[_0x2ca286(0x10c)][_0x2ca286(0x122)]();return;}}console[_0x2ca286(0x204)](LOG_PREFIX2+'\x20Updating\x20overlay...'),updateOverlay(),console[_0x2ca286(0x204)](LOG_PREFIX2+_0x2ca286(0x173));}catch(_0x77fcb0){console[_0x2ca286(0x126)](LOG_PREFIX2+_0x2ca286(0x15e),_0x77fcb0);}}async function sendConfiguration(){const _0x4f66f6=_0x40a848;console['log'](LOG_PREFIX2+'\x20sendConfiguration()\x20called'),console[_0x4f66f6(0x204)](LOG_PREFIX2+_0x4f66f6(0x1fa)+state[_0x4f66f6(0x183)]+_0x4f66f6(0x115)+!!currentOptions2);if(!state[_0x4f66f6(0x183)]||!currentOptions2){console['log'](LOG_PREFIX2+_0x4f66f6(0x17d));return;}const _0x5eba52=await resolveWorker();if(!_0x5eba52){console[_0x4f66f6(0x1dc)](LOG_PREFIX2+_0x4f66f6(0x12e));return;}const _0x1d845c={'callbackBypass':currentOptions2['callbackBypass'],'securityMode':currentOptions2[_0x4f66f6(0x187)]};console[_0x4f66f6(0x204)](LOG_PREFIX2+_0x4f66f6(0x1cb),JSON[_0x4f66f6(0x1a1)](_0x1d845c,null,0x2)),_0x5eba52['postMessage']({'type':WORKER_MESSAGE_CONFIG,'config':_0x1d845c}),console[_0x4f66f6(0x204)](LOG_PREFIX2+_0x4f66f6(0x1c0));}async function unregisterServiceWorker(_0x50ddf5){const _0x509950=_0x40a848;console[_0x509950(0x204)](LOG_PREFIX2+_0x509950(0x16d));if(!(_0x509950(0x1ca)in navigator)){console[_0x509950(0x204)](LOG_PREFIX2+'\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister');return;}try{const _0x2a27c6=registration??await navigator['serviceWorker'][_0x509950(0x1b1)]('/');if(!_0x2a27c6){console[_0x509950(0x204)](LOG_PREFIX2+_0x509950(0x19e));return;}console[_0x509950(0x204)](LOG_PREFIX2+_0x509950(0x18e),{'scope':_0x2a27c6['scope'],'active':_0x2a27c6[_0x509950(0x114)]?.['scriptURL'],'waiting':_0x2a27c6[_0x509950(0x134)]?.['scriptURL'],'installing':_0x2a27c6[_0x509950(0x19d)]?.['scriptURL']});const _0x4f39cb=[_0x2a27c6[_0x509950(0x114)]?.[_0x509950(0x207)],_0x2a27c6['waiting']?.[_0x509950(0x207)],_0x2a27c6[_0x509950(0x19d)]?.[_0x509950(0x207)]],_0x301e65=_0x4f39cb[_0x509950(0x1cd)](_0xf312ef=>_0xf312ef&&ownsServiceWorker(_0xf312ef,_0x50ddf5));if(!_0x301e65){console[_0x509950(0x204)](LOG_PREFIX2+_0x509950(0x1c1));return;}_0x2a27c6[_0x509950(0x114)]&&(console[_0x509950(0x204)](LOG_PREFIX2+_0x509950(0x18a)),_0x2a27c6['active']['postMessage']({'type':WORKER_MESSAGE_DISABLE})),console[_0x509950(0x204)](LOG_PREFIX2+'\x20Unregistering\x20SW...'),await _0x2a27c6[_0x509950(0x17c)](),registration=null,currentOptions2=null,console['log'](LOG_PREFIX2+_0x509950(0x202));}catch(_0x3c2b9c){console[_0x509950(0x126)](LOG_PREFIX2+_0x509950(0x151),_0x3c2b9c);}}function ownsServiceWorker(_0x445701,_0x5b5b03){const _0x3dd1f1=_0x40a848,_0x1c3708=typeof window!==_0x3dd1f1(0x129)?window[_0x3dd1f1(0x10c)]['origin']:'',_0x29fa0f=new URL(_0x5b5b03,_0x1c3708||void 0x0)['href'],_0x1fa340=_0x445701===_0x29fa0f||_0x445701[_0x3dd1f1(0x1d5)](_0x3dd1f1(0x14e));return console['log'](LOG_PREFIX2+_0x3dd1f1(0x1c3)+_0x445701+',\x20expected='+_0x29fa0f+_0x3dd1f1(0x1d0)+_0x1fa340),_0x1fa340;}function ownsCurrentController(_0x149eb0){const _0x467f9d=_0x40a848;if(typeof navigator==='undefined')return![];const _0x2fec0f=navigator[_0x467f9d(0x1ca)]?.[_0x467f9d(0x1a3)];if(!_0x2fec0f)return console['log'](LOG_PREFIX2+_0x467f9d(0x1f9)),![];return ownsServiceWorker(_0x2fec0f[_0x467f9d(0x207)],_0x149eb0);}async function detectBlockingServiceWorker(_0x42ea2d){const _0x3539ac=_0x40a848;if(!navigator[_0x3539ac(0x1ca)])return null;try{const _0x5aa0b7=await navigator[_0x3539ac(0x1ca)][_0x3539ac(0x1b1)]('/');console[_0x3539ac(0x204)](LOG_PREFIX2+_0x3539ac(0x18d),_0x5aa0b7?.[_0x3539ac(0x114)]?.[_0x3539ac(0x207)]??_0x3539ac(0x16b));const _0x4eb20c=_0x5aa0b7?.[_0x3539ac(0x114)]?.['scriptURL'];if(!_0x4eb20c)return null;if(ownsServiceWorker(_0x4eb20c,_0x42ea2d))return null;return _0x4eb20c;}catch(_0x4efa09){return console[_0x3539ac(0x126)](LOG_PREFIX2+_0x3539ac(0x165),_0x4efa09),null;}}async function resolveWorker(){const _0x340dda=_0x40a848,_0x3e7874=registration??await navigator[_0x340dda(0x1ca)]?.[_0x340dda(0x1b1)]('/'),_0x37b086=_0x3e7874?.[_0x340dda(0x114)]??_0x3e7874?.['waiting']??_0x3e7874?.[_0x340dda(0x19d)]??null;return console[_0x340dda(0x204)](LOG_PREFIX2+_0x340dda(0x190),_0x37b086?.['scriptURL']??_0x340dda(0x16b),'state:\x20'+(_0x37b086?.[_0x340dda(0x15f)]??_0x340dda(0x1a9))),_0x37b086;}function _0x59e8(){const _0xa6d139=['\x20Vite\x20client\x20already\x20loaded\x20for\x20','25151477VqbFRT','Print\x20the\x20current\x20asset\x20manifest','reload','\x20Overlay\x20controller\x20initialized\x20and\x20cached','bottom-right','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','error','false','__development','undefined','injectIntoGlobalHook','querySelector','\x20composeOverlayState\x20-\x20state.controlled:\x20','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','\x20No\x20service\x20worker\x20active\x20to\x20configure','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','digest','skipped','default','option','waiting','3487056miJjfd','^4.1.1','\x20Module\x20imported\x20in\x20','off','110eMJFpn','\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners','\x20enhancementUrl:\x20','disable','753582FhFhLM','\x20Overlay\x20update\x20complete','__enhanceController','update','vite:error','__enhanceInitialized','\x20currentOptions\x20exists:\x20','\x20Normalized\x20options:','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','../dist/index.js','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','./dev/index.js','prepare-sw','trim','[Enhance\x20Runtime]','runtimeURL','\x20Calling\x20createOverlay()...','sw-enhance','2trKZTg','\x20Available\x20exports:','\x20Failed\x20to\x20unregister\x20service\x20worker:','object','Override\x20the\x20service\x20worker\x20output\x20filename\x20(defaults\x20to\x20sw-enhance.js)','toLowerCase','\x20Setting\x20up\x20remote\x20HMR...','\x20Vite\x20error\x20detected:','sw-enhance.js','override','options','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20','stdout','appError','replace','\x20Failed\x20to\x20register\x20service\x20worker:','state','^7.2.4','\x20BLOCKING\x20SW\x20detected:\x20','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','title','\x20Checking\x20for\x20blocking\x20service\x20worker...','\x20detectBlocking\x20error:','base64','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','publicDir','\x20Registering\x20SW\x20at\x20','\x20Calling\x20updateOverlay()...','none','command','\x20unregisterServiceWorker()\x20called','get','write','\x20No\x20window\x20object\x20-\x20skipping','0.0.0','version','\x20registerServiceWorker()\x20complete','overlay','enhance:disable','$RefreshSig$','...','\x20swPath:\x20','/@react-refresh','backendUrl','[data-enhance-runtime-bootstrap]','unregister','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','30295IFkBdy','Skipped\x20','onToggle','bun\x20version\x20patch\x20--no-git-tag-version','sha256','enabled','18RwmYIW','6srYwAZ','7719817PrfFtB','security','history','\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','message','err','\x20detectBlocking\x20-\x20existing\x20registration:','\x20Found\x20registration:','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','\x20resolveWorker:','copyFile','string','push','createOverlay','parseAsync','scope','^24.10.1','0.3.20','/assets/enhance-runtime.js','\x20Current\x20controller\x20after\x20ready:','register','code','installing','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister','\x20SW\x20ready!\x20Active:','\x20HMR\x20setup\x20complete','stringify','^11.1.0','controller','ENHANCE_OVERLAY_PATH=https://assets-dev.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','\x20loadOverlay()\x20called','searchParams','swFilename','__vite_plugin_react_preamble_installed__','N/A','add','\x20Invalid\x20React\x20Refresh\x20runtime','12SaJRXD','/@vite/client','manifestPath','\x20Module\x20exports:','now','getRegistration','relativeDestination','function','\x20Sending\x20customer\x20configuration...','\x20Failed\x20to\x20import/create\x20overlay:','dev/','\x20enableViteHmr:\x20','permissive','\x20Current\x20URL:\x20','vite:beforeUpdate','__enhanceOptions','assets/enhance-runtime.js','\x20Current\x20controller:','\x20No\x20blocking\x20SW\x20found','./dev/vite/index.d.ts','\x20Config\x20sent\x20to\x20SW','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','sourcePath','\x20ownsServiceWorker?\x20scriptURL=','swPath','\x20Updating\x20overlay\x20with\x20state:','\x20registerServiceWorker()\x20called','destinationPath','description','788BhmyCf','serviceWorker','\x20Sending\x20customer\x20config\x20to\x20SW:','tsc\x20--noEmit','some','href','./dev/vite/index.js',',\x20owns=','\x20composeOverlayState\x20-\x20state.enabled:\x20','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','\x20Document\x20readyState:\x20','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','includes','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','/sw-enhance.js','\x20loadOverlay()\x20complete','enhancement','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser','startsWith','warn','Enhance\x20sandbox\x20utility\x20CLI','./dev/index.d.ts','info','\x20overlayPath:\x20','enhancementUrl','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','action','__viteHMRLoaded','\x20enhancementId:\x20','position','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','Copy\x20the\x20service\x20worker\x20and\x20overlay\x20bundle\x20into\x20a\x20public\x20directory','^8.5.1','name','\x20overlayController\x20exists:\x20','enableViteHmr','\x20→\x20','overlayPath','[Enhance\x20SW-Client]','\x20Raw\x20options:','requiredOption','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','origin','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','\x20init()\x20called\x20at\x20','\x20First\x20initialization','keys','\x20Starting\x20SW\x20registration\x20(async)...','\x20No\x20current\x20controller','\x20state.enabled:\x20','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','./dev/cli.js','Copied\x20','__enhanceReactRefreshInstalledOrigins','public','\x20init()\x20complete\x20-\x20enhancement\x20mode','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','\x20SW\x20unregistered\x20successfully','1006390MxnFvY','log','has','[Enhance\x20Overlay]','scriptURL','readFile',',\x20page\x20origin:\x20','enhance','location','\x20Unregistering\x20any\x20existing\x20SW...','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','\x20updateOverlay()\x20called','\x20Module\x20missing\x20createOverlay\x20export!','callbackBypass','toString','controlled','active',',\x20currentOptions:\x20','http://','890268wtbsti','https://assets.enhancelabs.ai/overlay.js','readyState','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','explicitDisable','all','__enhanceOverlay'];_0x59e8=function(){return _0xa6d139;};return _0x59e8();}var LOG_PREFIX3=_0x40a848(0x14b);function isInitialized(){const _0x2bf8c0=_0x40a848;return typeof window!=='undefined'&&window[_0x2bf8c0(0x142)]===!![];}function setInitialized(_0x595b1e){typeof window!=='undefined'&&(window['__enhanceInitialized']=_0x595b1e);}function getOptions(){const _0x113a14=_0x40a848;return typeof window!==_0x113a14(0x129)?window[_0x113a14(0x1bb)]??null:null;}function setOptions(_0x3783f5){const _0x495c8f=_0x40a848;typeof window!==_0x495c8f(0x129)&&(window[_0x495c8f(0x1bb)]=_0x3783f5);}var Enhance={'init'(_0x21cabb={}){const _0x3bda3b=_0x40a848,_0x15a517=Date[_0x3bda3b(0x1b0)]();console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x1f5)+_0x15a517),console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x1b9)+window[_0x3bda3b(0x10c)][_0x3bda3b(0x1ce)]),console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x1d3)+document[_0x3bda3b(0x119)]),console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x1f0),JSON[_0x3bda3b(0x1a1)](_0x21cabb,null,0x2));if(isInitialized())return console[_0x3bda3b(0x1dc)](LOG_PREFIX3+_0x3bda3b(0x1f4)),window[_0x3bda3b(0x13f)]??createController();setInitialized(!![]),console['log'](LOG_PREFIX3+_0x3bda3b(0x1f6));const _0x14adf7=normalizeOptions(_0x21cabb);setOptions(_0x14adf7),console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x144),JSON['stringify'](_0x14adf7,null,0x2));const _0x3394f9=parseUrlParams();console[_0x3bda3b(0x204)](LOG_PREFIX3+'\x20URL\x20params\x20parsed:',JSON[_0x3bda3b(0x1a1)](_0x3394f9,null,0x2));if(_0x3394f9[_0x3bda3b(0x11c)])return cleanUrlParam('enhance'),console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x18f)),createController();if(_0x3394f9['hasEnhancement'])return console[_0x3bda3b(0x204)](LOG_PREFIX3+'\x20Enhancement\x20mode\x20ENABLED'),console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x13b)+_0x3394f9[_0x3bda3b(0x1e1)]),console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x1e5)+_0x3394f9['enhancementId']),state[_0x3bda3b(0x183)]=!![],console[_0x3bda3b(0x204)](LOG_PREFIX3+'\x20Starting\x20overlay\x20load\x20(async)...'),void loadOverlay({'overlayPath':_0x14adf7[_0x3bda3b(0x1ee)],'enableViteHmr':_0x14adf7[_0x3bda3b(0x174)][_0x3bda3b(0x1ec)],'options':_0x14adf7,'onToggle':handleToggle}),console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x1f8)),void registerServiceWorker(_0x14adf7),console['log'](LOG_PREFIX3+_0x3bda3b(0x200)),createController();return console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x1d6)),console[_0x3bda3b(0x204)](LOG_PREFIX3+_0x3bda3b(0x10d)),void unregisterServiceWorker(_0x14adf7[_0x3bda3b(0x1c4)]),console[_0x3bda3b(0x204)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20normal\x20mode'),import.meta.hot&&(console['log'](LOG_PREFIX3+_0x3bda3b(0x13a)),import.meta.hot['on'](_0x3bda3b(0x141),_0x5e74ca=>{const _0x4f37f5=_0x3bda3b;console[_0x4f37f5(0x204)](LOG_PREFIX3+_0x4f37f5(0x156),_0x5e74ca),state['appError']={'message':_0x5e74ca[_0x4f37f5(0x18c)][_0x4f37f5(0x18b)]},updateOverlay();}),import.meta.hot['on'](_0x3bda3b(0x1ba),()=>{const _0x8d6f0f=_0x3bda3b;state[_0x8d6f0f(0x15c)]&&(console[_0x8d6f0f(0x204)](LOG_PREFIX3+_0x8d6f0f(0x201)),state['appError']=null,updateOverlay());})),createController();}};function createController(){const _0x53c5d5=_0x40a848,_0x4a49e9={'enable'(){const _0x51c40b=_0x4d27,_0x3dc164=getOptions();if(!_0x3dc164)return;state[_0x51c40b(0x183)]=!![],void loadOverlay({'overlayPath':_0x3dc164[_0x51c40b(0x1ee)],'enableViteHmr':_0x3dc164[_0x51c40b(0x174)][_0x51c40b(0x1ec)],'options':_0x3dc164,'onToggle':handleToggle}),void registerServiceWorker(_0x3dc164),void sendConfiguration(),updateOverlay();},'disable'(){const _0x231ca3=_0x4d27,_0x486dab=getOptions();if(!_0x486dab)return;state[_0x231ca3(0x183)]=![],state[_0x231ca3(0x113)]=![],updateOverlay(),void unregisterServiceWorker(_0x486dab['swPath']);},'status'(){const _0x16971e=_0x4d27;return{'enabled':state[_0x16971e(0x183)],'controlled':state[_0x16971e(0x113)]};}};return typeof window!==_0x53c5d5(0x129)&&(window[_0x53c5d5(0x13f)]=_0x4a49e9),_0x4a49e9;}function handleToggle(){const _0x289d45=_0x40a848,_0x2d8d95=createController();state[_0x289d45(0x183)]?_0x2d8d95[_0x289d45(0x13c)]():_0x2d8d95['enable']();}function parseUrlParams(){const _0x569e28=_0x40a848,_0x3c9674=new URL(window[_0x569e28(0x10c)][_0x569e28(0x1ce)]),_0x351063=_0x3c9674[_0x569e28(0x1a6)][_0x569e28(0x16e)](_0x569e28(0x10b))?.[_0x569e28(0x154)](),_0xe98cd4=_0x3c9674[_0x569e28(0x1a6)][_0x569e28(0x16e)](_0x569e28(0x1e1)),_0x1226d4=_0x3c9674[_0x569e28(0x1a6)][_0x569e28(0x16e)](_0x569e28(0x1d9));return{'hasEnhancement':Boolean(_0xe98cd4||_0x1226d4),'explicitDisable':_0x351063==='0'||_0x351063===_0x569e28(0x127)||_0x351063===_0x569e28(0x138),'enhancementUrl':_0xe98cd4,'enhancementId':_0x1226d4};}function cleanUrlParam(_0x3b9702){const _0x53e158=_0x40a848,_0x4bce08=new URL(window[_0x53e158(0x10c)][_0x53e158(0x1ce)]);_0x4bce08[_0x53e158(0x1a6)][_0x53e158(0x205)](_0x3b9702)&&(_0x4bce08['searchParams']['delete'](_0x3b9702),window[_0x53e158(0x188)]['replaceState'](null,document[_0x53e158(0x163)],_0x4bce08[_0x53e158(0x112)]()));}var package_default={'name':'@enhance-eng/sandbox','version':_0x40a848(0x198),'type':'module','description':_0x40a848(0x1fb),'license':'MIT','main':'./dev/index.js','module':'./dev/index.js','types':_0x40a848(0x1de),'exports':{'.':{'types':'./dev/index.d.ts','import':_0x40a848(0x148)},'./vite':{'types':_0x40a848(0x1bf),'import':_0x40a848(0x1cf)}},'files':[_0x40a848(0x1b6)],'bin':{'enhance-sandbox':_0x40a848(0x1fc)},'scripts':{'typecheck':_0x40a848(0x1cc),'dev':_0x40a848(0x147),'dev:build':_0x40a848(0x12d),'dev:staging':_0x40a848(0x1e2),'dev:staging:build':_0x40a848(0x162),'build':_0x40a848(0x12f),'build:release':'ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','build:release:dev':_0x40a848(0x1a4),'version':_0x40a848(0x181)},'dependencies':{'commander':_0x40a848(0x1a2),'zod':'^3.22.4'},'devDependencies':{'@types/node':_0x40a848(0x197),'javascript-obfuscator':_0x40a848(0x136),'tsup':_0x40a848(0x1e9),'vite':_0x40a848(0x160)},'publishConfig':{'access':_0x40a848(0x1ff)}},DEFAULT_SERVICE_WORKER_PATH=_0x40a848(0x1d7),DEFAULT_RUNTIME_PATH=_0x40a848(0x199),DIST_SERVICE_WORKER_PATH=_0x40a848(0x157),DIST_RUNTIME_PATH=_0x40a848(0x1bc),PACKAGE_VERSION=typeof package_default[_0x40a848(0x172)]===_0x40a848(0x192)?package_default['version']:_0x40a848(0x171);function normalizeAssetPath(_0x335b5b){const _0x59149a=_0x40a848;if(!_0x335b5b)return _0x335b5b;if(_0x335b5b[_0x59149a(0x1db)](_0x59149a(0x116))||_0x335b5b[_0x59149a(0x1db)]('https://'))return _0x335b5b;const _0x110498=_0x335b5b[_0x59149a(0x15d)](/^\.\//,'');return _0x110498[_0x59149a(0x1db)]('/')?_0x110498:'/'+_0x110498;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x316ca0){return Enhance['init'](_0x316ca0);},'serviceWorkerURL'(){return defaultSwPath;},'runtimeURL'(){return defaultRuntimePath;},'assetManifest'(){return getAssetManifest();}};function getAssetManifest(){return{'version':PACKAGE_VERSION,'serviceWorker':serviceWorkerURL(),'runtime':runtimeURL(),'serviceWorkerDigest':null,'runtimeDigest':null};}function serviceWorkerURL(){return Enhance2['serviceWorkerURL']();}function runtimeURL(){const _0x55988b=_0x40a848;return Enhance2[_0x55988b(0x14c)]();}import{promises as _0x3b6127}from'fs';import{createHash}from'crypto';import{dirname,join}from'path';import{fileURLToPath}from'url';var distDir=dirname(fileURLToPath(new URL(_0x40a848(0x146),import.meta.url)));async function syncAssets(_0x19e5df){const _0x1257f6=_0x40a848,_0x17ce59=[{'sourcePath':DIST_SERVICE_WORKER_PATH,'manifestPath':normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),'override':_0x19e5df[_0x1257f6(0x1a7)]?'./'+_0x19e5df[_0x1257f6(0x1a7)]:void 0x0},{'sourcePath':DIST_RUNTIME_PATH,'manifestPath':normalizeAssetPath(DEFAULT_RUNTIME_PATH)}],_0x3e3350=[];for(const _0xc1d0da of _0x17ce59){const _0x5c3880=cleanRelativePath(_0xc1d0da[_0x1257f6(0x158)]??_0xc1d0da[_0x1257f6(0x1ae)]),_0x58a93c=join(distDir,cleanRelativePath(_0xc1d0da[_0x1257f6(0x1c2)])),_0x453945=join(_0x19e5df[_0x1257f6(0x168)],_0x5c3880),[_0x58c633,_0x4ddbaa]=await Promise[_0x1257f6(0x11d)]([readDigest(_0x58a93c),readDigest(_0x453945)]);if(_0x58c633&&_0x4ddbaa&&_0x58c633===_0x4ddbaa){_0x3e3350[_0x1257f6(0x193)]({'sourcePath':_0x58a93c,'destinationPath':_0x453945,'relativeDestination':_0x5c3880,'status':_0x1257f6(0x131)});continue;}await _0x3b6127['mkdir'](dirname(_0x453945),{'recursive':!![]}),await _0x3b6127[_0x1257f6(0x191)](_0x58a93c,_0x453945),_0x3e3350[_0x1257f6(0x193)]({'sourcePath':_0x58a93c,'destinationPath':_0x453945,'relativeDestination':_0x5c3880,'status':'copied'});}return _0x3e3350;}function cleanRelativePath(_0x4812ac){return _0x4812ac['replace'](/^[./]+/,'');}async function readDigest(_0x336551){const _0x2f1936=_0x40a848;try{const _0xa9c403=await _0x3b6127[_0x2f1936(0x208)](_0x336551);return createHash(_0x2f1936(0x182))[_0x2f1936(0x140)](_0xa9c403)[_0x2f1936(0x130)](_0x2f1936(0x166));}catch(_0x4dab6d){if(_0x4dab6d[_0x2f1936(0x19c)]==='ENOENT')return null;throw _0x4dab6d;}}var program=new Command();program[_0x40a848(0x1ea)]('enhance-sandbox')[_0x40a848(0x1c8)](_0x40a848(0x1dd))[_0x40a848(0x172)](_0x40a848(0x171)),program['command']('manifest')[_0x40a848(0x1c8)](_0x40a848(0x121))[_0x40a848(0x1e3)](()=>{const _0x37c56b=_0x40a848,_0x8bda7b=getAssetManifest();process[_0x37c56b(0x15b)][_0x37c56b(0x16f)](JSON['stringify'](_0x8bda7b,null,0x2)+'\x0a');}),program[_0x40a848(0x16c)](_0x40a848(0x149))['description'](_0x40a848(0x1e8))[_0x40a848(0x1f1)]('--public-dir\x20<path>','Directory\x20to\x20copy\x20the\x20service\x20worker\x20into')[_0x40a848(0x133)]('--filename\x20<name>',_0x40a848(0x153))[_0x40a848(0x1e3)](async _0xc75a10=>{const _0x37ae6c=_0x40a848,_0x436351=resolve(process['cwd'](),_0xc75a10[_0x37ae6c(0x168)]),_0x11a07b=await syncAssets({'publicDir':_0x436351,'swFilename':_0xc75a10['filename']});for(const _0x3530b0 of _0x11a07b){const _0x1d12bf=relative(process['cwd'](),_0x3530b0[_0x37ae6c(0x1c7)]);_0x3530b0['status']==='skipped'?process[_0x37ae6c(0x15b)][_0x37ae6c(0x16f)](_0x37ae6c(0x17f)+_0x3530b0['relativeDestination']+'\x20(already\x20current)\x20['+_0x1d12bf+']\x0a'):process[_0x37ae6c(0x15b)][_0x37ae6c(0x16f)](_0x37ae6c(0x1fd)+_0x3530b0[_0x37ae6c(0x1b2)]+_0x37ae6c(0x1ed)+_0x1d12bf+'\x0a');}}),program[_0x40a848(0x195)]();
package/dist/index.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  type SecurityMode$1 = "permissive" | "custom";
2
2
 
3
3
  type RawOptions = {
4
- callbackBypass: string[];
4
+ callbackBypass?: string[];
5
5
  __development?: {
6
6
  enableOverlayHmr?: boolean;
7
7
  overlayPath?: string;
8
- security?: 'permissive' | 'custom';
8
+ security?: "permissive" | "custom";
9
9
  backendUrl?: string;
10
10
  };
11
11
  };
@@ -13,19 +13,19 @@ type NormalizedOptions = {
13
13
  callbackBypass: string[];
14
14
  overlay: {
15
15
  enabled: true;
16
- position: 'bottom-right';
16
+ position: "bottom-right";
17
17
  enableViteHmr: boolean;
18
18
  };
19
- logLevel: 'info';
20
- swPath: '/sw-enhance.js';
19
+ logLevel: "info";
20
+ swPath: "/sw-enhance.js";
21
21
  overlayPath: string;
22
- runtimeScriptPath: '/assets/enhance-runtime.js';
22
+ runtimeScriptPath: "/assets/enhance-runtime.js";
23
23
  security: SecurityMode$1;
24
24
  backendUrl: string;
25
25
  };
26
26
 
27
- type OverlayPosition = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
28
- type SecurityMode = 'permissive' | 'custom';
27
+ type OverlayPosition = "top-left" | "top-right" | "bottom-left" | "bottom-right";
28
+ type SecurityMode = "permissive" | "custom";
29
29
  interface OverlayState {
30
30
  enhancementUrl: string;
31
31
  enabled: boolean;
@@ -79,7 +79,7 @@ declare global {
79
79
  * Main entry point - the only public API.
80
80
  */
81
81
  declare const Enhance$1: {
82
- init(rawOptions: RawOptions): EnhanceController;
82
+ init(rawOptions?: RawOptions): EnhanceController;
83
83
  };
84
84
 
85
85
  interface EnhanceAssetManifest {
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- const _0x52068d=_0xaac0;(function(_0x5a22c7,_0x4b29a9){const _0x163b51=_0xaac0,_0x2b9c5d=_0x5a22c7();while(!![]){try{const _0x377e71=parseInt(_0x163b51(0x204))/0x1*(parseInt(_0x163b51(0x173))/0x2)+-parseInt(_0x163b51(0x203))/0x3*(-parseInt(_0x163b51(0x1ab))/0x4)+-parseInt(_0x163b51(0x220))/0x5+-parseInt(_0x163b51(0x1e5))/0x6+-parseInt(_0x163b51(0x19f))/0x7+parseInt(_0x163b51(0x1bc))/0x8*(-parseInt(_0x163b51(0x20b))/0x9)+parseInt(_0x163b51(0x206))/0xa*(parseInt(_0x163b51(0x183))/0xb);if(_0x377e71===_0x4b29a9)break;else _0x2b9c5d['push'](_0x2b9c5d['shift']());}catch(_0xb66699){_0x2b9c5d['push'](_0x2b9c5d['shift']());}}}(_0x238f,0xa3774));var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!=='undefined'?__ENHANCE_DEFAULT_OVERLAY_PATH__:_0x52068d(0x1f5),DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!==_0x52068d(0x1bf)?__ENHANCE_DEFAULT_BACKEND_URL__:_0x52068d(0x158),DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!==_0x52068d(0x1bf)?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console[_0x52068d(0x14d)](_0x52068d(0x1aa),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x191c5f){const _0x67b597=_0x52068d,_0x20b2fa=_0x191c5f[_0x67b597(0x205)]??{};return{'callbackBypass':_0x191c5f[_0x67b597(0x1f4)],'overlay':{'enabled':!![],'position':'bottom-right','enableViteHmr':_0x20b2fa[_0x67b597(0x14f)]??DEFAULT_OVERLAY_HMR},'logLevel':_0x67b597(0x208),'swPath':_0x67b597(0x152),'overlayPath':_0x20b2fa[_0x67b597(0x1b6)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x67b597(0x15f),'security':_0x20b2fa[_0x67b597(0x198)]??_0x67b597(0x224),'backendUrl':_0x20b2fa[_0x67b597(0x1b5)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0xb08de9=_0x52068d;try{const _0x2daa14=new URLSearchParams(window[_0xb08de9(0x1a1)][_0xb08de9(0x170)]);return _0x2daa14[_0xb08de9(0x21f)](_0xb08de9(0x182))?.[_0xb08de9(0x166)]()||'';}catch{return'';}}var LOG_PREFIX=_0x52068d(0x160),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x146de2){const _0x5a1cd6=_0x52068d;console[_0x5a1cd6(0x14d)](LOG_PREFIX+_0x5a1cd6(0x14e)),console['log'](LOG_PREFIX+_0x5a1cd6(0x189)+_0x146de2[_0x5a1cd6(0x1b6)]),console[_0x5a1cd6(0x14d)](LOG_PREFIX+_0x5a1cd6(0x1c9)+_0x146de2[_0x5a1cd6(0x157)]),currentOptions=_0x146de2[_0x5a1cd6(0x199)],toggleHandler=_0x146de2[_0x5a1cd6(0x18b)];if(overlayController){console[_0x5a1cd6(0x14d)](LOG_PREFIX+_0x5a1cd6(0x16e)),updateOverlay();return;}if(overlayLoadPromise)return console['log'](LOG_PREFIX+_0x5a1cd6(0x223)),overlayLoadPromise;console[_0x5a1cd6(0x14d)](LOG_PREFIX+_0x5a1cd6(0x1b0)),overlayLoadPromise=doLoadOverlay(_0x146de2);try{await overlayLoadPromise,console[_0x5a1cd6(0x14d)](LOG_PREFIX+_0x5a1cd6(0x16a));}catch(_0x489636){console[_0x5a1cd6(0x1c3)](LOG_PREFIX+_0x5a1cd6(0x191),_0x489636);}finally{overlayLoadPromise=null;}}function _0xaac0(_0x554986,_0x4f22fe){const _0x238f02=_0x238f();return _0xaac0=function(_0xaac07a,_0x31dc2e){_0xaac07a=_0xaac07a-0x14c;let _0x22c413=_0x238f02[_0xaac07a];return _0x22c413;},_0xaac0(_0x554986,_0x4f22fe);}async function doLoadOverlay(_0x1b3220){const _0xc5ad19=_0x52068d;console[_0xc5ad19(0x14d)](LOG_PREFIX+_0xc5ad19(0x15d));if(typeof window===_0xc5ad19(0x1bf)){console[_0xc5ad19(0x14d)](LOG_PREFIX+_0xc5ad19(0x164));return;}if(window['__enhanceOverlay']){console[_0xc5ad19(0x14d)](LOG_PREFIX+_0xc5ad19(0x1dd)),overlayController=window[_0xc5ad19(0x1ec)];return;}console[_0xc5ad19(0x14d)](LOG_PREFIX+_0xc5ad19(0x1f2));try{_0x1b3220[_0xc5ad19(0x157)]&&(console['log'](LOG_PREFIX+_0xc5ad19(0x1f9)),await setupRemoteHMR(_0x1b3220[_0xc5ad19(0x1b6)]));console[_0xc5ad19(0x14d)](LOG_PREFIX+'\x20Importing\x20overlay\x20module\x20from:\x20'+_0x1b3220[_0xc5ad19(0x1b6)]);const _0x5ba087=Date['now'](),_0xc77c03=await import(_0x1b3220['overlayPath']);console[_0xc5ad19(0x14d)](LOG_PREFIX+'\x20Module\x20imported\x20in\x20'+(Date[_0xc5ad19(0x14c)]()-_0x5ba087)+'ms'),console['log'](LOG_PREFIX+'\x20Module\x20exports:',Object[_0xc5ad19(0x1cd)](_0xc77c03));if(typeof _0xc77c03?.['createOverlay']!==_0xc5ad19(0x1a2)){console[_0xc5ad19(0x1c3)](LOG_PREFIX+'\x20Module\x20missing\x20createOverlay\x20export!'),console[_0xc5ad19(0x1c3)](LOG_PREFIX+_0xc5ad19(0x18f),Object[_0xc5ad19(0x1cd)](_0xc77c03));return;}console[_0xc5ad19(0x14d)](LOG_PREFIX+'\x20Calling\x20createOverlay()...');const _0x1b79f1=_0xc77c03[_0xc5ad19(0x192)]();console['log'](LOG_PREFIX+_0xc5ad19(0x195),_0x1b79f1),overlayController=_0x1b79f1,window[_0xc5ad19(0x1ec)]=_0x1b79f1,_0x1b79f1[_0xc5ad19(0x18b)](_0x1b3220['onToggle']),console[_0xc5ad19(0x14d)](LOG_PREFIX+'\x20Overlay\x20controller\x20initialized\x20and\x20cached'),console['log'](LOG_PREFIX+_0xc5ad19(0x207)),updateOverlay();}catch(_0x2abe51){console[_0xc5ad19(0x1c3)](LOG_PREFIX+'\x20Failed\x20to\x20import/create\x20overlay:',_0x2abe51);}}function updateOverlay(){const _0x5ee0f7=_0x52068d;console['log'](LOG_PREFIX+_0x5ee0f7(0x1ef)),console[_0x5ee0f7(0x14d)](LOG_PREFIX+_0x5ee0f7(0x1a9)+!!overlayController),console[_0x5ee0f7(0x14d)](LOG_PREFIX+_0x5ee0f7(0x150)+!!currentOptions);if(!overlayController||!currentOptions){console[_0x5ee0f7(0x14d)](LOG_PREFIX+_0x5ee0f7(0x1c1));return;}const _0x26bde1=composeOverlayState(currentOptions);console['log'](LOG_PREFIX+'\x20Updating\x20overlay\x20with\x20state:',JSON['stringify'](_0x26bde1,null,0x2)),overlayController[_0x5ee0f7(0x210)](_0x26bde1),console[_0x5ee0f7(0x14d)](LOG_PREFIX+_0x5ee0f7(0x1f3));}function composeOverlayState(_0x35065c){const _0x28e0f8=_0x52068d,_0x1a2507=getEnhancementUrl();return console[_0x28e0f8(0x14d)](LOG_PREFIX+_0x28e0f8(0x168)+_0x1a2507),console[_0x28e0f8(0x14d)](LOG_PREFIX+'\x20composeOverlayState\x20-\x20state.enabled:\x20'+state[_0x28e0f8(0x186)]),console[_0x28e0f8(0x14d)](LOG_PREFIX+_0x28e0f8(0x1b2)+state['controlled']),{'enhancementUrl':_0x1a2507,'enabled':state['enabled'],'controlled':state[_0x28e0f8(0x1d2)],'overlayPosition':_0x35065c[_0x28e0f8(0x1d1)][_0x28e0f8(0x15e)],'securityMode':_0x35065c[_0x28e0f8(0x198)],'backendBaseUrl':_0x35065c[_0x28e0f8(0x1b5)],'appError':state[_0x28e0f8(0x1b7)]};}async function setupRemoteHMR(_0x1e0567){const _0x10be87=_0x52068d;console['log'](LOG_PREFIX+'\x20setupRemoteHMR()\x20for\x20'+_0x1e0567);if(typeof window==='undefined')return;try{const _0x4eb482=new URL(_0x1e0567,window[_0x10be87(0x1a1)][_0x10be87(0x17b)]),_0x3a4936=_0x4eb482['origin'];console[_0x10be87(0x14d)](LOG_PREFIX+_0x10be87(0x196)+_0x3a4936+_0x10be87(0x161)+window[_0x10be87(0x1a1)][_0x10be87(0x17b)]);if(_0x3a4936===window['location'][_0x10be87(0x17b)]){console[_0x10be87(0x14d)](LOG_PREFIX+_0x10be87(0x1e6));return;}console['log'](LOG_PREFIX+_0x10be87(0x1d7)),await ensureReactRefreshPreamble(_0x3a4936),await ensureViteClient(_0x3a4936),console[_0x10be87(0x14d)](LOG_PREFIX+'\x20HMR\x20setup\x20complete');}catch(_0x30d95b){console[_0x10be87(0x16f)](LOG_PREFIX+_0x10be87(0x162),_0x30d95b);}}async function ensureReactRefreshPreamble(_0x1db696){const _0x258b54=_0x52068d;window[_0x258b54(0x1b3)]??=new Set();if(window['__enhanceReactRefreshInstalledOrigins']['has'](_0x1db696)){console['log'](LOG_PREFIX+_0x258b54(0x202)+_0x1db696);return;}console[_0x258b54(0x14d)](LOG_PREFIX+_0x258b54(0x19e)+_0x1db696+_0x258b54(0x1d8));const _0x26f987=await import(_0x1db696+_0x258b54(0x20f)),_0x4c3d18=_0x26f987&&typeof _0x26f987===_0x258b54(0x153)&&_0x258b54(0x1af)in _0x26f987?_0x26f987[_0x258b54(0x1af)]:_0x26f987;if(!isRefreshRuntime(_0x4c3d18)){console[_0x258b54(0x16f)](LOG_PREFIX+_0x258b54(0x211));return;}_0x4c3d18[_0x258b54(0x1f6)](window),window['$RefreshReg$']=()=>{},window['$RefreshSig$']=()=>_0x2ced93=>_0x2ced93,window[_0x258b54(0x21e)]=!![],window[_0x258b54(0x1b3)]['add'](_0x1db696),console[_0x258b54(0x14d)](LOG_PREFIX+_0x258b54(0x216)+_0x1db696);}async function ensureViteClient(_0x55c6c5){const _0x569edf=_0x52068d;window['__viteHMRLoaded']??=new Set();if(window[_0x569edf(0x214)][_0x569edf(0x169)](_0x55c6c5)){console[_0x569edf(0x14d)](LOG_PREFIX+'\x20Vite\x20client\x20already\x20loaded\x20for\x20'+_0x55c6c5);return;}console[_0x569edf(0x14d)](LOG_PREFIX+_0x569edf(0x17f)+_0x55c6c5+_0x569edf(0x1d8)),await import(_0x55c6c5+_0x569edf(0x1a7)),window[_0x569edf(0x214)][_0x569edf(0x1fc)](_0x55c6c5),console[_0x569edf(0x14d)](LOG_PREFIX+_0x569edf(0x221)+_0x55c6c5);}function isRefreshRuntime(_0x58cb73){const _0x2b5ff4=_0x52068d;return typeof _0x58cb73==='object'&&_0x58cb73!==null&&_0x2b5ff4(0x1f6)in _0x58cb73&&typeof _0x58cb73[_0x2b5ff4(0x1f6)]==='function';}var WORKER_MESSAGE_CONFIG='enhance:configure',WORKER_MESSAGE_DISABLE=_0x52068d(0x188),LOG_PREFIX2='[Enhance\x20SW-Client]',registration=null,currentOptions2=null;async function registerServiceWorker(_0x2de1f3){const _0x2697ea=_0x52068d;console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x18d)),console['log'](LOG_PREFIX2+_0x2697ea(0x1ca)+_0x2de1f3['swPath']);if(!(_0x2697ea(0x1b9)in navigator)){console[_0x2697ea(0x16f)](LOG_PREFIX2+'\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser');return;}console['log'](LOG_PREFIX2+_0x2697ea(0x1a0));const _0x41dc66=navigator[_0x2697ea(0x1b9)][_0x2697ea(0x1c5)];console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x1c8),_0x41dc66?.['scriptURL']??'none'),console['log'](LOG_PREFIX2+_0x2697ea(0x163),_0x41dc66?.[_0x2697ea(0x1ed)]??_0x2697ea(0x181));const _0x3fc567=!!_0x41dc66;currentOptions2=_0x2de1f3,console['log'](LOG_PREFIX2+_0x2697ea(0x178));const _0x4c3b38=await detectBlockingServiceWorker(_0x2de1f3[_0x2697ea(0x175)]);if(_0x4c3b38){console['error'](LOG_PREFIX2+_0x2697ea(0x1ac)+_0x4c3b38),console[_0x2697ea(0x1c3)](LOG_PREFIX2+_0x2697ea(0x200));return;}console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x194));try{console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x159)+_0x2de1f3[_0x2697ea(0x175)]+_0x2697ea(0x1d6)),registration=await navigator[_0x2697ea(0x1b9)][_0x2697ea(0x17c)](_0x2de1f3[_0x2697ea(0x175)],{'scope':'/'}),console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x15b),{'scope':registration['scope'],'active':registration[_0x2697ea(0x1a4)]?.['scriptURL'],'waiting':registration[_0x2697ea(0x1c4)]?.['scriptURL'],'installing':registration['installing']?.[_0x2697ea(0x172)]}),console['log'](LOG_PREFIX2+'\x20Waiting\x20for\x20navigator.serviceWorker.ready...');const _0x2d4642=await navigator[_0x2697ea(0x1b9)][_0x2697ea(0x1ea)];console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x201),_0x2d4642['active']?.[_0x2697ea(0x172)]);const _0x59bcde=ownsCurrentController(_0x2de1f3[_0x2697ea(0x175)]);state[_0x2697ea(0x1d2)]=_0x59bcde,console['log'](LOG_PREFIX2+_0x2697ea(0x1a6)+_0x59bcde),console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x16c),navigator[_0x2697ea(0x1b9)][_0x2697ea(0x1c5)]?.['scriptURL']??_0x2697ea(0x1ba));if(!_0x3fc567&&!navigator[_0x2697ea(0x1b9)]['controller']){console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x1fe)),window[_0x2697ea(0x1a1)][_0x2697ea(0x179)]();return;}console['log'](LOG_PREFIX2+_0x2697ea(0x1c2)),await sendConfiguration();if(state['enabled']){const _0x4870c9=document[_0x2697ea(0x1da)]('[data-enhance-runtime-bootstrap]')!==null;console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x17d)+_0x4870c9);if(!_0x4870c9){console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x17a)),window[_0x2697ea(0x1a1)]['reload']();return;}}console['log'](LOG_PREFIX2+_0x2697ea(0x1e2)),updateOverlay(),console[_0x2697ea(0x14d)](LOG_PREFIX2+_0x2697ea(0x21c));}catch(_0x278d29){console[_0x2697ea(0x1c3)](LOG_PREFIX2+_0x2697ea(0x1e3),_0x278d29);}}async function sendConfiguration(){const _0xb844e5=_0x52068d;console['log'](LOG_PREFIX2+_0xb844e5(0x225)),console['log'](LOG_PREFIX2+_0xb844e5(0x16d)+state[_0xb844e5(0x186)]+_0xb844e5(0x1cb)+!!currentOptions2);if(!state[_0xb844e5(0x186)]||!currentOptions2){console[_0xb844e5(0x14d)](LOG_PREFIX2+_0xb844e5(0x1c0));return;}const _0x3e5840=await resolveWorker();if(!_0x3e5840){console[_0xb844e5(0x16f)](LOG_PREFIX2+_0xb844e5(0x174));return;}const _0x709b65={'callbackBypass':currentOptions2['callbackBypass'],'securityMode':currentOptions2[_0xb844e5(0x198)]};console['log'](LOG_PREFIX2+_0xb844e5(0x19c),JSON[_0xb844e5(0x1d0)](_0x709b65,null,0x2)),_0x3e5840[_0xb844e5(0x212)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x709b65}),console['log'](LOG_PREFIX2+'\x20Config\x20sent\x20to\x20SW');}async function unregisterServiceWorker(_0x2c8456){const _0x124234=_0x52068d;console[_0x124234(0x14d)](LOG_PREFIX2+'\x20unregisterServiceWorker()\x20called');if(!('serviceWorker'in navigator)){console[_0x124234(0x14d)](LOG_PREFIX2+'\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister');return;}try{const _0x3a63af=registration??await navigator[_0x124234(0x1b9)][_0x124234(0x155)]('/');if(!_0x3a63af){console['log'](LOG_PREFIX2+_0x124234(0x1f0));return;}console[_0x124234(0x14d)](LOG_PREFIX2+_0x124234(0x1d5),{'scope':_0x3a63af[_0x124234(0x1c6)],'active':_0x3a63af[_0x124234(0x1a4)]?.[_0x124234(0x172)],'waiting':_0x3a63af[_0x124234(0x1c4)]?.[_0x124234(0x172)],'installing':_0x3a63af[_0x124234(0x217)]?.[_0x124234(0x172)]});const _0x469579=[_0x3a63af[_0x124234(0x1a4)]?.[_0x124234(0x172)],_0x3a63af[_0x124234(0x1c4)]?.['scriptURL'],_0x3a63af[_0x124234(0x217)]?.['scriptURL']],_0x251529=_0x469579[_0x124234(0x18e)](_0x7a0e9c=>_0x7a0e9c&&ownsServiceWorker(_0x7a0e9c,_0x2c8456));if(!_0x251529){console['log'](LOG_PREFIX2+_0x124234(0x185));return;}_0x3a63af[_0x124234(0x1a4)]&&(console[_0x124234(0x14d)](LOG_PREFIX2+_0x124234(0x20a)),_0x3a63af['active'][_0x124234(0x212)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x124234(0x14d)](LOG_PREFIX2+_0x124234(0x184)),await _0x3a63af[_0x124234(0x171)](),registration=null,currentOptions2=null,console[_0x124234(0x14d)](LOG_PREFIX2+_0x124234(0x209));}catch(_0x24c85a){console[_0x124234(0x1c3)](LOG_PREFIX2+_0x124234(0x1cc),_0x24c85a);}}function ownsServiceWorker(_0x4c667a,_0x5556ae){const _0x72e564=_0x52068d,_0x232f45=typeof window!==_0x72e564(0x1bf)?window['location'][_0x72e564(0x17b)]:'',_0x18903c=new URL(_0x5556ae,_0x232f45||void 0x0)['href'],_0x449521=_0x4c667a===_0x18903c||_0x4c667a[_0x72e564(0x177)](_0x72e564(0x187));return console[_0x72e564(0x14d)](LOG_PREFIX2+_0x72e564(0x16b)+_0x4c667a+_0x72e564(0x151)+_0x18903c+_0x72e564(0x1be)+_0x449521),_0x449521;}function ownsCurrentController(_0x4cf3fa){const _0x1bea5d=_0x52068d;if(typeof navigator===_0x1bea5d(0x1bf))return![];const _0x145c4e=navigator[_0x1bea5d(0x1b9)]?.[_0x1bea5d(0x1c5)];if(!_0x145c4e)return console['log'](LOG_PREFIX2+'\x20No\x20current\x20controller'),![];return ownsServiceWorker(_0x145c4e[_0x1bea5d(0x172)],_0x4cf3fa);}async function detectBlockingServiceWorker(_0x33a187){const _0x19d186=_0x52068d;if(!navigator[_0x19d186(0x1b9)])return null;try{const _0x2962cb=await navigator['serviceWorker'][_0x19d186(0x155)]('/');console[_0x19d186(0x14d)](LOG_PREFIX2+_0x19d186(0x17e),_0x2962cb?.['active']?.['scriptURL']??_0x19d186(0x1ba));const _0x17ab0d=_0x2962cb?.[_0x19d186(0x1a4)]?.[_0x19d186(0x172)];if(!_0x17ab0d)return null;if(ownsServiceWorker(_0x17ab0d,_0x33a187))return null;return _0x17ab0d;}catch(_0x82d837){return console[_0x19d186(0x1c3)](LOG_PREFIX2+_0x19d186(0x19a),_0x82d837),null;}}async function resolveWorker(){const _0x26f931=_0x52068d,_0x554561=registration??await navigator[_0x26f931(0x1b9)]?.[_0x26f931(0x155)]('/'),_0x206144=_0x554561?.[_0x26f931(0x1a4)]??_0x554561?.[_0x26f931(0x1c4)]??_0x554561?.['installing']??null;return console[_0x26f931(0x14d)](LOG_PREFIX2+'\x20resolveWorker:',_0x206144?.[_0x26f931(0x172)]??_0x26f931(0x1ba),_0x26f931(0x154)+(_0x206144?.[_0x26f931(0x1ed)]??_0x26f931(0x181))),_0x206144;}var LOG_PREFIX3='[Enhance\x20Runtime]';function isInitialized(){const _0x395810=_0x52068d;return typeof window!==_0x395810(0x1bf)&&window['__enhanceInitialized']===!![];}function setInitialized(_0x1d47e8){const _0x13e56a=_0x52068d;typeof window!==_0x13e56a(0x1bf)&&(window[_0x13e56a(0x213)]=_0x1d47e8);}function getOptions(){const _0x32a48f=_0x52068d;return typeof window!==_0x32a48f(0x1bf)?window['__enhanceOptions']??null:null;}function setOptions(_0x2555aa){const _0x2de2b3=_0x52068d;typeof window!==_0x2de2b3(0x1bf)&&(window[_0x2de2b3(0x176)]=_0x2555aa);}var Enhance={'init'(_0x3d52da){const _0x273188=_0x52068d,_0x3ea7ed=Date[_0x273188(0x14c)]();console[_0x273188(0x14d)](LOG_PREFIX3+'\x20init()\x20called\x20at\x20'+_0x3ea7ed),console['log'](LOG_PREFIX3+_0x273188(0x215)+window[_0x273188(0x1a1)][_0x273188(0x1d9)]),console[_0x273188(0x14d)](LOG_PREFIX3+'\x20Document\x20readyState:\x20'+document[_0x273188(0x18a)]),console[_0x273188(0x14d)](LOG_PREFIX3+'\x20Raw\x20options:',JSON['stringify'](_0x3d52da,null,0x2));if(isInitialized())return console['warn'](LOG_PREFIX3+_0x273188(0x1ee)),window[_0x273188(0x1eb)]??createController();setInitialized(!![]),console[_0x273188(0x14d)](LOG_PREFIX3+'\x20First\x20initialization');const _0x3f53df=normalizeOptions(_0x3d52da);setOptions(_0x3f53df),console[_0x273188(0x14d)](LOG_PREFIX3+_0x273188(0x1e9),JSON['stringify'](_0x3f53df,null,0x2));const _0x5cca61=parseUrlParams();console[_0x273188(0x14d)](LOG_PREFIX3+_0x273188(0x1a8),JSON[_0x273188(0x1d0)](_0x5cca61,null,0x2));if(_0x5cca61[_0x273188(0x1bb)])return cleanUrlParam(_0x273188(0x1f8)),console[_0x273188(0x14d)](LOG_PREFIX3+_0x273188(0x180)),createController();if(_0x5cca61['hasEnhancement'])return console[_0x273188(0x14d)](LOG_PREFIX3+'\x20Enhancement\x20mode\x20ENABLED'),console[_0x273188(0x14d)](LOG_PREFIX3+_0x273188(0x1e0)+_0x5cca61['enhancementUrl']),console['log'](LOG_PREFIX3+_0x273188(0x1df)+_0x5cca61['enhancementId']),state['enabled']=!![],console[_0x273188(0x14d)](LOG_PREFIX3+_0x273188(0x1fd)),void loadOverlay({'overlayPath':_0x3f53df[_0x273188(0x1b6)],'enableViteHmr':_0x3f53df[_0x273188(0x1d1)][_0x273188(0x157)],'options':_0x3f53df,'onToggle':handleToggle}),console['log'](LOG_PREFIX3+_0x273188(0x1e7)),void registerServiceWorker(_0x3f53df),console[_0x273188(0x14d)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20enhancement\x20mode'),createController();return console[_0x273188(0x14d)](LOG_PREFIX3+_0x273188(0x197)),console[_0x273188(0x14d)](LOG_PREFIX3+_0x273188(0x222)),void unregisterServiceWorker(_0x3f53df['swPath']),console[_0x273188(0x14d)](LOG_PREFIX3+_0x273188(0x218)),import.meta['hot']&&(console['log'](LOG_PREFIX3+'\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners'),import.meta[_0x273188(0x1de)]['on']('vite:error',_0x450337=>{const _0x436efb=_0x273188;console['log'](LOG_PREFIX3+_0x436efb(0x1c7),_0x450337),state[_0x436efb(0x1b7)]={'message':_0x450337[_0x436efb(0x1b1)][_0x436efb(0x227)]},updateOverlay();}),import.meta[_0x273188(0x1de)]['on']('vite:beforeUpdate',()=>{const _0xcb2ad3=_0x273188;state[_0xcb2ad3(0x1b7)]&&(console[_0xcb2ad3(0x14d)](LOG_PREFIX3+'\x20Vite\x20update\x20pending\x20-\x20clearing\x20error'),state['appError']=null,updateOverlay());})),createController();}};function createController(){const _0x117293=_0x52068d,_0x272ff6={'enable'(){const _0x554da0=_0xaac0,_0x572a2b=getOptions();if(!_0x572a2b)return;state[_0x554da0(0x186)]=!![],void loadOverlay({'overlayPath':_0x572a2b[_0x554da0(0x1b6)],'enableViteHmr':_0x572a2b[_0x554da0(0x1d1)]['enableViteHmr'],'options':_0x572a2b,'onToggle':handleToggle}),void registerServiceWorker(_0x572a2b),void sendConfiguration(),updateOverlay();},'disable'(){const _0x46dcbe=_0xaac0,_0x2f5726=getOptions();if(!_0x2f5726)return;state[_0x46dcbe(0x186)]=![],state[_0x46dcbe(0x1d2)]=![],updateOverlay(),void unregisterServiceWorker(_0x2f5726[_0x46dcbe(0x175)]);},'status'(){const _0x423a7=_0xaac0;return{'enabled':state[_0x423a7(0x186)],'controlled':state[_0x423a7(0x1d2)]};}};return typeof window!=='undefined'&&(window[_0x117293(0x1eb)]=_0x272ff6),_0x272ff6;}function handleToggle(){const _0x3dab73=createController();state['enabled']?_0x3dab73['disable']():_0x3dab73['enable']();}function parseUrlParams(){const _0x98011=_0x52068d,_0x3d369d=new URL(window[_0x98011(0x1a1)]['href']),_0x466f1f=_0x3d369d['searchParams'][_0x98011(0x21f)](_0x98011(0x1f8))?.['toLowerCase'](),_0x2f5163=_0x3d369d[_0x98011(0x165)][_0x98011(0x21f)]('enhancementUrl'),_0x484d03=_0x3d369d[_0x98011(0x165)][_0x98011(0x21f)]('enhancement');return{'hasEnhancement':Boolean(_0x2f5163||_0x484d03),'explicitDisable':_0x466f1f==='0'||_0x466f1f===_0x98011(0x1cf)||_0x466f1f===_0x98011(0x20d),'enhancementUrl':_0x2f5163,'enhancementId':_0x484d03};}function cleanUrlParam(_0x443b51){const _0x596942=_0x52068d,_0x83eeeb=new URL(window['location']['href']);_0x83eeeb[_0x596942(0x165)][_0x596942(0x169)](_0x443b51)&&(_0x83eeeb['searchParams'][_0x596942(0x1bd)](_0x443b51),window[_0x596942(0x1b8)][_0x596942(0x15c)](null,document[_0x596942(0x1b4)],_0x83eeeb[_0x596942(0x1d4)]()));}var package_default={'name':_0x52068d(0x1ad),'version':_0x52068d(0x20e),'type':_0x52068d(0x15a),'description':'Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','license':_0x52068d(0x193),'main':'./dist/index.cjs','module':_0x52068d(0x156),'types':_0x52068d(0x21a),'exports':{'.':{'types':_0x52068d(0x21a),'import':_0x52068d(0x156),'require':_0x52068d(0x1db)},'./vite':{'types':'./dist/vite/index.d.ts','import':'./dist/vite/index.js'}},'files':[_0x52068d(0x18c),_0x52068d(0x20c),_0x52068d(0x1dc)],'bin':{'enhance-sandbox':_0x52068d(0x21b)},'scripts':{'typecheck':'tsc\x20--noEmit','dev':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','dev:build':_0x52068d(0x1ff),'dev:staging':_0x52068d(0x1ce),'dev:staging:build':_0x52068d(0x1f7),'build':_0x52068d(0x1f1),'build:release':_0x52068d(0x1d3),'version':_0x52068d(0x1a5)},'dependencies':{'commander':_0x52068d(0x19d),'zod':_0x52068d(0x19b)},'devDependencies':{'@types/node':_0x52068d(0x1a3),'javascript-obfuscator':_0x52068d(0x219),'tsup':_0x52068d(0x21d),'vite':_0x52068d(0x226)},'publishConfig':{'access':_0x52068d(0x1e4)}},DEFAULT_SERVICE_WORKER_PATH=_0x52068d(0x152),DEFAULT_RUNTIME_PATH=_0x52068d(0x15f),PACKAGE_VERSION=typeof package_default['version']==='string'?package_default[_0x52068d(0x1e1)]:'0.0.0';function normalizeAssetPath(_0x36c9c4){const _0x42c933=_0x52068d;if(!_0x36c9c4)return _0x36c9c4;if(_0x36c9c4[_0x42c933(0x1fa)](_0x42c933(0x1e8))||_0x36c9c4['startsWith'](_0x42c933(0x1fb)))return _0x36c9c4;const _0x4a1072=_0x36c9c4[_0x42c933(0x190)](/^\.\//,'');return _0x4a1072['startsWith']('/')?_0x4a1072:'/'+_0x4a1072;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x2c6c14){const _0x1f0428=_0x52068d;return Enhance[_0x1f0428(0x1ae)](_0x2c6c14);},'serviceWorkerURL'(){return defaultSwPath;},'runtimeURL'(){return defaultRuntimePath;},'assetManifest'(){return getAssetManifest();}};function getAssetManifest(){return{'version':PACKAGE_VERSION,'serviceWorker':serviceWorkerURL(),'runtime':runtimeURL(),'serviceWorkerDigest':null,'runtimeDigest':null};}function resolveServiceWorkerPath(){return serviceWorkerURL();}function serviceWorkerURL(){return Enhance2['serviceWorkerURL']();}function runtimeURL(){const _0x26a35f=_0x52068d;return Enhance2[_0x26a35f(0x167)]();}function _0x238f(){const _0x2fc4eb=['active','pnpm\x20version\x20patch\x20--no-git-tag-version','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','/@vite/client','\x20URL\x20params\x20parsed:','\x20overlayController\x20exists:\x20','[Enhance\x20Config]\x20Build-time\x20defaults:','17648xrJLwH','\x20BLOCKING\x20SW\x20detected:\x20','@enhance-eng/sandbox','init','default','\x20Starting\x20fresh\x20overlay\x20load...','err','\x20composeOverlayState\x20-\x20state.controlled:\x20','__enhanceReactRefreshInstalledOrigins','title','backendUrl','overlayPath','appError','history','serviceWorker','none','explicitDisable','8ycJdWI','delete',',\x20owns=','undefined','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','\x20Sending\x20customer\x20configuration...','error','waiting','controller','scope','\x20Vite\x20error\x20detected:','\x20Current\x20controller:','\x20enableViteHmr:\x20','\x20swPath:\x20',',\x20currentOptions:\x20','\x20Failed\x20to\x20unregister\x20service\x20worker:','keys','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','false','stringify','overlay','controlled','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','toString','\x20Found\x20registration:','\x20with\x20scope\x20\x27/\x27...','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','...','href','querySelector','./dist/index.cjs','enhance.config.sample.json','\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit','hot','\x20enhancementId:\x20','\x20enhancementUrl:\x20','version','\x20Updating\x20overlay...','\x20Failed\x20to\x20register\x20service\x20worker:','public','1112256wmdqim','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','\x20Starting\x20SW\x20registration\x20(async)...','http://','\x20Normalized\x20options:','ready','__enhanceController','__enhanceOverlay','state','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','\x20updateOverlay()\x20called','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','\x20Overlay\x20update\x20complete','callbackBypass','https://assets.enhancelabs.ai/overlay.js','injectIntoGlobalHook','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','enhance','\x20Setting\x20up\x20remote\x20HMR...','startsWith','https://','add','\x20Starting\x20overlay\x20load\x20(async)...','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','\x20SW\x20ready!\x20Active:','\x20React\x20Refresh\x20already\x20installed\x20for\x20','111LjoeAY','400wnTriC','__development','2110WNeUUL','\x20Calling\x20updateOverlay()...','info','\x20SW\x20unregistered\x20successfully','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','3214665iJaUOK','bin','off','0.3.18','/@react-refresh','update','\x20Invalid\x20React\x20Refresh\x20runtime','postMessage','__enhanceInitialized','__viteHMRLoaded','\x20Current\x20URL:\x20','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','installing','\x20init()\x20complete\x20-\x20normal\x20mode','^4.1.1','./dist/index.d.ts','bin/enhance-sandbox.js','\x20registerServiceWorker()\x20complete','^8.5.1','__vite_plugin_react_preamble_installed__','get','309415tRaJjL','\x20Vite\x20HMR\x20client\x20loaded\x20for\x20','\x20Unregistering\x20any\x20existing\x20SW...','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','permissive','\x20sendConfiguration()\x20called','^7.2.4','message','now','log','\x20loadOverlay()\x20called','enableOverlayHmr','\x20currentOptions\x20exists:\x20',',\x20expected=','/sw-enhance.js','object','state:\x20','getRegistration','./dist/index.js','enableViteHmr','https://api.enhancelabs.ai','\x20Registering\x20SW\x20at\x20','module','\x20Registration\x20returned:','replaceState','\x20doLoadOverlay()\x20starting...','position','/assets/enhance-runtime.js','[Enhance\x20Overlay]',',\x20page\x20origin:\x20','\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):','\x20Controller\x20state:','\x20No\x20window\x20object\x20-\x20skipping','searchParams','trim','runtimeURL','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','has','\x20loadOverlay()\x20complete','\x20ownsServiceWorker?\x20scriptURL=','\x20Current\x20controller\x20after\x20ready:','\x20state.enabled:\x20','\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay','warn','search','unregister','scriptURL','4630RFYdGj','\x20No\x20service\x20worker\x20active\x20to\x20configure','swPath','__enhanceOptions','includes','\x20Checking\x20for\x20blocking\x20service\x20worker...','reload','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','origin','register','\x20Enhancement\x20detection:\x20wasEnhanced=','\x20detectBlocking\x20-\x20existing\x20registration:','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','N/A','enhancementUrl','44418sBGLiH','\x20Unregistering\x20SW...','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','enabled','sw-enhance','enhance:disable','\x20overlayPath:\x20','readyState','onToggle','dist','\x20registerServiceWorker()\x20called','some','\x20Available\x20exports:','replace','\x20loadOverlay()\x20failed:','createOverlay','MIT','\x20No\x20blocking\x20SW\x20found','\x20Controller\x20created:','\x20Overlay\x20origin:\x20','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','security','options','\x20detectBlocking\x20error:','^3.22.4','\x20Sending\x20customer\x20config\x20to\x20SW:','^11.1.0','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20','4670834kuQstG','\x20Service\x20workers\x20supported','location','function','^24.10.1'];_0x238f=function(){return _0x2fc4eb;};return _0x238f();}export{Enhance2 as Enhance,getAssetManifest,resolveServiceWorkerPath,runtimeURL,serviceWorkerURL};
1
+ const _0x2e7331=_0x1fbf;(function(_0x30ca18,_0x2fc554){const _0x313bcd=_0x1fbf,_0x353e69=_0x30ca18();while(!![]){try{const _0x4441eb=-parseInt(_0x313bcd(0x1aa))/0x1+parseInt(_0x313bcd(0x14e))/0x2*(parseInt(_0x313bcd(0x1e5))/0x3)+parseInt(_0x313bcd(0x165))/0x4*(parseInt(_0x313bcd(0x14c))/0x5)+-parseInt(_0x313bcd(0x156))/0x6*(-parseInt(_0x313bcd(0x171))/0x7)+-parseInt(_0x313bcd(0x1c2))/0x8*(parseInt(_0x313bcd(0x1a5))/0x9)+parseInt(_0x313bcd(0x1ef))/0xa+parseInt(_0x313bcd(0x15a))/0xb*(parseInt(_0x313bcd(0x1da))/0xc);if(_0x4441eb===_0x2fc554)break;else _0x353e69['push'](_0x353e69['shift']());}catch(_0x3e0006){_0x353e69['push'](_0x353e69['shift']());}}}(_0x3a10,0x84df5));var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!==_0x2e7331(0x1cd)?__ENHANCE_DEFAULT_OVERLAY_PATH__:_0x2e7331(0x182),DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!==_0x2e7331(0x1cd)?__ENHANCE_DEFAULT_BACKEND_URL__:_0x2e7331(0x14a),DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!=='undefined'?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console[_0x2e7331(0x1e1)](_0x2e7331(0x1b9),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x3b0446){const _0xf6da1d=_0x2e7331,_0x204b47=_0x3b0446[_0xf6da1d(0x185)]??{};return{'callbackBypass':_0x3b0446['callbackBypass']??[],'overlay':{'enabled':!![],'position':_0xf6da1d(0x151),'enableViteHmr':_0x204b47[_0xf6da1d(0x1d3)]??DEFAULT_OVERLAY_HMR},'logLevel':_0xf6da1d(0x1fa),'swPath':_0xf6da1d(0x1bb),'overlayPath':_0x204b47[_0xf6da1d(0x19e)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0xf6da1d(0x1e2),'security':_0x204b47[_0xf6da1d(0x160)]??_0xf6da1d(0x1c5),'backendUrl':_0x204b47[_0xf6da1d(0x13e)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x3dbc72=_0x2e7331;try{const _0x180c50=new URLSearchParams(window[_0x3dbc72(0x207)][_0x3dbc72(0x1a3)]);return _0x180c50[_0x3dbc72(0x1fb)](_0x3dbc72(0x209))?.[_0x3dbc72(0x163)]()||'';}catch{return'';}}var LOG_PREFIX='[Enhance\x20Overlay]',overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x32f40e){const _0x5b3b5d=_0x2e7331;console[_0x5b3b5d(0x1e1)](LOG_PREFIX+'\x20loadOverlay()\x20called'),console[_0x5b3b5d(0x1e1)](LOG_PREFIX+_0x5b3b5d(0x1fc)+_0x32f40e[_0x5b3b5d(0x19e)]),console[_0x5b3b5d(0x1e1)](LOG_PREFIX+_0x5b3b5d(0x16b)+_0x32f40e['enableViteHmr']),currentOptions=_0x32f40e['options'],toggleHandler=_0x32f40e[_0x5b3b5d(0x199)];if(overlayController){console[_0x5b3b5d(0x1e1)](LOG_PREFIX+_0x5b3b5d(0x1d1)),updateOverlay();return;}if(overlayLoadPromise)return console[_0x5b3b5d(0x1e1)](LOG_PREFIX+_0x5b3b5d(0x1f8)),overlayLoadPromise;console[_0x5b3b5d(0x1e1)](LOG_PREFIX+_0x5b3b5d(0x18b)),overlayLoadPromise=doLoadOverlay(_0x32f40e);try{await overlayLoadPromise,console['log'](LOG_PREFIX+_0x5b3b5d(0x1af));}catch(_0x316aee){console[_0x5b3b5d(0x181)](LOG_PREFIX+'\x20loadOverlay()\x20failed:',_0x316aee);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x1fa6c1){const _0x672be5=_0x2e7331;console[_0x672be5(0x1e1)](LOG_PREFIX+'\x20doLoadOverlay()\x20starting...');if(typeof window==='undefined'){console[_0x672be5(0x1e1)](LOG_PREFIX+_0x672be5(0x18c));return;}if(window[_0x672be5(0x1ca)]){console[_0x672be5(0x1e1)](LOG_PREFIX+'\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit'),overlayController=window[_0x672be5(0x1ca)];return;}console['log'](LOG_PREFIX+'\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module');try{_0x1fa6c1[_0x672be5(0x180)]&&(console[_0x672be5(0x1e1)](LOG_PREFIX+_0x672be5(0x1fd)),await setupRemoteHMR(_0x1fa6c1[_0x672be5(0x19e)]));console[_0x672be5(0x1e1)](LOG_PREFIX+_0x672be5(0x191)+_0x1fa6c1[_0x672be5(0x19e)]);const _0x2ae83b=Date[_0x672be5(0x175)](),_0x18ed35=await import(_0x1fa6c1['overlayPath']);console[_0x672be5(0x1e1)](LOG_PREFIX+'\x20Module\x20imported\x20in\x20'+(Date['now']()-_0x2ae83b)+'ms'),console['log'](LOG_PREFIX+_0x672be5(0x1e3),Object['keys'](_0x18ed35));if(typeof _0x18ed35?.[_0x672be5(0x18d)]!==_0x672be5(0x1ad)){console[_0x672be5(0x181)](LOG_PREFIX+_0x672be5(0x1ac)),console[_0x672be5(0x181)](LOG_PREFIX+_0x672be5(0x16f),Object['keys'](_0x18ed35));return;}console[_0x672be5(0x1e1)](LOG_PREFIX+_0x672be5(0x1a9));const _0x4613f4=_0x18ed35[_0x672be5(0x18d)]();console['log'](LOG_PREFIX+'\x20Controller\x20created:',_0x4613f4),overlayController=_0x4613f4,window[_0x672be5(0x1ca)]=_0x4613f4,_0x4613f4[_0x672be5(0x199)](_0x1fa6c1[_0x672be5(0x199)]),console[_0x672be5(0x1e1)](LOG_PREFIX+_0x672be5(0x192)),console['log'](LOG_PREFIX+_0x672be5(0x1f6)),updateOverlay();}catch(_0x513b54){console['error'](LOG_PREFIX+'\x20Failed\x20to\x20import/create\x20overlay:',_0x513b54);}}function updateOverlay(){const _0x28d759=_0x2e7331;console[_0x28d759(0x1e1)](LOG_PREFIX+'\x20updateOverlay()\x20called'),console[_0x28d759(0x1e1)](LOG_PREFIX+'\x20overlayController\x20exists:\x20'+!!overlayController),console[_0x28d759(0x1e1)](LOG_PREFIX+_0x28d759(0x155)+!!currentOptions);if(!overlayController||!currentOptions){console[_0x28d759(0x1e1)](LOG_PREFIX+'\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update');return;}const _0x399241=composeOverlayState(currentOptions);console[_0x28d759(0x1e1)](LOG_PREFIX+'\x20Updating\x20overlay\x20with\x20state:',JSON[_0x28d759(0x13a)](_0x399241,null,0x2)),overlayController[_0x28d759(0x1a4)](_0x399241),console[_0x28d759(0x1e1)](LOG_PREFIX+_0x28d759(0x1fe));}function composeOverlayState(_0x43f7b2){const _0x31d695=_0x2e7331,_0x52601d=getEnhancementUrl();return console[_0x31d695(0x1e1)](LOG_PREFIX+_0x31d695(0x1e0)+_0x52601d),console[_0x31d695(0x1e1)](LOG_PREFIX+_0x31d695(0x170)+state[_0x31d695(0x1f2)]),console[_0x31d695(0x1e1)](LOG_PREFIX+_0x31d695(0x1f0)+state['controlled']),{'enhancementUrl':_0x52601d,'enabled':state[_0x31d695(0x1f2)],'controlled':state[_0x31d695(0x19b)],'overlayPosition':_0x43f7b2[_0x31d695(0x208)]['position'],'securityMode':_0x43f7b2[_0x31d695(0x160)],'backendBaseUrl':_0x43f7b2[_0x31d695(0x13e)],'appError':state[_0x31d695(0x15b)]};}async function setupRemoteHMR(_0x6d48aa){const _0x15e627=_0x2e7331;console[_0x15e627(0x1e1)](LOG_PREFIX+_0x15e627(0x1c3)+_0x6d48aa);if(typeof window===_0x15e627(0x1cd))return;try{const _0x3e2173=new URL(_0x6d48aa,window['location'][_0x15e627(0x149)]),_0x1c5c60=_0x3e2173[_0x15e627(0x149)];console['log'](LOG_PREFIX+'\x20Overlay\x20origin:\x20'+_0x1c5c60+',\x20page\x20origin:\x20'+window[_0x15e627(0x207)][_0x15e627(0x149)]);if(_0x1c5c60===window['location']['origin']){console['log'](LOG_PREFIX+_0x15e627(0x153));return;}console[_0x15e627(0x1e1)](LOG_PREFIX+_0x15e627(0x1b5)),await ensureReactRefreshPreamble(_0x1c5c60),await ensureViteClient(_0x1c5c60),console[_0x15e627(0x1e1)](LOG_PREFIX+_0x15e627(0x1c7));}catch(_0x2a84bb){console[_0x15e627(0x13c)](LOG_PREFIX+'\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):',_0x2a84bb);}}async function ensureReactRefreshPreamble(_0x11c492){const _0x517526=_0x2e7331;window[_0x517526(0x168)]??=new Set();if(window['__enhanceReactRefreshInstalledOrigins']['has'](_0x11c492)){console[_0x517526(0x1e1)](LOG_PREFIX+_0x517526(0x1d5)+_0x11c492);return;}console[_0x517526(0x1e1)](LOG_PREFIX+_0x517526(0x179)+_0x11c492+'...');const _0x1438b5=await import(_0x11c492+_0x517526(0x1ed)),_0x1ffe6a=_0x1438b5&&typeof _0x1438b5===_0x517526(0x1e9)&&'default'in _0x1438b5?_0x1438b5[_0x517526(0x1cf)]:_0x1438b5;if(!isRefreshRuntime(_0x1ffe6a)){console['warn'](LOG_PREFIX+'\x20Invalid\x20React\x20Refresh\x20runtime');return;}_0x1ffe6a[_0x517526(0x1c6)](window),window['$RefreshReg$']=()=>{},window[_0x517526(0x1be)]=()=>_0x4ba990=>_0x4ba990,window[_0x517526(0x142)]=!![],window[_0x517526(0x168)]['add'](_0x11c492),console[_0x517526(0x1e1)](LOG_PREFIX+_0x517526(0x166)+_0x11c492);}async function ensureViteClient(_0x39b282){const _0x4776cb=_0x2e7331;window['__viteHMRLoaded']??=new Set();if(window[_0x4776cb(0x18f)][_0x4776cb(0x147)](_0x39b282)){console['log'](LOG_PREFIX+_0x4776cb(0x20b)+_0x39b282);return;}console[_0x4776cb(0x1e1)](LOG_PREFIX+_0x4776cb(0x15d)+_0x39b282+'...'),await import(_0x39b282+_0x4776cb(0x203)),window[_0x4776cb(0x18f)][_0x4776cb(0x1b8)](_0x39b282),console[_0x4776cb(0x1e1)](LOG_PREFIX+_0x4776cb(0x162)+_0x39b282);}function _0x3a10(){const _0x2c39a9=['\x20overlayPath:\x20','\x20Setting\x20up\x20remote\x20HMR...','\x20Overlay\x20update\x20complete','\x20No\x20blocking\x20SW\x20found','history','\x20Current\x20controller:','\x20No\x20service\x20worker\x20active\x20to\x20configure','/@vite/client','replaceState','\x20Enhancement\x20mode\x20ENABLED','./dev/cli.js','location','overlay','enhancementUrl','message','\x20Vite\x20client\x20already\x20loaded\x20for\x20','__enhanceController','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','stringify','enhance:disable','warn','0.3.20','backendUrl','sw-enhance','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','\x20init()\x20complete\x20-\x20normal\x20mode','__vite_plugin_react_preamble_installed__','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','ENHANCE_OVERLAY_PATH=https://assets-dev.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','@enhance-eng/sandbox','module','has','__enhanceInitialized','origin','https://api.enhancelabs.ai','scope','175420BbLJqR','__enhanceOptions','1696858otbOYO','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','controller','bottom-right','\x20swPath:\x20','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup',',\x20expected=','\x20currentOptions\x20exists:\x20','610032mSjRyU','\x20enhancementUrl:\x20','^11.1.0','./dev/index.js','77OyWzmj','appError','\x20Unregistering\x20any\x20existing\x20SW...','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','waiting','\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners','security','\x20registerServiceWorker()\x20called','\x20Vite\x20HMR\x20client\x20loaded\x20for\x20','trim','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','112TDnyZs','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','\x20URL\x20params\x20parsed:','__enhanceReactRefreshInstalledOrigins','MIT','state','\x20enableViteHmr:\x20','vite:beforeUpdate','enhance','\x20Service\x20workers\x20supported','\x20Available\x20exports:','\x20composeOverlayState\x20-\x20state.enabled:\x20','14fmUomD','N/A','\x20Registration\x20returned:','runtimeURL','now','href','dev/','false','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20','enhancementId','includes','\x20SW\x20unregistered\x20successfully','\x20SW\x20ready!\x20Active:','some','explicitDisable','enableViteHmr','error','https://assets.enhancelabs.ai/overlay.js','err','active','__development',',\x20owns=','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister','postMessage','\x20Found\x20registration:','http://','\x20Starting\x20fresh\x20overlay\x20load...','\x20No\x20window\x20object\x20-\x20skipping','createOverlay','\x20BLOCKING\x20SW\x20detected:\x20','__viteHMRLoaded','\x20registerServiceWorker()\x20complete','\x20Importing\x20overlay\x20module\x20from:\x20','\x20Overlay\x20controller\x20initialized\x20and\x20cached',',\x20currentOptions:\x20','\x20Registering\x20SW\x20at\x20','\x20Config\x20sent\x20to\x20SW','\x20detectBlocking\x20-\x20existing\x20registration:','state:\x20','none','onToggle','\x20init()\x20complete\x20-\x20enhancement\x20mode','controlled','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','\x20Checking\x20for\x20blocking\x20service\x20worker...','overlayPath','\x20resolveWorker:','getRegistration','installing','\x20enhancementId:\x20','search','update','9dcxEjp','bun\x20version\x20patch\x20--no-git-tag-version','swPath','\x20state.enabled:\x20','\x20Calling\x20createOverlay()...','741310alaWWI','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','\x20Module\x20missing\x20createOverlay\x20export!','function','[data-enhance-runtime-bootstrap]','\x20loadOverlay()\x20complete','callbackBypass','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','serviceWorker','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','https://','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','querySelector','ready','add','[Enhance\x20Config]\x20Build-time\x20defaults:','scriptURL','/sw-enhance.js','0.0.0','serviceWorkerURL','$RefreshSig$','startsWith','unregister','title','7253224imBBbq','\x20setupRemoteHMR()\x20for\x20','\x20Raw\x20options:','permissive','injectIntoGlobalHook','\x20HMR\x20setup\x20complete','[Enhance\x20SW-Client]','\x20ownsServiceWorker?\x20scriptURL=','__enhanceOverlay','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','register','undefined','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','default','reload','\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay','public','enableOverlayHmr','[Enhance\x20Runtime]','\x20React\x20Refresh\x20already\x20installed\x20for\x20','tsc\x20--noEmit','\x20Starting\x20overlay\x20load\x20(async)...','\x20Updating\x20overlay...','replace','30300qIhveR','\x20with\x20scope\x20\x27/\x27...','readyState','\x20First\x20initialization','\x20Sending\x20customer\x20configuration...','./dev/index.d.ts','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','log','/assets/enhance-runtime.js','\x20Module\x20exports:','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','3IJvwqH','^4.1.1','hasEnhancement','^3.22.4','object','toString','^8.5.1','\x20init()\x20called\x20at\x20','/@react-refresh','\x20sendConfiguration()\x20called','1404080KMeTNu','\x20composeOverlayState\x20-\x20state.controlled:\x20','enhancement','enabled','\x20unregisterServiceWorker()\x20called','vite:error','\x20No\x20current\x20controller','\x20Calling\x20updateOverlay()...','\x20Document\x20readyState:\x20','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','searchParams','info','get'];_0x3a10=function(){return _0x2c39a9;};return _0x3a10();}function isRefreshRuntime(_0x3066ba){const _0x35f7d6=_0x2e7331;return typeof _0x3066ba===_0x35f7d6(0x1e9)&&_0x3066ba!==null&&_0x35f7d6(0x1c6)in _0x3066ba&&typeof _0x3066ba['injectIntoGlobalHook']===_0x35f7d6(0x1ad);}var WORKER_MESSAGE_CONFIG='enhance:configure',WORKER_MESSAGE_DISABLE=_0x2e7331(0x13b),LOG_PREFIX2=_0x2e7331(0x1c8),registration=null,currentOptions2=null;async function registerServiceWorker(_0x212de2){const _0x27bdf8=_0x2e7331;console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x161)),console['log'](LOG_PREFIX2+_0x27bdf8(0x152)+_0x212de2['swPath']);if(!('serviceWorker'in navigator)){console['warn'](LOG_PREFIX2+'\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser');return;}console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x16e));const _0x3f39cf=navigator[_0x27bdf8(0x1b2)][_0x27bdf8(0x150)];console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x201),_0x3f39cf?.[_0x27bdf8(0x1ba)]??_0x27bdf8(0x198)),console[_0x27bdf8(0x1e1)](LOG_PREFIX2+'\x20Controller\x20state:',_0x3f39cf?.[_0x27bdf8(0x16a)]??_0x27bdf8(0x172));const _0x13f47e=!!_0x3f39cf;currentOptions2=_0x212de2,console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x19d));const _0x44b3ae=await detectBlockingServiceWorker(_0x212de2[_0x27bdf8(0x1a7)]);if(_0x44b3ae){console[_0x27bdf8(0x181)](LOG_PREFIX2+_0x27bdf8(0x18e)+_0x44b3ae),console[_0x27bdf8(0x181)](LOG_PREFIX2+_0x27bdf8(0x140));return;}console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x1ff));try{console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x194)+_0x212de2['swPath']+_0x27bdf8(0x1db)),registration=await navigator[_0x27bdf8(0x1b2)][_0x27bdf8(0x1cc)](_0x212de2[_0x27bdf8(0x1a7)],{'scope':'/'}),console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x173),{'scope':registration[_0x27bdf8(0x14b)],'active':registration[_0x27bdf8(0x184)]?.[_0x27bdf8(0x1ba)],'waiting':registration[_0x27bdf8(0x15e)]?.['scriptURL'],'installing':registration[_0x27bdf8(0x1a1)]?.[_0x27bdf8(0x1ba)]}),console['log'](LOG_PREFIX2+_0x27bdf8(0x143));const _0x5e46b4=await navigator[_0x27bdf8(0x1b2)][_0x27bdf8(0x1b7)];console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x17d),_0x5e46b4['active']?.[_0x27bdf8(0x1ba)]);const _0x596154=ownsCurrentController(_0x212de2[_0x27bdf8(0x1a7)]);state['controlled']=_0x596154,console[_0x27bdf8(0x1e1)](LOG_PREFIX2+'\x20Page\x20controlled\x20by\x20our\x20SW:\x20'+_0x596154),console[_0x27bdf8(0x1e1)](LOG_PREFIX2+'\x20Current\x20controller\x20after\x20ready:',navigator[_0x27bdf8(0x1b2)]['controller']?.[_0x27bdf8(0x1ba)]??_0x27bdf8(0x198));if(!_0x13f47e&&!navigator[_0x27bdf8(0x1b2)]['controller']){console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x1b3)),window['location']['reload']();return;}console['log'](LOG_PREFIX2+_0x27bdf8(0x1de)),await sendConfiguration();if(state['enabled']){const _0x114060=document[_0x27bdf8(0x1b6)](_0x27bdf8(0x1ae))!==null;console[_0x27bdf8(0x1e1)](LOG_PREFIX2+'\x20Enhancement\x20detection:\x20wasEnhanced='+_0x114060);if(!_0x114060){console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x139)),window[_0x27bdf8(0x207)][_0x27bdf8(0x1d0)]();return;}}console['log'](LOG_PREFIX2+_0x27bdf8(0x1d8)),updateOverlay(),console[_0x27bdf8(0x1e1)](LOG_PREFIX2+_0x27bdf8(0x190));}catch(_0x54371f){console['error'](LOG_PREFIX2+'\x20Failed\x20to\x20register\x20service\x20worker:',_0x54371f);}}async function sendConfiguration(){const _0x540635=_0x2e7331;console[_0x540635(0x1e1)](LOG_PREFIX2+_0x540635(0x1ee)),console[_0x540635(0x1e1)](LOG_PREFIX2+_0x540635(0x1a8)+state[_0x540635(0x1f2)]+_0x540635(0x193)+!!currentOptions2);if(!state[_0x540635(0x1f2)]||!currentOptions2){console[_0x540635(0x1e1)](LOG_PREFIX2+_0x540635(0x14f));return;}const _0x139a17=await resolveWorker();if(!_0x139a17){console[_0x540635(0x13c)](LOG_PREFIX2+_0x540635(0x202));return;}const _0x47a0eb={'callbackBypass':currentOptions2[_0x540635(0x1b0)],'securityMode':currentOptions2[_0x540635(0x160)]};console['log'](LOG_PREFIX2+'\x20Sending\x20customer\x20config\x20to\x20SW:',JSON[_0x540635(0x13a)](_0x47a0eb,null,0x2)),_0x139a17[_0x540635(0x188)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x47a0eb}),console['log'](LOG_PREFIX2+_0x540635(0x195));}async function unregisterServiceWorker(_0x5a48b4){const _0x5a8f07=_0x2e7331;console[_0x5a8f07(0x1e1)](LOG_PREFIX2+_0x5a8f07(0x1f3));if(!('serviceWorker'in navigator)){console[_0x5a8f07(0x1e1)](LOG_PREFIX2+'\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister');return;}try{const _0x11ab3a=registration??await navigator[_0x5a8f07(0x1b2)][_0x5a8f07(0x1a0)]('/');if(!_0x11ab3a){console[_0x5a8f07(0x1e1)](LOG_PREFIX2+_0x5a8f07(0x187));return;}console[_0x5a8f07(0x1e1)](LOG_PREFIX2+_0x5a8f07(0x189),{'scope':_0x11ab3a[_0x5a8f07(0x14b)],'active':_0x11ab3a[_0x5a8f07(0x184)]?.[_0x5a8f07(0x1ba)],'waiting':_0x11ab3a[_0x5a8f07(0x15e)]?.[_0x5a8f07(0x1ba)],'installing':_0x11ab3a[_0x5a8f07(0x1a1)]?.[_0x5a8f07(0x1ba)]});const _0x496e9b=[_0x11ab3a[_0x5a8f07(0x184)]?.[_0x5a8f07(0x1ba)],_0x11ab3a[_0x5a8f07(0x15e)]?.[_0x5a8f07(0x1ba)],_0x11ab3a[_0x5a8f07(0x1a1)]?.[_0x5a8f07(0x1ba)]],_0x3eae73=_0x496e9b[_0x5a8f07(0x17e)](_0x3cf887=>_0x3cf887&&ownsServiceWorker(_0x3cf887,_0x5a48b4));if(!_0x3eae73){console[_0x5a8f07(0x1e1)](LOG_PREFIX2+'\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering');return;}_0x11ab3a['active']&&(console[_0x5a8f07(0x1e1)](LOG_PREFIX2+'\x20Sending\x20DISABLE\x20message\x20to\x20SW...'),_0x11ab3a[_0x5a8f07(0x184)][_0x5a8f07(0x188)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x5a8f07(0x1e1)](LOG_PREFIX2+'\x20Unregistering\x20SW...'),await _0x11ab3a[_0x5a8f07(0x1c0)](),registration=null,currentOptions2=null,console['log'](LOG_PREFIX2+_0x5a8f07(0x17c));}catch(_0x643eb4){console['error'](LOG_PREFIX2+'\x20Failed\x20to\x20unregister\x20service\x20worker:',_0x643eb4);}}function ownsServiceWorker(_0xc2f201,_0x5dde52){const _0x52588d=_0x2e7331,_0x54f83c=typeof window!=='undefined'?window[_0x52588d(0x207)]['origin']:'',_0x15af93=new URL(_0x5dde52,_0x54f83c||void 0x0)['href'],_0x5cf478=_0xc2f201===_0x15af93||_0xc2f201[_0x52588d(0x17b)](_0x52588d(0x13f));return console[_0x52588d(0x1e1)](LOG_PREFIX2+_0x52588d(0x1c9)+_0xc2f201+_0x52588d(0x154)+_0x15af93+_0x52588d(0x186)+_0x5cf478),_0x5cf478;}function ownsCurrentController(_0x463441){const _0x4fe0cc=_0x2e7331;if(typeof navigator===_0x4fe0cc(0x1cd))return![];const _0x178277=navigator[_0x4fe0cc(0x1b2)]?.['controller'];if(!_0x178277)return console['log'](LOG_PREFIX2+_0x4fe0cc(0x1f5)),![];return ownsServiceWorker(_0x178277[_0x4fe0cc(0x1ba)],_0x463441);}async function detectBlockingServiceWorker(_0x5ede61){const _0x536153=_0x2e7331;if(!navigator[_0x536153(0x1b2)])return null;try{const _0x1555e7=await navigator[_0x536153(0x1b2)][_0x536153(0x1a0)]('/');console[_0x536153(0x1e1)](LOG_PREFIX2+_0x536153(0x196),_0x1555e7?.[_0x536153(0x184)]?.[_0x536153(0x1ba)]??_0x536153(0x198));const _0x100308=_0x1555e7?.['active']?.[_0x536153(0x1ba)];if(!_0x100308)return null;if(ownsServiceWorker(_0x100308,_0x5ede61))return null;return _0x100308;}catch(_0x4e30f1){return console[_0x536153(0x181)](LOG_PREFIX2+'\x20detectBlocking\x20error:',_0x4e30f1),null;}}async function resolveWorker(){const _0x31e488=_0x2e7331,_0x4b4249=registration??await navigator['serviceWorker']?.['getRegistration']('/'),_0x502290=_0x4b4249?.[_0x31e488(0x184)]??_0x4b4249?.[_0x31e488(0x15e)]??_0x4b4249?.['installing']??null;return console[_0x31e488(0x1e1)](LOG_PREFIX2+_0x31e488(0x19f),_0x502290?.['scriptURL']??'none',_0x31e488(0x197)+(_0x502290?.[_0x31e488(0x16a)]??'N/A')),_0x502290;}var LOG_PREFIX3=_0x2e7331(0x1d4);function isInitialized(){const _0x218b14=_0x2e7331;return typeof window!=='undefined'&&window[_0x218b14(0x148)]===!![];}function setInitialized(_0x540161){const _0x52b87b=_0x2e7331;typeof window!==_0x52b87b(0x1cd)&&(window['__enhanceInitialized']=_0x540161);}function getOptions(){const _0x218137=_0x2e7331;return typeof window!=='undefined'?window[_0x218137(0x14d)]??null:null;}function setOptions(_0x170eb0){const _0x4d279a=_0x2e7331;typeof window!==_0x4d279a(0x1cd)&&(window['__enhanceOptions']=_0x170eb0);}var Enhance={'init'(_0x205280={}){const _0x34d33d=_0x2e7331,_0x4eeec6=Date[_0x34d33d(0x175)]();console['log'](LOG_PREFIX3+_0x34d33d(0x1ec)+_0x4eeec6),console[_0x34d33d(0x1e1)](LOG_PREFIX3+'\x20Current\x20URL:\x20'+window[_0x34d33d(0x207)][_0x34d33d(0x176)]),console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x1f7)+document[_0x34d33d(0x1dc)]),console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x1c4),JSON[_0x34d33d(0x13a)](_0x205280,null,0x2));if(isInitialized())return console[_0x34d33d(0x13c)](LOG_PREFIX3+_0x34d33d(0x164)),window[_0x34d33d(0x138)]??createController();setInitialized(!![]),console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x1dd));const _0xc68971=normalizeOptions(_0x205280);setOptions(_0xc68971),console[_0x34d33d(0x1e1)](LOG_PREFIX3+'\x20Normalized\x20options:',JSON['stringify'](_0xc68971,null,0x2));const _0x5e3656=parseUrlParams();console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x167),JSON[_0x34d33d(0x13a)](_0x5e3656,null,0x2));if(_0x5e3656[_0x34d33d(0x17f)])return cleanUrlParam(_0x34d33d(0x16d)),console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x1b1)),createController();if(_0x5e3656[_0x34d33d(0x1e7)])return console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x205)),console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x157)+_0x5e3656[_0x34d33d(0x209)]),console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x1a2)+_0x5e3656[_0x34d33d(0x17a)]),state[_0x34d33d(0x1f2)]=!![],console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x1d7)),void loadOverlay({'overlayPath':_0xc68971[_0x34d33d(0x19e)],'enableViteHmr':_0xc68971['overlay'][_0x34d33d(0x180)],'options':_0xc68971,'onToggle':handleToggle}),console[_0x34d33d(0x1e1)](LOG_PREFIX3+'\x20Starting\x20SW\x20registration\x20(async)...'),void registerServiceWorker(_0xc68971),console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x19a)),createController();return console['log'](LOG_PREFIX3+_0x34d33d(0x1ab)),console[_0x34d33d(0x1e1)](LOG_PREFIX3+_0x34d33d(0x15c)),void unregisterServiceWorker(_0xc68971[_0x34d33d(0x1a7)]),console['log'](LOG_PREFIX3+_0x34d33d(0x141)),import.meta.hot&&(console['log'](LOG_PREFIX3+_0x34d33d(0x15f)),import.meta.hot['on'](_0x34d33d(0x1f4),_0x2e1baa=>{const _0x136831=_0x34d33d;console[_0x136831(0x1e1)](LOG_PREFIX3+'\x20Vite\x20error\x20detected:',_0x2e1baa),state[_0x136831(0x15b)]={'message':_0x2e1baa[_0x136831(0x183)][_0x136831(0x20a)]},updateOverlay();}),import.meta.hot['on'](_0x34d33d(0x16c),()=>{const _0x4af0fd=_0x34d33d;state[_0x4af0fd(0x15b)]&&(console[_0x4af0fd(0x1e1)](LOG_PREFIX3+_0x4af0fd(0x1e4)),state[_0x4af0fd(0x15b)]=null,updateOverlay());})),createController();}};function createController(){const _0x2a82b9=_0x2e7331,_0x53dbbe={'enable'(){const _0xa265d1=_0x1fbf,_0x5809d4=getOptions();if(!_0x5809d4)return;state[_0xa265d1(0x1f2)]=!![],void loadOverlay({'overlayPath':_0x5809d4[_0xa265d1(0x19e)],'enableViteHmr':_0x5809d4['overlay'][_0xa265d1(0x180)],'options':_0x5809d4,'onToggle':handleToggle}),void registerServiceWorker(_0x5809d4),void sendConfiguration(),updateOverlay();},'disable'(){const _0x26a1eb=_0x1fbf,_0x424e53=getOptions();if(!_0x424e53)return;state[_0x26a1eb(0x1f2)]=![],state[_0x26a1eb(0x19b)]=![],updateOverlay(),void unregisterServiceWorker(_0x424e53[_0x26a1eb(0x1a7)]);},'status'(){const _0x571e74=_0x1fbf;return{'enabled':state['enabled'],'controlled':state[_0x571e74(0x19b)]};}};return typeof window!==_0x2a82b9(0x1cd)&&(window[_0x2a82b9(0x138)]=_0x53dbbe),_0x53dbbe;}function handleToggle(){const _0x460561=_0x2e7331,_0x131209=createController();state[_0x460561(0x1f2)]?_0x131209['disable']():_0x131209['enable']();}function parseUrlParams(){const _0x573635=_0x2e7331,_0x51844d=new URL(window[_0x573635(0x207)][_0x573635(0x176)]),_0x2f2bb1=_0x51844d[_0x573635(0x1f9)][_0x573635(0x1fb)](_0x573635(0x16d))?.['toLowerCase'](),_0x59214f=_0x51844d['searchParams'][_0x573635(0x1fb)](_0x573635(0x209)),_0x3b8b76=_0x51844d[_0x573635(0x1f9)][_0x573635(0x1fb)](_0x573635(0x1f1));return{'hasEnhancement':Boolean(_0x59214f||_0x3b8b76),'explicitDisable':_0x2f2bb1==='0'||_0x2f2bb1===_0x573635(0x178)||_0x2f2bb1==='off','enhancementUrl':_0x59214f,'enhancementId':_0x3b8b76};}function cleanUrlParam(_0x2256ea){const _0x245552=_0x2e7331,_0x5d8e9c=new URL(window['location'][_0x245552(0x176)]);_0x5d8e9c[_0x245552(0x1f9)][_0x245552(0x147)](_0x2256ea)&&(_0x5d8e9c[_0x245552(0x1f9)]['delete'](_0x2256ea),window[_0x245552(0x200)][_0x245552(0x204)](null,document[_0x245552(0x1c1)],_0x5d8e9c[_0x245552(0x1ea)]()));}var package_default={'name':_0x2e7331(0x145),'version':_0x2e7331(0x13d),'type':_0x2e7331(0x146),'description':_0x2e7331(0x1ce),'license':_0x2e7331(0x169),'main':_0x2e7331(0x159),'module':_0x2e7331(0x159),'types':_0x2e7331(0x1df),'exports':{'.':{'types':_0x2e7331(0x1df),'import':_0x2e7331(0x159)},'./vite':{'types':'./dev/vite/index.d.ts','import':'./dev/vite/index.js'}},'files':[_0x2e7331(0x177)],'bin':{'enhance-sandbox':_0x2e7331(0x206)},'scripts':{'typecheck':_0x2e7331(0x1d6),'dev':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','dev:build':_0x2e7331(0x1cb),'dev:staging':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','dev:staging:build':_0x2e7331(0x19c),'build':'ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','build:release':'ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','build:release:dev':_0x2e7331(0x144),'version':_0x2e7331(0x1a6)},'dependencies':{'commander':_0x2e7331(0x158),'zod':_0x2e7331(0x1e8)},'devDependencies':{'@types/node':'^24.10.1','javascript-obfuscator':_0x2e7331(0x1e6),'tsup':_0x2e7331(0x1eb),'vite':'^7.2.4'},'publishConfig':{'access':_0x2e7331(0x1d2)}},DEFAULT_SERVICE_WORKER_PATH=_0x2e7331(0x1bb),DEFAULT_RUNTIME_PATH=_0x2e7331(0x1e2),PACKAGE_VERSION=typeof package_default['version']==='string'?package_default['version']:_0x2e7331(0x1bc);function _0x1fbf(_0x41b3ad,_0x495b24){_0x41b3ad=_0x41b3ad-0x138;const _0x3a104d=_0x3a10();let _0x1fbff6=_0x3a104d[_0x41b3ad];return _0x1fbff6;}function normalizeAssetPath(_0xfe79ba){const _0x304027=_0x2e7331;if(!_0xfe79ba)return _0xfe79ba;if(_0xfe79ba[_0x304027(0x1bf)](_0x304027(0x18a))||_0xfe79ba['startsWith'](_0x304027(0x1b4)))return _0xfe79ba;const _0x1381d7=_0xfe79ba[_0x304027(0x1d9)](/^\.\//,'');return _0x1381d7[_0x304027(0x1bf)]('/')?_0x1381d7:'/'+_0x1381d7;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x5e6445){return Enhance['init'](_0x5e6445);},'serviceWorkerURL'(){return defaultSwPath;},'runtimeURL'(){return defaultRuntimePath;},'assetManifest'(){return getAssetManifest();}};function getAssetManifest(){return{'version':PACKAGE_VERSION,'serviceWorker':serviceWorkerURL(),'runtime':runtimeURL(),'serviceWorkerDigest':null,'runtimeDigest':null};}function resolveServiceWorkerPath(){return serviceWorkerURL();}function serviceWorkerURL(){const _0x282172=_0x2e7331;return Enhance2[_0x282172(0x1bd)]();}function runtimeURL(){const _0x20da11=_0x2e7331;return Enhance2[_0x20da11(0x174)]();}export{Enhance2 as Enhance,getAssetManifest,resolveServiceWorkerPath,runtimeURL,serviceWorkerURL};
@@ -1 +1 @@
1
- 'use strict';function _0x36a8(_0x29775d,_0x193ae9){const _0x2d177e=_0x2d17();return _0x36a8=function(_0x36a875,_0x4d048b){_0x36a875=_0x36a875-0x137;let _0x2b43b8=_0x2d177e[_0x36a875];return _0x2b43b8;},_0x36a8(_0x29775d,_0x193ae9);}(function(_0x3c8621,_0x4b27a5){const _0x1ef3f5=_0x36a8,_0x17dae1=_0x3c8621();while(!![]){try{const _0x593777=parseInt(_0x1ef3f5(0x177))/0x1+-parseInt(_0x1ef3f5(0x1cd))/0x2*(parseInt(_0x1ef3f5(0x13e))/0x3)+-parseInt(_0x1ef3f5(0x174))/0x4*(-parseInt(_0x1ef3f5(0x201))/0x5)+parseInt(_0x1ef3f5(0x176))/0x6*(-parseInt(_0x1ef3f5(0x22f))/0x7)+parseInt(_0x1ef3f5(0x215))/0x8+-parseInt(_0x1ef3f5(0x21e))/0x9*(parseInt(_0x1ef3f5(0x1dc))/0xa)+-parseInt(_0x1ef3f5(0x1ba))/0xb*(-parseInt(_0x1ef3f5(0x1e3))/0xc);if(_0x593777===_0x4b27a5)break;else _0x17dae1['push'](_0x17dae1['shift']());}catch(_0x53a979){_0x17dae1['push'](_0x17dae1['shift']());}}}(_0x2d17,0x5dbc8));function _0x2d17(){const _0x37a805=['overlay','/sw-enhance.js','install','\x20\x20\x20BYPASS:\x20','Enhancement\x20miss\x20','\x20\x20\x20Not\x20routing\x20asset\x20(not\x20routable\x20or\x20not\x20same-origin)','\x20\x20\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20protoList.length;\x20i++)\x20{','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Current\x20URL:\x22,\x20window.location.href);','\x5cu003c','type','\x20chars','\x20\x20\x20Enhancement\x20HIT\x20for\x20','\x20Failed\x20to\x20parse\x20enhancementUrl:\x20','20ixMMTb','\x20\x20\x20\x20try\x20{','/__webpack_hmr','\x20\x20\x20\x20\x20\x20window.__enhanceController\x20=\x20controller;','\x20injectRuntimeBootstrap()\x20called','toLowerCase','object','168648kRseig','defineProperty','/webpack-hmr','\x20\x20\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket.prototype,\x20\x22constructor\x22,\x20{\x20value:\x20EnhancedWebSocket\x20});','\x20\x20}\x20catch\x20(error)\x20{','addEventListener','image','waitUntil','\x20\x20\x20NAVIGATE\x20request\x20-\x20handling\x20navigation','\x20\x20\x20SUCCESS\x20-\x20returning\x20enhancement\x20document','vite-hmr','\x20is\x20overlay\x20asset\x20-\x20not\x20routing','img-src\x20*\x20data:\x20blob:','\x20\x20\x20Fetching\x20enhancement\x20document...','searchParams','\x20fetchEnhancementDocument:\x20','\x20rewriteDocument()\x20called','})();','includes','\x20\x20\x20\x20var\x20enhancementBase\x20=\x20new\x20URL(','permissive','\x20DISABLE\x20message\x20-\x20resetting\x20customer\x20config','\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20Failed\x20to\x20bootstrap\x20runtime:\x22,\x20error);','destination','/assets/enhance-runtime.js','toString','toISOString','\x20\x20\x20HTML\x20response\x20-\x20processing...','access-control-expose-headers','href','158035uMlhfo','\x20\x20\x20Stripping\x20SRI\x20attributes...','production','replace',',\x20null,\x202));','<script\x20type=\x22module\x22\x20data-enhance-runtime-bootstrap>','enhancementBase','origin','\x20\x20\x20Rewriting\x20entry\x20references...','\x20\x20\x20Skipping\x20runtime\x20bootstrap\x20injection','statusText','\x20\x20\x20\x20\x20\x20','\x20\x20\x20\x20const\x20runtimePath\x20=\x20','\x20\x20\x20\x20\x20\x20if\x20(!isExternalHost\x20&&\x20!isAppHost)\x20return\x20false;','\x20chars)','delete','\x20\x20\x20Fetch\x20error:','enhance:disable','enhancementUrl','method','2762496rsJyPg','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Calling\x20Enhance.init()\x20with\x20options:\x22,\x20JSON.stringify(','\x20\x20\x20Fetching\x20production\x20response...','\x20\x20\x20Not\x20OK\x20(','\x20\x20\x20securityMode:\x20','activate','slice','\x20\x20\x20\x20\x20\x20var\x20proxied\x20=\x20new\x20URL(enhancementBase);','\x20\x20\x20Injecting\x20runtime\x20bootstrap...','1723374MNFjcq','callbackBypassNormalized','message','debug','\x20\x20\x20Failed\x20to\x20rewrite\x20document:','\x20Clearing\x20cached\x20enhancementUrl\x20(navigation\x20without\x20param)','\x20\x20\x20Document\x20rewrite\x20complete','\x20\x20\x20Document\x20source:\x20','clone','\x20\x20\x20runtimeScriptPath:\x20','search','map','HEAD','font','\x0a</head>','\x20\x20\x20Enhancement\x20MISS\x20for\x20','\x20\x20\x20Attempting\x20to\x20fetch\x20from\x20enhancement:\x20','1631CaZYVB','font-src\x20*\x20data:','/auth/callback','__esModule','frame-ancestors\x20','\x20\x20\x20CORS\x20blocked\x20(opaque\x20response)','stringify','\x20\x20\x20\x20\x20\x20return\x20proxied;','\x20\x20\x20Custom\x20security\x20mode\x20-\x20preserving\x20original\x20CSP','data','url','\x20\x20\x20\x20\x20\x20return\x20false;','Enhancement\x20document\x20fetch\x20failed','cross-origin-opener-policy','\x20\x20\x20\x20var\x20basePrefix\x20=\x20\x22/__sbx__\x22;','\x20\x20\x20\x20\x20\x20var\x20loweredPath\x20=\x20pathname.toLowerCase();','x-enhance-routing','\x20\x20\x20\x20\x20\x20var\x20protoList\x20=\x20toArray(protocols);','\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{','cors','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;','\x20handleNavigationRequest:\x20','add','\x20buildRuntimeBootstrapScript:\x20no\x20runtimePath\x20-\x20returning\x20null','\x20Invalid\x20message\x20data\x20-\x20ignoring','has','Enhancement\x20CORS\x20blocked','\x20\x20\x20\x20}','\x20for\x20','enhancement','worker','\x20Calling\x20clients.claim()...','\x20\x20\x20\x20\x20\x20proxied.hash\x20=\x20\x22\x22;','config','\x20\x20\x20Rewritten\x20HTML\x20length:\x20','script','test','join','\x20\x20\x20\x20\x20\x20\x20\x20var\x20proto\x20=\x20protoList[i];','\x20\x20\x20Bootstrap\x20script\x20generated\x20(','opaque','default-src\x20\x27self\x27\x20blob:\x20data:','http://','\x20\x20}','\x20\x20\x20\x20\x20\x20return\x20Array.isArray(value)\x20?\x20value\x20:\x20[value];','/webpackhotmiddleware','\x20\x20\x20Fetching\x20from\x20enhancement...','custom','\x20Config\x20reset','\x20\x20\x20Not\x20HTML\x20response\x20-\x20returning\x20null','/snowpack/hmr','log','none','set-cookie2','set','\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20unavailable\x22,\x20error);','/webpack-hot-middleware','set-cookie','\x20\x20\x20\x20\x20\x20var\x20isExternalHost\x20=\x20externalHosts.includes(url.host);','\x20\x20\x20\x20}\x20catch\x20(error)\x20{','\x20Customer\x20config\x20updated:','value','text','\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20skipping','hash','731727cFMPWO','overlayPath','\x5cs*=\x5cs*([\x27\x22])([^\x22\x27]+)\x5c1','\x20\x20\x20\x20const\x20runtimeModule\x20=\x20await\x20import(runtimePath);','\x20Service\x20Worker\x20script\x20loaded\x20at\x20','style','\x20\x20\x20\x20\x20\x20var\x20isAppHost\x20=\x20url.host\x20===\x20window.location.host;','\x20\x20\x20Response:\x20',')\x20-\x20returning\x20null','\x20Unknown\x20message\x20type:\x20','\x20\x20\x20enhancementUrl\x20in\x20config:\x20','startsWith','\x20\x20\x20\x20\x20\x20}','runtimeScriptPath','\x20\x20\x20\x20\x20\x20proxied.search\x20=\x20targetUrl.search;','\x20shouldRouteAsset:\x20','\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Controller\x20attached\x20to\x20window.enhancePreview\x22);','\x20\x20\x20\x20\x20\x20if\x20(!value)\x20return\x20[];','host','media-src\x20*\x20data:\x20blob:','rewritten','\x20\x20\x20\x20\x20\x20//\x20Allow\x20proxying\x20for\x20specific\x20external\x20hosts','x-enhance-document-source','no-store','content-type','\x20\x20\x20\x20\x20\x20//\x20ignore\x20if\x20unable\x20to\x20redefine','stylesheet','redirect','get','\x20\x20\x20source:\x20','cache-control','\x20-\x20falling\x20back\x20to\x20production','navigate','\x20\x20\x20\x20\x20\x20for\x20(var\x20j\x20=\x200;\x20j\x20<\x20knownPathHints.length;\x20j++)\x20{','\x20\x20\x20\x20\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20fallback\x22,\x20error);','\x20Build\x20config:','location','<script\x5cb[^>]*src\x5cs*=\x5cs*([\x27\x22])','overlayEnableViteHmr','(function(){','script-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20\x27unsafe-eval\x27\x20blob:\x20data:\x20https:\x20http:','\x20\x20\x20\x20};','GET','\x20\x20\x20\x20\x20\x20window.__enhanceInitialized\x20=\x20true;','\x5cu003e','length','$&\x0a','\x20\x20\x20\x20var\x20toArray\x20=\x20function(value)\x20{','</script>','securityMode','\x20\x20\x20\x20const\x20Enhance\x20=\x20runtimeModule?.Enhance\x20??\x20runtimeModule?.default?.Enhance\x20??\x20runtimeModule?.default;','content-security-policy','sharedworker','hit','8HGPfOV','\x20\x20try\x20{','18510HiBLEx','632458dHYWDa','\x20\x20\x20\x20\x20\x20var\x20pathname\x20=\x20url.pathname\x20||\x20\x22/\x22;','info','some','enhance:configure','\x20ACTIVATE\x20event','pathname','\x20\x20\x20\x20Object.assign(EnhancedWebSocket,\x20originalWebSocket);','\x20\x20\x20Script\x20inserted\x20into\x20document','/_next/webpack-hmr','\x20\x20\x20\x20if\x20(!Enhance\x20||\x20typeof\x20Enhance.init\x20!==\x20\x22function\x22)\x20{','\x20\x20\x20\x20var\x20knownPathHints\x20=\x20','access-control-allow-origin','error','\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20returning\x20null','\x5c1[^>]*>\x5cs*</script>','/webpack-dev-server','\x20Bootstrap\x20options:','\x20\x20\x20\x20if\x20(!originalWebSocket\x20||\x20originalWebSocket.__enhancePatched)\x20{','src','function','modulepreload','status','\x20\x20\x20Enhancement\x20URL:\x20','\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(url,\x20protocols);','\x20INSTALL\x20event','call','\x20\x20\x20\x20\x20\x20\x20\x20if\x20(loweredPath.indexOf(knownPathHints[j])\x20!==\x20-1)\x20{','\x20\x20\x20\x20if\x20(typeof\x20window\x20!==\x20\x22undefined\x22)\x20{','<script\x20data-enhance-hmr-bridge>','/__vite_ping','clients','/parcel-hmr','\x20\x20\x20shouldInjectOverlay:\x20','full','\x20\x20\x20Document\x20fetch\x20error:','/vite/client','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20var\x20rewritten\x20=\x20buildProxiedUrl(resolved);','(async\x20()\x20=>\x20{','worker-src\x20\x27self\x27\x20blob:','\x20\x20\x20overlayPath:\x20','cross-origin-resource-policy','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Starting\x20runtime\x20bootstrap...\x22);','claim','?import','x-enhance-enhancement','/__parcel_hmr','\x20fetchFromEnhancement:\x20','https://','access-control-allow-credentials','endsWith','\x20\x20\x20\x20\x20\x20\x20\x20}','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20path:\x22,\x20runtimePath);','Enhancement\x20fetch\x20failed','\x20CONFIG\x20message\x20-\x20updating\x20customer\x20config','headers','\x20\x20\x20\x20\x20\x20try\x20{','\x20\x20\x20\x20\x20\x20//\x20Always\x20use\x20enhancementBase\x20for\x20HMR\x20WebSocket\x20proxying','/sockjs-node','Enhancement\x20document\x20miss\x20','text/html','\x20\x20\x20\x20var\x20EnhancedWebSocket\x20=\x20function(url,\x20protocols)\x20{','\x20\x20\x20\x20Object.setPrototypeOf(EnhancedWebSocket,\x20originalWebSocket);','\x20\x20\x20SUCCESS\x20-\x20returning\x20enhanced\x20response','\x20\x20\x20Not\x20handling\x20(method\x20not\x20GET/HEAD)','\x20\x20\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20No\x20Enhance.init\x20export\x20found!\x22);','\x20\x20\x20\x20\x20\x20var\x20externalHosts\x20=\x20[\x22app.enhance.localhost:4450\x22,\x20\x22localhost:5173\x22];','539EddIPV','\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket,\x20\x22__enhancePatched\x22,\x20{\x20value:\x20true\x20});','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Bootstrap\x20complete\x22);','respondWith','cross-origin-embedder-policy','\x20\x20\x20\x20const\x20controller\x20=\x20Enhance.init(','/__vite/client','\x20\x20\x20\x20\x20\x20window.enhancePreview\x20=\x20controller;','https://assets.enhancelabs.ai/overlay.js','match','\x20\x20\x20\x20\x20\x20\x20\x20var\x20resolved\x20=\x20url\x20instanceof\x20URL\x20?\x20url\x20:\x20new\x20URL(String(url),\x20window.location.href);','mode','content-length','include','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(rewritten.toString(),\x20protocols);','\x20is\x20runtime\x20asset\x20-\x20not\x20routing','\x20\x20\x20Checking\x20for\x20enhancement\x20document...','\x20Calling\x20skipWaiting()...','\x20\x20\x20Injecting\x20HMR\x20bridge\x20(enhancement\x20source)...','2amMfEv','\x20\x20\x20Content-Type:\x20'];_0x2d17=function(){return _0x37a805;};return _0x2d17();}var EnhanceSW=((()=>{const _0x108936=_0x36a8;var _0x2a3329=Object[_0x108936(0x1e4)],_0x5ba117=Object['getOwnPropertyDescriptor'],_0x2342f9=Object['getOwnPropertyNames'],_0x442a9a=Object['prototype']['hasOwnProperty'],_0x31e4d5=(_0x405963,_0x49fb41)=>{for(var _0xf90279 in _0x49fb41)_0x2a3329(_0x405963,_0xf90279,{'get':_0x49fb41[_0xf90279],'enumerable':!![]});},_0x4793ac=(_0x21a850,_0x259b9a,_0x11f627,_0x2d9ae8)=>{const _0x355a15=_0x108936;if(_0x259b9a&&typeof _0x259b9a===_0x355a15(0x1e2)||typeof _0x259b9a===_0x355a15(0x18b)){for(let _0x5a6823 of _0x2342f9(_0x259b9a))if(!_0x442a9a[_0x355a15(0x191)](_0x21a850,_0x5a6823)&&_0x5a6823!==_0x11f627)_0x2a3329(_0x21a850,_0x5a6823,{'get':()=>_0x259b9a[_0x5a6823],'enumerable':!(_0x2d9ae8=_0x5ba117(_0x259b9a,_0x5a6823))||_0x2d9ae8['enumerable']});}return _0x21a850;},_0x343a87=_0x3d7a17=>_0x4793ac(_0x2a3329({},_0x108936(0x232),{'value':!![]}),_0x3d7a17),_0x28aaed={};_0x31e4d5(_0x28aaed,{'log':()=>_0x23577c});var _0x251c98=_0x108936(0x17b),_0x5f42c8=_0x108936(0x212);function _0x26601a(_0x111a43){const _0x23bf9b=_0x108936;if(!_0x111a43[_0x23bf9b(0x149)]('/'))return'/'+_0x111a43;return _0x111a43;}function _0x402cbf(_0x4e1063,_0x33c1b0){const _0x237d30=_0x108936,_0x5a03c6=new URL(_0x4e1063[_0x237d30(0x1fc)]()),_0x4884fa=_0x5a03c6[_0x237d30(0x17d)][_0x237d30(0x1a9)]('/')?_0x5a03c6[_0x237d30(0x17d)][_0x237d30(0x21b)](0x0,-0x1):_0x5a03c6[_0x237d30(0x17d)],_0x51b9cb=_0x33c1b0[_0x237d30(0x17d)][_0x237d30(0x149)]('/')?_0x33c1b0['pathname']:'/'+_0x33c1b0[_0x237d30(0x17d)];return _0x5a03c6['pathname']=(''+_0x4884fa+_0x51b9cb)[_0x237d30(0x204)](/\/+/g,'/'),_0x5a03c6[_0x237d30(0x228)]=_0x33c1b0[_0x237d30(0x228)],_0x5a03c6[_0x237d30(0x13d)]='',_0x5a03c6;}var _0x1e51b4='[Enhance\x20SW\x20Routing]',_0x2bab86=new Set([_0x108936(0x252),_0x108936(0x143),_0x108936(0x22b),_0x108936(0x1e9),_0x108936(0x24d),_0x108936(0x172),_0x108936(0x18c)]);function _0x14d370(_0x12ecda){const _0xcf1376=_0x108936,_0x5d1605=_0x12ecda[_0xcf1376(0x214)]===_0xcf1376(0x168)||_0x12ecda[_0xcf1376(0x214)]===_0xcf1376(0x22a);return _0x5d1605;}function _0xa6cdfe(_0x15255b,_0x23d54d){const _0x26d290=_0x108936,_0x1f5576=_0x26601a(_0x23d54d),_0x470949=_0x15255b[_0x26d290(0x21f)][_0x26d290(0x17a)](_0x25b0dc=>_0x1f5576[_0x26d290(0x149)](_0x25b0dc));return _0x470949;}function _0x337824(_0x5cb755,_0xb3557c,_0x11f386){const _0x55fbdd=_0x108936,_0x1dca83=_0xb3557c[_0x55fbdd(0x1fa)];if(!_0x1dca83||!_0x2bab86[_0x55fbdd(0x248)](_0x1dca83))return![];if(_0x481f51(_0x5cb755,_0x11f386))return console[_0x55fbdd(0x262)](_0x1e51b4+_0x55fbdd(0x14d)+_0x11f386[_0x55fbdd(0x17d)]+_0x55fbdd(0x1ee)),![];if(_0x3aa8f3(_0x5cb755,_0x11f386))return console[_0x55fbdd(0x262)](_0x1e51b4+_0x55fbdd(0x14d)+_0x11f386[_0x55fbdd(0x17d)]+_0x55fbdd(0x1c9)),![];if(_0x11f386[_0x55fbdd(0x208)]!==self[_0x55fbdd(0x162)][_0x55fbdd(0x208)])return![];return!![];}async function _0x37d2f6(_0x284c69,_0x2948de,_0x62265){const _0x31d871=_0x108936;console[_0x31d871(0x262)](_0x1e51b4+_0x31d871(0x1a6)+_0x62265[_0x31d871(0x17d)]);if(!_0x284c69['enhancementBase'])return console[_0x31d871(0x262)](_0x1e51b4+_0x31d871(0x13c)),null;const _0xf6417d=_0xe300f3(_0x284c69,_0x62265);console[_0x31d871(0x262)](_0x1e51b4+_0x31d871(0x18e)+_0xf6417d[_0x31d871(0x1fc)]());const _0x38f552=new Headers(_0x2948de[_0x31d871(0x1ae)]);_0x38f552['set'](_0x31d871(0x23f),'enhancement'),_0x38f552[_0x31d871(0x210)](_0x31d871(0x150));const _0x39c378=new Request(_0xf6417d[_0x31d871(0x1fc)](),{'method':_0x2948de[_0x31d871(0x214)],'headers':_0x38f552,'credentials':_0x31d871(0x1c7),'redirect':_0x2948de[_0x31d871(0x159)],'cache':'default','mode':_0x31d871(0x242)});try{console[_0x31d871(0x262)](_0x1e51b4+_0x31d871(0x25d));const _0x53f690=await fetch(_0x39c378);console[_0x31d871(0x262)](_0x1e51b4+_0x31d871(0x145)+_0x53f690['status']+'\x20'+_0x53f690[_0x31d871(0x20b)]+',\x20type:\x20'+_0x53f690[_0x31d871(0x1d8)]);if(_0x53f690[_0x31d871(0x1d8)]===_0x31d871(0x257))return console['log'](_0x1e51b4+_0x31d871(0x234)),_0x23577c('info',_0x31d871(0x249),_0xf6417d[_0x31d871(0x1fc)]()),null;if(!_0x53f690['ok'])return console[_0x31d871(0x262)](_0x1e51b4+_0x31d871(0x218)+_0x53f690[_0x31d871(0x18d)]+_0x31d871(0x146)),_0x23577c('debug',_0x31d871(0x1d3)+_0x53f690[_0x31d871(0x18d)]+_0x31d871(0x24b)+_0xf6417d[_0x31d871(0x17d)]),null;return console[_0x31d871(0x262)](_0x1e51b4+_0x31d871(0x1b6)),_0x2ea914(_0x53f690,_0x2948de[_0x31d871(0x214)]);}catch(_0x487fd2){return console[_0x31d871(0x184)](_0x1e51b4+_0x31d871(0x211),_0x487fd2),_0x23577c(_0x31d871(0x179),_0x31d871(0x1ac),_0x487fd2),null;}}async function _0x512841(_0x44a97f,_0x2c7870){const _0x29c97c=_0x108936,_0x2fc311=new URL(_0x2c7870[_0x29c97c(0x239)]);console[_0x29c97c(0x262)](_0x1e51b4+_0x29c97c(0x1f2)+_0x2fc311[_0x29c97c(0x17d)]+_0x2fc311[_0x29c97c(0x228)]);if(!_0x44a97f[_0x29c97c(0x207)])return console[_0x29c97c(0x262)](_0x1e51b4+_0x29c97c(0x185)),null;const _0x2052d5=_0xe300f3(_0x44a97f,_0x2fc311);console[_0x29c97c(0x262)](_0x1e51b4+'\x20\x20\x20Enhancement\x20document\x20URL:\x20'+_0x2052d5[_0x29c97c(0x1fc)]());const _0x105a89=new Headers(_0x2c7870[_0x29c97c(0x1ae)]);_0x105a89['set'](_0x29c97c(0x23f),'enhancement-document'),_0x105a89[_0x29c97c(0x210)](_0x29c97c(0x150)),_0x105a89[_0x29c97c(0x210)](_0x29c97c(0x1c6));const _0x562fe3=new Request(_0x2052d5[_0x29c97c(0x1fc)](),{'method':'GET','headers':_0x105a89,'credentials':_0x29c97c(0x1c7),'redirect':'follow','cache':'default','mode':_0x29c97c(0x242)});try{console[_0x29c97c(0x262)](_0x1e51b4+_0x29c97c(0x1f0));const _0x3183fc=await fetch(_0x562fe3);console[_0x29c97c(0x262)](_0x1e51b4+_0x29c97c(0x145)+_0x3183fc['status']+'\x20'+_0x3183fc[_0x29c97c(0x20b)]+',\x20type:\x20'+_0x3183fc['type']),console[_0x29c97c(0x262)](_0x1e51b4+_0x29c97c(0x1ce)+_0x3183fc[_0x29c97c(0x1ae)]['get'](_0x29c97c(0x156)));if(_0x3183fc[_0x29c97c(0x1d8)]===_0x29c97c(0x257))return console[_0x29c97c(0x262)](_0x1e51b4+_0x29c97c(0x234)),_0x23577c('info','Enhancement\x20document\x20CORS\x20blocked',_0x2052d5[_0x29c97c(0x1fc)]()),null;if(!_0x3183fc['ok'])return console[_0x29c97c(0x262)](_0x1e51b4+_0x29c97c(0x218)+_0x3183fc['status']+_0x29c97c(0x146)),_0x23577c(_0x29c97c(0x221),_0x29c97c(0x1b2)+_0x3183fc[_0x29c97c(0x18d)]+_0x29c97c(0x24b)+_0x2052d5['pathname']),null;if(!_0x161ec1(_0x3183fc))return console['log'](_0x1e51b4+_0x29c97c(0x260)),null;return console[_0x29c97c(0x262)](_0x1e51b4+_0x29c97c(0x1ec)),_0x2ea914(_0x3183fc,_0x29c97c(0x168));}catch(_0xc97e05){return console['error'](_0x1e51b4+_0x29c97c(0x19a),_0xc97e05),_0x23577c(_0x29c97c(0x179),_0x29c97c(0x23b),_0xc97e05),null;}}function _0xe300f3(_0x43d12c,_0x2dd440){const _0x30ae4f=_0x108936;if(!_0x43d12c[_0x30ae4f(0x207)])throw new Error('Cannot\x20build\x20enhancement\x20URL\x20without\x20enhancementBase\x20configured');return _0x402cbf(_0x43d12c[_0x30ae4f(0x207)],_0x2dd440);}function _0x2ea914(_0x1276f2,_0x501355){const _0x45ef54=_0x108936,_0x18226a=_0x1276f2['clone'](),_0x440db4=new Headers(_0x18226a[_0x45ef54(0x1ae)]);_0x440db4[_0x45ef54(0x210)](_0x45ef54(0x183)),_0x440db4[_0x45ef54(0x210)](_0x45ef54(0x1a8)),_0x440db4[_0x45ef54(0x210)](_0x45ef54(0x1ff)),_0x440db4[_0x45ef54(0x265)](_0x45ef54(0x1a4),_0x45ef54(0x173)),_0x4fc443(_0x440db4);const _0x4177ef=_0x501355===_0x45ef54(0x22a)?null:_0x18226a['body'];return new Response(_0x4177ef,{'status':_0x18226a['status'],'statusText':_0x18226a[_0x45ef54(0x20b)],'headers':_0x440db4});}function _0x161ec1(_0x5cd9f8){const _0x1ec003=_0x108936,_0x18f8a6=_0x5cd9f8[_0x1ec003(0x1ae)][_0x1ec003(0x15a)]('content-type');return _0x18f8a6!=null&&_0x18f8a6[_0x1ec003(0x1f5)](_0x1ec003(0x1b3));}function _0x481f51(_0x204066,_0x8971db){const _0x1516f9=_0x108936;return _0x2df8e3(_0x8971db,_0x204066[_0x1516f9(0x13f)]);}function _0x3aa8f3(_0x29dfa9,_0x4648a2){const _0x58a557=_0x108936;return _0x2a3202(_0x4648a2,_0x29dfa9[_0x58a557(0x14b)]);}function _0x2df8e3(_0x13f390,_0x41d71e){const _0x24d52d=_0x108936;if(!_0x41d71e)return![];if(_0x41d71e['startsWith'](_0x24d52d(0x259))||_0x41d71e['startsWith'](_0x24d52d(0x1a7)))return _0x13f390[_0x24d52d(0x200)]===_0x41d71e;const _0x472006=_0x9e0d5a(_0x41d71e);if(!_0x472006)return![];const _0x4f606c=''+_0x13f390[_0x24d52d(0x17d)]+_0x13f390[_0x24d52d(0x228)];if(_0x4f606c===_0x472006)return!![];if(_0x13f390[_0x24d52d(0x228)]===_0x24d52d(0x1a3))return _0x13f390[_0x24d52d(0x17d)]===_0x472006;return![];}function _0x2a3202(_0x5afcda,_0x42196d){const _0x1c8995=_0x108936;if(!_0x42196d)return![];if(_0x42196d[_0x1c8995(0x149)](_0x1c8995(0x259))||_0x42196d['startsWith'](_0x1c8995(0x1a7)))return _0x5afcda[_0x1c8995(0x200)]===_0x42196d;const _0x2a2c96=_0x9e0d5a(_0x42196d);if(!_0x2a2c96)return![];const _0x325a37=''+_0x5afcda['pathname']+_0x5afcda['search'];return _0x325a37===_0x2a2c96;}function _0x9e0d5a(_0x5d90c2){const _0x142171=_0x108936;if(!_0x5d90c2)return _0x5d90c2;if(_0x5d90c2[_0x142171(0x149)](_0x142171(0x259))||_0x5d90c2[_0x142171(0x149)](_0x142171(0x1a7)))return _0x5d90c2;const _0x548566=_0x5d90c2[_0x142171(0x204)](/^\.\//,'');if(_0x548566['startsWith']('/'))return _0x548566;return'/'+_0x548566;}function _0x4fc443(_0x49dbff){const _0x1d8f3a=_0x108936;_0x49dbff[_0x1d8f3a(0x210)](_0x1d8f3a(0x268)),_0x49dbff[_0x1d8f3a(0x210)](_0x1d8f3a(0x264));}function _0x33889b(_0x464fa7){const _0x2cc30d=_0x108936,_0x583a73=[_0x2cc30d(0x258),_0x2cc30d(0x166),'style-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20blob:\x20data:\x20https:\x20http:',_0x2cc30d(0x1ef),_0x2cc30d(0x230),'connect-src\x20*',_0x2cc30d(0x151),_0x2cc30d(0x19e),'object-src\x20\x27none\x27'],_0x1a16de=_0x5d3392(_0x464fa7);return _0x1a16de&&_0x583a73['push'](_0x1a16de),_0x583a73[_0x2cc30d(0x254)](';\x20');}function _0x2e81d(_0x43ca2a){const _0xd5ac2d=_0x108936;_0x43ca2a[_0xd5ac2d(0x210)](_0xd5ac2d(0x268)),_0x43ca2a[_0xd5ac2d(0x210)]('set-cookie2');}function _0x5d3392(_0xf9420a){const _0x524ec8=_0x108936;if(!_0xf9420a)return null;const _0x13f20b=_0xf9420a[_0x524ec8(0x1c3)](/frame-ancestors\s+([^;]+)/i);if(!_0x13f20b)return null;return _0x524ec8(0x233)+_0x13f20b[0x1]['trim']();}function _0x5d1503(_0x5930a9,_0x33a5ad){const _0xd127cf=_0x108936;if(/<head[^>]*>/i[_0xd127cf(0x253)](_0x5930a9)){const _0x440b2e=_0x5930a9[_0xd127cf(0x1c3)](/<head[^>]*>/i);if(_0x440b2e){const _0x3523d9=_0x440b2e[0x0];return _0x5930a9[_0xd127cf(0x204)](_0x3523d9,_0x3523d9+'\x0a'+_0x33a5ad);}}if(/<\/head>/i[_0xd127cf(0x253)](_0x5930a9))return _0x5930a9['replace'](/<\/head>/i,_0x33a5ad+_0xd127cf(0x22c));if(/<body\b[^>]*>/i[_0xd127cf(0x253)](_0x5930a9))return _0x5930a9[_0xd127cf(0x204)](/<body\b[^>]*>/i,_0xd127cf(0x16c)+_0x33a5ad);if(/<\/body>/i[_0xd127cf(0x253)](_0x5930a9))return _0x5930a9['replace'](/<\/body>/i,_0x33a5ad+'\x0a</body>');return _0x33a5ad+'\x0a'+_0x5930a9;}var _0x3d9ada=[_0x108936(0x1ed)],_0x23d9b0=['/@vite/client',_0x108936(0x1c0),_0x108936(0x19b),_0x108936(0x195),_0x108936(0x1b1),_0x108936(0x187),_0x108936(0x1e5),_0x108936(0x25c),_0x108936(0x267),_0x108936(0x1de),_0x108936(0x180),_0x108936(0x197),_0x108936(0x1a5),'/__snowpack__',_0x108936(0x261)];function _0x25fe87(_0x367ccb,_0x4902b5){const _0x24e91b=_0x34a526(_0x367ccb);if(!_0x24e91b)return _0x4902b5;return _0x5d1503(_0x4902b5,_0x24e91b);}function _0x34a526(_0x522336){const _0xb111de=_0x108936;if(!_0x522336[_0xb111de(0x207)])return null;const _0x9644f4=_0x522336[_0xb111de(0x207)][_0xb111de(0x1fc)](),_0x3fc0b3=_0x4e6388(_0x3d9ada),_0x143b7c=_0x4e6388(_0x23d9b0),_0x2557a6=[_0xb111de(0x194),_0xb111de(0x165),_0xb111de(0x175),_0xb111de(0x1f6)+JSON[_0xb111de(0x235)](_0x9644f4)+');','\x20\x20\x20\x20var\x20originalWebSocket\x20=\x20window.WebSocket;',_0xb111de(0x189),'\x20\x20\x20\x20\x20\x20return;',_0xb111de(0x24a),'\x20\x20\x20\x20var\x20knownProtocols\x20=\x20new\x20Set('+JSON[_0xb111de(0x235)](_0x3fc0b3)+');',_0xb111de(0x182)+JSON[_0xb111de(0x235)](_0x143b7c)+';',_0xb111de(0x23d),_0xb111de(0x16d),_0xb111de(0x14f),_0xb111de(0x25b),_0xb111de(0x167),'\x20\x20\x20\x20var\x20shouldProxy\x20=\x20function(url,\x20protocols)\x20{',_0xb111de(0x153),_0xb111de(0x1b9),_0xb111de(0x137),_0xb111de(0x144),_0xb111de(0x20c),_0xb111de(0x20e),_0xb111de(0x20c),_0xb111de(0x178),'\x20\x20\x20\x20\x20\x20if\x20(pathname\x20===\x20basePrefix\x20||\x20pathname.indexOf(basePrefix\x20+\x20\x22/\x22)\x20===\x200)\x20{','\x20\x20\x20\x20\x20\x20\x20\x20return\x20false;',_0xb111de(0x14a),_0xb111de(0x240),_0xb111de(0x1d5),_0xb111de(0x255),'\x20\x20\x20\x20\x20\x20\x20\x20if\x20(typeof\x20proto\x20===\x20\x22string\x22\x20&&\x20knownProtocols.has(proto.toLowerCase()))\x20{',_0xb111de(0x243),'\x20\x20\x20\x20\x20\x20\x20\x20}',_0xb111de(0x14a),_0xb111de(0x23e),_0xb111de(0x15f),_0xb111de(0x192),'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;',_0xb111de(0x1aa),_0xb111de(0x14a),_0xb111de(0x23a),_0xb111de(0x167),'\x20\x20\x20\x20var\x20buildProxiedUrl\x20=\x20function(targetUrl)\x20{',_0xb111de(0x1b0),_0xb111de(0x21c),_0xb111de(0x14c),_0xb111de(0x24f),_0xb111de(0x236),_0xb111de(0x167),_0xb111de(0x1b4),_0xb111de(0x1af),_0xb111de(0x1c4),'\x20\x20\x20\x20\x20\x20\x20\x20if\x20(shouldProxy(resolved,\x20protocols))\x20{',_0xb111de(0x19c),_0xb111de(0x1c8),_0xb111de(0x1aa),_0xb111de(0x241),_0xb111de(0x160),_0xb111de(0x14a),_0xb111de(0x18f),'\x20\x20\x20\x20};',_0xb111de(0x17e),'\x20\x20\x20\x20EnhancedWebSocket.prototype\x20=\x20originalWebSocket.prototype;',_0xb111de(0x1b5),_0xb111de(0x1dd),_0xb111de(0x1e6),_0xb111de(0x138),_0xb111de(0x157),'\x20\x20\x20\x20}',_0xb111de(0x1bb),'\x20\x20\x20\x20window.WebSocket\x20=\x20EnhancedWebSocket;',_0xb111de(0x1e7),_0xb111de(0x266),_0xb111de(0x25a),_0xb111de(0x1f4),'</script>'];return _0x2557a6[_0xb111de(0x254)]('\x0a');}function _0x4e6388(_0xa0ada7){const _0x3def0b=_0x108936,_0x2bffef=new Set(),_0x5e5e2b=[];for(const _0x499cd7 of _0xa0ada7){const _0x607213=_0x499cd7[_0x3def0b(0x1e1)]();if(_0x2bffef[_0x3def0b(0x248)](_0x607213))continue;_0x2bffef[_0x3def0b(0x245)](_0x607213),_0x5e5e2b['push'](_0x607213);}return _0x5e5e2b;}var _0x14ef6d='[Enhance\x20SW\x20Bootstrap]';function _0xce380b(_0x1b4878,_0x2f4297){const _0x11b4cd=_0x108936;console[_0x11b4cd(0x262)](_0x14ef6d+_0x11b4cd(0x1e0)),console['log'](_0x14ef6d+_0x11b4cd(0x227)+_0x1b4878[_0x11b4cd(0x14b)]),console['log'](_0x14ef6d+_0x11b4cd(0x19f)+_0x1b4878[_0x11b4cd(0x13f)]);const _0x38057e=_0xa284eb(_0x1b4878);if(!_0x38057e)return console['log'](_0x14ef6d+'\x20\x20\x20No\x20script\x20generated\x20(missing\x20runtimePath)\x20-\x20returning\x20html\x20unchanged'),_0x2f4297;console['log'](_0x14ef6d+_0x11b4cd(0x256)+_0x38057e[_0x11b4cd(0x16b)]+_0x11b4cd(0x20f));const _0x15e5fc=_0x400188(_0x2f4297,_0x1b4878['runtimeScriptPath']);console['log'](_0x14ef6d+'\x20\x20\x20Stripped\x20existing\x20bootstraps,\x20inserting\x20new\x20script...');const _0x350107=_0x5d1503(_0x15e5fc,_0x38057e);return console[_0x11b4cd(0x262)](_0x14ef6d+_0x11b4cd(0x17f)),_0x350107;}function _0xa284eb(_0x297845){const _0xe7fd59=_0x108936,_0x556f01=_0x297845[_0xe7fd59(0x14b)];if(!_0x556f01)return console['log'](_0x14ef6d+_0xe7fd59(0x246)),null;const _0x28d3ba=_0x361931(_0x297845);console[_0xe7fd59(0x262)](_0x14ef6d+_0xe7fd59(0x188),JSON[_0xe7fd59(0x235)](_0x28d3ba,null,0x2));const _0x5889d0=_0x21cafb(_0x28d3ba),_0x177059=JSON[_0xe7fd59(0x235)](_0x556f01),_0x324806=[_0xe7fd59(0x206),_0xe7fd59(0x19d),_0xe7fd59(0x175),_0xe7fd59(0x20d)+_0x177059+';',_0xe7fd59(0x1a1),_0xe7fd59(0x1ab),_0xe7fd59(0x1d6),_0xe7fd59(0x141),'\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20module\x20loaded:\x22,\x20Object.keys(runtimeModule));',_0xe7fd59(0x170),_0xe7fd59(0x181),_0xe7fd59(0x1b8),'\x20\x20\x20\x20\x20\x20return;',_0xe7fd59(0x24a),_0xe7fd59(0x216)+_0x5889d0+_0xe7fd59(0x205),_0xe7fd59(0x1bf)+_0x5889d0+');','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Enhance\x20controller\x20created:\x22,\x20controller);',_0xe7fd59(0x193),_0xe7fd59(0x1c1),_0xe7fd59(0x14e),'\x20\x20\x20\x20\x20\x20//\x20Mark\x20as\x20initialized\x20globally\x20so\x20other\x20module\x20instances\x20(e.g.\x20enhanced\x20app\x27s\x20bundled\x20copy)\x20skip\x20re-init',_0xe7fd59(0x169),_0xe7fd59(0x1df),'\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Set\x20window.__enhanceInitialized\x20=\x20true\x22);',_0xe7fd59(0x24a),_0xe7fd59(0x1bc),_0xe7fd59(0x1e7),_0xe7fd59(0x1f9),_0xe7fd59(0x25a),'})();',_0xe7fd59(0x16e)];return _0x324806[_0xe7fd59(0x254)]('\x0a');}function _0x361931(_0x1a1e75){const _0x2d5807=_0x108936,_0x378ba2={'callbackBypass':_0x1a1e75['callbackBypass'],'__development':{'enableOverlayHmr':_0x1a1e75[_0x2d5807(0x164)],'overlayPath':_0x1a1e75[_0x2d5807(0x13f)],'security':_0x1a1e75['securityMode'],'backendUrl':_0x1a1e75['backendUrl']}};return _0x378ba2;}function _0x21cafb(_0x1b1ec5){const _0x4d1374=_0x108936;return JSON[_0x4d1374(0x235)](_0x1b1ec5)['replace'](/</g,_0x4d1374(0x1d7))[_0x4d1374(0x204)](/>/g,_0x4d1374(0x16a));}function _0x400188(_0x57a050,_0x276619){const _0x5f3210=_0x108936,_0x583e7a=/<script\b[^>]*data-enhance-runtime-bootstrap[^>]*>[\s\S]*?<\/script>/gi;let _0x11ee94=_0x57a050[_0x5f3210(0x204)](_0x583e7a,'');if(_0x276619){const _0x1379dd=_0x4301cb(_0x276619),_0x14721b=new RegExp(_0x5f3210(0x163)+_0x1379dd+_0x5f3210(0x186),'gi');_0x11ee94=_0x11ee94[_0x5f3210(0x204)](_0x14721b,'');}return _0x11ee94;}function _0x4301cb(_0x3f6fab){const _0x17364c=_0x108936;return _0x3f6fab[_0x17364c(0x204)](/[-/\\^$*+?.()|[\]{}]/g,'\x5c$&');}function _0x123499(_0x2efcad,_0x17d557){const _0x2cd185=_0x108936,_0xc26be8=_0x55a17a=>_0x4410af(_0x2efcad,_0x55a17a),_0x355e72=_0x3ff5b5=>_0x2224df(_0x2efcad,_0x3ff5b5);return _0x17d557['replace'](/<script\b[^>]*>/gi,_0xc26be8)[_0x2cd185(0x204)](/<link\b[^>]*>/gi,_0x355e72);}function _0x44c561(_0x2a2776){const _0x481e1e=_0x108936;return _0x2a2776[_0x481e1e(0x204)](/\s+integrity\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/gi,'');}function _0x4410af(_0x191d96,_0x43e4e9){const _0x5a1245=_0x108936,_0x478bb8=_0x5ee09c(_0x43e4e9,_0x5a1245(0x18a));if(!_0x478bb8)return _0x43e4e9;const _0x2f3b57=_0x3d7a23(_0x191d96,_0x478bb8[_0x5a1245(0x13a)]);if(!_0x2f3b57||_0x2f3b57===_0x478bb8['value'])return _0x43e4e9;const _0x35b089=_0x478bb8[_0x5a1245(0x199)][_0x5a1245(0x204)](_0x478bb8[_0x5a1245(0x13a)],_0x2f3b57);return _0x43e4e9[_0x5a1245(0x204)](_0x478bb8['full'],_0x35b089);}function _0x2224df(_0x234e45,_0x309e0c){const _0x340af4=_0x108936,_0x547994=_0x309e0c[_0x340af4(0x1c3)](/\brel\s*=\s*(['"])([^"']+)\1/i);if(!_0x547994)return _0x309e0c;const _0x4bac3f=_0x547994[0x2][_0x340af4(0x1e1)]();if(_0x4bac3f!==_0x340af4(0x158)&&_0x4bac3f!==_0x340af4(0x18c))return _0x309e0c;const _0x45b720=_0x5ee09c(_0x309e0c,_0x340af4(0x200));if(!_0x45b720)return _0x309e0c;const _0x33d4c5=_0x3d7a23(_0x234e45,_0x45b720[_0x340af4(0x13a)]);if(!_0x33d4c5||_0x33d4c5===_0x45b720[_0x340af4(0x13a)])return _0x309e0c;const _0x208aa5=_0x45b720['full'][_0x340af4(0x204)](_0x45b720[_0x340af4(0x13a)],_0x33d4c5);return _0x309e0c[_0x340af4(0x204)](_0x45b720[_0x340af4(0x199)],_0x208aa5);}function _0x5ee09c(_0x28626e,_0x1fdd4a){const _0x388555=_0x108936,_0x3ff9d6=new RegExp(_0x1fdd4a+_0x388555(0x140),'i'),_0x53e50c=_0x28626e[_0x388555(0x1c3)](_0x3ff9d6);if(!_0x53e50c)return null;return{'full':_0x53e50c[0x0],'value':_0x53e50c[0x2]};}function _0x3d7a23(_0x2e1e8e,_0x549e13){const _0x8e4843=_0x108936,_0x418a63=_0x4853f5(_0x549e13);if(!_0x418a63)return null;if(_0x418a63[_0x8e4843(0x208)]===self[_0x8e4843(0x162)][_0x8e4843(0x208)])return''+_0x418a63['pathname']+_0x418a63['search'];return null;}function _0x4853f5(_0x2a6d71){const _0x2a251d=_0x108936;try{return new URL(_0x2a6d71,self[_0x2a251d(0x162)][_0x2a251d(0x208)]);}catch{return null;}}var _0x185223='[Enhance\x20SW\x20Document]';async function _0x153364(_0x5789f1,_0x3b8781,_0xa5c28b,_0x443815=!![]){const _0xc82930=_0x108936;console[_0xc82930(0x262)](_0x185223+_0xc82930(0x1f3)),console[_0xc82930(0x262)](_0x185223+_0xc82930(0x15b)+_0xa5c28b),console[_0xc82930(0x262)](_0x185223+'\x20\x20\x20shouldInjectOverlay:\x20'+_0x443815),console['log'](_0x185223+_0xc82930(0x219)+_0x5789f1[_0xc82930(0x16f)]);const _0x504d96=_0x3b8781[_0xc82930(0x226)](),_0x961d75=await _0x504d96[_0xc82930(0x13b)]();console[_0xc82930(0x262)](_0x185223+'\x20\x20\x20Original\x20HTML\x20length:\x20'+_0x961d75[_0xc82930(0x16b)]+_0xc82930(0x1d9)),console[_0xc82930(0x262)](_0x185223+_0xc82930(0x202));const _0x459ee3=_0x44c561(_0x961d75);console[_0xc82930(0x262)](_0x185223+_0xc82930(0x209));let _0x2f3c1d=_0x123499(_0x5789f1,_0x459ee3);_0xa5c28b===_0xc82930(0x24c)?(console[_0xc82930(0x262)](_0x185223+_0xc82930(0x1cc)),_0x2f3c1d=_0x25fe87(_0x5789f1,_0x2f3c1d)):console[_0xc82930(0x262)](_0x185223+'\x20\x20\x20Skipping\x20HMR\x20bridge\x20(production\x20source)');_0x443815?(console[_0xc82930(0x262)](_0x185223+_0xc82930(0x21d)),_0x2f3c1d=_0xce380b(_0x5789f1,_0x2f3c1d)):console['log'](_0x185223+_0xc82930(0x20a));console[_0xc82930(0x262)](_0x185223+_0xc82930(0x251)+_0x2f3c1d[_0xc82930(0x16b)]+_0xc82930(0x1d9));const _0x78c986=new Headers(_0x504d96[_0xc82930(0x1ae)]);_0x78c986[_0xc82930(0x265)](_0xc82930(0x15c),_0xc82930(0x155)),_0x78c986['set']('x-enhance-document',_0xc82930(0x152)),_0x78c986[_0xc82930(0x265)](_0xc82930(0x154),_0xa5c28b),_0x2e81d(_0x78c986);if(_0x5789f1[_0xc82930(0x16f)]!==_0xc82930(0x25e)){console['log'](_0x185223+'\x20\x20\x20Applying\x20permissive\x20CSP...');const _0x4643c9=_0x78c986[_0xc82930(0x15a)](_0xc82930(0x171));_0x78c986[_0xc82930(0x265)]('content-security-policy',_0x33889b(_0x4643c9)),_0x78c986[_0xc82930(0x210)](_0xc82930(0x23c)),_0x78c986['delete'](_0xc82930(0x1be)),_0x78c986[_0xc82930(0x210)](_0xc82930(0x1a0));}else console[_0xc82930(0x262)](_0x185223+_0xc82930(0x237));return console[_0xc82930(0x262)](_0x185223+_0xc82930(0x224)),new Response(_0x2f3c1d,{'status':_0x504d96[_0xc82930(0x18d)],'statusText':_0x504d96[_0xc82930(0x20b)],'headers':_0x78c986});}var _0x2b9751='[Enhance\x20SW]';console['log'](_0x2b9751+_0x108936(0x142)+new Date()[_0x108936(0x1fd)]());var _0x2f8c07={'overlayPath':_0x108936(0x1c2),'backendUrl':'https://api.enhancelabs.ai','overlayEnableViteHmr':![],'runtimeScriptPath':_0x108936(0x1fb),'swPath':_0x108936(0x1d0)};console['log'](_0x2b9751+_0x108936(0x161),JSON[_0x108936(0x235)](_0x2f8c07,null,0x2));var _0x4ebb35={'callbackBypass':[_0x108936(0x231)],'securityMode':_0x108936(0x1f7)},_0x3b2551=null,_0x50e090=null;function _0x39d392(_0x39a868,_0x54643d){const _0x440da4=_0x108936,_0x2efb81=_0x39a868['searchParams']['get'](_0x440da4(0x213));if(_0x54643d&&_0x2efb81){console[_0x440da4(0x262)](_0x2b9751+'\x20Caching\x20enhancementUrl\x20from\x20navigation:\x20'+_0x2efb81),_0x3b2551=_0x2efb81;try{_0x50e090=new URL(_0x2efb81);}catch{console['error'](_0x2b9751+_0x440da4(0x1db)+_0x2efb81),_0x50e090=null;}}_0x54643d&&!_0x2efb81&&(_0x3b2551&&console[_0x440da4(0x262)](_0x2b9751+_0x440da4(0x223)),_0x3b2551=null,_0x50e090=null);const _0x6f06db=_0x2efb81||_0x3b2551||'',_0x5bcf34=_0x2efb81?((()=>{if(_0x2efb81===_0x3b2551)return _0x50e090;try{return new URL(_0x2efb81);}catch{return null;}})()):_0x50e090;return{..._0x2f8c07,..._0x4ebb35,'enhancementUrl':_0x6f06db,'enhancementBase':_0x5bcf34,'callbackBypassNormalized':_0x4ebb35['callbackBypass'][_0x440da4(0x229)](_0x4dd528=>_0x4dd528[_0x440da4(0x149)]('/')?_0x4dd528:'/'+_0x4dd528)};}function _0x23577c(_0x5dc578,_0x3838fe,..._0x5dd7b0){const _0x4bc514=_0x108936;_0x5dc578==='info'?console['info'](_0x2b9751,_0x3838fe,..._0x5dd7b0):console[_0x4bc514(0x221)](_0x2b9751,_0x3838fe,..._0x5dd7b0);}self[_0x108936(0x1e8)](_0x108936(0x1d1),_0x455792=>{const _0x587a4b=_0x108936;console[_0x587a4b(0x262)](_0x2b9751+_0x587a4b(0x190)),_0x455792[_0x587a4b(0x1ea)](((async()=>{const _0x3523ca=_0x587a4b;console[_0x3523ca(0x262)](_0x2b9751+_0x3523ca(0x1cb)),await self['skipWaiting'](),console[_0x3523ca(0x262)](_0x2b9751+'\x20skipWaiting()\x20complete');})()));}),self['addEventListener'](_0x108936(0x21a),_0x2d4583=>{const _0x313a12=_0x108936;console[_0x313a12(0x262)](_0x2b9751+_0x313a12(0x17c)),_0x2d4583[_0x313a12(0x1ea)](((async()=>{const _0x3a85fa=_0x313a12;console[_0x3a85fa(0x262)](_0x2b9751+_0x3a85fa(0x24e)),await self[_0x3a85fa(0x196)][_0x3a85fa(0x1a2)](),console[_0x3a85fa(0x262)](_0x2b9751+'\x20clients.claim()\x20complete');})()));}),self[_0x108936(0x1e8)](_0x108936(0x220),_0x420482=>{const _0x4cd5ee=_0x108936,_0x59f2fc=_0x420482[_0x4cd5ee(0x238)];console[_0x4cd5ee(0x262)](_0x2b9751+'\x20MESSAGE\x20received:',_0x59f2fc);if(!_0x59f2fc||typeof _0x59f2fc!==_0x4cd5ee(0x1e2)){console[_0x4cd5ee(0x262)](_0x2b9751+_0x4cd5ee(0x247));return;}switch(_0x59f2fc[_0x4cd5ee(0x1d8)]){case _0x251c98:{console['log'](_0x2b9751+_0x4cd5ee(0x1ad));const _0x26680c=_0x59f2fc[_0x4cd5ee(0x250)];_0x4ebb35={'callbackBypass':_0x26680c['callbackBypass']??[_0x4cd5ee(0x231)],'securityMode':_0x26680c[_0x4cd5ee(0x16f)]??_0x4cd5ee(0x1f7)},console['log'](_0x2b9751+_0x4cd5ee(0x139),JSON[_0x4cd5ee(0x235)](_0x4ebb35,null,0x2));break;}case _0x5f42c8:console['log'](_0x2b9751+_0x4cd5ee(0x1f8)),_0x4ebb35={'callbackBypass':['/auth/callback'],'securityMode':_0x4cd5ee(0x1f7)},_0x3b2551=null,_0x50e090=null,console['log'](_0x2b9751+_0x4cd5ee(0x25f));break;default:console[_0x4cd5ee(0x262)](_0x2b9751+_0x4cd5ee(0x147)+_0x59f2fc['type']);break;}}),self[_0x108936(0x1e8)]('fetch',_0x1a4364=>{const _0x3ca4ff=_0x108936;_0x1a4364[_0x3ca4ff(0x1bd)](_0x2e7e56(_0x1a4364));});async function _0x2e7e56(_0x2cde58){const _0x20bca8=_0x108936,{request:_0x28eba9}=_0x2cde58,_0x3af311=new URL(_0x28eba9[_0x20bca8(0x239)]),_0x2c31be=_0x28eba9[_0x20bca8(0x1c5)]===_0x20bca8(0x15e),_0x3aa815=_0x2c31be||_0x3af311[_0x20bca8(0x208)]===self[_0x20bca8(0x162)][_0x20bca8(0x208)];_0x3aa815&&(console[_0x20bca8(0x262)](_0x2b9751+'\x20FETCH:\x20'+_0x28eba9[_0x20bca8(0x214)]+'\x20'+_0x3af311['pathname']+_0x3af311['search']),console[_0x20bca8(0x262)](_0x2b9751+'\x20\x20\x20mode:\x20'+_0x28eba9['mode']+',\x20destination:\x20'+_0x28eba9[_0x20bca8(0x1fa)]));const _0x1b73c0=_0x39d392(_0x3af311,_0x2c31be);_0x3aa815&&console[_0x20bca8(0x262)](_0x2b9751+'\x20\x20\x20enhancementUrl:\x20'+(_0x1b73c0['enhancementUrl']||_0x20bca8(0x263)));if(!_0x14d370(_0x28eba9))return _0x3aa815&&console[_0x20bca8(0x262)](_0x2b9751+_0x20bca8(0x1b7)),fetch(_0x28eba9);if(_0xa6cdfe(_0x1b73c0,_0x3af311[_0x20bca8(0x17d)]))return _0x3aa815&&console[_0x20bca8(0x262)](_0x2b9751+_0x20bca8(0x1d2)+_0x3af311[_0x20bca8(0x17d)]+'\x20matches\x20callbackBypass'),fetch(_0x28eba9);if(_0x2c31be)return console[_0x20bca8(0x262)](_0x2b9751+_0x20bca8(0x1eb)),_0x5e0dc1(_0x28eba9,_0x1b73c0);if(!_0x337824(_0x1b73c0,_0x28eba9,_0x3af311))return _0x3aa815&&console[_0x20bca8(0x262)](_0x2b9751+_0x20bca8(0x1d4)),fetch(_0x28eba9);console[_0x20bca8(0x262)](_0x2b9751+_0x20bca8(0x22e)+_0x3af311[_0x20bca8(0x17d)]);const _0x378be4=await _0x37d2f6(_0x1b73c0,_0x28eba9,_0x3af311);if(_0x378be4)return console[_0x20bca8(0x262)](_0x2b9751+_0x20bca8(0x1da)+_0x3af311[_0x20bca8(0x17d)]),_0x378be4;return console[_0x20bca8(0x262)](_0x2b9751+_0x20bca8(0x22d)+_0x3af311[_0x20bca8(0x17d)]+_0x20bca8(0x15d)),fetch(_0x28eba9);}async function _0x5e0dc1(_0x35a6d3,_0x4f2fe7){const _0xdc6d50=_0x108936,_0x29bede=new URL(_0x35a6d3[_0xdc6d50(0x239)]);console[_0xdc6d50(0x262)](_0x2b9751+_0xdc6d50(0x244)+_0x29bede[_0xdc6d50(0x17d)]+_0x29bede[_0xdc6d50(0x228)]),console['log'](_0x2b9751+_0xdc6d50(0x148)+(_0x4f2fe7[_0xdc6d50(0x213)]||_0xdc6d50(0x263))),console['log'](_0x2b9751+_0xdc6d50(0x217));const _0x264dc5=await fetch(_0x35a6d3);console[_0xdc6d50(0x262)](_0x2b9751+'\x20\x20\x20Production\x20response:\x20'+_0x264dc5[_0xdc6d50(0x18d)]+'\x20'+_0x264dc5[_0xdc6d50(0x20b)]),console[_0xdc6d50(0x262)](_0x2b9751+_0xdc6d50(0x1ce)+_0x264dc5[_0xdc6d50(0x1ae)][_0xdc6d50(0x15a)](_0xdc6d50(0x156)));if(!_0x161ec1(_0x264dc5))return console[_0xdc6d50(0x262)](_0x2b9751+'\x20\x20\x20Not\x20HTML\x20-\x20returning\x20production\x20response\x20as-is'),_0x264dc5;console['log'](_0x2b9751+_0xdc6d50(0x1fe));const _0x68a688=_0x2ea914(_0x264dc5,_0xdc6d50(0x168));console[_0xdc6d50(0x262)](_0x2b9751+_0xdc6d50(0x1ca));const _0x240d3f=await _0x512841(_0x4f2fe7,_0x35a6d3),_0x66070c=_0x240d3f?_0xdc6d50(0x24c):_0xdc6d50(0x203);console[_0xdc6d50(0x262)](_0x2b9751+_0xdc6d50(0x225)+_0x66070c);const _0x122d2c=_0x240d3f??_0x68a688,_0x233679=_0x66070c===_0xdc6d50(0x24c)||_0x29bede[_0xdc6d50(0x1f1)]['has'](_0xdc6d50(0x1cf))||_0x29bede[_0xdc6d50(0x1f1)][_0xdc6d50(0x248)](_0xdc6d50(0x24c))||_0x29bede['searchParams'][_0xdc6d50(0x248)](_0xdc6d50(0x213));console[_0xdc6d50(0x262)](_0x2b9751+_0xdc6d50(0x198)+_0x233679);try{console[_0xdc6d50(0x262)](_0x2b9751+'\x20\x20\x20Rewriting\x20document...');const _0x12cb02=await _0x153364(_0x4f2fe7,_0x122d2c,_0x66070c,_0x233679);return console[_0xdc6d50(0x262)](_0x2b9751+'\x20\x20\x20Document\x20rewritten\x20successfully'),_0x12cb02;}catch(_0x46850d){return console['error'](_0x2b9751+_0xdc6d50(0x222),_0x46850d),_0x23577c('info','Failed\x20to\x20rewrite\x20document',_0x46850d),_0x122d2c;}}return _0x343a87(_0x28aaed);})());
1
+ 'use strict';(function(_0xcc786f,_0x52b018){const _0x2ba2f6=_0x4952,_0x2020b8=_0xcc786f();while(!![]){try{const _0x4c0fbe=-parseInt(_0x2ba2f6(0x170))/0x1*(parseInt(_0x2ba2f6(0x155))/0x2)+parseInt(_0x2ba2f6(0x1b8))/0x3*(parseInt(_0x2ba2f6(0x23c))/0x4)+-parseInt(_0x2ba2f6(0x204))/0x5+parseInt(_0x2ba2f6(0x1ba))/0x6+parseInt(_0x2ba2f6(0x12b))/0x7+-parseInt(_0x2ba2f6(0x1e6))/0x8+parseInt(_0x2ba2f6(0x1d5))/0x9;if(_0x4c0fbe===_0x52b018)break;else _0x2020b8['push'](_0x2020b8['shift']());}catch(_0xc19c28){_0x2020b8['push'](_0x2020b8['shift']());}}}(_0x37d8,0x5235e));function _0x37d8(){const _0x322475=['respondWith','includes','426696CdzdEO','\x20\x20\x20HTML\x20response\x20-\x20processing...','\x20\x20\x20CORS\x20blocked\x20(opaque\x20response)','/__vite_ping','frame-ancestors\x20','getOwnPropertyDescriptor','\x20\x20\x20Not\x20HTML\x20-\x20returning\x20production\x20response\x20as-is','href','\x20\x20\x20Rewriting\x20document...','get','[Enhance\x20SW\x20Bootstrap]','style',')\x20-\x20returning\x20null','set','__esModule','default-src\x20\x27self\x27\x20blob:\x20data:','\x20\x20\x20\x20var\x20basePrefix\x20=\x20\x22/__sbx__\x22;','\x20\x20\x20\x20\x20\x20window.__enhanceInitialized\x20=\x20true;','prototype','\x20\x20\x20mode:\x20','\x20\x20\x20Skipping\x20HMR\x20bridge\x20(production\x20source)','/vite/client','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Starting\x20runtime\x20bootstrap...\x22);','access-control-allow-origin','mode','\x5c$&','\x20\x20\x20\x20\x20\x20\x20\x20return\x20false;','https://api.enhancelabs.ai','\x20\x20\x20\x20\x20\x20//\x20ignore\x20if\x20unable\x20to\x20redefine','/assets/enhance-runtime.js','2204655nEntqd','/__snowpack__','callbackBypassNormalized','navigate','/webpack-hmr','\x20\x20\x20Fetching\x20production\x20response...','Enhancement\x20document\x20miss\x20','\x20\x20\x20Fetch\x20error:','\x20\x20\x20\x20var\x20originalWebSocket\x20=\x20window.WebSocket;','origin','(function(){','clients','delete','\x20\x20\x20SUCCESS\x20-\x20returning\x20enhancement\x20document','\x20shouldRouteAsset:\x20','test','call','securityMode','overlayPath','\x20\x20\x20Bootstrap\x20script\x20generated\x20(','\x20\x20\x20Applying\x20permissive\x20CSP...','\x20\x20\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket.prototype,\x20\x22constructor\x22,\x20{\x20value:\x20EnhancedWebSocket\x20});','\x20\x20\x20\x20EnhancedWebSocket.prototype\x20=\x20originalWebSocket.prototype;','Enhancement\x20document\x20CORS\x20blocked','waitUntil','join','/__parcel_hmr','\x20injectRuntimeBootstrap()\x20called','content-security-policy','\x20Clearing\x20cached\x20enhancementUrl\x20(navigation\x20without\x20param)','content-type','\x20\x20\x20\x20if\x20(!Enhance\x20||\x20typeof\x20Enhance.init\x20!==\x20\x22function\x22)\x20{','\x20\x20\x20Stripped\x20existing\x20bootstraps,\x20inserting\x20new\x20script...','\x20\x20\x20\x20\x20\x20return\x20proxied;','\x20\x20\x20\x20const\x20Enhance\x20=\x20runtimeModule?.Enhance\x20??\x20runtimeModule?.default?.Enhance\x20??\x20runtimeModule?.default;','activate','\x20fetchFromEnhancement:\x20','content-length','/snowpack/hmr','$&\x0a','\x20\x20\x20\x20\x20\x20','font','log','opaque','enumerable','custom','debug','script','/_next/webpack-hmr','\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket,\x20\x22__enhancePatched\x22,\x20{\x20value:\x20true\x20});','claim','\x20\x20\x20Attempting\x20to\x20fetch\x20from\x20enhancement:\x20','\x20\x20\x20\x20var\x20knownPathHints\x20=\x20','\x5cu003c','access-control-allow-credentials','\x5cs*=\x5cs*([\x27\x22])([^\x22\x27]+)\x5c1','9708REgOiP','<script\x5cb[^>]*src\x5cs*=\x5cs*([\x27\x22])','\x5cu003e','https://assets.enhancelabs.ai/overlay.js','\x20\x20\x20\x20Object.assign(EnhancedWebSocket,\x20originalWebSocket);','\x20\x20\x20Script\x20inserted\x20into\x20document','host','\x20\x20\x20Not\x20OK\x20(','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Calling\x20Enhance.init()\x20with\x20options:\x22,\x20JSON.stringify(','http://','\x20\x20\x20\x20\x20\x20proxied.hash\x20=\x20\x22\x22;','text','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Current\x20URL:\x22,\x20window.location.href);','/parcel-hmr','\x20\x20\x20runtimeScriptPath:\x20','\x20\x20\x20SUCCESS\x20-\x20returning\x20enhanced\x20response','cors','\x20\x20try\x20{','hasOwnProperty','\x20\x20\x20\x20\x20\x20var\x20isExternalHost\x20=\x20externalHosts.includes(url.host);','\x20\x20\x20Custom\x20security\x20mode\x20-\x20preserving\x20original\x20CSP','\x20chars)','\x20\x20\x20Document\x20source:\x20','body','add','stringify','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;','\x20\x20\x20\x20\x20\x20for\x20(var\x20j\x20=\x200;\x20j\x20<\x20knownPathHints.length;\x20j++)\x20{','\x20\x20\x20Original\x20HTML\x20length:\x20','[Enhance\x20SW]','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Bootstrap\x20complete\x22);','\x20\x20\x20Response:\x20','object-src\x20\x27none\x27','\x20Build\x20config:','\x20\x20\x20NAVIGATE\x20request\x20-\x20handling\x20navigation','cross-origin-opener-policy','1454012vYbhau','\x20\x20\x20\x20if\x20(!originalWebSocket\x20||\x20originalWebSocket.__enhancePatched)\x20{','\x20Calling\x20skipWaiting()...','\x20\x20\x20Content-Type:\x20','\x20\x20\x20\x20var\x20enhancementBase\x20=\x20new\x20URL(','full','\x0a</head>','sharedworker','\x20chars','\x20\x20\x20\x20var\x20knownProtocols\x20=\x20new\x20Set(','https://','\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Controller\x20attached\x20to\x20window.enhancePreview\x22);','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Enhance\x20controller\x20created:\x22,\x20controller);','\x20\x20\x20overlayPath:\x20','replace','\x20-\x20falling\x20back\x20to\x20production','\x20\x20\x20\x20\x20\x20//\x20Always\x20use\x20enhancementBase\x20for\x20HMR\x20WebSocket\x20proxying','include','clone','backendUrl','})();','\x20\x20\x20Failed\x20to\x20rewrite\x20document:','img-src\x20*\x20data:\x20blob:','(async\x20()\x20=>\x20{','\x20\x20\x20\x20\x20\x20var\x20proxied\x20=\x20new\x20URL(enhancementBase);','src','\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Set\x20window.__enhanceInitialized\x20=\x20true\x22);','/sockjs-node','\x20\x20\x20Rewritten\x20HTML\x20length:\x20','\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{','cross-origin-embedder-policy','\x20\x20\x20securityMode:\x20','</script>','toString','cross-origin-resource-policy','\x20\x20\x20\x20\x20\x20\x20\x20}','overlay','enhancementUrl','\x20\x20\x20Fetching\x20from\x20enhancement...','\x20\x20\x20Skipping\x20runtime\x20bootstrap\x20injection','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20module\x20loaded:\x22,\x20Object.keys(runtimeModule));','\x20\x20\x20No\x20script\x20generated\x20(missing\x20runtimePath)\x20-\x20returning\x20html\x20unchanged','22138wFgzOG','startsWith','\x20DISABLE\x20message\x20-\x20resetting\x20customer\x20config','\x20for\x20','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20path:\x22,\x20runtimePath);','image','\x20\x20\x20Injecting\x20HMR\x20bridge\x20(enhancement\x20source)...','callbackBypass','enhance:configure','\x0a</body>','\x20\x20\x20source:\x20','Enhancement\x20miss\x20','\x20\x20\x20\x20if\x20(typeof\x20window\x20!==\x20\x22undefined\x22)\x20{','enhance:disable','info','value','\x20\x20\x20\x20}','\x20Caching\x20enhancementUrl\x20from\x20navigation:\x20','hit','\x20\x20\x20\x20try\x20{','addEventListener','\x20\x20\x20\x20\x20\x20if\x20(pathname\x20===\x20basePrefix\x20||\x20pathname.indexOf(basePrefix\x20+\x20\x22/\x22)\x20===\x200)\x20{','searchParams','\x20MESSAGE\x20received:','set-cookie2','\x20FETCH:\x20','method','29ByqXvz','\x20\x20\x20Not\x20handling\x20(method\x20not\x20GET/HEAD)','\x20\x20\x20\x20\x20\x20return;','\x20\x20\x20\x20\x20\x20try\x20{','enhancementBase','\x20Failed\x20to\x20parse\x20enhancementUrl:\x20','\x20\x20\x20Enhancement\x20document\x20URL:\x20','\x20matches\x20callbackBypass','type','destination','\x20\x20\x20Enhancement\x20HIT\x20for\x20','\x20\x20\x20enhancementUrl:\x20','\x20\x20\x20\x20\x20\x20proxied.search\x20=\x20targetUrl.search;','trim','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(rewritten.toString(),\x20protocols);','headers','\x20\x20\x20\x20\x20\x20\x20\x20var\x20proto\x20=\x20protoList[i];','/sw-enhance.js','\x20\x20\x20\x20\x20\x20\x20\x20if\x20(typeof\x20proto\x20===\x20\x22string\x22\x20&&\x20knownProtocols.has(proto.toLowerCase()))\x20{','modulepreload','\x20\x20\x20Injecting\x20runtime\x20bootstrap...','endsWith','\x20\x20\x20\x20};','\x20\x20\x20Document\x20rewritten\x20successfully','\x20\x20\x20Enhancement\x20MISS\x20for\x20','object','status','x-enhance-routing','\x20\x20\x20\x20\x20\x20return\x20Array.isArray(value)\x20?\x20value\x20:\x20[value];','\x20\x20}\x20catch\x20(error)\x20{','\x20\x20\x20\x20window.WebSocket\x20=\x20EnhancedWebSocket;','\x20\x20\x20\x20var\x20EnhancedWebSocket\x20=\x20function(url,\x20protocols)\x20{','\x20\x20\x20\x20\x20\x20var\x20loweredPath\x20=\x20pathname.toLowerCase();','/__webpack_hmr',',\x20type:\x20','permissive','\x20\x20\x20Document\x20rewrite\x20complete','none','overlayEnableViteHmr','\x20Invalid\x20message\x20data\x20-\x20ignoring','\x20INSTALL\x20event','\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20returning\x20null','access-control-expose-headers','\x20\x20\x20\x20const\x20runtimeModule\x20=\x20await\x20import(runtimePath);','default','skipWaiting','\x20is\x20runtime\x20asset\x20-\x20not\x20routing','search','\x20\x20\x20Not\x20routing\x20asset\x20(not\x20routable\x20or\x20not\x20same-origin)','url','\x20\x20\x20\x20const\x20controller\x20=\x20Enhance.init(','\x20\x20\x20\x20\x20\x20window.enhancePreview\x20=\x20controller;','style-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20blob:\x20data:\x20https:\x20http:','\x20CONFIG\x20message\x20-\x20updating\x20customer\x20config','/auth/callback','\x20\x20\x20BYPASS:\x20','push','font-src\x20*\x20data:','defineProperty','Enhancement\x20CORS\x20blocked','\x20\x20\x20shouldInjectOverlay:\x20','toLowerCase','\x20\x20\x20\x20\x20\x20window.__enhanceController\x20=\x20controller;','\x20\x20\x20Not\x20HTML\x20response\x20-\x20returning\x20null','\x20\x20\x20\x20\x20\x20var\x20isAppHost\x20=\x20url.host\x20===\x20window.location.host;','\x20\x20\x20\x20\x20\x20}','<script\x20data-enhance-hmr-bridge>','has','\x20skipWaiting()\x20complete','match','GET','/webpack-hot-middleware','27qzfjjg','\x20\x20\x20Rewriting\x20entry\x20references...','3213984CFyPyx','Enhancement\x20document\x20fetch\x20failed','follow','\x20is\x20overlay\x20asset\x20-\x20not\x20routing','<script\x20type=\x22module\x22\x20data-enhance-runtime-bootstrap>','\x20rewriteDocument()\x20called','enhancement','\x20\x20\x20Document\x20fetch\x20error:','length','stylesheet','rewritten','pathname','\x20\x20\x20\x20\x20\x20if\x20(!isExternalHost\x20&&\x20!isAppHost)\x20return\x20false;','\x20Service\x20Worker\x20script\x20loaded\x20at\x20','some','statusText','toISOString','\x20Bootstrap\x20options:','runtimeScriptPath','message','\x20\x20}','location','Cannot\x20build\x20enhancement\x20URL\x20without\x20enhancementBase\x20configured','slice','set-cookie','map','\x20\x20\x20Enhancement\x20URL:\x20','3481020nCWuaQ','\x20Customer\x20config\x20updated:','\x20Config\x20reset','\x20buildRuntimeBootstrapScript:\x20no\x20runtimePath\x20-\x20returning\x20null','worker','\x20Calling\x20clients.claim()...','error','redirect','hash','enhancement-document','install','\x20\x20\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20protoList.length;\x20i++)\x20{','x-enhance-enhancement','media-src\x20*\x20data:\x20blob:','\x20\x20\x20\x20\x20\x20if\x20(!value)\x20return\x20[];'];_0x37d8=function(){return _0x322475;};return _0x37d8();}function _0x4952(_0x136a01,_0xa6d4c5){_0x136a01=_0x136a01-0x127;const _0x37d8f0=_0x37d8();let _0x495282=_0x37d8f0[_0x136a01];return _0x495282;}var EnhanceSW=((()=>{const _0x18711e=_0x4952;var _0x38c88f=Object[_0x18711e(0x1aa)],_0x5d16e2=Object[_0x18711e(0x1eb)],_0x2f363a=Object['getOwnPropertyNames'],_0x1262fa=Object[_0x18711e(0x1f8)][_0x18711e(0x24e)],_0x83f7e6=(_0xf08dda,_0xd46f71)=>{for(var _0xd06122 in _0xd46f71)_0x38c88f(_0xf08dda,_0xd06122,{'get':_0xd46f71[_0xd06122],'enumerable':!![]});},_0x160998=(_0x2f66f4,_0x20a521,_0x251135,_0x391d2d)=>{const _0x48f39c=_0x18711e;if(_0x20a521&&typeof _0x20a521===_0x48f39c(0x189)||typeof _0x20a521==='function'){for(let _0x5df706 of _0x2f363a(_0x20a521))if(!_0x1262fa[_0x48f39c(0x214)](_0x2f66f4,_0x5df706)&&_0x5df706!==_0x251135)_0x38c88f(_0x2f66f4,_0x5df706,{'get':()=>_0x20a521[_0x5df706],'enumerable':!(_0x391d2d=_0x5d16e2(_0x20a521,_0x5df706))||_0x391d2d[_0x48f39c(0x230)]});}return _0x2f66f4;},_0x280826=_0x218589=>_0x160998(_0x38c88f({},_0x18711e(0x1f4),{'value':!![]}),_0x218589),_0x4c8e91={};_0x83f7e6(_0x4c8e91,{'log':()=>_0x243e18});var _0x3c4c00=_0x18711e(0x15d),_0x4df850=_0x18711e(0x162);function _0x12b471(_0x3bfa51){const _0xd3a138=_0x18711e;if(!_0x3bfa51[_0xd3a138(0x156)]('/'))return'/'+_0x3bfa51;return _0x3bfa51;}function _0x50c6d8(_0x161ddd,_0x54e68f){const _0x45bd21=_0x18711e,_0x457190=new URL(_0x161ddd[_0x45bd21(0x14c)]()),_0x10c3de=_0x457190[_0x45bd21(0x1c5)][_0x45bd21(0x185)]('/')?_0x457190[_0x45bd21(0x1c5)][_0x45bd21(0x1d1)](0x0,-0x1):_0x457190[_0x45bd21(0x1c5)],_0x4ff8f7=_0x54e68f[_0x45bd21(0x1c5)][_0x45bd21(0x156)]('/')?_0x54e68f[_0x45bd21(0x1c5)]:'/'+_0x54e68f['pathname'];return _0x457190[_0x45bd21(0x1c5)]=(''+_0x10c3de+_0x4ff8f7)['replace'](/\/+/g,'/'),_0x457190[_0x45bd21(0x19f)]=_0x54e68f['search'],_0x457190[_0x45bd21(0x1dd)]='',_0x457190;}var _0x436d4e='[Enhance\x20SW\x20Routing]',_0x13ea1e=new Set([_0x18711e(0x233),_0x18711e(0x1f1),_0x18711e(0x22d),_0x18711e(0x15a),_0x18711e(0x1d9),_0x18711e(0x132),_0x18711e(0x183)]);function _0x125db8(_0x3b60d5){const _0x2bd424=_0x18711e,_0x24cfc7=_0x3b60d5[_0x2bd424(0x16f)]===_0x2bd424(0x1b6)||_0x3b60d5['method']==='HEAD';return _0x24cfc7;}function _0x1503bc(_0x3d0790,_0x5ac62){const _0x1fea6e=_0x18711e,_0x15a1de=_0x12b471(_0x5ac62),_0x1bdec3=_0x3d0790[_0x1fea6e(0x206)][_0x1fea6e(0x1c8)](_0x4bb60c=>_0x15a1de[_0x1fea6e(0x156)](_0x4bb60c));return _0x1bdec3;}function _0x18f4b3(_0x53c254,_0x26ee34,_0x41daad){const _0x109097=_0x18711e,_0x155b2d=_0x26ee34[_0x109097(0x179)];if(!_0x155b2d||!_0x13ea1e[_0x109097(0x1b3)](_0x155b2d))return![];if(_0x46c7b1(_0x53c254,_0x41daad))return console[_0x109097(0x22e)](_0x436d4e+_0x109097(0x212)+_0x41daad[_0x109097(0x1c5)]+_0x109097(0x1bd)),![];if(_0x3a8012(_0x53c254,_0x41daad))return console[_0x109097(0x22e)](_0x436d4e+_0x109097(0x212)+_0x41daad['pathname']+_0x109097(0x19e)),![];if(_0x41daad[_0x109097(0x20d)]!==self[_0x109097(0x1cf)][_0x109097(0x20d)])return![];return!![];}async function _0xfde087(_0x588904,_0x5cd2d8,_0x52b017){const _0xd3e69=_0x18711e;console[_0xd3e69(0x22e)](_0x436d4e+_0xd3e69(0x228)+_0x52b017[_0xd3e69(0x1c5)]);if(!_0x588904[_0xd3e69(0x174)])return console[_0xd3e69(0x22e)](_0x436d4e+'\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20skipping'),null;const _0x107594=_0x50fb7f(_0x588904,_0x52b017);console[_0xd3e69(0x22e)](_0x436d4e+_0xd3e69(0x1d4)+_0x107594[_0xd3e69(0x14c)]());const _0x23a562=new Headers(_0x5cd2d8[_0xd3e69(0x17f)]);_0x23a562[_0xd3e69(0x1f3)](_0xd3e69(0x18b),_0xd3e69(0x1c0)),_0x23a562[_0xd3e69(0x210)](_0xd3e69(0x242));const _0x315279=new Request(_0x107594[_0xd3e69(0x14c)](),{'method':_0x5cd2d8[_0xd3e69(0x16f)],'headers':_0x23a562,'credentials':_0xd3e69(0x13c),'redirect':_0x5cd2d8[_0xd3e69(0x1dc)],'cache':_0xd3e69(0x19c),'mode':_0xd3e69(0x24c)});try{console[_0xd3e69(0x22e)](_0x436d4e+_0xd3e69(0x151));const _0x47fe60=await fetch(_0x315279);console['log'](_0x436d4e+_0xd3e69(0x25b)+_0x47fe60[_0xd3e69(0x18a)]+'\x20'+_0x47fe60[_0xd3e69(0x1c9)]+_0xd3e69(0x192)+_0x47fe60[_0xd3e69(0x178)]);if(_0x47fe60[_0xd3e69(0x178)]===_0xd3e69(0x22f))return console['log'](_0x436d4e+_0xd3e69(0x1e8)),_0x243e18(_0xd3e69(0x163),_0xd3e69(0x1ab),_0x107594[_0xd3e69(0x14c)]()),null;if(!_0x47fe60['ok'])return console[_0xd3e69(0x22e)](_0x436d4e+_0xd3e69(0x243)+_0x47fe60['status']+_0xd3e69(0x1f2)),_0x243e18(_0xd3e69(0x232),_0xd3e69(0x160)+_0x47fe60[_0xd3e69(0x18a)]+'\x20for\x20'+_0x107594[_0xd3e69(0x1c5)]),null;return console[_0xd3e69(0x22e)](_0x436d4e+_0xd3e69(0x24b)),_0x3cd046(_0x47fe60,_0x5cd2d8[_0xd3e69(0x16f)]);}catch(_0x1e9f3d){return console[_0xd3e69(0x1db)](_0x436d4e+_0xd3e69(0x20b),_0x1e9f3d),_0x243e18(_0xd3e69(0x163),'Enhancement\x20fetch\x20failed',_0x1e9f3d),null;}}async function _0x319cb8(_0x2e76a5,_0x28e241){const _0x5a22d7=_0x18711e,_0x320d75=new URL(_0x28e241['url']);console[_0x5a22d7(0x22e)](_0x436d4e+'\x20fetchEnhancementDocument:\x20'+_0x320d75[_0x5a22d7(0x1c5)]+_0x320d75[_0x5a22d7(0x19f)]);if(!_0x2e76a5[_0x5a22d7(0x174)])return console[_0x5a22d7(0x22e)](_0x436d4e+_0x5a22d7(0x199)),null;const _0x35c0e9=_0x50fb7f(_0x2e76a5,_0x320d75);console[_0x5a22d7(0x22e)](_0x436d4e+_0x5a22d7(0x176)+_0x35c0e9[_0x5a22d7(0x14c)]());const _0x303291=new Headers(_0x28e241[_0x5a22d7(0x17f)]);_0x303291[_0x5a22d7(0x1f3)]('x-enhance-routing',_0x5a22d7(0x1de)),_0x303291[_0x5a22d7(0x210)](_0x5a22d7(0x242)),_0x303291[_0x5a22d7(0x210)](_0x5a22d7(0x229));const _0x2e2582=new Request(_0x35c0e9[_0x5a22d7(0x14c)](),{'method':_0x5a22d7(0x1b6),'headers':_0x303291,'credentials':'include','redirect':_0x5a22d7(0x1bc),'cache':_0x5a22d7(0x19c),'mode':_0x5a22d7(0x24c)});try{console[_0x5a22d7(0x22e)](_0x436d4e+'\x20\x20\x20Fetching\x20enhancement\x20document...');const _0x492449=await fetch(_0x2e2582);console[_0x5a22d7(0x22e)](_0x436d4e+_0x5a22d7(0x25b)+_0x492449[_0x5a22d7(0x18a)]+'\x20'+_0x492449[_0x5a22d7(0x1c9)]+',\x20type:\x20'+_0x492449[_0x5a22d7(0x178)]),console[_0x5a22d7(0x22e)](_0x436d4e+'\x20\x20\x20Content-Type:\x20'+_0x492449['headers']['get'](_0x5a22d7(0x222)));if(_0x492449[_0x5a22d7(0x178)]===_0x5a22d7(0x22f))return console['log'](_0x436d4e+'\x20\x20\x20CORS\x20blocked\x20(opaque\x20response)'),_0x243e18(_0x5a22d7(0x163),_0x5a22d7(0x21b),_0x35c0e9[_0x5a22d7(0x14c)]()),null;if(!_0x492449['ok'])return console[_0x5a22d7(0x22e)](_0x436d4e+'\x20\x20\x20Not\x20OK\x20('+_0x492449[_0x5a22d7(0x18a)]+_0x5a22d7(0x1f2)),_0x243e18(_0x5a22d7(0x232),_0x5a22d7(0x20a)+_0x492449[_0x5a22d7(0x18a)]+_0x5a22d7(0x158)+_0x35c0e9[_0x5a22d7(0x1c5)]),null;if(!_0x2f45e4(_0x492449))return console[_0x5a22d7(0x22e)](_0x436d4e+_0x5a22d7(0x1af)),null;return console['log'](_0x436d4e+_0x5a22d7(0x211)),_0x3cd046(_0x492449,'GET');}catch(_0xddd4fa){return console[_0x5a22d7(0x1db)](_0x436d4e+_0x5a22d7(0x1c1),_0xddd4fa),_0x243e18('info',_0x5a22d7(0x1bb),_0xddd4fa),null;}}function _0x50fb7f(_0x158ca4,_0x541a39){const _0x56808e=_0x18711e;if(!_0x158ca4[_0x56808e(0x174)])throw new Error(_0x56808e(0x1d0));return _0x50c6d8(_0x158ca4[_0x56808e(0x174)],_0x541a39);}function _0x3cd046(_0x5998f7,_0xfbe739){const _0x3749e5=_0x18711e,_0x2e2fbd=_0x5998f7[_0x3749e5(0x13d)](),_0xee929f=new Headers(_0x2e2fbd[_0x3749e5(0x17f)]);_0xee929f['delete'](_0x3749e5(0x1fd)),_0xee929f[_0x3749e5(0x210)](_0x3749e5(0x23a)),_0xee929f[_0x3749e5(0x210)](_0x3749e5(0x19a)),_0xee929f['set'](_0x3749e5(0x1e1),_0x3749e5(0x167)),_0x2ebb5d(_0xee929f);const _0x445177=_0xfbe739==='HEAD'?null:_0x2e2fbd[_0x3749e5(0x253)];return new Response(_0x445177,{'status':_0x2e2fbd[_0x3749e5(0x18a)],'statusText':_0x2e2fbd[_0x3749e5(0x1c9)],'headers':_0xee929f});}function _0x2f45e4(_0x3ff6f6){const _0x38c146=_0x18711e,_0x1d540d=_0x3ff6f6[_0x38c146(0x17f)]['get'](_0x38c146(0x222));return _0x1d540d!=null&&_0x1d540d[_0x38c146(0x1e5)]('text/html');}function _0x46c7b1(_0x21fe2a,_0x4441fb){const _0x3e6a72=_0x18711e;return _0x20754e(_0x4441fb,_0x21fe2a[_0x3e6a72(0x216)]);}function _0x3a8012(_0x4bd34e,_0x5553ed){const _0x521eff=_0x18711e;return _0x257deb(_0x5553ed,_0x4bd34e[_0x521eff(0x1cc)]);}function _0x20754e(_0x22f28d,_0x7dd5dd){const _0x2ffc77=_0x18711e;if(!_0x7dd5dd)return![];if(_0x7dd5dd['startsWith'](_0x2ffc77(0x245))||_0x7dd5dd[_0x2ffc77(0x156)]('https://'))return _0x22f28d['href']===_0x7dd5dd;const _0x1c0a4e=_0x3bbb3b(_0x7dd5dd);if(!_0x1c0a4e)return![];const _0x378a08=''+_0x22f28d['pathname']+_0x22f28d[_0x2ffc77(0x19f)];if(_0x378a08===_0x1c0a4e)return!![];if(_0x22f28d[_0x2ffc77(0x19f)]==='?import')return _0x22f28d[_0x2ffc77(0x1c5)]===_0x1c0a4e;return![];}function _0x257deb(_0x5bfdca,_0x21a983){const _0x1f1e5b=_0x18711e;if(!_0x21a983)return![];if(_0x21a983[_0x1f1e5b(0x156)](_0x1f1e5b(0x245))||_0x21a983[_0x1f1e5b(0x156)]('https://'))return _0x5bfdca[_0x1f1e5b(0x1ed)]===_0x21a983;const _0x3bfc20=_0x3bbb3b(_0x21a983);if(!_0x3bfc20)return![];const _0x1c16ec=''+_0x5bfdca['pathname']+_0x5bfdca[_0x1f1e5b(0x19f)];return _0x1c16ec===_0x3bfc20;}function _0x3bbb3b(_0x3fefc4){const _0x4f5c89=_0x18711e;if(!_0x3fefc4)return _0x3fefc4;if(_0x3fefc4['startsWith'](_0x4f5c89(0x245))||_0x3fefc4['startsWith'](_0x4f5c89(0x135)))return _0x3fefc4;const _0x30a782=_0x3fefc4[_0x4f5c89(0x139)](/^\.\//,'');if(_0x30a782[_0x4f5c89(0x156)]('/'))return _0x30a782;return'/'+_0x30a782;}function _0x2ebb5d(_0x109a5b){const _0x372cdf=_0x18711e;_0x109a5b[_0x372cdf(0x210)]('set-cookie'),_0x109a5b['delete'](_0x372cdf(0x16d));}function _0x5e8af8(_0x4327b8){const _0x20311f=_0x18711e,_0x380eac=[_0x20311f(0x1f5),'script-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20\x27unsafe-eval\x27\x20blob:\x20data:\x20https:\x20http:',_0x20311f(0x1a4),_0x20311f(0x141),_0x20311f(0x1a9),'connect-src\x20*',_0x20311f(0x1e2),'worker-src\x20\x27self\x27\x20blob:',_0x20311f(0x127)],_0x47e10a=_0x576d9c(_0x4327b8);return _0x47e10a&&_0x380eac[_0x20311f(0x1a8)](_0x47e10a),_0x380eac[_0x20311f(0x21d)](';\x20');}function _0x2268da(_0x303ce3){const _0x5efab8=_0x18711e;_0x303ce3[_0x5efab8(0x210)](_0x5efab8(0x1d2)),_0x303ce3[_0x5efab8(0x210)](_0x5efab8(0x16d));}function _0x576d9c(_0x2e3f3c){const _0x527f11=_0x18711e;if(!_0x2e3f3c)return null;const _0x3ee3f5=_0x2e3f3c[_0x527f11(0x1b5)](/frame-ancestors\s+([^;]+)/i);if(!_0x3ee3f5)return null;return _0x527f11(0x1ea)+_0x3ee3f5[0x1][_0x527f11(0x17d)]();}function _0xa578b(_0x30c4f8,_0x3b71e4){const _0x39243d=_0x18711e;if(/<head[^>]*>/i[_0x39243d(0x213)](_0x30c4f8)){const _0x4e6de1=_0x30c4f8[_0x39243d(0x1b5)](/<head[^>]*>/i);if(_0x4e6de1){const _0x2742e6=_0x4e6de1[0x0];return _0x30c4f8['replace'](_0x2742e6,_0x2742e6+'\x0a'+_0x3b71e4);}}if(/<\/head>/i['test'](_0x30c4f8))return _0x30c4f8[_0x39243d(0x139)](/<\/head>/i,_0x3b71e4+_0x39243d(0x131));if(/<body\b[^>]*>/i[_0x39243d(0x213)](_0x30c4f8))return _0x30c4f8[_0x39243d(0x139)](/<body\b[^>]*>/i,_0x39243d(0x22b)+_0x3b71e4);if(/<\/body>/i['test'](_0x30c4f8))return _0x30c4f8[_0x39243d(0x139)](/<\/body>/i,_0x3b71e4+_0x39243d(0x15e));return _0x3b71e4+'\x0a'+_0x30c4f8;}var _0x35bffe=['vite-hmr'],_0x48eeb1=['/@vite/client','/__vite/client',_0x18711e(0x1fb),_0x18711e(0x1e9),_0x18711e(0x146),'/webpack-dev-server',_0x18711e(0x208),'/webpackhotmiddleware',_0x18711e(0x1b7),_0x18711e(0x191),_0x18711e(0x234),_0x18711e(0x249),_0x18711e(0x21e),_0x18711e(0x205),_0x18711e(0x22a)];function _0x1da4be(_0x340a18,_0x51a1ce){const _0x1e87ab=_0x1909ef(_0x340a18);if(!_0x1e87ab)return _0x51a1ce;return _0xa578b(_0x51a1ce,_0x1e87ab);}function _0x1909ef(_0x27f1d3){const _0x980704=_0x18711e;if(!_0x27f1d3['enhancementBase'])return null;const _0x2dcf41=_0x27f1d3['enhancementBase'][_0x980704(0x14c)](),_0x794ce=_0x121d2a(_0x35bffe),_0xfc64db=_0x121d2a(_0x48eeb1),_0x54160a=[_0x980704(0x1b2),_0x980704(0x20e),_0x980704(0x24d),_0x980704(0x12f)+JSON['stringify'](_0x2dcf41)+');',_0x980704(0x20c),_0x980704(0x12c),'\x20\x20\x20\x20\x20\x20return;','\x20\x20\x20\x20}',_0x980704(0x134)+JSON[_0x980704(0x255)](_0x794ce)+');',_0x980704(0x238)+JSON['stringify'](_0xfc64db)+';',_0x980704(0x1f6),'\x20\x20\x20\x20var\x20toArray\x20=\x20function(value)\x20{',_0x980704(0x1e3),_0x980704(0x18c),_0x980704(0x186),'\x20\x20\x20\x20var\x20shouldProxy\x20=\x20function(url,\x20protocols)\x20{','\x20\x20\x20\x20\x20\x20//\x20Allow\x20proxying\x20for\x20specific\x20external\x20hosts','\x20\x20\x20\x20\x20\x20var\x20externalHosts\x20=\x20[\x22app.enhance.localhost:4450\x22,\x20\x22localhost:5173\x22];',_0x980704(0x24f),_0x980704(0x1b0),_0x980704(0x22c),_0x980704(0x1c6),'\x20\x20\x20\x20\x20\x20','\x20\x20\x20\x20\x20\x20var\x20pathname\x20=\x20url.pathname\x20||\x20\x22/\x22;',_0x980704(0x16a),_0x980704(0x200),_0x980704(0x1b1),'\x20\x20\x20\x20\x20\x20var\x20protoList\x20=\x20toArray(protocols);',_0x980704(0x1e0),_0x980704(0x180),_0x980704(0x182),'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;',_0x980704(0x14e),_0x980704(0x1b1),_0x980704(0x190),_0x980704(0x257),'\x20\x20\x20\x20\x20\x20\x20\x20if\x20(loweredPath.indexOf(knownPathHints[j])\x20!==\x20-1)\x20{',_0x980704(0x256),_0x980704(0x14e),_0x980704(0x1b1),'\x20\x20\x20\x20\x20\x20return\x20false;',_0x980704(0x186),'\x20\x20\x20\x20var\x20buildProxiedUrl\x20=\x20function(targetUrl)\x20{',_0x980704(0x13b),_0x980704(0x143),_0x980704(0x17c),_0x980704(0x246),_0x980704(0x225),_0x980704(0x186),_0x980704(0x18f),_0x980704(0x173),'\x20\x20\x20\x20\x20\x20\x20\x20var\x20resolved\x20=\x20url\x20instanceof\x20URL\x20?\x20url\x20:\x20new\x20URL(String(url),\x20window.location.href);','\x20\x20\x20\x20\x20\x20\x20\x20if\x20(shouldProxy(resolved,\x20protocols))\x20{','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20var\x20rewritten\x20=\x20buildProxiedUrl(resolved);',_0x980704(0x17e),_0x980704(0x14e),_0x980704(0x148),'\x20\x20\x20\x20\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20fallback\x22,\x20error);',_0x980704(0x1b1),'\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(url,\x20protocols);',_0x980704(0x186),_0x980704(0x240),_0x980704(0x21a),'\x20\x20\x20\x20Object.setPrototypeOf(EnhancedWebSocket,\x20originalWebSocket);',_0x980704(0x168),_0x980704(0x219),'\x20\x20\x20\x20}\x20catch\x20(error)\x20{',_0x980704(0x202),_0x980704(0x165),_0x980704(0x235),_0x980704(0x18e),'\x20\x20}\x20catch\x20(error)\x20{','\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20unavailable\x22,\x20error);',_0x980704(0x1ce),_0x980704(0x13f),_0x980704(0x14b)];return _0x54160a[_0x980704(0x21d)]('\x0a');}function _0x121d2a(_0x4712a2){const _0x18b755=_0x18711e,_0x26b76c=new Set(),_0x97d77a=[];for(const _0x32e6df of _0x4712a2){const _0x127a98=_0x32e6df['toLowerCase']();if(_0x26b76c[_0x18b755(0x1b3)](_0x127a98))continue;_0x26b76c[_0x18b755(0x254)](_0x127a98),_0x97d77a['push'](_0x127a98);}return _0x97d77a;}var _0xd4b3cb=_0x18711e(0x1f0);function _0x343aa1(_0x5409bd,_0x561da6){const _0x2043fe=_0x18711e;console[_0x2043fe(0x22e)](_0xd4b3cb+_0x2043fe(0x21f)),console['log'](_0xd4b3cb+_0x2043fe(0x24a)+_0x5409bd[_0x2043fe(0x1cc)]),console['log'](_0xd4b3cb+_0x2043fe(0x138)+_0x5409bd[_0x2043fe(0x216)]);const _0x48baea=_0x57d8a7(_0x5409bd);if(!_0x48baea)return console[_0x2043fe(0x22e)](_0xd4b3cb+_0x2043fe(0x154)),_0x561da6;console['log'](_0xd4b3cb+_0x2043fe(0x217)+_0x48baea[_0x2043fe(0x1c2)]+_0x2043fe(0x251));const _0x470444=_0xc58f4d(_0x561da6,_0x5409bd[_0x2043fe(0x1cc)]);console[_0x2043fe(0x22e)](_0xd4b3cb+_0x2043fe(0x224));const _0x50836f=_0xa578b(_0x470444,_0x48baea);return console[_0x2043fe(0x22e)](_0xd4b3cb+_0x2043fe(0x241)),_0x50836f;}function _0x57d8a7(_0x4165b9){const _0x96261b=_0x18711e,_0xcbd8bd=_0x4165b9[_0x96261b(0x1cc)];if(!_0xcbd8bd)return console['log'](_0xd4b3cb+_0x96261b(0x1d8)),null;const _0x1aea0d=_0x2074d3(_0x4165b9);console[_0x96261b(0x22e)](_0xd4b3cb+_0x96261b(0x1cb),JSON[_0x96261b(0x255)](_0x1aea0d,null,0x2));const _0xd3b8b2=_0x400fac(_0x1aea0d),_0x31a566=JSON['stringify'](_0xcbd8bd),_0x9ce27a=[_0x96261b(0x1be),_0x96261b(0x142),_0x96261b(0x24d),'\x20\x20\x20\x20const\x20runtimePath\x20=\x20'+_0x31a566+';',_0x96261b(0x1fc),_0x96261b(0x159),_0x96261b(0x248),_0x96261b(0x19b),_0x96261b(0x153),_0x96261b(0x226),_0x96261b(0x223),'\x20\x20\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20No\x20Enhance.init\x20export\x20found!\x22);',_0x96261b(0x172),_0x96261b(0x165),_0x96261b(0x244)+_0xd3b8b2+',\x20null,\x202));',_0x96261b(0x1a2)+_0xd3b8b2+');',_0x96261b(0x137),_0x96261b(0x161),_0x96261b(0x1a3),_0x96261b(0x136),'\x20\x20\x20\x20\x20\x20//\x20Mark\x20as\x20initialized\x20globally\x20so\x20other\x20module\x20instances\x20(e.g.\x20enhanced\x20app\x27s\x20bundled\x20copy)\x20skip\x20re-init',_0x96261b(0x1f7),_0x96261b(0x1ae),_0x96261b(0x145),'\x20\x20\x20\x20}',_0x96261b(0x25a),_0x96261b(0x18d),'\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20Failed\x20to\x20bootstrap\x20runtime:\x22,\x20error);',_0x96261b(0x1ce),'})();',_0x96261b(0x14b)];return _0x9ce27a[_0x96261b(0x21d)]('\x0a');}function _0x2074d3(_0x4e6fa6){const _0x32d925=_0x18711e,_0x2e4125={'callbackBypass':_0x4e6fa6[_0x32d925(0x15c)],'__development':{'enableOverlayHmr':_0x4e6fa6[_0x32d925(0x196)],'overlayPath':_0x4e6fa6['overlayPath'],'security':_0x4e6fa6[_0x32d925(0x215)],'backendUrl':_0x4e6fa6[_0x32d925(0x13e)]}};return _0x2e4125;}function _0x400fac(_0x4e6fca){const _0x5f4682=_0x18711e;return JSON[_0x5f4682(0x255)](_0x4e6fca)['replace'](/</g,_0x5f4682(0x239))[_0x5f4682(0x139)](/>/g,_0x5f4682(0x23e));}function _0xc58f4d(_0x4fbd93,_0x174f3d){const _0x50b6b3=_0x18711e,_0x4c5f2=/<script\b[^>]*data-enhance-runtime-bootstrap[^>]*>[\s\S]*?<\/script>/gi;let _0x5d0a83=_0x4fbd93['replace'](_0x4c5f2,'');if(_0x174f3d){const _0x21cbb9=_0x459e24(_0x174f3d),_0x283ee0=new RegExp(_0x50b6b3(0x23d)+_0x21cbb9+'\x5c1[^>]*>\x5cs*</script>','gi');_0x5d0a83=_0x5d0a83[_0x50b6b3(0x139)](_0x283ee0,'');}return _0x5d0a83;}function _0x459e24(_0x4691b1){const _0x168335=_0x18711e;return _0x4691b1['replace'](/[-/\\^$*+?.()|[\]{}]/g,_0x168335(0x1ff));}function _0x155da6(_0x397359,_0x21bd88){const _0x257c9b=_0x18711e,_0x5ea28f=_0x1cc8bd=>_0x5542ef(_0x397359,_0x1cc8bd),_0x392564=_0x2f9f35=>_0x1b47bf(_0x397359,_0x2f9f35);return _0x21bd88[_0x257c9b(0x139)](/<script\b[^>]*>/gi,_0x5ea28f)['replace'](/<link\b[^>]*>/gi,_0x392564);}function _0x1bd113(_0x4a7f47){const _0x4ff48e=_0x18711e;return _0x4a7f47[_0x4ff48e(0x139)](/\s+integrity\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/gi,'');}function _0x5542ef(_0x48c304,_0x3be6d0){const _0x330a64=_0x18711e,_0x45976f=_0x12d0db(_0x3be6d0,_0x330a64(0x144));if(!_0x45976f)return _0x3be6d0;const _0x53dbe3=_0x5c9b61(_0x48c304,_0x45976f['value']);if(!_0x53dbe3||_0x53dbe3===_0x45976f[_0x330a64(0x164)])return _0x3be6d0;const _0x4bd56e=_0x45976f[_0x330a64(0x130)][_0x330a64(0x139)](_0x45976f['value'],_0x53dbe3);return _0x3be6d0[_0x330a64(0x139)](_0x45976f[_0x330a64(0x130)],_0x4bd56e);}function _0x1b47bf(_0xa47df,_0x2f6672){const _0x5f250b=_0x18711e,_0x1b4b49=_0x2f6672['match'](/\brel\s*=\s*(['"])([^"']+)\1/i);if(!_0x1b4b49)return _0x2f6672;const _0x24887d=_0x1b4b49[0x2][_0x5f250b(0x1ad)]();if(_0x24887d!==_0x5f250b(0x1c3)&&_0x24887d!==_0x5f250b(0x183))return _0x2f6672;const _0x1d7951=_0x12d0db(_0x2f6672,_0x5f250b(0x1ed));if(!_0x1d7951)return _0x2f6672;const _0x2802d7=_0x5c9b61(_0xa47df,_0x1d7951[_0x5f250b(0x164)]);if(!_0x2802d7||_0x2802d7===_0x1d7951[_0x5f250b(0x164)])return _0x2f6672;const _0xfb0f7d=_0x1d7951['full'][_0x5f250b(0x139)](_0x1d7951[_0x5f250b(0x164)],_0x2802d7);return _0x2f6672[_0x5f250b(0x139)](_0x1d7951[_0x5f250b(0x130)],_0xfb0f7d);}function _0x12d0db(_0x476beb,_0x243ac3){const _0x3a4c88=_0x18711e,_0x17710e=new RegExp(_0x243ac3+_0x3a4c88(0x23b),'i'),_0x26bb2e=_0x476beb[_0x3a4c88(0x1b5)](_0x17710e);if(!_0x26bb2e)return null;return{'full':_0x26bb2e[0x0],'value':_0x26bb2e[0x2]};}function _0x5c9b61(_0x5a40d6,_0x5a35a8){const _0x128de9=_0x18711e,_0x417022=_0x392d4f(_0x5a35a8);if(!_0x417022)return null;if(_0x417022['origin']===self['location'][_0x128de9(0x20d)])return''+_0x417022[_0x128de9(0x1c5)]+_0x417022[_0x128de9(0x19f)];return null;}function _0x392d4f(_0x3d96db){const _0x17a7ce=_0x18711e;try{return new URL(_0x3d96db,self[_0x17a7ce(0x1cf)]['origin']);}catch{return null;}}var _0x5802f7='[Enhance\x20SW\x20Document]';async function _0x2f01a8(_0x378301,_0x2ef9b1,_0x2f4b8b,_0x101d70=!![]){const _0x5caf67=_0x18711e;console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x1bf)),console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x15f)+_0x2f4b8b),console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x1ac)+_0x101d70),console['log'](_0x5802f7+_0x5caf67(0x14a)+_0x378301['securityMode']);const _0x4ecd4c=_0x2ef9b1[_0x5caf67(0x13d)](),_0x1f3d23=await _0x4ecd4c[_0x5caf67(0x247)]();console['log'](_0x5802f7+_0x5caf67(0x258)+_0x1f3d23[_0x5caf67(0x1c2)]+_0x5caf67(0x133)),console[_0x5caf67(0x22e)](_0x5802f7+'\x20\x20\x20Stripping\x20SRI\x20attributes...');const _0x3ca4f0=_0x1bd113(_0x1f3d23);console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x1b9));let _0x5155db=_0x155da6(_0x378301,_0x3ca4f0);_0x2f4b8b===_0x5caf67(0x1c0)?(console['log'](_0x5802f7+_0x5caf67(0x15b)),_0x5155db=_0x1da4be(_0x378301,_0x5155db)):console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x1fa));_0x101d70?(console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x184)),_0x5155db=_0x343aa1(_0x378301,_0x5155db)):console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x152));console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x147)+_0x5155db[_0x5caf67(0x1c2)]+_0x5caf67(0x133));const _0x417128=new Headers(_0x4ecd4c[_0x5caf67(0x17f)]);_0x417128[_0x5caf67(0x1f3)]('cache-control','no-store'),_0x417128[_0x5caf67(0x1f3)]('x-enhance-document',_0x5caf67(0x1c4)),_0x417128[_0x5caf67(0x1f3)]('x-enhance-document-source',_0x2f4b8b),_0x2268da(_0x417128);if(_0x378301[_0x5caf67(0x215)]!==_0x5caf67(0x231)){console['log'](_0x5802f7+_0x5caf67(0x218));const _0x491174=_0x417128['get']('content-security-policy');_0x417128[_0x5caf67(0x1f3)](_0x5caf67(0x220),_0x5e8af8(_0x491174)),_0x417128[_0x5caf67(0x210)](_0x5caf67(0x12a)),_0x417128[_0x5caf67(0x210)](_0x5caf67(0x149)),_0x417128[_0x5caf67(0x210)](_0x5caf67(0x14d));}else console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x250));return console[_0x5caf67(0x22e)](_0x5802f7+_0x5caf67(0x194)),new Response(_0x5155db,{'status':_0x4ecd4c[_0x5caf67(0x18a)],'statusText':_0x4ecd4c[_0x5caf67(0x1c9)],'headers':_0x417128});}var _0x137816=_0x18711e(0x259);console[_0x18711e(0x22e)](_0x137816+_0x18711e(0x1c7)+new Date()[_0x18711e(0x1ca)]());var _0x3bde5b={'overlayPath':_0x18711e(0x23f),'backendUrl':_0x18711e(0x201),'overlayEnableViteHmr':![],'runtimeScriptPath':_0x18711e(0x203),'swPath':_0x18711e(0x181)};console['log'](_0x137816+_0x18711e(0x128),JSON[_0x18711e(0x255)](_0x3bde5b,null,0x2));var _0x27336b={'callbackBypass':[_0x18711e(0x1a6)],'securityMode':'permissive'},_0x15ad3b=null,_0x593062=null;function _0x159484(_0x1a345e,_0x5340ae){const _0x2c6127=_0x18711e,_0xd59c87=_0x1a345e[_0x2c6127(0x16b)][_0x2c6127(0x1ef)](_0x2c6127(0x150));if(_0x5340ae&&_0xd59c87){console[_0x2c6127(0x22e)](_0x137816+_0x2c6127(0x166)+_0xd59c87),_0x15ad3b=_0xd59c87;try{_0x593062=new URL(_0xd59c87);}catch{console[_0x2c6127(0x1db)](_0x137816+_0x2c6127(0x175)+_0xd59c87),_0x593062=null;}}_0x5340ae&&!_0xd59c87&&(_0x15ad3b&&console[_0x2c6127(0x22e)](_0x137816+_0x2c6127(0x221)),_0x15ad3b=null,_0x593062=null);const _0x5dd58b=_0xd59c87||_0x15ad3b||'',_0x380f19=_0xd59c87?((()=>{if(_0xd59c87===_0x15ad3b)return _0x593062;try{return new URL(_0xd59c87);}catch{return null;}})()):_0x593062;return{..._0x3bde5b,..._0x27336b,'enhancementUrl':_0x5dd58b,'enhancementBase':_0x380f19,'callbackBypassNormalized':_0x27336b[_0x2c6127(0x15c)][_0x2c6127(0x1d3)](_0x9671c0=>_0x9671c0[_0x2c6127(0x156)]('/')?_0x9671c0:'/'+_0x9671c0)};}function _0x243e18(_0x22360f,_0x2fa17d,..._0x3551b9){const _0x59a13b=_0x18711e;_0x22360f===_0x59a13b(0x163)?console[_0x59a13b(0x163)](_0x137816,_0x2fa17d,..._0x3551b9):console[_0x59a13b(0x232)](_0x137816,_0x2fa17d,..._0x3551b9);}self[_0x18711e(0x169)](_0x18711e(0x1df),_0x484480=>{const _0x3d9f42=_0x18711e;console[_0x3d9f42(0x22e)](_0x137816+_0x3d9f42(0x198)),_0x484480[_0x3d9f42(0x21c)](((async()=>{const _0x26703f=_0x3d9f42;console['log'](_0x137816+_0x26703f(0x12d)),await self[_0x26703f(0x19d)](),console[_0x26703f(0x22e)](_0x137816+_0x26703f(0x1b4));})()));}),self[_0x18711e(0x169)](_0x18711e(0x227),_0x425163=>{const _0x809c20=_0x18711e;console[_0x809c20(0x22e)](_0x137816+'\x20ACTIVATE\x20event'),_0x425163[_0x809c20(0x21c)](((async()=>{const _0x1ee801=_0x809c20;console[_0x1ee801(0x22e)](_0x137816+_0x1ee801(0x1da)),await self[_0x1ee801(0x20f)][_0x1ee801(0x236)](),console[_0x1ee801(0x22e)](_0x137816+'\x20clients.claim()\x20complete');})()));}),self[_0x18711e(0x169)](_0x18711e(0x1cd),_0x5dcabd=>{const _0x35a257=_0x18711e,_0x5ccb30=_0x5dcabd['data'];console[_0x35a257(0x22e)](_0x137816+_0x35a257(0x16c),_0x5ccb30);if(!_0x5ccb30||typeof _0x5ccb30!==_0x35a257(0x189)){console['log'](_0x137816+_0x35a257(0x197));return;}switch(_0x5ccb30[_0x35a257(0x178)]){case _0x3c4c00:{console[_0x35a257(0x22e)](_0x137816+_0x35a257(0x1a5));const _0x171513=_0x5ccb30['config'];_0x27336b={'callbackBypass':_0x171513[_0x35a257(0x15c)]??[_0x35a257(0x1a6)],'securityMode':_0x171513[_0x35a257(0x215)]??_0x35a257(0x193)},console[_0x35a257(0x22e)](_0x137816+_0x35a257(0x1d6),JSON[_0x35a257(0x255)](_0x27336b,null,0x2));break;}case _0x4df850:console['log'](_0x137816+_0x35a257(0x157)),_0x27336b={'callbackBypass':[_0x35a257(0x1a6)],'securityMode':_0x35a257(0x193)},_0x15ad3b=null,_0x593062=null,console[_0x35a257(0x22e)](_0x137816+_0x35a257(0x1d7));break;default:console[_0x35a257(0x22e)](_0x137816+'\x20Unknown\x20message\x20type:\x20'+_0x5ccb30['type']);break;}}),self[_0x18711e(0x169)]('fetch',_0x2e3485=>{const _0x17e562=_0x18711e;_0x2e3485[_0x17e562(0x1e4)](_0x30e94d(_0x2e3485));});async function _0x30e94d(_0x2ab903){const _0x2e3082=_0x18711e,{request:_0x5a5b46}=_0x2ab903,_0x2eed74=new URL(_0x5a5b46[_0x2e3082(0x1a1)]),_0x31ae64=_0x5a5b46[_0x2e3082(0x1fe)]===_0x2e3082(0x207),_0x5b0a6d=_0x31ae64||_0x2eed74[_0x2e3082(0x20d)]===self[_0x2e3082(0x1cf)][_0x2e3082(0x20d)];_0x5b0a6d&&(console[_0x2e3082(0x22e)](_0x137816+_0x2e3082(0x16e)+_0x5a5b46[_0x2e3082(0x16f)]+'\x20'+_0x2eed74[_0x2e3082(0x1c5)]+_0x2eed74['search']),console[_0x2e3082(0x22e)](_0x137816+_0x2e3082(0x1f9)+_0x5a5b46[_0x2e3082(0x1fe)]+',\x20destination:\x20'+_0x5a5b46[_0x2e3082(0x179)]));const _0x510200=_0x159484(_0x2eed74,_0x31ae64);_0x5b0a6d&&console[_0x2e3082(0x22e)](_0x137816+_0x2e3082(0x17b)+(_0x510200[_0x2e3082(0x150)]||_0x2e3082(0x195)));if(!_0x125db8(_0x5a5b46))return _0x5b0a6d&&console[_0x2e3082(0x22e)](_0x137816+_0x2e3082(0x171)),fetch(_0x5a5b46);if(_0x1503bc(_0x510200,_0x2eed74['pathname']))return _0x5b0a6d&&console['log'](_0x137816+_0x2e3082(0x1a7)+_0x2eed74['pathname']+_0x2e3082(0x177)),fetch(_0x5a5b46);if(_0x31ae64)return console[_0x2e3082(0x22e)](_0x137816+_0x2e3082(0x129)),_0x174754(_0x5a5b46,_0x510200);if(!_0x18f4b3(_0x510200,_0x5a5b46,_0x2eed74))return _0x5b0a6d&&console[_0x2e3082(0x22e)](_0x137816+_0x2e3082(0x1a0)),fetch(_0x5a5b46);console['log'](_0x137816+_0x2e3082(0x237)+_0x2eed74[_0x2e3082(0x1c5)]);const _0x4f4860=await _0xfde087(_0x510200,_0x5a5b46,_0x2eed74);if(_0x4f4860)return console[_0x2e3082(0x22e)](_0x137816+_0x2e3082(0x17a)+_0x2eed74[_0x2e3082(0x1c5)]),_0x4f4860;return console[_0x2e3082(0x22e)](_0x137816+_0x2e3082(0x188)+_0x2eed74[_0x2e3082(0x1c5)]+_0x2e3082(0x13a)),fetch(_0x5a5b46);}async function _0x174754(_0x596f04,_0x293966){const _0xdc144e=_0x18711e,_0x2f28a3=new URL(_0x596f04[_0xdc144e(0x1a1)]);console[_0xdc144e(0x22e)](_0x137816+'\x20handleNavigationRequest:\x20'+_0x2f28a3['pathname']+_0x2f28a3['search']),console[_0xdc144e(0x22e)](_0x137816+'\x20\x20\x20enhancementUrl\x20in\x20config:\x20'+(_0x293966[_0xdc144e(0x150)]||_0xdc144e(0x195))),console[_0xdc144e(0x22e)](_0x137816+_0xdc144e(0x209));const _0x2f8c8f=await fetch(_0x596f04);console['log'](_0x137816+'\x20\x20\x20Production\x20response:\x20'+_0x2f8c8f['status']+'\x20'+_0x2f8c8f[_0xdc144e(0x1c9)]),console[_0xdc144e(0x22e)](_0x137816+_0xdc144e(0x12e)+_0x2f8c8f[_0xdc144e(0x17f)]['get'](_0xdc144e(0x222)));if(!_0x2f45e4(_0x2f8c8f))return console[_0xdc144e(0x22e)](_0x137816+_0xdc144e(0x1ec)),_0x2f8c8f;console[_0xdc144e(0x22e)](_0x137816+_0xdc144e(0x1e7));const _0x446257=_0x3cd046(_0x2f8c8f,_0xdc144e(0x1b6));console[_0xdc144e(0x22e)](_0x137816+'\x20\x20\x20Checking\x20for\x20enhancement\x20document...');const _0x5adcec=await _0x319cb8(_0x293966,_0x596f04),_0x5e59a4=_0x5adcec?_0xdc144e(0x1c0):'production';console[_0xdc144e(0x22e)](_0x137816+_0xdc144e(0x252)+_0x5e59a4);const _0x4e33df=_0x5adcec??_0x446257,_0x10e281=_0x5e59a4==='enhancement'||_0x2f28a3['searchParams'][_0xdc144e(0x1b3)](_0xdc144e(0x14f))||_0x2f28a3['searchParams'][_0xdc144e(0x1b3)](_0xdc144e(0x1c0))||_0x2f28a3[_0xdc144e(0x16b)][_0xdc144e(0x1b3)](_0xdc144e(0x150));console['log'](_0x137816+_0xdc144e(0x1ac)+_0x10e281);try{console[_0xdc144e(0x22e)](_0x137816+_0xdc144e(0x1ee));const _0x4b50b4=await _0x2f01a8(_0x293966,_0x4e33df,_0x5e59a4,_0x10e281);return console[_0xdc144e(0x22e)](_0x137816+_0xdc144e(0x187)),_0x4b50b4;}catch(_0x115d82){return console[_0xdc144e(0x1db)](_0x137816+_0xdc144e(0x140),_0x115d82),_0x243e18(_0xdc144e(0x163),'Failed\x20to\x20rewrite\x20document',_0x115d82),_0x4e33df;}}return _0x280826(_0x4c8e91);})());
@@ -1,5 +1,14 @@
1
1
  import { Plugin } from 'vite';
2
2
 
3
- declare const enhanceSandboxPlugin: () => Plugin;
3
+ type EnhancePluginOptions = {
4
+ callbackBypass?: string[];
5
+ __development?: {
6
+ enableOverlayHmr?: boolean;
7
+ overlayPath?: string;
8
+ security?: "permissive" | "custom";
9
+ backendUrl?: string;
10
+ };
11
+ };
12
+ declare const enhance: (options?: EnhancePluginOptions) => Plugin;
4
13
 
5
- export { enhanceSandboxPlugin };
14
+ export { type EnhancePluginOptions, enhance };
@@ -1 +1 @@
1
- var _0x2bb359=_0x9ae2;(function(_0x3d0dae,_0x4c3f14){var _0x23a1eb=_0x9ae2,_0x45253a=_0x3d0dae();while(!![]){try{var _0x4c7b63=parseInt(_0x23a1eb(0x198))/0x1*(-parseInt(_0x23a1eb(0x19c))/0x2)+-parseInt(_0x23a1eb(0x194))/0x3*(parseInt(_0x23a1eb(0x199))/0x4)+-parseInt(_0x23a1eb(0x190))/0x5+parseInt(_0x23a1eb(0x19d))/0x6+-parseInt(_0x23a1eb(0x193))/0x7+-parseInt(_0x23a1eb(0x19a))/0x8+parseInt(_0x23a1eb(0x1a0))/0x9;if(_0x4c7b63===_0x4c3f14)break;else _0x45253a['push'](_0x45253a['shift']());}catch(_0x4c4445){_0x45253a['push'](_0x45253a['shift']());}}}(_0x5e2f,0x37b44));function _0x5e2f(){var _0x13e68e=['2224880SWEWZT','39phvjGY','[enhance-sandbox]\x20Failed\x20to\x20copy\x20assets\x20to\x20public\x20dir:\x20','publicDir','assets','306494DtmfUV','18516fasZni','1646736rSBnbl','enhance-sandbox','2PVqgcL','2013192eJUDYV','[enhance-sandbox]\x20Copied\x20runtime\x20and\x20service\x20worker\x20into\x20public/__enhance__','warn','10683963nZbupk','../sw-enhance.js','enhance-runtime.js','error','info','url','[enhance-sandbox]\x20Vite\x20publicDir\x20is\x20disabled,\x20not\x20copying\x20assets.','2020610zQWJRd','logger','../assets/enhance-runtime.js'];_0x5e2f=function(){return _0x13e68e;};return _0x5e2f();}import{fileURLToPath}from'url';import{dirname,join}from'path';import{mkdir,copyFile}from'fs/promises';function _0x9ae2(_0x451911,_0x46df51){var _0x5e2f3b=_0x5e2f();return _0x9ae2=function(_0x9ae25f,_0x50430b){_0x9ae25f=_0x9ae25f-0x18f;var _0x311d6a=_0x5e2f3b[_0x9ae25f];return _0x311d6a;},_0x9ae2(_0x451911,_0x46df51);}var thisFile=fileURLToPath(import.meta[_0x2bb359(0x1a5)]),pluginDir=dirname(thisFile),runtimePath=fileURLToPath(new URL(_0x2bb359(0x192),import.meta[_0x2bb359(0x1a5)])),swPath=fileURLToPath(new URL(_0x2bb359(0x1a1),import.meta[_0x2bb359(0x1a5)]));async function copyAssetsToPublic(_0x1d87cc){var _0x225e19=_0x2bb359;const _0x421476=_0x1d87cc[_0x225e19(0x196)];if(!_0x421476){_0x1d87cc[_0x225e19(0x191)][_0x225e19(0x19f)](_0x225e19(0x18f));return;}const _0x2808aa=join(_0x421476,_0x225e19(0x197));await mkdir(_0x2808aa,{'recursive':!![]}),await copyFile(runtimePath,join(_0x2808aa,_0x225e19(0x1a2))),await copyFile(swPath,join(_0x421476,'sw-enhance.js')),_0x1d87cc[_0x225e19(0x191)][_0x225e19(0x1a4)](_0x225e19(0x19e));}var enhanceSandboxPlugin=()=>{var _0x19cb26=_0x2bb359;let _0x51e8e3=![];return{'name':_0x19cb26(0x19b),'configResolved'(_0x380d6f){if(_0x51e8e3)return;_0x51e8e3=!![],copyAssetsToPublic(_0x380d6f)['catch'](_0x3ecdbe=>{var _0x49a7f3=_0x9ae2;_0x380d6f[_0x49a7f3(0x191)][_0x49a7f3(0x1a3)](_0x49a7f3(0x195)+_0x3ecdbe['message']);});}};};export{enhanceSandboxPlugin};
1
+ function _0x310b(){var _0x1d772a=['stringify','333557KrLyqm','100IkhPkB','\x22;\x0aEnhance.init(','54130RCOYhg','emitFile','224760iFwhoz','utf-8','asset','4633200wiFJiZ','end','__development','sw-enhance.js','/assets/enhance-runtime.js','1696581HKolKi','Content-Type','<script\x20type=\x22module\x22\x20data-enhance-runtime-bootstrap>\x0aimport\x20{\x20Enhance\x20}\x20from\x20\x22','816690wuWZfd','<head$1>','url','setHeader','5229387msgNrl','enhance-sandbox','../sw-enhance.js',');\x0a</script>','middlewares','application/javascript','18iJpUDd','use'];_0x310b=function(){return _0x1d772a;};return _0x310b();}var _0x31d3f0=_0x3c4d;function _0x3c4d(_0x19fd94,_0x1c06b2){_0x19fd94=_0x19fd94-0x18c;var _0x310b22=_0x310b();var _0x3c4d62=_0x310b22[_0x19fd94];return _0x3c4d62;}(function(_0x3a2a53,_0x325877){var _0x4a4fd6=_0x3c4d,_0x1239d9=_0x3a2a53();while(!![]){try{var _0x13ea05=-parseInt(_0x4a4fd6(0x1a7))/0x1+parseInt(_0x4a4fd6(0x195))/0x2+-parseInt(_0x4a4fd6(0x192))/0x3+-parseInt(_0x4a4fd6(0x1a3))/0x4*(parseInt(_0x4a4fd6(0x1a5))/0x5)+parseInt(_0x4a4fd6(0x19f))/0x6*(-parseInt(_0x4a4fd6(0x1a2))/0x7)+parseInt(_0x4a4fd6(0x18d))/0x8+parseInt(_0x4a4fd6(0x199))/0x9;if(_0x13ea05===_0x325877)break;else _0x1239d9['push'](_0x1239d9['shift']());}catch(_0x25d453){_0x1239d9['push'](_0x1239d9['shift']());}}}(_0x310b,0x59068));import{fileURLToPath}from'url';import{readFile}from'fs/promises';var runtimePath=fileURLToPath(new URL('../assets/enhance-runtime.js',import.meta.url)),swPath=fileURLToPath(new URL(_0x31d3f0(0x19b),import.meta.url)),RUNTIME_URL=_0x31d3f0(0x191),SW_URL='/sw-enhance.js';function buildInitScript(_0x592a01){var _0x3283d7=_0x31d3f0;const _0x2a347d={'callbackBypass':_0x592a01['callbackBypass'],'__development':_0x592a01[_0x3283d7(0x18f)]},_0x5eed90=JSON[_0x3283d7(0x1a1)](_0x2a347d);return _0x3283d7(0x194)+RUNTIME_URL+_0x3283d7(0x1a4)+_0x5eed90+_0x3283d7(0x19c);}var enhance=(_0x2a9fc3={})=>{var _0x4c13e5=_0x31d3f0;let _0x549944=null,_0x172e24=null;async function _0xf27248(){var _0x57fb9a=_0x3c4d;!_0x549944&&(_0x549944=await readFile(runtimePath,_0x57fb9a(0x1a8))),!_0x172e24&&(_0x172e24=await readFile(swPath,_0x57fb9a(0x1a8)));}return{'name':_0x4c13e5(0x19a),'configureServer'(_0x4b6b30){var _0x2f38ce=_0x4c13e5;_0x4b6b30[_0x2f38ce(0x19d)][_0x2f38ce(0x1a0)](async(_0x58504e,_0x13782a,_0x493739)=>{var _0x1fb593=_0x2f38ce;if(_0x58504e[_0x1fb593(0x197)]===RUNTIME_URL||_0x58504e[_0x1fb593(0x197)]===SW_URL){await _0xf27248(),_0x13782a[_0x1fb593(0x198)](_0x1fb593(0x193),_0x1fb593(0x19e)),_0x13782a[_0x1fb593(0x18e)](_0x58504e[_0x1fb593(0x197)]===RUNTIME_URL?_0x549944:_0x172e24);return;}_0x493739();});},'configurePreviewServer'(_0xe543b3){var _0x5eb523=_0x4c13e5;_0xe543b3[_0x5eb523(0x19d)]['use'](async(_0x35de72,_0x4aeaec,_0x6455e8)=>{var _0x2a98fc=_0x5eb523;if(_0x35de72[_0x2a98fc(0x197)]===RUNTIME_URL||_0x35de72[_0x2a98fc(0x197)]===SW_URL){await _0xf27248(),_0x4aeaec[_0x2a98fc(0x198)](_0x2a98fc(0x193),_0x2a98fc(0x19e)),_0x4aeaec[_0x2a98fc(0x18e)](_0x35de72[_0x2a98fc(0x197)]===RUNTIME_URL?_0x549944:_0x172e24);return;}_0x6455e8();});},async 'generateBundle'(){var _0xa82d06=_0x4c13e5;await _0xf27248(),this[_0xa82d06(0x1a6)]({'type':_0xa82d06(0x18c),'fileName':'assets/enhance-runtime.js','source':_0x549944}),this[_0xa82d06(0x1a6)]({'type':_0xa82d06(0x18c),'fileName':_0xa82d06(0x190),'source':_0x172e24});},'transformIndexHtml'(_0x492698){var _0x5312ec=_0x4c13e5;const _0x2834e0=buildInitScript(_0x2a9fc3);return _0x492698['replace'](/<head([^>]*)>/,_0x5312ec(0x196)+_0x2834e0);}};};export{enhance};
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@enhance-eng/sandbox",
3
- "version": "0.3.18",
3
+ "version": "0.3.20-beta.94284e2",
4
+ "type": "module",
4
5
  "description": "Enhance preview bootstrap and tooling package.",
5
6
  "license": "MIT",
6
- "type": "module",
7
7
  "main": "./dist/index.js",
8
8
  "module": "./dist/index.js",
9
9
  "types": "./dist/index.d.ts",
@@ -18,9 +18,8 @@
18
18
  }
19
19
  },
20
20
  "files": [
21
- "dist",
22
- "bin",
23
- "enhance.config.sample.json"
21
+ "dist/",
22
+ "README.md"
24
23
  ],
25
24
  "bin": {
26
25
  "enhance-sandbox": "./dist/cli.js"
@@ -1,2 +0,0 @@
1
-
2
- export { }
@@ -1 +0,0 @@
1
- const _0x3f0af6=_0x3eab;(function(_0x48e4e1,_0x56cabb){const _0x25a708=_0x3eab,_0x4356b1=_0x48e4e1();while(!![]){try{const _0x55f1a2=parseInt(_0x25a708(0x1c1))/0x1+parseInt(_0x25a708(0x1d0))/0x2*(parseInt(_0x25a708(0x1de))/0x3)+parseInt(_0x25a708(0x1dd))/0x4*(parseInt(_0x25a708(0x1d8))/0x5)+parseInt(_0x25a708(0x1fa))/0x6+parseInt(_0x25a708(0x1e8))/0x7*(-parseInt(_0x25a708(0x1d5))/0x8)+-parseInt(_0x25a708(0x1ff))/0x9+parseInt(_0x25a708(0x1ee))/0xa*(-parseInt(_0x25a708(0x1eb))/0xb);if(_0x55f1a2===_0x56cabb)break;else _0x4356b1['push'](_0x4356b1['shift']());}catch(_0x571d73){_0x4356b1['push'](_0x4356b1['shift']());}}}(_0x5b91,0xbab16));import{relative,resolve}from'path';function _0x3eab(_0x542201,_0x46c676){const _0x5b91ec=_0x5b91();return _0x3eab=function(_0x3eab3d,_0x471604){_0x3eab3d=_0x3eab3d-0x1b6;let _0x41b5e8=_0x5b91ec[_0x3eab3d];return _0x41b5e8;},_0x3eab(_0x542201,_0x46c676);}import{promises as _0x105c1a}from'fs';import{join}from'path';var CONFIG_FILENAME='enhance.config.json';async function loadEnhanceConfig(_0x5ee500=process['cwd']()){const _0x3d3572=_0x3eab,_0x2e5a6b=join(_0x5ee500,CONFIG_FILENAME);let _0x7e7bff;try{_0x7e7bff=await _0x105c1a['readFile'](_0x2e5a6b,_0x3d3572(0x1c0));}catch(_0x3b8afe){if(_0x3b8afe[_0x3d3572(0x1e9)]==='ENOENT')return null;throw new Error(_0x3d3572(0x1ca)+CONFIG_FILENAME+':\x20'+_0x3b8afe[_0x3d3572(0x1cc)]);}let _0x514581;try{_0x514581=JSON[_0x3d3572(0x1db)](_0x7e7bff);}catch(_0xb7f702){throw new Error(_0x3d3572(0x1d3)+CONFIG_FILENAME+':\x20'+_0xb7f702['message']);}if(!_0x514581||typeof _0x514581!=='object')throw new Error(CONFIG_FILENAME+'\x20must\x20contain\x20an\x20object');const {publicDir:_0xa66b2c,swFilename:_0x15936b}=_0x514581;if(typeof _0xa66b2c!==_0x3d3572(0x1c5)||_0xa66b2c[_0x3d3572(0x1f1)]()[_0x3d3572(0x1c3)]===0x0)throw new Error(CONFIG_FILENAME+_0x3d3572(0x1df));if(_0x15936b!=null&&(typeof _0x15936b!==_0x3d3572(0x1c5)||_0x15936b[_0x3d3572(0x1f1)]()[_0x3d3572(0x1c3)]===0x0))throw new Error(CONFIG_FILENAME+_0x3d3572(0x1c6));return{'publicDir':_0xa66b2c[_0x3d3572(0x1f1)](),'swFilename':typeof _0x15936b===_0x3d3572(0x1c5)?_0x15936b['trim']():void 0x0};}import{promises as _0x2a79cd}from'fs';import{createHash}from'crypto';import{dirname,join as _0xdbc77c}from'path';import{fileURLToPath}from'url';var package_default={'name':'@enhance-eng/sandbox','version':_0x3f0af6(0x1dc),'type':_0x3f0af6(0x1cd),'description':_0x3f0af6(0x1cb),'license':'MIT','main':_0x3f0af6(0x1f2),'module':'./dist/index.js','types':_0x3f0af6(0x1f4),'exports':{'.':{'types':_0x3f0af6(0x1f4),'import':'./dist/index.js','require':_0x3f0af6(0x1f2)},'./vite':{'types':_0x3f0af6(0x1e0),'import':_0x3f0af6(0x1c9)}},'files':[_0x3f0af6(0x1bc),_0x3f0af6(0x1f0),'enhance.config.sample.json'],'bin':{'enhance-sandbox':_0x3f0af6(0x1d2)},'scripts':{'typecheck':_0x3f0af6(0x1d6),'dev':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','dev:build':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','dev:staging':_0x3f0af6(0x1f9),'dev:staging:build':_0x3f0af6(0x1e5),'build':_0x3f0af6(0x1c4),'build:release':_0x3f0af6(0x1e4),'version':'pnpm\x20version\x20patch\x20--no-git-tag-version'},'dependencies':{'commander':_0x3f0af6(0x1e1),'zod':'^3.22.4'},'devDependencies':{'@types/node':_0x3f0af6(0x200),'javascript-obfuscator':'^4.1.1','tsup':_0x3f0af6(0x1c2),'vite':_0x3f0af6(0x1d1)},'publishConfig':{'access':'public'}},DEFAULT_SERVICE_WORKER_PATH=_0x3f0af6(0x1ba),DEFAULT_RUNTIME_PATH='/assets/enhance-runtime.js',DIST_SERVICE_WORKER_PATH=_0x3f0af6(0x1e6),DIST_RUNTIME_PATH=_0x3f0af6(0x1bd),PACKAGE_VERSION=typeof package_default['version']==='string'?package_default[_0x3f0af6(0x1fc)]:_0x3f0af6(0x1fb);function normalizeAssetPath(_0x16693b){const _0x486035=_0x3f0af6;if(!_0x16693b)return _0x16693b;if(_0x16693b[_0x486035(0x1e3)](_0x486035(0x1fe))||_0x16693b[_0x486035(0x1e3)](_0x486035(0x1f6)))return _0x16693b;const _0x3bf163=_0x16693b[_0x486035(0x1bf)](/^\.\//,'');return _0x3bf163[_0x486035(0x1e3)]('/')?_0x3bf163:'/'+_0x3bf163;}var distDir=dirname(fileURLToPath(new URL(_0x3f0af6(0x1d4),import.meta[_0x3f0af6(0x1cf)])));async function syncAssets(_0x3b66a5){const _0x2e2466=_0x3f0af6,_0x1b17e8=[{'sourcePath':DIST_SERVICE_WORKER_PATH,'manifestPath':normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),'override':_0x3b66a5[_0x2e2466(0x1e2)]?'./'+_0x3b66a5['swFilename']:void 0x0},{'sourcePath':DIST_RUNTIME_PATH,'manifestPath':normalizeAssetPath(DEFAULT_RUNTIME_PATH)}],_0x40db8b=[];for(const _0x1c3963 of _0x1b17e8){const _0x164565=cleanRelativePath(_0x1c3963[_0x2e2466(0x1b7)]??_0x1c3963['manifestPath']),_0x377953=_0xdbc77c(distDir,cleanRelativePath(_0x1c3963['sourcePath'])),_0x1b0abb=_0xdbc77c(_0x3b66a5[_0x2e2466(0x1da)],_0x164565),[_0x15f454,_0x502bc9]=await Promise[_0x2e2466(0x1b9)]([readDigest(_0x377953),readDigest(_0x1b0abb)]);if(_0x15f454&&_0x502bc9&&_0x15f454===_0x502bc9){_0x40db8b['push']({'sourcePath':_0x377953,'destinationPath':_0x1b0abb,'relativeDestination':_0x164565,'status':_0x2e2466(0x1c7)});continue;}await _0x2a79cd[_0x2e2466(0x1ef)](dirname(_0x1b0abb),{'recursive':!![]}),await _0x2a79cd['copyFile'](_0x377953,_0x1b0abb),_0x40db8b['push']({'sourcePath':_0x377953,'destinationPath':_0x1b0abb,'relativeDestination':_0x164565,'status':'copied'});}return _0x40db8b;}function cleanRelativePath(_0x456fb6){const _0x5be8f0=_0x3f0af6;return _0x456fb6[_0x5be8f0(0x1bf)](/^[./]+/,'');}async function readDigest(_0x49c23e){const _0x58aee0=_0x3f0af6;try{const _0x40547d=await _0x2a79cd[_0x58aee0(0x1e7)](_0x49c23e);return createHash(_0x58aee0(0x1d9))['update'](_0x40547d)[_0x58aee0(0x1f3)](_0x58aee0(0x1be));}catch(_0x5503b9){if(_0x5503b9['code']===_0x58aee0(0x1ed))return null;throw _0x5503b9;}}async function main(){const _0x277951=_0x3f0af6,_0xef1dc3=await loadEnhanceConfig();if(!_0xef1dc3){console[_0x277951(0x1d7)](_0x277951(0x1bb)+CONFIG_FILENAME+_0x277951(0x1ec));return;}const _0xf40daa=resolve(process[_0x277951(0x1b6)](),_0xef1dc3[_0x277951(0x1da)]),_0x18c55e=await syncAssets({'publicDir':_0xf40daa,'swFilename':_0xef1dc3[_0x277951(0x1e2)]});for(const _0x4f0e4b of _0x18c55e){const _0x477af7=relative(process[_0x277951(0x1b6)](),_0x4f0e4b[_0x277951(0x1ea)]);_0x4f0e4b[_0x277951(0x1c8)]==='skipped'?console['info']('[enhance-sandbox]\x20Skipped\x20'+_0x4f0e4b[_0x277951(0x1ce)]+_0x277951(0x1f7)+_0x477af7+']'):console['info']('[enhance-sandbox]\x20Copied\x20'+_0x4f0e4b[_0x277951(0x1ce)]+_0x277951(0x1f8)+_0x477af7);}}main()[_0x3f0af6(0x1f5)](_0x286ba4=>{const _0x1e41c2=_0x3f0af6;console[_0x1e41c2(0x1fd)]('[enhance-sandbox]\x20Failed\x20to\x20sync\x20assets\x20during\x20postinstall'),console[_0x1e41c2(0x1fd)](_0x286ba4),process[_0x1e41c2(0x1b8)](0x1);});function _0x5b91(){const _0xdd71b2=['1357636SkUCOE','3sgMQmI','\x20is\x20missing\x20a\x20non-empty\x20\x22publicDir\x22\x20string','./dist/vite/index.d.ts','^11.1.0','swFilename','startsWith','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','sw-enhance.js','readFile','2100826ePOYSp','code','destinationPath','132ehDMzB','\x20not\x20found;\x20skipping\x20asset\x20sync','ENOENT','1536180hatVBv','mkdir','bin','trim','./dist/index.cjs','digest','./dist/index.d.ts','catch','https://','\x20(already\x20current)\x20[','\x20→\x20','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','5204340nqzudt','0.0.0','version','error','http://','5982417Szslwr','^24.10.1','cwd','override','exit','all','/sw-enhance.js','[enhance-sandbox]\x20','dist','assets/enhance-runtime.js','base64','replace','utf8','587601fGBboA','^8.5.1','length','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','string','\x20has\x20an\x20invalid\x20\x22swFilename\x22;\x20expected\x20a\x20non-empty\x20string','skipped','status','./dist/vite/index.js','Failed\x20to\x20read\x20','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','message','module','relativeDestination','url','1520628GFmLov','^7.2.4','bin/enhance-sandbox.js','Invalid\x20JSON\x20in\x20','../dist/index.js','8ovIdoF','tsc\x20--noEmit','info','20rcvMwJ','sha256','publicDir','parse','0.3.18'];_0x5b91=function(){return _0xdd71b2;};return _0x5b91();}
@@ -1,4 +0,0 @@
1
- {
2
- "publicDir": "./public",
3
- "swFilename": "sw-enhance.js"
4
- }