@hyperframes/core 0.6.118 → 0.6.120

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/index.js CHANGED
@@ -1,29 +1,29 @@
1
- export { parseSlideshowManifest, resolveSlideshow } from "./slideshow/parseSlideshow";
2
- export { CANVAS_DIMENSIONS, VALID_CANVAS_RESOLUTIONS, normalizeResolutionFlag, parseFps, parseFpsWithDefault, toFps, fpsToNumber, fpsToFfmpegArg, TIMELINE_COLORS, DEFAULT_DURATIONS, COMPOSITION_VARIABLE_TYPES, isTextElement, isMediaElement, isCompositionElement, getDefaultStageZoom, } from "./core.types";
1
+ export { parseSlideshowManifest, resolveSlideshow } from "./slideshow/parseSlideshow.js";
2
+ export { CANVAS_DIMENSIONS, VALID_CANVAS_RESOLUTIONS, normalizeResolutionFlag, parseFps, parseFpsWithDefault, toFps, fpsToNumber, fpsToFfmpegArg, TIMELINE_COLORS, DEFAULT_DURATIONS, COMPOSITION_VARIABLE_TYPES, isTextElement, isMediaElement, isCompositionElement, getDefaultStageZoom, } from "./core.types.js";
3
3
  // Templates
4
- export { generateBaseHtml, getStageStyles } from "./templates/base";
5
- export { GSAP_CDN, BASE_STYLES, ELEMENT_BASE_STYLES, MEDIA_STYLES, TEXT_STYLES, ZOOM_CONTAINER_STYLES, } from "./templates/constants";
6
- export { serializeGsapAnimations, getAnimationsForElementId, validateCompositionGsap, keyframesToGsapAnimations, gsapAnimationsToKeyframes, } from "./parsers/gsapSerialize";
7
- export { parseHtml, updateElementInHtml, addElementToHtml, removeElementFromHtml, validateCompositionHtml, extractCompositionMetadata, } from "./parsers/htmlParser";
8
- export { generateHyperframesHtml, generateGsapTimelineScript, generateHyperframesStyles, } from "./generators/hyperframes";
9
- export { resolveTimings } from "./compiler/timingResolver";
10
- export { compileTimingAttrs, injectDurations, extractResolvedMedia, clampDurations, shouldClampMediaDuration, } from "./compiler/timingCompiler";
11
- export { lintHyperframeHtml } from "./lint/hyperframeLinter";
12
- export { rewriteAssetPaths, rewriteAssetPath, rewriteCssAssetUrls, } from "./compiler/rewriteSubCompPaths";
13
- export { CSS_URL_RE, isNonRelativeUrl, isPathInside } from "./compiler/assetPaths";
14
- export { queryByAttr } from "./utils/cssSelector";
15
- export { decodeUrlPathVariants } from "./utils/urlPath";
16
- export { parseAnimatedGifMetadata } from "./media/gif";
17
- export { HF_COLOR_GRADING_ATTR, HF_COLOR_GRADING_ADJUST_KEYS, HF_COLOR_GRADING_COLOR_SPACE, HF_COLOR_GRADING_PRESETS, isHfColorGradingActive, normalizeHfColorGrading, normalizeHfColorGradingWithVariables, resolveHfColorGradingVariables, serializeHfColorGrading, } from "./colorGrading";
4
+ export { generateBaseHtml, getStageStyles } from "./templates/base.js";
5
+ export { GSAP_CDN, BASE_STYLES, ELEMENT_BASE_STYLES, MEDIA_STYLES, TEXT_STYLES, ZOOM_CONTAINER_STYLES, } from "./templates/constants.js";
6
+ export { serializeGsapAnimations, getAnimationsForElementId, validateCompositionGsap, keyframesToGsapAnimations, gsapAnimationsToKeyframes, } from "./parsers/gsapSerialize.js";
7
+ export { parseHtml, updateElementInHtml, addElementToHtml, removeElementFromHtml, validateCompositionHtml, extractCompositionMetadata, } from "./parsers/htmlParser.js";
8
+ export { generateHyperframesHtml, generateGsapTimelineScript, generateHyperframesStyles, } from "./generators/hyperframes.js";
9
+ export { resolveTimings } from "./compiler/timingResolver.js";
10
+ export { compileTimingAttrs, injectDurations, extractResolvedMedia, clampDurations, shouldClampMediaDuration, } from "./compiler/timingCompiler.js";
11
+ export { lintHyperframeHtml } from "./lint/hyperframeLinter.js";
12
+ export { rewriteAssetPaths, rewriteAssetPath, rewriteCssAssetUrls, } from "./compiler/rewriteSubCompPaths.js";
13
+ export { CSS_URL_RE, isNonRelativeUrl, isPathInside } from "./compiler/assetPaths.js";
14
+ export { queryByAttr } from "./utils/cssSelector.js";
15
+ export { decodeUrlPathVariants } from "./utils/urlPath.js";
16
+ export { parseAnimatedGifMetadata } from "./media/gif.js";
17
+ export { HF_COLOR_GRADING_ATTR, HF_COLOR_GRADING_ADJUST_KEYS, HF_COLOR_GRADING_COLOR_SPACE, HF_COLOR_GRADING_PRESETS, isHfColorGradingActive, normalizeHfColorGrading, normalizeHfColorGradingWithVariables, resolveHfColorGradingVariables, serializeHfColorGrading, } from "./colorGrading.js";
18
18
  // Inline scripts
19
- export { HYPERFRAME_RUNTIME_ARTIFACTS, HYPERFRAME_RUNTIME_CONTRACT, loadHyperframeRuntimeSource, } from "./inline-scripts/hyperframe";
20
- export { HYPERFRAME_RUNTIME_GLOBALS, HYPERFRAME_BRIDGE_SOURCES, HYPERFRAME_CONTROL_ACTIONS, } from "./inline-scripts/runtimeContract";
21
- export { getHyperframeRuntimeScript } from "./generated/runtime-inline";
22
- export { buildHyperframesRuntimeScript, } from "./inline-scripts/hyperframesRuntime.engine";
23
- export { MEDIA_VISUAL_STYLE_PROPERTIES, copyMediaVisualStyles, quantizeTimeToFrame, } from "./inline-scripts/parityContract";
24
- export { redactTelemetryString } from "./telemetryRedaction";
25
- export { isSafePath, resolveWithinProject } from "./safePath";
26
- export { createGSAPFrameAdapter } from "./adapters/gsap";
19
+ export { HYPERFRAME_RUNTIME_ARTIFACTS, HYPERFRAME_RUNTIME_CONTRACT, loadHyperframeRuntimeSource, } from "./inline-scripts/hyperframe.js";
20
+ export { HYPERFRAME_RUNTIME_GLOBALS, HYPERFRAME_BRIDGE_SOURCES, HYPERFRAME_CONTROL_ACTIONS, } from "./inline-scripts/runtimeContract.js";
21
+ export { getHyperframeRuntimeScript } from "./generated/runtime-inline.js";
22
+ export { buildHyperframesRuntimeScript, } from "./inline-scripts/hyperframesRuntime.engine.js";
23
+ export { MEDIA_VISUAL_STYLE_PROPERTIES, copyMediaVisualStyles, quantizeTimeToFrame, } from "./inline-scripts/parityContract.js";
24
+ export { redactTelemetryString } from "./telemetryRedaction.js";
25
+ export { isSafePath, resolveWithinProject } from "./safePath.js";
26
+ export { createGSAPFrameAdapter } from "./adapters/gsap.js";
27
27
  // Text measurement
28
28
  export { fitTextFontSize } from "./text/index.js";
29
29
  // Runtime helpers (composition-side)
@@ -1,5 +1,5 @@
1
- import { buildHyperframesRuntimeScript } from "./hyperframesRuntime.engine";
2
- import { HYPERFRAME_BRIDGE_SOURCES, HYPERFRAME_RUNTIME_GLOBALS } from "./runtimeContract";
1
+ import { buildHyperframesRuntimeScript } from "./hyperframesRuntime.engine.js";
2
+ import { HYPERFRAME_BRIDGE_SOURCES, HYPERFRAME_RUNTIME_GLOBALS } from "./runtimeContract.js";
3
3
  export const HYPERFRAME_RUNTIME_ARTIFACTS = {
4
4
  iife: "hyperframe.runtime.iife.js",
5
5
  esm: "hyperframe.runtime.mjs",
@@ -1,4 +1,4 @@
1
- import { extractBlocks, extractOpenTags, findRootTag, collectCompositionIds, readAttr, STYLE_BLOCK_PATTERN, SCRIPT_BLOCK_PATTERN, } from "./utils";
1
+ import { extractBlocks, extractOpenTags, findRootTag, collectCompositionIds, readAttr, STYLE_BLOCK_PATTERN, SCRIPT_BLOCK_PATTERN, } from "./utils.js";
2
2
  export function buildLintContext(html, options = {}) {
3
3
  const rawSource = html || "";
4
4
  let source = rawSource;
@@ -1,14 +1,14 @@
1
- import { buildLintContext } from "./context";
2
- import { readAttr, truncateSnippet } from "./utils";
3
- import { coreRules } from "./rules/core";
4
- import { mediaRules } from "./rules/media";
5
- import { gsapRules } from "./rules/gsap";
6
- import { captionRules } from "./rules/captions";
7
- import { compositionRules } from "./rules/composition";
8
- import { adapterRules } from "./rules/adapters";
9
- import { textureRules } from "./rules/textures";
10
- import { fontRules } from "./rules/fonts";
11
- import { slideshowRules } from "./rules/slideshow";
1
+ import { buildLintContext } from "./context.js";
2
+ import { readAttr, truncateSnippet } from "./utils.js";
3
+ import { coreRules } from "./rules/core.js";
4
+ import { mediaRules } from "./rules/media.js";
5
+ import { gsapRules } from "./rules/gsap.js";
6
+ import { captionRules } from "./rules/captions.js";
7
+ import { compositionRules } from "./rules/composition.js";
8
+ import { adapterRules } from "./rules/adapters.js";
9
+ import { textureRules } from "./rules/textures.js";
10
+ import { fontRules } from "./rules/fonts.js";
11
+ import { slideshowRules } from "./rules/slideshow.js";
12
12
  const ALL_RULES = [
13
13
  ...coreRules,
14
14
  ...mediaRules,
@@ -1,2 +1,2 @@
1
- export { lintHyperframeHtml, lintMediaUrls } from "./hyperframeLinter";
1
+ export { lintHyperframeHtml, lintMediaUrls } from "./hyperframeLinter.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import { readAttr, extractScriptTextsAndSrcs } from "../utils";
1
+ import { readAttr, extractScriptTextsAndSrcs } from "../utils.js";
2
2
  export const adapterRules = [
3
3
  // missing_lottie_script
4
4
  ({ tags, scripts }) => {
@@ -1,5 +1,5 @@
1
- import { findHtmlTag, readAttr, readJsonAttr, stripJsComments, truncateSnippet } from "../utils";
2
- import { COMPOSITION_VARIABLE_TYPES } from "../../core.types";
1
+ import { findHtmlTag, readAttr, readJsonAttr, stripJsComments, truncateSnippet } from "../utils.js";
2
+ import { COMPOSITION_VARIABLE_TYPES } from "../../core.types.js";
3
3
  // Agent guidance thresholds: warning-only nudges for files/tracks that become hard
4
4
  // to inspect and revise reliably in a single composition.
5
5
  const MAX_COMPOSITION_LINES = 300;
@@ -1,5 +1,5 @@
1
1
  import postcss from "postcss";
2
- import { readAttr, truncateSnippet, stripJsComments, extractCompositionIdsFromCss, extractTimelineRegistryKeys, getInlineScriptSyntaxError, TIMELINE_REGISTRY_INIT_PATTERN, TIMELINE_REGISTRY_ASSIGN_PATTERN, INVALID_SCRIPT_CLOSE_PATTERN, } from "../utils";
2
+ import { readAttr, truncateSnippet, stripJsComments, extractCompositionIdsFromCss, extractTimelineRegistryKeys, getInlineScriptSyntaxError, TIMELINE_REGISTRY_INIT_PATTERN, TIMELINE_REGISTRY_ASSIGN_PATTERN, INVALID_SCRIPT_CLOSE_PATTERN, } from "../utils.js";
3
3
  function escapeRegExp(value) {
4
4
  return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
5
5
  }
@@ -1,5 +1,5 @@
1
- import { FONT_ALIAS_KEYS, resolveAliasDisplayName } from "../../fonts/aliases";
2
- import { isRegistrySourceFile, isRegistryInstalledFile } from "./composition";
1
+ import { FONT_ALIAS_KEYS, resolveAliasDisplayName } from "../../fonts/aliases.js";
2
+ import { isRegistrySourceFile, isRegistryInstalledFile } from "./composition.js";
3
3
  const GENERIC_FAMILIES = new Set([
4
4
  "serif",
5
5
  "sans-serif",
@@ -6,7 +6,7 @@ async function loadParseGsapScript() {
6
6
  const mod = await import("../../parsers/gsapParserAcorn.js");
7
7
  return mod.parseGsapScriptAcorn;
8
8
  }
9
- import { readAttr, truncateSnippet, stripJsComments, WINDOW_TIMELINE_ASSIGN_PATTERN, TIMELINE_REGISTRY_ASSIGN_PATTERN, } from "../utils";
9
+ import { readAttr, truncateSnippet, stripJsComments, WINDOW_TIMELINE_ASSIGN_PATTERN, TIMELINE_REGISTRY_ASSIGN_PATTERN, } from "../utils.js";
10
10
  const SCENE_BOUNDARY_EPSILON_SECONDS = 0.05;
11
11
  // ── GSAP parsing utilities ─────────────────────────────────────────────────
12
12
  function countClassUsage(tags) {
@@ -1,4 +1,4 @@
1
- import { readAttr, truncateSnippet, isMediaTag } from "../utils";
1
+ import { readAttr, truncateSnippet, isMediaTag } from "../utils.js";
2
2
  function escapeRegExp(value) {
3
3
  return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
4
4
  }
@@ -1,6 +1,6 @@
1
- import { readAttr } from "../utils";
2
- import { parseSlideshowManifest, resolveSlideshow } from "../../slideshow/parseSlideshow";
3
- import { isSceneLikeCompositionId } from "../../slideshow/sceneId";
1
+ import { readAttr } from "../utils.js";
2
+ import { parseSlideshowManifest, resolveSlideshow } from "../../slideshow/parseSlideshow.js";
3
+ import { isSceneLikeCompositionId } from "../../slideshow/sceneId.js";
4
4
  function parseTiming(raw) {
5
5
  const startStr = readAttr(raw, "data-start");
6
6
  if (startStr === null)
@@ -1,5 +1,5 @@
1
1
  import postcss from "postcss";
2
- import { readAttr, truncateSnippet } from "../utils";
2
+ import { readAttr, truncateSnippet } from "../utils.js";
3
3
  const TEXTURE_BASE_CLASS = "hf-texture-text";
4
4
  const TEXTURE_CLASS_PREFIX = "hf-texture-";
5
5
  function classNames(tag) {
@@ -10,11 +10,11 @@
10
10
  */
11
11
  import * as recast from "recast";
12
12
  import { parse as babelParse } from "@babel/parser";
13
- import { serializeValue as valueToCode, safeJsKey as safeKey, resolveConversionProps, } from "./gsapSerialize";
14
- export { serializeGsapAnimations, getAnimationsForElementId, validateCompositionGsap, keyframesToGsapAnimations, gsapAnimationsToKeyframes, SUPPORTED_PROPS, SUPPORTED_EASES, } from "./gsapSerialize";
15
- export { PROPERTY_GROUPS, classifyPropertyGroup, classifyTweenPropertyGroup, } from "./gsapConstants";
16
- import { classifyPropertyGroup, classifyTweenPropertyGroup } from "./gsapConstants";
17
- export { generateSpringEaseData, SPRING_PRESETS } from "./springEase";
13
+ import { serializeValue as valueToCode, safeJsKey as safeKey, resolveConversionProps, } from "./gsapSerialize.js";
14
+ export { serializeGsapAnimations, getAnimationsForElementId, validateCompositionGsap, keyframesToGsapAnimations, gsapAnimationsToKeyframes, SUPPORTED_PROPS, SUPPORTED_EASES, } from "./gsapSerialize.js";
15
+ export { PROPERTY_GROUPS, classifyPropertyGroup, classifyTweenPropertyGroup, } from "./gsapConstants.js";
16
+ import { classifyPropertyGroup, classifyTweenPropertyGroup } from "./gsapConstants.js";
17
+ export { generateSpringEaseData, SPRING_PRESETS } from "./springEase.js";
18
18
  const GSAP_METHODS = new Set(["set", "to", "from", "fromTo"]);
19
19
  function parseScript(script) {
20
20
  return recast.parse(script, {
@@ -42,7 +42,7 @@ export function buildArcPath(coords, curviness, autoRotate, isCubic) {
42
42
  }
43
43
  return { arcPath: { enabled: true, autoRotate, segments }, waypoints };
44
44
  }
45
- export { SUPPORTED_PROPS, SUPPORTED_EASES } from "./gsapConstants";
45
+ export { SUPPORTED_PROPS, SUPPORTED_EASES } from "./gsapConstants.js";
46
46
  // ── Serialization ───────────────────────────────────────────────────────────
47
47
  export function serializeGsapAnimations(animations, timelineVar = "tl", options) {
48
48
  const sorted = [...animations].sort((a, b) => {
@@ -1,7 +1,7 @@
1
- import { validateCompositionGsap } from "./gsapSerialize";
1
+ import { validateCompositionGsap } from "./gsapSerialize.js";
2
2
  import { ensureHfIds } from "./hfIds.js";
3
3
  import { parseGsapScriptAcornForWrite } from "./gsapParserAcorn.js";
4
- import { queryByAttr } from "../utils/cssSelector";
4
+ import { queryByAttr } from "../utils/cssSelector.js";
5
5
  import { removeAnimationFromScript } from "./gsapWriterAcorn.js";
6
6
  const MEDIA_TYPES = new Set(["video", "image", "audio"]);
7
7
  function getElementType(el) {
@@ -4,7 +4,7 @@ export type RuntimeJson = string | number | boolean | null | RuntimeJson[] | {
4
4
  };
5
5
  import type { HyperframeControlAction } from "../inline-scripts/runtimeContract.js";
6
6
  import type { HyperframePickerElementInfo } from "../inline-scripts/pickerApi.js";
7
- export type RuntimeBridgeControlAction = HyperframeControlAction | "tick" | "set-volume" | "set-media-output-muted" | "stop-media" | "flash-elements";
7
+ export type RuntimeBridgeControlAction = HyperframeControlAction | "tick" | "set-volume" | "set-media-output-muted" | "set-native-media-sync-disabled" | "set-web-audio-media-disabled" | "stop-media" | "flash-elements";
8
8
  export type RuntimeBridgeControlMessage = {
9
9
  source: "hf-parent";
10
10
  type: "control";
@@ -12,6 +12,7 @@ export type RuntimeBridgeControlMessage = {
12
12
  frame?: number;
13
13
  muted?: boolean;
14
14
  volume?: number;
15
+ disabled?: boolean;
15
16
  playbackRate?: number;
16
17
  target?: HfColorGradingTarget | string | null;
17
18
  grading?: RuntimeJson;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/runtime/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/runtime/types.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export * from "./slideshow.types";
2
- export * from "./parseSlideshow";
1
+ export * from "./slideshow.types.js";
2
+ export * from "./parseSlideshow.js";
3
3
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  import { parseHTML } from "linkedom";
2
2
  import postcss from "postcss";
3
3
  import selectorParser from "postcss-selector-parser";
4
- import { isAllowedHtmlAttribute, isSafeAttributeValue } from "../../utils/htmlAttrSafety";
4
+ import { isAllowedHtmlAttribute, isSafeAttributeValue } from "../../utils/htmlAttrSafety.js";
5
5
  function parseSourceDocument(source) {
6
6
  const hasDocumentShell = /<!doctype|<html[\s>]/i.test(source);
7
7
  if (hasDocumentShell) {
@@ -1,5 +1,5 @@
1
1
  import { closeSync, constants, fstatSync, openSync, readSync } from "node:fs";
2
- import { collectFontFileEntries, fontDirectories, getSystemProfilerFamilies, locateSystemFont, SYSTEM_FONT_SIZE_LIMIT, } from "../../fonts/systemFontLocator";
2
+ import { collectFontFileEntries, fontDirectories, getSystemProfilerFamilies, locateSystemFont, SYSTEM_FONT_SIZE_LIMIT, } from "../../fonts/systemFontLocator.js";
3
3
  const MAX_FONT_RESULTS = 2000;
4
4
  const GOOGLE_FONTS_METADATA_URL = "https://fonts.google.com/metadata/fonts";
5
5
  const GOOGLE_FONTS_FETCH_TIMEOUT_MS = 3000;
@@ -1,4 +1,4 @@
1
- import { CANVAS_DIMENSIONS } from "../core.types";
1
+ import { CANVAS_DIMENSIONS } from "../core.types.js";
2
2
  export function generateBaseHtml(resolution = "portrait") {
3
3
  return `<!DOCTYPE html>
4
4
  <html data-resolution="${resolution}">
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hyperframes/core",
3
- "version": "0.6.118",
3
+ "version": "0.6.120",
4
4
  "description": "",
5
5
  "repository": {
6
6
  "type": "git",
@@ -170,7 +170,7 @@
170
170
  "linkedom": "^0.18.12"
171
171
  },
172
172
  "scripts": {
173
- "build": "bun run build:hyperframes-runtime && tsc",
173
+ "build": "bun run build:hyperframes-runtime && tsc && tsx scripts/rewrite-esm-extensions.ts",
174
174
  "test": "vitest run",
175
175
  "test:watch": "vitest",
176
176
  "test:coverage": "vitest run --coverage",