framefields 2.0.3 → 2.0.6

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 (360) hide show
  1. package/README.md +4 -26
  2. package/dist/audio/index.d.mts +4 -4
  3. package/dist/audio/index.mjs +10 -10
  4. package/dist/{audio-DbxiKp5p.mjs → audio-D6enPyAG.mjs} +4 -4
  5. package/dist/{audio-DbxiKp5p.mjs.map → audio-D6enPyAG.mjs.map} +1 -1
  6. package/dist/{audio-Dvwwz8xU.d.mts → audio-a6pY05g2.d.mts} +3 -3
  7. package/dist/{audio-Dvwwz8xU.d.mts.map → audio-a6pY05g2.d.mts.map} +1 -1
  8. package/dist/{dist-Bx6J0VcM.mjs → dist-B9Afsv83.mjs} +47 -2
  9. package/dist/dist-B9Afsv83.mjs.map +1 -0
  10. package/dist/{dist-DKm2IyEJ.mjs → dist-DzUJmIHt.mjs} +2 -2
  11. package/dist/dist-DzUJmIHt.mjs.map +1 -0
  12. package/dist/{dist-CGIme1vZ.mjs → dist-JkiL-qy7.mjs} +60 -17
  13. package/dist/dist-JkiL-qy7.mjs.map +1 -0
  14. package/dist/{dist-DuIv211_.mjs → dist-sHqWCB9M.mjs} +215 -127
  15. package/dist/dist-sHqWCB9M.mjs.map +1 -0
  16. package/dist/effects/index.d.mts +5 -5
  17. package/dist/effects/index.mjs +25 -25
  18. package/dist/effects-l0T61DPU.mjs +2086 -0
  19. package/dist/effects-l0T61DPU.mjs.map +1 -0
  20. package/dist/fonts/index.d.mts +1 -1
  21. package/dist/fonts/index.mjs +1 -1
  22. package/dist/{fonts-CwwIhe1o.mjs → fonts-CuG-05-_.mjs} +13 -2
  23. package/dist/fonts-CuG-05-_.mjs.map +1 -0
  24. package/dist/{index-CnAk1hTw.d.mts → index-BJUS4Nx6.d.mts} +2 -2
  25. package/dist/index-BJUS4Nx6.d.mts.map +1 -0
  26. package/dist/{index-D7llSs-m.d.mts → index-BJx_Qxc_.d.mts} +2510 -125
  27. package/dist/{index-D7llSs-m.d.mts.map → index-BJx_Qxc_.d.mts.map} +1 -1
  28. package/dist/{index-D1ZsMpke.d.mts → index-BLbUQolI.d.mts} +3 -3
  29. package/dist/{index-D1ZsMpke.d.mts.map → index-BLbUQolI.d.mts.map} +1 -1
  30. package/dist/{index-D2wJqSl5.d.mts → index-Bi2nRZ_g.d.mts} +3 -3
  31. package/dist/{index-D2wJqSl5.d.mts.map → index-Bi2nRZ_g.d.mts.map} +1 -1
  32. package/dist/{index-BMVVmc4G.d.mts → index-CZChQhXZ.d.mts} +2 -2
  33. package/dist/index-CZChQhXZ.d.mts.map +1 -0
  34. package/dist/{index-DiSKzDGR.d.mts → index-CbzEM_o6.d.mts} +8 -1
  35. package/dist/index-CbzEM_o6.d.mts.map +1 -0
  36. package/dist/{index-D2jDC7O5.d.mts → index-WIPHLy5m.d.mts} +31 -2
  37. package/dist/index-WIPHLy5m.d.mts.map +1 -0
  38. package/dist/index.d.mts +111 -69
  39. package/dist/index.d.mts.map +1 -1
  40. package/dist/index.mjs +52 -45
  41. package/dist/index.mjs.map +1 -1
  42. package/dist/preview/index.d.mts +3 -3
  43. package/dist/preview/index.mjs +10 -10
  44. package/dist/{preview-D7TqF9i_.mjs → preview-CcooLR2s.mjs} +74 -66
  45. package/dist/preview-CcooLR2s.mjs.map +1 -0
  46. package/dist/preview-engine/audio.mjs +1 -1
  47. package/dist/preview-engine/{chunk-H5BPCY7N.mjs → chunk-24DXIKXL.mjs} +2 -2
  48. package/dist/preview-engine/{chunk-QP2NI4XD.mjs → chunk-2XXICKQV.mjs} +1 -1
  49. package/dist/preview-engine/{chunk-EDIZNO3P.mjs → chunk-3ROJ7JVY.mjs} +1 -1
  50. package/dist/preview-engine/chunk-45JOFIHE.mjs +8 -0
  51. package/dist/preview-engine/{chunk-HAXK42HG.mjs → chunk-5NYKHIQN.mjs} +10 -10
  52. package/dist/preview-engine/{chunk-VSSB73UU.mjs → chunk-66NVL4BN.mjs} +2 -2
  53. package/dist/preview-engine/{chunk-AOLAHYVV.mjs → chunk-6JW37VJA.mjs} +1 -1
  54. package/dist/preview-engine/chunk-7MJVROKR.mjs +98 -0
  55. package/dist/preview-engine/{chunk-Z4ERCLNF.mjs → chunk-7NVDTELW.mjs} +1 -1
  56. package/dist/preview-engine/{chunk-SXX7HX34.mjs → chunk-AMBSW6OA.mjs} +2 -2
  57. package/dist/preview-engine/{chunk-UDNCEHUI.mjs → chunk-BE3CEVJB.mjs} +1 -1
  58. package/dist/preview-engine/{chunk-CA5N7JRZ.mjs → chunk-BQ65MU6H.mjs} +1 -1
  59. package/dist/preview-engine/{chunk-LEEZXHQO.mjs → chunk-BWDARDO6.mjs} +1 -1
  60. package/dist/preview-engine/{chunk-ZX6APG6E.mjs → chunk-CXFEQ5PM.mjs} +1 -1
  61. package/dist/preview-engine/chunk-D3TETPLI.mjs +5 -0
  62. package/dist/preview-engine/{chunk-B6PLCMBM.mjs → chunk-DMWSTYFF.mjs} +1 -1
  63. package/dist/preview-engine/{chunk-6ZOXGAYA.mjs → chunk-EJTGJVUA.mjs} +2 -2
  64. package/dist/preview-engine/{chunk-3O5OKR6D.mjs → chunk-EQ4QZRXB.mjs} +2 -2
  65. package/dist/preview-engine/{chunk-I4FH6HYU.mjs → chunk-FE6RSVKZ.mjs} +1 -1
  66. package/dist/preview-engine/{chunk-U446SQP3.mjs → chunk-GHMCGTJ2.mjs} +1 -1
  67. package/dist/preview-engine/{chunk-M2GRYRLM.mjs → chunk-HPIULG7P.mjs} +1 -1
  68. package/dist/preview-engine/{chunk-G3HW4VER.mjs → chunk-HRIKNYPF.mjs} +1 -1
  69. package/dist/preview-engine/{chunk-G76HSKOS.mjs → chunk-IGFT3XLN.mjs} +1 -1
  70. package/dist/preview-engine/{chunk-NWRSVVTF.mjs → chunk-JQ4WY6BZ.mjs} +1 -1
  71. package/dist/preview-engine/chunk-KNZU3Z2F.mjs +3 -0
  72. package/dist/preview-engine/{chunk-JWNHTRED.mjs → chunk-LIHUEYI5.mjs} +2 -2
  73. package/dist/preview-engine/{chunk-DPPH3NK2.mjs → chunk-NRHSNPZV.mjs} +1 -1
  74. package/dist/preview-engine/{chunk-BUIQ5TUH.mjs → chunk-OWOSYNMF.mjs} +1 -1
  75. package/dist/preview-engine/chunk-OZVCWK27.mjs +418 -0
  76. package/dist/preview-engine/{chunk-D5PHI6ET.mjs → chunk-PO4VAAQC.mjs} +1 -1
  77. package/dist/preview-engine/{chunk-LP3EP33S.mjs → chunk-POPVFC5P.mjs} +1 -1
  78. package/dist/preview-engine/chunk-PQD5UPHG.mjs +5 -0
  79. package/dist/preview-engine/{chunk-SA3JUR6D.mjs → chunk-QGBSLNFI.mjs} +1 -1
  80. package/dist/preview-engine/{chunk-H2F5NVQ6.mjs → chunk-QM3XFEJN.mjs} +1 -1
  81. package/dist/preview-engine/{chunk-L62MRHGZ.mjs → chunk-R3ZH7YF3.mjs} +1 -1
  82. package/dist/preview-engine/{chunk-V7ZVVUQU.mjs → chunk-R6YNSBKL.mjs} +1 -1
  83. package/dist/preview-engine/{chunk-GYG2IIBR.mjs → chunk-RJJRPL42.mjs} +1 -1
  84. package/dist/preview-engine/chunk-S3P3MJYU.mjs +1 -0
  85. package/dist/preview-engine/chunk-SUUUYXXT.mjs +1 -0
  86. package/dist/preview-engine/{chunk-55CCFPUX.mjs → chunk-TNZENER3.mjs} +1 -1
  87. package/dist/preview-engine/chunk-V6VU46ZG.mjs +52 -0
  88. package/dist/preview-engine/{chunk-5XDHHOF2.mjs → chunk-XCYFPA34.mjs} +1 -1
  89. package/dist/preview-engine/{chunk-EHIIT4ZR.mjs → chunk-XFYXT76H.mjs} +1 -1
  90. package/dist/preview-engine/{chunk-V3H7WWOT.mjs → chunk-XLFYM7KH.mjs} +2 -2
  91. package/dist/preview-engine/{chunk-D7MZHP2Y.mjs → chunk-XSMK5E2V.mjs} +1 -1
  92. package/dist/preview-engine/{chunk-5UP7FSGT.mjs → chunk-Y6FEU4TV.mjs} +1 -1
  93. package/dist/preview-engine/{chunk-HXMDPMLB.mjs → chunk-YG35X5R5.mjs} +1 -1
  94. package/dist/preview-engine/{chunk-KZOLCZIV.mjs → chunk-YITWSOG4.mjs} +1 -1
  95. package/dist/preview-engine/{chunk-4BEJJKEU.mjs → chunk-YK4XHUP4.mjs} +7 -7
  96. package/dist/preview-engine/chunk-ZNGOAGAI.mjs +1 -0
  97. package/dist/preview-engine/effects.mjs +1 -1
  98. package/dist/preview-engine/fonts.mjs +1 -1
  99. package/dist/preview-engine/framefields.mjs +95 -87
  100. package/dist/preview-engine/player.mjs +5 -5
  101. package/dist/preview-engine/renderers-3Y3EMRDJ.mjs +1 -0
  102. package/dist/preview-engine/renderers-47UITXLZ.mjs +1 -0
  103. package/dist/preview-engine/renderers-4AHH6BHF.mjs +1 -0
  104. package/dist/preview-engine/renderers-54AQK6RF.mjs +1 -0
  105. package/dist/preview-engine/renderers-6PRVCTYV.mjs +1 -0
  106. package/dist/preview-engine/{renderers-GUKQUMGG.mjs → renderers-B52QT6MT.mjs} +1 -1
  107. package/dist/preview-engine/{renderers-AGMH5CRH.mjs → renderers-BE6RVJSE.mjs} +1 -1
  108. package/dist/preview-engine/renderers-BMM2BH56.mjs +1 -0
  109. package/dist/preview-engine/{renderers-YWRP23SZ.mjs → renderers-CAUWP4XH.mjs} +2 -2
  110. package/dist/preview-engine/renderers-CHJWUJVI.mjs +1 -0
  111. package/dist/preview-engine/renderers-CHOGQHVQ.mjs +1 -0
  112. package/dist/preview-engine/renderers-DEYDSGJX.mjs +1 -0
  113. package/dist/preview-engine/renderers-DZTNRCR7.mjs +1 -0
  114. package/dist/preview-engine/{renderers-BHVPLYNN.mjs → renderers-E3JYRLSD.mjs} +1 -1
  115. package/dist/preview-engine/renderers-ELO3KWTK.mjs +1 -0
  116. package/dist/preview-engine/{renderers-YKUQUCTO.mjs → renderers-F2KJNDWA.mjs} +1 -1
  117. package/dist/preview-engine/renderers-FCV4COVB.mjs +1 -0
  118. package/dist/preview-engine/{renderers-F2NFJI5L.mjs → renderers-GC7EGB5Z.mjs} +1 -1
  119. package/dist/preview-engine/renderers-GXCRINGC.mjs +1 -0
  120. package/dist/preview-engine/renderers-GYJTBVV2.mjs +1 -0
  121. package/dist/preview-engine/renderers-JA4SLMG3.mjs +1 -0
  122. package/dist/preview-engine/renderers-JLN77CFZ.mjs +1 -0
  123. package/dist/preview-engine/{renderers-6BJA6MSU.mjs → renderers-JQHUBWLL.mjs} +1 -1
  124. package/dist/preview-engine/{renderers-LX654SZ3.mjs → renderers-KBFW7B5F.mjs} +1 -1
  125. package/dist/preview-engine/{renderers-LK3NRMGR.mjs → renderers-KCP4TFHG.mjs} +1 -1
  126. package/dist/preview-engine/renderers-KS4HPV6Q.mjs +1 -0
  127. package/dist/preview-engine/renderers-LJRJMFCR.mjs +1 -0
  128. package/dist/preview-engine/renderers-LPAPZ5QS.mjs +1 -0
  129. package/dist/preview-engine/renderers-N5UPJY73.mjs +1 -0
  130. package/dist/preview-engine/renderers-NS3AIJVG.mjs +1 -0
  131. package/dist/preview-engine/renderers-OBMTU3QY.mjs +1 -0
  132. package/dist/preview-engine/{renderers-ZPWOUWZJ.mjs → renderers-PW4OJWHF.mjs} +1 -1
  133. package/dist/preview-engine/renderers-PXGLEFZO.mjs +1 -0
  134. package/dist/preview-engine/{renderers-7AO5746S.mjs → renderers-Q2ZDD5K2.mjs} +1 -1
  135. package/dist/preview-engine/renderers-Q3MD34JN.mjs +1 -0
  136. package/dist/preview-engine/renderers-QECJP22T.mjs +1 -0
  137. package/dist/preview-engine/{renderers-R3XEYD5V.mjs → renderers-R5WSHETG.mjs} +4 -4
  138. package/dist/preview-engine/renderers-RXGNA2Q7.mjs +1 -0
  139. package/dist/preview-engine/renderers-TG62LZTF.mjs +1 -0
  140. package/dist/preview-engine/{renderers-AHSGP6LY.mjs → renderers-TUYQLKHJ.mjs} +1 -1
  141. package/dist/preview-engine/renderers-VTTGFO55.mjs +1 -0
  142. package/dist/preview-engine/{renderers-UTFXZE3G.mjs → renderers-WG7QBD4D.mjs} +1 -1
  143. package/dist/preview-engine/{renderers-VGU3LNLT.mjs → renderers-WLH4HRUE.mjs} +1 -1
  144. package/dist/preview-engine/{renderers-5QYK6766.mjs → renderers-WSMLLSWX.mjs} +1 -1
  145. package/dist/preview-engine/renderers-XFC6ZPO5.mjs +1 -0
  146. package/dist/preview-engine/{renderers-UWPH7HBH.mjs → renderers-XUHRY3XH.mjs} +1 -1
  147. package/dist/preview-engine/renderers-YAOB5XU6.mjs +1 -0
  148. package/dist/preview-engine/renderers-YTB4FOHT.mjs +1 -0
  149. package/dist/preview-engine/signals.mjs +1 -1
  150. package/dist/{program-Cjva0Nw2.mjs → program-DPFDbeL9.mjs} +12 -7
  151. package/dist/{program-Cjva0Nw2.mjs.map → program-DPFDbeL9.mjs.map} +1 -1
  152. package/dist/renderer/index.d.mts +2 -2
  153. package/dist/renderer/index.mjs +2 -2
  154. package/dist/{renderer-DG3VnR50.mjs → renderer--akPySto.mjs} +2 -2
  155. package/dist/{renderer-DG3VnR50.mjs.map → renderer--akPySto.mjs.map} +1 -1
  156. package/dist/{renderer-B8ugHLDi.mjs → renderer-0ty5QtXg.mjs} +9 -8
  157. package/dist/renderer-0ty5QtXg.mjs.map +1 -0
  158. package/dist/renderer-145WIXyW.mjs +3 -0
  159. package/dist/{renderer-DjYRCzzV.mjs → renderer-7v-ZNKEJ.mjs} +2 -2
  160. package/dist/{renderer-DjYRCzzV.mjs.map → renderer-7v-ZNKEJ.mjs.map} +1 -1
  161. package/dist/renderer-9W8q4Y8D.mjs +3 -0
  162. package/dist/{renderer-8dDNjgzG.mjs → renderer-B1IXTeF2.mjs} +2 -2
  163. package/dist/{renderer-8dDNjgzG.mjs.map → renderer-B1IXTeF2.mjs.map} +1 -1
  164. package/dist/{renderer-CBdqOoTN.mjs → renderer-B52Y2SDC.mjs} +1 -1
  165. package/dist/renderer-B5HBViEG.mjs +3 -0
  166. package/dist/renderer-B7naoaVH.mjs +3 -0
  167. package/dist/{renderer-z6Qb5Z-W.mjs → renderer-BD6Jkc8j.mjs} +2 -2
  168. package/dist/{renderer-z6Qb5Z-W.mjs.map → renderer-BD6Jkc8j.mjs.map} +1 -1
  169. package/dist/renderer-BHYmRBem.mjs +3 -0
  170. package/dist/{renderer-Daa-Af8y.mjs → renderer-BHsEOp1I.mjs} +2 -2
  171. package/dist/{renderer-Daa-Af8y.mjs.map → renderer-BHsEOp1I.mjs.map} +1 -1
  172. package/dist/renderer-BL51bhvQ.mjs +3 -0
  173. package/dist/{renderer-9ZcinEHr.mjs → renderer-BNBh4omF.mjs} +2 -2
  174. package/dist/{renderer-9ZcinEHr.mjs.map → renderer-BNBh4omF.mjs.map} +1 -1
  175. package/dist/{renderer-Bmt3fpzg.mjs → renderer-BShK_xMJ.mjs} +1 -1
  176. package/dist/{renderer-aH8p3zLE.mjs → renderer-BUJ6uaJE.mjs} +3 -3
  177. package/dist/{renderer-aH8p3zLE.mjs.map → renderer-BUJ6uaJE.mjs.map} +1 -1
  178. package/dist/{renderer-BXDrwZNT.mjs → renderer-BV_d3D_3.mjs} +3 -3
  179. package/dist/{renderer-BXDrwZNT.mjs.map → renderer-BV_d3D_3.mjs.map} +1 -1
  180. package/dist/{renderer-B5Tq5MWB.mjs → renderer-BXWu8aHU.mjs} +3 -3
  181. package/dist/{renderer-B5Tq5MWB.mjs.map → renderer-BXWu8aHU.mjs.map} +1 -1
  182. package/dist/{renderer-DDp7_TUi.d.mts → renderer-Bal8734U.d.mts} +2 -2
  183. package/dist/{renderer-DDp7_TUi.d.mts.map → renderer-Bal8734U.d.mts.map} +1 -1
  184. package/dist/{renderer-BwE5dnyL.mjs → renderer-BbwOEawB.mjs} +2 -2
  185. package/dist/{renderer-BwE5dnyL.mjs.map → renderer-BbwOEawB.mjs.map} +1 -1
  186. package/dist/renderer-BfvBHHNr.mjs +3 -0
  187. package/dist/{renderer-BcckaXum.mjs → renderer-BgrDGRNW.mjs} +2 -2
  188. package/dist/{renderer-BcckaXum.mjs.map → renderer-BgrDGRNW.mjs.map} +1 -1
  189. package/dist/{renderer-CkLD7Lp7.mjs → renderer-BhfFVqCx.mjs} +2 -2
  190. package/dist/{renderer-CkLD7Lp7.mjs.map → renderer-BhfFVqCx.mjs.map} +1 -1
  191. package/dist/{renderer-Y7-Us00q.mjs → renderer-Bl9C9lIo.mjs} +1 -1
  192. package/dist/{renderer-CuppzplW.mjs → renderer-BpTwFaja.mjs} +3 -3
  193. package/dist/{renderer-CuppzplW.mjs.map → renderer-BpTwFaja.mjs.map} +1 -1
  194. package/dist/{renderer-BBweieq9.mjs → renderer-Bpf8EGY1.mjs} +2 -2
  195. package/dist/{renderer-BBweieq9.mjs.map → renderer-Bpf8EGY1.mjs.map} +1 -1
  196. package/dist/renderer-ByxrzTRg.mjs +3 -0
  197. package/dist/{renderer-1ccLpvz3.mjs → renderer-C-F91lPu.mjs} +2 -2
  198. package/dist/{renderer-1ccLpvz3.mjs.map → renderer-C-F91lPu.mjs.map} +1 -1
  199. package/dist/{renderer-CeF66MG3.mjs → renderer-C5lJvf-h.mjs} +2 -2
  200. package/dist/{renderer-CeF66MG3.mjs.map → renderer-C5lJvf-h.mjs.map} +1 -1
  201. package/dist/renderer-CDirzReW.mjs +3 -0
  202. package/dist/renderer-CGCmbeJ2.mjs +3 -0
  203. package/dist/renderer-CL3evUmF.mjs +3 -0
  204. package/dist/{renderer-NYcVjCOi.mjs → renderer-CLUPc9do.mjs} +3 -3
  205. package/dist/{renderer-NYcVjCOi.mjs.map → renderer-CLUPc9do.mjs.map} +1 -1
  206. package/dist/{renderer-B6YiOv7l.mjs → renderer-CLWAbaCS.mjs} +9 -8
  207. package/dist/renderer-CLWAbaCS.mjs.map +1 -0
  208. package/dist/{renderer-DWvg6ZKK.mjs → renderer-CM5c8a7B.mjs} +8 -7
  209. package/dist/renderer-CM5c8a7B.mjs.map +1 -0
  210. package/dist/renderer-CO0KsnEg.mjs +3 -0
  211. package/dist/renderer-COO44HDO.mjs +3 -0
  212. package/dist/renderer-C_9SIgZX.mjs +3 -0
  213. package/dist/{renderer-B0DTz9Fr.mjs → renderer-Cgy1H0Ql.mjs} +2 -2
  214. package/dist/{renderer-B0DTz9Fr.mjs.map → renderer-Cgy1H0Ql.mjs.map} +1 -1
  215. package/dist/{renderer-D9lcIxrz.mjs → renderer-CmMNU1-P.mjs} +9 -9
  216. package/dist/renderer-CmMNU1-P.mjs.map +1 -0
  217. package/dist/{renderer-VHpQTPbr.mjs → renderer-Cn-p1SyO.mjs} +34 -18
  218. package/dist/renderer-Cn-p1SyO.mjs.map +1 -0
  219. package/dist/renderer-CntaTaNq.mjs +3 -0
  220. package/dist/{renderer-BusX07ZE.mjs → renderer-CsE9ztUa.mjs} +3 -3
  221. package/dist/{renderer-BusX07ZE.mjs.map → renderer-CsE9ztUa.mjs.map} +1 -1
  222. package/dist/renderer-CtVkU_GA.mjs.map +1 -1
  223. package/dist/renderer-Cv9JLpL6.mjs +3 -0
  224. package/dist/{renderer-x2s9LmVL.mjs → renderer-D-4Yh-RK.mjs} +2 -2
  225. package/dist/{renderer-x2s9LmVL.mjs.map → renderer-D-4Yh-RK.mjs.map} +1 -1
  226. package/dist/renderer-D0FWIsWn.mjs +3 -0
  227. package/dist/{renderer-CxE-8m71.mjs → renderer-D3FsnptO.mjs} +1 -1
  228. package/dist/renderer-D3jUYUDU.mjs +3 -0
  229. package/dist/renderer-D5Je-AeQ.mjs +3 -0
  230. package/dist/{renderer-DQQnEcSA.mjs → renderer-DJPuwTbS.mjs} +10 -8
  231. package/dist/renderer-DJPuwTbS.mjs.map +1 -0
  232. package/dist/{renderer-vnHsTpQf.mjs → renderer-DM79djHG.mjs} +58 -88
  233. package/dist/{renderer-vnHsTpQf.mjs.map → renderer-DM79djHG.mjs.map} +1 -1
  234. package/dist/renderer-DNPwpmYS.mjs +3 -0
  235. package/dist/{renderer-Bh1pfpzz.mjs → renderer-DRf4FLSq.mjs} +10 -9
  236. package/dist/renderer-DRf4FLSq.mjs.map +1 -0
  237. package/dist/{renderer-CcDfRa1o.mjs → renderer-DVj8jfmO.mjs} +9 -8
  238. package/dist/renderer-DVj8jfmO.mjs.map +1 -0
  239. package/dist/renderer-DawVsNLw.mjs +3 -0
  240. package/dist/renderer-Dl_6Kn87.mjs +3 -0
  241. package/dist/renderer-DlrJSfaw.mjs +3 -0
  242. package/dist/{renderer-Dm0r9IBd.mjs → renderer-DnXQXk-8.mjs} +2 -2
  243. package/dist/{renderer-Dm0r9IBd.mjs.map → renderer-DnXQXk-8.mjs.map} +1 -1
  244. package/dist/{renderer-s_HENMCc.mjs → renderer-Dntxca07.mjs} +2 -2
  245. package/dist/{renderer-s_HENMCc.mjs.map → renderer-Dntxca07.mjs.map} +1 -1
  246. package/dist/renderer-DpScOWGG.mjs +4 -0
  247. package/dist/{renderer-CXO4wWOT.mjs → renderer-DvHpzsUV.mjs} +2 -2
  248. package/dist/{renderer-CXO4wWOT.mjs.map → renderer-DvHpzsUV.mjs.map} +1 -1
  249. package/dist/renderer-DxYOA1MM.mjs +3 -0
  250. package/dist/{renderer-BgAzIw8w.mjs → renderer-E5D4H5dK.mjs} +3 -3
  251. package/dist/{renderer-BgAzIw8w.mjs.map → renderer-E5D4H5dK.mjs.map} +1 -1
  252. package/dist/{renderer-DFA0KBdj.mjs → renderer-L72D1mwv.mjs} +3 -3
  253. package/dist/{renderer-DFA0KBdj.mjs.map → renderer-L72D1mwv.mjs.map} +1 -1
  254. package/dist/renderer-S7jOr_jF.mjs +3 -0
  255. package/dist/{renderer-BQgAn_oc.mjs → renderer-XRGwrdg8.mjs} +5 -5
  256. package/dist/renderer-XRGwrdg8.mjs.map +1 -0
  257. package/dist/{renderer-DVSagfD4.mjs → renderer-doPt4zQZ.mjs} +2 -2
  258. package/dist/{renderer-DVSagfD4.mjs.map → renderer-doPt4zQZ.mjs.map} +1 -1
  259. package/dist/{renderer-Dm08-hAU.mjs → renderer-h-HOoLwD.mjs} +2 -2
  260. package/dist/{renderer-Dm08-hAU.mjs.map → renderer-h-HOoLwD.mjs.map} +1 -1
  261. package/dist/renderer-kN2TeWks.mjs +3 -0
  262. package/dist/{renderers-BWg16W-V-FofeEqQL.mjs → renderers-CP8CFWDs-CAs5DgWj.mjs} +16 -13
  263. package/dist/renderers-CP8CFWDs-CAs5DgWj.mjs.map +1 -0
  264. package/dist/signals/index.d.mts +5 -5
  265. package/dist/signals/index.mjs +6 -6
  266. package/dist/{signals-BwbdO3AN.mjs → signals-CsxqD2AA.mjs} +3 -3
  267. package/dist/{signals-BwbdO3AN.mjs.map → signals-CsxqD2AA.mjs.map} +1 -1
  268. package/package.json +55 -55
  269. package/dist/dist-Bx6J0VcM.mjs.map +0 -1
  270. package/dist/dist-CGIme1vZ.mjs.map +0 -1
  271. package/dist/dist-DKm2IyEJ.mjs.map +0 -1
  272. package/dist/dist-DuIv211_.mjs.map +0 -1
  273. package/dist/effects-B_APkGJJ.mjs +0 -811
  274. package/dist/effects-B_APkGJJ.mjs.map +0 -1
  275. package/dist/fonts-CwwIhe1o.mjs.map +0 -1
  276. package/dist/index-BMVVmc4G.d.mts.map +0 -1
  277. package/dist/index-CnAk1hTw.d.mts.map +0 -1
  278. package/dist/index-D2jDC7O5.d.mts.map +0 -1
  279. package/dist/index-DiSKzDGR.d.mts.map +0 -1
  280. package/dist/preview-D7TqF9i_.mjs.map +0 -1
  281. package/dist/preview-engine/chunk-47VT677S.mjs +0 -8
  282. package/dist/preview-engine/chunk-4Q7JG6WJ.mjs +0 -1
  283. package/dist/preview-engine/chunk-CVGM2U4J.mjs +0 -47
  284. package/dist/preview-engine/chunk-N4PWLBZ7.mjs +0 -5
  285. package/dist/preview-engine/chunk-P3HBP725.mjs +0 -1
  286. package/dist/preview-engine/chunk-PCB2VB5K.mjs +0 -98
  287. package/dist/preview-engine/chunk-QARN3FLA.mjs +0 -418
  288. package/dist/preview-engine/chunk-SZ7YRPKO.mjs +0 -3
  289. package/dist/preview-engine/chunk-TMRLZV5X.mjs +0 -1
  290. package/dist/preview-engine/chunk-XD4GKD6H.mjs +0 -5
  291. package/dist/preview-engine/chunk-YSTLMWCG.mjs +0 -1
  292. package/dist/preview-engine/renderers-2AUSIYZN.mjs +0 -1
  293. package/dist/preview-engine/renderers-2QN6KZJP.mjs +0 -1
  294. package/dist/preview-engine/renderers-32SKW7ML.mjs +0 -1
  295. package/dist/preview-engine/renderers-6QAF3LQ2.mjs +0 -1
  296. package/dist/preview-engine/renderers-76MPTVZK.mjs +0 -1
  297. package/dist/preview-engine/renderers-AFYKNM6N.mjs +0 -1
  298. package/dist/preview-engine/renderers-ASTBICLA.mjs +0 -1
  299. package/dist/preview-engine/renderers-D7PVQFVU.mjs +0 -1
  300. package/dist/preview-engine/renderers-DB4ABTNA.mjs +0 -1
  301. package/dist/preview-engine/renderers-FI7YHNLY.mjs +0 -1
  302. package/dist/preview-engine/renderers-GBHULMPH.mjs +0 -1
  303. package/dist/preview-engine/renderers-HGT7QDY3.mjs +0 -1
  304. package/dist/preview-engine/renderers-HOYLA7ZK.mjs +0 -1
  305. package/dist/preview-engine/renderers-KKI2D3MZ.mjs +0 -1
  306. package/dist/preview-engine/renderers-KRAJNV4E.mjs +0 -1
  307. package/dist/preview-engine/renderers-KUGZKSVE.mjs +0 -1
  308. package/dist/preview-engine/renderers-L2EQQIOC.mjs +0 -1
  309. package/dist/preview-engine/renderers-MCFQFYEL.mjs +0 -1
  310. package/dist/preview-engine/renderers-OEVXCGE2.mjs +0 -1
  311. package/dist/preview-engine/renderers-QVD6C4CS.mjs +0 -1
  312. package/dist/preview-engine/renderers-RBFWJWVM.mjs +0 -1
  313. package/dist/preview-engine/renderers-RX3VLVLO.mjs +0 -1
  314. package/dist/preview-engine/renderers-SM6JP64K.mjs +0 -1
  315. package/dist/preview-engine/renderers-TKMAATVS.mjs +0 -1
  316. package/dist/preview-engine/renderers-UZGECFVO.mjs +0 -1
  317. package/dist/preview-engine/renderers-WJUTT5BB.mjs +0 -1
  318. package/dist/preview-engine/renderers-XA2M4YXK.mjs +0 -1
  319. package/dist/preview-engine/renderers-XIHRFEFQ.mjs +0 -1
  320. package/dist/preview-engine/renderers-XJTA5MFG.mjs +0 -1
  321. package/dist/preview-engine/renderers-XLTY5APF.mjs +0 -1
  322. package/dist/preview-engine/renderers-XZ3VXFGZ.mjs +0 -1
  323. package/dist/renderer-0kXgErRZ.mjs +0 -3
  324. package/dist/renderer-B6YiOv7l.mjs.map +0 -1
  325. package/dist/renderer-B8ugHLDi.mjs.map +0 -1
  326. package/dist/renderer-B9e4XyZy.mjs +0 -3
  327. package/dist/renderer-BBhCaxS2.mjs +0 -3
  328. package/dist/renderer-BC0iMueW.mjs +0 -3
  329. package/dist/renderer-BGd1VV9J.mjs +0 -3
  330. package/dist/renderer-BJKbasW6.mjs +0 -3
  331. package/dist/renderer-BQgAn_oc.mjs.map +0 -1
  332. package/dist/renderer-BV3mlZMX.mjs +0 -3
  333. package/dist/renderer-BgO4XWZz.mjs +0 -3
  334. package/dist/renderer-Bh1pfpzz.mjs.map +0 -1
  335. package/dist/renderer-Bk842iGl.mjs +0 -4
  336. package/dist/renderer-Bn7jX6n3.mjs +0 -3
  337. package/dist/renderer-CPKOjnkT.mjs +0 -3
  338. package/dist/renderer-CSgVUPHu.mjs +0 -3
  339. package/dist/renderer-CUr66blo.mjs +0 -3
  340. package/dist/renderer-CYC-j_8W.mjs +0 -3
  341. package/dist/renderer-CcDfRa1o.mjs.map +0 -1
  342. package/dist/renderer-Cy7k7eN9.mjs +0 -3
  343. package/dist/renderer-D3poaM-T.mjs +0 -3
  344. package/dist/renderer-D69vFGNB.mjs +0 -3
  345. package/dist/renderer-D9lcIxrz.mjs.map +0 -1
  346. package/dist/renderer-DPSsf8-t.mjs +0 -3
  347. package/dist/renderer-DQQnEcSA.mjs.map +0 -1
  348. package/dist/renderer-DWvg6ZKK.mjs.map +0 -1
  349. package/dist/renderer-DiXzb5FQ.mjs +0 -3
  350. package/dist/renderer-DkKjy-Q0.mjs +0 -3
  351. package/dist/renderer-DlxCfGuA.mjs +0 -3
  352. package/dist/renderer-DnUe5mD1.mjs +0 -3
  353. package/dist/renderer-DwtLqidh.mjs +0 -3
  354. package/dist/renderer-VHpQTPbr.mjs.map +0 -1
  355. package/dist/renderer-WaLyCr37.mjs +0 -3
  356. package/dist/renderer-rrz9Fhwo.mjs +0 -3
  357. package/dist/renderer-ssnm_dWv.mjs +0 -3
  358. package/dist/renderer-xc9wkiC7.mjs +0 -3
  359. package/dist/renderers-BWg16W-V-FofeEqQL.mjs.map +0 -1
  360. /package/dist/preview-engine/{chunk-VJGK7MLJ.mjs → chunk-CBM7B7EW.mjs} +0 -0
@@ -1,8 +1,8 @@
1
1
  import { a as __toCommonJS, i as __require, o as __toESM, t as __commonJSMin } from "./chunk-GMkBE123.mjs";
2
- import { Bt as takeRenderDiagnostics, Ht as updateClockSignals, wt as getMediaType } from "./dist-Bx6J0VcM.mjs";
2
+ import { Kt as updateClockSignals, Wt as takeRenderDiagnostics, wt as getMediaType } from "./dist-B9Afsv83.mjs";
3
3
  import { r as registerWebGPURenderer, t as audioRegistry } from "./renderer-CtVkU_GA.mjs";
4
- import { B as inputStore, C as WebGPUAudioProcessor, F as ensureDevice, G as lutStore, L as getHeadlessFontPath, R as getRenderer2D, T as clearAllVideoCache, at as R2_CUSTOM_DOMAIN, d as NodeSurfaceProvider, et as shaderStore, it as GetFontAssetUrl, q as mediaDecoderCache, rt as textureCache, y as SlugFontCache, z as initHeadlessWebGPU } from "./dist-DuIv211_.mjs";
5
- import { i as mixAudioTracks, r as drawCompositionTree, t as compositionStateStore, y as preloadFont } from "./dist-CGIme1vZ.mjs";
4
+ import { B as inputStore, C as WebGPUAudioProcessor, F as ensureDevice, G as lutStore, R as getRenderer2D, T as clearAllVideoCache, d as NodeSurfaceProvider, et as shaderStore, q as mediaDecoderCache, rt as textureCache, y as SlugFontCache, z as initHeadlessWebGPU } from "./dist-sHqWCB9M.mjs";
5
+ import { i as mixAudioTracks, r as drawCompositionTree, t as compositionStateStore, y as preloadCompositionFonts } from "./dist-JkiL-qy7.mjs";
6
6
  import { t as require_dist_cjs$20 } from "./dist-cjs-BUwe2XhR.mjs";
7
7
  import { D as require_dist_cjs$21, O as dist_es_exports$1, _ as require_dist_cjs$33, a as require_dist_cjs$26, b as init_protocols, c as require_dist_cjs$37, d as require_dist_cjs$32, f as require_dist_cjs$23, g as require_dist_cjs$34, h as require_dist_cjs$35, i as require_dist_cjs$28, k as init_dist_es$1, l as require_dist_cjs$27, m as require_dist_cjs$22, n as require_dist_cjs$31, o as require_dist_cjs$29, p as require_dist_cjs$24, r as require_dist_cjs$30, s as require_dist_cjs$25, t as require_dist_cjs$38, u as require_dist_cjs$36, v as dist_es_exports, x as protocols_exports, y as init_dist_es } from "./dist-cjs-BKmGCgtm.mjs";
8
8
  import { F as require_dist_cjs$42, I as require_dist_cjs$44, P as require_dist_cjs$39, R as require_dist_cjs$43, T as schema_exports, t as require_dist_cjs$41, v as init_tslib_es6, w as init_schema, y as tslib_es6_exports, z as require_dist_cjs$40 } from "./dist-cjs-DsMdld8l.mjs";
@@ -21593,7 +21593,7 @@ const envSchema = z$1.object({
21593
21593
  * App version read from the monorepo root package.json.
21594
21594
  * Used for version-aware render fingerprinting.
21595
21595
  */
21596
- const APP_VERSION = "2.0.3";
21596
+ const APP_VERSION = "2.0.6";
21597
21597
  let loggerContext = {
21598
21598
  getStore: () => void 0,
21599
21599
  run: (_store, callback, ...args) => callback(...args)
@@ -21749,52 +21749,16 @@ S3StorageService = __decorate([
21749
21749
  ], S3StorageService);
21750
21750
 
21751
21751
  //#endregion
21752
- //#region ../renderer/dist/bootstrap-mediabunny-DmJWs7fU.mjs
21752
+ //#region ../renderer/dist/bootstrap-mediabunny-DIMlnLDP.mjs
21753
21753
  /**
21754
- * Recursively scans and preloads only the required font assets inside a VirtualMediaData tree.
21755
- * This ensures typography renders correctly on Node.js without pre-loading or memory bloating from large media assets.
21754
+ * Preloads only the fonts (and emoji) a VirtualMediaData tree's text uses, so
21755
+ * typography renders correctly on Node.js without loading its media. Shared
21756
+ * with the browser preview; emoji need a font set with
21757
+ * `FontManager.registerEmojiFont()`.
21756
21758
  */
21757
21759
  async function preloadFonts(media, device = null) {
21758
21760
  if (!media) return;
21759
- const promises = [];
21760
- const op = media.operation;
21761
- if (R2_CUSTOM_DOMAIN) SlugFontCache.emojiFontUrl = `https://${R2_CUSTOM_DOMAIN}/static/NotoColorEmoji.ttf`;
21762
- if (!SlugFontCache.emojiFontPath) try {
21763
- const isDev = import.meta.url.endsWith(".ts");
21764
- const emojiLocalUrl = new URL(isDev ? "./assets/NotoColorEmoji.ttf" : "../src/assets/NotoColorEmoji.ttf", import.meta.url).href;
21765
- let fontPath = emojiLocalUrl;
21766
- if (emojiLocalUrl.startsWith("file://")) try {
21767
- fontPath = new URL(emojiLocalUrl).pathname;
21768
- } catch {
21769
- fontPath = emojiLocalUrl.replace(/^file:\/\//, "");
21770
- }
21771
- SlugFontCache.emojiFontPath = fontPath;
21772
- } catch {}
21773
- if (op) {
21774
- const opText = op;
21775
- const isTextNode = opText.op === "text" || opText.kind === "text" || opText.op === "caption" || opText.kind === "caption" || typeof opText.text === "string";
21776
- const fontFamily = opText.fontFamily || (isTextNode ? "Inter" : void 0);
21777
- if (fontFamily) {
21778
- const fontUrl = getHeadlessFontPath(fontFamily) ?? GetFontAssetUrl(fontFamily);
21779
- promises.push(preloadFont(fontFamily, fontUrl).catch((err) => {
21780
- rendererLogger.error(err, `[HeadlessMediaRenderer] Failed to preload font "${fontFamily}" from ${fontUrl}`);
21781
- }));
21782
- if (device) promises.push(SlugFontCache.preloadSlugFont(device, fontFamily, fontUrl).catch((err) => {
21783
- rendererLogger.error(err, `[HeadlessMediaRenderer] Failed to preload Slug font "${fontFamily}" from ${fontUrl}`);
21784
- }));
21785
- }
21786
- if (opText.op === "text" && opText.text && device) {
21787
- const matches = opText.text.match(/\p{Extended_Pictographic}/gu);
21788
- if (matches) {
21789
- const fontSize = opText.fontSize ?? 48;
21790
- for (const char of matches) promises.push(SlugFontCache.preloadEmoji(device, char, fontSize).catch((err) => {
21791
- rendererLogger.error(err, `[HeadlessMediaRenderer] Failed to preload emoji texture for "${char}"`);
21792
- }));
21793
- }
21794
- }
21795
- }
21796
- if (media.children && media.children.length > 0) for (const child of media.children) promises.push(preloadFonts(child, device));
21797
- await Promise.all(promises);
21761
+ await preloadCompositionFonts(media, device, (err, what) => rendererLogger.error(err, `[HeadlessMediaRenderer] Failed to preload ${what}`));
21798
21762
  }
21799
21763
  /**
21800
21764
  * Pipelined Asynchronous DMA Staging Ring for WebGPU.
@@ -22004,52 +21968,52 @@ const BUILTIN_NODE_RENDERERS = [
22004
21968
  {
22005
21969
  packageName: "@framefields/node-lut",
22006
21970
  ops: ["ApplyLUT"],
22007
- load: () => import("./renderer-CPKOjnkT.mjs")
21971
+ load: () => import("./renderer-Dl_6Kn87.mjs")
22008
21972
  },
22009
21973
  {
22010
21974
  packageName: "@framefields/node-audio-compressor",
22011
21975
  ops: ["AudioCompressor"],
22012
- load: () => import("./renderer-BV3mlZMX.mjs")
21976
+ load: () => import("./renderer-CGCmbeJ2.mjs")
22013
21977
  },
22014
21978
  {
22015
21979
  packageName: "@framefields/node-audio-delay",
22016
21980
  ops: ["AudioDelay"],
22017
- load: () => import("./renderer-Cy7k7eN9.mjs")
21981
+ load: () => import("./renderer-BHYmRBem.mjs")
22018
21982
  },
22019
21983
  {
22020
21984
  packageName: "@framefields/node-audio-fade",
22021
21985
  ops: ["AudioFade"],
22022
- load: () => import("./renderer-CUr66blo.mjs")
21986
+ load: () => import("./renderer-S7jOr_jF.mjs")
22023
21987
  },
22024
21988
  {
22025
21989
  packageName: "@framefields/node-audio-noise-gate",
22026
21990
  ops: ["AudioNoiseGate"],
22027
- load: () => import("./renderer-D69vFGNB.mjs")
21991
+ load: () => import("./renderer-9W8q4Y8D.mjs")
22028
21992
  },
22029
21993
  {
22030
21994
  packageName: "@framefields/node-audio-parametric-eq",
22031
21995
  ops: ["AudioParametricEq"],
22032
- load: () => import("./renderer-CSgVUPHu.mjs")
21996
+ load: () => import("./renderer-DxYOA1MM.mjs")
22033
21997
  },
22034
21998
  {
22035
21999
  packageName: "@framefields/node-audio-reverb",
22036
22000
  ops: ["AudioReverb"],
22037
- load: () => import("./renderer-DlxCfGuA.mjs")
22001
+ load: () => import("./renderer-B7naoaVH.mjs")
22038
22002
  },
22039
22003
  {
22040
22004
  packageName: "@framefields/node-audio-signal-extractor",
22041
22005
  ops: ["AudioSignalExtractor"],
22042
- load: () => import("./renderer-Bk842iGl.mjs")
22006
+ load: () => import("./renderer-DpScOWGG.mjs")
22043
22007
  },
22044
22008
  {
22045
22009
  packageName: "@framefields/node-blur",
22046
22010
  ops: ["Blur"],
22047
- load: () => import("./renderer-ssnm_dWv.mjs")
22011
+ load: () => import("./renderer-DawVsNLw.mjs")
22048
22012
  },
22049
22013
  {
22050
22014
  packageName: "@framefields/node-camera-parallax-3d",
22051
22015
  ops: ["CameraParallax3D"],
22052
- load: () => import("./renderer-Dm0r9IBd.mjs")
22016
+ load: () => import("./renderer-DnXQXk-8.mjs")
22053
22017
  },
22054
22018
  {
22055
22019
  packageName: "@framefields/node-canvas-generator",
@@ -22069,17 +22033,17 @@ const BUILTIN_NODE_RENDERERS = [
22069
22033
  {
22070
22034
  packageName: "@framefields/node-color-balance",
22071
22035
  ops: ["ColorBalance"],
22072
- load: () => import("./renderer-Bmt3fpzg.mjs")
22036
+ load: () => import("./renderer-BShK_xMJ.mjs")
22073
22037
  },
22074
22038
  {
22075
22039
  packageName: "@framefields/node-colorkey",
22076
22040
  ops: ["ColorKey"],
22077
- load: () => import("./renderer-D3poaM-T.mjs")
22041
+ load: () => import("./renderer-D5Je-AeQ.mjs")
22078
22042
  },
22079
22043
  {
22080
22044
  packageName: "@framefields/node-compositor",
22081
22045
  ops: ["Compositor"],
22082
- load: () => import("./renderer-D9lcIxrz.mjs")
22046
+ load: () => import("./renderer-CmMNU1-P.mjs")
22083
22047
  },
22084
22048
  {
22085
22049
  packageName: "@framefields/node-corner-pin",
@@ -22104,7 +22068,7 @@ const BUILTIN_NODE_RENDERERS = [
22104
22068
  {
22105
22069
  packageName: "@framefields/node-displacement-map",
22106
22070
  ops: ["DisplacementMap"],
22107
- load: () => import("./renderer-Bn7jX6n3.mjs")
22071
+ load: () => import("./renderer-COO44HDO.mjs")
22108
22072
  },
22109
22073
  {
22110
22074
  packageName: "@framefields/node-extract-frame",
@@ -22114,12 +22078,12 @@ const BUILTIN_NODE_RENDERERS = [
22114
22078
  {
22115
22079
  packageName: "@framefields/node-extract-lut",
22116
22080
  ops: ["ExtractLUT"],
22117
- load: () => import("./renderer-BusX07ZE.mjs")
22081
+ load: () => import("./renderer-CsE9ztUa.mjs")
22118
22082
  },
22119
22083
  {
22120
22084
  packageName: "@framefields/node-film-grain",
22121
22085
  ops: ["FilmGrain"],
22122
- load: () => import("./renderer-BgO4XWZz.mjs")
22086
+ load: () => import("./renderer-CO0KsnEg.mjs")
22123
22087
  },
22124
22088
  {
22125
22089
  packageName: "@framefields/node-flip",
@@ -22129,17 +22093,17 @@ const BUILTIN_NODE_RENDERERS = [
22129
22093
  {
22130
22094
  packageName: "@framefields/node-gradient-map",
22131
22095
  ops: ["GradientMap"],
22132
- load: () => import("./renderer-CxE-8m71.mjs")
22096
+ load: () => import("./renderer-D3FsnptO.mjs")
22133
22097
  },
22134
22098
  {
22135
22099
  packageName: "@framefields/node-halftone-screen",
22136
22100
  ops: ["HalftoneScreen"],
22137
- load: () => import("./renderer-0kXgErRZ.mjs")
22101
+ load: () => import("./renderer-145WIXyW.mjs")
22138
22102
  },
22139
22103
  {
22140
22104
  packageName: "@framefields/node-high-pass",
22141
22105
  ops: ["HighPass"],
22142
- load: () => import("./renderer-DiXzb5FQ.mjs")
22106
+ load: () => import("./renderer-kN2TeWks.mjs")
22143
22107
  },
22144
22108
  {
22145
22109
  packageName: "@framefields/node-kenburns",
@@ -22149,12 +22113,12 @@ const BUILTIN_NODE_RENDERERS = [
22149
22113
  {
22150
22114
  packageName: "@framefields/node-layer-style",
22151
22115
  ops: ["LayerStyle"],
22152
- load: () => import("./renderer-DPSsf8-t.mjs")
22116
+ load: () => import("./renderer-CL3evUmF.mjs")
22153
22117
  },
22154
22118
  {
22155
22119
  packageName: "@framefields/node-levels",
22156
22120
  ops: ["Levels"],
22157
- load: () => import("./renderer-DwtLqidh.mjs")
22121
+ load: () => import("./renderer-DNPwpmYS.mjs")
22158
22122
  },
22159
22123
  {
22160
22124
  packageName: "@framefields/node-liquify",
@@ -22164,7 +22128,7 @@ const BUILTIN_NODE_RENDERERS = [
22164
22128
  {
22165
22129
  packageName: "@framefields/node-mask-math",
22166
22130
  ops: ["MaskMath"],
22167
- load: () => import("./renderer-BGd1VV9J.mjs")
22131
+ load: () => import("./renderer-DlrJSfaw.mjs")
22168
22132
  },
22169
22133
  {
22170
22134
  packageName: "@framefields/node-mesh-warp",
@@ -22174,42 +22138,42 @@ const BUILTIN_NODE_RENDERERS = [
22174
22138
  {
22175
22139
  packageName: "@framefields/node-modulate",
22176
22140
  ops: ["Modulate"],
22177
- load: () => import("./renderer-BJKbasW6.mjs")
22141
+ load: () => import("./renderer-CDirzReW.mjs")
22178
22142
  },
22179
22143
  {
22180
22144
  packageName: "@framefields/node-noise-generator",
22181
22145
  ops: ["NoiseGenerator"],
22182
- load: () => import("./renderer-1ccLpvz3.mjs")
22146
+ load: () => import("./renderer-C-F91lPu.mjs")
22183
22147
  },
22184
22148
  {
22185
22149
  packageName: "@framefields/node-paint",
22186
22150
  ops: ["Paint"],
22187
- load: () => import("./renderer-CYC-j_8W.mjs")
22151
+ load: () => import("./renderer-B5HBViEG.mjs")
22188
22152
  },
22189
22153
  {
22190
22154
  packageName: "@framefields/node-patch-heal",
22191
22155
  ops: ["PatchHeal"],
22192
- load: () => import("./renderer-Y7-Us00q.mjs")
22156
+ load: () => import("./renderer-Bl9C9lIo.mjs")
22193
22157
  },
22194
22158
  {
22195
22159
  packageName: "@framefields/node-refine-edge",
22196
22160
  ops: ["RefineEdge"],
22197
- load: () => import("./renderer-DnUe5mD1.mjs")
22161
+ load: () => import("./renderer-CntaTaNq.mjs")
22198
22162
  },
22199
22163
  {
22200
22164
  packageName: "@framefields/node-refraction-caustics",
22201
22165
  ops: ["RefractionCaustics3D"],
22202
- load: () => import("./renderer-CBdqOoTN.mjs")
22166
+ load: () => import("./renderer-B52Y2SDC.mjs")
22203
22167
  },
22204
22168
  {
22205
22169
  packageName: "@framefields/node-relight-3d",
22206
22170
  ops: ["Relight3D"],
22207
- load: () => import("./renderer-BC0iMueW.mjs")
22171
+ load: () => import("./renderer-C_9SIgZX.mjs")
22208
22172
  },
22209
22173
  {
22210
22174
  packageName: "@framefields/node-resizer-scaler",
22211
22175
  ops: ["ResizerScaler"],
22212
- load: () => import("./renderer-Dm08-hAU.mjs")
22176
+ load: () => import("./renderer-h-HOoLwD.mjs")
22213
22177
  },
22214
22178
  {
22215
22179
  packageName: "@framefields/node-selective-color",
@@ -22219,12 +22183,12 @@ const BUILTIN_NODE_RENDERERS = [
22219
22183
  {
22220
22184
  packageName: "@framefields/node-shadows-highlights",
22221
22185
  ops: ["ShadowsHighlights"],
22222
- load: () => import("./renderer-DkKjy-Q0.mjs")
22186
+ load: () => import("./renderer-D3jUYUDU.mjs")
22223
22187
  },
22224
22188
  {
22225
22189
  packageName: "@framefields/node-shape-generator",
22226
22190
  ops: ["ShapeGenerator"],
22227
- load: () => import("./renderer-DVSagfD4.mjs")
22191
+ load: () => import("./renderer-doPt4zQZ.mjs")
22228
22192
  },
22229
22193
  {
22230
22194
  packageName: "@framefields/node-signal-gate",
@@ -22234,27 +22198,27 @@ const BUILTIN_NODE_RENDERERS = [
22234
22198
  {
22235
22199
  packageName: "@framefields/node-stereo-panning",
22236
22200
  ops: ["StereoPanning"],
22237
- load: () => import("./renderer-rrz9Fhwo.mjs")
22201
+ load: () => import("./renderer-D0FWIsWn.mjs")
22238
22202
  },
22239
22203
  {
22240
22204
  packageName: "@framefields/node-tile-offset",
22241
22205
  ops: ["TileOffset"],
22242
- load: () => import("./renderer-WaLyCr37.mjs")
22206
+ load: () => import("./renderer-ByxrzTRg.mjs")
22243
22207
  },
22244
22208
  {
22245
22209
  packageName: "@framefields/node-unsharp-mask",
22246
22210
  ops: ["UnsharpMask"],
22247
- load: () => import("./renderer-B9e4XyZy.mjs")
22211
+ load: () => import("./renderer-Cv9JLpL6.mjs")
22248
22212
  },
22249
22213
  {
22250
22214
  packageName: "@framefields/node-vignette",
22251
22215
  ops: ["Vignette"],
22252
- load: () => import("./renderer-BBhCaxS2.mjs")
22216
+ load: () => import("./renderer-BL51bhvQ.mjs")
22253
22217
  },
22254
22218
  {
22255
22219
  packageName: "@framefields/node-vision",
22256
22220
  ops: ["Vision"],
22257
- load: () => import("./renderer-xc9wkiC7.mjs")
22221
+ load: () => import("./renderer-BfvBHHNr.mjs")
22258
22222
  }
22259
22223
  ];
22260
22224
  /**
@@ -22453,7 +22417,7 @@ const bootstrapMediabunny = () => {
22453
22417
  };
22454
22418
 
22455
22419
  //#endregion
22456
- //#region ../renderer/dist/headless-webgpu-renderer-B9EKrcuH.mjs
22420
+ //#region ../renderer/dist/headless-webgpu-renderer-BSmCX3bP.mjs
22457
22421
  const DEFAULTS = {
22458
22422
  blackPixelThreshold: .1,
22459
22423
  blackFrameRatio: .98,
@@ -23581,7 +23545,8 @@ var HeadlessWebGPURenderer = class HeadlessWebGPURenderer$1 {
23581
23545
  renderer,
23582
23546
  surface
23583
23547
  } : null;
23584
- if (ctx && renderer) {
23548
+ const prePass = async (frame) => {
23549
+ if (!ctx || !renderer) return;
23585
23550
  const preEncoder = device.createCommandEncoder();
23586
23551
  const dummyTex = renderer.getTemporaryTexture(width, height);
23587
23552
  const dummyView = dummyTex.createView();
@@ -23592,7 +23557,7 @@ var HeadlessWebGPURenderer = class HeadlessWebGPURenderer$1 {
23592
23557
  a: 0
23593
23558
  }, width, height, "clear").end();
23594
23559
  await drawCompositionTree(ctx, preEncoder, dummyView, dummyTex, width, height, virtualMedia, {
23595
- frame: 0,
23560
+ frame,
23596
23561
  fps,
23597
23562
  isHeadless: true,
23598
23563
  renderId,
@@ -23603,7 +23568,8 @@ var HeadlessWebGPURenderer = class HeadlessWebGPURenderer$1 {
23603
23568
  });
23604
23569
  device.queue.submit([preEncoder.finish()]);
23605
23570
  await lutStore.awaitAllPending(device);
23606
- }
23571
+ };
23572
+ await prePass(0);
23607
23573
  for (let i$1 = 0; i$1 < totalFrames; i$1++) {
23608
23574
  if (i$1 % 10 === 0) rendererLogger.info({
23609
23575
  renderId,
@@ -23611,6 +23577,10 @@ var HeadlessWebGPURenderer = class HeadlessWebGPURenderer$1 {
23611
23577
  totalFrames
23612
23578
  }, `[HeadlessWebGPURenderer] Rendering frame ${i$1}/${totalFrames}`);
23613
23579
  if (ctx && surface && renderer && pipeline) {
23580
+ if (i$1 > 0 && (lutStore.hasPending(device) || SlugFontCache.hasPending())) {
23581
+ updateClockSignals(i$1, fps, durationMs);
23582
+ await prePass(i$1);
23583
+ }
23614
23584
  compositionStateStore.setState(renderId, i$1, fps, true);
23615
23585
  updateClockSignals(i$1, fps, durationMs);
23616
23586
  const encoder = device.createCommandEncoder();
@@ -23916,4 +23886,4 @@ async function renderFrameGrid(target, options = {}) {
23916
23886
 
23917
23887
  //#endregion
23918
23888
  export { HeadlessWebGPURenderer as a, HeadlessMediaRenderer as i, renderFrameGrid as n, formatQaReport as o, resolveSamplePoints as r, renderSemaphore as s, computeGridLayout as t };
23919
- //# sourceMappingURL=renderer-vnHsTpQf.mjs.map
23889
+ //# sourceMappingURL=renderer-DM79djHG.mjs.map