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.
Files changed (1861) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +38 -0
  3. package/dist/chunk-25AZZYCL.js +85 -0
  4. package/dist/chunk-25AZZYCL.js.map +1 -0
  5. package/dist/chunk-25IKIKAB.js +60 -0
  6. package/dist/chunk-25IKIKAB.js.map +1 -0
  7. package/dist/chunk-25ZZLGZ6.js +45 -0
  8. package/dist/chunk-25ZZLGZ6.js.map +1 -0
  9. package/dist/chunk-274C5J22.js +12 -0
  10. package/dist/chunk-274C5J22.js.map +1 -0
  11. package/dist/chunk-27FHLV4M.js +12 -0
  12. package/dist/chunk-27FHLV4M.js.map +1 -0
  13. package/dist/chunk-27MVVVJ7.js +405 -0
  14. package/dist/chunk-27MVVVJ7.js.map +1 -0
  15. package/dist/chunk-27SBY2N7.js +50 -0
  16. package/dist/chunk-27SBY2N7.js.map +1 -0
  17. package/dist/chunk-2J3FJY73.js +9 -0
  18. package/dist/chunk-2J3FJY73.js.map +1 -0
  19. package/dist/chunk-2JW4RYM4.js +170 -0
  20. package/dist/chunk-2JW4RYM4.js.map +1 -0
  21. package/dist/chunk-2PA7FU47.js +185 -0
  22. package/dist/chunk-2PA7FU47.js.map +1 -0
  23. package/dist/chunk-2VOAIUTU.js +9 -0
  24. package/dist/chunk-2VOAIUTU.js.map +1 -0
  25. package/dist/chunk-2W5XWGGE.js +7 -0
  26. package/dist/chunk-2W5XWGGE.js.map +1 -0
  27. package/dist/chunk-3C3GK24X.js +88 -0
  28. package/dist/chunk-3C3GK24X.js.map +1 -0
  29. package/dist/chunk-3KD22Z7D.js +9 -0
  30. package/dist/chunk-3KD22Z7D.js.map +1 -0
  31. package/dist/chunk-3OLEZVYI.js +196 -0
  32. package/dist/chunk-3OLEZVYI.js.map +1 -0
  33. package/dist/chunk-3OZEBWCF.js +12 -0
  34. package/dist/chunk-3OZEBWCF.js.map +1 -0
  35. package/dist/chunk-3T5CFCYB.js +45 -0
  36. package/dist/chunk-3T5CFCYB.js.map +1 -0
  37. package/dist/chunk-3VCTHGL6.js +86 -0
  38. package/dist/chunk-3VCTHGL6.js.map +1 -0
  39. package/dist/chunk-3WHPH6Q5.js +9 -0
  40. package/dist/chunk-3WHPH6Q5.js.map +1 -0
  41. package/dist/chunk-43MLKGCT.js +45 -0
  42. package/dist/chunk-43MLKGCT.js.map +1 -0
  43. package/dist/chunk-46QVDU2K.js +25 -0
  44. package/dist/chunk-46QVDU2K.js.map +1 -0
  45. package/dist/chunk-474PEQ33.js +78 -0
  46. package/dist/chunk-474PEQ33.js.map +1 -0
  47. package/dist/chunk-4FCGFO2J.js +9 -0
  48. package/dist/chunk-4FCGFO2J.js.map +1 -0
  49. package/dist/chunk-4JOPUUAL.js +185 -0
  50. package/dist/chunk-4JOPUUAL.js.map +1 -0
  51. package/dist/chunk-4QQXED6P.js +11 -0
  52. package/dist/chunk-4QQXED6P.js.map +1 -0
  53. package/dist/chunk-4VG5KHDO.js +52 -0
  54. package/dist/chunk-4VG5KHDO.js.map +1 -0
  55. package/dist/chunk-4W6H5CZF.js +1 -0
  56. package/dist/chunk-4W6H5CZF.js.map +1 -0
  57. package/dist/chunk-56CRICX7.js +154 -0
  58. package/dist/chunk-56CRICX7.js.map +1 -0
  59. package/dist/chunk-57L2PE3B.js +9 -0
  60. package/dist/chunk-57L2PE3B.js.map +1 -0
  61. package/dist/chunk-5CLVIO4N.js +33 -0
  62. package/dist/chunk-5CLVIO4N.js.map +1 -0
  63. package/dist/chunk-5GX67WSG.js +7 -0
  64. package/dist/chunk-5GX67WSG.js.map +1 -0
  65. package/dist/chunk-5SGNTRPL.js +47 -0
  66. package/dist/chunk-5SGNTRPL.js.map +1 -0
  67. package/dist/chunk-5TJURBKV.js +9 -0
  68. package/dist/chunk-5TJURBKV.js.map +1 -0
  69. package/dist/chunk-63E6JXTT.js +162 -0
  70. package/dist/chunk-63E6JXTT.js.map +1 -0
  71. package/dist/chunk-66HGOYPR.js +180 -0
  72. package/dist/chunk-66HGOYPR.js.map +1 -0
  73. package/dist/chunk-6IFGKHVM.js +9 -0
  74. package/dist/chunk-6IFGKHVM.js.map +1 -0
  75. package/dist/chunk-6K4HCMUL.js +32 -0
  76. package/dist/chunk-6K4HCMUL.js.map +1 -0
  77. package/dist/chunk-6KYXFWBF.js +32 -0
  78. package/dist/chunk-6KYXFWBF.js.map +1 -0
  79. package/dist/chunk-6R5BZZM6.js +95 -0
  80. package/dist/chunk-6R5BZZM6.js.map +1 -0
  81. package/dist/chunk-6S5BMP4A.js +9 -0
  82. package/dist/chunk-6S5BMP4A.js.map +1 -0
  83. package/dist/chunk-6SHHKTGD.js +73 -0
  84. package/dist/chunk-6SHHKTGD.js.map +1 -0
  85. package/dist/chunk-6U3M7V32.js +46 -0
  86. package/dist/chunk-6U3M7V32.js.map +1 -0
  87. package/dist/chunk-73XT2QVM.js +47 -0
  88. package/dist/chunk-73XT2QVM.js.map +1 -0
  89. package/dist/chunk-7FB3XGXR.js +471 -0
  90. package/dist/chunk-7FB3XGXR.js.map +1 -0
  91. package/dist/chunk-7HRR4LG4.js +115 -0
  92. package/dist/chunk-7HRR4LG4.js.map +1 -0
  93. package/dist/chunk-7I6DRKIN.js +58 -0
  94. package/dist/chunk-7I6DRKIN.js.map +1 -0
  95. package/dist/chunk-7MOZI57I.js +59 -0
  96. package/dist/chunk-7MOZI57I.js.map +1 -0
  97. package/dist/chunk-7PHLWSKV.js +95 -0
  98. package/dist/chunk-7PHLWSKV.js.map +1 -0
  99. package/dist/chunk-7Y4LQ5ED.js +45 -0
  100. package/dist/chunk-7Y4LQ5ED.js.map +1 -0
  101. package/dist/chunk-7YDZDHZH.js +19 -0
  102. package/dist/chunk-7YDZDHZH.js.map +1 -0
  103. package/dist/chunk-A7EG6K2X.js +54 -0
  104. package/dist/chunk-A7EG6K2X.js.map +1 -0
  105. package/dist/chunk-ABRBZ4IH.js +108 -0
  106. package/dist/chunk-ABRBZ4IH.js.map +1 -0
  107. package/dist/chunk-ACF6B245.js +17 -0
  108. package/dist/chunk-ACF6B245.js.map +1 -0
  109. package/dist/chunk-ACUUGJUG.js +53 -0
  110. package/dist/chunk-ACUUGJUG.js.map +1 -0
  111. package/dist/chunk-AIYSHJLG.js +42 -0
  112. package/dist/chunk-AIYSHJLG.js.map +1 -0
  113. package/dist/chunk-AKHJD2A3.js +50 -0
  114. package/dist/chunk-AKHJD2A3.js.map +1 -0
  115. package/dist/chunk-ATE4NMIF.js +22 -0
  116. package/dist/chunk-ATE4NMIF.js.map +1 -0
  117. package/dist/chunk-AZTSMVMN.js +138 -0
  118. package/dist/chunk-AZTSMVMN.js.map +1 -0
  119. package/dist/chunk-BFFQZMZX.js +108 -0
  120. package/dist/chunk-BFFQZMZX.js.map +1 -0
  121. package/dist/chunk-BKJRLSXA.js +329 -0
  122. package/dist/chunk-BKJRLSXA.js.map +1 -0
  123. package/dist/chunk-BLJDDFX2.js +228 -0
  124. package/dist/chunk-BLJDDFX2.js.map +1 -0
  125. package/dist/chunk-BROAUWON.js +123 -0
  126. package/dist/chunk-BROAUWON.js.map +1 -0
  127. package/dist/chunk-BU4AX4DA.js +49 -0
  128. package/dist/chunk-BU4AX4DA.js.map +1 -0
  129. package/dist/chunk-C2TANFKK.js +167 -0
  130. package/dist/chunk-C2TANFKK.js.map +1 -0
  131. package/dist/chunk-CAIDFMLB.js +164 -0
  132. package/dist/chunk-CAIDFMLB.js.map +1 -0
  133. package/dist/chunk-CCD3ZXIT.js +54 -0
  134. package/dist/chunk-CCD3ZXIT.js.map +1 -0
  135. package/dist/chunk-CEEX3HQ2.js +44 -0
  136. package/dist/chunk-CEEX3HQ2.js.map +1 -0
  137. package/dist/chunk-CIN7HWLH.js +26 -0
  138. package/dist/chunk-CIN7HWLH.js.map +1 -0
  139. package/dist/chunk-CL24QYM6.js +48 -0
  140. package/dist/chunk-CL24QYM6.js.map +1 -0
  141. package/dist/chunk-CTSPKWKN.js +9 -0
  142. package/dist/chunk-CTSPKWKN.js.map +1 -0
  143. package/dist/chunk-CYUYF57A.js +139 -0
  144. package/dist/chunk-CYUYF57A.js.map +1 -0
  145. package/dist/chunk-D5XNDZ4S.js +21 -0
  146. package/dist/chunk-D5XNDZ4S.js.map +1 -0
  147. package/dist/chunk-D7JQDN74.js +9 -0
  148. package/dist/chunk-D7JQDN74.js.map +1 -0
  149. package/dist/chunk-DKS7SZFN.js +165 -0
  150. package/dist/chunk-DKS7SZFN.js.map +1 -0
  151. package/dist/chunk-DM4ZIS4L.js +50 -0
  152. package/dist/chunk-DM4ZIS4L.js.map +1 -0
  153. package/dist/chunk-DNY72SCR.js +9 -0
  154. package/dist/chunk-DNY72SCR.js.map +1 -0
  155. package/dist/chunk-DQLWWVM3.js +25 -0
  156. package/dist/chunk-DQLWWVM3.js.map +1 -0
  157. package/dist/chunk-E56H3EOR.js +1 -0
  158. package/dist/chunk-E56H3EOR.js.map +1 -0
  159. package/dist/chunk-E56PSUT2.js +435 -0
  160. package/dist/chunk-E56PSUT2.js.map +1 -0
  161. package/dist/chunk-EF7RQIJK.js +9 -0
  162. package/dist/chunk-EF7RQIJK.js.map +1 -0
  163. package/dist/chunk-EHQJNRJV.js +449 -0
  164. package/dist/chunk-EHQJNRJV.js.map +1 -0
  165. package/dist/chunk-EIT6CZXJ.js +50 -0
  166. package/dist/chunk-EIT6CZXJ.js.map +1 -0
  167. package/dist/chunk-ERPQNMED.js +292 -0
  168. package/dist/chunk-ERPQNMED.js.map +1 -0
  169. package/dist/chunk-ESAOH6X5.js +15 -0
  170. package/dist/chunk-ESAOH6X5.js.map +1 -0
  171. package/dist/chunk-ESNKONBW.js +80 -0
  172. package/dist/chunk-ESNKONBW.js.map +1 -0
  173. package/dist/chunk-EUQ7SC5J.js +33 -0
  174. package/dist/chunk-EUQ7SC5J.js.map +1 -0
  175. package/dist/chunk-EUX3RZ3L.js +66 -0
  176. package/dist/chunk-EUX3RZ3L.js.map +1 -0
  177. package/dist/chunk-EVUTNLHC.js +7 -0
  178. package/dist/chunk-EVUTNLHC.js.map +1 -0
  179. package/dist/chunk-EY7PB3LA.js +59 -0
  180. package/dist/chunk-EY7PB3LA.js.map +1 -0
  181. package/dist/chunk-FCQDAU2C.js +7 -0
  182. package/dist/chunk-FCQDAU2C.js.map +1 -0
  183. package/dist/chunk-FHL5Z6MX.js +13 -0
  184. package/dist/chunk-FHL5Z6MX.js.map +1 -0
  185. package/dist/chunk-FIUVWAAQ.js +35 -0
  186. package/dist/chunk-FIUVWAAQ.js.map +1 -0
  187. package/dist/chunk-FN32KVQT.js +188 -0
  188. package/dist/chunk-FN32KVQT.js.map +1 -0
  189. package/dist/chunk-FX3UTAZK.js +31 -0
  190. package/dist/chunk-FX3UTAZK.js.map +1 -0
  191. package/dist/chunk-FXIL7BGP.js +43 -0
  192. package/dist/chunk-FXIL7BGP.js.map +1 -0
  193. package/dist/chunk-G7KANQFO.js +131 -0
  194. package/dist/chunk-G7KANQFO.js.map +1 -0
  195. package/dist/chunk-GDC7I2CJ.js +66 -0
  196. package/dist/chunk-GDC7I2CJ.js.map +1 -0
  197. package/dist/chunk-GM7YMURS.js +14 -0
  198. package/dist/chunk-GM7YMURS.js.map +1 -0
  199. package/dist/chunk-GQ7ITX5B.js +7 -0
  200. package/dist/chunk-GQ7ITX5B.js.map +1 -0
  201. package/dist/chunk-GSKI4IRL.js +34 -0
  202. package/dist/chunk-GSKI4IRL.js.map +1 -0
  203. package/dist/chunk-GUIBL2MZ.js +1 -0
  204. package/dist/chunk-GUIBL2MZ.js.map +1 -0
  205. package/dist/chunk-H24E5FRE.js +9 -0
  206. package/dist/chunk-H24E5FRE.js.map +1 -0
  207. package/dist/chunk-HA2GK6KH.js +9 -0
  208. package/dist/chunk-HA2GK6KH.js.map +1 -0
  209. package/dist/chunk-HCSCY6DU.js +458 -0
  210. package/dist/chunk-HCSCY6DU.js.map +1 -0
  211. package/dist/chunk-HGXGXW2U.js +26 -0
  212. package/dist/chunk-HGXGXW2U.js.map +1 -0
  213. package/dist/chunk-HH7PMFLU.js +33 -0
  214. package/dist/chunk-HH7PMFLU.js.map +1 -0
  215. package/dist/chunk-HJORMYPQ.js +66 -0
  216. package/dist/chunk-HJORMYPQ.js.map +1 -0
  217. package/dist/chunk-HN2UT66M.js +9 -0
  218. package/dist/chunk-HN2UT66M.js.map +1 -0
  219. package/dist/chunk-HNPBSC2A.js +132 -0
  220. package/dist/chunk-HNPBSC2A.js.map +1 -0
  221. package/dist/chunk-HNTARWVL.js +57 -0
  222. package/dist/chunk-HNTARWVL.js.map +1 -0
  223. package/dist/chunk-HPPHGUTD.js +1 -0
  224. package/dist/chunk-HPPHGUTD.js.map +1 -0
  225. package/dist/chunk-HPWORM77.js +199 -0
  226. package/dist/chunk-HPWORM77.js.map +1 -0
  227. package/dist/chunk-HYG6W442.js +66 -0
  228. package/dist/chunk-HYG6W442.js.map +1 -0
  229. package/dist/chunk-I3LBJOUW.js +249 -0
  230. package/dist/chunk-I3LBJOUW.js.map +1 -0
  231. package/dist/chunk-I47VPMZS.js +40 -0
  232. package/dist/chunk-I47VPMZS.js.map +1 -0
  233. package/dist/chunk-ID72UAJE.js +7 -0
  234. package/dist/chunk-ID72UAJE.js.map +1 -0
  235. package/dist/chunk-IENUYESB.js +33 -0
  236. package/dist/chunk-IENUYESB.js.map +1 -0
  237. package/dist/chunk-IFYBKLFH.js +15 -0
  238. package/dist/chunk-IFYBKLFH.js.map +1 -0
  239. package/dist/chunk-IJJ4F6HI.js +105 -0
  240. package/dist/chunk-IJJ4F6HI.js.map +1 -0
  241. package/dist/chunk-IKKQYZNA.js +43 -0
  242. package/dist/chunk-IKKQYZNA.js.map +1 -0
  243. package/dist/chunk-IUS3FRXS.js +446 -0
  244. package/dist/chunk-IUS3FRXS.js.map +1 -0
  245. package/dist/chunk-IVA7LFT2.js +12 -0
  246. package/dist/chunk-IVA7LFT2.js.map +1 -0
  247. package/dist/chunk-IXLSSEE7.js +39 -0
  248. package/dist/chunk-IXLSSEE7.js.map +1 -0
  249. package/dist/chunk-J2SIL62L.js +142 -0
  250. package/dist/chunk-J2SIL62L.js.map +1 -0
  251. package/dist/chunk-J54J2AED.js +117 -0
  252. package/dist/chunk-J54J2AED.js.map +1 -0
  253. package/dist/chunk-JFWYJV3J.js +61 -0
  254. package/dist/chunk-JFWYJV3J.js.map +1 -0
  255. package/dist/chunk-JP5X5JDL.js +10 -0
  256. package/dist/chunk-JP5X5JDL.js.map +1 -0
  257. package/dist/chunk-JPWNE7JO.js +11 -0
  258. package/dist/chunk-JPWNE7JO.js.map +1 -0
  259. package/dist/chunk-JRWYWTTT.js +9 -0
  260. package/dist/chunk-JRWYWTTT.js.map +1 -0
  261. package/dist/chunk-JZXJAJNW.js +316 -0
  262. package/dist/chunk-JZXJAJNW.js.map +1 -0
  263. package/dist/chunk-K4UHBEDT.js +9 -0
  264. package/dist/chunk-K4UHBEDT.js.map +1 -0
  265. package/dist/chunk-K7AAKFQF.js +12 -0
  266. package/dist/chunk-K7AAKFQF.js.map +1 -0
  267. package/dist/chunk-KD3OBG25.js +15 -0
  268. package/dist/chunk-KD3OBG25.js.map +1 -0
  269. package/dist/chunk-KJ74PGBI.js +45 -0
  270. package/dist/chunk-KJ74PGBI.js.map +1 -0
  271. package/dist/chunk-KLAI7YSD.js +7 -0
  272. package/dist/chunk-KLAI7YSD.js.map +1 -0
  273. package/dist/chunk-KMENKVHP.js +110 -0
  274. package/dist/chunk-KMENKVHP.js.map +1 -0
  275. package/dist/chunk-KOAHN3L5.js +9 -0
  276. package/dist/chunk-KOAHN3L5.js.map +1 -0
  277. package/dist/chunk-KQXT3GDF.js +16 -0
  278. package/dist/chunk-KQXT3GDF.js.map +1 -0
  279. package/dist/chunk-L6J66EOL.js +44 -0
  280. package/dist/chunk-L6J66EOL.js.map +1 -0
  281. package/dist/chunk-LNUYM3ZX.js +26 -0
  282. package/dist/chunk-LNUYM3ZX.js.map +1 -0
  283. package/dist/chunk-LSKNTXY2.js +57 -0
  284. package/dist/chunk-LSKNTXY2.js.map +1 -0
  285. package/dist/chunk-LTEL7NEG.js +219 -0
  286. package/dist/chunk-LTEL7NEG.js.map +1 -0
  287. package/dist/chunk-LTVS74EO.js +45 -0
  288. package/dist/chunk-LTVS74EO.js.map +1 -0
  289. package/dist/chunk-LVDP2QOX.js +99 -0
  290. package/dist/chunk-LVDP2QOX.js.map +1 -0
  291. package/dist/chunk-LWLNQS3O.js +569 -0
  292. package/dist/chunk-LWLNQS3O.js.map +1 -0
  293. package/dist/chunk-LYKZAKVN.js +19 -0
  294. package/dist/chunk-LYKZAKVN.js.map +1 -0
  295. package/dist/chunk-M2NVOKGL.js +97 -0
  296. package/dist/chunk-M2NVOKGL.js.map +1 -0
  297. package/dist/chunk-M3UOD7TX.js +427 -0
  298. package/dist/chunk-M3UOD7TX.js.map +1 -0
  299. package/dist/chunk-M5C4XQO2.js +45 -0
  300. package/dist/chunk-M5C4XQO2.js.map +1 -0
  301. package/dist/chunk-M5DFGJF7.js +10 -0
  302. package/dist/chunk-M5DFGJF7.js.map +1 -0
  303. package/dist/chunk-MAXX5M6N.js +9 -0
  304. package/dist/chunk-MAXX5M6N.js.map +1 -0
  305. package/dist/chunk-MEAGFRLE.js +37 -0
  306. package/dist/chunk-MEAGFRLE.js.map +1 -0
  307. package/dist/chunk-MFYNCWAO.js +25 -0
  308. package/dist/chunk-MFYNCWAO.js.map +1 -0
  309. package/dist/chunk-MJ26PFRF.js +12 -0
  310. package/dist/chunk-MJ26PFRF.js.map +1 -0
  311. package/dist/chunk-MP2GRDUX.js +10 -0
  312. package/dist/chunk-MP2GRDUX.js.map +1 -0
  313. package/dist/chunk-MTQLUS5O.js +51 -0
  314. package/dist/chunk-MTQLUS5O.js.map +1 -0
  315. package/dist/chunk-MUDO3ZPJ.js +10 -0
  316. package/dist/chunk-MUDO3ZPJ.js.map +1 -0
  317. package/dist/chunk-N2Q3TZXW.js +9 -0
  318. package/dist/chunk-N2Q3TZXW.js.map +1 -0
  319. package/dist/chunk-N52KK6K5.js +48 -0
  320. package/dist/chunk-N52KK6K5.js.map +1 -0
  321. package/dist/chunk-N5F2YHLD.js +28 -0
  322. package/dist/chunk-N5F2YHLD.js.map +1 -0
  323. package/dist/chunk-NGX5YDCB.js +7 -0
  324. package/dist/chunk-NGX5YDCB.js.map +1 -0
  325. package/dist/chunk-NHDRXRXA.js +33 -0
  326. package/dist/chunk-NHDRXRXA.js.map +1 -0
  327. package/dist/chunk-NPK5ITEG.js +7 -0
  328. package/dist/chunk-NPK5ITEG.js.map +1 -0
  329. package/dist/chunk-NPTM6BGC.js +15 -0
  330. package/dist/chunk-NPTM6BGC.js.map +1 -0
  331. package/dist/chunk-NTNVW4BG.js +7 -0
  332. package/dist/chunk-NTNVW4BG.js.map +1 -0
  333. package/dist/chunk-OBASYXH2.js +26 -0
  334. package/dist/chunk-OBASYXH2.js.map +1 -0
  335. package/dist/chunk-OBQNTU5F.js +7 -0
  336. package/dist/chunk-OBQNTU5F.js.map +1 -0
  337. package/dist/chunk-OEHNS7YX.js +7 -0
  338. package/dist/chunk-OEHNS7YX.js.map +1 -0
  339. package/dist/chunk-OJAUFHEW.js +107 -0
  340. package/dist/chunk-OJAUFHEW.js.map +1 -0
  341. package/dist/chunk-ONW4BD2Z.js +38 -0
  342. package/dist/chunk-ONW4BD2Z.js.map +1 -0
  343. package/dist/chunk-OOXUZMZ7.js +9 -0
  344. package/dist/chunk-OOXUZMZ7.js.map +1 -0
  345. package/dist/chunk-OP3PIADD.js +45 -0
  346. package/dist/chunk-OP3PIADD.js.map +1 -0
  347. package/dist/chunk-OSDM6ZVT.js +7 -0
  348. package/dist/chunk-OSDM6ZVT.js.map +1 -0
  349. package/dist/chunk-OZEEIRCS.js +9 -0
  350. package/dist/chunk-OZEEIRCS.js.map +1 -0
  351. package/dist/chunk-PGSBJUJ4.js +9 -0
  352. package/dist/chunk-PGSBJUJ4.js.map +1 -0
  353. package/dist/chunk-PPIDZONA.js +38 -0
  354. package/dist/chunk-PPIDZONA.js.map +1 -0
  355. package/dist/chunk-PTMZQ7E3.js +7 -0
  356. package/dist/chunk-PTMZQ7E3.js.map +1 -0
  357. package/dist/chunk-PV24XKW2.js +11 -0
  358. package/dist/chunk-PV24XKW2.js.map +1 -0
  359. package/dist/chunk-PXU563OY.js +26 -0
  360. package/dist/chunk-PXU563OY.js.map +1 -0
  361. package/dist/chunk-Q2XYS26I.js +11 -0
  362. package/dist/chunk-Q2XYS26I.js.map +1 -0
  363. package/dist/chunk-Q5NG3DY7.js +31 -0
  364. package/dist/chunk-Q5NG3DY7.js.map +1 -0
  365. package/dist/chunk-QADXAWA6.js +71 -0
  366. package/dist/chunk-QADXAWA6.js.map +1 -0
  367. package/dist/chunk-QG2FZCJ6.js +7 -0
  368. package/dist/chunk-QG2FZCJ6.js.map +1 -0
  369. package/dist/chunk-QMLGJPHC.js +7 -0
  370. package/dist/chunk-QMLGJPHC.js.map +1 -0
  371. package/dist/chunk-QQKXAEXW.js +50 -0
  372. package/dist/chunk-QQKXAEXW.js.map +1 -0
  373. package/dist/chunk-QS3C4KCF.js +95 -0
  374. package/dist/chunk-QS3C4KCF.js.map +1 -0
  375. package/dist/chunk-R4HNE7TL.js +7 -0
  376. package/dist/chunk-R4HNE7TL.js.map +1 -0
  377. package/dist/chunk-R5PBXGKK.js +10 -0
  378. package/dist/chunk-R5PBXGKK.js.map +1 -0
  379. package/dist/chunk-RFQXCN62.js +13 -0
  380. package/dist/chunk-RFQXCN62.js.map +1 -0
  381. package/dist/chunk-RGPGW4ZJ.js +9 -0
  382. package/dist/chunk-RGPGW4ZJ.js.map +1 -0
  383. package/dist/chunk-RKBRRJY6.js +9 -0
  384. package/dist/chunk-RKBRRJY6.js.map +1 -0
  385. package/dist/chunk-RM6NFJ7V.js +32 -0
  386. package/dist/chunk-RM6NFJ7V.js.map +1 -0
  387. package/dist/chunk-RRYAXULQ.js +48 -0
  388. package/dist/chunk-RRYAXULQ.js.map +1 -0
  389. package/dist/chunk-RS4W2FAL.js +89 -0
  390. package/dist/chunk-RS4W2FAL.js.map +1 -0
  391. package/dist/chunk-RSUFDTAH.js +110 -0
  392. package/dist/chunk-RSUFDTAH.js.map +1 -0
  393. package/dist/chunk-S2XKXJNC.js +30 -0
  394. package/dist/chunk-S2XKXJNC.js.map +1 -0
  395. package/dist/chunk-S4NKJDRC.js +79 -0
  396. package/dist/chunk-S4NKJDRC.js.map +1 -0
  397. package/dist/chunk-S7QGB2FC.js +27 -0
  398. package/dist/chunk-S7QGB2FC.js.map +1 -0
  399. package/dist/chunk-SCL4FW6F.js +425 -0
  400. package/dist/chunk-SCL4FW6F.js.map +1 -0
  401. package/dist/chunk-SITF6GNM.js +7 -0
  402. package/dist/chunk-SITF6GNM.js.map +1 -0
  403. package/dist/chunk-SPCINICO.js +5 -0
  404. package/dist/chunk-SPCINICO.js.map +1 -0
  405. package/dist/chunk-SPOTTHMN.js +24 -0
  406. package/dist/chunk-SPOTTHMN.js.map +1 -0
  407. package/dist/chunk-SWYNIQHD.js +77 -0
  408. package/dist/chunk-SWYNIQHD.js.map +1 -0
  409. package/dist/chunk-SXXITYPP.js +69 -0
  410. package/dist/chunk-SXXITYPP.js.map +1 -0
  411. package/dist/chunk-T4YZKI3Y.js +133 -0
  412. package/dist/chunk-T4YZKI3Y.js.map +1 -0
  413. package/dist/chunk-T7AIKZ6A.js +44 -0
  414. package/dist/chunk-T7AIKZ6A.js.map +1 -0
  415. package/dist/chunk-T7EX6RI2.js +34 -0
  416. package/dist/chunk-T7EX6RI2.js.map +1 -0
  417. package/dist/chunk-TB3GE2MH.js +93 -0
  418. package/dist/chunk-TB3GE2MH.js.map +1 -0
  419. package/dist/chunk-TE4JFCHB.js +52 -0
  420. package/dist/chunk-TE4JFCHB.js.map +1 -0
  421. package/dist/chunk-TGQYCEFL.js +37 -0
  422. package/dist/chunk-TGQYCEFL.js.map +1 -0
  423. package/dist/chunk-TMTWPBFD.js +10 -0
  424. package/dist/chunk-TMTWPBFD.js.map +1 -0
  425. package/dist/chunk-TSAEQFDM.js +65 -0
  426. package/dist/chunk-TSAEQFDM.js.map +1 -0
  427. package/dist/chunk-U3FX24C6.js +1 -0
  428. package/dist/chunk-U3FX24C6.js.map +1 -0
  429. package/dist/chunk-U776U22S.js +45 -0
  430. package/dist/chunk-U776U22S.js.map +1 -0
  431. package/dist/chunk-UCBDCGYX.js +9 -0
  432. package/dist/chunk-UCBDCGYX.js.map +1 -0
  433. package/dist/chunk-UGNYASFC.js +59 -0
  434. package/dist/chunk-UGNYASFC.js.map +1 -0
  435. package/dist/chunk-UJTVBENE.js +7 -0
  436. package/dist/chunk-UJTVBENE.js.map +1 -0
  437. package/dist/chunk-UKVFVAOO.js +75 -0
  438. package/dist/chunk-UKVFVAOO.js.map +1 -0
  439. package/dist/chunk-URKWHZXA.js +25 -0
  440. package/dist/chunk-URKWHZXA.js.map +1 -0
  441. package/dist/chunk-UVKRO5ER.js +13 -0
  442. package/dist/chunk-UVKRO5ER.js.map +1 -0
  443. package/dist/chunk-V3D7FBSR.js +14 -0
  444. package/dist/chunk-V3D7FBSR.js.map +1 -0
  445. package/dist/chunk-VCVMCKZI.js +10 -0
  446. package/dist/chunk-VCVMCKZI.js.map +1 -0
  447. package/dist/chunk-VNGMGQF5.js +1 -0
  448. package/dist/chunk-VNGMGQF5.js.map +1 -0
  449. package/dist/chunk-VSK7766S.js +163 -0
  450. package/dist/chunk-VSK7766S.js.map +1 -0
  451. package/dist/chunk-VZLDFZC7.js +241 -0
  452. package/dist/chunk-VZLDFZC7.js.map +1 -0
  453. package/dist/chunk-W2KUESDN.js +25 -0
  454. package/dist/chunk-W2KUESDN.js.map +1 -0
  455. package/dist/chunk-W2SHHRYX.js +420 -0
  456. package/dist/chunk-W2SHHRYX.js.map +1 -0
  457. package/dist/chunk-WBLZ5GBM.js +158 -0
  458. package/dist/chunk-WBLZ5GBM.js.map +1 -0
  459. package/dist/chunk-WODJ2VQH.js +41 -0
  460. package/dist/chunk-WODJ2VQH.js.map +1 -0
  461. package/dist/chunk-WQXLL5IV.js +9 -0
  462. package/dist/chunk-WQXLL5IV.js.map +1 -0
  463. package/dist/chunk-WR3327CL.js +89 -0
  464. package/dist/chunk-WR3327CL.js.map +1 -0
  465. package/dist/chunk-WSBH5QD6.js +309 -0
  466. package/dist/chunk-WSBH5QD6.js.map +1 -0
  467. package/dist/chunk-WTHHXWQM.js +7 -0
  468. package/dist/chunk-WTHHXWQM.js.map +1 -0
  469. package/dist/chunk-WW56NFQS.js +7 -0
  470. package/dist/chunk-WW56NFQS.js.map +1 -0
  471. package/dist/chunk-WYVXNXZI.js +73 -0
  472. package/dist/chunk-WYVXNXZI.js.map +1 -0
  473. package/dist/chunk-X3MYMAS2.js +56 -0
  474. package/dist/chunk-X3MYMAS2.js.map +1 -0
  475. package/dist/chunk-X7CDYCQF.js +22 -0
  476. package/dist/chunk-X7CDYCQF.js.map +1 -0
  477. package/dist/chunk-XGVDXMS3.js +90 -0
  478. package/dist/chunk-XGVDXMS3.js.map +1 -0
  479. package/dist/chunk-XHXIXEGS.js +7 -0
  480. package/dist/chunk-XHXIXEGS.js.map +1 -0
  481. package/dist/chunk-XJ6HO3WP.js +46 -0
  482. package/dist/chunk-XJ6HO3WP.js.map +1 -0
  483. package/dist/chunk-XMR6HHTA.js +59 -0
  484. package/dist/chunk-XMR6HHTA.js.map +1 -0
  485. package/dist/chunk-XR2KBJIP.js +54 -0
  486. package/dist/chunk-XR2KBJIP.js.map +1 -0
  487. package/dist/chunk-XVN5W3A7.js +50 -0
  488. package/dist/chunk-XVN5W3A7.js.map +1 -0
  489. package/dist/chunk-XXYOJDOZ.js +11 -0
  490. package/dist/chunk-XXYOJDOZ.js.map +1 -0
  491. package/dist/chunk-XZROR7RJ.js +25 -0
  492. package/dist/chunk-XZROR7RJ.js.map +1 -0
  493. package/dist/chunk-YF3LWJL4.js +7 -0
  494. package/dist/chunk-YF3LWJL4.js.map +1 -0
  495. package/dist/chunk-YFM4P3Z3.js +309 -0
  496. package/dist/chunk-YFM4P3Z3.js.map +1 -0
  497. package/dist/chunk-YFVOBSKP.js +52 -0
  498. package/dist/chunk-YFVOBSKP.js.map +1 -0
  499. package/dist/chunk-YFZW72PC.js +45 -0
  500. package/dist/chunk-YFZW72PC.js.map +1 -0
  501. package/dist/chunk-YHTCXXEG.js +9 -0
  502. package/dist/chunk-YHTCXXEG.js.map +1 -0
  503. package/dist/chunk-YJVUJ6AA.js +93 -0
  504. package/dist/chunk-YJVUJ6AA.js.map +1 -0
  505. package/dist/chunk-YKB67FZ5.js +46 -0
  506. package/dist/chunk-YKB67FZ5.js.map +1 -0
  507. package/dist/chunk-YS2PK7QA.js +35 -0
  508. package/dist/chunk-YS2PK7QA.js.map +1 -0
  509. package/dist/chunk-YURDFQ6X.js +33 -0
  510. package/dist/chunk-YURDFQ6X.js.map +1 -0
  511. package/dist/chunk-YVCKIDL5.js +61 -0
  512. package/dist/chunk-YVCKIDL5.js.map +1 -0
  513. package/dist/chunk-YXO6NQ4E.js +49 -0
  514. package/dist/chunk-YXO6NQ4E.js.map +1 -0
  515. package/dist/chunk-Z2AEG3J7.js +53 -0
  516. package/dist/chunk-Z2AEG3J7.js.map +1 -0
  517. package/dist/chunk-Z4I2MQ7B.js +26 -0
  518. package/dist/chunk-Z4I2MQ7B.js.map +1 -0
  519. package/dist/chunk-ZBPKZKIJ.js +25 -0
  520. package/dist/chunk-ZBPKZKIJ.js.map +1 -0
  521. package/dist/chunk-ZCMJVQ6P.js +10 -0
  522. package/dist/chunk-ZCMJVQ6P.js.map +1 -0
  523. package/dist/chunk-ZCQ5UWVE.js +27 -0
  524. package/dist/chunk-ZCQ5UWVE.js.map +1 -0
  525. package/dist/chunk-ZFCTBLWX.js +12 -0
  526. package/dist/chunk-ZFCTBLWX.js.map +1 -0
  527. package/dist/chunk-ZJ6KVLUS.js +296 -0
  528. package/dist/chunk-ZJ6KVLUS.js.map +1 -0
  529. package/dist/chunk-ZRCFHUS4.js +37 -0
  530. package/dist/chunk-ZRCFHUS4.js.map +1 -0
  531. package/dist/chunk-ZSB6HGB5.js +50 -0
  532. package/dist/chunk-ZSB6HGB5.js.map +1 -0
  533. package/dist/chunk-ZSG6ROJA.js +45 -0
  534. package/dist/chunk-ZSG6ROJA.js.map +1 -0
  535. package/dist/chunk-ZSQIEOQO.js +61 -0
  536. package/dist/chunk-ZSQIEOQO.js.map +1 -0
  537. package/dist/chunk-ZTMXXISI.js +158 -0
  538. package/dist/chunk-ZTMXXISI.js.map +1 -0
  539. package/dist/chunk-ZUMPSWHW.js +138 -0
  540. package/dist/chunk-ZUMPSWHW.js.map +1 -0
  541. package/dist/chunk-ZUYSQ37E.js +88 -0
  542. package/dist/chunk-ZUYSQ37E.js.map +1 -0
  543. package/dist/components/base/index.cjs +156 -0
  544. package/dist/components/base/index.cjs.map +1 -0
  545. package/dist/components/base/index.js +15 -0
  546. package/dist/components/base/index.js.map +1 -0
  547. package/dist/components/base/types.cjs +19 -0
  548. package/dist/components/base/types.cjs.map +1 -0
  549. package/dist/components/base/types.js +1 -0
  550. package/dist/components/base/types.js.map +1 -0
  551. package/dist/components/buffer.cjs +184 -0
  552. package/dist/components/buffer.cjs.map +1 -0
  553. package/dist/components/buffer.js +18 -0
  554. package/dist/components/buffer.js.map +1 -0
  555. package/dist/components/captionsview.cjs +378 -0
  556. package/dist/components/captionsview.cjs.map +1 -0
  557. package/dist/components/captionsview.js +22 -0
  558. package/dist/components/captionsview.js.map +1 -0
  559. package/dist/components/controls/airplay.cjs +441 -0
  560. package/dist/components/controls/airplay.cjs.map +1 -0
  561. package/dist/components/controls/airplay.js +21 -0
  562. package/dist/components/controls/airplay.js.map +1 -0
  563. package/dist/components/controls/backward10.cjs +427 -0
  564. package/dist/components/controls/backward10.cjs.map +1 -0
  565. package/dist/components/controls/backward10.js +21 -0
  566. package/dist/components/controls/backward10.js.map +1 -0
  567. package/dist/components/controls/bignext.cjs +448 -0
  568. package/dist/components/controls/bignext.cjs.map +1 -0
  569. package/dist/components/controls/bignext.js +21 -0
  570. package/dist/components/controls/bignext.js.map +1 -0
  571. package/dist/components/controls/bigplaypause.cjs +440 -0
  572. package/dist/components/controls/bigplaypause.cjs.map +1 -0
  573. package/dist/components/controls/bigplaypause.js +21 -0
  574. package/dist/components/controls/bigplaypause.js.map +1 -0
  575. package/dist/components/controls/bigprev.cjs +448 -0
  576. package/dist/components/controls/bigprev.cjs.map +1 -0
  577. package/dist/components/controls/bigprev.js +21 -0
  578. package/dist/components/controls/bigprev.js.map +1 -0
  579. package/dist/components/controls/brightness/index.cjs +767 -0
  580. package/dist/components/controls/brightness/index.cjs.map +1 -0
  581. package/dist/components/controls/brightness/index.js +25 -0
  582. package/dist/components/controls/brightness/index.js.map +1 -0
  583. package/dist/components/controls/brightness/slider.cjs +460 -0
  584. package/dist/components/controls/brightness/slider.cjs.map +1 -0
  585. package/dist/components/controls/brightness/slider.js +21 -0
  586. package/dist/components/controls/brightness/slider.js.map +1 -0
  587. package/dist/components/controls/captions.cjs +452 -0
  588. package/dist/components/controls/captions.cjs.map +1 -0
  589. package/dist/components/controls/captions.js +21 -0
  590. package/dist/components/controls/captions.js.map +1 -0
  591. package/dist/components/controls/capture.cjs +455 -0
  592. package/dist/components/controls/capture.cjs.map +1 -0
  593. package/dist/components/controls/capture.js +21 -0
  594. package/dist/components/controls/capture.js.map +1 -0
  595. package/dist/components/controls/cast.cjs +441 -0
  596. package/dist/components/controls/cast.cjs.map +1 -0
  597. package/dist/components/controls/cast.js +21 -0
  598. package/dist/components/controls/cast.js.map +1 -0
  599. package/dist/components/controls/chapter.cjs +213 -0
  600. package/dist/components/controls/chapter.cjs.map +1 -0
  601. package/dist/components/controls/chapter.js +18 -0
  602. package/dist/components/controls/chapter.js.map +1 -0
  603. package/dist/components/controls/duration.cjs +217 -0
  604. package/dist/components/controls/duration.cjs.map +1 -0
  605. package/dist/components/controls/duration.js +18 -0
  606. package/dist/components/controls/duration.js.map +1 -0
  607. package/dist/components/controls/expandminiplayer.cjs +430 -0
  608. package/dist/components/controls/expandminiplayer.cjs.map +1 -0
  609. package/dist/components/controls/expandminiplayer.js +21 -0
  610. package/dist/components/controls/expandminiplayer.js.map +1 -0
  611. package/dist/components/controls/forward10.cjs +427 -0
  612. package/dist/components/controls/forward10.cjs.map +1 -0
  613. package/dist/components/controls/forward10.js +21 -0
  614. package/dist/components/controls/forward10.js.map +1 -0
  615. package/dist/components/controls/fullscreen.cjs +441 -0
  616. package/dist/components/controls/fullscreen.cjs.map +1 -0
  617. package/dist/components/controls/fullscreen.js +21 -0
  618. package/dist/components/controls/fullscreen.js.map +1 -0
  619. package/dist/components/controls/fullscreenlock.cjs +433 -0
  620. package/dist/components/controls/fullscreenlock.cjs.map +1 -0
  621. package/dist/components/controls/fullscreenlock.js +21 -0
  622. package/dist/components/controls/fullscreenlock.js.map +1 -0
  623. package/dist/components/controls/fullscreenorientation.cjs +436 -0
  624. package/dist/components/controls/fullscreenorientation.cjs.map +1 -0
  625. package/dist/components/controls/fullscreenorientation.js +21 -0
  626. package/dist/components/controls/fullscreenorientation.js.map +1 -0
  627. package/dist/components/controls/meta.cjs +298 -0
  628. package/dist/components/controls/meta.cjs.map +1 -0
  629. package/dist/components/controls/meta.js +18 -0
  630. package/dist/components/controls/meta.js.map +1 -0
  631. package/dist/components/controls/next.cjs +444 -0
  632. package/dist/components/controls/next.cjs.map +1 -0
  633. package/dist/components/controls/next.js +21 -0
  634. package/dist/components/controls/next.js.map +1 -0
  635. package/dist/components/controls/objectfit.cjs +444 -0
  636. package/dist/components/controls/objectfit.cjs.map +1 -0
  637. package/dist/components/controls/objectfit.js +21 -0
  638. package/dist/components/controls/objectfit.js.map +1 -0
  639. package/dist/components/controls/pictureinpicture.cjs +441 -0
  640. package/dist/components/controls/pictureinpicture.cjs.map +1 -0
  641. package/dist/components/controls/pictureinpicture.js +21 -0
  642. package/dist/components/controls/pictureinpicture.js.map +1 -0
  643. package/dist/components/controls/playpause.cjs +441 -0
  644. package/dist/components/controls/playpause.cjs.map +1 -0
  645. package/dist/components/controls/playpause.js +21 -0
  646. package/dist/components/controls/playpause.js.map +1 -0
  647. package/dist/components/controls/prev.cjs +444 -0
  648. package/dist/components/controls/prev.cjs.map +1 -0
  649. package/dist/components/controls/prev.js +21 -0
  650. package/dist/components/controls/prev.js.map +1 -0
  651. package/dist/components/controls/removeminiplayer.cjs +432 -0
  652. package/dist/components/controls/removeminiplayer.cjs.map +1 -0
  653. package/dist/components/controls/removeminiplayer.js +21 -0
  654. package/dist/components/controls/removeminiplayer.js.map +1 -0
  655. package/dist/components/controls/settings.cjs +443 -0
  656. package/dist/components/controls/settings.cjs.map +1 -0
  657. package/dist/components/controls/settings.js +21 -0
  658. package/dist/components/controls/settings.js.map +1 -0
  659. package/dist/components/controls/theater.cjs +441 -0
  660. package/dist/components/controls/theater.cjs.map +1 -0
  661. package/dist/components/controls/theater.js +21 -0
  662. package/dist/components/controls/theater.js.map +1 -0
  663. package/dist/components/controls/time.cjs +230 -0
  664. package/dist/components/controls/time.cjs.map +1 -0
  665. package/dist/components/controls/time.js +18 -0
  666. package/dist/components/controls/time.js.map +1 -0
  667. package/dist/components/controls/timeandduration.cjs +251 -0
  668. package/dist/components/controls/timeandduration.cjs.map +1 -0
  669. package/dist/components/controls/timeandduration.js +18 -0
  670. package/dist/components/controls/timeandduration.js.map +1 -0
  671. package/dist/components/controls/timeline/index.cjs +713 -0
  672. package/dist/components/controls/timeline/index.cjs.map +1 -0
  673. package/dist/components/controls/timeline/index.js +25 -0
  674. package/dist/components/controls/timeline/index.js.map +1 -0
  675. package/dist/components/controls/timeline/types.cjs +19 -0
  676. package/dist/components/controls/timeline/types.cjs.map +1 -0
  677. package/dist/components/controls/timeline/types.js +1 -0
  678. package/dist/components/controls/timeline/types.js.map +1 -0
  679. package/dist/components/controls/volume/index.cjs +767 -0
  680. package/dist/components/controls/volume/index.cjs.map +1 -0
  681. package/dist/components/controls/volume/index.js +25 -0
  682. package/dist/components/controls/volume/index.js.map +1 -0
  683. package/dist/components/controls/volume/slider.cjs +460 -0
  684. package/dist/components/controls/volume/slider.cjs.map +1 -0
  685. package/dist/components/controls/volume/slider.js +21 -0
  686. package/dist/components/controls/volume/slider.js.map +1 -0
  687. package/dist/components/holders/airplayplaceholder.cjs +446 -0
  688. package/dist/components/holders/airplayplaceholder.cjs.map +1 -0
  689. package/dist/components/holders/airplayplaceholder.js +21 -0
  690. package/dist/components/holders/airplayplaceholder.js.map +1 -0
  691. package/dist/components/holders/castplaceholder.cjs +446 -0
  692. package/dist/components/holders/castplaceholder.cjs.map +1 -0
  693. package/dist/components/holders/castplaceholder.js +21 -0
  694. package/dist/components/holders/castplaceholder.js.map +1 -0
  695. package/dist/components/holders/pipplaceholder.cjs +446 -0
  696. package/dist/components/holders/pipplaceholder.cjs.map +1 -0
  697. package/dist/components/holders/pipplaceholder.js +30 -0
  698. package/dist/components/holders/pipplaceholder.js.map +1 -0
  699. package/dist/components/icons/add.cjs +27 -0
  700. package/dist/components/icons/add.cjs.map +1 -0
  701. package/dist/components/icons/add.js +8 -0
  702. package/dist/components/icons/add.js.map +1 -0
  703. package/dist/components/icons/airplay.cjs +30 -0
  704. package/dist/components/icons/airplay.cjs.map +1 -0
  705. package/dist/components/icons/airplay.js +8 -0
  706. package/dist/components/icons/airplay.js.map +1 -0
  707. package/dist/components/icons/airplayplaceholder.cjs +39 -0
  708. package/dist/components/icons/airplayplaceholder.cjs.map +1 -0
  709. package/dist/components/icons/airplayplaceholder.js +8 -0
  710. package/dist/components/icons/airplayplaceholder.js.map +1 -0
  711. package/dist/components/icons/ambience.cjs +27 -0
  712. package/dist/components/icons/ambience.cjs.map +1 -0
  713. package/dist/components/icons/ambience.js +8 -0
  714. package/dist/components/icons/ambience.js.map +1 -0
  715. package/dist/components/icons/audiotrack.cjs +27 -0
  716. package/dist/components/icons/audiotrack.cjs.map +1 -0
  717. package/dist/components/icons/audiotrack.js +8 -0
  718. package/dist/components/icons/audiotrack.js.map +1 -0
  719. package/dist/components/icons/autoplay.cjs +27 -0
  720. package/dist/components/icons/autoplay.cjs.map +1 -0
  721. package/dist/components/icons/autoplay.js +8 -0
  722. package/dist/components/icons/autoplay.js.map +1 -0
  723. package/dist/components/icons/backward10.cjs +29 -0
  724. package/dist/components/icons/backward10.cjs.map +1 -0
  725. package/dist/components/icons/backward10.js +8 -0
  726. package/dist/components/icons/backward10.js.map +1 -0
  727. package/dist/components/icons/brightnessdark.cjs +29 -0
  728. package/dist/components/icons/brightnessdark.cjs.map +1 -0
  729. package/dist/components/icons/brightnessdark.js +8 -0
  730. package/dist/components/icons/brightnessdark.js.map +1 -0
  731. package/dist/components/icons/brightnesshigh.cjs +29 -0
  732. package/dist/components/icons/brightnesshigh.cjs.map +1 -0
  733. package/dist/components/icons/brightnesshigh.js +8 -0
  734. package/dist/components/icons/brightnesshigh.js.map +1 -0
  735. package/dist/components/icons/brightnesslow.cjs +29 -0
  736. package/dist/components/icons/brightnesslow.cjs.map +1 -0
  737. package/dist/components/icons/brightnesslow.js +8 -0
  738. package/dist/components/icons/brightnesslow.js.map +1 -0
  739. package/dist/components/icons/bwd.cjs +31 -0
  740. package/dist/components/icons/bwd.cjs.map +1 -0
  741. package/dist/components/icons/bwd.js +8 -0
  742. package/dist/components/icons/bwd.js.map +1 -0
  743. package/dist/components/icons/captions.cjs +29 -0
  744. package/dist/components/icons/captions.cjs.map +1 -0
  745. package/dist/components/icons/captions.js +8 -0
  746. package/dist/components/icons/captions.js.map +1 -0
  747. package/dist/components/icons/capture.cjs +29 -0
  748. package/dist/components/icons/capture.cjs.map +1 -0
  749. package/dist/components/icons/capture.js +8 -0
  750. package/dist/components/icons/capture.js.map +1 -0
  751. package/dist/components/icons/cast.cjs +29 -0
  752. package/dist/components/icons/cast.cjs.map +1 -0
  753. package/dist/components/icons/cast.js +8 -0
  754. package/dist/components/icons/cast.js.map +1 -0
  755. package/dist/components/icons/castplaceholder.cjs +42 -0
  756. package/dist/components/icons/castplaceholder.cjs.map +1 -0
  757. package/dist/components/icons/castplaceholder.js +8 -0
  758. package/dist/components/icons/castplaceholder.js.map +1 -0
  759. package/dist/components/icons/chapters.cjs +27 -0
  760. package/dist/components/icons/chapters.cjs.map +1 -0
  761. package/dist/components/icons/chapters.js +8 -0
  762. package/dist/components/icons/chapters.js.map +1 -0
  763. package/dist/components/icons/configure.cjs +27 -0
  764. package/dist/components/icons/configure.cjs.map +1 -0
  765. package/dist/components/icons/configure.js +8 -0
  766. package/dist/components/icons/configure.js.map +1 -0
  767. package/dist/components/icons/deleteicon.cjs +27 -0
  768. package/dist/components/icons/deleteicon.cjs.map +1 -0
  769. package/dist/components/icons/deleteicon.js +8 -0
  770. package/dist/components/icons/deleteicon.js.map +1 -0
  771. package/dist/components/icons/doubletriangleleft.cjs +27 -0
  772. package/dist/components/icons/doubletriangleleft.cjs.map +1 -0
  773. package/dist/components/icons/doubletriangleleft.js +8 -0
  774. package/dist/components/icons/doubletriangleleft.js.map +1 -0
  775. package/dist/components/icons/doubletriangleright.cjs +27 -0
  776. package/dist/components/icons/doubletriangleright.cjs.map +1 -0
  777. package/dist/components/icons/doubletriangleright.js +8 -0
  778. package/dist/components/icons/doubletriangleright.js.map +1 -0
  779. package/dist/components/icons/dragindicator.cjs +27 -0
  780. package/dist/components/icons/dragindicator.cjs.map +1 -0
  781. package/dist/components/icons/dragindicator.js +8 -0
  782. package/dist/components/icons/dragindicator.js.map +1 -0
  783. package/dist/components/icons/edit.cjs +27 -0
  784. package/dist/components/icons/edit.cjs.map +1 -0
  785. package/dist/components/icons/edit.js +8 -0
  786. package/dist/components/icons/edit.js.map +1 -0
  787. package/dist/components/icons/enterfullscreen.cjs +32 -0
  788. package/dist/components/icons/enterfullscreen.cjs.map +1 -0
  789. package/dist/components/icons/enterfullscreen.js +8 -0
  790. package/dist/components/icons/enterfullscreen.js.map +1 -0
  791. package/dist/components/icons/enterpip.cjs +29 -0
  792. package/dist/components/icons/enterpip.cjs.map +1 -0
  793. package/dist/components/icons/enterpip.js +8 -0
  794. package/dist/components/icons/enterpip.js.map +1 -0
  795. package/dist/components/icons/entertheater.cjs +29 -0
  796. package/dist/components/icons/entertheater.cjs.map +1 -0
  797. package/dist/components/icons/entertheater.js +8 -0
  798. package/dist/components/icons/entertheater.js.map +1 -0
  799. package/dist/components/icons/expandminiplayer.cjs +29 -0
  800. package/dist/components/icons/expandminiplayer.cjs.map +1 -0
  801. package/dist/components/icons/expandminiplayer.js +8 -0
  802. package/dist/components/icons/expandminiplayer.js.map +1 -0
  803. package/dist/components/icons/forward10.cjs +29 -0
  804. package/dist/components/icons/forward10.cjs.map +1 -0
  805. package/dist/components/icons/forward10.js +8 -0
  806. package/dist/components/icons/forward10.js.map +1 -0
  807. package/dist/components/icons/fullscreenorientation.cjs +30 -0
  808. package/dist/components/icons/fullscreenorientation.cjs.map +1 -0
  809. package/dist/components/icons/fullscreenorientation.js +8 -0
  810. package/dist/components/icons/fullscreenorientation.js.map +1 -0
  811. package/dist/components/icons/fwd.cjs +31 -0
  812. package/dist/components/icons/fwd.cjs.map +1 -0
  813. package/dist/components/icons/fwd.js +8 -0
  814. package/dist/components/icons/fwd.js.map +1 -0
  815. package/dist/components/icons/leavefullscreen.cjs +32 -0
  816. package/dist/components/icons/leavefullscreen.cjs.map +1 -0
  817. package/dist/components/icons/leavefullscreen.js +8 -0
  818. package/dist/components/icons/leavefullscreen.js.map +1 -0
  819. package/dist/components/icons/leavepip.cjs +29 -0
  820. package/dist/components/icons/leavepip.cjs.map +1 -0
  821. package/dist/components/icons/leavepip.js +8 -0
  822. package/dist/components/icons/leavepip.js.map +1 -0
  823. package/dist/components/icons/leavetheater.cjs +29 -0
  824. package/dist/components/icons/leavetheater.cjs.map +1 -0
  825. package/dist/components/icons/leavetheater.js +8 -0
  826. package/dist/components/icons/leavetheater.js.map +1 -0
  827. package/dist/components/icons/lock.cjs +30 -0
  828. package/dist/components/icons/lock.cjs.map +1 -0
  829. package/dist/components/icons/lock.js +8 -0
  830. package/dist/components/icons/lock.js.map +1 -0
  831. package/dist/components/icons/loop.cjs +27 -0
  832. package/dist/components/icons/loop.cjs.map +1 -0
  833. package/dist/components/icons/loop.js +8 -0
  834. package/dist/components/icons/loop.js.map +1 -0
  835. package/dist/components/icons/next.cjs +30 -0
  836. package/dist/components/icons/next.cjs.map +1 -0
  837. package/dist/components/icons/next.js +8 -0
  838. package/dist/components/icons/next.js.map +1 -0
  839. package/dist/components/icons/objectfitcontain.cjs +32 -0
  840. package/dist/components/icons/objectfitcontain.cjs.map +1 -0
  841. package/dist/components/icons/objectfitcontain.js +8 -0
  842. package/dist/components/icons/objectfitcontain.js.map +1 -0
  843. package/dist/components/icons/objectfitcover.cjs +32 -0
  844. package/dist/components/icons/objectfitcover.cjs.map +1 -0
  845. package/dist/components/icons/objectfitcover.js +8 -0
  846. package/dist/components/icons/objectfitcover.js.map +1 -0
  847. package/dist/components/icons/objectfitfill.cjs +32 -0
  848. package/dist/components/icons/objectfitfill.cjs.map +1 -0
  849. package/dist/components/icons/objectfitfill.js +8 -0
  850. package/dist/components/icons/objectfitfill.js.map +1 -0
  851. package/dist/components/icons/pause.cjs +29 -0
  852. package/dist/components/icons/pause.cjs.map +1 -0
  853. package/dist/components/icons/pause.js +8 -0
  854. package/dist/components/icons/pause.js.map +1 -0
  855. package/dist/components/icons/pipplaceholder.cjs +50 -0
  856. package/dist/components/icons/pipplaceholder.cjs.map +1 -0
  857. package/dist/components/icons/pipplaceholder.js +8 -0
  858. package/dist/components/icons/pipplaceholder.js.map +1 -0
  859. package/dist/components/icons/play.cjs +29 -0
  860. package/dist/components/icons/play.cjs.map +1 -0
  861. package/dist/components/icons/play.js +8 -0
  862. package/dist/components/icons/play.js.map +1 -0
  863. package/dist/components/icons/playbackrate.cjs +27 -0
  864. package/dist/components/icons/playbackrate.cjs.map +1 -0
  865. package/dist/components/icons/playbackrate.js +8 -0
  866. package/dist/components/icons/playbackrate.js.map +1 -0
  867. package/dist/components/icons/playlist.cjs +27 -0
  868. package/dist/components/icons/playlist.cjs.map +1 -0
  869. package/dist/components/icons/playlist.js +8 -0
  870. package/dist/components/icons/playlist.js.map +1 -0
  871. package/dist/components/icons/prev.cjs +30 -0
  872. package/dist/components/icons/prev.cjs.map +1 -0
  873. package/dist/components/icons/prev.js +8 -0
  874. package/dist/components/icons/prev.js.map +1 -0
  875. package/dist/components/icons/quality.cjs +27 -0
  876. package/dist/components/icons/quality.cjs.map +1 -0
  877. package/dist/components/icons/quality.js +8 -0
  878. package/dist/components/icons/quality.js.map +1 -0
  879. package/dist/components/icons/removeminiplayer.cjs +29 -0
  880. package/dist/components/icons/removeminiplayer.cjs.map +1 -0
  881. package/dist/components/icons/removeminiplayer.js +8 -0
  882. package/dist/components/icons/removeminiplayer.js.map +1 -0
  883. package/dist/components/icons/replay.cjs +29 -0
  884. package/dist/components/icons/replay.cjs.map +1 -0
  885. package/dist/components/icons/replay.js +8 -0
  886. package/dist/components/icons/replay.js.map +1 -0
  887. package/dist/components/icons/returnback.cjs +30 -0
  888. package/dist/components/icons/returnback.cjs.map +1 -0
  889. package/dist/components/icons/returnback.js +8 -0
  890. package/dist/components/icons/returnback.js.map +1 -0
  891. package/dist/components/icons/settings.cjs +29 -0
  892. package/dist/components/icons/settings.cjs.map +1 -0
  893. package/dist/components/icons/settings.js +8 -0
  894. package/dist/components/icons/settings.js.map +1 -0
  895. package/dist/components/icons/shuffle.cjs +27 -0
  896. package/dist/components/icons/shuffle.cjs.map +1 -0
  897. package/dist/components/icons/shuffle.js +8 -0
  898. package/dist/components/icons/shuffle.js.map +1 -0
  899. package/dist/components/icons/subtitles.cjs +29 -0
  900. package/dist/components/icons/subtitles.cjs.map +1 -0
  901. package/dist/components/icons/subtitles.js +8 -0
  902. package/dist/components/icons/subtitles.js.map +1 -0
  903. package/dist/components/icons/timer.cjs +27 -0
  904. package/dist/components/icons/timer.cjs.map +1 -0
  905. package/dist/components/icons/timer.js +8 -0
  906. package/dist/components/icons/timer.js.map +1 -0
  907. package/dist/components/icons/triangleleft.cjs +29 -0
  908. package/dist/components/icons/triangleleft.cjs.map +1 -0
  909. package/dist/components/icons/triangleleft.js +8 -0
  910. package/dist/components/icons/triangleleft.js.map +1 -0
  911. package/dist/components/icons/tripletriangleleft.cjs +27 -0
  912. package/dist/components/icons/tripletriangleleft.cjs.map +1 -0
  913. package/dist/components/icons/tripletriangleleft.js +8 -0
  914. package/dist/components/icons/tripletriangleleft.js.map +1 -0
  915. package/dist/components/icons/tripletriangleright.cjs +27 -0
  916. package/dist/components/icons/tripletriangleright.cjs.map +1 -0
  917. package/dist/components/icons/tripletriangleright.js +8 -0
  918. package/dist/components/icons/tripletriangleright.js.map +1 -0
  919. package/dist/components/icons/unlock.cjs +30 -0
  920. package/dist/components/icons/unlock.cjs.map +1 -0
  921. package/dist/components/icons/unlock.js +8 -0
  922. package/dist/components/icons/unlock.js.map +1 -0
  923. package/dist/components/icons/videotrack.cjs +27 -0
  924. package/dist/components/icons/videotrack.cjs.map +1 -0
  925. package/dist/components/icons/videotrack.js +8 -0
  926. package/dist/components/icons/videotrack.js.map +1 -0
  927. package/dist/components/icons/volumehigh.cjs +29 -0
  928. package/dist/components/icons/volumehigh.cjs.map +1 -0
  929. package/dist/components/icons/volumehigh.js +8 -0
  930. package/dist/components/icons/volumehigh.js.map +1 -0
  931. package/dist/components/icons/volumelow.cjs +29 -0
  932. package/dist/components/icons/volumelow.cjs.map +1 -0
  933. package/dist/components/icons/volumelow.js +8 -0
  934. package/dist/components/icons/volumelow.js.map +1 -0
  935. package/dist/components/icons/volumemuted.cjs +29 -0
  936. package/dist/components/icons/volumemuted.cjs.map +1 -0
  937. package/dist/components/icons/volumemuted.js +8 -0
  938. package/dist/components/icons/volumemuted.js.map +1 -0
  939. package/dist/components/icons/z-register.cjs +633 -0
  940. package/dist/components/icons/z-register.cjs.map +1 -0
  941. package/dist/components/icons/z-register.js +66 -0
  942. package/dist/components/icons/z-register.js.map +1 -0
  943. package/dist/components/notifiers/airplay.cjs +450 -0
  944. package/dist/components/notifiers/airplay.cjs.map +1 -0
  945. package/dist/components/notifiers/airplay.js +22 -0
  946. package/dist/components/notifiers/airplay.js.map +1 -0
  947. package/dist/components/notifiers/base.cjs +191 -0
  948. package/dist/components/notifiers/base.cjs.map +1 -0
  949. package/dist/components/notifiers/base.js +16 -0
  950. package/dist/components/notifiers/base.js.map +1 -0
  951. package/dist/components/notifiers/brightness.cjs +469 -0
  952. package/dist/components/notifiers/brightness.cjs.map +1 -0
  953. package/dist/components/notifiers/brightness.js +22 -0
  954. package/dist/components/notifiers/brightness.js.map +1 -0
  955. package/dist/components/notifiers/cancelscrub.cjs +216 -0
  956. package/dist/components/notifiers/cancelscrub.cjs.map +1 -0
  957. package/dist/components/notifiers/cancelscrub.js +19 -0
  958. package/dist/components/notifiers/cancelscrub.js.map +1 -0
  959. package/dist/components/notifiers/captions.cjs +450 -0
  960. package/dist/components/notifiers/captions.cjs.map +1 -0
  961. package/dist/components/notifiers/captions.js +22 -0
  962. package/dist/components/notifiers/captions.js.map +1 -0
  963. package/dist/components/notifiers/capture.cjs +450 -0
  964. package/dist/components/notifiers/capture.cjs.map +1 -0
  965. package/dist/components/notifiers/capture.js +22 -0
  966. package/dist/components/notifiers/capture.js.map +1 -0
  967. package/dist/components/notifiers/cast.cjs +450 -0
  968. package/dist/components/notifiers/cast.cjs.map +1 -0
  969. package/dist/components/notifiers/cast.js +22 -0
  970. package/dist/components/notifiers/cast.js.map +1 -0
  971. package/dist/components/notifiers/chapter.cjs +225 -0
  972. package/dist/components/notifiers/chapter.cjs.map +1 -0
  973. package/dist/components/notifiers/chapter.js +19 -0
  974. package/dist/components/notifiers/chapter.js.map +1 -0
  975. package/dist/components/notifiers/fastplay.cjs +467 -0
  976. package/dist/components/notifiers/fastplay.cjs.map +1 -0
  977. package/dist/components/notifiers/fastplay.js +22 -0
  978. package/dist/components/notifiers/fastplay.js.map +1 -0
  979. package/dist/components/notifiers/fwdbwd.cjs +457 -0
  980. package/dist/components/notifiers/fwdbwd.cjs.map +1 -0
  981. package/dist/components/notifiers/fwdbwd.js +22 -0
  982. package/dist/components/notifiers/fwdbwd.js.map +1 -0
  983. package/dist/components/notifiers/objectfit.cjs +468 -0
  984. package/dist/components/notifiers/objectfit.cjs.map +1 -0
  985. package/dist/components/notifiers/objectfit.js +22 -0
  986. package/dist/components/notifiers/objectfit.js.map +1 -0
  987. package/dist/components/notifiers/playbackrate.cjs +466 -0
  988. package/dist/components/notifiers/playbackrate.cjs.map +1 -0
  989. package/dist/components/notifiers/playbackrate.js +22 -0
  990. package/dist/components/notifiers/playbackrate.js.map +1 -0
  991. package/dist/components/notifiers/playpause.cjs +457 -0
  992. package/dist/components/notifiers/playpause.cjs.map +1 -0
  993. package/dist/components/notifiers/playpause.js +22 -0
  994. package/dist/components/notifiers/playpause.js.map +1 -0
  995. package/dist/components/notifiers/prevnext.cjs +457 -0
  996. package/dist/components/notifiers/prevnext.cjs.map +1 -0
  997. package/dist/components/notifiers/prevnext.js +22 -0
  998. package/dist/components/notifiers/prevnext.js.map +1 -0
  999. package/dist/components/notifiers/scrub.cjs +449 -0
  1000. package/dist/components/notifiers/scrub.cjs.map +1 -0
  1001. package/dist/components/notifiers/scrub.js +22 -0
  1002. package/dist/components/notifiers/scrub.js.map +1 -0
  1003. package/dist/components/notifiers/timer.cjs +451 -0
  1004. package/dist/components/notifiers/timer.cjs.map +1 -0
  1005. package/dist/components/notifiers/timer.js +22 -0
  1006. package/dist/components/notifiers/timer.js.map +1 -0
  1007. package/dist/components/notifiers/touchbrightness.cjs +474 -0
  1008. package/dist/components/notifiers/touchbrightness.cjs.map +1 -0
  1009. package/dist/components/notifiers/touchbrightness.js +22 -0
  1010. package/dist/components/notifiers/touchbrightness.js.map +1 -0
  1011. package/dist/components/notifiers/touchtimeline.cjs +218 -0
  1012. package/dist/components/notifiers/touchtimeline.cjs.map +1 -0
  1013. package/dist/components/notifiers/touchtimeline.js +21 -0
  1014. package/dist/components/notifiers/touchtimeline.js.map +1 -0
  1015. package/dist/components/notifiers/touchvolume.cjs +474 -0
  1016. package/dist/components/notifiers/touchvolume.cjs.map +1 -0
  1017. package/dist/components/notifiers/touchvolume.js +22 -0
  1018. package/dist/components/notifiers/touchvolume.js.map +1 -0
  1019. package/dist/components/notifiers/volume.cjs +469 -0
  1020. package/dist/components/notifiers/volume.cjs.map +1 -0
  1021. package/dist/components/notifiers/volume.js +22 -0
  1022. package/dist/components/notifiers/volume.js.map +1 -0
  1023. package/dist/components/notifiers/z-register.cjs +778 -0
  1024. package/dist/components/notifiers/z-register.cjs.map +1 -0
  1025. package/dist/components/notifiers/z-register.js +36 -0
  1026. package/dist/components/notifiers/z-register.js.map +1 -0
  1027. package/dist/components/rangeinput/build.cjs +52 -0
  1028. package/dist/components/rangeinput/build.cjs.map +1 -0
  1029. package/dist/components/rangeinput/build.js +8 -0
  1030. package/dist/components/rangeinput/build.js.map +1 -0
  1031. package/dist/components/rangeinput/index.cjs +433 -0
  1032. package/dist/components/rangeinput/index.cjs.map +1 -0
  1033. package/dist/components/rangeinput/index.js +20 -0
  1034. package/dist/components/rangeinput/index.js.map +1 -0
  1035. package/dist/components/rangeinput/types.cjs +19 -0
  1036. package/dist/components/rangeinput/types.cjs.map +1 -0
  1037. package/dist/components/rangeinput/types.js +1 -0
  1038. package/dist/components/rangeinput/types.js.map +1 -0
  1039. package/dist/components/screenlock.cjs +438 -0
  1040. package/dist/components/screenlock.cjs.map +1 -0
  1041. package/dist/components/screenlock.js +21 -0
  1042. package/dist/components/screenlock.js.map +1 -0
  1043. package/dist/components/z-register.cjs +2345 -0
  1044. package/dist/components/z-register.cjs.map +1 -0
  1045. package/dist/components/z-register.js +64 -0
  1046. package/dist/components/z-register.js.map +1 -0
  1047. package/dist/consts/actions.cjs +79 -0
  1048. package/dist/consts/actions.cjs.map +1 -0
  1049. package/dist/consts/actions.js +8 -0
  1050. package/dist/consts/actions.js.map +1 -0
  1051. package/dist/consts/config.cjs +105 -0
  1052. package/dist/consts/config.cjs.map +1 -0
  1053. package/dist/consts/config.js +9 -0
  1054. package/dist/consts/config.js.map +1 -0
  1055. package/dist/consts/generics.cjs +29 -0
  1056. package/dist/consts/generics.cjs.map +1 -0
  1057. package/dist/consts/generics.js +10 -0
  1058. package/dist/consts/generics.js.map +1 -0
  1059. package/dist/consts/media.cjs +201 -0
  1060. package/dist/consts/media.cjs.map +1 -0
  1061. package/dist/consts/media.js +16 -0
  1062. package/dist/consts/media.js.map +1 -0
  1063. package/dist/core/controllable.cjs +91 -0
  1064. package/dist/core/controllable.cjs.map +1 -0
  1065. package/dist/core/controllable.js +13 -0
  1066. package/dist/core/controllable.js.map +1 -0
  1067. package/dist/core/controller.cjs +1664 -0
  1068. package/dist/core/controller.cjs.map +1 -0
  1069. package/dist/core/controller.js +27 -0
  1070. package/dist/core/controller.js.map +1 -0
  1071. package/dist/core/registries.cjs +268 -0
  1072. package/dist/core/registries.cjs.map +1 -0
  1073. package/dist/core/registries.js +24 -0
  1074. package/dist/core/registries.js.map +1 -0
  1075. package/dist/index.cjs +1934 -0
  1076. package/dist/index.cjs.map +1 -0
  1077. package/dist/index.css +3148 -0
  1078. package/dist/index.css.map +1 -0
  1079. package/dist/index.js +75 -0
  1080. package/dist/index.js.map +1 -0
  1081. package/dist/init.cjs +1890 -0
  1082. package/dist/init.cjs.map +1 -0
  1083. package/dist/init.js +24 -0
  1084. package/dist/init.js.map +1 -0
  1085. package/dist/plugs/base/index.cjs +407 -0
  1086. package/dist/plugs/base/index.cjs.map +1 -0
  1087. package/dist/plugs/base/index.js +19 -0
  1088. package/dist/plugs/base/index.js.map +1 -0
  1089. package/dist/plugs/base/slider.cjs +458 -0
  1090. package/dist/plugs/base/slider.cjs.map +1 -0
  1091. package/dist/plugs/base/slider.js +18 -0
  1092. package/dist/plugs/base/slider.js.map +1 -0
  1093. package/dist/plugs/base/types.cjs +19 -0
  1094. package/dist/plugs/base/types.cjs.map +1 -0
  1095. package/dist/plugs/base/types.js +1 -0
  1096. package/dist/plugs/base/types.js.map +1 -0
  1097. package/dist/plugs/main/disabled/build.cjs +27 -0
  1098. package/dist/plugs/main/disabled/build.cjs.map +1 -0
  1099. package/dist/plugs/main/disabled/build.js +8 -0
  1100. package/dist/plugs/main/disabled/build.js.map +1 -0
  1101. package/dist/plugs/main/disabled/index.cjs +421 -0
  1102. package/dist/plugs/main/disabled/index.cjs.map +1 -0
  1103. package/dist/plugs/main/disabled/index.js +22 -0
  1104. package/dist/plugs/main/disabled/index.js.map +1 -0
  1105. package/dist/plugs/main/disabled/types.cjs +19 -0
  1106. package/dist/plugs/main/disabled/types.cjs.map +1 -0
  1107. package/dist/plugs/main/disabled/types.js +1 -0
  1108. package/dist/plugs/main/disabled/types.js.map +1 -0
  1109. package/dist/plugs/main/lightState/build.cjs +34 -0
  1110. package/dist/plugs/main/lightState/build.cjs.map +1 -0
  1111. package/dist/plugs/main/lightState/build.js +8 -0
  1112. package/dist/plugs/main/lightState/build.js.map +1 -0
  1113. package/dist/plugs/main/lightState/index.cjs +458 -0
  1114. package/dist/plugs/main/lightState/index.cjs.map +1 -0
  1115. package/dist/plugs/main/lightState/index.js +22 -0
  1116. package/dist/plugs/main/lightState/index.js.map +1 -0
  1117. package/dist/plugs/main/lightState/types.cjs +19 -0
  1118. package/dist/plugs/main/lightState/types.cjs.map +1 -0
  1119. package/dist/plugs/main/lightState/types.js +1 -0
  1120. package/dist/plugs/main/lightState/types.js.map +1 -0
  1121. package/dist/plugs/main/playlist/build.cjs +59 -0
  1122. package/dist/plugs/main/playlist/build.cjs.map +1 -0
  1123. package/dist/plugs/main/playlist/build.js +10 -0
  1124. package/dist/plugs/main/playlist/build.js.map +1 -0
  1125. package/dist/plugs/main/playlist/index.cjs +511 -0
  1126. package/dist/plugs/main/playlist/index.cjs.map +1 -0
  1127. package/dist/plugs/main/playlist/index.js +25 -0
  1128. package/dist/plugs/main/playlist/index.js.map +1 -0
  1129. package/dist/plugs/main/playlist/types.cjs +19 -0
  1130. package/dist/plugs/main/playlist/types.cjs.map +1 -0
  1131. package/dist/plugs/main/playlist/types.js +1 -0
  1132. package/dist/plugs/main/playlist/types.js.map +1 -0
  1133. package/dist/plugs/main/skeleton/build.cjs +29 -0
  1134. package/dist/plugs/main/skeleton/build.cjs.map +1 -0
  1135. package/dist/plugs/main/skeleton/build.js +8 -0
  1136. package/dist/plugs/main/skeleton/build.js.map +1 -0
  1137. package/dist/plugs/main/skeleton/index.cjs +539 -0
  1138. package/dist/plugs/main/skeleton/index.cjs.map +1 -0
  1139. package/dist/plugs/main/skeleton/index.js +25 -0
  1140. package/dist/plugs/main/skeleton/index.js.map +1 -0
  1141. package/dist/plugs/main/skeleton/types.cjs +19 -0
  1142. package/dist/plugs/main/skeleton/types.cjs.map +1 -0
  1143. package/dist/plugs/main/skeleton/types.js +1 -0
  1144. package/dist/plugs/main/skeleton/types.js.map +1 -0
  1145. package/dist/plugs/menus/main/playlist.cjs +98 -0
  1146. package/dist/plugs/menus/main/playlist.cjs.map +1 -0
  1147. package/dist/plugs/menus/main/playlist.js +9 -0
  1148. package/dist/plugs/menus/main/playlist.js.map +1 -0
  1149. package/dist/plugs/menus/main/skeleton.cjs +34 -0
  1150. package/dist/plugs/menus/main/skeleton.cjs.map +1 -0
  1151. package/dist/plugs/menus/main/skeleton.js +8 -0
  1152. package/dist/plugs/menus/main/skeleton.js.map +1 -0
  1153. package/dist/plugs/menus/settings/actions.cjs +492 -0
  1154. package/dist/plugs/menus/settings/actions.cjs.map +1 -0
  1155. package/dist/plugs/menus/settings/actions.js +15 -0
  1156. package/dist/plugs/menus/settings/actions.js.map +1 -0
  1157. package/dist/plugs/menus/settings/ambience.cjs +35 -0
  1158. package/dist/plugs/menus/settings/ambience.cjs.map +1 -0
  1159. package/dist/plugs/menus/settings/ambience.js +8 -0
  1160. package/dist/plugs/menus/settings/ambience.js.map +1 -0
  1161. package/dist/plugs/menus/settings/auto.cjs +153 -0
  1162. package/dist/plugs/menus/settings/auto.cjs.map +1 -0
  1163. package/dist/plugs/menus/settings/auto.js +12 -0
  1164. package/dist/plugs/menus/settings/auto.js.map +1 -0
  1165. package/dist/plugs/menus/settings/brightness.cjs +45 -0
  1166. package/dist/plugs/menus/settings/brightness.cjs.map +1 -0
  1167. package/dist/plugs/menus/settings/brightness.js +8 -0
  1168. package/dist/plugs/menus/settings/brightness.js.map +1 -0
  1169. package/dist/plugs/menus/settings/captions.cjs +437 -0
  1170. package/dist/plugs/menus/settings/captions.cjs.map +1 -0
  1171. package/dist/plugs/menus/settings/captions.js +13 -0
  1172. package/dist/plugs/menus/settings/captions.js.map +1 -0
  1173. package/dist/plugs/menus/settings/controlPanel.cjs +442 -0
  1174. package/dist/plugs/menus/settings/controlPanel.cjs.map +1 -0
  1175. package/dist/plugs/menus/settings/controlPanel.js +14 -0
  1176. package/dist/plugs/menus/settings/controlPanel.js.map +1 -0
  1177. package/dist/plugs/menus/settings/fastPlay.cjs +166 -0
  1178. package/dist/plugs/menus/settings/fastPlay.cjs.map +1 -0
  1179. package/dist/plugs/menus/settings/fastPlay.js +12 -0
  1180. package/dist/plugs/menus/settings/fastPlay.js.map +1 -0
  1181. package/dist/plugs/menus/settings/frame.cjs +90 -0
  1182. package/dist/plugs/menus/settings/frame.cjs.map +1 -0
  1183. package/dist/plugs/menus/settings/frame.js +12 -0
  1184. package/dist/plugs/menus/settings/frame.js.map +1 -0
  1185. package/dist/plugs/menus/settings/gesture.cjs +255 -0
  1186. package/dist/plugs/menus/settings/gesture.cjs.map +1 -0
  1187. package/dist/plugs/menus/settings/gesture.js +17 -0
  1188. package/dist/plugs/menus/settings/gesture.js.map +1 -0
  1189. package/dist/plugs/menus/settings/keys.cjs +173 -0
  1190. package/dist/plugs/menus/settings/keys.cjs.map +1 -0
  1191. package/dist/plugs/menus/settings/keys.js +12 -0
  1192. package/dist/plugs/menus/settings/keys.js.map +1 -0
  1193. package/dist/plugs/menus/settings/locked.cjs +53 -0
  1194. package/dist/plugs/menus/settings/locked.cjs.map +1 -0
  1195. package/dist/plugs/menus/settings/locked.js +8 -0
  1196. package/dist/plugs/menus/settings/locked.js.map +1 -0
  1197. package/dist/plugs/menus/settings/metadata.cjs +202 -0
  1198. package/dist/plugs/menus/settings/metadata.cjs.map +1 -0
  1199. package/dist/plugs/menus/settings/metadata.js +13 -0
  1200. package/dist/plugs/menus/settings/metadata.js.map +1 -0
  1201. package/dist/plugs/menus/settings/modes.cjs +238 -0
  1202. package/dist/plugs/menus/settings/modes.cjs.map +1 -0
  1203. package/dist/plugs/menus/settings/modes.js +12 -0
  1204. package/dist/plugs/menus/settings/modes.js.map +1 -0
  1205. package/dist/plugs/menus/settings/objectFit.cjs +45 -0
  1206. package/dist/plugs/menus/settings/objectFit.cjs.map +1 -0
  1207. package/dist/plugs/menus/settings/objectFit.js +8 -0
  1208. package/dist/plugs/menus/settings/objectFit.js.map +1 -0
  1209. package/dist/plugs/menus/settings/overlay.cjs +112 -0
  1210. package/dist/plugs/menus/settings/overlay.cjs.map +1 -0
  1211. package/dist/plugs/menus/settings/overlay.js +12 -0
  1212. package/dist/plugs/menus/settings/overlay.js.map +1 -0
  1213. package/dist/plugs/menus/settings/persist.cjs +73 -0
  1214. package/dist/plugs/menus/settings/persist.cjs.map +1 -0
  1215. package/dist/plugs/menus/settings/persist.js +8 -0
  1216. package/dist/plugs/menus/settings/persist.js.map +1 -0
  1217. package/dist/plugs/menus/settings/playbackRate.cjs +119 -0
  1218. package/dist/plugs/menus/settings/playbackRate.cjs.map +1 -0
  1219. package/dist/plugs/menus/settings/playbackRate.js +12 -0
  1220. package/dist/plugs/menus/settings/playbackRate.js.map +1 -0
  1221. package/dist/plugs/menus/settings/poster.cjs +53 -0
  1222. package/dist/plugs/menus/settings/poster.cjs.map +1 -0
  1223. package/dist/plugs/menus/settings/poster.js +8 -0
  1224. package/dist/plugs/menus/settings/poster.js.map +1 -0
  1225. package/dist/plugs/menus/settings/settingsView.cjs +79 -0
  1226. package/dist/plugs/menus/settings/settingsView.cjs.map +1 -0
  1227. package/dist/plugs/menus/settings/settingsView.js +8 -0
  1228. package/dist/plugs/menus/settings/settingsView.js.map +1 -0
  1229. package/dist/plugs/menus/settings/sleepTimer.cjs +89 -0
  1230. package/dist/plugs/menus/settings/sleepTimer.cjs.map +1 -0
  1231. package/dist/plugs/menus/settings/sleepTimer.js +10 -0
  1232. package/dist/plugs/menus/settings/sleepTimer.js.map +1 -0
  1233. package/dist/plugs/menus/settings/time.cjs +48 -0
  1234. package/dist/plugs/menus/settings/time.cjs.map +1 -0
  1235. package/dist/plugs/menus/settings/time.js +8 -0
  1236. package/dist/plugs/menus/settings/time.js.map +1 -0
  1237. package/dist/plugs/menus/settings/timeTravel.cjs +133 -0
  1238. package/dist/plugs/menus/settings/timeTravel.cjs.map +1 -0
  1239. package/dist/plugs/menus/settings/timeTravel.js +11 -0
  1240. package/dist/plugs/menus/settings/timeTravel.js.map +1 -0
  1241. package/dist/plugs/menus/settings/toasts.cjs +232 -0
  1242. package/dist/plugs/menus/settings/toasts.cjs.map +1 -0
  1243. package/dist/plugs/menus/settings/toasts.js +18 -0
  1244. package/dist/plugs/menus/settings/toasts.js.map +1 -0
  1245. package/dist/plugs/menus/settings/voice.cjs +216 -0
  1246. package/dist/plugs/menus/settings/voice.cjs.map +1 -0
  1247. package/dist/plugs/menus/settings/voice.js +12 -0
  1248. package/dist/plugs/menus/settings/voice.js.map +1 -0
  1249. package/dist/plugs/menus/settings/volume.cjs +45 -0
  1250. package/dist/plugs/menus/settings/volume.cjs.map +1 -0
  1251. package/dist/plugs/menus/settings/volume.js +8 -0
  1252. package/dist/plugs/menus/settings/volume.js.map +1 -0
  1253. package/dist/plugs/menus/z-register.cjs +3212 -0
  1254. package/dist/plugs/menus/z-register.cjs.map +1 -0
  1255. package/dist/plugs/menus/z-register.js +48 -0
  1256. package/dist/plugs/menus/z-register.js.map +1 -0
  1257. package/dist/plugs/settings/airplay/build.cjs +27 -0
  1258. package/dist/plugs/settings/airplay/build.cjs.map +1 -0
  1259. package/dist/plugs/settings/airplay/build.js +8 -0
  1260. package/dist/plugs/settings/airplay/build.js.map +1 -0
  1261. package/dist/plugs/settings/airplay/index.cjs +416 -0
  1262. package/dist/plugs/settings/airplay/index.cjs.map +1 -0
  1263. package/dist/plugs/settings/airplay/index.js +19 -0
  1264. package/dist/plugs/settings/airplay/index.js.map +1 -0
  1265. package/dist/plugs/settings/ambience/build.cjs +33 -0
  1266. package/dist/plugs/settings/ambience/build.cjs.map +1 -0
  1267. package/dist/plugs/settings/ambience/build.js +8 -0
  1268. package/dist/plugs/settings/ambience/build.js.map +1 -0
  1269. package/dist/plugs/settings/ambience/index.cjs +464 -0
  1270. package/dist/plugs/settings/ambience/index.cjs.map +1 -0
  1271. package/dist/plugs/settings/ambience/index.js +24 -0
  1272. package/dist/plugs/settings/ambience/index.js.map +1 -0
  1273. package/dist/plugs/settings/ambience/types.cjs +19 -0
  1274. package/dist/plugs/settings/ambience/types.cjs.map +1 -0
  1275. package/dist/plugs/settings/ambience/types.js +1 -0
  1276. package/dist/plugs/settings/ambience/types.js.map +1 -0
  1277. package/dist/plugs/settings/auto/build.cjs +76 -0
  1278. package/dist/plugs/settings/auto/build.cjs.map +1 -0
  1279. package/dist/plugs/settings/auto/build.js +13 -0
  1280. package/dist/plugs/settings/auto/build.js.map +1 -0
  1281. package/dist/plugs/settings/auto/index.cjs +533 -0
  1282. package/dist/plugs/settings/auto/index.cjs.map +1 -0
  1283. package/dist/plugs/settings/auto/index.js +30 -0
  1284. package/dist/plugs/settings/auto/index.js.map +1 -0
  1285. package/dist/plugs/settings/auto/types.cjs +19 -0
  1286. package/dist/plugs/settings/auto/types.cjs.map +1 -0
  1287. package/dist/plugs/settings/auto/types.js +1 -0
  1288. package/dist/plugs/settings/auto/types.js.map +1 -0
  1289. package/dist/plugs/settings/brightness/build.cjs +31 -0
  1290. package/dist/plugs/settings/brightness/build.cjs.map +1 -0
  1291. package/dist/plugs/settings/brightness/build.js +8 -0
  1292. package/dist/plugs/settings/brightness/build.js.map +1 -0
  1293. package/dist/plugs/settings/brightness/index.cjs +522 -0
  1294. package/dist/plugs/settings/brightness/index.cjs.map +1 -0
  1295. package/dist/plugs/settings/brightness/index.js +24 -0
  1296. package/dist/plugs/settings/brightness/index.js.map +1 -0
  1297. package/dist/plugs/settings/brightness/types.cjs +19 -0
  1298. package/dist/plugs/settings/brightness/types.cjs.map +1 -0
  1299. package/dist/plugs/settings/brightness/types.js +1 -0
  1300. package/dist/plugs/settings/brightness/types.js.map +1 -0
  1301. package/dist/plugs/settings/captions/build.cjs +184 -0
  1302. package/dist/plugs/settings/captions/build.cjs.map +1 -0
  1303. package/dist/plugs/settings/captions/build.js +12 -0
  1304. package/dist/plugs/settings/captions/build.js.map +1 -0
  1305. package/dist/plugs/settings/captions/index.cjs +793 -0
  1306. package/dist/plugs/settings/captions/index.cjs.map +1 -0
  1307. package/dist/plugs/settings/captions/index.js +32 -0
  1308. package/dist/plugs/settings/captions/index.js.map +1 -0
  1309. package/dist/plugs/settings/captions/types.cjs +19 -0
  1310. package/dist/plugs/settings/captions/types.cjs.map +1 -0
  1311. package/dist/plugs/settings/captions/types.js +1 -0
  1312. package/dist/plugs/settings/captions/types.js.map +1 -0
  1313. package/dist/plugs/settings/cast/build.cjs +27 -0
  1314. package/dist/plugs/settings/cast/build.cjs.map +1 -0
  1315. package/dist/plugs/settings/cast/build.js +8 -0
  1316. package/dist/plugs/settings/cast/build.js.map +1 -0
  1317. package/dist/plugs/settings/cast/index.cjs +644 -0
  1318. package/dist/plugs/settings/cast/index.cjs.map +1 -0
  1319. package/dist/plugs/settings/cast/index.js +24 -0
  1320. package/dist/plugs/settings/cast/index.js.map +1 -0
  1321. package/dist/plugs/settings/cast/types.cjs +19 -0
  1322. package/dist/plugs/settings/cast/types.cjs.map +1 -0
  1323. package/dist/plugs/settings/cast/types.js +1 -0
  1324. package/dist/plugs/settings/cast/types.js.map +1 -0
  1325. package/dist/plugs/settings/controlPanel/build.cjs +144 -0
  1326. package/dist/plugs/settings/controlPanel/build.cjs.map +1 -0
  1327. package/dist/plugs/settings/controlPanel/build.js +17 -0
  1328. package/dist/plugs/settings/controlPanel/build.js.map +1 -0
  1329. package/dist/plugs/settings/controlPanel/draggable.cjs +1021 -0
  1330. package/dist/plugs/settings/controlPanel/draggable.cjs.map +1 -0
  1331. package/dist/plugs/settings/controlPanel/draggable.js +24 -0
  1332. package/dist/plugs/settings/controlPanel/draggable.js.map +1 -0
  1333. package/dist/plugs/settings/controlPanel/index.cjs +1031 -0
  1334. package/dist/plugs/settings/controlPanel/index.cjs.map +1 -0
  1335. package/dist/plugs/settings/controlPanel/index.js +37 -0
  1336. package/dist/plugs/settings/controlPanel/index.js.map +1 -0
  1337. package/dist/plugs/settings/controlPanel/types.cjs +19 -0
  1338. package/dist/plugs/settings/controlPanel/types.cjs.map +1 -0
  1339. package/dist/plugs/settings/controlPanel/types.js +1 -0
  1340. package/dist/plugs/settings/controlPanel/types.js.map +1 -0
  1341. package/dist/plugs/settings/css/build.cjs +29 -0
  1342. package/dist/plugs/settings/css/build.cjs.map +1 -0
  1343. package/dist/plugs/settings/css/build.js +8 -0
  1344. package/dist/plugs/settings/css/build.js.map +1 -0
  1345. package/dist/plugs/settings/css/index.cjs +444 -0
  1346. package/dist/plugs/settings/css/index.cjs.map +1 -0
  1347. package/dist/plugs/settings/css/index.js +22 -0
  1348. package/dist/plugs/settings/css/index.js.map +1 -0
  1349. package/dist/plugs/settings/css/types.cjs +19 -0
  1350. package/dist/plugs/settings/css/types.cjs.map +1 -0
  1351. package/dist/plugs/settings/css/types.js +1 -0
  1352. package/dist/plugs/settings/css/types.js.map +1 -0
  1353. package/dist/plugs/settings/errors/build.cjs +45 -0
  1354. package/dist/plugs/settings/errors/build.cjs.map +1 -0
  1355. package/dist/plugs/settings/errors/build.js +10 -0
  1356. package/dist/plugs/settings/errors/build.js.map +1 -0
  1357. package/dist/plugs/settings/errors/index.cjs +417 -0
  1358. package/dist/plugs/settings/errors/index.cjs.map +1 -0
  1359. package/dist/plugs/settings/errors/index.js +24 -0
  1360. package/dist/plugs/settings/errors/index.js.map +1 -0
  1361. package/dist/plugs/settings/errors/types.cjs +19 -0
  1362. package/dist/plugs/settings/errors/types.cjs.map +1 -0
  1363. package/dist/plugs/settings/errors/types.js +1 -0
  1364. package/dist/plugs/settings/errors/types.js.map +1 -0
  1365. package/dist/plugs/settings/fastPlay/build.cjs +46 -0
  1366. package/dist/plugs/settings/fastPlay/build.cjs.map +1 -0
  1367. package/dist/plugs/settings/fastPlay/build.js +8 -0
  1368. package/dist/plugs/settings/fastPlay/build.js.map +1 -0
  1369. package/dist/plugs/settings/fastPlay/index.cjs +510 -0
  1370. package/dist/plugs/settings/fastPlay/index.cjs.map +1 -0
  1371. package/dist/plugs/settings/fastPlay/index.js +23 -0
  1372. package/dist/plugs/settings/fastPlay/index.js.map +1 -0
  1373. package/dist/plugs/settings/fastPlay/types.cjs +19 -0
  1374. package/dist/plugs/settings/fastPlay/types.cjs.map +1 -0
  1375. package/dist/plugs/settings/fastPlay/types.js +1 -0
  1376. package/dist/plugs/settings/fastPlay/types.js.map +1 -0
  1377. package/dist/plugs/settings/frame/build.cjs +31 -0
  1378. package/dist/plugs/settings/frame/build.cjs.map +1 -0
  1379. package/dist/plugs/settings/frame/build.js +8 -0
  1380. package/dist/plugs/settings/frame/build.js.map +1 -0
  1381. package/dist/plugs/settings/frame/index.cjs +542 -0
  1382. package/dist/plugs/settings/frame/index.cjs.map +1 -0
  1383. package/dist/plugs/settings/frame/index.js +29 -0
  1384. package/dist/plugs/settings/frame/index.js.map +1 -0
  1385. package/dist/plugs/settings/frame/types.cjs +19 -0
  1386. package/dist/plugs/settings/frame/types.cjs.map +1 -0
  1387. package/dist/plugs/settings/frame/types.js +1 -0
  1388. package/dist/plugs/settings/frame/types.js.map +1 -0
  1389. package/dist/plugs/settings/gesture/base.cjs +187 -0
  1390. package/dist/plugs/settings/gesture/base.cjs.map +1 -0
  1391. package/dist/plugs/settings/gesture/base.js +24 -0
  1392. package/dist/plugs/settings/gesture/base.js.map +1 -0
  1393. package/dist/plugs/settings/gesture/build.cjs +116 -0
  1394. package/dist/plugs/settings/gesture/build.cjs.map +1 -0
  1395. package/dist/plugs/settings/gesture/build.js +13 -0
  1396. package/dist/plugs/settings/gesture/build.js.map +1 -0
  1397. package/dist/plugs/settings/gesture/index.cjs +877 -0
  1398. package/dist/plugs/settings/gesture/index.cjs.map +1 -0
  1399. package/dist/plugs/settings/gesture/index.js +38 -0
  1400. package/dist/plugs/settings/gesture/index.js.map +1 -0
  1401. package/dist/plugs/settings/gesture/touch.cjs +784 -0
  1402. package/dist/plugs/settings/gesture/touch.cjs.map +1 -0
  1403. package/dist/plugs/settings/gesture/touch.js +27 -0
  1404. package/dist/plugs/settings/gesture/touch.js.map +1 -0
  1405. package/dist/plugs/settings/gesture/types.cjs +19 -0
  1406. package/dist/plugs/settings/gesture/types.cjs.map +1 -0
  1407. package/dist/plugs/settings/gesture/types.js +1 -0
  1408. package/dist/plugs/settings/gesture/types.js.map +1 -0
  1409. package/dist/plugs/settings/gesture/wheel.cjs +757 -0
  1410. package/dist/plugs/settings/gesture/wheel.cjs.map +1 -0
  1411. package/dist/plugs/settings/gesture/wheel.js +27 -0
  1412. package/dist/plugs/settings/gesture/wheel.js.map +1 -0
  1413. package/dist/plugs/settings/keys/build.cjs +117 -0
  1414. package/dist/plugs/settings/keys/build.cjs.map +1 -0
  1415. package/dist/plugs/settings/keys/build.js +13 -0
  1416. package/dist/plugs/settings/keys/build.js.map +1 -0
  1417. package/dist/plugs/settings/keys/index.cjs +612 -0
  1418. package/dist/plugs/settings/keys/index.cjs.map +1 -0
  1419. package/dist/plugs/settings/keys/index.js +34 -0
  1420. package/dist/plugs/settings/keys/index.js.map +1 -0
  1421. package/dist/plugs/settings/keys/types.cjs +19 -0
  1422. package/dist/plugs/settings/keys/types.cjs.map +1 -0
  1423. package/dist/plugs/settings/keys/types.js +1 -0
  1424. package/dist/plugs/settings/keys/types.js.map +1 -0
  1425. package/dist/plugs/settings/locked/build.cjs +92 -0
  1426. package/dist/plugs/settings/locked/build.cjs.map +1 -0
  1427. package/dist/plugs/settings/locked/build.js +9 -0
  1428. package/dist/plugs/settings/locked/build.js.map +1 -0
  1429. package/dist/plugs/settings/locked/index.cjs +532 -0
  1430. package/dist/plugs/settings/locked/index.cjs.map +1 -0
  1431. package/dist/plugs/settings/locked/index.js +25 -0
  1432. package/dist/plugs/settings/locked/index.js.map +1 -0
  1433. package/dist/plugs/settings/locked/types.cjs +19 -0
  1434. package/dist/plugs/settings/locked/types.cjs.map +1 -0
  1435. package/dist/plugs/settings/locked/types.js +1 -0
  1436. package/dist/plugs/settings/locked/types.js.map +1 -0
  1437. package/dist/plugs/settings/metadata/build.cjs +29 -0
  1438. package/dist/plugs/settings/metadata/build.cjs.map +1 -0
  1439. package/dist/plugs/settings/metadata/build.js +8 -0
  1440. package/dist/plugs/settings/metadata/build.js.map +1 -0
  1441. package/dist/plugs/settings/metadata/index.cjs +455 -0
  1442. package/dist/plugs/settings/metadata/index.cjs.map +1 -0
  1443. package/dist/plugs/settings/metadata/index.js +24 -0
  1444. package/dist/plugs/settings/metadata/index.js.map +1 -0
  1445. package/dist/plugs/settings/metadata/types.cjs +19 -0
  1446. package/dist/plugs/settings/metadata/types.cjs.map +1 -0
  1447. package/dist/plugs/settings/metadata/types.js +1 -0
  1448. package/dist/plugs/settings/metadata/types.js.map +1 -0
  1449. package/dist/plugs/settings/modes/build.cjs +162 -0
  1450. package/dist/plugs/settings/modes/build.cjs.map +1 -0
  1451. package/dist/plugs/settings/modes/build.js +22 -0
  1452. package/dist/plugs/settings/modes/build.js.map +1 -0
  1453. package/dist/plugs/settings/modes/fullscreen.cjs +625 -0
  1454. package/dist/plugs/settings/modes/fullscreen.cjs.map +1 -0
  1455. package/dist/plugs/settings/modes/fullscreen.js +30 -0
  1456. package/dist/plugs/settings/modes/fullscreen.js.map +1 -0
  1457. package/dist/plugs/settings/modes/index.cjs +1031 -0
  1458. package/dist/plugs/settings/modes/index.cjs.map +1 -0
  1459. package/dist/plugs/settings/modes/index.js +51 -0
  1460. package/dist/plugs/settings/modes/index.js.map +1 -0
  1461. package/dist/plugs/settings/modes/miniplayer.cjs +618 -0
  1462. package/dist/plugs/settings/modes/miniplayer.cjs.map +1 -0
  1463. package/dist/plugs/settings/modes/miniplayer.js +30 -0
  1464. package/dist/plugs/settings/modes/miniplayer.js.map +1 -0
  1465. package/dist/plugs/settings/modes/pictureInPicture.cjs +704 -0
  1466. package/dist/plugs/settings/modes/pictureInPicture.cjs.map +1 -0
  1467. package/dist/plugs/settings/modes/pictureInPicture.js +30 -0
  1468. package/dist/plugs/settings/modes/pictureInPicture.js.map +1 -0
  1469. package/dist/plugs/settings/modes/theater.cjs +557 -0
  1470. package/dist/plugs/settings/modes/theater.cjs.map +1 -0
  1471. package/dist/plugs/settings/modes/theater.js +30 -0
  1472. package/dist/plugs/settings/modes/theater.js.map +1 -0
  1473. package/dist/plugs/settings/modes/types.cjs +19 -0
  1474. package/dist/plugs/settings/modes/types.cjs.map +1 -0
  1475. package/dist/plugs/settings/modes/types.js +1 -0
  1476. package/dist/plugs/settings/modes/types.js.map +1 -0
  1477. package/dist/plugs/settings/notifiers/build.cjs +30 -0
  1478. package/dist/plugs/settings/notifiers/build.cjs.map +1 -0
  1479. package/dist/plugs/settings/notifiers/build.js +8 -0
  1480. package/dist/plugs/settings/notifiers/build.js.map +1 -0
  1481. package/dist/plugs/settings/notifiers/index.cjs +451 -0
  1482. package/dist/plugs/settings/notifiers/index.cjs.map +1 -0
  1483. package/dist/plugs/settings/notifiers/index.js +24 -0
  1484. package/dist/plugs/settings/notifiers/index.js.map +1 -0
  1485. package/dist/plugs/settings/notifiers/types.cjs +19 -0
  1486. package/dist/plugs/settings/notifiers/types.cjs.map +1 -0
  1487. package/dist/plugs/settings/notifiers/types.js +1 -0
  1488. package/dist/plugs/settings/notifiers/types.js.map +1 -0
  1489. package/dist/plugs/settings/objectFit/build.cjs +35 -0
  1490. package/dist/plugs/settings/objectFit/build.cjs.map +1 -0
  1491. package/dist/plugs/settings/objectFit/build.js +10 -0
  1492. package/dist/plugs/settings/objectFit/build.js.map +1 -0
  1493. package/dist/plugs/settings/objectFit/index.cjs +514 -0
  1494. package/dist/plugs/settings/objectFit/index.cjs.map +1 -0
  1495. package/dist/plugs/settings/objectFit/index.js +30 -0
  1496. package/dist/plugs/settings/objectFit/index.js.map +1 -0
  1497. package/dist/plugs/settings/objectFit/types.cjs +19 -0
  1498. package/dist/plugs/settings/objectFit/types.cjs.map +1 -0
  1499. package/dist/plugs/settings/objectFit/types.js +1 -0
  1500. package/dist/plugs/settings/objectFit/types.js.map +1 -0
  1501. package/dist/plugs/settings/overlay/build.cjs +46 -0
  1502. package/dist/plugs/settings/overlay/build.cjs.map +1 -0
  1503. package/dist/plugs/settings/overlay/build.js +8 -0
  1504. package/dist/plugs/settings/overlay/build.js.map +1 -0
  1505. package/dist/plugs/settings/overlay/index.cjs +502 -0
  1506. package/dist/plugs/settings/overlay/index.cjs.map +1 -0
  1507. package/dist/plugs/settings/overlay/index.js +24 -0
  1508. package/dist/plugs/settings/overlay/index.js.map +1 -0
  1509. package/dist/plugs/settings/overlay/types.cjs +19 -0
  1510. package/dist/plugs/settings/overlay/types.cjs.map +1 -0
  1511. package/dist/plugs/settings/overlay/types.js +1 -0
  1512. package/dist/plugs/settings/overlay/types.js.map +1 -0
  1513. package/dist/plugs/settings/persist/build.cjs +41 -0
  1514. package/dist/plugs/settings/persist/build.cjs.map +1 -0
  1515. package/dist/plugs/settings/persist/build.js +8 -0
  1516. package/dist/plugs/settings/persist/build.js.map +1 -0
  1517. package/dist/plugs/settings/persist/index.cjs +413 -0
  1518. package/dist/plugs/settings/persist/index.cjs.map +1 -0
  1519. package/dist/plugs/settings/persist/index.js +22 -0
  1520. package/dist/plugs/settings/persist/index.js.map +1 -0
  1521. package/dist/plugs/settings/persist/types.cjs +19 -0
  1522. package/dist/plugs/settings/persist/types.cjs.map +1 -0
  1523. package/dist/plugs/settings/persist/types.js +1 -0
  1524. package/dist/plugs/settings/persist/types.js.map +1 -0
  1525. package/dist/plugs/settings/playbackRate/build.cjs +32 -0
  1526. package/dist/plugs/settings/playbackRate/build.cjs.map +1 -0
  1527. package/dist/plugs/settings/playbackRate/build.js +8 -0
  1528. package/dist/plugs/settings/playbackRate/build.js.map +1 -0
  1529. package/dist/plugs/settings/playbackRate/index.cjs +448 -0
  1530. package/dist/plugs/settings/playbackRate/index.cjs.map +1 -0
  1531. package/dist/plugs/settings/playbackRate/index.js +23 -0
  1532. package/dist/plugs/settings/playbackRate/index.js.map +1 -0
  1533. package/dist/plugs/settings/playbackRate/types.cjs +19 -0
  1534. package/dist/plugs/settings/playbackRate/types.cjs.map +1 -0
  1535. package/dist/plugs/settings/playbackRate/types.js +1 -0
  1536. package/dist/plugs/settings/playbackRate/types.js.map +1 -0
  1537. package/dist/plugs/settings/poster/build.cjs +29 -0
  1538. package/dist/plugs/settings/poster/build.cjs.map +1 -0
  1539. package/dist/plugs/settings/poster/build.js +8 -0
  1540. package/dist/plugs/settings/poster/build.js.map +1 -0
  1541. package/dist/plugs/settings/poster/index.cjs +435 -0
  1542. package/dist/plugs/settings/poster/index.cjs.map +1 -0
  1543. package/dist/plugs/settings/poster/index.js +24 -0
  1544. package/dist/plugs/settings/poster/index.js.map +1 -0
  1545. package/dist/plugs/settings/poster/types.cjs +19 -0
  1546. package/dist/plugs/settings/poster/types.cjs.map +1 -0
  1547. package/dist/plugs/settings/poster/types.js +1 -0
  1548. package/dist/plugs/settings/poster/types.js.map +1 -0
  1549. package/dist/plugs/settings/settingsView/build.cjs +35 -0
  1550. package/dist/plugs/settings/settingsView/build.cjs.map +1 -0
  1551. package/dist/plugs/settings/settingsView/build.js +8 -0
  1552. package/dist/plugs/settings/settingsView/build.js.map +1 -0
  1553. package/dist/plugs/settings/settingsView/index.cjs +1369 -0
  1554. package/dist/plugs/settings/settingsView/index.cjs.map +1 -0
  1555. package/dist/plugs/settings/settingsView/index.js +42 -0
  1556. package/dist/plugs/settings/settingsView/index.js.map +1 -0
  1557. package/dist/plugs/settings/settingsView/menu/index.cjs +1164 -0
  1558. package/dist/plugs/settings/settingsView/menu/index.cjs.map +1 -0
  1559. package/dist/plugs/settings/settingsView/menu/index.js +36 -0
  1560. package/dist/plugs/settings/settingsView/menu/index.js.map +1 -0
  1561. package/dist/plugs/settings/settingsView/menu/panel/index.cjs +144 -0
  1562. package/dist/plugs/settings/settingsView/menu/panel/index.cjs.map +1 -0
  1563. package/dist/plugs/settings/settingsView/menu/panel/index.js +16 -0
  1564. package/dist/plugs/settings/settingsView/menu/panel/index.js.map +1 -0
  1565. package/dist/plugs/settings/settingsView/menu/panel/main.cjs +524 -0
  1566. package/dist/plugs/settings/settingsView/menu/panel/main.cjs.map +1 -0
  1567. package/dist/plugs/settings/settingsView/menu/panel/main.js +33 -0
  1568. package/dist/plugs/settings/settingsView/menu/panel/main.js.map +1 -0
  1569. package/dist/plugs/settings/settingsView/menu/panel/sub.cjs +617 -0
  1570. package/dist/plugs/settings/settingsView/menu/panel/sub.cjs.map +1 -0
  1571. package/dist/plugs/settings/settingsView/menu/panel/sub.js +33 -0
  1572. package/dist/plugs/settings/settingsView/menu/panel/sub.js.map +1 -0
  1573. package/dist/plugs/settings/settingsView/menu/widgets/base.cjs +357 -0
  1574. package/dist/plugs/settings/settingsView/menu/widgets/base.cjs.map +1 -0
  1575. package/dist/plugs/settings/settingsView/menu/widgets/base.js +19 -0
  1576. package/dist/plugs/settings/settingsView/menu/widgets/base.js.map +1 -0
  1577. package/dist/plugs/settings/settingsView/menu/widgets/button.cjs +392 -0
  1578. package/dist/plugs/settings/settingsView/menu/widgets/button.cjs.map +1 -0
  1579. package/dist/plugs/settings/settingsView/menu/widgets/button.js +20 -0
  1580. package/dist/plugs/settings/settingsView/menu/widgets/button.js.map +1 -0
  1581. package/dist/plugs/settings/settingsView/menu/widgets/color.cjs +498 -0
  1582. package/dist/plugs/settings/settingsView/menu/widgets/color.cjs.map +1 -0
  1583. package/dist/plugs/settings/settingsView/menu/widgets/color.js +31 -0
  1584. package/dist/plugs/settings/settingsView/menu/widgets/color.js.map +1 -0
  1585. package/dist/plugs/settings/settingsView/menu/widgets/dragselect.cjs +563 -0
  1586. package/dist/plugs/settings/settingsView/menu/widgets/dragselect.cjs.map +1 -0
  1587. package/dist/plugs/settings/settingsView/menu/widgets/dragselect.js +31 -0
  1588. package/dist/plugs/settings/settingsView/menu/widgets/dragselect.js.map +1 -0
  1589. package/dist/plugs/settings/settingsView/menu/widgets/group.cjs +500 -0
  1590. package/dist/plugs/settings/settingsView/menu/widgets/group.cjs.map +1 -0
  1591. package/dist/plugs/settings/settingsView/menu/widgets/group.js +31 -0
  1592. package/dist/plugs/settings/settingsView/menu/widgets/group.js.map +1 -0
  1593. package/dist/plugs/settings/settingsView/menu/widgets/index.cjs +912 -0
  1594. package/dist/plugs/settings/settingsView/menu/widgets/index.cjs.map +1 -0
  1595. package/dist/plugs/settings/settingsView/menu/widgets/index.js +53 -0
  1596. package/dist/plugs/settings/settingsView/menu/widgets/index.js.map +1 -0
  1597. package/dist/plugs/settings/settingsView/menu/widgets/input.cjs +409 -0
  1598. package/dist/plugs/settings/settingsView/menu/widgets/input.cjs.map +1 -0
  1599. package/dist/plugs/settings/settingsView/menu/widgets/input.js +31 -0
  1600. package/dist/plugs/settings/settingsView/menu/widgets/input.js.map +1 -0
  1601. package/dist/plugs/settings/settingsView/menu/widgets/limits.cjs +411 -0
  1602. package/dist/plugs/settings/settingsView/menu/widgets/limits.cjs.map +1 -0
  1603. package/dist/plugs/settings/settingsView/menu/widgets/limits.js +31 -0
  1604. package/dist/plugs/settings/settingsView/menu/widgets/limits.js.map +1 -0
  1605. package/dist/plugs/settings/settingsView/menu/widgets/range.cjs +420 -0
  1606. package/dist/plugs/settings/settingsView/menu/widgets/range.cjs.map +1 -0
  1607. package/dist/plugs/settings/settingsView/menu/widgets/range.js +31 -0
  1608. package/dist/plugs/settings/settingsView/menu/widgets/range.js.map +1 -0
  1609. package/dist/plugs/settings/settingsView/menu/widgets/select.cjs +490 -0
  1610. package/dist/plugs/settings/settingsView/menu/widgets/select.cjs.map +1 -0
  1611. package/dist/plugs/settings/settingsView/menu/widgets/select.js +31 -0
  1612. package/dist/plugs/settings/settingsView/menu/widgets/select.js.map +1 -0
  1613. package/dist/plugs/settings/settingsView/menu/widgets/toggle.cjs +401 -0
  1614. package/dist/plugs/settings/settingsView/menu/widgets/toggle.cjs.map +1 -0
  1615. package/dist/plugs/settings/settingsView/menu/widgets/toggle.js +31 -0
  1616. package/dist/plugs/settings/settingsView/menu/widgets/toggle.js.map +1 -0
  1617. package/dist/plugs/settings/settingsView/types.cjs +19 -0
  1618. package/dist/plugs/settings/settingsView/types.cjs.map +1 -0
  1619. package/dist/plugs/settings/settingsView/types.js +1 -0
  1620. package/dist/plugs/settings/settingsView/types.js.map +1 -0
  1621. package/dist/plugs/settings/sleepTimer/build.cjs +29 -0
  1622. package/dist/plugs/settings/sleepTimer/build.cjs.map +1 -0
  1623. package/dist/plugs/settings/sleepTimer/build.js +8 -0
  1624. package/dist/plugs/settings/sleepTimer/build.js.map +1 -0
  1625. package/dist/plugs/settings/sleepTimer/index.cjs +431 -0
  1626. package/dist/plugs/settings/sleepTimer/index.cjs.map +1 -0
  1627. package/dist/plugs/settings/sleepTimer/index.js +24 -0
  1628. package/dist/plugs/settings/sleepTimer/index.js.map +1 -0
  1629. package/dist/plugs/settings/sleepTimer/types.cjs +19 -0
  1630. package/dist/plugs/settings/sleepTimer/types.cjs.map +1 -0
  1631. package/dist/plugs/settings/sleepTimer/types.js +2 -0
  1632. package/dist/plugs/settings/sleepTimer/types.js.map +1 -0
  1633. package/dist/plugs/settings/time/build.cjs +32 -0
  1634. package/dist/plugs/settings/time/build.cjs.map +1 -0
  1635. package/dist/plugs/settings/time/build.js +8 -0
  1636. package/dist/plugs/settings/time/build.js.map +1 -0
  1637. package/dist/plugs/settings/time/index.cjs +604 -0
  1638. package/dist/plugs/settings/time/index.cjs.map +1 -0
  1639. package/dist/plugs/settings/time/index.js +29 -0
  1640. package/dist/plugs/settings/time/index.js.map +1 -0
  1641. package/dist/plugs/settings/time/types.cjs +19 -0
  1642. package/dist/plugs/settings/time/types.cjs.map +1 -0
  1643. package/dist/plugs/settings/time/types.js +1 -0
  1644. package/dist/plugs/settings/time/types.js.map +1 -0
  1645. package/dist/plugs/settings/timeTravel/build.cjs +36 -0
  1646. package/dist/plugs/settings/timeTravel/build.cjs.map +1 -0
  1647. package/dist/plugs/settings/timeTravel/build.js +8 -0
  1648. package/dist/plugs/settings/timeTravel/build.js.map +1 -0
  1649. package/dist/plugs/settings/timeTravel/index.cjs +461 -0
  1650. package/dist/plugs/settings/timeTravel/index.cjs.map +1 -0
  1651. package/dist/plugs/settings/timeTravel/index.js +33 -0
  1652. package/dist/plugs/settings/timeTravel/index.js.map +1 -0
  1653. package/dist/plugs/settings/timeTravel/types.cjs +19 -0
  1654. package/dist/plugs/settings/timeTravel/types.cjs.map +1 -0
  1655. package/dist/plugs/settings/timeTravel/types.js +1 -0
  1656. package/dist/plugs/settings/timeTravel/types.js.map +1 -0
  1657. package/dist/plugs/settings/toasts/build.cjs +35 -0
  1658. package/dist/plugs/settings/toasts/build.cjs.map +1 -0
  1659. package/dist/plugs/settings/toasts/build.js +8 -0
  1660. package/dist/plugs/settings/toasts/build.js.map +1 -0
  1661. package/dist/plugs/settings/toasts/index.cjs +450 -0
  1662. package/dist/plugs/settings/toasts/index.cjs.map +1 -0
  1663. package/dist/plugs/settings/toasts/index.js +26 -0
  1664. package/dist/plugs/settings/toasts/index.js.map +1 -0
  1665. package/dist/plugs/settings/toasts/types.cjs +19 -0
  1666. package/dist/plugs/settings/toasts/types.cjs.map +1 -0
  1667. package/dist/plugs/settings/toasts/types.js +1 -0
  1668. package/dist/plugs/settings/toasts/types.js.map +1 -0
  1669. package/dist/plugs/settings/voice/build.cjs +81 -0
  1670. package/dist/plugs/settings/voice/build.cjs.map +1 -0
  1671. package/dist/plugs/settings/voice/build.js +8 -0
  1672. package/dist/plugs/settings/voice/build.js.map +1 -0
  1673. package/dist/plugs/settings/voice/index.cjs +757 -0
  1674. package/dist/plugs/settings/voice/index.cjs.map +1 -0
  1675. package/dist/plugs/settings/voice/index.js +26 -0
  1676. package/dist/plugs/settings/voice/index.js.map +1 -0
  1677. package/dist/plugs/settings/voice/types.cjs +19 -0
  1678. package/dist/plugs/settings/voice/types.cjs.map +1 -0
  1679. package/dist/plugs/settings/voice/types.js +1 -0
  1680. package/dist/plugs/settings/voice/types.js.map +1 -0
  1681. package/dist/plugs/settings/volume/build.cjs +31 -0
  1682. package/dist/plugs/settings/volume/build.cjs.map +1 -0
  1683. package/dist/plugs/settings/volume/build.js +8 -0
  1684. package/dist/plugs/settings/volume/build.js.map +1 -0
  1685. package/dist/plugs/settings/volume/index.cjs +592 -0
  1686. package/dist/plugs/settings/volume/index.cjs.map +1 -0
  1687. package/dist/plugs/settings/volume/index.js +34 -0
  1688. package/dist/plugs/settings/volume/index.js.map +1 -0
  1689. package/dist/plugs/settings/volume/types.cjs +19 -0
  1690. package/dist/plugs/settings/volume/types.cjs.map +1 -0
  1691. package/dist/plugs/settings/volume/types.js +1 -0
  1692. package/dist/plugs/settings/volume/types.js.map +1 -0
  1693. package/dist/plugs/z-register.cjs +5901 -0
  1694. package/dist/plugs/z-register.cjs.map +1 -0
  1695. package/dist/plugs/z-register.js +105 -0
  1696. package/dist/plugs/z-register.js.map +1 -0
  1697. package/dist/super/components/icons.cjs +630 -0
  1698. package/dist/super/components/icons.cjs.map +1 -0
  1699. package/dist/super/components/icons.js +248 -0
  1700. package/dist/super/components/icons.js.map +1 -0
  1701. package/dist/super/components/index.cjs +3111 -0
  1702. package/dist/super/components/index.cjs.map +1 -0
  1703. package/dist/super/components/index.js +498 -0
  1704. package/dist/super/components/index.js.map +1 -0
  1705. package/dist/super/components/notifiers.cjs +784 -0
  1706. package/dist/super/components/notifiers.cjs.map +1 -0
  1707. package/dist/super/components/notifiers.js +96 -0
  1708. package/dist/super/components/notifiers.js.map +1 -0
  1709. package/dist/super/consts.cjs +289 -0
  1710. package/dist/super/consts.cjs.map +1 -0
  1711. package/dist/super/consts.js +28 -0
  1712. package/dist/super/consts.js.map +1 -0
  1713. package/dist/super/plugs/index.cjs +5988 -0
  1714. package/dist/super/plugs/index.cjs.map +1 -0
  1715. package/dist/super/plugs/index.js +388 -0
  1716. package/dist/super/plugs/index.js.map +1 -0
  1717. package/dist/super/plugs/menus.cjs +2572 -0
  1718. package/dist/super/plugs/menus.cjs.map +1 -0
  1719. package/dist/super/plugs/menus.js +132 -0
  1720. package/dist/super/plugs/menus.js.map +1 -0
  1721. package/dist/super/techs.cjs +256 -0
  1722. package/dist/super/techs.cjs.map +1 -0
  1723. package/dist/super/techs.js +32 -0
  1724. package/dist/super/techs.js.map +1 -0
  1725. package/dist/super/utils.cjs +1379 -0
  1726. package/dist/super/utils.cjs.map +1 -0
  1727. package/dist/super/utils.js +400 -0
  1728. package/dist/super/utils.js.map +1 -0
  1729. package/dist/super.cjs +10191 -0
  1730. package/dist/super.cjs.map +1 -0
  1731. package/dist/super.css +3148 -0
  1732. package/dist/super.css.map +1 -0
  1733. package/dist/super.global.js +12460 -0
  1734. package/dist/super.global.js.map +1 -0
  1735. package/dist/super.js +380 -0
  1736. package/dist/super.js.map +1 -0
  1737. package/dist/techs/base.cjs +256 -0
  1738. package/dist/techs/base.cjs.map +1 -0
  1739. package/dist/techs/base.js +19 -0
  1740. package/dist/techs/base.js.map +1 -0
  1741. package/dist/techs/dash.cjs +1160 -0
  1742. package/dist/techs/dash.cjs.map +1 -0
  1743. package/dist/techs/dash.js +24 -0
  1744. package/dist/techs/dash.js.map +1 -0
  1745. package/dist/techs/hls.cjs +1164 -0
  1746. package/dist/techs/hls.cjs.map +1 -0
  1747. package/dist/techs/hls.js +24 -0
  1748. package/dist/techs/hls.js.map +1 -0
  1749. package/dist/techs/html5.cjs +988 -0
  1750. package/dist/techs/html5.cjs.map +1 -0
  1751. package/dist/techs/html5.js +23 -0
  1752. package/dist/techs/html5.js.map +1 -0
  1753. package/dist/techs/shaka.cjs +1183 -0
  1754. package/dist/techs/shaka.cjs.map +1 -0
  1755. package/dist/techs/shaka.js +197 -0
  1756. package/dist/techs/shaka.js.map +1 -0
  1757. package/dist/techs/vimeo.cjs +731 -0
  1758. package/dist/techs/vimeo.cjs.map +1 -0
  1759. package/dist/techs/vimeo.js +24 -0
  1760. package/dist/techs/vimeo.js.map +1 -0
  1761. package/dist/techs/youtube.cjs +730 -0
  1762. package/dist/techs/youtube.cjs.map +1 -0
  1763. package/dist/techs/youtube.js +22 -0
  1764. package/dist/techs/youtube.js.map +1 -0
  1765. package/dist/techs/z-register.cjs +2354 -0
  1766. package/dist/techs/z-register.cjs.map +1 -0
  1767. package/dist/techs/z-register.js +26 -0
  1768. package/dist/techs/z-register.js.map +1 -0
  1769. package/dist/tools/player.cjs +1804 -0
  1770. package/dist/tools/player.cjs.map +1 -0
  1771. package/dist/tools/player.js +29 -0
  1772. package/dist/tools/player.js.map +1 -0
  1773. package/dist/tools/queue.cjs +63 -0
  1774. package/dist/tools/queue.cjs.map +1 -0
  1775. package/dist/tools/queue.js +8 -0
  1776. package/dist/tools/queue.js.map +1 -0
  1777. package/dist/tools/runtime.cjs +1919 -0
  1778. package/dist/tools/runtime.cjs.map +1 -0
  1779. package/dist/tools/runtime.js +49 -0
  1780. package/dist/tools/runtime.js.map +1 -0
  1781. package/dist/types/UIOptions.d.cjs +19 -0
  1782. package/dist/types/UIOptions.d.cjs.map +1 -0
  1783. package/dist/types/UIOptions.d.js +1 -0
  1784. package/dist/types/UIOptions.d.js.map +1 -0
  1785. package/dist/types/actions.d.cjs +19 -0
  1786. package/dist/types/actions.d.cjs.map +1 -0
  1787. package/dist/types/actions.d.js +1 -0
  1788. package/dist/types/actions.d.js.map +1 -0
  1789. package/dist/types/config.d.cjs +19 -0
  1790. package/dist/types/config.d.cjs.map +1 -0
  1791. package/dist/types/config.d.js +1 -0
  1792. package/dist/types/config.d.js.map +1 -0
  1793. package/dist/types/contract.d.cjs +19 -0
  1794. package/dist/types/contract.d.cjs.map +1 -0
  1795. package/dist/types/contract.d.js +1 -0
  1796. package/dist/types/contract.d.js.map +1 -0
  1797. package/dist/types/generics.d.cjs +19 -0
  1798. package/dist/types/generics.d.cjs.map +1 -0
  1799. package/dist/types/generics.d.js +1 -0
  1800. package/dist/types/generics.d.js.map +1 -0
  1801. package/dist/types/global.d.cjs +22 -0
  1802. package/dist/types/global.d.cjs.map +1 -0
  1803. package/dist/types/global.d.js +2 -0
  1804. package/dist/types/global.d.js.map +1 -0
  1805. package/dist/types/registries.d.cjs +19 -0
  1806. package/dist/types/registries.d.cjs.map +1 -0
  1807. package/dist/types/registries.d.js +1 -0
  1808. package/dist/types/registries.d.js.map +1 -0
  1809. package/dist/utils/color.cjs +111 -0
  1810. package/dist/utils/color.cjs.map +1 -0
  1811. package/dist/utils/color.js +21 -0
  1812. package/dist/utils/color.js.map +1 -0
  1813. package/dist/utils/dom.cjs +269 -0
  1814. package/dist/utils/dom.cjs.map +1 -0
  1815. package/dist/utils/dom.js +58 -0
  1816. package/dist/utils/dom.js.map +1 -0
  1817. package/dist/utils/env.cjs +110 -0
  1818. package/dist/utils/env.cjs.map +1 -0
  1819. package/dist/utils/env.js +56 -0
  1820. package/dist/utils/env.js.map +1 -0
  1821. package/dist/utils/file.cjs +176 -0
  1822. package/dist/utils/file.cjs.map +1 -0
  1823. package/dist/utils/file.js +20 -0
  1824. package/dist/utils/file.js.map +1 -0
  1825. package/dist/utils/fn.cjs +133 -0
  1826. package/dist/utils/fn.cjs.map +1 -0
  1827. package/dist/utils/fn.js +41 -0
  1828. package/dist/utils/fn.js.map +1 -0
  1829. package/dist/utils/keys.cjs +66 -0
  1830. package/dist/utils/keys.cjs.map +1 -0
  1831. package/dist/utils/keys.js +28 -0
  1832. package/dist/utils/keys.js.map +1 -0
  1833. package/dist/utils/match.cjs +119 -0
  1834. package/dist/utils/match.cjs.map +1 -0
  1835. package/dist/utils/match.js +30 -0
  1836. package/dist/utils/match.js.map +1 -0
  1837. package/dist/utils/media.cjs +546 -0
  1838. package/dist/utils/media.cjs.map +1 -0
  1839. package/dist/utils/media.js +84 -0
  1840. package/dist/utils/media.js.map +1 -0
  1841. package/dist/utils/methd.cjs +50 -0
  1842. package/dist/utils/methd.cjs.map +1 -0
  1843. package/dist/utils/methd.js +15 -0
  1844. package/dist/utils/methd.js.map +1 -0
  1845. package/dist/utils/num.cjs +92 -0
  1846. package/dist/utils/num.cjs.map +1 -0
  1847. package/dist/utils/num.js +22 -0
  1848. package/dist/utils/num.js.map +1 -0
  1849. package/dist/utils/obj.cjs +204 -0
  1850. package/dist/utils/obj.cjs.map +1 -0
  1851. package/dist/utils/obj.js +58 -0
  1852. package/dist/utils/obj.js.map +1 -0
  1853. package/dist/utils/str.cjs +134 -0
  1854. package/dist/utils/str.cjs.map +1 -0
  1855. package/dist/utils/str.js +35 -0
  1856. package/dist/utils/str.js.map +1 -0
  1857. package/dist/utils/time.cjs +103 -0
  1858. package/dist/utils/time.cjs.map +1 -0
  1859. package/dist/utils/time.js +11 -0
  1860. package/dist/utils/time.js.map +1 -0
  1861. package/package.json +124 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/ts/techs/dash.ts","../../src/ts/core/controllable.ts","../../../t007-tools/packages/utils/dist/chunk-ZALPHCSJ.js","../../src/ts/utils/obj.ts","../../src/ts/techs/base.ts","../../src/ts/utils/dom.ts","../../src/ts/utils/media.ts","../../src/ts/techs/html5.ts","../../src/ts/utils/match.ts","../../src/ts/utils/env.ts"],"sourcesContent":["import { HTML5Tech } from \"./html5\";\r\nimport type { Controller } from \"@core/controller\";\r\nimport type { CtlrMedia, MediaFeatures } from \"@defs/contract\";\r\nimport { inert, type REvent } from \"sia-reactor\";\r\nimport { DASH_EXTENSIONS } from \"@utils/match\";\r\nimport { MSE_ENABLED } from \"@utils/env\";\r\nimport { capitalize, isSameURL } from \"@utils/str\";\r\nimport { isNum } from \"@utils/obj\";\r\nimport { loadResource } from \"@utils/dom\";\r\nimport type { TrackType } from \"@utils/media\";\r\nimport type * as dashjs from \"dashjs\";\r\n\r\ninterface DashMediaPlayer extends dashjs.MediaPlayerClass {\r\n getBitrateInfoListFor(type: \"video\" | \"audio\"): any[];\r\n setQualityFor(type: \"video\" | \"audio\", value: number): void;\r\n} // dashjs is notorious for stale types; not us\r\n\r\nexport class DashTech extends HTML5Tech {\r\n public static readonly techName: string = \"dash\";\r\n public host: DashMediaPlayer | null = null;\r\n public static override canPlaySource(src: string): boolean {\r\n return MSE_ENABLED && DASH_EXTENSIONS.test(src);\r\n }\r\n protected strictTracks: boolean = true;\r\n protected hostSrc: string | null = null;\r\n constructor(ctlr: Controller, features?: MediaFeatures) {\r\n const isVid = ctlr.media.type === \"video\";\r\n // prettier-ignore\r\n super(ctlr, {\r\n // States & Lists\r\n sources: false, tracks: false, textTracks: true, audioTracks: true, videoTracks: isVid, levels: true, \r\n // States & Currents (DASH.js specific)\r\n currentAudioTrack: true, currentVideoTrack: isVid, currentLevel: true, autoLevel: true, \r\n // Status & Settings\r\n bandwidth: true, protection: true, srcObject: false, ...features\r\n });\r\n ctlr.media.status.hostReady = false;\r\n }\r\n // --- API Injection ---\r\n protected async initHost(src = \"\") {\r\n try {\r\n // Setup & Compatibility\r\n this.destroyDash();\r\n const DASHJS = ((window as any).dashjs ?? (await loadResource(window.TMG_DASH_JS_SRC!, \"script\"), (window as any).dashjs)) as typeof dashjs;\r\n if (this.signal.aborted) return; // src may have changed during the `await`\r\n if (!DASHJS?.supportsMediaSource()) return this.ctlr.notice(\"DASH is not supported in this browser\", \"error\", null);\r\n const base = this.config[this.ctlr.techTruth];\r\n this.hostSrc = src;\r\n this.host = DASHJS.MediaPlayer().create() as DashMediaPlayer;\r\n if (this.config.type === \"audio\") this.host.updateSettings({ streaming: { abr: { autoSwitchBitrate: { video: false } }, trackSwitchMode: { audio: \"alwaysReplace\", video: \"alwaysReplace\" }, buffer: { fastSwitchEnabled: true } } }); // DASH.js to replace the audio to avoid buffer finish delays\r\n if (this.config.settings.metadata.allowOverride) this.config.settings.metadata.chapterInfo = [];\r\n // Status & State (Bulk Wiring)\r\n this.host.on(DASHJS.MediaPlayer.events.STREAM_INITIALIZED, () => {\r\n this.config.status.isLive = this.host!.isDynamic();\r\n const autoSwitch = (this.host!.getSettings() as any).streaming?.abr?.autoSwitchBitrate;\r\n this.config.state.autoLevel = typeof autoSwitch === \"boolean\" ? autoSwitch : autoSwitch?.video ?? true; // Fallback logic for v3 vs v4+ API shapes\r\n for (const t of [\"text\", \"audio\", \"video\"] as const) this.config.status[`${t}Tracks`] = inert(this.host!.getTracksFor(t));\r\n this.config.status.levels = inert(this.host!.getBitrateInfoListFor(\"video\"));\r\n this.media.status.hostReady = true;\r\n });\r\n this.host.on(DASHJS.MediaPlayer.events.TRACK_CHANGE_RENDERED, (ev: any) => {\r\n const i = this.host?.getTracksFor(ev.mediaType)?.findIndex((t) => t.id === ev.newMediaInfo?.id || t.index === ev.newMediaInfo?.index);\r\n this.config.state[`current${capitalize<TrackType>(ev.mediaType)}Track`] = i ?? -1;\r\n });\r\n this.host.on(DASHJS.MediaPlayer.events.QUALITY_CHANGE_RENDERED, (ev: any) => ev.mediaType === \"video\" && (this.config.state.currentLevel = ev.newQuality ?? ev.index)); // v4+ uses newQuality, v3 uses index\r\n this.host.on(DASHJS.MediaPlayer.events.FRAGMENT_LOADING_COMPLETED, (ev) => this.ctlr.throttle(\"dashBandWidth\", () => ev.request?.mediaType === \"video\" && (this.config.status.bandwidth = Math.round((this.host!.getAverageThroughput(\"video\") / 1000) * 10) / 10), 2000)); // Converted to Mbps, 1 decimal\r\n this.host.on(DASHJS.MediaPlayer.events.EVENT_MODE_ON_RECEIVE, (ev: any) => {\r\n if (!this.config.settings.metadata.allowOverride) return;\r\n if (!ev.schemeIdUri?.includes(\"chapter\") && !ev.schemeIdUri?.includes(\"title\")) return;\r\n const chapters = this.config.settings.metadata.chapterInfo;\r\n if (chapters.find((c) => c.startTime === ev.presentationTime)) return;\r\n chapters.push({ title: new TextDecoder(\"utf-8\").decode(ev.messageData).replace(/\\0/g, \"\").trim(), startTime: ev.presentationTime });\r\n this.config.settings.metadata.chapterInfo = chapters.sort((a, b) => a.startTime - b.startTime);\r\n });\r\n this.host.on(DASHJS.MediaPlayer.events.ERROR, (ev) => {\r\n if (ev.error === \"download\") return this.ctlr.notice(`DASH Download error occurred: ${ev.event}`, \"error\", `Download failed for \"${ev.event?.url}\"`);\r\n if (ev.error !== \"mediasource\") return;\r\n this.handleHostError(ev);\r\n });\r\n this.config.settings.protection && this.host.setProtectionData(this.config.settings.protection);\r\n this.host.initialize(this.el, src, base.autoplay || !base.paused, base.currentTime);\r\n } catch (err) {\r\n this.handleHostError(err);\r\n }\r\n }\r\n // ===========================================================================\r\n // WIRING OVERRIDES\r\n // ===========================================================================\r\n protected override wireCurrentTrack(type: TrackType, _type = type.toLowerCase() as Lowercase<TrackType>): void {\r\n this.config.set(`intent.current${type}Track`, (term) => (isNum(term) ? term : (this.config.status[`${_type}Tracks`] as dashjs.MediaInfo[]).findIndex((t) => t.id === term || t.lang === term)), { signal: this.signal }); // #VALIDATOR: intent type conformation\r\n this.config.on(`intent.current${type}Track`, (e) => this.handleCurrentHostTrackIntent(e, _type), this.evtOpts.CONFIG);\r\n }\r\n protected wireCurrentLevel(): void {\r\n this.config.set(\"intent.currentLevel\", (term) => (isNum(term) ? term : Number(term)), { signal: this.signal }); // #VALIDATOR: intent type conformation\r\n this.config.on(\"intent.currentLevel\", this.handleCurrentLevelIntent, this.evtOpts.CONFIG);\r\n }\r\n protected wireAutoLevel(): void {\r\n this.config.on(\"intent.autoLevel\", this.handleAutoLevelIntent, this.evtOpts.CONFIG);\r\n }\r\n // ===========================================================================\r\n // HANDLERS\r\n // ===========================================================================\r\n protected override handleSrcIntent(e: REvent<CtlrMedia, \"intent.src\">): void {\r\n if (e.resolved || isSameURL(this.hostSrc, e.value)) return;\r\n this.initHost(e.value);\r\n e.resolve(this.name);\r\n }\r\n protected handleCurrentLevelIntent(e: REvent<CtlrMedia, \"intent.currentLevel\">): void {\r\n if (e.resolved) return;\r\n this.when(\"hostReady\", e, () => {\r\n this.host!.updateSettings({ streaming: { abr: { autoSwitchBitrate: { video: false } } } });\r\n if ((e.value as number) > -1 && (e.value as number) < this.config.status.levels.length) {\r\n this.host!.setQualityFor(\"video\", e.value as number); // #VALIDATED: mediated for cast conformity; no-opy\r\n this.config.state.autoLevel = false;\r\n }\r\n });\r\n e.resolve(this.name);\r\n }\r\n protected handleAutoLevelIntent(e: REvent<CtlrMedia, \"intent.autoLevel\">): void {\r\n if (e.resolved) return;\r\n this.when(\"hostReady\", e, () => {\r\n this.host!.updateSettings({ streaming: { abr: { autoSwitchBitrate: { video: e.value } } } });\r\n this.config.state.autoLevel = e.value as boolean;\r\n });\r\n e.resolve(this.name);\r\n }\r\n protected handleCurrentHostTrackIntent(e: REvent<CtlrMedia, `intent.current${TrackType}Track`>, type: Lowercase<TrackType>): void {\r\n if (e.resolved) return;\r\n this.when(\"hostReady\", e, () => {\r\n const track = this.config.status[`${type}Tracks`][e.value as number] as dashjs.MediaInfo | undefined; // #VALIDATED: mediated for cast conformity; no-opy\r\n if (track) this.host!.setCurrentTrack(track);\r\n });\r\n e.resolve(this.name);\r\n }\r\n protected handleHostError(err: any): void {\r\n this.config.status.error = { ...err, code: err?.code ?? 5, message: err.error ?? err.message ?? \"Fatal DASH error\" }; // 5: MEDIA_ERR_UNKNOWN to allow mssg fallback\r\n this.config.status.waiting = false;\r\n }\r\n // --- Lifecycle ---\r\n protected destroyDash(): void {\r\n this.host?.reset(), (this.host = null), (this.media.status.hostReady = false);\r\n }\r\n protected override onDestroy(): void {\r\n this.destroyDash(), super.onDestroy();\r\n }\r\n}\r\n\r\ndeclare module \"@defs/registries\" {\r\n interface TechRegistryMap {\r\n dash: typeof DashTech;\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 { Controllable } from \"@core/controllable\";\r\nimport type { Controller } from \"@core/controller\";\r\nimport type { CtlrMedia, MediaFeatures, MediaStatus } from \"@defs/contract\";\r\nimport { type REvent, type Reactive, ListenerOptions } from \"sia-reactor\";\r\nimport { fanout, force } from \"sia-reactor/utils\";\r\nimport { silence } from \"sia-reactor/modules\";\r\nimport { getMediaStatus } from \"@utils/media\";\r\nimport { capitalize } from \"@utils/str\";\r\nimport { isNum } from \"@utils/obj\";\r\n\r\nexport interface TechConstructor<T extends BaseTech = BaseTech> {\r\n new (ctlr: Controller, features?: MediaFeatures): T;\r\n techName: string;\r\n canPlaySource(src: string): boolean;\r\n}\r\n\r\nexport abstract class BaseTech<El extends HTMLElement = HTMLElement> extends Controllable<Reactive<CtlrMedia>> {\r\n public static readonly techName: string;\r\n public static canPlaySource(_src: string): boolean {\r\n return false;\r\n }\r\n public get name() {\r\n return (this.constructor as TechConstructor).techName;\r\n }\r\n public element!: El;\r\n public get el() {\r\n return this.element;\r\n }\r\n public readonly evtOpts: { EL: AddEventListenerOptions; CONFIG: ListenerOptions } = { EL: { capture: true, signal: this.signal }, CONFIG: { capture: true, signal: this.signal } }; // \"set\" -> Avengers(Resolution lineup) assemble!;\r\n public readonly wiredFeatures: Set<keyof MediaFeatures> = new Set(); // Tracking to avoid rewiring\r\n public wired = false; // for light status checks where needed\r\n protected readonly pending = new Map<string, () => void>();\r\n protected autoChapters: boolean = false;\r\n\r\n constructor(ctlr: Controller, features: MediaFeatures = {}) {\r\n ctlr.media.tech.destroy?.(), ctlr.log(`Using ${new.target.techName} media technology.`);\r\n super(ctlr, ctlr.media);\r\n ctlr.config.mediaPlayer = \"TMG\"; // tell them! tell them!! tell them!!! ~ Kendrick Lamar\r\n this.element = ctlr.media.element as any; // must reassign if not using original\r\n for (const key of Object.keys(ctlr.media.features)) ctlr.media.features[key as keyof MediaFeatures] = false;\r\n fanout(ctlr.media.features, features); // dynamics baby!\r\n }\r\n protected override onSetup(): void {\r\n this.mount();\r\n this.ctlr.state.readyState ? 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(), (this.config.status.hostReady = false);\r\n }\r\n\r\n public mount(): void {\r\n (this.el as any) !== this.config.element && this.config.element.replaceWith(this.el);\r\n }\r\n public unmount(): void {\r\n (this.el as any) !== this.config.element && this.el.replaceWith(this.config.element);\r\n }\r\n\r\n public wire(): void {\r\n // Variables Assignments\r\n (this.el as any).tmgPlayer = this.config.element.tmgPlayer; // ref is maintained if element was replaced in mount\r\n // Ctlr Media Watchers\r\n this.config.watch(\"state.currentTime\", this.onCurrentTime, this.evtOpts.CONFIG);\r\n // --------- Listeners\r\n this.config.on(\"intent\", this.handleWrite, this.evtOpts.CONFIG); // protecting everybody\r\n this.config.on(\"settings\", this.handleWrite, this.evtOpts.CONFIG);\r\n // Bulk Wiring\r\n this.wireSrc(), this.wireCurrentTime(), this.wireDuration(), this.wirePaused(), this.wireEnded(), this.wireFeatures();\r\n // Post Wiring\r\n !this.ctlr.payload.wired && this.ctlr.isNativeEl && fanout(this.config.status, getMediaStatus(this.el as any, undefined, undefined, true), { skipUndefined: true }); // incase of async init\r\n silence(() => (fanout(this.config.intent, this.config[this.ctlr.techTruth]), fanout(this.config.settings, this.config.settings))); // // over to you, child. it go touch everybodyyyyy, no fear!\r\n !this.ctlr.payload.wired && force(() => this.config.tick()); // state isn't volatile but it must touch\r\n this.wired = true;\r\n }\r\n // --- THE MANDATORY CORE 5 (Media \"Must Haves\") ---\r\n protected abstract wireSrc(): void;\r\n protected abstract wireCurrentTime(): void;\r\n protected abstract wireDuration(): void;\r\n protected abstract wirePaused(): void;\r\n protected abstract wireEnded(): void;\r\n // --- THE EXTENSIONS & WIRING ---\r\n protected wireFeatures(): void {\r\n this.media.on(\"features\", this.handleFeatures, { init: true, signal: this.signal });\r\n }\r\n protected wireFeature(feature: keyof MediaFeatures): void {\r\n !this.wiredFeatures.has(feature) && (this.wiredFeatures.add(feature), (this as any)[`wire${capitalize(feature)}`]?.());\r\n }\r\n // Track Switching Wiring\r\n protected wireCurrentChapter(): void {\r\n this.config.set(\"intent.currentChapter\", (term) => (isNum(term) ? term : this.config.settings.metadata.chapterInfo.findIndex((c) => c.title === term || c.startTime === term || c.artwork === term)), { signal: this.signal }); // #VALIDATOR: intent type conformation\r\n this.config.on(\"intent.currentChapter\", this.handleCurrentChapterIntent, this.evtOpts.CONFIG);\r\n }\r\n // --- THE HANDLERS ---\r\n protected handleFeatures({ type, target }: REvent<CtlrMedia, \"features\">): void {\r\n if (type === \"update\") this.wireFeature(target.key);\r\n else if (type === \"init\") for (const feature of Object.keys(target.value)) this.wireFeature(feature as keyof MediaFeatures);\r\n }\r\n protected handleWrite(e: REvent<CtlrMedia, \"intent\" | \"settings\">): void {\r\n if (e.type === \"update\" && this.config.features[e.target.key as keyof MediaFeatures] === false && e.value) return e.reject(this.name), e.stopImmediatePropagation(); // falsy values pass so that they can turn off but not on\r\n }\r\n protected handleCurrentChapterIntent(e: REvent<CtlrMedia, \"intent.currentChapter\">): void {\r\n if (e.resolved) return;\r\n this.when(\"loadedMetadata\", e, (chapter = this.config.settings.metadata.chapterInfo[e.value as number]) => chapter && (this.media.intent.currentTime = chapter.startTime)); // #VALIDATED: mediated for cast conformity; no-opy // #FACADED: silenced intent actual op\r\n e.resolve(this.name);\r\n }\r\n // Dog Feeders\r\n protected onCurrentTime(v: number): void {\r\n if (!this.autoChapters) return;\r\n const chapters = this.config.settings.metadata.chapterInfo;\r\n if (chapters?.length) for (let len = chapters.length, i = len - 1; i >= 0; i--) if (v >= chapters[i].startTime) return void (this.config.state.currentChapter = i);\r\n this.media.state.currentChapter = -1;\r\n }\r\n // --- THE HELPERS ---\r\n public when<Evt extends REvent<CtlrMedia>>(status: keyof MediaStatus, e: Evt, task: () => void, always = true, _key = status + e.path, _value = !always && !(this.ctlr.state.readyState < 3) ? true : this.config.status[status], _log = !this.config.status[status]): void {\r\n const callback = this.ctlr.guard((v: any, __: any, late = true) => v && (late && this.pending.get(_key)?.(), this.pending.delete(_key), task(), _log && console.log(`Pending task for ${status} ${e.path} executed with ${e.value}.`, this.config.status[status], this.ctlr.payload.readyState)));\r\n this.pending.get(_key)?.(), _value ? callback(_value, null, false) : this.pending.set(_key, this.config.watch(`status.${status}`, callback, { signal: this.signal }));\r\n } // #PATIENT: only after first play (`always`)\r\n}\r\n\r\ndeclare module \"@defs/contract\" {\r\n interface MediaStatus {\r\n hostReady: boolean;\r\n }\r\n}\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 { 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) => ({ \"&\": \"&amp;\", \"<\": \"&lt;\", \">\": \"&gt;\", '\"': \"&quot;\", \"'\": \"&#39;\" }[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","import { BaseTech } from \"./base\";\r\nimport { type REvent, type Paths, inert } from \"sia-reactor\";\r\nimport type { Controller } from \"@core/controller\";\r\nimport type { CtlrMedia, MediaIntent, MediaFeatures } from \"@defs/contract\";\r\nimport type { Source, Track } from \"@defs/generics\";\r\nimport { AUDIO_EXTENSIONS, HLS_EXTENSIONS, VIDEO_EXTENSIONS } from \"@utils/match\";\r\nimport { MSE_ENABLED } from \"@utils/env\";\r\nimport { isStr } from \"@utils/obj\";\r\nimport type { TrackType } from \"@utils/media\";\r\nimport { enterFullscreen, exitFullscreen, queryFullscreenEl, supportsFullscreen, supportsPictureInPicture } from \"@utils/dom\";\r\nimport { observeMutation, createListRenderer as renderList } from \"@utils/dom\";\r\nimport { getTrackIdx, setCurrentTrack, canUseVolume, canMuteVolume, canUseRate, canTextTracks, canVideoTracks, canAudioTracks, getSources, getTracks, isSameSources, isSameTracks, DUMMY_VID, getMediaMax, getMediaMin } from \"@utils/media\";\r\nimport { isSameURL, cleanURL } from \"@utils/str\";\r\nimport { clamp } from \"@utils/num\";\r\nimport { silence } from \"sia-reactor/modules\";\r\nimport { assignEl, createEl, force } from \"sia-reactor/utils\";\r\n\r\nexport class HTML5Tech extends BaseTech<HTMLMediaElement> {\r\n public static readonly techName: string = \"html5\";\r\n public static override canPlaySource(src: string): boolean {\r\n return VIDEO_EXTENSIONS.test(src) || AUDIO_EXTENSIONS.test(src) || !!(!MSE_ENABLED && DUMMY_VID.canPlayType(\"application/vnd.apple.mpegurl\") && HLS_EXTENSIONS.test(src)); // Safari has native HLS support, but only if MSE is not available (iOS)\r\n }\r\n protected strictTracks: boolean = false;\r\n constructor(ctlr: Controller, features?: MediaFeatures) {\r\n // prettier-ignore\r\n const isAudio = ctlr.media.type === \"audio\", canTxtTrack = canTextTracks(ctlr.media.type), canVidTrack = !isAudio && canVideoTracks(ctlr.media.type), canAudTrack = canAudioTracks(ctlr.media.type);\r\n // prettier-ignore\r\n super(ctlr, {\r\n // Kinda Core\r\n volume: canUseVolume(ctlr.media.type), muted: canMuteVolume(ctlr.media.type), playbackRate: canUseRate(ctlr.media.type),\r\n // Modes\r\n pictureInPicture: !isAudio && supportsPictureInPicture() && !ctlr.media.state.disablePictureInPicture, fullscreen: !isAudio && supportsFullscreen(),\r\n // Markup & States\r\n poster: !isAudio, autoplay: true, loop: true, playsInline: !isAudio, preload: true, crossOrigin: true, \r\n controls: true, controlsList: true, disablePictureInPicture: true, sources: true, tracks: true, live: false,\r\n // Lists\r\n textTracks: canTxtTrack, videoTracks: !isAudio && canVidTrack, audioTracks: canAudTrack,\r\n // Currents\r\n currentChapter: canTxtTrack, currentTextTrack: canTxtTrack, currentVideoTrack: canVidTrack, currentAudioTrack: canAudTrack, textVisible: canTxtTrack, activeCue: canTxtTrack,\r\n // Infos\r\n readyState: true, networkState: true, error: true, waiting: true, stalled: true,\r\n seeking: true, buffered: true, played: true, seekable: true, videoWidth: !isAudio, videoHeight: !isAudio, \r\n loadedMetadata: true, loadedData: true, canPlay: true, canPlayThrough: true, isLive: true, canSeekLive: true,\r\n // Settings\r\n defaultMuted: true, defaultPlaybackRate: true, srcObject: true, metadata: canTxtTrack, liveTolerance: true, minDVRWindow: true, ...features,\r\n });\r\n ctlr.media.status.hostReady = true; // always active!\r\n }\r\n // ===========================================================================\r\n // WIRING (Connections Only)\r\n // ===========================================================================\r\n // --- Core Wiring ---\r\n protected override wireSrc(): void {\r\n this.el.addEventListener(\"loadstart\", this.setLoadStartInfo, this.evtOpts.EL);\r\n this.config.on(\"intent.src\", this.handleSrcIntent, this.evtOpts.CONFIG);\r\n }\r\n protected override wireCurrentTime(): void {\r\n this.el.addEventListener(\"timeupdate\", this.setTimeUpdateState, this.evtOpts.EL);\r\n this.el.addEventListener(\"seeking\", this.setSeekingState, this.evtOpts.EL);\r\n this.el.addEventListener(\"seeked\", this.setSeekedState, this.evtOpts.EL);\r\n this.config.get(\"state.currentTime\", () => this.el.currentTime, { signal: this.signal }); // #VIRTUAL: reliable return value, for those faster than the spec\r\n this.config.on(\"intent.currentTime\", this.handleCurrentTimeIntent, this.evtOpts.CONFIG);\r\n }\r\n protected override wireDuration(): void {\r\n this.el.addEventListener(\"durationchange\", this.setDurationChangeState, this.evtOpts.EL);\r\n }\r\n protected override wirePaused(): void {\r\n this.el.addEventListener(\"play\", this.setPlayState, this.evtOpts.EL);\r\n this.el.addEventListener(\"pause\", this.setPauseState, this.evtOpts.EL);\r\n this.config.on(\"intent.paused\", this.handlePausedIntent, this.evtOpts.CONFIG);\r\n }\r\n protected override wireEnded(): void {\r\n this.el.addEventListener(\"ended\", this.setEndedState, this.evtOpts.EL);\r\n }\r\n // --- Features Wiring ---\r\n protected override wireFeatures(): void {\r\n super.wireFeatures(); // Calls individual feature wires (volume, etc.) above\r\n this.wireHTMLState(); // Attributes Reverse-Sync (Mutation Observer)\r\n // Status (Bulk wiring)\r\n const loadEvents = [\"loadstart\", \"progress\", \"suspend\", \"abort\", \"emptied\", \"stalled\"];\r\n for (const e of loadEvents) this.el.addEventListener(e, this.handleLoadStatus, this.evtOpts.CONFIG);\r\n this.el.addEventListener(\"error\", this.handleErrorStatus, this.evtOpts.CONFIG);\r\n this.el.addEventListener(\"waiting\", this.handleWaitingStatus, this.evtOpts.CONFIG);\r\n this.el.addEventListener(\"playing\", this.handlePlayingStatus, this.evtOpts.CONFIG);\r\n this.el.addEventListener(\"stalled\", this.handleStalledStatus, this.evtOpts.CONFIG);\r\n this.el.addEventListener(\"loadedmetadata\", this.handleLoadedMetadataStatus, this.evtOpts.CONFIG);\r\n this.el.addEventListener(\"loadeddata\", this.handleLoadedDataStatus, this.evtOpts.CONFIG);\r\n this.el.addEventListener(\"canplay\", this.handleCanPlayStatus, this.evtOpts.CONFIG);\r\n this.el.addEventListener(\"canplaythrough\", this.handleCanPlayThroughStatus, this.evtOpts.CONFIG);\r\n }\r\n // --- Engine Inputs Wiring ---\r\n protected wireVolume(): void {\r\n this.el.addEventListener(\"volumechange\", this.setVolumeChangeState, this.evtOpts.EL);\r\n this.config.on(\"intent.volume\", this.handleVolumeIntent, this.evtOpts.CONFIG);\r\n }\r\n protected wireMuted(): void {\r\n // Native 'volumechange' handles state update\r\n this.config.on(\"intent.muted\", this.handleMutedIntent, this.evtOpts.CONFIG);\r\n }\r\n protected wirePlaybackRate(): void {\r\n this.el.addEventListener(\"ratechange\", this.setRateChangeState, this.evtOpts.EL);\r\n this.config.on(\"intent.playbackRate\", this.handlePlaybackRateIntent, this.evtOpts.CONFIG);\r\n }\r\n // --- Presentation Modes Wiring ---\r\n protected wirePictureInPicture(): void {\r\n this.el.addEventListener(\"enterpictureinpicture\", this.setEnterPiPState, this.evtOpts.EL);\r\n this.el.addEventListener(\"leavepictureinpicture\", this.setLeavePiPState, this.evtOpts.EL);\r\n this.config.on(\"intent.pictureInPicture\", this.handlePictureInPictureIntent, this.evtOpts.CONFIG);\r\n }\r\n protected wireFullscreen(): void {\r\n this.el.addEventListener(\"webkitbeginfullscreen\", this.setWebkitBeginFullscreenState, this.evtOpts.CONFIG);\r\n this.el.addEventListener(\"webkitendfullscreen\", this.setWebkitEndFullscreenState, this.evtOpts.CONFIG);\r\n this.ctlr.state.watch(\"docInFullscreen\", this.setFullscreenChangeState, this.evtOpts.CONFIG);\r\n this.config.on(\"intent.fullscreen\", this.handleFullscreenIntent, this.evtOpts.CONFIG);\r\n }\r\n // --- Track Switching Wiring ---\r\n protected wireCurrentTrack(type: TrackType): void {\r\n this.config.set(`intent.current${type}Track`, (term) => getTrackIdx(this.el, type, term, this.config.status[`${type.toLowerCase() as Lowercase<TrackType>}Tracks`]), { signal: this.signal }); // #VALIDATOR: intent type conformation\r\n (this.el as any)[`${type.toLowerCase()}Tracks`]?.addEventListener(\"change\", () => this.setCurrentTrackState(type), this.evtOpts.CONFIG);\r\n this.config.on(`intent.current${type}Track`, (e) => this.handleCurrentTrackIntent(e, type), this.evtOpts.CONFIG);\r\n }\r\n protected wireCurrentTextTrack(): void {\r\n this.wireCurrentTrack(\"Text\");\r\n }\r\n protected wireCurrentAudioTrack(): void {\r\n this.wireCurrentTrack(\"Audio\");\r\n }\r\n protected wireCurrentVideoTrack(): void {\r\n this.wireCurrentTrack(\"Video\");\r\n }\r\n protected wireTextVisible(): void {\r\n this.config.on(\"intent.textVisible\", this.handleTextVisibleIntent, this.evtOpts.CONFIG);\r\n }\r\n // --- HTML (Bulk Wiring) ---\r\n protected wireHTMLState(): void {\r\n observeMutation(this.el, this.setHTMLStateFromMutation, { attributes: true, childList: true, subtree: false }, this.signal);\r\n }\r\n // --- Attribute Wiring ---\r\n protected bindAttribute<K extends keyof MediaIntent>(key: K, isBool = false): void {\r\n this.config.on(`intent.${key}` as Paths<CtlrMedia>, (e) => this.handleAttributeIntent(e, key, isBool), this.evtOpts.CONFIG); // non-casted union reached peak ts complexity :)\r\n }\r\n protected wirePoster(): void {\r\n this.bindAttribute(\"poster\");\r\n }\r\n protected wireAutoplay(): void {\r\n this.bindAttribute(\"autoplay\", true);\r\n }\r\n protected wireLoop(): void {\r\n this.bindAttribute(\"loop\", true);\r\n }\r\n protected wirePreload(): void {\r\n this.bindAttribute(\"preload\");\r\n }\r\n protected wirePlaysInline(): void {\r\n this.bindAttribute(\"playsInline\", true);\r\n }\r\n protected wireCrossOrigin(): void {\r\n this.bindAttribute(\"crossOrigin\");\r\n }\r\n protected wireControls(): void {\r\n this.bindAttribute(\"controls\", true);\r\n }\r\n protected wireControlsList(): void {\r\n this.bindAttribute(\"controlsList\");\r\n }\r\n protected wireDisablePictureInPicture(): void {\r\n this.bindAttribute(\"disablePictureInPicture\", true);\r\n this.config.watch(\"state.disablePictureInPicture\", this.onDisablePiPState);\r\n }\r\n // --- Lists Wiring ---\r\n protected wireSources(): void {\r\n this.config.on(\"intent.sources\", this.handleSourcesIntent, this.evtOpts.CONFIG);\r\n }\r\n protected wireTracks(): void {\r\n this.config.on(\"intent.tracks\", this.handleTracksIntent, this.evtOpts.CONFIG);\r\n }\r\n // --- Status Tracks Wiring ---\r\n protected wireMediaTracks(type: TrackType, list = (this.el as any)[`${type.toLowerCase()}Tracks`]): void {\r\n if (list) for (const e of [\"addtrack\", \"removetrack\"]) list.addEventListener(e, () => this.handleTracksStatus(type, list), this.evtOpts.CONFIG);\r\n if (list) this.handleTracksStatus(type, list, true);\r\n }\r\n protected wireTextTracks(): void {\r\n this.wireMediaTracks(\"Text\");\r\n }\r\n protected wireAudioTracks(): void {\r\n this.wireMediaTracks(\"Audio\");\r\n }\r\n protected wireVideoTracks(): void {\r\n this.wireMediaTracks(\"Video\");\r\n }\r\n // --- Active Cue Wiring ---\r\n protected textTrack: TextTrack | null = null;\r\n protected wireActiveCue(): void {\r\n const onChange = () => {\r\n const track = this.media.status.textTracks[!this.strictTracks ? this.config.state.currentTextTrack : getTrackIdx(this.el, \"Text\", this.config.status.textTracks[this.config.state.currentTextTrack]?.id, this.config.status.textTracks)];\r\n if (this.textTrack && this.textTrack !== track) this.textTrack.removeEventListener(\"cuechange\", this.handleActiveCueChange, this.evtOpts.EL);\r\n (this.textTrack = track)?.addEventListener(\"cuechange\", this.handleActiveCueChange, this.evtOpts.EL), this.handleActiveCueChange({ target: track });\r\n };\r\n this.config.on(\"state.currentTextTrack\", onChange, this.evtOpts.CONFIG), this.config.on(\"status.textTracks\", onChange, this.evtOpts.CONFIG);\r\n }\r\n protected chapterTrack: TextTrack | null = null;\r\n protected wireChapterCue(track: TextTrack): void {\r\n if (this.chapterTrack && this.chapterTrack !== track) this.chapterTrack.removeEventListener(\"cuechange\", this.handleChapterCueChange, this.evtOpts.EL);\r\n (this.chapterTrack = track).addEventListener(\"cuechange\", this.handleChapterCueChange, this.evtOpts.EL), this.handleChapterCueChange({ target: track });\r\n }\r\n // --- Live Content Wiring ---\r\n protected wireLive(): void {\r\n this.config.on(\"intent.live\", this.handleLiveIntent, this.evtOpts.CONFIG);\r\n this.config.watch(\"status.isLive\", this.onIsLiveStatus, this.evtOpts.CONFIG);\r\n }\r\n // --- Settings Wiring ---\r\n protected wireDefaultMuted(): void {\r\n this.config.on(\"settings.defaultMuted\", this.handleDefaultMutedSetting, this.evtOpts.CONFIG);\r\n }\r\n protected wireDefaultPlaybackRate(): void {\r\n this.config.on(\"settings.defaultPlaybackRate\", this.handleDefaultPlaybackRateSetting, this.evtOpts.CONFIG);\r\n }\r\n protected wireSrcObject(): void {\r\n this.config.on(\"settings.srcObject\", this.handleSrcObjectSetting, this.evtOpts.CONFIG);\r\n }\r\n // ===========================================================================\r\n // HANDLERS (The Logic - Auto-Guarded)\r\n // ===========================================================================\r\n // --- Core States ---\r\n protected setLoadStartInfo(): void {\r\n const { state: s, status: st } = this.config;\r\n st.error = st.activeCue = null;\r\n force(() => ((st.buffered = this.el.buffered), (st.seekable = this.el.seekable)));\r\n st.duration = this.el.duration;\r\n s.paused = this.el.paused;\r\n st.ended = st.stalled = st.loadedData = st.loadedMetadata = st.canPlay = st.canPlayThrough = false;\r\n }\r\n protected setTimeUpdateState(): void {\r\n const { status: st, settings: set, state: s } = this.config;\r\n s.currentTime = this.el.currentTime;\r\n if (st.isLive)\r\n if (st.seekable.length) {\r\n const max = st.seekable.end(st.seekable.length - 1);\r\n st.canSeekLive = max - st.seekable.start(0) >= set.minDVRWindow;\r\n s.live = max - s.currentTime <= set.liveTolerance;\r\n } else s.live = !(st.canSeekLive = false);\r\n else this.config.status.ended = this.el.currentTime === this.el.duration; // UX boost\r\n }\r\n protected setSeekingState(): void {\r\n this.config.status.seeking = true;\r\n force(() => (this.config.status.played = this.el.played));\r\n }\r\n protected setSeekedState(): void {\r\n this.config.status.seeking = false;\r\n }\r\n private durationSeq = 0;\r\n private durationSrc = \"\";\r\n protected setDurationChangeState(): void {\r\n if (this.el.currentSrc !== this.durationSrc) (this.durationSeq = 0), (this.durationSrc = this.el.currentSrc);\r\n const prev = this.config.status.duration;\r\n if ((this.config.status.duration = this.el.duration) === Infinity) return void (this.config.status.isLive = true);\r\n prev === Infinity ? (this.config.status.isLive = false) : prev > 0 && this.el.duration > prev && ++this.durationSeq > 3 && (this.config.status.isLive = true); // UX boost\r\n }\r\n protected setPlayState(): void {\r\n this.config.status.ended = this.config.state.paused = false;\r\n }\r\n protected setPauseState(): void {\r\n this.config.state.paused = true;\r\n force(() => (this.config.status.played = this.el.played));\r\n this.config.status.waiting = false; // UX boost\r\n }\r\n protected setEndedState(): void {\r\n this.config.status.ended = this.config.state.paused = true;\r\n }\r\n // --- Core Intents ---\r\n protected handleSrcIntent(e: REvent<CtlrMedia, \"intent.src\">): void {\r\n if (e.resolved || (this.wired && isSameURL(this.el.currentSrc, e.value))) return;\r\n this.el.src = e.value;\r\n e.resolve(this.name);\r\n }\r\n protected handleCurrentTimeIntent(e: REvent<CtlrMedia, \"intent.currentTime\">): void {\r\n if (e.resolved) return;\r\n this.when(\"loadedData\", e, (min = getMediaMin(this.config), max = getMediaMax(this.config)) => {\r\n if (e.value < min! || e.value > max!) e.reject(this.name); // Out of bounds\r\n this.el.currentTime = clamp(min, e.value, max);\r\n }); // tested nd trusted status due to reactive dynamics\r\n e.resolve(this.name);\r\n }\r\n protected handlePausedIntent(e: REvent<CtlrMedia, \"intent.paused\">): void {\r\n if (e.resolved) return;\r\n this.when(\"loadedMetadata\", e, () => (e.value ? this.el.pause() : this.el.play())?.catch?.((e) => this.ctlr.log(e, \"error\", true)), false); // #EYE-SERVICE: hinged only on init\r\n e.resolve(this.name);\r\n }\r\n // --- Feature States ---\r\n protected setVolumeChangeState(): void {\r\n this.config.state.volume = this.el.volume * 100;\r\n this.config.state.muted = this.el.muted;\r\n }\r\n protected setRateChangeState(): void {\r\n this.config.state.playbackRate = this.el.playbackRate;\r\n }\r\n protected setEnterPiPState(): void {\r\n this.config.state.pictureInPicture = true;\r\n }\r\n protected setLeavePiPState(): void {\r\n this.config.state.pictureInPicture = false;\r\n }\r\n protected setFullscreenChangeState(docInFs?: boolean): void {\r\n this.config.state.fullscreen = docInFs ? queryFullscreenEl() === this.el : false;\r\n }\r\n protected setWebkitBeginFullscreenState(): void {\r\n this.config.state.fullscreen = true;\r\n }\r\n protected setWebkitEndFullscreenState(): void {\r\n this.config.state.fullscreen = false;\r\n }\r\n protected setCurrentTrackState(type: TrackType, list = this.media.status[`${type.toLowerCase() as Lowercase<TrackType>}Tracks`]): void {\r\n this.config.state[`current${type}Track`] = getTrackIdx(this.el, type, \"active\", list);\r\n }\r\n protected setHTMLStateFromMutation(mutations: MutationRecord[]): void {\r\n for (const m of mutations) {\r\n const { state, settings } = this.config; // Reverse Bind: DOM -> State\r\n if (m.type === \"childList\") {\r\n const nodes = [...m.addedNodes, ...m.removedNodes];\r\n if (nodes.some(({ nodeName: nm }) => nm === \"SOURCE\")) state.sources = inert(getSources(this.el));\r\n if (nodes.some(({ nodeName: nm }) => nm === \"TRACK\")) state.tracks = inert(getTracks(this.el));\r\n } else if (m.type !== \"attributes\" || !m.attributeName) return;\r\n switch (m.attributeName) {\r\n case \"poster\":\r\n return void (state.poster = (this.el as HTMLVideoElement).poster);\r\n case \"autoplay\":\r\n return void (state.autoplay = this.el.autoplay);\r\n case \"loop\":\r\n return void (state.loop = this.el.loop);\r\n case \"preload\":\r\n return void (state.preload = this.el.preload);\r\n case \"crossorigin\":\r\n return void (state.crossOrigin = this.el.crossOrigin);\r\n case \"controls\":\r\n return void (state.controls = this.el.controls);\r\n case \"playsinline\":\r\n case \"webkit-playsinline\":\r\n return void (state.playsInline = this.el.playsInline);\r\n case \"controlslist\":\r\n return void (state.controlsList = this.el.controlsList ?? this.el.getAttribute(m.attributeName));\r\n case \"disablepictureinpicture\":\r\n return void (state.disablePictureInPicture = this.el.disablePictureInPicture ?? this.el.hasAttribute(m.attributeName));\r\n case \"muted\":\r\n return void ((state.muted = this.el.muted), (settings.defaultMuted = this.el.defaultMuted));\r\n }\r\n } // Mutations report before Queued MicroTasks so double \"state.*\" sets is safely batched for `on` listeners :)\r\n }\r\n // --- Feature Intents ---\r\n protected handleVolumeIntent(e: REvent<CtlrMedia, \"intent.volume\">): void {\r\n if (e.resolved) return;\r\n if (e.value < 0 || e.value > 100) e.reject(this.name); // Out of bounds\r\n this.el.volume = clamp(0, e.value / 100, 1);\r\n e.resolve(this.name);\r\n }\r\n protected handleMutedIntent(e: REvent<CtlrMedia, \"intent.muted\">): void {\r\n if (e.resolved) return;\r\n this.el.muted = e.value;\r\n e.resolve(this.name);\r\n }\r\n protected handlePlaybackRateIntent(e: REvent<CtlrMedia, \"intent.playbackRate\">): void {\r\n if (e.resolved) return;\r\n this.when(\"loadedMetadata\", e, () => (this.el.playbackRate = e.value));\r\n e.resolve(this.name);\r\n }\r\n protected handlePictureInPictureIntent(e: REvent<CtlrMedia, \"intent.pictureInPicture\">): void {\r\n if (e.resolved) return;\r\n this.when(\"loadedMetadata\", e, () => (e.value ? (this.el as HTMLVideoElement).requestPictureInPicture()?.catch(this.ctlr.notice) : document.pictureInPictureElement === this.el && document.exitPictureInPicture()?.catch(this.ctlr.notice)), true); // #EYE-SERVICE: hinged only on init\r\n e.resolve(this.name);\r\n }\r\n protected handleFullscreenIntent(e: REvent<CtlrMedia, \"intent.fullscreen\">): void {\r\n if (e.resolved) return;\r\n (e.value ? enterFullscreen(this.el) : exitFullscreen(this.el))?.catch(this.ctlr.notice);\r\n e.resolve(this.name);\r\n }\r\n protected handleCurrentTrackIntent(e: REvent<CtlrMedia, `intent.current${TrackType}Track`>, type: TrackType): void {\r\n if (e.resolved) return;\r\n this.when(\"loadedMetadata\", e, (list = this.config.status[`${type.toLowerCase() as Lowercase<TrackType>}Tracks`]) => {\r\n if ((e.value as number) < list.length) {\r\n setCurrentTrack(this.el, type, e.value as number, true, list); // #VALIDATED: mediated for cast conformity; no-opy\r\n this.setCurrentTrackState(type, list); // tracks \"change\" event not reliable\r\n }\r\n });\r\n e.resolve(this.name);\r\n }\r\n protected handleTextVisibleIntent(e: REvent<CtlrMedia, \"intent.textVisible\">): void {\r\n if (e.resolved) return;\r\n this.when(\"loadedMetadata\", e, () => {\r\n if (e.value && this.media.status.textTracks.length && this.media.state.currentTextTrack === -1) silence(() => (this.media.intent.currentTextTrack = Math.max(0, getTrackIdx(this.media.element, \"Text\", this.media.state.tracks.find((t) => t.default)?.id, this.media.status.textTracks))));\r\n if (this.textTrack) this.textTrack.mode = e.value ? \"showing\" : \"hidden\";\r\n this.config.state.textVisible = e.value;\r\n });\r\n e.resolve(this.name);\r\n }\r\n protected handleAttributeIntent(e: REvent<CtlrMedia>, key: string, isBool: boolean, attr = key.toLowerCase()): void {\r\n if (e.resolved || (key === \"poster\" && isSameURL((this.el as HTMLVideoElement).poster, e.value))) return;\r\n isBool ? this.el.toggleAttribute(attr, Boolean(e.value)) : e.value ? this.el.setAttribute(attr, e.value) : this.el.removeAttribute(attr); // (this.el as any)[key] = isBool ? Boolean(e.value) : (e.value ?? \"\"); // Generic handler for simple attributes\r\n if (key === \"playsInline\") this.el.toggleAttribute(\"webkit-playsinline\", Boolean(e.value));\r\n e.resolve(this.name);\r\n }\r\n private renderSources?: ReturnType<typeof renderList<any>>;\r\n protected handleSourcesIntent(e: REvent<CtlrMedia, \"intent.sources\">): void {\r\n if (e.resolved || isSameSources(Array.from(this.el.querySelectorAll(\"source\")), e.value)) return;\r\n (this.renderSources ??= renderList<Source, HTMLSourceElement>({ container: this.el, getKey: (s) => `${cleanURL(s.src)}|${s.type}${s.media}`, createNode: (s) => createEl(\"source\", s), updateNode: (el, s) => assignEl(el, s, undefined, undefined, false), initNode: (el, register) => el instanceof HTMLSourceElement && register(`${cleanURL(el.src)}|${el.type}${el.media}`) }))(e.currentTarget.value);\r\n e.resolve(this.name);\r\n }\r\n private renderTracks?: ReturnType<typeof renderList<any>>;\r\n protected handleTracksIntent(e: REvent<CtlrMedia, \"intent.tracks\">): void {\r\n if (e.resolved || isSameTracks(Array.from(this.el.querySelectorAll(\"track\")), e.value)) return;\r\n (this.renderTracks ??= renderList<Track>({ container: this.el, getKey: (t) => `${cleanURL(t.src)}|${t.kind}|${t.label}|${t.srclang}|${t.default}`, createNode: (t) => createEl(\"track\", t), updateNode: (el, t) => assignEl(el, t, undefined, undefined, false), initNode: (el, register) => el instanceof HTMLTrackElement && register(`${cleanURL(el.src)}|${el.kind}|${el.label}|${el.srclang}|${el.default}`) }))(e.currentTarget.value);\r\n e.resolve(this.name);\r\n }\r\n protected handleLiveIntent(e: REvent<CtlrMedia, \"intent.live\">): void {\r\n if (e.resolved) return;\r\n this.when(\"loadedMetadata\", e, (seekable = this.config.status.seekable) => e.value && seekable.length && (this.media.intent.currentTime = seekable.end(seekable.length - 1) - 1)); // #FACADED: silenced intent actual op\r\n e.resolve(this.name);\r\n }\r\n // --- Status (Bulk) ---\r\n protected handleLoadStatus(): void {\r\n this.config.status.readyState = this.el.readyState;\r\n this.config.status.networkState = this.el.networkState;\r\n force(() => ((this.config.status.buffered = this.el.buffered), (this.config.status.seekable = this.el.seekable)));\r\n }\r\n protected handleLoadedMetadataStatus(): void {\r\n (this.config.status.videoWidth = this.config.type === \"video\" ? this.config.element.videoWidth : 0), (this.config.status.videoHeight = this.config.type === \"video\" ? this.config.element.videoHeight : 0);\r\n this.config.status.isLive = (this.config.status.duration = this.el.duration) === Infinity;\r\n this.handleLoadStatus(); // Update buffers too\r\n this.config.status.loadedMetadata = true;\r\n }\r\n protected handleLoadedDataStatus(): void {\r\n this.config.status.loadedData = true;\r\n }\r\n protected handleCanPlayStatus(): void {\r\n this.config.status.canPlay = true;\r\n }\r\n protected handleCanPlayThroughStatus(): void {\r\n this.config.status.canPlayThrough = true;\r\n }\r\n protected handleStalledStatus(): void {\r\n this.config.status.stalled = true;\r\n }\r\n protected handleWaitingStatus(): void {\r\n this.config.status.waiting = true;\r\n }\r\n protected handlePlayingStatus(): void {\r\n this.config.status.error = null; // UX boost\r\n this.config.status.waiting = this.config.status.stalled = false;\r\n }\r\n protected handleErrorStatus(e: any, target = e?.target): void {\r\n if (target && target !== this.el) return this.ctlr.log({ message: `Media ${target.nodeName || \"Child\"} element error occurred!`, event: e, target }, \"error\", true); // not an error but u gotta know\r\n this.config.status.error = this.el.error ?? { message: (isStr(e) && e) || e?.message };\r\n this.config.status.waiting = false;\r\n }\r\n protected handleTracksStatus(type: TrackType, list: any, init = false): void {\r\n this.config.status[`${type.toLowerCase() as Lowercase<TrackType>}Tracks`] = Array.prototype.filter.call(list, (t) => (type === \"Text\" ? t.kind === \"subtitles\" || t.kind === \"captions\" : true)); // filter out non-cue text tracks\r\n type === \"Text\" && (this.autoChapters = this.config.settings.metadata.allowOverride) && this.handleChaptersStatus(list); // chapter \"cuechange\" over to u; base\r\n !init && silence(() => (this.config.intent[`current${type}Track`] = this.config.state[`current${type}Track`])); // #RE-TRIGGER: sync intent resolution\r\n !init && type === \"Text\" && silence(() => (this.config.intent.textVisible = this.config.state.textVisible)); // you too\r\n }\r\n protected handleChaptersStatus(list = this.el.textTracks): void {\r\n const track = Array.prototype.find.call(list, (t) => t.kind === \"chapters\") || null;\r\n if (!track) return void ((this.config.settings.metadata.chapterInfo = []), (this.config.state.currentChapter = -1));\r\n if (track.mode === \"disabled\") track.mode = \"hidden\"; // ensure cue access\r\n const extract = () => (this.config.settings.metadata.chapterInfo = track.cues?.length ? Array.from(track.cues, (cue: any) => ({ title: cue.text, startTime: cue.startTime, artwork: [] })) : []);\r\n track.cues.length ? extract() : track.addEventListener(\"cuechange\", extract, { ...this.evtOpts.EL, once: true }), this.wireChapterCue(track);\r\n }\r\n protected handleActiveCueChange(e?: globalThis.Event | { target?: TextTrack }, strict = false, track = e?.target as TextTrack | null): void {\r\n if (!strict || (track && getTrackIdx(this.el, \"Text\", track, this.config.status.textTracks) === this.config.state.currentTextTrack)) this.config.status.activeCue = track?.activeCues?.[0] || null; // incase of multiple tracks `cuechange`\r\n }\r\n protected handleChapterCueChange(e?: globalThis.Event | { target?: TextTrack }, track = e?.target as TextTrack | null, cue = track?.activeCues?.[0] || null): void {\r\n this.config.state.currentChapter = cue ? this.config.settings.metadata.chapterInfo?.findIndex((c) => c.startTime === cue.startTime) ?? -1 : -1;\r\n }\r\n // --- Settings ---\r\n protected handleDefaultMutedSetting(e: REvent<CtlrMedia, \"settings.defaultMuted\">): void {\r\n this.el.defaultMuted = e.value;\r\n }\r\n protected handleDefaultPlaybackRateSetting(e: REvent<CtlrMedia, \"settings.defaultPlaybackRate\">): void {\r\n this.el.defaultPlaybackRate = e.value;\r\n }\r\n protected handleSrcObjectSetting(e: REvent<CtlrMedia, \"settings.srcObject\">): void {\r\n this.el.srcObject = e.value;\r\n }\r\n // --- Dog Feeders ---\r\n protected onDisablePiPState(v: boolean): void {\r\n this.media.intent.pictureInPicture = false;\r\n this.config.features.pictureInPicture = !v;\r\n }\r\n protected onIsLiveStatus(v: boolean): void {\r\n this.config.features.live = v;\r\n }\r\n // --- Lifecycle ---\r\n protected override onDestroy(): void {\r\n this.el.removeAttribute(\"src\");\r\n }\r\n}\r\n\r\ndeclare module \"@defs/registries\" {\r\n interface TechRegistryMap {\r\n html5: typeof HTML5Tech;\r\n }\r\n}\r\n","/*\r\n * Portions of this code are derived from react-player\r\n * https://github.com/cookpete/react-player\r\n * Licensed under the MIT License\r\n * Copyright (c) 2017 Pete Cook\r\n */\r\n\r\n// ===========================================================================\r\n// MEDIA EXTENSION MATCHERS\r\n// ===========================================================================\r\nexport const AUDIO_EXTENSIONS = /\\.(m4a|m4b|mp4a|mpga|mp2|mp2a|mp3|m2a|m3a|wav|weba|aac|oga|spx|flac|wma|opus|midi?)($|\\?)/i;\r\nexport const VIDEO_EXTENSIONS = /\\.(mp4|mkv|avi|mov|webm|mpg|mpeg|og[gv]|m4v|flv|wmv|3gp|3g2|ts)(#t=[,\\d+]+)?($|\\?)/i;\r\nexport const HLS_EXTENSIONS = /\\.(m3u8)($|\\?)/i;\r\nexport const DASH_EXTENSIONS = /\\.(mpd)($|\\?)/i;\r\n\r\n// ===========================================================================\r\n// PLATFORM URL MATCHERS\r\n// ===========================================================================\r\n\r\n/** Match Mux m3u8 URLs without the extension so users can use hls.js with Mux */\r\nexport const MATCH_URL_MUX = /stream\\.mux\\.com\\/(?!\\w+\\.m3u8)(\\w+)/;\r\n\r\n/** Matches YouTube watch, embed, shorts, live, and nocookie URLs */\r\nexport const MATCH_URL_YOUTUBE = /(?:youtu\\.be\\/|youtube(?:-nocookie|education)?\\.com\\/(?:embed\\/|v\\/|watch\\/|watch\\?v=|watch\\?.+&v=|shorts\\/|live\\/))((\\w|-){11})|youtube\\.com\\/playlist\\?list=|youtube\\.com\\/user\\//;\r\n\r\n/** Matches Vimeo URLs, explicitly ignoring their progressive redirect links */\r\nexport const MATCH_URL_VIMEO = /vimeo\\.com\\/(?!progressive_redirect).+/;\r\n\r\n/** Matches Wistia embeds and medias */\r\nexport const MATCH_URL_WISTIA = /(?:wistia\\.(?:com|net)|wi\\.st)\\/(?:medias|embed)\\/(?:iframe\\/)?([^?]+)/;\r\n\r\n/** Matches Spotify open links */\r\nexport const MATCH_URL_SPOTIFY = /open\\.spotify\\.com\\/(\\w+)\\/(\\w+)/i;\r\n\r\n/** Matches Twitch streams and VODs */\r\nexport const MATCH_URL_TWITCH = /(?:www\\.|go\\.)?twitch\\.tv\\/([a-zA-Z0-9_]+|(videos?\\/|\\?video=)\\d+)($|\\?)/;\r\n\r\n/** Matches TikTok video and share links */\r\nexport const MATCH_URL_TIKTOK = /tiktok\\.com\\/(?:player\\/v1\\/|share\\/video\\/|@[^/]+\\/video\\/)([0-9]+)/;\r\n\r\n// ===========================================================================\r\n// MIME TYPE DICTIONARY\r\n// ===========================================================================\r\n// prettier-ignore\r\nexport const mimeTypes: Record<string, string> = {\r\n // Video formats\r\n avi: \"video/x-msvideo\", mp4: \"video/mp4\", mkv: \"video/x-matroska\", mov: \"video/quicktime\", \r\n flv: \"video/x-flv\", webm: \"video/webm\", ogg: \"video/ogg\", ogv: \"video/ogg\", wmv: \"video/x-ms-wmv\", \r\n \"3gp\": \"video/3gpp\", \"3g2\": \"video/3gpp2\", mpeg: \"video/mpeg\", mpg: \"video/mpeg\", \r\n ts: \"video/mp2t\", m4v: \"video/x-m4v\", m3u8: \"application/vnd.apple.mpegurl\", mpd: \"application/dash+xml\",\r\n // Audio formats\r\n mp3: \"audio/mpeg\", wav: \"audio/wav\", oga: \"audio/ogg\", flac: \"audio/flac\", aac: \"audio/aac\", \r\n m4a: \"audio/mp4\", m4b: \"audio/mp4\", mp4a: \"audio/mp4\", wma: \"audio/x-ms-wma\", opus: \"audio/opus\", \r\n mid: \"audio/midi\", midi: \"audio/midi\", mpga: \"audio/mpeg\", mp2: \"audio/mpeg\", mp2a: \"audio/mpeg\", \r\n m2a: \"audio/mpeg\", m3a: \"audio/mpeg\", weba: \"audio/webm\", spx: \"audio/ogg\",\r\n // Image formats\r\n jpg: \"image/jpeg\", jpeg: \"image/jpeg\", png: \"image/png\", webp: \"image/webp\", gif: \"image/gif\", \r\n bmp: \"image/bmp\", svg: \"image/svg+xml\", tif: \"image/tiff\", tiff: \"image/tiff\", avif: \"image/avif\", \r\n ico: \"image/x-icon\", heic: \"image/heic\", heif: \"image/heif\",\r\n // Document formats\r\n pdf: \"application/pdf\", txt: \"text/plain\", md: \"text/markdown\", csv: \"text/csv\", \r\n json: \"application/json\", xml: \"application/xml\", html: \"text/html\", doc: \"application/msword\", \r\n docx: \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\", \r\n xls: \"application/vnd.ms-excel\", xlsx: \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\", \r\n ppt: \"application/vnd.ms-powerpoint\", pptx: \"application/vnd.openxmlformats-officedocument.presentationml.presentation\", \r\n zip: \"application/zip\", rar: \"application/vnd.rar\", \"7z\": \"application/x-7z-compressed\",\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"],"mappings":"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","names":["import_sia_reactor","import_utils","import_utils","import_sia_reactor","module","win","import_utils","import_utils","import_sia_reactor","import_utils","import_sia_reactor","win","import_modules","import_utils","isBool","e","import_sia_reactor"]}
@@ -0,0 +1,24 @@
1
+ import {
2
+ DashTech
3
+ } from "../chunk-VSK7766S.js";
4
+ import "../chunk-LWLNQS3O.js";
5
+ import "../chunk-7HRR4LG4.js";
6
+ import "../chunk-XGVDXMS3.js";
7
+ import "../chunk-LVDP2QOX.js";
8
+ import "../chunk-ZSB6HGB5.js";
9
+ import "../chunk-WSBH5QD6.js";
10
+ import "../chunk-HCSCY6DU.js";
11
+ import "../chunk-ZCQ5UWVE.js";
12
+ import "../chunk-J2SIL62L.js";
13
+ import "../chunk-YVCKIDL5.js";
14
+ import "../chunk-YXO6NQ4E.js";
15
+ import "../chunk-4W6H5CZF.js";
16
+ import "../chunk-BROAUWON.js";
17
+ import "../chunk-6U3M7V32.js";
18
+ import "../chunk-57L2PE3B.js";
19
+ import "../chunk-ZJ6KVLUS.js";
20
+ import "../chunk-UVKRO5ER.js";
21
+ export {
22
+ DashTech
23
+ };
24
+ //# sourceMappingURL=dash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}