{"version":3,"file":"DescopeOverrides.BaPCYfby.mjs","names":["__legacyOverrideHOC_DataObserverContext","_jsx","useState","_Fragment","React"],"sources":["https:/framerusercontent.com/modules/WAGjZPpy85kxzjBqFcn5/KvUT6WM54mO2vmNqiRvm/DescopeOverrides.js"],"sourcesContent":["\"use client\";import{jsx as _jsx,Fragment as _Fragment}from\"react/jsx-runtime\";import React,{useState,useEffect,useCallback}from\"react\";const projectId=\"P32PvTCDGOGs5Za15ZiEkyWOC01E\"// replace with your Descope Project ID\n;const redirectPage=\"https://www.immersia.eu/tokii-skill-studio/login\"// replace with your Redirect URL\n;const loadDescopeScripts=()=>{return new Promise((resolve,reject)=>{if(typeof window===\"undefined\")return reject(\"Window undefined\");if(document.getElementById(\"descope-webjs-sdk\")){resolve();return;}const webJsScript=document.createElement(\"script\");webJsScript.id=\"descope-webjs-sdk\";webJsScript.src=\"https://descopecdn.com/npm/@descope/web-js-sdk@1.16.0/dist/index.umd.js\";webJsScript.async=true;const webComponentScript=document.createElement(\"script\");webComponentScript.id=\"descope-web-component-sdk\";webComponentScript.src=\"https://descopecdn.com/npm/@descope/web-component@3.21.0/dist/index.js\";webComponentScript.async=true;webComponentScript.type=\"module\";webJsScript.onload=()=>{document.head.appendChild(webComponentScript);webComponentScript.onload=()=>resolve();webComponentScript.onerror=e=>reject(e);};webJsScript.onerror=e=>reject(e);document.head.appendChild(webJsScript);});};let sdkInstance=null;const initSDK=()=>{if(typeof window===\"undefined\")return null;if(!window.Descope)return null;if(!sdkInstance){sdkInstance=window.Descope({projectId,persistTokens:true,autoRefresh:true});}return sdkInstance;};const logout=async()=>{if(!sdkInstance)return;localStorage.setItem(\"authenticated\",\"false\");window.location.reload();};const ClientSideWrapper=({children})=>{const[isClient,setIsClient]=useState(false);useEffect(()=>{setIsClient(true);},[]);return isClient?/*#__PURE__*/_jsx(_Fragment,{children:children}):null;};const AuthWrapperContent=({Component,hidden,redirect,redirectURL,...props})=>{const isAuthenticated=localStorage.getItem(\"authenticated\")===\"true\";if(!isAuthenticated){window.location.href=redirectURL;return null;}return /*#__PURE__*/_jsx(Component,{...props});};const LogoutButtonContent=({Component,...props})=>{const[isReady,setIsReady]=useState(false);useEffect(()=>{loadDescopeScripts().then(()=>{initSDK();setIsReady(true);}).catch(()=>{});},[]);const handleLogout=useCallback(()=>{logout();},[]);if(!isReady)return null;return /*#__PURE__*/_jsx(Component,{...props,onClick:handleLogout});};export const protectedComponent=Component=>{return props=>/*#__PURE__*/_jsx(ClientSideWrapper,{children:/*#__PURE__*/_jsx(React.StrictMode,{children:/*#__PURE__*/_jsx(AuthWrapperContent,{Component:Component,hidden:true,redirect:false,redirectURL:\"\",...props})})});};export const unprotectedComponent=Component=>{return props=>/*#__PURE__*/_jsx(ClientSideWrapper,{children:/*#__PURE__*/_jsx(React.StrictMode,{children:/*#__PURE__*/_jsx(AuthWrapperContent,{Component:Component,hidden:false,redirect:false,redirectURL:\"\",...props})})});};export const protectedPage=Component=>{return props=>/*#__PURE__*/_jsx(ClientSideWrapper,{children:/*#__PURE__*/_jsx(React.StrictMode,{children:/*#__PURE__*/_jsx(AuthWrapperContent,{Component:Component,hidden:true,redirect:true,redirectURL:redirectPage,...props})})});};export const unprotectedPage=Component=>{return props=>/*#__PURE__*/_jsx(ClientSideWrapper,{children:/*#__PURE__*/_jsx(React.StrictMode,{children:/*#__PURE__*/_jsx(AuthWrapperContent,{Component:Component,hidden:false,redirect:true,redirectURL:redirectPage,...props})})});};export const logoutButton=Component=>{return props=>/*#__PURE__*/_jsx(ClientSideWrapper,{children:/*#__PURE__*/_jsx(React.StrictMode,{children:/*#__PURE__*/_jsx(LogoutButtonContent,{Component:Component,...props})})});};export function RefreshSession(){initSDK()// Call this at the top of the page via the override\n;return{};}import{useContext as __legacyOverrideHOC_useContext}from\"react\";import{DataObserverContext as __legacyOverrideHOC_DataObserverContext}from\"framer\";export function withRefreshSession(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...RefreshSession(props)});};}withRefreshSession.displayName=\"RefreshSession\";\nexport const __FramerMetadata__ = {\"exports\":{\"unprotectedPage\":{\"type\":\"reactHoc\",\"name\":\"unprotectedPage\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"unprotectedComponent\":{\"type\":\"reactHoc\",\"name\":\"unprotectedComponent\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RefreshSession\":{\"type\":\"override\",\"name\":\"RefreshSession\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"logoutButton\":{\"type\":\"reactHoc\",\"name\":\"logoutButton\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRefreshSession\":{\"type\":\"reactHoc\",\"name\":\"withRefreshSession\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"protectedPage\":{\"type\":\"reactHoc\",\"name\":\"protectedPage\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"protectedComponent\":{\"type\":\"reactHoc\",\"name\":\"protectedComponent\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./DescopeOverrides.map"],"mappings":"8MAEowG,SAAgB,GAAgB,CACnyG,OADoyG,EAAQ,EACtyG,CAAC,CAAE,CAAoJ,SAAgB,EAAmB,EAAE,CAAC,MAAO,KAAQ,EAA+BA,CAAuC,EAASC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAe,CAAK,CAAC,CAAC,EAAI,mCAHnQ,IAAyD,IAGuB,EAHhB,EAAU,+BAChJ,EAAa,mDACg3B,EAAY,KAAW,MAAuB,IAAS,QAA2B,CAAC,EAAO,QAAe,MAAK,AAAiB,IAAY,EAAO,QAAQ,CAAC,YAAU,cAAc,GAAK,YAAY,EAAI,CAAC,EAAU,GAA2I,GAAmB,CAAC,cAAY,CAAC,GAAK,CAAC,EAAS,GAAaC,EAAS,EAAK,EAAyC,OAAvC,MAAc,CAAC,EAAY,EAAI,CAAE,EAAE,CAAC,CAAC,EAAS,EAAsB,EAAKC,EAAU,CAAU,UAAQ,CAAC,EAAE,IAAK,EAAQ,GAAoB,CAAC,YAAU,SAAO,WAAS,cAAY,GAAG,KAAgC,aAAa,QAAQ,eAAe,IAAI,OAA8F,EAAK,EAAU,CAAC,GAAG,CAAK,CAAC,GAA3F,EAAO,SAAS,KAAK,EAAmB,MAAy6B,EAAc,GAAmB,GAAoB,EAAK,EAAkB,CAAC,SAAsB,EAAKC,EAAM,WAAW,CAAC,SAAsB,EAAK,EAAmB,CAAW,YAAU,OAAO,GAAK,SAAS,GAAK,YAAY,EAAa,GAAG,CAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EACn8E,EAAmB,YAAY"}