{"version":3,"file":"WebUIHeader.CL88B5KB.mjs","names":["languages","useCallback","NavConfigProvider","UserConsentProvider","AnalyticsProvider","LoadAuthClient","IdentifyAndTrackPageView","SearchModalProvider","UserWorkspacesProvider","Header","Logout","SearchModal"],"sources":["https:/framerusercontent.com/modules/UGmj5OBWJU7U4nPGwXwk/ObenujtQG3NySAqA3KbH/GetLocalizedUrl.js","https:/framerusercontent.com/modules/x0uPZJlADgSt5DQqBvzw/lshoLKQH95PROoxjkjMy/WebUIHeader.js"],"sourcesContent":["const LOCALE_PREFIXES={en:\"\",es:\"es\",fr:\"fr\",ja:\"jp\",\"ja-jp\":\"jp\",jp:\"jp\",ko:\"kr\",\"ko-kr\":\"kr\",kr:\"kr\",pt:\"pt\",de:\"de\"};const NON_DEFAULT_PREFIXES=new Set(Object.values(LOCALE_PREFIXES).filter(Boolean));function getLocalePrefix(locale){const normalizedLocale=locale.trim().toLowerCase();return LOCALE_PREFIXES[normalizedLocale]??LOCALE_PREFIXES[normalizedLocale.split(\"-\")[0]]??\"\";}function splitPathSuffix(value){const queryIndex=value.indexOf(\"?\");const hashIndex=value.indexOf(\"#\");const suffixIndex=[queryIndex,hashIndex].filter(index=>index>=0).sort((a,b)=>a-b)[0];if(suffixIndex===undefined){return{pathname:value,suffix:\"\"};}return{pathname:value.slice(0,suffixIndex),suffix:value.slice(suffixIndex)};}/**\n * Returns a relative URL using LottieFiles' locale prefixes.\n *\n * @example\n * getLocalizedUrl(\"/about\", \"en\")    // \"/about\"\n * getLocalizedUrl(\"/about\", \"fr\")    // \"/fr/about\"\n * getLocalizedUrl(\"/kr/about\", \"ja\") // \"/jp/about\"\n */export function getLocalizedUrl(pathOrUrl,locale){let pathname;let suffix;if(pathOrUrl instanceof URL){pathname=pathOrUrl.pathname;suffix=`${pathOrUrl.search}${pathOrUrl.hash}`;}else if(/^[a-z][a-z\\d+.-]*:\\/\\//i.test(pathOrUrl)){const url=new URL(pathOrUrl);pathname=url.pathname;suffix=`${url.search}${url.hash}`;}else{const parts=splitPathSuffix(pathOrUrl.startsWith(\"/\")?pathOrUrl:`/${pathOrUrl}`);pathname=parts.pathname;suffix=parts.suffix;}if(pathname.endsWith(\".html\")){pathname=pathname.slice(0,-\".html\".length);}const segments=pathname.split(\"/\");const existingPrefix=segments[1]?.toLowerCase();if(existingPrefix&&NON_DEFAULT_PREFIXES.has(existingPrefix)){segments.splice(1,1);pathname=segments.join(\"/\")||\"/\";}const localePrefix=getLocalePrefix(locale);if(!localePrefix){return`${pathname}${suffix}`;}const localizedPath=pathname===\"/\"?`/${localePrefix}/`:`/${localePrefix}${pathname}`;return`${localizedPath}${suffix}`;}\nexport const __FramerMetadata__ = {\"exports\":{\"getLocalizedUrl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./GetLocalizedUrl.map","// 3.0.5\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useCallback}from\"react\";import{Header,languages,AnalyticsProvider,IdentifyAndTrackPageView,LoadAuthClient,ShowLoginModal,ShowRegisterModal,Logout,SearchModalProvider,SearchModal,UserWorkspacesProvider,UserConsentProvider,NavConfigProvider,navConfig}from\"https://framerusercontent.com/modules/2ZHvBtRmbXndSJHN8Pby/fdqSNywLDaHcxI0l6QJ0/Components.js\";import{amplitudeApiKey,amplitudeWorkflowApiKey,analyticsEnabled,authLoginUrl,authUrl,baseUrl,gqlGatewayUrl,jitsuApiKey,jitsuEndpoint,workflowUrl}from\"https://framerusercontent.com/modules/reJAHDcqdBR6JUT35NJ6/0RZUeAq5VtTxEN8G6tcf/Const.js\";import{detectLocaleFromUrl}from\"https://framerusercontent.com/modules/wTY3uQDN6UkQzAg4dhl7/ryATXMwIpstjAg8gMvz8/DetectLocale.js\";import{getLocalizedUrl}from\"https://framerusercontent.com/modules/UGmj5OBWJU7U4nPGwXwk/ObenujtQG3NySAqA3KbH/GetLocalizedUrl.js\";const analyticsConfig={jitsuEndpoint:jitsuEndpoint,amplitudeApiKey:amplitudeApiKey,amplitudeWorkflowApiKey:amplitudeWorkflowApiKey,jitsuApiKey:jitsuApiKey,isEnabled:analyticsEnabled===\"true\",isDevelopment:false};function handleLocaleChange(locale){try{const urlObj=new URL(window.location.href);let pathname=urlObj.pathname;// Find the selected language object\nconst selectedLang=languages.find(lang=>lang.locale===locale);if(!selectedLang){console.error(`Locale \"${locale}\" not found in languages list.`);return;// Exit if locale is not supported\n}// Remove any existing locale prefix from the pathname\nlet cleanedPathname=pathname;for(const lang of languages){if(lang.urlPrefix&&pathname.startsWith(`/${lang.urlPrefix}/`)){cleanedPathname=pathname.substring(lang.urlPrefix.length+1);break;}}// Construct the new URL with the appropriate locale prefix\nif(selectedLang.urlPrefix){urlObj.pathname=`/${selectedLang.urlPrefix}${cleanedPathname}`;}else{// For the default language (e.g., 'en-US'), remove the prefix\nurlObj.pathname=cleanedPathname;}// Redirect to the new URL\nwindow.location.href=urlObj.toString();}catch(err){console.error(\"Error handling locale change:\",err);}}export default function WebUIHeader(props){const locale=detectLocaleFromUrl();const submitKeywordSearch=useCallback(async({keyword,type})=>{const searchPath=getLocalizedUrl(`/search`,locale);const params=new URLSearchParams({q:keyword});if(type!==\"free-premium\")params.set(\"type\",type);const action=`${baseUrl}${searchPath}?${params.toString()}`;try{const response=await fetch(`${baseUrl}/api/v1/search-csrf`,{credentials:\"same-origin\",headers:{Accept:\"application/json\"}});if(!response.ok)throw new Error(\"Unable to initialize secure search\");const payload=await response.json();if(!payload.csrfToken)throw new Error(\"Missing search CSRF token\");const form=document.createElement(\"form\");form.action=action;form.method=\"post\";const csrfInput=document.createElement(\"input\");csrfInput.name=\"csrf_token\";csrfInput.type=\"hidden\";csrfInput.value=payload.csrfToken;form.appendChild(csrfInput);document.body.appendChild(form);form.submit();}catch{// GET is intentionally inert: the user can retry from the prefilled form.\nwindow.location.href=action;}},[locale]);if(window&&window.location.host.includes(\"framercanvas.com\")){return /*#__PURE__*/_jsx(\"div\",{style:{height:\"64px\",width:\"100%\",backgroundColor:\"gray\",color:\"white\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:\"Header placeholder\"});}return /*#__PURE__*/_jsx(\"div\",{style:containerStyle,children:/*#__PURE__*/_jsx(NavConfigProvider,{initialData:navConfig,revalidateOnMount:true,apiUrl:locale?`https://lottiefiles.com/api/v1/nav-config?locale=${locale}`:\"https://lottiefiles.com/api/v1/nav-config\",children:/*#__PURE__*/_jsx(UserConsentProvider,{children:/*#__PURE__*/_jsxs(AnalyticsProvider,{config:analyticsConfig,children:[typeof window!==\"undefined\"&&/*#__PURE__*/_jsx(LoadAuthClient,{}),/*#__PURE__*/_jsx(IdentifyAndTrackPageView,{authUrl:authUrl}),/*#__PURE__*/_jsxs(SearchModalProvider,{children:[/*#__PURE__*/_jsx(UserWorkspacesProvider,{authUrl:authUrl,gqlGatewayUrl:gqlGatewayUrl,children:/*#__PURE__*/_jsx(Header,{authUrl:authUrl,appUrl:baseUrl,workflowUrl:workflowUrl,authLoginUrl:authLoginUrl,gqlGatewayUrl:gqlGatewayUrl,onLocaleChange:handleLocaleChange,locale:detectLocaleFromUrl(),openLoginModal:()=>{ShowLoginModal({returnToUrl:`${workflowUrl}?utm_medium=web&utm_source=login-main-nav`});},openRegisterModal:()=>{ShowRegisterModal({returnToUrl:`${workflowUrl}?utm_medium=web&utm_source=register-main-nav`});},onLogout:Logout,features:[{name:\"enable-topnav-state-machines\",enabled:true}]})}),/*#__PURE__*/_jsx(SearchModal,{locale:detectLocaleFromUrl(),appUrl:baseUrl,isReverseImageSearchEnabled:false,onKeywordSearch:submitKeywordSearch})]})]})})})});}const containerStyle={width:\"100%\"};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"WebUIHeader\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./WebUIHeader.map"],"mappings":"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"}