(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,93997,e=>{"use strict";var t=e.i(43476),s=e.i(71645),r=e.i(38149),a=e.i(23975),l=e.i(21274),d=e.i(85665);e.i(89308);var i=e.i(75954);let n={light:{label:"가벼운 압축",description:"메타데이터 제거 + 재패키징. 텍스트 유지.",keepText:!0,scale:0,jpegQuality:0},medium:{label:"중간 압축",description:"페이지를 150 DPI JPEG로 변환. 약 40~60% 감소.",keepText:!1,scale:1.5,jpegQuality:.82},high:{label:"강한 압축",description:"페이지를 100 DPI JPEG로 변환. 약 60~75% 감소.",keepText:!1,scale:1,jpegQuality:.7},maximum:{label:"최대 압축",description:"페이지를 72 DPI JPEG로 변환. 약 75~85% 감소. 화질 저하.",keepText:!1,scale:.72,jpegQuality:.55}};async function o(e){let t=await e.arrayBuffer(),s=await i.PDFDocument.load(t,{updateMetadata:!1});return s.setTitle(""),s.setAuthor(""),s.setSubject(""),s.setKeywords([]),s.setProducer(""),s.setCreator(""),s.save({useObjectStreams:!0})}async function c(t,s,r){let a=n[s],l=await e.A(25834);l.GlobalWorkerOptions.workerSrc="/pdf.worker.min.js";let d=await t.arrayBuffer(),o=l.getDocument({data:d.slice(0)}),c=await o.promise,x=c.numPages,m=await i.PDFDocument.create();for(let e=1;e<=x;e++){let t=await c.getPage(e),s=t.getViewport({scale:a.scale}),l=document.createElement("canvas");l.width=Math.round(s.width),l.height=Math.round(s.height);let d=l.getContext("2d");d.fillStyle="#ffffff",d.fillRect(0,0,l.width,l.height),await t.render({canvasContext:d,canvas:l,viewport:s}).promise;let i=l.toDataURL("image/jpeg",a.jpegQuality).split(",")[1],n=Uint8Array.from(atob(i),e=>e.charCodeAt(0)),o=await m.embedJpg(n);m.addPage([l.width,l.height]).drawImage(o,{x:0,y:0,width:l.width,height:l.height}),r?.(e,x)}return m.save({useObjectStreams:!0})}async function x(e,t="light",s){return"light"===t?o(e):c(e,t,s)}function m(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`}var h=e.i(43682),g=e.i(11110);let u=["light","medium","high","maximum"],b={light:"border-green-400 bg-green-50 dark:bg-green-900/20 text-green-700 dark:text-green-300",medium:"border-blue-400 bg-blue-50 dark:bg-blue-900/20 text-blue-700 dark:text-blue-300",high:"border-orange-400 bg-orange-50 dark:bg-orange-900/20 text-orange-700 dark:text-orange-300",maximum:"border-red-400 bg-red-50 dark:bg-red-900/20 text-red-700 dark:text-red-300"},p={light:"ring-2 ring-green-500",medium:"ring-2 ring-blue-500",high:"ring-2 ring-orange-500",maximum:"ring-2 ring-red-500"};function j(){let e,i,[o,c]=(0,s.useState)(null),[j,k]=(0,s.useState)("medium"),[f,v]=(0,s.useState)(!1),[w,N]=(0,s.useState)(null),[y,C]=(0,s.useState)(null),[P,S]=(0,s.useState)(null),[B,T]=(0,s.useState)(null),{tl:M}=(0,g.useLanguage)(),F=M.compress.content,L=(0,s.useCallback)(e=>{c(e[0]),C(null),S(null),T(null)},[]),D=async()=>{if(o){v(!0),N(null),C(null),T(null);try{let e=await x(o,j,(e,t)=>N({current:e,total:t}));S(e),C({original:o.size,compressed:e.length})}catch(e){console.error(e),T(M.compress.error)}finally{v(!1),N(null)}}},$=n[j],z=M.compress.levels,A=y?(e=(y.original-y.compressed)/y.original*100)>0?M.compress.savingsFormat.replace("{n}",e.toFixed(1)):M.compress.alreadyOptimized:"";return(0,t.jsxs)(r.default,{title:M.compress.title,description:M.compress.desc,color:"green",icon:(0,t.jsx)("svg",{viewBox:"0 0 24 24",className:"w-7 h-7 text-white",fill:"none",stroke:"currentColor",strokeWidth:2,children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 14l-7 7m0 0l-7-7m7 7V3"})}),children:[o?(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 bg-green-50 dark:bg-green-900/20 border border-green-200 dark:border-green-800 rounded-xl px-4 py-3",children:[(0,t.jsx)("svg",{viewBox:"0 0 24 24",className:"w-5 h-5 text-red-500 flex-shrink-0",fill:"currentColor",children:(0,t.jsx)("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6z"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("p",{className:"text-sm font-medium text-slate-700 dark:text-slate-200 truncate",children:o.name}),(0,t.jsx)("p",{className:"text-xs text-slate-400 dark:text-slate-500",children:m(o.size)})]}),(0,t.jsx)("button",{onClick:()=>{c(null),C(null),S(null),T(null)},className:"text-slate-400 hover:text-red-500",children:(0,t.jsx)("svg",{viewBox:"0 0 24 24",className:"w-4 h-4",fill:"none",stroke:"currentColor",strokeWidth:2,children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})})})]}),!y&&(0,t.jsxs)("div",{className:"bg-white dark:bg-slate-800 border border-slate-200 dark:border-slate-700 rounded-xl p-4 space-y-3",children:[(0,t.jsx)("p",{className:"text-sm font-semibold text-slate-700 dark:text-slate-200",children:M.compress.levelSelect}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-2",children:u.map(e=>{let s=j===e;return(0,t.jsxs)("button",{onClick:()=>k(e),className:`text-left p-3 rounded-xl border-2 transition-all ${b[e]} ${s?p[e]:"opacity-60 hover:opacity-90"}`,children:[(0,t.jsx)("p",{className:"text-xs font-bold",children:z[e].label}),(0,t.jsx)("p",{className:"text-xs mt-0.5 opacity-80 leading-tight",children:z[e].desc})]},e)})}),!$.keepText&&(0,t.jsx)("p",{className:"text-xs text-amber-600 dark:text-amber-400 bg-amber-50 dark:bg-amber-900/20 border border-amber-200 dark:border-amber-800 rounded-lg px-3 py-2",children:M.compress.textWarning})]}),f&&(0,t.jsxs)("div",{className:"bg-white dark:bg-slate-800 border border-slate-200 dark:border-slate-700 rounded-xl p-4",children:[(0,t.jsxs)("div",{className:"flex justify-between text-xs text-slate-500 dark:text-slate-400 mb-2",children:[(0,t.jsx)("span",{children:w?M.compress.converting:M.compress.preparing}),w&&(0,t.jsxs)("span",{children:[w.current," / ",w.total," ",M.common.pages]})]}),(0,t.jsx)("div",{className:"bg-slate-100 dark:bg-slate-700 rounded-full h-2 overflow-hidden",children:w?(0,t.jsx)("div",{className:"h-2 bg-green-500 rounded-full transition-all duration-200",style:{width:`${w.current/w.total*100}%`}}):(0,t.jsx)("div",{className:"h-2 bg-green-400 rounded-full animate-pulse w-1/3"})})]}),y&&(0,t.jsxs)("div",{className:"bg-white dark:bg-slate-800 border border-green-200 dark:border-green-800 rounded-xl p-5",children:[(0,t.jsxs)("div",{className:"flex justify-between mb-2",children:[(0,t.jsx)("span",{className:"text-sm text-slate-500 dark:text-slate-400",children:M.compress.originalSize}),(0,t.jsx)("span",{className:"text-sm font-medium text-slate-700 dark:text-slate-200",children:m(y.original)})]}),(0,t.jsxs)("div",{className:"flex justify-between mb-2",children:[(0,t.jsx)("span",{className:"text-sm text-slate-500 dark:text-slate-400",children:M.compress.compressedSize}),(0,t.jsx)("span",{className:"text-sm font-medium text-green-700 dark:text-green-400",children:m(y.compressed)})]}),(0,t.jsx)("div",{className:"h-px bg-slate-100 dark:bg-slate-700 my-3"}),(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-sm font-semibold text-slate-700 dark:text-slate-200",children:M.compress.savings}),(0,t.jsx)("span",{className:"text-sm font-bold text-green-600 dark:text-green-400",children:A})]}),(i=Math.max(0,(y.original-y.compressed)/y.original*100),(0,t.jsx)("div",{className:"mt-3 bg-slate-100 dark:bg-slate-700 rounded-full h-2 overflow-hidden",children:(0,t.jsx)("div",{className:`h-2 rounded-full transition-all duration-500 ${i>0?"bg-green-500":"bg-slate-400"}`,style:{width:`${Math.max(2,i)}%`}})}))]}),B&&(0,t.jsx)("p",{className:"text-sm text-red-600 dark:text-red-400 bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg px-3 py-2",children:B}),(0,t.jsx)("div",{className:"flex gap-3",children:y?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:()=>{P&&o&&(0,h.downloadBytes)(P,o.name.replace(/\.pdf$/i,"_compressed.pdf"))},className:"flex-1 py-3 bg-green-600 text-white font-semibold rounded-xl hover:bg-green-700 transition-colors whitespace-nowrap",children:M.compress.downloadBtn}),(0,t.jsx)("button",{onClick:()=>{C(null),S(null),T(null)},className:"px-4 py-3 border border-slate-200 dark:border-slate-700 text-slate-600 dark:text-slate-300 rounded-xl hover:bg-slate-50 dark:hover:bg-slate-800 transition-colors whitespace-nowrap",children:M.compress.recompressBtn}),(0,t.jsx)("button",{onClick:()=>{c(null),C(null),S(null),T(null)},className:"px-4 py-3 border border-slate-200 dark:border-slate-700 text-slate-600 dark:text-slate-300 rounded-xl hover:bg-slate-50 dark:hover:bg-slate-800 transition-colors whitespace-nowrap",children:M.compress.reset})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:D,disabled:f,className:"flex-1 py-3 bg-green-600 text-white font-semibold rounded-xl hover:bg-green-700 disabled:opacity-50 transition-colors flex items-center justify-center gap-2 whitespace-nowrap",children:f?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("svg",{className:"w-4 h-4 animate-spin flex-shrink-0",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M4 12a8 8 0 018-8v8z"})}),M.compress.processing]}):M.compress.compressBtn.replace("{level}",z[j].label)}),(0,t.jsx)("button",{onClick:()=>c(null),className:"px-4 py-3 border border-slate-200 dark:border-slate-700 text-slate-600 dark:text-slate-300 rounded-xl hover:bg-slate-50 dark:hover:bg-slate-800 transition-colors",children:M.compress.reset})]})}),y&&(0,t.jsx)(l.default,{})]}):(0,t.jsx)(a.default,{onFiles:L,label:M.compress.dropLabel,color:"green"}),(0,t.jsxs)("div",{className:"space-y-12 mt-12",children:[(0,t.jsx)(d.default,{title:F.howTo.title,children:(0,t.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-5",children:F.howTo.steps.map((e,s)=>(0,t.jsxs)("div",{className:"bg-white dark:bg-slate-800 border border-slate-200 dark:border-slate-700 rounded-xl p-5",children:[(0,t.jsxs)("div",{className:"font-bold text-lg text-slate-400 dark:text-slate-500 mb-2",children:["0",s+1]}),(0,t.jsx)("h3",{className:"font-semibold text-slate-800 dark:text-slate-100 mb-1",children:e.title}),(0,t.jsx)("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:e.desc})]},s))})}),(0,t.jsxs)(d.default,{title:F.about.title,children:[(0,t.jsx)("p",{className:"text-slate-500 dark:text-slate-400 mb-6",children:F.about.description}),(0,t.jsx)("div",{className:"space-y-5",children:F.about.methods.map((e,s)=>(0,t.jsxs)("div",{className:"bg-slate-50 dark:bg-slate-800/50 border border-slate-200 dark:border-slate-700 rounded-xl p-5",children:[(0,t.jsx)("h3",{className:"font-semibold text-slate-800 dark:text-slate-100 mb-1",children:e.title}),(0,t.jsx)("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:e.desc})]},s))})]}),(0,t.jsx)(d.default,{title:F.faq.title,children:(0,t.jsx)("div",{className:"space-y-4",children:F.faq.items.map((e,s)=>(0,t.jsxs)("details",{className:"bg-slate-50 dark:bg-slate-800/50 border border-slate-200 dark:border-slate-700 rounded-xl p-4 cursor-pointer",children:[(0,t.jsx)("summary",{className:"font-semibold text-slate-800 dark:text-slate-100",children:e.q}),(0,t.jsx)("p",{className:"text-sm text-slate-500 dark:text-slate-400 mt-2",children:e.a})]},s))})})]})]})}e.s(["default",()=>j],93997)},25834,e=>{e.v(t=>Promise.all(["static/chunks/46b334ca3410349e.js","static/chunks/d125a3694ba40e5d.js"].map(t=>e.l(t))).then(()=>t(18657)))},95004,e=>{e.v(t=>Promise.all(["static/chunks/46b334ca3410349e.js","static/chunks/b383336e3942b8bd.js"].map(t=>e.l(t))).then(()=>t(71315)))}]);