framefields 2.0.11 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -5
- package/dist/audio/index.d.mts +4 -4
- package/dist/audio/index.mjs +13 -12
- package/dist/{audio-BHanw8Jb.d.mts → audio-C2fLC3Tx.d.mts} +3 -3
- package/dist/{audio-BHanw8Jb.d.mts.map → audio-C2fLC3Tx.d.mts.map} +1 -1
- package/dist/{audio-TAvPwzLR.mjs → audio-DJeVoE8b.mjs} +1 -1
- package/dist/{audio-TAvPwzLR.mjs.map → audio-DJeVoE8b.mjs.map} +1 -1
- package/dist/{audio-COOMNwL5.mjs → audio-D_4SeMRK.mjs} +4 -4
- package/dist/{audio-COOMNwL5.mjs.map → audio-D_4SeMRK.mjs.map} +1 -1
- package/dist/{client-CwRhflHE.mjs → client-dVxUnmHz.mjs} +1 -1
- package/dist/{client-CwRhflHE.mjs.map → client-dVxUnmHz.mjs.map} +1 -1
- package/dist/{dist-C_hjvkdN.mjs → dist-0QGroRYZ.mjs} +1 -1
- package/dist/{dist-C_hjvkdN.mjs.map → dist-0QGroRYZ.mjs.map} +1 -1
- package/dist/{dist-BYqNNwsl.mjs → dist-BY0bIWgr.mjs} +10 -2
- package/dist/dist-BY0bIWgr.mjs.map +1 -0
- package/dist/{dist-Cxi68OuY.mjs → dist-Bun_TUvZ.mjs} +26862 -25638
- package/dist/dist-Bun_TUvZ.mjs.map +1 -0
- package/dist/{dist-BAVZdFEJ.mjs → dist-DlzqyRar.mjs} +75 -618
- package/dist/dist-DlzqyRar.mjs.map +1 -0
- package/dist/{dist-cjs-TsA8LFXC.mjs → dist-cjs-91nR6B7Z.mjs} +3 -3
- package/dist/{dist-cjs-TsA8LFXC.mjs.map → dist-cjs-91nR6B7Z.mjs.map} +1 -1
- package/dist/{dist-cjs-DJ8fcQEe.mjs → dist-cjs-BAIenEMC.mjs} +11 -11
- package/dist/{dist-cjs-DJ8fcQEe.mjs.map → dist-cjs-BAIenEMC.mjs.map} +1 -1
- package/dist/{dist-cjs-BmyyWYWv.mjs → dist-cjs-BEQhh76X.mjs} +2 -2
- package/dist/{dist-cjs-BmyyWYWv.mjs.map → dist-cjs-BEQhh76X.mjs.map} +1 -1
- package/dist/{dist-cjs--pxyGFw2.mjs → dist-cjs-BYPq7pfw.mjs} +1 -1
- package/dist/{dist-cjs--pxyGFw2.mjs.map → dist-cjs-BYPq7pfw.mjs.map} +1 -1
- package/dist/{dist-cjs--lfMLs3U.mjs → dist-cjs-BocDqSCX.mjs} +4 -4
- package/dist/{dist-cjs--lfMLs3U.mjs.map → dist-cjs-BocDqSCX.mjs.map} +1 -1
- package/dist/{dist-cjs-CsU2sZoX.mjs → dist-cjs-CWiNggTl.mjs} +4 -4
- package/dist/{dist-cjs-CsU2sZoX.mjs.map → dist-cjs-CWiNggTl.mjs.map} +1 -1
- package/dist/{dist-cjs-DjzmP0-x.mjs → dist-cjs-CwabutT6.mjs} +13 -13
- package/dist/{dist-cjs-DjzmP0-x.mjs.map → dist-cjs-CwabutT6.mjs.map} +1 -1
- package/dist/{dist-cjs-BDpO-TH_.mjs → dist-cjs-D-EE4Ahy.mjs} +1 -1
- package/dist/{dist-cjs-BDpO-TH_.mjs.map → dist-cjs-D-EE4Ahy.mjs.map} +1 -1
- package/dist/{dist-cjs-CQwmMllY.mjs → dist-cjs-DNtDUWfk.mjs} +6 -6
- package/dist/{dist-cjs-CQwmMllY.mjs.map → dist-cjs-DNtDUWfk.mjs.map} +1 -1
- package/dist/{dist-cjs-CND_ghfH.mjs → dist-cjs-DbZhsgS0.mjs} +1 -1
- package/dist/{dist-cjs-CND_ghfH.mjs.map → dist-cjs-DbZhsgS0.mjs.map} +1 -1
- package/dist/{dist-cjs-CgFzrgj8.mjs → dist-cjs-Dh7REKcN.mjs} +1 -1
- package/dist/{dist-cjs-CgFzrgj8.mjs.map → dist-cjs-Dh7REKcN.mjs.map} +1 -1
- package/dist/{dist-cjs-DT2jJlcK.mjs → dist-cjs-Dobx0Nz-.mjs} +5 -5
- package/dist/{dist-cjs-DT2jJlcK.mjs.map → dist-cjs-Dobx0Nz-.mjs.map} +1 -1
- package/dist/{dist-cjs-DzjrlfbE.mjs → dist-cjs-Du0UpNof.mjs} +14 -14
- package/dist/{dist-cjs-DzjrlfbE.mjs.map → dist-cjs-Du0UpNof.mjs.map} +1 -1
- package/dist/dist-cjs-DyHiUfsr.mjs +6 -0
- package/dist/{dist-cjs-M-8QOgS_.mjs → dist-cjs-HHMfMF5a.mjs} +2 -2
- package/dist/{dist-cjs-M-8QOgS_.mjs.map → dist-cjs-HHMfMF5a.mjs.map} +1 -1
- package/dist/{dist-cjs-BiKQozdJ.mjs → dist-cjs-UJYQzLNT.mjs} +3 -3
- package/dist/{dist-cjs-BiKQozdJ.mjs.map → dist-cjs-UJYQzLNT.mjs.map} +1 -1
- package/dist/{dist-cjs-agQl9T8M.mjs → dist-cjs-UKxm5cFR.mjs} +6 -6
- package/dist/{dist-cjs-agQl9T8M.mjs.map → dist-cjs-UKxm5cFR.mjs.map} +1 -1
- package/dist/{dist-CbG3QxDw.mjs → dist-fjKpBYkc.mjs} +12 -27
- package/dist/dist-fjKpBYkc.mjs.map +1 -0
- package/dist/effects/index.d.mts +4 -4
- package/dist/effects/index.mjs +36 -34
- package/dist/{effects-DzbjFhyA.mjs → effects-FTlu0dri.mjs} +3 -3
- package/dist/{effects-DzbjFhyA.mjs.map → effects-FTlu0dri.mjs.map} +1 -1
- package/dist/{event-streams-BaNGaLxh.mjs → event-streams-DnRe8uwT.mjs} +2 -2
- package/dist/{event-streams-BaNGaLxh.mjs.map → event-streams-DnRe8uwT.mjs.map} +1 -1
- package/dist/fonts/index.d.mts +1 -1
- package/dist/fonts/index.mjs +3 -1
- package/dist/{fonts-C0W6TgJk.mjs → fonts-UM5xaBOx.mjs} +24 -11
- package/dist/fonts-UM5xaBOx.mjs.map +1 -0
- package/dist/gpu-RkpiFGOA.mjs +215 -0
- package/dist/gpu-RkpiFGOA.mjs.map +1 -0
- package/dist/{index-CYGpSVsf.d.mts → index-CHQ39_Oe.d.mts} +2 -2
- package/dist/{index-CYGpSVsf.d.mts.map → index-CHQ39_Oe.d.mts.map} +1 -1
- package/dist/{index-CDoTrMs1.d.mts → index-CzQseCtg.d.mts} +8 -8
- package/dist/{index-CDoTrMs1.d.mts.map → index-CzQseCtg.d.mts.map} +1 -1
- package/dist/{index-DDEPvMww.d.mts → index-D67p-rHX.d.mts} +3452 -1675
- package/dist/index-D67p-rHX.d.mts.map +1 -0
- package/dist/{index-9B8CJowc.d.mts → index-DPicEt8H.d.mts} +10 -2
- package/dist/index-DPicEt8H.d.mts.map +1 -0
- package/dist/{index-DGJp1d30.d.mts → index-Db8Z3AtX.d.mts} +3 -3
- package/dist/{index-DGJp1d30.d.mts.map → index-Db8Z3AtX.d.mts.map} +1 -1
- package/dist/{index-DRZu3ezy.d.mts → index-DsOqONsj.d.mts} +3 -3
- package/dist/{index-DRZu3ezy.d.mts.map → index-DsOqONsj.d.mts.map} +1 -1
- package/dist/{index-DnWsbbuZ.d.mts → index-l03NV8JS.d.mts} +7 -2
- package/dist/index-l03NV8JS.d.mts.map +1 -0
- package/dist/index.d.mts +28 -1841
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +79 -65
- package/dist/index.mjs.map +1 -1
- package/dist/{package-XpCRbTOA.mjs → package-CudzAF-n.mjs} +1 -1
- package/dist/{package-XpCRbTOA.mjs.map → package-CudzAF-n.mjs.map} +1 -1
- package/dist/preview/index.d.mts +2 -2
- package/dist/preview/index.mjs +13 -12
- package/dist/{preview-BV2C4Fk6.mjs → preview-DwClLMlU.mjs} +3 -3
- package/dist/{preview-BV2C4Fk6.mjs.map → preview-DwClLMlU.mjs.map} +1 -1
- package/dist/preview-engine/audio.mjs +1 -1
- package/dist/preview-engine/{chunk-Y6HWYPKX.mjs → chunk-3GNP7TJH.mjs} +3 -3
- package/dist/preview-engine/{chunk-LIHUEYI5.mjs → chunk-44CQSOYE.mjs} +2 -2
- package/dist/preview-engine/{chunk-6JW37VJA.mjs → chunk-5AUB4Y3L.mjs} +3 -23
- package/dist/preview-engine/chunk-5DOD2NVY.mjs +26 -0
- package/dist/preview-engine/chunk-5FC7GOWW.mjs +474 -0
- package/dist/preview-engine/chunk-5W4AFQP7.mjs +97 -0
- package/dist/preview-engine/chunk-63SFBHEH.mjs +1 -0
- package/dist/preview-engine/chunk-7EPIRODI.mjs +91 -0
- package/dist/preview-engine/{chunk-PQD5UPHG.mjs → chunk-7G3XIOP7.mjs} +1 -1
- package/dist/preview-engine/chunk-7J2FWGVD.mjs +1 -0
- package/dist/preview-engine/chunk-AXHB4J37.mjs +147 -0
- package/dist/preview-engine/chunk-AY7UX37L.mjs +450 -0
- package/dist/preview-engine/chunk-B43Z3J7J.mjs +5 -0
- package/dist/preview-engine/chunk-BWJS6G7R.mjs +314 -0
- package/dist/preview-engine/{chunk-24DXIKXL.mjs → chunk-DIGIQ5MJ.mjs} +2 -2
- package/dist/preview-engine/{chunk-AEK5BO3J.mjs → chunk-E4RAFHZM.mjs} +1 -1
- package/dist/preview-engine/chunk-ENKKLU7B.mjs +22 -0
- package/dist/preview-engine/{chunk-XLFYM7KH.mjs → chunk-EVXWDOCL.mjs} +2 -2
- package/dist/preview-engine/{chunk-EQ4QZRXB.mjs → chunk-EYWPOCZW.mjs} +2 -2
- package/dist/preview-engine/{chunk-IYVN2QEL.mjs → chunk-FLPSWDX4.mjs} +1 -1
- package/dist/preview-engine/chunk-FU7AIAMM.mjs +88 -0
- package/dist/preview-engine/{chunk-CBM7B7EW.mjs → chunk-GMGGDADT.mjs} +1 -1
- package/dist/preview-engine/chunk-GSFN4WCH.mjs +62 -0
- package/dist/preview-engine/chunk-HE4R7EZM.mjs +121 -0
- package/dist/preview-engine/chunk-IQC2I5A5.mjs +1 -0
- package/dist/preview-engine/{chunk-RJUAM52F.mjs → chunk-IR5DNNWR.mjs} +3 -23
- package/dist/preview-engine/chunk-IUPDOATX.mjs +114 -0
- package/dist/preview-engine/{chunk-GHMCGTJ2.mjs → chunk-J2R5R7YY.mjs} +3 -23
- package/dist/preview-engine/chunk-JAJOZG5P.mjs +1 -0
- package/dist/preview-engine/chunk-JXNG2ACR.mjs +118 -0
- package/dist/preview-engine/{chunk-V6VU46ZG.mjs → chunk-L6BH5J4P.mjs} +1 -1
- package/dist/preview-engine/chunk-LGVEFPOG.mjs +3 -0
- package/dist/preview-engine/{chunk-MDDF2GCF.mjs → chunk-MLY5M7Y5.mjs} +3 -23
- package/dist/preview-engine/chunk-NPD6W3RP.mjs +1 -0
- package/dist/preview-engine/chunk-OCX5AD23.mjs +1 -0
- package/dist/preview-engine/{chunk-D3TETPLI.mjs → chunk-OG62XGCT.mjs} +1 -1
- package/dist/preview-engine/chunk-OJ2PKBXE.mjs +40 -0
- package/dist/preview-engine/chunk-OKH2VU2U.mjs +97 -0
- package/dist/preview-engine/chunk-PAQNDZQB.mjs +83 -0
- package/dist/preview-engine/chunk-PEWYB6WP.mjs +43 -0
- package/dist/preview-engine/chunk-PL4IH5V4.mjs +89 -0
- package/dist/preview-engine/chunk-PSRQA3QW.mjs +84 -0
- package/dist/preview-engine/{chunk-QYRDQMNB.mjs → chunk-PXT52LEH.mjs} +3 -23
- package/dist/preview-engine/chunk-Q22PJXFJ.mjs +69 -0
- package/dist/preview-engine/chunk-Q4Z54DQ7.mjs +1 -0
- package/dist/preview-engine/{chunk-BHFI3Y4T.mjs → chunk-QBEUICZD.mjs} +1 -1
- package/dist/preview-engine/chunk-RQLMW6MA.mjs +4 -0
- package/dist/preview-engine/chunk-RSMO7NPN.mjs +1 -0
- package/dist/preview-engine/chunk-RW2F3XLQ.mjs +90 -0
- package/dist/preview-engine/{chunk-25IW7NYO.mjs → chunk-S2CTIJSI.mjs} +1 -1
- package/dist/preview-engine/chunk-SGPRLTNF.mjs +52 -0
- package/dist/preview-engine/{chunk-Y6FEU4TV.mjs → chunk-SZW5J72T.mjs} +3 -23
- package/dist/preview-engine/{chunk-ECPP3UG6.mjs → chunk-T2FE5VOW.mjs} +3 -23
- package/dist/preview-engine/{chunk-ZSIJB76A.mjs → chunk-TS3JI3BH.mjs} +2 -2
- package/dist/preview-engine/{chunk-AMBSW6OA.mjs → chunk-U4JIFQRR.mjs} +2 -2
- package/dist/preview-engine/{chunk-BJKH76OM.mjs → chunk-VXS5SIEC.mjs} +3 -23
- package/dist/preview-engine/chunk-WFGJXCZT.mjs +53 -0
- package/dist/preview-engine/chunk-WH5Q2NFN.mjs +32 -0
- package/dist/preview-engine/{chunk-AWTH2WZO.mjs → chunk-WUKH7BD7.mjs} +1 -1
- package/dist/preview-engine/chunk-XC5WZNOY.mjs +1448 -0
- package/dist/preview-engine/chunk-YQZOGEPZ.mjs +186 -0
- package/dist/preview-engine/{chunk-6256GQFP.mjs → chunk-ZDQF3OTC.mjs} +1 -1
- package/dist/preview-engine/chunk-ZIIFTWDH.mjs +58 -0
- package/dist/preview-engine/effects.mjs +1 -1
- package/dist/preview-engine/fonts.mjs +1 -1
- package/dist/preview-engine/framefields.mjs +127 -130
- package/dist/preview-engine/player.mjs +6 -6
- package/dist/preview-engine/renderers-2H7YEUTD.mjs +1 -0
- package/dist/preview-engine/renderers-2ILG23ED.mjs +1 -0
- package/dist/preview-engine/renderers-2P6KXWEZ.mjs +1 -0
- package/dist/preview-engine/renderers-2SVWAB42.mjs +1 -0
- package/dist/preview-engine/renderers-2VN3AH45.mjs +104 -0
- package/dist/preview-engine/renderers-3RC5FDWX.mjs +1 -0
- package/dist/preview-engine/renderers-57WDL6XN.mjs +1 -0
- package/dist/preview-engine/{renderers-CAUWP4XH.mjs → renderers-6OGFUSH6.mjs} +3 -23
- package/dist/preview-engine/renderers-6WH7NZCC.mjs +1 -0
- package/dist/preview-engine/renderers-7VJN5L3Z.mjs +1 -0
- package/dist/preview-engine/renderers-A6HM64UZ.mjs +1 -0
- package/dist/preview-engine/{renderers-WLH4HRUE.mjs → renderers-A7VH3ON5.mjs} +1 -1
- package/dist/preview-engine/renderers-B7DSGUMI.mjs +1 -0
- package/dist/preview-engine/renderers-BFNJ7VCI.mjs +1 -0
- package/dist/preview-engine/renderers-BSKZXITT.mjs +35 -0
- package/dist/preview-engine/renderers-CGYIDAVV.mjs +1 -0
- package/dist/preview-engine/renderers-CRRLV7IO.mjs +1 -0
- package/dist/preview-engine/{renderers-JQHUBWLL.mjs → renderers-D6T6IPER.mjs} +3 -23
- package/dist/preview-engine/renderers-DXHJAMZR.mjs +1 -0
- package/dist/preview-engine/renderers-ECA3P4ON.mjs +1 -0
- package/dist/preview-engine/{renderers-W5CVDJVH.mjs → renderers-F55XFVMP.mjs} +1 -1
- package/dist/preview-engine/renderers-FWGMNPYB.mjs +1 -0
- package/dist/preview-engine/renderers-H46TS3IG.mjs +228 -0
- package/dist/preview-engine/renderers-HXFRTIJD.mjs +1 -0
- package/dist/preview-engine/renderers-IWQ3V6AJ.mjs +1 -0
- package/dist/preview-engine/renderers-JHFT27YU.mjs +1 -0
- package/dist/preview-engine/renderers-KZWGSKRF.mjs +1 -0
- package/dist/preview-engine/renderers-MON4QFRF.mjs +1 -0
- package/dist/preview-engine/renderers-NQXMYNSY.mjs +1 -0
- package/dist/preview-engine/renderers-NWHS7N2L.mjs +1 -0
- package/dist/preview-engine/renderers-ORAIXUL3.mjs +1 -0
- package/dist/preview-engine/renderers-OT7D3BUA.mjs +1 -0
- package/dist/preview-engine/renderers-Q4OFCMXI.mjs +1 -0
- package/dist/preview-engine/renderers-QVZVEYP5.mjs +1 -0
- package/dist/preview-engine/renderers-RJO6H4FC.mjs +1 -0
- package/dist/preview-engine/renderers-RKDPX5JU.mjs +1 -0
- package/dist/preview-engine/{renderers-2US2NIUG.mjs → renderers-RLHTNLRE.mjs} +3 -23
- package/dist/preview-engine/renderers-SBFF7JP5.mjs +1 -0
- package/dist/preview-engine/renderers-SCJ6OKTB.mjs +1 -0
- package/dist/preview-engine/renderers-T4JMJXWL.mjs +1 -0
- package/dist/preview-engine/renderers-TAWT3ZSS.mjs +1 -0
- package/dist/preview-engine/renderers-U6KY34TP.mjs +100 -0
- package/dist/preview-engine/renderers-UHTO6BQA.mjs +1 -0
- package/dist/preview-engine/renderers-UNK6I4JJ.mjs +1 -0
- package/dist/preview-engine/renderers-UPTJJE5F.mjs +1 -0
- package/dist/preview-engine/renderers-W773SBPV.mjs +1 -0
- package/dist/preview-engine/renderers-XHTMRXC5.mjs +1 -0
- package/dist/preview-engine/renderers-YECY2YFT.mjs +1 -0
- package/dist/preview-engine/renderers-YMN6QXK7.mjs +1 -0
- package/dist/preview-engine/renderers-ZANPE3OK.mjs +1 -0
- package/dist/preview-engine/renderers-ZHTX73PR.mjs +1 -0
- package/dist/preview-engine/renderers-ZJTRANIX.mjs +1 -0
- package/dist/preview-engine/signals.mjs +1 -1
- package/dist/preview-engine/skia-canvas-QBXAOGPB.mjs +1 -0
- package/dist/{program-BmNKgzja.mjs → program-BqFVw5Mu.mjs} +93 -2335
- package/dist/program-BqFVw5Mu.mjs.map +1 -0
- package/dist/renderer/index.d.mts +2 -2
- package/dist/renderer/index.mjs +3 -3
- package/dist/{renderer-CnXW28b9.mjs → renderer-2Nf9ypST.mjs} +85 -279
- package/dist/renderer-2Nf9ypST.mjs.map +1 -0
- package/dist/{renderer-BREIjsUU.mjs → renderer-2uN2cd0y.mjs} +14 -40
- package/dist/renderer-2uN2cd0y.mjs.map +1 -0
- package/dist/renderer-31jAuNzF.mjs +5 -0
- package/dist/renderer-36EI7Rsz.mjs +5 -0
- package/dist/renderer-3io-cjTt.mjs +5 -0
- package/dist/renderer-9_zWTHbg.mjs +5 -0
- package/dist/{renderer-WSGuj_V6.mjs → renderer-B12_76qk.mjs} +4 -3
- package/dist/{renderer-WSGuj_V6.mjs.map → renderer-B12_76qk.mjs.map} +1 -1
- package/dist/{renderer-bsWnRNpJ.mjs → renderer-B4oS8ZFO.mjs} +29 -98
- package/dist/renderer-B4oS8ZFO.mjs.map +1 -0
- package/dist/renderer-B6KnbfdA.mjs +5 -0
- package/dist/renderer-B7Y2bmRc.mjs +5 -0
- package/dist/renderer-BA6miaaI.mjs +5 -0
- package/dist/{renderer-Bv6q84TU.mjs → renderer-BGr_cBKV.mjs} +61 -208
- package/dist/renderer-BGr_cBKV.mjs.map +1 -0
- package/dist/renderer-BHi-Q6Z_.mjs +5 -0
- package/dist/{renderer-Bv21DbWy.mjs → renderer-BLcu9RDt.mjs} +3 -1
- package/dist/{renderer-D2XD4QYk.mjs → renderer-BO2lYmtE.mjs} +34 -147
- package/dist/renderer-BO2lYmtE.mjs.map +1 -0
- package/dist/renderer-BOlN9HeG.mjs +5 -0
- package/dist/renderer-BSitV56h.mjs +268 -0
- package/dist/renderer-BSitV56h.mjs.map +1 -0
- package/dist/renderer-BTOW-ceB.mjs +5 -0
- package/dist/{renderer-Bhdf90Zq.mjs → renderer-BYqfkwLf.mjs} +51 -163
- package/dist/renderer-BYqfkwLf.mjs.map +1 -0
- package/dist/{renderer-bZU_ndxf.mjs → renderer-BajIOuZH.mjs} +2 -2
- package/dist/{renderer-bZU_ndxf.mjs.map → renderer-BajIOuZH.mjs.map} +1 -1
- package/dist/{renderer-DirxsOjq.mjs → renderer-BgnJUx24.mjs} +80 -258
- package/dist/renderer-BgnJUx24.mjs.map +1 -0
- package/dist/renderer-BiQ0PYOp.mjs +5 -0
- package/dist/{renderer-DIgsilTw.mjs → renderer-BjTq3a0L.mjs} +5 -4
- package/dist/{renderer-DIgsilTw.mjs.map → renderer-BjTq3a0L.mjs.map} +1 -1
- package/dist/{renderer-DEJwPRkR.mjs → renderer-BkN20ZKO.mjs} +15 -51
- package/dist/renderer-BkN20ZKO.mjs.map +1 -0
- package/dist/renderer-Bla7GDyV.mjs +5 -0
- package/dist/renderer-BoYyLVKy.mjs +5 -0
- package/dist/{renderer-D7zvPHKn.mjs → renderer-BpZaHFRc.mjs} +18 -28
- package/dist/renderer-BpZaHFRc.mjs.map +1 -0
- package/dist/renderer-BqOgb7bM.mjs +5 -0
- package/dist/{renderer-cgxO2xN6.mjs → renderer-Bq_dO0LG.mjs} +10 -17
- package/dist/renderer-Bq_dO0LG.mjs.map +1 -0
- package/dist/renderer-BqeM8yTJ.mjs +5 -0
- package/dist/{renderer-dncoIVdd.mjs → renderer-BqsV75Ml.mjs} +3 -1
- package/dist/{renderer-ChdLYS-G.mjs → renderer-Bs4tz_pw.mjs} +20 -87
- package/dist/renderer-Bs4tz_pw.mjs.map +1 -0
- package/dist/{renderer-DpGc-N3G.mjs → renderer-Bsaokil3.mjs} +24 -104
- package/dist/renderer-Bsaokil3.mjs.map +1 -0
- package/dist/{renderer-CXn5HAnK.mjs → renderer-BvG1GF1c.mjs} +10 -16
- package/dist/renderer-BvG1GF1c.mjs.map +1 -0
- package/dist/{renderer-CI7sG_cv.mjs → renderer-BvpSIFkw.mjs} +83 -266
- package/dist/renderer-BvpSIFkw.mjs.map +1 -0
- package/dist/{renderer-B8UaFNqb.mjs → renderer-BwAqwTQq.mjs} +62 -209
- package/dist/renderer-BwAqwTQq.mjs.map +1 -0
- package/dist/{renderer-CzPWB0Ss.mjs → renderer-BwVfhrEx.mjs} +13 -45
- package/dist/renderer-BwVfhrEx.mjs.map +1 -0
- package/dist/renderer-BzpRe50i.mjs +5 -0
- package/dist/renderer-C0eAPwpr.mjs +5 -0
- package/dist/{renderer-CtyD_Xju.mjs → renderer-C3RfT8Gv.mjs} +59 -194
- package/dist/renderer-C3RfT8Gv.mjs.map +1 -0
- package/dist/{renderer-B1YMwl2B.mjs → renderer-C3cYDT3m.mjs} +3 -1
- package/dist/{renderer-1VuQTY1Z.mjs → renderer-CEGbqT2m.mjs} +236 -96
- package/dist/renderer-CEGbqT2m.mjs.map +1 -0
- package/dist/{renderer-DxTs4Iyi.mjs → renderer-CGldH-Zx.mjs} +40 -142
- package/dist/renderer-CGldH-Zx.mjs.map +1 -0
- package/dist/renderer-CGn8V63v.mjs +5 -0
- package/dist/{renderer-kwmlLQOO.mjs → renderer-CH9Qtpy7.mjs} +4 -4
- package/dist/{renderer-kwmlLQOO.mjs.map → renderer-CH9Qtpy7.mjs.map} +1 -1
- package/dist/{renderer-ho_jXJ0H.mjs → renderer-CLyuu_19.mjs} +23 -117
- package/dist/renderer-CLyuu_19.mjs.map +1 -0
- package/dist/renderer-CM5Syo9r.mjs +5 -0
- package/dist/{renderer-D2nCGcjv.mjs → renderer-CRIM_XRK.mjs} +3 -3
- package/dist/{renderer-D2nCGcjv.mjs.map → renderer-CRIM_XRK.mjs.map} +1 -1
- package/dist/{renderer-BTdOMMEx.d.mts → renderer-CTGe8SqQ.d.mts} +2 -2
- package/dist/{renderer-BTdOMMEx.d.mts.map → renderer-CTGe8SqQ.d.mts.map} +1 -1
- package/dist/renderer-CWCEW6Wv.mjs +5 -0
- package/dist/{renderer-Dy0utCl7.mjs → renderer-CgyOylPO.mjs} +10 -17
- package/dist/renderer-CgyOylPO.mjs.map +1 -0
- package/dist/{renderer-C_TPMHiH.mjs → renderer-CjT5Zy-J.mjs} +81 -221
- package/dist/renderer-CjT5Zy-J.mjs.map +1 -0
- package/dist/{renderer-_uvdg48N.mjs → renderer-Cjq1s3br.mjs} +24 -93
- package/dist/renderer-Cjq1s3br.mjs.map +1 -0
- package/dist/renderer-Cl70zxkP.mjs +5 -0
- package/dist/renderer-ClJjoVpB.mjs +6 -0
- package/dist/{renderer-BSaYG8aw.mjs → renderer-CpKNqciR.mjs} +3 -1
- package/dist/{renderer-Bfgd4N0O.mjs → renderer-Cwhux4VX.mjs} +9 -16
- package/dist/renderer-Cwhux4VX.mjs.map +1 -0
- package/dist/{renderer-BJ1aTkZf.mjs → renderer-D0nWLogn.mjs} +99 -282
- package/dist/renderer-D0nWLogn.mjs.map +1 -0
- package/dist/{renderer-vqkKWqa5.mjs → renderer-D1lynYuy.mjs} +23 -107
- package/dist/renderer-D1lynYuy.mjs.map +1 -0
- package/dist/{renderer-B8-kzZdP.mjs → renderer-D4sYVV-I.mjs} +41 -140
- package/dist/renderer-D4sYVV-I.mjs.map +1 -0
- package/dist/{renderer-Bc04fivZ.mjs → renderer-D5z3WDkm.mjs} +99 -287
- package/dist/renderer-D5z3WDkm.mjs.map +1 -0
- package/dist/renderer-D8C-pamu.mjs +148 -0
- package/dist/renderer-D8C-pamu.mjs.map +1 -0
- package/dist/{renderer-D_1oDOCP.mjs → renderer-DAtBnNGC.mjs} +14 -69
- package/dist/renderer-DAtBnNGC.mjs.map +1 -0
- package/dist/{renderer-DZGtBUCx.mjs → renderer-DG1NFsSV.mjs} +35 -185
- package/dist/renderer-DG1NFsSV.mjs.map +1 -0
- package/dist/{renderer-BM05sB8m.mjs → renderer-DHAErBtJ.mjs} +11 -74
- package/dist/renderer-DHAErBtJ.mjs.map +1 -0
- package/dist/{renderer-RKsXlF_0.mjs → renderer-DIDSmoFA.mjs} +73 -73
- package/dist/{renderer-RKsXlF_0.mjs.map → renderer-DIDSmoFA.mjs.map} +1 -1
- package/dist/{renderer-BDbTWSpP.mjs → renderer-DKtP7-fr.mjs} +58 -234
- package/dist/renderer-DKtP7-fr.mjs.map +1 -0
- package/dist/renderer-DLnF-V_h.mjs +5 -0
- package/dist/renderer-DN1rjmcL.mjs +5 -0
- package/dist/{renderer-CfC_aiew.mjs → renderer-DOEsFT7Q.mjs} +57 -192
- package/dist/renderer-DOEsFT7Q.mjs.map +1 -0
- package/dist/{renderer-Ctk2zzfy.mjs → renderer-DPYB6ZcB.mjs} +57 -197
- package/dist/renderer-DPYB6ZcB.mjs.map +1 -0
- package/dist/{renderer-CWTpc4ff.mjs → renderer-DRsPCkxr.mjs} +76 -210
- package/dist/renderer-DRsPCkxr.mjs.map +1 -0
- package/dist/renderer-DXTw9Oqb.mjs +5 -0
- package/dist/{renderer-CaaOKMSd.mjs → renderer-DZLJnnU2.mjs} +63 -190
- package/dist/renderer-DZLJnnU2.mjs.map +1 -0
- package/dist/{renderer-B2ieylQ3.mjs → renderer-DZrQffIP.mjs} +56 -167
- package/dist/renderer-DZrQffIP.mjs.map +1 -0
- package/dist/renderer-DbAVSBNI.mjs +5 -0
- package/dist/renderer-Dg8rD--8.mjs +5 -0
- package/dist/{renderer-DML9qpmS.mjs → renderer-DhEyjn6Q.mjs} +52 -202
- package/dist/renderer-DhEyjn6Q.mjs.map +1 -0
- package/dist/{renderer-CdciwwMI.mjs → renderer-Dmv_Aj6x.mjs} +161 -457
- package/dist/renderer-Dmv_Aj6x.mjs.map +1 -0
- package/dist/renderer-DnFxegGu.mjs +5 -0
- package/dist/renderer-DnfmelHn.mjs +5 -0
- package/dist/{renderer-BIIWCg_J.mjs → renderer-Dpj68gTn.mjs} +11 -18
- package/dist/renderer-Dpj68gTn.mjs.map +1 -0
- package/dist/renderer-DuOjzggd.mjs +5 -0
- package/dist/renderer-DuuOlYIG.mjs +3 -0
- package/dist/renderer-DvYql0Cl.mjs +5 -0
- package/dist/{renderer-BfAWZziM.mjs → renderer-DzhRNdBS.mjs} +58 -225
- package/dist/renderer-DzhRNdBS.mjs.map +1 -0
- package/dist/renderer-GSFP7v2z.mjs +3 -0
- package/dist/renderer-LfUdjgjF.mjs +5 -0
- package/dist/{renderer-Djlb4TLO.mjs → renderer-Q63y7HP_.mjs} +8 -15
- package/dist/renderer-Q63y7HP_.mjs.map +1 -0
- package/dist/renderer-SecCv3U8.mjs +5 -0
- package/dist/{renderer-BhZZEyFX.mjs → renderer-mp1NN5zk.mjs} +4 -4
- package/dist/{renderer-BhZZEyFX.mjs.map → renderer-mp1NN5zk.mjs.map} +1 -1
- package/dist/renderer-oZyoB4CT.mjs +5 -0
- package/dist/renderer-rzci_kTy.mjs +5 -0
- package/dist/{renderer-CpkiHRhh.mjs → renderer-to9DwqXK.mjs} +17 -99
- package/dist/renderer-to9DwqXK.mjs.map +1 -0
- package/dist/{renderer-CepMDQ06.mjs → renderer-v0vuUUUI.mjs} +19 -106
- package/dist/renderer-v0vuUUUI.mjs.map +1 -0
- package/dist/renderer-vLaZuZbX.mjs +5 -0
- package/dist/{renderers-CP8CFWDs-DwQTx8S7.mjs → renderers-CP8CFWDs-DlFq8jmz.mjs} +4 -4
- package/dist/{renderers-CP8CFWDs-DwQTx8S7.mjs.map → renderers-CP8CFWDs-DlFq8jmz.mjs.map} +1 -1
- package/dist/signals/index.d.mts +5 -5
- package/dist/signals/index.mjs +7 -7
- package/dist/{signals-Bv1OweKd.mjs → signals-BDkO0xcZ.mjs} +3 -3
- package/dist/{signals-Bv1OweKd.mjs.map → signals-BDkO0xcZ.mjs.map} +1 -1
- package/dist/{signin-Db08vl-g.mjs → signin-SVSXQw9i.mjs} +9 -9
- package/dist/{signin-Db08vl-g.mjs.map → signin-SVSXQw9i.mjs.map} +1 -1
- package/dist/{sso-oidc-CpLz_lIu.mjs → sso-oidc-B3Sagl43.mjs} +9 -9
- package/dist/{sso-oidc-CpLz_lIu.mjs.map → sso-oidc-B3Sagl43.mjs.map} +1 -1
- package/dist/{sts-BQefGuml.mjs → sts-CYeWec9i.mjs} +2 -2
- package/dist/{sts-Dgl0kH-t.mjs → sts-ClVtt-bV.mjs} +9 -9
- package/dist/{sts-Dgl0kH-t.mjs.map → sts-ClVtt-bV.mjs.map} +1 -1
- package/package.json +55 -55
- package/dist/dist-BAVZdFEJ.mjs.map +0 -1
- package/dist/dist-BYqNNwsl.mjs.map +0 -1
- package/dist/dist-CbG3QxDw.mjs.map +0 -1
- package/dist/dist-Cxi68OuY.mjs.map +0 -1
- package/dist/dist-cjs-3pon9kTt.mjs +0 -6
- package/dist/fonts-C0W6TgJk.mjs.map +0 -1
- package/dist/index-9B8CJowc.d.mts.map +0 -1
- package/dist/index-DDEPvMww.d.mts.map +0 -1
- package/dist/index-DnWsbbuZ.d.mts.map +0 -1
- package/dist/preview-engine/chunk-36YGYLKD.mjs +0 -58
- package/dist/preview-engine/chunk-7O24H4YT.mjs +0 -117
- package/dist/preview-engine/chunk-AUFSM5KI.mjs +0 -141
- package/dist/preview-engine/chunk-BQ65MU6H.mjs +0 -138
- package/dist/preview-engine/chunk-BWDARDO6.mjs +0 -117
- package/dist/preview-engine/chunk-DLXQDDIN.mjs +0 -46
- package/dist/preview-engine/chunk-EJGLUZMW.mjs +0 -1
- package/dist/preview-engine/chunk-FE6RSVKZ.mjs +0 -73
- package/dist/preview-engine/chunk-FGHOHCFG.mjs +0 -110
- package/dist/preview-engine/chunk-HPIULG7P.mjs +0 -111
- package/dist/preview-engine/chunk-HRIKNYPF.mjs +0 -60
- package/dist/preview-engine/chunk-IMV5SBQV.mjs +0 -1
- package/dist/preview-engine/chunk-JPXQPP6J.mjs +0 -1
- package/dist/preview-engine/chunk-K52S5DJX.mjs +0 -109
- package/dist/preview-engine/chunk-L3IEJZ5S.mjs +0 -474
- package/dist/preview-engine/chunk-M7NMFDJ3.mjs +0 -3
- package/dist/preview-engine/chunk-MJM3NFEC.mjs +0 -315
- package/dist/preview-engine/chunk-NFAGEP43.mjs +0 -1448
- package/dist/preview-engine/chunk-NRHSNPZV.mjs +0 -182
- package/dist/preview-engine/chunk-OWOSYNMF.mjs +0 -104
- package/dist/preview-engine/chunk-Q66QQI6N.mjs +0 -8
- package/dist/preview-engine/chunk-QGBSLNFI.mjs +0 -52
- package/dist/preview-engine/chunk-QM3XFEJN.mjs +0 -63
- package/dist/preview-engine/chunk-R3ZH7YF3.mjs +0 -89
- package/dist/preview-engine/chunk-R6YNSBKL.mjs +0 -108
- package/dist/preview-engine/chunk-S4CSX6K5.mjs +0 -610
- package/dist/preview-engine/chunk-SNYAHQ25.mjs +0 -186
- package/dist/preview-engine/chunk-SRT2OCQW.mjs +0 -1
- package/dist/preview-engine/chunk-SUUUYXXT.mjs +0 -1
- package/dist/preview-engine/chunk-T6COGNOW.mjs +0 -134
- package/dist/preview-engine/chunk-XFYXT76H.mjs +0 -52
- package/dist/preview-engine/chunk-XUM42I4R.mjs +0 -1
- package/dist/preview-engine/chunk-YITWSOG4.mjs +0 -103
- package/dist/preview-engine/chunk-ZDCA6NVT.mjs +0 -82
- package/dist/preview-engine/chunk-ZNGOAGAI.mjs +0 -1
- package/dist/preview-engine/renderers-27Q5X3U6.mjs +0 -1
- package/dist/preview-engine/renderers-4AHH6BHF.mjs +0 -1
- package/dist/preview-engine/renderers-5BV6JGTU.mjs +0 -248
- package/dist/preview-engine/renderers-6PRVCTYV.mjs +0 -1
- package/dist/preview-engine/renderers-76PQY2SO.mjs +0 -1
- package/dist/preview-engine/renderers-7X2W6QWX.mjs +0 -1
- package/dist/preview-engine/renderers-B52QT6MT.mjs +0 -55
- package/dist/preview-engine/renderers-BE6RVJSE.mjs +0 -1
- package/dist/preview-engine/renderers-BMM2BH56.mjs +0 -1
- package/dist/preview-engine/renderers-CHOGQHVQ.mjs +0 -1
- package/dist/preview-engine/renderers-CRKRWR2Y.mjs +0 -1
- package/dist/preview-engine/renderers-DEYDSGJX.mjs +0 -1
- package/dist/preview-engine/renderers-DZTNRCR7.mjs +0 -1
- package/dist/preview-engine/renderers-ELO3KWTK.mjs +0 -1
- package/dist/preview-engine/renderers-EOJMPPAQ.mjs +0 -1
- package/dist/preview-engine/renderers-F2KJNDWA.mjs +0 -124
- package/dist/preview-engine/renderers-FCV4COVB.mjs +0 -1
- package/dist/preview-engine/renderers-G5KQISVL.mjs +0 -1
- package/dist/preview-engine/renderers-GJSUN5HU.mjs +0 -1
- package/dist/preview-engine/renderers-GMX2ZQDG.mjs +0 -1
- package/dist/preview-engine/renderers-GXCRINGC.mjs +0 -1
- package/dist/preview-engine/renderers-IHKORHMT.mjs +0 -1
- package/dist/preview-engine/renderers-JA4SLMG3.mjs +0 -1
- package/dist/preview-engine/renderers-JLN77CFZ.mjs +0 -1
- package/dist/preview-engine/renderers-KBFW7B5F.mjs +0 -1
- package/dist/preview-engine/renderers-LJRJMFCR.mjs +0 -1
- package/dist/preview-engine/renderers-LPAPZ5QS.mjs +0 -1
- package/dist/preview-engine/renderers-NQUDQEHY.mjs +0 -1
- package/dist/preview-engine/renderers-NS3AIJVG.mjs +0 -1
- package/dist/preview-engine/renderers-NSY2SDIE.mjs +0 -1
- package/dist/preview-engine/renderers-PW4OJWHF.mjs +0 -120
- package/dist/preview-engine/renderers-PWLWOZY4.mjs +0 -1
- package/dist/preview-engine/renderers-Q3MD34JN.mjs +0 -1
- package/dist/preview-engine/renderers-RXGNA2Q7.mjs +0 -1
- package/dist/preview-engine/renderers-TVTQ2R74.mjs +0 -1
- package/dist/preview-engine/renderers-VTTGFO55.mjs +0 -1
- package/dist/preview-engine/renderers-W3VVM5HB.mjs +0 -1
- package/dist/preview-engine/renderers-WG7QBD4D.mjs +0 -1
- package/dist/preview-engine/renderers-WLLJFZTF.mjs +0 -1
- package/dist/preview-engine/renderers-WN4SYFCU.mjs +0 -1
- package/dist/preview-engine/renderers-WSMLLSWX.mjs +0 -1
- package/dist/preview-engine/renderers-XFBSGTHU.mjs +0 -1
- package/dist/preview-engine/renderers-XFC6ZPO5.mjs +0 -1
- package/dist/preview-engine/renderers-XUHRY3XH.mjs +0 -1
- package/dist/preview-engine/renderers-YAOB5XU6.mjs +0 -1
- package/dist/preview-engine/renderers-YTB4FOHT.mjs +0 -1
- package/dist/preview-engine/renderers-ZIMBODX6.mjs +0 -1
- package/dist/program-BmNKgzja.mjs.map +0 -1
- package/dist/renderer-1VuQTY1Z.mjs.map +0 -1
- package/dist/renderer-6oMSare3.mjs +0 -3
- package/dist/renderer-B1ComPb2.mjs +0 -3
- package/dist/renderer-B2XzjK0z.mjs +0 -3
- package/dist/renderer-B2ieylQ3.mjs.map +0 -1
- package/dist/renderer-B8-kzZdP.mjs.map +0 -1
- package/dist/renderer-B8UaFNqb.mjs.map +0 -1
- package/dist/renderer-BDbTWSpP.mjs.map +0 -1
- package/dist/renderer-BIIWCg_J.mjs.map +0 -1
- package/dist/renderer-BJ1aTkZf.mjs.map +0 -1
- package/dist/renderer-BM05sB8m.mjs.map +0 -1
- package/dist/renderer-BQ5Bz5D0.mjs +0 -3
- package/dist/renderer-BREIjsUU.mjs.map +0 -1
- package/dist/renderer-BTu2EVhF.mjs +0 -3
- package/dist/renderer-BZcn_iBl.mjs +0 -3
- package/dist/renderer-Bc04fivZ.mjs.map +0 -1
- package/dist/renderer-BfAWZziM.mjs.map +0 -1
- package/dist/renderer-BfJSUjPN.mjs +0 -3
- package/dist/renderer-Bfgd4N0O.mjs.map +0 -1
- package/dist/renderer-Bhdf90Zq.mjs.map +0 -1
- package/dist/renderer-Bp6sDMa6.mjs +0 -3
- package/dist/renderer-Bt7_sb_Y.mjs +0 -3
- package/dist/renderer-Bv6q84TU.mjs.map +0 -1
- package/dist/renderer-C-H680_l.mjs +0 -3
- package/dist/renderer-C606ZPUn.mjs +0 -3
- package/dist/renderer-C9jyKn1i.mjs +0 -3
- package/dist/renderer-CDLrNgfo.mjs +0 -3
- package/dist/renderer-CERfcxgv.mjs +0 -3
- package/dist/renderer-CG5PzNkv.mjs +0 -3
- package/dist/renderer-CI7sG_cv.mjs.map +0 -1
- package/dist/renderer-CPoIMVdk.mjs +0 -3
- package/dist/renderer-CQdVj2JS.mjs +0 -3
- package/dist/renderer-CQiTodg9.mjs +0 -337
- package/dist/renderer-CQiTodg9.mjs.map +0 -1
- package/dist/renderer-CWTpc4ff.mjs.map +0 -1
- package/dist/renderer-CXn5HAnK.mjs.map +0 -1
- package/dist/renderer-CZgB5st8.mjs +0 -3
- package/dist/renderer-C_TPMHiH.mjs.map +0 -1
- package/dist/renderer-Ca7L1EOp.mjs +0 -3
- package/dist/renderer-CaaOKMSd.mjs.map +0 -1
- package/dist/renderer-CdciwwMI.mjs.map +0 -1
- package/dist/renderer-CepMDQ06.mjs.map +0 -1
- package/dist/renderer-CfC_aiew.mjs.map +0 -1
- package/dist/renderer-ChdLYS-G.mjs.map +0 -1
- package/dist/renderer-CkykdR_D.mjs +0 -3
- package/dist/renderer-Cl6GkeHx.mjs +0 -3
- package/dist/renderer-ClcjrFyo.mjs +0 -3
- package/dist/renderer-CnXW28b9.mjs.map +0 -1
- package/dist/renderer-CpkiHRhh.mjs.map +0 -1
- package/dist/renderer-CtVkU_GA.mjs +0 -44
- package/dist/renderer-CtVkU_GA.mjs.map +0 -1
- package/dist/renderer-Ctk2zzfy.mjs.map +0 -1
- package/dist/renderer-CtyD_Xju.mjs.map +0 -1
- package/dist/renderer-CySUP_wk.mjs +0 -3
- package/dist/renderer-CzPWB0Ss.mjs.map +0 -1
- package/dist/renderer-D2XD4QYk.mjs.map +0 -1
- package/dist/renderer-D2l_Odyg.mjs +0 -3
- package/dist/renderer-D7zvPHKn.mjs.map +0 -1
- package/dist/renderer-D9NnIx7o.mjs +0 -3
- package/dist/renderer-DCPCYySt.mjs +0 -3
- package/dist/renderer-DEJwPRkR.mjs.map +0 -1
- package/dist/renderer-DIkpJEOZ.mjs +0 -3
- package/dist/renderer-DML9qpmS.mjs.map +0 -1
- package/dist/renderer-DNSXPkf_.mjs +0 -3
- package/dist/renderer-DP-CvZ_Z.mjs +0 -3
- package/dist/renderer-DZGtBUCx.mjs.map +0 -1
- package/dist/renderer-D_1oDOCP.mjs.map +0 -1
- package/dist/renderer-DeXb8R6h.mjs +0 -3
- package/dist/renderer-DezO-ZaP.mjs +0 -4
- package/dist/renderer-DhXe04fC.mjs +0 -3
- package/dist/renderer-DirxsOjq.mjs.map +0 -1
- package/dist/renderer-Djlb4TLO.mjs.map +0 -1
- package/dist/renderer-DnH3SI7w.mjs +0 -3
- package/dist/renderer-DpGc-N3G.mjs.map +0 -1
- package/dist/renderer-Dpw4oi33.mjs +0 -3
- package/dist/renderer-DxTs4Iyi.mjs.map +0 -1
- package/dist/renderer-Dy0utCl7.mjs.map +0 -1
- package/dist/renderer-Md-ytU0v.mjs +0 -3
- package/dist/renderer-U-bhWO9Q.mjs +0 -3
- package/dist/renderer-_uvdg48N.mjs.map +0 -1
- package/dist/renderer-bsWnRNpJ.mjs.map +0 -1
- package/dist/renderer-cgxO2xN6.mjs.map +0 -1
- package/dist/renderer-d5-F_48R.mjs +0 -3
- package/dist/renderer-ho_jXJ0H.mjs.map +0 -1
- package/dist/renderer-vqkKWqa5.mjs.map +0 -1
- package/dist/renderer-zA5okHds.mjs +0 -3
- /package/dist/{renderer-C2n-EHxg.mjs → renderer-B-BcgA6d.mjs} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"renderer-BM05sB8m.mjs","names":[],"sources":["../../../nodes/node-deflicker/dist/renderers-iDRgQzRO.mjs"],"sourcesContent":["import { defineRenderer } from \"@framefields/node-sdk/renderer\";\nimport { TemporalDeflickerPipeline } from \"@framefields/tensor-webgpu\";\n\n//#region src/renderers/webgpu-renderer.ts\nfunction resolveVal(val, fallback, frame, fps) {\n\tif (val === void 0 || val === null) return fallback;\n\tif (typeof val === \"number\") return Number.isFinite(val) ? val : fallback;\n\tif (typeof val === \"object\" && val !== null) {\n\t\tif (\"get\" in val && typeof val.get === \"function\") try {\n\t\t\tconst res = val.get({\n\t\t\t\tframe,\n\t\t\t\tfps,\n\t\t\t\ttime: fps > 0 ? frame / fps : 0,\n\t\t\t\tduration: 0,\n\t\t\t\tdurationMs: 0,\n\t\t\t\tprogress: 0,\n\t\t\t\tdeltaTime: fps > 0 ? 1 / fps : 0\n\t\t\t});\n\t\t\tconst n$1 = Number(res);\n\t\t\tif (Number.isFinite(n$1)) return n$1;\n\t\t} catch {}\n\t\tif (\"value\" in val) {\n\t\t\tconst n$1 = Number(val.value);\n\t\t\tif (Number.isFinite(n$1)) return n$1;\n\t\t}\n\t}\n\tif (typeof val === \"function\") try {\n\t\tconst n$1 = Number(val({\n\t\t\tframe,\n\t\t\tfps,\n\t\t\ttime: fps > 0 ? frame / fps : 0\n\t\t}));\n\t\tif (Number.isFinite(n$1)) return n$1;\n\t} catch {}\n\tconst n = Number(val);\n\treturn Number.isFinite(n) ? n : fallback;\n}\nfunction resolveProp(op, fieldName, defaultValue, minVal, maxVal, frame, fps) {\n\tconst handleId = op[`${fieldName}HandleId`];\n\tconst input = handleId ? op.inputs?.[handleId] : null;\n\tlet raw;\n\tif (input?.connectionValid && input.outputItem) {\n\t\tconst outData = input.outputItem.data;\n\t\traw = outData && typeof outData === \"object\" && \"offset\" in outData ? outData.offset : input.outputItem.data;\n\t} else raw = op[fieldName];\n\tconst resolved = resolveVal(raw, defaultValue, frame, fps);\n\treturn Math.max(minVal, Math.min(maxVal, resolved));\n}\nconst pipelineCache = /* @__PURE__ */ new Map();\nfunction getOrCreatePipeline(device, key) {\n\tlet pipe = pipelineCache.get(key);\n\tif (!pipe) {\n\t\tpipe = new TemporalDeflickerPipeline(device);\n\t\tpipelineCache.set(key, pipe);\n\t}\n\treturn pipe;\n}\nconst TemporalDeflickerWebGPURenderer = async (args) => {\n\tconst { ctx, encoder, pass, targetView, targetTexture, targetWidth, targetHeight, props, drawChild } = args;\n\tconst op = props.virtualMedia?.operation;\n\tif (!op || op.op !== \"TemporalDeflicker\" && op.op !== \"Deflicker\") return;\n\tconst sourceMedia = props.virtualMedia?.children?.[0];\n\tif (!sourceMedia) return;\n\tpass.end();\n\tconst width = targetWidth;\n\tconst height = targetHeight;\n\tconst frame = props.frame ?? 0;\n\tconst compositionFrame = props.compositionFrame ?? frame;\n\tconst fps = props.fps || 30;\n\tconst srcTex = ctx.renderer.getTemporaryTexture(width, height, [...props.excludeTextures || [], targetTexture]);\n\tconst srcView = srcTex.createView();\n\tctx.renderer.beginFrame(encoder, srcView, {\n\t\tr: 0,\n\t\tg: 0,\n\t\tb: 0,\n\t\ta: 0\n\t}, width, height, \"clear\").end();\n\tctx.renderer.pushScissor({\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth,\n\t\theight\n\t});\n\tctx.renderer.pushIdentity();\n\tawait drawChild(sourceMedia, {\n\t\t...props,\n\t\tvirtualMedia: sourceMedia,\n\t\tcontainerWidth: width,\n\t\tcontainerHeight: height\n\t}, srcView, srcTex, width, height);\n\tctx.renderer.popTransform();\n\tctx.renderer.popScissor();\n\targs.pass.end();\n\tconst blendWeight = resolveProp(op, \"blendWeight\", .35, 0, 1, compositionFrame, fps);\n\tconst disocclusionThreshold = resolveProp(op, \"disocclusionThreshold\", .15, .01, 1, compositionFrame, fps);\n\tconst maxMotionPixels = resolveProp(op, \"maxMotionPixels\", 64, 1, 256, compositionFrame, fps);\n\tconst scale = resolveProp(op, \"scale\", .5, .1, 1, compositionFrame, fps);\n\tconst windowSize = Math.round(resolveProp(op, \"windowSize\", 2, 1, 5, compositionFrame, fps));\n\tconst pipelineKey = props.virtualMedia?.metadata?.id || op.id || `deflicker_${props.renderId ?? \"global\"}`;\n\tconst deflickerPipe = getOrCreatePipeline(ctx.device, pipelineKey);\n\tif (frame === 0) deflickerPipe.reset();\n\tconst deflickeredTex = deflickerPipe.execute(srcTex, {\n\t\tblendWeight,\n\t\tdisocclusionThreshold,\n\t\tmaxMotionPixels,\n\t\tscale,\n\t\twindowSize\n\t}, encoder);\n\tconst finalPass = ctx.renderer.beginFrame(encoder, targetView, {\n\t\tr: 0,\n\t\tg: 0,\n\t\tb: 0,\n\t\ta: 0\n\t}, width, height, \"load\");\n\tconst opacity = typeof op.opacity === \"number\" ? op.opacity : 1;\n\tctx.renderer.drawTexture(finalPass, deflickeredTex, {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth,\n\t\theight\n\t}, { opacity });\n\targs.pass = finalPass;\n};\n\n//#endregion\n//#region src/renderers/index.ts\nvar renderers_default = defineRenderer({ WebGPURenderer: TemporalDeflickerWebGPURenderer });\n\n//#endregion\nexport { renderers_default as t };\n//# sourceMappingURL=renderers-iDRgQzRO.mjs.map"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"renderer-BREIjsUU.mjs","names":[],"sources":["../../../nodes/node-mesh-warp/dist/renderers-DzkHlv-9.mjs"],"sourcesContent":["import { defineRenderer } from \"@framefields/node-sdk/renderer\";\n\n//#region src/shared/utils.ts\nfunction createUniformGrid(cols, rows) {\n\tconst points = [];\n\tfor (let r = 0; r < rows; r++) {\n\t\tconst y = r / (rows - 1) * 100;\n\t\tfor (let c = 0; c < cols; c++) {\n\t\t\tconst x = c / (cols - 1) * 100;\n\t\t\tpoints.push({\n\t\t\t\tx,\n\t\t\t\ty\n\t\t\t});\n\t\t}\n\t}\n\treturn points;\n}\nfunction interpolateGridPoint(u, v, oldPoints, oldCols, oldRows) {\n\tconst px = u * (oldCols - 1);\n\tconst py = v * (oldRows - 1);\n\tconst x0 = Math.floor(px);\n\tconst x1 = Math.min(oldCols - 1, x0 + 1);\n\tconst y0 = Math.floor(py);\n\tconst y1 = Math.min(oldRows - 1, y0 + 1);\n\tconst tx = px - x0;\n\tconst ty = py - y0;\n\tconst p00 = oldPoints[y0 * oldCols + x0];\n\tconst p10 = oldPoints[y0 * oldCols + x1];\n\tconst p01 = oldPoints[y1 * oldCols + x0];\n\tconst p11 = oldPoints[y1 * oldCols + x1];\n\tif (!p00 || !p10 || !p01 || !p11) return {\n\t\tx: u * 100,\n\t\ty: v * 100\n\t};\n\treturn {\n\t\tx: (1 - tx) * (1 - ty) * p00.x + tx * (1 - ty) * p10.x + (1 - tx) * ty * p01.x + tx * ty * p11.x,\n\t\ty: (1 - tx) * (1 - ty) * p00.y + tx * (1 - ty) * p10.y + (1 - tx) * ty * p01.y + tx * ty * p11.y\n\t};\n}\nfunction resizeGrid(oldPoints, oldCols, oldRows, newCols, newRows) {\n\tif (!oldPoints || oldPoints.length !== oldCols * oldRows) return createUniformGrid(newCols, newRows);\n\tconst points = [];\n\tfor (let r = 0; r < newRows; r++) {\n\t\tconst v = r / (newRows - 1);\n\t\tfor (let c = 0; c < newCols; c++) {\n\t\t\tconst u = c / (newCols - 1);\n\t\t\tpoints.push(interpolateGridPoint(u, v, oldPoints, oldCols, oldRows));\n\t\t}\n\t}\n\treturn points;\n}\n\n//#endregion\n//#region src/renderers/webgpu-renderer.ts\nconst meshWarpWgsl = `\nstruct MeshUniforms {\n\tgridSize : vec2<f32>,\n\tlayerSize : vec2<f32>,\n\tmatrix_col0 : vec4<f32>,\n\tmatrix_col1 : vec4<f32>,\n\tpoints : array<vec4<f32>, 144>,\n};\n\n@group(0) @binding(0) var<uniform> u : MeshUniforms;\n@group(1) @binding(0) var tex : texture_2d<f32>;\n@group(1) @binding(1) var samp : sampler;\n\nstruct VSOut {\n\t@builtin(position) pos : vec4<f32>,\n\t@location(0) uv : vec2<f32>,\n};\n\n@vertex fn vs(@builtin(vertex_index) vi: u32) -> VSOut {\n\tlet cols = u32(u.gridSize.x);\n\tlet rows = u32(u.gridSize.y);\n\t\n\tlet cellsCol = cols - 1u;\n\tlet cellsRow = rows - 1u;\n\tlet totalCells = cellsCol * cellsRow;\n\t\n\tlet cellIndex = vi / 6u;\n\tlet vertexInCell = vi % 6u;\n\t\n\tif (cellIndex >= totalCells) {\n\t\treturn VSOut(vec4<f32>(0.0), vec4<f32>(0.0).xy);\n\t}\n\t\n\tlet cellC = cellIndex % cellsCol;\n\tlet cellR = cellIndex / cellsCol;\n\t\n\tvar colOffset = 0u;\n\tvar rowOffset = 0u;\n\t\n\t// Mapping vertex index in cell to quad corner offset\n\t// Triangle 1: TL (0,0), TR (1,0), BL (0,1)\n\t// Triangle 2: TR (1,0), BR (1,1), BL (0,1)\n\tif (vertexInCell == 1u) { // TR\n\t\tcolOffset = 1u;\n\t\trowOffset = 0u;\n\t} else if (vertexInCell == 2u) { // BL\n\t\tcolOffset = 0u;\n\t\trowOffset = 1u;\n\t} else if (vertexInCell == 3u) { // TR\n\t\tcolOffset = 1u;\n\t\trowOffset = 0u;\n\t} else if (vertexInCell == 4u) { // BR\n\t\tcolOffset = 1u;\n\t\trowOffset = 1u;\n\t} else if (vertexInCell == 5u) { // BL\n\t\tcolOffset = 0u;\n\t\trowOffset = 1u;\n\t}\n\t// Vertex 0 is TL (colOffset=0, rowOffset=0)\n\t\n\tlet gridC = cellC + colOffset;\n\tlet gridR = cellR + rowOffset;\n\t\n\tlet pointIndex = gridR * cols + gridC;\n\tlet warpedPoint = u.points[pointIndex].xy;\n\t\n\tlet lx = (warpedPoint.x / 100.0) * u.layerSize.x;\n\tlet ly = (warpedPoint.y / 100.0) * u.layerSize.y;\n\t\n\tlet tx = u.matrix_col0.x * lx + u.matrix_col0.y * ly + u.matrix_col0.z;\n\tlet ty = u.matrix_col1.x * lx + u.matrix_col1.y * ly + u.matrix_col1.z;\n\t\n\tlet targetW = u.matrix_col0.w;\n\tlet targetH = u.matrix_col1.w;\n\t\n\tlet x_clip = (tx / targetW) * 2.0 - 1.0;\n\tlet y_clip = 1.0 - (ty / targetH) * 2.0;\n\t\n\tlet u_coord = f32(gridC) / f32(cellsCol);\n\tlet v_coord = f32(gridR) / f32(cellsRow);\n\t\n\treturn VSOut(vec4<f32>(x_clip, y_clip, 0.0, 1.0), vec2<f32>(u_coord, v_coord));\n}\n\n@fragment fn fs(in : VSOut) -> @location(0) vec4<f32> {\n\tlet color = textureSampleLevel(tex, samp, in.uv, 0.0);\n\treturn color;\n}\n`;\nconst deviceResourceCache = /* @__PURE__ */ new WeakMap();\nfunction getMeshWarpResources(device, format) {\n\tlet res = deviceResourceCache.get(device);\n\tif (!res) {\n\t\tconst warpUniformLayout = device.createBindGroupLayout({ entries: [{\n\t\t\tbinding: 0,\n\t\t\tvisibility: GPUShaderStage.VERTEX | GPUShaderStage.FRAGMENT,\n\t\t\tbuffer: { type: \"uniform\" }\n\t\t}] });\n\t\tconst warpTextureLayout = device.createBindGroupLayout({ entries: [{\n\t\t\tbinding: 0,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType: \"float\" }\n\t\t}, {\n\t\t\tbinding: 1,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\tsampler: { type: \"filtering\" }\n\t\t}] });\n\t\tconst module = device.createShaderModule({\n\t\t\tlabel: \"mesh_warp.wgsl\",\n\t\t\tcode: meshWarpWgsl\n\t\t});\n\t\tres = {\n\t\t\twarpPipeline: device.createRenderPipeline({\n\t\t\t\tlabel: \"MeshWarpPipeline\",\n\t\t\t\tlayout: device.createPipelineLayout({ bindGroupLayouts: [warpUniformLayout, warpTextureLayout] }),\n\t\t\t\tvertex: {\n\t\t\t\t\tmodule,\n\t\t\t\t\tentryPoint: \"vs\"\n\t\t\t\t},\n\t\t\t\tfragment: {\n\t\t\t\t\tmodule,\n\t\t\t\t\tentryPoint: \"fs\",\n\t\t\t\t\ttargets: [{\n\t\t\t\t\t\tformat,\n\t\t\t\t\t\tblend: {\n\t\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t\tsrcFactor: \"src-alpha\",\n\t\t\t\t\t\t\t\tdstFactor: \"one-minus-src-alpha\",\n\t\t\t\t\t\t\t\toperation: \"add\"\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\talpha: {\n\t\t\t\t\t\t\t\tsrcFactor: \"one\",\n\t\t\t\t\t\t\t\tdstFactor: \"one-minus-src-alpha\",\n\t\t\t\t\t\t\t\toperation: \"add\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}]\n\t\t\t\t},\n\t\t\t\tprimitive: { topology: \"triangle-list\" }\n\t\t\t}),\n\t\t\twarpUniformLayout,\n\t\t\twarpTextureLayout\n\t\t};\n\t\tdeviceResourceCache.set(device, res);\n\t}\n\treturn res;\n}\nconst MeshWarpWebGPURenderer = async (args) => {\n\tconst { ctx, props, drawChild, targetTexture, targetView, targetWidth, targetHeight, encoder } = args;\n\tconst { virtualMedia } = props;\n\tconst op = virtualMedia?.operation;\n\tif (!op || op.op !== \"MeshWarp\") return;\n\tconst childMedia = virtualMedia.children?.[0];\n\tif (!childMedia) return;\n\tconst sourceWidth = op.originalWidth ?? childMedia.metadata?.width ?? props.containerWidth ?? targetWidth;\n\tconst sourceHeight = op.originalHeight ?? childMedia.metadata?.height ?? props.containerHeight ?? targetHeight;\n\targs.pass.end();\n\tconst childTex = ctx.renderer.getTemporaryTexture(sourceWidth, sourceHeight, [...props.excludeTextures || [], targetTexture]);\n\tconst childView = childTex.createView();\n\tctx.renderer.beginFrame(encoder, childView, {\n\t\tr: 0,\n\t\tg: 0,\n\t\tb: 0,\n\t\ta: 0\n\t}, sourceWidth, sourceHeight, \"clear\").end();\n\tctx.renderer.pushScissor({\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: sourceWidth,\n\t\theight: sourceHeight\n\t});\n\tctx.renderer.pushIdentity();\n\tawait drawChild(childMedia, {\n\t\t...props,\n\t\tcontainerWidth: sourceWidth,\n\t\tcontainerHeight: sourceHeight\n\t}, childView, childTex, sourceWidth, sourceHeight);\n\tctx.renderer.popTransform();\n\tctx.renderer.popScissor();\n\tconst cols = Number(op.cols) || 3;\n\tconst rows = Number(op.rows) || 3;\n\tconst points = op.points || [];\n\tconst finalPoints = points.length === cols * rows ? points : createUniformGrid(cols, rows);\n\tconst maxPoints = 144;\n\tconst uniformData = new Float32Array(12 + maxPoints * 4);\n\tuniformData[0] = cols;\n\tuniformData[1] = rows;\n\tuniformData[2] = props.containerWidth ?? sourceWidth;\n\tuniformData[3] = props.containerHeight ?? sourceHeight;\n\tconst matrix = ctx.renderer.getCurrentTransform();\n\tuniformData[4] = matrix.a;\n\tuniformData[5] = matrix.c;\n\tuniformData[6] = matrix.e;\n\tuniformData[7] = targetWidth;\n\tuniformData[8] = matrix.b;\n\tuniformData[9] = matrix.d;\n\tuniformData[10] = matrix.f;\n\tuniformData[11] = targetHeight;\n\tfor (let i = 0; i < maxPoints; i++) {\n\t\tconst pt = finalPoints[i] || {\n\t\t\tx: 0,\n\t\t\ty: 0\n\t\t};\n\t\tuniformData[12 + i * 4] = pt.x;\n\t\tuniformData[12 + i * 4 + 1] = pt.y;\n\t}\n\tconst { warpPipeline: pipeline, warpUniformLayout: uLayout, warpTextureLayout: tLayout } = getMeshWarpResources(ctx.device, ctx.renderer.format);\n\tconst sampler = ctx.renderer.samplerCache.getSampler(ctx.device);\n\tconst uniformBuffer = ctx.renderer.getTemporaryBuffer(uniformData);\n\tconst uniformBindGroup = ctx.device.createBindGroup({\n\t\tlayout: uLayout,\n\t\tentries: [{\n\t\t\tbinding: 0,\n\t\t\tresource: { buffer: uniformBuffer }\n\t\t}]\n\t});\n\tconst textureBindGroup = ctx.renderer.bindGroupCache.getBindGroup(ctx.device, tLayout, childTex, sampler);\n\tconst outPass = ctx.renderer.beginFrame(encoder, targetView, {\n\t\tr: 0,\n\t\tg: 0,\n\t\tb: 0,\n\t\ta: 0\n\t}, targetWidth, targetHeight, \"load\");\n\toutPass.setPipeline(pipeline);\n\toutPass.setBindGroup(0, uniformBindGroup);\n\toutPass.setBindGroup(1, textureBindGroup);\n\tconst vertexCount = (cols - 1) * (rows - 1) * 6;\n\toutPass.draw(vertexCount);\n\targs.pass = outPass;\n};\n\n//#endregion\n//#region src/renderers/index.ts\nvar renderers_default = defineRenderer({ WebGPURenderer: MeshWarpWebGPURenderer });\n\n//#endregion\nexport { resizeGrid as i, createUniformGrid as n, interpolateGridPoint as r, renderers_default as t };\n//# sourceMappingURL=renderers-DzkHlv-9.mjs.map"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"renderer-Bc04fivZ.mjs","names":[],"sources":["../../../nodes/node-refine-edge/dist/renderers-C6ZkOCIx.mjs"],"sourcesContent":["import { ImageResultSchema, VideoResultSchema, configBuilder } from \"@framefields/node-sdk\";\nimport { z } from \"zod\";\nimport { defineRenderer } from \"@framefields/node-sdk/renderer\";\nimport { signalRegistry } from \"@framefields/webgpu-renderers\";\n\n//#region src/shared/config.ts\nconst MIN_DECONTAMINATE = 0;\nconst MAX_DECONTAMINATE = 1;\nconst MIN_RADIUS = .5;\nconst MAX_RADIUS = 50;\nconst MIN_SMOOTH = 0;\nconst MAX_SMOOTH = 100;\nconst MIN_FEATHER = 0;\nconst MAX_FEATHER = 50;\nconst MIN_SHIFT_EDGE = -100;\nconst MAX_SHIFT_EDGE = 100;\nconst MatteChannelEnum = z.enum([\n\t\"Alpha\",\n\t\"Luminance\",\n\t\"Red\",\n\t\"Green\",\n\t\"Blue\"\n]);\nconst RefineEdgeOutputModeEnum = z.enum([\n\t\"Composite\",\n\t\"MatteOnly\",\n\t\"DecontaminatedRGB\"\n]);\nconst refineEdgeConfig = configBuilder().field(\"decontaminateAmount\", z.number().multipleOf(.01).min(MIN_DECONTAMINATE).max(MAX_DECONTAMINATE).default(.7), {\n\tbindable: true,\n\tdataTypes: [\"Number\", \"Signal\"],\n\tlabel: \"Decontaminate Colors\",\n\tdescription: \"Amount of edge color spill decontamination/defringing (0.0–1.0).\"\n}).field(\"radius\", z.number().multipleOf(.1).min(MIN_RADIUS).max(MAX_RADIUS).default(2), {\n\tbindable: true,\n\tdataTypes: [\"Number\", \"Signal\"],\n\tlabel: \"Edge Detection Radius (px)\",\n\tdescription: \"Radius in pixels around alpha transitions to refine and decontaminate.\"\n}).field(\"smooth\", z.number().min(MIN_SMOOTH).max(MAX_SMOOTH).default(5), {\n\tbindable: true,\n\tdataTypes: [\"Number\", \"Signal\"],\n\tlabel: \"Smoothness\",\n\tdescription: \"Matte edge smoothing curve intensity (0–100).\"\n}).field(\"feather\", z.number().multipleOf(.1).min(MIN_FEATHER).max(MAX_FEATHER).default(.5), {\n\tbindable: true,\n\tdataTypes: [\"Number\", \"Signal\"],\n\tlabel: \"Feather (px)\",\n\tdescription: \"Sub-pixel gaussian softness along the matte boundary.\"\n}).field(\"shiftEdge\", z.number().min(MIN_SHIFT_EDGE).max(MAX_SHIFT_EDGE).default(0), {\n\tbindable: true,\n\tdataTypes: [\"Number\", \"Signal\"],\n\tlabel: \"Shift Edge (%)\",\n\tdescription: \"Contract (<0) or expand (>0) the edge boundary (-100% to +100%).\"\n}).field(\"matteChannel\", MatteChannelEnum.default(\"Alpha\"), {\n\tlabel: \"Matte Channel\",\n\tdescription: \"Channel to extract matte from (Alpha, Luminance, Red, Green, Blue).\"\n}).field(\"outputMode\", RefineEdgeOutputModeEnum.default(\"Composite\"), {\n\tlabel: \"Output Mode\",\n\tdescription: \"Composite (decontaminated RGB + refined alpha), MatteOnly (grayscale mask), DecontaminatedRGB (clean RGB with full alpha).\"\n}).build();\nconst RefineEdgeNodeConfigSchema = refineEdgeConfig.schema;\nconst RefineEdgeResultSchema = z.union([ImageResultSchema, VideoResultSchema]);\nconst REFINE_EDGE_OUTPUT_TYPE_MAP = {\n\tVideo: \"Video\",\n\tLottie: \"Video\",\n\tGIF: \"GIF\",\n\tImage: \"Image\",\n\tSVG: \"Image\"\n};\n\n//#endregion\n//#region src/renderers/webgpu-renderer.ts\nconst CHANNEL_MAP = {\n\tAlpha: 0,\n\tLuminance: 1,\n\tRed: 2,\n\tGreen: 3,\n\tBlue: 4\n};\nconst OUTPUT_MODE_MAP = {\n\tComposite: 0,\n\tMatteOnly: 1,\n\tDecontaminatedRGB: 2\n};\nconst WGSL_REFINE_EDGE = `\nstruct RefineEdgeUniforms {\n\tdirX : f32,\n\tdirY : f32,\n\tdecontaminateAmount : f32,\n\tradius : f32,\n\n\tsmoothness : f32,\n\tfeather : f32,\n\tshiftEdge : f32,\n\tmatteChannel : f32,\n\n\toutputMode : f32,\n\thasMatte : f32,\n\thasDecontamSig : f32,\n\thasRadiusSig : f32,\n\n\thasSmoothSig : f32,\n\thasFeatherSig : f32,\n\thasShiftEdgeSig : f32,\n\tisSecondPass : f32,\n\n\tpad0 : f32,\n\tpad1 : f32,\n\tpad2 : f32,\n\tpad3 : f32,\n};\n\n@group(0) @binding(0) var<uniform> u : RefineEdgeUniforms;\n\n@group(1) @binding(0) var texInput : texture_2d<f32>;\n@group(1) @binding(1) var texMatte : texture_2d<f32>;\n@group(1) @binding(2) var origTex : texture_2d<f32>;\n@group(1) @binding(3) var samp : sampler;\n\n@group(2) @binding(0) var decontamSigTex : texture_2d<f32>;\n@group(2) @binding(1) var radiusSigTex : texture_2d<f32>;\n@group(2) @binding(2) var smoothSigTex : texture_2d<f32>;\n@group(2) @binding(3) var featherSigTex : texture_2d<f32>;\n@group(2) @binding(4) var shiftEdgeSigTex : texture_2d<f32>;\n@group(2) @binding(5) var signalSamp : sampler;\n\nstruct VSOut {\n\t@builtin(position) pos : vec4<f32>,\n\t@location(0) uv : vec2<f32>,\n};\n\n@vertex fn vs(@builtin(vertex_index) vi: u32) -> VSOut {\n\tvar pos = array<vec2<f32>, 4>(\n\t\tvec2<f32>(-1.0, 1.0),\n\t\tvec2<f32>(1.0, 1.0),\n\t\tvec2<f32>(-1.0, -1.0),\n\t\tvec2<f32>(1.0, -1.0)\n\t);\n\tvar uv = array<vec2<f32>, 4>(\n\t\tvec2<f32>(0.0, 0.0),\n\t\tvec2<f32>(1.0, 0.0),\n\t\tvec2<f32>(0.0, 1.0),\n\t\tvec2<f32>(1.0, 1.0)\n\t);\n\treturn VSOut(vec4<f32>(pos[vi], 0.0, 1.0), uv[vi]);\n}\n\nfn extractChannel(color : vec4<f32>, chCode : f32) -> f32 {\n\tif (chCode < 0.5) {\n\t\t// Alpha\n\t\treturn color.a;\n\t} else if (chCode < 1.5) {\n\t\t// Luminance\n\t\tlet luma = dot(color.rgb, vec3<f32>(0.2126, 0.7152, 0.0722));\n\t\tif (color.a > 1e-4) {\n\t\t\treturn min(1.0, luma / color.a);\n\t\t}\n\t\treturn luma;\n\t} else if (chCode < 2.5) {\n\t\t// Red\n\t\tif (color.a > 1e-4) {\n\t\t\treturn min(1.0, color.r / color.a);\n\t\t}\n\t\treturn color.r;\n\t} else if (chCode < 3.5) {\n\t\t// Green\n\t\tif (color.a > 1e-4) {\n\t\t\treturn min(1.0, color.g / color.a);\n\t\t}\n\t\treturn color.g;\n\t} else {\n\t\t// Blue\n\t\tif (color.a > 1e-4) {\n\t\t\treturn min(1.0, color.b / color.a);\n\t\t}\n\t\treturn color.b;\n\t}\n}\n\n@fragment fn fs(in : VSOut) -> @location(0) vec4<f32> {\n\tlet dimensions = vec2<f32>(textureDimensions(texInput));\n\tlet texelSize = 1.0 / max(dimensions, vec2<f32>(1.0, 1.0));\n\n\tvar decontam = u.decontaminateAmount;\n\tif (u.hasDecontamSig > 0.5) {\n\t\tdecontam = clamp(textureSampleLevel(decontamSigTex, signalSamp, vec2<f32>(0.5, 0.5), 0.0).r, 0.0, 1.0);\n\t}\n\tvar radius = u.radius;\n\tif (u.hasRadiusSig > 0.5) {\n\t\tradius = clamp(textureSampleLevel(radiusSigTex, signalSamp, vec2<f32>(0.5, 0.5), 0.0).r, 0.5, 50.0);\n\t}\n\tvar smoothVal = u.smoothness;\n\tif (u.hasSmoothSig > 0.5) {\n\t\tsmoothVal = clamp(textureSampleLevel(smoothSigTex, signalSamp, vec2<f32>(0.5, 0.5), 0.0).r, 0.0, 100.0);\n\t}\n\tvar featherVal = u.feather;\n\tif (u.hasFeatherSig > 0.5) {\n\t\tfeatherVal = clamp(textureSampleLevel(featherSigTex, signalSamp, vec2<f32>(0.5, 0.5), 0.0).r, 0.0, 50.0);\n\t}\n\tvar shiftEdgeVal = u.shiftEdge;\n\tif (u.hasShiftEdgeSig > 0.5) {\n\t\tshiftEdgeVal = clamp(textureSampleLevel(shiftEdgeSigTex, signalSamp, vec2<f32>(0.5, 0.5), 0.0).r, -100.0, 100.0);\n\t}\n\n\tlet direction = vec2<f32>(u.dirX, u.dirY);\n\n\t// Combined sigma for smoothing & feathering\n\tlet smoothSigma = max(0.0, smoothVal * 0.15);\n\tlet featherSigma = max(0.0, featherVal);\n\tlet totalSigma = max(0.1, sqrt(smoothSigma * smoothSigma + featherSigma * featherSigma));\n\n\tif (u.isSecondPass <= 0.5) {\n\t\t// =============================================================\n\t\t// PASS 1: Horizontal Pass (Alpha filter + FG color sampling)\n\t\t// =============================================================\n\t\tlet centerInput = textureSampleLevel(texInput, samp, in.uv, 0.0);\n\t\tlet centerMatte = textureSampleLevel(texMatte, samp, in.uv, 0.0);\n\n\t\tvar centerRawAlpha = centerInput.a;\n\t\tif (u.hasMatte > 0.5) {\n\t\t\tcenterRawAlpha = extractChannel(centerMatte, u.matteChannel);\n\t\t}\n\n\t\t// 1. Horizontal Alpha Blur / Filter\n\t\tvar alphaAccum = 0.0;\n\t\tvar alphaWeightSum = 0.0;\n\n\t\tlet stepScale = max(1.0, totalSigma / 15.0);\n\t\tlet effectiveSigma = totalSigma / stepScale;\n\t\tlet sampleRadius = min(i32(ceil(3.0 * effectiveSigma)), 32);\n\n\t\tfor (var i = -sampleRadius; i <= sampleRadius; i++) {\n\t\t\tlet offset = vec2<f32>(f32(i) * stepScale) * direction * texelSize;\n\t\t\tlet sampleUv = clamp(in.uv + offset, vec2<f32>(0.0), vec2<f32>(1.0));\n\t\t\tlet sampleInput = textureSampleLevel(texInput, samp, sampleUv, 0.0);\n\t\t\tvar sAlpha = sampleInput.a;\n\t\t\tif (u.hasMatte > 0.5) {\n\t\t\t\tlet sMatte = textureSampleLevel(texMatte, samp, sampleUv, 0.0);\n\t\t\t\tsAlpha = extractChannel(sMatte, u.matteChannel);\n\t\t\t}\n\n\t\t\tlet dist = f32(i) * stepScale;\n\t\t\tlet weight = exp(-0.5 * (dist / totalSigma) * (dist / totalSigma));\n\t\t\talphaAccum += sAlpha * weight;\n\t\t\talphaWeightSum += weight;\n\t\t}\n\n\t\tlet smoothedAlpha = alphaAccum / max(alphaWeightSum, 1e-5);\n\n\t\t// 2. Horizontal Foreground Color Sampling for Defringing\n\t\tvar fgColorAccum = vec3<f32>(0.0);\n\t\tvar fgWeightSum = 0.0;\n\n\t\tlet rStepScale = max(1.0, radius / 15.0);\n\t\tlet rSampleCount = min(i32(ceil(radius / rStepScale)), 32);\n\n\t\tfor (var i = -rSampleCount; i <= rSampleCount; i++) {\n\t\t\tlet offset = vec2<f32>(f32(i) * rStepScale) * direction * texelSize;\n\t\t\tlet sampleUv = clamp(in.uv + offset, vec2<f32>(0.0), vec2<f32>(1.0));\n\t\t\tlet sampleCol = textureSampleLevel(texInput, samp, sampleUv, 0.0);\n\t\t\tvar sampleA = sampleCol.a;\n\t\t\tif (u.hasMatte > 0.5) {\n\t\t\t\tlet sm = textureSampleLevel(texMatte, samp, sampleUv, 0.0);\n\t\t\t\tsampleA = extractChannel(sm, u.matteChannel);\n\t\t\t}\n\n\t\t\tlet sampleRgb = select(sampleCol.rgb, sampleCol.rgb / max(sampleCol.a, 1e-4), sampleCol.a > 1e-4);\n\t\t\tlet spatialDist = f32(i) * rStepScale;\n\t\t\tlet spatialWeight = exp(-0.5 * (spatialDist / max(radius, 0.5)) * (spatialDist / max(radius, 0.5)));\n\t\t\t// Weight foreground pixels by alpha confidence\n\t\t\tlet fgConfidence = clamp((sampleA - 0.2) / 0.8, 0.0, 1.0);\n\t\t\tlet weight = fgConfidence * spatialWeight;\n\n\t\t\tfgColorAccum += sampleRgb * weight;\n\t\t\tfgWeightSum += weight;\n\t\t}\n\n\t\tlet centerUnpremult = select(centerInput.rgb, centerInput.rgb / max(centerInput.a, 1e-4), centerInput.a > 1e-4);\n\t\tlet fgColor = select(centerUnpremult, fgColorAccum / max(fgWeightSum, 1e-5), fgWeightSum > 1e-4);\n\n\t\treturn vec4<f32>(fgColor, smoothedAlpha);\n\t}\n\n\t// =============================================================\n\t// PASS 2: Vertical Pass & Final Defringe/Composite\n\t// =============================================================\n\tlet pass1Sample = textureSampleLevel(texInput, samp, in.uv, 0.0);\n\tlet origSample = textureSampleLevel(origTex, samp, in.uv, 0.0);\n\n\tvar rawMatteAlpha = origSample.a;\n\tif (u.hasMatte > 0.5) {\n\t\tlet rawMatteSample = textureSampleLevel(texMatte, samp, in.uv, 0.0);\n\t\trawMatteAlpha = extractChannel(rawMatteSample, u.matteChannel);\n\t}\n\n\t// 1. Vertical Alpha Blur / Filter\n\tvar alphaAccum = 0.0;\n\tvar alphaWeightSum = 0.0;\n\n\tlet stepScale = max(1.0, totalSigma / 15.0);\n\tlet effectiveSigma = totalSigma / stepScale;\n\tlet sampleRadius = min(i32(ceil(3.0 * effectiveSigma)), 32);\n\n\tfor (var i = -sampleRadius; i <= sampleRadius; i++) {\n\t\tlet offset = vec2<f32>(f32(i) * stepScale) * direction * texelSize;\n\t\tlet sampleUv = clamp(in.uv + offset, vec2<f32>(0.0), vec2<f32>(1.0));\n\t\tlet sPass1 = textureSampleLevel(texInput, samp, sampleUv, 0.0);\n\t\tlet sAlpha = sPass1.a;\n\n\t\tlet dist = f32(i) * stepScale;\n\t\tlet weight = exp(-0.5 * (dist / totalSigma) * (dist / totalSigma));\n\t\talphaAccum += sAlpha * weight;\n\t\talphaWeightSum += weight;\n\t}\n\n\tvar refinedAlpha = alphaAccum / max(alphaWeightSum, 1e-5);\n\n\t// 2. Shift Edge (Choke < 0 or Expand > 0)\n\tif (abs(shiftEdgeVal) > 0.01) {\n\t\tlet shiftNorm = shiftEdgeVal / 100.0;\n\t\tif (shiftNorm < 0.0) {\n\t\t\t// Contract / Choke\n\t\t\tlet chokeLimit = abs(shiftNorm);\n\t\t\trefinedAlpha = clamp((refinedAlpha - chokeLimit) / max(1.0 - chokeLimit, 1e-4), 0.0, 1.0);\n\t\t} else {\n\t\t\t// Expand / Dilate\n\t\t\trefinedAlpha = clamp(refinedAlpha / max(1.0 - shiftNorm, 1e-4), 0.0, 1.0);\n\t\t}\n\t}\n\n\t// 3. Vertical Foreground Color Sampling for Defringing\n\tvar fgColorAccum = vec3<f32>(0.0);\n\tvar fgWeightSum = 0.0;\n\n\tlet rStepScale = max(1.0, radius / 15.0);\n\tlet rSampleCount = min(i32(ceil(radius / rStepScale)), 32);\n\n\tfor (var i = -rSampleCount; i <= rSampleCount; i++) {\n\t\tlet offset = vec2<f32>(f32(i) * rStepScale) * direction * texelSize;\n\t\tlet sampleUv = clamp(in.uv + offset, vec2<f32>(0.0), vec2<f32>(1.0));\n\t\tlet sPass1 = textureSampleLevel(texInput, samp, sampleUv, 0.0);\n\t\tlet sRgb = sPass1.rgb;\n\t\tlet sA = sPass1.a;\n\n\t\tlet spatialDist = f32(i) * rStepScale;\n\t\tlet spatialWeight = exp(-0.5 * (spatialDist / max(radius, 0.5)) * (spatialDist / max(radius, 0.5)));\n\t\tlet fgConfidence = clamp((sA - 0.2) / 0.8, 0.0, 1.0);\n\t\tlet weight = fgConfidence * spatialWeight;\n\n\t\tfgColorAccum += sRgb * weight;\n\t\tfgWeightSum += weight;\n\t}\n\n\tlet origUnpremult = select(origSample.rgb, origSample.rgb / max(origSample.a, 1e-4), origSample.a > 1e-4);\n\tlet fgColor = select(origUnpremult, fgColorAccum / max(fgWeightSum, 1e-5), fgWeightSum > 1e-4);\n\n\t// Edge zone detection: transitions between foreground and background\n\tlet edgeWeight = clamp(4.0 * rawMatteAlpha * (1.0 - rawMatteAlpha), 0.0, 1.0);\n\tlet decontamFactor = clamp(decontam * max(edgeWeight, (1.0 - refinedAlpha) * 0.8), 0.0, 1.0);\n\n\tlet decontaminatedColor = mix(origUnpremult, fgColor, decontamFactor);\n\n\t// Format Output\n\tlet mode = u.outputMode;\n\tif (mode < 0.5) {\n\t\t// Composite: Decontaminated RGB with refined alpha (premultiplied)\n\t\treturn vec4<f32>(decontaminatedColor * refinedAlpha, refinedAlpha);\n\t} else if (mode < 1.5) {\n\t\t// MatteOnly: Grayscale refined alpha mask\n\t\treturn vec4<f32>(refinedAlpha, refinedAlpha, refinedAlpha, 1.0);\n\t} else {\n\t\t// DecontaminatedRGB: Clean defringed RGB with full alpha\n\t\treturn vec4<f32>(decontaminatedColor, 1.0);\n\t}\n}\n`;\nconst deviceResourceCache = /* @__PURE__ */ new WeakMap();\nfunction getRefineEdgeResources(device, targetFormat) {\n\tconst cached = deviceResourceCache.get(device);\n\tif (cached) return cached;\n\tconst uniformLayout = device.createBindGroupLayout({ entries: [{\n\t\tbinding: 0,\n\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\tbuffer: { type: \"uniform\" }\n\t}] });\n\tconst textureLayout = device.createBindGroupLayout({ entries: [\n\t\t{\n\t\t\tbinding: 0,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType: \"float\" }\n\t\t},\n\t\t{\n\t\t\tbinding: 1,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType: \"float\" }\n\t\t},\n\t\t{\n\t\t\tbinding: 2,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType: \"float\" }\n\t\t},\n\t\t{\n\t\t\tbinding: 3,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\tsampler: { type: \"filtering\" }\n\t\t}\n\t] });\n\tconst signalTextureLayout = device.createBindGroupLayout({ entries: [\n\t\t{\n\t\t\tbinding: 0,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType: \"float\" }\n\t\t},\n\t\t{\n\t\t\tbinding: 1,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType: \"float\" }\n\t\t},\n\t\t{\n\t\t\tbinding: 2,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType: \"float\" }\n\t\t},\n\t\t{\n\t\t\tbinding: 3,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType: \"float\" }\n\t\t},\n\t\t{\n\t\t\tbinding: 4,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType: \"float\" }\n\t\t},\n\t\t{\n\t\t\tbinding: 5,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\tsampler: { type: \"filtering\" }\n\t\t}\n\t] });\n\tconst shaderModule = device.createShaderModule({ code: WGSL_REFINE_EDGE });\n\tconst pipelineLayout = device.createPipelineLayout({ bindGroupLayouts: [\n\t\tuniformLayout,\n\t\ttextureLayout,\n\t\tsignalTextureLayout\n\t] });\n\tconst res = {\n\t\tuniformLayout,\n\t\ttextureLayout,\n\t\tsignalTextureLayout,\n\t\tpipeline: device.createRenderPipeline({\n\t\t\tlayout: pipelineLayout,\n\t\t\tvertex: {\n\t\t\t\tmodule: shaderModule,\n\t\t\t\tentryPoint: \"vs\"\n\t\t\t},\n\t\t\tfragment: {\n\t\t\t\tmodule: shaderModule,\n\t\t\t\tentryPoint: \"fs\",\n\t\t\t\ttargets: [{ format: targetFormat }]\n\t\t\t},\n\t\t\tprimitive: { topology: \"triangle-strip\" }\n\t\t})\n\t};\n\tdeviceResourceCache.set(device, res);\n\treturn res;\n}\nconst WebGPURenderer = async (args) => {\n\tconst { ctx, encoder, pass, targetView, targetTexture, targetWidth, targetHeight, props, drawChild } = args;\n\tconst op = props.virtualMedia?.operation;\n\tif (op?.op !== \"RefineEdge\" || !op) return;\n\tconst childMedia = props.virtualMedia?.children?.[0];\n\tif (!childMedia) return;\n\tpass.end();\n\tconst frame = props.frame ?? 0;\n\tconst fps = props.fps || 30;\n\tconst width = targetWidth;\n\tconst height = targetHeight;\n\tconst resolveField = (handleId, fallbackVal, clampMin = 0, clampMax = 1e3) => {\n\t\tif (handleId && op.inputs?.[handleId]?.connectionValid) {\n\t\t\tconst outputItem = op.inputs[handleId].outputItem;\n\t\t\tif (outputItem?.type === \"Number\") {\n\t\t\t\tconst numVal = typeof outputItem.data === \"number\" ? outputItem.data : outputItem.data?.value ?? fallbackVal;\n\t\t\t\treturn {\n\t\t\t\t\tval: Math.max(clampMin, Math.min(clampMax, numVal)),\n\t\t\t\t\thasStaticSig: false,\n\t\t\t\t\tsd: null,\n\t\t\t\t\thandleId\n\t\t\t\t};\n\t\t\t}\n\t\t\tif (outputItem?.type === \"Signal\" && outputItem.data) return {\n\t\t\t\tval: fallbackVal,\n\t\t\t\thasStaticSig: true,\n\t\t\t\tsd: outputItem.data,\n\t\t\t\thandleId\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tval: Math.max(clampMin, Math.min(clampMax, fallbackVal)),\n\t\t\thasStaticSig: false,\n\t\t\tsd: null,\n\t\t\thandleId\n\t\t};\n\t};\n\tconst decontamRes = resolveField(op.decontaminateAmountHandleId, Number(op.decontaminateAmount ?? .7), MIN_DECONTAMINATE, MAX_DECONTAMINATE);\n\tconst radiusRes = resolveField(op.radiusHandleId, Number(op.radius ?? 2), MIN_RADIUS, MAX_RADIUS);\n\tconst smoothRes = resolveField(op.smoothHandleId, Number(op.smooth ?? 5), MIN_SMOOTH, MAX_SMOOTH);\n\tconst featherRes = resolveField(op.featherHandleId, Number(op.feather ?? .5), MIN_FEATHER, MAX_FEATHER);\n\tconst shiftEdgeRes = resolveField(op.shiftEdgeHandleId, Number(op.shiftEdge ?? 0), MIN_SHIFT_EDGE, MAX_SHIFT_EDGE);\n\tconst tmpInputTex = ctx.renderer.getTemporaryTexture(width, height, [...props.excludeTextures || [], targetTexture]);\n\tconst tmpInputView = tmpInputTex.createView();\n\tctx.renderer.beginFrame(encoder, tmpInputView, {\n\t\tr: 0,\n\t\tg: 0,\n\t\tb: 0,\n\t\ta: 0\n\t}, width, height, \"clear\").end();\n\tctx.renderer.pushScissor({\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth,\n\t\theight\n\t});\n\tctx.renderer.pushIdentity();\n\tawait drawChild(childMedia, {\n\t\t...props,\n\t\tvirtualMedia: childMedia,\n\t\trenderId: `${props.renderId}-input`,\n\t\texcludeTextures: [...props.excludeTextures || [], tmpInputTex]\n\t}, tmpInputView, tmpInputTex, width, height);\n\tctx.renderer.popTransform();\n\tctx.renderer.popScissor();\n\tlet tmpMatteTex = null;\n\tif (op.matteMedia) {\n\t\ttmpMatteTex = ctx.renderer.getTemporaryTexture(width, height, [\n\t\t\t...props.excludeTextures || [],\n\t\t\ttargetTexture,\n\t\t\ttmpInputTex\n\t\t]);\n\t\tconst tmpMatteView = tmpMatteTex.createView();\n\t\tctx.renderer.beginFrame(encoder, tmpMatteView, {\n\t\t\tr: 0,\n\t\t\tg: 0,\n\t\t\tb: 0,\n\t\t\ta: 0\n\t\t}, width, height, \"clear\").end();\n\t\tctx.renderer.pushScissor({\n\t\t\tx: 0,\n\t\t\ty: 0,\n\t\t\twidth,\n\t\t\theight\n\t\t});\n\t\tctx.renderer.pushIdentity();\n\t\tawait drawChild(op.matteMedia, {\n\t\t\t...props,\n\t\t\tvirtualMedia: op.matteMedia,\n\t\t\trenderId: `${props.renderId}-matte`,\n\t\t\texcludeTextures: [\n\t\t\t\t...props.excludeTextures || [],\n\t\t\t\ttmpInputTex,\n\t\t\t\ttmpMatteTex\n\t\t\t]\n\t\t}, tmpMatteView, tmpMatteTex, width, height);\n\t\tctx.renderer.popTransform();\n\t\tctx.renderer.popScissor();\n\t}\n\tconst { pipeline, uniformLayout, textureLayout, signalTextureLayout } = getRefineEdgeResources(ctx.device, ctx.renderer.format);\n\tconst sampler = ctx.renderer.samplerCache.getSampler(ctx.device);\n\tconst elapsedSeconds = props.elapsedMs !== void 0 ? props.elapsedMs / 1e3 : frame / fps;\n\tconst durationSeconds = props.virtualMedia?.metadata?.durationMs ? props.virtualMedia.metadata.durationMs / 1e3 : props.durationMs !== void 0 ? props.durationMs / 1e3 : 0;\n\tconst getSignalView = (res, suffix) => {\n\t\tif (res.hasStaticSig && res.sd) {\n\t\t\tconst cacheNodeId = res.sd.nodeId ?? res.handleId ?? `${props.renderId ?? \"refineedge\"}_${suffix}`;\n\t\t\treturn signalRegistry.getOrCreate2DTextureView(ctx.device, encoder, cacheNodeId, elapsedSeconds, durationSeconds, res.sd, width, height, props.renderId, frame, fps);\n\t\t}\n\t\treturn signalRegistry.getDummy1x1TextureView(ctx.device);\n\t};\n\tconst decontamView = getSignalView(decontamRes, \"decontam_sig\");\n\tconst radiusView = getSignalView(radiusRes, \"radius_sig\");\n\tconst smoothView = getSignalView(smoothRes, \"smooth_sig\");\n\tconst featherView = getSignalView(featherRes, \"feather_sig\");\n\tconst shiftEdgeView = getSignalView(shiftEdgeRes, \"shiftEdge_sig\");\n\tconst sigBindGroup = ctx.device.createBindGroup({\n\t\tlayout: signalTextureLayout,\n\t\tentries: [\n\t\t\t{\n\t\t\t\tbinding: 0,\n\t\t\t\tresource: decontamView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 1,\n\t\t\t\tresource: radiusView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 2,\n\t\t\t\tresource: smoothView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 3,\n\t\t\t\tresource: featherView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 4,\n\t\t\t\tresource: shiftEdgeView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 5,\n\t\t\t\tresource: sampler\n\t\t\t}\n\t\t]\n\t});\n\tconst matteChannelCode = CHANNEL_MAP[op.matteChannel ?? \"Alpha\"] ?? 0;\n\tconst outputModeCode = OUTPUT_MODE_MAP[op.outputMode ?? \"Composite\"] ?? 0;\n\tconst dummyMatteView = tmpMatteTex ? tmpMatteTex.createView() : tmpInputView;\n\tconst hUniformData = new Float32Array(20);\n\tconst vUniformData = new Float32Array(20);\n\tconst baseUniforms = [\n\t\t0,\n\t\t0,\n\t\tdecontamRes.val,\n\t\tradiusRes.val,\n\t\tsmoothRes.val,\n\t\tfeatherRes.val,\n\t\tshiftEdgeRes.val,\n\t\tmatteChannelCode,\n\t\toutputModeCode,\n\t\ttmpMatteTex ? 1 : 0,\n\t\tdecontamRes.hasStaticSig ? 1 : 0,\n\t\tradiusRes.hasStaticSig ? 1 : 0,\n\t\tsmoothRes.hasStaticSig ? 1 : 0,\n\t\tfeatherRes.hasStaticSig ? 1 : 0,\n\t\tshiftEdgeRes.hasStaticSig ? 1 : 0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0\n\t];\n\thUniformData.set(baseUniforms);\n\thUniformData[0] = 1;\n\thUniformData[1] = 0;\n\thUniformData[15] = 0;\n\tvUniformData.set(baseUniforms);\n\tvUniformData[0] = 0;\n\tvUniformData[1] = 1;\n\tvUniformData[15] = 1;\n\tconst outTex1 = ctx.renderer.getTemporaryTexture(width, height, [\n\t\ttmpInputTex,\n\t\t...tmpMatteTex ? [tmpMatteTex] : [],\n\t\ttargetTexture,\n\t\t...props.excludeTextures || []\n\t]);\n\tconst outTex2 = ctx.renderer.getTemporaryTexture(width, height, [\n\t\ttmpInputTex,\n\t\t...tmpMatteTex ? [tmpMatteTex] : [],\n\t\toutTex1,\n\t\ttargetTexture,\n\t\t...props.excludeTextures || []\n\t]);\n\tconst hBuffer = ctx.renderer.getTemporaryBuffer(hUniformData);\n\tconst hPass = encoder.beginRenderPass({ colorAttachments: [{\n\t\tview: outTex1.createView(),\n\t\tloadOp: \"clear\",\n\t\tstoreOp: \"store\",\n\t\tclearValue: {\n\t\t\tr: 0,\n\t\t\tg: 0,\n\t\t\tb: 0,\n\t\t\ta: 0\n\t\t}\n\t}] });\n\thPass.setPipeline(pipeline);\n\thPass.setBindGroup(0, ctx.device.createBindGroup({\n\t\tlayout: uniformLayout,\n\t\tentries: [{\n\t\t\tbinding: 0,\n\t\t\tresource: { buffer: hBuffer }\n\t\t}]\n\t}));\n\thPass.setBindGroup(1, ctx.device.createBindGroup({\n\t\tlayout: textureLayout,\n\t\tentries: [\n\t\t\t{\n\t\t\t\tbinding: 0,\n\t\t\t\tresource: tmpInputView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 1,\n\t\t\t\tresource: dummyMatteView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 2,\n\t\t\t\tresource: tmpInputView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 3,\n\t\t\t\tresource: sampler\n\t\t\t}\n\t\t]\n\t}));\n\thPass.setBindGroup(2, sigBindGroup);\n\thPass.draw(4);\n\thPass.end();\n\tconst vBuffer = ctx.renderer.getTemporaryBuffer(vUniformData);\n\tconst vPass = encoder.beginRenderPass({ colorAttachments: [{\n\t\tview: outTex2.createView(),\n\t\tloadOp: \"clear\",\n\t\tstoreOp: \"store\",\n\t\tclearValue: {\n\t\t\tr: 0,\n\t\t\tg: 0,\n\t\t\tb: 0,\n\t\t\ta: 0\n\t\t}\n\t}] });\n\tvPass.setPipeline(pipeline);\n\tvPass.setBindGroup(0, ctx.device.createBindGroup({\n\t\tlayout: uniformLayout,\n\t\tentries: [{\n\t\t\tbinding: 0,\n\t\t\tresource: { buffer: vBuffer }\n\t\t}]\n\t}));\n\tvPass.setBindGroup(1, ctx.device.createBindGroup({\n\t\tlayout: textureLayout,\n\t\tentries: [\n\t\t\t{\n\t\t\t\tbinding: 0,\n\t\t\t\tresource: outTex1.createView()\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 1,\n\t\t\t\tresource: dummyMatteView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 2,\n\t\t\t\tresource: tmpInputView\n\t\t\t},\n\t\t\t{\n\t\t\t\tbinding: 3,\n\t\t\t\tresource: sampler\n\t\t\t}\n\t\t]\n\t}));\n\tvPass.setBindGroup(2, sigBindGroup);\n\tvPass.draw(4);\n\tvPass.end();\n\tconst finalPass = ctx.renderer.beginFrame(encoder, targetView, {\n\t\tr: 0,\n\t\tg: 0,\n\t\tb: 0,\n\t\ta: 0\n\t}, targetWidth, targetHeight, \"load\");\n\tconst finalOpacity = props.opacity ?? op.opacity ?? 1;\n\tctx.renderer.drawTexture(finalPass, outTex2, {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: targetWidth,\n\t\theight: targetHeight\n\t}, { opacity: finalOpacity });\n\targs.pass = finalPass;\n};\n\n//#endregion\n//#region src/renderers/index.ts\nvar renderers_default = defineRenderer({ WebGPURenderer });\n\n//#endregion\nexport { RefineEdgeResultSchema as _, MAX_RADIUS as a, MIN_DECONTAMINATE as c, MIN_SHIFT_EDGE as d, MIN_SMOOTH as f, RefineEdgeOutputModeEnum as g, RefineEdgeNodeConfigSchema as h, MAX_FEATHER as i, MIN_FEATHER as l, REFINE_EDGE_OUTPUT_TYPE_MAP as m, WebGPURenderer as n, MAX_SHIFT_EDGE as o, MatteChannelEnum as p, MAX_DECONTAMINATE as r, MAX_SMOOTH as s, renderers_default as t, MIN_RADIUS as u, refineEdgeConfig as v };\n//# sourceMappingURL=renderers-C6ZkOCIx.mjs.map"],"mappings":"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"}
|