mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-03 04:38:33 +00:00
## Summary - `cheerio` pulls `encoding-sniffer` → `whatwg-encoding@3.1.1` (deprecated), causing a warning on every `npm install -g hyperframes` - `linkedom` was already bundled into the CLI via tsup `noExternal` and has zero deprecated transitive deps - Rewrote `htmlBundler.ts` and `subComposition.ts` to use standard DOM APIs via `linkedom` - Added a `parseHTMLContent` helper that wraps HTML fragments in a full document structure (required for `linkedom` to populate `document.body`) - Removed `cheerio` from `cli` dependencies and tsup `external` list - Replaced `cheerio` with `linkedom` in `core` `optionalDependencies` ## Test plan - [x] All 411 tests pass (`bun run test` in `packages/core`) - [x] Full monorepo build succeeds (`bun run build`) - [x] TypeScript typecheck passes
25 lines
667 B
TypeScript
25 lines
667 B
TypeScript
// Timing compiler (browser-safe)
|
|
export {
|
|
compileTimingAttrs,
|
|
injectDurations,
|
|
extractResolvedMedia,
|
|
clampDurations,
|
|
type UnresolvedElement,
|
|
type ResolvedDuration,
|
|
type ResolvedMediaElement,
|
|
type CompilationResult,
|
|
} from "./timingCompiler";
|
|
|
|
// HTML compiler (Node.js — requires fs)
|
|
export { compileHtml, type MediaDurationProber } from "./htmlCompiler";
|
|
|
|
// HTML bundler (Node.js — requires fs, linkedom, esbuild)
|
|
export { bundleToSingleHtml, type BundleOptions } from "./htmlBundler";
|
|
|
|
// Static guard
|
|
export {
|
|
validateHyperframeHtmlContract,
|
|
type HyperframeStaticFailureReason,
|
|
type HyperframeStaticGuardResult,
|
|
} from "./staticGuard";
|