remotion 3.3.45 → 3.3.52

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 (553) hide show
  1. package/dist/Sequence.js +1 -1
  2. package/dist/Still.d.ts +0 -1
  3. package/dist/audio/Audio.d.ts +2 -2
  4. package/dist/audio/AudioForDevelopment.d.ts +1 -1
  5. package/dist/audio/AudioForRendering.d.ts +1 -1
  6. package/dist/cjs/AbsoluteFill.d.ts +6 -0
  7. package/dist/cjs/AbsoluteFill.js +28 -0
  8. package/dist/cjs/CanUseRemotionHooks.d.ts +5 -0
  9. package/dist/cjs/CanUseRemotionHooks.js +10 -0
  10. package/dist/cjs/Clipper.d.ts +7 -0
  11. package/dist/cjs/Clipper.js +24 -0
  12. package/dist/cjs/Composition.d.ts +23 -0
  13. package/dist/cjs/Composition.js +113 -0
  14. package/dist/cjs/CompositionManager.d.ts +82 -0
  15. package/dist/cjs/CompositionManager.js +164 -0
  16. package/dist/cjs/Folder.d.ts +15 -0
  17. package/dist/cjs/Folder.js +33 -0
  18. package/dist/cjs/IFrame.d.ts +2 -0
  19. package/dist/cjs/IFrame.js +24 -0
  20. package/dist/cjs/Img.d.ts +2 -0
  21. package/dist/cjs/Img.js +52 -0
  22. package/dist/cjs/NativeLayers.d.ts +13 -0
  23. package/dist/cjs/NativeLayers.js +29 -0
  24. package/dist/cjs/Null.d.ts +2 -0
  25. package/dist/cjs/Null.js +25 -0
  26. package/dist/cjs/RemotionRoot.d.ts +5 -0
  27. package/dist/cjs/RemotionRoot.js +73 -0
  28. package/dist/cjs/Sequence.d.ts +29 -0
  29. package/dist/cjs/Sequence.js +131 -0
  30. package/dist/cjs/Still.d.ts +3 -0
  31. package/dist/cjs/Still.js +9 -0
  32. package/dist/cjs/absolute-src.d.ts +1 -0
  33. package/dist/cjs/absolute-src.js +7 -0
  34. package/dist/cjs/asset-types.d.ts +50 -0
  35. package/dist/cjs/asset-types.js +1 -0
  36. package/dist/cjs/audio/Audio.d.ts +8 -0
  37. package/dist/cjs/audio/Audio.js +52 -0
  38. package/dist/cjs/audio/AudioForDevelopment.d.ts +11 -0
  39. package/dist/cjs/audio/AudioForDevelopment.js +94 -0
  40. package/dist/cjs/audio/AudioForRendering.d.ts +10 -0
  41. package/dist/cjs/audio/AudioForRendering.js +111 -0
  42. package/dist/cjs/audio/index.d.ts +2 -0
  43. package/dist/cjs/audio/index.js +18 -0
  44. package/dist/cjs/audio/props.d.ts +12 -0
  45. package/dist/cjs/audio/props.js +2 -0
  46. package/dist/cjs/audio/shared-audio-tags.d.ts +37 -0
  47. package/dist/cjs/audio/shared-audio-tags.js +222 -0
  48. package/dist/cjs/audio/use-audio-frame.d.ts +6 -0
  49. package/dist/cjs/audio/use-audio-frame.js +23 -0
  50. package/dist/cjs/bezier.d.ts +1 -0
  51. package/dist/cjs/bezier.js +114 -0
  52. package/dist/cjs/cancel-render.d.ts +1 -0
  53. package/dist/cjs/cancel-render.js +43 -0
  54. package/dist/cjs/config/input-props.d.ts +1 -0
  55. package/dist/cjs/config/input-props.js +31 -0
  56. package/dist/cjs/config.d.ts +285 -0
  57. package/dist/cjs/config.js +21 -0
  58. package/dist/cjs/default-css.d.ts +3 -0
  59. package/dist/cjs/default-css.js +49 -0
  60. package/dist/cjs/delay-render.d.ts +14 -0
  61. package/dist/cjs/delay-render.js +77 -0
  62. package/dist/cjs/easing.d.ts +19 -0
  63. package/dist/cjs/easing.js +77 -0
  64. package/dist/cjs/freeze.d.ts +7 -0
  65. package/dist/cjs/freeze.js +34 -0
  66. package/dist/cjs/get-asset-file-name.d.ts +1 -0
  67. package/dist/cjs/get-asset-file-name.js +14 -0
  68. package/dist/cjs/get-environment.d.ts +3 -0
  69. package/dist/cjs/get-environment.js +34 -0
  70. package/dist/cjs/get-preview-dom-element.d.ts +1 -0
  71. package/dist/cjs/get-preview-dom-element.js +7 -0
  72. package/dist/cjs/get-static-files.d.ts +17 -0
  73. package/dist/cjs/get-static-files.js +31 -0
  74. package/dist/cjs/get-timeline-clip-name.d.ts +1 -0
  75. package/dist/cjs/get-timeline-clip-name.js +25 -0
  76. package/dist/cjs/index.d.ts +92 -0
  77. package/dist/cjs/index.js +73 -0
  78. package/dist/cjs/internals.d.ts +99 -0
  79. package/dist/cjs/internals.js +101 -0
  80. package/dist/cjs/interpolate-colors.d.ts +5 -0
  81. package/dist/cjs/interpolate-colors.js +401 -0
  82. package/dist/cjs/interpolate.d.ts +18 -0
  83. package/dist/cjs/interpolate.js +123 -0
  84. package/dist/cjs/is-approximately-the-same.d.ts +1 -0
  85. package/dist/cjs/is-approximately-the-same.js +8 -0
  86. package/dist/cjs/is-player.d.ts +3 -0
  87. package/dist/cjs/is-player.js +14 -0
  88. package/dist/cjs/loading-indicator.d.ts +2 -0
  89. package/dist/cjs/loading-indicator.js +35 -0
  90. package/dist/cjs/loop/index.d.ts +9 -0
  91. package/dist/cjs/loop/index.js +29 -0
  92. package/dist/cjs/multiple-versions-warning.d.ts +1 -0
  93. package/dist/cjs/multiple-versions-warning.js +32 -0
  94. package/dist/cjs/nonce.d.ts +7 -0
  95. package/dist/cjs/nonce.js +17 -0
  96. package/dist/cjs/play-and-handle-not-allowed-error.d.ts +2 -0
  97. package/dist/cjs/play-and-handle-not-allowed-error.js +44 -0
  98. package/dist/cjs/portal-node.d.ts +1 -0
  99. package/dist/cjs/portal-node.js +23 -0
  100. package/dist/cjs/prefetch-state.d.ts +8 -0
  101. package/dist/cjs/prefetch-state.js +27 -0
  102. package/dist/cjs/prefetch.d.ts +9 -0
  103. package/dist/cjs/prefetch.js +108 -0
  104. package/dist/cjs/random.d.ts +7 -0
  105. package/dist/cjs/random.js +42 -0
  106. package/dist/cjs/register-root.d.ts +4 -0
  107. package/dist/cjs/register-root.js +33 -0
  108. package/dist/cjs/series/flatten-children.d.ts +2 -0
  109. package/dist/cjs/series/flatten-children.js +19 -0
  110. package/dist/cjs/series/index.d.ts +13 -0
  111. package/dist/cjs/series/index.js +60 -0
  112. package/dist/cjs/setup-env-variables.d.ts +2 -0
  113. package/dist/cjs/setup-env-variables.js +36 -0
  114. package/dist/cjs/spring/index.d.ts +27 -0
  115. package/dist/cjs/spring/index.js +55 -0
  116. package/dist/cjs/spring/measure-spring.d.ts +8 -0
  117. package/dist/cjs/spring/measure-spring.js +64 -0
  118. package/dist/cjs/spring/spring-utils.d.ts +21 -0
  119. package/dist/cjs/spring/spring-utils.js +103 -0
  120. package/dist/cjs/static-file.d.ts +5 -0
  121. package/dist/cjs/static-file.js +33 -0
  122. package/dist/cjs/test/Img.test.d.ts +1 -0
  123. package/dist/cjs/test/Img.test.js +25 -0
  124. package/dist/cjs/test/absolute-src.test.d.ts +1 -0
  125. package/dist/cjs/test/absolute-src.test.js +18 -0
  126. package/dist/cjs/test/audio-for-rendering.test.d.ts +1 -0
  127. package/dist/cjs/test/audio-for-rendering.test.js +88 -0
  128. package/dist/cjs/test/audio.test.d.ts +1 -0
  129. package/dist/cjs/test/audio.test.js +76 -0
  130. package/dist/cjs/test/bezier.test.d.ts +1 -0
  131. package/dist/cjs/test/bezier.test.js +52 -0
  132. package/dist/cjs/test/composition-rules.test.d.ts +1 -0
  133. package/dist/cjs/test/composition-rules.test.js +30 -0
  134. package/dist/cjs/test/composition-validation.test.d.ts +1 -0
  135. package/dist/cjs/test/composition-validation.test.js +99 -0
  136. package/dist/cjs/test/easing.test.d.ts +1 -0
  137. package/dist/cjs/test/easing.test.js +191 -0
  138. package/dist/cjs/test/expect-to-throw.d.ts +1 -0
  139. package/dist/cjs/test/expect-to-throw.js +15 -0
  140. package/dist/cjs/test/freeze.test.d.ts +1 -0
  141. package/dist/cjs/test/freeze.test.js +65 -0
  142. package/dist/cjs/test/get-asset-file-name.test.d.ts +1 -0
  143. package/dist/cjs/test/get-asset-file-name.test.js +14 -0
  144. package/dist/cjs/test/get-current-time.test.d.ts +1 -0
  145. package/dist/cjs/test/get-current-time.test.js +74 -0
  146. package/dist/cjs/test/input-props.test.d.ts +1 -0
  147. package/dist/cjs/test/input-props.test.js +31 -0
  148. package/dist/cjs/test/interpolate.test.d.ts +1 -0
  149. package/dist/cjs/test/interpolate.test.js +138 -0
  150. package/dist/cjs/test/interpolateColors.test.d.ts +1 -0
  151. package/dist/cjs/test/interpolateColors.test.js +63 -0
  152. package/dist/cjs/test/loop-validation.test.d.ts +1 -0
  153. package/dist/cjs/test/loop-validation.test.js +93 -0
  154. package/dist/cjs/test/measure-spring.test.d.ts +1 -0
  155. package/dist/cjs/test/measure-spring.test.js +45 -0
  156. package/dist/cjs/test/media-validation.test.d.ts +1 -0
  157. package/dist/cjs/test/media-validation.test.js +47 -0
  158. package/dist/cjs/test/nested-sequences.test.d.ts +1 -0
  159. package/dist/cjs/test/nested-sequences.test.js +132 -0
  160. package/dist/cjs/test/not-all-props-in-media-tags.test.d.ts +1 -0
  161. package/dist/cjs/test/not-all-props-in-media-tags.test.js +33 -0
  162. package/dist/cjs/test/random.test.d.ts +1 -0
  163. package/dist/cjs/test/random.test.js +60 -0
  164. package/dist/cjs/test/ready-manager.test.d.ts +1 -0
  165. package/dist/cjs/test/ready-manager.test.js +29 -0
  166. package/dist/cjs/test/render-hook.d.ts +23 -0
  167. package/dist/cjs/test/render-hook.js +27 -0
  168. package/dist/cjs/test/sequence-from-initial-offset.test.d.ts +4 -0
  169. package/dist/cjs/test/sequence-from-initial-offset.test.js +35 -0
  170. package/dist/cjs/test/sequence-validation.test.d.ts +1 -0
  171. package/dist/cjs/test/sequence-validation.test.js +47 -0
  172. package/dist/cjs/test/series.test.d.ts +1 -0
  173. package/dist/cjs/test/series.test.js +115 -0
  174. package/dist/cjs/test/spring.test.d.ts +1 -0
  175. package/dist/cjs/test/spring.test.js +38 -0
  176. package/dist/cjs/test/truthy.test.d.ts +1 -0
  177. package/dist/cjs/test/truthy.test.js +24 -0
  178. package/dist/cjs/test/use-audio-frame.test.d.ts +1 -0
  179. package/dist/cjs/test/use-audio-frame.test.js +78 -0
  180. package/dist/cjs/test/use-media-in-timeline.test.d.ts +1 -0
  181. package/dist/cjs/test/use-media-in-timeline.test.js +74 -0
  182. package/dist/cjs/test/use-media-tag-volume.test.d.ts +1 -0
  183. package/dist/cjs/test/use-media-tag-volume.test.js +49 -0
  184. package/dist/cjs/test/use-sync-volume-with-media-tag.test.d.ts +1 -0
  185. package/dist/cjs/test/use-sync-volume-with-media-tag.test.js +55 -0
  186. package/dist/cjs/test/validate-start-from-props.test.d.ts +1 -0
  187. package/dist/cjs/test/validate-start-from-props.test.js +39 -0
  188. package/dist/cjs/test/video.test.d.ts +1 -0
  189. package/dist/cjs/test/video.test.js +80 -0
  190. package/dist/cjs/test/volume-prop.test.d.ts +1 -0
  191. package/dist/cjs/test/volume-prop.test.js +95 -0
  192. package/dist/cjs/test/wrap-sequence-context.d.ts +6 -0
  193. package/dist/cjs/test/wrap-sequence-context.js +41 -0
  194. package/dist/cjs/timeline-position-state.d.ts +29 -0
  195. package/dist/cjs/timeline-position-state.js +41 -0
  196. package/dist/cjs/truthy.d.ts +3 -0
  197. package/dist/cjs/truthy.js +7 -0
  198. package/dist/cjs/use-current-frame.d.ts +6 -0
  199. package/dist/cjs/use-current-frame.js +28 -0
  200. package/dist/cjs/use-lazy-component.d.ts +7 -0
  201. package/dist/cjs/use-lazy-component.js +49 -0
  202. package/dist/cjs/use-media-in-timeline.d.ts +10 -0
  203. package/dist/cjs/use-media-in-timeline.js +129 -0
  204. package/dist/cjs/use-media-playback.d.ts +10 -0
  205. package/dist/cjs/use-media-playback.js +77 -0
  206. package/dist/cjs/use-media-tag-volume.d.ts +2 -0
  207. package/dist/cjs/use-media-tag-volume.js +31 -0
  208. package/dist/cjs/use-sync-volume-with-media-tag.d.ts +10 -0
  209. package/dist/cjs/use-sync-volume-with-media-tag.js +21 -0
  210. package/dist/cjs/use-unsafe-video-config.d.ts +2 -0
  211. package/dist/cjs/use-unsafe-video-config.js +27 -0
  212. package/dist/cjs/use-video-config.d.ts +7 -0
  213. package/dist/cjs/use-video-config.js +29 -0
  214. package/dist/cjs/use-video.d.ts +13 -0
  215. package/dist/cjs/use-video.js +28 -0
  216. package/dist/cjs/validate-frame.d.ts +1 -0
  217. package/dist/cjs/validate-frame.js +24 -0
  218. package/dist/cjs/validate-media-props.d.ts +4 -0
  219. package/dist/cjs/validate-media-props.js +24 -0
  220. package/dist/cjs/validate-start-from-props.d.ts +1 -0
  221. package/dist/cjs/validate-start-from-props.js +31 -0
  222. package/dist/cjs/validation/validate-composition-id.d.ts +3 -0
  223. package/dist/cjs/validation/validate-composition-id.js +13 -0
  224. package/dist/cjs/validation/validate-dimensions.d.ts +1 -0
  225. package/dist/cjs/validation/validate-dimensions.js +21 -0
  226. package/dist/cjs/validation/validate-duration-in-frames.d.ts +1 -0
  227. package/dist/cjs/validation/validate-duration-in-frames.js +15 -0
  228. package/dist/cjs/validation/validate-folder-name.d.ts +3 -0
  229. package/dist/cjs/validation/validate-folder-name.js +19 -0
  230. package/dist/cjs/validation/validate-fps.d.ts +1 -0
  231. package/dist/cjs/validation/validate-fps.js +21 -0
  232. package/dist/cjs/validation/validate-offthreadvideo-image-format.d.ts +1 -0
  233. package/dist/cjs/validation/validate-offthreadvideo-image-format.js +15 -0
  234. package/dist/cjs/validation/validation-spring-duration.d.ts +1 -0
  235. package/dist/cjs/validation/validation-spring-duration.js +21 -0
  236. package/dist/cjs/version.d.ts +1 -0
  237. package/dist/cjs/version.js +5 -0
  238. package/dist/cjs/video/OffthreadVideo.d.ts +3 -0
  239. package/dist/cjs/video/OffthreadVideo.js +33 -0
  240. package/dist/cjs/video/OffthreadVideoForRendering.d.ts +3 -0
  241. package/dist/cjs/video/OffthreadVideoForRendering.js +104 -0
  242. package/dist/cjs/video/Video.d.ts +8 -0
  243. package/dist/cjs/video/Video.js +50 -0
  244. package/dist/cjs/video/VideoForDevelopment.d.ts +11 -0
  245. package/dist/cjs/video/VideoForDevelopment.js +113 -0
  246. package/dist/cjs/video/VideoForRendering.d.ts +10 -0
  247. package/dist/cjs/video/VideoForRendering.js +203 -0
  248. package/dist/cjs/video/duration-state.d.ts +17 -0
  249. package/dist/cjs/video/duration-state.js +34 -0
  250. package/dist/cjs/video/get-current-time.d.ts +13 -0
  251. package/dist/cjs/video/get-current-time.js +31 -0
  252. package/dist/cjs/video/index.d.ts +3 -0
  253. package/dist/cjs/video/index.js +7 -0
  254. package/dist/cjs/video/props.d.ts +25 -0
  255. package/dist/cjs/video/props.js +2 -0
  256. package/dist/cjs/video/video-fragment.d.ts +12 -0
  257. package/dist/cjs/video/video-fragment.js +60 -0
  258. package/dist/cjs/video-config.d.ts +8 -0
  259. package/dist/cjs/video-config.js +2 -0
  260. package/dist/cjs/volume-position-state.d.ts +19 -0
  261. package/dist/cjs/volume-position-state.js +32 -0
  262. package/dist/cjs/volume-prop.d.ts +7 -0
  263. package/dist/cjs/volume-prop.js +24 -0
  264. package/dist/cjs/warn-about-non-seekable-media.d.ts +1 -0
  265. package/dist/cjs/warn-about-non-seekable-media.js +34 -0
  266. package/dist/cjs/wrap-remotion-context.d.ts +18 -0
  267. package/dist/cjs/wrap-remotion-context.js +73 -0
  268. package/dist/esm/AbsoluteFill.d.ts +6 -0
  269. package/dist/esm/AbsoluteFill.js +25 -0
  270. package/dist/esm/CanUseRemotionHooks.d.ts +5 -0
  271. package/dist/esm/CanUseRemotionHooks.js +6 -0
  272. package/dist/esm/Clipper.d.ts +7 -0
  273. package/dist/esm/Clipper.js +20 -0
  274. package/dist/esm/Composition.d.ts +23 -0
  275. package/dist/esm/Composition.js +108 -0
  276. package/dist/esm/CompositionManager.d.ts +82 -0
  277. package/dist/esm/CompositionManager.js +137 -0
  278. package/dist/esm/Folder.d.ts +15 -0
  279. package/dist/esm/Folder.js +29 -0
  280. package/dist/esm/IFrame.d.ts +2 -0
  281. package/dist/esm/IFrame.js +21 -0
  282. package/dist/esm/Img.d.ts +2 -0
  283. package/dist/esm/Img.js +49 -0
  284. package/dist/esm/NativeLayers.d.ts +13 -0
  285. package/dist/esm/NativeLayers.js +25 -0
  286. package/dist/esm/Null.d.ts +2 -0
  287. package/dist/esm/Null.js +21 -0
  288. package/dist/esm/RemotionRoot.d.ts +5 -0
  289. package/dist/esm/RemotionRoot.js +69 -0
  290. package/dist/esm/Sequence.d.ts +29 -0
  291. package/dist/esm/Sequence.js +128 -0
  292. package/dist/esm/Still.d.ts +3 -0
  293. package/dist/esm/Still.js +5 -0
  294. package/dist/esm/absolute-src.d.ts +1 -0
  295. package/dist/esm/absolute-src.js +3 -0
  296. package/dist/esm/asset-types.d.ts +50 -0
  297. package/dist/esm/asset-types.js +1 -0
  298. package/dist/esm/audio/Audio.d.ts +8 -0
  299. package/dist/esm/audio/Audio.js +49 -0
  300. package/dist/esm/audio/AudioForDevelopment.d.ts +11 -0
  301. package/dist/esm/audio/AudioForDevelopment.js +91 -0
  302. package/dist/esm/audio/AudioForRendering.d.ts +10 -0
  303. package/dist/esm/audio/AudioForRendering.js +108 -0
  304. package/dist/esm/audio/index.d.ts +2 -0
  305. package/dist/esm/audio/index.js +2 -0
  306. package/dist/esm/audio/props.d.ts +12 -0
  307. package/dist/esm/audio/props.js +1 -0
  308. package/dist/esm/audio/shared-audio-tags.d.ts +37 -0
  309. package/dist/esm/audio/shared-audio-tags.js +194 -0
  310. package/dist/esm/audio/use-audio-frame.d.ts +6 -0
  311. package/dist/esm/audio/use-audio-frame.js +18 -0
  312. package/dist/esm/bezier.d.ts +1 -0
  313. package/dist/esm/bezier.js +110 -0
  314. package/dist/esm/cancel-render.d.ts +1 -0
  315. package/dist/esm/cancel-render.js +39 -0
  316. package/dist/esm/config/input-props.d.ts +1 -0
  317. package/dist/esm/config/input-props.js +27 -0
  318. package/dist/esm/config.d.ts +285 -0
  319. package/dist/esm/config.js +17 -0
  320. package/dist/esm/default-css.d.ts +3 -0
  321. package/dist/esm/default-css.js +44 -0
  322. package/dist/esm/delay-render.d.ts +14 -0
  323. package/dist/esm/delay-render.js +72 -0
  324. package/dist/esm/easing.d.ts +19 -0
  325. package/dist/esm/easing.js +73 -0
  326. package/dist/esm/freeze.d.ts +7 -0
  327. package/dist/esm/freeze.js +30 -0
  328. package/dist/esm/get-asset-file-name.d.ts +1 -0
  329. package/dist/esm/get-asset-file-name.js +10 -0
  330. package/dist/esm/get-environment.d.ts +3 -0
  331. package/dist/esm/get-environment.js +29 -0
  332. package/dist/esm/get-preview-dom-element.d.ts +1 -0
  333. package/dist/esm/get-preview-dom-element.js +3 -0
  334. package/dist/esm/get-static-files.d.ts +17 -0
  335. package/dist/esm/get-static-files.js +27 -0
  336. package/dist/esm/get-timeline-clip-name.d.ts +1 -0
  337. package/dist/esm/get-timeline-clip-name.js +21 -0
  338. package/dist/esm/index.d.ts +92 -0
  339. package/dist/esm/index.js +41 -0
  340. package/dist/esm/internals.d.ts +99 -0
  341. package/dist/esm/internals.js +75 -0
  342. package/dist/esm/interpolate-colors.d.ts +5 -0
  343. package/dist/esm/interpolate-colors.js +397 -0
  344. package/dist/esm/interpolate.d.ts +18 -0
  345. package/dist/esm/interpolate.js +119 -0
  346. package/dist/esm/is-approximately-the-same.d.ts +1 -0
  347. package/dist/esm/is-approximately-the-same.js +4 -0
  348. package/dist/esm/is-player.d.ts +3 -0
  349. package/dist/esm/is-player.js +9 -0
  350. package/dist/esm/loading-indicator.d.ts +2 -0
  351. package/dist/esm/loading-indicator.js +31 -0
  352. package/dist/esm/loop/index.d.ts +9 -0
  353. package/dist/esm/loop/index.js +25 -0
  354. package/dist/esm/multiple-versions-warning.d.ts +1 -0
  355. package/dist/esm/multiple-versions-warning.js +28 -0
  356. package/dist/esm/nonce.d.ts +7 -0
  357. package/dist/esm/nonce.js +13 -0
  358. package/dist/esm/play-and-handle-not-allowed-error.d.ts +2 -0
  359. package/dist/esm/play-and-handle-not-allowed-error.js +40 -0
  360. package/dist/esm/portal-node.d.ts +1 -0
  361. package/dist/esm/portal-node.js +19 -0
  362. package/dist/esm/prefetch-state.d.ts +8 -0
  363. package/dist/esm/prefetch-state.js +22 -0
  364. package/dist/esm/prefetch.d.ts +9 -0
  365. package/dist/esm/prefetch.js +103 -0
  366. package/dist/esm/random.d.ts +7 -0
  367. package/dist/esm/random.js +38 -0
  368. package/dist/esm/register-root.d.ts +4 -0
  369. package/dist/esm/register-root.js +27 -0
  370. package/dist/esm/series/flatten-children.d.ts +2 -0
  371. package/dist/esm/series/flatten-children.js +12 -0
  372. package/dist/esm/series/index.d.ts +13 -0
  373. package/dist/esm/series/index.js +57 -0
  374. package/dist/esm/setup-env-variables.d.ts +2 -0
  375. package/dist/esm/setup-env-variables.js +32 -0
  376. package/dist/esm/spring/index.d.ts +27 -0
  377. package/dist/esm/spring/index.js +50 -0
  378. package/dist/esm/spring/measure-spring.d.ts +8 -0
  379. package/dist/esm/spring/measure-spring.js +60 -0
  380. package/dist/esm/spring/spring-utils.d.ts +21 -0
  381. package/dist/esm/spring/spring-utils.js +99 -0
  382. package/dist/esm/static-file.d.ts +5 -0
  383. package/dist/esm/static-file.js +29 -0
  384. package/dist/esm/test/Img.test.d.ts +1 -0
  385. package/dist/esm/test/Img.test.js +20 -0
  386. package/dist/esm/test/absolute-src.test.d.ts +1 -0
  387. package/dist/esm/test/absolute-src.test.js +16 -0
  388. package/dist/esm/test/audio-for-rendering.test.d.ts +1 -0
  389. package/dist/esm/test/audio-for-rendering.test.js +83 -0
  390. package/dist/esm/test/audio.test.d.ts +1 -0
  391. package/dist/esm/test/audio.test.js +51 -0
  392. package/dist/esm/test/bezier.test.d.ts +1 -0
  393. package/dist/esm/test/bezier.test.js +50 -0
  394. package/dist/esm/test/composition-rules.test.d.ts +1 -0
  395. package/dist/esm/test/composition-rules.test.js +28 -0
  396. package/dist/esm/test/composition-validation.test.d.ts +1 -0
  397. package/dist/esm/test/composition-validation.test.js +97 -0
  398. package/dist/esm/test/easing.test.d.ts +1 -0
  399. package/dist/esm/test/easing.test.js +189 -0
  400. package/dist/esm/test/expect-to-throw.d.ts +1 -0
  401. package/dist/esm/test/expect-to-throw.js +11 -0
  402. package/dist/esm/test/freeze.test.d.ts +1 -0
  403. package/dist/esm/test/freeze.test.js +63 -0
  404. package/dist/esm/test/get-asset-file-name.test.d.ts +1 -0
  405. package/dist/esm/test/get-asset-file-name.test.js +12 -0
  406. package/dist/esm/test/get-current-time.test.d.ts +1 -0
  407. package/dist/esm/test/get-current-time.test.js +72 -0
  408. package/dist/esm/test/input-props.test.d.ts +1 -0
  409. package/dist/esm/test/input-props.test.js +29 -0
  410. package/dist/esm/test/interpolate.test.d.ts +1 -0
  411. package/dist/esm/test/interpolate.test.js +136 -0
  412. package/dist/esm/test/interpolateColors.test.d.ts +1 -0
  413. package/dist/esm/test/interpolateColors.test.js +61 -0
  414. package/dist/esm/test/loop-validation.test.d.ts +1 -0
  415. package/dist/esm/test/loop-validation.test.js +68 -0
  416. package/dist/esm/test/measure-spring.test.d.ts +1 -0
  417. package/dist/esm/test/measure-spring.test.js +43 -0
  418. package/dist/esm/test/media-validation.test.d.ts +1 -0
  419. package/dist/esm/test/media-validation.test.js +45 -0
  420. package/dist/esm/test/nested-sequences.test.d.ts +1 -0
  421. package/dist/esm/test/nested-sequences.test.js +130 -0
  422. package/dist/esm/test/not-all-props-in-media-tags.test.d.ts +1 -0
  423. package/dist/esm/test/not-all-props-in-media-tags.test.js +28 -0
  424. package/dist/esm/test/random.test.d.ts +1 -0
  425. package/dist/esm/test/random.test.js +58 -0
  426. package/dist/esm/test/ready-manager.test.d.ts +1 -0
  427. package/dist/esm/test/ready-manager.test.js +27 -0
  428. package/dist/esm/test/render-hook.d.ts +23 -0
  429. package/dist/esm/test/render-hook.js +20 -0
  430. package/dist/esm/test/sequence-from-initial-offset.test.d.ts +4 -0
  431. package/dist/esm/test/sequence-from-initial-offset.test.js +33 -0
  432. package/dist/esm/test/sequence-validation.test.d.ts +1 -0
  433. package/dist/esm/test/sequence-validation.test.js +45 -0
  434. package/dist/esm/test/series.test.d.ts +1 -0
  435. package/dist/esm/test/series.test.js +113 -0
  436. package/dist/esm/test/spring.test.d.ts +1 -0
  437. package/dist/esm/test/spring.test.js +36 -0
  438. package/dist/esm/test/truthy.test.d.ts +1 -0
  439. package/dist/esm/test/truthy.test.js +22 -0
  440. package/dist/esm/test/use-audio-frame.test.d.ts +1 -0
  441. package/dist/esm/test/use-audio-frame.test.js +53 -0
  442. package/dist/esm/test/use-media-in-timeline.test.d.ts +1 -0
  443. package/dist/esm/test/use-media-in-timeline.test.js +49 -0
  444. package/dist/esm/test/use-media-tag-volume.test.d.ts +1 -0
  445. package/dist/esm/test/use-media-tag-volume.test.js +44 -0
  446. package/dist/esm/test/use-sync-volume-with-media-tag.test.d.ts +1 -0
  447. package/dist/esm/test/use-sync-volume-with-media-tag.test.js +53 -0
  448. package/dist/esm/test/validate-start-from-props.test.d.ts +1 -0
  449. package/dist/esm/test/validate-start-from-props.test.js +37 -0
  450. package/dist/esm/test/video.test.d.ts +1 -0
  451. package/dist/esm/test/video.test.js +55 -0
  452. package/dist/esm/test/volume-prop.test.d.ts +1 -0
  453. package/dist/esm/test/volume-prop.test.js +93 -0
  454. package/dist/esm/test/wrap-sequence-context.d.ts +6 -0
  455. package/dist/esm/test/wrap-sequence-context.js +37 -0
  456. package/dist/esm/timeline-position-state.d.ts +29 -0
  457. package/dist/esm/timeline-position-state.js +35 -0
  458. package/dist/esm/truthy.d.ts +3 -0
  459. package/dist/esm/truthy.js +3 -0
  460. package/dist/esm/use-current-frame.d.ts +6 -0
  461. package/dist/esm/use-current-frame.js +24 -0
  462. package/dist/esm/use-lazy-component.d.ts +7 -0
  463. package/dist/esm/use-lazy-component.js +22 -0
  464. package/dist/esm/use-media-in-timeline.d.ts +10 -0
  465. package/dist/esm/use-media-in-timeline.js +125 -0
  466. package/dist/esm/use-media-playback.d.ts +10 -0
  467. package/dist/esm/use-media-playback.js +73 -0
  468. package/dist/esm/use-media-tag-volume.d.ts +2 -0
  469. package/dist/esm/use-media-tag-volume.js +27 -0
  470. package/dist/esm/use-sync-volume-with-media-tag.d.ts +10 -0
  471. package/dist/esm/use-sync-volume-with-media-tag.js +17 -0
  472. package/dist/esm/use-unsafe-video-config.d.ts +2 -0
  473. package/dist/esm/use-unsafe-video-config.js +23 -0
  474. package/dist/esm/use-video-config.d.ts +7 -0
  475. package/dist/esm/use-video-config.js +25 -0
  476. package/dist/esm/use-video.d.ts +13 -0
  477. package/dist/esm/use-video.js +24 -0
  478. package/dist/esm/validate-frame.d.ts +1 -0
  479. package/dist/esm/validate-frame.js +20 -0
  480. package/dist/esm/validate-media-props.d.ts +4 -0
  481. package/dist/esm/validate-media-props.js +20 -0
  482. package/dist/esm/validate-start-from-props.d.ts +1 -0
  483. package/dist/esm/validate-start-from-props.js +27 -0
  484. package/dist/esm/validation/validate-composition-id.d.ts +3 -0
  485. package/dist/esm/validation/validate-composition-id.js +8 -0
  486. package/dist/esm/validation/validate-dimensions.d.ts +1 -0
  487. package/dist/esm/validation/validate-dimensions.js +17 -0
  488. package/dist/esm/validation/validate-duration-in-frames.d.ts +1 -0
  489. package/dist/esm/validation/validate-duration-in-frames.js +11 -0
  490. package/dist/esm/validation/validate-folder-name.d.ts +3 -0
  491. package/dist/esm/validation/validate-folder-name.js +14 -0
  492. package/dist/esm/validation/validate-fps.d.ts +1 -0
  493. package/dist/esm/validation/validate-fps.js +17 -0
  494. package/dist/esm/validation/validate-offthreadvideo-image-format.d.ts +1 -0
  495. package/dist/esm/validation/validate-offthreadvideo-image-format.js +11 -0
  496. package/dist/esm/validation/validation-spring-duration.d.ts +1 -0
  497. package/dist/esm/validation/validation-spring-duration.js +17 -0
  498. package/dist/esm/version.d.ts +1 -0
  499. package/dist/esm/version.js +2 -0
  500. package/dist/esm/video/OffthreadVideo.d.ts +3 -0
  501. package/dist/esm/video/OffthreadVideo.js +29 -0
  502. package/dist/esm/video/OffthreadVideoForRendering.d.ts +3 -0
  503. package/dist/esm/video/OffthreadVideoForRendering.js +100 -0
  504. package/dist/esm/video/Video.d.ts +8 -0
  505. package/dist/esm/video/Video.js +47 -0
  506. package/dist/esm/video/VideoForDevelopment.d.ts +11 -0
  507. package/dist/esm/video/VideoForDevelopment.js +110 -0
  508. package/dist/esm/video/VideoForRendering.d.ts +10 -0
  509. package/dist/esm/video/VideoForRendering.js +200 -0
  510. package/dist/esm/video/duration-state.d.ts +17 -0
  511. package/dist/esm/video/duration-state.js +29 -0
  512. package/dist/esm/video/get-current-time.d.ts +13 -0
  513. package/dist/esm/video/get-current-time.js +26 -0
  514. package/dist/esm/video/index.d.ts +3 -0
  515. package/dist/esm/video/index.js +2 -0
  516. package/dist/esm/video/props.d.ts +25 -0
  517. package/dist/esm/video/props.js +1 -0
  518. package/dist/esm/video/video-fragment.d.ts +12 -0
  519. package/dist/esm/video/video-fragment.js +55 -0
  520. package/dist/esm/video-config.d.ts +8 -0
  521. package/dist/esm/video-config.js +1 -0
  522. package/dist/esm/volume-position-state.d.ts +19 -0
  523. package/dist/esm/volume-position-state.js +27 -0
  524. package/dist/esm/volume-prop.d.ts +7 -0
  525. package/dist/esm/volume-prop.js +20 -0
  526. package/dist/esm/warn-about-non-seekable-media.d.ts +1 -0
  527. package/dist/esm/warn-about-non-seekable-media.js +30 -0
  528. package/dist/esm/wrap-remotion-context.d.ts +18 -0
  529. package/dist/esm/wrap-remotion-context.js +45 -0
  530. package/dist/internals.d.ts +0 -1
  531. package/dist/series/index.js +5 -2
  532. package/dist/tsconfig-cjs.tsbuildinfo +1 -0
  533. package/dist/use-video.d.ts +0 -1
  534. package/dist/version.d.ts +1 -1
  535. package/dist/version.js +1 -1
  536. package/dist/video/Video.d.ts +1 -1
  537. package/dist/video/VideoForDevelopment.d.ts +1 -1
  538. package/dist/video/VideoForRendering.d.ts +1 -1
  539. package/package.json +23 -12
  540. package/tsconfig-cjs.json +11 -0
  541. package/tsconfig.json +3 -3
  542. package/dist/LayerMaster.d.ts +0 -8
  543. package/dist/LayerMaster.js +0 -39
  544. package/dist/Satori.d.ts +0 -5
  545. package/dist/Satori.js +0 -92
  546. package/dist/get-compositions-from-markup.d.ts +0 -3
  547. package/dist/get-compositions-from-markup.js +0 -19
  548. package/dist/layers.d.ts +0 -24
  549. package/dist/layers.js +0 -149
  550. package/dist/video/NativeVideo.d.ts +0 -5
  551. package/dist/video/NativeVideo.js +0 -33
  552. package/dist/video/NativeVideoForRendering.d.ts +0 -8
  553. package/dist/video/NativeVideoForRendering.js +0 -14
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,191 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const easing_js_1 = require("../easing.js");
5
+ const numbersToTest = [-0.5, 0, 0.4, 0.5, 0.7, 1, 1.5];
6
+ (0, vitest_1.describe)('Easing step0', () => {
7
+ const step0 = (n) => {
8
+ return n > 0 ? 1 : 0;
9
+ };
10
+ const out = (n) => 1 - step0(1 - n);
11
+ const inOut = (n) => {
12
+ if (n >= 0.5) {
13
+ return 1 - step0((1 - n) * 2) / 2;
14
+ }
15
+ return step0(n * 2) / 2;
16
+ };
17
+ (0, vitest_1.test)('Easing In', () => {
18
+ const easingIn = easing_js_1.Easing.in(easing_js_1.Easing.step0);
19
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingIn(n)).toBe(step0(n)));
20
+ });
21
+ (0, vitest_1.test)('Easing Out', () => {
22
+ const easingOut = easing_js_1.Easing.out(easing_js_1.Easing.step0);
23
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingOut(n)).toBe(out(n)));
24
+ });
25
+ (0, vitest_1.test)('Easing In Out', () => {
26
+ const easingInOut = easing_js_1.Easing.inOut(easing_js_1.Easing.step0);
27
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingInOut(n)).toBe(inOut(n)));
28
+ });
29
+ });
30
+ (0, vitest_1.describe)('Easing step1', () => {
31
+ const step1 = (n) => {
32
+ return n >= 1 ? 1 : 0;
33
+ };
34
+ const out = (n) => 1 - step1(1 - n);
35
+ const inOut = (n) => {
36
+ if (n >= 0.5) {
37
+ return 1 - step1((1 - n) * 2) / 2;
38
+ }
39
+ return step1(n * 2) / 2;
40
+ };
41
+ (0, vitest_1.test)('Easing In', () => {
42
+ const easingIn = easing_js_1.Easing.in(easing_js_1.Easing.step1);
43
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingIn(n)).toBe(step1(n)));
44
+ });
45
+ (0, vitest_1.test)('Easing Out', () => {
46
+ const easingOut = easing_js_1.Easing.out(easing_js_1.Easing.step1);
47
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingOut(n)).toBe(out(n)));
48
+ });
49
+ (0, vitest_1.test)('Easing In Out', () => {
50
+ const easingInOut = easing_js_1.Easing.inOut(easing_js_1.Easing.step1);
51
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingInOut(n)).toBe(inOut(n)));
52
+ });
53
+ });
54
+ (0, vitest_1.describe)('Easing linear', () => {
55
+ (0, vitest_1.test)('Easing In', () => {
56
+ const easingIn = easing_js_1.Easing.in(easing_js_1.Easing.linear);
57
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingIn(n)).toBe(n));
58
+ });
59
+ (0, vitest_1.test)('Easing In Out', () => {
60
+ const easingOut = easing_js_1.Easing.out(easing_js_1.Easing.linear);
61
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingOut(n)).toBe(n));
62
+ });
63
+ (0, vitest_1.test)('Easing Out', () => {
64
+ const easingInOut = easing_js_1.Easing.inOut(easing_js_1.Easing.linear);
65
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingInOut(n)).toBe(n));
66
+ });
67
+ });
68
+ (0, vitest_1.describe)('Easing Quadratic', () => {
69
+ const quad = (n) => n * n;
70
+ const out = (n) => 1 - quad(1 - n);
71
+ const inOut = (n) => {
72
+ if (n >= 0.5) {
73
+ return 1 - quad((1 - n) * 2) / 2;
74
+ }
75
+ return quad(n * 2) / 2;
76
+ };
77
+ (0, vitest_1.test)('Easing In', () => {
78
+ const easingIn = easing_js_1.Easing.in(easing_js_1.Easing.quad);
79
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingIn(n)).toBe(quad(n)));
80
+ });
81
+ (0, vitest_1.test)('Easing In Out', () => {
82
+ const easingOut = easing_js_1.Easing.out(easing_js_1.Easing.quad);
83
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingOut(n)).toBe(out(n)));
84
+ });
85
+ (0, vitest_1.test)('Easing Out', () => {
86
+ const easingInOut = easing_js_1.Easing.inOut(easing_js_1.Easing.quad);
87
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingInOut(n)).toBe(inOut(n)));
88
+ });
89
+ });
90
+ (0, vitest_1.describe)('Easing Cubic', () => {
91
+ const cubic = (n) => n * n * n;
92
+ const out = (n) => 1 - cubic(1 - n);
93
+ const inOut = (n) => {
94
+ if (n >= 0.5) {
95
+ return 1 - cubic((1 - n) * 2) / 2;
96
+ }
97
+ return cubic(n * 2) / 2;
98
+ };
99
+ (0, vitest_1.test)('Easing In', () => {
100
+ const easingIn = easing_js_1.Easing.in(easing_js_1.Easing.cubic);
101
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingIn(n)).toBe(cubic(n)));
102
+ });
103
+ (0, vitest_1.test)('Easing In Out', () => {
104
+ const easingOut = easing_js_1.Easing.out(easing_js_1.Easing.cubic);
105
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingOut(n)).toBe(out(n)));
106
+ });
107
+ (0, vitest_1.test)('Easing Out', () => {
108
+ const easingInOut = easing_js_1.Easing.inOut(easing_js_1.Easing.cubic);
109
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingInOut(n)).toBe(inOut(n)));
110
+ });
111
+ });
112
+ (0, vitest_1.describe)('Easing Circle', () => {
113
+ const circle = (n) => 1 - Math.sqrt(1 - n * n);
114
+ const out = (n) => 1 - circle(1 - n);
115
+ const inOut = (n) => {
116
+ if (n >= 0.5) {
117
+ return 1 - circle((1 - n) * 2) / 2;
118
+ }
119
+ return circle(n * 2) / 2;
120
+ };
121
+ (0, vitest_1.test)('Easing In', () => {
122
+ const easingIn = easing_js_1.Easing.in(easing_js_1.Easing.circle);
123
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingIn(n)).toBe(circle(n)));
124
+ });
125
+ (0, vitest_1.test)('Easing In Out', () => {
126
+ const easingOut = easing_js_1.Easing.out(easing_js_1.Easing.circle);
127
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingOut(n)).toBe(out(n)));
128
+ });
129
+ (0, vitest_1.test)('Easing Out', () => {
130
+ const easingInOut = easing_js_1.Easing.inOut(easing_js_1.Easing.circle);
131
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingInOut(n)).toBe(inOut(n)));
132
+ });
133
+ });
134
+ (0, vitest_1.describe)('Easing Exp', () => {
135
+ const exp = (n) => 2 ** (10 * (n - 1));
136
+ const out = (n) => 1 - exp(1 - n);
137
+ const inOut = (n) => {
138
+ if (n >= 0.5) {
139
+ return 1 - exp((1 - n) * 2) / 2;
140
+ }
141
+ return exp(n * 2) / 2;
142
+ };
143
+ (0, vitest_1.test)('Easing In', () => {
144
+ const easingIn = easing_js_1.Easing.in(easing_js_1.Easing.exp);
145
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingIn(n)).toBe(exp(n)));
146
+ });
147
+ (0, vitest_1.test)('Easing In Out', () => {
148
+ const easingOut = easing_js_1.Easing.out(easing_js_1.Easing.exp);
149
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingOut(n)).toBe(out(n)));
150
+ });
151
+ (0, vitest_1.test)('Easing Out', () => {
152
+ const easingInOut = easing_js_1.Easing.inOut(easing_js_1.Easing.exp);
153
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingInOut(n)).toBe(inOut(n)));
154
+ });
155
+ });
156
+ (0, vitest_1.describe)('Easing Bounce', () => {
157
+ const bounce = (n) => {
158
+ if (n < 1 / 2.75) {
159
+ return 7.5625 * n * n;
160
+ }
161
+ if (n < 2 / 2.75) {
162
+ const t2_ = n - 1.5 / 2.75;
163
+ return 7.5625 * t2_ * t2_ + 0.75;
164
+ }
165
+ if (n < 2.5 / 2.75) {
166
+ const t2_ = n - 2.25 / 2.75;
167
+ return 7.5625 * t2_ * t2_ + 0.9375;
168
+ }
169
+ const t2 = n - 2.625 / 2.75;
170
+ return 7.5625 * t2 * t2 + 0.984375;
171
+ };
172
+ const out = (n) => 1 - bounce(1 - n);
173
+ const inOut = (n) => {
174
+ if (n >= 0.5) {
175
+ return 1 - bounce((1 - n) * 2) / 2;
176
+ }
177
+ return bounce(n * 2) / 2;
178
+ };
179
+ (0, vitest_1.test)('Easing In', () => {
180
+ const easingIn = easing_js_1.Easing.in(easing_js_1.Easing.bounce);
181
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingIn(n)).toBe(bounce(n)));
182
+ });
183
+ (0, vitest_1.test)('Easing In Out', () => {
184
+ const easingOut = easing_js_1.Easing.out(easing_js_1.Easing.bounce);
185
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingOut(n)).toBe(out(n)));
186
+ });
187
+ (0, vitest_1.test)('Easing Out', () => {
188
+ const easingInOut = easing_js_1.Easing.inOut(easing_js_1.Easing.bounce);
189
+ numbersToTest.forEach((n) => (0, vitest_1.expect)(easingInOut(n)).toBe(inOut(n)));
190
+ });
191
+ });
@@ -0,0 +1 @@
1
+ export declare const expectToThrow: (func: Function, err: RegExp) => void;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expectToThrow = void 0;
4
+ const vitest_1 = require("vitest");
5
+ const expectToThrow = (func, err) => {
6
+ // Even though the error is caught, it still gets printed to the console
7
+ // so we mock that out to avoid the wall of red text.
8
+ vitest_1.vitest.spyOn(console, 'error');
9
+ // @ts-expect-error
10
+ console.error.mockImplementation(() => undefined);
11
+ (0, vitest_1.expect)(func).toThrow(err);
12
+ // @ts-expect-error
13
+ console.error.mockRestore();
14
+ };
15
+ exports.expectToThrow = expectToThrow;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ /**
5
+ * @vitest-environment jsdom
6
+ */
7
+ const react_1 = require("@testing-library/react");
8
+ const vitest_1 = require("vitest");
9
+ const CanUseRemotionHooks_js_1 = require("../CanUseRemotionHooks.js");
10
+ const freeze_js_1 = require("../freeze.js");
11
+ const Sequence_js_1 = require("../Sequence.js");
12
+ const timeline_position_state_js_1 = require("../timeline-position-state.js");
13
+ const use_current_frame_js_1 = require("../use-current-frame.js");
14
+ const expect_to_throw_js_1 = require("./expect-to-throw.js");
15
+ const wrap_sequence_context_js_1 = require("./wrap-sequence-context.js");
16
+ (0, vitest_1.describe)('Prop validation', () => {
17
+ (0, vitest_1.test)('It should throw if Freeze has string as frame prop value', () => {
18
+ (0, expect_to_throw_js_1.expectToThrow)(
19
+ // @ts-expect-error
20
+ () => (0, react_1.render)((0, jsx_runtime_1.jsx)(freeze_js_1.Freeze, { frame: '0' })), /The 'frame' prop of <Freeze \/> must be a number, but is of type string/);
21
+ });
22
+ (0, vitest_1.test)('It should throw if Freeze has undefined as frame prop value', () => {
23
+ (0, expect_to_throw_js_1.expectToThrow)(
24
+ // @ts-expect-error
25
+ () => (0, react_1.render)((0, jsx_runtime_1.jsx)(freeze_js_1.Freeze, {})), /The <Freeze \/> component requires a 'frame' prop, but none was passed./);
26
+ });
27
+ });
28
+ const timelineCtxValue = (frame) => ({
29
+ rootId: '',
30
+ frame,
31
+ playing: false,
32
+ imperativePlaying: {
33
+ current: false,
34
+ },
35
+ playbackRate: 1,
36
+ setPlaybackRate: () => {
37
+ throw new Error('playback rate');
38
+ },
39
+ audioAndVideoTags: { current: [] },
40
+ });
41
+ const renderForFrame = (frame, markup) => {
42
+ return (0, react_1.render)((0, jsx_runtime_1.jsx)(CanUseRemotionHooks_js_1.CanUseRemotionHooksProvider, { children: (0, jsx_runtime_1.jsx)(timeline_position_state_js_1.TimelineContext.Provider, { value: timelineCtxValue(frame), children: markup }) }));
43
+ };
44
+ const Basic = () => {
45
+ return ((0, jsx_runtime_1.jsx)(freeze_js_1.Freeze, { frame: 300, children: (0, jsx_runtime_1.jsx)(TestComponent, {}) }));
46
+ };
47
+ const WithSequence = () => {
48
+ const SequenceFrom = 200;
49
+ const FreezeFrame = 100;
50
+ return ((0, jsx_runtime_1.jsx)(wrap_sequence_context_js_1.WrapSequenceContext, { children: (0, jsx_runtime_1.jsx)(Sequence_js_1.Sequence, { from: SequenceFrom, layout: "none", children: (0, jsx_runtime_1.jsx)(freeze_js_1.Freeze, { frame: FreezeFrame, children: (0, jsx_runtime_1.jsx)(TestComponent, {}) }) }) }));
51
+ };
52
+ const TestComponent = () => {
53
+ const frame = (0, use_current_frame_js_1.useCurrentFrame)();
54
+ return (0, jsx_runtime_1.jsx)("div", { children: frame });
55
+ };
56
+ (0, vitest_1.describe)('Integration tests', () => {
57
+ (0, vitest_1.test)('Basic test', () => {
58
+ const { container } = renderForFrame(0, (0, jsx_runtime_1.jsx)(Basic, {}));
59
+ (0, vitest_1.expect)(container.innerHTML).toBe('<div>300</div>');
60
+ });
61
+ (0, vitest_1.test)('Should ignore a Sequence', () => {
62
+ const { container } = renderForFrame(300, (0, jsx_runtime_1.jsx)(WithSequence, {}));
63
+ (0, vitest_1.expect)(container.innerHTML).toBe('<div>100</div>');
64
+ });
65
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const get_asset_file_name_js_1 = require("../get-asset-file-name.js");
5
+ (0, vitest_1.describe)('get asset file name test', () => {
6
+ const testStrings = [
7
+ ['assets/images/sample.png', 'sample.png'],
8
+ ['assets\\images\\sample.png', 'sample.png'],
9
+ ['sample.png', 'sample.png'],
10
+ ];
11
+ testStrings.forEach((entry) => (0, vitest_1.test)(`test for ${entry[0]}`, () => {
12
+ (0, vitest_1.expect)((0, get_asset_file_name_js_1.getAssetDisplayName)(entry[0])).toEqual(entry[1]);
13
+ }));
14
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const get_current_time_js_1 = require("../video/get-current-time.js");
5
+ (0, vitest_1.describe)('correctly calculate media time of video element', () => {
6
+ const mp4Precision = 0.04;
7
+ const webmPrecision = 0.02;
8
+ (0, vitest_1.describe)('src mp4', () => {
9
+ (0, vitest_1.test)('mp4 - Should correctly calculate the media time of a video element', () => {
10
+ (0, vitest_1.expect)((0, get_current_time_js_1.getMediaTime)({
11
+ fps: 30,
12
+ frame: 30,
13
+ playbackRate: 1,
14
+ src: 'video.mp4',
15
+ startFrom: 0,
16
+ mediaType: 'video',
17
+ })).toBeCloseTo(1, mp4Precision);
18
+ });
19
+ (0, vitest_1.test)('mp4 - Should correctly calculate the media time of a video element with faster framerate', () => {
20
+ (0, vitest_1.expect)((0, get_current_time_js_1.getMediaTime)({
21
+ fps: 30,
22
+ frame: 30,
23
+ playbackRate: 2,
24
+ src: 'video.mp4',
25
+ startFrom: 0,
26
+ mediaType: 'video',
27
+ })).toBeCloseTo(2, mp4Precision);
28
+ });
29
+ (0, vitest_1.test)('mp4 - Should correctly calculate the media time of a video element with faster framerate and a startFrom', () => {
30
+ // If playbackrate is 2, but the video only starts after 1 second, at 2sec, the video position should be 3sec
31
+ (0, vitest_1.expect)((0, get_current_time_js_1.getMediaTime)({
32
+ fps: 30,
33
+ frame: 60,
34
+ playbackRate: 2,
35
+ src: 'video.mp4',
36
+ startFrom: 30,
37
+ mediaType: 'video',
38
+ })).toBeCloseTo(3, mp4Precision);
39
+ });
40
+ });
41
+ (0, vitest_1.describe)('src webm', () => {
42
+ (0, vitest_1.test)('webm - Should correctly calculate the media time of a video element', () => {
43
+ (0, vitest_1.expect)((0, get_current_time_js_1.getMediaTime)({
44
+ fps: 30,
45
+ frame: 30,
46
+ playbackRate: 1,
47
+ src: 'video.webm',
48
+ startFrom: 0,
49
+ mediaType: 'video',
50
+ })).toBeCloseTo(1, webmPrecision);
51
+ });
52
+ (0, vitest_1.test)('webm - Should correctly calculate the media time of a video element with faster framerate', () => {
53
+ (0, vitest_1.expect)((0, get_current_time_js_1.getMediaTime)({
54
+ fps: 30,
55
+ frame: 30,
56
+ playbackRate: 2,
57
+ src: 'video.webm',
58
+ startFrom: 0,
59
+ mediaType: 'video',
60
+ })).toBeCloseTo(2, webmPrecision);
61
+ });
62
+ (0, vitest_1.test)('webm - Should correctly calculate the media time of a video element with faster framerate and a startFrom', () => {
63
+ // If playbackrate is 2, but the video only starts after 1 second, at 2sec, the video position should be 3sec
64
+ (0, vitest_1.expect)((0, get_current_time_js_1.getMediaTime)({
65
+ fps: 30,
66
+ frame: 60,
67
+ playbackRate: 2,
68
+ src: 'video.webm',
69
+ startFrom: 30,
70
+ mediaType: 'video',
71
+ })).toBeCloseTo(3, webmPrecision);
72
+ });
73
+ });
74
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /**
4
+ * @vitest-environment jsdom
5
+ */
6
+ const vitest_1 = require("vitest");
7
+ const input_props_js_1 = require("../config/input-props.js");
8
+ (0, vitest_1.describe)('input props', () => {
9
+ const OLD_ENV = process.env;
10
+ (0, vitest_1.beforeEach)(() => {
11
+ vitest_1.vitest.resetModules(); // Most important - it clears the cache
12
+ process.env = { ...OLD_ENV }; // Make a copy
13
+ });
14
+ (0, vitest_1.afterAll)(() => {
15
+ process.env = OLD_ENV; // Restore old environment
16
+ });
17
+ (0, vitest_1.test)('input props in non production env', () => {
18
+ process.env.NODE_ENV = 'development';
19
+ const inputProps = {
20
+ firstProperty: 'firstProperty',
21
+ secondProperty: 'secondProperty',
22
+ };
23
+ window.remotion_inputProps = JSON.stringify(JSON.stringify(inputProps));
24
+ (0, vitest_1.expect)((0, input_props_js_1.getInputProps)()).toEqual(JSON.stringify(inputProps));
25
+ });
26
+ (0, vitest_1.test)('input props in production env', () => {
27
+ process.env.NODE_ENV = 'production';
28
+ window.remotion_inputProps = JSON.stringify({});
29
+ (0, vitest_1.expect)((0, input_props_js_1.getInputProps)()).toEqual({});
30
+ });
31
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const easing_js_1 = require("../easing.js");
5
+ const interpolate_js_1 = require("../interpolate.js");
6
+ const expect_to_throw_js_1 = require("./expect-to-throw.js");
7
+ (0, vitest_1.describe)('Basic interpolations', () => {
8
+ (0, vitest_1.test)('Input and output range strictly monotonically increasing', () => {
9
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(1, [0, 1], [0, 2])).toEqual(2);
10
+ });
11
+ (0, vitest_1.test)('Input range strictly monotonically increasing, Output range non-increasing', () => {
12
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(1, [0, 1], [2, 2])).toEqual(2);
13
+ });
14
+ (0, vitest_1.test)('Interpolate with 4 values, output non-increasing', () => {
15
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(Math.PI, [0, 1, 4, 9], [0, 2, 1000, -1000])).toEqual(714.4364894275378);
16
+ });
17
+ (0, vitest_1.test)('Interpolate Infinity: output range increasing', () => {
18
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(Infinity, [0, 1], [0, 2])).toEqual(Infinity);
19
+ });
20
+ (0, vitest_1.test)('Interpolate Infinity: output range decreasing', () => {
21
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(Infinity, [0, 1], [1, 0])).toEqual(-Infinity);
22
+ });
23
+ });
24
+ (0, vitest_1.test)('Must be the same length', () => {
25
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
26
+ (0, interpolate_js_1.interpolate)(1, [0, 2], [0, 1, 2]);
27
+ }, /inputRange \(2\) and outputRange \(3\) must have the same length/);
28
+ });
29
+ (0, vitest_1.test)('Must pass at least 2 elements for input range', () => {
30
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
31
+ (0, interpolate_js_1.interpolate)(1, [0], [9]);
32
+ }, /inputRange must have at least 2 elements/);
33
+ });
34
+ (0, vitest_1.test)('Input range must be strictly monotonically non-decreasing', () => {
35
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
36
+ (0, interpolate_js_1.interpolate)(1, [0, 1, 0.5], [0, 2, 0.2]);
37
+ }, /inputRange must be strictly monotonically non-decreasing/);
38
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
39
+ (0, interpolate_js_1.interpolate)(0.75, [0, 1, 1], [0, 2, 0]);
40
+ }, /inputRange must be strictly monotonically non-decreasing/);
41
+ });
42
+ (0, vitest_1.test)('Output range can be non-monotonic', () => {
43
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(0.75, [0, 0.5, 1], [0, 2, 0])).toEqual(1);
44
+ });
45
+ (0, vitest_1.test)('Output range monotonically decreasing', () => {
46
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(0.75, [0, 0.5, 1], [0, 2, 2])).toEqual(2);
47
+ });
48
+ (0, vitest_1.test)('Cannot have Infinity in input range', () => {
49
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
50
+ (0, interpolate_js_1.interpolate)(1, [-Infinity, 0], [0, 2]);
51
+ }, /inputRange must contain only finite numbers, but got \[-Infinity,0\]/);
52
+ });
53
+ (0, vitest_1.test)('Cannot have Infinity in output Range', () => {
54
+ (0, expect_to_throw_js_1.expectToThrow)(() => (0, interpolate_js_1.interpolate)(1, [0, 1], [Infinity, 2]), /outputRange must contain only finite numbers, but got \[Infinity,2\]/);
55
+ });
56
+ (0, vitest_1.test)('Should throw if passing 2x infinity input range', () => {
57
+ (0, expect_to_throw_js_1.expectToThrow)(() => (0, interpolate_js_1.interpolate)(1, [Infinity, Infinity], [0, 2]), /inputRange must contain only finite numbers, but got \[Infinity,Infinity\]/);
58
+ });
59
+ (0, vitest_1.test)('Should throw if passing 2x infinity output range', () => {
60
+ (0, expect_to_throw_js_1.expectToThrow)(() => (0, interpolate_js_1.interpolate)(1, [0, 1], [-Infinity, Infinity]), /outputRange must contain only finite numbers, but got \[-Infinity,Infinity\]/);
61
+ });
62
+ (0, vitest_1.test)('Should throw on Infinity as third argument', () => {
63
+ (0, expect_to_throw_js_1.expectToThrow)(() => (0, interpolate_js_1.interpolate)(1, [0, 1, Infinity], [0, 2, 3]), /inputRange must contain only finite numbers, but got \[0,1,Infinity\]/);
64
+ });
65
+ (0, vitest_1.test)('Should throw on Infinity as third argument', () => {
66
+ (0, expect_to_throw_js_1.expectToThrow)(() => (0, interpolate_js_1.interpolate)(1, [0, 1, Infinity], [0, 2, 3]), /inputRange must contain only finite numbers, but got \[0,1,Infinity\]/);
67
+ });
68
+ (0, vitest_1.test)('Easing test', () => {
69
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(0.5, [0, 1], [0, 1], {
70
+ easing: easing_js_1.Easing.sin,
71
+ })).toEqual(1 - Math.cos((0.5 * Math.PI) / 2));
72
+ });
73
+ (0, vitest_1.test)('Extrapolation left test', () => {
74
+ const testValues = ['extend', undefined];
75
+ testValues.forEach((entry) => {
76
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(-3, [0, 1, 2], [0, 0.5, 1], {
77
+ extrapolateRight: entry,
78
+ })).toEqual(-1.5);
79
+ });
80
+ });
81
+ (0, vitest_1.test)('Extrapolation right test', () => {
82
+ const testValues = ['extend', undefined];
83
+ testValues.forEach((entry) => {
84
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(3, [0, 1, 2], [0, 0.5, 1], {
85
+ extrapolateRight: entry,
86
+ })).toEqual(1.5);
87
+ });
88
+ });
89
+ (0, vitest_1.test)('Extrapolation identity', () => {
90
+ const testValues = [
91
+ [1000, { extrapolateRight: 'identity' }],
92
+ [-1000, { extrapolateLeft: 'identity' }],
93
+ ];
94
+ testValues.forEach((entry) => {
95
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(entry[0], [0, 1, 2], [0, 2, 4], entry[1])).toBe(entry[0]);
96
+ });
97
+ });
98
+ (0, vitest_1.test)('Clamp right test', () => {
99
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(2000, [0, 1, 1000], [0, 1, -1000], {
100
+ extrapolateRight: 'clamp',
101
+ })).toEqual(-1000);
102
+ });
103
+ (0, vitest_1.test)('Clamp left test', () => {
104
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(-2000, [0, 1, 1000], [Math.PI, 1, -1000], {
105
+ extrapolateLeft: 'clamp',
106
+ })).toEqual(Math.PI);
107
+ });
108
+ (0, vitest_1.test)('Zig-zag test', () => {
109
+ const testValues = [
110
+ [3.5, -500],
111
+ [4, -1000],
112
+ [6, 3000],
113
+ [-0.1, -1100],
114
+ ];
115
+ testValues.forEach((entry) => {
116
+ (0, vitest_1.expect)((0, interpolate_js_1.interpolate)(entry[0], [1, 2, 3, 4, 5], [0, 1000, 0, -1000, 1000])).toBe(entry[1]);
117
+ });
118
+ });
119
+ (0, vitest_1.test)('Handle bad types', () => {
120
+ // @ts-expect-error
121
+ (0, vitest_1.expect)(() => (0, interpolate_js_1.interpolate)(undefined, [0, 1], [1, 0])).toThrowError(/input can not be undefined/);
122
+ // @ts-expect-error
123
+ (0, vitest_1.expect)(() => (0, interpolate_js_1.interpolate)(1, undefined, [1, 0])).toThrowError(/inputRange can not be undefined/);
124
+ // @ts-expect-error
125
+ (0, vitest_1.expect)(() => (0, interpolate_js_1.interpolate)(1, [1, 0], undefined)).toThrowError(/outputRange can not be undefined/);
126
+ // @ts-expect-error
127
+ (0, vitest_1.expect)(() => (0, interpolate_js_1.interpolate)(1)).toThrowError(/inputRange can not be undefined/);
128
+ // @ts-expect-error
129
+ (0, vitest_1.expect)(() => (0, interpolate_js_1.interpolate)('1', [0, 1], [1, 0])).toThrowError(/Cannot interpolate an input which is not a number/);
130
+ // @ts-expect-error
131
+ (0, vitest_1.expect)(() => (0, interpolate_js_1.interpolate)(1, 'string', 'string')).toThrowError(/inputRange must contain only numbers/);
132
+ // @ts-expect-error
133
+ (0, vitest_1.expect)(() => (0, interpolate_js_1.interpolate)(1, [1, 2, 3], 'str')).toThrowError(/outputRange must contain only numbers/);
134
+ // @ts-expect-error
135
+ (0, vitest_1.expect)(() => (0, interpolate_js_1.interpolate)(1, undefined, 'string')).toThrowError(/inputRange can not be undefined/);
136
+ // @ts-expect-error
137
+ (0, vitest_1.expect)(() => (0, interpolate_js_1.interpolate)([1, 2], undefined, 'string')).toThrowError(/inputRange can not be undefined/);
138
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const interpolate_colors_js_1 = require("../interpolate-colors.js");
5
+ const expect_to_throw_js_1 = require("./expect-to-throw.js");
6
+ (0, vitest_1.test)('Throws if color string is not right', () => {
7
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
8
+ (0, interpolate_colors_js_1.interpolateColors)(1, [0, 1], ['#fabgdf', '#ffaabb']);
9
+ }, /invalid color string #fabgdf provided/);
10
+ });
11
+ (0, vitest_1.describe)('Throws error for undefined parameters', () => {
12
+ (0, vitest_1.test)('Undefined input', () => {
13
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
14
+ // @ts-expect-error
15
+ (0, interpolate_colors_js_1.interpolateColors)(undefined, ['#aaa', '#bbb'], ['#fff', '#000']);
16
+ }, /input can not be undefined/);
17
+ });
18
+ (0, vitest_1.test)('Undefined inputRange', () => {
19
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
20
+ // @ts-expect-error
21
+ (0, interpolate_colors_js_1.interpolateColors)(1, undefined, ['#fff', '#000']);
22
+ }, /inputRange can not be undefined/);
23
+ });
24
+ (0, vitest_1.test)('Undefined outputRange', () => {
25
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
26
+ // @ts-expect-error
27
+ (0, interpolate_colors_js_1.interpolateColors)(1, ['#fff', '#000'], undefined);
28
+ }, /outputRange can not be undefined/);
29
+ });
30
+ });
31
+ (0, vitest_1.test)('inputRange and outputRange must be of same length', () => {
32
+ (0, expect_to_throw_js_1.expectToThrow)(() => {
33
+ (0, interpolate_colors_js_1.interpolateColors)(1, [1, 2, 3], ['#ffffff', '#aaaaaa']);
34
+ }, /inputRange \(3 values provided\) and outputRange \(2 values provided\) must have the same length/);
35
+ });
36
+ (0, vitest_1.test)('Basic interpolate Colors', () => {
37
+ (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(1, [0, 1], ['#ffaadd', '#fabfdf'])).toBe('rgba(250, 191, 223, 1)');
38
+ });
39
+ (0, vitest_1.test)('Clamp Right', () => {
40
+ (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(2, [0, 1], ['#ffaadd', '#fabfdf'])).toBe('rgba(250, 191, 223, 1)');
41
+ });
42
+ (0, vitest_1.test)('Clamp Left', () => {
43
+ (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(-1, [0, 1], ['#ffaadd', '#fabfdf'])).toBe('rgba(255, 170, 221, 1)');
44
+ });
45
+ (0, vitest_1.test)('Color shorthands', () => {
46
+ (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(1, [0, 1], ['#fad', '#fabfdf'])).toBe('rgba(250, 191, 223, 1)');
47
+ });
48
+ (0, vitest_1.test)('Color names', () => {
49
+ (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(1, [0, 1], ['red', 'blue'])).toBe('rgba(0, 0, 255, 1)');
50
+ });
51
+ (0, vitest_1.test)('Mix transparency', () => {
52
+ (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(0.5, [0, 1], ['transparent', 'blue'])).toBe('rgba(0, 0, 128, 0.5)');
53
+ });
54
+ (0, vitest_1.test)('HSV', () => {
55
+ (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(0.5, [0, 1], ['hsla(120, 100%, 25%, 0)', 'blue'])).toBe('rgba(0, 64, 128, 0.5)');
56
+ (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(0.5, [0, 1], ['hsl(120, 50%, 50%)', 'blue'])).toBe('rgba(32, 96, 160, 1)');
57
+ });
58
+ (0, vitest_1.describe)('RGB', () => {
59
+ (0, vitest_1.test)('standard rgb interpolation', () => (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(0.5, [0, 1], ['rgb(0,0,0)', 'rgb(255,255,255)'])).toBe('rgba(128, 128, 128, 1)'));
60
+ (0, vitest_1.test)('rgb clamping', () => {
61
+ (0, vitest_1.expect)((0, interpolate_colors_js_1.interpolateColors)(0.5, [0, 1], ['rgb(-1,0,0)', 'rgb(256,255,255)'])).toBe('rgba(128, 128, 128, 1)');
62
+ });
63
+ });
@@ -0,0 +1 @@
1
+ export {};