@motion-script/core 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (782) hide show
  1. package/README.md +69 -0
  2. package/dist/assets/catalog.d.ts +83 -0
  3. package/dist/assets/catalog.d.ts.map +1 -0
  4. package/dist/assets/catalog.js +110 -0
  5. package/dist/assets/catalog.js.map +1 -0
  6. package/dist/assets/index.d.ts +5 -0
  7. package/dist/assets/index.d.ts.map +1 -0
  8. package/dist/assets/index.js +4 -0
  9. package/dist/assets/index.js.map +1 -0
  10. package/dist/assets/manager.d.ts +32 -0
  11. package/dist/assets/manager.d.ts.map +1 -0
  12. package/dist/assets/manager.js +108 -0
  13. package/dist/assets/manager.js.map +1 -0
  14. package/dist/assets/manager.test.d.ts +2 -0
  15. package/dist/assets/manager.test.d.ts.map +1 -0
  16. package/dist/assets/manager.test.js +133 -0
  17. package/dist/assets/manager.test.js.map +1 -0
  18. package/dist/assets/manifest.d.ts +38 -0
  19. package/dist/assets/manifest.d.ts.map +1 -0
  20. package/dist/assets/manifest.js +2 -0
  21. package/dist/assets/manifest.js.map +1 -0
  22. package/dist/assets/record.d.ts +40 -0
  23. package/dist/assets/record.d.ts.map +1 -0
  24. package/dist/assets/record.js +2 -0
  25. package/dist/assets/record.js.map +1 -0
  26. package/dist/assets/tracker.d.ts +69 -0
  27. package/dist/assets/tracker.d.ts.map +1 -0
  28. package/dist/assets/tracker.js +178 -0
  29. package/dist/assets/tracker.js.map +1 -0
  30. package/dist/attributes/audio/request.d.ts +21 -0
  31. package/dist/attributes/audio/request.d.ts.map +1 -0
  32. package/dist/attributes/audio/request.js +2 -0
  33. package/dist/attributes/audio/request.js.map +1 -0
  34. package/dist/attributes/audio/sound.d.ts +83 -0
  35. package/dist/attributes/audio/sound.d.ts.map +1 -0
  36. package/dist/attributes/audio/sound.js +106 -0
  37. package/dist/attributes/audio/sound.js.map +1 -0
  38. package/dist/attributes/index.d.ts +18 -0
  39. package/dist/attributes/index.d.ts.map +1 -0
  40. package/dist/attributes/index.js +17 -0
  41. package/dist/attributes/index.js.map +1 -0
  42. package/dist/attributes/layout/bounds.d.ts +12 -0
  43. package/dist/attributes/layout/bounds.d.ts.map +1 -0
  44. package/dist/attributes/layout/bounds.js +2 -0
  45. package/dist/attributes/layout/bounds.js.map +1 -0
  46. package/dist/attributes/layout/constraints.d.ts +6 -0
  47. package/dist/attributes/layout/constraints.d.ts.map +1 -0
  48. package/dist/attributes/layout/constraints.js +2 -0
  49. package/dist/attributes/layout/constraints.js.map +1 -0
  50. package/dist/attributes/layout/index.d.ts +6 -0
  51. package/dist/attributes/layout/index.d.ts.map +1 -0
  52. package/dist/attributes/layout/index.js +2 -0
  53. package/dist/attributes/layout/index.js.map +1 -0
  54. package/dist/attributes/layout/padding.d.ts +26 -0
  55. package/dist/attributes/layout/padding.d.ts.map +1 -0
  56. package/dist/attributes/layout/padding.js +17 -0
  57. package/dist/attributes/layout/padding.js.map +1 -0
  58. package/dist/attributes/layout/padding.test.d.ts +2 -0
  59. package/dist/attributes/layout/padding.test.d.ts.map +1 -0
  60. package/dist/attributes/layout/padding.test.js +32 -0
  61. package/dist/attributes/layout/padding.test.js.map +1 -0
  62. package/dist/attributes/layout/size.d.ts +14 -0
  63. package/dist/attributes/layout/size.d.ts.map +1 -0
  64. package/dist/attributes/layout/size.js +2 -0
  65. package/dist/attributes/layout/size.js.map +1 -0
  66. package/dist/attributes/layout/vector2.d.ts +8 -0
  67. package/dist/attributes/layout/vector2.d.ts.map +1 -0
  68. package/dist/attributes/layout/vector2.js +8 -0
  69. package/dist/attributes/layout/vector2.js.map +1 -0
  70. package/dist/attributes/layout/vector2.test.d.ts +2 -0
  71. package/dist/attributes/layout/vector2.test.d.ts.map +1 -0
  72. package/dist/attributes/layout/vector2.test.js +23 -0
  73. package/dist/attributes/layout/vector2.test.js.map +1 -0
  74. package/dist/attributes/mask/boolean.d.ts +2 -0
  75. package/dist/attributes/mask/boolean.d.ts.map +1 -0
  76. package/dist/attributes/mask/boolean.js +2 -0
  77. package/dist/attributes/mask/boolean.js.map +1 -0
  78. package/dist/attributes/mask/mask.d.ts +9 -0
  79. package/dist/attributes/mask/mask.d.ts.map +1 -0
  80. package/dist/attributes/mask/mask.js +2 -0
  81. package/dist/attributes/mask/mask.js.map +1 -0
  82. package/dist/attributes/properties/decorator.d.ts +45 -0
  83. package/dist/attributes/properties/decorator.d.ts.map +1 -0
  84. package/dist/attributes/properties/decorator.js +72 -0
  85. package/dist/attributes/properties/decorator.js.map +1 -0
  86. package/dist/attributes/properties/decorator.test.d.ts +2 -0
  87. package/dist/attributes/properties/decorator.test.d.ts.map +1 -0
  88. package/dist/attributes/properties/decorator.test.js +52 -0
  89. package/dist/attributes/properties/decorator.test.js.map +1 -0
  90. package/dist/attributes/shape/corners/border-radius.d.ts +32 -0
  91. package/dist/attributes/shape/corners/border-radius.d.ts.map +1 -0
  92. package/dist/attributes/shape/corners/border-radius.js +50 -0
  93. package/dist/attributes/shape/corners/border-radius.js.map +1 -0
  94. package/dist/attributes/shape/corners/border-radius.test.d.ts +2 -0
  95. package/dist/attributes/shape/corners/border-radius.test.d.ts.map +1 -0
  96. package/dist/attributes/shape/corners/border-radius.test.js +52 -0
  97. package/dist/attributes/shape/corners/border-radius.test.js.map +1 -0
  98. package/dist/attributes/shape/corners/index.d.ts +2 -0
  99. package/dist/attributes/shape/corners/index.d.ts.map +1 -0
  100. package/dist/attributes/shape/corners/index.js +2 -0
  101. package/dist/attributes/shape/corners/index.js.map +1 -0
  102. package/dist/attributes/shape/effects/chain.d.ts +145 -0
  103. package/dist/attributes/shape/effects/chain.d.ts.map +1 -0
  104. package/dist/attributes/shape/effects/chain.js +163 -0
  105. package/dist/attributes/shape/effects/chain.js.map +1 -0
  106. package/dist/attributes/shape/effects/chain.test.d.ts +2 -0
  107. package/dist/attributes/shape/effects/chain.test.d.ts.map +1 -0
  108. package/dist/attributes/shape/effects/chain.test.js +63 -0
  109. package/dist/attributes/shape/effects/chain.test.js.map +1 -0
  110. package/dist/attributes/shape/effects/effect-data.d.ts +18 -0
  111. package/dist/attributes/shape/effects/effect-data.d.ts.map +1 -0
  112. package/dist/attributes/shape/effects/effect-data.js +2 -0
  113. package/dist/attributes/shape/effects/effect-data.js.map +1 -0
  114. package/dist/attributes/shape/effects/implementations/background-blur.d.ts +13 -0
  115. package/dist/attributes/shape/effects/implementations/background-blur.d.ts.map +1 -0
  116. package/dist/attributes/shape/effects/implementations/background-blur.js +6 -0
  117. package/dist/attributes/shape/effects/implementations/background-blur.js.map +1 -0
  118. package/dist/attributes/shape/effects/implementations/bloom.d.ts +12 -0
  119. package/dist/attributes/shape/effects/implementations/bloom.d.ts.map +1 -0
  120. package/dist/attributes/shape/effects/implementations/bloom.js +11 -0
  121. package/dist/attributes/shape/effects/implementations/bloom.js.map +1 -0
  122. package/dist/attributes/shape/effects/implementations/blur.d.ts +7 -0
  123. package/dist/attributes/shape/effects/implementations/blur.d.ts.map +1 -0
  124. package/dist/attributes/shape/effects/implementations/blur.js +6 -0
  125. package/dist/attributes/shape/effects/implementations/blur.js.map +1 -0
  126. package/dist/attributes/shape/effects/implementations/bulge-pinch.d.ts +13 -0
  127. package/dist/attributes/shape/effects/implementations/bulge-pinch.d.ts.map +1 -0
  128. package/dist/attributes/shape/effects/implementations/bulge-pinch.js +15 -0
  129. package/dist/attributes/shape/effects/implementations/bulge-pinch.js.map +1 -0
  130. package/dist/attributes/shape/effects/implementations/chromatic-aberration.d.ts +10 -0
  131. package/dist/attributes/shape/effects/implementations/chromatic-aberration.d.ts.map +1 -0
  132. package/dist/attributes/shape/effects/implementations/chromatic-aberration.js +10 -0
  133. package/dist/attributes/shape/effects/implementations/chromatic-aberration.js.map +1 -0
  134. package/dist/attributes/shape/effects/implementations/grayscale.d.ts +7 -0
  135. package/dist/attributes/shape/effects/implementations/grayscale.d.ts.map +1 -0
  136. package/dist/attributes/shape/effects/implementations/grayscale.js +6 -0
  137. package/dist/attributes/shape/effects/implementations/grayscale.js.map +1 -0
  138. package/dist/attributes/shape/effects/implementations/pixelate.d.ts +8 -0
  139. package/dist/attributes/shape/effects/implementations/pixelate.d.ts.map +1 -0
  140. package/dist/attributes/shape/effects/implementations/pixelate.js +10 -0
  141. package/dist/attributes/shape/effects/implementations/pixelate.js.map +1 -0
  142. package/dist/attributes/shape/effects/implementations/sksl.d.ts +39 -0
  143. package/dist/attributes/shape/effects/implementations/sksl.d.ts.map +1 -0
  144. package/dist/attributes/shape/effects/implementations/sksl.js +48 -0
  145. package/dist/attributes/shape/effects/implementations/sksl.js.map +1 -0
  146. package/dist/attributes/shape/effects/implementations/texture.d.ts +9 -0
  147. package/dist/attributes/shape/effects/implementations/texture.d.ts.map +1 -0
  148. package/dist/attributes/shape/effects/implementations/texture.js +11 -0
  149. package/dist/attributes/shape/effects/implementations/texture.js.map +1 -0
  150. package/dist/attributes/shape/effects/implementations/vintage.d.ts +10 -0
  151. package/dist/attributes/shape/effects/implementations/vintage.d.ts.map +1 -0
  152. package/dist/attributes/shape/effects/implementations/vintage.js +10 -0
  153. package/dist/attributes/shape/effects/implementations/vintage.js.map +1 -0
  154. package/dist/attributes/shape/effects/implementations/zoom.d.ts +14 -0
  155. package/dist/attributes/shape/effects/implementations/zoom.d.ts.map +1 -0
  156. package/dist/attributes/shape/effects/implementations/zoom.js +13 -0
  157. package/dist/attributes/shape/effects/implementations/zoom.js.map +1 -0
  158. package/dist/attributes/shape/effects/index.d.ts +19 -0
  159. package/dist/attributes/shape/effects/index.d.ts.map +1 -0
  160. package/dist/attributes/shape/effects/index.js +4 -0
  161. package/dist/attributes/shape/effects/index.js.map +1 -0
  162. package/dist/attributes/shape/effects/registry.d.ts +4 -0
  163. package/dist/attributes/shape/effects/registry.d.ts.map +1 -0
  164. package/dist/attributes/shape/effects/registry.js +51 -0
  165. package/dist/attributes/shape/effects/registry.js.map +1 -0
  166. package/dist/attributes/shape/effects/union.d.ts +14 -0
  167. package/dist/attributes/shape/effects/union.d.ts.map +1 -0
  168. package/dist/attributes/shape/effects/union.js +2 -0
  169. package/dist/attributes/shape/effects/union.js.map +1 -0
  170. package/dist/attributes/shape/fill/blend.d.ts +13 -0
  171. package/dist/attributes/shape/fill/blend.d.ts.map +1 -0
  172. package/dist/attributes/shape/fill/blend.js +32 -0
  173. package/dist/attributes/shape/fill/blend.js.map +1 -0
  174. package/dist/attributes/shape/fill/blend.test.d.ts +2 -0
  175. package/dist/attributes/shape/fill/blend.test.d.ts.map +1 -0
  176. package/dist/attributes/shape/fill/blend.test.js +18 -0
  177. package/dist/attributes/shape/fill/blend.test.js.map +1 -0
  178. package/dist/attributes/shape/fill/chain.d.ts +127 -0
  179. package/dist/attributes/shape/fill/chain.d.ts.map +1 -0
  180. package/dist/attributes/shape/fill/chain.js +116 -0
  181. package/dist/attributes/shape/fill/chain.js.map +1 -0
  182. package/dist/attributes/shape/fill/chain.test.d.ts +2 -0
  183. package/dist/attributes/shape/fill/chain.test.d.ts.map +1 -0
  184. package/dist/attributes/shape/fill/chain.test.js +92 -0
  185. package/dist/attributes/shape/fill/chain.test.js.map +1 -0
  186. package/dist/attributes/shape/fill/color/constants.d.ts +13 -0
  187. package/dist/attributes/shape/fill/color/constants.d.ts.map +1 -0
  188. package/dist/attributes/shape/fill/color/constants.js +162 -0
  189. package/dist/attributes/shape/fill/color/constants.js.map +1 -0
  190. package/dist/attributes/shape/fill/color/parser.d.ts +39 -0
  191. package/dist/attributes/shape/fill/color/parser.d.ts.map +1 -0
  192. package/dist/attributes/shape/fill/color/parser.js +212 -0
  193. package/dist/attributes/shape/fill/color/parser.js.map +1 -0
  194. package/dist/attributes/shape/fill/color/parser.test.d.ts +2 -0
  195. package/dist/attributes/shape/fill/color/parser.test.d.ts.map +1 -0
  196. package/dist/attributes/shape/fill/color/parser.test.js +99 -0
  197. package/dist/attributes/shape/fill/color/parser.test.js.map +1 -0
  198. package/dist/attributes/shape/fill/implementations/color.d.ts +17 -0
  199. package/dist/attributes/shape/fill/implementations/color.d.ts.map +1 -0
  200. package/dist/attributes/shape/fill/implementations/color.js +24 -0
  201. package/dist/attributes/shape/fill/implementations/color.js.map +1 -0
  202. package/dist/attributes/shape/fill/implementations/conic-gradient.d.ts +24 -0
  203. package/dist/attributes/shape/fill/implementations/conic-gradient.d.ts.map +1 -0
  204. package/dist/attributes/shape/fill/implementations/conic-gradient.js +33 -0
  205. package/dist/attributes/shape/fill/implementations/conic-gradient.js.map +1 -0
  206. package/dist/attributes/shape/fill/implementations/image.d.ts +27 -0
  207. package/dist/attributes/shape/fill/implementations/image.d.ts.map +1 -0
  208. package/dist/attributes/shape/fill/implementations/image.js +16 -0
  209. package/dist/attributes/shape/fill/implementations/image.js.map +1 -0
  210. package/dist/attributes/shape/fill/implementations/linear-gradient.d.ts +24 -0
  211. package/dist/attributes/shape/fill/implementations/linear-gradient.d.ts.map +1 -0
  212. package/dist/attributes/shape/fill/implementations/linear-gradient.js +33 -0
  213. package/dist/attributes/shape/fill/implementations/linear-gradient.js.map +1 -0
  214. package/dist/attributes/shape/fill/implementations/noise.d.ts +22 -0
  215. package/dist/attributes/shape/fill/implementations/noise.d.ts.map +1 -0
  216. package/dist/attributes/shape/fill/implementations/noise.js +35 -0
  217. package/dist/attributes/shape/fill/implementations/noise.js.map +1 -0
  218. package/dist/attributes/shape/fill/implementations/radial-gradient.d.ts +24 -0
  219. package/dist/attributes/shape/fill/implementations/radial-gradient.d.ts.map +1 -0
  220. package/dist/attributes/shape/fill/implementations/radial-gradient.js +33 -0
  221. package/dist/attributes/shape/fill/implementations/radial-gradient.js.map +1 -0
  222. package/dist/attributes/shape/fill/implementations/stripe.d.ts +23 -0
  223. package/dist/attributes/shape/fill/implementations/stripe.d.ts.map +1 -0
  224. package/dist/attributes/shape/fill/implementations/stripe.js +36 -0
  225. package/dist/attributes/shape/fill/implementations/stripe.js.map +1 -0
  226. package/dist/attributes/shape/fill/implementations/video.d.ts +41 -0
  227. package/dist/attributes/shape/fill/implementations/video.d.ts.map +1 -0
  228. package/dist/attributes/shape/fill/implementations/video.js +51 -0
  229. package/dist/attributes/shape/fill/implementations/video.js.map +1 -0
  230. package/dist/attributes/shape/fill/index.d.ts +18 -0
  231. package/dist/attributes/shape/fill/index.d.ts.map +1 -0
  232. package/dist/attributes/shape/fill/index.js +5 -0
  233. package/dist/attributes/shape/fill/index.js.map +1 -0
  234. package/dist/attributes/shape/fill/lerp.d.ts +11 -0
  235. package/dist/attributes/shape/fill/lerp.d.ts.map +1 -0
  236. package/dist/attributes/shape/fill/lerp.js +17 -0
  237. package/dist/attributes/shape/fill/lerp.js.map +1 -0
  238. package/dist/attributes/shape/fill/lerp.test.d.ts +2 -0
  239. package/dist/attributes/shape/fill/lerp.test.d.ts.map +1 -0
  240. package/dist/attributes/shape/fill/lerp.test.js +18 -0
  241. package/dist/attributes/shape/fill/lerp.test.js.map +1 -0
  242. package/dist/attributes/shape/fill/registry.d.ts +28 -0
  243. package/dist/attributes/shape/fill/registry.d.ts.map +1 -0
  244. package/dist/attributes/shape/fill/registry.js +83 -0
  245. package/dist/attributes/shape/fill/registry.js.map +1 -0
  246. package/dist/attributes/shape/fill/union.d.ts +50 -0
  247. package/dist/attributes/shape/fill/union.d.ts.map +1 -0
  248. package/dist/attributes/shape/fill/union.js +11 -0
  249. package/dist/attributes/shape/fill/union.js.map +1 -0
  250. package/dist/attributes/shape/filters/chain.d.ts +65 -0
  251. package/dist/attributes/shape/filters/chain.d.ts.map +1 -0
  252. package/dist/attributes/shape/filters/chain.js +83 -0
  253. package/dist/attributes/shape/filters/chain.js.map +1 -0
  254. package/dist/attributes/shape/filters/chain.test.d.ts +2 -0
  255. package/dist/attributes/shape/filters/chain.test.d.ts.map +1 -0
  256. package/dist/attributes/shape/filters/chain.test.js +49 -0
  257. package/dist/attributes/shape/filters/chain.test.js.map +1 -0
  258. package/dist/attributes/shape/filters/implementations/alpha.d.ts +7 -0
  259. package/dist/attributes/shape/filters/implementations/alpha.d.ts.map +1 -0
  260. package/dist/attributes/shape/filters/implementations/alpha.js +7 -0
  261. package/dist/attributes/shape/filters/implementations/alpha.js.map +1 -0
  262. package/dist/attributes/shape/filters/implementations/blur.d.ts +7 -0
  263. package/dist/attributes/shape/filters/implementations/blur.d.ts.map +1 -0
  264. package/dist/attributes/shape/filters/implementations/blur.js +7 -0
  265. package/dist/attributes/shape/filters/implementations/blur.js.map +1 -0
  266. package/dist/attributes/shape/filters/implementations/color-adjustment.d.ts +26 -0
  267. package/dist/attributes/shape/filters/implementations/color-adjustment.d.ts.map +1 -0
  268. package/dist/attributes/shape/filters/implementations/color-adjustment.js +26 -0
  269. package/dist/attributes/shape/filters/implementations/color-adjustment.js.map +1 -0
  270. package/dist/attributes/shape/filters/implementations/color-matrix.d.ts +13 -0
  271. package/dist/attributes/shape/filters/implementations/color-matrix.d.ts.map +1 -0
  272. package/dist/attributes/shape/filters/implementations/color-matrix.js +12 -0
  273. package/dist/attributes/shape/filters/implementations/color-matrix.js.map +1 -0
  274. package/dist/attributes/shape/filters/implementations/curves.d.ts +17 -0
  275. package/dist/attributes/shape/filters/implementations/curves.d.ts.map +1 -0
  276. package/dist/attributes/shape/filters/implementations/curves.js +18 -0
  277. package/dist/attributes/shape/filters/implementations/curves.js.map +1 -0
  278. package/dist/attributes/shape/filters/implementations/exposure.d.ts +7 -0
  279. package/dist/attributes/shape/filters/implementations/exposure.d.ts.map +1 -0
  280. package/dist/attributes/shape/filters/implementations/exposure.js +7 -0
  281. package/dist/attributes/shape/filters/implementations/exposure.js.map +1 -0
  282. package/dist/attributes/shape/filters/implementations/grayscale.d.ts +7 -0
  283. package/dist/attributes/shape/filters/implementations/grayscale.d.ts.map +1 -0
  284. package/dist/attributes/shape/filters/implementations/grayscale.js +7 -0
  285. package/dist/attributes/shape/filters/implementations/grayscale.js.map +1 -0
  286. package/dist/attributes/shape/filters/index.d.ts +16 -0
  287. package/dist/attributes/shape/filters/index.d.ts.map +1 -0
  288. package/dist/attributes/shape/filters/index.js +5 -0
  289. package/dist/attributes/shape/filters/index.js.map +1 -0
  290. package/dist/attributes/shape/filters/registry.d.ts +37 -0
  291. package/dist/attributes/shape/filters/registry.d.ts.map +1 -0
  292. package/dist/attributes/shape/filters/registry.js +60 -0
  293. package/dist/attributes/shape/filters/registry.js.map +1 -0
  294. package/dist/attributes/shape/filters/registry.test.d.ts +5 -0
  295. package/dist/attributes/shape/filters/registry.test.d.ts.map +1 -0
  296. package/dist/attributes/shape/filters/registry.test.js +75 -0
  297. package/dist/attributes/shape/filters/registry.test.js.map +1 -0
  298. package/dist/attributes/shape/filters/union.d.ts +10 -0
  299. package/dist/attributes/shape/filters/union.d.ts.map +1 -0
  300. package/dist/attributes/shape/filters/union.js +2 -0
  301. package/dist/attributes/shape/filters/union.js.map +1 -0
  302. package/dist/attributes/shape/path/bezier.d.ts +28 -0
  303. package/dist/attributes/shape/path/bezier.d.ts.map +1 -0
  304. package/dist/attributes/shape/path/bezier.js +76 -0
  305. package/dist/attributes/shape/path/bezier.js.map +1 -0
  306. package/dist/attributes/shape/path/bezier.test.d.ts +2 -0
  307. package/dist/attributes/shape/path/bezier.test.d.ts.map +1 -0
  308. package/dist/attributes/shape/path/bezier.test.js +85 -0
  309. package/dist/attributes/shape/path/bezier.test.js.map +1 -0
  310. package/dist/attributes/shape/path/dash.d.ts +15 -0
  311. package/dist/attributes/shape/path/dash.d.ts.map +1 -0
  312. package/dist/attributes/shape/path/dash.js +299 -0
  313. package/dist/attributes/shape/path/dash.js.map +1 -0
  314. package/dist/attributes/shape/path/dash.test.d.ts +2 -0
  315. package/dist/attributes/shape/path/dash.test.d.ts.map +1 -0
  316. package/dist/attributes/shape/path/dash.test.js +36 -0
  317. package/dist/attributes/shape/path/dash.test.js.map +1 -0
  318. package/dist/attributes/shape/path/index.d.ts +5 -0
  319. package/dist/attributes/shape/path/index.d.ts.map +1 -0
  320. package/dist/attributes/shape/path/index.js +5 -0
  321. package/dist/attributes/shape/path/index.js.map +1 -0
  322. package/dist/attributes/shape/path/length.d.ts +14 -0
  323. package/dist/attributes/shape/path/length.d.ts.map +1 -0
  324. package/dist/attributes/shape/path/length.js +169 -0
  325. package/dist/attributes/shape/path/length.js.map +1 -0
  326. package/dist/attributes/shape/path/length.test.d.ts +2 -0
  327. package/dist/attributes/shape/path/length.test.d.ts.map +1 -0
  328. package/dist/attributes/shape/path/length.test.js +56 -0
  329. package/dist/attributes/shape/path/length.test.js.map +1 -0
  330. package/dist/attributes/shape/path/subpath.d.ts +15 -0
  331. package/dist/attributes/shape/path/subpath.d.ts.map +1 -0
  332. package/dist/attributes/shape/path/subpath.js +486 -0
  333. package/dist/attributes/shape/path/subpath.js.map +1 -0
  334. package/dist/attributes/shape/path/subpath.test.d.ts +2 -0
  335. package/dist/attributes/shape/path/subpath.test.d.ts.map +1 -0
  336. package/dist/attributes/shape/path/subpath.test.js +54 -0
  337. package/dist/attributes/shape/path/subpath.test.js.map +1 -0
  338. package/dist/attributes/shape/shadow/index.d.ts +5 -0
  339. package/dist/attributes/shape/shadow/index.d.ts.map +1 -0
  340. package/dist/attributes/shape/shadow/index.js +3 -0
  341. package/dist/attributes/shape/shadow/index.js.map +1 -0
  342. package/dist/attributes/shape/shadow/lerp.d.ts +3 -0
  343. package/dist/attributes/shape/shadow/lerp.d.ts.map +1 -0
  344. package/dist/attributes/shape/shadow/lerp.js +30 -0
  345. package/dist/attributes/shape/shadow/lerp.js.map +1 -0
  346. package/dist/attributes/shape/shadow/resolver.d.ts +22 -0
  347. package/dist/attributes/shape/shadow/resolver.d.ts.map +1 -0
  348. package/dist/attributes/shape/shadow/resolver.js +17 -0
  349. package/dist/attributes/shape/shadow/resolver.js.map +1 -0
  350. package/dist/attributes/shape/stroke/index.d.ts +5 -0
  351. package/dist/attributes/shape/stroke/index.d.ts.map +1 -0
  352. package/dist/attributes/shape/stroke/index.js +3 -0
  353. package/dist/attributes/shape/stroke/index.js.map +1 -0
  354. package/dist/attributes/shape/stroke/lerp.d.ts +3 -0
  355. package/dist/attributes/shape/stroke/lerp.d.ts.map +1 -0
  356. package/dist/attributes/shape/stroke/lerp.js +30 -0
  357. package/dist/attributes/shape/stroke/lerp.js.map +1 -0
  358. package/dist/attributes/shape/stroke/mapper.d.ts +24 -0
  359. package/dist/attributes/shape/stroke/mapper.d.ts.map +1 -0
  360. package/dist/attributes/shape/stroke/mapper.js +25 -0
  361. package/dist/attributes/shape/stroke/mapper.js.map +1 -0
  362. package/dist/attributes/text/align.d.ts +2 -0
  363. package/dist/attributes/text/align.d.ts.map +1 -0
  364. package/dist/attributes/text/align.js +2 -0
  365. package/dist/attributes/text/align.js.map +1 -0
  366. package/dist/attributes/text/lerp.d.ts +8 -0
  367. package/dist/attributes/text/lerp.d.ts.map +1 -0
  368. package/dist/attributes/text/lerp.js +38 -0
  369. package/dist/attributes/text/lerp.js.map +1 -0
  370. package/dist/attributes/text/lerp.test.d.ts +2 -0
  371. package/dist/attributes/text/lerp.test.d.ts.map +1 -0
  372. package/dist/attributes/text/lerp.test.js +39 -0
  373. package/dist/attributes/text/lerp.test.js.map +1 -0
  374. package/dist/attributes/text/span.d.ts +37 -0
  375. package/dist/attributes/text/span.d.ts.map +1 -0
  376. package/dist/attributes/text/span.js +2 -0
  377. package/dist/attributes/text/span.js.map +1 -0
  378. package/dist/index.d.ts +14 -0
  379. package/dist/index.d.ts.map +1 -0
  380. package/dist/index.js +14 -0
  381. package/dist/index.js.map +1 -0
  382. package/dist/jsx/jsx-dev-runtime.d.ts +19 -0
  383. package/dist/jsx/jsx-dev-runtime.d.ts.map +1 -0
  384. package/dist/jsx/jsx-dev-runtime.js +16 -0
  385. package/dist/jsx/jsx-dev-runtime.js.map +1 -0
  386. package/dist/jsx/jsx-runtime.d.ts +19 -0
  387. package/dist/jsx/jsx-runtime.d.ts.map +1 -0
  388. package/dist/jsx/jsx-runtime.js +16 -0
  389. package/dist/jsx/jsx-runtime.js.map +1 -0
  390. package/dist/layout/flex.d.ts +66 -0
  391. package/dist/layout/flex.d.ts.map +1 -0
  392. package/dist/layout/flex.js +196 -0
  393. package/dist/layout/flex.js.map +1 -0
  394. package/dist/layout/flex.test.d.ts +2 -0
  395. package/dist/layout/flex.test.d.ts.map +1 -0
  396. package/dist/layout/flex.test.js +336 -0
  397. package/dist/layout/flex.test.js.map +1 -0
  398. package/dist/layout/grid.d.ts +38 -0
  399. package/dist/layout/grid.d.ts.map +1 -0
  400. package/dist/layout/grid.js +117 -0
  401. package/dist/layout/grid.js.map +1 -0
  402. package/dist/layout/index.d.ts +6 -0
  403. package/dist/layout/index.d.ts.map +1 -0
  404. package/dist/layout/index.js +6 -0
  405. package/dist/layout/index.js.map +1 -0
  406. package/dist/layout/padding.d.ts +19 -0
  407. package/dist/layout/padding.d.ts.map +1 -0
  408. package/dist/layout/padding.js +16 -0
  409. package/dist/layout/padding.js.map +1 -0
  410. package/dist/layout/padding.test.d.ts +2 -0
  411. package/dist/layout/padding.test.d.ts.map +1 -0
  412. package/dist/layout/padding.test.js +39 -0
  413. package/dist/layout/padding.test.js.map +1 -0
  414. package/dist/layout/size-resolver.d.ts +13 -0
  415. package/dist/layout/size-resolver.d.ts.map +1 -0
  416. package/dist/layout/size-resolver.js +22 -0
  417. package/dist/layout/size-resolver.js.map +1 -0
  418. package/dist/layout/size-resolver.test.d.ts +2 -0
  419. package/dist/layout/size-resolver.test.d.ts.map +1 -0
  420. package/dist/layout/size-resolver.test.js +24 -0
  421. package/dist/layout/size-resolver.test.js.map +1 -0
  422. package/dist/layout/tweens.d.ts +5 -0
  423. package/dist/layout/tweens.d.ts.map +1 -0
  424. package/dist/layout/tweens.js +16 -0
  425. package/dist/layout/tweens.js.map +1 -0
  426. package/dist/layout/tweens.test.d.ts +2 -0
  427. package/dist/layout/tweens.test.d.ts.map +1 -0
  428. package/dist/layout/tweens.test.js +26 -0
  429. package/dist/layout/tweens.test.js.map +1 -0
  430. package/dist/nodes/base/boolean-node.d.ts +14 -0
  431. package/dist/nodes/base/boolean-node.d.ts.map +1 -0
  432. package/dist/nodes/base/boolean-node.js +34 -0
  433. package/dist/nodes/base/boolean-node.js.map +1 -0
  434. package/dist/nodes/base/camera-node.d.ts +27 -0
  435. package/dist/nodes/base/camera-node.d.ts.map +1 -0
  436. package/dist/nodes/base/camera-node.js +31 -0
  437. package/dist/nodes/base/camera-node.js.map +1 -0
  438. package/dist/nodes/base/mask-node.d.ts +14 -0
  439. package/dist/nodes/base/mask-node.d.ts.map +1 -0
  440. package/dist/nodes/base/mask-node.js +37 -0
  441. package/dist/nodes/base/mask-node.js.map +1 -0
  442. package/dist/nodes/base/node.d.ts +284 -0
  443. package/dist/nodes/base/node.d.ts.map +1 -0
  444. package/dist/nodes/base/node.js +800 -0
  445. package/dist/nodes/base/node.js.map +1 -0
  446. package/dist/nodes/base/scene-node.d.ts +45 -0
  447. package/dist/nodes/base/scene-node.d.ts.map +1 -0
  448. package/dist/nodes/base/scene-node.js +122 -0
  449. package/dist/nodes/base/scene-node.js.map +1 -0
  450. package/dist/nodes/geometry/ellipse-node.d.ts +18 -0
  451. package/dist/nodes/geometry/ellipse-node.d.ts.map +1 -0
  452. package/dist/nodes/geometry/ellipse-node.js +55 -0
  453. package/dist/nodes/geometry/ellipse-node.js.map +1 -0
  454. package/dist/nodes/geometry/grid-node.d.ts +40 -0
  455. package/dist/nodes/geometry/grid-node.d.ts.map +1 -0
  456. package/dist/nodes/geometry/grid-node.js +138 -0
  457. package/dist/nodes/geometry/grid-node.js.map +1 -0
  458. package/dist/nodes/geometry/line-node.d.ts +17 -0
  459. package/dist/nodes/geometry/line-node.d.ts.map +1 -0
  460. package/dist/nodes/geometry/line-node.js +34 -0
  461. package/dist/nodes/geometry/line-node.js.map +1 -0
  462. package/dist/nodes/geometry/path-node.d.ts +17 -0
  463. package/dist/nodes/geometry/path-node.d.ts.map +1 -0
  464. package/dist/nodes/geometry/path-node.js +230 -0
  465. package/dist/nodes/geometry/path-node.js.map +1 -0
  466. package/dist/nodes/geometry/polygon-node.d.ts +20 -0
  467. package/dist/nodes/geometry/polygon-node.d.ts.map +1 -0
  468. package/dist/nodes/geometry/polygon-node.js +42 -0
  469. package/dist/nodes/geometry/polygon-node.js.map +1 -0
  470. package/dist/nodes/geometry/polygram-node.d.ts +27 -0
  471. package/dist/nodes/geometry/polygram-node.d.ts.map +1 -0
  472. package/dist/nodes/geometry/polygram-node.js +47 -0
  473. package/dist/nodes/geometry/polygram-node.js.map +1 -0
  474. package/dist/nodes/geometry/rect-node.d.ts +50 -0
  475. package/dist/nodes/geometry/rect-node.d.ts.map +1 -0
  476. package/dist/nodes/geometry/rect-node.js +275 -0
  477. package/dist/nodes/geometry/rect-node.js.map +1 -0
  478. package/dist/nodes/geometry/shape-node.d.ts +66 -0
  479. package/dist/nodes/geometry/shape-node.d.ts.map +1 -0
  480. package/dist/nodes/geometry/shape-node.js +127 -0
  481. package/dist/nodes/geometry/shape-node.js.map +1 -0
  482. package/dist/nodes/index.d.ts +17 -0
  483. package/dist/nodes/index.d.ts.map +1 -0
  484. package/dist/nodes/index.js +20 -0
  485. package/dist/nodes/index.js.map +1 -0
  486. package/dist/nodes/media/image-node.d.ts +28 -0
  487. package/dist/nodes/media/image-node.d.ts.map +1 -0
  488. package/dist/nodes/media/image-node.js +53 -0
  489. package/dist/nodes/media/image-node.js.map +1 -0
  490. package/dist/nodes/text/richtext-node.d.ts +46 -0
  491. package/dist/nodes/text/richtext-node.d.ts.map +1 -0
  492. package/dist/nodes/text/richtext-node.js +155 -0
  493. package/dist/nodes/text/richtext-node.js.map +1 -0
  494. package/dist/nodes/text/text-node.d.ts +42 -0
  495. package/dist/nodes/text/text-node.d.ts.map +1 -0
  496. package/dist/nodes/text/text-node.js +123 -0
  497. package/dist/nodes/text/text-node.js.map +1 -0
  498. package/dist/platform/audio-device.d.ts +40 -0
  499. package/dist/platform/audio-device.d.ts.map +1 -0
  500. package/dist/platform/audio-device.js +19 -0
  501. package/dist/platform/audio-device.js.map +1 -0
  502. package/dist/platform/index.d.ts +4 -0
  503. package/dist/platform/index.d.ts.map +1 -0
  504. package/dist/platform/index.js +4 -0
  505. package/dist/platform/index.js.map +1 -0
  506. package/dist/platform/master-clock.d.ts +54 -0
  507. package/dist/platform/master-clock.d.ts.map +1 -0
  508. package/dist/platform/master-clock.js +85 -0
  509. package/dist/platform/master-clock.js.map +1 -0
  510. package/dist/platform/storage-adapter.d.ts +29 -0
  511. package/dist/platform/storage-adapter.d.ts.map +1 -0
  512. package/dist/platform/storage-adapter.js +70 -0
  513. package/dist/platform/storage-adapter.js.map +1 -0
  514. package/dist/project/config.d.ts +24 -0
  515. package/dist/project/config.d.ts.map +1 -0
  516. package/dist/project/config.js +14 -0
  517. package/dist/project/config.js.map +1 -0
  518. package/dist/project/config.test.d.ts +2 -0
  519. package/dist/project/config.test.d.ts.map +1 -0
  520. package/dist/project/config.test.js +28 -0
  521. package/dist/project/config.test.js.map +1 -0
  522. package/dist/project/index.d.ts +3 -0
  523. package/dist/project/index.d.ts.map +1 -0
  524. package/dist/project/index.js +3 -0
  525. package/dist/project/index.js.map +1 -0
  526. package/dist/project/tree.d.ts +48 -0
  527. package/dist/project/tree.d.ts.map +1 -0
  528. package/dist/project/tree.js +11 -0
  529. package/dist/project/tree.js.map +1 -0
  530. package/dist/render/build-stage.d.ts +63 -0
  531. package/dist/render/build-stage.d.ts.map +1 -0
  532. package/dist/render/build-stage.js +91 -0
  533. package/dist/render/build-stage.js.map +1 -0
  534. package/dist/render/descriptors/ellipse.d.ts +10 -0
  535. package/dist/render/descriptors/ellipse.d.ts.map +1 -0
  536. package/dist/render/descriptors/ellipse.js +20 -0
  537. package/dist/render/descriptors/ellipse.js.map +1 -0
  538. package/dist/render/descriptors/image.d.ts +12 -0
  539. package/dist/render/descriptors/image.d.ts.map +1 -0
  540. package/dist/render/descriptors/image.js +12 -0
  541. package/dist/render/descriptors/image.js.map +1 -0
  542. package/dist/render/descriptors/latex.d.ts +6 -0
  543. package/dist/render/descriptors/latex.d.ts.map +1 -0
  544. package/dist/render/descriptors/latex.js +2 -0
  545. package/dist/render/descriptors/latex.js.map +1 -0
  546. package/dist/render/descriptors/line.d.ts +9 -0
  547. package/dist/render/descriptors/line.d.ts.map +1 -0
  548. package/dist/render/descriptors/line.js +19 -0
  549. package/dist/render/descriptors/line.js.map +1 -0
  550. package/dist/render/descriptors/path-builder.d.ts +14 -0
  551. package/dist/render/descriptors/path-builder.d.ts.map +1 -0
  552. package/dist/render/descriptors/path-builder.js +34 -0
  553. package/dist/render/descriptors/path-builder.js.map +1 -0
  554. package/dist/render/descriptors/path.d.ts +105 -0
  555. package/dist/render/descriptors/path.d.ts.map +1 -0
  556. package/dist/render/descriptors/path.js +45 -0
  557. package/dist/render/descriptors/path.js.map +1 -0
  558. package/dist/render/descriptors/path.test.d.ts +2 -0
  559. package/dist/render/descriptors/path.test.d.ts.map +1 -0
  560. package/dist/render/descriptors/path.test.js +40 -0
  561. package/dist/render/descriptors/path.test.js.map +1 -0
  562. package/dist/render/descriptors/polygon.d.ts +9 -0
  563. package/dist/render/descriptors/polygon.d.ts.map +1 -0
  564. package/dist/render/descriptors/polygon.js +19 -0
  565. package/dist/render/descriptors/polygon.js.map +1 -0
  566. package/dist/render/descriptors/polygram.d.ts +10 -0
  567. package/dist/render/descriptors/polygram.d.ts.map +1 -0
  568. package/dist/render/descriptors/polygram.js +20 -0
  569. package/dist/render/descriptors/polygram.js.map +1 -0
  570. package/dist/render/descriptors/rect.d.ts +9 -0
  571. package/dist/render/descriptors/rect.d.ts.map +1 -0
  572. package/dist/render/descriptors/rect.js +18 -0
  573. package/dist/render/descriptors/rect.js.map +1 -0
  574. package/dist/render/descriptors/richtext.d.ts +12 -0
  575. package/dist/render/descriptors/richtext.d.ts.map +1 -0
  576. package/dist/render/descriptors/richtext.js +20 -0
  577. package/dist/render/descriptors/richtext.js.map +1 -0
  578. package/dist/render/descriptors/shape.d.ts +6 -0
  579. package/dist/render/descriptors/shape.d.ts.map +1 -0
  580. package/dist/render/descriptors/shape.js +2 -0
  581. package/dist/render/descriptors/shape.js.map +1 -0
  582. package/dist/render/descriptors/text.d.ts +19 -0
  583. package/dist/render/descriptors/text.d.ts.map +1 -0
  584. package/dist/render/descriptors/text.js +27 -0
  585. package/dist/render/descriptors/text.js.map +1 -0
  586. package/dist/render/descriptors/transform.d.ts +16 -0
  587. package/dist/render/descriptors/transform.d.ts.map +1 -0
  588. package/dist/render/descriptors/transform.js +14 -0
  589. package/dist/render/descriptors/transform.js.map +1 -0
  590. package/dist/render/index.d.ts +17 -0
  591. package/dist/render/index.d.ts.map +1 -0
  592. package/dist/render/index.js +16 -0
  593. package/dist/render/index.js.map +1 -0
  594. package/dist/render/measure-scope.d.ts +25 -0
  595. package/dist/render/measure-scope.d.ts.map +1 -0
  596. package/dist/render/measure-scope.js +11 -0
  597. package/dist/render/measure-scope.js.map +1 -0
  598. package/dist/render/render-context.d.ts +258 -0
  599. package/dist/render/render-context.d.ts.map +1 -0
  600. package/dist/render/render-context.js +95 -0
  601. package/dist/render/render-context.js.map +1 -0
  602. package/dist/runtime/index.d.ts +4 -0
  603. package/dist/runtime/index.d.ts.map +1 -0
  604. package/dist/runtime/index.js +4 -0
  605. package/dist/runtime/index.js.map +1 -0
  606. package/dist/runtime/playback-controller.d.ts +105 -0
  607. package/dist/runtime/playback-controller.d.ts.map +1 -0
  608. package/dist/runtime/playback-controller.js +244 -0
  609. package/dist/runtime/playback-controller.js.map +1 -0
  610. package/dist/runtime/playback-controller.test.d.ts +2 -0
  611. package/dist/runtime/playback-controller.test.d.ts.map +1 -0
  612. package/dist/runtime/playback-controller.test.js +148 -0
  613. package/dist/runtime/playback-controller.test.js.map +1 -0
  614. package/dist/runtime/precompisition.d.ts +107 -0
  615. package/dist/runtime/precompisition.d.ts.map +1 -0
  616. package/dist/runtime/precompisition.js +202 -0
  617. package/dist/runtime/precompisition.js.map +1 -0
  618. package/dist/runtime/precompisition.test.d.ts +2 -0
  619. package/dist/runtime/precompisition.test.d.ts.map +1 -0
  620. package/dist/runtime/precompisition.test.js +138 -0
  621. package/dist/runtime/precompisition.test.js.map +1 -0
  622. package/dist/runtime/runtime.fixtures.d.ts +158 -0
  623. package/dist/runtime/runtime.fixtures.d.ts.map +1 -0
  624. package/dist/runtime/runtime.fixtures.js +264 -0
  625. package/dist/runtime/runtime.fixtures.js.map +1 -0
  626. package/dist/runtime/state-evaluator.d.ts +76 -0
  627. package/dist/runtime/state-evaluator.d.ts.map +1 -0
  628. package/dist/runtime/state-evaluator.js +162 -0
  629. package/dist/runtime/state-evaluator.js.map +1 -0
  630. package/dist/runtime/state-evaluator.test.d.ts +2 -0
  631. package/dist/runtime/state-evaluator.test.d.ts.map +1 -0
  632. package/dist/runtime/state-evaluator.test.js +122 -0
  633. package/dist/runtime/state-evaluator.test.js.map +1 -0
  634. package/dist/signals/create.d.ts +21 -0
  635. package/dist/signals/create.d.ts.map +1 -0
  636. package/dist/signals/create.js +74 -0
  637. package/dist/signals/create.js.map +1 -0
  638. package/dist/signals/create.test.d.ts +2 -0
  639. package/dist/signals/create.test.d.ts.map +1 -0
  640. package/dist/signals/create.test.js +81 -0
  641. package/dist/signals/create.test.js.map +1 -0
  642. package/dist/signals/host.d.ts +11 -0
  643. package/dist/signals/host.d.ts.map +1 -0
  644. package/dist/signals/host.js +10 -0
  645. package/dist/signals/host.js.map +1 -0
  646. package/dist/signals/index.d.ts +4 -0
  647. package/dist/signals/index.d.ts.map +1 -0
  648. package/dist/signals/index.js +3 -0
  649. package/dist/signals/index.js.map +1 -0
  650. package/dist/signals/signal-cell.test.d.ts +2 -0
  651. package/dist/signals/signal-cell.test.d.ts.map +1 -0
  652. package/dist/signals/signal-cell.test.js +202 -0
  653. package/dist/signals/signal-cell.test.js.map +1 -0
  654. package/dist/signals/signal.d.ts +46 -0
  655. package/dist/signals/signal.d.ts.map +1 -0
  656. package/dist/signals/signal.js +162 -0
  657. package/dist/signals/signal.js.map +1 -0
  658. package/dist/signals/signal.test.d.ts +2 -0
  659. package/dist/signals/signal.test.d.ts.map +1 -0
  660. package/dist/signals/signal.test.js +192 -0
  661. package/dist/signals/signal.test.js.map +1 -0
  662. package/dist/signals/subscriber.d.ts +5 -0
  663. package/dist/signals/subscriber.d.ts.map +1 -0
  664. package/dist/signals/subscriber.js +2 -0
  665. package/dist/signals/subscriber.js.map +1 -0
  666. package/dist/tween/animation-builder.d.ts +74 -0
  667. package/dist/tween/animation-builder.d.ts.map +1 -0
  668. package/dist/tween/animation-builder.js +99 -0
  669. package/dist/tween/animation-builder.js.map +1 -0
  670. package/dist/tween/ease/constants.d.ts +13 -0
  671. package/dist/tween/ease/constants.d.ts.map +1 -0
  672. package/dist/tween/ease/constants.js +71 -0
  673. package/dist/tween/ease/constants.js.map +1 -0
  674. package/dist/tween/ease/type.d.ts +2 -0
  675. package/dist/tween/ease/type.d.ts.map +1 -0
  676. package/dist/tween/ease/type.js +2 -0
  677. package/dist/tween/ease/type.js.map +1 -0
  678. package/dist/tween/eases.test.d.ts +2 -0
  679. package/dist/tween/eases.test.d.ts.map +1 -0
  680. package/dist/tween/eases.test.js +91 -0
  681. package/dist/tween/eases.test.js.map +1 -0
  682. package/dist/tween/generator.d.ts +22 -0
  683. package/dist/tween/generator.d.ts.map +1 -0
  684. package/dist/tween/generator.js +2 -0
  685. package/dist/tween/generator.js.map +1 -0
  686. package/dist/tween/index.d.ts +12 -0
  687. package/dist/tween/index.d.ts.map +1 -0
  688. package/dist/tween/index.js +12 -0
  689. package/dist/tween/index.js.map +1 -0
  690. package/dist/tween/lerp.d.ts +11 -0
  691. package/dist/tween/lerp.d.ts.map +1 -0
  692. package/dist/tween/lerp.js +13 -0
  693. package/dist/tween/lerp.js.map +1 -0
  694. package/dist/tween/lerp.test.d.ts +2 -0
  695. package/dist/tween/lerp.test.d.ts.map +1 -0
  696. package/dist/tween/lerp.test.js +22 -0
  697. package/dist/tween/lerp.test.js.map +1 -0
  698. package/dist/tween/parallel.d.ts +23 -0
  699. package/dist/tween/parallel.d.ts.map +1 -0
  700. package/dist/tween/parallel.js +79 -0
  701. package/dist/tween/parallel.js.map +1 -0
  702. package/dist/tween/prepare.d.ts +34 -0
  703. package/dist/tween/prepare.d.ts.map +1 -0
  704. package/dist/tween/prepare.js +52 -0
  705. package/dist/tween/prepare.js.map +1 -0
  706. package/dist/tween/prepare.test.d.ts +2 -0
  707. package/dist/tween/prepare.test.d.ts.map +1 -0
  708. package/dist/tween/prepare.test.js +44 -0
  709. package/dist/tween/prepare.test.js.map +1 -0
  710. package/dist/tween/sequence.d.ts +19 -0
  711. package/dist/tween/sequence.d.ts.map +1 -0
  712. package/dist/tween/sequence.js +22 -0
  713. package/dist/tween/sequence.js.map +1 -0
  714. package/dist/tween/sequence.test.d.ts +2 -0
  715. package/dist/tween/sequence.test.d.ts.map +1 -0
  716. package/dist/tween/sequence.test.js +68 -0
  717. package/dist/tween/sequence.test.js.map +1 -0
  718. package/dist/tween/stepper.d.ts +34 -0
  719. package/dist/tween/stepper.d.ts.map +1 -0
  720. package/dist/tween/stepper.js +4 -0
  721. package/dist/tween/stepper.js.map +1 -0
  722. package/dist/tween/tests/batched-parallel.test.d.ts +2 -0
  723. package/dist/tween/tests/batched-parallel.test.d.ts.map +1 -0
  724. package/dist/tween/tests/batched-parallel.test.js +76 -0
  725. package/dist/tween/tests/batched-parallel.test.js.map +1 -0
  726. package/dist/tween/tests/parallel.test.d.ts +2 -0
  727. package/dist/tween/tests/parallel.test.d.ts.map +1 -0
  728. package/dist/tween/tests/parallel.test.js +129 -0
  729. package/dist/tween/tests/parallel.test.js.map +1 -0
  730. package/dist/tween/tests/realtime.test.d.ts +2 -0
  731. package/dist/tween/tests/realtime.test.d.ts.map +1 -0
  732. package/dist/tween/tests/realtime.test.js +76 -0
  733. package/dist/tween/tests/realtime.test.js.map +1 -0
  734. package/dist/tween/tween.d.ts +18 -0
  735. package/dist/tween/tween.d.ts.map +1 -0
  736. package/dist/tween/tween.js +28 -0
  737. package/dist/tween/tween.js.map +1 -0
  738. package/dist/tween/tween.test.d.ts +2 -0
  739. package/dist/tween/tween.test.d.ts.map +1 -0
  740. package/dist/tween/tween.test.js +38 -0
  741. package/dist/tween/tween.test.js.map +1 -0
  742. package/dist/tween/wait.d.ts +19 -0
  743. package/dist/tween/wait.d.ts.map +1 -0
  744. package/dist/tween/wait.js +25 -0
  745. package/dist/tween/wait.js.map +1 -0
  746. package/dist/tween/wait.test.d.ts +2 -0
  747. package/dist/tween/wait.test.d.ts.map +1 -0
  748. package/dist/tween/wait.test.js +35 -0
  749. package/dist/tween/wait.test.js.map +1 -0
  750. package/dist/util/clamp.d.ts +12 -0
  751. package/dist/util/clamp.d.ts.map +1 -0
  752. package/dist/util/clamp.js +16 -0
  753. package/dist/util/clamp.js.map +1 -0
  754. package/dist/util/clamp.test.d.ts +2 -0
  755. package/dist/util/clamp.test.d.ts.map +1 -0
  756. package/dist/util/clamp.test.js +31 -0
  757. package/dist/util/clamp.test.js.map +1 -0
  758. package/dist/util/index.d.ts +4 -0
  759. package/dist/util/index.d.ts.map +1 -0
  760. package/dist/util/index.js +4 -0
  761. package/dist/util/index.js.map +1 -0
  762. package/dist/util/random.d.ts +16 -0
  763. package/dist/util/random.d.ts.map +1 -0
  764. package/dist/util/random.js +28 -0
  765. package/dist/util/random.js.map +1 -0
  766. package/dist/util/random.test.d.ts +2 -0
  767. package/dist/util/random.test.d.ts.map +1 -0
  768. package/dist/util/random.test.js +42 -0
  769. package/dist/util/random.test.js.map +1 -0
  770. package/dist/util/range.d.ts +12 -0
  771. package/dist/util/range.d.ts.map +1 -0
  772. package/dist/util/range.js +11 -0
  773. package/dist/util/range.js.map +1 -0
  774. package/dist/util/reference.d.ts +15 -0
  775. package/dist/util/reference.d.ts.map +1 -0
  776. package/dist/util/reference.js +20 -0
  777. package/dist/util/reference.js.map +1 -0
  778. package/dist/util/reference.test.d.ts +2 -0
  779. package/dist/util/reference.test.d.ts.map +1 -0
  780. package/dist/util/reference.test.js +32 -0
  781. package/dist/util/reference.test.js.map +1 -0
  782. package/package.json +54 -0
@@ -0,0 +1,35 @@
1
+ import { parseColor } from '../color/parser';
2
+ import { lerpNumber } from '../../../../tween/lerp';
3
+ export const noiseFill = {
4
+ resolve: (prop) => {
5
+ const raw = prop.color ?? [0, 0, 0, 1];
6
+ return {
7
+ type: 'noise',
8
+ size: prop.size ?? { x: 1, y: 1 },
9
+ density: prop.density ?? 1,
10
+ color: Array.isArray(raw) ? raw : parseColor(raw),
11
+ opacity: prop.opacity,
12
+ blend: prop.blend,
13
+ };
14
+ },
15
+ lerp: (a, b, t) => ({
16
+ size: {
17
+ x: lerpNumber(a.size.x, b.size.x, t),
18
+ y: lerpNumber(a.size.y, b.size.y, t),
19
+ },
20
+ density: lerpNumber(a.density, b.density, t),
21
+ color: [
22
+ lerpNumber(a.color[0], b.color[0], t),
23
+ lerpNumber(a.color[1], b.color[1], t),
24
+ lerpNumber(a.color[2], b.color[2], t),
25
+ lerpNumber(a.color[3], b.color[3], t),
26
+ ],
27
+ opacity: lerpNumber(a.opacity ?? 1, b.opacity ?? 1, t),
28
+ }),
29
+ update: (previous) => previous,
30
+ equals: (a, b) => a.size.x === b.size.x && a.size.y === b.size.y &&
31
+ a.density === b.density &&
32
+ a.color[0] === b.color[0] && a.color[1] === b.color[1] &&
33
+ a.color[2] === b.color[2] && a.color[3] === b.color[3],
34
+ };
35
+ //# sourceMappingURL=noise.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noise.js","sourceRoot":"","sources":["../../../../../src/attributes/shape/fill/implementations/noise.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAqB1C,MAAM,CAAC,MAAM,SAAS,GAAgC;IAClD,OAAO,EAAE,CAAC,IAAmB,EAAE,EAAE;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,IAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAqB,CAAC;QAC5D,OAAO;YACH,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC;YAC1B,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,GAAuB,CAAC,CAAC,CAAC,UAAU,CAAC,GAAa,CAAC;YAChF,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;SACpB,CAAC;IACN,CAAC;IACD,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAChB,IAAI,EAAE;YACF,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;YACpC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;SACvC;QACD,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5C,KAAK,EAAE;YACH,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACxC;QACD,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;KACzD,CAAC;IACF,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ;IAC9B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACb,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO;QACvB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;CAC7D,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { Color, NormalizedColor } from '../color/parser';
2
+ import type { BlendMode } from '../blend';
3
+ import type { FillData } from '../registry';
4
+ import { Vector2 } from '../../../../attributes/layout/vector2';
5
+ export interface RadialGradientFillProp {
6
+ type: 'radial-gradient';
7
+ colors: Color[];
8
+ stops?: number[];
9
+ center?: Vector2;
10
+ radius?: number;
11
+ opacity?: number;
12
+ blend?: BlendMode;
13
+ }
14
+ export interface RadialGradientFillResolved {
15
+ type: 'radial-gradient';
16
+ colors: NormalizedColor[];
17
+ stops: number[];
18
+ center: Vector2;
19
+ radius: number;
20
+ opacity?: number;
21
+ blend?: BlendMode;
22
+ }
23
+ export declare const radialGradientFill: FillData<RadialGradientFillResolved>;
24
+ //# sourceMappingURL=radial-gradient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radial-gradient.d.ts","sourceRoot":"","sources":["../../../../../src/attributes/shape/fill/implementations/radial-gradient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAc,MAAM,iBAAiB,CAAC;AACrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAe,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEnE,MAAM,WAAW,sBAAsB;IACnC,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,0BAA0B;IACvC,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAMD,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,0BAA0B,CA0BnE,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { parseColor } from '../color/parser';
2
+ import { lerpNumber } from '../../../../tween/lerp';
3
+ import { lerpVector2 } from '../../../../attributes/layout/vector2';
4
+ function toNormalized(c) {
5
+ return Array.isArray(c) ? c : parseColor(c);
6
+ }
7
+ export const radialGradientFill = {
8
+ resolve: (prop) => ({
9
+ type: 'radial-gradient',
10
+ colors: prop.colors.map(toNormalized),
11
+ stops: prop.stops ?? prop.colors.map((_, i) => i / Math.max(1, prop.colors.length - 1)),
12
+ center: prop.center ?? { x: 0, y: 0 },
13
+ radius: prop.radius ?? 100,
14
+ opacity: prop.opacity,
15
+ blend: prop.blend,
16
+ }),
17
+ lerp: (a, b, t) => ({
18
+ colors: a.colors.map((c, i) => {
19
+ const d = b.colors[i] ?? c;
20
+ return [lerpNumber(c[0], d[0], t), lerpNumber(c[1], d[1], t), lerpNumber(c[2], d[2], t), lerpNumber(c[3], d[3], t)];
21
+ }),
22
+ stops: a.stops.map((s, i) => lerpNumber(s, b.stops[i] ?? s, t)),
23
+ center: lerpVector2(a.center, b.center, t),
24
+ radius: lerpNumber(a.radius, b.radius, t),
25
+ opacity: lerpNumber(a.opacity ?? 1, b.opacity ?? 1, t),
26
+ }),
27
+ update: (previous) => previous,
28
+ equals: (a, b) => a.center.x === b.center.x && a.center.y === b.center.y &&
29
+ a.radius === b.radius &&
30
+ a.colors.length === b.colors.length &&
31
+ a.colors.every((c, i) => c === b.colors[i]),
32
+ };
33
+ //# sourceMappingURL=radial-gradient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radial-gradient.js","sourceRoot":"","sources":["../../../../../src/attributes/shape/fill/implementations/radial-gradient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { Color, NormalizedColor } from '../color/parser';
2
+ import type { BlendMode } from '../blend';
3
+ import type { FillData } from '../registry';
4
+ export interface StripeFillProp {
5
+ type: 'stripe';
6
+ gap?: number;
7
+ strokeWidth?: number;
8
+ angle?: number;
9
+ color?: Color;
10
+ opacity?: number;
11
+ blend?: BlendMode;
12
+ }
13
+ export interface StripeFillResolved {
14
+ type: 'stripe';
15
+ gap?: number;
16
+ strokeWidth?: number;
17
+ angle?: number;
18
+ color?: NormalizedColor;
19
+ opacity?: number;
20
+ blend?: BlendMode;
21
+ }
22
+ export declare const stripeFill: FillData<StripeFillResolved>;
23
+ //# sourceMappingURL=stripe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripe.d.ts","sourceRoot":"","sources":["../../../../../src/attributes/shape/fill/implementations/stripe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAc,MAAM,iBAAiB,CAAC;AACrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,kBAAkB,CAiCnD,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { parseColor } from '../color/parser';
2
+ import { lerpNumber } from '../../../../tween/lerp';
3
+ export const stripeFill = {
4
+ resolve: (prop) => ({
5
+ type: 'stripe',
6
+ gap: prop.gap,
7
+ strokeWidth: prop.strokeWidth,
8
+ angle: prop.angle,
9
+ color: prop.color != null
10
+ ? Array.isArray(prop.color)
11
+ ? prop.color
12
+ : parseColor(prop.color)
13
+ : undefined,
14
+ opacity: prop.opacity,
15
+ blend: prop.blend,
16
+ }),
17
+ lerp: (a, b, t) => ({
18
+ gap: lerpNumber(a.gap ?? 8, b.gap ?? 8, t),
19
+ strokeWidth: lerpNumber(a.strokeWidth ?? 1, b.strokeWidth ?? 1, t),
20
+ angle: lerpNumber(a.angle ?? -45, b.angle ?? -45, t),
21
+ color: a.color && b.color ? [
22
+ lerpNumber(a.color[0], b.color[0], t),
23
+ lerpNumber(a.color[1], b.color[1], t),
24
+ lerpNumber(a.color[2], b.color[2], t),
25
+ lerpNumber(a.color[3], b.color[3], t),
26
+ ] : (a.color ?? b.color),
27
+ opacity: lerpNumber(a.opacity ?? 1, b.opacity ?? 1, t),
28
+ }),
29
+ update: (previous) => previous,
30
+ equals: (a, b) => a.gap === b.gap &&
31
+ a.strokeWidth === b.strokeWidth &&
32
+ a.angle === b.angle &&
33
+ a.color?.[0] === b.color?.[0] && a.color?.[1] === b.color?.[1] &&
34
+ a.color?.[2] === b.color?.[2] && a.color?.[3] === b.color?.[3],
35
+ };
36
+ //# sourceMappingURL=stripe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripe.js","sourceRoot":"","sources":["../../../../../src/attributes/shape/fill/implementations/stripe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import type { BlendMode } from '../blend';
2
+ import type { MediaFilter } from '../../filters/union';
3
+ import type { ImageFillMode, ImageTransform } from './image';
4
+ import type { FillData } from '../registry';
5
+ export interface VideoFillProp {
6
+ type: 'video';
7
+ src: string;
8
+ mode?: ImageFillMode;
9
+ transform?: ImageTransform;
10
+ scaling?: number;
11
+ timestamp: number;
12
+ playing: boolean;
13
+ trimStart?: number;
14
+ trimEnd?: number;
15
+ speed?: number;
16
+ filters?: MediaFilter[];
17
+ loop?: 'forward' | 'reverse' | 'none';
18
+ duration?: number;
19
+ opacity?: number;
20
+ blend?: BlendMode;
21
+ }
22
+ export interface VideoFillResolved {
23
+ type: 'video';
24
+ src: string;
25
+ mode?: ImageFillMode;
26
+ transform?: ImageTransform;
27
+ scaling?: number;
28
+ timestamp: number;
29
+ playing: boolean;
30
+ trimStart?: number;
31
+ trimEnd?: number;
32
+ playStart?: number;
33
+ speed?: number;
34
+ filters?: MediaFilter[];
35
+ loop?: 'forward' | 'reverse' | 'none';
36
+ duration?: number;
37
+ opacity?: number;
38
+ blend?: BlendMode;
39
+ }
40
+ export declare const videoFill: FillData<VideoFillResolved>;
41
+ //# sourceMappingURL=video.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video.d.ts","sourceRoot":"","sources":["../../../../../src/attributes/shape/fill/implementations/video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,SAAS,EAAE,QAAQ,CAAC,iBAAiB,CA6CjD,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { lerpNumber } from '../../../../tween/lerp';
2
+ export const videoFill = {
3
+ resolve: (prop) => ({ ...prop }),
4
+ lerp: (a, b, t) => ({
5
+ src: t < 0.5 ? a.src : b.src,
6
+ mode: a.mode ?? b.mode,
7
+ transform: a.transform ?? b.transform,
8
+ scaling: a.scaling ?? b.scaling,
9
+ loop: t < 0.5 ? a.loop : b.loop,
10
+ duration: t < 0.5 ? a.duration : b.duration,
11
+ trimStart: t < 0.5 ? a.trimStart : b.trimStart,
12
+ trimEnd: t < 0.5 ? a.trimEnd : b.trimEnd,
13
+ playing: t < 0.5 ? a.playing : b.playing,
14
+ opacity: (a.opacity ?? 1) + ((b.opacity ?? 1) - (a.opacity ?? 1)) * t,
15
+ timestamp: (a.timestamp ?? 0) + ((b.timestamp ?? 0) - (a.timestamp ?? 0)) * t,
16
+ speed: lerpNumber(a.speed ?? 1, b.speed ?? 1, t),
17
+ }),
18
+ update: (previous, globalTime, assets) => {
19
+ if (!previous.playing)
20
+ return previous;
21
+ const start = previous.trimStart ?? 0;
22
+ const sourceDuration = assets.getVideoDuration(previous.src);
23
+ const end = previous.trimEnd ?? sourceDuration;
24
+ const speed = previous.speed ?? 1;
25
+ const loop = previous.loop ?? 'none';
26
+ const playStart = previous.playStart ?? globalTime;
27
+ const elapsed = (globalTime - playStart) * speed;
28
+ let newTimestamp;
29
+ const loopDuration = previous.duration ?? (end !== Infinity ? end - start : undefined);
30
+ if (loop !== 'none' && loopDuration !== undefined) {
31
+ const cycle = elapsed % loopDuration;
32
+ if (loop === 'reverse') {
33
+ const ping = Math.floor(elapsed / loopDuration) % 2 === 0;
34
+ newTimestamp = start + (ping ? cycle : loopDuration - cycle);
35
+ }
36
+ else {
37
+ newTimestamp = start + cycle;
38
+ }
39
+ }
40
+ else {
41
+ newTimestamp = Math.min(start + elapsed, end);
42
+ }
43
+ return { ...previous, timestamp: newTimestamp, playStart };
44
+ },
45
+ equals: (a, b) => a.src === b.src,
46
+ dynamic: true,
47
+ prepare: (fill, manager, width, height) => {
48
+ manager.requestVideo(fill.src, width, height, fill.trimStart ?? 0, fill.trimEnd);
49
+ },
50
+ };
51
+ //# sourceMappingURL=video.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video.js","sourceRoot":"","sources":["../../../../../src/attributes/shape/fill/implementations/video.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ export { BLEND_MODES_LIST, getBlendModeHash } from './blend';
2
+ export type { BlendMode } from './blend';
3
+ export { setTheme, parseColor } from './color/parser';
4
+ export type { NormalizedColor, Color } from './color/parser';
5
+ export type { FillProp, FillResolved, FillSpace, FillCommon } from './union';
6
+ export { Fill, FillChain, resolveChainFill } from './chain';
7
+ export type { ChainableFill, FillOptions } from './chain';
8
+ export type { FillData } from './registry';
9
+ export { resolveFill, resolveFillArray, lerpFill, lerpFillArray, updateFill, prepareFill } from './registry';
10
+ export type { SolidFillProp, SolidFillResolved } from './implementations/color';
11
+ export type { ConicGradientFillProp, ConicGradientFillResolved } from './implementations/conic-gradient';
12
+ export type { ImageFillMode, ImageTransform, ImageFillProp, ImageFillResolved } from './implementations/image';
13
+ export type { LinearGradientFillProp, LinearGradientFillResolved } from './implementations/linear-gradient';
14
+ export type { NoiseFillProp, NoiseFillResolved } from './implementations/noise';
15
+ export type { RadialGradientFillProp, RadialGradientFillResolved } from './implementations/radial-gradient';
16
+ export type { StripeFillProp, StripeFillResolved } from './implementations/stripe';
17
+ export type { VideoFillProp, VideoFillResolved } from './implementations/video';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC7D,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE7D,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE7E,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC5D,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE1D,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE7G,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAChF,YAAY,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AACzG,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC/G,YAAY,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC5G,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAChF,YAAY,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC5G,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnF,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { BLEND_MODES_LIST, getBlendModeHash } from './blend';
2
+ export { setTheme, parseColor } from './color/parser';
3
+ export { Fill, FillChain, resolveChainFill } from './chain';
4
+ export { resolveFill, resolveFillArray, lerpFill, lerpFillArray, updateFill, prepareFill } from './registry';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAG7D,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAKtD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAI5D,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Low-level color interpolation utilities.
3
+ *
4
+ * These helpers operate on {@link NormalizedColor} tuples (linear [R, G, B, A]
5
+ * in the 0–1 range) and are used by fill implementations that need per-channel
6
+ * lerp without pulling in the full fill-registry machinery.
7
+ */
8
+ import { NormalizedColor } from "./color/parser";
9
+ /** Linearly interpolates two normalized RGBA colors channel-by-channel. */
10
+ export declare function lerpColor(from: NormalizedColor, to: NormalizedColor, t: number): NormalizedColor;
11
+ //# sourceMappingURL=lerp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lerp.d.ts","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/lerp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,2EAA2E;AAC3E,wBAAgB,SAAS,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,CAOhG"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Low-level color interpolation utilities.
3
+ *
4
+ * These helpers operate on {@link NormalizedColor} tuples (linear [R, G, B, A]
5
+ * in the 0–1 range) and are used by fill implementations that need per-channel
6
+ * lerp without pulling in the full fill-registry machinery.
7
+ */
8
+ /** Linearly interpolates two normalized RGBA colors channel-by-channel. */
9
+ export function lerpColor(from, to, t) {
10
+ return [
11
+ from[0] + (to[0] - from[0]) * t,
12
+ from[1] + (to[1] - from[1]) * t,
13
+ from[2] + (to[2] - from[2]) * t,
14
+ from[3] + (to[3] - from[3]) * t,
15
+ ];
16
+ }
17
+ //# sourceMappingURL=lerp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lerp.js","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/lerp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,2EAA2E;AAC3E,MAAM,UAAU,SAAS,CAAC,IAAqB,EAAE,EAAmB,EAAE,CAAS;IAC3E,OAAO;QACH,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;KAClC,CAAC;AACN,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=lerp.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lerp.test.d.ts","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/lerp.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { lerpColor } from '@/attributes/shape/fill/lerp';
3
+ describe('lerpColor', () => {
4
+ it('returns the from color at t=0', () => {
5
+ expect(lerpColor([0, 0, 0, 1], [1, 1, 1, 1], 0)).toEqual([0, 0, 0, 1]);
6
+ });
7
+ it('returns the to color at t=1', () => {
8
+ expect(lerpColor([0, 0, 0, 1], [1, 1, 1, 1], 1)).toEqual([1, 1, 1, 1]);
9
+ });
10
+ it('interpolates every channel including alpha', () => {
11
+ expect(lerpColor([0, 0, 0, 0], [1, 0.5, 0.2, 1], 0.5)).toEqual([0.5, 0.25, 0.1, 0.5]);
12
+ });
13
+ it('interpolates red→blue at the midpoint', () => {
14
+ const mid = lerpColor([1, 0, 0, 1], [0, 0, 1, 1], 0.5);
15
+ expect(mid).toEqual([0.5, 0, 0.5, 1]);
16
+ });
17
+ });
18
+ //# sourceMappingURL=lerp.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lerp.test.js","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/lerp.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC7C,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACvD,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { AssetTracker } from "../../../assets/tracker";
2
+ import { AssetCatalog } from "../../../assets/catalog";
3
+ import { FillProp, FillResolved } from "./union";
4
+ import { ChainableFill } from "./chain";
5
+ type FillResult<T extends FillResolved> = Omit<Omit<T, "type">, "blend">;
6
+ export interface FillData<T extends FillResolved> {
7
+ resolve(prop: any): T;
8
+ equals(a: T, b: T): boolean;
9
+ lerp(from: FillResult<T>, to: FillResult<T>, t: number): FillResult<T>;
10
+ update(previous: FillResult<T>, globalTime: number, assets: AssetCatalog): FillResult<T>;
11
+ prepare?(fill: T, registry: AssetTracker, width: number, height: number): void;
12
+ /**
13
+ * True when `update()` is time-dependent and must run every frame (e.g.
14
+ * video, which advances its timestamp). Static fills (solid, gradients,
15
+ * noise, image) have an identity `update` and can be skipped each frame.
16
+ */
17
+ dynamic?: boolean;
18
+ }
19
+ export declare function resolveFill(prop: FillProp): FillResolved;
20
+ export declare function resolveFillArray(prop: ChainableFill | undefined): FillResolved[];
21
+ export declare function lerpFill(a: FillResolved, b: FillResolved, t: number): FillResolved;
22
+ export declare function lerpFillArray(from: FillResolved[], to: FillResolved[], t: number): FillResolved[];
23
+ export declare function updateFill(fill: FillResolved, globalTime: number, assets: AssetCatalog): FillResolved;
24
+ /** True if any fill in the array is time-dependent and needs a per-frame update. */
25
+ export declare function hasDynamicFill(fills: FillResolved[]): boolean;
26
+ export declare function prepareFill(fill: FillResolved, tracker: AssetTracker, width: number, height: number): void;
27
+ export {};
28
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAa,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAoB,MAAM,SAAS,CAAC;AAW1D,KAAK,UAAU,CAAC,CAAC,SAAS,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;AAEzE,MAAM,WAAW,QAAQ,CAAC,CAAC,SAAS,YAAY;IAC5C,OAAO,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC;IACtB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;IAC5B,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACzF,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/E;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAmBD,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,YAAY,CAOxD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,SAAS,GAAG,YAAY,EAAE,CAEhF;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,CAMlF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,CAiBjG;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,YAAY,CAGrG;AAED,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,OAAO,CAK7D;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAE1G"}
@@ -0,0 +1,83 @@
1
+ import { resolveChainFill } from "./chain";
2
+ import { colorFill } from "./implementations/color";
3
+ import { linearGradientFill } from "./implementations/linear-gradient";
4
+ import { radialGradientFill } from "./implementations/radial-gradient";
5
+ import { conicGradientFill } from "./implementations/conic-gradient";
6
+ import { noiseFill } from "./implementations/noise";
7
+ import { stripeFill } from "./implementations/stripe";
8
+ import { imageFill } from "./implementations/image";
9
+ import { videoFill } from "./implementations/video";
10
+ const FILLS = new Map([
11
+ ["color", colorFill],
12
+ ["linear-gradient", linearGradientFill],
13
+ ["radial-gradient", radialGradientFill],
14
+ ["conic-gradient", conicGradientFill],
15
+ ["noise", noiseFill],
16
+ ["stripe", stripeFill],
17
+ ["image", imageFill],
18
+ ["video", videoFill],
19
+ ]);
20
+ function get(name) {
21
+ const data = FILLS.get(name);
22
+ if (!data)
23
+ throw new Error(`Fill "${name}" is not registered`);
24
+ return data;
25
+ }
26
+ export function resolveFill(prop) {
27
+ if (typeof prop === "string")
28
+ return resolveFill({ type: "color", color: prop });
29
+ const resolved = get(prop.type).resolve(prop);
30
+ // `space` is a cross-cutting rendering directive (like `blend`); carry it
31
+ // through generically so each fill `resolve()` doesn't have to know about it.
32
+ const space = prop.space;
33
+ return space !== undefined ? { ...resolved, space } : resolved;
34
+ }
35
+ export function resolveFillArray(prop) {
36
+ return resolveChainFill(prop).map(resolveFill);
37
+ }
38
+ export function lerpFill(a, b, t) {
39
+ const clamped = Math.min(1, Math.max(0, t));
40
+ if (a.type !== b.type || a.blend !== b.blend) {
41
+ throw new Error(`No registered lerp for fills of type "${a.type}" and "${b.type}"`);
42
+ }
43
+ return { ...a, ...get(a.type).lerp(a, b, clamped) };
44
+ }
45
+ export function lerpFillArray(from, to, t) {
46
+ if (from === to)
47
+ return from;
48
+ if (!from.length && !to.length)
49
+ return [];
50
+ const maxLength = Math.max(from.length, to.length);
51
+ const result = [];
52
+ for (let i = 0; i < maxLength; i++) {
53
+ const f = from[i];
54
+ const tf = to[i];
55
+ if (f && tf) {
56
+ result.push(lerpFill(f, tf, t));
57
+ }
58
+ else if (f) {
59
+ result.push(lerpFill(f, { ...f, opacity: 0 }, t));
60
+ }
61
+ else if (tf) {
62
+ result.push(lerpFill({ ...tf, opacity: 0 }, tf, t));
63
+ }
64
+ }
65
+ return result;
66
+ }
67
+ export function updateFill(fill, globalTime, assets) {
68
+ if (!FILLS.has(fill.type))
69
+ return fill;
70
+ return { ...fill, ...get(fill.type).update(fill, globalTime, assets) };
71
+ }
72
+ /** True if any fill in the array is time-dependent and needs a per-frame update. */
73
+ export function hasDynamicFill(fills) {
74
+ for (let i = 0; i < fills.length; i++) {
75
+ if (FILLS.get(fills[i].type)?.dynamic)
76
+ return true;
77
+ }
78
+ return false;
79
+ }
80
+ export function prepareFill(fill, tracker, width, height) {
81
+ FILLS.get(fill.type)?.prepare?.(fill, tracker, width, height);
82
+ }
83
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Union types that represent every supported fill variant.
3
+ *
4
+ * Two flavors exist for each fill:
5
+ * - **Prop** — the loose author-facing shape accepted by node props (e.g. CSS
6
+ * color strings, optional fields with sensible defaults).
7
+ * - **Resolved** — the strict internal shape used by the renderer after
8
+ * {@link FillRegistry.resolve} has normalised every field.
9
+ */
10
+ /**
11
+ * Reference frame a fill (and the stroke/shadow that wrap one) is applied
12
+ * against, and whether stacked shapes paint individually or as one unit:
13
+ *
14
+ * - `local` — each shape is painted on its own; gradients/images resolve
15
+ * against that single shape's bounds.
16
+ * - `global` — all shapes drawn together (e.g. `ellipse(...).rect(...)`) are
17
+ * treated as one unit; gradients/images span their union bounds.
18
+ * This is the default.
19
+ * - `parent` — resolve against the parent node's layout rect.
20
+ * - `view` — resolve against the render viewport.
21
+ */
22
+ export type FillSpace = "local" | "global" | "parent" | "view";
23
+ import { SolidFillProp, SolidFillResolved } from "./implementations/color";
24
+ import { ConicGradientFillProp, ConicGradientFillResolved } from "./implementations/conic-gradient";
25
+ import { ImageFillProp, ImageFillResolved } from "./implementations/image";
26
+ import { LinearGradientFillProp, LinearGradientFillResolved } from "./implementations/linear-gradient";
27
+ import { NoiseFillProp, NoiseFillResolved } from "./implementations/noise";
28
+ import { RadialGradientFillProp, RadialGradientFillResolved } from "./implementations/radial-gradient";
29
+ import { StripeFillProp, StripeFillResolved } from "./implementations/stripe";
30
+ import { VideoFillProp, VideoFillResolved } from "./implementations/video";
31
+ /**
32
+ * Loose fill value accepted by node `fill` props.
33
+ *
34
+ * A plain CSS color string (e.g. `"red"`, `"#ff0"`) is shorthand for a
35
+ * {@link SolidFillProp} and is resolved automatically by the registry.
36
+ */
37
+ /** Fields shared by every fill variant, regardless of type. */
38
+ export interface FillCommon {
39
+ /**
40
+ * Reference frame / grouping for this fill. Defaults to `global`.
41
+ * See {@link FillSpace}.
42
+ */
43
+ space?: FillSpace;
44
+ }
45
+ type WithCommon<T> = T & FillCommon;
46
+ export type FillProp = string | WithCommon<SolidFillProp> | WithCommon<NoiseFillProp> | WithCommon<StripeFillProp> | WithCommon<LinearGradientFillProp> | WithCommon<RadialGradientFillProp> | WithCommon<ConicGradientFillProp> | WithCommon<ImageFillProp> | WithCommon<VideoFillProp>;
47
+ /** Fully resolved fill ready for the renderer. */
48
+ export type FillResolved = WithCommon<SolidFillResolved> | WithCommon<NoiseFillResolved> | WithCommon<StripeFillResolved> | WithCommon<LinearGradientFillResolved> | WithCommon<RadialGradientFillResolved> | WithCommon<ConicGradientFillResolved> | WithCommon<ImageFillResolved> | WithCommon<VideoFillResolved>;
49
+ export {};
50
+ //# sourceMappingURL=union.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/union.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACvG,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACvG,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE3E;;;;;GAKG;AACH,+DAA+D;AAC/D,MAAM,WAAW,UAAU;IACvB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;AAEpC,MAAM,MAAM,QAAQ,GACd,MAAM,GACN,UAAU,CAAC,aAAa,CAAC,GACzB,UAAU,CAAC,aAAa,CAAC,GACzB,UAAU,CAAC,cAAc,CAAC,GAC1B,UAAU,CAAC,sBAAsB,CAAC,GAClC,UAAU,CAAC,sBAAsB,CAAC,GAClC,UAAU,CAAC,qBAAqB,CAAC,GACjC,UAAU,CAAC,aAAa,CAAC,GACzB,UAAU,CAAC,aAAa,CAAC,CAAC;AAEhC,kDAAkD;AAClD,MAAM,MAAM,YAAY,GAClB,UAAU,CAAC,iBAAiB,CAAC,GAC7B,UAAU,CAAC,iBAAiB,CAAC,GAC7B,UAAU,CAAC,kBAAkB,CAAC,GAC9B,UAAU,CAAC,0BAA0B,CAAC,GACtC,UAAU,CAAC,0BAA0B,CAAC,GACtC,UAAU,CAAC,yBAAyB,CAAC,GACrC,UAAU,CAAC,iBAAiB,CAAC,GAC7B,UAAU,CAAC,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Union types that represent every supported fill variant.
3
+ *
4
+ * Two flavors exist for each fill:
5
+ * - **Prop** — the loose author-facing shape accepted by node props (e.g. CSS
6
+ * color strings, optional fields with sensible defaults).
7
+ * - **Resolved** — the strict internal shape used by the renderer after
8
+ * {@link FillRegistry.resolve} has normalised every field.
9
+ */
10
+ export {};
11
+ //# sourceMappingURL=union.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"union.js","sourceRoot":"","sources":["../../../../src/attributes/shape/fill/union.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}