1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,56339,e=>{"use strict";function t(){let e=new Date,t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0");return`perso.flashShown.${t}-${r}-${n}`}let r="perso.flashShownSession";function n(){try{let e=localStorage.getItem(t()),r=e?parseInt(e,10):0;return Number.isFinite(r)&&r>0?r:0}catch{return 0}}e.s(["capAllowsShow",0,function(e=1){return function(){try{return"1"===sessionStorage.getItem(r)}catch{return!1}}()||!function(e=1){return n()>=Math.max(1,Math.floor(e))}(e)},"clearFlashCap",0,function(){try{for(let e=localStorage.length-1;e>=0;e--){let t=localStorage.key(e);t&&t.startsWith("perso.flashShown.")&&localStorage.removeItem(t)}}catch{}try{sessionStorage.removeItem(r),sessionStorage.removeItem("perso.flashBarCollapsed")}catch{}},"markShownToday",0,function(){try{localStorage.setItem(t(),String(n()+1))}catch{}try{sessionStorage.setItem(r,"1")}catch{}}])},34900,82603,e=>{"use strict";e.i(47167);let t="/m/dubbing",r="https://m-portal-static.perso.ai",n=["/brand/","/reviews/"];function a(e){if(!e.startsWith("/"))return e;let a=`${t}${e}`;return r&&n.some(t=>e.startsWith(t))?`${r}${a}`:a}e.s(["BASE_PATH",0,t,"withBase",0,a],34900);var i=e.i(71645);function o(e,t){let r=new Date(`${e}Z`).getTime();if(Number.isNaN(r))return NaN;let n=new Intl.DateTimeFormat("en-US",{timeZone:t,hour12:!1,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}),a={};for(let e of n.formatToParts(new Date(r)))a[e.type]=e.value;return r-(Date.UTC(+a.year,a.month-1,+a.day,a.hour%24,+a.minute,+a.second)-r)}function s(e,t,r,n){if(!e)return!1;try{let e=n||"UTC",a=o(t||"1970-01-01T00:00:00",e),i=o(r||"2099-12-31T23:59:59",e);if(Number.isNaN(a)||Number.isNaN(i))return!1;let s=Date.now();return s>=a&&s<=i}catch{return!1}}let l=null,c=!1,u=null;async function d(){return c?l:u||(u=(async()=>{try{let e=await fetch(a("/promo-config"),{cache:"no-store"});e.ok?(l=await e.json(),c=!0):l=null}catch{l=null}return l})().finally(()=>{u=null}))}let p={creator:252,pro:876};async function f(){let e=await d(),t=e?.GUEST_PRICING??{},r=e=>{let t=Number(String(e??"").replace(/,/g,""));return Number.isFinite(t)&&t>0?t:null};return{creator:r(t.creator)??p.creator,pro:r(t.pro)??p.pro}}async function h(){let e=await d(),t=Number(e?.FLASH_SALE?.maxPerDay);return Number.isFinite(t)&&t>=1?Math.floor(t):1}async function m(){try{let{envFromHost:t}=await e.A(86720);if("prod"!==t(window.location.hostname)&&"preview"===new URLSearchParams(window.location.search).get("promo"))return!0}catch{}let t=await d(),r=t?.STARTER_50_PROMOTION;return!!r&&s(r.enabled,r.startDate,r.endDate,r.timezone)}function g(e){let t=e?.STARTER_50_PROMOTION;return t?s(t.enabled,t.startDate,t.endDate,t.timezone)?"on":"off":"unknown"}async function S(){return g(await d())}let y={discountEnabled:!1,originalUnitPrice:1.5,discountedUnitPrice:1.5};async function w(){let e=await d(),t=e?.GET_CREDITS,r=t?.usd;if(!t||!r)return y;let n=Number(r.originalPrice),a=Number(r.discountedPrice);return Number.isFinite(n)&&Number.isFinite(a)?{discountEnabled:!!t.discountEnabled&&a<n,originalUnitPrice:n,discountedUnitPrice:a}:y}e.s(["GUEST_YEARLY_FALLBACK",0,p,"LIP_FREE_EVENT",0,!0,"fetchDubbingConfig",0,d,"fetchGetCreditsDiscount",0,w,"fetchGuestYearly",0,f,"flashMaxPerDay",0,h,"isStarterOneplusOneActive",0,m,"starterPromoFetched",0,function(){return c},"starterPromoState",0,S,"starterPromoStateSync",0,function(){return c?g(l):"unknown"},"useStarterPromoEnded",0,function(){let[e,t]=(0,i.useState)(!1);return(0,i.useEffect)(()=>{let e=!0;return S().then(r=>{e&&t("off"===r)}).catch(()=>{}),()=>{e=!1}},[]),e},"wallClockToUtc",0,o],82603)},40630,e=>{"use strict";e.s(["fetchFlashSale",()=>u,"fetchPlanCatalog",()=>s,"formatPrice",()=>c,"halfPriceFloor",()=>l,"useTierNotPurchasable",()=>o]);var t=e.i(71645),r=e.i(84976),n=e.i(54858),a=e.i(28422);let i=`${(0,r.clientApiBase)()}/payment/api/v1`;function o(e){let[r,n]=(0,t.useState)(!1);return(0,t.useEffect)(()=>
1{if(n(!1),!e)return;let t=!0;return s("monthly","usd").then(r=>{if(!t)return;let a=r.find(t=>t.tier===String(e).toLowerCase());n(a?.isAccessible===!1)}).catch(()=>{}),()=>{t=!1}},[e]),r}async function s(e,t){try{let r=await (0,a.ensureSpaceSeq)();if(!r)return[];let n=await (0,a.fetchPlanArray)(r,e,t);if(!n.ok)return[];let i=n.arr,o=new Set,s=[];for(let r of i){let n=String(r.tier||"").toLowerCase();if(!n||o.has(n))continue;o.add(n);let a=Array.isArray(r.priceOptions)?r.priceOptions:[],i=e.slice(0,4),l=a.find(e=>String(e.billingPeriod||"").toLowerCase().startsWith(i))||a[0]||null,c=l?.price!=null?Number(String(l.price).replace(/,/g,"")):null;s.push({tier:n,name:r.planName||n,price:Number.isFinite(c)?c:null,discountRate:Number(l?.discountRate)||0,currency:l?.priceUnit||t,billingPeriod:l?.billingPeriod||e,isCurrentPlan:!!r.isCurrentPlan,isAccessible:!1!==r.isAccessible,isSwitchable:!1!==r.isSwitchable,isCancellationScheduled:!!r.isCancellationScheduled})}return s}catch{return[]}}function l(e){return Math.floor(50*e)/100}function c(e,t){return null==e?"":"krw"===t?"â©"+Math.round(e).toLocaleString():"$"+(Number.isInteger(e)?e.toString():e.toFixed(2))}async function u(){try{if("prod"!==(0,r.envFromHost)(window.location.hostname)&&"preview"===new URLSearchParams(window.location.search).get("flash"))return{expiresAt:new Date(Date.now()+18e5).toISOString(),remainingSeconds:1800,discounts:50}}catch{}try{let e=await (0,a.ensureSpaceSeq)();if(!e)return null;let t=await fetch(`${i}/promotions/flash-sale?spaceSeq=${e}`,{cache:"no-store",headers:(0,n.authHeaders)()});if(!t.ok)return null;let r=await t.json(),o=r?.result??r;if(!o||null==o.expiresAt)return null;let s=Number(o.remainingSeconds);return{expiresAt:String(o.expiresAt),remainingSeconds:Number.isFinite(s)&&s>0?Math.floor(s):0,discounts:Number(o.discountPercent??o.discounts)||0}}catch{return null}}},80736,45025,e=>{"use strict";e.s(["flashSecondsLeft",()=>p,"refetchFlashSale",()=>A,"useFlashSale",()=>N],80736);var t=e.i(71645),r=e.i(40630),n=e.i(59462),a=e.i(56339),i=e.i(82603),o=e.i(47472),s=e.i(58298),l=e.i(15390),c=e.i(4181),u=e.i(84976);function d(){try{return"prod"!==(0,u.envFromHost)(window.location.hostname)&&"preview"===new URLSearchParams(window.location.search).get("flash")}catch{return!1}}function p(e){let t=new Date(e.expiresAt).getTime();return Number.isFinite(t)?Math.max(0,Math.round((t-Date.now())/1e3)):Math.max(0,e.remainingSeconds)}let f=null,h=!1,m=!1,g=1,S=!1,y=new Set,w=()=>y.forEach(e=>e()),k=e=>(y.add(e),()=>{y.delete(e)}),T=e=>{let t=k(e),r=(0,l.subscribeABTest)(e);return()=>{t(),r()}},P=null,b=null;function v(){P&&(clearInterval(P),P=null)}async function A(){if(!m){if(f&&p(f)>0&&((0,o.isFlashExitArmed)()||d())){h=!0;return}m=!0;try{let e=d();if(!(0,o.isFlashExitArmed)()&&!e){f=null,v();return}let t=await (0,r.fetchFlashSale)().catch(()=>null),n=t?.expiresAt?new Date(t.expiresAt).getTime():NaN,a=(0,o.ensureFlashExpiry)(e,Number.isFinite(n)?n:null);if(null==a||a-Date.now()<=0){f=null,v();return}f={expiresAt:new Date(a).toISOString(),remainingSeconds:Math.max(0,Math.round((a-Date.now())/1e3)),discounts:t?.discounts??0},P||(P=setInterval(()=>{if(!f||0>=p(f)){let e=f?new Date(f.expiresAt).getTime():null;f=null,v(),null!=e&&Number.isFinite(e)&&b!==e&&(b=e,c.Track.flashExpire()),w()}},1e3)),(0,o.markFlashGranted)()&&((0,o.rememberFlashVariant)(t?.remainingSeconds,Number.isFinite(n)?n:null),(0,c.resetFlashViewGuards)(),c.Track.flashGrant())}finally{m=!1,h=!0,w()}}}function N(){let e=(0,t.useSyncExternalStore)(k,()=>f,()=>null),{isPaid:r,planLoaded:l}=(0,n.useAppState)(),c=(0,t.useSyncExternalStore)(T,s.isOnboardingTreatmentSync,()=>!1);return((0,t.useEffect)(()=>{!h&&!m&&((0,o.isFlashExitArmed)()||d())&&A(),S||(S=!0,(0,i.flashMaxPerDay)().then(e=>{g=e,w()}))},[]),(0,t.useEffect)(()=>{l&&r&&(0,o.disarmFlashExit)()},[l,r]),!(!l||r||!e||c||0>=p(e))&&((0,o.isFlashExitArmed)()||d())&&(d()||(0,a.capAllowsShow)(g)))?e:null}let C=()=>document.cookie.split(";").map(e=>e.trim());e.s(["gaCheckoutMetadata",0,function(){let e=function(){if("u">typeof document)try{let e,t=(e=C().find(e=>e.startsWith("_ga=")),e?.substring("_ga".length+1)||void 0);if(!t)return;let r=t.split(".").slice(-2).join(".");return/^\d+\.\d+$/.test(r)?r:void 0}catch{return}}(),t=function(){if("u">typeof document)try{let e=C().filter(e=>e.startsWith("_ga_")).map(e=>(function(e){let t=e.split(".")[2];if(!t)return;let r=(t.startsWith("s")?t.slice(1).split("$")[0]:t)??"";return/^\d{6,}$/.test(r)?Number(r):void 0})(e.substring(e.indexOf("=")+1))).filter(e=>void 0!==e);if(!e.length)return;return String(Math.max(...e))}catch{return}}();if(e||t)return{gaClientId:e,gaSessionId:t}}],45025)},96101,e=>{"use strict";let t=0,r=!1;window.addEventListener("pagehide",()=>{r=!0}),window.addEventListener("pageshow",()=>{r=!1,t=0}),document.addEventListener("visibilitychange",()=>{r="hidden"===document.visibilityState}),e.s(["leavingVia",0,function(e=Date.now()){return t>0&&e-t<3e4?"checkout":r||"u">typeof document&&"hidden"===document.visibilityState?"hide":null},"markLeavingForCheckout",0,function(){t=Date.now()}])},28422,e=>{"use strict";e.s(["PACK_ORDER",()=>E,"STARTER_PROMO_CODE",()=>f,"clearCheckoutOpen",()=>L,"clearPreCheckout",()=>y,"consumeCheckoutOpen",()=>R,"createBillingPortal",()=>G,"createPackCheckout",()=>q,"createTopUpCheckout",()=>W,"createUpgradeCheckout",()=>x,"ensureSpaceSeq",()=>v,"fetchBillingPeriod",()=>Y,"fetchChargeHistories",()=>B,"fetchCreditPacks",()=>D,"fetchCreditUsage",()=>J,"fetchNextInvoice",()=>z,"fetchPlanArray",()=>C,"fetchPlanLimit",()=>K,"lastCheckoutError",()=>k,"openCheckout",()=>M,"readPreCheckout",()=>S,"settleUpgrade",()=>b,"startPlanChange",()=>H]);var t=e.i(34900),r=e.i(84976),n=e.i(82603),a=e.i(54858),i=e.i(47472),o=e.i(80736),s=e.i(4181),l=e.i(45025),c=e.i(96101),u=e.i(75296);let d=`${(0,r.clientApiBase)()}/payment/api/v1`,p=`${(0,r.clientApiBase)()}/quota/api/v1`,f="STARTER50",h="perso.preCheckout",m=null;async function g(){try{if("u">typeof sessionStorage){let e="u">typeof localStorage?localStorage.getItem("perso.plan"):null,r=window.location.pathname,n=t.BASE_PATH&&r.startsWith(t.BASE_PATH)?r.slice(t.BASE_PATH.length)||"/":r,a={tier:e||null,quota:null,origin:n,...m?{...m}:{}};sessionStorage.setItem(h,JSON.stringify(a))}let e=await (0,a.fetchPlanStatus)().catch(()=>null);if("u">typeof sessionStorage){let r=window.location.pathname,n=t.BASE_PATH&&r.startsWith(t.BASE_PATH)?r.slice(t.BASE_PATH.length)||"/":r,a="u">typeof localStorage?localStorage.getItem("perso.plan"):null,i={tier:e?.planTier??a??null,quota:"number"==typeof e?.remainingQuota?e.remainingQuota:null,origin:n,...m?{...m}:{}};sessionStorage.setItem(h,JSON.stringify(i))}}catch{}}function S(){try{let e="u">typeof sessionStorage?sessionStorage.getItem(h):null;return e?JSON.parse(e):null}catch{return null}}function y(){try{"u">typeof sessionStorage&&sessionStorage.removeItem(h)}catch{}}let w="";function k(){return w}let T=!1;function P(e,t,r=0,n=e){if(T&&j(e)&&(n=null),w=e,n)try{s.Track.apiError(n,r,`payment_${t}`)}catch{}}function b(){let e=w;e&&"u">typeof console&&console.warn("[checkout] ë§í¬ ìì:",e);let t=t=>e.startsWith(`CHECKOUT_${t}`);return t("PAY4065")?{reload:!0,message:"ê²°ì 를 ì²ë¦¬ ì¤ì´ìì · ì ì í ìëì¼ë¡ ë°ìë¼ì"}:t("PAY4067")?{reload:!1,confirmForce:!0,message:"기존 구ë
ê³¼ íµí·결ì ì£¼ê¸°ê° ë¬ë¼ì · ê·¸ëë ë³ê²½í ê¹ì?"}:t("PAY4064")?{reload:!0,message:"íë ìí를 íì¸íê³ ìì´ì · ìë¡ê³ 침í ê²ì"}:/^(NO_PRICEID|TIER_NOT_FOUND)/.test(e)?{reload:!1,message:"ì§ê¸ ì´ íëì ê²°ì í ì ìì´ì · ê³ ê°ì¼í°ë¡ 문ìí´ì£¼ì¸ì"}:{reload:!1,message:"ê²°ì 를 ììíì§ ëª»íì´ì · ì ì í ë¤ì ìëí´ì£¼ì¸ì"}}async function v(){let e=(0,a.spaceSeq)();return e||await (0,a.fetchMySpaceSeq)()||""}let A=new Map,N=new Map;async function C(e,t,r,n={}){let i=`${e}|${t}|${r}`;if(!n.fresh){let e=A.get(i);if(e&&Date.now()-e.at<6e4)return{ok:!0,arr:e.arr};let t=N.get(i);if(t)return t}let o=(async()=>{try{let n=await fetch(`${d}/plan?spaceSeq=${e}&productType=recurring&billingPeriod=${t}¤cy=${r}`,{cache:"no-store",headers:(0,a.authHeaders)()});if(!n.ok)return{ok:!1,kind:"http",status:n.status};let o=(await n.json())?.result;if(!Array.isArray(o))return{ok:!1,kind:"not-array"};
1return A.set(i,{at:Date.now(),arr:o}),{ok:!0,arr:o}}catch{return{ok:!1,kind:"network"}}})();return n.fresh||(N.set(i,o),o.finally(()=>{N.get(i)===o&&N.delete(i)})),o}async function I(e,t="monthly",r={}){if("free"===e)return null;let n=await v();if(!n)return P("NO_SPACE","space"),null;let i=e.toLowerCase(),o=async()=>{let a=await C(n,t,"usd",{fresh:r.fresh});if(!a.ok)return P("http"===a.kind?`PLAN_HTTP_${a.status}`:"not-array"===a.kind?"PLAN_NOT_ARRAY":"PLAN_NETWORK","plan","http"===a.kind?a.status:0,null),null;let o=a.arr,s=o.find(e=>String(e.tier||"").toLowerCase()===i);if(!s?.planSeq)return P(`TIER_NOT_FOUND(${e}\xb7${o.map(e=>e.tier).join(",")})`,"plan",0,null),null;let l=Array.isArray(s.priceOptions)?s.priceOptions:[],c=l.find(e=>String(e.billingPeriod||"").toLowerCase().startsWith(t.slice(0,4)))||l[0];if(!c?.priceId)return P(`NO_PRICEID_${l.length?"N":"0"}(usd\xb7opts:${l.length})`,"plan",0,null),null;let u=Number(String(c.price).replace(/,/g,""))||0;return{planSeq:s.planSeq,priceId:c.priceId,planName:s.planName||e,amount:u,priceUnit:c.priceUnit||"usd",spaceSeq:Number(n)}},l=await o();if(!l&&w.startsWith("PLAN_HTTP_4")){let e=await (0,a.fetchMySpaceSeq)();e&&e!==n&&(n=e,l=await o())}if(!l&&w.startsWith("PLAN_HTTP_4"))try{let e=e=>{try{return localStorage.getItem(e)||"-"}catch{return"?"}},t="u">typeof document&&(document.cookie.match(/(?:^|; )\w*spaceSeq=([^;]*)/)||[])[1]||"-";w+=` \xb7 m:${e("perso.spaceSeq.manual")} s:${e("perso.spaceSeq")} c:${t} used:${n}`}catch{}if(l)w="";else if(w&&!(T&&j(w)))try{s.Track.apiError(w.split(/[(·\s]/)[0],0,"payment_plan",String(n||"-"))}catch{}return l}async function _(){let e=await v();if(!e)return P("TOPUP_NO_SPACE","topup",0,null),null;let t=async()=>{try{let t=await fetch(`${d}/plan?spaceSeq=${e}&productType=single¤cy=usd`,{cache:"no-store",headers:(0,a.authHeaders)()});if(!t.ok)return P(`TOPUP_PLAN_HTTP_${t.status}`,"topup",t.status,null),null;let r=(await t.json())?.result||[];if(!Array.isArray(r)||0===r.length)return P("TOPUP_EMPTY","topup",0,null),null;let n=r[0];if(!n?.planSeq)return P("TOPUP_NO_PLANSEQ","topup",0,null),null;let i=n.priceOptions?.[0]?.priceId;if(!i)return P(`TOPUP_NO_PRICE(opts:${n.priceOptions?.length??0})`,"topup",0,null),null;let o=Number(String(n.priceOptions?.[0]?.price??"").replace(/,/g,""));return{planSeq:n.planSeq,priceId:i,spaceSeq:Number(e),...Number.isFinite(o)&&o>0?{price:o}:{},...n.planName?{planName:n.planName}:{}}}catch{return P("TOPUP_NETWORK","topup",0,null),null}},r=await t();if(!r&&w.startsWith("TOPUP_PLAN_HTTP_4")){let n=await (0,a.fetchMySpaceSeq)();n&&n!==e&&(e=n,r=await t())}return r}let O={1800:"p30",3600:"p60",7200:"p120"},E=["p30","p60","p120"];function $(e,t){try{s.Track.apiError(e,t,"packs")}catch{}}async function D(){try{let e=await v();if(!e)return $("NO_SPACE",0),[];let t=await fetch(`${d}/plan/packs?spaceSeq=${e}`,{cache:"no-store",headers:(0,a.authHeaders)()});if(!t.ok){let e="";try{let r=await t.clone().json();e=String(r?.code||r?.result?.code||r?.errorCode||"")}catch{}return $(e||`HTTP_${t.status}`,t.status),[]}let r=await t.json(),n=r?.result||[],i=[];for(let e of n){let t=e?.priceOptions?.[0],r=Number(t?.credit),n=Number(t?.price),a=Number.isFinite(r)?O[r]:void 0;t?.priceId&&a&&Number.isFinite(n)&&i.push({packId:a,planSeq:e.planSeq,planName:e.planName,priceId:t.priceId,credit:r,price:n,isAccessible:!1!==e.isAccessible})}return 0===i.length&&$(0===n.length?"EMPTY":"UNPARSED",t.status),i}catch{return $("THROW",0),[]}}async function q(e,t=1,r="ko"){if(!e?.priceId||!e?.planSeq||!1===e.isAccessible)return P("PACK_NO_PRODUCT","topup",0,null),null;let n=await v();if(!n)return P("PACK_NO_SPACE","topup",0,null),null;m=(0,u.featureOn)("purchaseEcommerce")&&"number"==typeof e.price&&e.price>0?{amount:Math.round(e.price*t*100)/100,currency:"usd",priceId:e.priceId,planName:e.planName||"Credit Pack",billingPeriod:"one_time",ecommerce:!0}:null;let i=(0,l.gaCheckoutMetadata)(),{successUrl:o,cancelUrl:s}=F("topup","getCredits",{checkoutSession:!0});try{let l=await fetch(`${d}/charge/checkout/one-time`,{method:"POST",headers:{...(0,a.authHeaders)(),"content-type":"application/json"},cache:"no-store",body:JSON.stringify({spaceSeq:Number(n),planSeq:e.planSeq,priceId:e.priceId,successUrl:o,cancelUrl:s,isAddSpaceRequest:!1,quantity:t,country:r,...i?{metadata:i}:{}})});if(!l.ok){let e=`PACK_HTTP_${l.status}`;try{let t=await l.json(),r=t?.code||t?.result?.code;r&&(e=`PACK_${r}`)}catch{}return P(e,"topup",l.status),null}let c=await l.json(),u=c?.result?.link||c?.link||null;return u?w="":P("PACK_NO_LINK","topup"),u}catch{return P("PACK_NETWORK","topup"),null}}function F(e,r,n={}){let a=window.location.origin,i=a+window.location.pathname,o=r?`&from=${encodeURIComponent(r)}`:"",s=n.checkoutSession&&(0,u.featureOn)("checkoutSessionId")?"&session_id={CHECKOUT_SESSION_ID}":"";return{successUrl:`${a}${t.BASE_PATH}/billing/return?status=success&kind=${e}${o}${s}`,cancelUrl:`${i}${i.includes("?")?"&":"?"}checkout=canceled&kind=${e}${o}`}}
1let U="perso.checkout.open";function R(e={}){try{let t=sessionStorage.getItem(U);if(!t)return null;let r=JSON.parse(t);if(r?.mode!=="same-tab")return null;let n="number"==typeof r.at?Date.now()-r.at:0;if(!e.skipDwell&&n<3e3)return null;if(!e.skipDwell&&n>216e5)return sessionStorage.removeItem(U),null;return sessionStorage.removeItem(U),{kind:r?.kind||"unknown",elapsedSec:Math.max(0,Math.round(n/1e3))}}catch{return null}}function L(){try{sessionStorage.removeItem(U)}catch{}}async function M(e,t){let r="function"==typeof window.matchMedia&&window.matchMedia("(pointer: fine)").matches?window.open("about:blank","_blank"):null;t&&s.Track.checkoutOpen(t.kind,t.tier);let n=await e();if(!n)return r?.close(),!1;if(r&&!r.closed)try{return await g(),r.location.href=n,(0,i.armFlashExit)("new-tab",null),(0,i.watchDesktopCheckoutTab)(r,()=>void(0,o.refetchFlashSale)()),!0}catch{}return g(),(0,i.armFlashExit)("same-tab",null),t&&!function(e){try{let t=new URL(e);return t.hostname.startsWith("billing.")||t.pathname.startsWith("/p/session/")}catch{return!1}}(n)&&function(e){try{sessionStorage.setItem(U,JSON.stringify({at:Date.now(),kind:e,mode:"same-tab"}))}catch{}}(t.kind),(0,c.markLeavingForCheckout)(),window.location.assign(n),!0}async function H(e,t={}){let r=t.currentTier||"free";return M(async()=>{let n=await x(e,t);return n||("free"===r||w.includes("PAY4067")?null:await G(t.cancelOrigin))},{kind:"upgrade",tier:e})}async function x(e,t={}){let r,i=t.billingPeriod||"monthly",o=t.force||!1,s="free"===(t.currentTier||"free")?"checkout":"billing",{successUrl:c,cancelUrl:p}=F("upgrade",t.cancelOrigin,{checkoutSession:"checkout"===s}),h="off"===(0,n.starterPromoStateSync)(),g=t.promotionCode??("checkout"===s&&"starter"===String(e).toLowerCase()?f:void 0),S=h&&g===f?void 0:g,y=async t=>{let r=await I(e,i,{fresh:t});if(!r)return null;let n=r.spaceSeq;if(!n)return P("NO_SPACE","space"),null;let f="starter"===String(e).toLowerCase(),h=r.planName||String(e).charAt(0).toUpperCase()+String(e).slice(1);m=r.amount>0?{amount:r.amount,currency:(r.priceUnit||"usd").toLowerCase(),..."checkout"===s?{priceId:r.priceId,planName:h,billingPeriod:f?"monthly":i,ecommerce:(0,u.featureOn)("purchaseEcommerce")}:{}}:null;let g=(0,l.gaCheckoutMetadata)(),y=async e=>{try{let t=await fetch(`${d}/charge/${s}`,{method:"POST",headers:{...(0,a.authHeaders)(),"content-type":"application/json"},cache:"no-store",body:JSON.stringify({spaceSeq:n,planSeq:r.planSeq,priceId:r.priceId,successUrl:c,cancelUrl:p,force:e,isAddSpaceRequest:!1,successParams:"s_seq={spaceSeq}",...S?{promotionCode:S}:{},...g?{metadata:g}:{}})}),i=await t.json().catch(()=>null);if(!t.ok){let e=i?.code||i?.result?.code||`HTTP_${t.status}`,r=i?.message||i?.result?.message||"";return{code:e,msg:r}}let o=i?.result?.link||i?.link||null;return o?{link:o}:{code:"NO_LINK",msg:`keys:${Object.keys(i?.result||i||{}).join(",")}`}}catch{return null}},k=await y(o),T=!o&&k?.code==="PAY4064";if(T&&(k=await y(!0)),!k)return P(T?"CHECKOUT_PAY4064":"CHECKOUT_NETWORK","checkout",0,T?null:"CHECKOUT_NETWORK"),null;if(k.link)return w="",k.link;let b=String(k.code||"");return P(`CHECKOUT_${k.code}${k.msg?` \xb7 ${k.msg}`:""}`,"checkout",0,"PAY4064"===b||"PAY4065"===b||"PAY4067"===b?null:`CHECKOUT_${b}`),null};T=!0;try{r=await y(!1)}finally{T=!1}return null===r&&j(w)&&(w.startsWith("CHECKOUT_")&&A.clear(),r=await y(!0)),r}function j(e){return!!/^(NO_PRICEID|TIER_NOT_FOUND)/.test(e)||!!e.startsWith("CHECKOUT_")&&!/(PAY4064|PAY4065|PAY4067|NETWORK)/.test(e)}async function W(e=1,t="ko"){let r=await _();if(!r){let e=w.startsWith("TOPUP_")?w:"TOPUP_NO_PRODUCT",t=Number(/^TOPUP_PLAN_HTTP_(\d+)/.exec(e)?.[1]||0);return P(e,"topup",t,e.split(/[(·\s]/)[0]),null}let{successUrl:n,cancelUrl:i}=F("topup","getCredits",{checkoutSession:!0});m=(0,u.featureOn)("purchaseEcommerce")&&"number"==typeof r.price&&r.price>0?{amount:Math.round(r.price*e*100)/100,currency:"usd",priceId:r.priceId,planName:r.planName||"Get Credits",billingPeriod:"one_time",ecommerce:!0}:null;let o=(0,l.gaCheckoutMetadata)();try{let s=await fetch(`${d}/charge/checkout/one-time`,{method:"POST",headers:{...(0,a.authHeaders)(),"content-type":"application/json"},cache:"no-store",body:JSON.stringify({spaceSeq:r.spaceSeq,planSeq:r.planSeq,priceId:r.priceId,successUrl:n,cancelUrl:i,isAddSpaceRequest:!1,quantity:e,country:t,...o?{metadata:o}:{}})});if(!s.ok){let e=`TOPUP_HTTP_${s.status}`;try{let t=await s.json(),r=t?.code||t?.result?.code;r&&(e=`TOPUP_${r}`)}catch{}return P(e,"topup",s.status),null}let l=await s.json(),c=l?.result?.link||l?.link||null;
1return c?w="":P("TOPUP_NO_LINK","topup"),c}catch{return P("TOPUP_NETWORK","topup"),null}}async function G(e){let t=window.location.origin,r=await v();try{let n=await fetch(`${d}/charge/billing-portal`,{method:"POST",headers:{...(0,a.authHeaders)(),"content-type":"application/json"},cache:"no-store",body:JSON.stringify({spaceSeq:Number(r),returnUrl:t+window.location.pathname+(e?`?from=${encodeURIComponent(e)}`:"")})});if(!n.ok)return null;let i=await n.json();return i?.result?.link||i?.link||null}catch{return null}}async function B(e=20){try{let t=await fetch(`${d}/charge/histories?page=0&size=${e}`,{cache:"no-store",headers:(0,a.authHeaders)()});if(!t.ok)return null;let r=await t.json();return(r?.result?.content||r?.content||[]).map(e=>({productName:String(e.productName||""),paymentAmount:Number(e.paymentAmount||0),currency:String(e.currency||""),purchaseDate:String(e.purchaseDate||""),invoicePdfLink:e.invoicePdfLink||null}))}catch{return null}}async function K(){try{let e=await fetch(`${d}/plan/spaces/${await v()}/limit`,{cache:"no-store",headers:(0,a.authHeaders)()});if(!e.ok)return null;let t=await e.json(),r=t?.result||t||{};return{name:String(r.name||""),tier:String(r.tier||"").toLowerCase(),division:String(r.division||""),startDate:r.startDate||null,endDate:r.endDate||null}}catch{return null}}async function J(){try{let e=await v();if(!e)return null;let t=await fetch(`${p}/credit/spaces/${e}/video_translator/usage`,{cache:"no-store",headers:(0,a.authHeaders)()});if(!t.ok)return null;let r=(await t.json())?.result||{},n=Number(r.usedCredit),i=Number(r.unusedCredit);if(!Number.isFinite(n)||!Number.isFinite(i))return null;return{used:n,total:n+i,remaining:i}}catch{return null}}async function Y(){try{let e=await v();if(!e)return null;let t=await fetch(`${d}/plan/spaces/${e}/billing-cycle`,{cache:"no-store",headers:(0,a.authHeaders)()});if(!t.ok)return null;let r=(await t.json())?.result;return"monthly"===r||"yearly"===r?r:null}catch{return null}}async function z(){try{let e=await fetch(`${d}/subscription/spaces/${(0,a.spaceSeq)()}/next-invoice`,{cache:"no-store",headers:(0,a.authHeaders)()});if(!e.ok)return null;let t=await e.json(),r=t?.result||t||{},n=r.nextPaymentDate||r.nextInvoiceDate||r.periodEnd||r.nextDate||r.date||null;return{nextDate:"string"==typeof n?n:null}}catch{return null}}},49795,e=>{"use strict";var t=e.i(54858),r=e.i(84976);let n=()=>`${(0,r.clientApiBase)()}/payment/api/v1`,a=e=>e&&"object"==typeof e?e:null,i=e=>"number"==typeof e&&Number.isFinite(e)?e:0;async function o(){try{let e=await (0,t.ensureSpaceSeq)();if(!e)return null;let r=await fetch(`${n()}/plan/spaces/${encodeURIComponent(e)}`,{cache:"no-store",headers:(0,t.authHeaders)()}).catch(()=>null);if(!r||!r.ok)return null;let i=await r.json().catch(()=>null),o=a(a(i)?.result??i);if(!o)return null;let s=String(o.tier??"").toLowerCase(),l=String(o.subscriptionStatus??"").toLowerCase();return{tier:s,name:"string"==typeof o.name&&o.name?o.name:null,endDate:"string"==typeof o.endDate&&o.endDate?o.endDate:null,isFreePlan:"free"===s,isPastDue:"past_due"===l,isCancellationScheduled:!0===o.isCancellationScheduled,isPaused:!0===o.isPaused||"paused"===l}}catch{return null}}async function s(){try{let e=await (0,t.ensureSpaceSeq)();if(!e)return null;let r=await fetch(`${n()}/subscription/spaces/${encodeURIComponent(e)}/next-invoice`,{cache:"no-store",headers:(0,t.authHeaders)()}).catch(()=>null);if(!r||!r.ok)return null;let o=await r.json().catch(()=>null),s=a(a(o)?.result??o);if(!s)return null;return{subtotal:i(s.subtotal),discountAmount:i(s.discountAmount),total:i(s.total),amountDue:i(s.amountDue),currency:String(s.currency??""),nextPaymentDate:"string"==typeof s.nextPaymentDate?s.nextPaymentDate:null}}catch{return null}}async function l(){try{let e=await fetch(`${n()}/subscription/payment-cycle`,{cache:"no-store",headers:(0,t.authHeaders)()}).catch(()=>null);if(!e||!e.ok)return null;let r=await e.json().catch(()=>null),i=a(a(r)?.result??r);if(!i)return null;return{promotionTargetPlan:!0===i.promotionTargetPlan,subscriptionCycle:"number"==typeof i.subscriptionCycle?i.subscriptionCycle:NaN}}catch{return null}}async function c(){try{let e=await (0,t.ensureSpaceSeq)();if(!e)return[];let r=`${n()}/charge/invoice-histories?spaceSeq=${encodeURIComponent(e)}&status=failed&order=desc&size=100`,i=await fetch(r,{cache:"no-store",headers:(0,t.authHeaders)()}).catch(()=>null);if(!i||!i.ok)return[];let o=await i.json().catch(()=>null),s=a(o),l=a(s?.result),c=l?.content??s?.content;if(!Array.isArray(c))return[];return c.map(e=>{let t=a(e)??{};return{invoiceId:"string"==typeof t.invoiceId?t.invoiceId:void 0,eventType:String(t.eventType??""),failureDeclineCode:"string"==typeof t.failureDeclineCode?t.failureDeclineCode:void 0,createDate:String(t.createDate??"")}})}catch{return[]}}function u(e){if(!e)return;let t=e.trim();if(!t)return;let r=Date.parse(/[zZ]$|[+-]\d{2}:?\d{2}$/.test(t)?t:t.replace(" ","T")+"Z");return Number.isFinite(r)?r:void 0}async function d(){try{let e=await fetch(`${(0,r.clientStaticBase)()}/public/dubbing/config.json`,{cache:"no-store"}).catch(()=>null);if(!e||!e.ok)return 14;let t=await e.json().catch(()=>null),n=Number(a(t)?.PASTDUE_GRACE_DAYS);return Number.isFinite(n)&&n>0?n:14}catch{return 14}}
1e.s(["fetchFailedInvoiceHistories",0,c,"fetchMyPlanState",0,o,"fetchNextInvoiceRaw",0,s,"fetchPastDueGraceDays",0,d,"fetchPaymentCycle",0,l,"hasRetentionDiscount50",0,function(e){return!!e&&!(e.subtotal<=0)&&50===Math.round(e.discountAmount/e.subtotal*100)},"isBogoFirstCycle",0,function(e){return!!e&&e.promotionTargetPlan&&1===e.subscriptionCycle},"resolveFreeConversionDate",0,function(e,t){let r=function(e){let t,r=((t=e.filter(e=>"invoice.payment_failed"===e.eventType)).length?t:e).slice().sort((e,t)=>(u(t.createDate)??0)-(u(e.createDate)??0)),n=r[0];if(!n)return null;let a=n.invoiceId;return a?r.filter(e=>e.invoiceId===a).reduce((e,t)=>(u(t.createDate)??1/0)<(u(e.createDate)??1/0)?t:e).createDate:n.createDate}(e);if(!r)return null;let n=u(r);return void 0===n?null:new Date(n+(Number.isFinite(t)&&t>0?t:14)*864e5).toISOString()},"utcToEpochMs",0,u])},34332,e=>{"use strict";e.s(["checkLowCreditOnce",()=>u,"clearLowCreditNudge",()=>l,"lowCreditThreshold",()=>o,"markShown",()=>s]);var t=e.i(54858),r=e.i(84976),n=e.i(28422),a=e.i(49795);let i="perso.lowCreditNudge.";function o(e){return"starter"===e?.2:"creator"===e||"pro"===e?.4:null}function s(e,t,r=Date.now()){try{let n=t?Date.parse(t):NaN,a=Number.isFinite(n)&&n>r?n:r+2592e6;localStorage.setItem(`${i}${e}`,new Date(a).toISOString())}catch{}}function l(){try{for(let e=localStorage.length-1;e>=0;e--){let t=localStorage.key(e);t&&t.startsWith(i)&&localStorage.removeItem(t)}}catch{}}let c={show:!1,resetDateTime:null,mark:!1};async function u(e,o=.4){if("prod"!==(0,r.clientEnv)()&&"1"===new URLSearchParams(window.location.search).get("low_credit"))return{show:!0,resetDateTime:null,mark:!1};if(!e||function(e,t=Date.now()){try{let r=localStorage.getItem(`${i}${e}`);if(!r)return!1;let n=Date.parse(r);return Number.isFinite(n)&&t<n}catch{return!1}}(e))return c;let[s,l,d]=await Promise.all([(0,n.fetchCreditUsage)(),(0,t.fetchPlanStatus)().catch(()=>null),(0,a.fetchMyPlanState)().catch(()=>null)]);return!function(e,t=.4){return!!e&&e.total>0&&e.remaining>0&&e.remaining/e.total<=t}(s,o)?c:!d||d.isPastDue||d.isPaused?c:{show:!0,resetDateTime:l?.resetDateTime??null,mark:!0}}},58988,e=>{"use strict";var t=e.i(71645),r=e.i(54858),n=e.i(4181),a=e.i(49795),i=e.i(75296);let o=!1,s=null,l=!1;async function c(){let e=function(){if("u"<typeof navigator)return;let e=navigator.wakeLock;return e&&"function"==typeof e.request?e:void 0}();if(o&&!s&&!l&&e&&("u"<typeof document||"visible"===document.visibilityState)){l=!0;try{let t=await e.request("screen");if(!o)return void t.release().catch(()=>{});s=t,t.addEventListener?.("release",()=>{s===t&&(s=null)})}catch{}finally{l=!1}}}function u(e){if(o=e,e)c();else{let e;e=s,s=null,e&&e.release().catch(()=>{})}}"u">typeof document&&document.addEventListener("visibilitychange",()=>{"visible"===document.visibilityState&&o&&c()});let d="perso.genQueue.v1",p=e=>"processing"===e.status&&null==e.seq&&!e.pollStopped&&!e.unsure,f=e=>"processing"===e.status&&null==e.seq&&!!e.unsure,h="perso.genQueue.knownSeqs";function m(){try{let e=JSON.parse(localStorage.getItem(h)||"[]");return new Set(Array.isArray(e)?e.filter(e=>"number"==typeof e):[])}catch{return new Set}}function g(e){let t=e.filter(e=>"number"==typeof e);if(t.length)try{let e=[...m()].filter(e=>!t.includes(e));localStorage.setItem(h,JSON.stringify([...e,...t].slice(-300)))}catch{}}let S="ì
ë¡ëê° ëë기 ì ì ì¤ë¨ëì´ì · ë¤ì ìëí´ì£¼ì¸ì",y="perso.genQueue.uploadHb",w=function(){try{let e=localStorage.getItem(d),t=e?JSON.parse(e):[],r=function(e){let t=Date.now(),r=function(e){try{let t=Number(localStorage.getItem(y));return Number.isFinite(t)&&t>0&&e-t<12e4}catch{return!1}}(t),a=[];for(let i of e){let e=i;if(p(e)){if(e.submitAt){a.push({...e,unsure:!0});continue}if(r)continue;e.failFired||n.Track.generateFail(e.tool,"submit","upload_abandoned"),e={...e,status:"failed",seen:!1,failFired:!0,failMsg:S}}if(f(e)){if(e.startedAt>0&&t-e.startedAt>432e5){e.failFired||n.Track.generateFail(e.tool,"submit","submit_unresolved");continue}a.push(e);continue}if("processing"===e.status){if(null==e.seq)continue;e.pollStopped&&e.startedAt>0&&t-e.startedAt>432e5||a.push(e);continue}e.seen||e.startedAt>0&&t-e.startedAt>432e5||a.push(e)}return a}(t);if(r.length!==t.length||r.some((e,r)=>e!==t[r]))try{localStorage.setItem(d,JSON.stringify(r))}catch{}return r}catch{return[]}}(),k=new Set,T=!1;function P(){if(!T)try{localStorage.setItem(d,JSON.stringify(w.map(({thumb:e,...t})=>t)))}catch{}for(let e of((0,i.featureOn)("uploadWakeLock")&&u(w.some(p)),k))e()}let b=null;function v(e){if(b&&(clearInterval(b),b=null),e&&1)try{localStorage.removeItem(y)}catch{}}function A(){if(!w.some(p))return void v(!1);try{localStorage.setItem(y,String(Date.now()))}catch{}}function N(){!b&&(A(),w.some(p)&&(b=setInterval(A,3e3)))}function C(){return"u">typeof performance?performance.timeOrigin+performance.now():0}function I(e,t,n,a){T=!1;let i=null!=n?`${e}-p${n}`:`${e}-${w.length}-${t.length}`;if(null!=n){let e=w.find(e=>e.seq===n);if(e?.status==="processing")return e.id;w=w.filter(e=>e.seq!==n)}return w=[{id:i,tool:e,title:t||e,status:"processing",startedAt:C(),seen:!1,space:(0,r.spaceSeq)(),...null!=n?{seq:n}:{},..."lip"===e?{lipStep:1}:{}
1,...a?{thumb:a}:{}},...w],P(),null!=n&&g([n]),q(),i}window.addEventListener("pagehide",()=>{b&&v(!0)}),window.addEventListener("pageshow",e=>{e.persisted&&N()}),document.addEventListener("visibilitychange",()=>{"visible"===document.visibilityState&&b&&(0,i.featureOn)("uploadResume")&&A()});let _=0,O=(e,t)=>e.id===t||e.group===t;function E(e){return(0,a.utcToEpochMs)(e)??NaN}let $=null,D=e=>"processing"===e.status&&null!=e.seq&&!e.pollStopped&&("lip"!==e.tool||2!==e.lipStep);function q(){$||w.some(D)&&($=setInterval(U,5e3),U())}let F=!1;async function U(){if(!F){F=!0;try{await R()}finally{F=!1}}}async function R(){let t=Date.now(),r=w.filter(e=>{let r;return D(e)&&e.startedAt>0&&t-e.startedAt>("dubbing"===(r=e.tool)||"lip"===r?54e5:12e5)});if(r.length){let e=new Set(r.map(e=>e.id));w=w.map(t=>e.has(t.id)?{...t,pollStopped:!0}:t),P()}let a=w.filter(D);if(!a.length){$&&clearInterval($),$=null;return}let{fetchProgress:i}=await e.A(51405);await Promise.all(a.map(async e=>{let t=await i(e.seq,e.space);if("stop"===t){w=w.map(t=>t.id===e.id?{...t,pollStopped:!0}:t),P();return}if(!t)return;if("lip"===e.tool){w=w.map(r=>r.id!==e.id?r:t.failed?(r.failFired||n.Track.generateFail(r.tool,"lip_parent",t.reason),{...r,progress:t.progress,reason:t.reason,status:"failed",seen:!1,failFired:!0}):t.done?{...r,reason:t.reason,lipStep:2,etaMin:void 0}:{...r,progress:t.progress,reason:t.reason,etaMin:t.etaMin,lipStep:1});return}let r=t.failed?"failed":t.done?"done":"processing",a=w.find(t=>t.id===e.id);"processing"!==e.status||"done"!==r||a?.completeFired||n.Track.generateComplete(e.tool),"processing"!==e.status||"failed"!==r||a?.failFired||n.Track.generateFail(e.tool,"poll",t.reason),w=w.map(n=>n.id===e.id?{...n,progress:t.progress,reason:t.reason,etaMin:t.etaMin,status:r,..."done"===r?{completeFired:!0}:{},..."failed"===r?{failFired:!0}:{},seen:!t.failed&&!t.done&&n.seen}:n)})),P()}let L=e=>!!e.hasFailed||!!e.failureReason||!!e.engineErrorMessage?.errorMessage,M=e=>!L(e)&&(e.progress??0)>=100;function H(e){return e.failureReason||e.progressReason||void 0}let x=[];e.s(["UNSURE_LIKELY_LOST_MS",0,6e5,"addPlaceholderGen",0,function(e,t,n,a){T=!1;let i=`${e}-ph-${Date.now()}-${_++}`,o=(Array.isArray(t)?t:[t]).filter(e=>void 0!==e),s=o.length?o:[e];return w=[...s.map((t,o)=>({id:0===o?i:`${i}-${o}`,group:i,tool:e,title:t||e,status:"processing",startedAt:C(),seen:!1,space:(0,r.spaceSeq)(),...n?{thumb:n}:{},...a&&a.length===s.length&&s.length>1?{lang:a[o]}:{}})),...w],P(),N(),i},"adoptAbandonedGen",0,function(e){w.some(t=>O(t,e))&&(w=w.map(t=>O(t,e)?{...t,status:"failed",seen:!1,failFired:!0,failMsg:S}:t),P())},"clearGenQueue",0,function(){for(let e of(T=!0,w=[],$&&(clearInterval($),$=null),v(!0),u(!1),k))e();try{localStorage.removeItem(d),localStorage.removeItem(h)}catch{}},"dismissGen",0,function(e){w=w.filter(t=>t.id!==e),P()},"enqueueGen",0,I,"failGen",0,function(e,t,r,a){w=w.map(i=>O(i,e)?(i.failFired||n.Track.generateFail(i.tool,"submit",r,a),{...i,status:"failed",seen:!1,failFired:!0,failMsg:t}):i),P()},"isDoneProj",0,M,"isFailedProj",0,L,"isUnsureGen",0,f,"isUploadingGen",0,p,"markGenAccepted",0,function(e){w=w.map(t=>O(t,e)?{...t,pollStopped:!0}:t),P()},"markGenSubmitting",0,function(e,t){let r=Date.now();w=w.map(n=>O(n,e)?{...n,submitAt:r,srvTitle:t}:n),P()},"markGenUnsure",0,function(e){w=w.map(t=>O(t,e)?{...t,unsure:!0,submitAt:t.submitAt??Date.now()}:t),P()},"markGensSeen",0,function(){w.every(e=>e.seen)||(w=w.map(e=>({...e,seen:!0})),P())},"promoteGen",0,function(e,t,r){let n=w.find(t=>O(t,e))?.thumb;w=w.filter(t=>!O(t,e)),P();for(let a=r.length-1;a>=0;a--){let i=r[a],o=I(t,i.title,i.seq,n);w=w.map(t=>t.id===o?{...t,fromPlaceholder:e,...i.srvTitle?{srvTitle:i.srvTitle}:{},...i.lang?{lang:i.lang}:{},...i.fastMode?{fastMode:!0}:{},...i.nightingaleSec?{nightingaleSec:i.nightingaleSec}:{}}:t)}P()},"reconcileGenJobs",0,function(e){if(!e.length)return;let t=function(e){if(!w.some(f))return!1;let t=m();for(let e of w)null!=e.seq&&t.add(e.seq);let n=(0,r.spaceSeq)(),a=!1,i=[];return w=w.map(r=>{if(!f(r)||r.space&&n&&r.space!==n)return r;let o=r.srvTitle||r.title||"",s=r.submitAt??r.startedAt,l=e.filter(e=>{var n;let a,i,s,l;return!t.has(e.seq)&&(n=r.tool,i=(a=(e.projectGenerationType||e.projectType||"").toUpperCase()).includes("LIP"),s=a.includes("STT")||a.includes("SPEECH"),l=a.includes("SEPARAT"),"stt"===n?s:"sep"===n?l:!i&&!s&&!l)&&(e.title||"")===o}).filter(e=>{let t=E(e.createDate);return Number.isFinite(t)&&t>=s-12e4&&t<=s+6e5});if(!l.length)return r;let c=(r.lang?l.find(e=>(e.targetLanguage?.name||"")===r.lang):void 0)??(r.lang?[...l].sort((e,t)=>
1e.seq-t.seq)[0]:[...l].sort((e,t)=>Math.abs(E(e.createDate)-s)-Math.abs(E(t.createDate)-s))[0]);t.add(c.seq),i.push(c.seq),a=!0;let{unsure:u,...d}=r,p=c.targetLanguage?.name||r.lang||void 0;return{...d,seq:c.seq,pollStopped:!1,...p?{lang:p}:{},..."lip"===r.tool?{lipStep:1}:{}}}),g(i),a}(e),a=new Map(e.map(e=>[e.seq,e])),i=new Set;for(let e of w)"lip"===e.tool&&"processing"!==e.status&&2===e.lipStep&&null!=e.seq&&i.add(e.seq);let o=!1;w=w.map(t=>{if("processing"!==t.status||null==t.seq)return t;if("lip"===t.tool){let r=a.get(t.seq);if(r&&L(r))return o=!0,t.failFired||n.Track.generateFail(t.tool,"lip_parent",H(r)),{...t,status:"failed",failFired:!0,seen:!1};let s=t.srvTitle||t.title||"",l=e.filter(e=>e.seq!==t.seq&&(e.projectGenerationType||e.projectType||"").toUpperCase().includes("LIP")&&(e.title||"")===s).filter(e=>!i.has(e.seq)),c=t.lang?l.find(e=>(e.targetLanguage?.name||"")===t.lang):void 0,u=null!=t.lang&&w.some(e=>e.id!==t.id&&"lip"===e.tool&&"processing"===e.status&&(e.srvTitle||e.title)===s),d=c??(u?void 0:l[0]);return(d&&i.add(d.seq),d&&M(d))?(o=!0,t.completeFired||n.Track.generateComplete("lip"),{...t,status:"done",seq:d.seq,progress:100,lipStep:2,completeFired:!0,seen:!1}):d&&L(d)?(o=!0,t.failFired||n.Track.generateFail(t.tool,"lip_child",H(d)),{...t,status:"failed",seq:d.seq,lipStep:2,failFired:!0,seen:!1}):r&&M(r)&&2!==t.lipStep?(o=!0,{...t,lipStep:2}):t}let r=a.get(t.seq);return r?L(r)?(o=!0,t.failFired||n.Track.generateFail(t.tool,"reconcile",H(r)),{...t,status:"failed",failFired:!0,seen:!1}):M(r)?(o=!0,t.completeFired||n.Track.generateComplete(t.tool),{...t,status:"done",progress:100,completeFired:!0,seen:!1}):t:t}),(o||t)&&P(),t&&q()},"setGenThumb",0,function(e,t){t&&(w=w.map(r=>O(r,e)||r.fromPlaceholder===e?{...r,thumb:t}:r),P())},"uploadStillOwned",0,function(e){if(!w.some(t=>t.id===e&&p(t)))return!1;try{let t=localStorage.getItem(d),r=t?JSON.parse(t).find(t=>t.id===e):void 0;if(r&&"failed"===r.status)return!1}catch{}return!0},"useGenJobs",0,function(){return(0,t.useSyncExternalStore)(e=>(k.add(e),q(),()=>k.delete(e)),()=>w,()=>x)},"visibleInSpace",0,function(e,t=(0,r.spaceSeq)()){return e.filter(e=>!e.space||e.space===t)}],58988)},38036,e=>{"use strict";e.s(["AUTH_CHANGED_EVENT",()=>T,"AuthError",()=>y,"callbackParamNames",()=>U,"checkUserStatus",()=>ee,"clearAuth",()=>B,"clearMobileReturnCookie",()=>F,"clearSsoTokenCookies",()=>G,"confirmSignupCode",()=>Z,"currentEmail",()=>A,"isLoggedIn",()=>v,"lastRefreshWasDead",()=>j,"loginEmail",()=>K,"markCookieSession",()=>b,"parseCallbackBlock",()=>er,"parseOAuthCallback",()=>R,"persistTokens",()=>L,"refreshTokens",()=>W,"sendSignupCode",()=>V,"setCurrentEmail",()=>O,"setMobileReturnCookie",()=>q,"setUserName",()=>_,"signUpEmail",()=>X,"socialAuthorizeUrl",()=>$,"socialLoginUrl",()=>E,"statusLoginBlock",()=>et,"userInitial",()=>N,"userName",()=>C]);var t=e.i(58298),r=e.i(15390),n=e.i(34900),a=e.i(4181),i=e.i(54858),o=e.i(84976),s=e.i(47472),l=e.i(56339),c=e.i(34332),u=e.i(58988);function d(){let e=(0,o.clientEnv)();return"dev"===e?"7660623":"qa"===e?"2202646":"9690375"}let p=()=>`${(0,o.clientApiBase)()}/auth`,f=`${n.BASE_PATH}/persoapi`,h="perso.accessToken",m="perso.refresh",g="perso.email",S="perso.name";class y extends Error{code;constructor(e,t){super(t||e),this.code=e}}let w="perso.session",k="perso.loggedOut",T="perso:auth";function P(){try{window.dispatchEvent(new Event(T))}catch{}}function b(e){try{e?(localStorage.setItem(w,"1"),localStorage.removeItem(k),P()):localStorage.removeItem(w)}catch{}}function v(){try{if(localStorage.getItem(k))return!1;return!!(localStorage.getItem(h)||localStorage.getItem(w)||(0,i.tokenCookie)())}catch{return!!(0,i.tokenCookie)()}}function A(){try{return localStorage.getItem(g)||""}catch{return""}}function N(){let e=A();return e?e[0].toUpperCase():""}function C(){try{let e=localStorage.getItem(S);if(e&&e.trim())return e.trim()}catch{}let e=A();return e?e.split("@")[0]:""}function I(){window.dispatchEvent(new Event("perso:user"))}function _(e){let t=(e||"").trim();t?localStorage.setItem(S,t):localStorage.removeItem(S),I()}function O(e){let t=(e||"").trim();t&&localStorage.setItem(g,t),I()}async function E(e){try{let t=await fetch(`${p()}/api/v1/auth/sign-in/social?provider=${e}`,{cache:"no-store"});if(!t.ok)return null;let r=await t.json();return r?.result?.loginUrl||null}catch{return null}}function $(e,t){let r=`${window.location.origin}${n.BASE_PATH}/oauth/callback`,a=(0,o.clientApiBase)();return`${a}/auth/oauth2/authorization/${e}?redirect_uri=${encodeURIComponent(t)}&callbackUrl=${encodeURIComponent(r)}&prompt=select_account`}let D="m_callbackUrl";function q(){if("u">typeof document)try{let e=`${window.location.origin}${n.BASE_PATH}/oauth/callback`,t="https:"===window.location.protocol?"; Secure":"";document.cookie=`${D}=${encodeURIComponent(e)}; Domain=.perso.ai; Path=/; Max-Age=1800; SameSite=Lax${t}`}catch{}}function F(){if("u">typeof document)try{document.cookie=`${D}=; Domain=.perso.ai; Path=/; Max-Age=0`}catch{}}function U(e){try{let t=e.replace(/^[?#]/,"").replace(/#/g,"&");return[...new URLSearchParams(t).keys()]}catch{return[]}}function R(e){let t=new URLSearchParams(e.replace(/^[?#]/,"").replace(/#/g,"&")),r=t.get("accessToken")||t.get("access_token"),n=t.get("refreshToken")||t.get("refresh_token"),a=t.get("email")||"";if(r)return{kind:"tokens",accessToken:r,refreshToken:n||"",email:a};let i=t.get("subId")||t.get("sub")||"",o=(t.get("provider")||"").toLowerCase();if(i&&("google"===o||"azure"===o)&&a)return{kind:"signup",provider:o,subId:i,email:a,name:t.get("name")||t.get("displayName")||""};let s=t.get("error")||t.get("errorMessage")||t.get("message");return s?{kind:"error",message:s}:{kind:"unknown"}}function L(e,t,r){H(e,t,r)}function M(e={}){try{localStorage.removeItem("perso.spaceSeq"),localStorage.removeItem("perso.spaceSeq.manual"),localStorage.removeItem("perso.plan"),localStorage.removeItem("perso.wasPaid"),localStorage.removeItem("perso.hasStartedCreate")}catch{}(0,u.clearGenQueue)();try{(0,s.disarmFlashExit)(),(0,s.clearFlashUserSeq)(),(0,l.clearFlashCap)(),(0,c.clearLowCreditNudge)(),(0,r.resetABTest)(),e.keepOnboarding||(0,t.clearOnboardingMarkers)(),window.dispatchEvent(new Event("perso:account-reset"))}catch{}}function H(e,t,r){localStorage.removeItem(k);try{let e=localStorage.getItem(g);e&&(!r||e!==r)&&(M({keepOnboarding:!r}),r||localStorage.removeItem(g))}catch{}if(e){localStorage.setItem(h,e);try{let t="https:"===window.location.protocol?"; Secure":"";document.cookie=`perso_at=${encodeURIComponent(e)}; Path=${f}; SameSite=Lax; Max-Age=86400${t}`}catch{}}t&&localStorage.setItem(m,t),r&&localStorage.setItem(g,r),e&&P()}let x=!1;function j(){return x}async function W(){x=!1;let e=localStorage.getItem(m)||(localStorage.getItem(k)?"":function(e){if("u"<typeof document)return"";let t=document.cookie.match(RegExp("(?:^|; )"+e.replace(/[.$?*|{}()[\]\\/+^]/g,"\\$&")+"=([^;]*)"));return t?decodeURIComponent(t[1]):""}((0,o.clientCookiePrefix)()+"refreshToken"));if(!e)return x=!0,!1;try{let t=await fetch(`${p()}/api/v1/auth/oauth2/token`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({clientId:d(),grantType:"refresh_token",tokenReissueRequest:{refreshToken:e}}),cache:"no-store"});if(!t.ok)return(400===t.status||401===t.status)&&(x=!0),!1;let r=await t.json().catch(()=>({})),n=r?.result||{};if(!n.accessToken)return!1;return H(n.accessToken,n.refreshToken||e,A()),!0}catch{return!1}}function G(e="both"){if("u">typeof document)try{let t=(0,o.clientCookiePrefix)();for(let r of"access"===e?[`${t}accessToken`]:[`${t}accessToken`,`${t}refreshToken`])document.cookie=`${r}=; Path=/; Domain=.perso.ai; Max-Age=0; SameSite=Lax`,document.cookie=`${r}=; Path=/; Max-Age=0; SameSite=Lax`}catch{}}function B(){localStorage.removeItem(h),localStorage.removeItem(m),localStorage.removeItem(g),localStorage.removeItem(S),localStorage.removeItem(w),localStorage.setItem(k,"1"),M();try{document.cookie=`perso_at=; Path=${f}; Max-Age=0`,G(),F()}catch{}I()}async function K(e,t){let r;try{r=await fetch(`${p()}/api/v1/auth/oauth2/token`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({clientId:d(),grantType:"password",signInRequest:{email:e,password:t}}),cache:"no-store"})}catch{throw new y("NETWORK")}if(!r.ok){if(404===r.status)throw new y("HTTP_404");
1if(401===r.status)throw new y("HTTP_401");if(400===r.status)throw new y("HTTP_400");throw new y("HTTP_ERR",`status ${r.status}`)}let n=await r.json().catch(()=>({})),a=n?.result||n||{};if(!a.accessToken)throw new y("HTTP_ERR","no accessToken in response");H(a.accessToken,a.refreshToken||"",e)}let J=()=>`${(0,o.clientApiBase)()}/user`,Y=["TA0001","TA0002","TA0003"];async function z(e,t){let r=await fetch(e,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(t),cache:"no-store"}),n=await r.json().catch(()=>({}));return{ok:r.ok,status:r.status,json:n}}function Q(e){let t=e?.code??e?.result?.code??e?.errorCode;return t?(0,i.vtMessage)(t):void 0}async function V(e){try{let{ok:t,json:r}=await z(`${J()}/api/v1/email/send`,{email:e.trim(),emailSendType:"sign_up"});return t?{ok:!0}:{ok:!1,message:Q(r)}}catch{return{ok:!1}}}async function Z(e,t){try{let{ok:r,json:n}=await z(`${J()}/api/v1/email/code/confirm`,{email:e.trim(),emailCode:t.trim(),emailSendType:"sign_up"}),a=n?.result?.serverCode;if(r&&"string"==typeof a&&a)return{ok:!0,serverCode:a};return{ok:!1,message:Q(n)}}catch{return{ok:!1}}}async function X(e){try{let t=[...Y.map(e=>({termsCode:e,isAgree:!0})),{termsCode:"TA0004",isAgree:!!e.marketingOptIn}],{ok:r,json:n}=await z(`${p()}/api/v1/auth/sign-up/email`,{serverCode:e.serverCode,clientId:d(),email:e.email.trim(),password:e.password,termsRequests:t});if(!r)return{ok:!1,message:Q(n)};let i=n?.result?.tokenResponse;if(!i?.accessToken)return{ok:!1,message:Q(n)};return H(i.accessToken,i.refreshToken||"",e.email.trim()),a.Track.signup("email"),{ok:!0}}catch{return{ok:!1}}}async function ee(e){let t=(e||"").trim();if(!t)return null;try{let{ok:e,json:r}=await z(`${J()}/api/v1/users/check/status`,{email:t}),n=r?.result?.userStatus;return e&&"string"==typeof n?n:null}catch{return null}}function et(e){switch(e){case"leave":case"delete":return{blocked:!0,title:"ìì ë ê³ì ìë´",message:"í´ë¹ ì´ë©ì¼ì ìë¹ì¤ ì
ì© ë°©ì§ ë° ì´ì ì ì±
ì ë°ë¼ ì¬ê°ì
ì´ ì íë©ëë¤.",lines:["ì¬ê°ì
ì ê³ì ì´ ìì ë ìì ë¶í° 30ì¼ ì´í ê°ë¥í©ëë¤.","ìì¸í ë´ì©ì ì´ë©ì¼ í¹ì ê³ ê°ì¼í°ë¡ 문ìí´ ì£¼ì¸ì."]};case"block":return{blocked:!0,message:"ì´ì©ì´ ì ì§ë ê³ì ì´ìì · ê³ ê°ì¼í°ë¡ 문ìí´ì£¼ì¸ì"};case"inactive":return{blocked:!0,message:"í´ë©´ ìí ê³ì ì´ìì · ê³ì ì ë¤ì íì±íí´ì£¼ì¸ì"};default:return{blocked:!1,message:""}}}function er(e){let t=new URLSearchParams((e||"").replace(/^[?#]/,"").replace(/#/g,"&")),r=null;if("true"===t.get("leave")?r="leave":"true"===t.get("inactive")?r="inactive":"true"===t.get("block")?r="block":"true"===t.get("delete")?r="delete":"access_denied"===t.get("error")&&(r="access_denied"),!r)return null;if("access_denied"===r)return{status:r,message:"ë¡ê·¸ì¸ì ì¤í¨íì´ì"};let n=et(r);return{status:r,message:n.message,...n.title?{title:n.title}:{},...n.lines?{lines:n.lines}:{}}}},33957,e=>{"use strict";var t=e.i(84976),r=e.i(54858);let n=`${(0,t.clientApiBase)()}/user/api/v1`;async function a(e){try{let t=await e.json(),n=t?.code||t?.result?.code||t?.errorCode;return(0,r.vtMessage)(n,e.status)}catch{return""}}function i(){return{...(0,r.authHeaders)(),"content-type":"application/json"}}async function o(){try{let e=await fetch(`${n}/terms`,{cache:"no-store",headers:(0,r.authHeaders)()});if(!e.ok)return[];let t=(await e.json())?.result,a=t?.termsList||(Array.isArray(t)?t:[]);return Array.isArray(a)?a.filter(e=>e?.code).map(e=>({code:String(e.code),title:String(e.title||""),isRequired:!!e.isRequired})):[]}catch{return[]}}async function s(e){if(!e.length)return!1;try{return(await fetch(`${n}/terms/agree`,{method:"POST",headers:i(),body:JSON.stringify({termsRequests:e.map(e=>({termsCode:e,isAgree:!0}))}),cache:"no-store"})).ok}catch{return!1}}async function l(){let e=(await o()).map(e=>e.code);return!!e.length&&s(e)}async function c(){try{let e=await fetch(`${n}/users/profile`,{cache:"no-store",headers:(0,r.authHeaders)()});if(!e.ok)return null;let t=await e.json(),a=t?.result||t;if(!a||"string"!=typeof a.email)return null;return a}catch{return null}}async function u(e){try{let t=await fetch(`${n}/users/name/change`,{method:"POST",headers:i(),body:JSON.stringify({name:e.trim()})});if(!t.ok)return{ok:!1,error:await a(t)};return{ok:!0}}catch{return{ok:!1}}}async function d(e){try{let t=await fetch(`${n}/email/send`,{method:"POST",headers:i(),body:JSON.stringify({emailSendType:"password_reset",email:e})});if(!t.ok)return{ok:!1,error:await a(t)};return{ok:!0}}catch{return{ok:!1}}}async function p(e,t){try{let r=await fetch(`${n}/email/code/confirm`,{method:"POST",headers:i(),body:JSON.stringify({emailSendType:"password_reset",email:e,emailCode:t.trim()})});if(!r.ok)return{serverCode:null,error:await a(r)};let o=await r.json();return{serverCode:o?.result?.serverCode||o?.serverCode||null}}catch{return{serverCode:null}}}async function f(e,t,r){try{let o=await fetch(`${n}/users/password/reset`,{method:"POST",headers:i(),body:JSON.stringify({serverCode:e,email:t,password:r})});if(!o.ok)return{ok:!1,error:await a(o)};return{ok:!0}}catch{return{ok:!1}}}async function h(){try{let e=new AbortController,t=setTimeout(()=>e.abort(),15e3),a=await fetch(`${n}/users/leave`,{method:"POST",headers:i(),signal:e.signal}).finally(()=>clearTimeout(t));if(!a.ok){let e=await a.json().catch(()=>null),t=e?.code||e?.result?.code||e?.errorCode;return{ok:!1,error:(0,r.vtMessage)(t,a.status),..."string"==typeof t?{code:t}:{}}}return{ok:!0}}catch{return{ok:!1}}}e.s(["agreeAllTerms",0,l,"changeName",0,u,"confirmPasswordCode",0,p,"fetchProfile",0,c,"leaveAccount",0,h,"passwordIssue",0,function(e){if(e.length<8||e.length>20)return"8~20ìë¡ ì
ë ¥í´ì£¼ì¸ì";if(!/[a-zA-Z]/.test(e))return"ì문ì í¬í¨í´ì£¼ì¸ì";if(!/[0-9]/.test(e))return"ì«ì를 í¬í¨í´ì£¼ì¸ì";if(!/[^a-zA-Z0-9]/.test(e))return"í¹ì문ì를 í¬í¨í´ì£¼ì¸ì";let t=e.toLowerCase();for(let e=0;e+2<t.length;e++){let r=t.charCodeAt(e),n=t.charCodeAt(e+1),a=t.charCodeAt(e+2);if(r===n&&n===a)return"ê°ì 문ì를 3ë² ì´ì ì°ì ì¸ ì ìì´ì";if(n-r==1&&a-n==1)return"ì°ìë 문ì(abc·123)ë ì¸ ì ìì´ì";if(r-n==1&&n-a==1)return"ì°ìë 문ì(cba·321)ë ì¸ ì ìì´ì"}return null},"resetPassword",0,f,"sendPasswordCode",0,d])},93318,e=>{"use strict";e.s(["installAuthRefresh",()=>l,"refreshAuthOnce",()=>s]);var t=e.i(54858),r=e.i(38036),n=e.i(34900);let a=!1,i=null;
1function o(){return i||(i=(0,r.refreshTokens)().catch(()=>!1).then(e=>(i=null,e))),i}function s(){return o()}function l(){let e=window;if(e.__persoAuthPatched)return;e.__persoAuthPatched=!0;let i=window.fetch.bind(window);window.fetch=async(e,s)=>{let l=await i(e,s);if(401!==l.status)return l;let c="string"==typeof e?e:e instanceof Request?e.url:String(e);if(!/\bperso\.ai\//.test(c)||/\/auth\//.test(c)||!(0,r.isLoggedIn)()||"string"!=typeof e)return l;if(!await o())return(0,r.lastRefreshWasDead)()&&function(){if(!a){a=!0;try{(0,r.clearAuth)()}catch{}try{sessionStorage.setItem("perso.sessionExpired","1")}catch{}try{window.location.assign((0,n.withBase)("/login"))}catch{}}}(),l;let u={...s?.headers||{},...(0,t.authHeaders)()};return i(e,{...s||{},headers:u})}}},68781,e=>{"use strict";let t="perso.hasStartedCreate",r="perso.starterNudgeShown",n="perso.wasPaid";e.s(["isWinback",0,function(){try{return"1"===localStorage.getItem(n)}catch{return!1}},"markCreateStarted",0,function(){try{localStorage.setItem(t,"1")}catch{}},"markStarterNudgeShown",0,function(){try{sessionStorage.setItem(r,"1")}catch{}},"markWasPaid",0,function(){try{localStorage.setItem(n,"1")}catch{}},"shouldShowStarterNudge",0,function(e,a){if(!a||e)return!1;try{if("1"===sessionStorage.getItem(r))return!1;if("1"===localStorage.getItem(n))return!0;if("1"===localStorage.getItem(t))return!1}catch{return!1}return!0}])},59462,e=>{"use strict";e.s(["AppStateProvider",()=>h,"useAppState",()=>m]);var t=e.i(43476),r=e.i(71645),n=e.i(54858),a=e.i(38036),i=e.i(33957),o=e.i(93318),s=e.i(75296),l=e.i(68781),c=e.i(47472);let u=(0,r.createContext)({serviceDown:!1,setServiceDown:()=>{},plan:"free",setPlan:()=>{},isPaid:!1,planLoaded:!1}),d="perso.serviceDown",p="perso.plan",f=["free","starter","creator","pro","enterprise"];function h({children:e}){let[m,g]=(0,r.useState)(!1),[S,y]=(0,r.useState)("free"),[w,k]=(0,r.useState)(!1);(0,r.useEffect)(()=>{(0,o.installAuthRefresh)();try{localStorage.removeItem("perso.lastCallback")}catch{}try{g("1"===localStorage.getItem(d));let e=localStorage.getItem(p);e&&f.includes(e)&&(y(e),k(!0))}catch{}let e=0,t=async()=>{if(s.OPEN_DEMO||!(0,a.isLoggedIn)())return!1;let t=++e;try{let r=await (0,n.fetchPlanStatus)();if(t!==e)return!1;let a=r?.planTier;if(a&&f.includes(a)){y(a),"free"!==a&&(0,l.markWasPaid)();try{localStorage.setItem(p,a)}catch{}}else a&&"free"!==a&&"u">typeof console&&console.warn("[plan] 미ì¸ì planTier:",a);return!!r}catch{return!1}},r=async()=>{if(s.OPEN_DEMO||!(0,a.isLoggedIn)())return;let e=await (0,i.fetchProfile)().catch(()=>null);e&&((0,a.setCurrentEmail)(e.email),e.userName&&(0,a.setUserName)(e.userName),(0,c.rememberFlashUserSeq)(e.userSeq))},u=()=>{if(s.OPEN_DEMO||!(0,a.isLoggedIn)())return;if(m){S=!0;return}let e=Date.now();e-w<1e4||(w=e,r(),(async()=>{await (0,n.fetchMySpaceSeq)().catch(()=>null),await t()&&k(!0)})())},h=!0,m=!0,S=!1,w=0;(async()=>{try{if((0,a.isLoggedIn)()&&await (0,a.refreshTokens)().catch(()=>!1),s.OPEN_DEMO)return void k(!0);if(r(),await (0,n.fetchMySpaceSeq)().catch(()=>null),!(0,a.isLoggedIn)()){k(!0),(S||(0,a.isLoggedIn)())&&(await (0,n.fetchMySpaceSeq)().catch(()=>null),r(),await t());return}let e=await t();for(let a of[700,1800,4e3,8e3]){if(e||!h)break;if(await new Promise(e=>setTimeout(e,a)),!h)return;r(),await (0,n.fetchMySpaceSeq)().catch(()=>null),e=await t()}h&&k(!0)}finally{m=!1,S&&h&&(S=!1,u())}})();let T=()=>{(0,a.isLoggedIn)()&&(0,a.refreshTokens)().catch(()=>!1)},P=setInterval(T,12e5),b=[],v=()=>{if("visible"===document.visibilityState&&(T(),(0,a.isLoggedIn)()&&!s.OPEN_DEMO)){for((0,n.fetchMySpaceSeq)().catch(()=>null);b.length;)clearTimeout(b.pop());t(),b.push(setTimeout(()=>void t(),4e3)),b.push(setTimeout(()=>void t(),1e4))}};return window.addEventListener(a.AUTH_CHANGED_EVENT,u),document.addEventListener("visibilitychange",v),()=>{for(h=!1,window.removeEventListener(a.AUTH_CHANGED_EVENT,u),clearInterval(P);b.length;)clearTimeout(b.pop());document.removeEventListener("visibilitychange",v)}},[]);let T=(0,r.useCallback)(e=>{g(e);try{localStorage.setItem(d,e?"1":"0")}catch{}},[]),P=(0,r.useCallback)(e=>{y(e);try{localStorage.setItem(p,e)}catch{}},[]),b=(0,r.useMemo)(()=>({serviceDown:m,setServiceDown:T,plan:S,setPlan:P,isPaid:"free"!==S,planLoaded:w}),[m,T,S,P,w]);return(0,t.jsx)(u.Provider,{value:b,children:e})}let m=()=>(0,r.useContext)(u)}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.