@hyperframes/studio 0.8.141 → 0.8.142
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/dist/assets/{hyperframes-player-5Vx2AiUz.js → hyperframes-player-sAsRuV73.js} +1 -1
- package/dist/assets/{index-C0thd4eM.js → index-B-wffzRH.js} +126 -126
- package/dist/assets/{index-BAnh7cSQ.js → index-D3Vij9t1.js} +1 -1
- package/dist/assets/{index-P8fgj_Xa.js → index-D5q2_7Gw.js} +1 -1
- package/dist/index.html +1 -1
- package/dist/index.js +26 -15
- package/dist/index.js.map +1 -1
- package/package.json +8 -8
- package/src/components/TimelineToolbar.test.tsx +1 -1
- package/src/player/components/timelineLayout.test.ts +3 -3
- package/src/player/components/timelineZoomInput.test.ts +27 -6
- package/src/player/components/timelineZoomInput.ts +5 -1
- package/src/player/components/useTimelinePlayhead.test.tsx +90 -4
- package/src/player/components/useTimelinePlayhead.ts +18 -3
- package/src/player/components/useTimelineProviderState.tsx +1 -0
- package/src/player/lib/timelineViewportBudgets.test.ts +1 -1
- package/src/player/lib/timelineViewportBudgets.ts +1 -1
- package/src/utils/timelineAssetDrop.ts +1 -15
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var Ve=Object.defineProperty;var He=(r,i,e)=>i in r?Ve(r,i,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[i]=e;var l=(r,i,e)=>He(r,typeof i!="symbol"?i+"":i,e);import{i as Ue,c as We,p as Oe,a as ze,r as $e,S as je,b as ye,d as qe,e as w,f as ve,g as Be,h as Ge,j as Ye,k as Xe,s as Ze,l as be,F as we}from"./index-
|
|
1
|
+
var Ve=Object.defineProperty;var He=(r,i,e)=>i in r?Ve(r,i,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[i]=e;var l=(r,i,e)=>He(r,typeof i!="symbol"?i+"":i,e);import{i as Ue,c as We,p as Oe,a as ze,r as $e,S as je,b as ye,d as qe,e as w,f as ve,g as Be,h as Ge,j as Ye,k as Xe,s as Ze,l as be,F as we}from"./index-B-wffzRH.js";function Ae(r){if(r==null||r.trim()==="")return null;const i=Number.parseInt(r,10);return Number.isFinite(i)&&i>0?i:null}function Ke(r=document){const i=r.querySelector('[data-composition-id][data-root="true"]');return Ue(i)?i:r.querySelector("[data-composition-id]")}const Se=r=>r!==null&&Number.isFinite(r)&&r>0;function ee(r){const i=r.clipEndsSeconds.filter(t=>t===null).length;if(Se(r.authoredDurationSeconds))return{seconds:r.authoredDurationSeconds,source:"authored",pendingClips:i};const e=r.clipEndsSeconds.filter(Se);return e.length>0?{seconds:Math.max(...e),source:"derived",pendingClips:i}:{seconds:null,source:"unresolved",pendingClips:i,reason:i>0?"every clip's length is still pending":"no authored duration and no clip with a length"}}function Qe(){return{capturedTimeline:null,isPlaying:!1,currentTime:0,deterministicAdapters:[],canonicalFps:30,bridgeMuted:!1,bridgeVolume:1,mediaOutputMuted:!1,nativeMediaSyncDisabled:!1,webAudioMediaDisabled:!1,mediaAutoplayBlockedPosted:!1,mediaForceSyncNextTick:!1,playbackRate:1,bridgeLastPostedFrame:-1,bridgeLastPostedAt:0,bridgeLastPostedPlaying:!1,bridgeLastPostedMuted:!1,bridgeMaxPostIntervalMs:80,controlBridgeHandler:null,beforeUnloadHandler:null,injectedCompStyles:[],injectedCompScripts:[],injectedCompLinks:[],cachedTimedMediaEls:[],cachedMediaClips:[],cachedVideoClips:[],cachedMediaTimelineDurationSeconds:0,tornDown:!1,transportClock:null,transportRafId:null}}const te=1/60,$=r=>r!==null&&r>te?r:null;function Je(r){return{width:Ae(r.getAttribute("data-width")),height:Ae(r.getAttribute("data-height"))}}function et(r,i){const e=[];for(const t of r.querySelectorAll("video[data-start], audio[data-start]")){const s=i.mediaStart(t);if(!Number.isFinite(s))continue;const n=i.mediaDuration(t);n==null||n<=te||e.push(Math.max(0,s)+n)}return $(ee({authoredDurationSeconds:null,clipEndsSeconds:e}).seconds)}function tt(r,i){var s;const e=[];for(const n of r.querySelectorAll("[data-composition-id][data-start]")){if(((s=n.parentElement)==null?void 0:s.closest("[data-composition-id]"))!==r)continue;const o=i.resolveStartForElement(n,0),a=i.resolveDurationForElement(n);!Number.isFinite(o)||a==null||a<=0||e.push(Math.max(0,o)+a)}const t=Oe(r.getAttribute("data-duration"));return $(ee({authoredDurationSeconds:null,clipEndsSeconds:[t,...e]}).seconds)}const it=r=>r.hasAttribute("data-composition-id")||r.hasAttribute("data-composition-src");function st(r,i,{unregisteredLottie:e}){const t=[];for(const n of r.querySelectorAll("[data-start]")){const o=i.resolveStartForElement(n,0);if(!Number.isFinite(o))continue;const a=i.resolveDurationForElement(n);a!=null?t.push(Math.max(0,o)+a):(ze(n)||it(n))&&t.push(null)}r.querySelector("[data-lottie-src]")&&t.push(null);const s=ee({authoredDurationSeconds:null,clipEndsSeconds:t});return s.pendingClips>0?{...s,seconds:null,source:"unresolved",reason:"a clip's length is pending"}:s}function rt(r){if(r.declared!==null&&Number.isFinite(r.declared)&&r.declared>0)return r.declared;const i=$(r.timeline()),e=Math.max(0,...r.floors().map(n=>n??0)),t=Number.isFinite(r.fallback)&&r.fallback>te?r.fallback:0;let s;return i!==null?s=Math.max(i,e,t):$(e)!==null?s=Math.max(e,t):t>0?s=t:s=r.derived(),s>0?s:0}function nt(r){const i=Ke(r);if(!i)return null;const e=We({timelineRegistry:{},includeAuthoredTimingAttrs:!0,documentRef:r}),t=rt({declared:Oe(i.getAttribute("data-duration")),timeline:()=>null,floors:()=>[et(r,{mediaStart:e.resolveMediaStartForElement,mediaDuration:$e}),tt(i,e)],fallback:0,derived:()=>st(i,e,{unregisteredLottie:!1}).seconds??0});return{...Je(i),fps:Qe().canonicalFps,durationSeconds:t}}function ot(r){return r.hasRuntime||r.runtimeInjected?!1:!!(r.hasNestedCompositions||r.hasTimelines&&r.attempts>=5)}function x(r){return typeof r=="object"&&r!==null}function at(r){return x(r)&&typeof r.getDuration=="function"}function dt(r){return x(r)&&typeof r.duration=="function"&&typeof r.time=="function"&&typeof r.seek=="function"&&typeof r.play=="function"&&typeof r.pause=="function"}function lt(r){if(!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$/.test(r))throw new Error(`Invalid HyperFrames runtime version: ${r}`);return`https://cdn.jsdelivr.net/npm/@hyperframes/core@${r}/dist/hyperframe.runtime.iife.js`}const W=typeof __HYPERFRAMES_RUNTIME_CDN_URL__=="string"?__HYPERFRAMES_RUNTIME_CDN_URL__:lt("0.0.0-dev");function j(r){if(r===null)return null;const i=Number.parseInt(r,10);return Number.isFinite(i)&&i>0?i:null}function ut(r){const i=(r==null?void 0:r.querySelector("[data-composition-id][data-width][data-height]"))??(r==null?void 0:r.querySelector("[data-width][data-height]"));if(!i)return null;const e=j(i.getAttribute("data-width")),t=j(i.getAttribute("data-height"));return e!==null&&t!==null?{width:e,height:t}:null}function ht(r){return Array.isArray(r)?r.find(i=>typeof i=="string"&&i.trim()!==""&&i!=="[object Event]")??null:null}class ct{constructor(i,e){l(this,"_interval",null);l(this,"_runtimeInjected",!1);l(this,"_failure",null);this._iframe=i,this._callbacks=e}get failed(){return this._failure!==null&&this._failure.document===this._iframe.contentDocument}get runtimeInjected(){return this._runtimeInjected}start(){this.stop(),this._failure=null,this._runtimeInjected=!1;let i=0;this._interval=setInterval(()=>{i++;let e=null;try{e=this._poll(i)}catch(t){t instanceof DOMException&&t.name==="SecurityError"||(e={kind:"error",message:t instanceof Error?t.message:String(t)})}if(e){this.stop(),e.kind==="error"?(this._failure={document:this._iframe.contentDocument},this._callbacks.onError(e.message)):this._callbacks.onReady(e.result);return}i>=40&&(this.stop(),this._failure={document:this._iframe.contentDocument},this._callbacks.onError("Composition timeline not found after 8s"))},200)}_poll(i){const e=this._iframe.contentWindow;if(!e)return null;const t=ht(Reflect.get(e,je));if(t!==null)return{kind:"error",message:t};const s=this._iframe.contentDocument,n=Reflect.get(e,"__timelines"),o=this.hasRuntimeBridge(e);if(ot({hasRuntime:o,hasTimelines:x(n)&&Object.keys(n).length>0,hasNestedCompositions:!!(s!=null&&s.querySelector("[data-composition-src]")),runtimeInjected:this._runtimeInjected,attempts:i}))return this._injectRuntime(),null;if(this._runtimeInjected&&!o)return null;const a=this._resolveReadyResult(e,s);return a?{kind:"ready",result:a}:null}_resolveReadyResult(i,e){var n;const t=this._resolvePlaybackDurationAdapter(i)??{kind:"document",getDuration:()=>0};let s=t.getDuration();if(!Number.isFinite(s)||s<=0){if(t.kind==="direct-timeline")return null;s=e?((n=nt(e))==null?void 0:n.durationSeconds)??0:0}return s<=0?null:{duration:s,adapter:{...t,getDuration:()=>s},compositionSize:ut(e)}}stop(){this.failed||(this._failure=null),this._interval!==null&&(clearInterval(this._interval),this._interval=null)}resolveDirectTimelineAdapter(){try{const i=this._iframe.contentWindow;return i?this._resolveDirectTimelineAdapterFromWindow(i):null}catch{return null}}resolveDirectTimelineAdapterFromWindow(i){return this._resolveDirectTimelineAdapterFromWindow(i)}hasRuntimeBridge(i){return Reflect.get(i,"__hf")!==void 0||x(Reflect.get(i,"__player"))}_injectRuntime(){var i,e;this._runtimeInjected=!0;try{const t=this._iframe.contentDocument;if(!t)return;const s=t.createElement("script");s.src=W,(t.head||t.documentElement).appendChild(s),(e=(i=this._callbacks).onRuntimeInjected)==null||e.call(i)}catch{}}_resolveDirectTimelineAdapterFromWindow(i){var a,c;if(this.hasRuntimeBridge(i))return null;const e=Reflect.get(i,"__timelines");if(!x(e))return null;const t=Object.keys(e);if(t.length===0)return null;const s=(c=(a=this._iframe.contentDocument)==null?void 0:a.querySelector("[data-composition-id]"))==null?void 0:c.getAttribute("data-composition-id"),n=s&&s in e?s:t[t.length-1],o=e[n];return dt(o)?o:null}_resolvePlaybackDurationAdapter(i){const e=Reflect.get(i,"__player");if(at(e))return{kind:"runtime",getDuration:()=>e.getDuration()};const t=this._resolveDirectTimelineAdapterFromWindow(i);return t?{kind:"direct-timeline",timeline:t,getDuration:()=>t.duration()}:null}}const pt=`
|
|
2
2
|
:host {
|
|
3
3
|
display: block;
|
|
4
4
|
position: relative;
|