1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[22720],{72:(e,t,a)=>{function r(e){if("u"<typeof document)return null;for(let t of document.cookie.split(";").map(e=>e.trim())){if(!t.startsWith(`${e}=`))continue;let a=t.slice(e.length+1);try{return decodeURIComponent(a)}catch{return a}}return null}function o(e,t,a={}){if("u"<typeof document)return;let r=[`${e}=${encodeURIComponent(t)}`,`Path=${a.path??"/"}`,`SameSite=${a.sameSite??"Lax"}`];"number"==typeof a.maxAge&&r.push(`Max-Age=${Math.max(0,Math.floor(a.maxAge))}`),a.expires&&r.push(`Expires=${a.expires.toUTCString()}`),(a.secure??"https:"===window.location.protocol)&&r.push("Secure"),document.cookie=r.join("; ")}function i(e,t={}){o(e,"",{...t,maxAge:0,expires:new Date(0)})}a.d(t,{L9:()=>r,Qk:()=>o,wr:()=>i})},17291:(e,t,a)=>{a.d(t,{KR:()=>r});let r="Astorie"},22720:(e,t,a)=>{a.d(t,{CookieConsentProvider:()=>D,u:()=>V,I:()=>G});var r=a(92172),o=a(53657),i=a(72);let n="cookie_consent_v1",s={version:1,necessary:!0,functional:!0,analytics:!0,marketing:!1,updatedAt:null};function l(e){return"boolean"==typeof e}function c(e){return"string"==typeof e&&e.length>0&&Number.isFinite(Date.parse(e))}function d(){return{...s}}function u(e){return!!e.updatedAt}function p(e,t,a){return!a.gpcEnabled&&(u(t)?e:!a.hadStoredConsentCookie&&!!a.productionRequest&&!a.gpcEnabled)}function m(e,t){return p(e.marketing,e,t)}function g(e,t){return p(e.analytics,e,t)}function h(e={}){return{version:1,necessary:!0,functional:!0,analytics:!l(e.analytics)||e.analytics,marketing:!!l(e.marketing)&&e.marketing,updatedAt:c(e.updatedAt)?e.updatedAt:null}}function f(e){if(!e)return d();try{let t=(()=>{try{return decodeURIComponent(e)}catch{return e}})(),a=JSON.parse(t);if(!a||"object"!=typeof a||!(1===a.version&&!0===a.necessary&&l(a.functional)&&l(a.analytics)&&l(a.marketing)&&(null===a.updatedAt||c(a.updatedAt))))return d();return h(a)}catch{return d()}}function y(e){return JSON.stringify(h(e))}function v(){return h({functional:!0,analytics:!0,marketing:!0,updatedAt:new Date().toISOString()})}function w(){return h({functional:!0,analytics:!0,marketing:!1,updatedAt:new Date().toISOString()})}var T=a(25744);function b(){let e=(0,i.L9)(n);return{raw:e,consent:f(e),signals:{countryCode:null,gpcEnabled:!!("u">typeof navigator)&&!0===navigator.globalPrivacyControl||"1"===(0,i.L9)(T.M4),hadStoredConsentCookie:!!e,productionRequest:!0}}}var P=a(68566),k=a(96687),E=a(82917),A=a(41828),x=a(60608),S=a(30671),C=a(21656),R=a(65589),L=a(93216),N=a(3e4),I=a(66440);let _=(0,L.createContext)(null),U={countryCode:null,gpcEnabled:!1,hadStoredConsentCookie:!1,productionRequest:!1};function M(e,t){return{marketing:m(e,t),analytics:g(e,t)}}let j=()=>{try{E.Ay.opt_out_capturing?.(),E.Ay.reset?.(!0)}catch{}};function O({onNavigate:e}){let t=(0,C.usePathname)(),a=(0,C.useSearchParams)(),r=a?.toString()??"",o=(0,L.useRef)(!0);return(0,L.useEffect)(()=>{if(o.current){o.current=!1;return}e()},[t,r,e]),null}function D({children:e,initialConsent:t,marketingSignals:a}){let o=void 0!==t&&void 0!==a,{overlaysReady:s}
1=(0,P.G)(),l=(0,x.Ym)(),[c,d]=(0,L.useState)(()=>o?a:U),[p,T]=(0,L.useState)(()=>o?h(t):f(null)),[k,E]=(0,L.useState)(o),[A,S]=(0,L.useState)(()=>!!o&&!u(h(t))),[C,R]=(0,L.useState)(()=>M(o?h(t):f(null),o?a:U)),[N,I]=(0,L.useState)(0);(0,L.useEffect)(()=>{if(!o||!t||!a)return;let e=h(t);T(e),d(a),R(M(e,a)),S(!u(e)),I(0)},[o,t,a]),(0,L.useEffect)(()=>{if(o)return;let e=b(),t=h(e.consent);T(t),d(e.signals),R(M(t,e.signals)),S(!u(t)),E(!0)},[o]);let q=(0,L.useRef)({consent:p,signals:c,baselineEstablished:k});(0,L.useEffect)(()=>{q.current={consent:p,signals:c,baselineEstablished:k}});let F=(0,L.useCallback)(()=>{let{consent:e,signals:t,baselineEstablished:a}=q.current;if(!a)return;let r=b(),o=h(r.consent),i=r.signals,n=g(e,t)!==g(o,i),s=m(e,t)!==m(o,i);if(n||s){g(o,i)||j(),window.location.reload();return}T(o),d(i),R(M(o,i)),S(e=>!u(o)&&e)},[]);(0,L.useEffect)(()=>{u(p)&&(0,i.Qk)(n,y(p),{maxAge:15552e3,sameSite:"Lax"})},[p]);let Y=e=>{let t=g(p,c)!==g(e,c),a=m(p,c)!==m(e,c);if((0,i.Qk)(n,y(e),{maxAge:15552e3,sameSite:"Lax"}),S(!1),t||a){g(e,c)||j(),window.location.reload();return}T(e),R(M(e,c))},V=(0,L.useMemo)(()=>({consent:p,isResolved:u(p),marketingActive:m(p,c),analyticsActive:g(p,c),openSettings:()=>{R(M(p,c)),I(e=>e+1),S(!0)},closeSettings:()=>{u(p)&&(R(M(p,c)),S(!1))}}),[p,c]),G=!u(p)&&(m(p,c)||g(p,c)),W=A&&(o||s);return(0,r.jsxs)(_.Provider,{value:V,children:[e,!o&&(0,r.jsx)(L.Suspense,{fallback:null,children:(0,r.jsx)(O,{onNavigate:F})}),W&&(0,r.jsx)(B,{lang:l,consent:p,expandRequestId:N,draft:C,trackingDefaultOn:G,onDraftChange:R,onAcceptAll:()=>{R(M(v(),c)),Y(v())},onBasicOnly:()=>{R(M(w(),c)),Y(w())},onSave:()=>Y(h({...C,updatedAt:new Date().toISOString()})),onClose:V.closeSettings})]})}let q="cookie-consent-categories",F="--consent-layer-height";function B({lang:e,consent:t,expandRequestId:a,draft:i,trackingDefaultOn:n,onDraftChange:s,onAcceptAll:l,onBasicOnly:c,onSave:d,onClose:p}){let m=(0,S.c)("common.cookieConsent"),g=(0,S.c)("common"),h=u(t),[f,y]=(0,L.useState)(a>0);(0,L.useEffect)(()=>{a>0&&y(!0)},[a]);let v=(0,L.useRef)(null);return(0,L.useEffect)(()=>{let e=v.current;if(!e)return;let t=document.documentElement,a=()=>{let a=Math.min(e.getBoundingClientRect().height+16,.4*window.innerHeight);t.style.setProperty(F,`${Math.round(a)}px`)};a(),window.addEventListener("resize",a);let r="u"<typeof ResizeObserver?null:new ResizeObserver(a);return r?.observe(e),()=>{r?.disconnect(),window.removeEventListener("resize",a),t.style.removeProperty(F)}},[v]),(0,r.jsx)("div",{lang:e,className:"pointer-events-none fixed inset-x-0 bottom-0 z-[100] px-2 pt-2 pb-[max(0.5rem,env(safe-area-inset-bottom))] sm:px-4 sm:pt-4 sm:pb-[max(1rem,env(safe-area-inset-bottom))]",children:(0,r.jsxs)("div",{ref:v,className:"pointer-events-auto mx-auto flex max-h-[80dvh] w-full max-w-4xl flex-col gap-3 overflow-y-auto overscroll-contain rounded-2xl border border-border/50 bg-background/85 p-3 shadow-2xl backdrop-blur-xl animate-in slide-in-from-bottom-8 fade-in duration-500 ease-out sm:p-4",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between sm:gap-6",children:[(0,r.jsxs)("div",{className:"min-w-0 space-y-1",children:[(0,r.jsx)("h2",{className:"font-semibold text-sm",children:m("bannerTitle")}),(0,r.jsx)("p",{className:(0,k.cn)("text-muted-foreground text-xs leading-relaxed sm:text-[13px]",!f&&"line-clamp-3 sm:line-clamp-2"),children:(0,R.$)(m(n?"bannerDescriptionOptOut":"bannerDescription"))})]}),(0,r.jsxs)("div",{className:"grid grid-cols-2 gap-2 sm:flex sm:shrink-0 sm:flex-row-reverse sm:items-center",children:[(0,r.jsx)(N.$,{type:"button",size:"sm",onClick:l,className:"h-10 w-full rounded-full sm:h-8 sm:w-auto sm:px-4",children:m("acceptAll")}),(0,r.jsx)(N.$,{type:"button",variant:"outline",size:"sm",onClick:c,className:"h-10 w-full rounded-full sm:h-8 sm:w-auto sm:px-4",children:m("basicOnly")}),h&&(0,r.jsx)(N.$,{type:"button",variant:"ghost",size:"sm",onClick:p,className:"col-span-2 h-10 w-full rounded-full sm:h-8 sm:w-auto sm:px-3",children:g("close")})]})]}),(0,r.jsxs)("div",{id:q,className:(0,k.cn)("gap-2 grid-cols-1 sm:grid-cols-2 lg:grid-cols-4",f?"grid":"hidden"),children:[(0,r.jsx)(Y,{title:m("categories.necessary.title"),description:m("categories.necessary.description"),checked:!0,disabled:!0}),(0,r.jsx)(Y,{title:m("categories.functional.title"),description:m("categories.functional.description"),checked:!0,disabled:!0}),(0,r.jsx)(Y,{title:m("categories.analytics.title"),description:m("categories.analytics.description"),checked:i.analytics,onCheckedChange:e=>s({...i,analytics:e})}),(0,r.jsx)(Y,{title:m("categories.marketing.title"),description:m("categories.marketing.description"),checked:i.marketing,onCheckedChange:e=>s({...i,marketing:e})})]}),(0,r.jsxs)("div",{className:"sticky bottom-0 -mx-3 -mb-3 flex flex-wrap items-center gap-x-2 gap-y-1 bg-background/90 px-3 pt-1 pb-3 backdrop-blur sm:-mx-4 sm:-mb-4 sm:px-4 sm:pb-4",children:[(0,r.jsxs)("button",{type:"button",onClick:()=>y(e=>!e),"aria-expanded":f,"aria-controls":q,className:"-ml-2 inline-flex min-h-11 items-center gap-1 rounded-full px-2 text-xs font-medium text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring sm:min-h-8",children:[m("customize"),(0,r.jsx)(A.A,{className:(0,k.cn)("size-4 transition-transform",f&&"rotate-180"),"aria-hidden":"true"})]}),(0,r.jsx)(o.N_,{href:"/privacy#cookies-and-tracking-technologies",className:"inline-flex min-h-11 items-center px-1 text-xs font-medium text-foreground underline-offset-4 hover:underline sm:min-h-8",children:m("learnMore")}),f&&(0,r.jsx)(N.$,{type:"button",variant:"secondary",size:"sm",onClick:d,className:"ml-auto h-10 rounded-full px-4 sm:h-8",children:m("savePreferences")})]})]})})}function Y({title:e,description:t,checked:a,disabled:o=!1,onCheckedChange:i}){return(0,r.jsxs)("div",{className:(0,k.cn)("flex h-full flex-col justify-between gap-1.5 rounded-xl border border-border/40 bg-muted/30 p-3 transition-all",!o&&"hover:bg-muted/50 hover:border-border/60"),children:[(0,r.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,r.jsx)("span",{className:"font-semibold text-[13px]",children:e}),(0,r.jsx)(I.d,{checked:a,disabled:o,onCheckedChange:i,"aria-label":e,className:"relative z-10 after:absolute after:left-1/2 after:top-1/2 after:size-11 after:-translate-x-1/2 after:-translate-y-1/2 after:content-[''] md:scale-90 md:after:hidden"})]}),(0,r.jsx)("p",{className:"text-muted-foreground text-[11px] leading-relaxed sm:text-xs",children:t})]})}function V(){let e=(0,L.useContext)(_);if(!e)throw Error("useCookieConsent must be used within CookieConsentProvider");return e}function G(){return(0,L.useContext)(_)}},25744:(e,t,a)=>{a.d(t,{M4:()=>r,oV:()=>o});
1let r="gpc_hint",o="req_country"},65589:(e,t,a)=>{a.d(t,{$:()=>s});var r=a(92172),o=a(17291);let i=o.KR.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),n=RegExp(`\\b${i}\\b`,"g");function s(e){let t;if(!e||!e.includes(o.KR))return e;let a=[],i=0,s=0;for(n.lastIndex=0;null!==(t=n.exec(e));)t.index>i&&a.push(e.slice(i,t.index)),a.push((0,r.jsx)("span",{className:"brand-wordmark",children:t[0]},`brand-${s++}`)),i=t.index+t[0].length;return 0===a.length?e:(i<e.length&&a.push(e.slice(i)),(0,r.jsx)("span",{children:a}))}},66440:(e,t,a)=>{a.d(t,{d:()=>n});var r=a(92172);a(93216);var o=a(35203),i=a(96687);function n({className:e,...t}){return(0,r.jsx)(o.bL,{"data-slot":"switch",className:(0,i.cn)("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e),...t,children:(0,r.jsx)(o.zi,{"data-slot":"switch-thumb",className:(0,i.cn)("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}},68566:(e,t,a)=>{a.d(t,{RootIntlProvider:()=>p,G:()=>u});var r=a(92172),o=a(21656),i=a(93216),n=a(75684),s=a(85669);let l={common:JSON.parse('{"ok":"OK","cancel":"Cancel","save":"Save","delete":"Delete","edit":"Edit","close":"Close","loading":"Loading...","preparingWorkspace":"Astorie is preparing your workspace...","loadingSharedProject":"Loading shared project...","creatingProject":"Creating your new project...","loadingShowroom":"Loading Showroom...","loadingProjects":"Loading Projects...","error":"Error","success":"Success","or":"or","generate":"Generate","cost":"Cost","credits":"credits","insufficientCredits":"Insufficient credits","copyFailed":"Failed to copy","apply":"Apply","showMore":"Show more","showLess":"Show less","clear":"Clear","skip":"Skip","submit":"Submit","submitting":"Submitting...","toast":{"logoutFailed":"Failed to logout. Please try again.","workspaceAccessLost":"Youâre no longer a member of that workspace. Please switch workspaces and try again.","workspaceAccessLostWithName":"Youâre no longer a member of the workspace â{workspace}â. Please switch workspaces and try again.","folderNotFound":"That folder no longer exists. Please select a folder and try again."},"cookieConsent":{"settingsLink":"Cookie settings","bannerTitle":"This website uses cookies","bannerDescription":"We use basic cookies to keep Astorie secure and remember preferences. You can also allow product analytics and full marketing tags.","bannerDescriptionOptOut":"Analytics and marketing tags are on by default in your region â you can turn them off here at any time. We also use basic cookies to keep Astorie secure and remember preferences.","learnMore":"Read more","acceptAll":"Use full","basicOnly":"Use basic","customize":"Customize","dialogTitle":"Cookie preferences","dialogDescription":"Basic cookies stay on. Product analytics is optional; Full also allows marketing and advertising tags.","savePreferences":"Save choice","categories":{"necessary":{"title":"Strictly necessary","description":"Required for authentication, security, payments, and core product flows."},"functional":{"title":"Functionality","description":"Remembers product preferences such as theme, language, and your most recent workspace. Included in Basic."},"analytics":{"title":"Basic analytics","description":"Product analytics for PostHog and performance measurement, used for long-term analysis and planning."},"marketing":{"title":"Full marketing","description":"Allows marketing and advertising tags we may run through Google Tag Manager."}}},"nps":{"shareExperience":"Share your experience","title":"How likely are you to recommend our product to a friend?","extremelyLikely":"Extremely likely","notAtAllLikely":"Not at all likely","youSelected":"You selected:","notLikely":"Not likely","neutral":"Neutral","veryLikely":"Very likely","careToShare":"Care to share more? (optional)","careToShareLowScore":"What went wrong? (required for 0-6)","placeholder":"What\'s the main reason for your score?","submitFeedback":"Submit feedback","selectScore":"Please select a score from 0-10","lowScoreCommentRequired":"For low scores (0-6), please tell us why so we can improve.","thankYou":"Thank y
1ou for your feedback! Your input is very important to us","submitFailed":"Submission failed, please try again"},"originalDownload":{"title":"Download video","description":"This video is watermarked. Members can download the original without a watermark.","downloadWatermarked":"Download (with watermark)","upgrade":"Upgrade to unlock original","fallbackNotice":"This video has no separate original; downloaded the current version."}}'),auth:JSON.parse('{"login":"Login","logout":"Logout","signup":"Sign Up","email":"Email","password":"Password","loginPage":{"welcomeTitle":"Welcome to <brand>Astorie</brand>","welcomeBack":"Sign in to continue in Astorie.","continueWithEmail":"Continue with Email","legalNotice":"By continuing, I acknowledge the <privacy>Privacy Policy</privacy> and agree to the <terms>Terms of Use</terms>. I also confirm that I am at least 18 years old.","emailLabel":"Email","emailPlaceholder":"[email protected]","passwordLabel":"Password","passwordPlaceholder":"Enter your password","forgotPassword":"Forgot password?","submit":"Login","submitting":"Logging in...","loginSuccess":"Login successful!","pendingApproval":"Your account is pending approval. Please wait for admin approval.","captchaDev":"Captcha disabled in development","newTo":"New to Astorie?","goSignup":"Sign up","session":{"expiredTitle":"Your session has expired","expiredDescription":"Your login session is no longer valid. Please sign in again.","revokedTitle":"Youâve been signed out","revokedDescription":"You may have signed in on another device, so this session was ended. Please sign in again."},"footer":{"agreePrefix":"By signing in, you agree to our"},"errors":{"missingFields":"Please enter both email and password","invalidEmail":"Please enter a valid email address","invalidCredentials":"Invalid email or password","unverifiedEmail":"Email not verified","accountLocked":"Too many login attempts","networkError":"Connection error","unknownError":"Login failed","genericProduction":"An unexpected error occurred. Please try again or contact support if the problem persists.","suggestions":{"fillAllFields":"Make sure all fields are filled in.","checkEmailFormat":"Check the email format (e.g., [email protected]).","checkCredentials":"Please check your email and password. If you forgot your password, use the \'Forgot Password\' link.","verifyEmail":"Please check your email for a verification link. You can also request a new verification email.","tooManyAttempts":"Please wait a few minutes before trying again. This is a security measure to protect your account.","pendingApproval":"Your account is pending approval. You will be notified once approved.","checkConnection":"Please check your internet connection and try again.","contactSupport":"An unexpected error occurred. Please try again or contact support if the problem persists."}}},"fedcm":{"verifyTitle":"Verify before continuing","verifyDescription":"Complete the CAPTCHA check to continue with Google.","submitting":"Signing you in..."},"footer":{"terms":"Terms of Service","and":"and","privacy":"Privacy Policy"},"captcha":{"dialogTitle":"Security check","dialogDescription":"Complete the check below to continue.","verifying":"Verifying...","verified":"Verified","failed":"Verification failed. Please try again.","retry":"Try again","unavailableTitle":"Security check unavailable","unavailableDescription":"We can\'t load the required Turnstile verification right now. Please try again later."},"signupPage":{"alreadyHaveAccount":"Already have an account?","goLogin":"Login","createAccount":"Create account","continueWith":"Continue with {provider}","continueWithEmail":"Continue with Email","footer":{"agreePrefix":"By creating an account, you agree to our"},"referral":{"label":"Referral Code","hint":"Enter a referral code to earn extra credits when you sign up","placeholder":"Referral Code","tooShort":"Referral code must be exactly 8 characters long","validating":"Validating referral code...","valid":"Referral code {code} is valid!"}},"signupForm":{"emailLabel":"Email","emailLocalPlaceholder":"yourname","emailLocalRequired":"Please enter the part before @ in your email address.","emailDomainAriaLabel":"Email domain","emailDomainNotAllowed":"That email domain is not allowed for sign-up. Please choose another domain from the list.","emailPlaceholder":"[email protected]","emailExists":"This email already exists, please log in instead.","emailAlreadyRegistered":"This email is already registered. Please log in instead.","emailNotVerifiedResent":"This email is already registered but not verified yet. We\'ve resent the verification code.","optional":"(Optional)","referral":{"label":"Referral Code","hint":"Enter a referral code to earn bonus credits (more if your inviter is a Super Creator)","placeholder":"Enter referral code (8 characters)","tooShort":"Referral code must be exactly 8 characters long","validating":"Validating referral code...","valid":"Referral code {code} is valid!","appliedWithCode":"Referral code {code} applied successfully!","referralId":"Referral ID: {id}
1","invalid":"Invalid referral code","validateFailed":"Failed to validate referral code","fixErrorBeforeProceeding":"Please fix the referral code error before proceeding","invalidFormat":"Invalid referral code format","invalidFormatDetail":"Invalid referral code format. Please check the code and try again.","appliedAndAdded":"Referral code applied! Your account will receive referral-based credits after sign-up.","alreadyApproved":"Welcome! Your email was already approved.","applied":"Referral code applied! Your referral will be tracked after sign-up.","applyFailed":"Failed to apply referral code","applyErrorWithMsg":"Referral code error: {msg}","warningInfoNotSaved":"Warning: Referral information may not have been saved properly","warningIssueSavingInfo":"Warning: There was an issue saving your referral information"},"passwordLabel":"Password","passwordPlaceholder":"Enter your password","confirmPasswordLabel":"Confirm Password","confirmPasswordPlaceholder":"Confirm your password","passwordsNoMatch":"Passwords do not match","passwordMustMeetRequirements":"Password must meet all security requirements","passwordTooCommon":"This password is too common. Please choose a more unique and secure one.","passwordNotMeetRequirements":"Password does not meet the security requirements. Please check the requirements above.","passwordNotMeetRequirementsTypes":"Password does not meet the security requirements. Please ensure all character types are included.","emailNotApproved":"This email cannot be approved for sign-up right now. Please contact support if you believe this is an error.","verifyOwnership":"Please verify your email ownership","unableVerifyEmailProceed":"Unable to verify email status, proceeding with registration","otpSent":"Please check your email for the verification code.","createAccount":"Create account","creatingAccount":"Creating account...","captchaDev":"Captcha disabled in development","spamEmailBlocked":"This email domain is not allowed for registration. Please use a different email address.","somethingWrong":"Something went wrong. Please try again."},"passwordStrength":{"title":"Password strength:","valid":"Valid","invalid":"Invalid","allRequirements":"All requirements must be met","requirements":{"length":"At least 8 characters","lowercase":"Contains lowercase letter","uppercase":"Contains uppercase letter","number":"Contains number","special":"Contains special character ({chars})"}},"waitingList":{"welcome":"Welcome to <brand>Astorie</brand>","title":"Welcome to Astorie","status":{"title":"Waitlist Status","subtitle":"Welcome back! Here\'s your current status.","approved":"Approved","rejected":"Not Approved","pending":"Under Review"},"statusDesc":{"approved":"Congratulations! Your application has been approved. You should now have access to the platform.","rejected":"Your application was not approved at this time. Please contact support for more information.","pending":"Thank you for your interest in Astorie! We are reviewing your application and will get back to you soon."},"submittedOn":"Submitted on {date}","signOut":"Sign Out","signOutFailed":"Failed to sign out","signedOut":"Signed out successfully","emailLabel":"Email","emailRequired":"Email *","emailPlaceholder":"[email protected]","reasonLabel":"Spill the beans! What are you creating?","reasonShortLabel":"Share more details about yourself","reasonTip":"Pro-tip: Detailed applications often get reviewed faster \uD83D\uDE09","reasonPlaceholder":"Share a link to your portfolio, Instagram, or describe a dream project you\'re planning with Astorie. We\'re all ears! â¨","reasonShortPlaceholder":"Share a link to your portfolio or describe your project","join":"Join Waitlist","joining":"Joining Waitlist...","provideValidEmail":"Please provide a valid email address","provideEmail":"Please provide your email address","joinSuccess":"Successfully joined the waitlist!","joinSuccessWithCheckEmail":"Successfully joined the waitlist! Check your email for updates.","joinFailed":"Failed to join waitlist","somethingWrong":"Something went wrong. Please try again.","spamEmailBlocked":"This email domain is not allowed. Please use a different email address.","invali
1dDate":"Invalid date","createAccount":"Create Account","yourApplication":"Your Application","signIn":"Sign In","signUp":"Sign Up","cancel":"Cancel","notInListPrompt":"You\'re not currently on our early access list. You can join for updates, or sign up directly.","referral":{"wantToSkip":"Want extra rewards?","haveCode":"Have a referral code?","alreadyHaveCode":"Already have a referral code?","enterTitle":"Enter Referral Code","enterDesc":"Have a referral code? Enter it below to earn bonus credits when you sign up. You can also register directly without a code.","label":"Referral Code","enter8":"Enter 8-character code","tooShort":"Code must be exactly 8 characters","validating":"Validating referral code...","validatingShort":"Validating...","validReady":"Referral code is valid! Ready to use.","invalid":"Invalid referral code","validateFailed":"Failed to validate referral code","waitValidation":"Please wait for referral code validation to complete","validRedirect":"Referral code is valid! Redirecting to sign up...","useCode":"Use Referral Code"},"footer":{"agreePrefix":"By joining the waitlist, you agree to our","terms":"Terms of Service","and":"and","privacy":"Privacy Policy"}},"verifyOtp":{"pageTitle":"Verify Your Email","pageDescription":"We\'ve sent a 6-digit verification code to your email address","cardTitle":"Enter Verification Code","cardDescription":"Please enter the 6-digit verification code sent to {email}","codeLabel":"Verification Code","codePlaceholder":"Enter 6-digit code","verifyButton":"Verify Email","verifying":"Verifying...","didntReceive":"Didn\'t receive the code?","checkSpamFolder":"If you didn\'t receive the email, please check your spam folder.","resendButton":"Resend Code","sending":"Sending...","resendCountdown":"Resend in {countdown}s","captchaRequiredToResend":"Please complete the security check before resending the code.","emailRequired":"Email is required","invalidCode":"Please enter a valid 6-digit code","verifySuccess":"Email verified successfully!","referralTrackingFailed":"Account created but referral tracking failed","referralCodeNotApplied":"Account created but referral code may not have been applied","pendingApproval":"Your account is verified but pending approval. Please wait for admin approval."},"verifyOwnership":{"pageTitle":"Verify Email Ownership","pageDescription":"We need to verify that you own this email address","cardTitle":"Verify Email Ownership","cardDescription":"Please enter the 6-digit verification code sent to {email} to confirm you own this email address","codeLabel":"Verification Code","codePlaceholder":"Enter 6-digit code","verifyButton":"Verify Ownership","verifying":"Verifying...","didntReceive":"Didn\'t receive the code?","resendButton":"Resend Code","sending":"Sending...","resendCountdown":"Resend in {countdown}s","backToSignup":"Back to Sign Up","emailRequired":"Email is required","invalidCode":"Please enter a valid 6-digit code","verifySuccess":"Email ownership verified!","resendSuccess":"Verification code sent successfully!","resendFailed":"Unable to resend verification code","successTitle":"Email Ownership Verified","successDescription":"You have successfully verified ownership of {email}","accountExistsTitle":"Account Already Registered","accountExistsDescription":"This email address is already associated with an account. Please log in to access your account.","loginButton":"Log In to Your Account"},"accountBanned":"Account Banned","accountBannedDescription":"Your account has been banned due to violation of our terms of service. If you disagree with this decision, please contact <support_email>{email}</support_email>.","understood":"I Understand","forgotPassword":{"pageTitle":"Forgot password","pageDescription":"Reset your password","cardTitle":"Reset Your Password","cardDescription":"Enter your email and we\'ll send you a reset link.","emailLabel":"Email","emailPlaceholder":"[email protected]","sendButton":"Send reset email","sending":"Sending...","successTitle":"Check Your Email","successDescription":"Password reset instructions sent","successMessage":"If you registered using your email and password, you will receive a password reset email.","rateLimitLastAttempt":"â ï¸ This is your last password reset attempt for this hour. After this, you\'ll need to wait before trying again.","rateLimitWarning":"â ï¸ You have {remaining} password reset attempts remaining this hour.","rateLimitRemaining":"You have {remaining} password reset attempts remaining this hour.","rememberPassword":"Remember your password?","loginLink":"Login"},"updatePassword":{"pageTitle":"Update password","pageDescription":"Update your password","cardTitle":"Update password","cardDescription":"Enter your new password","newPasswordLabel":"New password","newPasswordPlaceholder":"Enter your new password","confirmPasswordLabel":"Confirm new password","confirmPasswordPlaceholder":"Confirm your new password","passwordsNoMatch":"Passwords do not match","saveButton":"Save new password","saving":"Saving...","verifying":"Verifying reset link...","errors":{"securityRequirements":"Password must meet all security requirements","passwordsNoMatch":"Passwords do not match","linkExpired":"This password reset link is invali
1d or has expired. Please request a new one.","passwordTooWeak":"This password is too common. Please choose a more unique and secure one.","passwordRequirementsNotMet":"Password does not meet the security requirements. Please check the requirements above.","passwordCharacterTypes":"Password does not meet the security requirements. Please ensure all character types are included.","sessionMissing":"Unable to verify your reset session in this browser. Please request a new password reset email and open it in the same browser where you requested it.","unableToUpdate":"Unable to update password. Please try again with a different password.","unexpectedError":"An unexpected error occurred. Please try again."}},"errorPage":{"title":"Sorry, something went wrong.","blockedEmailTitle":"Registration Not Allowed","blockedEmailDescription":"This email domain is not allowed for registration. Please use a different email address.","captchaRequiredTitle":"Captcha required","captchaRequiredDescription":"Please complete the CAPTCHA verification and try again.","flowStateMissingTitle":"Login link expired","flowStateMissingDescription":"This login link is no longer valid. Please start again.","flowStateMissingAction":"Back to login","backToLogin":"Back to login","codeError":"Error code: {code}","unspecified":"An unspecified error occurred.","genericError":"An unexpected error occurred. Please try again or contact support if the problem persists."},"oauthConsent":{"title":"An app at {host} wants to connect to Astorie","signedInAs":"Signed in as {email}","permissions":{"heading":"This will allow {host} to:","generate":"Generate images and videos with your account, spending your credits â or a workspace\'s credits when you generate in a workspace project","viewProjects":"See your projects and generations","createProjects":"Create projects, and add or regenerate content in your projects, including workspace projects","viewBalance":"See your credit balance and generation prices","cannotHeading":"It will not be able to:","cannotAccount":"See or change your password, email or account settings","cannotBilling":"Buy credits, change your plan or see payment details"},"callsItself":"It calls itself â{client}â. Astorie has not verified this name.","redirects":"After you allow, you will be sent back to {host}.","allow":"Allow","cancel":"Cancel","missing":"This sign-in link is missing its request. Start again from ChatGPT or Claude.","invali
1d":"This request has expired or is invalid. Start again from ChatGPT or Claude.","captchaHint":"One quick check before you connect.","refused":{"title":"This account can\'t connect an app right now","notEnabled":"Astorie for ChatGPT and Claude isn\'t available for this account yet.","restricted":"This account is restricted, so it cannot connect apps. If you think this is a mistake, contact Astorie support.","unverifiedEmail":"Verify the email address of this account ({email}) first, then start again from ChatGPT or Claude.","flagged":"This account needs a review before it can connect apps. Contact Astorie support and we will take a look.","back":"Back to {host}"},"notice":{"captchaFailed":"Verification failed. Please try again.","captchaUnavailable":"Verification is temporarily unavailable. Please try again shortly.","rateLimited":"Too many attempts from this network. Please try again later.","grantLimit":"You have connected apps too many times today. Please try again tomorrow."}}}'),legal:JSON.parse('{"gate":{"overlayTitle":"Action required","overlayHint":"To continue, accept Terms & Privacy in the bottom-right.","title":"Accept Terms & Privacy","description":"You must accept the Terms of Service and Privacy Policy to continue using Astorie.","termsPrefix":"I agree to the","termsLink":"Terms of Service","privacyPrefix":"I agree to the","privacyLink":"Privacy Policy","versionHint":"Current versions: Terms {termsVersion} \xb7 Privacy {privacyVersion}","selectAll":"Select all","acceptButton":"Accept & Continue","accepting":"Savingâ¦","retry":"Retry","errorGeneric":"Something went wrong. Please try again."}}'),errors:JSON.parse('{"notFound":"Page not found","notFoundDescription":"Sorry, we couldn\'t find the page you\'re looking for.","notFoundAction":"Go back home","projectAccess":{"title":"No access","personalDescription":"Not shared with your account.","workspaceDescription":"You need workspace access first.","workspaceMemberDescription":"You need permission for this project.","action":"Back to Projects"},"serverError":"Server error","unauthorized":"Unauthorized","generic":"An error occurred","genericTitle":"Error","UPSTREAM_API_ERRORTitle":"Generation Error","UPSTREAM_API_ERROR":"Internal error. Please check your input or try again in 5 minutes.","CONTENT_POLICY":"This generation could not be completed because it may not comply with our content policy. Please adjust your prompt or reference media and try again.","CONTENT_POLICY_REAL_PERSON":"This generation was declined because the reference media appears to contain a real person. This can also be triggered by highly photorealistic faces. Please try different reference media.","CONTENT_POLICYTitle":"Content policy","CONTENT_POLICY_REAL_PERSONTitle":"May contain a real person","referenceSlots":{"intro":"The check does not name which one. Any of these could be it:","singleIntro":"The reference this check looked at:","sourceIntro":"The source video of this generation:","imageFallback":"Reference image {n}","videoFallback":"Reference video {n}","audioFallback":"Reference audio {n}","sourceFallback":"Source video","more":"+{count} more"},"CONTENT_POLICY_COPYRIGHT":"This generation was declined because it may involve copyrighted material. Please remove references to copyrighted works and try again.","CONTENT_POLICY_COPYRIGHTTitle":"May involve copyrighted content","INPUT_DURATION_LIMIT":"The length of the connected reference video or audio is outside the range this model supports, either on its own or combined with the other clips. Please shorten or lengthen the clips and try again.","INPUT_DURATION_LIMITTitle":"Reference duration out of range","SUBMIT_OUTCOME_UNKNOWNTitle":"Generation not completed","SUBMIT_OUTCOME_UNKNOWN":"This generation timed out. Any credits charged for it are refunded in full. Please try again.","UPSTREAM_TIMEOUTTitle":"Generation timed out","UPSTREAM_TIMEOUT":"The provider timed out. Please try again.","UPSTREAM_UNREACHABLETitle":"Provider unreachable","UPSTREAM_UNREACHABLE":"The provider could not be reached while this generation was in progress. Please try again.","RATE_LIMITEDTitle":"Too many requests","RATE_LIMITED":"The service is busy. Please try again shortly.","UPSTREAM_SERVICE_FAILURETitle":"Generation failed","UPSTREAM_SERVICE_FAILURE":"The provider could not complete this generation. Please try again.","INVALID_INPUTTitle":"Input not supported","INVALID_INPUT":"One of the inputs is outside what this model supports. Please check the prompt and reference media and try again.","RESULT_SAVE_FAILEDTitle":"Result could not be saved","RESULT_SAVE_FAILED":"The generation finished but its result could not be saved. Please try again.","SEEDANCE_EDIT_MODE_REQUIREDTitle":"Use Edit mode","SEEDANCE_EDIT_MODE_REQUIRED":"Seedance read this prompt as a video-editing task, which Omni mode canât run. Switch to Edit mode, connect the video you want to edit, and try again.","SEEDANCE_EXTEND_MODE_REQUIREDTitle":"Use Extend mode","SEEDANCE_EXTEND_MODE_REQUIRED":"Seedance read this prompt as a video-extension task. Switch to Extend mode, or retry in Omni with the aspect ratio set to Auto.","MINIMAX_CALLBACK_URL_UNREACHABLETitle":"Callback verification failed","MINIMAX_CALLBACK_URL_UNREACHABLE":"Callback service is unreachable or timed out. Please try again later.","MINIMAX_CALLBACK_URL_BAD_STATUSTitle":"Callback verification failed","MINIMAX_CALLBACK_URL_BAD_STATUS":"Callback service responded with an error. Please try again later.","MINIMAX_CALLBACK_URL_BAD_RESPONSETitle":"Callback verification failed","MINIMAX_CALLBACK_URL_BAD_RESPONSE":"Callback service responded unexpectedly. Please try again later.","HAPPYHORSE_PROMPT_TOO_LONGTitle":"Prompt Too Long","HAPPYHORSE_PROMPT_TOO_LONG":"HappyHorse prompts support up to 5000 non-Chinese characters or 2500 Chinese characters. Please shorten your prompt and try again.","HAPPYHORSE_IMAGE_TOO_LARGETitle":"Image Too Large","HAPPYHORSE_IMAGE_TOO_LARGE":"HappyHorse reference images must be 10MB or smaller. Please upload a smaller image and try again.","SLOTS_EXHAUSTED_FREETitle":"All generation slots in use","SLOTS_EXHAUSTED_FREE":"The free plan runs 1 video and 1 image generation at a time. Wait for the current one to finish, or upgrade to run more at once.","SLOTS_QUEUE_FULLTitle":"Queue is full","SLOTS_QUEUE_FULL":"You have {count} {media} generations queued â the maximum. Wait for one to start, or cancel a queued generation to make room.","SLOTS_GATE_UNAVAILABLETitle":"Temporarily unavailable","SLOTS_GATE_UNAVAILABLE":"The generation service is briefly unavailable. Nothing was submitted â please try again.","SLOTS_QUEUE_FULL_UNLIMITEDTitle":"Unlimited queue is full","SLOTS_QUEUE_FULL_UNLIMITED":"Unlimited generations run {cap} at a time on your plan, with up to {count} waiting in line. Wait for one to finish, cancel a queued generation, or switch this generation to credits to start it now.","SLOTS_QUEUE_FULL_UNLIMITEDUpgradeHint":"Ultimate runs {cap} unlimited generations at once.","SLOTS_UNLIMITED_UNAVAILABLETitle":"Unlimited unavailable","SLOTS_UNLIMITED_UNAVAILABLE":"Unlimited generations aren\'t available on your current plan. Nothing was submitted â switch this generation to credits, or upgrade your plan.","save":{"dataTooLarge":"Project is too large. Please save manually before closing the page.","dataTooLargeTitle":"Save Error","snapshotFailed":"Failed to capture project snapshot","snapshotFailedTitle":"Snapshot Error","failed":"Failed to save project","failedTitle":"Save Error","conflict":"Another editor changed this canvas at the same time. Your change is kept here and will be saved again automatically.","conflictTitle":"Saved with a conflict","success":"Project saved","successTitle":"Saved","nodeNotSavedTitle":"Couldn\'t save your node","nodeNotSaved":"This
1node isn\'t saved to your project yet, so generation didn\'t start. Reload the page and try again.","nodeNotSavedNoAccessTitle":"No edit access","nodeNotSavedNoAccess":"You can view this project but not change it, so generation didn\'t start. Ask the project owner for edit access.","nodeMissingTitle":"Node not found","nodeMissing":"This node is no longer on the canvas, so generation didn\'t start."},"batch":{"selectOneGroup":"Please select a single group to batch run.","selectOneGroupTitle":"Select one group","noRunnableNodes":"No runnable nodes were found inside the selected group.","noRunnableNodesTitle":"No runnable nodes","completed":"{count} node(s) succeeded","completedTitle":"Batch run completed","completedWithErrors":"{successCount}/{total} succeeded, {failureCount} failed{failedNames}.","completedWithErrorsTitle":"Batch run finished with errors","failed":"An unexpected error occurred during batch run.","failedTitle":"Batch run failed"},"generation":{"partialDelivery":"{delivered} of {requested} images were generated. {credits} credits will be refunded.","partialDeliveryTitle":"Partial result","partialDeliveryNoRefund":"{delivered} of {requested} images were generated.","partialDeliveryNoRefundTitle":"Partial result","promptTooLong":"Prompt exceeds the {max}-character limit. The current prompt is {current} characters.","promptTooLongTitle":"Prompt Too Long","preparedPromptTooLong":"The prepared prompt exceeds the limit for this request. No credits were charged.","preparedPromptTooLongTitle":"Prompt Limit Exceeded","promptAssemblyFailed":"The prompt could not be prepared for generation. No credits were charged.","promptAssemblyFailedTitle":"Prompt Preparation Failed","cancelled":"Generation cancelled","cancelledTitle":"Cancelled","cancelRefunded":"Cancelled. {credits} credits were returned.","cancelRequested":"Cancellation requested. The job is being stopped; {credits} credits will be returned once the provider confirms.","cancelNotCharged":"Cancelled before it was charged. No credits were spent.","cancelRunsToCompletion":"This model can\'t be stopped once submitted. You won\'t be charged again; the result will appear when it finishes.","cancelUnconfirmed":"Some generations couldn\'t be cancelled. They may still finish and be charged.","cancelAlreadyDone":"This generation had already finished. Its result stands and no credits were returned.","timeout":"Generation timeout. Please try again.","timeoutTitle":"Timeout","failed":"Generation failed: {error}","failedTitle":"Generation Error","started":"Generation started. This may take a few minutes...","startedTitle":"Started"},"file":{"typeNotAccepted":"File type not accepted: .{extension}","typeNotAcceptedTitle":"Invalid File","uploadError":"Error uploading file","uploadErrorTitle":"Upload Error"},"node":{"noImage":"No image available to upscale","noImageTitle":"No Image","noVideo":"No video available to upscale","noVideoTitle":"No Video","noAudio":"No audio available","noAudioTitle":"No Audio","voiceDescriptionRequired":"Voice description is required","voiceDescriptionRequiredTitle":"Voice description required","previewVoiceLinesRequired":"Preview voice lines are required","previewVoiceLinesRequiredTitle":"Preview voice lines required","promptRequired":"Please enter a prompt before enhancing","promptRequiredTitle":"Prompt Required","promptUnreadable":"Your prompt could not be read. Please edit the prompt and try again.","promptUnreadableTitle":"Prompt Unreadable","projectMissing":"Project context missing. Reopen this canvas from your project.","projectMissingTitle":"Project Required","imageRequired":"Please generate or upload an image in the connected image node first","imageRequiredTitle":"Image Required","maxImagesExceeded":"Maximum {max} input images supported. Please reduce the number of connected image nodes.","maxImagesExceededTitle":"Too Many Images","referenceRequired":"Please provide a prompt or connect at least one reference image","referenceRequiredTitle":"Input Required"},"upscale":{"noSource":"No source available to upscale","noSourceTitle":"No Source","inProgress":"Upscale already in progress","inProgressTitle":"In Progress","limitExceeded":"Resolution would exceed limits after upscaling","limitExceededTitle":"Limit Exceeded","videoLimitExceeded":"Upscaled resolution ({upscaledWidth}x{upscaledHeight}) would exceed 4K limits ({maxWidth}x{maxHeight})","projectMissing":"Project context missing. Open the canvas from a project to use Upscale.","projectMissingTitle":"Project Required","failed":"Upscaling failed","failedTitle":"Upscale Error"},"midjourney":{"varyNoImage":"No image available to vary","varyNoImageTitle":"No Image","taskLinkageMissing":"Missing Midjourney task linkage. Please generate with Midjourney again.","taskLinkageMissingTitle":"Task Error","failed":"Midjourney generation failed","failedTitle":"Midjourney"}
1,"url":{"noUrlsFound":"No asset URLs found in selected nodes.","noUrlsFoundTitle":"No URLs found","copied":"Copied {count} URL(s) to clipboard","copiedTitle":"URLs copied","copyFailed":"Failed to copy URLs to clipboard.","copyFailedTitle":"Copy failed"},"task":{"markCompletedFailed":"Failed to mark task as completed","markCompletedFailedTitle":"Task Error","markFailedFailed":"Failed to mark task as failed","markFailedFailedTitle":"Task Error"},"billing":{"noCredits":"Upgrade your plan to continue.","noCreditsTitle":"No credits remaining","noCreditsAction":"Upgrade","workspaceMemberLimitExceeded":"You\'ve reached your credit limit for this workspace. Contact an admin to increase your member credit allocation.","workspaceMemberLimitExceededTitle":"Member credit limit reached"},"paste":{"focusedInput":"Click an empty spot on the canvas, then paste to add the image.","focusedInputTitle":"Image not pasted"},"chunkLoad":{"failed":"Some resources failed to load. Refresh to recover.","failedTitle":"Network changed","reloadAction":"Reload"},"deploymentUpdate":{"available":"New version detected. Refresh to use the latest features.","reloadAction":"Refresh now","refreshingAction":"Refreshing...","closeAction":"Close update notice"},"model":{"nanoBanana":{"timeout":"Generation timeout. Please try again.","timeoutTitle":"Nano Banana Pro","started":"Generation started. This may take a few minutes...","startedTitle":"Nano Banana Pro","success":"Generated {count} image(s)!","successTitle":"Nano Banana Pro","maxImages":"Nano Banana supports maximum {max} input images. Please reduce the number of connected image nodes.","maxImagesTitle":"Too Many Images","googleGeminiTimeout":"Google Gemini request timed out. The server is busy, please try again later.","googleGeminiTimeoutTitle":"Nano Banana Pro","googleGeminiTimeoutWithRefund":"Google Gemini timed out. Credits have been refunded.","googleGeminiTimeoutWithRefundTitle":"Nano Banana Pro","failedWithRefund":"Generation failed. Credits have been refunded.","failedWithRefundTitle":"Nano Banana Pro"},"nanoBanana2":{"maxImages":"Nano Banana 2 (CometAPI Gemini) supports up to {max} input images. Please reduce the number of connected image nodes.","maxImagesTitle":"Too Many Images","promptTooLong":"Nano Banana 2 prompts support up to {max} characters. Your current prompt is {current} characters.","promptTooLongTitle":"Prompt Too Long"},"nanoBananaPro":{"promptTooLong":"Nano Banana Pro prompts support up to {max} characters. Your current prompt is {current} characters.","promptTooLongTitle":"Prompt Too Long","promptRejected":"This provider rejected the Nano Banana Pro prompt. Current length: {current} characters. Please shorten or simplify it and try again.","promptRejectedTitle":"Prompt Rejected"},"gptImage2":{"promptTooLong":"GPT Image 2 prompts support up to {max} characters. Your current prompt is {current} characters.","promptTooLongTitle":"Prompt Too Long","referenceImageTooLarge":"Reference image {index} is {sizeMb} MB. GPT Image 2 accepts reference images up to {maxMb} MB. Please use a smaller image.","referenceImageTooLargeTitle":"Reference Image Too Large"},"gptImage25":{"tupleAdjusted":"Previous settings are not available on GPT Image 2.5. Adjusted: {changes}. Price: {credits} credits.","tupleAdjustedTitle":"Settings adjusted","tooManyReferences":"GPT Image 2.5 accepts up to 16 reference images. Remove {excess} to continue.","tooManyReferencesTitle":"Too many reference images","referenceUnresolved":"These references could not be found in your library: {names}. Remove them or re-add the assets to continue.","referenceUnresolvedTitle":"Reference not found"},"zImage":{"promptTooLong":"Z-Image prompts support up to {max} characters. Your current prompt is {current} characters.","promptTooLongTitle":"Prompt Too Long"},"runway":{"imageRequired":"{modelName} requires an image input. Please generate or upload an image in the connected image node first","imageRequiredTitle":"Image Required","alephVideoTooLarge":"Video must be less than 16MB","alephVideoTooLargeTitle":"Video Too Large"}
1,"vidu":{"1080pDuration":"1080P resolution does not support 10s duration. Please select 6s or use 768P.","1080pDurationTitle":"Duration Error"},"kling":{"videoResolutionInvalid":"The video resolution must be between 720px and 2160px. Please check your input video dimensions and try again.","videoResolutionInvalidTitle":"Invalid Video Resolution"}}}')},c={"zh-CN":async()=>{let[e,t,r,o]=await Promise.all([a.e(25402).then(a.t.bind(a,25402,19)),a.e(80025).then(a.t.bind(a,80025,19)),a.e(95586).then(a.t.bind(a,95586,19)),a.e(79296).then(a.t.bind(a,79296,19))]);return{common:e.default,auth:t.default,legal:r.default,errors:o.default}},es:async()=>{let[e,t,r,o]=await Promise.all([a.e(69120).then(a.t.bind(a,69120,19)),a.e(79607).then(a.t.bind(a,79607,19)),a.e(18392).then(a.t.bind(a,18392,19)),a.e(57618).then(a.t.bind(a,57618,19))]);return{common:e.default,auth:t.default,legal:r.default,errors:o.default}}},d=(0,i.createContext)({overlaysReady:!0,effectiveMessageLocale:"en"});function u(){return(0,i.useContext)(d)}function p({children:e,loadersOverride:t}){let a,u=(a=((0,o.usePathname)()??"/").split("/")[1]??"",s.IB.includes(a)?a:"en"),m=t??c,[g,h]=(0,i.useState)(!1),[f,y]=(0,i.useState)({locale:"en",messages:l}),[v,w]=(0,i.useState)("en"===u),[T,b]=(0,i.useState)(u),P=(0,i.useRef)(0);T!==u&&(b(u),w("en"===u||!m[u])),(0,i.useEffect)(()=>{h(!0)},[]),(0,i.useEffect)(()=>{let e=++P.current;if("en"===u||!m[u]){y({locale:"en",messages:l}),w(!0);return}w(!1);let t=m[u];(async()=>{let a=null;try{a=await t()}catch{try{a=await t()}catch{a=null}}P.current===e&&(a?y({locale:u,messages:a}):y({locale:"en",messages:l}),w(!0))})()},[u,m]),(0,i.useEffect)(()=>{"u">typeof document&&(document.documentElement.lang=u)},[u]);let k=(0,i.useMemo)(()=>({overlaysReady:g&&v&&T===u,effectiveMessageLocale:f.locale}),[g,v,T,u,f.locale]);return(0,r.jsx)(n.default,{locale:f.locale,timeZone:s.vp,messages:f.messages,children:(0,r.jsx)(d.Provider,{value:k,children:e})})}},75684:(e,t,a)=>{a.d(t,{default:()=>i});var r=a(92172),o=a(79885);function i({locale:e,timeZone:t,messages:a,children:n}){return(0,r.jsx)(o.default,{locale:e,timeZone:t,messages:a,onError:e=>{let t=e instanceof Error?e.message:String(e);t.includes("canvas.modelLabels.")||t.includes("canvas.modelCategories.")||console.error(e)},children:n})}}}]);
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.