pptx-vanilla-viewer 3.63.0 → 3.63.1
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 +14 -0
- package/dist/chunk-GCEQAEGV.cjs +4 -0
- package/dist/chunk-VK2WU7JH.js +4 -0
- package/dist/index.cjs +3 -3
- package/dist/index.js +2 -2
- package/dist/internals.cjs +1 -1
- package/dist/internals.js +1 -1
- package/dist/transition-overlay-Deb3ON1I.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/chunk-MXHALYDM.cjs +0 -4
- package/dist/chunk-WDBKL6FH.js +0 -4
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,20 @@ A release listed with no entries carried no Conventional Commit in this package'
|
|
|
7
7
|
scope: scripts/release-plan.mjs releases whenever any published file changes, not only on
|
|
8
8
|
conventional commits.
|
|
9
9
|
|
|
10
|
+
## [3.63.1](https://github.com/ChristopherVR/ooxml/releases/tag/pptx-vanilla-viewer@3.63.1) - 2026-11-05
|
|
11
|
+
|
|
12
|
+
### Bug Fixes
|
|
13
|
+
|
|
14
|
+
- **vanilla:** Drop the abutting-edge bleed from morph overlay copies ([e826d90](https://github.com/ChristopherVR/ooxml/commit/e826d90be4410129f048cd703b3fc9032a3fdf98))
|
|
15
|
+
- **pptx:** Read a text shadow without alpha as opaque ([2bd02f4](https://github.com/ChristopherVR/ooxml/commit/2bd02f4a0af3dd94728b0598885c05be6b59b73f))
|
|
16
|
+
- **ui:** Paint blurred shadows and glows with powerpoint's profiles ([78e5a22](https://github.com/ChristopherVR/ooxml/commit/78e5a226675b0cd1437de66f70f2a404811888ba))
|
|
17
|
+
- **ui:** Snap thin pptx strokes to whole device pixels like PowerPoint ([78436fb](https://github.com/ChristopherVR/ooxml/commit/78436fb1a8519aecb966ff221fd18d8f72928e6a))
|
|
18
|
+
|
|
19
|
+
### Testing
|
|
20
|
+
|
|
21
|
+
- **pptx:** Pin sibling strand paths of a compound outline per binding ([328a94a](https://github.com/ChristopherVR/ooxml/commit/328a94a9dfa0cd20d22d993fc88faa8b76bfa55e))
|
|
22
|
+
- **vanilla:** Type the compound outline fixture before casting it ([6822cd0](https://github.com/ChristopherVR/ooxml/commit/6822cd08f5d3cc922785f529e62cd938c8987497))
|
|
23
|
+
|
|
10
24
|
## [3.63.0](https://github.com/ChristopherVR/ooxml/releases/tag/pptx-vanilla-viewer@3.63.0) - 2026-11-05
|
|
11
25
|
|
|
12
26
|
### Features
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
'use strict';var chunkXCLRGHGD_cjs=require('./chunk-XCLRGHGD.cjs'),pptx=require('ooxml-ui/pptx'),dom=require('ooxml-ui/pptx/dom');var H="data-pptx-text-style-override";function B(n,i,r){dom.applyThreeViewTextStyle(n,r?.textStyle);let o=pptx.buildTextStyleOverrideCss(i,r?.textStyle),e=n.querySelector(`:scope > style[${H}]`);if(!o){e?.remove();return}e||(e=n.ownerDocument.createElement("style"),e.setAttribute(H,""),n.prepend(e)),e.textContent=o;}var C="pptx-vanilla-presentation-keyframes",b="pptx-vanilla-slide-keyframes";function O(n){if(n.getElementById(C))return;let i=n.createElement("style");i.id=C,i.textContent=`${pptx.ANIMATION_KEYFRAMES_CSS}
|
|
2
|
+
${pptx.SLIDE_TRANSITION_KEYFRAMES_CSS}
|
|
3
|
+
${pptx.PRESENTATION_HIT_TEST_CSS}`,(n.head??n.documentElement).appendChild(i);}function pe(n,i){let r=n.getElementById(b);if(!i){r?.remove();return}r||(r=n.createElement("style"),r.id=b,(n.head??n.documentElement).appendChild(r)),r.textContent=i;}function ce(n,i,r,o){n.querySelectorAll("[data-element-id]").forEach(e=>{let t=e.dataset.elementId;if(!t)return;let s=i.get(t);pptx.applyAnimationOpacity(e,s),e.style.animation=s?.cssAnimation??"",e.style.visibility=s?.visible===false?"hidden":"";let l=r.has(t)||o.has(t);e.style.cursor=l?"pointer":"",e.toggleAttribute(pptx.PRESENTATION_ANIM_TRIGGER_ATTRIBUTE,l),B(e,t,s);}),n.querySelectorAll("[data-anim-id]").forEach(e=>{let t=e.dataset.animId;if(!t)return;let s=i.get(t);pptx.applyAnimationOpacity(e,s),e.style.animation=s?.cssAnimation??"",e.style.visibility=s?.visible===false?"hidden":"";});}function M(n,i,r,o,e){let t=n.createElement("div");t.className="pptxv-transition-layer",t.dataset.pptxTransitionLayer=e,t.dataset.pptxTransitionFragments=r.keyframesName,t.style.position="absolute",t.style.inset="0",t.style.overflow="hidden",t.style.pointerEvents="none",t.style.zIndex=String(o);for(let s of r.fragments)t.appendChild(G(n,i,r,s));return t}function G(n,i,r,o){let e=n.createElement("div");e.dataset.pptxTransitionFragment=o.id,e.style.position="absolute",e.style.inset="0",e.style.clipPath=o.clipPath,e.style.transformOrigin=o.transformOrigin,e.style.animationName=r.keyframesName,e.style.animationDuration=`${r.durationMs}ms`,e.style.animationTimingFunction=r.easing,e.style.animationDelay=`${o.delayMs}ms`,e.style.animationFillMode="forwards",e.style.willChange="transform, opacity";for(let[t,s]of Object.entries(o.vars))e.style.setProperty(t,s);return e.appendChild(i.cloneNode(true)),e}function y(n,i,r,o,e){let t=n.createElement("div");return t.className="pptxv-transition-layer",t.dataset.pptxTransitionLayer=e,t.style.position="absolute",t.style.inset="0",t.style.overflow="hidden",t.style.zIndex=String(r),t.style.willChange="transform, opacity, clip-path, filter",o!=="none"&&(t.style.animation=o),t.appendChild(i),t}function I(n,i){n.style.background="none",n.style.backgroundColor="transparent";let r=new Set(i),o=new Set;for(let e of n.querySelectorAll("[data-element-id]")){let t=e.dataset.elementId;if(!(t===void 0||!r.has(t))){for(let s=e;s&&s!==n;)o.add(s),s=s.parentElement;for(let s of e.querySelectorAll("[data-element-id]"))o.add(s);}}for(let e of [...n.querySelectorAll("[data-element-id]")])o.has(e)||e.remove();return n}function Y(n,i){return i.forEach((r,o)=>{let e=n.querySelector(`[data-element-id="${CSS.escape(r)}"]`);e&&(e.style.zIndex=String(o+1));}),n}function j(n,i,r,o){let e=i.id,t=r?.get(e);if(t===void 0)return n;let s=n.querySelector(`[data-element-id="${CSS.escape(t)}"]`);if(s){let l=s.cloneNode(true);l.dataset.elementId=e,l.style.height=`${i.height}px`,Z(l,o?.get(e)),o?.get(e)==="text"&&"type"in i&&W(l,i),s.after(l);}return n}function W(n,i){let r=(0, chunkXCLRGHGD_cjs.a.getTextBlockStyle)(i);for(let o of n.querySelectorAll(".pptxv-text"))o.style.transform=String(r.transform??""),o.style.transformOrigin=String(r.transformOrigin??"");}function Z(n,i){if(i==="body")for(let r of [...n.querySelectorAll(":scope > .pptxv-text")])r.remove();else if(i==="text"){for(let r of [...n.children])r.classList.contains("pptxv-text")||r.remove();n.style.background="none",n.style.border="none",n.style.outline="none",n.style.boxShadow="none";}}function U(n,i,r){for(let[o,e]of r??[]){let t=n.querySelector(`[data-element-id="${CSS.escape(o)}"]`),s=i.querySelector(`[data-element-id="${CSS.escape(e)}"]`);if(!t||!s)continue;let l=s.cloneNode(true);l.dataset.elementId=o,l.style.left=t.style.left,l.style.top=t.style.top,t.replaceWith(l);}}var _=2;function R(n,i,r,o){let e=o?pptx.morphOverlayStackSlots(o):void 0;return (o?.overlayLayers??[]).map((t,s)=>{let l=t.side==="outgoing"?i:r,m=t.elements.map(p=>p.id),a=l.cloneNode(true);t.side==="outgoing"&&U(a,r,o?.outgoingTextReplacements);let d=y(n,Y(I(a,m),m),_+(e?.layers[s]??s),"none",t.side==="outgoing"?"outgoing":"lifted");return t.side==="outgoing"?d.dataset.pptxMorphOutgoing="true":d.dataset.pptxMorphLifted="true",d})}function D(n,i,r,o){if(!o)return [];let e=pptx.morphOverlayStackSlots(o);return o.crossfadeGroups.map((t,s)=>{let l=n.createElement("div");l.dataset.pptxMorphCrossfade=t.incoming.id,l.style.cssText=pptx.MORPH_CROSSFADE_GROUP_CSS_TEXT,l.style.zIndex=String(_+(e.groups[s]??o.overlayLayers.length+s));let m=(a,d,p,f,g)=>{let c=y(n,I(j(a,d,o.textPieceSources,o.morphCopyParts),[d.id]),f,g??"none",p);return p==="outgoing"?c.dataset.pptxMorphOutgoing="true":c.dataset.pptxMorphLifted="true",c.style.mixBlendMode=pptx.MORPH_CROSSFADE_HALF_BLEND_MODE,c};return l.append(m(i.cloneNode(true),t.outgoing,"outgoing",0,t.outgoingAnimation),m(r.cloneNode(true),t.incoming,"lifted",1,t.incomingAnimation)),l})}function Ce(n){let{doc:i,stageWrap:r,outgoing:o,incoming:e,transition:t}=n;O(i);let s=pptx.resolveSlideTransition(t),l=pptx.resolveTransitionDurationMs(t),m=pptx.getFragmentedTransitionDescriptor(t.type,l,t.direction,t.spokes,t.pattern),a=i.createElement("div");a.className="pptxv-transition-overlay",a.dataset.pptxTransitionOverlay="",a.dataset.pptxTransitionOverlay="",a.style.position="absolute",a.style.inset="0",a.style.overflow="hidden",a.style.pointerEvents="none",a.style.zIndex="30";let d=t.type==="morph"?pptx.buildMorphTransitionPlan(n.outgoingSlide,n.incomingSlide,l,pptx.morphOptionToMode(t.morphOption),n.slideSize?{slideSize:n.slideSize}:{}):void 0;d&&(dom.stripAbuttingEdgeBleeds(o),dom.stripAbuttingEdgeBleeds(e));let p=s.outgoingOnTop?2:1,f=d||s.outgoingOnTop?1:2,g=R(i,o,e,d),c=!d&&m?.outgoing?M(i,o,m.outgoing,p,"outgoing"):y(i,o,p,s.outgoing,"outgoing"),E=!d&&m?.incoming?M(i,e,m.incoming,f,"incoming"):y(i,e,f,d?"none":s.incoming,"incoming"),N=D(i,o,e,d);if(d){E.dataset.pptxMorphIncoming="true";let u=i.createElement("style");u.textContent=[pptx.buildMorphScopedCss(d,"data-pptx-morph-incoming","incoming"),pptx.buildMorphScopedCss(d,"data-pptx-morph-outgoing","outgoing"),pptx.buildMorphScopedCss(d,"data-pptx-morph-lifted","lifted")].join(`
|
|
4
|
+
`),a.appendChild(u);}d?a.appendChild(E):a.append(c,E);for(let u of g)a.appendChild(u);for(let u of N)a.appendChild(u);r.appendChild(a);let S=false,h=()=>{S||(S=true,clearTimeout(F),a.remove(),n.onDone());},F=setTimeout(h,Math.max(0,l)+50);return h}exports.a=O;exports.b=pe;exports.c=ce;exports.d=Ce;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import {a}from'./chunk-PWXGY3J7.js';import {ANIMATION_KEYFRAMES_CSS,SLIDE_TRANSITION_KEYFRAMES_CSS,PRESENTATION_HIT_TEST_CSS,applyAnimationOpacity,PRESENTATION_ANIM_TRIGGER_ATTRIBUTE,resolveSlideTransition,resolveTransitionDurationMs,getFragmentedTransitionDescriptor,buildMorphTransitionPlan,morphOptionToMode,buildMorphScopedCss,buildTextStyleOverrideCss,morphOverlayStackSlots,MORPH_CROSSFADE_GROUP_CSS_TEXT,MORPH_CROSSFADE_HALF_BLEND_MODE}from'ooxml-ui/pptx';import {stripAbuttingEdgeBleeds,applyThreeViewTextStyle}from'ooxml-ui/pptx/dom';var H="data-pptx-text-style-override";function B(n,i,r){applyThreeViewTextStyle(n,r?.textStyle);let o=buildTextStyleOverrideCss(i,r?.textStyle),e=n.querySelector(`:scope > style[${H}]`);if(!o){e?.remove();return}e||(e=n.ownerDocument.createElement("style"),e.setAttribute(H,""),n.prepend(e)),e.textContent=o;}var C="pptx-vanilla-presentation-keyframes",b="pptx-vanilla-slide-keyframes";function O(n){if(n.getElementById(C))return;let i=n.createElement("style");i.id=C,i.textContent=`${ANIMATION_KEYFRAMES_CSS}
|
|
2
|
+
${SLIDE_TRANSITION_KEYFRAMES_CSS}
|
|
3
|
+
${PRESENTATION_HIT_TEST_CSS}`,(n.head??n.documentElement).appendChild(i);}function pe(n,i){let r=n.getElementById(b);if(!i){r?.remove();return}r||(r=n.createElement("style"),r.id=b,(n.head??n.documentElement).appendChild(r)),r.textContent=i;}function ce(n,i,r,o){n.querySelectorAll("[data-element-id]").forEach(e=>{let t=e.dataset.elementId;if(!t)return;let s=i.get(t);applyAnimationOpacity(e,s),e.style.animation=s?.cssAnimation??"",e.style.visibility=s?.visible===false?"hidden":"";let l=r.has(t)||o.has(t);e.style.cursor=l?"pointer":"",e.toggleAttribute(PRESENTATION_ANIM_TRIGGER_ATTRIBUTE,l),B(e,t,s);}),n.querySelectorAll("[data-anim-id]").forEach(e=>{let t=e.dataset.animId;if(!t)return;let s=i.get(t);applyAnimationOpacity(e,s),e.style.animation=s?.cssAnimation??"",e.style.visibility=s?.visible===false?"hidden":"";});}function M(n,i,r,o,e){let t=n.createElement("div");t.className="pptxv-transition-layer",t.dataset.pptxTransitionLayer=e,t.dataset.pptxTransitionFragments=r.keyframesName,t.style.position="absolute",t.style.inset="0",t.style.overflow="hidden",t.style.pointerEvents="none",t.style.zIndex=String(o);for(let s of r.fragments)t.appendChild(G(n,i,r,s));return t}function G(n,i,r,o){let e=n.createElement("div");e.dataset.pptxTransitionFragment=o.id,e.style.position="absolute",e.style.inset="0",e.style.clipPath=o.clipPath,e.style.transformOrigin=o.transformOrigin,e.style.animationName=r.keyframesName,e.style.animationDuration=`${r.durationMs}ms`,e.style.animationTimingFunction=r.easing,e.style.animationDelay=`${o.delayMs}ms`,e.style.animationFillMode="forwards",e.style.willChange="transform, opacity";for(let[t,s]of Object.entries(o.vars))e.style.setProperty(t,s);return e.appendChild(i.cloneNode(true)),e}function y(n,i,r,o,e){let t=n.createElement("div");return t.className="pptxv-transition-layer",t.dataset.pptxTransitionLayer=e,t.style.position="absolute",t.style.inset="0",t.style.overflow="hidden",t.style.zIndex=String(r),t.style.willChange="transform, opacity, clip-path, filter",o!=="none"&&(t.style.animation=o),t.appendChild(i),t}function I(n,i){n.style.background="none",n.style.backgroundColor="transparent";let r=new Set(i),o=new Set;for(let e of n.querySelectorAll("[data-element-id]")){let t=e.dataset.elementId;if(!(t===void 0||!r.has(t))){for(let s=e;s&&s!==n;)o.add(s),s=s.parentElement;for(let s of e.querySelectorAll("[data-element-id]"))o.add(s);}}for(let e of [...n.querySelectorAll("[data-element-id]")])o.has(e)||e.remove();return n}function Y(n,i){return i.forEach((r,o)=>{let e=n.querySelector(`[data-element-id="${CSS.escape(r)}"]`);e&&(e.style.zIndex=String(o+1));}),n}function j(n,i,r,o){let e=i.id,t=r?.get(e);if(t===void 0)return n;let s=n.querySelector(`[data-element-id="${CSS.escape(t)}"]`);if(s){let l=s.cloneNode(true);l.dataset.elementId=e,l.style.height=`${i.height}px`,Z(l,o?.get(e)),o?.get(e)==="text"&&"type"in i&&W(l,i),s.after(l);}return n}function W(n,i){let r=(0, a.getTextBlockStyle)(i);for(let o of n.querySelectorAll(".pptxv-text"))o.style.transform=String(r.transform??""),o.style.transformOrigin=String(r.transformOrigin??"");}function Z(n,i){if(i==="body")for(let r of [...n.querySelectorAll(":scope > .pptxv-text")])r.remove();else if(i==="text"){for(let r of [...n.children])r.classList.contains("pptxv-text")||r.remove();n.style.background="none",n.style.border="none",n.style.outline="none",n.style.boxShadow="none";}}function U(n,i,r){for(let[o,e]of r??[]){let t=n.querySelector(`[data-element-id="${CSS.escape(o)}"]`),s=i.querySelector(`[data-element-id="${CSS.escape(e)}"]`);if(!t||!s)continue;let l=s.cloneNode(true);l.dataset.elementId=o,l.style.left=t.style.left,l.style.top=t.style.top,t.replaceWith(l);}}var _=2;function R(n,i,r,o){let e=o?morphOverlayStackSlots(o):void 0;return (o?.overlayLayers??[]).map((t,s)=>{let l=t.side==="outgoing"?i:r,m=t.elements.map(p=>p.id),a=l.cloneNode(true);t.side==="outgoing"&&U(a,r,o?.outgoingTextReplacements);let d=y(n,Y(I(a,m),m),_+(e?.layers[s]??s),"none",t.side==="outgoing"?"outgoing":"lifted");return t.side==="outgoing"?d.dataset.pptxMorphOutgoing="true":d.dataset.pptxMorphLifted="true",d})}function D(n,i,r,o){if(!o)return [];let e=morphOverlayStackSlots(o);return o.crossfadeGroups.map((t,s)=>{let l=n.createElement("div");l.dataset.pptxMorphCrossfade=t.incoming.id,l.style.cssText=MORPH_CROSSFADE_GROUP_CSS_TEXT,l.style.zIndex=String(_+(e.groups[s]??o.overlayLayers.length+s));let m=(a,d,p,f,g)=>{let c=y(n,I(j(a,d,o.textPieceSources,o.morphCopyParts),[d.id]),f,g??"none",p);return p==="outgoing"?c.dataset.pptxMorphOutgoing="true":c.dataset.pptxMorphLifted="true",c.style.mixBlendMode=MORPH_CROSSFADE_HALF_BLEND_MODE,c};return l.append(m(i.cloneNode(true),t.outgoing,"outgoing",0,t.outgoingAnimation),m(r.cloneNode(true),t.incoming,"lifted",1,t.incomingAnimation)),l})}function Ce(n){let{doc:i,stageWrap:r,outgoing:o,incoming:e,transition:t}=n;O(i);let s=resolveSlideTransition(t),l=resolveTransitionDurationMs(t),m=getFragmentedTransitionDescriptor(t.type,l,t.direction,t.spokes,t.pattern),a=i.createElement("div");a.className="pptxv-transition-overlay",a.dataset.pptxTransitionOverlay="",a.dataset.pptxTransitionOverlay="",a.style.position="absolute",a.style.inset="0",a.style.overflow="hidden",a.style.pointerEvents="none",a.style.zIndex="30";let d=t.type==="morph"?buildMorphTransitionPlan(n.outgoingSlide,n.incomingSlide,l,morphOptionToMode(t.morphOption),n.slideSize?{slideSize:n.slideSize}:{}):void 0;d&&(stripAbuttingEdgeBleeds(o),stripAbuttingEdgeBleeds(e));let p=s.outgoingOnTop?2:1,f=d||s.outgoingOnTop?1:2,g=R(i,o,e,d),c=!d&&m?.outgoing?M(i,o,m.outgoing,p,"outgoing"):y(i,o,p,s.outgoing,"outgoing"),E=!d&&m?.incoming?M(i,e,m.incoming,f,"incoming"):y(i,e,f,d?"none":s.incoming,"incoming"),N=D(i,o,e,d);if(d){E.dataset.pptxMorphIncoming="true";let u=i.createElement("style");u.textContent=[buildMorphScopedCss(d,"data-pptx-morph-incoming","incoming"),buildMorphScopedCss(d,"data-pptx-morph-outgoing","outgoing"),buildMorphScopedCss(d,"data-pptx-morph-lifted","lifted")].join(`
|
|
4
|
+
`),a.appendChild(u);}d?a.appendChild(E):a.append(c,E);for(let u of g)a.appendChild(u);for(let u of N)a.appendChild(u);r.appendChild(a);let S=false,h=()=>{S||(S=true,clearTimeout(F),a.remove(),n.onDone());},F=setTimeout(h,Math.max(0,l)+50);return h}export{O as a,pe as b,ce as c,Ce as d};
|