tmg-media-player 0.0.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/LICENSE +21 -0
- package/README.md +38 -0
- package/dist/chunk-25AZZYCL.js +85 -0
- package/dist/chunk-25AZZYCL.js.map +1 -0
- package/dist/chunk-25IKIKAB.js +60 -0
- package/dist/chunk-25IKIKAB.js.map +1 -0
- package/dist/chunk-25ZZLGZ6.js +45 -0
- package/dist/chunk-25ZZLGZ6.js.map +1 -0
- package/dist/chunk-274C5J22.js +12 -0
- package/dist/chunk-274C5J22.js.map +1 -0
- package/dist/chunk-27FHLV4M.js +12 -0
- package/dist/chunk-27FHLV4M.js.map +1 -0
- package/dist/chunk-27MVVVJ7.js +405 -0
- package/dist/chunk-27MVVVJ7.js.map +1 -0
- package/dist/chunk-27SBY2N7.js +50 -0
- package/dist/chunk-27SBY2N7.js.map +1 -0
- package/dist/chunk-2J3FJY73.js +9 -0
- package/dist/chunk-2J3FJY73.js.map +1 -0
- package/dist/chunk-2JW4RYM4.js +170 -0
- package/dist/chunk-2JW4RYM4.js.map +1 -0
- package/dist/chunk-2PA7FU47.js +185 -0
- package/dist/chunk-2PA7FU47.js.map +1 -0
- package/dist/chunk-2VOAIUTU.js +9 -0
- package/dist/chunk-2VOAIUTU.js.map +1 -0
- package/dist/chunk-2W5XWGGE.js +7 -0
- package/dist/chunk-2W5XWGGE.js.map +1 -0
- package/dist/chunk-3C3GK24X.js +88 -0
- package/dist/chunk-3C3GK24X.js.map +1 -0
- package/dist/chunk-3KD22Z7D.js +9 -0
- package/dist/chunk-3KD22Z7D.js.map +1 -0
- package/dist/chunk-3OLEZVYI.js +196 -0
- package/dist/chunk-3OLEZVYI.js.map +1 -0
- package/dist/chunk-3OZEBWCF.js +12 -0
- package/dist/chunk-3OZEBWCF.js.map +1 -0
- package/dist/chunk-3T5CFCYB.js +45 -0
- package/dist/chunk-3T5CFCYB.js.map +1 -0
- package/dist/chunk-3VCTHGL6.js +86 -0
- package/dist/chunk-3VCTHGL6.js.map +1 -0
- package/dist/chunk-3WHPH6Q5.js +9 -0
- package/dist/chunk-3WHPH6Q5.js.map +1 -0
- package/dist/chunk-43MLKGCT.js +45 -0
- package/dist/chunk-43MLKGCT.js.map +1 -0
- package/dist/chunk-46QVDU2K.js +25 -0
- package/dist/chunk-46QVDU2K.js.map +1 -0
- package/dist/chunk-474PEQ33.js +78 -0
- package/dist/chunk-474PEQ33.js.map +1 -0
- package/dist/chunk-4FCGFO2J.js +9 -0
- package/dist/chunk-4FCGFO2J.js.map +1 -0
- package/dist/chunk-4JOPUUAL.js +185 -0
- package/dist/chunk-4JOPUUAL.js.map +1 -0
- package/dist/chunk-4QQXED6P.js +11 -0
- package/dist/chunk-4QQXED6P.js.map +1 -0
- package/dist/chunk-4VG5KHDO.js +52 -0
- package/dist/chunk-4VG5KHDO.js.map +1 -0
- package/dist/chunk-4W6H5CZF.js +1 -0
- package/dist/chunk-4W6H5CZF.js.map +1 -0
- package/dist/chunk-56CRICX7.js +154 -0
- package/dist/chunk-56CRICX7.js.map +1 -0
- package/dist/chunk-57L2PE3B.js +9 -0
- package/dist/chunk-57L2PE3B.js.map +1 -0
- package/dist/chunk-5CLVIO4N.js +33 -0
- package/dist/chunk-5CLVIO4N.js.map +1 -0
- package/dist/chunk-5GX67WSG.js +7 -0
- package/dist/chunk-5GX67WSG.js.map +1 -0
- package/dist/chunk-5SGNTRPL.js +47 -0
- package/dist/chunk-5SGNTRPL.js.map +1 -0
- package/dist/chunk-5TJURBKV.js +9 -0
- package/dist/chunk-5TJURBKV.js.map +1 -0
- package/dist/chunk-63E6JXTT.js +162 -0
- package/dist/chunk-63E6JXTT.js.map +1 -0
- package/dist/chunk-66HGOYPR.js +180 -0
- package/dist/chunk-66HGOYPR.js.map +1 -0
- package/dist/chunk-6IFGKHVM.js +9 -0
- package/dist/chunk-6IFGKHVM.js.map +1 -0
- package/dist/chunk-6K4HCMUL.js +32 -0
- package/dist/chunk-6K4HCMUL.js.map +1 -0
- package/dist/chunk-6KYXFWBF.js +32 -0
- package/dist/chunk-6KYXFWBF.js.map +1 -0
- package/dist/chunk-6R5BZZM6.js +95 -0
- package/dist/chunk-6R5BZZM6.js.map +1 -0
- package/dist/chunk-6S5BMP4A.js +9 -0
- package/dist/chunk-6S5BMP4A.js.map +1 -0
- package/dist/chunk-6SHHKTGD.js +73 -0
- package/dist/chunk-6SHHKTGD.js.map +1 -0
- package/dist/chunk-6U3M7V32.js +46 -0
- package/dist/chunk-6U3M7V32.js.map +1 -0
- package/dist/chunk-73XT2QVM.js +47 -0
- package/dist/chunk-73XT2QVM.js.map +1 -0
- package/dist/chunk-7FB3XGXR.js +471 -0
- package/dist/chunk-7FB3XGXR.js.map +1 -0
- package/dist/chunk-7HRR4LG4.js +115 -0
- package/dist/chunk-7HRR4LG4.js.map +1 -0
- package/dist/chunk-7I6DRKIN.js +58 -0
- package/dist/chunk-7I6DRKIN.js.map +1 -0
- package/dist/chunk-7MOZI57I.js +59 -0
- package/dist/chunk-7MOZI57I.js.map +1 -0
- package/dist/chunk-7PHLWSKV.js +95 -0
- package/dist/chunk-7PHLWSKV.js.map +1 -0
- package/dist/chunk-7Y4LQ5ED.js +45 -0
- package/dist/chunk-7Y4LQ5ED.js.map +1 -0
- package/dist/chunk-7YDZDHZH.js +19 -0
- package/dist/chunk-7YDZDHZH.js.map +1 -0
- package/dist/chunk-A7EG6K2X.js +54 -0
- package/dist/chunk-A7EG6K2X.js.map +1 -0
- package/dist/chunk-ABRBZ4IH.js +108 -0
- package/dist/chunk-ABRBZ4IH.js.map +1 -0
- package/dist/chunk-ACF6B245.js +17 -0
- package/dist/chunk-ACF6B245.js.map +1 -0
- package/dist/chunk-ACUUGJUG.js +53 -0
- package/dist/chunk-ACUUGJUG.js.map +1 -0
- package/dist/chunk-AIYSHJLG.js +42 -0
- package/dist/chunk-AIYSHJLG.js.map +1 -0
- package/dist/chunk-AKHJD2A3.js +50 -0
- package/dist/chunk-AKHJD2A3.js.map +1 -0
- package/dist/chunk-ATE4NMIF.js +22 -0
- package/dist/chunk-ATE4NMIF.js.map +1 -0
- package/dist/chunk-AZTSMVMN.js +138 -0
- package/dist/chunk-AZTSMVMN.js.map +1 -0
- package/dist/chunk-BFFQZMZX.js +108 -0
- package/dist/chunk-BFFQZMZX.js.map +1 -0
- package/dist/chunk-BKJRLSXA.js +329 -0
- package/dist/chunk-BKJRLSXA.js.map +1 -0
- package/dist/chunk-BLJDDFX2.js +228 -0
- package/dist/chunk-BLJDDFX2.js.map +1 -0
- package/dist/chunk-BROAUWON.js +123 -0
- package/dist/chunk-BROAUWON.js.map +1 -0
- package/dist/chunk-BU4AX4DA.js +49 -0
- package/dist/chunk-BU4AX4DA.js.map +1 -0
- package/dist/chunk-C2TANFKK.js +167 -0
- package/dist/chunk-C2TANFKK.js.map +1 -0
- package/dist/chunk-CAIDFMLB.js +164 -0
- package/dist/chunk-CAIDFMLB.js.map +1 -0
- package/dist/chunk-CCD3ZXIT.js +54 -0
- package/dist/chunk-CCD3ZXIT.js.map +1 -0
- package/dist/chunk-CEEX3HQ2.js +44 -0
- package/dist/chunk-CEEX3HQ2.js.map +1 -0
- package/dist/chunk-CIN7HWLH.js +26 -0
- package/dist/chunk-CIN7HWLH.js.map +1 -0
- package/dist/chunk-CL24QYM6.js +48 -0
- package/dist/chunk-CL24QYM6.js.map +1 -0
- package/dist/chunk-CTSPKWKN.js +9 -0
- package/dist/chunk-CTSPKWKN.js.map +1 -0
- package/dist/chunk-CYUYF57A.js +139 -0
- package/dist/chunk-CYUYF57A.js.map +1 -0
- package/dist/chunk-D5XNDZ4S.js +21 -0
- package/dist/chunk-D5XNDZ4S.js.map +1 -0
- package/dist/chunk-D7JQDN74.js +9 -0
- package/dist/chunk-D7JQDN74.js.map +1 -0
- package/dist/chunk-DKS7SZFN.js +165 -0
- package/dist/chunk-DKS7SZFN.js.map +1 -0
- package/dist/chunk-DM4ZIS4L.js +50 -0
- package/dist/chunk-DM4ZIS4L.js.map +1 -0
- package/dist/chunk-DNY72SCR.js +9 -0
- package/dist/chunk-DNY72SCR.js.map +1 -0
- package/dist/chunk-DQLWWVM3.js +25 -0
- package/dist/chunk-DQLWWVM3.js.map +1 -0
- package/dist/chunk-E56H3EOR.js +1 -0
- package/dist/chunk-E56H3EOR.js.map +1 -0
- package/dist/chunk-E56PSUT2.js +435 -0
- package/dist/chunk-E56PSUT2.js.map +1 -0
- package/dist/chunk-EF7RQIJK.js +9 -0
- package/dist/chunk-EF7RQIJK.js.map +1 -0
- package/dist/chunk-EHQJNRJV.js +449 -0
- package/dist/chunk-EHQJNRJV.js.map +1 -0
- package/dist/chunk-EIT6CZXJ.js +50 -0
- package/dist/chunk-EIT6CZXJ.js.map +1 -0
- package/dist/chunk-ERPQNMED.js +292 -0
- package/dist/chunk-ERPQNMED.js.map +1 -0
- package/dist/chunk-ESAOH6X5.js +15 -0
- package/dist/chunk-ESAOH6X5.js.map +1 -0
- package/dist/chunk-ESNKONBW.js +80 -0
- package/dist/chunk-ESNKONBW.js.map +1 -0
- package/dist/chunk-EUQ7SC5J.js +33 -0
- package/dist/chunk-EUQ7SC5J.js.map +1 -0
- package/dist/chunk-EUX3RZ3L.js +66 -0
- package/dist/chunk-EUX3RZ3L.js.map +1 -0
- package/dist/chunk-EVUTNLHC.js +7 -0
- package/dist/chunk-EVUTNLHC.js.map +1 -0
- package/dist/chunk-EY7PB3LA.js +59 -0
- package/dist/chunk-EY7PB3LA.js.map +1 -0
- package/dist/chunk-FCQDAU2C.js +7 -0
- package/dist/chunk-FCQDAU2C.js.map +1 -0
- package/dist/chunk-FHL5Z6MX.js +13 -0
- package/dist/chunk-FHL5Z6MX.js.map +1 -0
- package/dist/chunk-FIUVWAAQ.js +35 -0
- package/dist/chunk-FIUVWAAQ.js.map +1 -0
- package/dist/chunk-FN32KVQT.js +188 -0
- package/dist/chunk-FN32KVQT.js.map +1 -0
- package/dist/chunk-FX3UTAZK.js +31 -0
- package/dist/chunk-FX3UTAZK.js.map +1 -0
- package/dist/chunk-FXIL7BGP.js +43 -0
- package/dist/chunk-FXIL7BGP.js.map +1 -0
- package/dist/chunk-G7KANQFO.js +131 -0
- package/dist/chunk-G7KANQFO.js.map +1 -0
- package/dist/chunk-GDC7I2CJ.js +66 -0
- package/dist/chunk-GDC7I2CJ.js.map +1 -0
- package/dist/chunk-GM7YMURS.js +14 -0
- package/dist/chunk-GM7YMURS.js.map +1 -0
- package/dist/chunk-GQ7ITX5B.js +7 -0
- package/dist/chunk-GQ7ITX5B.js.map +1 -0
- package/dist/chunk-GSKI4IRL.js +34 -0
- package/dist/chunk-GSKI4IRL.js.map +1 -0
- package/dist/chunk-GUIBL2MZ.js +1 -0
- package/dist/chunk-GUIBL2MZ.js.map +1 -0
- package/dist/chunk-H24E5FRE.js +9 -0
- package/dist/chunk-H24E5FRE.js.map +1 -0
- package/dist/chunk-HA2GK6KH.js +9 -0
- package/dist/chunk-HA2GK6KH.js.map +1 -0
- package/dist/chunk-HCSCY6DU.js +458 -0
- package/dist/chunk-HCSCY6DU.js.map +1 -0
- package/dist/chunk-HGXGXW2U.js +26 -0
- package/dist/chunk-HGXGXW2U.js.map +1 -0
- package/dist/chunk-HH7PMFLU.js +33 -0
- package/dist/chunk-HH7PMFLU.js.map +1 -0
- package/dist/chunk-HJORMYPQ.js +66 -0
- package/dist/chunk-HJORMYPQ.js.map +1 -0
- package/dist/chunk-HN2UT66M.js +9 -0
- package/dist/chunk-HN2UT66M.js.map +1 -0
- package/dist/chunk-HNPBSC2A.js +132 -0
- package/dist/chunk-HNPBSC2A.js.map +1 -0
- package/dist/chunk-HNTARWVL.js +57 -0
- package/dist/chunk-HNTARWVL.js.map +1 -0
- package/dist/chunk-HPPHGUTD.js +1 -0
- package/dist/chunk-HPPHGUTD.js.map +1 -0
- package/dist/chunk-HPWORM77.js +199 -0
- package/dist/chunk-HPWORM77.js.map +1 -0
- package/dist/chunk-HYG6W442.js +66 -0
- package/dist/chunk-HYG6W442.js.map +1 -0
- package/dist/chunk-I3LBJOUW.js +249 -0
- package/dist/chunk-I3LBJOUW.js.map +1 -0
- package/dist/chunk-I47VPMZS.js +40 -0
- package/dist/chunk-I47VPMZS.js.map +1 -0
- package/dist/chunk-ID72UAJE.js +7 -0
- package/dist/chunk-ID72UAJE.js.map +1 -0
- package/dist/chunk-IENUYESB.js +33 -0
- package/dist/chunk-IENUYESB.js.map +1 -0
- package/dist/chunk-IFYBKLFH.js +15 -0
- package/dist/chunk-IFYBKLFH.js.map +1 -0
- package/dist/chunk-IJJ4F6HI.js +105 -0
- package/dist/chunk-IJJ4F6HI.js.map +1 -0
- package/dist/chunk-IKKQYZNA.js +43 -0
- package/dist/chunk-IKKQYZNA.js.map +1 -0
- package/dist/chunk-IUS3FRXS.js +446 -0
- package/dist/chunk-IUS3FRXS.js.map +1 -0
- package/dist/chunk-IVA7LFT2.js +12 -0
- package/dist/chunk-IVA7LFT2.js.map +1 -0
- package/dist/chunk-IXLSSEE7.js +39 -0
- package/dist/chunk-IXLSSEE7.js.map +1 -0
- package/dist/chunk-J2SIL62L.js +142 -0
- package/dist/chunk-J2SIL62L.js.map +1 -0
- package/dist/chunk-J54J2AED.js +117 -0
- package/dist/chunk-J54J2AED.js.map +1 -0
- package/dist/chunk-JFWYJV3J.js +61 -0
- package/dist/chunk-JFWYJV3J.js.map +1 -0
- package/dist/chunk-JP5X5JDL.js +10 -0
- package/dist/chunk-JP5X5JDL.js.map +1 -0
- package/dist/chunk-JPWNE7JO.js +11 -0
- package/dist/chunk-JPWNE7JO.js.map +1 -0
- package/dist/chunk-JRWYWTTT.js +9 -0
- package/dist/chunk-JRWYWTTT.js.map +1 -0
- package/dist/chunk-JZXJAJNW.js +316 -0
- package/dist/chunk-JZXJAJNW.js.map +1 -0
- package/dist/chunk-K4UHBEDT.js +9 -0
- package/dist/chunk-K4UHBEDT.js.map +1 -0
- package/dist/chunk-K7AAKFQF.js +12 -0
- package/dist/chunk-K7AAKFQF.js.map +1 -0
- package/dist/chunk-KD3OBG25.js +15 -0
- package/dist/chunk-KD3OBG25.js.map +1 -0
- package/dist/chunk-KJ74PGBI.js +45 -0
- package/dist/chunk-KJ74PGBI.js.map +1 -0
- package/dist/chunk-KLAI7YSD.js +7 -0
- package/dist/chunk-KLAI7YSD.js.map +1 -0
- package/dist/chunk-KMENKVHP.js +110 -0
- package/dist/chunk-KMENKVHP.js.map +1 -0
- package/dist/chunk-KOAHN3L5.js +9 -0
- package/dist/chunk-KOAHN3L5.js.map +1 -0
- package/dist/chunk-KQXT3GDF.js +16 -0
- package/dist/chunk-KQXT3GDF.js.map +1 -0
- package/dist/chunk-L6J66EOL.js +44 -0
- package/dist/chunk-L6J66EOL.js.map +1 -0
- package/dist/chunk-LNUYM3ZX.js +26 -0
- package/dist/chunk-LNUYM3ZX.js.map +1 -0
- package/dist/chunk-LSKNTXY2.js +57 -0
- package/dist/chunk-LSKNTXY2.js.map +1 -0
- package/dist/chunk-LTEL7NEG.js +219 -0
- package/dist/chunk-LTEL7NEG.js.map +1 -0
- package/dist/chunk-LTVS74EO.js +45 -0
- package/dist/chunk-LTVS74EO.js.map +1 -0
- package/dist/chunk-LVDP2QOX.js +99 -0
- package/dist/chunk-LVDP2QOX.js.map +1 -0
- package/dist/chunk-LWLNQS3O.js +569 -0
- package/dist/chunk-LWLNQS3O.js.map +1 -0
- package/dist/chunk-LYKZAKVN.js +19 -0
- package/dist/chunk-LYKZAKVN.js.map +1 -0
- package/dist/chunk-M2NVOKGL.js +97 -0
- package/dist/chunk-M2NVOKGL.js.map +1 -0
- package/dist/chunk-M3UOD7TX.js +427 -0
- package/dist/chunk-M3UOD7TX.js.map +1 -0
- package/dist/chunk-M5C4XQO2.js +45 -0
- package/dist/chunk-M5C4XQO2.js.map +1 -0
- package/dist/chunk-M5DFGJF7.js +10 -0
- package/dist/chunk-M5DFGJF7.js.map +1 -0
- package/dist/chunk-MAXX5M6N.js +9 -0
- package/dist/chunk-MAXX5M6N.js.map +1 -0
- package/dist/chunk-MEAGFRLE.js +37 -0
- package/dist/chunk-MEAGFRLE.js.map +1 -0
- package/dist/chunk-MFYNCWAO.js +25 -0
- package/dist/chunk-MFYNCWAO.js.map +1 -0
- package/dist/chunk-MJ26PFRF.js +12 -0
- package/dist/chunk-MJ26PFRF.js.map +1 -0
- package/dist/chunk-MP2GRDUX.js +10 -0
- package/dist/chunk-MP2GRDUX.js.map +1 -0
- package/dist/chunk-MTQLUS5O.js +51 -0
- package/dist/chunk-MTQLUS5O.js.map +1 -0
- package/dist/chunk-MUDO3ZPJ.js +10 -0
- package/dist/chunk-MUDO3ZPJ.js.map +1 -0
- package/dist/chunk-N2Q3TZXW.js +9 -0
- package/dist/chunk-N2Q3TZXW.js.map +1 -0
- package/dist/chunk-N52KK6K5.js +48 -0
- package/dist/chunk-N52KK6K5.js.map +1 -0
- package/dist/chunk-N5F2YHLD.js +28 -0
- package/dist/chunk-N5F2YHLD.js.map +1 -0
- package/dist/chunk-NGX5YDCB.js +7 -0
- package/dist/chunk-NGX5YDCB.js.map +1 -0
- package/dist/chunk-NHDRXRXA.js +33 -0
- package/dist/chunk-NHDRXRXA.js.map +1 -0
- package/dist/chunk-NPK5ITEG.js +7 -0
- package/dist/chunk-NPK5ITEG.js.map +1 -0
- package/dist/chunk-NPTM6BGC.js +15 -0
- package/dist/chunk-NPTM6BGC.js.map +1 -0
- package/dist/chunk-NTNVW4BG.js +7 -0
- package/dist/chunk-NTNVW4BG.js.map +1 -0
- package/dist/chunk-OBASYXH2.js +26 -0
- package/dist/chunk-OBASYXH2.js.map +1 -0
- package/dist/chunk-OBQNTU5F.js +7 -0
- package/dist/chunk-OBQNTU5F.js.map +1 -0
- package/dist/chunk-OEHNS7YX.js +7 -0
- package/dist/chunk-OEHNS7YX.js.map +1 -0
- package/dist/chunk-OJAUFHEW.js +107 -0
- package/dist/chunk-OJAUFHEW.js.map +1 -0
- package/dist/chunk-ONW4BD2Z.js +38 -0
- package/dist/chunk-ONW4BD2Z.js.map +1 -0
- package/dist/chunk-OOXUZMZ7.js +9 -0
- package/dist/chunk-OOXUZMZ7.js.map +1 -0
- package/dist/chunk-OP3PIADD.js +45 -0
- package/dist/chunk-OP3PIADD.js.map +1 -0
- package/dist/chunk-OSDM6ZVT.js +7 -0
- package/dist/chunk-OSDM6ZVT.js.map +1 -0
- package/dist/chunk-OZEEIRCS.js +9 -0
- package/dist/chunk-OZEEIRCS.js.map +1 -0
- package/dist/chunk-PGSBJUJ4.js +9 -0
- package/dist/chunk-PGSBJUJ4.js.map +1 -0
- package/dist/chunk-PPIDZONA.js +38 -0
- package/dist/chunk-PPIDZONA.js.map +1 -0
- package/dist/chunk-PTMZQ7E3.js +7 -0
- package/dist/chunk-PTMZQ7E3.js.map +1 -0
- package/dist/chunk-PV24XKW2.js +11 -0
- package/dist/chunk-PV24XKW2.js.map +1 -0
- package/dist/chunk-PXU563OY.js +26 -0
- package/dist/chunk-PXU563OY.js.map +1 -0
- package/dist/chunk-Q2XYS26I.js +11 -0
- package/dist/chunk-Q2XYS26I.js.map +1 -0
- package/dist/chunk-Q5NG3DY7.js +31 -0
- package/dist/chunk-Q5NG3DY7.js.map +1 -0
- package/dist/chunk-QADXAWA6.js +71 -0
- package/dist/chunk-QADXAWA6.js.map +1 -0
- package/dist/chunk-QG2FZCJ6.js +7 -0
- package/dist/chunk-QG2FZCJ6.js.map +1 -0
- package/dist/chunk-QMLGJPHC.js +7 -0
- package/dist/chunk-QMLGJPHC.js.map +1 -0
- package/dist/chunk-QQKXAEXW.js +50 -0
- package/dist/chunk-QQKXAEXW.js.map +1 -0
- package/dist/chunk-QS3C4KCF.js +95 -0
- package/dist/chunk-QS3C4KCF.js.map +1 -0
- package/dist/chunk-R4HNE7TL.js +7 -0
- package/dist/chunk-R4HNE7TL.js.map +1 -0
- package/dist/chunk-R5PBXGKK.js +10 -0
- package/dist/chunk-R5PBXGKK.js.map +1 -0
- package/dist/chunk-RFQXCN62.js +13 -0
- package/dist/chunk-RFQXCN62.js.map +1 -0
- package/dist/chunk-RGPGW4ZJ.js +9 -0
- package/dist/chunk-RGPGW4ZJ.js.map +1 -0
- package/dist/chunk-RKBRRJY6.js +9 -0
- package/dist/chunk-RKBRRJY6.js.map +1 -0
- package/dist/chunk-RM6NFJ7V.js +32 -0
- package/dist/chunk-RM6NFJ7V.js.map +1 -0
- package/dist/chunk-RRYAXULQ.js +48 -0
- package/dist/chunk-RRYAXULQ.js.map +1 -0
- package/dist/chunk-RS4W2FAL.js +89 -0
- package/dist/chunk-RS4W2FAL.js.map +1 -0
- package/dist/chunk-RSUFDTAH.js +110 -0
- package/dist/chunk-RSUFDTAH.js.map +1 -0
- package/dist/chunk-S2XKXJNC.js +30 -0
- package/dist/chunk-S2XKXJNC.js.map +1 -0
- package/dist/chunk-S4NKJDRC.js +79 -0
- package/dist/chunk-S4NKJDRC.js.map +1 -0
- package/dist/chunk-S7QGB2FC.js +27 -0
- package/dist/chunk-S7QGB2FC.js.map +1 -0
- package/dist/chunk-SCL4FW6F.js +425 -0
- package/dist/chunk-SCL4FW6F.js.map +1 -0
- package/dist/chunk-SITF6GNM.js +7 -0
- package/dist/chunk-SITF6GNM.js.map +1 -0
- package/dist/chunk-SPCINICO.js +5 -0
- package/dist/chunk-SPCINICO.js.map +1 -0
- package/dist/chunk-SPOTTHMN.js +24 -0
- package/dist/chunk-SPOTTHMN.js.map +1 -0
- package/dist/chunk-SWYNIQHD.js +77 -0
- package/dist/chunk-SWYNIQHD.js.map +1 -0
- package/dist/chunk-SXXITYPP.js +69 -0
- package/dist/chunk-SXXITYPP.js.map +1 -0
- package/dist/chunk-T4YZKI3Y.js +133 -0
- package/dist/chunk-T4YZKI3Y.js.map +1 -0
- package/dist/chunk-T7AIKZ6A.js +44 -0
- package/dist/chunk-T7AIKZ6A.js.map +1 -0
- package/dist/chunk-T7EX6RI2.js +34 -0
- package/dist/chunk-T7EX6RI2.js.map +1 -0
- package/dist/chunk-TB3GE2MH.js +93 -0
- package/dist/chunk-TB3GE2MH.js.map +1 -0
- package/dist/chunk-TE4JFCHB.js +52 -0
- package/dist/chunk-TE4JFCHB.js.map +1 -0
- package/dist/chunk-TGQYCEFL.js +37 -0
- package/dist/chunk-TGQYCEFL.js.map +1 -0
- package/dist/chunk-TMTWPBFD.js +10 -0
- package/dist/chunk-TMTWPBFD.js.map +1 -0
- package/dist/chunk-TSAEQFDM.js +65 -0
- package/dist/chunk-TSAEQFDM.js.map +1 -0
- package/dist/chunk-U3FX24C6.js +1 -0
- package/dist/chunk-U3FX24C6.js.map +1 -0
- package/dist/chunk-U776U22S.js +45 -0
- package/dist/chunk-U776U22S.js.map +1 -0
- package/dist/chunk-UCBDCGYX.js +9 -0
- package/dist/chunk-UCBDCGYX.js.map +1 -0
- package/dist/chunk-UGNYASFC.js +59 -0
- package/dist/chunk-UGNYASFC.js.map +1 -0
- package/dist/chunk-UJTVBENE.js +7 -0
- package/dist/chunk-UJTVBENE.js.map +1 -0
- package/dist/chunk-UKVFVAOO.js +75 -0
- package/dist/chunk-UKVFVAOO.js.map +1 -0
- package/dist/chunk-URKWHZXA.js +25 -0
- package/dist/chunk-URKWHZXA.js.map +1 -0
- package/dist/chunk-UVKRO5ER.js +13 -0
- package/dist/chunk-UVKRO5ER.js.map +1 -0
- package/dist/chunk-V3D7FBSR.js +14 -0
- package/dist/chunk-V3D7FBSR.js.map +1 -0
- package/dist/chunk-VCVMCKZI.js +10 -0
- package/dist/chunk-VCVMCKZI.js.map +1 -0
- package/dist/chunk-VNGMGQF5.js +1 -0
- package/dist/chunk-VNGMGQF5.js.map +1 -0
- package/dist/chunk-VSK7766S.js +163 -0
- package/dist/chunk-VSK7766S.js.map +1 -0
- package/dist/chunk-VZLDFZC7.js +241 -0
- package/dist/chunk-VZLDFZC7.js.map +1 -0
- package/dist/chunk-W2KUESDN.js +25 -0
- package/dist/chunk-W2KUESDN.js.map +1 -0
- package/dist/chunk-W2SHHRYX.js +420 -0
- package/dist/chunk-W2SHHRYX.js.map +1 -0
- package/dist/chunk-WBLZ5GBM.js +158 -0
- package/dist/chunk-WBLZ5GBM.js.map +1 -0
- package/dist/chunk-WODJ2VQH.js +41 -0
- package/dist/chunk-WODJ2VQH.js.map +1 -0
- package/dist/chunk-WQXLL5IV.js +9 -0
- package/dist/chunk-WQXLL5IV.js.map +1 -0
- package/dist/chunk-WR3327CL.js +89 -0
- package/dist/chunk-WR3327CL.js.map +1 -0
- package/dist/chunk-WSBH5QD6.js +309 -0
- package/dist/chunk-WSBH5QD6.js.map +1 -0
- package/dist/chunk-WTHHXWQM.js +7 -0
- package/dist/chunk-WTHHXWQM.js.map +1 -0
- package/dist/chunk-WW56NFQS.js +7 -0
- package/dist/chunk-WW56NFQS.js.map +1 -0
- package/dist/chunk-WYVXNXZI.js +73 -0
- package/dist/chunk-WYVXNXZI.js.map +1 -0
- package/dist/chunk-X3MYMAS2.js +56 -0
- package/dist/chunk-X3MYMAS2.js.map +1 -0
- package/dist/chunk-X7CDYCQF.js +22 -0
- package/dist/chunk-X7CDYCQF.js.map +1 -0
- package/dist/chunk-XGVDXMS3.js +90 -0
- package/dist/chunk-XGVDXMS3.js.map +1 -0
- package/dist/chunk-XHXIXEGS.js +7 -0
- package/dist/chunk-XHXIXEGS.js.map +1 -0
- package/dist/chunk-XJ6HO3WP.js +46 -0
- package/dist/chunk-XJ6HO3WP.js.map +1 -0
- package/dist/chunk-XMR6HHTA.js +59 -0
- package/dist/chunk-XMR6HHTA.js.map +1 -0
- package/dist/chunk-XR2KBJIP.js +54 -0
- package/dist/chunk-XR2KBJIP.js.map +1 -0
- package/dist/chunk-XVN5W3A7.js +50 -0
- package/dist/chunk-XVN5W3A7.js.map +1 -0
- package/dist/chunk-XXYOJDOZ.js +11 -0
- package/dist/chunk-XXYOJDOZ.js.map +1 -0
- package/dist/chunk-XZROR7RJ.js +25 -0
- package/dist/chunk-XZROR7RJ.js.map +1 -0
- package/dist/chunk-YF3LWJL4.js +7 -0
- package/dist/chunk-YF3LWJL4.js.map +1 -0
- package/dist/chunk-YFM4P3Z3.js +309 -0
- package/dist/chunk-YFM4P3Z3.js.map +1 -0
- package/dist/chunk-YFVOBSKP.js +52 -0
- package/dist/chunk-YFVOBSKP.js.map +1 -0
- package/dist/chunk-YFZW72PC.js +45 -0
- package/dist/chunk-YFZW72PC.js.map +1 -0
- package/dist/chunk-YHTCXXEG.js +9 -0
- package/dist/chunk-YHTCXXEG.js.map +1 -0
- package/dist/chunk-YJVUJ6AA.js +93 -0
- package/dist/chunk-YJVUJ6AA.js.map +1 -0
- package/dist/chunk-YKB67FZ5.js +46 -0
- package/dist/chunk-YKB67FZ5.js.map +1 -0
- package/dist/chunk-YS2PK7QA.js +35 -0
- package/dist/chunk-YS2PK7QA.js.map +1 -0
- package/dist/chunk-YURDFQ6X.js +33 -0
- package/dist/chunk-YURDFQ6X.js.map +1 -0
- package/dist/chunk-YVCKIDL5.js +61 -0
- package/dist/chunk-YVCKIDL5.js.map +1 -0
- package/dist/chunk-YXO6NQ4E.js +49 -0
- package/dist/chunk-YXO6NQ4E.js.map +1 -0
- package/dist/chunk-Z2AEG3J7.js +53 -0
- package/dist/chunk-Z2AEG3J7.js.map +1 -0
- package/dist/chunk-Z4I2MQ7B.js +26 -0
- package/dist/chunk-Z4I2MQ7B.js.map +1 -0
- package/dist/chunk-ZBPKZKIJ.js +25 -0
- package/dist/chunk-ZBPKZKIJ.js.map +1 -0
- package/dist/chunk-ZCMJVQ6P.js +10 -0
- package/dist/chunk-ZCMJVQ6P.js.map +1 -0
- package/dist/chunk-ZCQ5UWVE.js +27 -0
- package/dist/chunk-ZCQ5UWVE.js.map +1 -0
- package/dist/chunk-ZFCTBLWX.js +12 -0
- package/dist/chunk-ZFCTBLWX.js.map +1 -0
- package/dist/chunk-ZJ6KVLUS.js +296 -0
- package/dist/chunk-ZJ6KVLUS.js.map +1 -0
- package/dist/chunk-ZRCFHUS4.js +37 -0
- package/dist/chunk-ZRCFHUS4.js.map +1 -0
- package/dist/chunk-ZSB6HGB5.js +50 -0
- package/dist/chunk-ZSB6HGB5.js.map +1 -0
- package/dist/chunk-ZSG6ROJA.js +45 -0
- package/dist/chunk-ZSG6ROJA.js.map +1 -0
- package/dist/chunk-ZSQIEOQO.js +61 -0
- package/dist/chunk-ZSQIEOQO.js.map +1 -0
- package/dist/chunk-ZTMXXISI.js +158 -0
- package/dist/chunk-ZTMXXISI.js.map +1 -0
- package/dist/chunk-ZUMPSWHW.js +138 -0
- package/dist/chunk-ZUMPSWHW.js.map +1 -0
- package/dist/chunk-ZUYSQ37E.js +88 -0
- package/dist/chunk-ZUYSQ37E.js.map +1 -0
- package/dist/components/base/index.cjs +156 -0
- package/dist/components/base/index.cjs.map +1 -0
- package/dist/components/base/index.js +15 -0
- package/dist/components/base/index.js.map +1 -0
- package/dist/components/base/types.cjs +19 -0
- package/dist/components/base/types.cjs.map +1 -0
- package/dist/components/base/types.js +1 -0
- package/dist/components/base/types.js.map +1 -0
- package/dist/components/buffer.cjs +184 -0
- package/dist/components/buffer.cjs.map +1 -0
- package/dist/components/buffer.js +18 -0
- package/dist/components/buffer.js.map +1 -0
- package/dist/components/captionsview.cjs +378 -0
- package/dist/components/captionsview.cjs.map +1 -0
- package/dist/components/captionsview.js +22 -0
- package/dist/components/captionsview.js.map +1 -0
- package/dist/components/controls/airplay.cjs +441 -0
- package/dist/components/controls/airplay.cjs.map +1 -0
- package/dist/components/controls/airplay.js +21 -0
- package/dist/components/controls/airplay.js.map +1 -0
- package/dist/components/controls/backward10.cjs +427 -0
- package/dist/components/controls/backward10.cjs.map +1 -0
- package/dist/components/controls/backward10.js +21 -0
- package/dist/components/controls/backward10.js.map +1 -0
- package/dist/components/controls/bignext.cjs +448 -0
- package/dist/components/controls/bignext.cjs.map +1 -0
- package/dist/components/controls/bignext.js +21 -0
- package/dist/components/controls/bignext.js.map +1 -0
- package/dist/components/controls/bigplaypause.cjs +440 -0
- package/dist/components/controls/bigplaypause.cjs.map +1 -0
- package/dist/components/controls/bigplaypause.js +21 -0
- package/dist/components/controls/bigplaypause.js.map +1 -0
- package/dist/components/controls/bigprev.cjs +448 -0
- package/dist/components/controls/bigprev.cjs.map +1 -0
- package/dist/components/controls/bigprev.js +21 -0
- package/dist/components/controls/bigprev.js.map +1 -0
- package/dist/components/controls/brightness/index.cjs +767 -0
- package/dist/components/controls/brightness/index.cjs.map +1 -0
- package/dist/components/controls/brightness/index.js +25 -0
- package/dist/components/controls/brightness/index.js.map +1 -0
- package/dist/components/controls/brightness/slider.cjs +460 -0
- package/dist/components/controls/brightness/slider.cjs.map +1 -0
- package/dist/components/controls/brightness/slider.js +21 -0
- package/dist/components/controls/brightness/slider.js.map +1 -0
- package/dist/components/controls/captions.cjs +452 -0
- package/dist/components/controls/captions.cjs.map +1 -0
- package/dist/components/controls/captions.js +21 -0
- package/dist/components/controls/captions.js.map +1 -0
- package/dist/components/controls/capture.cjs +455 -0
- package/dist/components/controls/capture.cjs.map +1 -0
- package/dist/components/controls/capture.js +21 -0
- package/dist/components/controls/capture.js.map +1 -0
- package/dist/components/controls/cast.cjs +441 -0
- package/dist/components/controls/cast.cjs.map +1 -0
- package/dist/components/controls/cast.js +21 -0
- package/dist/components/controls/cast.js.map +1 -0
- package/dist/components/controls/chapter.cjs +213 -0
- package/dist/components/controls/chapter.cjs.map +1 -0
- package/dist/components/controls/chapter.js +18 -0
- package/dist/components/controls/chapter.js.map +1 -0
- package/dist/components/controls/duration.cjs +217 -0
- package/dist/components/controls/duration.cjs.map +1 -0
- package/dist/components/controls/duration.js +18 -0
- package/dist/components/controls/duration.js.map +1 -0
- package/dist/components/controls/expandminiplayer.cjs +430 -0
- package/dist/components/controls/expandminiplayer.cjs.map +1 -0
- package/dist/components/controls/expandminiplayer.js +21 -0
- package/dist/components/controls/expandminiplayer.js.map +1 -0
- package/dist/components/controls/forward10.cjs +427 -0
- package/dist/components/controls/forward10.cjs.map +1 -0
- package/dist/components/controls/forward10.js +21 -0
- package/dist/components/controls/forward10.js.map +1 -0
- package/dist/components/controls/fullscreen.cjs +441 -0
- package/dist/components/controls/fullscreen.cjs.map +1 -0
- package/dist/components/controls/fullscreen.js +21 -0
- package/dist/components/controls/fullscreen.js.map +1 -0
- package/dist/components/controls/fullscreenlock.cjs +433 -0
- package/dist/components/controls/fullscreenlock.cjs.map +1 -0
- package/dist/components/controls/fullscreenlock.js +21 -0
- package/dist/components/controls/fullscreenlock.js.map +1 -0
- package/dist/components/controls/fullscreenorientation.cjs +436 -0
- package/dist/components/controls/fullscreenorientation.cjs.map +1 -0
- package/dist/components/controls/fullscreenorientation.js +21 -0
- package/dist/components/controls/fullscreenorientation.js.map +1 -0
- package/dist/components/controls/meta.cjs +298 -0
- package/dist/components/controls/meta.cjs.map +1 -0
- package/dist/components/controls/meta.js +18 -0
- package/dist/components/controls/meta.js.map +1 -0
- package/dist/components/controls/next.cjs +444 -0
- package/dist/components/controls/next.cjs.map +1 -0
- package/dist/components/controls/next.js +21 -0
- package/dist/components/controls/next.js.map +1 -0
- package/dist/components/controls/objectfit.cjs +444 -0
- package/dist/components/controls/objectfit.cjs.map +1 -0
- package/dist/components/controls/objectfit.js +21 -0
- package/dist/components/controls/objectfit.js.map +1 -0
- package/dist/components/controls/pictureinpicture.cjs +441 -0
- package/dist/components/controls/pictureinpicture.cjs.map +1 -0
- package/dist/components/controls/pictureinpicture.js +21 -0
- package/dist/components/controls/pictureinpicture.js.map +1 -0
- package/dist/components/controls/playpause.cjs +441 -0
- package/dist/components/controls/playpause.cjs.map +1 -0
- package/dist/components/controls/playpause.js +21 -0
- package/dist/components/controls/playpause.js.map +1 -0
- package/dist/components/controls/prev.cjs +444 -0
- package/dist/components/controls/prev.cjs.map +1 -0
- package/dist/components/controls/prev.js +21 -0
- package/dist/components/controls/prev.js.map +1 -0
- package/dist/components/controls/removeminiplayer.cjs +432 -0
- package/dist/components/controls/removeminiplayer.cjs.map +1 -0
- package/dist/components/controls/removeminiplayer.js +21 -0
- package/dist/components/controls/removeminiplayer.js.map +1 -0
- package/dist/components/controls/settings.cjs +443 -0
- package/dist/components/controls/settings.cjs.map +1 -0
- package/dist/components/controls/settings.js +21 -0
- package/dist/components/controls/settings.js.map +1 -0
- package/dist/components/controls/theater.cjs +441 -0
- package/dist/components/controls/theater.cjs.map +1 -0
- package/dist/components/controls/theater.js +21 -0
- package/dist/components/controls/theater.js.map +1 -0
- package/dist/components/controls/time.cjs +230 -0
- package/dist/components/controls/time.cjs.map +1 -0
- package/dist/components/controls/time.js +18 -0
- package/dist/components/controls/time.js.map +1 -0
- package/dist/components/controls/timeandduration.cjs +251 -0
- package/dist/components/controls/timeandduration.cjs.map +1 -0
- package/dist/components/controls/timeandduration.js +18 -0
- package/dist/components/controls/timeandduration.js.map +1 -0
- package/dist/components/controls/timeline/index.cjs +713 -0
- package/dist/components/controls/timeline/index.cjs.map +1 -0
- package/dist/components/controls/timeline/index.js +25 -0
- package/dist/components/controls/timeline/index.js.map +1 -0
- package/dist/components/controls/timeline/types.cjs +19 -0
- package/dist/components/controls/timeline/types.cjs.map +1 -0
- package/dist/components/controls/timeline/types.js +1 -0
- package/dist/components/controls/timeline/types.js.map +1 -0
- package/dist/components/controls/volume/index.cjs +767 -0
- package/dist/components/controls/volume/index.cjs.map +1 -0
- package/dist/components/controls/volume/index.js +25 -0
- package/dist/components/controls/volume/index.js.map +1 -0
- package/dist/components/controls/volume/slider.cjs +460 -0
- package/dist/components/controls/volume/slider.cjs.map +1 -0
- package/dist/components/controls/volume/slider.js +21 -0
- package/dist/components/controls/volume/slider.js.map +1 -0
- package/dist/components/holders/airplayplaceholder.cjs +446 -0
- package/dist/components/holders/airplayplaceholder.cjs.map +1 -0
- package/dist/components/holders/airplayplaceholder.js +21 -0
- package/dist/components/holders/airplayplaceholder.js.map +1 -0
- package/dist/components/holders/castplaceholder.cjs +446 -0
- package/dist/components/holders/castplaceholder.cjs.map +1 -0
- package/dist/components/holders/castplaceholder.js +21 -0
- package/dist/components/holders/castplaceholder.js.map +1 -0
- package/dist/components/holders/pipplaceholder.cjs +446 -0
- package/dist/components/holders/pipplaceholder.cjs.map +1 -0
- package/dist/components/holders/pipplaceholder.js +30 -0
- package/dist/components/holders/pipplaceholder.js.map +1 -0
- package/dist/components/icons/add.cjs +27 -0
- package/dist/components/icons/add.cjs.map +1 -0
- package/dist/components/icons/add.js +8 -0
- package/dist/components/icons/add.js.map +1 -0
- package/dist/components/icons/airplay.cjs +30 -0
- package/dist/components/icons/airplay.cjs.map +1 -0
- package/dist/components/icons/airplay.js +8 -0
- package/dist/components/icons/airplay.js.map +1 -0
- package/dist/components/icons/airplayplaceholder.cjs +39 -0
- package/dist/components/icons/airplayplaceholder.cjs.map +1 -0
- package/dist/components/icons/airplayplaceholder.js +8 -0
- package/dist/components/icons/airplayplaceholder.js.map +1 -0
- package/dist/components/icons/ambience.cjs +27 -0
- package/dist/components/icons/ambience.cjs.map +1 -0
- package/dist/components/icons/ambience.js +8 -0
- package/dist/components/icons/ambience.js.map +1 -0
- package/dist/components/icons/audiotrack.cjs +27 -0
- package/dist/components/icons/audiotrack.cjs.map +1 -0
- package/dist/components/icons/audiotrack.js +8 -0
- package/dist/components/icons/audiotrack.js.map +1 -0
- package/dist/components/icons/autoplay.cjs +27 -0
- package/dist/components/icons/autoplay.cjs.map +1 -0
- package/dist/components/icons/autoplay.js +8 -0
- package/dist/components/icons/autoplay.js.map +1 -0
- package/dist/components/icons/backward10.cjs +29 -0
- package/dist/components/icons/backward10.cjs.map +1 -0
- package/dist/components/icons/backward10.js +8 -0
- package/dist/components/icons/backward10.js.map +1 -0
- package/dist/components/icons/brightnessdark.cjs +29 -0
- package/dist/components/icons/brightnessdark.cjs.map +1 -0
- package/dist/components/icons/brightnessdark.js +8 -0
- package/dist/components/icons/brightnessdark.js.map +1 -0
- package/dist/components/icons/brightnesshigh.cjs +29 -0
- package/dist/components/icons/brightnesshigh.cjs.map +1 -0
- package/dist/components/icons/brightnesshigh.js +8 -0
- package/dist/components/icons/brightnesshigh.js.map +1 -0
- package/dist/components/icons/brightnesslow.cjs +29 -0
- package/dist/components/icons/brightnesslow.cjs.map +1 -0
- package/dist/components/icons/brightnesslow.js +8 -0
- package/dist/components/icons/brightnesslow.js.map +1 -0
- package/dist/components/icons/bwd.cjs +31 -0
- package/dist/components/icons/bwd.cjs.map +1 -0
- package/dist/components/icons/bwd.js +8 -0
- package/dist/components/icons/bwd.js.map +1 -0
- package/dist/components/icons/captions.cjs +29 -0
- package/dist/components/icons/captions.cjs.map +1 -0
- package/dist/components/icons/captions.js +8 -0
- package/dist/components/icons/captions.js.map +1 -0
- package/dist/components/icons/capture.cjs +29 -0
- package/dist/components/icons/capture.cjs.map +1 -0
- package/dist/components/icons/capture.js +8 -0
- package/dist/components/icons/capture.js.map +1 -0
- package/dist/components/icons/cast.cjs +29 -0
- package/dist/components/icons/cast.cjs.map +1 -0
- package/dist/components/icons/cast.js +8 -0
- package/dist/components/icons/cast.js.map +1 -0
- package/dist/components/icons/castplaceholder.cjs +42 -0
- package/dist/components/icons/castplaceholder.cjs.map +1 -0
- package/dist/components/icons/castplaceholder.js +8 -0
- package/dist/components/icons/castplaceholder.js.map +1 -0
- package/dist/components/icons/chapters.cjs +27 -0
- package/dist/components/icons/chapters.cjs.map +1 -0
- package/dist/components/icons/chapters.js +8 -0
- package/dist/components/icons/chapters.js.map +1 -0
- package/dist/components/icons/configure.cjs +27 -0
- package/dist/components/icons/configure.cjs.map +1 -0
- package/dist/components/icons/configure.js +8 -0
- package/dist/components/icons/configure.js.map +1 -0
- package/dist/components/icons/deleteicon.cjs +27 -0
- package/dist/components/icons/deleteicon.cjs.map +1 -0
- package/dist/components/icons/deleteicon.js +8 -0
- package/dist/components/icons/deleteicon.js.map +1 -0
- package/dist/components/icons/doubletriangleleft.cjs +27 -0
- package/dist/components/icons/doubletriangleleft.cjs.map +1 -0
- package/dist/components/icons/doubletriangleleft.js +8 -0
- package/dist/components/icons/doubletriangleleft.js.map +1 -0
- package/dist/components/icons/doubletriangleright.cjs +27 -0
- package/dist/components/icons/doubletriangleright.cjs.map +1 -0
- package/dist/components/icons/doubletriangleright.js +8 -0
- package/dist/components/icons/doubletriangleright.js.map +1 -0
- package/dist/components/icons/dragindicator.cjs +27 -0
- package/dist/components/icons/dragindicator.cjs.map +1 -0
- package/dist/components/icons/dragindicator.js +8 -0
- package/dist/components/icons/dragindicator.js.map +1 -0
- package/dist/components/icons/edit.cjs +27 -0
- package/dist/components/icons/edit.cjs.map +1 -0
- package/dist/components/icons/edit.js +8 -0
- package/dist/components/icons/edit.js.map +1 -0
- package/dist/components/icons/enterfullscreen.cjs +32 -0
- package/dist/components/icons/enterfullscreen.cjs.map +1 -0
- package/dist/components/icons/enterfullscreen.js +8 -0
- package/dist/components/icons/enterfullscreen.js.map +1 -0
- package/dist/components/icons/enterpip.cjs +29 -0
- package/dist/components/icons/enterpip.cjs.map +1 -0
- package/dist/components/icons/enterpip.js +8 -0
- package/dist/components/icons/enterpip.js.map +1 -0
- package/dist/components/icons/entertheater.cjs +29 -0
- package/dist/components/icons/entertheater.cjs.map +1 -0
- package/dist/components/icons/entertheater.js +8 -0
- package/dist/components/icons/entertheater.js.map +1 -0
- package/dist/components/icons/expandminiplayer.cjs +29 -0
- package/dist/components/icons/expandminiplayer.cjs.map +1 -0
- package/dist/components/icons/expandminiplayer.js +8 -0
- package/dist/components/icons/expandminiplayer.js.map +1 -0
- package/dist/components/icons/forward10.cjs +29 -0
- package/dist/components/icons/forward10.cjs.map +1 -0
- package/dist/components/icons/forward10.js +8 -0
- package/dist/components/icons/forward10.js.map +1 -0
- package/dist/components/icons/fullscreenorientation.cjs +30 -0
- package/dist/components/icons/fullscreenorientation.cjs.map +1 -0
- package/dist/components/icons/fullscreenorientation.js +8 -0
- package/dist/components/icons/fullscreenorientation.js.map +1 -0
- package/dist/components/icons/fwd.cjs +31 -0
- package/dist/components/icons/fwd.cjs.map +1 -0
- package/dist/components/icons/fwd.js +8 -0
- package/dist/components/icons/fwd.js.map +1 -0
- package/dist/components/icons/leavefullscreen.cjs +32 -0
- package/dist/components/icons/leavefullscreen.cjs.map +1 -0
- package/dist/components/icons/leavefullscreen.js +8 -0
- package/dist/components/icons/leavefullscreen.js.map +1 -0
- package/dist/components/icons/leavepip.cjs +29 -0
- package/dist/components/icons/leavepip.cjs.map +1 -0
- package/dist/components/icons/leavepip.js +8 -0
- package/dist/components/icons/leavepip.js.map +1 -0
- package/dist/components/icons/leavetheater.cjs +29 -0
- package/dist/components/icons/leavetheater.cjs.map +1 -0
- package/dist/components/icons/leavetheater.js +8 -0
- package/dist/components/icons/leavetheater.js.map +1 -0
- package/dist/components/icons/lock.cjs +30 -0
- package/dist/components/icons/lock.cjs.map +1 -0
- package/dist/components/icons/lock.js +8 -0
- package/dist/components/icons/lock.js.map +1 -0
- package/dist/components/icons/loop.cjs +27 -0
- package/dist/components/icons/loop.cjs.map +1 -0
- package/dist/components/icons/loop.js +8 -0
- package/dist/components/icons/loop.js.map +1 -0
- package/dist/components/icons/next.cjs +30 -0
- package/dist/components/icons/next.cjs.map +1 -0
- package/dist/components/icons/next.js +8 -0
- package/dist/components/icons/next.js.map +1 -0
- package/dist/components/icons/objectfitcontain.cjs +32 -0
- package/dist/components/icons/objectfitcontain.cjs.map +1 -0
- package/dist/components/icons/objectfitcontain.js +8 -0
- package/dist/components/icons/objectfitcontain.js.map +1 -0
- package/dist/components/icons/objectfitcover.cjs +32 -0
- package/dist/components/icons/objectfitcover.cjs.map +1 -0
- package/dist/components/icons/objectfitcover.js +8 -0
- package/dist/components/icons/objectfitcover.js.map +1 -0
- package/dist/components/icons/objectfitfill.cjs +32 -0
- package/dist/components/icons/objectfitfill.cjs.map +1 -0
- package/dist/components/icons/objectfitfill.js +8 -0
- package/dist/components/icons/objectfitfill.js.map +1 -0
- package/dist/components/icons/pause.cjs +29 -0
- package/dist/components/icons/pause.cjs.map +1 -0
- package/dist/components/icons/pause.js +8 -0
- package/dist/components/icons/pause.js.map +1 -0
- package/dist/components/icons/pipplaceholder.cjs +50 -0
- package/dist/components/icons/pipplaceholder.cjs.map +1 -0
- package/dist/components/icons/pipplaceholder.js +8 -0
- package/dist/components/icons/pipplaceholder.js.map +1 -0
- package/dist/components/icons/play.cjs +29 -0
- package/dist/components/icons/play.cjs.map +1 -0
- package/dist/components/icons/play.js +8 -0
- package/dist/components/icons/play.js.map +1 -0
- package/dist/components/icons/playbackrate.cjs +27 -0
- package/dist/components/icons/playbackrate.cjs.map +1 -0
- package/dist/components/icons/playbackrate.js +8 -0
- package/dist/components/icons/playbackrate.js.map +1 -0
- package/dist/components/icons/playlist.cjs +27 -0
- package/dist/components/icons/playlist.cjs.map +1 -0
- package/dist/components/icons/playlist.js +8 -0
- package/dist/components/icons/playlist.js.map +1 -0
- package/dist/components/icons/prev.cjs +30 -0
- package/dist/components/icons/prev.cjs.map +1 -0
- package/dist/components/icons/prev.js +8 -0
- package/dist/components/icons/prev.js.map +1 -0
- package/dist/components/icons/quality.cjs +27 -0
- package/dist/components/icons/quality.cjs.map +1 -0
- package/dist/components/icons/quality.js +8 -0
- package/dist/components/icons/quality.js.map +1 -0
- package/dist/components/icons/removeminiplayer.cjs +29 -0
- package/dist/components/icons/removeminiplayer.cjs.map +1 -0
- package/dist/components/icons/removeminiplayer.js +8 -0
- package/dist/components/icons/removeminiplayer.js.map +1 -0
- package/dist/components/icons/replay.cjs +29 -0
- package/dist/components/icons/replay.cjs.map +1 -0
- package/dist/components/icons/replay.js +8 -0
- package/dist/components/icons/replay.js.map +1 -0
- package/dist/components/icons/returnback.cjs +30 -0
- package/dist/components/icons/returnback.cjs.map +1 -0
- package/dist/components/icons/returnback.js +8 -0
- package/dist/components/icons/returnback.js.map +1 -0
- package/dist/components/icons/settings.cjs +29 -0
- package/dist/components/icons/settings.cjs.map +1 -0
- package/dist/components/icons/settings.js +8 -0
- package/dist/components/icons/settings.js.map +1 -0
- package/dist/components/icons/shuffle.cjs +27 -0
- package/dist/components/icons/shuffle.cjs.map +1 -0
- package/dist/components/icons/shuffle.js +8 -0
- package/dist/components/icons/shuffle.js.map +1 -0
- package/dist/components/icons/subtitles.cjs +29 -0
- package/dist/components/icons/subtitles.cjs.map +1 -0
- package/dist/components/icons/subtitles.js +8 -0
- package/dist/components/icons/subtitles.js.map +1 -0
- package/dist/components/icons/timer.cjs +27 -0
- package/dist/components/icons/timer.cjs.map +1 -0
- package/dist/components/icons/timer.js +8 -0
- package/dist/components/icons/timer.js.map +1 -0
- package/dist/components/icons/triangleleft.cjs +29 -0
- package/dist/components/icons/triangleleft.cjs.map +1 -0
- package/dist/components/icons/triangleleft.js +8 -0
- package/dist/components/icons/triangleleft.js.map +1 -0
- package/dist/components/icons/tripletriangleleft.cjs +27 -0
- package/dist/components/icons/tripletriangleleft.cjs.map +1 -0
- package/dist/components/icons/tripletriangleleft.js +8 -0
- package/dist/components/icons/tripletriangleleft.js.map +1 -0
- package/dist/components/icons/tripletriangleright.cjs +27 -0
- package/dist/components/icons/tripletriangleright.cjs.map +1 -0
- package/dist/components/icons/tripletriangleright.js +8 -0
- package/dist/components/icons/tripletriangleright.js.map +1 -0
- package/dist/components/icons/unlock.cjs +30 -0
- package/dist/components/icons/unlock.cjs.map +1 -0
- package/dist/components/icons/unlock.js +8 -0
- package/dist/components/icons/unlock.js.map +1 -0
- package/dist/components/icons/videotrack.cjs +27 -0
- package/dist/components/icons/videotrack.cjs.map +1 -0
- package/dist/components/icons/videotrack.js +8 -0
- package/dist/components/icons/videotrack.js.map +1 -0
- package/dist/components/icons/volumehigh.cjs +29 -0
- package/dist/components/icons/volumehigh.cjs.map +1 -0
- package/dist/components/icons/volumehigh.js +8 -0
- package/dist/components/icons/volumehigh.js.map +1 -0
- package/dist/components/icons/volumelow.cjs +29 -0
- package/dist/components/icons/volumelow.cjs.map +1 -0
- package/dist/components/icons/volumelow.js +8 -0
- package/dist/components/icons/volumelow.js.map +1 -0
- package/dist/components/icons/volumemuted.cjs +29 -0
- package/dist/components/icons/volumemuted.cjs.map +1 -0
- package/dist/components/icons/volumemuted.js +8 -0
- package/dist/components/icons/volumemuted.js.map +1 -0
- package/dist/components/icons/z-register.cjs +633 -0
- package/dist/components/icons/z-register.cjs.map +1 -0
- package/dist/components/icons/z-register.js +66 -0
- package/dist/components/icons/z-register.js.map +1 -0
- package/dist/components/notifiers/airplay.cjs +450 -0
- package/dist/components/notifiers/airplay.cjs.map +1 -0
- package/dist/components/notifiers/airplay.js +22 -0
- package/dist/components/notifiers/airplay.js.map +1 -0
- package/dist/components/notifiers/base.cjs +191 -0
- package/dist/components/notifiers/base.cjs.map +1 -0
- package/dist/components/notifiers/base.js +16 -0
- package/dist/components/notifiers/base.js.map +1 -0
- package/dist/components/notifiers/brightness.cjs +469 -0
- package/dist/components/notifiers/brightness.cjs.map +1 -0
- package/dist/components/notifiers/brightness.js +22 -0
- package/dist/components/notifiers/brightness.js.map +1 -0
- package/dist/components/notifiers/cancelscrub.cjs +216 -0
- package/dist/components/notifiers/cancelscrub.cjs.map +1 -0
- package/dist/components/notifiers/cancelscrub.js +19 -0
- package/dist/components/notifiers/cancelscrub.js.map +1 -0
- package/dist/components/notifiers/captions.cjs +450 -0
- package/dist/components/notifiers/captions.cjs.map +1 -0
- package/dist/components/notifiers/captions.js +22 -0
- package/dist/components/notifiers/captions.js.map +1 -0
- package/dist/components/notifiers/capture.cjs +450 -0
- package/dist/components/notifiers/capture.cjs.map +1 -0
- package/dist/components/notifiers/capture.js +22 -0
- package/dist/components/notifiers/capture.js.map +1 -0
- package/dist/components/notifiers/cast.cjs +450 -0
- package/dist/components/notifiers/cast.cjs.map +1 -0
- package/dist/components/notifiers/cast.js +22 -0
- package/dist/components/notifiers/cast.js.map +1 -0
- package/dist/components/notifiers/chapter.cjs +225 -0
- package/dist/components/notifiers/chapter.cjs.map +1 -0
- package/dist/components/notifiers/chapter.js +19 -0
- package/dist/components/notifiers/chapter.js.map +1 -0
- package/dist/components/notifiers/fastplay.cjs +467 -0
- package/dist/components/notifiers/fastplay.cjs.map +1 -0
- package/dist/components/notifiers/fastplay.js +22 -0
- package/dist/components/notifiers/fastplay.js.map +1 -0
- package/dist/components/notifiers/fwdbwd.cjs +457 -0
- package/dist/components/notifiers/fwdbwd.cjs.map +1 -0
- package/dist/components/notifiers/fwdbwd.js +22 -0
- package/dist/components/notifiers/fwdbwd.js.map +1 -0
- package/dist/components/notifiers/objectfit.cjs +468 -0
- package/dist/components/notifiers/objectfit.cjs.map +1 -0
- package/dist/components/notifiers/objectfit.js +22 -0
- package/dist/components/notifiers/objectfit.js.map +1 -0
- package/dist/components/notifiers/playbackrate.cjs +466 -0
- package/dist/components/notifiers/playbackrate.cjs.map +1 -0
- package/dist/components/notifiers/playbackrate.js +22 -0
- package/dist/components/notifiers/playbackrate.js.map +1 -0
- package/dist/components/notifiers/playpause.cjs +457 -0
- package/dist/components/notifiers/playpause.cjs.map +1 -0
- package/dist/components/notifiers/playpause.js +22 -0
- package/dist/components/notifiers/playpause.js.map +1 -0
- package/dist/components/notifiers/prevnext.cjs +457 -0
- package/dist/components/notifiers/prevnext.cjs.map +1 -0
- package/dist/components/notifiers/prevnext.js +22 -0
- package/dist/components/notifiers/prevnext.js.map +1 -0
- package/dist/components/notifiers/scrub.cjs +449 -0
- package/dist/components/notifiers/scrub.cjs.map +1 -0
- package/dist/components/notifiers/scrub.js +22 -0
- package/dist/components/notifiers/scrub.js.map +1 -0
- package/dist/components/notifiers/timer.cjs +451 -0
- package/dist/components/notifiers/timer.cjs.map +1 -0
- package/dist/components/notifiers/timer.js +22 -0
- package/dist/components/notifiers/timer.js.map +1 -0
- package/dist/components/notifiers/touchbrightness.cjs +474 -0
- package/dist/components/notifiers/touchbrightness.cjs.map +1 -0
- package/dist/components/notifiers/touchbrightness.js +22 -0
- package/dist/components/notifiers/touchbrightness.js.map +1 -0
- package/dist/components/notifiers/touchtimeline.cjs +218 -0
- package/dist/components/notifiers/touchtimeline.cjs.map +1 -0
- package/dist/components/notifiers/touchtimeline.js +21 -0
- package/dist/components/notifiers/touchtimeline.js.map +1 -0
- package/dist/components/notifiers/touchvolume.cjs +474 -0
- package/dist/components/notifiers/touchvolume.cjs.map +1 -0
- package/dist/components/notifiers/touchvolume.js +22 -0
- package/dist/components/notifiers/touchvolume.js.map +1 -0
- package/dist/components/notifiers/volume.cjs +469 -0
- package/dist/components/notifiers/volume.cjs.map +1 -0
- package/dist/components/notifiers/volume.js +22 -0
- package/dist/components/notifiers/volume.js.map +1 -0
- package/dist/components/notifiers/z-register.cjs +778 -0
- package/dist/components/notifiers/z-register.cjs.map +1 -0
- package/dist/components/notifiers/z-register.js +36 -0
- package/dist/components/notifiers/z-register.js.map +1 -0
- package/dist/components/rangeinput/build.cjs +52 -0
- package/dist/components/rangeinput/build.cjs.map +1 -0
- package/dist/components/rangeinput/build.js +8 -0
- package/dist/components/rangeinput/build.js.map +1 -0
- package/dist/components/rangeinput/index.cjs +433 -0
- package/dist/components/rangeinput/index.cjs.map +1 -0
- package/dist/components/rangeinput/index.js +20 -0
- package/dist/components/rangeinput/index.js.map +1 -0
- package/dist/components/rangeinput/types.cjs +19 -0
- package/dist/components/rangeinput/types.cjs.map +1 -0
- package/dist/components/rangeinput/types.js +1 -0
- package/dist/components/rangeinput/types.js.map +1 -0
- package/dist/components/screenlock.cjs +438 -0
- package/dist/components/screenlock.cjs.map +1 -0
- package/dist/components/screenlock.js +21 -0
- package/dist/components/screenlock.js.map +1 -0
- package/dist/components/z-register.cjs +2345 -0
- package/dist/components/z-register.cjs.map +1 -0
- package/dist/components/z-register.js +64 -0
- package/dist/components/z-register.js.map +1 -0
- package/dist/consts/actions.cjs +79 -0
- package/dist/consts/actions.cjs.map +1 -0
- package/dist/consts/actions.js +8 -0
- package/dist/consts/actions.js.map +1 -0
- package/dist/consts/config.cjs +105 -0
- package/dist/consts/config.cjs.map +1 -0
- package/dist/consts/config.js +9 -0
- package/dist/consts/config.js.map +1 -0
- package/dist/consts/generics.cjs +29 -0
- package/dist/consts/generics.cjs.map +1 -0
- package/dist/consts/generics.js +10 -0
- package/dist/consts/generics.js.map +1 -0
- package/dist/consts/media.cjs +201 -0
- package/dist/consts/media.cjs.map +1 -0
- package/dist/consts/media.js +16 -0
- package/dist/consts/media.js.map +1 -0
- package/dist/core/controllable.cjs +91 -0
- package/dist/core/controllable.cjs.map +1 -0
- package/dist/core/controllable.js +13 -0
- package/dist/core/controllable.js.map +1 -0
- package/dist/core/controller.cjs +1664 -0
- package/dist/core/controller.cjs.map +1 -0
- package/dist/core/controller.js +27 -0
- package/dist/core/controller.js.map +1 -0
- package/dist/core/registries.cjs +268 -0
- package/dist/core/registries.cjs.map +1 -0
- package/dist/core/registries.js +24 -0
- package/dist/core/registries.js.map +1 -0
- package/dist/index.cjs +1934 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.css +3148 -0
- package/dist/index.css.map +1 -0
- package/dist/index.js +75 -0
- package/dist/index.js.map +1 -0
- package/dist/init.cjs +1890 -0
- package/dist/init.cjs.map +1 -0
- package/dist/init.js +24 -0
- package/dist/init.js.map +1 -0
- package/dist/plugs/base/index.cjs +407 -0
- package/dist/plugs/base/index.cjs.map +1 -0
- package/dist/plugs/base/index.js +19 -0
- package/dist/plugs/base/index.js.map +1 -0
- package/dist/plugs/base/slider.cjs +458 -0
- package/dist/plugs/base/slider.cjs.map +1 -0
- package/dist/plugs/base/slider.js +18 -0
- package/dist/plugs/base/slider.js.map +1 -0
- package/dist/plugs/base/types.cjs +19 -0
- package/dist/plugs/base/types.cjs.map +1 -0
- package/dist/plugs/base/types.js +1 -0
- package/dist/plugs/base/types.js.map +1 -0
- package/dist/plugs/main/disabled/build.cjs +27 -0
- package/dist/plugs/main/disabled/build.cjs.map +1 -0
- package/dist/plugs/main/disabled/build.js +8 -0
- package/dist/plugs/main/disabled/build.js.map +1 -0
- package/dist/plugs/main/disabled/index.cjs +421 -0
- package/dist/plugs/main/disabled/index.cjs.map +1 -0
- package/dist/plugs/main/disabled/index.js +22 -0
- package/dist/plugs/main/disabled/index.js.map +1 -0
- package/dist/plugs/main/disabled/types.cjs +19 -0
- package/dist/plugs/main/disabled/types.cjs.map +1 -0
- package/dist/plugs/main/disabled/types.js +1 -0
- package/dist/plugs/main/disabled/types.js.map +1 -0
- package/dist/plugs/main/lightState/build.cjs +34 -0
- package/dist/plugs/main/lightState/build.cjs.map +1 -0
- package/dist/plugs/main/lightState/build.js +8 -0
- package/dist/plugs/main/lightState/build.js.map +1 -0
- package/dist/plugs/main/lightState/index.cjs +458 -0
- package/dist/plugs/main/lightState/index.cjs.map +1 -0
- package/dist/plugs/main/lightState/index.js +22 -0
- package/dist/plugs/main/lightState/index.js.map +1 -0
- package/dist/plugs/main/lightState/types.cjs +19 -0
- package/dist/plugs/main/lightState/types.cjs.map +1 -0
- package/dist/plugs/main/lightState/types.js +1 -0
- package/dist/plugs/main/lightState/types.js.map +1 -0
- package/dist/plugs/main/playlist/build.cjs +59 -0
- package/dist/plugs/main/playlist/build.cjs.map +1 -0
- package/dist/plugs/main/playlist/build.js +10 -0
- package/dist/plugs/main/playlist/build.js.map +1 -0
- package/dist/plugs/main/playlist/index.cjs +511 -0
- package/dist/plugs/main/playlist/index.cjs.map +1 -0
- package/dist/plugs/main/playlist/index.js +25 -0
- package/dist/plugs/main/playlist/index.js.map +1 -0
- package/dist/plugs/main/playlist/types.cjs +19 -0
- package/dist/plugs/main/playlist/types.cjs.map +1 -0
- package/dist/plugs/main/playlist/types.js +1 -0
- package/dist/plugs/main/playlist/types.js.map +1 -0
- package/dist/plugs/main/skeleton/build.cjs +29 -0
- package/dist/plugs/main/skeleton/build.cjs.map +1 -0
- package/dist/plugs/main/skeleton/build.js +8 -0
- package/dist/plugs/main/skeleton/build.js.map +1 -0
- package/dist/plugs/main/skeleton/index.cjs +539 -0
- package/dist/plugs/main/skeleton/index.cjs.map +1 -0
- package/dist/plugs/main/skeleton/index.js +25 -0
- package/dist/plugs/main/skeleton/index.js.map +1 -0
- package/dist/plugs/main/skeleton/types.cjs +19 -0
- package/dist/plugs/main/skeleton/types.cjs.map +1 -0
- package/dist/plugs/main/skeleton/types.js +1 -0
- package/dist/plugs/main/skeleton/types.js.map +1 -0
- package/dist/plugs/menus/main/playlist.cjs +98 -0
- package/dist/plugs/menus/main/playlist.cjs.map +1 -0
- package/dist/plugs/menus/main/playlist.js +9 -0
- package/dist/plugs/menus/main/playlist.js.map +1 -0
- package/dist/plugs/menus/main/skeleton.cjs +34 -0
- package/dist/plugs/menus/main/skeleton.cjs.map +1 -0
- package/dist/plugs/menus/main/skeleton.js +8 -0
- package/dist/plugs/menus/main/skeleton.js.map +1 -0
- package/dist/plugs/menus/settings/actions.cjs +492 -0
- package/dist/plugs/menus/settings/actions.cjs.map +1 -0
- package/dist/plugs/menus/settings/actions.js +15 -0
- package/dist/plugs/menus/settings/actions.js.map +1 -0
- package/dist/plugs/menus/settings/ambience.cjs +35 -0
- package/dist/plugs/menus/settings/ambience.cjs.map +1 -0
- package/dist/plugs/menus/settings/ambience.js +8 -0
- package/dist/plugs/menus/settings/ambience.js.map +1 -0
- package/dist/plugs/menus/settings/auto.cjs +153 -0
- package/dist/plugs/menus/settings/auto.cjs.map +1 -0
- package/dist/plugs/menus/settings/auto.js +12 -0
- package/dist/plugs/menus/settings/auto.js.map +1 -0
- package/dist/plugs/menus/settings/brightness.cjs +45 -0
- package/dist/plugs/menus/settings/brightness.cjs.map +1 -0
- package/dist/plugs/menus/settings/brightness.js +8 -0
- package/dist/plugs/menus/settings/brightness.js.map +1 -0
- package/dist/plugs/menus/settings/captions.cjs +437 -0
- package/dist/plugs/menus/settings/captions.cjs.map +1 -0
- package/dist/plugs/menus/settings/captions.js +13 -0
- package/dist/plugs/menus/settings/captions.js.map +1 -0
- package/dist/plugs/menus/settings/controlPanel.cjs +442 -0
- package/dist/plugs/menus/settings/controlPanel.cjs.map +1 -0
- package/dist/plugs/menus/settings/controlPanel.js +14 -0
- package/dist/plugs/menus/settings/controlPanel.js.map +1 -0
- package/dist/plugs/menus/settings/fastPlay.cjs +166 -0
- package/dist/plugs/menus/settings/fastPlay.cjs.map +1 -0
- package/dist/plugs/menus/settings/fastPlay.js +12 -0
- package/dist/plugs/menus/settings/fastPlay.js.map +1 -0
- package/dist/plugs/menus/settings/frame.cjs +90 -0
- package/dist/plugs/menus/settings/frame.cjs.map +1 -0
- package/dist/plugs/menus/settings/frame.js +12 -0
- package/dist/plugs/menus/settings/frame.js.map +1 -0
- package/dist/plugs/menus/settings/gesture.cjs +255 -0
- package/dist/plugs/menus/settings/gesture.cjs.map +1 -0
- package/dist/plugs/menus/settings/gesture.js +17 -0
- package/dist/plugs/menus/settings/gesture.js.map +1 -0
- package/dist/plugs/menus/settings/keys.cjs +173 -0
- package/dist/plugs/menus/settings/keys.cjs.map +1 -0
- package/dist/plugs/menus/settings/keys.js +12 -0
- package/dist/plugs/menus/settings/keys.js.map +1 -0
- package/dist/plugs/menus/settings/locked.cjs +53 -0
- package/dist/plugs/menus/settings/locked.cjs.map +1 -0
- package/dist/plugs/menus/settings/locked.js +8 -0
- package/dist/plugs/menus/settings/locked.js.map +1 -0
- package/dist/plugs/menus/settings/metadata.cjs +202 -0
- package/dist/plugs/menus/settings/metadata.cjs.map +1 -0
- package/dist/plugs/menus/settings/metadata.js +13 -0
- package/dist/plugs/menus/settings/metadata.js.map +1 -0
- package/dist/plugs/menus/settings/modes.cjs +238 -0
- package/dist/plugs/menus/settings/modes.cjs.map +1 -0
- package/dist/plugs/menus/settings/modes.js +12 -0
- package/dist/plugs/menus/settings/modes.js.map +1 -0
- package/dist/plugs/menus/settings/objectFit.cjs +45 -0
- package/dist/plugs/menus/settings/objectFit.cjs.map +1 -0
- package/dist/plugs/menus/settings/objectFit.js +8 -0
- package/dist/plugs/menus/settings/objectFit.js.map +1 -0
- package/dist/plugs/menus/settings/overlay.cjs +112 -0
- package/dist/plugs/menus/settings/overlay.cjs.map +1 -0
- package/dist/plugs/menus/settings/overlay.js +12 -0
- package/dist/plugs/menus/settings/overlay.js.map +1 -0
- package/dist/plugs/menus/settings/persist.cjs +73 -0
- package/dist/plugs/menus/settings/persist.cjs.map +1 -0
- package/dist/plugs/menus/settings/persist.js +8 -0
- package/dist/plugs/menus/settings/persist.js.map +1 -0
- package/dist/plugs/menus/settings/playbackRate.cjs +119 -0
- package/dist/plugs/menus/settings/playbackRate.cjs.map +1 -0
- package/dist/plugs/menus/settings/playbackRate.js +12 -0
- package/dist/plugs/menus/settings/playbackRate.js.map +1 -0
- package/dist/plugs/menus/settings/poster.cjs +53 -0
- package/dist/plugs/menus/settings/poster.cjs.map +1 -0
- package/dist/plugs/menus/settings/poster.js +8 -0
- package/dist/plugs/menus/settings/poster.js.map +1 -0
- package/dist/plugs/menus/settings/settingsView.cjs +79 -0
- package/dist/plugs/menus/settings/settingsView.cjs.map +1 -0
- package/dist/plugs/menus/settings/settingsView.js +8 -0
- package/dist/plugs/menus/settings/settingsView.js.map +1 -0
- package/dist/plugs/menus/settings/sleepTimer.cjs +89 -0
- package/dist/plugs/menus/settings/sleepTimer.cjs.map +1 -0
- package/dist/plugs/menus/settings/sleepTimer.js +10 -0
- package/dist/plugs/menus/settings/sleepTimer.js.map +1 -0
- package/dist/plugs/menus/settings/time.cjs +48 -0
- package/dist/plugs/menus/settings/time.cjs.map +1 -0
- package/dist/plugs/menus/settings/time.js +8 -0
- package/dist/plugs/menus/settings/time.js.map +1 -0
- package/dist/plugs/menus/settings/timeTravel.cjs +133 -0
- package/dist/plugs/menus/settings/timeTravel.cjs.map +1 -0
- package/dist/plugs/menus/settings/timeTravel.js +11 -0
- package/dist/plugs/menus/settings/timeTravel.js.map +1 -0
- package/dist/plugs/menus/settings/toasts.cjs +232 -0
- package/dist/plugs/menus/settings/toasts.cjs.map +1 -0
- package/dist/plugs/menus/settings/toasts.js +18 -0
- package/dist/plugs/menus/settings/toasts.js.map +1 -0
- package/dist/plugs/menus/settings/voice.cjs +216 -0
- package/dist/plugs/menus/settings/voice.cjs.map +1 -0
- package/dist/plugs/menus/settings/voice.js +12 -0
- package/dist/plugs/menus/settings/voice.js.map +1 -0
- package/dist/plugs/menus/settings/volume.cjs +45 -0
- package/dist/plugs/menus/settings/volume.cjs.map +1 -0
- package/dist/plugs/menus/settings/volume.js +8 -0
- package/dist/plugs/menus/settings/volume.js.map +1 -0
- package/dist/plugs/menus/z-register.cjs +3212 -0
- package/dist/plugs/menus/z-register.cjs.map +1 -0
- package/dist/plugs/menus/z-register.js +48 -0
- package/dist/plugs/menus/z-register.js.map +1 -0
- package/dist/plugs/settings/airplay/build.cjs +27 -0
- package/dist/plugs/settings/airplay/build.cjs.map +1 -0
- package/dist/plugs/settings/airplay/build.js +8 -0
- package/dist/plugs/settings/airplay/build.js.map +1 -0
- package/dist/plugs/settings/airplay/index.cjs +416 -0
- package/dist/plugs/settings/airplay/index.cjs.map +1 -0
- package/dist/plugs/settings/airplay/index.js +19 -0
- package/dist/plugs/settings/airplay/index.js.map +1 -0
- package/dist/plugs/settings/ambience/build.cjs +33 -0
- package/dist/plugs/settings/ambience/build.cjs.map +1 -0
- package/dist/plugs/settings/ambience/build.js +8 -0
- package/dist/plugs/settings/ambience/build.js.map +1 -0
- package/dist/plugs/settings/ambience/index.cjs +464 -0
- package/dist/plugs/settings/ambience/index.cjs.map +1 -0
- package/dist/plugs/settings/ambience/index.js +24 -0
- package/dist/plugs/settings/ambience/index.js.map +1 -0
- package/dist/plugs/settings/ambience/types.cjs +19 -0
- package/dist/plugs/settings/ambience/types.cjs.map +1 -0
- package/dist/plugs/settings/ambience/types.js +1 -0
- package/dist/plugs/settings/ambience/types.js.map +1 -0
- package/dist/plugs/settings/auto/build.cjs +76 -0
- package/dist/plugs/settings/auto/build.cjs.map +1 -0
- package/dist/plugs/settings/auto/build.js +13 -0
- package/dist/plugs/settings/auto/build.js.map +1 -0
- package/dist/plugs/settings/auto/index.cjs +533 -0
- package/dist/plugs/settings/auto/index.cjs.map +1 -0
- package/dist/plugs/settings/auto/index.js +30 -0
- package/dist/plugs/settings/auto/index.js.map +1 -0
- package/dist/plugs/settings/auto/types.cjs +19 -0
- package/dist/plugs/settings/auto/types.cjs.map +1 -0
- package/dist/plugs/settings/auto/types.js +1 -0
- package/dist/plugs/settings/auto/types.js.map +1 -0
- package/dist/plugs/settings/brightness/build.cjs +31 -0
- package/dist/plugs/settings/brightness/build.cjs.map +1 -0
- package/dist/plugs/settings/brightness/build.js +8 -0
- package/dist/plugs/settings/brightness/build.js.map +1 -0
- package/dist/plugs/settings/brightness/index.cjs +522 -0
- package/dist/plugs/settings/brightness/index.cjs.map +1 -0
- package/dist/plugs/settings/brightness/index.js +24 -0
- package/dist/plugs/settings/brightness/index.js.map +1 -0
- package/dist/plugs/settings/brightness/types.cjs +19 -0
- package/dist/plugs/settings/brightness/types.cjs.map +1 -0
- package/dist/plugs/settings/brightness/types.js +1 -0
- package/dist/plugs/settings/brightness/types.js.map +1 -0
- package/dist/plugs/settings/captions/build.cjs +184 -0
- package/dist/plugs/settings/captions/build.cjs.map +1 -0
- package/dist/plugs/settings/captions/build.js +12 -0
- package/dist/plugs/settings/captions/build.js.map +1 -0
- package/dist/plugs/settings/captions/index.cjs +793 -0
- package/dist/plugs/settings/captions/index.cjs.map +1 -0
- package/dist/plugs/settings/captions/index.js +32 -0
- package/dist/plugs/settings/captions/index.js.map +1 -0
- package/dist/plugs/settings/captions/types.cjs +19 -0
- package/dist/plugs/settings/captions/types.cjs.map +1 -0
- package/dist/plugs/settings/captions/types.js +1 -0
- package/dist/plugs/settings/captions/types.js.map +1 -0
- package/dist/plugs/settings/cast/build.cjs +27 -0
- package/dist/plugs/settings/cast/build.cjs.map +1 -0
- package/dist/plugs/settings/cast/build.js +8 -0
- package/dist/plugs/settings/cast/build.js.map +1 -0
- package/dist/plugs/settings/cast/index.cjs +644 -0
- package/dist/plugs/settings/cast/index.cjs.map +1 -0
- package/dist/plugs/settings/cast/index.js +24 -0
- package/dist/plugs/settings/cast/index.js.map +1 -0
- package/dist/plugs/settings/cast/types.cjs +19 -0
- package/dist/plugs/settings/cast/types.cjs.map +1 -0
- package/dist/plugs/settings/cast/types.js +1 -0
- package/dist/plugs/settings/cast/types.js.map +1 -0
- package/dist/plugs/settings/controlPanel/build.cjs +144 -0
- package/dist/plugs/settings/controlPanel/build.cjs.map +1 -0
- package/dist/plugs/settings/controlPanel/build.js +17 -0
- package/dist/plugs/settings/controlPanel/build.js.map +1 -0
- package/dist/plugs/settings/controlPanel/draggable.cjs +1021 -0
- package/dist/plugs/settings/controlPanel/draggable.cjs.map +1 -0
- package/dist/plugs/settings/controlPanel/draggable.js +24 -0
- package/dist/plugs/settings/controlPanel/draggable.js.map +1 -0
- package/dist/plugs/settings/controlPanel/index.cjs +1031 -0
- package/dist/plugs/settings/controlPanel/index.cjs.map +1 -0
- package/dist/plugs/settings/controlPanel/index.js +37 -0
- package/dist/plugs/settings/controlPanel/index.js.map +1 -0
- package/dist/plugs/settings/controlPanel/types.cjs +19 -0
- package/dist/plugs/settings/controlPanel/types.cjs.map +1 -0
- package/dist/plugs/settings/controlPanel/types.js +1 -0
- package/dist/plugs/settings/controlPanel/types.js.map +1 -0
- package/dist/plugs/settings/css/build.cjs +29 -0
- package/dist/plugs/settings/css/build.cjs.map +1 -0
- package/dist/plugs/settings/css/build.js +8 -0
- package/dist/plugs/settings/css/build.js.map +1 -0
- package/dist/plugs/settings/css/index.cjs +444 -0
- package/dist/plugs/settings/css/index.cjs.map +1 -0
- package/dist/plugs/settings/css/index.js +22 -0
- package/dist/plugs/settings/css/index.js.map +1 -0
- package/dist/plugs/settings/css/types.cjs +19 -0
- package/dist/plugs/settings/css/types.cjs.map +1 -0
- package/dist/plugs/settings/css/types.js +1 -0
- package/dist/plugs/settings/css/types.js.map +1 -0
- package/dist/plugs/settings/errors/build.cjs +45 -0
- package/dist/plugs/settings/errors/build.cjs.map +1 -0
- package/dist/plugs/settings/errors/build.js +10 -0
- package/dist/plugs/settings/errors/build.js.map +1 -0
- package/dist/plugs/settings/errors/index.cjs +417 -0
- package/dist/plugs/settings/errors/index.cjs.map +1 -0
- package/dist/plugs/settings/errors/index.js +24 -0
- package/dist/plugs/settings/errors/index.js.map +1 -0
- package/dist/plugs/settings/errors/types.cjs +19 -0
- package/dist/plugs/settings/errors/types.cjs.map +1 -0
- package/dist/plugs/settings/errors/types.js +1 -0
- package/dist/plugs/settings/errors/types.js.map +1 -0
- package/dist/plugs/settings/fastPlay/build.cjs +46 -0
- package/dist/plugs/settings/fastPlay/build.cjs.map +1 -0
- package/dist/plugs/settings/fastPlay/build.js +8 -0
- package/dist/plugs/settings/fastPlay/build.js.map +1 -0
- package/dist/plugs/settings/fastPlay/index.cjs +510 -0
- package/dist/plugs/settings/fastPlay/index.cjs.map +1 -0
- package/dist/plugs/settings/fastPlay/index.js +23 -0
- package/dist/plugs/settings/fastPlay/index.js.map +1 -0
- package/dist/plugs/settings/fastPlay/types.cjs +19 -0
- package/dist/plugs/settings/fastPlay/types.cjs.map +1 -0
- package/dist/plugs/settings/fastPlay/types.js +1 -0
- package/dist/plugs/settings/fastPlay/types.js.map +1 -0
- package/dist/plugs/settings/frame/build.cjs +31 -0
- package/dist/plugs/settings/frame/build.cjs.map +1 -0
- package/dist/plugs/settings/frame/build.js +8 -0
- package/dist/plugs/settings/frame/build.js.map +1 -0
- package/dist/plugs/settings/frame/index.cjs +542 -0
- package/dist/plugs/settings/frame/index.cjs.map +1 -0
- package/dist/plugs/settings/frame/index.js +29 -0
- package/dist/plugs/settings/frame/index.js.map +1 -0
- package/dist/plugs/settings/frame/types.cjs +19 -0
- package/dist/plugs/settings/frame/types.cjs.map +1 -0
- package/dist/plugs/settings/frame/types.js +1 -0
- package/dist/plugs/settings/frame/types.js.map +1 -0
- package/dist/plugs/settings/gesture/base.cjs +187 -0
- package/dist/plugs/settings/gesture/base.cjs.map +1 -0
- package/dist/plugs/settings/gesture/base.js +24 -0
- package/dist/plugs/settings/gesture/base.js.map +1 -0
- package/dist/plugs/settings/gesture/build.cjs +116 -0
- package/dist/plugs/settings/gesture/build.cjs.map +1 -0
- package/dist/plugs/settings/gesture/build.js +13 -0
- package/dist/plugs/settings/gesture/build.js.map +1 -0
- package/dist/plugs/settings/gesture/index.cjs +877 -0
- package/dist/plugs/settings/gesture/index.cjs.map +1 -0
- package/dist/plugs/settings/gesture/index.js +38 -0
- package/dist/plugs/settings/gesture/index.js.map +1 -0
- package/dist/plugs/settings/gesture/touch.cjs +784 -0
- package/dist/plugs/settings/gesture/touch.cjs.map +1 -0
- package/dist/plugs/settings/gesture/touch.js +27 -0
- package/dist/plugs/settings/gesture/touch.js.map +1 -0
- package/dist/plugs/settings/gesture/types.cjs +19 -0
- package/dist/plugs/settings/gesture/types.cjs.map +1 -0
- package/dist/plugs/settings/gesture/types.js +1 -0
- package/dist/plugs/settings/gesture/types.js.map +1 -0
- package/dist/plugs/settings/gesture/wheel.cjs +757 -0
- package/dist/plugs/settings/gesture/wheel.cjs.map +1 -0
- package/dist/plugs/settings/gesture/wheel.js +27 -0
- package/dist/plugs/settings/gesture/wheel.js.map +1 -0
- package/dist/plugs/settings/keys/build.cjs +117 -0
- package/dist/plugs/settings/keys/build.cjs.map +1 -0
- package/dist/plugs/settings/keys/build.js +13 -0
- package/dist/plugs/settings/keys/build.js.map +1 -0
- package/dist/plugs/settings/keys/index.cjs +612 -0
- package/dist/plugs/settings/keys/index.cjs.map +1 -0
- package/dist/plugs/settings/keys/index.js +34 -0
- package/dist/plugs/settings/keys/index.js.map +1 -0
- package/dist/plugs/settings/keys/types.cjs +19 -0
- package/dist/plugs/settings/keys/types.cjs.map +1 -0
- package/dist/plugs/settings/keys/types.js +1 -0
- package/dist/plugs/settings/keys/types.js.map +1 -0
- package/dist/plugs/settings/locked/build.cjs +92 -0
- package/dist/plugs/settings/locked/build.cjs.map +1 -0
- package/dist/plugs/settings/locked/build.js +9 -0
- package/dist/plugs/settings/locked/build.js.map +1 -0
- package/dist/plugs/settings/locked/index.cjs +532 -0
- package/dist/plugs/settings/locked/index.cjs.map +1 -0
- package/dist/plugs/settings/locked/index.js +25 -0
- package/dist/plugs/settings/locked/index.js.map +1 -0
- package/dist/plugs/settings/locked/types.cjs +19 -0
- package/dist/plugs/settings/locked/types.cjs.map +1 -0
- package/dist/plugs/settings/locked/types.js +1 -0
- package/dist/plugs/settings/locked/types.js.map +1 -0
- package/dist/plugs/settings/metadata/build.cjs +29 -0
- package/dist/plugs/settings/metadata/build.cjs.map +1 -0
- package/dist/plugs/settings/metadata/build.js +8 -0
- package/dist/plugs/settings/metadata/build.js.map +1 -0
- package/dist/plugs/settings/metadata/index.cjs +455 -0
- package/dist/plugs/settings/metadata/index.cjs.map +1 -0
- package/dist/plugs/settings/metadata/index.js +24 -0
- package/dist/plugs/settings/metadata/index.js.map +1 -0
- package/dist/plugs/settings/metadata/types.cjs +19 -0
- package/dist/plugs/settings/metadata/types.cjs.map +1 -0
- package/dist/plugs/settings/metadata/types.js +1 -0
- package/dist/plugs/settings/metadata/types.js.map +1 -0
- package/dist/plugs/settings/modes/build.cjs +162 -0
- package/dist/plugs/settings/modes/build.cjs.map +1 -0
- package/dist/plugs/settings/modes/build.js +22 -0
- package/dist/plugs/settings/modes/build.js.map +1 -0
- package/dist/plugs/settings/modes/fullscreen.cjs +625 -0
- package/dist/plugs/settings/modes/fullscreen.cjs.map +1 -0
- package/dist/plugs/settings/modes/fullscreen.js +30 -0
- package/dist/plugs/settings/modes/fullscreen.js.map +1 -0
- package/dist/plugs/settings/modes/index.cjs +1031 -0
- package/dist/plugs/settings/modes/index.cjs.map +1 -0
- package/dist/plugs/settings/modes/index.js +51 -0
- package/dist/plugs/settings/modes/index.js.map +1 -0
- package/dist/plugs/settings/modes/miniplayer.cjs +618 -0
- package/dist/plugs/settings/modes/miniplayer.cjs.map +1 -0
- package/dist/plugs/settings/modes/miniplayer.js +30 -0
- package/dist/plugs/settings/modes/miniplayer.js.map +1 -0
- package/dist/plugs/settings/modes/pictureInPicture.cjs +704 -0
- package/dist/plugs/settings/modes/pictureInPicture.cjs.map +1 -0
- package/dist/plugs/settings/modes/pictureInPicture.js +30 -0
- package/dist/plugs/settings/modes/pictureInPicture.js.map +1 -0
- package/dist/plugs/settings/modes/theater.cjs +557 -0
- package/dist/plugs/settings/modes/theater.cjs.map +1 -0
- package/dist/plugs/settings/modes/theater.js +30 -0
- package/dist/plugs/settings/modes/theater.js.map +1 -0
- package/dist/plugs/settings/modes/types.cjs +19 -0
- package/dist/plugs/settings/modes/types.cjs.map +1 -0
- package/dist/plugs/settings/modes/types.js +1 -0
- package/dist/plugs/settings/modes/types.js.map +1 -0
- package/dist/plugs/settings/notifiers/build.cjs +30 -0
- package/dist/plugs/settings/notifiers/build.cjs.map +1 -0
- package/dist/plugs/settings/notifiers/build.js +8 -0
- package/dist/plugs/settings/notifiers/build.js.map +1 -0
- package/dist/plugs/settings/notifiers/index.cjs +451 -0
- package/dist/plugs/settings/notifiers/index.cjs.map +1 -0
- package/dist/plugs/settings/notifiers/index.js +24 -0
- package/dist/plugs/settings/notifiers/index.js.map +1 -0
- package/dist/plugs/settings/notifiers/types.cjs +19 -0
- package/dist/plugs/settings/notifiers/types.cjs.map +1 -0
- package/dist/plugs/settings/notifiers/types.js +1 -0
- package/dist/plugs/settings/notifiers/types.js.map +1 -0
- package/dist/plugs/settings/objectFit/build.cjs +35 -0
- package/dist/plugs/settings/objectFit/build.cjs.map +1 -0
- package/dist/plugs/settings/objectFit/build.js +10 -0
- package/dist/plugs/settings/objectFit/build.js.map +1 -0
- package/dist/plugs/settings/objectFit/index.cjs +514 -0
- package/dist/plugs/settings/objectFit/index.cjs.map +1 -0
- package/dist/plugs/settings/objectFit/index.js +30 -0
- package/dist/plugs/settings/objectFit/index.js.map +1 -0
- package/dist/plugs/settings/objectFit/types.cjs +19 -0
- package/dist/plugs/settings/objectFit/types.cjs.map +1 -0
- package/dist/plugs/settings/objectFit/types.js +1 -0
- package/dist/plugs/settings/objectFit/types.js.map +1 -0
- package/dist/plugs/settings/overlay/build.cjs +46 -0
- package/dist/plugs/settings/overlay/build.cjs.map +1 -0
- package/dist/plugs/settings/overlay/build.js +8 -0
- package/dist/plugs/settings/overlay/build.js.map +1 -0
- package/dist/plugs/settings/overlay/index.cjs +502 -0
- package/dist/plugs/settings/overlay/index.cjs.map +1 -0
- package/dist/plugs/settings/overlay/index.js +24 -0
- package/dist/plugs/settings/overlay/index.js.map +1 -0
- package/dist/plugs/settings/overlay/types.cjs +19 -0
- package/dist/plugs/settings/overlay/types.cjs.map +1 -0
- package/dist/plugs/settings/overlay/types.js +1 -0
- package/dist/plugs/settings/overlay/types.js.map +1 -0
- package/dist/plugs/settings/persist/build.cjs +41 -0
- package/dist/plugs/settings/persist/build.cjs.map +1 -0
- package/dist/plugs/settings/persist/build.js +8 -0
- package/dist/plugs/settings/persist/build.js.map +1 -0
- package/dist/plugs/settings/persist/index.cjs +413 -0
- package/dist/plugs/settings/persist/index.cjs.map +1 -0
- package/dist/plugs/settings/persist/index.js +22 -0
- package/dist/plugs/settings/persist/index.js.map +1 -0
- package/dist/plugs/settings/persist/types.cjs +19 -0
- package/dist/plugs/settings/persist/types.cjs.map +1 -0
- package/dist/plugs/settings/persist/types.js +1 -0
- package/dist/plugs/settings/persist/types.js.map +1 -0
- package/dist/plugs/settings/playbackRate/build.cjs +32 -0
- package/dist/plugs/settings/playbackRate/build.cjs.map +1 -0
- package/dist/plugs/settings/playbackRate/build.js +8 -0
- package/dist/plugs/settings/playbackRate/build.js.map +1 -0
- package/dist/plugs/settings/playbackRate/index.cjs +448 -0
- package/dist/plugs/settings/playbackRate/index.cjs.map +1 -0
- package/dist/plugs/settings/playbackRate/index.js +23 -0
- package/dist/plugs/settings/playbackRate/index.js.map +1 -0
- package/dist/plugs/settings/playbackRate/types.cjs +19 -0
- package/dist/plugs/settings/playbackRate/types.cjs.map +1 -0
- package/dist/plugs/settings/playbackRate/types.js +1 -0
- package/dist/plugs/settings/playbackRate/types.js.map +1 -0
- package/dist/plugs/settings/poster/build.cjs +29 -0
- package/dist/plugs/settings/poster/build.cjs.map +1 -0
- package/dist/plugs/settings/poster/build.js +8 -0
- package/dist/plugs/settings/poster/build.js.map +1 -0
- package/dist/plugs/settings/poster/index.cjs +435 -0
- package/dist/plugs/settings/poster/index.cjs.map +1 -0
- package/dist/plugs/settings/poster/index.js +24 -0
- package/dist/plugs/settings/poster/index.js.map +1 -0
- package/dist/plugs/settings/poster/types.cjs +19 -0
- package/dist/plugs/settings/poster/types.cjs.map +1 -0
- package/dist/plugs/settings/poster/types.js +1 -0
- package/dist/plugs/settings/poster/types.js.map +1 -0
- package/dist/plugs/settings/settingsView/build.cjs +35 -0
- package/dist/plugs/settings/settingsView/build.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/build.js +8 -0
- package/dist/plugs/settings/settingsView/build.js.map +1 -0
- package/dist/plugs/settings/settingsView/index.cjs +1369 -0
- package/dist/plugs/settings/settingsView/index.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/index.js +42 -0
- package/dist/plugs/settings/settingsView/index.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/index.cjs +1164 -0
- package/dist/plugs/settings/settingsView/menu/index.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/index.js +36 -0
- package/dist/plugs/settings/settingsView/menu/index.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/panel/index.cjs +144 -0
- package/dist/plugs/settings/settingsView/menu/panel/index.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/panel/index.js +16 -0
- package/dist/plugs/settings/settingsView/menu/panel/index.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/panel/main.cjs +524 -0
- package/dist/plugs/settings/settingsView/menu/panel/main.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/panel/main.js +33 -0
- package/dist/plugs/settings/settingsView/menu/panel/main.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/panel/sub.cjs +617 -0
- package/dist/plugs/settings/settingsView/menu/panel/sub.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/panel/sub.js +33 -0
- package/dist/plugs/settings/settingsView/menu/panel/sub.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/base.cjs +357 -0
- package/dist/plugs/settings/settingsView/menu/widgets/base.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/base.js +19 -0
- package/dist/plugs/settings/settingsView/menu/widgets/base.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/button.cjs +392 -0
- package/dist/plugs/settings/settingsView/menu/widgets/button.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/button.js +20 -0
- package/dist/plugs/settings/settingsView/menu/widgets/button.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/color.cjs +498 -0
- package/dist/plugs/settings/settingsView/menu/widgets/color.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/color.js +31 -0
- package/dist/plugs/settings/settingsView/menu/widgets/color.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/dragselect.cjs +563 -0
- package/dist/plugs/settings/settingsView/menu/widgets/dragselect.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/dragselect.js +31 -0
- package/dist/plugs/settings/settingsView/menu/widgets/dragselect.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/group.cjs +500 -0
- package/dist/plugs/settings/settingsView/menu/widgets/group.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/group.js +31 -0
- package/dist/plugs/settings/settingsView/menu/widgets/group.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/index.cjs +912 -0
- package/dist/plugs/settings/settingsView/menu/widgets/index.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/index.js +53 -0
- package/dist/plugs/settings/settingsView/menu/widgets/index.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/input.cjs +409 -0
- package/dist/plugs/settings/settingsView/menu/widgets/input.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/input.js +31 -0
- package/dist/plugs/settings/settingsView/menu/widgets/input.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/limits.cjs +411 -0
- package/dist/plugs/settings/settingsView/menu/widgets/limits.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/limits.js +31 -0
- package/dist/plugs/settings/settingsView/menu/widgets/limits.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/range.cjs +420 -0
- package/dist/plugs/settings/settingsView/menu/widgets/range.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/range.js +31 -0
- package/dist/plugs/settings/settingsView/menu/widgets/range.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/select.cjs +490 -0
- package/dist/plugs/settings/settingsView/menu/widgets/select.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/select.js +31 -0
- package/dist/plugs/settings/settingsView/menu/widgets/select.js.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/toggle.cjs +401 -0
- package/dist/plugs/settings/settingsView/menu/widgets/toggle.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/menu/widgets/toggle.js +31 -0
- package/dist/plugs/settings/settingsView/menu/widgets/toggle.js.map +1 -0
- package/dist/plugs/settings/settingsView/types.cjs +19 -0
- package/dist/plugs/settings/settingsView/types.cjs.map +1 -0
- package/dist/plugs/settings/settingsView/types.js +1 -0
- package/dist/plugs/settings/settingsView/types.js.map +1 -0
- package/dist/plugs/settings/sleepTimer/build.cjs +29 -0
- package/dist/plugs/settings/sleepTimer/build.cjs.map +1 -0
- package/dist/plugs/settings/sleepTimer/build.js +8 -0
- package/dist/plugs/settings/sleepTimer/build.js.map +1 -0
- package/dist/plugs/settings/sleepTimer/index.cjs +431 -0
- package/dist/plugs/settings/sleepTimer/index.cjs.map +1 -0
- package/dist/plugs/settings/sleepTimer/index.js +24 -0
- package/dist/plugs/settings/sleepTimer/index.js.map +1 -0
- package/dist/plugs/settings/sleepTimer/types.cjs +19 -0
- package/dist/plugs/settings/sleepTimer/types.cjs.map +1 -0
- package/dist/plugs/settings/sleepTimer/types.js +2 -0
- package/dist/plugs/settings/sleepTimer/types.js.map +1 -0
- package/dist/plugs/settings/time/build.cjs +32 -0
- package/dist/plugs/settings/time/build.cjs.map +1 -0
- package/dist/plugs/settings/time/build.js +8 -0
- package/dist/plugs/settings/time/build.js.map +1 -0
- package/dist/plugs/settings/time/index.cjs +604 -0
- package/dist/plugs/settings/time/index.cjs.map +1 -0
- package/dist/plugs/settings/time/index.js +29 -0
- package/dist/plugs/settings/time/index.js.map +1 -0
- package/dist/plugs/settings/time/types.cjs +19 -0
- package/dist/plugs/settings/time/types.cjs.map +1 -0
- package/dist/plugs/settings/time/types.js +1 -0
- package/dist/plugs/settings/time/types.js.map +1 -0
- package/dist/plugs/settings/timeTravel/build.cjs +36 -0
- package/dist/plugs/settings/timeTravel/build.cjs.map +1 -0
- package/dist/plugs/settings/timeTravel/build.js +8 -0
- package/dist/plugs/settings/timeTravel/build.js.map +1 -0
- package/dist/plugs/settings/timeTravel/index.cjs +461 -0
- package/dist/plugs/settings/timeTravel/index.cjs.map +1 -0
- package/dist/plugs/settings/timeTravel/index.js +33 -0
- package/dist/plugs/settings/timeTravel/index.js.map +1 -0
- package/dist/plugs/settings/timeTravel/types.cjs +19 -0
- package/dist/plugs/settings/timeTravel/types.cjs.map +1 -0
- package/dist/plugs/settings/timeTravel/types.js +1 -0
- package/dist/plugs/settings/timeTravel/types.js.map +1 -0
- package/dist/plugs/settings/toasts/build.cjs +35 -0
- package/dist/plugs/settings/toasts/build.cjs.map +1 -0
- package/dist/plugs/settings/toasts/build.js +8 -0
- package/dist/plugs/settings/toasts/build.js.map +1 -0
- package/dist/plugs/settings/toasts/index.cjs +450 -0
- package/dist/plugs/settings/toasts/index.cjs.map +1 -0
- package/dist/plugs/settings/toasts/index.js +26 -0
- package/dist/plugs/settings/toasts/index.js.map +1 -0
- package/dist/plugs/settings/toasts/types.cjs +19 -0
- package/dist/plugs/settings/toasts/types.cjs.map +1 -0
- package/dist/plugs/settings/toasts/types.js +1 -0
- package/dist/plugs/settings/toasts/types.js.map +1 -0
- package/dist/plugs/settings/voice/build.cjs +81 -0
- package/dist/plugs/settings/voice/build.cjs.map +1 -0
- package/dist/plugs/settings/voice/build.js +8 -0
- package/dist/plugs/settings/voice/build.js.map +1 -0
- package/dist/plugs/settings/voice/index.cjs +757 -0
- package/dist/plugs/settings/voice/index.cjs.map +1 -0
- package/dist/plugs/settings/voice/index.js +26 -0
- package/dist/plugs/settings/voice/index.js.map +1 -0
- package/dist/plugs/settings/voice/types.cjs +19 -0
- package/dist/plugs/settings/voice/types.cjs.map +1 -0
- package/dist/plugs/settings/voice/types.js +1 -0
- package/dist/plugs/settings/voice/types.js.map +1 -0
- package/dist/plugs/settings/volume/build.cjs +31 -0
- package/dist/plugs/settings/volume/build.cjs.map +1 -0
- package/dist/plugs/settings/volume/build.js +8 -0
- package/dist/plugs/settings/volume/build.js.map +1 -0
- package/dist/plugs/settings/volume/index.cjs +592 -0
- package/dist/plugs/settings/volume/index.cjs.map +1 -0
- package/dist/plugs/settings/volume/index.js +34 -0
- package/dist/plugs/settings/volume/index.js.map +1 -0
- package/dist/plugs/settings/volume/types.cjs +19 -0
- package/dist/plugs/settings/volume/types.cjs.map +1 -0
- package/dist/plugs/settings/volume/types.js +1 -0
- package/dist/plugs/settings/volume/types.js.map +1 -0
- package/dist/plugs/z-register.cjs +5901 -0
- package/dist/plugs/z-register.cjs.map +1 -0
- package/dist/plugs/z-register.js +105 -0
- package/dist/plugs/z-register.js.map +1 -0
- package/dist/super/components/icons.cjs +630 -0
- package/dist/super/components/icons.cjs.map +1 -0
- package/dist/super/components/icons.js +248 -0
- package/dist/super/components/icons.js.map +1 -0
- package/dist/super/components/index.cjs +3111 -0
- package/dist/super/components/index.cjs.map +1 -0
- package/dist/super/components/index.js +498 -0
- package/dist/super/components/index.js.map +1 -0
- package/dist/super/components/notifiers.cjs +784 -0
- package/dist/super/components/notifiers.cjs.map +1 -0
- package/dist/super/components/notifiers.js +96 -0
- package/dist/super/components/notifiers.js.map +1 -0
- package/dist/super/consts.cjs +289 -0
- package/dist/super/consts.cjs.map +1 -0
- package/dist/super/consts.js +28 -0
- package/dist/super/consts.js.map +1 -0
- package/dist/super/plugs/index.cjs +5988 -0
- package/dist/super/plugs/index.cjs.map +1 -0
- package/dist/super/plugs/index.js +388 -0
- package/dist/super/plugs/index.js.map +1 -0
- package/dist/super/plugs/menus.cjs +2572 -0
- package/dist/super/plugs/menus.cjs.map +1 -0
- package/dist/super/plugs/menus.js +132 -0
- package/dist/super/plugs/menus.js.map +1 -0
- package/dist/super/techs.cjs +256 -0
- package/dist/super/techs.cjs.map +1 -0
- package/dist/super/techs.js +32 -0
- package/dist/super/techs.js.map +1 -0
- package/dist/super/utils.cjs +1379 -0
- package/dist/super/utils.cjs.map +1 -0
- package/dist/super/utils.js +400 -0
- package/dist/super/utils.js.map +1 -0
- package/dist/super.cjs +10191 -0
- package/dist/super.cjs.map +1 -0
- package/dist/super.css +3148 -0
- package/dist/super.css.map +1 -0
- package/dist/super.global.js +12460 -0
- package/dist/super.global.js.map +1 -0
- package/dist/super.js +380 -0
- package/dist/super.js.map +1 -0
- package/dist/techs/base.cjs +256 -0
- package/dist/techs/base.cjs.map +1 -0
- package/dist/techs/base.js +19 -0
- package/dist/techs/base.js.map +1 -0
- package/dist/techs/dash.cjs +1160 -0
- package/dist/techs/dash.cjs.map +1 -0
- package/dist/techs/dash.js +24 -0
- package/dist/techs/dash.js.map +1 -0
- package/dist/techs/hls.cjs +1164 -0
- package/dist/techs/hls.cjs.map +1 -0
- package/dist/techs/hls.js +24 -0
- package/dist/techs/hls.js.map +1 -0
- package/dist/techs/html5.cjs +988 -0
- package/dist/techs/html5.cjs.map +1 -0
- package/dist/techs/html5.js +23 -0
- package/dist/techs/html5.js.map +1 -0
- package/dist/techs/shaka.cjs +1183 -0
- package/dist/techs/shaka.cjs.map +1 -0
- package/dist/techs/shaka.js +197 -0
- package/dist/techs/shaka.js.map +1 -0
- package/dist/techs/vimeo.cjs +731 -0
- package/dist/techs/vimeo.cjs.map +1 -0
- package/dist/techs/vimeo.js +24 -0
- package/dist/techs/vimeo.js.map +1 -0
- package/dist/techs/youtube.cjs +730 -0
- package/dist/techs/youtube.cjs.map +1 -0
- package/dist/techs/youtube.js +22 -0
- package/dist/techs/youtube.js.map +1 -0
- package/dist/techs/z-register.cjs +2354 -0
- package/dist/techs/z-register.cjs.map +1 -0
- package/dist/techs/z-register.js +26 -0
- package/dist/techs/z-register.js.map +1 -0
- package/dist/tools/player.cjs +1804 -0
- package/dist/tools/player.cjs.map +1 -0
- package/dist/tools/player.js +29 -0
- package/dist/tools/player.js.map +1 -0
- package/dist/tools/queue.cjs +63 -0
- package/dist/tools/queue.cjs.map +1 -0
- package/dist/tools/queue.js +8 -0
- package/dist/tools/queue.js.map +1 -0
- package/dist/tools/runtime.cjs +1919 -0
- package/dist/tools/runtime.cjs.map +1 -0
- package/dist/tools/runtime.js +49 -0
- package/dist/tools/runtime.js.map +1 -0
- package/dist/types/UIOptions.d.cjs +19 -0
- package/dist/types/UIOptions.d.cjs.map +1 -0
- package/dist/types/UIOptions.d.js +1 -0
- package/dist/types/UIOptions.d.js.map +1 -0
- package/dist/types/actions.d.cjs +19 -0
- package/dist/types/actions.d.cjs.map +1 -0
- package/dist/types/actions.d.js +1 -0
- package/dist/types/actions.d.js.map +1 -0
- package/dist/types/config.d.cjs +19 -0
- package/dist/types/config.d.cjs.map +1 -0
- package/dist/types/config.d.js +1 -0
- package/dist/types/config.d.js.map +1 -0
- package/dist/types/contract.d.cjs +19 -0
- package/dist/types/contract.d.cjs.map +1 -0
- package/dist/types/contract.d.js +1 -0
- package/dist/types/contract.d.js.map +1 -0
- package/dist/types/generics.d.cjs +19 -0
- package/dist/types/generics.d.cjs.map +1 -0
- package/dist/types/generics.d.js +1 -0
- package/dist/types/generics.d.js.map +1 -0
- package/dist/types/global.d.cjs +22 -0
- package/dist/types/global.d.cjs.map +1 -0
- package/dist/types/global.d.js +2 -0
- package/dist/types/global.d.js.map +1 -0
- package/dist/types/registries.d.cjs +19 -0
- package/dist/types/registries.d.cjs.map +1 -0
- package/dist/types/registries.d.js +1 -0
- package/dist/types/registries.d.js.map +1 -0
- package/dist/utils/color.cjs +111 -0
- package/dist/utils/color.cjs.map +1 -0
- package/dist/utils/color.js +21 -0
- package/dist/utils/color.js.map +1 -0
- package/dist/utils/dom.cjs +269 -0
- package/dist/utils/dom.cjs.map +1 -0
- package/dist/utils/dom.js +58 -0
- package/dist/utils/dom.js.map +1 -0
- package/dist/utils/env.cjs +110 -0
- package/dist/utils/env.cjs.map +1 -0
- package/dist/utils/env.js +56 -0
- package/dist/utils/env.js.map +1 -0
- package/dist/utils/file.cjs +176 -0
- package/dist/utils/file.cjs.map +1 -0
- package/dist/utils/file.js +20 -0
- package/dist/utils/file.js.map +1 -0
- package/dist/utils/fn.cjs +133 -0
- package/dist/utils/fn.cjs.map +1 -0
- package/dist/utils/fn.js +41 -0
- package/dist/utils/fn.js.map +1 -0
- package/dist/utils/keys.cjs +66 -0
- package/dist/utils/keys.cjs.map +1 -0
- package/dist/utils/keys.js +28 -0
- package/dist/utils/keys.js.map +1 -0
- package/dist/utils/match.cjs +119 -0
- package/dist/utils/match.cjs.map +1 -0
- package/dist/utils/match.js +30 -0
- package/dist/utils/match.js.map +1 -0
- package/dist/utils/media.cjs +546 -0
- package/dist/utils/media.cjs.map +1 -0
- package/dist/utils/media.js +84 -0
- package/dist/utils/media.js.map +1 -0
- package/dist/utils/methd.cjs +50 -0
- package/dist/utils/methd.cjs.map +1 -0
- package/dist/utils/methd.js +15 -0
- package/dist/utils/methd.js.map +1 -0
- package/dist/utils/num.cjs +92 -0
- package/dist/utils/num.cjs.map +1 -0
- package/dist/utils/num.js +22 -0
- package/dist/utils/num.js.map +1 -0
- package/dist/utils/obj.cjs +204 -0
- package/dist/utils/obj.cjs.map +1 -0
- package/dist/utils/obj.js +58 -0
- package/dist/utils/obj.js.map +1 -0
- package/dist/utils/str.cjs +134 -0
- package/dist/utils/str.cjs.map +1 -0
- package/dist/utils/str.js +35 -0
- package/dist/utils/str.js.map +1 -0
- package/dist/utils/time.cjs +103 -0
- package/dist/utils/time.cjs.map +1 -0
- package/dist/utils/time.js +11 -0
- package/dist/utils/time.js.map +1 -0
- package/package.json +124 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ts/components/controls/timeline/index.ts","../../../../src/ts/core/controllable.ts","../../../../../t007-tools/packages/utils/dist/chunk-ZALPHCSJ.js","../../../../src/ts/utils/obj.ts","../../../../src/ts/components/base/index.ts","../../../../src/ts/components/rangeinput/build.ts","../../../../src/ts/components/rangeinput/index.ts","../../../../src/ts/utils/dom.ts","../../../../src/ts/utils/num.ts","../../../../src/ts/utils/time.ts","../../../../src/ts/utils/env.ts","../../../../src/ts/utils/media.ts"],"sourcesContent":["import { RangeInput, RangeInputDiv, type RangeState } from \"@components/rangeinput\";\r\nimport type { TimelineConfig } from \"./types\";\r\nimport type { Controller } from \"@core/controller\";\r\nimport type { REvent } from \"sia-reactor\";\r\nimport type { CtlrMedia } from \"@defs/contract\";\r\nimport { formatMediaTime } from \"@utils/time\";\r\nimport { IS_MOBILE } from \"@utils/env\";\r\nimport { getMediaMax, getMediaProgress, getMediaTime } from \"@utils/media\";\r\nimport { createEl } from \"@utils/dom\";\r\nimport { setTimeout, requestAnimationFrame } from \"@utils/fn\";\r\nimport { safeNum } from \"@utils/num\";\r\nimport { isBool } from \"@t007/utils\";\r\nimport { silence } from \"sia-reactor/modules\";\r\n\r\nexport class Timeline extends RangeInput<TimelineConfig> {\r\n public static readonly componentName = \"timeline\"; // enforced name\r\n public static readonly isControl: boolean = true;\r\n public chaptersWrapper!: HTMLDivElement;\r\n public previewContainer!: HTMLDivElement;\r\n public previewImg!: HTMLDivElement;\r\n public previewCanvas!: HTMLCanvasElement;\r\n public thumbnailImg!: HTMLDivElement;\r\n public thumbnailCanvas!: HTMLCanvasElement;\r\n public previewContext: CanvasRenderingContext2D | null = null;\r\n public thumbnailContext: CanvasRenderingContext2D | null = null;\r\n protected wasPaused = false;\r\n protected scrubbingId = -1;\r\n protected get plug() {\r\n return this.ctlr.plug(\"settings.time\");\r\n }\r\n protected getProgress(time: number) {\r\n return getMediaProgress(this.media, time);\r\n }\r\n protected getTime(percent: number) {\r\n return getMediaTime(this.media, percent);\r\n }\r\n\r\n constructor(ctlr: Controller, config?: Partial<TimelineConfig>) {\r\n super(ctlr, config);\r\n }\r\n\r\n public override create() {\r\n // Variables Assignments\r\n this.element = super.create();\r\n this.el.dataset.controlId = this.name;\r\n this.previewContainer = createEl(\"div\", { className: \"tmg-media-preview-container\" });\r\n this.previewImg = createEl(\"div\", { className: \"tmg-media-preview\" });\r\n this.previewCanvas = createEl(\"canvas\", { className: \"tmg-media-preview\" });\r\n this.previewContext = this.previewCanvas.getContext(\"2d\", { alpha: false });\r\n this.thumbnailImg = createEl(\"div\", { className: \"tmg-media-thumbnail tmg-media-filtered tmg-media-object\" });\r\n this.thumbnailCanvas = createEl(\"canvas\", { className: \"tmg-media-thumbnail tmg-media-filtered tmg-media-object\" });\r\n this.thumbnailContext = this.thumbnailCanvas.getContext(\"2d\", { alpha: false });\r\n // DOM Injection\r\n this.el.classList.add(\"tmg-media-timeline-container\"), this.barsWrapper.classList.add(\"tmg-media-timeline-bars-wrapper\", \"tmg-media-timeline\"), this.thumbEl.classList.add(\"tmg-media-timeline-thumb\");\r\n this.previewContainer.append(this.previewImg, this.previewCanvas);\r\n return this.el.append(this.previewContainer), this.el; // parent handled element assignment\r\n }\r\n\r\n public override mount(): void {\r\n // DOM Injection\r\n this.ctlr.DOM.controlsContainer?.prepend(this.thumbnailImg, this.thumbnailCanvas);\r\n }\r\n\r\n public override wire(): void {\r\n super.wire();\r\n // Event Listeners\r\n this.media.pseudoElement.addEventListener(\"timeupdate\", this.syncCanvasPreviews, { signal: this.signal });\r\n // State Listeners\r\n this.state.on(\"scrubbing\", this.handleScrubbing, { signal: this.signal });\r\n this.state.on(\"previewing\", ({ value }) => (value ? (this.media.container.classList.add(\"tmg-media-previewing\"), this.clearCanvasPreviews()) : setTimeout(() => this.media.container.classList.remove(\"tmg-media-previewing\"), 0, this.signal)), { signal: this.signal });\r\n this.state.on(\"cancelScrub\", ({ value }) => this.ctlr.plug(\"settings.notifiers\")?.comp(\"cancelscrubnotifier\")?.el.classList.toggle(\"tmg-media-control-active\", value), { signal: this.signal });\r\n // Config --------\r\n this.config.on(\"previewValue\", this.syncPreviewText, { init: true, signal: this.signal });\r\n this.config.on(\"previews\", this.handlePreviews, { init: true, signal: this.signal });\r\n this.config.on(\"autopause\", ({ value }) => [this.thumbnailCanvas, this.thumbnailImg].forEach((el) => el.classList.toggle(\"tmg-media-control-hidden\", !value)), { init: true, signal: this.signal });\r\n this.config.on(\"compact\", ({ value }) => this.el.classList.toggle(\"tmg-media-control-compact\", value), { init: true, signal: this.signal });\r\n this.config.on(\"bufferMarks\", () => this.syncMarks(this.config.marks, true), { init: true, signal: this.signal });\r\n this.config.on(\"playedMarks\", () => this.syncMarks(this.config.marks, true), { init: true, signal: this.signal });\r\n // Ctlr Media Listeners\r\n this.media.on(\"state.paused\", ({ value }) => (!value ? this.ctlr.RAFLoop(`${this.config.label}Updating`, this.syncValue, this.signal) : this.ctlr.cancelRAFLoop(`${this.config.label}Updating`)), { init: this.ctlr.payload.wired, signal: this.signal });\r\n this.media.on(\"state.currentTime\", this.handleCurrentTime, { init: this.ctlr.payload.wired, signal: this.signal });\r\n this.media.on(\"intent.currentTime\", this.handleCurrentTime, { signal: this.signal }); // #APPRENTICE: folklore embodiment\r\n this.media.on(\"status.buffered\", this.handleBufferedStatus, { init: this.ctlr.payload.wired, signal: this.signal });\r\n this.media.on(\"status.played\", () => this.config.playedMarks && this.syncMarks(this.config.marks, true), { init: this.ctlr.payload.wired, signal: this.signal });\r\n this.media.on(\"status.duration\", ({ value }) => (this.el.ariaValueMax = String(Math.floor(value))), { init: this.ctlr.payload.wired, signal: this.signal });\r\n this.media.on(\"status.error\", ({ value }) => value && this.syncChunks(\"buffer\", 0), { init: this.ctlr.payload.wired, signal: this.signal });\r\n this.media.on(\"status.isLive\", ({ value }) => (this.config.readonly = value && !this.media.status.canSeekLive), { init: this.ctlr.payload.wired, signal: this.signal });\r\n this.media.on(\"status.canSeekLive\", ({ value }) => (this.config.readonly = !value && !!this.media.status.isLive), { init: this.ctlr.payload.wired, signal: this.signal });\r\n this.media.on(\"settings.metadata.chapterInfo\", this.handleMetadataChapterInfoSetting, { init: this.ctlr.payload.wired, signal: this.signal });\r\n // ---- Config --------\r\n this.ctlr.config.on(\"settings.time.format\", this.syncPreviewText, { init: true, signal: this.signal });\r\n this.ctlr.config.on(\"settings.time.mode\", this.syncPreviewText, { signal: this.signal });\r\n this.ctlr.config.on(\"settings.css.currentObjectWidth\", ({ value }) => (this.thumbnailCanvas.width = parseInt(value as string)), { init: true, signal: this.signal });\r\n this.ctlr.config.on(\"settings.css.currentObjectHeight\", ({ value }) => (this.thumbnailCanvas.height = parseInt(value as string)), { init: true, signal: this.signal });\r\n }\r\n protected override scrub(value: number, bypass?: boolean): boolean {\r\n return super.scrub(value, bypass) ? (!bypass && (this.media.intent.currentTime = safeNum(this.getTime(value / 100))), true) : false;\r\n }\r\n\r\n protected handleCurrentTime({ target, rejectable, resolved }: REvent<CtlrMedia, \"state.currentTime\" | \"intent.currentTime\">): void {\r\n if (this.state.scrubbing || (rejectable && !resolved)) return; // shouldn't mind `.scrubbing`; it's binded to `intent.currentTime` but base class `.value` just renders faster\r\n if (this.media.state.paused) this.syncValue(false, target.value);\r\n this.el.ariaValueText = `${formatMediaTime({ time: target.value, format: \"human-long\" })} of ${formatMediaTime({ time: this.media.status.duration, format: \"human-long\" })}`;\r\n } // !a full embodiment for near native range perf but close enough\r\n\r\n protected handleBufferedStatus({ value }: REvent<CtlrMedia, \"status.buffered\">): void {\r\n this.config.bufferMarks && this.syncMarks(this.config.marks, true);\r\n for (let i = 0; i < value.length; i++) if (value.start(value.length - 1 - i) < this.media.state.currentTime) return void this.syncChunks(\"buffer\", this.getPosValue(safeNum(value.end(value.length - 1 - i) / getMediaMax(this.media))));\r\n }\r\n\r\n public syncValue(auto = true, value = this.media.state.currentTime): void {\r\n if (auto && !this.ctlr.state.mediaIntersecting) return;\r\n if (!this.state.scrubbing) this.config.value = safeNum(this.getProgress(value)) * 100; // (value / safeNum(this.media.status.duration, 60))\r\n }\r\n\r\n protected handleScrubbing({ value }: REvent<RangeState, \"scrubbing\">): void {\r\n this.media.container.classList.toggle(\"tmg-media-scrubbing\", value);\r\n if (!value) {\r\n this.config.autopause && silence(() => (this.media.intent.paused = this.wasPaused));\r\n cancelAnimationFrame(this.scrubbingId);\r\n this.ctlr.plug(\"settings.notifiers\")?.comp(\"scrubnotifier\")?.inactive();\r\n } else {\r\n this.wasPaused = this.media.state.paused;\r\n this.scrubbingId = requestAnimationFrame(() => {\r\n this.config.autopause && silence(() => (this.media.intent.paused = true));\r\n IS_MOBILE && this.ctlr.plug(\"settings.notifiers\")?.comp(\"scrubnotifier\")?.active();\r\n }, this.signal);\r\n this.clearCanvasPreviews();\r\n }\r\n }\r\n protected handlePreviews({ target }: REvent<TimelineConfig, \"previews\">): void {\r\n const value = target.value === true ? {} : target.value;\r\n this.media.container.classList.toggle(\"tmg-media-no-previews\", !value || this.media.type !== \"video\");\r\n if (!value || this.media.type !== \"video\") return void (this.media.container.dataset.previewType = \"none\");\r\n const manual = value.address && (value.spf || (value.cols && value.rows)),\r\n type = manual ? (value.cols && value.rows ? \"sprite\" : \"image\") : \"canvas\";\r\n this.media.container.dataset.previewType = type;\r\n if (type === \"sprite\" && value.address) this.settings.css.currentPreviewUrl = this.settings.css.currentThumbnailUrl = `url(${value.address})`;\r\n else this.settings.css.currentPreviewPosition = this.settings.css.currentThumbnailPosition = \"center\";\r\n }\r\n\r\n protected handleMetadataChapterInfoSetting({ value }: REvent<CtlrMedia, \"settings.metadata.chapterInfo\">): void {\r\n if (!value || value.length < 2) return void (this.config.divs = []);\r\n const divs: RangeInputDiv[] = [];\r\n for (let i = 0, len = value.length; i < len; i++) divs.push({ value: (value[i].startTime / getMediaMax(this.media)) * 100, label: value[i].title });\r\n this.config.divs = divs;\r\n }\r\n\r\n public override stopScrubbing(): void {\r\n if (!this.state.scrubbing) return;\r\n if (!this.state.cancelScrub) this.media.intent.currentTime = this.getTime(this.config.value / 100);\r\n super.stopScrubbing();\r\n }\r\n\r\n protected onInput(_e: MouseEvent | PointerEvent, pos: number): void {\r\n this.ctlr.throttle(\r\n `${this.config.label}Previewing`,\r\n () => {\r\n this.syncElPos(this.previewContainer, !this.config.compact ? pos : 0.5, false, true);\r\n const previews = this.config.previews,\r\n type = this.media.container.dataset.previewType;\r\n if (type === \"sprite\" && previews && !isBool(previews) && previews.cols && previews.rows) {\r\n const frameIndex = Math.floor((pos * getMediaMax(this.media)) / (previews.spf || 1)) || 1,\r\n { cols, rows } = previews,\r\n clampedI = Math.min(frameIndex, cols * rows - 1),\r\n xPercent = ((clampedI % cols) * 100) / (cols - 1 || 1),\r\n yPercent = (Math.floor(clampedI / cols) * 100) / (rows - 1 || 1);\r\n if (!this.config.compact) this.settings.css.currentPreviewPosition = `${xPercent}% ${yPercent}%`;\r\n if (this.state.scrubbing && this.config.autopause) this.settings.css.currentThumbnailPosition = `${xPercent}% ${yPercent}%`;\r\n } else if (type === \"image\" && previews && !isBool(previews) && previews.address) {\r\n const frameIndex = Math.floor((pos * getMediaMax(this.media)) / (previews.spf || 1)) || 1,\r\n url = `url(${previews.address.replace(\"$\", String(frameIndex))})`;\r\n if (!this.config.compact) this.settings.css.currentPreviewUrl = url;\r\n if (this.state.scrubbing && this.config.autopause) this.settings.css.currentThumbnailUrl = url;\r\n } else if (previews && !this.ctlr.state.frameReadyPromise) this.media.pseudoElement.currentTime = safeNum(this.getTime(pos));\r\n },\r\n 30\r\n );\r\n }\r\n\r\n public syncPreviewText(): void {\r\n if (this.plug) this.previewContainer.dataset.previewText = `${this.plug.toTimeText(this.getTime(this.config.previewValue / 100), true)} ${this.getValueChunk(this.config.previewValue)?.label || \"\"}`.trim();\r\n }\r\n public syncCanvasPreviews(): void {\r\n if (!this.previewContext || !this.thumbnailContext || !this.media.status.loadedData || this.ctlr.state.frameReadyPromise || this.media.pseudoElement.readyState < 2) return;\r\n this.ctlr.throttle(\r\n \"canvasPreviewSync\",\r\n () => {\r\n this.previewCanvas.width = this.previewCanvas.clientWidth || this.previewCanvas.width;\r\n this.previewCanvas.height = this.previewCanvas.clientHeight || this.previewCanvas.height;\r\n if (!this.config.compact) this.previewContext!.drawImage(this.media.pseudoElement as HTMLVideoElement, 0, 0, this.previewCanvas.width, this.previewCanvas.height);\r\n if (this.state.scrubbing && this.config.autopause) this.thumbnailContext!.drawImage(this.media.pseudoElement as HTMLVideoElement, 0, 0, this.thumbnailCanvas.width, this.thumbnailCanvas.height);\r\n },\r\n 33\r\n );\r\n }\r\n public clearCanvasPreviews(bool = this.media.container.dataset.previewType === \"canvas\" && this.media.pseudoElement.readyState < 2): void {\r\n bool && (this.ctlr.setCanvasFallback(this.previewCanvas, this.previewContext), this.ctlr.setCanvasFallback(this.thumbnailCanvas, this.thumbnailContext));\r\n }\r\n\r\n protected override syncDivs(divs = this.config.divs): void {\r\n super.syncDivs(divs);\r\n for (let i = 0, len = this.chunks.length; i < len; i++) {\r\n const c = this.chunks[i];\r\n c.el.classList.add(\"tmg-media-timeline-chapter\"), c.base.classList.add(\"tmg-media-timeline-base-bar\", \"tmg-media-timeline-bar\"), c.preview.classList.add(\"tmg-media-timeline-preview-bar\", \"tmg-media-timeline-bar\"), c.value.classList.add(\"tmg-media-timeline-played-bar\", \"tmg-media-timeline-bar\");\r\n c.el.insertBefore((c.buffer = createEl(\"div\", { className: \"tmg-media-range-bar tmg-media-buffered-bar tmg-media-timeline-buffered-bar tmg-media-timeline-bar\" })), c.value);\r\n }\r\n this.handleBufferedStatus({ value: this.media.status.buffered } as REvent<CtlrMedia, \"status.buffered\">);\r\n }\r\n protected override syncMarks(marks = this.config.marks, extras = false): void {\r\n if (extras && !this.ctlr.payload.wired) return;\r\n const agg = [...marks],\r\n buf = this.media.status.buffered,\r\n ply = this.media.status.played,\r\n max = getMediaMax(this.media) || 1;\r\n if (this.config.bufferMarks)\r\n for (let i = 0, len = buf.length; i < len; i++) {\r\n const start = buf.start(i),\r\n end = buf.end(i);\r\n agg.push({ start: (start / max) * 100, end: (end / max) * 100, label: `${formatMediaTime({ time: start })}${end > start + 1 ? ` - ${formatMediaTime({ time: end })}` : \"\"} Loaded`, type: \"buffered\" });\r\n }\r\n if (this.config.playedMarks)\r\n for (let i = 0, len = ply.length; i < len; i++) {\r\n const start = ply.start(i),\r\n end = ply.end(i);\r\n agg.push({ start: (start / max) * 100, end: (end / max) * 100, label: `${formatMediaTime({ time: start })}${end > start + 1 ? ` - ${formatMediaTime({ time: end })}` : \"\"} Played`, type: \"played\" });\r\n }\r\n super.syncMarks(agg); // all weightless logic\r\n }\r\n}\r\n\r\nexport type * from \"./types\";\r\n\r\ndeclare module \"@defs/registries\" {\r\n interface ComponentRegistryMap {\r\n timeline: typeof Timeline;\r\n }\r\n}\r\n","import { Controller } from \"./controller\";\r\nimport { type Reactive, reactive } from \"sia-reactor\";\r\nimport { nuke } from \"sia-reactor/utils\";\r\nimport { guardAllMethods } from \"@utils/methd\";\r\nimport { isObj } from \"@utils/obj\";\r\nimport { isFunc } from \"@t007/utils\";\r\n\r\n// A lifecylce controlled by it's Controller\r\n// Try to use methods for most things so they can be customized when extended and also auto guarded\r\nexport abstract class Controllable<Config = any, State = any> {\r\n protected readonly ac = new AbortController();\r\n protected readonly signal = this.ac.signal;\r\n public readonly ctlr: Controller;\r\n public readonly media: Controller[\"media\"];\r\n public readonly state!: State extends object ? Reactive<State> : State; // for reactivity needs of those who pass it up\r\n public config: Config; // may be a reactive obj node or the obj itself\r\n public get settings() {\r\n return this.ctlr.settings; // can change ref\r\n } // for easy reach, better devx\r\n\r\n constructor(ctlr: Controller, config: Config, state?: State) {\r\n guardAllMethods(this, ctlr.guard);\r\n this.signal = AbortSignal.any([this.signal, ctlr.signal]);\r\n this.ctlr = ctlr;\r\n this.media = ctlr.media; // can't change ref\r\n this.state = (isObj(state) ? reactive(state) : state) as Controllable[\"state\"];\r\n this.config = config;\r\n }\r\n\r\n public setup(): this {\r\n return this.onSetup(), this; // We let the subclass do its work\r\n }\r\n protected abstract onSetup(): void;\r\n\r\n public destroy(): void {\r\n !this.signal.aborted && this.ac.abort(`[TMG Controllable] Instance is being destroyed`); // incase controller already aborted, kills all listeners and timers before proper destruction below\r\n this.onDestroy(), (this.state as any)?.destroy?.(), this.config !== this.media && isFunc((this.config as any)?.destroy) && (this.config as any)?.destroy?.(); // Can I clean here?... Anatoly :)\r\n nuke(this);\r\n }\r\n protected onDestroy(): void {}\r\n}\r\n","// src/ts/core/dom.ts\nimport { createEl, assignEl } from \"sia-reactor/utils\";\nimport { getActiveEl } from \"sia-reactor/utils\";\nimport { NOOP } from \"sia-reactor\";\nvar INTERACTIVE_SELECTOR = \":is(button,[href],input:not([type='hidden']),select,textarea,details>summary,[contenteditable],iframe,audio[controls],video[controls],[tabindex]):not([disabled],[tabindex='-1'],[data-focus-guard],[inert],[inert] *)\";\nvar isInteractive = (target) => target instanceof HTMLElement && target.matches(INTERACTIVE_SELECTOR);\nvar VIRTUAL_RESOURCE = /* @__PURE__ */ Symbol.for(\"T007_VIRTUAL_RESOURCE\");\nfunction loadResource(req, type = \"style\", { module, media, crossOrigin, integrity, referrerPolicy, nonce, fetchPriority, attempts = 3, retryKey = false } = {}, win = window) {\n win.t007 ??= {}, win.t007._resourceCache ??= {};\n if (req === VIRTUAL_RESOURCE || isSym(req)) return Promise.resolve();\n const src = req;\n if (win.t007._resourceCache[src]) return win.t007._resourceCache[src];\n const existing = type === \"script\" ? Array.prototype.find.call(win.document.scripts, (s) => isSameURL(s.src, src)) : type === \"style\" ? Array.prototype.find.call(win.document.styleSheets, (s) => isSameURL(s.href, src)) : null;\n if (existing) return win.t007._resourceCache[src] = Promise.resolve(existing);\n win.t007._resourceCache[src] = new Promise((resolve, reject) => {\n (function tryLoad(remaining, el) {\n const onerror = () => {\n el?.remove?.();\n if (remaining > 1) {\n setTimeout(tryLoad, 1e3, remaining - 1);\n console.warn(`Retrying ${type} load for \"${src}\" (${attempts - remaining + 1})...`);\n } else {\n delete win.t007._resourceCache[src];\n reject(new Error(`${capitalize(type)} load failed for \"${src}\" after ${attempts - 1} attempts`));\n }\n };\n const url = retryKey && remaining < attempts ? `${src}${src.includes(\"?\") ? \"&\" : \"?\"}_${retryKey}=${Date.now()}` : src;\n if (type === \"script\") win.document.body.append(el = createEl(\"script\", { src: url, type: module ? \"module\" : \"text/javascript\", crossOrigin, integrity, referrerPolicy, nonce, fetchPriority, onload: () => resolve(el), onerror }) || \"\");\n else if (type === \"style\") win.document.head.append(el = createEl(\"link\", { rel: \"stylesheet\", href: url, media, crossOrigin, integrity, referrerPolicy, nonce, fetchPriority, onload: () => resolve(el), onerror }) || \"\");\n else reject(new Error(`Unsupported resource type: ${type}`));\n })(attempts);\n });\n return win.t007._resourceCache[src];\n}\nfunction getWindow(el = window) {\n return el?.ownerDocument?.defaultView ?? el?.defaultView ?? window;\n}\nfunction createListRenderer({ container, getKey, createNode, updateNode = NOOP, destroyNode = NOOP, initNode }) {\n let nodeRegistry = /* @__PURE__ */ new Map();\n if (initNode) {\n const children = Array.from(container.children);\n for (let i = 0, len = children.length; i < len; i++) initNode(children[i], (key) => nodeRegistry.set(key, children[i]));\n }\n return function syncDOM(array, strict = true) {\n const newRegistry = /* @__PURE__ */ new Map(), seenKeys = /* @__PURE__ */ new Set(), oldPositions = /* @__PURE__ */ new WeakMap(), children = Array.from(container.children);\n for (let i = 0, len = children.length; i < len; i++) oldPositions.set(children[i], i);\n const futureNodes = [], oldIndices = [];\n for (let i = 0, len = array.length; i < len; i++) {\n const item = array[i], key = getKey(item);\n if (seenKeys.has(key)) throw new Error(`[List Renderer] Duplicate key \"${key}\" detected`);\n let node = nodeRegistry.get(key);\n if (!node) {\n node = createNode(item);\n if (!node) {\n if (strict) throw new Error(`[List Renderer] No HTMLElement for key \"${key}\"`);\n continue;\n }\n oldIndices.push(-1);\n } else updateNode(node, item), oldIndices.push(oldPositions.get(node) ?? -1);\n seenKeys.add(key), futureNodes.push(node), newRegistry.set(key, node);\n }\n for (const [key, node] of nodeRegistry.entries()) !seenKeys.has(key) && node.parentElement === container && (destroyNode(node, key), node.remove());\n const sequence = longestIncreasingSubsequence(oldIndices), stable = new Set(sequence);\n let anchor = null;\n for (let i = futureNodes.length - 1; i >= 0; i--) {\n const node = futureNodes[i];\n if (oldIndices[i] !== -1 && stable.has(i)) {\n anchor = node;\n continue;\n }\n container.insertBefore(node, anchor), anchor = node;\n }\n nodeRegistry = newRegistry;\n };\n}\n\n// src/ts/index.ts\nimport { NIL, NOOP as NOOP2 } from \"sia-reactor\";\n\n// src/ts/core/obj.ts\nimport { isObj } from \"sia-reactor/utils\";\nfunction isDef(val) {\n return \"undefined\" !== typeof val;\n}\nfunction isSym(val) {\n return \"symbol\" === typeof val;\n}\nfunction isBool(val) {\n return \"boolean\" === typeof val;\n}\nfunction isNum(val) {\n return \"number\" === typeof val;\n}\nfunction isStr(val) {\n return \"string\" === typeof val;\n}\nfunction isArr(obj) {\n return Array.isArray(obj);\n}\nfunction isPOJO(obj, crossRealms = false, typecheck = true) {\n return (typecheck ? isObj(obj, false) : true) && (crossRealms ? Object.prototype.toString.call(obj) === \"[object Object]\" : obj.constructor === Object);\n}\nfunction isIter(obj) {\n return obj != null && \"function\" === typeof obj[Symbol.iterator];\n}\nfunction isFunc(val) {\n return \"function\" === typeof val;\n}\nfunction inBoolArrOpt(opt, str) {\n return opt?.includes?.(str) ?? opt;\n}\n\n// src/ts/core/num.ts\nimport { clamp } from \"sia-reactor/utils\";\nfunction longestIncreasingSubsequence(array) {\n const n = array.length, parent = new Array(n), tails = [];\n for (let i = 0; i < n; i++) {\n const value = array[i];\n if (value === -1) continue;\n let left = 0;\n let right = tails.length;\n while (left < right) {\n const mid = left + right >> 1;\n if (array[tails[mid]] < value) left = mid + 1;\n else right = mid;\n }\n if (left > 0) parent[i] = tails[left - 1];\n else parent[i] = -1;\n tails[left] = i;\n }\n if (!tails.length) return [];\n const result = [];\n let k = tails[tails.length - 1];\n while (k >= 0) result.push(k), k = parent[k];\n return result.reverse(), result;\n}\n\n// src/ts/core/str.ts\nfunction uid(prefix = \"\") {\n return prefix + Date.now().toString(36) + \"_\" + performance.now().toString(36).replace(\".\", \"\") + \"_\" + Math.random().toString(36).slice(2);\n}\nfunction capitalize(word = \"\") {\n return word.replace(/^(\\s*)([a-z])/i, (_, s, l) => s + l.toUpperCase());\n}\nfunction camelize(str = \"\", { source } = /[\\s_-]+/, { preserveInnerCase: pIC = true, upperFirst: uF = false } = {}) {\n return (pIC ? str : str.toLowerCase()).replace(new RegExp(source + \"(\\\\w)\", \"g\"), (_, c) => c.toUpperCase()).replace(/^\\w/, (c) => c[uF ? \"toUpperCase\" : \"toLowerCase\"]());\n}\nfunction uncamelize(str, separator = \" \") {\n return str.replace(/([a-z])([A-Z])/g, `$1${separator}$2`).toLowerCase();\n}\nfunction remToPx(rem, el = document.documentElement) {\n return rem * parseFloat(getComputedStyle(el).fontSize);\n}\nfunction pxToRem(px, el = document.documentElement) {\n return px / parseFloat(getComputedStyle(el).fontSize);\n}\nfunction parseCSSTime(time) {\n return time?.endsWith?.(\"ms\") ? parseFloat(time) : parseFloat(time) * 1e3;\n}\nfunction parseCSSSize(size, el) {\n return size?.endsWith?.(\"px\") ? parseFloat(size) : remToPx(parseFloat(size), el);\n}\nfunction cleanURL(url) {\n try {\n const u = new URL(url, window.location.href);\n return decodeURIComponent(u.origin + u.pathname);\n } catch {\n return url.replace(/\\\\/g, \"/\").split(\"?\")[0].trim();\n }\n}\nfunction isSameURL(url1, url2) {\n if (url1 === url2) return true;\n if (!isStr(url1) || !isStr(url2) || !url1 || !url2) return false;\n return cleanURL(url1) === cleanURL(url2);\n}\n\n// src/ts/core/fn.ts\nimport { setTimeout as setTimeout2, setInterval, requestAnimationFrame } from \"sia-reactor/utils\";\nfunction throttle(key, fn, delay = 30, strict = true, signal, win) {\n const throttleMap = t007._throttlers ??= /* @__PURE__ */ new Map();\n if (strict === true) {\n const now = performance.now();\n return now - (throttleMap.get(key) ?? 0) < delay ? void 0 : (throttleMap.set(key, now), fn());\n }\n if (throttleMap.has(key)) return;\n const id = strict === false ? setTimeout2(() => throttleMap.delete(key), delay, signal, win) : strict(() => throttleMap.delete(key));\n return throttleMap.set(key, id), fn();\n}\nfunction debounce(key, fn, delay = 30, strict = true, signal, win) {\n const debounceMap = t007._debouncers ??= /* @__PURE__ */ new Map();\n if (strict) {\n const now = performance.now(), prev = debounceMap.get(key) ?? 0;\n return debounceMap.set(key, now), now - prev < delay ? void 0 : fn();\n }\n const prevId = debounceMap.get(key);\n prevId !== void 0 && (win ?? window).clearTimeout(prevId);\n const id = setTimeout2(() => (debounceMap.delete(key), fn()), delay, signal, win);\n return void debounceMap.set(key, id);\n}\nfunction RAFLoop(key, fn, signal, win) {\n const rafLoopMap = t007._RAFLoopers ??= /* @__PURE__ */ new Map();\n if (rafLoopMap.has(key)) return void rafLoopMap.set(key, fn);\n rafLoopMap.set(key, fn);\n const loop = (_ = 0, fn2 = rafLoopMap.get(key)) => fn2 && (fn2(), requestAnimationFrame(loop, signal, win));\n loop();\n}\nvar cancelRAFLoop = (key) => t007._RAFLoopers ? t007._RAFLoopers.delete(key) : false;\nfunction limited(FN_KEY, fn, opts = {}) {\n let count = 0, { key, maxTimes: max = 1, oncePerSession = true } = isStr(opts) ? { key: opts } : opts;\n const getReg = () => JSON.parse(localStorage.getItem(FN_KEY) || \"{}\"), setReg = (r) => localStorage.setItem(FN_KEY, JSON.stringify(r));\n const handle = (...args) => {\n if (oncePerSession && count > 0) return void 0;\n if (!key) return count++ < max ? fn(...args) : void 0;\n const r = getReg(), c = r[key] || 0;\n return c < max ? (count++, r[key] = c + 1, setReg(r), fn(...args)) : void 0;\n };\n handle.left = max - (handle.count = count);\n handle.reset = () => (count = 0, key && ((r) => (delete r[key], setReg(r)))(getReg()));\n handle.block = () => (count = max, key && ((r) => (r[key] = max, setReg(r)))(getReg()));\n return handle;\n}\nvar mockAsync = (timeout = 250) => new Promise((resolve) => setTimeout2(resolve, timeout));\nvar breath = (w = window) => new Promise((res) => w.requestAnimationFrame(res));\nvar deepBreath = (w = window) => new Promise((res) => w.requestAnimationFrame(() => w.requestAnimationFrame(res)));\nfunction bindCleanupToSignal(cleanup, signal) {\n signal?.aborted ? cleanup() : signal?.addEventListener(\"abort\", cleanup, { once: true });\n if (signal && !signal.aborted) cleanup = (() => (signal.removeEventListener(\"abort\", cleanup), cleanup()));\n return cleanup;\n}\n\n// src/ts/core/keys.ts\nimport { KEYS_BLOCKS, parseKeyCombo, stringifyKeyEvent, cleanKeyCombo, matchKeys, getTermsForKey, keyEventAllowed, formatKeyForDisplay, formatKeyShortcutsForDisplay, parseForARIAKS } from \"sia-reactor/utils\";\n\n// src/ts/core/file.ts\nfunction formatSize(bytes, decimals = 3, base = 1e3) {\n if (bytes < base) return `${bytes} byte${bytes == 1 ? \"\" : \"s\"}`;\n const units = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\", \"EB\", \"ZB\", \"YB\"], exponent = Math.min(Math.floor(Math.log(bytes) / Math.log(base)), units.length - 1);\n return `${(bytes / Math.pow(base, exponent)).toFixed(decimals).replace(/\\.0+$/, \"\")} ${units[exponent]}`;\n}\n\n// src/ts/mixins/methd.ts\nimport { onAllMethods, bindAllMethods, guardAllMethods, guardMethod } from \"sia-reactor/utils\";\n\n// src/ts/index.ts\nif (\"undefined\" !== typeof window) {\n (window.t007 ??= {}).VIRTUAL_RESOURCE = VIRTUAL_RESOURCE;\n window.T007_TOAST_JS_SRC ??= `https://cdn.jsdelivr.net/npm/@t007/toast@latest`;\n window.T007_INPUT_JS_SRC ??= `https://cdn.jsdelivr.net/npm/@t007/input@latest`;\n window.T007_DIALOG_JS_SRC ??= `https://cdn.jsdelivr.net/npm/@t007/dialog@latest`;\n window.T007_TOAST_CSS_SRC ??= `https://cdn.jsdelivr.net/npm/@t007/toast@latest/dist/index.min.css`;\n window.T007_INPUT_CSS_SRC ??= `https://cdn.jsdelivr.net/npm/@t007/input@latest/dist/index.min.css`;\n window.T007_DIALOG_CSS_SRC ??= `https://cdn.jsdelivr.net/npm/@t007/dialog@latest/dist/index.min.css`;\n}\n\nexport {\n createEl,\n assignEl,\n INTERACTIVE_SELECTOR,\n isInteractive,\n VIRTUAL_RESOURCE,\n loadResource,\n getWindow,\n createListRenderer,\n getActiveEl,\n isObj,\n isDef,\n isSym,\n isBool,\n isNum,\n isStr,\n isArr,\n isPOJO,\n isIter,\n isFunc,\n inBoolArrOpt,\n longestIncreasingSubsequence,\n clamp,\n uid,\n capitalize,\n camelize,\n uncamelize,\n remToPx,\n pxToRem,\n parseCSSTime,\n parseCSSSize,\n cleanURL,\n isSameURL,\n setTimeout2 as setTimeout,\n setInterval,\n requestAnimationFrame,\n throttle,\n debounce,\n RAFLoop,\n cancelRAFLoop,\n limited,\n mockAsync,\n breath,\n deepBreath,\n bindCleanupToSignal,\n KEYS_BLOCKS,\n parseKeyCombo,\n stringifyKeyEvent,\n cleanKeyCombo,\n matchKeys,\n getTermsForKey,\n keyEventAllowed,\n formatKeyForDisplay,\n formatKeyShortcutsForDisplay,\n parseForARIAKS,\n formatSize,\n onAllMethods,\n bindAllMethods,\n guardAllMethods,\n guardMethod,\n NIL,\n NOOP2 as NOOP\n};\n","import { camelize } from \"./str\";\r\nimport type { Control, ControlPanelBottomTuple } from \"@plugs/settings/controlPanel/types\";\r\nimport { type Paths, type PathValue } from \"sia-reactor\";\r\nimport { setPath } from \"sia-reactor/utils\";\r\nimport type { UIObject, UISettings, UIOption, UITuple } from \"@defs/UIOptions\";\r\nimport { isObj, isArr } from \"@t007/utils\";\r\n\r\nexport { isArr, isObj };\r\nexport { isDef, isSym, isBool, isNum, isStr, isPOJO, isIter, isFunc, inBoolArrOpt } from \"@t007/utils\";\r\n\r\n// Type Guards\r\nexport function isUISetting<T = unknown>(obj: unknown): obj is UISettings<T> {\r\n return isObj(obj) && \"options\" in obj && isArr((obj as UISettings<T>).options);\r\n}\r\nexport function isUIOption<T>(opt: UIOption<T>): opt is UITuple<T> {\r\n return isObj(opt) && \"value\" in (opt as object);\r\n}\r\n\r\n// Assignment & Derivation\r\nexport function setHTMLConfig<T extends object>(target: T, attr: `tmg--${Paths<T, \"--\">}`, value: string): void {\r\n value = value.trim();\r\n const path = attr.replace(\"tmg--\", \"\") as Paths<T, \"--\">;\r\n const parsedValue = (() => {\r\n if (value.includes(\",\")) return value.split(\",\")?.map((v: string) => v.trim());\r\n if (value === \"true\") return true;\r\n if (value === \"false\") return false;\r\n if (value === \"null\") return null;\r\n if (/^\\d+$/.test(value)) return Number(value);\r\n return value;\r\n })() as PathValue<T, typeof path, \"--\">;\r\n setPath<T, \"--\">(target, path, parsedValue, \"--\", (p) => camelize(p));\r\n}\r\n\r\nexport function getBoolOrStr(value: string | boolean): string | boolean {\r\n return value === \"true\" ? true : value === \"false\" ? false : value;\r\n}\r\n\r\nexport function getUIOpt<T = unknown>(opts: UIOption<T>[] | undefined, value: T, key: \"display\" | \"value\" = \"display\"): string {\r\n if (opts)\r\n for (const opt of opts) {\r\n const p = parseUIOpt<T>(opt);\r\n if (p.value == value) return p[key] as string;\r\n }\r\n return String(value);\r\n}\r\n\r\nexport function getUniqueOpts<T>(options: UITuple<T>[]) {\r\n const counts: Record<string, number> = {};\r\n options.forEach((opt) => (counts[opt.display] = (counts[opt.display] || 0) + 1)); // First pass: Count occurrences of each display name\r\n const seen: Record<string, number> = {};\r\n for (let i = options.length - 1; i >= 0; i--) {\r\n const opt = options[i];\r\n if (counts[opt.display] > 1) {\r\n seen[opt.display] = (seen[opt.display] || 0) + 1;\r\n const num = counts[opt.display] - seen[opt.display] + 1;\r\n opt.display = `${opt.display} (${num})`;\r\n }\r\n } // Second pass: Add numbers to duplicates, tracking our current index from the back\r\n return options;\r\n}\r\n\r\nexport function parseUIOpt<T = unknown>(opt: UIOption<T>): UITuple<T> {\r\n return isUIOption<T>(opt) ? { value: opt.value, display: String(opt.display ?? opt.value), infoText: opt.infoText } : { value: opt as T, display: String(opt) };\r\n}\r\nexport function parseUIOpts<T = unknown>(opts: UIOption<T>[]): T[] {\r\n return opts.map((opt) => parseUIOpt(opt).value);\r\n}\r\n\r\nexport function parseUIObj<T extends Record<string, any>>(obj: T): UIObject<T> {\r\n const result: any = {} as UIObject<T>,\r\n keys = Object.keys(obj);\r\n for (let i = 0; i < keys.length; i++) {\r\n const entry = obj[keys[i]];\r\n if (!isObj(entry)) continue;\r\n if (isUISetting(entry))\r\n result[keys[i]] = {\r\n values: entry.options.map((opt: UIOption<unknown>) => parseUIOpt(opt).value),\r\n displays: entry.options.map((opt: UIOption<unknown>) => parseUIOpt(opt).display),\r\n };\r\n else result[keys[i]] = parseUIObj(entry); // recurse on sub-branch\r\n }\r\n return result;\r\n}\r\n\r\n// Control Panel Utilities\r\nexport function parsePanelBottomObj(obj: Partial<ControlPanelBottomTuple> | Control[][] | Control[] | unknown, arr?: false): ControlPanelBottomTuple | false;\r\nexport function parsePanelBottomObj(obj: Partial<ControlPanelBottomTuple> | Control[][] | Control[] | unknown, arr: true): Control[] | false;\r\nexport function parsePanelBottomObj(obj: Partial<ControlPanelBottomTuple> | Control[][] | Control[] | unknown = [], arr = false): ControlPanelBottomTuple | Control[] | false {\r\n if (!isObj(obj) && !isArr(obj)) return false;\r\n const [third = [], second = [], first = []] = isObj<Partial<ControlPanelBottomTuple>>(obj) ? (Object.values(obj).reverse() as Control[][]) : isArr((obj as Control[][])[0]) ? [...(obj as Control[][])].reverse() : [obj as Control[]];\r\n return arr ? ([...third, ...second, ...first] as Control[]) : ({ 1: first, 2: second, 3: third } as ControlPanelBottomTuple);\r\n}\r\n\r\nexport function getPanelSplitCtrls<T = any>(row: T[]): { left: T[]; center: T[]; right: T[] } {\r\n if (!row?.length) return { left: [], center: [], right: [] };\r\n const s1 = row.indexOf(\"spacer\" as any),\r\n s2 = row.indexOf(\"spacer\" as any, s1 + 1);\r\n return s1 === -1 ? { left: row, center: [], right: [] } : s2 === -1 ? { left: row.slice(0, s1), center: [], right: row.slice(s1 + 1) } : { left: row.slice(0, s1), center: row.slice(s1 + 1, s2), right: row.slice(s2 + 1) };\r\n}\r\n\r\nexport function getPanelLocation(b: any, id: string) {\r\n if (isArr(b.top) && b.top.includes(id)) return { path: \"top\", row: b.top, zone: getPanelSplitCtrls(b.top).left.includes(id) ? \"left\" : getPanelSplitCtrls(b.top).center.includes(id) ? \"center\" : \"right\" };\r\n if (isArr(b.center) && b.center.includes(id)) return { path: \"center\", row: b.center, zone: \"zone\" };\r\n if (b.bottom) {\r\n const dB = parsePanelBottomObj(b.bottom);\r\n if (dB) for (const k in dB) if ((dB as any)[k]?.includes(id)) return { path: `bottom.${k}`, row: (dB as any)[k], zone: getPanelSplitCtrls((dB as any)[k]).left.includes(id) ? \"left\" : getPanelSplitCtrls((dB as any)[k]).center.includes(id) ? \"center\" : \"right\" };\r\n }\r\n return { path: \"bottom.1\", row: [], zone: \"left\" };\r\n}\r\n\r\nexport function insertPanelCtrl(current: any[], defaults: readonly any[], id: string): void {\r\n let s = 0;\r\n for (let i = 0; i < defaults.indexOf(id); i++) if (defaults[i] === \"spacer\") s++;\r\n for (let i = defaults.indexOf(id) + 1; i < defaults.length; i++)\r\n if (defaults[i] === \"spacer\") {\r\n let c = 0;\r\n for (let j = 0; j < current.length; j++) if (current[j] === \"spacer\" && ++c === s + 1) return void current.splice(j, 0, id);\r\n } else {\r\n const idx = current.indexOf(defaults[i]);\r\n if (idx !== -1) return void current.splice(idx, 0, id);\r\n }\r\n current.push(id);\r\n}\r\n","import { REvent } from \"sia-reactor\";\r\nimport { Controllable } from \"@core/controllable\";\r\nimport { Controller } from \"@core/controller\";\r\nimport { parseForARIAKS } from \"@utils/keys\";\r\nimport { CtlrMedia, MediaFeatures } from \"@defs/contract\";\r\nimport { ComponentConstructor, ComponentState } from \"./types\";\r\n\r\nexport abstract class BaseComponent<Config = any, State extends ComponentState = any, El extends HTMLElement = HTMLElement> extends Controllable<Config, State> {\r\n public static readonly componentName: string;\r\n public static readonly isControl: boolean = false;\r\n public get name() {\r\n return (this.constructor as ComponentConstructor).componentName;\r\n }\r\n public element!: El;\r\n public get el() {\r\n return this.element;\r\n }\r\n\r\n constructor(ctlr: Controller, config: Config, state?: State) {\r\n super(ctlr, config, { label: \"\", cmd: \"\", active: false, disabled: false, hidden: false, ...state } as State);\r\n }\r\n protected override onSetup(): void {\r\n this.mount?.();\r\n this.ctlr.state.readyState ? this.wire?.() : this.wire && this.ctlr.state.wonce(\"readyState\", this.wire, { signal: this.signal }); // wire after all plugs setup\r\n }\r\n protected override onDestroy(): void {\r\n this.unmount();\r\n }\r\n\r\n public abstract create(): El; // Must assign to this.element before returning\r\n public mount?(): void {}\r\n public unmount(): void {\r\n this.el.remove();\r\n }\r\n public wire?(): void {} // auto unwiring\r\n\r\n public active() {\r\n this.el.classList.toggle(\"tmg-media-control-active\", (this.state.active = true));\r\n }\r\n public inactive() {\r\n this.el.classList.toggle(\"tmg-media-control-active\", (this.state.active = false));\r\n }\r\n public disable(): void {\r\n this.el.classList.toggle(\"tmg-media-control-disabled\", (this.state.disabled = true));\r\n }\r\n public enable(): void {\r\n this.el.classList.toggle(\"tmg-media-control-disabled\", (this.state.disabled = false));\r\n }\r\n public hide(): void {\r\n this.el.classList.toggle(\"tmg-media-control-hidden\", (this.state.hidden = true));\r\n }\r\n public show(): void {\r\n this.el.classList.toggle(\"tmg-media-control-hidden\", (this.state.hidden = false));\r\n }\r\n protected gate(e: REvent<CtlrMedia, `features.${keyof MediaFeatures}`>): void {\r\n !e.value ? this.hide() : this.canShow && this.show();\r\n }\r\n protected get canShow(): boolean {\r\n return true;\r\n } // override to make gating smarter\r\n\r\n protected setBtnARIA(dblAction?: string, target: HTMLElement = this.el): void {\r\n this.state.label && target.setAttribute(\"aria-label\", this.state.label);\r\n this.state.cmd && target.setAttribute(\"aria-keyshortcuts\", parseForARIAKS(this.state.cmd));\r\n if (dblAction) target.setAttribute(\"aria-description\", `Double-press to ${dblAction}`);\r\n else if (target.hasAttribute(\"aria-description\")) target.removeAttribute(\"aria-description\");\r\n }\r\n}\r\n\r\nexport type * from \"./types\";\r\n","import type { RangeInputConfig } from \"./types\";\r\n\r\nexport const RANGE_INPUT_BUILD: RangeInputConfig = {\r\n label: \"Range Slider\",\r\n min: 0,\r\n max: 100,\r\n value: 0,\r\n previewValue: 50,\r\n step: 1,\r\n scrub: {\r\n sync: true,\r\n relative: true,\r\n cancel: {\r\n delta: 5,\r\n timeout: 1500,\r\n },\r\n },\r\n wheel: {\r\n disabled: false,\r\n axisRatio: 6,\r\n },\r\n preview: true,\r\n tooltip: true,\r\n readonly: false,\r\n disabled: false,\r\n divs: [],\r\n marks: [],\r\n};\r\n","import { BaseComponent } from \"../base\";\r\nimport { RangeInputChunk, RangeInputConfig, RangeState } from \"./types\";\r\nimport { RANGE_INPUT_BUILD } from \"./build\";\r\nimport type { Controller } from \"@core/controller\";\r\nimport { reactive, type Reactive } from \"sia-reactor\";\r\nimport { mergeObjs } from \"sia-reactor/utils\";\r\nimport { createEl, getWindow, observeResize } from \"@utils/dom\";\r\nimport { clamp, stepNum } from \"@utils/num\";\r\nimport { setTimeout } from \"@utils/fn\";\r\nimport { startTx, endTx, Transaction } from \"sia-reactor/modules\";\r\n\r\nexport class RangeInput<Config extends RangeInputConfig = RangeInputConfig, State extends RangeState = RangeState> extends BaseComponent<Reactive<Config>, State, HTMLDivElement> {\r\n public declare config: Reactive<Config> & Reactive<RangeInputConfig>;\r\n public static readonly componentName: string = \"rangeinput\";\r\n public barsWrapper!: HTMLElement;\r\n public marksWrapper!: HTMLElement;\r\n public chunks: RangeInputChunk[] = [];\r\n public thumbEl!: HTMLElement;\r\n public tooltipEl!: HTMLElement;\r\n public isVertical = false;\r\n public isRTL = false;\r\n protected rect!: DOMRect;\r\n protected lastPtrPos = 0;\r\n protected lastThumbPos = 0;\r\n protected currentThumbPos = 0;\r\n protected stallCancelScrub = false;\r\n protected cancelScrubTimeoutId: number | null = null;\r\n protected tx: Transaction | null = null;\r\n\r\n constructor(ctlr: Controller, config?: Partial<Config>, state?: Partial<State>) {\r\n super(ctlr, reactive(mergeObjs(structuredClone(RANGE_INPUT_BUILD), config) as unknown as Reactive<Config>, { scrubbing: false, previewing: false, cancelScrub: false, ...state } as any));\r\n }\r\n\r\n public override create() {\r\n // Variables Assignments\r\n this.element = createEl(\"div\", { className: \"tmg-media-range-container\", tabIndex: 0, role: \"slider\" });\r\n this.barsWrapper = createEl(\"div\", { className: \"tmg-media-range-bars-wrapper\" });\r\n this.marksWrapper = createEl(\"div\", { className: \"tmg-media-range-marks-wrapper\" });\r\n this.thumbEl = createEl(\"div\", { className: \"tmg-media-range-thumb\" });\r\n this.tooltipEl = createEl(\"div\", { className: \"tmg-media-range-tooltip\" });\r\n // DOM Injection\r\n return this.el.append(this.barsWrapper, this.marksWrapper, this.thumbEl, this.tooltipEl), this.el;\r\n }\r\n\r\n public override wire(): void {\r\n // Variables Asignments\r\n this.rect = this.el.getBoundingClientRect();\r\n // Event Listeners\r\n this.el.addEventListener(\"pointerdown\", this.handlePointerDown, { signal: this.signal });\r\n this.el.addEventListener(\"keydown\", this.handleKeyDown, { signal: this.signal });\r\n this.el.addEventListener(\"wheel\", this.handleWheel, { passive: false, signal: this.signal });\r\n this.el.addEventListener(\"mouseover\", () => (this.rect = this.el.getBoundingClientRect()), { signal: this.signal });\r\n this.el.addEventListener(\"mousemove\", this.handleInput, { signal: this.signal });\r\n for (const e of [\"mouseleave\", \"touchend\", \"touchcancel\"]) this.el.addEventListener(e, this.stopPreviewing, { signal: this.signal });\r\n // State Watchers\r\n this.state.watch(\"scrubbing\", (value) => (value ? (this.tx = startTx(`${this.config.label} Scrub`)) : this.tx && this.config.stall(() => (endTx(this.tx!), (this.tx = null)))), { signal: this.signal });\r\n // ----- Listeners\r\n this.state.on(\"previewing\", ({ value }) => this.el.classList.toggle(\"tmg-media-control-previewing\", !!value), { signal: this.signal });\r\n this.state.on(\"scrubbing\", ({ value }) => this.el.classList.toggle(\"tmg-media-control-scrubbing\", !!value), { signal: this.signal });\r\n this.state.on(\"cancelScrub\", ({ value }) => this.el.classList.toggle(\"tmg-media-control-cancel-scrub\", !!value), { signal: this.signal });\r\n // Config Setters\r\n this.config.set(\"value\", (value) => stepNum(value, this.config), { signal: this.signal });\r\n // ------ Listeners\r\n this.config.on(\"label\", ({ value }) => (this.el.ariaLabel = value!), { init: true, signal: this.signal });\r\n this.config.on(\"min\", ({ value }) => (this.el.ariaValueMin = String(value!)), { init: true, signal: this.signal });\r\n this.config.on(\"max\", ({ value }) => (this.el.ariaValueMax = String(value!)), { init: true, signal: this.signal });\r\n this.config.watch(\"value\", this.onValue, { init: true, signal: this.signal }); // #SYNC: near native speed\r\n this.config.watch(\"previewValue\", this.onPreviewValue, { init: true, signal: this.signal }); // #SYNC: near native speed\r\n this.config.on(\"tooltip\", ({ value }) => this.el.toggleAttribute(\"data-tooltip\", !!value), { init: true, signal: this.signal });\r\n this.config.on(\"readonly\", ({ value }) => this.el.toggleAttribute(\"readonly\", !!value), { init: true, signal: this.signal });\r\n this.config.on(\"disabled\", ({ value }) => this.el.toggleAttribute(\"disabled\", !!value), { init: true, signal: this.signal });\r\n this.config.on(\"divs\", ({ currentTarget: { value } }) => this.syncDivs(value), { init: true, signal: this.signal });\r\n this.config.on(\"marks\", ({ currentTarget: { value } }) => this.syncMarks(value), { init: true, signal: this.signal });\r\n // Post Wiring\r\n observeResize(this.el, () => this.ctlr.throttle(`${this.config.label}Resizing`, this.handleResize, 30, false), this.signal);\r\n }\r\n protected scrub(value: number, bypass = false): boolean {\r\n return this.canScrub ? (!bypass ? (this.config.value = value) : this.onValue(value), true) : false;\r\n }\r\n public get canScrub(): boolean {\r\n return !this.config.readonly && !this.config.disabled;\r\n }\r\n\r\n protected onValue(value: number): void {\r\n this.syncElPos(this.thumbEl, this.getValuePos(value), false, \"auto\"), this.syncChunks(\"value\", value);\r\n if (!this.state.scrubbing) this.el.ariaValueNow = String(value);\r\n }\r\n protected onPreviewValue(value: number): void {\r\n this.syncChunks(\"preview\", value), this.config.tooltip && (this.syncElPos(this.tooltipEl, this.getValuePos(value), false, !(this.state.previewing && !this.state.scrubbing) ? \"auto\" : false, this.thumbEl), (this.tooltipEl.innerHTML = (this.config.formatTooltip ? String(this.config.formatTooltip(value)) : `${Math.round(value)}`) + ` ${this.getValueChunk(value)?.label || \"\"}`.trim()));\r\n }\r\n\r\n protected handlePointerDown(e: PointerEvent): void {\r\n if (this.state.scrubbing || this.config.readonly || this.config.disabled) return;\r\n this.state.scrubbing = true;\r\n this.el.setPointerCapture(e.pointerId);\r\n const s = getWindow(this.el).getComputedStyle(this.el);\r\n (this.isVertical = s.writingMode.includes(\"vertical\")), (this.isRTL = s.direction === \"rtl\");\r\n (this.rect = this.el.getBoundingClientRect()), (this.lastPtrPos = this.getPos(e)), (this.lastThumbPos = this.currentThumbPos = this.getValuePos());\r\n getWindow(this.el).addEventListener(\"pointermove\", this.handleInput, { signal: this.signal }), this.handleInput(e);\r\n getWindow(this.el).addEventListener(\"pointerup\", this.stopScrubbing, { signal: this.signal }), getWindow(this.el).addEventListener(\"pointercancel\", this.stopScrubbing, { signal: this.signal });\r\n }\r\n\r\n protected stopScrubbing(): void {\r\n if (!this.state.scrubbing) return;\r\n this.state.scrubbing = this.state.previewing = false;\r\n this.ctlr.cancelRAFLoop(`${this.config.label}Inputing`);\r\n this.scrub(this.getPosValue(this.state.cancelScrub ? this.lastThumbPos : this.currentThumbPos), this.state.cancelScrub);\r\n this.allowScrubbing(), this.stopPreviewing();\r\n this.stallCancelScrub = true;\r\n getWindow(this.el).removeEventListener(\"pointermove\", this.handleInput);\r\n getWindow(this.el).removeEventListener(\"pointerup\", this.stopScrubbing), getWindow(this.el).removeEventListener(\"pointercancel\", this.stopScrubbing);\r\n }\r\n protected stopPreviewing(): void {\r\n if (!this.state.previewing) return;\r\n this.state.previewing = false;\r\n !this.state.scrubbing && this.ctlr.cancelRAFLoop(`${this.config.label}Inputing`);\r\n }\r\n\r\n protected cancelScrubbing(): void {\r\n if (this.stallCancelScrub || this.state.cancelScrub || this.cancelScrubTimeoutId) return;\r\n this.state.cancelScrub = true;\r\n this.cancelScrubTimeoutId = setTimeout(() => this.allowScrubbing(false), this.config.scrub.cancel.timeout, this.signal);\r\n }\r\n protected allowScrubbing(reset = true): void {\r\n this.stallCancelScrub = this.state.cancelScrub = false;\r\n clearTimeout(this.cancelScrubTimeoutId!);\r\n if (reset) this.cancelScrubTimeoutId = null;\r\n }\r\n\r\n protected handleInput(e: MouseEvent | PointerEvent): void {\r\n if (this.config.readonly || this.config.disabled) return;\r\n this.ctlr.RAFLoop(`${this.config.label}Inputing`, () => {\r\n if (this.prevEX === e.clientX && this.prevEY === e.clientY) return; // #CONSERVATION: peak stays peak\r\n (this.prevEX = e.clientX), (this.prevEY = e.clientY);\r\n this.state.previewing ||= true;\r\n const dimension = this.isVertical ? this.rect.height : this.rect.width,\r\n progress = this.getPos(e),\r\n pos = (this.currentThumbPos = clamp(0, !this.state.scrubbing || this.config.scrub.relative ? progress : this.lastThumbPos + progress - this.lastPtrPos, 1)),\r\n value = this.getPosValue(pos);\r\n this.config.previewValue = value;\r\n if (this.state.scrubbing) {\r\n !this.config.scrub.sync ? this.syncElPos(this.thumbEl, pos, false, \"auto\") : this.scrub(value);\r\n Math.abs(pos - this.lastThumbPos) < this.config.scrub.cancel.delta / dimension ? this.cancelScrubbing() : this.allowScrubbing();\r\n }\r\n this.onInput(e, pos);\r\n });\r\n }\r\n private prevEX?: number;\r\n private prevEY?: number;\r\n protected onInput(_e: MouseEvent | PointerEvent, _pos: number): void {} // override to safely add preview logic (timeline preview image, etc.)\r\n\r\n protected handleWheel(e: WheelEvent): void {\r\n if (this.config.wheel.disabled) return;\r\n e.preventDefault(), e.stopImmediatePropagation();\r\n const dimension = this.isVertical ? getWindow(this.el).innerHeight : getWindow(this.el).innerWidth,\r\n pos = clamp(0, Math.abs(-e.deltaY), dimension * this.config.wheel.axisRatio) / (dimension * this.config.wheel.axisRatio),\r\n value = this.config.value + (-e.deltaY >= 0 ? pos : -pos) * (this.config.max - this.config.min);\r\n this.scrub(value);\r\n }\r\n protected handleKeyDown(e: KeyboardEvent): void {\r\n const key = e.key?.toLowerCase();\r\n if ([\"arrowleft\", \"arrowdown\", \"arrowright\", \"arrowup\"].includes(key)) {\r\n e.preventDefault(), e.stopImmediatePropagation();\r\n const delta = e.shiftKey ? 2 : 1,\r\n direction = [\"arrowleft\", \"arrowdown\"].includes(key) ? -1 : 1;\r\n this.scrub(this.config.value + direction * delta * this.config.step);\r\n }\r\n }\r\n\r\n protected handleResize(): void {\r\n this.rect = this.el.getBoundingClientRect();\r\n const pos = this.getValuePos();\r\n this.syncElPos(this.thumbEl, pos, false, \"auto\"), this.syncChunks(\"value\", this.config.value), this.config.tooltip && this.syncElPos(this.tooltipEl, pos, false, \"auto\", this.thumbEl);\r\n }\r\n\r\n protected getValuePos(value = this.config.value, range = this.config.max - this.config.min): number {\r\n return range ? (value - this.config.min) / range : 0;\r\n }\r\n protected getPosValue(pos: number): number {\r\n return pos * (this.config.max - this.config.min) + this.config.min;\r\n }\r\n protected getValueChunk(value = this.config.value): RangeInputChunk | undefined {\r\n for (let i = 0, len = this.chunks.length; i < len; i++) {\r\n const c = this.chunks[i];\r\n if (value >= c.start && value <= c.end) return c;\r\n }\r\n }\r\n protected getPos(e: MouseEvent | PointerEvent): number {\r\n const p = this.isVertical ? (e.clientY - this.rect.top) / this.rect.height : (e.clientX - this.rect.left) / this.rect.width;\r\n return clamp(0, this.isRTL ? 1 - p : p, 1);\r\n }\r\n\r\n public syncElPos(el: HTMLElement, pos: number, isSize = false, inBounds: boolean | \"auto\" = false, bounds = el): void {\r\n const dim = this.isVertical ? this.rect?.height : this.rect?.width,\r\n min = inBounds && dim ? (this.isVertical ? bounds.offsetHeight : bounds.offsetWidth) / 2 / dim : 0;\r\n pos = inBounds === \"auto\" ? min + pos * (1 - min * 2) : pos;\r\n const value = pos || (!isSize && pos === 0) ? `${clamp(min, pos, 1 - min) * 100}%` : \"\"; // onresize still for pixel accuracy, debounce won't stutter due to '%'\r\n if (isSize) this.isVertical ? ((el.style.blockSize = value), (el.style.inlineSize = \"\")) : ((el.style.inlineSize = value), (el.style.blockSize = \"\"));\r\n else this.isVertical ? ((el.style.insetBlockEnd = value), (el.style.insetInlineStart = \"\")) : ((el.style.insetInlineStart = value), (el.style.insetBlockEnd = \"\"));\r\n // el.style.transform = this.isVertical ? (isSize ? `scaleY(${pos})` : `translateY(-${pos * 100}%)`) : (isSize ? `scaleX(${pos})` : `translateX(${pos * 100}%)`);\r\n }\r\n protected syncChunks(key: keyof Omit<RangeInputChunk, \"start\" | \"end\" | \"size\" | \"el\" | \"label\">, value: number): void {\r\n for (let i = 0, len = this.chunks.length; i < len; i++) {\r\n const c = this.chunks[i];\r\n this.syncElPos(c[key]!, clamp(0, (value - c.start) / c.size, 1) || 0, true), c[key]!.style.setProperty(\"--tmg-media-current-range-pos\", String(this.getValuePos(value)));\r\n c.el.classList.toggle(`tmg-media-chunk-${key}-active`, value >= c.start && value <= c.end);\r\n }\r\n }\r\n protected syncDivs(divs = this.config.divs): void {\r\n this.barsWrapper.innerHTML = \"\";\r\n this.chunks = [];\r\n const range = this.config.max - this.config.min,\r\n stops = divs.toSorted((a, b) => a.value - b.value); // Sort divs chronologically\r\n if (stops.length && stops[0].value > this.config.min && stops[0].value <= this.config.min + Math.min(0.02 * range, range * 0.25)) stops[0].value = this.config.min;\r\n else if (!stops.length || stops[0].value > this.config.min) stops.unshift({ value: this.config.min, label: \"\" });\r\n if (stops[stops.length - 1].value < this.config.max) stops.push({ value: this.config.max, label: \"\" });\r\n const fragment = document.createDocumentFragment();\r\n for (let i = 0, len = stops.length; i < len - 1; i++) {\r\n // prettier-ignore\r\n const start = stops[i], end = stops[i + 1], size = end.value - start.value;\r\n if (size <= 0) continue;\r\n const el = createEl(\"div\", { className: \"tmg-media-range-chunk\" }, undefined, { cssText: `--tmg-media-current-chunk-st: ${(start.value - this.config.min) / range};` }),\r\n chunk = { base: createEl(\"div\", { className: \"tmg-media-range-bar tmg-media-range-base-bar\" }), preview: createEl(\"div\", { className: \"tmg-media-range-bar tmg-media-range-preview-bar\" }), value: createEl(\"div\", { className: \"tmg-media-range-bar tmg-media-range-value-bar\" }) };\r\n this.syncElPos(el, size / range, true), fragment.append((el.append(chunk.base, chunk.preview, chunk.value), el)), this.chunks.push({ start: start.value, end: end.value, label: start.label, size, el, ...chunk });\r\n }\r\n this.barsWrapper.append(fragment), this.onValue(this.config.value), this.onPreviewValue(this.config.previewValue);\r\n }\r\n protected syncMarks(marks = this.config.marks): void {\r\n this.marksWrapper.innerHTML = \"\";\r\n const els: HTMLElement[] = [],\r\n range = this.config.max - this.config.min;\r\n if (range <= 0) return;\r\n for (let i = 0, len = marks.length; i < len; i++) {\r\n const m = marks[i],\r\n el = createEl(\"div\", { className: `tmg-media-range-mark tmg-media-range-${marks[i].type || \"base\"}-mark`, title: marks[i].label || `${m.start}${m.end && m.end > m.start + 1 ? ` - ${m.end}` : \"\"} Mark` }, undefined);\r\n this.syncElPos(el, (m.start - this.config.min) / range, false), this.syncElPos(el, m.end ? (m.end - m.start) / range : 0, true), els.push(el);\r\n }\r\n this.marksWrapper.append(...els);\r\n }\r\n}\r\n\r\ndeclare module \"@defs/registries\" {\r\n interface ComponentRegistryMap {\r\n rangeinput: typeof RangeInput;\r\n }\r\n}\r\n\r\nexport type * from \"./types\";\r\n","import { NOOP } from \"sia-reactor\";\r\nimport { bindCleanupToSignal as bindSig } from \"./fn\";\r\nconst win = \"undefined\" !== typeof window ? window : undefined;\r\n\r\n// Element Factory\r\nexport { createEl, assignEl, getWindow, createListRenderer } from \"@t007/utils\";\r\nexport { initVScrollerator } from \"@t007/utils/hooks/vanilla\";\r\n\r\n// Resource Loading\r\nexport { loadResource } from \"@t007/utils\";\r\n\r\n// Viewport Checks\r\nexport function inDocView(el: Element, axis: \"x\" | \"y\" = \"y\"): boolean {\r\n const rect = el.getBoundingClientRect(),\r\n inX = rect.left + win!.scrollX >= 0 && rect.right + win!.scrollX <= win!.scrollX + (win!.innerWidth || win!.document.documentElement.clientWidth),\r\n inY = rect.top + win!.scrollY >= 0 && rect.bottom + win!.scrollY <= win!.scrollY + (win!.innerHeight || win!.document.documentElement.clientHeight);\r\n return axis === \"x\" ? inY : axis === \"y\" ? inX : inY && inX;\r\n}\r\n\r\nexport function getElSiblingAt(p: number, dir: \"x\" | \"y\", els: HTMLElement[] | NodeListOf<HTMLElement>, pos: \"before\" | \"after\" | \"at\" = \"after\"): HTMLElement | undefined {\r\n return (\r\n els.length &&\r\n (\r\n Array.prototype.reduce.call(\r\n els,\r\n ((closest: { offset: number; element: Element | undefined }, child: Element) => {\r\n const { top: cT, left: cL, width: cW, height: cH } = child.getBoundingClientRect(),\r\n offset = p - (dir === \"y\" ? cT : cL) - (dir === \"y\" ? cH : cW) / 2,\r\n condition = pos === \"after\" ? offset < 0 && offset > closest.offset : pos === \"before\" ? offset > 0 && offset < closest.offset : pos === \"at\" ? Math.abs(offset) <= (dir === \"y\" ? cH : cW) / 2 && Math.abs(offset) < Math.abs(closest.offset) : false;\r\n return condition ? { offset, element: child } : closest;\r\n }) as any,\r\n { offset: pos === \"after\" ? -Infinity : Infinity, element: undefined }\r\n ) as any\r\n ).element\r\n );\r\n}\r\n\r\n// Fullscreen & Picture-in-Picture\r\nexport const queryFullscreen = (): boolean => Boolean(queryFullscreenEl());\r\nexport const queryFullscreenEl = (d = document as any): Element | null => d.fullscreenElement || d.webkitFullscreenElement || d.mozFullScreenElement || d.msFullscreenElement || null;\r\n\r\nexport const queryPictureInPicture = (): boolean => Boolean(queryPictureInPictureEl());\r\nexport const queryPictureInPictureEl = () => document.pictureInPictureElement;\r\n\r\nexport const supportsFullscreen = (vp = HTMLVideoElement.prototype as any, d = document as any) => Boolean(d.fullscreenEnabled || d.mozFullscreenEnabled || d.msFullscreenEnabled || d.webkitFullscreenEnabled || d.webkitSupportsFullscreen || vp.webkitEnterFullscreen);\r\nexport const supportsPictureInPicture = (vp = HTMLVideoElement.prototype as any, d = document as any, w = window as any) => Boolean(d.pictureInPictureEnabled || vp.requestPictureInPicture || w.documentPictureInPicture);\r\n\r\nexport const enterFullscreen = (el: any): Promise<void> => (el.webkitEnterFullscreen ? el.webkitEnterFullscreen() : el.requestFullscreen ? el.requestFullscreen() : el.mozRequestFullScreen ? el.mozRequestFullScreen() : el.webkitRequestFullscreen ? el.webkitRequestFullscreen() : el.msRequestFullscreen ? el.msRequestFullscreen() : Promise.reject(new Error(\"Fullscreen API is not supported\")));\r\nexport const exitFullscreen = (el: any, d = document as any): Promise<void> => (queryFullscreenEl(d) === el ? (el.webkitExitFullscreen ? el.webkitExitFullscreen() : d.exitFullscreen ? d.exitFullscreen() : d.mozCancelFullScreen ? d.mozCancelFullScreen() : d.webkitExitFullscreen ? d.webkitExitFullscreen() : d.msExitFullscreen ? d.msExitFullscreen() : Promise.reject(new Error(\"Fullscreen API is not supported\"))) : Promise.resolve());\r\n\r\n// Safe Click Handling\r\ntype SafeClickEl = HTMLElement & {\r\n _clickHandler?: (e: MouseEvent) => void;\r\n _dblClickHandler?: (e: MouseEvent) => void;\r\n _clickTimeoutId?: ReturnType<typeof setTimeout>;\r\n};\r\nexport function addSafeClicks(el?: SafeClickEl | null, onClick: (e: MouseEvent) => any = NOOP, onDblClick: (e: MouseEvent) => any = NOOP, options?: boolean | AddEventListenerOptions): void {\r\n el && removeSafeClicks(el);\r\n el?.addEventListener(\"click\", (el._clickHandler = (e: MouseEvent) => (clearTimeout(el._clickTimeoutId), (el._clickTimeoutId = setTimeout(() => onClick(e), 300)))), options);\r\n el?.addEventListener(\"dblclick\", (el._dblClickHandler = (e: MouseEvent) => (clearTimeout(el._clickTimeoutId), onDblClick(e))), options);\r\n}\r\nexport function removeSafeClicks(el?: SafeClickEl | null): void {\r\n el?.removeEventListener(\"click\", el._clickHandler as EventListener);\r\n el?.removeEventListener(\"dblclick\", el._dblClickHandler as EventListener);\r\n}\r\n\r\n// DOM Observers\r\ndeclare global {\r\n interface Element {\r\n _resizeCbs?: Set<(entry: ResizeObserverEntry) => void>;\r\n _intersectCbs?: Set<(entry: IntersectionObserverEntry) => void>;\r\n _mutationCbs?: Set<(mutations: MutationRecord[]) => void>;\r\n }\r\n}\r\n\r\nexport const intersectionObserver = win\r\n ? new IntersectionObserver(\r\n (entries) => {\r\n for (const entry of entries) if (entry.target._intersectCbs) for (const cb of entry.target._intersectCbs) cb(entry);\r\n },\r\n { root: null, rootMargin: \"0px\", threshold: 0.3 }\r\n )\r\n : null;\r\n\r\nexport const resizeObserver = win\r\n ? new ResizeObserver((entries) => {\r\n for (const entry of entries) if (entry.target._resizeCbs) for (const cb of entry.target._resizeCbs) cb(entry);\r\n })\r\n : null;\r\n\r\nexport const mutationObserver = win\r\n ? new MutationObserver((mutations) => {\r\n // Dispatch to specific targets if they are being observed directly\r\n // Note: MutationObserver works differently; this handles the 'root' observer callbacks\r\n // We map the *target* of the observation, not the mutation target usually.\r\n // For this util, we assume the observer instance calls the callback associated with the observed node.\r\n // Since we use one global observer, we need to map back.\r\n // Actually, for MutationObserver it's cleaner to keep separate instances if configs differ,\r\n // but for \"utils\" style, we can use a Map logic or just basic callback sets.\r\n // Current implementation assumes the caller handles the mutation list.\r\n const target = mutations[0].target as Element; // Batch usually targets one observer\r\n if (target._mutationCbs) for (const cb of target._mutationCbs) cb(mutations);\r\n })\r\n : null;\r\n\r\n// --- PUBLIC API ---\r\nexport function observeResize(el: Element, cb: (entry: ResizeObserverEntry) => void, sig?: AbortSignal) {\r\n (el._resizeCbs ?? (el._resizeCbs = new Set())).add(cb);\r\n resizeObserver?.observe(el);\r\n return bindSig(() => (el._resizeCbs?.delete(cb), !el._resizeCbs?.size && resizeObserver?.unobserve(el)), sig);\r\n}\r\n\r\nexport function observeIntersection(el: Element, cb: (entry: IntersectionObserverEntry) => void, sig?: AbortSignal) {\r\n (el._intersectCbs ?? (el._intersectCbs = new Set())).add(cb);\r\n intersectionObserver?.observe(el);\r\n return bindSig(() => (el._intersectCbs?.delete(cb), !el._intersectCbs?.size && intersectionObserver?.unobserve(el)), sig);\r\n}\r\n\r\nexport function observeMutation(el: Element, cb: (mutations: MutationRecord[]) => void, options: MutationObserverInit, sig?: AbortSignal) {\r\n (el._mutationCbs ?? (el._mutationCbs = new Set())).add(cb);\r\n mutationObserver?.observe(el, options);\r\n return bindSig(() => el._mutationCbs?.delete(cb), sig);\r\n}\r\n","import { AptRange } from \"@defs/generics\";\r\nimport { isNum, clamp } from \"@t007/utils\";\r\n\r\n// Validators\r\nexport { clamp };\r\n\r\nexport function isSafeNum(val: any): boolean {\r\n return isNum(val) && !isNaN(val ?? NaN) && val !== Infinity;\r\n}\r\n\r\nexport function safeNum(number: any, fallback = 0): number {\r\n return isSafeNum(number) ? number : fallback;\r\n}\r\n\r\n// Parsers\r\nexport function parseIfPercent(percent: any, amount: any, autocap = 0.25): number {\r\n const val = percent?.endsWith?.(\"%\") ? safeNum((parseFloat(percent) / 100) * amount) : percent;\r\n return val && amount && autocap && amount <= val ? amount * autocap : val;\r\n}\r\n\r\nexport function parseRomanNum(roman: string, valid = /^[IVXLCDM]+$/i.test(roman), ROMAN = { I: 1, V: 5, X: 10, L: 50, C: 100, D: 500, M: 1000 } as Record<string, number>): number {\r\n if (!valid) return 0; // ← Invalid input\r\n return roman\r\n .toUpperCase() // Ensure consistent uppercase (e.g., 'iv' becomes 'IV')\r\n .split(\"\") // Turn into array of characters: 'XIV' → ['X','I','V']\r\n .reduce((acc, val, i, arr) => {\r\n const curr = ROMAN[val] || 0, // Current character's value\r\n next = ROMAN[arr[i + 1]] || 0; // Look ahead to the next character (if any)\r\n return acc + (curr < next ? -curr : curr); // Subtractive notation: if current is less than next (e.g., I before V → 4); Otherwise, just add normally\r\n }, 0); // Start accumulator at 0\r\n}\r\n\r\n// Helpers\r\nexport function stepNum<T extends AptRange>(v = 0, { min, max, step }: T): number {\r\n const s = step ? Math.round((safeNum(v) - (min || 0)) / step) * step + (min || 0) : safeNum(v);\r\n return clamp(min, +s.toFixed(10), max); // no gymnastics, for sliders only; to reach near native speed\r\n}\r\n\r\nconst _stepsCache = new Map<string, number[]>();\r\nexport function rotateAny<T>(cur: T, steps: T[] | readonly T[], dir?: \"forwards\" | \"backwards\", wrap?: boolean): T;\r\nexport function rotateAny(cur: number, steps: AptRange, dir?: \"forwards\" | \"backwards\", wrap?: boolean): number;\r\nexport function rotateAny(cur: any, steps: any, dir: \"forwards\" | \"backwards\" = \"forwards\", wrap = true): any {\r\n let list: any[];\r\n if (Array.isArray(steps)) list = steps;\r\n else {\r\n const key = `${steps.min}|${steps.max}|${steps.step}`; // Generate cache key from min|max|step\r\n if (_stepsCache.has(key)) list = _stepsCache.get(key)!;\r\n else _stepsCache.set(key, (list = Array.from({ length: Math.floor((steps.max - steps.min) / steps.step) + 1 }, (_, i) => steps.min + i * steps.step)));\r\n }\r\n let idx = isNum(cur) ? list.reduce((p, c, x) => (Math.abs(c - cur) < Math.abs(list[p] - cur) ? x : p), 0) : list.indexOf(cur);\r\n idx = idx + (dir === \"forwards\" ? 1 : -1);\r\n return list[wrap ? (idx + list.length) % list.length : clamp(0, idx, list.length - 1)];\r\n}\r\n","import { isNum } from \"@t007/utils\";\r\n\r\n// Media Time Formatting\r\nexport function formatMediaTime({ time, format = \"digital\", elapsed = true, showMs = false, casing = \"normal\" }: { time?: number; format?: string; elapsed?: boolean; showMs?: boolean; casing?: \"normal\" | \"upper\" | \"title\" } = { time: 0 }): string {\r\n const long = format.endsWith(\"long\"),\r\n sx = (n = 0) => (n == 1 ? \"\" : \"s\"),\r\n cs = (str: string) => (casing === \"upper\" ? str.toUpperCase() : casing === \"title\" ? str.replace(/^([a-z])/i, (m) => m.toUpperCase()) : str.toLowerCase()),\r\n wrd = (n = 0) => ({ d: cs(long ? \" day\" + sx(n) + \" \" : \"d\"), h: cs(long ? \" hour\" + sx(n) + \" \" : \"h\"), m: cs(long ? \" minute\" + sx(n) + \" \" : \"m\"), s: cs(long ? \" second\" + sx(n) + \" \" : \"s\"), ms: cs(long ? \" millisecond\" + sx(n) + \" \" : \"ms\") }),\r\n pad = (v: string | number, n = 2, f?: boolean) => (long && !f ? v : String(v).padStart(n, isNum(+n) ? \"0\" : \"-\"));\r\n if (isNaN(time ?? NaN) || time === Infinity) return format !== \"digital\" ? (\"-\" + wrd().h + pad(\"-\") + wrd().m + (!elapsed ? \"left\" : \"\")).trim() : !elapsed ? \"-:--\" : \"-:--\";\r\n const s = Math.floor(Math.abs(time!) % 60),\r\n m = Math.floor(Math.abs(time!) / 60) % 60,\r\n h = Math.floor(Math.abs(time!) / 3600) % 24,\r\n d = Math.floor(Math.abs(time!) / 86400),\r\n ms = Math.floor((Math.abs(time!) % 1) * 1000); // returns early so \"!\"\r\n if (format === \"digital\") {\r\n const base = d ? d + \":\" + pad(h, 2, true) + \":\" + pad(m, 2, true) + \":\" + pad(s, 2, true) : h ? h + \":\" + pad(m, 2, true) + \":\" + pad(s, 2, true) : m + \":\" + pad(s, 2, true);\r\n return !elapsed ? \"-\" + base : base;\r\n }\r\n const base = d ? d + wrd(d).d + pad(h) + wrd(h).h + pad(m) + wrd(m).m + pad(s) + wrd(s).s : h ? h + wrd(h).h + pad(m) + wrd(m).m + pad(s) + wrd(s).s : m + wrd(m).m + pad(s) + wrd(s).s,\r\n msPart = showMs && ms ? pad(ms, 3) + wrd(ms).ms : \"\";\r\n return (base + msPart + (!long ? \" \" : \"\") + (!elapsed ? \"left\" : \"\")).trim();\r\n}\r\n\r\n// Time Ranges\r\n\r\nexport function createTimeRanges(ranges?: [number, number][] | TimeRanges | ArrayLike<any>): TimeRanges {\r\n if (ranges instanceof TimeRanges) return ranges;\r\n if (!ranges)\r\n return Object.create(TimeRanges.prototype, {\r\n length: { value: 0 },\r\n start: {\r\n value: () => {\r\n throw new DOMException(\"Index out of bounds\", \"IndexSizeError\");\r\n },\r\n },\r\n end: {\r\n value: () => {\r\n throw new DOMException(\"Index out of bounds\", \"IndexSizeError\");\r\n },\r\n },\r\n });\r\n // 1. Sort incoming intervals chronologically by start time\r\n const rawPairs = (Array.isArray(ranges) ? ranges : Array.from(ranges as ArrayLike<any>)).sort((a, b) => a[0] - b[0]);\r\n // 2. Spec Normalization Loop: Merge overlapping or touching timelines\r\n const pairs: [number, number][] = [];\r\n for (const current of rawPairs) {\r\n const last = pairs[pairs.length - 1];\r\n if (!last || current[0] > last[1]) pairs.push([current[0], current[1]]); // Clean discontinuity gap\r\n else last[1] = Math.max(last[1], current[1]); // Normalization: merge overlaps!\r\n }\r\n // 3. Return a fully normalized interface literal\r\n return Object.create(TimeRanges.prototype, {\r\n length: { value: pairs.length },\r\n start: {\r\n value: (i: number) => {\r\n if (i < 0 || i >= pairs.length) throw new DOMException(\"Index out of bounds\", \"IndexSizeError\");\r\n return pairs[i][0];\r\n },\r\n },\r\n end: {\r\n value: (i: number) => {\r\n if (i < 0 || i >= pairs.length) throw new DOMException(\"Index out of bounds\", \"IndexSizeError\");\r\n return pairs[i][1];\r\n },\r\n },\r\n });\r\n}\r\n","/*\r\n * Portions of this code are derived from Video.js\r\n * https://github.com/videojs/video.js\r\n * Licensed under Apache License 2.0\r\n * Copyright (c) Brightcove, Inc. and contributors\r\n */\r\n\r\n// Types\r\ntype Version = string | null;\r\ntype BrandEntry = { brand?: string; version?: string };\r\n\r\n// Environment guards\r\nconst win = \"undefined\" !== typeof window ? window : undefined,\r\n nav = win?.navigator,\r\n ua = nav?.userAgent || \"\",\r\n uaData = (nav as Navigator & { userAgentData?: { platform?: string; brands?: BrandEntry[] } })?.userAgentData;\r\n\r\n// Base flags: bools first, versions second for readability\r\nexport let IS_ANDROID = false;\r\nexport let IS_WINDOWS = false;\r\nexport let IS_FIREFOX = false;\r\nexport let IS_EDGE = false;\r\nexport let IS_CHROME = false;\r\nexport let IS_CHROMIUM = false;\r\nexport let IS_SAFARI = false;\r\nexport let IS_IE = false;\r\nexport let IS_TIZEN = false;\r\nexport let IS_WEBOS = false;\r\nexport let IS_IPOD = false;\r\nexport let IS_IPAD = false;\r\nexport let IS_IPHONE = false;\r\n// Versioned details\r\nexport let IOS_VERSION: Version = null;\r\nexport let ANDROID_VERSION: Version = null;\r\nexport let CHROME_VERSION: Version = null;\r\nexport let CHROMIUM_VERSION: Version = null;\r\nexport let IE_VERSION: Version = null;\r\n// Composite Flags\r\nexport let IS_IOS = false;\r\nexport let IS_MOBILE = false;\r\nexport let IS_SMART_TV = false;\r\n// Capabilities\r\nexport const IS_CHROMECAST_RECEIVER = Boolean((win as any)?.cast?.framework?.CastReceiverContext);\r\nexport const MSE_ENABLED = Boolean(win && (\"MediaSource\" in win || \"webkitMediaSource\" in win));\r\nexport const TOUCH_ENABLED = Boolean(win && (\"ontouchstart\" in win || (nav as Navigator & { maxTouchPoints?: number })?.maxTouchPoints || ((win as any).DocumentTouch && win.document instanceof (win as any).DocumentTouch)));\r\n// Media Queries\r\nexport const queryMediaMobile = (query = `(max-width: 480px), (max-width: 940px) and (max-height: 480px) and (orientation: landscape)`) => Boolean(win && \"matchMedia\" in win && win.matchMedia(query).matches);\r\n\r\n// Modern detection first (userAgentData)\r\nif (uaData?.platform && uaData?.brands) {\r\n // Helpers\r\n const pickVersion = (brands: BrandEntry[], needle: string): Version => brands.find((b) => b.brand === needle && b.version)?.version || null;\r\n // Platform first\r\n IS_ANDROID = uaData.platform === \"Android\";\r\n IS_WINDOWS = uaData.platform === \"Windows\";\r\n // Browser family\r\n IS_EDGE = uaData.brands.some((b) => b.brand === \"Microsoft Edge\");\r\n IS_CHROMIUM = uaData.brands.some((b) => b.brand === \"Chromium\" || b.brand === \"Google Chrome\");\r\n IS_CHROME = IS_CHROMIUM && !IS_EDGE;\r\n // Versions\r\n CHROMIUM_VERSION = CHROME_VERSION = pickVersion(uaData.brands, \"Chromium\") || pickVersion(uaData.brands, \"Google Chrome\");\r\n}\r\n\r\n// Fallback / additional parsing via UA string\r\nif (true || !IS_CHROMIUM || !CHROMIUM_VERSION) {\r\n // General Platforms\r\n IS_ANDROID ||= /Android/i.test(ua);\r\n IS_WINDOWS ||= /Windows/i.test(ua);\r\n // Desktop & general browsers (include iOS-branded variants)\r\n IS_FIREFOX = /Firefox|FxiOS/i.test(ua);\r\n IS_EDGE ||= /Edg|EdgiOS/i.test(ua);\r\n IS_CHROMIUM ||= /Chrome|CriOS/i.test(ua);\r\n IS_CHROME = IS_CHROMIUM && !IS_EDGE;\r\n IS_SAFARI = /Safari/i.test(ua) && !IS_CHROME && !IS_FIREFOX && !IS_EDGE;\r\n IS_IE = /MSIE|(Trident\\/7.0)|(rv:11.0)/i.test(ua);\r\n // TVs\r\n IS_TIZEN = /Tizen/i.test(ua);\r\n IS_WEBOS = /Web0S/i.test(ua);\r\n // Apple desktop/mobile device refinement\r\n IS_IPOD = /iPod/i.test(ua);\r\n IS_IPAD = /iPad/i.test(ua) || (IS_SAFARI && TOUCH_ENABLED && !/iPhone/i.test(ua));\r\n IS_IPHONE = /iPhone/i.test(ua) && !IS_IPAD;\r\n // Versions\r\n IOS_VERSION = ua.match(/OS (\\d+)_/i)?.[1] ?? null;\r\n ANDROID_VERSION = ua.match(/Android\\s(\\d+(?:\\.\\d+)+)/i)?.[1] ?? null;\r\n CHROMIUM_VERSION = CHROME_VERSION = ua.match(/(?:Chrome|CriOS)\\/(\\d+)/)?.[1] ?? CHROMIUM_VERSION;\r\n IE_VERSION = ua.match(/MSIE\\s(\\d+)\\.\\d/)?.[1] || (/Trident\\/7.0/i.test(ua) && /rv:11.0/.test(ua) ? \"11.0\" : null);\r\n} // `true` override for devtools predictability\r\n\r\n// Composite Flags\r\nIS_IOS = IS_IPHONE || IS_IPAD || IS_IPOD;\r\nIS_MOBILE = Boolean(IS_ANDROID || IS_IPHONE || IS_IPOD || IS_IPAD);\r\nIS_SMART_TV = IS_TIZEN || IS_WEBOS;\r\n","import { MEDIA_INTENT_BUILD, MEDIA_SETTINGS_BUILD, MEDIA_STATE_BUILD, MEDIA_STATUS_BUILD } from \"@consts/media\";\r\nimport { MediaState, MediaStatus, MediaSettings, MediaReport, CtlrMedia } from \"@defs/contract\";\r\nimport { isStr, isNum, isIter, isSameURL, cleanURL } from \"@t007/utils\";\r\nimport { createEl } from \"@utils/dom\";\r\nimport { queryFullscreenEl, queryPictureInPictureEl } from \"@utils/dom\";\r\nimport { Dimensions, MediaType, Source, Sources, Track, Tracks } from \"@defs/generics\";\r\nimport { mergeObjs as merge } from \"sia-reactor/utils\";\r\nimport { DeepPartial } from \"sia-reactor\";\r\n\r\n// ============ Video Utilities ============\r\n// Types\r\ntype SourceLike = Source | (HTMLSourceElement & Record<string, any>);\r\ntype TrackLike = Track | (HTMLTrackElement & Record<string, any>);\r\n\r\n// Report Generation\r\nexport function getMediaReport(m: HTMLMediaElement, isVid = m instanceof HTMLVideoElement, opts = { skipUndefined: true }): MediaReport {\r\n const txtTrackIdx = getTrackIdx(m, \"Text\"),\r\n report = { state: getMediaState(m, isVid, txtTrackIdx), status: getMediaStatus(m, isVid, txtTrackIdx), settings: getMediaSettings(m) };\r\n return { state: merge(MEDIA_STATE_BUILD, report.state, opts), intent: merge(MEDIA_INTENT_BUILD, report.state, opts), status: merge(MEDIA_STATUS_BUILD, report.status, opts), settings: merge(MEDIA_SETTINGS_BUILD, report.settings, opts) } as MediaReport;\r\n}\r\nexport const getMediaState = (m: HTMLMediaElement, isVid = m instanceof HTMLVideoElement, _txtTrackIdx = getTrackIdx(m, \"Text\")): Partial<MediaState> => ({ src: m.src, currentTime: m.currentTime, paused: m.paused, volume: m.volume * 100, muted: m.muted, playbackRate: m.playbackRate, pictureInPicture: queryPictureInPictureEl() === m, fullscreen: queryFullscreenEl() === m, currentTextTrack: _txtTrackIdx, currentAudioTrack: getTrackIdx(m, \"Audio\"), currentVideoTrack: getTrackIdx(m, \"Video\"), poster: isVid ? (m as HTMLVideoElement).poster : \"\", autoplay: m.autoplay, loop: m.loop, preload: m.preload, playsInline: isVid ? m.playsInline : false, crossOrigin: m.crossOrigin, controls: m.controls, controlsList: m.controlsList ?? m.getAttribute(\"controlsList\"), disablePictureInPicture: isVid ? m.disablePictureInPicture ?? m.hasAttribute(\"disablePictureInPicture\") : false, sources: getSources(m), tracks: getTracks(m) });\r\nexport const getMediaStatus = (m: HTMLMediaElement, isVid = m instanceof HTMLVideoElement, _txtTrackIdx = getTrackIdx(m, \"Text\"), _flagsOnly = false): Partial<MediaStatus> => ({ readyState: m.readyState, networkState: m.networkState, error: m.error, seeking: m.seeking, buffered: m.buffered, played: m.played, seekable: m.seekable, duration: m.duration, ended: m.ended, loadedMetadata: m.readyState >= 1, loadedData: m.readyState >= 2, canPlay: m.readyState >= 3, canPlayThrough: m.readyState >= 4, videoWidth: isVid ? (m as HTMLVideoElement).videoWidth : 0, videoHeight: isVid ? (m as HTMLVideoElement).videoHeight : 0, textTracks: _flagsOnly ? undefined : m.textTracks, audioTracks: _flagsOnly ? undefined : (m as any).audioTracks, videoTracks: _flagsOnly ? undefined : (m as any).videoTracks, activeCue: _flagsOnly ? undefined : m.textTracks[_txtTrackIdx]?.activeCues?.[0] || null });\r\nexport const getMediaSettings = (m: HTMLMediaElement): DeepPartial<MediaSettings> => ({ defaultMuted: m.defaultMuted, defaultPlaybackRate: m.defaultPlaybackRate, srcObject: m.srcObject });\r\n\r\nexport function getMediaProgress({ state: s, status: st }: CtlrMedia, time = s.currentTime): number {\r\n if (st.isLive) {\r\n if (!st.seekable.length || s.live) return 1;\r\n const min = st.seekable.start(0),\r\n dvr = st.seekable.end(st.seekable.length - 1) - min;\r\n return dvr > 0 ? (time - min) / dvr : 1;\r\n } else return time / st.duration;\r\n}\r\nexport const getMediaTime = (media: CtlrMedia, percent: number, _min = getMediaMin(media)): number => (media.status.isLive ? _min! + percent * (getMediaMax(media) - _min!) : percent * media.status.duration);\r\nexport const getMediaMin = ({ status: st, state: s }: Pick<CtlrMedia, \"state\" | \"status\">): number => (st.isLive ? (st.seekable.length ? (st.canSeekLive ? st.seekable.start(0) : st.seekable.end(st.seekable.length - 1)) : s.currentTime) : 0); // live?, can't seek?, jump to edge\r\nexport const getMediaMax = ({ status: st, state: s }: Pick<CtlrMedia, \"state\" | \"status\">): number => (st.isLive ? (st.seekable.length ? st.seekable.end(st.seekable.length - 1) : s.currentTime) : st.duration);\r\n\r\nexport function getBooleanMediaProps(media: CtlrMedia, prop: \"intent\" | \"state\" = \"intent\"): string[] {\r\n return Object.keys(media[prop]).filter((k) => typeof media[prop][k as keyof MediaState] === \"boolean\");\r\n}\r\n\r\n// Geometry\r\nexport function getRenderedBox({ videoHeight, videoWidth }: { videoHeight?: number; videoWidth?: number }, { width: clientWidth = 0, height: clientHeight = 0 }: { width?: number; height?: number }, { objectFit = \"cover\", objectPosition = \"50% 50%\" }: { objectFit?: string; objectPosition?: string }): Partial<Dimensions & { left: number; top: number }> {\r\n const bbox = { width: clientWidth, height: clientHeight } as DOMRect,\r\n obj = (((videoHeight ||= 1080), (videoWidth ||= videoHeight * (16 / 9))), videoWidth && videoHeight ? { width: videoWidth, height: videoHeight } : null);\r\n if (!obj || !objectFit || !objectPosition) return {};\r\n if (objectFit === \"scale-down\") objectFit = bbox.width < obj.width || bbox.height < obj.height ? \"contain\" : \"none\";\r\n if (objectFit === \"none\") return { ...parseObjectPos(objectPosition, bbox, obj), ...obj };\r\n else if (objectFit === \"contain\") {\r\n const objRatio = obj.height / obj.width,\r\n bboxRatio = bbox.height / bbox.width,\r\n width = bboxRatio > objRatio ? bbox.width : bbox.height / objRatio,\r\n height = bboxRatio > objRatio ? bbox.width * objRatio : bbox.height;\r\n return { ...parseObjectPos(objectPosition, bbox, { width, height }), width, height };\r\n } else if (objectFit === \"fill\") {\r\n const { left, top, rawLeft, rawTop } = parseObjectPos(objectPosition, bbox, obj);\r\n return { left: rawLeft.endsWith(\"%\") ? 0 : left, top: rawTop.endsWith(\"%\") ? 0 : top, width: bbox.width, height: bbox.height }; // Relative positioning is discarded with `obj-fit: fill`, so we need to check here if it's relative or not\r\n } else if (objectFit === \"cover\") {\r\n const minRatio = Math.min(bbox.width / obj.width, bbox.height / obj.height);\r\n let width = obj.width * minRatio,\r\n height = obj.height * minRatio,\r\n outRatio = 1;\r\n if (width < bbox.width) outRatio = bbox.width / width;\r\n if (Math.abs(outRatio - 1) < 1e-14 && height < bbox.height) outRatio = bbox.height / height;\r\n (width *= outRatio), (height *= outRatio);\r\n return { ...parseObjectPos(objectPosition, bbox, { width, height }), width, height };\r\n }\r\n return {};\r\n}\r\nconst parsePosAsPx = (str: string, bboxSize: number, objectSize: number): number => {\r\n str === \"center\" ? (str = \"50%\") : str === \"left\" || str === \"top\" ? (str = \"0%\") : (str === \"right\" || str === \"bottom\") && (str = \"100%\");\r\n const num = parseFloat(str);\r\n return !str.endsWith(\"%\") ? num : (bboxSize - objectSize) * (num / 100);\r\n};\r\nconst parseObjectPos = (position: string, bbox: DOMRect, object: Dimensions): { left: number; top: number; rawLeft: string; rawTop: string } => {\r\n if (position === \"center\") position = \"50% 50%\";\r\n const [left, top = \"50%\"] = position.split(\" \");\r\n return { left: parsePosAsPx(left, bbox.width, object.width), top: parsePosAsPx(top, bbox.height, object.height), rawLeft: left, rawTop: top };\r\n};\r\n\r\nexport function getSizeTier(container: HTMLElement, { offsetWidth: w, offsetHeight: h } = container) {\r\n return { width: w, height: h, tier: h <= 130 ? \"xxxxx\" : w <= 280 ? \"xxxx\" : w <= 380 ? \"xxx\" : w <= 480 ? \"xx\" : w <= 630 ? \"x\" : \"\" };\r\n}\r\n\r\n// Media Element Cloning\r\nexport function cloneMedia<M extends HTMLMediaElement>(v: M): M {\r\n const newV = v.cloneNode(true) as M;\r\n newV.tmgPlayer = v.tmgPlayer;\r\n v.parentElement?.replaceChild(newV, v);\r\n if (v.currentTime) newV.currentTime = v.currentTime;\r\n if (v.playbackRate !== 1) newV.playbackRate = v.playbackRate;\r\n if (v.defaultPlaybackRate !== 1) newV.defaultPlaybackRate = v.defaultPlaybackRate;\r\n if (v.volume !== 1) newV.volume = v.volume;\r\n if (v.muted) newV.muted = true;\r\n if (v.defaultMuted) newV.defaultMuted = true;\r\n if (v.srcObject) newV.srcObject = v.srcObject;\r\n if (v.autoplay) newV.autoplay = true;\r\n if (v.loop) newV.loop = true;\r\n if (v.controls) newV.controls = true;\r\n if (v.crossOrigin) newV.crossOrigin = v.crossOrigin;\r\n if (v.playsInline) newV.playsInline = true;\r\n if (v.controlsList?.length) newV.controlsList = v.controlsList;\r\n if (v.disablePictureInPicture) newV.disablePictureInPicture = true;\r\n if (!v.paused && newV.isConnected) newV.play();\r\n return newV;\r\n}\r\n\r\n// Source Management\r\nexport function putSourceDetails(source: any, el: HTMLSourceElement | Record<string, any>): void {\r\n if (source.src) el.src = source.src;\r\n if (source.type) el.type = source.type;\r\n if (source.media) el.media = source.media;\r\n}\r\nexport function addSources(sources: SourceLike | Iterable<SourceLike> = [], medium: HTMLElement): HTMLSourceElement | HTMLSourceElement[] {\r\n const addSource = (source: SourceLike, med: HTMLElement) => {\r\n const sourceEl = createEl(\"source\");\r\n putSourceDetails(source, sourceEl);\r\n return med.appendChild(sourceEl);\r\n };\r\n return isIter(sources) ? Array.from(sources as Iterable<SourceLike>, (source) => addSource(source, medium)) : addSource(sources, medium);\r\n}\r\nexport function getSources(medium: HTMLElement): MediaState[\"sources\"] {\r\n const sources = medium.querySelectorAll<HTMLSourceElement>(\"source\"),\r\n _sources: SourceLike[] = [];\r\n for (const source of sources) {\r\n const obj: Record<string, any> = {};\r\n putSourceDetails(source, obj);\r\n _sources.push(obj as SourceLike);\r\n }\r\n return _sources as MediaState[\"sources\"];\r\n}\r\nexport const removeSources = (medium: HTMLElement, sources = medium?.querySelectorAll(\"source\")): void => {\r\n if (sources) for (const source of sources) source.remove();\r\n};\r\nexport function isSameSources(a?: Sources, b?: Sources): boolean {\r\n if (!a || !b || a.length !== b.length) return false;\r\n const set = new Set(b.map((s) => `${cleanURL(s.src)}|${s.type}|${s.media}`));\r\n return a.every((s) => set.has(`${cleanURL(s.src)}|${s.type}|${s.media}`));\r\n}\r\n\r\n// Track Management\r\nexport type TrackType = \"Audio\" | \"Video\" | \"Text\";\r\nexport function putTrackDetails(track: any, el: HTMLTrackElement | Record<string, any>): void {\r\n if (track.id) el.id = track.id;\r\n if (track.kind) el.kind = track.kind;\r\n if (track.label) el.label = track.label;\r\n if (track.srclang) el.srclang = track.srclang;\r\n if (track.src) el.src = track.src;\r\n if (track.default) el.default = track.default;\r\n}\r\nexport function addTracks(tracks: TrackLike | Iterable<TrackLike> = [], medium: HTMLElement): HTMLTrackElement | HTMLTrackElement[] {\r\n const addTrack = (track: TrackLike, med: HTMLElement) => {\r\n const trackEl = createEl(\"track\");\r\n return putTrackDetails(track, trackEl), med.appendChild(trackEl);\r\n };\r\n return isIter(tracks) ? Array.from(tracks as Iterable<TrackLike>, (track) => addTrack(track, medium)) : addTrack(tracks, medium);\r\n}\r\nexport function getTracks(medium: HTMLElement, cues = false): TrackLike[] {\r\n const tracks = medium.querySelectorAll<HTMLTrackElement>(!cues ? \"track\" : \"track:is([kind='captions'], [kind='subtitles'])\"),\r\n _tracks: TrackLike[] = [];\r\n for (const track of tracks) {\r\n const obj: Record<string, any> = {};\r\n putTrackDetails(track, obj), _tracks.push(obj as TrackLike);\r\n }\r\n return _tracks;\r\n}\r\nexport const removeTracks = (medium: HTMLElement, tracks = medium?.querySelectorAll(\"track\")): void => {\r\n if (tracks) for (const track of tracks) if (track.kind === \"subtitles\" || track.kind === \"captions\") track.remove();\r\n};\r\nexport function isSameTracks(a?: Tracks, b?: Tracks): boolean {\r\n if (!a || !b || a.length !== b.length) return false;\r\n const set = new Set(b.map((t) => `${cleanURL(t.src)}|${t.kind}|${t.label}|${t.srclang}|${t.default}`));\r\n return a.every((t) => set.has(`${cleanURL(t.src)}|${t.kind}|${t.label}|${t.srclang}|${t.default}`));\r\n}\r\nconst isTrack = (type: TrackType, term: any) => `${type}Track` in window && term instanceof (window as any)[`${type}Track`];\r\nexport function getTrackIdx(medium: HTMLMediaElement, type: TrackType = \"Text\", term: any = \"active\", list = (medium as any)[`${type.toLowerCase()}Tracks`]): number {\r\n if (isNum(term)) return term;\r\n if (list && term === \"active\") {\r\n if (type === \"Text\") for (let i = 0; i < +list.length; i++) if (list[i].mode === \"showing\") return i;\r\n if (type === \"Audio\") for (let i = 0; i < +list.length; i++) if (list[i].enabled) return i;\r\n if (type === \"Video\") return list.selectedIndex ?? -1;\r\n }\r\n if (list && isTrack(type, term)) return Array.prototype.indexOf.call(list, term);\r\n if (list && isStr(term)) {\r\n term = term.toLowerCase();\r\n return !isNaN(+term) ? +term : Array.prototype.findIndex.call(list, (t: any) => t.id.toLowerCase() === term || t.label.toLowerCase() === term || t.srclang?.toLowerCase() === term || t.language.toLowerCase() === term || isSameURL(t.src, term));\r\n }\r\n return -1;\r\n}\r\nexport function setCurrentTrack(medium: HTMLMediaElement, type: TrackType = \"Text\", term: any, flush = false, list = (medium as any)[`${type.toLowerCase()}Tracks`]): void {\r\n const idx = getTrackIdx(medium, type, term, list);\r\n if (list && type !== \"Video\") for (let i = 0; i < list.length; i++) type === \"Text\" ? (list[i].mode = i === idx ? \"showing\" : flush ? \"disabled\" : \"hidden\") : (list[i].enabled = i === idx);\r\n else list?.[idx] && (list[idx].selected = true);\r\n}\r\n\r\n// Capbailities\r\nexport const DUMMY_VID = createEl(\"video\");\r\nexport const DUMMY_AUD = createEl(\"audio\");\r\nexport function canUseVolume(type: MediaType = \"video\", dummy = type === \"video\" ? DUMMY_VID : DUMMY_AUD): boolean {\r\n try {\r\n const prev = dummy.volume;\r\n dummy.volume = 0.5;\r\n const works = dummy.volume === 0.5;\r\n return (dummy.volume = prev), works;\r\n } catch {\r\n return false;\r\n }\r\n}\r\nexport const canMuteVolume = (type: MediaType = \"video\", dummy = type === \"video\" ? DUMMY_VID : DUMMY_AUD): boolean => !!dummy && \"muted\" in dummy;\r\nexport function canUseRate(type: MediaType = \"video\", dummy = type === \"video\" ? DUMMY_VID : DUMMY_AUD): boolean {\r\n try {\r\n const prev = dummy.playbackRate;\r\n dummy.playbackRate = 0.5;\r\n const works = dummy.playbackRate === 0.5;\r\n return (dummy.playbackRate = prev), works;\r\n } catch {\r\n return false;\r\n }\r\n}\r\nexport const canTextTracks = (type: MediaType = \"video\", dummy = type === \"video\" ? DUMMY_VID : DUMMY_AUD): boolean => !!dummy && \"textTracks\" in dummy;\r\nexport const canVideoTracks = (type: MediaType = \"video\", dummy = type === \"video\" ? DUMMY_VID : DUMMY_AUD): boolean => !!dummy && \"videoTracks\" in dummy;\r\nexport const canAudioTracks = (type: MediaType = \"video\", dummy = type === \"video\" ? DUMMY_VID : DUMMY_AUD): boolean => !!dummy && \"audioTracks\" in dummy;\r\n\r\n// ============ Caption/Subtitle Utilities ============\r\nexport const stripTags = (text: string): string => text.replace(/<(\\/)?([a-z0-9.:]+)([^>]*)>/gi, \"\");\r\n\r\nexport function srtToVtt(srt: string, vttLines: string[] = [\"WEBVTT\", \"\"]): string {\r\n const input = srt.replace(/\\r\\n?/g, \"\\n\").trim();\r\n for (const block of input.split(/\\n{2,}/)) {\r\n const lines = block.split(\"\\n\");\r\n let idx = /^\\d+$/.test(lines[0].trim()) ? 1 : 0;\r\n const timing = lines[idx]?.trim().replace(/\\s+/g, \" \"),\r\n m = timing?.match(/(\\d{1,2}:\\d{2}:\\d{2})(?:[.,](\\d{1,3}))?\\s*-->\\s*(\\d{1,2}:\\d{2}:\\d{2})(?:[.,](\\d{1,3}))?/);\r\n if (!m) continue;\r\n const [, startHms, startMsRaw = \"0\", endHms, endMsRaw = \"0\"] = m,\r\n to3 = (ms: string) => ms.padEnd(3, \"0\").slice(0, 3);\r\n vttLines.push(startHms + \".\" + to3(startMsRaw) + \" --> \" + endHms + \".\" + to3(endMsRaw));\r\n for (let i = idx + 1; i < lines.length; i++) vttLines.push(lines[i]);\r\n vttLines.push(\"\");\r\n }\r\n return vttLines.join(\"\\n\");\r\n}\r\n\r\nexport function parseVttText(text: string): string {\r\n const state = { tag: /<(\\/)?([a-z0-9.:]+)([^>]*)>/gi, o: \"\", l: 0, p: null as string | null, c: \"\" },\r\n esc = (s: string) => s.replace(/[&<>\"']/g, (c) => ({ \"&\": \"&\", \"<\": \"<\", \">\": \">\", '\"': \""\", \"'\": \"'\" }[c]!));\r\n let m: RegExpExecArray | null;\r\n while ((m = state.tag.exec(text))) {\r\n const chunk = text.slice(state.l, m.index);\r\n if (chunk) state.c += esc(chunk);\r\n const [_, cls, tag_n, rest] = m,\r\n low = tag_n.toLowerCase();\r\n if (/^[0-9]/.test(tag_n)) {\r\n state.o += state.p ? `<span data-part=\"timed\" data-time=\"${state.p}\">${state.c}</span>` : state.c;\r\n state.p = tag_n;\r\n state.c = \"\";\r\n } else if (cls) state.c += [\"c\", \"v\", \"lang\"].includes(low) ? \"</span>\" : `</${low}>`;\r\n else if ([\"b\", \"i\", \"u\", \"ruby\", \"rt\"].includes(low)) state.c += `<${low}>`;\r\n else if (low === \"c\") state.c += `<span class=\"vtt-c ${rest.replace(/\\.([a-z0-9_-]+)/gi, \"$1 \").trim()}\">`;\r\n else if (low === \"v\") state.c += `<span data-part=\"voice\"${rest.trim() ? ` title=\"${esc(rest.trim())}\"` : \"\"}>`;\r\n else if (low === \"lang\") state.c += `<span lang=\"${esc(rest.trim())}\">`;\r\n state.l = state.tag.lastIndex;\r\n }\r\n const lChunk = text.slice(state.l);\r\n if (lChunk) state.c += esc(lChunk);\r\n return state.o + (state.p ? `<span data-part=\"timed\" data-time=\"${state.p}\">${state.c}</span>` : state.c);\r\n}\r\n\r\nexport function formatVttLine(p: string, maxChars: number): string[] {\r\n const state = { tokens: p.match(/<[^>]+>|\\S+/g) || [], stack: [] as string[], parts: [] as string[], line: \"\", len: 0, openStr: \"\", closeStr: \"\", timeTag: \"\", lastWasTag: false },\r\n updateTags = () => ((state.openStr = state.stack.map((n) => `<${n}>`).join(\"\")), (state.closeStr = state.stack.reduceRight((a, n) => a + `</${n}>`, \"\"))),\r\n flush = () => state.line && (state.parts.push(state.line + state.closeStr), (state.line = (state.timeTag || \"\") + state.openStr), (state.len = 0), (state.lastWasTag = true));\r\n for (const tok of state.tokens) {\r\n const tag = tok[0] === \"<\",\r\n closeTag = tag && tok[1] === \"/\";\r\n if (tag) {\r\n if (state.line && !state.lastWasTag && !closeTag) state.line += \" \";\r\n const m = tok.match(/^<\\/?\\s*([a-z0-9._:-]+)/i),\r\n n = m?.[1] || \"\",\r\n timing = /^\\d/.test(n);\r\n if (timing) {\r\n (state.timeTag = tok), (state.line += tok), (state.lastWasTag = true);\r\n continue;\r\n }\r\n if (!closeTag && !tok.endsWith(\"/>\") && n) state.stack.push(n), updateTags();\r\n if (closeTag && state.stack.length) state.stack.pop(), updateTags();\r\n (state.lastWasTag = true), (state.line += tok);\r\n continue;\r\n }\r\n const len = stripTags(tok).length,\r\n needSpace = state.line && !state.lastWasTag;\r\n if (state.len + (needSpace ? 1 : 0) + len > maxChars) flush();\r\n if (needSpace) (state.line += \" \"), (state.len += 1);\r\n (state.line += tok), (state.len += len), (state.lastWasTag = false);\r\n }\r\n return flush(), state.parts;\r\n}\r\n"],"mappings":"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","names":["import_sia_reactor","import_utils","import_utils","import_sia_reactor","import_utils","import_sia_reactor","import_utils","import_sia_reactor","setTimeout2","m","base","win","import_utils","import_modules","setTimeout2"]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Timeline
|
|
3
|
+
} from "../../../chunk-LTEL7NEG.js";
|
|
4
|
+
import "../../../chunk-BLJDDFX2.js";
|
|
5
|
+
import "../../../chunk-6K4HCMUL.js";
|
|
6
|
+
import "../../../chunk-SWYNIQHD.js";
|
|
7
|
+
import "../../../chunk-LYKZAKVN.js";
|
|
8
|
+
import "../../../chunk-XGVDXMS3.js";
|
|
9
|
+
import "../../../chunk-ZSB6HGB5.js";
|
|
10
|
+
import "../../../chunk-WSBH5QD6.js";
|
|
11
|
+
import "../../../chunk-HCSCY6DU.js";
|
|
12
|
+
import "../../../chunk-ZCQ5UWVE.js";
|
|
13
|
+
import "../../../chunk-J2SIL62L.js";
|
|
14
|
+
import "../../../chunk-YVCKIDL5.js";
|
|
15
|
+
import "../../../chunk-YXO6NQ4E.js";
|
|
16
|
+
import "../../../chunk-4W6H5CZF.js";
|
|
17
|
+
import "../../../chunk-BROAUWON.js";
|
|
18
|
+
import "../../../chunk-6U3M7V32.js";
|
|
19
|
+
import "../../../chunk-57L2PE3B.js";
|
|
20
|
+
import "../../../chunk-ZJ6KVLUS.js";
|
|
21
|
+
import "../../../chunk-UVKRO5ER.js";
|
|
22
|
+
export {
|
|
23
|
+
Timeline
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from))
|
|
9
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
+
|
|
16
|
+
// src/ts/components/controls/timeline/types.ts
|
|
17
|
+
var types_exports = {};
|
|
18
|
+
module.exports = __toCommonJS(types_exports);
|
|
19
|
+
//# sourceMappingURL=types.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ts/components/controls/timeline/types.ts"],"sourcesContent":["import { RangeInputConfig } from \"../../rangeinput\";\r\n\r\ndeclare module \"../../rangeinput/types\" {\r\n interface RangeInputChunk {\r\n buffer?: HTMLElement;\r\n }\r\n}\r\n\r\nexport interface TimelineConfig extends RangeInputConfig {\r\n previews:\r\n | boolean\r\n | {\r\n address?: string;\r\n cols?: number;\r\n rows?: number;\r\n spf?: number;\r\n };\r\n compact: boolean;\r\n autopause: boolean;\r\n bufferMarks: boolean;\r\n playedMarks: boolean;\r\n}\r\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|