@hyperframes/core 0.8.77 → 0.8.79

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.
Files changed (56) hide show
  1. package/dist/compiler/htmlBundler.d.ts +2 -0
  2. package/dist/compiler/htmlBundler.d.ts.map +1 -1
  3. package/dist/compiler/htmlBundler.js +107 -43
  4. package/dist/compiler/htmlBundler.js.map +1 -1
  5. package/dist/compiler/htmlDocument.d.ts +1 -0
  6. package/dist/compiler/htmlDocument.d.ts.map +1 -1
  7. package/dist/compiler/htmlDocument.js +5 -2
  8. package/dist/compiler/htmlDocument.js.map +1 -1
  9. package/dist/compiler/index.d.ts +1 -0
  10. package/dist/compiler/index.d.ts.map +1 -1
  11. package/dist/compiler/index.js +1 -0
  12. package/dist/compiler/index.js.map +1 -1
  13. package/dist/compiler/inlineSubCompositions.d.ts +8 -0
  14. package/dist/compiler/inlineSubCompositions.d.ts.map +1 -1
  15. package/dist/compiler/inlineSubCompositions.js +113 -8
  16. package/dist/compiler/inlineSubCompositions.js.map +1 -1
  17. package/dist/compiler/scenePartsManifest.d.ts +6 -0
  18. package/dist/compiler/scenePartsManifest.d.ts.map +1 -0
  19. package/dist/compiler/scenePartsManifest.js +31 -0
  20. package/dist/compiler/scenePartsManifest.js.map +1 -0
  21. package/dist/generated/runtime-inline.js +1 -1
  22. package/dist/generated/runtime-inline.js.map +1 -1
  23. package/dist/hyperframe.runtime.iife.js +54 -54
  24. package/dist/runtime/applyVariableBindings.d.ts +4 -1
  25. package/dist/runtime/applyVariableBindings.d.ts.map +1 -1
  26. package/dist/runtime/applyVariableBindings.js +40 -31
  27. package/dist/runtime/applyVariableBindings.js.map +1 -1
  28. package/dist/runtime/clipTree.d.ts.map +1 -1
  29. package/dist/runtime/clipTree.js +2 -1
  30. package/dist/runtime/clipTree.js.map +1 -1
  31. package/dist/runtime/compositionDimension.d.ts +6 -0
  32. package/dist/runtime/compositionDimension.d.ts.map +1 -0
  33. package/dist/runtime/compositionDimension.js +23 -0
  34. package/dist/runtime/compositionDimension.js.map +1 -0
  35. package/dist/runtime/media.d.ts.map +1 -1
  36. package/dist/runtime/media.js +45 -17
  37. package/dist/runtime/media.js.map +1 -1
  38. package/dist/runtime/proxySrc.d.ts +4 -0
  39. package/dist/runtime/proxySrc.d.ts.map +1 -0
  40. package/dist/runtime/proxySrc.js +6 -0
  41. package/dist/runtime/proxySrc.js.map +1 -0
  42. package/dist/runtime/timeline.d.ts +4 -0
  43. package/dist/runtime/timeline.d.ts.map +1 -1
  44. package/dist/runtime/timeline.js +7 -5
  45. package/dist/runtime/timeline.js.map +1 -1
  46. package/dist/runtime/types.d.ts +5 -0
  47. package/dist/runtime/types.d.ts.map +1 -1
  48. package/dist/safePath.d.ts +1 -1
  49. package/dist/safePath.d.ts.map +1 -1
  50. package/dist/safePath.js +14 -3
  51. package/dist/safePath.js.map +1 -1
  52. package/dist/sceneParts.d.ts +10 -0
  53. package/dist/sceneParts.d.ts.map +1 -0
  54. package/dist/sceneParts.js +5 -0
  55. package/dist/sceneParts.js.map +1 -0
  56. package/package.json +5 -4
@@ -41,5 +41,8 @@
41
41
  * differ from the preview, which is the more dangerous of the two directions.
42
42
  */
43
43
  export declare function sanitizeCssValue(value: string): string;
44
- export declare function applyVariableBindings(doc: Document): void;
44
+ /** The src an element loads, preview proxy aside: its bound variable's value, else its attribute. */
45
+ export declare function unproxiedMediaSrc(el: Element): string | null;
46
+ /** Applies the bindings in `doc`, or only those inside `within` and `within` itself. */
47
+ export declare function applyVariableBindings(doc: Document, within?: Element): void;
45
48
  //# sourceMappingURL=applyVariableBindings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"applyVariableBindings.d.ts","sourceRoot":"","sources":["../../src/runtime/applyVariableBindings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAwBH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtD;AAsFD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,CA8BzD"}
1
+ {"version":3,"file":"applyVariableBindings.d.ts","sourceRoot":"","sources":["../../src/runtime/applyVariableBindings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAyBH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtD;AAoGD,qGAAqG;AACrG,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAE5D;AAED,wFAAwF;AACxF,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAoB3E"}
@@ -29,6 +29,7 @@
29
29
  import { readVariablesForElement } from "./variableScope.js";
30
30
  import { isScalarVariableValue as isScalar, isSafeMediaUrl, } from "@hyperframes/parsers/composition";
31
31
  import { isHtmlElement } from "./domRealm.js";
32
+ import { unproxiedSrc } from "./proxySrc.js";
32
33
  // data-var-src only rebinds media `src` on media elements. A user-controlled
33
34
  // variable value assigned to a src is an XSS surface on tags whose src executes
34
35
  // (`<iframe src="javascript:…">`, `<script src="data:…">`, `<embed>`), so the
@@ -116,17 +117,9 @@ function findTopRoot(doc) {
116
117
  doc.body?.firstElementChild ??
117
118
  doc.body);
118
119
  }
119
- function applyCssCustomProperties(doc, cache) {
120
- // Top-level root plus every inlined sub-composition root; custom props
121
- // inherit, so descendants of each root see its scope's values.
122
- const roots = new Set();
123
- const topRoot = findTopRoot(doc);
124
- if (topRoot)
125
- roots.add(topRoot);
126
- for (const el of Array.from(doc.querySelectorAll("[data-composition-id]"))) {
127
- roots.add(el);
128
- }
129
- for (const root of roots) {
120
+ // Custom props inherit, so each composition root carries its own scope's values.
121
+ function applyCssCustomProperties(roots, cache) {
122
+ for (const root of new Set(roots)) {
130
123
  const values = valuesForElement(root, cache);
131
124
  for (const [id, value] of Object.entries(values)) {
132
125
  const css = cssValueFor(value);
@@ -136,29 +129,45 @@ function applyCssCustomProperties(doc, cache) {
136
129
  }
137
130
  }
138
131
  }
139
- export function applyVariableBindings(doc) {
140
- const cache = new Map();
141
- applyCssCustomProperties(doc, cache);
142
- for (const el of Array.from(doc.querySelectorAll("[data-var-src]"))) {
143
- const id = el.getAttribute("data-var-src")?.trim();
144
- if (!id)
145
- continue;
146
- // Only media elements may take a variable-driven src (see VAR_SRC_TAGS) — a
147
- // src on <iframe>/<script>/<embed> is a code-execution sink, not a media ref.
148
- if (!VAR_SRC_TAGS.has(el.tagName.toLowerCase())) {
132
+ function variableSrcFor(el, cache, warn = true) {
133
+ const id = el.getAttribute("data-var-src")?.trim();
134
+ if (!id)
135
+ return null;
136
+ // Only media elements may take a variable-driven src (see VAR_SRC_TAGS) — a
137
+ // src on <iframe>/<script>/<embed> is a code-execution sink, not a media ref.
138
+ if (!VAR_SRC_TAGS.has(el.tagName.toLowerCase())) {
139
+ if (warn)
149
140
  console.warn(`[hyperframes] Ignoring data-var-src on <${el.tagName.toLowerCase()}>: variable-bound src is only allowed on ${Array.from(VAR_SRC_TAGS).join("/")}.`);
150
- continue;
151
- }
152
- const url = resolveUrl(valuesForElement(el, cache)[id]);
153
- if (url === null)
154
- continue;
155
- if (!isSafeMediaUrl(url)) {
141
+ return null;
142
+ }
143
+ const url = resolveUrl(valuesForElement(el, cache)[id]);
144
+ if (url === null)
145
+ return null;
146
+ if (!isSafeMediaUrl(url)) {
147
+ if (warn)
156
148
  console.warn(`[hyperframes] Ignoring data-var-src="${id}": unsafe URL protocol.`);
157
- continue;
158
- }
159
- el.setAttribute("src", url);
149
+ return null;
150
+ }
151
+ return url;
152
+ }
153
+ /** The src an element loads, preview proxy aside: its bound variable's value, else its attribute. */
154
+ export function unproxiedMediaSrc(el) {
155
+ return variableSrcFor(el, new Map(), false) ?? unproxiedSrc(el);
156
+ }
157
+ /** Applies the bindings in `doc`, or only those inside `within` and `within` itself. */
158
+ export function applyVariableBindings(doc, within) {
159
+ const cache = new Map();
160
+ const all = (selector) => within
161
+ ? [...(within.matches(selector) ? [within] : []), ...within.querySelectorAll(selector)]
162
+ : Array.from(doc.querySelectorAll(selector));
163
+ const topRoot = within ? null : findTopRoot(doc);
164
+ applyCssCustomProperties([...(topRoot ? [topRoot] : []), ...all("[data-composition-id]")], cache);
165
+ for (const el of all("[data-var-src]")) {
166
+ const url = variableSrcFor(el, cache);
167
+ if (url !== null && unproxiedSrc(el) !== url)
168
+ el.setAttribute("src", url);
160
169
  }
161
- for (const el of Array.from(doc.querySelectorAll("[data-var-text]"))) {
170
+ for (const el of all("[data-var-text]")) {
162
171
  const id = el.getAttribute("data-var-text")?.trim();
163
172
  if (!id)
164
173
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"applyVariableBindings.js","sourceRoot":"","sources":["../../src/runtime/applyVariableBindings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EACL,qBAAqB,IAAI,QAAQ,EACjC,cAAc,GACf,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,6EAA6E;AAC7E,gFAAgF;AAChF,8EAA8E;AAC9E,yEAAyE;AACzE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;AAElE,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAChE,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,MAAM,GAAG,GAAI,KAA2B,CAAC,GAAG,CAAC;QAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC;IAC5D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,iFAAiF;AACjF,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,yEAAyE;QACzE,2CAA2C;QAC3C,MAAM,IAAI,GAAI,KAA4B,CAAC,IAAI,CAAC;QAChD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;IAC/D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AASD,SAAS,gBAAgB,CAAC,EAAW,EAAE,KAAuB;IAC5D,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,MAAM,MAAM,GAAG,uBAAuB,CAAC,EAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,4BAA4B,CAAC,EAAW,EAAE,IAAY;IAC7D,IAAI,EAAE,CAAC,iBAAiB,KAAK,CAAC,EAAE,CAAC;QAC/B,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC;QACtB,OAAO;IACT,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7C,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS;YAAE,SAAS;QAC/C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACrC,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC;IACxE,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,WAAW,CAAC,GAAa;IAChC,OAAO,CACL,GAAG,CAAC,aAAa,CAAC,gBAAgB,CAAC;QACnC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC;QAC3B,GAAG,CAAC,IAAI,EAAE,iBAAiB;QAC3B,GAAG,CAAC,IAAI,CACT,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,GAAa,EAAE,KAAuB;IACtE,uEAAuE;IACvE,+DAA+D;IAC/D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAW,CAAC;IACjC,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,OAAO;QAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC;QAC3E,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7C,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,GAAG,KAAK,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAa;IACjD,MAAM,KAAK,GAAqB,IAAI,GAAG,EAAE,CAAC;IAC1C,wBAAwB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAErC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;QACpE,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC;QACnD,IAAI,CAAC,EAAE;YAAE,SAAS;QAClB,4EAA4E;QAC5E,8EAA8E;QAC9E,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CACV,2CAA2C,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,4CAA4C,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CACrJ,CAAC;YACF,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,UAAU,CAAC,gBAAgB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACxD,IAAI,GAAG,KAAK,IAAI;YAAE,SAAS;QAC3B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAE,yBAAyB,CAAC,CAAC;YAClF,SAAS;QACX,CAAC;QACD,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC;QACrE,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC;QACpD,IAAI,CAAC,EAAE;YAAE,SAAS;QAClB,MAAM,KAAK,GAAG,gBAAgB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,QAAQ,CAAC,KAAK,CAAC;YAAE,4BAA4B,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"applyVariableBindings.js","sourceRoot":"","sources":["../../src/runtime/applyVariableBindings.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"clipTree.d.ts","sourceRoot":"","sources":["../../src/runtime/clipTree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAQnD,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,SAAS,QAAQ,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;CACrC;AAaD;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAEvD;AAED,UAAU,iBAAiB;IACzB,sBAAsB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CACzE;AAwDD,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACrC,aAAa,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,SAAS,CAAC,CAAC;IAClE,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,QAAQ,CAyBX"}
1
+ {"version":3,"file":"clipTree.d.ts","sourceRoot":"","sources":["../../src/runtime/clipTree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AASnD,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,SAAS,QAAQ,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;CACrC;AAaD;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAEvD;AAED,UAAU,iBAAiB;IACzB,sBAAsB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CACzE;AAwDD,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACrC,aAAa,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,SAAS,CAAC,CAAC;IAClE,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,QAAQ,CAyBX"}
@@ -11,6 +11,7 @@
11
11
  */
12
12
  import { parseStrictFiniteTimingNumber, resolveNaturalMediaTimelineDuration, resolveTimedImageDurationSeconds, } from "./playbackRate.js";
13
13
  import { isMediaElement } from "./domRealm.js";
14
+ import { findRootCompositionElement } from "./compositionDimension.js";
14
15
  const DECORATIVE_TAGS = new Set(["SCRIPT", "STYLE", "LINK", "META", "TEMPLATE", "NOSCRIPT"]);
15
16
  /**
16
17
  * Stable identity for a timed element, shared by __clipTree and __clipManifest
@@ -67,7 +68,7 @@ function linkParentChild(elementToNode) {
67
68
  export function createClipTree(params) {
68
69
  const { startResolver, timelineRegistry, rootDuration } = params;
69
70
  const elementToNode = new Map();
70
- const root = document.querySelector("[data-composition-id]");
71
+ const root = findRootCompositionElement();
71
72
  let ordinal = 0;
72
73
  for (const el of document.querySelectorAll("[data-start]")) {
73
74
  if (el === root || DECORATIVE_TAGS.has(el.tagName))
@@ -1 +1 @@
1
- {"version":3,"file":"clipTree.js","sourceRoot":"","sources":["../../src/runtime/clipTree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clipTree.js","sourceRoot":"","sources":["../../src/runtime/clipTree.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /** A `data-width`/`data-height` length in CSS px as the stage lays it out, fractions kept. */
2
+ export declare function parseLayoutDimension(value: string | null | undefined): number | null;
3
+ /** The size the runtime reports to its host: whole px, read with `parseInt` as the renderer does. */
4
+ export declare function parseCompositionDimension(value: string | null | undefined): number | null;
5
+ export declare function findRootCompositionElement(): HTMLElement | null;
6
+ //# sourceMappingURL=compositionDimension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compositionDimension.d.ts","sourceRoot":"","sources":["../../src/runtime/compositionDimension.ts"],"names":[],"mappings":"AAEA,8FAA8F;AAC9F,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAIpF;AAED,qGAAqG;AACrG,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAIzF;AAED,wBAAgB,0BAA0B,IAAI,WAAW,GAAG,IAAI,CAK/D"}
@@ -0,0 +1,23 @@
1
+ import { isHtmlElement } from "./domRealm.js";
2
+ /** A `data-width`/`data-height` length in CSS px as the stage lays it out, fractions kept. */
3
+ export function parseLayoutDimension(value) {
4
+ if (value == null || value.trim() === "")
5
+ return null;
6
+ const parsed = Number.parseFloat(value);
7
+ return Number.isFinite(parsed) && parsed > 0 ? parsed : null;
8
+ }
9
+ /** The size the runtime reports to its host: whole px, read with `parseInt` as the renderer does. */
10
+ export function parseCompositionDimension(value) {
11
+ if (value == null || value.trim() === "")
12
+ return null;
13
+ const parsed = Number.parseInt(value, 10);
14
+ return Number.isFinite(parsed) && parsed > 0 ? parsed : null;
15
+ }
16
+ export function findRootCompositionElement() {
17
+ const explicitRoot = document.querySelector('[data-composition-id][data-root="true"]');
18
+ if (isHtmlElement(explicitRoot))
19
+ return explicitRoot;
20
+ // The first composition in document order never sits inside another one.
21
+ return document.querySelector("[data-composition-id]");
22
+ }
23
+ //# sourceMappingURL=compositionDimension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compositionDimension.js","sourceRoot":"","sources":["../../src/runtime/compositionDimension.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,8FAA8F;AAC9F,MAAM,UAAU,oBAAoB,CAAC,KAAgC;IACnE,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/D,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,yBAAyB,CAAC,KAAgC;IACxE,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC1C,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,yCAAyC,CAAC,CAAC;IACvF,IAAI,aAAa,CAAC,YAAY,CAAC;QAAE,OAAO,YAAY,CAAC;IACrD,yEAAyE;IACzE,OAAO,QAAQ,CAAC,aAAa,CAAc,uBAAuB,CAAC,CAAC;AACtE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../src/runtime/media.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../src/runtime/media.ts"],"names":[],"mappings":"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"}
@@ -13,12 +13,12 @@ export { readElementPlaybackRate, readElementRateSpec, resolveNaturalMediaTimeli
13
13
  export function readElementPlaybackStart(el) {
14
14
  return readMediaStart(el);
15
15
  }
16
- const HOLD_END_EVENTS = ["seeked", "loadeddata", "suspend", "error", "emptied", "abort"];
16
+ const HOLD_END_EVENTS = ["seeked", "loadeddata", "error", "emptied", "abort"];
17
17
  const HOLD_CAP_MS = 5000;
18
18
  const releaseHeldVideo = new WeakMap();
19
19
  // A seeking video still paints its previous frame, and one still fetching its first data paints none (its seek
20
- // waits for metadata without setting `seeking`); frame captures wait on the seek barrier until it lands. Each seek
21
- // re-arms a 5 s cap, and listeners run in the capture phase so a failing <source> child releases the hold.
20
+ // waits for metadata without setting `seeking`); frame captures wait on the barrier until it lands. The 5 s cap is
21
+ // the only end for a stalled source (`suspend` also fires between range requests); capture phase catches <source>.
22
22
  function holdSeekBarrierUntilVideoLands(el) {
23
23
  const loading = el.readyState < el.HAVE_CURRENT_DATA &&
24
24
  el.networkState === el.NETWORK_LOADING &&
@@ -28,7 +28,7 @@ function holdSeekBarrierUntilVideoLands(el) {
28
28
  releaseHeldVideo.get(el)?.();
29
29
  registerSeekCompletion(new Promise((resolve) => {
30
30
  const done = (event) => {
31
- if ((event?.type === "loadeddata" || event?.type === "suspend") && el.seeking)
31
+ if (event?.type === "loadeddata" && el.seeking)
32
32
  return;
33
33
  clearTimeout(cap);
34
34
  for (const type of HOLD_END_EVENTS)
@@ -169,6 +169,7 @@ export function evictMediaSyncState(el) {
169
169
  strictDriftSamples.delete(el);
170
170
  seekLoadRetried.delete(el);
171
171
  lastRuntimeAppliedVolume.delete(el);
172
+ videoSteering.delete(el);
172
173
  }
173
174
  /** Test-only seam: whether any per-source sync state is still tracked for `el`. */
174
175
  export function hasMediaSyncStateForTest(el) {
@@ -176,7 +177,28 @@ export function hasMediaSyncStateForTest(el) {
176
177
  lastRelativeTime.has(el) ||
177
178
  strictDriftSamples.has(el) ||
178
179
  seekLoadRetried.has(el) ||
179
- lastRuntimeAppliedVolume.has(el));
180
+ lastRuntimeAppliedVolume.has(el) ||
181
+ videoSteering.has(el));
182
+ }
183
+ /** Drift a playing audio element may carry before sync pulls it back onto the playhead. */
184
+ const MEDIA_SYNC_TOLERANCE_SECONDS = 0.04;
185
+ // A playing video is steered back by rate, not seeked (a seek resets its decoder).
186
+ // Its rate is written only when steering starts or stops: every write costs a frame.
187
+ const VIDEO_STEER = 0.03;
188
+ const VIDEO_STEER_RELEASE_SECONDS = 0.01;
189
+ /** Direction (+1 fast, -1 slow) a video is being steered in; absent when it plays at its authored rate. */
190
+ const videoSteering = new WeakMap();
191
+ /** Rate for a playing video `offset` seconds behind (+) or ahead (-) of the playhead. */
192
+ function steeredVideoRate(el, offset, baseRate) {
193
+ const direction = Math.sign(offset);
194
+ const steering = videoSteering.get(el);
195
+ if (Math.abs(offset) > MEDIA_SYNC_TOLERANCE_SECONDS)
196
+ videoSteering.set(el, direction);
197
+ else if (steering !== direction || Math.abs(offset) <= VIDEO_STEER_RELEASE_SECONDS) {
198
+ videoSteering.delete(el);
199
+ return baseRate;
200
+ }
201
+ return baseRate * (1 + direction * VIDEO_STEER);
180
202
  }
181
203
  // fallow-ignore-next-line complexity
182
204
  export function syncRuntimeMedia(params) {
@@ -318,14 +340,8 @@ export function syncRuntimeMedia(params) {
318
340
  // was overridden after init.ts set it.
319
341
  if (el.preload !== "auto")
320
342
  el.preload = "auto";
321
- try {
322
- // Per-element rate × global transport rate
323
- el.playbackRate = rateAt(clipRate, params.timeSeconds - clip.start) * params.playbackRate;
324
- }
325
- catch (err) {
326
- // ignore unsupported playbackRate
327
- swallow("runtime.media.site1", err);
328
- }
343
+ // Per-element rate × global transport rate
344
+ const baseRate = rateAt(clipRate, params.timeSeconds - clip.start) * params.playbackRate;
329
345
  // Drift correction — three tiers:
330
346
  //
331
347
  // 1. Hard sync (0.5s): first tick, timeline jumps (scrub), catastrophic
@@ -344,7 +360,6 @@ export function syncRuntimeMedia(params) {
344
360
  // The first tick a clip is active has no previous offset to compare —
345
361
  // treated as hard resync so sub-compositions with non-zero mediaStart
346
362
  // land on the right frame.
347
- const STRICT_DRIFT_THRESHOLD = 0.04;
348
363
  const STRICT_REQUIRED_SAMPLES = 2;
349
364
  const currentElTime = el.currentTime || 0;
350
365
  const drift = Math.abs(currentElTime - relTime);
@@ -359,7 +374,7 @@ export function syncRuntimeMedia(params) {
359
374
  // strict threshold; do not force cold audio forward while it buffers.
360
375
  const staleAudioOnFirstTick = el.tagName === "AUDIO" &&
361
376
  firstTickOfClip &&
362
- currentElTime - relTime > STRICT_DRIFT_THRESHOLD;
377
+ currentElTime - relTime > MEDIA_SYNC_TOLERANCE_SECONDS;
363
378
  const hardSync = (isHeldVideoTail && drift > 0.001) ||
364
379
  (el.ended && canSeekEndedMediaBackward && drift > 0.001) ||
365
380
  staleAudioOnFirstTick ||
@@ -380,7 +395,7 @@ export function syncRuntimeMedia(params) {
380
395
  !hardSync &&
381
396
  !firstTickOfClip &&
382
397
  offsetStabilized &&
383
- drift > STRICT_DRIFT_THRESHOLD) {
398
+ drift > MEDIA_SYNC_TOLERANCE_SECONDS) {
384
399
  const samples = (strictDriftSamples.get(el) ?? 0) + 1;
385
400
  strictDriftSamples.set(el, samples);
386
401
  if (samples >= STRICT_REQUIRED_SAMPLES) {
@@ -388,10 +403,23 @@ export function syncRuntimeMedia(params) {
388
403
  strictDriftSamples.set(el, 0);
389
404
  }
390
405
  }
391
- else if (drift <= STRICT_DRIFT_THRESHOLD) {
406
+ else if (drift <= MEDIA_SYNC_TOLERANCE_SECONDS) {
392
407
  strictDriftSamples.set(el, 0);
393
408
  }
394
409
  const forceSync = !isPlayingVideo && params.forceSync && drift > 0.02;
410
+ try {
411
+ // A hard sync lands the video on the playhead, so its pre-seek offset says nothing.
412
+ if (!isPlayingVideo || hardSync)
413
+ videoSteering.delete(el);
414
+ const rate = isPlayingVideo && !hardSync ? steeredVideoRate(el, offset, baseRate) : baseRate;
415
+ // Some engines read a rate back at lower precision; an equal-enough rate is not rewritten.
416
+ if (Math.abs(el.playbackRate - rate) > 1e-6)
417
+ el.playbackRate = rate;
418
+ }
419
+ catch (err) {
420
+ // ignore unsupported playbackRate
421
+ swallow("runtime.media.site1", err);
422
+ }
395
423
  if (hardSync || strictSync || forceSync) {
396
424
  // Skip the per-tick seek (and the `el.load()` drift-recovery retry
397
425
  // below) for `<video>` elements that have a sibling
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/runtime/media.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/runtime/media.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ /** Media elements swapped to their proxy, each with the src attribute it had before the swap. */
2
+ export declare const swappedElements: WeakMap<Element, string | null>;
3
+ export declare function unproxiedSrc(el: Element): string | null;
4
+ //# sourceMappingURL=proxySrc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxySrc.d.ts","sourceRoot":"","sources":["../../src/runtime/proxySrc.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,eAAO,MAAM,eAAe,iCAAwC,CAAC;AAErE,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAEvD"}
@@ -0,0 +1,6 @@
1
+ /** Media elements swapped to their proxy, each with the src attribute it had before the swap. */
2
+ export const swappedElements = new WeakMap();
3
+ export function unproxiedSrc(el) {
4
+ return swappedElements.has(el) ? (swappedElements.get(el) ?? null) : el.getAttribute("src");
5
+ }
6
+ //# sourceMappingURL=proxySrc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxySrc.js","sourceRoot":"","sources":["../../src/runtime/proxySrc.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,OAAO,EAA0B,CAAC;AAErE,MAAM,UAAU,YAAY,CAAC,EAAW;IACtC,OAAO,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAC9F,CAAC"}
@@ -1,5 +1,9 @@
1
1
  import type { RuntimeTimelineMessage, RuntimeTimelineLike } from "./types";
2
2
  import { createRuntimeStartTimeResolver } from "./startResolver";
3
+ /** A root timeline this long is an endless loop, not a film: GSAP reports 1e10 s for `repeat: -1`.
4
+ * Studio's sanitizeDurationSeconds rejects the same length. Animations that simply end past the
5
+ * voiceover are real duration, and the runtime player already plays them. */
6
+ export declare const LOOP_INFLATED_TIMELINE_SECONDS = 7200;
3
7
  export declare function isRuntimeElementVisibleAt(rawNode: HTMLElement, options: {
4
8
  currentTime: number;
5
9
  compositionDuration: number;
@@ -1 +1 @@
1
- {"version":3,"file":"timeline.d.ts","sourceRoot":"","sources":["../../src/runtime/timeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,sBAAsB,EAEtB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAgBjB,OAAO,EAAE,8BAA8B,EAAE,MAAM,iBAAiB,CAAC;AAajE,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE;IACP,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,SAAS,CAAC,CAAC;IAClE,QAAQ,EAAE,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC;CAC7D,GACA,OAAO,CAiDT;AAmJD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE;IACpD,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,sBAAsB,CAodzB"}
1
+ {"version":3,"file":"timeline.d.ts","sourceRoot":"","sources":["../../src/runtime/timeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,sBAAsB,EAEtB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAiBjB,OAAO,EAAE,8BAA8B,EAAE,MAAM,iBAAiB,CAAC;AAQjE;;8EAE8E;AAC9E,eAAO,MAAM,8BAA8B,OAAO,CAAC;AAEnD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE;IACP,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,SAAS,CAAC,CAAC;IAClE,QAAQ,EAAE,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC;CAC7D,GACA,OAAO,CAiDT;AAmJD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE;IACpD,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,sBAAsB,CAqdzB"}
@@ -1,4 +1,5 @@
1
1
  import { stableClipId } from "./clipTree.js";
2
+ import { findRootCompositionElement, parseCompositionDimension } from "./compositionDimension.js";
2
3
  import { AUTHORED_DURATION_ATTR, AUTHORED_END_ATTR, resolveAuthoredTimingWindow, } from "./authoredTiming.js";
3
4
  import { swallow } from "./diagnostics.js";
4
5
  import { readElementPlaybackRate, readElementPlaybackStart } from "./media.js";
@@ -14,7 +15,7 @@ import { isElementNode, isMediaElement } from "./domRealm.js";
14
15
  /** A root timeline this long is an endless loop, not a film: GSAP reports 1e10 s for `repeat: -1`.
15
16
  * Studio's sanitizeDurationSeconds rejects the same length. Animations that simply end past the
16
17
  * voiceover are real duration, and the runtime player already plays them. */
17
- const LOOP_INFLATED_TIMELINE_SECONDS = 7200;
18
+ export const LOOP_INFLATED_TIMELINE_SECONDS = 7200;
18
19
  export function isRuntimeElementVisibleAt(rawNode, options) {
19
20
  const tag = rawNode.tagName.toLowerCase();
20
21
  if (tag === "script" || tag === "style" || tag === "link" || tag === "meta") {
@@ -265,7 +266,7 @@ export function collectRuntimeTimelinePayload(params) {
265
266
  inheritedDuration,
266
267
  };
267
268
  };
268
- const root = document.querySelector("[data-composition-id]");
269
+ const root = findRootCompositionElement();
269
270
  const compositionNodes = Array.from(document.querySelectorAll("[data-composition-id]"));
270
271
  const rootCompositionId = root?.getAttribute("data-composition-id") ?? null;
271
272
  const rootCompositionStart = root ? startResolver.resolveStartForElement(root, 0) : 0;
@@ -633,7 +634,8 @@ export function collectRuntimeTimelinePayload(params) {
633
634
  // hide structural/background tracks from the timeline UI; if we collapse the
634
635
  // payload duration down to the last visible clip end, the controls jump even
635
636
  // though playback still runs for the full authored root duration.
636
- const safeDuration = Math.max(1, maxEnd || 1, rootCompositionDuration ?? 0);
637
+ const knownDuration = Math.max(maxEnd || 0, rootCompositionDuration ?? 0);
638
+ const safeDuration = knownDuration > 0 ? knownDuration : 1;
637
639
  const durationInFrames = Math.max(1, Math.ceil(safeDuration * Math.max(1, params.canonicalFps)));
638
640
  return {
639
641
  ...runtimeProtocolMetadata(params.canonicalFps),
@@ -644,8 +646,8 @@ export function collectRuntimeTimelinePayload(params) {
644
646
  durationInFrames,
645
647
  clips,
646
648
  scenes,
647
- compositionWidth: parseNum(root?.getAttribute("data-width")) ?? 1920,
648
- compositionHeight: parseNum(root?.getAttribute("data-height")) ?? 1080,
649
+ compositionWidth: parseCompositionDimension(root?.getAttribute("data-width")) ?? 1920,
650
+ compositionHeight: parseCompositionDimension(root?.getAttribute("data-height")) ?? 1080,
649
651
  };
650
652
  }
651
653
  //# sourceMappingURL=timeline.js.map