@enhance-eng/sandbox 0.3.19 → 0.3.20-dev.1818d18

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 _0x52b329=_0x3d9a;(function(_0x160bb9,_0x45a1c0){const _0x4e96d7=_0x3d9a,_0x4cc1f0=_0x160bb9();while(!![]){try{const _0x12bfb1=parseInt(_0x4e96d7(0x27d))/0x1+parseInt(_0x4e96d7(0x29f))/0x2*(parseInt(_0x4e96d7(0x2c4))/0x3)+-parseInt(_0x4e96d7(0x1f0))/0x4*(parseInt(_0x4e96d7(0x1f2))/0x5)+parseInt(_0x4e96d7(0x255))/0x6+parseInt(_0x4e96d7(0x281))/0x7*(-parseInt(_0x4e96d7(0x2ae))/0x8)+-parseInt(_0x4e96d7(0x2b6))/0x9+parseInt(_0x4e96d7(0x2a7))/0xa;if(_0x12bfb1===_0x45a1c0)break;else _0x4cc1f0['push'](_0x4cc1f0['shift']());}catch(_0x2ebdd4){_0x4cc1f0['push'](_0x4cc1f0['shift']());}}}(_0xd4e2,0x4b38d));var DEFAULT_OVERLAY_PATH=!![]?_0x52b329(0x275):_0x52b329(0x275),DEFAULT_BACKEND_URL=!![]?_0x52b329(0x247):_0x52b329(0x247),DEFAULT_OVERLAY_HMR=!![]?![]:![];console[_0x52b329(0x26d)](_0x52b329(0x28e),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x19c20c){const _0x51479f=_0x52b329,_0x39a1d=_0x19c20c[_0x51479f(0x231)]??{};return{'callbackBypass':_0x19c20c[_0x51479f(0x244)],'overlay':{'enabled':!![],'position':'bottom-right','enableViteHmr':_0x39a1d[_0x51479f(0x213)]??DEFAULT_OVERLAY_HMR},'logLevel':'info','swPath':_0x51479f(0x287),'overlayPath':_0x39a1d[_0x51479f(0x25b)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x51479f(0x21c),'security':_0x39a1d[_0x51479f(0x25c)]??_0x51479f(0x1ef),'backendUrl':_0x39a1d[_0x51479f(0x217)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x3ec998=_0x52b329;try{const _0x8b55f7=new URLSearchParams(window['location']['search']);return _0x8b55f7[_0x3ec998(0x2c5)](_0x3ec998(0x1f7))?.[_0x3ec998(0x23b)]()||'';}catch{return'';}}var LOG_PREFIX=_0x52b329(0x2b5),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x18f473){const _0x14a811=_0x52b329;console[_0x14a811(0x26d)](LOG_PREFIX+_0x14a811(0x23f)),console[_0x14a811(0x26d)](LOG_PREFIX+_0x14a811(0x229)+_0x18f473[_0x14a811(0x25b)]),console[_0x14a811(0x26d)](LOG_PREFIX+_0x14a811(0x271)+_0x18f473['enableViteHmr']),currentOptions=_0x18f473[_0x14a811(0x2c6)],toggleHandler=_0x18f473[_0x14a811(0x221)];if(overlayController){console[_0x14a811(0x26d)](LOG_PREFIX+'\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay'),updateOverlay();return;}if(overlayLoadPromise)return console[_0x14a811(0x26d)](LOG_PREFIX+'\x20Load\x20already\x20in\x20progress\x20-\x20waiting...'),overlayLoadPromise;console[_0x14a811(0x26d)](LOG_PREFIX+_0x14a811(0x20f)),overlayLoadPromise=doLoadOverlay(_0x18f473);try{await overlayLoadPromise,console[_0x14a811(0x26d)](LOG_PREFIX+'\x20loadOverlay()\x20complete');}catch(_0x4520f6){console[_0x14a811(0x219)](LOG_PREFIX+_0x14a811(0x2ad),_0x4520f6);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x274a04){const _0x13d52f=_0x52b329;console[_0x13d52f(0x26d)](LOG_PREFIX+_0x13d52f(0x299));if(typeof window===_0x13d52f(0x20c)){console[_0x13d52f(0x26d)](LOG_PREFIX+_0x13d52f(0x208));return;}if(window[_0x13d52f(0x27c)]){console[_0x13d52f(0x26d)](LOG_PREFIX+_0x13d52f(0x269)),overlayController=window['__enhanceOverlay'],updateOverlay();return;}console[_0x13d52f(0x26d)](LOG_PREFIX+_0x13d52f(0x27a));try{_0x274a04[_0x13d52f(0x22f)]&&(console[_0x13d52f(0x26d)](LOG_PREFIX+_0x13d52f(0x218)),await setupRemoteHMR(_0x274a04['overlayPath']));console[_0x13d52f(0x26d)](LOG_PREFIX+_0x13d52f(0x1fd)+_0x274a04[_0x13d52f(0x25b)]);const _0x4b6cba=Date[_0x13d52f(0x214)](),_0x1b5cc1=await import(_0x274a04['overlayPath']);console[_0x13d52f(0x26d)](LOG_PREFIX+_0x13d52f(0x20b)+(Date[_0x13d52f(0x214)]()-_0x4b6cba)+'ms'),console['log'](LOG_PREFIX+'\x20Module\x20exports:',Object[_0x13d52f(0x29b)](_0x1b5cc1));if(typeof _0x1b5cc1?.[_0x13d52f(0x25e)]!==_0x13d52f(0x26a)){console['error'](LOG_PREFIX+'\x20Module\x20missing\x20createOverlay\x20export!'),console['error'](LOG_PREFIX+_0x13d52f(0x1f9),Object[_0x13d52f(0x29b)](_0x1b5cc1));return;}console['log'](LOG_PREFIX+_0x13d52f(0x238));const _0x52e4f9=_0x1b5cc1[_0x13d52f(0x25e)]();console[_0x13d52f(0x26d)](LOG_PREFIX+'\x20Controller\x20created:',_0x52e4f9),overlayController=_0x52e4f9,window[_0x13d52f(0x27c)]=_0x52e4f9,_0x52e4f9[_0x13d52f(0x221)](_0x274a04[_0x13d52f(0x221)]),console[_0x13d52f(0x26d)](LOG_PREFIX+_0x13d52f(0x237)),console['log'](LOG_PREFIX+_0x13d52f(0x24d)),updateOverlay();}catch(_0x583d28){console[_0x13d52f(0x219)](LOG_PREFIX+_0x13d52f(0x248),_0x583d28);}}function updateOverlay(){const _0x2fb2ab=_0x52b329;console[_0x2fb2ab(0x26d)](LOG_PREFIX+_0x2fb2ab(0x20d)),console[_0x2fb2ab(0x26d)](LOG_PREFIX+_0x2fb2ab(0x2c3)+!!overlayController),console[_0x2fb2ab(0x26d)](LOG_PREFIX+'\x20currentOptions\x20exists:\x20'+!!currentOptions);if(!overlayController||!currentOptions){console[_0x2fb2ab(0x26d)](LOG_PREFIX+_0x2fb2ab(0x2bd));return;}const _0xfeb8cb=composeOverlayState(currentOptions);console[_0x2fb2ab(0x26d)](LOG_PREFIX+_0x2fb2ab(0x285),JSON['stringify'](_0xfeb8cb,null,0x2)),overlayController['update'](_0xfeb8cb),console[_0x2fb2ab(0x26d)](LOG_PREFIX+_0x2fb2ab(0x249));}function composeOverlayState(_0x1627e1){const _0x175492=_0x52b329,_0x27e8f9=getEnhancementUrl();return console['log'](LOG_PREFIX+'\x20composeOverlayState\x20-\x20enhancementUrl:\x20'+_0x27e8f9),console['log'](LOG_PREFIX+_0x175492(0x2b9)+state['enabled']),console[_0x175492(0x26d)](LOG_PREFIX+_0x175492(0x2b4)+state[_0x175492(0x26b)]),{'enhancementUrl':_0x27e8f9,'enabled':state[_0x175492(0x2c7)],'controlled':state[_0x175492(0x26b)],'overlayPosition':_0x1627e1[_0x175492(0x2bc)][_0x175492(0x253)],'securityMode':_0x1627e1[_0x175492(0x25c)],'backendBaseUrl':_0x1627e1[_0x175492(0x217)],'appError':state[_0x175492(0x267)]};}async function setupRemoteHMR(_0x5a4a4f){const _0x23b7cc=_0x52b329;console[_0x23b7cc(0x26d)](LOG_PREFIX+_0x23b7cc(0x2a9)+_0x5a4a4f);if(typeof window===_0x23b7cc(0x20c))return;try{const _0x418ec8=new URL(_0x5a4a4f,window[_0x23b7cc(0x27f)][_0x23b7cc(0x234)]),_0x4783a8=_0x418ec8[_0x23b7cc(0x234)];console[_0x23b7cc(0x26d)](LOG_PREFIX+_0x23b7cc(0x26f)+_0x4783a8+',\x20page\x20origin:\x20'+window[_0x23b7cc(0x27f)][_0x23b7cc(0x234)]);if(_0x4783a8===window[_0x23b7cc(0x27f)][_0x23b7cc(0x234)]){console[_0x23b7cc(0x26d)](LOG_PREFIX+'\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup');return;}console[_0x23b7cc(0x26d)](LOG_PREFIX+'\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...'),await ensureReactRefreshPreamble(_0x4783a8),await ensureViteClient(_0x4783a8),console[_0x23b7cc(0x26d)](LOG_PREFIX+_0x23b7cc(0x1fc));}catch(_0xf4a780){console[_0x23b7cc(0x261)](LOG_PREFIX+_0x23b7cc(0x26c),_0xf4a780);}}async function ensureReactRefreshPreamble(_0x381d73){const _0x2a80c0=_0x52b329;window['__enhanceReactRefreshInstalledOrigins']??(window['__enhanceReactRefreshInstalledOrigins']=new Set());if(window[_0x2a80c0(0x2ab)][_0x2a80c0(0x202)](_0x381d73)){console['log'](LOG_PREFIX+_0x2a80c0(0x23d)+_0x381d73);return;}console[_0x2a80c0(0x26d)](LOG_PREFIX+_0x2a80c0(0x264)+_0x381d73+_0x2a80c0(0x216));const _0x626136=await import(_0x381d73+_0x2a80c0(0x210)),_0x5f3f60=_0x626136&&typeof _0x626136===_0x2a80c0(0x24c)&&'default'in _0x626136?_0x626136[_0x2a80c0(0x258)]:_0x626136;if(!isRefreshRuntime(_0x5f3f60)){console[_0x2a80c0(0x261)](LOG_PREFIX+_0x2a80c0(0x203));return;}_0x5f3f60['injectIntoGlobalHook'](window),window['$RefreshReg$']=()=>{},window['$RefreshSig$']=()=>_0x159ae8=>_0x159ae8,window[_0x2a80c0(0x21a)]=!![],window[_0x2a80c0(0x2ab)][_0x2a80c0(0x282)](_0x381d73),console['log'](LOG_PREFIX+_0x2a80c0(0x200)+_0x381d73);}async function ensureViteClient(_0x47649a){const _0x1b0a3c=_0x52b329;window[_0x1b0a3c(0x2b2)]??(window[_0x1b0a3c(0x2b2)]=new Set());if(window[_0x1b0a3c(0x2b2)][_0x1b0a3c(0x202)](_0x47649a)){console[_0x1b0a3c(0x26d)](LOG_PREFIX+_0x1b0a3c(0x205)+_0x47649a);return;}console['log'](LOG_PREFIX+_0x1b0a3c(0x22c)+_0x47649a+'...'),await import(_0x47649a+_0x1b0a3c(0x29e)),window[_0x1b0a3c(0x2b2)]['add'](_0x47649a),console[_0x1b0a3c(0x26d)](LOG_PREFIX+'\x20Vite\x20HMR\x20client\x20loaded\x20for\x20'+_0x47649a);}function _0x3d9a(_0x59b5b0,_0x352546){const _0xd4e25d=_0xd4e2();return _0x3d9a=function(_0x3d9a9f,_0x3207c6){_0x3d9a9f=_0x3d9a9f-0x1ef;let _0x5ce7d8=_0xd4e25d[_0x3d9a9f];return _0x5ce7d8;},_0x3d9a(_0x59b5b0,_0x352546);}function isRefreshRuntime(_0x1c9c37){const _0x2da66f=_0x52b329;return typeof _0x1c9c37==='object'&&_0x1c9c37!==null&&'injectIntoGlobalHook'in _0x1c9c37&&typeof _0x1c9c37[_0x2da66f(0x22e)]===_0x2da66f(0x26a);}var WORKER_MESSAGE_CONFIG=_0x52b329(0x26e),WORKER_MESSAGE_DISABLE=_0x52b329(0x1f4),LOG_PREFIX2=_0x52b329(0x235),registration=null,currentOptions2=null;async function registerServiceWorker(_0x387b7e){const _0x53db08=_0x52b329;console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x1f6)),console[_0x53db08(0x26d)](LOG_PREFIX2+'\x20swPath:\x20'+_0x387b7e['swPath']);if(!(_0x53db08(0x278)in navigator)){console[_0x53db08(0x261)](LOG_PREFIX2+_0x53db08(0x294));return;}console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x2ca));const _0x408d5d=navigator[_0x53db08(0x278)]['controller'];console['log'](LOG_PREFIX2+_0x53db08(0x245),_0x408d5d?.['scriptURL']??'none'),console['log'](LOG_PREFIX2+_0x53db08(0x256),_0x408d5d?.['state']??_0x53db08(0x211));const _0x486c69=!!_0x408d5d;currentOptions2=_0x387b7e,console[_0x53db08(0x26d)](LOG_PREFIX2+'\x20Checking\x20for\x20blocking\x20service\x20worker...');const _0x334f11=await detectBlockingServiceWorker(_0x387b7e[_0x53db08(0x251)]);if(_0x334f11){console[_0x53db08(0x219)](LOG_PREFIX2+_0x53db08(0x207)+_0x334f11),console[_0x53db08(0x219)](LOG_PREFIX2+_0x53db08(0x25d));return;}console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x25a));try{console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x22a)+_0x387b7e['swPath']+_0x53db08(0x295)),registration=await navigator[_0x53db08(0x278)][_0x53db08(0x284)](_0x387b7e['swPath'],{'scope':'/'}),console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x28c),{'scope':registration[_0x53db08(0x293)],'active':registration[_0x53db08(0x22d)]?.[_0x53db08(0x29d)],'waiting':registration['waiting']?.[_0x53db08(0x29d)],'installing':registration[_0x53db08(0x2ac)]?.['scriptURL']}),console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x20a));const _0x105054=await navigator[_0x53db08(0x278)][_0x53db08(0x268)];console[_0x53db08(0x26d)](LOG_PREFIX2+'\x20SW\x20ready!\x20Active:',_0x105054[_0x53db08(0x22d)]?.['scriptURL']);const _0x48362f=ownsCurrentController(_0x387b7e[_0x53db08(0x251)]);state[_0x53db08(0x26b)]=_0x48362f,console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x232)+_0x48362f),console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x21f),navigator[_0x53db08(0x278)]['controller']?.[_0x53db08(0x29d)]??_0x53db08(0x2b7));if(!_0x486c69&&!navigator[_0x53db08(0x278)][_0x53db08(0x254)]){console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x215)),window[_0x53db08(0x27f)]['reload']();return;}console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x2af)),await sendConfiguration();if(state['enabled']){const _0xe0811c=document[_0x53db08(0x250)]('[data-enhance-runtime-bootstrap]')!==null;console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x252)+_0xe0811c);if(!_0xe0811c){console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x286)),window['location'][_0x53db08(0x2a2)]();return;}}console[_0x53db08(0x26d)](LOG_PREFIX2+'\x20Updating\x20overlay...'),updateOverlay(),console[_0x53db08(0x26d)](LOG_PREFIX2+_0x53db08(0x28f));}catch(_0x2f0cc8){console[_0x53db08(0x219)](LOG_PREFIX2+_0x53db08(0x220),_0x2f0cc8);}}async function sendConfiguration(){const _0x3cb86b=_0x52b329;console[_0x3cb86b(0x26d)](LOG_PREFIX2+_0x3cb86b(0x224)),console[_0x3cb86b(0x26d)](LOG_PREFIX2+_0x3cb86b(0x23e)+state[_0x3cb86b(0x2c7)]+_0x3cb86b(0x209)+!!currentOptions2);if(!state['enabled']||!currentOptions2){console[_0x3cb86b(0x26d)](LOG_PREFIX2+_0x3cb86b(0x241));return;}const _0x549f40=await resolveWorker();if(!_0x549f40){console[_0x3cb86b(0x261)](LOG_PREFIX2+'\x20No\x20service\x20worker\x20active\x20to\x20configure');return;}const _0x288ae1={'callbackBypass':currentOptions2[_0x3cb86b(0x244)],'securityMode':currentOptions2[_0x3cb86b(0x25c)]};console[_0x3cb86b(0x26d)](LOG_PREFIX2+_0x3cb86b(0x263),JSON[_0x3cb86b(0x2a6)](_0x288ae1,null,0x2)),_0x549f40[_0x3cb86b(0x23c)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x288ae1}),console[_0x3cb86b(0x26d)](LOG_PREFIX2+_0x3cb86b(0x2a5));}async function unregisterServiceWorker(_0x2d6d31){const _0x5c0ab6=_0x52b329;console['log'](LOG_PREFIX2+_0x5c0ab6(0x233));if(!('serviceWorker'in navigator)){console[_0x5c0ab6(0x26d)](LOG_PREFIX2+_0x5c0ab6(0x2c1));return;}try{const _0x12da63=registration??await navigator[_0x5c0ab6(0x278)][_0x5c0ab6(0x291)]('/');if(!_0x12da63){console[_0x5c0ab6(0x26d)](LOG_PREFIX2+'\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister');return;}console[_0x5c0ab6(0x26d)](LOG_PREFIX2+'\x20Found\x20registration:',{'scope':_0x12da63[_0x5c0ab6(0x293)],'active':_0x12da63[_0x5c0ab6(0x22d)]?.[_0x5c0ab6(0x29d)],'waiting':_0x12da63[_0x5c0ab6(0x1fa)]?.[_0x5c0ab6(0x29d)],'installing':_0x12da63[_0x5c0ab6(0x2ac)]?.[_0x5c0ab6(0x29d)]});const _0x455c85=[_0x12da63[_0x5c0ab6(0x22d)]?.['scriptURL'],_0x12da63[_0x5c0ab6(0x1fa)]?.['scriptURL'],_0x12da63[_0x5c0ab6(0x2ac)]?.[_0x5c0ab6(0x29d)]],_0x55be93=_0x455c85[_0x5c0ab6(0x225)](_0x470aa1=>_0x470aa1&&ownsServiceWorker(_0x470aa1,_0x2d6d31));if(!_0x55be93){console[_0x5c0ab6(0x26d)](LOG_PREFIX2+'\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering');return;}_0x12da63[_0x5c0ab6(0x22d)]&&(console[_0x5c0ab6(0x26d)](LOG_PREFIX2+_0x5c0ab6(0x29c)),_0x12da63[_0x5c0ab6(0x22d)][_0x5c0ab6(0x23c)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x5c0ab6(0x26d)](LOG_PREFIX2+_0x5c0ab6(0x1f8)),await _0x12da63[_0x5c0ab6(0x28d)](),registration=null,currentOptions2=null,console['log'](LOG_PREFIX2+_0x5c0ab6(0x2b1));}catch(_0x4868f7){console['error'](LOG_PREFIX2+_0x5c0ab6(0x1ff),_0x4868f7);}}function ownsServiceWorker(_0x1a92ba,_0x21df86){const _0x215810=_0x52b329,_0x3b8969=typeof window!=='undefined'?window[_0x215810(0x27f)][_0x215810(0x234)]:'',_0x46041d=new URL(_0x21df86,_0x3b8969||void 0x0)[_0x215810(0x276)],_0x6d1611=_0x1a92ba===_0x46041d||_0x1a92ba['includes']('sw-enhance');return console[_0x215810(0x26d)](LOG_PREFIX2+'\x20ownsServiceWorker?\x20scriptURL='+_0x1a92ba+_0x215810(0x2c8)+_0x46041d+',\x20owns='+_0x6d1611),_0x6d1611;}function ownsCurrentController(_0x4b3378){const _0x1aed2c=_0x52b329;if(typeof navigator===_0x1aed2c(0x20c))return![];const _0x4c0b8d=navigator[_0x1aed2c(0x278)]?.[_0x1aed2c(0x254)];if(!_0x4c0b8d)return console[_0x1aed2c(0x26d)](LOG_PREFIX2+_0x1aed2c(0x288)),![];return ownsServiceWorker(_0x4c0b8d[_0x1aed2c(0x29d)],_0x4b3378);}async function detectBlockingServiceWorker(_0x474138){const _0x6ae43c=_0x52b329;if(!navigator[_0x6ae43c(0x278)])return null;try{const _0x52b6b7=await navigator[_0x6ae43c(0x278)][_0x6ae43c(0x291)]('/');console[_0x6ae43c(0x26d)](LOG_PREFIX2+_0x6ae43c(0x24f),_0x52b6b7?.[_0x6ae43c(0x22d)]?.[_0x6ae43c(0x29d)]??_0x6ae43c(0x2b7));const _0xbc6d68=_0x52b6b7?.[_0x6ae43c(0x22d)]?.[_0x6ae43c(0x29d)];if(!_0xbc6d68)return null;if(ownsServiceWorker(_0xbc6d68,_0x474138))return null;return _0xbc6d68;}catch(_0x1d7d63){return console[_0x6ae43c(0x219)](LOG_PREFIX2+_0x6ae43c(0x2b0),_0x1d7d63),null;}}async function resolveWorker(){const _0x1ca273=_0x52b329,_0x3c2e5a=registration??await navigator[_0x1ca273(0x278)]?.[_0x1ca273(0x291)]('/'),_0x2084b3=_0x3c2e5a?.['active']??_0x3c2e5a?.[_0x1ca273(0x1fa)]??_0x3c2e5a?.[_0x1ca273(0x2ac)]??null;return console[_0x1ca273(0x26d)](LOG_PREFIX2+_0x1ca273(0x2a1),_0x2084b3?.[_0x1ca273(0x29d)]??_0x1ca273(0x2b7),_0x1ca273(0x201)+(_0x2084b3?.[_0x1ca273(0x277)]??_0x1ca273(0x211))),_0x2084b3;}var LOG_PREFIX3=_0x52b329(0x27b);function isInitialized(){const _0x4a0cfe=_0x52b329;return typeof window!==_0x4a0cfe(0x20c)&&window[_0x4a0cfe(0x279)]===!![];}function setInitialized(_0x3b4c97){const _0x28da27=_0x52b329;typeof window!==_0x28da27(0x20c)&&(window[_0x28da27(0x279)]=_0x3b4c97);}function getOptions(){const _0x53b824=_0x52b329;return typeof window!=='undefined'?window[_0x53b824(0x21d)]??null:null;}function setOptions(_0x4ddfcb){const _0x4ba4f7=_0x52b329;typeof window!==_0x4ba4f7(0x20c)&&(window[_0x4ba4f7(0x21d)]=_0x4ddfcb);}var Enhance={'init'(_0x22c553){const _0x331f23=_0x52b329,_0x680d12=Date[_0x331f23(0x214)]();console['log'](LOG_PREFIX3+'\x20init()\x20called\x20at\x20'+_0x680d12),console[_0x331f23(0x26d)](LOG_PREFIX3+_0x331f23(0x2a0)+window[_0x331f23(0x27f)][_0x331f23(0x276)]),console[_0x331f23(0x26d)](LOG_PREFIX3+_0x331f23(0x21b)+document[_0x331f23(0x29a)]),console['log'](LOG_PREFIX3+_0x331f23(0x2c2),JSON[_0x331f23(0x2a6)](_0x22c553,null,0x2));if(isInitialized())return console['warn'](LOG_PREFIX3+'\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller'),window[_0x331f23(0x240)]??createController();setInitialized(!![]),console['log'](LOG_PREFIX3+'\x20First\x20initialization');const _0x522f43=normalizeOptions(_0x22c553);setOptions(_0x522f43),console['log'](LOG_PREFIX3+'\x20Normalized\x20options:',JSON['stringify'](_0x522f43,null,0x2));const _0x4d5fb6=parseUrlParams();console[_0x331f23(0x26d)](LOG_PREFIX3+_0x331f23(0x274),JSON['stringify'](_0x4d5fb6,null,0x2));if(_0x4d5fb6['explicitDisable'])return cleanUrlParam(_0x331f23(0x230)),console[_0x331f23(0x26d)](LOG_PREFIX3+_0x331f23(0x2ba)),createController();if(_0x4d5fb6[_0x331f23(0x212)])return console[_0x331f23(0x26d)](LOG_PREFIX3+_0x331f23(0x242)),console[_0x331f23(0x26d)](LOG_PREFIX3+'\x20enhancementUrl:\x20'+_0x4d5fb6[_0x331f23(0x1f7)]),console['log'](LOG_PREFIX3+_0x331f23(0x24b)+_0x4d5fb6[_0x331f23(0x2be)]),state['enabled']=!![],console[_0x331f23(0x26d)](LOG_PREFIX3+_0x331f23(0x2c0)),void loadOverlay({'overlayPath':_0x522f43['overlayPath'],'enableViteHmr':_0x522f43[_0x331f23(0x2bc)]['enableViteHmr'],'options':_0x522f43,'onToggle':handleToggle}),console[_0x331f23(0x26d)](LOG_PREFIX3+_0x331f23(0x2c9)),void registerServiceWorker(_0x522f43),console['log'](LOG_PREFIX3+_0x331f23(0x272)),createController();return console[_0x331f23(0x26d)](LOG_PREFIX3+_0x331f23(0x1f3)),console['log'](LOG_PREFIX3+_0x331f23(0x283)),void unregisterServiceWorker(_0x522f43[_0x331f23(0x251)]),console[_0x331f23(0x26d)](LOG_PREFIX3+_0x331f23(0x243)),import.meta[_0x331f23(0x2aa)]&&(console[_0x331f23(0x26d)](LOG_PREFIX3+'\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners'),import.meta[_0x331f23(0x2aa)]['on']('vite:error',_0x2b1355=>{const _0x38a326=_0x331f23;console[_0x38a326(0x26d)](LOG_PREFIX3+_0x38a326(0x24a),_0x2b1355),state[_0x38a326(0x267)]={'message':_0x2b1355['err'][_0x38a326(0x2bf)]},updateOverlay();}),import.meta['hot']['on'](_0x331f23(0x27e),()=>{const _0x2ed12d=_0x331f23;state[_0x2ed12d(0x267)]&&(console[_0x2ed12d(0x26d)](LOG_PREFIX3+_0x2ed12d(0x228)),state[_0x2ed12d(0x267)]=null,updateOverlay());})),createController();}};function createController(){const _0x4a6645=_0x52b329,_0x91b870={'enable'(){const _0x2668b3=_0x3d9a,_0x5738a9=getOptions();if(!_0x5738a9)return;state[_0x2668b3(0x2c7)]=!![],void loadOverlay({'overlayPath':_0x5738a9[_0x2668b3(0x25b)],'enableViteHmr':_0x5738a9[_0x2668b3(0x2bc)][_0x2668b3(0x22f)],'options':_0x5738a9,'onToggle':handleToggle}),void registerServiceWorker(_0x5738a9),void sendConfiguration(),updateOverlay();},'disable'(){const _0x419b33=_0x3d9a,_0x3f4bcf=getOptions();if(!_0x3f4bcf)return;state[_0x419b33(0x2c7)]=![],state[_0x419b33(0x26b)]=![],updateOverlay(),void unregisterServiceWorker(_0x3f4bcf['swPath']);},'status'(){const _0x541ad5=_0x3d9a;return{'enabled':state['enabled'],'controlled':state[_0x541ad5(0x26b)]};}};return typeof window!=='undefined'&&(window[_0x4a6645(0x240)]=_0x91b870),_0x91b870;}function handleToggle(){const _0x132284=_0x52b329,_0x56fd3d=createController();state[_0x132284(0x2c7)]?_0x56fd3d[_0x132284(0x236)]():_0x56fd3d[_0x132284(0x297)]();}function parseUrlParams(){const _0xef798d=_0x52b329,_0x5f4a51=new URL(window['location'][_0xef798d(0x276)]),_0x1c5454=_0x5f4a51[_0xef798d(0x2a3)]['get'](_0xef798d(0x230))?.[_0xef798d(0x1f5)](),_0x41922d=_0x5f4a51[_0xef798d(0x2a3)][_0xef798d(0x2c5)](_0xef798d(0x1f7)),_0x4e2112=_0x5f4a51['searchParams'][_0xef798d(0x2c5)](_0xef798d(0x265));return{'hasEnhancement':Boolean(_0x41922d||_0x4e2112),'explicitDisable':_0x1c5454==='0'||_0x1c5454===_0xef798d(0x21e)||_0x1c5454===_0xef798d(0x290),'enhancementUrl':_0x41922d,'enhancementId':_0x4e2112};}function cleanUrlParam(_0x5cd0c1){const _0x5a8baf=_0x52b329,_0x99a74d=new URL(window[_0x5a8baf(0x27f)][_0x5a8baf(0x276)]);_0x99a74d[_0x5a8baf(0x2a3)][_0x5a8baf(0x202)](_0x5cd0c1)&&(_0x99a74d[_0x5a8baf(0x2a3)][_0x5a8baf(0x292)](_0x5cd0c1),window[_0x5a8baf(0x2a8)][_0x5a8baf(0x296)](null,document[_0x5a8baf(0x1f1)],_0x99a74d[_0x5a8baf(0x1fe)]()));}var package_default={'name':_0x52b329(0x273),'version':_0x52b329(0x2a4),'type':_0x52b329(0x22b),'description':_0x52b329(0x298),'license':_0x52b329(0x222),'main':_0x52b329(0x226),'module':'./dist/index.js','types':_0x52b329(0x257),'exports':{'.':{'types':_0x52b329(0x257),'import':'./dist/index.js','require':_0x52b329(0x226)},'./vite':{'types':_0x52b329(0x259),'import':_0x52b329(0x2b8)}},'files':['dist',_0x52b329(0x23a),_0x52b329(0x25f)],'bin':{'enhance-sandbox':'bin/enhance-sandbox.js'},'scripts':{'typecheck':_0x52b329(0x246),'dev':_0x52b329(0x28b),'dev:build':_0x52b329(0x262),'dev:staging':_0x52b329(0x223),'dev:staging:build':_0x52b329(0x28a),'build':'ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','build:release':_0x52b329(0x204),'version':_0x52b329(0x2b3)},'dependencies':{'commander':_0x52b329(0x24e),'zod':_0x52b329(0x280)},'devDependencies':{'@types/node':_0x52b329(0x1fb),'javascript-obfuscator':'^4.1.1','tsup':'^8.5.1','vite':_0x52b329(0x227)},'publishConfig':{'access':_0x52b329(0x20e)}},DEFAULT_SERVICE_WORKER_PATH=_0x52b329(0x287),DEFAULT_RUNTIME_PATH='/assets/enhance-runtime.js',PACKAGE_VERSION=typeof package_default[_0x52b329(0x260)]===_0x52b329(0x206)?package_default[_0x52b329(0x260)]:'0.0.0';function normalizeAssetPath(_0x48fefb){const _0x478a20=_0x52b329;if(!_0x48fefb)return _0x48fefb;if(_0x48fefb[_0x478a20(0x289)](_0x478a20(0x239))||_0x48fefb[_0x478a20(0x289)](_0x478a20(0x270)))return _0x48fefb;const _0x3f407e=_0x48fefb[_0x478a20(0x266)](/^\.\//,'');return _0x3f407e[_0x478a20(0x289)]('/')?_0x3f407e:'/'+_0x3f407e;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x2c8b1a){const _0x3fbc0b=_0x52b329;return Enhance[_0x3fbc0b(0x2cb)](_0x2c8b1a);},'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 _0x47158e=_0x52b329;return Enhance2[_0x47158e(0x2bb)]();}function _0xd4e2(){const _0x83ef81=['waiting','^24.10.1','\x20HMR\x20setup\x20complete','\x20Importing\x20overlay\x20module\x20from:\x20','toString','\x20Failed\x20to\x20unregister\x20service\x20worker:','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','state:\x20','has','\x20Invalid\x20React\x20Refresh\x20runtime','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','\x20Vite\x20client\x20already\x20loaded\x20for\x20','string','\x20BLOCKING\x20SW\x20detected:\x20','\x20No\x20window\x20object\x20-\x20skipping',',\x20currentOptions:\x20','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','\x20Module\x20imported\x20in\x20','undefined','\x20updateOverlay()\x20called','public','\x20Starting\x20fresh\x20overlay\x20load...','/@react-refresh','N/A','hasEnhancement','enableOverlayHmr','now','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','...','backendUrl','\x20Setting\x20up\x20remote\x20HMR...','error','__vite_plugin_react_preamble_installed__','\x20Document\x20readyState:\x20','/assets/enhance-runtime.js','__enhanceOptions','false','\x20Current\x20controller\x20after\x20ready:','\x20Failed\x20to\x20register\x20service\x20worker:','onToggle','MIT','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','\x20sendConfiguration()\x20called','some','./dist/index.cjs','^7.2.4','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','\x20overlayPath:\x20','\x20Registering\x20SW\x20at\x20','module','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','active','injectIntoGlobalHook','enableViteHmr','enhance','__development','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','\x20unregisterServiceWorker()\x20called','origin','[Enhance\x20SW-Client]','disable','\x20Overlay\x20controller\x20initialized\x20and\x20cached','\x20Calling\x20createOverlay()...','http://','bin','trim','postMessage','\x20React\x20Refresh\x20already\x20installed\x20for\x20','\x20state.enabled:\x20','\x20loadOverlay()\x20called','__enhanceController','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','\x20Enhancement\x20mode\x20ENABLED','\x20init()\x20complete\x20-\x20normal\x20mode','callbackBypass','\x20Current\x20controller:','tsc\x20--noEmit','https://api.enhancelabs.ai','\x20Failed\x20to\x20import/create\x20overlay:','\x20Overlay\x20update\x20complete','\x20Vite\x20error\x20detected:','\x20enhancementId:\x20','object','\x20Calling\x20updateOverlay()...','^11.1.0','\x20detectBlocking\x20-\x20existing\x20registration:','querySelector','swPath','\x20Enhancement\x20detection:\x20wasEnhanced=','position','controller','234366uKqdjD','\x20Controller\x20state:','./dist/index.d.ts','default','./dist/vite/index.d.ts','\x20No\x20blocking\x20SW\x20found','overlayPath','security','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','createOverlay','enhance.config.sample.json','version','warn','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','\x20Sending\x20customer\x20config\x20to\x20SW:','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20','enhancement','replace','appError','ready','\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20reusing','function','controlled','\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):','log','enhance:configure','\x20Overlay\x20origin:\x20','https://','\x20enableViteHmr:\x20','\x20init()\x20complete\x20-\x20enhancement\x20mode','@enhance-eng/sandbox','\x20URL\x20params\x20parsed:','https://assets.enhancelabs.ai/overlay.js','href','state','serviceWorker','__enhanceInitialized','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','[Enhance\x20Runtime]','__enhanceOverlay','143563zrzAKu','vite:beforeUpdate','location','^3.22.4','234647YeQZDH','add','\x20Unregistering\x20any\x20existing\x20SW...','register','\x20Updating\x20overlay\x20with\x20state:','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','/sw-enhance.js','\x20No\x20current\x20controller','startsWith','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','\x20Registration\x20returned:','unregister','[Enhance\x20Config]\x20Build-time\x20defaults:','\x20registerServiceWorker()\x20complete','off','getRegistration','delete','scope','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser','\x20with\x20scope\x20\x27/\x27...','replaceState','enable','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','\x20doLoadOverlay()\x20starting...','readyState','keys','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','scriptURL','/@vite/client','371878EyZIXA','\x20Current\x20URL:\x20','\x20resolveWorker:','reload','searchParams','0.3.19','\x20Config\x20sent\x20to\x20SW','stringify','8912480HhCJqY','history','\x20setupRemoteHMR()\x20for\x20','hot','__enhanceReactRefreshInstalledOrigins','installing','\x20loadOverlay()\x20failed:','80zXOnaw','\x20Sending\x20customer\x20configuration...','\x20detectBlocking\x20error:','\x20SW\x20unregistered\x20successfully','__viteHMRLoaded','pnpm\x20version\x20patch\x20--no-git-tag-version','\x20composeOverlayState\x20-\x20state.controlled:\x20','[Enhance\x20Overlay]','4632651jJzHwc','none','./dist/vite/index.js','\x20composeOverlayState\x20-\x20state.enabled:\x20','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','serviceWorkerURL','overlay','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','enhancementId','message','\x20Starting\x20overlay\x20load\x20(async)...','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','\x20Raw\x20options:','\x20overlayController\x20exists:\x20','3Nhqcom','get','options','enabled',',\x20expected=','\x20Starting\x20SW\x20registration\x20(async)...','\x20Service\x20workers\x20supported','init','permissive','388QDWYPM','title','5245IDEnxu','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','enhance:disable','toLowerCase','\x20registerServiceWorker()\x20called','enhancementUrl','\x20Unregistering\x20SW...','\x20Available\x20exports:'];_0xd4e2=function(){return _0x83ef81;};return _0xd4e2();}function runtimeURL(){return Enhance2['runtimeURL']();}export{Enhance2 as Enhance,getAssetManifest,resolveServiceWorkerPath,runtimeURL,serviceWorkerURL};
1
+ const _0x5a90d8=_0x42a9;(function(_0x4af4cd,_0x18ca10){const _0x3b821a=_0x42a9,_0x33b15f=_0x4af4cd();while(!![]){try{const _0x8b34d4=parseInt(_0x3b821a(0x1e3))/0x1*(parseInt(_0x3b821a(0x23c))/0x2)+-parseInt(_0x3b821a(0x205))/0x3*(-parseInt(_0x3b821a(0x1c2))/0x4)+-parseInt(_0x3b821a(0x230))/0x5*(parseInt(_0x3b821a(0x223))/0x6)+-parseInt(_0x3b821a(0x229))/0x7+-parseInt(_0x3b821a(0x16f))/0x8+parseInt(_0x3b821a(0x1b5))/0x9*(-parseInt(_0x3b821a(0x1db))/0xa)+parseInt(_0x3b821a(0x1e5))/0xb;if(_0x8b34d4===_0x18ca10)break;else _0x33b15f['push'](_0x33b15f['shift']());}catch(_0x22fcba){_0x33b15f['push'](_0x33b15f['shift']());}}}(_0x2ef9,0x44024));var DEFAULT_OVERLAY_PATH=!![]?_0x5a90d8(0x1d4):'https://assets.enhancelabs.ai/overlay.js',DEFAULT_BACKEND_URL=!![]?_0x5a90d8(0x1fe):_0x5a90d8(0x1fe),DEFAULT_OVERLAY_HMR=!![]?![]:![];console[_0x5a90d8(0x212)](_0x5a90d8(0x1f5),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function _0x42a9(_0xedca53,_0x5f2cd5){_0xedca53=_0xedca53-0x16a;const _0x2ef9d3=_0x2ef9();let _0x42a960=_0x2ef9d3[_0xedca53];return _0x42a960;}function normalizeOptions(_0x5e9306){const _0x4b9236=_0x5a90d8,_0x218e6b=_0x5e9306['__development']??{};return{'callbackBypass':_0x5e9306['callbackBypass']??[],'overlay':{'enabled':!![],'position':'bottom-right','enableViteHmr':_0x218e6b[_0x4b9236(0x1e8)]??DEFAULT_OVERLAY_HMR},'logLevel':_0x4b9236(0x18f),'swPath':_0x4b9236(0x1f3),'overlayPath':_0x218e6b['overlayPath']??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x4b9236(0x234),'security':_0x218e6b['security']??_0x4b9236(0x226),'backendUrl':_0x218e6b['backendUrl']??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x35ddf4=_0x5a90d8;try{const _0x303037=new URLSearchParams(window[_0x35ddf4(0x1e1)]['search']);return _0x303037[_0x35ddf4(0x23f)](_0x35ddf4(0x1a1))?.[_0x35ddf4(0x1fb)]()||'';}catch{return'';}}var LOG_PREFIX=_0x5a90d8(0x203),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x466ed2){const _0x3a1896=_0x5a90d8;console[_0x3a1896(0x212)](LOG_PREFIX+_0x3a1896(0x1dc)),console[_0x3a1896(0x212)](LOG_PREFIX+'\x20overlayPath:\x20'+_0x466ed2[_0x3a1896(0x22c)]),console[_0x3a1896(0x212)](LOG_PREFIX+_0x3a1896(0x16e)+_0x466ed2[_0x3a1896(0x1a8)]),currentOptions=_0x466ed2[_0x3a1896(0x20f)],toggleHandler=_0x466ed2[_0x3a1896(0x1b4)];if(overlayController){console[_0x3a1896(0x212)](LOG_PREFIX+_0x3a1896(0x243)),updateOverlay();return;}if(overlayLoadPromise)return console['log'](LOG_PREFIX+'\x20Load\x20already\x20in\x20progress\x20-\x20waiting...'),overlayLoadPromise;console[_0x3a1896(0x212)](LOG_PREFIX+_0x3a1896(0x20e)),overlayLoadPromise=doLoadOverlay(_0x466ed2);try{await overlayLoadPromise,console[_0x3a1896(0x212)](LOG_PREFIX+_0x3a1896(0x1df));}catch(_0xd963bc){console[_0x3a1896(0x178)](LOG_PREFIX+_0x3a1896(0x1ca),_0xd963bc);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x25bace){const _0x4d3a93=_0x5a90d8;console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x1c9));if(typeof window===_0x4d3a93(0x17d)){console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x1c5));return;}if(window[_0x4d3a93(0x1d6)]){console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x1ee)),overlayController=window[_0x4d3a93(0x1d6)];return;}console['log'](LOG_PREFIX+_0x4d3a93(0x217));try{_0x25bace['enableViteHmr']&&(console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x195)),await setupRemoteHMR(_0x25bace[_0x4d3a93(0x22c)]));console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x184)+_0x25bace[_0x4d3a93(0x22c)]);const _0x442e58=Date[_0x4d3a93(0x215)](),_0x5b1a51=await import(_0x25bace[_0x4d3a93(0x22c)]);console['log'](LOG_PREFIX+_0x4d3a93(0x1c0)+(Date[_0x4d3a93(0x215)]()-_0x442e58)+'ms'),console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x214),Object[_0x4d3a93(0x188)](_0x5b1a51));if(typeof _0x5b1a51?.[_0x4d3a93(0x22b)]!==_0x4d3a93(0x1b6)){console[_0x4d3a93(0x178)](LOG_PREFIX+_0x4d3a93(0x219)),console['error'](LOG_PREFIX+_0x4d3a93(0x1f1),Object[_0x4d3a93(0x188)](_0x5b1a51));return;}console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x1c1));const _0x1bb360=_0x5b1a51[_0x4d3a93(0x22b)]();console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x187),_0x1bb360),overlayController=_0x1bb360,window['__enhanceOverlay']=_0x1bb360,_0x1bb360[_0x4d3a93(0x1b4)](_0x25bace['onToggle']),console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x16b)),console[_0x4d3a93(0x212)](LOG_PREFIX+_0x4d3a93(0x194)),updateOverlay();}catch(_0x3d1fe3){console[_0x4d3a93(0x178)](LOG_PREFIX+_0x4d3a93(0x1ae),_0x3d1fe3);}}function updateOverlay(){const _0x387089=_0x5a90d8;console[_0x387089(0x212)](LOG_PREFIX+_0x387089(0x22f)),console[_0x387089(0x212)](LOG_PREFIX+_0x387089(0x233)+!!overlayController),console[_0x387089(0x212)](LOG_PREFIX+_0x387089(0x204)+!!currentOptions);if(!overlayController||!currentOptions){console[_0x387089(0x212)](LOG_PREFIX+'\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update');return;}const _0x9b8aad=composeOverlayState(currentOptions);console[_0x387089(0x212)](LOG_PREFIX+'\x20Updating\x20overlay\x20with\x20state:',JSON[_0x387089(0x1b3)](_0x9b8aad,null,0x2)),overlayController[_0x387089(0x1ad)](_0x9b8aad),console[_0x387089(0x212)](LOG_PREFIX+_0x387089(0x19e));}function composeOverlayState(_0xdace80){const _0x329e57=_0x5a90d8,_0x4e5efc=getEnhancementUrl();return console[_0x329e57(0x212)](LOG_PREFIX+_0x329e57(0x1dd)+_0x4e5efc),console['log'](LOG_PREFIX+_0x329e57(0x1ba)+state[_0x329e57(0x228)]),console[_0x329e57(0x212)](LOG_PREFIX+_0x329e57(0x206)+state[_0x329e57(0x1cb)]),{'enhancementUrl':_0x4e5efc,'enabled':state[_0x329e57(0x228)],'controlled':state[_0x329e57(0x1cb)],'overlayPosition':_0xdace80[_0x329e57(0x1ab)][_0x329e57(0x19c)],'securityMode':_0xdace80[_0x329e57(0x1fd)],'backendBaseUrl':_0xdace80[_0x329e57(0x244)],'appError':state['appError']};}async function setupRemoteHMR(_0x28d47b){const _0x2d9fd8=_0x5a90d8;console['log'](LOG_PREFIX+_0x2d9fd8(0x1e0)+_0x28d47b);if(typeof window===_0x2d9fd8(0x17d))return;try{const _0x17da33=new URL(_0x28d47b,window['location'][_0x2d9fd8(0x1ef)]),_0xd2ad9=_0x17da33[_0x2d9fd8(0x1ef)];console[_0x2d9fd8(0x212)](LOG_PREFIX+_0x2d9fd8(0x17e)+_0xd2ad9+_0x2d9fd8(0x1f2)+window['location'][_0x2d9fd8(0x1ef)]);if(_0xd2ad9===window[_0x2d9fd8(0x1e1)]['origin']){console[_0x2d9fd8(0x212)](LOG_PREFIX+_0x2d9fd8(0x19d));return;}console['log'](LOG_PREFIX+_0x2d9fd8(0x22e)),await ensureReactRefreshPreamble(_0xd2ad9),await ensureViteClient(_0xd2ad9),console[_0x2d9fd8(0x212)](LOG_PREFIX+'\x20HMR\x20setup\x20complete');}catch(_0x34f16b){console[_0x2d9fd8(0x191)](LOG_PREFIX+_0x2d9fd8(0x240),_0x34f16b);}}function _0x2ef9(){const _0x5b8021=['\x20Overlay\x20update\x20complete','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','startsWith','enhancementUrl','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','enable','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','\x20Registering\x20SW\x20at\x20','explicitDisable','false','enableViteHmr','querySelector','sw-enhance','overlay','enhance:disable','update','\x20Failed\x20to\x20import/create\x20overlay:','replaceState','searchParams','0.0.0','\x20with\x20scope\x20\x27/\x27...','stringify','onToggle','10071pZiHJR','function','\x20registerServiceWorker()\x20complete','\x20Failed\x20to\x20register\x20service\x20worker:','./dev/cli.js','\x20composeOverlayState\x20-\x20state.enabled:\x20','\x20Sending\x20customer\x20configuration...','dev/','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','runtimeURL',',\x20owns=','\x20Module\x20imported\x20in\x20','\x20Calling\x20createOverlay()...','6412cvYPAu','\x20Controller\x20state:','object','\x20No\x20window\x20object\x20-\x20skipping','\x20Starting\x20overlay\x20load\x20(async)...','bun\x20version\x20patch\x20--no-git-tag-version','/@react-refresh','\x20doLoadOverlay()\x20starting...','\x20loadOverlay()\x20failed:','controlled','...','\x20resolveWorker:','\x20First\x20initialization','scope','./dev/index.js','state:\x20','^3.22.4','add','https://assets.enhancelabs.ai/overlay.js','appError','__enhanceOverlay','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister','\x20Raw\x20options:','__enhanceController','3830qWLnUk','\x20loadOverlay()\x20called','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','\x20enhancementId:\x20','\x20loadOverlay()\x20complete','\x20setupRemoteHMR()\x20for\x20','location','\x20React\x20Refresh\x20already\x20installed\x20for\x20','2473gFSnWC','version','11526163TvNVwt','default','vite:error','enableOverlayHmr','state','enhance:configure','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','register','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit','origin','\x20sendConfiguration()\x20called','\x20Available\x20exports:',',\x20page\x20origin:\x20','/sw-enhance.js','\x20Failed\x20to\x20unregister\x20service\x20worker:','[Enhance\x20Config]\x20Build-time\x20defaults:','[Enhance\x20Runtime]','\x20Enhancement\x20mode\x20ENABLED','\x20detectBlocking\x20error:','tsc\x20--noEmit','\x20enhancementUrl:\x20','trim','\x20Vite\x20error\x20detected:','security','https://api.enhancelabs.ai','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','waiting','replace',',\x20expected=','[Enhance\x20Overlay]','\x20currentOptions\x20exists:\x20','327pssMzs','\x20composeOverlayState\x20-\x20state.controlled:\x20','\x20Invalid\x20React\x20Refresh\x20runtime','serviceWorker','./dev/vite/index.d.ts','enhancementId','./dev/index.d.ts','__enhanceOptions','\x20URL\x20params\x20parsed:','\x20Starting\x20fresh\x20overlay\x20load...','options','__enhanceReactRefreshInstalledOrigins','^8.5.1','log','\x20Vite\x20client\x20already\x20loaded\x20for\x20','\x20Module\x20exports:','now','\x20No\x20current\x20controller','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','\x20detectBlocking\x20-\x20existing\x20registration:','\x20Module\x20missing\x20createOverlay\x20export!','^4.1.1',',\x20currentOptions:\x20','^11.1.0','\x20Unregistering\x20any\x20existing\x20SW...','__enhanceInitialized','\x20Unregistering\x20SW...','toString','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','7482xrqjmK','\x20Updating\x20overlay...','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','permissive','^7.2.4','enabled','3216423gtrPPt','\x20BLOCKING\x20SW\x20detected:\x20','createOverlay','overlayPath','swPath','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','\x20updateOverlay()\x20called','415jxCQlw','https://','$RefreshReg$','\x20overlayController\x20exists:\x20','/assets/enhance-runtime.js','vite:beforeUpdate','off','history','none','\x20SW\x20ready!\x20Active:','message','\x20No\x20blocking\x20SW\x20found','182RxXRMU','getRegistration','\x20Current\x20URL:\x20','get','\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):','/@vite/client','\x20Starting\x20SW\x20registration\x20(async)...','\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay','backendUrl','serviceWorkerURL','@enhance-eng/sandbox','postMessage','\x20Overlay\x20controller\x20initialized\x20and\x20cached','init','title','\x20enableViteHmr:\x20','1419776gyxLpo','MIT','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','\x20init()\x20called\x20at\x20','\x20init()\x20complete\x20-\x20enhancement\x20mode','enhance','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','active','controller','error','__vite_plugin_react_preamble_installed__','\x20registerServiceWorker()\x20called','string','scriptURL','undefined','\x20Overlay\x20origin:\x20','injectIntoGlobalHook','\x20Found\x20registration:','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','installing','\x20Importing\x20overlay\x20module\x20from:\x20','\x20state.enabled:\x20','unregister','\x20Controller\x20created:','keys','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','reload','has','disable','\x20Normalized\x20options:','public','info','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','warn','module','\x20Sending\x20customer\x20config\x20to\x20SW:','\x20Calling\x20updateOverlay()...','\x20Setting\x20up\x20remote\x20HMR...','\x20Current\x20controller\x20after\x20ready:','toLowerCase','href','__viteHMRLoaded','includes','[data-enhance-runtime-bootstrap]','position','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup'];_0x2ef9=function(){return _0x5b8021;};return _0x2ef9();}async function ensureReactRefreshPreamble(_0x53e6a3){const _0x8a3e9d=_0x5a90d8;window[_0x8a3e9d(0x210)]??(window[_0x8a3e9d(0x210)]=new Set());if(window[_0x8a3e9d(0x210)][_0x8a3e9d(0x18b)](_0x53e6a3)){console[_0x8a3e9d(0x212)](LOG_PREFIX+_0x8a3e9d(0x1e2)+_0x53e6a3);return;}console['log'](LOG_PREFIX+'\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20'+_0x53e6a3+_0x8a3e9d(0x1cc));const _0x20c2de=await import(_0x53e6a3+_0x8a3e9d(0x1c8)),_0x352dcb=_0x20c2de&&typeof _0x20c2de===_0x8a3e9d(0x1c4)&&_0x8a3e9d(0x1e6)in _0x20c2de?_0x20c2de[_0x8a3e9d(0x1e6)]:_0x20c2de;if(!isRefreshRuntime(_0x352dcb)){console['warn'](LOG_PREFIX+_0x8a3e9d(0x207));return;}_0x352dcb[_0x8a3e9d(0x17f)](window),window[_0x8a3e9d(0x232)]=()=>{},window['$RefreshSig$']=()=>_0x1bedcd=>_0x1bedcd,window[_0x8a3e9d(0x179)]=!![],window[_0x8a3e9d(0x210)][_0x8a3e9d(0x1d3)](_0x53e6a3),console[_0x8a3e9d(0x212)](LOG_PREFIX+_0x8a3e9d(0x1a2)+_0x53e6a3);}async function ensureViteClient(_0x170348){const _0x40b467=_0x5a90d8;window[_0x40b467(0x199)]??(window['__viteHMRLoaded']=new Set());if(window[_0x40b467(0x199)][_0x40b467(0x18b)](_0x170348)){console['log'](LOG_PREFIX+_0x40b467(0x213)+_0x170348);return;}console['log'](LOG_PREFIX+'\x20Loading\x20Vite\x20HMR\x20client\x20from\x20'+_0x170348+_0x40b467(0x1cc)),await import(_0x170348+_0x40b467(0x241)),window[_0x40b467(0x199)]['add'](_0x170348),console[_0x40b467(0x212)](LOG_PREFIX+'\x20Vite\x20HMR\x20client\x20loaded\x20for\x20'+_0x170348);}function isRefreshRuntime(_0x231478){const _0x533a5b=_0x5a90d8;return typeof _0x231478===_0x533a5b(0x1c4)&&_0x231478!==null&&_0x533a5b(0x17f)in _0x231478&&typeof _0x231478['injectIntoGlobalHook']===_0x533a5b(0x1b6);}var WORKER_MESSAGE_CONFIG=_0x5a90d8(0x1ea),WORKER_MESSAGE_DISABLE=_0x5a90d8(0x1ac),LOG_PREFIX2='[Enhance\x20SW-Client]',registration=null,currentOptions2=null;async function registerServiceWorker(_0x1e6005){const _0x426cdf=_0x5a90d8;console['log'](LOG_PREFIX2+_0x426cdf(0x17a)),console[_0x426cdf(0x212)](LOG_PREFIX2+'\x20swPath:\x20'+_0x1e6005[_0x426cdf(0x22d)]);if(!(_0x426cdf(0x208)in navigator)){console[_0x426cdf(0x191)](LOG_PREFIX2+'\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser');return;}console[_0x426cdf(0x212)](LOG_PREFIX2+'\x20Service\x20workers\x20supported');const _0x5d2f22=navigator[_0x426cdf(0x208)][_0x426cdf(0x177)];console[_0x426cdf(0x212)](LOG_PREFIX2+'\x20Current\x20controller:',_0x5d2f22?.[_0x426cdf(0x17c)]??_0x426cdf(0x238)),console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x1c3),_0x5d2f22?.[_0x426cdf(0x1e9)]??'N/A');const _0x42b306=!!_0x5d2f22;currentOptions2=_0x1e6005,console[_0x426cdf(0x212)](LOG_PREFIX2+'\x20Checking\x20for\x20blocking\x20service\x20worker...');const _0x597a1d=await detectBlockingServiceWorker(_0x1e6005[_0x426cdf(0x22d)]);if(_0x597a1d){console[_0x426cdf(0x178)](LOG_PREFIX2+_0x426cdf(0x22a)+_0x597a1d),console[_0x426cdf(0x178)](LOG_PREFIX2+'\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered');return;}console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x23b));try{console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x1a5)+_0x1e6005[_0x426cdf(0x22d)]+_0x426cdf(0x1b2)),registration=await navigator['serviceWorker'][_0x426cdf(0x1ec)](_0x1e6005[_0x426cdf(0x22d)],{'scope':'/'}),console['log'](LOG_PREFIX2+'\x20Registration\x20returned:',{'scope':registration[_0x426cdf(0x1cf)],'active':registration[_0x426cdf(0x176)]?.[_0x426cdf(0x17c)],'waiting':registration[_0x426cdf(0x200)]?.[_0x426cdf(0x17c)],'installing':registration['installing']?.[_0x426cdf(0x17c)]}),console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x221));const _0x367077=await navigator['serviceWorker']['ready'];console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x239),_0x367077['active']?.[_0x426cdf(0x17c)]);const _0x355182=ownsCurrentController(_0x1e6005[_0x426cdf(0x22d)]);state['controlled']=_0x355182,console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x181)+_0x355182),console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x196),navigator[_0x426cdf(0x208)][_0x426cdf(0x177)]?.[_0x426cdf(0x17c)]??'none');if(!_0x42b306&&!navigator['serviceWorker']['controller']){console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x175)),window['location'][_0x426cdf(0x18a)]();return;}console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x1bb)),await sendConfiguration();if(state[_0x426cdf(0x228)]){const _0x23cbcf=document[_0x426cdf(0x1a9)](_0x426cdf(0x19b))!==null;console['log'](LOG_PREFIX2+'\x20Enhancement\x20detection:\x20wasEnhanced='+_0x23cbcf);if(!_0x23cbcf){console[_0x426cdf(0x212)](LOG_PREFIX2+'\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement'),window[_0x426cdf(0x1e1)][_0x426cdf(0x18a)]();return;}}console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x224)),updateOverlay(),console[_0x426cdf(0x212)](LOG_PREFIX2+_0x426cdf(0x1b7));}catch(_0x3193eb){console[_0x426cdf(0x178)](LOG_PREFIX2+_0x426cdf(0x1b8),_0x3193eb);}}async function sendConfiguration(){const _0x5db4f1=_0x5a90d8;console[_0x5db4f1(0x212)](LOG_PREFIX2+_0x5db4f1(0x1f0)),console[_0x5db4f1(0x212)](LOG_PREFIX2+_0x5db4f1(0x185)+state[_0x5db4f1(0x228)]+_0x5db4f1(0x21b)+!!currentOptions2);if(!state[_0x5db4f1(0x228)]||!currentOptions2){console[_0x5db4f1(0x212)](LOG_PREFIX2+_0x5db4f1(0x1a4));return;}const _0x225044=await resolveWorker();if(!_0x225044){console[_0x5db4f1(0x191)](LOG_PREFIX2+'\x20No\x20service\x20worker\x20active\x20to\x20configure');return;}const _0x4c29cf={'callbackBypass':currentOptions2['callbackBypass'],'securityMode':currentOptions2[_0x5db4f1(0x1fd)]};console[_0x5db4f1(0x212)](LOG_PREFIX2+_0x5db4f1(0x193),JSON[_0x5db4f1(0x1b3)](_0x4c29cf,null,0x2)),_0x225044['postMessage']({'type':WORKER_MESSAGE_CONFIG,'config':_0x4c29cf}),console['log'](LOG_PREFIX2+'\x20Config\x20sent\x20to\x20SW');}async function unregisterServiceWorker(_0x362afb){const _0x2b83d9=_0x5a90d8;console['log'](LOG_PREFIX2+'\x20unregisterServiceWorker()\x20called');if(!(_0x2b83d9(0x208)in navigator)){console[_0x2b83d9(0x212)](LOG_PREFIX2+_0x2b83d9(0x171));return;}try{const _0x2683e1=registration??await navigator[_0x2b83d9(0x208)]['getRegistration']('/');if(!_0x2683e1){console[_0x2b83d9(0x212)](LOG_PREFIX2+_0x2b83d9(0x1d8));return;}console[_0x2b83d9(0x212)](LOG_PREFIX2+_0x2b83d9(0x180),{'scope':_0x2683e1[_0x2b83d9(0x1cf)],'active':_0x2683e1[_0x2b83d9(0x176)]?.[_0x2b83d9(0x17c)],'waiting':_0x2683e1['waiting']?.[_0x2b83d9(0x17c)],'installing':_0x2683e1[_0x2b83d9(0x183)]?.['scriptURL']});const _0x42e046=[_0x2683e1[_0x2b83d9(0x176)]?.[_0x2b83d9(0x17c)],_0x2683e1[_0x2b83d9(0x200)]?.[_0x2b83d9(0x17c)],_0x2683e1['installing']?.['scriptURL']],_0x3d8bec=_0x42e046['some'](_0x2183ef=>_0x2183ef&&ownsServiceWorker(_0x2183ef,_0x362afb));if(!_0x3d8bec){console['log'](LOG_PREFIX2+_0x2b83d9(0x222));return;}_0x2683e1[_0x2b83d9(0x176)]&&(console[_0x2b83d9(0x212)](LOG_PREFIX2+_0x2b83d9(0x189)),_0x2683e1['active'][_0x2b83d9(0x16a)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x2b83d9(0x212)](LOG_PREFIX2+_0x2b83d9(0x21f)),await _0x2683e1[_0x2b83d9(0x186)](),registration=null,currentOptions2=null,console[_0x2b83d9(0x212)](LOG_PREFIX2+'\x20SW\x20unregistered\x20successfully');}catch(_0xba90ea){console[_0x2b83d9(0x178)](LOG_PREFIX2+_0x2b83d9(0x1f4),_0xba90ea);}}function ownsServiceWorker(_0x23f1e8,_0x58b882){const _0x51369c=_0x5a90d8,_0x3ac37b=typeof window!==_0x51369c(0x17d)?window[_0x51369c(0x1e1)]['origin']:'',_0x293dfe=new URL(_0x58b882,_0x3ac37b||void 0x0)[_0x51369c(0x198)],_0x368056=_0x23f1e8===_0x293dfe||_0x23f1e8[_0x51369c(0x19a)](_0x51369c(0x1aa));return console[_0x51369c(0x212)](LOG_PREFIX2+'\x20ownsServiceWorker?\x20scriptURL='+_0x23f1e8+_0x51369c(0x202)+_0x293dfe+_0x51369c(0x1bf)+_0x368056),_0x368056;}function ownsCurrentController(_0x5c8438){const _0x473dc8=_0x5a90d8;if(typeof navigator===_0x473dc8(0x17d))return![];const _0x254c02=navigator[_0x473dc8(0x208)]?.[_0x473dc8(0x177)];if(!_0x254c02)return console[_0x473dc8(0x212)](LOG_PREFIX2+_0x473dc8(0x216)),![];return ownsServiceWorker(_0x254c02[_0x473dc8(0x17c)],_0x5c8438);}async function detectBlockingServiceWorker(_0x4198c3){const _0x2ed264=_0x5a90d8;if(!navigator['serviceWorker'])return null;try{const _0x3d1563=await navigator[_0x2ed264(0x208)][_0x2ed264(0x23d)]('/');console[_0x2ed264(0x212)](LOG_PREFIX2+_0x2ed264(0x218),_0x3d1563?.['active']?.[_0x2ed264(0x17c)]??'none');const _0x31c4d8=_0x3d1563?.['active']?.[_0x2ed264(0x17c)];if(!_0x31c4d8)return null;if(ownsServiceWorker(_0x31c4d8,_0x4198c3))return null;return _0x31c4d8;}catch(_0x361ba5){return console[_0x2ed264(0x178)](LOG_PREFIX2+_0x2ed264(0x1f8),_0x361ba5),null;}}async function resolveWorker(){const _0xe72a0=_0x5a90d8,_0x491127=registration??await navigator[_0xe72a0(0x208)]?.['getRegistration']('/'),_0x56da92=_0x491127?.[_0xe72a0(0x176)]??_0x491127?.[_0xe72a0(0x200)]??_0x491127?.['installing']??null;return console[_0xe72a0(0x212)](LOG_PREFIX2+_0xe72a0(0x1cd),_0x56da92?.[_0xe72a0(0x17c)]??'none',_0xe72a0(0x1d1)+(_0x56da92?.['state']??'N/A')),_0x56da92;}var LOG_PREFIX3=_0x5a90d8(0x1f6);function isInitialized(){const _0x1857b4=_0x5a90d8;return typeof window!==_0x1857b4(0x17d)&&window[_0x1857b4(0x21e)]===!![];}function setInitialized(_0x4d7371){const _0x2b4014=_0x5a90d8;typeof window!==_0x2b4014(0x17d)&&(window[_0x2b4014(0x21e)]=_0x4d7371);}function getOptions(){const _0x2d978e=_0x5a90d8;return typeof window!=='undefined'?window[_0x2d978e(0x20c)]??null:null;}function setOptions(_0x2d8342){const _0x2355b0=_0x5a90d8;typeof window!==_0x2355b0(0x17d)&&(window[_0x2355b0(0x20c)]=_0x2d8342);}var Enhance={'init'(_0x3b4107={}){const _0x30f91e=_0x5a90d8,_0x434f35=Date[_0x30f91e(0x215)]();console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x172)+_0x434f35),console['log'](LOG_PREFIX3+_0x30f91e(0x23e)+window['location']['href']),console[_0x30f91e(0x212)](LOG_PREFIX3+'\x20Document\x20readyState:\x20'+document['readyState']),console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x1d9),JSON[_0x30f91e(0x1b3)](_0x3b4107,null,0x2));if(isInitialized())return console['warn'](LOG_PREFIX3+_0x30f91e(0x225)),window['__enhanceController']??createController();setInitialized(!![]),console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x1ce));const _0x5caa5b=normalizeOptions(_0x3b4107);setOptions(_0x5caa5b),console['log'](LOG_PREFIX3+_0x30f91e(0x18d),JSON[_0x30f91e(0x1b3)](_0x5caa5b,null,0x2));const _0x4a1620=parseUrlParams();console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x20d),JSON['stringify'](_0x4a1620,null,0x2));if(_0x4a1620[_0x30f91e(0x1a6)])return cleanUrlParam(_0x30f91e(0x174)),console[_0x30f91e(0x212)](LOG_PREFIX3+'\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting'),createController();if(_0x4a1620['hasEnhancement'])return console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x1f7)),console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x1fa)+_0x4a1620[_0x30f91e(0x1a1)]),console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x1de)+_0x4a1620[_0x30f91e(0x20a)]),state[_0x30f91e(0x228)]=!![],console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x1c6)),void loadOverlay({'overlayPath':_0x5caa5b[_0x30f91e(0x22c)],'enableViteHmr':_0x5caa5b[_0x30f91e(0x1ab)][_0x30f91e(0x1a8)],'options':_0x5caa5b,'onToggle':handleToggle}),console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x242)),void registerServiceWorker(_0x5caa5b),console['log'](LOG_PREFIX3+_0x30f91e(0x173)),createController();return console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x1eb)),console[_0x30f91e(0x212)](LOG_PREFIX3+_0x30f91e(0x21d)),void unregisterServiceWorker(_0x5caa5b[_0x30f91e(0x22d)]),console['log'](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20normal\x20mode'),import.meta.hot&&(console[_0x30f91e(0x212)](LOG_PREFIX3+'\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners'),import.meta.hot['on'](_0x30f91e(0x1e7),_0x357e76=>{const _0x5a38d6=_0x30f91e;console['log'](LOG_PREFIX3+_0x5a38d6(0x1fc),_0x357e76),state[_0x5a38d6(0x1d5)]={'message':_0x357e76['err'][_0x5a38d6(0x23a)]},updateOverlay();}),import.meta.hot['on'](_0x30f91e(0x235),()=>{const _0x5c6b0f=_0x30f91e;state[_0x5c6b0f(0x1d5)]&&(console[_0x5c6b0f(0x212)](LOG_PREFIX3+_0x5c6b0f(0x1ff)),state[_0x5c6b0f(0x1d5)]=null,updateOverlay());})),createController();}};function createController(){const _0x471cdf=_0x5a90d8,_0x18289c={'enable'(){const _0x3f0e30=_0x42a9,_0xd7be1b=getOptions();if(!_0xd7be1b)return;state[_0x3f0e30(0x228)]=!![],void loadOverlay({'overlayPath':_0xd7be1b[_0x3f0e30(0x22c)],'enableViteHmr':_0xd7be1b['overlay'][_0x3f0e30(0x1a8)],'options':_0xd7be1b,'onToggle':handleToggle}),void registerServiceWorker(_0xd7be1b),void sendConfiguration(),updateOverlay();},'disable'(){const _0x33655d=_0x42a9,_0x13e8ec=getOptions();if(!_0x13e8ec)return;state[_0x33655d(0x228)]=![],state[_0x33655d(0x1cb)]=![],updateOverlay(),void unregisterServiceWorker(_0x13e8ec['swPath']);},'status'(){const _0x458645=_0x42a9;return{'enabled':state['enabled'],'controlled':state[_0x458645(0x1cb)]};}};return typeof window!=='undefined'&&(window[_0x471cdf(0x1da)]=_0x18289c),_0x18289c;}function handleToggle(){const _0x1f6576=_0x5a90d8,_0x256b06=createController();state['enabled']?_0x256b06[_0x1f6576(0x18c)]():_0x256b06[_0x1f6576(0x1a3)]();}function parseUrlParams(){const _0x4a693b=_0x5a90d8,_0x260925=new URL(window[_0x4a693b(0x1e1)][_0x4a693b(0x198)]),_0xaec275=_0x260925[_0x4a693b(0x1b0)][_0x4a693b(0x23f)]('enhance')?.[_0x4a693b(0x197)](),_0x5cba72=_0x260925['searchParams'][_0x4a693b(0x23f)]('enhancementUrl'),_0x4aa349=_0x260925[_0x4a693b(0x1b0)]['get']('enhancement');return{'hasEnhancement':Boolean(_0x5cba72||_0x4aa349),'explicitDisable':_0xaec275==='0'||_0xaec275===_0x4a693b(0x1a7)||_0xaec275===_0x4a693b(0x236),'enhancementUrl':_0x5cba72,'enhancementId':_0x4aa349};}function cleanUrlParam(_0x15193b){const _0x427935=_0x5a90d8,_0x39db4b=new URL(window[_0x427935(0x1e1)][_0x427935(0x198)]);_0x39db4b[_0x427935(0x1b0)][_0x427935(0x18b)](_0x15193b)&&(_0x39db4b[_0x427935(0x1b0)]['delete'](_0x15193b),window[_0x427935(0x237)][_0x427935(0x1af)](null,document[_0x427935(0x16d)],_0x39db4b[_0x427935(0x220)]()));}var package_default={'name':_0x5a90d8(0x246),'version':'0.3.20','type':_0x5a90d8(0x192),'description':_0x5a90d8(0x182),'license':_0x5a90d8(0x170),'main':'./dev/index.js','module':'./dev/index.js','types':_0x5a90d8(0x20b),'exports':{'.':{'types':_0x5a90d8(0x20b),'import':_0x5a90d8(0x1d0)},'./vite':{'types':_0x5a90d8(0x209),'import':'./dev/vite/index.js'}},'files':[_0x5a90d8(0x1bc)],'bin':{'enhance-sandbox':_0x5a90d8(0x1b9)},'scripts':{'typecheck':_0x5a90d8(0x1f9),'dev':_0x5a90d8(0x1d7),'dev:build':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','dev:staging':_0x5a90d8(0x1bd),'dev:staging:build':_0x5a90d8(0x1ed),'build':_0x5a90d8(0x19f),'build:release':_0x5a90d8(0x190),'version':_0x5a90d8(0x1c7)},'dependencies':{'commander':_0x5a90d8(0x21c),'zod':_0x5a90d8(0x1d2)},'devDependencies':{'@types/node':'^24.10.1','javascript-obfuscator':_0x5a90d8(0x21a),'tsup':_0x5a90d8(0x211),'vite':_0x5a90d8(0x227)},'publishConfig':{'access':_0x5a90d8(0x18e)}},DEFAULT_SERVICE_WORKER_PATH=_0x5a90d8(0x1f3),DEFAULT_RUNTIME_PATH='/assets/enhance-runtime.js',PACKAGE_VERSION=typeof package_default[_0x5a90d8(0x1e4)]===_0x5a90d8(0x17b)?package_default[_0x5a90d8(0x1e4)]:_0x5a90d8(0x1b1);function normalizeAssetPath(_0x79e9c1){const _0x2d214c=_0x5a90d8;if(!_0x79e9c1)return _0x79e9c1;if(_0x79e9c1[_0x2d214c(0x1a0)]('http://')||_0x79e9c1['startsWith'](_0x2d214c(0x231)))return _0x79e9c1;const _0x45c60d=_0x79e9c1[_0x2d214c(0x201)](/^\.\//,'');return _0x45c60d['startsWith']('/')?_0x45c60d:'/'+_0x45c60d;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x6724ab){const _0x1447b8=_0x5a90d8;return Enhance[_0x1447b8(0x16c)](_0x6724ab);},'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 _0x5e79fd=_0x5a90d8;return Enhance2[_0x5e79fd(0x245)]();}function runtimeURL(){const _0x2276b0=_0x5a90d8;return Enhance2[_0x2276b0(0x1be)]();}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 _0x4dd8b6=_0x2163;(function(_0x1767de,_0x398ead){const _0x3774a5=_0x2163,_0x4a7c9f=_0x1767de();while(!![]){try{const _0xbb3341=parseInt(_0x3774a5(0x217))/0x1+-parseInt(_0x3774a5(0x1e2))/0x2*(-parseInt(_0x3774a5(0x20f))/0x3)+-parseInt(_0x3774a5(0x1ee))/0x4*(parseInt(_0x3774a5(0x28a))/0x5)+parseInt(_0x3774a5(0x285))/0x6+-parseInt(_0x3774a5(0x267))/0x7*(parseInt(_0x3774a5(0x1ff))/0x8)+parseInt(_0x3774a5(0x264))/0x9+parseInt(_0x3774a5(0x22c))/0xa*(-parseInt(_0x3774a5(0x1de))/0xb);if(_0xbb3341===_0x398ead)break;else _0x4a7c9f['push'](_0x4a7c9f['shift']());}catch(_0x79f4f0){_0x4a7c9f['push'](_0x4a7c9f['shift']());}}}(_0x4232,0x468b5));import{Command}from'commander';import{resolve,relative}from'path';var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!==_0x4dd8b6(0x29a)?__ENHANCE_DEFAULT_OVERLAY_PATH__:_0x4dd8b6(0x1bd),DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!==_0x4dd8b6(0x29a)?__ENHANCE_DEFAULT_BACKEND_URL__:'https://api.enhancelabs.ai',DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!==_0x4dd8b6(0x29a)?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console[_0x4dd8b6(0x1cf)](_0x4dd8b6(0x1f5),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x11e6be){const _0xa97834=_0x4dd8b6,_0x3e3a01=_0x11e6be[_0xa97834(0x297)]??{};return{'callbackBypass':_0x11e6be['callbackBypass'],'overlay':{'enabled':!![],'position':_0xa97834(0x24f),'enableViteHmr':_0x3e3a01['enableOverlayHmr']??DEFAULT_OVERLAY_HMR},'logLevel':_0xa97834(0x26e),'swPath':_0xa97834(0x2a1),'overlayPath':_0x3e3a01[_0xa97834(0x278)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0xa97834(0x1dd),'security':_0x3e3a01[_0xa97834(0x2ae)]??_0xa97834(0x20c),'backendUrl':_0x3e3a01[_0xa97834(0x21c)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x1a1a66=_0x4dd8b6;try{const _0x4525a9=new URLSearchParams(window['location']['search']);return _0x4525a9[_0x1a1a66(0x25c)](_0x1a1a66(0x1d9))?.[_0x1a1a66(0x1c5)]()||'';}catch{return'';}}var LOG_PREFIX='[Enhance\x20Overlay]',overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x590aa7){const _0x5b2c03=_0x4dd8b6;console[_0x5b2c03(0x1cf)](LOG_PREFIX+_0x5b2c03(0x2aa)),console['log'](LOG_PREFIX+_0x5b2c03(0x2ac)+_0x590aa7[_0x5b2c03(0x278)]),console['log'](LOG_PREFIX+_0x5b2c03(0x24e)+_0x590aa7[_0x5b2c03(0x21b)]),currentOptions=_0x590aa7[_0x5b2c03(0x200)],toggleHandler=_0x590aa7['onToggle'];if(overlayController){console['log'](LOG_PREFIX+'\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay'),updateOverlay();return;}if(overlayLoadPromise)return console[_0x5b2c03(0x1cf)](LOG_PREFIX+_0x5b2c03(0x255)),overlayLoadPromise;console['log'](LOG_PREFIX+'\x20Starting\x20fresh\x20overlay\x20load...'),overlayLoadPromise=doLoadOverlay(_0x590aa7);try{await overlayLoadPromise,console[_0x5b2c03(0x1cf)](LOG_PREFIX+_0x5b2c03(0x257));}catch(_0x2eceaa){console[_0x5b2c03(0x2a8)](LOG_PREFIX+_0x5b2c03(0x219),_0x2eceaa);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x59bbbe){const _0x56a88a=_0x4dd8b6;console[_0x56a88a(0x1cf)](LOG_PREFIX+'\x20doLoadOverlay()\x20starting...');if(typeof window===_0x56a88a(0x29a)){console[_0x56a88a(0x1cf)](LOG_PREFIX+_0x56a88a(0x1c3));return;}if(window[_0x56a88a(0x276)]){console['log'](LOG_PREFIX+_0x56a88a(0x239)),overlayController=window['__enhanceOverlay'],updateOverlay();return;}console[_0x56a88a(0x1cf)](LOG_PREFIX+_0x56a88a(0x27a));try{_0x59bbbe[_0x56a88a(0x21b)]&&(console['log'](LOG_PREFIX+_0x56a88a(0x266)),await setupRemoteHMR(_0x59bbbe[_0x56a88a(0x278)]));console['log'](LOG_PREFIX+_0x56a88a(0x26d)+_0x59bbbe[_0x56a88a(0x278)]);const _0x2dc25a=Date['now'](),_0x31d50f=await import(_0x59bbbe['overlayPath']);console[_0x56a88a(0x1cf)](LOG_PREFIX+_0x56a88a(0x2b4)+(Date['now']()-_0x2dc25a)+'ms'),console[_0x56a88a(0x1cf)](LOG_PREFIX+'\x20Module\x20exports:',Object['keys'](_0x31d50f));if(typeof _0x31d50f?.[_0x56a88a(0x293)]!=='function'){console[_0x56a88a(0x2a8)](LOG_PREFIX+_0x56a88a(0x265)),console[_0x56a88a(0x2a8)](LOG_PREFIX+_0x56a88a(0x243),Object[_0x56a88a(0x23d)](_0x31d50f));return;}console[_0x56a88a(0x1cf)](LOG_PREFIX+_0x56a88a(0x29c));const _0x570bcf=_0x31d50f[_0x56a88a(0x293)]();console[_0x56a88a(0x1cf)](LOG_PREFIX+'\x20Controller\x20created:',_0x570bcf),overlayController=_0x570bcf,window[_0x56a88a(0x276)]=_0x570bcf,_0x570bcf[_0x56a88a(0x24d)](_0x59bbbe[_0x56a88a(0x24d)]),console['log'](LOG_PREFIX+_0x56a88a(0x272)),console['log'](LOG_PREFIX+_0x56a88a(0x1e5)),updateOverlay();}catch(_0x37e246){console[_0x56a88a(0x2a8)](LOG_PREFIX+_0x56a88a(0x241),_0x37e246);}}function updateOverlay(){const _0x165684=_0x4dd8b6;console[_0x165684(0x1cf)](LOG_PREFIX+'\x20updateOverlay()\x20called'),console[_0x165684(0x1cf)](LOG_PREFIX+'\x20overlayController\x20exists:\x20'+!!overlayController),console[_0x165684(0x1cf)](LOG_PREFIX+_0x165684(0x288)+!!currentOptions);if(!overlayController||!currentOptions){console['log'](LOG_PREFIX+'\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update');return;}const _0x30c389=composeOverlayState(currentOptions);console[_0x165684(0x1cf)](LOG_PREFIX+_0x165684(0x245),JSON['stringify'](_0x30c389,null,0x2)),overlayController['update'](_0x30c389),console[_0x165684(0x1cf)](LOG_PREFIX+_0x165684(0x1e9));}function composeOverlayState(_0x39d7d3){const _0x3c1456=_0x4dd8b6,_0x537a38=getEnhancementUrl();return console[_0x3c1456(0x1cf)](LOG_PREFIX+_0x3c1456(0x1d6)+_0x537a38),console[_0x3c1456(0x1cf)](LOG_PREFIX+_0x3c1456(0x287)+state[_0x3c1456(0x23a)]),console[_0x3c1456(0x1cf)](LOG_PREFIX+_0x3c1456(0x25a)+state[_0x3c1456(0x22a)]),{'enhancementUrl':_0x537a38,'enabled':state['enabled'],'controlled':state[_0x3c1456(0x22a)],'overlayPosition':_0x39d7d3[_0x3c1456(0x1ef)][_0x3c1456(0x28e)],'securityMode':_0x39d7d3[_0x3c1456(0x2ae)],'backendBaseUrl':_0x39d7d3[_0x3c1456(0x21c)],'appError':state[_0x3c1456(0x27b)]};}async function setupRemoteHMR(_0x197cac){const _0x2ab816=_0x4dd8b6;console[_0x2ab816(0x1cf)](LOG_PREFIX+_0x2ab816(0x2af)+_0x197cac);if(typeof window==='undefined')return;try{const _0x5dc883=new URL(_0x197cac,window['location'][_0x2ab816(0x202)]),_0x25229a=_0x5dc883[_0x2ab816(0x202)];console[_0x2ab816(0x1cf)](LOG_PREFIX+_0x2ab816(0x231)+_0x25229a+_0x2ab816(0x1ba)+window[_0x2ab816(0x29f)][_0x2ab816(0x202)]);if(_0x25229a===window[_0x2ab816(0x29f)][_0x2ab816(0x202)]){console['log'](LOG_PREFIX+'\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup');return;}console[_0x2ab816(0x1cf)](LOG_PREFIX+_0x2ab816(0x269)),await ensureReactRefreshPreamble(_0x25229a),await ensureViteClient(_0x25229a),console[_0x2ab816(0x1cf)](LOG_PREFIX+_0x2ab816(0x1f0));}catch(_0x2f1f9e){console[_0x2ab816(0x1e6)](LOG_PREFIX+_0x2ab816(0x282),_0x2f1f9e);}}async function ensureReactRefreshPreamble(_0x31d977){const _0x15edbc=_0x4dd8b6;window[_0x15edbc(0x20e)]??=new Set();if(window['__enhanceReactRefreshInstalledOrigins'][_0x15edbc(0x208)](_0x31d977)){console['log'](LOG_PREFIX+_0x15edbc(0x27d)+_0x31d977);return;}console[_0x15edbc(0x1cf)](LOG_PREFIX+'\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20'+_0x31d977+_0x15edbc(0x226));const _0xdf1a64=await import(_0x31d977+_0x15edbc(0x242)),_0x1e0ff4=_0xdf1a64&&typeof _0xdf1a64===_0x15edbc(0x1f3)&&'default'in _0xdf1a64?_0xdf1a64[_0x15edbc(0x1d2)]:_0xdf1a64;if(!isRefreshRuntime(_0x1e0ff4)){console[_0x15edbc(0x1e6)](LOG_PREFIX+_0x15edbc(0x228));return;}_0x1e0ff4[_0x15edbc(0x289)](window),window[_0x15edbc(0x1c1)]=()=>{},window[_0x15edbc(0x1ce)]=()=>_0x508ede=>_0x508ede,window[_0x15edbc(0x230)]=!![],window[_0x15edbc(0x20e)][_0x15edbc(0x27e)](_0x31d977),console[_0x15edbc(0x1cf)](LOG_PREFIX+'\x20React\x20Refresh\x20runtime\x20installed\x20for\x20'+_0x31d977);}async function ensureViteClient(_0x376050){const _0x3a6b97=_0x4dd8b6;window['__viteHMRLoaded']??=new Set();if(window[_0x3a6b97(0x233)][_0x3a6b97(0x208)](_0x376050)){console[_0x3a6b97(0x1cf)](LOG_PREFIX+_0x3a6b97(0x2a5)+_0x376050);return;}console[_0x3a6b97(0x1cf)](LOG_PREFIX+_0x3a6b97(0x253)+_0x376050+_0x3a6b97(0x226)),await import(_0x376050+'/@vite/client'),window[_0x3a6b97(0x233)][_0x3a6b97(0x27e)](_0x376050),console['log'](LOG_PREFIX+_0x3a6b97(0x271)+_0x376050);}function isRefreshRuntime(_0x4cd40d){const _0x104383=_0x4dd8b6;return typeof _0x4cd40d==='object'&&_0x4cd40d!==null&&_0x104383(0x289)in _0x4cd40d&&typeof _0x4cd40d['injectIntoGlobalHook']===_0x104383(0x25e);}var WORKER_MESSAGE_CONFIG=_0x4dd8b6(0x280),WORKER_MESSAGE_DISABLE=_0x4dd8b6(0x1be),LOG_PREFIX2=_0x4dd8b6(0x2a0),registration=null,currentOptions2=null;async function registerServiceWorker(_0x23b076){const _0x396e5d=_0x4dd8b6;console[_0x396e5d(0x1cf)](LOG_PREFIX2+'\x20registerServiceWorker()\x20called'),console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x1c6)+_0x23b076[_0x396e5d(0x244)]);if(!(_0x396e5d(0x1e3)in navigator)){console[_0x396e5d(0x1e6)](LOG_PREFIX2+_0x396e5d(0x1c8));return;}console['log'](LOG_PREFIX2+'\x20Service\x20workers\x20supported');const _0x49858f=navigator[_0x396e5d(0x1e3)]['controller'];console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x1d4),_0x49858f?.[_0x396e5d(0x29e)]??_0x396e5d(0x283)),console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x290),_0x49858f?.[_0x396e5d(0x22e)]??'N/A');const _0x141823=!!_0x49858f;currentOptions2=_0x23b076,console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x22f));const _0x187954=await detectBlockingServiceWorker(_0x23b076['swPath']);if(_0x187954){console[_0x396e5d(0x2a8)](LOG_PREFIX2+'\x20BLOCKING\x20SW\x20detected:\x20'+_0x187954),console[_0x396e5d(0x2a8)](LOG_PREFIX2+_0x396e5d(0x1fc));return;}console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x20d));try{console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x229)+_0x23b076[_0x396e5d(0x244)]+_0x396e5d(0x207)),registration=await navigator[_0x396e5d(0x1e3)][_0x396e5d(0x1f4)](_0x23b076[_0x396e5d(0x244)],{'scope':'/'}),console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x1f2),{'scope':registration[_0x396e5d(0x1c9)],'active':registration[_0x396e5d(0x25d)]?.[_0x396e5d(0x29e)],'waiting':registration[_0x396e5d(0x2a3)]?.[_0x396e5d(0x29e)],'installing':registration[_0x396e5d(0x2ad)]?.['scriptURL']}),console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x20b));const _0x382379=await navigator[_0x396e5d(0x1e3)]['ready'];console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x246),_0x382379[_0x396e5d(0x25d)]?.[_0x396e5d(0x29e)]);const _0x9df082=ownsCurrentController(_0x23b076[_0x396e5d(0x244)]);state[_0x396e5d(0x22a)]=_0x9df082,console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x270)+_0x9df082),console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x235),navigator['serviceWorker'][_0x396e5d(0x284)]?.[_0x396e5d(0x29e)]??_0x396e5d(0x283));if(!_0x141823&&!navigator[_0x396e5d(0x1e3)][_0x396e5d(0x284)]){console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x22b)),window[_0x396e5d(0x29f)][_0x396e5d(0x1f8)]();return;}console['log'](LOG_PREFIX2+'\x20Sending\x20customer\x20configuration...'),await sendConfiguration();if(state['enabled']){const _0x1d0f48=document['querySelector']('[data-enhance-runtime-bootstrap]')!==null;console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x204)+_0x1d0f48);if(!_0x1d0f48){console['log'](LOG_PREFIX2+_0x396e5d(0x213)),window[_0x396e5d(0x29f)][_0x396e5d(0x1f8)]();return;}}console['log'](LOG_PREFIX2+_0x396e5d(0x238)),updateOverlay(),console[_0x396e5d(0x1cf)](LOG_PREFIX2+_0x396e5d(0x1bb));}catch(_0x293e4e){console[_0x396e5d(0x2a8)](LOG_PREFIX2+'\x20Failed\x20to\x20register\x20service\x20worker:',_0x293e4e);}}async function sendConfiguration(){const _0x7551b2=_0x4dd8b6;console[_0x7551b2(0x1cf)](LOG_PREFIX2+_0x7551b2(0x236)),console[_0x7551b2(0x1cf)](LOG_PREFIX2+_0x7551b2(0x250)+state['enabled']+',\x20currentOptions:\x20'+!!currentOptions2);if(!state[_0x7551b2(0x23a)]||!currentOptions2){console[_0x7551b2(0x1cf)](LOG_PREFIX2+_0x7551b2(0x25f));return;}const _0x586c7b=await resolveWorker();if(!_0x586c7b){console[_0x7551b2(0x1e6)](LOG_PREFIX2+'\x20No\x20service\x20worker\x20active\x20to\x20configure');return;}const _0x4a3c9e={'callbackBypass':currentOptions2['callbackBypass'],'securityMode':currentOptions2[_0x7551b2(0x2ae)]};console[_0x7551b2(0x1cf)](LOG_PREFIX2+_0x7551b2(0x1c0),JSON[_0x7551b2(0x248)](_0x4a3c9e,null,0x2)),_0x586c7b[_0x7551b2(0x206)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x4a3c9e}),console[_0x7551b2(0x1cf)](LOG_PREFIX2+_0x7551b2(0x1f9));}async function unregisterServiceWorker(_0x1c948d){const _0x2c1a10=_0x4dd8b6;console[_0x2c1a10(0x1cf)](LOG_PREFIX2+_0x2c1a10(0x2a7));if(!('serviceWorker'in navigator)){console['log'](LOG_PREFIX2+_0x2c1a10(0x27f));return;}try{const _0x5ba461=registration??await navigator[_0x2c1a10(0x1e3)][_0x2c1a10(0x227)]('/');if(!_0x5ba461){console['log'](LOG_PREFIX2+_0x2c1a10(0x1ea));return;}console[_0x2c1a10(0x1cf)](LOG_PREFIX2+'\x20Found\x20registration:',{'scope':_0x5ba461[_0x2c1a10(0x1c9)],'active':_0x5ba461['active']?.[_0x2c1a10(0x29e)],'waiting':_0x5ba461[_0x2c1a10(0x2a3)]?.['scriptURL'],'installing':_0x5ba461[_0x2c1a10(0x2ad)]?.['scriptURL']});const _0x5e28ec=[_0x5ba461[_0x2c1a10(0x25d)]?.['scriptURL'],_0x5ba461[_0x2c1a10(0x2a3)]?.['scriptURL'],_0x5ba461[_0x2c1a10(0x2ad)]?.[_0x2c1a10(0x29e)]],_0x33c2ce=_0x5e28ec[_0x2c1a10(0x1db)](_0x5d8616=>_0x5d8616&&ownsServiceWorker(_0x5d8616,_0x1c948d));if(!_0x33c2ce){console['log'](LOG_PREFIX2+_0x2c1a10(0x1c2));return;}_0x5ba461['active']&&(console[_0x2c1a10(0x1cf)](LOG_PREFIX2+'\x20Sending\x20DISABLE\x20message\x20to\x20SW...'),_0x5ba461[_0x2c1a10(0x25d)][_0x2c1a10(0x206)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x2c1a10(0x1cf)](LOG_PREFIX2+_0x2c1a10(0x262)),await _0x5ba461['unregister'](),registration=null,currentOptions2=null,console['log'](LOG_PREFIX2+_0x2c1a10(0x21a));}catch(_0x373b71){console[_0x2c1a10(0x2a8)](LOG_PREFIX2+'\x20Failed\x20to\x20unregister\x20service\x20worker:',_0x373b71);}}function ownsServiceWorker(_0x13ce69,_0x4538b2){const _0x1b4296=_0x4dd8b6,_0x2d6457=typeof window!=='undefined'?window[_0x1b4296(0x29f)]['origin']:'',_0x36f930=new URL(_0x4538b2,_0x2d6457||void 0x0)[_0x1b4296(0x221)],_0x4cf7ab=_0x13ce69===_0x36f930||_0x13ce69[_0x1b4296(0x2b3)](_0x1b4296(0x26f));return console[_0x1b4296(0x1cf)](LOG_PREFIX2+'\x20ownsServiceWorker?\x20scriptURL='+_0x13ce69+_0x1b4296(0x1f6)+_0x36f930+',\x20owns='+_0x4cf7ab),_0x4cf7ab;}function ownsCurrentController(_0xe902a4){const _0x4f153c=_0x4dd8b6;if(typeof navigator===_0x4f153c(0x29a))return![];const _0x260213=navigator['serviceWorker']?.['controller'];if(!_0x260213)return console[_0x4f153c(0x1cf)](LOG_PREFIX2+'\x20No\x20current\x20controller'),![];return ownsServiceWorker(_0x260213[_0x4f153c(0x29e)],_0xe902a4);}async function detectBlockingServiceWorker(_0xe966c3){const _0xb1e0a7=_0x4dd8b6;if(!navigator[_0xb1e0a7(0x1e3)])return null;try{const _0x5868a7=await navigator['serviceWorker'][_0xb1e0a7(0x227)]('/');console[_0xb1e0a7(0x1cf)](LOG_PREFIX2+_0xb1e0a7(0x254),_0x5868a7?.['active']?.[_0xb1e0a7(0x29e)]??_0xb1e0a7(0x283));const _0x2afbc9=_0x5868a7?.['active']?.[_0xb1e0a7(0x29e)];if(!_0x2afbc9)return null;if(ownsServiceWorker(_0x2afbc9,_0xe966c3))return null;return _0x2afbc9;}catch(_0x3bf34b){return console[_0xb1e0a7(0x2a8)](LOG_PREFIX2+_0xb1e0a7(0x216),_0x3bf34b),null;}}async function resolveWorker(){const _0x55d4d2=_0x4dd8b6,_0x44391f=registration??await navigator[_0x55d4d2(0x1e3)]?.[_0x55d4d2(0x227)]('/'),_0x47bb44=_0x44391f?.[_0x55d4d2(0x25d)]??_0x44391f?.['waiting']??_0x44391f?.[_0x55d4d2(0x2ad)]??null;return console['log'](LOG_PREFIX2+_0x55d4d2(0x1ec),_0x47bb44?.[_0x55d4d2(0x29e)]??_0x55d4d2(0x283),'state:\x20'+(_0x47bb44?.['state']??_0x55d4d2(0x29b))),_0x47bb44;}var LOG_PREFIX3='[Enhance\x20Runtime]';function isInitialized(){const _0x5c99e6=_0x4dd8b6;return typeof window!=='undefined'&&window[_0x5c99e6(0x20a)]===!![];}function setInitialized(_0x504e66){const _0x5d3455=_0x4dd8b6;typeof window!==_0x5d3455(0x29a)&&(window['__enhanceInitialized']=_0x504e66);}function getOptions(){const _0x54b387=_0x4dd8b6;return typeof window!==_0x54b387(0x29a)?window['__enhanceOptions']??null:null;}function setOptions(_0x489ce3){const _0x32ffae=_0x4dd8b6;typeof window!==_0x32ffae(0x29a)&&(window[_0x32ffae(0x1e8)]=_0x489ce3);}var Enhance={'init'(_0x5be047){const _0x280361=_0x4dd8b6,_0x5a63ea=Date[_0x280361(0x214)]();console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x2b6)+_0x5a63ea),console['log'](LOG_PREFIX3+_0x280361(0x298)+window[_0x280361(0x29f)][_0x280361(0x221)]),console['log'](LOG_PREFIX3+_0x280361(0x28b)+document['readyState']),console[_0x280361(0x1cf)](LOG_PREFIX3+'\x20Raw\x20options:',JSON[_0x280361(0x248)](_0x5be047,null,0x2));if(isInitialized())return console[_0x280361(0x1e6)](LOG_PREFIX3+_0x280361(0x1bf)),window[_0x280361(0x256)]??createController();setInitialized(!![]),console['log'](LOG_PREFIX3+_0x280361(0x1d1));const _0x508117=normalizeOptions(_0x5be047);setOptions(_0x508117),console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x234),JSON[_0x280361(0x248)](_0x508117,null,0x2));const _0x39f971=parseUrlParams();console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x1ed),JSON[_0x280361(0x248)](_0x39f971,null,0x2));if(_0x39f971[_0x280361(0x249)])return cleanUrlParam(_0x280361(0x215)),console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x299)),createController();if(_0x39f971[_0x280361(0x240)])return console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x21f)),console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x1ca)+_0x39f971['enhancementUrl']),console['log'](LOG_PREFIX3+_0x280361(0x1f1)+_0x39f971[_0x280361(0x1b9)]),state[_0x280361(0x23a)]=!![],console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x291)),void loadOverlay({'overlayPath':_0x508117[_0x280361(0x278)],'enableViteHmr':_0x508117['overlay']['enableViteHmr'],'options':_0x508117,'onToggle':handleToggle}),console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x22d)),void registerServiceWorker(_0x508117),console[_0x280361(0x1cf)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20enhancement\x20mode'),createController();return console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x24a)),console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x274)),void unregisterServiceWorker(_0x508117[_0x280361(0x244)]),console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x275)),import.meta[_0x280361(0x252)]&&(console[_0x280361(0x1cf)](LOG_PREFIX3+_0x280361(0x260)),import.meta[_0x280361(0x252)]['on']('vite:error',_0x42618b=>{const _0xd489ba=_0x280361;console[_0xd489ba(0x1cf)](LOG_PREFIX3+_0xd489ba(0x1fb),_0x42618b),state['appError']={'message':_0x42618b['err']['message']},updateOverlay();}),import.meta[_0x280361(0x252)]['on']('vite:beforeUpdate',()=>{const _0x47fef8=_0x280361;state[_0x47fef8(0x27b)]&&(console['log'](LOG_PREFIX3+_0x47fef8(0x1d7)),state[_0x47fef8(0x27b)]=null,updateOverlay());})),createController();}};function createController(){const _0x551d0a=_0x4dd8b6,_0x5a3b9e={'enable'(){const _0x344125=_0x2163,_0x4efd05=getOptions();if(!_0x4efd05)return;state['enabled']=!![],void loadOverlay({'overlayPath':_0x4efd05['overlayPath'],'enableViteHmr':_0x4efd05[_0x344125(0x1ef)][_0x344125(0x21b)],'options':_0x4efd05,'onToggle':handleToggle}),void registerServiceWorker(_0x4efd05),void sendConfiguration(),updateOverlay();},'disable'(){const _0x547175=_0x2163,_0x2b697e=getOptions();if(!_0x2b697e)return;state['enabled']=![],state[_0x547175(0x22a)]=![],updateOverlay(),void unregisterServiceWorker(_0x2b697e['swPath']);},'status'(){return{'enabled':state['enabled'],'controlled':state['controlled']};}};return typeof window!==_0x551d0a(0x29a)&&(window[_0x551d0a(0x256)]=_0x5a3b9e),_0x5a3b9e;}function handleToggle(){const _0x3903da=_0x4dd8b6,_0x2a0ac4=createController();state[_0x3903da(0x23a)]?_0x2a0ac4['disable']():_0x2a0ac4[_0x3903da(0x1e0)]();}function parseUrlParams(){const _0x3b6f76=_0x4dd8b6,_0x569972=new URL(window[_0x3b6f76(0x29f)][_0x3b6f76(0x221)]),_0x3fee33=_0x569972['searchParams']['get']('enhance')?.[_0x3b6f76(0x28f)](),_0x3c223a=_0x569972['searchParams']['get'](_0x3b6f76(0x1d9)),_0x5316c1=_0x569972[_0x3b6f76(0x2ab)][_0x3b6f76(0x25c)](_0x3b6f76(0x1dc));return{'hasEnhancement':Boolean(_0x3c223a||_0x5316c1),'explicitDisable':_0x3fee33==='0'||_0x3fee33===_0x3b6f76(0x1d0)||_0x3fee33===_0x3b6f76(0x247),'enhancementUrl':_0x3c223a,'enhancementId':_0x5316c1};}function cleanUrlParam(_0x2c1be5){const _0x37408c=_0x4dd8b6,_0x4f7038=new URL(window[_0x37408c(0x29f)][_0x37408c(0x221)]);_0x4f7038[_0x37408c(0x2ab)][_0x37408c(0x208)](_0x2c1be5)&&(_0x4f7038['searchParams']['delete'](_0x2c1be5),window[_0x37408c(0x26b)][_0x37408c(0x261)](null,document['title'],_0x4f7038[_0x37408c(0x23c)]()));}var package_default={'name':'@enhance-eng/sandbox','version':_0x4dd8b6(0x1c7),'type':_0x4dd8b6(0x295),'description':_0x4dd8b6(0x1bc),'license':_0x4dd8b6(0x2a9),'main':'./dist/index.cjs','module':'./dist/index.js','types':_0x4dd8b6(0x1cc),'exports':{'.':{'types':_0x4dd8b6(0x1cc),'import':'./dist/index.js','require':_0x4dd8b6(0x211)},'./vite':{'types':_0x4dd8b6(0x286),'import':_0x4dd8b6(0x1c4)}},'files':[_0x4dd8b6(0x1cb),'bin',_0x4dd8b6(0x2b7)],'bin':{'enhance-sandbox':_0x4dd8b6(0x223)},'scripts':{'typecheck':_0x4dd8b6(0x2b5),'dev':_0x4dd8b6(0x222),'dev:build':_0x4dd8b6(0x201),'dev:staging':_0x4dd8b6(0x25b),'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':_0x4dd8b6(0x21d),'build:release':_0x4dd8b6(0x225),'version':'pnpm\x20version\x20patch\x20--no-git-tag-version'},'dependencies':{'commander':'^11.1.0','zod':_0x4dd8b6(0x294)},'devDependencies':{'@types/node':_0x4dd8b6(0x24c),'javascript-obfuscator':_0x4dd8b6(0x21e),'tsup':_0x4dd8b6(0x2b2),'vite':'^7.2.4'},'publishConfig':{'access':_0x4dd8b6(0x1e7)}},DEFAULT_SERVICE_WORKER_PATH=_0x4dd8b6(0x2a1),DEFAULT_RUNTIME_PATH=_0x4dd8b6(0x1dd),DIST_SERVICE_WORKER_PATH=_0x4dd8b6(0x218),DIST_RUNTIME_PATH=_0x4dd8b6(0x292),PACKAGE_VERSION=typeof package_default[_0x4dd8b6(0x28d)]===_0x4dd8b6(0x251)?package_default[_0x4dd8b6(0x28d)]:_0x4dd8b6(0x259);function normalizeAssetPath(_0x3e62ee){const _0x5c0d54=_0x4dd8b6;if(!_0x3e62ee)return _0x3e62ee;if(_0x3e62ee[_0x5c0d54(0x1cd)]('http://')||_0x3e62ee[_0x5c0d54(0x1cd)](_0x5c0d54(0x23b)))return _0x3e62ee;const _0x131d77=_0x3e62ee[_0x5c0d54(0x296)](/^\.\//,'');return _0x131d77['startsWith']('/')?_0x131d77:'/'+_0x131d77;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x5907f0){const _0x5054f7=_0x4dd8b6;return Enhance[_0x5054f7(0x1e1)](_0x5907f0);},'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 _0x2adc97=_0x4dd8b6;return Enhance2[_0x2adc97(0x1fd)]();}function _0x2163(_0x31cd6,_0x34b831){const _0x42327b=_0x4232();return _0x2163=function(_0x21631b,_0x15cd66){_0x21631b=_0x21631b-0x1b9;let _0x132de2=_0x42327b[_0x21631b];return _0x132de2;},_0x2163(_0x31cd6,_0x34b831);}function runtimeURL(){const _0x4305f2=_0x4dd8b6;return Enhance2[_0x4305f2(0x28c)]();}import{promises as _0x47fd34}from'fs';import{createHash}from'crypto';import{dirname,join}from'path';import{fileURLToPath}from'url';var distDir=dirname(fileURLToPath(new URL(_0x4dd8b6(0x2a2),import.meta['url'])));async function syncAssets(_0x249c92){const _0x565b6c=_0x4dd8b6,_0x43c236=[{'sourcePath':DIST_SERVICE_WORKER_PATH,'manifestPath':normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),'override':_0x249c92['swFilename']?'./'+_0x249c92[_0x565b6c(0x1d5)]:void 0x0},{'sourcePath':DIST_RUNTIME_PATH,'manifestPath':normalizeAssetPath(DEFAULT_RUNTIME_PATH)}],_0x5b054e=[];for(const _0x1e0c72 of _0x43c236){const _0x4e4dbe=cleanRelativePath(_0x1e0c72['override']??_0x1e0c72[_0x565b6c(0x263)]),_0x6ba4cf=join(distDir,cleanRelativePath(_0x1e0c72['sourcePath'])),_0x42c00d=join(_0x249c92[_0x565b6c(0x1d3)],_0x4e4dbe),[_0x749d47,_0x2b3096]=await Promise[_0x565b6c(0x1fa)]([readDigest(_0x6ba4cf),readDigest(_0x42c00d)]);if(_0x749d47&&_0x2b3096&&_0x749d47===_0x2b3096){_0x5b054e[_0x565b6c(0x258)]({'sourcePath':_0x6ba4cf,'destinationPath':_0x42c00d,'relativeDestination':_0x4e4dbe,'status':'skipped'});continue;}await _0x47fd34[_0x565b6c(0x220)](dirname(_0x42c00d),{'recursive':!![]}),await _0x47fd34[_0x565b6c(0x224)](_0x6ba4cf,_0x42c00d),_0x5b054e[_0x565b6c(0x258)]({'sourcePath':_0x6ba4cf,'destinationPath':_0x42c00d,'relativeDestination':_0x4e4dbe,'status':_0x565b6c(0x29d)});}return _0x5b054e;}function cleanRelativePath(_0x1023fa){const _0x343651=_0x4dd8b6;return _0x1023fa[_0x343651(0x296)](/^[./]+/,'');}function _0x4232(){const _0x1065f0=['update','\x20resolveWorker:','\x20URL\x20params\x20parsed:','308DXnyOr','overlay','\x20HMR\x20setup\x20complete','\x20enhancementId:\x20','\x20Registration\x20returned:','object','register','[Enhance\x20Config]\x20Build-time\x20defaults:',',\x20expected=','--filename\x20<name>','reload','\x20Config\x20sent\x20to\x20SW','all','\x20Vite\x20error\x20detected:','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','serviceWorkerURL','skipped','2719384QZKmIS','options','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','origin','\x20(already\x20current)\x20[','\x20Enhancement\x20detection:\x20wasEnhanced=','parseAsync','postMessage','\x20with\x20scope\x20\x27/\x27...','has','base64','__enhanceInitialized','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','permissive','\x20No\x20blocking\x20SW\x20found','__enhanceReactRefreshInstalledOrigins','403041tJeyok','stdout','./dist/index.cjs','action','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','now','enhance','\x20detectBlocking\x20error:','436671bkkGyu','sw-enhance.js','\x20loadOverlay()\x20failed:','\x20SW\x20unregistered\x20successfully','enableViteHmr','backendUrl','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','^4.1.1','\x20Enhancement\x20mode\x20ENABLED','mkdir','href','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','bin/enhance-sandbox.js','copyFile','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','...','getRegistration','\x20Invalid\x20React\x20Refresh\x20runtime','\x20Registering\x20SW\x20at\x20','controlled','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','9609910PTwmlC','\x20Starting\x20SW\x20registration\x20(async)...','state','\x20Checking\x20for\x20blocking\x20service\x20worker...','__vite_plugin_react_preamble_installed__','\x20Overlay\x20origin:\x20','filename','__viteHMRLoaded','\x20Normalized\x20options:','\x20Current\x20controller\x20after\x20ready:','\x20sendConfiguration()\x20called','--public-dir\x20<path>','\x20Updating\x20overlay...','\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20reusing','enabled','https://','toString','keys','Copy\x20the\x20service\x20worker\x20and\x20overlay\x20bundle\x20into\x20a\x20public\x20directory','Override\x20the\x20service\x20worker\x20output\x20filename\x20(defaults\x20to\x20sw-enhance.js)','hasEnhancement','\x20Failed\x20to\x20import/create\x20overlay:','/@react-refresh','\x20Available\x20exports:','swPath','\x20Updating\x20overlay\x20with\x20state:','\x20SW\x20ready!\x20Active:','off','stringify','explicitDisable','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','cwd','^24.10.1','onToggle','\x20enableViteHmr:\x20','bottom-right','\x20state.enabled:\x20','string','hot','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','\x20detectBlocking\x20-\x20existing\x20registration:','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','__enhanceController','\x20loadOverlay()\x20complete','push','0.0.0','\x20composeOverlayState\x20-\x20state.controlled:\x20','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','get','active','function','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners','replaceState','\x20Unregistering\x20SW...','manifestPath','4114188uvqWwA','\x20Module\x20missing\x20createOverlay\x20export!','\x20Setting\x20up\x20remote\x20HMR...','7pQXNQT','Skipped\x20','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','status','history','enhance-sandbox','\x20Importing\x20overlay\x20module\x20from:\x20','info','sw-enhance','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','\x20Vite\x20HMR\x20client\x20loaded\x20for\x20','\x20Overlay\x20controller\x20initialized\x20and\x20cached','Enhance\x20sandbox\x20utility\x20CLI','\x20Unregistering\x20any\x20existing\x20SW...','\x20init()\x20complete\x20-\x20normal\x20mode','__enhanceOverlay','code','overlayPath','\x20→\x20','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','appError','option','\x20React\x20Refresh\x20already\x20installed\x20for\x20','add','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','enhance:configure','Copied\x20','\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):','none','controller','2685348KBbpXU','./dist/vite/index.d.ts','\x20composeOverlayState\x20-\x20state.enabled:\x20','\x20currentOptions\x20exists:\x20','injectIntoGlobalHook','10035EWluzy','\x20Document\x20readyState:\x20','runtimeURL','version','position','toLowerCase','\x20Controller\x20state:','\x20Starting\x20overlay\x20load\x20(async)...','assets/enhance-runtime.js','createOverlay','^3.22.4','module','replace','__development','\x20Current\x20URL:\x20','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','undefined','N/A','\x20Calling\x20createOverlay()...','copied','scriptURL','location','[Enhance\x20SW-Client]','/sw-enhance.js','../dist/index.js','waiting','ENOENT','\x20Vite\x20client\x20already\x20loaded\x20for\x20','digest','\x20unregisterServiceWorker()\x20called','error','MIT','\x20loadOverlay()\x20called','searchParams','\x20overlayPath:\x20','installing','security','\x20setupRemoteHMR()\x20for\x20','command','write','^8.5.1','includes','\x20Module\x20imported\x20in\x20','tsc\x20--noEmit','\x20init()\x20called\x20at\x20','enhance.config.sample.json','description','enhancementId',',\x20page\x20origin:\x20','\x20registerServiceWorker()\x20complete','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','https://assets.enhancelabs.ai/overlay.js','enhance:disable','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','\x20Sending\x20customer\x20config\x20to\x20SW:','$RefreshReg$','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','\x20No\x20window\x20object\x20-\x20skipping','./dist/vite/index.js','trim','\x20swPath:\x20','0.3.19','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser','scope','\x20enhancementUrl:\x20','dist','./dist/index.d.ts','startsWith','$RefreshSig$','log','false','\x20First\x20initialization','default','publicDir','\x20Current\x20controller:','swFilename','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','destinationPath','enhancementUrl','name','some','enhancement','/assets/enhance-runtime.js','11UOryiG','prepare-sw','enable','init','6tueqTM','serviceWorker','relativeDestination','\x20Calling\x20updateOverlay()...','warn','public','__enhanceOptions','\x20Overlay\x20update\x20complete','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister'];_0x4232=function(){return _0x1065f0;};return _0x4232();}async function readDigest(_0x42088e){const _0x385d5a=_0x4dd8b6;try{const _0x1949eb=await _0x47fd34['readFile'](_0x42088e);return createHash('sha256')[_0x385d5a(0x1eb)](_0x1949eb)[_0x385d5a(0x2a6)](_0x385d5a(0x209));}catch(_0x54cd45){if(_0x54cd45[_0x385d5a(0x277)]===_0x385d5a(0x2a4))return null;throw _0x54cd45;}}var program=new Command();program[_0x4dd8b6(0x1da)](_0x4dd8b6(0x26c))[_0x4dd8b6(0x2b8)](_0x4dd8b6(0x273))['version'](_0x4dd8b6(0x259)),program['command']('manifest')[_0x4dd8b6(0x2b8)]('Print\x20the\x20current\x20asset\x20manifest')['action'](()=>{const _0x54c6db=_0x4dd8b6,_0x4d898d=getAssetManifest();process[_0x54c6db(0x210)][_0x54c6db(0x2b1)](JSON['stringify'](_0x4d898d,null,0x2)+'\x0a');}),program[_0x4dd8b6(0x2b0)](_0x4dd8b6(0x1df))[_0x4dd8b6(0x2b8)](_0x4dd8b6(0x23e))['requiredOption'](_0x4dd8b6(0x237),'Directory\x20to\x20copy\x20the\x20service\x20worker\x20into')[_0x4dd8b6(0x27c)](_0x4dd8b6(0x1f7),_0x4dd8b6(0x23f))[_0x4dd8b6(0x212)](async _0x142219=>{const _0x243cc0=_0x4dd8b6,_0x3e1f33=resolve(process[_0x243cc0(0x24b)](),_0x142219[_0x243cc0(0x1d3)]),_0x359e49=await syncAssets({'publicDir':_0x3e1f33,'swFilename':_0x142219[_0x243cc0(0x232)]});for(const _0x41522b of _0x359e49){const _0x10541c=relative(process[_0x243cc0(0x24b)](),_0x41522b[_0x243cc0(0x1d8)]);_0x41522b[_0x243cc0(0x26a)]===_0x243cc0(0x1fe)?process[_0x243cc0(0x210)][_0x243cc0(0x2b1)](_0x243cc0(0x268)+_0x41522b[_0x243cc0(0x1e4)]+_0x243cc0(0x203)+_0x10541c+']\x0a'):process[_0x243cc0(0x210)][_0x243cc0(0x2b1)](_0x243cc0(0x281)+_0x41522b[_0x243cc0(0x1e4)]+_0x243cc0(0x279)+_0x10541c+'\x0a');}}),program[_0x4dd8b6(0x205)]();
3
+ const _0x3fa552=_0x5b05;(function(_0x5e04b2,_0x19ef83){const _0x4ca521=_0x5b05,_0x59d0e5=_0x5e04b2();while(!![]){try{const _0x393235=parseInt(_0x4ca521(0x110))/0x1*(-parseInt(_0x4ca521(0x172))/0x2)+-parseInt(_0x4ca521(0xaf))/0x3+-parseInt(_0x4ca521(0x138))/0x4*(parseInt(_0x4ca521(0x158))/0x5)+parseInt(_0x4ca521(0xc2))/0x6+-parseInt(_0x4ca521(0x153))/0x7+-parseInt(_0x4ca521(0x186))/0x8+parseInt(_0x4ca521(0xd0))/0x9*(parseInt(_0x4ca521(0x114))/0xa);if(_0x393235===_0x19ef83)break;else _0x59d0e5['push'](_0x59d0e5['shift']());}catch(_0x2827da){_0x59d0e5['push'](_0x59d0e5['shift']());}}}(_0x4474,0x34cbd));import{Command}from'commander';import{resolve,relative}from'path';var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!==_0x3fa552(0xe5)?__ENHANCE_DEFAULT_OVERLAY_PATH__:'https://assets.enhancelabs.ai/overlay.js',DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!==_0x3fa552(0xe5)?__ENHANCE_DEFAULT_BACKEND_URL__:_0x3fa552(0xe7),DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!==_0x3fa552(0xe5)?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console[_0x3fa552(0x14d)](_0x3fa552(0x116),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x453d83){const _0xa17804=_0x3fa552,_0x5eda14=_0x453d83['__development']??{};return{'callbackBypass':_0x453d83[_0xa17804(0xe1)]??[],'overlay':{'enabled':!![],'position':_0xa17804(0xfd),'enableViteHmr':_0x5eda14[_0xa17804(0x1a2)]??DEFAULT_OVERLAY_HMR},'logLevel':_0xa17804(0x13d),'swPath':'/sw-enhance.js','overlayPath':_0x5eda14[_0xa17804(0x144)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0xa17804(0xf4),'security':_0x5eda14[_0xa17804(0x14f)]??_0xa17804(0xca),'backendUrl':_0x5eda14[_0xa17804(0xcb)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x36fffd=_0x3fa552;try{const _0x3295e3=new URLSearchParams(window[_0x36fffd(0xed)][_0x36fffd(0x19f)]);return _0x3295e3[_0x36fffd(0x14e)](_0x36fffd(0xbf))?.[_0x36fffd(0x146)]()||'';}catch{return'';}}var LOG_PREFIX=_0x3fa552(0xda),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x23776b){const _0x4fd4c0=_0x3fa552;console[_0x4fd4c0(0x14d)](LOG_PREFIX+_0x4fd4c0(0x1a0)),console[_0x4fd4c0(0x14d)](LOG_PREFIX+_0x4fd4c0(0x1a5)+_0x23776b[_0x4fd4c0(0x144)]),console[_0x4fd4c0(0x14d)](LOG_PREFIX+_0x4fd4c0(0xd4)+_0x23776b[_0x4fd4c0(0x132)]),currentOptions=_0x23776b['options'],toggleHandler=_0x23776b[_0x4fd4c0(0x143)];if(overlayController){console[_0x4fd4c0(0x14d)](LOG_PREFIX+'\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay'),updateOverlay();return;}if(overlayLoadPromise)return console[_0x4fd4c0(0x14d)](LOG_PREFIX+_0x4fd4c0(0xe4)),overlayLoadPromise;console[_0x4fd4c0(0x14d)](LOG_PREFIX+_0x4fd4c0(0xc3)),overlayLoadPromise=doLoadOverlay(_0x23776b);try{await overlayLoadPromise,console[_0x4fd4c0(0x14d)](LOG_PREFIX+_0x4fd4c0(0xae));}catch(_0x364b1f){console[_0x4fd4c0(0x19c)](LOG_PREFIX+_0x4fd4c0(0xdb),_0x364b1f);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x3c43e0){const _0x72b9df=_0x3fa552;console[_0x72b9df(0x14d)](LOG_PREFIX+'\x20doLoadOverlay()\x20starting...');if(typeof window===_0x72b9df(0xe5)){console['log'](LOG_PREFIX+_0x72b9df(0x12b));return;}if(window[_0x72b9df(0x128)]){console[_0x72b9df(0x14d)](LOG_PREFIX+'\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit'),overlayController=window['__enhanceOverlay'];return;}console['log'](LOG_PREFIX+_0x72b9df(0x134));try{_0x3c43e0['enableViteHmr']&&(console['log'](LOG_PREFIX+_0x72b9df(0x167)),await setupRemoteHMR(_0x3c43e0[_0x72b9df(0x144)]));console[_0x72b9df(0x14d)](LOG_PREFIX+_0x72b9df(0x17a)+_0x3c43e0['overlayPath']);const _0x516e55=Date[_0x72b9df(0x18f)](),_0x2ab99a=await import(_0x3c43e0[_0x72b9df(0x144)]);console['log'](LOG_PREFIX+_0x72b9df(0x130)+(Date[_0x72b9df(0x18f)]()-_0x516e55)+'ms'),console['log'](LOG_PREFIX+_0x72b9df(0x19b),Object[_0x72b9df(0xd7)](_0x2ab99a));if(typeof _0x2ab99a?.[_0x72b9df(0x189)]!==_0x72b9df(0xe6)){console['error'](LOG_PREFIX+_0x72b9df(0x156)),console[_0x72b9df(0x19c)](LOG_PREFIX+_0x72b9df(0xdc),Object[_0x72b9df(0xd7)](_0x2ab99a));return;}console[_0x72b9df(0x14d)](LOG_PREFIX+'\x20Calling\x20createOverlay()...');const _0x48eed5=_0x2ab99a[_0x72b9df(0x189)]();console[_0x72b9df(0x14d)](LOG_PREFIX+_0x72b9df(0x14a),_0x48eed5),overlayController=_0x48eed5,window[_0x72b9df(0x128)]=_0x48eed5,_0x48eed5['onToggle'](_0x3c43e0[_0x72b9df(0x143)]),console[_0x72b9df(0x14d)](LOG_PREFIX+'\x20Overlay\x20controller\x20initialized\x20and\x20cached'),console['log'](LOG_PREFIX+_0x72b9df(0x15c)),updateOverlay();}catch(_0x31a758){console[_0x72b9df(0x19c)](LOG_PREFIX+_0x72b9df(0x11f),_0x31a758);}}function updateOverlay(){const _0xd34d6d=_0x3fa552;console['log'](LOG_PREFIX+_0xd34d6d(0xee)),console['log'](LOG_PREFIX+_0xd34d6d(0xcc)+!!overlayController),console[_0xd34d6d(0x14d)](LOG_PREFIX+'\x20currentOptions\x20exists:\x20'+!!currentOptions);if(!overlayController||!currentOptions){console['log'](LOG_PREFIX+_0xd34d6d(0x192));return;}const _0x43142b=composeOverlayState(currentOptions);console[_0xd34d6d(0x14d)](LOG_PREFIX+'\x20Updating\x20overlay\x20with\x20state:',JSON[_0xd34d6d(0x171)](_0x43142b,null,0x2)),overlayController[_0xd34d6d(0xab)](_0x43142b),console['log'](LOG_PREFIX+_0xd34d6d(0xba));}function _0x4474(){const _0x5cd91a=['\x20Current\x20controller:','explicitDisable','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','\x20Enhancement\x20detection:\x20wasEnhanced=','permissive','backendUrl','\x20overlayController\x20exists:\x20','/@react-refresh','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','Print\x20the\x20current\x20asset\x20manifest','9JaFbbN','\x20enhancementUrl:\x20','\x20Failed\x20to\x20register\x20service\x20worker:','all','\x20enableViteHmr:\x20','publicDir','\x20Registration\x20returned:','keys','origin','\x20Vite\x20client\x20already\x20loaded\x20for\x20','[Enhance\x20Overlay]','\x20loadOverlay()\x20failed:','\x20Available\x20exports:','has','sourcePath','/sw-enhance.js','\x20state.enabled:\x20','callbackBypass','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','\x20setupRemoteHMR()\x20for\x20','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','undefined','function','https://api.enhancelabs.ai','overlay','\x20detectBlocking\x20-\x20existing\x20registration:','option','\x20Current\x20controller\x20after\x20ready:','\x20Vite\x20error\x20detected:','location','\x20updateOverlay()\x20called','parseAsync','Copy\x20the\x20service\x20worker\x20and\x20overlay\x20bundle\x20into\x20a\x20public\x20directory','\x20swPath:\x20','\x20Checking\x20for\x20blocking\x20service\x20worker...','^7.2.4','/assets/enhance-runtime.js','\x20No\x20blocking\x20SW\x20found','\x20composeOverlayState\x20-\x20state.controlled:\x20','module','active','base64','./dev/index.d.ts','\x20No\x20service\x20worker\x20active\x20to\x20configure','\x20Service\x20workers\x20supported','bottom-right','disable','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','ready','\x20Document\x20readyState:\x20','\x20Raw\x20options:','warn','\x20Updating\x20overlay...','toString','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','enhancement','\x20enhancementId:\x20','state:\x20','filename','push','\x20sendConfiguration()\x20called','href','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','sw-enhance','419258BtGotQ','hasEnhancement','0.0.0','relativeDestination','17631610rldfeq','appError','[Enhance\x20Config]\x20Build-time\x20defaults:','\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners','^3.22.4','\x20Overlay\x20origin:\x20','code','add','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','override','\x20Unregistering\x20SW...','\x20Failed\x20to\x20import/create\x20overlay:',',\x20expected=','runtimeURL','enabled','vite:beforeUpdate','unregister','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20','readyState','installing','__enhanceOverlay','assets/enhance-runtime.js','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','\x20No\x20window\x20object\x20-\x20skipping','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','\x20No\x20current\x20controller','history','--public-dir\x20<path>','\x20Module\x20imported\x20in\x20','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister','enableViteHmr',',\x20owns=','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','\x20Failed\x20to\x20unregister\x20service\x20worker:','https://','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','8HwOKwJ','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','command','replace','enhance:disable','info','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','message','Override\x20the\x20service\x20worker\x20output\x20filename\x20(defaults\x20to\x20sw-enhance.js)','N/A','destinationPath','onToggle','overlayPath','searchParams','trim','scope','Enhance\x20sandbox\x20utility\x20CLI','enable','\x20Controller\x20created:','action','\x20SW\x20unregistered\x20successfully','log','get','security','sw-enhance.js','\x20composeOverlayState\x20-\x20state.enabled:\x20','serviceWorker','2519293CLgPfv','scriptURL','\x20Controller\x20state:','\x20Module\x20missing\x20createOverlay\x20export!','controller','960065XBSlZK','skipped','default','\x20Normalized\x20options:','\x20Calling\x20updateOverlay()...','\x20URL\x20params\x20parsed:','./dev/index.js','\x20Enhancement\x20mode\x20ENABLED','enhance:configure','enhance','false','Copied\x20','\x20init()\x20called\x20at\x20','__viteHMRLoaded','version','\x20Setting\x20up\x20remote\x20HMR...','sha256','\x20Config\x20sent\x20to\x20SW','\x20Sending\x20customer\x20configuration...','\x20Unregistering\x20any\x20existing\x20SW...','delete','ENOENT','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','stdout','getRegistration','stringify','2MzQqsg','\x20ownsServiceWorker?\x20scriptURL=','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser','\x20BLOCKING\x20SW\x20detected:\x20','__enhanceOptions','\x20(already\x20current)\x20[',',\x20currentOptions:\x20',',\x20page\x20origin:\x20','\x20Importing\x20overlay\x20module\x20from:\x20','$RefreshSig$','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','cwd','__enhanceController','./dev/cli.js','__enhanceReactRefreshInstalledOrigins','^8.5.1','mkdir','swPath','/@vite/client','includes','2991408QUyNOa','controlled','Skipped\x20','createOverlay','description','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','MIT','enhancementId','--filename\x20<name>','now','\x20SW\x20ready!\x20Active:','...','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','startsWith','__enhanceInitialized','../dist/index.js','\x20detectBlocking\x20error:','@enhance-eng/sandbox','waiting','$RefreshReg$','\x20Module\x20exports:','error','string','\x20HMR\x20setup\x20complete','search','\x20loadOverlay()\x20called','\x20→\x20','enableOverlayHmr','state','\x20Starting\x20SW\x20registration\x20(async)...','\x20overlayPath:\x20','reload','./dev/vite/index.d.ts','off','injectIntoGlobalHook','\x20unregisterServiceWorker()\x20called','init','update','^4.1.1','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','\x20loadOverlay()\x20complete','335763TFDXno','\x20Starting\x20overlay\x20load\x20(async)...','none','some','manifestPath','tsc\x20--noEmit','postMessage','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','./dev/vite/index.js','\x20First\x20initialization','\x20Invalid\x20React\x20Refresh\x20runtime','\x20Overlay\x20update\x20complete','\x20React\x20Refresh\x20already\x20installed\x20for\x20','digest','object','serviceWorkerURL','enhancementUrl','dev/','swFilename','612732xEoRdR','\x20Starting\x20fresh\x20overlay\x20load...','\x20registerServiceWorker()\x20called','enhance-sandbox'];_0x4474=function(){return _0x5cd91a;};return _0x4474();}function composeOverlayState(_0x2c9088){const _0x1adbf8=_0x3fa552,_0x1d4f24=getEnhancementUrl();return console[_0x1adbf8(0x14d)](LOG_PREFIX+_0x1adbf8(0xc8)+_0x1d4f24),console[_0x1adbf8(0x14d)](LOG_PREFIX+_0x1adbf8(0x151)+state[_0x1adbf8(0x122)]),console[_0x1adbf8(0x14d)](LOG_PREFIX+_0x1adbf8(0xf6)+state['controlled']),{'enhancementUrl':_0x1d4f24,'enabled':state[_0x1adbf8(0x122)],'controlled':state['controlled'],'overlayPosition':_0x2c9088[_0x1adbf8(0xe8)]['position'],'securityMode':_0x2c9088['security'],'backendBaseUrl':_0x2c9088['backendUrl'],'appError':state[_0x1adbf8(0x115)]};}async function setupRemoteHMR(_0x5b126a){const _0x25441e=_0x3fa552;console[_0x25441e(0x14d)](LOG_PREFIX+_0x25441e(0xe3)+_0x5b126a);if(typeof window===_0x25441e(0xe5))return;try{const _0x28dee6=new URL(_0x5b126a,window['location'][_0x25441e(0xd8)]),_0x3c00bf=_0x28dee6[_0x25441e(0xd8)];console[_0x25441e(0x14d)](LOG_PREFIX+_0x25441e(0x119)+_0x3c00bf+_0x25441e(0x179)+window[_0x25441e(0xed)]['origin']);if(_0x3c00bf===window['location'][_0x25441e(0xd8)]){console[_0x25441e(0x14d)](LOG_PREFIX+_0x25441e(0x139));return;}console[_0x25441e(0x14d)](LOG_PREFIX+_0x25441e(0x106)),await ensureReactRefreshPreamble(_0x3c00bf),await ensureViteClient(_0x3c00bf),console['log'](LOG_PREFIX+_0x25441e(0x19e));}catch(_0x444f07){console['warn'](LOG_PREFIX+'\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):',_0x444f07);}}async function ensureReactRefreshPreamble(_0x1746cf){const _0x5019e0=_0x3fa552;window['__enhanceReactRefreshInstalledOrigins']??=new Set();if(window[_0x5019e0(0x180)][_0x5019e0(0xdd)](_0x1746cf)){console['log'](LOG_PREFIX+_0x5019e0(0xbb)+_0x1746cf);return;}console['log'](LOG_PREFIX+_0x5019e0(0x125)+_0x1746cf+_0x5019e0(0x191));const _0x24d616=await import(_0x1746cf+_0x5019e0(0xcd)),_0x114992=_0x24d616&&typeof _0x24d616===_0x5019e0(0xbd)&&_0x5019e0(0x15a)in _0x24d616?_0x24d616[_0x5019e0(0x15a)]:_0x24d616;if(!isRefreshRuntime(_0x114992)){console[_0x5019e0(0x103)](LOG_PREFIX+_0x5019e0(0xb9));return;}_0x114992[_0x5019e0(0xa8)](window),window[_0x5019e0(0x19a)]=()=>{},window[_0x5019e0(0x17b)]=()=>_0x1c6e50=>_0x1c6e50,window['__vite_plugin_react_preamble_installed__']=!![],window[_0x5019e0(0x180)]['add'](_0x1746cf),console[_0x5019e0(0x14d)](LOG_PREFIX+'\x20React\x20Refresh\x20runtime\x20installed\x20for\x20'+_0x1746cf);}async function ensureViteClient(_0x1eb29e){const _0x4f107d=_0x3fa552;window[_0x4f107d(0x165)]??=new Set();if(window[_0x4f107d(0x165)][_0x4f107d(0xdd)](_0x1eb29e)){console[_0x4f107d(0x14d)](LOG_PREFIX+_0x4f107d(0xd9)+_0x1eb29e);return;}console['log'](LOG_PREFIX+_0x4f107d(0xb6)+_0x1eb29e+'...'),await import(_0x1eb29e+_0x4f107d(0x184)),window[_0x4f107d(0x165)][_0x4f107d(0x11b)](_0x1eb29e),console[_0x4f107d(0x14d)](LOG_PREFIX+'\x20Vite\x20HMR\x20client\x20loaded\x20for\x20'+_0x1eb29e);}function isRefreshRuntime(_0x76ec61){const _0x4486a3=_0x3fa552;return typeof _0x76ec61===_0x4486a3(0xbd)&&_0x76ec61!==null&&_0x4486a3(0xa8)in _0x76ec61&&typeof _0x76ec61[_0x4486a3(0xa8)]===_0x4486a3(0xe6);}var WORKER_MESSAGE_CONFIG=_0x3fa552(0x160),WORKER_MESSAGE_DISABLE=_0x3fa552(0x13c),LOG_PREFIX2='[Enhance\x20SW-Client]',registration=null,currentOptions2=null;async function registerServiceWorker(_0x21a7ba){const _0x50906a=_0x3fa552;console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0xc4)),console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0xf1)+_0x21a7ba['swPath']);if(!(_0x50906a(0x152)in navigator)){console[_0x50906a(0x103)](LOG_PREFIX2+_0x50906a(0x174));return;}console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0xfc));const _0xf1d182=navigator[_0x50906a(0x152)][_0x50906a(0x157)];console['log'](LOG_PREFIX2+_0x50906a(0xc6),_0xf1d182?.[_0x50906a(0x154)]??_0x50906a(0xb1)),console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0x155),_0xf1d182?.['state']??_0x50906a(0x141));const _0x1fd3dc=!!_0xf1d182;currentOptions2=_0x21a7ba,console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0xf2));const _0x33694d=await detectBlockingServiceWorker(_0x21a7ba[_0x50906a(0x183)]);if(_0x33694d){console[_0x50906a(0x19c)](LOG_PREFIX2+_0x50906a(0x175)+_0x33694d),console['error'](LOG_PREFIX2+_0x50906a(0xff));return;}console['log'](LOG_PREFIX2+_0x50906a(0xf5));try{console[_0x50906a(0x14d)](LOG_PREFIX2+'\x20Registering\x20SW\x20at\x20'+_0x21a7ba[_0x50906a(0x183)]+'\x20with\x20scope\x20\x27/\x27...'),registration=await navigator[_0x50906a(0x152)]['register'](_0x21a7ba[_0x50906a(0x183)],{'scope':'/'}),console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0xd6),{'scope':registration['scope'],'active':registration['active']?.[_0x50906a(0x154)],'waiting':registration[_0x50906a(0x199)]?.[_0x50906a(0x154)],'installing':registration[_0x50906a(0x127)]?.[_0x50906a(0x154)]}),console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0x10e));const _0x348ee5=await navigator[_0x50906a(0x152)][_0x50906a(0x100)];console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0x190),_0x348ee5[_0x50906a(0xf8)]?.[_0x50906a(0x154)]);const _0x2fd240=ownsCurrentController(_0x21a7ba[_0x50906a(0x183)]);state[_0x50906a(0x187)]=_0x2fd240,console['log'](LOG_PREFIX2+'\x20Page\x20controlled\x20by\x20our\x20SW:\x20'+_0x2fd240),console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0xeb),navigator[_0x50906a(0x152)][_0x50906a(0x157)]?.['scriptURL']??_0x50906a(0xb1));if(!_0x1fd3dc&&!navigator['serviceWorker'][_0x50906a(0x157)]){console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0x11c)),window[_0x50906a(0xed)][_0x50906a(0x1a6)]();return;}console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0x16a)),await sendConfiguration();if(state['enabled']){const _0x3d2600=document['querySelector']('[data-enhance-runtime-bootstrap]')!==null;console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0xc9)+_0x3d2600);if(!_0x3d2600){console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0x12c)),window[_0x50906a(0xed)][_0x50906a(0x1a6)]();return;}}console[_0x50906a(0x14d)](LOG_PREFIX2+_0x50906a(0x104)),updateOverlay(),console[_0x50906a(0x14d)](LOG_PREFIX2+'\x20registerServiceWorker()\x20complete');}catch(_0x1f0c85){console[_0x50906a(0x19c)](LOG_PREFIX2+_0x50906a(0xd2),_0x1f0c85);}}async function sendConfiguration(){const _0x4ef410=_0x3fa552;console['log'](LOG_PREFIX2+_0x4ef410(0x10c)),console[_0x4ef410(0x14d)](LOG_PREFIX2+_0x4ef410(0xe0)+state[_0x4ef410(0x122)]+_0x4ef410(0x178)+!!currentOptions2);if(!state[_0x4ef410(0x122)]||!currentOptions2){console[_0x4ef410(0x14d)](LOG_PREFIX2+'\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options');return;}const _0x2cc1c0=await resolveWorker();if(!_0x2cc1c0){console[_0x4ef410(0x103)](LOG_PREFIX2+_0x4ef410(0xfb));return;}const _0x3f397f={'callbackBypass':currentOptions2[_0x4ef410(0xe1)],'securityMode':currentOptions2[_0x4ef410(0x14f)]};console['log'](LOG_PREFIX2+'\x20Sending\x20customer\x20config\x20to\x20SW:',JSON['stringify'](_0x3f397f,null,0x2)),_0x2cc1c0[_0x4ef410(0xb5)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x3f397f}),console[_0x4ef410(0x14d)](LOG_PREFIX2+_0x4ef410(0x169));}async function unregisterServiceWorker(_0x1f057f){const _0x3ba9db=_0x3fa552;console[_0x3ba9db(0x14d)](LOG_PREFIX2+_0x3ba9db(0xa9));if(!('serviceWorker'in navigator)){console['log'](LOG_PREFIX2+'\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister');return;}try{const _0x4e18a6=registration??await navigator[_0x3ba9db(0x152)][_0x3ba9db(0x170)]('/');if(!_0x4e18a6){console[_0x3ba9db(0x14d)](LOG_PREFIX2+_0x3ba9db(0x131));return;}console[_0x3ba9db(0x14d)](LOG_PREFIX2+'\x20Found\x20registration:',{'scope':_0x4e18a6[_0x3ba9db(0x147)],'active':_0x4e18a6[_0x3ba9db(0xf8)]?.[_0x3ba9db(0x154)],'waiting':_0x4e18a6[_0x3ba9db(0x199)]?.['scriptURL'],'installing':_0x4e18a6[_0x3ba9db(0x127)]?.[_0x3ba9db(0x154)]});const _0x38085c=[_0x4e18a6[_0x3ba9db(0xf8)]?.[_0x3ba9db(0x154)],_0x4e18a6[_0x3ba9db(0x199)]?.[_0x3ba9db(0x154)],_0x4e18a6[_0x3ba9db(0x127)]?.['scriptURL']],_0x4fd667=_0x38085c[_0x3ba9db(0xb2)](_0xa13db2=>_0xa13db2&&ownsServiceWorker(_0xa13db2,_0x1f057f));if(!_0x4fd667){console['log'](LOG_PREFIX2+_0x3ba9db(0x16e));return;}_0x4e18a6[_0x3ba9db(0xf8)]&&(console['log'](LOG_PREFIX2+_0x3ba9db(0x17c)),_0x4e18a6[_0x3ba9db(0xf8)][_0x3ba9db(0xb5)]({'type':WORKER_MESSAGE_DISABLE})),console['log'](LOG_PREFIX2+_0x3ba9db(0x11e)),await _0x4e18a6[_0x3ba9db(0x124)](),registration=null,currentOptions2=null,console[_0x3ba9db(0x14d)](LOG_PREFIX2+_0x3ba9db(0x14c));}catch(_0x17c71c){console[_0x3ba9db(0x19c)](LOG_PREFIX2+_0x3ba9db(0x135),_0x17c71c);}}function ownsServiceWorker(_0x3a437b,_0x3e3071){const _0x3548d8=_0x3fa552,_0x1b48fc=typeof window!==_0x3548d8(0xe5)?window[_0x3548d8(0xed)]['origin']:'',_0x34866e=new URL(_0x3e3071,_0x1b48fc||void 0x0)[_0x3548d8(0x10d)],_0x4648e3=_0x3a437b===_0x34866e||_0x3a437b[_0x3548d8(0x185)](_0x3548d8(0x10f));return console[_0x3548d8(0x14d)](LOG_PREFIX2+_0x3548d8(0x173)+_0x3a437b+_0x3548d8(0x120)+_0x34866e+_0x3548d8(0x133)+_0x4648e3),_0x4648e3;}function ownsCurrentController(_0x57be36){const _0x1eb000=_0x3fa552;if(typeof navigator===_0x1eb000(0xe5))return![];const _0x2eebc0=navigator[_0x1eb000(0x152)]?.[_0x1eb000(0x157)];if(!_0x2eebc0)return console[_0x1eb000(0x14d)](LOG_PREFIX2+_0x1eb000(0x12d)),![];return ownsServiceWorker(_0x2eebc0[_0x1eb000(0x154)],_0x57be36);}async function detectBlockingServiceWorker(_0x2d56af){const _0x163da3=_0x3fa552;if(!navigator['serviceWorker'])return null;try{const _0x224f8a=await navigator[_0x163da3(0x152)]['getRegistration']('/');console[_0x163da3(0x14d)](LOG_PREFIX2+_0x163da3(0xe9),_0x224f8a?.['active']?.['scriptURL']??_0x163da3(0xb1));const _0xc5069d=_0x224f8a?.[_0x163da3(0xf8)]?.['scriptURL'];if(!_0xc5069d)return null;if(ownsServiceWorker(_0xc5069d,_0x2d56af))return null;return _0xc5069d;}catch(_0x2e2184){return console[_0x163da3(0x19c)](LOG_PREFIX2+_0x163da3(0x197),_0x2e2184),null;}}async function resolveWorker(){const _0x3b93d2=_0x3fa552,_0x182827=registration??await navigator[_0x3b93d2(0x152)]?.[_0x3b93d2(0x170)]('/'),_0x59f5c6=_0x182827?.[_0x3b93d2(0xf8)]??_0x182827?.[_0x3b93d2(0x199)]??_0x182827?.[_0x3b93d2(0x127)]??null;return console[_0x3b93d2(0x14d)](LOG_PREFIX2+'\x20resolveWorker:',_0x59f5c6?.[_0x3b93d2(0x154)]??_0x3b93d2(0xb1),_0x3b93d2(0x109)+(_0x59f5c6?.[_0x3b93d2(0x1a3)]??'N/A')),_0x59f5c6;}function _0x5b05(_0x5168af,_0x111096){_0x5168af=_0x5168af-0xa6;const _0x44747d=_0x4474();let _0x5b055f=_0x44747d[_0x5168af];return _0x5b055f;}var LOG_PREFIX3='[Enhance\x20Runtime]';function isInitialized(){return typeof window!=='undefined'&&window['__enhanceInitialized']===!![];}function setInitialized(_0x4b9a72){const _0x1e4ee0=_0x3fa552;typeof window!==_0x1e4ee0(0xe5)&&(window[_0x1e4ee0(0x195)]=_0x4b9a72);}function getOptions(){const _0xff5f52=_0x3fa552;return typeof window!=='undefined'?window[_0xff5f52(0x176)]??null:null;}function setOptions(_0x1d16c6){const _0x142bb7=_0x3fa552;typeof window!==_0x142bb7(0xe5)&&(window[_0x142bb7(0x176)]=_0x1d16c6);}var Enhance={'init'(_0x2b1c37={}){const _0xce6f83=_0x3fa552,_0x53453c=Date[_0xce6f83(0x18f)]();console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x164)+_0x53453c),console['log'](LOG_PREFIX3+'\x20Current\x20URL:\x20'+window['location'][_0xce6f83(0x10d)]),console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x101)+document[_0xce6f83(0x126)]),console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x102),JSON[_0xce6f83(0x171)](_0x2b1c37,null,0x2));if(isInitialized())return console[_0xce6f83(0x103)](LOG_PREFIX3+_0xce6f83(0x18b)),window[_0xce6f83(0x17e)]??createController();setInitialized(!![]),console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0xb8));const _0xf76b19=normalizeOptions(_0x2b1c37);setOptions(_0xf76b19),console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x15b),JSON[_0xce6f83(0x171)](_0xf76b19,null,0x2));const _0x5319e6=parseUrlParams();console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x15d),JSON[_0xce6f83(0x171)](_0x5319e6,null,0x2));if(_0x5319e6[_0xce6f83(0xc7)])return cleanUrlParam(_0xce6f83(0x161)),console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x193)),createController();if(_0x5319e6[_0xce6f83(0x111)])return console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x15f)),console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0xd1)+_0x5319e6['enhancementUrl']),console['log'](LOG_PREFIX3+_0xce6f83(0x108)+_0x5319e6[_0xce6f83(0x18d)]),state[_0xce6f83(0x122)]=!![],console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0xb0)),void loadOverlay({'overlayPath':_0xf76b19['overlayPath'],'enableViteHmr':_0xf76b19[_0xce6f83(0xe8)][_0xce6f83(0x132)],'options':_0xf76b19,'onToggle':handleToggle}),console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x1a4)),void registerServiceWorker(_0xf76b19),console[_0xce6f83(0x14d)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20enhancement\x20mode'),createController();return console[_0xce6f83(0x14d)](LOG_PREFIX3+'\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params'),console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x16b)),void unregisterServiceWorker(_0xf76b19[_0xce6f83(0x183)]),console[_0xce6f83(0x14d)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20normal\x20mode'),import.meta.hot&&(console[_0xce6f83(0x14d)](LOG_PREFIX3+_0xce6f83(0x117)),import.meta.hot['on']('vite:error',_0x49a657=>{const _0x4eee4d=_0xce6f83;console[_0x4eee4d(0x14d)](LOG_PREFIX3+_0x4eee4d(0xec),_0x49a657),state[_0x4eee4d(0x115)]={'message':_0x49a657['err'][_0x4eee4d(0x13f)]},updateOverlay();}),import.meta.hot['on'](_0xce6f83(0x123),()=>{const _0x107fdf=_0xce6f83;state[_0x107fdf(0x115)]&&(console[_0x107fdf(0x14d)](LOG_PREFIX3+_0x107fdf(0xad)),state[_0x107fdf(0x115)]=null,updateOverlay());})),createController();}};function createController(){const _0x1d4da2=_0x3fa552,_0x51e851={'enable'(){const _0xe31d1d=_0x5b05,_0x1b8ef4=getOptions();if(!_0x1b8ef4)return;state[_0xe31d1d(0x122)]=!![],void loadOverlay({'overlayPath':_0x1b8ef4[_0xe31d1d(0x144)],'enableViteHmr':_0x1b8ef4[_0xe31d1d(0xe8)][_0xe31d1d(0x132)],'options':_0x1b8ef4,'onToggle':handleToggle}),void registerServiceWorker(_0x1b8ef4),void sendConfiguration(),updateOverlay();},'disable'(){const _0x7e1cff=_0x5b05,_0x3c1824=getOptions();if(!_0x3c1824)return;state[_0x7e1cff(0x122)]=![],state[_0x7e1cff(0x187)]=![],updateOverlay(),void unregisterServiceWorker(_0x3c1824[_0x7e1cff(0x183)]);},'status'(){const _0x4caf9c=_0x5b05;return{'enabled':state[_0x4caf9c(0x122)],'controlled':state[_0x4caf9c(0x187)]};}};return typeof window!==_0x1d4da2(0xe5)&&(window[_0x1d4da2(0x17e)]=_0x51e851),_0x51e851;}function handleToggle(){const _0x35fa7b=_0x3fa552,_0x45b155=createController();state[_0x35fa7b(0x122)]?_0x45b155[_0x35fa7b(0xfe)]():_0x45b155[_0x35fa7b(0x149)]();}function parseUrlParams(){const _0x4b4453=_0x3fa552,_0x1deb3b=new URL(window[_0x4b4453(0xed)][_0x4b4453(0x10d)]),_0x88f1be=_0x1deb3b[_0x4b4453(0x145)]['get'](_0x4b4453(0x161))?.['toLowerCase'](),_0x6d3ced=_0x1deb3b['searchParams'][_0x4b4453(0x14e)](_0x4b4453(0xbf)),_0x56e46c=_0x1deb3b['searchParams'][_0x4b4453(0x14e)](_0x4b4453(0x107));return{'hasEnhancement':Boolean(_0x6d3ced||_0x56e46c),'explicitDisable':_0x88f1be==='0'||_0x88f1be===_0x4b4453(0x162)||_0x88f1be===_0x4b4453(0xa7),'enhancementUrl':_0x6d3ced,'enhancementId':_0x56e46c};}function cleanUrlParam(_0x4ad64){const _0x16980b=_0x3fa552,_0x8a3b0a=new URL(window[_0x16980b(0xed)]['href']);_0x8a3b0a[_0x16980b(0x145)][_0x16980b(0xdd)](_0x4ad64)&&(_0x8a3b0a[_0x16980b(0x145)][_0x16980b(0x16c)](_0x4ad64),window[_0x16980b(0x12e)]['replaceState'](null,document['title'],_0x8a3b0a[_0x16980b(0x105)]()));}var package_default={'name':_0x3fa552(0x198),'version':'0.3.20','type':_0x3fa552(0xf7),'description':'Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','license':_0x3fa552(0x18c),'main':_0x3fa552(0x15e),'module':_0x3fa552(0x15e),'types':_0x3fa552(0xfa),'exports':{'.':{'types':_0x3fa552(0xfa),'import':_0x3fa552(0x15e)},'./vite':{'types':_0x3fa552(0xa6),'import':_0x3fa552(0xb7)}},'files':[_0x3fa552(0xc0)],'bin':{'enhance-sandbox':_0x3fa552(0x17f)},'scripts':{'typecheck':_0x3fa552(0xb4),'dev':_0x3fa552(0xce),'dev:build':_0x3fa552(0x12a),'dev:staging':_0x3fa552(0x137),'dev:staging:build':_0x3fa552(0xe2),'build':'ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','build:release':_0x3fa552(0x13e),'version':'bun\x20version\x20patch\x20--no-git-tag-version'},'dependencies':{'commander':'^11.1.0','zod':_0x3fa552(0x118)},'devDependencies':{'@types/node':'^24.10.1','javascript-obfuscator':_0x3fa552(0xac),'tsup':_0x3fa552(0x181),'vite':_0x3fa552(0xf3)},'publishConfig':{'access':'public'}},DEFAULT_SERVICE_WORKER_PATH=_0x3fa552(0xdf),DEFAULT_RUNTIME_PATH=_0x3fa552(0xf4),DIST_SERVICE_WORKER_PATH=_0x3fa552(0x150),DIST_RUNTIME_PATH=_0x3fa552(0x129),PACKAGE_VERSION=typeof package_default['version']===_0x3fa552(0x19d)?package_default[_0x3fa552(0x166)]:_0x3fa552(0x112);function normalizeAssetPath(_0x51b0fe){const _0x5beec8=_0x3fa552;if(!_0x51b0fe)return _0x51b0fe;if(_0x51b0fe[_0x5beec8(0x194)]('http://')||_0x51b0fe[_0x5beec8(0x194)](_0x5beec8(0x136)))return _0x51b0fe;const _0x45cd9f=_0x51b0fe[_0x5beec8(0x13b)](/^\.\//,'');return _0x45cd9f[_0x5beec8(0x194)]('/')?_0x45cd9f:'/'+_0x45cd9f;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x5ed685){const _0x19749c=_0x3fa552;return Enhance[_0x19749c(0xaa)](_0x5ed685);},'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 _0x394e7e=_0x3fa552;return Enhance2[_0x394e7e(0xbe)]();}function runtimeURL(){const _0x3345cc=_0x3fa552;return Enhance2[_0x3345cc(0x121)]();}import{promises as _0x4d93d2}from'fs';import{createHash}from'crypto';import{dirname,join}from'path';import{fileURLToPath}from'url';var distDir=dirname(fileURLToPath(new URL(_0x3fa552(0x196),import.meta.url)));async function syncAssets(_0xb1b9e7){const _0x3b1387=_0x3fa552,_0x1d59da=[{'sourcePath':DIST_SERVICE_WORKER_PATH,'manifestPath':normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),'override':_0xb1b9e7[_0x3b1387(0xc1)]?'./'+_0xb1b9e7[_0x3b1387(0xc1)]:void 0x0},{'sourcePath':DIST_RUNTIME_PATH,'manifestPath':normalizeAssetPath(DEFAULT_RUNTIME_PATH)}],_0x2b227f=[];for(const _0x5a8f1b of _0x1d59da){const _0x2efd8f=cleanRelativePath(_0x5a8f1b[_0x3b1387(0x11d)]??_0x5a8f1b[_0x3b1387(0xb3)]),_0x1c0a0c=join(distDir,cleanRelativePath(_0x5a8f1b[_0x3b1387(0xde)])),_0x47cdea=join(_0xb1b9e7[_0x3b1387(0xd5)],_0x2efd8f),[_0x387306,_0x16d37c]=await Promise[_0x3b1387(0xd3)]([readDigest(_0x1c0a0c),readDigest(_0x47cdea)]);if(_0x387306&&_0x16d37c&&_0x387306===_0x16d37c){_0x2b227f[_0x3b1387(0x10b)]({'sourcePath':_0x1c0a0c,'destinationPath':_0x47cdea,'relativeDestination':_0x2efd8f,'status':_0x3b1387(0x159)});continue;}await _0x4d93d2[_0x3b1387(0x182)](dirname(_0x47cdea),{'recursive':!![]}),await _0x4d93d2['copyFile'](_0x1c0a0c,_0x47cdea),_0x2b227f[_0x3b1387(0x10b)]({'sourcePath':_0x1c0a0c,'destinationPath':_0x47cdea,'relativeDestination':_0x2efd8f,'status':'copied'});}return _0x2b227f;}function cleanRelativePath(_0x4c45c9){return _0x4c45c9['replace'](/^[./]+/,'');}async function readDigest(_0x894a72){const _0x49038e=_0x3fa552;try{const _0x19fee2=await _0x4d93d2['readFile'](_0x894a72);return createHash(_0x49038e(0x168))[_0x49038e(0xab)](_0x19fee2)[_0x49038e(0xbc)](_0x49038e(0xf9));}catch(_0x314f71){if(_0x314f71[_0x49038e(0x11a)]===_0x49038e(0x16d))return null;throw _0x314f71;}}var program=new Command();program['name'](_0x3fa552(0xc5))[_0x3fa552(0x18a)](_0x3fa552(0x148))[_0x3fa552(0x166)](_0x3fa552(0x112)),program['command']('manifest')['description'](_0x3fa552(0xcf))[_0x3fa552(0x14b)](()=>{const _0xea714b=_0x3fa552,_0x401ab7=getAssetManifest();process[_0xea714b(0x16f)]['write'](JSON[_0xea714b(0x171)](_0x401ab7,null,0x2)+'\x0a');}),program[_0x3fa552(0x13a)]('prepare-sw')[_0x3fa552(0x18a)](_0x3fa552(0xf0))['requiredOption'](_0x3fa552(0x12f),'Directory\x20to\x20copy\x20the\x20service\x20worker\x20into')[_0x3fa552(0xea)](_0x3fa552(0x18e),_0x3fa552(0x140))['action'](async _0x4b413c=>{const _0x594bb0=_0x3fa552,_0x3e5256=resolve(process[_0x594bb0(0x17d)](),_0x4b413c[_0x594bb0(0xd5)]),_0x19c4fb=await syncAssets({'publicDir':_0x3e5256,'swFilename':_0x4b413c[_0x594bb0(0x10a)]});for(const _0x2d1e34 of _0x19c4fb){const _0x56faab=relative(process['cwd'](),_0x2d1e34[_0x594bb0(0x142)]);_0x2d1e34['status']===_0x594bb0(0x159)?process[_0x594bb0(0x16f)]['write'](_0x594bb0(0x188)+_0x2d1e34[_0x594bb0(0x113)]+_0x594bb0(0x177)+_0x56faab+']\x0a'):process['stdout']['write'](_0x594bb0(0x163)+_0x2d1e34[_0x594bb0(0x113)]+_0x594bb0(0x1a1)+_0x56faab+'\x0a');}}),program[_0x3fa552(0xef)]();
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 _0x347f13=_0x4baf;(function(_0x1537ef,_0x1f1fd4){const _0x101f52=_0x4baf,_0x363c15=_0x1537ef();while(!![]){try{const _0x36c82b=parseInt(_0x101f52(0x153))/0x1+-parseInt(_0x101f52(0x148))/0x2*(-parseInt(_0x101f52(0x1d4))/0x3)+parseInt(_0x101f52(0x1cd))/0x4+parseInt(_0x101f52(0x185))/0x5+parseInt(_0x101f52(0x1e4))/0x6+parseInt(_0x101f52(0x200))/0x7+-parseInt(_0x101f52(0x143))/0x8;if(_0x36c82b===_0x1f1fd4)break;else _0x363c15['push'](_0x363c15['shift']());}catch(_0x21d01f){_0x363c15['push'](_0x363c15['shift']());}}}(_0x46d3,0x765b8));var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!==_0x347f13(0x16e)?__ENHANCE_DEFAULT_OVERLAY_PATH__:_0x347f13(0x1b3),DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!==_0x347f13(0x16e)?__ENHANCE_DEFAULT_BACKEND_URL__:_0x347f13(0x164),DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!==_0x347f13(0x16e)?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console[_0x347f13(0x13f)](_0x347f13(0x1b1),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0xac1b61){const _0x47eba9=_0x347f13,_0x4aa31e=_0xac1b61['__development']??{};return{'callbackBypass':_0xac1b61['callbackBypass'],'overlay':{'enabled':!![],'position':_0x47eba9(0x177),'enableViteHmr':_0x4aa31e[_0x47eba9(0x1f9)]??DEFAULT_OVERLAY_HMR},'logLevel':_0x47eba9(0x1af),'swPath':_0x47eba9(0x1e0),'overlayPath':_0x4aa31e[_0x47eba9(0x201)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x47eba9(0x139),'security':_0x4aa31e[_0x47eba9(0x151)]??_0x47eba9(0x154),'backendUrl':_0x4aa31e[_0x47eba9(0x147)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x39082b=_0x347f13;try{const _0x5d377e=new URLSearchParams(window[_0x39082b(0x138)][_0x39082b(0x171)]);return _0x5d377e[_0x39082b(0x132)](_0x39082b(0x1c4))?.[_0x39082b(0x1f6)]()||'';}catch{return'';}}var LOG_PREFIX='[Enhance\x20Overlay]',overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;function _0x4baf(_0x37a3d6,_0x170d85){const _0x46d328=_0x46d3();return _0x4baf=function(_0x4baf45,_0x50b235){_0x4baf45=_0x4baf45-0x12a;let _0x5d9dac=_0x46d328[_0x4baf45];return _0x5d9dac;},_0x4baf(_0x37a3d6,_0x170d85);}async function loadOverlay(_0x5e50fc){const _0x47b39f=_0x347f13;console[_0x47b39f(0x13f)](LOG_PREFIX+'\x20loadOverlay()\x20called'),console[_0x47b39f(0x13f)](LOG_PREFIX+_0x47b39f(0x14c)+_0x5e50fc['overlayPath']),console[_0x47b39f(0x13f)](LOG_PREFIX+_0x47b39f(0x17c)+_0x5e50fc['enableViteHmr']),currentOptions=_0x5e50fc['options'],toggleHandler=_0x5e50fc[_0x47b39f(0x188)];if(overlayController){console[_0x47b39f(0x13f)](LOG_PREFIX+_0x47b39f(0x160)),updateOverlay();return;}if(overlayLoadPromise)return console[_0x47b39f(0x13f)](LOG_PREFIX+_0x47b39f(0x196)),overlayLoadPromise;console[_0x47b39f(0x13f)](LOG_PREFIX+'\x20Starting\x20fresh\x20overlay\x20load...'),overlayLoadPromise=doLoadOverlay(_0x5e50fc);try{await overlayLoadPromise,console[_0x47b39f(0x13f)](LOG_PREFIX+_0x47b39f(0x1ff));}catch(_0x5938db){console['error'](LOG_PREFIX+_0x47b39f(0x1ef),_0x5938db);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x1199cd){const _0x43841a=_0x347f13;console[_0x43841a(0x13f)](LOG_PREFIX+_0x43841a(0x1c8));if(typeof window===_0x43841a(0x16e)){console[_0x43841a(0x13f)](LOG_PREFIX+_0x43841a(0x1d5));return;}if(window[_0x43841a(0x1ac)]){console[_0x43841a(0x13f)](LOG_PREFIX+_0x43841a(0x172)),overlayController=window['__enhanceOverlay'],updateOverlay();return;}console[_0x43841a(0x13f)](LOG_PREFIX+_0x43841a(0x156));try{_0x1199cd[_0x43841a(0x1dc)]&&(console[_0x43841a(0x13f)](LOG_PREFIX+'\x20Setting\x20up\x20remote\x20HMR...'),await setupRemoteHMR(_0x1199cd[_0x43841a(0x201)]));console[_0x43841a(0x13f)](LOG_PREFIX+'\x20Importing\x20overlay\x20module\x20from:\x20'+_0x1199cd[_0x43841a(0x201)]);const _0x116b8f=Date[_0x43841a(0x14a)](),_0x329d7f=await import(_0x1199cd['overlayPath']);console[_0x43841a(0x13f)](LOG_PREFIX+'\x20Module\x20imported\x20in\x20'+(Date[_0x43841a(0x14a)]()-_0x116b8f)+'ms'),console[_0x43841a(0x13f)](LOG_PREFIX+_0x43841a(0x1c3),Object[_0x43841a(0x14e)](_0x329d7f));if(typeof _0x329d7f?.[_0x43841a(0x1de)]!==_0x43841a(0x13a)){console[_0x43841a(0x152)](LOG_PREFIX+_0x43841a(0x1c7)),console[_0x43841a(0x152)](LOG_PREFIX+_0x43841a(0x187),Object['keys'](_0x329d7f));return;}console['log'](LOG_PREFIX+_0x43841a(0x1b8));const _0x50ae44=_0x329d7f['createOverlay']();console[_0x43841a(0x13f)](LOG_PREFIX+_0x43841a(0x137),_0x50ae44),overlayController=_0x50ae44,window[_0x43841a(0x1ac)]=_0x50ae44,_0x50ae44[_0x43841a(0x188)](_0x1199cd[_0x43841a(0x188)]),console[_0x43841a(0x13f)](LOG_PREFIX+_0x43841a(0x204)),console[_0x43841a(0x13f)](LOG_PREFIX+_0x43841a(0x176)),updateOverlay();}catch(_0x541533){console['error'](LOG_PREFIX+_0x43841a(0x12e),_0x541533);}}function updateOverlay(){const _0x2e6463=_0x347f13;console[_0x2e6463(0x13f)](LOG_PREFIX+_0x2e6463(0x169)),console[_0x2e6463(0x13f)](LOG_PREFIX+_0x2e6463(0x144)+!!overlayController),console['log'](LOG_PREFIX+_0x2e6463(0x1f7)+!!currentOptions);if(!overlayController||!currentOptions){console[_0x2e6463(0x13f)](LOG_PREFIX+_0x2e6463(0x130));return;}const _0xfbb3b1=composeOverlayState(currentOptions);console[_0x2e6463(0x13f)](LOG_PREFIX+_0x2e6463(0x1ec),JSON['stringify'](_0xfbb3b1,null,0x2)),overlayController[_0x2e6463(0x1e6)](_0xfbb3b1),console[_0x2e6463(0x13f)](LOG_PREFIX+_0x2e6463(0x18e));}function composeOverlayState(_0x508553){const _0x1fee4a=_0x347f13,_0x3a012b=getEnhancementUrl();return console[_0x1fee4a(0x13f)](LOG_PREFIX+_0x1fee4a(0x18b)+_0x3a012b),console[_0x1fee4a(0x13f)](LOG_PREFIX+_0x1fee4a(0x134)+state[_0x1fee4a(0x19c)]),console[_0x1fee4a(0x13f)](LOG_PREFIX+_0x1fee4a(0x194)+state[_0x1fee4a(0x1f8)]),{'enhancementUrl':_0x3a012b,'enabled':state[_0x1fee4a(0x19c)],'controlled':state['controlled'],'overlayPosition':_0x508553[_0x1fee4a(0x166)]['position'],'securityMode':_0x508553[_0x1fee4a(0x151)],'backendBaseUrl':_0x508553[_0x1fee4a(0x147)],'appError':state[_0x1fee4a(0x1bf)]};}async function setupRemoteHMR(_0x35f57e){const _0x106815=_0x347f13;console[_0x106815(0x13f)](LOG_PREFIX+_0x106815(0x184)+_0x35f57e);if(typeof window===_0x106815(0x16e))return;try{const _0x123d1b=new URL(_0x35f57e,window[_0x106815(0x138)]['origin']),_0x32335f=_0x123d1b[_0x106815(0x1e8)];console[_0x106815(0x13f)](LOG_PREFIX+_0x106815(0x1cc)+_0x32335f+',\x20page\x20origin:\x20'+window[_0x106815(0x138)][_0x106815(0x1e8)]);if(_0x32335f===window[_0x106815(0x138)][_0x106815(0x1e8)]){console[_0x106815(0x13f)](LOG_PREFIX+_0x106815(0x18f));return;}console[_0x106815(0x13f)](LOG_PREFIX+_0x106815(0x162)),await ensureReactRefreshPreamble(_0x32335f),await ensureViteClient(_0x32335f),console['log'](LOG_PREFIX+_0x106815(0x17f));}catch(_0x5a97fb){console[_0x106815(0x1c2)](LOG_PREFIX+_0x106815(0x1b0),_0x5a97fb);}}async function ensureReactRefreshPreamble(_0x3df957){const _0x28487a=_0x347f13;window[_0x28487a(0x205)]??=new Set();if(window['__enhanceReactRefreshInstalledOrigins'][_0x28487a(0x1d2)](_0x3df957)){console[_0x28487a(0x13f)](LOG_PREFIX+_0x28487a(0x161)+_0x3df957);return;}console[_0x28487a(0x13f)](LOG_PREFIX+_0x28487a(0x1b2)+_0x3df957+_0x28487a(0x1a6));const _0x308e17=await import(_0x3df957+'/@react-refresh'),_0x1b6c0c=_0x308e17&&typeof _0x308e17===_0x28487a(0x1dd)&&_0x28487a(0x17e)in _0x308e17?_0x308e17[_0x28487a(0x17e)]:_0x308e17;if(!isRefreshRuntime(_0x1b6c0c)){console[_0x28487a(0x1c2)](LOG_PREFIX+'\x20Invalid\x20React\x20Refresh\x20runtime');return;}_0x1b6c0c[_0x28487a(0x142)](window),window[_0x28487a(0x181)]=()=>{},window['$RefreshSig$']=()=>_0x2677bf=>_0x2677bf,window[_0x28487a(0x1ee)]=!![],window['__enhanceReactRefreshInstalledOrigins'][_0x28487a(0x198)](_0x3df957),console[_0x28487a(0x13f)](LOG_PREFIX+'\x20React\x20Refresh\x20runtime\x20installed\x20for\x20'+_0x3df957);}async function ensureViteClient(_0x15c3b6){const _0x20ba99=_0x347f13;window[_0x20ba99(0x1d7)]??=new Set();if(window[_0x20ba99(0x1d7)][_0x20ba99(0x1d2)](_0x15c3b6)){console['log'](LOG_PREFIX+_0x20ba99(0x1fa)+_0x15c3b6);return;}console['log'](LOG_PREFIX+'\x20Loading\x20Vite\x20HMR\x20client\x20from\x20'+_0x15c3b6+_0x20ba99(0x1a6)),await import(_0x15c3b6+_0x20ba99(0x18d)),window[_0x20ba99(0x1d7)][_0x20ba99(0x198)](_0x15c3b6),console[_0x20ba99(0x13f)](LOG_PREFIX+'\x20Vite\x20HMR\x20client\x20loaded\x20for\x20'+_0x15c3b6);}function isRefreshRuntime(_0x3944b7){const _0x390823=_0x347f13;return typeof _0x3944b7==='object'&&_0x3944b7!==null&&'injectIntoGlobalHook'in _0x3944b7&&typeof _0x3944b7[_0x390823(0x142)]===_0x390823(0x13a);}var WORKER_MESSAGE_CONFIG=_0x347f13(0x186),WORKER_MESSAGE_DISABLE=_0x347f13(0x1c6),LOG_PREFIX2=_0x347f13(0x174),registration=null,currentOptions2=null;async function registerServiceWorker(_0x1ae75f){const _0x15e7c3=_0x347f13;console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x1f4)),console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x1fd)+_0x1ae75f['swPath']);if(!('serviceWorker'in navigator)){console[_0x15e7c3(0x1c2)](LOG_PREFIX2+_0x15e7c3(0x170));return;}console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x19e));const _0x3fc9e7=navigator[_0x15e7c3(0x15d)][_0x15e7c3(0x165)];console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x1e9),_0x3fc9e7?.[_0x15e7c3(0x150)]??_0x15e7c3(0x189)),console['log'](LOG_PREFIX2+_0x15e7c3(0x1eb),_0x3fc9e7?.[_0x15e7c3(0x1bc)]??_0x15e7c3(0x15f));const _0x8d3ddc=!!_0x3fc9e7;currentOptions2=_0x1ae75f,console['log'](LOG_PREFIX2+_0x15e7c3(0x15a));const _0x6c0cd6=await detectBlockingServiceWorker(_0x1ae75f[_0x15e7c3(0x1a4)]);if(_0x6c0cd6){console[_0x15e7c3(0x152)](LOG_PREFIX2+_0x15e7c3(0x195)+_0x6c0cd6),console[_0x15e7c3(0x152)](LOG_PREFIX2+_0x15e7c3(0x1d6));return;}console['log'](LOG_PREFIX2+'\x20No\x20blocking\x20SW\x20found');try{console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x190)+_0x1ae75f['swPath']+_0x15e7c3(0x17b)),registration=await navigator[_0x15e7c3(0x15d)][_0x15e7c3(0x155)](_0x1ae75f[_0x15e7c3(0x1a4)],{'scope':'/'}),console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x167),{'scope':registration[_0x15e7c3(0x1be)],'active':registration[_0x15e7c3(0x149)]?.[_0x15e7c3(0x150)],'waiting':registration[_0x15e7c3(0x1a0)]?.[_0x15e7c3(0x150)],'installing':registration['installing']?.[_0x15e7c3(0x150)]}),console['log'](LOG_PREFIX2+_0x15e7c3(0x1f1));const _0x3c5ede=await navigator[_0x15e7c3(0x15d)]['ready'];console['log'](LOG_PREFIX2+_0x15e7c3(0x14d),_0x3c5ede[_0x15e7c3(0x149)]?.[_0x15e7c3(0x150)]);const _0x700d7e=ownsCurrentController(_0x1ae75f[_0x15e7c3(0x1a4)]);state[_0x15e7c3(0x1f8)]=_0x700d7e,console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x136)+_0x700d7e),console['log'](LOG_PREFIX2+_0x15e7c3(0x1cb),navigator[_0x15e7c3(0x15d)][_0x15e7c3(0x165)]?.[_0x15e7c3(0x150)]??_0x15e7c3(0x189));if(!_0x8d3ddc&&!navigator['serviceWorker'][_0x15e7c3(0x165)]){console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x1aa)),window[_0x15e7c3(0x138)]['reload']();return;}console['log'](LOG_PREFIX2+_0x15e7c3(0x12d)),await sendConfiguration();if(state[_0x15e7c3(0x19c)]){const _0x2fa651=document[_0x15e7c3(0x1e2)]('[data-enhance-runtime-bootstrap]')!==null;console['log'](LOG_PREFIX2+_0x15e7c3(0x1f5)+_0x2fa651);if(!_0x2fa651){console['log'](LOG_PREFIX2+_0x15e7c3(0x1c9)),window[_0x15e7c3(0x138)][_0x15e7c3(0x208)]();return;}}console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x197)),updateOverlay(),console[_0x15e7c3(0x13f)](LOG_PREFIX2+_0x15e7c3(0x1fc));}catch(_0x598e41){console[_0x15e7c3(0x152)](LOG_PREFIX2+_0x15e7c3(0x1b7),_0x598e41);}}async function sendConfiguration(){const _0x152014=_0x347f13;console['log'](LOG_PREFIX2+_0x152014(0x158)),console['log'](LOG_PREFIX2+_0x152014(0x209)+state['enabled']+_0x152014(0x1ba)+!!currentOptions2);if(!state['enabled']||!currentOptions2){console[_0x152014(0x13f)](LOG_PREFIX2+_0x152014(0x13e));return;}const _0x206fc8=await resolveWorker();if(!_0x206fc8){console['warn'](LOG_PREFIX2+_0x152014(0x133));return;}const _0x5a056f={'callbackBypass':currentOptions2[_0x152014(0x1a7)],'securityMode':currentOptions2[_0x152014(0x151)]};console['log'](LOG_PREFIX2+_0x152014(0x13d),JSON[_0x152014(0x18c)](_0x5a056f,null,0x2)),_0x206fc8[_0x152014(0x191)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x5a056f}),console[_0x152014(0x13f)](LOG_PREFIX2+'\x20Config\x20sent\x20to\x20SW');}async function unregisterServiceWorker(_0x2046b6){const _0x4c3eed=_0x347f13;console[_0x4c3eed(0x13f)](LOG_PREFIX2+_0x4c3eed(0x145));if(!(_0x4c3eed(0x15d)in navigator)){console[_0x4c3eed(0x13f)](LOG_PREFIX2+_0x4c3eed(0x1ae));return;}try{const _0x59114a=registration??await navigator[_0x4c3eed(0x15d)][_0x4c3eed(0x1bd)]('/');if(!_0x59114a){console[_0x4c3eed(0x13f)](LOG_PREFIX2+'\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister');return;}console[_0x4c3eed(0x13f)](LOG_PREFIX2+_0x4c3eed(0x1b4),{'scope':_0x59114a[_0x4c3eed(0x1be)],'active':_0x59114a[_0x4c3eed(0x149)]?.[_0x4c3eed(0x150)],'waiting':_0x59114a[_0x4c3eed(0x1a0)]?.[_0x4c3eed(0x150)],'installing':_0x59114a[_0x4c3eed(0x16d)]?.[_0x4c3eed(0x150)]});const _0x286907=[_0x59114a['active']?.[_0x4c3eed(0x150)],_0x59114a['waiting']?.['scriptURL'],_0x59114a[_0x4c3eed(0x16d)]?.[_0x4c3eed(0x150)]],_0x40fea9=_0x286907[_0x4c3eed(0x1f0)](_0x2c4874=>_0x2c4874&&ownsServiceWorker(_0x2c4874,_0x2046b6));if(!_0x40fea9){console['log'](LOG_PREFIX2+'\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering');return;}_0x59114a[_0x4c3eed(0x149)]&&(console[_0x4c3eed(0x13f)](LOG_PREFIX2+_0x4c3eed(0x1ce)),_0x59114a[_0x4c3eed(0x149)]['postMessage']({'type':WORKER_MESSAGE_DISABLE})),console[_0x4c3eed(0x13f)](LOG_PREFIX2+_0x4c3eed(0x175)),await _0x59114a[_0x4c3eed(0x1ea)](),registration=null,currentOptions2=null,console['log'](LOG_PREFIX2+_0x4c3eed(0x1f2));}catch(_0x4c3e03){console[_0x4c3eed(0x152)](LOG_PREFIX2+_0x4c3eed(0x15b),_0x4c3e03);}}function _0x46d3(){const _0x3114fd=['warn','\x20Module\x20exports:','enhancementUrl','replaceState','enhance:disable','\x20Module\x20missing\x20createOverlay\x20export!','\x20doLoadOverlay()\x20starting...','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','runtimeURL','\x20Current\x20controller\x20after\x20ready:','\x20Overlay\x20origin:\x20','1133060GEzckg','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners','^3.22.4',',\x20owns=','has','\x20Current\x20URL:\x20','222aptjUe','\x20No\x20window\x20object\x20-\x20skipping','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','__viteHMRLoaded','href','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','__enhanceInitialized','enhance','enableViteHmr','object','createOverlay','startsWith','/sw-enhance.js','message','querySelector','hasEnhancement','5115180htRfzI','\x20Document\x20readyState:\x20','update','vite:beforeUpdate','origin','\x20Current\x20controller:','unregister','\x20Controller\x20state:','\x20Updating\x20overlay\x20with\x20state:','\x20enhancementId:\x20','__vite_plugin_react_preamble_installed__','\x20loadOverlay()\x20failed:','some','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','\x20SW\x20unregistered\x20successfully','http://','\x20registerServiceWorker()\x20called','\x20Enhancement\x20detection:\x20wasEnhanced=','trim','\x20currentOptions\x20exists:\x20','controlled','enableOverlayHmr','\x20Vite\x20client\x20already\x20loaded\x20for\x20','[Enhance\x20Runtime]','\x20registerServiceWorker()\x20complete','\x20swPath:\x20','hot','\x20loadOverlay()\x20complete','2085363dWNxwN','overlayPath','\x20Vite\x20error\x20detected:','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','\x20Overlay\x20controller\x20initialized\x20and\x20cached','__enhanceReactRefreshInstalledOrigins','explicitDisable','includes','reload','\x20state.enabled:\x20','\x20init()\x20complete\x20-\x20enhancement\x20mode','@enhance-eng/sandbox','__enhanceOptions','\x20Sending\x20customer\x20configuration...','\x20Failed\x20to\x20import/create\x20overlay:','\x20ownsServiceWorker?\x20scriptURL=','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','get','\x20No\x20service\x20worker\x20active\x20to\x20configure','\x20composeOverlayState\x20-\x20state.enabled:\x20','^4.1.1','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','\x20Controller\x20created:','location','/assets/enhance-runtime.js','function','\x20init()\x20complete\x20-\x20normal\x20mode','readyState','\x20Sending\x20customer\x20config\x20to\x20SW:','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','log','\x20resolveWorker:','^24.10.1','injectIntoGlobalHook','22598048cXugGc','\x20overlayController\x20exists:\x20','\x20unregisterServiceWorker()\x20called','disable','backendUrl','16108cQtsyQ','active','now','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','\x20overlayPath:\x20','\x20SW\x20ready!\x20Active:','keys','./dist/vite/index.js','scriptURL','security','error','672491YWpcjr','permissive','register','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','state:\x20','\x20sendConfiguration()\x20called','\x20First\x20initialization','\x20Checking\x20for\x20blocking\x20service\x20worker...','\x20Failed\x20to\x20unregister\x20service\x20worker:','dist','serviceWorker','^7.2.4','N/A','\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay','\x20React\x20Refresh\x20already\x20installed\x20for\x20','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','tsc\x20--noEmit','https://api.enhancelabs.ai','controller','overlay','\x20Registration\x20returned:','\x20Starting\x20overlay\x20load\x20(async)...','\x20updateOverlay()\x20called','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','__enhanceController','0.0.0','installing','undefined','replace','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser','search','\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20reusing','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','[Enhance\x20SW-Client]','\x20Unregistering\x20SW...','\x20Calling\x20updateOverlay()...','bottom-right','bin','./dist/index.cjs','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','\x20with\x20scope\x20\x27/\x27...','\x20enableViteHmr:\x20','toString','default','\x20HMR\x20setup\x20complete','version','$RefreshReg$','./dist/index.js','https://','\x20setupRemoteHMR()\x20for\x20','3036785pEySAL','enhance:configure','\x20Available\x20exports:','onToggle','none','module','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','stringify','/@vite/client','\x20Overlay\x20update\x20complete','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','\x20Registering\x20SW\x20at\x20','postMessage','init','title','\x20composeOverlayState\x20-\x20state.controlled:\x20','\x20BLOCKING\x20SW\x20detected:\x20','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','\x20Updating\x20overlay...','add','\x20enhancementUrl:\x20','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','0.3.19','enabled','searchParams','\x20Service\x20workers\x20supported','history','waiting','delete','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','swPath','\x20Normalized\x20options:','...','callbackBypass','err','bin/enhance-sandbox.js','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','./dist/vite/index.d.ts','__enhanceOverlay','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','info','\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):','[Enhance\x20Config]\x20Build-time\x20defaults:','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20','https://assets.enhancelabs.ai/overlay.js','\x20Found\x20registration:','toLowerCase','enhancementId','\x20Failed\x20to\x20register\x20service\x20worker:','\x20Calling\x20createOverlay()...',',\x20expected=',',\x20currentOptions:\x20','\x20init()\x20called\x20at\x20','state','getRegistration','scope','appError','^8.5.1','enhancement'];_0x46d3=function(){return _0x3114fd;};return _0x46d3();}function ownsServiceWorker(_0xfa6f45,_0x3e89d7){const _0x3eb345=_0x347f13,_0x4a48aa=typeof window!==_0x3eb345(0x16e)?window['location'][_0x3eb345(0x1e8)]:'',_0x100930=new URL(_0x3e89d7,_0x4a48aa||void 0x0)[_0x3eb345(0x1d8)],_0x29790b=_0xfa6f45===_0x100930||_0xfa6f45[_0x3eb345(0x207)]('sw-enhance');return console[_0x3eb345(0x13f)](LOG_PREFIX2+_0x3eb345(0x12f)+_0xfa6f45+_0x3eb345(0x1b9)+_0x100930+_0x3eb345(0x1d1)+_0x29790b),_0x29790b;}function ownsCurrentController(_0x4c1c75){const _0x250c5d=_0x347f13;if(typeof navigator===_0x250c5d(0x16e))return![];const _0x119d25=navigator[_0x250c5d(0x15d)]?.['controller'];if(!_0x119d25)return console[_0x250c5d(0x13f)](LOG_PREFIX2+'\x20No\x20current\x20controller'),![];return ownsServiceWorker(_0x119d25[_0x250c5d(0x150)],_0x4c1c75);}async function detectBlockingServiceWorker(_0x375bc6){const _0x3b6a1e=_0x347f13;if(!navigator[_0x3b6a1e(0x15d)])return null;try{const _0x2ed6ac=await navigator['serviceWorker']['getRegistration']('/');console[_0x3b6a1e(0x13f)](LOG_PREFIX2+'\x20detectBlocking\x20-\x20existing\x20registration:',_0x2ed6ac?.[_0x3b6a1e(0x149)]?.['scriptURL']??_0x3b6a1e(0x189));const _0x4fd3a6=_0x2ed6ac?.[_0x3b6a1e(0x149)]?.[_0x3b6a1e(0x150)];if(!_0x4fd3a6)return null;if(ownsServiceWorker(_0x4fd3a6,_0x375bc6))return null;return _0x4fd3a6;}catch(_0x55a129){return console[_0x3b6a1e(0x152)](LOG_PREFIX2+'\x20detectBlocking\x20error:',_0x55a129),null;}}async function resolveWorker(){const _0x27788b=_0x347f13,_0x880d97=registration??await navigator['serviceWorker']?.[_0x27788b(0x1bd)]('/'),_0x179dde=_0x880d97?.[_0x27788b(0x149)]??_0x880d97?.[_0x27788b(0x1a0)]??_0x880d97?.[_0x27788b(0x16d)]??null;return console[_0x27788b(0x13f)](LOG_PREFIX2+_0x27788b(0x140),_0x179dde?.[_0x27788b(0x150)]??'none',_0x27788b(0x157)+(_0x179dde?.['state']??_0x27788b(0x15f))),_0x179dde;}var LOG_PREFIX3=_0x347f13(0x1fb);function isInitialized(){const _0x4c4f96=_0x347f13;return typeof window!==_0x4c4f96(0x16e)&&window['__enhanceInitialized']===!![];}function setInitialized(_0x1e1d8f){const _0xdaae17=_0x347f13;typeof window!==_0xdaae17(0x16e)&&(window[_0xdaae17(0x1da)]=_0x1e1d8f);}function getOptions(){const _0x2c19e6=_0x347f13;return typeof window!==_0x2c19e6(0x16e)?window[_0x2c19e6(0x12c)]??null:null;}function setOptions(_0x410bc6){const _0x3e159d=_0x347f13;typeof window!==_0x3e159d(0x16e)&&(window[_0x3e159d(0x12c)]=_0x410bc6);}var Enhance={'init'(_0x2295aa){const _0x38bd98=_0x347f13,_0x5b6dad=Date[_0x38bd98(0x14a)]();console['log'](LOG_PREFIX3+_0x38bd98(0x1bb)+_0x5b6dad),console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x1d3)+window[_0x38bd98(0x138)]['href']),console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x1e5)+document[_0x38bd98(0x13c)]),console[_0x38bd98(0x13f)](LOG_PREFIX3+'\x20Raw\x20options:',JSON[_0x38bd98(0x18c)](_0x2295aa,null,0x2));if(isInitialized())return console['warn'](LOG_PREFIX3+_0x38bd98(0x16a)),window[_0x38bd98(0x16b)]??createController();setInitialized(!![]),console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x159));const _0x28912f=normalizeOptions(_0x2295aa);setOptions(_0x28912f),console['log'](LOG_PREFIX3+_0x38bd98(0x1a5),JSON[_0x38bd98(0x18c)](_0x28912f,null,0x2));const _0x224509=parseUrlParams();console[_0x38bd98(0x13f)](LOG_PREFIX3+'\x20URL\x20params\x20parsed:',JSON[_0x38bd98(0x18c)](_0x224509,null,0x2));if(_0x224509[_0x38bd98(0x206)])return cleanUrlParam('enhance'),console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x203)),createController();if(_0x224509[_0x38bd98(0x1e3)])return console[_0x38bd98(0x13f)](LOG_PREFIX3+'\x20Enhancement\x20mode\x20ENABLED'),console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x199)+_0x224509['enhancementUrl']),console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x1ed)+_0x224509[_0x38bd98(0x1b6)]),state['enabled']=!![],console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x168)),void loadOverlay({'overlayPath':_0x28912f['overlayPath'],'enableViteHmr':_0x28912f['overlay']['enableViteHmr'],'options':_0x28912f,'onToggle':handleToggle}),console[_0x38bd98(0x13f)](LOG_PREFIX3+'\x20Starting\x20SW\x20registration\x20(async)...'),void registerServiceWorker(_0x28912f),console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x12a)),createController();return console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x1d9)),console['log'](LOG_PREFIX3+'\x20Unregistering\x20any\x20existing\x20SW...'),void unregisterServiceWorker(_0x28912f[_0x38bd98(0x1a4)]),console[_0x38bd98(0x13f)](LOG_PREFIX3+_0x38bd98(0x13b)),import.meta['hot']&&(console['log'](LOG_PREFIX3+_0x38bd98(0x1cf)),import.meta[_0x38bd98(0x1fe)]['on']('vite:error',_0x88793d=>{const _0x1ba3eb=_0x38bd98;console[_0x1ba3eb(0x13f)](LOG_PREFIX3+_0x1ba3eb(0x202),_0x88793d),state[_0x1ba3eb(0x1bf)]={'message':_0x88793d[_0x1ba3eb(0x1a8)][_0x1ba3eb(0x1e1)]},updateOverlay();}),import.meta['hot']['on'](_0x38bd98(0x1e7),()=>{const _0x543321=_0x38bd98;state[_0x543321(0x1bf)]&&(console[_0x543321(0x13f)](LOG_PREFIX3+_0x543321(0x19a)),state[_0x543321(0x1bf)]=null,updateOverlay());})),createController();}};function createController(){const _0x55ebe0=_0x347f13,_0x40c985={'enable'(){const _0xf07fa7=_0x4baf,_0x498d53=getOptions();if(!_0x498d53)return;state[_0xf07fa7(0x19c)]=!![],void loadOverlay({'overlayPath':_0x498d53[_0xf07fa7(0x201)],'enableViteHmr':_0x498d53[_0xf07fa7(0x166)][_0xf07fa7(0x1dc)],'options':_0x498d53,'onToggle':handleToggle}),void registerServiceWorker(_0x498d53),void sendConfiguration(),updateOverlay();},'disable'(){const _0x243036=_0x4baf,_0x15909e=getOptions();if(!_0x15909e)return;state[_0x243036(0x19c)]=![],state[_0x243036(0x1f8)]=![],updateOverlay(),void unregisterServiceWorker(_0x15909e[_0x243036(0x1a4)]);},'status'(){const _0xc2c7e5=_0x4baf;return{'enabled':state[_0xc2c7e5(0x19c)],'controlled':state[_0xc2c7e5(0x1f8)]};}};return typeof window!==_0x55ebe0(0x16e)&&(window['__enhanceController']=_0x40c985),_0x40c985;}function handleToggle(){const _0x23dfb4=_0x347f13,_0x5cf269=createController();state[_0x23dfb4(0x19c)]?_0x5cf269[_0x23dfb4(0x146)]():_0x5cf269['enable']();}function parseUrlParams(){const _0x521935=_0x347f13,_0x53cebd=new URL(window[_0x521935(0x138)][_0x521935(0x1d8)]),_0x37a80a=_0x53cebd[_0x521935(0x19d)]['get'](_0x521935(0x1db))?.[_0x521935(0x1b5)](),_0x54807d=_0x53cebd[_0x521935(0x19d)][_0x521935(0x132)](_0x521935(0x1c4)),_0x5803a2=_0x53cebd[_0x521935(0x19d)][_0x521935(0x132)](_0x521935(0x1c1));return{'hasEnhancement':Boolean(_0x54807d||_0x5803a2),'explicitDisable':_0x37a80a==='0'||_0x37a80a==='false'||_0x37a80a==='off','enhancementUrl':_0x54807d,'enhancementId':_0x5803a2};}function cleanUrlParam(_0x4dec3d){const _0x3d8e8f=_0x347f13,_0x4c1ebb=new URL(window['location'][_0x3d8e8f(0x1d8)]);_0x4c1ebb[_0x3d8e8f(0x19d)][_0x3d8e8f(0x1d2)](_0x4dec3d)&&(_0x4c1ebb[_0x3d8e8f(0x19d)][_0x3d8e8f(0x1a1)](_0x4dec3d),window[_0x3d8e8f(0x19f)][_0x3d8e8f(0x1c5)](null,document[_0x3d8e8f(0x193)],_0x4c1ebb[_0x3d8e8f(0x17d)]()));}var package_default={'name':_0x347f13(0x12b),'version':_0x347f13(0x19b),'type':_0x347f13(0x18a),'description':_0x347f13(0x1a3),'license':'MIT','main':_0x347f13(0x179),'module':'./dist/index.js','types':'./dist/index.d.ts','exports':{'.':{'types':'./dist/index.d.ts','import':_0x347f13(0x182),'require':_0x347f13(0x179)},'./vite':{'types':_0x347f13(0x1ab),'import':_0x347f13(0x14f)}},'files':[_0x347f13(0x15c),_0x347f13(0x178),'enhance.config.sample.json'],'bin':{'enhance-sandbox':_0x347f13(0x1a9)},'scripts':{'typecheck':_0x347f13(0x163),'dev':_0x347f13(0x1a2),'dev:build':_0x347f13(0x1ad),'dev:staging':_0x347f13(0x173),'dev:staging:build':_0x347f13(0x14b),'build':_0x347f13(0x17a),'build:release':_0x347f13(0x131),'version':'pnpm\x20version\x20patch\x20--no-git-tag-version'},'dependencies':{'commander':'^11.1.0','zod':_0x347f13(0x1d0)},'devDependencies':{'@types/node':_0x347f13(0x141),'javascript-obfuscator':_0x347f13(0x135),'tsup':_0x347f13(0x1c0),'vite':_0x347f13(0x15e)},'publishConfig':{'access':'public'}},DEFAULT_SERVICE_WORKER_PATH=_0x347f13(0x1e0),DEFAULT_RUNTIME_PATH=_0x347f13(0x139),PACKAGE_VERSION=typeof package_default[_0x347f13(0x180)]==='string'?package_default[_0x347f13(0x180)]:_0x347f13(0x16c);function normalizeAssetPath(_0x37afc8){const _0xd06f22=_0x347f13;if(!_0x37afc8)return _0x37afc8;if(_0x37afc8[_0xd06f22(0x1df)](_0xd06f22(0x1f3))||_0x37afc8[_0xd06f22(0x1df)](_0xd06f22(0x183)))return _0x37afc8;const _0x5b8c5e=_0x37afc8[_0xd06f22(0x16f)](/^\.\//,'');return _0x5b8c5e[_0xd06f22(0x1df)]('/')?_0x5b8c5e:'/'+_0x5b8c5e;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x4d19eb){const _0x2c9fcd=_0x347f13;return Enhance[_0x2c9fcd(0x192)](_0x4d19eb);},'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 _0x99d97b=_0x347f13;return Enhance2[_0x99d97b(0x1ca)]();}export{Enhance2 as Enhance,getAssetManifest,resolveServiceWorkerPath,runtimeURL,serviceWorkerURL};
1
+ const _0x2e9f25=_0x43ff;(function(_0x17cf35,_0x3a5797){const _0x1c27c5=_0x43ff,_0x5306d8=_0x17cf35();while(!![]){try{const _0x315d89=parseInt(_0x1c27c5(0x91))/0x1*(-parseInt(_0x1c27c5(0x11b))/0x2)+-parseInt(_0x1c27c5(0xbb))/0x3+-parseInt(_0x1c27c5(0x121))/0x4*(parseInt(_0x1c27c5(0xad))/0x5)+-parseInt(_0x1c27c5(0x6e))/0x6+-parseInt(_0x1c27c5(0xd1))/0x7+parseInt(_0x1c27c5(0x11f))/0x8*(parseInt(_0x1c27c5(0x7a))/0x9)+parseInt(_0x1c27c5(0x11e))/0xa;if(_0x315d89===_0x3a5797)break;else _0x5306d8['push'](_0x5306d8['shift']());}catch(_0x42e417){_0x5306d8['push'](_0x5306d8['shift']());}}}(_0x3f76,0xb4d12));var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!==_0x2e9f25(0xef)?__ENHANCE_DEFAULT_OVERLAY_PATH__:_0x2e9f25(0xcc),DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!==_0x2e9f25(0xef)?__ENHANCE_DEFAULT_BACKEND_URL__:_0x2e9f25(0xc4),DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!=='undefined'?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console[_0x2e9f25(0x114)]('[Enhance\x20Config]\x20Build-time\x20defaults:',{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x5823ea){const _0x44c820=_0x2e9f25,_0x3b0962=_0x5823ea[_0x44c820(0xb2)]??{};return{'callbackBypass':_0x5823ea[_0x44c820(0xc0)]??[],'overlay':{'enabled':!![],'position':_0x44c820(0xdb),'enableViteHmr':_0x3b0962[_0x44c820(0xb7)]??DEFAULT_OVERLAY_HMR},'logLevel':_0x44c820(0xd3),'swPath':_0x44c820(0xf0),'overlayPath':_0x3b0962['overlayPath']??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x44c820(0xd4),'security':_0x3b0962[_0x44c820(0x8d)]??'permissive','backendUrl':_0x3b0962[_0x44c820(0xa5)]??DEFAULT_BACKEND_URL};}function _0x43ff(_0x3e82cf,_0x568d7b){_0x3e82cf=_0x3e82cf-0x64;const _0x3f76fc=_0x3f76();let _0x43ff92=_0x3f76fc[_0x3e82cf];return _0x43ff92;}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x16bcd9=_0x2e9f25;try{const _0x5c19d0=new URLSearchParams(window[_0x16bcd9(0xb8)]['search']);return _0x5c19d0[_0x16bcd9(0xdf)]('enhancementUrl')?.['trim']()||'';}catch{return'';}}var LOG_PREFIX=_0x2e9f25(0x115),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x68883c){const _0x23e30c=_0x2e9f25;console[_0x23e30c(0x114)](LOG_PREFIX+_0x23e30c(0x10b)),console[_0x23e30c(0x114)](LOG_PREFIX+_0x23e30c(0x136)+_0x68883c[_0x23e30c(0x130)]),console[_0x23e30c(0x114)](LOG_PREFIX+'\x20enableViteHmr:\x20'+_0x68883c[_0x23e30c(0x108)]),currentOptions=_0x68883c['options'],toggleHandler=_0x68883c['onToggle'];if(overlayController){console[_0x23e30c(0x114)](LOG_PREFIX+_0x23e30c(0x11c)),updateOverlay();return;}if(overlayLoadPromise)return console['log'](LOG_PREFIX+'\x20Load\x20already\x20in\x20progress\x20-\x20waiting...'),overlayLoadPromise;console[_0x23e30c(0x114)](LOG_PREFIX+'\x20Starting\x20fresh\x20overlay\x20load...'),overlayLoadPromise=doLoadOverlay(_0x68883c);try{await overlayLoadPromise,console['log'](LOG_PREFIX+'\x20loadOverlay()\x20complete');}catch(_0x2c9bea){console[_0x23e30c(0x7e)](LOG_PREFIX+_0x23e30c(0x98),_0x2c9bea);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x4a7513){const _0x38be39=_0x2e9f25;console[_0x38be39(0x114)](LOG_PREFIX+_0x38be39(0x6c));if(typeof window===_0x38be39(0xef)){console[_0x38be39(0x114)](LOG_PREFIX+_0x38be39(0x135));return;}if(window['__enhanceOverlay']){console[_0x38be39(0x114)](LOG_PREFIX+'\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit'),overlayController=window[_0x38be39(0x113)];return;}console[_0x38be39(0x114)](LOG_PREFIX+_0x38be39(0x9e));try{_0x4a7513[_0x38be39(0x108)]&&(console[_0x38be39(0x114)](LOG_PREFIX+'\x20Setting\x20up\x20remote\x20HMR...'),await setupRemoteHMR(_0x4a7513[_0x38be39(0x130)]));console['log'](LOG_PREFIX+'\x20Importing\x20overlay\x20module\x20from:\x20'+_0x4a7513[_0x38be39(0x130)]);const _0x91d775=Date[_0x38be39(0x110)](),_0x1da9d2=await import(_0x4a7513[_0x38be39(0x130)]);console['log'](LOG_PREFIX+_0x38be39(0xc5)+(Date[_0x38be39(0x110)]()-_0x91d775)+'ms'),console['log'](LOG_PREFIX+_0x38be39(0xb4),Object[_0x38be39(0x10e)](_0x1da9d2));if(typeof _0x1da9d2?.[_0x38be39(0x112)]!==_0x38be39(0xc2)){console[_0x38be39(0x7e)](LOG_PREFIX+_0x38be39(0xc8)),console[_0x38be39(0x7e)](LOG_PREFIX+'\x20Available\x20exports:',Object[_0x38be39(0x10e)](_0x1da9d2));return;}console['log'](LOG_PREFIX+_0x38be39(0xe8));const _0x1bab6a=_0x1da9d2['createOverlay']();console[_0x38be39(0x114)](LOG_PREFIX+'\x20Controller\x20created:',_0x1bab6a),overlayController=_0x1bab6a,window[_0x38be39(0x113)]=_0x1bab6a,_0x1bab6a[_0x38be39(0x105)](_0x4a7513['onToggle']),console[_0x38be39(0x114)](LOG_PREFIX+_0x38be39(0x134)),console[_0x38be39(0x114)](LOG_PREFIX+'\x20Calling\x20updateOverlay()...'),updateOverlay();}catch(_0x44d776){console[_0x38be39(0x7e)](LOG_PREFIX+_0x38be39(0x6f),_0x44d776);}}function updateOverlay(){const _0x2083fc=_0x2e9f25;console['log'](LOG_PREFIX+_0x2083fc(0xd8)),console[_0x2083fc(0x114)](LOG_PREFIX+_0x2083fc(0xf5)+!!overlayController),console['log'](LOG_PREFIX+_0x2083fc(0x117)+!!currentOptions);if(!overlayController||!currentOptions){console[_0x2083fc(0x114)](LOG_PREFIX+_0x2083fc(0xba));return;}const _0x35308b=composeOverlayState(currentOptions);console[_0x2083fc(0x114)](LOG_PREFIX+_0x2083fc(0x80),JSON[_0x2083fc(0xf7)](_0x35308b,null,0x2)),overlayController[_0x2083fc(0xe5)](_0x35308b),console[_0x2083fc(0x114)](LOG_PREFIX+_0x2083fc(0x79));}function composeOverlayState(_0x284af8){const _0x3bb7df=_0x2e9f25,_0x38a0ed=getEnhancementUrl();return console[_0x3bb7df(0x114)](LOG_PREFIX+_0x3bb7df(0xb0)+_0x38a0ed),console[_0x3bb7df(0x114)](LOG_PREFIX+_0x3bb7df(0x7d)+state['enabled']),console[_0x3bb7df(0x114)](LOG_PREFIX+_0x3bb7df(0xc1)+state[_0x3bb7df(0x89)]),{'enhancementUrl':_0x38a0ed,'enabled':state[_0x3bb7df(0x72)],'controlled':state[_0x3bb7df(0x89)],'overlayPosition':_0x284af8[_0x3bb7df(0xe2)][_0x3bb7df(0x68)],'securityMode':_0x284af8['security'],'backendBaseUrl':_0x284af8[_0x3bb7df(0xa5)],'appError':state[_0x3bb7df(0xec)]};}async function setupRemoteHMR(_0x3598a1){const _0x3356ee=_0x2e9f25;console['log'](LOG_PREFIX+_0x3356ee(0x120)+_0x3598a1);if(typeof window==='undefined')return;try{const _0x4f34aa=new URL(_0x3598a1,window['location'][_0x3356ee(0xb1)]),_0x3e92b5=_0x4f34aa['origin'];console['log'](LOG_PREFIX+_0x3356ee(0xa3)+_0x3e92b5+_0x3356ee(0xb9)+window[_0x3356ee(0xb8)]['origin']);if(_0x3e92b5===window[_0x3356ee(0xb8)][_0x3356ee(0xb1)]){console['log'](LOG_PREFIX+_0x3356ee(0xa7));return;}console[_0x3356ee(0x114)](LOG_PREFIX+_0x3356ee(0x97)),await ensureReactRefreshPreamble(_0x3e92b5),await ensureViteClient(_0x3e92b5),console[_0x3356ee(0x114)](LOG_PREFIX+_0x3356ee(0xea));}catch(_0x4ee93b){console[_0x3356ee(0xf1)](LOG_PREFIX+_0x3356ee(0x9a),_0x4ee93b);}}async function ensureReactRefreshPreamble(_0x4e004d){const _0x38f746=_0x2e9f25;window[_0x38f746(0x90)]??=new Set();if(window['__enhanceReactRefreshInstalledOrigins']['has'](_0x4e004d)){console[_0x38f746(0x114)](LOG_PREFIX+_0x38f746(0x67)+_0x4e004d);return;}console['log'](LOG_PREFIX+'\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20'+_0x4e004d+'...');const _0x3d15d2=await import(_0x4e004d+_0x38f746(0x64)),_0x448432=_0x3d15d2&&typeof _0x3d15d2==='object'&&'default'in _0x3d15d2?_0x3d15d2[_0x38f746(0xd2)]:_0x3d15d2;if(!isRefreshRuntime(_0x448432)){console['warn'](LOG_PREFIX+_0x38f746(0x95));return;}_0x448432['injectIntoGlobalHook'](window),window[_0x38f746(0xe4)]=()=>{},window[_0x38f746(0x88)]=()=>_0x37e8be=>_0x37e8be,window[_0x38f746(0xb6)]=!![],window[_0x38f746(0x90)][_0x38f746(0x11d)](_0x4e004d),console[_0x38f746(0x114)](LOG_PREFIX+_0x38f746(0x101)+_0x4e004d);}async function ensureViteClient(_0x27f569){const _0x22fc8b=_0x2e9f25;window[_0x22fc8b(0x100)]??=new Set();if(window['__viteHMRLoaded'][_0x22fc8b(0xdd)](_0x27f569)){console[_0x22fc8b(0x114)](LOG_PREFIX+'\x20Vite\x20client\x20already\x20loaded\x20for\x20'+_0x27f569);return;}console[_0x22fc8b(0x114)](LOG_PREFIX+_0x22fc8b(0x8a)+_0x27f569+'...'),await import(_0x27f569+'/@vite/client'),window[_0x22fc8b(0x100)][_0x22fc8b(0x11d)](_0x27f569),console[_0x22fc8b(0x114)](LOG_PREFIX+'\x20Vite\x20HMR\x20client\x20loaded\x20for\x20'+_0x27f569);}function isRefreshRuntime(_0xa2e956){const _0x3986cb=_0x2e9f25;return typeof _0xa2e956==='object'&&_0xa2e956!==null&&'injectIntoGlobalHook'in _0xa2e956&&typeof _0xa2e956[_0x3986cb(0x8b)]===_0x3986cb(0xc2);}var WORKER_MESSAGE_CONFIG=_0x2e9f25(0x103),WORKER_MESSAGE_DISABLE=_0x2e9f25(0xa2),LOG_PREFIX2='[Enhance\x20SW-Client]',registration=null,currentOptions2=null;async function registerServiceWorker(_0x494810){const _0x26dbda=_0x2e9f25;console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0x83)),console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0xb3)+_0x494810[_0x26dbda(0xc9)]);if(!('serviceWorker'in navigator)){console[_0x26dbda(0xf1)](LOG_PREFIX2+_0x26dbda(0x6a));return;}console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0xf6));const _0x592d3d=navigator[_0x26dbda(0xa9)][_0x26dbda(0xeb)];console['log'](LOG_PREFIX2+_0x26dbda(0xd5),_0x592d3d?.['scriptURL']??_0x26dbda(0xce)),console['log'](LOG_PREFIX2+_0x26dbda(0x8e),_0x592d3d?.['state']??_0x26dbda(0xb5));const _0x440cf9=!!_0x592d3d;currentOptions2=_0x494810,console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0x65));const _0x12f60c=await detectBlockingServiceWorker(_0x494810['swPath']);if(_0x12f60c){console[_0x26dbda(0x7e)](LOG_PREFIX2+'\x20BLOCKING\x20SW\x20detected:\x20'+_0x12f60c),console['error'](LOG_PREFIX2+_0x26dbda(0x129));return;}console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0x122));try{console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0x10d)+_0x494810['swPath']+'\x20with\x20scope\x20\x27/\x27...'),registration=await navigator[_0x26dbda(0xa9)]['register'](_0x494810['swPath'],{'scope':'/'}),console['log'](LOG_PREFIX2+_0x26dbda(0x7c),{'scope':registration['scope'],'active':registration['active']?.['scriptURL'],'waiting':registration[_0x26dbda(0xc7)]?.[_0x26dbda(0xa4)],'installing':registration[_0x26dbda(0x125)]?.[_0x26dbda(0xa4)]}),console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0xac));const _0x98692e=await navigator[_0x26dbda(0xa9)][_0x26dbda(0x6d)];console['log'](LOG_PREFIX2+'\x20SW\x20ready!\x20Active:',_0x98692e['active']?.[_0x26dbda(0xa4)]);const _0x3b534a=ownsCurrentController(_0x494810[_0x26dbda(0xc9)]);state['controlled']=_0x3b534a,console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0x107)+_0x3b534a),console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0x106),navigator[_0x26dbda(0xa9)]['controller']?.[_0x26dbda(0xa4)]??_0x26dbda(0xce));if(!_0x440cf9&&!navigator['serviceWorker'][_0x26dbda(0xeb)]){console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0x71)),window[_0x26dbda(0xb8)][_0x26dbda(0x7b)]();return;}console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0xfe)),await sendConfiguration();if(state[_0x26dbda(0x72)]){const _0x36027b=document[_0x26dbda(0xe9)]('[data-enhance-runtime-bootstrap]')!==null;console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0x12e)+_0x36027b);if(!_0x36027b){console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0xf2)),window[_0x26dbda(0xb8)][_0x26dbda(0x7b)]();return;}}console['log'](LOG_PREFIX2+'\x20Updating\x20overlay...'),updateOverlay(),console[_0x26dbda(0x114)](LOG_PREFIX2+_0x26dbda(0xe0));}catch(_0x24e28e){console[_0x26dbda(0x7e)](LOG_PREFIX2+'\x20Failed\x20to\x20register\x20service\x20worker:',_0x24e28e);}}async function sendConfiguration(){const _0x2dc1e0=_0x2e9f25;console[_0x2dc1e0(0x114)](LOG_PREFIX2+_0x2dc1e0(0x102)),console[_0x2dc1e0(0x114)](LOG_PREFIX2+_0x2dc1e0(0x86)+state[_0x2dc1e0(0x72)]+_0x2dc1e0(0x73)+!!currentOptions2);if(!state[_0x2dc1e0(0x72)]||!currentOptions2){console[_0x2dc1e0(0x114)](LOG_PREFIX2+_0x2dc1e0(0xc3));return;}const _0xec2d34=await resolveWorker();if(!_0xec2d34){console[_0x2dc1e0(0xf1)](LOG_PREFIX2+_0x2dc1e0(0x96));return;}const _0x54ca02={'callbackBypass':currentOptions2['callbackBypass'],'securityMode':currentOptions2['security']};console[_0x2dc1e0(0x114)](LOG_PREFIX2+_0x2dc1e0(0xf9),JSON[_0x2dc1e0(0xf7)](_0x54ca02,null,0x2)),_0xec2d34[_0x2dc1e0(0x8c)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x54ca02}),console[_0x2dc1e0(0x114)](LOG_PREFIX2+_0x2dc1e0(0x12c));}async function unregisterServiceWorker(_0x5ad379){const _0x43d60a=_0x2e9f25;console[_0x43d60a(0x114)](LOG_PREFIX2+'\x20unregisterServiceWorker()\x20called');if(!('serviceWorker'in navigator)){console[_0x43d60a(0x114)](LOG_PREFIX2+_0x43d60a(0x85));return;}try{const _0xee0937=registration??await navigator['serviceWorker'][_0x43d60a(0x9d)]('/');if(!_0xee0937){console[_0x43d60a(0x114)](LOG_PREFIX2+_0x43d60a(0x133));return;}console['log'](LOG_PREFIX2+_0x43d60a(0x93),{'scope':_0xee0937['scope'],'active':_0xee0937[_0x43d60a(0xee)]?.['scriptURL'],'waiting':_0xee0937[_0x43d60a(0xc7)]?.['scriptURL'],'installing':_0xee0937[_0x43d60a(0x125)]?.[_0x43d60a(0xa4)]});const _0x2578c2=[_0xee0937['active']?.[_0x43d60a(0xa4)],_0xee0937['waiting']?.[_0x43d60a(0xa4)],_0xee0937[_0x43d60a(0x125)]?.['scriptURL']],_0x3958e9=_0x2578c2[_0x43d60a(0xdc)](_0x4d5b0a=>_0x4d5b0a&&ownsServiceWorker(_0x4d5b0a,_0x5ad379));if(!_0x3958e9){console[_0x43d60a(0x114)](LOG_PREFIX2+_0x43d60a(0xe3));return;}_0xee0937['active']&&(console[_0x43d60a(0x114)](LOG_PREFIX2+_0x43d60a(0xab)),_0xee0937['active'][_0x43d60a(0x8c)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x43d60a(0x114)](LOG_PREFIX2+_0x43d60a(0x74)),await _0xee0937[_0x43d60a(0x69)](),registration=null,currentOptions2=null,console[_0x43d60a(0x114)](LOG_PREFIX2+_0x43d60a(0xa0));}catch(_0x3c377f){console[_0x43d60a(0x7e)](LOG_PREFIX2+_0x43d60a(0xae),_0x3c377f);}}function ownsServiceWorker(_0x28b618,_0x5266cb){const _0x40b6e7=_0x2e9f25,_0x364cfc=typeof window!==_0x40b6e7(0xef)?window[_0x40b6e7(0xb8)]['origin']:'',_0x346a5d=new URL(_0x5266cb,_0x364cfc||void 0x0)['href'],_0x3cea22=_0x28b618===_0x346a5d||_0x28b618['includes'](_0x40b6e7(0x75));return console[_0x40b6e7(0x114)](LOG_PREFIX2+'\x20ownsServiceWorker?\x20scriptURL='+_0x28b618+',\x20expected='+_0x346a5d+_0x40b6e7(0x127)+_0x3cea22),_0x3cea22;}function ownsCurrentController(_0x328c4f){const _0x5028a5=_0x2e9f25;if(typeof navigator===_0x5028a5(0xef))return![];const _0x2584f0=navigator[_0x5028a5(0xa9)]?.[_0x5028a5(0xeb)];if(!_0x2584f0)return console['log'](LOG_PREFIX2+'\x20No\x20current\x20controller'),![];return ownsServiceWorker(_0x2584f0[_0x5028a5(0xa4)],_0x328c4f);}async function detectBlockingServiceWorker(_0x5e4d85){const _0x178009=_0x2e9f25;if(!navigator[_0x178009(0xa9)])return null;try{const _0x9ef595=await navigator['serviceWorker']['getRegistration']('/');console[_0x178009(0x114)](LOG_PREFIX2+'\x20detectBlocking\x20-\x20existing\x20registration:',_0x9ef595?.[_0x178009(0xee)]?.[_0x178009(0xa4)]??'none');const _0x2a5b5b=_0x9ef595?.[_0x178009(0xee)]?.[_0x178009(0xa4)];if(!_0x2a5b5b)return null;if(ownsServiceWorker(_0x2a5b5b,_0x5e4d85))return null;return _0x2a5b5b;}catch(_0x132f62){return console[_0x178009(0x7e)](LOG_PREFIX2+_0x178009(0x132),_0x132f62),null;}}async function resolveWorker(){const _0x2b3a52=_0x2e9f25,_0x2e697f=registration??await navigator[_0x2b3a52(0xa9)]?.[_0x2b3a52(0x9d)]('/'),_0x9e7f31=_0x2e697f?.['active']??_0x2e697f?.[_0x2b3a52(0xc7)]??_0x2e697f?.[_0x2b3a52(0x125)]??null;return console[_0x2b3a52(0x114)](LOG_PREFIX2+_0x2b3a52(0xfd),_0x9e7f31?.[_0x2b3a52(0xa4)]??_0x2b3a52(0xce),_0x2b3a52(0x92)+(_0x9e7f31?.[_0x2b3a52(0xf8)]??_0x2b3a52(0xb5))),_0x9e7f31;}var LOG_PREFIX3='[Enhance\x20Runtime]';function isInitialized(){const _0x312bbe=_0x2e9f25;return typeof window!==_0x312bbe(0xef)&&window['__enhanceInitialized']===!![];}function setInitialized(_0x55a512){const _0x51022e=_0x2e9f25;typeof window!=='undefined'&&(window[_0x51022e(0xa1)]=_0x55a512);}function getOptions(){const _0x389efa=_0x2e9f25;return typeof window!=='undefined'?window[_0x389efa(0xfb)]??null:null;}function setOptions(_0x45a5c8){const _0x32df26=_0x2e9f25;typeof window!=='undefined'&&(window[_0x32df26(0xfb)]=_0x45a5c8);}var Enhance={'init'(_0x194fe7={}){const _0x393c50=_0x2e9f25,_0x365cdc=Date['now']();console[_0x393c50(0x114)](LOG_PREFIX3+'\x20init()\x20called\x20at\x20'+_0x365cdc),console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0x118)+window[_0x393c50(0xb8)]['href']),console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0xcf)+document[_0x393c50(0x82)]),console['log'](LOG_PREFIX3+_0x393c50(0xa8),JSON[_0x393c50(0xf7)](_0x194fe7,null,0x2));if(isInitialized())return console[_0x393c50(0xf1)](LOG_PREFIX3+_0x393c50(0x119)),window[_0x393c50(0x124)]??createController();setInitialized(!![]),console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0x77));const _0x1b20ac=normalizeOptions(_0x194fe7);setOptions(_0x1b20ac),console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0x9f),JSON[_0x393c50(0xf7)](_0x1b20ac,null,0x2));const _0x497c54=parseUrlParams();console['log'](LOG_PREFIX3+_0x393c50(0xbf),JSON[_0x393c50(0xf7)](_0x497c54,null,0x2));if(_0x497c54[_0x393c50(0x8f)])return cleanUrlParam(_0x393c50(0x76)),console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0x104)),createController();if(_0x497c54[_0x393c50(0x131)])return console['log'](LOG_PREFIX3+_0x393c50(0x94)),console['log'](LOG_PREFIX3+'\x20enhancementUrl:\x20'+_0x497c54[_0x393c50(0xed)]),console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0x128)+_0x497c54[_0x393c50(0x81)]),state[_0x393c50(0x72)]=!![],console['log'](LOG_PREFIX3+_0x393c50(0xf3)),void loadOverlay({'overlayPath':_0x1b20ac[_0x393c50(0x130)],'enableViteHmr':_0x1b20ac['overlay'][_0x393c50(0x108)],'options':_0x1b20ac,'onToggle':handleToggle}),console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0x87)),void registerServiceWorker(_0x1b20ac),console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0x78)),createController();return console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0xbd)),console[_0x393c50(0x114)](LOG_PREFIX3+_0x393c50(0x66)),void unregisterServiceWorker(_0x1b20ac['swPath']),console[_0x393c50(0x114)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20normal\x20mode'),import.meta.hot&&(console['log'](LOG_PREFIX3+_0x393c50(0xbe)),import.meta.hot['on']('vite:error',_0x4a40d0=>{const _0x104c4b=_0x393c50;console[_0x104c4b(0x114)](LOG_PREFIX3+_0x104c4b(0x10a),_0x4a40d0),state[_0x104c4b(0xec)]={'message':_0x4a40d0[_0x104c4b(0xcb)][_0x104c4b(0x111)]},updateOverlay();}),import.meta.hot['on']('vite:beforeUpdate',()=>{const _0x1c0eae=_0x393c50;state['appError']&&(console[_0x1c0eae(0x114)](LOG_PREFIX3+'\x20Vite\x20update\x20pending\x20-\x20clearing\x20error'),state[_0x1c0eae(0xec)]=null,updateOverlay());})),createController();}};function createController(){const _0x236e32=_0x2e9f25,_0x321f97={'enable'(){const _0x507181=_0x43ff,_0x2e017f=getOptions();if(!_0x2e017f)return;state[_0x507181(0x72)]=!![],void loadOverlay({'overlayPath':_0x2e017f[_0x507181(0x130)],'enableViteHmr':_0x2e017f[_0x507181(0xe2)][_0x507181(0x108)],'options':_0x2e017f,'onToggle':handleToggle}),void registerServiceWorker(_0x2e017f),void sendConfiguration(),updateOverlay();},'disable'(){const _0x30c150=_0x43ff,_0x35f7ac=getOptions();if(!_0x35f7ac)return;state[_0x30c150(0x72)]=![],state[_0x30c150(0x89)]=![],updateOverlay(),void unregisterServiceWorker(_0x35f7ac[_0x30c150(0xc9)]);},'status'(){const _0xa2a18f=_0x43ff;return{'enabled':state[_0xa2a18f(0x72)],'controlled':state[_0xa2a18f(0x89)]};}};return typeof window!==_0x236e32(0xef)&&(window[_0x236e32(0x124)]=_0x321f97),_0x321f97;}function handleToggle(){const _0x4c1031=_0x2e9f25,_0x33d7cc=createController();state[_0x4c1031(0x72)]?_0x33d7cc['disable']():_0x33d7cc[_0x4c1031(0x123)]();}function parseUrlParams(){const _0x4d42f4=_0x2e9f25,_0x17ed1f=new URL(window['location']['href']),_0x1a749e=_0x17ed1f[_0x4d42f4(0xbc)][_0x4d42f4(0xdf)](_0x4d42f4(0x76))?.[_0x4d42f4(0xff)](),_0x178505=_0x17ed1f[_0x4d42f4(0xbc)][_0x4d42f4(0xdf)]('enhancementUrl'),_0x3c955b=_0x17ed1f[_0x4d42f4(0xbc)][_0x4d42f4(0xdf)](_0x4d42f4(0x12f));return{'hasEnhancement':Boolean(_0x178505||_0x3c955b),'explicitDisable':_0x1a749e==='0'||_0x1a749e===_0x4d42f4(0xcd)||_0x1a749e===_0x4d42f4(0x7f),'enhancementUrl':_0x178505,'enhancementId':_0x3c955b};}function cleanUrlParam(_0x4f0324){const _0x48cd88=_0x2e9f25,_0x1659a8=new URL(window['location'][_0x48cd88(0xc6)]);_0x1659a8[_0x48cd88(0xbc)][_0x48cd88(0xdd)](_0x4f0324)&&(_0x1659a8[_0x48cd88(0xbc)]['delete'](_0x4f0324),window[_0x48cd88(0x9b)][_0x48cd88(0xaa)](null,document['title'],_0x1659a8[_0x48cd88(0x126)]()));}var package_default={'name':_0x2e9f25(0xca),'version':_0x2e9f25(0x70),'type':_0x2e9f25(0x84),'description':_0x2e9f25(0x11a),'license':_0x2e9f25(0xe1),'main':_0x2e9f25(0x6b),'module':_0x2e9f25(0x6b),'types':'./dev/index.d.ts','exports':{'.':{'types':_0x2e9f25(0xd9),'import':_0x2e9f25(0x6b)},'./vite':{'types':'./dev/vite/index.d.ts','import':_0x2e9f25(0xa6)}},'files':[_0x2e9f25(0xde)],'bin':{'enhance-sandbox':'./dev/cli.js'},'scripts':{'typecheck':_0x2e9f25(0x9c),'dev':_0x2e9f25(0xfc),'dev:build':_0x2e9f25(0xf4),'dev:staging':_0x2e9f25(0xd0),'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':_0x2e9f25(0x109),'build:release':'ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','version':_0x2e9f25(0x10c)},'dependencies':{'commander':_0x2e9f25(0x12b),'zod':_0x2e9f25(0xaf)},'devDependencies':{'@types/node':_0x2e9f25(0xe6),'javascript-obfuscator':_0x2e9f25(0x12d),'tsup':_0x2e9f25(0x10f),'vite':_0x2e9f25(0xe7)},'publishConfig':{'access':'public'}},DEFAULT_SERVICE_WORKER_PATH=_0x2e9f25(0xf0),DEFAULT_RUNTIME_PATH=_0x2e9f25(0xd4),PACKAGE_VERSION=typeof package_default['version']===_0x2e9f25(0x99)?package_default['version']:_0x2e9f25(0xd7);function normalizeAssetPath(_0x3247fd){const _0x478444=_0x2e9f25;if(!_0x3247fd)return _0x3247fd;if(_0x3247fd[_0x478444(0xfa)](_0x478444(0x116))||_0x3247fd[_0x478444(0xfa)](_0x478444(0xda)))return _0x3247fd;const _0x5bf307=_0x3247fd['replace'](/^\.\//,'');return _0x5bf307[_0x478444(0xfa)]('/')?_0x5bf307:'/'+_0x5bf307;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x33f96a){return Enhance['init'](_0x33f96a);},'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 _0x14634e=_0x2e9f25;return Enhance2[_0x14634e(0xd6)]();}function runtimeURL(){const _0xa63a91=_0x2e9f25;return Enhance2[_0xa63a91(0x12a)]();}export{Enhance2 as Enhance,getAssetManifest,resolveServiceWorkerPath,runtimeURL,serviceWorkerURL};function _0x3f76(){const _0x5845e5=['__enhanceOverlay','log','[Enhance\x20Overlay]','http://','\x20currentOptions\x20exists:\x20','\x20Current\x20URL:\x20','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','1299500PkhBNT','\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay','add','40133710Zjwnnb','297576LlfApf','\x20setupRemoteHMR()\x20for\x20','119256YTWSuq','\x20No\x20blocking\x20SW\x20found','enable','__enhanceController','installing','toString',',\x20owns=','\x20enhancementId:\x20','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','runtimeURL','^11.1.0','\x20Config\x20sent\x20to\x20SW','^4.1.1','\x20Enhancement\x20detection:\x20wasEnhanced=','enhancement','overlayPath','hasEnhancement','\x20detectBlocking\x20error:','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister','\x20Overlay\x20controller\x20initialized\x20and\x20cached','\x20No\x20window\x20object\x20-\x20skipping','\x20overlayPath:\x20','/@react-refresh','\x20Checking\x20for\x20blocking\x20service\x20worker...','\x20Unregistering\x20any\x20existing\x20SW...','\x20React\x20Refresh\x20already\x20installed\x20for\x20','position','unregister','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser','./dev/index.js','\x20doLoadOverlay()\x20starting...','ready','985506rJMblj','\x20Failed\x20to\x20import/create\x20overlay:','0.3.20','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','enabled',',\x20currentOptions:\x20','\x20Unregistering\x20SW...','sw-enhance','enhance','\x20First\x20initialization','\x20init()\x20complete\x20-\x20enhancement\x20mode','\x20Overlay\x20update\x20complete','171TkgWJD','reload','\x20Registration\x20returned:','\x20composeOverlayState\x20-\x20state.enabled:\x20','error','off','\x20Updating\x20overlay\x20with\x20state:','enhancementId','readyState','\x20registerServiceWorker()\x20called','module','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','\x20state.enabled:\x20','\x20Starting\x20SW\x20registration\x20(async)...','$RefreshSig$','controlled','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','injectIntoGlobalHook','postMessage','security','\x20Controller\x20state:','explicitDisable','__enhanceReactRefreshInstalledOrigins','2cgWLcw','state:\x20','\x20Found\x20registration:','\x20Enhancement\x20mode\x20ENABLED','\x20Invalid\x20React\x20Refresh\x20runtime','\x20No\x20service\x20worker\x20active\x20to\x20configure','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','\x20loadOverlay()\x20failed:','string','\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):','history','tsc\x20--noEmit','getRegistration','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','\x20Normalized\x20options:','\x20SW\x20unregistered\x20successfully','__enhanceInitialized','enhance:disable','\x20Overlay\x20origin:\x20','scriptURL','backendUrl','./dev/vite/index.js','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','\x20Raw\x20options:','serviceWorker','replaceState','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','135reDkYY','\x20Failed\x20to\x20unregister\x20service\x20worker:','^3.22.4','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','origin','__development','\x20swPath:\x20','\x20Module\x20exports:','N/A','__vite_plugin_react_preamble_installed__','enableOverlayHmr','location',',\x20page\x20origin:\x20','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','1043811LZDsMv','searchParams','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners','\x20URL\x20params\x20parsed:','callbackBypass','\x20composeOverlayState\x20-\x20state.controlled:\x20','function','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','https://api.enhancelabs.ai','\x20Module\x20imported\x20in\x20','href','waiting','\x20Module\x20missing\x20createOverlay\x20export!','swPath','@enhance-eng/sandbox','err','https://assets.enhancelabs.ai/overlay.js','false','none','\x20Document\x20readyState:\x20','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','9539754QvTAdW','default','info','/assets/enhance-runtime.js','\x20Current\x20controller:','serviceWorkerURL','0.0.0','\x20updateOverlay()\x20called','./dev/index.d.ts','https://','bottom-right','some','has','dev/','get','\x20registerServiceWorker()\x20complete','MIT','overlay','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','$RefreshReg$','update','^24.10.1','^7.2.4','\x20Calling\x20createOverlay()...','querySelector','\x20HMR\x20setup\x20complete','controller','appError','enhancementUrl','active','undefined','/sw-enhance.js','warn','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','\x20Starting\x20overlay\x20load\x20(async)...','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','\x20overlayController\x20exists:\x20','\x20Service\x20workers\x20supported','stringify','state','\x20Sending\x20customer\x20config\x20to\x20SW:','startsWith','__enhanceOptions','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','\x20resolveWorker:','\x20Sending\x20customer\x20configuration...','toLowerCase','__viteHMRLoaded','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','\x20sendConfiguration()\x20called','enhance:configure','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','onToggle','\x20Current\x20controller\x20after\x20ready:','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','enableViteHmr','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','\x20Vite\x20error\x20detected:','\x20loadOverlay()\x20called','bun\x20version\x20patch\x20--no-git-tag-version','\x20Registering\x20SW\x20at\x20','keys','^8.5.1','now','message','createOverlay'];_0x3f76=function(){return _0x5845e5;};return _0x3f76();}
@@ -1 +1 @@
1
- 'use strict';(function(_0x305083,_0x6c87a5){const _0x5c9137=_0x2b38,_0x1485b4=_0x305083();while(!![]){try{const _0xd657f2=parseInt(_0x5c9137(0x187))/0x1+-parseInt(_0x5c9137(0x1c7))/0x2+-parseInt(_0x5c9137(0x1ec))/0x3*(parseInt(_0x5c9137(0x133))/0x4)+parseInt(_0x5c9137(0x17f))/0x5+-parseInt(_0x5c9137(0x196))/0x6+-parseInt(_0x5c9137(0x102))/0x7*(parseInt(_0x5c9137(0x1b4))/0x8)+parseInt(_0x5c9137(0x1b2))/0x9;if(_0xd657f2===_0x6c87a5)break;else _0x1485b4['push'](_0x1485b4['shift']());}catch(_0x2697da){_0x1485b4['push'](_0x1485b4['shift']());}}}(_0x149d,0x5e076));function _0x2b38(_0xdd2be0,_0x236a46){const _0x149d01=_0x149d();return _0x2b38=function(_0x2b38c4,_0xa80359){_0x2b38c4=_0x2b38c4-0xe7;let _0x53e70c=_0x149d01[_0x2b38c4];return _0x53e70c;},_0x2b38(_0xdd2be0,_0x236a46);}function _0x149d(){const _0x49fd13=['GET','none','frame-ancestors\x20','\x20INSTALL\x20event','connect-src\x20*','1635318EaSmlp','stringify','host','getOwnPropertyNames','image','\x20\x20\x20Applying\x20permissive\x20CSP...','\x20\x20\x20\x20\x20\x20//\x20Always\x20use\x20enhancementBase\x20for\x20HMR\x20WebSocket\x20proxying','\x20\x20\x20Rewriting\x20entry\x20references...','info','set-cookie2','\x20\x20\x20\x20\x20\x20return\x20Array.isArray(value)\x20?\x20value\x20:\x20[value];','\x20\x20\x20\x20EnhancedWebSocket.prototype\x20=\x20originalWebSocket.prototype;','/webpackhotmiddleware','/_next/webpack-hmr',',\x20null,\x202));','\x20chars)','\x20\x20\x20\x20\x20\x20var\x20pathname\x20=\x20url.pathname\x20||\x20\x22/\x22;','</script>','location','log',')\x20-\x20returning\x20null','search','waitUntil','\x20\x20\x20\x20\x20\x20var\x20isExternalHost\x20=\x20externalHosts.includes(url.host);','\x20\x20\x20Stripping\x20SRI\x20attributes...','\x20buildRuntimeBootstrapScript:\x20no\x20runtimePath\x20-\x20returning\x20null','headers','\x20\x20\x20\x20}\x20catch\x20(error)\x20{','14905341CUUVnq','enhance:disable','2114224fPMbXr','map','\x20\x20\x20overlayPath:\x20','\x20\x20\x20\x20var\x20basePrefix\x20=\x20\x22/__sbx__\x22;','\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket,\x20\x22__enhancePatched\x22,\x20{\x20value:\x20true\x20});','\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','\x20\x20\x20Production\x20response:\x20','\x20\x20\x20Custom\x20security\x20mode\x20-\x20preserving\x20original\x20CSP','Enhancement\x20miss\x20','\x20\x20\x20Document\x20source:\x20','\x20\x20\x20\x20if\x20(typeof\x20window\x20!==\x20\x22undefined\x22)\x20{','\x20\x20\x20Enhancement\x20document\x20URL:\x20','includes','\x20fetchFromEnhancement:\x20','\x20\x20\x20\x20const\x20runtimeModule\x20=\x20await\x20import(runtimePath);','callbackBypassNormalized','src','(function(){','/__snowpack__','1189718MbrjnN','\x20\x20\x20\x20var\x20originalWebSocket\x20=\x20window.WebSocket;','\x20skipWaiting()\x20complete','\x20\x20\x20BYPASS:\x20','media-src\x20*\x20data:\x20blob:','modulepreload','object','\x0a</body>','\x20\x20\x20runtimeScriptPath:\x20','error','\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\x20Not\x20OK\x20(','\x0a</head>','\x5c$&','access-control-allow-credentials','trim','\x20\x20\x20\x20var\x20buildProxiedUrl\x20=\x20function(targetUrl)\x20{','securityMode','test','\x20chars','runtimeScriptPath','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20path:\x22,\x20runtimePath);','\x20Config\x20reset','\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20skipping','full','default','\x20\x20\x20\x20var\x20knownPathHints\x20=\x20','custom','x-enhance-routing','/webpack-hot-middleware','\x20for\x20','?import','x-enhance-enhancement','permissive','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Starting\x20runtime\x20bootstrap...\x22);','status','/parcel-hmr','15567xSEbjO','content-type','Cannot\x20build\x20enhancement\x20URL\x20without\x20enhancementBase\x20configured','\x20\x20\x20\x20\x20\x20var\x20externalHosts\x20=\x20[\x22app.enhance.localhost:4450\x22,\x20\x22localhost:5173\x22];','font-src\x20*\x20data:','\x20\x20\x20\x20var\x20knownProtocols\x20=\x20new\x20Set(','statusText','getOwnPropertyDescriptor','\x20Customer\x20config\x20updated:','origin','set-cookie','\x20\x20\x20enhancementUrl:\x20','\x20\x20\x20NAVIGATE\x20request\x20-\x20handling\x20navigation','\x20\x20\x20Document\x20rewrite\x20complete','\x20Clearing\x20cached\x20enhancementUrl\x20(navigation\x20without\x20param)','\x20\x20}','prototype','\x20\x20\x20Original\x20HTML\x20length:\x20','\x20\x20\x20Injecting\x20runtime\x20bootstrap...','\x20-\x20falling\x20back\x20to\x20production','enumerable','\x20\x20\x20\x20if\x20(!Enhance\x20||\x20typeof\x20Enhance.init\x20!==\x20\x22function\x22)\x20{','claim','\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Controller\x20attached\x20to\x20window.enhancePreview\x22);','\x20\x20\x20No\x20script\x20generated\x20(missing\x20runtimePath)\x20-\x20returning\x20html\x20unchanged','\x20\x20\x20Enhancement\x20MISS\x20for\x20','\x20\x20}\x20catch\x20(error)\x20{','<script\x20type=\x22module\x22\x20data-enhance-runtime-bootstrap>','\x20\x20\x20shouldInjectOverlay:\x20',',\x20destination:\x20','clone','Enhancement\x20CORS\x20blocked','\x20\x20\x20Rewriting\x20document...','message','pathname','call','\x20\x20\x20Fetching\x20enhancement\x20document...','text/html','\x20\x20try\x20{','\x20\x20\x20\x20\x20\x20var\x20loweredPath\x20=\x20pathname.toLowerCase();','\x20\x20\x20\x20\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20fallback\x22,\x20error);','[Enhance\x20SW\x20Routing]','length','\x20Invalid\x20message\x20data\x20-\x20ignoring','value','mode','__esModule','endsWith','/__webpack_hmr','\x20is\x20overlay\x20asset\x20-\x20not\x20routing','sharedworker','join','https://','14czTqUm','\x20\x20\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket.prototype,\x20\x22constructor\x22,\x20{\x20value:\x20EnhancedWebSocket\x20});','\x20\x20\x20Enhancement\x20HIT\x20for\x20','body','\x20injectRuntimeBootstrap()\x20called','\x20\x20\x20Skipping\x20HMR\x20bridge\x20(production\x20source)','\x20\x20\x20\x20\x20\x20\x20\x20if\x20(loweredPath.indexOf(knownPathHints[j])\x20!==\x20-1)\x20{','\x20\x20\x20\x20\x20\x20for\x20(var\x20j\x20=\x200;\x20j\x20<\x20knownPathHints.length;\x20j++)\x20{','redirect','\x20\x20\x20Not\x20HTML\x20-\x20returning\x20production\x20response\x20as-is','enhancementBase','\x20fetchEnhancementDocument:\x20','data','debug','\x20Calling\x20skipWaiting()...','\x20\x20\x20\x20};','[Enhance\x20SW\x20Bootstrap]','\x20\x20\x20Injecting\x20HMR\x20bridge\x20(enhancement\x20source)...','callbackBypass','\x20\x20\x20Fetching\x20from\x20enhancement...','\x20\x20\x20\x20\x20\x20\x20\x20}','\x20\x20\x20Enhancement\x20URL:\x20','/sockjs-node','cache-control','\x20handleNavigationRequest:\x20','[Enhance\x20SW\x20Document]','worker-src\x20\x27self\x27\x20blob:','\x20rewriteDocument()\x20called','match','/@vite/client','/assets/enhance-runtime.js','\x20\x20\x20\x20}','})();','activate','\x20\x20\x20\x20\x20\x20window.enhancePreview\x20=\x20controller;','\x20\x20\x20Stripped\x20existing\x20bootstraps,\x20inserting\x20new\x20script...','set','Enhancement\x20document\x20fetch\x20failed','\x20\x20\x20\x20Object.setPrototypeOf(EnhancedWebSocket,\x20originalWebSocket);','\x20\x20\x20\x20\x20\x20if\x20(!value)\x20return\x20[];','\x20\x20\x20\x20\x20\x20window.__enhanceController\x20=\x20controller;','\x20\x20\x20Checking\x20for\x20enhancement\x20document...','opaque','\x20\x20\x20\x20\x20\x20var\x20isAppHost\x20=\x20url.host\x20===\x20window.location.host;','\x20\x20\x20\x20if\x20(!originalWebSocket\x20||\x20originalWebSocket.__enhancePatched)\x20{','\x20\x20\x20Script\x20inserted\x20into\x20document','access-control-expose-headers','\x20DISABLE\x20message\x20-\x20resetting\x20customer\x20config','push','8TazeDU','\x20\x20\x20Rewritten\x20HTML\x20length:\x20','\x20\x20\x20\x20\x20\x20}','enhancement','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Current\x20URL:\x22,\x20window.location.href);','\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20returning\x20null','enhancementUrl','toISOString','backendUrl','hash','/auth/callback','object-src\x20\x27none\x27','\x20\x20\x20CORS\x20blocked\x20(opaque\x20response)','production',',\x20type:\x20','\x20shouldRouteAsset:\x20','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Enhance\x20controller\x20created:\x22,\x20controller);','toString','Enhancement\x20document\x20CORS\x20blocked','\x20Calling\x20clients.claim()...','searchParams','$&\x0a','overlayPath','addEventListener','has','get','script-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20\x27unsafe-eval\x27\x20blob:\x20data:\x20https:\x20http:','\x20\x20\x20Document\x20rewritten\x20successfully','\x20\x20\x20Response:\x20','http://','replace','style-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20blob:\x20data:\x20https:\x20http:','\x20\x20\x20Attempting\x20to\x20fetch\x20from\x20enhancement:\x20','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;','defineProperty','\x20\x20\x20\x20\x20\x20//\x20Allow\x20proxying\x20for\x20specific\x20external\x20hosts','/__vite_ping','\x20CONFIG\x20message\x20-\x20updating\x20customer\x20config','\x20\x20\x20\x20try\x20{','destination','https://assets.enhancelabs.ai/overlay.js','\x20MESSAGE\x20received:','\x20\x20\x20\x20\x20\x20\x20\x20if\x20(typeof\x20proto\x20===\x20\x22string\x22\x20&&\x20knownProtocols.has(proto.toLowerCase()))\x20{','/__vite/client','font','\x20\x20\x20\x20\x20\x20//\x20ignore\x20if\x20unable\x20to\x20redefine','\x20\x20\x20\x20var\x20toArray\x20=\x20function(value)\x20{','style','\x20\x20\x20\x20\x20\x20try\x20{','enhancement-document','cross-origin-embedder-policy','delete','skipWaiting','\x20\x20\x20Fetching\x20production\x20response...','\x20\x20\x20\x20\x20\x20var\x20proxied\x20=\x20new\x20URL(enhancementBase);','toLowerCase','content-security-policy','\x20Unknown\x20message\x20type:\x20','cross-origin-opener-policy','HEAD','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20var\x20rewritten\x20=\x20buildProxiedUrl(resolved);','\x20\x20\x20securityMode:\x20','rewritten','\x20\x20\x20SUCCESS\x20-\x20returning\x20enhanced\x20response','href','startsWith','\x20\x20\x20\x20\x20\x20return;','type','hit','https://api.enhancelabs.ai','\x20\x20\x20\x20\x20\x20return\x20proxied;','\x20\x20\x20SUCCESS\x20-\x20returning\x20enhancement\x20document','x-enhance-document','\x20\x20\x20Skipping\x20runtime\x20bootstrap\x20injection','follow','vite-hmr','329735pMnEGQ','\x20\x20\x20\x20var\x20enhancementBase\x20=\x20new\x20URL(','method','\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{','\x20\x20\x20HTML\x20response\x20-\x20processing...','overlay','\x20\x20\x20\x20\x20\x20','include','69392zakRQe','\x20\x20\x20Content-Type:\x20','function','add','<script\x20data-enhance-hmr-bridge>','\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(url,\x20protocols);','\x20\x20\x20Bootstrap\x20script\x20generated\x20(','\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20unavailable\x22,\x20error);','\x20\x20\x20mode:\x20','\x20\x20\x20source:\x20'];_0x149d=function(){return _0x49fd13;};return _0x149d();}var EnhanceSW=((()=>{const _0x1a9357=_0x2b38;var _0x289933=Object[_0x1a9357(0x155)],_0x409c09=Object[_0x1a9357(0x1f3)],_0x4f2527=Object[_0x1a9357(0x199)],_0x561456=Object[_0x1a9357(0x1fc)]['hasOwnProperty'],_0x123ecf=(_0x462a78,_0x40e7e9)=>{for(var _0x245394 in _0x40e7e9)_0x289933(_0x462a78,_0x245394,{'get':_0x40e7e9[_0x245394],'enumerable':!![]});},_0x4fe90e=(_0x462dea,_0x33e85,_0x4cde2e,_0x547e8b)=>{const _0x5e0ef2=_0x1a9357;if(_0x33e85&&typeof _0x33e85===_0x5e0ef2(0x1cd)||typeof _0x33e85===_0x5e0ef2(0x189)){for(let _0x213c34 of _0x4f2527(_0x33e85))if(!_0x561456[_0x5e0ef2(0xf0)](_0x462dea,_0x213c34)&&_0x213c34!==_0x4cde2e)_0x289933(_0x462dea,_0x213c34,{'get':()=>_0x33e85[_0x213c34],'enumerable':!(_0x547e8b=_0x409c09(_0x33e85,_0x213c34))||_0x547e8b[_0x5e0ef2(0x200)]});}return _0x462dea;},_0x42d8cc=_0x237c5a=>_0x4fe90e(_0x289933({},_0x1a9357(0xfb),{'value':!![]}),_0x237c5a),_0x57d10a={};_0x123ecf(_0x57d10a,{'log':()=>_0x305b1e});var _0x6d5c9b='enhance:configure',_0x479bd3=_0x1a9357(0x1b3);function _0x1c7501(_0x4252d7){const _0x1169df=_0x1a9357;if(!_0x4252d7[_0x1169df(0x174)]('/'))return'/'+_0x4252d7;return _0x4252d7;}function _0x10f14b(_0xa9c693,_0x1fcd44){const _0x21fa3f=_0x1a9357,_0x34433c=new URL(_0xa9c693[_0x21fa3f(0x144)]()),_0x98da77=_0x34433c[_0x21fa3f(0xef)][_0x21fa3f(0xfc)]('/')?_0x34433c[_0x21fa3f(0xef)]['slice'](0x0,-0x1):_0x34433c[_0x21fa3f(0xef)],_0x34b7ea=_0x1fcd44['pathname'][_0x21fa3f(0x174)]('/')?_0x1fcd44['pathname']:'/'+_0x1fcd44[_0x21fa3f(0xef)];return _0x34433c[_0x21fa3f(0xef)]=(''+_0x98da77+_0x34b7ea)[_0x21fa3f(0x151)](/\/+/g,'/'),_0x34433c[_0x21fa3f(0x1ab)]=_0x1fcd44[_0x21fa3f(0x1ab)],_0x34433c[_0x21fa3f(0x13c)]='',_0x34433c;}var _0x66be6e=_0x1a9357(0xf6),_0x557882=new Set(['script',_0x1a9357(0x162),_0x1a9357(0x15f),_0x1a9357(0x19a),'worker',_0x1a9357(0xff),_0x1a9357(0x1cc)]);function _0x3ef8a4(_0x4a1fd7){const _0x529e94=_0x1a9357,_0x3286c9=_0x4a1fd7[_0x529e94(0x181)]===_0x529e94(0x191)||_0x4a1fd7[_0x529e94(0x181)]===_0x529e94(0x16e);return _0x3286c9;}function _0x4f8233(_0x173945,_0x34ba24){const _0x3b258c=_0x1a9357,_0x3d722f=_0x1c7501(_0x34ba24),_0x22d691=_0x173945[_0x3b258c(0x1c3)]['some'](_0x4ef351=>_0x3d722f[_0x3b258c(0x174)](_0x4ef351));return _0x22d691;}function _0x15d05b(_0x2458ba,_0x34a8a4,_0x1e6694){const _0x1f5374=_0x1a9357,_0x5f4c54=_0x34a8a4[_0x1f5374(0x15a)];if(!_0x5f4c54||!_0x557882[_0x1f5374(0x14b)](_0x5f4c54))return![];if(_0x2f77ca(_0x2458ba,_0x1e6694))return console[_0x1f5374(0x1a9)](_0x66be6e+_0x1f5374(0x142)+_0x1e6694['pathname']+_0x1f5374(0xfe)),![];if(_0x204f27(_0x2458ba,_0x1e6694))return console['log'](_0x66be6e+_0x1f5374(0x142)+_0x1e6694[_0x1f5374(0xef)]+'\x20is\x20runtime\x20asset\x20-\x20not\x20routing'),![];if(_0x1e6694[_0x1f5374(0x1f5)]!==self[_0x1f5374(0x1a8)][_0x1f5374(0x1f5)])return![];return!![];}async function _0x5efff7(_0x1e22ea,_0x34509f,_0x42b342){const _0x26328d=_0x1a9357;console[_0x26328d(0x1a9)](_0x66be6e+_0x26328d(0x1c1)+_0x42b342[_0x26328d(0xef)]);if(!_0x1e22ea[_0x26328d(0x10c)])return console[_0x26328d(0x1a9)](_0x66be6e+_0x26328d(0x1de)),null;const _0x437ecc=_0x37dc53(_0x1e22ea,_0x42b342);console[_0x26328d(0x1a9)](_0x66be6e+_0x26328d(0x117)+_0x437ecc[_0x26328d(0x144)]());const _0x559edc=new Headers(_0x34509f[_0x26328d(0x1b0)]);_0x559edc[_0x26328d(0x126)]('x-enhance-routing','enhancement'),_0x559edc[_0x26328d(0x166)](_0x26328d(0x198));const _0xd0cc9a=new Request(_0x437ecc[_0x26328d(0x144)](),{'method':_0x34509f[_0x26328d(0x181)],'headers':_0x559edc,'credentials':_0x26328d(0x186),'redirect':_0x34509f[_0x26328d(0x10a)],'cache':_0x26328d(0x1e0),'mode':'cors'});try{console[_0x26328d(0x1a9)](_0x66be6e+_0x26328d(0x115));const _0x4e4d1a=await fetch(_0xd0cc9a);console['log'](_0x66be6e+'\x20\x20\x20Response:\x20'+_0x4e4d1a['status']+'\x20'+_0x4e4d1a[_0x26328d(0x1f2)]+',\x20type:\x20'+_0x4e4d1a['type']);if(_0x4e4d1a[_0x26328d(0x176)]===_0x26328d(0x12c))return console[_0x26328d(0x1a9)](_0x66be6e+_0x26328d(0x13f)),_0x305b1e('info',_0x26328d(0xec),_0x437ecc[_0x26328d(0x144)]()),null;if(!_0x4e4d1a['ok'])return console[_0x26328d(0x1a9)](_0x66be6e+_0x26328d(0x1d2)+_0x4e4d1a['status']+_0x26328d(0x1aa)),_0x305b1e(_0x26328d(0x10f),_0x26328d(0x1bc)+_0x4e4d1a[_0x26328d(0x1ea)]+_0x26328d(0x1e5)+_0x437ecc[_0x26328d(0xef)]),null;return console['log'](_0x66be6e+_0x26328d(0x172)),_0x1a1d38(_0x4e4d1a,_0x34509f[_0x26328d(0x181)]);}catch(_0x2dfbda){return console['error'](_0x66be6e+'\x20\x20\x20Fetch\x20error:',_0x2dfbda),_0x305b1e('info','Enhancement\x20fetch\x20failed',_0x2dfbda),null;}}async function _0x411c39(_0x477f7f,_0x398aa3){const _0x2f21ad=_0x1a9357,_0x1a136a=new URL(_0x398aa3['url']);console[_0x2f21ad(0x1a9)](_0x66be6e+_0x2f21ad(0x10d)+_0x1a136a[_0x2f21ad(0xef)]+_0x1a136a[_0x2f21ad(0x1ab)]);if(!_0x477f7f[_0x2f21ad(0x10c)])return console[_0x2f21ad(0x1a9)](_0x66be6e+_0x2f21ad(0x138)),null;const _0x24c358=_0x37dc53(_0x477f7f,_0x1a136a);console[_0x2f21ad(0x1a9)](_0x66be6e+_0x2f21ad(0x1bf)+_0x24c358[_0x2f21ad(0x144)]());const _0x4f4250=new Headers(_0x398aa3[_0x2f21ad(0x1b0)]);_0x4f4250['set'](_0x2f21ad(0x1e3),_0x2f21ad(0x164)),_0x4f4250[_0x2f21ad(0x166)](_0x2f21ad(0x198)),_0x4f4250[_0x2f21ad(0x166)]('content-length');const _0x1b4076=new Request(_0x24c358[_0x2f21ad(0x144)](),{'method':'GET','headers':_0x4f4250,'credentials':_0x2f21ad(0x186),'redirect':_0x2f21ad(0x17d),'cache':_0x2f21ad(0x1e0),'mode':'cors'});try{console[_0x2f21ad(0x1a9)](_0x66be6e+_0x2f21ad(0xf1));const _0x415210=await fetch(_0x1b4076);console[_0x2f21ad(0x1a9)](_0x66be6e+_0x2f21ad(0x14f)+_0x415210[_0x2f21ad(0x1ea)]+'\x20'+_0x415210[_0x2f21ad(0x1f2)]+_0x2f21ad(0x141)+_0x415210[_0x2f21ad(0x176)]),console[_0x2f21ad(0x1a9)](_0x66be6e+_0x2f21ad(0x188)+_0x415210['headers'][_0x2f21ad(0x14c)](_0x2f21ad(0x1ed)));if(_0x415210[_0x2f21ad(0x176)]==='opaque')return console[_0x2f21ad(0x1a9)](_0x66be6e+_0x2f21ad(0x13f)),_0x305b1e(_0x2f21ad(0x19e),_0x2f21ad(0x145),_0x24c358[_0x2f21ad(0x144)]()),null;if(!_0x415210['ok'])return console[_0x2f21ad(0x1a9)](_0x66be6e+_0x2f21ad(0x1d2)+_0x415210[_0x2f21ad(0x1ea)]+_0x2f21ad(0x1aa)),_0x305b1e(_0x2f21ad(0x10f),'Enhancement\x20document\x20miss\x20'+_0x415210['status']+_0x2f21ad(0x1e5)+_0x24c358[_0x2f21ad(0xef)]),null;if(!_0x1f0ed0(_0x415210))return console[_0x2f21ad(0x1a9)](_0x66be6e+'\x20\x20\x20Not\x20HTML\x20response\x20-\x20returning\x20null'),null;return console[_0x2f21ad(0x1a9)](_0x66be6e+_0x2f21ad(0x17a)),_0x1a1d38(_0x415210,'GET');}catch(_0x4a5d06){return console[_0x2f21ad(0x1d0)](_0x66be6e+'\x20\x20\x20Document\x20fetch\x20error:',_0x4a5d06),_0x305b1e(_0x2f21ad(0x19e),_0x2f21ad(0x127),_0x4a5d06),null;}}function _0x37dc53(_0xfdf3d8,_0x357a13){const _0x546546=_0x1a9357;if(!_0xfdf3d8[_0x546546(0x10c)])throw new Error(_0x546546(0x1ee));return _0x10f14b(_0xfdf3d8[_0x546546(0x10c)],_0x357a13);}function _0x1a1d38(_0x37bf39,_0x31d4a7){const _0x375d8e=_0x1a9357,_0x1361a7=_0x37bf39['clone'](),_0x1ca573=new Headers(_0x1361a7[_0x375d8e(0x1b0)]);_0x1ca573[_0x375d8e(0x166)]('access-control-allow-origin'),_0x1ca573['delete'](_0x375d8e(0x1d5)),_0x1ca573[_0x375d8e(0x166)](_0x375d8e(0x130)),_0x1ca573[_0x375d8e(0x126)](_0x375d8e(0x1e7),_0x375d8e(0x177)),_0x4ea040(_0x1ca573);const _0x57b319=_0x31d4a7===_0x375d8e(0x16e)?null:_0x1361a7[_0x375d8e(0x105)];return new Response(_0x57b319,{'status':_0x1361a7['status'],'statusText':_0x1361a7[_0x375d8e(0x1f2)],'headers':_0x1ca573});}function _0x1f0ed0(_0x2ffe2c){const _0x39fb9a=_0x1a9357,_0x308af0=_0x2ffe2c['headers'][_0x39fb9a(0x14c)](_0x39fb9a(0x1ed));return _0x308af0!=null&&_0x308af0[_0x39fb9a(0x1c0)](_0x39fb9a(0xf2));}function _0x2f77ca(_0x49c086,_0x5b04ff){const _0x21a32a=_0x1a9357;return _0x25c6c6(_0x5b04ff,_0x49c086[_0x21a32a(0x149)]);}function _0x204f27(_0x2f7996,_0x1374fa){const _0x1f0a74=_0x1a9357;return _0x2efaa6(_0x1374fa,_0x2f7996[_0x1f0a74(0x1db)]);}function _0x25c6c6(_0x4a1abb,_0x40e2a9){const _0x5304d6=_0x1a9357;if(!_0x40e2a9)return![];if(_0x40e2a9[_0x5304d6(0x174)]('http://')||_0x40e2a9[_0x5304d6(0x174)](_0x5304d6(0x101)))return _0x4a1abb[_0x5304d6(0x173)]===_0x40e2a9;const _0x32dc98=_0x48b439(_0x40e2a9);if(!_0x32dc98)return![];const _0x2839ff=''+_0x4a1abb['pathname']+_0x4a1abb[_0x5304d6(0x1ab)];if(_0x2839ff===_0x32dc98)return!![];if(_0x4a1abb[_0x5304d6(0x1ab)]===_0x5304d6(0x1e6))return _0x4a1abb['pathname']===_0x32dc98;return![];}function _0x2efaa6(_0x5d1350,_0x1c0749){const _0x5a851a=_0x1a9357;if(!_0x1c0749)return![];if(_0x1c0749[_0x5a851a(0x174)](_0x5a851a(0x150))||_0x1c0749[_0x5a851a(0x174)](_0x5a851a(0x101)))return _0x5d1350[_0x5a851a(0x173)]===_0x1c0749;const _0x4717b3=_0x48b439(_0x1c0749);if(!_0x4717b3)return![];const _0x20aec2=''+_0x5d1350[_0x5a851a(0xef)]+_0x5d1350[_0x5a851a(0x1ab)];return _0x20aec2===_0x4717b3;}function _0x48b439(_0x52a37f){const _0x39fc60=_0x1a9357;if(!_0x52a37f)return _0x52a37f;if(_0x52a37f['startsWith']('http://')||_0x52a37f[_0x39fc60(0x174)](_0x39fc60(0x101)))return _0x52a37f;const _0x51d055=_0x52a37f[_0x39fc60(0x151)](/^\.\//,'');if(_0x51d055[_0x39fc60(0x174)]('/'))return _0x51d055;return'/'+_0x51d055;}function _0x4ea040(_0x1f04a0){const _0x4044c0=_0x1a9357;_0x1f04a0[_0x4044c0(0x166)]('set-cookie'),_0x1f04a0[_0x4044c0(0x166)](_0x4044c0(0x19f));}function _0x1173f3(_0x22e61d){const _0x218eae=_0x1a9357,_0x4ae9cf=['default-src\x20\x27self\x27\x20blob:\x20data:',_0x218eae(0x14d),_0x218eae(0x152),'img-src\x20*\x20data:\x20blob:',_0x218eae(0x1f0),_0x218eae(0x195),_0x218eae(0x1cb),_0x218eae(0x11c),_0x218eae(0x13e)],_0x3d0222=_0xa486cb(_0x22e61d);return _0x3d0222&&_0x4ae9cf[_0x218eae(0x132)](_0x3d0222),_0x4ae9cf['join'](';\x20');}function _0x2545bb(_0x2bc0c3){const _0x460d03=_0x1a9357;_0x2bc0c3[_0x460d03(0x166)](_0x460d03(0x1f6)),_0x2bc0c3[_0x460d03(0x166)](_0x460d03(0x19f));}function _0xa486cb(_0x16cf0a){const _0x1953d6=_0x1a9357;if(!_0x16cf0a)return null;const _0x465e07=_0x16cf0a[_0x1953d6(0x11e)](/frame-ancestors\s+([^;]+)/i);if(!_0x465e07)return null;return _0x1953d6(0x193)+_0x465e07[0x1][_0x1953d6(0x1d6)]();}function _0x277113(_0x354b0b,_0x1a0f3b){const _0x58498e=_0x1a9357;if(/<head[^>]*>/i[_0x58498e(0x1d9)](_0x354b0b)){const _0x2920a5=_0x354b0b['match'](/<head[^>]*>/i);if(_0x2920a5){const _0x47795c=_0x2920a5[0x0];return _0x354b0b['replace'](_0x47795c,_0x47795c+'\x0a'+_0x1a0f3b);}}if(/<\/head>/i[_0x58498e(0x1d9)](_0x354b0b))return _0x354b0b[_0x58498e(0x151)](/<\/head>/i,_0x1a0f3b+_0x58498e(0x1d3));if(/<body\b[^>]*>/i[_0x58498e(0x1d9)](_0x354b0b))return _0x354b0b[_0x58498e(0x151)](/<body\b[^>]*>/i,_0x58498e(0x148)+_0x1a0f3b);if(/<\/body>/i[_0x58498e(0x1d9)](_0x354b0b))return _0x354b0b['replace'](/<\/body>/i,_0x1a0f3b+_0x58498e(0x1ce));return _0x1a0f3b+'\x0a'+_0x354b0b;}var _0x40f9f0=[_0x1a9357(0x17e)],_0x291b08=[_0x1a9357(0x11f),_0x1a9357(0x15e),'/vite/client',_0x1a9357(0x157),_0x1a9357(0x118),'/webpack-dev-server','/webpack-hmr',_0x1a9357(0x1a2),_0x1a9357(0x1e4),_0x1a9357(0xfd),_0x1a9357(0x1a3),_0x1a9357(0x1eb),'/__parcel_hmr',_0x1a9357(0x1c6),'/snowpack/hmr'];function _0x3fd63e(_0x42a9ce,_0x59c32e){const _0x42477c=_0x922290(_0x42a9ce);if(!_0x42477c)return _0x59c32e;return _0x277113(_0x59c32e,_0x42477c);}function _0x922290(_0x335576){const _0x15ae7c=_0x1a9357;if(!_0x335576[_0x15ae7c(0x10c)])return null;const _0x523a68=_0x335576[_0x15ae7c(0x10c)]['toString'](),_0x5c4cee=_0x13747d(_0x40f9f0),_0x4b52ab=_0x13747d(_0x291b08),_0xaeebb9=[_0x15ae7c(0x18b),_0x15ae7c(0x1c5),_0x15ae7c(0xf3),_0x15ae7c(0x180)+JSON[_0x15ae7c(0x197)](_0x523a68)+');',_0x15ae7c(0x1c8),_0x15ae7c(0x12e),_0x15ae7c(0x175),'\x20\x20\x20\x20}',_0x15ae7c(0x1f1)+JSON['stringify'](_0x5c4cee)+');',_0x15ae7c(0x1e1)+JSON[_0x15ae7c(0x197)](_0x4b52ab)+';',_0x15ae7c(0x1b7),_0x15ae7c(0x161),_0x15ae7c(0x129),_0x15ae7c(0x1a0),_0x15ae7c(0x111),'\x20\x20\x20\x20var\x20shouldProxy\x20=\x20function(url,\x20protocols)\x20{',_0x15ae7c(0x156),_0x15ae7c(0x1ef),_0x15ae7c(0x1ad),_0x15ae7c(0x12d),_0x15ae7c(0x185),'\x20\x20\x20\x20\x20\x20if\x20(!isExternalHost\x20&&\x20!isAppHost)\x20return\x20false;',_0x15ae7c(0x185),_0x15ae7c(0x1a6),'\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;',_0x15ae7c(0x135),'\x20\x20\x20\x20\x20\x20var\x20protoList\x20=\x20toArray(protocols);','\x20\x20\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20protoList.length;\x20i++)\x20{','\x20\x20\x20\x20\x20\x20\x20\x20var\x20proto\x20=\x20protoList[i];',_0x15ae7c(0x15d),_0x15ae7c(0x154),_0x15ae7c(0x116),_0x15ae7c(0x135),_0x15ae7c(0xf4),_0x15ae7c(0x109),_0x15ae7c(0x108),_0x15ae7c(0x154),'\x20\x20\x20\x20\x20\x20\x20\x20}',_0x15ae7c(0x135),'\x20\x20\x20\x20\x20\x20return\x20false;',_0x15ae7c(0x111),_0x15ae7c(0x1d7),_0x15ae7c(0x19c),_0x15ae7c(0x169),'\x20\x20\x20\x20\x20\x20proxied.search\x20=\x20targetUrl.search;','\x20\x20\x20\x20\x20\x20proxied.hash\x20=\x20\x22\x22;',_0x15ae7c(0x179),_0x15ae7c(0x111),'\x20\x20\x20\x20var\x20EnhancedWebSocket\x20=\x20function(url,\x20protocols)\x20{',_0x15ae7c(0x163),_0x15ae7c(0x1d1),'\x20\x20\x20\x20\x20\x20\x20\x20if\x20(shouldProxy(resolved,\x20protocols))\x20{',_0x15ae7c(0x16f),'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(rewritten.toString(),\x20protocols);','\x20\x20\x20\x20\x20\x20\x20\x20}',_0x15ae7c(0x182),_0x15ae7c(0xf5),_0x15ae7c(0x135),_0x15ae7c(0x18c),_0x15ae7c(0x111),'\x20\x20\x20\x20Object.assign(EnhancedWebSocket,\x20originalWebSocket);',_0x15ae7c(0x1a1),_0x15ae7c(0x128),_0x15ae7c(0x159),_0x15ae7c(0x103),_0x15ae7c(0x1b1),_0x15ae7c(0x160),'\x20\x20\x20\x20}',_0x15ae7c(0x1b8),'\x20\x20\x20\x20window.WebSocket\x20=\x20EnhancedWebSocket;',_0x15ae7c(0xe7),_0x15ae7c(0x18e),_0x15ae7c(0x1fb),_0x15ae7c(0x122),'</script>'];return _0xaeebb9[_0x15ae7c(0x100)]('\x0a');}function _0x13747d(_0x8d6604){const _0x3dab6d=_0x1a9357,_0x1ece34=new Set(),_0x33292d=[];for(const _0x129694 of _0x8d6604){const _0x426e14=_0x129694[_0x3dab6d(0x16a)]();if(_0x1ece34[_0x3dab6d(0x14b)](_0x426e14))continue;_0x1ece34[_0x3dab6d(0x18a)](_0x426e14),_0x33292d['push'](_0x426e14);}return _0x33292d;}var _0x43084f=_0x1a9357(0x112);function _0x1d83b1(_0x25b752,_0x4138dc){const _0x6385b5=_0x1a9357;console[_0x6385b5(0x1a9)](_0x43084f+_0x6385b5(0x106)),console[_0x6385b5(0x1a9)](_0x43084f+_0x6385b5(0x1cf)+_0x25b752[_0x6385b5(0x1db)]),console[_0x6385b5(0x1a9)](_0x43084f+_0x6385b5(0x1b6)+_0x25b752[_0x6385b5(0x149)]);const _0x46e75d=_0x449938(_0x25b752);if(!_0x46e75d)return console[_0x6385b5(0x1a9)](_0x43084f+_0x6385b5(0x204)),_0x4138dc;console['log'](_0x43084f+_0x6385b5(0x18d)+_0x46e75d[_0x6385b5(0xf7)]+_0x6385b5(0x1a5));const _0x148561=_0x8344f9(_0x4138dc,_0x25b752[_0x6385b5(0x1db)]);console[_0x6385b5(0x1a9)](_0x43084f+_0x6385b5(0x125));const _0xed2b80=_0x277113(_0x148561,_0x46e75d);return console[_0x6385b5(0x1a9)](_0x43084f+_0x6385b5(0x12f)),_0xed2b80;}function _0x449938(_0x32d2fa){const _0x39a728=_0x1a9357,_0x3ba140=_0x32d2fa['runtimeScriptPath'];if(!_0x3ba140)return console[_0x39a728(0x1a9)](_0x43084f+_0x39a728(0x1af)),null;const _0x10dbf4=_0x346f52(_0x32d2fa);console[_0x39a728(0x1a9)](_0x43084f+'\x20Bootstrap\x20options:',JSON['stringify'](_0x10dbf4,null,0x2));const _0x5747c8=_0x2f2ff5(_0x10dbf4),_0x4af407=JSON[_0x39a728(0x197)](_0x3ba140),_0x591d12=[_0x39a728(0xe8),'(async\x20()\x20=>\x20{','\x20\x20try\x20{','\x20\x20\x20\x20const\x20runtimePath\x20=\x20'+_0x4af407+';',_0x39a728(0x1e9),_0x39a728(0x1dc),_0x39a728(0x137),_0x39a728(0x1c2),'\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20module\x20loaded:\x22,\x20Object.keys(runtimeModule));','\x20\x20\x20\x20const\x20Enhance\x20=\x20runtimeModule?.Enhance\x20??\x20runtimeModule?.default?.Enhance\x20??\x20runtimeModule?.default;',_0x39a728(0x201),'\x20\x20\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20No\x20Enhance.init\x20export\x20found!\x22);','\x20\x20\x20\x20\x20\x20return;','\x20\x20\x20\x20}','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Calling\x20Enhance.init()\x20with\x20options:\x22,\x20JSON.stringify('+_0x5747c8+_0x39a728(0x1a4),'\x20\x20\x20\x20const\x20controller\x20=\x20Enhance.init('+_0x5747c8+');',_0x39a728(0x143),_0x39a728(0x1be),_0x39a728(0x124),_0x39a728(0x203),_0x39a728(0x1b9),'\x20\x20\x20\x20\x20\x20window.__enhanceInitialized\x20=\x20true;',_0x39a728(0x12a),'\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Set\x20window.__enhanceInitialized\x20=\x20true\x22);',_0x39a728(0x121),'\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Bootstrap\x20complete\x22);',_0x39a728(0xe7),'\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20Failed\x20to\x20bootstrap\x20runtime:\x22,\x20error);','\x20\x20}','})();',_0x39a728(0x1a7)];return _0x591d12[_0x39a728(0x100)]('\x0a');}function _0x346f52(_0x4f658a){const _0x236f3b=_0x1a9357,_0x19311d={'callbackBypass':_0x4f658a['callbackBypass'],'__development':{'enableOverlayHmr':_0x4f658a['overlayEnableViteHmr'],'overlayPath':_0x4f658a[_0x236f3b(0x149)],'security':_0x4f658a[_0x236f3b(0x1d8)],'backendUrl':_0x4f658a[_0x236f3b(0x13b)]}};return _0x19311d;}function _0x2f2ff5(_0x50dd5e){const _0x2a628a=_0x1a9357;return JSON[_0x2a628a(0x197)](_0x50dd5e)[_0x2a628a(0x151)](/</g,'\x5cu003c')[_0x2a628a(0x151)](/>/g,'\x5cu003e');}function _0x8344f9(_0x1b8d32,_0x1db788){const _0x301444=_0x1a9357,_0x2d6454=/<script\b[^>]*data-enhance-runtime-bootstrap[^>]*>[\s\S]*?<\/script>/gi;let _0x2ad90a=_0x1b8d32['replace'](_0x2d6454,'');if(_0x1db788){const _0x5bf31f=_0x2e8a5e(_0x1db788),_0x1d5cba=new RegExp('<script\x5cb[^>]*src\x5cs*=\x5cs*([\x27\x22])'+_0x5bf31f+'\x5c1[^>]*>\x5cs*</script>','gi');_0x2ad90a=_0x2ad90a[_0x301444(0x151)](_0x1d5cba,'');}return _0x2ad90a;}function _0x2e8a5e(_0x4b0423){const _0x446d85=_0x1a9357;return _0x4b0423[_0x446d85(0x151)](/[-/\\^$*+?.()|[\]{}]/g,_0x446d85(0x1d4));}function _0x20592c(_0x4a97bb,_0x3ab24e){const _0x5cc657=_0x1a9357,_0x5306c4=_0x11b935=>_0x10e90a(_0x4a97bb,_0x11b935),_0x71206f=_0x438928=>_0x3a219b(_0x4a97bb,_0x438928);return _0x3ab24e[_0x5cc657(0x151)](/<script\b[^>]*>/gi,_0x5306c4)['replace'](/<link\b[^>]*>/gi,_0x71206f);}function _0x1d0265(_0x53a2a5){const _0xed7458=_0x1a9357;return _0x53a2a5[_0xed7458(0x151)](/\s+integrity\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/gi,'');}function _0x10e90a(_0x21de79,_0x50c80b){const _0x4e237c=_0x1a9357,_0x4c1ca9=_0x23b8ae(_0x50c80b,_0x4e237c(0x1c4));if(!_0x4c1ca9)return _0x50c80b;const _0x2f9a25=_0x960ed4(_0x21de79,_0x4c1ca9['value']);if(!_0x2f9a25||_0x2f9a25===_0x4c1ca9['value'])return _0x50c80b;const _0x5eca4d=_0x4c1ca9[_0x4e237c(0x1df)][_0x4e237c(0x151)](_0x4c1ca9[_0x4e237c(0xf9)],_0x2f9a25);return _0x50c80b[_0x4e237c(0x151)](_0x4c1ca9[_0x4e237c(0x1df)],_0x5eca4d);}function _0x3a219b(_0x39a54b,_0x3f6529){const _0x89d6ea=_0x1a9357,_0x41c552=_0x3f6529[_0x89d6ea(0x11e)](/\brel\s*=\s*(['"])([^"']+)\1/i);if(!_0x41c552)return _0x3f6529;const _0x337461=_0x41c552[0x2][_0x89d6ea(0x16a)]();if(_0x337461!=='stylesheet'&&_0x337461!==_0x89d6ea(0x1cc))return _0x3f6529;const _0x2c1096=_0x23b8ae(_0x3f6529,'href');if(!_0x2c1096)return _0x3f6529;const _0x3071f1=_0x960ed4(_0x39a54b,_0x2c1096[_0x89d6ea(0xf9)]);if(!_0x3071f1||_0x3071f1===_0x2c1096[_0x89d6ea(0xf9)])return _0x3f6529;const _0x1b157d=_0x2c1096[_0x89d6ea(0x1df)][_0x89d6ea(0x151)](_0x2c1096[_0x89d6ea(0xf9)],_0x3071f1);return _0x3f6529['replace'](_0x2c1096[_0x89d6ea(0x1df)],_0x1b157d);}function _0x23b8ae(_0x4f8cd9,_0x1f8afe){const _0x245311=_0x1a9357,_0x1cfc09=new RegExp(_0x1f8afe+'\x5cs*=\x5cs*([\x27\x22])([^\x22\x27]+)\x5c1','i'),_0x2f3614=_0x4f8cd9[_0x245311(0x11e)](_0x1cfc09);if(!_0x2f3614)return null;return{'full':_0x2f3614[0x0],'value':_0x2f3614[0x2]};}function _0x960ed4(_0x4cbd69,_0x29ba62){const _0x515368=_0x1a9357,_0x2a72aa=_0x158f86(_0x29ba62);if(!_0x2a72aa)return null;if(_0x2a72aa[_0x515368(0x1f5)]===self[_0x515368(0x1a8)][_0x515368(0x1f5)])return''+_0x2a72aa[_0x515368(0xef)]+_0x2a72aa[_0x515368(0x1ab)];return null;}function _0x158f86(_0x5a81c9){const _0x9675be=_0x1a9357;try{return new URL(_0x5a81c9,self['location'][_0x9675be(0x1f5)]);}catch{return null;}}var _0x231999=_0x1a9357(0x11b);async function _0x3b12bf(_0x34d706,_0x362fd9,_0x17acd7,_0x3bb4ae=!![]){const _0x3a83bb=_0x1a9357;console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x11d)),console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x190)+_0x17acd7),console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0xe9)+_0x3bb4ae),console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x170)+_0x34d706[_0x3a83bb(0x1d8)]);const _0x2d64f0=_0x362fd9[_0x3a83bb(0xeb)](),_0x4d7966=await _0x2d64f0['text']();console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x1fd)+_0x4d7966[_0x3a83bb(0xf7)]+_0x3a83bb(0x1da)),console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x1ae));const _0x4c669e=_0x1d0265(_0x4d7966);console['log'](_0x231999+_0x3a83bb(0x19d));let _0x48b93f=_0x20592c(_0x34d706,_0x4c669e);_0x17acd7===_0x3a83bb(0x136)?(console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x113)),_0x48b93f=_0x3fd63e(_0x34d706,_0x48b93f)):console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x107));_0x3bb4ae?(console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x1fe)),_0x48b93f=_0x1d83b1(_0x34d706,_0x48b93f)):console['log'](_0x231999+_0x3a83bb(0x17c));console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x134)+_0x48b93f[_0x3a83bb(0xf7)]+_0x3a83bb(0x1da));const _0x1da31b=new Headers(_0x2d64f0[_0x3a83bb(0x1b0)]);_0x1da31b[_0x3a83bb(0x126)](_0x3a83bb(0x119),'no-store'),_0x1da31b[_0x3a83bb(0x126)](_0x3a83bb(0x17b),_0x3a83bb(0x171)),_0x1da31b['set']('x-enhance-document-source',_0x17acd7),_0x2545bb(_0x1da31b);if(_0x34d706[_0x3a83bb(0x1d8)]!==_0x3a83bb(0x1e2)){console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x19b));const _0xdc41a9=_0x1da31b[_0x3a83bb(0x14c)](_0x3a83bb(0x16b));_0x1da31b[_0x3a83bb(0x126)](_0x3a83bb(0x16b),_0x1173f3(_0xdc41a9)),_0x1da31b['delete'](_0x3a83bb(0x16d)),_0x1da31b[_0x3a83bb(0x166)](_0x3a83bb(0x165)),_0x1da31b[_0x3a83bb(0x166)]('cross-origin-resource-policy');}else console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x1bb));return console[_0x3a83bb(0x1a9)](_0x231999+_0x3a83bb(0x1f9)),new Response(_0x48b93f,{'status':_0x2d64f0[_0x3a83bb(0x1ea)],'statusText':_0x2d64f0[_0x3a83bb(0x1f2)],'headers':_0x1da31b});}var _0x6025b9='[Enhance\x20SW]';console['log'](_0x6025b9+'\x20Service\x20Worker\x20script\x20loaded\x20at\x20'+new Date()[_0x1a9357(0x13a)]());var _0x3a31fa={'overlayPath':_0x1a9357(0x15b),'backendUrl':_0x1a9357(0x178),'overlayEnableViteHmr':![],'runtimeScriptPath':_0x1a9357(0x120),'swPath':'/sw-enhance.js'};console[_0x1a9357(0x1a9)](_0x6025b9+'\x20Build\x20config:',JSON[_0x1a9357(0x197)](_0x3a31fa,null,0x2));var _0x2b743f={'callbackBypass':[_0x1a9357(0x13d)],'securityMode':_0x1a9357(0x1e8)},_0x54e4fc=null,_0x7b9732=null;function _0x2eeb80(_0x230afa,_0x22ac2c){const _0x122ad3=_0x1a9357,_0x1bc076=_0x230afa['searchParams']['get'](_0x122ad3(0x139));if(_0x22ac2c&&_0x1bc076){console[_0x122ad3(0x1a9)](_0x6025b9+'\x20Caching\x20enhancementUrl\x20from\x20navigation:\x20'+_0x1bc076),_0x54e4fc=_0x1bc076;try{_0x7b9732=new URL(_0x1bc076);}catch{console[_0x122ad3(0x1d0)](_0x6025b9+'\x20Failed\x20to\x20parse\x20enhancementUrl:\x20'+_0x1bc076),_0x7b9732=null;}}_0x22ac2c&&!_0x1bc076&&(_0x54e4fc&&console[_0x122ad3(0x1a9)](_0x6025b9+_0x122ad3(0x1fa)),_0x54e4fc=null,_0x7b9732=null);const _0x5a50d2=_0x1bc076||_0x54e4fc||'',_0x5924ef=_0x1bc076?((()=>{if(_0x1bc076===_0x54e4fc)return _0x7b9732;try{return new URL(_0x1bc076);}catch{return null;}})()):_0x7b9732;return{..._0x3a31fa,..._0x2b743f,'enhancementUrl':_0x5a50d2,'enhancementBase':_0x5924ef,'callbackBypassNormalized':_0x2b743f[_0x122ad3(0x114)][_0x122ad3(0x1b5)](_0x4c0158=>_0x4c0158[_0x122ad3(0x174)]('/')?_0x4c0158:'/'+_0x4c0158)};}function _0x305b1e(_0x4f285f,_0x4a9957,..._0x44a6df){const _0x5e5739=_0x1a9357;_0x4f285f==='info'?console[_0x5e5739(0x19e)](_0x6025b9,_0x4a9957,..._0x44a6df):console[_0x5e5739(0x10f)](_0x6025b9,_0x4a9957,..._0x44a6df);}self['addEventListener']('install',_0x2d0abe=>{const _0x5b2ad1=_0x1a9357;console[_0x5b2ad1(0x1a9)](_0x6025b9+_0x5b2ad1(0x194)),_0x2d0abe[_0x5b2ad1(0x1ac)](((async()=>{const _0x157f91=_0x5b2ad1;console[_0x157f91(0x1a9)](_0x6025b9+_0x157f91(0x110)),await self[_0x157f91(0x167)](),console[_0x157f91(0x1a9)](_0x6025b9+_0x157f91(0x1c9));})()));}),self[_0x1a9357(0x14a)](_0x1a9357(0x123),_0x5b8ef7=>{const _0x22e408=_0x1a9357;console[_0x22e408(0x1a9)](_0x6025b9+'\x20ACTIVATE\x20event'),_0x5b8ef7[_0x22e408(0x1ac)](((async()=>{const _0xcd2331=_0x22e408;console[_0xcd2331(0x1a9)](_0x6025b9+_0xcd2331(0x146)),await self['clients'][_0xcd2331(0x202)](),console[_0xcd2331(0x1a9)](_0x6025b9+'\x20clients.claim()\x20complete');})()));}),self['addEventListener'](_0x1a9357(0xee),_0x1beca3=>{const _0x2f15df=_0x1a9357,_0x349d77=_0x1beca3[_0x2f15df(0x10e)];console[_0x2f15df(0x1a9)](_0x6025b9+_0x2f15df(0x15c),_0x349d77);if(!_0x349d77||typeof _0x349d77!==_0x2f15df(0x1cd)){console[_0x2f15df(0x1a9)](_0x6025b9+_0x2f15df(0xf8));return;}switch(_0x349d77[_0x2f15df(0x176)]){case _0x6d5c9b:{console[_0x2f15df(0x1a9)](_0x6025b9+_0x2f15df(0x158));const _0x2526be=_0x349d77['config'];_0x2b743f={'callbackBypass':_0x2526be['callbackBypass']??['/auth/callback'],'securityMode':_0x2526be[_0x2f15df(0x1d8)]??_0x2f15df(0x1e8)},console[_0x2f15df(0x1a9)](_0x6025b9+_0x2f15df(0x1f4),JSON['stringify'](_0x2b743f,null,0x2));break;}case _0x479bd3:console[_0x2f15df(0x1a9)](_0x6025b9+_0x2f15df(0x131)),_0x2b743f={'callbackBypass':[_0x2f15df(0x13d)],'securityMode':_0x2f15df(0x1e8)},_0x54e4fc=null,_0x7b9732=null,console[_0x2f15df(0x1a9)](_0x6025b9+_0x2f15df(0x1dd));break;default:console[_0x2f15df(0x1a9)](_0x6025b9+_0x2f15df(0x16c)+_0x349d77[_0x2f15df(0x176)]);break;}}),self['addEventListener']('fetch',_0x5755b9=>{_0x5755b9['respondWith'](_0xe162f4(_0x5755b9));});async function _0xe162f4(_0x5638a0){const _0x135ff5=_0x1a9357,{request:_0x402aef}=_0x5638a0,_0x431274=new URL(_0x402aef['url']),_0x2f8a63=_0x402aef[_0x135ff5(0xfa)]==='navigate',_0x7d1389=_0x2f8a63||_0x431274['origin']===self['location'][_0x135ff5(0x1f5)];_0x7d1389&&(console['log'](_0x6025b9+'\x20FETCH:\x20'+_0x402aef[_0x135ff5(0x181)]+'\x20'+_0x431274[_0x135ff5(0xef)]+_0x431274['search']),console['log'](_0x6025b9+_0x135ff5(0x18f)+_0x402aef['mode']+_0x135ff5(0xea)+_0x402aef[_0x135ff5(0x15a)]));const _0x3218b7=_0x2eeb80(_0x431274,_0x2f8a63);_0x7d1389&&console['log'](_0x6025b9+_0x135ff5(0x1f7)+(_0x3218b7[_0x135ff5(0x139)]||'none'));if(!_0x3ef8a4(_0x402aef))return _0x7d1389&&console[_0x135ff5(0x1a9)](_0x6025b9+'\x20\x20\x20Not\x20handling\x20(method\x20not\x20GET/HEAD)'),fetch(_0x402aef);if(_0x4f8233(_0x3218b7,_0x431274[_0x135ff5(0xef)]))return _0x7d1389&&console[_0x135ff5(0x1a9)](_0x6025b9+_0x135ff5(0x1ca)+_0x431274[_0x135ff5(0xef)]+'\x20matches\x20callbackBypass'),fetch(_0x402aef);if(_0x2f8a63)return console[_0x135ff5(0x1a9)](_0x6025b9+_0x135ff5(0x1f8)),_0x310357(_0x402aef,_0x3218b7);if(!_0x15d05b(_0x3218b7,_0x402aef,_0x431274))return _0x7d1389&&console[_0x135ff5(0x1a9)](_0x6025b9+'\x20\x20\x20Not\x20routing\x20asset\x20(not\x20routable\x20or\x20not\x20same-origin)'),fetch(_0x402aef);console[_0x135ff5(0x1a9)](_0x6025b9+_0x135ff5(0x153)+_0x431274['pathname']);const _0xc02b04=await _0x5efff7(_0x3218b7,_0x402aef,_0x431274);if(_0xc02b04)return console['log'](_0x6025b9+_0x135ff5(0x104)+_0x431274[_0x135ff5(0xef)]),_0xc02b04;return console[_0x135ff5(0x1a9)](_0x6025b9+_0x135ff5(0x205)+_0x431274[_0x135ff5(0xef)]+_0x135ff5(0x1ff)),fetch(_0x402aef);}async function _0x310357(_0x240f9f,_0x27c6c5){const _0x4acf06=_0x1a9357,_0x244c91=new URL(_0x240f9f['url']);console[_0x4acf06(0x1a9)](_0x6025b9+_0x4acf06(0x11a)+_0x244c91[_0x4acf06(0xef)]+_0x244c91[_0x4acf06(0x1ab)]),console['log'](_0x6025b9+'\x20\x20\x20enhancementUrl\x20in\x20config:\x20'+(_0x27c6c5[_0x4acf06(0x139)]||_0x4acf06(0x192))),console[_0x4acf06(0x1a9)](_0x6025b9+_0x4acf06(0x168));const _0x277e8e=await fetch(_0x240f9f);console['log'](_0x6025b9+_0x4acf06(0x1ba)+_0x277e8e['status']+'\x20'+_0x277e8e[_0x4acf06(0x1f2)]),console['log'](_0x6025b9+_0x4acf06(0x188)+_0x277e8e[_0x4acf06(0x1b0)][_0x4acf06(0x14c)](_0x4acf06(0x1ed)));if(!_0x1f0ed0(_0x277e8e))return console[_0x4acf06(0x1a9)](_0x6025b9+_0x4acf06(0x10b)),_0x277e8e;console[_0x4acf06(0x1a9)](_0x6025b9+_0x4acf06(0x183));const _0x1cf821=_0x1a1d38(_0x277e8e,'GET');console[_0x4acf06(0x1a9)](_0x6025b9+_0x4acf06(0x12b));const _0x4d508d=await _0x411c39(_0x27c6c5,_0x240f9f),_0x31378f=_0x4d508d?'enhancement':_0x4acf06(0x140);console[_0x4acf06(0x1a9)](_0x6025b9+_0x4acf06(0x1bd)+_0x31378f);const _0x3e0a94=_0x4d508d??_0x1cf821,_0x187e25=_0x31378f===_0x4acf06(0x136)||_0x244c91[_0x4acf06(0x147)]['has'](_0x4acf06(0x184))||_0x244c91[_0x4acf06(0x147)]['has'](_0x4acf06(0x136))||_0x244c91[_0x4acf06(0x147)][_0x4acf06(0x14b)](_0x4acf06(0x139));console['log'](_0x6025b9+'\x20\x20\x20shouldInjectOverlay:\x20'+_0x187e25);try{console['log'](_0x6025b9+_0x4acf06(0xed));const _0x528384=await _0x3b12bf(_0x27c6c5,_0x3e0a94,_0x31378f,_0x187e25);return console[_0x4acf06(0x1a9)](_0x6025b9+_0x4acf06(0x14e)),_0x528384;}catch(_0x1df889){return console[_0x4acf06(0x1d0)](_0x6025b9+'\x20\x20\x20Failed\x20to\x20rewrite\x20document:',_0x1df889),_0x305b1e('info','Failed\x20to\x20rewrite\x20document',_0x1df889),_0x3e0a94;}}return _0x42d8cc(_0x57d10a);})());
1
+ 'use strict';(function(_0x3af7e5,_0x3c37a9){const _0x68d362=_0x5895,_0x456e83=_0x3af7e5();while(!![]){try{const _0x5d702f=parseInt(_0x68d362(0x10b))/0x1+-parseInt(_0x68d362(0x12c))/0x2*(-parseInt(_0x68d362(0x1e8))/0x3)+parseInt(_0x68d362(0x19c))/0x4+-parseInt(_0x68d362(0x1b4))/0x5+-parseInt(_0x68d362(0x1f4))/0x6+-parseInt(_0x68d362(0x111))/0x7+parseInt(_0x68d362(0x140))/0x8;if(_0x5d702f===_0x3c37a9)break;else _0x456e83['push'](_0x456e83['shift']());}catch(_0xec9f00){_0x456e83['push'](_0x456e83['shift']());}}}(_0x376f,0xe2780));function _0x376f(){const _0x83b772=['\x20\x20\x20\x20const\x20controller\x20=\x20Enhance.init(','[Enhance\x20SW\x20Bootstrap]','host','/__snowpack__','\x20\x20\x20securityMode:\x20','rewritten','\x20\x20\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket.prototype,\x20\x22constructor\x22,\x20{\x20value:\x20EnhancedWebSocket\x20});','/parcel-hmr','slice','href','\x20\x20\x20\x20var\x20toArray\x20=\x20function(value)\x20{','redirect','\x20INSTALL\x20event','replace','url','\x20\x20\x20BYPASS:\x20','text','\x20chars)','production','\x20\x20\x20Stripped\x20existing\x20bootstraps,\x20inserting\x20new\x20script...','value','/__vite/client','/__parcel_hmr','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(rewritten.toString(),\x20protocols);','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Enhance\x20controller\x20created:\x22,\x20controller);','<script\x20data-enhance-hmr-bridge>','\x20\x20\x20Injecting\x20runtime\x20bootstrap...','287948daZPkH','content-type','search','\x20\x20\x20Enhancement\x20document\x20URL:\x20','defineProperty','\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','\x20\x20\x20\x20const\x20runtimePath\x20=\x20','\x20\x20\x20CORS\x20blocked\x20(opaque\x20response)','script','has','cors','\x20\x20\x20\x20\x20\x20window.__enhanceController\x20=\x20controller;','hasOwnProperty','\x20\x20\x20Content-Type:\x20','join','\x20\x20\x20Rewriting\x20document...','none','image','pathname','fetch','skipWaiting','cache-control','\x20rewriteDocument()\x20called','$&\x0a','6799480uExzDY','includes',',\x20type:\x20','\x20\x20\x20Fetch\x20error:','access-control-allow-origin','\x20skipWaiting()\x20complete','getOwnPropertyNames','__esModule','\x20\x20\x20\x20var\x20enhancementBase\x20=\x20new\x20URL(','\x20\x20\x20\x20\x20\x20for\x20(var\x20j\x20=\x200;\x20j\x20<\x20knownPathHints.length;\x20j++)\x20{','waitUntil','set-cookie','/snowpack/hmr','\x20\x20\x20\x20\x20\x20','\x20\x20\x20\x20\x20\x20try\x20{','\x20\x20\x20Original\x20HTML\x20length:\x20','delete','\x20for\x20','\x20MESSAGE\x20received:','overlayEnableViteHmr','match','\x20\x20\x20\x20if\x20(!originalWebSocket\x20||\x20originalWebSocket.__enhancePatched)\x20{','\x5cu003c','\x20buildRuntimeBootstrapScript:\x20no\x20runtimePath\x20-\x20returning\x20null','worker-src\x20\x27self\x27\x20blob:','\x20\x20\x20overlayPath:\x20','\x20\x20\x20Bootstrap\x20script\x20generated\x20(','test','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20module\x20loaded:\x22,\x20Object.keys(runtimeModule));','addEventListener','type','\x20\x20\x20\x20\x20\x20}','\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket,\x20\x22__enhancePatched\x22,\x20{\x20value:\x20true\x20});','HEAD','toLowerCase','enhance:disable','\x20\x20\x20\x20var\x20buildProxiedUrl\x20=\x20function(targetUrl)\x20{','\x20\x20\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20No\x20Enhance.init\x20export\x20found!\x22);','runtimeScriptPath','\x20\x20\x20\x20var\x20EnhancedWebSocket\x20=\x20function(url,\x20protocols)\x20{','/sockjs-node','\x20\x20\x20enhancementUrl:\x20','/webpack-dev-server','\x20\x20}\x20catch\x20(error)\x20{','clone','enumerable','\x20\x20\x20\x20try\x20{','sharedworker','map','error','\x20chars','\x20\x20\x20\x20var\x20originalWebSocket\x20=\x20window.WebSocket;','3KmqXCN','\x20\x20\x20\x20var\x20shouldProxy\x20=\x20function(url,\x20protocols)\x20{','\x20\x20\x20\x20\x20\x20return;','\x20\x20\x20Document\x20rewritten\x20successfully','GET','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Starting\x20runtime\x20bootstrap...\x22);','[Enhance\x20SW\x20Document]','\x20\x20\x20\x20\x20\x20var\x20externalHosts\x20=\x20[\x22app.enhance.localhost:4450\x22,\x20\x22localhost:5173\x22];','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Calling\x20Enhance.init()\x20with\x20options:\x22,\x20JSON.stringify(','\x20\x20\x20Attempting\x20to\x20fetch\x20from\x20enhancement:\x20','\x5c$&','\x20\x20\x20\x20\x20\x20\x20\x20var\x20resolved\x20=\x20url\x20instanceof\x20URL\x20?\x20url\x20:\x20new\x20URL(String(url),\x20window.location.href);','1944540EGFSft','activate','endsWith','some','backendUrl','access-control-allow-credentials','\x20-\x20falling\x20back\x20to\x20production','enhance:configure','debug','enhancement','\x20\x20\x20\x20\x20\x20\x20\x20return\x20false;','\x20\x20\x20HTML\x20response\x20-\x20processing...','/sw-enhance.js','\x20\x20\x20\x20\x20\x20//\x20Always\x20use\x20enhancementBase\x20for\x20HMR\x20WebSocket\x20proxying','\x20\x20\x20\x20\x20\x20var\x20pathname\x20=\x20url.pathname\x20||\x20\x22/\x22;','connect-src\x20*','\x20\x20\x20\x20}','\x20\x20\x20\x20};','font','\x20\x20\x20Document\x20rewrite\x20complete','/__webpack_hmr','\x20\x20\x20\x20\x20\x20window.enhancePreview\x20=\x20controller;','\x20Calling\x20skipWaiting()...','\x20\x20\x20\x20\x20\x20if\x20(pathname\x20===\x20basePrefix\x20||\x20pathname.indexOf(basePrefix\x20+\x20\x22/\x22)\x20===\x200)\x20{','\x20Unknown\x20message\x20type:\x20','\x20\x20\x20\x20\x20\x20\x20\x20}','\x20fetchEnhancementDocument:\x20','})();','stylesheet','log','status','/auth/callback','message','font-src\x20*\x20data:','\x20\x20\x20SUCCESS\x20-\x20returning\x20enhancement\x20document','\x20clients.claim()\x20complete','\x20\x20\x20\x20\x20\x20proxied.hash\x20=\x20\x22\x22;','overlay','\x20\x20\x20\x20\x20\x20var\x20proxied\x20=\x20new\x20URL(enhancementBase);','\x20\x20\x20\x20}\x20catch\x20(error)\x20{','?import','text/html','/vite/client','\x20\x20\x20Custom\x20security\x20mode\x20-\x20preserving\x20original\x20CSP','\x20\x20\x20Stripping\x20SRI\x20attributes...','\x20\x20\x20\x20\x20\x20proxied.search\x20=\x20targetUrl.search;','searchParams','no-store','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Current\x20URL:\x22,\x20window.location.href);','\x20Build\x20config:','Enhancement\x20fetch\x20failed','location','\x20\x20\x20\x20Object.setPrototypeOf(EnhancedWebSocket,\x20originalWebSocket);','hash','length','\x20injectRuntimeBootstrap()\x20called','callbackBypassNormalized','\x20Customer\x20config\x20updated:','\x20\x20\x20\x20EnhancedWebSocket.prototype\x20=\x20originalWebSocket.prototype;','\x20\x20\x20Rewritten\x20HTML\x20length:\x20','clients','include','\x20\x20\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20protoList.length;\x20i++)\x20{','\x20\x20\x20\x20var\x20basePrefix\x20=\x20\x22/__sbx__\x22;','follow','565292NlldJk','\x20\x20\x20Enhancement\x20MISS\x20for\x20','content-length','Enhancement\x20CORS\x20blocked','vite-hmr','\x20\x20\x20mode:\x20','12120101toWGxQ','startsWith','\x20\x20\x20Response:\x20','\x20\x20}','\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20returning\x20null','securityMode','destination','/_next/webpack-hmr','origin','\x20\x20\x20NAVIGATE\x20request\x20-\x20handling\x20navigation','\x20\x20\x20Fetching\x20from\x20enhancement...','\x20\x20\x20\x20if\x20(typeof\x20window\x20!==\x20\x22undefined\x22)\x20{','\x20\x20\x20\x20\x20\x20return\x20false;','worker','trim','\x20\x20\x20\x20\x20\x20var\x20protoList\x20=\x20toArray(protocols);','\x20Invalid\x20message\x20data\x20-\x20ignoring','https://','full','x-enhance-enhancement','object-src\x20\x27none\x27','add','\x5cs*=\x5cs*([\x27\x22])([^\x22\x27]+)\x5c1','\x20\x20\x20Not\x20handling\x20(method\x20not\x20GET/HEAD)','Enhancement\x20document\x20miss\x20','\x20\x20\x20\x20const\x20runtimeModule\x20=\x20await\x20import(runtimePath);','set-cookie2','3112778zfojsa','respondWith','headers','\x20\x20\x20\x20\x20\x20return\x20Array.isArray(value)\x20?\x20value\x20:\x20[value];','\x20\x20\x20\x20\x20\x20var\x20isExternalHost\x20=\x20externalHosts.includes(url.host);','\x20\x20\x20Not\x20OK\x20(','\x20Config\x20reset',')\x20-\x20returning\x20null','enhancement-document','\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Controller\x20attached\x20to\x20window.enhancePreview\x22);','style-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20blob:\x20data:\x20https:\x20http:','\x20\x20\x20\x20var\x20knownProtocols\x20=\x20new\x20Set(','\x20\x20\x20Fetching\x20enhancement\x20document...','callbackBypass','\x20\x20\x20Skipping\x20HMR\x20bridge\x20(production\x20source)','modulepreload','\x20\x20\x20Fetching\x20production\x20response...','Cannot\x20build\x20enhancement\x20URL\x20without\x20enhancementBase\x20configured','enhancementUrl','<script\x5cb[^>]*src\x5cs*=\x5cs*([\x27\x22])','17195016MWMLwQ','opaque','</script>','(async\x20()\x20=>\x20{','\x20\x20\x20\x20\x20\x20var\x20isAppHost\x20=\x20url.host\x20===\x20window.location.host;','push','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20path:\x22,\x20runtimePath);','\x20\x20\x20Rewriting\x20entry\x20references...','set','http://','\x20is\x20runtime\x20asset\x20-\x20not\x20routing','\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{','custom','overlayPath','\x20\x20\x20shouldInjectOverlay:\x20','get','enhancementBase','\x20\x20\x20Failed\x20to\x20rewrite\x20document:','toString','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;','\x20FETCH:\x20','\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(url,\x20protocols);','\x20fetchFromEnhancement:\x20','statusText','\x20\x20\x20\x20\x20\x20if\x20(!isExternalHost\x20&&\x20!isAppHost)\x20return\x20false;','https://assets.enhancelabs.ai/overlay.js','call','object','style','\x20\x20\x20\x20if\x20(!Enhance\x20||\x20typeof\x20Enhance.init\x20!==\x20\x22function\x22)\x20{','\x20Service\x20Worker\x20script\x20loaded\x20at\x20','\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20skipping','\x5c1[^>]*>\x5cs*</script>','(function(){','\x20Caching\x20enhancementUrl\x20from\x20navigation:\x20','mode','toISOString','/__vite_ping','\x20\x20\x20\x20\x20\x20//\x20Allow\x20proxying\x20for\x20specific\x20external\x20hosts','method','\x20shouldRouteAsset:\x20','/assets/enhance-runtime.js','\x20\x20\x20\x20window.WebSocket\x20=\x20EnhancedWebSocket;','x-enhance-routing','\x20\x20try\x20{','\x20ACTIVATE\x20event','info','default','\x20\x20\x20Not\x20HTML\x20-\x20returning\x20production\x20response\x20as-is','\x20\x20\x20\x20Object.assign(EnhancedWebSocket,\x20originalWebSocket);','permissive','cross-origin-opener-policy','hit','[Enhance\x20SW]','\x20DISABLE\x20message\x20-\x20resetting\x20customer\x20config','\x20\x20\x20\x20\x20\x20var\x20loweredPath\x20=\x20pathname.toLowerCase();','cross-origin-resource-policy','\x20\x20\x20\x20\x20\x20if\x20(!value)\x20return\x20[];','getOwnPropertyDescriptor','Enhancement\x20miss\x20','stringify','[Enhance\x20SW\x20Routing]','\x20Calling\x20clients.claim()...','media-src\x20*\x20data:\x20blob:','\x20\x20\x20\x20\x20\x20\x20\x20var\x20proto\x20=\x20protoList[i];'];_0x376f=function(){return _0x83b772;};return _0x376f();}function _0x5895(_0x483588,_0x1c95d3){_0x483588=_0x483588-0xf8;const _0x376fc0=_0x376f();let _0x589590=_0x376fc0[_0x483588];return _0x589590;}var EnhanceSW=((()=>{const _0x4a664d=_0x5895;var _0x260d62=Object[_0x4a664d(0x1a0)],_0x3a5710=Object[_0x4a664d(0x17a)],_0x129269=Object[_0x4a664d(0x1ba)],_0x33e125=Object['prototype'][_0x4a664d(0x1a8)],_0x21b214=(_0x324b24,_0x4f36cc)=>{for(var _0x4b3f6c in _0x4f36cc)_0x260d62(_0x324b24,_0x4b3f6c,{'get':_0x4f36cc[_0x4b3f6c],'enumerable':!![]});},_0x10481d=(_0x27fbd8,_0x58d4eb,_0x1a9887,_0x442a24)=>{const _0x5470be=_0x4a664d;if(_0x58d4eb&&typeof _0x58d4eb==='object'||typeof _0x58d4eb==='function'){for(let _0x1363a6 of _0x129269(_0x58d4eb))if(!_0x33e125[_0x5470be(0x15a)](_0x27fbd8,_0x1363a6)&&_0x1363a6!==_0x1a9887)_0x260d62(_0x27fbd8,_0x1363a6,{'get':()=>_0x58d4eb[_0x1363a6],'enumerable':!(_0x442a24=_0x3a5710(_0x58d4eb,_0x1363a6))||_0x442a24[_0x5470be(0x1e1)]});}return _0x27fbd8;},_0x4fe131=_0x26ab6e=>_0x10481d(_0x260d62({},_0x4a664d(0x1bb),{'value':!![]}),_0x26ab6e),_0x5468dd={};_0x21b214(_0x5468dd,{'log':()=>_0x121722});var _0x3a363f=_0x4a664d(0x1fb),_0x450e5b=_0x4a664d(0x1d7);function _0x5b1cec(_0x211200){const _0xa06c37=_0x4a664d;if(!_0x211200[_0xa06c37(0x112)]('/'))return'/'+_0x211200;return _0x211200;}function _0x43d904(_0x35d8dd,_0x5a9960){const _0x22db04=_0x4a664d,_0x3825e8=new URL(_0x35d8dd[_0x22db04(0x152)]()),_0x121016=_0x3825e8[_0x22db04(0x1ae)][_0x22db04(0x1f6)]('/')?_0x3825e8['pathname'][_0x22db04(0x189)](0x0,-0x1):_0x3825e8[_0x22db04(0x1ae)],_0x346f53=_0x5a9960[_0x22db04(0x1ae)][_0x22db04(0x112)]('/')?_0x5a9960['pathname']:'/'+_0x5a9960[_0x22db04(0x1ae)];return _0x3825e8['pathname']=(''+_0x121016+_0x346f53)[_0x22db04(0x18e)](/\/+/g,'/'),_0x3825e8['search']=_0x5a9960[_0x22db04(0x19e)],_0x3825e8[_0x22db04(0xff)]='',_0x3825e8;}var _0x20f507=_0x4a664d(0x17d),_0x251451=new Set([_0x4a664d(0x1a4),_0x4a664d(0x15c),_0x4a664d(0x206),_0x4a664d(0x1ad),_0x4a664d(0x11e),_0x4a664d(0x1e3),'modulepreload']);function _0x5d3cfe(_0x5617c9){const _0x183e45=_0x4a664d,_0x228fce=_0x5617c9[_0x183e45(0x167)]===_0x183e45(0x1ec)||_0x5617c9[_0x183e45(0x167)]===_0x183e45(0x1d5);return _0x228fce;}function _0x23a9de(_0x446fcd,_0x3f5c2a){const _0x376891=_0x4a664d,_0x552a67=_0x5b1cec(_0x3f5c2a),_0xf64ee5=_0x446fcd[_0x376891(0x102)][_0x376891(0x1f7)](_0x1f6b59=>_0x552a67[_0x376891(0x112)](_0x1f6b59));return _0xf64ee5;}function _0x31287b(_0x4fa992,_0x13fb5b,_0x283201){const _0x266f72=_0x4a664d,_0x38af32=_0x13fb5b[_0x266f72(0x117)];if(!_0x38af32||!_0x251451[_0x266f72(0x1a5)](_0x38af32))return![];if(_0xe2bbd5(_0x4fa992,_0x283201))return console[_0x266f72(0x211)](_0x20f507+_0x266f72(0x168)+_0x283201[_0x266f72(0x1ae)]+'\x20is\x20overlay\x20asset\x20-\x20not\x20routing'),![];if(_0x276c9d(_0x4fa992,_0x283201))return console[_0x266f72(0x211)](_0x20f507+_0x266f72(0x168)+_0x283201[_0x266f72(0x1ae)]+_0x266f72(0x14a)),![];if(_0x283201[_0x266f72(0x119)]!==self['location'][_0x266f72(0x119)])return![];return!![];}async function _0x25b24f(_0x5bedcc,_0x541ca9,_0x1843dc){const _0x104cc2=_0x4a664d;console[_0x104cc2(0x211)](_0x20f507+_0x104cc2(0x156)+_0x1843dc[_0x104cc2(0x1ae)]);if(!_0x5bedcc[_0x104cc2(0x150)])return console[_0x104cc2(0x211)](_0x20f507+_0x104cc2(0x15f)),null;const _0x4f9c94=_0x26966f(_0x5bedcc,_0x1843dc);console[_0x104cc2(0x211)](_0x20f507+'\x20\x20\x20Enhancement\x20URL:\x20'+_0x4f9c94[_0x104cc2(0x152)]());const _0x13b999=new Headers(_0x541ca9['headers']);_0x13b999['set']('x-enhance-routing',_0x104cc2(0x1fd)),_0x13b999['delete'](_0x104cc2(0x183));const _0x57ecaa=new Request(_0x4f9c94[_0x104cc2(0x152)](),{'method':_0x541ca9[_0x104cc2(0x167)],'headers':_0x13b999,'credentials':_0x104cc2(0x107),'redirect':_0x541ca9[_0x104cc2(0x18c)],'cache':_0x104cc2(0x16f),'mode':_0x104cc2(0x1a6)});try{console[_0x104cc2(0x211)](_0x20f507+_0x104cc2(0x11b));const _0x422114=await fetch(_0x57ecaa);console[_0x104cc2(0x211)](_0x20f507+_0x104cc2(0x113)+_0x422114[_0x104cc2(0x212)]+'\x20'+_0x422114[_0x104cc2(0x157)]+_0x104cc2(0x1b6)+_0x422114[_0x104cc2(0x1d2)]);if(_0x422114[_0x104cc2(0x1d2)]===_0x104cc2(0x141))return console[_0x104cc2(0x211)](_0x20f507+_0x104cc2(0x1a3)),_0x121722(_0x104cc2(0x16e),_0x104cc2(0x10e),_0x4f9c94['toString']()),null;if(!_0x422114['ok'])return console[_0x104cc2(0x211)](_0x20f507+_0x104cc2(0x131)+_0x422114[_0x104cc2(0x212)]+_0x104cc2(0x133)),_0x121722(_0x104cc2(0x1fc),_0x104cc2(0x17b)+_0x422114['status']+_0x104cc2(0x1c5)+_0x4f9c94[_0x104cc2(0x1ae)]),null;return console[_0x104cc2(0x211)](_0x20f507+'\x20\x20\x20SUCCESS\x20-\x20returning\x20enhanced\x20response'),_0x54ee4c(_0x422114,_0x541ca9['method']);}catch(_0x43d355){return console['error'](_0x20f507+_0x104cc2(0x1b7),_0x43d355),_0x121722('info',_0x104cc2(0xfc),_0x43d355),null;}}async function _0x4ef20c(_0x8a8bfd,_0x212629){const _0x162d02=_0x4a664d,_0xedc388=new URL(_0x212629['url']);console['log'](_0x20f507+_0x162d02(0x20e)+_0xedc388['pathname']+_0xedc388[_0x162d02(0x19e)]);if(!_0x8a8bfd['enhancementBase'])return console['log'](_0x20f507+_0x162d02(0x115)),null;const _0x47a29e=_0x26966f(_0x8a8bfd,_0xedc388);console[_0x162d02(0x211)](_0x20f507+_0x162d02(0x19f)+_0x47a29e['toString']());const _0x53b196=new Headers(_0x212629[_0x162d02(0x12e)]);_0x53b196[_0x162d02(0x148)](_0x162d02(0x16b),_0x162d02(0x134)),_0x53b196[_0x162d02(0x1c4)](_0x162d02(0x183)),_0x53b196[_0x162d02(0x1c4)](_0x162d02(0x10d));const _0x3ff015=new Request(_0x47a29e[_0x162d02(0x152)](),{'method':_0x162d02(0x1ec),'headers':_0x53b196,'credentials':_0x162d02(0x107),'redirect':_0x162d02(0x10a),'cache':_0x162d02(0x16f),'mode':_0x162d02(0x1a6)});try{console[_0x162d02(0x211)](_0x20f507+_0x162d02(0x138));const _0x2caad3=await fetch(_0x3ff015);console[_0x162d02(0x211)](_0x20f507+'\x20\x20\x20Response:\x20'+_0x2caad3[_0x162d02(0x212)]+'\x20'+_0x2caad3[_0x162d02(0x157)]+_0x162d02(0x1b6)+_0x2caad3[_0x162d02(0x1d2)]),console[_0x162d02(0x211)](_0x20f507+_0x162d02(0x1a9)+_0x2caad3[_0x162d02(0x12e)][_0x162d02(0x14f)](_0x162d02(0x19d)));if(_0x2caad3[_0x162d02(0x1d2)]===_0x162d02(0x141))return console[_0x162d02(0x211)](_0x20f507+_0x162d02(0x1a3)),_0x121722('info','Enhancement\x20document\x20CORS\x20blocked',_0x47a29e[_0x162d02(0x152)]()),null;if(!_0x2caad3['ok'])return console[_0x162d02(0x211)](_0x20f507+_0x162d02(0x131)+_0x2caad3['status']+_0x162d02(0x133)),_0x121722(_0x162d02(0x1fc),_0x162d02(0x129)+_0x2caad3[_0x162d02(0x212)]+_0x162d02(0x1c5)+_0x47a29e[_0x162d02(0x1ae)]),null;if(!_0x24d2b3(_0x2caad3))return console[_0x162d02(0x211)](_0x20f507+'\x20\x20\x20Not\x20HTML\x20response\x20-\x20returning\x20null'),null;return console['log'](_0x20f507+_0x162d02(0x216)),_0x54ee4c(_0x2caad3,_0x162d02(0x1ec));}catch(_0x5a00ca){return console[_0x162d02(0x1e5)](_0x20f507+'\x20\x20\x20Document\x20fetch\x20error:',_0x5a00ca),_0x121722('info','Enhancement\x20document\x20fetch\x20failed',_0x5a00ca),null;}}function _0x26966f(_0x1b5747,_0x9119a4){const _0x47ba85=_0x4a664d;if(!_0x1b5747[_0x47ba85(0x150)])throw new Error(_0x47ba85(0x13d));return _0x43d904(_0x1b5747[_0x47ba85(0x150)],_0x9119a4);}function _0x54ee4c(_0x2029b1,_0x157ff6){const _0x25a6e2=_0x4a664d,_0xb9c47a=_0x2029b1[_0x25a6e2(0x1e0)](),_0x1168b8=new Headers(_0xb9c47a['headers']);_0x1168b8[_0x25a6e2(0x1c4)](_0x25a6e2(0x1b8)),_0x1168b8[_0x25a6e2(0x1c4)](_0x25a6e2(0x1f9)),_0x1168b8['delete']('access-control-expose-headers'),_0x1168b8['set'](_0x25a6e2(0x124),_0x25a6e2(0x174)),_0x5f3406(_0x1168b8);const _0x554410=_0x157ff6===_0x25a6e2(0x1d5)?null:_0xb9c47a['body'];return new Response(_0x554410,{'status':_0xb9c47a['status'],'statusText':_0xb9c47a[_0x25a6e2(0x157)],'headers':_0x1168b8});}function _0x24d2b3(_0x4313ba){const _0x2e52d6=_0x4a664d,_0x3cbaf9=_0x4313ba[_0x2e52d6(0x12e)][_0x2e52d6(0x14f)](_0x2e52d6(0x19d));return _0x3cbaf9!=null&&_0x3cbaf9[_0x2e52d6(0x1b5)](_0x2e52d6(0x21d));}function _0xe2bbd5(_0x551a32,_0x8152e8){const _0x17a84d=_0x4a664d;return _0x5e928f(_0x8152e8,_0x551a32[_0x17a84d(0x14d)]);}function _0x276c9d(_0x50c6de,_0x530022){const _0x13aeec=_0x4a664d;return _0x378150(_0x530022,_0x50c6de[_0x13aeec(0x1da)]);}function _0x5e928f(_0x53533c,_0x1ad6c9){const _0x4b1226=_0x4a664d;if(!_0x1ad6c9)return![];if(_0x1ad6c9['startsWith'](_0x4b1226(0x149))||_0x1ad6c9[_0x4b1226(0x112)](_0x4b1226(0x122)))return _0x53533c[_0x4b1226(0x18a)]===_0x1ad6c9;const _0x3509d8=_0x3f4bf5(_0x1ad6c9);if(!_0x3509d8)return![];const _0xceca39=''+_0x53533c[_0x4b1226(0x1ae)]+_0x53533c['search'];if(_0xceca39===_0x3509d8)return!![];if(_0x53533c[_0x4b1226(0x19e)]===_0x4b1226(0x21c))return _0x53533c[_0x4b1226(0x1ae)]===_0x3509d8;return![];}function _0x378150(_0x568ab1,_0x467536){const _0x27747e=_0x4a664d;if(!_0x467536)return![];if(_0x467536['startsWith'](_0x27747e(0x149))||_0x467536[_0x27747e(0x112)](_0x27747e(0x122)))return _0x568ab1[_0x27747e(0x18a)]===_0x467536;const _0x56987d=_0x3f4bf5(_0x467536);if(!_0x56987d)return![];const _0x24a95f=''+_0x568ab1['pathname']+_0x568ab1[_0x27747e(0x19e)];return _0x24a95f===_0x56987d;}function _0x3f4bf5(_0x5bdd12){const _0xa695e3=_0x4a664d;if(!_0x5bdd12)return _0x5bdd12;if(_0x5bdd12['startsWith'](_0xa695e3(0x149))||_0x5bdd12['startsWith']('https://'))return _0x5bdd12;const _0x5916fe=_0x5bdd12['replace'](/^\.\//,'');if(_0x5916fe['startsWith']('/'))return _0x5916fe;return'/'+_0x5916fe;}function _0x5f3406(_0x4c3d8e){const _0x1b0dd4=_0x4a664d;_0x4c3d8e[_0x1b0dd4(0x1c4)](_0x1b0dd4(0x1bf)),_0x4c3d8e['delete'](_0x1b0dd4(0x12b));}function _0x458c2b(_0x188f9a){const _0x1f15d9=_0x4a664d,_0x207c1a=['default-src\x20\x27self\x27\x20blob:\x20data:','script-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20\x27unsafe-eval\x27\x20blob:\x20data:\x20https:\x20http:',_0x1f15d9(0x136),'img-src\x20*\x20data:\x20blob:',_0x1f15d9(0x215),_0x1f15d9(0x203),_0x1f15d9(0x17f),_0x1f15d9(0x1cc),_0x1f15d9(0x125)],_0x2775f=_0x4724dd(_0x188f9a);return _0x2775f&&_0x207c1a[_0x1f15d9(0x145)](_0x2775f),_0x207c1a['join'](';\x20');}function _0x134500(_0x336b67){const _0x4cc6f7=_0x4a664d;_0x336b67['delete'](_0x4cc6f7(0x1bf)),_0x336b67[_0x4cc6f7(0x1c4)](_0x4cc6f7(0x12b));}function _0x4724dd(_0x4503a2){const _0x5d0e54=_0x4a664d;if(!_0x4503a2)return null;const _0x17a501=_0x4503a2[_0x5d0e54(0x1c8)](/frame-ancestors\s+([^;]+)/i);if(!_0x17a501)return null;return'frame-ancestors\x20'+_0x17a501[0x1][_0x5d0e54(0x11f)]();}function _0x77eb33(_0x251e7f,_0x49d31d){const _0xfbfa37=_0x4a664d;if(/<head[^>]*>/i[_0xfbfa37(0x1cf)](_0x251e7f)){const _0x29cfc2=_0x251e7f[_0xfbfa37(0x1c8)](/<head[^>]*>/i);if(_0x29cfc2){const _0x24c605=_0x29cfc2[0x0];return _0x251e7f[_0xfbfa37(0x18e)](_0x24c605,_0x24c605+'\x0a'+_0x49d31d);}}if(/<\/head>/i[_0xfbfa37(0x1cf)](_0x251e7f))return _0x251e7f[_0xfbfa37(0x18e)](/<\/head>/i,_0x49d31d+'\x0a</head>');if(/<body\b[^>]*>/i['test'](_0x251e7f))return _0x251e7f['replace'](/<body\b[^>]*>/i,_0xfbfa37(0x1b3)+_0x49d31d);if(/<\/body>/i['test'](_0x251e7f))return _0x251e7f[_0xfbfa37(0x18e)](/<\/body>/i,_0x49d31d+'\x0a</body>');return _0x49d31d+'\x0a'+_0x251e7f;}var _0x5efc02=[_0x4a664d(0x10f)],_0x1cd772=['/@vite/client',_0x4a664d(0x196),_0x4a664d(0x21e),_0x4a664d(0x165),_0x4a664d(0x1dc),_0x4a664d(0x1de),'/webpack-hmr','/webpackhotmiddleware','/webpack-hot-middleware',_0x4a664d(0x208),_0x4a664d(0x118),_0x4a664d(0x188),_0x4a664d(0x197),_0x4a664d(0x184),_0x4a664d(0x1c0)];function _0x1fb8f7(_0x221bb9,_0x14be4a){const _0x105719=_0x2b92c0(_0x221bb9);if(!_0x105719)return _0x14be4a;return _0x77eb33(_0x14be4a,_0x105719);}function _0x2b92c0(_0x491f12){const _0x4fb3d7=_0x4a664d;if(!_0x491f12[_0x4fb3d7(0x150)])return null;const _0x527b0f=_0x491f12[_0x4fb3d7(0x150)][_0x4fb3d7(0x152)](),_0x1a24e0=_0x10b4fb(_0x5efc02),_0x568927=_0x10b4fb(_0x1cd772),_0x27bbca=[_0x4fb3d7(0x19a),_0x4fb3d7(0x161),'\x20\x20try\x20{',_0x4fb3d7(0x1bc)+JSON[_0x4fb3d7(0x17c)](_0x527b0f)+');',_0x4fb3d7(0x1e7),_0x4fb3d7(0x1c9),'\x20\x20\x20\x20\x20\x20return;',_0x4fb3d7(0x204),_0x4fb3d7(0x137)+JSON[_0x4fb3d7(0x17c)](_0x1a24e0)+');','\x20\x20\x20\x20var\x20knownPathHints\x20=\x20'+JSON[_0x4fb3d7(0x17c)](_0x568927)+';',_0x4fb3d7(0x109),_0x4fb3d7(0x18b),_0x4fb3d7(0x179),_0x4fb3d7(0x12f),_0x4fb3d7(0x205),_0x4fb3d7(0x1e9),_0x4fb3d7(0x166),_0x4fb3d7(0x1ef),_0x4fb3d7(0x130),_0x4fb3d7(0x144),'\x20\x20\x20\x20\x20\x20',_0x4fb3d7(0x158),_0x4fb3d7(0x1c1),_0x4fb3d7(0x202),_0x4fb3d7(0x20b),_0x4fb3d7(0x1fe),_0x4fb3d7(0x1d3),_0x4fb3d7(0x120),_0x4fb3d7(0x108),_0x4fb3d7(0x180),'\x20\x20\x20\x20\x20\x20\x20\x20if\x20(typeof\x20proto\x20===\x20\x22string\x22\x20&&\x20knownProtocols.has(proto.toLowerCase()))\x20{','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;',_0x4fb3d7(0x20d),_0x4fb3d7(0x1d3),_0x4fb3d7(0x177),_0x4fb3d7(0x1bd),'\x20\x20\x20\x20\x20\x20\x20\x20if\x20(loweredPath.indexOf(knownPathHints[j])\x20!==\x20-1)\x20{',_0x4fb3d7(0x153),_0x4fb3d7(0x20d),'\x20\x20\x20\x20\x20\x20}',_0x4fb3d7(0x11d),_0x4fb3d7(0x205),_0x4fb3d7(0x1d8),_0x4fb3d7(0x201),_0x4fb3d7(0x21a),_0x4fb3d7(0x221),_0x4fb3d7(0x218),'\x20\x20\x20\x20\x20\x20return\x20proxied;',_0x4fb3d7(0x205),_0x4fb3d7(0x1db),_0x4fb3d7(0x1c2),_0x4fb3d7(0x1f3),'\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);',_0x4fb3d7(0x198),'\x20\x20\x20\x20\x20\x20\x20\x20}',_0x4fb3d7(0x14b),'\x20\x20\x20\x20\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20fallback\x22,\x20error);',_0x4fb3d7(0x1d3),_0x4fb3d7(0x155),'\x20\x20\x20\x20};',_0x4fb3d7(0x171),_0x4fb3d7(0x104),_0x4fb3d7(0xfe),_0x4fb3d7(0x1e2),_0x4fb3d7(0x187),_0x4fb3d7(0x21b),'\x20\x20\x20\x20\x20\x20//\x20ignore\x20if\x20unable\x20to\x20redefine',_0x4fb3d7(0x204),_0x4fb3d7(0x1d4),_0x4fb3d7(0x16a),_0x4fb3d7(0x1df),'\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20unavailable\x22,\x20error);',_0x4fb3d7(0x114),_0x4fb3d7(0x20f),_0x4fb3d7(0x142)];return _0x27bbca[_0x4fb3d7(0x1aa)]('\x0a');}function _0x10b4fb(_0x56b6a5){const _0xcfb185=_0x4a664d,_0x5a42bd=new Set(),_0x4b56fd=[];for(const _0x28e083 of _0x56b6a5){const _0x5aeb7b=_0x28e083[_0xcfb185(0x1d6)]();if(_0x5a42bd[_0xcfb185(0x1a5)](_0x5aeb7b))continue;_0x5a42bd[_0xcfb185(0x126)](_0x5aeb7b),_0x4b56fd['push'](_0x5aeb7b);}return _0x4b56fd;}var _0x43661e=_0x4a664d(0x182);function _0x56ea09(_0x36a858,_0x3d8fad){const _0x3455ee=_0x4a664d;console[_0x3455ee(0x211)](_0x43661e+_0x3455ee(0x101)),console[_0x3455ee(0x211)](_0x43661e+'\x20\x20\x20runtimeScriptPath:\x20'+_0x36a858[_0x3455ee(0x1da)]),console[_0x3455ee(0x211)](_0x43661e+_0x3455ee(0x1cd)+_0x36a858[_0x3455ee(0x14d)]);const _0x20342d=_0x17e008(_0x36a858);if(!_0x20342d)return console[_0x3455ee(0x211)](_0x43661e+'\x20\x20\x20No\x20script\x20generated\x20(missing\x20runtimePath)\x20-\x20returning\x20html\x20unchanged'),_0x3d8fad;console['log'](_0x43661e+_0x3455ee(0x1ce)+_0x20342d[_0x3455ee(0x100)]+_0x3455ee(0x192));const _0x115754=_0x333126(_0x3d8fad,_0x36a858[_0x3455ee(0x1da)]);console[_0x3455ee(0x211)](_0x43661e+_0x3455ee(0x194));const _0x3ef5a0=_0x77eb33(_0x115754,_0x20342d);return console[_0x3455ee(0x211)](_0x43661e+'\x20\x20\x20Script\x20inserted\x20into\x20document'),_0x3ef5a0;}function _0x17e008(_0x526e75){const _0xf4e4f7=_0x4a664d,_0x459fd4=_0x526e75['runtimeScriptPath'];if(!_0x459fd4)return console['log'](_0x43661e+_0xf4e4f7(0x1cb)),null;const _0x5b3423=_0x28650a(_0x526e75);console[_0xf4e4f7(0x211)](_0x43661e+'\x20Bootstrap\x20options:',JSON['stringify'](_0x5b3423,null,0x2));const _0x57b87f=_0x44dc52(_0x5b3423),_0x5b42f1=JSON['stringify'](_0x459fd4),_0x43246a=['<script\x20type=\x22module\x22\x20data-enhance-runtime-bootstrap>',_0xf4e4f7(0x143),_0xf4e4f7(0x16c),_0xf4e4f7(0x1a2)+_0x5b42f1+';',_0xf4e4f7(0x1ed),_0xf4e4f7(0x146),_0xf4e4f7(0xfa),_0xf4e4f7(0x12a),_0xf4e4f7(0x1d0),'\x20\x20\x20\x20const\x20Enhance\x20=\x20runtimeModule?.Enhance\x20??\x20runtimeModule?.default?.Enhance\x20??\x20runtimeModule?.default;',_0xf4e4f7(0x15d),_0xf4e4f7(0x1d9),_0xf4e4f7(0x1ea),_0xf4e4f7(0x204),_0xf4e4f7(0x1f0)+_0x57b87f+',\x20null,\x202));',_0xf4e4f7(0x181)+_0x57b87f+');',_0xf4e4f7(0x199),_0xf4e4f7(0x11c),_0xf4e4f7(0x209),_0xf4e4f7(0x135),_0xf4e4f7(0x1a1),'\x20\x20\x20\x20\x20\x20window.__enhanceInitialized\x20=\x20true;',_0xf4e4f7(0x1a7),'\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Set\x20window.__enhanceInitialized\x20=\x20true\x22);',_0xf4e4f7(0x204),'\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Bootstrap\x20complete\x22);',_0xf4e4f7(0x1df),'\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20Failed\x20to\x20bootstrap\x20runtime:\x22,\x20error);',_0xf4e4f7(0x114),'})();','</script>'];return _0x43246a[_0xf4e4f7(0x1aa)]('\x0a');}function _0x28650a(_0x35e1c9){const _0x5ed677=_0x4a664d,_0xe628e7={'callbackBypass':_0x35e1c9['callbackBypass'],'__development':{'enableOverlayHmr':_0x35e1c9[_0x5ed677(0x1c7)],'overlayPath':_0x35e1c9[_0x5ed677(0x14d)],'security':_0x35e1c9['securityMode'],'backendUrl':_0x35e1c9[_0x5ed677(0x1f8)]}};return _0xe628e7;}function _0x44dc52(_0xd4c49){const _0x16d28b=_0x4a664d;return JSON['stringify'](_0xd4c49)[_0x16d28b(0x18e)](/</g,_0x16d28b(0x1ca))['replace'](/>/g,'\x5cu003e');}function _0x333126(_0x27f191,_0x26f861){const _0x10c2cd=_0x4a664d,_0x14f62d=/<script\b[^>]*data-enhance-runtime-bootstrap[^>]*>[\s\S]*?<\/script>/gi;let _0x37213b=_0x27f191['replace'](_0x14f62d,'');if(_0x26f861){const _0x531bff=_0x1cda7e(_0x26f861),_0x5b851a=new RegExp(_0x10c2cd(0x13f)+_0x531bff+_0x10c2cd(0x160),'gi');_0x37213b=_0x37213b[_0x10c2cd(0x18e)](_0x5b851a,'');}return _0x37213b;}function _0x1cda7e(_0x3dbddd){const _0x2bb472=_0x4a664d;return _0x3dbddd[_0x2bb472(0x18e)](/[-/\\^$*+?.()|[\]{}]/g,_0x2bb472(0x1f2));}function _0x26fc4d(_0x3f0708,_0x380c7e){const _0x4e63e0=_0x4a664d,_0xe029dc=_0x31140d=>_0x28b2c5(_0x3f0708,_0x31140d),_0x4b18c0=_0x815b6b=>_0x38f415(_0x3f0708,_0x815b6b);return _0x380c7e[_0x4e63e0(0x18e)](/<script\b[^>]*>/gi,_0xe029dc)[_0x4e63e0(0x18e)](/<link\b[^>]*>/gi,_0x4b18c0);}function _0x46e4f0(_0x161c4c){const _0x54a131=_0x4a664d;return _0x161c4c[_0x54a131(0x18e)](/\s+integrity\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/gi,'');}function _0x28b2c5(_0x3a78ac,_0x1ae8b1){const _0x33ad9a=_0x4a664d,_0x16a530=_0x24af02(_0x1ae8b1,'src');if(!_0x16a530)return _0x1ae8b1;const _0x465e8e=_0x205704(_0x3a78ac,_0x16a530[_0x33ad9a(0x195)]);if(!_0x465e8e||_0x465e8e===_0x16a530[_0x33ad9a(0x195)])return _0x1ae8b1;const _0x1aae16=_0x16a530[_0x33ad9a(0x123)]['replace'](_0x16a530[_0x33ad9a(0x195)],_0x465e8e);return _0x1ae8b1['replace'](_0x16a530[_0x33ad9a(0x123)],_0x1aae16);}function _0x38f415(_0x33da04,_0xc377a4){const _0x1d5d49=_0x4a664d,_0x255806=_0xc377a4[_0x1d5d49(0x1c8)](/\brel\s*=\s*(['"])([^"']+)\1/i);if(!_0x255806)return _0xc377a4;const _0x4efd80=_0x255806[0x2][_0x1d5d49(0x1d6)]();if(_0x4efd80!==_0x1d5d49(0x210)&&_0x4efd80!==_0x1d5d49(0x13b))return _0xc377a4;const _0x5d1d7a=_0x24af02(_0xc377a4,_0x1d5d49(0x18a));if(!_0x5d1d7a)return _0xc377a4;const _0xd5fc10=_0x205704(_0x33da04,_0x5d1d7a['value']);if(!_0xd5fc10||_0xd5fc10===_0x5d1d7a['value'])return _0xc377a4;const _0x2c2162=_0x5d1d7a['full']['replace'](_0x5d1d7a['value'],_0xd5fc10);return _0xc377a4[_0x1d5d49(0x18e)](_0x5d1d7a[_0x1d5d49(0x123)],_0x2c2162);}function _0x24af02(_0x3ee34d,_0x5af4aa){const _0x30cbf5=_0x4a664d,_0x4c607c=new RegExp(_0x5af4aa+_0x30cbf5(0x127),'i'),_0x5bdbcd=_0x3ee34d['match'](_0x4c607c);if(!_0x5bdbcd)return null;return{'full':_0x5bdbcd[0x0],'value':_0x5bdbcd[0x2]};}function _0x205704(_0x1a35f7,_0x27ed94){const _0x261241=_0x4a664d,_0x4f56fe=_0x419519(_0x27ed94);if(!_0x4f56fe)return null;if(_0x4f56fe[_0x261241(0x119)]===self[_0x261241(0xfd)][_0x261241(0x119)])return''+_0x4f56fe['pathname']+_0x4f56fe[_0x261241(0x19e)];return null;}function _0x419519(_0x24ad2b){const _0x24feeb=_0x4a664d;try{return new URL(_0x24ad2b,self['location'][_0x24feeb(0x119)]);}catch{return null;}}var _0x35a935=_0x4a664d(0x1ee);async function _0x32a6c1(_0x52680a,_0x521709,_0x5515ae,_0x2541f4=!![]){const _0x310584=_0x4a664d;console[_0x310584(0x211)](_0x35a935+_0x310584(0x1b2)),console['log'](_0x35a935+'\x20\x20\x20source:\x20'+_0x5515ae),console[_0x310584(0x211)](_0x35a935+_0x310584(0x14e)+_0x2541f4),console[_0x310584(0x211)](_0x35a935+_0x310584(0x185)+_0x52680a[_0x310584(0x116)]);const _0x1f3227=_0x521709[_0x310584(0x1e0)](),_0x4731e8=await _0x1f3227[_0x310584(0x191)]();console[_0x310584(0x211)](_0x35a935+_0x310584(0x1c3)+_0x4731e8[_0x310584(0x100)]+'\x20chars'),console[_0x310584(0x211)](_0x35a935+_0x310584(0x220));const _0x40686e=_0x46e4f0(_0x4731e8);console[_0x310584(0x211)](_0x35a935+_0x310584(0x147));let _0xecdb47=_0x26fc4d(_0x52680a,_0x40686e);_0x5515ae===_0x310584(0x1fd)?(console[_0x310584(0x211)](_0x35a935+'\x20\x20\x20Injecting\x20HMR\x20bridge\x20(enhancement\x20source)...'),_0xecdb47=_0x1fb8f7(_0x52680a,_0xecdb47)):console[_0x310584(0x211)](_0x35a935+_0x310584(0x13a));_0x2541f4?(console[_0x310584(0x211)](_0x35a935+_0x310584(0x19b)),_0xecdb47=_0x56ea09(_0x52680a,_0xecdb47)):console[_0x310584(0x211)](_0x35a935+'\x20\x20\x20Skipping\x20runtime\x20bootstrap\x20injection');console[_0x310584(0x211)](_0x35a935+_0x310584(0x105)+_0xecdb47[_0x310584(0x100)]+_0x310584(0x1e6));const _0x103ffa=new Headers(_0x1f3227[_0x310584(0x12e)]);_0x103ffa[_0x310584(0x148)](_0x310584(0x1b1),_0x310584(0xf9)),_0x103ffa[_0x310584(0x148)]('x-enhance-document',_0x310584(0x186)),_0x103ffa[_0x310584(0x148)]('x-enhance-document-source',_0x5515ae),_0x134500(_0x103ffa);if(_0x52680a[_0x310584(0x116)]!==_0x310584(0x14c)){console[_0x310584(0x211)](_0x35a935+'\x20\x20\x20Applying\x20permissive\x20CSP...');const _0x283bd0=_0x103ffa[_0x310584(0x14f)]('content-security-policy');_0x103ffa[_0x310584(0x148)]('content-security-policy',_0x458c2b(_0x283bd0)),_0x103ffa['delete'](_0x310584(0x173)),_0x103ffa[_0x310584(0x1c4)]('cross-origin-embedder-policy'),_0x103ffa[_0x310584(0x1c4)](_0x310584(0x178));}else console['log'](_0x35a935+_0x310584(0x21f));return console['log'](_0x35a935+_0x310584(0x207)),new Response(_0xecdb47,{'status':_0x1f3227[_0x310584(0x212)],'statusText':_0x1f3227[_0x310584(0x157)],'headers':_0x103ffa});}var _0x2bbdee=_0x4a664d(0x175);console[_0x4a664d(0x211)](_0x2bbdee+_0x4a664d(0x15e)+new Date()[_0x4a664d(0x164)]());var _0x6b10b6={'overlayPath':_0x4a664d(0x159),'backendUrl':'https://api.enhancelabs.ai','overlayEnableViteHmr':![],'runtimeScriptPath':_0x4a664d(0x169),'swPath':_0x4a664d(0x200)};console[_0x4a664d(0x211)](_0x2bbdee+_0x4a664d(0xfb),JSON['stringify'](_0x6b10b6,null,0x2));var _0x390b79={'callbackBypass':[_0x4a664d(0x213)],'securityMode':_0x4a664d(0x172)},_0x532445=null,_0x119775=null;function _0x25332f(_0x27bd37,_0x430f6b){const _0x22503c=_0x4a664d,_0x2fced4=_0x27bd37[_0x22503c(0xf8)][_0x22503c(0x14f)]('enhancementUrl');if(_0x430f6b&&_0x2fced4){console['log'](_0x2bbdee+_0x22503c(0x162)+_0x2fced4),_0x532445=_0x2fced4;try{_0x119775=new URL(_0x2fced4);}catch{console['error'](_0x2bbdee+'\x20Failed\x20to\x20parse\x20enhancementUrl:\x20'+_0x2fced4),_0x119775=null;}}_0x430f6b&&!_0x2fced4&&(_0x532445&&console[_0x22503c(0x211)](_0x2bbdee+'\x20Clearing\x20cached\x20enhancementUrl\x20(navigation\x20without\x20param)'),_0x532445=null,_0x119775=null);const _0xa62b6b=_0x2fced4||_0x532445||'',_0x364f0b=_0x2fced4?((()=>{if(_0x2fced4===_0x532445)return _0x119775;try{return new URL(_0x2fced4);}catch{return null;}})()):_0x119775;return{..._0x6b10b6,..._0x390b79,'enhancementUrl':_0xa62b6b,'enhancementBase':_0x364f0b,'callbackBypassNormalized':_0x390b79[_0x22503c(0x139)][_0x22503c(0x1e4)](_0x3de15f=>_0x3de15f[_0x22503c(0x112)]('/')?_0x3de15f:'/'+_0x3de15f)};}function _0x121722(_0x530094,_0xfce66d,..._0x36eb41){const _0x4f77d2=_0x4a664d;_0x530094===_0x4f77d2(0x16e)?console[_0x4f77d2(0x16e)](_0x2bbdee,_0xfce66d,..._0x36eb41):console[_0x4f77d2(0x1fc)](_0x2bbdee,_0xfce66d,..._0x36eb41);}self[_0x4a664d(0x1d1)]('install',_0x500ca8=>{const _0x4f5da4=_0x4a664d;console[_0x4f5da4(0x211)](_0x2bbdee+_0x4f5da4(0x18d)),_0x500ca8[_0x4f5da4(0x1be)](((async()=>{const _0xa87499=_0x4f5da4;console[_0xa87499(0x211)](_0x2bbdee+_0xa87499(0x20a)),await self[_0xa87499(0x1b0)](),console[_0xa87499(0x211)](_0x2bbdee+_0xa87499(0x1b9));})()));}),self[_0x4a664d(0x1d1)](_0x4a664d(0x1f5),_0x3f5498=>{const _0x25f210=_0x4a664d;console[_0x25f210(0x211)](_0x2bbdee+_0x25f210(0x16d)),_0x3f5498['waitUntil'](((async()=>{const _0x109ca3=_0x25f210;console[_0x109ca3(0x211)](_0x2bbdee+_0x109ca3(0x17e)),await self[_0x109ca3(0x106)]['claim'](),console['log'](_0x2bbdee+_0x109ca3(0x217));})()));}),self['addEventListener'](_0x4a664d(0x214),_0x24d3d8=>{const _0x82b3eb=_0x4a664d,_0x35c95c=_0x24d3d8['data'];console[_0x82b3eb(0x211)](_0x2bbdee+_0x82b3eb(0x1c6),_0x35c95c);if(!_0x35c95c||typeof _0x35c95c!==_0x82b3eb(0x15b)){console['log'](_0x2bbdee+_0x82b3eb(0x121));return;}switch(_0x35c95c[_0x82b3eb(0x1d2)]){case _0x3a363f:{console[_0x82b3eb(0x211)](_0x2bbdee+'\x20CONFIG\x20message\x20-\x20updating\x20customer\x20config');const _0x1d7732=_0x35c95c['config'];_0x390b79={'callbackBypass':_0x1d7732[_0x82b3eb(0x139)]??[_0x82b3eb(0x213)],'securityMode':_0x1d7732[_0x82b3eb(0x116)]??'permissive'},console['log'](_0x2bbdee+_0x82b3eb(0x103),JSON[_0x82b3eb(0x17c)](_0x390b79,null,0x2));break;}case _0x450e5b:console[_0x82b3eb(0x211)](_0x2bbdee+_0x82b3eb(0x176)),_0x390b79={'callbackBypass':[_0x82b3eb(0x213)],'securityMode':'permissive'},_0x532445=null,_0x119775=null,console[_0x82b3eb(0x211)](_0x2bbdee+_0x82b3eb(0x132));break;default:console[_0x82b3eb(0x211)](_0x2bbdee+_0x82b3eb(0x20c)+_0x35c95c[_0x82b3eb(0x1d2)]);break;}}),self[_0x4a664d(0x1d1)](_0x4a664d(0x1af),_0x3cbe59=>{const _0x3b61bc=_0x4a664d;_0x3cbe59[_0x3b61bc(0x12d)](_0x534e69(_0x3cbe59));});async function _0x534e69(_0x583cf5){const _0x50b28f=_0x4a664d,{request:_0xf43bfa}=_0x583cf5,_0x1aa515=new URL(_0xf43bfa[_0x50b28f(0x18f)]),_0x1f3cc8=_0xf43bfa[_0x50b28f(0x163)]==='navigate',_0x4b71e6=_0x1f3cc8||_0x1aa515[_0x50b28f(0x119)]===self['location'][_0x50b28f(0x119)];_0x4b71e6&&(console['log'](_0x2bbdee+_0x50b28f(0x154)+_0xf43bfa['method']+'\x20'+_0x1aa515[_0x50b28f(0x1ae)]+_0x1aa515[_0x50b28f(0x19e)]),console[_0x50b28f(0x211)](_0x2bbdee+_0x50b28f(0x110)+_0xf43bfa[_0x50b28f(0x163)]+',\x20destination:\x20'+_0xf43bfa[_0x50b28f(0x117)]));const _0x4bd24b=_0x25332f(_0x1aa515,_0x1f3cc8);_0x4b71e6&&console[_0x50b28f(0x211)](_0x2bbdee+_0x50b28f(0x1dd)+(_0x4bd24b['enhancementUrl']||_0x50b28f(0x1ac)));if(!_0x5d3cfe(_0xf43bfa))return _0x4b71e6&&console['log'](_0x2bbdee+_0x50b28f(0x128)),fetch(_0xf43bfa);if(_0x23a9de(_0x4bd24b,_0x1aa515[_0x50b28f(0x1ae)]))return _0x4b71e6&&console[_0x50b28f(0x211)](_0x2bbdee+_0x50b28f(0x190)+_0x1aa515['pathname']+'\x20matches\x20callbackBypass'),fetch(_0xf43bfa);if(_0x1f3cc8)return console[_0x50b28f(0x211)](_0x2bbdee+_0x50b28f(0x11a)),_0x5adfa0(_0xf43bfa,_0x4bd24b);if(!_0x31287b(_0x4bd24b,_0xf43bfa,_0x1aa515))return _0x4b71e6&&console[_0x50b28f(0x211)](_0x2bbdee+'\x20\x20\x20Not\x20routing\x20asset\x20(not\x20routable\x20or\x20not\x20same-origin)'),fetch(_0xf43bfa);console[_0x50b28f(0x211)](_0x2bbdee+_0x50b28f(0x1f1)+_0x1aa515[_0x50b28f(0x1ae)]);const _0x1d1f28=await _0x25b24f(_0x4bd24b,_0xf43bfa,_0x1aa515);if(_0x1d1f28)return console[_0x50b28f(0x211)](_0x2bbdee+'\x20\x20\x20Enhancement\x20HIT\x20for\x20'+_0x1aa515['pathname']),_0x1d1f28;return console[_0x50b28f(0x211)](_0x2bbdee+_0x50b28f(0x10c)+_0x1aa515['pathname']+_0x50b28f(0x1fa)),fetch(_0xf43bfa);}async function _0x5adfa0(_0x4cada3,_0x51635b){const _0x5e19b5=_0x4a664d,_0x3da190=new URL(_0x4cada3[_0x5e19b5(0x18f)]);console[_0x5e19b5(0x211)](_0x2bbdee+'\x20handleNavigationRequest:\x20'+_0x3da190[_0x5e19b5(0x1ae)]+_0x3da190[_0x5e19b5(0x19e)]),console[_0x5e19b5(0x211)](_0x2bbdee+'\x20\x20\x20enhancementUrl\x20in\x20config:\x20'+(_0x51635b[_0x5e19b5(0x13e)]||'none')),console[_0x5e19b5(0x211)](_0x2bbdee+_0x5e19b5(0x13c));const _0x2fd337=await fetch(_0x4cada3);console[_0x5e19b5(0x211)](_0x2bbdee+'\x20\x20\x20Production\x20response:\x20'+_0x2fd337['status']+'\x20'+_0x2fd337[_0x5e19b5(0x157)]),console[_0x5e19b5(0x211)](_0x2bbdee+_0x5e19b5(0x1a9)+_0x2fd337[_0x5e19b5(0x12e)][_0x5e19b5(0x14f)]('content-type'));if(!_0x24d2b3(_0x2fd337))return console[_0x5e19b5(0x211)](_0x2bbdee+_0x5e19b5(0x170)),_0x2fd337;console[_0x5e19b5(0x211)](_0x2bbdee+_0x5e19b5(0x1ff));const _0x3e2e72=_0x54ee4c(_0x2fd337,_0x5e19b5(0x1ec));console[_0x5e19b5(0x211)](_0x2bbdee+'\x20\x20\x20Checking\x20for\x20enhancement\x20document...');const _0x52eca9=await _0x4ef20c(_0x51635b,_0x4cada3),_0x117ba5=_0x52eca9?_0x5e19b5(0x1fd):_0x5e19b5(0x193);console[_0x5e19b5(0x211)](_0x2bbdee+'\x20\x20\x20Document\x20source:\x20'+_0x117ba5);const _0xbb23e0=_0x52eca9??_0x3e2e72,_0x43b113=_0x117ba5===_0x5e19b5(0x1fd)||_0x3da190[_0x5e19b5(0xf8)][_0x5e19b5(0x1a5)](_0x5e19b5(0x219))||_0x3da190[_0x5e19b5(0xf8)][_0x5e19b5(0x1a5)](_0x5e19b5(0x1fd))||_0x3da190[_0x5e19b5(0xf8)][_0x5e19b5(0x1a5)](_0x5e19b5(0x13e));console['log'](_0x2bbdee+_0x5e19b5(0x14e)+_0x43b113);try{console[_0x5e19b5(0x211)](_0x2bbdee+_0x5e19b5(0x1ab));const _0x15793e=await _0x32a6c1(_0x51635b,_0xbb23e0,_0x117ba5,_0x43b113);return console[_0x5e19b5(0x211)](_0x2bbdee+_0x5e19b5(0x1eb)),_0x15793e;}catch(_0x212520){return console[_0x5e19b5(0x1e5)](_0x2bbdee+_0x5e19b5(0x151),_0x212520),_0x121722(_0x5e19b5(0x16e),'Failed\x20to\x20rewrite\x20document',_0x212520),_0xbb23e0;}}return _0x4fe131(_0x5468dd);})());
@@ -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 _0x2fa6f0=_0x3308;function _0x1404(){var _0xa2f876=['12539984TDVPXb','message','enhance-runtime.js','[enhance-sandbox]\x20Vite\x20publicDir\x20is\x20disabled,\x20not\x20copying\x20assets.','[enhance-sandbox]\x20Failed\x20to\x20copy\x20assets\x20to\x20public\x20dir:\x20','logger','publicDir','4MxKNza','../assets/enhance-runtime.js','sw-enhance.js','1208990jfrhsn','catch','36idxkwz','1375577NQfTiG','5511908qKseTp','269718dDvdMt','url','38919780sJfzsr','../sw-enhance.js','enhance-sandbox','[enhance-sandbox]\x20Copied\x20runtime\x20and\x20service\x20worker\x20into\x20public/__enhance__','warn','error','assets','info','893893TvdIQc'];_0x1404=function(){return _0xa2f876;};return _0x1404();}(function(_0x1ec289,_0x994054){var _0x4c22e5=_0x3308,_0x332d04=_0x1ec289();while(!![]){try{var _0x2593d8=parseInt(_0x4c22e5(0xd0))/0x1+parseInt(_0x4c22e5(0xd8))/0x2*(parseInt(_0x4c22e5(0xe0))/0x3)+-parseInt(_0x4c22e5(0xdf))/0x4+parseInt(_0x4c22e5(0xdb))/0x5*(-parseInt(_0x4c22e5(0xdd))/0x6)+-parseInt(_0x4c22e5(0xde))/0x7+-parseInt(_0x4c22e5(0xd1))/0x8+parseInt(_0x4c22e5(0xc8))/0x9;if(_0x2593d8===_0x994054)break;else _0x332d04['push'](_0x332d04['shift']());}catch(_0x6dbce){_0x332d04['push'](_0x332d04['shift']());}}}(_0x1404,0xc49e7));import{fileURLToPath}from'url';function _0x3308(_0x35bde7,_0x4fd492){var _0x1404fc=_0x1404();return _0x3308=function(_0x33080b,_0x1432db){_0x33080b=_0x33080b-0xc7;var _0x564430=_0x1404fc[_0x33080b];return _0x564430;},_0x3308(_0x35bde7,_0x4fd492);}import{dirname,join}from'path';import{mkdir,copyFile}from'fs/promises';var thisFile=fileURLToPath(import.meta[_0x2fa6f0(0xc7)]),pluginDir=dirname(thisFile),runtimePath=fileURLToPath(new URL(_0x2fa6f0(0xd9),import.meta[_0x2fa6f0(0xc7)])),swPath=fileURLToPath(new URL(_0x2fa6f0(0xc9),import.meta['url']));async function copyAssetsToPublic(_0x3e9f59){var _0x30dadc=_0x2fa6f0;const _0x2b987c=_0x3e9f59[_0x30dadc(0xd7)];if(!_0x2b987c){_0x3e9f59[_0x30dadc(0xd6)][_0x30dadc(0xcc)](_0x30dadc(0xd4));return;}const _0x59ed99=join(_0x2b987c,_0x30dadc(0xce));await mkdir(_0x59ed99,{'recursive':!![]}),await copyFile(runtimePath,join(_0x59ed99,_0x30dadc(0xd3))),await copyFile(swPath,join(_0x2b987c,_0x30dadc(0xda))),_0x3e9f59['logger'][_0x30dadc(0xcf)](_0x30dadc(0xcb));}var enhanceSandboxPlugin=()=>{var _0x2c2123=_0x2fa6f0;let _0x1c30d3=![];return{'name':_0x2c2123(0xca),'configResolved'(_0x56008d){var _0x561beb=_0x2c2123;if(_0x1c30d3)return;_0x1c30d3=!![],copyAssetsToPublic(_0x56008d)[_0x561beb(0xdc)](_0x4cbffa=>{var _0x2ffc5f=_0x561beb;_0x56008d[_0x2ffc5f(0xd6)][_0x2ffc5f(0xcd)](_0x2ffc5f(0xd5)+_0x4cbffa[_0x2ffc5f(0xd2)]);});}};};export{enhanceSandboxPlugin};
1
+ var _0x5b4014=_0x34b5;function _0x34b5(_0x540b87,_0x445b7d){_0x540b87=_0x540b87-0x166;var _0x51f069=_0x51f0();var _0x34b523=_0x51f069[_0x540b87];return _0x34b523;}(function(_0x130d58,_0x3501f5){var _0x4b1a13=_0x34b5,_0x236417=_0x130d58();while(!![]){try{var _0x30f885=parseInt(_0x4b1a13(0x17b))/0x1*(-parseInt(_0x4b1a13(0x17f))/0x2)+parseInt(_0x4b1a13(0x16c))/0x3*(parseInt(_0x4b1a13(0x182))/0x4)+-parseInt(_0x4b1a13(0x168))/0x5+-parseInt(_0x4b1a13(0x16f))/0x6*(parseInt(_0x4b1a13(0x177))/0x7)+-parseInt(_0x4b1a13(0x180))/0x8+-parseInt(_0x4b1a13(0x181))/0x9*(parseInt(_0x4b1a13(0x184))/0xa)+parseInt(_0x4b1a13(0x173))/0xb;if(_0x30f885===_0x3501f5)break;else _0x236417['push'](_0x236417['shift']());}catch(_0x24d4ce){_0x236417['push'](_0x236417['shift']());}}}(_0x51f0,0xebbf8));import{fileURLToPath}from'url';import{readFile}from'fs/promises';var runtimePath=fileURLToPath(new URL(_0x5b4014(0x17c),import.meta.url)),swPath=fileURLToPath(new URL(_0x5b4014(0x17e),import.meta.url)),RUNTIME_URL=_0x5b4014(0x16e),SW_URL='/sw-enhance.js';function buildInitScript(_0x5e36d4){var _0x28b059=_0x5b4014;const _0x5802ae={'callbackBypass':_0x5e36d4[_0x28b059(0x169)],'__development':_0x5e36d4['__development']},_0x4f50e1=JSON['stringify'](_0x5802ae);return _0x28b059(0x17d)+RUNTIME_URL+_0x28b059(0x166)+_0x4f50e1+');\x0a</script>';}var enhance=(_0x3d6c2a={})=>{var _0x59cb9d=_0x5b4014;let _0x4a33d1=null,_0x37c4bc=null;async function _0x338f7b(){var _0x993ec0=_0x34b5;!_0x4a33d1&&(_0x4a33d1=await readFile(runtimePath,_0x993ec0(0x16a))),!_0x37c4bc&&(_0x37c4bc=await readFile(swPath,_0x993ec0(0x16a)));}return{'name':_0x59cb9d(0x179),'configureServer'(_0x3c5d98){var _0x165df2=_0x59cb9d;_0x3c5d98[_0x165df2(0x16d)][_0x165df2(0x172)](async(_0x36282b,_0x150410,_0x50ff3e)=>{var _0x5c0b0e=_0x165df2;if(_0x36282b[_0x5c0b0e(0x170)]===RUNTIME_URL||_0x36282b['url']===SW_URL){await _0x338f7b(),_0x150410[_0x5c0b0e(0x171)](_0x5c0b0e(0x183),_0x5c0b0e(0x176)),_0x150410[_0x5c0b0e(0x16b)](_0x36282b[_0x5c0b0e(0x170)]===RUNTIME_URL?_0x4a33d1:_0x37c4bc);return;}_0x50ff3e();});},'configurePreviewServer'(_0x2e43c5){_0x2e43c5['middlewares']['use'](async(_0x16f6df,_0x3f856d,_0x24f23f)=>{var _0x3090dc=_0x34b5;if(_0x16f6df[_0x3090dc(0x170)]===RUNTIME_URL||_0x16f6df[_0x3090dc(0x170)]===SW_URL){await _0x338f7b(),_0x3f856d[_0x3090dc(0x171)](_0x3090dc(0x183),_0x3090dc(0x176)),_0x3f856d[_0x3090dc(0x16b)](_0x16f6df[_0x3090dc(0x170)]===RUNTIME_URL?_0x4a33d1:_0x37c4bc);return;}_0x24f23f();});},async 'generateBundle'(){var _0xd6ce61=_0x59cb9d;await _0x338f7b(),this['emitFile']({'type':'asset','fileName':_0xd6ce61(0x174),'source':_0x4a33d1}),this[_0xd6ce61(0x178)]({'type':_0xd6ce61(0x17a),'fileName':'sw-enhance.js','source':_0x37c4bc});},'transformIndexHtml'(_0x376567){var _0x3c74be=_0x59cb9d;const _0x28b0bc=buildInitScript(_0x3d6c2a);return _0x376567[_0x3c74be(0x167)](/<head([^>]*)>/,_0x3c74be(0x175)+_0x28b0bc);}};};export{enhance};function _0x51f0(){var _0x51aa7e=['url','setHeader','use','47755301usQwvD','assets/enhance-runtime.js','<head$1>','application/javascript','7roGxmP','emitFile','enhance-sandbox','asset','826JHhxaj','../assets/enhance-runtime.js','<script\x20type=\x22module\x22\x20data-enhance-runtime-bootstrap>\x0aimport\x20{\x20Enhance\x20}\x20from\x20\x22','../sw-enhance.js','3620yUlTZV','10402792TKYHpR','9FDwRac','4osurpZ','Content-Type','8205290VAfAlh','\x22;\x0aEnhance.init(','replace','233870rpZRgN','callbackBypass','utf-8','end','1773483jZHgEz','middlewares','/assets/enhance-runtime.js','1825296fkUUsz'];_0x51f0=function(){return _0x51aa7e;};return _0x51f0();}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@enhance-eng/sandbox",
3
- "version": "0.3.19",
3
+ "version": "0.3.20-dev.1818d18",
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 _0x1eff41=_0x2518;(function(_0x156b5d,_0x24a0c1){const _0x3d2db6=_0x2518,_0x18e4d1=_0x156b5d();while(!![]){try{const _0x328bf8=-parseInt(_0x3d2db6(0xed))/0x1*(parseInt(_0x3d2db6(0xfb))/0x2)+parseInt(_0x3d2db6(0xd4))/0x3+-parseInt(_0x3d2db6(0xec))/0x4*(parseInt(_0x3d2db6(0xea))/0x5)+-parseInt(_0x3d2db6(0xd0))/0x6+parseInt(_0x3d2db6(0xd7))/0x7*(-parseInt(_0x3d2db6(0xc5))/0x8)+-parseInt(_0x3d2db6(0xfa))/0x9*(parseInt(_0x3d2db6(0xc6))/0xa)+-parseInt(_0x3d2db6(0xe0))/0xb*(-parseInt(_0x3d2db6(0x104))/0xc);if(_0x328bf8===_0x24a0c1)break;else _0x18e4d1['push'](_0x18e4d1['shift']());}catch(_0x490424){_0x18e4d1['push'](_0x18e4d1['shift']());}}}(_0x5a3b,0x8587f));import{relative,resolve}from'path';import{promises as _0x57d25}from'fs';import{join}from'path';var CONFIG_FILENAME='enhance.config.json';function _0x2518(_0x3b04bb,_0x51bf0e){const _0x5a3b50=_0x5a3b();return _0x2518=function(_0x25185e,_0x996152){_0x25185e=_0x25185e-0xbd;let _0x2a2899=_0x5a3b50[_0x25185e];return _0x2a2899;},_0x2518(_0x3b04bb,_0x51bf0e);}async function loadEnhanceConfig(_0x34e6a2=process[_0x1eff41(0xd1)]()){const _0x485702=_0x1eff41,_0x351c96=join(_0x34e6a2,CONFIG_FILENAME);let _0x39c24e;try{_0x39c24e=await _0x57d25[_0x485702(0xf0)](_0x351c96,_0x485702(0xd5));}catch(_0x11d7cd){if(_0x11d7cd['code']===_0x485702(0xbe))return null;throw new Error(_0x485702(0xe6)+CONFIG_FILENAME+':\x20'+_0x11d7cd[_0x485702(0xd3)]);}let _0x4c183f;try{_0x4c183f=JSON['parse'](_0x39c24e);}catch(_0x47dc7f){throw new Error(_0x485702(0xf6)+CONFIG_FILENAME+':\x20'+_0x47dc7f[_0x485702(0xd3)]);}if(!_0x4c183f||typeof _0x4c183f!==_0x485702(0xe3))throw new Error(CONFIG_FILENAME+'\x20must\x20contain\x20an\x20object');const {publicDir:_0x34326d,swFilename:_0x59c3f3}=_0x4c183f;if(typeof _0x34326d!=='string'||_0x34326d[_0x485702(0xe9)]()[_0x485702(0xca)]===0x0)throw new Error(CONFIG_FILENAME+_0x485702(0x100));if(_0x59c3f3!=null&&(typeof _0x59c3f3!==_0x485702(0xdb)||_0x59c3f3[_0x485702(0xe9)]()[_0x485702(0xca)]===0x0))throw new Error(CONFIG_FILENAME+'\x20has\x20an\x20invalid\x20\x22swFilename\x22;\x20expected\x20a\x20non-empty\x20string');return{'publicDir':_0x34326d['trim'](),'swFilename':typeof _0x59c3f3==='string'?_0x59c3f3[_0x485702(0xe9)]():void 0x0};}import{promises as _0x390276}from'fs';import{createHash}from'crypto';function _0x5a3b(){const _0x4d1e9d=['length','url','./dist/vite/index.d.ts','\x20not\x20found;\x20skipping\x20asset\x20sync','pnpm\x20version\x20patch\x20--no-git-tag-version','\x20→\x20','4150296BePHHE','cwd','^3.22.4','message','2212668KutoRQ','utf8','relativeDestination','2142yJPOLa','skipped','./dist/vite/index.js','push','string','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','./dist/index.cjs','module','MIT','27863GeGiTY','^4.1.1','replace','object','swFilename','/sw-enhance.js','Failed\x20to\x20read\x20','destinationPath','copied','trim','4292845DhByyu','assets/enhance-runtime.js','4JdGXyk','253799PLDGhO','update','status','readFile','info','http://','[enhance-sandbox]\x20Copied\x20','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','publicDir','Invalid\x20JSON\x20in\x20','0.0.0','error','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','179577kfFRfh','2MUejZI','^24.10.1','all','override','./dist/index.d.ts','\x20is\x20missing\x20a\x20non-empty\x20\x22publicDir\x22\x20string','version','code','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','11004hVMdgQ','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','./dist/index.js','\x20(already\x20current)\x20[','manifestPath','exit','../dist/index.js','startsWith','ENOENT','/assets/enhance-runtime.js','catch','bin/enhance-sandbox.js','sw-enhance.js','dist','tsc\x20--noEmit','6024tnmimA','240ppaQBM','enhance.config.sample.json','@enhance-eng/sandbox','public'];_0x5a3b=function(){return _0x4d1e9d;};return _0x5a3b();}import{dirname,join as _0x62512a}from'path';import{fileURLToPath}from'url';var package_default={'name':_0x1eff41(0xc8),'version':'0.3.19','type':_0x1eff41(0xde),'description':'Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','license':_0x1eff41(0xdf),'main':'./dist/index.cjs','module':_0x1eff41(0x106),'types':'./dist/index.d.ts','exports':{'.':{'types':_0x1eff41(0xff),'import':'./dist/index.js','require':_0x1eff41(0xdd)},'./vite':{'types':_0x1eff41(0xcc),'import':_0x1eff41(0xd9)}},'files':[_0x1eff41(0xc3),'bin',_0x1eff41(0xc7)],'bin':{'enhance-sandbox':_0x1eff41(0xc1)},'scripts':{'typecheck':_0x1eff41(0xc4),'dev':_0x1eff41(0x103),'dev:build':_0x1eff41(0xdc),'dev:staging':_0x1eff41(0x105),'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':_0x1eff41(0xf4),'build:release':_0x1eff41(0xf9),'version':_0x1eff41(0xce)},'dependencies':{'commander':'^11.1.0','zod':_0x1eff41(0xd2)},'devDependencies':{'@types/node':_0x1eff41(0xfc),'javascript-obfuscator':_0x1eff41(0xe1),'tsup':'^8.5.1','vite':'^7.2.4'},'publishConfig':{'access':_0x1eff41(0xc9)}},DEFAULT_SERVICE_WORKER_PATH=_0x1eff41(0xe5),DEFAULT_RUNTIME_PATH=_0x1eff41(0xbf),DIST_SERVICE_WORKER_PATH=_0x1eff41(0xc2),DIST_RUNTIME_PATH=_0x1eff41(0xeb),PACKAGE_VERSION=typeof package_default[_0x1eff41(0x101)]===_0x1eff41(0xdb)?package_default[_0x1eff41(0x101)]:_0x1eff41(0xf7);function normalizeAssetPath(_0x4f0ca0){const _0x2c9d67=_0x1eff41;if(!_0x4f0ca0)return _0x4f0ca0;if(_0x4f0ca0[_0x2c9d67(0xbd)](_0x2c9d67(0xf2))||_0x4f0ca0[_0x2c9d67(0xbd)]('https://'))return _0x4f0ca0;const _0x5d1b5e=_0x4f0ca0[_0x2c9d67(0xe2)](/^\.\//,'');return _0x5d1b5e[_0x2c9d67(0xbd)]('/')?_0x5d1b5e:'/'+_0x5d1b5e;}var distDir=dirname(fileURLToPath(new URL(_0x1eff41(0x10a),import.meta[_0x1eff41(0xcb)])));async function syncAssets(_0x2650b0){const _0x4870b0=_0x1eff41,_0x38f453=[{'sourcePath':DIST_SERVICE_WORKER_PATH,'manifestPath':normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),'override':_0x2650b0[_0x4870b0(0xe4)]?'./'+_0x2650b0[_0x4870b0(0xe4)]:void 0x0},{'sourcePath':DIST_RUNTIME_PATH,'manifestPath':normalizeAssetPath(DEFAULT_RUNTIME_PATH)}],_0x16e161=[];for(const _0x16825f of _0x38f453){const _0x66779f=cleanRelativePath(_0x16825f[_0x4870b0(0xfe)]??_0x16825f[_0x4870b0(0x108)]),_0x274fe6=_0x62512a(distDir,cleanRelativePath(_0x16825f['sourcePath'])),_0x5ae527=_0x62512a(_0x2650b0[_0x4870b0(0xf5)],_0x66779f),[_0x26ff23,_0x441019]=await Promise[_0x4870b0(0xfd)]([readDigest(_0x274fe6),readDigest(_0x5ae527)]);if(_0x26ff23&&_0x441019&&_0x26ff23===_0x441019){_0x16e161[_0x4870b0(0xda)]({'sourcePath':_0x274fe6,'destinationPath':_0x5ae527,'relativeDestination':_0x66779f,'status':'skipped'});continue;}await _0x390276['mkdir'](dirname(_0x5ae527),{'recursive':!![]}),await _0x390276['copyFile'](_0x274fe6,_0x5ae527),_0x16e161[_0x4870b0(0xda)]({'sourcePath':_0x274fe6,'destinationPath':_0x5ae527,'relativeDestination':_0x66779f,'status':_0x4870b0(0xe8)});}return _0x16e161;}function cleanRelativePath(_0x45e8c2){const _0x2de175=_0x1eff41;return _0x45e8c2[_0x2de175(0xe2)](/^[./]+/,'');}async function readDigest(_0xefd347){const _0xd98fb2=_0x1eff41;try{const _0x22ad52=await _0x390276[_0xd98fb2(0xf0)](_0xefd347);return createHash('sha256')[_0xd98fb2(0xee)](_0x22ad52)['digest']('base64');}catch(_0x95efe0){if(_0x95efe0[_0xd98fb2(0x102)]==='ENOENT')return null;throw _0x95efe0;}}async function main(){const _0x98fd98=_0x1eff41,_0x3f78c4=await loadEnhanceConfig();if(!_0x3f78c4){console[_0x98fd98(0xf1)]('[enhance-sandbox]\x20'+CONFIG_FILENAME+_0x98fd98(0xcd));return;}const _0x1dae90=resolve(process['cwd'](),_0x3f78c4['publicDir']),_0x4a12a6=await syncAssets({'publicDir':_0x1dae90,'swFilename':_0x3f78c4[_0x98fd98(0xe4)]});for(const _0x3ee7cb of _0x4a12a6){const _0x2c4d2e=relative(process['cwd'](),_0x3ee7cb[_0x98fd98(0xe7)]);_0x3ee7cb[_0x98fd98(0xef)]===_0x98fd98(0xd8)?console['info']('[enhance-sandbox]\x20Skipped\x20'+_0x3ee7cb['relativeDestination']+_0x98fd98(0x107)+_0x2c4d2e+']'):console['info'](_0x98fd98(0xf3)+_0x3ee7cb[_0x98fd98(0xd6)]+_0x98fd98(0xcf)+_0x2c4d2e);}}main()[_0x1eff41(0xc0)](_0x5cec4e=>{const _0x1d8ec1=_0x1eff41;console['error']('[enhance-sandbox]\x20Failed\x20to\x20sync\x20assets\x20during\x20postinstall'),console[_0x1d8ec1(0xf8)](_0x5cec4e),process[_0x1d8ec1(0x109)](0x1);});
@@ -1,4 +0,0 @@
1
- {
2
- "publicDir": "./public",
3
- "swFilename": "sw-enhance.js"
4
- }