PageSourceSearch

https://app.grok4.app/_next/static/chunks/942-d5f03ca6ed6edabd.js

js grok4.app collected 2026-10-05 21:42:54 UTC 54,653 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[942],{6165:(e,t,r)=>{"use strict";r.d(t,{Avatar:()=>l,AvatarFallback:()=>o,AvatarImage:()=>i});var a=r(47808);r(71500);var n=r(83473),s=r(57169);function l(e){let{className:t,...r}=e;return(0,a.jsx)(n.bL,{"data-slot":"avatar",className:(0,s.cn)("relative flex size-8 shrink-0 overflow-hidden rounded-full",t),...r})}function i(e){let{className:t,...r}=e;return(0,a.jsx)(n._V,{"data-slot":"avatar-image",className:(0,s.cn)("aspect-square size-full",t),...r})}function o(e){let{className:t,...r}=e;return(0,a.jsx)(n.H4,{"data-slot":"avatar-fallback",className:(0,s.cn)("bg-muted flex size-full items-center justify-center rounded-full",t),...r})}},8997:(e,t,r)=>{"use strict";r.r(t),r.d(t,{ImageUploader:()=>p});var a=r(47808),n=r(71500),s=r(63948),l=r(8653),i=r(28306),o=r(78627),c=r(31963),d=r(67202),u=r(57169);let m=async e=>{var t,r;let a=new FormData;a.append("files",e);let n=await fetch("/api/storage/upload-image",{method:"POST",body:a});if(!n.ok)throw Error("Upload failed with status ".concat(n.status));let s=await n.json();if(0!==s.code||!(null==(r=s.data)||null==(t=r.urls)?void 0:t.length))throw Error(s.message||"Upload failed");return s.data.urls[0]};function p(e){let{allowMultiple:t=!1,maxImages:r=1,maxSizeMB:p=10,title:h,emptyHint:f,className:g,defaultPreviews:x,onChange:v}=e,b=(0,n.useRef)(null),j=(0,n.useRef)(!1),y=(0,n.useRef)(v),w=(0,n.useRef)(!1),N=(0,n.useRef)(null),_=(0,n.useRef)(0),[k,S]=(0,n.useState)(!1),[z,C]=(0,n.useState)(()=>(null==x?void 0:x.length)?x.map((e,t)=>({id:"preset-".concat(e,"-").concat(t),preview:e,url:e,status:"uploaded"})):[]),R=t?r:1,L=1024*p*1024;(0,n.useEffect)(()=>{y.current=v},[v]),(0,n.useEffect)(()=>{if(!j.current)return;if(w.current){w.current=!1;return}let e=x||[];C(t=>{let r=t.filter(e=>"uploaded"===e.status&&e.url).map(e=>e.url);return e.length===r.length&&e.every((e,t)=>e===r[t])?t:e.map((e,t)=>({id:"preset-".concat(e,"-").concat(t),preview:e,url:e,status:"uploaded"}))})},[x]),(0,n.useEffect)(()=>()=>{z.forEach(e=>{e.preview.startsWith("blob:")&&URL.revokeObjectURL(e.preview)})},[z]),(0,n.useEffect)(()=>{var e;if(!j.current){j.current=!0;return}w.current=!0,null==(e=y.current)||e.call(y,z.map(e=>{let{id:t,preview:r,url:a,status:n,size:s}=e;return{id:t,preview:r,url:a,status:n,size:s}}))},[z]);let E=e=>{e.forEach(e=>{let{id:t,file:r}=e,a="".concat(Date.now(),"-").concat(Math.random()),n=URL.createObjectURL(r);C(e=>e.map(e=>e.id!==t?e:(e.preview.startsWith("blob:")&&URL.revokeObjectURL(e.preview),{...e,preview:n,file:r,size:r.size,url:void 0,status:"uploading",uploadKey:a}))),m(r).then(e=>{C(r=>r.map(r=>r.id!==t||r.uploadKey!==a?r:(r.preview.startsWith("blob:")&&URL.revokeObjectURL(r.preview),{...r,preview:e,url:e,status:"uploaded",file:void 0})))}).catch(e=>{console.error("Upload failed:",e),c.oR.error((null==e?void 0:e.message)?"Upload failed: ".concat(e.message):"Upload failed"),C(e=>e.map(e=>e.id!==t||e.uploadKey!==a?e:{...e,status:"error"}))}).finally(()=>{b.current&&(b.current.value="")}
1)})},A=e=>{var t,r;let a=N.current;if(a){N.current=null;let r=e[0];if(!r)return;if(!(null==(t=r.type)?void 0:t.startsWith("image/"))){c.oR.error("Only image files are supported"),b.current&&(b.current.value="");return}if(r.size>L){c.oR.error('"'.concat(r.name,'" exceeds the ').concat(p,"MB limit")),b.current&&(b.current.value="");return}E([{id:a,file:r}]);return}let n=R-z.length,s=e.filter(e=>{var t;return(null==(t=e.type)?void 0:t.startsWith("image/"))?!(e.size>L)||(c.oR.error('"'.concat(e.name,'" exceeds the ').concat(p,"MB limit")),!1):(c.oR.error('"'.concat(e.name,'" is not an image')),!1)}).slice(0,Math.max(n,0));if(!s.length){if(z.length){let t=e.filter(e=>{var t;return null==(t=e.type)?void 0:t.startsWith("image/")});if(!t.length)return;let a=Math.min(t.length,z.length),n=z.slice(-a),s=[];for(let e=0;e<a;e+=1){let a=null==(r=n[n.length-1-e])?void 0:r.id,l=t[e];a&&l&&s.push({id:a,file:l})}s.length&&E(s)}b.current&&(b.current.value="");return}n<e.length&&c.oR.message("Only the first ".concat(s.length," image(s) will be added"));let l=s.map(e=>({id:"".concat(e.name,"-").concat(e.lastModified,"-").concat(Math.random()),preview:URL.createObjectURL(e),file:e,size:e.size,status:"uploading",uploadKey:"".concat(Date.now(),"-").concat(Math.random())}));C(e=>[...e,...l]),Promise.all(l.map(async e=>{try{let t=await m(e.file);C(r=>r.map(r=>r.id===e.id?r.uploadKey&&e.uploadKey&&r.uploadKey!==e.uploadKey?r:(r.preview.startsWith("blob:")&&URL.revokeObjectURL(r.preview),{...r,preview:t,url:t,status:"uploaded",file:void 0}):r))}catch(t){console.error("Upload failed:",t),c.oR.error((null==t?void 0:t.message)?"Upload failed: ".concat(t.message):"Upload failed"),C(t=>t.map(t=>t.id!==e.id||t.uploadKey&&t.uploadKey!==e.uploadKey?t:{...t,status:"error"}))}})),b.current&&(b.current.value="")},U=()=>{var e;null==(e=b.current)||e.click()},P=(0,n.useMemo)(()=>"".concat(z.length,"/").concat(R),[z.length,R]);return(0,a.jsxs)("div",{className:(0,u.cn)("relative focus:outline-none",k&&"ring-primary/70 ring-offset-background ring-2 ring-offset-2",g),tabIndex:0,onPaste:e=>{var t;let r=Array.from((null==(t=e.clipboardData)?void 0:t.items)||[]).filter(e=>"file"===e.kind&&e.type.startsWith("image/")).map(e=>e.getAsFile()).filter(Boolean);r.length&&(e.preventDefault(),A(r))},onDragEnter:e=>{e.preventDefault(),e.stopPropagation(),_.current+=1,S(!0)},onDragOver:e=>{e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect="copy",k||S(!0)},onDragLeave:e=>{e.preventDefault(),e.stopPropagation(),_.current-=1,_.current<=0&&(_.current=0,S(!1))},onDrop:e=>{var t;e.preventDefault(),e.stopPropagation(),_.current=0,S(!1);let r=Array.from((null==(t=e.dataTransfer)?void 0:t.files)||[]).filter(e=>{var t;return null==(t=e.type)?void 0:t.startsWith("image/")});r.length&&A(r)},children:[k&&(0,a.jsx)("div",{className:"pointer-events-none absolute inset-0 z-30 flex items-center justify-center bg-black/10 backdrop-blur-sm",children:(0,a.jsx)("div",{className:"bg-background/80 text-foreground rounded-full px-4 py-2 text-sm font-medium shadow-sm",children:"Drop to upload"})}),(0,a.jsx)("input",{ref:b,type:"file",accept:"image/*",multiple:t,onChange:e=>{let t=Array.from(e.target.files||[]);t.length&&A(t)},className:"hidden"}),h&&(0,a.jsx)("div",{className:"text-foreground flex items-center justify-between text-sm font-medium",children:(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(o.A,{className:"text-primary h-4 w-4"}),(0,a.jsx)("span",{children:h}),(0,a.jsxs)("span",{className:"text-primary text-xs",children:["(",P,")"]})]})}),(0,a.jsxs)("div",{className:(0,u.cn)("flex flex-wrap gap-4",t?"flex-wrap":"flex-nowrap"),children:[z.map(e=>(0,a.jsx)("div",{className:"group border-border bg-muted/50 hover:border-border hover:bg-muted relative overflow-hidden rounded-xl border p-1 shadow-sm transition",children:(0,a.jsxs)("div",{className:"relative overflow-hidden rounded-lg",children:[(0,a.jsx)("img",{src:e.preview,alt:"Reference",className:"h-32 w-32 rounded-lg object-cover"}),e.size&&(0,a.jsx)("span",{className:"bg-background text-muted-foreground absolute bottom-2 left-2 rounded-md px-2 py-1 text-[10px] font-medium",children:(e=>{if(!e)return"";if(e<1024)return"".concat(e," B");let t=e/1024;if(t<1024)return"".concat(t.toFixed(2)," KB");let r=t/1024;return"".concat(r.toFixed(2)," MB")}
1)(e.size)}),"uploading"!==e.status&&(0,a.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center bg-black/35 opacity-0 transition-opacity group-focus-within:opacity-100 group-hover:opacity-100",children:(0,a.jsx)(d.$,{type:"button",size:"icon",variant:"secondary",className:"bg-background/50 text-foreground hover:bg-background/50 h-10 w-10 rounded-full shadow-sm backdrop-blur focus-visible:ring-2 focus-visible:ring-white/70",onClick:()=>{N.current=e.id,U()},"aria-label":"Upload a new image to replace",children:(0,a.jsx)(s.A,{className:"h-5 w-5"})})}),"uploading"===e.status&&(0,a.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center bg-black/60 text-xs font-medium text-white",children:"Uploading..."}),"error"===e.status&&(0,a.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center bg-red-500/70 text-xs font-medium text-white",children:"Failed"}),(0,a.jsx)(d.$,{size:"icon",variant:"destructive",className:"absolute top-2 right-2 z-20 h-7 w-7",onClick:()=>{var t;return t=e.id,void C(e=>{let r=e.filter(e=>e.id!==t),a=e.find(e=>e.id===t);return(null==a?void 0:a.preview.startsWith("blob:"))&&URL.revokeObjectURL(a.preview),r})},"aria-label":"Remove image",children:(0,a.jsx)(l.A,{className:"h-4 w-4"})})]})},e.id)),z.length<R&&(0,a.jsx)("div",{className:"group border-border bg-muted/50 hover:border-border hover:bg-muted relative overflow-hidden rounded-xl border border-dashed p-1 shadow-sm transition",children:(0,a.jsx)("div",{className:"relative overflow-hidden rounded-lg",children:(0,a.jsxs)("button",{type:"button",className:"flex h-32 w-32 flex-col items-center justify-center gap-2",onClick:U,children:[(0,a.jsx)("div",{className:"border-border flex h-10 w-10 items-center justify-center rounded-full border border-dashed",children:(0,a.jsx)(i.A,{className:"h-5 w-5"})}),(0,a.jsx)("span",{className:"text-xs font-medium",children:"Upload"}),(0,a.jsxs)("span",{className:"text-primary text-xs",children:["Max ",p,"MB"]})]})})})]}),!h&&(0,a.jsx)("div",{className:"text-muted-foreground text-xs",children:f})]})}},9106:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Copyright:()=>l});var a=r(47808),n=r(71500),s=r(18599);function l(e){let{brand:t}=e,[r,l]=(0,n.useState)(null);return(0,n.useEffect)(()=>
1{l(new Date().getFullYear())},[]),(0,a.jsxs)("div",{className:"text-muted-foreground text-sm",children:["\xa9 ",r||2024," ",(0,a.jsx)("a",{href:(null==t?void 0:t.url)||s.b.app_url,target:(null==t?void 0:t.target)||"",className:"text-primary hover:text-primary/80 cursor-pointer",children:(null==t?void 0:t.title)||s.b.app_name}),", All rights reserved"]})}},10780:(e,t,r)=>{"use strict";r.d(t,{Accordion:()=>i,AccordionContent:()=>d,AccordionItem:()=>o,AccordionTrigger:()=>c});var a=r(47808);r(71500);var n=r(53729),s=r(21696),l=r(57169);function i(e){let{...t}=e;return(0,a.jsx)(n.bL,{"data-slot":"accordion",...t})}function o(e){let{className:t,...r}=e;return(0,a.jsx)(n.q7,{"data-slot":"accordion-item",className:(0,l.cn)("border-b last:border-b-0",t),...r})}function c(e){let{className:t,children:r,...i}=e;return(0,a.jsx)(n.Y9,{className:"flex",children:(0,a.jsxs)(n.l9,{"data-slot":"accordion-trigger",className:(0,l.cn)("focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180",t),...i,children:[r,(0,a.jsx)(s.A,{className:"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200"})]})})}function d(e){let{className:t,children:r,...s}=e;return(0,a.jsx)(n.UC,{"data-slot":"accordion-content",className:"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm",...s,children:(0,a.jsx)("div",{className:(0,l.cn)("pt-0 pb-4",t),children:r})})}},18512:(e,t,r)=>{"use strict";r.d(t,{L:()=>l});var a=r(47808),n=r(71500);let s={};function l(e){let{name:t,size:l=24,className:i,...o}=e,c=t&&t.startsWith("Ri")?"ri":"lucide",d="".concat(c,"-").concat(t);s[d]||("ri"===c?s[d]=(0,n.lazy)(async()=>{try{let e=await Promise.all([r.e(8185),r.e(8595)]).then(r.bind(r,38661)),a=e[t];if(a)return{default:a};return console.warn('Icon "'.concat(t,'" not found in react-icons/ri, using fallback')),{default:e.RiQuestionLine}}catch(e){return console.error("Failed to load react-icons/ri:",e),{default:(await Promise.all([r.e(8185),r.e(8595)]).then(r.bind(r,38661))).RiQuestionLine}}}):s[d]=(0,n.lazy)(async()=>{try{let e=await Promise.all([r.e(4515),r.e(1670)]).then(r.bind(r,11871)),a=e[t];if(a)return{default:a};return console.warn('Icon "'.concat(t,'" not found in lucide-react, using fallback')),{default:e.HelpCircle}}catch(e){return console.error("Failed to load lucide-react:",e),{default:(await Promise.all([r.e(4515),r.e(1670)]).then(r.bind(r,11871))).HelpCircle}}}));let u=s[d];return(0,a.jsx)(n.Suspense,{fallback:(0,a.jsx)("div",{style:{width:l,height:l}}),children:(0,a.jsx)(u,{size:l,className:i,...o})})}},23325:()=>{},23661:(e,t,r)=>{"use strict";r.r(t),r.d(t,{LocaleSelector:()=>f});var a=r(47808),n=r(71500),s=r(76509),l=r(2667),i=r(47706),o=r(97326),c=r(54845),d=r(96393),u=r(74748),m=r(67202),p=r(87631),h=r(62958);function f(e){let{type:t="icon"}=e,r=(0,o.Ym)(),f=(0,d.rd)(),g=(0,d.a8)(),x=(0,c.useSearchParams)(),[v,b]=(0,n.useState)(!1);return((0,n.useEffect)(()=>{b(!0)},[]),v)?(0,a.jsxs)(p.rI,{children:[(0,a.jsx)(p.ty,{asChild:!0,children:"icon"===t?(0,a.jsx)(m.$,{variant:"ghost",size:"icon",className:"h-auto w-auto p-0",children:(0,a.jsx)(s.A,{size:18})}):(0,a.jsxs)(m.$,{variant:"outline",size:"sm",className:"hover:bg-primary/10",children:[(0,a.jsx)(l.A,{size:16}),u.L$[r]]})}),(0,a.jsx)(p.SQ,{children:Object.keys(u.L$).map(e=>(0,a.jsxs)(p._2,{onClick:()=>(e=>{if(e!==r){var t,a;(0,h.PW)("locale",e);let r=null!=(a=null==x||null==(t=x.toString)?void 0:t.call(x))?a:"",n=r?"".concat(g,"?").concat(r):g;f.push(n,{locale:e})}})(e),children:[(0,a.jsx)("span",{children:u.L$[e]}),e===r&&(0,a.jsx)(i.A,{size:16,className:"text-primary"})]},e))})]}):(0,a.jsx)(m.$,{variant:"icon"===t?"ghost":"outline",size:"icon"===t?"icon":"sm",className:"icon"===t?"h-auto w-auto p-0":"hover:bg-primary/10",disabled:!0,children:"icon"===t?(0,a.jsx)(s.A,{size:18}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.A,{size:16}),u.L$[r]]})})}},24411:(e,t,r)=>{"use strict";r.r(t),r.d(t,{TopBanner:()=>u});var a=r(47808),n=r(71500),s=r(85170),l=r(96393),i=r(67202),o=r(62958),c=r(41421),d=r(57169);function u(e){let{enabled:t=!0,id:r="default",text:u,buttonText:m,href:p,target:h="_self",closable:f=!0,rememberDismiss:g=!0,dismissedExpiryDays:x=7,className:v,onAction:b}=e,j=(0,n.useMemo)(()=>
1"top-banner-dismissed:".concat(r),[r]),[y,w]=(0,n.useState)(!1),[N,_]=(0,n.useState)(0),k=(0,n.useRef)(null),S=(0,n.useRef)(!1);if((0,n.useEffect)(()=>{if(!S.current)S.current=!0,t&&(g&&(0,o.pr)(j)||w(!0))},[t]),(0,n.useEffect)(()=>{if(y&&k.current){let e=k.current.offsetHeight;_(e);let t=document.querySelector("header");t&&(t.style.top="".concat(e,"px"));let r=document.querySelector('[data-slot="sidebar-container"]');r&&(r.style.top="".concat(e,"px"),r.style.height="calc(100vh - ".concat(e,"px)"));let a=document.querySelector('[data-slot="sidebar-wrapper"]');a&&(a.style.paddingTop="".concat(e,"px"))}else _(0);return()=>{let e=document.querySelector("header");e&&(e.style.top="0px");let t=document.querySelector('[data-slot="sidebar-container"]');t&&(t.style.top="0px",t.style.height="100vh");let r=document.querySelector('[data-slot="sidebar-wrapper"]');r&&(r.style.paddingTop="0px")}},[y]),(0,n.useEffect)(()=>{if(!y||!k.current)return;let e=()=>{k.current&&_(k.current.offsetHeight)};e();let t=new ResizeObserver(e);return t.observe(k.current),window.addEventListener("resize",e),()=>{t.disconnect(),window.removeEventListener("resize",e)}},[y]),!t||!y)return null;let z=!!m&&(!!p||!!b);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{ref:k,className:(0,d.cn)("from-primary to-primary text-primary-foreground fixed top-0 right-0 left-0 z-[51] hidden min-h-12 bg-gradient-to-r py-1 shadow-lg md:block",v),children:(0,a.jsx)("div",{className:"container py-2.5",children:(0,a.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center gap-3",children:(0,a.jsx)("div",{className:"text-sm",dangerouslySetInnerHTML:{__html:String(null!=u?u:"")}})}),(0,a.jsxs)("div",{className:"flex flex-shrink-0 items-center gap-2",children:[z?p?/^https?:\/\//i.test(p)||/^mailto:/i.test(p)||/^tel:/i.test(p)?(0,a.jsx)(i.$,{asChild:!0,variant:"secondary",size:"sm",className:"bg-background text-xs",children:(0,a.jsx)("a",{href:p,target:h,rel:"_blank"===h?"noreferrer noopener":void 0,children:m})}):(0,a.jsx)(i.$,{asChild:!0,variant:"secondary",size:"sm",className:"bg-background text-xs",children:(0,a.jsx)(l.N_,{href:p,children:m})}):(0,a.jsx)(i.$,{onClick:b,variant:"secondary",size:"sm",className:"bg-background text-xs",children:m}):null,f?(0,a.jsx)("button",{onClick:()=>{(()=>{if(!g)return;let e=(0,c.lg)()+24*x*3600;(0,o.PW)(j,"true",e)})(),w(!1),_(0);let e=document.querySelector("header");e&&(e.style.top="0px");let t=document.querySelector('[data-slot="sidebar-container"]');t&&(t.style.top="0px",t.style.height="100vh");let r=document.querySelector('[data-slot="sidebar-wrapper"]');r&&(r.style.paddingTop="0px")},className:"bg-primary/10 flex-shrink-0 rounded p-1 transition-colors","aria-label":"Close",children:(0,a.jsx)(s.A,{className:"h-4 w-4"})}):null]})]})})}),(0,a.jsx)("div",{"aria-hidden":"true",style:{height:N},className:"pointer-events-none"})]})}},36153:(e,t,r)=>{"use strict";r.r(t),r.d(t,{ThemeToggler:()=>v});var a=r(47808),n=r(71500),s=r(49067),l=r(63231),i=r(66052),o=r(20252),c=r(81117),d=r(57169);let u=e=>{let{className:t}=e,{theme:r,setTheme:i}=(0,o.D)(),[u,m]=(0,n.useState)(!1),[p,h]=(0,n.useState)(!1);(0,n.useEffect)(()=>{h(!0),m("dark"===r)},[r]);let f=(0,n.useRef)(null),g=async()=>{if(!f.current)return;await document.startViewTransition(()=>{(0,c.flushSync)(()=>{let e=document.documentElement.classList.toggle("dark");i(e?"dark":"light"),m(e)})}).ready;let{top:e,left:t,width:r,height:a}=f.current.getBoundingClientRect(),n=e+a/2,s=t+r/2,l=window.innerWidth-t,o=window.innerHeight-e,d=Math.hypot(Math.max(t,l),Math.max(e,o));document.documentElement.animate({clipPath:["circle(0px at ".concat(s,"px ").concat(n,"px)"),"circle(".concat(d,"px at ").concat(s,"px ").concat(n,"px)")]},{duration:700,easing:"ease-in-out",pseudoElement:"::view-transition-new(root)"})};return p?(0,a.jsx)("button",{ref:f,onClick:g,className:(0,d.cn)(t),"aria-label":u?"Switch to light mode":"Switch to dark mode",children:u?(0,a.jsx)(s.A,{}):(0,a.jsx)(l.A,{})}):null};var m=r(67202),p=r(77373);let h=(0,r(15921).F)("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground"},size:{default:"h-9 px-2 min-w-9",sm:"h-8 px-1.5 min-w-8",lg:"h-10 px-2.5 min-w-10"}},defaultVariants:{variant:"default",size:"default"}}),f=n.createContext({size:"default",variant:"default"});function g(e){let{className:t,variant:r,size:n,children:s,...l}=e;return(0,a.jsx)(p.bL,{"data-slot":"toggle-group","data-variant":r,"data-size":n,className:(0,d.cn)("group/toggle-group flex w-fit items-center rounded-md data-[variant=outline]:shadow-xs",t),...l,children:(0,a.jsx)(f.Provider,{value:{variant:r,size:n},children:s})})}function x(e){let{className:t,children:r,variant:s,size:l,...i}=e,o=n.useContext(f);return(0,a.jsx)(p.q7,{"data-slot":"toggle-group-item","data-variant":
1o.variant||s,"data-size":o.size||l,className:(0,d.cn)(h({variant:o.variant||s,size:o.size||l}),"min-w-0 flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l",t),...i,children:r})}function v(e){let{type:t="icon",className:r}=e,{theme:c,setTheme:d}=(0,o.D)(),[p,h]=(0,n.useState)(!1);return((0,n.useEffect)(()=>{h(!0)},[]),p)?"button"===t?(0,a.jsx)(m.$,{variant:"outline",size:"sm",className:"hover:bg-primary/10",children:(0,a.jsx)(s.A,{})}):"toggle"===t?(0,a.jsxs)(g,{type:"single",className:" ".concat(r),value:c,onValueChange:e=>{d(e)},variant:"outline",children:[(0,a.jsx)(x,{value:"light",onClick:()=>d("light"),"aria-label":"Switch to light mode",children:(0,a.jsx)(s.A,{})}),(0,a.jsx)(x,{value:"dark",onClick:()=>d("dark"),"aria-label":"Switch to dark mode",children:(0,a.jsx)(l.A,{})}),(0,a.jsx)(x,{value:"system",onClick:()=>d("system"),"aria-label":"Switch to system mode",children:(0,a.jsx)(i.A,{})})]}):(0,a.jsx)(u,{className:r}):null}},41421:(e,t,r)=>{"use strict";r.d(t,{lg:()=>a});let a=()=>Date.parse(new Date().toUTCString())/1e3},44008:(e,t,r)=>{"use strict";r.d(t,{J:()=>l});var a=r(47808);r(71500);var n=r(84219),s=r(57169);function l(e){let{className:t,...r}=e;return(0,a.jsx)(n.b,{"data-slot":"label",className:(0,s.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...r})}},45e3:(e,t,r)=>{"use strict";r.r(t),r.d(t,{SignUser:()=>y});var a=r(47808),n=r(71500),s=r(21008),l=r(28301),i=r(17256),o=r(30617),c=r(22505),d=r(88480),u=r(64630),m=r(96393),p=r(6165),h=r(67202),f=r(87631),g=r(89602),x=r(57169),v=r(18512),b=r(84688);function j(e){var t,r,a;let n=null!=(a=null!=(r=null==e?void 0:e.user)?r:null==e||null==(t=e.data)?void 0:t.user)?a:null;return n&&"object"==typeof n?n:null}function y(e){var t,r;let{isScrolled:y,signButtonSize:w="sm",userNav:N}=e,_=(0,d.c3)("common.sign"),k=(0,m.rd)(),[S,z]=(0,n.useState)(!1);(0,n.useEffect)(()=>{z(!0)},[]);let{configs:C,fetchConfigs:R,setIsShowSignModal:L,isCheckSign:E,setIsCheckSign:A,user:U,setUser:P,fetchUserInfo:q,showOneTap:I}=(0,g.U)(),{data:F,isPending:W}=(0,u.wV)(),$=j(F),D=null!=U?U:$,M=(0,n.useRef)(!1),T=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{R()},[]),(0,n.useEffect)(()=>{U?A(!1):A(W)},[W,U]),(0,n.useEffect)(()=>{!C||!C.google_client_id||"true"!==C.google_one_tap_enabled||F||W||T.current||(T.current=!0,I(C))},[C,F,W]),(0,n.useEffect)(()=>{let e=null==U?void 0:U.id,t=null==$?void 0:$.id;$&&t!==e?(P($),q()):!$&&e&&P(null)},[null==$?void 0:$.id,null==$?void 0:$.email,null==U?void 0:U.id]),(0,n.useEffect)(()=>{!M.current&&!W&&($||U||(M.current=!0,(async()=>{try{var e;let t=await u.yK.getSession(),r=j(null!=(e=null==t?void 0:t.data)?e:t);
1(null==r?void 0:r.id)&&(P(r),q())}catch(e){}})()))},[W,$,null==U?void 0:U.id]),(0,a.jsx)(a.Fragment,{children:E||!S?(0,a.jsx)("div",{children:(0,a.jsx)(s.A,{className:"size-4 animate-spin"})}):D?(0,a.jsxs)(f.rI,{children:[(0,a.jsx)(f.ty,{asChild:!0,children:(0,a.jsx)(h.$,{variant:"ghost",className:"relative h-10 w-10 rounded-full p-0",children:(0,a.jsxs)(p.Avatar,{children:[(0,a.jsx)(p.AvatarImage,{src:D.image||"",alt:D.name||""}),(0,a.jsx)(p.AvatarFallback,{children:D.name.charAt(0)})]})})}),(0,a.jsxs)(f.SQ,{children:[(null==N?void 0:N.show_name)&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(f._2,{asChild:!0,children:(0,a.jsxs)(m.N_,{className:"w-full cursor-pointer",href:"/settings/profile",children:[(0,a.jsx)(l.A,{}),D.name]})}),(0,a.jsx)(f.mB,{})]}),(null==N?void 0:N.show_credits)&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(f._2,{asChild:!0,children:(0,a.jsxs)(m.N_,{className:"w-full cursor-pointer",href:"/settings/credits",children:[(0,a.jsx)(i.A,{}),_("credits_title",{credits:(null==(t=D.credits)?void 0:t.remainingCredits)||0})]})}),(0,a.jsx)(f.mB,{})]}),null==N||null==(r=N.items)?void 0:r.map((e,t)=>(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(f._2,{asChild:!0,children:(0,a.jsxs)(m.N_,{className:"w-full cursor-pointer",href:e.url||"",target:e.target||"_self",children:[e.icon&&(0,a.jsx)(v.L,{name:e.icon,className:"h-4 w-4"}),e.title]})}),(0,a.jsx)(f.mB,{})]},t)),D.isAdmin&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(f._2,{asChild:!0,children:(0,a.jsxs)(m.N_,{className:"w-full cursor-pointer",href:"/admin",children:[(0,a.jsx)(o.A,{}),_("admin_title")]})}),(0,a.jsx)(f.mB,{})]}),(null==N?void 0:N.show_sign_out)&&(0,a.jsxs)(f._2,{className:"w-full cursor-pointer",onClick:()=>(0,u.CI)({fetchOptions:{onSuccess:()=>{k.push("/")}}}),children:[(0,a.jsx)(c.A,{}),(0,a.jsx)("span",{children:_("sign_out_title")})]})]})]}):(0,a.jsxs)("div",{className:"flex w-full flex-col space-y-3 sm:flex-row sm:gap-3 sm:space-y-0 md:w-fit",children:[(0,a.jsx)(h.$,{asChild:!0,size:w,className:(0,x.cn)("border-foreground
1/10 ml-4 cursor-pointer ring-0",y&&"lg:hidden"),onClick:()=>L(!0),children:(0,a.jsx)("span",{children:_("sign_in_title")})}),(0,a.jsx)(b.SignModal,{})]})})}},47906:(e,t,r)=>{"use strict";r.d(t,{p:()=>s});var a=r(47808);r(71500);var n=r(57169);function s(e){let{className:t,type:r,...s}=e;return(0,a.jsx)("input",{type:r,"data-slot":"input",className:(0,n.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...s})}},47974:(e,t,r)=>{"use strict";r.d(t,{Cf:()=>d,L3:()=>m,c7:()=>u,lG:()=>i,rr:()=>p});var a=r(47808);r(71500);var n=r(97342),s=r(85170),l=r(57169);function i(e){let{...t}=e;return(0,a.jsx)(n.bL,{"data-slot":"dialog",...t})}function o(e){let{...t}=e;return(0,a.jsx)(n.ZL,{"data-slot":"dialog-portal",...t})}function c(e){let{className:t,...r}=e;return(0,a.jsx)(n.hJ,{"data-slot":"dialog-overlay",className:(0,l.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...r})}function d(e){let{className:t,children:r,showCloseButton:i=!0,...d}=e;return(0,a.jsxs)(o,{"data-slot":"dialog-portal",children:[(0,a.jsx)(c,{}),(0,a.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center overflow-y-auto p-4",children:(0,a.jsxs)(n.UC,{"data-slot":"dialog-content",className:(0,l.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 relative grid w-full max-w-[calc(100%-2rem)] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",t),...d,children:[r,i&&(0,a.jsxs)(n.bm,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[(0,a.jsx)(s.A,{}),(0,a.jsx)("span",{className:"sr-only",children:"Close"})]})]})})]})}function u(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"dialog-header",className:(0,l.cn)("flex flex-col gap-2 text-center sm:text-left",t),...r})}function m(e){let{className:t,...r}=e;return(0,a.jsx)(n.hE,{"data-slot":"dialog-title",className:(0,l.cn)("text-lg leading-none font-semibold",t),...r})}function p(e){let{className:t,...r}=e;return(0,a.jsx)(n.VY,{"data-slot":"dialog-description",className:(0,l.cn)("text-muted-foreground text-sm",t),...r})}},55690:(e,t,r)=>{"use strict";r.r(t),r.d(t,{ErrorBoundary:()=>u});var a=r(47808),n=r(71500),s=r(43040),l=r(95784),i=r.n(l),o=r(18599),c=r(67202),d=r(18512);class u extends n.Component{static getDerivedStateFromError(e){return"NEXT_NOT_FOUND"===e.digest?{hasError:!1}:{hasError:!0}}componentDidCatch(e,t){console.error("Uncaught error:",e,t)}render(){return(console.log("ErrorBoundary render",this.state),this.state.hasError)?this.props.fallback?this.props.fallback:(0,a.jsxs)("div",{className:"flex h-screen flex-col items-center justify-center gap-4",children:[(0,a.jsx)(s.default,{src:o.b.app_logo,alt:o.b.app_name,width:80,height:80}),(0,a.jsx)("h1",{className:"text-2xl font-normal",children:"Something went wrong"}),(0,a.jsx)("p",{className:"text-muted-foreground",children:"Please try refreshing the page or contact support if the problem persists."}),(0,a.jsx)(c.$,{asChild:!0,children:(0,a.jsxs)(i(),{href:"/",className:"mt-4",children:[(0,a.jsx)(d.L,{name:"ArrowLeft"}),(0,a.jsx)("span",{children:"Back to Home"})]})})]}):this.props.children}constructor(...e){super(...e),this.state={hasError:!1}}}},57169:(e,t,r)=>{"use strict";r.d(t,{cn:()=>s});var a=r(57305),n=r(43753);function s(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.QP)((0,a.$)(t))}},60632:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Pagination:()=>j});var a=r(47808),n=r(54845),s=r(71500),l=r(20017),i=r(68442),o=r(9589),c=r(57169),d=r(67202);let u=e=>{let{className:t,...r}=e;return(0,a.jsx)("nav",{role:"navigation","aria-label":"pagination",className:(0,
1c.cn)("mx-auto flex w-full",t),...r})};u.displayName="Pagination";let m=s.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)("ul",{ref:t,className:(0,c.cn)("flex flex-row items-center gap-1",r),...n})});m.displayName="PaginationContent";let p=s.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)("li",{ref:t,className:(0,c.cn)("",r),...n})});p.displayName="PaginationItem";let h=e=>{let{className:t,isActive:r,size:n="icon",...s}=e;return(0,a.jsx)("a",{"aria-current":r?"page":void 0,className:(0,c.cn)((0,d.r)({variant:r?"outline":"ghost",size:n}),t),...s})};h.displayName="PaginationLink";let f=e=>{let{className:t,...r}=e;return(0,a.jsx)(h,{"aria-label":"Go to previous page",size:"default",className:(0,c.cn)("gap-1 pl-2.5",t),...r,children:(0,a.jsx)(l.A,{className:"h-4 w-4"})})};f.displayName="PaginationPrevious";let g=e=>{let{className:t,...r}=e;return(0,a.jsx)(h,{"aria-label":"Go to next page",size:"default",className:(0,c.cn)("gap-1 pr-2.5",t),...r,children:(0,a.jsx)(i.A,{className:"h-4 w-4"})})};g.displayName="PaginationNext";let x=e=>{let{className:t,...r}=e;return(0,a.jsxs)("span",{"aria-hidden":!0,className:(0,c.cn)("flex h-9 w-9 items-center justify-center",t),...r,children:[(0,a.jsx)(o.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{className:"sr-only",children:"More pages"})]})};function v(e){let{total:t,perPage:r,currentPage:n,totalPages:s,onPageChange:l,showPreviousNext:i,className:o}=e;return(0,a.jsx)(u,{className:o,children:(0,a.jsxs)(m,{className:"flex w-full justify-center",children:[(0,a.jsxs)("div",{className:"text-muted-foreground text-sm",children:["Total: ",t,", Page: ",n," / ",s]}),(0,a.jsx)("div",{className:"flex-1"}),i&&s&&n-1>=1?(0,a.jsx)(p,{className:"cursor-pointer",children:(0,a.jsx)(f,{onClick:()=>{n-1>=1&&l(n-1)},className:"cursor-pointer"})},"prev"):null,b(n,s,l),i&&s&&n+1<=s?(0,a.jsx)(p,{className:"cursor-pointer",children:(0,a.jsx)(g,{onClick:()=>{n+1<=s&&l(n+1)}})},"next"):null]})})}x.displayName="PaginationEllipsis";let b=(e,t,r)=>{let n=[];if(t<=6)for(let s=1;s<=t;s++)n.push((0,a.jsx)(p,{className:"cursor-pointer",children:(0,a.jsx)(h,{onClick:()=>s!==e&&r(s),isActive:s==e,className:"cursor-pointer",children:s})},"page-".concat(s)));else{for(let t=1;t<=2;t++)n.push((0,a.jsx)(p,{children:(0,a.jsx)(h,{onClick:()=>t!==e&&r(t),isActive:t===e,className:"cursor-pointer",children:t})},"page-".concat(t)));2<e&&e<t-1&&(n.push((0,a.jsx)(x,{},"ellipsis-1")),n.push((0,a.jsx)(p,{children:(0,a.jsx)(h,{onClick:()=>r(e),isActive:!0,className:"cursor-pointer",children:e})},"page-current"))),n.push((0,a.jsx)(x,{},"ellipsis-2"));for(let s=t-1;s<=t;s++)n.push((0,a.jsx)(p,{children:(0,a.jsx)(h,{onClick:()=>s!==e&&r(s),isActive:s===e,className:"cursor-pointer",children:s})},"page-".concat(s)))}return n};function j(e){let{total:t,limit:r,page:s=1,url:l,className:i}=e;r<=0&&(r=30);let o=Math.ceil(t/r),c=(0,n.usePathname)(),d=(0,n.useSearchParams)(),u=(0,n.useRouter)();return o<=1?null:(0,a.jsx)(v,{total:Number(t),perPage:Number(r),currentPage:Number(s),totalPages:Number(o),onPageChange:e=>{let t=new URLSearchParams(d);t.set("page",e.toString()),u.push("".concat(c,"?").concat(t.toString()))},showPreviousNext:!0,className:i})}},62958:(e,t,r)=>{"use strict";r.d(t,{PW:()=>s,pr:()=>n});var a=r(41421);let n=e=>{let t=localStorage.getItem(e);if(!t)return null;let r=t.split(":");if(!r||r.length<2)return t;let n=Number(r[0]),s=(0,a.lg)();if(n>0&&n<s)return l(e),null;let i=r[0]+":";return t.replace(i,"")},s=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(!r)return void localStorage.setItem(e,t);localStorage.setItem(e,r+":"+t)},l=e=>{localStorage.removeItem(e)}},66059:(e,t,r)=>{"use strict";r.d(t,{g:()=>h});var a=r(47808),n=r(88480),s=r(97326),l=r(38661),i=r(31963),o=r(64630),c=r(96393),d=r(74748),u=r(67202),m=r(89602),p=r(57169);function h(e){let{configs:t,callbackUrl:r,loading:h,setLoading:f}=e,g=(0,n.c3)("common.sign");(0,c.rd)();let{setIsShowSignModal:x}=(0,m.U)();if(r){let e=(0,s.Ym)();e!==d.q&&r.startsWith("/")&&!r.startsWith("/".concat(e))&&(r="/".concat(e).concat(r))}let v=async e=>{let{provider:t}=e;await o.Jv.social({provider:t,callbackURL:r},{onRequest:e=>{f(!0)},onResponse:e=>{},onSuccess:e=>{x(!1)},onError:e=>{var t;i.oR.error((null==e||null==(t=e.error)?void 0:t.message)||"sign in failed"),f(!1)}})},b=[];return"true"===t.google_auth_enabled&&b.push({name:"google",title:g("google_sign_in_title"),icon:(0,a.jsx)(l.RiGoogleFill,{}),onClick:()=>v({provider:"google"})}),"true"===t.github_auth_enabled&&b.push({name:"github",title:g("github_sign_in_title"),icon:(0,a.jsx)(l.RiGithubFill,{}),onClick:()=>v({provider:"github"})}),(0,a.jsx)("div",{className:(0,p.cn)("flex w-full items-center gap-2","flex-col justify-between"),children:b.map(e=>(0,a.jsxs)(u.$,{type:"button",variant:"outline",className:(0,p.cn)("w-full gap-2"),disabled:h,onClick:e.onClick,children:[e.icon,(0,a.jsx)("h3",{children:e.title})]},e.name))})}},67202:(e,t,r)=>{"use strict";r.d(t,{$:()=>o,r:()=>i});var a=r(47808);r(71500);var n=r(59310),s=r(15921),l=r(57169);let i=(0,s.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-sm":"size-7"}},defaultVariants:{variant:"default",size:"default"}});function o(e){let{className:t,variant:r,size:s,asChild:o=!1,...c}=e,d=o?n.DX:"button";return(0,a.jsx)(d,{"data-slot":"button",className:(0,l.cn)(i({variant:r,size:s,className:t})),...c})}},71724:(e,t,r)=>{"use strict";r.r(t),r.d(t,{LocaleDetector:()=>x});var a=r(47808),n=r(71500),s=r(85170),l=r(97326),i=r(88480),o=r(54845),c=r(96393),d=r(18599),u=r(74748),m=r(67202),p=r(62958),h=r(41421);let f="locale-suggestion-dismissed",g="locale";function x(){if("true"!==d.b.locale_detect_enabled)return null;let e=(0,l.Ym)(),t=(0,i.c3)("common.locale_detector"),r=(0,c.rd)(),x=(0,c.a8)(),v=(0,o.useSearchParams)(),[b,j]=(0,n.use
1State)(!1),[y,w]=(0,n.useState)(null),[N,_]=(0,n.useState)(0),k=(0,n.useRef)(null),S=(0,n.useRef)(!1),z=(0,n.useCallback)(e=>{var t,a;let n=null!=(a=null==v||null==(t=v.toString)?void 0:t.call(v))?a:"",s=n?"".concat(x,"?").concat(n):x;r.replace(s,{locale:e}),(0,p.PW)(g,e),j(!1)},[r,x,v]);(0,n.useEffect)(()=>{if(S.current)return;S.current=!0;let t=(()=>{let e=(navigator.language||navigator.userLanguage).split("-")[0].toLowerCase();return u.IB.includes(e)?e:null})();w(t);let r=!!(0,p.pr)(f),a=(0,p.pr)(g);if(a&&a!==e&&u.IB.includes(a))return void z(a);!t||t===e||r||a||j(!0)},[e,z]),(0,n.useEffect)(()=>{if(b&&k.current){let e=k.current.offsetHeight;_(e);let t=document.querySelector("header");t&&(t.style.top="".concat(e,"px"));let r=document.querySelector('[data-slot="sidebar-container"]');r&&(r.style.top="".concat(e,"px"),r.style.height="calc(100vh - ".concat(e,"px)"));let a=document.querySelector('[data-slot="sidebar-wrapper"]');a&&(a.style.paddingTop="".concat(e,"px"))}else _(0);return()=>{let e=document.querySelector("header");e&&(e.style.top="0px");let t=document.querySelector('[data-slot="sidebar-container"]');t&&(t.style.top="0px",t.style.height="100vh");let r=document.querySelector('[data-slot="sidebar-wrapper"]');r&&(r.style.paddingTop="0px")}},[b]),(0,n.useEffect)(()=>{if(!b||!k.current)return;let e=()=>{k.current&&_(k.current.offsetHeight)};e();let t=new ResizeObserver(e);return t.observe(k.current),window.addEventListener("resize",e),()=>{t.disconnect(),window.removeEventListener("resize",e)}},[b]);let C=u.L$[y]||y;return b&&y?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{ref:k,className:"from-primary to-primary/80 text-primary-foreground fixed top-0 right-0 left-0 z-[51] hidden bg-gradient-to-r shadow-lg md:block",children:(0,a.jsx)("div",{className:"container py-2.5",children:(0,a.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,a.jsx)("div",{className:"flex flex-1 items-center gap-3",children:(0,a.jsx)("span",{className:"text-sm",children:t("title",{locale:C})})}),(0,a.jsxs)("div",{className:"flex flex-shrink-0 items-center gap-2",children:[(0,a.jsx)(m.$,{onClick:()=>{y&&z(y)},variant:"secondary",size:"sm",className:"bg-background text-xs",children:t("switch_to",{locale:C})}),(0,a.jsx)("button",{onClick:()=>{let e=(0,h.lg)()+86400;(0,p.PW)(f,"true",e),j(!1),_(0);let t=document.querySelector("header");t&&(t.style.top="0px");let r=document.querySelector('[data-slot="sidebar-container"]');r&&(r.style.top="0px",r.style.height="100vh");let a=document.querySelector('[data-slot="sidebar-wrapper"]');a&&(a.style.paddingTop="0px")},className:"bg-primary/10 flex-shrink-0 rounded p-1 transition-colors","aria-label":"Close",children:(0,a.jsx)(s.A,{className:"h-4 w-4"})})]})]})})}),(0,a.jsx)("div",{"aria-hidden":"true",style:{height:N},className:"pointer-events-none"})]}):null}},72358:(e,t,r)=>{"use strict";r.r(t),r.d(t,{MarkdownEditor:()=>l});var a=r(47808),n=r(71500),s=r(53950);function l(e){let{value:t,onChange:r,placeholder:l,minHeight:i=400,showToolbar:o}=e,c=(0,n.useRef)(null),d=(0,n.useRef)(null);return(0,n.useEffect)(()=>{let[e]=s.d.init(c.current,{value:t,onChange:r,placeholder:l,minHeight:i,showToolbar:o});return d.current=e,()=>{var e;return null==(e=d.current)?void 0:e.destroy()}},[]),(0,n.useEffect)(()=>{d.current&&t!==d.current.getValue()&&d.current.setValue(t)},[t]),(0,a.jsx)("div",{className:"overflow-hidden rounded-md border",ref:c,style:{height:"400px"}})}},73489:(e,t,r)=>{"use strict";r.r(t),r.d(t,{LazyImage:()=>s});var a=r(47808),n=r(61251);function s(e){let{src:t,alt:r,className:s,width:l,height:i,placeholderSrc:o,title:c,fill:d,priority:u,sizes:m}=e;return(0,a.jsx)(n.LazyLoadImage,{src:t,alt:r,width:l,height:i,effect:"blur",placeholderSrc:o,className:s})}r(54238)},74748:(e,t,r)=>{"use strict";r.d(t,{GB:()=>o,IB:()=>s,L$:()=>n,b:()=>i,q:()=>l});var a=r(18599);let n={en:"English",zh:"中文",ja:"日本語",ko:"한국어",ar:"العربية",ru:"Русский"},s=["en","zh","ja","ko","ar","ru"],l=a.b.locale,i="as-needed",o=!1},84688:(e,t,r)=>{"use strict";r.d(t,{SignModal:()=>_});var a=r(47808),n=r(71500),s=r(88480),l=r(47974),i=r(89602),o=r(21008),c=r(97326),d=r(31963),u=r(64630),m=r(96393),p=r(74748),h=r(67202),f=r(47906),g=r(44008);let x=[[/password.*too\s*short/i,"error_password_too_short"],[/password.*too\s*long/i,"error_password_too_long"],[/invalid.*email.*password|invali
1d.*credentials/i,"error_invalid_email_or_password"],[/user.*not\s*found|account.*not\s*found/i,"error_user_not_found"],[/invalid.*email/i,"error_invalid_email"],[/too\s*many\s*requests|rate\s*limit/i,"error_too_many_requests"],[/user.*already\s*exists|email.*already.*registered|email.*already.*use/i,"error_user_already_exists"]];function v(e){if(!e)return null;for(let[t,r]of x)if(t.test(e))return r;return null}function b(e,t){let r=v(e);return r?t(r):e||""}var j=r(66059);function y(e){let{callbackUrl:t="/",className:r,onSwitchToSignUp:l}=e,x=(0,s.c3)("common.sign"),y=(0,m.rd)(),w=(0,c.Ym)(),[N,_]=(0,n.useState)(""),[k,S]=(0,n.useState)(""),[z,C]=(0,n.useState)(!1),[R,L]=(0,n.useState)(!1),[E,A]=(0,n.useState)(!1),{configs:U}=(0,i.U)(),P="true"===U.google_auth_enabled,q="true"===U.github_auth_enabled,I="false"!==U.email_auth_enabled||!P&&!q;t&&w!==p.q&&t.startsWith("/")&&!t.startsWith("/".concat(w))&&(t="/".concat(w).concat(t));let F=w!==p.q?"/".concat(w):"",W=async()=>{if(!z){if(!N||!k)return void d.oR.error("email and password are required");C(!0);try{await u.Jv.email({email:N,password:k,callbackURL:t},{onRequest:e=>{},onResponse:e=>{},onSuccess:e=>{},onError:e=>{var r,a,n;let s=null==e||null==(r=e.error)?void 0:r.status;if(403===s){let e=(null==(n=t)?void 0:n.startsWith("/"))?w===p.q?n:n==="/".concat(w)?"/":n.startsWith("/".concat(w,"/"))?n.slice(w.length+1)||"/":n:"/",r="/verify-email?sent=1&email=".concat(encodeURIComponent(N),"&callbackUrl=").concat(encodeURIComponent(e));u.yK.sendVerificationEmail({email:N,callbackURL:"".concat(F).concat(e||"/")}),y.push(r);return}let i=(null==e||null==(a=e.error)?void 0:a.message)||"",o=!!l&&("error_user_not_found"===v(i)||422===s||401===s);L(o),o&&A(!1),d.oR.error(b(i,x)||x("error_sign_in_failed")),C(!1)}})}catch(e){L(!1),d.oR.error(b(null==e?void 0:e.message,x)||x("error_sign_in_failed")),C(!1)}}};return(0,a.jsxs)("div",{className:"w-full md:max-w-md ".concat(r),children:[(0,a.jsxs)("div",{className:"grid gap-4",children:[I&&(0,a.jsxs)("form",{className:"grid gap-4",onSubmit:e=>{e.preventDefault(),W()},children:[(0,a.jsxs)("div",{className:"grid gap-2",children:[(0,a.jsx)(g.J,{htmlFor:"email",children:x("email_title")}),(0,a.jsx)(f.p,{id:"email",type:"email",placeholder:x("email_placeholder"),required:!0,onChange:e=>{_(e.target.value),R&&L(!1)},value:N})]}),(0,a.jsx)("div",{className:"grid gap-2",children:(0,a.jsx)(f.p,{id:"password",type:"password",placeholder:x("password_placeholder"),autoComplete:"password",value:k,onChange:e=>S(e.target.value),required:!0})}),(0,a.jsx)(h.$,{type:"submit",className:"w-full",disabled:z,children:z?(0,a.jsx)(o.A,{size:16,className:"animate-spin"}):(0,a.jsxs)("p",{children:[" ",x("sign_in_title")," "]})}),R&&!E&&l&&(0,a.jsxs)("div",{className:"rounded-md border border-blue-200 bg-blue-50 p-3 dark:border-blue-800 dark:bg-blue-950",children:[(0,a.jsx)("p",{className:"text-sm text-blue-700 dark:text-blue-300",children:x("account_not_found")}),(0,a.jsx)(h.$,{type:"button",variant:"link",className:"h-auto p-0 text-sm font-semibold text-blue-700 dark:text-blue-300",onClick:()=>l(N),children:x("go_to_sign_up")})]})]}),(0,a.jsx)(j.g,{configs:U,callbackUrl:t||"/",loading:z,setLoading:C})]}),I&&(0,a.jsx)("div",{className:"flex w-full justify-center border-t py-4",children:(0,a.jsxs)("p",{className:"text-center text-xs text-neutral-500",children:[x("no_account"),l?(0,a.jsx)("button",{type:"button",className:"cursor-pointer underline dark:text-white/70",onClick:()=>l(N),children:x("sign_up_title")}):(0,a.jsx)(m.N_,{href:"/sign-up",className:"underline",children:(0,a.jsx)("span",{className:"cursor-pointer dark:text-white/70",children:x("sign_up_title")})})]})})]})}var w=r(54845);function N(e){let{callbackUrl:t="/",className:r,initialEmail:l="",onSwitchToSignIn:x}=e,v=(0,w.useRouter)(),y=(0,s.c3)("common.sign"),N=(0,c.Ym)(),[_,k]=(0,n.useState)(""),[S,z]=(0,n.useState)(l),[C,R]=(0,n.useState)(""),[L,E]=(0,n.useState)(!1),{configs:A}=(0,i.U)(),U="true"===A.google_auth_enabled,P="true"===A.github_auth_enabled,q="false"!==A.email_auth_enabled||!U&&!P,I="true"===A.email_verification_enabled;t&&N!==p.q&&t.startsWith("/")&&!t.startsWith("/".concat(N))&&(t="/".concat(N).concat(t));let F=N!==p.q?"/".concat(N):"",W=async()=>
1{if(!L){if(!S||!C||!_)return void d.oR.error("email, password and name are required");E(!0);try{await u.Hh.email({email:S,password:C,name:_},{onRequest:()=>{},onResponse:()=>{},onSuccess:()=>{if((e=>{let{userEmail:t,stripeCustomerId:r}=e;if(!A)return;let a=window;"true"===A.affonso_enabled&&a.Affonso&&a.Affonso.signup(t),"true"===A.promotekit_enabled&&a.promotekit&&a.promotekit.refer(t,r)})({userEmail:S}),I){var e;let r=(null==(e=t)?void 0:e.startsWith("/"))?N===p.q?e:e==="/".concat(N)?"/":e.startsWith("/".concat(N,"/"))?e.slice(N.length+1)||"/":e:"/",a="/verify-email?sent=1&email=".concat(encodeURIComponent(S),"&callbackUrl=").concat(encodeURIComponent(r));u.yK.sendVerificationEmail({email:S,callbackURL:"".concat(F).concat(r||"/")}),v.push("".concat(F).concat(a));return}v.push(t)},onError:e=>{var t;d.oR.error(b(null==e||null==(t=e.error)?void 0:t.message,y)||y("error_sign_up_failed")),E(!1)}})}catch(e){d.oR.error(b(null==e?void 0:e.message,y)||y("error_sign_up_failed")),E(!1)}}};return(0,a.jsxs)("div",{className:"w-full md:max-w-md ".concat(r),children:[(0,a.jsxs)("div",{className:"grid gap-4",children:[q&&(0,a.jsxs)("form",{className:"grid gap-4",onSubmit:e=>{e.preventDefault(),W()},children:[(0,a.jsxs)("div",{className:"grid gap-2",children:[(0,a.jsx)(g.J,{htmlFor:"signup-name",children:y("name_title")}),(0,a.jsx)(f.p,{id:"signup-name",type:"text",placeholder:y("name_placeholder"),required:!0,onChange:e=>k(e.target.value),value:_})]}),(0,a.jsxs)("div",{className:"grid gap-2",children:[(0,a.jsx)(g.J,{htmlFor:"signup-email",children:y("email_title")}),(0,a.jsx)(f.p,{id:"signup-email",type:"email",placeholder:y("email_placeholder"),required:!0,onChange:e=>z(e.target.value),value:S}),I&&(0,a.jsx)("p",{className:"text-xs text-amber-600",children:y("email_verification_hint")})]}),(0,a.jsxs)("div",{className:"grid gap-2",children:[(0,a.jsx)(g.J,{htmlFor:"signup-password",children:y("password_title")}),(0,a.jsx)(f.p,{id:"signup-password",type:"password",placeholder:y("password_placeholder"),autoComplete:"new-password",value:C,onChange:e=>R(e.target.value),required:!0})]}),(0,a.jsx)(h.$,{type:"submit",className:"w-full",disabled:L,children:L?(0,a.jsx)(o.A,{size:16,className:"animate-spin"}):(0,a.jsx)("p",{children:y("sign_up_title")})})]}),(0,a.jsx)(j.g,{configs:A,callbackUrl:t||"/",loading:L,setLoading:E})]}),q&&(0,a.jsx)("div",{className:"flex w-full justify-center border-t py-4",children:(0,a.jsxs)("p",{className:"text-center text-xs text-neutral-500",children:[y("already_have_account"),x?(0,a.jsx)("button",{type:"button",className:"cursor-pointer underline dark:text-white/70",onClick:x,children:y("sign_in_title")}):(0,a.jsx)(m.N_,{href:"/sign-in",className:"underline",children:(0,a.jsx)("span",{className:"cursor-pointer dark:text-white/70",children:y("sign_in_title")})})]})})]})}function _(e){let{callbackUrl:t="/"}=e,r=(0,s.c3)("common.sign"),{isShowSignModal:o,setIsShowSignModal:c}
1=(0,i.U)(),[d,u]=(0,n.useState)("sign-in"),[m,p]=(0,n.useState)("");(0,n.useEffect)(()=>{o||(u("sign-in"),p(""))},[o]);let h=(0,n.useCallback)(e=>{c(e)},[c]),f=(0,n.useCallback)(e=>{p(e||""),u("sign-up")},[]),g=(0,n.useCallback)(()=>{u("sign-in")},[]),x="sign-up"===d,v=r(x?"sign_up_title":"sign_in_title"),b=r(x?"sign_up_description":"sign_in_description");return(0,a.jsx)(l.lG,{open:o,onOpenChange:h,children:(0,a.jsxs)(l.Cf,{className:"max-h-[90vh] overflow-y-auto sm:max-w-[425px]",children:[(0,a.jsxs)(l.c7,{children:[(0,a.jsx)(l.L3,{children:v}),(0,a.jsx)(l.rr,{children:b})]}),x?(0,a.jsx)(N,{callbackUrl:t,initialEmail:m,onSwitchToSignIn:g}):(0,a.jsx)(y,{callbackUrl:t,onSwitchToSignUp:f})]})})}},85819:(e,t,r)=>{"use strict";r.r(t),r.d(t,{AudioPlayer:()=>o});var a=r(47808),n=r(71500),s=r(44560),l=r(60192),i=r(57169);function o(e){let{src:t,title:r,className:o}=e,c=(0,n.useRef)(null),[d,u]=(0,n.useState)(!1),[m,p]=(0,n.useState)(0),[h,f]=(0,n.useState)(0),[g,x]=(0,n.useState)(1),[v,b]=(0,n.useState)(!1);(0,n.useEffect)(()=>{let e=c.current;if(!e)return;let t=()=>p(e.currentTime),r=()=>f(e.duration),a=()=>u(!1);return e.addEventListener("timeupdate",t),e.addEventListener("loadedmetadata",r),e.addEventListener("ended",a),()=>{e.removeEventListener("timeupdate",t),e.removeEventListener("loadedmetadata",r),e.removeEventListener("ended",a)}},[]);let j=e=>{if(isNaN(e))return"0:00";let t=Math.floor(e/60),r=Math.floor(e%60);return"".concat(t,":").concat(r.toString().padStart(2,"0"))};return(0,a.jsxs)("div",{className:(0,i.cn)("bg-card text-card-foreground flex items-center gap-3 rounded-lg border p-3 shadow-sm",o),children:[(0,a.jsx)("audio",{ref:c,src:t,preload:"metadata"}),(0,a.jsx)("button",{onClick:()=>{let e=c.current;e&&(d?e.pause():e.play(),u(!d))},className:"bg-primary text-primary-foreground hover:bg-primary/90 flex h-10 w-10 items-center justify-center rounded-full transition-colors","aria-label":d?"Pause":"Play",children:d?(0,a.jsx)(s.A,{className:"h-5 w-5"}):(0,a.jsx)(l.A,{className:"ml-0.5 h-5 w-5"})}),(0,a.jsxs)("div",{className:"flex flex-1 flex-col gap-1",children:[r&&(0,a.jsx)("div",{className:"truncate text-sm font-medium",children:r}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-muted-foreground w-10 text-right text-xs",children:j(m)}),(0,a.jsx)("input",{type:"range",min:0,max:h||0,value:m,onChange:e=>{let t=c.current;if(!t)return;let r=parseFloat(e.target.value);t.currentTime=r,p(r)},className:"bg-secondary [&::-webkit-slider-thumb]:bg-primary [&::-moz-range-thumb]:bg-primary h-1 flex-1 cursor-pointer appearance-none rounded-lg [&::-moz-range-thumb]:h-3 [&::-moz-range-thumb]:w-3 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:border-0 [&::-webkit-slider-thumb]:h-3 [&::-webkit-slider-thumb]:w-3 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full"}),(0,a.jsx)("span",{className:"text-muted-foreground w-10 text-xs",children:j(h)})]})]})]})}},87631:(e,t,r)=>{"use strict";r.d(t,{I:()=>c,SQ:()=>o,_2:()=>d,lp:()=>u,mB:()=>m,rI:()=>l,ty:()=>i});var a=r(47808);r(71500);var n=r(13151),s=r(57169);function l(e){let{...t}=e;return(0,a.jsx)(n.bL,{"data-slot":"dropdown-menu",...t})}function i(e){let{...t}=e;return(0,a.jsx)(n.l9,{"data-slot":"dropdown-menu-trigger",...t})}function o(e){let{className:t,sideOffset:r=4,...l}=e;return(0,a.jsx)(n.ZL,{children:(0,a.jsx)(n.UC,{"data-slot":"dropdown-menu-content",sideOffset:r,className:(0,s.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",t),...l})})}function c(e){let{...t}=e;return(0,a.jsx)(n.YJ,{"data-slot":"dropdown-menu-group",...t})}function d(e){let{className:t,inset:r,variant:l="default",...i}=e;return(0,a.jsx)(n.q7,{"data-slot":"dropdown-menu-item","data-inset":r,"data-variant":l,className:(0,s.cn)("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...i})}function u(e){let{className:t,inset:r,...l}=e;return(0,a.jsx)(n.JU,{"data-slot":"dropdown-menu-label","data-inset":r,className:(0,s.cn)("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",t),...l})}function m(e){let{className:t,...r}=e;return(0,a.jsx)(n.wv,{"data-slot":"dropdown-menu-separator",className:(0,s.cn)("bg-border -mx-1 my-1 h-px",t),...r})}},93559:(e,t,r)=>{"use strict";r.r(t),r.d(t,{MarkdownPreview:()=>o,getTocItems:()=>l});var a=r(47808),n=r(71500),s=r(34730);function l(e){let t;if(!e)return[];let r=/^(#{1,6})\s+(.+)$/gm,a=[];for(;null!==(t=r.exec(e));){let e=t[1].length,r=t[2].trim(),n=r.toLowerCase().replace(/[^a-z0-9\u4e00-\u9fff]+/g,"-").replace(/(^-|-$)/g,"");a.push({id:n,text:r,level:e})}return a}r(23714),r(23325);let i=new s.A({html:!0,linkify:!0,breaks:!0});
1function o(e){let{content:t}=e,r=(0,n.useMemo)(()=>t?i.render(t):"",[t]);return(0,a.jsx)("div",{className:"markdown-body",dangerouslySetInnerHTML:{__html:r}})}i.renderer.rules.heading_open=function(e,t){let r=e[t].markup.length,a=e[t+1];if(a&&"inline"===a.type){let e=a.content.toLowerCase().replace(/[^a-z0-9\u4e00-\u9fff]+/g,"-").replace(/(^-|-$)/g,"");return"<h".concat(r,' id="').concat(e,'">')}return"<h".concat(r,">")},i.renderer.rules.link_open=function(e,t,r,a,n){let s=e[t];if(s.attrIndex("href")>=0){let e=s.attrGet("href");s.attrSet("rel","nofollow"),e&&(e.startsWith("http://")||e.startsWith("https://"))&&s.attrSet("target","_blank")}return n.renderToken(e,t,r)}},96393:(e,t,r)=>{"use strict";r.d(t,{N_:()=>i,a8:()=>c,rd:()=>d});var a=r(42),n=r(94764),s=r(74748);let l=(0,n.A)({locales:s.IB,defaultLocale:s.q,localePrefix:s.b,localeDetection:s.GB}),{Link:i,redirect:o,usePathname:c,useRouter:d,getPathname:u}=(0,a.A)(l)}}]);

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.