mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-01 19:42:03 +00:00
* feat(core,studio): the character presets pitch shift unlocks Chipmunk, Giant, and Monster ship as presets on the pitchshift worklet P1 added: Chipmunk pitches up and adds sparkle, Giant pitches down with weight and a compressor to hold the extra low end together, Monster pitches down further with saturation growl and a close, tight reverb. Every param verified against the live effect registry rather than sketched — the compressor/reverb/saturate/shelf keys all match exactly. Each gets its own title treatment (font, size, tracking, hue) so the FX rack's per-preset styling coverage and hue-distance/background-uniqueness tests extend cleanly to the three new entries, and complaint-line copy in the non-voice vocabulary the audit test enforces (no speech words — "Giant" over CapCut's "Deep Voice", as the design doc records). Updates plans/audio-fx-presets.md's two limits paragraphs to record that pitch shift landed and this half of the character list now ships; Robot and Alien stay out of scope (ring modulation, still unbuilt). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * feat(core): the audio group model — element, membership, helpers Introduces <hf-audio-group> and data-audio-group as the group model B2–B7 and C1 build on: a non-rendering group element carries a label and (later) an FX chain, membership lives on the member's own data-audio-group attribute rather than DOM nesting, so a track removed from the document simply drops out of the group on the next resolve — nothing dangles. Groups do not nest: data-audio-group on the group element itself is ignored. A group with members but no <hf-audio-group> element still resolves, label falling back to the id, so hand-authored HTML degrades gracefully. Audio only in v1 — video members are ignored. Parse-only: nothing routes or sums audio yet (B3/B4). Adds the audio-groups canary at percentage: 0 gating the future Studio UI; the element and attribute parse and play regardless of enrollment. Verified rather than assumed per this plan's standing rule: the timeline's clip-collection selector ([data-start], [data-track-index], [data-composition-id], video, audio, img) already excludes the group element with zero changes, and no lint rule flags unknown elements or data-* attributes, so neither needed touching — confirmed by grep and by running `hyperframes lint` against a fixture containing the element (0 findings referencing it). The step doc's suggested display:none injection point (an existing base stylesheet in the runtime) does not exist in this codebase; skipped rather than inventing new infrastructure, since an empty, childless custom element already renders as a zero-size inline box with no visible output — the same reasoning the lint check above confirms empirically. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
391 lines
14 KiB
JSON
391 lines
14 KiB
JSON
{
|
|
"package": "@hyperframes/core",
|
|
"localNodeRuntime": true,
|
|
"subpaths": {
|
|
".": {
|
|
"source": "./src/index.ts",
|
|
"runtime": "./dist/index.js",
|
|
"types": "./dist/index.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./package.json": {
|
|
"source": "./package.json",
|
|
"runtime": "./package.json",
|
|
"types": null,
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./canary": {
|
|
"source": "./src/canary.ts",
|
|
"runtime": "./dist/canary.js",
|
|
"types": "./dist/canary.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./canary-registry": {
|
|
"source": "./src/canaryRegistry.ts",
|
|
"runtime": "./dist/canaryRegistry.js",
|
|
"types": "./dist/canaryRegistry.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./beats": {
|
|
"source": "./src/beats/index.ts",
|
|
"runtime": "./dist/beats/index.js",
|
|
"types": "./dist/beats/index.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./html-attr-safety": {
|
|
"source": "./src/utils/htmlAttrSafety.ts",
|
|
"runtime": "./dist/utils/htmlAttrSafety.js",
|
|
"types": "./dist/utils/htmlAttrSafety.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./rich-text-sanitize": {
|
|
"source": "./src/utils/richTextSanitize.ts",
|
|
"runtime": "./dist/utils/richTextSanitize.js",
|
|
"types": "./dist/utils/richTextSanitize.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./composition-contract": {
|
|
"source": "./src/compositionContract.ts",
|
|
"runtime": "./dist/compositionContract.js",
|
|
"types": "./dist/compositionContract.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./editing": {
|
|
"source": "./src/editing/affordances.ts",
|
|
"runtime": "./dist/editing/affordances.js",
|
|
"types": "./dist/editing/affordances.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./editing/draft-markers": {
|
|
"source": "./src/editing/draftMarkers.ts",
|
|
"runtime": "./dist/editing/draftMarkers.js",
|
|
"types": "./dist/editing/draftMarkers.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./variables": {
|
|
"source": "./src/variables.ts",
|
|
"runtime": "./dist/variables.js",
|
|
"types": "./dist/variables.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./slideshow": {
|
|
"source": "./src/slideshow/index.ts",
|
|
"runtime": "./dist/slideshow/index.js",
|
|
"types": "./dist/slideshow/index.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./generators": {
|
|
"source": "./src/generators/hyperframes.ts",
|
|
"runtime": "./dist/generators/hyperframes.js",
|
|
"types": "./dist/generators/hyperframes.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./lint": {
|
|
"source": "./src/lint/index.ts",
|
|
"runtime": "./dist/lint/index.js",
|
|
"types": "./dist/lint/index.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./compiler": {
|
|
"source": "./src/compiler/index.ts",
|
|
"runtime": "./dist/compiler/index.js",
|
|
"types": "./dist/compiler/index.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./audio-fx": {
|
|
"source": "./src/audioFx.ts",
|
|
"runtime": "./dist/audioFx.js",
|
|
"types": "./dist/audioFx.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-fx-copy": {
|
|
"source": "./src/audioFxCopy.ts",
|
|
"runtime": "./dist/audioFxCopy.js",
|
|
"types": "./dist/audioFxCopy.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-fx-profiles": {
|
|
"source": "./src/audioFxProfiles.ts",
|
|
"runtime": "./dist/audioFxProfiles.js",
|
|
"types": "./dist/audioFxProfiles.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-fx-jobs": {
|
|
"source": "./src/audioFxJobs.ts",
|
|
"runtime": "./dist/audioFxJobs.js",
|
|
"types": "./dist/audioFxJobs.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-fx-eq": {
|
|
"source": "./src/audioFxEq.ts",
|
|
"runtime": "./dist/audioFxEq.js",
|
|
"types": "./dist/audioFxEq.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-leveller": {
|
|
"source": "./src/audioLeveller.ts",
|
|
"runtime": "./dist/audioLeveller.js",
|
|
"types": "./dist/audioLeveller.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-fx-presets": {
|
|
"source": "./src/audioFxPresets.ts",
|
|
"runtime": "./dist/audioFxPresets.js",
|
|
"types": "./dist/audioFxPresets.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-fx-tail": {
|
|
"source": "./src/audio/audioFxTail.ts",
|
|
"runtime": "./dist/audio/audioFxTail.js",
|
|
"types": "./dist/audio/audioFxTail.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-fx-runtime": {
|
|
"source": "./src/generated/audio-fx-runtime-inline.ts",
|
|
"runtime": "./dist/generated/audio-fx-runtime-inline.js",
|
|
"types": "./dist/generated/audio-fx-runtime-inline.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./audio-carve": {
|
|
"source": "./src/audioCarve.ts",
|
|
"runtime": "./dist/audioCarve.js",
|
|
"types": "./dist/audioCarve.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-groups": {
|
|
"source": "./src/audioGroups.ts",
|
|
"runtime": "./dist/audioGroups.js",
|
|
"types": "./dist/audioGroups.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-automation": {
|
|
"source": "./src/audioAutomation.ts",
|
|
"runtime": "./dist/audioAutomation.js",
|
|
"types": "./dist/audioAutomation.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./audio-gain": {
|
|
"source": "./src/audioGain.ts",
|
|
"runtime": "./dist/audioGain.js",
|
|
"types": "./dist/audioGain.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./color-grading": {
|
|
"source": "./src/colorGrading.ts",
|
|
"runtime": "./dist/colorGrading.js",
|
|
"types": "./dist/colorGrading.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./color-luts": {
|
|
"source": "./src/colorLuts.ts",
|
|
"runtime": "./dist/colorLuts.js",
|
|
"types": "./dist/colorLuts.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./media-grade-analyzer": {
|
|
"source": "./src/mediaGradeAnalyzer.ts",
|
|
"runtime": "./dist/mediaGradeAnalyzer.js",
|
|
"types": "./dist/mediaGradeAnalyzer.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./storyboard": {
|
|
"source": "./src/storyboard/index.ts",
|
|
"runtime": "./dist/storyboard/index.js",
|
|
"types": "./dist/storyboard/index.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./runtime": {
|
|
"source": "./dist/hyperframe.runtime.iife.js",
|
|
"runtime": "./dist/hyperframe.runtime.iife.js",
|
|
"types": null,
|
|
"environments": ["browser"]
|
|
},
|
|
"./runtime/clipTree": {
|
|
"source": "./src/runtime/clipTree.ts",
|
|
"runtime": "./dist/runtime/clipTree.js",
|
|
"types": "./dist/runtime/clipTree.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./runtime/custom-ease": {
|
|
"source": "./src/runtime/customEase.ts",
|
|
"runtime": "./dist/runtime/customEase.js",
|
|
"types": "./dist/runtime/customEase.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./runtime/start-expression": {
|
|
"source": "./src/runtime/startExpression.ts",
|
|
"runtime": "./dist/runtime/startExpression.js",
|
|
"types": "./dist/runtime/startExpression.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./runtime/start-resolver": {
|
|
"source": "./src/runtime/startResolver.ts",
|
|
"runtime": "./dist/runtime/startResolver.js",
|
|
"types": "./dist/runtime/startResolver.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./runtime/protocol": {
|
|
"source": "./src/runtime/protocol.ts",
|
|
"runtime": "./dist/runtime/protocol.js",
|
|
"types": "./dist/runtime/protocol.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./runtime/stacking-context": {
|
|
"source": "./src/runtime/stackingContext.ts",
|
|
"runtime": "./dist/runtime/stackingContext.js",
|
|
"types": "./dist/runtime/stackingContext.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./compiler/html-document": {
|
|
"source": "./src/compiler/htmlDocument.ts",
|
|
"runtime": "./dist/compiler/htmlDocument.js",
|
|
"types": "./dist/compiler/htmlDocument.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./runtime/position-edits": {
|
|
"source": "./src/runtime/positionEdits.ts",
|
|
"runtime": "./dist/runtime/positionEdits.js",
|
|
"types": "./dist/runtime/positionEdits.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./runtime/position-edits-render": {
|
|
"source": "./src/generated/position-edits-render-inline.ts",
|
|
"runtime": "./dist/generated/position-edits-render-inline.js",
|
|
"types": "./dist/generated/position-edits-render-inline.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./runtime/lottie-readiness": {
|
|
"source": "./src/lottieReadiness.ts",
|
|
"runtime": "./dist/lottieReadiness.js",
|
|
"types": "./dist/lottieReadiness.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./studio-api": {
|
|
"source": "./src/studio-api/index.ts",
|
|
"runtime": "./dist/studio-api/index.js",
|
|
"types": "./dist/studio-api/index.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./studio-api/screenshot-clip": {
|
|
"source": "./src/studio-api/helpers/screenshotClip.ts",
|
|
"runtime": "./dist/studio-api/helpers/screenshotClip.js",
|
|
"types": "./dist/studio-api/helpers/screenshotClip.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./studio-api/manual-edits-render-script": {
|
|
"source": "./src/studio-api/helpers/manualEditsRenderScript.ts",
|
|
"runtime": "./dist/studio-api/helpers/manualEditsRenderScript.js",
|
|
"types": "./dist/studio-api/helpers/manualEditsRenderScript.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./studio-api/studio-motion-render-script": {
|
|
"source": "./src/studio-api/helpers/studioMotionRenderScript.ts",
|
|
"runtime": "./dist/studio-api/helpers/studioMotionRenderScript.js",
|
|
"types": "./dist/studio-api/helpers/studioMotionRenderScript.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./studio-api/draft-markers": {
|
|
"source": "./src/studio-api/helpers/draftMarkers.ts",
|
|
"runtime": "./dist/studio-api/helpers/draftMarkers.js",
|
|
"types": "./dist/studio-api/helpers/draftMarkers.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./studio-api/finite-mutation": {
|
|
"source": "./src/studio-api/helpers/finiteMutation.ts",
|
|
"runtime": "./dist/studio-api/helpers/finiteMutation.js",
|
|
"types": "./dist/studio-api/helpers/finiteMutation.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./text": {
|
|
"source": "./src/text/index.ts",
|
|
"runtime": "./dist/text/index.js",
|
|
"types": "./dist/text/index.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./registry": {
|
|
"source": "./src/registry/index.ts",
|
|
"runtime": "./dist/registry/index.js",
|
|
"types": "./dist/registry/index.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./media-volume-envelope": {
|
|
"source": "./src/runtime/mediaVolumeEnvelope.ts",
|
|
"runtime": "./dist/runtime/mediaVolumeEnvelope.js",
|
|
"types": "./dist/runtime/mediaVolumeEnvelope.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./hf-ids": {
|
|
"source": "./src/parsers/hfIds.ts",
|
|
"runtime": "./dist/parsers/hfIds.js",
|
|
"types": "./dist/parsers/hfIds.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./gsap-parser": {
|
|
"source": "./src/parsers/gsapParserExports.ts",
|
|
"runtime": "./dist/parsers/gsapParserExports.js",
|
|
"types": "./dist/parsers/gsapParserExports.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./gsap-parser-acorn": {
|
|
"source": "./src/parsers/gsapParserAcorn.ts",
|
|
"runtime": "./dist/parsers/gsapParserAcorn.js",
|
|
"types": "./dist/parsers/gsapParserAcorn.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./gsap-writer-acorn": {
|
|
"source": "./src/parsers/gsapWriterAcorn.ts",
|
|
"runtime": "./dist/parsers/gsapWriterAcorn.js",
|
|
"types": "./dist/parsers/gsapWriterAcorn.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./gsap-constants": {
|
|
"source": "./src/parsers/gsapConstants.ts",
|
|
"runtime": "./dist/parsers/gsapConstants.js",
|
|
"types": "./dist/parsers/gsapConstants.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./spring-ease": {
|
|
"source": "./src/parsers/springEase.ts",
|
|
"runtime": "./dist/parsers/springEase.js",
|
|
"types": "./dist/parsers/springEase.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./wiggle-ease": {
|
|
"source": "./src/runtime/wiggleEase.ts",
|
|
"runtime": "./dist/runtime/wiggleEase.js",
|
|
"types": "./dist/runtime/wiggleEase.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./fonts/aliases": {
|
|
"source": "./src/fonts/aliases.ts",
|
|
"runtime": "./dist/fonts/aliases.js",
|
|
"types": "./dist/fonts/aliases.d.ts",
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./fonts/system-locator": {
|
|
"source": "./src/fonts/systemFontLocator.ts",
|
|
"runtime": "./dist/fonts/systemFontLocator.js",
|
|
"types": "./dist/fonts/systemFontLocator.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./figma": {
|
|
"source": "./src/figma/index.ts",
|
|
"runtime": "./dist/figma/index.js",
|
|
"types": "./dist/figma/index.d.ts",
|
|
"environments": ["bun", "node"]
|
|
},
|
|
"./schemas/registry.json": {
|
|
"source": "./schemas/registry.json",
|
|
"runtime": "./schemas/registry.json",
|
|
"types": null,
|
|
"environments": ["browser", "bun", "node"]
|
|
},
|
|
"./schemas/registry-item.json": {
|
|
"source": "./schemas/registry-item.json",
|
|
"runtime": "./schemas/registry-item.json",
|
|
"types": null,
|
|
"environments": ["browser", "bun", "node"]
|
|
}
|
|
}
|
|
}
|