framefields 2.0.11 → 2.1.1
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-CfBpzxn9.d.mts} +3 -3
- package/dist/{audio-BHanw8Jb.d.mts.map → audio-CfBpzxn9.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-GGuQ_JI0.mjs} +4 -4
- package/dist/{audio-COOMNwL5.mjs.map → audio-GGuQ_JI0.mjs.map} +1 -1
- package/dist/{chunk-GMkBE123.mjs → chunk-GBe2k3y8.mjs} +1 -4
- 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-BAVZdFEJ.mjs → dist-Bb8BoMiw.mjs} +76 -626
- package/dist/dist-Bb8BoMiw.mjs.map +1 -0
- package/dist/{dist-Cxi68OuY.mjs → dist-DkuDAIrG.mjs} +26862 -25638
- package/dist/dist-DkuDAIrG.mjs.map +1 -0
- 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-D6wFg2FR.mjs} +3 -3
- package/dist/{effects-DzbjFhyA.mjs.map → effects-D6wFg2FR.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-CZMYtbP7.mjs} +24 -11
- package/dist/fonts-CZMYtbP7.mjs.map +1 -0
- package/dist/gpu-DG3gI88-.mjs +215 -0
- package/dist/gpu-DG3gI88-.mjs.map +1 -0
- package/dist/{index-DRZu3ezy.d.mts → index--0vVZDPM.d.mts} +3 -3
- package/dist/{index-DRZu3ezy.d.mts.map → index--0vVZDPM.d.mts.map} +1 -1
- package/dist/{index-DnWsbbuZ.d.mts → index-BcA8rep0.d.mts} +7 -2
- package/dist/index-BcA8rep0.d.mts.map +1 -0
- package/dist/{index-DGJp1d30.d.mts → index-BzQc812z.d.mts} +3 -3
- package/dist/{index-DGJp1d30.d.mts.map → index-BzQc812z.d.mts.map} +1 -1
- package/dist/{index-DDEPvMww.d.mts → index-Cpkzy5XR.d.mts} +3452 -1675
- package/dist/index-Cpkzy5XR.d.mts.map +1 -0
- package/dist/{index-CDoTrMs1.d.mts → index-D__HdInU.d.mts} +8 -8
- package/dist/{index-CDoTrMs1.d.mts.map → index-D__HdInU.d.mts.map} +1 -1
- package/dist/{index-CYGpSVsf.d.mts → index-DpWia6iH.d.mts} +4 -11
- package/dist/index-DpWia6iH.d.mts.map +1 -0
- package/dist/{index-9B8CJowc.d.mts → index-Fciq8bcC.d.mts} +10 -2
- package/dist/index-Fciq8bcC.d.mts.map +1 -0
- package/dist/index.d.mts +29 -1842
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +79 -66
- package/dist/index.mjs.map +1 -1
- package/dist/preview/index.d.mts +2 -2
- package/dist/preview/index.mjs +12 -13
- package/dist/{preview-BV2C4Fk6.mjs → preview--rOXbBxl.mjs} +3 -4
- package/dist/preview--rOXbBxl.mjs.map +1 -0
- package/dist/preview-engine/audio.mjs +1 -1
- package/dist/preview-engine/chunk-2MZXSWVT.mjs +118 -0
- package/dist/preview-engine/{chunk-Y6HWYPKX.mjs → chunk-3GNP7TJH.mjs} +3 -3
- package/dist/preview-engine/chunk-3UPI4EPV.mjs +69 -0
- 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-25IW7NYO.mjs → chunk-7EPDVSCL.mjs} +1 -1
- package/dist/preview-engine/chunk-7EPIRODI.mjs +91 -0
- package/dist/preview-engine/chunk-7J2FWGVD.mjs +1 -0
- package/dist/preview-engine/chunk-AXHB4J37.mjs +147 -0
- package/dist/preview-engine/chunk-AXQZX3TC.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-ECPP3UG6.mjs → chunk-E3HC4GRQ.mjs} +3 -23
- 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-IYVN2QEL.mjs → chunk-FLPSWDX4.mjs} +1 -1
- package/dist/preview-engine/{chunk-24DXIKXL.mjs → chunk-FPRXK2WD.mjs} +2 -2
- 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-IQC2I5A5.mjs +1 -0
- 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-XLFYM7KH.mjs → chunk-K773AOF3.mjs} +2 -2
- package/dist/preview-engine/{chunk-RJUAM52F.mjs → chunk-L3CHEZMZ.mjs} +3 -23
- package/dist/preview-engine/chunk-LBRVQ4GE.mjs +84 -0
- package/dist/preview-engine/chunk-LGVEFPOG.mjs +3 -0
- package/dist/preview-engine/{chunk-AMBSW6OA.mjs → chunk-NEE3KQTX.mjs} +2 -2
- package/dist/preview-engine/chunk-NPD6W3RP.mjs +1 -0
- package/dist/preview-engine/{chunk-V6VU46ZG.mjs → chunk-O2RNIQXT.mjs} +1 -1
- package/dist/preview-engine/{server-utils-2FAIV45N.mjs → chunk-OCX5AD23.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-MDDF2GCF.mjs → chunk-PFA427ZC.mjs} +3 -23
- package/dist/preview-engine/chunk-PL4IH5V4.mjs +89 -0
- package/dist/preview-engine/chunk-PNB3ERR3.mjs +1 -0
- package/dist/preview-engine/{chunk-PQD5UPHG.mjs → chunk-PR2BUYCL.mjs} +1 -1
- package/dist/preview-engine/{chunk-QYRDQMNB.mjs → chunk-PXT52LEH.mjs} +3 -23
- package/dist/preview-engine/{chunk-ZSIJB76A.mjs → chunk-Q2DPNVIA.mjs} +2 -2
- package/dist/preview-engine/chunk-Q4Z54DQ7.mjs +1 -0
- package/dist/preview-engine/{chunk-6256GQFP.mjs → chunk-QY7MHWZW.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-SGPRLTNF.mjs +52 -0
- package/dist/preview-engine/{chunk-Y6FEU4TV.mjs → chunk-SZW5J72T.mjs} +3 -23
- package/dist/preview-engine/{chunk-LIHUEYI5.mjs → chunk-VO2R3DWV.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-WSIURGP2.mjs +121 -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-D3TETPLI.mjs → chunk-ZH5MZQTZ.mjs} +1 -1
- package/dist/preview-engine/chunk-ZIIFTWDH.mjs +58 -0
- package/dist/preview-engine/{chunk-EQ4QZRXB.mjs → chunk-ZNL4W4DK.mjs} +2 -2
- 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-2P6KXWEZ.mjs +1 -0
- package/dist/preview-engine/renderers-2SVWAB42.mjs +1 -0
- package/dist/preview-engine/renderers-3RC5FDWX.mjs +1 -0
- package/dist/preview-engine/renderers-3T7Q4SPP.mjs +1 -0
- package/dist/preview-engine/renderers-4DV4REGM.mjs +1 -0
- package/dist/preview-engine/renderers-57WDL6XN.mjs +1 -0
- package/dist/preview-engine/renderers-6WH7NZCC.mjs +1 -0
- package/dist/preview-engine/renderers-7JTNJE7M.mjs +1 -0
- package/dist/preview-engine/renderers-7VJN5L3Z.mjs +1 -0
- package/dist/preview-engine/{renderers-WLH4HRUE.mjs → renderers-A7VH3ON5.mjs} +1 -1
- package/dist/preview-engine/renderers-CQXQHOW2.mjs +1 -0
- package/dist/preview-engine/{renderers-2US2NIUG.mjs → renderers-D2EJULOJ.mjs} +3 -23
- package/dist/preview-engine/renderers-DXHJAMZR.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-HXFRTIJD.mjs +1 -0
- package/dist/preview-engine/renderers-IWQ3V6AJ.mjs +1 -0
- package/dist/preview-engine/renderers-IXGM55XK.mjs +1 -0
- package/dist/preview-engine/renderers-KVHUVWSN.mjs +1 -0
- package/dist/preview-engine/renderers-KZWGSKRF.mjs +1 -0
- package/dist/preview-engine/renderers-LVDUZZ75.mjs +1 -0
- package/dist/preview-engine/renderers-M7R2ZJUP.mjs +1 -0
- package/dist/preview-engine/renderers-NWHS7N2L.mjs +1 -0
- package/dist/preview-engine/{renderers-CAUWP4XH.mjs → renderers-O2DZPBOJ.mjs} +3 -23
- package/dist/preview-engine/renderers-OT7D3BUA.mjs +1 -0
- package/dist/preview-engine/renderers-P4S7GL64.mjs +104 -0
- package/dist/preview-engine/renderers-PMOO7DLX.mjs +1 -0
- package/dist/preview-engine/renderers-Q4OFCMXI.mjs +1 -0
- package/dist/preview-engine/renderers-QCCPCH73.mjs +1 -0
- package/dist/preview-engine/renderers-RJO6H4FC.mjs +1 -0
- package/dist/preview-engine/renderers-RRXFJRGI.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-JQHUBWLL.mjs → renderers-TFZST6WW.mjs} +3 -23
- package/dist/preview-engine/renderers-UHTO6BQA.mjs +1 -0
- package/dist/preview-engine/renderers-UPKB5OLS.mjs +100 -0
- package/dist/preview-engine/renderers-UPTJJE5F.mjs +1 -0
- package/dist/preview-engine/renderers-VLMQR3DW.mjs +1 -0
- package/dist/preview-engine/renderers-WVTTRCVI.mjs +1 -0
- package/dist/preview-engine/renderers-X5PUIPU5.mjs +1 -0
- package/dist/preview-engine/renderers-XCMVZ2XG.mjs +35 -0
- package/dist/preview-engine/renderers-XHTMRXC5.mjs +1 -0
- package/dist/preview-engine/renderers-YDCDY3BR.mjs +1 -0
- package/dist/preview-engine/renderers-YECY2YFT.mjs +1 -0
- package/dist/preview-engine/renderers-YJNQ4B7B.mjs +1 -0
- package/dist/preview-engine/renderers-YMN6QXK7.mjs +1 -0
- package/dist/preview-engine/renderers-YZEVPHPQ.mjs +228 -0
- package/dist/preview-engine/renderers-Z7YQUFAY.mjs +1 -0
- package/dist/preview-engine/renderers-ZANPE3OK.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-Cc5AsBHz.mjs} +93 -2335
- package/dist/program-Cc5AsBHz.mjs.map +1 -0
- package/dist/renderer/index.d.mts +2 -2
- package/dist/renderer/index.mjs +3 -4
- package/dist/renderer-1VSi7Vum.mjs +5 -0
- package/dist/renderer-4BlpUHQT.mjs +5 -0
- package/dist/{renderer-Bv21DbWy.mjs → renderer-9L0p8IT3.mjs} +3 -1
- package/dist/renderer-AzSX2-mZ.mjs +5 -0
- package/dist/renderer-B-cxK24t.mjs +5 -0
- package/dist/{renderer-DxTs4Iyi.mjs → renderer-B1Zn91xt.mjs} +40 -142
- package/dist/renderer-B1Zn91xt.mjs.map +1 -0
- package/dist/renderer-B5d5oM_D.mjs +5 -0
- package/dist/renderer-B8BdNjaN.mjs +5 -0
- package/dist/{renderer-Bhdf90Zq.mjs → renderer-BI5rvAyo.mjs} +51 -163
- package/dist/renderer-BI5rvAyo.mjs.map +1 -0
- package/dist/renderer-BKEfeg-4.mjs +5 -0
- package/dist/{renderer-CI7sG_cv.mjs → renderer-BKf1qDwL.mjs} +83 -266
- package/dist/renderer-BKf1qDwL.mjs.map +1 -0
- package/dist/renderer-BLLOkeFB.mjs +5 -0
- package/dist/renderer-BSitV56h.mjs +268 -0
- package/dist/renderer-BSitV56h.mjs.map +1 -0
- package/dist/renderer-BTvov1NH.mjs +5 -0
- package/dist/renderer-BVun05IK.mjs +5 -0
- package/dist/{renderer-B2ieylQ3.mjs → renderer-BWVsBB3t.mjs} +56 -167
- package/dist/renderer-BWVsBB3t.mjs.map +1 -0
- package/dist/{renderer-ChdLYS-G.mjs → renderer-BXQQxeNC.mjs} +20 -87
- package/dist/renderer-BXQQxeNC.mjs.map +1 -0
- package/dist/renderer-B_3h5nhy.mjs +5 -0
- package/dist/renderer-BaZjoFYK.mjs +5 -0
- package/dist/{renderer-CfC_aiew.mjs → renderer-BaaOR3Ao.mjs} +57 -192
- package/dist/renderer-BaaOR3Ao.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-CWTpc4ff.mjs → renderer-Bb8T5eRX.mjs} +76 -210
- package/dist/renderer-Bb8T5eRX.mjs.map +1 -0
- package/dist/{renderer-D2nCGcjv.mjs → renderer-Bc6J0iVG.mjs} +3 -3
- package/dist/{renderer-D2nCGcjv.mjs.map → renderer-Bc6J0iVG.mjs.map} +1 -1
- package/dist/renderer-BcApaCVe.mjs +5 -0
- package/dist/{renderer-D_1oDOCP.mjs → renderer-Bg7647VN.mjs} +14 -69
- package/dist/renderer-Bg7647VN.mjs.map +1 -0
- package/dist/{renderer-ho_jXJ0H.mjs → renderer-BhKIZDsm.mjs} +23 -117
- package/dist/renderer-BhKIZDsm.mjs.map +1 -0
- package/dist/{renderer-dncoIVdd.mjs → renderer-BhhSyHKF.mjs} +3 -1
- package/dist/{renderer-CXn5HAnK.mjs → renderer-Br9BOkQs.mjs} +10 -16
- package/dist/renderer-Br9BOkQs.mjs.map +1 -0
- package/dist/{renderer-BTdOMMEx.d.mts → renderer-Bs_f_App.d.mts} +2 -2
- package/dist/{renderer-BTdOMMEx.d.mts.map → renderer-Bs_f_App.d.mts.map} +1 -1
- package/dist/{renderer-DZGtBUCx.mjs → renderer-BygIYH8s.mjs} +35 -185
- package/dist/renderer-BygIYH8s.mjs.map +1 -0
- package/dist/{renderer-Bv6q84TU.mjs → renderer-C--Dqe-3.mjs} +61 -208
- package/dist/renderer-C--Dqe-3.mjs.map +1 -0
- package/dist/renderer-C14mKYCw.mjs +5 -0
- package/dist/{renderer-CnXW28b9.mjs → renderer-C27RfwXN.mjs} +85 -279
- package/dist/renderer-C27RfwXN.mjs.map +1 -0
- package/dist/{renderer-Dy0utCl7.mjs → renderer-C5caYAA3.mjs} +10 -17
- package/dist/renderer-C5caYAA3.mjs.map +1 -0
- package/dist/{renderer-Bfgd4N0O.mjs → renderer-C5zpaQed.mjs} +9 -16
- package/dist/renderer-C5zpaQed.mjs.map +1 -0
- package/dist/{renderer-cgxO2xN6.mjs → renderer-C7UZLOYk.mjs} +10 -17
- package/dist/renderer-C7UZLOYk.mjs.map +1 -0
- package/dist/{renderer-BJ1aTkZf.mjs → renderer-C92mwhZz.mjs} +99 -282
- package/dist/renderer-C92mwhZz.mjs.map +1 -0
- package/dist/{renderer-CepMDQ06.mjs → renderer-CAJe9eLS.mjs} +19 -106
- package/dist/renderer-CAJe9eLS.mjs.map +1 -0
- package/dist/renderer-CFqhAXkH.mjs +5 -0
- package/dist/renderer-CK-spD4j.mjs +5 -0
- package/dist/renderer-CLLzQTIk.mjs +5 -0
- package/dist/{renderer-CtyD_Xju.mjs → renderer-CMsjnZ0G.mjs} +59 -194
- package/dist/renderer-CMsjnZ0G.mjs.map +1 -0
- package/dist/renderer-COwa6xlF.mjs +5 -0
- package/dist/renderer-CQPuuoVf.mjs +6 -0
- package/dist/renderer-CRd-cDqZ.mjs +5 -0
- package/dist/renderer-CTVnQAUm.mjs +5 -0
- package/dist/renderer-CbiEBSGx.mjs +5 -0
- package/dist/renderer-Cl7PruQ1.mjs +5 -0
- package/dist/renderer-CmuGGUDR.mjs +5 -0
- package/dist/renderer-CoGP4Mvf.mjs +148 -0
- package/dist/renderer-CoGP4Mvf.mjs.map +1 -0
- package/dist/renderer-CoNRrfqx.mjs +5 -0
- package/dist/{renderer-BREIjsUU.mjs → renderer-CrAqu3Rg.mjs} +14 -40
- package/dist/renderer-CrAqu3Rg.mjs.map +1 -0
- package/dist/renderer-CvIGa0mE.mjs +5 -0
- package/dist/renderer-CwMDPv0p.mjs +5 -0
- package/dist/{renderer-BIIWCg_J.mjs → renderer-CydWqyf0.mjs} +11 -18
- package/dist/renderer-CydWqyf0.mjs.map +1 -0
- package/dist/{renderer-bsWnRNpJ.mjs → renderer-CzBQgGD2.mjs} +29 -98
- package/dist/renderer-CzBQgGD2.mjs.map +1 -0
- package/dist/{renderer-CdciwwMI.mjs → renderer-D0aZNkQE.mjs} +161 -457
- package/dist/renderer-D0aZNkQE.mjs.map +1 -0
- package/dist/{renderer-B8UaFNqb.mjs → renderer-D2BRlqof.mjs} +62 -209
- package/dist/renderer-D2BRlqof.mjs.map +1 -0
- package/dist/{renderer-B8-kzZdP.mjs → renderer-D2FFvxsq.mjs} +41 -140
- package/dist/renderer-D2FFvxsq.mjs.map +1 -0
- package/dist/{renderer-Ctk2zzfy.mjs → renderer-D8-zNjyz.mjs} +57 -197
- package/dist/renderer-D8-zNjyz.mjs.map +1 -0
- package/dist/{renderer-DML9qpmS.mjs → renderer-DDqwds9R.mjs} +52 -202
- package/dist/renderer-DDqwds9R.mjs.map +1 -0
- package/dist/{renderer-BSaYG8aw.mjs → renderer-DGtBOdst.mjs} +3 -1
- package/dist/{renderer-CzPWB0Ss.mjs → renderer-DKqG9Lek.mjs} +13 -45
- package/dist/renderer-DKqG9Lek.mjs.map +1 -0
- package/dist/renderer-DOHbhGPu.mjs +5 -0
- package/dist/renderer-DOmA6IKc.mjs +5 -0
- package/dist/{renderer-DirxsOjq.mjs → renderer-DUhXH5Tz.mjs} +80 -258
- package/dist/renderer-DUhXH5Tz.mjs.map +1 -0
- package/dist/{renderer-kwmlLQOO.mjs → renderer-DVnVnS3c.mjs} +4 -4
- package/dist/{renderer-kwmlLQOO.mjs.map → renderer-DVnVnS3c.mjs.map} +1 -1
- package/dist/{renderer-CaaOKMSd.mjs → renderer-DWEvQ-hQ.mjs} +63 -190
- package/dist/renderer-DWEvQ-hQ.mjs.map +1 -0
- package/dist/renderer-DX2qEJTL.mjs +2173 -0
- package/dist/renderer-DX2qEJTL.mjs.map +1 -0
- package/dist/{renderer-1VuQTY1Z.mjs → renderer-DX8aBDqR.mjs} +236 -96
- package/dist/renderer-DX8aBDqR.mjs.map +1 -0
- package/dist/{renderer-DEJwPRkR.mjs → renderer-DYIPWN_B.mjs} +15 -51
- package/dist/renderer-DYIPWN_B.mjs.map +1 -0
- package/dist/{renderer-Djlb4TLO.mjs → renderer-DZD2G76E.mjs} +8 -15
- package/dist/renderer-DZD2G76E.mjs.map +1 -0
- package/dist/{renderer-WSGuj_V6.mjs → renderer-Da06_9FZ.mjs} +4 -3
- package/dist/{renderer-WSGuj_V6.mjs.map → renderer-Da06_9FZ.mjs.map} +1 -1
- package/dist/{renderer-BM05sB8m.mjs → renderer-DkyXqrQ6.mjs} +11 -74
- package/dist/renderer-DkyXqrQ6.mjs.map +1 -0
- package/dist/renderer-DmCWc4JL.mjs +5 -0
- package/dist/{renderer-BDbTWSpP.mjs → renderer-Dno-fujw.mjs} +58 -234
- package/dist/renderer-Dno-fujw.mjs.map +1 -0
- package/dist/{renderer-D2XD4QYk.mjs → renderer-DoYdfDEA.mjs} +34 -147
- package/dist/renderer-DoYdfDEA.mjs.map +1 -0
- package/dist/{renderer-_uvdg48N.mjs → renderer-DqjITuT-.mjs} +24 -93
- package/dist/renderer-DqjITuT-.mjs.map +1 -0
- package/dist/renderer-DuuOlYIG.mjs +3 -0
- package/dist/{renderer-DIgsilTw.mjs → renderer-Dy-DBU0X.mjs} +5 -4
- package/dist/{renderer-DIgsilTw.mjs.map → renderer-Dy-DBU0X.mjs.map} +1 -1
- package/dist/{renderer-CpkiHRhh.mjs → renderer-DyzNM721.mjs} +17 -99
- package/dist/renderer-DyzNM721.mjs.map +1 -0
- package/dist/{renderer-C_TPMHiH.mjs → renderer-DzrM1KMN.mjs} +81 -221
- package/dist/renderer-DzrM1KMN.mjs.map +1 -0
- package/dist/{renderer-Bc04fivZ.mjs → renderer-FHyZn0em.mjs} +99 -287
- package/dist/renderer-FHyZn0em.mjs.map +1 -0
- package/dist/renderer-GSFP7v2z.mjs +3 -0
- package/dist/{renderer-DpGc-N3G.mjs → renderer-NXdm6HLb.mjs} +24 -104
- package/dist/renderer-NXdm6HLb.mjs.map +1 -0
- package/dist/renderer-OLaYikwi.mjs +5 -0
- package/dist/renderer-Q75RC5Uz.mjs +5 -0
- package/dist/renderer-T0LJ4Po3.mjs +5 -0
- package/dist/renderer-VuXt1hfq.mjs +5 -0
- package/dist/{renderer-BfAWZziM.mjs → renderer-_1xGBbxn.mjs} +58 -225
- package/dist/renderer-_1xGBbxn.mjs.map +1 -0
- package/dist/{renderer-B1YMwl2B.mjs → renderer-c4AorKyw.mjs} +3 -1
- package/dist/renderer-hY_2WLt3.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-D7zvPHKn.mjs → renderer-qsg-JMuN.mjs} +18 -28
- package/dist/renderer-qsg-JMuN.mjs.map +1 -0
- package/dist/{renderer-vqkKWqa5.mjs → renderer-timEC0Gl.mjs} +23 -107
- package/dist/renderer-timEC0Gl.mjs.map +1 -0
- package/dist/renderer-y4EqE06a.mjs +5 -0
- package/dist/{renderers-CP8CFWDs-DwQTx8S7.mjs → renderers-CP8CFWDs-CMYe4kvZ.mjs} +4 -4
- package/dist/{renderers-CP8CFWDs-DwQTx8S7.mjs.map → renderers-CP8CFWDs-CMYe4kvZ.mjs.map} +1 -1
- package/dist/signals/index.d.mts +6 -6
- package/dist/signals/index.mjs +8 -8
- package/dist/{signals-Bv1OweKd.mjs → signals-DGRs6ddH.mjs} +4 -4
- package/dist/{signals-Bv1OweKd.mjs.map → signals-DGRs6ddH.mjs.map} +1 -1
- package/package.json +55 -55
- package/dist/client-CwRhflHE.mjs +0 -66
- package/dist/client-CwRhflHE.mjs.map +0 -1
- 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--lfMLs3U.mjs +0 -66
- package/dist/dist-cjs--lfMLs3U.mjs.map +0 -1
- package/dist/dist-cjs--pxyGFw2.mjs +0 -43
- package/dist/dist-cjs--pxyGFw2.mjs.map +0 -1
- package/dist/dist-cjs-3pon9kTt.mjs +0 -6
- package/dist/dist-cjs-BDpO-TH_.mjs +0 -51
- package/dist/dist-cjs-BDpO-TH_.mjs.map +0 -1
- package/dist/dist-cjs-BiKQozdJ.mjs +0 -64
- package/dist/dist-cjs-BiKQozdJ.mjs.map +0 -1
- package/dist/dist-cjs-BmyyWYWv.mjs +0 -153
- package/dist/dist-cjs-BmyyWYWv.mjs.map +0 -1
- package/dist/dist-cjs-CND_ghfH.mjs +0 -98
- package/dist/dist-cjs-CND_ghfH.mjs.map +0 -1
- package/dist/dist-cjs-CQwmMllY.mjs +0 -137
- package/dist/dist-cjs-CQwmMllY.mjs.map +0 -1
- package/dist/dist-cjs-CgFzrgj8.mjs +0 -85
- package/dist/dist-cjs-CgFzrgj8.mjs.map +0 -1
- package/dist/dist-cjs-CsU2sZoX.mjs +0 -323
- package/dist/dist-cjs-CsU2sZoX.mjs.map +0 -1
- package/dist/dist-cjs-DJ8fcQEe.mjs +0 -9069
- package/dist/dist-cjs-DJ8fcQEe.mjs.map +0 -1
- package/dist/dist-cjs-DT2jJlcK.mjs +0 -181
- package/dist/dist-cjs-DT2jJlcK.mjs.map +0 -1
- package/dist/dist-cjs-DjzmP0-x.mjs +0 -1091
- package/dist/dist-cjs-DjzmP0-x.mjs.map +0 -1
- package/dist/dist-cjs-DzjrlfbE.mjs +0 -437
- package/dist/dist-cjs-DzjrlfbE.mjs.map +0 -1
- package/dist/dist-cjs-M-8QOgS_.mjs +0 -209
- package/dist/dist-cjs-M-8QOgS_.mjs.map +0 -1
- package/dist/dist-cjs-TsA8LFXC.mjs +0 -48
- package/dist/dist-cjs-TsA8LFXC.mjs.map +0 -1
- package/dist/dist-cjs-agQl9T8M.mjs +0 -5015
- package/dist/dist-cjs-agQl9T8M.mjs.map +0 -1
- package/dist/event-streams-BaNGaLxh.mjs +0 -204
- package/dist/event-streams-BaNGaLxh.mjs.map +0 -1
- package/dist/fonts-C0W6TgJk.mjs.map +0 -1
- package/dist/index-9B8CJowc.d.mts.map +0 -1
- package/dist/index-CYGpSVsf.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/package-XpCRbTOA.mjs +0 -6
- package/dist/package-XpCRbTOA.mjs.map +0 -1
- package/dist/preview-BV2C4Fk6.mjs.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-BHFI3Y4T.mjs +0 -1
- 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-RKsXlF_0.mjs +0 -23900
- package/dist/renderer-RKsXlF_0.mjs.map +0 -1
- 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/signin-Db08vl-g.mjs +0 -865
- package/dist/signin-Db08vl-g.mjs.map +0 -1
- package/dist/sso-oidc-CpLz_lIu.mjs +0 -1051
- package/dist/sso-oidc-CpLz_lIu.mjs.map +0 -1
- package/dist/sts-BQefGuml.mjs +0 -6
- package/dist/sts-Dgl0kH-t.mjs +0 -1395
- package/dist/sts-Dgl0kH-t.mjs.map +0 -1
- /package/dist/{renderer-C2n-EHxg.mjs → renderer-B-BcgA6d.mjs} +0 -0
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import{t as S}from"./chunk-ZNGOAGAI.mjs";import{e as T}from"./chunk-BVF64D6H.mjs";T();T();var N=`
|
|
2
|
-
struct FlipUniforms {
|
|
3
|
-
flipH : f32,
|
|
4
|
-
flipV : f32,
|
|
5
|
-
diagonal : f32,
|
|
6
|
-
symmetry : f32,
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
@group(0) @binding(0) var<uniform> u : FlipUniforms;
|
|
10
|
-
@group(1) @binding(0) var tex : texture_2d<f32>;
|
|
11
|
-
@group(1) @binding(1) var samp : sampler;
|
|
12
|
-
|
|
13
|
-
struct VSOut {
|
|
14
|
-
@builtin(position) pos : vec4<f32>,
|
|
15
|
-
@location(0) uv : vec2<f32>,
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
@vertex fn vs(@builtin(vertex_index) vi: u32) -> VSOut {
|
|
19
|
-
var pos = array<vec2<f32>, 4>(
|
|
20
|
-
vec2<f32>(-1.0, 1.0),
|
|
21
|
-
vec2<f32>(1.0, 1.0),
|
|
22
|
-
vec2<f32>(-1.0, -1.0),
|
|
23
|
-
vec2<f32>(1.0, -1.0)
|
|
24
|
-
);
|
|
25
|
-
var uv = array<vec2<f32>, 4>(
|
|
26
|
-
vec2<f32>(0.0, 0.0),
|
|
27
|
-
vec2<f32>(1.0, 0.0),
|
|
28
|
-
vec2<f32>(0.0, 1.0),
|
|
29
|
-
vec2<f32>(1.0, 1.0)
|
|
30
|
-
);
|
|
31
|
-
return VSOut(vec4<f32>(pos[vi], 0.0, 1.0), uv[vi]);
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
@fragment fn fs(in : VSOut) -> @location(0) vec4<f32> {
|
|
35
|
-
var uv = in.uv;
|
|
36
|
-
|
|
37
|
-
// 1. Split-Mirror / Symmetry
|
|
38
|
-
if (u.symmetry > 0.5 && u.symmetry < 1.5) {
|
|
39
|
-
// leftToRight: mirror left half to right half
|
|
40
|
-
uv.x = select(uv.x, 1.0 - uv.x, uv.x > 0.5);
|
|
41
|
-
} else if (u.symmetry > 1.5 && u.symmetry < 2.5) {
|
|
42
|
-
// rightToLeft: mirror right half to left half
|
|
43
|
-
uv.x = select(1.0 - uv.x, uv.x, uv.x > 0.5);
|
|
44
|
-
} else if (u.symmetry > 2.5 && u.symmetry < 3.5) {
|
|
45
|
-
// topToBottom: mirror top half to bottom half
|
|
46
|
-
uv.y = select(uv.y, 1.0 - uv.y, uv.y > 0.5);
|
|
47
|
-
} else if (u.symmetry > 3.5 && u.symmetry < 4.5) {
|
|
48
|
-
// bottomToTop: mirror bottom half to top half
|
|
49
|
-
uv.y = select(1.0 - uv.y, uv.y, uv.y > 0.5);
|
|
50
|
-
} else if (u.symmetry > 4.5) {
|
|
51
|
-
// quadrant: 4-way kaleidoscopic symmetry
|
|
52
|
-
uv.x = select(uv.x, 1.0 - uv.x, uv.x > 0.5);
|
|
53
|
-
uv.y = select(uv.y, 1.0 - uv.y, uv.y > 0.5);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
// 2. Diagonal Swap (Transposition: x <-> y)
|
|
57
|
-
if (u.diagonal > 0.5) {
|
|
58
|
-
let temp = uv.x;
|
|
59
|
-
uv.x = uv.y;
|
|
60
|
-
uv.y = temp;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
// 3. Horizontal / Vertical Flip
|
|
64
|
-
if (u.flipH > 0.5) {
|
|
65
|
-
uv.x = 1.0 - uv.x;
|
|
66
|
-
}
|
|
67
|
-
if (u.flipV > 0.5) {
|
|
68
|
-
uv.y = 1.0 - uv.y;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
return textureSampleLevel(tex, samp, uv, 0.0);
|
|
72
|
-
}
|
|
73
|
-
`,w=new WeakMap,v=new Float32Array(4);function E(r,e){let o=w.get(r);if(o)return o;let h=r.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,buffer:{type:"uniform"}}]}),g=r.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),s=r.createShaderModule({code:N}),u=r.createPipelineLayout({bindGroupLayouts:[h,g]}),l=r.createRenderPipeline({layout:u,vertex:{module:s,entryPoint:"vs"},fragment:{module:s,entryPoint:"fs",targets:[{format:e,blend:{color:{srcFactor:"src-alpha",dstFactor:"one-minus-src-alpha",operation:"add"},alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha",operation:"add"}}}]},primitive:{topology:"triangle-strip"}}),i={uniformLayout:h,textureLayout:g,pipeline:l};return w.set(r,i),i}var B=async r=>{let{ctx:e,encoder:o,pass:h,targetView:g,targetTexture:s,targetWidth:u,targetHeight:l,props:i,drawChild:U}=r,t=i.virtualMedia?.operation;if(t?.op!=="Flip"||!t)return;let c=i.virtualMedia.children?.[0];if(!c)return;h.end();let G=u,F=l,d=c.metadata?.width??i.containerWidth??G,p=c.metadata?.height??i.containerHeight??F,x=e.renderer.getTemporaryTexture(d,p,[...i.excludeTextures||[],s]),P=x.createView();e.renderer.beginFrame(o,P,{r:0,g:0,b:0,a:0},d,p,"clear").end(),e.renderer.pushScissor({x:0,y:0,width:d,height:p}),e.renderer.pushIdentity(),await U(c,{...i,containerWidth:d,containerHeight:p,virtualMedia:c},P,x,d,p),e.renderer.popTransform(),e.renderer.popScissor();let{pipeline:V,uniformLayout:D,textureLayout:M}=E(e.device,e.renderer.format),W=e.renderer.samplerCache.getSampler(e.device),a=t.mode??"horizontal",f=!1,m=!1,b=!1;a==="horizontal"?f=!0:a==="vertical"?m=!0:a==="both"?(f=!0,m=!0):a==="diagonal"?b=!0:a==="antiDiagonal"?(b=!0,f=!0,m=!0):a==="custom"&&(f=t.horizontal??!0,m=t.vertical??!1,b=t.diagonal??!1);let n=0;t.symmetry==="leftToRight"?n=1:t.symmetry==="rightToLeft"?n=2:t.symmetry==="topToBottom"?n=3:t.symmetry==="bottomToTop"?n=4:t.symmetry==="quadrant"&&(n=5),v[0]=f?1:0,v[1]=m?1:0,v[2]=b?1:0,v[3]=n;let H=e.renderer.getTemporaryBuffer(v),O=e.device.createBindGroup({layout:D,entries:[{binding:0,resource:{buffer:H}}]}),z=e.device.createBindGroup({layout:M,entries:[{binding:0,resource:x.createView()},{binding:1,resource:W}]}),L=e.renderer.getTemporaryTexture(G,F,[x,s,...i.excludeTextures||[]]),y=o.beginRenderPass({colorAttachments:[{view:L.createView(),loadOp:"clear",storeOp:"store",clearValue:{r:0,g:0,b:0,a:0}}]});y.setPipeline(V),y.setBindGroup(0,O),y.setBindGroup(1,z),y.draw(4),y.end();let R=e.renderer.beginFrame(o,g,{r:0,g:0,b:0,a:0},u,l,"load");e.renderer.drawTexture(R,L,{x:0,y:0,width:u,height:l},{opacity:t.opacity??1}),r.pass=R};var j=S({WebGPURenderer:B});export{j as a};
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import{a as A}from"./chunk-IMV5SBQV.mjs";import{d as P}from"./chunk-6YJP57MZ.mjs";import{e as S}from"./chunk-BVF64D6H.mjs";S();S();var C=new WeakMap,K=`
|
|
2
|
-
struct GradientStop {
|
|
3
|
-
pos : vec4<f32>,
|
|
4
|
-
col : vec4<f32>,
|
|
5
|
-
};
|
|
6
|
-
|
|
7
|
-
struct GradientMapUniforms {
|
|
8
|
-
numStops : f32,
|
|
9
|
-
isSmooth : f32,
|
|
10
|
-
dither : f32,
|
|
11
|
-
opacity : f32,
|
|
12
|
-
|
|
13
|
-
hasOpacitySig : f32,
|
|
14
|
-
pad0 : f32,
|
|
15
|
-
pad1 : f32,
|
|
16
|
-
pad2 : f32,
|
|
17
|
-
|
|
18
|
-
stops : array<GradientStop, 16>,
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
@group(0) @binding(0) var<uniform> u : GradientMapUniforms;
|
|
22
|
-
@group(1) @binding(0) var tex : texture_2d<f32>;
|
|
23
|
-
@group(1) @binding(1) var samp : sampler;
|
|
24
|
-
@group(2) @binding(0) var opacitySigTex : texture_2d<f32>;
|
|
25
|
-
@group(2) @binding(1) var signalSamp : sampler;
|
|
26
|
-
|
|
27
|
-
struct VSOut {
|
|
28
|
-
@builtin(position) pos : vec4<f32>,
|
|
29
|
-
@location(0) uv : vec2<f32>,
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
@vertex fn vs(@builtin(vertex_index) vi: u32) -> VSOut {
|
|
33
|
-
var pos = array<vec2<f32>, 4>(
|
|
34
|
-
vec2<f32>(-1.0, 1.0),
|
|
35
|
-
vec2<f32>(1.0, 1.0),
|
|
36
|
-
vec2<f32>(-1.0, -1.0),
|
|
37
|
-
vec2<f32>(1.0, -1.0)
|
|
38
|
-
);
|
|
39
|
-
var uv = array<vec2<f32>, 4>(
|
|
40
|
-
vec2<f32>(0.0, 0.0),
|
|
41
|
-
vec2<f32>(1.0, 0.0),
|
|
42
|
-
vec2<f32>(0.0, 1.0),
|
|
43
|
-
vec2<f32>(1.0, 1.0)
|
|
44
|
-
);
|
|
45
|
-
return VSOut(vec4<f32>(pos[vi], 0.0, 1.0), uv[vi]);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
fn ditherNoise(pos: vec2<f32>) -> f32 {
|
|
49
|
-
let p = fract(pos * vec2<f32>(0.1031, 0.1030));
|
|
50
|
-
let d = dot(p, p.yx + 33.33);
|
|
51
|
-
return fract((p.x + p.y) * d) - 0.5;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
@fragment fn fs(in : VSOut) -> @location(0) vec4<f32> {
|
|
55
|
-
let color = textureSampleLevel(tex, samp, in.uv, 0.0);
|
|
56
|
-
if (color.a <= 0.00001) {
|
|
57
|
-
return color;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
let alpha = color.a;
|
|
61
|
-
let rgb = color.rgb / max(alpha, 0.0001);
|
|
62
|
-
|
|
63
|
-
// ITU-R BT.709 Luminance
|
|
64
|
-
var lum = dot(rgb, vec3<f32>(0.2126, 0.7152, 0.0722));
|
|
65
|
-
|
|
66
|
-
if (u.dither > 0.5) {
|
|
67
|
-
let d = ditherNoise(in.pos.xy) * (1.0 / 255.0);
|
|
68
|
-
lum = clamp(lum + d, 0.0, 1.0);
|
|
69
|
-
} else {
|
|
70
|
-
lum = clamp(lum, 0.0, 1.0);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
let count = i32(clamp(u.numStops, 2.0, 16.0));
|
|
74
|
-
var gradColor = u.stops[0].col.rgb;
|
|
75
|
-
|
|
76
|
-
if (lum <= u.stops[0].pos.x) {
|
|
77
|
-
gradColor = u.stops[0].col.rgb;
|
|
78
|
-
} else if (lum >= u.stops[count - 1].pos.x) {
|
|
79
|
-
gradColor = u.stops[count - 1].col.rgb;
|
|
80
|
-
} else {
|
|
81
|
-
for (var i = 0; i < 15; i = i + 1) {
|
|
82
|
-
if (i >= count - 1) {
|
|
83
|
-
break;
|
|
84
|
-
}
|
|
85
|
-
let p0 = u.stops[i].pos.x;
|
|
86
|
-
let p1 = u.stops[i + 1].pos.x;
|
|
87
|
-
|
|
88
|
-
if (lum >= p0 && lum <= p1) {
|
|
89
|
-
let range = max(p1 - p0, 1e-5);
|
|
90
|
-
let t = clamp((lum - p0) / range, 0.0, 1.0);
|
|
91
|
-
if (u.isSmooth > 0.5) {
|
|
92
|
-
gradColor = mix(u.stops[i].col.rgb, u.stops[i + 1].col.rgb, t);
|
|
93
|
-
} else {
|
|
94
|
-
gradColor = u.stops[i].col.rgb;
|
|
95
|
-
}
|
|
96
|
-
break;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
var opacity = u.opacity;
|
|
102
|
-
if (u.hasOpacitySig > 0.5) {
|
|
103
|
-
opacity = textureSampleLevel(opacitySigTex, signalSamp, vec2<f32>(0.5, 0.5), 0.0).r;
|
|
104
|
-
}
|
|
105
|
-
opacity = clamp(opacity, 0.0, 1.0);
|
|
106
|
-
|
|
107
|
-
let finalRgb = mix(rgb, gradColor, opacity);
|
|
108
|
-
return vec4<f32>(finalRgb * alpha, alpha);
|
|
109
|
-
}
|
|
110
|
-
`;function Q(a,e){let i=C.get(a);if(i)return i;let g=a.createBindGroupLayout({label:"GradientMapUniformLayout",entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,buffer:{type:"uniform"}}]}),m=a.createBindGroupLayout({label:"GradientMapTextureLayout",entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),f=a.createBindGroupLayout({label:"GradientMapSignalLayout",entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),s=a.createShaderModule({label:"GradientMapShaderModule",code:K});return i={pipeline:a.createRenderPipeline({label:"GradientMapPipeline",layout:a.createPipelineLayout({bindGroupLayouts:[g,m,f]}),vertex:{module:s,entryPoint:"vs"},fragment:{module:s,entryPoint:"fs",targets:[{format:e}]},primitive:{topology:"triangle-strip"}}),uniformLayout:g,textureLayout:m,signalLayout:f},C.set(a,i),i}var t=new Float32Array(136),F=async a=>{let{ctx:e,encoder:i,pass:g,targetView:m,targetTexture:f,targetWidth:s,targetHeight:y,props:r,drawChild:E}=a,T=r.frame??0,R=r.fps||30,o=r.virtualMedia?.operation;if(o?.op!=="GradientMap"||!r.virtualMedia?.children?.[0])return;g.end();let L=r.virtualMedia.children[0],p=s,d=y,v=e.renderer.getTemporaryTexture(p,d,[...r.excludeTextures||[],f]),U=v.createView();e.renderer.beginFrame(i,U,{r:0,g:0,b:0,a:0},p,d,"clear").end(),e.renderer.pushScissor({x:0,y:0,width:p,height:d}),e.renderer.pushIdentity(),await E(L,{...r,virtualMedia:L},U,v,p,d),e.renderer.popTransform(),e.renderer.popScissor();let w=[...Array.isArray(o.stops)?o.stops:[{position:0,color:"#000000"},{position:1,color:"#ffffff"}]].sort((c,b)=>c.position-b.position),V=Math.min(Math.max(w.length,2),16),B=o.opacityHandleId,u=B?o.inputs?.[B]:null,G=!!(u?.connectionValid&&u.outputItem?.type==="Signal"),h=G?u?.outputItem?.data:null,D=Number(o.opacity??1);!G&&u?.connectionValid&&u.outputItem?.type==="Number"&&(D=Number(u.outputItem.data??1));let W=r.elapsedMs!==void 0?r.elapsedMs/1e3:T/R,_=r.virtualMedia?.metadata?.durationMs?r.virtualMedia.metadata.durationMs/1e3:r.durationMs!==void 0?r.durationMs/1e3:0,M;G&&h?M=P.getOrCreate2DTextureView(e.device,i,h.nodeId??"gradient_map_opacity",W,_,h,p,d,r.renderId,T,R):M=P.getDummy1x1TextureView(e.device),t.fill(0),t[0]=V,t[1]=o.smooth===!1?0:1,t[2]=o.dither===!1?0:1,t[3]=D,t[4]=G?1:0,t[5]=0,t[6]=0,t[7]=0;for(let c=0;c<16;c++){let b=w[Math.min(c,V-1)],n=8+c*8,x=A(b.color);t[n+0]=b.position,t[n+1]=0,t[n+2]=0,t[n+3]=0,t[n+4]=x.r,t[n+5]=x.g,t[n+6]=x.b,t[n+7]=x.a}let{pipeline:k,uniformLayout:H,textureLayout:j,signalLayout:q}=Q(e.device,e.renderer.format),I=e.renderer.samplerCache.getSampler(e.device),z=e.renderer.getTemporaryBuffer(t),O=e.renderer.getTemporaryTexture(p,d,[v,f,...r.excludeTextures||[]]),l=i.beginRenderPass({colorAttachments:[{view:O.createView(),loadOp:"clear",storeOp:"store",clearValue:{r:0,g:0,b:0,a:0}}]});l.setPipeline(k),l.setBindGroup(0,e.device.createBindGroup({layout:H,entries:[{binding:0,resource:{buffer:z}}]})),l.setBindGroup(1,e.renderer.bindGroupCache.getBindGroup(e.device,j,v,I)),l.setBindGroup(2,e.device.createBindGroup({layout:q,entries:[{binding:0,resource:M},{binding:1,resource:I}]})),l.draw(4),l.end();let N=e.renderer.beginFrame(i,m,{r:0,g:0,b:0,a:0},s,y,"load");e.renderer.drawTexture(N,O,{x:0,y:0,width:s,height:y},{opacity:r.opacity??1}),a.pass=N};var re={WebGPURenderer:F};export{F as a,re as b};
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
import{t as h}from"./chunk-ZNGOAGAI.mjs";import{e as v}from"./chunk-BVF64D6H.mjs";v();v();var j=new WeakMap,B=`
|
|
2
|
-
struct SelectiveColorUniforms {
|
|
3
|
-
reds : vec4<f32>,
|
|
4
|
-
yellows : vec4<f32>,
|
|
5
|
-
greens : vec4<f32>,
|
|
6
|
-
cyans : vec4<f32>,
|
|
7
|
-
blues : vec4<f32>,
|
|
8
|
-
magentas : vec4<f32>,
|
|
9
|
-
whites : vec4<f32>,
|
|
10
|
-
neutrals : vec4<f32>,
|
|
11
|
-
blacks : vec4<f32>,
|
|
12
|
-
method : f32,
|
|
13
|
-
pad0 : f32,
|
|
14
|
-
pad1 : f32,
|
|
15
|
-
pad2 : f32,
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
@group(0) @binding(0) var<uniform> u : SelectiveColorUniforms;
|
|
19
|
-
@group(1) @binding(0) var tex : texture_2d<f32>;
|
|
20
|
-
@group(1) @binding(1) var samp : sampler;
|
|
21
|
-
|
|
22
|
-
struct VSOut {
|
|
23
|
-
@builtin(position) pos : vec4<f32>,
|
|
24
|
-
@location(0) uv : vec2<f32>,
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
@vertex fn vs(@builtin(vertex_index) vi: u32) -> VSOut {
|
|
28
|
-
var pos = array<vec2<f32>, 4>(
|
|
29
|
-
vec2<f32>(-1.0, 1.0),
|
|
30
|
-
vec2<f32>(1.0, 1.0),
|
|
31
|
-
vec2<f32>(-1.0, -1.0),
|
|
32
|
-
vec2<f32>(1.0, -1.0)
|
|
33
|
-
);
|
|
34
|
-
var uv = array<vec2<f32>, 4>(
|
|
35
|
-
vec2<f32>(0.0, 0.0),
|
|
36
|
-
vec2<f32>(1.0, 0.0),
|
|
37
|
-
vec2<f32>(0.0, 1.0),
|
|
38
|
-
vec2<f32>(1.0, 1.0)
|
|
39
|
-
);
|
|
40
|
-
return VSOut(vec4<f32>(pos[vi], 0.0, 1.0), uv[vi]);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
fn calcAdjustment(cmy: vec3<f32>, adj: vec4<f32>, weight: f32, isAbsolute: bool) -> vec3<f32> {
|
|
44
|
-
if (weight <= 0.00001) {
|
|
45
|
-
return vec3<f32>(0.0);
|
|
46
|
-
}
|
|
47
|
-
let adjC = adj.x;
|
|
48
|
-
let adjM = adj.y;
|
|
49
|
-
let adjY = adj.z;
|
|
50
|
-
let adjK = adj.w;
|
|
51
|
-
|
|
52
|
-
if (isAbsolute) {
|
|
53
|
-
let cDelta = adjC + adjK * (1.0 + adjC);
|
|
54
|
-
let mDelta = adjM + adjK * (1.0 + adjM);
|
|
55
|
-
let yDelta = adjY + adjK * (1.0 + adjY);
|
|
56
|
-
return vec3<f32>(cDelta, mDelta, yDelta) * weight;
|
|
57
|
-
} else {
|
|
58
|
-
let cDelta = ((1.0 + adjK) * (1.0 + adjC) - 1.0) * cmy.x;
|
|
59
|
-
let mDelta = ((1.0 + adjK) * (1.0 + adjM) - 1.0) * cmy.y;
|
|
60
|
-
let yDelta = ((1.0 + adjK) * (1.0 + adjY) - 1.0) * cmy.z;
|
|
61
|
-
return vec3<f32>(cDelta, mDelta, yDelta) * weight;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
@fragment fn fs(in : VSOut) -> @location(0) vec4<f32> {
|
|
66
|
-
let color = textureSampleLevel(tex, samp, in.uv, 0.0);
|
|
67
|
-
if (color.a <= 0.00001) {
|
|
68
|
-
return color;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
let rgb = clamp(color.rgb / max(color.a, 0.00001), vec3<f32>(0.0), vec3<f32>(1.0));
|
|
72
|
-
let r = rgb.r;
|
|
73
|
-
let g = rgb.g;
|
|
74
|
-
let b = rgb.b;
|
|
75
|
-
|
|
76
|
-
let maxVal = max(r, max(g, b));
|
|
77
|
-
let minVal = min(r, min(g, b));
|
|
78
|
-
|
|
79
|
-
// Chromatic weights
|
|
80
|
-
let wRed = max(0.0, r - max(g, b));
|
|
81
|
-
let wYellow = max(0.0, min(r, g) - b);
|
|
82
|
-
let wGreen = max(0.0, g - max(r, b));
|
|
83
|
-
let wCyan = max(0.0, min(g, b) - r);
|
|
84
|
-
let wBlue = max(0.0, b - max(r, g));
|
|
85
|
-
let wMagenta = max(0.0, min(r, b) - g);
|
|
86
|
-
|
|
87
|
-
// Achromatic weights (Whites, Blacks, and true Midtone Neutrals)
|
|
88
|
-
let wWhite = max(0.0, (minVal - 0.5) * 2.0);
|
|
89
|
-
let wBlack = max(0.0, (0.5 - maxVal) * 2.0);
|
|
90
|
-
let wNeutral = max(0.0, 1.0 - (wRed + wYellow + wGreen + wCyan + wBlue + wMagenta + wWhite + wBlack));
|
|
91
|
-
|
|
92
|
-
let cmy = vec3<f32>(1.0 - r, 1.0 - g, 1.0 - b);
|
|
93
|
-
let isAbs = u.method > 0.5;
|
|
94
|
-
|
|
95
|
-
var totalDelta = vec3<f32>(0.0);
|
|
96
|
-
totalDelta += calcAdjustment(cmy, u.reds, wRed, isAbs);
|
|
97
|
-
totalDelta += calcAdjustment(cmy, u.yellows, wYellow, isAbs);
|
|
98
|
-
totalDelta += calcAdjustment(cmy, u.greens, wGreen, isAbs);
|
|
99
|
-
totalDelta += calcAdjustment(cmy, u.cyans, wCyan, isAbs);
|
|
100
|
-
totalDelta += calcAdjustment(cmy, u.blues, wBlue, isAbs);
|
|
101
|
-
totalDelta += calcAdjustment(cmy, u.magentas, wMagenta, isAbs);
|
|
102
|
-
totalDelta += calcAdjustment(cmy, u.whites, wWhite, isAbs);
|
|
103
|
-
totalDelta += calcAdjustment(cmy, u.neutrals, wNeutral, isAbs);
|
|
104
|
-
totalDelta += calcAdjustment(cmy, u.blacks, wBlack, isAbs);
|
|
105
|
-
|
|
106
|
-
let finalCMY = clamp(cmy + totalDelta, vec3<f32>(0.0), vec3<f32>(1.0));
|
|
107
|
-
let finalRGB = vec3<f32>(1.0 - finalCMY.x, 1.0 - finalCMY.y, 1.0 - finalCMY.z);
|
|
108
|
-
|
|
109
|
-
return vec4<f32>(finalRGB * color.a, color.a);
|
|
110
|
-
}
|
|
111
|
-
`;function T(t,e){let a=j.get(t);if(!a){let d=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,buffer:{type:"uniform"}}]}),m=t.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),o=t.createShaderModule({label:"selective-color.wgsl",code:B});a={pipeline:t.createRenderPipeline({label:"SelectiveColorPipeline",layout:t.createPipelineLayout({bindGroupLayouts:[d,m]}),vertex:{module:o,entryPoint:"vs"},fragment:{module:o,entryPoint:"fs",targets:[{format:e}]},primitive:{topology:"triangle-strip"}}),uniformLayout:d,textureLayout:m},j.set(t,a)}return a}function n(t,e,a){t[e+0]=(a?.cyan??0)/100,t[e+1]=(a?.magenta??0)/100,t[e+2]=(a?.yellow??0)/100,t[e+3]=(a?.black??0)/100}var r=new Float32Array(40),A=async t=>{let{ctx:e,encoder:a,pass:d,targetView:m,targetTexture:o,targetWidth:f,targetHeight:g,props:i,drawChild:G}=t,l=i.virtualMedia?.operation;if(l?.op!=="SelectiveColor"||!i.virtualMedia?.children?.[0])return;d.end();let y=i.virtualMedia.children[0],c=f,s=g,p=e.renderer.getTemporaryTexture(c,s,[...i.excludeTextures||[],o]),b=p.createView();e.renderer.beginFrame(a,b,{r:0,g:0,b:0,a:0},c,s,"clear").end(),e.renderer.pushScissor({x:0,y:0,width:c,height:s}),e.renderer.pushIdentity(),await G(y,{...i,virtualMedia:y},b,p,c,s),e.renderer.popTransform(),e.renderer.popScissor(),n(r,0,l.reds),n(r,4,l.yellows),n(r,8,l.greens),n(r,12,l.cyans),n(r,16,l.blues),n(r,20,l.magentas),n(r,24,l.whites),n(r,28,l.neutrals),n(r,32,l.blacks),r[36]=l.method==="Absolute"?1:0,r[37]=0,r[38]=0,r[39]=0;let{pipeline:C,uniformLayout:D,textureLayout:S}=T(e.device,e.renderer.format),P=e.renderer.samplerCache.getSampler(e.device),R=e.renderer.getTemporaryBuffer(r),w=e.renderer.getTemporaryTexture(c,s,[p,o,...i.excludeTextures||[]]),u=a.beginRenderPass({colorAttachments:[{view:w.createView(),loadOp:"clear",storeOp:"store",clearValue:{r:0,g:0,b:0,a:0}}]});u.setPipeline(C),u.setBindGroup(0,e.device.createBindGroup({layout:D,entries:[{binding:0,resource:{buffer:R}}]})),u.setBindGroup(1,e.renderer.bindGroupCache.getBindGroup(e.device,S,p,P)),u.draw(4),u.end();let x=e.renderer.beginFrame(a,m,{r:0,g:0,b:0,a:0},f,g,"load");e.renderer.drawTexture(x,w,{x:0,y:0,width:f,height:g},{opacity:i.opacity??1}),t.pass=x};var Y=h({WebGPURenderer:A});export{Y as a};
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import{t as I}from"./chunk-ZNGOAGAI.mjs";import{e as R}from"./chunk-BVF64D6H.mjs";R();R();var ie=e=>e*e,oe=e=>e*(2-e),se=e=>e<.5?2*e*e:-1+(4-2*e)*e,ae=e=>{let r=2*Math.PI/3;return e===0?0:e===1?1:2**(-10*e)*Math.sin((e*10-.75)*r)+1},ce=(e,r)=>{switch(r){case"ease-in":return ie(e);case"ease-out":return oe(e);case"ease-in-out":return se(e);case"spring":return ae(e);default:return e}},_=(e,r,i,s,o)=>{let n=o*o,t=n*o;return .5*(2*r+(-e+i)*o+(2*e-5*r+4*i-s)*n+(-e+3*r-3*i+s)*t)};function D(e,r,i="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 t=e[n],x=t.holdMs??0,l=t.durationMs??0;if(r<=s+x)return{x:t.x??50,y:t.y??50,scale:t.scale??1};if(s+=x,n<e.length-1&&l>0){if(r<=s+l){let v=(r-s)/l,u=ce(Math.max(0,Math.min(1,v)),t.easing),d=e[n+1];if(i==="spline"){let g=e[n-1]??t,f=e[n+2]??d;return{x:_(g.x??50,t.x??50,d.x??50,f.x??50,u),y:_(g.y??50,t.y??50,d.y??50,f.y??50,u),scale:_(g.scale??1,t.scale??1,d.scale??1,f.scale??1,u)}}return{x:(t.x??50)+((d.x??50)-(t.x??50))*u,y:(t.y??50)+((d.y??50)-(t.y??50))*u,scale:(t.scale??1)+((d.scale??1)-(t.scale??1))*u}}s+=l}}let o=e[e.length-1];return{x:o.x??50,y:o.y??50,scale:o.scale??1}}function E(e,r,i,s){let o=100,n=100;if(s!=="input"){let G=s.split(":"),p=Number(G[0]),b=Number(G[1]);if(!Number.isNaN(p)&&!Number.isNaN(b)&&p>0&&b>0){let a=p/b,c=r/i;c>a?(n=100,o=a/c*100):(o=100,n=c/a*100)}}let t=o/100*r,x=n/100*i,l=Math.max(e.scale,1),v=t/l,u=x/l,d=e.x/100*r,g=e.y/100*i,f=v/2,h=u/2,T=Math.max(f,Math.min(r-f,d)),S=Math.max(h,Math.min(i-h,g));return{x:T-f,y:S-h,width:v,height:u}}var ue=`
|
|
2
|
-
struct MotionBlurUniforms {
|
|
3
|
-
prev_origin : vec2<f32>,
|
|
4
|
-
prev_size : vec2<f32>,
|
|
5
|
-
curr_origin : vec2<f32>,
|
|
6
|
-
curr_size : vec2<f32>,
|
|
7
|
-
samples : f32,
|
|
8
|
-
blurSize : f32,
|
|
9
|
-
padding : vec2<f32>,
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
@group(0) @binding(0) var<uniform> u : MotionBlurUniforms;
|
|
13
|
-
@group(1) @binding(0) var tex : texture_2d<f32>;
|
|
14
|
-
@group(1) @binding(1) var samp : sampler;
|
|
15
|
-
|
|
16
|
-
struct VSOut {
|
|
17
|
-
@builtin(position) pos : vec4<f32>,
|
|
18
|
-
@location(0) uv : vec2<f32>,
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
@vertex fn vs(@builtin(vertex_index) vi: u32) -> VSOut {
|
|
22
|
-
var pos = array<vec2<f32>, 4>(
|
|
23
|
-
vec2<f32>(-1.0, 1.0),
|
|
24
|
-
vec2<f32>(1.0, 1.0),
|
|
25
|
-
vec2<f32>(-1.0, -1.0),
|
|
26
|
-
vec2<f32>(1.0, -1.0)
|
|
27
|
-
);
|
|
28
|
-
var uv = array<vec2<f32>, 4>(
|
|
29
|
-
vec2<f32>(0.0, 0.0),
|
|
30
|
-
vec2<f32>(1.0, 0.0),
|
|
31
|
-
vec2<f32>(0.0, 1.0),
|
|
32
|
-
vec2<f32>(1.0, 1.0)
|
|
33
|
-
);
|
|
34
|
-
return VSOut(vec4<f32>(pos[vi], 0.0, 1.0), uv[vi]);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
@fragment fn fs(in : VSOut) -> @location(0) vec4<f32> {
|
|
38
|
-
let uv = in.uv;
|
|
39
|
-
let n = i32(u.samples);
|
|
40
|
-
|
|
41
|
-
if (n <= 1) {
|
|
42
|
-
let p_curr = u.curr_origin + uv * u.curr_size;
|
|
43
|
-
return textureSampleLevel(tex, samp, p_curr, 0.0);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
var color = vec4<f32>(0.0);
|
|
47
|
-
for (var i = 0; i < n; i = i + 1) {
|
|
48
|
-
// Use blurSize to control the shutter interval width.
|
|
49
|
-
// t=1.0 is current frame, t=0.0 is previous frame.
|
|
50
|
-
let t = 1.0 + (f32(i) / f32(n - 1) - 0.5) * u.blurSize;
|
|
51
|
-
|
|
52
|
-
let origin = mix(u.prev_origin, u.curr_origin, t);
|
|
53
|
-
let size = mix(u.prev_size, u.curr_size, t);
|
|
54
|
-
let p_sample = origin + uv * size;
|
|
55
|
-
|
|
56
|
-
color += textureSampleLevel(tex, samp, p_sample, 0.0);
|
|
57
|
-
}
|
|
58
|
-
return color / f32(n);
|
|
59
|
-
}
|
|
60
|
-
`,C=new WeakMap,m=new Float32Array(12);function le(e,r){let i=C.get(e);if(!i){let s=e.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,buffer:{type:"uniform"}}]}),o=e.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),n=e.createShaderModule({label:"kenburns_motionblur.wgsl",code:ue});i={motionBlurPipeline:e.createRenderPipeline({label:"MotionBlurPipeline",layout:e.createPipelineLayout({bindGroupLayouts:[s,o]}),vertex:{module:n,entryPoint:"vs"},fragment:{module:n,entryPoint:"fs",targets:[{format:r}]},primitive:{topology:"triangle-strip"}}),motionBlurUniformLayout:s,singleTextureLayout:o},C.set(e,i)}return i}var X=async e=>{let{ctx:r,encoder:i,pass:s,targetView:o,targetTexture:n,targetWidth:t,targetHeight:x,props:l,drawChild:v}=e,{virtualMedia:u,containerWidth:d,containerHeight:g,frame:f,fps:h,trimStartOverride:T,opacity:S=1,inheritedSeekOffset:G=0}=l,p=u.operation;if(p?.op!=="KenBurns")return;let b=u.children?.[0];if(!b)return;let a=p.originalWidth??b.metadata?.width??u.metadata?.width??d??t,c=p.originalHeight??b.metadata?.height??u.metadata?.height??g??x,L=p.keyframes??[],W=p.movementStyle??"spline",N=p.aspectRatio||"input",Y=((T??0)+G)*1e3,z=Math.max(1,h??30),j=1e3/z,V=Y+(f??0)/z*1e3,q=V-j,J=D(L,V,W),Q=D(L,q,W),y=E(J,a,c,N),w=E(Q,a,c,N),K=d??t,O=g??x,F={x:0,y:0,width:K,height:O},B=r.renderer.getTemporaryTexture(a,c,[...l.excludeTextures||[],n]),H=B.createView();s.end(),r.renderer.beginFrame(i,H,{r:0,g:0,b:0,a:0},a,c,"clear").end(),r.renderer.pushScissor({x:0,y:0,width:a,height:c}),r.renderer.pushIdentity(),await v(b,{...l,containerWidth:a,containerHeight:c},H,B,a,c),r.renderer.popTransform(),r.renderer.popScissor();let A=p.motionBlurSize??1.5,M=null;if(A>0){let{motionBlurPipeline:Z,motionBlurUniformLayout:$,singleTextureLayout:k}=le(r.device,r.renderer.format),ee=r.renderer.samplerCache.getSampler(r.device);m[0]=w.x/a,m[1]=w.y/c,m[2]=w.width/a,m[3]=w.height/c,m[4]=y.x/a,m[5]=y.y/c,m[6]=y.width/a,m[7]=y.height/c,m[8]=12,m[9]=A;let re=r.renderer.getTemporaryBuffer(m);M=r.renderer.getTemporaryTexture(K,O,[n,B,...l.excludeTextures||[]]);let te=M.createView(),P=i.beginRenderPass({colorAttachments:[{view:te,loadOp:"clear",storeOp:"store",clearValue:{r:0,g:0,b:0,a:0}}]});P.setPipeline(Z),P.setBindGroup(0,r.device.createBindGroup({layout:$,entries:[{binding:0,resource:{buffer:re}}]})),P.setBindGroup(1,r.renderer.bindGroupCache.getBindGroup(r.device,k,B,ee)),P.draw(4),P.end()}let U=r.renderer.beginFrame(i,o,{r:0,g:0,b:0,a:0},t,x,"load");M?r.renderer.drawTexture(U,M,F,{opacity:S}):r.renderer.drawTextureRegion(U,B,y,F,{opacity:S}),e.pass=U};var ge=I({WebGPURenderer:X});export{ge as a};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as i}from"./chunk-IQKIHFNZ.mjs";import{e as n}from"./chunk-BVF64D6H.mjs";n();function o(e){if(e==null)return{r:0,g:0,b:0,a:0};if(typeof e!="string")return e;let t=e.trim();if(t.length===0)return{r:0,g:0,b:0,a:0};let r=i(t);return r?{r:r[0],g:r[1],b:r[2],a:r[3]}:{r:0,g:0,b:0,a:0}}export{o as a};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{e as l}from"./chunk-BVF64D6H.mjs";l();var m=class{samplers=new Map;lru=[];maxCapacity;constructor(a=32){this.maxCapacity=a}getSampler(a,e={}){let s=Math.max(1,Math.min(16,e.maxAnisotropy??4)),r=`${e.magFilter??"linear"}:${e.minFilter??"linear"}:${e.mipmapFilter??"linear"}:${e.addressModeU??"clamp-to-edge"}:${e.addressModeV??"clamp-to-edge"}:${s}`,i=this.samplers.get(r);if(i)this.lru=this.lru.filter(t=>t!==r);else{if(i=a.createSampler({magFilter:e.magFilter??"linear",minFilter:e.minFilter??"linear",mipmapFilter:e.mipmapFilter??"linear",addressModeU:e.addressModeU??"clamp-to-edge",addressModeV:e.addressModeV??"clamp-to-edge",maxAnisotropy:s}),this.samplers.size>=this.maxCapacity){let t=this.lru.pop();t&&this.samplers.delete(t)}this.samplers.set(r,i)}return this.lru.unshift(r),i}destroy(){this.samplers.clear(),this.lru=[]}};export{m as a};
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import{a as S}from"./chunk-EJGLUZMW.mjs";import{t as E}from"./chunk-ZNGOAGAI.mjs";import{d as D}from"./chunk-6YJP57MZ.mjs";import{e as G}from"./chunk-BVF64D6H.mjs";G();G();var k=`
|
|
2
|
-
struct LutUniforms {
|
|
3
|
-
intensity : f32,
|
|
4
|
-
lutSize : f32,
|
|
5
|
-
hasSignal : f32,
|
|
6
|
-
pad : f32,
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
@group(0) @binding(0) var<uniform> u : LutUniforms;
|
|
10
|
-
@group(1) @binding(0) var tex : texture_2d<f32>;
|
|
11
|
-
@group(1) @binding(1) var samp : sampler;
|
|
12
|
-
@group(2) @binding(0) var lutTex : texture_3d<f32>;
|
|
13
|
-
@group(2) @binding(1) var lutSamp : sampler;
|
|
14
|
-
@group(3) @binding(0) var signalTex : texture_2d<f32>;
|
|
15
|
-
@group(3) @binding(1) var signalSamp : sampler;
|
|
16
|
-
|
|
17
|
-
struct VSOut {
|
|
18
|
-
@builtin(position) pos : vec4<f32>,
|
|
19
|
-
@location(0) uv : vec2<f32>,
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
@vertex fn vs(@builtin(vertex_index) vi: u32) -> VSOut {
|
|
23
|
-
var pos = array<vec2<f32>, 4>(
|
|
24
|
-
vec2<f32>(-1.0, 1.0),
|
|
25
|
-
vec2<f32>(1.0, 1.0),
|
|
26
|
-
vec2<f32>(-1.0, -1.0),
|
|
27
|
-
vec2<f32>(1.0, -1.0)
|
|
28
|
-
);
|
|
29
|
-
var uv = array<vec2<f32>, 4>(
|
|
30
|
-
vec2<f32>(0.0, 0.0),
|
|
31
|
-
vec2<f32>(1.0, 0.0),
|
|
32
|
-
vec2<f32>(0.0, 1.0),
|
|
33
|
-
vec2<f32>(1.0, 1.0)
|
|
34
|
-
);
|
|
35
|
-
return VSOut(vec4<f32>(pos[vi], 0.0, 1.0), uv[vi]);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
@fragment fn fs(in : VSOut) -> @location(0) vec4<f32> {
|
|
39
|
-
let inputColor = textureSampleLevel(tex, samp, in.uv, 0.0);
|
|
40
|
-
|
|
41
|
-
// Coordinate adjustment to sample from texel centers
|
|
42
|
-
let uvw = inputColor.rgb * ((u.lutSize - 1.0) / u.lutSize) + vec3<f32>(0.5 / u.lutSize);
|
|
43
|
-
let mappedColor = textureSampleLevel(lutTex, lutSamp, uvw, 0.0);
|
|
44
|
-
|
|
45
|
-
var activeIntensity = u.intensity;
|
|
46
|
-
if (u.hasSignal > 0.5) {
|
|
47
|
-
activeIntensity = textureSampleLevel(signalTex, signalSamp, in.uv, 0.0).r;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
let finalRgb = inputColor.rgb + activeIntensity * (mappedColor.rgb - inputColor.rgb);
|
|
51
|
-
return vec4<f32>(finalRgb * inputColor.a, inputColor.a);
|
|
52
|
-
}
|
|
53
|
-
`,K=`
|
|
54
|
-
struct LutUniforms {
|
|
55
|
-
intensity : f32,
|
|
56
|
-
lutSize : f32,
|
|
57
|
-
hasSignal : f32,
|
|
58
|
-
pad : f32,
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
@group(0) @binding(0) var<uniform> u : LutUniforms;
|
|
62
|
-
@group(1) @binding(0) var tex : texture_2d<f32>;
|
|
63
|
-
@group(1) @binding(1) var samp : sampler;
|
|
64
|
-
@group(2) @binding(0) var lutTex : texture_1d<f32>;
|
|
65
|
-
@group(2) @binding(1) var lutSamp : sampler;
|
|
66
|
-
@group(3) @binding(0) var signalTex : texture_2d<f32>;
|
|
67
|
-
@group(3) @binding(1) var signalSamp : sampler;
|
|
68
|
-
|
|
69
|
-
struct VSOut {
|
|
70
|
-
@builtin(position) pos : vec4<f32>,
|
|
71
|
-
@location(0) uv : vec2<f32>,
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
@vertex fn vs(@builtin(vertex_index) vi: u32) -> VSOut {
|
|
75
|
-
var pos = array<vec2<f32>, 4>(
|
|
76
|
-
vec2<f32>(-1.0, 1.0),
|
|
77
|
-
vec2<f32>(1.0, 1.0),
|
|
78
|
-
vec2<f32>(-1.0, -1.0),
|
|
79
|
-
vec2<f32>(1.0, -1.0)
|
|
80
|
-
);
|
|
81
|
-
var uv = array<vec2<f32>, 4>(
|
|
82
|
-
vec2<f32>(0.0, 0.0),
|
|
83
|
-
vec2<f32>(1.0, 0.0),
|
|
84
|
-
vec2<f32>(0.0, 1.0),
|
|
85
|
-
vec2<f32>(1.0, 1.0)
|
|
86
|
-
);
|
|
87
|
-
return VSOut(vec4<f32>(pos[vi], 0.0, 1.0), uv[vi]);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
@fragment fn fs(in : VSOut) -> @location(0) vec4<f32> {
|
|
91
|
-
let inputColor = textureSampleLevel(tex, samp, in.uv, 0.0);
|
|
92
|
-
|
|
93
|
-
let rCoord = inputColor.r * ((u.lutSize - 1.0) / u.lutSize) + (0.5 / u.lutSize);
|
|
94
|
-
let gCoord = inputColor.g * ((u.lutSize - 1.0) / u.lutSize) + (0.5 / u.lutSize);
|
|
95
|
-
let bCoord = inputColor.b * ((u.lutSize - 1.0) / u.lutSize) + (0.5 / u.lutSize);
|
|
96
|
-
|
|
97
|
-
let mappedR = textureSampleLevel(lutTex, lutSamp, rCoord, 0.0).r;
|
|
98
|
-
let mappedG = textureSampleLevel(lutTex, lutSamp, gCoord, 0.0).g;
|
|
99
|
-
let mappedB = textureSampleLevel(lutTex, lutSamp, bCoord, 0.0).b;
|
|
100
|
-
|
|
101
|
-
var activeIntensity = u.intensity;
|
|
102
|
-
if (u.hasSignal > 0.5) {
|
|
103
|
-
activeIntensity = textureSampleLevel(signalTex, signalSamp, in.uv, 0.0).r;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
let finalRgb = inputColor.rgb + activeIntensity * (vec3<f32>(mappedR, mappedG, mappedB) - inputColor.rgb);
|
|
107
|
-
return vec4<f32>(finalRgb * inputColor.a, inputColor.a);
|
|
108
|
-
}
|
|
109
|
-
`,V=new WeakMap,T=new Float32Array(4);function q(i){let e=V.get(i);if(e)return e;let a=i.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,buffer:{type:"uniform"}}]}),n=i.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),d=i.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{viewDimension:"3d",sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),u=i.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{viewDimension:"1d",sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]}),o=i.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:"float"}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:"filtering"}}]});return e={lutUniformLayout:a,singleTextureLayout:n,lutTextureLayout3D:d,lutTextureLayout1D:u,signalTextureLayout:o,pipelineCache:new Map},V.set(i,e),e}function J(i,e,a){let n=q(i),d=`lut_${a}_${e}`,u=n.pipelineCache.get(d);if(!u){let o=a==="3D"?k:K,s=i.createShaderModule({label:`lut_${a.toLowerCase()}_${e}.wgsl`,code:o}),r=a==="3D"?n.lutTextureLayout3D:n.lutTextureLayout1D;u=i.createRenderPipeline({label:`LutPipeline_${a}_${e}`,layout:i.createPipelineLayout({bindGroupLayouts:[n.lutUniformLayout,n.singleTextureLayout,r,n.signalTextureLayout]}),vertex:{module:s,entryPoint:"vs"},fragment:{module:s,entryPoint:"fs",targets:[{format:e}]},primitive:{topology:"triangle-strip"}}),n.pipelineCache.set(d,u)}return{lutPipeline:u,lutUniformLayout:n.lutUniformLayout,singleTextureLayout:n.singleTextureLayout,lutTextureLayout:a==="3D"?n.lutTextureLayout3D:n.lutTextureLayout1D,signalTextureLayout:n.signalTextureLayout}}var I=async i=>{let{ctx:e,encoder:a,pass:n,targetView:d,targetTexture:u,targetWidth:o,targetHeight:s,props:r,drawChild:F}=i,R=r.frame??0,M=r.fps||30,l=r.virtualMedia?.operation;if(l?.op!=="ApplyLUT"||!l)return;let h=r.virtualMedia.children?.[0];if(!h)return;let c=l.lutUrl;if(!c)return;n.end();let f=o,y=s,v=l.intensityHandleId?l.inputs?.[l.intensityHandleId]:null,w=!!(v?.connectionValid&&v.outputItem?.type==="Signal"),x=w?v?.outputItem?.data:null,m=1,U=!1;w?x&&typeof x=="object"&&(m=Number(x.offset??1),U=!0):v?.connectionValid&&v.outputItem?.type==="Number"?m=Number(v.outputItem.data??1):m=Number(l.intensity??1),m=Math.max(0,Math.min(10,m));let p=S.get(c,e.device);if(!p){if((r.isHeadless??(typeof window>"u"||globalThis.__IS_HEADLESS_RENDERER__))||r.forceWait)try{p=await S.getOrLoad(c,e.device)}catch(t){!(t instanceof DOMException&&t.name==="AbortError")&&!(t&&typeof t=="object"&&"name"in t&&t.name==="AbortError")&&console.error("[ApplyLUT] Failed to load LUT synchronously:",t)}else S.getOrLoad(c,e.device).catch(t=>{t instanceof DOMException&&t.name==="AbortError"||t&&typeof t=="object"&&"name"in t&&t.name==="AbortError"||console.error("[ApplyLUT] Failed to load LUT in background:",t)});if(!p&&c.startsWith("runtime://lut/")){let t=c.substring(0,c.lastIndexOf("-")+1);t&&(p=S.getAnyMatching(t,e.device))}}let b=e.renderer.getTemporaryTexture(f,y,[...r.excludeTextures||[],u]),_=b.createView();if(e.renderer.beginFrame(a,_,{r:0,g:0,b:0,a:0},f,y,"clear").end(),e.renderer.pushScissor({x:0,y:0,width:f,height:y}),e.renderer.pushIdentity(),await F(h,{...r,virtualMedia:h},_,b,f,y),e.renderer.popTransform(),e.renderer.popScissor(),!p){let L=e.renderer.beginFrame(a,d,{r:0,g:0,b:0,a:0},o,s,"load");e.renderer.drawTexture(L,b,{x:0,y:0,width:o,height:s},{opacity:l.opacity??1}),i.pass=L;return}let{lutPipeline:N,lutUniformLayout:O,singleTextureLayout:z,lutTextureLayout:H,signalTextureLayout:W}=J(e.device,e.renderer.format,p.type),P=e.renderer.samplerCache.getSampler(e.device),A=e.renderer.getTemporaryTexture(f,y,[b,u,...r.excludeTextures||[]]),C;if(U){let L=r.elapsedMs!==void 0?r.elapsedMs/1e3:R/M,t=r.virtualMedia?.metadata?.durationMs?r.virtualMedia.metadata.durationMs/1e3:r.durationMs!==void 0?r.durationMs/1e3:0;C=D.getOrCreate2DTextureView(e.device,a,x.nodeId??"lut_intensity_sig",L,t,x,f,y,r.renderId,R,M)}else C=D.getDummy1x1TextureView(e.device);T[0]=m,T[1]=p.size,T[2]=U?1:0,T[3]=0;let $=e.renderer.getTemporaryBuffer(T),g=a.beginRenderPass({colorAttachments:[{view:A.createView(),loadOp:"clear",storeOp:"store",clearValue:{r:0,g:0,b:0,a:0}}]});g.setPipeline(N),g.setBindGroup(0,e.device.createBindGroup({layout:O,entries:[{binding:0,resource:{buffer:$}}]})),g.setBindGroup(1,e.renderer.bindGroupCache.getBindGroup(e.device,z,b,P)),g.setBindGroup(2,e.device.createBindGroup({layout:H,entries:[{binding:0,resource:p.texture.createView()},{binding:1,resource:P}]})),g.setBindGroup(3,e.device.createBindGroup({layout:W,entries:[{binding:0,resource:C},{binding:1,resource:P}]})),g.draw(4),g.end();let B=e.renderer.beginFrame(a,d,{r:0,g:0,b:0,a:0},o,s,"load");e.renderer.drawTexture(B,A,{x:0,y:0,width:o,height:s},{opacity:l.opacity??1}),i.pass=B};var re=E({WebGPURenderer:I});export{re as a};
|