{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/2EGWF4yGeP4sZ35ylvMt/HdsNjMnLNCuYi3cNCShq/New_registration.js", "ssg:https://framerusercontent.com/modules/iYGx01Y1PrSq4m1jtQ8G/sTMU4R8Ixsljjx0QsJBg/Psw_input.js"],
  "sourcesContent": ["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect}from\"react\";const secretKey=\"0fYweLf6\"// Use your secret key\n;export function FormOverride(){useEffect(()=>{const handleDOMContentLoaded=()=>{const form=document.querySelector(\"form\");if(form){const handleSubmit=async event=>{event.preventDefault();// Get the input elements by name\nconst firstnameInput=form.querySelector('input[name=\"firstname\"]');const lastnameInput=form.querySelector('input[name=\"lastname\"]');const emailInput=form.querySelector('input[name=\"email\"]');const passwordInput=form.querySelector('input[name=\"password\"]');if(firstnameInput&&lastnameInput&&emailInput&&passwordInput){const firstname=firstnameInput.value;const lastname=lastnameInput.value;const email=emailInput.value;const password=passwordInput.value;// Validate input\nif(!firstname){displayError(\"Please enter your first name.\");return;}if(!lastname){displayError(\"Please enter your last name.\");return;}if(!email){displayError(\"Please enter your email.\");return;}if(!password){displayError(\"Please enter your password.\");return;}if(!validateEmail(email)){displayError(\"Please enter a valid email address.\");return;}if(password.length<12){displayError(\"Password must be at least 12 characters long.\");return;}// Prepare the data payload with expiration time\nconst data={firstname:firstname,lastname:lastname,email:email,password:password,exp:Math.floor(Date.now()/1e3)+60*60};// Encode the data payload into a JWT\nconst token=await createJWT(data,secretKey);// Disable the submit button\nconst submitButton=form.querySelector('button[type=\"submit\"]');if(submitButton){submitButton.disabled=true;submitButton.textContent=\"Registering...\";}// Re-enable the submit button (optional)\nif(submitButton){submitButton.disabled=false;submitButton.textContent=\"Register\";}// Registration successful, redirect with the token\n// Get current URL's query parameters\nconst currentParams=new URLSearchParams(window.location.search);// Remove any existing 'session_token' parameters (if any)\ncurrentParams.delete(\"session_token\");// Set 'r_id' to '2' (overwrite if it exists)\ncurrentParams.set(\"r_id\",\"2\");// Add our session_token\ncurrentParams.set(\"session_token\",token);// Build the new URL\nconst redirectUrl=`https://app.cloudfloat.com/landing_redirect?${currentParams.toString()}`;// Redirect\nwindow.location.href=redirectUrl;}else{alert(\"Form inputs not found.\");}};form.addEventListener(\"submit\",handleSubmit);// Cleanup function to remove the event listener\nreturn()=>{form.removeEventListener(\"submit\",handleSubmit);};}else{console.error(\"Form not found in the DOM.\");}};// Ensure code runs only on the client side\nif(typeof window!==\"undefined\"){// Check if the DOM is already loaded\nif(document.readyState===\"complete\"||document.readyState===\"interactive\"){handleDOMContentLoaded();}else{document.addEventListener(\"DOMContentLoaded\",handleDOMContentLoaded);}}},[]);// No need to override any props\nreturn{};}// Helper functions\nfunction displayError(message){const form=document.querySelector(\"form\");if(form){let errorDiv=form.querySelector(\".error-message\");if(!errorDiv){errorDiv=document.createElement(\"div\");errorDiv.className=\"error-message\";errorDiv.style.color=\"red\";form.appendChild(errorDiv);}errorDiv.textContent=message;}}function validateEmail(email){const re=/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;return re.test(email);}function base64urlEncode(str){return btoa(str).replace(/\\+/g,\"-\").replace(/\\//g,\"_\").replace(/=+$/,\"\");}function base64urlEncodeArrayBuffer(buffer){const byteArray=new Uint8Array(buffer);let binary=\"\";for(let i=0;i<byteArray.byteLength;i++){binary+=String.fromCharCode(byteArray[i]);}return base64urlEncode(binary);}async function createJWT(payload,secret){const encoder=new TextEncoder;const alg=\"HS256\";const header={alg,typ:\"JWT\"};const headerEncoded=base64urlEncode(JSON.stringify(header));const payloadEncoded=base64urlEncode(JSON.stringify(payload));const data=`${headerEncoded}.${payloadEncoded}`;const keyData=encoder.encode(secret);const key=await crypto.subtle.importKey(\"raw\",keyData,{name:\"HMAC\",hash:\"SHA-256\"},false,[\"sign\"]);const signature=await crypto.subtle.sign(\"HMAC\",key,encoder.encode(data));const signatureEncoded=base64urlEncodeArrayBuffer(signature);return`${data}.${signatureEncoded}`;}import{useContext as __legacyOverrideHOC_useContext}from\"react\";import{DataObserverContext as __legacyOverrideHOC_DataObserverContext}from\"framer\";export function withFormOverride(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...FormOverride(props)});};}withFormOverride.displayName=\"FormOverride\";\nexport const __FramerMetadata__ = {\"exports\":{\"FormOverride\":{\"type\":\"override\",\"name\":\"FormOverride\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withFormOverride\":{\"type\":\"reactHoc\",\"name\":\"withFormOverride\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./New_registration.map", "import{jsx as _jsx}from\"react/jsx-runtime\";export function PasswordOverride(){return{type:\"password\"};}import{useContext as __legacyOverrideHOC_useContext}from\"react\";import{DataObserverContext as __legacyOverrideHOC_DataObserverContext}from\"framer\";export function withPasswordOverride(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...PasswordOverride(props)});};}withPasswordOverride.displayName=\"PasswordOverride\";\nexport const __FramerMetadata__ = {\"exports\":{\"PasswordOverride\":{\"type\":\"override\",\"name\":\"PasswordOverride\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withPasswordOverride\":{\"type\":\"reactHoc\",\"name\":\"withPasswordOverride\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Psw_input.map"],
  "mappings": "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",
  "names": ["secretKey", "FormOverride", "ue", "handleDOMContentLoaded", "form", "handleSubmit", "event", "firstnameInput", "lastnameInput", "emailInput", "passwordInput", "firstname", "lastname", "email", "password", "displayError", "validateEmail", "data", "token", "createJWT", "submitButton", "currentParams", "window", "redirectUrl", "message", "errorDiv", "base64urlEncode", "str", "base64urlEncodeArrayBuffer", "buffer", "byteArray", "binary", "i", "payload", "secret", "encoder", "headerEncoded", "payloadEncoded", "keyData", "key", "signature", "signatureEncoded", "withFormOverride", "C", "props", "re", "DataObserverContext", "p", "PasswordOverride", "withPasswordOverride", "C", "props", "re", "DataObserverContext", "p"]
}
