(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[63185],{51619:function(e,n,t){var r={"./ar/common.json":[88584,88584],"./ar/navbar.json":[7653,7653],"./cn/common.json":[40475,40475],"./cn/navbar.json":[69512,69512],"./en/common.json":[90523,90523],"./en/navbar.json":[14580,14580],"./fr/common.json":[37388,37388],"./fr/navbar.json":[2852,2852],"./vi/common.json":[37794,37794],"./vi/navbar.json":[69329,69329]};function o(e){if(!t.o(r,e))return Promise.resolve().then(function(){var n=Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n});var n=r[e],o=n[0];return t.e(n[1]).then(function(){return t.t(o,19)})}o.keys=function(){return Object.keys(r)},o.id=51619,e.exports=o},57624:function(e,n,t){Promise.resolve().then(t.bind(t,6809)),Promise.resolve().then(t.bind(t,78356)),Promise.resolve().then(t.bind(t,36402)),Promise.resolve().then(t.bind(t,52077)),Promise.resolve().then(t.bind(t,73126)),Promise.resolve().then(t.bind(t,37685)),Promise.resolve().then(t.bind(t,93114)),Promise.resolve().then(t.bind(t,59708)),Promise.resolve().then(t.bind(t,39155)),Promise.resolve().then(t.bind(t,20063)),Promise.resolve().then(t.bind(t,67128)),Promise.resolve().then(t.bind(t,32528)),Promise.resolve().then(t.bind(t,92566)),Promise.resolve().then(t.bind(t,89902)),Promise.resolve().then(t.bind(t,73053)),Promise.resolve().then(t.bind(t,22643)),Promise.resolve().then(t.bind(t,8350)),Promise.resolve().then(t.bind(t,86291)),Promise.resolve().then(t.bind(t,95070)),Promise.resolve().then(t.bind(t,72608)),Promise.resolve().then(t.bind(t,95576)),Promise.resolve().then(t.bind(t,53588)),Promise.resolve().then(t.bind(t,84851)),Promise.resolve().then(t.bind(t,14616)),Promise.resolve().then(t.bind(t,53431)),Promise.resolve().then(t.bind(t,50290)),Promise.resolve().then(t.bind(t,53024)),Promise.resolve().then(t.bind(t,18675)),Promise.resolve().then(t.bind(t,19902)),Promise.resolve().then(t.bind(t,74303)),Promise.resolve().then(t.bind(t,90313)),Promise.resolve().then(t.bind(t,28548)),Promise.resolve().then(t.bind(t,16210)),Promise.resolve().then(t.bind(t,62145)),Promise.resolve().then(t.bind(t,42899)),Promise.resolve().then(t.bind(t,31691)),Promise.resolve().then(t.bind(t,64119)),Promise.resolve().then(t.bind(t,30938)),Promise.resolve().then(t.bind(t,85147)),Promise.resolve().then(t.bind(t,10207)),Promise.resolve().then(t.bind(t,52988)),Promise.resolve().then(t.bind(t,28314)),Promise.resolve().then(t.bind(t,77584)),Promise.resolve().then(t.bind(t,26156)),Promise.resolve().then(t.bind(t,71969)),Promise.resolve().then(t.bind(t,46387)),Promise.resolve().then(t.bind(t,18598)),Promise.resolve().then(t.bind(t,1696)),Promise.resolve().then(t.bind(t,40517)),Promise.resolve().then(t.bind(t,63386)),Promise.resolve().then(t.bind(t,98636)),Promise.resolve().then(t.bind(t,1252)),Promise.resolve().then(t.bind(t,21075)),Promise.resolve().then(t.bind(t,78783)),Promise.resolve().then(t.bind(t,77126)),Promise.resolve().then(t.bind(t,63489)),Promise.resolve().then(t.bind(t,63731)),Promise.resolve().then(t.bind(t,82156)),Promise.resolve().then(t.bind(t,20135)),Promise.resolve().then(t.bind(t,94873)),Promise.resolve().then(t.bind(t,80184)),Promise.resolve().then(t.bind(t,14438)),Promise.resolve().then(t.bind(t,7243)),Promise.resolve().then(t.bind(t,54031)),Promise.resolve().then(t.bind(t,95314)),Promise.resolve().then(t.bind(t,51758)),Promise.resolve().then(t.bind(t,90572)),Promise.resolve().then(t.bind(t,92499)),Promise.resolve().then(t.bind(t,58999)),Promise.resolve().then(t.bind(t,90397)),Promise.resolve().then(t.bind(t,30909)),Promise.resolve().then(t.bind(t,55316)),Promise.resolve().then(t.bind(t,13905)),Promise.resolve().then(t.bind(t,91038)),Promise.resolve().then(t.bind(t,92574)),Promise.resolve().then(t.bind(t,49160)),Promise.resolve().then(t.bind(t,41110)),Promise.resolve().then(t.bind(t,10280)),Promise.resolve().then(t.t.bind(t,932,23)),Promise.resolve().then(t.bind(t,97191)),Promise.resolve().then(t.bind(t,59784)),Promise.resolve().then(t.bind(t,26838)),Promise.resolve().then(t.bind(t,16326)),Promise.resolve().then(t.bind(t,74661)),Promise.resolve().then(t.bind(t,82744)),Promise.resolve().then(t.bind(t,14573)),Promise.resolve().then(t.bind(t,95129))},7243:function(e,n,t){"use strict";t.r(n),t.d(n,{confirmSignUp:function(){return h},resendSignUpCode:function(){return v},resetPassword:function(){return f},signInWithPassword:function(){return u},signOut:function(){return m},signUp:function(){return d},updatePassword:function(){return g}});var r=t(91727),o=t(52220),i=t(58751),a=t(35017),s=t(59138),l=t(27215),c=t(5660);let u=async e=>{let{username:n,password:t}=e;await (0,r.z)({username:n,password:t})},d=async e=>{let{username:n,password:t,firstName:r,lastName:i}=e;await (0,o.y)({username:n,password:t,options:{userAttributes:{email:n,given_name:r,family_name:i}}})},h=async e=>{let{username:n,confirmationCode:t}=e;await (0,i._)({username:n,confirmationCode:t})},v=async e=>{let{username:n}=e;await (0,a.T)({username:n})},m=async()=>{await (0,s.w)()},f=async e=>{let{username:n}=e;await (0,l.c)({username:n})},g=async e=>{let{username:n,confirmationCode:t,newPassword:r}=e;await (0,c.f)({username:n,confirmationCode:t,newPassword:r})}},54031:function(e,n,t){"use strict";t.r(n),t.d(n,{AuthProvider:function(){return h}});var r=t(57437),o=t(79122),i=t(51850),a=t(2265),s=t(10924),l=t(71926),c=t(30685),u=t(43286),d=t(49044);function h(e){let{children:n}=e,{state:t,setState:o}=(0,i.vA)({user:null,loading:!0}),u=(0,a.useCallback)(async()=>{try{let e=(await (0,s.y)()).tokens;if(e){let n=await (0,l.v)(),t=e.accessToken.toString();o({user:{...e,...n},loading:!1}),c.ZP.defaults.headers.common.Authorization="Bearer ".concat(t)}else o({user:null,loading:!1}),delete c.ZP.defaults.headers.common.Authorization}catch(e){console.error(e),o({user:null,loading:!1})}},[o]);(0,a.useEffect)(()=>{u()},[]);let h=t.user?"authenticated":"unauthenticated",v=t.loading?"loading":h,m=(0,a.useMemo)(()=>{var e,n,r,o,i,a,s;return{user:t.user?{...t.user,id:null===(e=t.user)||void 0===e?void 0:e.sub,accessToken:null===(r=t.user)||void 0===r?void 0:null===(n=r.accessToken)||void 0===n?void 0:n.toString(),displayName:"".concat(null===(o=t.user)||void 0===o?void 0:o.given_name," ").concat(null===(i=t.user)||void 0===i?void 0:i.family_name),role:null!==(s=null===(a=t.user)||void 0===a?void 0:a.role)&&void 0!==s?s:"admin"}:null,checkUserSession:u,loading:"loading"===v,authenticated:"authenticated"===v,unauthenticated:"unauthenticated"===v}},[u,t.user,v]);return(0,r.jsx)(d.V.Provider,{value:m,children:n})}o.V.configure({Auth:{Cognito:{userPoolId:u.CONFIG.amplify.userPoolId,userPoolClientId:u.CONFIG.amplify.userPoolWebClientId}}})},49044:function(e,n,t){"use strict";t.d(n,{V:function(){return r}});let r=(0,t(2265).createContext)(void 0)},95314:function(e,n,t){"use strict";t.r(n),t.d(n,{AuthProvider:function(){return c}});var r=t(57437),o=t(95074),i=t(2265),a=t(30685),s=t(43286),l=t(49044);function c(e){let{children:n}=e,{domain:t,clientId:a,callbackUrl:l}=s.CONFIG.auth0,c=(0,i.useCallback)(e=>{window.location.replace((null==e?void 0:e.returnTo)||window.location.pathname)},[]);return t&&a&&l?(0,r.jsx)(o.tw,{domain:t,clientId:a,authorizationParams:{redirect_uri:l},onRedirectCallback:c,children:(0,r.jsx)(u,{children:n})}):null}function u(e){let{children:n}=e,{user:t,isLoading:s,isAuthenticated:c,getAccessTokenSilently:u}=(0,o.D3)(),[d,h]=(0,i.useState)(null),v=(0,i.useCallback)(async()=>{try{if(c){let e=await u();h(e),a.ZP.defaults.headers.common.Authorization="Bearer ".concat(e)}else h(null),delete a.ZP.defaults.headers.common.Authorization}catch(e){console.error(e)}},[u,c]);(0,i.useEffect)(()=>{v()},[v]);let m=c?"authenticated":"unauthenticated",f=s?"loading":m,g=(0,i.useMemo)(()=>{var e;return{user:t?{...t,id:null==t?void 0:t.sub,accessToken:d,displayName:null==t?void 0:t.name,photoURL:null==t?void 0:t.picture,role:null!==(e=null==t?void 0:t.role)&&void 0!==e?e:"admin"}:null,loading:"loading"===f,authenticated:"authenticated"===f,unauthenticated:"unauthenticated"===f}},[d,f,t]);return(0,r.jsx)(l.V.Provider,{value:g,children:n})}},51758:function(e,n,t){"use strict";t.r(n),t.d(n,{sendPasswordResetEmail:function(){return h},signInWithGithub:function(){return l},signInWithGoogle:function(){return s},signInWithPassword:function(){return a},signInWithTwitter:function(){return c},signOut:function(){return d},signUp:function(){return u}});var r=t(5978),o=t(44752),i=t(8858);let a=async e=>{let{email:n,password:t}=e;try{await (0,o.e5)(i.Bp,n,t);let e=i.Bp.currentUser;if(!(null==e?void 0:e.emailVerified))throw Error("Email not verified!")}catch(e){throw console.error("Error during sign in with password:",e),e}},s=async()=>{let e=new o.hJ;await (0,o.rh)(i.Bp,e)},l=async()=>{let e=new o.GH;await (0,o.rh)(i.Bp,e)},c=async()=>{let e=new o.c4;await (0,o.rh)(i.Bp,e)},u=async e=>{let{email:n,password:t,firstName:a,lastName:s}=e;try{var l,c;let e=await (0,o.Xb)(i.Bp,n,t);await (0,o.w$)(e.user);let u=(0,r.JU)((0,r.hJ)(i.dT,"users"),null===(l=e.user)||void 0===l?void 0:l.uid);await (0,r.pl)(u,{uid:null===(c=e.user)||void 0===c?void 0:c.uid,email:n,displayName:"".concat(a," ").concat(s)})}catch(e){throw console.error("Error during sign up:",e),e}},d=async()=>{await (0,o.w7)(i.Bp)},h=async e=>{let{email:n}=e;await (0,o.LS)(i.Bp,n)}},90572:function(e,n,t){"use strict";t.r(n),t.d(n,{AuthProvider:function(){return d}});var r=t(57437),o=t(5978),i=t(44752),a=t(51850),s=t(2265),l=t(30685),c=t(8858),u=t(49044);function d(e){let{children:n}=e,{state:t,setState:d}=(0,a.vA)({user:null,loading:!0}),h=(0,s.useCallback)(async()=>{try{(0,i.Aj)(c.Bp,async e=>{if(e&&e.emailVerified){let n=(0,o.JU)(c.dT,"users",e.uid),t=(await (0,o.QT)(n)).data(),{accessToken:r}=e;d({user:{...e,...t},loading:!1}),l.ZP.defaults.headers.common.Authorization="Bearer ".concat(r)}else d({user:null,loading:!1}),delete l.ZP.defaults.headers.common.Authorization})}catch(e){console.error(e),d({user:null,loading:!1})}},[d]);(0,s.useEffect)(()=>{h()},[]);let v=t.user?"authenticated":"unauthenticated",m=t.loading?"loading":v,f=(0,s.useMemo)(()=>{var e,n,r,o,i,a;return{user:t.user?{...t.user,id:null===(e=t.user)||void 0===e?void 0:e.uid,accessToken:null===(n=t.user)||void 0===n?void 0:n.accessToken,displayName:null===(r=t.user)||void 0===r?void 0:r.displayName,photoURL:null===(o=t.user)||void 0===o?void 0:o.photoURL,role:null!==(a=null===(i=t.user)||void 0===i?void 0:i.role)&&void 0!==a?a:"admin"}:null,checkUserSession:h,loading:"loading"===m,authenticated:"authenticated"===m,unauthenticated:"unauthenticated"===m}},[h,t.user,m]);return(0,r.jsx)(u.V.Provider,{value:f,children:n})}},92499:function(e,n,t){"use strict";t.r(n),t.d(n,{signInWithPassword:function(){return a},signOut:function(){return l},signUp:function(){return s}});var r=t(30685),o=t(98515),i=t(36435);let a=async e=>{let{email:n,password:t}=e;try{let{accessToken:e}=(await r.ZP.post(r.Hv.auth.signIn,{email:n,password:t})).data;if(!e)throw Error("Access token not found in response");(0,o.KY)(e)}catch(e){throw console.error("Error during sign in:",e),e}},s=async e=>{let{email:n,password:t,firstName:o,lastName:a}=e;try{let{accessToken:e}=(await r.ZP.post(r.Hv.auth.signUp,{email:n,password:t,firstName:o,lastName:a})).data;if(!e)throw Error("Access token not found in response");sessionStorage.setItem(i.z,e)}catch(e){throw console.error("Error during sign up:",e),e}},l=async()=>{try{await (0,o.KY)(null)}catch(e){throw console.error("Error during sign out:",e),e}}},58999:function(e,n,t){"use strict";t.r(n),t.d(n,{AuthProvider:function(){return u}});var r=t(57437),o=t(51850),i=t(2265),a=t(30685),s=t(36435),l=t(49044),c=t(98515);function u(e){let{children:n}=e,{state:t,setState:u}=(0,o.vA)({user:null,loading:!0}),d=(0,i.useCallback)(async()=>{try{let e=sessionStorage.getItem(s.z);if(e&&(0,c.wu)(e)){(0,c.KY)(e);let{user:n}=(await a.ZP.get(a.Hv.auth.me)).data;u({user:{...n,accessToken:e},loading:!1})}else u({user:null,loading:!1})}catch(e){console.error(e),u({user:null,loading:!1})}},[u]);(0,i.useEffect)(()=>{d()},[]);let h=t.user?"authenticated":"unauthenticated",v=t.loading?"loading":h,m=(0,i.useMemo)(()=>{var e,n;return{user:t.user?{...t.user,role:null!==(n=null===(e=t.user)||void 0===e?void 0:e.role)&&void 0!==n?n:"admin"}:null,checkUserSession:d,loading:"loading"===v,authenticated:"authenticated"===v,unauthenticated:"unauthenticated"===v}},[d,t.user,v]);return(0,r.jsx)(l.V.Provider,{value:m,children:n})}},36435:function(e,n,t){"use strict";t.d(n,{z:function(){return r}});let r="jwt_access_token"},98515:function(e,n,t){"use strict";t.d(n,{KY:function(){return l},wu:function(){return s}});var r=t(96997),o=t(30685),i=t(36435);function a(e){try{if(!e)return null;let n=e.split(".");if(n.length<2)throw Error("Invalid token!");let t=n[1].replace(/-/g,"+").replace(/_/g,"/");return JSON.parse(atob(t))}catch(e){throw console.error("Error decoding token:",e),e}}function s(e){if(!e)return!1;try{let n=a(e);if(!n||!("exp"in n))return!1;let t=Date.now()/1e3;return n.exp>t}catch(e){return console.error("Error during token validation:",e),!1}}async function l(e){try{if(e){sessionStorage.setItem(i.z,e),o.ZP.defaults.headers.common.Authorization="Bearer ".concat(e);let n=a(e);if(n&&"exp"in n)!function(e){let n=Date.now();setTimeout(()=>{try{alert("Token expired!"),sessionStorage.removeItem(i.z),window.location.href=r.H.auth.jwt.signIn}catch(e){throw console.error("Error during token expiration:",e),e}},1e3*e-n)}(n.exp);else throw Error("Invalid access token!")}else sessionStorage.removeItem(i.z),delete o.ZP.defaults.headers.common.Authorization}catch(e){throw console.error("Error during set session:",e),e}}},90397:function(e,n,t){"use strict";t.r(n),t.d(n,{resetPassword:function(){return l},signInWithPassword:function(){return i},signOut:function(){return s},signUp:function(){return a},updatePassword:function(){return c}});var r=t(96997),o=t(877);let i=async e=>{let{email:n,password:t}=e,{data:r,error:i}=await o.O.auth.signInWithPassword({email:n,password:t});if(i)throw console.error(i),i;return{data:r,error:i}},a=async e=>{var n,t;let{email:i,password:a,firstName:s,lastName:l}=e,{data:c,error:u}=await o.O.auth.signUp({email:i,password:a,options:{emailRedirectTo:"".concat(window.location.origin).concat(r.H.dashboard.root),data:{display_name:"".concat(s," ").concat(l)}}});if(u)throw console.error(u),u;if(!(null==c?void 0:null===(t=c.user)||void 0===t?void 0:null===(n=t.identities)||void 0===n?void 0:n.length))throw Error("This user already exists");return{data:c,error:u}},s=async()=>{let{error:e}=await o.O.auth.signOut();if(e)throw console.error(e),e;return{error:e}},l=async e=>{let{email:n}=e,{data:t,error:i}=await o.O.auth.resetPasswordForEmail(n,{redirectTo:"".concat(window.location.origin).concat(r.H.auth.supabase.updatePassword)});if(i)throw console.error(i),i;return{data:t,error:i}},c=async e=>{let{password:n}=e,{data:t,error:r}=await o.O.auth.updateUser({password:n});if(r)throw console.error(r),r;return{data:t,error:r}}},30909:function(e,n,t){"use strict";t.r(n),t.d(n,{AuthProvider:function(){return c}});var r=t(57437),o=t(51850),i=t(2265),a=t(30685),s=t(877),l=t(49044);function c(e){let{children:n}=e,{state:t,setState:c}=(0,o.vA)({user:null,loading:!0}),u=(0,i.useCallback)(async()=>{try{let{data:{session:e},error:n}=await s.O.auth.getSession();if(n)throw c({user:null,loading:!1}),console.error(n),n;if(e){let n=null==e?void 0:e.access_token;c({user:{...e,...null==e?void 0:e.user},loading:!1}),a.ZP.defaults.headers.common.Authorization="Bearer ".concat(n)}else c({user:null,loading:!1}),delete a.ZP.defaults.headers.common.Authorization}catch(e){console.error(e),c({user:null,loading:!1})}},[c]);(0,i.useEffect)(()=>{u()},[]);let d=t.user?"authenticated":"unauthenticated",h=t.loading?"loading":d,v=(0,i.useMemo)(()=>{var e,n,r,o,i;return{user:t.user?{...t.user,id:null===(e=t.user)||void 0===e?void 0:e.id,accessToken:null===(n=t.user)||void 0===n?void 0:n.access_token,displayName:"".concat(null===(r=t.user)||void 0===r?void 0:r.user_metadata.display_name),role:null!==(i=null===(o=t.user)||void 0===o?void 0:o.role)&&void 0!==i?i:"admin"}:null,checkUserSession:u,loading:"loading"===h,authenticated:"authenticated"===h,unauthenticated:"unauthenticated"===h}},[u,t.user,h]);return(0,r.jsx)(l.V.Provider,{value:v,children:n})}},55316:function(e,n,t){"use strict";t.d(n,{MotionLazy:function(){return a}});var r=t(57437),o=t(50278);let i=async()=>Promise.all([t.e(52596),t.e(69971)]).then(t.bind(t,69971)).then(e=>e.default);function a(e){let{children:n}=e;return(0,r.jsx)(o.X,{strict:!0,features:i,children:n})}},24282:function(e,n,t){"use strict";t.d(n,{a:function(){return o.LoadingScreen},c:function(){return r.SplashScreen}});var r=t(87766),o=t(81305)},81305:function(e,n,t){"use strict";t.r(n),t.d(n,{LoadingScreen:function(){return s}});var r=t(57437),o=t(1866),i=t(16210),a=t(5186);function s(e){let{portal:n,sx:t,...i}=e,s=(0,r.jsx)(l,{sx:t,...i,children:(0,r.jsx)(a.Z,{color:"inherit",sx:{width:1,maxWidth:360}})});return n?(0,r.jsx)(o.Z,{children:s}):s}let l=(0,i.default)("div")(e=>{let{theme:n}=e;return{flexGrow:1,width:"100%",display:"flex",minHeight:"100%",alignItems:"center",justifyContent:"center",paddingLeft:n.spacing(5),paddingRight:n.spacing(5)}})},87766:function(e,n,t){"use strict";t.r(n),t.d(n,{SplashScreen:function(){return s}});var r=t(57437),o=t(1866),i=t(16210),a=t(22399);function s(e){let{portal:n=!0,sx:t,...i}=e,s=(0,r.jsx)("div",{style:{overflow:"hidden"},children:(0,r.jsx)(l,{sx:t,...i,children:(0,r.jsx)(a.xr,{})})});return n?(0,r.jsx)(o.Z,{children:s}):s}let l=(0,i.default)("div")(e=>{let{theme:n}=e;return{right:0,bottom:0,zIndex:9998,width:"100%",height:"100%",display:"flex",position:"fixed",alignItems:"center",justifyContent:"center",backgroundColor:n.vars.palette.background.default}})},13905:function(e,n,t){"use strict";t.r(n),t.d(n,{ProgressBar:function(){return u}});var r=t(57437);t(1710);var o=t(71318),i=t.n(o),a=t(2265),s=t(75213);let l=e=>{e.currentTarget.href!==window.location.href&&i().start()},c=()=>{Array.from(document.querySelectorAll("a[href]")).filter(e=>{let n=e.getAttribute("rel"),t=e.getAttribute("href"),r=e.getAttribute("target");return(null==t?void 0:t.startsWith("/"))&&"_blank"!==r&&"noopener"!==n}).forEach(e=>e.addEventListener("click",l))};function u(){return(0,a.useEffect)(()=>{i().configure({showSpinner:!1});let e=new MutationObserver(c);return e.observe(document,{childList:!0,subtree:!0}),window.history.pushState=new Proxy(window.history.pushState,{apply:(e,n,t)=>(i().done(),e.apply(n,t))}),()=>{e.disconnect(),document.querySelectorAll("a[href]").forEach(e=>e.removeEventListener("click",l))}},[]),(0,r.jsx)(a.Suspense,{fallback:null,children:(0,r.jsx)(d,{})})}function d(){let e=(0,s.tv)(),n=(0,s.jD)(),t=(0,s.lr)();return(0,a.useEffect)(()=>{i().done()},[n,e,t]),null}},43030:function(e,n,t){"use strict";t.d(n,{Am:function(){return r.toast}});var r=t(14438);t(10280)},10280:function(e,n,t){"use strict";t.r(n),t.d(n,{Snackbar:function(){return h}});var r=t(57437),o=t(1866),i=t(54400),a=t(14438),s=t(27509),l=t(16210),c=t(53986);let u={root:(0,c.R)("snackbar__root"),toast:(0,c.R)("snackbar__toast"),title:(0,c.R)("snackbar__title"),icon:(0,c.R)("snackbar__icon"),iconSvg:(0,c.R)("snackbar__icon__svg"),content:(0,c.R)("snackbar__content"),description:(0,c.R)("snackbar__description"),actionButton:(0,c.R)("snackbar__action__button"),cancelButton:(0,c.R)("snackbar__cancel__button"),closeButton:(0,c.R)("snackbar__close_button"),loadingIcon:(0,c.R)("snackbar__loading_icon"),default:(0,c.R)("snackbar__default"),error:(0,c.R)("snackbar__error"),success:(0,c.R)("snackbar__success"),warning:(0,c.R)("snackbar__warning"),info:(0,c.R)("snackbar__info"),loader:"sonner-loader",loaderVisible:'&[data-visible="true"]',closeBtnVisible:'[data-close-button="true"]'},d=(0,l.default)(a.Toaster)(e=>{let{theme:n}=e,t={toastDefault:{padding:n.spacing(1,1,1,1.5),boxShadow:n.vars.customShadows.z8,color:n.vars.palette.background.paper,backgroundColor:n.vars.palette.text.primary},toastColor:{padding:n.spacing(.5,1,.5,.5),boxShadow:n.vars.customShadows.z8,color:n.vars.palette.text.primary,backgroundColor:n.vars.palette.background.paper},toastLoader:{padding:n.spacing(.5,1,.5,.5),boxShadow:n.vars.customShadows.z8,color:n.vars.palette.text.primary,backgroundColor:n.vars.palette.background.paper}},r={top:0,left:0,width:"100%",height:"100%",display:"none",transform:"none",overflow:"hidden",alignItems:"center",position:"relative",borderRadius:"inherit",justifyContent:"center",background:n.vars.palette.background.neutral,["& .".concat(u.loadingIcon)]:{zIndex:9,width:24,height:24,borderRadius:"50%",animation:"rotate 3s infinite linear",background:"conic-gradient(transparent, ".concat((0,s.jr)(n.vars.palette.text.disabledChannel,.64),")")},[u.loaderVisible]:{display:"flex"}};return{width:300,["& .".concat(u.toast)]:{gap:12,width:"100%",minHeight:52,display:"flex",borderRadius:12,alignItems:"center"},["& .".concat(u.content)]:{gap:0,flex:"1 1 auto"},["& .".concat(u.title)]:{fontSize:n.typography.subtitle2.fontSize},["& .".concat(u.description)]:{...n.typography.caption,opacity:.64},["& .".concat(u.actionButton)]:{},["& .".concat(u.cancelButton)]:{},["& .".concat(u.closeButton)]:{top:0,right:0,left:"auto",color:"currentColor",backgroundColor:"transparent",transform:"translate(-6px, 6px)",borderColor:(0,s.jr)(n.vars.palette.grey["500Channel"],.16),transition:n.transitions.create(["background-color","border-color"]),"&:hover":{borderColor:(0,s.jr)(n.vars.palette.grey["500Channel"],.24),backgroundColor:(0,s.jr)(n.vars.palette.grey["500Channel"],.08)}},["& .".concat(u.icon)]:{margin:0,width:48,height:48,alignItems:"center",borderRadius:"inherit",justifyContent:"center",alignSelf:"flex-start",["& .".concat(u.iconSvg)]:{width:24,height:24,fontSize:0}},"@keyframes rotate":{to:{transform:"rotate(1turn)"}},["& .".concat(u.default)]:{...t.toastDefault,["&:has(".concat(u.closeBtnVisible,")")]:{["& .".concat(u.content)]:{paddingRight:32}},["&:has(.".concat(u.loader,")")]:t.toastLoader,["&:has(.".concat(u.loader,")")]:t.toastLoader,["& .".concat(u.loader)]:r},["& .".concat(u.error)]:{...t.toastColor,["& .".concat(u.icon)]:{color:n.vars.palette.error.main,backgroundColor:(0,s.jr)(n.vars.palette.error.mainChannel,.08)}},["& .".concat(u.success)]:{...t.toastColor,["& .".concat(u.icon)]:{color:n.vars.palette.success.main,backgroundColor:(0,s.jr)(n.vars.palette.success.mainChannel,.08)}},["& .".concat(u.warning)]:{...t.toastColor,["& .".concat(u.icon)]:{color:n.vars.palette.warning.main,backgroundColor:(0,s.jr)(n.vars.palette.warning.mainChannel,.08)}},["& .".concat(u.info)]:{...t.toastColor,["& .".concat(u.icon)]:{color:n.vars.palette.info.main,backgroundColor:(0,s.jr)(n.vars.palette.info.mainChannel,.08)}}}});function h(){return(0,r.jsx)(o.Z,{children:(0,r.jsx)(d,{expand:!0,gap:12,closeButton:!0,offset:16,visibleToasts:4,position:"top-right",className:u.root,toastOptions:{unstyled:!0,classNames:{toast:u.toast,icon:u.icon,content:u.content,title:u.title,description:u.description,actionButton:u.actionButton,cancelButton:u.cancelButton,closeButton:u.closeButton,default:u.default,info:u.info,error:u.error,success:u.success,warning:u.warning}},icons:{loading:(0,r.jsx)("span",{className:u.loadingIcon}),info:(0,r.jsx)(i.I,{className:u.iconSvg,icon:"solar:info-circle-bold"}),success:(0,r.jsx)(i.I,{className:u.iconSvg,icon:"solar:check-circle-bold"}),warning:(0,r.jsx)(i.I,{className:u.iconSvg,icon:"solar:danger-triangle-bold"}),error:(0,r.jsx)(i.I,{className:u.iconSvg,icon:"solar:danger-bold"})}})})}},8858:function(e,n,t){"use strict";t.d(n,{Bp:function(){return c},dT:function(){return u}});var r=t(44752),o=t(738),i=t(5978),a=t(43286);let s="firebase"===a.CONFIG.auth.method,l=s?(0,o.ZF)(a.CONFIG.firebase):{},c=s?(0,r.v0)(l):{},u=s?(0,i.ad)(l):{}},877:function(e,n,t){"use strict";t.d(n,{O:function(){return l}});var r=t(93777),o=t(43286);let i="supabase"===o.CONFIG.auth.method,a=o.CONFIG.supabase.url,s=o.CONFIG.supabase.key,l=i?(0,r.eI)(a,s):{}},97191:function(e,n,t){"use strict";t.r(n),t.d(n,{allLangs:function(){return v}});var r=t(9045),o=t(56338),i=t(26743),a=t(82592),s=t(35508),l=t(9807),c=t(17321),u=t(86674),d=t(25514),h=t(95959);let v=[{value:"en",label:"English",countryCode:"GB",adapterLocale:"en",numberFormat:{code:"en-US",currency:"USD"},systemValue:{components:{...o._.components,...l._.components}}},{value:"fr",label:"French",countryCode:"FR",adapterLocale:"fr",numberFormat:{code:"fr-Fr",currency:"EUR"},systemValue:{components:{...r.gQ.components,...i.g.components,...c.g.components}}},{value:"vi",label:"Vietnamese",countryCode:"VN",adapterLocale:"vi",numberFormat:{code:"vi-VN",currency:"VND"},systemValue:{components:{...r.Iv.components,...a.I.components,...u.I.components}}},{value:"cn",label:"Chinese",countryCode:"CN",adapterLocale:"zh-cn",numberFormat:{code:"zh-CN",currency:"CNY"},systemValue:{components:{...r.U1.components,...s.U.components,...d.U.components}}},{value:"ar",label:"Arabic",countryCode:"SA",adapterLocale:"ar-sa",numberFormat:{code:"ar",currency:"AED"},systemValue:{components:{...r.gP.components,...h.S.components}}}]},59784:function(e,n,t){"use strict";let r;t.r(n),t.d(n,{I18nProvider:function(){return m}});var o=t(57437),i=t(46550),a=t(2265),s=t(27509),l=t(740),c=t(69427),u=t(43949),d=t(43286),h=t(73051);d.CONFIG.isStaticExport&&(r=(0,s.cF)("i18nextLng",h.A9));let v=d.CONFIG.isStaticExport?{...(0,h.Lo)(r),detection:{caches:["localStorage"]}}:{...(0,h.Lo)(),detection:{caches:["cookie"]}};function m(e){let{lang:n,children:t}=e;return(0,a.useMemo)(()=>{n&&i.ZP.changeLanguage(n)},[]),(0,o.jsx)(u.a3,{i18n:i.ZP,children:t})}i.ZP.use(c.Z).use(u.Db).use((0,l.Z)((e,n)=>t(51619)("./".concat(e,"/").concat(n,".json")))).init(v)},65229:function(e,n,t){"use strict";t.d(n,{Gk:function(){return r.allLangs},Tm:function(){return s},qM:function(){return o.useTranslate}});var r=t(97191),o=t(16326);t(59784);var i=t(73051);t(26838);var a=t(46550);function s(){var e;let n=null!==(e=a.ZP.resolvedLanguage)&&void 0!==e?e:i.A9,t=r.allLangs.find(e=>e.value===n);return{code:null==t?void 0:t.numberFormat.code,currency:null==t?void 0:t.numberFormat.currency}}},73051:function(e,n,t){"use strict";t.d(n,{A9:function(){return r},Lo:function(){return a},aq:function(){return s}});let r="en",o=["en","fr","vi","cn","ar"],i="common";function a(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i;return{lng:e,fallbackLng:r,ns:n,defaultNS:i,fallbackNS:i,supportedLngs:o}}let s={en:{success:"Language has been changed!",error:"Error changing language!",loading:"Loading..."},vi:{success:"Ng\xf4n ngữ đ\xe3 được thay đổi!",error:"Lỗi khi thay đổi ng\xf4n ngữ!",loading:"Đang tải..."},fr:{success:"La langue a \xe9t\xe9 chang\xe9e!",error:"Erreur lors du changement de langue!",loading:"Chargement..."},cn:{success:"语言已更改！",error:"更改语言时出错！",loading:"加载中..."},ar:{success:"تم تغيير اللغة!",error:"خطأ في تغيير اللغة!",loading:"جارٍ التحميل..."}}},26838:function(e,n,t){"use strict";t.r(n),t.d(n,{LocalizationProvider:function(){return c}});var r=t(57437);t(70939),t(29066),t(46346),t(44508),t(80337);var o=t(71096),i=t.n(o),a=t(3989),s=t(69250),l=t(16326);function c(e){let{children:n}=e,{currentLang:t}=(0,l.useTranslate)();return i().locale(t.adapterLocale),(0,r.jsx)(s._,{dateAdapter:a.y,adapterLocale:t.adapterLocale,children:n})}},16326:function(e,n,t){"use strict";t.r(n),t.d(n,{useTranslate:function(){return d}});var r=t(71096),o=t.n(r),i=t(2265),a=t(43949),s=t(75213),l=t(43030),c=t(97191),u=t(73051);function d(e){let n=(0,s.tv)(),{t,i18n:r}=(0,a.$G)(e),d=c.allLangs.filter(e=>e.value===u.A9)[0],h=c.allLangs.find(e=>e.value===r.resolvedLanguage),v=(0,i.useCallback)(async e=>{try{let t=r.changeLanguage(e),i=u.aq[e]||u.aq.en;l.Am.promise(t,{loading:i.loading,success:()=>i.success,error:i.error}),h&&o().locale(h.adapterLocale),n.refresh()}catch(e){console.error(e)}},[h,r,n]);return{t,i18n:r,onChangeLang:v,currentLang:null!=h?h:d}}},75213:function(e,n,t){"use strict";t.d(n,{jD:function(){return r.usePathname},tv:function(){return r.useRouter},lr:function(){return r.useSearchParams}});var r=t(99376)},74661:function(e,n,t){"use strict";t.r(n),t.d(n,{CheckoutContext:function(){return r}});let r=(0,t(2265).createContext)(void 0)},82744:function(e,n,t){"use strict";t.r(n),t.d(n,{CheckoutProvider:function(){return g}});var r=t(57437),o=t(99223),i=t(79294),a=t(27509),s=t(51850),l=t(2265),c=t(96997),u=t(75213),d=t(24282),h=t(74661);let v="app-checkout",m=["Cart","Billing & address","Payment"],f={items:[],subtotal:0,total:0,discount:0,shipping:0,billing:null,totalItems:0};function g(e){let{children:n}=e;return(0,r.jsx)(l.Suspense,{fallback:(0,r.jsx)(d.c,{}),children:(0,r.jsx)(b,{children:n})})}function b(e){let{children:n}=e,t=(0,u.tv)(),d=(0,u.jD)(),g=(0,u.lr)(),b=d.includes(c.H.product.checkout)?Number(g.get("step")):null,[p,P]=(0,l.useState)(!0),{state:w,setState:y,setField:k,resetState:C}=(0,s._)(v,f,{initializeWithValue:!1}),x=!(0,o.X)(w,f),_=b===m.length,j=(0,l.useCallback)(()=>{let e=w.items.reduce((e,n)=>e+n.quantity,0),n=w.items.reduce((e,n)=>e+n.quantity*n.price,0);k("subtotal",n),k("totalItems",e),k("total",n-w.discount+w.shipping)},[k,w.discount,w.items,w.shipping]);(0,l.useEffect)(()=>{(async()=>{try{P(!0),(0,a.cF)(v)&&j()}finally{P(!1)}})()},[j]);let S=(0,l.useCallback)((e,n)=>{let r={back:(null!=b?b:0)-1,next:(null!=b?b:0)+1,go:null!=n?n:0}[e],o=new URLSearchParams({step:"".concat(r)}).toString(),i=0===r?c.H.product.checkout:"".concat(c.H.product.checkout,"?").concat(o);t.push(i)},[b,t]),I=(0,l.useCallback)(e=>{let n=w.items.map(n=>n.id===e.id?{...n,colors:(0,i.G)(n.colors,e.colors),quantity:n.quantity+e.quantity}:n);n.some(n=>n.id===e.id)||n.push(e),k("items",n)},[k,w.items]),L=(0,l.useCallback)(e=>{k("items",w.items.filter(n=>n.id!==e))},[k,w.items]),E=(0,l.useCallback)((e,n)=>{k("items",w.items.map(t=>t.id===e?{...t,quantity:n}:t))},[k,w.items]),A=(0,l.useCallback)(e=>{k("billing",e)},[k]),N=(0,l.useCallback)(e=>{k("discount",e)},[k]),B=(0,l.useCallback)(e=>{k("shipping",e)},[k]),R=(0,l.useCallback)(()=>{_&&C(f)},[_,C]),O=(0,l.useMemo)(()=>({state:w,setState:y,setField:k,activeStep:b,onChangeStep:S,steps:m,canReset:x,loading:p,completed:_,onAddToCart:I,onResetCart:R,onApplyDiscount:N,onApplyShipping:B,onDeleteCartItem:L,onChangeItemQuantity:E,onCreateBillingAddress:A}),[w,p,x,k,y,_,b,R,I,S,N,B,L,E,A]);return(0,r.jsx)(h.CheckoutContext.Provider,{value:O,children:n})}},14573:function(e,n,t){"use strict";t.r(n),t.d(n,{useCheckoutContext:function(){return i}});var r=t(2265),o=t(74661);function i(){let e=(0,r.useContext)(o.CheckoutContext);if(!e)throw Error("useCheckoutContext must be use inside CheckoutProvider");return e}},95129:function(e,n,t){"use strict";t.r(n),t.d(n,{ThemeProvider:function(){return P}});var r=t(57437),o=t(93062),i=t(62145),a=t(65229),s=t(95943),l=t(77107),c=t(22380),u=t(95156),d=t(19369),h=t(71649),v=t(90553),m=t(48764),f=t(37695),g=t(97102);let b={colorSchemes:{light:{palette:d.DG.light,shadows:u.q.light,customShadows:f.k.light},dark:{palette:d.DG.dark,shadows:u.q.dark,customShadows:f.k.dark}},mixins:c.t,components:v.w,typography:m.c,shape:{borderRadius:8},direction:h.c.direction,cssVariables:h.c.cssVariables,defaultColorScheme:h.c.defaultMode};var p=t(9093);function P(e){let{themeOverrides:n,children:t,...c}=e,{currentLang:u}=(0,a.qM)(),d=(0,s.K$)(),h=function(){let{settingsState:e,themeOverrides:n={},localeComponents:t={}}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e?(0,g.G6)(b,e):b,o=e?(0,g.Gt)(v.w,e):{};return(0,l.Z)(r,o,t,n)}({settingsState:d.state,localeComponents:null==u?void 0:u.systemValue,themeOverrides:n});return(0,r.jsxs)(i.default,{disableTransitionOnChange:!0,theme:h,...c,children:[(0,r.jsx)(o.ZP,{}),(0,r.jsx)(p.u,{direction:d.state.direction,children:t})]})}},1710:function(){},932:function(){}},function(e){e.O(0,[16276,67573,24358,27638,46387,77928,87517,96663,28919,7849,42470,60334,16349,3357,58953,69125,57857,39155,71969,85147,64681,77584,28548,5089,94360,37685,55101,73941,76907,22078,85825,93777,69881,95074,92572,71401,2428,22399,16310,95943,92971,52117,1744],function(){return e(e.s=57624)}),_N_E=e.O()}]);