@hyperframes/core 0.7.59 → 0.7.61

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 (69) hide show
  1. package/dist/compiler/htmlBundler.d.ts.map +1 -1
  2. package/dist/compiler/htmlBundler.js +23 -10
  3. package/dist/compiler/htmlBundler.js.map +1 -1
  4. package/dist/compiler/htmlCompiler.d.ts +2 -1
  5. package/dist/compiler/htmlCompiler.d.ts.map +1 -1
  6. package/dist/compiler/htmlCompiler.js +8 -8
  7. package/dist/compiler/htmlCompiler.js.map +1 -1
  8. package/dist/compiler/index.d.ts +1 -1
  9. package/dist/compiler/index.d.ts.map +1 -1
  10. package/dist/compiler/index.js +1 -1
  11. package/dist/compiler/index.js.map +1 -1
  12. package/dist/compiler/timingCompiler.d.ts +8 -0
  13. package/dist/compiler/timingCompiler.d.ts.map +1 -1
  14. package/dist/compiler/timingCompiler.js +12 -3
  15. package/dist/compiler/timingCompiler.js.map +1 -1
  16. package/dist/compositionContract.d.ts +2 -0
  17. package/dist/compositionContract.d.ts.map +1 -0
  18. package/dist/compositionContract.js +2 -0
  19. package/dist/compositionContract.js.map +1 -0
  20. package/dist/core.types.d.ts +1 -1
  21. package/dist/core.types.d.ts.map +1 -1
  22. package/dist/core.types.js +1 -1
  23. package/dist/core.types.js.map +1 -1
  24. package/dist/editing/affordances.d.ts +7 -0
  25. package/dist/editing/affordances.d.ts.map +1 -1
  26. package/dist/editing/affordances.js +6 -0
  27. package/dist/editing/affordances.js.map +1 -1
  28. package/dist/generated/position-edits-render-inline.js +1 -1
  29. package/dist/generated/position-edits-render-inline.js.map +1 -1
  30. package/dist/generated/runtime-inline.js +1 -1
  31. package/dist/generated/runtime-inline.js.map +1 -1
  32. package/dist/generators/hyperframes.d.ts.map +1 -1
  33. package/dist/generators/hyperframes.js +4 -3
  34. package/dist/generators/hyperframes.js.map +1 -1
  35. package/dist/hyperframe.runtime.iife.js +27 -27
  36. package/dist/index.d.ts +4 -2
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +10 -2
  39. package/dist/index.js.map +1 -1
  40. package/dist/runtime/analytics.d.ts +1 -1
  41. package/dist/runtime/analytics.d.ts.map +1 -1
  42. package/dist/runtime/analytics.js.map +1 -1
  43. package/dist/runtime/getVariables.d.ts +2 -0
  44. package/dist/runtime/getVariables.d.ts.map +1 -1
  45. package/dist/runtime/getVariables.js +12 -0
  46. package/dist/runtime/getVariables.js.map +1 -1
  47. package/dist/runtime/media.d.ts +91 -0
  48. package/dist/runtime/media.d.ts.map +1 -0
  49. package/dist/runtime/media.js +355 -0
  50. package/dist/runtime/media.js.map +1 -0
  51. package/dist/runtime/positionEdits.d.ts +16 -1
  52. package/dist/runtime/positionEdits.d.ts.map +1 -1
  53. package/dist/runtime/positionEdits.js +35 -7
  54. package/dist/runtime/positionEdits.js.map +1 -1
  55. package/dist/runtime/protocol.d.ts +1 -1
  56. package/dist/runtime/protocol.d.ts.map +1 -1
  57. package/dist/runtime/protocol.js +1 -0
  58. package/dist/runtime/protocol.js.map +1 -1
  59. package/dist/runtime/startExpression.d.ts +1 -15
  60. package/dist/runtime/startExpression.d.ts.map +1 -1
  61. package/dist/runtime/startExpression.js +1 -32
  62. package/dist/runtime/startExpression.js.map +1 -1
  63. package/dist/runtime/startResolver.d.ts +17 -0
  64. package/dist/runtime/startResolver.d.ts.map +1 -0
  65. package/dist/runtime/startResolver.js +172 -0
  66. package/dist/runtime/startResolver.js.map +1 -0
  67. package/dist/runtime/types.d.ts +4 -1
  68. package/dist/runtime/types.d.ts.map +1 -1
  69. package/package.json +12 -4
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export type { ExecutionMode, Orientation, Asset, TimelineElement, TimelineElementBase, TimelineMediaElement, TimelineTextElement, TimelineCompositionElement, TimelineElementType, MediaElementType, CanvasResolution, Fps, FpsInput, FpsParseResult, MediaFile, CompositionAPI, PlayerAPI, AddElementData, ValidationResult, CompositionAsset, Keyframe, KeyframeProperties, ElementKeyframes, StageZoom, StageZoomKeyframe, CompositionVariableType, CompositionVariableBase, StringVariable, NumberVariable, ColorVariable, BooleanVariable, EnumVariable, CompositionVariable, CompositionSpec, WaveformData, OutputResolutionCompatibility, OutputResolutionIssueKind, } from "./core.types";
2
2
  export type { SlideshowManifest, SlideRef, SlideHotspot, SlideSequence, ResolvedSlide, ResolvedSlideSequence, ResolvedSlideshow, } from "./slideshow/index.js";
3
3
  export { parseSlideshowManifest, resolveSlideshow } from "./slideshow/index.js";
4
- export { CANVAS_DIMENSIONS, VALID_CANVAS_RESOLUTIONS, normalizeResolutionFlag, checkOutputResolutionCompatibility, parseFps, parseFpsWithDefault, toFps, fpsToNumber, fpsToFfmpegArg, TIMELINE_COLORS, DEFAULT_DURATIONS, COMPOSITION_VARIABLE_TYPES, isTextElement, isMediaElement, isCompositionElement, getDefaultStageZoom, } from "./core.types";
4
+ export { CANVAS_DIMENSIONS, VALID_CANVAS_RESOLUTIONS, normalizeResolutionFlag, isAspectAgnosticResolutionAlias, resolveResolutionFlagPair, checkOutputResolutionCompatibility, suggestMatchingPreset, parseFps, parseFpsWithDefault, toFps, fpsToNumber, fpsToFfmpegArg, TIMELINE_COLORS, DEFAULT_DURATIONS, COMPOSITION_VARIABLE_TYPES, isTextElement, isMediaElement, isCompositionElement, getDefaultStageZoom, } from "./core.types";
5
5
  export { generateBaseHtml, getStageStyles } from "./templates/base";
6
6
  export { GSAP_CDN, BASE_STYLES, ELEMENT_BASE_STYLES, MEDIA_STYLES, TEXT_STYLES, ZOOM_CONTAINER_STYLES, } from "./templates/constants";
7
7
  export type { GsapAnimation, GsapMethod, ParsedGsap } from "@hyperframes/parsers";
@@ -13,7 +13,7 @@ export { generateHyperframesHtml, generateGsapTimelineScript, generateHyperframe
13
13
  export type { UnresolvedElement, ResolvedDuration, ResolvedMediaElement, CompilationResult, } from "./compiler/timingCompiler";
14
14
  export type { WordTiming, ElementAnchor, AuthoredTiming, ResolvedTiming, ResolveTimingsInput, ResolveTimingsResult, } from "./compiler/timingResolver";
15
15
  export { resolveTimings } from "./compiler/timingResolver";
16
- export { compileTimingAttrs, injectDurations, extractResolvedMedia, clampDurations, shouldClampMediaDuration, MEDIA_DURATION_CLAMP_EPSILON_SECONDS, } from "./compiler/timingCompiler";
16
+ export { compileTimingAttrs, injectDurations, extractResolvedMedia, clampDurations, shouldClampMediaDuration, shouldClampResolvedMediaDuration, MEDIA_DURATION_CLAMP_EPSILON_SECONDS, } from "./compiler/timingCompiler";
17
17
  export { rewriteAssetPaths, rewriteAssetPath, rewriteCssAssetUrls, rewriteInlineStyleAssetUrls, } from "./compiler/rewriteSubCompPaths";
18
18
  export { CSS_URL_RE, isNonRelativeUrl, isPathInside } from "./compiler/assetPaths";
19
19
  export { checkSubCompositionUsability, type ParsableDocumentLike, type SubCompositionValidity, type SubCompositionValidityReason, } from "./compiler/subCompositionValidity";
@@ -39,6 +39,8 @@ export type { FitTextOptions, FitTextResult } from "./text/index.js";
39
39
  export { formatRenderOutputTimestamp } from "./utils/renderOutputTimestamp.js";
40
40
  export { getVariables } from "./runtime/getVariables.js";
41
41
  export { parseStartExpression, parseNumeric, type ReferenceExpression, } from "./runtime/startExpression.js";
42
+ export { COMPOSITION_CONTRACT_VERSION, COMPOSITION_ATTRIBUTES, CANONICAL_AUTHORED_TIMING_ATTRIBUTES, DERIVED_TIMING_ATTRIBUTES, LEGACY_TIMING_ATTRIBUTES, readClipTiming, writeClipTiming, ClipTimingWriteError, type ClipTiming, type ClipTimingDiagnostic, type ClipTimingDiagnosticCode, type ClipTimingUpdate, } from "./compositionContract.js";
43
+ export { createRuntimeStartTimeResolver } from "./runtime/startResolver.js";
42
44
  export { validateVariables, formatVariableValidationIssue, type VariableValidationIssue, } from "./runtime/validateVariables.js";
43
45
  export type { ItemType, FileType, FileTarget, RegistryItemDimensions, RegistryItemPreview, RegistryItem, ExampleItem, BlockItem, ComponentItem, RegistryManifestEntry, RegistryManifest, } from "./registry/index.js";
44
46
  export { ITEM_TYPES, FILE_TYPES, ITEM_TYPE_DIRS, isExampleItem, isBlockItem, isComponentItem, } from "./registry/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export { parseSlideshowManifest, resolveSlideshow } from "./slideshow/index.js";
2
- export { CANVAS_DIMENSIONS, VALID_CANVAS_RESOLUTIONS, normalizeResolutionFlag, checkOutputResolutionCompatibility, parseFps, parseFpsWithDefault, toFps, fpsToNumber, fpsToFfmpegArg, TIMELINE_COLORS, DEFAULT_DURATIONS, COMPOSITION_VARIABLE_TYPES, isTextElement, isMediaElement, isCompositionElement, getDefaultStageZoom, } from "./core.types.js";
2
+ export { CANVAS_DIMENSIONS, VALID_CANVAS_RESOLUTIONS, normalizeResolutionFlag, isAspectAgnosticResolutionAlias, resolveResolutionFlagPair, checkOutputResolutionCompatibility, suggestMatchingPreset, parseFps, parseFpsWithDefault, toFps, fpsToNumber, fpsToFfmpegArg, TIMELINE_COLORS, DEFAULT_DURATIONS, COMPOSITION_VARIABLE_TYPES, isTextElement, isMediaElement, isCompositionElement, getDefaultStageZoom, } from "./core.types.js";
3
3
  // Templates
4
4
  export { generateBaseHtml, getStageStyles } from "./templates/base.js";
5
5
  export { GSAP_CDN, BASE_STYLES, ELEMENT_BASE_STYLES, MEDIA_STYLES, TEXT_STYLES, ZOOM_CONTAINER_STYLES, } from "./templates/constants.js";
@@ -7,7 +7,7 @@ export { serializeGsapAnimations, getAnimationsForElementId, validateComposition
7
7
  export { parseHtml, updateElementInHtml, addElementToHtml, removeElementFromHtml, validateCompositionHtml, extractCompositionMetadata, } from "@hyperframes/parsers";
8
8
  export { generateHyperframesHtml, generateGsapTimelineScript, generateHyperframesStyles, } from "./generators/hyperframes.js";
9
9
  export { resolveTimings } from "./compiler/timingResolver.js";
10
- export { compileTimingAttrs, injectDurations, extractResolvedMedia, clampDurations, shouldClampMediaDuration, MEDIA_DURATION_CLAMP_EPSILON_SECONDS, } from "./compiler/timingCompiler.js";
10
+ export { compileTimingAttrs, injectDurations, extractResolvedMedia, clampDurations, shouldClampMediaDuration, shouldClampResolvedMediaDuration, MEDIA_DURATION_CLAMP_EPSILON_SECONDS, } from "./compiler/timingCompiler.js";
11
11
  // Lint moved to @hyperframes/lint. Import lint APIs from @hyperframes/lint
12
12
  // directly, or via the back-compat stub at @hyperframes/core/lint. Not
13
13
  // re-exported here — doing so would cycle core's main entry through the lint
@@ -36,6 +36,14 @@ export { formatRenderOutputTimestamp } from "./utils/renderOutputTimestamp.js";
36
36
  // Runtime helpers (composition-side)
37
37
  export { getVariables } from "./runtime/getVariables.js";
38
38
  export { parseStartExpression, parseNumeric, } from "./runtime/startExpression.js";
39
+ export { COMPOSITION_CONTRACT_VERSION, COMPOSITION_ATTRIBUTES, CANONICAL_AUTHORED_TIMING_ATTRIBUTES, DERIVED_TIMING_ATTRIBUTES, LEGACY_TIMING_ATTRIBUTES, readClipTiming, writeClipTiming, ClipTimingWriteError, } from "./compositionContract.js";
40
+ // Also exposed via the ./runtime/start-resolver subpath. This root re-export
41
+ // additionally makes tsc EMIT dist/runtime/startResolver.js: src/runtime is
42
+ // excluded from the tsconfig include set, so runtime files only reach dist
43
+ // when an included module imports them — without this line the subpath's
44
+ // publishConfig entry points at a file the pack doesn't contain
45
+ // (verify:packed-manifests catches exactly that).
46
+ export { createRuntimeStartTimeResolver } from "./runtime/startResolver.js";
39
47
  // Variable validation (CLI / tooling-side)
40
48
  export { validateVariables, formatVariableValidationIssue, } from "./runtime/validateVariables.js";
41
49
  export { ITEM_TYPES, FILE_TYPES, ITEM_TYPE_DIRS, isExampleItem, isBlockItem, isComponentItem, } from "./registry/index.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * The host application decides what to do with events: forward to PostHog,
5
5
  * Mixpanel, Amplitude, a custom logger, or nothing at all.
6
6
  */
7
- export type RuntimeAnalyticsEvent = "composition_loaded" | "composition_played" | "composition_paused" | "composition_seeked" | "composition_ended" | "element_picked" | "position_edit_fold_skipped";
7
+ export type RuntimeAnalyticsEvent = "composition_loaded" | "composition_played" | "composition_paused" | "composition_seeked" | "composition_ended" | "element_picked" | "position_edit_fold_skipped" | "timeline_missing_pause";
8
8
  export type RuntimeAnalyticsProperties = Record<string, string | number | boolean | null>;
9
9
  /**
10
10
  * Wire the analytics + performance bridge to the runtime's postMessage transport.
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/runtime/analytics.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAEH,MAAM,MAAM,qBAAqB,GAC7B,oBAAoB,GACpB,oBAAoB,GACpB,oBAAoB,GACpB,oBAAoB,GACpB,mBAAmB,GACnB,gBAAgB,GAChB,4BAA4B,CAAC;AAEjC,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;AAK1F;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAElF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,qBAAqB,EAC5B,UAAU,CAAC,EAAE,0BAA0B,GACtC,IAAI,CAaN"}
1
+ {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/runtime/analytics.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAEH,MAAM,MAAM,qBAAqB,GAC7B,oBAAoB,GACpB,oBAAoB,GACpB,oBAAoB,GACpB,oBAAoB,GACpB,mBAAmB,GACnB,gBAAgB,GAChB,4BAA4B,GAC5B,wBAAwB,CAAC;AAE7B,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;AAK1F;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAElF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,qBAAqB,EAC5B,UAAU,CAAC,EAAE,0BAA0B,GACtC,IAAI,CAaN"}
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/runtime/analytics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAmBxC,wEAAwE;AACxE,IAAI,YAAY,GAAwC,IAAI,CAAC;AAE7D;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAuC;IAC1E,YAAY,GAAG,WAAW,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAA4B,EAC5B,UAAuC;IAEvC,IAAI,CAAC,YAAY;QAAE,OAAO;IAC1B,IAAI,CAAC;QACH,YAAY,CAAC;YACX,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,WAAW;YACjB,KAAK;YACL,UAAU,EAAE,UAAU,IAAI,EAAE;SAC7B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,kDAAkD;QAClD,OAAO,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/runtime/analytics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAoBxC,wEAAwE;AACxE,IAAI,YAAY,GAAwC,IAAI,CAAC;AAE7D;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAuC;IAC1E,YAAY,GAAG,WAAW,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAA4B,EAC5B,UAAuC;IAEvC,IAAI,CAAC,YAAY;QAAE,OAAO;IAC1B,IAAI,CAAC;QACH,YAAY,CAAC;YACX,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,WAAW;YACjB,KAAK;YACL,UAAU,EAAE,UAAU,IAAI,EAAE;SAC7B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,kDAAkD;QAClD,OAAO,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC"}
@@ -13,6 +13,8 @@ export declare function readDeclaredDefaults(root: Element | null): Record<strin
13
13
  * blank default has no CSS meaning anyway.
14
14
  */
15
15
  export declare function applyCssVariables(target: Element, variables: Record<string, unknown>): void;
16
+ /** Keep only variables whose CSS custom property is not already defined. */
17
+ export declare function filterVariablesIfAbsent(target: Element, variables: Record<string, unknown>, view: Window | null): Record<string, unknown>;
16
18
  /** Remove custom properties a previous applyCssVariables call defined. */
17
19
  export declare function clearAppliedCssVariables(target: Element): void;
18
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"getVariables.d.ts","sourceRoot":"","sources":["../../src/runtime/getVariables.ts"],"names":[],"mappings":"AAuBA,wBAAgB,YAAY,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KACxD,OAAO,CAAC,CAAC,CAAC,CAoBd;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqBlF;AAQD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAW3F;AAED,0EAA0E;AAC1E,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAQ9D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,CAkBjE;AA6BD;+EAC+E;AAC/E,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAW9E;AAED,yEAAyE;AACzE,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAK7D"}
1
+ {"version":3,"file":"getVariables.d.ts","sourceRoot":"","sources":["../../src/runtime/getVariables.ts"],"names":[],"mappings":"AAuBA,wBAAgB,YAAY,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KACxD,OAAO,CAAC,CAAC,CAAC,CAoBd;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqBlF;AAQD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAW3F;AAED,4EAA4E;AAC5E,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,IAAI,EAAE,MAAM,GAAG,IAAI,GAClB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB;AAED,0EAA0E;AAC1E,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAQ9D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,CAkBjE;AA6BD;+EAC+E;AAC/E,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAW9E;AAED,yEAAyE;AACzE,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAK7D"}
@@ -96,6 +96,18 @@ export function applyCssVariables(target, variables) {
96
96
  if (applied.length > 0)
97
97
  target.setAttribute(APPLIED_VARS_ATTR, applied.join(" "));
98
98
  }
99
+ /** Keep only variables whose CSS custom property is not already defined. */
100
+ export function filterVariablesIfAbsent(target, variables, view) {
101
+ const filtered = {};
102
+ for (const [id, value] of Object.entries(variables)) {
103
+ const name = cssVariableName(id);
104
+ const existing = (hasInlineStyle(target) ? target.style.getPropertyValue(name) : "") ||
105
+ (view ? view.getComputedStyle(target).getPropertyValue(name) : "");
106
+ if (existing.trim() === "")
107
+ filtered[id] = value;
108
+ }
109
+ return filtered;
110
+ }
99
111
  /** Remove custom properties a previous applyCssVariables call defined. */
100
112
  export function clearAppliedCssVariables(target) {
101
113
  if (!hasInlineStyle(target))
@@ -1 +1 @@
1
- {"version":3,"file":"getVariables.js","sourceRoot":"","sources":["../../src/runtime/getVariables.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAErE,MAAM,UAAU,YAAY;IAG1B,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAO,EAAgB,CAAC;IAE7D,0EAA0E;IAC1E,yEAAyE;IACzE,yBAAyB;IACzB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAW,CAAC;IACrC,IAAI,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAC,4BAA4B,CAAC,EAAE,CAAC;QACzE,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC1C,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,8BAA8B,CAAC,CAAC,EAAE,CAAC;QACvF,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IACD,MAAM,gBAAgB,GAA4B,EAAE,CAAC;IACrD,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IAExC,OAAO,EAAE,GAAG,gBAAgB,EAAE,GAAG,SAAS,EAAgB,CAAC;AAC7D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAoB;IACvD,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,CAAC;IAC5D,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IAEpB,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IAEtC,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,SAAS;QAClD,MAAM,CAAC,GAAG,KAAgC,CAAC;QAC3C,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC;YAAE,SAAS;QAC5D,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;IACxB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AAE7C,SAAS,cAAc,CAAC,MAAe;IACrC,OAAO,OAAO,IAAI,MAAM,IAAI,OAAQ,MAAsB,CAAC,KAAK,EAAE,WAAW,KAAK,UAAU,CAAC;AAC/F,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAe,EAAE,SAAkC;IACnF,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;QAAE,OAAO;IACpC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC7E,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;YACjC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,wBAAwB,CAAC,MAAe;IACtD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;QAAE,OAAO;IACpC,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;IACvD,IAAI,CAAC,OAAO;QAAE,OAAO;IACrB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,6BAA6B,CAAC,GAAa;IACzD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAW,CAAC;IACrC,IAAI,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,4BAA4B,CAAC,EAAE,CAAC;QACpE,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACrC,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,8BAA8B,CAAC,CAAC,EAAE,CAAC;QAClF,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IACD,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IACxC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,OAAO,CAAC,IAAI,CACV,yBAAyB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sCAAsC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,mCAAmC,CAClJ,CAAC;IACJ,CAAC;AACH,CAAC;AAED;oEACoE;AACpE,SAAS,uBAAuB,CAC9B,EAAW,EACX,SAAkC,EAClC,IAAmB;IAEnB,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,IAAI,EAAE,IAAI,SAAS;YAAE,SAAS,CAAC,sCAAsC;QACrE,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;QACjC,0DAA0D;QAC1D,MAAM,QAAQ,GACZ,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC;YAC/B,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjE,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,SAAS;QACrC,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;IACtB,CAAC;IACD,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACpD,IAAI,EAAE,IAAI,QAAQ;YAAE,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;IAC1C,CAAC;IACD,iBAAiB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED;+EAC+E;AAC/E,MAAM,UAAU,uBAAuB,CAAC,IAAa;IACnD,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;IACtD,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IAC9E,OAAO,MAAiC,CAAC;AAC3C,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,mBAAmB;IACjC,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO,EAAE,CAAC;IAC7C,MAAM,GAAG,GAAI,MAA+C,CAAC,aAAa,CAAC;IAC3E,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACrE,OAAO,GAA8B,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"getVariables.js","sourceRoot":"","sources":["../../src/runtime/getVariables.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ import { type VolumeKeyframe } from "./mediaVolumeEnvelope.js";
2
+ export declare function readElementPlaybackRate(el: HTMLMediaElement): number;
3
+ /**
4
+ * Resolve a media element's timeline window without conflating a video's
5
+ * authored display slot with the amount of source left to decode.
6
+ *
7
+ * An explicit video slot may outlive its source and holds the final frame.
8
+ * Audio remains source-bounded because it has no visual hold state.
9
+ */
10
+ export declare function resolveRuntimeMediaClipDuration(params: {
11
+ isVideo: boolean;
12
+ sourceDuration: number | null;
13
+ hostRemaining: number | null;
14
+ explicitDuration: number | null;
15
+ }): number | null;
16
+ export type RuntimeMediaClip = {
17
+ el: HTMLVideoElement | HTMLAudioElement;
18
+ start: number;
19
+ mediaStart: number;
20
+ duration: number;
21
+ end: number;
22
+ volume: number | null;
23
+ playbackRate: number;
24
+ loop: boolean;
25
+ /** Source media duration in seconds (from el.duration). Used for loop wrapping. */
26
+ sourceDuration: number | null;
27
+ /**
28
+ * Probed volume keyframes from the GSAP timeline (same probe the renderer
29
+ * uses). When present, `syncRuntimeMedia` drives volume from the envelope
30
+ * rather than from `data-volume` + GSAP-change tracking, eliminating the
31
+ * race between the 60 Hz transport tick and GSAP's own seek.
32
+ */
33
+ volumeKeyframes?: VolumeKeyframe[];
34
+ };
35
+ export declare function refreshRuntimeMediaCache(params?: {
36
+ resolveStartSeconds?: (element: Element) => number;
37
+ resolveDurationSeconds?: (element: HTMLVideoElement | HTMLAudioElement) => number | null;
38
+ shouldIncludeElement?: (element: HTMLVideoElement | HTMLAudioElement) => boolean;
39
+ }): {
40
+ timedMediaEls: Array<HTMLVideoElement | HTMLAudioElement>;
41
+ mediaClips: RuntimeMediaClip[];
42
+ videoClips: RuntimeMediaClip[];
43
+ maxMediaEnd: number;
44
+ };
45
+ /**
46
+ * Drop every per-source sync baseline tracked for `el` — offset drift
47
+ * samples, the seek-past-buffered-range retry latch, and the last
48
+ * runtime-applied volume — so the next `syncRuntimeMedia` tick treats it as
49
+ * a first tick (hard resync, fresh drift baseline) instead of comparing
50
+ * against state computed for a different file. Used both when a clip leaves
51
+ * its active window (below) and by the runtime's proxy-swap helper
52
+ * (mediaProxy.ts) right after an in-place `src` swap, which points the same
53
+ * element at a different file without ever leaving its active window.
54
+ */
55
+ export declare function evictMediaSyncState(el: HTMLMediaElement): void;
56
+ /** Test-only seam: whether any per-source sync state is still tracked for `el`. */
57
+ export declare function hasMediaSyncStateForTest(el: HTMLMediaElement): boolean;
58
+ export declare function syncRuntimeMedia(params: {
59
+ clips: RuntimeMediaClip[];
60
+ timeSeconds: number;
61
+ playing: boolean;
62
+ playbackRate: number;
63
+ /** Force-mute every element (parent-frame proxy owns all audio). Asserted per
64
+ * tick so sub-composition media added mid-playback inherits the silence. */
65
+ outputMuted?: boolean;
66
+ /**
67
+ * User's explicit mute preference (set via `onSetMuted`). Symmetric to
68
+ * `outputMuted` — also asserted per tick — so a sub-composition that
69
+ * activates after the user mutes doesn't briefly play at author volume
70
+ * before the next bridge message lands.
71
+ */
72
+ userMuted?: boolean;
73
+ /**
74
+ * User's volume preference (0–1, set via `onSetVolume`). Multiplied with the
75
+ * per-clip author volume so `data-volume="0.5"` at user volume 0.8 yields 0.4.
76
+ */
77
+ userVolume?: number;
78
+ /**
79
+ * Invoked at most once when a media element's `play()` promise rejects with
80
+ * `NotAllowedError`. The caller is expected to latch and post a single
81
+ * outbound message; further invocations are suppressed by the caller.
82
+ */
83
+ onAutoplayBlocked?: () => void;
84
+ onElementVolume?: (el: HTMLMediaElement, volume: number) => void;
85
+ /** Is THIS element owned by the Web Audio transport? Owned → mute it (transport
86
+ * plays it); not owned → leave audible (HTMLMedia fallback). Per-element, not a
87
+ * global flag, so a not-yet-claimed track isn't muted by other tracks. */
88
+ isWebAudioOwned?: (el: HTMLMediaElement) => boolean;
89
+ forceSync?: boolean;
90
+ }): void;
91
+ //# sourceMappingURL=media.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../src/runtime/media.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAEtF,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,gBAAgB,GAAG,MAAM,CAGpE;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,MAAM,EAAE;IACtD,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,GAAG,MAAM,GAAG,IAAI,CAUhB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,mFAAmF;IACnF,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;CACpC,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,MAAM,CAAC,EAAE;IAChD,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC;IACnD,sBAAsB,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB,KAAK,MAAM,GAAG,IAAI,CAAC;IACzF,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB,KAAK,OAAO,CAAC;CAClF,GAAG;IACF,aAAa,EAAE,KAAK,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,CAAC;IAC1D,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;CACrB,CA8CA;AA+CD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,gBAAgB,GAAG,IAAI,CAK9D;AAED,mFAAmF;AACnF,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAOtE;AAGD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB;iFAC6E;IAC7E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACjE;;+EAE2E;IAC3E,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,gBAAgB,KAAK,OAAO,CAAC;IACpD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,GAAG,IAAI,CA0NP"}