@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.
Files changed (962) hide show
  1. package/LICENSE +26 -0
  2. package/README.md +203 -0
  3. package/README.zh-CN.md +195 -0
  4. package/bin/hypit.mjs +46 -0
  5. package/dist/public/artifact.d.ts +75 -0
  6. package/dist/public/author-kit.d.ts +559 -0
  7. package/dist/public/browser-capture.d.ts +56 -0
  8. package/dist/public/caption.d.ts +751 -0
  9. package/dist/public/composition.d.ts +672 -0
  10. package/dist/public/endpoint-kit.d.ts +366 -0
  11. package/dist/public/generation.d.ts +591 -0
  12. package/dist/public/hyperframes.d.ts +774 -0
  13. package/dist/public/media.d.ts +708 -0
  14. package/dist/public/model-kit.d.ts +523 -0
  15. package/dist/public/narrative.d.ts +315 -0
  16. package/dist/public/program-space.d.ts +193 -0
  17. package/dist/public/runtime-kit.d.ts +427 -0
  18. package/dist/public/semantic-track.d.ts +418 -0
  19. package/dist/public/spatial.d.ts +1193 -0
  20. package/dist/public/speech.d.ts +391 -0
  21. package/dist/public/studio-adapter.d.ts +686 -0
  22. package/dist/public/svs.d.ts +311 -0
  23. package/dist/public/temporal-markup.d.ts +343 -0
  24. package/dist/public/temporal.d.ts +497 -0
  25. package/dist/public/text.d.ts +817 -0
  26. package/dist/public/visual-ir.d.ts +98 -0
  27. package/docs/public/hypit-logo-dark.svg +36 -0
  28. package/docs/public/hypit-logo-light.svg +38 -0
  29. package/examples/README.md +24 -0
  30. package/examples/minimal-author-package/README.md +18 -0
  31. package/examples/minimal-author-package/packages/example-component/README.md +44 -0
  32. package/examples/minimal-author-package/packages/example-component/package.json +27 -0
  33. package/examples/minimal-author-package/packages/example-component/preview/Box.png +0 -0
  34. package/examples/minimal-author-package/packages/example-component/preview/build.svrun +6 -0
  35. package/examples/minimal-author-package/packages/example-component/preview/preview.svml +47 -0
  36. package/examples/minimal-author-package/packages/example-component/preview/recipes.svs +8 -0
  37. package/examples/minimal-author-package/packages/example-component/src/activation.ts +10 -0
  38. package/examples/minimal-author-package/packages/example-component/src/component.ts +44 -0
  39. package/examples/minimal-author-package/packages/example-component/src/fragment.ts +32 -0
  40. package/examples/minimal-author-package/packages/example-component/src/index.ts +6 -0
  41. package/examples/minimal-author-package/packages/example-component/src/manifest.ts +82 -0
  42. package/examples/minimal-author-package/packages/example-component/src/style.ts +13 -0
  43. package/examples/minimal-author-package/packages/example-component/src/surface.ts +41 -0
  44. package/examples/minimal-author-package/packages/example-component/src/temporal.ts +6 -0
  45. package/examples/minimal-author-package/packages/example-component/tsconfig.json +18 -0
  46. package/examples/semantic-composition/README.md +35 -0
  47. package/examples/semantic-composition/chat.svml +25 -0
  48. package/examples/semantic-composition/chat.svrun +6 -0
  49. package/examples/semantic-composition/chat.svs +4 -0
  50. package/examples/semantic-composition/hypit.runtime.json +8 -0
  51. package/examples/semantic-composition/packages/chat-scene/README.md +29 -0
  52. package/examples/semantic-composition/packages/chat-scene/package.json +11 -0
  53. package/examples/semantic-composition/packages/chat-scene/src/activation.ts +112 -0
  54. package/examples/semantic-composition/packages/chat-scene/src/render.ts +64 -0
  55. package/examples/semantic-composition/packages/chat-scene/tsconfig.json +18 -0
  56. package/examples/semantic-composition/packages/responsive-explainer/README.md +45 -0
  57. package/examples/semantic-composition/packages/responsive-explainer/package.json +11 -0
  58. package/examples/semantic-composition/packages/responsive-explainer/src/activation.ts +90 -0
  59. package/examples/semantic-composition/packages/responsive-explainer/src/render.ts +68 -0
  60. package/examples/semantic-composition/packages/responsive-explainer/tsconfig.json +18 -0
  61. package/package.json +259 -7
  62. package/packages/artifact/README.md +10 -0
  63. package/packages/artifact/package.json +16 -0
  64. package/packages/artifact/src/activation.ts +8 -0
  65. package/packages/artifact/src/index.ts +24 -0
  66. package/packages/audio-track/README.md +43 -0
  67. package/packages/audio-track/package.json +36 -0
  68. package/packages/audio-track/src/activation.ts +20 -0
  69. package/packages/audio-track/src/component.ts +40 -0
  70. package/packages/audio-track/src/fragment.ts +63 -0
  71. package/packages/audio-track/src/index.ts +7 -0
  72. package/packages/audio-track/src/manifest.ts +151 -0
  73. package/packages/audio-track/src/program.ts +254 -0
  74. package/packages/audio-track/src/surface.ts +187 -0
  75. package/packages/audio-track/src/types.ts +62 -0
  76. package/packages/audio-track-studio/README.md +3 -0
  77. package/packages/audio-track-studio/package.json +14 -0
  78. package/packages/audio-track-studio/src/activation.ts +7 -0
  79. package/packages/audio-track-studio/src/index.ts +72 -0
  80. package/packages/author-kit/README.md +31 -0
  81. package/packages/author-kit/package.json +16 -0
  82. package/packages/author-kit/src/index.ts +59 -0
  83. package/packages/background-removal/README.md +29 -0
  84. package/packages/background-removal/package.json +16 -0
  85. package/packages/background-removal/src/activation.ts +18 -0
  86. package/packages/background-removal/src/component.ts +32 -0
  87. package/packages/background-removal/src/fragment.ts +18 -0
  88. package/packages/background-removal/src/index.ts +6 -0
  89. package/packages/background-removal/src/manifest.ts +45 -0
  90. package/packages/background-removal/src/program.ts +19 -0
  91. package/packages/background-removal/src/surface.ts +27 -0
  92. package/packages/background-removal/src/types.ts +5 -0
  93. package/packages/browser-capture/README.md +82 -0
  94. package/packages/browser-capture/package.json +15 -0
  95. package/packages/browser-capture/src/browser.ts +19 -0
  96. package/packages/browser-capture/src/index.ts +198 -0
  97. package/packages/build-result/package.json +13 -0
  98. package/packages/build-result/src/decode.ts +286 -0
  99. package/packages/build-result/src/index.ts +25 -0
  100. package/packages/build-result/src/store.ts +505 -0
  101. package/packages/build-result/src/types.ts +354 -0
  102. package/packages/build-result/src/writer.ts +184 -0
  103. package/packages/build-result-fs/README.md +29 -0
  104. package/packages/build-result-fs/package.json +17 -0
  105. package/packages/build-result-fs/src/activation.ts +62 -0
  106. package/packages/build-result-fs/src/index.ts +1 -0
  107. package/packages/build-result-kit/README.md +10 -0
  108. package/packages/build-result-kit/package.json +15 -0
  109. package/packages/build-result-kit/src/index.ts +144 -0
  110. package/packages/build-result-s3/README.md +49 -0
  111. package/packages/build-result-s3/package.json +19 -0
  112. package/packages/build-result-s3/src/activation.ts +71 -0
  113. package/packages/build-result-s3/src/client.ts +254 -0
  114. package/packages/build-result-s3/src/index.ts +4 -0
  115. package/packages/build-result-s3/src/repository.ts +361 -0
  116. package/packages/caption/README.md +77 -0
  117. package/packages/caption/package.json +28 -0
  118. package/packages/caption/src/activation.ts +17 -0
  119. package/packages/caption/src/component.ts +38 -0
  120. package/packages/caption/src/display.ts +111 -0
  121. package/packages/caption/src/error.ts +9 -0
  122. package/packages/caption/src/fragment.ts +26 -0
  123. package/packages/caption/src/index.ts +33 -0
  124. package/packages/caption/src/manifest.ts +97 -0
  125. package/packages/caption/src/style.ts +170 -0
  126. package/packages/caption/src/surface.ts +96 -0
  127. package/packages/caption/src/temporalize.ts +124 -0
  128. package/packages/caption/src/types.ts +71 -0
  129. package/packages/caption-fine/README.md +108 -0
  130. package/packages/caption-fine/package.json +30 -0
  131. package/packages/caption-fine/preview/Track.png +0 -0
  132. package/packages/caption-fine/src/activation.ts +32 -0
  133. package/packages/caption-fine/src/component.ts +58 -0
  134. package/packages/caption-fine/src/fragment.ts +112 -0
  135. package/packages/caption-fine/src/index.ts +19 -0
  136. package/packages/caption-fine/src/manifest.ts +383 -0
  137. package/packages/caption-fine/src/recipe.ts +120 -0
  138. package/packages/caption-fine/src/render.ts +1133 -0
  139. package/packages/caption-fine/src/schedule.ts +126 -0
  140. package/packages/caption-fine/src/spacing.ts +69 -0
  141. package/packages/caption-fine/src/style.ts +370 -0
  142. package/packages/caption-fine/src/surface.ts +152 -0
  143. package/packages/caption-fine/src/types.ts +191 -0
  144. package/packages/caption-fine-studio/README.md +3 -0
  145. package/packages/caption-fine-studio/package.json +15 -0
  146. package/packages/caption-fine-studio/src/activation.ts +7 -0
  147. package/packages/caption-fine-studio/src/index.ts +163 -0
  148. package/packages/cli/README.md +51 -0
  149. package/packages/cli/package.json +33 -0
  150. package/packages/cli/src/arguments.ts +605 -0
  151. package/packages/cli/src/build-planning.ts +460 -0
  152. package/packages/cli/src/command.ts +202 -0
  153. package/packages/cli/src/commands/environment.ts +391 -0
  154. package/packages/cli/src/commands/execution.ts +321 -0
  155. package/packages/cli/src/commands/results.ts +187 -0
  156. package/packages/cli/src/commands/types.ts +9 -0
  157. package/packages/cli/src/distribution.ts +74 -0
  158. package/packages/cli/src/index.ts +30 -0
  159. package/packages/cli/src/machine-view.ts +28 -0
  160. package/packages/cli/src/main.ts +654 -0
  161. package/packages/cli/src/oauth.ts +228 -0
  162. package/packages/cli/src/observation.ts +203 -0
  163. package/packages/cli/src/output.ts +1007 -0
  164. package/packages/cli/src/paths.ts +7 -0
  165. package/packages/cli/src/project-context.ts +38 -0
  166. package/packages/cli/src/reachability.ts +91 -0
  167. package/packages/cli/src/result-export.ts +148 -0
  168. package/packages/cli/src/result-query.ts +46 -0
  169. package/packages/cli/src/run-file.ts +186 -0
  170. package/packages/cli/src/runtime-port.ts +13 -0
  171. package/packages/cli/src/runtime-selection.ts +94 -0
  172. package/packages/cli/src/runtime-view.ts +15 -0
  173. package/packages/cli/src/source-discovery.ts +150 -0
  174. package/packages/cli/src/source-packages.ts +91 -0
  175. package/packages/cli/src/view.ts +228 -0
  176. package/packages/comment-sticker/README.md +41 -0
  177. package/packages/comment-sticker/package.json +29 -0
  178. package/packages/comment-sticker/preview/Track.png +0 -0
  179. package/packages/comment-sticker/src/activation.ts +32 -0
  180. package/packages/comment-sticker/src/author.ts +148 -0
  181. package/packages/comment-sticker/src/component.ts +97 -0
  182. package/packages/comment-sticker/src/fragment.ts +124 -0
  183. package/packages/comment-sticker/src/index.ts +8 -0
  184. package/packages/comment-sticker/src/manifest.ts +373 -0
  185. package/packages/comment-sticker/src/program.ts +610 -0
  186. package/packages/comment-sticker/src/surface.ts +172 -0
  187. package/packages/comment-sticker/src/types.ts +109 -0
  188. package/packages/comment-sticker-studio/README.md +3 -0
  189. package/packages/comment-sticker-studio/package.json +14 -0
  190. package/packages/comment-sticker-studio/src/activation.ts +7 -0
  191. package/packages/comment-sticker-studio/src/index.ts +132 -0
  192. package/packages/compiler-markup-node/README.md +12 -0
  193. package/packages/compiler-markup-node/package.json +22 -0
  194. package/packages/compiler-markup-node/src/index.ts +59 -0
  195. package/packages/compiler-node/README.md +60 -0
  196. package/packages/compiler-node/package.json +25 -0
  197. package/packages/compiler-node/src/compiler.ts +207 -0
  198. package/packages/compiler-node/src/error.ts +11 -0
  199. package/packages/compiler-node/src/graph-query.ts +51 -0
  200. package/packages/compiler-node/src/index.ts +27 -0
  201. package/packages/compiler-node/src/modules.ts +107 -0
  202. package/packages/compiler-node/src/run.ts +355 -0
  203. package/packages/component-kit/README.md +97 -0
  204. package/packages/component-kit/package.json +13 -0
  205. package/packages/component-kit/src/index.ts +155 -0
  206. package/packages/composition/README.md +53 -0
  207. package/packages/composition/package.json +29 -0
  208. package/packages/composition/src/activation.ts +3 -0
  209. package/packages/composition/src/component.ts +10 -0
  210. package/packages/composition/src/index.ts +18 -0
  211. package/packages/composition/src/manifest.ts +13 -0
  212. package/packages/composition/src/schema.ts +194 -0
  213. package/packages/composition/src/track.ts +1403 -0
  214. package/packages/core/README.md +22 -0
  215. package/packages/core/package.json +13 -0
  216. package/packages/core/src/error.ts +12 -0
  217. package/packages/core/src/graph.ts +341 -0
  218. package/packages/core/src/index.ts +32 -0
  219. package/packages/core/src/link.ts +240 -0
  220. package/packages/core/src/machine.ts +60 -0
  221. package/packages/core/src/plan.ts +504 -0
  222. package/packages/core/src/reducer.ts +428 -0
  223. package/packages/core/src/reference.ts +25 -0
  224. package/packages/core/src/slice.ts +108 -0
  225. package/packages/credential-store-env/README.md +11 -0
  226. package/packages/credential-store-env/package.json +17 -0
  227. package/packages/credential-store-env/src/activation.ts +25 -0
  228. package/packages/credential-store-env/src/index.ts +23 -0
  229. package/packages/credential-store-os/README.md +13 -0
  230. package/packages/credential-store-os/package.json +22 -0
  231. package/packages/credential-store-os/runtime/windows-credential.ps1 +59 -0
  232. package/packages/credential-store-os/src/activation.ts +32 -0
  233. package/packages/credential-store-os/src/index.ts +2 -0
  234. package/packages/credential-store-os/src/store.ts +196 -0
  235. package/packages/deck-track/README.md +52 -0
  236. package/packages/deck-track/package.json +35 -0
  237. package/packages/deck-track/preview/DepthStack.png +0 -0
  238. package/packages/deck-track/src/activation.ts +32 -0
  239. package/packages/deck-track/src/author.ts +217 -0
  240. package/packages/deck-track/src/component.ts +86 -0
  241. package/packages/deck-track/src/fragment.ts +148 -0
  242. package/packages/deck-track/src/index.ts +16 -0
  243. package/packages/deck-track/src/lower.ts +370 -0
  244. package/packages/deck-track/src/manifest.ts +438 -0
  245. package/packages/deck-track/src/program.ts +367 -0
  246. package/packages/deck-track/src/surface.ts +286 -0
  247. package/packages/deck-track/src/types.ts +119 -0
  248. package/packages/deck-track-studio/README.md +3 -0
  249. package/packages/deck-track-studio/package.json +14 -0
  250. package/packages/deck-track-studio/src/activation.ts +7 -0
  251. package/packages/deck-track-studio/src/index.ts +134 -0
  252. package/packages/driver-node/README.md +23 -0
  253. package/packages/driver-node/package.json +18 -0
  254. package/packages/driver-node/src/driver.ts +616 -0
  255. package/packages/driver-node/src/index.ts +10 -0
  256. package/packages/driver-node/src/planning.ts +67 -0
  257. package/packages/driver-node/src/registry.ts +234 -0
  258. package/packages/driver-node/src/resources.ts +36 -0
  259. package/packages/driver-node/src/types.ts +69 -0
  260. package/packages/elaborator/README.md +74 -0
  261. package/packages/elaborator/package.json +16 -0
  262. package/packages/elaborator/src/author.ts +308 -0
  263. package/packages/elaborator/src/fragment.ts +505 -0
  264. package/packages/elaborator/src/frontend-facet.ts +30 -0
  265. package/packages/elaborator/src/index.ts +78 -0
  266. package/packages/elaborator/src/source.ts +608 -0
  267. package/packages/endpoint-kit/README.md +111 -0
  268. package/packages/endpoint-kit/package.json +14 -0
  269. package/packages/endpoint-kit/src/index.ts +488 -0
  270. package/packages/estimate/README.md +32 -0
  271. package/packages/estimate/package.json +20 -0
  272. package/packages/estimate/src/activation.ts +11 -0
  273. package/packages/estimate/src/index.ts +16 -0
  274. package/packages/estimate/src/manifest.ts +34 -0
  275. package/packages/estimate/src/policy.ts +70 -0
  276. package/packages/estimate/src/program.ts +196 -0
  277. package/packages/estimate/src/types.ts +15 -0
  278. package/packages/film/README.md +49 -0
  279. package/packages/film/package.json +34 -0
  280. package/packages/film/src/activation.ts +16 -0
  281. package/packages/film/src/component.ts +61 -0
  282. package/packages/film/src/fragment.ts +83 -0
  283. package/packages/film/src/index.ts +11 -0
  284. package/packages/film/src/manifest.ts +152 -0
  285. package/packages/film/src/program.ts +110 -0
  286. package/packages/film/src/recipe.ts +24 -0
  287. package/packages/film/src/surface.ts +146 -0
  288. package/packages/film/src/types.ts +26 -0
  289. package/packages/film-studio/package.json +16 -0
  290. package/packages/film-studio/src/activation.ts +8 -0
  291. package/packages/film-studio/src/index.ts +17 -0
  292. package/packages/fonts-open/README.md +77 -0
  293. package/packages/fonts-open/package.json +130 -0
  294. package/packages/fonts-open/src/activation.ts +30 -0
  295. package/packages/fonts-open/src/catalog.ts +317 -0
  296. package/packages/fonts-open/src/index.ts +13 -0
  297. package/packages/fonts-open/src/manifest.ts +83 -0
  298. package/packages/fonts-open/src/surface.ts +239 -0
  299. package/packages/generation/README.md +19 -0
  300. package/packages/generation/package.json +23 -0
  301. package/packages/generation/src/activation.ts +9 -0
  302. package/packages/generation/src/component.ts +77 -0
  303. package/packages/generation/src/identity.ts +80 -0
  304. package/packages/generation/src/index.ts +79 -0
  305. package/packages/generation/src/manifest.ts +65 -0
  306. package/packages/generation/src/mapping.ts +231 -0
  307. package/packages/generation/src/ports.ts +222 -0
  308. package/packages/generation/src/request.ts +427 -0
  309. package/packages/generation/src/schema.ts +62 -0
  310. package/packages/generation/src/types.ts +17 -0
  311. package/packages/gpt-image/README.md +54 -0
  312. package/packages/gpt-image/package.json +34 -0
  313. package/packages/gpt-image/src/activation.ts +39 -0
  314. package/packages/gpt-image/src/fragment.ts +101 -0
  315. package/packages/gpt-image/src/index.ts +203 -0
  316. package/packages/gpt-image/src/surface.ts +194 -0
  317. package/packages/gpt-image-kits/README.md +44 -0
  318. package/packages/gpt-image-kits/kits/phone-ugc-v1.svs +34 -0
  319. package/packages/gpt-image-kits/package.json +15 -0
  320. package/packages/grok-imagine/README.md +21 -0
  321. package/packages/grok-imagine/package.json +21 -0
  322. package/packages/grok-imagine/src/activation.ts +29 -0
  323. package/packages/grok-imagine/src/index.ts +174 -0
  324. package/packages/grok-imagine/src/surface.ts +149 -0
  325. package/packages/host/README.md +5 -0
  326. package/packages/host/package.json +10 -0
  327. package/packages/host/src/facet.ts +6 -0
  328. package/packages/host/src/frontend.ts +56 -0
  329. package/packages/host/src/index.ts +9 -0
  330. package/packages/hyperframes/README.md +69 -0
  331. package/packages/hyperframes/package.json +36 -0
  332. package/packages/hyperframes/src/activation.ts +8 -0
  333. package/packages/hyperframes/src/browser-program.ts +79 -0
  334. package/packages/hyperframes/src/component.ts +32 -0
  335. package/packages/hyperframes/src/document.ts +827 -0
  336. package/packages/hyperframes/src/fragment.ts +32 -0
  337. package/packages/hyperframes/src/index.ts +13 -0
  338. package/packages/hyperframes/src/manifest.ts +67 -0
  339. package/packages/hyperframes/src/project.ts +118 -0
  340. package/packages/hyperframes/src/text.ts +1179 -0
  341. package/packages/hyperframes/src/types.ts +38 -0
  342. package/packages/image-compose/README.md +25 -0
  343. package/packages/image-compose/package.json +18 -0
  344. package/packages/image-compose/src/activation.ts +21 -0
  345. package/packages/image-compose/src/component.ts +100 -0
  346. package/packages/image-compose/src/fragment.ts +54 -0
  347. package/packages/image-compose/src/index.ts +10 -0
  348. package/packages/image-compose/src/manifest.ts +119 -0
  349. package/packages/image-compose/src/program.ts +75 -0
  350. package/packages/image-compose/src/surface.ts +83 -0
  351. package/packages/image-compose/src/types.ts +22 -0
  352. package/packages/image-transform/README.md +29 -0
  353. package/packages/image-transform/package.json +21 -0
  354. package/packages/image-transform/src/activation.ts +33 -0
  355. package/packages/image-transform/src/component.ts +67 -0
  356. package/packages/image-transform/src/fragment.ts +25 -0
  357. package/packages/image-transform/src/index.ts +13 -0
  358. package/packages/image-transform/src/manifest.ts +209 -0
  359. package/packages/image-transform/src/program.ts +23 -0
  360. package/packages/image-transform/src/surface.ts +216 -0
  361. package/packages/image-transform/src/types.ts +20 -0
  362. package/packages/interview-emoji-reveal/README.md +39 -0
  363. package/packages/interview-emoji-reveal/package.json +23 -0
  364. package/packages/interview-emoji-reveal/preview/Track.png +0 -0
  365. package/packages/interview-emoji-reveal/src/activation.ts +14 -0
  366. package/packages/interview-emoji-reveal/src/component.ts +45 -0
  367. package/packages/interview-emoji-reveal/src/fragment.ts +62 -0
  368. package/packages/interview-emoji-reveal/src/index.ts +16 -0
  369. package/packages/interview-emoji-reveal/src/manifest.ts +174 -0
  370. package/packages/interview-emoji-reveal/src/program.ts +242 -0
  371. package/packages/interview-emoji-reveal/src/style.ts +47 -0
  372. package/packages/interview-emoji-reveal/src/surface.ts +110 -0
  373. package/packages/interview-emoji-reveal/src/types.ts +52 -0
  374. package/packages/markup/README.md +81 -0
  375. package/packages/markup/package.json +16 -0
  376. package/packages/markup/src/element.ts +39 -0
  377. package/packages/markup/src/error.ts +20 -0
  378. package/packages/markup/src/frontend.ts +518 -0
  379. package/packages/markup/src/host-facet.ts +115 -0
  380. package/packages/markup/src/index.ts +25 -0
  381. package/packages/markup/src/registry.ts +83 -0
  382. package/packages/markup/src/syntax.ts +271 -0
  383. package/packages/markup/src/types.ts +246 -0
  384. package/packages/media/README.md +37 -0
  385. package/packages/media/package.json +19 -0
  386. package/packages/media/src/activation.ts +38 -0
  387. package/packages/media/src/component.ts +16 -0
  388. package/packages/media/src/frame-range.ts +33 -0
  389. package/packages/media/src/identity.ts +227 -0
  390. package/packages/media/src/index.ts +15 -0
  391. package/packages/media/src/manifest.ts +122 -0
  392. package/packages/media/src/render.ts +140 -0
  393. package/packages/media/src/schema.ts +69 -0
  394. package/packages/media/src/surface.ts +150 -0
  395. package/packages/media/src/types.ts +121 -0
  396. package/packages/media-execution/README.md +28 -0
  397. package/packages/media-execution/package.json +17 -0
  398. package/packages/media-execution/src/execute.ts +1322 -0
  399. package/packages/media-execution/src/index.ts +16 -0
  400. package/packages/media-execution/src/probe.ts +315 -0
  401. package/packages/media-execution/src/surface.ts +286 -0
  402. package/packages/media-execution/src/toolchain.ts +81 -0
  403. package/packages/media-execution/src/webp.ts +200 -0
  404. package/packages/media-pipeline/README.md +113 -0
  405. package/packages/media-pipeline/package.json +27 -0
  406. package/packages/media-pipeline/src/activation.ts +47 -0
  407. package/packages/media-pipeline/src/audio-plan.ts +113 -0
  408. package/packages/media-pipeline/src/component.ts +373 -0
  409. package/packages/media-pipeline/src/fragment.ts +167 -0
  410. package/packages/media-pipeline/src/index.ts +46 -0
  411. package/packages/media-pipeline/src/manifest.ts +653 -0
  412. package/packages/media-pipeline/src/operations.ts +248 -0
  413. package/packages/media-pipeline/src/selection.ts +110 -0
  414. package/packages/media-pipeline/src/surface.ts +389 -0
  415. package/packages/media-pipeline/src/types.ts +175 -0
  416. package/packages/media-track/README.md +197 -0
  417. package/packages/media-track/package.json +29 -0
  418. package/packages/media-track/preview/Track.png +0 -0
  419. package/packages/media-track/preview/build.svrun +5 -0
  420. package/packages/media-track/preview/flush.png +0 -0
  421. package/packages/media-track/preview/preview.svml +47 -0
  422. package/packages/media-track/preview/recipes.svs +23 -0
  423. package/packages/media-track/preview/rounded.png +0 -0
  424. package/packages/media-track/src/activation.ts +20 -0
  425. package/packages/media-track/src/author.ts +317 -0
  426. package/packages/media-track/src/component.ts +162 -0
  427. package/packages/media-track/src/fragment.ts +57 -0
  428. package/packages/media-track/src/index.ts +65 -0
  429. package/packages/media-track/src/layers.ts +308 -0
  430. package/packages/media-track/src/lower.ts +335 -0
  431. package/packages/media-track/src/manifest.ts +624 -0
  432. package/packages/media-track/src/motion.ts +387 -0
  433. package/packages/media-track/src/performance.ts +37 -0
  434. package/packages/media-track/src/presentation.ts +35 -0
  435. package/packages/media-track/src/program.ts +565 -0
  436. package/packages/media-track/src/sampling.ts +118 -0
  437. package/packages/media-track/src/sequence.ts +403 -0
  438. package/packages/media-track/src/sounds.ts +71 -0
  439. package/packages/media-track/src/surface.ts +668 -0
  440. package/packages/media-track/src/types.ts +311 -0
  441. package/packages/media-track-studio/README.md +3 -0
  442. package/packages/media-track-studio/package.json +15 -0
  443. package/packages/media-track-studio/src/activation.ts +7 -0
  444. package/packages/media-track-studio/src/index.ts +235 -0
  445. package/packages/mimo-speech/README.md +33 -0
  446. package/packages/mimo-speech/package.json +21 -0
  447. package/packages/mimo-speech/src/activation.ts +32 -0
  448. package/packages/mimo-speech/src/fragment.ts +11 -0
  449. package/packages/mimo-speech/src/index.ts +160 -0
  450. package/packages/mimo-speech/src/surface.ts +193 -0
  451. package/packages/minimax-h3/README.md +21 -0
  452. package/packages/minimax-h3/package.json +21 -0
  453. package/packages/minimax-h3/src/activation.ts +14 -0
  454. package/packages/minimax-h3/src/index.ts +188 -0
  455. package/packages/minimax-h3/src/surface.ts +87 -0
  456. package/packages/model-kit/README.md +52 -0
  457. package/packages/model-kit/package.json +19 -0
  458. package/packages/model-kit/src/index.ts +728 -0
  459. package/packages/nano-banana/README.md +23 -0
  460. package/packages/nano-banana/package.json +21 -0
  461. package/packages/nano-banana/src/activation.ts +14 -0
  462. package/packages/nano-banana/src/index.ts +172 -0
  463. package/packages/nano-banana/src/surface.ts +120 -0
  464. package/packages/narrative/README.md +7 -0
  465. package/packages/narrative/package.json +17 -0
  466. package/packages/narrative/src/activation.ts +7 -0
  467. package/packages/narrative/src/component.ts +33 -0
  468. package/packages/narrative/src/identity.ts +131 -0
  469. package/packages/narrative/src/index.ts +11 -0
  470. package/packages/narrative/src/manifest.ts +30 -0
  471. package/packages/narrative/src/schema.ts +89 -0
  472. package/packages/narrative/src/types.ts +141 -0
  473. package/packages/package-loader-node/README.md +23 -0
  474. package/packages/package-loader-node/package.json +15 -0
  475. package/packages/package-loader-node/src/contribution.ts +97 -0
  476. package/packages/package-loader-node/src/distribution-resolution.ts +146 -0
  477. package/packages/package-loader-node/src/index.ts +27 -0
  478. package/packages/package-loader-node/src/loader.ts +301 -0
  479. package/packages/package-loader-node/src/location.ts +279 -0
  480. package/packages/package-loader-node/src/types.ts +60 -0
  481. package/packages/program-space/README.md +20 -0
  482. package/packages/program-space/package.json +17 -0
  483. package/packages/program-space/src/activation.ts +19 -0
  484. package/packages/program-space/src/index.ts +107 -0
  485. package/packages/program-space/src/surface.ts +55 -0
  486. package/packages/protocol/README.md +11 -0
  487. package/packages/protocol/package.json +10 -0
  488. package/packages/protocol/src/build-id.ts +52 -0
  489. package/packages/protocol/src/build.ts +265 -0
  490. package/packages/protocol/src/canonical.ts +37 -0
  491. package/packages/protocol/src/error.ts +11 -0
  492. package/packages/protocol/src/identity.ts +59 -0
  493. package/packages/protocol/src/index.ts +9 -0
  494. package/packages/protocol/src/module.ts +67 -0
  495. package/packages/protocol/src/value.ts +88 -0
  496. package/packages/provider-hyperframes-aws-lambda/README.md +30 -0
  497. package/packages/provider-hyperframes-aws-lambda/package.json +30 -0
  498. package/packages/provider-hyperframes-aws-lambda/src/activation.ts +97 -0
  499. package/packages/provider-hyperframes-aws-lambda/src/client.ts +114 -0
  500. package/packages/provider-hyperframes-aws-lambda/src/index.ts +21 -0
  501. package/packages/provider-hyperframes-aws-lambda/src/provider.ts +522 -0
  502. package/packages/provider-hyperframes-local/README.md +129 -0
  503. package/packages/provider-hyperframes-local/package.json +34 -0
  504. package/packages/provider-hyperframes-local/src/activation.ts +107 -0
  505. package/packages/provider-hyperframes-local/src/capture-process.ts +110 -0
  506. package/packages/provider-hyperframes-local/src/capture-worker.ts +17 -0
  507. package/packages/provider-hyperframes-local/src/capture.ts +184 -0
  508. package/packages/provider-hyperframes-local/src/index.ts +10 -0
  509. package/packages/provider-hyperframes-local/src/options.ts +19 -0
  510. package/packages/provider-hyperframes-local/src/output.ts +73 -0
  511. package/packages/provider-hyperframes-local/src/process.ts +83 -0
  512. package/packages/provider-hyperframes-local/src/program.ts +58 -0
  513. package/packages/provider-hyperframes-local/src/provider.ts +62 -0
  514. package/packages/provider-hyperframes-local/src/render.ts +114 -0
  515. package/packages/provider-hyperframes-local/src/sampling.ts +89 -0
  516. package/packages/provider-hypihub/README.md +143 -0
  517. package/packages/provider-hypihub/package.json +26 -0
  518. package/packages/provider-hypihub/src/activation.ts +91 -0
  519. package/packages/provider-hypihub/src/index.ts +2 -0
  520. package/packages/provider-hypihub/src/mapping.ts +145 -0
  521. package/packages/provider-hypihub/src/oauth.ts +113 -0
  522. package/packages/provider-hypihub/src/provider.ts +566 -0
  523. package/packages/provider-hypihub/src/routes.ts +134 -0
  524. package/packages/provider-hypihub/src/upload.ts +402 -0
  525. package/packages/provider-image-opencv-local/README.md +16 -0
  526. package/packages/provider-image-opencv-local/package.json +27 -0
  527. package/packages/provider-image-opencv-local/runtime/raster_execute.py +299 -0
  528. package/packages/provider-image-opencv-local/src/activation.ts +61 -0
  529. package/packages/provider-image-opencv-local/src/deployment.ts +68 -0
  530. package/packages/provider-image-opencv-local/src/index.ts +2 -0
  531. package/packages/provider-image-opencv-local/src/program.ts +60 -0
  532. package/packages/provider-image-opencv-local/src/provider.ts +155 -0
  533. package/packages/provider-kie/README.md +134 -0
  534. package/packages/provider-kie/package.json +43 -0
  535. package/packages/provider-kie/src/activation.ts +71 -0
  536. package/packages/provider-kie/src/index.ts +10 -0
  537. package/packages/provider-kie/src/mapping.ts +182 -0
  538. package/packages/provider-kie/src/provider.ts +657 -0
  539. package/packages/provider-kie/src/routes.ts +150 -0
  540. package/packages/provider-media-local/README.md +58 -0
  541. package/packages/provider-media-local/package.json +28 -0
  542. package/packages/provider-media-local/src/activation.ts +65 -0
  543. package/packages/provider-media-local/src/index.ts +2 -0
  544. package/packages/provider-media-local/src/program.ts +19 -0
  545. package/packages/provider-media-local/src/provider.ts +150 -0
  546. package/packages/provider-whisperx-local/README.md +44 -0
  547. package/packages/provider-whisperx-local/package.json +27 -0
  548. package/packages/provider-whisperx-local/src/activation.ts +93 -0
  549. package/packages/provider-whisperx-local/src/index.ts +5 -0
  550. package/packages/provider-whisperx-local/src/program.ts +157 -0
  551. package/packages/provider-whisperx-local/src/provider.ts +191 -0
  552. package/packages/provider-xiaomi-mimo/README.md +32 -0
  553. package/packages/provider-xiaomi-mimo/package.json +24 -0
  554. package/packages/provider-xiaomi-mimo/src/activation.ts +57 -0
  555. package/packages/provider-xiaomi-mimo/src/index.ts +5 -0
  556. package/packages/provider-xiaomi-mimo/src/provider.ts +214 -0
  557. package/packages/ranking/README.md +67 -0
  558. package/packages/ranking/package.json +33 -0
  559. package/packages/ranking/preview/Column.svg +29 -0
  560. package/packages/ranking/preview/TierBoard.png +0 -0
  561. package/packages/ranking/preview/TierBoard.svg +36 -0
  562. package/packages/ranking/preview/TopThree.png +0 -0
  563. package/packages/ranking/src/activation.ts +38 -0
  564. package/packages/ranking/src/component.ts +271 -0
  565. package/packages/ranking/src/fragment.ts +206 -0
  566. package/packages/ranking/src/index.ts +26 -0
  567. package/packages/ranking/src/manifest.ts +807 -0
  568. package/packages/ranking/src/render.ts +698 -0
  569. package/packages/ranking/src/schedule.ts +895 -0
  570. package/packages/ranking/src/style.ts +272 -0
  571. package/packages/ranking/src/surface.ts +322 -0
  572. package/packages/ranking/src/tier.ts +176 -0
  573. package/packages/ranking/src/types.ts +277 -0
  574. package/packages/ranking-studio/README.md +3 -0
  575. package/packages/ranking-studio/package.json +14 -0
  576. package/packages/ranking-studio/src/activation.ts +7 -0
  577. package/packages/ranking-studio/src/index.ts +255 -0
  578. package/packages/raster/README.md +7 -0
  579. package/packages/raster/package.json +14 -0
  580. package/packages/raster/src/activation.ts +7 -0
  581. package/packages/raster/src/index.ts +7 -0
  582. package/packages/raster/src/manifest.ts +14 -0
  583. package/packages/raster/src/program.ts +128 -0
  584. package/packages/raster/src/schema.ts +53 -0
  585. package/packages/raster/src/types.ts +61 -0
  586. package/packages/render-hyperframes/README.md +58 -0
  587. package/packages/render-hyperframes/package.json +33 -0
  588. package/packages/render-hyperframes/src/activation.ts +18 -0
  589. package/packages/render-hyperframes/src/component.ts +37 -0
  590. package/packages/render-hyperframes/src/fragment.ts +73 -0
  591. package/packages/render-hyperframes/src/index.ts +6 -0
  592. package/packages/render-hyperframes/src/manifest.ts +100 -0
  593. package/packages/render-hyperframes/src/product.ts +29 -0
  594. package/packages/render-hyperframes/src/surface.ts +65 -0
  595. package/packages/resource-store-fs/README.md +13 -0
  596. package/packages/resource-store-fs/package.json +14 -0
  597. package/packages/resource-store-fs/src/index.ts +2 -0
  598. package/packages/resource-store-fs/src/store.ts +154 -0
  599. package/packages/resource-store-s3/README.md +15 -0
  600. package/packages/resource-store-s3/package.json +15 -0
  601. package/packages/resource-store-s3/src/client.ts +138 -0
  602. package/packages/resource-store-s3/src/index.ts +10 -0
  603. package/packages/resource-store-s3/src/store.ts +258 -0
  604. package/packages/run/README.md +23 -0
  605. package/packages/run/package.json +16 -0
  606. package/packages/run/src/candidate.ts +33 -0
  607. package/packages/run/src/facet.ts +59 -0
  608. package/packages/run/src/frontend-facet.ts +23 -0
  609. package/packages/run/src/frontend.ts +62 -0
  610. package/packages/run/src/graph.ts +65 -0
  611. package/packages/run/src/index.ts +33 -0
  612. package/packages/run/src/registry.ts +24 -0
  613. package/packages/run/src/resolve.ts +213 -0
  614. package/packages/run/src/types.ts +147 -0
  615. package/packages/run-markup/README.md +60 -0
  616. package/packages/run-markup/package.json +22 -0
  617. package/packages/run-markup/src/activation.ts +10 -0
  618. package/packages/run-markup/src/frontend.ts +16 -0
  619. package/packages/run-markup/src/index.ts +5 -0
  620. package/packages/run-markup/src/syntax.ts +304 -0
  621. package/packages/runtime/README.md +39 -0
  622. package/packages/runtime/package.json +15 -0
  623. package/packages/runtime/src/capacity.ts +51 -0
  624. package/packages/runtime/src/catalog.ts +30 -0
  625. package/packages/runtime/src/credentials.ts +124 -0
  626. package/packages/runtime/src/environment.ts +6 -0
  627. package/packages/runtime/src/execution.ts +125 -0
  628. package/packages/runtime/src/index.ts +24 -0
  629. package/packages/runtime/src/operations.ts +99 -0
  630. package/packages/runtime/src/scheduler.ts +281 -0
  631. package/packages/runtime/src/submission.ts +24 -0
  632. package/packages/runtime/src/types.ts +157 -0
  633. package/packages/runtime-host-node/README.md +25 -0
  634. package/packages/runtime-host-node/package.json +19 -0
  635. package/packages/runtime-host-node/src/index.ts +421 -0
  636. package/packages/runtime-host-node/src/packages.ts +158 -0
  637. package/packages/runtime-kit/README.md +42 -0
  638. package/packages/runtime-kit/package.json +16 -0
  639. package/packages/runtime-kit/src/index.ts +307 -0
  640. package/packages/runtime-kit/src/request-deadline.ts +17 -0
  641. package/packages/runtime-local/README.md +119 -0
  642. package/packages/runtime-local/package.json +33 -0
  643. package/packages/runtime-local/src/actions.ts +20 -0
  644. package/packages/runtime-local/src/config.ts +1229 -0
  645. package/packages/runtime-local/src/control.ts +120 -0
  646. package/packages/runtime-local/src/credentials.ts +61 -0
  647. package/packages/runtime-local/src/host.ts +174 -0
  648. package/packages/runtime-local/src/index.ts +36 -0
  649. package/packages/runtime-local/src/process-control.ts +59 -0
  650. package/packages/runtime-local/src/process-logs.ts +33 -0
  651. package/packages/runtime-local/src/programs.ts +441 -0
  652. package/packages/runtime-local/src/result-writer.ts +246 -0
  653. package/packages/runtime-local/src/runtime.ts +342 -0
  654. package/packages/runtime-local/src/types.ts +100 -0
  655. package/packages/runtime-local/src/worker-process.ts +343 -0
  656. package/packages/runtime-local/src/worker.ts +449 -0
  657. package/packages/screen-overlay/README.md +17 -0
  658. package/packages/screen-overlay/package.json +31 -0
  659. package/packages/screen-overlay/preview/Track.png +0 -0
  660. package/packages/screen-overlay/src/activation.ts +15 -0
  661. package/packages/screen-overlay/src/component.ts +20 -0
  662. package/packages/screen-overlay/src/fragment.ts +40 -0
  663. package/packages/screen-overlay/src/index.ts +7 -0
  664. package/packages/screen-overlay/src/manifest.ts +305 -0
  665. package/packages/screen-overlay/src/program.ts +321 -0
  666. package/packages/screen-overlay/src/surface.ts +90 -0
  667. package/packages/screen-overlay/src/types.ts +69 -0
  668. package/packages/screen-overlay-studio/README.md +3 -0
  669. package/packages/screen-overlay-studio/package.json +14 -0
  670. package/packages/screen-overlay-studio/src/activation.ts +7 -0
  671. package/packages/screen-overlay-studio/src/index.ts +80 -0
  672. package/packages/script/README.md +137 -0
  673. package/packages/script/package.json +22 -0
  674. package/packages/script/src/activation.ts +20 -0
  675. package/packages/script/src/edit.ts +174 -0
  676. package/packages/script/src/error.ts +13 -0
  677. package/packages/script/src/format.ts +83 -0
  678. package/packages/script/src/index.ts +20 -0
  679. package/packages/script/src/lexical.ts +133 -0
  680. package/packages/script/src/manifest.ts +95 -0
  681. package/packages/script/src/narrative.ts +232 -0
  682. package/packages/script/src/parser.ts +850 -0
  683. package/packages/script/src/surface.ts +132 -0
  684. package/packages/script/src/types.ts +125 -0
  685. package/packages/script-studio/package.json +13 -0
  686. package/packages/script-studio/src/activation.ts +8 -0
  687. package/packages/script-studio/src/index.ts +61 -0
  688. package/packages/seedance/README.md +19 -0
  689. package/packages/seedance/package.json +22 -0
  690. package/packages/seedance/src/activation.ts +38 -0
  691. package/packages/seedance/src/fragment.ts +46 -0
  692. package/packages/seedance/src/index.ts +329 -0
  693. package/packages/seedance/src/surface.ts +355 -0
  694. package/packages/seedance-kits/README.md +153 -0
  695. package/packages/seedance-kits/kits/broll-v1.svs +52 -0
  696. package/packages/seedance-kits/kits/call-v1.svs +55 -0
  697. package/packages/seedance-kits/kits/camera-reference-v1.svs +9 -0
  698. package/packages/seedance-kits/kits/motion-reference-v1.svs +9 -0
  699. package/packages/seedance-kits/kits/podcast-v1.svs +55 -0
  700. package/packages/seedance-kits/kits/speaker-v1.svs +136 -0
  701. package/packages/seedance-kits/kits/street-interview-v1.svs +49 -0
  702. package/packages/seedance-kits/package.json +24 -0
  703. package/packages/seedream/README.md +21 -0
  704. package/packages/seedream/package.json +21 -0
  705. package/packages/seedream/src/activation.ts +12 -0
  706. package/packages/seedream/src/index.ts +162 -0
  707. package/packages/seedream/src/surface.ts +84 -0
  708. package/packages/semantic-take-adjust/package.json +21 -0
  709. package/packages/semantic-take-adjust/src/activation.ts +22 -0
  710. package/packages/semantic-take-adjust/src/component.ts +31 -0
  711. package/packages/semantic-take-adjust/src/fragment.ts +24 -0
  712. package/packages/semantic-take-adjust/src/index.ts +12 -0
  713. package/packages/semantic-take-adjust/src/manifest.ts +57 -0
  714. package/packages/semantic-take-adjust/src/program.ts +49 -0
  715. package/packages/semantic-take-adjust/src/surface.ts +96 -0
  716. package/packages/semantic-take-adjust/src/types.ts +9 -0
  717. package/packages/semantic-track/README.md +21 -0
  718. package/packages/semantic-track/package.json +22 -0
  719. package/packages/semantic-track/src/activation.ts +8 -0
  720. package/packages/semantic-track/src/component.ts +24 -0
  721. package/packages/semantic-track/src/identity.ts +58 -0
  722. package/packages/semantic-track/src/index.ts +6 -0
  723. package/packages/semantic-track/src/location.ts +81 -0
  724. package/packages/semantic-track/src/manifest.ts +38 -0
  725. package/packages/semantic-track/src/projection.ts +71 -0
  726. package/packages/semantic-track/src/types.ts +26 -0
  727. package/packages/source/README.md +13 -0
  728. package/packages/source/package.json +13 -0
  729. package/packages/source/src/header.ts +80 -0
  730. package/packages/source/src/index.ts +17 -0
  731. package/packages/source/src/unit.ts +38 -0
  732. package/packages/spatial/README.md +77 -0
  733. package/packages/spatial/package.json +24 -0
  734. package/packages/spatial/src/activation.ts +43 -0
  735. package/packages/spatial/src/author.ts +59 -0
  736. package/packages/spatial/src/component.ts +45 -0
  737. package/packages/spatial/src/fragment.ts +36 -0
  738. package/packages/spatial/src/geometry.ts +238 -0
  739. package/packages/spatial/src/index.ts +37 -0
  740. package/packages/spatial/src/manifest.ts +341 -0
  741. package/packages/spatial/src/region-timeline.ts +69 -0
  742. package/packages/spatial/src/schema.ts +47 -0
  743. package/packages/spatial/src/surface.ts +319 -0
  744. package/packages/spatial/src/types.ts +101 -0
  745. package/packages/speech/README.md +16 -0
  746. package/packages/speech/package.json +19 -0
  747. package/packages/speech/src/activation.ts +7 -0
  748. package/packages/speech/src/component.ts +43 -0
  749. package/packages/speech/src/identity.ts +73 -0
  750. package/packages/speech/src/index.ts +6 -0
  751. package/packages/speech/src/manifest.ts +30 -0
  752. package/packages/speech/src/materialize.ts +103 -0
  753. package/packages/speech/src/schema.ts +42 -0
  754. package/packages/speech/src/types.ts +54 -0
  755. package/packages/speech-alignment/README.md +29 -0
  756. package/packages/speech-alignment/package.json +25 -0
  757. package/packages/speech-alignment/src/activation.ts +8 -0
  758. package/packages/speech-alignment/src/align.ts +235 -0
  759. package/packages/speech-alignment/src/component.ts +37 -0
  760. package/packages/speech-alignment/src/error.ts +9 -0
  761. package/packages/speech-alignment/src/index.ts +7 -0
  762. package/packages/speech-alignment/src/local.ts +64 -0
  763. package/packages/speech-alignment/src/locate.ts +473 -0
  764. package/packages/speech-alignment/src/manifest.ts +37 -0
  765. package/packages/speech-alignment/src/normalize.ts +79 -0
  766. package/packages/speech-alignment/src/types.ts +30 -0
  767. package/packages/speech-evidence/README.md +3 -0
  768. package/packages/speech-evidence/package.json +16 -0
  769. package/packages/speech-evidence/src/activation.ts +3 -0
  770. package/packages/speech-evidence/src/index.ts +102 -0
  771. package/packages/speech-track/README.md +51 -0
  772. package/packages/speech-track/package.json +28 -0
  773. package/packages/speech-track/preview/Track.png +0 -0
  774. package/packages/speech-track/src/activation.ts +19 -0
  775. package/packages/speech-track/src/component.ts +45 -0
  776. package/packages/speech-track/src/fragment.ts +74 -0
  777. package/packages/speech-track/src/index.ts +7 -0
  778. package/packages/speech-track/src/manifest.ts +73 -0
  779. package/packages/speech-track/src/program.ts +64 -0
  780. package/packages/speech-track/src/surface.ts +35 -0
  781. package/packages/speech-track/src/types.ts +6 -0
  782. package/packages/speech-track-studio/README.md +3 -0
  783. package/packages/speech-track-studio/package.json +14 -0
  784. package/packages/speech-track-studio/src/activation.ts +7 -0
  785. package/packages/speech-track-studio/src/index.ts +40 -0
  786. package/packages/store-sqlite/README.md +14 -0
  787. package/packages/store-sqlite/package.json +18 -0
  788. package/packages/store-sqlite/src/index.ts +2 -0
  789. package/packages/store-sqlite/src/store.ts +1101 -0
  790. package/packages/studio/README.md +125 -0
  791. package/packages/studio/index.html +10 -0
  792. package/packages/studio/package.json +50 -0
  793. package/packages/studio/src/build-library.ts +281 -0
  794. package/packages/studio/src/companion-assembly.ts +39 -0
  795. package/packages/studio/src/compile.ts +166 -0
  796. package/packages/studio/src/domain.ts +139 -0
  797. package/packages/studio/src/execute.ts +57 -0
  798. package/packages/studio/src/fallback-companions.ts +98 -0
  799. package/packages/studio/src/observe.ts +202 -0
  800. package/packages/studio/src/parameter-values.ts +81 -0
  801. package/packages/studio/src/parameters.ts +550 -0
  802. package/packages/studio/src/preview/render.ts +51 -0
  803. package/packages/studio/src/preview/runtime-shim.ts +184 -0
  804. package/packages/studio/src/programme.ts +276 -0
  805. package/packages/studio/src/run.ts +85 -0
  806. package/packages/studio/src/server.ts +725 -0
  807. package/packages/studio/src/session.ts +111 -0
  808. package/packages/studio/src/shared.ts +315 -0
  809. package/packages/studio/src/snapshot.ts +454 -0
  810. package/packages/studio/src/source-transaction.ts +57 -0
  811. package/packages/studio/src/storyboard.ts +133 -0
  812. package/packages/studio/src/studio-preflight.ts +198 -0
  813. package/packages/studio/src/studio-registry.ts +406 -0
  814. package/packages/studio/src/studio-trace.ts +136 -0
  815. package/packages/studio/src/style.css +1525 -0
  816. package/packages/studio/src/surface-preview.ts +35 -0
  817. package/packages/studio/src/temporal-graph.ts +227 -0
  818. package/packages/studio/src/ui/code.ts +450 -0
  819. package/packages/studio/src/ui/icons.ts +51 -0
  820. package/packages/studio/src/ui/library.ts +378 -0
  821. package/packages/studio/src/ui/main.ts +1001 -0
  822. package/packages/studio/src/ui/markers.ts +152 -0
  823. package/packages/studio/src/ui/material-preview.ts +176 -0
  824. package/packages/studio/src/ui/overlay.ts +144 -0
  825. package/packages/studio/src/ui/resize.ts +74 -0
  826. package/packages/studio/src/ui/selection.ts +178 -0
  827. package/packages/studio/src/ui/stage.ts +231 -0
  828. package/packages/studio/src/ui/syntax.ts +195 -0
  829. package/packages/studio/src/ui/timeline.ts +1041 -0
  830. package/packages/studio/src/ui/writeback.ts +10 -0
  831. package/packages/studio/src/ui/zoom.ts +129 -0
  832. package/packages/studio/start.ts +143 -0
  833. package/packages/studio-adapter/README.md +186 -0
  834. package/packages/studio-adapter/package.json +14 -0
  835. package/packages/studio-adapter/src/index.ts +850 -0
  836. package/packages/svs/README.md +37 -0
  837. package/packages/svs/package.json +21 -0
  838. package/packages/svs/src/activation.ts +11 -0
  839. package/packages/svs/src/format.ts +16 -0
  840. package/packages/svs/src/frontend.ts +33 -0
  841. package/packages/svs/src/index.ts +5 -0
  842. package/packages/svs/src/manifest.ts +17 -0
  843. package/packages/svs/src/parser.ts +279 -0
  844. package/packages/svs/src/types.ts +26 -0
  845. package/packages/temporal/README.md +31 -0
  846. package/packages/temporal/package.json +20 -0
  847. package/packages/temporal/src/activation.ts +9 -0
  848. package/packages/temporal/src/component.ts +68 -0
  849. package/packages/temporal/src/index.ts +110 -0
  850. package/packages/temporal/src/location.ts +67 -0
  851. package/packages/temporal/src/projection.ts +280 -0
  852. package/packages/temporal/src/rational.ts +80 -0
  853. package/packages/temporal/src/sample.ts +43 -0
  854. package/packages/temporal/src/schedule.ts +52 -0
  855. package/packages/temporal/src/types.ts +124 -0
  856. package/packages/temporal-markup/README.md +75 -0
  857. package/packages/temporal-markup/package.json +18 -0
  858. package/packages/temporal-markup/src/index.ts +537 -0
  859. package/packages/temporal-markup/src/space.ts +59 -0
  860. package/packages/text/README.md +59 -0
  861. package/packages/text/package.json +21 -0
  862. package/packages/text/src/activation.ts +33 -0
  863. package/packages/text/src/component.ts +72 -0
  864. package/packages/text/src/fragment.ts +57 -0
  865. package/packages/text/src/frontend.ts +39 -0
  866. package/packages/text/src/index.ts +27 -0
  867. package/packages/text/src/manifest.ts +170 -0
  868. package/packages/text/src/program.ts +418 -0
  869. package/packages/text/src/surface.ts +212 -0
  870. package/packages/text/src/svs.ts +189 -0
  871. package/packages/text/src/types.ts +82 -0
  872. package/packages/transport-aws-lambda/README.md +20 -0
  873. package/packages/transport-aws-lambda/package.json +14 -0
  874. package/packages/transport-aws-lambda/src/index.ts +131 -0
  875. package/packages/typography-track/README.md +50 -0
  876. package/packages/typography-track/package.json +34 -0
  877. package/packages/typography-track/preview/Mask.png +0 -0
  878. package/packages/typography-track/preview/Track.png +0 -0
  879. package/packages/typography-track/src/activation.ts +36 -0
  880. package/packages/typography-track/src/component.ts +93 -0
  881. package/packages/typography-track/src/fragment.ts +30 -0
  882. package/packages/typography-track/src/index.ts +11 -0
  883. package/packages/typography-track/src/manifest.ts +556 -0
  884. package/packages/typography-track/src/program.ts +622 -0
  885. package/packages/typography-track/src/surface.ts +842 -0
  886. package/packages/typography-track/src/types.ts +109 -0
  887. package/packages/typography-track-studio/README.md +3 -0
  888. package/packages/typography-track-studio/package.json +14 -0
  889. package/packages/typography-track-studio/src/activation.ts +7 -0
  890. package/packages/typography-track-studio/src/index.ts +116 -0
  891. package/packages/validation/README.md +11 -0
  892. package/packages/validation/package.json +15 -0
  893. package/packages/validation/src/index.ts +100 -0
  894. package/packages/video-cli/README.md +181 -0
  895. package/packages/video-cli/package.json +37 -0
  896. package/packages/video-cli/src/capture.ts +174 -0
  897. package/packages/video-cli/src/cli.ts +109 -0
  898. package/packages/video-cli/src/compiler.ts +32 -0
  899. package/packages/video-cli/src/creation.ts +449 -0
  900. package/packages/video-cli/src/distribution.ts +88 -0
  901. package/packages/video-cli/src/index.ts +50 -0
  902. package/packages/video-cli/src/media.ts +701 -0
  903. package/packages/video-cli/src/package-selection.ts +34 -0
  904. package/packages/video-cli/src/process.ts +71 -0
  905. package/packages/video-cli/src/studio-distribution.ts +19 -0
  906. package/packages/video-cli/src/transcript.ts +71 -0
  907. package/packages/video-cli/src/vocabulary.ts +386 -0
  908. package/packages/visual-ir/README.md +36 -0
  909. package/packages/visual-ir/package.json +16 -0
  910. package/packages/visual-ir/src/activation.ts +3 -0
  911. package/packages/visual-ir/src/index.ts +7 -0
  912. package/packages/visual-ir/src/style.ts +222 -0
  913. package/packages/volcengine-matting/README.md +89 -0
  914. package/packages/volcengine-matting/package.json +16 -0
  915. package/packages/volcengine-matting/src/activation.ts +13 -0
  916. package/packages/volcengine-matting/src/index.ts +45 -0
  917. package/packages/volcengine-matting/src/surface.ts +48 -0
  918. package/packages/whisperx/README.md +34 -0
  919. package/packages/whisperx/package.json +28 -0
  920. package/packages/whisperx/src/activation.ts +18 -0
  921. package/packages/whisperx/src/component.ts +64 -0
  922. package/packages/whisperx/src/evidence.ts +69 -0
  923. package/packages/whisperx/src/fragment.ts +76 -0
  924. package/packages/whisperx/src/index.ts +14 -0
  925. package/packages/whisperx/src/manifest.ts +92 -0
  926. package/packages/whisperx/src/surface.ts +90 -0
  927. package/packages/whisperx/src/transcript.ts +97 -0
  928. package/packages/whisperx/src/types.ts +9 -0
  929. package/packages/workspace/README.md +4 -0
  930. package/packages/workspace/package.json +14 -0
  931. package/packages/workspace/src/index.ts +38 -0
  932. package/packages/workspace-fs-node/README.md +13 -0
  933. package/packages/workspace-fs-node/package.json +15 -0
  934. package/packages/workspace-fs-node/src/index.ts +6 -0
  935. package/packages/workspace-fs-node/src/workspace.ts +226 -0
  936. package/packages/yt-dlp/README.md +31 -0
  937. package/packages/yt-dlp/package.json +10 -0
  938. package/packages/yt-dlp/src/download.ts +104 -0
  939. package/packages/yt-dlp/src/index.ts +1 -0
  940. package/services/image-opencv/README.md +33 -0
  941. package/services/image-opencv/package.json +14 -0
  942. package/services/image-opencv/pyproject.toml +13 -0
  943. package/services/image-opencv/uv.lock +56 -0
  944. package/services/whisperx/README.md +82 -0
  945. package/services/whisperx/package.json +15 -0
  946. package/services/whisperx/pyproject.toml +26 -0
  947. package/services/whisperx/src/hypit_whisperx_service/__init__.py +6 -0
  948. package/services/whisperx/src/hypit_whisperx_service/__main__.py +29 -0
  949. package/services/whisperx/src/hypit_whisperx_service/application.py +88 -0
  950. package/services/whisperx/src/hypit_whisperx_service/audio.py +66 -0
  951. package/services/whisperx/src/hypit_whisperx_service/check.py +35 -0
  952. package/services/whisperx/src/hypit_whisperx_service/config.py +81 -0
  953. package/services/whisperx/src/hypit_whisperx_service/engine.py +173 -0
  954. package/services/whisperx/src/hypit_whisperx_service/prepare.py +19 -0
  955. package/services/whisperx/src/hypit_whisperx_service/resources.py +41 -0
  956. package/services/whisperx/src/hypit_whisperx_service/server.py +101 -0
  957. package/services/whisperx/uv.lock +3381 -0
  958. package/services/yt-dlp/README.md +19 -0
  959. package/services/yt-dlp/package.json +14 -0
  960. package/services/yt-dlp/pyproject.toml +13 -0
  961. package/services/yt-dlp/uv.lock +23 -0
  962. package/index.js +0 -1
@@ -0,0 +1,850 @@
1
+ import type { HostFacet } from "@hypit/host";
2
+ import { sameType } from "@hypit/protocol";
3
+ import type { CanonicalValue, ModuleRef, TypeRef, ValueSchema } from "@hypit/protocol";
4
+
5
+ export const studioCompanionHostAbi = "hypit.studio-adapter@1";
6
+
7
+ /** UTF-16 offsets into the exact author source. */
8
+ export type Range = { readonly start: number; readonly end: number };
9
+
10
+ export type StudioTrackFamily = string;
11
+ export type StudioIcon =
12
+ | "brand"
13
+ | "captions"
14
+ | "component"
15
+ | "layers"
16
+ | "ranking"
17
+ | "text"
18
+ | "timeline"
19
+ | "video"
20
+ | "waveform";
21
+ /** Studio-owned visual palette. Domain families never become CSS selectors. */
22
+ export type StudioTimelineTone =
23
+ | "blue"
24
+ | "green"
25
+ | "teal"
26
+ | "violet"
27
+ | "magenta"
28
+ | "orange"
29
+ | "orange-muted"
30
+ | "neutral";
31
+
32
+ export type StudioTimelinePresentation = {
33
+ readonly entity: string;
34
+ /** Studio-owned shell. It never decides whether title, time or body exists. */
35
+ readonly chrome: "standard" | "group" | "point";
36
+ };
37
+
38
+ export type StudioTemporalSource = {
39
+ readonly spaceId: string;
40
+ readonly narrativeId?: string;
41
+ readonly kind: "program" | "selection" | "segment" | "moment";
42
+ readonly id: string;
43
+ };
44
+
45
+ export type StudioTemporalAuthority =
46
+ | {
47
+ readonly kind: "semantic";
48
+ readonly source: StudioTemporalSource;
49
+ readonly boundary: "start" | "end" | "cue";
50
+ }
51
+ | {
52
+ readonly kind: "parameter";
53
+ readonly binding: string;
54
+ readonly relation: "direct" | "after-start" | "before-end";
55
+ }
56
+ | { readonly kind: "fixed" };
57
+
58
+ export type StudioTemporalInstantProjection = {
59
+ readonly kind: "instant";
60
+ readonly expression: string;
61
+ readonly reference:
62
+ | "program.start" | "program.end"
63
+ | "selection.start" | "selection.end"
64
+ | "segment.start" | "segment.end"
65
+ | "moment.cue" | "absolute";
66
+ readonly frame: number;
67
+ readonly source: StudioTemporalSource;
68
+ readonly authority: StudioTemporalAuthority;
69
+ };
70
+
71
+ export type StudioTemporalWindowProjection = {
72
+ readonly kind: "window";
73
+ readonly start: StudioTemporalInstantProjection;
74
+ readonly end: StudioTemporalInstantProjection;
75
+ readonly startFrame: number;
76
+ readonly endFrameExclusive: number;
77
+ };
78
+
79
+ export type StudioTemporalProjection = StudioTemporalInstantProjection | StudioTemporalWindowProjection;
80
+
81
+ export type StudioTemporalPhase = {
82
+ readonly id: string;
83
+ readonly label: string;
84
+ readonly role: "preferred" | "active" | "settled" | "enter" | "body" | "exit";
85
+ readonly startFrame: number;
86
+ readonly endFrameExclusive: number;
87
+ };
88
+
89
+ export type StudioTemporalLineage = {
90
+ readonly projection: StudioTemporalProjection;
91
+ readonly phases: readonly StudioTemporalPhase[];
92
+ };
93
+
94
+ export type StudioTemporalConsumerInput = {
95
+ readonly name: string;
96
+ readonly record: string;
97
+ readonly type: { readonly module: { readonly name: string; readonly version: string }; readonly name: string };
98
+ readonly value?: unknown;
99
+ };
100
+
101
+ export type StudioTemporalConsumer = {
102
+ readonly step: string;
103
+ readonly producer: { readonly module: { readonly name: string; readonly version: string }; readonly name: string };
104
+ readonly input: string;
105
+ /** Projection plumbing is classified by Studio's graph reader, never by a Companion name guess. */
106
+ readonly role: "projection" | "domain";
107
+ readonly inputs: readonly StudioTemporalConsumerInput[];
108
+ };
109
+
110
+ /** One executed Instant/Window and the graph edges that consumed that exact record. */
111
+ export type StudioTemporalBinding = {
112
+ readonly record: string;
113
+ readonly subjectId: string;
114
+ readonly id: string;
115
+ readonly projection: StudioTemporalProjection;
116
+ readonly consumers: readonly StudioTemporalConsumer[];
117
+ };
118
+
119
+ export const studioParameterControls = [
120
+ "text", "number", "boolean", "select", "color", "list", "record",
121
+ ] as const;
122
+ export type StudioParameterControl = typeof studioParameterControls[number];
123
+ export type StudioParameterLanguage = "svml" | "svs" | "svrun";
124
+
125
+ /** A real author endpoint. Its existence never implies Inspector visibility. */
126
+ export type StudioSourceBinding = {
127
+ readonly id: string;
128
+ /** Companion-owned path, stable across source files and projected entities. */
129
+ readonly binding: string;
130
+ /** Author vocabulary name at the terminal source element. */
131
+ readonly name: string;
132
+ readonly value: CanonicalValue;
133
+ /** Public author value structure; absent only for legacy scalar bindings. */
134
+ readonly schema?: ValueSchema;
135
+ readonly language: StudioParameterLanguage;
136
+ readonly writable: boolean;
137
+ readonly source: {
138
+ /** Exact compilation-local author endpoint when the Frontend supplied one. */
139
+ readonly endpoint?: string;
140
+ readonly path: string;
141
+ readonly range: Range;
142
+ readonly preimage: string;
143
+ /** Generic syntax framing used only when an absent author property is first materialized. */
144
+ readonly prefix?: string;
145
+ readonly suffix?: string;
146
+ };
147
+ readonly disabledReason?: string;
148
+ };
149
+
150
+ export type StudioInspectorDomain = "where" | "how" | "when";
151
+
152
+ export type StudioInspectorPageDeclaration = {
153
+ readonly id: string;
154
+ readonly label: string;
155
+ };
156
+
157
+ export type StudioInspectorSectionDeclaration = {
158
+ readonly id: string;
159
+ readonly label: string;
160
+ };
161
+
162
+ /** One visible, writable field selected from a Companion's source bindings. */
163
+ export type StudioInspectorFieldDeclaration = {
164
+ readonly binding: string;
165
+ readonly label: string;
166
+ readonly domain: StudioInspectorDomain;
167
+ /** Omit for a domain with one unlabelled page. */
168
+ readonly page?: StudioInspectorPageDeclaration;
169
+ readonly section: StudioInspectorSectionDeclaration;
170
+ readonly summary?: string;
171
+ /** Omit when the binding's public schema selects the finite Studio control. */
172
+ readonly control?: StudioParameterControl;
173
+ readonly options?: readonly string[];
174
+ readonly unit?: string;
175
+ };
176
+
177
+ /** Resolved Inspector DTO. Studio renders it and executes its exact source write. */
178
+ export type StudioInspectorField = Omit<StudioInspectorFieldDeclaration, "control"> & {
179
+ readonly id: string;
180
+ readonly control: StudioParameterControl;
181
+ readonly value: CanonicalValue;
182
+ readonly schema?: ValueSchema;
183
+ readonly language: StudioParameterLanguage;
184
+ readonly source: StudioSourceBinding["source"];
185
+ };
186
+
187
+ /** Companion-owned source allowlist. It contains no editor presentation. */
188
+ export type StudioSourceBindingDeclaration = {
189
+ readonly name: string;
190
+ readonly writable?: boolean;
191
+ readonly schema?: ValueSchema;
192
+ /** Optional declaration for the authored element named by a reference. */
193
+ readonly referenced?: readonly StudioSourceBindingDeclaration[];
194
+ /**
195
+ * Companion-owned source allowlist for the SVS Recipe reached through this
196
+ * reference. Inspector presentation is declared separately.
197
+ */
198
+ readonly recipe?: StudioRecipeReferenceBindingDeclaration;
199
+ };
200
+
201
+ /** An explicit reference path from one author input to one SVS Recipe. */
202
+ export type StudioRecipeReferenceBindingDeclaration = {
203
+ /** Reference-valued attributes followed on local authored elements, in order. */
204
+ readonly through?: readonly string[];
205
+ /** Package-owned source allowlist for properties of the reached Recipe. */
206
+ readonly bindings: readonly StudioRecipeBindingDeclaration[];
207
+ };
208
+
209
+ export type StudioRecipeBindingDeclaration = {
210
+ readonly name: string;
211
+ readonly writable?: boolean;
212
+ /** Domain-owned public Recipe value structure, never editor presentation. */
213
+ readonly schema?: ValueSchema;
214
+ /** Typed public fallback; Studio writes the property only after the author changes it. */
215
+ readonly fallback?: CanonicalValue;
216
+ };
217
+
218
+ export type StudioTimelineGesture =
219
+ | "move"
220
+ | "trim-start"
221
+ | "trim-end";
222
+
223
+ export type StudioEditCoordinate =
224
+ | "program-frame"
225
+ | "semantic-anchor"
226
+ | "source-frame"
227
+ | "canvas-pixel"
228
+ | "normalized-progress";
229
+
230
+ export type StudioSnapTarget = "frame" | "semantic-anchor" | "item-edge";
231
+
232
+ export type StudioEditSourceRole = "start" | "end" | "duration" | "frame" | "x" | "y";
233
+
234
+ export type StudioEditSource = {
235
+ readonly role: StudioEditSourceRole;
236
+ readonly source: StudioSourceBinding["source"];
237
+ };
238
+
239
+ export type StudioSemanticEditTarget =
240
+ | {
241
+ readonly kind: "selection";
242
+ readonly narrativeId: string;
243
+ readonly id: string;
244
+ readonly startAnchorId: string;
245
+ readonly endAnchorId: string;
246
+ }
247
+ | {
248
+ readonly kind: "moment";
249
+ readonly narrativeId: string;
250
+ readonly id: string;
251
+ readonly anchorId: string;
252
+ };
253
+
254
+ /** A timeline affordance is present only when its source write is explicit. */
255
+ export type StudioEditHandle = {
256
+ readonly id: string;
257
+ readonly operation: "timeline.adjust";
258
+ readonly gesture: StudioTimelineGesture;
259
+ readonly enabled: boolean;
260
+ /** Coordinate space in which the central gesture resolver measures intent. */
261
+ readonly coordinate?: StudioEditCoordinate;
262
+ /** How moving a semantic Point changes the visible entity before recompilation. */
263
+ readonly moveEffect?: "translate-window" | "move-start";
264
+ /** Snap policy is data, not a timeline-wide guess. */
265
+ readonly snapTo?: readonly StudioSnapTarget[];
266
+ readonly sources?: readonly StudioEditSource[];
267
+ /** Shared Script identity adjusted by this rectangle; every consumer follows it. */
268
+ readonly semantic?: StudioSemanticEditTarget;
269
+ /** Exact endpoint authority used to validate and execute this inverse. */
270
+ readonly temporal?: StudioTemporalProjection;
271
+ readonly disabledReason?: string;
272
+ };
273
+
274
+ /** A source descriptor; Companion packages never depend on Studio's HTTP routes. */
275
+ export type StudioPreviewSource =
276
+ | { readonly kind: "artifact"; readonly resource: string }
277
+ | {
278
+ readonly kind: "surface-preview";
279
+ readonly module: string;
280
+ readonly version: string;
281
+ readonly surface: string;
282
+ };
283
+
284
+ export type StudioMaterialPreview = {
285
+ readonly kind: "image" | "video" | "audio";
286
+ readonly source: StudioPreviewSource;
287
+ };
288
+
289
+ /** Finite, composable timeline body vocabulary owned by Studio. */
290
+ export type StudioDisplayLayer =
291
+ | {
292
+ readonly kind: "text";
293
+ readonly role: "content";
294
+ readonly text: string;
295
+ }
296
+ | {
297
+ readonly kind: "preview";
298
+ readonly role: "decoration" | "content";
299
+ readonly preview: StudioMaterialPreview;
300
+ readonly layout: "repeat-x" | "cover" | "contain" | "storyboard" | "waveform";
301
+ };
302
+
303
+ export type StudioEntityDisplay = {
304
+ /** First row. Studio always places computed time immediately after it. */
305
+ readonly title: string;
306
+ /** Ordered back-to-front body layers. */
307
+ readonly layers: readonly StudioDisplayLayer[];
308
+ };
309
+
310
+ export type StudioLaneDescription = {
311
+ readonly heightPx: number;
312
+ readonly groupId?: string;
313
+ readonly attachedTo?: string;
314
+ readonly order?: number;
315
+ };
316
+
317
+ export type StudioCandidateProvenance = {
318
+ readonly output: string;
319
+ readonly outputRef?: string;
320
+ readonly candidateId?: string;
321
+ readonly origin: "run" | "source" | "none";
322
+ readonly status: "resolved" | "unresolved";
323
+ readonly errors: readonly string[];
324
+ };
325
+
326
+ export type StudioSemanticAnchor = {
327
+ readonly id: string;
328
+ readonly kind: "program-start" | "segment-start" | "segment-end" | "token-start" | "token-end" | "program-end";
329
+ readonly frame: number;
330
+ readonly segmentId?: string;
331
+ readonly tokenId?: string;
332
+ };
333
+
334
+ export type StudioSemanticSegment = {
335
+ readonly id: string;
336
+ readonly startFrame: number;
337
+ readonly endFrameExclusive: number;
338
+ readonly range?: Range;
339
+ };
340
+
341
+ export type StudioSemanticToken = {
342
+ readonly id: string;
343
+ readonly segmentId: string;
344
+ readonly text: string;
345
+ readonly startFrame: number;
346
+ readonly endFrameExclusive: number;
347
+ readonly range?: Range;
348
+ };
349
+
350
+ export type StudioSemanticTimeline = {
351
+ readonly spaceId: string;
352
+ readonly narrativeId: string;
353
+ readonly presentation: {
354
+ readonly family: StudioTrackFamily;
355
+ readonly tone: StudioTimelineTone;
356
+ readonly label?: string;
357
+ readonly icon: StudioIcon;
358
+ readonly lane: StudioLaneDescription;
359
+ };
360
+ readonly anchors: readonly StudioSemanticAnchor[];
361
+ readonly segments: readonly StudioSemanticSegment[];
362
+ readonly tokens: readonly StudioSemanticToken[];
363
+ readonly selections: readonly {
364
+ readonly id: string;
365
+ readonly startAnchorId: string;
366
+ readonly endAnchorId: string;
367
+ readonly startFrame: number;
368
+ readonly endFrameExclusive: number;
369
+ }[];
370
+ readonly moments: readonly {
371
+ readonly id: string;
372
+ readonly anchorId: string;
373
+ readonly frame: number;
374
+ }[];
375
+ readonly provenance: StudioCandidateProvenance;
376
+ };
377
+
378
+ export type StudioObservedValue = {
379
+ readonly id: string;
380
+ readonly type: { readonly module: { readonly name: string; readonly version: string }; readonly name: string };
381
+ readonly value: unknown;
382
+ };
383
+
384
+ export type StudioPlacementChild = {
385
+ /** Exact compilation-local author element identity from AuthorProvenance. */
386
+ readonly authorElement?: string;
387
+ readonly authorEndpoints?: Readonly<Record<string, string>>;
388
+ readonly sourcePath: string;
389
+ readonly tag: string;
390
+ readonly id?: string;
391
+ readonly range: Range;
392
+ readonly attributes: Readonly<Record<string, string>>;
393
+ readonly attributeValueRanges: Readonly<Record<string, Range>>;
394
+ readonly references: readonly string[];
395
+ readonly referenceAttributes: Readonly<Record<string, string>>;
396
+ /** Resolved graph refs keyed by author input; raw written paths remain above. */
397
+ readonly resolvedReferenceAttributes?: Readonly<Record<string, string>>;
398
+ readonly referenceTypes: Readonly<Record<string, string>>;
399
+ readonly values: readonly StudioObservedValue[];
400
+ readonly records?: readonly string[];
401
+ readonly outputs?: readonly string[];
402
+ };
403
+
404
+ export type StudioPlacement = {
405
+ /** Exact compilation-local author element identity from AuthorProvenance. */
406
+ readonly authorElement?: string;
407
+ readonly authorEndpoints?: Readonly<Record<string, string>>;
408
+ readonly sourcePath: string;
409
+ readonly tag: string;
410
+ readonly module: { readonly name: string; readonly version: string };
411
+ readonly surface: string;
412
+ readonly id?: string;
413
+ readonly range: Range;
414
+ readonly records: readonly string[];
415
+ readonly values: readonly StudioObservedValue[];
416
+ readonly outputs: readonly string[];
417
+ readonly outputPorts: readonly { readonly name: string; readonly ref: string }[];
418
+ readonly children: readonly StudioPlacementChild[];
419
+ readonly attributes: Readonly<Record<string, string>>;
420
+ readonly attributeValueRanges: Readonly<Record<string, Range>>;
421
+ readonly referenceAttributes: Readonly<Record<string, string>>;
422
+ /** Resolved graph refs keyed by author input; raw written paths remain above. */
423
+ readonly resolvedReferenceAttributes?: Readonly<Record<string, string>>;
424
+ readonly referenceTypes: Readonly<Record<string, string>>;
425
+ readonly references: readonly string[];
426
+ };
427
+
428
+ export type StudioTrackTrace = {
429
+ readonly placement?: string;
430
+ readonly surface?: string;
431
+ readonly module?: ModuleRef;
432
+ readonly authoredId?: string;
433
+ readonly outputPorts: readonly {
434
+ readonly name: string;
435
+ readonly ref: string;
436
+ readonly type?: string;
437
+ readonly typeRef?: TypeRef;
438
+ }[];
439
+ readonly references: readonly {
440
+ /** Exact authored input attribute when this is a direct Surface reference. */
441
+ readonly input?: string;
442
+ readonly name: string;
443
+ readonly ref: string;
444
+ readonly type: string;
445
+ readonly typeRef: TypeRef;
446
+ }[];
447
+ };
448
+
449
+ /** Stable data view supplied to Companions; no Studio implementation object crosses the ABI. */
450
+ export type StudioResolvedTrack = {
451
+ readonly name: string;
452
+ /** Short display name retained for diagnostics and UI only. */
453
+ readonly type: string;
454
+ /** Exact protocol identity used for every Companion decision. */
455
+ readonly typeRef: TypeRef;
456
+ readonly outputRef: string;
457
+ readonly candidateId?: string;
458
+ readonly candidateOrigin: "run" | "source" | "none";
459
+ readonly role: StudioViewRole;
460
+ readonly trace: StudioTrackTrace;
461
+ readonly surfacePreview?: StudioMaterialPreview;
462
+ readonly value: unknown;
463
+ };
464
+
465
+ export type StudioViewRole =
466
+ | "semantic-track"
467
+ | "supporting-value"
468
+ | "track";
469
+
470
+ export type StudioSpan = {
471
+ readonly id: string;
472
+ /** Exact public terminal provenance; never inferred from id syntax. */
473
+ readonly subjectId?: string;
474
+ readonly startFrame: number;
475
+ readonly endFrameExclusive: number;
476
+ readonly stackOrder: number;
477
+ };
478
+
479
+ export type StudioEntityDraft = {
480
+ readonly id: string;
481
+ readonly authoredId: string;
482
+ readonly display: StudioEntityDisplay;
483
+ readonly startFrame: number;
484
+ readonly endFrameExclusive: number;
485
+ readonly stackOrder: number;
486
+ readonly elementRange?: Range;
487
+ readonly markerId?: string;
488
+ readonly presentId?: string;
489
+ readonly renderIds?: readonly string[];
490
+ /** Resolved author references that differ per derived entity, such as one Cue's actual Style. */
491
+ readonly parameterReferences?: Readonly<Record<string, string>>;
492
+ readonly presentation?: StudioTimelinePresentation;
493
+ readonly temporal?: StudioTemporalLineage;
494
+ /** Studio-local lane partition; omitted means the root lane. */
495
+ readonly lane?: string;
496
+ };
497
+
498
+ export type StudioTrackCompanionContext = {
499
+ readonly track: StudioResolvedTrack;
500
+ readonly placement?: StudioPlacement;
501
+ /** Package-owned Surface preview resolved by Studio from the selected domain. */
502
+ readonly surfacePreview?: StudioMaterialPreview;
503
+ readonly spans: readonly StudioSpan[];
504
+ readonly values: ReadonlyMap<string, unknown>;
505
+ /** Temporal values in this Track's actual executed dependency closure. */
506
+ readonly temporalBindings: readonly StudioTemporalBinding[];
507
+ readonly semantic: StudioSemanticTimeline | undefined;
508
+ readonly generic: () => readonly StudioEntityDraft[];
509
+ };
510
+
511
+ export type StudioTrackCompanion = {
512
+ readonly id: string;
513
+ readonly role: StudioViewRole;
514
+ readonly output: {
515
+ readonly type: TypeRef;
516
+ readonly surface?: string;
517
+ readonly modules?: readonly ModuleRef[];
518
+ readonly siblingType?: TypeRef;
519
+ };
520
+ readonly family?: StudioTrackFamily;
521
+ /** Visual token selected from Studio's finite palette. */
522
+ readonly tone?: StudioTimelineTone;
523
+ readonly label?: string;
524
+ readonly icon?: StudioIcon;
525
+ /** Opts root timeline entities into the component's package-owned Surface preview. */
526
+ readonly poster?: { readonly source: "surface-preview" };
527
+ readonly attachments?: readonly StudioLaneAttachment[];
528
+ /** Same-Surface output values required to project this Track for Studio. */
529
+ readonly requiredValues?: readonly string[];
530
+ readonly lane?: StudioLaneDescription;
531
+ /** Exact author endpoints required by Inspector fields or timeline inverses. */
532
+ readonly bindings?: readonly StudioSourceBindingDeclaration[];
533
+ /** Visible field table. Undeclared bindings remain invisible. */
534
+ readonly inspector?: readonly StudioInspectorFieldDeclaration[];
535
+ readonly project?: (context: StudioTrackCompanionContext) => readonly StudioEntityDraft[];
536
+ };
537
+
538
+ export type StudioCompanionContribution = {
539
+ readonly format: "hypit.studio-companions@1";
540
+ readonly tracks: readonly StudioTrackCompanion[];
541
+ readonly films?: readonly StudioFilmCompanion[];
542
+ readonly scripts?: readonly StudioScriptCompanion[];
543
+ };
544
+
545
+ /** Declarative Film boundary. Studio follows only the references named here. */
546
+ export type StudioFilmCompanion = {
547
+ readonly id: string;
548
+ readonly match: {
549
+ readonly module: ModuleRef;
550
+ readonly surface: string;
551
+ readonly outputType: TypeRef;
552
+ };
553
+ readonly timeSources: readonly { readonly attribute: string; readonly type: TypeRef }[];
554
+ readonly tracks: {
555
+ readonly childSurface: string;
556
+ readonly sourceAttribute: string;
557
+ readonly types: readonly TypeRef[];
558
+ };
559
+ };
560
+
561
+ export type StudioScriptSourceMap = {
562
+ readonly companion: string;
563
+ readonly narrativeId: string;
564
+ readonly sourcePath: string;
565
+ readonly range: Range;
566
+ readonly content: Range;
567
+ readonly segments: readonly { readonly id: string; readonly range: Range }[];
568
+ readonly selections: readonly {
569
+ readonly id: string;
570
+ readonly startAnchorId: string;
571
+ readonly endAnchorId: string;
572
+ readonly open: Range;
573
+ readonly close: Range;
574
+ }[];
575
+ readonly moments: readonly { readonly id: string; readonly anchorId: string; readonly range: Range }[];
576
+ readonly tokens: readonly { readonly id: string; readonly range: Range }[];
577
+ };
578
+
579
+ export type StudioScriptAdjustment =
580
+ | { readonly kind: "selection"; readonly id: string; readonly startAnchorId: string; readonly endAnchorId: string }
581
+ | { readonly kind: "moment"; readonly id: string; readonly anchorId: string };
582
+
583
+ /** Script grammar companion. It owns source observation and semantic inverse edits. */
584
+ export type StudioScriptCompanion = {
585
+ readonly id: string;
586
+ readonly match: { readonly module: ModuleRef; readonly surface: string };
587
+ readonly observe: (input: {
588
+ readonly sourceName: string;
589
+ readonly source: string;
590
+ readonly tag: string;
591
+ readonly openingStart: number;
592
+ readonly contentStart: number;
593
+ /** Authoritative end returned by the raw Surface after it parsed its own grammar. */
594
+ readonly nextOffset?: number;
595
+ readonly attributes: Readonly<Record<string, unknown>>;
596
+ }) => Omit<StudioScriptSourceMap, "companion"> | undefined;
597
+ readonly adjust: (input: {
598
+ readonly sourceName: string;
599
+ readonly source: string;
600
+ readonly adjustment: StudioScriptAdjustment;
601
+ }) => string;
602
+ };
603
+
604
+ export type StudioCompanionHostFacet = HostFacet & {
605
+ readonly abi: typeof studioCompanionHostAbi;
606
+ readonly implementation: StudioCompanionContribution;
607
+ };
608
+
609
+ export function createStudioTrackCompanionHostFacet(tracks: readonly StudioTrackCompanion[]): StudioCompanionHostFacet {
610
+ return {
611
+ abi: studioCompanionHostAbi,
612
+ implementation: { format: "hypit.studio-companions@1", tracks },
613
+ };
614
+ }
615
+
616
+ export function createStudioCompanionHostFacet(input: {
617
+ readonly tracks?: readonly StudioTrackCompanion[];
618
+ readonly films?: readonly StudioFilmCompanion[];
619
+ readonly scripts?: readonly StudioScriptCompanion[];
620
+ }): StudioCompanionHostFacet {
621
+ return {
622
+ abi: studioCompanionHostAbi,
623
+ implementation: {
624
+ format: "hypit.studio-companions@1",
625
+ tracks: input.tracks ?? [],
626
+ ...(input.films === undefined ? {} : { films: input.films }),
627
+ ...(input.scripts === undefined ? {} : { scripts: input.scripts }),
628
+ },
629
+ };
630
+ }
631
+
632
+ export type StudioPackageContribution = {
633
+ readonly tracks: readonly StudioTrackCompanion[];
634
+ readonly films: readonly StudioFilmCompanion[];
635
+ readonly scripts: readonly StudioScriptCompanion[];
636
+ };
637
+
638
+ function qualify(owner: string, local: string, subject: string): string {
639
+ if (local.length === 0 || local.includes("#")) {
640
+ throw new Error(`${subject} ids are package-local names without '#': ${owner}#${local}`);
641
+ }
642
+ return `${owner}#${local}`;
643
+ }
644
+
645
+ export function studioContributionFromPackage(
646
+ owner: string,
647
+ facets: readonly HostFacet[],
648
+ ): StudioPackageContribution {
649
+ if (owner.length === 0 || owner.includes("#")) throw new Error(`Invalid Studio companion package identity: ${owner}`);
650
+ const tracks: StudioTrackCompanion[] = [];
651
+ const films: StudioFilmCompanion[] = [];
652
+ const scripts: StudioScriptCompanion[] = [];
653
+ for (const facet of facets) {
654
+ if (facet.abi !== studioCompanionHostAbi) continue;
655
+ const contribution = facet.implementation as Partial<StudioCompanionContribution>;
656
+ if (contribution.format !== "hypit.studio-companions@1" || !Array.isArray(contribution.tracks)) {
657
+ throw new Error(`Studio companion facet from ${owner} has an invalid contribution`);
658
+ }
659
+ tracks.push(...contribution.tracks.map((track) => ({
660
+ ...track,
661
+ id: qualify(owner, track.id, "Studio Track companion"),
662
+ })));
663
+ films.push(...(contribution.films ?? []).map((film) => ({
664
+ ...film,
665
+ id: qualify(owner, film.id, "Studio Film companion"),
666
+ })));
667
+ scripts.push(...(contribution.scripts ?? []).map((script) => ({
668
+ ...script,
669
+ id: qualify(owner, script.id, "Studio Script companion"),
670
+ })));
671
+ }
672
+ return { tracks, films, scripts };
673
+ }
674
+
675
+ /**
676
+ * Qualify package-local Companion names with identity established by the package loader.
677
+ * The executable facet cannot choose or impersonate its physical owner.
678
+ */
679
+ export function studioTrackCompanionsFromPackage(
680
+ owner: string,
681
+ facets: readonly HostFacet[],
682
+ ): readonly StudioTrackCompanion[] {
683
+ return studioContributionFromPackage(owner, facets).tracks;
684
+ }
685
+
686
+ export type StudioLaneAttachment = {
687
+ readonly id: string;
688
+ readonly family: StudioTrackFamily;
689
+ readonly tone?: StudioTimelineTone;
690
+ readonly label?: string;
691
+ readonly icon: StudioIcon;
692
+ readonly facet: "visual" | "audio";
693
+ readonly lane: StudioLaneDescription;
694
+ readonly bindings?: readonly StudioSourceBindingDeclaration[];
695
+ readonly inspector?: readonly StudioInspectorFieldDeclaration[];
696
+ };
697
+
698
+ export function sameSurfaceValue(context: StudioTrackCompanionContext, port: string): unknown {
699
+ const ref = context.track.trace.outputPorts.find((candidate) => candidate.name === port)?.ref;
700
+ return ref === undefined ? undefined : context.values.get(ref);
701
+ }
702
+
703
+ export function requiredSurfaceValue(context: StudioTrackCompanionContext, port: string): unknown {
704
+ const value = sameSurfaceValue(context, port);
705
+ if (value === undefined) {
706
+ throw new Error(`Studio Companion ${context.track.type} requires same-Surface value port ${port}`);
707
+ }
708
+ return value;
709
+ }
710
+
711
+ /** Resolve one direct authored reference by input name and exact public TypeRef. */
712
+ export function requiredReferencedValue(
713
+ context: StudioTrackCompanionContext,
714
+ input: string,
715
+ type: TypeRef,
716
+ ): unknown {
717
+ const found = context.track.trace.references.filter((reference) =>
718
+ reference.input === input && sameType(reference.typeRef, type));
719
+ if (found.length !== 1) {
720
+ throw new Error(`Studio Companion ${context.track.type} requires one ${input} reference of type ${type.module.name}@${type.module.version}#${type.name}`);
721
+ }
722
+ const value = context.values.get(found[0]!.ref);
723
+ if (value === undefined) {
724
+ throw new Error(`Studio Companion ${context.track.type} cannot resolve referenced value ${found[0]!.ref}`);
725
+ }
726
+ return value;
727
+ }
728
+
729
+ export function artifactPreview(
730
+ kind: StudioMaterialPreview["kind"],
731
+ resource: string,
732
+ ): StudioMaterialPreview {
733
+ return { kind, source: { kind: "artifact", resource } };
734
+ }
735
+
736
+ export function previewLayer(
737
+ preview: StudioMaterialPreview,
738
+ layout: Extract<StudioDisplayLayer, { readonly kind: "preview" }>["layout"],
739
+ role: Extract<StudioDisplayLayer, { readonly kind: "preview" }>["role"] = "content",
740
+ ): StudioDisplayLayer {
741
+ return { kind: "preview", role, preview, layout };
742
+ }
743
+
744
+ export function textLayer(text: string): StudioDisplayLayer {
745
+ return { kind: "text", role: "content", text };
746
+ }
747
+
748
+ /** Find the executed projection that explicitly names this domain entity as its subject. */
749
+ export function temporalBindingsFor(
750
+ context: StudioTrackCompanionContext,
751
+ subjectId: string,
752
+ input?: string,
753
+ ): readonly StudioTemporalBinding[] {
754
+ return context.temporalBindings.filter((binding) =>
755
+ binding.subjectId === subjectId
756
+ && binding.consumers.some((consumer) =>
757
+ consumer.role === "domain"
758
+ && (input === undefined || consumer.input === input)));
759
+ }
760
+
761
+ /** Find the exact authored child whose typed public value owns a projected identity. */
762
+ export function authoredChildFor(
763
+ context: StudioTrackCompanionContext,
764
+ authoredId: string,
765
+ types: readonly TypeRef[],
766
+ ): StudioPlacementChild | undefined {
767
+ const children = context.placement?.children ?? [];
768
+ const explicit = children.filter((child) => child.id === authoredId);
769
+ const typed = children.filter((child) => child.values.some((observed) =>
770
+ types.some((type) => sameType(observed.type, type))
771
+ && observed.value !== null
772
+ && typeof observed.value === "object"
773
+ && !Array.isArray(observed.value)
774
+ && (observed.value as { readonly id?: unknown }).id === authoredId));
775
+ const found = [...new Set([...explicit, ...typed])];
776
+ if (found.length > 1) throw new Error(`Studio authored child identity ${authoredId} is ambiguous.`);
777
+ return found[0];
778
+ }
779
+
780
+ export function temporalLineageFor(
781
+ context: StudioTrackCompanionContext,
782
+ subjectId: string,
783
+ input?: string,
784
+ ): StudioTemporalLineage | undefined {
785
+ const found = temporalBindingsFor(context, subjectId, input);
786
+ if (found.length > 1) {
787
+ throw new Error(`Studio Temporal lineage is ambiguous for ${subjectId}${input === undefined ? "" : ` at ${input}`}.`);
788
+ }
789
+ const binding = found[0];
790
+ return binding === undefined ? undefined : {
791
+ projection: binding.projection,
792
+ phases: [],
793
+ };
794
+ }
795
+
796
+ /** Unique semantic author identity carried by one projection, when there is one. */
797
+ export function temporalSemanticSource(lineage: StudioTemporalLineage | undefined): StudioTemporalSource | undefined {
798
+ if (lineage === undefined) return undefined;
799
+ const projection = lineage.projection;
800
+ const endpoints = projection.kind === "instant" ? [projection] : [projection.start, projection.end];
801
+ const semantic = endpoints.flatMap((endpoint) => endpoint.authority.kind === "semantic"
802
+ ? [endpoint.authority.source]
803
+ : []);
804
+ const first = semantic[0];
805
+ if (first === undefined) return undefined;
806
+ return semantic.every((candidate) => candidate.kind === first.kind
807
+ && candidate.id === first.id
808
+ && candidate.spaceId === first.spaceId
809
+ && candidate.narrativeId === first.narrativeId)
810
+ ? first
811
+ : undefined;
812
+ }
813
+
814
+ export function childEntities(
815
+ context: StudioTrackCompanionContext,
816
+ items: readonly {
817
+ /** Exact identity of the projected domain item consumed by Temporal/renderer bindings. */
818
+ readonly id: string;
819
+ /** Exact author-owned entity realized by this projected item, when the identities differ. */
820
+ readonly subjectId?: string;
821
+ readonly startFrame: number;
822
+ readonly endFrameExclusive: number;
823
+ readonly stackOrder: number;
824
+ /** Exact domain Spec types that may carry an omitted Source id. */
825
+ readonly sourceTypes?: readonly TypeRef[];
826
+ }[],
827
+ entity: StudioTimelinePresentation["entity"],
828
+ chrome: StudioTimelinePresentation["chrome"],
829
+ ): readonly StudioEntityDraft[] {
830
+ return items.map((item) => {
831
+ const authoredId = item.subjectId ?? item.id;
832
+ const child = authoredChildFor(context, authoredId, item.sourceTypes ?? []);
833
+ // Both correspondences are exact public facts: the Program item identity
834
+ // and the renderer's declared subject. No renderer naming convention is
835
+ // interpreted here.
836
+ const renders = context.spans.filter((span) => span.id === item.id || span.subjectId === authoredId);
837
+ const render = renders[0];
838
+ return {
839
+ id: `${context.track.outputRef}:entity:${item.id}`,
840
+ authoredId,
841
+ display: { title: authoredId, layers: [] },
842
+ startFrame: item.startFrame,
843
+ endFrameExclusive: item.endFrameExclusive,
844
+ stackOrder: item.stackOrder,
845
+ ...(child === undefined ? {} : { elementRange: child.range }),
846
+ ...(render === undefined ? {} : { presentId: render.id, renderIds: renders.map((span) => span.id) }),
847
+ presentation: { entity, chrome },
848
+ };
849
+ });
850
+ }