@hypit/hypit 0.0.1 → 0.1.0
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/LICENSE +26 -0
- package/README.md +203 -0
- package/README.zh-CN.md +195 -0
- package/bin/hypit.mjs +46 -0
- package/dist/public/artifact.d.ts +75 -0
- package/dist/public/author-kit.d.ts +559 -0
- package/dist/public/browser-capture.d.ts +56 -0
- package/dist/public/caption.d.ts +751 -0
- package/dist/public/composition.d.ts +672 -0
- package/dist/public/endpoint-kit.d.ts +366 -0
- package/dist/public/generation.d.ts +591 -0
- package/dist/public/hyperframes.d.ts +774 -0
- package/dist/public/media.d.ts +708 -0
- package/dist/public/model-kit.d.ts +523 -0
- package/dist/public/narrative.d.ts +315 -0
- package/dist/public/program-space.d.ts +193 -0
- package/dist/public/runtime-kit.d.ts +427 -0
- package/dist/public/semantic-track.d.ts +418 -0
- package/dist/public/spatial.d.ts +1193 -0
- package/dist/public/speech.d.ts +391 -0
- package/dist/public/studio-adapter.d.ts +686 -0
- package/dist/public/svs.d.ts +311 -0
- package/dist/public/temporal-markup.d.ts +343 -0
- package/dist/public/temporal.d.ts +497 -0
- package/dist/public/text.d.ts +817 -0
- package/dist/public/visual-ir.d.ts +98 -0
- package/docs/public/hypit-logo-dark.svg +36 -0
- package/docs/public/hypit-logo-light.svg +38 -0
- package/examples/README.md +24 -0
- package/examples/minimal-author-package/README.md +18 -0
- package/examples/minimal-author-package/packages/example-component/README.md +44 -0
- package/examples/minimal-author-package/packages/example-component/package.json +27 -0
- package/examples/minimal-author-package/packages/example-component/preview/Box.png +0 -0
- package/examples/minimal-author-package/packages/example-component/preview/build.svrun +6 -0
- package/examples/minimal-author-package/packages/example-component/preview/preview.svml +47 -0
- package/examples/minimal-author-package/packages/example-component/preview/recipes.svs +8 -0
- package/examples/minimal-author-package/packages/example-component/src/activation.ts +10 -0
- package/examples/minimal-author-package/packages/example-component/src/component.ts +44 -0
- package/examples/minimal-author-package/packages/example-component/src/fragment.ts +32 -0
- package/examples/minimal-author-package/packages/example-component/src/index.ts +6 -0
- package/examples/minimal-author-package/packages/example-component/src/manifest.ts +82 -0
- package/examples/minimal-author-package/packages/example-component/src/style.ts +13 -0
- package/examples/minimal-author-package/packages/example-component/src/surface.ts +41 -0
- package/examples/minimal-author-package/packages/example-component/src/temporal.ts +6 -0
- package/examples/minimal-author-package/packages/example-component/tsconfig.json +18 -0
- package/examples/semantic-composition/README.md +35 -0
- package/examples/semantic-composition/chat.svml +25 -0
- package/examples/semantic-composition/chat.svrun +6 -0
- package/examples/semantic-composition/chat.svs +4 -0
- package/examples/semantic-composition/hypit.runtime.json +8 -0
- package/examples/semantic-composition/packages/chat-scene/README.md +29 -0
- package/examples/semantic-composition/packages/chat-scene/package.json +11 -0
- package/examples/semantic-composition/packages/chat-scene/src/activation.ts +112 -0
- package/examples/semantic-composition/packages/chat-scene/src/render.ts +64 -0
- package/examples/semantic-composition/packages/chat-scene/tsconfig.json +18 -0
- package/examples/semantic-composition/packages/responsive-explainer/README.md +45 -0
- package/examples/semantic-composition/packages/responsive-explainer/package.json +11 -0
- package/examples/semantic-composition/packages/responsive-explainer/src/activation.ts +90 -0
- package/examples/semantic-composition/packages/responsive-explainer/src/render.ts +68 -0
- package/examples/semantic-composition/packages/responsive-explainer/tsconfig.json +18 -0
- package/package.json +259 -7
- package/packages/artifact/README.md +10 -0
- package/packages/artifact/package.json +16 -0
- package/packages/artifact/src/activation.ts +8 -0
- package/packages/artifact/src/index.ts +24 -0
- package/packages/audio-track/README.md +43 -0
- package/packages/audio-track/package.json +36 -0
- package/packages/audio-track/src/activation.ts +20 -0
- package/packages/audio-track/src/component.ts +40 -0
- package/packages/audio-track/src/fragment.ts +63 -0
- package/packages/audio-track/src/index.ts +7 -0
- package/packages/audio-track/src/manifest.ts +151 -0
- package/packages/audio-track/src/program.ts +254 -0
- package/packages/audio-track/src/surface.ts +187 -0
- package/packages/audio-track/src/types.ts +62 -0
- package/packages/audio-track-studio/README.md +3 -0
- package/packages/audio-track-studio/package.json +14 -0
- package/packages/audio-track-studio/src/activation.ts +7 -0
- package/packages/audio-track-studio/src/index.ts +72 -0
- package/packages/author-kit/README.md +31 -0
- package/packages/author-kit/package.json +16 -0
- package/packages/author-kit/src/index.ts +59 -0
- package/packages/background-removal/README.md +29 -0
- package/packages/background-removal/package.json +16 -0
- package/packages/background-removal/src/activation.ts +18 -0
- package/packages/background-removal/src/component.ts +32 -0
- package/packages/background-removal/src/fragment.ts +18 -0
- package/packages/background-removal/src/index.ts +6 -0
- package/packages/background-removal/src/manifest.ts +45 -0
- package/packages/background-removal/src/program.ts +19 -0
- package/packages/background-removal/src/surface.ts +27 -0
- package/packages/background-removal/src/types.ts +5 -0
- package/packages/browser-capture/README.md +82 -0
- package/packages/browser-capture/package.json +15 -0
- package/packages/browser-capture/src/browser.ts +19 -0
- package/packages/browser-capture/src/index.ts +198 -0
- package/packages/build-result/package.json +13 -0
- package/packages/build-result/src/decode.ts +286 -0
- package/packages/build-result/src/index.ts +25 -0
- package/packages/build-result/src/store.ts +505 -0
- package/packages/build-result/src/types.ts +354 -0
- package/packages/build-result/src/writer.ts +184 -0
- package/packages/build-result-fs/README.md +29 -0
- package/packages/build-result-fs/package.json +17 -0
- package/packages/build-result-fs/src/activation.ts +62 -0
- package/packages/build-result-fs/src/index.ts +1 -0
- package/packages/build-result-kit/README.md +10 -0
- package/packages/build-result-kit/package.json +15 -0
- package/packages/build-result-kit/src/index.ts +144 -0
- package/packages/build-result-s3/README.md +49 -0
- package/packages/build-result-s3/package.json +19 -0
- package/packages/build-result-s3/src/activation.ts +71 -0
- package/packages/build-result-s3/src/client.ts +254 -0
- package/packages/build-result-s3/src/index.ts +4 -0
- package/packages/build-result-s3/src/repository.ts +361 -0
- package/packages/caption/README.md +77 -0
- package/packages/caption/package.json +28 -0
- package/packages/caption/src/activation.ts +17 -0
- package/packages/caption/src/component.ts +38 -0
- package/packages/caption/src/display.ts +111 -0
- package/packages/caption/src/error.ts +9 -0
- package/packages/caption/src/fragment.ts +26 -0
- package/packages/caption/src/index.ts +33 -0
- package/packages/caption/src/manifest.ts +97 -0
- package/packages/caption/src/style.ts +170 -0
- package/packages/caption/src/surface.ts +96 -0
- package/packages/caption/src/temporalize.ts +124 -0
- package/packages/caption/src/types.ts +71 -0
- package/packages/caption-fine/README.md +108 -0
- package/packages/caption-fine/package.json +30 -0
- package/packages/caption-fine/preview/Track.png +0 -0
- package/packages/caption-fine/src/activation.ts +32 -0
- package/packages/caption-fine/src/component.ts +58 -0
- package/packages/caption-fine/src/fragment.ts +112 -0
- package/packages/caption-fine/src/index.ts +19 -0
- package/packages/caption-fine/src/manifest.ts +383 -0
- package/packages/caption-fine/src/recipe.ts +120 -0
- package/packages/caption-fine/src/render.ts +1133 -0
- package/packages/caption-fine/src/schedule.ts +126 -0
- package/packages/caption-fine/src/spacing.ts +69 -0
- package/packages/caption-fine/src/style.ts +370 -0
- package/packages/caption-fine/src/surface.ts +152 -0
- package/packages/caption-fine/src/types.ts +191 -0
- package/packages/caption-fine-studio/README.md +3 -0
- package/packages/caption-fine-studio/package.json +15 -0
- package/packages/caption-fine-studio/src/activation.ts +7 -0
- package/packages/caption-fine-studio/src/index.ts +163 -0
- package/packages/cli/README.md +51 -0
- package/packages/cli/package.json +33 -0
- package/packages/cli/src/arguments.ts +605 -0
- package/packages/cli/src/build-planning.ts +460 -0
- package/packages/cli/src/command.ts +202 -0
- package/packages/cli/src/commands/environment.ts +391 -0
- package/packages/cli/src/commands/execution.ts +321 -0
- package/packages/cli/src/commands/results.ts +187 -0
- package/packages/cli/src/commands/types.ts +9 -0
- package/packages/cli/src/distribution.ts +74 -0
- package/packages/cli/src/index.ts +30 -0
- package/packages/cli/src/machine-view.ts +28 -0
- package/packages/cli/src/main.ts +654 -0
- package/packages/cli/src/oauth.ts +228 -0
- package/packages/cli/src/observation.ts +203 -0
- package/packages/cli/src/output.ts +1007 -0
- package/packages/cli/src/paths.ts +7 -0
- package/packages/cli/src/project-context.ts +38 -0
- package/packages/cli/src/reachability.ts +91 -0
- package/packages/cli/src/result-export.ts +148 -0
- package/packages/cli/src/result-query.ts +46 -0
- package/packages/cli/src/run-file.ts +186 -0
- package/packages/cli/src/runtime-port.ts +13 -0
- package/packages/cli/src/runtime-selection.ts +94 -0
- package/packages/cli/src/runtime-view.ts +15 -0
- package/packages/cli/src/source-discovery.ts +150 -0
- package/packages/cli/src/source-packages.ts +91 -0
- package/packages/cli/src/view.ts +228 -0
- package/packages/comment-sticker/README.md +41 -0
- package/packages/comment-sticker/package.json +29 -0
- package/packages/comment-sticker/preview/Track.png +0 -0
- package/packages/comment-sticker/src/activation.ts +32 -0
- package/packages/comment-sticker/src/author.ts +148 -0
- package/packages/comment-sticker/src/component.ts +97 -0
- package/packages/comment-sticker/src/fragment.ts +124 -0
- package/packages/comment-sticker/src/index.ts +8 -0
- package/packages/comment-sticker/src/manifest.ts +373 -0
- package/packages/comment-sticker/src/program.ts +610 -0
- package/packages/comment-sticker/src/surface.ts +172 -0
- package/packages/comment-sticker/src/types.ts +109 -0
- package/packages/comment-sticker-studio/README.md +3 -0
- package/packages/comment-sticker-studio/package.json +14 -0
- package/packages/comment-sticker-studio/src/activation.ts +7 -0
- package/packages/comment-sticker-studio/src/index.ts +132 -0
- package/packages/compiler-markup-node/README.md +12 -0
- package/packages/compiler-markup-node/package.json +22 -0
- package/packages/compiler-markup-node/src/index.ts +59 -0
- package/packages/compiler-node/README.md +60 -0
- package/packages/compiler-node/package.json +25 -0
- package/packages/compiler-node/src/compiler.ts +207 -0
- package/packages/compiler-node/src/error.ts +11 -0
- package/packages/compiler-node/src/graph-query.ts +51 -0
- package/packages/compiler-node/src/index.ts +27 -0
- package/packages/compiler-node/src/modules.ts +107 -0
- package/packages/compiler-node/src/run.ts +355 -0
- package/packages/component-kit/README.md +97 -0
- package/packages/component-kit/package.json +13 -0
- package/packages/component-kit/src/index.ts +155 -0
- package/packages/composition/README.md +53 -0
- package/packages/composition/package.json +29 -0
- package/packages/composition/src/activation.ts +3 -0
- package/packages/composition/src/component.ts +10 -0
- package/packages/composition/src/index.ts +18 -0
- package/packages/composition/src/manifest.ts +13 -0
- package/packages/composition/src/schema.ts +194 -0
- package/packages/composition/src/track.ts +1403 -0
- package/packages/core/README.md +22 -0
- package/packages/core/package.json +13 -0
- package/packages/core/src/error.ts +12 -0
- package/packages/core/src/graph.ts +341 -0
- package/packages/core/src/index.ts +32 -0
- package/packages/core/src/link.ts +240 -0
- package/packages/core/src/machine.ts +60 -0
- package/packages/core/src/plan.ts +504 -0
- package/packages/core/src/reducer.ts +428 -0
- package/packages/core/src/reference.ts +25 -0
- package/packages/core/src/slice.ts +108 -0
- package/packages/credential-store-env/README.md +11 -0
- package/packages/credential-store-env/package.json +17 -0
- package/packages/credential-store-env/src/activation.ts +25 -0
- package/packages/credential-store-env/src/index.ts +23 -0
- package/packages/credential-store-os/README.md +13 -0
- package/packages/credential-store-os/package.json +22 -0
- package/packages/credential-store-os/runtime/windows-credential.ps1 +59 -0
- package/packages/credential-store-os/src/activation.ts +32 -0
- package/packages/credential-store-os/src/index.ts +2 -0
- package/packages/credential-store-os/src/store.ts +196 -0
- package/packages/deck-track/README.md +52 -0
- package/packages/deck-track/package.json +35 -0
- package/packages/deck-track/preview/DepthStack.png +0 -0
- package/packages/deck-track/src/activation.ts +32 -0
- package/packages/deck-track/src/author.ts +217 -0
- package/packages/deck-track/src/component.ts +86 -0
- package/packages/deck-track/src/fragment.ts +148 -0
- package/packages/deck-track/src/index.ts +16 -0
- package/packages/deck-track/src/lower.ts +370 -0
- package/packages/deck-track/src/manifest.ts +438 -0
- package/packages/deck-track/src/program.ts +367 -0
- package/packages/deck-track/src/surface.ts +286 -0
- package/packages/deck-track/src/types.ts +119 -0
- package/packages/deck-track-studio/README.md +3 -0
- package/packages/deck-track-studio/package.json +14 -0
- package/packages/deck-track-studio/src/activation.ts +7 -0
- package/packages/deck-track-studio/src/index.ts +134 -0
- package/packages/driver-node/README.md +23 -0
- package/packages/driver-node/package.json +18 -0
- package/packages/driver-node/src/driver.ts +616 -0
- package/packages/driver-node/src/index.ts +10 -0
- package/packages/driver-node/src/planning.ts +67 -0
- package/packages/driver-node/src/registry.ts +234 -0
- package/packages/driver-node/src/resources.ts +36 -0
- package/packages/driver-node/src/types.ts +69 -0
- package/packages/elaborator/README.md +74 -0
- package/packages/elaborator/package.json +16 -0
- package/packages/elaborator/src/author.ts +308 -0
- package/packages/elaborator/src/fragment.ts +505 -0
- package/packages/elaborator/src/frontend-facet.ts +30 -0
- package/packages/elaborator/src/index.ts +78 -0
- package/packages/elaborator/src/source.ts +608 -0
- package/packages/endpoint-kit/README.md +111 -0
- package/packages/endpoint-kit/package.json +14 -0
- package/packages/endpoint-kit/src/index.ts +488 -0
- package/packages/estimate/README.md +32 -0
- package/packages/estimate/package.json +20 -0
- package/packages/estimate/src/activation.ts +11 -0
- package/packages/estimate/src/index.ts +16 -0
- package/packages/estimate/src/manifest.ts +34 -0
- package/packages/estimate/src/policy.ts +70 -0
- package/packages/estimate/src/program.ts +196 -0
- package/packages/estimate/src/types.ts +15 -0
- package/packages/film/README.md +49 -0
- package/packages/film/package.json +34 -0
- package/packages/film/src/activation.ts +16 -0
- package/packages/film/src/component.ts +61 -0
- package/packages/film/src/fragment.ts +83 -0
- package/packages/film/src/index.ts +11 -0
- package/packages/film/src/manifest.ts +152 -0
- package/packages/film/src/program.ts +110 -0
- package/packages/film/src/recipe.ts +24 -0
- package/packages/film/src/surface.ts +146 -0
- package/packages/film/src/types.ts +26 -0
- package/packages/film-studio/package.json +16 -0
- package/packages/film-studio/src/activation.ts +8 -0
- package/packages/film-studio/src/index.ts +17 -0
- package/packages/fonts-open/README.md +77 -0
- package/packages/fonts-open/package.json +130 -0
- package/packages/fonts-open/src/activation.ts +30 -0
- package/packages/fonts-open/src/catalog.ts +317 -0
- package/packages/fonts-open/src/index.ts +13 -0
- package/packages/fonts-open/src/manifest.ts +83 -0
- package/packages/fonts-open/src/surface.ts +239 -0
- package/packages/generation/README.md +19 -0
- package/packages/generation/package.json +23 -0
- package/packages/generation/src/activation.ts +9 -0
- package/packages/generation/src/component.ts +77 -0
- package/packages/generation/src/identity.ts +80 -0
- package/packages/generation/src/index.ts +79 -0
- package/packages/generation/src/manifest.ts +65 -0
- package/packages/generation/src/mapping.ts +231 -0
- package/packages/generation/src/ports.ts +222 -0
- package/packages/generation/src/request.ts +427 -0
- package/packages/generation/src/schema.ts +62 -0
- package/packages/generation/src/types.ts +17 -0
- package/packages/gpt-image/README.md +54 -0
- package/packages/gpt-image/package.json +34 -0
- package/packages/gpt-image/src/activation.ts +39 -0
- package/packages/gpt-image/src/fragment.ts +101 -0
- package/packages/gpt-image/src/index.ts +203 -0
- package/packages/gpt-image/src/surface.ts +194 -0
- package/packages/gpt-image-kits/README.md +44 -0
- package/packages/gpt-image-kits/kits/phone-ugc-v1.svs +34 -0
- package/packages/gpt-image-kits/package.json +15 -0
- package/packages/grok-imagine/README.md +21 -0
- package/packages/grok-imagine/package.json +21 -0
- package/packages/grok-imagine/src/activation.ts +29 -0
- package/packages/grok-imagine/src/index.ts +174 -0
- package/packages/grok-imagine/src/surface.ts +149 -0
- package/packages/host/README.md +5 -0
- package/packages/host/package.json +10 -0
- package/packages/host/src/facet.ts +6 -0
- package/packages/host/src/frontend.ts +56 -0
- package/packages/host/src/index.ts +9 -0
- package/packages/hyperframes/README.md +69 -0
- package/packages/hyperframes/package.json +36 -0
- package/packages/hyperframes/src/activation.ts +8 -0
- package/packages/hyperframes/src/browser-program.ts +79 -0
- package/packages/hyperframes/src/component.ts +32 -0
- package/packages/hyperframes/src/document.ts +827 -0
- package/packages/hyperframes/src/fragment.ts +32 -0
- package/packages/hyperframes/src/index.ts +13 -0
- package/packages/hyperframes/src/manifest.ts +67 -0
- package/packages/hyperframes/src/project.ts +118 -0
- package/packages/hyperframes/src/text.ts +1179 -0
- package/packages/hyperframes/src/types.ts +38 -0
- package/packages/image-compose/README.md +25 -0
- package/packages/image-compose/package.json +18 -0
- package/packages/image-compose/src/activation.ts +21 -0
- package/packages/image-compose/src/component.ts +100 -0
- package/packages/image-compose/src/fragment.ts +54 -0
- package/packages/image-compose/src/index.ts +10 -0
- package/packages/image-compose/src/manifest.ts +119 -0
- package/packages/image-compose/src/program.ts +75 -0
- package/packages/image-compose/src/surface.ts +83 -0
- package/packages/image-compose/src/types.ts +22 -0
- package/packages/image-transform/README.md +29 -0
- package/packages/image-transform/package.json +21 -0
- package/packages/image-transform/src/activation.ts +33 -0
- package/packages/image-transform/src/component.ts +67 -0
- package/packages/image-transform/src/fragment.ts +25 -0
- package/packages/image-transform/src/index.ts +13 -0
- package/packages/image-transform/src/manifest.ts +209 -0
- package/packages/image-transform/src/program.ts +23 -0
- package/packages/image-transform/src/surface.ts +216 -0
- package/packages/image-transform/src/types.ts +20 -0
- package/packages/interview-emoji-reveal/README.md +39 -0
- package/packages/interview-emoji-reveal/package.json +23 -0
- package/packages/interview-emoji-reveal/preview/Track.png +0 -0
- package/packages/interview-emoji-reveal/src/activation.ts +14 -0
- package/packages/interview-emoji-reveal/src/component.ts +45 -0
- package/packages/interview-emoji-reveal/src/fragment.ts +62 -0
- package/packages/interview-emoji-reveal/src/index.ts +16 -0
- package/packages/interview-emoji-reveal/src/manifest.ts +174 -0
- package/packages/interview-emoji-reveal/src/program.ts +242 -0
- package/packages/interview-emoji-reveal/src/style.ts +47 -0
- package/packages/interview-emoji-reveal/src/surface.ts +110 -0
- package/packages/interview-emoji-reveal/src/types.ts +52 -0
- package/packages/markup/README.md +81 -0
- package/packages/markup/package.json +16 -0
- package/packages/markup/src/element.ts +39 -0
- package/packages/markup/src/error.ts +20 -0
- package/packages/markup/src/frontend.ts +518 -0
- package/packages/markup/src/host-facet.ts +115 -0
- package/packages/markup/src/index.ts +25 -0
- package/packages/markup/src/registry.ts +83 -0
- package/packages/markup/src/syntax.ts +271 -0
- package/packages/markup/src/types.ts +246 -0
- package/packages/media/README.md +37 -0
- package/packages/media/package.json +19 -0
- package/packages/media/src/activation.ts +38 -0
- package/packages/media/src/component.ts +16 -0
- package/packages/media/src/frame-range.ts +33 -0
- package/packages/media/src/identity.ts +227 -0
- package/packages/media/src/index.ts +15 -0
- package/packages/media/src/manifest.ts +122 -0
- package/packages/media/src/render.ts +140 -0
- package/packages/media/src/schema.ts +69 -0
- package/packages/media/src/surface.ts +150 -0
- package/packages/media/src/types.ts +121 -0
- package/packages/media-execution/README.md +28 -0
- package/packages/media-execution/package.json +17 -0
- package/packages/media-execution/src/execute.ts +1322 -0
- package/packages/media-execution/src/index.ts +16 -0
- package/packages/media-execution/src/probe.ts +315 -0
- package/packages/media-execution/src/surface.ts +286 -0
- package/packages/media-execution/src/toolchain.ts +81 -0
- package/packages/media-execution/src/webp.ts +200 -0
- package/packages/media-pipeline/README.md +113 -0
- package/packages/media-pipeline/package.json +27 -0
- package/packages/media-pipeline/src/activation.ts +47 -0
- package/packages/media-pipeline/src/audio-plan.ts +113 -0
- package/packages/media-pipeline/src/component.ts +373 -0
- package/packages/media-pipeline/src/fragment.ts +167 -0
- package/packages/media-pipeline/src/index.ts +46 -0
- package/packages/media-pipeline/src/manifest.ts +653 -0
- package/packages/media-pipeline/src/operations.ts +248 -0
- package/packages/media-pipeline/src/selection.ts +110 -0
- package/packages/media-pipeline/src/surface.ts +389 -0
- package/packages/media-pipeline/src/types.ts +175 -0
- package/packages/media-track/README.md +197 -0
- package/packages/media-track/package.json +29 -0
- package/packages/media-track/preview/Track.png +0 -0
- package/packages/media-track/preview/build.svrun +5 -0
- package/packages/media-track/preview/flush.png +0 -0
- package/packages/media-track/preview/preview.svml +47 -0
- package/packages/media-track/preview/recipes.svs +23 -0
- package/packages/media-track/preview/rounded.png +0 -0
- package/packages/media-track/src/activation.ts +20 -0
- package/packages/media-track/src/author.ts +317 -0
- package/packages/media-track/src/component.ts +162 -0
- package/packages/media-track/src/fragment.ts +57 -0
- package/packages/media-track/src/index.ts +65 -0
- package/packages/media-track/src/layers.ts +308 -0
- package/packages/media-track/src/lower.ts +335 -0
- package/packages/media-track/src/manifest.ts +624 -0
- package/packages/media-track/src/motion.ts +387 -0
- package/packages/media-track/src/performance.ts +37 -0
- package/packages/media-track/src/presentation.ts +35 -0
- package/packages/media-track/src/program.ts +565 -0
- package/packages/media-track/src/sampling.ts +118 -0
- package/packages/media-track/src/sequence.ts +403 -0
- package/packages/media-track/src/sounds.ts +71 -0
- package/packages/media-track/src/surface.ts +668 -0
- package/packages/media-track/src/types.ts +311 -0
- package/packages/media-track-studio/README.md +3 -0
- package/packages/media-track-studio/package.json +15 -0
- package/packages/media-track-studio/src/activation.ts +7 -0
- package/packages/media-track-studio/src/index.ts +235 -0
- package/packages/mimo-speech/README.md +33 -0
- package/packages/mimo-speech/package.json +21 -0
- package/packages/mimo-speech/src/activation.ts +32 -0
- package/packages/mimo-speech/src/fragment.ts +11 -0
- package/packages/mimo-speech/src/index.ts +160 -0
- package/packages/mimo-speech/src/surface.ts +193 -0
- package/packages/minimax-h3/README.md +21 -0
- package/packages/minimax-h3/package.json +21 -0
- package/packages/minimax-h3/src/activation.ts +14 -0
- package/packages/minimax-h3/src/index.ts +188 -0
- package/packages/minimax-h3/src/surface.ts +87 -0
- package/packages/model-kit/README.md +52 -0
- package/packages/model-kit/package.json +19 -0
- package/packages/model-kit/src/index.ts +728 -0
- package/packages/nano-banana/README.md +23 -0
- package/packages/nano-banana/package.json +21 -0
- package/packages/nano-banana/src/activation.ts +14 -0
- package/packages/nano-banana/src/index.ts +172 -0
- package/packages/nano-banana/src/surface.ts +120 -0
- package/packages/narrative/README.md +7 -0
- package/packages/narrative/package.json +17 -0
- package/packages/narrative/src/activation.ts +7 -0
- package/packages/narrative/src/component.ts +33 -0
- package/packages/narrative/src/identity.ts +131 -0
- package/packages/narrative/src/index.ts +11 -0
- package/packages/narrative/src/manifest.ts +30 -0
- package/packages/narrative/src/schema.ts +89 -0
- package/packages/narrative/src/types.ts +141 -0
- package/packages/package-loader-node/README.md +23 -0
- package/packages/package-loader-node/package.json +15 -0
- package/packages/package-loader-node/src/contribution.ts +97 -0
- package/packages/package-loader-node/src/distribution-resolution.ts +146 -0
- package/packages/package-loader-node/src/index.ts +27 -0
- package/packages/package-loader-node/src/loader.ts +301 -0
- package/packages/package-loader-node/src/location.ts +279 -0
- package/packages/package-loader-node/src/types.ts +60 -0
- package/packages/program-space/README.md +20 -0
- package/packages/program-space/package.json +17 -0
- package/packages/program-space/src/activation.ts +19 -0
- package/packages/program-space/src/index.ts +107 -0
- package/packages/program-space/src/surface.ts +55 -0
- package/packages/protocol/README.md +11 -0
- package/packages/protocol/package.json +10 -0
- package/packages/protocol/src/build-id.ts +52 -0
- package/packages/protocol/src/build.ts +265 -0
- package/packages/protocol/src/canonical.ts +37 -0
- package/packages/protocol/src/error.ts +11 -0
- package/packages/protocol/src/identity.ts +59 -0
- package/packages/protocol/src/index.ts +9 -0
- package/packages/protocol/src/module.ts +67 -0
- package/packages/protocol/src/value.ts +88 -0
- package/packages/provider-hyperframes-aws-lambda/README.md +30 -0
- package/packages/provider-hyperframes-aws-lambda/package.json +30 -0
- package/packages/provider-hyperframes-aws-lambda/src/activation.ts +97 -0
- package/packages/provider-hyperframes-aws-lambda/src/client.ts +114 -0
- package/packages/provider-hyperframes-aws-lambda/src/index.ts +21 -0
- package/packages/provider-hyperframes-aws-lambda/src/provider.ts +522 -0
- package/packages/provider-hyperframes-local/README.md +129 -0
- package/packages/provider-hyperframes-local/package.json +34 -0
- package/packages/provider-hyperframes-local/src/activation.ts +107 -0
- package/packages/provider-hyperframes-local/src/capture-process.ts +110 -0
- package/packages/provider-hyperframes-local/src/capture-worker.ts +17 -0
- package/packages/provider-hyperframes-local/src/capture.ts +184 -0
- package/packages/provider-hyperframes-local/src/index.ts +10 -0
- package/packages/provider-hyperframes-local/src/options.ts +19 -0
- package/packages/provider-hyperframes-local/src/output.ts +73 -0
- package/packages/provider-hyperframes-local/src/process.ts +83 -0
- package/packages/provider-hyperframes-local/src/program.ts +58 -0
- package/packages/provider-hyperframes-local/src/provider.ts +62 -0
- package/packages/provider-hyperframes-local/src/render.ts +114 -0
- package/packages/provider-hyperframes-local/src/sampling.ts +89 -0
- package/packages/provider-hypihub/README.md +143 -0
- package/packages/provider-hypihub/package.json +26 -0
- package/packages/provider-hypihub/src/activation.ts +91 -0
- package/packages/provider-hypihub/src/index.ts +2 -0
- package/packages/provider-hypihub/src/mapping.ts +145 -0
- package/packages/provider-hypihub/src/oauth.ts +113 -0
- package/packages/provider-hypihub/src/provider.ts +566 -0
- package/packages/provider-hypihub/src/routes.ts +134 -0
- package/packages/provider-hypihub/src/upload.ts +402 -0
- package/packages/provider-image-opencv-local/README.md +16 -0
- package/packages/provider-image-opencv-local/package.json +27 -0
- package/packages/provider-image-opencv-local/runtime/raster_execute.py +299 -0
- package/packages/provider-image-opencv-local/src/activation.ts +61 -0
- package/packages/provider-image-opencv-local/src/deployment.ts +68 -0
- package/packages/provider-image-opencv-local/src/index.ts +2 -0
- package/packages/provider-image-opencv-local/src/program.ts +60 -0
- package/packages/provider-image-opencv-local/src/provider.ts +155 -0
- package/packages/provider-kie/README.md +134 -0
- package/packages/provider-kie/package.json +43 -0
- package/packages/provider-kie/src/activation.ts +71 -0
- package/packages/provider-kie/src/index.ts +10 -0
- package/packages/provider-kie/src/mapping.ts +182 -0
- package/packages/provider-kie/src/provider.ts +657 -0
- package/packages/provider-kie/src/routes.ts +150 -0
- package/packages/provider-media-local/README.md +58 -0
- package/packages/provider-media-local/package.json +28 -0
- package/packages/provider-media-local/src/activation.ts +65 -0
- package/packages/provider-media-local/src/index.ts +2 -0
- package/packages/provider-media-local/src/program.ts +19 -0
- package/packages/provider-media-local/src/provider.ts +150 -0
- package/packages/provider-whisperx-local/README.md +44 -0
- package/packages/provider-whisperx-local/package.json +27 -0
- package/packages/provider-whisperx-local/src/activation.ts +93 -0
- package/packages/provider-whisperx-local/src/index.ts +5 -0
- package/packages/provider-whisperx-local/src/program.ts +157 -0
- package/packages/provider-whisperx-local/src/provider.ts +191 -0
- package/packages/provider-xiaomi-mimo/README.md +32 -0
- package/packages/provider-xiaomi-mimo/package.json +24 -0
- package/packages/provider-xiaomi-mimo/src/activation.ts +57 -0
- package/packages/provider-xiaomi-mimo/src/index.ts +5 -0
- package/packages/provider-xiaomi-mimo/src/provider.ts +214 -0
- package/packages/ranking/README.md +67 -0
- package/packages/ranking/package.json +33 -0
- package/packages/ranking/preview/Column.svg +29 -0
- package/packages/ranking/preview/TierBoard.png +0 -0
- package/packages/ranking/preview/TierBoard.svg +36 -0
- package/packages/ranking/preview/TopThree.png +0 -0
- package/packages/ranking/src/activation.ts +38 -0
- package/packages/ranking/src/component.ts +271 -0
- package/packages/ranking/src/fragment.ts +206 -0
- package/packages/ranking/src/index.ts +26 -0
- package/packages/ranking/src/manifest.ts +807 -0
- package/packages/ranking/src/render.ts +698 -0
- package/packages/ranking/src/schedule.ts +895 -0
- package/packages/ranking/src/style.ts +272 -0
- package/packages/ranking/src/surface.ts +322 -0
- package/packages/ranking/src/tier.ts +176 -0
- package/packages/ranking/src/types.ts +277 -0
- package/packages/ranking-studio/README.md +3 -0
- package/packages/ranking-studio/package.json +14 -0
- package/packages/ranking-studio/src/activation.ts +7 -0
- package/packages/ranking-studio/src/index.ts +255 -0
- package/packages/raster/README.md +7 -0
- package/packages/raster/package.json +14 -0
- package/packages/raster/src/activation.ts +7 -0
- package/packages/raster/src/index.ts +7 -0
- package/packages/raster/src/manifest.ts +14 -0
- package/packages/raster/src/program.ts +128 -0
- package/packages/raster/src/schema.ts +53 -0
- package/packages/raster/src/types.ts +61 -0
- package/packages/render-hyperframes/README.md +58 -0
- package/packages/render-hyperframes/package.json +33 -0
- package/packages/render-hyperframes/src/activation.ts +18 -0
- package/packages/render-hyperframes/src/component.ts +37 -0
- package/packages/render-hyperframes/src/fragment.ts +73 -0
- package/packages/render-hyperframes/src/index.ts +6 -0
- package/packages/render-hyperframes/src/manifest.ts +100 -0
- package/packages/render-hyperframes/src/product.ts +29 -0
- package/packages/render-hyperframes/src/surface.ts +65 -0
- package/packages/resource-store-fs/README.md +13 -0
- package/packages/resource-store-fs/package.json +14 -0
- package/packages/resource-store-fs/src/index.ts +2 -0
- package/packages/resource-store-fs/src/store.ts +154 -0
- package/packages/resource-store-s3/README.md +15 -0
- package/packages/resource-store-s3/package.json +15 -0
- package/packages/resource-store-s3/src/client.ts +138 -0
- package/packages/resource-store-s3/src/index.ts +10 -0
- package/packages/resource-store-s3/src/store.ts +258 -0
- package/packages/run/README.md +23 -0
- package/packages/run/package.json +16 -0
- package/packages/run/src/candidate.ts +33 -0
- package/packages/run/src/facet.ts +59 -0
- package/packages/run/src/frontend-facet.ts +23 -0
- package/packages/run/src/frontend.ts +62 -0
- package/packages/run/src/graph.ts +65 -0
- package/packages/run/src/index.ts +33 -0
- package/packages/run/src/registry.ts +24 -0
- package/packages/run/src/resolve.ts +213 -0
- package/packages/run/src/types.ts +147 -0
- package/packages/run-markup/README.md +60 -0
- package/packages/run-markup/package.json +22 -0
- package/packages/run-markup/src/activation.ts +10 -0
- package/packages/run-markup/src/frontend.ts +16 -0
- package/packages/run-markup/src/index.ts +5 -0
- package/packages/run-markup/src/syntax.ts +304 -0
- package/packages/runtime/README.md +39 -0
- package/packages/runtime/package.json +15 -0
- package/packages/runtime/src/capacity.ts +51 -0
- package/packages/runtime/src/catalog.ts +30 -0
- package/packages/runtime/src/credentials.ts +124 -0
- package/packages/runtime/src/environment.ts +6 -0
- package/packages/runtime/src/execution.ts +125 -0
- package/packages/runtime/src/index.ts +24 -0
- package/packages/runtime/src/operations.ts +99 -0
- package/packages/runtime/src/scheduler.ts +281 -0
- package/packages/runtime/src/submission.ts +24 -0
- package/packages/runtime/src/types.ts +157 -0
- package/packages/runtime-host-node/README.md +25 -0
- package/packages/runtime-host-node/package.json +19 -0
- package/packages/runtime-host-node/src/index.ts +421 -0
- package/packages/runtime-host-node/src/packages.ts +158 -0
- package/packages/runtime-kit/README.md +42 -0
- package/packages/runtime-kit/package.json +16 -0
- package/packages/runtime-kit/src/index.ts +307 -0
- package/packages/runtime-kit/src/request-deadline.ts +17 -0
- package/packages/runtime-local/README.md +119 -0
- package/packages/runtime-local/package.json +33 -0
- package/packages/runtime-local/src/actions.ts +20 -0
- package/packages/runtime-local/src/config.ts +1229 -0
- package/packages/runtime-local/src/control.ts +120 -0
- package/packages/runtime-local/src/credentials.ts +61 -0
- package/packages/runtime-local/src/host.ts +174 -0
- package/packages/runtime-local/src/index.ts +36 -0
- package/packages/runtime-local/src/process-control.ts +59 -0
- package/packages/runtime-local/src/process-logs.ts +33 -0
- package/packages/runtime-local/src/programs.ts +441 -0
- package/packages/runtime-local/src/result-writer.ts +246 -0
- package/packages/runtime-local/src/runtime.ts +342 -0
- package/packages/runtime-local/src/types.ts +100 -0
- package/packages/runtime-local/src/worker-process.ts +343 -0
- package/packages/runtime-local/src/worker.ts +449 -0
- package/packages/screen-overlay/README.md +17 -0
- package/packages/screen-overlay/package.json +31 -0
- package/packages/screen-overlay/preview/Track.png +0 -0
- package/packages/screen-overlay/src/activation.ts +15 -0
- package/packages/screen-overlay/src/component.ts +20 -0
- package/packages/screen-overlay/src/fragment.ts +40 -0
- package/packages/screen-overlay/src/index.ts +7 -0
- package/packages/screen-overlay/src/manifest.ts +305 -0
- package/packages/screen-overlay/src/program.ts +321 -0
- package/packages/screen-overlay/src/surface.ts +90 -0
- package/packages/screen-overlay/src/types.ts +69 -0
- package/packages/screen-overlay-studio/README.md +3 -0
- package/packages/screen-overlay-studio/package.json +14 -0
- package/packages/screen-overlay-studio/src/activation.ts +7 -0
- package/packages/screen-overlay-studio/src/index.ts +80 -0
- package/packages/script/README.md +137 -0
- package/packages/script/package.json +22 -0
- package/packages/script/src/activation.ts +20 -0
- package/packages/script/src/edit.ts +174 -0
- package/packages/script/src/error.ts +13 -0
- package/packages/script/src/format.ts +83 -0
- package/packages/script/src/index.ts +20 -0
- package/packages/script/src/lexical.ts +133 -0
- package/packages/script/src/manifest.ts +95 -0
- package/packages/script/src/narrative.ts +232 -0
- package/packages/script/src/parser.ts +850 -0
- package/packages/script/src/surface.ts +132 -0
- package/packages/script/src/types.ts +125 -0
- package/packages/script-studio/package.json +13 -0
- package/packages/script-studio/src/activation.ts +8 -0
- package/packages/script-studio/src/index.ts +61 -0
- package/packages/seedance/README.md +19 -0
- package/packages/seedance/package.json +22 -0
- package/packages/seedance/src/activation.ts +38 -0
- package/packages/seedance/src/fragment.ts +46 -0
- package/packages/seedance/src/index.ts +329 -0
- package/packages/seedance/src/surface.ts +355 -0
- package/packages/seedance-kits/README.md +153 -0
- package/packages/seedance-kits/kits/broll-v1.svs +52 -0
- package/packages/seedance-kits/kits/call-v1.svs +55 -0
- package/packages/seedance-kits/kits/camera-reference-v1.svs +9 -0
- package/packages/seedance-kits/kits/motion-reference-v1.svs +9 -0
- package/packages/seedance-kits/kits/podcast-v1.svs +55 -0
- package/packages/seedance-kits/kits/speaker-v1.svs +136 -0
- package/packages/seedance-kits/kits/street-interview-v1.svs +49 -0
- package/packages/seedance-kits/package.json +24 -0
- package/packages/seedream/README.md +21 -0
- package/packages/seedream/package.json +21 -0
- package/packages/seedream/src/activation.ts +12 -0
- package/packages/seedream/src/index.ts +162 -0
- package/packages/seedream/src/surface.ts +84 -0
- package/packages/semantic-take-adjust/package.json +21 -0
- package/packages/semantic-take-adjust/src/activation.ts +22 -0
- package/packages/semantic-take-adjust/src/component.ts +31 -0
- package/packages/semantic-take-adjust/src/fragment.ts +24 -0
- package/packages/semantic-take-adjust/src/index.ts +12 -0
- package/packages/semantic-take-adjust/src/manifest.ts +57 -0
- package/packages/semantic-take-adjust/src/program.ts +49 -0
- package/packages/semantic-take-adjust/src/surface.ts +96 -0
- package/packages/semantic-take-adjust/src/types.ts +9 -0
- package/packages/semantic-track/README.md +21 -0
- package/packages/semantic-track/package.json +22 -0
- package/packages/semantic-track/src/activation.ts +8 -0
- package/packages/semantic-track/src/component.ts +24 -0
- package/packages/semantic-track/src/identity.ts +58 -0
- package/packages/semantic-track/src/index.ts +6 -0
- package/packages/semantic-track/src/location.ts +81 -0
- package/packages/semantic-track/src/manifest.ts +38 -0
- package/packages/semantic-track/src/projection.ts +71 -0
- package/packages/semantic-track/src/types.ts +26 -0
- package/packages/source/README.md +13 -0
- package/packages/source/package.json +13 -0
- package/packages/source/src/header.ts +80 -0
- package/packages/source/src/index.ts +17 -0
- package/packages/source/src/unit.ts +38 -0
- package/packages/spatial/README.md +77 -0
- package/packages/spatial/package.json +24 -0
- package/packages/spatial/src/activation.ts +43 -0
- package/packages/spatial/src/author.ts +59 -0
- package/packages/spatial/src/component.ts +45 -0
- package/packages/spatial/src/fragment.ts +36 -0
- package/packages/spatial/src/geometry.ts +238 -0
- package/packages/spatial/src/index.ts +37 -0
- package/packages/spatial/src/manifest.ts +341 -0
- package/packages/spatial/src/region-timeline.ts +69 -0
- package/packages/spatial/src/schema.ts +47 -0
- package/packages/spatial/src/surface.ts +319 -0
- package/packages/spatial/src/types.ts +101 -0
- package/packages/speech/README.md +16 -0
- package/packages/speech/package.json +19 -0
- package/packages/speech/src/activation.ts +7 -0
- package/packages/speech/src/component.ts +43 -0
- package/packages/speech/src/identity.ts +73 -0
- package/packages/speech/src/index.ts +6 -0
- package/packages/speech/src/manifest.ts +30 -0
- package/packages/speech/src/materialize.ts +103 -0
- package/packages/speech/src/schema.ts +42 -0
- package/packages/speech/src/types.ts +54 -0
- package/packages/speech-alignment/README.md +29 -0
- package/packages/speech-alignment/package.json +25 -0
- package/packages/speech-alignment/src/activation.ts +8 -0
- package/packages/speech-alignment/src/align.ts +235 -0
- package/packages/speech-alignment/src/component.ts +37 -0
- package/packages/speech-alignment/src/error.ts +9 -0
- package/packages/speech-alignment/src/index.ts +7 -0
- package/packages/speech-alignment/src/local.ts +64 -0
- package/packages/speech-alignment/src/locate.ts +473 -0
- package/packages/speech-alignment/src/manifest.ts +37 -0
- package/packages/speech-alignment/src/normalize.ts +79 -0
- package/packages/speech-alignment/src/types.ts +30 -0
- package/packages/speech-evidence/README.md +3 -0
- package/packages/speech-evidence/package.json +16 -0
- package/packages/speech-evidence/src/activation.ts +3 -0
- package/packages/speech-evidence/src/index.ts +102 -0
- package/packages/speech-track/README.md +51 -0
- package/packages/speech-track/package.json +28 -0
- package/packages/speech-track/preview/Track.png +0 -0
- package/packages/speech-track/src/activation.ts +19 -0
- package/packages/speech-track/src/component.ts +45 -0
- package/packages/speech-track/src/fragment.ts +74 -0
- package/packages/speech-track/src/index.ts +7 -0
- package/packages/speech-track/src/manifest.ts +73 -0
- package/packages/speech-track/src/program.ts +64 -0
- package/packages/speech-track/src/surface.ts +35 -0
- package/packages/speech-track/src/types.ts +6 -0
- package/packages/speech-track-studio/README.md +3 -0
- package/packages/speech-track-studio/package.json +14 -0
- package/packages/speech-track-studio/src/activation.ts +7 -0
- package/packages/speech-track-studio/src/index.ts +40 -0
- package/packages/store-sqlite/README.md +14 -0
- package/packages/store-sqlite/package.json +18 -0
- package/packages/store-sqlite/src/index.ts +2 -0
- package/packages/store-sqlite/src/store.ts +1101 -0
- package/packages/studio/README.md +125 -0
- package/packages/studio/index.html +10 -0
- package/packages/studio/package.json +50 -0
- package/packages/studio/src/build-library.ts +281 -0
- package/packages/studio/src/companion-assembly.ts +39 -0
- package/packages/studio/src/compile.ts +166 -0
- package/packages/studio/src/domain.ts +139 -0
- package/packages/studio/src/execute.ts +57 -0
- package/packages/studio/src/fallback-companions.ts +98 -0
- package/packages/studio/src/observe.ts +202 -0
- package/packages/studio/src/parameter-values.ts +81 -0
- package/packages/studio/src/parameters.ts +550 -0
- package/packages/studio/src/preview/render.ts +51 -0
- package/packages/studio/src/preview/runtime-shim.ts +184 -0
- package/packages/studio/src/programme.ts +276 -0
- package/packages/studio/src/run.ts +85 -0
- package/packages/studio/src/server.ts +725 -0
- package/packages/studio/src/session.ts +111 -0
- package/packages/studio/src/shared.ts +315 -0
- package/packages/studio/src/snapshot.ts +454 -0
- package/packages/studio/src/source-transaction.ts +57 -0
- package/packages/studio/src/storyboard.ts +133 -0
- package/packages/studio/src/studio-preflight.ts +198 -0
- package/packages/studio/src/studio-registry.ts +406 -0
- package/packages/studio/src/studio-trace.ts +136 -0
- package/packages/studio/src/style.css +1525 -0
- package/packages/studio/src/surface-preview.ts +35 -0
- package/packages/studio/src/temporal-graph.ts +227 -0
- package/packages/studio/src/ui/code.ts +450 -0
- package/packages/studio/src/ui/icons.ts +51 -0
- package/packages/studio/src/ui/library.ts +378 -0
- package/packages/studio/src/ui/main.ts +1001 -0
- package/packages/studio/src/ui/markers.ts +152 -0
- package/packages/studio/src/ui/material-preview.ts +176 -0
- package/packages/studio/src/ui/overlay.ts +144 -0
- package/packages/studio/src/ui/resize.ts +74 -0
- package/packages/studio/src/ui/selection.ts +178 -0
- package/packages/studio/src/ui/stage.ts +231 -0
- package/packages/studio/src/ui/syntax.ts +195 -0
- package/packages/studio/src/ui/timeline.ts +1041 -0
- package/packages/studio/src/ui/writeback.ts +10 -0
- package/packages/studio/src/ui/zoom.ts +129 -0
- package/packages/studio/start.ts +143 -0
- package/packages/studio-adapter/README.md +186 -0
- package/packages/studio-adapter/package.json +14 -0
- package/packages/studio-adapter/src/index.ts +850 -0
- package/packages/svs/README.md +37 -0
- package/packages/svs/package.json +21 -0
- package/packages/svs/src/activation.ts +11 -0
- package/packages/svs/src/format.ts +16 -0
- package/packages/svs/src/frontend.ts +33 -0
- package/packages/svs/src/index.ts +5 -0
- package/packages/svs/src/manifest.ts +17 -0
- package/packages/svs/src/parser.ts +279 -0
- package/packages/svs/src/types.ts +26 -0
- package/packages/temporal/README.md +31 -0
- package/packages/temporal/package.json +20 -0
- package/packages/temporal/src/activation.ts +9 -0
- package/packages/temporal/src/component.ts +68 -0
- package/packages/temporal/src/index.ts +110 -0
- package/packages/temporal/src/location.ts +67 -0
- package/packages/temporal/src/projection.ts +280 -0
- package/packages/temporal/src/rational.ts +80 -0
- package/packages/temporal/src/sample.ts +43 -0
- package/packages/temporal/src/schedule.ts +52 -0
- package/packages/temporal/src/types.ts +124 -0
- package/packages/temporal-markup/README.md +75 -0
- package/packages/temporal-markup/package.json +18 -0
- package/packages/temporal-markup/src/index.ts +537 -0
- package/packages/temporal-markup/src/space.ts +59 -0
- package/packages/text/README.md +59 -0
- package/packages/text/package.json +21 -0
- package/packages/text/src/activation.ts +33 -0
- package/packages/text/src/component.ts +72 -0
- package/packages/text/src/fragment.ts +57 -0
- package/packages/text/src/frontend.ts +39 -0
- package/packages/text/src/index.ts +27 -0
- package/packages/text/src/manifest.ts +170 -0
- package/packages/text/src/program.ts +418 -0
- package/packages/text/src/surface.ts +212 -0
- package/packages/text/src/svs.ts +189 -0
- package/packages/text/src/types.ts +82 -0
- package/packages/transport-aws-lambda/README.md +20 -0
- package/packages/transport-aws-lambda/package.json +14 -0
- package/packages/transport-aws-lambda/src/index.ts +131 -0
- package/packages/typography-track/README.md +50 -0
- package/packages/typography-track/package.json +34 -0
- package/packages/typography-track/preview/Mask.png +0 -0
- package/packages/typography-track/preview/Track.png +0 -0
- package/packages/typography-track/src/activation.ts +36 -0
- package/packages/typography-track/src/component.ts +93 -0
- package/packages/typography-track/src/fragment.ts +30 -0
- package/packages/typography-track/src/index.ts +11 -0
- package/packages/typography-track/src/manifest.ts +556 -0
- package/packages/typography-track/src/program.ts +622 -0
- package/packages/typography-track/src/surface.ts +842 -0
- package/packages/typography-track/src/types.ts +109 -0
- package/packages/typography-track-studio/README.md +3 -0
- package/packages/typography-track-studio/package.json +14 -0
- package/packages/typography-track-studio/src/activation.ts +7 -0
- package/packages/typography-track-studio/src/index.ts +116 -0
- package/packages/validation/README.md +11 -0
- package/packages/validation/package.json +15 -0
- package/packages/validation/src/index.ts +100 -0
- package/packages/video-cli/README.md +181 -0
- package/packages/video-cli/package.json +37 -0
- package/packages/video-cli/src/capture.ts +174 -0
- package/packages/video-cli/src/cli.ts +109 -0
- package/packages/video-cli/src/compiler.ts +32 -0
- package/packages/video-cli/src/creation.ts +449 -0
- package/packages/video-cli/src/distribution.ts +88 -0
- package/packages/video-cli/src/index.ts +50 -0
- package/packages/video-cli/src/media.ts +701 -0
- package/packages/video-cli/src/package-selection.ts +34 -0
- package/packages/video-cli/src/process.ts +71 -0
- package/packages/video-cli/src/studio-distribution.ts +19 -0
- package/packages/video-cli/src/transcript.ts +71 -0
- package/packages/video-cli/src/vocabulary.ts +386 -0
- package/packages/visual-ir/README.md +36 -0
- package/packages/visual-ir/package.json +16 -0
- package/packages/visual-ir/src/activation.ts +3 -0
- package/packages/visual-ir/src/index.ts +7 -0
- package/packages/visual-ir/src/style.ts +222 -0
- package/packages/volcengine-matting/README.md +89 -0
- package/packages/volcengine-matting/package.json +16 -0
- package/packages/volcengine-matting/src/activation.ts +13 -0
- package/packages/volcengine-matting/src/index.ts +45 -0
- package/packages/volcengine-matting/src/surface.ts +48 -0
- package/packages/whisperx/README.md +34 -0
- package/packages/whisperx/package.json +28 -0
- package/packages/whisperx/src/activation.ts +18 -0
- package/packages/whisperx/src/component.ts +64 -0
- package/packages/whisperx/src/evidence.ts +69 -0
- package/packages/whisperx/src/fragment.ts +76 -0
- package/packages/whisperx/src/index.ts +14 -0
- package/packages/whisperx/src/manifest.ts +92 -0
- package/packages/whisperx/src/surface.ts +90 -0
- package/packages/whisperx/src/transcript.ts +97 -0
- package/packages/whisperx/src/types.ts +9 -0
- package/packages/workspace/README.md +4 -0
- package/packages/workspace/package.json +14 -0
- package/packages/workspace/src/index.ts +38 -0
- package/packages/workspace-fs-node/README.md +13 -0
- package/packages/workspace-fs-node/package.json +15 -0
- package/packages/workspace-fs-node/src/index.ts +6 -0
- package/packages/workspace-fs-node/src/workspace.ts +226 -0
- package/packages/yt-dlp/README.md +31 -0
- package/packages/yt-dlp/package.json +10 -0
- package/packages/yt-dlp/src/download.ts +104 -0
- package/packages/yt-dlp/src/index.ts +1 -0
- package/services/image-opencv/README.md +33 -0
- package/services/image-opencv/package.json +14 -0
- package/services/image-opencv/pyproject.toml +13 -0
- package/services/image-opencv/uv.lock +56 -0
- package/services/whisperx/README.md +82 -0
- package/services/whisperx/package.json +15 -0
- package/services/whisperx/pyproject.toml +26 -0
- package/services/whisperx/src/hypit_whisperx_service/__init__.py +6 -0
- package/services/whisperx/src/hypit_whisperx_service/__main__.py +29 -0
- package/services/whisperx/src/hypit_whisperx_service/application.py +88 -0
- package/services/whisperx/src/hypit_whisperx_service/audio.py +66 -0
- package/services/whisperx/src/hypit_whisperx_service/check.py +35 -0
- package/services/whisperx/src/hypit_whisperx_service/config.py +81 -0
- package/services/whisperx/src/hypit_whisperx_service/engine.py +173 -0
- package/services/whisperx/src/hypit_whisperx_service/prepare.py +19 -0
- package/services/whisperx/src/hypit_whisperx_service/resources.py +41 -0
- package/services/whisperx/src/hypit_whisperx_service/server.py +101 -0
- package/services/whisperx/uv.lock +3381 -0
- package/services/yt-dlp/README.md +19 -0
- package/services/yt-dlp/package.json +14 -0
- package/services/yt-dlp/pyproject.toml +13 -0
- package/services/yt-dlp/uv.lock +23 -0
- package/index.js +0 -1
|
@@ -0,0 +1,522 @@
|
|
|
1
|
+
import { mkdtemp, rm } from "node:fs/promises";
|
|
2
|
+
import { tmpdir } from "node:os";
|
|
3
|
+
import { join } from "node:path";
|
|
4
|
+
|
|
5
|
+
import {
|
|
6
|
+
defineEndpointPackage,
|
|
7
|
+
wakeAfter,
|
|
8
|
+
} from "@hypit/endpoint-kit";
|
|
9
|
+
import type {
|
|
10
|
+
EndpointFulfillment,
|
|
11
|
+
EndpointOutcome,
|
|
12
|
+
EndpointPollContext,
|
|
13
|
+
EndpointStartContext,
|
|
14
|
+
AsyncEndpoint,
|
|
15
|
+
} from "@hypit/endpoint-kit";
|
|
16
|
+
import {
|
|
17
|
+
assertHyperframesDocument,
|
|
18
|
+
} from "@hypit/hyperframes";
|
|
19
|
+
import type { HyperframesDocument } from "@hypit/hyperframes";
|
|
20
|
+
import { stageHyperframesProject } from "@hypit/hyperframes/project";
|
|
21
|
+
import {
|
|
22
|
+
mediaTypes,
|
|
23
|
+
sealRenderedVisual,
|
|
24
|
+
} from "@hypit/media";
|
|
25
|
+
import type { RenderedVisual } from "@hypit/media";
|
|
26
|
+
import {
|
|
27
|
+
canonicalize,
|
|
28
|
+
} from "@hypit/protocol";
|
|
29
|
+
import type {
|
|
30
|
+
BlobRef,
|
|
31
|
+
CanonicalValue,
|
|
32
|
+
} from "@hypit/protocol";
|
|
33
|
+
import { renderHyperframesCapabilities } from "@hypit/render-hyperframes";
|
|
34
|
+
import { isStreamingResourceStore } from "@hypit/runtime";
|
|
35
|
+
|
|
36
|
+
import {
|
|
37
|
+
createHyperframesAwsLambdaClient,
|
|
38
|
+
parseS3Uri,
|
|
39
|
+
} from "./client.js";
|
|
40
|
+
import type {
|
|
41
|
+
HyperframesAwsLambdaClient,
|
|
42
|
+
HyperframesLambdaProgress,
|
|
43
|
+
HyperframesLambdaRender,
|
|
44
|
+
HyperframesLambdaRenderConfig,
|
|
45
|
+
HyperframesLambdaSite,
|
|
46
|
+
} from "./client.js";
|
|
47
|
+
|
|
48
|
+
const HANDLE_CONTRACT = "hypit.hyperframes-aws-lambda-operation@1";
|
|
49
|
+
const SUPPORTED_FPS = new Set([24, 30, 60]);
|
|
50
|
+
|
|
51
|
+
export const awsLambdaHyperframesProviderModuleRef = {
|
|
52
|
+
name: "@hypit/provider-hyperframes-aws-lambda",
|
|
53
|
+
version: "1",
|
|
54
|
+
} as const;
|
|
55
|
+
export type HyperframesLambdaQuality = "draft" | "standard" | "high";
|
|
56
|
+
|
|
57
|
+
export type CreateAwsLambdaHyperframesProviderOptions = {
|
|
58
|
+
readonly instance?: string;
|
|
59
|
+
readonly pool?: string;
|
|
60
|
+
readonly stateMachineArn: string;
|
|
61
|
+
readonly bucketName: string;
|
|
62
|
+
readonly quality?: HyperframesLambdaQuality;
|
|
63
|
+
readonly chunkSize?: number;
|
|
64
|
+
readonly maxParallelChunks?: number;
|
|
65
|
+
readonly targetChunkFrames?: number;
|
|
66
|
+
readonly defaultMemorySizeMb?: number;
|
|
67
|
+
readonly defaultConcurrency?: number;
|
|
68
|
+
readonly pollIntervalMs?: number;
|
|
69
|
+
readonly maxOperationMs?: number;
|
|
70
|
+
readonly maxRenderedBytes?: number;
|
|
71
|
+
readonly client?: HyperframesAwsLambdaClient;
|
|
72
|
+
readonly now?: () => number;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
type HyperframesHandle = {
|
|
76
|
+
readonly contract: typeof HANDLE_CONTRACT;
|
|
77
|
+
readonly operationId: string;
|
|
78
|
+
readonly executionArn: string;
|
|
79
|
+
readonly outputS3Uri: string;
|
|
80
|
+
readonly bucketName: string;
|
|
81
|
+
readonly site: HyperframesLambdaSite;
|
|
82
|
+
readonly startedAt: number;
|
|
83
|
+
readonly polls: number;
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
function assert(condition: unknown, message: string): asserts condition {
|
|
87
|
+
if (!condition) throw new Error(message);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
function positiveInteger(value: number, subject: string): number {
|
|
91
|
+
assert(Number.isSafeInteger(value) && value > 0, `${subject} must be a positive integer`);
|
|
92
|
+
return value;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
function nonNegativeInteger(value: number, subject: string): number {
|
|
96
|
+
assert(Number.isSafeInteger(value) && value >= 0, `${subject} must be a non-negative integer`);
|
|
97
|
+
return value;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
function stateMachine(value: string): { readonly arn: string; readonly region: string; readonly name: string } {
|
|
101
|
+
const found = /^(arn:aws(?:-[a-z]+)*:states):([a-z0-9-]+):(\d{12}):stateMachine:([A-Za-z0-9_-]+)$/u.exec(value);
|
|
102
|
+
assert(found !== null,
|
|
103
|
+
`HyperFrames stateMachineArn must be an unqualified AWS Step Functions state-machine ARN; got ${value}`);
|
|
104
|
+
return { arn: value, region: found[2]!, name: found[4]! };
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
function executionArn(machine: ReturnType<typeof stateMachine>, executionName: string): string {
|
|
108
|
+
const prefix = machine.arn.slice(0, machine.arn.indexOf(":states") + ":states".length);
|
|
109
|
+
const account = machine.arn.split(":")[4]!;
|
|
110
|
+
return `${prefix}:${machine.region}:${account}:execution:${machine.name}:${executionName}`;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
function requestDocument(value: CanonicalValue): HyperframesDocument {
|
|
114
|
+
assert(value !== null && typeof value === "object" && !Array.isArray(value),
|
|
115
|
+
"HyperFrames visual request must be an object");
|
|
116
|
+
const request = value as { readonly document?: unknown };
|
|
117
|
+
assert(Object.keys(request).sort().join(",") === "document",
|
|
118
|
+
"HyperFrames visual request contains unsupported requirements");
|
|
119
|
+
assertHyperframesDocument(request.document as HyperframesDocument);
|
|
120
|
+
return request.document as HyperframesDocument;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
function awsLambdaHyperframesRejection(value: CanonicalValue): string | undefined {
|
|
124
|
+
try {
|
|
125
|
+
const document = requestDocument(value);
|
|
126
|
+
if (document.surfaces.length > 0) return "AWS Lambda HyperFrames does not accept embedded Surfaces";
|
|
127
|
+
if (document.frameRate.denominator !== 1 || !SUPPORTED_FPS.has(document.frameRate.numerator)) {
|
|
128
|
+
return "AWS Lambda HyperFrames accepts integer 24, 30 or 60 fps";
|
|
129
|
+
}
|
|
130
|
+
return undefined;
|
|
131
|
+
} catch (error) {
|
|
132
|
+
return error instanceof Error ? error.message : String(error);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export function supportsAwsLambdaHyperframes(value: CanonicalValue): boolean {
|
|
137
|
+
return awsLambdaHyperframesRejection(value) === undefined;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
function implementationFailure(code: string, error: unknown): EndpointOutcome {
|
|
141
|
+
return {
|
|
142
|
+
status: "failed",
|
|
143
|
+
failure: {
|
|
144
|
+
code,
|
|
145
|
+
message: error instanceof Error ? error.message : String(error),
|
|
146
|
+
},
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
function operationName(operationId: string): string {
|
|
151
|
+
return operationId.replace(/[^A-Za-z0-9_-]/gu, "-").slice(0, 64);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
function executionName(operationId: string): string {
|
|
155
|
+
return `hypit-${operationName(operationId)}`;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
function outputKey(operationId: string): string {
|
|
159
|
+
return `renders/hypit/${operationName(operationId)}/visual.mp4`;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
function alreadyStopped(error: unknown): boolean {
|
|
163
|
+
return error !== null && typeof error === "object"
|
|
164
|
+
&& ["ExecutionDoesNotExist", "SFN.ExecutionDoesNotExist", "ExecutionNotRunning"]
|
|
165
|
+
.includes(String((error as { readonly name?: unknown }).name));
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
async function artifactBytes(
|
|
169
|
+
context: EndpointStartContext,
|
|
170
|
+
artifact: BlobRef,
|
|
171
|
+
): Promise<Uint8Array | AsyncIterable<Uint8Array>> {
|
|
172
|
+
if (isStreamingResourceStore(context.resources)) {
|
|
173
|
+
const chunks = await context.resources.open(artifact.resource);
|
|
174
|
+
assert(chunks !== undefined, `HyperFrames Artifact ${artifact.resource} is unavailable`);
|
|
175
|
+
return chunks;
|
|
176
|
+
}
|
|
177
|
+
const bytes = await context.resources.get(artifact.resource);
|
|
178
|
+
assert(bytes !== undefined, `HyperFrames Artifact ${artifact.resource} is unavailable`);
|
|
179
|
+
assert(bytes.byteLength === artifact.size, `HyperFrames Artifact ${artifact.resource} size differs`);
|
|
180
|
+
return bytes;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
function verifySite(site: HyperframesLambdaSite, bucketName: string): void {
|
|
184
|
+
assert(/^[A-Za-z0-9._-]+$/u.test(site.siteId), "HyperFrames site id is invalid");
|
|
185
|
+
assert(site.bucketName === bucketName, "HyperFrames site was deployed to another bucket");
|
|
186
|
+
const target = parseS3Uri(site.projectS3Uri);
|
|
187
|
+
assert(target.bucket === bucketName && target.key === `sites/${site.siteId}/project.tar.gz`,
|
|
188
|
+
"HyperFrames site URI does not name its deployed project");
|
|
189
|
+
positiveInteger(site.bytes, "HyperFrames site bytes");
|
|
190
|
+
assert(Number.isFinite(Date.parse(site.uploadedAt)), "HyperFrames site upload timestamp is invalid");
|
|
191
|
+
assert(typeof site.uploaded === "boolean", "HyperFrames site upload state is invalid");
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
function readHandle(value: CanonicalValue | undefined, context: EndpointPollContext): HyperframesHandle {
|
|
195
|
+
assert(value !== undefined && value !== null && typeof value === "object" && !Array.isArray(value),
|
|
196
|
+
"HyperFrames handle is absent or invalid");
|
|
197
|
+
const item = value as unknown as HyperframesHandle;
|
|
198
|
+
assert(item.contract === HANDLE_CONTRACT, "HyperFrames handle contract is invalid");
|
|
199
|
+
assert(item.operationId === context.operation, "HyperFrames handle Operation differs");
|
|
200
|
+
assert(typeof item.executionArn === "string" && item.executionArn.length > 0,
|
|
201
|
+
"HyperFrames handle execution ARN is missing");
|
|
202
|
+
assert(item.startedAt >= 0 && Number.isSafeInteger(item.startedAt), "HyperFrames handle start time is invalid");
|
|
203
|
+
nonNegativeInteger(item.polls, "HyperFrames handle polls");
|
|
204
|
+
return structuredClone(item);
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
function boundedChunks(
|
|
208
|
+
chunks: AsyncIterable<Uint8Array>,
|
|
209
|
+
maximum: number,
|
|
210
|
+
expected: number | null,
|
|
211
|
+
count: { value: number },
|
|
212
|
+
): AsyncIterable<Uint8Array> {
|
|
213
|
+
return (async function* () {
|
|
214
|
+
for await (const chunk of chunks) {
|
|
215
|
+
count.value += chunk.byteLength;
|
|
216
|
+
assert(count.value <= maximum, "HyperFrames output exceeded the configured byte limit");
|
|
217
|
+
if (expected !== null) assert(count.value <= expected, "HyperFrames output exceeded its reported byte count");
|
|
218
|
+
yield chunk;
|
|
219
|
+
}
|
|
220
|
+
assert(count.value > 0, "HyperFrames output is empty");
|
|
221
|
+
if (expected !== null) assert(count.value === expected, "HyperFrames output byte count differs from progress");
|
|
222
|
+
})();
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
async function storeOutput(
|
|
226
|
+
context: EndpointPollContext,
|
|
227
|
+
client: HyperframesAwsLambdaClient,
|
|
228
|
+
progress: HyperframesLambdaProgress,
|
|
229
|
+
handle: HyperframesHandle,
|
|
230
|
+
region: string,
|
|
231
|
+
maxRenderedBytes: number,
|
|
232
|
+
): Promise<BlobRef> {
|
|
233
|
+
const output = progress.outputFile;
|
|
234
|
+
assert(output !== null, "HyperFrames succeeded without an output file");
|
|
235
|
+
assert(output.s3Uri === handle.outputS3Uri, "HyperFrames completed at an unexpected output URI");
|
|
236
|
+
const target = parseS3Uri(output.s3Uri);
|
|
237
|
+
assert(target.bucket === handle.bucketName, "HyperFrames output is outside its configured bucket");
|
|
238
|
+
if (output.bytes !== null) positiveInteger(output.bytes, "HyperFrames output bytes");
|
|
239
|
+
const source = await client.openOutput({ s3Uri: output.s3Uri, region });
|
|
240
|
+
if (source.contentLength !== undefined) {
|
|
241
|
+
positiveInteger(source.contentLength, "HyperFrames S3 content length");
|
|
242
|
+
if (output.bytes !== null) assert(source.contentLength === output.bytes,
|
|
243
|
+
"HyperFrames S3 content length differs from progress");
|
|
244
|
+
}
|
|
245
|
+
const expected = output.bytes ?? source.contentLength ?? null;
|
|
246
|
+
if (expected !== null) assert(expected <= maxRenderedBytes,
|
|
247
|
+
"HyperFrames output exceeded the configured byte limit");
|
|
248
|
+
const count = { value: 0 };
|
|
249
|
+
const bounded = boundedChunks(source.chunks, maxRenderedBytes, expected, count);
|
|
250
|
+
if (isStreamingResourceStore(context.resources)) {
|
|
251
|
+
return await context.resources.putStream(bounded, "video/mp4");
|
|
252
|
+
}
|
|
253
|
+
const buffers: Uint8Array[] = [];
|
|
254
|
+
for await (const chunk of bounded) buffers.push(chunk);
|
|
255
|
+
const bytes = new Uint8Array(count.value);
|
|
256
|
+
let offset = 0;
|
|
257
|
+
for (const chunk of buffers) {
|
|
258
|
+
bytes.set(chunk, offset);
|
|
259
|
+
offset += chunk.byteLength;
|
|
260
|
+
}
|
|
261
|
+
return await context.resources.put(bytes, "video/mp4");
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
function fulfillment(
|
|
265
|
+
document: HyperframesDocument,
|
|
266
|
+
artifact: BlobRef,
|
|
267
|
+
): EndpointFulfillment {
|
|
268
|
+
const value: RenderedVisual = sealRenderedVisual({
|
|
269
|
+
frameRate: document.frameRate,
|
|
270
|
+
frameCount: document.frameCount,
|
|
271
|
+
canvas: document.canvas,
|
|
272
|
+
artifact,
|
|
273
|
+
});
|
|
274
|
+
return { value: { kind: "inline", value: canonicalize(value) } };
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
function renderConfiguration(document: HyperframesDocument, options: {
|
|
278
|
+
readonly quality: HyperframesLambdaQuality;
|
|
279
|
+
readonly chunkSize?: number;
|
|
280
|
+
readonly maxParallelChunks: number;
|
|
281
|
+
readonly targetChunkFrames?: number;
|
|
282
|
+
}): HyperframesLambdaRenderConfig {
|
|
283
|
+
assert(document.surfaces.length === 0,
|
|
284
|
+
"AWS Lambda HyperFrames has no deployed Surface-byte verifier");
|
|
285
|
+
assert(document.frameRate.denominator === 1 && SUPPORTED_FPS.has(document.frameRate.numerator),
|
|
286
|
+
"AWS Lambda HyperFrames supports only integer 24, 30 or 60 fps documents");
|
|
287
|
+
return {
|
|
288
|
+
fps: document.frameRate.numerator as 24 | 30 | 60,
|
|
289
|
+
width: document.canvas.width,
|
|
290
|
+
height: document.canvas.height,
|
|
291
|
+
format: "mp4",
|
|
292
|
+
codec: "h264",
|
|
293
|
+
quality: options.quality,
|
|
294
|
+
...(options.chunkSize === undefined ? {} : { chunkSize: options.chunkSize }),
|
|
295
|
+
maxParallelChunks: options.maxParallelChunks,
|
|
296
|
+
...(options.targetChunkFrames === undefined ? {} : { targetChunkFrames: options.targetChunkFrames }),
|
|
297
|
+
runtimeCap: "lambda",
|
|
298
|
+
rejectOnSystemFonts: true,
|
|
299
|
+
failClosedFontFetch: true,
|
|
300
|
+
hdrMode: "force-sdr",
|
|
301
|
+
cfr: true,
|
|
302
|
+
entryFile: "index.html",
|
|
303
|
+
strictness: "strict",
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
function verifyProgress(progress: HyperframesLambdaProgress, document: HyperframesDocument): void {
|
|
308
|
+
assert(["RUNNING", "SUCCEEDED", "FAILED", "TIMED_OUT", "ABORTED", "PENDING_REDRIVE"]
|
|
309
|
+
.includes(progress.status), "HyperFrames status is invalid");
|
|
310
|
+
assert(Number.isFinite(progress.overallProgress)
|
|
311
|
+
&& progress.overallProgress >= 0 && progress.overallProgress <= 1,
|
|
312
|
+
"HyperFrames overall progress is invalid");
|
|
313
|
+
nonNegativeInteger(progress.framesRendered, "HyperFrames rendered frames");
|
|
314
|
+
nonNegativeInteger(progress.lambdasInvoked, "HyperFrames Lambda invocation count");
|
|
315
|
+
assert(Array.isArray(progress.errors), "HyperFrames errors are invalid");
|
|
316
|
+
for (const error of progress.errors) {
|
|
317
|
+
assert(typeof error.state === "string" && typeof error.error === "string"
|
|
318
|
+
&& typeof error.cause === "string", "HyperFrames error entry is invalid");
|
|
319
|
+
}
|
|
320
|
+
assert(typeof progress.fatalErrorEncountered === "boolean",
|
|
321
|
+
"HyperFrames fatal-error marker is invalid");
|
|
322
|
+
assert(Number.isFinite(Date.parse(progress.startedAt)), "HyperFrames progress start time is invalid");
|
|
323
|
+
assert(progress.endedAt === null || Number.isFinite(Date.parse(progress.endedAt)),
|
|
324
|
+
"HyperFrames progress end time is invalid");
|
|
325
|
+
if (progress.totalFrames !== null) {
|
|
326
|
+
positiveInteger(progress.totalFrames, "HyperFrames planned frames");
|
|
327
|
+
assert(progress.totalFrames === document.frameCount,
|
|
328
|
+
`HyperFrames planned ${progress.totalFrames} frames for a ${document.frameCount}-frame document`);
|
|
329
|
+
assert(progress.framesRendered <= progress.totalFrames,
|
|
330
|
+
"HyperFrames rendered frame count exceeds its plan");
|
|
331
|
+
}
|
|
332
|
+
if (progress.status === "SUCCEEDED") {
|
|
333
|
+
assert(progress.fatalErrorEncountered === false,
|
|
334
|
+
"HyperFrames succeeded while reporting a fatal error");
|
|
335
|
+
assert(progress.overallProgress === 1,
|
|
336
|
+
"HyperFrames succeeded without reporting complete progress");
|
|
337
|
+
assert(progress.totalFrames === document.frameCount
|
|
338
|
+
&& progress.framesRendered === document.frameCount,
|
|
339
|
+
"HyperFrames succeeded without reporting the complete document frame domain");
|
|
340
|
+
assert(progress.outputFile !== null,
|
|
341
|
+
"HyperFrames succeeded without reporting an output file");
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
export function createAwsLambdaHyperframesProvider(config: CreateAwsLambdaHyperframesProviderOptions) {
|
|
346
|
+
const machine = stateMachine(config.stateMachineArn);
|
|
347
|
+
const region = machine.region;
|
|
348
|
+
const quality = config.quality ?? "standard";
|
|
349
|
+
assert(["draft", "standard", "high"].includes(quality), "HyperFrames quality is invalid");
|
|
350
|
+
const chunkSize = config.chunkSize === undefined ? undefined : positiveInteger(config.chunkSize, "chunkSize");
|
|
351
|
+
const maxParallelChunks = positiveInteger(config.maxParallelChunks ?? 16, "maxParallelChunks");
|
|
352
|
+
const targetChunkFrames = config.targetChunkFrames === undefined
|
|
353
|
+
? undefined : positiveInteger(config.targetChunkFrames, "targetChunkFrames");
|
|
354
|
+
assert(chunkSize === undefined || targetChunkFrames === undefined,
|
|
355
|
+
"HyperFrames chunkSize and targetChunkFrames are mutually exclusive");
|
|
356
|
+
const defaultMemorySizeMb = positiveInteger(config.defaultMemorySizeMb ?? 10_240, "defaultMemorySizeMb");
|
|
357
|
+
const pollIntervalMs = positiveInteger(config.pollIntervalMs ?? 5_000, "pollIntervalMs");
|
|
358
|
+
const maxOperationMs = positiveInteger(config.maxOperationMs ?? 6 * 60 * 60_000, "maxOperationMs");
|
|
359
|
+
const maxRenderedBytes = positiveInteger(config.maxRenderedBytes ?? 16 * 1024 * 1024 * 1024,
|
|
360
|
+
"maxRenderedBytes");
|
|
361
|
+
const client = config.client ?? createHyperframesAwsLambdaClient(region);
|
|
362
|
+
const now = config.now ?? Date.now;
|
|
363
|
+
|
|
364
|
+
const makeHandle = (
|
|
365
|
+
context: EndpointStartContext,
|
|
366
|
+
site: HyperframesLambdaSite,
|
|
367
|
+
handle: HyperframesLambdaRender,
|
|
368
|
+
startedAt: number,
|
|
369
|
+
): HyperframesHandle => {
|
|
370
|
+
return {
|
|
371
|
+
contract: HANDLE_CONTRACT,
|
|
372
|
+
operationId: context.operation,
|
|
373
|
+
executionArn: handle.executionArn,
|
|
374
|
+
outputS3Uri: handle.outputS3Uri,
|
|
375
|
+
bucketName: handle.bucketName,
|
|
376
|
+
site,
|
|
377
|
+
startedAt,
|
|
378
|
+
polls: 0,
|
|
379
|
+
};
|
|
380
|
+
};
|
|
381
|
+
|
|
382
|
+
const submit = async (context: EndpointStartContext): Promise<EndpointOutcome> => {
|
|
383
|
+
const startedAt = now();
|
|
384
|
+
const document = requestDocument(context.need.constraints);
|
|
385
|
+
const renderConfig = renderConfiguration(document, {
|
|
386
|
+
quality,
|
|
387
|
+
...(chunkSize === undefined ? {} : { chunkSize }),
|
|
388
|
+
maxParallelChunks,
|
|
389
|
+
...(targetChunkFrames === undefined ? {} : { targetChunkFrames }),
|
|
390
|
+
});
|
|
391
|
+
let site: HyperframesLambdaSite;
|
|
392
|
+
const work = await mkdtemp(join(tmpdir(), "hypit-hyperframes-aws-"));
|
|
393
|
+
try {
|
|
394
|
+
await stageHyperframesProject({
|
|
395
|
+
document,
|
|
396
|
+
directory: work,
|
|
397
|
+
read: (artifact) => artifactBytes(context, artifact),
|
|
398
|
+
});
|
|
399
|
+
site = await client.deploySite({ projectDir: work, bucketName: config.bucketName, region });
|
|
400
|
+
} catch (error) {
|
|
401
|
+
return implementationFailure("HYPERFRAMES_SITE_DEPLOY_FAILED", error);
|
|
402
|
+
} finally {
|
|
403
|
+
await rm(work, { recursive: true, force: true }).catch(() => {});
|
|
404
|
+
}
|
|
405
|
+
verifySite(site, config.bucketName);
|
|
406
|
+
let render: HyperframesLambdaRender;
|
|
407
|
+
try {
|
|
408
|
+
render = await client.render({
|
|
409
|
+
siteHandle: site,
|
|
410
|
+
config: renderConfig,
|
|
411
|
+
bucketName: config.bucketName,
|
|
412
|
+
stateMachineArn: machine.arn,
|
|
413
|
+
region,
|
|
414
|
+
outputKey: outputKey(context.operation),
|
|
415
|
+
executionName: executionName(context.operation),
|
|
416
|
+
});
|
|
417
|
+
const handle = makeHandle(context, site, render, startedAt);
|
|
418
|
+
const receipt = { id: handle.executionArn };
|
|
419
|
+
await context.checkpoint?.({ handle: canonicalize(handle), receipt });
|
|
420
|
+
return { ...wakeAfter(canonicalize(handle), pollIntervalMs, now(), { phase: "submitted" }), receipt };
|
|
421
|
+
} catch (error) {
|
|
422
|
+
return implementationFailure("HYPERFRAMES_SUBMISSION_FAILED", error);
|
|
423
|
+
}
|
|
424
|
+
};
|
|
425
|
+
|
|
426
|
+
const safeSubmit = async (
|
|
427
|
+
context: EndpointStartContext,
|
|
428
|
+
): Promise<EndpointOutcome> => {
|
|
429
|
+
try {
|
|
430
|
+
return await submit(context);
|
|
431
|
+
} catch (error) {
|
|
432
|
+
return implementationFailure("HYPERFRAMES_SUBMISSION_INVALID", error);
|
|
433
|
+
}
|
|
434
|
+
};
|
|
435
|
+
|
|
436
|
+
const endpoint: AsyncEndpoint = {
|
|
437
|
+
start: async (context) => await safeSubmit(context),
|
|
438
|
+
async poll(context) {
|
|
439
|
+
let handle: HyperframesHandle;
|
|
440
|
+
try {
|
|
441
|
+
handle = readHandle(context.handle, context);
|
|
442
|
+
} catch (error) {
|
|
443
|
+
throw error;
|
|
444
|
+
}
|
|
445
|
+
if (now() - handle.startedAt >= maxOperationMs) {
|
|
446
|
+
return implementationFailure("HYPERFRAMES_OPERATION_TIMEOUT", new Error("HyperFrames deadline exceeded"));
|
|
447
|
+
}
|
|
448
|
+
let document: HyperframesDocument;
|
|
449
|
+
let progress: HyperframesLambdaProgress;
|
|
450
|
+
try {
|
|
451
|
+
document = requestDocument(context.need.constraints);
|
|
452
|
+
progress = await client.progress({
|
|
453
|
+
executionArn: handle.executionArn,
|
|
454
|
+
defaultMemorySizeMb,
|
|
455
|
+
region,
|
|
456
|
+
});
|
|
457
|
+
} catch (error) {
|
|
458
|
+
return implementationFailure("HYPERFRAMES_POLL_FAILED", error);
|
|
459
|
+
}
|
|
460
|
+
try {
|
|
461
|
+
verifyProgress(progress, document);
|
|
462
|
+
} catch (error) {
|
|
463
|
+
return implementationFailure("HYPERFRAMES_POLL_FAILED", error);
|
|
464
|
+
}
|
|
465
|
+
const next = { ...handle, polls: handle.polls + 1 };
|
|
466
|
+
if (progress.status === "RUNNING") {
|
|
467
|
+
return wakeAfter(canonicalize(next), pollIntervalMs, now(), {
|
|
468
|
+
phase: "rendering",
|
|
469
|
+
completed: progress.framesRendered,
|
|
470
|
+
...(progress.totalFrames === null ? {} : { total: progress.totalFrames }),
|
|
471
|
+
unit: "frames",
|
|
472
|
+
});
|
|
473
|
+
}
|
|
474
|
+
if (progress.status !== "SUCCEEDED") {
|
|
475
|
+
const details = progress.errors.map((item) => `${item.state}: ${item.error}: ${item.cause}`).join("; ");
|
|
476
|
+
return implementationFailure(`HYPERFRAMES_${progress.status}`,
|
|
477
|
+
new Error(details || `HyperFrames execution ended as ${progress.status}`));
|
|
478
|
+
}
|
|
479
|
+
try {
|
|
480
|
+
const artifact = await storeOutput(context, client, progress, next, region, maxRenderedBytes);
|
|
481
|
+
return {
|
|
482
|
+
status: "completed",
|
|
483
|
+
result: fulfillment(document, artifact),
|
|
484
|
+
};
|
|
485
|
+
} catch (error) {
|
|
486
|
+
return implementationFailure("HYPERFRAMES_OUTPUT_INVALID", error);
|
|
487
|
+
}
|
|
488
|
+
},
|
|
489
|
+
async cancel(context) {
|
|
490
|
+
const target = readHandle(context.handle, context).executionArn;
|
|
491
|
+
try {
|
|
492
|
+
await client.stop({
|
|
493
|
+
executionArn: target,
|
|
494
|
+
region,
|
|
495
|
+
reason: `Hypit cancelled Operation ${context.operation}`,
|
|
496
|
+
});
|
|
497
|
+
} catch (error) {
|
|
498
|
+
if (!alreadyStopped(error)) throw error;
|
|
499
|
+
}
|
|
500
|
+
return { status: "accepted" };
|
|
501
|
+
},
|
|
502
|
+
};
|
|
503
|
+
|
|
504
|
+
return defineEndpointPackage({
|
|
505
|
+
module: awsLambdaHyperframesProviderModuleRef,
|
|
506
|
+
facet: "render",
|
|
507
|
+
instance: config.instance ?? "hyperframes.aws-lambda",
|
|
508
|
+
pool: config.pool ?? config.instance ?? "hyperframes.aws-lambda",
|
|
509
|
+
pricing: { kind: "page", url: "https://aws.amazon.com/lambda/pricing/" },
|
|
510
|
+
defaultConcurrency: config.defaultConcurrency ?? 2,
|
|
511
|
+
capabilities: [{
|
|
512
|
+
lifecycle: "asynchronous" as const,
|
|
513
|
+
capability: renderHyperframesCapabilities.renderVisual,
|
|
514
|
+
returns: mediaTypes.renderedVisual,
|
|
515
|
+
supports: (need) => {
|
|
516
|
+
const reason = awsLambdaHyperframesRejection(need.constraints);
|
|
517
|
+
return reason === undefined ? { status: "supported" } : { status: "unsupported", reason };
|
|
518
|
+
},
|
|
519
|
+
endpoint,
|
|
520
|
+
}],
|
|
521
|
+
});
|
|
522
|
+
}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
# @hypit/provider-hyperframes-local
|
|
2
|
+
|
|
3
|
+
Trusted local Provider for the `@hypit/render-hyperframes#render-visual` capability. It stages the
|
|
4
|
+
Resource dependencies declared by a `HyperframesDocument`, renders a silent MP4 with the
|
|
5
|
+
HyperFrames engine, probes the bytes, and returns a verified `RenderedVisual`. Before staging a typed
|
|
6
|
+
Surface it decodes the exact bytes and checks declared dimensions, still/frame timing, SDR/sRGB and
|
|
7
|
+
opaque/straight-alpha facts. These checks validate the typed rendering input; they do not create
|
|
8
|
+
content identity or hidden output metadata.
|
|
9
|
+
|
|
10
|
+
Normalized transparent videos displayed by Media or project components use the ordinary video path.
|
|
11
|
+
The engine decodes them to PNG frames with alpha, then Chrome blends them with lower layers and
|
|
12
|
+
the authored Canvas background. PNG is the intermediate capture format; it does not ask to erase
|
|
13
|
+
the Film's background. The returned MP4 contains the completed composition.
|
|
14
|
+
|
|
15
|
+
Runtime configuration separates work size from shared capacity:
|
|
16
|
+
|
|
17
|
+
- `defaultConcurrency` limits whole render requests admitted by the Endpoint's Runtime capacity resource.
|
|
18
|
+
- Optional `browserCapacity` limits Chrome slots shared by all render Needs in the same `pool`.
|
|
19
|
+
Each Need reserves its actual worker count atomically with the whole-request slot. A request larger
|
|
20
|
+
than this budget reports a configuration error; it does not silently reduce the requested workers.
|
|
21
|
+
Both reservations last for the whole Need, including preparation and final encoding. Closing one
|
|
22
|
+
Chrome early does not release part of that reservation. Without `browserCapacity`, admission uses
|
|
23
|
+
the whole-request limit alone.
|
|
24
|
+
- `workers` controls independent Chrome processes inside one admitted render. Explicit counts are
|
|
25
|
+
honored, capped only by selected frame count. `auto` uses half the available CPU parallelism,
|
|
26
|
+
bounded to 1–4 workers.
|
|
27
|
+
|
|
28
|
+
The Runtime Profile configures these controls through the Provider because they are deployment policy.
|
|
29
|
+
`auto` is resolved when the Provider is activated, so admission and execution use the same count. It never
|
|
30
|
+
renders program audio; `@hypit/provider-media-local` separately prepares `TimelineAudio` and muxes
|
|
31
|
+
the final media.
|
|
32
|
+
|
|
33
|
+
For a Runtime Profile, place `pool` on the Endpoint entry and these Provider settings inside
|
|
34
|
+
`config`. This is an illustrative entry to merge into the Profile's existing `endpoints`:
|
|
35
|
+
|
|
36
|
+
```json
|
|
37
|
+
"hyperframes.local": {
|
|
38
|
+
"use": "@hypit/provider-hyperframes-local",
|
|
39
|
+
"pool": "local-render",
|
|
40
|
+
"config": {
|
|
41
|
+
"workers": 4,
|
|
42
|
+
"defaultConcurrency": 2,
|
|
43
|
+
"browserCapacity": 6
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
This configuration admits one 4-worker request at a time under its 6-browser budget even though
|
|
49
|
+
the whole-request limit is 2. Two 4-worker requests would need 8 browser slots. Choose budgets from
|
|
50
|
+
the actual machine and shared workloads; the example is not an automatic tuning recommendation.
|
|
51
|
+
Reload the Runtime Worker after changing its Profile and restart Studio if it uses that Profile.
|
|
52
|
+
|
|
53
|
+
`browserGpu` picks Chrome's rasterizer and defaults to `hardware`. Set `software` without a usable
|
|
54
|
+
GPU, or `auto` to let the engine decide. Capture uses screenshots and independent browser processes;
|
|
55
|
+
the CLI's automatic worker and drawElement policies do not override the count.
|
|
56
|
+
|
|
57
|
+
The Runtime Adapter also declares one managed browser program. `programs up` invokes the pinned
|
|
58
|
+
HyperFrames CLI's `browser ensure`; its probe resolves and starts that browser and checks
|
|
59
|
+
the FFmpeg/FFprobe toolchain before a Build.
|
|
60
|
+
|
|
61
|
+
The same executor is exported for callers with an already compiled document:
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
import { renderHyperframesVisual } from "@hypit/provider-hyperframes-local";
|
|
65
|
+
|
|
66
|
+
const visual = await renderHyperframesVisual(
|
|
67
|
+
{ document, range: { startFrame: 240, endFrameExclusive: 360 } },
|
|
68
|
+
{ resources, workers: 4, onProgress: (event) => console.log(event) },
|
|
69
|
+
);
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Omit `range` for the complete document. Ranges are zero-based and half-open on the original
|
|
73
|
+
programme clock. At 30 fps, `[240, 360)` returns 120 frames covering seconds 8–12.
|
|
74
|
+
`onProgress` reports preparation, worker ranges, browser PIDs, completion and elapsed time to direct
|
|
75
|
+
executor callers. The Runtime Provider does not currently forward these events as Build progress.
|
|
76
|
+
`processTimeoutMs` defaults to 30 minutes and starts one deadline before resource preparation. It
|
|
77
|
+
covers resource reads, Surface validation, rendering and output storage. `signal` can end the same
|
|
78
|
+
execution earlier. ResourceStore I/O and Surface probes receive the cancellation signal; a custom
|
|
79
|
+
ResourceStore must implement the port's cancellation behavior, including streaming reads and writes.
|
|
80
|
+
|
|
81
|
+
Browser launch, source extraction, capture and encoding run in one disposable child process per
|
|
82
|
+
render. At cancellation it receives a stop request and has up to five seconds to clean up. The owner
|
|
83
|
+
then terminates any remaining process tree, including Chrome's separate process groups, and awaits
|
|
84
|
+
the child exit before removing temporary files and returning failure. This also covers engine calls
|
|
85
|
+
that do not accept a signal. The deadline initiates shutdown; the call may spend additional time
|
|
86
|
+
closing resources. Completed Outputs in the Build remain available for a new Run and Build.
|
|
87
|
+
|
|
88
|
+
Deployments may additionally set `initializationTimeoutMs` or `frameTimeoutMs` when they have a
|
|
89
|
+
measured stage deadline. Initialization here means initializing an already created browser session;
|
|
90
|
+
Chrome launch precedes it. Stage deadlines are otherwise unset, allowing a busy machine to spend
|
|
91
|
+
more of the shared render budget on a slow initialization or frame.
|
|
92
|
+
An explicit stage-timeout error names the worker and stage/frame, aborts sibling workers and awaits
|
|
93
|
+
cleanup. A completed worker closes its Chrome immediately.
|
|
94
|
+
|
|
95
|
+
One call stages the HTML and every declared asset once. Typed Surface validation includes a complete
|
|
96
|
+
decoded-frame count, even for a short render interval. The renderer then finds source-frame windows
|
|
97
|
+
needed by that interval, merges overlapping windows, and extracts them one source/window at a time.
|
|
98
|
+
Decoded PNGs are shared by all workers in this call. Each worker initializes its own page and captures
|
|
99
|
+
its assigned frames at their original absolute times. Output numbering starts at zero; final H.264
|
|
100
|
+
encoding runs once after all workers finish. More workers parallelize capture, while staging,
|
|
101
|
+
validation, source extraction and final encoding still contribute their own cost.
|
|
102
|
+
|
|
103
|
+
Each call has its own temporary directory, local server port and Chrome processes. Separate renders
|
|
104
|
+
do not share staged files or decoded PNGs. Exact compiler sampling markers retain loops, holds and
|
|
105
|
+
fractional playback rates. There is no SVML rewrite, intermediate cut MP4 or repeat normalization.
|
|
106
|
+
Already compiled video documents need the current compiler's frame markers.
|
|
107
|
+
|
|
108
|
+
Source extraction uses the pinned engine's FFmpeg/FFprobe resolver. `ffmpegPath` selects the final
|
|
109
|
+
H.264 encoder; `ffprobePath` verifies output and typed surfaces. `nodePath` and `hyperframesCliPath`
|
|
110
|
+
serve managed browser installation. The requested frame range travels in the Model's Need.
|
|
111
|
+
|
|
112
|
+
```ts
|
|
113
|
+
import { createLocalHyperframesProvider } from "@hypit/provider-hyperframes-local";
|
|
114
|
+
|
|
115
|
+
const provider = createLocalHyperframesProvider({
|
|
116
|
+
pool: "local-render",
|
|
117
|
+
workers: 4,
|
|
118
|
+
defaultConcurrency: 2,
|
|
119
|
+
browserCapacity: 6,
|
|
120
|
+
});
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Two instances in `local-render`, configured with 4 and 2 workers and identical capacity limits, can
|
|
124
|
+
render together. With `browserCapacity: 4`, the second waits. Coordination applies to Builds sharing
|
|
125
|
+
the same Runtime Execution Store; the pool name alone does not coordinate separate stores or machines.
|
|
126
|
+
Direct `renderHyperframesVisual()` calls do not enter Runtime's shared admission system.
|
|
127
|
+
|
|
128
|
+
The current package executes trusted official code in a local process. It is not a sandbox for
|
|
129
|
+
untrusted documents or community renderer implementations.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@hypit/provider-hyperframes-local",
|
|
3
|
+
"version": "0.0.0-dev",
|
|
4
|
+
"license": "SEE LICENSE IN LICENSE",
|
|
5
|
+
"private": true,
|
|
6
|
+
"type": "module",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": "./src/index.ts"
|
|
9
|
+
},
|
|
10
|
+
"hypit": {
|
|
11
|
+
"activation": "./src/activation.ts"
|
|
12
|
+
},
|
|
13
|
+
"dependencies": {
|
|
14
|
+
"@hyperframes/engine": "0.7.101",
|
|
15
|
+
"@hyperframes/producer": "0.7.101",
|
|
16
|
+
"@hypit/endpoint-kit": "workspace:*",
|
|
17
|
+
"@hypit/hyperframes": "workspace:*",
|
|
18
|
+
"@hypit/media": "workspace:*",
|
|
19
|
+
"@hypit/media-execution": "workspace:*",
|
|
20
|
+
"@hypit/package-loader-node": "workspace:*",
|
|
21
|
+
"@hypit/protocol": "workspace:*",
|
|
22
|
+
"@hypit/render-hyperframes": "workspace:*",
|
|
23
|
+
"@hypit/runtime": "workspace:*",
|
|
24
|
+
"@hypit/runtime-host-node": "workspace:*",
|
|
25
|
+
"@hypit/runtime-kit": "workspace:*",
|
|
26
|
+
"hyperframes": "0.7.101",
|
|
27
|
+
"tsx": "4.21.0"
|
|
28
|
+
},
|
|
29
|
+
"devDependencies": {
|
|
30
|
+
"@hypit/composition": "workspace:*",
|
|
31
|
+
"@hypit/driver-node": "workspace:*",
|
|
32
|
+
"@hypit/program-space": "workspace:*"
|
|
33
|
+
}
|
|
34
|
+
}
|