pptx-vanilla-viewer 1.14.1 → 1.14.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,12 @@ All notable changes to this project are documented here.
4
4
  This file is generated from [Conventional Commits](https://www.conventionalcommits.org)
5
5
  by [git-cliff](https://git-cliff.org); do not edit it by hand.
6
6
 
7
+ ## [1.14.1](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-vanilla-viewer@1.14.1) - 2026-08-05
8
+
9
+ ### Dependencies
10
+
11
+ - **deps:** Bump ai from 7.0.48 to 7.0.44 ([#134](https://github.com/ChristopherVR/pptx-viewer/issues/134)) (by @dependabot[bot]) ([08a13e0](https://github.com/ChristopherVR/pptx-viewer/commit/08a13e076caa6d97e22bd706e57657407aef1dd8))
12
+
7
13
  ## [1.14.0](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-vanilla-viewer@1.14.0) - 2026-08-01
8
14
 
9
15
  ## [1.13.1](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-vanilla-viewer@1.13.1) - 2026-08-01
@@ -1 +1 @@
1
- 'use strict';var chunkCWR3UQRU_cjs=require('./chunk-CWR3UQRU.cjs');require('./chunk-4VDLQK6F.cjs');function j(e){let{doc:t,t:n,controller:i}=e,p=chunkCWR3UQRU_cjs.ii(t,"div","pptxv-ai-focus"),m=(c,s,d)=>{let r=chunkCWR3UQRU_cjs.ii(t,"button","pptxv-ai-focus-btn");return r.type="button",r.title=s,r.setAttribute("aria-label",s),r.appendChild(chunkCWR3UQRU_cjs.ri(t,c)),r.addEventListener("click",d),r},x=()=>{p.replaceChildren();let c=i.getEffectiveTargets(),s=i.hasPicks(),d=i.isPinned(),r=i.isPicking(),f=chunkCWR3UQRU_cjs.ii(t,"div","pptxv-ai-focus-row"),b=chunkCWR3UQRU_cjs.ii(t,"span","pptxv-ai-focus-label");b.textContent=n("pptx.ai.focusScope"),f.appendChild(b);for(let h of chunkCWR3UQRU_cjs.di(c,e.getSlides())){let T=chunkCWR3UQRU_cjs.ii(t,"span","pptxv-ai-focus-chip");(s||d)&&T.classList.add("is-strong"),T.title=h.title,T.textContent=h.label,f.appendChild(T);}if(d){let h=chunkCWR3UQRU_cjs.ii(t,"span","pptxv-ai-focus-pinned");h.textContent=n("pptx.ai.pinnedFocus"),f.appendChild(h);}let u=chunkCWR3UQRU_cjs.ii(t,"div","pptxv-ai-focus-actions"),C=chunkCWR3UQRU_cjs.ei(c,e.getSlides());if(C){let h=chunkCWR3UQRU_cjs.ii(t,"button","pptxv-ai-focus-merge");h.type="button",h.append(chunkCWR3UQRU_cjs.ri(t,"git-merge"),t.createTextNode(n("pptx.ai.mergeSelectedTables"))),h.addEventListener("click",()=>e.onSendDirective(chunkCWR3UQRU_cjs.fi(C.slideIndex,C.elementIdA,C.elementIdB))),u.appendChild(h);}let v=m("crosshair",n("pptx.ai.pickElement"),()=>r?i.stopPicking():i.startPicking());if(v.setAttribute("aria-pressed",String(r)),v.classList.toggle("is-active",r),u.appendChild(v),s?u.appendChild(m("close",n("pptx.ai.pickClear"),()=>i.clearPicks())):d?u.appendChild(m("pin-off",n("pptx.ai.clearFocus"),()=>i.clearPinnedFocus())):u.appendChild(m("pin",n("pptx.ai.pinFocus"),()=>i.pinFocus())),f.appendChild(u),p.appendChild(f),r){let h=chunkCWR3UQRU_cjs.ii(t,"div","pptxv-ai-focus-pick"),T=chunkCWR3UQRU_cjs.ri(t,"crosshair");T.classList.add("pptxv-ai-focus-pick-icon");let A=chunkCWR3UQRU_cjs.ii(t,"span","pptxv-ai-focus-pick-hint");A.textContent=n("pptx.ai.pickElementHint");let P=chunkCWR3UQRU_cjs.ii(t,"button","pptxv-ai-focus-pick-done");P.type="button",P.textContent=n("pptx.ai.pickDone"),P.addEventListener("click",()=>i.stopPicking()),h.append(T,A,P),p.appendChild(h);}},a=i.subscribe(x);return x(),{el:p,destroy(){a(),p.remove();}}}var J={view:"eye",text:"text-box",shape:"shapes",theme:"font-color",table:"table",slide:"layout",chart:"chart",move:"move-right",delete:"trash",search:"search",nav:"move-right",animation:"play",notes:"sticky-note",tool:"wrench"};function R(e,t,n){let i=t.state==="output-error",p=t.state==="output-available",m=!i&&!p,x=chunkCWR3UQRU_cjs.Ai(t.toolName,t.input,m?"present":"past"),a=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-tool"),c=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-tool-head"),s=chunkCWR3UQRU_cjs.ri(e,J[x.icon]??"wrench");s.classList.add("pptxv-ai-tool-icon");let d=chunkCWR3UQRU_cjs.ii(e,"span","pptxv-ai-tool-name");d.textContent=x.label;let r=chunkCWR3UQRU_cjs.ii(e,"span","pptxv-ai-tool-state");if(i?(r.classList.add("is-error"),r.append(chunkCWR3UQRU_cjs.ri(e,"alert"),e.createTextNode(n("pptx.ai.toolFailed")))):p?(r.classList.add("is-done"),r.append(chunkCWR3UQRU_cjs.ri(e,"check"),e.createTextNode(n("pptx.ai.toolDone")))):(r.classList.add("is-running"),r.textContent=n("pptx.ai.toolRunning")),c.append(s,d,r),a.appendChild(c),i&&t.errorText){let b=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-tool-error");b.textContent=t.errorText,a.appendChild(b);}let f=chunkCWR3UQRU_cjs.zi(t.input);if(f){let b=chunkCWR3UQRU_cjs.ii(e,"details","pptxv-ai-tool-details"),u=chunkCWR3UQRU_cjs.ii(e,"summary");u.textContent=n("pptx.ai.toolDetails");let C=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-tool-raw");C.textContent=`${chunkCWR3UQRU_cjs.yi(t.toolName)}: ${f}`,b.append(u,C),a.appendChild(b);}return a}function U(e,t,n,i){t.replaceChildren();for(let p of n){if(p.role==="system")continue;let m=p.role==="user",x=chunkCWR3UQRU_cjs.xi(p);if(x.length===0&&!m)continue;let a=chunkCWR3UQRU_cjs.ii(e,"div",`pptxv-ai-msg pptxv-ai-msg-${p.role}`),c=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-msg-avatar");c.setAttribute("aria-label",i(m?"pptx.ai.you":"pptx.ai.assistant")),c.appendChild(chunkCWR3UQRU_cjs.ri(e,m?"comment":"sparkles"));let s=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-msg-body");for(let d of x)if(d.kind==="text"){let r=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-msg-text");r.textContent=d.text,s.appendChild(r);}else s.appendChild(R(e,d,i));a.append(c,s),t.appendChild(a);}}function $(e,t,n,i,p){if(t.replaceChildren(),t.hidden=n.length===0,n.length===0)return;let m=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-proposals-header"),x=chunkCWR3UQRU_cjs.ii(e,"span","pptxv-ai-proposals-title");if(x.textContent=i("pptx.ai.pendingChanges",{count:n.length}),m.appendChild(x),n.length>1){let a=chunkCWR3UQRU_cjs.ii(e,"button","pptxv-ai-proposal-btn is-accept-all");a.type="button",a.textContent=i("pptx.ai.acceptAll"),a.addEventListener("click",()=>p.acceptAll()),m.appendChild(a);}t.appendChild(m);for(let a of n)t.appendChild(Q(e,a,i,p));}function Q(e,t,n,i){let p=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-proposal");p.dataset.proposalId=t.id;let m=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-proposal-eyebrow");m.textContent=n("pptx.ai.proposedChange"),p.appendChild(m);let x=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-proposal-label");if(x.textContent=t.label,p.appendChild(x),t.summary.length>0){let d=chunkCWR3UQRU_cjs.ii(e,"ul","pptxv-ai-proposal-summary");for(let r of t.summary){let f=chunkCWR3UQRU_cjs.ii(e,"li");f.textContent=chunkCWR3UQRU_cjs.ti(r),d.appendChild(f);}p.appendChild(d);}let a=chunkCWR3UQRU_cjs.ii(e,"div","pptxv-ai-proposal-actions"),c=chunkCWR3UQRU_cjs.ii(e,"button","pptxv-ai-proposal-btn is-accept");c.type="button",c.append(chunkCWR3UQRU_cjs.ri(e,"check"),e.createTextNode(n("pptx.ai.accept"))),c.addEventListener("click",()=>i.accept(t.id));let s=chunkCWR3UQRU_cjs.ii(e,"button","pptxv-ai-proposal-btn is-reject");return s.type="button",s.append(chunkCWR3UQRU_cjs.ri(e,"close"),e.createTextNode(n("pptx.ai.reject"))),s.addEventListener("click",()=>i.reject(t.id)),a.append(c,s),p.appendChild(a),p}async function gt(e){let{doc:t,host:n,t:i}=e;n.replaceChildren();let p=chunkCWR3UQRU_cjs.ii(t,"div","pptxv-ai-header"),m=chunkCWR3UQRU_cjs.ii(t,"span","pptxv-ai-title");m.textContent=i("pptx.ai.title"),p.append(chunkCWR3UQRU_cjs.ri(t,"sparkles"),m);let x,a=e.controller,c=a?j({doc:t,t:i,controller:a,getSlides:()=>e.bridge.getSlides(),onSendDirective:l=>{x?.sendMessage(l);}}):null,s=chunkCWR3UQRU_cjs.ii(t,"div","pptxv-ai-messages");s.setAttribute("role","log"),s.setAttribute("aria-live","polite");let d=chunkCWR3UQRU_cjs.ii(t,"div","pptxv-ai-empty");d.textContent=i("pptx.ai.emptyHint"),s.appendChild(d);let r=chunkCWR3UQRU_cjs.ii(t,"div","pptxv-ai-proposals");r.hidden=true;let f=chunkCWR3UQRU_cjs.ii(t,"div","pptxv-ai-error");f.setAttribute("role","alert"),f.hidden=true;let b=chunkCWR3UQRU_cjs.ii(t,"form","pptxv-ai-composer"),u=chunkCWR3UQRU_cjs.ii(t,"textarea","pptxv-ai-input");u.rows=2,u.placeholder=i("pptx.ai.placeholder");let C=chunkCWR3UQRU_cjs.ii(t,"button","pptxv-ai-send");C.type="submit",C.setAttribute("aria-label",i("pptx.ai.send")),C.appendChild(chunkCWR3UQRU_cjs.ri(t,"send")),b.append(u,C),n.append(p,...c?[c.el]:[],s,r,f,b);try{x=await(e.createChat??chunkCWR3UQRU_cjs.wi)({bridge:e.bridge,config:e.config});}catch{return d.textContent=i("pptx.ai.unavailableTitle"),u.disabled=true,C.disabled=true,c?.destroy(),{destroy:()=>n.replaceChildren()}}let v=x,h=new Set,T=l=>{if(!a)return;let y=l.messages.flatMap(q=>chunkCWR3UQRU_cjs.xi(q).filter(G=>G.kind==="tool")).at(-1);if(!y||y.kind!=="tool"||y.state==="input-streaming"||h.has(y.toolCallId))return;h.add(y.toolCallId);let k=chunkCWR3UQRU_cjs.Bi(y.toolName,y.input);k&&k.slideIndex!==void 0&&e.goToSlide?.(k.slideIndex),a.flashToolTarget(k);},A=l=>{U(t,s,l.messages,i),d.hidden=l.messages.length>0,l.messages.length===0&&s.appendChild(d),$(t,r,v.proposals.list(),i,{accept:y=>{a?.flashToolTarget(null),v.proposals.apply(y),A(v.getSnapshot());},reject:y=>{v.proposals.revert(y),A(v.getSnapshot());},acceptAll:()=>{a?.flashToolTarget(null),v.proposals.acceptAll(),A(v.getSnapshot());}});let S=l.status==="submitted"||l.status==="streaming";n.classList.toggle("is-busy",S),C.setAttribute("aria-label",i(S?"pptx.ai.stop":"pptx.ai.send")),f.hidden=!l.error,f.textContent=l.error?i("pptx.ai.errorPrefix"):"",s.scrollTop=s.scrollHeight,T(l);},P=()=>{if(n.classList.contains("is-busy")){v.stop();return}let l=u.value.trim();l&&(u.value="",v.sendMessage(l));};b.addEventListener("submit",l=>{l.preventDefault(),P();}),u.addEventListener("keydown",l=>{l.key==="Enter"&&!l.shiftKey&&(l.preventDefault(),P());});let w=a?.getPrefill().nonce??0,z=()=>{if(!a)return;let l=a.getPrefill();l.nonce!==w&&(w=l.nonce,u.value=l.text,u.focus());},K=a?.subscribe(z),O=v.subscribe(A);return A(v.getSnapshot()),{changeAnimator:v.changeAnimator,destroy(){O(),K?.(),c?.destroy(),n.replaceChildren();}}}exports.createAiPanel=gt;
1
+ 'use strict';var chunkPLNDPBM2_cjs=require('./chunk-PLNDPBM2.cjs');require('./chunk-4VDLQK6F.cjs');function j(e){let{doc:t,t:n,controller:i}=e,p=chunkPLNDPBM2_cjs.ii(t,"div","pptxv-ai-focus"),m=(c,s,d)=>{let r=chunkPLNDPBM2_cjs.ii(t,"button","pptxv-ai-focus-btn");return r.type="button",r.title=s,r.setAttribute("aria-label",s),r.appendChild(chunkPLNDPBM2_cjs.ri(t,c)),r.addEventListener("click",d),r},x=()=>{p.replaceChildren();let c=i.getEffectiveTargets(),s=i.hasPicks(),d=i.isPinned(),r=i.isPicking(),f=chunkPLNDPBM2_cjs.ii(t,"div","pptxv-ai-focus-row"),b=chunkPLNDPBM2_cjs.ii(t,"span","pptxv-ai-focus-label");b.textContent=n("pptx.ai.focusScope"),f.appendChild(b);for(let h of chunkPLNDPBM2_cjs.di(c,e.getSlides())){let T=chunkPLNDPBM2_cjs.ii(t,"span","pptxv-ai-focus-chip");(s||d)&&T.classList.add("is-strong"),T.title=h.title,T.textContent=h.label,f.appendChild(T);}if(d){let h=chunkPLNDPBM2_cjs.ii(t,"span","pptxv-ai-focus-pinned");h.textContent=n("pptx.ai.pinnedFocus"),f.appendChild(h);}let u=chunkPLNDPBM2_cjs.ii(t,"div","pptxv-ai-focus-actions"),C=chunkPLNDPBM2_cjs.ei(c,e.getSlides());if(C){let h=chunkPLNDPBM2_cjs.ii(t,"button","pptxv-ai-focus-merge");h.type="button",h.append(chunkPLNDPBM2_cjs.ri(t,"git-merge"),t.createTextNode(n("pptx.ai.mergeSelectedTables"))),h.addEventListener("click",()=>e.onSendDirective(chunkPLNDPBM2_cjs.fi(C.slideIndex,C.elementIdA,C.elementIdB))),u.appendChild(h);}let v=m("crosshair",n("pptx.ai.pickElement"),()=>r?i.stopPicking():i.startPicking());if(v.setAttribute("aria-pressed",String(r)),v.classList.toggle("is-active",r),u.appendChild(v),s?u.appendChild(m("close",n("pptx.ai.pickClear"),()=>i.clearPicks())):d?u.appendChild(m("pin-off",n("pptx.ai.clearFocus"),()=>i.clearPinnedFocus())):u.appendChild(m("pin",n("pptx.ai.pinFocus"),()=>i.pinFocus())),f.appendChild(u),p.appendChild(f),r){let h=chunkPLNDPBM2_cjs.ii(t,"div","pptxv-ai-focus-pick"),T=chunkPLNDPBM2_cjs.ri(t,"crosshair");T.classList.add("pptxv-ai-focus-pick-icon");let A=chunkPLNDPBM2_cjs.ii(t,"span","pptxv-ai-focus-pick-hint");A.textContent=n("pptx.ai.pickElementHint");let P=chunkPLNDPBM2_cjs.ii(t,"button","pptxv-ai-focus-pick-done");P.type="button",P.textContent=n("pptx.ai.pickDone"),P.addEventListener("click",()=>i.stopPicking()),h.append(T,A,P),p.appendChild(h);}},a=i.subscribe(x);return x(),{el:p,destroy(){a(),p.remove();}}}var J={view:"eye",text:"text-box",shape:"shapes",theme:"font-color",table:"table",slide:"layout",chart:"chart",move:"move-right",delete:"trash",search:"search",nav:"move-right",animation:"play",notes:"sticky-note",tool:"wrench"};function R(e,t,n){let i=t.state==="output-error",p=t.state==="output-available",m=!i&&!p,x=chunkPLNDPBM2_cjs.Ai(t.toolName,t.input,m?"present":"past"),a=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-tool"),c=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-tool-head"),s=chunkPLNDPBM2_cjs.ri(e,J[x.icon]??"wrench");s.classList.add("pptxv-ai-tool-icon");let d=chunkPLNDPBM2_cjs.ii(e,"span","pptxv-ai-tool-name");d.textContent=x.label;let r=chunkPLNDPBM2_cjs.ii(e,"span","pptxv-ai-tool-state");if(i?(r.classList.add("is-error"),r.append(chunkPLNDPBM2_cjs.ri(e,"alert"),e.createTextNode(n("pptx.ai.toolFailed")))):p?(r.classList.add("is-done"),r.append(chunkPLNDPBM2_cjs.ri(e,"check"),e.createTextNode(n("pptx.ai.toolDone")))):(r.classList.add("is-running"),r.textContent=n("pptx.ai.toolRunning")),c.append(s,d,r),a.appendChild(c),i&&t.errorText){let b=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-tool-error");b.textContent=t.errorText,a.appendChild(b);}let f=chunkPLNDPBM2_cjs.zi(t.input);if(f){let b=chunkPLNDPBM2_cjs.ii(e,"details","pptxv-ai-tool-details"),u=chunkPLNDPBM2_cjs.ii(e,"summary");u.textContent=n("pptx.ai.toolDetails");let C=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-tool-raw");C.textContent=`${chunkPLNDPBM2_cjs.yi(t.toolName)}: ${f}`,b.append(u,C),a.appendChild(b);}return a}function U(e,t,n,i){t.replaceChildren();for(let p of n){if(p.role==="system")continue;let m=p.role==="user",x=chunkPLNDPBM2_cjs.xi(p);if(x.length===0&&!m)continue;let a=chunkPLNDPBM2_cjs.ii(e,"div",`pptxv-ai-msg pptxv-ai-msg-${p.role}`),c=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-msg-avatar");c.setAttribute("aria-label",i(m?"pptx.ai.you":"pptx.ai.assistant")),c.appendChild(chunkPLNDPBM2_cjs.ri(e,m?"comment":"sparkles"));let s=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-msg-body");for(let d of x)if(d.kind==="text"){let r=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-msg-text");r.textContent=d.text,s.appendChild(r);}else s.appendChild(R(e,d,i));a.append(c,s),t.appendChild(a);}}function $(e,t,n,i,p){if(t.replaceChildren(),t.hidden=n.length===0,n.length===0)return;let m=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-proposals-header"),x=chunkPLNDPBM2_cjs.ii(e,"span","pptxv-ai-proposals-title");if(x.textContent=i("pptx.ai.pendingChanges",{count:n.length}),m.appendChild(x),n.length>1){let a=chunkPLNDPBM2_cjs.ii(e,"button","pptxv-ai-proposal-btn is-accept-all");a.type="button",a.textContent=i("pptx.ai.acceptAll"),a.addEventListener("click",()=>p.acceptAll()),m.appendChild(a);}t.appendChild(m);for(let a of n)t.appendChild(Q(e,a,i,p));}function Q(e,t,n,i){let p=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-proposal");p.dataset.proposalId=t.id;let m=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-proposal-eyebrow");m.textContent=n("pptx.ai.proposedChange"),p.appendChild(m);let x=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-proposal-label");if(x.textContent=t.label,p.appendChild(x),t.summary.length>0){let d=chunkPLNDPBM2_cjs.ii(e,"ul","pptxv-ai-proposal-summary");for(let r of t.summary){let f=chunkPLNDPBM2_cjs.ii(e,"li");f.textContent=chunkPLNDPBM2_cjs.ti(r),d.appendChild(f);}p.appendChild(d);}let a=chunkPLNDPBM2_cjs.ii(e,"div","pptxv-ai-proposal-actions"),c=chunkPLNDPBM2_cjs.ii(e,"button","pptxv-ai-proposal-btn is-accept");c.type="button",c.append(chunkPLNDPBM2_cjs.ri(e,"check"),e.createTextNode(n("pptx.ai.accept"))),c.addEventListener("click",()=>i.accept(t.id));let s=chunkPLNDPBM2_cjs.ii(e,"button","pptxv-ai-proposal-btn is-reject");return s.type="button",s.append(chunkPLNDPBM2_cjs.ri(e,"close"),e.createTextNode(n("pptx.ai.reject"))),s.addEventListener("click",()=>i.reject(t.id)),a.append(c,s),p.appendChild(a),p}async function gt(e){let{doc:t,host:n,t:i}=e;n.replaceChildren();let p=chunkPLNDPBM2_cjs.ii(t,"div","pptxv-ai-header"),m=chunkPLNDPBM2_cjs.ii(t,"span","pptxv-ai-title");m.textContent=i("pptx.ai.title"),p.append(chunkPLNDPBM2_cjs.ri(t,"sparkles"),m);let x,a=e.controller,c=a?j({doc:t,t:i,controller:a,getSlides:()=>e.bridge.getSlides(),onSendDirective:l=>{x?.sendMessage(l);}}):null,s=chunkPLNDPBM2_cjs.ii(t,"div","pptxv-ai-messages");s.setAttribute("role","log"),s.setAttribute("aria-live","polite");let d=chunkPLNDPBM2_cjs.ii(t,"div","pptxv-ai-empty");d.textContent=i("pptx.ai.emptyHint"),s.appendChild(d);let r=chunkPLNDPBM2_cjs.ii(t,"div","pptxv-ai-proposals");r.hidden=true;let f=chunkPLNDPBM2_cjs.ii(t,"div","pptxv-ai-error");f.setAttribute("role","alert"),f.hidden=true;let b=chunkPLNDPBM2_cjs.ii(t,"form","pptxv-ai-composer"),u=chunkPLNDPBM2_cjs.ii(t,"textarea","pptxv-ai-input");u.rows=2,u.placeholder=i("pptx.ai.placeholder");let C=chunkPLNDPBM2_cjs.ii(t,"button","pptxv-ai-send");C.type="submit",C.setAttribute("aria-label",i("pptx.ai.send")),C.appendChild(chunkPLNDPBM2_cjs.ri(t,"send")),b.append(u,C),n.append(p,...c?[c.el]:[],s,r,f,b);try{x=await(e.createChat??chunkPLNDPBM2_cjs.wi)({bridge:e.bridge,config:e.config});}catch{return d.textContent=i("pptx.ai.unavailableTitle"),u.disabled=true,C.disabled=true,c?.destroy(),{destroy:()=>n.replaceChildren()}}let v=x,h=new Set,T=l=>{if(!a)return;let y=l.messages.flatMap(q=>chunkPLNDPBM2_cjs.xi(q).filter(G=>G.kind==="tool")).at(-1);if(!y||y.kind!=="tool"||y.state==="input-streaming"||h.has(y.toolCallId))return;h.add(y.toolCallId);let k=chunkPLNDPBM2_cjs.Bi(y.toolName,y.input);k&&k.slideIndex!==void 0&&e.goToSlide?.(k.slideIndex),a.flashToolTarget(k);},A=l=>{U(t,s,l.messages,i),d.hidden=l.messages.length>0,l.messages.length===0&&s.appendChild(d),$(t,r,v.proposals.list(),i,{accept:y=>{a?.flashToolTarget(null),v.proposals.apply(y),A(v.getSnapshot());},reject:y=>{v.proposals.revert(y),A(v.getSnapshot());},acceptAll:()=>{a?.flashToolTarget(null),v.proposals.acceptAll(),A(v.getSnapshot());}});let S=l.status==="submitted"||l.status==="streaming";n.classList.toggle("is-busy",S),C.setAttribute("aria-label",i(S?"pptx.ai.stop":"pptx.ai.send")),f.hidden=!l.error,f.textContent=l.error?i("pptx.ai.errorPrefix"):"",s.scrollTop=s.scrollHeight,T(l);},P=()=>{if(n.classList.contains("is-busy")){v.stop();return}let l=u.value.trim();l&&(u.value="",v.sendMessage(l));};b.addEventListener("submit",l=>{l.preventDefault(),P();}),u.addEventListener("keydown",l=>{l.key==="Enter"&&!l.shiftKey&&(l.preventDefault(),P());});let w=a?.getPrefill().nonce??0,z=()=>{if(!a)return;let l=a.getPrefill();l.nonce!==w&&(w=l.nonce,u.value=l.text,u.focus());},K=a?.subscribe(z),O=v.subscribe(A);return A(v.getSnapshot()),{changeAnimator:v.changeAnimator,destroy(){O(),K?.(),c?.destroy(),n.replaceChildren();}}}exports.createAiPanel=gt;
@@ -1 +1 @@
1
- import {ii,ri,wi,xi,Bi,di,ei,fi,Ai,zi,yi,ti}from'./chunk-OYBQA2H2.js';import'./chunk-WOT6VMZA.js';function j(e){let{doc:t,t:n,controller:i}=e,p=ii(t,"div","pptxv-ai-focus"),m=(c,s,d)=>{let r=ii(t,"button","pptxv-ai-focus-btn");return r.type="button",r.title=s,r.setAttribute("aria-label",s),r.appendChild(ri(t,c)),r.addEventListener("click",d),r},x=()=>{p.replaceChildren();let c=i.getEffectiveTargets(),s=i.hasPicks(),d=i.isPinned(),r=i.isPicking(),f=ii(t,"div","pptxv-ai-focus-row"),b=ii(t,"span","pptxv-ai-focus-label");b.textContent=n("pptx.ai.focusScope"),f.appendChild(b);for(let h of di(c,e.getSlides())){let T=ii(t,"span","pptxv-ai-focus-chip");(s||d)&&T.classList.add("is-strong"),T.title=h.title,T.textContent=h.label,f.appendChild(T);}if(d){let h=ii(t,"span","pptxv-ai-focus-pinned");h.textContent=n("pptx.ai.pinnedFocus"),f.appendChild(h);}let u=ii(t,"div","pptxv-ai-focus-actions"),C=ei(c,e.getSlides());if(C){let h=ii(t,"button","pptxv-ai-focus-merge");h.type="button",h.append(ri(t,"git-merge"),t.createTextNode(n("pptx.ai.mergeSelectedTables"))),h.addEventListener("click",()=>e.onSendDirective(fi(C.slideIndex,C.elementIdA,C.elementIdB))),u.appendChild(h);}let v=m("crosshair",n("pptx.ai.pickElement"),()=>r?i.stopPicking():i.startPicking());if(v.setAttribute("aria-pressed",String(r)),v.classList.toggle("is-active",r),u.appendChild(v),s?u.appendChild(m("close",n("pptx.ai.pickClear"),()=>i.clearPicks())):d?u.appendChild(m("pin-off",n("pptx.ai.clearFocus"),()=>i.clearPinnedFocus())):u.appendChild(m("pin",n("pptx.ai.pinFocus"),()=>i.pinFocus())),f.appendChild(u),p.appendChild(f),r){let h=ii(t,"div","pptxv-ai-focus-pick"),T=ri(t,"crosshair");T.classList.add("pptxv-ai-focus-pick-icon");let A=ii(t,"span","pptxv-ai-focus-pick-hint");A.textContent=n("pptx.ai.pickElementHint");let P=ii(t,"button","pptxv-ai-focus-pick-done");P.type="button",P.textContent=n("pptx.ai.pickDone"),P.addEventListener("click",()=>i.stopPicking()),h.append(T,A,P),p.appendChild(h);}},a=i.subscribe(x);return x(),{el:p,destroy(){a(),p.remove();}}}var J={view:"eye",text:"text-box",shape:"shapes",theme:"font-color",table:"table",slide:"layout",chart:"chart",move:"move-right",delete:"trash",search:"search",nav:"move-right",animation:"play",notes:"sticky-note",tool:"wrench"};function R(e,t,n){let i=t.state==="output-error",p=t.state==="output-available",m=!i&&!p,x=Ai(t.toolName,t.input,m?"present":"past"),a=ii(e,"div","pptxv-ai-tool"),c=ii(e,"div","pptxv-ai-tool-head"),s=ri(e,J[x.icon]??"wrench");s.classList.add("pptxv-ai-tool-icon");let d=ii(e,"span","pptxv-ai-tool-name");d.textContent=x.label;let r=ii(e,"span","pptxv-ai-tool-state");if(i?(r.classList.add("is-error"),r.append(ri(e,"alert"),e.createTextNode(n("pptx.ai.toolFailed")))):p?(r.classList.add("is-done"),r.append(ri(e,"check"),e.createTextNode(n("pptx.ai.toolDone")))):(r.classList.add("is-running"),r.textContent=n("pptx.ai.toolRunning")),c.append(s,d,r),a.appendChild(c),i&&t.errorText){let b=ii(e,"div","pptxv-ai-tool-error");b.textContent=t.errorText,a.appendChild(b);}let f=zi(t.input);if(f){let b=ii(e,"details","pptxv-ai-tool-details"),u=ii(e,"summary");u.textContent=n("pptx.ai.toolDetails");let C=ii(e,"div","pptxv-ai-tool-raw");C.textContent=`${yi(t.toolName)}: ${f}`,b.append(u,C),a.appendChild(b);}return a}function U(e,t,n,i){t.replaceChildren();for(let p of n){if(p.role==="system")continue;let m=p.role==="user",x=xi(p);if(x.length===0&&!m)continue;let a=ii(e,"div",`pptxv-ai-msg pptxv-ai-msg-${p.role}`),c=ii(e,"div","pptxv-ai-msg-avatar");c.setAttribute("aria-label",i(m?"pptx.ai.you":"pptx.ai.assistant")),c.appendChild(ri(e,m?"comment":"sparkles"));let s=ii(e,"div","pptxv-ai-msg-body");for(let d of x)if(d.kind==="text"){let r=ii(e,"div","pptxv-ai-msg-text");r.textContent=d.text,s.appendChild(r);}else s.appendChild(R(e,d,i));a.append(c,s),t.appendChild(a);}}function $(e,t,n,i,p){if(t.replaceChildren(),t.hidden=n.length===0,n.length===0)return;let m=ii(e,"div","pptxv-ai-proposals-header"),x=ii(e,"span","pptxv-ai-proposals-title");if(x.textContent=i("pptx.ai.pendingChanges",{count:n.length}),m.appendChild(x),n.length>1){let a=ii(e,"button","pptxv-ai-proposal-btn is-accept-all");a.type="button",a.textContent=i("pptx.ai.acceptAll"),a.addEventListener("click",()=>p.acceptAll()),m.appendChild(a);}t.appendChild(m);for(let a of n)t.appendChild(Q(e,a,i,p));}function Q(e,t,n,i){let p=ii(e,"div","pptxv-ai-proposal");p.dataset.proposalId=t.id;let m=ii(e,"div","pptxv-ai-proposal-eyebrow");m.textContent=n("pptx.ai.proposedChange"),p.appendChild(m);let x=ii(e,"div","pptxv-ai-proposal-label");if(x.textContent=t.label,p.appendChild(x),t.summary.length>0){let d=ii(e,"ul","pptxv-ai-proposal-summary");for(let r of t.summary){let f=ii(e,"li");f.textContent=ti(r),d.appendChild(f);}p.appendChild(d);}let a=ii(e,"div","pptxv-ai-proposal-actions"),c=ii(e,"button","pptxv-ai-proposal-btn is-accept");c.type="button",c.append(ri(e,"check"),e.createTextNode(n("pptx.ai.accept"))),c.addEventListener("click",()=>i.accept(t.id));let s=ii(e,"button","pptxv-ai-proposal-btn is-reject");return s.type="button",s.append(ri(e,"close"),e.createTextNode(n("pptx.ai.reject"))),s.addEventListener("click",()=>i.reject(t.id)),a.append(c,s),p.appendChild(a),p}async function gt(e){let{doc:t,host:n,t:i}=e;n.replaceChildren();let p=ii(t,"div","pptxv-ai-header"),m=ii(t,"span","pptxv-ai-title");m.textContent=i("pptx.ai.title"),p.append(ri(t,"sparkles"),m);let x,a=e.controller,c=a?j({doc:t,t:i,controller:a,getSlides:()=>e.bridge.getSlides(),onSendDirective:l=>{x?.sendMessage(l);}}):null,s=ii(t,"div","pptxv-ai-messages");s.setAttribute("role","log"),s.setAttribute("aria-live","polite");let d=ii(t,"div","pptxv-ai-empty");d.textContent=i("pptx.ai.emptyHint"),s.appendChild(d);let r=ii(t,"div","pptxv-ai-proposals");r.hidden=true;let f=ii(t,"div","pptxv-ai-error");f.setAttribute("role","alert"),f.hidden=true;let b=ii(t,"form","pptxv-ai-composer"),u=ii(t,"textarea","pptxv-ai-input");u.rows=2,u.placeholder=i("pptx.ai.placeholder");let C=ii(t,"button","pptxv-ai-send");C.type="submit",C.setAttribute("aria-label",i("pptx.ai.send")),C.appendChild(ri(t,"send")),b.append(u,C),n.append(p,...c?[c.el]:[],s,r,f,b);try{x=await(e.createChat??wi)({bridge:e.bridge,config:e.config});}catch{return d.textContent=i("pptx.ai.unavailableTitle"),u.disabled=true,C.disabled=true,c?.destroy(),{destroy:()=>n.replaceChildren()}}let v=x,h=new Set,T=l=>{if(!a)return;let y=l.messages.flatMap(q=>xi(q).filter(G=>G.kind==="tool")).at(-1);if(!y||y.kind!=="tool"||y.state==="input-streaming"||h.has(y.toolCallId))return;h.add(y.toolCallId);let k=Bi(y.toolName,y.input);k&&k.slideIndex!==void 0&&e.goToSlide?.(k.slideIndex),a.flashToolTarget(k);},A=l=>{U(t,s,l.messages,i),d.hidden=l.messages.length>0,l.messages.length===0&&s.appendChild(d),$(t,r,v.proposals.list(),i,{accept:y=>{a?.flashToolTarget(null),v.proposals.apply(y),A(v.getSnapshot());},reject:y=>{v.proposals.revert(y),A(v.getSnapshot());},acceptAll:()=>{a?.flashToolTarget(null),v.proposals.acceptAll(),A(v.getSnapshot());}});let S=l.status==="submitted"||l.status==="streaming";n.classList.toggle("is-busy",S),C.setAttribute("aria-label",i(S?"pptx.ai.stop":"pptx.ai.send")),f.hidden=!l.error,f.textContent=l.error?i("pptx.ai.errorPrefix"):"",s.scrollTop=s.scrollHeight,T(l);},P=()=>{if(n.classList.contains("is-busy")){v.stop();return}let l=u.value.trim();l&&(u.value="",v.sendMessage(l));};b.addEventListener("submit",l=>{l.preventDefault(),P();}),u.addEventListener("keydown",l=>{l.key==="Enter"&&!l.shiftKey&&(l.preventDefault(),P());});let w=a?.getPrefill().nonce??0,z=()=>{if(!a)return;let l=a.getPrefill();l.nonce!==w&&(w=l.nonce,u.value=l.text,u.focus());},K=a?.subscribe(z),O=v.subscribe(A);return A(v.getSnapshot()),{changeAnimator:v.changeAnimator,destroy(){O(),K?.(),c?.destroy(),n.replaceChildren();}}}export{gt as createAiPanel};
1
+ import {ii,ri,wi,xi,Bi,di,ei,fi,Ai,zi,yi,ti}from'./chunk-ARYVXVNC.js';import'./chunk-WOT6VMZA.js';function j(e){let{doc:t,t:n,controller:i}=e,p=ii(t,"div","pptxv-ai-focus"),m=(c,s,d)=>{let r=ii(t,"button","pptxv-ai-focus-btn");return r.type="button",r.title=s,r.setAttribute("aria-label",s),r.appendChild(ri(t,c)),r.addEventListener("click",d),r},x=()=>{p.replaceChildren();let c=i.getEffectiveTargets(),s=i.hasPicks(),d=i.isPinned(),r=i.isPicking(),f=ii(t,"div","pptxv-ai-focus-row"),b=ii(t,"span","pptxv-ai-focus-label");b.textContent=n("pptx.ai.focusScope"),f.appendChild(b);for(let h of di(c,e.getSlides())){let T=ii(t,"span","pptxv-ai-focus-chip");(s||d)&&T.classList.add("is-strong"),T.title=h.title,T.textContent=h.label,f.appendChild(T);}if(d){let h=ii(t,"span","pptxv-ai-focus-pinned");h.textContent=n("pptx.ai.pinnedFocus"),f.appendChild(h);}let u=ii(t,"div","pptxv-ai-focus-actions"),C=ei(c,e.getSlides());if(C){let h=ii(t,"button","pptxv-ai-focus-merge");h.type="button",h.append(ri(t,"git-merge"),t.createTextNode(n("pptx.ai.mergeSelectedTables"))),h.addEventListener("click",()=>e.onSendDirective(fi(C.slideIndex,C.elementIdA,C.elementIdB))),u.appendChild(h);}let v=m("crosshair",n("pptx.ai.pickElement"),()=>r?i.stopPicking():i.startPicking());if(v.setAttribute("aria-pressed",String(r)),v.classList.toggle("is-active",r),u.appendChild(v),s?u.appendChild(m("close",n("pptx.ai.pickClear"),()=>i.clearPicks())):d?u.appendChild(m("pin-off",n("pptx.ai.clearFocus"),()=>i.clearPinnedFocus())):u.appendChild(m("pin",n("pptx.ai.pinFocus"),()=>i.pinFocus())),f.appendChild(u),p.appendChild(f),r){let h=ii(t,"div","pptxv-ai-focus-pick"),T=ri(t,"crosshair");T.classList.add("pptxv-ai-focus-pick-icon");let A=ii(t,"span","pptxv-ai-focus-pick-hint");A.textContent=n("pptx.ai.pickElementHint");let P=ii(t,"button","pptxv-ai-focus-pick-done");P.type="button",P.textContent=n("pptx.ai.pickDone"),P.addEventListener("click",()=>i.stopPicking()),h.append(T,A,P),p.appendChild(h);}},a=i.subscribe(x);return x(),{el:p,destroy(){a(),p.remove();}}}var J={view:"eye",text:"text-box",shape:"shapes",theme:"font-color",table:"table",slide:"layout",chart:"chart",move:"move-right",delete:"trash",search:"search",nav:"move-right",animation:"play",notes:"sticky-note",tool:"wrench"};function R(e,t,n){let i=t.state==="output-error",p=t.state==="output-available",m=!i&&!p,x=Ai(t.toolName,t.input,m?"present":"past"),a=ii(e,"div","pptxv-ai-tool"),c=ii(e,"div","pptxv-ai-tool-head"),s=ri(e,J[x.icon]??"wrench");s.classList.add("pptxv-ai-tool-icon");let d=ii(e,"span","pptxv-ai-tool-name");d.textContent=x.label;let r=ii(e,"span","pptxv-ai-tool-state");if(i?(r.classList.add("is-error"),r.append(ri(e,"alert"),e.createTextNode(n("pptx.ai.toolFailed")))):p?(r.classList.add("is-done"),r.append(ri(e,"check"),e.createTextNode(n("pptx.ai.toolDone")))):(r.classList.add("is-running"),r.textContent=n("pptx.ai.toolRunning")),c.append(s,d,r),a.appendChild(c),i&&t.errorText){let b=ii(e,"div","pptxv-ai-tool-error");b.textContent=t.errorText,a.appendChild(b);}let f=zi(t.input);if(f){let b=ii(e,"details","pptxv-ai-tool-details"),u=ii(e,"summary");u.textContent=n("pptx.ai.toolDetails");let C=ii(e,"div","pptxv-ai-tool-raw");C.textContent=`${yi(t.toolName)}: ${f}`,b.append(u,C),a.appendChild(b);}return a}function U(e,t,n,i){t.replaceChildren();for(let p of n){if(p.role==="system")continue;let m=p.role==="user",x=xi(p);if(x.length===0&&!m)continue;let a=ii(e,"div",`pptxv-ai-msg pptxv-ai-msg-${p.role}`),c=ii(e,"div","pptxv-ai-msg-avatar");c.setAttribute("aria-label",i(m?"pptx.ai.you":"pptx.ai.assistant")),c.appendChild(ri(e,m?"comment":"sparkles"));let s=ii(e,"div","pptxv-ai-msg-body");for(let d of x)if(d.kind==="text"){let r=ii(e,"div","pptxv-ai-msg-text");r.textContent=d.text,s.appendChild(r);}else s.appendChild(R(e,d,i));a.append(c,s),t.appendChild(a);}}function $(e,t,n,i,p){if(t.replaceChildren(),t.hidden=n.length===0,n.length===0)return;let m=ii(e,"div","pptxv-ai-proposals-header"),x=ii(e,"span","pptxv-ai-proposals-title");if(x.textContent=i("pptx.ai.pendingChanges",{count:n.length}),m.appendChild(x),n.length>1){let a=ii(e,"button","pptxv-ai-proposal-btn is-accept-all");a.type="button",a.textContent=i("pptx.ai.acceptAll"),a.addEventListener("click",()=>p.acceptAll()),m.appendChild(a);}t.appendChild(m);for(let a of n)t.appendChild(Q(e,a,i,p));}function Q(e,t,n,i){let p=ii(e,"div","pptxv-ai-proposal");p.dataset.proposalId=t.id;let m=ii(e,"div","pptxv-ai-proposal-eyebrow");m.textContent=n("pptx.ai.proposedChange"),p.appendChild(m);let x=ii(e,"div","pptxv-ai-proposal-label");if(x.textContent=t.label,p.appendChild(x),t.summary.length>0){let d=ii(e,"ul","pptxv-ai-proposal-summary");for(let r of t.summary){let f=ii(e,"li");f.textContent=ti(r),d.appendChild(f);}p.appendChild(d);}let a=ii(e,"div","pptxv-ai-proposal-actions"),c=ii(e,"button","pptxv-ai-proposal-btn is-accept");c.type="button",c.append(ri(e,"check"),e.createTextNode(n("pptx.ai.accept"))),c.addEventListener("click",()=>i.accept(t.id));let s=ii(e,"button","pptxv-ai-proposal-btn is-reject");return s.type="button",s.append(ri(e,"close"),e.createTextNode(n("pptx.ai.reject"))),s.addEventListener("click",()=>i.reject(t.id)),a.append(c,s),p.appendChild(a),p}async function gt(e){let{doc:t,host:n,t:i}=e;n.replaceChildren();let p=ii(t,"div","pptxv-ai-header"),m=ii(t,"span","pptxv-ai-title");m.textContent=i("pptx.ai.title"),p.append(ri(t,"sparkles"),m);let x,a=e.controller,c=a?j({doc:t,t:i,controller:a,getSlides:()=>e.bridge.getSlides(),onSendDirective:l=>{x?.sendMessage(l);}}):null,s=ii(t,"div","pptxv-ai-messages");s.setAttribute("role","log"),s.setAttribute("aria-live","polite");let d=ii(t,"div","pptxv-ai-empty");d.textContent=i("pptx.ai.emptyHint"),s.appendChild(d);let r=ii(t,"div","pptxv-ai-proposals");r.hidden=true;let f=ii(t,"div","pptxv-ai-error");f.setAttribute("role","alert"),f.hidden=true;let b=ii(t,"form","pptxv-ai-composer"),u=ii(t,"textarea","pptxv-ai-input");u.rows=2,u.placeholder=i("pptx.ai.placeholder");let C=ii(t,"button","pptxv-ai-send");C.type="submit",C.setAttribute("aria-label",i("pptx.ai.send")),C.appendChild(ri(t,"send")),b.append(u,C),n.append(p,...c?[c.el]:[],s,r,f,b);try{x=await(e.createChat??wi)({bridge:e.bridge,config:e.config});}catch{return d.textContent=i("pptx.ai.unavailableTitle"),u.disabled=true,C.disabled=true,c?.destroy(),{destroy:()=>n.replaceChildren()}}let v=x,h=new Set,T=l=>{if(!a)return;let y=l.messages.flatMap(q=>xi(q).filter(G=>G.kind==="tool")).at(-1);if(!y||y.kind!=="tool"||y.state==="input-streaming"||h.has(y.toolCallId))return;h.add(y.toolCallId);let k=Bi(y.toolName,y.input);k&&k.slideIndex!==void 0&&e.goToSlide?.(k.slideIndex),a.flashToolTarget(k);},A=l=>{U(t,s,l.messages,i),d.hidden=l.messages.length>0,l.messages.length===0&&s.appendChild(d),$(t,r,v.proposals.list(),i,{accept:y=>{a?.flashToolTarget(null),v.proposals.apply(y),A(v.getSnapshot());},reject:y=>{v.proposals.revert(y),A(v.getSnapshot());},acceptAll:()=>{a?.flashToolTarget(null),v.proposals.acceptAll(),A(v.getSnapshot());}});let S=l.status==="submitted"||l.status==="streaming";n.classList.toggle("is-busy",S),C.setAttribute("aria-label",i(S?"pptx.ai.stop":"pptx.ai.send")),f.hidden=!l.error,f.textContent=l.error?i("pptx.ai.errorPrefix"):"",s.scrollTop=s.scrollHeight,T(l);},P=()=>{if(n.classList.contains("is-busy")){v.stop();return}let l=u.value.trim();l&&(u.value="",v.sendMessage(l));};b.addEventListener("submit",l=>{l.preventDefault(),P();}),u.addEventListener("keydown",l=>{l.key==="Enter"&&!l.shiftKey&&(l.preventDefault(),P());});let w=a?.getPrefill().nonce??0,z=()=>{if(!a)return;let l=a.getPrefill();l.nonce!==w&&(w=l.nonce,u.value=l.text,u.focus());},K=a?.subscribe(z),O=v.subscribe(A);return A(v.getSnapshot()),{changeAnimator:v.changeAnimator,destroy(){O(),K?.(),c?.destroy(),n.replaceChildren();}}}export{gt as createAiPanel};