@enhance-eng/sandbox 0.3.19 → 0.3.20-beta.97b80d8

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 _0x37b8de=_0x14df;(function(_0x5823e6,_0x91f3ba){const _0x311b08=_0x14df,_0x26f801=_0x5823e6();while(!![]){try{const _0x58e28d=parseInt(_0x311b08(0x174))/0x1+-parseInt(_0x311b08(0x116))/0x2+parseInt(_0x311b08(0xd6))/0x3*(-parseInt(_0x311b08(0x107))/0x4)+parseInt(_0x311b08(0x119))/0x5*(parseInt(_0x311b08(0x129))/0x6)+-parseInt(_0x311b08(0xfa))/0x7*(-parseInt(_0x311b08(0x146))/0x8)+-parseInt(_0x311b08(0x155))/0x9*(parseInt(_0x311b08(0x18f))/0xa)+parseInt(_0x311b08(0xf0))/0xb;if(_0x58e28d===_0x91f3ba)break;else _0x26f801['push'](_0x26f801['shift']());}catch(_0x5a2172){_0x26f801['push'](_0x26f801['shift']());}}}(_0x5d60,0x95258));var DEFAULT_OVERLAY_PATH=!![]?_0x37b8de(0x184):_0x37b8de(0x184),DEFAULT_BACKEND_URL=!![]?'https://api.enhancelabs.ai':_0x37b8de(0xb8),DEFAULT_OVERLAY_HMR=!![]?![]:![];console[_0x37b8de(0x169)](_0x37b8de(0xdf),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x2db1c0){const _0x554cb4=_0x37b8de,_0x601b6=_0x2db1c0[_0x554cb4(0x124)]??{};return{'callbackBypass':_0x2db1c0[_0x554cb4(0xf4)]??[],'overlay':{'enabled':!![],'position':_0x554cb4(0xd7),'enableViteHmr':_0x601b6[_0x554cb4(0x11f)]??DEFAULT_OVERLAY_HMR},'logLevel':_0x554cb4(0xc9),'swPath':_0x554cb4(0x170),'overlayPath':_0x601b6[_0x554cb4(0xb4)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x554cb4(0x15f),'security':_0x601b6[_0x554cb4(0xf5)]??'permissive','backendUrl':_0x601b6[_0x554cb4(0xbf)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x4d87b6=_0x37b8de;try{const _0x3a5d5d=new URLSearchParams(window[_0x4d87b6(0x15a)][_0x4d87b6(0x10c)]);return _0x3a5d5d[_0x4d87b6(0x151)](_0x4d87b6(0x160))?.[_0x4d87b6(0x102)]()||'';}catch{return'';}}var LOG_PREFIX=_0x37b8de(0x180),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x3aaf86){const _0xd363ba=_0x37b8de;console[_0xd363ba(0x169)](LOG_PREFIX+_0xd363ba(0x168)),console['log'](LOG_PREFIX+_0xd363ba(0x130)+_0x3aaf86['overlayPath']),console[_0xd363ba(0x169)](LOG_PREFIX+_0xd363ba(0x186)+_0x3aaf86[_0xd363ba(0xdb)]),currentOptions=_0x3aaf86[_0xd363ba(0xb9)],toggleHandler=_0x3aaf86[_0xd363ba(0x113)];if(overlayController){console[_0xd363ba(0x169)](LOG_PREFIX+'\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay'),updateOverlay();return;}if(overlayLoadPromise)return console['log'](LOG_PREFIX+_0xd363ba(0x176)),overlayLoadPromise;console[_0xd363ba(0x169)](LOG_PREFIX+_0xd363ba(0x12e)),overlayLoadPromise=doLoadOverlay(_0x3aaf86);try{await overlayLoadPromise,console[_0xd363ba(0x169)](LOG_PREFIX+_0xd363ba(0x13d));}catch(_0x5246b5){console['error'](LOG_PREFIX+_0xd363ba(0xd5),_0x5246b5);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x592b29){const _0x38839=_0x37b8de;console['log'](LOG_PREFIX+_0x38839(0xc1));if(typeof window===_0x38839(0x153)){console[_0x38839(0x169)](LOG_PREFIX+_0x38839(0x109));return;}if(window[_0x38839(0x126)]){console['log'](LOG_PREFIX+'\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit'),overlayController=window[_0x38839(0x126)];return;}console[_0x38839(0x169)](LOG_PREFIX+_0x38839(0x16c));try{_0x592b29[_0x38839(0xdb)]&&(console[_0x38839(0x169)](LOG_PREFIX+_0x38839(0x141)),await setupRemoteHMR(_0x592b29[_0x38839(0xb4)]));console[_0x38839(0x169)](LOG_PREFIX+_0x38839(0x11b)+_0x592b29[_0x38839(0xb4)]);const _0x3cbd8e=Date[_0x38839(0xf8)](),_0x24f260=await import(_0x592b29[_0x38839(0xb4)]);console['log'](LOG_PREFIX+'\x20Module\x20imported\x20in\x20'+(Date['now']()-_0x3cbd8e)+'ms'),console[_0x38839(0x169)](LOG_PREFIX+_0x38839(0xf1),Object[_0x38839(0xe7)](_0x24f260));if(typeof _0x24f260?.['createOverlay']!==_0x38839(0x122)){console['error'](LOG_PREFIX+_0x38839(0x140)),console['error'](LOG_PREFIX+_0x38839(0x11e),Object[_0x38839(0xe7)](_0x24f260));return;}console[_0x38839(0x169)](LOG_PREFIX+'\x20Calling\x20createOverlay()...');const _0x353ebc=_0x24f260[_0x38839(0x13c)]();console[_0x38839(0x169)](LOG_PREFIX+_0x38839(0xe8),_0x353ebc),overlayController=_0x353ebc,window[_0x38839(0x126)]=_0x353ebc,_0x353ebc[_0x38839(0x113)](_0x592b29['onToggle']),console[_0x38839(0x169)](LOG_PREFIX+_0x38839(0x11c)),console['log'](LOG_PREFIX+_0x38839(0x147)),updateOverlay();}catch(_0x59c614){console['error'](LOG_PREFIX+_0x38839(0xc4),_0x59c614);}}function updateOverlay(){const _0x15f9f9=_0x37b8de;console[_0x15f9f9(0x169)](LOG_PREFIX+_0x15f9f9(0xb7)),console['log'](LOG_PREFIX+_0x15f9f9(0x144)+!!overlayController),console['log'](LOG_PREFIX+'\x20currentOptions\x20exists:\x20'+!!currentOptions);if(!overlayController||!currentOptions){console[_0x15f9f9(0x169)](LOG_PREFIX+'\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update');return;}const _0x59b741=composeOverlayState(currentOptions);console[_0x15f9f9(0x169)](LOG_PREFIX+_0x15f9f9(0x104),JSON['stringify'](_0x59b741,null,0x2)),overlayController[_0x15f9f9(0x142)](_0x59b741),console[_0x15f9f9(0x169)](LOG_PREFIX+_0x15f9f9(0x187));}function composeOverlayState(_0x100ae6){const _0x3bd36e=_0x37b8de,_0x303740=getEnhancementUrl();return console[_0x3bd36e(0x169)](LOG_PREFIX+'\x20composeOverlayState\x20-\x20enhancementUrl:\x20'+_0x303740),console[_0x3bd36e(0x169)](LOG_PREFIX+_0x3bd36e(0xe5)+state[_0x3bd36e(0x156)]),console[_0x3bd36e(0x169)](LOG_PREFIX+_0x3bd36e(0x14b)+state[_0x3bd36e(0x188)]),{'enhancementUrl':_0x303740,'enabled':state[_0x3bd36e(0x156)],'controlled':state[_0x3bd36e(0x188)],'overlayPosition':_0x100ae6[_0x3bd36e(0xdc)]['position'],'securityMode':_0x100ae6[_0x3bd36e(0xf5)],'backendBaseUrl':_0x100ae6[_0x3bd36e(0xbf)],'appError':state['appError']};}async function setupRemoteHMR(_0x16d57c){const _0x59b161=_0x37b8de;console[_0x59b161(0x169)](LOG_PREFIX+_0x59b161(0xd9)+_0x16d57c);if(typeof window==='undefined')return;try{const _0x367a02=new URL(_0x16d57c,window[_0x59b161(0x15a)]['origin']),_0x53ec31=_0x367a02[_0x59b161(0xd4)];console[_0x59b161(0x169)](LOG_PREFIX+_0x59b161(0x15b)+_0x53ec31+_0x59b161(0x128)+window[_0x59b161(0x15a)][_0x59b161(0xd4)]);if(_0x53ec31===window[_0x59b161(0x15a)][_0x59b161(0xd4)]){console[_0x59b161(0x169)](LOG_PREFIX+_0x59b161(0xee));return;}console[_0x59b161(0x169)](LOG_PREFIX+_0x59b161(0xe4)),await ensureReactRefreshPreamble(_0x53ec31),await ensureViteClient(_0x53ec31),console['log'](LOG_PREFIX+_0x59b161(0xb2));}catch(_0xd48600){console[_0x59b161(0x17b)](LOG_PREFIX+_0x59b161(0x111),_0xd48600);}}async function ensureReactRefreshPreamble(_0x28303e){const _0x2d2946=_0x37b8de;window['__enhanceReactRefreshInstalledOrigins']??(window['__enhanceReactRefreshInstalledOrigins']=new Set());if(window[_0x2d2946(0xff)][_0x2d2946(0x105)](_0x28303e)){console[_0x2d2946(0x169)](LOG_PREFIX+'\x20React\x20Refresh\x20already\x20installed\x20for\x20'+_0x28303e);return;}console[_0x2d2946(0x169)](LOG_PREFIX+'\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20'+_0x28303e+'...');const _0x74c7a0=await import(_0x28303e+'/@react-refresh'),_0x56aa1a=_0x74c7a0&&typeof _0x74c7a0===_0x2d2946(0xed)&&_0x2d2946(0xec)in _0x74c7a0?_0x74c7a0[_0x2d2946(0xec)]:_0x74c7a0;if(!isRefreshRuntime(_0x56aa1a)){console['warn'](LOG_PREFIX+_0x2d2946(0x10d));return;}_0x56aa1a[_0x2d2946(0x121)](window),window[_0x2d2946(0x177)]=()=>{},window[_0x2d2946(0x164)]=()=>_0x45bc40=>_0x45bc40,window[_0x2d2946(0x161)]=!![],window[_0x2d2946(0xff)]['add'](_0x28303e),console[_0x2d2946(0x169)](LOG_PREFIX+'\x20React\x20Refresh\x20runtime\x20installed\x20for\x20'+_0x28303e);}async function ensureViteClient(_0x170850){const _0x1f6e41=_0x37b8de;window[_0x1f6e41(0x10b)]??(window[_0x1f6e41(0x10b)]=new Set());if(window[_0x1f6e41(0x10b)][_0x1f6e41(0x105)](_0x170850)){console[_0x1f6e41(0x169)](LOG_PREFIX+_0x1f6e41(0x15c)+_0x170850);return;}console[_0x1f6e41(0x169)](LOG_PREFIX+_0x1f6e41(0xb3)+_0x170850+_0x1f6e41(0x12b)),await import(_0x170850+'/@vite/client'),window[_0x1f6e41(0x10b)]['add'](_0x170850),console[_0x1f6e41(0x169)](LOG_PREFIX+'\x20Vite\x20HMR\x20client\x20loaded\x20for\x20'+_0x170850);}function isRefreshRuntime(_0x59ba88){const _0x2193b7=_0x37b8de;return typeof _0x59ba88===_0x2193b7(0xed)&&_0x59ba88!==null&&_0x2193b7(0x121)in _0x59ba88&&typeof _0x59ba88[_0x2193b7(0x121)]===_0x2193b7(0x122);}var WORKER_MESSAGE_CONFIG=_0x37b8de(0x14a),WORKER_MESSAGE_DISABLE=_0x37b8de(0x17e),LOG_PREFIX2=_0x37b8de(0x178),registration=null,currentOptions2=null;function _0x14df(_0x2c727b,_0x29a431){_0x2c727b=_0x2c727b-0xb2;const _0x5d60eb=_0x5d60();let _0x14df1a=_0x5d60eb[_0x2c727b];return _0x14df1a;}async function registerServiceWorker(_0x4f3cdf){const _0x6f55ce=_0x37b8de;console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0x15e)),console[_0x6f55ce(0x169)](LOG_PREFIX2+'\x20swPath:\x20'+_0x4f3cdf['swPath']);if(!(_0x6f55ce(0x17f)in navigator)){console[_0x6f55ce(0x17b)](LOG_PREFIX2+'\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser');return;}console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0xc0));const _0x5badbd=navigator[_0x6f55ce(0x17f)][_0x6f55ce(0x136)];console['log'](LOG_PREFIX2+'\x20Current\x20controller:',_0x5badbd?.['scriptURL']??_0x6f55ce(0xfc)),console[_0x6f55ce(0x169)](LOG_PREFIX2+'\x20Controller\x20state:',_0x5badbd?.[_0x6f55ce(0xe3)]??_0x6f55ce(0x117));const _0xa4d6b0=!!_0x5badbd;currentOptions2=_0x4f3cdf,console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0xcc));const _0x81c7a3=await detectBlockingServiceWorker(_0x4f3cdf['swPath']);if(_0x81c7a3){console[_0x6f55ce(0x14d)](LOG_PREFIX2+'\x20BLOCKING\x20SW\x20detected:\x20'+_0x81c7a3),console['error'](LOG_PREFIX2+_0x6f55ce(0x101));return;}console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0x10f));try{console[_0x6f55ce(0x169)](LOG_PREFIX2+'\x20Registering\x20SW\x20at\x20'+_0x4f3cdf['swPath']+_0x6f55ce(0x103)),registration=await navigator[_0x6f55ce(0x17f)][_0x6f55ce(0xcf)](_0x4f3cdf['swPath'],{'scope':'/'}),console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0x123),{'scope':registration[_0x6f55ce(0x11a)],'active':registration[_0x6f55ce(0x11d)]?.[_0x6f55ce(0x157)],'waiting':registration['waiting']?.[_0x6f55ce(0x157)],'installing':registration[_0x6f55ce(0x16a)]?.['scriptURL']}),console[_0x6f55ce(0x169)](LOG_PREFIX2+'\x20Waiting\x20for\x20navigator.serviceWorker.ready...');const _0x3a9247=await navigator[_0x6f55ce(0x17f)][_0x6f55ce(0xe2)];console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0x18e),_0x3a9247[_0x6f55ce(0x11d)]?.[_0x6f55ce(0x157)]);const _0x42d9cd=ownsCurrentController(_0x4f3cdf['swPath']);state[_0x6f55ce(0x188)]=_0x42d9cd,console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0xc2)+_0x42d9cd),console[_0x6f55ce(0x169)](LOG_PREFIX2+'\x20Current\x20controller\x20after\x20ready:',navigator['serviceWorker'][_0x6f55ce(0x136)]?.['scriptURL']??_0x6f55ce(0xfc));if(!_0xa4d6b0&&!navigator[_0x6f55ce(0x17f)]['controller']){console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0xc6)),window[_0x6f55ce(0x15a)][_0x6f55ce(0x131)]();return;}console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0x132)),await sendConfiguration();if(state['enabled']){const _0x11a1f5=document[_0x6f55ce(0x159)](_0x6f55ce(0xbb))!==null;console[_0x6f55ce(0x169)](LOG_PREFIX2+'\x20Enhancement\x20detection:\x20wasEnhanced='+_0x11a1f5);if(!_0x11a1f5){console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0xe6)),window[_0x6f55ce(0x15a)][_0x6f55ce(0x131)]();return;}}console[_0x6f55ce(0x169)](LOG_PREFIX2+_0x6f55ce(0x139)),updateOverlay(),console[_0x6f55ce(0x169)](LOG_PREFIX2+'\x20registerServiceWorker()\x20complete');}catch(_0x435173){console['error'](LOG_PREFIX2+_0x6f55ce(0xc7),_0x435173);}}async function sendConfiguration(){const _0x21eee4=_0x37b8de;console[_0x21eee4(0x169)](LOG_PREFIX2+_0x21eee4(0x162)),console[_0x21eee4(0x169)](LOG_PREFIX2+_0x21eee4(0x16f)+state[_0x21eee4(0x156)]+_0x21eee4(0xf2)+!!currentOptions2);if(!state[_0x21eee4(0x156)]||!currentOptions2){console['log'](LOG_PREFIX2+_0x21eee4(0xf9));return;}const _0x43f443=await resolveWorker();if(!_0x43f443){console[_0x21eee4(0x17b)](LOG_PREFIX2+'\x20No\x20service\x20worker\x20active\x20to\x20configure');return;}const _0x429fa8={'callbackBypass':currentOptions2['callbackBypass'],'securityMode':currentOptions2[_0x21eee4(0xf5)]};console['log'](LOG_PREFIX2+_0x21eee4(0x152),JSON[_0x21eee4(0x17d)](_0x429fa8,null,0x2)),_0x43f443['postMessage']({'type':WORKER_MESSAGE_CONFIG,'config':_0x429fa8}),console[_0x21eee4(0x169)](LOG_PREFIX2+_0x21eee4(0x167));}async function unregisterServiceWorker(_0x341fc5){const _0x13a4ef=_0x37b8de;console[_0x13a4ef(0x169)](LOG_PREFIX2+_0x13a4ef(0x14c));if(!(_0x13a4ef(0x17f)in navigator)){console['log'](LOG_PREFIX2+_0x13a4ef(0x106));return;}try{const _0x3a9094=registration??await navigator[_0x13a4ef(0x17f)]['getRegistration']('/');if(!_0x3a9094){console[_0x13a4ef(0x169)](LOG_PREFIX2+'\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister');return;}console['log'](LOG_PREFIX2+_0x13a4ef(0x17c),{'scope':_0x3a9094[_0x13a4ef(0x11a)],'active':_0x3a9094[_0x13a4ef(0x11d)]?.[_0x13a4ef(0x157)],'waiting':_0x3a9094[_0x13a4ef(0x172)]?.['scriptURL'],'installing':_0x3a9094[_0x13a4ef(0x16a)]?.[_0x13a4ef(0x157)]});const _0x29bd77=[_0x3a9094[_0x13a4ef(0x11d)]?.[_0x13a4ef(0x157)],_0x3a9094[_0x13a4ef(0x172)]?.[_0x13a4ef(0x157)],_0x3a9094[_0x13a4ef(0x16a)]?.[_0x13a4ef(0x157)]],_0x13619c=_0x29bd77[_0x13a4ef(0xe9)](_0x50097f=>_0x50097f&&ownsServiceWorker(_0x50097f,_0x341fc5));if(!_0x13619c){console[_0x13a4ef(0x169)](LOG_PREFIX2+_0x13a4ef(0xf6));return;}_0x3a9094[_0x13a4ef(0x11d)]&&(console[_0x13a4ef(0x169)](LOG_PREFIX2+_0x13a4ef(0x189)),_0x3a9094[_0x13a4ef(0x11d)][_0x13a4ef(0x18c)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x13a4ef(0x169)](LOG_PREFIX2+'\x20Unregistering\x20SW...'),await _0x3a9094['unregister'](),registration=null,currentOptions2=null,console['log'](LOG_PREFIX2+_0x13a4ef(0x133));}catch(_0x329f29){console[_0x13a4ef(0x14d)](LOG_PREFIX2+_0x13a4ef(0x135),_0x329f29);}}function ownsServiceWorker(_0x495b83,_0x1ae02c){const _0x2ff688=_0x37b8de,_0x5bc667=typeof window!==_0x2ff688(0x153)?window[_0x2ff688(0x15a)][_0x2ff688(0xd4)]:'',_0x44bfab=new URL(_0x1ae02c,_0x5bc667||void 0x0)[_0x2ff688(0xd2)],_0x323018=_0x495b83===_0x44bfab||_0x495b83[_0x2ff688(0x14e)]('sw-enhance');return console[_0x2ff688(0x169)](LOG_PREFIX2+_0x2ff688(0xe0)+_0x495b83+_0x2ff688(0x145)+_0x44bfab+_0x2ff688(0x115)+_0x323018),_0x323018;}function ownsCurrentController(_0x18ca7e){const _0x51d747=_0x37b8de;if(typeof navigator===_0x51d747(0x153))return![];const _0x5b4aea=navigator['serviceWorker']?.[_0x51d747(0x136)];if(!_0x5b4aea)return console['log'](LOG_PREFIX2+_0x51d747(0x149)),![];return ownsServiceWorker(_0x5b4aea['scriptURL'],_0x18ca7e);}async function detectBlockingServiceWorker(_0x22a25a){const _0x296cce=_0x37b8de;if(!navigator[_0x296cce(0x17f)])return null;try{const _0x22c528=await navigator[_0x296cce(0x17f)][_0x296cce(0x10a)]('/');console[_0x296cce(0x169)](LOG_PREFIX2+_0x296cce(0xef),_0x22c528?.[_0x296cce(0x11d)]?.[_0x296cce(0x157)]??_0x296cce(0xfc));const _0x129848=_0x22c528?.['active']?.[_0x296cce(0x157)];if(!_0x129848)return null;if(ownsServiceWorker(_0x129848,_0x22a25a))return null;return _0x129848;}catch(_0x26aca2){return console['error'](LOG_PREFIX2+_0x296cce(0x18b),_0x26aca2),null;}}async function resolveWorker(){const _0x1dd998=_0x37b8de,_0x3503f0=registration??await navigator[_0x1dd998(0x17f)]?.[_0x1dd998(0x10a)]('/'),_0x429a3a=_0x3503f0?.[_0x1dd998(0x11d)]??_0x3503f0?.[_0x1dd998(0x172)]??_0x3503f0?.[_0x1dd998(0x16a)]??null;return console[_0x1dd998(0x169)](LOG_PREFIX2+_0x1dd998(0x137),_0x429a3a?.[_0x1dd998(0x157)]??_0x1dd998(0xfc),'state:\x20'+(_0x429a3a?.[_0x1dd998(0xe3)]??_0x1dd998(0x117))),_0x429a3a;}var LOG_PREFIX3=_0x37b8de(0x15d);function isInitialized(){const _0x247350=_0x37b8de;return typeof window!==_0x247350(0x153)&&window[_0x247350(0xeb)]===!![];}function setInitialized(_0x392c95){const _0xa40528=_0x37b8de;typeof window!==_0xa40528(0x153)&&(window[_0xa40528(0xeb)]=_0x392c95);}function getOptions(){const _0x2abcfd=_0x37b8de;return typeof window!==_0x2abcfd(0x153)?window[_0x2abcfd(0x17a)]??null:null;}function setOptions(_0x65811b){const _0x2db435=_0x37b8de;typeof window!=='undefined'&&(window[_0x2db435(0x17a)]=_0x65811b);}var Enhance={'init'(_0x4a3249={}){const _0xc6de41=_0x37b8de,_0x473183=Date[_0xc6de41(0xf8)]();console['log'](LOG_PREFIX3+_0xc6de41(0xea)+_0x473183),console[_0xc6de41(0x169)](LOG_PREFIX3+_0xc6de41(0x112)+window[_0xc6de41(0x15a)][_0xc6de41(0xd2)]),console['log'](LOG_PREFIX3+_0xc6de41(0xce)+document[_0xc6de41(0x12c)]),console['log'](LOG_PREFIX3+_0xc6de41(0x158),JSON[_0xc6de41(0x17d)](_0x4a3249,null,0x2));if(isInitialized())return console['warn'](LOG_PREFIX3+_0xc6de41(0xcd)),window[_0xc6de41(0xb6)]??createController();setInitialized(!![]),console['log'](LOG_PREFIX3+_0xc6de41(0x12d));const _0x174927=normalizeOptions(_0x4a3249);setOptions(_0x174927),console[_0xc6de41(0x169)](LOG_PREFIX3+_0xc6de41(0x171),JSON[_0xc6de41(0x17d)](_0x174927,null,0x2));const _0x5b0c51=parseUrlParams();console['log'](LOG_PREFIX3+_0xc6de41(0x16b),JSON[_0xc6de41(0x17d)](_0x5b0c51,null,0x2));if(_0x5b0c51[_0xc6de41(0xf7)])return cleanUrlParam(_0xc6de41(0xcb)),console[_0xc6de41(0x169)](LOG_PREFIX3+_0xc6de41(0xbc)),createController();if(_0x5b0c51[_0xc6de41(0xca)])return console['log'](LOG_PREFIX3+_0xc6de41(0x166)),console[_0xc6de41(0x169)](LOG_PREFIX3+_0xc6de41(0x110)+_0x5b0c51[_0xc6de41(0x160)]),console[_0xc6de41(0x169)](LOG_PREFIX3+_0xc6de41(0xe1)+_0x5b0c51['enhancementId']),state[_0xc6de41(0x156)]=!![],console[_0xc6de41(0x169)](LOG_PREFIX3+_0xc6de41(0xc5)),void loadOverlay({'overlayPath':_0x174927[_0xc6de41(0xb4)],'enableViteHmr':_0x174927[_0xc6de41(0xdc)]['enableViteHmr'],'options':_0x174927,'onToggle':handleToggle}),console[_0xc6de41(0x169)](LOG_PREFIX3+_0xc6de41(0x134)),void registerServiceWorker(_0x174927),console['log'](LOG_PREFIX3+_0xc6de41(0x127)),createController();return console[_0xc6de41(0x169)](LOG_PREFIX3+_0xc6de41(0x100)),console[_0xc6de41(0x169)](LOG_PREFIX3+'\x20Unregistering\x20any\x20existing\x20SW...'),void unregisterServiceWorker(_0x174927['swPath']),console[_0xc6de41(0x169)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20normal\x20mode'),import.meta.hot&&(console['log'](LOG_PREFIX3+'\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners'),import.meta.hot['on']('vite:error',_0x3df95e=>{const _0xcbe386=_0xc6de41;console['log'](LOG_PREFIX3+_0xcbe386(0x154),_0x3df95e),state[_0xcbe386(0x14f)]={'message':_0x3df95e[_0xcbe386(0x108)][_0xcbe386(0xd8)]},updateOverlay();}),import.meta.hot['on'](_0xc6de41(0x179),()=>{const _0x2e1d12=_0xc6de41;state[_0x2e1d12(0x14f)]&&(console[_0x2e1d12(0x169)](LOG_PREFIX3+_0x2e1d12(0xc8)),state[_0x2e1d12(0x14f)]=null,updateOverlay());})),createController();}};function createController(){const _0x31bd5e=_0x37b8de,_0x5e69b3={'enable'(){const _0x4e2f9e=_0x14df,_0x171d05=getOptions();if(!_0x171d05)return;state[_0x4e2f9e(0x156)]=!![],void loadOverlay({'overlayPath':_0x171d05[_0x4e2f9e(0xb4)],'enableViteHmr':_0x171d05[_0x4e2f9e(0xdc)]['enableViteHmr'],'options':_0x171d05,'onToggle':handleToggle}),void registerServiceWorker(_0x171d05),void sendConfiguration(),updateOverlay();},'disable'(){const _0xcfa686=_0x14df,_0x5091b8=getOptions();if(!_0x5091b8)return;state[_0xcfa686(0x156)]=![],state['controlled']=![],updateOverlay(),void unregisterServiceWorker(_0x5091b8[_0xcfa686(0xbd)]);},'status'(){const _0x2eacda=_0x14df;return{'enabled':state['enabled'],'controlled':state[_0x2eacda(0x188)]};}};return typeof window!==_0x31bd5e(0x153)&&(window[_0x31bd5e(0xb6)]=_0x5e69b3),_0x5e69b3;}function handleToggle(){const _0x25f506=_0x37b8de,_0x3b0b05=createController();state[_0x25f506(0x156)]?_0x3b0b05[_0x25f506(0xbe)]():_0x3b0b05[_0x25f506(0x182)]();}function parseUrlParams(){const _0x49f5d1=_0x37b8de,_0x450686=new URL(window[_0x49f5d1(0x15a)][_0x49f5d1(0xd2)]),_0x85cec8=_0x450686[_0x49f5d1(0xfd)][_0x49f5d1(0x151)]('enhance')?.[_0x49f5d1(0x165)](),_0x4a9b79=_0x450686[_0x49f5d1(0xfd)]['get'](_0x49f5d1(0x160)),_0x141075=_0x450686['searchParams'][_0x49f5d1(0x151)](_0x49f5d1(0x183));return{'hasEnhancement':Boolean(_0x4a9b79||_0x141075),'explicitDisable':_0x85cec8==='0'||_0x85cec8===_0x49f5d1(0x13a)||_0x85cec8==='off','enhancementUrl':_0x4a9b79,'enhancementId':_0x141075};}function cleanUrlParam(_0x172a26){const _0x37be3c=_0x37b8de,_0xd887b8=new URL(window['location'][_0x37be3c(0xd2)]);_0xd887b8[_0x37be3c(0xfd)]['has'](_0x172a26)&&(_0xd887b8[_0x37be3c(0xfd)][_0x37be3c(0x18d)](_0x172a26),window[_0x37be3c(0xd0)][_0x37be3c(0x16e)](null,document[_0x37be3c(0xd3)],_0xd887b8[_0x37be3c(0x173)]()));}var package_default={'name':_0x37b8de(0x175),'version':_0x37b8de(0x120),'type':_0x37b8de(0x163),'description':_0x37b8de(0xf3),'license':_0x37b8de(0x16d),'main':_0x37b8de(0x143),'module':_0x37b8de(0x143),'types':'./dev/index.d.ts','exports':{'.':{'types':_0x37b8de(0x13b),'import':_0x37b8de(0x143)},'./vite':{'types':_0x37b8de(0x13f),'import':_0x37b8de(0xfe)}},'files':[_0x37b8de(0x125)],'bin':{'enhance-sandbox':'./dev/cli.js'},'scripts':{'typecheck':_0x37b8de(0x10e),'dev':_0x37b8de(0xda),'dev:build':'ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','dev:staging':_0x37b8de(0x148),'dev:staging:build':_0x37b8de(0x13e),'build':_0x37b8de(0xba),'build:release':'ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','build:release:dev':_0x37b8de(0xb5),'version':'bun\x20version\x20patch\x20--no-git-tag-version'},'dependencies':{'commander':_0x37b8de(0xdd),'zod':'^3.22.4'},'devDependencies':{'@types/node':_0x37b8de(0xd1),'javascript-obfuscator':'^4.1.1','tsup':_0x37b8de(0x18a),'vite':'^7.2.4'},'publishConfig':{'access':_0x37b8de(0xfb)}},DEFAULT_SERVICE_WORKER_PATH=_0x37b8de(0x170),DEFAULT_RUNTIME_PATH=_0x37b8de(0x15f),PACKAGE_VERSION=typeof package_default['version']===_0x37b8de(0x138)?package_default[_0x37b8de(0xde)]:_0x37b8de(0x185);function normalizeAssetPath(_0x266824){const _0xb29fbc=_0x37b8de;if(!_0x266824)return _0x266824;if(_0x266824[_0xb29fbc(0xc3)](_0xb29fbc(0x12a))||_0x266824[_0xb29fbc(0xc3)](_0xb29fbc(0x114)))return _0x266824;const _0x58d653=_0x266824[_0xb29fbc(0x181)](/^\.\//,'');return _0x58d653[_0xb29fbc(0xc3)]('/')?_0x58d653:'/'+_0x58d653;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x23ffd5={}){const _0x410dc3=_0x37b8de;return Enhance[_0x410dc3(0x118)](_0x23ffd5);},'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 _0x1bca8b=_0x37b8de;return Enhance2[_0x1bca8b(0x12f)]();}function runtimeURL(){const _0xd48c47=_0x37b8de;return Enhance2[_0xd48c47(0x150)]();}export{Enhance2 as Enhance,getAssetManifest,resolveServiceWorkerPath,runtimeURL,serviceWorkerURL};function _0x5d60(){const _0x297826=['version','[Enhance\x20Config]\x20Build-time\x20defaults:','\x20ownsServiceWorker?\x20scriptURL=','\x20enhancementId:\x20','ready','state','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','\x20composeOverlayState\x20-\x20state.enabled:\x20','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','keys','\x20Controller\x20created:','some','\x20init()\x20called\x20at\x20','__enhanceInitialized','default','object','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','\x20detectBlocking\x20-\x20existing\x20registration:','11519673yXawBx','\x20Module\x20exports:',',\x20currentOptions:\x20','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','callbackBypass','security','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','explicitDisable','now','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','7POwyGH','public','none','searchParams','./dev/vite/index.js','__enhanceReactRefreshInstalledOrigins','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','trim','\x20with\x20scope\x20\x27/\x27...','\x20Updating\x20overlay\x20with\x20state:','has','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','654812mYGTHx','err','\x20No\x20window\x20object\x20-\x20skipping','getRegistration','__viteHMRLoaded','search','\x20Invalid\x20React\x20Refresh\x20runtime','tsc\x20--noEmit','\x20No\x20blocking\x20SW\x20found','\x20enhancementUrl:\x20','\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):','\x20Current\x20URL:\x20','onToggle','https://',',\x20owns=','2005814jtedUt','N/A','init','34615WxcdYb','scope','\x20Importing\x20overlay\x20module\x20from:\x20','\x20Overlay\x20controller\x20initialized\x20and\x20cached','active','\x20Available\x20exports:','enableOverlayHmr','0.3.20','injectIntoGlobalHook','function','\x20Registration\x20returned:','__development','dev/','__enhanceOverlay','\x20init()\x20complete\x20-\x20enhancement\x20mode',',\x20page\x20origin:\x20','894ABoGtq','http://','...','readyState','\x20First\x20initialization','\x20Starting\x20fresh\x20overlay\x20load...','serviceWorkerURL','\x20overlayPath:\x20','reload','\x20Sending\x20customer\x20configuration...','\x20SW\x20unregistered\x20successfully','\x20Starting\x20SW\x20registration\x20(async)...','\x20Failed\x20to\x20unregister\x20service\x20worker:','controller','\x20resolveWorker:','string','\x20Updating\x20overlay...','false','./dev/index.d.ts','createOverlay','\x20loadOverlay()\x20complete','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','./dev/vite/index.d.ts','\x20Module\x20missing\x20createOverlay\x20export!','\x20Setting\x20up\x20remote\x20HMR...','update','./dev/index.js','\x20overlayController\x20exists:\x20',',\x20expected=','1741832GtlCPn','\x20Calling\x20updateOverlay()...','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','\x20No\x20current\x20controller','enhance:configure','\x20composeOverlayState\x20-\x20state.controlled:\x20','\x20unregisterServiceWorker()\x20called','error','includes','appError','runtimeURL','get','\x20Sending\x20customer\x20config\x20to\x20SW:','undefined','\x20Vite\x20error\x20detected:','4361301XWmyFT','enabled','scriptURL','\x20Raw\x20options:','querySelector','location','\x20Overlay\x20origin:\x20','\x20Vite\x20client\x20already\x20loaded\x20for\x20','[Enhance\x20Runtime]','\x20registerServiceWorker()\x20called','/assets/enhance-runtime.js','enhancementUrl','__vite_plugin_react_preamble_installed__','\x20sendConfiguration()\x20called','module','$RefreshSig$','toLowerCase','\x20Enhancement\x20mode\x20ENABLED','\x20Config\x20sent\x20to\x20SW','\x20loadOverlay()\x20called','log','installing','\x20URL\x20params\x20parsed:','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','MIT','replaceState','\x20state.enabled:\x20','/sw-enhance.js','\x20Normalized\x20options:','waiting','toString','947822kVhtDX','@enhance-eng/sandbox','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','$RefreshReg$','[Enhance\x20SW-Client]','vite:beforeUpdate','__enhanceOptions','warn','\x20Found\x20registration:','stringify','enhance:disable','serviceWorker','[Enhance\x20Overlay]','replace','enable','enhancement','https://assets.enhancelabs.ai/overlay.js','0.0.0','\x20enableViteHmr:\x20','\x20Overlay\x20update\x20complete','controlled','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','^8.5.1','\x20detectBlocking\x20error:','postMessage','delete','\x20SW\x20ready!\x20Active:','10YxIoWn','\x20HMR\x20setup\x20complete','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','overlayPath','ENHANCE_OVERLAY_PATH=https://assets-dev.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','__enhanceController','\x20updateOverlay()\x20called','https://api.enhancelabs.ai','options','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','[data-enhance-runtime-bootstrap]','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','swPath','disable','backendUrl','\x20Service\x20workers\x20supported','\x20doLoadOverlay()\x20starting...','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','startsWith','\x20Failed\x20to\x20import/create\x20overlay:','\x20Starting\x20overlay\x20load\x20(async)...','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','\x20Failed\x20to\x20register\x20service\x20worker:','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','info','hasEnhancement','enhance','\x20Checking\x20for\x20blocking\x20service\x20worker...','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','\x20Document\x20readyState:\x20','register','history','^24.10.1','href','title','origin','\x20loadOverlay()\x20failed:','21hpqyFS','bottom-right','message','\x20setupRemoteHMR()\x20for\x20','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','enableViteHmr','overlay','^11.1.0'];_0x5d60=function(){return _0x297826;};return _0x5d60();}
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 _0x54f385=_0xf437;(function(_0x2db257,_0x177c32){const _0x2ea4aa=_0xf437,_0x4cdd0f=_0x2db257();while(!![]){try{const _0x3f5fa5=parseInt(_0x2ea4aa(0x268))/0x1*(-parseInt(_0x2ea4aa(0x23e))/0x2)+parseInt(_0x2ea4aa(0x1d5))/0x3+-parseInt(_0x2ea4aa(0x257))/0x4*(-parseInt(_0x2ea4aa(0x1da))/0x5)+-parseInt(_0x2ea4aa(0x2bc))/0x6+parseInt(_0x2ea4aa(0x25f))/0x7*(parseInt(_0x2ea4aa(0x247))/0x8)+parseInt(_0x2ea4aa(0x29e))/0x9*(parseInt(_0x2ea4aa(0x204))/0xa)+-parseInt(_0x2ea4aa(0x2c2))/0xb;if(_0x3f5fa5===_0x177c32)break;else _0x4cdd0f['push'](_0x4cdd0f['shift']());}catch(_0x50146d){_0x4cdd0f['push'](_0x4cdd0f['shift']());}}}(_0x33f5,0x32ee1));import{Command}from'commander';import{resolve,relative}from'path';var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!==_0x54f385(0x25e)?__ENHANCE_DEFAULT_OVERLAY_PATH__:_0x54f385(0x28f),DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!==_0x54f385(0x25e)?__ENHANCE_DEFAULT_BACKEND_URL__:_0x54f385(0x28e),DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!==_0x54f385(0x25e)?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console[_0x54f385(0x203)]('[Enhance\x20Config]\x20Build-time\x20defaults:',{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x2e3c6c){const _0x2436d6=_0x54f385,_0x4f8f4f=_0x2e3c6c[_0x2436d6(0x236)]??{};return{'callbackBypass':_0x2e3c6c[_0x2436d6(0x234)]??[],'overlay':{'enabled':!![],'position':_0x2436d6(0x230),'enableViteHmr':_0x4f8f4f[_0x2436d6(0x22c)]??DEFAULT_OVERLAY_HMR},'logLevel':_0x2436d6(0x1f5),'swPath':_0x2436d6(0x1f9),'overlayPath':_0x4f8f4f[_0x2436d6(0x22a)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x2436d6(0x264),'security':_0x4f8f4f[_0x2436d6(0x1ff)]??'permissive','backendUrl':_0x4f8f4f[_0x2436d6(0x249)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x540b53=_0x54f385;try{const _0x3c277a=new URLSearchParams(window[_0x540b53(0x1f4)]['search']);return _0x3c277a[_0x540b53(0x22e)](_0x540b53(0x25b))?.['trim']()||'';}catch{return'';}}var LOG_PREFIX=_0x54f385(0x2a6),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x1b60f4){const _0x40b5e4=_0x54f385;console[_0x40b5e4(0x203)](LOG_PREFIX+_0x40b5e4(0x28b)),console['log'](LOG_PREFIX+_0x40b5e4(0x1e6)+_0x1b60f4[_0x40b5e4(0x22a)]),console[_0x40b5e4(0x203)](LOG_PREFIX+'\x20enableViteHmr:\x20'+_0x1b60f4['enableViteHmr']),currentOptions=_0x1b60f4[_0x40b5e4(0x2c7)],toggleHandler=_0x1b60f4[_0x40b5e4(0x2bd)];if(overlayController){console[_0x40b5e4(0x203)](LOG_PREFIX+'\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay'),updateOverlay();return;}if(overlayLoadPromise)return console[_0x40b5e4(0x203)](LOG_PREFIX+_0x40b5e4(0x295)),overlayLoadPromise;console['log'](LOG_PREFIX+'\x20Starting\x20fresh\x20overlay\x20load...'),overlayLoadPromise=doLoadOverlay(_0x1b60f4);try{await overlayLoadPromise,console[_0x40b5e4(0x203)](LOG_PREFIX+_0x40b5e4(0x27a));}catch(_0x541b1c){console[_0x40b5e4(0x271)](LOG_PREFIX+'\x20loadOverlay()\x20failed:',_0x541b1c);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x5281bf){const _0x56f20a=_0x54f385;console['log'](LOG_PREFIX+_0x56f20a(0x2a3));if(typeof window===_0x56f20a(0x25e)){console[_0x56f20a(0x203)](LOG_PREFIX+_0x56f20a(0x23c));return;}if(window[_0x56f20a(0x1e4)]){console[_0x56f20a(0x203)](LOG_PREFIX+_0x56f20a(0x20d)),overlayController=window[_0x56f20a(0x1e4)];return;}console[_0x56f20a(0x203)](LOG_PREFIX+_0x56f20a(0x216));try{_0x5281bf['enableViteHmr']&&(console['log'](LOG_PREFIX+'\x20Setting\x20up\x20remote\x20HMR...'),await setupRemoteHMR(_0x5281bf['overlayPath']));console['log'](LOG_PREFIX+_0x56f20a(0x29f)+_0x5281bf['overlayPath']);const _0x25dfa4=Date[_0x56f20a(0x1dd)](),_0x37a72e=await import(_0x5281bf[_0x56f20a(0x22a)]);console['log'](LOG_PREFIX+_0x56f20a(0x27d)+(Date[_0x56f20a(0x1dd)]()-_0x25dfa4)+'ms'),console[_0x56f20a(0x203)](LOG_PREFIX+_0x56f20a(0x1d6),Object[_0x56f20a(0x1eb)](_0x37a72e));if(typeof _0x37a72e?.[_0x56f20a(0x2c8)]!==_0x56f20a(0x297)){console[_0x56f20a(0x271)](LOG_PREFIX+'\x20Module\x20missing\x20createOverlay\x20export!'),console[_0x56f20a(0x271)](LOG_PREFIX+_0x56f20a(0x255),Object[_0x56f20a(0x1eb)](_0x37a72e));return;}console['log'](LOG_PREFIX+_0x56f20a(0x1dc));const _0x1f01b6=_0x37a72e['createOverlay']();console[_0x56f20a(0x203)](LOG_PREFIX+_0x56f20a(0x28d),_0x1f01b6),overlayController=_0x1f01b6,window[_0x56f20a(0x1e4)]=_0x1f01b6,_0x1f01b6[_0x56f20a(0x2bd)](_0x5281bf[_0x56f20a(0x2bd)]),console[_0x56f20a(0x203)](LOG_PREFIX+_0x56f20a(0x2c6)),console['log'](LOG_PREFIX+_0x56f20a(0x210)),updateOverlay();}catch(_0x2a69b8){console[_0x56f20a(0x271)](LOG_PREFIX+_0x56f20a(0x235),_0x2a69b8);}}function _0xf437(_0x168cbf,_0x388ca8){_0x168cbf=_0x168cbf-0x1d2;const _0x33f5a4=_0x33f5();let _0xf437f2=_0x33f5a4[_0x168cbf];return _0xf437f2;}function updateOverlay(){const _0x4a13ae=_0x54f385;console[_0x4a13ae(0x203)](LOG_PREFIX+_0x4a13ae(0x2a7)),console['log'](LOG_PREFIX+_0x4a13ae(0x211)+!!overlayController),console[_0x4a13ae(0x203)](LOG_PREFIX+_0x4a13ae(0x259)+!!currentOptions);if(!overlayController||!currentOptions){console['log'](LOG_PREFIX+_0x4a13ae(0x228));return;}const _0x3c888c=composeOverlayState(currentOptions);console['log'](LOG_PREFIX+'\x20Updating\x20overlay\x20with\x20state:',JSON['stringify'](_0x3c888c,null,0x2)),overlayController[_0x4a13ae(0x27e)](_0x3c888c),console[_0x4a13ae(0x203)](LOG_PREFIX+_0x4a13ae(0x24f));}function composeOverlayState(_0x474e60){const _0x4185d2=_0x54f385,_0x3dcb46=getEnhancementUrl();return console[_0x4185d2(0x203)](LOG_PREFIX+_0x4185d2(0x20b)+_0x3dcb46),console['log'](LOG_PREFIX+_0x4185d2(0x27f)+state[_0x4185d2(0x24c)]),console['log'](LOG_PREFIX+'\x20composeOverlayState\x20-\x20state.controlled:\x20'+state[_0x4185d2(0x2aa)]),{'enhancementUrl':_0x3dcb46,'enabled':state['enabled'],'controlled':state[_0x4185d2(0x2aa)],'overlayPosition':_0x474e60[_0x4185d2(0x1f2)][_0x4185d2(0x1e1)],'securityMode':_0x474e60[_0x4185d2(0x1ff)],'backendBaseUrl':_0x474e60['backendUrl'],'appError':state[_0x4185d2(0x263)]};}function _0x33f5(){const _0xca4595=['installing','\x20loadOverlay()\x20called','\x20Found\x20registration:','\x20Controller\x20created:','https://api.enhancelabs.ai','https://assets.enhancelabs.ai/overlay.js','digest','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','^24.10.1','public','\x20URL\x20params\x20parsed:','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','has','function','enhancement','object','\x20No\x20service\x20worker\x20active\x20to\x20configure','\x20sendConfiguration()\x20called','__enhanceOptions','\x20with\x20scope\x20\x27/\x27...','152991VWGGVC','\x20Importing\x20overlay\x20module\x20from:\x20','unregister','controller','\x20(already\x20current)\x20[','\x20doLoadOverlay()\x20starting...','stdout','manifestPath','[Enhance\x20Overlay]','\x20updateOverlay()\x20called','warn','searchParams','controlled','\x20unregisterServiceWorker()\x20called','getRegistration','https://','[Enhance\x20Runtime]','sha256','includes','^11.1.0','querySelector','bun\x20version\x20patch\x20--no-git-tag-version','\x20detectBlocking\x20-\x20existing\x20registration:','hasEnhancement','all','\x20No\x20current\x20controller','scriptURL','\x20enhancementId:\x20','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','relativeDestination','88944ihQeOW','onToggle','\x20Document\x20readyState:\x20','__enhanceInitialized','ready','\x20resolveWorker:','5945808Pfatwj','none','swPath','origin','\x20Overlay\x20controller\x20initialized\x20and\x20cached','options','createOverlay','\x20Enhancement\x20detection:\x20wasEnhanced=','\x20swPath:\x20','\x20→\x20','__enhanceReactRefreshInstalledOrigins','\x20setupRemoteHMR()\x20for\x20','module','N/A','782403AlSGtW','\x20Module\x20exports:','command','enableViteHmr','\x20Config\x20sent\x20to\x20SW','17805fckohP','/@vite/client','\x20Calling\x20createOverlay()...','now','\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser',',\x20page\x20origin:\x20','enhancementId','position','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','version','__enhanceOverlay','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','\x20overlayPath:\x20','history','vite:error',',\x20expected=','injectIntoGlobalHook','keys','href','copied','skipped','dev/','\x20Registration\x20returned:','serviceWorker','overlay','\x20Registering\x20SW\x20at\x20','location','info','\x20Controller\x20state:','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','\x20Unregistering\x20any\x20existing\x20SW...','/sw-enhance.js','Directory\x20to\x20copy\x20the\x20service\x20worker\x20into','./dev/cli.js',',\x20owns=','\x20detectBlocking\x20error:','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','security','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','sw-enhance.js','[data-enhance-runtime-bootstrap]','log','50ijCyoa','active','parseAsync','\x20Loading\x20Vite\x20HMR\x20client\x20from\x20','sw-enhance','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','enhance-sandbox','\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit','\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','\x20Calling\x20updateOverlay()...','\x20overlayController\x20exists:\x20','scope','toString','action','destinationPath','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','\x20Sending\x20DISABLE\x20message\x20to\x20SW...','waiting','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','enhance','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','./dev/vite/index.js','\x20Waiting\x20for\x20navigator.serviceWorker.ready...','\x20HMR\x20setup\x20complete','^7.2.4','\x20Vite\x20client\x20already\x20loaded\x20for\x20','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','push','\x20Starting\x20SW\x20registration\x20(async)...','\x20Failed\x20to\x20unregister\x20service\x20worker:','code','\x20Invalid\x20React\x20Refresh\x20runtime','add','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','status','overlayPath','\x20Vite\x20HMR\x20client\x20loaded\x20for\x20','enableOverlayHmr','./dev/index.d.ts','get','sourcePath','bottom-right','prepare-sw','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','\x20Sending\x20customer\x20configuration...','callbackBypass','\x20Failed\x20to\x20import/create\x20overlay:','__development','\x20First\x20initialization','default','^8.5.1','manifest','err','\x20No\x20window\x20object\x20-\x20skipping','requiredOption','4804RVkWwZ','\x20state.enabled:\x20','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','readyState','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','cwd','copyFile','\x20Starting\x20overlay\x20load\x20(async)...','ENHANCE_OVERLAY_PATH=https://assets-dev.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','152XassED','...','backendUrl','Skipped\x20','\x20React\x20Refresh\x20already\x20installed\x20for\x20','enabled','__viteHMRLoaded','toLowerCase','\x20Overlay\x20update\x20complete','\x20Failed\x20to\x20register\x20service\x20worker:','enable','some','./dev/index.js','swFilename','\x20Available\x20exports:','assets/enhance-runtime.js','236ykLNtG','^4.1.1','\x20currentOptions\x20exists:\x20','mkdir','enhancementUrl','startsWith','filename','undefined','142142UQXEQc','description','false','\x20Current\x20URL:\x20','appError','/assets/enhance-runtime.js','Copied\x20','\x20SW\x20unregistered\x20successfully','enhance:disable','74MaznOf','\x20BLOCKING\x20SW\x20detected:\x20','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','stringify','postMessage','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','./dev/vite/index.d.ts','__enhanceController','0.3.20','error','\x20Current\x20controller:','\x20Current\x20controller\x20after\x20ready:','__vite_plugin_react_preamble_installed__','state:\x20','--public-dir\x20<path>','\x20Enhancement\x20mode\x20ENABLED','$RefreshSig$','\x20init()\x20called\x20at\x20','\x20loadOverlay()\x20complete','runtimeURL','serviceWorkerURL','\x20Module\x20imported\x20in\x20','update','\x20composeOverlayState\x20-\x20state.enabled:\x20','enhance:configure','\x20Sending\x20customer\x20config\x20to\x20SW:',',\x20currentOptions:\x20','Print\x20the\x20current\x20asset\x20manifest','\x20init()\x20complete\x20-\x20normal\x20mode','$RefreshReg$','http://','state','\x20registerServiceWorker()\x20complete','write'];_0x33f5=function(){return _0xca4595;};return _0x33f5();}async function setupRemoteHMR(_0x2b5952){const _0x21a042=_0x54f385;console[_0x21a042(0x203)](LOG_PREFIX+_0x21a042(0x1d2)+_0x2b5952);if(typeof window===_0x21a042(0x25e))return;try{const _0x372d21=new URL(_0x2b5952,window['location'][_0x21a042(0x2c5)]),_0x2b84a1=_0x372d21[_0x21a042(0x2c5)];console[_0x21a042(0x203)](LOG_PREFIX+'\x20Overlay\x20origin:\x20'+_0x2b84a1+_0x21a042(0x1df)+window[_0x21a042(0x1f4)]['origin']);if(_0x2b84a1===window[_0x21a042(0x1f4)]['origin']){console[_0x21a042(0x203)](LOG_PREFIX+_0x21a042(0x209));return;}console[_0x21a042(0x203)](LOG_PREFIX+_0x21a042(0x1f7)),await ensureReactRefreshPreamble(_0x2b84a1),await ensureViteClient(_0x2b84a1),console[_0x21a042(0x203)](LOG_PREFIX+_0x21a042(0x21e));}catch(_0x2194e4){console[_0x21a042(0x2a8)](LOG_PREFIX+'\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):',_0x2194e4);}}async function ensureReactRefreshPreamble(_0x4ee495){const _0x3e6ddd=_0x54f385;window[_0x3e6ddd(0x2cc)]??=new Set();if(window[_0x3e6ddd(0x2cc)][_0x3e6ddd(0x296)](_0x4ee495)){console[_0x3e6ddd(0x203)](LOG_PREFIX+_0x3e6ddd(0x24b)+_0x4ee495);return;}console[_0x3e6ddd(0x203)](LOG_PREFIX+'\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20'+_0x4ee495+_0x3e6ddd(0x248));const _0x558296=await import(_0x4ee495+'/@react-refresh'),_0x12976b=_0x558296&&typeof _0x558296===_0x3e6ddd(0x299)&&_0x3e6ddd(0x238)in _0x558296?_0x558296['default']:_0x558296;if(!isRefreshRuntime(_0x12976b)){console[_0x3e6ddd(0x2a8)](LOG_PREFIX+_0x3e6ddd(0x226));return;}_0x12976b[_0x3e6ddd(0x1ea)](window),window[_0x3e6ddd(0x285)]=()=>{},window[_0x3e6ddd(0x278)]=()=>_0x58a93a=>_0x58a93a,window[_0x3e6ddd(0x274)]=!![],window[_0x3e6ddd(0x2cc)][_0x3e6ddd(0x227)](_0x4ee495),console[_0x3e6ddd(0x203)](LOG_PREFIX+_0x3e6ddd(0x21b)+_0x4ee495);}async function ensureViteClient(_0x1ec068){const _0x129c6d=_0x54f385;window['__viteHMRLoaded']??=new Set();if(window[_0x129c6d(0x24d)][_0x129c6d(0x296)](_0x1ec068)){console[_0x129c6d(0x203)](LOG_PREFIX+_0x129c6d(0x220)+_0x1ec068);return;}console[_0x129c6d(0x203)](LOG_PREFIX+_0x129c6d(0x207)+_0x1ec068+_0x129c6d(0x248)),await import(_0x1ec068+_0x129c6d(0x1db)),window[_0x129c6d(0x24d)][_0x129c6d(0x227)](_0x1ec068),console[_0x129c6d(0x203)](LOG_PREFIX+_0x129c6d(0x22b)+_0x1ec068);}function isRefreshRuntime(_0x48e56a){const _0x5e903c=_0x54f385;return typeof _0x48e56a===_0x5e903c(0x299)&&_0x48e56a!==null&&_0x5e903c(0x1ea)in _0x48e56a&&typeof _0x48e56a[_0x5e903c(0x1ea)]===_0x5e903c(0x297);}var WORKER_MESSAGE_CONFIG=_0x54f385(0x280),WORKER_MESSAGE_DISABLE=_0x54f385(0x267),LOG_PREFIX2='[Enhance\x20SW-Client]',registration=null,currentOptions2=null;async function registerServiceWorker(_0x352754){const _0x3d3926=_0x54f385;console[_0x3d3926(0x203)](LOG_PREFIX2+'\x20registerServiceWorker()\x20called'),console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x2ca)+_0x352754['swPath']);if(!('serviceWorker'in navigator)){console[_0x3d3926(0x2a8)](LOG_PREFIX2+_0x3d3926(0x1de));return;}console[_0x3d3926(0x203)](LOG_PREFIX2+'\x20Service\x20workers\x20supported');const _0x12b67f=navigator['serviceWorker'][_0x3d3926(0x2a1)];console['log'](LOG_PREFIX2+_0x3d3926(0x272),_0x12b67f?.[_0x3d3926(0x2b8)]??_0x3d3926(0x2c3)),console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x1f6),_0x12b67f?.[_0x3d3926(0x287)]??'N/A');const _0x2da069=!!_0x12b67f;currentOptions2=_0x352754,console[_0x3d3926(0x203)](LOG_PREFIX2+'\x20Checking\x20for\x20blocking\x20service\x20worker...');const _0x14572f=await detectBlockingServiceWorker(_0x352754[_0x3d3926(0x2c4)]);if(_0x14572f){console[_0x3d3926(0x271)](LOG_PREFIX2+_0x3d3926(0x269)+_0x14572f),console[_0x3d3926(0x271)](LOG_PREFIX2+_0x3d3926(0x1fe));return;}console[_0x3d3926(0x203)](LOG_PREFIX2+'\x20No\x20blocking\x20SW\x20found');try{console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x1f3)+_0x352754[_0x3d3926(0x2c4)]+_0x3d3926(0x29d)),registration=await navigator['serviceWorker']['register'](_0x352754['swPath'],{'scope':'/'}),console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x1f0),{'scope':registration['scope'],'active':registration['active']?.[_0x3d3926(0x2b8)],'waiting':registration[_0x3d3926(0x218)]?.[_0x3d3926(0x2b8)],'installing':registration[_0x3d3926(0x28a)]?.[_0x3d3926(0x2b8)]}),console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x21d));const _0x474ae1=await navigator[_0x3d3926(0x1f1)][_0x3d3926(0x2c0)];console[_0x3d3926(0x203)](LOG_PREFIX2+'\x20SW\x20ready!\x20Active:',_0x474ae1['active']?.[_0x3d3926(0x2b8)]);const _0x1285e9=ownsCurrentController(_0x352754[_0x3d3926(0x2c4)]);state[_0x3d3926(0x2aa)]=_0x1285e9,console['log'](LOG_PREFIX2+_0x3d3926(0x240)+_0x1285e9),console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x273),navigator[_0x3d3926(0x1f1)][_0x3d3926(0x2a1)]?.[_0x3d3926(0x2b8)]??_0x3d3926(0x2c3));if(!_0x2da069&&!navigator[_0x3d3926(0x1f1)]['controller']){console['log'](LOG_PREFIX2+_0x3d3926(0x1e2)),window[_0x3d3926(0x1f4)]['reload']();return;}console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x233)),await sendConfiguration();if(state[_0x3d3926(0x24c)]){const _0x2ed671=document[_0x3d3926(0x2b2)](_0x3d3926(0x202))!==null;console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x2c9)+_0x2ed671);if(!_0x2ed671){console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x291)),window[_0x3d3926(0x1f4)]['reload']();return;}}console[_0x3d3926(0x203)](LOG_PREFIX2+'\x20Updating\x20overlay...'),updateOverlay(),console[_0x3d3926(0x203)](LOG_PREFIX2+_0x3d3926(0x288));}catch(_0x517386){console[_0x3d3926(0x271)](LOG_PREFIX2+_0x3d3926(0x250),_0x517386);}}async function sendConfiguration(){const _0x56cd66=_0x54f385;console[_0x56cd66(0x203)](LOG_PREFIX2+_0x56cd66(0x29b)),console[_0x56cd66(0x203)](LOG_PREFIX2+_0x56cd66(0x23f)+state[_0x56cd66(0x24c)]+_0x56cd66(0x282)+!!currentOptions2);if(!state['enabled']||!currentOptions2){console['log'](LOG_PREFIX2+_0x56cd66(0x221));return;}const _0x21719=await resolveWorker();if(!_0x21719){console['warn'](LOG_PREFIX2+_0x56cd66(0x29a));return;}const _0x5c4bcc={'callbackBypass':currentOptions2[_0x56cd66(0x234)],'securityMode':currentOptions2[_0x56cd66(0x1ff)]};console['log'](LOG_PREFIX2+_0x56cd66(0x281),JSON[_0x56cd66(0x26b)](_0x5c4bcc,null,0x2)),_0x21719['postMessage']({'type':WORKER_MESSAGE_CONFIG,'config':_0x5c4bcc}),console[_0x56cd66(0x203)](LOG_PREFIX2+_0x56cd66(0x1d9));}async function unregisterServiceWorker(_0xdf8af8){const _0x5ab826=_0x54f385;console[_0x5ab826(0x203)](LOG_PREFIX2+_0x5ab826(0x2ab));if(!(_0x5ab826(0x1f1)in navigator)){console[_0x5ab826(0x203)](LOG_PREFIX2+_0x5ab826(0x26d));return;}try{const _0x2c7250=registration??await navigator[_0x5ab826(0x1f1)][_0x5ab826(0x2ac)]('/');if(!_0x2c7250){console[_0x5ab826(0x203)](LOG_PREFIX2+'\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister');return;}console[_0x5ab826(0x203)](LOG_PREFIX2+_0x5ab826(0x28c),{'scope':_0x2c7250[_0x5ab826(0x212)],'active':_0x2c7250[_0x5ab826(0x205)]?.[_0x5ab826(0x2b8)],'waiting':_0x2c7250[_0x5ab826(0x218)]?.[_0x5ab826(0x2b8)],'installing':_0x2c7250['installing']?.[_0x5ab826(0x2b8)]});const _0x222e2d=[_0x2c7250[_0x5ab826(0x205)]?.[_0x5ab826(0x2b8)],_0x2c7250[_0x5ab826(0x218)]?.[_0x5ab826(0x2b8)],_0x2c7250[_0x5ab826(0x28a)]?.[_0x5ab826(0x2b8)]],_0x559565=_0x222e2d[_0x5ab826(0x252)](_0xb87415=>_0xb87415&&ownsServiceWorker(_0xb87415,_0xdf8af8));if(!_0x559565){console[_0x5ab826(0x203)](LOG_PREFIX2+'\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering');return;}_0x2c7250[_0x5ab826(0x205)]&&(console[_0x5ab826(0x203)](LOG_PREFIX2+_0x5ab826(0x217)),_0x2c7250[_0x5ab826(0x205)][_0x5ab826(0x26c)]({'type':WORKER_MESSAGE_DISABLE})),console[_0x5ab826(0x203)](LOG_PREFIX2+'\x20Unregistering\x20SW...'),await _0x2c7250[_0x5ab826(0x2a0)](),registration=null,currentOptions2=null,console[_0x5ab826(0x203)](LOG_PREFIX2+_0x5ab826(0x266));}catch(_0x39c399){console[_0x5ab826(0x271)](LOG_PREFIX2+_0x5ab826(0x224),_0x39c399);}}function ownsServiceWorker(_0x2b76a0,_0x1d0eef){const _0x16ccd1=_0x54f385,_0x255bdc=typeof window!==_0x16ccd1(0x25e)?window['location'][_0x16ccd1(0x2c5)]:'',_0x2c96d9=new URL(_0x1d0eef,_0x255bdc||void 0x0)[_0x16ccd1(0x1ec)],_0x55b64b=_0x2b76a0===_0x2c96d9||_0x2b76a0[_0x16ccd1(0x2b0)](_0x16ccd1(0x208));return console[_0x16ccd1(0x203)](LOG_PREFIX2+'\x20ownsServiceWorker?\x20scriptURL='+_0x2b76a0+_0x16ccd1(0x1e9)+_0x2c96d9+_0x16ccd1(0x1fc)+_0x55b64b),_0x55b64b;}function ownsCurrentController(_0x5b73ae){const _0x1d59f7=_0x54f385;if(typeof navigator===_0x1d59f7(0x25e))return![];const _0x105eee=navigator[_0x1d59f7(0x1f1)]?.[_0x1d59f7(0x2a1)];if(!_0x105eee)return console[_0x1d59f7(0x203)](LOG_PREFIX2+_0x1d59f7(0x2b7)),![];return ownsServiceWorker(_0x105eee['scriptURL'],_0x5b73ae);}async function detectBlockingServiceWorker(_0x31bd02){const _0x48213c=_0x54f385;if(!navigator[_0x48213c(0x1f1)])return null;try{const _0x2a9671=await navigator['serviceWorker']['getRegistration']('/');console['log'](LOG_PREFIX2+_0x48213c(0x2b4),_0x2a9671?.[_0x48213c(0x205)]?.[_0x48213c(0x2b8)]??_0x48213c(0x2c3));const _0x4a6859=_0x2a9671?.[_0x48213c(0x205)]?.[_0x48213c(0x2b8)];if(!_0x4a6859)return null;if(ownsServiceWorker(_0x4a6859,_0x31bd02))return null;return _0x4a6859;}catch(_0x3d5eaf){return console[_0x48213c(0x271)](LOG_PREFIX2+_0x48213c(0x1fd),_0x3d5eaf),null;}}async function resolveWorker(){const _0x1873a2=_0x54f385,_0x4c9265=registration??await navigator['serviceWorker']?.[_0x1873a2(0x2ac)]('/'),_0x161832=_0x4c9265?.['active']??_0x4c9265?.['waiting']??_0x4c9265?.[_0x1873a2(0x28a)]??null;return console[_0x1873a2(0x203)](LOG_PREFIX2+_0x1873a2(0x2c1),_0x161832?.[_0x1873a2(0x2b8)]??_0x1873a2(0x2c3),_0x1873a2(0x275)+(_0x161832?.[_0x1873a2(0x287)]??_0x1873a2(0x1d4))),_0x161832;}var LOG_PREFIX3=_0x54f385(0x2ae);function isInitialized(){const _0x408b45=_0x54f385;return typeof window!=='undefined'&&window[_0x408b45(0x2bf)]===!![];}function setInitialized(_0xca508){typeof window!=='undefined'&&(window['__enhanceInitialized']=_0xca508);}function getOptions(){const _0x22c6ba=_0x54f385;return typeof window!=='undefined'?window[_0x22c6ba(0x29c)]??null:null;}function setOptions(_0x5a7ea4){const _0x70dde0=_0x54f385;typeof window!==_0x70dde0(0x25e)&&(window[_0x70dde0(0x29c)]=_0x5a7ea4);}var Enhance={'init'(_0x4d5f7a={}){const _0x5cd74a=_0x54f385,_0x3ff24e=Date[_0x5cd74a(0x1dd)]();console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x279)+_0x3ff24e),console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x262)+window[_0x5cd74a(0x1f4)][_0x5cd74a(0x1ec)]),console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x2be)+document[_0x5cd74a(0x241)]),console[_0x5cd74a(0x203)](LOG_PREFIX3+'\x20Raw\x20options:',JSON[_0x5cd74a(0x26b)](_0x4d5f7a,null,0x2));if(isInitialized())return console[_0x5cd74a(0x2a8)](LOG_PREFIX3+_0x5cd74a(0x200)),window[_0x5cd74a(0x26f)]??createController();setInitialized(!![]),console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x237));const _0x1891b7=normalizeOptions(_0x4d5f7a);setOptions(_0x1891b7),console['log'](LOG_PREFIX3+'\x20Normalized\x20options:',JSON[_0x5cd74a(0x26b)](_0x1891b7,null,0x2));const _0x4db508=parseUrlParams();console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x294),JSON['stringify'](_0x4db508,null,0x2));if(_0x4db508['explicitDisable'])return cleanUrlParam('enhance'),console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x2ba)),createController();if(_0x4db508[_0x5cd74a(0x2b5)])return console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x277)),console[_0x5cd74a(0x203)](LOG_PREFIX3+'\x20enhancementUrl:\x20'+_0x4db508[_0x5cd74a(0x25b)]),console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x2b9)+_0x4db508[_0x5cd74a(0x1e0)]),state[_0x5cd74a(0x24c)]=!![],console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x245)),void loadOverlay({'overlayPath':_0x1891b7[_0x5cd74a(0x22a)],'enableViteHmr':_0x1891b7[_0x5cd74a(0x1f2)][_0x5cd74a(0x1d8)],'options':_0x1891b7,'onToggle':handleToggle}),console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x223)),void registerServiceWorker(_0x1891b7),console[_0x5cd74a(0x203)](LOG_PREFIX3+'\x20init()\x20complete\x20-\x20enhancement\x20mode'),createController();return console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x232)),console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x1f8)),void unregisterServiceWorker(_0x1891b7[_0x5cd74a(0x2c4)]),console[_0x5cd74a(0x203)](LOG_PREFIX3+_0x5cd74a(0x284)),import.meta.hot&&(console['log'](LOG_PREFIX3+_0x5cd74a(0x20e)),import.meta.hot['on'](_0x5cd74a(0x1e8),_0x5f1684=>{const _0x3dc1b5=_0x5cd74a;console[_0x3dc1b5(0x203)](LOG_PREFIX3+'\x20Vite\x20error\x20detected:',_0x5f1684),state[_0x3dc1b5(0x263)]={'message':_0x5f1684[_0x3dc1b5(0x23b)]['message']},updateOverlay();}),import.meta.hot['on']('vite:beforeUpdate',()=>{const _0x357077=_0x5cd74a;state[_0x357077(0x263)]&&(console['log'](LOG_PREFIX3+_0x357077(0x20a)),state[_0x357077(0x263)]=null,updateOverlay());})),createController();}};function createController(){const _0x56c54a=_0x54f385,_0x1eb09e={'enable'(){const _0x4e372b=_0xf437,_0x3ce367=getOptions();if(!_0x3ce367)return;state[_0x4e372b(0x24c)]=!![],void loadOverlay({'overlayPath':_0x3ce367[_0x4e372b(0x22a)],'enableViteHmr':_0x3ce367[_0x4e372b(0x1f2)][_0x4e372b(0x1d8)],'options':_0x3ce367,'onToggle':handleToggle}),void registerServiceWorker(_0x3ce367),void sendConfiguration(),updateOverlay();},'disable'(){const _0x37f98e=_0xf437,_0x3abfcb=getOptions();if(!_0x3abfcb)return;state[_0x37f98e(0x24c)]=![],state[_0x37f98e(0x2aa)]=![],updateOverlay(),void unregisterServiceWorker(_0x3abfcb[_0x37f98e(0x2c4)]);},'status'(){const _0x10f0fc=_0xf437;return{'enabled':state[_0x10f0fc(0x24c)],'controlled':state[_0x10f0fc(0x2aa)]};}};return typeof window!=='undefined'&&(window[_0x56c54a(0x26f)]=_0x1eb09e),_0x1eb09e;}function handleToggle(){const _0x42cd8c=_0x54f385,_0x5f4648=createController();state[_0x42cd8c(0x24c)]?_0x5f4648['disable']():_0x5f4648[_0x42cd8c(0x251)]();}function parseUrlParams(){const _0x11a6b4=_0x54f385,_0x528b6d=new URL(window['location'][_0x11a6b4(0x1ec)]),_0x5f0596=_0x528b6d[_0x11a6b4(0x2a9)][_0x11a6b4(0x22e)](_0x11a6b4(0x21a))?.[_0x11a6b4(0x24e)](),_0x3c70c8=_0x528b6d['searchParams'][_0x11a6b4(0x22e)]('enhancementUrl'),_0x4cac80=_0x528b6d['searchParams'][_0x11a6b4(0x22e)](_0x11a6b4(0x298));return{'hasEnhancement':Boolean(_0x3c70c8||_0x4cac80),'explicitDisable':_0x5f0596==='0'||_0x5f0596===_0x11a6b4(0x261)||_0x5f0596==='off','enhancementUrl':_0x3c70c8,'enhancementId':_0x4cac80};}function cleanUrlParam(_0x245134){const _0x2059b3=_0x54f385,_0x22af37=new URL(window[_0x2059b3(0x1f4)]['href']);_0x22af37[_0x2059b3(0x2a9)][_0x2059b3(0x296)](_0x245134)&&(_0x22af37[_0x2059b3(0x2a9)]['delete'](_0x245134),window[_0x2059b3(0x1e7)]['replaceState'](null,document['title'],_0x22af37[_0x2059b3(0x213)]()));}var package_default={'name':'@enhance-eng/sandbox','version':_0x54f385(0x270),'type':_0x54f385(0x1d3),'description':_0x54f385(0x242),'license':'MIT','main':_0x54f385(0x253),'module':_0x54f385(0x253),'types':_0x54f385(0x22d),'exports':{'.':{'types':_0x54f385(0x22d),'import':_0x54f385(0x253)},'./vite':{'types':_0x54f385(0x26e),'import':_0x54f385(0x21c)}},'files':[_0x54f385(0x1ef)],'bin':{'enhance-sandbox':_0x54f385(0x1fb)},'scripts':{'typecheck':'tsc\x20--noEmit','dev':_0x54f385(0x20f),'dev:build':_0x54f385(0x1e5),'dev:staging':_0x54f385(0x26a),'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':_0x54f385(0x219),'build:release':'ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','build:release:dev':_0x54f385(0x246),'version':_0x54f385(0x2b3)},'dependencies':{'commander':_0x54f385(0x2b1),'zod':'^3.22.4'},'devDependencies':{'@types/node':_0x54f385(0x292),'javascript-obfuscator':_0x54f385(0x258),'tsup':_0x54f385(0x239),'vite':_0x54f385(0x21f)},'publishConfig':{'access':_0x54f385(0x293)}},DEFAULT_SERVICE_WORKER_PATH=_0x54f385(0x1f9),DEFAULT_RUNTIME_PATH=_0x54f385(0x264),DIST_SERVICE_WORKER_PATH=_0x54f385(0x201),DIST_RUNTIME_PATH=_0x54f385(0x256),PACKAGE_VERSION=typeof package_default[_0x54f385(0x1e3)]==='string'?package_default[_0x54f385(0x1e3)]:'0.0.0';function normalizeAssetPath(_0x27538c){const _0x465b79=_0x54f385;if(!_0x27538c)return _0x27538c;if(_0x27538c['startsWith'](_0x465b79(0x286))||_0x27538c['startsWith'](_0x465b79(0x2ad)))return _0x27538c;const _0x19524d=_0x27538c['replace'](/^\.\//,'');return _0x19524d[_0x465b79(0x25c)]('/')?_0x19524d:'/'+_0x19524d;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x39bc79={}){return Enhance['init'](_0x39bc79);},'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 _0x262b9e=_0x54f385;return Enhance2[_0x262b9e(0x27c)]();}function runtimeURL(){const _0x86ac15=_0x54f385;return Enhance2[_0x86ac15(0x27b)]();}import{promises as _0x1b83d1}from'fs';import{createHash}from'crypto';import{dirname,join}from'path';import{fileURLToPath}from'url';var distDir=dirname(fileURLToPath(new URL('../dist/index.js',import.meta.url)));async function syncAssets(_0x792dfe){const _0x3ce23f=_0x54f385,_0x1fbbbb=[{'sourcePath':DIST_SERVICE_WORKER_PATH,'manifestPath':normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),'override':_0x792dfe[_0x3ce23f(0x254)]?'./'+_0x792dfe[_0x3ce23f(0x254)]:void 0x0},{'sourcePath':DIST_RUNTIME_PATH,'manifestPath':normalizeAssetPath(DEFAULT_RUNTIME_PATH)}],_0x51147f=[];for(const _0x163573 of _0x1fbbbb){const _0x29aac1=cleanRelativePath(_0x163573['override']??_0x163573[_0x3ce23f(0x2a5)]),_0x305278=join(distDir,cleanRelativePath(_0x163573[_0x3ce23f(0x22f)])),_0x1f32df=join(_0x792dfe['publicDir'],_0x29aac1),[_0x1097b9,_0x4e0940]=await Promise[_0x3ce23f(0x2b6)]([readDigest(_0x305278),readDigest(_0x1f32df)]);if(_0x1097b9&&_0x4e0940&&_0x1097b9===_0x4e0940){_0x51147f[_0x3ce23f(0x222)]({'sourcePath':_0x305278,'destinationPath':_0x1f32df,'relativeDestination':_0x29aac1,'status':_0x3ce23f(0x1ee)});continue;}await _0x1b83d1[_0x3ce23f(0x25a)](dirname(_0x1f32df),{'recursive':!![]}),await _0x1b83d1[_0x3ce23f(0x244)](_0x305278,_0x1f32df),_0x51147f[_0x3ce23f(0x222)]({'sourcePath':_0x305278,'destinationPath':_0x1f32df,'relativeDestination':_0x29aac1,'status':_0x3ce23f(0x1ed)});}return _0x51147f;}function cleanRelativePath(_0x36baa2){return _0x36baa2['replace'](/^[./]+/,'');}async function readDigest(_0x1e0ab1){const _0x523865=_0x54f385;try{const _0x41d060=await _0x1b83d1['readFile'](_0x1e0ab1);return createHash(_0x523865(0x2af))[_0x523865(0x27e)](_0x41d060)[_0x523865(0x290)]('base64');}catch(_0x57a693){if(_0x57a693[_0x523865(0x225)]==='ENOENT')return null;throw _0x57a693;}}var program=new Command();program['name'](_0x54f385(0x20c))['description']('Enhance\x20sandbox\x20utility\x20CLI')[_0x54f385(0x1e3)]('0.0.0'),program[_0x54f385(0x1d7)](_0x54f385(0x23a))[_0x54f385(0x260)](_0x54f385(0x283))[_0x54f385(0x214)](()=>{const _0x3a4e54=_0x54f385,_0x4be4f7=getAssetManifest();process[_0x3a4e54(0x2a4)][_0x3a4e54(0x289)](JSON['stringify'](_0x4be4f7,null,0x2)+'\x0a');}),program['command'](_0x54f385(0x231))[_0x54f385(0x260)]('Copy\x20the\x20service\x20worker\x20and\x20overlay\x20bundle\x20into\x20a\x20public\x20directory')[_0x54f385(0x23d)](_0x54f385(0x276),_0x54f385(0x1fa))['option']('--filename\x20<name>','Override\x20the\x20service\x20worker\x20output\x20filename\x20(defaults\x20to\x20sw-enhance.js)')[_0x54f385(0x214)](async _0x5a5e2b=>{const _0x3dfaa5=_0x54f385,_0x347b05=resolve(process['cwd'](),_0x5a5e2b['publicDir']),_0x31690e=await syncAssets({'publicDir':_0x347b05,'swFilename':_0x5a5e2b[_0x3dfaa5(0x25d)]});for(const _0x3a2772 of _0x31690e){const _0x1b0d5e=relative(process[_0x3dfaa5(0x243)](),_0x3a2772[_0x3dfaa5(0x215)]);_0x3a2772[_0x3dfaa5(0x229)]==='skipped'?process['stdout'][_0x3dfaa5(0x289)](_0x3dfaa5(0x24a)+_0x3a2772[_0x3dfaa5(0x2bb)]+_0x3dfaa5(0x2a2)+_0x1b0d5e+']\x0a'):process[_0x3dfaa5(0x2a4)][_0x3dfaa5(0x289)](_0x3dfaa5(0x265)+_0x3a2772[_0x3dfaa5(0x2bb)]+_0x3dfaa5(0x2cb)+_0x1b0d5e+'\x0a');}}),program[_0x54f385(0x206)]();
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 {
@@ -90,7 +90,7 @@ interface EnhanceAssetManifest {
90
90
  runtimeDigest: string | null;
91
91
  }
92
92
  declare const Enhance: {
93
- init(options: Parameters<typeof Enhance$1.init>[0]): EnhanceController;
93
+ init(options?: Parameters<typeof Enhance$1.init>[0]): EnhanceController;
94
94
  serviceWorkerURL(): string;
95
95
  runtimeURL(): string;
96
96
  assetManifest(): 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 _0x4e4e85=_0x42b2;(function(_0x575973,_0x351273){const _0x16fcb2=_0x42b2,_0x18e9be=_0x575973();while(!![]){try{const _0x53d207=-parseInt(_0x16fcb2(0x16d))/0x1+parseInt(_0x16fcb2(0x116))/0x2+-parseInt(_0x16fcb2(0xc7))/0x3*(-parseInt(_0x16fcb2(0xe7))/0x4)+-parseInt(_0x16fcb2(0x17d))/0x5*(parseInt(_0x16fcb2(0x10c))/0x6)+-parseInt(_0x16fcb2(0x131))/0x7+parseInt(_0x16fcb2(0x17b))/0x8*(parseInt(_0x16fcb2(0x146))/0x9)+-parseInt(_0x16fcb2(0x158))/0xa*(-parseInt(_0x16fcb2(0x179))/0xb);if(_0x53d207===_0x351273)break;else _0x18e9be['push'](_0x18e9be['shift']());}catch(_0x3f7f31){_0x18e9be['push'](_0x18e9be['shift']());}}}(_0x5c95,0x5cf23));var DEFAULT_OVERLAY_PATH=typeof __ENHANCE_DEFAULT_OVERLAY_PATH__!==_0x4e4e85(0x162)?__ENHANCE_DEFAULT_OVERLAY_PATH__:_0x4e4e85(0xbe),DEFAULT_BACKEND_URL=typeof __ENHANCE_DEFAULT_BACKEND_URL__!==_0x4e4e85(0x162)?__ENHANCE_DEFAULT_BACKEND_URL__:_0x4e4e85(0x182),DEFAULT_OVERLAY_HMR=typeof __ENHANCE_OVERLAY_ENABLE_HMR__!==_0x4e4e85(0x162)?__ENHANCE_OVERLAY_ENABLE_HMR__:![];console['log'](_0x4e4e85(0xc2),{'overlayPath':DEFAULT_OVERLAY_PATH,'backendUrl':DEFAULT_BACKEND_URL,'overlayHmr':DEFAULT_OVERLAY_HMR});function normalizeOptions(_0x2902de){const _0x1526be=_0x4e4e85,_0x41b425=_0x2902de[_0x1526be(0x199)]??{};return{'callbackBypass':_0x2902de['callbackBypass']??[],'overlay':{'enabled':!![],'position':_0x1526be(0x120),'enableViteHmr':_0x41b425[_0x1526be(0x115)]??DEFAULT_OVERLAY_HMR},'logLevel':'info','swPath':'/sw-enhance.js','overlayPath':_0x41b425[_0x1526be(0x167)]??DEFAULT_OVERLAY_PATH,'runtimeScriptPath':_0x1526be(0x143),'security':_0x41b425[_0x1526be(0xcc)]??'permissive','backendUrl':_0x41b425[_0x1526be(0xf6)]??DEFAULT_BACKEND_URL};}var state={'enabled':![],'controlled':![],'appError':null};function getEnhancementUrl(){const _0x524c8b=_0x4e4e85;try{const _0x6d9a7b=new URLSearchParams(window[_0x524c8b(0xc8)][_0x524c8b(0x104)]);return _0x6d9a7b[_0x524c8b(0xd7)](_0x524c8b(0x18e))?.[_0x524c8b(0x128)]()||'';}catch{return'';}}function _0x5c95(){const _0x46ad93=['\x20Sending\x20DISABLE\x20message\x20to\x20SW...','startsWith','__enhanceInitialized','\x20Updating\x20overlay\x20with\x20state:','dev/','./dev/vite/index.js','MIT','\x20detectBlocking\x20error:','\x20Failed\x20to\x20register\x20service\x20worker:','\x20Explicit\x20disable\x20via\x20URL\x20param\x20-\x20exiting','enhance','backendUrl','\x20Installing\x20React\x20Refresh\x20runtime\x20from\x20','version','off','\x20Current\x20URL:\x20','tsc\x20--noEmit','\x20Skipping\x20-\x20not\x20enabled\x20or\x20no\x20options','enabled','unregister','__enhanceController','swPath','createOverlay','keys','\x20Unregistering\x20any\x20existing\x20SW...','search','\x20Importing\x20overlay\x20module\x20from:\x20','\x20Page\x20controlled\x20by\x20our\x20SW:\x20','stringify','\x20setupRemoteHMR()\x20for\x20','err','delete','\x20overlayPath:\x20','120732vTOGxZ','vite:error','overlay','\x20Starting\x20overlay\x20load\x20(async)...','\x20SW\x20unregistered\x20successfully','\x20loadOverlay()\x20complete','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20tsup','\x20composeOverlayState\x20-\x20state.enabled:\x20','\x20registerServiceWorker()\x20complete','enableOverlayHmr','195410WyvqiL','enhancementId','getRegistration',',\x20owns=','\x20Vite\x20HMR\x20client\x20loaded\x20for\x20','\x20sendConfiguration()\x20called','\x20Config\x20sent\x20to\x20SW','\x20HMR\x20setup\x20complete','[Enhance\x20Runtime]','\x20Starting\x20SW\x20registration\x20(async)...','bottom-right','href','history','\x20Vite\x20error\x20detected:','\x20No\x20cached\x20controller\x20-\x20will\x20import\x20module','active','\x20React\x20Refresh\x20already\x20installed\x20for\x20','register','trim','\x20Vite\x20client\x20already\x20loaded\x20for\x20','\x20doLoadOverlay()\x20starting...','\x20state.enabled:\x20','\x20Normal\x20mode\x20-\x20no\x20enhancement\x20params','\x20Enhancement\x20mode\x20ENABLED','object','init','\x20No\x20service\x20worker\x20active\x20to\x20configure','2895858pOKGEU','N/A','./dev/index.d.ts','update','string','\x20Found\x20registration:','/@vite/client','\x20Available\x20exports:','scope','0.0.0','\x20Calling\x20updateOverlay()...','\x20First\x20initialization','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup\x20--watch','ready','toLowerCase','\x20registerServiceWorker()\x20called','now','^3.22.4','/assets/enhance-runtime.js','log','https://','261ZcLULT','replaceState','replace','\x20Page\x20was\x20not\x20controlled\x20-\x20SW\x20just\x20activated.\x20Reloading\x20to\x20enable\x20enhancement...','__enhanceOptions','[Enhance\x20SW-Client]','\x20Failed\x20to\x20unregister\x20service\x20worker:','\x20init()\x20called\x20at\x20','callbackBypass','\x20Load\x20already\x20in\x20progress\x20-\x20waiting...','toString','some','searchParams','has','bun\x20version\x20patch\x20--no-git-tag-version','\x20Module\x20missing\x20createOverlay\x20export!','\x20Controller\x20created:','\x20unregisterServiceWorker()\x20called','10gtqKcd','waiting','\x20Module\x20imported\x20in\x20','\x20Controller\x20state:','position','origin','ENHANCE_OVERLAY_PATH=https://assets.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://api.enhancelabs.ai\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','\x20composeOverlayState\x20-\x20enhancementUrl:\x20','./dev/index.js','__enhanceReactRefreshInstalledOrigins','undefined','\x20Document\x20readyState:\x20','$RefreshSig$','explicitDisable','injectIntoGlobalHook','overlayPath','error','sw-enhance','\x20composeOverlayState\x20-\x20state.controlled:\x20',',\x20expected=','runtimeURL','546432lyOHhd','controlled','\x20with\x20scope\x20\x27/\x27...','\x20No\x20window\x20object\x20-\x20skipping','__enhanceOverlay',',\x20currentOptions:\x20','\x20Sending\x20customer\x20configuration...','\x20Raw\x20options:','\x20No\x20blocking\x20SW\x20found','\x20Enhancement\x20detection:\x20wasEnhanced=','__vite_plugin_react_preamble_installed__','__viteHMRLoaded','11388465thlBSr','installing','172600pcHWDK','controller','165XXealh','\x20Missing\x20controller\x20or\x20options\x20-\x20skipping\x20update','\x20Registration\x20returned:','\x20React\x20Refresh\x20runtime\x20installed\x20for\x20','\x20No\x20serviceWorker\x20support\x20-\x20nothing\x20to\x20unregister','https://api.enhancelabs.ai','postMessage','\x20Enhancement\x20features\x20will\x20NOT\x20work\x20until\x20it\x20is\x20unregistered','none','scriptURL','\x20updateOverlay()\x20called','\x20Cross-origin\x20overlay\x20-\x20setting\x20up\x20HMR...','\x20Failed\x20to\x20import/create\x20overlay:','add','\x20init()\x20complete\x20-\x20normal\x20mode','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup\x20--watch','\x20Registration\x20is\x20not\x20ours\x20-\x20not\x20unregistering','enhancementUrl','hasEnhancement','false','\x20No\x20registration\x20found\x20-\x20nothing\x20to\x20unregister','\x20loadOverlay()\x20failed:','title','\x20Module\x20exports:','@enhance-eng/sandbox','\x20Same\x20origin\x20-\x20skipping\x20HMR\x20setup','vite:beforeUpdate','http://','__development','./dev/vite/index.d.ts','https://assets.enhancelabs.ai/overlay.js','\x20overlayController\x20exists:\x20','appError','\x20Already\x20initialized\x20(window.__enhanceInitialized=true)\x20-\x20returning\x20existing\x20controller','[Enhance\x20Config]\x20Build-time\x20defaults:','/@react-refresh','\x20Invalid\x20React\x20Refresh\x20runtime','\x20Normalized\x20options:','[Enhance\x20Overlay]','492iNelTf','location','^8.5.1','\x20Page\x20not\x20enhanced\x20by\x20SW\x20-\x20reloading\x20to\x20apply\x20enhancement','\x20Starting\x20fresh\x20overlay\x20load...','security','reload','serviceWorker','state','\x20URL\x20params\x20parsed:','^24.10.1','ENHANCE_OVERLAY_PATH=https://assets-dev.enhancelabs.ai/overlay.js\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20OBFUSCATE=1\x20RELEASE=1\x20tsup','\x20ownsServiceWorker?\x20scriptURL=','^11.1.0','\x20Checking\x20for\x20blocking\x20service\x20worker...','$RefreshReg$','get','function','...','\x20Vite\x20update\x20pending\x20-\x20clearing\x20error','\x20Overlay\x20origin:\x20','disable','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://enhance-api-dev.enhancelabs.workers.dev\x20tsup','\x20Sending\x20customer\x20config\x20to\x20SW:','ENHANCE_OVERLAY_PATH=https://overlay.localhost:8099/src/index.tsx\x20ENHANCE_BACKEND_URL=https://overlay.localhost:8099\x20tsup','public','default','Enhance\x20preview\x20bootstrap\x20and\x20tooling\x20package.','\x20init()\x20complete\x20-\x20enhancement\x20mode','\x20detectBlocking\x20-\x20existing\x20registration:','\x20Controller\x20already\x20exists\x20-\x20updating\x20overlay','warn','6004YcDsYC','\x20swPath:\x20','enhance:disable','\x20Setting\x20up\x20remote\x20HMR...'];_0x5c95=function(){return _0x46ad93;};return _0x5c95();}var LOG_PREFIX=_0x4e4e85(0xc6),overlayController=null,overlayLoadPromise=null,toggleHandler=null,currentOptions=null;async function loadOverlay(_0x4dc08f){const _0x39381f=_0x4e4e85;console['log'](LOG_PREFIX+'\x20loadOverlay()\x20called'),console[_0x39381f(0x144)](LOG_PREFIX+_0x39381f(0x10b)+_0x4dc08f[_0x39381f(0x167)]),console[_0x39381f(0x144)](LOG_PREFIX+'\x20enableViteHmr:\x20'+_0x4dc08f['enableViteHmr']),currentOptions=_0x4dc08f['options'],toggleHandler=_0x4dc08f['onToggle'];if(overlayController){console[_0x39381f(0x144)](LOG_PREFIX+_0x39381f(0xe5)),updateOverlay();return;}if(overlayLoadPromise)return console[_0x39381f(0x144)](LOG_PREFIX+_0x39381f(0x14f)),overlayLoadPromise;console['log'](LOG_PREFIX+_0x39381f(0xcb)),overlayLoadPromise=doLoadOverlay(_0x4dc08f);try{await overlayLoadPromise,console['log'](LOG_PREFIX+_0x39381f(0x111));}catch(_0x2d5a2c){console['error'](LOG_PREFIX+_0x39381f(0x192),_0x2d5a2c);}finally{overlayLoadPromise=null;}}async function doLoadOverlay(_0x122102){const _0x1a792f=_0x4e4e85;console['log'](LOG_PREFIX+_0x1a792f(0x12a));if(typeof window==='undefined'){console['log'](LOG_PREFIX+_0x1a792f(0x170));return;}if(window[_0x1a792f(0x171)]){console[_0x1a792f(0x144)](LOG_PREFIX+'\x20Found\x20cached\x20overlay\x20controller\x20on\x20window.__enhanceOverlay\x20-\x20skipping\x20reinit'),overlayController=window['__enhanceOverlay'];return;}console[_0x1a792f(0x144)](LOG_PREFIX+_0x1a792f(0x124));try{_0x122102['enableViteHmr']&&(console[_0x1a792f(0x144)](LOG_PREFIX+_0x1a792f(0xea)),await setupRemoteHMR(_0x122102[_0x1a792f(0x167)]));console['log'](LOG_PREFIX+_0x1a792f(0x105)+_0x122102['overlayPath']);const _0xd1e13d=Date[_0x1a792f(0x141)](),_0x5a82cf=await import(_0x122102['overlayPath']);console['log'](LOG_PREFIX+_0x1a792f(0x15a)+(Date['now']()-_0xd1e13d)+'ms'),console[_0x1a792f(0x144)](LOG_PREFIX+_0x1a792f(0x194),Object[_0x1a792f(0x102)](_0x5a82cf));if(typeof _0x5a82cf?.[_0x1a792f(0x101)]!=='function'){console[_0x1a792f(0x168)](LOG_PREFIX+_0x1a792f(0x155)),console[_0x1a792f(0x168)](LOG_PREFIX+_0x1a792f(0x138),Object[_0x1a792f(0x102)](_0x5a82cf));return;}console[_0x1a792f(0x144)](LOG_PREFIX+'\x20Calling\x20createOverlay()...');const _0xd2ff46=_0x5a82cf[_0x1a792f(0x101)]();console[_0x1a792f(0x144)](LOG_PREFIX+_0x1a792f(0x156),_0xd2ff46),overlayController=_0xd2ff46,window[_0x1a792f(0x171)]=_0xd2ff46,_0xd2ff46['onToggle'](_0x122102['onToggle']),console[_0x1a792f(0x144)](LOG_PREFIX+'\x20Overlay\x20controller\x20initialized\x20and\x20cached'),console['log'](LOG_PREFIX+_0x1a792f(0x13b)),updateOverlay();}catch(_0x2a48cb){console['error'](LOG_PREFIX+_0x1a792f(0x189),_0x2a48cb);}}function updateOverlay(){const _0x30c1ec=_0x4e4e85;console[_0x30c1ec(0x144)](LOG_PREFIX+_0x30c1ec(0x187)),console['log'](LOG_PREFIX+_0x30c1ec(0xbf)+!!overlayController),console[_0x30c1ec(0x144)](LOG_PREFIX+'\x20currentOptions\x20exists:\x20'+!!currentOptions);if(!overlayController||!currentOptions){console[_0x30c1ec(0x144)](LOG_PREFIX+_0x30c1ec(0x17e));return;}const _0x59cb88=composeOverlayState(currentOptions);console['log'](LOG_PREFIX+_0x30c1ec(0xee),JSON[_0x30c1ec(0x107)](_0x59cb88,null,0x2)),overlayController[_0x30c1ec(0x134)](_0x59cb88),console[_0x30c1ec(0x144)](LOG_PREFIX+'\x20Overlay\x20update\x20complete');}function composeOverlayState(_0x228c2e){const _0x595092=_0x4e4e85,_0x4d4ebc=getEnhancementUrl();return console[_0x595092(0x144)](LOG_PREFIX+_0x595092(0x15f)+_0x4d4ebc),console[_0x595092(0x144)](LOG_PREFIX+_0x595092(0x113)+state[_0x595092(0xfd)]),console[_0x595092(0x144)](LOG_PREFIX+_0x595092(0x16a)+state[_0x595092(0x16e)]),{'enhancementUrl':_0x4d4ebc,'enabled':state[_0x595092(0xfd)],'controlled':state[_0x595092(0x16e)],'overlayPosition':_0x228c2e[_0x595092(0x10e)][_0x595092(0x15c)],'securityMode':_0x228c2e['security'],'backendBaseUrl':_0x228c2e['backendUrl'],'appError':state[_0x595092(0xc0)]};}async function setupRemoteHMR(_0x25ba28){const _0x21037f=_0x4e4e85;console[_0x21037f(0x144)](LOG_PREFIX+_0x21037f(0x108)+_0x25ba28);if(typeof window===_0x21037f(0x162))return;try{const _0x3f2394=new URL(_0x25ba28,window[_0x21037f(0xc8)][_0x21037f(0x15d)]),_0x220758=_0x3f2394[_0x21037f(0x15d)];console['log'](LOG_PREFIX+_0x21037f(0xdb)+_0x220758+',\x20page\x20origin:\x20'+window[_0x21037f(0xc8)][_0x21037f(0x15d)]);if(_0x220758===window[_0x21037f(0xc8)][_0x21037f(0x15d)]){console[_0x21037f(0x144)](LOG_PREFIX+_0x21037f(0x196));return;}console[_0x21037f(0x144)](LOG_PREFIX+_0x21037f(0x188)),await ensureReactRefreshPreamble(_0x220758),await ensureViteClient(_0x220758),console[_0x21037f(0x144)](LOG_PREFIX+_0x21037f(0x11d));}catch(_0x2ae1c0){console[_0x21037f(0xe6)](LOG_PREFIX+'\x20Failed\x20to\x20prepare\x20remote\x20HMR\x20(non-fatal):',_0x2ae1c0);}}async function ensureReactRefreshPreamble(_0x53eaaf){const _0x4f58af=_0x4e4e85;window[_0x4f58af(0x161)]??=new Set();if(window[_0x4f58af(0x161)][_0x4f58af(0x153)](_0x53eaaf)){console['log'](LOG_PREFIX+_0x4f58af(0x126)+_0x53eaaf);return;}console[_0x4f58af(0x144)](LOG_PREFIX+_0x4f58af(0xf7)+_0x53eaaf+_0x4f58af(0xd9));const _0x555ce3=await import(_0x53eaaf+_0x4f58af(0xc3)),_0x5051c2=_0x555ce3&&typeof _0x555ce3===_0x4f58af(0x12e)&&_0x4f58af(0xe1)in _0x555ce3?_0x555ce3['default']:_0x555ce3;if(!isRefreshRuntime(_0x5051c2)){console[_0x4f58af(0xe6)](LOG_PREFIX+_0x4f58af(0xc4));return;}_0x5051c2[_0x4f58af(0x166)](window),window[_0x4f58af(0xd6)]=()=>{},window[_0x4f58af(0x164)]=()=>_0x52226c=>_0x52226c,window[_0x4f58af(0x177)]=!![],window['__enhanceReactRefreshInstalledOrigins'][_0x4f58af(0x18a)](_0x53eaaf),console['log'](LOG_PREFIX+_0x4f58af(0x180)+_0x53eaaf);}async function ensureViteClient(_0x50a712){const _0x42ae1e=_0x4e4e85;window[_0x42ae1e(0x178)]??=new Set();if(window['__viteHMRLoaded'][_0x42ae1e(0x153)](_0x50a712)){console[_0x42ae1e(0x144)](LOG_PREFIX+_0x42ae1e(0x129)+_0x50a712);return;}console[_0x42ae1e(0x144)](LOG_PREFIX+'\x20Loading\x20Vite\x20HMR\x20client\x20from\x20'+_0x50a712+_0x42ae1e(0xd9)),await import(_0x50a712+_0x42ae1e(0x137)),window[_0x42ae1e(0x178)][_0x42ae1e(0x18a)](_0x50a712),console[_0x42ae1e(0x144)](LOG_PREFIX+_0x42ae1e(0x11a)+_0x50a712);}function isRefreshRuntime(_0x2f63de){const _0x13f406=_0x4e4e85;return typeof _0x2f63de===_0x13f406(0x12e)&&_0x2f63de!==null&&'injectIntoGlobalHook'in _0x2f63de&&typeof _0x2f63de['injectIntoGlobalHook']===_0x13f406(0xd8);}var WORKER_MESSAGE_CONFIG='enhance:configure',WORKER_MESSAGE_DISABLE=_0x4e4e85(0xe9),LOG_PREFIX2=_0x4e4e85(0x14b),registration=null,currentOptions2=null;async function registerServiceWorker(_0x1933c1){const _0x5f2e54=_0x4e4e85;console[_0x5f2e54(0x144)](LOG_PREFIX2+_0x5f2e54(0x140)),console[_0x5f2e54(0x144)](LOG_PREFIX2+_0x5f2e54(0xe8)+_0x1933c1[_0x5f2e54(0x100)]);if(!('serviceWorker'in navigator)){console['warn'](LOG_PREFIX2+'\x20Service\x20workers\x20NOT\x20supported\x20in\x20this\x20browser');return;}console[_0x5f2e54(0x144)](LOG_PREFIX2+'\x20Service\x20workers\x20supported');const _0x3753fb=navigator[_0x5f2e54(0xce)][_0x5f2e54(0x17c)];console[_0x5f2e54(0x144)](LOG_PREFIX2+'\x20Current\x20controller:',_0x3753fb?.[_0x5f2e54(0x186)]??_0x5f2e54(0x185)),console['log'](LOG_PREFIX2+_0x5f2e54(0x15b),_0x3753fb?.[_0x5f2e54(0xcf)]??_0x5f2e54(0x132));const _0x5077dd=!!_0x3753fb;currentOptions2=_0x1933c1,console[_0x5f2e54(0x144)](LOG_PREFIX2+_0x5f2e54(0xd5));const _0x2d55bb=await detectBlockingServiceWorker(_0x1933c1[_0x5f2e54(0x100)]);if(_0x2d55bb){console[_0x5f2e54(0x168)](LOG_PREFIX2+'\x20BLOCKING\x20SW\x20detected:\x20'+_0x2d55bb),console[_0x5f2e54(0x168)](LOG_PREFIX2+_0x5f2e54(0x184));return;}console['log'](LOG_PREFIX2+_0x5f2e54(0x175));try{console[_0x5f2e54(0x144)](LOG_PREFIX2+'\x20Registering\x20SW\x20at\x20'+_0x1933c1['swPath']+_0x5f2e54(0x16f)),registration=await navigator[_0x5f2e54(0xce)][_0x5f2e54(0x127)](_0x1933c1[_0x5f2e54(0x100)],{'scope':'/'}),console[_0x5f2e54(0x144)](LOG_PREFIX2+_0x5f2e54(0x17f),{'scope':registration[_0x5f2e54(0x139)],'active':registration['active']?.['scriptURL'],'waiting':registration['waiting']?.['scriptURL'],'installing':registration[_0x5f2e54(0x17a)]?.['scriptURL']}),console[_0x5f2e54(0x144)](LOG_PREFIX2+'\x20Waiting\x20for\x20navigator.serviceWorker.ready...');const _0x43fb51=await navigator[_0x5f2e54(0xce)][_0x5f2e54(0x13e)];console['log'](LOG_PREFIX2+'\x20SW\x20ready!\x20Active:',_0x43fb51[_0x5f2e54(0x125)]?.[_0x5f2e54(0x186)]);const _0x2e400c=ownsCurrentController(_0x1933c1['swPath']);state[_0x5f2e54(0x16e)]=_0x2e400c,console[_0x5f2e54(0x144)](LOG_PREFIX2+_0x5f2e54(0x106)+_0x2e400c),console[_0x5f2e54(0x144)](LOG_PREFIX2+'\x20Current\x20controller\x20after\x20ready:',navigator['serviceWorker']['controller']?.['scriptURL']??_0x5f2e54(0x185));if(!_0x5077dd&&!navigator[_0x5f2e54(0xce)][_0x5f2e54(0x17c)]){console[_0x5f2e54(0x144)](LOG_PREFIX2+_0x5f2e54(0x149)),window[_0x5f2e54(0xc8)]['reload']();return;}console['log'](LOG_PREFIX2+_0x5f2e54(0x173)),await sendConfiguration();if(state['enabled']){const _0x224331=document['querySelector']('[data-enhance-runtime-bootstrap]')!==null;console[_0x5f2e54(0x144)](LOG_PREFIX2+_0x5f2e54(0x176)+_0x224331);if(!_0x224331){console[_0x5f2e54(0x144)](LOG_PREFIX2+_0x5f2e54(0xca)),window['location'][_0x5f2e54(0xcd)]();return;}}console['log'](LOG_PREFIX2+'\x20Updating\x20overlay...'),updateOverlay(),console['log'](LOG_PREFIX2+_0x5f2e54(0x114));}catch(_0x428158){console[_0x5f2e54(0x168)](LOG_PREFIX2+_0x5f2e54(0xf3),_0x428158);}}async function sendConfiguration(){const _0x2ffe2a=_0x4e4e85;console[_0x2ffe2a(0x144)](LOG_PREFIX2+_0x2ffe2a(0x11b)),console[_0x2ffe2a(0x144)](LOG_PREFIX2+_0x2ffe2a(0x12b)+state['enabled']+_0x2ffe2a(0x172)+!!currentOptions2);if(!state['enabled']||!currentOptions2){console[_0x2ffe2a(0x144)](LOG_PREFIX2+_0x2ffe2a(0xfc));return;}const _0x4307ee=await resolveWorker();if(!_0x4307ee){console['warn'](LOG_PREFIX2+_0x2ffe2a(0x130));return;}const _0x1ca4ee={'callbackBypass':currentOptions2[_0x2ffe2a(0x14e)],'securityMode':currentOptions2[_0x2ffe2a(0xcc)]};console[_0x2ffe2a(0x144)](LOG_PREFIX2+_0x2ffe2a(0xde),JSON[_0x2ffe2a(0x107)](_0x1ca4ee,null,0x2)),_0x4307ee[_0x2ffe2a(0x183)]({'type':WORKER_MESSAGE_CONFIG,'config':_0x1ca4ee}),console[_0x2ffe2a(0x144)](LOG_PREFIX2+_0x2ffe2a(0x11c));}async function unregisterServiceWorker(_0x102170){const _0x4a3d89=_0x4e4e85;console[_0x4a3d89(0x144)](LOG_PREFIX2+_0x4a3d89(0x157));if(!(_0x4a3d89(0xce)in navigator)){console[_0x4a3d89(0x144)](LOG_PREFIX2+_0x4a3d89(0x181));return;}try{const _0x130f31=registration??await navigator['serviceWorker'][_0x4a3d89(0x118)]('/');if(!_0x130f31){console[_0x4a3d89(0x144)](LOG_PREFIX2+_0x4a3d89(0x191));return;}console[_0x4a3d89(0x144)](LOG_PREFIX2+_0x4a3d89(0x136),{'scope':_0x130f31[_0x4a3d89(0x139)],'active':_0x130f31[_0x4a3d89(0x125)]?.['scriptURL'],'waiting':_0x130f31[_0x4a3d89(0x159)]?.[_0x4a3d89(0x186)],'installing':_0x130f31[_0x4a3d89(0x17a)]?.[_0x4a3d89(0x186)]});const _0xd61994=[_0x130f31[_0x4a3d89(0x125)]?.[_0x4a3d89(0x186)],_0x130f31[_0x4a3d89(0x159)]?.[_0x4a3d89(0x186)],_0x130f31['installing']?.[_0x4a3d89(0x186)]],_0x21a4ad=_0xd61994[_0x4a3d89(0x151)](_0x4de9e0=>_0x4de9e0&&ownsServiceWorker(_0x4de9e0,_0x102170));if(!_0x21a4ad){console[_0x4a3d89(0x144)](LOG_PREFIX2+_0x4a3d89(0x18d));return;}_0x130f31[_0x4a3d89(0x125)]&&(console[_0x4a3d89(0x144)](LOG_PREFIX2+_0x4a3d89(0xeb)),_0x130f31[_0x4a3d89(0x125)][_0x4a3d89(0x183)]({'type':WORKER_MESSAGE_DISABLE})),console['log'](LOG_PREFIX2+'\x20Unregistering\x20SW...'),await _0x130f31[_0x4a3d89(0xfe)](),registration=null,currentOptions2=null,console[_0x4a3d89(0x144)](LOG_PREFIX2+_0x4a3d89(0x110));}catch(_0x4a2309){console[_0x4a3d89(0x168)](LOG_PREFIX2+_0x4a3d89(0x14c),_0x4a2309);}}function ownsServiceWorker(_0x52f59b,_0x444e41){const _0x239293=_0x4e4e85,_0xb234b4=typeof window!==_0x239293(0x162)?window[_0x239293(0xc8)][_0x239293(0x15d)]:'',_0x50a93e=new URL(_0x444e41,_0xb234b4||void 0x0)[_0x239293(0x121)],_0x2c5ffe=_0x52f59b===_0x50a93e||_0x52f59b['includes'](_0x239293(0x169));return console[_0x239293(0x144)](LOG_PREFIX2+_0x239293(0xd3)+_0x52f59b+_0x239293(0x16b)+_0x50a93e+_0x239293(0x119)+_0x2c5ffe),_0x2c5ffe;}function ownsCurrentController(_0x43de00){const _0x780e57=_0x4e4e85;if(typeof navigator===_0x780e57(0x162))return![];const _0x9cbf9a=navigator[_0x780e57(0xce)]?.[_0x780e57(0x17c)];if(!_0x9cbf9a)return console[_0x780e57(0x144)](LOG_PREFIX2+'\x20No\x20current\x20controller'),![];return ownsServiceWorker(_0x9cbf9a[_0x780e57(0x186)],_0x43de00);}async function detectBlockingServiceWorker(_0x4dcf7e){const _0x5b2f08=_0x4e4e85;if(!navigator['serviceWorker'])return null;try{const _0x3c6707=await navigator[_0x5b2f08(0xce)]['getRegistration']('/');console[_0x5b2f08(0x144)](LOG_PREFIX2+_0x5b2f08(0xe4),_0x3c6707?.[_0x5b2f08(0x125)]?.[_0x5b2f08(0x186)]??'none');const _0x55733e=_0x3c6707?.[_0x5b2f08(0x125)]?.[_0x5b2f08(0x186)];if(!_0x55733e)return null;if(ownsServiceWorker(_0x55733e,_0x4dcf7e))return null;return _0x55733e;}catch(_0x211c45){return console['error'](LOG_PREFIX2+_0x5b2f08(0xf2),_0x211c45),null;}}async function resolveWorker(){const _0x1af692=_0x4e4e85,_0xdbb774=registration??await navigator[_0x1af692(0xce)]?.['getRegistration']('/'),_0xfa8122=_0xdbb774?.[_0x1af692(0x125)]??_0xdbb774?.['waiting']??_0xdbb774?.[_0x1af692(0x17a)]??null;return console['log'](LOG_PREFIX2+'\x20resolveWorker:',_0xfa8122?.[_0x1af692(0x186)]??_0x1af692(0x185),'state:\x20'+(_0xfa8122?.['state']??_0x1af692(0x132))),_0xfa8122;}function _0x42b2(_0x5ed17b,_0x26ce76){_0x5ed17b=_0x5ed17b-0xbe;const _0x5c95b0=_0x5c95();let _0x42b22b=_0x5c95b0[_0x5ed17b];return _0x42b22b;}var LOG_PREFIX3=_0x4e4e85(0x11e);function isInitialized(){const _0x2d2794=_0x4e4e85;return typeof window!==_0x2d2794(0x162)&&window[_0x2d2794(0xed)]===!![];}function setInitialized(_0x39f22d){const _0x332046=_0x4e4e85;typeof window!==_0x332046(0x162)&&(window[_0x332046(0xed)]=_0x39f22d);}function getOptions(){const _0x587792=_0x4e4e85;return typeof window!==_0x587792(0x162)?window[_0x587792(0x14a)]??null:null;}function setOptions(_0x174c0c){typeof window!=='undefined'&&(window['__enhanceOptions']=_0x174c0c);}var Enhance={'init'(_0x1adab4={}){const _0x3aa5ba=_0x4e4e85,_0x3790b7=Date[_0x3aa5ba(0x141)]();console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0x14d)+_0x3790b7),console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0xfa)+window[_0x3aa5ba(0xc8)][_0x3aa5ba(0x121)]),console['log'](LOG_PREFIX3+_0x3aa5ba(0x163)+document['readyState']),console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0x174),JSON[_0x3aa5ba(0x107)](_0x1adab4,null,0x2));if(isInitialized())return console[_0x3aa5ba(0xe6)](LOG_PREFIX3+_0x3aa5ba(0xc1)),window['__enhanceController']??createController();setInitialized(!![]),console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0x13c));const _0x336a80=normalizeOptions(_0x1adab4);setOptions(_0x336a80),console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0xc5),JSON[_0x3aa5ba(0x107)](_0x336a80,null,0x2));const _0x3b9433=parseUrlParams();console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0xd0),JSON['stringify'](_0x3b9433,null,0x2));if(_0x3b9433[_0x3aa5ba(0x165)])return cleanUrlParam(_0x3aa5ba(0xf5)),console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0xf4)),createController();if(_0x3b9433[_0x3aa5ba(0x18f)])return console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0x12d)),console[_0x3aa5ba(0x144)](LOG_PREFIX3+'\x20enhancementUrl:\x20'+_0x3b9433['enhancementUrl']),console[_0x3aa5ba(0x144)](LOG_PREFIX3+'\x20enhancementId:\x20'+_0x3b9433[_0x3aa5ba(0x117)]),state['enabled']=!![],console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0x10f)),void loadOverlay({'overlayPath':_0x336a80[_0x3aa5ba(0x167)],'enableViteHmr':_0x336a80[_0x3aa5ba(0x10e)]['enableViteHmr'],'options':_0x336a80,'onToggle':handleToggle}),console['log'](LOG_PREFIX3+_0x3aa5ba(0x11f)),void registerServiceWorker(_0x336a80),console['log'](LOG_PREFIX3+_0x3aa5ba(0xe3)),createController();return console['log'](LOG_PREFIX3+_0x3aa5ba(0x12c)),console[_0x3aa5ba(0x144)](LOG_PREFIX3+_0x3aa5ba(0x103)),void unregisterServiceWorker(_0x336a80['swPath']),console['log'](LOG_PREFIX3+_0x3aa5ba(0x18b)),import.meta.hot&&(console['log'](LOG_PREFIX3+'\x20Setting\x20up\x20Vite\x20HMR\x20error\x20listeners'),import.meta.hot['on'](_0x3aa5ba(0x10d),_0x371b63=>{const _0x244f34=_0x3aa5ba;console['log'](LOG_PREFIX3+_0x244f34(0x123),_0x371b63),state['appError']={'message':_0x371b63[_0x244f34(0x109)]['message']},updateOverlay();}),import.meta.hot['on'](_0x3aa5ba(0x197),()=>{const _0x18dc82=_0x3aa5ba;state[_0x18dc82(0xc0)]&&(console[_0x18dc82(0x144)](LOG_PREFIX3+_0x18dc82(0xda)),state[_0x18dc82(0xc0)]=null,updateOverlay());})),createController();}};function createController(){const _0x424c31=_0x4e4e85,_0xe458bf={'enable'(){const _0x3ddd5e=_0x42b2,_0x1cf75d=getOptions();if(!_0x1cf75d)return;state[_0x3ddd5e(0xfd)]=!![],void loadOverlay({'overlayPath':_0x1cf75d['overlayPath'],'enableViteHmr':_0x1cf75d[_0x3ddd5e(0x10e)]['enableViteHmr'],'options':_0x1cf75d,'onToggle':handleToggle}),void registerServiceWorker(_0x1cf75d),void sendConfiguration(),updateOverlay();},'disable'(){const _0xc74fe4=_0x42b2,_0x49603a=getOptions();if(!_0x49603a)return;state[_0xc74fe4(0xfd)]=![],state[_0xc74fe4(0x16e)]=![],updateOverlay(),void unregisterServiceWorker(_0x49603a[_0xc74fe4(0x100)]);},'status'(){const _0x4a188f=_0x42b2;return{'enabled':state[_0x4a188f(0xfd)],'controlled':state[_0x4a188f(0x16e)]};}};return typeof window!==_0x424c31(0x162)&&(window[_0x424c31(0xff)]=_0xe458bf),_0xe458bf;}function handleToggle(){const _0x322b74=_0x4e4e85,_0x2569bf=createController();state[_0x322b74(0xfd)]?_0x2569bf[_0x322b74(0xdc)]():_0x2569bf['enable']();}function parseUrlParams(){const _0x346430=_0x4e4e85,_0x405a81=new URL(window[_0x346430(0xc8)][_0x346430(0x121)]),_0x22c1b2=_0x405a81['searchParams'][_0x346430(0xd7)](_0x346430(0xf5))?.[_0x346430(0x13f)](),_0x493a83=_0x405a81['searchParams']['get'](_0x346430(0x18e)),_0xb70970=_0x405a81['searchParams']['get']('enhancement');return{'hasEnhancement':Boolean(_0x493a83||_0xb70970),'explicitDisable':_0x22c1b2==='0'||_0x22c1b2===_0x346430(0x190)||_0x22c1b2===_0x346430(0xf9),'enhancementUrl':_0x493a83,'enhancementId':_0xb70970};}function cleanUrlParam(_0x3bf907){const _0x1afc51=_0x4e4e85,_0x34bab4=new URL(window[_0x1afc51(0xc8)]['href']);_0x34bab4[_0x1afc51(0x152)][_0x1afc51(0x153)](_0x3bf907)&&(_0x34bab4['searchParams'][_0x1afc51(0x10a)](_0x3bf907),window[_0x1afc51(0x122)][_0x1afc51(0x147)](null,document[_0x1afc51(0x193)],_0x34bab4[_0x1afc51(0x150)]()));}var package_default={'name':_0x4e4e85(0x195),'version':'0.3.20','type':'module','description':_0x4e4e85(0xe2),'license':_0x4e4e85(0xf1),'main':_0x4e4e85(0x160),'module':'./dev/index.js','types':_0x4e4e85(0x133),'exports':{'.':{'types':_0x4e4e85(0x133),'import':_0x4e4e85(0x160)},'./vite':{'types':_0x4e4e85(0x19a),'import':_0x4e4e85(0xf0)}},'files':[_0x4e4e85(0xef)],'bin':{'enhance-sandbox':'./dev/cli.js'},'scripts':{'typecheck':_0x4e4e85(0xfb),'dev':_0x4e4e85(0x13d),'dev:build':_0x4e4e85(0xdf),'dev:staging':_0x4e4e85(0x18c),'dev:staging:build':_0x4e4e85(0xdd),'build':_0x4e4e85(0x112),'build:release':_0x4e4e85(0x15e),'build:release:dev':_0x4e4e85(0xd2),'version':_0x4e4e85(0x154)},'dependencies':{'commander':_0x4e4e85(0xd4),'zod':_0x4e4e85(0x142)},'devDependencies':{'@types/node':_0x4e4e85(0xd1),'javascript-obfuscator':'^4.1.1','tsup':_0x4e4e85(0xc9),'vite':'^7.2.4'},'publishConfig':{'access':_0x4e4e85(0xe0)}},DEFAULT_SERVICE_WORKER_PATH='/sw-enhance.js',DEFAULT_RUNTIME_PATH=_0x4e4e85(0x143),PACKAGE_VERSION=typeof package_default[_0x4e4e85(0xf8)]===_0x4e4e85(0x135)?package_default[_0x4e4e85(0xf8)]:_0x4e4e85(0x13a);function normalizeAssetPath(_0x299c14){const _0x1534d4=_0x4e4e85;if(!_0x299c14)return _0x299c14;if(_0x299c14[_0x1534d4(0xec)](_0x1534d4(0x198))||_0x299c14[_0x1534d4(0xec)](_0x1534d4(0x145)))return _0x299c14;const _0x185c4b=_0x299c14[_0x1534d4(0x148)](/^\.\//,'');return _0x185c4b['startsWith']('/')?_0x185c4b:'/'+_0x185c4b;}var defaultSwPath=normalizeAssetPath(DEFAULT_SERVICE_WORKER_PATH),defaultRuntimePath=normalizeAssetPath(DEFAULT_RUNTIME_PATH),Enhance2={'init'(_0x49a0e6={}){const _0x2540d=_0x4e4e85;return Enhance[_0x2540d(0x12f)](_0x49a0e6);},'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 _0x1fc7ce=_0x4e4e85;return Enhance2[_0x1fc7ce(0x16c)]();}export{Enhance2 as Enhance,getAssetManifest,resolveServiceWorkerPath,runtimeURL,serviceWorkerURL};
@@ -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(_0x17b275,_0x46449b){const _0x351173=_0xf7b5,_0x2dea3d=_0x17b275();while(!![]){try{const _0x588101=-parseInt(_0x351173(0x178))/0x1+-parseInt(_0x351173(0x1ca))/0x2+-parseInt(_0x351173(0x110))/0x3*(-parseInt(_0x351173(0x1e3))/0x4)+parseInt(_0x351173(0x104))/0x5+parseInt(_0x351173(0x1f1))/0x6+parseInt(_0x351173(0x176))/0x7*(parseInt(_0x351173(0x1f9))/0x8)+-parseInt(_0x351173(0x1c6))/0x9*(-parseInt(_0x351173(0x11f))/0xa);if(_0x588101===_0x46449b)break;else _0x2dea3d['push'](_0x2dea3d['shift']());}catch(_0x21ee47){_0x2dea3d['push'](_0x2dea3d['shift']());}}}(_0x535d,0xb5e2d));function _0x535d(){const _0x45e750=['\x20injectRuntimeBootstrap()\x20called','\x20\x20\x20\x20}','\x20\x20\x20\x20if\x20(!originalWebSocket\x20||\x20originalWebSocket.__enhancePatched)\x20{','\x20\x20\x20\x20var\x20originalWebSocket\x20=\x20window.WebSocket;','/snowpack/hmr','\x20Invalid\x20message\x20data\x20-\x20ignoring','\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20returning\x20null','114kixhDb','\x20\x20\x20Stripping\x20SRI\x20attributes...','\x20\x20\x20Script\x20inserted\x20into\x20document','/__vite/client','enhancement-document','data','/__vite_ping','\x20\x20\x20Enhancement\x20URL:\x20','set','font','\x20skipWaiting()\x20complete','[Enhance\x20SW\x20Bootstrap]','})();','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Current\x20URL:\x22,\x20window.location.href);','\x20\x20\x20\x20var\x20EnhancedWebSocket\x20=\x20function(url,\x20protocols)\x20{','1421950aozMQF','\x20ACTIVATE\x20event','href','config','redirect','\x20\x20\x20\x20try\x20{','\x20\x20\x20CORS\x20blocked\x20(opaque\x20response)','\x20Calling\x20clients.claim()...','\x20\x20\x20\x20\x20\x20if\x20(!value)\x20return\x20[];','\x20\x20\x20Applying\x20permissive\x20CSP...','\x20\x20\x20\x20\x20\x20\x20\x20return\x20false;','\x20\x20\x20\x20\x20\x20\x20\x20if\x20(shouldProxy(resolved,\x20protocols))\x20{','\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Set\x20window.__enhanceInitialized\x20=\x20true\x22);','\x20\x20\x20Enhancement\x20MISS\x20for\x20','[Enhance\x20SW]','\x20Service\x20Worker\x20script\x20loaded\x20at\x20','follow','\x20\x20\x20\x20\x20\x20try\x20{','\x20shouldRouteAsset:\x20','headers','log','\x0a</head>','/__webpack_hmr','\x20\x20\x20Enhancement\x20HIT\x20for\x20','url',',\x20null,\x202));','\x20\x20\x20Document\x20fetch\x20error:','\x20fetchFromEnhancement:\x20','\x20is\x20overlay\x20asset\x20-\x20not\x20routing','default','\x20INSTALL\x20event','fetch','cross-origin-embedder-policy','toISOString','type','\x20\x20\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20No\x20Enhance.init\x20export\x20found!\x22);','message','\x20\x20\x20\x20\x20\x20var\x20pathname\x20=\x20url.pathname\x20||\x20\x22/\x22;','/webpack-hmr','startsWith','Failed\x20to\x20rewrite\x20document','search','(async\x20()\x20=>\x20{','\x20Bootstrap\x20options:','\x20\x20\x20\x20}\x20catch\x20(error)\x20{','\x20\x20\x20\x20\x20\x20var\x20protoList\x20=\x20toArray(protocols);','\x20\x20\x20No\x20enhancementBase\x20configured\x20-\x20skipping','\x20\x20\x20\x20var\x20knownProtocols\x20=\x20new\x20Set(','\x20\x20\x20\x20\x20\x20var\x20isAppHost\x20=\x20url.host\x20===\x20window.location.host;','enhancement','\x20\x20\x20\x20const\x20controller\x20=\x20Enhance.init(','\x20\x20\x20\x20window.WebSocket\x20=\x20EnhancedWebSocket;','\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{','statusText','navigate','\x20\x20\x20\x20\x20\x20','(function(){','\x20\x20\x20\x20\x20\x20window.__enhanceController\x20=\x20controller;','clone','getOwnPropertyDescriptor','\x20\x20\x20\x20\x20\x20var\x20externalHosts\x20=\x20[\x22app.enhance.localhost:4450\x22,\x20\x22localhost:5173\x22];','waitUntil','\x20Unknown\x20message\x20type:\x20','\x20\x20\x20Not\x20HTML\x20-\x20returning\x20production\x20response\x20as-is','access-control-expose-headers','runtimeScriptPath','text','\x20\x20\x20\x20\x20\x20\x20\x20}','\x20\x20\x20NAVIGATE\x20request\x20-\x20handling\x20navigation','enhancementBase','\x20\x20\x20Fetching\x20from\x20enhancement...','\x20\x20\x20\x20if\x20(typeof\x20window\x20!==\x20\x22undefined\x22)\x20{','\x5cu003e','\x20\x20\x20\x20const\x20runtimePath\x20=\x20','/__snowpack__','\x20\x20\x20Not\x20HTML\x20response\x20-\x20returning\x20null','\x20clients.claim()\x20complete','method','/__parcel_hmr','\x20\x20\x20mode:\x20','\x20\x20\x20Failed\x20to\x20rewrite\x20document:','/webpack-dev-server','connect-src\x20*','addEventListener','destination','content-security-policy','\x20\x20\x20\x20var\x20basePrefix\x20=\x20\x22/__sbx__\x22;','7txvoXu','content-type','762944LnqzEc','has','\x20\x20\x20\x20var\x20enhancementBase\x20=\x20new\x20URL(','/webpackhotmiddleware','\x5c1[^>]*>\x5cs*</script>','</script>','\x20\x20\x20Custom\x20security\x20mode\x20-\x20preserving\x20original\x20CSP','cors','\x20\x20\x20\x20\x20\x20return\x20proxied;','full','\x0a</body>','location','callbackBypass','\x20\x20}\x20catch\x20(error)\x20{','$&\x0a','\x20for\x20','delete','\x20\x20\x20Bootstrap\x20script\x20generated\x20(','\x20\x20\x20\x20\x20\x20//\x20Allow\x20proxying\x20for\x20specific\x20external\x20hosts','no-store','Enhancement\x20miss\x20','\x20is\x20runtime\x20asset\x20-\x20not\x20routing','Enhancement\x20document\x20miss\x20','toString','defineProperty','info',',\x20type:\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','script','\x20-\x20falling\x20back\x20to\x20production','style-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20blob:\x20data:\x20https:\x20http:','x-enhance-routing','https://assets.enhancelabs.ai/overlay.js','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(rewritten.toString(),\x20protocols);','\x20\x20\x20\x20\x20\x20var\x20isExternalHost\x20=\x20externalHosts.includes(url.host);','/@vite/client','\x20\x20\x20\x20\x20\x20\x20\x20if\x20(loweredPath.indexOf(knownPathHints[j])\x20!==\x20-1)\x20{','\x20\x20\x20Fetching\x20enhancement\x20document...','set-cookie','stringify','\x20\x20\x20\x20EnhancedWebSocket.prototype\x20=\x20originalWebSocket.prototype;','<script\x5cb[^>]*src\x5cs*=\x5cs*([\x27\x22])','none','permissive','backendUrl','\x20\x20\x20\x20\x20\x20window.__enhanceInitialized\x20=\x20true;','\x20matches\x20callbackBypass','\x20chars)','\x20\x20\x20\x20\x20\x20\x20\x20var\x20resolved\x20=\x20url\x20instanceof\x20URL\x20?\x20url\x20:\x20new\x20URL(String(url),\x20window.location.href);','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20module\x20loaded:\x22,\x20Object.keys(runtimeModule));','https://','\x20\x20\x20Not\x20handling\x20(method\x20not\x20GET/HEAD)','hit','\x20\x20\x20\x20\x20\x20proxied.hash\x20=\x20\x22\x22;','\x20\x20\x20securityMode:\x20','font-src\x20*\x20data:','\x20\x20\x20enhancementUrl\x20in\x20config:\x20','\x20\x20\x20Enhancement\x20document\x20URL:\x20','\x20\x20\x20\x20\x20\x20if\x20(!isExternalHost\x20&&\x20!isAppHost)\x20return\x20false;','activate','\x20\x20\x20\x20if\x20(!Enhance\x20||\x20typeof\x20Enhance.init\x20!==\x20\x22function\x22)\x20{','/sw-enhance.js','\x20\x20\x20\x20var\x20knownPathHints\x20=\x20','\x20MESSAGE\x20received:','modulepreload','\x5cs*=\x5cs*([\x27\x22])([^\x22\x27]+)\x5c1','x-enhance-document','\x20\x20\x20\x20\x20\x20\x20\x20if\x20(typeof\x20proto\x20===\x20\x22string\x22\x20&&\x20knownProtocols.has(proto.toLowerCase()))\x20{','searchParams','media-src\x20*\x20data:\x20blob:','\x20\x20\x20Attempting\x20to\x20fetch\x20from\x20enhancement:\x20','\x20\x20\x20Stripped\x20existing\x20bootstraps,\x20inserting\x20new\x20script...','\x20\x20\x20Not\x20OK\x20(','\x20\x20\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Controller\x20attached\x20to\x20window.enhancePreview\x22);','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Calling\x20Enhance.init()\x20with\x20options:\x22,\x20JSON.stringify(','object','access-control-allow-credentials','\x20\x20\x20Rewritten\x20HTML\x20length:\x20','9SJlYPk','\x20Build\x20config:','value','http://','1405150tSjSju','slice','overlayEnableViteHmr','debug','HEAD','body','origin','test','join','/_next/webpack-hmr','\x20\x20\x20Skipping\x20HMR\x20bridge\x20(production\x20source)','\x20rewriteDocument()\x20called','\x20\x20\x20\x20\x20\x20}','map','\x20\x20\x20\x20\x20\x20\x20\x20var\x20proto\x20=\x20protoList[i];','status','\x20\x20\x20\x20\x20\x20return\x20Array.isArray(value)\x20?\x20value\x20:\x20[value];','\x20chars','\x20\x20\x20Response:\x20','cross-origin-opener-policy','opaque','\x20Clearing\x20cached\x20enhancementUrl\x20(navigation\x20without\x20param)','enhance:configure','pathname','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Bootstrap\x20complete\x22);','84984LOwKAk','\x20\x20\x20\x20const\x20runtimeModule\x20=\x20await\x20import(runtimePath);','\x20\x20}','\x20Caching\x20enhancementUrl\x20from\x20navigation:\x20','\x20\x20try\x20{','\x20\x20\x20\x20var\x20shouldProxy\x20=\x20function(url,\x20protocols)\x20{','<script\x20type=\x22module\x22\x20data-enhance-runtime-bootstrap>','\x5cu003c','cache-control','\x20\x20\x20\x20const\x20Enhance\x20=\x20runtimeModule?.Enhance\x20??\x20runtimeModule?.default?.Enhance\x20??\x20runtimeModule?.default;','\x20\x20\x20\x20Object.setPrototypeOf(EnhancedWebSocket,\x20originalWebSocket);','\x20\x20\x20Checking\x20for\x20enhancement\x20document...',',\x20destination:\x20','img-src\x20*\x20data:\x20blob:','226860vPEsAP','includes','call','production','\x20\x20\x20Rewriting\x20entry\x20references...','Enhancement\x20document\x20CORS\x20blocked','\x20\x20\x20\x20\x20\x20proxied.search\x20=\x20targetUrl.search;','/webpack-hot-middleware','7790456xlTqbw','\x20DISABLE\x20message\x20-\x20resetting\x20customer\x20config','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Enhance\x20controller\x20created:\x22,\x20controller);','error','content-length','prototype','/parcel-hmr','overlayPath','\x20\x20\x20shouldInjectOverlay:\x20','stylesheet','\x20\x20\x20\x20\x20\x20var\x20proxied\x20=\x20new\x20URL(enhancementBase);','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Starting\x20runtime\x20bootstrap...\x22);','skipWaiting','\x20\x20\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket.prototype,\x20\x22constructor\x22,\x20{\x20value:\x20EnhancedWebSocket\x20});','GET','\x20\x20\x20Original\x20HTML\x20length:\x20','replace','\x20\x20\x20Injecting\x20runtime\x20bootstrap...','set-cookie2','\x20\x20\x20SUCCESS\x20-\x20returning\x20enhancement\x20document','\x20buildRuntimeBootstrapScript:\x20no\x20runtimePath\x20-\x20returning\x20null','\x20\x20\x20Fetching\x20production\x20response...','host','cross-origin-resource-policy','mode','get','\x20FETCH:\x20','match','[Enhance\x20SW\x20Routing]','worker','\x20\x20\x20runtimeScriptPath:\x20','\x20\x20\x20\x20\x20\x20window.enhancePreview\x20=\x20controller;','endsWith','image','securityMode','getOwnPropertyNames','function','x-enhance-enhancement','\x20\x20\x20Skipping\x20runtime\x20bootstrap\x20injection','\x20Calling\x20skipWaiting()...','\x20\x20\x20\x20\x20\x20for\x20(var\x20j\x20=\x200;\x20j\x20<\x20knownPathHints.length;\x20j++)\x20{','text/html','https://api.enhancelabs.ai','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;','\x20\x20\x20\x20\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20fallback\x22,\x20error);','\x20\x20\x20Content-Type:\x20','\x20\x20\x20\x20\x20\x20return\x20new\x20originalWebSocket(url,\x20protocols);','length','style','\x20\x20\x20\x20console.debug(\x22[Enhance]\x20websocket\x20bridge\x20unavailable\x22,\x20error);','\x20\x20\x20\x20\x20\x20//\x20ignore\x20if\x20unable\x20to\x20redefine','\x20\x20\x20Not\x20routing\x20asset\x20(not\x20routable\x20or\x20not\x20same-origin)','\x20\x20\x20\x20console.log(\x22[Enhance\x20Bootstrap]\x20Runtime\x20path:\x22,\x20runtimePath);','push','frame-ancestors\x20','\x20\x20\x20\x20Object.defineProperty(EnhancedWebSocket,\x20\x22__enhancePatched\x22,\x20{\x20value:\x20true\x20});','custom','\x20\x20\x20No\x20script\x20generated\x20(missing\x20runtimePath)\x20-\x20returning\x20html\x20unchanged','\x20\x20\x20\x20};','\x20Customer\x20config\x20updated:','callbackBypassNormalized','toLowerCase','__esModule','<script\x20data-enhance-hmr-bridge>','1246820GjqslD','\x20\x20\x20\x20\x20\x20return\x20false;','\x20\x20\x20Rewriting\x20document...','enhancementUrl','/auth/callback'];_0x535d=function(){return _0x45e750;};return _0x535d();}function _0xf7b5(_0x58f69d,_0x188831){_0x58f69d=_0x58f69d-0xef;const _0x535d22=_0x535d();let _0xf7b5b0=_0x535d22[_0x58f69d];return _0xf7b5b0;}var EnhanceSW=((()=>{const _0x15a7e8=_0xf7b5;var _0x2f1afb=Object[_0x15a7e8(0x190)],_0x5d229a=Object[_0x15a7e8(0x15a)],_0x4812df=Object[_0x15a7e8(0x21c)],_0x5e8b78=Object[_0x15a7e8(0x1fe)]['hasOwnProperty'],_0x3136af=(_0x3b08e3,_0x269010)=>{for(var _0x211610 in _0x269010)_0x2f1afb(_0x3b08e3,_0x211610,{'get':_0x269010[_0x211610],'enumerable':!![]});},_0x3c0bc3=(_0x16e7c3,_0x725fed,_0x25ba6e,_0x5b88b5)=>{const _0x36a8ff=_0x15a7e8;if(_0x725fed&&typeof _0x725fed==='object'||typeof _0x725fed===_0x36a8ff(0x21d)){for(let _0x58aa3e of _0x4812df(_0x725fed))if(!_0x5e8b78[_0x36a8ff(0x1f3)](_0x16e7c3,_0x58aa3e)&&_0x58aa3e!==_0x25ba6e)_0x2f1afb(_0x16e7c3,_0x58aa3e,{'get':()=>_0x725fed[_0x58aa3e],'enumerable':!(_0x5b88b5=_0x5d229a(_0x725fed,_0x58aa3e))||_0x5b88b5['enumerable']});}return _0x16e7c3;},_0x3f468c=_0x3b3f97=>_0x3c0bc3(_0x2f1afb({},_0x15a7e8(0x102),{'value':!![]}),_0x3b3f97),_0x1cb1cf={};_0x3136af(_0x1cb1cf,{'log':()=>_0x48e574});var _0x5eb955=_0x15a7e8(0x1e0),_0x1df575='enhance:disable';function _0x9f52d1(_0x5d0840){const _0x5dbd18=_0x15a7e8;if(!_0x5d0840[_0x5dbd18(0x146)]('/'))return'/'+_0x5d0840;return _0x5d0840;}function _0xa35293(_0x31dfcc,_0x243e35){const _0x5b73d5=_0x15a7e8,_0x40de95=new URL(_0x31dfcc['toString']()),_0x52f173=_0x40de95['pathname'][_0x5b73d5(0x219)]('/')?_0x40de95['pathname'][_0x5b73d5(0x1cb)](0x0,-0x1):_0x40de95[_0x5b73d5(0x1e1)],_0x444a5a=_0x243e35[_0x5b73d5(0x1e1)][_0x5b73d5(0x146)]('/')?_0x243e35[_0x5b73d5(0x1e1)]:'/'+_0x243e35[_0x5b73d5(0x1e1)];return _0x40de95[_0x5b73d5(0x1e1)]=(''+_0x52f173+_0x444a5a)['replace'](/\/+/g,'/'),_0x40de95[_0x5b73d5(0x148)]=_0x243e35[_0x5b73d5(0x148)],_0x40de95['hash']='',_0x40de95;}var _0x16b41c=_0x15a7e8(0x215),_0x258734=new Set([_0x15a7e8(0x194),_0x15a7e8(0xf4),_0x15a7e8(0x119),_0x15a7e8(0x21a),_0x15a7e8(0x216),'sharedworker',_0x15a7e8(0x1b8)]);function _0x32fcf8(_0x5b8634){const _0x17ef5e=_0x15a7e8,_0x3176aa=_0x5b8634[_0x17ef5e(0x16c)]===_0x17ef5e(0x207)||_0x5b8634['method']===_0x17ef5e(0x1ce);return _0x3176aa;}function _0x33ed3c(_0x2159b0,_0xba88d5){const _0x201685=_0x15a7e8,_0x218b66=_0x9f52d1(_0xba88d5),_0x282aeb=_0x2159b0[_0x201685(0x100)]['some'](_0x1a9ffb=>_0x218b66['startsWith'](_0x1a9ffb));return _0x282aeb;}function _0x1cf696(_0x739008,_0x388fae,_0x19e03f){const _0x37de4d=_0x15a7e8,_0x577ce1=_0x388fae[_0x37de4d(0x173)];if(!_0x577ce1||!_0x258734['has'](_0x577ce1))return![];if(_0x16bec3(_0x739008,_0x19e03f))return console[_0x37de4d(0x133)](_0x16b41c+_0x37de4d(0x131)+_0x19e03f[_0x37de4d(0x1e1)]+_0x37de4d(0x13b)),![];if(_0x1d8e43(_0x739008,_0x19e03f))return console[_0x37de4d(0x133)](_0x16b41c+'\x20shouldRouteAsset:\x20'+_0x19e03f[_0x37de4d(0x1e1)]+_0x37de4d(0x18d)),![];if(_0x19e03f[_0x37de4d(0x1d0)]!==self[_0x37de4d(0x183)][_0x37de4d(0x1d0)])return![];return!![];}async function _0x5324b5(_0x27838b,_0x1cd6af,_0x2e8b04){const _0xd2cf46=_0x15a7e8;console['log'](_0x16b41c+_0xd2cf46(0x13a)+_0x2e8b04[_0xd2cf46(0x1e1)]);if(!_0x27838b[_0xd2cf46(0x164)])return console['log'](_0x16b41c+_0xd2cf46(0x14d)),null;const _0x445a2b=_0x2a8d5b(_0x27838b,_0x2e8b04);console[_0xd2cf46(0x133)](_0x16b41c+_0xd2cf46(0x117)+_0x445a2b[_0xd2cf46(0x18f)]());const _0x2c9e98=new Headers(_0x1cd6af['headers']);_0x2c9e98[_0xd2cf46(0x118)](_0xd2cf46(0x197),_0xd2cf46(0x150)),_0x2c9e98[_0xd2cf46(0x188)](_0xd2cf46(0x20f));const _0x1b746a=new Request(_0x445a2b['toString'](),{'method':_0x1cd6af[_0xd2cf46(0x16c)],'headers':_0x2c9e98,'credentials':'include','redirect':_0x1cd6af[_0xd2cf46(0x123)],'cache':'default','mode':_0xd2cf46(0x17f)});try{console[_0xd2cf46(0x133)](_0x16b41c+_0xd2cf46(0x165));const _0x1eafbe=await fetch(_0x1b746a);console[_0xd2cf46(0x133)](_0x16b41c+_0xd2cf46(0x1dc)+_0x1eafbe[_0xd2cf46(0x1d9)]+'\x20'+_0x1eafbe[_0xd2cf46(0x154)]+_0xd2cf46(0x192)+_0x1eafbe[_0xd2cf46(0x141)]);if(_0x1eafbe[_0xd2cf46(0x141)]===_0xd2cf46(0x1de))return console['log'](_0x16b41c+_0xd2cf46(0x125)),_0x48e574(_0xd2cf46(0x191),'Enhancement\x20CORS\x20blocked',_0x445a2b[_0xd2cf46(0x18f)]()),null;if(!_0x1eafbe['ok'])return console[_0xd2cf46(0x133)](_0x16b41c+_0xd2cf46(0x1c0)+_0x1eafbe[_0xd2cf46(0x1d9)]+')\x20-\x20returning\x20null'),_0x48e574('debug',_0xd2cf46(0x18c)+_0x1eafbe[_0xd2cf46(0x1d9)]+_0xd2cf46(0x187)+_0x445a2b['pathname']),null;return console[_0xd2cf46(0x133)](_0x16b41c+'\x20\x20\x20SUCCESS\x20-\x20returning\x20enhanced\x20response'),_0x2e32cc(_0x1eafbe,_0x1cd6af[_0xd2cf46(0x16c)]);}catch(_0x1b4e5d){return console['error'](_0x16b41c+'\x20\x20\x20Fetch\x20error:',_0x1b4e5d),_0x48e574(_0xd2cf46(0x191),'Enhancement\x20fetch\x20failed',_0x1b4e5d),null;}}async function _0x2a1bce(_0x12a1e7,_0x463026){const _0x5a2408=_0x15a7e8,_0x272e5e=new URL(_0x463026[_0x5a2408(0x137)]);console[_0x5a2408(0x133)](_0x16b41c+'\x20fetchEnhancementDocument:\x20'+_0x272e5e[_0x5a2408(0x1e1)]+_0x272e5e[_0x5a2408(0x148)]);if(!_0x12a1e7[_0x5a2408(0x164)])return console[_0x5a2408(0x133)](_0x16b41c+_0x5a2408(0x10f)),null;const _0x2db788=_0x2a8d5b(_0x12a1e7,_0x272e5e);console['log'](_0x16b41c+_0x5a2408(0x1b1)+_0x2db788[_0x5a2408(0x18f)]());const _0x3a7afc=new Headers(_0x463026[_0x5a2408(0x132)]);_0x3a7afc[_0x5a2408(0x118)](_0x5a2408(0x197),_0x5a2408(0x114)),_0x3a7afc[_0x5a2408(0x188)](_0x5a2408(0x20f)),_0x3a7afc[_0x5a2408(0x188)](_0x5a2408(0x1fd));const _0x348e0a=new Request(_0x2db788[_0x5a2408(0x18f)](),{'method':_0x5a2408(0x207),'headers':_0x3a7afc,'credentials':'include','redirect':_0x5a2408(0x12f),'cache':_0x5a2408(0x13c),'mode':_0x5a2408(0x17f)});try{console[_0x5a2408(0x133)](_0x16b41c+_0x5a2408(0x19d));const _0x4ce9b2=await fetch(_0x348e0a);console[_0x5a2408(0x133)](_0x16b41c+_0x5a2408(0x1dc)+_0x4ce9b2[_0x5a2408(0x1d9)]+'\x20'+_0x4ce9b2[_0x5a2408(0x154)]+',\x20type:\x20'+_0x4ce9b2[_0x5a2408(0x141)]),console[_0x5a2408(0x133)](_0x16b41c+_0x5a2408(0xf1)+_0x4ce9b2['headers']['get'](_0x5a2408(0x177)));if(_0x4ce9b2[_0x5a2408(0x141)]===_0x5a2408(0x1de))return console[_0x5a2408(0x133)](_0x16b41c+_0x5a2408(0x125)),_0x48e574('info',_0x5a2408(0x1f6),_0x2db788[_0x5a2408(0x18f)]()),null;if(!_0x4ce9b2['ok'])return console[_0x5a2408(0x133)](_0x16b41c+'\x20\x20\x20Not\x20OK\x20('+_0x4ce9b2[_0x5a2408(0x1d9)]+')\x20-\x20returning\x20null'),_0x48e574(_0x5a2408(0x1cd),_0x5a2408(0x18e)+_0x4ce9b2['status']+'\x20for\x20'+_0x2db788[_0x5a2408(0x1e1)]),null;if(!_0x49a3eb(_0x4ce9b2))return console[_0x5a2408(0x133)](_0x16b41c+_0x5a2408(0x16a)),null;return console[_0x5a2408(0x133)](_0x16b41c+_0x5a2408(0x20c)),_0x2e32cc(_0x4ce9b2,_0x5a2408(0x207));}catch(_0x3efb58){return console[_0x5a2408(0x1fc)](_0x16b41c+_0x5a2408(0x139),_0x3efb58),_0x48e574(_0x5a2408(0x191),'Enhancement\x20document\x20fetch\x20failed',_0x3efb58),null;}}function _0x2a8d5b(_0x11ca10,_0x337f0c){const _0x37086b=_0x15a7e8;if(!_0x11ca10[_0x37086b(0x164)])throw new Error('Cannot\x20build\x20enhancement\x20URL\x20without\x20enhancementBase\x20configured');return _0xa35293(_0x11ca10[_0x37086b(0x164)],_0x337f0c);}function _0x2e32cc(_0x4c0a42,_0x194a30){const _0x2b0668=_0x15a7e8,_0x25ef7a=_0x4c0a42[_0x2b0668(0x159)](),_0x39a66a=new Headers(_0x25ef7a[_0x2b0668(0x132)]);_0x39a66a[_0x2b0668(0x188)]('access-control-allow-origin'),_0x39a66a['delete'](_0x2b0668(0x1c4)),_0x39a66a['delete'](_0x2b0668(0x15f)),_0x39a66a[_0x2b0668(0x118)](_0x2b0668(0x21e),_0x2b0668(0x1ac)),_0x2afa29(_0x39a66a);const _0x3f4714=_0x194a30==='HEAD'?null:_0x25ef7a[_0x2b0668(0x1cf)];return new Response(_0x3f4714,{'status':_0x25ef7a[_0x2b0668(0x1d9)],'statusText':_0x25ef7a['statusText'],'headers':_0x39a66a});}function _0x49a3eb(_0x555baa){const _0x5d6858=_0x15a7e8,_0xfdcb61=_0x555baa['headers'][_0x5d6858(0x212)](_0x5d6858(0x177));return _0xfdcb61!=null&&_0xfdcb61[_0x5d6858(0x1f2)](_0x5d6858(0x222));}function _0x16bec3(_0x808a09,_0x408991){const _0x93cd3f=_0x15a7e8;return _0x571031(_0x408991,_0x808a09[_0x93cd3f(0x200)]);}function _0x1d8e43(_0x884e19,_0x41f50d){const _0x17837d=_0x15a7e8;return _0x3eefad(_0x41f50d,_0x884e19[_0x17837d(0x160)]);}function _0x571031(_0x56bccf,_0x5234be){const _0x2f3702=_0x15a7e8;if(!_0x5234be)return![];if(_0x5234be[_0x2f3702(0x146)](_0x2f3702(0x1c9))||_0x5234be[_0x2f3702(0x146)](_0x2f3702(0x1aa)))return _0x56bccf[_0x2f3702(0x121)]===_0x5234be;const _0x20e0ae=_0x1680a9(_0x5234be);if(!_0x20e0ae)return![];const _0xe11c73=''+_0x56bccf['pathname']+_0x56bccf[_0x2f3702(0x148)];if(_0xe11c73===_0x20e0ae)return!![];if(_0x56bccf['search']==='?import')return _0x56bccf[_0x2f3702(0x1e1)]===_0x20e0ae;return![];}function _0x3eefad(_0x21af8a,_0x27982e){const _0x2944a6=_0x15a7e8;if(!_0x27982e)return![];if(_0x27982e['startsWith']('http://')||_0x27982e[_0x2944a6(0x146)]('https://'))return _0x21af8a[_0x2944a6(0x121)]===_0x27982e;const _0x3117cd=_0x1680a9(_0x27982e);if(!_0x3117cd)return![];const _0x4ffce7=''+_0x21af8a[_0x2944a6(0x1e1)]+_0x21af8a[_0x2944a6(0x148)];return _0x4ffce7===_0x3117cd;}function _0x1680a9(_0x53526e){const _0x2a322f=_0x15a7e8;if(!_0x53526e)return _0x53526e;if(_0x53526e[_0x2a322f(0x146)](_0x2a322f(0x1c9))||_0x53526e[_0x2a322f(0x146)](_0x2a322f(0x1aa)))return _0x53526e;const _0x5102e8=_0x53526e[_0x2a322f(0x209)](/^\.\//,'');if(_0x5102e8[_0x2a322f(0x146)]('/'))return _0x5102e8;return'/'+_0x5102e8;}function _0x2afa29(_0x3ffc25){const _0x559b83=_0x15a7e8;_0x3ffc25[_0x559b83(0x188)](_0x559b83(0x19e)),_0x3ffc25[_0x559b83(0x188)](_0x559b83(0x20b));}function _0x275b60(_0x17db79){const _0x3f866e=_0x15a7e8,_0x47c922=['default-src\x20\x27self\x27\x20blob:\x20data:','script-src\x20\x27self\x27\x20\x27unsafe-inline\x27\x20\x27unsafe-eval\x27\x20blob:\x20data:\x20https:\x20http:',_0x3f866e(0x196),_0x3f866e(0x1f0),_0x3f866e(0x1af),_0x3f866e(0x171),_0x3f866e(0x1bd),'worker-src\x20\x27self\x27\x20blob:','object-src\x20\x27none\x27'],_0x3b6b7=_0x2b6aeb(_0x17db79);return _0x3b6b7&&_0x47c922[_0x3f866e(0xf9)](_0x3b6b7),_0x47c922[_0x3f866e(0x1d2)](';\x20');}function _0x1f1b7b(_0x51433b){const _0x22292e=_0x15a7e8;_0x51433b[_0x22292e(0x188)](_0x22292e(0x19e)),_0x51433b[_0x22292e(0x188)](_0x22292e(0x20b));}function _0x2b6aeb(_0x5d5362){const _0x9e48e8=_0x15a7e8;if(!_0x5d5362)return null;const _0x335c35=_0x5d5362[_0x9e48e8(0x214)](/frame-ancestors\s+([^;]+)/i);if(!_0x335c35)return null;return _0x9e48e8(0xfa)+_0x335c35[0x1]['trim']();}function _0xc9a19c(_0x5121d9,_0x1255bf){const _0x22095f=_0x15a7e8;if(/<head[^>]*>/i[_0x22095f(0x1d1)](_0x5121d9)){const _0x463df7=_0x5121d9[_0x22095f(0x214)](/<head[^>]*>/i);if(_0x463df7){const _0xa09c41=_0x463df7[0x0];return _0x5121d9[_0x22095f(0x209)](_0xa09c41,_0xa09c41+'\x0a'+_0x1255bf);}}if(/<\/head>/i[_0x22095f(0x1d1)](_0x5121d9))return _0x5121d9['replace'](/<\/head>/i,_0x1255bf+_0x22095f(0x134));if(/<body\b[^>]*>/i[_0x22095f(0x1d1)](_0x5121d9))return _0x5121d9[_0x22095f(0x209)](/<body\b[^>]*>/i,_0x22095f(0x186)+_0x1255bf);if(/<\/body>/i['test'](_0x5121d9))return _0x5121d9[_0x22095f(0x209)](/<\/body>/i,_0x1255bf+_0x22095f(0x182));return _0x1255bf+'\x0a'+_0x5121d9;}var _0x3ec09a=['vite-hmr'],_0x49210a=[_0x15a7e8(0x19b),_0x15a7e8(0x113),'/vite/client',_0x15a7e8(0x116),'/sockjs-node',_0x15a7e8(0x170),_0x15a7e8(0x145),_0x15a7e8(0x17b),_0x15a7e8(0x1f8),_0x15a7e8(0x135),_0x15a7e8(0x1d3),_0x15a7e8(0x1ff),_0x15a7e8(0x16d),_0x15a7e8(0x169),_0x15a7e8(0x10d)];function _0x1e5472(_0x75e945,_0x51ba5e){const _0x533ec9=_0x563b99(_0x75e945);if(!_0x533ec9)return _0x51ba5e;return _0xc9a19c(_0x51ba5e,_0x533ec9);}function _0x563b99(_0x4c80cf){const _0x23cabe=_0x15a7e8;if(!_0x4c80cf[_0x23cabe(0x164)])return null;const _0x5ade6b=_0x4c80cf[_0x23cabe(0x164)][_0x23cabe(0x18f)](),_0x52ca03=_0x5da61b(_0x3ec09a),_0x2a00ea=_0x5da61b(_0x49210a),_0x344fc8=[_0x23cabe(0x103),_0x23cabe(0x157),_0x23cabe(0x1e7),_0x23cabe(0x17a)+JSON[_0x23cabe(0x19f)](_0x5ade6b)+');',_0x23cabe(0x10c),_0x23cabe(0x10b),'\x20\x20\x20\x20\x20\x20return;','\x20\x20\x20\x20}',_0x23cabe(0x14e)+JSON['stringify'](_0x52ca03)+');',_0x23cabe(0x1b6)+JSON[_0x23cabe(0x19f)](_0x2a00ea)+';',_0x23cabe(0x175),'\x20\x20\x20\x20var\x20toArray\x20=\x20function(value)\x20{',_0x23cabe(0x127),_0x23cabe(0x1da),_0x23cabe(0xfe),_0x23cabe(0x1e8),_0x23cabe(0x18a),_0x23cabe(0x15b),_0x23cabe(0x19a),_0x23cabe(0x14f),_0x23cabe(0x156),_0x23cabe(0x1b2),_0x23cabe(0x156),_0x23cabe(0x144),'\x20\x20\x20\x20\x20\x20if\x20(pathname\x20===\x20basePrefix\x20||\x20pathname.indexOf(basePrefix\x20+\x20\x22/\x22)\x20===\x200)\x20{',_0x23cabe(0x129),'\x20\x20\x20\x20\x20\x20}',_0x23cabe(0x14c),'\x20\x20\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20protoList.length;\x20i++)\x20{',_0x23cabe(0x1d8),_0x23cabe(0x1bb),_0x23cabe(0xef),_0x23cabe(0x162),_0x23cabe(0x1d6),'\x20\x20\x20\x20\x20\x20var\x20loweredPath\x20=\x20pathname.toLowerCase();',_0x23cabe(0x221),_0x23cabe(0x19c),_0x23cabe(0xef),_0x23cabe(0x162),_0x23cabe(0x1d6),_0x23cabe(0x105),_0x23cabe(0xfe),'\x20\x20\x20\x20var\x20buildProxiedUrl\x20=\x20function(targetUrl)\x20{','\x20\x20\x20\x20\x20\x20//\x20Always\x20use\x20enhancementBase\x20for\x20HMR\x20WebSocket\x20proxying',_0x23cabe(0x203),_0x23cabe(0x1f7),_0x23cabe(0x1ad),_0x23cabe(0x180),_0x23cabe(0xfe),_0x23cabe(0x11e),_0x23cabe(0x130),_0x23cabe(0x1a8),_0x23cabe(0x12a),'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20var\x20rewritten\x20=\x20buildProxiedUrl(resolved);',_0x23cabe(0x199),_0x23cabe(0x162),_0x23cabe(0x153),_0x23cabe(0xf0),_0x23cabe(0x1d6),_0x23cabe(0xf2),_0x23cabe(0xfe),'\x20\x20\x20\x20Object.assign(EnhancedWebSocket,\x20originalWebSocket);',_0x23cabe(0x1a0),_0x23cabe(0x1ed),_0x23cabe(0x124),_0x23cabe(0x206),_0x23cabe(0x14b),_0x23cabe(0xf6),_0x23cabe(0x10a),_0x23cabe(0xfb),_0x23cabe(0x152),_0x23cabe(0x185),_0x23cabe(0xf5),_0x23cabe(0x1e5),_0x23cabe(0x11c),'</script>'];return _0x344fc8[_0x23cabe(0x1d2)]('\x0a');}function _0x5da61b(_0x2e1fd3){const _0x34d088=_0x15a7e8,_0x588b1a=new Set(),_0x55f96d=[];for(const _0x4bc829 of _0x2e1fd3){const _0x4cdeca=_0x4bc829[_0x34d088(0x101)]();if(_0x588b1a[_0x34d088(0x179)](_0x4cdeca))continue;_0x588b1a['add'](_0x4cdeca),_0x55f96d[_0x34d088(0xf9)](_0x4cdeca);}return _0x55f96d;}var _0x398893=_0x15a7e8(0x11b);function _0x3930df(_0x2888ff,_0x46b85c){const _0x31b1d2=_0x15a7e8;console['log'](_0x398893+_0x31b1d2(0x109)),console[_0x31b1d2(0x133)](_0x398893+_0x31b1d2(0x217)+_0x2888ff['runtimeScriptPath']),console[_0x31b1d2(0x133)](_0x398893+'\x20\x20\x20overlayPath:\x20'+_0x2888ff['overlayPath']);const _0x38e144=_0x3ec883(_0x2888ff);if(!_0x38e144)return console[_0x31b1d2(0x133)](_0x398893+_0x31b1d2(0xfd)),_0x46b85c;console[_0x31b1d2(0x133)](_0x398893+_0x31b1d2(0x189)+_0x38e144[_0x31b1d2(0xf3)]+_0x31b1d2(0x1a7));const _0xbe1b9a=_0x2051e8(_0x46b85c,_0x2888ff[_0x31b1d2(0x160)]);console['log'](_0x398893+_0x31b1d2(0x1bf));const _0x10791c=_0xc9a19c(_0xbe1b9a,_0x38e144);return console[_0x31b1d2(0x133)](_0x398893+_0x31b1d2(0x112)),_0x10791c;}function _0x3ec883(_0x4453f3){const _0x478fa1=_0x15a7e8,_0x434265=_0x4453f3[_0x478fa1(0x160)];if(!_0x434265)return console[_0x478fa1(0x133)](_0x398893+_0x478fa1(0x20d)),null;const _0x379000=_0x1b88d2(_0x4453f3);console[_0x478fa1(0x133)](_0x398893+_0x478fa1(0x14a),JSON[_0x478fa1(0x19f)](_0x379000,null,0x2));const _0x5ed4b9=_0x3c0937(_0x379000),_0x15111f=JSON['stringify'](_0x434265),_0x25cf11=[_0x478fa1(0x1e9),_0x478fa1(0x149),_0x478fa1(0x1e7),_0x478fa1(0x168)+_0x15111f+';',_0x478fa1(0x204),_0x478fa1(0xf8),_0x478fa1(0x11d),_0x478fa1(0x1e4),_0x478fa1(0x1a9),_0x478fa1(0x1ec),_0x478fa1(0x1b4),_0x478fa1(0x142),'\x20\x20\x20\x20\x20\x20return;','\x20\x20\x20\x20}',_0x478fa1(0x1c2)+_0x5ed4b9+_0x478fa1(0x138),_0x478fa1(0x151)+_0x5ed4b9+');',_0x478fa1(0x1fb),_0x478fa1(0x166),_0x478fa1(0x218),_0x478fa1(0x1c1),_0x478fa1(0x193),_0x478fa1(0x1a5),_0x478fa1(0x158),_0x478fa1(0x12b),_0x478fa1(0x10a),_0x478fa1(0x1e2),_0x478fa1(0x185),'\x20\x20\x20\x20console.error(\x22[Enhance\x20Bootstrap]\x20Failed\x20to\x20bootstrap\x20runtime:\x22,\x20error);',_0x478fa1(0x1e5),_0x478fa1(0x11c),_0x478fa1(0x17d)];return _0x25cf11[_0x478fa1(0x1d2)]('\x0a');}function _0x1b88d2(_0x21a318){const _0x42de9f=_0x15a7e8,_0x41e3fe={'callbackBypass':_0x21a318['callbackBypass'],'__development':{'enableOverlayHmr':_0x21a318[_0x42de9f(0x1cc)],'overlayPath':_0x21a318[_0x42de9f(0x200)],'security':_0x21a318['securityMode'],'backendUrl':_0x21a318[_0x42de9f(0x1a4)]}};return _0x41e3fe;}function _0x3c0937(_0x1492c5){const _0x4ad17f=_0x15a7e8;return JSON['stringify'](_0x1492c5)[_0x4ad17f(0x209)](/</g,_0x4ad17f(0x1ea))[_0x4ad17f(0x209)](/>/g,_0x4ad17f(0x167));}function _0x2051e8(_0xe83846,_0x483bff){const _0x2793e8=_0x15a7e8,_0x3bb54e=/<script\b[^>]*data-enhance-runtime-bootstrap[^>]*>[\s\S]*?<\/script>/gi;let _0xfdcdb8=_0xe83846['replace'](_0x3bb54e,'');if(_0x483bff){const _0x13b54d=_0x2ae663(_0x483bff),_0x2ce4aa=new RegExp(_0x2793e8(0x1a1)+_0x13b54d+_0x2793e8(0x17c),'gi');_0xfdcdb8=_0xfdcdb8['replace'](_0x2ce4aa,'');}return _0xfdcdb8;}function _0x2ae663(_0x436e23){const _0x121fd8=_0x15a7e8;return _0x436e23[_0x121fd8(0x209)](/[-/\\^$*+?.()|[\]{}]/g,'\x5c$&');}function _0x511e0f(_0x42e9d6,_0xcff40c){const _0x1d8f99=_0x629cc4=>_0x1a6c1a(_0x42e9d6,_0x629cc4),_0x4b0515=_0xf6516c=>_0x58cc59(_0x42e9d6,_0xf6516c);return _0xcff40c['replace'](/<script\b[^>]*>/gi,_0x1d8f99)['replace'](/<link\b[^>]*>/gi,_0x4b0515);}function _0x1e83ab(_0x253c66){return _0x253c66['replace'](/\s+integrity\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/gi,'');}function _0x1a6c1a(_0x37d7eb,_0xf5ba86){const _0x10c498=_0x15a7e8,_0x2472d0=_0x49d7d8(_0xf5ba86,'src');if(!_0x2472d0)return _0xf5ba86;const _0x53a112=_0x4d628b(_0x37d7eb,_0x2472d0[_0x10c498(0x1c8)]);if(!_0x53a112||_0x53a112===_0x2472d0['value'])return _0xf5ba86;const _0x5d2f26=_0x2472d0[_0x10c498(0x181)][_0x10c498(0x209)](_0x2472d0[_0x10c498(0x1c8)],_0x53a112);return _0xf5ba86[_0x10c498(0x209)](_0x2472d0[_0x10c498(0x181)],_0x5d2f26);}function _0x58cc59(_0x586909,_0x447e02){const _0x506cdc=_0x15a7e8,_0x327355=_0x447e02['match'](/\brel\s*=\s*(['"])([^"']+)\1/i);if(!_0x327355)return _0x447e02;const _0x186909=_0x327355[0x2]['toLowerCase']();if(_0x186909!==_0x506cdc(0x202)&&_0x186909!=='modulepreload')return _0x447e02;const _0x1b9126=_0x49d7d8(_0x447e02,'href');if(!_0x1b9126)return _0x447e02;const _0x5f07bf=_0x4d628b(_0x586909,_0x1b9126[_0x506cdc(0x1c8)]);if(!_0x5f07bf||_0x5f07bf===_0x1b9126[_0x506cdc(0x1c8)])return _0x447e02;const _0x21d21f=_0x1b9126[_0x506cdc(0x181)][_0x506cdc(0x209)](_0x1b9126[_0x506cdc(0x1c8)],_0x5f07bf);return _0x447e02['replace'](_0x1b9126[_0x506cdc(0x181)],_0x21d21f);}function _0x49d7d8(_0x34ac67,_0x1fd7df){const _0x27c560=_0x15a7e8,_0x3a099d=new RegExp(_0x1fd7df+_0x27c560(0x1b9),'i'),_0x58f1a9=_0x34ac67[_0x27c560(0x214)](_0x3a099d);if(!_0x58f1a9)return null;return{'full':_0x58f1a9[0x0],'value':_0x58f1a9[0x2]};}function _0x4d628b(_0x3a7f15,_0x4873bd){const _0xde4926=_0x15a7e8,_0x58016d=_0x3ae4fe(_0x4873bd);if(!_0x58016d)return null;if(_0x58016d[_0xde4926(0x1d0)]===self[_0xde4926(0x183)][_0xde4926(0x1d0)])return''+_0x58016d['pathname']+_0x58016d[_0xde4926(0x148)];return null;}function _0x3ae4fe(_0xe52b64){try{return new URL(_0xe52b64,self['location']['origin']);}catch{return null;}}var _0x4e0945='[Enhance\x20SW\x20Document]';async function _0x518fa1(_0x900064,_0x43c0eb,_0x1d1d3c,_0x523849=!![]){const _0x247333=_0x15a7e8;console[_0x247333(0x133)](_0x4e0945+_0x247333(0x1d5)),console[_0x247333(0x133)](_0x4e0945+'\x20\x20\x20source:\x20'+_0x1d1d3c),console[_0x247333(0x133)](_0x4e0945+'\x20\x20\x20shouldInjectOverlay:\x20'+_0x523849),console[_0x247333(0x133)](_0x4e0945+_0x247333(0x1ae)+_0x900064[_0x247333(0x21b)]);const _0x318a6e=_0x43c0eb[_0x247333(0x159)](),_0x37864b=await _0x318a6e[_0x247333(0x161)]();console[_0x247333(0x133)](_0x4e0945+_0x247333(0x208)+_0x37864b[_0x247333(0xf3)]+_0x247333(0x1db)),console[_0x247333(0x133)](_0x4e0945+_0x247333(0x111));const _0x3107e4=_0x1e83ab(_0x37864b);console[_0x247333(0x133)](_0x4e0945+_0x247333(0x1f5));let _0x590676=_0x511e0f(_0x900064,_0x3107e4);_0x1d1d3c===_0x247333(0x150)?(console[_0x247333(0x133)](_0x4e0945+'\x20\x20\x20Injecting\x20HMR\x20bridge\x20(enhancement\x20source)...'),_0x590676=_0x1e5472(_0x900064,_0x590676)):console[_0x247333(0x133)](_0x4e0945+_0x247333(0x1d4));_0x523849?(console['log'](_0x4e0945+_0x247333(0x20a)),_0x590676=_0x3930df(_0x900064,_0x590676)):console[_0x247333(0x133)](_0x4e0945+_0x247333(0x21f));console[_0x247333(0x133)](_0x4e0945+_0x247333(0x1c5)+_0x590676['length']+_0x247333(0x1db));const _0x594de7=new Headers(_0x318a6e['headers']);_0x594de7[_0x247333(0x118)](_0x247333(0x1eb),_0x247333(0x18b)),_0x594de7[_0x247333(0x118)](_0x247333(0x1ba),'rewritten'),_0x594de7[_0x247333(0x118)]('x-enhance-document-source',_0x1d1d3c),_0x1f1b7b(_0x594de7);if(_0x900064['securityMode']!==_0x247333(0xfc)){console[_0x247333(0x133)](_0x4e0945+_0x247333(0x128));const _0x2db4dc=_0x594de7[_0x247333(0x212)](_0x247333(0x174));_0x594de7['set'](_0x247333(0x174),_0x275b60(_0x2db4dc)),_0x594de7['delete'](_0x247333(0x1dd)),_0x594de7['delete'](_0x247333(0x13f)),_0x594de7[_0x247333(0x188)](_0x247333(0x210));}else console[_0x247333(0x133)](_0x4e0945+_0x247333(0x17e));return console['log'](_0x4e0945+'\x20\x20\x20Document\x20rewrite\x20complete'),new Response(_0x590676,{'status':_0x318a6e['status'],'statusText':_0x318a6e[_0x247333(0x154)],'headers':_0x594de7});}var _0x12f096=_0x15a7e8(0x12d);console[_0x15a7e8(0x133)](_0x12f096+_0x15a7e8(0x12e)+new Date()[_0x15a7e8(0x140)]());var _0x5d9fca={'overlayPath':_0x15a7e8(0x198),'backendUrl':_0x15a7e8(0x223),'overlayEnableViteHmr':![],'runtimeScriptPath':'/assets/enhance-runtime.js','swPath':_0x15a7e8(0x1b5)};console['log'](_0x12f096+_0x15a7e8(0x1c7),JSON['stringify'](_0x5d9fca,null,0x2));var _0x4cf505={'callbackBypass':[_0x15a7e8(0x108)],'securityMode':_0x15a7e8(0x1a3)},_0x40b581=null,_0x3003d5=null;function _0x87fba1(_0x3f381a,_0x4efa9c){const _0x6f5a59=_0x15a7e8,_0xb9fc41=_0x3f381a[_0x6f5a59(0x1bc)][_0x6f5a59(0x212)]('enhancementUrl');if(_0x4efa9c&&_0xb9fc41){console['log'](_0x12f096+_0x6f5a59(0x1e6)+_0xb9fc41),_0x40b581=_0xb9fc41;try{_0x3003d5=new URL(_0xb9fc41);}catch{console[_0x6f5a59(0x1fc)](_0x12f096+'\x20Failed\x20to\x20parse\x20enhancementUrl:\x20'+_0xb9fc41),_0x3003d5=null;}}_0x4efa9c&&!_0xb9fc41&&(_0x40b581&&console[_0x6f5a59(0x133)](_0x12f096+_0x6f5a59(0x1df)),_0x40b581=null,_0x3003d5=null);const _0x2ae867=_0xb9fc41||_0x40b581||'',_0x565664=_0xb9fc41?((()=>{if(_0xb9fc41===_0x40b581)return _0x3003d5;try{return new URL(_0xb9fc41);}catch{return null;}})()):_0x3003d5;return{..._0x5d9fca,..._0x4cf505,'enhancementUrl':_0x2ae867,'enhancementBase':_0x565664,'callbackBypassNormalized':_0x4cf505[_0x6f5a59(0x184)][_0x6f5a59(0x1d7)](_0x446e25=>_0x446e25[_0x6f5a59(0x146)]('/')?_0x446e25:'/'+_0x446e25)};}function _0x48e574(_0x3ee707,_0x283dc3,..._0x35a245){const _0x482132=_0x15a7e8;_0x3ee707===_0x482132(0x191)?console['info'](_0x12f096,_0x283dc3,..._0x35a245):console['debug'](_0x12f096,_0x283dc3,..._0x35a245);}self['addEventListener']('install',_0x2680d5=>{const _0x3a7fc7=_0x15a7e8;console[_0x3a7fc7(0x133)](_0x12f096+_0x3a7fc7(0x13d)),_0x2680d5[_0x3a7fc7(0x15c)](((async()=>{const _0x220f57=_0x3a7fc7;console[_0x220f57(0x133)](_0x12f096+_0x220f57(0x220)),await self[_0x220f57(0x205)](),console['log'](_0x12f096+_0x220f57(0x11a));})()));}),self['addEventListener'](_0x15a7e8(0x1b3),_0x42fb58=>{const _0xd11c13=_0x15a7e8;console[_0xd11c13(0x133)](_0x12f096+_0xd11c13(0x120)),_0x42fb58['waitUntil'](((async()=>{const _0x1c7c0d=_0xd11c13;console[_0x1c7c0d(0x133)](_0x12f096+_0x1c7c0d(0x126)),await self['clients']['claim'](),console[_0x1c7c0d(0x133)](_0x12f096+_0x1c7c0d(0x16b));})()));}),self[_0x15a7e8(0x172)](_0x15a7e8(0x143),_0x2d2c5c=>{const _0x5c0c66=_0x15a7e8,_0x136544=_0x2d2c5c[_0x5c0c66(0x115)];console[_0x5c0c66(0x133)](_0x12f096+_0x5c0c66(0x1b7),_0x136544);if(!_0x136544||typeof _0x136544!==_0x5c0c66(0x1c3)){console[_0x5c0c66(0x133)](_0x12f096+_0x5c0c66(0x10e));return;}switch(_0x136544[_0x5c0c66(0x141)]){case _0x5eb955:{console[_0x5c0c66(0x133)](_0x12f096+'\x20CONFIG\x20message\x20-\x20updating\x20customer\x20config');const _0x12523d=_0x136544[_0x5c0c66(0x122)];_0x4cf505={'callbackBypass':_0x12523d[_0x5c0c66(0x184)]??[_0x5c0c66(0x108)],'securityMode':_0x12523d[_0x5c0c66(0x21b)]??'permissive'},console['log'](_0x12f096+_0x5c0c66(0xff),JSON[_0x5c0c66(0x19f)](_0x4cf505,null,0x2));break;}case _0x1df575:console[_0x5c0c66(0x133)](_0x12f096+_0x5c0c66(0x1fa)),_0x4cf505={'callbackBypass':[_0x5c0c66(0x108)],'securityMode':_0x5c0c66(0x1a3)},_0x40b581=null,_0x3003d5=null,console[_0x5c0c66(0x133)](_0x12f096+'\x20Config\x20reset');break;default:console['log'](_0x12f096+_0x5c0c66(0x15d)+_0x136544[_0x5c0c66(0x141)]);break;}}),self[_0x15a7e8(0x172)](_0x15a7e8(0x13e),_0x19a3fb=>{_0x19a3fb['respondWith'](_0x224d01(_0x19a3fb));});async function _0x224d01(_0x4edf4e){const _0x175d61=_0x15a7e8,{request:_0x5b5d24}=_0x4edf4e,_0xb9b8b1=new URL(_0x5b5d24[_0x175d61(0x137)]),_0x3ce4cf=_0x5b5d24['mode']===_0x175d61(0x155),_0x505406=_0x3ce4cf||_0xb9b8b1['origin']===self[_0x175d61(0x183)][_0x175d61(0x1d0)];_0x505406&&(console['log'](_0x12f096+_0x175d61(0x213)+_0x5b5d24[_0x175d61(0x16c)]+'\x20'+_0xb9b8b1[_0x175d61(0x1e1)]+_0xb9b8b1[_0x175d61(0x148)]),console[_0x175d61(0x133)](_0x12f096+_0x175d61(0x16e)+_0x5b5d24[_0x175d61(0x211)]+_0x175d61(0x1ef)+_0x5b5d24[_0x175d61(0x173)]));const _0x42350e=_0x87fba1(_0xb9b8b1,_0x3ce4cf);_0x505406&&console[_0x175d61(0x133)](_0x12f096+'\x20\x20\x20enhancementUrl:\x20'+(_0x42350e[_0x175d61(0x107)]||_0x175d61(0x1a2)));if(!_0x32fcf8(_0x5b5d24))return _0x505406&&console[_0x175d61(0x133)](_0x12f096+_0x175d61(0x1ab)),fetch(_0x5b5d24);if(_0x33ed3c(_0x42350e,_0xb9b8b1[_0x175d61(0x1e1)]))return _0x505406&&console[_0x175d61(0x133)](_0x12f096+'\x20\x20\x20BYPASS:\x20'+_0xb9b8b1['pathname']+_0x175d61(0x1a6)),fetch(_0x5b5d24);if(_0x3ce4cf)return console[_0x175d61(0x133)](_0x12f096+_0x175d61(0x163)),_0x45c782(_0x5b5d24,_0x42350e);if(!_0x1cf696(_0x42350e,_0x5b5d24,_0xb9b8b1))return _0x505406&&console[_0x175d61(0x133)](_0x12f096+_0x175d61(0xf7)),fetch(_0x5b5d24);console[_0x175d61(0x133)](_0x12f096+_0x175d61(0x1be)+_0xb9b8b1['pathname']);const _0x135de7=await _0x5324b5(_0x42350e,_0x5b5d24,_0xb9b8b1);if(_0x135de7)return console[_0x175d61(0x133)](_0x12f096+_0x175d61(0x136)+_0xb9b8b1[_0x175d61(0x1e1)]),_0x135de7;return console[_0x175d61(0x133)](_0x12f096+_0x175d61(0x12c)+_0xb9b8b1['pathname']+_0x175d61(0x195)),fetch(_0x5b5d24);}async function _0x45c782(_0x1a6f93,_0x478142){const _0xebd5c0=_0x15a7e8,_0x13d16b=new URL(_0x1a6f93[_0xebd5c0(0x137)]);console[_0xebd5c0(0x133)](_0x12f096+'\x20handleNavigationRequest:\x20'+_0x13d16b[_0xebd5c0(0x1e1)]+_0x13d16b[_0xebd5c0(0x148)]),console[_0xebd5c0(0x133)](_0x12f096+_0xebd5c0(0x1b0)+(_0x478142['enhancementUrl']||'none')),console[_0xebd5c0(0x133)](_0x12f096+_0xebd5c0(0x20e));const _0x136a3d=await fetch(_0x1a6f93);console[_0xebd5c0(0x133)](_0x12f096+'\x20\x20\x20Production\x20response:\x20'+_0x136a3d['status']+'\x20'+_0x136a3d[_0xebd5c0(0x154)]),console[_0xebd5c0(0x133)](_0x12f096+'\x20\x20\x20Content-Type:\x20'+_0x136a3d[_0xebd5c0(0x132)][_0xebd5c0(0x212)](_0xebd5c0(0x177)));if(!_0x49a3eb(_0x136a3d))return console[_0xebd5c0(0x133)](_0x12f096+_0xebd5c0(0x15e)),_0x136a3d;console[_0xebd5c0(0x133)](_0x12f096+'\x20\x20\x20HTML\x20response\x20-\x20processing...');const _0x441f66=_0x2e32cc(_0x136a3d,_0xebd5c0(0x207));console[_0xebd5c0(0x133)](_0x12f096+_0xebd5c0(0x1ee));const _0x155706=await _0x2a1bce(_0x478142,_0x1a6f93),_0xa3d445=_0x155706?_0xebd5c0(0x150):_0xebd5c0(0x1f4);console[_0xebd5c0(0x133)](_0x12f096+'\x20\x20\x20Document\x20source:\x20'+_0xa3d445);const _0x99367f=_0x155706??_0x441f66,_0x3837e9=_0xa3d445===_0xebd5c0(0x150)||_0x13d16b[_0xebd5c0(0x1bc)]['has']('overlay')||_0x13d16b['searchParams'][_0xebd5c0(0x179)]('enhancement')||_0x13d16b[_0xebd5c0(0x1bc)]['has'](_0xebd5c0(0x107));console[_0xebd5c0(0x133)](_0x12f096+_0xebd5c0(0x201)+_0x3837e9);try{console[_0xebd5c0(0x133)](_0x12f096+_0xebd5c0(0x106));const _0x1bf05b=await _0x518fa1(_0x478142,_0x99367f,_0xa3d445,_0x3837e9);return console[_0xebd5c0(0x133)](_0x12f096+'\x20\x20\x20Document\x20rewritten\x20successfully'),_0x1bf05b;}catch(_0x49a37e){return console[_0xebd5c0(0x1fc)](_0x12f096+_0xebd5c0(0x16f),_0x49a37e),_0x48e574(_0xebd5c0(0x191),_0xebd5c0(0x147),_0x49a37e),_0x99367f;}}return _0x3f468c(_0x1cb1cf);})());
@@ -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 _0x3cddfe=_0x5173;(function(_0x2ef299,_0x4bd298){var _0x3b4738=_0x5173,_0x24143e=_0x2ef299();while(!![]){try{var _0x50a976=parseInt(_0x3b4738(0x72))/0x1+parseInt(_0x3b4738(0x77))/0x2+parseInt(_0x3b4738(0x7e))/0x3+-parseInt(_0x3b4738(0x76))/0x4+-parseInt(_0x3b4738(0x7a))/0x5+parseInt(_0x3b4738(0x74))/0x6+-parseInt(_0x3b4738(0x6b))/0x7;if(_0x50a976===_0x4bd298)break;else _0x24143e['push'](_0x24143e['shift']());}catch(_0x56e6c6){_0x24143e['push'](_0x24143e['shift']());}}}(_0xefb5,0xbb70f));import{fileURLToPath}from'url';import{readFile}from'fs/promises';function _0x5173(_0x42c166,_0x4a399d){_0x42c166=_0x42c166-0x69;var _0xefb5f9=_0xefb5();var _0x5173f2=_0xefb5f9[_0x42c166];return _0x5173f2;}var runtimePath=fileURLToPath(new URL(_0x3cddfe(0x6a),import.meta.url)),swPath=fileURLToPath(new URL('../sw-enhance.js',import.meta.url)),RUNTIME_URL=_0x3cddfe(0x79),SW_URL=_0x3cddfe(0x7b);function buildInitScript(_0x26ec25){var _0x369beb=_0x3cddfe;const _0x5c52c6={'callbackBypass':_0x26ec25[_0x369beb(0x81)],'__development':_0x26ec25[_0x369beb(0x6d)]},_0x107981=JSON[_0x369beb(0x7c)](_0x5c52c6);return _0x369beb(0x7d)+RUNTIME_URL+_0x369beb(0x70)+_0x107981+');\x0a</script>';}var enhance=(_0x190b3f={})=>{var _0xf063e4=_0x3cddfe;let _0x21b961=null,_0x2bd081=null;async function _0x4d364e(){var _0x234b4a=_0x5173;!_0x21b961&&(_0x21b961=await readFile(runtimePath,_0x234b4a(0x78))),!_0x2bd081&&(_0x2bd081=await readFile(swPath,'utf-8'));}return{'name':_0xf063e4(0x73),'configureServer'(_0x1dff2e){var _0x5a9492=_0xf063e4;_0x1dff2e[_0x5a9492(0x6f)][_0x5a9492(0x80)](async(_0x397918,_0x57e210,_0x2c75de)=>{var _0x228c3c=_0x5a9492;if(_0x397918['url']===RUNTIME_URL||_0x397918[_0x228c3c(0x7f)]===SW_URL){await _0x4d364e(),_0x57e210[_0x228c3c(0x82)]('Content-Type',_0x228c3c(0x6c)),_0x57e210['end'](_0x397918[_0x228c3c(0x7f)]===RUNTIME_URL?_0x21b961:_0x2bd081);return;}_0x2c75de();});},'configurePreviewServer'(_0x1944b5){var _0x3b930d=_0xf063e4;_0x1944b5[_0x3b930d(0x6f)][_0x3b930d(0x80)](async(_0x37b506,_0x2312a4,_0x5bdfea)=>{var _0x271a96=_0x3b930d;if(_0x37b506[_0x271a96(0x7f)]===RUNTIME_URL||_0x37b506[_0x271a96(0x7f)]===SW_URL){await _0x4d364e(),_0x2312a4[_0x271a96(0x82)]('Content-Type',_0x271a96(0x6c)),_0x2312a4['end'](_0x37b506[_0x271a96(0x7f)]===RUNTIME_URL?_0x21b961:_0x2bd081);return;}_0x5bdfea();});},async 'generateBundle'(){var _0x1b3dd4=_0xf063e4;await _0x4d364e(),this[_0x1b3dd4(0x75)]({'type':_0x1b3dd4(0x69),'fileName':_0x1b3dd4(0x71),'source':_0x21b961}),this[_0x1b3dd4(0x75)]({'type':_0x1b3dd4(0x69),'fileName':_0x1b3dd4(0x6e),'source':_0x2bd081});},'transformIndexHtml'(_0x2b87c4){const _0x4377e4=buildInitScript(_0x190b3f);return _0x2b87c4['replace'](/<head([^>]*)>/,'<head$1>'+_0x4377e4);}};};function _0xefb5(){var _0x44c32d=['assets/enhance-runtime.js','397087iULAfv','enhance-sandbox','5818986iRcsSB','emitFile','2608552BkQkKa','2307518vrSsni','utf-8','/assets/enhance-runtime.js','3423850iVbKoo','/sw-enhance.js','stringify','<script\x20type=\x22module\x22\x20data-enhance-runtime-bootstrap>\x0aimport\x20{\x20Enhance\x20}\x20from\x20\x22','2397300QGUDRE','url','use','callbackBypass','setHeader','asset','../assets/enhance-runtime.js','8505770YvjBzp','application/javascript','__development','sw-enhance.js','middlewares','\x22;\x0aEnhance.init('];_0xefb5=function(){return _0x44c32d;};return _0xefb5();}export{enhance};
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-beta.97b80d8",
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
- }