PageSourceSearch

https://toolbreezy.com/_next/static/chunks/77678-03089fa513eef469.js

js toolbreezy.com collected 2026-09-24 14:58:07 UTC 41,317 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[77678],{77678:(e,t,l)=>{l.r(t),l.d(t,{default:()=>eu});var r=l(95155),a=l(12115),i=l(92603),n=l(65229),s=l(52056),o=l(39867),c=l(97003),d=l(27784),u=l(90235),h=l(33534),p=l(70134),f=l(25016),m=l(31258),g=l(44340),x=l(14827),b=l(2042);let w={1:{label:"1 slide per page",cols:1,rows:1,lines:!1,notes:!1},2:{label:"2 slides per page",cols:1,rows:2,lines:!1,notes:!1},3:{label:"3 per page with note lines",cols:1,rows:3,lines:!0,notes:!1},4:{label:"4 slides per page",cols:2,rows:2,lines:!1,notes:!1},6:{label:"6 slides per page",cols:2,rows:3,lines:!1,notes:!1},9:{label:"9 slides per page",cols:3,rows:3,lines:!1,notes:!1},notes:{label:"Notes pages (slide + speaker notes)",cols:1,rows:1,lines:!1,notes:!0}},y={match:{label:"Match the slide size",w:0,h:0},letter:{label:"Letter (8.5 x 11 in)",w:612,h:792},a4:{label:"A4 (210 x 297 mm)",w:595.28,h:841.89},legal:{label:"Legal (8.5 x 14 in)",w:612,h:1008},tabloid:{label:"Tabloid (11 x 17 in)",w:792,h:1224}},v={narrow:{label:"Narrow (0.25 in)",pt:18},normal:{label:"Normal (0.5 in)",pt:36},wide:{label:"Wide (0.75 in)",pt:54}},N={layout:"1",pageSize:"match",landscape:!0,margin:"normal",frame:!1,slideNumbers:!0,footer:!1},k="tb:ppt-to-pdf:v1";function j(e){let t=new DOMParser().parseFromString(e,"application/xml");return t.getElementsByTagName("parsererror").length>0?null:t}function M(e,t){if(!e)return[];let l=[];for(let r of Array.from("children"in e?e.children:[]))r.localName===t&&l.push(r);return l}function A(e,t){return M(e,t)[0]??null}function S(e,t){if(!e)return null;for(let l of Array.from(e.children)){if(l.localName===t)return l;let e=S(l,t);if(e)return e}return null}function z(e,t){return e?.documentElement&&e.documentElement.localName===t?e.documentElement:null}function P(e,t){if(null===e)return t;let l=Number(e);return Number.isFinite(l)?l:t}let $=e=>"1"===e||"true"===e,C=(e,t,l)=>Math.max(t,Math.min(l,e)),F={r:0,g:0,b:0},T={r:1,g:1,b:1};function L(e){let t=e.trim().replace(/^#/,"");return/^[0-9a-fA-F]{6}$/.test(t)?{r:parseInt(t.slice(0,2),16)/255,g:parseInt(t.slice(2,4),16)/255,b:parseInt(t.slice(4,6),16)/255}:null}function B(e){let t=Math.max(e.r,e.g,e.b),l=Math.min(e.r,e.g,e.b),r=(t+l)/2;if(t===l)return{h:0,s:0,l:r};let a=t-l;return{h:t===e.r?((e.g-e.b)/a+6*(e.g<e.b))/6:t===e.g?((e.b-e.r)/a+2)/6:((e.r-e.g)/a+4)/6,s:r>.5?a/(2-t-l):a/(t+l),l:r}}function E(e,t,l){let r=l;return(r<0&&(r+=1),r>1&&(r-=1),r<1/6)?e+(t-e)*6*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e}function O(e,t,l){if(0===t)return{r:l,g:l,b:l};let r=l<.5?l*(1+t):l+t-l*t,a=2*l-r;return{r:E(a,r,e+1/3),g:E(a,r,e),b:E(a,r,e-1/3)}}let R={scheme:new Map,clrMap:new Map};function I(e,t){if(!e)return null;let l=null;switch(e.localName){case"srgbClr":l=L(e.getAttribute("val")??"");break;case"sysClr":l=L(e.getAttribute("lastClr")??"");break;case"schemeClr":{let r=e.getAttribute("val")??"";if("phClr"===r)return null;let a=t.clrMap.get(r)??r;l=t.scheme.get(a)??t.scheme.get(r)??null;break}case"prstClr":l=L({black:"000000",white:"FFFFFF",red:"FF0000",green:"008000",blue:"0000FF",yellow:"FFFF00",gray:"808080",grey:"808080"}[e.getAttribute("val")??""]??"");break;default:return null}return l?function(e,t){let l=e;for(let e of Array.from(t.children)){let t=P(e.getAttribute("val"),NaN)/1e5;if(Number.isFinite(t))switch(e.localName){case"lumMod":{let e=B(l);l=O(e.h,e.s,C(e.l*t,0,1));break}case"lumOff":{let e=B(l);l=O(e.h,e.s,C(e.l+t,0,1));break}case"satMod":{let e=B(l);l=O(e.h,C(e.s*t,0,1),e.l);break}case"shade":l={r:l.r*t,g:l.g*t,b:l.b*t};break;case"tint":l={r:l.r*t+(1-t),g:l.g*t+(1-t),b:l.b*t+(1-t)}}}return{r:C(l.r,0,1),g:C(l.g,0,1),b:C(l.b,0,1)}}(l,e):null}function H(e,t){if(!e)return null;let l=A(e,"solidFill");if(l)for(let e of Array.from(l.children)){let l=I(e,t);if(l)return l}let r=A(e,"gradFill");if(r){let e=M(A(r,"gsLst"),"gs")[0];if(e)for(let l of Array.from(e.children)){let e=I(l,t);if(e)return e}}let a=A(e,"pattFill");if(a){let e=A(a,"fgClr");if(e)for(let l of Array.from(e.children)){let e=I(l,t);if(e)return e}}if("bgRef"===e.localName)for(let l of Array.from(e.children)){let e=I(l,t);if(e)return e}return null}let D={swaps:{"\xa0":" "," ":" "," ":" "," ":" ","​":"","‌":"","\uFEFF":"","\xad":"","‑":"-","‒":"-","―":"-","−":"-","′":"'","″":'"',ʼ:"'","≤":"<=","≥":">=","≠":"!=","→":"->","←":"<-","✓":"Y","✔":"Y","✗":"N","✘":"N"},tab:"   ",newline:" ",puaBullet:"•"};function W(e,t){return(0,g.CG)(e,D,t)}let G=e=>e.length>0&&e.trim().length>0,J={title:[],body:[],other:[]};function U(e,t,l){let r=[];if(!e)return r;for(let a of Array.from(e.children)){let e=/^lvl([1-9])pPr$/.exec(a.localName);e&&(r[Number(e[1])-1]=q(a,t,l))}return r}function q(e,t,l){let r={},a=e.getAttribute("algn");a&&(r.align="ctr"===a?"ctr":"r"===a?"r":"l");let i=e.getAttribute("marL");null!==i&&(r.marL=P(i,0)/12700);let n=e.getAttribute("indent");null!==n&&(r.indent=P(n,0)/12700),A(e,"buNone")&&(r.bullet=null);let s=A(e,"buChar");s&&(r.bullet=W(s.getAttribute("char")??"•",l)),A(e,"buAutoNum")&&(r.bullet="•");let o=A(e,"defRPr");if(o){let e=o.getAttribute("sz");null!==e&&(r.size=P(e,1800)/100);let l=o.getAttribute("b");null!==l&&(r.bold=$(l));let a=o.getAttribute("i");null!==a&&(r.italic=$(a));let i=H(o,t);
1i&&(r.color=i)}return r}function _(e){return"title"===e||"ctrTitle"===e?"title":"sldNum"===e||"ftr"===e||"dt"===e?"other":"body"}let K={title:40,body:18,other:12},Y=(e,t,l,r)=>({x:e,y:t,w:l,h:r}),V={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",bmp:"image/bmp",webp:"image/webp",tiff:"image/tiff",tif:"image/tiff",svg:"image/svg+xml"};async function Q(e,t){let l=e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);if(137===e[0]&&80===e[1]&&78===e[2]&&71===e[3])return{bytes:e,format:"png",blob:new Blob([l],{type:"image/png"})};if(255===e[0]&&216===e[1])return{bytes:e,format:"jpg",blob:new Blob([l],{type:"image/jpeg"})};if("function"!=typeof createImageBitmap||"undefined"==typeof document)return null;let r=new Blob([l],{type:V[t]??"application/octet-stream"}),a=await createImageBitmap(r).catch(()=>null);if(!a)return null;let i=Math.min(1,4e3/Math.max(1,a.width),4e3/Math.max(1,a.height)),n=(0,p.$t)(Math.max(1,Math.round(a.width*i)),Math.max(1,Math.round(a.height*i)));if(!n)return a.close(),null;let{canvas:s,ctx:o}=n;o.drawImage(a,0,0,s.width,s.height),a.close();let c=await new Promise(e=>
1s.toBlob(e,"image/png"));return c?{bytes:new Uint8Array(await c.arrayBuffer()),format:"png",blob:c}:null}async function X(e,t,l){let r=new Map,a=new Map;if(t){let l=await e(t),a=S(z(l?j(l):null,"theme"),"clrScheme");if(a)for(let e of Array.from(a.children))for(let t of Array.from(e.children)){let l=I(t,R);if(l){r.set(e.localName,l);break}}}let i=A(l,"clrMap");if(i)for(let e of Array.from(i.attributes))a.set(e.localName??e.name,e.value);else a.set("bg1","lt1"),a.set("tx1","dk1"),a.set("bg2","lt2"),a.set("tx2","dk2");return{scheme:r,clrMap:a}}function Z(e){let t=S(A(e,"nvSpPr"),"ph");if(!t)return[];let l=t.getAttribute("type")??"body",r=t.getAttribute("idx")??"";return""===r?[`${l}:`]:[`${l}:${r}`,`${l}:`,`:${r}`]}function ee(e){let t=A(e,"xfrm");if(!t)return null;let l=A(t,"off"),r=A(t,"ext");return l&&r?{x:P(l.getAttribute("x"),0)/12700,y:P(l.getAttribute("y"),0)/12700,w:P(r.getAttribute("cx"),0)/12700,h:P(r.getAttribute("cy"),0)/12700}:null}function et(e,t,l){let r=new Map,a=new Map;for(let i of M(e,"sp")){let e=Z(i);if(0===e.length)continue;let n=ee(A(i,"spPr")),s=U(A(A(i,"txBody"),"lstStyle"),t,l);for(let t of e)n&&!r.has(t)&&r.set(t,n),s.length>0&&!a.has(t)&&a.set(t,s)}return{boxes:r,lists:a}}function el(e,t,l,r,a){let i=A(e,"bodyPr"),n=i?.getAttribute("anchor")??"t",s=[P(i?.getAttribute("lIns")??null,91440)/12700,P(i?.getAttribute("tIns")??null,45720)/12700,P(i?.getAttribute("rIns")??null,91440)/12700,P(i?.getAttribute("bIns")??null,45720)/12700],o=A(i,"normAutofit"),c=o?P(o.getAttribute("fontScale"),1e5)/1e5:1,d=U(A(e,"lstStyle"),t.theme,t.stat),u=r.map(e=>t.layoutLists.get(e)).find(Boolean)??[],h=t.styles[l]??[],p=e=>({...h[e]??{},...u[e]??{},...d[e]??{}}),f=[];for(let i of M(e,"p")){let e=A(i,"pPr"),n=C(P(e?.getAttribute("lvl")??null,0),0,8),s=p(n),o=e?q(e,t.theme,t.stat):{},d={...s,...o},u=(d.size??K[l])*c*a,h=[];for(let e of Array.from(i.children)){if("br"===e.localName){h.push({text:"",size:u,bold:!1,italic:!1,color:F,br:!0});continue}if("r"!==e.localName&&"fld"!==e.localName)continue;let l=A(e,"rPr"),r=W(M(e,"t").map(e=>e.textContent??"").join(""),t.stat);if(""===r)continue;let i=l?.getAttribute("sz")??null,n=null!==i?P(i,1800)/100*c*a:u,s=l?.getAttribute("b")??null,o=l?.getAttribute("i")??null;h.push({text:r,size:C(n,1,400),bold:null!==s?$(s):d.bold??!1,italic:null!==o?$(o):d.italic??!1,color:H(l,t.theme)??d.color??t.defaultText,br:!1})}if(0===h.length){f.push({runs:[],align:d.align??"l",marL:0,indent:0,bullet:null,spaceBefore:0,lineSpacing:1});continue}let m=null;Object.prototype.hasOwnProperty.call(d,"bullet")?m=d.bullet??null:"body"===l&&r.length>0&&(m="•"),null===m||G(m)||(m=null);let g=m?(n+1)*18:18*n,x=(d.marL??g)*a,b=(d.indent??(m?-18:0))*a,w=A(e,"spcBef"),y=0;if(w){let e=A(w,"spcPts"),t=A(w,"spcPct");e?y=P(e.getAttribute("val"),0)/100:t&&(y=P(t.getAttribute("val"),0)/1e5*u)}let v=A(e,"lnSpc"),N=1;if(v){let e=A(v,"spcPct");e&&(N=C(P(e.getAttribute("val"),1e5)/1e5,.4,3))}f.push({runs:h,align:d.align??"l",marL:x,indent:b,bullet:m,spaceBefore:C(y*a,0,200),lineSpacing:N})}return{paras:f,anchor:"ctr"===n?"ctr":"b"===n?"bottom":"top",insets:s,fontScale:c}}async function er(e){let{default:t}=await Promise.all([l.e(15376),l.e(7496)]).then(l.t.bind(l,7496,23)),r=await t.loadAsync(e).catch(()=>{throw Error("That file could not be opened. It may be damaged, or it may be an old .ppt saved under a new name.")}),a=async e=>{let t=r.file(e);return t?t.async("string"):null},i=async e=>{let t=r.file(e);return t?t.async("uint8array"):null},n=async e=>{let t=new Map,l=await a(function(e){let t=e.split("/"),l=t.pop()??"";return[...t,"_rels",`${l}.rels`].join("/")}(e));for(let r of M(z(l?j(l):null,"Relationships"),"Relationship")){let l=r.getAttribute("Id"),a=r.getAttribute("Target");l&&a&&"External"!==r.getAttribute("TargetMode")&&t.set(l,{target:function(e,t){if(t.startsWith("/"))return t.slice(1);let l=e.split("/");for(let e of(l.pop(),t.split("/")))""!==e&&"."!==e&&(".."===e?l.pop():l.push(e));return l.join("/")}(e,a),type:r.getAttribute("Type")??""})}return t},s=await a("ppt/presentation.xml");if(!s)throw Error("That does not look like a PowerPoint file. This tool reads .pptx, .pptm and .potx presentations.");let o=z(j(s),"presentation");if(!o)throw Error("The presentation could not be read. It may be damaged.");let c=A(o,"sldSz"),d=P(c?.getAttribute("cx")??null,12192e3)/12700,u=P(c?.getAttribute("cy")??null,6858e3)/12700,h=await n("ppt/presentation.xml"),p=[];for(let e of M(A(o,"sldIdLst"),"sldId")){let t=e.getAttributeNS("http://schemas.openxmlformats.org/officeDocument/2006/relationships","id")??e.getAttribute("r:id"),l=t?h.get(t):void 0;l&&p.push(l.target)}if(0===p.length)throw Error("This presentation has no slides in it.");let f=Math.max(0,p.length-200),m=p.slice(0,200),g={images:new Map,mediaBytes:0,dropped:0,placeholders:0,nextImageId:1,stat:{swapped:0}},x=new Map,b=async e=>{let t=x.get(e);if(void 0!==t)return t;let l=null,r=await i(e);if(r&&r.byteLength<=0x1800000&&g.mediaBytes+r.byteLength<=0x5000000){let t=await Q(r,function(e){let t=/\.([a-z0-9]+)$/i.exec(e);return t?t[1].toLowerCase():""}(e)).catch(()=>null);t&&(l=g.nextImageId++,g.mediaBytes+=t.bytes.byteLength,g.images.set(l,{id:l,bytes:t.bytes,format:t.format,url:URL.createObjectURL(t.blob)}))}return x.set(e,l),l},w={ctxBase:{theme:R,stat:g.stat,styles:J,layoutPh:new Map,layoutLists:new Map,defaultText:F},bg:null},y=new Map,v=async e=>{let t=y.get(e);if(t)return t;let l=await a(e),r=z(l?j(l):null,"sldLayout"),i=await n(e),s=null;for(let e of i.values())e.type.endsWith("/slideMaster")&&(s=e.target);let o=null,c=null;if(s){let e=await a(s);for(let t of(o=z(e?j(e):null,"sldMaster"),(await n(s)).values())
1)t.type.endsWith("/theme")&&(c=t.target)}let d=await X(a,c,o),u=d.scheme.get(d.clrMap.get("tx1")??"dk1")??F,h=A(o,"txStyles"),p={title:U(A(h,"titleStyle"),d,g.stat),body:U(A(h,"bodyStyle"),d,g.stat),other:U(A(h,"otherStyle"),d,g.stat)},f=S(A(o,"cSld"),"spTree"),m=S(A(r,"cSld"),"spTree"),x=et(f,d,g.stat),b=et(m,d,g.stat),w=new Map(x.boxes);for(let[e,t]of b.boxes)w.set(e,t);let v=new Map(x.lists);for(let[e,t]of b.lists)v.set(e,t);let N=H(A(A(r,"cSld"),"bg")?.children[0]??null,d),k=H(A(A(o,"cSld"),"bg")?.children[0]??null,d),M={ctxBase:{theme:d,stat:g.stat,styles:p,layoutPh:w,layoutLists:v,defaultText:u},bg:N??k};return y.set(e,M),M},N=[],k=0;for(let e=0;e<m.length;e++){let t=m[e],l=await a(t),r=z(l?j(l):null,"sld");if(!r)continue;let i=await n(t),s=null,o=null,c=new Map;for(let[e,t]of i)if(t.type.endsWith("/slideLayout"))s=t.target;else if(t.type.endsWith("/notesSlide"))o=t.target;else if(t.type.endsWith("/image")){let l=await b(t.target);null!==l&&c.set(e,l)}let d=s?await v(s):w,u={...d.ctxBase,images:c},h=H(A(A(r,"cSld"),"bg")?.children[0]??null,u.theme)??d.bg??T,p=S(A(r,"cSld"),"spTree"),f=[],x={left:600};p&&function e(t,l,r,a,i,n,s){for(let o of Array.from(t.children)){if(s.left<=0)return;let t=o.localName;if("grpSp"===t){let t=A(o,"grpSpPr"),c=A(t,"xfrm"),d=r,u=a,h=A(c,"off"),p=A(c,"ext"),f=A(c,"chOff"),m=A(c,"chExt");if(h&&p&&f&&m){let e=P(h.getAttribute("x"),0)/12700,t=P(h.getAttribute("y"),0)/12700,l=P(p.getAttribute("cx"),0)/12700,i=P(p.getAttribute("cy"),0)/12700,n=P(f.getAttribute("x"),0)/12700,s=P(f.getAttribute("y"),0)/12700,o=P(m.getAttribute("cx"),0)/12700,c=P(m.getAttribute("cy"),0)/12700,g=o>0?l/o:1,x=c>0?i/c:1;d=(l,a,i,o)=>r(e+(l-n)*g,t+(a-s)*x,i*g,o*x),u=a*Math.min(g,x)}e(o,l,d,u,i,n,s);continue}if("sp"===t||"cxnSp"===t){s.left--;let e=A(o,"spPr"),n=A(o,"style"),c="sp"===t?Z(o):[],d=ee(e);if(!d)for(let e of c){let t=l.layoutPh.get(e);if(t){d=t;break}}if(!d)continue;let u=r(d.x,d.y,d.w,d.h),h=function(e){let t=A(e,"prstGeom"),l=t?.getAttribute("prst")??"";return"ellipse"===l||"circle"===l?"ellipse":l.startsWith("line")||l.startsWith("straightConnector")||"bentConnector3"===l?"line":"rect"}(e),p=function(e,t,l){if(A(e,"noFill"))return null;let r=H(e,l);if(r)return r;let a=A(t,"fillRef");if(a&&P(a.getAttribute("idx"),0)>0)for(let e of Array.from(a.children)){let t=I(e,l);if(t)return t}return null}(e,n,l.theme),{color:f,w:m}=function(e,t,l){let r=A(e,"ln");if(r&&A(r,"noFill"))return{color:null,w:0};let a=H(r,l),i=r?P(r.getAttribute("w"),0)/12700:0;if(!a){let e=A(t,"lnRef");if(e&&P(e.getAttribute("idx"),0)>0)for(let t of Array.from(e.children)){let e=I(t,l);if(e){a=e;break}}}return a&&i<=0&&(i=1),{color:a,w:C(i,0,12)}}(e,n,l.theme);(p||f)&&i.push({t:"shape",kind:h,x:u.x,y:u.y,w:u.w,h:u.h,fill:p,stroke:f,sw:m});let g=A(o,"txBody");if(g){let e=S(A(o,"nvSpPr"),"ph"),{paras:t,anchor:r,insets:n}=el(g,l,_(e?.getAttribute("type")??null),c,a);t.some(e=>e.runs.length>0)&&i.push({t:"text",box:{x:u.x+n[0]*a,y:u.y+n[1]*a,w:Math.max(4,u.w-(n[0]+n[2])*a),h:Math.max(4,u.h-(n[1]+n[3])*a),anchor:r,paras:t}})}continue}if("pic"===t){s.left--;let e=ee(A(o,"spPr"));if(!e)continue;let t=r(e.x,e.y,e.w,e.h),a=S(A(o,"blipFill"),"blip"),c=a?.getAttributeNS("http://schemas.openxmlformats.org/officeDocument/2006/relationships","embed")??a?.getAttribute("r:embed")??null,d=c?l.images.get(c):void 0;if(void 0===d){n.dropped++;continue}i.push({t:"img",x:t.x,y:t.y,w:t.w,h:t.h,id:d});continue}if("graphicFrame"===t){s.left--;let e=ee(o);if(!e)continue;let t=r(e.x,e.y,e.w,e.h),c=S(o,"tbl");if(c){!function(e,t,l,r,a){let i=M(A(e,"tblGrid"),"gridCol").map(e=>P(e.getAttribute("w"),0)/12700),n=i.reduce((e,t)=>e+t,0),s=n>0?t.w/n:1,o=M(e,"tr"),c=o.reduce((e,t)=>e+P(t.getAttribute("h"),0)/12700,0),d=c>0?t.h/c:1,u=t.y;for(let e of o){let n=P(e.getAttribute("h"),0)/12700*d,o=t.x,c=M(e,"tc");for(let e=0;e<c.length;e++){let t=c[e],d=Math.max(1,P(t.getAttribute("gridSpan"),1)),h=0;for(let t=0;t<d;t++)h+=(i[e+t]??0)*s;if(null===t.getAttribute("hMerge")&&null===t.getAttribute("vMerge")){let e=A(t,"tcPr");a.push({t:"shape",kind:"rect",x:o,y:u,w:h,h:n,fill:H(e,l.theme),stroke:{r:.6,g:.6,b:.6},sw:.6});let i=A(t,"txBody");if(i){let{paras:e}=el(i,l,"other",[],r);e.some(e=>e.runs.length>0)&&a.push({t:"text",box:{x:o+3*r,y:u+2*r,w:Math.max(4,h-6*r),h:Math.max(4,n-4*r),anchor:"ctr",paras:e}})}}o+=h,e+=d-1}u+=n}}(c,t,l,a,i);continue}let d=S(o,"graphicData"),u=d?.getAttribute("uri")??"",h=u.includes("chart")?"Chart":u.includes("diagram")?"Diagram":u.includes("ole")?"Embedded object":"Object";n.placeholders++,i.push({t:"shape",kind:"rect",x:t.x,y:t.y,w:t.w,h:t.h,fill:{r:.96,g:.96,b:.96},stroke:{r:.72,g:.72,b:.72},sw:1}),i.push({t:"text",box:{x:t.x,y:t.y+t.h/2-10,w:t.w,h:20,anchor:"top",paras:[{runs:[{text:h,size:14*a,bold:!1,italic:!0,color:{r:.45,g:.45,b:.45},br:!1}],align:"ctr",marL:0,indent:0,bullet:null,spaceBefore:0,lineSpacing:1}]}})}}}(p,u,Y,1,f,g,x);let y="";if(p)for(let e of M(p,"sp")){let t=S(A(e,"nvSpPr"),"ph"),l=t?.getAttribute("type")??"";if("title"===l||"ctrTitle"===l){y=W(function(e){if(!e)return"";let t=[];for(let l of M(e,"p")){let e="";for(let t of M(l,"r"))for(let l of M(t,"t"))e+=l.textContent??"";for(let t of M(l,"fld"))for(let l of M(t,"t"))e+=l.textContent??"";t.push(e)}return t.join(" ").trim()}(A(e,"txBody")),g.stat);break}}if(!y){let e=f.find(e=>"text"===e.t);y=(e?.box.paras.flatMap(e=>e.runs)??[]).map(e=>e.text).join("").trim()}let $=[];if(o){let e=await a(o);for(let t of M(S(A(z(e?j(e):null,"notes"),"cSld"),"spTree"),"sp")){let e=S(A(t,"nvSpPr"),"ph");e&&"body"===_(e.getAttribute("type"))&&($=$.concat(function(e,t){if(!e)return[];let l=[];for(let r of M(e,"p")){let e="";for(let t of Array.from(r.children))if("r"===t.localName||"fld"===t.localName)for(let l of M(t,"t"))e+=l.textContent??"";else"br"===t.localName&&(e+=" ");let a=W(e,t).trim();a&&l.push(a)}return l}(A(t,"txBody"),g.stat)))}$.length>0&&k++}N.push({index:e+1,hidden:"0"===r.getAttribute("show"),title:y.slice(0,90)||`Slide ${e+1}`,bg:h,ops:f,notes:$,shapesCapped:x.left<=0})}if(0===N.length)throw Error("None of the slides in this presentation could be read.");return{widthPt:d,heightPt:u,slides:N,images:g.images,extraSlides:f,droppedMedia:g.dropped,placeholderGraphics:g.placeholders,notesCount:k,swapped:g.stat.swapped}}let ea=(e,t,l)=>t&&l?e.bi:t?e.b:l?e.i:e.r;async function ei(){let{PDFDocument:e,StandardFonts:t}=await l.e(57814).then(l.bind(l,57814)),r=await e.create();return{r:await r.embedFont(t.Helvetica),b:await r.embedFont(t.Helvetica
1Bold),i:await r.embedFont(t.HelveticaOblique),bi:await r.embedFont(t.HelveticaBoldOblique)}}function en(e,t,l,r,a){if(""===t)return 0;try{return ea(e,r,a).widthOfTextAtSize(t,l)}catch{return t.length*l*.5}}function es(e,t,l,r,a){a.push({t:"shape",kind:"rect",x:t.x,y:t.y,w:t.w,h:t.h,fill:e.bg,stroke:r.frame?{r:.75,g:.75,b:.75}:null,sw:.7*!!r.frame});let i=1/0,n=t.x+t.w,s=t.y+t.h;for(let r of e.ops){if("txt"===r.t){let e=r.size*l,o=t.x+r.x*l,c=t.y+r.y*l;if(c>s||c+e<t.y||o>n)continue;i=Math.min(i,e),a.push({...r,x:o,y:c,size:e});continue}let e=t.x+r.x*l,o=t.y+r.y*l,c=r.w*l,d=r.h*l;if(e>n||o>s||e+c<t.x||o+d<t.y)continue;let u=Math.max(t.x,e),h=Math.max(t.y,o),p=Math.min(n,e+c)-u,f=Math.min(s,o+d)-h;p<=.2||f<=.2||("img"===r.t?a.push({t:"img",x:u,y:h,w:p,h:f,id:r.id}):a.push({...r,x:u,y:h,w:p,h:f}))}return i}async function eo(e,t,r){let{PDFDocument:a,StandardFonts:i,rgb:n}=await l.e(57814).then(l.bind(l,57814)),s=await a.create();s.setTitle(r.replace(/\.pdf$/i,"")),s.setProducer("ToolBreezy");let o={r:await s.embedFont(i.Helvetica),b:await s.embedFont(i.HelveticaBold),i:await s.embedFont(i.HelveticaOblique),bi:await s.embedFont(i.HelveticaBoldOblique)},c=new Map,d=async e=>{if(c.has(e))return c.get(e)??null;let l=t.images.get(e),r=null;if(l){let e=l.bytes.slice();r=await ("png"===l.format?s.embedPng(e):s.embedJpg(e)).catch(()=>null)}return c.set(e,r),r};for(let t of e.pages){let l=s.addPage([e.pageW,e.pageH]);for(let r of t.ops){if("shape"===r.t){let t=r.fill?n(r.fill.r,r.fill.g,r.fill.b):void 0,a=r.stroke&&r.sw>0?n(r.stroke.r,r.stroke.g,r.stroke.b):void 0;if("ellipse"===r.kind)l.drawEllipse({x:r.x+r.w/2,y:e.pageH-(r.y+r.h/2),xScale:Math.max(.1,r.w/2),yScale:Math.max(.1,r.h/2),color:t,borderColor:a,borderWidth:a?r.sw:0});else if("line"===r.kind){let t=r.stroke??r.fill;t&&l.drawLine({start:{x:r.x,y:e.pageH-r.y},end:{x:r.x+r.w,y:e.pageH-(r.y+r.h)},thickness:Math.max(.4,r.sw||1),color:n(t.r,t.g,t.b)})}else l.drawRectangle({x:r.x,y:e.pageH-(r.y+r.h),width:Math.max(.2,r.w),height:Math.max(.2,r.h),color:t,borderColor:a,borderWidth:a?r.sw:0});continue}if("img"===r.t){let t=await d(r.id);if(!t)continue;l.drawImage(t,{x:r.x,y:e.pageH-(r.y+r.h),width:Math.max(.5,r.w),height:Math.max(.5,r.h)});continue}if(""!==r.text.trim())try{l.drawText(r.text,{x:r.x,y:e.pageH-(r.y+.8*r.size),size:Math.max(.6,r.size),font:ea(o,r.bold,r.italic),color:n(r.color.r,r.color.g,r.color.b)})}catch{}}}return s.save()}function ec(e){return`${e.replace(/\.(pptx|pptm|potx|ppsx|ppt)$/i,"")}.pdf`}let ed=e=>`rgb(${Math.round(255*e.r)}, ${Math.round(255*e.g)}, ${Math.round(255*e.b)})`;function eu(){let[e,t]=(0,a.useState)(null),[l,p]=(0,a.useState)([]),[g,j]=(0,a.useState)(N),[M,A]=(0,a.useState)(N),[S,z]=(0,a.useState)(null),[P,$]=(0,a.useState)(!1),[T,L]=(0,a.useState)(!1),[B,E]=(0,a.useState)(""),[O,R]=(0,a.useState)(!1),[I,H]=(0,a.useState)(3),[D,W]=(0,a.useState)(560),G=(0,a.useRef)(null),J=(0,a.useRef)(null),U=(0,a.useRef)(0);(0,a.useEffect)(()=>{let e={...N};try{let t=window.localStorage.getItem(k);t&&(e={...e,...JSON.parse(t)})}catch{}let t=new URLSearchParams(window.location.search),l=t.get("hl");l&&l in w&&(e.layout=l);let r=t.get("ps");r&&r in y&&(e.pageSize=r);let a=t.get("mg");a&&a in v&&(e.margin=a);let i=t.get("or");"l"===i&&(e.landscape=!0),"p"===i&&(e.landscape=!1),"1"===t.get("fr")&&(e.frame=!0),"0"===t.get("fr")&&(e.frame=!1),"0"===t.get("sn")&&(e.slideNumbers=!1),"1"===t.get("ft")&&(e.footer=!0),e.layout in w||(e.layout=N.layout),e.pageSize in y||(e.pageSize=N.pageSize),e.margin in v||(e.margin=N.margin),j(e),A(e)},[]),(0,d.Vd)(k,()=>JSON.stringify(g),[g]),(0,a.useEffect)(()=>{let e=window.setTimeout(()=>A(g),130);return()=>window.clearTimeout(e)},[g]),(0,a.useEffect)(()=>{let e=!0;return ei().then(t=>{e&&z(t)}).catch(()=>{e&&E("The page layout could not start. Try reloading the page.")}),()=>{e=!1}},[]);let q=(0,a.useCallback)(()=>{let e=new URLSearchParams({hl:g.layout,ps:g.pageSize,mg:g.margin,or:g.landscape?"l":"p"});return g.frame&&e.set("fr","1"),g.slideNumbers||e.set("sn","0"),g.footer&&e.set("ft","1"),e},[g]),_=(0,a.useCallback)(async e=>{if(!e)return;let l=Array.from(e).find(e=>/\.(pptx|pptm|potx|ppsx)$/i.test(e.name));if(!l){let t=Array.from(e)[0];E(t&&/\.ppt$/i.test(t.name)?"That is an old .ppt file, which is a completely different format. Open it in PowerPoint, Google Slides or Keynote and save it as .pptx, then bring it back here.":"That is not a PowerPoint presentation. This tool reads .pptx, .pptm, .potx and .ppsx files.");return}E(""),$(!0);let r=++U.current,a={id:`${l.name}-${l.size}-${l.lastModified}`,name:l.name,size:l.size};try{a.deck=await er(l)}catch(e){a.error=(0,b.oh)(e,e instanceof Error?e.message:"That file could not be read.")}if(U.current!==r){if(a.deck)for(let e of a.deck.images.values())URL.revokeObjectURL(e.url);return}if($(!1),t(a),H(3),a.error){E(a.error),p([]);return}p((a.deck?.slides??[]).filter(e=>!e.hidden).map(e=>e.index))},[]);(0,a.useEffect)(()=>{let t=e?.deck;if(t)return()=>{for(let e of t.images.values())URL.revokeObjectURL(e.url)}},[e]),(0,a.useEffect)(()=>{let e=e=>{let t=e.clipboardData?.files;t&&t.length>0&&_(t)};return document.addEventListener("paste",e),()=>document.removeEventListener("paste",e)},[_]),(0,a.useEffect)(()=>{let e=J.current;if(!e||"undefined"==typeof ResizeObserver)return;let t=new ResizeObserver(e=>{let t=e[0];t&&W(t.contentRect.width)});return t.observe(e),()=>t.disconnect()},[]);let K=(0,a.useMemo)(()=>{var t;return e?.deck&&S?(t=e.deck,t.slides.map(e=>(function(e,t){let l=[];for(let r of e.ops){if("shape"===r.t||"img"===r.t){l.push(r);continue}let e=r.box,{lines:a,total:i}=function(e,t){let l=[],r=0;for(let a of e.paras){if(r+=a.spaceBefore,0===a.runs.length){l.push({pieces:[],width:0,height:14.399999999999999,top:r,textLeft:0,bulletLeft:0,align:a.align,bullet:null,bulletSize:12,bulletColor:F}),r+=14.399999999999999;continue}let i=C(a.marL,0,Math.max(0,e.w-8)),n=C(i+a.indent,0,Math.max(0,e.w-8)),s=Math.max(8,e.w-i),o=[],c=0,d=!0,u=()=>{let e=o.reduce((e,t)=>
1Math.max(e,t.size),12),t=1.2*e*a.lineSpacing;l.push({pieces:o,width:c,height:t,top:r,textLeft:i,bulletLeft:n,align:a.align,bullet:d?a.bullet:null,bulletSize:e,bulletColor:o[0]?.color??F}),r+=t,o=[],c=0,d=!1};for(let e of a.runs){if(e.br){u();continue}for(let l of e.text.split(/(\s+)/).filter(e=>""!==e)){let r=l,a=en(t,r,e.size,e.bold,e.italic);if(c+a>s&&o.length>0&&""!==r.trim()&&u(),0!==o.length||""!==r.trim()){for(;a>s&&r.length>1;){let l=r.length;for(;l>1&&en(t,r.slice(0,l),e.size,e.bold,e.italic)>s;)l--;let i=r.slice(0,l);o.push({text:i,size:e.size,bold:e.bold,italic:e.italic,color:e.color,w:en(t,i,e.size,e.bold,e.italic)}),c+=en(t,i,e.size,e.bold,e.italic),u(),a=en(t,r=r.slice(l),e.size,e.bold,e.italic)}""!==r&&(o.push({text:r,size:e.size,bold:e.bold,italic:e.italic,color:e.color,w:a}),c+=a)}}}o.length>0&&u()}return{lines:l,total:r}}(e,t),n=0;for(let t of("ctr"===e.anchor?n=Math.max(0,(e.h-i)/2):"bottom"===e.anchor&&(n=Math.max(0,e.h-i)),a)){if(0===t.pieces.length)continue;let r=e.y+n+t.top,a=e.x+t.textLeft,i=Math.max(8,e.w-t.textLeft),s=a;for(let n of("ctr"===t.align?s=a+Math.max(0,(i-t.width)/2):"r"===t.align&&(s=a+Math.max(0,i-t.width)),t.bullet&&l.push({t:"txt",x:e.x+t.bulletLeft,y:r,size:t.bulletSize,bold:!1,italic:!1,color:t.bulletColor,text:t.bullet}),t.pieces))""!==n.text.trim()&&l.push({t:"txt",x:s,y:r,size:n.size,bold:n.bold,italic:n.italic,color:n.color,text:n.text}),s+=n.w}}return{index:e.index,hidden:e.hidden,title:e.title,bg:e.bg,ops:l,notes:e.notes}})(e,S))):null},[e,S]),Y=(0,a.useMemo)(()=>{let t=e?.deck;if(!t||!K||!S)return null;let r=new Set(l),a=K.filter(e=>r.has(e.index));return 0===a.length?null:function(e,t,l,r){let a=function(e,t){if("match"===e.pageSize&&"1"===e.layout)return{w:t.widthPt,h:t.heightPt,matched:!0};let l=y["match"===e.pageSize?"letter":e.pageSize];return e.landscape?{w:l.h,h:l.w,matched:!1}:{w:l.w,h:l.h,matched:!1}}(l,t),i=w[l.layout],n=a.matched?0:v[l.margin].pt,s=l.footer&&!a.matched?16:0,o=Math.max(40,a.w-2*n),c=Math.max(40,a.h-2*n-s),d=t.heightPt>0?t.widthPt/t.heightPt:4/3,u=[],h=1/0,p=i.notes?1:i.cols*i.rows,f="9"===l.layout?10:16,m=!l.slideNumbers||a.matched||i.notes?0:11;for(let a=0;a<e.length;a+=p){let s=e.slice(a,a+p),g=[],x=[],b=[];if(i.notes){let e=s[0],a=Math.min(o,.5*c*d),i=a/d,u=n+(o-a)/2,p=a/t.widthPt;h=Math.min(h,es(e,{x:u,y:n,w:a,h:i},p,l,g)),x.push({x:u,y:n,w:a,h:i,label:`Slide ${e.index}`});let f=n+c-10.5,m=e.notes.length>0,w=m?e.notes:["This slide has no speaker notes."],y=[];for(let e of w){let t=function(e,t,l,r){let a=e.split(/\s+/).filter(Boolean),i=[],n="";for(let e of a){let l=""===n?e:`${n} ${e}`;en(r,l,10.5,!1,!1)>t&&""!==n?(i.push(n),n=e):n=l}return""!==n&&i.push(n),i.length>0?i:[""]}(e,o,10.5,r);for(let e=0;e<t.length;e++)y.push({text:t[e],gapAfter:4*(e===t.length-1)})}let v=m?{r:.1,g:.1,b:.1}:{r:.55,g:.55,b:.55},N=g,k=n+i+20,j=m?`Notes for slide ${e.index}`:`Slide ${e.index}`,M=0;for(;;){for(N.push({t:"txt",x:n,y:k,size:11,bold:!0,italic:!1,color:{r:.25,g:.25,b:.25},text:j}),k+=18;M<y.length&&k<=f;){let e=y[M];N.push({t:"txt",x:n,y:k,size:10.5,bold:!1,italic:!m,color:v,text:e.text}),k+=14.175+e.gapAfter,M++}if(M>=y.length)break;let t=[];b.push({ops:t,frames:[],note:`notes for slide ${e.index}, continued`}),N=t,k=n,j=`Notes for slide ${e.index}, continued`}}else if(i.lines){let e=(c-f*(i.rows-1))/i.rows;for(let r=0;r<s.length;r++){let a=s[r],i=n+r*(e+f),c=Math.min(.48*o,(e-m)*d),u=c/d,p=i+(e-m-u)/2,b=c/t.widthPt;h=Math.min(h,es(a,{x:n,y:p,w:c,h:u},b,l,g)),x.push({x:n,y:p,w:c,h:u,label:`Slide ${a.index}`});let w=n+.52*o,y=.48*o,v=Math.max(1,Math.floor((u-6)/17));for(let e=0;e<v;e++){let t=p+8+17*e;g.push({t:"shape",kind:"rect",x:w,y:t,w:y,h:.5,fill:{r:.78,g:.78,b:.78},stroke:null,sw:0})}m>0&&g.push({t:"txt",x:n,y:p+u+2,size:8,bold:!1,italic:!1,color:{r:.45,g:.45,b:.45},text:`Slide ${a.index}`})}}else{let e=(o-f*(i.cols-1))/i.cols,r=(c-f*(i.rows-1))/i.rows,a=Math.max(12,r-m);for(let o=0;o<s.length;o++){let c=s[o],u=o%i.cols,p=Math.floor(o/i.cols),b=n+u*(e+f),w=Math.min(e,a*d),y=w/d,v=b+(e-w)/2,N=n+p*(r+f)+(a-y)/2,k=w/t.widthPt;h=Math.min(h,es(c,{x:v,y:N,w:w,h:y},k,l,g)),x.push({x:v,y:N,w:w,h:y,label:`Slide ${c.index}`}),m>0&&g.push({t:"txt",x:v,y:N+y+2,size:8,bold:!1,italic:!1,color:{r:.45,g:.45,b:.45},text:`Slide ${c.index}`})}}for(let e of(u.push({ops:g,frames:x}),b))u.push(e)}if(l.footer&&!a.matched)for(let e=0;e<u.length;e++){let t=`Page ${e+1} of ${u.length}`,l=en(r,t,8.5,!1,!1);u[e].ops.push({t:"txt",x:a.w-n-l,y:a.h-n+4,size:8.5,bold:!1,italic:!1,color:{r:.45,g:.45,b:.45},text:t})}return{pageW:a.w,pageH:a.h,pages:u,smallestText:Number.isFinite(h)?h:0}}(a,t,M,S)},[e,K,S,l,M]);function V(e){j(t=>({...t,...e}))}function Q(){t(null),p([]),E(""),H(3),G.current&&(G.current.value="")}async function X(){let t=e?.deck;if(Y&&t&&e&&0!==Y.pages.length){L(!0);try{let l=await eo(Y,t,ec(e.name));(0,x.WN)(new Blob([l.slice()],{type:"application/pdf"}),ec(e.name))}catch{E("The PDF could not be written. Try fewer slides, or a simpler layout.")}finally{L(!1)}}}let Z=e?.deck,ee=(Z?.slides??[]).filter(e=>e.shapesCapped).map(e=>e.index),et=Y?C((D-28)/Y.pageW,.1,1):.5,el=Y&&Y.smallestText>0&&Y.smallestText<4,ea="match"===g.pageSize&&"1"===g.layout,eu="match"===g.pageSize&&"1"!==g.layout,eh="notes"===M.layout&&Z&&0===Z.notesCount;return(0,r.jsxs)("div",{className:"space-y-5",children:[(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)(u.J,{htmlFor:"pptx-input",children:"Choose a PowerPoint file"}),(0,r.jsxs)("div",{onDragOver:e=>{e.preventDefault(),R(!0)},onDragLeave:()=>R(!1),onDrop:e=>{e.preventDefault(),R(!1),_(e.dataTransfer.files)},onClick:()=>G.current?.click(),onKeyDown:e=>
1{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),G.current?.click())},role:"button",tabIndex:0,"aria-label":"Choose a PowerPoint file to convert",className:(0,f.cn)("flex cursor-pointer flex-col items-center justify-center gap-1 rounded-md border border-dashed px-4 py-8 text-center text-sm transition-colors","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",O?"border-primary bg-accent":"border-input hover:bg-accent"),children:[(0,r.jsx)("span",{className:"font-medium",children:P?"Reading your slides...":"Click to choose a .pptx file"}),(0,r.jsx)("span",{className:"text-xs text-muted-foreground",children:"or drag one into the box, or paste a file you copied. Nothing is uploaded."}),(0,r.jsx)("input",{ref:G,id:"pptx-input",type:"file",accept:".pptx,.pptm,.potx,.ppsx,application/vnd.openxmlformats-officedocument.presentationml.presentation",className:"hidden",onChange:e=>{_(e.target.files),G.current&&(G.current.value="")}})]})]}),B&&(0,r.jsx)("p",{className:"text-sm text-destructive",children:B}),e&&!e.error&&Z&&(0,r.jsxs)("div",{className:"flex items-center gap-3 rounded-lg border bg-card p-3 text-sm",children:[(0,r.jsx)(i.A,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),(0,r.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,r.jsx)("span",{className:"block truncate font-medium",children:e.name}),(0,r.jsxs)("span",{className:"block text-xs text-muted-foreground",children:[(0,m.z)(e.size),", ",Z.slides.length," slide",1===Z.slides.length?"":"s",", ",Math.round(Z.widthPt/.72)/100," by"," ",Math.round(Z.heightPt/.72)/100," inches",Z.notesCount>0?`, notes on ${Z.notesCount}`:", no speaker notes"]})]}),(0,r.jsx)(c.$,{variant:"ghost",size:"icon","aria-label":"Remove this file",onClick:Q,children:(0,r.jsx)(n.A,{})})]}),Z&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"space-y-2 rounded-lg border bg-card p-4",children:[(0,r.jsx)(u.J,{children:"Slides per page"}),(0,r.jsx)("div",{className:"flex flex-wrap gap-2",children:Object.keys(w).map(e=>(0,r.jsx)("button",{type:"button",onClick:()=>(function(e){if("1"===e)return void V({layout:e,pageSize:"match",landscape:!0});j(t=>({...t,layout:e,pageSize:"match"===t.pageSize?"letter":t.pageSize,landscape:!1}))})(e),className:(0,f.cn)("rounded-md border px-3 py-1.5 text-sm transition-colors",g.layout===e?"border-primary bg-accent font-medium":"hover:bg-accent"),children:w[e].label},e))}),eh&&(0,r.jsxs)("p",{className:"flex items-start gap-1.5 text-xs text-amber-700 dark:text-amber-500",children:[(0,r.jsx)(s.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0"}),"No slide in this deck carries speaker notes, so the notes pages will come out empty under each slide."]}),el&&(0,r.jsxs)("p",{className:"flex items-start gap-1.5 text-xs text-amber-700 dark:text-amber-500",children:[(0,r.jsx)(s.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0"}),"The smallest text on this layout prints at about"," ",Y?Y.smallestText.toFixed(1):""," point, which is below what most people can read on paper. Fewer slides per page or a larger paper size will fix it."]})]}),(0,r.jsxs)("div",{className:"grid gap-3 rounded-lg border bg-card p-4 sm:grid-cols-2 lg:grid-cols-3",children:[(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)(u.J,{htmlFor:"pp-size",children:"Paper size"}),(0,r.jsx)("select",{id:"pp-size",value:g.pageSize,onChange:e=>V({pageSize:e.target.value}),className:"h-9 w-full rounded-md border border-input bg-background px-2 text-sm",children:Object.keys(y).map(e=>(0,r.jsx)("option",{value:e,children:y[e].label},e))})]}),(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)(u.J,{htmlFor:"pp-orient",children:"Orientation"}),(0,r.jsxs)("select",{id:"pp-orient",value:g.landscape?"l":"p",onChange:e=>V({landscape:"l"===e.target.value}),disabled:ea,className:"h-9 w-full rounded-md border border-input bg-background px-2 text-sm disabled:opacity-50",children:[(0,r.jsx)("option",{value:"p",children:"Portrait"}),(0,r.jsx)("option",{value:"l",children:"Landscape"})]})]}),(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)(u.J,{htmlFor:"pp-margin",children:"Margins"}),(0,r.jsx)("select",{id:"pp-margin",value:g.margin,onChange:e=>V({margin:e.target.value}),disabled:ea,className:"h-9 w-full rounded-md border border-input bg-background px-2 text-sm disabled:opacity-50",children:Object.keys(v).map(e=>(0,r.jsx)("option",{value:e,children:v[e].label},e))})]}),(0,r.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,r.jsx)("input",{type:"checkbox",checked:g.frame,onChange:e=>V({frame:e.target.checked}),className:"h-4 w-4"}),"Outline each slide"]}),(0,r.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,r.jsx)("input",{type:"checkbox",checked:g.slideNumbers,onChange:e=>V({slideNumbers:e.target.checked}),disabled:ea||"notes"===g.layout,className:"h-4 w-4"}),"Number each slide"]}),(0,r.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,r.jsx)("input",{type:"checkbox",checked:g.footer,onChange:e=>V({footer:e.target.checked}),disabled:ea,className:"h-4 w-4"}),"Page number in the footer"]}),ea&&(0,r.jsx)("p",{className:"text-xs text-muted-foreground sm:col-span-2 lg:col-span-3",children:"Each page is cut to the exact size of your slides, so there are no white bars and nothing to set."}),eu&&(0,r.jsx)("p",{className:"text-xs text-muted-foreground sm:col-span-2 lg:col-span-3",children:"Handouts need real paper, so Letter is being used instead of the slide size."})]}),(0,r.jsxs)("div",{className:"space-y-2 rounded-lg border bg-card p-4",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,r.jsx)(u.J,{children:"Slides to include"}),(0,r.jsxs)("div",{className:"flex gap-2",children:[(0,r.jsx)(c.$,{variant:"outline",size:"sm",onClick:function(){p((e?.deck?.slides??[]).filter(e=>!e.hidden).map(e=>e.index))},children:"Skip hidden"}),(0,r.jsx)(c.$,{variant:"outline",size:"sm",onClick:function(){p((e?.deck?.slides??[]).map(e=>e.index))},children:"All"}),(0,r.jsx)(c.$,{variant:"outline",size:"sm",onClick:()=>p([]),children:"None"})]})]}),(0,r.jsx)("div",{className:"flex max-h-44 flex-wrap gap-1.5 overflow-auto",children:Z.slides.map(e=>{let t=l.includes(e.index);return(0,r.jsxs)("button",{type:"button",title:e.title,onClick:()=>{var t;return t=e.index,void p(e=>e.includes(t)?e.filter(e=>e!==t):[...e,t].sort((e,t)=>
1e-t))},className:(0,f.cn)("rounded-md border px-2.5 py-1 text-xs transition-colors",t?"border-primary bg-accent font-medium":"hover:bg-accent",e.hidden&&"italic"),children:[e.index,e.hidden&&(0,r.jsx)("span",{className:"ml-1 text-muted-foreground",children:"hidden"}),e.notes.length>0&&(0,r.jsx)("span",{className:"ml-1 text-muted-foreground",children:"N"})]},e.index)})}),(0,r.jsxs)("p",{className:"text-xs text-muted-foreground",children:[l.length," of ",Z.slides.length," selected. Slides hidden in PowerPoint start switched off, and N marks a slide that carries speaker notes."]}),Z.extraSlides>0&&(0,r.jsxs)("p",{className:"text-xs text-amber-700 dark:text-amber-500",children:["This deck has more than ",200," slides. The first ",200," were read and the other ",Z.extraSlides," were left out."]}),(Z.droppedMedia>0||Z.placeholderGraphics>0)&&(0,r.jsxs)("p",{className:"text-xs text-muted-foreground",children:[Z.placeholderGraphics>0&&`${Z.placeholderGraphics} chart or diagram ${1===Z.placeholderGraphics?"is":"are"} drawn as a labeled outline. `,Z.droppedMedia>0&&`${Z.droppedMedia} picture ${1===Z.droppedMedia?"was":"were"} too large or in a format that cannot be drawn, and ${1===Z.droppedMedia?"was":"were"} left out.`]}),Z.swapped>0&&(0,r.jsxs)("p",{className:"text-xs text-amber-700 dark:text-amber-500",children:[Z.swapped," character",1===Z.swapped?"":"s"," outside the Latin alphabet, such as Chinese, Greek or Cyrillic, print as a question mark. The standard PDF typefaces cannot draw them."]}),ee.length>0&&(0,r.jsx)("p",{className:"text-xs text-amber-700 dark:text-amber-500",children:1===ee.length?`Slide ${ee[0]} holds more than 600 separate objects. The first 600 were drawn and the rest were left out.`:`${ee.length} slides hold more than 600 separate objects each (${ee.slice(0,6).join(", ")}${ee.length>6?" and more":""}). The first 600 on each were drawn and the rest were left out.`})]}),(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,r.jsxs)(c.$,{onClick:()=>void X(),disabled:T||!Y||0===Y.pages.length,children:[(0,r.jsx)(o.A,{className:"mr-2 h-4 w-4"}),T?"Writing the PDF...":`Download ${Y?`${Y.pages.length}-page `:""}PDF`]}),(0,r.jsx)(c.$,{variant:"outline",onClick:Q,disabled:T,children:"Clear"}),!S&&(0,r.jsx)("span",{className:"text-xs text-muted-foreground",children:"Starting up..."})]}),Y&&Y.pages.length>0&&(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-baseline justify-between gap-2",children:[(0,r.jsx)(u.J,{children:"Preview"}),(0,r.jsx)("span",{className:"text-xs text-muted-foreground",children:"The real pages, redrawn every time you change a setting."})]}),(0,r.jsxs)("div",{ref:J,className:"max-h-[46rem] overflow-auto rounded-lg border bg-muted/40 p-3",children:[(0,r.jsx)("div",{className:"mx-auto flex w-fit flex-col items-center gap-4",children:Y.pages.slice(0,I).map((e,t)=>(0,r.jsxs)("div",{className:"space-y-1",children:[(0,r.jsx)("div",{className:"relative overflow-hidden bg-white shadow-sm ring-1 ring-black/10",style:{width:Y.pageW*et,height:Y.pageH*et},children:e.ops.map((e,t)=>{if("shape"===e.t)return(0,r.jsx)("div",{className:"absolute",style:{left:e.x*et,top:e.y*et,width:Math.max(.5,e.w*et),height:Math.max(.5,e.h*et),background:e.fill?ed(e.fill):"transparent",border:e.stroke&&e.sw>0?`${Math.max(.5,e.sw*et)}px solid ${ed(e.stroke)}`:void 0,borderRadius:"ellipse"===e.kind?"50%":void 0}},t);if("img"===e.t){let l=Z.images.get(e.id);return l?(0,r.jsx)("img",{src:l.url,alt:"",className:"absolute",style:{left:e.x*et,top:e.y*et,width:Math.max(.5,e.w*et),height:Math.max(.5,e.h*et),objectFit:"fill"}},t):null}return(0,r.jsx)("span",{className:"absolute whitespace-pre",style:{left:e.x*et,top:e.y*et,fontSize:Math.max(1,e.size*et),lineHeight:1,fontFamily:"Helvetica, Arial, sans-serif",fontWeight:e.bold?700:400,fontStyle:e.italic?"italic":"normal",color:ed(e.color)},children:e.text},t)})}),(0,r.jsxs)("p",{className:"text-center text-xs text-muted-foreground",children:["Page ",t+1," of ",Y.pages.length,e.note?`, ${e.note}`:e.frames.length>1?`, slides ${e.frames[0].label.replace("Slide ","")} to ${e.frames[e.frames.length-1].label.replace("Slide ","")}`:1===e.frames.length?`, ${e.frames[0].label.toLowerCase()}`:""]})]},t))}),I<Y.pages.length&&(0,r.jsx)("div",{className:"mt-3 flex justify-center",children:(0,r.jsx)(c.$,{variant:"outline",size:"sm",onClick:()=>H(e=>e+3),children:"Show more pages"})})]})]}),0===l.length&&(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"Pick at least one slide to see the pages."})]}),(0,r.jsx)(h.ToolActions,{getParams:q,title:"PowerPoint to PDF Converter"})]})}}}]);

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.