pptx-vanilla-viewer 3.47.1 → 3.49.0

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.
@@ -1 +1 @@
1
- 'use strict';var chunk3NATSNFS_cjs=require('./chunk-3NATSNFS.cjs');require('./chunk-FRJYQEIV.cjs');var pptx=require('ooxml-ui/pptx');Object.defineProperty(exports,"playTransitionOverlay",{enumerable:true,get:function(){return chunk3NATSNFS_cjs.d}});Object.defineProperty(exports,"CINEMATIC_TRANSITION_KEYFRAMES",{enumerable:true,get:function(){return pptx.CINEMATIC_TRANSITION_KEYFRAMES}});Object.defineProperty(exports,"DEFAULT_MORPH_DURATION_MS",{enumerable:true,get:function(){return pptx.DEFAULT_MORPH_DURATION_MS}});Object.defineProperty(exports,"DEFAULT_TRANSITION_DURATION_MS",{enumerable:true,get:function(){return pptx.DEFAULT_TRANSITION_DURATION_MS}});Object.defineProperty(exports,"EASE",{enumerable:true,get:function(){return pptx.EASE}});Object.defineProperty(exports,"INSTANT",{enumerable:true,get:function(){return pptx.INSTANT}});Object.defineProperty(exports,"P14_TRANSITION_KEYFRAMES",{enumerable:true,get:function(){return pptx.P14_TRANSITION_KEYFRAMES}});Object.defineProperty(exports,"P14_TRANSITION_KEYFRAMES_2",{enumerable:true,get:function(){return pptx.P14_TRANSITION_KEYFRAMES_2}});Object.defineProperty(exports,"P14_TRANSITION_KEYFRAMES_ALL",{enumerable:true,get:function(){return pptx.P14_TRANSITION_KEYFRAMES_ALL}});Object.defineProperty(exports,"RANDOM_ELIGIBLE_TYPES",{enumerable:true,get:function(){return pptx.RANDOM_ELIGIBLE_TYPES}});Object.defineProperty(exports,"SLIDE_TRANSITION_KEYFRAMES",{enumerable:true,get:function(){return pptx.SLIDE_TRANSITION_KEYFRAMES}});Object.defineProperty(exports,"SLIDE_TRANSITION_KEYFRAMES_CSS",{enumerable:true,get:function(){return pptx.SLIDE_TRANSITION_KEYFRAMES_CSS}});Object.defineProperty(exports,"TRANSITION_SPEED_DURATION_MS",{enumerable:true,get:function(){return pptx.TRANSITION_SPEED_DURATION_MS}});Object.defineProperty(exports,"WHEEL_SPOKE_COUNTS",{enumerable:true,get:function(){return pptx.WHEEL_SPOKE_COUNTS}});Object.defineProperty(exports,"getCinematicTransitionAnimations",{enumerable:true,get:function(){return pptx.getCinematicTransitionAnimations}});Object.defineProperty(exports,"getP14TransitionAnimations",{enumerable:true,get:function(){return pptx.getP14TransitionAnimations}});Object.defineProperty(exports,"getSlideTransitionAnimations",{enumerable:true,get:function(){return pptx.getSlideTransitionAnimations}});Object.defineProperty(exports,"resolveDirection",{enumerable:true,get:function(){return pptx.resolveDirection}});Object.defineProperty(exports,"resolveDirection8",{enumerable:true,get:function(){return pptx.resolveDirection8}});Object.defineProperty(exports,"resolveOrientation",{enumerable:true,get:function(){return pptx.resolveOrientation}});Object.defineProperty(exports,"resolveSlideTransition",{enumerable:true,get:function(){return pptx.resolveSlideTransition}});Object.defineProperty(exports,"resolveTransitionDurationMs",{enumerable:true,get:function(){return pptx.resolveTransitionDurationMs}});Object.defineProperty(exports,"resolveWheelSpokeCount",{enumerable:true,get:function(){return pptx.resolveWheelSpokeCount}});
1
+ 'use strict';var chunkRUB6MJMM_cjs=require('./chunk-RUB6MJMM.cjs');require('./chunk-FRJYQEIV.cjs');var pptx=require('ooxml-ui/pptx');Object.defineProperty(exports,"playTransitionOverlay",{enumerable:true,get:function(){return chunkRUB6MJMM_cjs.d}});Object.defineProperty(exports,"CINEMATIC_TRANSITION_KEYFRAMES",{enumerable:true,get:function(){return pptx.CINEMATIC_TRANSITION_KEYFRAMES}});Object.defineProperty(exports,"DEFAULT_MORPH_DURATION_MS",{enumerable:true,get:function(){return pptx.DEFAULT_MORPH_DURATION_MS}});Object.defineProperty(exports,"DEFAULT_TRANSITION_DURATION_MS",{enumerable:true,get:function(){return pptx.DEFAULT_TRANSITION_DURATION_MS}});Object.defineProperty(exports,"EASE",{enumerable:true,get:function(){return pptx.EASE}});Object.defineProperty(exports,"INSTANT",{enumerable:true,get:function(){return pptx.INSTANT}});Object.defineProperty(exports,"P14_TRANSITION_KEYFRAMES",{enumerable:true,get:function(){return pptx.P14_TRANSITION_KEYFRAMES}});Object.defineProperty(exports,"P14_TRANSITION_KEYFRAMES_2",{enumerable:true,get:function(){return pptx.P14_TRANSITION_KEYFRAMES_2}});Object.defineProperty(exports,"P14_TRANSITION_KEYFRAMES_ALL",{enumerable:true,get:function(){return pptx.P14_TRANSITION_KEYFRAMES_ALL}});Object.defineProperty(exports,"RANDOM_ELIGIBLE_TYPES",{enumerable:true,get:function(){return pptx.RANDOM_ELIGIBLE_TYPES}});Object.defineProperty(exports,"SLIDE_TRANSITION_KEYFRAMES",{enumerable:true,get:function(){return pptx.SLIDE_TRANSITION_KEYFRAMES}});Object.defineProperty(exports,"SLIDE_TRANSITION_KEYFRAMES_CSS",{enumerable:true,get:function(){return pptx.SLIDE_TRANSITION_KEYFRAMES_CSS}});Object.defineProperty(exports,"TRANSITION_SPEED_DURATION_MS",{enumerable:true,get:function(){return pptx.TRANSITION_SPEED_DURATION_MS}});Object.defineProperty(exports,"WHEEL_SPOKE_COUNTS",{enumerable:true,get:function(){return pptx.WHEEL_SPOKE_COUNTS}});Object.defineProperty(exports,"getCinematicTransitionAnimations",{enumerable:true,get:function(){return pptx.getCinematicTransitionAnimations}});Object.defineProperty(exports,"getP14TransitionAnimations",{enumerable:true,get:function(){return pptx.getP14TransitionAnimations}});Object.defineProperty(exports,"getSlideTransitionAnimations",{enumerable:true,get:function(){return pptx.getSlideTransitionAnimations}});Object.defineProperty(exports,"resolveDirection",{enumerable:true,get:function(){return pptx.resolveDirection}});Object.defineProperty(exports,"resolveDirection8",{enumerable:true,get:function(){return pptx.resolveDirection8}});Object.defineProperty(exports,"resolveOrientation",{enumerable:true,get:function(){return pptx.resolveOrientation}});Object.defineProperty(exports,"resolveSlideTransition",{enumerable:true,get:function(){return pptx.resolveSlideTransition}});Object.defineProperty(exports,"resolveTransitionDurationMs",{enumerable:true,get:function(){return pptx.resolveTransitionDurationMs}});Object.defineProperty(exports,"resolveWheelSpokeCount",{enumerable:true,get:function(){return pptx.resolveWheelSpokeCount}});
package/dist/internals.js CHANGED
@@ -1 +1 @@
1
- export{d as playTransitionOverlay}from'./chunk-FIQ2G4TF.js';import'./chunk-CNU4N4AY.js';export{CINEMATIC_TRANSITION_KEYFRAMES,DEFAULT_MORPH_DURATION_MS,DEFAULT_TRANSITION_DURATION_MS,EASE,INSTANT,P14_TRANSITION_KEYFRAMES,P14_TRANSITION_KEYFRAMES_2,P14_TRANSITION_KEYFRAMES_ALL,RANDOM_ELIGIBLE_TYPES,SLIDE_TRANSITION_KEYFRAMES,SLIDE_TRANSITION_KEYFRAMES_CSS,TRANSITION_SPEED_DURATION_MS,WHEEL_SPOKE_COUNTS,getCinematicTransitionAnimations,getP14TransitionAnimations,getSlideTransitionAnimations,resolveDirection,resolveDirection8,resolveOrientation,resolveSlideTransition,resolveTransitionDurationMs,resolveWheelSpokeCount}from'ooxml-ui/pptx';
1
+ export{d as playTransitionOverlay}from'./chunk-6ZJPMRMK.js';import'./chunk-CNU4N4AY.js';export{CINEMATIC_TRANSITION_KEYFRAMES,DEFAULT_MORPH_DURATION_MS,DEFAULT_TRANSITION_DURATION_MS,EASE,INSTANT,P14_TRANSITION_KEYFRAMES,P14_TRANSITION_KEYFRAMES_2,P14_TRANSITION_KEYFRAMES_ALL,RANDOM_ELIGIBLE_TYPES,SLIDE_TRANSITION_KEYFRAMES,SLIDE_TRANSITION_KEYFRAMES_CSS,TRANSITION_SPEED_DURATION_MS,WHEEL_SPOKE_COUNTS,getCinematicTransitionAnimations,getP14TransitionAnimations,getSlideTransitionAnimations,resolveDirection,resolveDirection8,resolveOrientation,resolveSlideTransition,resolveTransitionDurationMs,resolveWheelSpokeCount}from'ooxml-ui/pptx';
package/dist/styles.css CHANGED
@@ -1725,24 +1725,8 @@
1725
1725
  .pptxv-dropdown-item:hover { background: var(--_pptx-accent); color: var(--_pptx-accent-foreground); }
1726
1726
  .pptxv-dropdown-item.is-selected { font-weight: 600; color: var(--_pptx-primary); }
1727
1727
 
1728
- /* ── Swatch colour picker ────────────────────────────────────────────── */
1729
- .pptxv-swatch-picker { position: relative; display: inline-flex; }
1730
- .pptxv-swatch-trigger { flex-direction: column; height: 28px; padding: 2px 6px; gap: 0; }
1731
- .pptxv-swatch-swab { display: block; width: 16px; height: 3px; border-radius: 1px; margin-top: 1px; }
1732
- .pptxv-swatch-menu {
1733
- /* Positioned by attachAnchoredPopup (position: fixed + inline top/left),
1734
- which escapes the ribbon row's overflow-x clip (issue #183). */
1735
- z-index: 30;
1736
- padding: 8px;
1737
- border: 1px solid var(--_pptx-border);
1738
- border-radius: var(--_pptx-radius);
1739
- background: var(--_pptx-card);
1740
- color: var(--_pptx-card-foreground);
1741
- box-shadow: 0 6px 20px rgb(0 0 0 / 0.25);
1742
- }
1743
- .pptxv-swatch-menu[hidden] { display: none; }
1744
- /* B6: "Recent colours" row (ui/recent-colors-row.ts), shared by the swatch
1745
- picker's popup menu and the property inspector's colour inputs. */
1728
+ /* B6: "Recent colours" row (ui/recent-colors-row.ts) under the property
1729
+ inspector's colour inputs. */
1746
1730
  .pptxv-recent-colors[hidden] { display: none; }
1747
1731
  .pptxv-recent-colors-label {
1748
1732
  margin-bottom: 4px;
@@ -1751,13 +1735,6 @@
1751
1735
  text-transform: uppercase;
1752
1736
  letter-spacing: 0.04em;
1753
1737
  }
1754
- .pptxv-swatch-standard-label {
1755
- margin-bottom: 4px;
1756
- color: var(--_pptx-muted-foreground);
1757
- font-size: 10px;
1758
- text-transform: uppercase;
1759
- letter-spacing: 0.04em;
1760
- }
1761
1738
  .pptxv-swatch-grid { display: grid; grid-template-columns: repeat(5, 20px); gap: 4px; margin-bottom: 6px; }
1762
1739
  .pptxv-swatch {
1763
1740
  width: 20px;
@@ -1768,25 +1745,6 @@
1768
1745
  cursor: pointer;
1769
1746
  }
1770
1747
  .pptxv-swatch:hover { transform: scale(1.15); }
1771
- .pptxv-swatch.is-selected { outline: 2px solid var(--_pptx-ring); outline-offset: 1px; }
1772
- .pptxv-swatch-custom {
1773
- display: flex;
1774
- align-items: center;
1775
- justify-content: space-between;
1776
- gap: 6px;
1777
- font-size: 11px;
1778
- color: var(--_pptx-muted-foreground);
1779
- cursor: pointer;
1780
- }
1781
- .pptxv-swatch-custom-input {
1782
- width: 20px;
1783
- height: 20px;
1784
- padding: 0;
1785
- border: 1px solid var(--_pptx-border);
1786
- border-radius: 4px;
1787
- background: none;
1788
- cursor: pointer;
1789
- }
1790
1748
 
1791
1749
  /* ── Find & Replace docked panel ─────────────────────────────────────── */
1792
1750
  .pptxv-findreplace {
@@ -3311,30 +3269,6 @@ svg[data-pptx-motion-path-overlay] [data-pptx-motion-path-handle] { pointer-even
3311
3269
  }
3312
3270
 
3313
3271
 
3314
- /* ── Quick Styles gallery ────────────────────────────────────────────── */
3315
- .pptxv-quick-styles {
3316
- display: grid;
3317
- grid-template-columns: repeat(6, minmax(0, 1fr));
3318
- gap: 4px;
3319
- }
3320
- .pptxv-quick-style {
3321
- height: 26px;
3322
- min-width: 0;
3323
- padding: 0;
3324
- border: 1px solid var(--_pptx-border);
3325
- border-radius: var(--_pptx-radius);
3326
- cursor: pointer;
3327
- }
3328
- .pptxv-quick-style:hover:not(:disabled) { outline: 2px solid var(--_pptx-primary); outline-offset: -1px; }
3329
- .pptxv-quick-style:disabled { opacity: 0.5; cursor: default; }
3330
- /* Each preset is a discrete, individually-named action button (not a colour
3331
- swatch), so it gets the shared WCAG touch target below the mobile
3332
- breakpoint (768px, MOBILE_BREAKPOINT / getDensePanelTouchTargetPx in
3333
- pptx-viewer-shared) rather than an exemption - CLAUDE.md Rule 2. */
3334
- @media (max-width: 767px) {
3335
- .pptxv-quick-style { height: 44px !important; min-width: 44px !important; }
3336
- }
3337
-
3338
3272
  /* ── 3D text ─────────────────────────────────────────────────────────── */
3339
3273
  .pptxv-text3d-options { display: grid; gap: 6px; }
3340
3274
  .pptxv-text3d-options[hidden] { display: none; }
@@ -3675,8 +3609,8 @@ svg[data-pptx-motion-path-overlay] [data-pptx-motion-path-handle] { pointer-even
3675
3609
  (chart-filtered-series-section.ts, connector-arrow-controls.ts,
3676
3610
  table-cell-formatting.ts, shape-effects-controls.ts) carry no class of
3677
3611
  their own on the control either; same fix, through each section's own
3678
- container class. Buttons get !important (css.ts's baseline, see the
3679
- .pptxv-quick-style rule above); selects/inputs do not need it. */
3612
+ container class. Buttons get !important (they must beat css.ts's
3613
+ baseline button rules); selects/inputs do not need it. */
3680
3614
  .pptxv-chart-filters select, .pptxv-chart-filters input,
3681
3615
  .pptxv-inspector-connector-arrows select, .pptxv-inspector-connector-arrows input,
3682
3616
  .pptxv-inspector-table-cell select, .pptxv-inspector-table-cell input,
@@ -4690,60 +4624,6 @@ svg[data-pptx-motion-path-overlay] [data-pptx-motion-path-handle] { pointer-even
4690
4624
  .pptxv-outline-view-input:read-only { cursor: default; }
4691
4625
 
4692
4626
 
4693
- .pptxv-export-progress-backdrop {
4694
- position: fixed;
4695
- inset: 0;
4696
- z-index: 1200;
4697
- display: flex;
4698
- align-items: center;
4699
- justify-content: center;
4700
- background: rgba(0, 0, 0, 0.6);
4701
- backdrop-filter: blur(4px);
4702
- }
4703
- .pptxv-export-progress-panel {
4704
- width: min(92vw, 384px);
4705
- border: 1px solid var(--_pptx-border, #33334d);
4706
- border-radius: calc(var(--_pptx-radius, 6px) + 6px);
4707
- background: var(--_pptx-popover, #111827);
4708
- color: var(--_pptx-popover-foreground, #f3f4f6);
4709
- padding: 24px;
4710
- box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
4711
- font-family: system-ui, sans-serif;
4712
- }
4713
- .pptxv-export-progress-panel h3 {
4714
- margin: 0 0 16px;
4715
- font-size: 14px;
4716
- font-weight: 600;
4717
- }
4718
- .pptxv-export-progress-track {
4719
- height: 10px;
4720
- width: 100%;
4721
- overflow: hidden;
4722
- border-radius: 9999px;
4723
- background: var(--_pptx-muted, #1f2937);
4724
- margin-bottom: 12px;
4725
- }
4726
- .pptxv-export-progress-fill {
4727
- height: 100%;
4728
- border-radius: 9999px;
4729
- background: var(--_pptx-primary, #6366f1);
4730
- transition: width 0.3s ease-out;
4731
- }
4732
- .pptxv-export-progress-status {
4733
- display: flex;
4734
- align-items: center;
4735
- justify-content: space-between;
4736
- margin-bottom: 16px;
4737
- font-size: 12px;
4738
- color: var(--_pptx-muted-foreground, #94a3b8);
4739
- }
4740
- .pptxv-export-progress-pct { font-variant-numeric: tabular-nums; }
4741
- .pptxv-export-progress-actions {
4742
- display: flex;
4743
- justify-content: flex-end;
4744
- }
4745
-
4746
-
4747
4627
  .pptxv-sr-only {
4748
4628
  position: absolute;
4749
4629
  width: 1px;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pptx-vanilla-viewer",
3
- "version": "3.47.1",
3
+ "version": "3.49.0",
4
4
  "description": "pptx-viewer for vanilla JS: a zero-framework PowerPoint viewer and editor to render, edit, present, and export PPTX slides with plain DOM, no React/Vue/Angular required.",
5
5
  "keywords": [
6
6
  "javascript",
@@ -107,8 +107,8 @@
107
107
  "jspdf": "^4.2.1",
108
108
  "jszip": "^3.10.2",
109
109
  "lucide": "^1.57.0",
110
- "ooxml-core": "^1.24.1",
111
- "ooxml-ui": "^1.23.1",
110
+ "ooxml-core": "^1.24.3",
111
+ "ooxml-ui": "^1.25.0",
112
112
  "opentype.js": "^2.0.0"
113
113
  },
114
114
  "devDependencies": {
@@ -1,4 +0,0 @@
1
- 'use strict';var pptx=require('ooxml-ui/pptx'),dom=require('ooxml-ui/pptx/dom');var H="data-pptx-text-style-override";function G(n,o,r){dom.applyThreeViewTextStyle(n,r?.textStyle);let a=pptx.buildTextStyleOverrideCss(o,r?.textStyle),e=n.querySelector(`:scope > style[${H}]`);if(!a){e?.remove();return}e||(e=n.ownerDocument.createElement("style"),e.setAttribute(H,""),n.prepend(e)),e.textContent=a;}var A="pptx-vanilla-presentation-keyframes",C="pptx-vanilla-slide-keyframes";function I(n){if(n.getElementById(A))return;let o=n.createElement("style");o.id=A,o.textContent=`${pptx.ANIMATION_KEYFRAMES_CSS}
2
- ${pptx.SLIDE_TRANSITION_KEYFRAMES_CSS}
3
- ${pptx.PRESENTATION_HIT_TEST_CSS}`,(n.head??n.documentElement).appendChild(o);}function oe(n,o){let r=n.getElementById(C);if(!o){r?.remove();return}r||(r=n.createElement("style"),r.id=C,(n.head??n.documentElement).appendChild(r)),r.textContent=o;}function ie(n,o,r,a){n.querySelectorAll("[data-element-id]").forEach(e=>{let t=e.dataset.elementId;if(!t)return;let i=o.get(t);pptx.applyAnimationOpacity(e,i),e.style.animation=i?.cssAnimation??"",e.style.visibility=i?.visible===false?"hidden":"";let m=r.has(t)||a.has(t);e.style.cursor=m?"pointer":"",e.toggleAttribute(pptx.PRESENTATION_ANIM_TRIGGER_ATTRIBUTE,m),G(e,t,i);}),n.querySelectorAll("[data-anim-id]").forEach(e=>{let t=e.dataset.animId;if(!t)return;let i=o.get(t);pptx.applyAnimationOpacity(e,i),e.style.animation=i?.cssAnimation??"",e.style.visibility=i?.visible===false?"hidden":"";});}function T(n,o,r,a,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(a);for(let i of r.fragments)t.appendChild(K(n,o,r,i));return t}function K(n,o,r,a){let e=n.createElement("div");e.dataset.pptxTransitionFragment=a.id,e.style.position="absolute",e.style.inset="0",e.style.clipPath=a.clipPath,e.style.transformOrigin=a.transformOrigin,e.style.animationName=r.keyframesName,e.style.animationDuration=`${r.durationMs}ms`,e.style.animationTimingFunction=r.easing,e.style.animationDelay=`${a.delayMs}ms`,e.style.animationFillMode="forwards",e.style.willChange="transform, opacity";for(let[t,i]of Object.entries(a.vars))e.style.setProperty(t,i);return e.appendChild(o.cloneNode(true)),e}function u(n,o,r,a,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",a!=="none"&&(t.style.animation=a),t.appendChild(o),t}function E(n,o){n.style.background="none",n.style.backgroundColor="transparent";let r=new Set(o),a=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 i=e;i&&i!==n;)a.add(i),i=i.parentElement;for(let i of e.querySelectorAll("[data-element-id]"))a.add(i);}}for(let e of [...n.querySelectorAll("[data-element-id]")])a.has(e)||e.remove();return n}function b(n,o,r,a){return (a?.crossfadeGroups??[]).map((e,t)=>{let i=n.createElement("div");i.dataset.pptxMorphCrossfade=e.incoming.id,i.style.cssText=pptx.MORPH_CROSSFADE_GROUP_CSS_TEXT,i.style.zIndex=String(4+t);let m=(p,s,l,y,g)=>{let d=u(n,E(p,[s]),y,g??"none",l);return l==="outgoing"?d.dataset.pptxMorphOutgoing="true":d.dataset.pptxMorphLifted="true",d.style.mixBlendMode=pptx.MORPH_CROSSFADE_HALF_BLEND_MODE,d};return i.append(m(o.cloneNode(true),e.outgoing.id,"outgoing",0,e.outgoingAnimation),m(r.cloneNode(true),e.incoming.id,"lifted",1,e.incomingAnimation)),i})}function fe(n){let{doc:o,stageWrap:r,outgoing:a,incoming:e,transition:t}=n;I(o);let i=pptx.resolveSlideTransition(t),m=pptx.resolveTransitionDurationMs(t),p=pptx.getFragmentedTransitionDescriptor(t.type,m,t.direction,t.spokes,t.pattern),s=o.createElement("div");s.className="pptxv-transition-overlay",s.dataset.pptxTransitionOverlay="",s.dataset.pptxTransitionOverlay="",s.style.position="absolute",s.style.inset="0",s.style.overflow="hidden",s.style.pointerEvents="none",s.style.zIndex="30";let l=t.type==="morph"?pptx.buildMorphTransitionPlan(n.outgoingSlide,n.incomingSlide,m,pptx.morphOptionToMode(t.morphOption)):void 0,y=l||i.outgoingOnTop?2:1,g=l||i.outgoingOnTop?1:2,d=!l&&p?.outgoing?T(o,a,p.outgoing,y,"outgoing"):u(o,a,y,l?"none":i.outgoing,"outgoing"),M=!l&&p?.incoming?T(o,e,p.incoming,g,"incoming"):u(o,e,g,l?"none":i.incoming,"incoming"),S=l&&l.overlayIncomingElements.length>0?E(e.cloneNode(true),l.overlayIncomingElements.map(c=>c.id)):void 0,f=S?u(o,S,3,"none","lifted"):void 0,_=b(o,a,e,l);if(l){M.dataset.pptxMorphIncoming="true",d.dataset.pptxMorphOutgoing="true",E(a,l.outgoingElements.map(N=>N.id)),f&&(f.dataset.pptxMorphLifted="true");let c=o.createElement("style");c.textContent=[pptx.buildMorphScopedCss(l,"data-pptx-morph-incoming","incoming"),pptx.buildMorphScopedCss(l,"data-pptx-morph-outgoing","outgoing"),pptx.buildMorphScopedCss(l,"data-pptx-morph-lifted","lifted")].join(`
4
- `),s.appendChild(c);}s.append(d,M),f&&s.appendChild(f);for(let c of _)s.appendChild(c);r.appendChild(s);let h=false,L=()=>{h||(h=true,clearTimeout(D),s.remove(),n.onDone());},D=setTimeout(L,Math.max(0,m)+50);return L}exports.a=I;exports.b=oe;exports.c=ie;exports.d=fe;
@@ -1,4 +0,0 @@
1
- import {ANIMATION_KEYFRAMES_CSS,SLIDE_TRANSITION_KEYFRAMES_CSS,PRESENTATION_HIT_TEST_CSS,applyAnimationOpacity,PRESENTATION_ANIM_TRIGGER_ATTRIBUTE,resolveSlideTransition,resolveTransitionDurationMs,getFragmentedTransitionDescriptor,buildMorphTransitionPlan,morphOptionToMode,buildMorphScopedCss,buildTextStyleOverrideCss,MORPH_CROSSFADE_GROUP_CSS_TEXT,MORPH_CROSSFADE_HALF_BLEND_MODE}from'ooxml-ui/pptx';import {applyThreeViewTextStyle}from'ooxml-ui/pptx/dom';var H="data-pptx-text-style-override";function G(n,o,r){applyThreeViewTextStyle(n,r?.textStyle);let a=buildTextStyleOverrideCss(o,r?.textStyle),e=n.querySelector(`:scope > style[${H}]`);if(!a){e?.remove();return}e||(e=n.ownerDocument.createElement("style"),e.setAttribute(H,""),n.prepend(e)),e.textContent=a;}var A="pptx-vanilla-presentation-keyframes",C="pptx-vanilla-slide-keyframes";function I(n){if(n.getElementById(A))return;let o=n.createElement("style");o.id=A,o.textContent=`${ANIMATION_KEYFRAMES_CSS}
2
- ${SLIDE_TRANSITION_KEYFRAMES_CSS}
3
- ${PRESENTATION_HIT_TEST_CSS}`,(n.head??n.documentElement).appendChild(o);}function oe(n,o){let r=n.getElementById(C);if(!o){r?.remove();return}r||(r=n.createElement("style"),r.id=C,(n.head??n.documentElement).appendChild(r)),r.textContent=o;}function ie(n,o,r,a){n.querySelectorAll("[data-element-id]").forEach(e=>{let t=e.dataset.elementId;if(!t)return;let i=o.get(t);applyAnimationOpacity(e,i),e.style.animation=i?.cssAnimation??"",e.style.visibility=i?.visible===false?"hidden":"";let m=r.has(t)||a.has(t);e.style.cursor=m?"pointer":"",e.toggleAttribute(PRESENTATION_ANIM_TRIGGER_ATTRIBUTE,m),G(e,t,i);}),n.querySelectorAll("[data-anim-id]").forEach(e=>{let t=e.dataset.animId;if(!t)return;let i=o.get(t);applyAnimationOpacity(e,i),e.style.animation=i?.cssAnimation??"",e.style.visibility=i?.visible===false?"hidden":"";});}function T(n,o,r,a,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(a);for(let i of r.fragments)t.appendChild(K(n,o,r,i));return t}function K(n,o,r,a){let e=n.createElement("div");e.dataset.pptxTransitionFragment=a.id,e.style.position="absolute",e.style.inset="0",e.style.clipPath=a.clipPath,e.style.transformOrigin=a.transformOrigin,e.style.animationName=r.keyframesName,e.style.animationDuration=`${r.durationMs}ms`,e.style.animationTimingFunction=r.easing,e.style.animationDelay=`${a.delayMs}ms`,e.style.animationFillMode="forwards",e.style.willChange="transform, opacity";for(let[t,i]of Object.entries(a.vars))e.style.setProperty(t,i);return e.appendChild(o.cloneNode(true)),e}function u(n,o,r,a,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",a!=="none"&&(t.style.animation=a),t.appendChild(o),t}function E(n,o){n.style.background="none",n.style.backgroundColor="transparent";let r=new Set(o),a=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 i=e;i&&i!==n;)a.add(i),i=i.parentElement;for(let i of e.querySelectorAll("[data-element-id]"))a.add(i);}}for(let e of [...n.querySelectorAll("[data-element-id]")])a.has(e)||e.remove();return n}function b(n,o,r,a){return (a?.crossfadeGroups??[]).map((e,t)=>{let i=n.createElement("div");i.dataset.pptxMorphCrossfade=e.incoming.id,i.style.cssText=MORPH_CROSSFADE_GROUP_CSS_TEXT,i.style.zIndex=String(4+t);let m=(p,s,l,y,g)=>{let d=u(n,E(p,[s]),y,g??"none",l);return l==="outgoing"?d.dataset.pptxMorphOutgoing="true":d.dataset.pptxMorphLifted="true",d.style.mixBlendMode=MORPH_CROSSFADE_HALF_BLEND_MODE,d};return i.append(m(o.cloneNode(true),e.outgoing.id,"outgoing",0,e.outgoingAnimation),m(r.cloneNode(true),e.incoming.id,"lifted",1,e.incomingAnimation)),i})}function fe(n){let{doc:o,stageWrap:r,outgoing:a,incoming:e,transition:t}=n;I(o);let i=resolveSlideTransition(t),m=resolveTransitionDurationMs(t),p=getFragmentedTransitionDescriptor(t.type,m,t.direction,t.spokes,t.pattern),s=o.createElement("div");s.className="pptxv-transition-overlay",s.dataset.pptxTransitionOverlay="",s.dataset.pptxTransitionOverlay="",s.style.position="absolute",s.style.inset="0",s.style.overflow="hidden",s.style.pointerEvents="none",s.style.zIndex="30";let l=t.type==="morph"?buildMorphTransitionPlan(n.outgoingSlide,n.incomingSlide,m,morphOptionToMode(t.morphOption)):void 0,y=l||i.outgoingOnTop?2:1,g=l||i.outgoingOnTop?1:2,d=!l&&p?.outgoing?T(o,a,p.outgoing,y,"outgoing"):u(o,a,y,l?"none":i.outgoing,"outgoing"),M=!l&&p?.incoming?T(o,e,p.incoming,g,"incoming"):u(o,e,g,l?"none":i.incoming,"incoming"),S=l&&l.overlayIncomingElements.length>0?E(e.cloneNode(true),l.overlayIncomingElements.map(c=>c.id)):void 0,f=S?u(o,S,3,"none","lifted"):void 0,_=b(o,a,e,l);if(l){M.dataset.pptxMorphIncoming="true",d.dataset.pptxMorphOutgoing="true",E(a,l.outgoingElements.map(N=>N.id)),f&&(f.dataset.pptxMorphLifted="true");let c=o.createElement("style");c.textContent=[buildMorphScopedCss(l,"data-pptx-morph-incoming","incoming"),buildMorphScopedCss(l,"data-pptx-morph-outgoing","outgoing"),buildMorphScopedCss(l,"data-pptx-morph-lifted","lifted")].join(`
4
- `),s.appendChild(c);}s.append(d,M),f&&s.appendChild(f);for(let c of _)s.appendChild(c);r.appendChild(s);let h=false,L=()=>{h||(h=true,clearTimeout(D),s.remove(),n.onDone());},D=setTimeout(L,Math.max(0,m)+50);return L}export{I as a,oe as b,ie as c,fe as d};