remotion 3.3.54 → 3.3.56

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 (602) hide show
  1. package/dist/cjs/AbsoluteFill.d.ts +2 -2
  2. package/dist/cjs/AbsoluteFill.js +2 -2
  3. package/dist/cjs/Composition.d.ts +4 -0
  4. package/dist/cjs/Composition.js +4 -0
  5. package/dist/cjs/Folder.d.ts +4 -0
  6. package/dist/cjs/Folder.js +4 -0
  7. package/dist/cjs/IFrame.d.ts +4 -0
  8. package/dist/cjs/IFrame.js +4 -0
  9. package/dist/cjs/Img.d.ts +4 -0
  10. package/dist/cjs/Img.js +4 -0
  11. package/dist/cjs/Sequence.d.ts +2 -10
  12. package/dist/cjs/Sequence.js +6 -6
  13. package/dist/cjs/SequenceContext.d.ts +9 -0
  14. package/dist/cjs/SequenceContext.js +5 -0
  15. package/dist/cjs/Still.d.ts +4 -0
  16. package/dist/cjs/Still.js +4 -0
  17. package/dist/cjs/audio/Audio.d.ts +5 -1
  18. package/dist/cjs/audio/Audio.js +6 -2
  19. package/dist/cjs/audio/AudioForDevelopment.js +2 -2
  20. package/dist/cjs/audio/AudioForRendering.js +2 -2
  21. package/dist/cjs/audio/use-audio-frame.js +2 -2
  22. package/dist/cjs/cancel-render.d.ts +4 -0
  23. package/dist/cjs/cancel-render.js +4 -0
  24. package/dist/cjs/delay-render.d.ts +4 -4
  25. package/dist/cjs/delay-render.js +4 -4
  26. package/dist/cjs/easing.d.ts +4 -0
  27. package/dist/cjs/easing.js +4 -0
  28. package/dist/cjs/freeze.d.ts +4 -0
  29. package/dist/cjs/freeze.js +6 -2
  30. package/dist/cjs/get-static-files.d.ts +4 -0
  31. package/dist/cjs/get-static-files.js +4 -0
  32. package/dist/cjs/index.d.ts +17 -8
  33. package/dist/cjs/index.js +18 -10
  34. package/dist/cjs/internals.d.ts +6 -6
  35. package/dist/cjs/internals.js +4 -4
  36. package/dist/cjs/interpolate-colors.d.ts +4 -0
  37. package/dist/cjs/interpolate-colors.js +4 -0
  38. package/dist/cjs/interpolate.js +4 -0
  39. package/dist/cjs/loop/index.d.ts +4 -0
  40. package/dist/cjs/loop/index.js +4 -0
  41. package/dist/cjs/prefetch.d.ts +4 -0
  42. package/dist/cjs/prefetch.js +4 -0
  43. package/dist/cjs/random.d.ts +2 -3
  44. package/dist/cjs/random.js +2 -3
  45. package/dist/cjs/register-root.d.ts +4 -0
  46. package/dist/cjs/register-root.js +4 -0
  47. package/dist/cjs/series/index.d.ts +4 -0
  48. package/dist/cjs/series/index.js +4 -0
  49. package/dist/cjs/spring/index.d.ts +2 -2
  50. package/dist/cjs/spring/index.js +2 -2
  51. package/dist/cjs/spring/measure-spring.d.ts +4 -0
  52. package/dist/cjs/spring/measure-spring.js +4 -0
  53. package/dist/cjs/static-file.d.ts +2 -2
  54. package/dist/cjs/static-file.js +2 -2
  55. package/dist/cjs/use-current-frame.d.ts +2 -3
  56. package/dist/cjs/use-current-frame.js +4 -5
  57. package/dist/cjs/use-media-in-timeline.js +2 -2
  58. package/dist/cjs/use-unsafe-video-config.js +2 -2
  59. package/dist/cjs/use-video-config.d.ts +4 -3
  60. package/dist/cjs/use-video-config.js +4 -3
  61. package/dist/cjs/use-video.d.ts +1 -1
  62. package/dist/cjs/validate-media-props.d.ts +2 -2
  63. package/dist/cjs/version.d.ts +1 -1
  64. package/dist/cjs/version.js +1 -1
  65. package/dist/cjs/video/OffthreadVideo.d.ts +4 -0
  66. package/dist/cjs/video/OffthreadVideo.js +4 -0
  67. package/dist/cjs/video/OffthreadVideoForRendering.js +2 -2
  68. package/dist/cjs/video/Video.d.ts +4 -0
  69. package/dist/cjs/video/Video.js +6 -2
  70. package/dist/cjs/video/VideoForDevelopment.js +2 -2
  71. package/dist/cjs/video/VideoForRendering.js +2 -2
  72. package/dist/cjs/wrap-remotion-context.d.ts +1 -1
  73. package/dist/cjs/wrap-remotion-context.js +3 -3
  74. package/dist/esm/index.mjs +4070 -0
  75. package/dist/esm/version.mjs +4 -0
  76. package/dist/tsconfig-esm.tsbuildinfo +1 -0
  77. package/package.json +11 -9
  78. package/version.js +2 -0
  79. package/.prettierrc.js +0 -14
  80. package/dist/AbsoluteFill.d.ts +0 -6
  81. package/dist/AbsoluteFill.js +0 -28
  82. package/dist/CanUseRemotionHooks.d.ts +0 -5
  83. package/dist/CanUseRemotionHooks.js +0 -10
  84. package/dist/Clipper.d.ts +0 -7
  85. package/dist/Clipper.js +0 -24
  86. package/dist/Composition.d.ts +0 -23
  87. package/dist/Composition.js +0 -113
  88. package/dist/CompositionManager.d.ts +0 -82
  89. package/dist/CompositionManager.js +0 -154
  90. package/dist/Folder.d.ts +0 -15
  91. package/dist/Folder.js +0 -33
  92. package/dist/IFrame.d.ts +0 -2
  93. package/dist/IFrame.js +0 -24
  94. package/dist/Img.d.ts +0 -2
  95. package/dist/Img.js +0 -52
  96. package/dist/NativeLayers.d.ts +0 -13
  97. package/dist/NativeLayers.js +0 -29
  98. package/dist/Null.d.ts +0 -2
  99. package/dist/Null.js +0 -25
  100. package/dist/RemotionRoot.d.ts +0 -5
  101. package/dist/RemotionRoot.js +0 -73
  102. package/dist/Sequence.d.ts +0 -28
  103. package/dist/Sequence.js +0 -131
  104. package/dist/Still.d.ts +0 -2
  105. package/dist/Still.js +0 -9
  106. package/dist/absolute-src.d.ts +0 -1
  107. package/dist/absolute-src.js +0 -7
  108. package/dist/asset-types.d.ts +0 -50
  109. package/dist/asset-types.js +0 -1
  110. package/dist/audio/Audio.d.ts +0 -8
  111. package/dist/audio/Audio.js +0 -52
  112. package/dist/audio/AudioForDevelopment.d.ts +0 -11
  113. package/dist/audio/AudioForDevelopment.js +0 -94
  114. package/dist/audio/AudioForRendering.d.ts +0 -10
  115. package/dist/audio/AudioForRendering.js +0 -111
  116. package/dist/audio/index.d.ts +0 -2
  117. package/dist/audio/index.js +0 -18
  118. package/dist/audio/props.d.ts +0 -12
  119. package/dist/audio/props.js +0 -2
  120. package/dist/audio/shared-audio-tags.d.ts +0 -37
  121. package/dist/audio/shared-audio-tags.js +0 -222
  122. package/dist/audio/use-audio-frame.d.ts +0 -6
  123. package/dist/audio/use-audio-frame.js +0 -23
  124. package/dist/bezier.d.ts +0 -1
  125. package/dist/bezier.js +0 -114
  126. package/dist/cjs/test/Img.test.d.ts +0 -1
  127. package/dist/cjs/test/Img.test.js +0 -25
  128. package/dist/cjs/test/absolute-src.test.d.ts +0 -1
  129. package/dist/cjs/test/absolute-src.test.js +0 -18
  130. package/dist/cjs/test/audio-for-rendering.test.d.ts +0 -1
  131. package/dist/cjs/test/audio-for-rendering.test.js +0 -88
  132. package/dist/cjs/test/audio.test.d.ts +0 -1
  133. package/dist/cjs/test/audio.test.js +0 -76
  134. package/dist/cjs/test/bezier.test.d.ts +0 -1
  135. package/dist/cjs/test/bezier.test.js +0 -52
  136. package/dist/cjs/test/composition-rules.test.d.ts +0 -1
  137. package/dist/cjs/test/composition-rules.test.js +0 -30
  138. package/dist/cjs/test/composition-validation.test.d.ts +0 -1
  139. package/dist/cjs/test/composition-validation.test.js +0 -99
  140. package/dist/cjs/test/easing.test.d.ts +0 -1
  141. package/dist/cjs/test/easing.test.js +0 -191
  142. package/dist/cjs/test/expect-to-throw.d.ts +0 -1
  143. package/dist/cjs/test/expect-to-throw.js +0 -15
  144. package/dist/cjs/test/freeze.test.d.ts +0 -1
  145. package/dist/cjs/test/freeze.test.js +0 -65
  146. package/dist/cjs/test/get-asset-file-name.test.d.ts +0 -1
  147. package/dist/cjs/test/get-asset-file-name.test.js +0 -14
  148. package/dist/cjs/test/get-current-time.test.d.ts +0 -1
  149. package/dist/cjs/test/get-current-time.test.js +0 -74
  150. package/dist/cjs/test/input-props.test.d.ts +0 -1
  151. package/dist/cjs/test/input-props.test.js +0 -31
  152. package/dist/cjs/test/interpolate.test.d.ts +0 -1
  153. package/dist/cjs/test/interpolate.test.js +0 -138
  154. package/dist/cjs/test/interpolateColors.test.d.ts +0 -1
  155. package/dist/cjs/test/interpolateColors.test.js +0 -63
  156. package/dist/cjs/test/loop-validation.test.d.ts +0 -1
  157. package/dist/cjs/test/loop-validation.test.js +0 -93
  158. package/dist/cjs/test/measure-spring.test.d.ts +0 -1
  159. package/dist/cjs/test/measure-spring.test.js +0 -45
  160. package/dist/cjs/test/media-validation.test.d.ts +0 -1
  161. package/dist/cjs/test/media-validation.test.js +0 -47
  162. package/dist/cjs/test/nested-sequences.test.d.ts +0 -1
  163. package/dist/cjs/test/nested-sequences.test.js +0 -132
  164. package/dist/cjs/test/not-all-props-in-media-tags.test.d.ts +0 -1
  165. package/dist/cjs/test/not-all-props-in-media-tags.test.js +0 -33
  166. package/dist/cjs/test/random.test.d.ts +0 -1
  167. package/dist/cjs/test/random.test.js +0 -60
  168. package/dist/cjs/test/ready-manager.test.d.ts +0 -1
  169. package/dist/cjs/test/ready-manager.test.js +0 -29
  170. package/dist/cjs/test/render-hook.d.ts +0 -23
  171. package/dist/cjs/test/render-hook.js +0 -27
  172. package/dist/cjs/test/sequence-from-initial-offset.test.d.ts +0 -4
  173. package/dist/cjs/test/sequence-from-initial-offset.test.js +0 -35
  174. package/dist/cjs/test/sequence-validation.test.d.ts +0 -1
  175. package/dist/cjs/test/sequence-validation.test.js +0 -47
  176. package/dist/cjs/test/series.test.d.ts +0 -1
  177. package/dist/cjs/test/series.test.js +0 -115
  178. package/dist/cjs/test/spring.test.d.ts +0 -1
  179. package/dist/cjs/test/spring.test.js +0 -38
  180. package/dist/cjs/test/truthy.test.d.ts +0 -1
  181. package/dist/cjs/test/truthy.test.js +0 -24
  182. package/dist/cjs/test/use-audio-frame.test.d.ts +0 -1
  183. package/dist/cjs/test/use-audio-frame.test.js +0 -78
  184. package/dist/cjs/test/use-media-in-timeline.test.d.ts +0 -1
  185. package/dist/cjs/test/use-media-in-timeline.test.js +0 -74
  186. package/dist/cjs/test/use-media-tag-volume.test.d.ts +0 -1
  187. package/dist/cjs/test/use-media-tag-volume.test.js +0 -49
  188. package/dist/cjs/test/use-sync-volume-with-media-tag.test.d.ts +0 -1
  189. package/dist/cjs/test/use-sync-volume-with-media-tag.test.js +0 -55
  190. package/dist/cjs/test/validate-start-from-props.test.d.ts +0 -1
  191. package/dist/cjs/test/validate-start-from-props.test.js +0 -39
  192. package/dist/cjs/test/video.test.d.ts +0 -1
  193. package/dist/cjs/test/video.test.js +0 -80
  194. package/dist/cjs/test/volume-prop.test.d.ts +0 -1
  195. package/dist/cjs/test/volume-prop.test.js +0 -95
  196. package/dist/cjs/test/wrap-sequence-context.d.ts +0 -6
  197. package/dist/cjs/test/wrap-sequence-context.js +0 -41
  198. package/dist/config/input-props.d.ts +0 -1
  199. package/dist/config/input-props.js +0 -31
  200. package/dist/config.d.ts +0 -291
  201. package/dist/config.js +0 -21
  202. package/dist/default-css.d.ts +0 -3
  203. package/dist/default-css.js +0 -49
  204. package/dist/delay-render.d.ts +0 -14
  205. package/dist/delay-render.js +0 -77
  206. package/dist/easing.d.ts +0 -19
  207. package/dist/easing.js +0 -77
  208. package/dist/esm/AbsoluteFill.d.ts +0 -6
  209. package/dist/esm/AbsoluteFill.js +0 -25
  210. package/dist/esm/CanUseRemotionHooks.d.ts +0 -5
  211. package/dist/esm/CanUseRemotionHooks.js +0 -6
  212. package/dist/esm/Clipper.d.ts +0 -7
  213. package/dist/esm/Clipper.js +0 -20
  214. package/dist/esm/Composition.d.ts +0 -23
  215. package/dist/esm/Composition.js +0 -108
  216. package/dist/esm/CompositionManager.d.ts +0 -82
  217. package/dist/esm/CompositionManager.js +0 -137
  218. package/dist/esm/Folder.d.ts +0 -15
  219. package/dist/esm/Folder.js +0 -29
  220. package/dist/esm/IFrame.d.ts +0 -2
  221. package/dist/esm/IFrame.js +0 -21
  222. package/dist/esm/Img.d.ts +0 -2
  223. package/dist/esm/Img.js +0 -49
  224. package/dist/esm/NativeLayers.d.ts +0 -13
  225. package/dist/esm/NativeLayers.js +0 -25
  226. package/dist/esm/Null.d.ts +0 -2
  227. package/dist/esm/Null.js +0 -21
  228. package/dist/esm/RemotionRoot.d.ts +0 -5
  229. package/dist/esm/RemotionRoot.js +0 -69
  230. package/dist/esm/Sequence.d.ts +0 -29
  231. package/dist/esm/Sequence.js +0 -128
  232. package/dist/esm/Still.d.ts +0 -3
  233. package/dist/esm/Still.js +0 -5
  234. package/dist/esm/absolute-src.d.ts +0 -1
  235. package/dist/esm/absolute-src.js +0 -3
  236. package/dist/esm/asset-types.d.ts +0 -50
  237. package/dist/esm/asset-types.js +0 -1
  238. package/dist/esm/audio/Audio.d.ts +0 -8
  239. package/dist/esm/audio/Audio.js +0 -49
  240. package/dist/esm/audio/AudioForDevelopment.d.ts +0 -11
  241. package/dist/esm/audio/AudioForDevelopment.js +0 -91
  242. package/dist/esm/audio/AudioForRendering.d.ts +0 -10
  243. package/dist/esm/audio/AudioForRendering.js +0 -108
  244. package/dist/esm/audio/index.d.ts +0 -2
  245. package/dist/esm/audio/index.js +0 -2
  246. package/dist/esm/audio/props.d.ts +0 -12
  247. package/dist/esm/audio/props.js +0 -1
  248. package/dist/esm/audio/shared-audio-tags.d.ts +0 -37
  249. package/dist/esm/audio/shared-audio-tags.js +0 -194
  250. package/dist/esm/audio/use-audio-frame.d.ts +0 -6
  251. package/dist/esm/audio/use-audio-frame.js +0 -18
  252. package/dist/esm/bezier.d.ts +0 -1
  253. package/dist/esm/bezier.js +0 -110
  254. package/dist/esm/cancel-render.d.ts +0 -1
  255. package/dist/esm/cancel-render.js +0 -39
  256. package/dist/esm/config/input-props.d.ts +0 -1
  257. package/dist/esm/config/input-props.js +0 -27
  258. package/dist/esm/config.d.ts +0 -285
  259. package/dist/esm/config.js +0 -17
  260. package/dist/esm/default-css.d.ts +0 -3
  261. package/dist/esm/default-css.js +0 -44
  262. package/dist/esm/delay-render.d.ts +0 -14
  263. package/dist/esm/delay-render.js +0 -72
  264. package/dist/esm/easing.d.ts +0 -19
  265. package/dist/esm/easing.js +0 -73
  266. package/dist/esm/freeze.d.ts +0 -7
  267. package/dist/esm/freeze.js +0 -30
  268. package/dist/esm/get-asset-file-name.d.ts +0 -1
  269. package/dist/esm/get-asset-file-name.js +0 -10
  270. package/dist/esm/get-environment.d.ts +0 -3
  271. package/dist/esm/get-environment.js +0 -29
  272. package/dist/esm/get-preview-dom-element.d.ts +0 -1
  273. package/dist/esm/get-preview-dom-element.js +0 -3
  274. package/dist/esm/get-static-files.d.ts +0 -17
  275. package/dist/esm/get-static-files.js +0 -27
  276. package/dist/esm/get-timeline-clip-name.d.ts +0 -1
  277. package/dist/esm/get-timeline-clip-name.js +0 -21
  278. package/dist/esm/index.d.ts +0 -92
  279. package/dist/esm/index.js +0 -41
  280. package/dist/esm/internals.d.ts +0 -99
  281. package/dist/esm/internals.js +0 -75
  282. package/dist/esm/interpolate-colors.d.ts +0 -5
  283. package/dist/esm/interpolate-colors.js +0 -397
  284. package/dist/esm/interpolate.d.ts +0 -18
  285. package/dist/esm/interpolate.js +0 -119
  286. package/dist/esm/is-approximately-the-same.d.ts +0 -1
  287. package/dist/esm/is-approximately-the-same.js +0 -4
  288. package/dist/esm/is-player.d.ts +0 -3
  289. package/dist/esm/is-player.js +0 -9
  290. package/dist/esm/loading-indicator.d.ts +0 -2
  291. package/dist/esm/loading-indicator.js +0 -31
  292. package/dist/esm/loop/index.d.ts +0 -9
  293. package/dist/esm/loop/index.js +0 -25
  294. package/dist/esm/multiple-versions-warning.d.ts +0 -1
  295. package/dist/esm/multiple-versions-warning.js +0 -28
  296. package/dist/esm/nonce.d.ts +0 -7
  297. package/dist/esm/nonce.js +0 -13
  298. package/dist/esm/play-and-handle-not-allowed-error.d.ts +0 -2
  299. package/dist/esm/play-and-handle-not-allowed-error.js +0 -40
  300. package/dist/esm/portal-node.d.ts +0 -1
  301. package/dist/esm/portal-node.js +0 -19
  302. package/dist/esm/prefetch-state.d.ts +0 -8
  303. package/dist/esm/prefetch-state.js +0 -22
  304. package/dist/esm/prefetch.d.ts +0 -9
  305. package/dist/esm/prefetch.js +0 -103
  306. package/dist/esm/random.d.ts +0 -7
  307. package/dist/esm/random.js +0 -38
  308. package/dist/esm/register-root.d.ts +0 -4
  309. package/dist/esm/register-root.js +0 -27
  310. package/dist/esm/series/flatten-children.d.ts +0 -2
  311. package/dist/esm/series/flatten-children.js +0 -12
  312. package/dist/esm/series/index.d.ts +0 -13
  313. package/dist/esm/series/index.js +0 -57
  314. package/dist/esm/setup-env-variables.d.ts +0 -2
  315. package/dist/esm/setup-env-variables.js +0 -32
  316. package/dist/esm/spring/index.d.ts +0 -27
  317. package/dist/esm/spring/index.js +0 -50
  318. package/dist/esm/spring/measure-spring.d.ts +0 -8
  319. package/dist/esm/spring/measure-spring.js +0 -60
  320. package/dist/esm/spring/spring-utils.d.ts +0 -21
  321. package/dist/esm/spring/spring-utils.js +0 -99
  322. package/dist/esm/static-file.d.ts +0 -5
  323. package/dist/esm/static-file.js +0 -29
  324. package/dist/esm/test/Img.test.d.ts +0 -1
  325. package/dist/esm/test/Img.test.js +0 -20
  326. package/dist/esm/test/absolute-src.test.d.ts +0 -1
  327. package/dist/esm/test/absolute-src.test.js +0 -16
  328. package/dist/esm/test/audio-for-rendering.test.d.ts +0 -1
  329. package/dist/esm/test/audio-for-rendering.test.js +0 -83
  330. package/dist/esm/test/audio.test.d.ts +0 -1
  331. package/dist/esm/test/audio.test.js +0 -51
  332. package/dist/esm/test/bezier.test.d.ts +0 -1
  333. package/dist/esm/test/bezier.test.js +0 -50
  334. package/dist/esm/test/composition-rules.test.d.ts +0 -1
  335. package/dist/esm/test/composition-rules.test.js +0 -28
  336. package/dist/esm/test/composition-validation.test.d.ts +0 -1
  337. package/dist/esm/test/composition-validation.test.js +0 -97
  338. package/dist/esm/test/easing.test.d.ts +0 -1
  339. package/dist/esm/test/easing.test.js +0 -189
  340. package/dist/esm/test/expect-to-throw.d.ts +0 -1
  341. package/dist/esm/test/expect-to-throw.js +0 -11
  342. package/dist/esm/test/freeze.test.d.ts +0 -1
  343. package/dist/esm/test/freeze.test.js +0 -63
  344. package/dist/esm/test/get-asset-file-name.test.d.ts +0 -1
  345. package/dist/esm/test/get-asset-file-name.test.js +0 -12
  346. package/dist/esm/test/get-current-time.test.d.ts +0 -1
  347. package/dist/esm/test/get-current-time.test.js +0 -72
  348. package/dist/esm/test/input-props.test.d.ts +0 -1
  349. package/dist/esm/test/input-props.test.js +0 -29
  350. package/dist/esm/test/interpolate.test.d.ts +0 -1
  351. package/dist/esm/test/interpolate.test.js +0 -136
  352. package/dist/esm/test/interpolateColors.test.d.ts +0 -1
  353. package/dist/esm/test/interpolateColors.test.js +0 -61
  354. package/dist/esm/test/loop-validation.test.d.ts +0 -1
  355. package/dist/esm/test/loop-validation.test.js +0 -68
  356. package/dist/esm/test/measure-spring.test.d.ts +0 -1
  357. package/dist/esm/test/measure-spring.test.js +0 -43
  358. package/dist/esm/test/media-validation.test.d.ts +0 -1
  359. package/dist/esm/test/media-validation.test.js +0 -45
  360. package/dist/esm/test/nested-sequences.test.d.ts +0 -1
  361. package/dist/esm/test/nested-sequences.test.js +0 -130
  362. package/dist/esm/test/not-all-props-in-media-tags.test.d.ts +0 -1
  363. package/dist/esm/test/not-all-props-in-media-tags.test.js +0 -28
  364. package/dist/esm/test/random.test.d.ts +0 -1
  365. package/dist/esm/test/random.test.js +0 -58
  366. package/dist/esm/test/ready-manager.test.d.ts +0 -1
  367. package/dist/esm/test/ready-manager.test.js +0 -27
  368. package/dist/esm/test/render-hook.d.ts +0 -23
  369. package/dist/esm/test/render-hook.js +0 -20
  370. package/dist/esm/test/sequence-from-initial-offset.test.d.ts +0 -4
  371. package/dist/esm/test/sequence-from-initial-offset.test.js +0 -33
  372. package/dist/esm/test/sequence-validation.test.d.ts +0 -1
  373. package/dist/esm/test/sequence-validation.test.js +0 -45
  374. package/dist/esm/test/series.test.d.ts +0 -1
  375. package/dist/esm/test/series.test.js +0 -113
  376. package/dist/esm/test/spring.test.d.ts +0 -1
  377. package/dist/esm/test/spring.test.js +0 -36
  378. package/dist/esm/test/truthy.test.d.ts +0 -1
  379. package/dist/esm/test/truthy.test.js +0 -22
  380. package/dist/esm/test/use-audio-frame.test.d.ts +0 -1
  381. package/dist/esm/test/use-audio-frame.test.js +0 -53
  382. package/dist/esm/test/use-media-in-timeline.test.d.ts +0 -1
  383. package/dist/esm/test/use-media-in-timeline.test.js +0 -49
  384. package/dist/esm/test/use-media-tag-volume.test.d.ts +0 -1
  385. package/dist/esm/test/use-media-tag-volume.test.js +0 -44
  386. package/dist/esm/test/use-sync-volume-with-media-tag.test.d.ts +0 -1
  387. package/dist/esm/test/use-sync-volume-with-media-tag.test.js +0 -53
  388. package/dist/esm/test/validate-start-from-props.test.d.ts +0 -1
  389. package/dist/esm/test/validate-start-from-props.test.js +0 -37
  390. package/dist/esm/test/video.test.d.ts +0 -1
  391. package/dist/esm/test/video.test.js +0 -55
  392. package/dist/esm/test/volume-prop.test.d.ts +0 -1
  393. package/dist/esm/test/volume-prop.test.js +0 -93
  394. package/dist/esm/test/wrap-sequence-context.d.ts +0 -6
  395. package/dist/esm/test/wrap-sequence-context.js +0 -37
  396. package/dist/esm/timeline-position-state.d.ts +0 -29
  397. package/dist/esm/timeline-position-state.js +0 -35
  398. package/dist/esm/truthy.d.ts +0 -3
  399. package/dist/esm/truthy.js +0 -3
  400. package/dist/esm/use-current-frame.d.ts +0 -6
  401. package/dist/esm/use-current-frame.js +0 -24
  402. package/dist/esm/use-lazy-component.d.ts +0 -7
  403. package/dist/esm/use-lazy-component.js +0 -22
  404. package/dist/esm/use-media-in-timeline.d.ts +0 -10
  405. package/dist/esm/use-media-in-timeline.js +0 -125
  406. package/dist/esm/use-media-playback.d.ts +0 -10
  407. package/dist/esm/use-media-playback.js +0 -73
  408. package/dist/esm/use-media-tag-volume.d.ts +0 -2
  409. package/dist/esm/use-media-tag-volume.js +0 -27
  410. package/dist/esm/use-sync-volume-with-media-tag.d.ts +0 -10
  411. package/dist/esm/use-sync-volume-with-media-tag.js +0 -17
  412. package/dist/esm/use-unsafe-video-config.d.ts +0 -2
  413. package/dist/esm/use-unsafe-video-config.js +0 -23
  414. package/dist/esm/use-video-config.d.ts +0 -7
  415. package/dist/esm/use-video-config.js +0 -25
  416. package/dist/esm/use-video.d.ts +0 -13
  417. package/dist/esm/use-video.js +0 -24
  418. package/dist/esm/validate-frame.d.ts +0 -1
  419. package/dist/esm/validate-frame.js +0 -20
  420. package/dist/esm/validate-media-props.d.ts +0 -4
  421. package/dist/esm/validate-media-props.js +0 -20
  422. package/dist/esm/validate-start-from-props.d.ts +0 -1
  423. package/dist/esm/validate-start-from-props.js +0 -27
  424. package/dist/esm/validation/validate-composition-id.d.ts +0 -3
  425. package/dist/esm/validation/validate-composition-id.js +0 -8
  426. package/dist/esm/validation/validate-dimensions.d.ts +0 -1
  427. package/dist/esm/validation/validate-dimensions.js +0 -17
  428. package/dist/esm/validation/validate-duration-in-frames.d.ts +0 -1
  429. package/dist/esm/validation/validate-duration-in-frames.js +0 -11
  430. package/dist/esm/validation/validate-folder-name.d.ts +0 -3
  431. package/dist/esm/validation/validate-folder-name.js +0 -14
  432. package/dist/esm/validation/validate-fps.d.ts +0 -1
  433. package/dist/esm/validation/validate-fps.js +0 -17
  434. package/dist/esm/validation/validate-offthreadvideo-image-format.d.ts +0 -1
  435. package/dist/esm/validation/validate-offthreadvideo-image-format.js +0 -11
  436. package/dist/esm/validation/validation-spring-duration.d.ts +0 -1
  437. package/dist/esm/validation/validation-spring-duration.js +0 -17
  438. package/dist/esm/version.d.ts +0 -1
  439. package/dist/esm/version.js +0 -2
  440. package/dist/esm/video/OffthreadVideo.d.ts +0 -3
  441. package/dist/esm/video/OffthreadVideo.js +0 -29
  442. package/dist/esm/video/OffthreadVideoForRendering.d.ts +0 -3
  443. package/dist/esm/video/OffthreadVideoForRendering.js +0 -100
  444. package/dist/esm/video/Video.d.ts +0 -8
  445. package/dist/esm/video/Video.js +0 -47
  446. package/dist/esm/video/VideoForDevelopment.d.ts +0 -11
  447. package/dist/esm/video/VideoForDevelopment.js +0 -110
  448. package/dist/esm/video/VideoForRendering.d.ts +0 -10
  449. package/dist/esm/video/VideoForRendering.js +0 -200
  450. package/dist/esm/video/duration-state.d.ts +0 -17
  451. package/dist/esm/video/duration-state.js +0 -29
  452. package/dist/esm/video/get-current-time.d.ts +0 -13
  453. package/dist/esm/video/get-current-time.js +0 -26
  454. package/dist/esm/video/index.d.ts +0 -3
  455. package/dist/esm/video/index.js +0 -2
  456. package/dist/esm/video/props.d.ts +0 -25
  457. package/dist/esm/video/props.js +0 -1
  458. package/dist/esm/video/video-fragment.d.ts +0 -12
  459. package/dist/esm/video/video-fragment.js +0 -55
  460. package/dist/esm/video-config.d.ts +0 -8
  461. package/dist/esm/video-config.js +0 -1
  462. package/dist/esm/volume-position-state.d.ts +0 -19
  463. package/dist/esm/volume-position-state.js +0 -27
  464. package/dist/esm/volume-prop.d.ts +0 -7
  465. package/dist/esm/volume-prop.js +0 -20
  466. package/dist/esm/warn-about-non-seekable-media.d.ts +0 -1
  467. package/dist/esm/warn-about-non-seekable-media.js +0 -30
  468. package/dist/esm/wrap-remotion-context.d.ts +0 -18
  469. package/dist/esm/wrap-remotion-context.js +0 -45
  470. package/dist/freeze.d.ts +0 -7
  471. package/dist/freeze.js +0 -34
  472. package/dist/get-asset-file-name.d.ts +0 -1
  473. package/dist/get-asset-file-name.js +0 -14
  474. package/dist/get-environment.d.ts +0 -3
  475. package/dist/get-environment.js +0 -34
  476. package/dist/get-preview-dom-element.d.ts +0 -1
  477. package/dist/get-preview-dom-element.js +0 -7
  478. package/dist/get-static-files.d.ts +0 -17
  479. package/dist/get-static-files.js +0 -31
  480. package/dist/get-timeline-clip-name.d.ts +0 -1
  481. package/dist/get-timeline-clip-name.js +0 -25
  482. package/dist/index.d.ts +0 -89
  483. package/dist/index.js +0 -69
  484. package/dist/internals.d.ts +0 -100
  485. package/dist/internals.js +0 -99
  486. package/dist/interpolate-colors.d.ts +0 -5
  487. package/dist/interpolate-colors.js +0 -401
  488. package/dist/interpolate.d.ts +0 -18
  489. package/dist/interpolate.js +0 -123
  490. package/dist/is-approximately-the-same.d.ts +0 -1
  491. package/dist/is-approximately-the-same.js +0 -8
  492. package/dist/is-player.d.ts +0 -3
  493. package/dist/is-player.js +0 -14
  494. package/dist/loading-indicator.d.ts +0 -2
  495. package/dist/loading-indicator.js +0 -35
  496. package/dist/loop/index.d.ts +0 -9
  497. package/dist/loop/index.js +0 -29
  498. package/dist/multiple-versions-warning.d.ts +0 -1
  499. package/dist/multiple-versions-warning.js +0 -32
  500. package/dist/nonce.d.ts +0 -7
  501. package/dist/nonce.js +0 -17
  502. package/dist/play-and-handle-not-allowed-error.d.ts +0 -2
  503. package/dist/play-and-handle-not-allowed-error.js +0 -44
  504. package/dist/portal-node.d.ts +0 -1
  505. package/dist/portal-node.js +0 -23
  506. package/dist/prefetch-state.d.ts +0 -8
  507. package/dist/prefetch-state.js +0 -27
  508. package/dist/prefetch.d.ts +0 -9
  509. package/dist/prefetch.js +0 -108
  510. package/dist/random.d.ts +0 -7
  511. package/dist/random.js +0 -41
  512. package/dist/register-root.d.ts +0 -4
  513. package/dist/register-root.js +0 -33
  514. package/dist/series/flatten-children.d.ts +0 -2
  515. package/dist/series/flatten-children.js +0 -19
  516. package/dist/series/index.d.ts +0 -13
  517. package/dist/series/index.js +0 -57
  518. package/dist/setup-env-variables.d.ts +0 -2
  519. package/dist/setup-env-variables.js +0 -36
  520. package/dist/spring/index.d.ts +0 -27
  521. package/dist/spring/index.js +0 -51
  522. package/dist/spring/measure-spring.d.ts +0 -8
  523. package/dist/spring/measure-spring.js +0 -64
  524. package/dist/spring/spring-utils.d.ts +0 -21
  525. package/dist/spring/spring-utils.js +0 -103
  526. package/dist/static-file.d.ts +0 -5
  527. package/dist/static-file.js +0 -33
  528. package/dist/timeline-position-state.d.ts +0 -29
  529. package/dist/timeline-position-state.js +0 -41
  530. package/dist/truthy.d.ts +0 -3
  531. package/dist/truthy.js +0 -7
  532. package/dist/tsconfig-cjs.tsbuildinfo +0 -1
  533. package/dist/use-current-frame.d.ts +0 -6
  534. package/dist/use-current-frame.js +0 -28
  535. package/dist/use-lazy-component.d.ts +0 -7
  536. package/dist/use-lazy-component.js +0 -49
  537. package/dist/use-media-in-timeline.d.ts +0 -10
  538. package/dist/use-media-in-timeline.js +0 -129
  539. package/dist/use-media-playback.d.ts +0 -10
  540. package/dist/use-media-playback.js +0 -77
  541. package/dist/use-media-tag-volume.d.ts +0 -2
  542. package/dist/use-media-tag-volume.js +0 -31
  543. package/dist/use-sync-volume-with-media-tag.d.ts +0 -10
  544. package/dist/use-sync-volume-with-media-tag.js +0 -21
  545. package/dist/use-unsafe-video-config.d.ts +0 -2
  546. package/dist/use-unsafe-video-config.js +0 -27
  547. package/dist/use-video-config.d.ts +0 -7
  548. package/dist/use-video-config.js +0 -29
  549. package/dist/use-video.d.ts +0 -12
  550. package/dist/use-video.js +0 -28
  551. package/dist/validate-media-props.d.ts +0 -4
  552. package/dist/validate-media-props.js +0 -24
  553. package/dist/validate-start-from-props.d.ts +0 -1
  554. package/dist/validate-start-from-props.js +0 -31
  555. package/dist/validation/validate-composition-id.d.ts +0 -3
  556. package/dist/validation/validate-composition-id.js +0 -13
  557. package/dist/validation/validate-dimensions.d.ts +0 -1
  558. package/dist/validation/validate-dimensions.js +0 -21
  559. package/dist/validation/validate-duration-in-frames.d.ts +0 -1
  560. package/dist/validation/validate-duration-in-frames.js +0 -15
  561. package/dist/validation/validate-folder-name.d.ts +0 -3
  562. package/dist/validation/validate-folder-name.js +0 -19
  563. package/dist/validation/validate-fps.d.ts +0 -1
  564. package/dist/validation/validate-fps.js +0 -21
  565. package/dist/validation/validate-offthreadvideo-image-format.d.ts +0 -1
  566. package/dist/validation/validate-offthreadvideo-image-format.js +0 -15
  567. package/dist/validation/validation-spring-duration.d.ts +0 -1
  568. package/dist/validation/validation-spring-duration.js +0 -21
  569. package/dist/version.d.ts +0 -1
  570. package/dist/version.js +0 -5
  571. package/dist/video/OffthreadVideo.d.ts +0 -3
  572. package/dist/video/OffthreadVideo.js +0 -33
  573. package/dist/video/OffthreadVideoForRendering.d.ts +0 -3
  574. package/dist/video/OffthreadVideoForRendering.js +0 -104
  575. package/dist/video/Video.d.ts +0 -8
  576. package/dist/video/Video.js +0 -50
  577. package/dist/video/VideoForDevelopment.d.ts +0 -11
  578. package/dist/video/VideoForDevelopment.js +0 -113
  579. package/dist/video/VideoForRendering.d.ts +0 -10
  580. package/dist/video/VideoForRendering.js +0 -203
  581. package/dist/video/duration-state.d.ts +0 -17
  582. package/dist/video/duration-state.js +0 -34
  583. package/dist/video/get-current-time.d.ts +0 -13
  584. package/dist/video/get-current-time.js +0 -31
  585. package/dist/video/index.d.ts +0 -3
  586. package/dist/video/index.js +0 -7
  587. package/dist/video/props.d.ts +0 -25
  588. package/dist/video/props.js +0 -2
  589. package/dist/video/video-fragment.d.ts +0 -12
  590. package/dist/video/video-fragment.js +0 -60
  591. package/dist/video-config.d.ts +0 -8
  592. package/dist/video-config.js +0 -2
  593. package/dist/volume-position-state.d.ts +0 -19
  594. package/dist/volume-position-state.js +0 -32
  595. package/dist/volume-prop.d.ts +0 -7
  596. package/dist/volume-prop.js +0 -24
  597. package/dist/warn-about-non-seekable-media.d.ts +0 -1
  598. package/dist/warn-about-non-seekable-media.js +0 -34
  599. package/dist/wrap-remotion-context.d.ts +0 -18
  600. package/dist/wrap-remotion-context.js +0 -73
  601. package/tsconfig-cjs.json +0 -11
  602. /package/{tsconfig.json → tsconfig-esm.json} +0 -0
@@ -1 +0,0 @@
1
- export {};
@@ -1,22 +0,0 @@
1
- import { expect, test } from 'vitest';
2
- import { truthy } from '../truthy.js';
3
- test.each([
4
- ['true', true],
5
- ['false', true],
6
- ['True', true],
7
- ['False', true],
8
- ['', false],
9
- ['abc', true],
10
- [true, true],
11
- [false, false],
12
- [null, false],
13
- [undefined, false],
14
- [0, false],
15
- [1, true],
16
- [0.5, true],
17
- [12, true],
18
- [-1, true],
19
- [-4, true],
20
- ])('test with %s', (input, expected) => {
21
- expect(truthy(input)).toEqual(expected);
22
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,53 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { afterAll, beforeAll, describe, expect, test, vitest } from 'vitest';
3
- import * as useAudioFrameModule from '../audio/use-audio-frame.js';
4
- import { useFrameForVolumeProp, useMediaStartsAt, } from '../audio/use-audio-frame.js';
5
- import { SequenceContext } from '../Sequence.js';
6
- import * as useFrameModule from '../use-current-frame.js';
7
- import { renderHook } from './render-hook.js';
8
- test.skip('Media starts at 0 if it is outside a sequence', () => {
9
- const wrapper = ({ children }) => (_jsx(SequenceContext.Provider, { value: null, children: children }));
10
- const { result } = renderHook(() => useMediaStartsAt(), { wrapper });
11
- expect(result.current).toEqual(0);
12
- });
13
- test.skip('Media start is shifted back based on sequence', () => {
14
- const mockSequence = {
15
- cumulatedFrom: 0,
16
- relativeFrom: -100,
17
- parentFrom: 0,
18
- durationInFrames: 0,
19
- id: 'mock',
20
- };
21
- const wrapper = ({ children }) => (_jsx(SequenceContext.Provider, { value: mockSequence, children: children }));
22
- const { result } = renderHook(() => useMediaStartsAt(), { wrapper });
23
- expect(result.current).toEqual(-100);
24
- });
25
- describe('useFrameForVolumeProp hook tests', () => {
26
- beforeAll(() => {
27
- vitest
28
- .spyOn(useAudioFrameModule, 'useMediaStartsAt')
29
- .mockImplementation(() => -10);
30
- });
31
- afterAll(() => {
32
- vitest.spyOn(useAudioFrameModule, 'useMediaStartsAt').mockRestore();
33
- });
34
- test.skip('Media not mounted', () => {
35
- vitest.spyOn(useFrameModule, 'useCurrentFrame').mockImplementation(() => 9);
36
- const { result } = renderHook(() => useFrameForVolumeProp());
37
- expect(result.current).toEqual(-1);
38
- });
39
- test.skip('Media mounted', () => {
40
- vitest
41
- .spyOn(useFrameModule, 'useCurrentFrame')
42
- .mockImplementation(() => 10);
43
- const { result } = renderHook(() => useFrameForVolumeProp());
44
- expect(result.current).toEqual(0);
45
- });
46
- test.skip('Media mounted + 1 frame', () => {
47
- vitest
48
- .spyOn(useFrameModule, 'useCurrentFrame')
49
- .mockImplementation(() => 11);
50
- const { result } = renderHook(() => useFrameForVolumeProp());
51
- expect(result.current).toEqual(1);
52
- });
53
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,49 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { afterAll, beforeAll, expect, test, vitest } from 'vitest';
3
- import { Internals } from '../internals.js';
4
- import { useMediaInTimeline } from '../use-media-in-timeline.js';
5
- import * as useVideoConfigModule from '../use-video-config.js';
6
- import { renderHook } from './render-hook.js';
7
- import { mockCompositionContext } from './wrap-sequence-context.js';
8
- beforeAll(() => {
9
- vitest
10
- .spyOn(useVideoConfigModule, 'useVideoConfig')
11
- .mockImplementation(() => ({
12
- width: 10,
13
- height: 10,
14
- fps: 30,
15
- durationInFrames: 100,
16
- id: 'hithere',
17
- defaultProps: () => ({}),
18
- }));
19
- });
20
- afterAll(() => {
21
- vitest.spyOn(useVideoConfigModule, 'useVideoConfig').mockClear();
22
- });
23
- test('useMediaInTimeline registers and unregisters new sequence', () => {
24
- const registerSequence = vitest.fn();
25
- const unregisterSequence = vitest.fn();
26
- const wrapper = ({ children }) => (_jsx(Internals.CompositionManager.Provider, { value:
27
- // eslint-disable-next-line react/jsx-no-constructed-context-values
28
- {
29
- ...mockCompositionContext,
30
- registerSequence,
31
- unregisterSequence,
32
- }, children: children }));
33
- const audioRef = {
34
- current: { volume: 0.5 },
35
- };
36
- const { unmount } = renderHook(() => useMediaInTimeline({
37
- volume: 1,
38
- src: 'test',
39
- mediaVolume: 1,
40
- mediaType: 'audio',
41
- mediaRef: audioRef,
42
- playbackRate: 1,
43
- }), {
44
- wrapper,
45
- });
46
- expect(registerSequence).toHaveBeenCalled();
47
- unmount();
48
- expect(unregisterSequence).toHaveBeenCalled();
49
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,44 +0,0 @@
1
- import React from 'react';
2
- import { afterEach, beforeEach, describe, expect, test, vitest } from 'vitest';
3
- import { useMediaTagVolume } from '../use-media-tag-volume.js';
4
- import { renderHook } from './render-hook.js';
5
- describe('Should update state when volume changes', () => {
6
- const setState = vitest.fn();
7
- const useStateSpy = vitest.spyOn(React, 'useState');
8
- beforeEach(() => {
9
- // @ts-expect-error
10
- useStateSpy.mockImplementation((init) => [init, setState]);
11
- });
12
- afterEach(() => {
13
- useStateSpy.mockRestore();
14
- });
15
- test.skip('has the volume been set', () => {
16
- const addEventListener = vitest.fn();
17
- const removeEventListener = vitest.fn();
18
- let audioRef = {
19
- current: { volume: 0.5, addEventListener, removeEventListener },
20
- };
21
- const { rerender } = renderHook(({ mediaRef }) => useMediaTagVolume(mediaRef), {
22
- initialProps: { mediaRef: audioRef },
23
- });
24
- expect(setState).toHaveBeenCalledWith(0.5);
25
- audioRef = {
26
- current: { ...audioRef.current, volume: 0.75 },
27
- };
28
- rerender({ mediaRef: audioRef });
29
- expect(setState).toHaveBeenCalledWith(0.75);
30
- expect(addEventListener).toHaveBeenCalledWith('volumechange', expect.anything());
31
- expect(removeEventListener).toHaveBeenCalledWith('volumechange', expect.anything());
32
- });
33
- });
34
- test('Should listen for volume changes', () => {
35
- const addEventListener = vitest.fn();
36
- const removeEventListener = vitest.fn();
37
- const audioRef = {
38
- current: { volume: 0.5, addEventListener, removeEventListener },
39
- };
40
- renderHook(({ mediaRef }) => useMediaTagVolume(mediaRef), {
41
- initialProps: { mediaRef: audioRef },
42
- });
43
- expect(addEventListener).toHaveBeenCalledTimes(1);
44
- });
@@ -1,53 +0,0 @@
1
- import { expect, test, vitest } from 'vitest';
2
- import { useSyncVolumeWithMediaTag } from '../use-sync-volume-with-media-tag.js';
3
- import { renderHook } from './render-hook.js';
4
- test('has the volume been adapted', () => {
5
- var _a, _b;
6
- const addEventListener = vitest.fn();
7
- const removeEventListener = vitest.fn();
8
- const audioRef = {
9
- current: { volume: 0.5, addEventListener, removeEventListener },
10
- };
11
- const volume = 0.6;
12
- const volumePropFrame = 1;
13
- const actualVolume = 0.4;
14
- const initialProps = {
15
- volumePropFrame,
16
- actualVolume,
17
- volume,
18
- mediaRef: audioRef,
19
- mediaVolume: 1,
20
- };
21
- const { rerender } = renderHook((hookProps) => useSyncVolumeWithMediaTag(hookProps), {
22
- initialProps,
23
- });
24
- expect((_a = audioRef.current) === null || _a === void 0 ? void 0 : _a.volume).toEqual(initialProps.volume);
25
- const newVolume = 0.5;
26
- rerender({
27
- ...initialProps,
28
- volume: newVolume,
29
- });
30
- expect((_b = audioRef.current) === null || _b === void 0 ? void 0 : _b.volume).toEqual(newVolume);
31
- });
32
- test('volume should not be adapted', () => {
33
- var _a;
34
- const addEventListener = vitest.fn();
35
- const removeEventListener = vitest.fn();
36
- const audioRef = {
37
- current: { volume: 0.4, addEventListener, removeEventListener },
38
- };
39
- const volume = 0.4;
40
- const volumePropFrame = 1;
41
- const actualVolume = 0.4;
42
- const initialProps = {
43
- volumePropFrame,
44
- actualVolume,
45
- volume,
46
- mediaRef: audioRef,
47
- mediaVolume: 1,
48
- };
49
- renderHook((hookProps) => useSyncVolumeWithMediaTag(hookProps), {
50
- initialProps,
51
- });
52
- expect((_a = audioRef.current) === null || _a === void 0 ? void 0 : _a.volume).toEqual(initialProps.volume);
53
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,37 +0,0 @@
1
- import { describe, test } from 'vitest';
2
- import { validateStartFromProps } from '../validate-start-from-props.js';
3
- import { expectToThrow } from './expect-to-throw.js';
4
- describe('ValidateStartFrom props should throw', () => {
5
- describe('Throw with invalid startFrom prop', () => {
6
- test('It should throw if startFrom prop is negative', () => {
7
- expectToThrow(() => validateStartFromProps(-40, 1), /startFrom must be greater than equal to 0 instead got -40./);
8
- });
9
- test('It should throw if startFrom is not a number', () => {
10
- expectToThrow(
11
- // @ts-expect-error
12
- () => validateStartFromProps('10', 20), /type of startFrom prop must be a number, instead got type string./);
13
- });
14
- test('It should throw if startFrom is NaN', () => {
15
- expectToThrow(() => validateStartFromProps(NaN, 20), /startFrom prop can not be NaN or Infinity./);
16
- });
17
- test('It should throw if startFrom is Infinity', () => {
18
- expectToThrow(() => validateStartFromProps(Infinity, 20), /startFrom prop can not be NaN or Infinity./);
19
- });
20
- });
21
- describe('Throw with invalid endAt prop', () => {
22
- test('It should throw if endAt prop is negative', () => {
23
- expectToThrow(() => validateStartFromProps(0, -40), /endAt must be a positive number, instead got -40./);
24
- });
25
- test('It should throw if endAt is less than startFrom', () => {
26
- expectToThrow(() => validateStartFromProps(10, 1), /endAt prop must be greater than startFrom prop./);
27
- });
28
- test('It should throw if endAt is not a number', () => {
29
- expectToThrow(
30
- // @ts-expect-error
31
- () => validateStartFromProps(10, '20'), /type of endAt prop must be a number, instead got type string./);
32
- });
33
- test('It should throw if endAt is NaN', () => {
34
- expectToThrow(() => validateStartFromProps(10, NaN), /endAt prop can not be NaN./);
35
- });
36
- });
37
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,55 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * @vitest-environment jsdom
4
- */
5
- import { render } from '@testing-library/react';
6
- import React, { useContext } from 'react';
7
- import { describe, expect, test } from 'vitest';
8
- import { CanUseRemotionHooksProvider } from '../CanUseRemotionHooks.js';
9
- import { Internals } from '../internals.js';
10
- import { Video } from '../video';
11
- import { expectToThrow } from './expect-to-throw.js';
12
- const Wrapper = ({ children }) => {
13
- const compositions = useContext(Internals.CompositionManager);
14
- return (_jsx(CanUseRemotionHooksProvider, { children: _jsx(Internals.RemotionRoot, { numberOfAudioTags: 0, children: _jsx(Internals.CompositionManager.Provider
15
- // eslint-disable-next-line react/jsx-no-constructed-context-values
16
- , {
17
- // eslint-disable-next-line react/jsx-no-constructed-context-values
18
- value: {
19
- ...compositions,
20
- compositions: [
21
- {
22
- height: 1080,
23
- width: 1080,
24
- fps: 30,
25
- durationInFrames: 30,
26
- id: 'markup',
27
- nonce: 0,
28
- component: React.lazy(() => Promise.resolve({
29
- default: (() => null),
30
- })),
31
- defaultProps: undefined,
32
- folderName: null,
33
- parentFolderName: null,
34
- },
35
- ],
36
- currentComposition: 'markup',
37
- }, children: children }) }) }));
38
- };
39
- describe('Render correctly with props', () => {
40
- test('It should render Video without startFrom / endAt props', () => {
41
- expect(() => render(_jsx(Wrapper, { children: _jsx(Video, { src: "test" }) }))).not.toThrow();
42
- });
43
- test('It should render Video with startFrom props', () => {
44
- expect(() => render(_jsx(Wrapper, { children: _jsx(Video, { src: "test", startFrom: 10 }) }))).not.toThrow();
45
- });
46
- test('It should render Video with endAt props', () => {
47
- expect(() => render(_jsx(Wrapper, { children: _jsx(Video, { src: "test", endAt: 10 }) }))).not.toThrow();
48
- });
49
- test('It should render Video with startFrom and endAt props', () => {
50
- expect(() => render(_jsx(Wrapper, { children: _jsx(Video, { src: "test", startFrom: 10, endAt: 15 }) }))).not.toThrow();
51
- });
52
- test('It should throw if videoConfig/Wrapper is missing', () => {
53
- expectToThrow(() => render(_jsx(CanUseRemotionHooksProvider, { children: _jsx(Video, { startFrom: 10, endAt: 15 }) })), /No video config found/);
54
- });
55
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,93 +0,0 @@
1
- import { describe, expect, test } from 'vitest';
2
- import { evaluateVolume } from '../volume-prop.js';
3
- import { expectToThrow } from './expect-to-throw.js';
4
- describe('EvaluateVolume does not throw', () => {
5
- test('Volume is undefined', () => {
6
- const toEvaluate = {
7
- frame: 10,
8
- volume: undefined,
9
- mediaVolume: 1,
10
- allowAmplificationDuringRender: false,
11
- };
12
- expect(evaluateVolume(toEvaluate)).toEqual(1);
13
- });
14
- test('Volume is smaller than one', () => {
15
- const smallVolume = 0.5;
16
- const toEvaluate = {
17
- frame: 10,
18
- volume: smallVolume,
19
- mediaVolume: 1,
20
- allowAmplificationDuringRender: false,
21
- };
22
- expect(evaluateVolume(toEvaluate)).toEqual(smallVolume);
23
- });
24
- test('Volume is bigger than one', () => {
25
- const toEvaluate = {
26
- frame: 10,
27
- volume: 10,
28
- mediaVolume: 1,
29
- allowAmplificationDuringRender: true,
30
- };
31
- expect(evaluateVolume(toEvaluate)).toBe(10);
32
- });
33
- test('evaluated volume from frame that is smaller than one', () => {
34
- const toEvaluate = {
35
- frame: 1,
36
- volume: (frame) => frame * 0.5,
37
- mediaVolume: 1,
38
- allowAmplificationDuringRender: false,
39
- };
40
- expect(evaluateVolume(toEvaluate)).toBe(0.5);
41
- });
42
- test('evaluated volume from frame that is bigger than one', () => {
43
- const toEvaluate = {
44
- frame: 10,
45
- volume: (frame) => frame,
46
- mediaVolume: 1,
47
- allowAmplificationDuringRender: false,
48
- };
49
- expect(evaluateVolume(toEvaluate)).toBe(1);
50
- });
51
- });
52
- describe('evaluateVolume throws exception', () => {
53
- test('It should throw if volume prop is neither number nor undefined', () => {
54
- const toEvaluate = { frame: 10, volume: 'NaN' };
55
- expectToThrow(() => {
56
- // @ts-expect-error
57
- evaluateVolume(toEvaluate);
58
- }, /volume is not a function/);
59
- });
60
- test('It should throw if volume is invalid type', () => {
61
- const invalidVolume = 'anystring';
62
- const toEvaluate = { frame: 1, volume: () => invalidVolume, mediaVolume: 1 };
63
- // changing the test because string multiply by a number in javascript is `NaN`
64
- expectToThrow(() => {
65
- // @ts-expect-error
66
- evaluateVolume(toEvaluate);
67
- }, /You passed in a function to the volume prop but it returned NaN for frame 1./);
68
- });
69
- test('It should throw if volume is NaN', () => {
70
- const invalidVolume = NaN;
71
- const toEvaluate = {
72
- frame: 1,
73
- volume: () => invalidVolume,
74
- mediaVolume: 1,
75
- allowAmplificationDuringRender: false,
76
- };
77
- expectToThrow(() => {
78
- evaluateVolume(toEvaluate);
79
- }, /You passed in a function to the volume prop but it returned NaN for frame 1/);
80
- });
81
- test('It should throw if volume returns non finite number', () => {
82
- const invalidVolume = Infinity;
83
- const toEvaluate = {
84
- frame: 1,
85
- volume: () => invalidVolume,
86
- mediaVolume: 1,
87
- allowAmplificationDuringRender: false,
88
- };
89
- expectToThrow(() => {
90
- evaluateVolume(toEvaluate);
91
- }, /You passed in a function to the volume prop but it returned a non-finite number for frame 1/);
92
- });
93
- });
@@ -1,6 +0,0 @@
1
- import React from 'react';
2
- import type { CompositionManagerContext } from '../CompositionManager.js';
3
- export declare const mockCompositionContext: CompositionManagerContext;
4
- export declare const WrapSequenceContext: React.FC<{
5
- children: React.ReactNode;
6
- }>;
@@ -1,37 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { CanUseRemotionHooksProvider } from '../CanUseRemotionHooks.js';
3
- import { CompositionManager } from '../CompositionManager.js';
4
- const Comp = () => null;
5
- export const mockCompositionContext = {
6
- assets: [],
7
- compositions: [
8
- {
9
- id: 'my-comp',
10
- durationInFrames: 100,
11
- // @ts-expect-error
12
- component: Comp,
13
- defaultProps: {},
14
- folderName: null,
15
- fps: 30,
16
- height: 1080,
17
- width: 1080,
18
- parentFolderName: null,
19
- nonce: 0,
20
- },
21
- ],
22
- currentComposition: 'my-comp',
23
- folders: [],
24
- registerAsset: () => undefined,
25
- registerComposition: () => undefined,
26
- registerFolder: () => undefined,
27
- registerSequence: () => undefined,
28
- sequences: [],
29
- setCurrentComposition: () => undefined,
30
- unregisterAsset: () => undefined,
31
- unregisterComposition: () => undefined,
32
- unregisterFolder: () => undefined,
33
- unregisterSequence: () => undefined,
34
- };
35
- export const WrapSequenceContext = ({ children }) => {
36
- return (_jsx(CanUseRemotionHooksProvider, { children: _jsx(CompositionManager.Provider, { value: mockCompositionContext, children: children }) }));
37
- };
@@ -1,29 +0,0 @@
1
- import type { MutableRefObject } from 'react';
2
- export declare type PlayableMediaTag = {
3
- play: () => void;
4
- id: string;
5
- };
6
- export declare type TimelineContextValue = {
7
- frame: number;
8
- playing: boolean;
9
- rootId: string;
10
- playbackRate: number;
11
- imperativePlaying: MutableRefObject<boolean>;
12
- setPlaybackRate: (u: React.SetStateAction<number>) => void;
13
- audioAndVideoTags: MutableRefObject<PlayableMediaTag[]>;
14
- };
15
- export declare type SetTimelineContextValue = {
16
- setFrame: (u: React.SetStateAction<number>) => void;
17
- setPlaying: (u: React.SetStateAction<boolean>) => void;
18
- };
19
- export declare const TimelineContext: import("react").Context<TimelineContextValue>;
20
- export declare const SetTimelineContext: import("react").Context<SetTimelineContextValue>;
21
- export declare const useTimelinePosition: () => number;
22
- export declare const useTimelineSetFrame: () => (u: React.SetStateAction<number>) => void;
23
- declare type PlayingReturnType = readonly [
24
- boolean,
25
- (u: React.SetStateAction<boolean>) => void,
26
- MutableRefObject<boolean>
27
- ];
28
- export declare const usePlayingState: () => PlayingReturnType;
29
- export {};
@@ -1,35 +0,0 @@
1
- import { createContext, useContext, useMemo } from 'react';
2
- export const TimelineContext = createContext({
3
- frame: 0,
4
- playing: false,
5
- playbackRate: 1,
6
- rootId: '',
7
- imperativePlaying: {
8
- current: false,
9
- },
10
- setPlaybackRate: () => {
11
- throw new Error('default');
12
- },
13
- audioAndVideoTags: { current: [] },
14
- });
15
- export const SetTimelineContext = createContext({
16
- setFrame: () => {
17
- throw new Error('default');
18
- },
19
- setPlaying: () => {
20
- throw new Error('default');
21
- },
22
- });
23
- export const useTimelinePosition = () => {
24
- const state = useContext(TimelineContext);
25
- return state.frame;
26
- };
27
- export const useTimelineSetFrame = () => {
28
- const { setFrame } = useContext(SetTimelineContext);
29
- return setFrame;
30
- };
31
- export const usePlayingState = () => {
32
- const { playing, imperativePlaying } = useContext(TimelineContext);
33
- const { setPlaying } = useContext(SetTimelineContext);
34
- return useMemo(() => [playing, setPlaying, imperativePlaying], [imperativePlaying, playing, setPlaying]);
35
- };
@@ -1,3 +0,0 @@
1
- declare type Truthy<T> = T extends false | '' | 0 | null | undefined ? never : T;
2
- export declare function truthy<T>(value: T): value is Truthy<T>;
3
- export {};
@@ -1,3 +0,0 @@
1
- export function truthy(value) {
2
- return Boolean(value);
3
- }
@@ -1,6 +0,0 @@
1
- /**
2
- * Get the current frame of the video.
3
- * Frames are 0-indexed, meaning the first frame is 0, the last frame is the duration of the composition in frames minus one.
4
- * @link https://www.remotion.dev/docs/use-current-frame
5
- */
6
- export declare const useCurrentFrame: () => number;
@@ -1,24 +0,0 @@
1
- import { useContext } from 'react';
2
- import { CanUseRemotionHooks } from './CanUseRemotionHooks.js';
3
- import { SequenceContext } from './Sequence.js';
4
- import { useTimelinePosition } from './timeline-position-state.js';
5
- /**
6
- * Get the current frame of the video.
7
- * Frames are 0-indexed, meaning the first frame is 0, the last frame is the duration of the composition in frames minus one.
8
- * @link https://www.remotion.dev/docs/use-current-frame
9
- */
10
- export const useCurrentFrame = () => {
11
- const canUseRemotionHooks = useContext(CanUseRemotionHooks);
12
- if (!canUseRemotionHooks) {
13
- if (typeof window !== 'undefined' && window.remotion_isPlayer) {
14
- throw new Error(`useCurrentFrame can only be called inside a component that was passed to <Player>. See: https://www.remotion.dev/docs/player/examples`);
15
- }
16
- throw new Error(`useCurrentFrame() can only be called inside a component that was registered as a composition. See https://www.remotion.dev/docs/the-fundamentals#defining-compositions`);
17
- }
18
- const frame = useTimelinePosition();
19
- const context = useContext(SequenceContext);
20
- const contextOffset = context
21
- ? context.cumulatedFrom + context.relativeFrom
22
- : 0;
23
- return frame - contextOffset;
24
- };
@@ -1,7 +0,0 @@
1
- import type { ComponentPropsWithRef, ComponentType, ExoticComponent } from 'react';
2
- import type { CompProps } from './internals.js';
3
- declare type LazyExoticComponent<T extends ComponentType<any>> = ExoticComponent<ComponentPropsWithRef<T>> & {
4
- readonly _result: T;
5
- };
6
- export declare const useLazyComponent: <T>(compProps: CompProps<T>) => LazyExoticComponent<ComponentType<T>>;
7
- export {};
@@ -1,22 +0,0 @@
1
- import React, { useMemo } from 'react';
2
- // Expected, it can be any component props
3
- export const useLazyComponent = (compProps) => {
4
- const lazy = useMemo(() => {
5
- if ('lazyComponent' in compProps) {
6
- return React.lazy(compProps.lazyComponent);
7
- }
8
- if ('component' in compProps) {
9
- // In SSR, suspense is not yet supported, we cannot use React.lazy
10
- if (typeof document === 'undefined') {
11
- return compProps.component;
12
- }
13
- return React.lazy(() => Promise.resolve({ default: compProps.component }));
14
- }
15
- throw new Error("You must pass either 'component' or 'lazyComponent'");
16
- // Very important to leave the dependencies as they are, or instead
17
- // the player will remount on every frame.
18
- // @ts-expect-error
19
- // eslint-disable-next-line react-hooks/exhaustive-deps
20
- }, [compProps.component, compProps.lazyComponent]);
21
- return lazy;
22
- };
@@ -1,10 +0,0 @@
1
- import type { RefObject } from 'react';
2
- import type { VolumeProp } from './volume-prop.js';
3
- export declare const useMediaInTimeline: ({ volume, mediaVolume, mediaRef, src, mediaType, playbackRate, }: {
4
- volume: VolumeProp | undefined;
5
- mediaVolume: number;
6
- mediaRef: RefObject<HTMLAudioElement | HTMLVideoElement>;
7
- src: string | undefined;
8
- mediaType: 'audio' | 'video';
9
- playbackRate: number;
10
- }) => void;