framefields 2.4.3 → 2.5.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 (484) hide show
  1. package/README.md +26 -1
  2. package/dist/audio/index.d.mts +4 -4
  3. package/dist/audio/index.mjs +13 -13
  4. package/dist/{audio-DJeVoE8b.mjs → audio-BluXgSeG.mjs} +1 -1
  5. package/dist/{audio-DJeVoE8b.mjs.map → audio-BluXgSeG.mjs.map} +1 -1
  6. package/dist/{audio-BymXfAvH.d.mts → audio-C1A4N3Wh.d.mts} +3 -3
  7. package/dist/{audio-BymXfAvH.d.mts.map → audio-C1A4N3Wh.d.mts.map} +1 -1
  8. package/dist/{audio-BzHHpImj.mjs → audio-CMHpfOoS.mjs} +4 -4
  9. package/dist/{audio-BzHHpImj.mjs.map → audio-CMHpfOoS.mjs.map} +1 -1
  10. package/dist/cli.d.mts +1 -0
  11. package/dist/cli.mjs +221 -0
  12. package/dist/cli.mjs.map +1 -0
  13. package/dist/components/index.d.mts +12 -0
  14. package/dist/components/index.mjs +49 -0
  15. package/dist/{dist-hmWTJPik.mjs → dist-BBUrGwqd.mjs} +24 -3
  16. package/dist/{dist-hmWTJPik.mjs.map → dist-BBUrGwqd.mjs.map} +1 -1
  17. package/dist/{dist-Bo2_zeCn.mjs → dist-CQZ5_60A.mjs} +2 -2
  18. package/dist/{dist-Bo2_zeCn.mjs.map → dist-CQZ5_60A.mjs.map} +1 -1
  19. package/dist/{dist-0QGroRYZ.mjs → dist-C_SMBmHr.mjs} +1 -1
  20. package/dist/{dist-0QGroRYZ.mjs.map → dist-C_SMBmHr.mjs.map} +1 -1
  21. package/dist/{dist-TrtLGPvc.mjs → dist-DFeF-ygz.mjs} +1 -1
  22. package/dist/{dist-TrtLGPvc.mjs.map → dist-DFeF-ygz.mjs.map} +1 -1
  23. package/dist/{dist-DMa2BbYs.mjs → dist-QMVy31gR.mjs} +23 -4
  24. package/dist/dist-QMVy31gR.mjs.map +1 -0
  25. package/dist/effects/index.d.mts +4 -4
  26. package/dist/effects/index.mjs +36 -36
  27. package/dist/{effects-CiZjSwIh.mjs → effects-mRe-rLte.mjs} +3 -3
  28. package/dist/{effects-CiZjSwIh.mjs.map → effects-mRe-rLte.mjs.map} +1 -1
  29. package/dist/fonts/index.d.mts +1 -1
  30. package/dist/fonts/index.mjs +3 -3
  31. package/dist/{fonts-Da1JDKpc.mjs → fonts-wI3CUYHM.mjs} +2 -2
  32. package/dist/{fonts-Da1JDKpc.mjs.map → fonts-wI3CUYHM.mjs.map} +1 -1
  33. package/dist/{gpu-CHIgM_YH.mjs → gpu-I5fdrflL.mjs} +2 -2
  34. package/dist/{gpu-CHIgM_YH.mjs.map → gpu-I5fdrflL.mjs.map} +1 -1
  35. package/dist/{index-DIvWBm-q.d.mts → index-B-KVpJMb.d.mts} +2 -2
  36. package/dist/{index-DIvWBm-q.d.mts.map → index-B-KVpJMb.d.mts.map} +1 -1
  37. package/dist/index-BJe_GEyj.d.mts +5968 -0
  38. package/dist/index-BJe_GEyj.d.mts.map +1 -0
  39. package/dist/{index-WMofVN02.d.mts → index-BpdVOlsV.d.mts} +3 -3
  40. package/dist/{index-WMofVN02.d.mts.map → index-BpdVOlsV.d.mts.map} +1 -1
  41. package/dist/index-C2f4Hm-p.d.mts +89 -0
  42. package/dist/index-C2f4Hm-p.d.mts.map +1 -0
  43. package/dist/{index-B-55dXDu.d.mts → index-CalU-mpZ.d.mts} +1 -1
  44. package/dist/{index-B-55dXDu.d.mts.map → index-CalU-mpZ.d.mts.map} +1 -1
  45. package/dist/{index-CJkihekp.d.mts → index-D6-lH1Mx.d.mts} +189 -189
  46. package/dist/index-D6-lH1Mx.d.mts.map +1 -0
  47. package/dist/{index-Dwf76Qep.d.mts → index-DNKM3to5.d.mts} +3 -3
  48. package/dist/{index-Dwf76Qep.d.mts.map → index-DNKM3to5.d.mts.map} +1 -1
  49. package/dist/{index-DGe83M-p.d.mts → index-fymoeGNW.d.mts} +6 -1
  50. package/dist/index-fymoeGNW.d.mts.map +1 -0
  51. package/dist/index.d.mts +13 -4659
  52. package/dist/index.mjs +59 -6654
  53. package/dist/preview/index.d.mts +4 -90
  54. package/dist/preview/index.mjs +12 -12
  55. package/dist/{preview-5E4B96RD.mjs → preview--DEgW67P.mjs} +3 -3
  56. package/dist/{preview-5E4B96RD.mjs.map → preview--DEgW67P.mjs.map} +1 -1
  57. package/dist/preview-engine/audio.mjs +1 -1
  58. package/dist/preview-engine/{chunk-TFFG5YFI.mjs → chunk-24H3QVYB.mjs} +1 -1
  59. package/dist/preview-engine/{chunk-7J4OK4VE.mjs → chunk-25T3M6MI.mjs} +1 -1
  60. package/dist/preview-engine/{chunk-YJ6GWVL4.mjs → chunk-2AV7HRRL.mjs} +1 -1
  61. package/dist/preview-engine/{chunk-U4SQUTDV.mjs → chunk-4EOS6ZWW.mjs} +1 -1
  62. package/dist/preview-engine/{chunk-O3NOB5IB.mjs → chunk-4UI3S3UG.mjs} +1 -1
  63. package/dist/preview-engine/{chunk-YQYLBXOX.mjs → chunk-5N3GW3NE.mjs} +1 -1
  64. package/dist/preview-engine/{chunk-JJYNYYPA.mjs → chunk-5P764TTF.mjs} +1 -1
  65. package/dist/preview-engine/{chunk-5CWQHYQP.mjs → chunk-7BUKVFWB.mjs} +1 -1
  66. package/dist/preview-engine/{chunk-6WKWYUOM.mjs → chunk-7EHUT5A3.mjs} +1 -1
  67. package/dist/preview-engine/{chunk-A2775RSO.mjs → chunk-7HTTYP6T.mjs} +1 -1
  68. package/dist/preview-engine/{chunk-AWX4YGC5.mjs → chunk-7JYMNGNK.mjs} +1 -1
  69. package/dist/preview-engine/{chunk-JTUK7ZXK.mjs → chunk-A5OUYV3I.mjs} +1 -1
  70. package/dist/preview-engine/{chunk-5JSSXOBB.mjs → chunk-AJLPRIXB.mjs} +1 -1
  71. package/dist/preview-engine/{chunk-KJ2DTA77.mjs → chunk-ANZDLSSM.mjs} +1 -1
  72. package/dist/preview-engine/{chunk-OZDZQMTB.mjs → chunk-C2TA65CH.mjs} +1 -1
  73. package/dist/preview-engine/{chunk-C45ROXI6.mjs → chunk-CBQOJAIS.mjs} +11 -11
  74. package/dist/preview-engine/{chunk-E7DH7EPX.mjs → chunk-DKXKOUQR.mjs} +1 -1
  75. package/dist/preview-engine/{chunk-5SVJIGPK.mjs → chunk-DPIED3EG.mjs} +1 -1
  76. package/dist/preview-engine/{chunk-AY2ZIXST.mjs → chunk-ENS4KUJV.mjs} +1 -1
  77. package/dist/preview-engine/{chunk-5EVEGKWT.mjs → chunk-HXHP3UHZ.mjs} +1 -1
  78. package/dist/preview-engine/chunk-I6E3AKLS.mjs +1 -0
  79. package/dist/preview-engine/{chunk-JJA4G3OU.mjs → chunk-ILKBHDFB.mjs} +1 -1
  80. package/dist/preview-engine/{chunk-7QE6II7R.mjs → chunk-JMOJKT5W.mjs} +1 -1
  81. package/dist/preview-engine/{chunk-ILBZQLUF.mjs → chunk-KKBJ7X3T.mjs} +1 -1
  82. package/dist/preview-engine/{chunk-EEOUHDUD.mjs → chunk-KRVXRP5F.mjs} +1 -1
  83. package/dist/preview-engine/{chunk-UVWGZUKZ.mjs → chunk-MLW6Y4RN.mjs} +1 -1
  84. package/dist/preview-engine/{chunk-UMF7NNUA.mjs → chunk-MRDJNDYV.mjs} +1 -1
  85. package/dist/preview-engine/{chunk-XTPEGKOZ.mjs → chunk-MZAAJXUL.mjs} +1 -1
  86. package/dist/preview-engine/{chunk-AKYUVDKM.mjs → chunk-NB55FW7D.mjs} +1 -1
  87. package/dist/preview-engine/{chunk-UDDK5QZF.mjs → chunk-NG5WSR3A.mjs} +1 -1
  88. package/dist/preview-engine/{chunk-FDNR4PRC.mjs → chunk-NXKXOSE6.mjs} +1 -1
  89. package/dist/preview-engine/{chunk-N3PRZLZJ.mjs → chunk-NYEDWUFS.mjs} +1 -1
  90. package/dist/preview-engine/{chunk-6TGNQ5FD.mjs → chunk-O6LGKH4S.mjs} +1 -1
  91. package/dist/preview-engine/{chunk-LSBCFJZM.mjs → chunk-OOJAQBS3.mjs} +1 -1
  92. package/dist/preview-engine/{chunk-6AEU4DC7.mjs → chunk-PJN7DD55.mjs} +3 -3
  93. package/dist/preview-engine/{chunk-V6LCSK6Q.mjs → chunk-QCUGWPYP.mjs} +1 -1
  94. package/dist/preview-engine/{chunk-BIS3W4Z5.mjs → chunk-QQJPPGH5.mjs} +1 -1
  95. package/dist/preview-engine/{chunk-37P2KIFE.mjs → chunk-QVUT3QNF.mjs} +1 -1
  96. package/dist/preview-engine/{chunk-FSAELHVT.mjs → chunk-RNFYEZLL.mjs} +1 -1
  97. package/dist/preview-engine/{chunk-3SOD7OTO.mjs → chunk-TA5OBYRR.mjs} +1 -1
  98. package/dist/preview-engine/{chunk-6MBYREBG.mjs → chunk-VRNN6H6Y.mjs} +1 -1
  99. package/dist/preview-engine/{chunk-GIH5QURF.mjs → chunk-VTE3IISK.mjs} +1 -1
  100. package/dist/preview-engine/{chunk-GQN35VLT.mjs → chunk-VZGDX7II.mjs} +1 -1
  101. package/dist/preview-engine/{chunk-54HE34HO.mjs → chunk-XJ4CQIZZ.mjs} +1 -1
  102. package/dist/preview-engine/{chunk-LMZHCWXP.mjs → chunk-XYRBFLFF.mjs} +1 -1
  103. package/dist/preview-engine/{chunk-O5LA63CK.mjs → chunk-YMQMPBTL.mjs} +1 -1
  104. package/dist/preview-engine/{chunk-S7NG26UG.mjs → chunk-Z4ZO4RVT.mjs} +1 -1
  105. package/dist/preview-engine/{chunk-W3QGP5XF.mjs → chunk-ZFURUTVW.mjs} +1 -1
  106. package/dist/preview-engine/effects.mjs +1 -1
  107. package/dist/preview-engine/framefields.mjs +33 -31
  108. package/dist/preview-engine/player.mjs +5 -5
  109. package/dist/preview-engine/renderers-2CBJYNOC.mjs +1 -0
  110. package/dist/preview-engine/renderers-37CN7O4S.mjs +1 -0
  111. package/dist/preview-engine/renderers-3AZ5PMGC.mjs +1 -0
  112. package/dist/preview-engine/renderers-3UGG2IMP.mjs +1 -0
  113. package/dist/preview-engine/{renderers-ELARGDRC.mjs → renderers-3VXNHICC.mjs} +1 -1
  114. package/dist/preview-engine/{renderers-WNMRLGZS.mjs → renderers-3ZYXHUSW.mjs} +1 -1
  115. package/dist/preview-engine/{renderers-43LBWRY2.mjs → renderers-4FONYSBA.mjs} +1 -1
  116. package/dist/preview-engine/renderers-54I5SFXR.mjs +1 -0
  117. package/dist/preview-engine/renderers-5LXALKB4.mjs +1 -0
  118. package/dist/preview-engine/renderers-5TICPV2K.mjs +1 -0
  119. package/dist/preview-engine/{renderers-X2XGDF3R.mjs → renderers-5YS5WHAV.mjs} +1 -1
  120. package/dist/preview-engine/renderers-6UTRYW7Z.mjs +1 -0
  121. package/dist/preview-engine/{renderers-XPO2WQNF.mjs → renderers-6ZCFR7BL.mjs} +1 -1
  122. package/dist/preview-engine/renderers-AYEWAW7F.mjs +1 -0
  123. package/dist/preview-engine/{renderers-QJNGN722.mjs → renderers-BOT4H6KJ.mjs} +1 -1
  124. package/dist/preview-engine/{renderers-FNPXT2EH.mjs → renderers-C44CEIYB.mjs} +1 -1
  125. package/dist/preview-engine/{renderers-KW75FYFG.mjs → renderers-C4G7X7LD.mjs} +1 -1
  126. package/dist/preview-engine/renderers-CLCPP3TZ.mjs +1 -0
  127. package/dist/preview-engine/{renderers-7M3YOI7E.mjs → renderers-DBRC3SQE.mjs} +1 -1
  128. package/dist/preview-engine/{renderers-PM4Q5QOW.mjs → renderers-DSICQMRF.mjs} +1 -1
  129. package/dist/preview-engine/renderers-DTZ2AER5.mjs +1 -0
  130. package/dist/preview-engine/renderers-DUF2CTX6.mjs +1 -0
  131. package/dist/preview-engine/{renderers-5OGAF66H.mjs → renderers-EOIMH7UE.mjs} +1 -1
  132. package/dist/preview-engine/renderers-EOMMSENQ.mjs +1 -0
  133. package/dist/preview-engine/{renderers-K23EAM2J.mjs → renderers-GSRKNT75.mjs} +1 -1
  134. package/dist/preview-engine/{renderers-J6DEIWTU.mjs → renderers-GUJTPO37.mjs} +1 -1
  135. package/dist/preview-engine/{renderers-VD5GHHK6.mjs → renderers-HE42AT5T.mjs} +1 -1
  136. package/dist/preview-engine/{renderers-Q6AO5M54.mjs → renderers-JM7JEVBN.mjs} +1 -1
  137. package/dist/preview-engine/{renderers-WOLTH5VI.mjs → renderers-JRU2GNPE.mjs} +1 -1
  138. package/dist/preview-engine/{renderers-TFEDHXPY.mjs → renderers-K6J77OI5.mjs} +1 -1
  139. package/dist/preview-engine/{renderers-U2ZWRL25.mjs → renderers-L7EITUCD.mjs} +1 -1
  140. package/dist/preview-engine/renderers-LGUHDWWB.mjs +1 -0
  141. package/dist/preview-engine/renderers-LGXD24IJ.mjs +1 -0
  142. package/dist/preview-engine/renderers-MCTBJEL7.mjs +1 -0
  143. package/dist/preview-engine/{renderers-3YHETAPE.mjs → renderers-OBXNUQMP.mjs} +1 -1
  144. package/dist/preview-engine/renderers-OZGEXW2X.mjs +1 -0
  145. package/dist/preview-engine/{renderers-ZRR7BLB7.mjs → renderers-PJGFJGJS.mjs} +1 -1
  146. package/dist/preview-engine/{renderers-35G4KCQ2.mjs → renderers-PPGOYOID.mjs} +1 -1
  147. package/dist/preview-engine/{renderers-7UKFQ75V.mjs → renderers-PUJRHBUW.mjs} +1 -1
  148. package/dist/preview-engine/renderers-PVUROEGR.mjs +1 -0
  149. package/dist/preview-engine/renderers-QBVVTQV6.mjs +1 -0
  150. package/dist/preview-engine/{renderers-2GE5HE56.mjs → renderers-QPHOG7QR.mjs} +1 -1
  151. package/dist/preview-engine/{renderers-2A7YDJMJ.mjs → renderers-RV62K5JC.mjs} +1 -1
  152. package/dist/preview-engine/{renderers-6GYRMHGQ.mjs → renderers-SBX64ERA.mjs} +1 -1
  153. package/dist/preview-engine/renderers-SCJTTOEJ.mjs +1 -0
  154. package/dist/preview-engine/{renderers-MHDLRY3S.mjs → renderers-SD35PBEM.mjs} +1 -1
  155. package/dist/preview-engine/{renderers-XTRFEQO4.mjs → renderers-SIHL5GLI.mjs} +1 -1
  156. package/dist/preview-engine/{renderers-UBO4ZNE6.mjs → renderers-SNUVYUDE.mjs} +1 -1
  157. package/dist/preview-engine/renderers-SPW4SWZ2.mjs +228 -0
  158. package/dist/preview-engine/renderers-SRKCF3LD.mjs +1 -0
  159. package/dist/preview-engine/{renderers-LF6W5P2I.mjs → renderers-T3S7QVM4.mjs} +1 -1
  160. package/dist/preview-engine/renderers-TBP2EKJ4.mjs +1 -0
  161. package/dist/preview-engine/renderers-UN6YLFHW.mjs +1 -0
  162. package/dist/preview-engine/renderers-UTWKTBZI.mjs +1 -0
  163. package/dist/preview-engine/{renderers-DKOWLKDE.mjs → renderers-V5MJJH33.mjs} +1 -1
  164. package/dist/preview-engine/{renderers-NJAKGI25.mjs → renderers-V67L3MCY.mjs} +1 -1
  165. package/dist/preview-engine/{renderers-XTCBHTHC.mjs → renderers-VYK2BJID.mjs} +1 -1
  166. package/dist/preview-engine/renderers-W6762MNW.mjs +1 -0
  167. package/dist/preview-engine/{renderers-NPKRNXAT.mjs → renderers-W6ZTVA2I.mjs} +1 -1
  168. package/dist/preview-engine/renderers-WDV7ENJA.mjs +1 -0
  169. package/dist/preview-engine/{renderers-ATL5ARUV.mjs → renderers-WPBTAU2E.mjs} +1 -1
  170. package/dist/preview-engine/{renderers-C4XIAG3F.mjs → renderers-XP7YFWBV.mjs} +1 -1
  171. package/dist/preview-engine/renderers-XVUOO7B6.mjs +1 -0
  172. package/dist/preview-engine/renderers-YPFM5UJO.mjs +1 -0
  173. package/dist/preview-engine/renderers-YW3LBALW.mjs +1 -0
  174. package/dist/preview-engine/{renderers-DFJDEPCU.mjs → renderers-ZAPIBQZC.mjs} +1 -1
  175. package/dist/preview-engine/renderers-ZRR4TUVQ.mjs +1 -0
  176. package/dist/preview-engine/{renderers-4H34AFW2.mjs → renderers-ZVKXIQ3E.mjs} +1 -1
  177. package/dist/preview-engine/signals.mjs +1 -1
  178. package/dist/{program-KwDdbC0-.mjs → program-CEHCeDpG.mjs} +133 -30
  179. package/dist/program-CEHCeDpG.mjs.map +1 -0
  180. package/dist/registry/annotate.json +30 -0
  181. package/dist/registry/app-frame.json +38 -0
  182. package/dist/registry/backdrop.json +37 -0
  183. package/dist/registry/before-after.json +33 -0
  184. package/dist/registry/callout.json +30 -0
  185. package/dist/registry/captions.json +37 -0
  186. package/dist/registry/card-stack.json +30 -0
  187. package/dist/registry/chat-thread.json +32 -0
  188. package/dist/registry/code-block.json +45 -0
  189. package/dist/registry/confetti.json +29 -0
  190. package/dist/registry/counter.json +36 -0
  191. package/dist/registry/device-frame.json +36 -0
  192. package/dist/registry/focus-zoom.json +32 -0
  193. package/dist/registry/index.json +408 -0
  194. package/dist/registry/logo-reveal.json +37 -0
  195. package/dist/registry/lower-third.json +34 -0
  196. package/dist/registry/meter.json +35 -0
  197. package/dist/registry/mouse-pointer.json +44 -0
  198. package/dist/registry/selection.json +31 -0
  199. package/dist/registry/spotlight.json +28 -0
  200. package/dist/registry/terminal.json +40 -0
  201. package/dist/registry/text-reveal.json +39 -0
  202. package/dist/registry/title-card.json +34 -0
  203. package/dist/registry/toasts.json +28 -0
  204. package/dist/registry/touch-point.json +33 -0
  205. package/dist/registry/waveform.json +29 -0
  206. package/dist/registry/word-cycle.json +32 -0
  207. package/dist/renderer/index.d.mts +2 -2
  208. package/dist/renderer/index.mjs +3 -3
  209. package/dist/{renderer-DcOT5c0t.mjs → renderer--wMbTRFg.mjs} +4 -4
  210. package/dist/{renderer-DcOT5c0t.mjs.map → renderer--wMbTRFg.mjs.map} +1 -1
  211. package/dist/{renderer-Ci6YMa4u.mjs → renderer-3aLw-la1.mjs} +5 -5
  212. package/dist/{renderer-Ci6YMa4u.mjs.map → renderer-3aLw-la1.mjs.map} +1 -1
  213. package/dist/renderer-7vCBWQVP.mjs +5 -0
  214. package/dist/{renderer-CUPWHfEY.mjs → renderer-AkRxGnFU.mjs} +5 -5
  215. package/dist/{renderer-CUPWHfEY.mjs.map → renderer-AkRxGnFU.mjs.map} +1 -1
  216. package/dist/renderer-B-XgGMCq.mjs +5 -0
  217. package/dist/renderer-B0yabPlf.mjs +5 -0
  218. package/dist/{renderer-CLxQ4rU6.mjs → renderer-B1yPBJQc.mjs} +74 -74
  219. package/dist/{renderer-CLxQ4rU6.mjs.map → renderer-B1yPBJQc.mjs.map} +1 -1
  220. package/dist/{renderer-DWG4Podv.mjs → renderer-B41jTHFs.mjs} +6 -6
  221. package/dist/{renderer-DWG4Podv.mjs.map → renderer-B41jTHFs.mjs.map} +1 -1
  222. package/dist/{renderer-BtWWpFvl.mjs → renderer-B5HG6Czb.mjs} +4 -4
  223. package/dist/{renderer-BtWWpFvl.mjs.map → renderer-B5HG6Czb.mjs.map} +1 -1
  224. package/dist/{renderer-OEpwc9Zk.mjs → renderer-B5oJN3A5.mjs} +5 -5
  225. package/dist/{renderer-OEpwc9Zk.mjs.map → renderer-B5oJN3A5.mjs.map} +1 -1
  226. package/dist/renderer-B9MYevrF.mjs +5 -0
  227. package/dist/renderer-BA2Ko4H1.mjs +3 -0
  228. package/dist/renderer-BCGosndi.mjs +5 -0
  229. package/dist/{renderer-CwO8T8l8.mjs → renderer-BEmDSqXg.mjs} +4 -4
  230. package/dist/{renderer-CwO8T8l8.mjs.map → renderer-BEmDSqXg.mjs.map} +1 -1
  231. package/dist/{renderer-B4ydDdo6.mjs → renderer-BG8jNTHr.mjs} +3 -3
  232. package/dist/{renderer-B4ydDdo6.mjs.map → renderer-BG8jNTHr.mjs.map} +1 -1
  233. package/dist/{renderer-Du8eOWWU.mjs → renderer-BMnrBPh1.mjs} +4 -4
  234. package/dist/{renderer-Du8eOWWU.mjs.map → renderer-BMnrBPh1.mjs.map} +1 -1
  235. package/dist/{renderer-CE83KHgr.mjs → renderer-BORzpTQP.mjs} +3 -3
  236. package/dist/{renderer-CE83KHgr.mjs.map → renderer-BORzpTQP.mjs.map} +1 -1
  237. package/dist/{renderer-BUwHWIf7.mjs → renderer-BWtI3wKu.mjs} +4 -4
  238. package/dist/{renderer-BUwHWIf7.mjs.map → renderer-BWtI3wKu.mjs.map} +1 -1
  239. package/dist/renderer-BXTHDEnd.mjs +5 -0
  240. package/dist/{renderer-gm0zoV4t.mjs → renderer-Baw30QRI.mjs} +3 -3
  241. package/dist/{renderer-gm0zoV4t.mjs.map → renderer-Baw30QRI.mjs.map} +1 -1
  242. package/dist/renderer-BbJoZ-zL.mjs +5 -0
  243. package/dist/{renderer-Bhfl-WFX.mjs → renderer-BbdgwkDB.mjs} +5 -5
  244. package/dist/{renderer-Bhfl-WFX.mjs.map → renderer-BbdgwkDB.mjs.map} +1 -1
  245. package/dist/{renderer-qYhNf6iB.mjs → renderer-BgOEqtZu.mjs} +3 -3
  246. package/dist/{renderer-qYhNf6iB.mjs.map → renderer-BgOEqtZu.mjs.map} +1 -1
  247. package/dist/{renderer-I3Wxk1tL.mjs → renderer-Bv0-WmP4.mjs} +4 -4
  248. package/dist/{renderer-I3Wxk1tL.mjs.map → renderer-Bv0-WmP4.mjs.map} +1 -1
  249. package/dist/renderer-BvcqncI2.mjs +3 -0
  250. package/dist/{renderer-DXSIstnn.mjs → renderer-Bvhj-05p.mjs} +4 -4
  251. package/dist/{renderer-DXSIstnn.mjs.map → renderer-Bvhj-05p.mjs.map} +1 -1
  252. package/dist/renderer-BxAZKOQy.mjs +5 -0
  253. package/dist/{renderer-C-z6bxj9.mjs → renderer-BxDhx8KM.mjs} +5 -5
  254. package/dist/{renderer-C-z6bxj9.mjs.map → renderer-BxDhx8KM.mjs.map} +1 -1
  255. package/dist/renderer-BxgkH__7.mjs +5 -0
  256. package/dist/{renderer-GapR_An3.mjs → renderer-C1XZ0fQ-.mjs} +4 -4
  257. package/dist/{renderer-GapR_An3.mjs.map → renderer-C1XZ0fQ-.mjs.map} +1 -1
  258. package/dist/{renderer-BAoKytKL.mjs → renderer-C8KEfda3.mjs} +4 -4
  259. package/dist/{renderer-BAoKytKL.mjs.map → renderer-C8KEfda3.mjs.map} +1 -1
  260. package/dist/{renderer-BSitV56h.mjs → renderer-C9r0-KY4.mjs} +10 -1
  261. package/dist/{renderer-BSitV56h.mjs.map → renderer-C9r0-KY4.mjs.map} +1 -1
  262. package/dist/{renderer-B9ssmkbx.mjs → renderer-CF25oNd3.mjs} +5 -5
  263. package/dist/{renderer-B9ssmkbx.mjs.map → renderer-CF25oNd3.mjs.map} +1 -1
  264. package/dist/renderer-CFEvikBH.mjs +5 -0
  265. package/dist/{renderer-DGT141pN.mjs → renderer-CHFUJyul.mjs} +5 -5
  266. package/dist/{renderer-DGT141pN.mjs.map → renderer-CHFUJyul.mjs.map} +1 -1
  267. package/dist/{renderer-C5WkQZGR.mjs → renderer-CKGOKBZi.mjs} +5 -5
  268. package/dist/{renderer-C5WkQZGR.mjs.map → renderer-CKGOKBZi.mjs.map} +1 -1
  269. package/dist/{renderer-CzgDJcot.mjs → renderer-CNs1vBUy.mjs} +4 -4
  270. package/dist/{renderer-CzgDJcot.mjs.map → renderer-CNs1vBUy.mjs.map} +1 -1
  271. package/dist/{index-B0BZMhtw.d.mts → renderer-COXKPofU.d.mts} +13 -13
  272. package/dist/renderer-COXKPofU.d.mts.map +1 -0
  273. package/dist/{renderer-QaN-aejD.mjs → renderer-COZCwiIr.mjs} +3 -3
  274. package/dist/{renderer-QaN-aejD.mjs.map → renderer-COZCwiIr.mjs.map} +1 -1
  275. package/dist/{renderer-DP_In2uT.mjs → renderer-CPmoA87K.mjs} +4 -4
  276. package/dist/{renderer-DP_In2uT.mjs.map → renderer-CPmoA87K.mjs.map} +1 -1
  277. package/dist/{renderer-BCLmYH4S.mjs → renderer-CYZb9uoO.mjs} +4 -4
  278. package/dist/{renderer-BCLmYH4S.mjs.map → renderer-CYZb9uoO.mjs.map} +1 -1
  279. package/dist/renderer-C_u9B-_7.mjs +5 -0
  280. package/dist/{renderer-PuN2_AL_.mjs → renderer-CaUJlGoB.mjs} +5 -5
  281. package/dist/{renderer-PuN2_AL_.mjs.map → renderer-CaUJlGoB.mjs.map} +1 -1
  282. package/dist/{renderer-Blm4Dv_h.mjs → renderer-CcS3Zntx.mjs} +3 -3
  283. package/dist/{renderer-DZhIe8Gj.mjs → renderer-CddpdCL3.mjs} +4 -4
  284. package/dist/{renderer-DZhIe8Gj.mjs.map → renderer-CddpdCL3.mjs.map} +1 -1
  285. package/dist/{renderer-GbVNyv-E.mjs → renderer-Cg-d78nf.mjs} +192 -27
  286. package/dist/renderer-Cg-d78nf.mjs.map +1 -0
  287. package/dist/renderer-Cgx_qzGT.mjs +5 -0
  288. package/dist/{renderer-kNjMhwiZ.mjs → renderer-ChNCtBMR.mjs} +3 -3
  289. package/dist/{renderer-kNjMhwiZ.mjs.map → renderer-ChNCtBMR.mjs.map} +1 -1
  290. package/dist/renderer-ClOkY1Ny.mjs +5 -0
  291. package/dist/{renderer-plx7_lUQ.mjs → renderer-CrU0kbiB.mjs} +5 -5
  292. package/dist/{renderer-plx7_lUQ.mjs.map → renderer-CrU0kbiB.mjs.map} +1 -1
  293. package/dist/renderer-CtDub_ig.mjs +5 -0
  294. package/dist/{renderer-DQeUc1yY.mjs → renderer-CyhSWLKq.mjs} +4 -4
  295. package/dist/{renderer-DQeUc1yY.mjs.map → renderer-CyhSWLKq.mjs.map} +1 -1
  296. package/dist/{renderer-D96Pu8yX.mjs → renderer-D-bmSKv4.mjs} +5 -5
  297. package/dist/{renderer-D96Pu8yX.mjs.map → renderer-D-bmSKv4.mjs.map} +1 -1
  298. package/dist/renderer-D0duAhCo.mjs +5 -0
  299. package/dist/{renderer-CPLfsRe1.mjs → renderer-D2tdNoM6.mjs} +6 -6
  300. package/dist/{renderer-CPLfsRe1.mjs.map → renderer-D2tdNoM6.mjs.map} +1 -1
  301. package/dist/renderer-D4wM1dqg.mjs +6 -0
  302. package/dist/renderer-D5U3d09T.mjs +5 -0
  303. package/dist/{renderer-DOxmmN6Q.mjs → renderer-D86Y5YYi.mjs} +5 -5
  304. package/dist/{renderer-DOxmmN6Q.mjs.map → renderer-D86Y5YYi.mjs.map} +1 -1
  305. package/dist/{renderer-mqUBkx-a.mjs → renderer-D8D7dKxq.mjs} +4 -4
  306. package/dist/{renderer-mqUBkx-a.mjs.map → renderer-D8D7dKxq.mjs.map} +1 -1
  307. package/dist/{renderer-CTYKUnDq.mjs → renderer-DATAjI6x.mjs} +3 -3
  308. package/dist/{renderer-CTYKUnDq.mjs.map → renderer-DATAjI6x.mjs.map} +1 -1
  309. package/dist/{renderer-C4vHq0X8.mjs → renderer-DGhCIVI4.mjs} +5 -5
  310. package/dist/{renderer-C4vHq0X8.mjs.map → renderer-DGhCIVI4.mjs.map} +1 -1
  311. package/dist/{renderer-CrwYWVsV.mjs → renderer-DILjs1tz.mjs} +3 -3
  312. package/dist/{renderer-DYbgd6Ye.mjs → renderer-DIyzKouj.mjs} +4 -4
  313. package/dist/{renderer-DYbgd6Ye.mjs.map → renderer-DIyzKouj.mjs.map} +1 -1
  314. package/dist/{renderer-f7A01ArI.mjs → renderer-DJ78Bgv7.mjs} +5 -5
  315. package/dist/{renderer-f7A01ArI.mjs.map → renderer-DJ78Bgv7.mjs.map} +1 -1
  316. package/dist/renderer-DKqFxYfP.mjs +5 -0
  317. package/dist/renderer-DQZNI1zf.mjs +5 -0
  318. package/dist/{renderer-C1U85w9f.mjs → renderer-DVnrUnkh.mjs} +3 -3
  319. package/dist/{renderer-C1U85w9f.mjs.map → renderer-DVnrUnkh.mjs.map} +1 -1
  320. package/dist/{renderer-1P3yS8YM.mjs → renderer-DWtquP0s.mjs} +4 -4
  321. package/dist/{renderer-1P3yS8YM.mjs.map → renderer-DWtquP0s.mjs.map} +1 -1
  322. package/dist/renderer-DXITcVbS.mjs +5 -0
  323. package/dist/renderer-DY1QgdDC.mjs +5 -0
  324. package/dist/renderer-DYEz06xn.mjs +5 -0
  325. package/dist/renderer-D_2OrSMc.mjs +5 -0
  326. package/dist/renderer-DcCl9CO6.mjs +5 -0
  327. package/dist/{renderer-OsA-Lg4d.mjs → renderer-DetTl6bQ.mjs} +3 -3
  328. package/dist/{renderer-OsA-Lg4d.mjs.map → renderer-DetTl6bQ.mjs.map} +1 -1
  329. package/dist/{renderer-Bkq1PT0g.mjs → renderer-DfxwJVjW.mjs} +3 -3
  330. package/dist/{renderer-DK9etIAz.mjs → renderer-DhQZiRL3.mjs} +5 -5
  331. package/dist/{renderer-DK9etIAz.mjs.map → renderer-DhQZiRL3.mjs.map} +1 -1
  332. package/dist/{renderer-C0ds-UfM.mjs → renderer-Djn4BYtz.mjs} +5 -5
  333. package/dist/{renderer-C0ds-UfM.mjs.map → renderer-Djn4BYtz.mjs.map} +1 -1
  334. package/dist/{renderer-B4jxP8vF.mjs → renderer-DkS6cblv.mjs} +5 -5
  335. package/dist/{renderer-B4jxP8vF.mjs.map → renderer-DkS6cblv.mjs.map} +1 -1
  336. package/dist/{renderer-CjQAYeYz.mjs → renderer-DkeJefRk.mjs} +5 -5
  337. package/dist/{renderer-CjQAYeYz.mjs.map → renderer-DkeJefRk.mjs.map} +1 -1
  338. package/dist/renderer-DotZXhrh.mjs +5 -0
  339. package/dist/renderer-DpYDVTzs.mjs +5 -0
  340. package/dist/renderer-DpZxLVQF.mjs +5 -0
  341. package/dist/{renderer-BHLYKy8b.mjs → renderer-DqabtpGN.mjs} +5 -5
  342. package/dist/{renderer-BHLYKy8b.mjs.map → renderer-DqabtpGN.mjs.map} +1 -1
  343. package/dist/{renderer-DVFFVy9v.mjs → renderer-DqdD8gzX.mjs} +5 -5
  344. package/dist/{renderer-DVFFVy9v.mjs.map → renderer-DqdD8gzX.mjs.map} +1 -1
  345. package/dist/{renderer-CDky5Gva.mjs → renderer-DstROEvX.mjs} +4 -4
  346. package/dist/{renderer-CDky5Gva.mjs.map → renderer-DstROEvX.mjs.map} +1 -1
  347. package/dist/{renderer-Cy4a31rZ.mjs → renderer-DuawUm8D.mjs} +3 -3
  348. package/dist/{renderer-Cy4a31rZ.mjs.map → renderer-DuawUm8D.mjs.map} +1 -1
  349. package/dist/{renderer-CS8VMTp1.mjs → renderer-DvIWhLnY.mjs} +5 -5
  350. package/dist/{renderer-CS8VMTp1.mjs.map → renderer-DvIWhLnY.mjs.map} +1 -1
  351. package/dist/renderer-DvJbouz0.mjs +5 -0
  352. package/dist/{renderer-BI8QhEj9.mjs → renderer-Dw2ZFwDT.mjs} +5 -5
  353. package/dist/{renderer-BI8QhEj9.mjs.map → renderer-Dw2ZFwDT.mjs.map} +1 -1
  354. package/dist/{renderer-DBtt-7wt.d.mts → renderer-Dx28wTi1.d.mts} +2 -2
  355. package/dist/{renderer-DBtt-7wt.d.mts.map → renderer-Dx28wTi1.d.mts.map} +1 -1
  356. package/dist/{renderer-BT0x6KPK.mjs → renderer-DxLkZGUK.mjs} +4 -4
  357. package/dist/{renderer-BT0x6KPK.mjs.map → renderer-DxLkZGUK.mjs.map} +1 -1
  358. package/dist/{renderer-y6k54AM6.mjs → renderer-GY7D1oAn.mjs} +4 -4
  359. package/dist/{renderer-y6k54AM6.mjs.map → renderer-GY7D1oAn.mjs.map} +1 -1
  360. package/dist/{renderer-D4No_jA4.mjs → renderer-JaSEubRQ.mjs} +4 -4
  361. package/dist/{renderer-D4No_jA4.mjs.map → renderer-JaSEubRQ.mjs.map} +1 -1
  362. package/dist/{renderer-CAi-lhR2.mjs → renderer-MrvH4L7b.mjs} +4 -4
  363. package/dist/{renderer-CAi-lhR2.mjs.map → renderer-MrvH4L7b.mjs.map} +1 -1
  364. package/dist/{renderer-DO5r7ZV-.mjs → renderer-PNIgmWft.mjs} +2 -2
  365. package/dist/{renderer-DO5r7ZV-.mjs.map → renderer-PNIgmWft.mjs.map} +1 -1
  366. package/dist/renderer-S305xm67.mjs +5 -0
  367. package/dist/renderer-TgUloP-y.mjs +5 -0
  368. package/dist/{renderer-DSbRWfgl.mjs → renderer-VcPoZAM2.mjs} +3 -3
  369. package/dist/{renderer-DSbRWfgl.mjs.map → renderer-VcPoZAM2.mjs.map} +1 -1
  370. package/dist/{renderer-DCsTCvdo.mjs → renderer-ZGJWn-_L.mjs} +4 -4
  371. package/dist/{renderer-DCsTCvdo.mjs.map → renderer-ZGJWn-_L.mjs.map} +1 -1
  372. package/dist/{renderer-B_b8-ztW.mjs → renderer-aXwxbXcE.mjs} +5 -5
  373. package/dist/{renderer-B_b8-ztW.mjs.map → renderer-aXwxbXcE.mjs.map} +1 -1
  374. package/dist/renderer-gZ5SMvbU.mjs +5 -0
  375. package/dist/{renderer-BMLJgnbU.mjs → renderer-gniIzAsk.mjs} +3 -3
  376. package/dist/renderer-kEpx7pUy.mjs +5 -0
  377. package/dist/{renderer-DOvzHN60.mjs → renderer-mSlww_MA.mjs} +4 -4
  378. package/dist/{renderer-DOvzHN60.mjs.map → renderer-mSlww_MA.mjs.map} +1 -1
  379. package/dist/{renderer-DBKyuPl1.mjs → renderer-mWfgWQy_.mjs} +5 -5
  380. package/dist/{renderer-DBKyuPl1.mjs.map → renderer-mWfgWQy_.mjs.map} +1 -1
  381. package/dist/{renderer-BajIOuZH.mjs → renderer-nLPfvY3-.mjs} +2 -2
  382. package/dist/{renderer-BajIOuZH.mjs.map → renderer-nLPfvY3-.mjs.map} +1 -1
  383. package/dist/renderer-oPWZmzua.mjs +5 -0
  384. package/dist/{renderer-C4xvz_Ft.mjs → renderer-pcpDwv3K.mjs} +4 -4
  385. package/dist/{renderer-C4xvz_Ft.mjs.map → renderer-pcpDwv3K.mjs.map} +1 -1
  386. package/dist/renderer-qCNOffLy.mjs +5 -0
  387. package/dist/{renderer-BaJQx0Bp.mjs → renderer-vPJRRVNN.mjs} +5 -5
  388. package/dist/{renderer-BaJQx0Bp.mjs.map → renderer-vPJRRVNN.mjs.map} +1 -1
  389. package/dist/{renderer-DHUlVqST.mjs → renderer-vQrX7Qsw.mjs} +3 -3
  390. package/dist/{renderer-DHUlVqST.mjs.map → renderer-vQrX7Qsw.mjs.map} +1 -1
  391. package/dist/{renderer-P4OPsD82.mjs → renderer-wld_ZR0-.mjs} +3 -3
  392. package/dist/{renderer-P4OPsD82.mjs.map → renderer-wld_ZR0-.mjs.map} +1 -1
  393. package/dist/renderer-xEVoeq12.mjs +5 -0
  394. package/dist/renderer-ypw8fzVD.mjs +5 -0
  395. package/dist/{renderers-CP8CFWDs-D1FHpA7I.mjs → renderers-CP8CFWDs-DgKdGMvS.mjs} +4 -4
  396. package/dist/{renderers-CP8CFWDs-D1FHpA7I.mjs.map → renderers-CP8CFWDs-DgKdGMvS.mjs.map} +1 -1
  397. package/dist/signals/index.d.mts +6 -6
  398. package/dist/signals/index.mjs +8 -8
  399. package/dist/{signals-BwdVfK3p.mjs → signals-Cf9mfNGE.mjs} +4 -4
  400. package/dist/{signals-BwdVfK3p.mjs.map → signals-Cf9mfNGE.mjs.map} +1 -1
  401. package/dist/src-CU_7ui4I.mjs +8373 -0
  402. package/dist/src-CU_7ui4I.mjs.map +1 -0
  403. package/package.json +68 -58
  404. package/dist/dist-DMa2BbYs.mjs.map +0 -1
  405. package/dist/index-B0BZMhtw.d.mts.map +0 -1
  406. package/dist/index-CJkihekp.d.mts.map +0 -1
  407. package/dist/index-DGe83M-p.d.mts.map +0 -1
  408. package/dist/index.d.mts.map +0 -1
  409. package/dist/index.mjs.map +0 -1
  410. package/dist/preview/index.d.mts.map +0 -1
  411. package/dist/preview-engine/chunk-PCWWKYFO.mjs +0 -1
  412. package/dist/preview-engine/renderers-2AD6AHAO.mjs +0 -1
  413. package/dist/preview-engine/renderers-37UYW266.mjs +0 -1
  414. package/dist/preview-engine/renderers-4I4UDLDR.mjs +0 -1
  415. package/dist/preview-engine/renderers-5EITT2FW.mjs +0 -1
  416. package/dist/preview-engine/renderers-AIRDDXRB.mjs +0 -1
  417. package/dist/preview-engine/renderers-BUOGMWAA.mjs +0 -1
  418. package/dist/preview-engine/renderers-EU5VM2S2.mjs +0 -1
  419. package/dist/preview-engine/renderers-GEPP3YKK.mjs +0 -1
  420. package/dist/preview-engine/renderers-IQNZQWYU.mjs +0 -1
  421. package/dist/preview-engine/renderers-JQ7AI473.mjs +0 -228
  422. package/dist/preview-engine/renderers-JTVCE5PV.mjs +0 -1
  423. package/dist/preview-engine/renderers-KCNUETAD.mjs +0 -1
  424. package/dist/preview-engine/renderers-KKBHXAWS.mjs +0 -1
  425. package/dist/preview-engine/renderers-LER7SUT2.mjs +0 -1
  426. package/dist/preview-engine/renderers-MOERLDWF.mjs +0 -1
  427. package/dist/preview-engine/renderers-O57YIIAO.mjs +0 -1
  428. package/dist/preview-engine/renderers-OPUIAD7I.mjs +0 -1
  429. package/dist/preview-engine/renderers-PENUAXDD.mjs +0 -1
  430. package/dist/preview-engine/renderers-PFCI7ZFW.mjs +0 -1
  431. package/dist/preview-engine/renderers-Q4HDP2IE.mjs +0 -1
  432. package/dist/preview-engine/renderers-QMHUOKMM.mjs +0 -1
  433. package/dist/preview-engine/renderers-R26YPECG.mjs +0 -1
  434. package/dist/preview-engine/renderers-TAFDMFEA.mjs +0 -1
  435. package/dist/preview-engine/renderers-TMZLWQP2.mjs +0 -1
  436. package/dist/preview-engine/renderers-TP6ZMGU4.mjs +0 -1
  437. package/dist/preview-engine/renderers-TY63VTZB.mjs +0 -1
  438. package/dist/preview-engine/renderers-UCNQ536S.mjs +0 -1
  439. package/dist/preview-engine/renderers-WOZQDE4A.mjs +0 -1
  440. package/dist/preview-engine/renderers-XG3BDROH.mjs +0 -1
  441. package/dist/preview-engine/renderers-XS4CFZWR.mjs +0 -1
  442. package/dist/preview-engine/renderers-ZQDMRWN7.mjs +0 -1
  443. package/dist/program-KwDdbC0-.mjs.map +0 -1
  444. package/dist/renderer-5C41E6gT.mjs +0 -5
  445. package/dist/renderer-6SXF9Ykm.mjs +0 -5
  446. package/dist/renderer-B2C2w3Wr.mjs +0 -5
  447. package/dist/renderer-B2QSfPYZ.mjs +0 -5
  448. package/dist/renderer-B5cQcMl1.mjs +0 -5
  449. package/dist/renderer-BDhD8Yab.mjs +0 -3
  450. package/dist/renderer-BSDdTHDh.mjs +0 -5
  451. package/dist/renderer-BTUjk8uY.mjs +0 -5
  452. package/dist/renderer-Bcey5Gvk.mjs +0 -5
  453. package/dist/renderer-Bd2MuOeJ.mjs +0 -5
  454. package/dist/renderer-Bd5A0zer.mjs +0 -5
  455. package/dist/renderer-CC-WlYa2.mjs +0 -5
  456. package/dist/renderer-Cb0qf1UG.mjs +0 -5
  457. package/dist/renderer-CfX13dgQ.mjs +0 -5
  458. package/dist/renderer-ChFkRLrv.mjs +0 -5
  459. package/dist/renderer-CjkfJj5R.mjs +0 -5
  460. package/dist/renderer-Ck7Lu6c9.mjs +0 -5
  461. package/dist/renderer-CuquqG_c.mjs +0 -5
  462. package/dist/renderer-Cwz2E4QD.mjs +0 -5
  463. package/dist/renderer-Czkt9YYp.mjs +0 -5
  464. package/dist/renderer-DFTIhSdJ.mjs +0 -5
  465. package/dist/renderer-DFaa-Ats.mjs +0 -5
  466. package/dist/renderer-DIHXKvPl.mjs +0 -5
  467. package/dist/renderer-DMzOqVM3.mjs +0 -5
  468. package/dist/renderer-DOId5U8x.mjs +0 -5
  469. package/dist/renderer-DQXFOup8.mjs +0 -5
  470. package/dist/renderer-DRt3BSTj.mjs +0 -5
  471. package/dist/renderer-Di_5vQ81.mjs +0 -6
  472. package/dist/renderer-DkmpsPIa.mjs +0 -5
  473. package/dist/renderer-Ds6wd9Gk.mjs +0 -5
  474. package/dist/renderer-DuuOlYIG.mjs +0 -3
  475. package/dist/renderer-Dv4p0lp9.mjs +0 -5
  476. package/dist/renderer-DzWoOlVc.mjs +0 -5
  477. package/dist/renderer-GbVNyv-E.mjs.map +0 -1
  478. package/dist/renderer-IOz63OWg.mjs +0 -5
  479. package/dist/renderer-JkSrsUa5.mjs +0 -5
  480. package/dist/renderer-Ocs1Djwu.mjs +0 -5
  481. package/dist/renderer-Wdn7m_uN.mjs +0 -5
  482. package/dist/renderer-mKpjaoE3.mjs +0 -5
  483. /package/dist/{chunk-GBe2k3y8.mjs → chunk-D7gtBK74.mjs} +0 -0
  484. /package/dist/{renderer-B-BcgA6d.mjs → renderer-B7fX0C62.mjs} +0 -0
@@ -1 +1 @@
1
- import{c as b}from"./chunk-VUFDQJ2B.mjs";import{a as l}from"./chunk-5JSSXOBB.mjs";import{l as n}from"./chunk-FSAELHVT.mjs";import{a as g}from"./chunk-6YJP57MZ.mjs";import{e as c}from"./chunk-BVF64D6H.mjs";c();var S={async extractFromChannels(a,u,r={}){let x=await b(),t=r.fps??24,p=r.targetWidth??512,e=await g.extractFeatures(x,a,u,t,r,p),i=e.channelSamples??{primary:new Float32Array(e.numFrames),beat:new Float32Array(e.numFrames),bass:new Float32Array(e.numFrames),energy:new Float32Array(e.numFrames)},y={nodeId:"audio_primary",channel:"primary",textureView:e.textureView,texture:e.texture,buffer:e.primaryBuffer,stats:e.stats.primary},w={nodeId:"audio_beat",channel:"beat",textureView:e.textureView,texture:e.texture,buffer:e.beatBuffer,stats:e.stats.beat},B={nodeId:"audio_bass",channel:"bass",textureView:e.textureView,texture:e.texture,buffer:e.bassBuffer,stats:e.stats.bass},F={nodeId:"audio_energy",channel:"energy",textureView:e.textureView,texture:e.texture,buffer:e.energyBuffer,stats:e.stats.energy},o=n(i.primary,t,y),m=n(i.beat,t,w),d=n(i.bass,t,B),f=n(i.energy,t,F);return{primary:o,beat:m,bass:d,energy:f,durationSec:e.durationSec,numFrames:e.numFrames,sampleRate:u,textureView:e.textureView,texture:e.texture,primaryBuffer:e.primaryBuffer,beatBuffer:e.beatBuffer,bassBuffer:e.bassBuffer,energyBuffer:e.energyBuffer,seekFrame(s){o.seekFrame?.(s),m.seekFrame?.(s),d.seekFrame?.(s),f.seekFrame?.(s)}}},async extract(a,u={}){let r=await l(a);if(!r||r.channels.length===0)throw new Error(`Failed to decode audio source for feature extraction: ${a}`);return S.extractFromChannels(r.channels,r.sampleRate,u)}};export{S as a};
1
+ import{c as b}from"./chunk-VUFDQJ2B.mjs";import{a as l}from"./chunk-AJLPRIXB.mjs";import{l as n}from"./chunk-RNFYEZLL.mjs";import{a as g}from"./chunk-6YJP57MZ.mjs";import{e as c}from"./chunk-BVF64D6H.mjs";c();var S={async extractFromChannels(a,u,r={}){let x=await b(),t=r.fps??24,p=r.targetWidth??512,e=await g.extractFeatures(x,a,u,t,r,p),i=e.channelSamples??{primary:new Float32Array(e.numFrames),beat:new Float32Array(e.numFrames),bass:new Float32Array(e.numFrames),energy:new Float32Array(e.numFrames)},y={nodeId:"audio_primary",channel:"primary",textureView:e.textureView,texture:e.texture,buffer:e.primaryBuffer,stats:e.stats.primary},w={nodeId:"audio_beat",channel:"beat",textureView:e.textureView,texture:e.texture,buffer:e.beatBuffer,stats:e.stats.beat},B={nodeId:"audio_bass",channel:"bass",textureView:e.textureView,texture:e.texture,buffer:e.bassBuffer,stats:e.stats.bass},F={nodeId:"audio_energy",channel:"energy",textureView:e.textureView,texture:e.texture,buffer:e.energyBuffer,stats:e.stats.energy},o=n(i.primary,t,y),m=n(i.beat,t,w),d=n(i.bass,t,B),f=n(i.energy,t,F);return{primary:o,beat:m,bass:d,energy:f,durationSec:e.durationSec,numFrames:e.numFrames,sampleRate:u,textureView:e.textureView,texture:e.texture,primaryBuffer:e.primaryBuffer,beatBuffer:e.beatBuffer,bassBuffer:e.bassBuffer,energyBuffer:e.energyBuffer,seekFrame(s){o.seekFrame?.(s),m.seekFrame?.(s),d.seekFrame?.(s),f.seekFrame?.(s)}}},async extract(a,u={}){let r=await l(a);if(!r||r.channels.length===0)throw new Error(`Failed to decode audio source for feature extraction: ${a}`);return S.extractFromChannels(r.channels,r.sampleRate,u)}};export{S as a};
@@ -1 +1 @@
1
- import{a as o}from"./chunk-YJ6GWVL4.mjs";import{a as pe}from"./chunk-E7DH7EPX.mjs";import{h as ie}from"./chunk-FSAELHVT.mjs";import{d,e as p}from"./chunk-BVF64D6H.mjs";p();p();p();p();p();p();function de(r){return typeof d<"u"?d.env?.[r]:void 0}function me(){let r=de("FRAMEFIELDS_STRICT_PROPS");return r==="1"||r==="true"}function ze(){return me()||de("NODE_ENV")!=="production"}var ue=new Set;function se(r){if(me())throw new Error(r);ue.has(r)||(ue.add(r),console.warn(`[framefields] ${r}`))}function ce(r){if(typeof r!="object"||r===null||Array.isArray(r)||ie(r))return!1;let e=Object.getPrototypeOf(r);return e===Object.prototype||e===null}function Fe(r,e){let n=Array.from({length:e.length+1},(l,i)=>i);for(let l=1;l<=r.length;l++){let i=n[0];n[0]=l;for(let s=1;s<=e.length;s++){let c=n[s];n[s]=Math.min(n[s]+1,n[s-1]+1,i+(r[l-1]===e[s-1]?0:1)),i=c}}return n[e.length]}function Ve(r,e){let n,l=Number.POSITIVE_INFINITY,i=r.toLowerCase();for(let c of e){let u=c.toLowerCase(),m=u.includes(i)||i.includes(u)?1:Fe(i,u);m<l&&(l=m,n=c)}return n&&l<=Math.max(2,Math.ceil(r.length/2))?` Did you mean "${n}"?`:` Known props: ${e.join(", ")}.`}function qe(r,e,n){if(typeof e=="number"){let{min:l,max:i}=n,s=l!==void 0&&e<l,c=i!==void 0&&e>i;if(s||c||Number.isNaN(e)){let u=l!==void 0&&i!==void 0?`${l} to ${i}`:l!==void 0?`\u2265 ${l}`:`\u2264 ${i}`;se(Number.isNaN(e)?`${r} is NaN`:`${r} = ${e} is outside ${u}`)}return}n.enum&&(typeof e=="string"||typeof e=="boolean")&&!n.enum.includes(e)&&se(`${r} = ${JSON.stringify(e)} is not one of ${n.enum.map(l=>JSON.stringify(l)).join(", ")}`)}function be(r,e,n){let l=Object.keys(n);for(let[i,s]of Object.entries(e)){if(s===void 0)continue;let c=n[i];if(!c){se(`${r}: unknown prop "${i}".${Ve(i,l)}`);continue}ie(s)||typeof s=="function"||(c.props&&ce(s)?be(`${r}.${i}`,s,c.props):qe(`${r}.${i}`,s,c))}}function Xe(r){return typeof r=="object"&&r!==null?structuredClone(r):r}function t(r,e,n,l){let i=n;ze()&&be(r,i,l);let s={};for(let[c,u]of Object.entries(e))s[c]=Xe(u);for(let[c,u]of Object.entries(i)){if(u===void 0)continue;let m=s[c];s[c]=ce(m)&&ce(u)?{...m,...Object.fromEntries(Object.entries(u).filter(([,Oe])=>Oe!==void 0))}:u}return s}p();var a={Ascii:{cellSize:{min:4,max:64},colorMode:{enum:["mono","source","green"]},fg:{},bg:{},contrast:{min:.5,max:3},invert:{}},AudioCompressor:{threshold:{min:-60,max:0},ratio:{min:1,max:100},attack:{min:1e-4,max:1},release:{min:.01,max:5},knee:{min:0,max:24},makeupGain:{min:0,max:24}},AudioDelay:{delayTime:{min:.001,max:5},feedback:{min:0,max:.95},wet:{min:0,max:1},dry:{min:0,max:1},pingPong:{}},AudioFade:{fadeInDuration:{min:0,max:60},fadeOutDuration:{min:0,max:60},fadeInCurve:{enum:["linear","exponential","scurve"]},fadeOutCurve:{enum:["linear","exponential","scurve"]}},AudioNoiseGate:{threshold:{min:-120,max:0},attack:{min:1e-4,max:1},hold:{min:.001,max:5},release:{min:.01,max:5},range:{min:-120,max:0}},AudioParametricEq:{type:{enum:["lowShelf","highShelf","peak","lowPass","highPass","notch"]},frequency:{min:20,max:2e4},gain:{min:-24,max:24},q:{min:.01,max:10}},AudioReverb:{roomSize:{min:0,max:.98},damping:{min:0,max:1},wet:{min:0,max:1},dry:{min:0,max:1},width:{min:0,max:1}},Blur:{blurType:{enum:["Gaussian","Box","Median","Motion","Bilateral","Edge-preserving","Radial","Zoom"]},strength:{min:0,max:100},angle:{min:0,max:360},sigmaColor:{min:.01,max:1},centerX:{min:0,max:1},centerY:{min:0,max:1},partialBlur:{},radius:{min:.01,max:1},radiusY:{min:0,max:1},shape:{enum:["ellipse","circle","rect"]}},CameraParallax3D:{motionPreset:{enum:["Custom","DollyZoom","Orbit","FlyThrough","HandheldShake","RackFocus"]},panX:{min:-1,max:1},panY:{min:-1,max:1},dollyZ:{min:-1,max:1},fov:{min:15,max:120},parallaxAmount:{min:0,max:2},dofAperture:{min:0,max:1},focusPlane:{min:0,max:1},edgeDilation:{min:0,max:1},depthInvert:{}},ChannelMerger:{colorSpace:{enum:["RGBA","HSLA","CMYK","LAB"]},defaultChannel4:{min:0,max:1}},ChannelSplitter:{colorSpace:{enum:["RGBA","HSLA","CMYK","LAB"]}},ColorBalance:{shadows:{props:{cyanRed:{min:-100,max:100},magentaGreen:{min:-100,max:100},yellowBlue:{min:-100,max:100}}},midtones:{props:{cyanRed:{min:-100,max:100},magentaGreen:{min:-100,max:100},yellowBlue:{min:-100,max:100}}},highlights:{props:{cyanRed:{min:-100,max:100},magentaGreen:{min:-100,max:100},yellowBlue:{min:-100,max:100}}},preserveLuminosity:{}},ColorKey:{keyColor:{},similarity:{min:0,max:1},smoothness:{min:0,max:1},spillSuppression:{min:0,max:1},colorSpace:{enum:["YUV","RGB"]},spillSuppressionType:{enum:["Desaturate","Neutralize","None"]}},Contour:{levels:{min:2,max:64},lineWidth:{min:.5,max:8},lineColor:{},fill:{enum:["source","flat","none"]},fillColor:{},smoothing:{min:0,max:8}},CornerPin:{points:{}},CRT:{scanlines:{min:0,max:1},lineCount:{min:100,max:2160},curvature:{min:0,max:1},mask:{min:0,max:1},vignette:{min:0,max:1},noise:{min:0,max:1},flicker:{min:0,max:1},tracking:{min:0,max:1},chroma:{min:0,max:20}},Datamosh:{keyframes:{},strength:{min:0,max:10},bleed:{min:0,max:1},warmup:{min:1,max:240}},DisplacementMap:{strengthX:{min:0,max:500},strengthY:{min:0,max:500},xChannel:{enum:["Red","Green","Blue","Alpha","Luminance"]},yChannel:{enum:["Red","Green","Blue","Alpha","Luminance"]},wrapMode:{enum:["Clamp","Repeat","Mirror"]}},Dither:{mode:{enum:["bayer","noise","halftone"]},levels:{min:2,max:16},scale:{min:1,max:16},monochrome:{},dark:{},light:{}},ExtractLUT:{strategy:{enum:["deterministic","statistical"]},samplePoints:{min:10,max:500}},Flip:{horizontal:{},vertical:{},diagonal:{},mode:{enum:["horizontal","vertical","both","diagonal","antiDiagonal","custom"]},symmetry:{enum:["none","leftToRight","rightToLeft","topToBottom","bottomToTop","quadrant"]}},Gooey:{radius:{min:1,max:60},threshold:{min:0,max:1},softness:{min:.001,max:.5}},Iridescence:{strength:{min:0,max:1},scale:{min:.1,max:10},shift:{min:-3600,max:3600},mode:{enum:["luminance","relief"]}},Kaleidoscope:{segments:{min:2,max:32},rotation:{min:-3600,max:3600},centerX:{min:0,max:1},centerY:{min:0,max:1},zoom:{min:.2,max:4}},KenBurns:{keyframes:{},motionBlurSize:{min:0,max:10},movementStyle:{enum:["spline","direct"]},aspectRatio:{enum:["input","16:9","9:16","21:9","9:21","1:1","4:3","3:2","2:3","4:5","5:4"]}},LayerStyle:{dropShadow:{props:{enabled:{},color:{},opacity:{min:0,max:1},angle:{min:0,max:360},distance:{min:0,max:500},spread:{min:0,max:100},size:{min:0,max:250},blendMode:{}}},innerShadow:{props:{enabled:{},color:{},opacity:{min:0,max:1},angle:{min:0,max:360},distance:{min:0,max:500},choke:{min:0,max:100},size:{min:0,max:250},blendMode:{}}},outerGlow:{props:{enabled:{},color:{},opacity:{min:0,max:1},size:{min:0,max:250},spread:{min:0,max:100},blendMode:{}}},innerGlow:{props:{enabled:{},color:{},opacity:{min:0,max:1},size:{min:0,max:250},spread:{min:0,max:100},blendMode:{}}},stroke:{props:{enabled:{},size:{min:0,max:100},position:{enum:["inside","center","outside"]},color:{},opacity:{min:0,max:1},blendMode:{}}},bevelEmboss:{props:{enabled:{},style:{enum:["InnerBevel","OuterBevel","Emboss","PillowEmboss"]},technique:{enum:["Smooth","ChiselHard","ChiselSoft"]},depth:{min:1,max:1e3},direction:{enum:["Up","Down"]},size:{min:0,max:250},soften:{min:0,max:50},angle:{min:0,max:360},altitude:{min:0,max:90},highlightColor:{},highlightOpacity:{min:0,max:1},shadowColor:{},shadowOpacity:{min:0,max:1}}},colorOverlay:{props:{enabled:{},color:{},opacity:{min:0,max:1},blendMode:{}}},dropShadowAngleHandleId:{},dropShadowDistanceHandleId:{},dropShadowSpreadHandleId:{},dropShadowSizeHandleId:{},dropShadowOpacityHandleId:{},innerShadowAngleHandleId:{},innerShadowDistanceHandleId:{},innerShadowChokeHandleId:{},innerShadowSizeHandleId:{},innerShadowOpacityHandleId:{},outerGlowSizeHandleId:{},outerGlowSpreadHandleId:{},outerGlowOpacityHandleId:{},innerGlowSizeHandleId:{},innerGlowSpreadHandleId:{},innerGlowOpacityHandleId:{},strokeSizeHandleId:{},strokeOpacityHandleId:{},bevelEmbossDepthHandleId:{},bevelEmbossSizeHandleId:{},bevelEmbossSoftenHandleId:{},bevelEmbossAngleHandleId:{},bevelEmbossAltitudeHandleId:{},bevelEmbossHighlightOpacityHandleId:{},bevelEmbossShadowOpacityHandleId:{},colorOverlayOpacityHandleId:{}},Liquify:{operations:{}},MaskMath:{operation:{enum:["Union","Intersect","Subtract","Difference","Invert","Dilate","Erode","Choke","Feather"]},radius:{min:0,max:200},threshold:{min:0,max:1},clampMin:{min:0,max:1},clampMax:{min:0,max:1},channelA:{enum:["Alpha","Luminance","Red","Green","Blue"]},channelB:{enum:["Alpha","Luminance","Red","Green","Blue"]},binarize:{},invertResult:{},outputFormat:{enum:["WhiteWithAlpha","GrayscaleRGB","AlphaOnly","PassthroughRGB"]}},MeshWarp:{cols:{min:2,max:12},rows:{min:2,max:12},points:{}},NoiseGenerator:{noiseType:{enum:["Perlin","Simplex","Voronoi"]},outputType:{enum:["Image","Video"]},width:{min:16,max:4096},height:{min:16,max:4096},scale:{min:.1,max:100},octaves:{min:1,max:8},persistence:{min:0,max:1},lacunarity:{min:1,max:4},speed:{min:0,max:10},colorStart:{},colorEnd:{},durationMs:{min:1,max:6e4},fps:{min:1,max:120}},OpArt:{pattern:{enum:["stripes","rings","checker","waves"]},frequency:{min:2,max:300},angle:{min:-360,max:360},warp:{min:0,max:3},source:{min:0,max:1},colorA:{},colorB:{}},Paint:{width:{min:1,max:16384},height:{min:1,max:16384},maintainAspect:{},aspectRatio:{},backgroundColor:{},strokes:{}},Painterly:{style:{enum:["oil","watercolor"]},radius:{min:2,max:12},edgeDarkening:{min:0,max:1},paper:{min:0,max:1},saturation:{min:0,max:2}},PatchHeal:{patches:{},centerX:{min:0,max:1},centerY:{min:0,max:1},offsetX:{min:-4096,max:4096},offsetY:{min:-4096,max:4096},radius:{min:1,max:500},sourceRadius:{min:1,max:500},feather:{min:0,max:100},opacity:{min:0,max:1},mode:{enum:["Clone","SeamlessHeal","TextureTransfer"]}},Pixelate:{size:{min:1,max:256},shape:{enum:["square","circle","diamond"]},gap:{min:0,max:.9}},Posterize:{levels:{min:2,max:64},palette:{enum:["none","gameboy","teletext","cga","pico8","c64","grayscale","sepia","custom"]},colors:{},dither:{min:0,max:1},pixelSize:{min:1,max:64}},ProceduralVFX:{effectType:{enum:["Smoke","Fire","Rain","Sparks","Snow","Dust","Lightning","Magic","LensFlare","Embers","EnergyBeam","Aurora"]},outputType:{enum:["Image","Video"]},width:{min:16,max:4096},height:{min:16,max:4096},density:{min:0,max:1},scale:{min:.001,max:10},speed:{min:0,max:10},intensity:{min:0,max:1},seed:{min:0,max:1e6},colorStart:{},colorEnd:{},durationMs:{min:100,max:1e5},fps:{min:1,max:120}},RefineEdge:{decontaminateAmount:{min:0,max:1},radius:{min:.5,max:50},smooth:{min:0,max:100},feather:{min:0,max:50},shiftEdge:{min:-100,max:100},matteChannel:{enum:["Alpha","Luminance","Red","Green","Blue"]},outputMode:{enum:["Composite","MatteOnly","DecontaminatedRGB"]}},RefractionCaustics3D:{ior:{min:1,max:2.5},dispersion:{min:0,max:.2},refractionScale:{min:0,max:2},causticBrightness:{min:0,max:2},causticScale:{min:.1,max:5},fluidRipples:{min:0,max:1},rippleSpeed:{min:0,max:5},roughness:{min:0,max:1},specularIntensity:{min:0,max:2},lightPosX:{min:0,max:1},lightPosY:{min:0,max:1},tintColor:{},tintStrength:{min:0,max:1},depthInvert:{},depthScale:{min:.1,max:5}},ResizerScaler:{aspectRatioPreset:{enum:["9:16","16:9","1:1","4:5","21:9","custom"]},resolutionPreset:{enum:["4k","1080p","720p","480p","custom"]},targetWidth:{min:1,max:8192},targetHeight:{min:1,max:8192},fitMode:{enum:["cover","contain","stretch","manual"]},zoom:{min:1,max:1e3},offsetX:{min:-8192,max:8192},offsetY:{min:-8192,max:8192},backgroundMode:{enum:["solid","blurred","gradient","transparent"]},backgroundColor:{},backgroundColor2:{},blurRadius:{min:0,max:100},backgroundBrightness:{min:0,max:1},anchorX:{enum:["left","center","right"]},anchorY:{enum:["top","center","bottom"]}},RGBSplit:{amount:{min:0,max:200},angle:{min:-360,max:360},radial:{}},Rotate:{angle:{},fit:{enum:["cover","contain","fill"]},scale:{min:.01,max:20}},StereoPanning:{pan:{min:-1,max:1}},Toon:{levels:{min:2,max:12},edgeThreshold:{min:0,max:1},edgeWidth:{min:.5,max:4},edgeColor:{},saturation:{min:0,max:2}},Trails:{decay:{min:0,max:1},mode:{enum:["blend","over","add","max"]},zoom:{min:.5,max:2},rotation:{min:-45,max:45},offsetX:{min:-500,max:500},offsetY:{min:-500,max:500},hueShift:{min:-180,max:180},warmup:{min:0,max:240}},Vignette:{strength:{min:0,max:100},radius:{min:.1,max:2},softness:{min:0,max:1},roundness:{min:0,max:1},centerX:{min:0,max:1},centerY:{min:0,max:1}}};var Ke={cellSize:10,colorMode:"mono",fg:"#e8e8e8",bg:"#0b0b0b",contrast:1.2,invert:!1},b=class extends o{op="Ascii";domain="visual";constructor(e={}){super(t("Ascii",Ke,e,a.Ascii))}},Ye={threshold:-24,ratio:4,attack:.003,release:.25,knee:6,makeupGain:0},f=class extends o{op="AudioCompressor";domain="audio";constructor(e={}){super(t("AudioCompressor",Ye,e,a.AudioCompressor))}},We={delayTime:.25,feedback:.4,wet:.3,dry:1,pingPong:!1},P=class extends o{op="AudioDelay";domain="audio";constructor(e={}){super(t("AudioDelay",We,e,a.AudioDelay))}},Ne={fadeInDuration:0,fadeOutDuration:0,fadeInCurve:"linear",fadeOutCurve:"linear"},h=class extends o{op="AudioFade";domain="audio";constructor(e={}){super(t("AudioFade",Ne,e,a.AudioFade))}},Ue={threshold:-40,attack:.005,hold:.05,release:.1,range:-80},y=class extends o{op="AudioNoiseGate";domain="audio";constructor(e={}){super(t("AudioNoiseGate",Ue,e,a.AudioNoiseGate))}},je={type:"peak",frequency:1e3,gain:0,q:1},g=class extends o{op="AudioParametricEq";domain="audio";constructor(e={}){super(t("AudioParametricEq",je,e,a.AudioParametricEq))}},$e={roomSize:.5,damping:.5,wet:.3,dry:1,width:1},x=class extends o{op="AudioReverb";domain="audio";constructor(e={}){super(t("AudioReverb",$e,e,a.AudioReverb))}},Ze={blurType:"Gaussian",strength:5,angle:0,sigmaColor:.1,centerX:.5,centerY:.5,partialBlur:!1,radius:.3,radiusY:0,shape:"circle"},le=class extends o{op="Blur";domain="visual";constructor(e={}){super(t("Blur",Ze,e,a.Blur))}},_e={motionPreset:"DollyZoom",panX:0,panY:0,dollyZ:0,fov:50,parallaxAmount:.6,dofAperture:.3,focusPlane:.4,edgeDilation:.5,depthInvert:!1},v=class extends o{op="CameraParallax3D";domain="visual";constructor(e={}){super(t("CameraParallax3D",_e,e,a.CameraParallax3D))}},Je={colorSpace:"RGBA",defaultChannel4:1},S=class extends o{op="ChannelMerger";domain="visual";constructor(e={}){super(t("ChannelMerger",Je,e,a.ChannelMerger))}},Qe={colorSpace:"RGBA"},C=class extends o{op="ChannelSplitter";domain="visual";constructor(e={}){super(t("ChannelSplitter",Qe,e,a.ChannelSplitter))}},er={shadows:{cyanRed:0,magentaGreen:0,yellowBlue:0},midtones:{cyanRed:0,magentaGreen:0,yellowBlue:0},highlights:{cyanRed:0,magentaGreen:0,yellowBlue:0},preserveLuminosity:!0},E=class extends o{op="ColorBalance";domain="visual";constructor(e={}){super(t("ColorBalance",er,e,a.ColorBalance))}},rr={keyColor:"#00ff00",similarity:.4,smoothness:.1,spillSuppression:.2,colorSpace:"YUV",spillSuppressionType:"Desaturate"},A=class extends o{op="ColorKey";domain="visual";constructor(e={}){super(t("ColorKey",rr,e,a.ColorKey))}},or={levels:14,lineWidth:1.2,lineColor:"#2b1d0e",fill:"source",fillColor:"#f3ead8",smoothing:2},w=class extends o{op="Contour";domain="visual";constructor(e={}){super(t("Contour",or,e,a.Contour))}},ar={},R=class extends o{op="CornerPin";domain="visual";constructor(e={}){super(t("CornerPin",ar,e,a.CornerPin))}},tr={scanlines:.45,lineCount:540,curvature:.12,mask:.25,vignette:.35,noise:.08,flicker:.03,tracking:0,chroma:0},M=class extends o{op="CRT";domain="visual";constructor(e={}){super(t("CRT",tr,e,a.CRT))}},nr={keyframes:[],strength:1,bleed:0,warmup:48},D=class extends o{op="Datamosh";domain="visual";constructor(e={}){super(t("Datamosh",nr,e,a.Datamosh))}},lr={strengthX:50,strengthY:50,xChannel:"Red",yChannel:"Green",wrapMode:"Clamp"},k=class extends o{op="DisplacementMap";domain="visual";constructor(e={}){super(t("DisplacementMap",lr,e,a.DisplacementMap))}},ir={mode:"bayer",levels:2,scale:2,monochrome:!0,dark:"#111111",light:"#f2efe6"},B=class extends o{op="Dither";domain="visual";constructor(e={}){super(t("Dither",ir,e,a.Dither))}},sr={strategy:"deterministic",samplePoints:150},T=class extends o{op="ExtractLUT";domain="visual";constructor(e={}){super(t("ExtractLUT",sr,e,a.ExtractLUT))}},cr={horizontal:!0,vertical:!1,diagonal:!1,mode:"horizontal",symmetry:"none"},G=class extends o{op="Flip";domain="visual";constructor(e={}){super(t("Flip",cr,e,a.Flip))}},pr={radius:12,threshold:.5,softness:.04},I=class extends o{op="Gooey";domain="visual";constructor(e={}){super(t("Gooey",pr,e,a.Gooey))}},ur={strength:.6,scale:2,shift:0,mode:"relief"},H=class extends o{op="Iridescence";domain="visual";constructor(e={}){super(t("Iridescence",ur,e,a.Iridescence))}},dr={segments:6,rotation:0,centerX:.5,centerY:.5,zoom:1},L=class extends o{op="Kaleidoscope";domain="visual";constructor(e={}){super(t("Kaleidoscope",dr,e,a.Kaleidoscope))}},mr={keyframes:[],motionBlurSize:1.5,movementStyle:"spline",aspectRatio:"input"},O=class extends o{op="KenBurns";domain="visual";constructor(e={}){super(t("KenBurns",mr,e,a.KenBurns))}},br={dropShadow:{enabled:!1,color:"#000000",opacity:.75,angle:120,distance:10,spread:0,size:10,blendMode:"multiply"},innerShadow:{enabled:!1,color:"#000000",opacity:.75,angle:120,distance:5,choke:0,size:5,blendMode:"multiply"},outerGlow:{enabled:!1,color:"#ffffff",opacity:.75,size:15,spread:0,blendMode:"screen"},innerGlow:{enabled:!1,color:"#ffffff",opacity:.75,size:15,spread:0,blendMode:"screen"},stroke:{enabled:!1,size:2,position:"outside",color:"#ffffff",opacity:1,blendMode:"normal"},bevelEmboss:{enabled:!1,style:"InnerBevel",technique:"Smooth",depth:100,direction:"Up",size:5,soften:0,angle:120,altitude:30,highlightColor:"#ffffff",highlightOpacity:.75,shadowColor:"#000000",shadowOpacity:.75},colorOverlay:{enabled:!1,color:"#ff0000",opacity:1,blendMode:"normal"}},z=class extends o{op="LayerStyle";domain="visual";constructor(e={}){super(t("LayerStyle",br,e,a.LayerStyle))}},fr={operations:[]},F=class extends o{op="Liquify";domain="visual";constructor(e={}){super(t("Liquify",fr,e,a.Liquify))}},Pr={operation:"Union",radius:0,threshold:.5,clampMin:0,clampMax:1,channelA:"Alpha",channelB:"Alpha",binarize:!1,invertResult:!1,outputFormat:"WhiteWithAlpha"},V=class extends o{op="MaskMath";domain="visual";constructor(e={}){super(t("MaskMath",Pr,e,a.MaskMath))}},hr={cols:3,rows:3},q=class extends o{op="MeshWarp";domain="visual";constructor(e={}){super(t("MeshWarp",hr,e,a.MeshWarp))}},yr={noiseType:"Perlin",outputType:"Image",width:512,height:512,scale:10,octaves:4,persistence:.5,lacunarity:2,speed:1,colorStart:"#000000",colorEnd:"#ffffff",durationMs:5e3,fps:30},X=class extends o{op="NoiseGenerator";domain="visual";constructor(e={}){super(t("NoiseGenerator",yr,e,a.NoiseGenerator))}},gr={pattern:"stripes",frequency:48,angle:0,warp:.6,source:1,colorA:"#0a0a0a",colorB:"#f5f5f5"},K=class extends o{op="OpArt";domain="visual";constructor(e={}){super(t("OpArt",gr,e,a.OpArt))}},xr={width:1080,height:1080,maintainAspect:!0,backgroundColor:"#ffffff"},Y=class extends o{op="Paint";domain="visual";constructor(e={}){super(t("Paint",xr,e,a.Paint))}},vr={style:"oil",radius:5,edgeDarkening:.5,paper:.3,saturation:1.05},W=class extends o{op="Painterly";domain="visual";constructor(e={}){super(t("Painterly",vr,e,a.Painterly))}},Sr={centerX:.5,centerY:.5,offsetX:50,offsetY:0,radius:25,sourceRadius:25,feather:50,opacity:1,mode:"SeamlessHeal"},N=class extends o{op="PatchHeal";domain="visual";constructor(e={}){super(t("PatchHeal",Sr,e,a.PatchHeal))}},Cr={size:12,shape:"square",gap:0},U=class extends o{op="Pixelate";domain="visual";constructor(e={}){super(t("Pixelate",Cr,e,a.Pixelate))}},Er={levels:6,palette:"none",colors:[],dither:0,pixelSize:1},j=class extends o{op="Posterize";domain="visual";constructor(e={}){super(t("Posterize",Er,e,a.Posterize))}},Ar={effectType:"Smoke",outputType:"Video",width:1080,height:1080,density:.6,scale:.01,speed:1,intensity:.8,seed:1234,colorStart:"#ffffff",colorEnd:"#ff5500",durationMs:5e3,fps:30},$=class extends o{op="ProceduralVFX";domain="visual";constructor(e={}){super(t("ProceduralVFX",Ar,e,a.ProceduralVFX))}},wr={decontaminateAmount:.7,radius:2,smooth:5,feather:.5,shiftEdge:0,matteChannel:"Alpha",outputMode:"Composite"},Z=class extends o{op="RefineEdge";domain="visual";constructor(e={}){super(t("RefineEdge",wr,e,a.RefineEdge))}},Rr={ior:1.52,dispersion:.04,refractionScale:.5,causticBrightness:.6,causticScale:1,fluidRipples:0,rippleSpeed:1,roughness:0,specularIntensity:.8,lightPosX:.5,lightPosY:.2,tintColor:"#ffffff",tintStrength:0,depthInvert:!1,depthScale:1},_=class extends o{op="RefractionCaustics3D";domain="visual";constructor(e={}){super(t("RefractionCaustics3D",Rr,e,a.RefractionCaustics3D))}},Mr={aspectRatioPreset:"16:9",resolutionPreset:"1080p",targetWidth:1920,targetHeight:1080,fitMode:"contain",zoom:100,offsetX:0,offsetY:0,backgroundMode:"solid",backgroundColor:"#000000FF",backgroundColor2:"#000000FF",blurRadius:40,backgroundBrightness:.6,anchorX:"center",anchorY:"center"},J=class extends o{op="ResizerScaler";domain="visual";constructor(e={}){super(t("ResizerScaler",Mr,e,a.ResizerScaler))}},Dr={amount:8,angle:0,radial:!1},Q=class extends o{op="RGBSplit";domain="visual";constructor(e={}){super(t("RGBSplit",Dr,e,a.RGBSplit))}},kr={angle:90,fit:"cover",scale:1},ee=class extends o{op="Rotate";domain="visual";constructor(e={}){super(t("Rotate",kr,e,a.Rotate))}},Br={pan:0},re=class extends o{op="StereoPanning";domain="audio";constructor(e={}){super(t("StereoPanning",Br,e,a.StereoPanning))}},Tr={levels:4,edgeThreshold:.2,edgeWidth:1,edgeColor:"#111111",saturation:1.15},oe=class extends o{op="Toon";domain="visual";constructor(e={}){super(t("Toon",Tr,e,a.Toon))}},Gr={decay:.9,mode:"blend",zoom:1,rotation:0,offsetX:0,offsetY:0,hueShift:0,warmup:60},ae=class extends o{op="Trails";domain="visual";constructor(e={}){super(t("Trails",Gr,e,a.Trails))}},Ir={strength:50,radius:1,softness:.5,roundness:.5,centerX:.5,centerY:.5},te=class extends o{op="Vignette";domain="visual";constructor(e={}){super(t("Vignette",Ir,e,a.Vignette))}};function Hr(r){return{partialBlur:!0,centerX:r.center.x,centerY:r.center.y,radius:r.bounds.width.multiply(.55),radiusY:r.bounds.height.multiply(.55),shape:"ellipse",strength:r.active.multiply(25)}}var ne=class extends le{constructor(e={}){let{track:n,...l}=e;super(n?{...Hr(n),...Lr(l)}:l)}};function Lr(r){return Object.fromEntries(Object.entries(r).filter(([,e])=>e!==void 0))}p();var Or={ascii:r=>new b(r),audioCompressor:r=>new f(r),audioDelay:r=>new P(r),audioFade:r=>new h(r),audioNoiseGate:r=>new y(r),audioParametricEq:r=>new g(r),audioReverb:r=>new x(r),blur:r=>new ne(r),cameraParallax3D:r=>new v(r),channelMerger:r=>new S(r),channelSplitter:r=>new C(r),colorBalance:r=>new E(r),colorKey:r=>new A(r),contour:r=>new w(r),cornerPin:r=>new R(r),cRT:r=>new M(r),datamosh:r=>new D(r),displacementMap:r=>new k(r),dither:r=>new B(r),extractLUT:r=>new T(r),flip:r=>new G(r),gooey:r=>new I(r),iridescence:r=>new H(r),kaleidoscope:r=>new L(r),kenBurns:r=>new O(r),layerStyle:r=>new z(r),liquify:r=>new F(r),maskMath:r=>new V(r),meshWarp:r=>new q(r),noiseGenerator:r=>new X(r),opArt:r=>new K(r),paint:r=>new Y(r),painterly:r=>new W(r),patchHeal:r=>new N(r),pixelate:r=>new U(r),posterize:r=>new j(r),proceduralVFX:r=>new $(r),refineEdge:r=>new Z(r),refractionCaustics3D:r=>new _(r),resizerScaler:r=>new J(r),rGBSplit:r=>new Q(r),rotate:r=>new ee(r),stereoPanning:r=>new re(r),toon:r=>new oe(r),trails:r=>new ae(r),vignette:r=>new te(r)};var fe=class extends o{op="Levels";domain="visual";constructor(e={}){let n={inBlack:0,inWhite:1,outBlack:0,outWhite:1};super({master:e.master??{...n},red:e.red??{...n},green:e.green??{...n},blue:e.blue??{...n},...e})}},Pe=class extends o{op="FilmGrain";domain="visual";constructor(e={}){super({strength:e.strength??15,size:e.size??1.5,monochrome:e.monochrome??!0,animated:e.animated??!0,speed:e.speed??50,shadows:e.shadows??.2,midtones:e.midtones??1,highlights:e.highlights??.2,...e})}},he=class extends o{op;domain="visual";constructor(e,n={}){super(n),this.op=e}},ye=class extends o{op="AudioSignalExtractor";domain="audio";constructor(e={}){super({extractionMode:e.extractionMode??"rms_envelope",attackMs:e.attackMs??10,releaseMs:e.releaseMs??120,sensitivity:e.sensitivity??1,noiseFloorDb:e.noiseFloorDb??-48,dynamicRangeDb:e.dynamicRangeDb??48,autoRange:e.autoRange??!0,smoothing:e.smoothing??.15,curve:e.curve??"linear",beatThreshold:e.beatThreshold??.08,beatDecayMs:e.beatDecayMs??80,previewMode:e.previewMode??"envelope",nodeId:e.nodeId??"audio_extractor",...e})}async extract(e,n={}){return pe.extract(e,{extractionMode:this.extractionMode,attackMs:this.attackMs,releaseMs:this.releaseMs,sensitivity:this.sensitivity,noiseFloorDb:this.noiseFloorDb,dynamicRangeDb:this.dynamicRangeDb,smoothing:this.smoothing,curve:this.curve,beatThreshold:this.beatThreshold,beatDecayMs:this.beatDecayMs,previewMode:this.previewMode,...n})}},ge=class extends o{op="Curves";domain="visual";constructor(e={}){super({...e,curveType:e.curveType??"rgb",master:e.master??[{x:0,y:0},{x:1,y:1}],red:e.red??[{x:0,y:0},{x:1,y:1}],green:e.green??[{x:0,y:0},{x:1,y:1}],blue:e.blue??[{x:0,y:0},{x:1,y:1}],hueVsHue:e.hueVsHue??[{x:0,y:.5},{x:1,y:.5}],hueVsSat:e.hueVsSat??[{x:0,y:1},{x:1,y:1}],lumVsSat:e.lumVsSat??[{x:0,y:1},{x:1,y:1}],satVsSat:e.satVsSat??[{x:0,y:1},{x:1,y:1}]})}},xe=class extends o{op="SelectiveColor";domain="visual";constructor(e={}){let n={cyan:0,magenta:0,yellow:0,black:0};super({...e,method:e.method??"Relative",reds:{...n,...e.reds},yellows:{...n,...e.yellows},greens:{...n,...e.greens},cyans:{...n,...e.cyans},blues:{...n,...e.blues},magentas:{...n,...e.magentas},whites:{...n,...e.whites},neutrals:{...n,...e.neutrals},blacks:{...n,...e.blacks}})}},ve=class extends o{op="GradientMap";domain="visual";constructor(e={}){let n=[{position:0,color:"#000000"},{position:1,color:"#ffffff"}];super({...e,stops:e.stops??n,smooth:e.smooth??!0,dither:e.dither??!0,opacity:e.opacity??1})}},Se=class extends o{op="ShadowsHighlights";domain="visual";constructor(e={}){super({...e,shadowAmount:e.shadowAmount??0,shadowTonalWidth:e.shadowTonalWidth??50,shadowRadius:e.shadowRadius??30,highlightAmount:e.highlightAmount??0,highlightTonalWidth:e.highlightTonalWidth??50,highlightRadius:e.highlightRadius??30,colorCorrection:e.colorCorrection??0,midtoneContrast:e.midtoneContrast??0})}},Ce=class extends o{op="ApplyLUT";domain="visual";constructor(e={}){super({...e,lutUrl:e.lutUrl??"",intensity:e.intensity??1})}},Ee=class extends o{op="UnsharpMask";domain="visual";constructor(e={}){super({...e,amount:e.amount??100,radius:e.radius??1.5,threshold:e.threshold??3})}},Ae=class extends o{op="HighPass";domain="visual";constructor(e={}){super({...e,radius:e.radius??3,contrastBoost:e.contrastBoost??1,monochrome:e.monochrome??!0})}},we=class extends o{op="HalftoneScreen";domain="visual";constructor(e={}){super({...e,mode:e.mode??"Monochrome",dotShape:e.dotShape??"Circle",frequency:e.frequency??30,angle:e.angle??45,contrast:e.contrast??1,dotColor:e.dotColor??"#000000",paperColor:e.paperColor??"#ffffff",smooth:e.smooth??!0,invert:e.invert??!1,cyanAngle:e.cyanAngle??15,magentaAngle:e.magentaAngle??75,yellowAngle:e.yellowAngle??0,blackAngle:e.blackAngle??45,opacity:e.opacity??1})}},Re=class extends o{op="TileOffset";domain="visual";constructor(e={}){super({...e,offsetX:e.offsetX??0,offsetY:e.offsetY??0,wrap:e.wrap??!0,edgeMode:e.edgeMode??"wrap"})}},Me=class extends o{op="MotionBlur";domain="visual";constructor(e={}){super({...e,shutterAngle:e.shutterAngle??180,samples:e.samples??16,maxVelocity:e.maxVelocity??64,shutterCurve:e.shutterCurve??"gaussian",depthAware:e.depthAware??!0})}},De=class extends o{op="SSAO";domain="visual";constructor(e={}){super({...e,radius:e.radius??45,bias:e.bias??.025,intensity:e.intensity??1.5,kernelSamples:e.kernelSamples??16,blurRadius:e.blurRadius??4})}},ke=class extends o{op="PBRGlass";domain="visual";constructor(e={}){super({...e,ior:e.ior??1.49,roughness:e.roughness??.15,transmission:e.transmission??.92,dispersion:e.dispersion??.015,fresnelPower:e.fresnelPower??5,tintColor:e.tintColor??"#ffffff"})}},Be=class extends o{op="DepthOfField";domain="visual";constructor(e={}){super({...e,focusDistance:e.focusDistance??500,focalLength:e.focalLength??50,aperture:e.aperture??2.8,maxBlur:e.maxBlur??16,quality:e.quality??"high"})}},Te=class extends o{op="Crop";domain="visual";constructor(e={}){super({cropType:e.cropType??"rect",leftPercentage:e.leftPercentage??0,topPercentage:e.topPercentage??0,widthPercentage:e.widthPercentage??100,heightPercentage:e.heightPercentage??100,roundness:e.roundness??0,...e})}},Ge=class extends o{op="Vision";domain="visual";constructor(e={}){super({enableDetection:e.enableDetection!==!1,enableSegmentation:e.enableSegmentation===!0,enablePose:e.enablePose===!0,enableMatte:e.enableMatte===!0,confidence:e.confidence??.3,variant:e.variant??"s",mode:e.mode??"passthrough",matteSource:e.matteSource??"instance",...e})}},Ie=class extends o{op="Relight3D";domain="visual";constructor(e={}){super({lightType:e.lightType??"Point",intensity:e.intensity??1,lightPosX:e.lightPosX??.5,lightPosY:e.lightPosY??.5,lightPosZ:e.lightPosZ??.3,lightRadius:e.lightRadius??.8,spotConeAngle:e.spotConeAngle??45,specularRoughness:e.specularRoughness??.35,specularStrength:e.specularStrength??.7,metallic:e.metallic??0,ambientIntensity:e.ambientIntensity??.4,volumetricDensity:e.volumetricDensity??.2,depthScale:e.depthScale??1,depthInvert:e.depthInvert??!1,lightColor:e.lightColor??"#ffffff",ambientColor:e.ambientColor??"#ffffff",normalMap:e.normalMap,...e})}},He=class extends o{op="TemporalDeflicker";domain="visual";constructor(e={}){super({blendWeight:e.blendWeight??.35,disocclusionThreshold:e.disocclusionThreshold??.15,maxMotionPixels:e.maxMotionPixels??64,scale:e.scale??.5,windowSize:e.windowSize??2,...e})}},Le=class extends o{op="Modulate";domain="visual";constructor(e={}){super({hue:e.hue??0,brightness:e.brightness??1,contrast:e.contrast??1,exposure:e.exposure??0,saturation:e.saturation??1,sepia:e.sepia??0,...e})}};export{a,b,f as c,P as d,h as e,y as f,g,x as h,v as i,S as j,C as k,E as l,A as m,w as n,R as o,M as p,D as q,k as r,B as s,T as t,G as u,I as v,H as w,L as x,O as y,z,F as A,V as B,q as C,X as D,K as E,Y as F,W as G,N as H,U as I,j as J,$ as K,Z as L,_ as M,J as N,Q as O,ee as P,re as Q,oe as R,ae as S,te as T,ne as U,Or as V,fe as W,Pe as X,he as Y,ye as Z,ge as _,xe as $,ve as aa,Se as ba,Ce as ca,Ee as da,Ae as ea,we as fa,Re as ga,Me as ha,De as ia,ke as ja,Be as ka,Te as la,Ge as ma,Ie as na,He as oa,Le as pa};
1
+ import{a as o}from"./chunk-2AV7HRRL.mjs";import{a as pe}from"./chunk-DKXKOUQR.mjs";import{h as ie}from"./chunk-RNFYEZLL.mjs";import{d,e as p}from"./chunk-BVF64D6H.mjs";p();p();p();p();p();p();function de(r){return typeof d<"u"?d.env?.[r]:void 0}function me(){let r=de("FRAMEFIELDS_STRICT_PROPS");return r==="1"||r==="true"}function ze(){return me()||de("NODE_ENV")!=="production"}var ue=new Set;function se(r){if(me())throw new Error(r);ue.has(r)||(ue.add(r),console.warn(`[framefields] ${r}`))}function ce(r){if(typeof r!="object"||r===null||Array.isArray(r)||ie(r))return!1;let e=Object.getPrototypeOf(r);return e===Object.prototype||e===null}function Fe(r,e){let n=Array.from({length:e.length+1},(l,i)=>i);for(let l=1;l<=r.length;l++){let i=n[0];n[0]=l;for(let s=1;s<=e.length;s++){let c=n[s];n[s]=Math.min(n[s]+1,n[s-1]+1,i+(r[l-1]===e[s-1]?0:1)),i=c}}return n[e.length]}function Ve(r,e){let n,l=Number.POSITIVE_INFINITY,i=r.toLowerCase();for(let c of e){let u=c.toLowerCase(),m=u.includes(i)||i.includes(u)?1:Fe(i,u);m<l&&(l=m,n=c)}return n&&l<=Math.max(2,Math.ceil(r.length/2))?` Did you mean "${n}"?`:` Known props: ${e.join(", ")}.`}function qe(r,e,n){if(typeof e=="number"){let{min:l,max:i}=n,s=l!==void 0&&e<l,c=i!==void 0&&e>i;if(s||c||Number.isNaN(e)){let u=l!==void 0&&i!==void 0?`${l} to ${i}`:l!==void 0?`\u2265 ${l}`:`\u2264 ${i}`;se(Number.isNaN(e)?`${r} is NaN`:`${r} = ${e} is outside ${u}`)}return}n.enum&&(typeof e=="string"||typeof e=="boolean")&&!n.enum.includes(e)&&se(`${r} = ${JSON.stringify(e)} is not one of ${n.enum.map(l=>JSON.stringify(l)).join(", ")}`)}function be(r,e,n){let l=Object.keys(n);for(let[i,s]of Object.entries(e)){if(s===void 0)continue;let c=n[i];if(!c){se(`${r}: unknown prop "${i}".${Ve(i,l)}`);continue}ie(s)||typeof s=="function"||(c.props&&ce(s)?be(`${r}.${i}`,s,c.props):qe(`${r}.${i}`,s,c))}}function Xe(r){return typeof r=="object"&&r!==null?structuredClone(r):r}function t(r,e,n,l){let i=n;ze()&&be(r,i,l);let s={};for(let[c,u]of Object.entries(e))s[c]=Xe(u);for(let[c,u]of Object.entries(i)){if(u===void 0)continue;let m=s[c];s[c]=ce(m)&&ce(u)?{...m,...Object.fromEntries(Object.entries(u).filter(([,Oe])=>Oe!==void 0))}:u}return s}p();var a={Ascii:{cellSize:{min:4,max:64},colorMode:{enum:["mono","source","green"]},fg:{},bg:{},contrast:{min:.5,max:3},invert:{}},AudioCompressor:{threshold:{min:-60,max:0},ratio:{min:1,max:100},attack:{min:1e-4,max:1},release:{min:.01,max:5},knee:{min:0,max:24},makeupGain:{min:0,max:24}},AudioDelay:{delayTime:{min:.001,max:5},feedback:{min:0,max:.95},wet:{min:0,max:1},dry:{min:0,max:1},pingPong:{}},AudioFade:{fadeInDuration:{min:0,max:60},fadeOutDuration:{min:0,max:60},fadeInCurve:{enum:["linear","exponential","scurve"]},fadeOutCurve:{enum:["linear","exponential","scurve"]}},AudioNoiseGate:{threshold:{min:-120,max:0},attack:{min:1e-4,max:1},hold:{min:.001,max:5},release:{min:.01,max:5},range:{min:-120,max:0}},AudioParametricEq:{type:{enum:["lowShelf","highShelf","peak","lowPass","highPass","notch"]},frequency:{min:20,max:2e4},gain:{min:-24,max:24},q:{min:.01,max:10}},AudioReverb:{roomSize:{min:0,max:.98},damping:{min:0,max:1},wet:{min:0,max:1},dry:{min:0,max:1},width:{min:0,max:1}},Blur:{blurType:{enum:["Gaussian","Box","Median","Motion","Bilateral","Edge-preserving","Radial","Zoom"]},strength:{min:0,max:100},angle:{min:0,max:360},sigmaColor:{min:.01,max:1},centerX:{min:0,max:1},centerY:{min:0,max:1},partialBlur:{},radius:{min:.01,max:1},radiusY:{min:0,max:1},shape:{enum:["ellipse","circle","rect"]}},CameraParallax3D:{motionPreset:{enum:["Custom","DollyZoom","Orbit","FlyThrough","HandheldShake","RackFocus"]},panX:{min:-1,max:1},panY:{min:-1,max:1},dollyZ:{min:-1,max:1},fov:{min:15,max:120},parallaxAmount:{min:0,max:2},dofAperture:{min:0,max:1},focusPlane:{min:0,max:1},edgeDilation:{min:0,max:1},depthInvert:{}},ChannelMerger:{colorSpace:{enum:["RGBA","HSLA","CMYK","LAB"]},defaultChannel4:{min:0,max:1}},ChannelSplitter:{colorSpace:{enum:["RGBA","HSLA","CMYK","LAB"]}},ColorBalance:{shadows:{props:{cyanRed:{min:-100,max:100},magentaGreen:{min:-100,max:100},yellowBlue:{min:-100,max:100}}},midtones:{props:{cyanRed:{min:-100,max:100},magentaGreen:{min:-100,max:100},yellowBlue:{min:-100,max:100}}},highlights:{props:{cyanRed:{min:-100,max:100},magentaGreen:{min:-100,max:100},yellowBlue:{min:-100,max:100}}},preserveLuminosity:{}},ColorKey:{keyColor:{},similarity:{min:0,max:1},smoothness:{min:0,max:1},spillSuppression:{min:0,max:1},colorSpace:{enum:["YUV","RGB"]},spillSuppressionType:{enum:["Desaturate","Neutralize","None"]}},Contour:{levels:{min:2,max:64},lineWidth:{min:.5,max:8},lineColor:{},fill:{enum:["source","flat","none"]},fillColor:{},smoothing:{min:0,max:8}},CornerPin:{points:{}},CRT:{scanlines:{min:0,max:1},lineCount:{min:100,max:2160},curvature:{min:0,max:1},mask:{min:0,max:1},vignette:{min:0,max:1},noise:{min:0,max:1},flicker:{min:0,max:1},tracking:{min:0,max:1},chroma:{min:0,max:20}},Datamosh:{keyframes:{},strength:{min:0,max:10},bleed:{min:0,max:1},warmup:{min:1,max:240}},DisplacementMap:{strengthX:{min:0,max:500},strengthY:{min:0,max:500},xChannel:{enum:["Red","Green","Blue","Alpha","Luminance"]},yChannel:{enum:["Red","Green","Blue","Alpha","Luminance"]},wrapMode:{enum:["Clamp","Repeat","Mirror"]}},Dither:{mode:{enum:["bayer","noise","halftone"]},levels:{min:2,max:16},scale:{min:1,max:16},monochrome:{},dark:{},light:{}},ExtractLUT:{strategy:{enum:["deterministic","statistical"]},samplePoints:{min:10,max:500}},Flip:{horizontal:{},vertical:{},diagonal:{},mode:{enum:["horizontal","vertical","both","diagonal","antiDiagonal","custom"]},symmetry:{enum:["none","leftToRight","rightToLeft","topToBottom","bottomToTop","quadrant"]}},Gooey:{radius:{min:1,max:60},threshold:{min:0,max:1},softness:{min:.001,max:.5}},Iridescence:{strength:{min:0,max:1},scale:{min:.1,max:10},shift:{min:-3600,max:3600},mode:{enum:["luminance","relief"]}},Kaleidoscope:{segments:{min:2,max:32},rotation:{min:-3600,max:3600},centerX:{min:0,max:1},centerY:{min:0,max:1},zoom:{min:.2,max:4}},KenBurns:{keyframes:{},motionBlurSize:{min:0,max:10},movementStyle:{enum:["spline","direct"]},aspectRatio:{enum:["input","16:9","9:16","21:9","9:21","1:1","4:3","3:2","2:3","4:5","5:4"]}},LayerStyle:{dropShadow:{props:{enabled:{},color:{},opacity:{min:0,max:1},angle:{min:0,max:360},distance:{min:0,max:500},spread:{min:0,max:100},size:{min:0,max:250},blendMode:{}}},innerShadow:{props:{enabled:{},color:{},opacity:{min:0,max:1},angle:{min:0,max:360},distance:{min:0,max:500},choke:{min:0,max:100},size:{min:0,max:250},blendMode:{}}},outerGlow:{props:{enabled:{},color:{},opacity:{min:0,max:1},size:{min:0,max:250},spread:{min:0,max:100},blendMode:{}}},innerGlow:{props:{enabled:{},color:{},opacity:{min:0,max:1},size:{min:0,max:250},spread:{min:0,max:100},blendMode:{}}},stroke:{props:{enabled:{},size:{min:0,max:100},position:{enum:["inside","center","outside"]},color:{},opacity:{min:0,max:1},blendMode:{}}},bevelEmboss:{props:{enabled:{},style:{enum:["InnerBevel","OuterBevel","Emboss","PillowEmboss"]},technique:{enum:["Smooth","ChiselHard","ChiselSoft"]},depth:{min:1,max:1e3},direction:{enum:["Up","Down"]},size:{min:0,max:250},soften:{min:0,max:50},angle:{min:0,max:360},altitude:{min:0,max:90},highlightColor:{},highlightOpacity:{min:0,max:1},shadowColor:{},shadowOpacity:{min:0,max:1}}},colorOverlay:{props:{enabled:{},color:{},opacity:{min:0,max:1},blendMode:{}}},dropShadowAngleHandleId:{},dropShadowDistanceHandleId:{},dropShadowSpreadHandleId:{},dropShadowSizeHandleId:{},dropShadowOpacityHandleId:{},innerShadowAngleHandleId:{},innerShadowDistanceHandleId:{},innerShadowChokeHandleId:{},innerShadowSizeHandleId:{},innerShadowOpacityHandleId:{},outerGlowSizeHandleId:{},outerGlowSpreadHandleId:{},outerGlowOpacityHandleId:{},innerGlowSizeHandleId:{},innerGlowSpreadHandleId:{},innerGlowOpacityHandleId:{},strokeSizeHandleId:{},strokeOpacityHandleId:{},bevelEmbossDepthHandleId:{},bevelEmbossSizeHandleId:{},bevelEmbossSoftenHandleId:{},bevelEmbossAngleHandleId:{},bevelEmbossAltitudeHandleId:{},bevelEmbossHighlightOpacityHandleId:{},bevelEmbossShadowOpacityHandleId:{},colorOverlayOpacityHandleId:{}},Liquify:{operations:{}},MaskMath:{operation:{enum:["Union","Intersect","Subtract","Difference","Invert","Dilate","Erode","Choke","Feather"]},radius:{min:0,max:200},threshold:{min:0,max:1},clampMin:{min:0,max:1},clampMax:{min:0,max:1},channelA:{enum:["Alpha","Luminance","Red","Green","Blue"]},channelB:{enum:["Alpha","Luminance","Red","Green","Blue"]},binarize:{},invertResult:{},outputFormat:{enum:["WhiteWithAlpha","GrayscaleRGB","AlphaOnly","PassthroughRGB"]}},MeshWarp:{cols:{min:2,max:12},rows:{min:2,max:12},points:{}},NoiseGenerator:{noiseType:{enum:["Perlin","Simplex","Voronoi"]},outputType:{enum:["Image","Video"]},width:{min:16,max:4096},height:{min:16,max:4096},scale:{min:.1,max:100},octaves:{min:1,max:8},persistence:{min:0,max:1},lacunarity:{min:1,max:4},speed:{min:0,max:10},colorStart:{},colorEnd:{},durationMs:{min:1,max:6e4},fps:{min:1,max:120}},OpArt:{pattern:{enum:["stripes","rings","checker","waves"]},frequency:{min:2,max:300},angle:{min:-360,max:360},warp:{min:0,max:3},source:{min:0,max:1},colorA:{},colorB:{}},Paint:{width:{min:1,max:16384},height:{min:1,max:16384},maintainAspect:{},aspectRatio:{},backgroundColor:{},strokes:{}},Painterly:{style:{enum:["oil","watercolor"]},radius:{min:2,max:12},edgeDarkening:{min:0,max:1},paper:{min:0,max:1},saturation:{min:0,max:2}},PatchHeal:{patches:{},centerX:{min:0,max:1},centerY:{min:0,max:1},offsetX:{min:-4096,max:4096},offsetY:{min:-4096,max:4096},radius:{min:1,max:500},sourceRadius:{min:1,max:500},feather:{min:0,max:100},opacity:{min:0,max:1},mode:{enum:["Clone","SeamlessHeal","TextureTransfer"]}},Pixelate:{size:{min:1,max:256},shape:{enum:["square","circle","diamond"]},gap:{min:0,max:.9}},Posterize:{levels:{min:2,max:64},palette:{enum:["none","gameboy","teletext","cga","pico8","c64","grayscale","sepia","custom"]},colors:{},dither:{min:0,max:1},pixelSize:{min:1,max:64}},ProceduralVFX:{effectType:{enum:["Smoke","Fire","Rain","Sparks","Snow","Dust","Lightning","Magic","LensFlare","Embers","EnergyBeam","Aurora"]},outputType:{enum:["Image","Video"]},width:{min:16,max:4096},height:{min:16,max:4096},density:{min:0,max:1},scale:{min:.001,max:10},speed:{min:0,max:10},intensity:{min:0,max:1},seed:{min:0,max:1e6},colorStart:{},colorEnd:{},durationMs:{min:100,max:1e5},fps:{min:1,max:120}},RefineEdge:{decontaminateAmount:{min:0,max:1},radius:{min:.5,max:50},smooth:{min:0,max:100},feather:{min:0,max:50},shiftEdge:{min:-100,max:100},matteChannel:{enum:["Alpha","Luminance","Red","Green","Blue"]},outputMode:{enum:["Composite","MatteOnly","DecontaminatedRGB"]}},RefractionCaustics3D:{ior:{min:1,max:2.5},dispersion:{min:0,max:.2},refractionScale:{min:0,max:2},causticBrightness:{min:0,max:2},causticScale:{min:.1,max:5},fluidRipples:{min:0,max:1},rippleSpeed:{min:0,max:5},roughness:{min:0,max:1},specularIntensity:{min:0,max:2},lightPosX:{min:0,max:1},lightPosY:{min:0,max:1},tintColor:{},tintStrength:{min:0,max:1},depthInvert:{},depthScale:{min:.1,max:5}},ResizerScaler:{aspectRatioPreset:{enum:["9:16","16:9","1:1","4:5","21:9","custom"]},resolutionPreset:{enum:["4k","1080p","720p","480p","custom"]},targetWidth:{min:1,max:8192},targetHeight:{min:1,max:8192},fitMode:{enum:["cover","contain","stretch","manual"]},zoom:{min:1,max:1e3},offsetX:{min:-8192,max:8192},offsetY:{min:-8192,max:8192},backgroundMode:{enum:["solid","blurred","gradient","transparent"]},backgroundColor:{},backgroundColor2:{},blurRadius:{min:0,max:100},backgroundBrightness:{min:0,max:1},anchorX:{enum:["left","center","right"]},anchorY:{enum:["top","center","bottom"]}},RGBSplit:{amount:{min:0,max:200},angle:{min:-360,max:360},radial:{}},Rotate:{angle:{},fit:{enum:["cover","contain","fill"]},scale:{min:.01,max:20}},StereoPanning:{pan:{min:-1,max:1}},Toon:{levels:{min:2,max:12},edgeThreshold:{min:0,max:1},edgeWidth:{min:.5,max:4},edgeColor:{},saturation:{min:0,max:2}},Trails:{decay:{min:0,max:1},mode:{enum:["blend","over","add","max"]},zoom:{min:.5,max:2},rotation:{min:-45,max:45},offsetX:{min:-500,max:500},offsetY:{min:-500,max:500},hueShift:{min:-180,max:180},warmup:{min:0,max:240}},Vignette:{strength:{min:0,max:100},radius:{min:.1,max:2},softness:{min:0,max:1},roundness:{min:0,max:1},centerX:{min:0,max:1},centerY:{min:0,max:1}}};var Ke={cellSize:10,colorMode:"mono",fg:"#e8e8e8",bg:"#0b0b0b",contrast:1.2,invert:!1},b=class extends o{op="Ascii";domain="visual";constructor(e={}){super(t("Ascii",Ke,e,a.Ascii))}},Ye={threshold:-24,ratio:4,attack:.003,release:.25,knee:6,makeupGain:0},f=class extends o{op="AudioCompressor";domain="audio";constructor(e={}){super(t("AudioCompressor",Ye,e,a.AudioCompressor))}},We={delayTime:.25,feedback:.4,wet:.3,dry:1,pingPong:!1},P=class extends o{op="AudioDelay";domain="audio";constructor(e={}){super(t("AudioDelay",We,e,a.AudioDelay))}},Ne={fadeInDuration:0,fadeOutDuration:0,fadeInCurve:"linear",fadeOutCurve:"linear"},h=class extends o{op="AudioFade";domain="audio";constructor(e={}){super(t("AudioFade",Ne,e,a.AudioFade))}},Ue={threshold:-40,attack:.005,hold:.05,release:.1,range:-80},y=class extends o{op="AudioNoiseGate";domain="audio";constructor(e={}){super(t("AudioNoiseGate",Ue,e,a.AudioNoiseGate))}},je={type:"peak",frequency:1e3,gain:0,q:1},g=class extends o{op="AudioParametricEq";domain="audio";constructor(e={}){super(t("AudioParametricEq",je,e,a.AudioParametricEq))}},$e={roomSize:.5,damping:.5,wet:.3,dry:1,width:1},x=class extends o{op="AudioReverb";domain="audio";constructor(e={}){super(t("AudioReverb",$e,e,a.AudioReverb))}},Ze={blurType:"Gaussian",strength:5,angle:0,sigmaColor:.1,centerX:.5,centerY:.5,partialBlur:!1,radius:.3,radiusY:0,shape:"circle"},le=class extends o{op="Blur";domain="visual";constructor(e={}){super(t("Blur",Ze,e,a.Blur))}},_e={motionPreset:"DollyZoom",panX:0,panY:0,dollyZ:0,fov:50,parallaxAmount:.6,dofAperture:.3,focusPlane:.4,edgeDilation:.5,depthInvert:!1},v=class extends o{op="CameraParallax3D";domain="visual";constructor(e={}){super(t("CameraParallax3D",_e,e,a.CameraParallax3D))}},Je={colorSpace:"RGBA",defaultChannel4:1},S=class extends o{op="ChannelMerger";domain="visual";constructor(e={}){super(t("ChannelMerger",Je,e,a.ChannelMerger))}},Qe={colorSpace:"RGBA"},C=class extends o{op="ChannelSplitter";domain="visual";constructor(e={}){super(t("ChannelSplitter",Qe,e,a.ChannelSplitter))}},er={shadows:{cyanRed:0,magentaGreen:0,yellowBlue:0},midtones:{cyanRed:0,magentaGreen:0,yellowBlue:0},highlights:{cyanRed:0,magentaGreen:0,yellowBlue:0},preserveLuminosity:!0},E=class extends o{op="ColorBalance";domain="visual";constructor(e={}){super(t("ColorBalance",er,e,a.ColorBalance))}},rr={keyColor:"#00ff00",similarity:.4,smoothness:.1,spillSuppression:.2,colorSpace:"YUV",spillSuppressionType:"Desaturate"},A=class extends o{op="ColorKey";domain="visual";constructor(e={}){super(t("ColorKey",rr,e,a.ColorKey))}},or={levels:14,lineWidth:1.2,lineColor:"#2b1d0e",fill:"source",fillColor:"#f3ead8",smoothing:2},w=class extends o{op="Contour";domain="visual";constructor(e={}){super(t("Contour",or,e,a.Contour))}},ar={},R=class extends o{op="CornerPin";domain="visual";constructor(e={}){super(t("CornerPin",ar,e,a.CornerPin))}},tr={scanlines:.45,lineCount:540,curvature:.12,mask:.25,vignette:.35,noise:.08,flicker:.03,tracking:0,chroma:0},M=class extends o{op="CRT";domain="visual";constructor(e={}){super(t("CRT",tr,e,a.CRT))}},nr={keyframes:[],strength:1,bleed:0,warmup:48},D=class extends o{op="Datamosh";domain="visual";constructor(e={}){super(t("Datamosh",nr,e,a.Datamosh))}},lr={strengthX:50,strengthY:50,xChannel:"Red",yChannel:"Green",wrapMode:"Clamp"},k=class extends o{op="DisplacementMap";domain="visual";constructor(e={}){super(t("DisplacementMap",lr,e,a.DisplacementMap))}},ir={mode:"bayer",levels:2,scale:2,monochrome:!0,dark:"#111111",light:"#f2efe6"},B=class extends o{op="Dither";domain="visual";constructor(e={}){super(t("Dither",ir,e,a.Dither))}},sr={strategy:"deterministic",samplePoints:150},T=class extends o{op="ExtractLUT";domain="visual";constructor(e={}){super(t("ExtractLUT",sr,e,a.ExtractLUT))}},cr={horizontal:!0,vertical:!1,diagonal:!1,mode:"horizontal",symmetry:"none"},G=class extends o{op="Flip";domain="visual";constructor(e={}){super(t("Flip",cr,e,a.Flip))}},pr={radius:12,threshold:.5,softness:.04},I=class extends o{op="Gooey";domain="visual";constructor(e={}){super(t("Gooey",pr,e,a.Gooey))}},ur={strength:.6,scale:2,shift:0,mode:"relief"},H=class extends o{op="Iridescence";domain="visual";constructor(e={}){super(t("Iridescence",ur,e,a.Iridescence))}},dr={segments:6,rotation:0,centerX:.5,centerY:.5,zoom:1},L=class extends o{op="Kaleidoscope";domain="visual";constructor(e={}){super(t("Kaleidoscope",dr,e,a.Kaleidoscope))}},mr={keyframes:[],motionBlurSize:1.5,movementStyle:"spline",aspectRatio:"input"},O=class extends o{op="KenBurns";domain="visual";constructor(e={}){super(t("KenBurns",mr,e,a.KenBurns))}},br={dropShadow:{enabled:!1,color:"#000000",opacity:.75,angle:120,distance:10,spread:0,size:10,blendMode:"multiply"},innerShadow:{enabled:!1,color:"#000000",opacity:.75,angle:120,distance:5,choke:0,size:5,blendMode:"multiply"},outerGlow:{enabled:!1,color:"#ffffff",opacity:.75,size:15,spread:0,blendMode:"screen"},innerGlow:{enabled:!1,color:"#ffffff",opacity:.75,size:15,spread:0,blendMode:"screen"},stroke:{enabled:!1,size:2,position:"outside",color:"#ffffff",opacity:1,blendMode:"normal"},bevelEmboss:{enabled:!1,style:"InnerBevel",technique:"Smooth",depth:100,direction:"Up",size:5,soften:0,angle:120,altitude:30,highlightColor:"#ffffff",highlightOpacity:.75,shadowColor:"#000000",shadowOpacity:.75},colorOverlay:{enabled:!1,color:"#ff0000",opacity:1,blendMode:"normal"}},z=class extends o{op="LayerStyle";domain="visual";constructor(e={}){super(t("LayerStyle",br,e,a.LayerStyle))}},fr={operations:[]},F=class extends o{op="Liquify";domain="visual";constructor(e={}){super(t("Liquify",fr,e,a.Liquify))}},Pr={operation:"Union",radius:0,threshold:.5,clampMin:0,clampMax:1,channelA:"Alpha",channelB:"Alpha",binarize:!1,invertResult:!1,outputFormat:"WhiteWithAlpha"},V=class extends o{op="MaskMath";domain="visual";constructor(e={}){super(t("MaskMath",Pr,e,a.MaskMath))}},hr={cols:3,rows:3},q=class extends o{op="MeshWarp";domain="visual";constructor(e={}){super(t("MeshWarp",hr,e,a.MeshWarp))}},yr={noiseType:"Perlin",outputType:"Image",width:512,height:512,scale:10,octaves:4,persistence:.5,lacunarity:2,speed:1,colorStart:"#000000",colorEnd:"#ffffff",durationMs:5e3,fps:30},X=class extends o{op="NoiseGenerator";domain="visual";constructor(e={}){super(t("NoiseGenerator",yr,e,a.NoiseGenerator))}},gr={pattern:"stripes",frequency:48,angle:0,warp:.6,source:1,colorA:"#0a0a0a",colorB:"#f5f5f5"},K=class extends o{op="OpArt";domain="visual";constructor(e={}){super(t("OpArt",gr,e,a.OpArt))}},xr={width:1080,height:1080,maintainAspect:!0,backgroundColor:"#ffffff"},Y=class extends o{op="Paint";domain="visual";constructor(e={}){super(t("Paint",xr,e,a.Paint))}},vr={style:"oil",radius:5,edgeDarkening:.5,paper:.3,saturation:1.05},W=class extends o{op="Painterly";domain="visual";constructor(e={}){super(t("Painterly",vr,e,a.Painterly))}},Sr={centerX:.5,centerY:.5,offsetX:50,offsetY:0,radius:25,sourceRadius:25,feather:50,opacity:1,mode:"SeamlessHeal"},N=class extends o{op="PatchHeal";domain="visual";constructor(e={}){super(t("PatchHeal",Sr,e,a.PatchHeal))}},Cr={size:12,shape:"square",gap:0},U=class extends o{op="Pixelate";domain="visual";constructor(e={}){super(t("Pixelate",Cr,e,a.Pixelate))}},Er={levels:6,palette:"none",colors:[],dither:0,pixelSize:1},j=class extends o{op="Posterize";domain="visual";constructor(e={}){super(t("Posterize",Er,e,a.Posterize))}},Ar={effectType:"Smoke",outputType:"Video",width:1080,height:1080,density:.6,scale:.01,speed:1,intensity:.8,seed:1234,colorStart:"#ffffff",colorEnd:"#ff5500",durationMs:5e3,fps:30},$=class extends o{op="ProceduralVFX";domain="visual";constructor(e={}){super(t("ProceduralVFX",Ar,e,a.ProceduralVFX))}},wr={decontaminateAmount:.7,radius:2,smooth:5,feather:.5,shiftEdge:0,matteChannel:"Alpha",outputMode:"Composite"},Z=class extends o{op="RefineEdge";domain="visual";constructor(e={}){super(t("RefineEdge",wr,e,a.RefineEdge))}},Rr={ior:1.52,dispersion:.04,refractionScale:.5,causticBrightness:.6,causticScale:1,fluidRipples:0,rippleSpeed:1,roughness:0,specularIntensity:.8,lightPosX:.5,lightPosY:.2,tintColor:"#ffffff",tintStrength:0,depthInvert:!1,depthScale:1},_=class extends o{op="RefractionCaustics3D";domain="visual";constructor(e={}){super(t("RefractionCaustics3D",Rr,e,a.RefractionCaustics3D))}},Mr={aspectRatioPreset:"16:9",resolutionPreset:"1080p",targetWidth:1920,targetHeight:1080,fitMode:"contain",zoom:100,offsetX:0,offsetY:0,backgroundMode:"solid",backgroundColor:"#000000FF",backgroundColor2:"#000000FF",blurRadius:40,backgroundBrightness:.6,anchorX:"center",anchorY:"center"},J=class extends o{op="ResizerScaler";domain="visual";constructor(e={}){super(t("ResizerScaler",Mr,e,a.ResizerScaler))}},Dr={amount:8,angle:0,radial:!1},Q=class extends o{op="RGBSplit";domain="visual";constructor(e={}){super(t("RGBSplit",Dr,e,a.RGBSplit))}},kr={angle:90,fit:"cover",scale:1},ee=class extends o{op="Rotate";domain="visual";constructor(e={}){super(t("Rotate",kr,e,a.Rotate))}},Br={pan:0},re=class extends o{op="StereoPanning";domain="audio";constructor(e={}){super(t("StereoPanning",Br,e,a.StereoPanning))}},Tr={levels:4,edgeThreshold:.2,edgeWidth:1,edgeColor:"#111111",saturation:1.15},oe=class extends o{op="Toon";domain="visual";constructor(e={}){super(t("Toon",Tr,e,a.Toon))}},Gr={decay:.9,mode:"blend",zoom:1,rotation:0,offsetX:0,offsetY:0,hueShift:0,warmup:60},ae=class extends o{op="Trails";domain="visual";constructor(e={}){super(t("Trails",Gr,e,a.Trails))}},Ir={strength:50,radius:1,softness:.5,roundness:.5,centerX:.5,centerY:.5},te=class extends o{op="Vignette";domain="visual";constructor(e={}){super(t("Vignette",Ir,e,a.Vignette))}};function Hr(r){return{partialBlur:!0,centerX:r.center.x,centerY:r.center.y,radius:r.bounds.width.multiply(.55),radiusY:r.bounds.height.multiply(.55),shape:"ellipse",strength:r.active.multiply(25)}}var ne=class extends le{constructor(e={}){let{track:n,...l}=e;super(n?{...Hr(n),...Lr(l)}:l)}};function Lr(r){return Object.fromEntries(Object.entries(r).filter(([,e])=>e!==void 0))}p();var Or={ascii:r=>new b(r),audioCompressor:r=>new f(r),audioDelay:r=>new P(r),audioFade:r=>new h(r),audioNoiseGate:r=>new y(r),audioParametricEq:r=>new g(r),audioReverb:r=>new x(r),blur:r=>new ne(r),cameraParallax3D:r=>new v(r),channelMerger:r=>new S(r),channelSplitter:r=>new C(r),colorBalance:r=>new E(r),colorKey:r=>new A(r),contour:r=>new w(r),cornerPin:r=>new R(r),cRT:r=>new M(r),datamosh:r=>new D(r),displacementMap:r=>new k(r),dither:r=>new B(r),extractLUT:r=>new T(r),flip:r=>new G(r),gooey:r=>new I(r),iridescence:r=>new H(r),kaleidoscope:r=>new L(r),kenBurns:r=>new O(r),layerStyle:r=>new z(r),liquify:r=>new F(r),maskMath:r=>new V(r),meshWarp:r=>new q(r),noiseGenerator:r=>new X(r),opArt:r=>new K(r),paint:r=>new Y(r),painterly:r=>new W(r),patchHeal:r=>new N(r),pixelate:r=>new U(r),posterize:r=>new j(r),proceduralVFX:r=>new $(r),refineEdge:r=>new Z(r),refractionCaustics3D:r=>new _(r),resizerScaler:r=>new J(r),rGBSplit:r=>new Q(r),rotate:r=>new ee(r),stereoPanning:r=>new re(r),toon:r=>new oe(r),trails:r=>new ae(r),vignette:r=>new te(r)};var fe=class extends o{op="Levels";domain="visual";constructor(e={}){let n={inBlack:0,inWhite:1,outBlack:0,outWhite:1};super({master:e.master??{...n},red:e.red??{...n},green:e.green??{...n},blue:e.blue??{...n},...e})}},Pe=class extends o{op="FilmGrain";domain="visual";constructor(e={}){super({strength:e.strength??15,size:e.size??1.5,monochrome:e.monochrome??!0,animated:e.animated??!0,speed:e.speed??50,shadows:e.shadows??.2,midtones:e.midtones??1,highlights:e.highlights??.2,...e})}},he=class extends o{op;domain="visual";constructor(e,n={}){super(n),this.op=e}},ye=class extends o{op="AudioSignalExtractor";domain="audio";constructor(e={}){super({extractionMode:e.extractionMode??"rms_envelope",attackMs:e.attackMs??10,releaseMs:e.releaseMs??120,sensitivity:e.sensitivity??1,noiseFloorDb:e.noiseFloorDb??-48,dynamicRangeDb:e.dynamicRangeDb??48,autoRange:e.autoRange??!0,smoothing:e.smoothing??.15,curve:e.curve??"linear",beatThreshold:e.beatThreshold??.08,beatDecayMs:e.beatDecayMs??80,previewMode:e.previewMode??"envelope",nodeId:e.nodeId??"audio_extractor",...e})}async extract(e,n={}){return pe.extract(e,{extractionMode:this.extractionMode,attackMs:this.attackMs,releaseMs:this.releaseMs,sensitivity:this.sensitivity,noiseFloorDb:this.noiseFloorDb,dynamicRangeDb:this.dynamicRangeDb,smoothing:this.smoothing,curve:this.curve,beatThreshold:this.beatThreshold,beatDecayMs:this.beatDecayMs,previewMode:this.previewMode,...n})}},ge=class extends o{op="Curves";domain="visual";constructor(e={}){super({...e,curveType:e.curveType??"rgb",master:e.master??[{x:0,y:0},{x:1,y:1}],red:e.red??[{x:0,y:0},{x:1,y:1}],green:e.green??[{x:0,y:0},{x:1,y:1}],blue:e.blue??[{x:0,y:0},{x:1,y:1}],hueVsHue:e.hueVsHue??[{x:0,y:.5},{x:1,y:.5}],hueVsSat:e.hueVsSat??[{x:0,y:1},{x:1,y:1}],lumVsSat:e.lumVsSat??[{x:0,y:1},{x:1,y:1}],satVsSat:e.satVsSat??[{x:0,y:1},{x:1,y:1}]})}},xe=class extends o{op="SelectiveColor";domain="visual";constructor(e={}){let n={cyan:0,magenta:0,yellow:0,black:0};super({...e,method:e.method??"Relative",reds:{...n,...e.reds},yellows:{...n,...e.yellows},greens:{...n,...e.greens},cyans:{...n,...e.cyans},blues:{...n,...e.blues},magentas:{...n,...e.magentas},whites:{...n,...e.whites},neutrals:{...n,...e.neutrals},blacks:{...n,...e.blacks}})}},ve=class extends o{op="GradientMap";domain="visual";constructor(e={}){let n=[{position:0,color:"#000000"},{position:1,color:"#ffffff"}];super({...e,stops:e.stops??n,smooth:e.smooth??!0,dither:e.dither??!0,opacity:e.opacity??1})}},Se=class extends o{op="ShadowsHighlights";domain="visual";constructor(e={}){super({...e,shadowAmount:e.shadowAmount??0,shadowTonalWidth:e.shadowTonalWidth??50,shadowRadius:e.shadowRadius??30,highlightAmount:e.highlightAmount??0,highlightTonalWidth:e.highlightTonalWidth??50,highlightRadius:e.highlightRadius??30,colorCorrection:e.colorCorrection??0,midtoneContrast:e.midtoneContrast??0})}},Ce=class extends o{op="ApplyLUT";domain="visual";constructor(e={}){super({...e,lutUrl:e.lutUrl??"",intensity:e.intensity??1})}},Ee=class extends o{op="UnsharpMask";domain="visual";constructor(e={}){super({...e,amount:e.amount??100,radius:e.radius??1.5,threshold:e.threshold??3})}},Ae=class extends o{op="HighPass";domain="visual";constructor(e={}){super({...e,radius:e.radius??3,contrastBoost:e.contrastBoost??1,monochrome:e.monochrome??!0})}},we=class extends o{op="HalftoneScreen";domain="visual";constructor(e={}){super({...e,mode:e.mode??"Monochrome",dotShape:e.dotShape??"Circle",frequency:e.frequency??30,angle:e.angle??45,contrast:e.contrast??1,dotColor:e.dotColor??"#000000",paperColor:e.paperColor??"#ffffff",smooth:e.smooth??!0,invert:e.invert??!1,cyanAngle:e.cyanAngle??15,magentaAngle:e.magentaAngle??75,yellowAngle:e.yellowAngle??0,blackAngle:e.blackAngle??45,opacity:e.opacity??1})}},Re=class extends o{op="TileOffset";domain="visual";constructor(e={}){super({...e,offsetX:e.offsetX??0,offsetY:e.offsetY??0,wrap:e.wrap??!0,edgeMode:e.edgeMode??"wrap"})}},Me=class extends o{op="MotionBlur";domain="visual";constructor(e={}){super({...e,shutterAngle:e.shutterAngle??180,samples:e.samples??16,maxVelocity:e.maxVelocity??64,shutterCurve:e.shutterCurve??"gaussian",depthAware:e.depthAware??!0})}},De=class extends o{op="SSAO";domain="visual";constructor(e={}){super({...e,radius:e.radius??45,bias:e.bias??.025,intensity:e.intensity??1.5,kernelSamples:e.kernelSamples??16,blurRadius:e.blurRadius??4})}},ke=class extends o{op="PBRGlass";domain="visual";constructor(e={}){super({...e,ior:e.ior??1.49,roughness:e.roughness??.15,transmission:e.transmission??.92,dispersion:e.dispersion??.015,fresnelPower:e.fresnelPower??5,tintColor:e.tintColor??"#ffffff"})}},Be=class extends o{op="DepthOfField";domain="visual";constructor(e={}){super({...e,focusDistance:e.focusDistance??500,focalLength:e.focalLength??50,aperture:e.aperture??2.8,maxBlur:e.maxBlur??16,quality:e.quality??"high"})}},Te=class extends o{op="Crop";domain="visual";constructor(e={}){super({cropType:e.cropType??"rect",leftPercentage:e.leftPercentage??0,topPercentage:e.topPercentage??0,widthPercentage:e.widthPercentage??100,heightPercentage:e.heightPercentage??100,roundness:e.roundness??0,...e})}},Ge=class extends o{op="Vision";domain="visual";constructor(e={}){super({enableDetection:e.enableDetection!==!1,enableSegmentation:e.enableSegmentation===!0,enablePose:e.enablePose===!0,enableMatte:e.enableMatte===!0,confidence:e.confidence??.3,variant:e.variant??"s",mode:e.mode??"passthrough",matteSource:e.matteSource??"instance",...e})}},Ie=class extends o{op="Relight3D";domain="visual";constructor(e={}){super({lightType:e.lightType??"Point",intensity:e.intensity??1,lightPosX:e.lightPosX??.5,lightPosY:e.lightPosY??.5,lightPosZ:e.lightPosZ??.3,lightRadius:e.lightRadius??.8,spotConeAngle:e.spotConeAngle??45,specularRoughness:e.specularRoughness??.35,specularStrength:e.specularStrength??.7,metallic:e.metallic??0,ambientIntensity:e.ambientIntensity??.4,volumetricDensity:e.volumetricDensity??.2,depthScale:e.depthScale??1,depthInvert:e.depthInvert??!1,lightColor:e.lightColor??"#ffffff",ambientColor:e.ambientColor??"#ffffff",normalMap:e.normalMap,...e})}},He=class extends o{op="TemporalDeflicker";domain="visual";constructor(e={}){super({blendWeight:e.blendWeight??.35,disocclusionThreshold:e.disocclusionThreshold??.15,maxMotionPixels:e.maxMotionPixels??64,scale:e.scale??.5,windowSize:e.windowSize??2,...e})}},Le=class extends o{op="Modulate";domain="visual";constructor(e={}){super({hue:e.hue??0,brightness:e.brightness??1,contrast:e.contrast??1,exposure:e.exposure??0,saturation:e.saturation??1,sepia:e.sepia??0,...e})}};export{a,b,f as c,P as d,h as e,y as f,g,x as h,v as i,S as j,C as k,E as l,A as m,w as n,R as o,M as p,D as q,k as r,B as s,T as t,G as u,I as v,H as w,L as x,O as y,z,F as A,V as B,q as C,X as D,K as E,Y as F,W as G,N as H,U as I,j as J,$ as K,Z as L,_ as M,J as N,Q as O,ee as P,re as Q,oe as R,ae as S,te as T,ne as U,Or as V,fe as W,Pe as X,he as Y,ye as Z,ge as _,xe as $,ve as aa,Se as ba,Ce as ca,Ee as da,Ae as ea,we as fa,Re as ga,Me as ha,De as ia,ke as ja,Be as ka,Te as la,Ge as ma,Ie as na,He as oa,Le as pa};
@@ -1,4 +1,4 @@
1
- import{a as C,d as G,g as O,h as V,m as A}from"./chunk-ENKKLU7B.mjs";import{A as I}from"./chunk-FSAELHVT.mjs";import{e as M}from"./chunk-BVF64D6H.mjs";M();M();var se=e=>e*e,ae=e=>e*(2-e),ue=e=>e<.5?2*e*e:-1+(4-2*e)*e,ce=e=>{let t=2*Math.PI/3;return e===0?0:e===1?1:2**(-10*e)*Math.sin((e*10-.75)*t)+1},le=(e,t)=>{switch(t){case"ease-in":return se(e);case"ease-out":return ae(e);case"ease-in-out":return ue(e);case"spring":return ce(e);default:return e}},T=(e,t,o,s,i)=>{let n=i*i,r=n*i;return .5*(2*t+(-e+o)*i+(2*e-5*t+4*o-s)*n+(-e+3*t-3*o+s)*r)};function E(e,t,o="spline"){if(e.length===0)return{x:50,y:50,scale:1};if(e.length===1){let n=e[0];return{x:n.x??50,y:n.y??50,scale:n.scale??1}}let s=0;for(let n=0;n<e.length;n++){let r=e[n],h=r.holdMs??0,m=r.durationMs??0;if(t<=s+h)return{x:r.x??50,y:r.y??50,scale:r.scale??1};if(s+=h,n<e.length-1&&m>0){if(t<=s+m){let f=(t-s)/m,a=le(Math.max(0,Math.min(1,f)),r.easing),u=e[n+1];if(o==="spline"){let b=e[n-1]??r,x=e[n+2]??u;return{x:T(b.x??50,r.x??50,u.x??50,x.x??50,a),y:T(b.y??50,r.y??50,u.y??50,x.y??50,a),scale:T(b.scale??1,r.scale??1,u.scale??1,x.scale??1,a)}}return{x:(r.x??50)+((u.x??50)-(r.x??50))*a,y:(r.y??50)+((u.y??50)-(r.y??50))*a,scale:(r.scale??1)+((u.scale??1)-(r.scale??1))*a}}s+=m}}let i=e[e.length-1];return{x:i.x??50,y:i.y??50,scale:i.scale??1}}function X(e,t,o,s){let i=100,n=100;if(s!=="input"){let p=s.split(":"),g=Number(p[0]),c=Number(p[1]);if(!Number.isNaN(g)&&!Number.isNaN(c)&&g>0&&c>0){let l=g/c,y=t/o;y>l?(n=100,i=l/y*100):(i=100,n=y/l*100)}}let r=i/100*t,h=n/100*o,m=Math.max(e.scale,1),f=r/m,a=h/m,u=e.x/100*t,b=e.y/100*o,x=f/2,B=a/2,P=Math.max(x,Math.min(t-x,u)),R=Math.max(B,Math.min(o-B,b));return{x:P-x,y:R-B,width:f,height:a}}var me=`
1
+ import{a as C,d as G,g as O,h as V,m as A}from"./chunk-ENKKLU7B.mjs";import{A as I}from"./chunk-RNFYEZLL.mjs";import{e as M}from"./chunk-BVF64D6H.mjs";M();M();var se=e=>e*e,ae=e=>e*(2-e),ue=e=>e<.5?2*e*e:-1+(4-2*e)*e,ce=e=>{let t=2*Math.PI/3;return e===0?0:e===1?1:2**(-10*e)*Math.sin((e*10-.75)*t)+1},le=(e,t)=>{switch(t){case"ease-in":return se(e);case"ease-out":return ae(e);case"ease-in-out":return ue(e);case"spring":return ce(e);default:return e}},T=(e,t,o,s,i)=>{let n=i*i,r=n*i;return .5*(2*t+(-e+o)*i+(2*e-5*t+4*o-s)*n+(-e+3*t-3*o+s)*r)};function E(e,t,o="spline"){if(e.length===0)return{x:50,y:50,scale:1};if(e.length===1){let n=e[0];return{x:n.x??50,y:n.y??50,scale:n.scale??1}}let s=0;for(let n=0;n<e.length;n++){let r=e[n],h=r.holdMs??0,m=r.durationMs??0;if(t<=s+h)return{x:r.x??50,y:r.y??50,scale:r.scale??1};if(s+=h,n<e.length-1&&m>0){if(t<=s+m){let f=(t-s)/m,a=le(Math.max(0,Math.min(1,f)),r.easing),u=e[n+1];if(o==="spline"){let b=e[n-1]??r,x=e[n+2]??u;return{x:T(b.x??50,r.x??50,u.x??50,x.x??50,a),y:T(b.y??50,r.y??50,u.y??50,x.y??50,a),scale:T(b.scale??1,r.scale??1,u.scale??1,x.scale??1,a)}}return{x:(r.x??50)+((u.x??50)-(r.x??50))*a,y:(r.y??50)+((u.y??50)-(r.y??50))*a,scale:(r.scale??1)+((u.scale??1)-(r.scale??1))*a}}s+=m}}let i=e[e.length-1];return{x:i.x??50,y:i.y??50,scale:i.scale??1}}function X(e,t,o,s){let i=100,n=100;if(s!=="input"){let p=s.split(":"),g=Number(p[0]),c=Number(p[1]);if(!Number.isNaN(g)&&!Number.isNaN(c)&&g>0&&c>0){let l=g/c,y=t/o;y>l?(n=100,i=l/y*100):(i=100,n=y/l*100)}}let r=i/100*t,h=n/100*o,m=Math.max(e.scale,1),f=r/m,a=h/m,u=e.x/100*t,b=e.y/100*o,x=f/2,B=a/2,P=Math.max(x,Math.min(t-x,u)),R=Math.max(B,Math.min(o-B,b));return{x:P-x,y:R-B,width:f,height:a}}var me=`
2
2
  struct MotionBlurUniforms {
3
3
  prev_origin : vec2<f32>,
4
4
  prev_size : vec2<f32>,
@@ -1,4 +1,4 @@
1
- import{a as g}from"./chunk-37EFVZWT.mjs";import{A as f,c as t,d as a}from"./chunk-FSAELHVT.mjs";import{a as c,d as s}from"./chunk-6YJP57MZ.mjs";import{e as d}from"./chunk-BVF64D6H.mjs";d();d();var l=async(n,m,p,e)=>{if(!e?.device||!n||n.length===0||n[0].length===0)return;let r=p.operation||{},i=r.nodeId||r.id||"audio-signal-extractor",v=e.fps??24,y=a(r.extractionMode,""),b=a(r.curve,""),I={extractionMode:y||void 0,attackMs:t(r.attackMs,10),releaseMs:t(r.releaseMs,120),sensitivity:t(r.sensitivity,1),noiseFloorDb:t(r.noiseFloorDb,-45),dynamicRangeDb:t(r.dynamicRangeDb,36),smoothing:t(r.smoothing,.15),curve:b||void 0,beatThreshold:t(r.beatThreshold,.55),beatDecayMs:t(r.beatDecayMs,80)},o=await c.extractFeatures(e.device,n,m,v,I,512);s.registerBuffer(e.device,i,o.primaryBuffer,e.renderId),s.registerBuffer(e.device,`${i}_beat`,o.beatBuffer,e.renderId),s.registerBuffer(e.device,`${i}_bass`,o.bassBuffer,e.renderId),s.registerBuffer(e.device,`${i}_energy`,o.energyBuffer,e.renderId),s.registerTexture(e.device,i,o.texture,o.textureView,e.renderId),s.registerTexture(e.device,`${i}_beat`,o.texture,o.textureView,e.renderId),s.registerTexture(e.device,`${i}_bass`,o.texture,o.textureView,e.renderId),s.registerTexture(e.device,`${i}_energy`,o.texture,o.textureView,e.renderId);let u=`signal_${i.replace(/[^a-zA-Z0-9]/g,"_")}`,A=`
1
+ import{a as g}from"./chunk-37EFVZWT.mjs";import{A as f,c as t,d as a}from"./chunk-RNFYEZLL.mjs";import{a as c,d as s}from"./chunk-6YJP57MZ.mjs";import{e as d}from"./chunk-BVF64D6H.mjs";d();d();var l=async(n,m,p,e)=>{if(!e?.device||!n||n.length===0||n[0].length===0)return;let r=p.operation||{},i=r.nodeId||r.id||"audio-signal-extractor",v=e.fps??24,y=a(r.extractionMode,""),b=a(r.curve,""),I={extractionMode:y||void 0,attackMs:t(r.attackMs,10),releaseMs:t(r.releaseMs,120),sensitivity:t(r.sensitivity,1),noiseFloorDb:t(r.noiseFloorDb,-45),dynamicRangeDb:t(r.dynamicRangeDb,36),smoothing:t(r.smoothing,.15),curve:b||void 0,beatThreshold:t(r.beatThreshold,.55),beatDecayMs:t(r.beatDecayMs,80)},o=await c.extractFeatures(e.device,n,m,v,I,512);s.registerBuffer(e.device,i,o.primaryBuffer,e.renderId),s.registerBuffer(e.device,`${i}_beat`,o.beatBuffer,e.renderId),s.registerBuffer(e.device,`${i}_bass`,o.bassBuffer,e.renderId),s.registerBuffer(e.device,`${i}_energy`,o.energyBuffer,e.renderId),s.registerTexture(e.device,i,o.texture,o.textureView,e.renderId),s.registerTexture(e.device,`${i}_beat`,o.texture,o.textureView,e.renderId),s.registerTexture(e.device,`${i}_bass`,o.texture,o.textureView,e.renderId),s.registerTexture(e.device,`${i}_energy`,o.texture,o.textureView,e.renderId);let u=`signal_${i.replace(/[^a-zA-Z0-9]/g,"_")}`,A=`
2
2
  fn ${u}(t: f32, x: f32, y: f32, z: f32, i: u32, n: u32, frame: u32, color: vec4f, t_elapsed: f32, duration: f32) -> f32 {
3
3
  return 0.0f;
4
4
  }
@@ -0,0 +1 @@
1
+ import{A as r}from"./chunk-RNFYEZLL.mjs";import{e}from"./chunk-BVF64D6H.mjs";e();var o=r({});export{o as a};
@@ -1,4 +1,4 @@
1
- import{a as q}from"./chunk-NVTPJUNG.mjs";import{b as J,c as Z}from"./chunk-MJN3LOZ7.mjs";import{a as r}from"./chunk-V6DAD4S4.mjs";import{a as $,d as X,e as L,g as K,h as V,j as Y,k as j,l as Q,m as w}from"./chunk-ENKKLU7B.mjs";import{A as H,x as E}from"./chunk-FSAELHVT.mjs";import{e as l}from"./chunk-BVF64D6H.mjs";l();l();l();l();var I=200,be=r.enum(["Union","Intersect","Subtract","Difference","Invert","Dilate","Erode","Choke","Feather"]),ee=r.enum(["Alpha","Luminance","Red","Green","Blue"]),ke=r.enum(["WhiteWithAlpha","GrayscaleRGB","AlphaOnly","PassthroughRGB"]),Re=q().field("operation",be.default("Union"),{label:"Operation",description:"Morphological or Boolean set operation applied to input alpha masks."}).field("radius",r.number().min(0).max(I).default(0),{bindable:!0,dataTypes:["Number","Signal"],label:"Radius / Width (px)",description:"Kernel radius in pixels for Dilate, Erode, Choke, or Feather operations."}).field("threshold",r.number().multipleOf(.01).min(0).max(1).default(.5),{bindable:!0,dataTypes:["Number","Signal"],label:"Threshold",description:"Cutoff threshold level (0.0\u20131.0) for binarization step or non-linear choke."}).field("clampMin",r.number().multipleOf(.01).min(0).max(1).default(0),{bindable:!0,dataTypes:["Number","Signal"],label:"Clamp Min",description:"Minimum alpha matte cutoff limit (0.0\u20131.0)."}).field("clampMax",r.number().multipleOf(.01).min(0).max(1).default(1),{bindable:!0,dataTypes:["Number","Signal"],label:"Clamp Max",description:"Maximum alpha matte cutoff limit (0.0\u20131.0)."}).field("channelA",ee.default("Alpha"),{label:"Mask A Channel",description:"Source channel to extract mask from Mask A (Alpha, Luminance, Red, Green, Blue)."}).field("channelB",ee.default("Alpha"),{label:"Mask B Channel",description:"Source channel to extract mask from Mask B (Alpha, Luminance, Red, Green, Blue)."}).field("binarize",r.boolean().default(!1),{label:"Binarize",description:"When enabled, outputs crisp 1-bit binary matte based on threshold."}).field("invertResult",r.boolean().default(!1),{label:"Invert Result",description:"Inverts final matte output."}).field("outputFormat",ke.default("WhiteWithAlpha"),{label:"Output Format",description:"WhiteWithAlpha (rgba(1,1,1,a)), GrayscaleRGB (rgba(a,a,a,1)), AlphaOnly (rgba(0,0,0,a)), PassthroughRGB (Mask A RGB with new alpha)."}).build(),Le=Re.schema,Ve=r.union([J,Z]);l();var Ae={Union:0,Intersect:1,Subtract:2,Difference:3,Invert:4,Dilate:5,Erode:6,Choke:7,Feather:8},ae={Alpha:0,Luminance:1,Red:2,Green:3,Blue:4},ye={WhiteWithAlpha:0,GrayscaleRGB:1,AlphaOnly:2,PassthroughRGB:3},Be=`
1
+ import{a as q}from"./chunk-NVTPJUNG.mjs";import{b as J,c as Z}from"./chunk-MJN3LOZ7.mjs";import{a as r}from"./chunk-V6DAD4S4.mjs";import{a as $,d as X,e as L,g as K,h as V,j as Y,k as j,l as Q,m as w}from"./chunk-ENKKLU7B.mjs";import{A as H,x as E}from"./chunk-RNFYEZLL.mjs";import{e as l}from"./chunk-BVF64D6H.mjs";l();l();l();l();var I=200,be=r.enum(["Union","Intersect","Subtract","Difference","Invert","Dilate","Erode","Choke","Feather"]),ee=r.enum(["Alpha","Luminance","Red","Green","Blue"]),ke=r.enum(["WhiteWithAlpha","GrayscaleRGB","AlphaOnly","PassthroughRGB"]),Re=q().field("operation",be.default("Union"),{label:"Operation",description:"Morphological or Boolean set operation applied to input alpha masks."}).field("radius",r.number().min(0).max(I).default(0),{bindable:!0,dataTypes:["Number","Signal"],label:"Radius / Width (px)",description:"Kernel radius in pixels for Dilate, Erode, Choke, or Feather operations."}).field("threshold",r.number().multipleOf(.01).min(0).max(1).default(.5),{bindable:!0,dataTypes:["Number","Signal"],label:"Threshold",description:"Cutoff threshold level (0.0\u20131.0) for binarization step or non-linear choke."}).field("clampMin",r.number().multipleOf(.01).min(0).max(1).default(0),{bindable:!0,dataTypes:["Number","Signal"],label:"Clamp Min",description:"Minimum alpha matte cutoff limit (0.0\u20131.0)."}).field("clampMax",r.number().multipleOf(.01).min(0).max(1).default(1),{bindable:!0,dataTypes:["Number","Signal"],label:"Clamp Max",description:"Maximum alpha matte cutoff limit (0.0\u20131.0)."}).field("channelA",ee.default("Alpha"),{label:"Mask A Channel",description:"Source channel to extract mask from Mask A (Alpha, Luminance, Red, Green, Blue)."}).field("channelB",ee.default("Alpha"),{label:"Mask B Channel",description:"Source channel to extract mask from Mask B (Alpha, Luminance, Red, Green, Blue)."}).field("binarize",r.boolean().default(!1),{label:"Binarize",description:"When enabled, outputs crisp 1-bit binary matte based on threshold."}).field("invertResult",r.boolean().default(!1),{label:"Invert Result",description:"Inverts final matte output."}).field("outputFormat",ke.default("WhiteWithAlpha"),{label:"Output Format",description:"WhiteWithAlpha (rgba(1,1,1,a)), GrayscaleRGB (rgba(a,a,a,1)), AlphaOnly (rgba(0,0,0,a)), PassthroughRGB (Mask A RGB with new alpha)."}).build(),Le=Re.schema,Ve=r.union([J,Z]);l();var Ae={Union:0,Intersect:1,Subtract:2,Difference:3,Invert:4,Dilate:5,Erode:6,Choke:7,Feather:8},ae={Alpha:0,Luminance:1,Red:2,Green:3,Blue:4},ye={WhiteWithAlpha:0,GrayscaleRGB:1,AlphaOnly:2,PassthroughRGB:3},Be=`
2
2
  struct MaskMathUniforms {
3
3
  dirX : f32,
4
4
  dirY : f32,
@@ -1 +1 @@
1
- import{a as x}from"./chunk-2JKXYG6J.mjs";import{h as b,j as g}from"./chunk-ENKKLU7B.mjs";import{A as T,v as w}from"./chunk-FSAELHVT.mjs";import{e as u}from"./chunk-BVF64D6H.mjs";u();u();function d(n,r,i,m,f,h,o){let e=`${r}HandleId`,l=n[e],c=l?n.inputs?.[l]:null,s;if(c?.connectionValid&&c.outputItem){let t=c.outputItem.data;s=t&&typeof t=="object"&&"offset"in t?t.offset:c.outputItem.data}else s=n[r];let p=w(s,i,h,o);return Math.max(m,Math.min(f,p))}var P=new Map;function z(n,r){let i=P.get(r);return i||(i=new x(n),P.set(r,i)),i}var D=async n=>{let{ctx:r,encoder:i,pass:m,targetWidth:f,targetHeight:h,props:o}=n,e=o.virtualMedia?.operation;if(!e||e.op!=="TemporalDeflicker"&&e.op!=="Deflicker")return;let l=o.virtualMedia?.children?.[0];if(!l)return;m.end();let c=f,s=h,p=o.frame??0,t=o.compositionFrame??p,a=o.fps||30,{texture:M}=await b(n,l,{props:{...o,virtualMedia:l,containerWidth:c,containerHeight:s}});n.pass.end();let W=d(e,"blendWeight",.35,0,1,t,a),y=d(e,"disocclusionThreshold",.15,.01,1,t,a),I=d(e,"maxMotionPixels",64,1,256,t,a),v=d(e,"scale",.5,.1,1,t,a),R=Math.round(d(e,"windowSize",2,1,5,t,a)),G=o.virtualMedia?.metadata?.id||e.id||`deflicker_${o.renderId??"global"}`,k=z(r.device,G);p===0&&k.reset();let H=k.execute(M,{blendWeight:W,disocclusionThreshold:y,maxMotionPixels:I,scale:v,windowSize:R},i),U=typeof e.opacity=="number"?e.opacity:1;g(n,H,U)};var j=T({WebGPURenderer:D});export{j as a};
1
+ import{a as x}from"./chunk-2JKXYG6J.mjs";import{h as b,j as g}from"./chunk-ENKKLU7B.mjs";import{A as T,v as w}from"./chunk-RNFYEZLL.mjs";import{e as u}from"./chunk-BVF64D6H.mjs";u();u();function d(n,r,i,m,f,h,o){let e=`${r}HandleId`,l=n[e],c=l?n.inputs?.[l]:null,s;if(c?.connectionValid&&c.outputItem){let t=c.outputItem.data;s=t&&typeof t=="object"&&"offset"in t?t.offset:c.outputItem.data}else s=n[r];let p=w(s,i,h,o);return Math.max(m,Math.min(f,p))}var P=new Map;function z(n,r){let i=P.get(r);return i||(i=new x(n),P.set(r,i)),i}var D=async n=>{let{ctx:r,encoder:i,pass:m,targetWidth:f,targetHeight:h,props:o}=n,e=o.virtualMedia?.operation;if(!e||e.op!=="TemporalDeflicker"&&e.op!=="Deflicker")return;let l=o.virtualMedia?.children?.[0];if(!l)return;m.end();let c=f,s=h,p=o.frame??0,t=o.compositionFrame??p,a=o.fps||30,{texture:M}=await b(n,l,{props:{...o,virtualMedia:l,containerWidth:c,containerHeight:s}});n.pass.end();let W=d(e,"blendWeight",.35,0,1,t,a),y=d(e,"disocclusionThreshold",.15,.01,1,t,a),I=d(e,"maxMotionPixels",64,1,256,t,a),v=d(e,"scale",.5,.1,1,t,a),R=Math.round(d(e,"windowSize",2,1,5,t,a)),G=o.virtualMedia?.metadata?.id||e.id||`deflicker_${o.renderId??"global"}`,k=z(r.device,G);p===0&&k.reset();let H=k.execute(M,{blendWeight:W,disocclusionThreshold:y,maxMotionPixels:I,scale:v,windowSize:R},i),U=typeof e.opacity=="number"?e.opacity:1;g(n,H,U)};var j=T({WebGPURenderer:D});export{j as a};
@@ -1,4 +1,4 @@
1
- import{a as W,d as G,e as $,f as E,g as k,h as A,j,k as K,l as Q,m as q}from"./chunk-ENKKLU7B.mjs";import{A as B,w as H}from"./chunk-FSAELHVT.mjs";import{e as f}from"./chunk-BVF64D6H.mjs";f();f();var xe=`
1
+ import{a as W,d as G,e as $,f as E,g as k,h as A,j,k as K,l as Q,m as q}from"./chunk-ENKKLU7B.mjs";import{A as B,w as H}from"./chunk-RNFYEZLL.mjs";import{e as f}from"./chunk-BVF64D6H.mjs";f();f();var xe=`
2
2
  struct VignetteUniforms {
3
3
  strength : f32,
4
4
  radius : f32,
@@ -1,4 +1,4 @@
1
- import{a as oe}from"./chunk-37EFVZWT.mjs";import{h as re,j as ue}from"./chunk-FSAELHVT.mjs";import{d as N}from"./chunk-6YJP57MZ.mjs";import{e as se}from"./chunk-BVF64D6H.mjs";se();var pe=()=>{if(typeof window>"u")return Promise.resolve();let B=globalThis.scheduler;return typeof B?.yield=="function"?B.yield():new Promise(n=>setTimeout(n,0))},fe=class B{static devicePipelineCache=new WeakMap;static getDeviceCache(n){let i=B.devicePipelineCache.get(n);return i||(i=new Map,B.devicePipelineCache.set(n,i)),i}static getCache(n,i,g,d="",$=1){let p=`${i??"global"}_${g}_${d}_${$}`;return B.devicePipelineCache.get(n)?.get(p)}static clearCache(n,i){if(!i)return;let g=B.devicePipelineCache.get(i);if(!g)return;let d=`${n}_`;for(let[$,p]of g.entries())$.startsWith(d)&&(p.stateBuffer.destroy(),p.inputBuffer?.destroy(),p.outputBuffer?.destroy(),p.uniformBuffer?.destroy(),g.delete($))}static async process(n,i,g,d,$,p,b,le,ce,L,O=1,D,k=!1,W,K,Y,F,y){let m=g.length;if(m===0)return;let h=g[0].length;if(h===0)return;let z=W!==void 0?W/1e3:p/b,E=K!==void 0?K/1e3:0,x=[],H="",j="",G=[],T=new Map,w=$.operation;if(w?.inputs){for(let e of Object.values(w.inputs))if(e?.connectionValid&&e.outputItem&&e.outputItem.type==="Signal"){let t=e.outputItem.data;t&&await N.ensureAudioSourcesExtracted(n,t,b,D)}for(let[e,t]of Object.entries(w))if(e.endsWith("HandleId")&&t){let f=t,s=w.inputs[f];if(s?.connectionValid&&s.outputItem&&s.outputItem.type==="Signal"){let u=s.outputItem.data;if(u){let r=e.replace("HandleId","");if(k){x.push({parameterName:r,signalNodeId:u.nodeId??"sig",signalFnName:u.signalFnName??u.name??"sig_fn"});let l=n.createCommandEncoder(),c=N.getOrCreate1DBuffer(n,l,u.nodeId??"sig",z,E,u,h,d,D,p,b);n.queue.submit([l.finish()]),T.set(r,c),y||G.push(c)}else{let l=u.nodeId;if(l){let c=oe.get(l,D);if(c){x.push({parameterName:r,signalNodeId:l,signalFnName:c.name}),j+=`
1
+ import{a as oe}from"./chunk-37EFVZWT.mjs";import{h as re,j as ue}from"./chunk-RNFYEZLL.mjs";import{d as N}from"./chunk-6YJP57MZ.mjs";import{e as se}from"./chunk-BVF64D6H.mjs";se();var pe=()=>{if(typeof window>"u")return Promise.resolve();let B=globalThis.scheduler;return typeof B?.yield=="function"?B.yield():new Promise(n=>setTimeout(n,0))},fe=class B{static devicePipelineCache=new WeakMap;static getDeviceCache(n){let i=B.devicePipelineCache.get(n);return i||(i=new Map,B.devicePipelineCache.set(n,i)),i}static getCache(n,i,g,d="",$=1){let p=`${i??"global"}_${g}_${d}_${$}`;return B.devicePipelineCache.get(n)?.get(p)}static clearCache(n,i){if(!i)return;let g=B.devicePipelineCache.get(i);if(!g)return;let d=`${n}_`;for(let[$,p]of g.entries())$.startsWith(d)&&(p.stateBuffer.destroy(),p.inputBuffer?.destroy(),p.outputBuffer?.destroy(),p.uniformBuffer?.destroy(),g.delete($))}static async process(n,i,g,d,$,p,b,le,ce,L,O=1,D,k=!1,W,K,Y,F,y){let m=g.length;if(m===0)return;let h=g[0].length;if(h===0)return;let z=W!==void 0?W/1e3:p/b,E=K!==void 0?K/1e3:0,x=[],H="",j="",G=[],T=new Map,w=$.operation;if(w?.inputs){for(let e of Object.values(w.inputs))if(e?.connectionValid&&e.outputItem&&e.outputItem.type==="Signal"){let t=e.outputItem.data;t&&await N.ensureAudioSourcesExtracted(n,t,b,D)}for(let[e,t]of Object.entries(w))if(e.endsWith("HandleId")&&t){let f=t,s=w.inputs[f];if(s?.connectionValid&&s.outputItem&&s.outputItem.type==="Signal"){let u=s.outputItem.data;if(u){let r=e.replace("HandleId","");if(k){x.push({parameterName:r,signalNodeId:u.nodeId??"sig",signalFnName:u.signalFnName??u.name??"sig_fn"});let l=n.createCommandEncoder(),c=N.getOrCreate1DBuffer(n,l,u.nodeId??"sig",z,E,u,h,d,D,p,b);n.queue.submit([l.finish()]),T.set(r,c),y||G.push(c)}else{let l=u.nodeId;if(l){let c=oe.get(l,D);if(c){x.push({parameterName:r,signalNodeId:l,signalFnName:c.name}),j+=`
2
2
  ${c.wgsl}`;let A=[];for(let S of c.fnParams){let U=S.defaultValue;A.push(U%1===0?`${U.toFixed(1)}f`:`${U}f`)}let I=`(${z.toFixed(6)}f + f32(index) / u.sampleRate)`,q=`${E.toFixed(6)}f`,P=["t","0.0","0.0","0.0","index","numSamples","frame","vec4<f32>(0.0)",I,q,...A];r==="makeupGain"&&(H+=`
3
3
  let sigVal_${l} = ${c.name}(${P.join(", ")});
4
4
  dynamicMakeupGain = dynamicMakeupGain + sigVal_${l};
@@ -1,4 +1,4 @@
1
- import{a as g}from"./chunk-EEOUHDUD.mjs";import{A as l,c as m,h as u}from"./chunk-FSAELHVT.mjs";import{e as t}from"./chunk-BVF64D6H.mjs";t();t();var x=["pan"],w=()=>`
1
+ import{a as g}from"./chunk-KRVXRP5F.mjs";import{A as l,c as m,h as u}from"./chunk-RNFYEZLL.mjs";import{e as t}from"./chunk-BVF64D6H.mjs";t();t();var x=["pan"],w=()=>`
2
2
  struct Uniforms {
3
3
  sampleRate : f32,
4
4
  pan : f32,
@@ -1,4 +1,4 @@
1
- import{a as P,d as y,e as F,f as N,g as k,h as C,j as H,k as D,m as O}from"./chunk-ENKKLU7B.mjs";import{A as G}from"./chunk-FSAELHVT.mjs";import{d as x}from"./chunk-6YJP57MZ.mjs";import{e as h}from"./chunk-BVF64D6H.mjs";h();h();function Y(e,t,r,u){if(e==null)return t;if(typeof e=="object"&&e!==null){if("get"in e&&typeof e.get=="function")try{let o=e.get({frame:r,fps:u,time:u>0?r/u:0,duration:0,durationMs:0,progress:0,deltaTime:u>0?1/u:0}),p=Number(o);if(Number.isFinite(p))return p}catch{}if("value"in e){let o=Number(e.value);if(Number.isFinite(o))return o}}else if(typeof e=="function")try{let o=e(r,u),p=Number(o);if(Number.isFinite(p))return p}catch{}let s=Number(e);return Number.isFinite(s)?s:t}function b(e,t,r,u,s,o=0,p=30){let i=`${t}HandleId`,d=e[i],a=d?e.inputs?.[d]:null,l=!!(a?.connectionValid&&a.outputItem?.type==="Signal"),n=l?a?.outputItem?.data:null,c=r;if(l)n&&typeof n=="object"&&"offset"in n&&(c=Number(n.offset??r));else if(a?.connectionValid&&a.outputItem?.type==="Number")c=Number(a.outputItem.data??r);else{let v=e[t]??e.signals?.[t];c=Y(v,r,o,p)}return c=Math.max(u,Math.min(s,c)),{hasSignal:l,sd:n,value:c}}var Z=`
1
+ import{a as P,d as y,e as F,f as N,g as k,h as C,j as H,k as D,m as O}from"./chunk-ENKKLU7B.mjs";import{A as G}from"./chunk-RNFYEZLL.mjs";import{d as x}from"./chunk-6YJP57MZ.mjs";import{e as h}from"./chunk-BVF64D6H.mjs";h();h();function Y(e,t,r,u){if(e==null)return t;if(typeof e=="object"&&e!==null){if("get"in e&&typeof e.get=="function")try{let o=e.get({frame:r,fps:u,time:u>0?r/u:0,duration:0,durationMs:0,progress:0,deltaTime:u>0?1/u:0}),p=Number(o);if(Number.isFinite(p))return p}catch{}if("value"in e){let o=Number(e.value);if(Number.isFinite(o))return o}}else if(typeof e=="function")try{let o=e(r,u),p=Number(o);if(Number.isFinite(p))return p}catch{}let s=Number(e);return Number.isFinite(s)?s:t}function b(e,t,r,u,s,o=0,p=30){let i=`${t}HandleId`,d=e[i],a=d?e.inputs?.[d]:null,l=!!(a?.connectionValid&&a.outputItem?.type==="Signal"),n=l?a?.outputItem?.data:null,c=r;if(l)n&&typeof n=="object"&&"offset"in n&&(c=Number(n.offset??r));else if(a?.connectionValid&&a.outputItem?.type==="Number")c=Number(a.outputItem.data??r);else{let v=e[t]??e.signals?.[t];c=Y(v,r,o,p)}return c=Math.max(u,Math.min(s,c)),{hasSignal:l,sd:n,value:c}}var Z=`
2
2
  struct ModulateUniforms {
3
3
  hue : f32,
4
4
  brightness : f32,
@@ -1,4 +1,4 @@
1
- import{a as le}from"./chunk-NVTPJUNG.mjs";import{b as se,c as ue}from"./chunk-MJN3LOZ7.mjs";import{a as r}from"./chunk-V6DAD4S4.mjs";import{a as te,d as ae,e as G,g as ie,h as _,j as ne,k as re,l as oe,m as L}from"./chunk-ENKKLU7B.mjs";import{A as ee,x as Z}from"./chunk-FSAELHVT.mjs";import{e as n}from"./chunk-BVF64D6H.mjs";n();n();n();n();var N=0,U=1,V=.5,O=50,P=0,F=100,B=0,W=50,H=-100,z=100,ye=r.enum(["Alpha","Luminance","Red","Green","Blue"]),De=r.enum(["Composite","MatteOnly","DecontaminatedRGB"]),we=le().field("decontaminateAmount",r.number().multipleOf(.01).min(N).max(U).default(.7),{bindable:!0,dataTypes:["Number","Signal"],label:"Decontaminate Colors",description:"Amount of edge color spill decontamination/defringing (0.0\u20131.0)."}).field("radius",r.number().multipleOf(.1).min(V).max(O).default(2),{bindable:!0,dataTypes:["Number","Signal"],label:"Edge Detection Radius (px)",description:"Radius in pixels around alpha transitions to refine and decontaminate."}).field("smooth",r.number().min(P).max(F).default(5),{bindable:!0,dataTypes:["Number","Signal"],label:"Smoothness",description:"Matte edge smoothing curve intensity (0\u2013100)."}).field("feather",r.number().multipleOf(.1).min(B).max(W).default(.5),{bindable:!0,dataTypes:["Number","Signal"],label:"Feather (px)",description:"Sub-pixel gaussian softness along the matte boundary."}).field("shiftEdge",r.number().min(H).max(z).default(0),{bindable:!0,dataTypes:["Number","Signal"],label:"Shift Edge (%)",description:"Contract (<0) or expand (>0) the edge boundary (-100% to +100%)."}).field("matteChannel",ye.default("Alpha"),{label:"Matte Channel",description:"Channel to extract matte from (Alpha, Luminance, Red, Green, Blue)."}).field("outputMode",De.default("Composite"),{label:"Output Mode",description:"Composite (decontaminated RGB + refined alpha), MatteOnly (grayscale mask), DecontaminatedRGB (clean RGB with full alpha)."}).build(),Oe=we.schema,Pe=r.union([se,ue]);n();var Ge={Alpha:0,Luminance:1,Red:2,Green:3,Blue:4},_e={Composite:0,MatteOnly:1,DecontaminatedRGB:2},Le=`
1
+ import{a as le}from"./chunk-NVTPJUNG.mjs";import{b as se,c as ue}from"./chunk-MJN3LOZ7.mjs";import{a as r}from"./chunk-V6DAD4S4.mjs";import{a as te,d as ae,e as G,g as ie,h as _,j as ne,k as re,l as oe,m as L}from"./chunk-ENKKLU7B.mjs";import{A as ee,x as Z}from"./chunk-RNFYEZLL.mjs";import{e as n}from"./chunk-BVF64D6H.mjs";n();n();n();n();var N=0,U=1,V=.5,O=50,P=0,F=100,B=0,W=50,H=-100,z=100,ye=r.enum(["Alpha","Luminance","Red","Green","Blue"]),De=r.enum(["Composite","MatteOnly","DecontaminatedRGB"]),we=le().field("decontaminateAmount",r.number().multipleOf(.01).min(N).max(U).default(.7),{bindable:!0,dataTypes:["Number","Signal"],label:"Decontaminate Colors",description:"Amount of edge color spill decontamination/defringing (0.0\u20131.0)."}).field("radius",r.number().multipleOf(.1).min(V).max(O).default(2),{bindable:!0,dataTypes:["Number","Signal"],label:"Edge Detection Radius (px)",description:"Radius in pixels around alpha transitions to refine and decontaminate."}).field("smooth",r.number().min(P).max(F).default(5),{bindable:!0,dataTypes:["Number","Signal"],label:"Smoothness",description:"Matte edge smoothing curve intensity (0\u2013100)."}).field("feather",r.number().multipleOf(.1).min(B).max(W).default(.5),{bindable:!0,dataTypes:["Number","Signal"],label:"Feather (px)",description:"Sub-pixel gaussian softness along the matte boundary."}).field("shiftEdge",r.number().min(H).max(z).default(0),{bindable:!0,dataTypes:["Number","Signal"],label:"Shift Edge (%)",description:"Contract (<0) or expand (>0) the edge boundary (-100% to +100%)."}).field("matteChannel",ye.default("Alpha"),{label:"Matte Channel",description:"Channel to extract matte from (Alpha, Luminance, Red, Green, Blue)."}).field("outputMode",De.default("Composite"),{label:"Output Mode",description:"Composite (decontaminated RGB + refined alpha), MatteOnly (grayscale mask), DecontaminatedRGB (clean RGB with full alpha)."}).build(),Oe=we.schema,Pe=r.union([se,ue]);n();var Ge={Alpha:0,Luminance:1,Red:2,Green:3,Blue:4},_e={Composite:0,MatteOnly:1,DecontaminatedRGB:2},Le=`
2
2
  struct RefineEdgeUniforms {
3
3
  dirX : f32,
4
4
  dirY : f32,
@@ -1,4 +1,4 @@
1
- import{a as F,d as L,e as N,f as W,g as C,h as V,j as B,k as H,l as $,m as E}from"./chunk-ENKKLU7B.mjs";import{A as D,w as U}from"./chunk-FSAELHVT.mjs";import{e as p}from"./chunk-BVF64D6H.mjs";p();p();var fe=`
1
+ import{a as F,d as L,e as N,f as W,g as C,h as V,j as B,k as H,l as $,m as E}from"./chunk-ENKKLU7B.mjs";import{A as D,w as U}from"./chunk-RNFYEZLL.mjs";import{e as p}from"./chunk-BVF64D6H.mjs";p();p();var fe=`
2
2
  struct TileOffsetUniforms {
3
3
  offsetX : f32,
4
4
  offsetY : f32,
@@ -1,4 +1,4 @@
1
- import{a as c}from"./chunk-EEOUHDUD.mjs";import{A as p,c as f,e as m,z as n}from"./chunk-FSAELHVT.mjs";import{e as t}from"./chunk-BVF64D6H.mjs";t();t();var k=["delayTime","feedback","wet","dry"],P=()=>`
1
+ import{a as c}from"./chunk-KRVXRP5F.mjs";import{A as p,c as f,e as m,z as n}from"./chunk-RNFYEZLL.mjs";import{e as t}from"./chunk-BVF64D6H.mjs";t();t();var k=["delayTime","feedback","wet","dry"],P=()=>`
2
2
  struct Uniforms {
3
3
  sampleRate : f32,
4
4
  delaySec : f32,
@@ -1 +1 @@
1
- import{A as F}from"./chunk-FSAELHVT.mjs";import{a as H}from"./chunk-IQC2I5A5.mjs";import{e as u}from"./chunk-BVF64D6H.mjs";u();u();var N=async P=>{let{ctx:e,pass:L,targetView:z,targetTexture:f,targetWidth:w,targetHeight:T,encoder:o,props:n,drawChild:E}=P,{virtualMedia:b}=n;if(b.operation?.op!=="Paint")return;let c=b?.children?.[0],a=n.containerWidth??c?.metadata?.width??w,t=n.containerHeight??c?.metadata?.height??T,g=b.operation,y=g.mode==="mask",k=g.strokes??[];L.end(),e.renderer.pushIdentity();let s=e.renderer.getTemporaryTexture(a,t,[...n.excludeTextures||[],f]),h=s.createView();if(y)e.renderer.beginFrame(o,h,{r:0,g:0,b:0,a:1},a,t,"clear").end();else if(c)await E(c,n,h,s,a,t);else{let l=e.renderer.beginFrame(o,h,{r:0,g:0,b:0,a:0},a,t,"clear");g.backgroundColor&&e.renderer.drawRect(l,{x:0,y:0,width:a,height:t},g.backgroundColor),l.end()}let R=s;if(k.length>0){let l=c?.metadata?.width??a,C=c?.metadata?.height??t,M=l>0?a/l:1,V=C>0?t/C:1,G=!1;(M!==1||V!==1)&&(e.renderer.pushTransform(new DOMMatrix().scale(M,V)),G=!0);let p=e.renderer.getTemporaryTexture(a,t,[s,f,...n.excludeTextures||[]]),j=p.createView();e.renderer.beginFrame(o,j,{r:0,g:0,b:0,a:0},a,t,"clear").end();let v=k,m=p,d=null;for(let i of v)if(i.tool==="brush"){d||(d=e.renderer.beginFrame(o,m.createView(),{r:0,g:0,b:0,a:0},a,t,"load"));let r=H(i.color),x=y?{r:r.a,g:r.a,b:r.a,a:r.a}:{r:r.r*r.a,g:r.g*r.a,b:r.b*r.a,a:r.a};e.renderer.drawPath(d,i.path,x,i.size,{opacity:i.opacity??1,blendMode:"max"})}else if(i.tool==="eraser"){d&&(d.end(),d=null);let r=e.renderer.getTemporaryTexture(a,t,[s,p,f,...n.excludeTextures||[]]),x=r.createView(),U=e.renderer.beginFrame(o,x,{r:0,g:0,b:0,a:0},a,t,"clear");e.renderer.drawPath(U,i.path,"#ffffff",i.size,{blendMode:"max"}),U.end(),m=e.renderer.composite(o,m,r,"mask-out",[s,p,f,...n.excludeTextures||[]])}d&&d.end(),R=e.renderer.composite(o,s,m,"normal",[s,m,f,...n.excludeTextures||[]]),G&&e.renderer.popTransform()}e.renderer.popTransform();let W=e.renderer.beginFrame(o,z,{r:0,g:0,b:0,a:0},w,T,"load");e.renderer.drawTexture(W,R,{x:0,y:0,width:a,height:t}),P.pass=W};var A=F({WebGPURenderer:N});export{A as a};
1
+ import{A as F}from"./chunk-RNFYEZLL.mjs";import{a as H}from"./chunk-IQC2I5A5.mjs";import{e as u}from"./chunk-BVF64D6H.mjs";u();u();var N=async P=>{let{ctx:e,pass:L,targetView:z,targetTexture:f,targetWidth:w,targetHeight:T,encoder:o,props:n,drawChild:E}=P,{virtualMedia:b}=n;if(b.operation?.op!=="Paint")return;let c=b?.children?.[0],a=n.containerWidth??c?.metadata?.width??w,t=n.containerHeight??c?.metadata?.height??T,g=b.operation,y=g.mode==="mask",k=g.strokes??[];L.end(),e.renderer.pushIdentity();let s=e.renderer.getTemporaryTexture(a,t,[...n.excludeTextures||[],f]),h=s.createView();if(y)e.renderer.beginFrame(o,h,{r:0,g:0,b:0,a:1},a,t,"clear").end();else if(c)await E(c,n,h,s,a,t);else{let l=e.renderer.beginFrame(o,h,{r:0,g:0,b:0,a:0},a,t,"clear");g.backgroundColor&&e.renderer.drawRect(l,{x:0,y:0,width:a,height:t},g.backgroundColor),l.end()}let R=s;if(k.length>0){let l=c?.metadata?.width??a,C=c?.metadata?.height??t,M=l>0?a/l:1,V=C>0?t/C:1,G=!1;(M!==1||V!==1)&&(e.renderer.pushTransform(new DOMMatrix().scale(M,V)),G=!0);let p=e.renderer.getTemporaryTexture(a,t,[s,f,...n.excludeTextures||[]]),j=p.createView();e.renderer.beginFrame(o,j,{r:0,g:0,b:0,a:0},a,t,"clear").end();let v=k,m=p,d=null;for(let i of v)if(i.tool==="brush"){d||(d=e.renderer.beginFrame(o,m.createView(),{r:0,g:0,b:0,a:0},a,t,"load"));let r=H(i.color),x=y?{r:r.a,g:r.a,b:r.a,a:r.a}:{r:r.r*r.a,g:r.g*r.a,b:r.b*r.a,a:r.a};e.renderer.drawPath(d,i.path,x,i.size,{opacity:i.opacity??1,blendMode:"max"})}else if(i.tool==="eraser"){d&&(d.end(),d=null);let r=e.renderer.getTemporaryTexture(a,t,[s,p,f,...n.excludeTextures||[]]),x=r.createView(),U=e.renderer.beginFrame(o,x,{r:0,g:0,b:0,a:0},a,t,"clear");e.renderer.drawPath(U,i.path,"#ffffff",i.size,{blendMode:"max"}),U.end(),m=e.renderer.composite(o,m,r,"mask-out",[s,p,f,...n.excludeTextures||[]])}d&&d.end(),R=e.renderer.composite(o,s,m,"normal",[s,m,f,...n.excludeTextures||[]]),G&&e.renderer.popTransform()}e.renderer.popTransform();let W=e.renderer.beginFrame(o,z,{r:0,g:0,b:0,a:0},w,T,"load");e.renderer.drawTexture(W,R,{x:0,y:0,width:a,height:t}),P.pass=W};var A=F({WebGPURenderer:N});export{A as a};
@@ -1,4 +1,4 @@
1
- import{a as C,d as R,g as B,h as w,j as H,m as L}from"./chunk-ENKKLU7B.mjs";import{A as E}from"./chunk-FSAELHVT.mjs";import{e as v}from"./chunk-BVF64D6H.mjs";v();v();v();function U(n){let t=[...n].sort((e,c)=>e.x-c.x),s=[];for(let e of t)(s.length===0||Math.abs(e.x-s[s.length-1].x)>1e-6)&&s.push(e);let r=s.length;if(r===0)return e=>e;if(r===1)return()=>s[0].y;let i=new Float32Array(r-1),o=new Float32Array(r-1),u=new Float32Array(r-1);for(let e=0;e<r-1;e++)i[e]=s[e+1].x-s[e].x,o[e]=s[e+1].y-s[e].y,u[e]=o[e]/i[e];let a=new Float32Array(r);a[0]=u[0];for(let e=1;e<r-1;e++)a[e]=(u[e-1]+u[e])/2;a[r-1]=u[r-2];for(let e=0;e<r-1;e++){let c=u[e];if(Math.abs(c)<1e-9)a[e]=0,a[e+1]=0;else{let d=a[e]/c,l=a[e+1]/c,h=d*d,g=l*l;if(h+g>9){let p=3/Math.sqrt(h+g);a[e]=p*d*c,a[e+1]=p*l*c}}}return e=>{if(e<=s[0].x)return s[0].y;if(e>=s[r-1].x)return s[r-1].y;let c=0,d=r-2,l=0;for(;c<=d;){let x=c+d>>1;if(e>=s[x].x&&e<=s[x+1].x){l=x;break}e<s[x].x?d=x-1:c=x+1}let h=i[l],g=(e-s[l].x)/h,p=g*g,m=p*g,f=2*m-3*p+1,_=m-2*p+g,b=-2*m+3*p,P=m-p,G=s[l].y*f+h*a[l]*_+s[l+1].y*b+h*a[l+1]*P;return Math.max(0,Math.min(1,G))}}v();var Y=`
1
+ import{a as C,d as R,g as B,h as w,j as H,m as L}from"./chunk-ENKKLU7B.mjs";import{A as E}from"./chunk-RNFYEZLL.mjs";import{e as v}from"./chunk-BVF64D6H.mjs";v();v();v();function U(n){let t=[...n].sort((e,c)=>e.x-c.x),s=[];for(let e of t)(s.length===0||Math.abs(e.x-s[s.length-1].x)>1e-6)&&s.push(e);let r=s.length;if(r===0)return e=>e;if(r===1)return()=>s[0].y;let i=new Float32Array(r-1),o=new Float32Array(r-1),u=new Float32Array(r-1);for(let e=0;e<r-1;e++)i[e]=s[e+1].x-s[e].x,o[e]=s[e+1].y-s[e].y,u[e]=o[e]/i[e];let a=new Float32Array(r);a[0]=u[0];for(let e=1;e<r-1;e++)a[e]=(u[e-1]+u[e])/2;a[r-1]=u[r-2];for(let e=0;e<r-1;e++){let c=u[e];if(Math.abs(c)<1e-9)a[e]=0,a[e+1]=0;else{let d=a[e]/c,l=a[e+1]/c,h=d*d,g=l*l;if(h+g>9){let p=3/Math.sqrt(h+g);a[e]=p*d*c,a[e+1]=p*l*c}}}return e=>{if(e<=s[0].x)return s[0].y;if(e>=s[r-1].x)return s[r-1].y;let c=0,d=r-2,l=0;for(;c<=d;){let x=c+d>>1;if(e>=s[x].x&&e<=s[x+1].x){l=x;break}e<s[x].x?d=x-1:c=x+1}let h=i[l],g=(e-s[l].x)/h,p=g*g,m=p*g,f=2*m-3*p+1,_=m-2*p+g,b=-2*m+3*p,P=m-p,G=s[l].y*f+h*a[l]*_+s[l+1].y*b+h*a[l+1]*P;return Math.max(0,Math.min(1,G))}}v();var Y=`
2
2
  @group(0) @binding(0) var t_src: texture_2d<f32>;
3
3
  @group(0) @binding(1) var<storage, read_write> bins_r: array<atomic<u32>, 256>;
4
4
  @group(0) @binding(2) var<storage, read_write> bins_g: array<atomic<u32>, 256>;
@@ -1,4 +1,4 @@
1
- import{a as m}from"./chunk-JAJOZG5P.mjs";import{a as U,d as c,f as A,g as M,h as V,j as D,k as B,m as H}from"./chunk-ENKKLU7B.mjs";import{A as P}from"./chunk-FSAELHVT.mjs";import{d as h}from"./chunk-6YJP57MZ.mjs";import{e as L}from"./chunk-BVF64D6H.mjs";L();L();var Q=`
1
+ import{a as m}from"./chunk-JAJOZG5P.mjs";import{a as U,d as c,f as A,g as M,h as V,j as D,k as B,m as H}from"./chunk-ENKKLU7B.mjs";import{A as P}from"./chunk-RNFYEZLL.mjs";import{d as h}from"./chunk-6YJP57MZ.mjs";import{e as L}from"./chunk-BVF64D6H.mjs";L();L();var Q=`
2
2
  struct LutUniforms {
3
3
  intensity : f32,
4
4
  lutSize : f32,
@@ -1,4 +1,4 @@
1
- import{a as X,d as f,e as _,f as P,g as Y,h as D,j as U,k as V,m as B}from"./chunk-ENKKLU7B.mjs";import{A as R}from"./chunk-FSAELHVT.mjs";import{d}from"./chunk-6YJP57MZ.mjs";import{e as g}from"./chunk-BVF64D6H.mjs";g();g();var j=0,Q=500;function q(t,e,r){return Math.min(r,Math.max(e,t))}var z=`
1
+ import{a as X,d as f,e as _,f as P,g as Y,h as D,j as U,k as V,m as B}from"./chunk-ENKKLU7B.mjs";import{A as R}from"./chunk-RNFYEZLL.mjs";import{d}from"./chunk-6YJP57MZ.mjs";import{e as g}from"./chunk-BVF64D6H.mjs";g();g();var j=0,Q=500;function q(t,e,r){return Math.min(r,Math.max(e,t))}var z=`
2
2
  struct DisplacementUniforms {
3
3
  strengthX : f32,
4
4
  strengthY : f32,
@@ -183,7 +183,7 @@ fn fs(@builtin(position) pos: vec4<f32>) -> @location(0) vec4<f32> {
183
183
 
184
184
  return accum / max(totalWeight, 0.0001);
185
185
  }
186
- `,ut=class{textures=[];texturesByKey=new Map;index=0;getTexture(t,e,r,i,n){let s=new Set(Array.isArray(n)?n:n?[n]:[]),a=`${e}x${r}:${i}`,o=this.texturesByKey.get(a);if(o)for(let l=0;l<o.length;l++){let h=o[l];if(!s.has(h)){o.splice(l,1),o.unshift(h);let p=this.textures.indexOf(h);return p>=this.index&&(this.textures.splice(p,1),this.textures.splice(this.index,0,h),this.index++),h}}let c=t.createTexture({size:[e,r],format:i,usage:GPUTextureUsage.RENDER_ATTACHMENT|GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_SRC});return this.texturesByKey.has(a)||this.texturesByKey.set(a,[]),this.texturesByKey.get(a).unshift(c),this.textures.splice(this.index,0,c),this.index++,c}reset(){this.index=0}destroy(){for(let t of this.textures)t.destroy();this.textures=[],this.texturesByKey.clear(),this.index=0}},Vt={normal:0,"source-over":0,multiply:1,screen:2,overlay:3,darken:4,lighten:5,"color-dodge":6,"color-burn":7,"hard-light":8,"soft-light":9,difference:10,exclusion:11,hue:12,saturation:13,color:14,luminosity:15,"mask-in":16,"destination-in":16,"mask-out":17,"destination-out":17,"source-in":18,"source-out":19,"source-atop":20,"destination-over":21,"destination-atop":22,lighter:23,copy:24,xor:25,"luma-in":26,"luma-out":27},E=class{device;compositeUniformLayout;dualTextureLayout;motionBlurUniformLayout;singleTextureLayout;compositePipeline;motionBlurPipeline;compositePool;motionBlurPool;texturePool;compositeUniformBindGroupCache=new M;motionBlurUniformBindGroupCache=new M;compositeData=new Uint32Array(4);motionBlurData=new Float32Array(8);constructor(t,e){this.device=t,this.compositePool=new G(1024,GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST),this.motionBlurPool=new G(1024,GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST),this.texturePool=new ut,this.compositeUniformLayout=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,buffer:{type:"uniform"}}]}),this.dualTextureLayout=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:2,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),this.motionBlurUniformLayout=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,buffer:{type:"uniform"}}]}),this.singleTextureLayout=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]});let r=t.createPipelineLayout({bindGroupLayouts:[this.compositeUniformLayout,this.dualTextureLayout]}),i=t.createShaderModule({label:"composite.wgsl",code:Bt});this.compositePipeline=t.createRenderPipeline({label:"CompositePipeline",layout:r,vertex:{module:i,entryPoint:"vs"},fragment:{module:i,entryPoint:"fs",targets:[{format:e}]},primitive:{topology:"triangle-strip"}});let n=t.createPipelineLayout({bindGroupLayouts:[this.motionBlurUniformLayout,this.singleTextureLayout]}),s=t.createShaderModule({label:"motion-blur-2d.wgsl",code:Et});this.motionBlurPipeline=t.createRenderPipeline({label:"MotionBlurPipeline",layout:n,vertex:{module:s,entryPoint:"vs"},fragment:{module:s,entryPoint:"fs",targets:[{format:e}]},primitive:{topology:"triangle-list"}})}resetPools(){this.compositePool.reset(),this.motionBlurPool.reset(),this.texturePool.reset()}getTexture(t,e,r,i,n){return this.texturePool.getTexture(t,e,r,i,n)}getBuffer(t,e){return this.compositePool.getBuffer(t,e)}composite(t,e,r,i,n,s,a,o){let c=r.getSampler(this.device),l=[i,n];o&&(Array.isArray(o)?l.push(...o):l.push(o));let h=this.texturePool.getTexture(this.device,i.width,i.height,a,l);this.compositeData[0]=Vt[s]??0;let p=this.compositePool.getBuffer(this.device,this.compositeData),d=t.beginRenderPass({colorAttachments:[{view:h.createView(),loadOp:"clear",storeOp:"store",clearValue:{r:0,g:0,b:0,a:0}}]});d.setPipeline(this.compositePipeline);let f=this.compositeUniformBindGroupCache.getBindGroup(this.device,this.compositeUniformLayout,p);d.setBindGroup(0,f);let m=e.getCompositeBindGroup(this.device,this.dualTextureLayout,i,n,c);return d.setBindGroup(1,m),d.draw(4),d.end(),h}applyMotionBlur(t,e,r,i,n,s,a=180,o=16,c,l){if(Math.abs(n)<.1&&Math.abs(s)<.1||a<=0)return i;let h=r.getSampler(this.device),p=[i];l&&(Array.isArray(l)?p.push(...l):p.push(l));let d=this.texturePool.getTexture(this.device,i.width,i.height,c,p);this.motionBlurData[0]=n/i.width,this.motionBlurData[1]=s/i.height,this.motionBlurData[2]=0,this.motionBlurData[3]=0,this.motionBlurData[4]=a/360,this.motionBlurData[5]=o,this.motionBlurData[6]=i.width,this.motionBlurData[7]=i.height;let f=this.motionBlurPool.getBuffer(this.device,this.motionBlurData),m=t.beginRenderPass({colorAttachments:[{view:d.createView(),loadOp:"clear",storeOp:"store",clearValue:{r:0,g:0,b:0,a:0}}]});m.setPipeline(this.motionBlurPipeline);let y=this.motionBlurUniformBindGroupCache.getBindGroup(this.device,this.motionBlurUniformLayout,f);return m.setBindGroup(0,y),m.setBindGroup(1,e.getBindGroup(this.device,this.singleTextureLayout,i,h)),m.draw(3),m.end(),d}destroy(){this.compositePool.destroy(),this.motionBlurPool.destroy(),this.texturePool.destroy(),this.compositeUniformBindGroupCache.destroy(),this.motionBlurUniformBindGroupCache.destroy()}};x();x();var V=class{cache=new WeakMap;dualCache=new WeakMap;getBindGroup(t,e,r,i){let n=this.cache.get(r);n||(n=new Map,this.cache.set(r,n));let s=n.get(e);return s||(s=t.createBindGroup({layout:e,entries:[{binding:0,resource:r.createView()},{binding:1,resource:i}]}),n.set(e,s)),s}getCompositeBindGroup(t,e,r,i,n){let s=this.dualCache.get(r);s||(s=new WeakMap,this.dualCache.set(r,s));let a=s.get(i);a||(a=new Map,s.set(i,a));let o=a.get(e);return o||(o=t.createBindGroup({layout:e,entries:[{binding:0,resource:r.createView()},{binding:1,resource:i.createView()},{binding:2,resource:n}]}),a.set(e,o)),o}destroy(){this.cache=new WeakMap,this.dualCache=new WeakMap}};x();var W=class{scissorStack=[];stencilStack=[];pushScissor(t,e,r){this.scissorStack.push({rect:t,surfaceWidth:e,surfaceHeight:r})}popScissor(){this.scissorStack.length>0&&this.scissorStack.pop()}saveScissors(){return[...this.scissorStack]}restoreScissors(t){this.scissorStack=[...t]}clearScissors(){this.scissorStack=[]}getCurrentScissor(t,e){let r=this.scissorStack[this.scissorStack.length-1];if(r&&!(t!==void 0&&e!==void 0&&r.surfaceWidth!==void 0&&r.surfaceHeight!==void 0&&r.surfaceWidth!==0&&r.surfaceHeight!==0&&(r.surfaceWidth!==t||r.surfaceHeight!==e)))return r.rect}pushStencilClip(t){this.stencilStack.push(t)}popStencilClip(){this.stencilStack.length>0&&this.stencilStack.pop()}getCurrentStencil(){return this.stencilStack[this.stencilStack.length-1]}applyScissorToPass(t,e,r){let i=this.getCurrentScissor(e,r);if(!i){t.setScissorRect(0,0,Math.max(1,Math.floor(e)),Math.max(1,Math.floor(r)));return}let n=Math.max(0,Math.floor(i.x)),s=Math.max(0,Math.floor(i.y)),a=Math.min(e,Math.ceil(i.x+i.width)),o=Math.min(r,Math.ceil(i.y+i.height)),c=Math.max(0,a-n),l=Math.max(0,o-s);if(!Number.isFinite(n)||!Number.isFinite(s)||!Number.isFinite(c)||!Number.isFinite(l)||c<=0||l<=0)t.setScissorRect(0,0,1,1);else{let h=Math.min(c,Math.max(0,e-n)),p=Math.min(l,Math.max(0,r-s));h<=0||p<=0?t.setScissorRect(0,0,1,1):t.setScissorRect(Math.floor(n),Math.floor(s),Math.floor(h),Math.floor(p))}}destroy(){this.scissorStack=[],this.stencilStack=[]}};x();function Dt(u,t,e,r,i=24){let n=[],s=u;for(let a=1;a<=i;a++){let o=a/i,c=1-o,l=c*c,h=l*c,p=o*o,d=p*o,f={x:h*u.x+3*l*o*t.x+3*c*p*e.x+d*r.x,y:h*u.y+3*l*o*t.y+3*c*p*e.y+d*r.y};n.push({p0:s,p1:f}),s=f}return n}function Ct(u,t,e,r=16){let i=[],n=u;for(let s=1;s<=r;s++){let a=s/r,o=1-a,c=o*o,l=a*a,h={x:c*u.x+2*o*a*t.x+l*e.x,y:c*u.y+2*o*a*t.y+l*e.y};i.push({p0:n,p1:h}),n=h}return i}function Wt(u,t,e,r,i,n,s){let a=Math.abs(t),o=Math.abs(e);if(a<1e-9||o<1e-9)return[{p0:u,p1:s}];if(Math.hypot(s.x-u.x,s.y-u.y)<1e-9)return[];let c=r*Math.PI/180,l=Math.cos(c),h=Math.sin(c),p=(u.x-s.x)/2,d=(u.y-s.y)/2,f=l*p+h*d,m=-h*p+l*d,y=f*f/(a*a)+m*m/(o*o);y>1&&(a*=Math.sqrt(y),o*=Math.sqrt(y));let g=a*a*o*o-a*a*m*m-o*o*f*f,P=a*a*m*m+o*o*f*f,v=(i===n?-1:1)*Math.sqrt(Math.max(0,g/P)),b=v*a*m/o,S=-v*o*f/a,U=l*b-h*S+(u.x+s.x)/2,F=h*b+l*S+(u.y+s.y)/2,tt=(k,_,R,L)=>Math.atan2(k*L-_*R,k*R+_*L),et=tt(1,0,(f-b)/a,(m-S)/o),B=tt((f-b)/a,(m-S)/o,(-f-b)/a,(-m-S)/o);!n&&B>0&&(B-=2*Math.PI),n&&B<0&&(B+=2*Math.PI);let rt=Math.max(4,Math.ceil(Math.abs(B)/(2*Math.PI)*64)),ft=[],dt=u;for(let k=1;k<=rt;k++){let _=et+B*k/rt,R=a*Math.cos(_),L=o*Math.sin(_),mt=k===rt?s:{x:l*R-h*L+U,y:h*R+l*L+F};ft.push({p0:dt,p1:mt}),dt=mt}return ft}function z(u){let t=[];if(!u||typeof u!="string")return t;let e=[],r=/([a-df-z])|([-+]?(?:\d*\.\d+|\d+)(?:[eE][-+]?\d+)?)/gi,i;for(;(i=r.exec(u))!==null;)i[1]?e.push(i[1]):i[2]&&e.push(parseFloat(i[2]));let n=0,s={x:0,y:0},a={x:0,y:0},o=null,c=null;for(;n<e.length;){let l=e[n++];if(typeof l!="string")continue;let h=l,p=h===h.toLowerCase(),d=h.toUpperCase(),f=()=>n<e.length&&typeof e[n]=="number"?e[n++]:0;switch(d){case"M":{let m=!0;for(;n<e.length&&typeof e[n]=="number";){let y=f(),g=f();p&&(y+=s.x,g+=s.y),m?(s={x:y,y:g},a={x:y,y:g},m=!1):(t.push({p0:s,p1:{x:y,y:g}}),s={x:y,y:g})}o=null,c=null;break}case"L":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f();p&&(m+=s.x,y+=s.y),t.push({p0:s,p1:{x:m,y}}),s={x:m,y}}o=null,c=null;break}case"H":{for(;n<e.length&&typeof e[n]=="number";){let m=f();p&&(m+=s.x);let y={x:m,y:s.y};t.push({p0:s,p1:y}),s=y}o=null,c=null;break}case"V":{for(;n<e.length&&typeof e[n]=="number";){let m=f();p&&(m+=s.y);let y={x:s.x,y:m};t.push({p0:s,p1:y}),s=y}o=null,c=null;break}case"C":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f(),g=f(),P=f(),v=f(),b=f();p&&(m+=s.x,y+=s.y,g+=s.x,P+=s.y,v+=s.x,b+=s.y);let S={x:m,y},U={x:g,y:P},F={x:v,y:b};t.push(...Dt(s,S,U,F)),s=F,o=U}c=null;break}case"S":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f(),g=f(),P=f();p&&(m+=s.x,y+=s.y,g+=s.x,P+=s.y);let v;o?v={x:2*s.x-o.x,y:2*s.y-o.y}:v={x:s.x,y:s.y};let b={x:m,y},S={x:g,y:P};t.push(...Dt(s,v,b,S)),s=S,o=b}c=null;break}case"Q":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f(),g=f(),P=f();p&&(m+=s.x,y+=s.y,g+=s.x,P+=s.y);let v={x:m,y},b={x:g,y:P};t.push(...Ct(s,v,b)),s=b,c=v}o=null;break}case"T":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f();p&&(m+=s.x,y+=s.y);let g;c?g={x:2*s.x-c.x,y:2*s.y-c.y}:g={x:s.x,y:s.y};let P={x:m,y};t.push(...Ct(s,g,P)),s=P,c=g}o=null;break}case"A":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f(),g=f(),P=f()!==0,v=f()!==0,b=f(),S=f();p&&(b+=s.x,S+=s.y);let U={x:b,y:S};t.push(...Wt(s,m,y,g,P,v,U)),s=U}o=null,c=null;break}case"Z":{Math.hypot(s.x-a.x,s.y-a.y)>1e-5&&t.push({p0:s,p1:a}),s=a,o=null,c=null;break}default:break}}return t}function j(u,t,e,r=0){if(u.length===0)return[];let i=[],n=0;for(let l of u){let h=Math.hypot(l.p1.x-l.p0.x,l.p1.y-l.p0.y);i.push(h),n+=h}if(n<1e-6)return[];let s=Math.abs(r)>1?r%360/360:r,a=(t+s)%1,o=(e+s)%1;a<0&&(a+=1),o<0&&(o+=1);let c=(l,h)=>{if(l>=h)return[];let p=[],d=0;for(let f=0;f<u.length;f++){let m=u[f],y=i[f],g=d,P=d+y;if(d=P,P<=l||g>=h||y<1e-6)continue;let v=Math.max(0,(l-g)/y),b=Math.min(1,(h-g)/y);if(b>v){let S={x:m.p0.x+(m.p1.x-m.p0.x)*v,y:m.p0.y+(m.p1.y-m.p0.y)*v},U={x:m.p0.x+(m.p1.x-m.p0.x)*b,y:m.p0.y+(m.p1.y-m.p0.y)*b};p.push({p0:S,p1:U})}}return p};if(t===0&&e===1&&r===0)return[...u];if(Math.abs(a-o)<1e-5)return[];if(a<=o)return c(a*n,o*n);{let l=c(a*n,n),h=c(0,o*n);return[...l,...h]}}function lt(u,t,e=0){if(u.length===0||t.length===0)return u;let r=0;for(let d of t)r+=d;if(r<1e-5)return u;let i=0,n=[];for(let d of u){let f=Math.hypot(d.p1.x-d.p0.x,d.p1.y-d.p0.y);n.push(f),i+=f}let s=[],a=(e%r+r)%r,o=0,c=!0,l=a;for(;l>t[o];)l-=t[o],o=(o+1)%t.length,c=!c;let h=t[o]-l,p=0;for(;p<i;){let d=Math.min(h,i-p);if(c&&d>1e-4){let f=j(u,p/i,(p+d)/i);s.push(...f)}p+=d,o=(o+1)%t.length,c=!c,h=t[o]}return s}function Tt(u,t,e=0,r=0,i=0,n=0){let s=Math.min(u/2,t/2),a=Math.min(e,s),o=Math.min(r,s),c=Math.min(i,s),l=Math.min(n,s);return a===0&&o===0&&c===0&&l===0?`M 0 0 L ${u} 0 L ${u} ${t} L 0 ${t} Z`:[`M ${a} 0`,`L ${u-o} 0`,o>0?`Q ${u} 0 ${u} ${o}`:`L ${u} 0`,`L ${u} ${t-c}`,c>0?`Q ${u} ${t} ${u-c} ${t}`:`L ${u} ${t}`,`L ${l} ${t}`,l>0?`Q 0 ${t} 0 ${t-l}`:`L 0 ${t}`,`L 0 ${a}`,a>0?`Q 0 0 ${a} 0`:"L 0 0","Z"].join(" ")}function zt(u,t){let e=Math.min(u,t)/2,r=u/2,i=t/2,n=e*.5522847498;return[`M ${r} ${i-e}`,`C ${r+n} ${i-e} ${r+e} ${i-n} ${r+e} ${i}`,`C ${r+e} ${i+n} ${r+n} ${i+e} ${r} ${i+e}`,`C ${r-n} ${i+e} ${r-e} ${i+n} ${r-e} ${i}`,`C ${r-e} ${i-n} ${r-n} ${i-e} ${r} ${i-e}`,"Z"].join(" ")}function jt(u,t){let e=u/2,r=t/2,i=e,n=r,s=e*.5522847498,a=r*.5522847498;return[`M ${i} ${n-r}`,`C ${i+s} ${n-r} ${i+e} ${n-a} ${i+e} ${n}`,`C ${i+e} ${n+a} ${i+s} ${n+r} ${i} ${n+r}`,`C ${i-s} ${n+r} ${i-e} ${n+a} ${i-e} ${n}`,`C ${i-e} ${n-a} ${i-s} ${n-r} ${i} ${n-r}`,"Z"].join(" ")}function Ht(u,t,e=5){let r=Math.max(3,e),i=Math.min(u,t)/2,n=u/2,s=t/2,a=[];for(let o=0;o<r;o++){let c=-Math.PI/2+o*2*Math.PI/r;a.push({x:n+i*Math.cos(c),y:s+i*Math.sin(c)})}return a.map((o,c)=>`${c===0?"M":"L"} ${o.x} ${o.y}`).join(" ")+" Z"}function Nt(u,t,e=5,r=.5){let i=Math.max(3,e),n=Math.min(u,t)/2,s=n*Math.max(.01,Math.min(.99,r)),a=u/2,o=t/2,c=[];for(let l=0;l<i*2;l++){let h=-Math.PI/2+l*Math.PI/i,p=l%2===0?n:s;c.push({x:a+p*Math.cos(h),y:o+p*Math.sin(h)})}return c.map((l,h)=>`${h===0?"M":"L"} ${l.x} ${l.y}`).join(" ")+" Z"}function qt(u,t,e=40,r=40,i=20){let n=Math.min(e,t),s=Math.min(r,u),a=Math.min(i,n),o=t/2;return[`M 0 ${o-a/2}`,`L ${u-s} ${o-a/2}`,`L ${u-s} ${o-n/2}`,`L ${u} ${o}`,`L ${u-s} ${o+n/2}`,`L ${u-s} ${o+a/2}`,`L 0 ${o+a/2}`,"Z"].join(" ")}function ct(u){let{shapeType:t,width:e,height:r}=u;switch(t){case"rect":return Tt(e,r,u.cornerRadius??0,u.cornerRadius??0,u.cornerRadius??0,u.cornerRadius??0);case"circle":return zt(e,r);case"ellipse":return jt(e,r);case"polygon":return Ht(e,r,u.polygonSides??5);case"star":return Nt(e,r,u.starPoints??5,u.starInnerRadiusRatio??.5);case"arrow":return qt(e,r,u.arrowHeadWidth??40,u.arrowHeadLength??40,u.arrowShaftWidth??20);case"path":return u.path??"";default:return""}}function kt(u){if(u.length<3)return[];if(u.length===3)return[u[0],u[1],u[2]];let t=[...u],e=t[t.length-1],r=t[0];if(Math.hypot(e.x-r.x,e.y-r.y)<1e-5&&t.pop(),t.length<3)return[];let i=0;for(let h=0;h<t.length;h++){let p=(h+1)%t.length;i+=t[h].x*t[p].y-t[p].x*t[h].y}i<0&&t.reverse();let n=(h,p,d,f)=>{let m=(d.x-p.x)*(h.y-p.y)-(d.y-p.y)*(h.x-p.x),y=(f.x-d.x)*(h.y-d.y)-(f.y-d.y)*(h.x-d.x),g=(p.x-f.x)*(h.y-f.y)-(p.y-f.y)*(h.x-f.x);return m>=-1e-6&&y>=-1e-6&&g>=-1e-6},s=(h,p,d,f)=>{if((p.x-h.x)*(d.y-h.y)-(p.y-h.y)*(d.x-h.x)<=1e-7)return!1;for(let y of f)if(!(y===h||y===p||y===d)&&n(y,h,p,d))return!1;return!0},a=[],o=[...t],c=0,l=o.length*o.length*2;for(;o.length>3&&c<l;){c++;let h=!1;for(let p=0;p<o.length;p++){let d=o[(p-1+o.length)%o.length],f=o[p],m=o[(p+1)%o.length];if(s(d,f,m,o)){a.push(d,f,m),o.splice(p,1),h=!0;break}}h||(a.push(o[0],o[1],o[2]),o.splice(1,1))}return o.length===3&&a.push(o[0],o[1],o[2]),a}function Ft(u){let{shapeType:t,width:e,height:r}=u;if(t==="rect"){let i=u.cornerRadius??0;if(i<=0)return new Float32Array([0,0,e,0,e,r,0,0,e,r,0,r]);let n=Tt(e,r,i,i,i,i),a=z(n).map(l=>l.p0),o=kt(a),c=new Float32Array(o.length*2);for(let l=0;l<o.length;l++)c[l*2]=o[l].x,c[l*2+1]=o[l].y;return c}if(t==="circle"||t==="ellipse"){let i=e/2,n=r/2,s=t==="circle"?Math.min(e,r)/2:e/2,a=t==="circle"?s:r/2,o=48,c=new Float32Array(o*3*2),l=0;for(let h=0;h<o;h++){let p=h*2*Math.PI/o,d=(h+1)*2*Math.PI/o;c[l++]=i,c[l++]=n,c[l++]=i+s*Math.cos(p),c[l++]=n+a*Math.sin(p),c[l++]=i+s*Math.cos(d),c[l++]=n+a*Math.sin(d)}return c}if(t==="polygon"){let i=Math.max(3,u.polygonSides??5),n=Math.min(e,r)/2,s=e/2,a=r/2,o=new Float32Array(i*3*2),c=0;for(let l=0;l<i;l++){let h=-Math.PI/2+l*2*Math.PI/i,p=-Math.PI/2+(l+1)*2*Math.PI/i;o[c++]=s,o[c++]=a,o[c++]=s+n*Math.cos(h),o[c++]=a+n*Math.sin(h),o[c++]=s+n*Math.cos(p),o[c++]=a+n*Math.sin(p)}return o}if(t==="star"){let i=Math.max(3,u.starPoints??5),n=Math.min(e,r)/2,s=n*Math.max(.01,Math.min(.99,u.starInnerRadiusRatio??.5)),a=e/2,o=r/2,c=i*2,l=new Float32Array(c*3*2),h=0;for(let p=0;p<c;p++){let d=-Math.PI/2+p*Math.PI/i,f=-Math.PI/2+(p+1)*Math.PI/i,m=p%2===0?n:s,y=(p+1)%2===0?n:s;l[h++]=a,l[h++]=o,l[h++]=a+m*Math.cos(d),l[h++]=o+m*Math.sin(d),l[h++]=a+y*Math.cos(f),l[h++]=o+y*Math.sin(f)}return l}if(t==="arrow"){let i=Math.min(u.arrowHeadWidth??40,r),n=Math.min(u.arrowHeadLength??40,e),s=Math.min(u.arrowShaftWidth??20,i),a=r/2,o=0,c=e-n,l=e,h=a-s/2,p=a+s/2,d=a-i/2,f=a+i/2;return new Float32Array([o,h,c,h,c,p,o,h,c,p,o,p,c,d,l,a,c,f])}if(t==="path"&&u.path){let i=z(u.path);if(i.length===0)return new Float32Array(0);let n=i.map(o=>o.p0),s=kt(n),a=new Float32Array(s.length*2);for(let o=0;o<s.length;o++)a[o*2]=s[o].x,a[o*2+1]=s[o].y;return a}return new Float32Array(0)}x();x();var _t=`
186
+ `,ut=class{textures=[];texturesByKey=new Map;index=0;getTexture(t,e,r,i,n){let s=new Set(Array.isArray(n)?n:n?[n]:[]),a=`${e}x${r}:${i}`,o=this.texturesByKey.get(a);if(o)for(let l=0;l<o.length;l++){let h=o[l];if(!s.has(h)){o.splice(l,1),o.unshift(h);let p=this.textures.indexOf(h);return p>=this.index&&(this.textures.splice(p,1),this.textures.splice(this.index,0,h),this.index++),h}}let c=t.createTexture({size:[e,r],format:i,usage:GPUTextureUsage.RENDER_ATTACHMENT|GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_SRC});return this.texturesByKey.has(a)||this.texturesByKey.set(a,[]),this.texturesByKey.get(a).unshift(c),this.textures.splice(this.index,0,c),this.index++,c}reset(){this.index=0}destroy(){for(let t of this.textures)t.destroy();this.textures=[],this.texturesByKey.clear(),this.index=0}},Vt={normal:0,"source-over":0,multiply:1,screen:2,overlay:3,darken:4,lighten:5,"color-dodge":6,"color-burn":7,"hard-light":8,"soft-light":9,difference:10,exclusion:11,hue:12,saturation:13,color:14,luminosity:15,"mask-in":16,"destination-in":16,"mask-out":17,"destination-out":17,"source-in":18,"source-out":19,"source-atop":20,"destination-over":21,"destination-atop":22,lighter:23,copy:24,xor:25,"luma-in":26,"luma-out":27},E=class{device;compositeUniformLayout;dualTextureLayout;motionBlurUniformLayout;singleTextureLayout;compositePipeline;motionBlurPipeline;compositePool;motionBlurPool;texturePool;compositeUniformBindGroupCache=new M;motionBlurUniformBindGroupCache=new M;compositeData=new Uint32Array(4);motionBlurData=new Float32Array(8);constructor(t,e){this.device=t,this.compositePool=new G(1024,GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST),this.motionBlurPool=new G(1024,GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST),this.texturePool=new ut,this.compositeUniformLayout=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,buffer:{type:"uniform"}}]}),this.dualTextureLayout=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:2,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),this.motionBlurUniformLayout=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,buffer:{type:"uniform"}}]}),this.singleTextureLayout=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]});let r=t.createPipelineLayout({bindGroupLayouts:[this.compositeUniformLayout,this.dualTextureLayout]}),i=t.createShaderModule({label:"composite.wgsl",code:Bt});this.compositePipeline=t.createRenderPipeline({label:"CompositePipeline",layout:r,vertex:{module:i,entryPoint:"vs"},fragment:{module:i,entryPoint:"fs",targets:[{format:e}]},primitive:{topology:"triangle-strip"}});let n=t.createPipelineLayout({bindGroupLayouts:[this.motionBlurUniformLayout,this.singleTextureLayout]}),s=t.createShaderModule({label:"motion-blur-2d.wgsl",code:Et});this.motionBlurPipeline=t.createRenderPipeline({label:"MotionBlurPipeline",layout:n,vertex:{module:s,entryPoint:"vs"},fragment:{module:s,entryPoint:"fs",targets:[{format:e}]},primitive:{topology:"triangle-list"}})}resetPools(){this.compositePool.reset(),this.motionBlurPool.reset(),this.texturePool.reset()}getTexture(t,e,r,i,n){return this.texturePool.getTexture(t,e,r,i,n)}getBuffer(t,e){return this.compositePool.getBuffer(t,e)}composite(t,e,r,i,n,s,a,o){let c=r.getSampler(this.device),l=[i,n];o&&(Array.isArray(o)?l.push(...o):l.push(o));let h=this.texturePool.getTexture(this.device,i.width,i.height,a,l);this.compositeData[0]=Vt[s]??0;let p=this.compositePool.getBuffer(this.device,this.compositeData),d=t.beginRenderPass({colorAttachments:[{view:h.createView(),loadOp:"clear",storeOp:"store",clearValue:{r:0,g:0,b:0,a:0}}]});d.setPipeline(this.compositePipeline);let f=this.compositeUniformBindGroupCache.getBindGroup(this.device,this.compositeUniformLayout,p);d.setBindGroup(0,f);let m=e.getCompositeBindGroup(this.device,this.dualTextureLayout,i,n,c);return d.setBindGroup(1,m),d.draw(4),d.end(),h}applyMotionBlur(t,e,r,i,n,s,a=180,o=16,c,l){if(Math.abs(n)<.1&&Math.abs(s)<.1||a<=0)return i;let h=r.getSampler(this.device),p=[i];l&&(Array.isArray(l)?p.push(...l):p.push(l));let d=this.texturePool.getTexture(this.device,i.width,i.height,c,p);this.motionBlurData[0]=n/i.width,this.motionBlurData[1]=s/i.height,this.motionBlurData[2]=0,this.motionBlurData[3]=0,this.motionBlurData[4]=a/360,this.motionBlurData[5]=o,this.motionBlurData[6]=i.width,this.motionBlurData[7]=i.height;let f=this.motionBlurPool.getBuffer(this.device,this.motionBlurData),m=t.beginRenderPass({colorAttachments:[{view:d.createView(),loadOp:"clear",storeOp:"store",clearValue:{r:0,g:0,b:0,a:0}}]});m.setPipeline(this.motionBlurPipeline);let y=this.motionBlurUniformBindGroupCache.getBindGroup(this.device,this.motionBlurUniformLayout,f);return m.setBindGroup(0,y),m.setBindGroup(1,e.getBindGroup(this.device,this.singleTextureLayout,i,h)),m.draw(3),m.end(),d}destroy(){this.compositePool.destroy(),this.motionBlurPool.destroy(),this.texturePool.destroy(),this.compositeUniformBindGroupCache.destroy(),this.motionBlurUniformBindGroupCache.destroy()}};x();x();var V=class{cache=new WeakMap;dualCache=new WeakMap;getBindGroup(t,e,r,i){let n=this.cache.get(r);n||(n=new Map,this.cache.set(r,n));let s=n.get(e);return s||(s=t.createBindGroup({layout:e,entries:[{binding:0,resource:r.createView()},{binding:1,resource:i}]}),n.set(e,s)),s}getCompositeBindGroup(t,e,r,i,n){let s=this.dualCache.get(r);s||(s=new WeakMap,this.dualCache.set(r,s));let a=s.get(i);a||(a=new Map,s.set(i,a));let o=a.get(e);return o||(o=t.createBindGroup({layout:e,entries:[{binding:0,resource:r.createView()},{binding:1,resource:i.createView()},{binding:2,resource:n}]}),a.set(e,o)),o}destroy(){this.cache=new WeakMap,this.dualCache=new WeakMap}};x();var W=class{scissorStack=[];stencilStack=[];pushScissor(t,e,r){this.scissorStack.push({rect:t,surfaceWidth:e,surfaceHeight:r})}popScissor(){this.scissorStack.length>0&&this.scissorStack.pop()}saveScissors(){return[...this.scissorStack]}restoreScissors(t){this.scissorStack=[...t]}clearScissors(){this.scissorStack=[]}getCurrentScissor(t,e){let r=this.scissorStack[this.scissorStack.length-1];if(r&&!(t!==void 0&&e!==void 0&&r.surfaceWidth!==void 0&&r.surfaceHeight!==void 0&&r.surfaceWidth!==0&&r.surfaceHeight!==0&&(r.surfaceWidth!==t||r.surfaceHeight!==e)))return r.rect}pushStencilClip(t){this.stencilStack.push(t)}popStencilClip(){this.stencilStack.length>0&&this.stencilStack.pop()}getCurrentStencil(){return this.stencilStack[this.stencilStack.length-1]}applyScissorToPass(t,e,r){let i=this.getCurrentScissor(e,r);if(!i){t.setScissorRect(0,0,Math.max(1,Math.floor(e)),Math.max(1,Math.floor(r)));return}let n=Math.max(0,Math.floor(i.x)),s=Math.max(0,Math.floor(i.y)),a=Math.min(e,Math.ceil(i.x+i.width)),o=Math.min(r,Math.ceil(i.y+i.height)),c=Math.max(0,a-n),l=Math.max(0,o-s);if(!Number.isFinite(n)||!Number.isFinite(s)||!Number.isFinite(c)||!Number.isFinite(l)||c<=0||l<=0)t.setScissorRect(0,0,1,1);else{let h=Math.min(c,Math.max(0,e-n)),p=Math.min(l,Math.max(0,r-s));h<=0||p<=0?t.setScissorRect(0,0,1,1):t.setScissorRect(Math.floor(n),Math.floor(s),Math.floor(h),Math.floor(p))}}destroy(){this.scissorStack=[],this.stencilStack=[]}};x();function Dt(u,t,e,r,i=24){let n=[],s=u;for(let a=1;a<=i;a++){let o=a/i,c=1-o,l=c*c,h=l*c,p=o*o,d=p*o,f={x:h*u.x+3*l*o*t.x+3*c*p*e.x+d*r.x,y:h*u.y+3*l*o*t.y+3*c*p*e.y+d*r.y};n.push({p0:s,p1:f}),s=f}return n}function Ct(u,t,e,r=16){let i=[],n=u;for(let s=1;s<=r;s++){let a=s/r,o=1-a,c=o*o,l=a*a,h={x:c*u.x+2*o*a*t.x+l*e.x,y:c*u.y+2*o*a*t.y+l*e.y};i.push({p0:n,p1:h}),n=h}return i}function Wt(u,t,e,r,i,n,s){let a=Math.abs(t),o=Math.abs(e);if(a<1e-9||o<1e-9)return[{p0:u,p1:s}];if(Math.hypot(s.x-u.x,s.y-u.y)<1e-9)return[];let c=r*Math.PI/180,l=Math.cos(c),h=Math.sin(c),p=(u.x-s.x)/2,d=(u.y-s.y)/2,f=l*p+h*d,m=-h*p+l*d,y=f*f/(a*a)+m*m/(o*o);y>1&&(a*=Math.sqrt(y),o*=Math.sqrt(y));let g=a*a*o*o-a*a*m*m-o*o*f*f,P=a*a*m*m+o*o*f*f,v=(i===n?-1:1)*Math.sqrt(Math.max(0,g/P)),b=v*a*m/o,S=-v*o*f/a,U=l*b-h*S+(u.x+s.x)/2,F=h*b+l*S+(u.y+s.y)/2,tt=(k,_,R,L)=>Math.atan2(k*L-_*R,k*R+_*L),et=tt(1,0,(f-b)/a,(m-S)/o),B=tt((f-b)/a,(m-S)/o,(-f-b)/a,(-m-S)/o);!n&&B>0&&(B-=2*Math.PI),n&&B<0&&(B+=2*Math.PI);let rt=Math.max(4,Math.ceil(Math.abs(B)/(2*Math.PI)*64)),ft=[],dt=u;for(let k=1;k<=rt;k++){let _=et+B*k/rt,R=a*Math.cos(_),L=o*Math.sin(_),mt=k===rt?s:{x:l*R-h*L+U,y:h*R+l*L+F};ft.push({p0:dt,p1:mt}),dt=mt}return ft}function z(u){let t=[];if(!u||typeof u!="string")return t;let e=[],r=/([a-df-z])|([-+]?(?:\d*\.\d+|\d+)(?:[eE][-+]?\d+)?)/gi,i;for(;(i=r.exec(u))!==null;)i[1]?e.push(i[1]):i[2]&&e.push(parseFloat(i[2]));let n=0,s={x:0,y:0},a={x:0,y:0},o=null,c=null;for(;n<e.length;){let l=e[n++];if(typeof l!="string")continue;let h=l,p=h===h.toLowerCase(),d=h.toUpperCase(),f=()=>n<e.length&&typeof e[n]=="number"?e[n++]:0;switch(d){case"M":{let m=!0;for(;n<e.length&&typeof e[n]=="number";){let y=f(),g=f();p&&(y+=s.x,g+=s.y),m?(s={x:y,y:g},a={x:y,y:g},m=!1):(t.push({p0:s,p1:{x:y,y:g}}),s={x:y,y:g})}o=null,c=null;break}case"L":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f();p&&(m+=s.x,y+=s.y),t.push({p0:s,p1:{x:m,y}}),s={x:m,y}}o=null,c=null;break}case"H":{for(;n<e.length&&typeof e[n]=="number";){let m=f();p&&(m+=s.x);let y={x:m,y:s.y};t.push({p0:s,p1:y}),s=y}o=null,c=null;break}case"V":{for(;n<e.length&&typeof e[n]=="number";){let m=f();p&&(m+=s.y);let y={x:s.x,y:m};t.push({p0:s,p1:y}),s=y}o=null,c=null;break}case"C":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f(),g=f(),P=f(),v=f(),b=f();p&&(m+=s.x,y+=s.y,g+=s.x,P+=s.y,v+=s.x,b+=s.y);let S={x:m,y},U={x:g,y:P},F={x:v,y:b};t.push(...Dt(s,S,U,F)),s=F,o=U}c=null;break}case"S":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f(),g=f(),P=f();p&&(m+=s.x,y+=s.y,g+=s.x,P+=s.y);let v;o?v={x:2*s.x-o.x,y:2*s.y-o.y}:v={x:s.x,y:s.y};let b={x:m,y},S={x:g,y:P};t.push(...Dt(s,v,b,S)),s=S,o=b}c=null;break}case"Q":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f(),g=f(),P=f();p&&(m+=s.x,y+=s.y,g+=s.x,P+=s.y);let v={x:m,y},b={x:g,y:P};t.push(...Ct(s,v,b)),s=b,c=v}o=null;break}case"T":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f();p&&(m+=s.x,y+=s.y);let g;c?g={x:2*s.x-c.x,y:2*s.y-c.y}:g={x:s.x,y:s.y};let P={x:m,y};t.push(...Ct(s,g,P)),s=P,c=g}o=null;break}case"A":{for(;n<e.length&&typeof e[n]=="number";){let m=f(),y=f(),g=f(),P=f()!==0,v=f()!==0,b=f(),S=f();p&&(b+=s.x,S+=s.y);let U={x:b,y:S};t.push(...Wt(s,m,y,g,P,v,U)),s=U}o=null,c=null;break}case"Z":{Math.hypot(s.x-a.x,s.y-a.y)>1e-5&&t.push({p0:s,p1:a}),s=a,o=null,c=null;break}default:break}}return t}function H(u,t,e,r=0){if(u.length===0)return[];let i=[],n=0;for(let l of u){let h=Math.hypot(l.p1.x-l.p0.x,l.p1.y-l.p0.y);i.push(h),n+=h}if(n<1e-6)return[];let s=Math.abs(r)>1?r%360/360:r,a=(t+s)%1,o=(e+s)%1;a<0&&(a+=1),o<0&&(o+=1);let c=(l,h)=>{if(l>=h)return[];let p=[],d=0;for(let f=0;f<u.length;f++){let m=u[f],y=i[f],g=d,P=d+y;if(d=P,P<=l||g>=h||y<1e-6)continue;let v=Math.max(0,(l-g)/y),b=Math.min(1,(h-g)/y);if(b>v){let S={x:m.p0.x+(m.p1.x-m.p0.x)*v,y:m.p0.y+(m.p1.y-m.p0.y)*v},U={x:m.p0.x+(m.p1.x-m.p0.x)*b,y:m.p0.y+(m.p1.y-m.p0.y)*b};p.push({p0:S,p1:U})}}return p};if(t===0&&e===1&&r===0)return[...u];if(Math.abs(a-o)<1e-5)return[];if(a<=o)return c(a*n,o*n);{let l=c(a*n,n),h=c(0,o*n);return[...l,...h]}}function lt(u,t,e=0){if(u.length===0||t.length===0)return u;let r=0;for(let d of t)r+=d;if(r<1e-5)return u;let i=0,n=[];for(let d of u){let f=Math.hypot(d.p1.x-d.p0.x,d.p1.y-d.p0.y);n.push(f),i+=f}let s=[],a=(e%r+r)%r,o=0,c=!0,l=a;for(;l>t[o];)l-=t[o],o=(o+1)%t.length,c=!c;let h=t[o]-l,p=0;for(;p<i;){let d=Math.min(h,i-p);if(c&&d>1e-4){let f=H(u,p/i,(p+d)/i);s.push(...f)}p+=d,o=(o+1)%t.length,c=!c,h=t[o]}return s}function Tt(u,t,e=0,r=0,i=0,n=0){let s=Math.min(u/2,t/2),a=Math.min(e,s),o=Math.min(r,s),c=Math.min(i,s),l=Math.min(n,s);return a===0&&o===0&&c===0&&l===0?`M 0 0 L ${u} 0 L ${u} ${t} L 0 ${t} Z`:[`M ${a} 0`,`L ${u-o} 0`,o>0?`Q ${u} 0 ${u} ${o}`:`L ${u} 0`,`L ${u} ${t-c}`,c>0?`Q ${u} ${t} ${u-c} ${t}`:`L ${u} ${t}`,`L ${l} ${t}`,l>0?`Q 0 ${t} 0 ${t-l}`:`L 0 ${t}`,`L 0 ${a}`,a>0?`Q 0 0 ${a} 0`:"L 0 0","Z"].join(" ")}function zt(u,t){let e=Math.min(u,t)/2,r=u/2,i=t/2,n=e*.5522847498;return[`M ${r} ${i-e}`,`C ${r+n} ${i-e} ${r+e} ${i-n} ${r+e} ${i}`,`C ${r+e} ${i+n} ${r+n} ${i+e} ${r} ${i+e}`,`C ${r-n} ${i+e} ${r-e} ${i+n} ${r-e} ${i}`,`C ${r-e} ${i-n} ${r-n} ${i-e} ${r} ${i-e}`,"Z"].join(" ")}function Ht(u,t){let e=u/2,r=t/2,i=e,n=r,s=e*.5522847498,a=r*.5522847498;return[`M ${i} ${n-r}`,`C ${i+s} ${n-r} ${i+e} ${n-a} ${i+e} ${n}`,`C ${i+e} ${n+a} ${i+s} ${n+r} ${i} ${n+r}`,`C ${i-s} ${n+r} ${i-e} ${n+a} ${i-e} ${n}`,`C ${i-e} ${n-a} ${i-s} ${n-r} ${i} ${n-r}`,"Z"].join(" ")}function jt(u,t,e=5){let r=Math.max(3,e),i=Math.min(u,t)/2,n=u/2,s=t/2,a=[];for(let o=0;o<r;o++){let c=-Math.PI/2+o*2*Math.PI/r;a.push({x:n+i*Math.cos(c),y:s+i*Math.sin(c)})}return a.map((o,c)=>`${c===0?"M":"L"} ${o.x} ${o.y}`).join(" ")+" Z"}function Nt(u,t,e=5,r=.5){let i=Math.max(3,e),n=Math.min(u,t)/2,s=n*Math.max(.01,Math.min(.99,r)),a=u/2,o=t/2,c=[];for(let l=0;l<i*2;l++){let h=-Math.PI/2+l*Math.PI/i,p=l%2===0?n:s;c.push({x:a+p*Math.cos(h),y:o+p*Math.sin(h)})}return c.map((l,h)=>`${h===0?"M":"L"} ${l.x} ${l.y}`).join(" ")+" Z"}function qt(u,t,e=40,r=40,i=20){let n=Math.min(e,t),s=Math.min(r,u),a=Math.min(i,n),o=t/2;return[`M 0 ${o-a/2}`,`L ${u-s} ${o-a/2}`,`L ${u-s} ${o-n/2}`,`L ${u} ${o}`,`L ${u-s} ${o+n/2}`,`L ${u-s} ${o+a/2}`,`L 0 ${o+a/2}`,"Z"].join(" ")}function ct(u){let{shapeType:t,width:e,height:r}=u;switch(t){case"rect":return Tt(e,r,u.cornerRadius??0,u.cornerRadius??0,u.cornerRadius??0,u.cornerRadius??0);case"circle":return zt(e,r);case"ellipse":return Ht(e,r);case"polygon":return jt(e,r,u.polygonSides??5);case"star":return Nt(e,r,u.starPoints??5,u.starInnerRadiusRatio??.5);case"arrow":return qt(e,r,u.arrowHeadWidth??40,u.arrowHeadLength??40,u.arrowShaftWidth??20);case"path":return u.path??"";default:return""}}function kt(u){if(u.length<3)return[];if(u.length===3)return[u[0],u[1],u[2]];let t=[...u],e=t[t.length-1],r=t[0];if(Math.hypot(e.x-r.x,e.y-r.y)<1e-5&&t.pop(),t.length<3)return[];let i=0;for(let h=0;h<t.length;h++){let p=(h+1)%t.length;i+=t[h].x*t[p].y-t[p].x*t[h].y}i<0&&t.reverse();let n=(h,p,d,f)=>{let m=(d.x-p.x)*(h.y-p.y)-(d.y-p.y)*(h.x-p.x),y=(f.x-d.x)*(h.y-d.y)-(f.y-d.y)*(h.x-d.x),g=(p.x-f.x)*(h.y-f.y)-(p.y-f.y)*(h.x-f.x);return m>=-1e-6&&y>=-1e-6&&g>=-1e-6},s=(h,p,d,f)=>{if((p.x-h.x)*(d.y-h.y)-(p.y-h.y)*(d.x-h.x)<=1e-7)return!1;for(let y of f)if(!(y===h||y===p||y===d)&&n(y,h,p,d))return!1;return!0},a=[],o=[...t],c=0,l=o.length*o.length*2;for(;o.length>3&&c<l;){c++;let h=!1;for(let p=0;p<o.length;p++){let d=o[(p-1+o.length)%o.length],f=o[p],m=o[(p+1)%o.length];if(s(d,f,m,o)){a.push(d,f,m),o.splice(p,1),h=!0;break}}h||(a.push(o[0],o[1],o[2]),o.splice(1,1))}return o.length===3&&a.push(o[0],o[1],o[2]),a}function Ft(u){let{shapeType:t,width:e,height:r}=u;if(t==="rect"){let i=u.cornerRadius??0;if(i<=0)return new Float32Array([0,0,e,0,e,r,0,0,e,r,0,r]);let n=Tt(e,r,i,i,i,i),a=z(n).map(l=>l.p0),o=kt(a),c=new Float32Array(o.length*2);for(let l=0;l<o.length;l++)c[l*2]=o[l].x,c[l*2+1]=o[l].y;return c}if(t==="circle"||t==="ellipse"){let i=e/2,n=r/2,s=t==="circle"?Math.min(e,r)/2:e/2,a=t==="circle"?s:r/2,o=48,c=new Float32Array(o*3*2),l=0;for(let h=0;h<o;h++){let p=h*2*Math.PI/o,d=(h+1)*2*Math.PI/o;c[l++]=i,c[l++]=n,c[l++]=i+s*Math.cos(p),c[l++]=n+a*Math.sin(p),c[l++]=i+s*Math.cos(d),c[l++]=n+a*Math.sin(d)}return c}if(t==="polygon"){let i=Math.max(3,u.polygonSides??5),n=Math.min(e,r)/2,s=e/2,a=r/2,o=new Float32Array(i*3*2),c=0;for(let l=0;l<i;l++){let h=-Math.PI/2+l*2*Math.PI/i,p=-Math.PI/2+(l+1)*2*Math.PI/i;o[c++]=s,o[c++]=a,o[c++]=s+n*Math.cos(h),o[c++]=a+n*Math.sin(h),o[c++]=s+n*Math.cos(p),o[c++]=a+n*Math.sin(p)}return o}if(t==="star"){let i=Math.max(3,u.starPoints??5),n=Math.min(e,r)/2,s=n*Math.max(.01,Math.min(.99,u.starInnerRadiusRatio??.5)),a=e/2,o=r/2,c=i*2,l=new Float32Array(c*3*2),h=0;for(let p=0;p<c;p++){let d=-Math.PI/2+p*Math.PI/i,f=-Math.PI/2+(p+1)*Math.PI/i,m=p%2===0?n:s,y=(p+1)%2===0?n:s;l[h++]=a,l[h++]=o,l[h++]=a+m*Math.cos(d),l[h++]=o+m*Math.sin(d),l[h++]=a+y*Math.cos(f),l[h++]=o+y*Math.sin(f)}return l}if(t==="arrow"){let i=Math.min(u.arrowHeadWidth??40,r),n=Math.min(u.arrowHeadLength??40,e),s=Math.min(u.arrowShaftWidth??20,i),a=r/2,o=0,c=e-n,l=e,h=a-s/2,p=a+s/2,d=a-i/2,f=a+i/2;return new Float32Array([o,h,c,h,c,p,o,h,c,p,o,p,c,d,l,a,c,f])}if(t==="path"&&u.path){let i=z(u.path);if(i.length===0)return new Float32Array(0);let n=i.map(o=>o.p0),s=kt(n),a=new Float32Array(s.length*2);for(let o=0;o<s.length;o++)a[o*2]=s[o].x,a[o*2+1]=s[o].y;return a}return new Float32Array(0)}x();x();var _t=`
187
187
  struct Uniforms {
188
188
  transformCol0 : vec4<f32>,
189
189
  transformCol1 : vec4<f32>,
@@ -260,7 +260,7 @@ fn sdSegmentWithCap(p: vec2<f32>, a: vec2<f32>, b: vec2<f32>, radius: f32, capTy
260
260
 
261
261
  return vec4<f32>(u.color.rgb * alpha, alpha);
262
262
  }
263
- `;var H=class{device;pipeline;maxPipeline;uniformLayout;uniformPool;vertexPool;uniformBindGroupCache=new M;scratchData=new Float32Array(28);constructor(t,e){this.device=t,this.uniformPool=new G(4096,GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST),this.vertexPool=new G(4096,GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST);let r=t.createShaderModule({label:"path.wgsl",code:_t});this.uniformLayout=C(t),this.pipeline=T(t,{label:"PathPipeline",module:r,uniformLayout:this.uniformLayout,format:e,topology:"triangle-strip"}),this.maxPipeline=T(t,{label:"PathPipeline.max",module:r,uniformLayout:this.uniformLayout,format:e,topology:"triangle-strip",blend:{color:{srcFactor:"one",dstFactor:"one",operation:"max"},alpha:{srcFactor:"one",dstFactor:"one",operation:"max"}}})}resetPools(){this.uniformPool.reset(),this.vertexPool.reset()}drawPath(t,e,r,i,n,s,a,o){let c=z(r);if(c.length===0||((o?.trimStart!==void 0||o?.trimEnd!==void 0||o?.trimOffset!==void 0)&&(c=j(c,o.trimStart??0,o.trimEnd??1,o.trimOffset??0)),o?.strokeDashArray&&o.strokeDashArray.length>0&&(c=lt(c,o.strokeDashArray,o.strokeDashOffset??0)),c.length===0))return;let l=D(i),h=o?.opacity??1,p=0;o?.strokeLineCap==="butt"?p=1:o?.strokeLineCap==="square"&&(p=2);for(let d of c)this.drawSegment(t,e,d.p0,d.p1,l,n,p,s,a,h,o)}drawSegments(t,e,r,i,n,s,a,o){let c=r;if((o?.trimStart!==void 0||o?.trimEnd!==void 0||o?.trimOffset!==void 0)&&(c=j(c,o.trimStart??0,o.trimEnd??1,o.trimOffset??0)),o?.strokeDashArray&&o.strokeDashArray.length>0&&(c=lt(c,o.strokeDashArray,o.strokeDashOffset??0)),c.length===0)return;let l=D(i),h=o?.opacity??1,p=0;o?.strokeLineCap==="butt"?p=1:o?.strokeLineCap==="square"&&(p=2);for(let d of c)this.drawSegment(t,e,d.p0,d.p1,l,n,p,s,a,h,o)}drawSegment(t,e,r,i,n,s,a,o,c,l,h){let p=this.scratchData;e.packIntoBuffer(p,l,o,c,h?.transform),p[15]=s,p[16]=n.r,p[17]=n.g,p[18]=n.b,p[19]=n.a,p[20]=a,p[21]=0,p[22]=0,p[23]=0,p[24]=r.x,p[25]=r.y,p[26]=i.x,p[27]=i.y;let d=this.uniformPool.getBuffer(this.device,p),f=i.x-r.x,m=i.y-r.y,y=Math.sqrt(f*f+m*m);if(y<1e-6)return;let g=s*.5+2,P=f/y*g,v=m/y*g,b=-v,S=P,U=new Float32Array([r.x-P-b,r.y-v-S,r.x-P+b,r.y-v+S,i.x+P-b,i.y+v-S,i.x+P+b,i.y+v+S]),F=this.vertexPool.getBuffer(this.device,U),et=h?.blendMode==="max"?this.maxPipeline:this.pipeline;t.setPipeline(et);let B=this.uniformBindGroupCache.getBindGroup(this.device,this.uniformLayout,d);t.setBindGroup(0,B),t.setVertexBuffer(0,F),t.draw(4)}destroy(){this.uniformPool.destroy(),this.vertexPool.destroy(),this.uniformBindGroupCache.destroy()}};x();x();var Rt=`
263
+ `;var j=class{device;pipeline;maxPipeline;uniformLayout;uniformPool;vertexPool;uniformBindGroupCache=new M;scratchData=new Float32Array(28);constructor(t,e){this.device=t,this.uniformPool=new G(4096,GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST),this.vertexPool=new G(4096,GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST);let r=t.createShaderModule({label:"path.wgsl",code:_t});this.uniformLayout=C(t),this.pipeline=T(t,{label:"PathPipeline",module:r,uniformLayout:this.uniformLayout,format:e,topology:"triangle-strip"}),this.maxPipeline=T(t,{label:"PathPipeline.max",module:r,uniformLayout:this.uniformLayout,format:e,topology:"triangle-strip",blend:{color:{srcFactor:"one",dstFactor:"one",operation:"max"},alpha:{srcFactor:"one",dstFactor:"one",operation:"max"}}})}resetPools(){this.uniformPool.reset(),this.vertexPool.reset()}drawPath(t,e,r,i,n,s,a,o){let c=z(r);if(c.length===0||((o?.trimStart!==void 0||o?.trimEnd!==void 0||o?.trimOffset!==void 0)&&(c=H(c,o.trimStart??0,o.trimEnd??1,o.trimOffset??0)),o?.strokeDashArray&&o.strokeDashArray.length>0&&(c=lt(c,o.strokeDashArray,o.strokeDashOffset??0)),c.length===0))return;let l=D(i),h=o?.opacity??1,p=0;o?.strokeLineCap==="butt"?p=1:o?.strokeLineCap==="square"&&(p=2);for(let d of c)this.drawSegment(t,e,d.p0,d.p1,l,n,p,s,a,h,o)}drawSegments(t,e,r,i,n,s,a,o){let c=r;if((o?.trimStart!==void 0||o?.trimEnd!==void 0||o?.trimOffset!==void 0)&&(c=H(c,o.trimStart??0,o.trimEnd??1,o.trimOffset??0)),o?.strokeDashArray&&o.strokeDashArray.length>0&&(c=lt(c,o.strokeDashArray,o.strokeDashOffset??0)),c.length===0)return;let l=D(i),h=o?.opacity??1,p=0;o?.strokeLineCap==="butt"?p=1:o?.strokeLineCap==="square"&&(p=2);for(let d of c)this.drawSegment(t,e,d.p0,d.p1,l,n,p,s,a,h,o)}drawSegment(t,e,r,i,n,s,a,o,c,l,h){let p=this.scratchData;e.packIntoBuffer(p,l,o,c,h?.transform),p[15]=s,p[16]=n.r,p[17]=n.g,p[18]=n.b,p[19]=n.a,p[20]=a,p[21]=0,p[22]=0,p[23]=0,p[24]=r.x,p[25]=r.y,p[26]=i.x,p[27]=i.y;let d=this.uniformPool.getBuffer(this.device,p),f=i.x-r.x,m=i.y-r.y,y=Math.sqrt(f*f+m*m);if(y<1e-6)return;let g=s*.5+2,P=f/y*g,v=m/y*g,b=-v,S=P,U=new Float32Array([r.x-P-b,r.y-v-S,r.x-P+b,r.y-v+S,i.x+P-b,i.y+v-S,i.x+P+b,i.y+v+S]),F=this.vertexPool.getBuffer(this.device,U),et=h?.blendMode==="max"?this.maxPipeline:this.pipeline;t.setPipeline(et);let B=this.uniformBindGroupCache.getBindGroup(this.device,this.uniformLayout,d);t.setBindGroup(0,B),t.setVertexBuffer(0,F),t.draw(4)}destroy(){this.uniformPool.destroy(),this.vertexPool.destroy(),this.uniformBindGroupCache.destroy()}};x();x();var Rt=`
264
264
  struct Uniforms {
265
265
  transformCol0 : vec4<f32>,
266
266
  transformCol1 : vec4<f32>,
@@ -471,4 +471,4 @@ fn sdRoundedRect(p: vec2<f32>, b: vec2<f32>, r: f32) -> f32 {
471
471
 
472
472
  return vec4<f32>(fill.rgb * alpha, alpha);
473
473
  }
474
- `;var Z=class{device;pipeline;uniformLayout;uniformPool;vertexPool;uniformBindGroupCache=new M;uniformData=new Float32Array(72);vertexData=new Float32Array(8);constructor(t,e){this.device=t,this.uniformPool=new G(1024,GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST),this.vertexPool=new G(256,GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST);let r=t.createShaderModule({label:"solid.wgsl",code:Ot});this.uniformLayout=C(t),this.pipeline=T(t,{label:"SolidPipeline",module:r,uniformLayout:this.uniformLayout,format:e,topology:"triangle-strip"})}resetPools(){this.uniformPool.reset(),this.vertexPool.reset()}draw(t,e,r,i,n,s,a=0,o){let c=Y(i),l=c?{r:0,g:0,b:0,a:1}:D(i),h=o?.opacity??1;e.packIntoBuffer(this.uniformData,h,n,s,o?.transform),this.uniformData[15]=a,this.uniformData[16]=l.r,this.uniformData[17]=l.g,this.uniformData[18]=l.b,this.uniformData[19]=l.a,this.uniformData[20]=r.x,this.uniformData[21]=r.y,this.uniformData[22]=r.width,this.uniformData[23]=r.height,X(c,r,this.uniformData,24);let p=this.uniformPool.getBuffer(this.device,this.uniformData);this.vertexData[0]=r.x,this.vertexData[1]=r.y,this.vertexData[2]=r.x+r.width,this.vertexData[3]=r.y,this.vertexData[4]=r.x,this.vertexData[5]=r.y+r.height,this.vertexData[6]=r.x+r.width,this.vertexData[7]=r.y+r.height;let d=this.vertexPool.getBuffer(this.device,this.vertexData);t.setPipeline(this.pipeline);let f=this.uniformBindGroupCache.getBindGroup(this.device,this.uniformLayout,p);t.setBindGroup(0,f),t.setVertexBuffer(0,d),t.draw(4)}destroy(){this.uniformPool.destroy(),this.vertexPool.destroy(),this.uniformBindGroupCache.destroy()}};x();var J=class{stack=[new DOMMatrix];push(t){let r=this.stack[this.stack.length-1].multiply(t);this.stack.push(r)}pop(){this.stack.length>1&&this.stack.pop()}getCurrent(){return this.stack[this.stack.length-1]}packIntoBuffer(t,e,r,i,n,s){let a=this.getCurrent();n&&(a=a.multiply(n)),t[0]=a.a,t[1]=a.b,t[2]=0,t[3]=0,t[4]=a.c,t[5]=a.d,t[6]=0,t[7]=0,t[8]=a.e,t[9]=a.f,t[10]=1,t[11]=0,t[12]=e,t[13]=r,t[14]=i,t[15]=s??0}destroy(){this.stack=[new DOMMatrix]}};function Yt(u){if(Array.isArray(u)){let r=u[3]??1;return[u[0]*r,u[1]*r,u[2]*r,r]}if("r"in u){let r=u.a??1;return{r:u.r*r,g:u.g*r,b:u.b*r,a:r}}let t=Array.from(u),e=t[3]??1;return[t[0]*e,t[1]*e,t[2]*e,e]}var $t=new WeakMap;function vr(u,t){let e=$t.get(u);return(!e||e.format!==t||e.isDestroyed)&&(e=new pt(u,t),$t.set(u,e)),e.resetPools(),e}var pt=class{device;transformStack=new J;clipStack=new W;quadPipeline;solidPipeline;shapeFillPipeline;pathPipeline;effectPipeline;slugPipeline;bindGroupCache=new V;samplerCache=new Mt;format;isDestroyed=!1;rasterDrawCount=0;surfaceWidth=0;surfaceHeight=0;lastEncoder=null;constructor(t,e){this.device=t,this.format=e,this.quadPipeline=new q(t,e),this.solidPipeline=new Z(t,e),this.shapeFillPipeline=new K(t,e),this.pathPipeline=new H(t,e),this.effectPipeline=new E(t,e),this.slugPipeline=new Gt(t,e)}beginFrame(t,e,r={r:0,g:0,b:0,a:0},i,n,s="clear"){this.surfaceWidth=i,this.surfaceHeight=n,t!==this.lastEncoder&&(this.lastEncoder=t,this.resetPools());let a=t.beginRenderPass({colorAttachments:[{view:e,clearValue:Yt(r),loadOp:s,storeOp:"store"}]});return this.clipStack.applyScissorToPass(a,i,n),a}endFrame(t){}resetPools(){this.quadPipeline.resetPools(),this.solidPipeline.resetPools(),this.shapeFillPipeline.resetPools(),this.pathPipeline.resetPools(),this.effectPipeline&&this.effectPipeline.resetPools(),this.slugPipeline.resetPools(),ot.flushRetired(this.device),ot.prune(this.device)}drawTexture(t,e,r,i){let n=this.samplerCache.getSampler(this.device),s={x:0,y:0,width:e.width,height:e.height};this.rasterDrawCount++,this.quadPipeline.draw(t,this.bindGroupCache,this.transformStack,e,n,s,r,this.surfaceWidth,this.surfaceHeight,i)}drawTextureRegion(t,e,r,i,n){let s=this.samplerCache.getSampler(this.device);this.rasterDrawCount++,this.quadPipeline.draw(t,this.bindGroupCache,this.transformStack,e,s,r,i,this.surfaceWidth,this.surfaceHeight,n)}drawRect(t,e,r,i=0,n){let s=0,a=n;typeof i=="object"&&i!==null?(a=i,s=0):typeof i=="number"&&(s=i),this.rasterDrawCount++,this.solidPipeline.draw(t,this.transformStack,e,r,this.surfaceWidth,this.surfaceHeight,s,a)}drawPath(t,e,r,i,n){this.rasterDrawCount++,this.pathPipeline.drawPath(t,this.transformStack,e,r,i,this.surfaceWidth,this.surfaceHeight,n)}drawShapeFill(t,e,r,i,n){this.rasterDrawCount++,this.shapeFillPipeline.draw(t,this.transformStack,e,r,i,this.surfaceWidth,this.surfaceHeight,n)}drawShape(t,e,r,i,n){let s={x:0,y:0,width:e.width,height:e.height};if(r&&r.type!=="none"){let a=Ft(e);if(a.length>0&&(this.drawShapeFill(t,a,r,s,n),(!i||!i.width||i.width<=0)&&(r.type??"solid")==="solid"&&r.color)){let o=ct(e);o&&this.drawPath(t,o,r.color,1,{...n,strokeLineCap:"round"})}}if(i&&i.width&&i.width>0&&i.color){let a=ct(e);a&&this.drawPath(t,a,i.color,i.width,{...n,strokeLineCap:i.cap,trimStart:i.trimStart,trimEnd:i.trimEnd,trimOffset:i.trimOffset,strokeDashArray:i.dashArray,strokeDashOffset:i.dashOffset})}}drawRRect(t,e,r,i){this.drawRect(t,e.rect,r,e.rx,i)}getTemporaryTexture(t,e,r){return this.effectPipeline.getTexture(this.device,t,e,this.format,r)}getTemporaryBuffer(t){return this.effectPipeline.getBuffer(this.device,t)}composite(t,e,r,i,n){return this.effectPipeline.composite(t,this.bindGroupCache,this.samplerCache,e,r,i,this.format,n)}applyMotionBlur(t,e,r,i,n=180,s=16,a){return this.effectPipeline.applyMotionBlur(t,this.bindGroupCache,this.samplerCache,e,r,i,n,s,this.format,a)}getCurrentTransform(){return this.transformStack.getCurrent()}getTransformStack(){return this.transformStack}getSurfaceWidth(){return this.surfaceWidth}getSurfaceHeight(){return this.surfaceHeight}pushIdentity(){let t=this.transformStack.getCurrent();this.pushTransform(t.inverse())}pushTransform(t){this.transformStack.push(t)}popTransform(){this.transformStack.pop()}pushScissor(t){this.clipStack.pushScissor(t,this.surfaceWidth,this.surfaceHeight)}pushScissorLocal(t){let e=this.transformStack.getCurrent(),r=[e.transformPoint(new DOMPoint(t.x,t.y)),e.transformPoint(new DOMPoint(t.x+t.width,t.y)),e.transformPoint(new DOMPoint(t.x,t.y+t.height)),e.transformPoint(new DOMPoint(t.x+t.width,t.y+t.height))],i=r.map(h=>h.x),n=r.map(h=>h.y),s=Math.min(...i),a=Math.min(...n),o=Math.max(...i)-s,c=Math.max(...n)-a,l=this.clipStack.getCurrentScissor(this.surfaceWidth,this.surfaceHeight);if(l){let h=Math.max(s,l.x),p=Math.max(a,l.y),d=Math.min(s+o,l.x+l.width),f=Math.min(a+c,l.y+l.height);s=h,a=p,o=Math.max(0,d-h),c=Math.max(0,f-p)}this.clipStack.pushScissor({x:s,y:a,width:o,height:c},this.surfaceWidth,this.surfaceHeight)}popScissor(){this.clipStack.popScissor()}suspendScissors(){let t=this.clipStack.saveScissors();return this.clipStack.clearScissors(),t}resumeScissors(t){this.clipStack.restoreScissors(t)}pushStencilClip(t){this.clipStack.pushStencilClip(t)}popStencilClip(){this.clipStack.popStencilClip()}destroy(){this.isDestroyed=!0,this.transformStack.destroy(),this.clipStack.destroy(),this.bindGroupCache.destroy(),this.samplerCache.destroy(),this.quadPipeline.destroy(),this.solidPipeline.destroy(),this.shapeFillPipeline.destroy(),this.pathPipeline.destroy(),this.effectPipeline.destroy(),this.slugPipeline.destroy(),this.lastEncoder=null}};x();async function At(u,t){if(typeof window<"u"&&typeof FontFace<"u")try{let r=await new FontFace(u,`url(${t})`).load();document.fonts.add(r),await document.fonts.ready}catch(e){console.warn(`[preloadFont] Failed to load font "${u}" from ${t}:`,e)}else await Pt(u,t)}x();var Xt=/\p{Extended_Pictographic}/gu,It=!1;async function Tr(u,t,e=(r,i)=>console.warn(`[framefields] ${i}`,r)){let r=new Set,i=new Map;(function s(a){let o=a.operation;if(o){let c=o.op==="text"||o.kind==="text"||o.op==="caption"||o.kind==="caption"||typeof o.text=="string",l=o.fontFamily||(c?"Inter":"");if(l&&r.add(l),o.op==="text"&&typeof o.text=="string"){let h=o.fontSize??48;for(let p of o.text.match(Xt)??[])i.set(`${p}-${h}`,h)}}for(let c of a.children??[])s(c)})(u);let n=[];for(let s of r){let a=vt(s)??wt(s);n.push(At(s,a).catch(o=>e(o,`font "${s}" from ${a}`))),t&&n.push(O.preloadSlugFont(t,s,a).catch(o=>e(o,`Slug font "${s}" from ${a}`)))}if(t&&i.size>0){!O.hasEmojiFont()&&!It&&(It=!0,console.warn("[framefields] Text uses emoji but no emoji font is registered, so exports draw nothing for them. Register a color emoji font (e.g. Noto Color Emoji) with FontManager.registerEmojiFont(path)."));for(let[s,a]of i){let o=s.slice(0,s.lastIndexOf("-"));n.push(O.preloadEmoji(t,o,a).catch(c=>{O.hasEmojiFont()&&e(c,`emoji "${o}"`)}))}}await Promise.all(n)}export{te as a,E as b,z as c,ct as d,vr as e,pt as f,At as g,Tr as h};
474
+ `;var Z=class{device;pipeline;uniformLayout;uniformPool;vertexPool;uniformBindGroupCache=new M;uniformData=new Float32Array(72);vertexData=new Float32Array(8);constructor(t,e){this.device=t,this.uniformPool=new G(1024,GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST),this.vertexPool=new G(256,GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST);let r=t.createShaderModule({label:"solid.wgsl",code:Ot});this.uniformLayout=C(t),this.pipeline=T(t,{label:"SolidPipeline",module:r,uniformLayout:this.uniformLayout,format:e,topology:"triangle-strip"})}resetPools(){this.uniformPool.reset(),this.vertexPool.reset()}draw(t,e,r,i,n,s,a=0,o){let c=Y(i),l=c?{r:0,g:0,b:0,a:1}:D(i),h=o?.opacity??1;e.packIntoBuffer(this.uniformData,h,n,s,o?.transform),this.uniformData[15]=a,this.uniformData[16]=l.r,this.uniformData[17]=l.g,this.uniformData[18]=l.b,this.uniformData[19]=l.a,this.uniformData[20]=r.x,this.uniformData[21]=r.y,this.uniformData[22]=r.width,this.uniformData[23]=r.height,X(c,r,this.uniformData,24);let p=this.uniformPool.getBuffer(this.device,this.uniformData);this.vertexData[0]=r.x,this.vertexData[1]=r.y,this.vertexData[2]=r.x+r.width,this.vertexData[3]=r.y,this.vertexData[4]=r.x,this.vertexData[5]=r.y+r.height,this.vertexData[6]=r.x+r.width,this.vertexData[7]=r.y+r.height;let d=this.vertexPool.getBuffer(this.device,this.vertexData);t.setPipeline(this.pipeline);let f=this.uniformBindGroupCache.getBindGroup(this.device,this.uniformLayout,p);t.setBindGroup(0,f),t.setVertexBuffer(0,d),t.draw(4)}destroy(){this.uniformPool.destroy(),this.vertexPool.destroy(),this.uniformBindGroupCache.destroy()}};x();var J=class{stack=[new DOMMatrix];push(t){let r=this.stack[this.stack.length-1].multiply(t);this.stack.push(r)}pop(){this.stack.length>1&&this.stack.pop()}getCurrent(){return this.stack[this.stack.length-1]}packIntoBuffer(t,e,r,i,n,s){let a=this.getCurrent();n&&(a=a.multiply(n)),t[0]=a.a,t[1]=a.b,t[2]=0,t[3]=0,t[4]=a.c,t[5]=a.d,t[6]=0,t[7]=0,t[8]=a.e,t[9]=a.f,t[10]=1,t[11]=0,t[12]=e,t[13]=r,t[14]=i,t[15]=s??0}destroy(){this.stack=[new DOMMatrix]}};function Yt(u){if(Array.isArray(u)){let r=u[3]??1;return[u[0]*r,u[1]*r,u[2]*r,r]}if("r"in u){let r=u.a??1;return{r:u.r*r,g:u.g*r,b:u.b*r,a:r}}let t=Array.from(u),e=t[3]??1;return[t[0]*e,t[1]*e,t[2]*e,e]}var $t=new WeakMap;function vr(u,t){let e=$t.get(u);return(!e||e.format!==t||e.isDestroyed)&&(e=new pt(u,t),$t.set(u,e)),e.resetPools(),e}var pt=class{device;transformStack=new J;clipStack=new W;quadPipeline;solidPipeline;shapeFillPipeline;pathPipeline;effectPipeline;slugPipeline;bindGroupCache=new V;samplerCache=new Mt;format;isDestroyed=!1;rasterDrawCount=0;surfaceWidth=0;surfaceHeight=0;lastEncoder=null;constructor(t,e){this.device=t,this.format=e,this.quadPipeline=new q(t,e),this.solidPipeline=new Z(t,e),this.shapeFillPipeline=new K(t,e),this.pathPipeline=new j(t,e),this.effectPipeline=new E(t,e),this.slugPipeline=new Gt(t,e)}beginFrame(t,e,r={r:0,g:0,b:0,a:0},i,n,s="clear"){this.surfaceWidth=i,this.surfaceHeight=n,t!==this.lastEncoder&&(this.lastEncoder=t,this.resetPools());let a=t.beginRenderPass({colorAttachments:[{view:e,clearValue:Yt(r),loadOp:s,storeOp:"store"}]});return this.clipStack.applyScissorToPass(a,i,n),a}endFrame(t){}resetPools(){this.quadPipeline.resetPools(),this.solidPipeline.resetPools(),this.shapeFillPipeline.resetPools(),this.pathPipeline.resetPools(),this.effectPipeline&&this.effectPipeline.resetPools(),this.slugPipeline.resetPools(),ot.flushRetired(this.device),ot.prune(this.device)}drawTexture(t,e,r,i){let n=this.samplerCache.getSampler(this.device),s={x:0,y:0,width:e.width,height:e.height};this.rasterDrawCount++,this.quadPipeline.draw(t,this.bindGroupCache,this.transformStack,e,n,s,r,this.surfaceWidth,this.surfaceHeight,i)}drawTextureRegion(t,e,r,i,n){let s=this.samplerCache.getSampler(this.device);this.rasterDrawCount++,this.quadPipeline.draw(t,this.bindGroupCache,this.transformStack,e,s,r,i,this.surfaceWidth,this.surfaceHeight,n)}drawRect(t,e,r,i=0,n){let s=0,a=n;typeof i=="object"&&i!==null?(a=i,s=0):typeof i=="number"&&(s=i),this.rasterDrawCount++,this.solidPipeline.draw(t,this.transformStack,e,r,this.surfaceWidth,this.surfaceHeight,s,a)}drawPath(t,e,r,i,n){this.rasterDrawCount++,this.pathPipeline.drawPath(t,this.transformStack,e,r,i,this.surfaceWidth,this.surfaceHeight,n)}drawShapeFill(t,e,r,i,n){this.rasterDrawCount++,this.shapeFillPipeline.draw(t,this.transformStack,e,r,i,this.surfaceWidth,this.surfaceHeight,n)}drawShape(t,e,r,i,n){let s={x:0,y:0,width:e.width,height:e.height};if(r&&r.type!=="none"){let a=Ft(e);if(a.length>0&&(this.drawShapeFill(t,a,r,s,n),(!i||!i.width||i.width<=0)&&(r.type??"solid")==="solid"&&r.color)){let o=ct(e);o&&this.drawPath(t,o,r.color,1,{...n,strokeLineCap:"round"})}}if(i&&i.width&&i.width>0&&i.color){let a=ct(e);a&&this.drawPath(t,a,i.color,i.width,{...n,strokeLineCap:i.cap,trimStart:i.trimStart,trimEnd:i.trimEnd,trimOffset:i.trimOffset,strokeDashArray:i.dashArray,strokeDashOffset:i.dashOffset})}}drawRRect(t,e,r,i){this.drawRect(t,e.rect,r,e.rx,i)}getTemporaryTexture(t,e,r){return this.effectPipeline.getTexture(this.device,t,e,this.format,r)}getTemporaryBuffer(t){return this.effectPipeline.getBuffer(this.device,t)}composite(t,e,r,i,n){return this.effectPipeline.composite(t,this.bindGroupCache,this.samplerCache,e,r,i,this.format,n)}applyMotionBlur(t,e,r,i,n=180,s=16,a){return this.effectPipeline.applyMotionBlur(t,this.bindGroupCache,this.samplerCache,e,r,i,n,s,this.format,a)}getCurrentTransform(){return this.transformStack.getCurrent()}getTransformStack(){return this.transformStack}getSurfaceWidth(){return this.surfaceWidth}getSurfaceHeight(){return this.surfaceHeight}pushIdentity(){let t=this.transformStack.getCurrent();this.pushTransform(t.inverse())}pushTransform(t){this.transformStack.push(t)}popTransform(){this.transformStack.pop()}pushScissor(t){this.clipStack.pushScissor(t,this.surfaceWidth,this.surfaceHeight)}pushScissorIntersect(t){let e=this.clipStack.getCurrentScissor(this.surfaceWidth,this.surfaceHeight);if(!e){this.pushScissor(t);return}let r=Math.max(t.x,e.x),i=Math.max(t.y,e.y),n=Math.min(t.x+t.width,e.x+e.width),s=Math.min(t.y+t.height,e.y+e.height);this.pushScissor({x:r,y:i,width:Math.max(0,n-r),height:Math.max(0,s-i)})}pushScissorLocal(t){let e=this.transformStack.getCurrent(),r=[e.transformPoint(new DOMPoint(t.x,t.y)),e.transformPoint(new DOMPoint(t.x+t.width,t.y)),e.transformPoint(new DOMPoint(t.x,t.y+t.height)),e.transformPoint(new DOMPoint(t.x+t.width,t.y+t.height))],i=r.map(h=>h.x),n=r.map(h=>h.y),s=Math.min(...i),a=Math.min(...n),o=Math.max(...i)-s,c=Math.max(...n)-a,l=this.clipStack.getCurrentScissor(this.surfaceWidth,this.surfaceHeight);if(l){let h=Math.max(s,l.x),p=Math.max(a,l.y),d=Math.min(s+o,l.x+l.width),f=Math.min(a+c,l.y+l.height);s=h,a=p,o=Math.max(0,d-h),c=Math.max(0,f-p)}this.clipStack.pushScissor({x:s,y:a,width:o,height:c},this.surfaceWidth,this.surfaceHeight)}popScissor(){this.clipStack.popScissor()}suspendScissors(){let t=this.clipStack.saveScissors();return this.clipStack.clearScissors(),t}resumeScissors(t){this.clipStack.restoreScissors(t)}pushStencilClip(t){this.clipStack.pushStencilClip(t)}popStencilClip(){this.clipStack.popStencilClip()}destroy(){this.isDestroyed=!0,this.transformStack.destroy(),this.clipStack.destroy(),this.bindGroupCache.destroy(),this.samplerCache.destroy(),this.quadPipeline.destroy(),this.solidPipeline.destroy(),this.shapeFillPipeline.destroy(),this.pathPipeline.destroy(),this.effectPipeline.destroy(),this.slugPipeline.destroy(),this.lastEncoder=null}};x();async function At(u,t){if(typeof window<"u"&&typeof FontFace<"u")try{let r=await new FontFace(u,`url(${t})`).load();document.fonts.add(r),await document.fonts.ready}catch(e){console.warn(`[preloadFont] Failed to load font "${u}" from ${t}:`,e)}else await Pt(u,t)}x();var Xt=/\p{Extended_Pictographic}/gu,It=!1;async function Tr(u,t,e=(r,i)=>console.warn(`[framefields] ${i}`,r)){let r=new Set,i=new Map;(function s(a){let o=a.operation;if(o){let c=o.op==="text"||o.kind==="text"||o.op==="caption"||o.kind==="caption"||typeof o.text=="string",l=o.fontFamily||(c?"Inter":"");if(l&&r.add(l),o.op==="text"&&typeof o.text=="string"){let h=o.fontSize??48;for(let p of o.text.match(Xt)??[])i.set(`${p}-${h}`,h)}}for(let c of a.children??[])s(c)})(u);let n=[];for(let s of r){let a=vt(s)??wt(s);n.push(At(s,a).catch(o=>e(o,`font "${s}" from ${a}`))),t&&n.push(O.preloadSlugFont(t,s,a).catch(o=>e(o,`Slug font "${s}" from ${a}`)))}if(t&&i.size>0){!O.hasEmojiFont()&&!It&&(It=!0,console.warn("[framefields] Text uses emoji but no emoji font is registered, so exports draw nothing for them. Register a color emoji font (e.g. Noto Color Emoji) with FontManager.registerEmojiFont(path)."));for(let[s,a]of i){let o=s.slice(0,s.lastIndexOf("-"));n.push(O.preloadEmoji(t,o,a).catch(c=>{O.hasEmojiFont()&&e(c,`emoji "${o}"`)}))}}await Promise.all(n)}export{te as a,E as b,z as c,ct as d,vr as e,pt as f,At as g,Tr as h};
@@ -1,4 +1,4 @@
1
- import{a as R,c as P,d as h,g as D,h as U,j as w,m as B}from"./chunk-ENKKLU7B.mjs";import{A as F}from"./chunk-FSAELHVT.mjs";import{e as y}from"./chunk-BVF64D6H.mjs";y();y();var N=`
1
+ import{a as R,c as P,d as h,g as D,h as U,j as w,m as B}from"./chunk-ENKKLU7B.mjs";import{A as F}from"./chunk-RNFYEZLL.mjs";import{e as y}from"./chunk-BVF64D6H.mjs";y();y();var N=`
2
2
  struct FlipUniforms {
3
3
  flipH : f32,
4
4
  flipV : f32,
@@ -1,4 +1,4 @@
1
- import{b as S,c as G}from"./chunk-MJN3LOZ7.mjs";import{a}from"./chunk-V6DAD4S4.mjs";import{d as g,g as M,h as C,j as R,m as P}from"./chunk-ENKKLU7B.mjs";import{A as k}from"./chunk-FSAELHVT.mjs";import{e as c}from"./chunk-BVF64D6H.mjs";c();c();c();var w=`
1
+ import{b as S,c as G}from"./chunk-MJN3LOZ7.mjs";import{a}from"./chunk-V6DAD4S4.mjs";import{d as g,g as M,h as C,j as R,m as P}from"./chunk-ENKKLU7B.mjs";import{A as k}from"./chunk-RNFYEZLL.mjs";import{e as c}from"./chunk-BVF64D6H.mjs";c();c();c();var w=`
2
2
  struct ColorMatrixUniforms {
3
3
  row0 : vec4<f32>,
4
4
  row1 : vec4<f32>,
@@ -1,4 +1,4 @@
1
- import{a as ge}from"./chunk-NVTPJUNG.mjs";import{b as pe,c as ve}from"./chunk-MJN3LOZ7.mjs";import{a as s}from"./chunk-V6DAD4S4.mjs";import{a as d,d as K,e as se,f as ue,g as oe,h as ce,j as de,k as me,l as fe,m as U}from"./chunk-ENKKLU7B.mjs";import{A as ne,w as ae}from"./chunk-FSAELHVT.mjs";import{d as le}from"./chunk-6YJP57MZ.mjs";import{e as h}from"./chunk-BVF64D6H.mjs";h();h();h();var Q=100,Xe=ge().field("blurType",s.enum(["Gaussian","Box","Median","Motion","Bilateral","Edge-preserving","Radial","Zoom"]).default("Gaussian"),{bindable:!1,label:"Blur Type"}).field("strength",s.number().min(0).max(Q).default(5),{bindable:!0,dataTypes:["Number","Signal"],label:"Strength Signal",description:"The intensity of the blur. 0 = no blur. Can be modulated by a static number or a dynamic signal."}).field("angle",s.number().int().min(0).max(360).default(0),{bindable:!1,signal:!0,label:"Angle",description:"Direction of a Motion blur, in degrees."}).field("sigmaColor",s.number().min(.01).max(1).default(.1),{bindable:!0,dataTypes:["Number","Signal"],label:"Color Sigma Signal",description:"Sigma value for color space in Bilateral / Edge-preserving blurs. Can be modulated by a static number or a dynamic signal."}).field("centerX",s.number().min(0).max(1).default(.5),{bindable:!0,dataTypes:["Number","Signal"],label:"Center X Signal",description:"The X coordinate of the blur center (0.0 to 1.0). Can be modulated by a static number or a dynamic signal."}).field("centerY",s.number().min(0).max(1).default(.5),{bindable:!0,dataTypes:["Number","Signal"],label:"Center Y Signal",description:"The Y coordinate of the blur center (0.0 to 1.0). Can be modulated by a static number or a dynamic signal."}).field("partialBlur",s.boolean().default(!1),{bindable:!1,signal:!0,label:"Partial Blur",description:"Blurs only a specific circular area around center point."}).field("radius",s.number().min(.01).max(1).default(.3),{bindable:!0,dataTypes:["Number","Signal"],label:"Partial Radius Signal",description:"Radius of the partial blur region (0.01 to 1.0). Can be modulated by a static number or a dynamic signal."}).field("radiusY",s.number().min(0).max(1).default(0),{bindable:!0,dataTypes:["Number","Signal"],label:"Partial Radius Y Signal",description:"Vertical radius of the partial blur region (0 to 1.0). 0 reuses the horizontal radius."}).field("shape",s.enum(["ellipse","circle","rect"]).default("circle"),{bindable:!1,label:"Partial Shape",description:"Shape of the partial blur region."}).build(),Oe=Xe.schema,je=s.union([pe,ve]);var g=`
1
+ import{a as ge}from"./chunk-NVTPJUNG.mjs";import{b as pe,c as ve}from"./chunk-MJN3LOZ7.mjs";import{a as s}from"./chunk-V6DAD4S4.mjs";import{a as d,d as K,e as se,f as ue,g as oe,h as ce,j as de,k as me,l as fe,m as U}from"./chunk-ENKKLU7B.mjs";import{A as ne,w as ae}from"./chunk-RNFYEZLL.mjs";import{d as le}from"./chunk-6YJP57MZ.mjs";import{e as h}from"./chunk-BVF64D6H.mjs";h();h();h();var Q=100,Xe=ge().field("blurType",s.enum(["Gaussian","Box","Median","Motion","Bilateral","Edge-preserving","Radial","Zoom"]).default("Gaussian"),{bindable:!1,label:"Blur Type"}).field("strength",s.number().min(0).max(Q).default(5),{bindable:!0,dataTypes:["Number","Signal"],label:"Strength Signal",description:"The intensity of the blur. 0 = no blur. Can be modulated by a static number or a dynamic signal."}).field("angle",s.number().int().min(0).max(360).default(0),{bindable:!1,signal:!0,label:"Angle",description:"Direction of a Motion blur, in degrees."}).field("sigmaColor",s.number().min(.01).max(1).default(.1),{bindable:!0,dataTypes:["Number","Signal"],label:"Color Sigma Signal",description:"Sigma value for color space in Bilateral / Edge-preserving blurs. Can be modulated by a static number or a dynamic signal."}).field("centerX",s.number().min(0).max(1).default(.5),{bindable:!0,dataTypes:["Number","Signal"],label:"Center X Signal",description:"The X coordinate of the blur center (0.0 to 1.0). Can be modulated by a static number or a dynamic signal."}).field("centerY",s.number().min(0).max(1).default(.5),{bindable:!0,dataTypes:["Number","Signal"],label:"Center Y Signal",description:"The Y coordinate of the blur center (0.0 to 1.0). Can be modulated by a static number or a dynamic signal."}).field("partialBlur",s.boolean().default(!1),{bindable:!1,signal:!0,label:"Partial Blur",description:"Blurs only a specific circular area around center point."}).field("radius",s.number().min(.01).max(1).default(.3),{bindable:!0,dataTypes:["Number","Signal"],label:"Partial Radius Signal",description:"Radius of the partial blur region (0.01 to 1.0). Can be modulated by a static number or a dynamic signal."}).field("radiusY",s.number().min(0).max(1).default(0),{bindable:!0,dataTypes:["Number","Signal"],label:"Partial Radius Y Signal",description:"Vertical radius of the partial blur region (0 to 1.0). 0 reuses the horizontal radius."}).field("shape",s.enum(["ellipse","circle","rect"]).default("circle"),{bindable:!1,label:"Partial Shape",description:"Shape of the partial blur region."}).build(),Oe=Xe.schema,je=s.union([pe,ve]);var g=`
2
2
  struct BlurUniforms {
3
3
  dirX : f32,
4
4
  dirY : f32,