1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4639],{46444:function(e,t,r){(window.__NEXT_P=window.__NEXT_P||[]).push(["/free-tools/combine-merge-powerpoint",function(){return r(38279)}])},8145:function(e,t,r){"use strict";r.d(t,{I:function(){return i}});var s=r(43577),l=r(57242),o=r(2774);let n=()=>(0,s.jsx)("div",{className:"absolute inset-0 overflow-hidden rounded-lg bg-gradient-to-br from-gray-100 via-white to-gray-100",children:(0,s.jsx)("div",{className:"absolute inset-0 animate-pulse",children:(0,s.jsx)("div",{className:"h-full w-full p-4",children:(0,s.jsxs)("div",{className:"h-full rounded-md border border-gray-200/80 bg-white/80 p-3 shadow-sm",children:[(0,s.jsx)("div",{className:"h-3 w-1/3 rounded bg-gray-200"}),(0,s.jsxs)("div",{className:"mt-3 space-y-2",children:[(0,s.jsx)("div",{className:"h-2 rounded bg-gray-100"}),(0,s.jsx)("div",{className:"h-2 w-5/6 rounded bg-gray-100"}),(0,s.jsx)("div",{className:"h-2 w-2/3 rounded bg-gray-100"})]}),(0,s.jsxs)("div",{className:"mt-4 grid grid-cols-3 gap-2",children:[(0,s.jsx)("div",{className:"h-10 rounded bg-gray-100"}),(0,s.jsx)("div",{className:"h-10 rounded bg-gray-100"}),(0,s.jsx)("div",{className:"h-10 rounded bg-gray-100"})]})]})})})}),i=({file:e})=>{let t=(0,l.useRef)(null),r=(0,l.useRef)(null),i=(0,l.useRef)(null),[a,d]=(0,l.useState)("loading");return(0,l.useEffect)(()=>{let s=!1,l=(0,o.yZ)(e),n=e=>{let s=r.current,l=t.current;if(!s||!l)return;s.innerHTML=e;let n=()=>{let e=t.current,s=r.current;if(!e||!s)return;let l=s.firstElementChild;if(!l)return;let n=e.offsetWidth/o.b4||1;l.style.transform=`scale(${n})`,l.style.transformOrigin="top left",e.style.height=`${Math.round(o.mS*n)}px`};n(),i.current?.disconnect();let a=new ResizeObserver(()=>{requestAnimationFrame(n)});t.current&&a.observe(t.current),i.current=a,d("ready")};return l.requestRender(0,()=>s).then(e=>{!s&&e&&n(e)}).catch(e=>{console.error("Failed to render PPTX preview:",e),s||d("error")}),()=>{s=!0,l.cancelRender(0),i.current?.disconnect(),i.current=null,(0,o.YE)(e)}},[e]),(0,s.jsxs)("div",{ref:t,className:"relative w-full overflow-hidden rounded-lg border border-gray-200 bg-gray-50 shadow-sm",style:{aspectRatio:"16 / 9"},children:[(0,s.jsx)("div",{ref:r,className:"absolute inset-0","aria-hidden":"true"}),"ready"!==a&&(0,s.jsx)(n,{})]})}},2774:function(e,t,r){"use strict";r.d(t,{YE:function(){return a},b4:function(){return s},mS:function(){return l},yZ:function(){return i}});let s=960,l=540;class o{constructor(e){this.host=null,this.previewer=null,this.urgentQueue=[],this.eagerQueue=[],this.processing=!1,this.destroyed=!1,this.htmlCache=new Map,this.loadPromise=this.load(e)}async load(e){let{init:t}=await Promise.all([r.e(2182),r.e(6673),r.e(3953)]).then(r.bind(r,63953));if(this.destroyed)return;let o=document.createElement("div");o.style.cssText=`position:absolute;left:-9999px;top:0;width:${s}px;height:${l}px;overflow:hidden;`,document.body.appendChild(o),this.host=o;let n=t(o,{width:s,height:l}),i=await e.arrayBuffer();if(this.destroyed||(await n.load(i),this.destroyed)){n.destroy?.(),document.body.contains(o)&&document.body.removeChild(o),this.host=null;return}let a=n.htmlRender;if(a&&"function"==typeof a._renderBackground){let e=a._renderBackground.bind(a);a._renderBackground=(...t)=>{try{e(...t)}catch{}}}this.previewer=n,this.processQueue()}requestRender(e,t){return this.htmlCache.has(e)?Promise.resolve(this.htmlCache.get(e)):new Promise((r,s)=>{this.eagerQueue=this.eagerQueue.filter(t=>t.slideIndex!==e),this.urgentQueue.push({slideIndex:e,resolve:r,reject:s,isCancelled:t,urgent:!0}),this.processQueue()})}cancelRender(e){this.urgentQueue=this.urgentQueue.filter(t=>t.slideIndex!==e),this.eagerQueue=this.eagerQueue.filter(t=>t.slideIndex!==e)}preRenderAll(e){for(let t=0;t<e;t++)this.htmlCache.has(t)||this.urgentQueue.some(e=>e.slideIndex===t)||this.eagerQueue.some(e=>e.slideIndex===t)||this.eagerQueue.push({slideIndex:t,resolve:()=>{},reject:()=>{},isCancelled:()=>this.destroyed,urgent:!1});this.processQueue()}async processQueue(){if(!this.processing&&(await this.loadPromise,!this.processing&&this.previewer&&this.host&&!this.destroyed)){for(this.processing=!0;!1==(!this.urgentQueue.length&&!this.eagerQueue.length)&&!this.destroyed;){let e=this.urgentQueue.shift()??this.eagerQueue.shift();if(e.isCancelled())e.resolve("");else try{if(this.htmlCache.has(e.slideIndex))e.resolve(this.htmlCache.get(e.slideIndex));else{this.previewer.renderSingleSlide(e.slideIndex);let t=this.host.innerHTML;this.htmlCache.set(e.slideIndex,t),e.resolve(t)}}catch(t){e.reject(t)}await new Promise(e=>{"undefined"!=typeof requestIdleCallback?requestIdleCallback(()=>e()):setTimeout(e,16)})}this.processing=!1}}destroy(){this.destroyed=!0,this.urgentQueue=[],this.eagerQueue=[],this.htmlCache.clear();try{this.previewer?.destroy?.()}catch{}this.previewer=null,this.host&&document.body.contains(this.host)&&document.body.removeChild(this.host),this.host=null}}let n=new WeakMap;function i(e){n.has(e)||n.set(e,{instance:new o(e),refCount:0});let t=n.get(e);return t.refCount++,t.instance}function a(e){let t=n.get(e);t&&(t.refCount--,t.refCount<=0&&(t.instance.destroy(),n.delete(e)))}},11552:function(e,t,r){"use strict";async function s(e){try{let t=(await r.e(6673).then(r.t.bind(r,6673,23))).default;if(!(await t.loadAsync(e)).files["ppt/presentation.xml"])return{valid:!1,error:`"${e.name}" is not a valid .pptx file.`};return{valid:!0}}catch{return{valid:!1,error:`"${e.name}" is not a valid .pptx file - it may be corrupted.`}}}async function l(e){let t=await Promise.all(e.map(s)),r=[],l=[];for(let s=0;s<t.length;s++){let o=t[s];o.valid?r.push(e[s]):l.push(o.error)}return{validFiles:r,errors:l}}r.d(t,{B:function(){return l},q:function(){return s}})},38279:function(e,t,r){"use strict";r.r(t),r.d(t,{__N_SSG:function(){return _},default:function(){return W}});
1var s=r(43577),l=r(76473),o=r(5724),n=r(5762),i=r(40514),a=r(52448),d=r(26050),u=r(39230),c=r(48471),m=r(96818),h=r(71935),f=r(40249),p=r(87404),g=r(99487),x=r(57242),w=r(78865),y=r(81417),b=r(23341),v=r(8145),j=r(94434),P=r(70056),N=r(11552),k=r(75409);let T="100 MB",C="powerpoint_merge",M=({children:e,...t})=>{let[r,l]=(0,x.useState)(!1);return((0,x.useEffect)(()=>{let e=requestAnimationFrame(()=>l(!0));return()=>{cancelAnimationFrame(e),l(!1)}},[]),r)?(0,s.jsx)(y.bK,{...t,children:e}):null};function A(){let{t:e}=(0,o.Z)("tools"),[t,r]=(0,x.useState)([]),[l,n]=(0,x.useState)(null),[i,a]=(0,x.useState)(!1),[d,u]=(0,x.useState)(0),[m,h]=(0,x.useState)("merged-presentation"),[f,A]=(0,x.useState)(!1),[L,q]=(0,x.useState)(null),F=(0,x.useRef)(null),E=(0,x.useRef)(null),I=(0,x.useRef)(null),z=(0,x.useRef)(null),R=(0,x.useRef)(null),S=e=>e.replace(/\.pptx$/i,""),B="development"===k.env.NEXT_PUBLIC_APP_ENV?(0,p.jq)("main"):(0,p.CG)("main").REAL,D=e("merge.failedFilesRetry",null,{default:"The files could not be merged. Please check the files and try again, or re-upload them."}),_=t=>t.some(e=>e.errors.some(e=>"file-too-large"===e.code))?e("merge.totalSizeError",{size:T},{default:"Total upload size must be {{size}} or smaller."}):t.some(e=>e.errors.some(e=>"file-invalid-type"===e.code))?e("invalidFileTypeError",null,{default:"Only .pptx files are supported."}):e("uploadError",null,{default:"Some files could not be added. Please try again."}),W=(0,x.useCallback)(async(s,l)=>{l.length>0?q(_(l)):q(null);let o=20-t.length;if(o<=0){q(e("merge.maxFilesError",{count:20},{default:"You can upload up to {{count}} files at a time."}));return}let n=s.slice(0,o);if(s.length>o&&q(e("merge.maxFilesError",{count:20},{default:"You can upload up to {{count}} files at a time."})),0===n.length)return;if(t.reduce((e,t)=>e+t.size,0)+n.reduce((e,t)=>e+t.size,0)>102760448){q(e("merge.totalSizeError",{size:T},{default:"Total upload size must be {{size}} or smaller."}));return}let{validFiles:i,errors:a}=await (0,N.B)(n);if(!(a.length>0)||(q(a[0]),0!==i.length)){if(r(e=>[...e,...i.map(e=>({id:Math.random().toString(36).substr(2,9),file:e,name:e.name,size:e.size,status:"pending"}))]),(0,P.hs)(g.Z.FREE_TOOL_FILES_ADDED,C,{source:f?"add_more_modal":"dropzone",acceptedFileCount:i.length,rejectedFileCount:l.length,totalFileCountAfterAdd:t.length+i.length,...(0,P.Ul)(i)}),t.length+i.length>=4){let e=()=>{if(!E.current)return;let e=.62*window.innerHeight,t=E.current.getBoundingClientRect().top+window.scrollY-e;window.scrollTo({top:t,behavior:"smooth"})};z.current&&window.clearTimeout(z.current),R.current&&window.clearTimeout(R.current),z.current=window.setTimeout(()=>{e()},450),R.current=window.setTimeout(()=>{e()},1e3)}A(!1)}},[t.length,f,e]);(0,x.useEffect)(()=>()=>{z.current&&window.clearTimeout(z.current),R.current&&window.clearTimeout(R.current)},[]);let{getRootProps:Q,getInputProps:O,isDragActive:U}=(0,w.uI)({onDrop:W,accept:{"application/vnd.openxmlformats-officedocument.presentationml.presentation":[".pptx"]},multiple:!0}),X=e=>{if(0===e)return"0 Bytes";let t=Math.floor(Math.log(e)/Math.log(1024));return Math.round(e/Math.pow(1024,t)*100)/100+" "+["Bytes","KB","MB","GB"][t]},Y=e=>{r(t=>t.filter(t=>t.id!==e))},$=()=>{t.length>0&&(0,P.hs)(g.Z.FREE_TOOL_FILES_CLEARED,C,(0,P.Ul)(t.map(e=>e.file))),r([]),n(null),u(0),q(null)},H=async()=>{if(t.length<2){alert(e("merge.needTwoFiles"));return}if(t.reduce((e,t)=>e+t.size,0)>102760448){let t=e("merge.totalSizeError",{size:T},{default:"Total upload size must be {{size}} or smaller."});q(t),alert(t);return}let s=Date.now();try{(0,P.hs)(g.Z.FREE_TOOL_RUN_STARTED,C,{...(0,P.Ul)(t.map(e=>e.file)),outputFileName:m}),u(0),a(!0),r(e=>e.map(e=>({...e,status:"processing",errorMessage:void 0})));let l=new FormData;t.forEach(e=>{l.append("files",e.file)}),l.append("outputFileName",m),Object.entries((0,P.RW)()).forEach(([e,t])=>{l.append(e,t)});let o=await fetch(`${B}/powerpoint/merge`,{method:"POST",body:l});if(!o.ok)throw Error(`Merge failed: ${o.statusText}`);let i=await o.json();if(!i.success||!i.downloadUrl)throw Error(e("merge.mergeFailed"));u(100),n(i.downloadUrl),r(e=>e.map(e=>({...e,status:"completed"}))),(0,P.hs)(g.Z.FREE_TOOL_RUN_COMPLETED,C,{...(0,P.Ul)(t.map(e=>e.file)),durationMs:Date.now()-s,outputFileName:m,mergedSizeBytes:i.mergedSize||0,responseFileCount:i.fileCount||t.length})}catch(l){console.error("Merge error:",l),(0,P.hs)(g.Z.FREE_TOOL_RUN_FAILED,C,{...(0,P.Ul)(t.map(e=>e.file)),durationMs:Date.now()-s,outputFileName:m,errorMessage:l instanceof Error?l.message:e("merge.mergeFailed")}),r(e=>e.map(e=>({...e,status:"error",errorMessage:D})))}finally{a(!1)}},Z=async()=>{l&&((0,P.hs)(g.Z.FREE_TOOL_DOWNLOAD_CLICKED,C,{...(0,P.Ul)(t.map(e=>e.file)),outputFileName:m}),await (0,j.f)(l,"merge"))},V=t.length>=20,G=t.reduce((e,t)=>
1e+t.size,0),K=t.some(e=>"error"===e.status);return(0,x.useEffect)(()=>{if(!l||t.length<4)return;let e=()=>{if(!I.current)return;let e=.62*window.innerHeight,t=I.current.getBoundingClientRect().top+window.scrollY-e;window.scrollTo({top:t,behavior:"smooth"})},r=window.setTimeout(e,450),s=window.setTimeout(e,1e3);return()=>{window.clearTimeout(r),window.clearTimeout(s)}},[t.length,l]),(0,x.useEffect)(()=>{if(!i||t.length<4||!F.current)return;let e=F.current.getBoundingClientRect().top+window.scrollY-96;window.scrollTo({top:e,behavior:"smooth"})},[t.length,i]),(0,x.useEffect)(()=>{if(!i)return;let e=Math.max(G/1048576,1),t=Math.min(e<=60?Math.max(5e3,Math.min(5e3+300*e,18e3)):18e3+(e-60)*550,4e4),r=Date.now(),s=window.setInterval(()=>{let e=Math.min((Date.now()-r)/t*90,90);u(t=>Math.max(t,e))},100);return()=>{window.clearInterval(s)}},[i,G]),(0,s.jsx)(c.W,{className:"pb-24",children:(0,s.jsxs)("div",{className:"mx-auto max-w-4xl",children:[0===t.length?(0,s.jsxs)("div",{...Q(),className:`relative rounded-2xl border-2 border-dashed transition-all ${U?"border-primary-500 bg-primary-50":"border-gray-300 bg-white hover:border-primary-400 hover:bg-gray-50"} cursor-pointer p-12 text-center`,children:[(0,s.jsx)("input",{...O()}),(0,s.jsxs)("div",{className:"mx-auto max-w-md space-y-4",children:[(0,s.jsx)("div",{className:"mx-auto flex h-16 w-16 items-center justify-center rounded-full bg-primary-100",children:(0,s.jsx)("svg",{className:"h-8 w-8 text-primary-600",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12"})})}),(0,s.jsxs)("div",{children:[(0,s.jsxs)("p",{className:"text-lg font-semibold text-gray-900",children:[(0,s.jsx)("span",{className:"md:hidden",children:e("tapToUpload",null,{default:"Tap to upload"})}),(0,s.jsx)("span",{className:"hidden md:inline",children:U?e("dropHere"):e("dragDrop")})]}),(0,s.jsx)("p",{className:"mt-1 hidden text-sm text-gray-500 md:block",children:e("orClickBrowse")})]}),(0,s.jsxs)("div",{className:"flex items-center justify-center gap-2 text-xs text-gray-400",children:[(0,s.jsx)("span",{children:e("supportedFormats")}),(0,s.jsx)("span",{children:"â¢"}),(0,s.jsx)("span",{children:e("merge.multipleRequired")})]}),L&&(0,s.jsx)("p",{className:"text-sm font-medium text-red-600",children:L})]})]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("input",{...O()}),f&&(0,s.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4",onClick:e=>{e.target===e.currentTarget&&A(!1)},children:(0,s.jsxs)("div",{className:"w-full max-w-lg rounded-2xl bg-white p-6 shadow-xl",children:[(0,s.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,s.jsx)("h3",{className:"text-lg font-semibold text-gray-900",children:e("addMoreTitle")}),(0,s.jsx)("button",{onClick:()=>A(!1),className:"text-gray-400 hover:text-gray-600",children:(0,s.jsx)("svg",{className:"h-5 w-5",fill:"currentColor",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(0,s.jsxs)("div",{...Q(),className:`rounded-xl border-2 border-dashed p-10 text-center transition-all ${U?"border-primary-500 bg-primary-50":"border-gray-300 bg-gray-50 hover:border-primary-400 hover:bg-primary-50"} cursor-pointer`,children:[(0,s.jsx)("input",{...O()}),(0,s.jsx)("div",{className:"mx-auto flex h-12 w-12 items-center justify-center rounded-full bg-primary-100",children:(0,s.jsx)("svg",{className:"h-6 w-6 text-primary-600",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12"})})}),(0,s.jsxs)("p",{className:"mt-3 text-sm font-semibold text-gray-900",children:[(0,s.jsx)("span",{className:"md:hidden",children:e("tapToUpload",null,{default:"Tap to upload"})}),(0,s.jsx)("span",{className:"hidden md:inline",children:U?e("dropHere"):e("dragDrop")})]}),(0,s.jsx)("p",{className:"mt-1 hidden text-xs text-gray-500 sm:block",children:e("orClickBrowse")}),(0,s.jsx)("p",{className:"mt-2 text-xs text-gray-400",children:e("supportedFormats")}),L&&(0,s.jsx)("p",{className:"mt-3 text-sm font-medium text-red-600",children:L})]})]})})]}),t.length>0&&(0,s.jsxs)("div",{ref:F,className:"mt-8 overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-sm",children:[(0,s.jsx)("div",{className:"border-b border-gray-200 bg-white px-6 py-5",children:(0,s.jsxs)("div",{className:"flex flex-col gap-4 lg:flex-row lg:items-center lg:justify-between",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-lg font-semibold text-gray-900",children:l?e("merge.mergedFiles",{count:t.length},{default:"Merged Files ({{count}})"}):e("merge.filesToMerge",{count:t.length})}),(0,s.jsx)("p",{className:"mt-1 text-sm text-gray-500",children:K?D:l?e("merge.reviewAfterMerge",null,{default:"Your presentations have been merged. Review the files below or download the final deck."}):e("merge.reorderHelper",null,{default:"Drag the cards into the order you want them to appear in the final deck."})})]}),(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[!l&&(0,s.jsx)(b.T,{show:V,disabledReason:e("maxFilesReached",null,{default:"Maximum number of files reached"}),children:(0,s.jsxs)("button",{onClick:()=>A(!0),disabled:i||V,className:"flex items-center gap-1.5 whitespace-nowrap rounded-lg border border-primary-200 bg-white px-4 py-2 text-sm font-medium text-primary-700 shadow-sm transition hover:border-primary-300 hover:bg-primary-50 disabled:cursor-not-allowed disabled:opacity-40",children:[(0,s.jsx)("svg",{className:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})}),e("addMore")]})}),(0,s.jsx)("button",{onClick:$,disabled:i,className:"whitespace-nowrap text-sm font-medium text-gray-600 transition hover:text-gray-900 disabled:cursor-not-allowed disabled:opacity-40",children:e("clearAll")})]})]})}),(0,s.jsxs)("div",{className:`relative ${i?"max-h-[calc(100vh-18rem)] min-h-[220px] overflow-hidden":""}`,children:[(0,s.jsx)(y.Z5,{onDragEnd:e=>{if(!e.destination)return;let s=Array.from(t),[l]=s.splice(e.source.index,1);s.splice(e.destination.index,0,l),r(s)},children:(0,s.jsx)(M,{droppableId:"files",children:(r,o)=>(0,s.jsxs)("div",{...r.droppableProps,ref:r.innerRef,className:`flex flex-col gap-4 bg-white p-6 ${o.isDraggingOver?"bg-gray-50":""}`,children:[t.map((t,r)=>(0,s.jsx)(y._l,{draggableId:t.id,index:r,isDragDisabled:i||null!==l,children:(r,o)=>(0,s.jsx)("div",{ref:r.innerRef,...r.draggableProps,...r.dragHandleProps,style:{...r.draggableProps.style,...o.isDropAnimating?{transitionDuration:"0.001s"}:{}},className:`overflow-hidden rounded-xl border border-gray-200 bg-white transition-shadow ${o.isDragging?"shadow-xl ring-2 ring-primary-500":"shadow-sm hover:border-gray-300"}`,children:(0,s.jsxs)("div",{className:"flex flex-col gap-4 p-5 md:flex-row md:items-center",children:[(0,s.jsx)("div",{className:"flex flex-col items-center gap-3",children:(0,s.jsx)("div",{className:`flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-gray-100 text-gray-700 transition ${i||l?"curs
1or-not-allowed opacity-50":"cursor-grab hover:bg-gray-100 active:cursor-grabbing"}`,children:(0,s.jsx)("svg",{className:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 8h16M4 16h16"})})})}),(0,s.jsxs)("div",{className:"relative w-full max-w-44 flex-shrink-0",children:[(0,s.jsx)(v.I,{file:t.file}),"completed"===t.status&&(0,s.jsx)("div",{className:"absolute right-2 top-2 rounded-md bg-green-600 p-1 text-white shadow-sm",children:(0,s.jsx)("svg",{className:"h-4 w-4",fill:"currentColor",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})})}),"error"===t.status&&(0,s.jsx)("div",{className:"absolute right-2 top-2 rounded-md bg-red-600 p-1 text-white shadow-sm",children:(0,s.jsx)("svg",{className:"h-4 w-4",fill:"currentColor",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{fillRule:"evenodd",d:"M18 10A8 8 0 112 10a8 8 0 0116 0zm-7-4a1 1 0 10-2 0v4a1 1 0 102 0V6zm-1 8a1.25 1.25 0 100-2.5A1.25 1.25 0 0010 14z",clipRule:"evenodd"})})})]}),(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsx)("div",{className:"flex flex-wrap items-start gap-2",children:(0,s.jsx)("p",{className:"line-clamp-2 text-base font-semibold text-gray-900",children:S(t.name)})}),(0,s.jsx)("div",{className:"mt-3 flex flex-wrap items-center gap-2 text-xs",children:(0,s.jsx)("span",{className:"rounded-md bg-gray-100 px-2.5 py-1 font-medium text-gray-600",children:X(t.size)})}),t.errorMessage&&"error"!==t.status&&(0,s.jsx)("p",{className:"mt-3 text-xs text-red-600",children:t.errorMessage})]}),(0,s.jsxs)("div",{className:"flex flex-col items-start gap-3 md:items-end",children:["completed"===t.status&&(0,s.jsxs)("div",{className:"flex items-center gap-1 rounded-md bg-green-50 px-3 py-1.5 text-xs font-medium text-green-700",children:[(0,s.jsx)("svg",{className:"h-4 w-4",fill:"currentColor",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})}),e("merge.merged")]}),"error"===t.status&&(0,s.jsx)("div",{className:"max-w-64 text-right text-xs font-medium text-red-600",children:D}),!l&&(0,s.jsx)("button",{onClick:()=>Y(t.id),disabled:i,className:`flex-shrink-0 rounded-md p-2 transition disabled:cursor-not-allowed disabled:opacity-50 ${"error"===t.status?"text-red-400 hover:bg-red-50 hover:text-red-600":"text-gray-400 hover:bg-gray-100 hover:text-gray-600"}`,children:(0,s.jsx)("svg",{className:"h-5 w-5",fill:"currentColor",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]})]})})},t.id)),o.isUsingPlaceholder?(0,s.jsx)("div",{className:"contents",children:r.placeholder}):r.placeholder]})})}),i&&(0,s.jsxs)("div",{className:"absolute inset-0 z-10 flex flex-col items-center justify-center rounded-xl bg-white/95 backdrop-blur-sm",children:[(0,s.jsxs)("div",{className:"mb-4 flex items-center gap-3",children:[(0,s.jsx)("span",{className:"flex aspect-square items-center justify-center rounded-xl bg-primary-100 p-1 text-primary-600",children:(0,s.jsx)("svg",{className:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4.5v15m7.5-7.5h-15"})})}),(0,s.jsx)("p",{className:"text-sm font-semibold text-gray-700",children:e("merge.merging")})]}),(0,s.jsx)("div",{className:"w-72",children:(0,s.jsx)("div",{className:"h-2.5 w-full overflow-hidden rounded-full bg-gray-200",children:(0,s.jsx)("div",{className:"h-full rounded-full bg-primary-600 transition-[width] duration-200 ease-out",style:{width:`${d}%`}})})})]})]}),!l&&!i&&(0,s.jsxs)("div",{className:"border-t border-gray-200 px-6 py-4",children:[(0,s.jsx)("label",{className:"mb-2 block text-sm font-medium text-gray-900",children:e("merge.outputFileName")}
1),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("input",{type:"text",value:m,onChange:e=>h(e.target.value),placeholder:"merged-presentation",className:"block flex-1 rounded-md border border-gray-300 px-3 py-2 text-sm focus:border-primary-500 focus:outline-none focus:ring-2 focus:ring-primary-500"}),(0,s.jsx)("span",{className:"text-sm text-gray-500",children:".pptx"})]})]}),l?(0,s.jsxs)("div",{ref:I,className:"border-t border-gray-200 bg-green-50 px-6 py-4",children:[(0,s.jsxs)("div",{className:"mb-3 flex items-center gap-2 text-sm text-green-800",children:[(0,s.jsx)("svg",{className:"h-5 w-5",fill:"currentColor",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})}),(0,s.jsx)("span",{className:"font-medium",children:e("merge.mergeSuccess")})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)("button",{onClick:Z,className:"w-full rounded-md bg-green-600 px-6 py-3 text-base font-semibold text-white shadow-sm transition-colors hover:bg-green-700",children:(0,s.jsxs)("span",{className:"flex items-center justify-center gap-2",children:[(0,s.jsx)("svg",{className:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"})}),e("merge.downloadMerged")]})}),(0,s.jsx)("button",{onClick:$,className:"w-full rounded-md border border-gray-300 bg-white px-6 py-2 text-sm font-medium text-gray-700 hover:bg-gray-50",children:e("merge.startNew")})]})]}):i?null:(0,s.jsxs)("div",{ref:E,className:"border-t border-gray-200 px-6 py-4",children:[(0,s.jsx)("button",{onClick:H,disabled:t.length<2||i,className:"w-full rounded-md bg-primary-600 px-6 py-3 text-base font-semibold text-white shadow-sm transition-colors hover:bg-primary-700 focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2 disabled:cursor-not-allowed disabled:bg-gray-300 disabled:text-gray-500",children:e("merge.mergeFiles",{count:t.length})}),1===t.length&&(0,s.jsx)("p",{className:"mt-2 text-center text-xs text-gray-500",children:e("merge.needMoreFiles")})]})]})]})})}var L=r(57330),q=r(51109),F=r(95942),E=r(75333),I=r(87912),z=r(94817),R=r(10433),S=r(10738);let B=({className:e})=>(0,s.jsx)("svg",{className:e,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 9V4.5M9 9H4.5M9 9L3.75 3.75M9 15v4.5M9 15H4.5M9 15l-5.25 5.25M15 9h4.5M15 9V4.5M15 9l5.25-5.25M15 15h4.5M15 15v4.5m0-4.5l5.25 5.25"})}),D=({className:e})=>(0,s.jsx)("svg",{className:e,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4.5v15m7.5-7.5h-15"})});var _=!0,W=()=>{let{t:e}=(0,o.Z)("tools"),{locale:t}=(0,n.useRouter)(),r=[{step:"1",visual:(0,s.jsx)(I.Is,{fileType:"multi"}),title:e("merge.howItWorks.step1.title",null,{default:"Upload Files"}),description:e("merge.howItWorks.step1.description",null,{default:"Upload 2 or more PowerPoint presentations you want to combine"}),icon:(0,s.jsx)("svg",{className:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12"})})},{step:"2",visual:(0,s.jsx)(I.kl,{}),title:e("merge.howItWorks.step2.title",null,{default:"Arrange Order"}),description:e("merge.howItWorks.step2.description",null,{default:"Drag and drop to reorder files in your preferred sequence"}),icon:(0,s.jsx)("svg",{className:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M7 16V4m0 0L3 8m4-4l4 4m6 0v12m0 0l4-4m-4 4l-4-4"})})},{step:"3",visual:(0,s.jsx)(I.YP,{resultType:"slides"}),title:e("merge.howItWorks.step3.title",null,{default:"Download"}),description:e("merge.howItWorks.step3.description",null,{default:"Click merge and download your combined presentation instantly"}),icon:(0,s.jsx)("svg",{className:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"})})}],p=[{title:e("merge.features.secure.title",null,{default:"100% Secure"}),description:e("merge.features.secure.description",null,{default:"Your files are processed securely. Generated downloads are available for up to 24 hours, then automatically deleted."}),icon:(0,s.jsx)("svg",{className:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z"})})},{title:e("merge.features.order.title",null,{default:"Custom Order"}),description:e("merge.features.order.description",null,{default:"Drag and drop to arrange slides in any order you want."}),icon:(0,s.jsx)("svg",{className:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M7 16V4m0 0L3 8m4-4l4 4m6 0v12m0 0l4-4m-4 4l-4-4"})})},{title:e("merge.features.fast.title",null,{default:"Lightning Fast"}),description:e("merge.features.fast.description",null,{default:"Merge multiple presentations in seconds with our optimized tool."}),icon:(0,s.jsx)("svg",{className:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 10V3L4 14h7v7l9-11h-7z"})})},{title:e("merge.features.preserves.title",null,{default:"Preserves Formatting"}),description:e("merge.features.preserves.description",null,{default:"All slides, animations, and formatting are preserved perfectly."}),icon:(0,s.jsx)("svg",{className:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})})},{title:e("merge.features.handoff.title",null,{default:"Cleaner team handoffs"}),description:e("merge.features.handoff.description",null,{default:"Bring team sections into one deck before reviews, workshops, or client delivery without rebuilding slides manually."}),icon:(0,s.jsx)("svg",{className:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"})})},{title:e("merge.features.anyDevice.title",null,{default:"Any Device"}),description:e("merge.features.anyDevice.description",null,{default:"Works seamlessly on desktop, tablet, and mobile browsers."}),icon:(0,s.jsx)("svg",{className:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9.75 17L9 20l-1 1h8l-1-1-.75-3M3 13h18M5 17h14a2 2 0 002-2V5a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"})})}],g=[{href:"/free-tools/powerpoint-compressor",title:e("powerPointCompressor.title",null,{default:"PowerPoint Compressor"}),description:e("powerPointCompressor.description",null,{default:"Reduce your PowerPoint file size by up to 90% without losing quality. Compress multiple presentations at once for faster sharing and storage."}),icon:(0,s.jsx)(B,{className:"h-6 w-6"}
1),cta:e("tryNow",null,{default:"Try Now"})},{href:"/free-tools/powerpoint-to-pdf",title:e("pptToPdf.title",null,{default:"PowerPoint to PDF"}),description:e("pptToPdf.description",null,{default:"Convert PowerPoint presentations to PDF files instantly."}),icon:(0,s.jsx)(i.Z,{className:"h-6 w-6"}),cta:e("tryNow",null,{default:"Try Now"})},{href:"/free-tools/powerpoint-to-text",title:e("pptToText.title",null,{default:"Extract Text from PowerPoint"}),description:e("pptToText.description",null,{default:"Pull all text out of your PowerPoint slides into a plain text file."}),icon:(0,s.jsx)(a.Z,{className:"h-6 w-6"}),cta:e("tryNow",null,{default:"Try Now"})},{href:"/free-tools",title:e("browseAll.heading",null,{default:"All Free Tools"}),description:e("browseAll.subheading",null,{default:"Browse all free SlidesAI tools for PowerPoint."}),icon:(0,s.jsx)(d.Z,{className:"h-6 w-6"}),cta:e("browseAll.cta",null,{default:"Browse all"})}],x=[{question:e("merge.faqs.freeQuestion",null,{default:"Is this PowerPoint merger free?"}),answer:e("merge.faqs.freeAnswer",null,{default:"Yes. The merge tool is completely free to use with no sign-up or account required. There is no limit on how often you can use it."})},{question:e("merge.faqs.multipleFilesQuestion",null,{default:"Can I merge multiple PowerPoint files at once?"}),answer:e("merge.faqs.multipleFilesAnswer",null,{default:"Yes. You can upload and merge up to 20 PPTX files in one batch, with a combined upload size of up to 100 MB."})},{question:e("merge.faqs.tabletQuestion",null,{default:"Can I use this tool on my tablet or smartphone?"}),answer:e("merge.faqs.tabletAnswer",null,{default:"Yes. The tool runs in any modern mobile browser. Drag-to-reorder may be limited on touch devices, but uploading and downloading work on both iOS and Android."})},{question:e("merge.faqs.softwareQuestion",null,{default:"Do I need to install any software to use this tool?"}),answer:e("merge.faqs.softwareAnswer",null,{default:"No. Everything runs in your browser. You do not need PowerPoint, any plugin, or a SlidesAI account to merge presentations."})},{question:e("merge.faqs.editableQuestion",null,{default:"Is the merged PowerPoint presentation editable?"}),answer:e("merge.faqs.editableAnswer",null,{default:"Yes. The output is a standard PPTX file that you can open and edit in PowerPoint, Google Slides, or Keynote."})},{question:e("merge.faqs.chartsImagesQuestion",null,{default:"Will charts, images, and shapes remain intact after merging?"}),answer:e("merge.faqs.chartsImagesAnswer",null,{default:"Yes. The tool is built to preserve each slide's content - including charts, images, and shapes - exactly as it appears in the original file."})},{question:e("merge.faqs.versionsQuestion",null,{default:"Can I merge PPTX files created using different PowerPoint versions?"}),answer:e("merge.faqs.versionsAnswer",null,{default:"Yes. Any PPTX file, regardless of which version of PowerPoint created it, can be merged as long as it uses the PPTX format. Older PPT files must be converted to PPTX first."})},{question:e("merge.faqs.fileSizeLimitQuestion",null,{default:"Is there a limit to the size of PPT files I can merge and download?"}),answer:e("merge.faqs.fileSizeLimitAnswer",null,{default:"The combined upload size limit is 100 MB across all files in a single batch. The merged output can be as large as the sum of the individual inputs."})},{question:e("merge.faqs.qualityQuestion",null,{default:"How can I optimize the quality of my merged PPT when downloading?"}),answer:e("merge.faqs.qualityAnswer",null,{default:"The merge tool copies slides directly without re-encoding images or media, so the merged file maintains the same quality as the originals. To reduce the file size afterwards, run the result through the SlidesAI PowerPoint Compressor."})},{question:e("merge.faqs.pptPptxQuestion",null,{default:"Can I combine a PPTX and a PPT file?"}),answer:e("merge.faqs.pptPptxAnswer",null,{default:"The tool only accepts PPTX files. If you have an older PPT file, open it in PowerPoint or Google Slides and save it as PPTX before uploading."})},{question:e("merge.faqs.googleSlidesQuestion",null,{default:"Do you support combining Google Slides and PowerPoint?"}),answer:e("merge.faqs.googleSlidesAnswer",null,{default:"Not directly. Export your Google Slides presentation as a PPTX file first (File â Download â Microsoft PowerPoint), then upload both PPTX files to the merge tool."})},{question:e("merge.faqs.securityQuestion",null,{default:"Are my PowerPoint files handled securely and confidentially during conversion?"}),answer:e("merge.faqs.securityAnswer",null,{default:"Yes. Files are transferred over HTTPS, processed on secure servers, and automatically deleted after 24 hours. We do not store or share your presentation content."})},{question:e("merge.faqs.formatsQuestion",null,{default:"What formats does your merge tool support?"}),answer:e("merge.faqs.formatsAnswer",null,{default:"The merge tool currently supports PPTX files only. The merged output is also downloaded as a PPTX file."})},{question:e("merge.faqs.savePdfQuestion",null,{default:"How do I combine PowerPoint presentations and save the result as a PDF?"}),answer:e("merge.faqs.savePdfAnswer",null,{default:"Merge your PPTX files here to get a combined PPTX, then open the result in PowerPoint or use the SlidesAI PowerPoint-to-PDF tool to convert it to PDF."})},{question:e("merge.faqs.slideOrderQuestion",null,{default:"Will merging PowerPoint files affect the order of my slides?"}),answer:e("merge.faqs.slideOrderAnswer",null,{default:"No. Slides within each file keep their original order. You control the order of the files by dragging them before merging, and slides are concatenated in that sequence."})},{question:e("merge.faqs.pdfAQuestion",null,{default:"Can I combine PowerPoint presentations and then export the merged file as a PDF/A?"}),answer:e("merge.faqs.pdfAAnswer",null,{default:"The tool exports a PPTX file. For PDF/A specifically, download the merged PPTX and use a dedicated PDF/A converter or export via Adobe Acrobat."})}];return(0,s.jsxs)("div",{children:[(0,s.jsx)(l.PB,{title:e("merge.seo.title",null,{default:"Combine & Merge PowerPoint Presentations Online for Free | SlidesAI"}),description:e("merge.seo.description",null,{default:"Merge PowerPoint presentations online for free. Combine PowerPoint files into one deck in seconds, preserve formatting, set your order, and download instantly."}),openGraph:{title:e("merge.seo.title",null,{default:"Combine & Merge PowerPoint Presentations Online for Free | SlidesAI"}),description:e("merge.seo.description",null,{default:"Merge PowerPoint presentations online for free. Combine PowerPoint files into one deck in seconds, preserve formatting, set your order, and download instantly."}),url:(0,z.F5)("/free-tools/combine-merge-powerpoint",{locale:t}),type:"website"}}),(0,s.jsx)(u.S,{path:"/free-tools/combine-merge-powerpoint"}),(0,s.jsx)(R.D,{graph:S.VX}),(0,s.jsx)(f.h,{}),(0,s.jsxs)("div",{children:[(0,s.jsx)(F.q,{badge:e("merge.badge",null,{default:"Free Tool"}),heading:e("merge.heading",null,{default:"Combine & Merge PowerPoint"}),subheading:e("merge.subheading",null,{default:"Merge multiple PowerPoint presentations into one seamless file. Perfect for combining team slides, consolidating projects, or creating comprehensive decks."}),headingIcon:(0,s.jsx)(D,{className:"h-8 w-8 md:h-10 md:w-10"}),breadcrumbCurrentLabel:e("merge.heading")}),(0,s.jsx)(A,{}),(0,s.jsxs)("div",{className:"bg-white pt-16",children:[(0,s.jsx)("div",{className:"bg-gray-50",children:(0,s.jsx)(c.W,{className:"py-40",children:(0,s.jsx)(E.F,{eyebrow:e("merge.howItWorks.eyebrow",null,{default:"How it works"}),title:e("merge.howItWorks.title",null,{default:"How It Works"}),subtitle:e("merge.howItWorks.subtitle",null,{default:"Upload the decks you want to combine, arrange the order, and export one final presentation."}),steps:r})})}),(0,s.jsx)("div",{className:"bg-gradient-to-b from-gray-50 via-gray-50 to-white",children:(0,s.jsx)(c.W,{className:"py-40",children:(0,s.jsx)(L.J,{eyebrow:e("merge.benefitsEyebrow",null,{default:"Why teams use it"}),title:e("merge.benefitsTitle",null,{default:"A clean way to bring multiple decks together"}),subtitle:e("merge.benefitsSubtitle",null,{default:"Use the merge tool when team sections, training slides, or client materials need to become one organized presentation."}),cards:p})})}),(0,s.jsx)("div",{className:"bg-white",children:(0,s.jsx)(c.W,{className:"py-40",children:(0,s.jsx)(L.J,{eyebrow:e("merge.otherToolsEyebrow",null,{default:"Other tools"}),title:e("merge.otherToolsTitle",null,{default:"Keep improving the final deck"}),subtitle:e("merge.otherToolsSubtitle",null,{default:"After merging your presentation, use other free SlidesAI tools to keep preparing the file for delivery."}),cards:g,gridClassName:"mt-24 grid justify-items-center gap-10 md:grid-cols-2 lg:grid-cols-3",cardClassName:"group w-full max-w-xl rounded-xl border border-gray-200 bg-white p-8 shadow-sm transition-all hover:border-primary-200 hover:shadow-md"})})})]})]}),(0,s.jsx)("div",{className:"py-40",children:(0,s.jsx)(q.I,{title:e("merge.faqs.title",null,{default:"Frequently asked questions"}),description:e("merge.faqs.subtitle",null,{default:"Common questions about merging multiple presentations, file format support, slide order, privacy, and how to export the result."}),faqs:x})}),(0,s.jsx)(m.Z,{}),(0,s.jsx)(h.$,{})]})}},94434:function(e,t,r){"use strict";r.d(t,{f:function(){return u}});let s="application/vnd.openxmlformats-officedocument.presentationml.presentation",l=new Set(["application/zip","application/x-zip-compressed"]),o="text/plain",n={compress:[s,...Array.from(l)],merge:[s,...Array.from(l)],pdf:["application/pdf",...Array.from(l)],pdfToPpt:[s,...Array.from(l)],wordToPpt:[s,...Array.from(l)],htmlToPpt:[s,...Array.from(l)],word:["application/vnd.openxmlformats-officedocument.wordprocessingml.document",...Array.from(l)],text:[o,...Array.from(l)],notes:[o,...Array.from(l)],split:[...Array.from(l)]},i=(e,t)=>{let r=e.split(";")[0].trim().toLowerCase();return n[t].includes(r)},a=e=>{try{let{hostname:t}=new URL(e);return t.endsWith(".r2.cloudflarestorage.com")||t.endsWith(".r2.dev")}catch{return!1}},d=(e,t="unavailable")=>{let r=new URLSearchParams({reason:t,tool:e});return`/free-tools/download-expired?${r.toString()}`},u=async(e,t)=>{try{let r=await fetch(e,{method:"GET",headers:{Range:"bytes=0-0"}}),s=r.headers.get("content-type")||"";if(!a(e)||!r.ok&&206!==r.status||!i(s,t)){window.open(d(t),"_blank","noopener");return}window.open(e,"_blank","noopener")}catch{window.open(d(t),"_blank","noopener")}}},23341:function(e,t,r){"use strict";r.d(t,{T:function(){return n}});var s=r(43577),l=r(36509);r(57242);var o=r(91478);let n=({disabledReason:e,show:t,children:r,tooltipClassName:n,side:i="top",sideOffset:a=4,delayDuration:d=0,collisionBoundary:u})=>t&&e?(0,s.jsx)(l.zt,{children:(0,s.jsxs)(l.fC,{delayDuration:d,children:[(0,s.jsx)(l.xz,{asChild:!0,children:r}),(0,s.jsxs)(l.VY,{side:i,sideOffset:a,collisionPadding:8,collisionBoundary:u??[],className:(0,o.m6)("data-[state=delayed-open]:data-[side=top]:animate-slideDownAndFade data-[state=delayed-open]:data-[side=right]:animate-slideLeftAndFade data-[state=delayed-open]:data-[side=left]:animate-slideRightAndFade data-[state=delayed-open]:data-[side=bottom]:animate-slideUpAndFade text-white text-[13px] z-50 max-w-[15rem] select-none break-words rounded-lg bg-gray-900 px-[15px] py-[10px] border will-change-[transform,opacity]",n),children:[e,(0,s.jsx)(l.Eh,{className:"fill-gray-900"})]})]})}):(0,s.jsx)(s.Fragment,{children:r})}},function(e){e.O(0,[630,5198,4034,6381,3339,3985,6509,1478,5435,5806,9
1167,8980,249,1935,6818,5962,7881,2888,9774,179],function(){return e(e.s=46444)}),_N_E=e.O()}]);
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.