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,3111 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
21
+
22
+ // src/ts/super/components/index.ts
23
+ var components_exports = {};
24
+ __export(components_exports, {
25
+ AirPlayButton: () => AirPlayButton,
26
+ AirPlayNotifier: () => AirPlayNotifier,
27
+ AirPlayPlaceholder: () => AirPlayPlaceholder,
28
+ Backward10Button: () => Backward10Button,
29
+ BaseComponent: () => BaseComponent,
30
+ BaseNotifier: () => BaseNotifier,
31
+ BaseRegistry: () => BaseRegistry,
32
+ BigNextButton: () => BigNextButton,
33
+ BigPlayPauseButton: () => BigPlayPauseButton,
34
+ BigPrevButton: () => BigPrevButton,
35
+ BrightnessControl: () => BrightnessControl,
36
+ BrightnessNotifier: () => BrightnessNotifier,
37
+ Buffer: () => Buffer2,
38
+ CancelScrubNotifier: () => CancelScrubNotifier,
39
+ CaptionsButton: () => CaptionsButton,
40
+ CaptionsNotifier: () => CaptionsNotifier,
41
+ CaptionsView: () => CaptionsView,
42
+ CaptureButton: () => CaptureButton,
43
+ CaptureNotifier: () => CaptureNotifier,
44
+ CastButton: () => CastButton,
45
+ CastNotifier: () => CastNotifier,
46
+ CastPlaceholder: () => CastPlaceholder,
47
+ ChapterButton: () => ChapterButton,
48
+ ChapterNotifier: () => ChapterNotifier,
49
+ ComponentRegistry: () => ComponentRegistry,
50
+ DurationButton: () => DurationButton,
51
+ ExpandMiniplayerButton: () => ExpandMiniplayerButton,
52
+ FastPlayNotifier: () => FastPlayNotifier,
53
+ Forward10Button: () => Forward10Button,
54
+ FullscreenButton: () => FullscreenButton,
55
+ FullscreenLockButton: () => FullscreenLockButton,
56
+ FullscreenOrientationButton: () => FullscreenOrientationButton,
57
+ FwdBwdNotifier: () => FwdBwdNotifier,
58
+ IconRegistry: () => IconRegistry,
59
+ MenuRegistry: () => MenuRegistry,
60
+ Meta: () => Meta,
61
+ NextButton: () => NextButton,
62
+ ObjectFitButton: () => ObjectFitButton,
63
+ ObjectFitNotifier: () => ObjectFitNotifier,
64
+ OrderedRegistry: () => OrderedRegistry,
65
+ PiPPlaceholder: () => PiPPlaceholder,
66
+ PictureInPictureButton: () => PictureInPictureButton,
67
+ PinRegistry: () => PinRegistry,
68
+ PlayPauseButton: () => PlayPauseButton,
69
+ PlayPauseNotifier: () => PlayPauseNotifier,
70
+ PlaybackRateNotifier: () => PlaybackRateNotifier,
71
+ PlugRegistry: () => PlugRegistry,
72
+ PrevButton: () => PrevButton,
73
+ PrevNextNotifier: () => PrevNextNotifier,
74
+ RangeInput: () => RangeInput,
75
+ RemoveMiniplayerButton: () => RemoveMiniplayerButton,
76
+ ScreenLockButton: () => ScreenLockButton,
77
+ ScrubNotifier: () => ScrubNotifier,
78
+ SettingsButton: () => SettingsButton,
79
+ TechRegistry: () => TechRegistry,
80
+ TheaterButton: () => TheaterButton,
81
+ TimeAndDurationButton: () => TimeAndDurationButton,
82
+ TimeButton: () => TimeButton,
83
+ Timeline: () => Timeline,
84
+ TouchBrightnessNotifier: () => TouchBrightnessNotifier,
85
+ TouchTimelineNotifier: () => TouchTimelineNotifier,
86
+ TouchVolumeNotifier: () => TouchVolumeNotifier,
87
+ VolumeControl: () => VolumeControl,
88
+ VolumeNotifier: () => VolumeNotifier,
89
+ add: () => add,
90
+ airplay: () => airplay,
91
+ airplayplaceholder: () => airplayplaceholder,
92
+ ambience: () => ambience,
93
+ audiotrack: () => audiotrack,
94
+ autoplay: () => autoplay,
95
+ brightnessdark: () => brightnessdark,
96
+ brightnesshigh: () => brightnesshigh,
97
+ brightnesslow: () => brightnesslow,
98
+ bwd: () => bwd,
99
+ captions: () => captions,
100
+ capture: () => capture,
101
+ cast: () => cast,
102
+ castplaceholder: () => castplaceholder,
103
+ chapters: () => chapters,
104
+ deleteicon: () => deleteicon,
105
+ doubletriangleleft: () => doubletriangleleft,
106
+ doubletriangleright: () => doubletriangleright,
107
+ dragindicator: () => dragindicator,
108
+ enterfullscreen: () => enterfullscreen,
109
+ enterpip: () => enterpip,
110
+ entertheater: () => entertheater,
111
+ expandminiplayer: () => expandminiplayer,
112
+ fullscreenorientation: () => fullscreenorientation,
113
+ fwd: () => fwd,
114
+ leavefullscreen: () => leavefullscreen,
115
+ leavepip: () => leavepip,
116
+ leavetheater: () => leavetheater,
117
+ lock: () => lock,
118
+ loop: () => loop,
119
+ next: () => next,
120
+ objectfitcontain: () => objectfitcontain,
121
+ objectfitcover: () => objectfitcover,
122
+ objectfitfill: () => objectfitfill,
123
+ pause: () => pause,
124
+ pipplaceholder: () => pipplaceholder,
125
+ play: () => play,
126
+ playbackrate: () => playbackrate,
127
+ playlist: () => playlist,
128
+ prev: () => prev,
129
+ quality: () => quality,
130
+ removeminiplayer: () => removeminiplayer,
131
+ replay: () => replay,
132
+ returnback: () => returnback,
133
+ settings: () => settings,
134
+ shuffle: () => shuffle,
135
+ subtitles: () => subtitles,
136
+ timer: () => timer,
137
+ triangleleft: () => triangleleft,
138
+ unlock: () => unlock,
139
+ videotrack: () => videotrack,
140
+ volumehigh: () => volumehigh,
141
+ volumelow: () => volumelow,
142
+ volumemuted: () => volumemuted
143
+ });
144
+ module.exports = __toCommonJS(components_exports);
145
+
146
+ // src/ts/core/controllable.ts
147
+ var import_sia_reactor3 = require("sia-reactor");
148
+ var import_utils13 = require("sia-reactor/utils");
149
+
150
+ // ../t007-tools/packages/utils/dist/chunk-ZALPHCSJ.js
151
+ var import_utils = require("sia-reactor/utils");
152
+ var import_utils2 = require("sia-reactor/utils");
153
+ var import_sia_reactor = require("sia-reactor");
154
+ var import_sia_reactor2 = require("sia-reactor");
155
+ var import_utils3 = require("sia-reactor/utils");
156
+ var import_utils4 = require("sia-reactor/utils");
157
+ var import_utils5 = require("sia-reactor/utils");
158
+ var import_utils6 = require("sia-reactor/utils");
159
+ var import_utils7 = require("sia-reactor/utils");
160
+ var 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] *)";
161
+ var VIRTUAL_RESOURCE = /* @__PURE__ */ Symbol.for("T007_VIRTUAL_RESOURCE");
162
+ function getWindow(el = window) {
163
+ return el?.ownerDocument?.defaultView ?? el?.defaultView ?? window;
164
+ }
165
+ function isDef(val) {
166
+ return "undefined" !== typeof val;
167
+ }
168
+ function isBool(val) {
169
+ return "boolean" === typeof val;
170
+ }
171
+ function isNum(val) {
172
+ return "number" === typeof val;
173
+ }
174
+ function isStr(val) {
175
+ return "string" === typeof val;
176
+ }
177
+ function isFunc(val) {
178
+ return "function" === typeof val;
179
+ }
180
+ function capitalize(word = "") {
181
+ return word.replace(/^(\s*)([a-z])/i, (_, s, l) => s + l.toUpperCase());
182
+ }
183
+ function bindCleanupToSignal(cleanup, signal) {
184
+ signal?.aborted ? cleanup() : signal?.addEventListener("abort", cleanup, { once: true });
185
+ if (signal && !signal.aborted) cleanup = (() => (signal.removeEventListener("abort", cleanup), cleanup()));
186
+ return cleanup;
187
+ }
188
+ if ("undefined" !== typeof window) {
189
+ (window.t007 ?? (window.t007 = {})).VIRTUAL_RESOURCE = VIRTUAL_RESOURCE;
190
+ window.T007_TOAST_JS_SRC ?? (window.T007_TOAST_JS_SRC = `https://cdn.jsdelivr.net/npm/@t007/toast@latest`);
191
+ window.T007_INPUT_JS_SRC ?? (window.T007_INPUT_JS_SRC = `https://cdn.jsdelivr.net/npm/@t007/input@latest`);
192
+ window.T007_DIALOG_JS_SRC ?? (window.T007_DIALOG_JS_SRC = `https://cdn.jsdelivr.net/npm/@t007/dialog@latest`);
193
+ window.T007_TOAST_CSS_SRC ?? (window.T007_TOAST_CSS_SRC = `https://cdn.jsdelivr.net/npm/@t007/toast@latest/dist/index.min.css`);
194
+ window.T007_INPUT_CSS_SRC ?? (window.T007_INPUT_CSS_SRC = `https://cdn.jsdelivr.net/npm/@t007/input@latest/dist/index.min.css`);
195
+ window.T007_DIALOG_CSS_SRC ?? (window.T007_DIALOG_CSS_SRC = `https://cdn.jsdelivr.net/npm/@t007/dialog@latest/dist/index.min.css`);
196
+ }
197
+
198
+ // src/ts/utils/obj.ts
199
+ var import_utils10 = require("sia-reactor/utils");
200
+
201
+ // src/ts/core/controllable.ts
202
+ var Controllable = class {
203
+ // for easy reach, better devx
204
+ constructor(ctlr, config, state) {
205
+ __publicField(this, "ac", new AbortController());
206
+ __publicField(this, "signal", this.ac.signal);
207
+ __publicField(this, "ctlr");
208
+ __publicField(this, "media");
209
+ __publicField(this, "state");
210
+ // for reactivity needs of those who pass it up
211
+ __publicField(this, "config");
212
+ (0, import_utils7.guardAllMethods)(this, ctlr.guard);
213
+ this.signal = AbortSignal.any([this.signal, ctlr.signal]);
214
+ this.ctlr = ctlr;
215
+ this.media = ctlr.media;
216
+ this.state = (0, import_utils3.isObj)(state) ? (0, import_sia_reactor3.reactive)(state) : state;
217
+ this.config = config;
218
+ }
219
+ // may be a reactive obj node or the obj itself
220
+ get settings() {
221
+ return this.ctlr.settings;
222
+ }
223
+ setup() {
224
+ return this.onSetup(), this;
225
+ }
226
+ destroy() {
227
+ !this.signal.aborted && this.ac.abort(`[TMG Controllable] Instance is being destroyed`);
228
+ this.onDestroy(), this.state?.destroy?.(), this.config !== this.media && isFunc(this.config?.destroy) && this.config?.destroy?.();
229
+ (0, import_utils13.nuke)(this);
230
+ }
231
+ onDestroy() {
232
+ }
233
+ };
234
+
235
+ // src/ts/utils/keys.ts
236
+ function formatActionForDisplay(keyShortcut, voiceCmd) {
237
+ const kArr = Array.isArray(keyShortcut) ? keyShortcut : keyShortcut ? [keyShortcut] : [];
238
+ return [kArr.length ? `\u2328\uFE0F ${kArr.map((c) => (0, import_utils6.cleanKeyCombo)(c).replace(" ", "space")).join(" or ")}` : "", voiceCmd?.length ? `\u{1F399}\uFE0F "${voiceCmd[0]}"` : ""].filter(Boolean).join(" \xB7 ");
239
+ }
240
+ function formatKeyForDisplay2(keyShortcut, voiceCmd) {
241
+ const combined = formatActionForDisplay(keyShortcut, voiceCmd);
242
+ return combined ? ` ( ${combined} )` : "";
243
+ }
244
+
245
+ // src/ts/components/base/index.ts
246
+ var BaseComponent = class extends Controllable {
247
+ constructor(ctlr, config, state) {
248
+ super(ctlr, config, { label: "", cmd: "", active: false, disabled: false, hidden: false, ...state });
249
+ __publicField(this, "element");
250
+ }
251
+ get name() {
252
+ return this.constructor.componentName;
253
+ }
254
+ get el() {
255
+ return this.element;
256
+ }
257
+ onSetup() {
258
+ this.mount?.();
259
+ this.ctlr.state.readyState ? this.wire?.() : this.wire && this.ctlr.state.wonce("readyState", this.wire, { signal: this.signal });
260
+ }
261
+ onDestroy() {
262
+ this.unmount();
263
+ }
264
+ // Must assign to this.element before returning
265
+ mount() {
266
+ }
267
+ unmount() {
268
+ this.el.remove();
269
+ }
270
+ wire() {
271
+ }
272
+ // auto unwiring
273
+ active() {
274
+ this.el.classList.toggle("tmg-media-control-active", this.state.active = true);
275
+ }
276
+ inactive() {
277
+ this.el.classList.toggle("tmg-media-control-active", this.state.active = false);
278
+ }
279
+ disable() {
280
+ this.el.classList.toggle("tmg-media-control-disabled", this.state.disabled = true);
281
+ }
282
+ enable() {
283
+ this.el.classList.toggle("tmg-media-control-disabled", this.state.disabled = false);
284
+ }
285
+ hide() {
286
+ this.el.classList.toggle("tmg-media-control-hidden", this.state.hidden = true);
287
+ }
288
+ show() {
289
+ this.el.classList.toggle("tmg-media-control-hidden", this.state.hidden = false);
290
+ }
291
+ gate(e) {
292
+ !e.value ? this.hide() : this.canShow && this.show();
293
+ }
294
+ get canShow() {
295
+ return true;
296
+ }
297
+ // override to make gating smarter
298
+ setBtnARIA(dblAction, target = this.el) {
299
+ this.state.label && target.setAttribute("aria-label", this.state.label);
300
+ this.state.cmd && target.setAttribute("aria-keyshortcuts", (0, import_utils6.parseForARIAKS)(this.state.cmd));
301
+ if (dblAction) target.setAttribute("aria-description", `Double-press to ${dblAction}`);
302
+ else if (target.hasAttribute("aria-description")) target.removeAttribute("aria-description");
303
+ }
304
+ };
305
+ __publicField(BaseComponent, "componentName");
306
+ __publicField(BaseComponent, "isControl", false);
307
+
308
+ // src/ts/components/rangeinput/build.ts
309
+ var RANGE_INPUT_BUILD = {
310
+ label: "Range Slider",
311
+ min: 0,
312
+ max: 100,
313
+ value: 0,
314
+ previewValue: 50,
315
+ step: 1,
316
+ scrub: {
317
+ sync: true,
318
+ relative: true,
319
+ cancel: {
320
+ delta: 5,
321
+ timeout: 1500
322
+ }
323
+ },
324
+ wheel: {
325
+ disabled: false,
326
+ axisRatio: 6
327
+ },
328
+ preview: true,
329
+ tooltip: true,
330
+ readonly: false,
331
+ disabled: false,
332
+ divs: [],
333
+ marks: []
334
+ };
335
+
336
+ // src/ts/components/rangeinput/index.ts
337
+ var import_sia_reactor7 = require("sia-reactor");
338
+ var import_utils21 = require("sia-reactor/utils");
339
+
340
+ // src/ts/utils/dom.ts
341
+ var import_sia_reactor6 = require("sia-reactor");
342
+
343
+ // ../t007-tools/packages/utils/dist/hooks/vanilla.js
344
+ var import_sia_reactor4 = require("sia-reactor");
345
+ var import_sia_reactor5 = require("sia-reactor");
346
+ function initScrollAssist(el, { pxPerSecond = 80, assistClassName = "t007-scroll-assist", vertical = true, horizontal = true } = import_sia_reactor4.NIL) {
347
+ const parent = el?.parentElement, existing = (t007._scrollers ?? (t007._scrollers = /* @__PURE__ */ new WeakMap())).get(el);
348
+ if (!parent || existing) return existing ? existing : void 0;
349
+ t007._scrollers_r_observer ?? (t007._scrollers_r_observer = new ResizeObserver((entries) => {
350
+ for (const { target } of entries) t007._scrollers.get(target)?.update();
351
+ }));
352
+ t007._scrollers_m_observer ?? (t007._scrollers_m_observer = new MutationObserver((entries) => {
353
+ const els = /* @__PURE__ */ new Set();
354
+ for (const entry of entries) {
355
+ let node = entry.target instanceof Element ? entry.target : null;
356
+ while (node && !t007._scrollers.has(node)) node = node.parentElement;
357
+ if (node) els.add(node);
358
+ }
359
+ for (const el2 of els) t007._scrollers.get(el2)?.update();
360
+ }));
361
+ const assist = {};
362
+ let scrollId = null, last = performance.now(), assistWidth = 20, assistHeight = 20;
363
+ const update = () => {
364
+ const hasInteractive = !!parent.querySelector(INTERACTIVE_SELECTOR);
365
+ if (horizontal) {
366
+ const w = assist.left?.offsetWidth || assistWidth, check = hasInteractive ? el.clientWidth < w * 2 : false;
367
+ assist.left.style.display = check ? "none" : el.scrollLeft > 0 ? "block" : "none";
368
+ assist.right.style.display = check ? "none" : el.scrollLeft + el.clientWidth < el.scrollWidth - 1 ? "block" : "none";
369
+ assistWidth = w;
370
+ }
371
+ if (vertical) {
372
+ const h = assist.up?.offsetHeight || assistHeight, check = hasInteractive ? el.clientHeight < h * 2 : false;
373
+ assist.up.style.display = check ? "none" : el.scrollTop > 0 ? "block" : "none";
374
+ assist.down.style.display = check ? "none" : el.scrollTop + el.clientHeight < el.scrollHeight - 1 ? "block" : "none";
375
+ assistHeight = h;
376
+ }
377
+ };
378
+ const scroll = (dir) => {
379
+ const frame = () => {
380
+ const now = performance.now(), dt = now - last;
381
+ last = now;
382
+ const d = pxPerSecond * dt / 1e3;
383
+ if (dir === "left") el.scrollLeft = Math.max(0, el.scrollLeft - d);
384
+ if (dir === "right") el.scrollLeft = Math.min(el.scrollWidth - el.clientWidth, el.scrollLeft + d);
385
+ if (dir === "up") el.scrollTop = Math.max(0, el.scrollTop - d);
386
+ if (dir === "down") el.scrollTop = Math.min(el.scrollHeight - el.clientHeight, el.scrollTop + d);
387
+ scrollId = requestAnimationFrame(frame);
388
+ };
389
+ last = performance.now();
390
+ frame();
391
+ };
392
+ const stop = () => (cancelAnimationFrame(scrollId ?? 0), scrollId = null);
393
+ const addAssist = (dir) => {
394
+ const div = (0, import_utils.createEl)("div", { className: assistClassName }, { scrollDirection: dir }, { display: "none" });
395
+ if (!div) return;
396
+ for (const evt of ["pointerenter", "dragenter"]) div.addEventListener(evt, () => scroll(dir));
397
+ for (const evt of ["pointerleave", "pointerup", "pointercancel", "dragleave", "dragend"]) div.addEventListener(evt, stop);
398
+ dir === "left" || dir === "up" ? parent.insertBefore(div, el) : parent.append(div);
399
+ assist[dir] = div;
400
+ };
401
+ if (horizontal) for (const dir of ["left", "right"]) addAssist(dir);
402
+ if (vertical) for (const dir of ["up", "down"]) addAssist(dir);
403
+ const handle = {
404
+ update,
405
+ destroy() {
406
+ stop(), el.removeEventListener("scroll", update);
407
+ t007._scrollers_r_observer.unobserve(el), t007._scrollers.delete(el);
408
+ for (const a of Object.values(assist)) a.remove();
409
+ }
410
+ };
411
+ update(), el.addEventListener("scroll", update);
412
+ t007._scrollers_r_observer.observe(el), t007._scrollers_m_observer.observe(el, { childList: true, subtree: true, characterData: true });
413
+ return t007._scrollers.set(el, handle), handle;
414
+ }
415
+ var removeScrollAssist = (el) => t007._scrollers.get(el)?.destroy();
416
+
417
+ // src/ts/utils/dom.ts
418
+ var win = "undefined" !== typeof window ? window : void 0;
419
+ function addSafeClicks(el, onClick = import_sia_reactor6.NOOP, onDblClick = import_sia_reactor6.NOOP, options) {
420
+ el && removeSafeClicks(el);
421
+ el?.addEventListener("click", el._clickHandler = (e) => (clearTimeout(el._clickTimeoutId), el._clickTimeoutId = setTimeout(() => onClick(e), 300)), options);
422
+ el?.addEventListener("dblclick", el._dblClickHandler = (e) => (clearTimeout(el._clickTimeoutId), onDblClick(e)), options);
423
+ }
424
+ function removeSafeClicks(el) {
425
+ el?.removeEventListener("click", el._clickHandler);
426
+ el?.removeEventListener("dblclick", el._dblClickHandler);
427
+ }
428
+ var intersectionObserver = win ? new IntersectionObserver(
429
+ (entries) => {
430
+ for (const entry of entries) if (entry.target._intersectCbs) for (const cb of entry.target._intersectCbs) cb(entry);
431
+ },
432
+ { root: null, rootMargin: "0px", threshold: 0.3 }
433
+ ) : null;
434
+ var resizeObserver = win ? new ResizeObserver((entries) => {
435
+ for (const entry of entries) if (entry.target._resizeCbs) for (const cb of entry.target._resizeCbs) cb(entry);
436
+ }) : null;
437
+ var mutationObserver = win ? new MutationObserver((mutations) => {
438
+ const target = mutations[0].target;
439
+ if (target._mutationCbs) for (const cb of target._mutationCbs) cb(mutations);
440
+ }) : null;
441
+ function observeResize(el, cb, sig) {
442
+ (el._resizeCbs ?? (el._resizeCbs = /* @__PURE__ */ new Set())).add(cb);
443
+ resizeObserver?.observe(el);
444
+ return bindCleanupToSignal(() => (el._resizeCbs?.delete(cb), !el._resizeCbs?.size && resizeObserver?.unobserve(el)), sig);
445
+ }
446
+
447
+ // src/ts/utils/num.ts
448
+ function isSafeNum(val) {
449
+ return isNum(val) && !isNaN(val ?? NaN) && val !== Infinity;
450
+ }
451
+ function safeNum(number, fallback = 0) {
452
+ return isSafeNum(number) ? number : fallback;
453
+ }
454
+ function parseIfPercent(percent, amount, autocap = 0.25) {
455
+ const val = percent?.endsWith?.("%") ? safeNum(parseFloat(percent) / 100 * amount) : percent;
456
+ return val && amount && autocap && amount <= val ? amount * autocap : val;
457
+ }
458
+ function stepNum(v = 0, { min, max, step }) {
459
+ const s = step ? Math.round((safeNum(v) - (min || 0)) / step) * step + (min || 0) : safeNum(v);
460
+ return (0, import_utils4.clamp)(min, +s.toFixed(10), max);
461
+ }
462
+
463
+ // src/ts/components/rangeinput/index.ts
464
+ var import_modules = require("sia-reactor/modules");
465
+ var RangeInput = class extends BaseComponent {
466
+ constructor(ctlr, config, state) {
467
+ super(ctlr, (0, import_sia_reactor7.reactive)((0, import_utils21.mergeObjs)(structuredClone(RANGE_INPUT_BUILD), config), { scrubbing: false, previewing: false, cancelScrub: false, ...state }));
468
+ __publicField(this, "barsWrapper");
469
+ __publicField(this, "marksWrapper");
470
+ __publicField(this, "chunks", []);
471
+ __publicField(this, "thumbEl");
472
+ __publicField(this, "tooltipEl");
473
+ __publicField(this, "isVertical", false);
474
+ __publicField(this, "isRTL", false);
475
+ __publicField(this, "rect");
476
+ __publicField(this, "lastPtrPos", 0);
477
+ __publicField(this, "lastThumbPos", 0);
478
+ __publicField(this, "currentThumbPos", 0);
479
+ __publicField(this, "stallCancelScrub", false);
480
+ __publicField(this, "cancelScrubTimeoutId", null);
481
+ __publicField(this, "tx", null);
482
+ __publicField(this, "prevEX");
483
+ __publicField(this, "prevEY");
484
+ }
485
+ create() {
486
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-range-container", tabIndex: 0, role: "slider" });
487
+ this.barsWrapper = (0, import_utils.createEl)("div", { className: "tmg-media-range-bars-wrapper" });
488
+ this.marksWrapper = (0, import_utils.createEl)("div", { className: "tmg-media-range-marks-wrapper" });
489
+ this.thumbEl = (0, import_utils.createEl)("div", { className: "tmg-media-range-thumb" });
490
+ this.tooltipEl = (0, import_utils.createEl)("div", { className: "tmg-media-range-tooltip" });
491
+ return this.el.append(this.barsWrapper, this.marksWrapper, this.thumbEl, this.tooltipEl), this.el;
492
+ }
493
+ wire() {
494
+ this.rect = this.el.getBoundingClientRect();
495
+ this.el.addEventListener("pointerdown", this.handlePointerDown, { signal: this.signal });
496
+ this.el.addEventListener("keydown", this.handleKeyDown, { signal: this.signal });
497
+ this.el.addEventListener("wheel", this.handleWheel, { passive: false, signal: this.signal });
498
+ this.el.addEventListener("mouseover", () => this.rect = this.el.getBoundingClientRect(), { signal: this.signal });
499
+ this.el.addEventListener("mousemove", this.handleInput, { signal: this.signal });
500
+ for (const e of ["mouseleave", "touchend", "touchcancel"]) this.el.addEventListener(e, this.stopPreviewing, { signal: this.signal });
501
+ this.state.watch("scrubbing", (value) => value ? this.tx = (0, import_modules.startTx)(`${this.config.label} Scrub`) : this.tx && this.config.stall(() => ((0, import_modules.endTx)(this.tx), this.tx = null)), { signal: this.signal });
502
+ this.state.on("previewing", ({ value }) => this.el.classList.toggle("tmg-media-control-previewing", !!value), { signal: this.signal });
503
+ this.state.on("scrubbing", ({ value }) => this.el.classList.toggle("tmg-media-control-scrubbing", !!value), { signal: this.signal });
504
+ this.state.on("cancelScrub", ({ value }) => this.el.classList.toggle("tmg-media-control-cancel-scrub", !!value), { signal: this.signal });
505
+ this.config.set("value", (value) => stepNum(value, this.config), { signal: this.signal });
506
+ this.config.on("label", ({ value }) => this.el.ariaLabel = value, { init: true, signal: this.signal });
507
+ this.config.on("min", ({ value }) => this.el.ariaValueMin = String(value), { init: true, signal: this.signal });
508
+ this.config.on("max", ({ value }) => this.el.ariaValueMax = String(value), { init: true, signal: this.signal });
509
+ this.config.watch("value", this.onValue, { init: true, signal: this.signal });
510
+ this.config.watch("previewValue", this.onPreviewValue, { init: true, signal: this.signal });
511
+ this.config.on("tooltip", ({ value }) => this.el.toggleAttribute("data-tooltip", !!value), { init: true, signal: this.signal });
512
+ this.config.on("readonly", ({ value }) => this.el.toggleAttribute("readonly", !!value), { init: true, signal: this.signal });
513
+ this.config.on("disabled", ({ value }) => this.el.toggleAttribute("disabled", !!value), { init: true, signal: this.signal });
514
+ this.config.on("divs", ({ currentTarget: { value } }) => this.syncDivs(value), { init: true, signal: this.signal });
515
+ this.config.on("marks", ({ currentTarget: { value } }) => this.syncMarks(value), { init: true, signal: this.signal });
516
+ observeResize(this.el, () => this.ctlr.throttle(`${this.config.label}Resizing`, this.handleResize, 30, false), this.signal);
517
+ }
518
+ scrub(value, bypass = false) {
519
+ return this.canScrub ? (!bypass ? this.config.value = value : this.onValue(value), true) : false;
520
+ }
521
+ get canScrub() {
522
+ return !this.config.readonly && !this.config.disabled;
523
+ }
524
+ onValue(value) {
525
+ this.syncElPos(this.thumbEl, this.getValuePos(value), false, "auto"), this.syncChunks("value", value);
526
+ if (!this.state.scrubbing) this.el.ariaValueNow = String(value);
527
+ }
528
+ onPreviewValue(value) {
529
+ this.syncChunks("preview", value), this.config.tooltip && (this.syncElPos(this.tooltipEl, this.getValuePos(value), false, !(this.state.previewing && !this.state.scrubbing) ? "auto" : false, this.thumbEl), this.tooltipEl.innerHTML = (this.config.formatTooltip ? String(this.config.formatTooltip(value)) : `${Math.round(value)}`) + ` ${this.getValueChunk(value)?.label || ""}`.trim());
530
+ }
531
+ handlePointerDown(e) {
532
+ if (this.state.scrubbing || this.config.readonly || this.config.disabled) return;
533
+ this.state.scrubbing = true;
534
+ this.el.setPointerCapture(e.pointerId);
535
+ const s = getWindow(this.el).getComputedStyle(this.el);
536
+ this.isVertical = s.writingMode.includes("vertical"), this.isRTL = s.direction === "rtl";
537
+ this.rect = this.el.getBoundingClientRect(), this.lastPtrPos = this.getPos(e), this.lastThumbPos = this.currentThumbPos = this.getValuePos();
538
+ getWindow(this.el).addEventListener("pointermove", this.handleInput, { signal: this.signal }), this.handleInput(e);
539
+ getWindow(this.el).addEventListener("pointerup", this.stopScrubbing, { signal: this.signal }), getWindow(this.el).addEventListener("pointercancel", this.stopScrubbing, { signal: this.signal });
540
+ }
541
+ stopScrubbing() {
542
+ if (!this.state.scrubbing) return;
543
+ this.state.scrubbing = this.state.previewing = false;
544
+ this.ctlr.cancelRAFLoop(`${this.config.label}Inputing`);
545
+ this.scrub(this.getPosValue(this.state.cancelScrub ? this.lastThumbPos : this.currentThumbPos), this.state.cancelScrub);
546
+ this.allowScrubbing(), this.stopPreviewing();
547
+ this.stallCancelScrub = true;
548
+ getWindow(this.el).removeEventListener("pointermove", this.handleInput);
549
+ getWindow(this.el).removeEventListener("pointerup", this.stopScrubbing), getWindow(this.el).removeEventListener("pointercancel", this.stopScrubbing);
550
+ }
551
+ stopPreviewing() {
552
+ if (!this.state.previewing) return;
553
+ this.state.previewing = false;
554
+ !this.state.scrubbing && this.ctlr.cancelRAFLoop(`${this.config.label}Inputing`);
555
+ }
556
+ cancelScrubbing() {
557
+ if (this.stallCancelScrub || this.state.cancelScrub || this.cancelScrubTimeoutId) return;
558
+ this.state.cancelScrub = true;
559
+ this.cancelScrubTimeoutId = (0, import_utils5.setTimeout)(() => this.allowScrubbing(false), this.config.scrub.cancel.timeout, this.signal);
560
+ }
561
+ allowScrubbing(reset = true) {
562
+ this.stallCancelScrub = this.state.cancelScrub = false;
563
+ clearTimeout(this.cancelScrubTimeoutId);
564
+ if (reset) this.cancelScrubTimeoutId = null;
565
+ }
566
+ handleInput(e) {
567
+ if (this.config.readonly || this.config.disabled) return;
568
+ this.ctlr.RAFLoop(`${this.config.label}Inputing`, () => {
569
+ var _a;
570
+ if (this.prevEX === e.clientX && this.prevEY === e.clientY) return;
571
+ this.prevEX = e.clientX, this.prevEY = e.clientY;
572
+ (_a = this.state).previewing || (_a.previewing = true);
573
+ const dimension = this.isVertical ? this.rect.height : this.rect.width, progress = this.getPos(e), pos = this.currentThumbPos = (0, import_utils4.clamp)(0, !this.state.scrubbing || this.config.scrub.relative ? progress : this.lastThumbPos + progress - this.lastPtrPos, 1), value = this.getPosValue(pos);
574
+ this.config.previewValue = value;
575
+ if (this.state.scrubbing) {
576
+ !this.config.scrub.sync ? this.syncElPos(this.thumbEl, pos, false, "auto") : this.scrub(value);
577
+ Math.abs(pos - this.lastThumbPos) < this.config.scrub.cancel.delta / dimension ? this.cancelScrubbing() : this.allowScrubbing();
578
+ }
579
+ this.onInput(e, pos);
580
+ });
581
+ }
582
+ onInput(_e, _pos) {
583
+ }
584
+ // override to safely add preview logic (timeline preview image, etc.)
585
+ handleWheel(e) {
586
+ if (this.config.wheel.disabled) return;
587
+ e.preventDefault(), e.stopImmediatePropagation();
588
+ const dimension = this.isVertical ? getWindow(this.el).innerHeight : getWindow(this.el).innerWidth, pos = (0, import_utils4.clamp)(0, Math.abs(-e.deltaY), dimension * this.config.wheel.axisRatio) / (dimension * this.config.wheel.axisRatio), value = this.config.value + (-e.deltaY >= 0 ? pos : -pos) * (this.config.max - this.config.min);
589
+ this.scrub(value);
590
+ }
591
+ handleKeyDown(e) {
592
+ const key = e.key?.toLowerCase();
593
+ if (["arrowleft", "arrowdown", "arrowright", "arrowup"].includes(key)) {
594
+ e.preventDefault(), e.stopImmediatePropagation();
595
+ const delta = e.shiftKey ? 2 : 1, direction = ["arrowleft", "arrowdown"].includes(key) ? -1 : 1;
596
+ this.scrub(this.config.value + direction * delta * this.config.step);
597
+ }
598
+ }
599
+ handleResize() {
600
+ this.rect = this.el.getBoundingClientRect();
601
+ const pos = this.getValuePos();
602
+ this.syncElPos(this.thumbEl, pos, false, "auto"), this.syncChunks("value", this.config.value), this.config.tooltip && this.syncElPos(this.tooltipEl, pos, false, "auto", this.thumbEl);
603
+ }
604
+ getValuePos(value = this.config.value, range = this.config.max - this.config.min) {
605
+ return range ? (value - this.config.min) / range : 0;
606
+ }
607
+ getPosValue(pos) {
608
+ return pos * (this.config.max - this.config.min) + this.config.min;
609
+ }
610
+ getValueChunk(value = this.config.value) {
611
+ for (let i = 0, len = this.chunks.length; i < len; i++) {
612
+ const c = this.chunks[i];
613
+ if (value >= c.start && value <= c.end) return c;
614
+ }
615
+ }
616
+ getPos(e) {
617
+ const p = this.isVertical ? (e.clientY - this.rect.top) / this.rect.height : (e.clientX - this.rect.left) / this.rect.width;
618
+ return (0, import_utils4.clamp)(0, this.isRTL ? 1 - p : p, 1);
619
+ }
620
+ syncElPos(el, pos, isSize = false, inBounds = false, bounds = el) {
621
+ const dim = this.isVertical ? this.rect?.height : this.rect?.width, min = inBounds && dim ? (this.isVertical ? bounds.offsetHeight : bounds.offsetWidth) / 2 / dim : 0;
622
+ pos = inBounds === "auto" ? min + pos * (1 - min * 2) : pos;
623
+ const value = pos || !isSize && pos === 0 ? `${(0, import_utils4.clamp)(min, pos, 1 - min) * 100}%` : "";
624
+ if (isSize) this.isVertical ? (el.style.blockSize = value, el.style.inlineSize = "") : (el.style.inlineSize = value, el.style.blockSize = "");
625
+ else this.isVertical ? (el.style.insetBlockEnd = value, el.style.insetInlineStart = "") : (el.style.insetInlineStart = value, el.style.insetBlockEnd = "");
626
+ }
627
+ syncChunks(key, value) {
628
+ for (let i = 0, len = this.chunks.length; i < len; i++) {
629
+ const c = this.chunks[i];
630
+ this.syncElPos(c[key], (0, import_utils4.clamp)(0, (value - c.start) / c.size, 1) || 0, true), c[key].style.setProperty("--tmg-media-current-range-pos", String(this.getValuePos(value)));
631
+ c.el.classList.toggle(`tmg-media-chunk-${key}-active`, value >= c.start && value <= c.end);
632
+ }
633
+ }
634
+ syncDivs(divs = this.config.divs) {
635
+ this.barsWrapper.innerHTML = "";
636
+ this.chunks = [];
637
+ const range = this.config.max - this.config.min, stops = divs.toSorted((a, b) => a.value - b.value);
638
+ if (stops.length && stops[0].value > this.config.min && stops[0].value <= this.config.min + Math.min(0.02 * range, range * 0.25)) stops[0].value = this.config.min;
639
+ else if (!stops.length || stops[0].value > this.config.min) stops.unshift({ value: this.config.min, label: "" });
640
+ if (stops[stops.length - 1].value < this.config.max) stops.push({ value: this.config.max, label: "" });
641
+ const fragment = document.createDocumentFragment();
642
+ for (let i = 0, len = stops.length; i < len - 1; i++) {
643
+ const start = stops[i], end = stops[i + 1], size = end.value - start.value;
644
+ if (size <= 0) continue;
645
+ const el = (0, import_utils.createEl)("div", { className: "tmg-media-range-chunk" }, void 0, { cssText: `--tmg-media-current-chunk-st: ${(start.value - this.config.min) / range};` }), chunk = { base: (0, import_utils.createEl)("div", { className: "tmg-media-range-bar tmg-media-range-base-bar" }), preview: (0, import_utils.createEl)("div", { className: "tmg-media-range-bar tmg-media-range-preview-bar" }), value: (0, import_utils.createEl)("div", { className: "tmg-media-range-bar tmg-media-range-value-bar" }) };
646
+ this.syncElPos(el, size / range, true), fragment.append((el.append(chunk.base, chunk.preview, chunk.value), el)), this.chunks.push({ start: start.value, end: end.value, label: start.label, size, el, ...chunk });
647
+ }
648
+ this.barsWrapper.append(fragment), this.onValue(this.config.value), this.onPreviewValue(this.config.previewValue);
649
+ }
650
+ syncMarks(marks = this.config.marks) {
651
+ this.marksWrapper.innerHTML = "";
652
+ const els = [], range = this.config.max - this.config.min;
653
+ if (range <= 0) return;
654
+ for (let i = 0, len = marks.length; i < len; i++) {
655
+ const m = marks[i], el = (0, import_utils.createEl)("div", { className: `tmg-media-range-mark tmg-media-range-${marks[i].type || "base"}-mark`, title: marks[i].label || `${m.start}${m.end && m.end > m.start + 1 ? ` - ${m.end}` : ""} Mark` }, void 0);
656
+ this.syncElPos(el, (m.start - this.config.min) / range, false), this.syncElPos(el, m.end ? (m.end - m.start) / range : 0, true), els.push(el);
657
+ }
658
+ this.marksWrapper.append(...els);
659
+ }
660
+ };
661
+ __publicField(RangeInput, "componentName", "rangeinput");
662
+
663
+ // src/ts/components/buffer.ts
664
+ var Buffer2 = class extends BaseComponent {
665
+ create() {
666
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-buffer", innerHTML: `<div class="tmg-media-buffer-accent"></div><div class="tmg-media-buffer-eclipse"><div class="tmg-media-buffer-left"><div class="tmg-media-buffer-circle"></div></div><div class="tmg-media-buffer-right"><div class="tmg-media-buffer-circle"></div></div></div>` });
667
+ }
668
+ mount() {
669
+ this.ctlr.DOM.controlsContainer?.prepend(this.element);
670
+ }
671
+ };
672
+ __publicField(Buffer2, "componentName", "buffer");
673
+
674
+ // src/ts/utils/time.ts
675
+ function formatMediaTime({ time, format = "digital", elapsed = true, showMs = false, casing = "normal" } = { time: 0 }) {
676
+ const long = format.endsWith("long"), sx = (n = 0) => n == 1 ? "" : "s", cs = (str) => casing === "upper" ? str.toUpperCase() : casing === "title" ? str.replace(/^([a-z])/i, (m2) => m2.toUpperCase()) : str.toLowerCase(), wrd = (n = 0) => ({ d: cs(long ? " day" + sx(n) + " " : "d"), h: cs(long ? " hour" + sx(n) + " " : "h"), m: cs(long ? " minute" + sx(n) + " " : "m"), s: cs(long ? " second" + sx(n) + " " : "s"), ms: cs(long ? " millisecond" + sx(n) + " " : "ms") }), pad = (v, n = 2, f) => long && !f ? v : String(v).padStart(n, isNum(+n) ? "0" : "-");
677
+ if (isNaN(time ?? NaN) || time === Infinity) return format !== "digital" ? ("-" + wrd().h + pad("-") + wrd().m + (!elapsed ? "left" : "")).trim() : !elapsed ? "-:--" : "-:--";
678
+ const s = Math.floor(Math.abs(time) % 60), m = Math.floor(Math.abs(time) / 60) % 60, h = Math.floor(Math.abs(time) / 3600) % 24, d = Math.floor(Math.abs(time) / 86400), ms = Math.floor(Math.abs(time) % 1 * 1e3);
679
+ if (format === "digital") {
680
+ const base2 = d ? d + ":" + pad(h, 2, true) + ":" + pad(m, 2, true) + ":" + pad(s, 2, true) : h ? h + ":" + pad(m, 2, true) + ":" + pad(s, 2, true) : m + ":" + pad(s, 2, true);
681
+ return !elapsed ? "-" + base2 : base2;
682
+ }
683
+ const base = d ? d + wrd(d).d + pad(h) + wrd(h).h + pad(m) + wrd(m).m + pad(s) + wrd(s).s : h ? h + wrd(h).h + pad(m) + wrd(m).m + pad(s) + wrd(s).s : m + wrd(m).m + pad(s) + wrd(s).s, msPart = showMs && ms ? pad(ms, 3) + wrd(ms).ms : "";
684
+ return (base + msPart + (!long ? " " : "") + (!elapsed ? "left" : "")).trim();
685
+ }
686
+
687
+ // src/ts/utils/media.ts
688
+ var import_utils23 = require("sia-reactor/utils");
689
+ function getMediaProgress({ state: s, status: st }, time = s.currentTime) {
690
+ if (st.isLive) {
691
+ if (!st.seekable.length || s.live) return 1;
692
+ const min = st.seekable.start(0), dvr = st.seekable.end(st.seekable.length - 1) - min;
693
+ return dvr > 0 ? (time - min) / dvr : 1;
694
+ } else return time / st.duration;
695
+ }
696
+ var getMediaTime = (media, percent, _min = getMediaMin(media)) => media.status.isLive ? _min + percent * (getMediaMax(media) - _min) : percent * media.status.duration;
697
+ var getMediaMin = ({ status: st, state: s }) => st.isLive ? st.seekable.length ? st.canSeekLive ? st.seekable.start(0) : st.seekable.end(st.seekable.length - 1) : s.currentTime : 0;
698
+ var getMediaMax = ({ status: st, state: s }) => st.isLive ? st.seekable.length ? st.seekable.end(st.seekable.length - 1) : s.currentTime : st.duration;
699
+ var DUMMY_VID = (0, import_utils.createEl)("video");
700
+ var DUMMY_AUD = (0, import_utils.createEl)("audio");
701
+ var stripTags = (text) => text.replace(/<(\/)?([a-z0-9.:]+)([^>]*)>/gi, "");
702
+ function parseVttText(text) {
703
+ const state = { tag: /<(\/)?([a-z0-9.:]+)([^>]*)>/gi, o: "", l: 0, p: null, c: "" }, esc = (s) => s.replace(/[&<>"']/g, (c) => ({ "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;" })[c]);
704
+ let m;
705
+ while (m = state.tag.exec(text)) {
706
+ const chunk = text.slice(state.l, m.index);
707
+ if (chunk) state.c += esc(chunk);
708
+ const [_, cls, tag_n, rest] = m, low = tag_n.toLowerCase();
709
+ if (/^[0-9]/.test(tag_n)) {
710
+ state.o += state.p ? `<span data-part="timed" data-time="${state.p}">${state.c}</span>` : state.c;
711
+ state.p = tag_n;
712
+ state.c = "";
713
+ } else if (cls) state.c += ["c", "v", "lang"].includes(low) ? "</span>" : `</${low}>`;
714
+ else if (["b", "i", "u", "ruby", "rt"].includes(low)) state.c += `<${low}>`;
715
+ else if (low === "c") state.c += `<span class="vtt-c ${rest.replace(/\.([a-z0-9_-]+)/gi, "$1 ").trim()}">`;
716
+ else if (low === "v") state.c += `<span data-part="voice"${rest.trim() ? ` title="${esc(rest.trim())}"` : ""}>`;
717
+ else if (low === "lang") state.c += `<span lang="${esc(rest.trim())}">`;
718
+ state.l = state.tag.lastIndex;
719
+ }
720
+ const lChunk = text.slice(state.l);
721
+ if (lChunk) state.c += esc(lChunk);
722
+ return state.o + (state.p ? `<span data-part="timed" data-time="${state.p}">${state.c}</span>` : state.c);
723
+ }
724
+ function formatVttLine(p, maxChars) {
725
+ const state = { tokens: p.match(/<[^>]+>|\S+/g) || [], stack: [], parts: [], line: "", len: 0, openStr: "", closeStr: "", timeTag: "", lastWasTag: false }, updateTags = () => (state.openStr = state.stack.map((n) => `<${n}>`).join(""), state.closeStr = state.stack.reduceRight((a, n) => a + `</${n}>`, "")), flush = () => state.line && (state.parts.push(state.line + state.closeStr), state.line = (state.timeTag || "") + state.openStr, state.len = 0, state.lastWasTag = true);
726
+ for (const tok of state.tokens) {
727
+ const tag = tok[0] === "<", closeTag = tag && tok[1] === "/";
728
+ if (tag) {
729
+ if (state.line && !state.lastWasTag && !closeTag) state.line += " ";
730
+ const m = tok.match(/^<\/?\s*([a-z0-9._:-]+)/i), n = m?.[1] || "", timing = /^\d/.test(n);
731
+ if (timing) {
732
+ state.timeTag = tok, state.line += tok, state.lastWasTag = true;
733
+ continue;
734
+ }
735
+ if (!closeTag && !tok.endsWith("/>") && n) state.stack.push(n), updateTags();
736
+ if (closeTag && state.stack.length) state.stack.pop(), updateTags();
737
+ state.lastWasTag = true, state.line += tok;
738
+ continue;
739
+ }
740
+ const len = stripTags(tok).length, needSpace = state.line && !state.lastWasTag;
741
+ if (state.len + (needSpace ? 1 : 0) + len > maxChars) flush();
742
+ if (needSpace) state.line += " ", state.len += 1;
743
+ state.line += tok, state.len += len, state.lastWasTag = false;
744
+ }
745
+ return flush(), state.parts;
746
+ }
747
+
748
+ // src/ts/components/captionsview.ts
749
+ var CaptionsView = class extends BaseComponent {
750
+ constructor() {
751
+ super(...arguments);
752
+ __publicField(this, "isMain", false);
753
+ __publicField(this, "prevCue", null);
754
+ __publicField(this, "karaokeNodes", null);
755
+ __publicField(this, "lastPreview", "");
756
+ __publicField(this, "timeoutId", -1);
757
+ __publicField(this, "charW", 0);
758
+ __publicField(this, "lineHPx", 0);
759
+ __publicField(this, "lastPosX", 0);
760
+ __publicField(this, "lastPosY", 0);
761
+ __publicField(this, "lastPtrX", 0);
762
+ __publicField(this, "lastPtrY", 0);
763
+ __publicField(this, "dragX");
764
+ __publicField(this, "dragY");
765
+ __publicField(this, "prevEX");
766
+ __publicField(this, "prevEY");
767
+ }
768
+ create() {
769
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-captions-container" }, { part: "region" });
770
+ }
771
+ mount() {
772
+ this.ctlr.DOM.controlsContainer?.prepend(this.element);
773
+ }
774
+ wire() {
775
+ if (!(this.isMain = this.element === this.ctlr.DOM.captionsContainer)) this.dragY = `calc((var(--tmg-media-current-captions-container-height) * ${this.config.secondaryOrder ?? 1}) + (var(--tmg-media-current-captions-container-height) / 2) + (var(--tmg-media-current-unit) / 2))`;
776
+ this.el.addEventListener("pointerdown", this.handleDragStart, { signal: this.signal });
777
+ this.ctlr.state.watch("dimensions.container.width", () => (this.syncSize(), this.preview("")), { init: true, signal: this.signal });
778
+ }
779
+ syncSize() {
780
+ this.el.style.setProperty("display", "block", "important");
781
+ const measurer = (0, import_utils.createEl)("span", { className: "tmg-media-captions-text", innerHTML: "abcdefghijklmnopqrstuvwxyz".repeat(2) }, {}, { visibility: "hidden" });
782
+ this.el.append(measurer);
783
+ this.charW = measurer.offsetWidth / 52;
784
+ const { lineHeight, fontSize } = getComputedStyle(measurer);
785
+ this.lineHPx = !safeNum(parseFloat(lineHeight), 0) ? safeNum(parseFloat(fontSize), 16) * 1.2 : parseFloat(lineHeight);
786
+ measurer.remove(), this.el.style.removeProperty("display");
787
+ }
788
+ preview(cue = `${capitalize(this.media.container.dataset.trackKind || "captions")} look like this`, flush = this.isPreviewing()) {
789
+ const text = isStr(cue) ? cue : cue.text || "", should = flush || !this.ctlr.isUIActive("captions") || !this.el.textContent;
790
+ should && this.media.container.classList.add("tmg-media-captions-preview");
791
+ this.render(should ? (0, import_utils3.isObj)(cue) ? cue : { text: cue } : this.prevCue);
792
+ clearTimeout(this.timeoutId);
793
+ this.timeoutId = (0, import_utils5.setTimeout)((flush2 = this.isPreviewing(text)) => (this.media.container.classList.remove("tmg-media-captions-preview"), flush2 && (this.el.innerHTML = "")), this.settings.captions.previewTimeout, this.signal);
794
+ this.lastPreview = text;
795
+ }
796
+ isPreviewing(text = this.lastPreview) {
797
+ return !!this.el.innerHTML && this.el.textContent.replace(/\s/g, "") === text?.replace(/\s/g, "");
798
+ }
799
+ render(cue) {
800
+ const existing = this.el.querySelector(".tmg-media-captions-wrapper");
801
+ if (!cue) return existing?.remove();
802
+ const wrapper = existing ?? (0, import_utils.createEl)("div", { className: "tmg-media-captions-wrapper", ariaLive: "Off", ariaAtomic: "true" }, { part: "cue-display" }), { offsetWidth: vCWidth, offsetHeight: vCHeight } = this.media.container, allowOverride = this.settings.captions.allowOverride || !this.isMain;
803
+ for (const attr of ["style", "data-active", "data-scroll"]) this.el.removeAttribute(attr);
804
+ if (!this.isMain) this.dragX && this.el.style.setProperty("--tmg-media-current-captions-x", this.dragX), this.dragY && this.el.style.setProperty("--tmg-media-current-captions-y", this.dragY);
805
+ wrapper.innerHTML = "", cue.text || (cue.text = ""), this.prevCue = cue;
806
+ const lines = cue.text.replace(/(<br\s*\/>)|\\N/gi, "\n").split(/\n/);
807
+ for (const p of lines) for (const l of formatVttLine(p, Math.floor(vCWidth / this.charW))) wrapper.append((0, import_utils.createEl)("div", { className: "tmg-media-captions-line" }, cue.id ? { part: "cue", id: cue.id } : { part: "cue" }, allowOverride && cue.align ? { textAlign: cue.align } : void 0).appendChild((0, import_utils.createEl)("span", { className: "tmg-media-captions-text", innerHTML: parseVttText(l) })).parentElement);
808
+ !existing && this.el.append(wrapper);
809
+ const { offsetWidth: cWidth, offsetHeight: cHeight } = this.element;
810
+ this.isMain ? this.settings.css.currentCaptionsContainerHeight = `${cHeight}px` : this.el.style.setProperty("--tmg-media-current-captions-container-height", `${cHeight}px`);
811
+ this.isMain ? this.settings.css.currentCaptionsContainerWidth = `${cWidth}px` : this.el.style.setProperty("--tmg-media-current-captions-container-width", `${cWidth}px`);
812
+ if (allowOverride) {
813
+ if (cue.region) {
814
+ this.el.setAttribute("data-active", "");
815
+ const { width, lines: regionLines, viewportAnchorX: vpAnX, viewportAnchorY: vpAnY, scroll } = cue.region;
816
+ if (isDef(vpAnX)) this.el.style.setProperty("--tmg-media-current-captions-x", `${vpAnX}%`);
817
+ if (isDef(vpAnY)) this.el.style.setProperty("--tmg-media-current-captions-y", `${100 - Number(vpAnY)}%`);
818
+ if (isDef(width)) this.el.style.maxWidth = `${width}%`;
819
+ if (isDef(regionLines)) this.el.style.maxHeight = `${Number(regionLines) * (this.lineHPx / vCHeight * 100)}%`;
820
+ if (scroll === "up") {
821
+ this.el.style.maxHeight = `${regionLines * (this.lineHPx / vCHeight * 100)}%`;
822
+ this.el.dataset.scroll = scroll;
823
+ this.ctlr.config.stall(() => this.el.scrollTop = wrapper.scrollHeight);
824
+ }
825
+ } else {
826
+ if (isDef(cue.position) && cue.position !== "auto") {
827
+ const elHalfWPct = cWidth / vCWidth * 100 / 2, posOffset = cue.positionAlign === "line-left" ? 0 : cue.positionAlign === "line-right" ? -2 * elHalfWPct : -elHalfWPct;
828
+ this.el.style.setProperty("--tmg-media-current-captions-x", `calc(${cue.position}% + ${posOffset}% + ${elHalfWPct}%)`);
829
+ }
830
+ if (isDef(cue.line) && cue.line !== "auto") {
831
+ const line = parseIfPercent(cue.line, 100), lhPct = this.lineHPx / vCHeight * 100, elHalfHPct = cHeight / vCHeight * 100 / 2, lAlign = cue.lineAlign && cue.lineAlign !== "auto" ? cue.lineAlign : line < 0 ? "end" : "start", lineOffset = lAlign === "start" ? -2 * elHalfHPct : lAlign === "end" ? 0 : -elHalfHPct, bottomVal = cue.snapToLines ? line < 0 ? (Math.abs(line) - 1) * lhPct : 100 - line * lhPct : 100 - line;
832
+ this.el.style.setProperty("--tmg-media-current-captions-y", `calc(${bottomVal}% + ${lineOffset}% + ${elHalfHPct}%)`);
833
+ }
834
+ if (isDef(cue.size) && cue.size !== 100) this.el.style.maxWidth = `${cue.size}%`;
835
+ }
836
+ if (cue.vertical) this.el.style.writingMode = cue.vertical === "lr" ? "vertical-lr" : "vertical-rl";
837
+ }
838
+ this.karaokeNodes = Array.from(wrapper.querySelectorAll("[data-part='timed']")).map((el) => {
839
+ const [, m, s, ms] = (el.dataset.time || "").match(/(\d+):(\d+)\.(\d+)/) || [];
840
+ return { el, time: m ? +m * 60 + +s + +ms / 1e3 : 0 };
841
+ });
842
+ this.syncKaraoke();
843
+ }
844
+ syncKaraoke() {
845
+ if (!this.karaokeNodes) return;
846
+ for (const { el, time } of this.karaokeNodes) {
847
+ const isPast = safeNum(this.media.state.currentTime) > time;
848
+ el.toggleAttribute("data-past", isPast), el.toggleAttribute("data-future", !isPast);
849
+ }
850
+ }
851
+ handleDragStart(e) {
852
+ this.el.setPointerCapture(e.pointerId);
853
+ const { left, bottom } = getComputedStyle(this.element);
854
+ this.lastPosX = parseFloat(left), this.lastPosY = parseFloat(bottom);
855
+ this.lastPtrX = e.clientX, this.lastPtrY = e.clientY;
856
+ this.el.addEventListener("pointermove", this.handleDragging, { signal: this.signal });
857
+ this.el.addEventListener("pointerup", this.handleDragEnd, { signal: this.signal });
858
+ }
859
+ handleDragging(e) {
860
+ this.media.container.classList.add("tmg-media-captions-dragging");
861
+ this.ctlr.RAFLoop("captionsDragging", () => {
862
+ if (e.clientX === this.prevEX && e.clientY === this.prevEY) return;
863
+ this.prevEX = e.clientX, this.prevEY = e.clientY;
864
+ const { offsetWidth: ww, offsetHeight: hh } = this.media.container, { offsetWidth: w, offsetHeight: h } = this.element, posX = (0, import_utils4.clamp)(w / 2, this.lastPosX + (e.clientX - this.lastPtrX), ww - w / 2), posY = (0, import_utils4.clamp)(h / 2, this.lastPosY - (e.clientY - this.lastPtrY), hh - h / 2);
865
+ if (this.isMain) this.settings.css.currentCaptionsX = `${posX / ww * 100}%`, this.settings.css.currentCaptionsY = `${posY / hh * 100}%`;
866
+ else this.el.style.setProperty("--tmg-media-current-captions-x", this.dragX = `${posX / ww * 100}%`), this.el.style.setProperty("--tmg-media-current-captions-y", this.dragY = `${posY / hh * 100}%`);
867
+ });
868
+ }
869
+ handleDragEnd() {
870
+ this.ctlr.cancelRAFLoop("captionsDragging");
871
+ this.media.container.classList.remove("tmg-media-captions-dragging");
872
+ this.el.removeEventListener("pointermove", this.handleDragging);
873
+ this.el.removeEventListener("pointerup", this.handleDragEnd);
874
+ }
875
+ };
876
+ __publicField(CaptionsView, "componentName", "captionsview");
877
+
878
+ // src/ts/consts/config.ts
879
+ var import_sia_reactor8 = require("sia-reactor");
880
+
881
+ // src/ts/consts/actions.ts
882
+ var ACTIONS_BUILD = {
883
+ // --- Keyboard-only actions (no default voice triggers; path router covers voice) ---
884
+ playPause: { label: "Play / Pause" },
885
+ skipFwd: { label: "Skip Forward", notify: "fwd" },
886
+ skipBwd: { label: "Skip Back", notify: "bwd" },
887
+ volumeUp: { label: "Volume Up", notify: "volumeup" },
888
+ volumeDown: { label: "Volume Down", notify: "volumedown" },
889
+ brightnessUp: { label: "Brightness Up", notify: "brightnessup" },
890
+ brightnessDown: { label: "Brightness Down", notify: "brightnessdown" },
891
+ playbackRateUp: { label: "Playback Rate Up", notify: "playbackrateup" },
892
+ playbackRateDown: { label: "Playback Rate Down", notify: "playbackratedown" },
893
+ stepFwd: { label: "Step Forward", notify: "fwd" },
894
+ stepBwd: { label: "Step Back", notify: "bwd" },
895
+ prev: { label: "Previous", notify: "mediaprev" },
896
+ next: { label: "Next", notify: "medianext" },
897
+ captions: { label: "Captions", notify: "captions" },
898
+ captionsFontSizeUp: { label: "Captions: Font Size Up" },
899
+ captionsFontSizeDown: { label: "Captions: Font Size Down" },
900
+ captionsFontFamily: { label: "Captions: Font Family" },
901
+ captionsFontWeight: { label: "Captions: Font Weight" },
902
+ captionsFontVariant: { label: "Captions: Font Variant" },
903
+ captionsFontOpacity: { label: "Captions: Font Opacity" },
904
+ captionsBackgroundOpacity: { label: "Captions: Background Opacity" },
905
+ captionsWindowOpacity: { label: "Captions: Window Opacity" },
906
+ captionsCharacterEdgeStyle: { label: "Captions: Character Edge" },
907
+ captionsTextAlignment: { label: "Captions: Text Alignment" },
908
+ objectFit: { label: "Object Fit" },
909
+ capture: { label: "Capture Frame", notify: "capture" },
910
+ cast: { label: "Cast", notify: "cast" },
911
+ airplay: { label: "AirPlay", notify: "airplay" },
912
+ dark: { label: "Dark Mode" },
913
+ settings: { label: "Settings", zen: true },
914
+ // --- Logic-expressible actions (logic[] + keyboard, no default voice triggers) ---
915
+ mute: { label: "Mute", notify: "volumemuted" },
916
+ fullscreen: { label: "Fullscreen", notify: "fullscreen", logic: [{ path: "media.intent.fullscreen", op: "toggle" }] },
917
+ theater: { label: "Theater", notify: "theater", logic: [{ path: "media.intent.theater", op: "toggle" }] },
918
+ pictureInPicture: { label: "Picture in Picture", notify: "pictureinpicture", logic: [{ path: "media.intent.pictureInPicture", op: "toggle" }] },
919
+ timeFormat: { label: "Time Format" },
920
+ timeMode: { label: "Time Mode" },
921
+ // --- Compound (voice|time)-only actions (voice engine meta, path router can't reach these) ---
922
+ timeTravelUndo: { label: "Time Travel: Undo", zen: true },
923
+ timeTravelRedo: { label: "Time Travel: Redo", zen: true },
924
+ voiceQuit: { label: "Voice: Quit", zen: true },
925
+ voiceSleep: { label: "Voice: Sleep", zen: true },
926
+ voiceSubmit: { label: "Voice: Submit", zen: true },
927
+ voiceHistoryFirst: { label: "Voice: Go to Root", zen: true },
928
+ voiceHistoryPrev: { label: "Voice: Go Back", zen: true },
929
+ voiceHistoryNext: { label: "Voice: Go Forward", zen: true },
930
+ voiceHistoryLast: { label: "Voice: Go to Leaf", zen: true },
931
+ voiceHistoryClear: { label: "Voice: Clear History", zen: true },
932
+ voiceToggleOn: { label: "Voice: Toggle On", zen: true },
933
+ voiceToggleOff: { label: "Voice: Toggle Off", zen: true }
934
+ };
935
+
936
+ // src/ts/consts/config.ts
937
+ var CONFIG_BUILD = {
938
+ mediaType: "video",
939
+ mediaPlayer: "TMG",
940
+ media: { intent: { playsInline: true, textVisible: true, brightness: 100 } },
941
+ actions: Object.fromEntries(Object.entries(ACTIONS_BUILD).map(([k, v]) => [k, { id: k, ...v }])),
942
+ logicPathBlacklist: ["media.state", "media.status", "media.tech", "media.features", "media.type", "media.element", "media.pseudoElement", "media.container", "media.pseudoContainer"],
943
+ settings: {
944
+ // techOrder: [
945
+ // "youtube", // 1. Black-box (Regex must catch these URLs instantly)
946
+ // "vimeo", // 2. Black-box (Regex must catch these URLs instantly)
947
+ // "shaka", // 3. THE APEX PREDATOR (Catches .mpd and .m3u8 first)
948
+ // "hls", // 4. Fallback (Catches .m3u8 ONLY if Shaka is disabled/fails)
949
+ // "dash", // 5. Fallback (Catches .mpd ONLY if Shaka is disabled/fails)
950
+ // "html5", // 6. The Native Floor (Catches raw .mp4, .webm, .mp3, etc.)
951
+ // ],
952
+ },
953
+ debug: true,
954
+ devMode: import_sia_reactor8.CTX.isDevEnv,
955
+ noPlugList: []
956
+ // dev: "settings.persist"
957
+ };
958
+
959
+ // src/ts/core/registries.ts
960
+ var import_utils24 = require("sia-reactor/utils");
961
+ var BaseRegistry = class {
962
+ constructor() {
963
+ __publicField(this, "items", []);
964
+ }
965
+ register(name, value, config) {
966
+ return this.unregister(name), this.items.push({ name, value, config }), this;
967
+ }
968
+ unregister(name, idx = this.items.findIndex((i) => i.name === name)) {
969
+ return idx !== -1 && this.items.splice(idx, 1), this;
970
+ }
971
+ get(name) {
972
+ return this.items.find((i) => i.name === name)?.value;
973
+ }
974
+ getAll(order) {
975
+ if (!order) return this.items.map((i) => i.value);
976
+ return this.items.sort((a, b, ai = order.indexOf(a.name), bi = order.indexOf(b.name)) => ai === -1 && bi === -1 ? 0 : ai === -1 ? 1 : bi === -1 ? -1 : ai - bi).map((i) => i.value);
977
+ }
978
+ clear() {
979
+ return this.items = [], this;
980
+ }
981
+ };
982
+ var OrderedRegistry = class extends BaseRegistry {
983
+ registerFirst(name, value, config) {
984
+ return this.unregister(name), this.items.unshift({ name, value, config }), this;
985
+ }
986
+ registerBefore(key, name, value, config) {
987
+ this.unregister(name);
988
+ const idx = this.items.findIndex((i) => i.name === key);
989
+ return idx !== -1 ? (this.items.splice(idx, 0, { name, value, config }), this) : this.register(name, value, config);
990
+ }
991
+ registerAfter(key, name, value, config) {
992
+ this.unregister(name);
993
+ const idx = this.items.findIndex((i) => i.name === key);
994
+ return idx !== -1 ? (this.items.splice(idx + 1, 0, { name, value, config }), this) : this.register(name, value, config);
995
+ }
996
+ };
997
+ var _TechRegistry = class _TechRegistry extends OrderedRegistry {
998
+ static get(name) {
999
+ return this.instance.get(name);
1000
+ }
1001
+ static register(Tech) {
1002
+ this.instance.register(Tech.techName, Tech);
1003
+ }
1004
+ static unregister(name) {
1005
+ this.instance.unregister(name);
1006
+ }
1007
+ static registerBefore(key, Tech) {
1008
+ this.instance.registerBefore(key, Tech.techName, Tech);
1009
+ }
1010
+ static registerAfter(key, Tech) {
1011
+ this.instance.registerAfter(key, Tech.techName, Tech);
1012
+ }
1013
+ static pick(src, techOrder) {
1014
+ return this.instance.getAll(techOrder).find((Tech) => Tech.canPlaySource(src)) || null;
1015
+ }
1016
+ };
1017
+ __publicField(_TechRegistry, "instance", new _TechRegistry());
1018
+ var TechRegistry = _TechRegistry;
1019
+ var _PlugRegistry = class _PlugRegistry extends OrderedRegistry {
1020
+ static get(name) {
1021
+ return this.instance.get(name);
1022
+ }
1023
+ static register(Plug, editBuild = Plug.BUILD !== void 0) {
1024
+ this.instance.register(Plug.fullName, Plug);
1025
+ editBuild && (0, import_utils24.setPath)(CONFIG_BUILD, Plug.fullName, Plug.BUILD);
1026
+ }
1027
+ static unregister(fullName, editBuild = true) {
1028
+ this.instance.unregister(fullName);
1029
+ editBuild && (0, import_utils24.deletePath)(CONFIG_BUILD, fullName);
1030
+ }
1031
+ static registerBefore(key, Plug) {
1032
+ this.instance.registerBefore(key, Plug.fullName, Plug);
1033
+ }
1034
+ static registerAfter(key, Plug) {
1035
+ this.instance.registerAfter(key, Plug.fullName, Plug);
1036
+ }
1037
+ static getOrdered() {
1038
+ return this.instance.getAll();
1039
+ }
1040
+ };
1041
+ __publicField(_PlugRegistry, "instance", new _PlugRegistry());
1042
+ var PlugRegistry = _PlugRegistry;
1043
+ var _PinRegistry = class _PinRegistry extends BaseRegistry {
1044
+ static get(name) {
1045
+ return this.instance.get(name);
1046
+ }
1047
+ static register(Pin, editBuild = Pin.BUILD !== void 0) {
1048
+ this.instance.register(Pin.fullName, Pin);
1049
+ editBuild && (0, import_utils24.setPath)(CONFIG_BUILD, Pin.Plug.fullName + "." + Pin.pinName, Pin.BUILD);
1050
+ }
1051
+ static unregister(fullName, editBuild = true) {
1052
+ this.instance.unregister(fullName);
1053
+ editBuild && (0, import_utils24.deletePath)(fullName.slice(0, fullName.indexOf(".")) in CONFIG_BUILD ? CONFIG_BUILD : CONFIG_BUILD.settings, fullName);
1054
+ }
1055
+ };
1056
+ __publicField(_PinRegistry, "instance", new _PinRegistry());
1057
+ var PinRegistry = _PinRegistry;
1058
+ var _MenuRegistry = class _MenuRegistry extends BaseRegistry {
1059
+ static get(name) {
1060
+ return this.instance.get(name);
1061
+ }
1062
+ static register(name, factory) {
1063
+ this.instance.register(name, factory);
1064
+ }
1065
+ static unregister(name) {
1066
+ this.instance.unregister(name);
1067
+ }
1068
+ };
1069
+ __publicField(_MenuRegistry, "instance", new _MenuRegistry());
1070
+ var MenuRegistry = _MenuRegistry;
1071
+ var _ComponentRegistry = class _ComponentRegistry extends BaseRegistry {
1072
+ static get(name) {
1073
+ return this.instance.get(name);
1074
+ }
1075
+ static register(Comp) {
1076
+ this.instance.register(Comp.componentName, Comp);
1077
+ }
1078
+ static unregister(name) {
1079
+ this.instance.unregister(name);
1080
+ }
1081
+ static init(name, ctlr, config = {}) {
1082
+ const Comp = this.instance.get(name);
1083
+ if (!Comp) return null;
1084
+ const instance = new Comp(ctlr, config);
1085
+ return instance.create(), instance.setup();
1086
+ }
1087
+ static getAll() {
1088
+ return this.instance.getAll();
1089
+ }
1090
+ };
1091
+ __publicField(_ComponentRegistry, "instance", new _ComponentRegistry());
1092
+ var ComponentRegistry = _ComponentRegistry;
1093
+ var _IconRegistry = class _IconRegistry extends BaseRegistry {
1094
+ static get(name, raw = false, token = /\btmg-media-[^\s"']+\s*/g) {
1095
+ return (raw ? this.instance.get(name)?.replace(token, "") : this.instance.get(name)) || `<svg></svg>`;
1096
+ }
1097
+ static register(name, svg) {
1098
+ this.instance.register(name, svg);
1099
+ }
1100
+ static unregister(name) {
1101
+ this.instance.unregister(name);
1102
+ }
1103
+ // Bulk register a map of icons { play: "<svg...>", pause: "<svg...>" }
1104
+ static registerAll(icons) {
1105
+ for (const k of Object.keys(icons)) this.instance.register(k, icons[k]);
1106
+ }
1107
+ };
1108
+ __publicField(_IconRegistry, "instance", new _IconRegistry());
1109
+ var IconRegistry = _IconRegistry;
1110
+
1111
+ // src/ts/components/screenlock.ts
1112
+ var ScreenLockButton = class extends BaseComponent {
1113
+ get plug() {
1114
+ return this.ctlr.plug("settings.locked");
1115
+ }
1116
+ create() {
1117
+ return this.element = (0, import_utils.createEl)("button", { type: "button", className: "tmg-media-screen-locked-btn", tabIndex: -1, innerHTML: `${IconRegistry.get("lock")}${IconRegistry.get("unlock")}<p>Unlock controls?</p>` });
1118
+ }
1119
+ mount() {
1120
+ this.plug?.wrapper.prepend(this.el);
1121
+ }
1122
+ wire() {
1123
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1124
+ this.plug?.state.on("visible", this.syncUI, { init: true, signal: this.signal });
1125
+ this.syncARIA();
1126
+ }
1127
+ handleClick(e) {
1128
+ e.stopPropagation();
1129
+ this.plug?.delayOverlay();
1130
+ if (this.el.classList.contains("tmg-media-control-unlock")) this.media.intent.locked = false;
1131
+ else this.el.classList.add("tmg-media-control-unlock");
1132
+ }
1133
+ syncUI() {
1134
+ !this.plug?.state.visible && this.el.classList.remove("tmg-media-control-unlock");
1135
+ }
1136
+ syncARIA() {
1137
+ this.el.title = this.state.label = "Unlock Screen";
1138
+ this.setBtnARIA();
1139
+ }
1140
+ };
1141
+ __publicField(ScreenLockButton, "componentName", "screenlock");
1142
+
1143
+ // src/ts/components/controls/brightness/slider.ts
1144
+ var BrightnessSlider = class extends RangeInput {
1145
+ get plug() {
1146
+ return this.ctlr.plug("settings.brightness");
1147
+ }
1148
+ constructor(ctlr, config) {
1149
+ super(ctlr, { label: "Brightness Slider", ...config });
1150
+ }
1151
+ wire() {
1152
+ super.wire();
1153
+ this.config.set("value", (v) => Math.max(this.plug?.shouldToggle ? 0 : this.settings.brightness.min, v), { signal: this.signal });
1154
+ this.config.set("previewValue", (v) => Math.max(this.plug?.shouldToggle ? 0 : this.settings.brightness.min, v), { signal: this.signal });
1155
+ this.media.on("state.brightness", this.handleBrightnessState, { init: this.ctlr.payload.wired, signal: this.signal });
1156
+ this.ctlr.config.on("settings.brightness.max", this.handleBrightnessMax, { init: true, signal: this.signal });
1157
+ }
1158
+ scrub(value, bypass) {
1159
+ return super.scrub(value, bypass) ? (this.plug?.handleSliderInput(value), true) : false;
1160
+ }
1161
+ handleBrightnessState({ value }) {
1162
+ if (!this.state.scrubbing) this.config.previewValue = this.config.value = value;
1163
+ }
1164
+ handleBrightnessMax({ value }) {
1165
+ this.config.max = value;
1166
+ this.config.divs = value > 100 ? [{ value: 0, label: "" }, { value: 100, label: `<strong style="color: var(--tmg-media-range-track-boost-color, red); vertical-align: 4%;">\u2191</strong>` }] : [];
1167
+ }
1168
+ };
1169
+
1170
+ // src/ts/components/controls/brightness/index.ts
1171
+ var BrightnessControl = class extends BaseComponent {
1172
+ constructor() {
1173
+ super(...arguments);
1174
+ __publicField(this, "slider");
1175
+ __publicField(this, "button");
1176
+ __publicField(this, "sliderWrapper");
1177
+ __publicField(this, "delayActiveId");
1178
+ __publicField(this, "stopActive", () => {
1179
+ if (this.slider.el.matches(":active")) return this.delayActive();
1180
+ clearTimeout(this.delayActiveId), this.slider.inactive();
1181
+ this.slider.config.previewValue = this.slider.config.value;
1182
+ });
1183
+ }
1184
+ get plug() {
1185
+ return this.ctlr.plug("settings.brightness");
1186
+ }
1187
+ create() {
1188
+ this.slider = new BrightnessSlider(this.ctlr, this.config);
1189
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-brightness-container tmg-media-vb-container" }, { draggableControl: "", controlId: this.name });
1190
+ this.button = (0, import_utils.createEl)("button", { className: "tmg-media-dark-btn tmg-media-vb-btn", type: "button", innerHTML: IconRegistry.get("brightnesshigh") + IconRegistry.get("brightnesslow") + IconRegistry.get("brightnessdark") });
1191
+ this.sliderWrapper = (0, import_utils.createEl)("span", { className: "tmg-media-brightness-slider-wrapper tmg-media-vb-slider-wrapper" });
1192
+ const sliderEl = this.slider.create();
1193
+ sliderEl.classList.add("tmg-media-vb-slider", "tmg-media-brightness-slider");
1194
+ this.sliderWrapper.append(sliderEl);
1195
+ return this.el.append(this.button, this.sliderWrapper), this.el;
1196
+ }
1197
+ mount() {
1198
+ this.slider.setup();
1199
+ }
1200
+ wire() {
1201
+ this.button.addEventListener("click", this.handleClick, { signal: this.signal });
1202
+ this.el.addEventListener("mousemove", this.startActive, { signal: this.signal });
1203
+ this.el.addEventListener("mouseleave", this.stopActive, { signal: this.signal });
1204
+ this.slider.config.on("value", this.delayActive, { signal: this.signal });
1205
+ this.media.on("state.brightness", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
1206
+ this.media.on("state.dark", this.syncARIA, { signal: this.signal });
1207
+ this.ctlr.config.on("settings.keys.shortcuts.dark", this.syncARIA, { signal: this.signal });
1208
+ this.media.on("features.brightness", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1209
+ }
1210
+ handleClick() {
1211
+ this.plug?.toggle("auto");
1212
+ }
1213
+ startActive() {
1214
+ this.slider.active(), this.delayActive();
1215
+ }
1216
+ delayActive() {
1217
+ this.ctlr.plug("settings.overlay")?.delay();
1218
+ clearTimeout(this.delayActiveId);
1219
+ this.delayActiveId = (0, import_utils5.setTimeout)(() => this.stopActive(), this.settings.overlay.delay, this.signal);
1220
+ }
1221
+ syncARIA() {
1222
+ this.state.label = this.media.state.dark || this.media.state.brightness === 0 ? "Brighten" : "Darken";
1223
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.dark, this.settings.voice.commands.dark);
1224
+ this.button.title = this.state.label + this.state.cmd;
1225
+ this.setBtnARIA(void 0, this.button);
1226
+ }
1227
+ onDestroy() {
1228
+ this.slider.destroy(), super.onDestroy();
1229
+ }
1230
+ };
1231
+ __publicField(BrightnessControl, "componentName", "brightness");
1232
+ __publicField(BrightnessControl, "isControl", true);
1233
+
1234
+ // src/ts/utils/env.ts
1235
+ var win2 = "undefined" !== typeof window ? window : void 0;
1236
+ var nav = win2?.navigator;
1237
+ var ua = nav?.userAgent || "";
1238
+ var uaData = nav?.userAgentData;
1239
+ var IS_ANDROID = false;
1240
+ var IS_WINDOWS = false;
1241
+ var IS_FIREFOX = false;
1242
+ var IS_EDGE = false;
1243
+ var IS_CHROME = false;
1244
+ var IS_CHROMIUM = false;
1245
+ var IS_SAFARI = false;
1246
+ var IS_IE = false;
1247
+ var IS_TIZEN = false;
1248
+ var IS_WEBOS = false;
1249
+ var IS_IPOD = false;
1250
+ var IS_IPAD = false;
1251
+ var IS_IPHONE = false;
1252
+ var IOS_VERSION = null;
1253
+ var ANDROID_VERSION = null;
1254
+ var CHROME_VERSION = null;
1255
+ var CHROMIUM_VERSION = null;
1256
+ var IE_VERSION = null;
1257
+ var IS_IOS = false;
1258
+ var IS_MOBILE = false;
1259
+ var IS_SMART_TV = false;
1260
+ var IS_CHROMECAST_RECEIVER = Boolean(win2?.cast?.framework?.CastReceiverContext);
1261
+ var MSE_ENABLED = Boolean(win2 && ("MediaSource" in win2 || "webkitMediaSource" in win2));
1262
+ var TOUCH_ENABLED = Boolean(win2 && ("ontouchstart" in win2 || nav?.maxTouchPoints || win2.DocumentTouch && win2.document instanceof win2.DocumentTouch));
1263
+ if (uaData?.platform && uaData?.brands) {
1264
+ const pickVersion = (brands, needle) => brands.find((b) => b.brand === needle && b.version)?.version || null;
1265
+ IS_ANDROID = uaData.platform === "Android";
1266
+ IS_WINDOWS = uaData.platform === "Windows";
1267
+ IS_EDGE = uaData.brands.some((b) => b.brand === "Microsoft Edge");
1268
+ IS_CHROMIUM = uaData.brands.some((b) => b.brand === "Chromium" || b.brand === "Google Chrome");
1269
+ IS_CHROME = IS_CHROMIUM && !IS_EDGE;
1270
+ CHROMIUM_VERSION = CHROME_VERSION = pickVersion(uaData.brands, "Chromium") || pickVersion(uaData.brands, "Google Chrome");
1271
+ }
1272
+ if (true) {
1273
+ IS_ANDROID || (IS_ANDROID = /Android/i.test(ua));
1274
+ IS_WINDOWS || (IS_WINDOWS = /Windows/i.test(ua));
1275
+ IS_FIREFOX = /Firefox|FxiOS/i.test(ua);
1276
+ IS_EDGE || (IS_EDGE = /Edg|EdgiOS/i.test(ua));
1277
+ IS_CHROMIUM || (IS_CHROMIUM = /Chrome|CriOS/i.test(ua));
1278
+ IS_CHROME = IS_CHROMIUM && !IS_EDGE;
1279
+ IS_SAFARI = /Safari/i.test(ua) && !IS_CHROME && !IS_FIREFOX && !IS_EDGE;
1280
+ IS_IE = /MSIE|(Trident\/7.0)|(rv:11.0)/i.test(ua);
1281
+ IS_TIZEN = /Tizen/i.test(ua);
1282
+ IS_WEBOS = /Web0S/i.test(ua);
1283
+ IS_IPOD = /iPod/i.test(ua);
1284
+ IS_IPAD = /iPad/i.test(ua) || IS_SAFARI && TOUCH_ENABLED && !/iPhone/i.test(ua);
1285
+ IS_IPHONE = /iPhone/i.test(ua) && !IS_IPAD;
1286
+ IOS_VERSION = ua.match(/OS (\d+)_/i)?.[1] ?? null;
1287
+ ANDROID_VERSION = ua.match(/Android\s(\d+(?:\.\d+)+)/i)?.[1] ?? null;
1288
+ CHROMIUM_VERSION = CHROME_VERSION = ua.match(/(?:Chrome|CriOS)\/(\d+)/)?.[1] ?? CHROMIUM_VERSION;
1289
+ IE_VERSION = ua.match(/MSIE\s(\d+)\.\d/)?.[1] || (/Trident\/7.0/i.test(ua) && /rv:11.0/.test(ua) ? "11.0" : null);
1290
+ }
1291
+ IS_IOS = IS_IPHONE || IS_IPAD || IS_IPOD;
1292
+ IS_MOBILE = Boolean(IS_ANDROID || IS_IPHONE || IS_IPOD || IS_IPAD);
1293
+ IS_SMART_TV = IS_TIZEN || IS_WEBOS;
1294
+
1295
+ // src/ts/components/controls/timeline/index.ts
1296
+ var import_modules2 = require("sia-reactor/modules");
1297
+ var Timeline = class extends RangeInput {
1298
+ constructor(ctlr, config) {
1299
+ super(ctlr, config);
1300
+ __publicField(this, "chaptersWrapper");
1301
+ __publicField(this, "previewContainer");
1302
+ __publicField(this, "previewImg");
1303
+ __publicField(this, "previewCanvas");
1304
+ __publicField(this, "thumbnailImg");
1305
+ __publicField(this, "thumbnailCanvas");
1306
+ __publicField(this, "previewContext", null);
1307
+ __publicField(this, "thumbnailContext", null);
1308
+ __publicField(this, "wasPaused", false);
1309
+ __publicField(this, "scrubbingId", -1);
1310
+ }
1311
+ get plug() {
1312
+ return this.ctlr.plug("settings.time");
1313
+ }
1314
+ getProgress(time) {
1315
+ return getMediaProgress(this.media, time);
1316
+ }
1317
+ getTime(percent) {
1318
+ return getMediaTime(this.media, percent);
1319
+ }
1320
+ create() {
1321
+ this.element = super.create();
1322
+ this.el.dataset.controlId = this.name;
1323
+ this.previewContainer = (0, import_utils.createEl)("div", { className: "tmg-media-preview-container" });
1324
+ this.previewImg = (0, import_utils.createEl)("div", { className: "tmg-media-preview" });
1325
+ this.previewCanvas = (0, import_utils.createEl)("canvas", { className: "tmg-media-preview" });
1326
+ this.previewContext = this.previewCanvas.getContext("2d", { alpha: false });
1327
+ this.thumbnailImg = (0, import_utils.createEl)("div", { className: "tmg-media-thumbnail tmg-media-filtered tmg-media-object" });
1328
+ this.thumbnailCanvas = (0, import_utils.createEl)("canvas", { className: "tmg-media-thumbnail tmg-media-filtered tmg-media-object" });
1329
+ this.thumbnailContext = this.thumbnailCanvas.getContext("2d", { alpha: false });
1330
+ this.el.classList.add("tmg-media-timeline-container"), this.barsWrapper.classList.add("tmg-media-timeline-bars-wrapper", "tmg-media-timeline"), this.thumbEl.classList.add("tmg-media-timeline-thumb");
1331
+ this.previewContainer.append(this.previewImg, this.previewCanvas);
1332
+ return this.el.append(this.previewContainer), this.el;
1333
+ }
1334
+ mount() {
1335
+ this.ctlr.DOM.controlsContainer?.prepend(this.thumbnailImg, this.thumbnailCanvas);
1336
+ }
1337
+ wire() {
1338
+ super.wire();
1339
+ this.media.pseudoElement.addEventListener("timeupdate", this.syncCanvasPreviews, { signal: this.signal });
1340
+ this.state.on("scrubbing", this.handleScrubbing, { signal: this.signal });
1341
+ this.state.on("previewing", ({ value }) => value ? (this.media.container.classList.add("tmg-media-previewing"), this.clearCanvasPreviews()) : (0, import_utils5.setTimeout)(() => this.media.container.classList.remove("tmg-media-previewing"), 0, this.signal), { signal: this.signal });
1342
+ this.state.on("cancelScrub", ({ value }) => this.ctlr.plug("settings.notifiers")?.comp("cancelscrubnotifier")?.el.classList.toggle("tmg-media-control-active", value), { signal: this.signal });
1343
+ this.config.on("previewValue", this.syncPreviewText, { init: true, signal: this.signal });
1344
+ this.config.on("previews", this.handlePreviews, { init: true, signal: this.signal });
1345
+ this.config.on("autopause", ({ value }) => [this.thumbnailCanvas, this.thumbnailImg].forEach((el) => el.classList.toggle("tmg-media-control-hidden", !value)), { init: true, signal: this.signal });
1346
+ this.config.on("compact", ({ value }) => this.el.classList.toggle("tmg-media-control-compact", value), { init: true, signal: this.signal });
1347
+ this.config.on("bufferMarks", () => this.syncMarks(this.config.marks, true), { init: true, signal: this.signal });
1348
+ this.config.on("playedMarks", () => this.syncMarks(this.config.marks, true), { init: true, signal: this.signal });
1349
+ this.media.on("state.paused", ({ value }) => !value ? this.ctlr.RAFLoop(`${this.config.label}Updating`, this.syncValue, this.signal) : this.ctlr.cancelRAFLoop(`${this.config.label}Updating`), { init: this.ctlr.payload.wired, signal: this.signal });
1350
+ this.media.on("state.currentTime", this.handleCurrentTime, { init: this.ctlr.payload.wired, signal: this.signal });
1351
+ this.media.on("intent.currentTime", this.handleCurrentTime, { signal: this.signal });
1352
+ this.media.on("status.buffered", this.handleBufferedStatus, { init: this.ctlr.payload.wired, signal: this.signal });
1353
+ this.media.on("status.played", () => this.config.playedMarks && this.syncMarks(this.config.marks, true), { init: this.ctlr.payload.wired, signal: this.signal });
1354
+ this.media.on("status.duration", ({ value }) => this.el.ariaValueMax = String(Math.floor(value)), { init: this.ctlr.payload.wired, signal: this.signal });
1355
+ this.media.on("status.error", ({ value }) => value && this.syncChunks("buffer", 0), { init: this.ctlr.payload.wired, signal: this.signal });
1356
+ this.media.on("status.isLive", ({ value }) => this.config.readonly = value && !this.media.status.canSeekLive, { init: this.ctlr.payload.wired, signal: this.signal });
1357
+ this.media.on("status.canSeekLive", ({ value }) => this.config.readonly = !value && !!this.media.status.isLive, { init: this.ctlr.payload.wired, signal: this.signal });
1358
+ this.media.on("settings.metadata.chapterInfo", this.handleMetadataChapterInfoSetting, { init: this.ctlr.payload.wired, signal: this.signal });
1359
+ this.ctlr.config.on("settings.time.format", this.syncPreviewText, { init: true, signal: this.signal });
1360
+ this.ctlr.config.on("settings.time.mode", this.syncPreviewText, { signal: this.signal });
1361
+ this.ctlr.config.on("settings.css.currentObjectWidth", ({ value }) => this.thumbnailCanvas.width = parseInt(value), { init: true, signal: this.signal });
1362
+ this.ctlr.config.on("settings.css.currentObjectHeight", ({ value }) => this.thumbnailCanvas.height = parseInt(value), { init: true, signal: this.signal });
1363
+ }
1364
+ scrub(value, bypass) {
1365
+ return super.scrub(value, bypass) ? (!bypass && (this.media.intent.currentTime = safeNum(this.getTime(value / 100))), true) : false;
1366
+ }
1367
+ handleCurrentTime({ target, rejectable, resolved }) {
1368
+ if (this.state.scrubbing || rejectable && !resolved) return;
1369
+ if (this.media.state.paused) this.syncValue(false, target.value);
1370
+ this.el.ariaValueText = `${formatMediaTime({ time: target.value, format: "human-long" })} of ${formatMediaTime({ time: this.media.status.duration, format: "human-long" })}`;
1371
+ }
1372
+ // !a full embodiment for near native range perf but close enough
1373
+ handleBufferedStatus({ value }) {
1374
+ this.config.bufferMarks && this.syncMarks(this.config.marks, true);
1375
+ for (let i = 0; i < value.length; i++) if (value.start(value.length - 1 - i) < this.media.state.currentTime) return void this.syncChunks("buffer", this.getPosValue(safeNum(value.end(value.length - 1 - i) / getMediaMax(this.media))));
1376
+ }
1377
+ syncValue(auto = true, value = this.media.state.currentTime) {
1378
+ if (auto && !this.ctlr.state.mediaIntersecting) return;
1379
+ if (!this.state.scrubbing) this.config.value = safeNum(this.getProgress(value)) * 100;
1380
+ }
1381
+ handleScrubbing({ value }) {
1382
+ this.media.container.classList.toggle("tmg-media-scrubbing", value);
1383
+ if (!value) {
1384
+ this.config.autopause && (0, import_modules2.silence)(() => this.media.intent.paused = this.wasPaused);
1385
+ cancelAnimationFrame(this.scrubbingId);
1386
+ this.ctlr.plug("settings.notifiers")?.comp("scrubnotifier")?.inactive();
1387
+ } else {
1388
+ this.wasPaused = this.media.state.paused;
1389
+ this.scrubbingId = (0, import_utils5.requestAnimationFrame)(() => {
1390
+ this.config.autopause && (0, import_modules2.silence)(() => this.media.intent.paused = true);
1391
+ IS_MOBILE && this.ctlr.plug("settings.notifiers")?.comp("scrubnotifier")?.active();
1392
+ }, this.signal);
1393
+ this.clearCanvasPreviews();
1394
+ }
1395
+ }
1396
+ handlePreviews({ target }) {
1397
+ const value = target.value === true ? {} : target.value;
1398
+ this.media.container.classList.toggle("tmg-media-no-previews", !value || this.media.type !== "video");
1399
+ if (!value || this.media.type !== "video") return void (this.media.container.dataset.previewType = "none");
1400
+ const manual = value.address && (value.spf || value.cols && value.rows), type = manual ? value.cols && value.rows ? "sprite" : "image" : "canvas";
1401
+ this.media.container.dataset.previewType = type;
1402
+ if (type === "sprite" && value.address) this.settings.css.currentPreviewUrl = this.settings.css.currentThumbnailUrl = `url(${value.address})`;
1403
+ else this.settings.css.currentPreviewPosition = this.settings.css.currentThumbnailPosition = "center";
1404
+ }
1405
+ handleMetadataChapterInfoSetting({ value }) {
1406
+ if (!value || value.length < 2) return void (this.config.divs = []);
1407
+ const divs = [];
1408
+ for (let i = 0, len = value.length; i < len; i++) divs.push({ value: value[i].startTime / getMediaMax(this.media) * 100, label: value[i].title });
1409
+ this.config.divs = divs;
1410
+ }
1411
+ stopScrubbing() {
1412
+ if (!this.state.scrubbing) return;
1413
+ if (!this.state.cancelScrub) this.media.intent.currentTime = this.getTime(this.config.value / 100);
1414
+ super.stopScrubbing();
1415
+ }
1416
+ onInput(_e, pos) {
1417
+ this.ctlr.throttle(
1418
+ `${this.config.label}Previewing`,
1419
+ () => {
1420
+ this.syncElPos(this.previewContainer, !this.config.compact ? pos : 0.5, false, true);
1421
+ const previews = this.config.previews, type = this.media.container.dataset.previewType;
1422
+ if (type === "sprite" && previews && !isBool(previews) && previews.cols && previews.rows) {
1423
+ const frameIndex = Math.floor(pos * getMediaMax(this.media) / (previews.spf || 1)) || 1, { cols, rows } = previews, clampedI = Math.min(frameIndex, cols * rows - 1), xPercent = clampedI % cols * 100 / (cols - 1 || 1), yPercent = Math.floor(clampedI / cols) * 100 / (rows - 1 || 1);
1424
+ if (!this.config.compact) this.settings.css.currentPreviewPosition = `${xPercent}% ${yPercent}%`;
1425
+ if (this.state.scrubbing && this.config.autopause) this.settings.css.currentThumbnailPosition = `${xPercent}% ${yPercent}%`;
1426
+ } else if (type === "image" && previews && !isBool(previews) && previews.address) {
1427
+ const frameIndex = Math.floor(pos * getMediaMax(this.media) / (previews.spf || 1)) || 1, url = `url(${previews.address.replace("$", String(frameIndex))})`;
1428
+ if (!this.config.compact) this.settings.css.currentPreviewUrl = url;
1429
+ if (this.state.scrubbing && this.config.autopause) this.settings.css.currentThumbnailUrl = url;
1430
+ } else if (previews && !this.ctlr.state.frameReadyPromise) this.media.pseudoElement.currentTime = safeNum(this.getTime(pos));
1431
+ },
1432
+ 30
1433
+ );
1434
+ }
1435
+ syncPreviewText() {
1436
+ if (this.plug) this.previewContainer.dataset.previewText = `${this.plug.toTimeText(this.getTime(this.config.previewValue / 100), true)} ${this.getValueChunk(this.config.previewValue)?.label || ""}`.trim();
1437
+ }
1438
+ syncCanvasPreviews() {
1439
+ if (!this.previewContext || !this.thumbnailContext || !this.media.status.loadedData || this.ctlr.state.frameReadyPromise || this.media.pseudoElement.readyState < 2) return;
1440
+ this.ctlr.throttle(
1441
+ "canvasPreviewSync",
1442
+ () => {
1443
+ this.previewCanvas.width = this.previewCanvas.clientWidth || this.previewCanvas.width;
1444
+ this.previewCanvas.height = this.previewCanvas.clientHeight || this.previewCanvas.height;
1445
+ if (!this.config.compact) this.previewContext.drawImage(this.media.pseudoElement, 0, 0, this.previewCanvas.width, this.previewCanvas.height);
1446
+ if (this.state.scrubbing && this.config.autopause) this.thumbnailContext.drawImage(this.media.pseudoElement, 0, 0, this.thumbnailCanvas.width, this.thumbnailCanvas.height);
1447
+ },
1448
+ 33
1449
+ );
1450
+ }
1451
+ clearCanvasPreviews(bool = this.media.container.dataset.previewType === "canvas" && this.media.pseudoElement.readyState < 2) {
1452
+ bool && (this.ctlr.setCanvasFallback(this.previewCanvas, this.previewContext), this.ctlr.setCanvasFallback(this.thumbnailCanvas, this.thumbnailContext));
1453
+ }
1454
+ syncDivs(divs = this.config.divs) {
1455
+ super.syncDivs(divs);
1456
+ for (let i = 0, len = this.chunks.length; i < len; i++) {
1457
+ const c = this.chunks[i];
1458
+ c.el.classList.add("tmg-media-timeline-chapter"), c.base.classList.add("tmg-media-timeline-base-bar", "tmg-media-timeline-bar"), c.preview.classList.add("tmg-media-timeline-preview-bar", "tmg-media-timeline-bar"), c.value.classList.add("tmg-media-timeline-played-bar", "tmg-media-timeline-bar");
1459
+ c.el.insertBefore(c.buffer = (0, import_utils.createEl)("div", { className: "tmg-media-range-bar tmg-media-buffered-bar tmg-media-timeline-buffered-bar tmg-media-timeline-bar" }), c.value);
1460
+ }
1461
+ this.handleBufferedStatus({ value: this.media.status.buffered });
1462
+ }
1463
+ syncMarks(marks = this.config.marks, extras = false) {
1464
+ if (extras && !this.ctlr.payload.wired) return;
1465
+ const agg = [...marks], buf = this.media.status.buffered, ply = this.media.status.played, max = getMediaMax(this.media) || 1;
1466
+ if (this.config.bufferMarks)
1467
+ for (let i = 0, len = buf.length; i < len; i++) {
1468
+ const start = buf.start(i), end = buf.end(i);
1469
+ agg.push({ start: start / max * 100, end: end / max * 100, label: `${formatMediaTime({ time: start })}${end > start + 1 ? ` - ${formatMediaTime({ time: end })}` : ""} Loaded`, type: "buffered" });
1470
+ }
1471
+ if (this.config.playedMarks)
1472
+ for (let i = 0, len = ply.length; i < len; i++) {
1473
+ const start = ply.start(i), end = ply.end(i);
1474
+ agg.push({ start: start / max * 100, end: end / max * 100, label: `${formatMediaTime({ time: start })}${end > start + 1 ? ` - ${formatMediaTime({ time: end })}` : ""} Played`, type: "played" });
1475
+ }
1476
+ super.syncMarks(agg);
1477
+ }
1478
+ };
1479
+ __publicField(Timeline, "componentName", "timeline");
1480
+ // enforced name
1481
+ __publicField(Timeline, "isControl", true);
1482
+
1483
+ // src/ts/components/controls/volume/slider.ts
1484
+ var VolumeSlider = class extends RangeInput {
1485
+ get plug() {
1486
+ return this.ctlr.plug("settings.volume");
1487
+ }
1488
+ constructor(ctlr, config) {
1489
+ super(ctlr, { label: "Volume Slider", ...config });
1490
+ }
1491
+ wire() {
1492
+ super.wire();
1493
+ this.config.set("value", (v) => Math.max(this.plug?.shouldToggle ? 0 : this.settings.volume.min, v), { signal: this.signal });
1494
+ this.config.set("previewValue", (v) => Math.max(this.plug?.shouldToggle ? 0 : this.settings.volume.min, v), { signal: this.signal });
1495
+ this.media.on("state.volume", this.handleVolumeState, { init: this.ctlr.payload.wired, signal: this.signal });
1496
+ this.ctlr.config.on("settings.volume.max", this.handleVolumeMax, { init: true, signal: this.signal });
1497
+ }
1498
+ scrub(value, bypass) {
1499
+ return super.scrub(value, bypass) ? (this.plug?.handleSliderInput(value), true) : false;
1500
+ }
1501
+ handleVolumeState({ value }) {
1502
+ if (!this.state.scrubbing) this.config.previewValue = this.config.value = value;
1503
+ }
1504
+ handleVolumeMax({ value }) {
1505
+ this.config.max = value;
1506
+ this.config.divs = value > 100 ? [{ value: 0, label: "" }, { value: 100, label: `<strong style="color: var(--tmg-media-range-track-boost-color, red); vertical-align: 4%;">\u2191</strong>` }] : [];
1507
+ }
1508
+ };
1509
+
1510
+ // src/ts/components/controls/volume/index.ts
1511
+ var VolumeControl = class extends BaseComponent {
1512
+ constructor() {
1513
+ super(...arguments);
1514
+ __publicField(this, "slider");
1515
+ __publicField(this, "button");
1516
+ __publicField(this, "sliderWrapper");
1517
+ __publicField(this, "delayActiveId");
1518
+ }
1519
+ get plug() {
1520
+ return this.ctlr.plug("settings.volume");
1521
+ }
1522
+ create() {
1523
+ this.slider = new VolumeSlider(this.ctlr, this.config);
1524
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-volume-container tmg-media-vb-container" }, { draggableControl: "", controlId: this.name });
1525
+ this.button = (0, import_utils.createEl)("button", { className: "tmg-media-mute-btn tmg-media-vb-btn", type: "button", innerHTML: IconRegistry.get("volumehigh") + IconRegistry.get("volumelow") + IconRegistry.get("volumemuted") });
1526
+ this.sliderWrapper = (0, import_utils.createEl)("span", { className: "tmg-media-volume-slider-wrapper tmg-media-vb-slider-wrapper" });
1527
+ const sliderEl = this.slider.create();
1528
+ sliderEl.classList.add("tmg-media-vb-slider", "tmg-media-volume-slider");
1529
+ this.sliderWrapper.append(sliderEl);
1530
+ return this.el.append(this.button, this.sliderWrapper), this.el;
1531
+ }
1532
+ mount() {
1533
+ this.slider.setup();
1534
+ }
1535
+ wire() {
1536
+ this.media.on("features.volume", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1537
+ this.button.addEventListener("click", this.handleClick, { signal: this.signal });
1538
+ this.el.addEventListener("mousemove", this.startActive, { signal: this.signal });
1539
+ this.el.addEventListener("mouseleave", this.stopActive, { signal: this.signal });
1540
+ this.slider.config.on("value", this.delayActive, { signal: this.signal });
1541
+ this.media.on("state.volume", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
1542
+ this.media.on("state.muted", this.syncARIA, { signal: this.signal });
1543
+ this.ctlr.config.on("settings.keys.shortcuts.mute", this.syncARIA, { signal: this.signal });
1544
+ }
1545
+ handleClick() {
1546
+ this.plug?.toggle("auto");
1547
+ }
1548
+ startActive() {
1549
+ this.slider.active(), this.delayActive();
1550
+ }
1551
+ delayActive() {
1552
+ this.ctlr.plug("settings.overlay")?.delay();
1553
+ clearTimeout(this.delayActiveId);
1554
+ this.delayActiveId = (0, import_utils5.setTimeout)(() => this.stopActive(), this.settings.overlay.delay, this.signal);
1555
+ }
1556
+ stopActive() {
1557
+ if (this.slider.el.matches(":active")) return this.delayActive();
1558
+ clearTimeout(this.delayActiveId), this.slider.inactive();
1559
+ this.slider.config.previewValue = this.slider.config.value;
1560
+ }
1561
+ syncARIA() {
1562
+ this.state.label = this.media.state.muted || this.media.state.volume === 0 ? "Unmute" : "Mute";
1563
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.mute, this.settings.voice.commands.mute);
1564
+ this.button.title = this.state.label + this.state.cmd;
1565
+ this.setBtnARIA(void 0, this.button);
1566
+ }
1567
+ onDestroy() {
1568
+ this.slider.destroy(), super.onDestroy();
1569
+ }
1570
+ };
1571
+ __publicField(VolumeControl, "componentName", "volume");
1572
+ __publicField(VolumeControl, "isControl", true);
1573
+
1574
+ // src/ts/components/controls/airplay.ts
1575
+ var AirPlayButton = class extends BaseComponent {
1576
+ create() {
1577
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-airplay-btn", type: "button", innerHTML: IconRegistry.get("airplay") }, { draggableControl: "", controlId: this.name });
1578
+ }
1579
+ wire() {
1580
+ this.media.on("features.airplay", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1581
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1582
+ this.media.on("state.airplay", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
1583
+ this.ctlr.config.on("settings.keys.shortcuts.airplay", this.syncARIA, { init: true, signal: this.signal });
1584
+ this.ctlr.config.on("settings.voice.commands.airplay", this.syncARIA, { signal: this.signal });
1585
+ }
1586
+ handleClick() {
1587
+ if (!this.media.state.airplay) this.media.intent.airplay = true;
1588
+ }
1589
+ syncARIA() {
1590
+ this.state.label = this.media.state.airplay ? "AirPlay Active" : "AirPlay";
1591
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.airplay, this.settings.voice.commands.airplay);
1592
+ this.el.title = this.state.label + this.state.cmd;
1593
+ this.setBtnARIA();
1594
+ }
1595
+ };
1596
+ __publicField(AirPlayButton, "componentName", "airplay");
1597
+ __publicField(AirPlayButton, "isControl", true);
1598
+
1599
+ // src/ts/components/controls/backward10.ts
1600
+ var Backward10Button = class extends BaseComponent {
1601
+ create() {
1602
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-backward10-btn", type: "button", innerHTML: IconRegistry.get("backward10") }, { draggableControl: "", controlId: this.name });
1603
+ }
1604
+ wire() {
1605
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1606
+ this.syncARIA();
1607
+ }
1608
+ handleClick() {
1609
+ this.media.intent.currentTime -= 10;
1610
+ }
1611
+ syncARIA() {
1612
+ this.state.label = "Backward 10s";
1613
+ this.el.title = this.state.label + this.state.cmd;
1614
+ this.setBtnARIA();
1615
+ }
1616
+ };
1617
+ __publicField(Backward10Button, "componentName", "backward10");
1618
+ __publicField(Backward10Button, "isControl", true);
1619
+
1620
+ // src/ts/components/controls/bignext.ts
1621
+ var BigNextButton = class extends BaseComponent {
1622
+ get plug() {
1623
+ return this.ctlr.plug("playlist");
1624
+ }
1625
+ create() {
1626
+ this.element = (0, import_utils.createEl)("button", { className: "tmg-media-big-next-btn", type: "button", innerHTML: IconRegistry.get("next") }, { draggableControl: "", dragId: "big", controlId: this.name });
1627
+ return this.disable(), this.element;
1628
+ }
1629
+ wire() {
1630
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1631
+ this.plug?.state.on("currentIndex", () => this[this.plug.atLast ? "disable" : "enable"](), { init: true, signal: this.signal });
1632
+ this.ctlr.config.on("playlist", this.syncUI, { signal: this.signal, init: true, depth: 1 });
1633
+ this.ctlr.config.on("settings.keys.shortcuts.next", this.syncARIA, { init: true, signal: this.signal });
1634
+ this.ctlr.config.on("settings.voice.commands.next", this.syncARIA, { signal: this.signal });
1635
+ }
1636
+ handleClick() {
1637
+ this.plug?.next();
1638
+ }
1639
+ syncUI() {
1640
+ this[this.ctlr.config.playlist.content && this.ctlr.config.playlist.content.length > 1 ? "show" : "hide"]();
1641
+ }
1642
+ syncARIA() {
1643
+ this.state.label = "Next";
1644
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.next, this.settings.voice.commands.next);
1645
+ this.el.title = this.state.label + this.state.cmd;
1646
+ this.setBtnARIA();
1647
+ }
1648
+ };
1649
+ __publicField(BigNextButton, "componentName", "bignext");
1650
+ __publicField(BigNextButton, "isControl", true);
1651
+
1652
+ // src/ts/components/controls/bigplaypause.ts
1653
+ var BigPlayPauseButton = class extends BaseComponent {
1654
+ create() {
1655
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-big-play-pause-btn", type: "button", innerHTML: IconRegistry.get("play") + IconRegistry.get("pause") + IconRegistry.get("replay") }, { draggableControl: "", dragId: "big", controlId: this.name });
1656
+ }
1657
+ wire() {
1658
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1659
+ this.media.on("state.paused", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
1660
+ this.media.on("status.ended", this.syncARIA, { signal: this.signal });
1661
+ this.ctlr.config.on("settings.keys.shortcuts.playPause", this.syncARIA, { signal: this.signal });
1662
+ }
1663
+ handleClick() {
1664
+ this.media.intent.paused = !this.media.state.paused;
1665
+ }
1666
+ syncARIA() {
1667
+ this.state.label = this.media.status.ended ? "Replay" : this.media.state.paused ? "Play" : "Pause";
1668
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.playPause, this.settings.voice.commands.playPause);
1669
+ this.el.title = this.state.label + this.state.cmd;
1670
+ this.setBtnARIA();
1671
+ }
1672
+ };
1673
+ __publicField(BigPlayPauseButton, "componentName", "bigplaypause");
1674
+ __publicField(BigPlayPauseButton, "isControl", true);
1675
+
1676
+ // src/ts/components/controls/bigprev.ts
1677
+ var BigPrevButton = class extends BaseComponent {
1678
+ get plug() {
1679
+ return this.ctlr.plug("playlist");
1680
+ }
1681
+ create() {
1682
+ this.element = (0, import_utils.createEl)("button", { className: "tmg-media-big-prev-btn", type: "button", innerHTML: IconRegistry.get("prev") }, { draggableControl: "", dragId: "big", controlId: this.name });
1683
+ return this.disable(), this.element;
1684
+ }
1685
+ wire() {
1686
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1687
+ this.plug?.state.on("currentIndex", () => this[this.plug.atFirst ? "disable" : "enable"](), { init: true, signal: this.signal });
1688
+ this.ctlr.config.on("playlist", this.syncUI, { signal: this.signal, init: true, depth: 1 });
1689
+ this.ctlr.config.on("settings.keys.shortcuts.prev", this.syncARIA, { init: true, signal: this.signal });
1690
+ this.ctlr.config.on("settings.voice.commands.prev", this.syncARIA, { signal: this.signal });
1691
+ }
1692
+ handleClick() {
1693
+ this.plug?.previous();
1694
+ }
1695
+ syncUI() {
1696
+ this[this.ctlr.config.playlist.content && this.ctlr.config.playlist.content.length > 1 ? "show" : "hide"]();
1697
+ }
1698
+ syncARIA() {
1699
+ this.state.label = "Previous";
1700
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.prev, this.settings.voice.commands.prev);
1701
+ this.el.title = this.state.label + this.state.cmd;
1702
+ this.setBtnARIA();
1703
+ }
1704
+ };
1705
+ __publicField(BigPrevButton, "componentName", "bigprev");
1706
+ __publicField(BigPrevButton, "isControl", true);
1707
+
1708
+ // src/ts/components/controls/captions.ts
1709
+ var CaptionsButton = class extends BaseComponent {
1710
+ get plug() {
1711
+ return this.ctlr.plug("settings.captions");
1712
+ }
1713
+ create() {
1714
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-captions-btn", type: "button", innerHTML: IconRegistry.get("subtitles") + IconRegistry.get("captions") }, { draggableControl: "", controlId: this.name });
1715
+ }
1716
+ wire() {
1717
+ this.media.on("features.textVisible", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1718
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1719
+ this.media.on("state.currentTextTrack", this.syncUI, { init: this.ctlr.payload.wired, signal: this.signal });
1720
+ this.media.on("status.textTracks", this.syncUI, { signal: this.signal });
1721
+ this.ctlr.config.on("settings.keys.shortcuts.captions", this.syncARIA, { init: true, signal: this.signal });
1722
+ this.ctlr.config.on("settings.voice.commands.captions", this.syncARIA, { signal: this.signal });
1723
+ }
1724
+ handleClick() {
1725
+ this.plug?.toggleVisible();
1726
+ }
1727
+ syncUI() {
1728
+ this[!this.plug?.canVisible ? "disable" : "enable"]();
1729
+ this.syncARIA();
1730
+ }
1731
+ syncARIA() {
1732
+ this.state.label = capitalize(this.plug?.getTrackKind()) || "Captions";
1733
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.captions, this.settings.voice.commands.captions);
1734
+ this.el.title = this.state.label + this.state.cmd;
1735
+ this.setBtnARIA();
1736
+ }
1737
+ };
1738
+ __publicField(CaptionsButton, "componentName", "captions");
1739
+ __publicField(CaptionsButton, "isControl", true);
1740
+
1741
+ // src/ts/components/controls/capture.ts
1742
+ var CaptureButton = class extends BaseComponent {
1743
+ get plug() {
1744
+ return this.ctlr.plug("settings.frame");
1745
+ }
1746
+ create() {
1747
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-capture-btn", type: "button", innerHTML: IconRegistry.get("capture") }, { draggableControl: "", controlId: this.name });
1748
+ }
1749
+ wire() {
1750
+ this.media.on("features.frameCapture", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1751
+ addSafeClicks(this.el, this.handleClick, this.handleDblClick, { signal: this.signal });
1752
+ this.ctlr.config.on("settings.keys.shortcuts.capture", this.syncARIA, { init: true, signal: this.signal });
1753
+ this.ctlr.config.on("settings.voice.commands.capture", this.syncARIA, { signal: this.signal });
1754
+ }
1755
+ handleClick() {
1756
+ this.plug?.capture();
1757
+ }
1758
+ handleDblClick() {
1759
+ this.plug?.capture("monochrome");
1760
+ }
1761
+ syncARIA() {
1762
+ this.state.label = "Capture frame";
1763
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.capture, this.settings.voice.commands.capture);
1764
+ this.el.title = `Capture${this.state.cmd} \u2194 DblClick\u2192B&W (+alt)`;
1765
+ this.setBtnARIA("Capture monochrome frame");
1766
+ }
1767
+ };
1768
+ __publicField(CaptureButton, "componentName", "capture");
1769
+ __publicField(CaptureButton, "isControl", true);
1770
+
1771
+ // src/ts/components/controls/cast.ts
1772
+ var CastButton = class extends BaseComponent {
1773
+ create() {
1774
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-cast-btn", type: "button", innerHTML: IconRegistry.get("cast") }, { draggableControl: "", controlId: this.name });
1775
+ }
1776
+ wire() {
1777
+ this.media.on("features.cast", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1778
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1779
+ this.media.on("state.cast", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
1780
+ this.ctlr.config.on("settings.keys.shortcuts.cast", this.syncARIA, { init: true, signal: this.signal });
1781
+ this.ctlr.config.on("settings.voice.commands.cast", this.syncARIA, { signal: this.signal });
1782
+ }
1783
+ handleClick() {
1784
+ this.media.intent.cast = !this.media.state.cast;
1785
+ }
1786
+ syncARIA() {
1787
+ this.state.label = this.media.state.cast ? "Stop casting" : "Cast to TV";
1788
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.cast, this.settings.voice.commands.cast);
1789
+ this.el.title = this.state.label + this.state.cmd;
1790
+ this.setBtnARIA();
1791
+ }
1792
+ };
1793
+ __publicField(CastButton, "componentName", "cast");
1794
+ __publicField(CastButton, "isControl", true);
1795
+
1796
+ // src/ts/components/controls/chapter.ts
1797
+ var ChapterButton = class extends BaseComponent {
1798
+ constructor() {
1799
+ super(...arguments);
1800
+ __publicField(this, "textEl");
1801
+ __publicField(this, "iconEl");
1802
+ }
1803
+ create() {
1804
+ this.element = (0, import_utils.createEl)("button", { className: "tmg-media-chapter-btn tmg-media-control-text-btn", type: "button" }, { draggableControl: "", controlId: this.name });
1805
+ this.iconEl = (0, import_utils.createEl)("span", { className: "tmg-media-chapter-icon" });
1806
+ this.textEl = (0, import_utils.createEl)("span", { className: "tmg-media-chapter-text" });
1807
+ return this.element.append(this.textEl, this.iconEl), this.el;
1808
+ }
1809
+ wire() {
1810
+ this.media.on("features.currentChapter", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1811
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1812
+ this.media.on("state.currentChapter", this.syncUI, { init: this.ctlr.payload.wired, signal: this.signal });
1813
+ this.media.on("settings.metadata.chapterInfo", this.syncUI, { init: this.ctlr.payload.wired, signal: this.signal });
1814
+ this.syncARIA();
1815
+ }
1816
+ async handleClick() {
1817
+ const view = this.ctlr.plug("settings.settingsView");
1818
+ if (view) {
1819
+ view.menu.open(this.el);
1820
+ view.menu.goTo("chapters");
1821
+ }
1822
+ }
1823
+ syncUI() {
1824
+ const idx = this.media.state.currentChapter, chapters2 = this.media.settings.metadata.chapterInfo;
1825
+ if (idx === -1 || !chapters2 || !chapters2[idx]) return void (this.textEl.textContent = "", this.hide());
1826
+ this.textEl.textContent = chapters2[idx].title || `Chapter ${idx + 1}`, this.show();
1827
+ }
1828
+ syncARIA() {
1829
+ this.el.title = this.state.label = "View Chapter";
1830
+ this.setBtnARIA();
1831
+ }
1832
+ };
1833
+ __publicField(ChapterButton, "componentName", "chapter");
1834
+ __publicField(ChapterButton, "isControl", true);
1835
+
1836
+ // src/ts/components/controls/duration.ts
1837
+ var import_modules3 = require("sia-reactor/modules");
1838
+ var DurationButton = class extends BaseComponent {
1839
+ get plug() {
1840
+ return this.ctlr.plug("settings.time");
1841
+ }
1842
+ create() {
1843
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-duration-btn tmg-media-control-text-btn", textContent: "-:--" }, { draggableControl: "", controlId: this.name });
1844
+ }
1845
+ wire() {
1846
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1847
+ this.media.on("status.duration", this.syncUI, { signal: this.signal });
1848
+ this.media.on("state.live", (e) => (this.el.classList.toggle("tmg-media-control-live", e.value), this.el.classList.toggle("tmg-media-live-badge", e.value), this.syncARIA()), { signal: this.signal });
1849
+ this.media.on("status.isLive", (e) => (this.media.container.classList.toggle("tmg-media-is-live", e.value), this.syncARIA()), { signal: this.signal });
1850
+ this.ctlr.config.on("settings.time.format", this.syncUI, { init: true, signal: this.signal });
1851
+ this.ctlr.config.on("settings.keys.shortcuts.timeFormat", this.syncARIA, { init: true, signal: this.signal });
1852
+ this.ctlr.config.on("settings.voice.commands.timeFormat", this.syncARIA, { signal: this.signal });
1853
+ }
1854
+ handleClick() {
1855
+ !this.media.status.isLive || this.media.state.live ? this.plug?.rotateFormat() : (0, import_modules3.silence)(() => this.media.intent.live = true);
1856
+ }
1857
+ syncUI() {
1858
+ this.el.textContent = !this.media.status.isLive ? this.plug?.toTimeText(this.media.status.duration) || "-:--" : "Live";
1859
+ }
1860
+ syncARIA() {
1861
+ this.state.label = "Switch time format";
1862
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.timeFormat, this.settings.voice.commands.timeFormat);
1863
+ this.el.title = !this.media.status.isLive || this.media.state.live ? this.state.label + this.state.cmd : "Skip ahead to live broadcast";
1864
+ this.setBtnARIA();
1865
+ }
1866
+ };
1867
+ __publicField(DurationButton, "componentName", "duration");
1868
+ __publicField(DurationButton, "isControl", true);
1869
+
1870
+ // src/ts/components/controls/expandminiplayer.ts
1871
+ var ExpandMiniplayerButton = class extends BaseComponent {
1872
+ get pin() {
1873
+ return this.ctlr.plug("settings.modes")?.miniplayer;
1874
+ }
1875
+ create() {
1876
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-miniplayer-expand-btn", type: "button", innerHTML: IconRegistry.get("expandminiplayer") }, { draggableControl: "", controlId: this.name });
1877
+ }
1878
+ wire() {
1879
+ this.media.on("features.miniplayer", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1880
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1881
+ this.syncARIA();
1882
+ }
1883
+ handleClick() {
1884
+ this.pin?.expand();
1885
+ }
1886
+ syncARIA() {
1887
+ this.el.title = this.state.label = "Expand miniplayer";
1888
+ this.setBtnARIA();
1889
+ }
1890
+ };
1891
+ __publicField(ExpandMiniplayerButton, "componentName", "expandminiplayer");
1892
+ __publicField(ExpandMiniplayerButton, "isControl", true);
1893
+
1894
+ // src/ts/components/controls/forward10.ts
1895
+ var Forward10Button = class extends BaseComponent {
1896
+ create() {
1897
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-forward10-btn", type: "button", innerHTML: IconRegistry.get("forward10") }, { draggableControl: "", controlId: this.name });
1898
+ }
1899
+ wire() {
1900
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1901
+ this.syncARIA();
1902
+ }
1903
+ handleClick() {
1904
+ this.media.intent.currentTime += 10;
1905
+ }
1906
+ syncARIA() {
1907
+ this.state.label = "Forward 10s";
1908
+ this.el.title = this.state.label + this.state.cmd;
1909
+ this.setBtnARIA();
1910
+ }
1911
+ };
1912
+ __publicField(Forward10Button, "componentName", "forward10");
1913
+ __publicField(Forward10Button, "isControl", true);
1914
+
1915
+ // src/ts/components/controls/fullscreen.ts
1916
+ var FullscreenButton = class extends BaseComponent {
1917
+ create() {
1918
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-fullscreen-btn", type: "button", innerHTML: IconRegistry.get("enterfullscreen") + IconRegistry.get("leavefullscreen") }, { draggableControl: "", controlId: this.name });
1919
+ }
1920
+ wire() {
1921
+ this.media.on("features.fullscreen", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1922
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1923
+ this.media.on("state.fullscreen", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
1924
+ this.ctlr.config.on("settings.keys.shortcuts.fullscreen", this.syncARIA, { init: true, signal: this.signal });
1925
+ this.ctlr.config.on("settings.voice.commands.fullscreen", this.syncARIA, { signal: this.signal });
1926
+ }
1927
+ handleClick() {
1928
+ this.media.intent.fullscreen = !this.media.state.fullscreen;
1929
+ }
1930
+ syncARIA() {
1931
+ this.state.label = this.media.state.fullscreen ? "Exit full screen" : "Full screen";
1932
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.fullscreen, this.settings.voice.commands.fullscreen);
1933
+ this.el.title = this.state.label + this.state.cmd;
1934
+ this.setBtnARIA();
1935
+ }
1936
+ };
1937
+ __publicField(FullscreenButton, "componentName", "fullscreen");
1938
+ __publicField(FullscreenButton, "isControl", true);
1939
+
1940
+ // src/ts/components/controls/fullscreenlock.ts
1941
+ var FullscreenLockButton = class extends BaseComponent {
1942
+ create() {
1943
+ this.element = (0, import_utils.createEl)("button", { type: "button", className: "tmg-media-fullscreen-locked-btn", innerHTML: IconRegistry.get("lock") }, { draggableControl: "", controlId: this.name });
1944
+ return this.hide(), this.element;
1945
+ }
1946
+ wire() {
1947
+ this.media.on("features.fullscreen", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1948
+ this.media.on("features.locked", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1949
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1950
+ this.media.on("state.fullscreen", () => this[this.canShow ? "show" : "hide"](), { init: this.ctlr.payload.wired, signal: this.signal });
1951
+ this.syncARIA();
1952
+ }
1953
+ handleClick() {
1954
+ this.media.intent.locked = true;
1955
+ }
1956
+ syncARIA() {
1957
+ this.el.title = this.state.label = "Lock Screen";
1958
+ this.setBtnARIA();
1959
+ }
1960
+ get canShow() {
1961
+ return this.media.state.fullscreen && !!this.media.features.fullscreen && !!this.media.features.locked;
1962
+ }
1963
+ };
1964
+ __publicField(FullscreenLockButton, "componentName", "fullscreenlock");
1965
+ __publicField(FullscreenLockButton, "isControl", true);
1966
+
1967
+ // src/ts/components/controls/fullscreenorientation.ts
1968
+ var FullscreenOrientationButton = class extends BaseComponent {
1969
+ get pin() {
1970
+ return this.ctlr.plug("settings.modes")?.fullscreen;
1971
+ }
1972
+ create() {
1973
+ this.element = (0, import_utils.createEl)("button", { className: "tmg-media-fullscreen-orientation-btn", type: "button", innerHTML: IconRegistry.get("fullscreenorientation") }, { draggableControl: "", controlId: this.name });
1974
+ return this.hide(), this.element;
1975
+ }
1976
+ wire() {
1977
+ this.media.on("features.fullscreen", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1978
+ this.media.on("features.fullscreenOrientation", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
1979
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
1980
+ this.media.on("state.fullscreen", () => this[this.canShow ? "show" : "hide"](), { init: this.ctlr.payload.wired, signal: this.signal });
1981
+ this.syncARIA();
1982
+ }
1983
+ handleClick() {
1984
+ this.pin?.changeScreenOrientation();
1985
+ }
1986
+ syncARIA() {
1987
+ this.el.title = this.state.label = "Change orientation";
1988
+ this.setBtnARIA();
1989
+ }
1990
+ get canShow() {
1991
+ return this.media.state.fullscreen && !!this.media.features.fullscreen && !!this.media.features.fullscreenOrientation;
1992
+ }
1993
+ };
1994
+ __publicField(FullscreenOrientationButton, "componentName", "fullscreenorientation");
1995
+ __publicField(FullscreenOrientationButton, "isControl", true);
1996
+
1997
+ // src/ts/components/controls/meta.ts
1998
+ var Meta = class extends BaseComponent {
1999
+ constructor() {
2000
+ super(...arguments);
2001
+ __publicField(this, "profile");
2002
+ __publicField(this, "title");
2003
+ __publicField(this, "artist");
2004
+ __publicField(this, "scrollers", []);
2005
+ }
2006
+ create() {
2007
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-meta-wrapper" }, { draggableControl: "", dragId: "wrapper", controlId: this.name });
2008
+ const textsCover = (0, import_utils.createEl)("div", { className: "tmg-media-meta-text-wrapper-cover" }), profileLink = (0, import_utils.createEl)("a", { className: "tmg-media-profile-link" }), titleWrapper = (0, import_utils.createEl)("div", { className: "tmg-media-title-wrapper" }), artistWrapper = (0, import_utils.createEl)("div", { className: "tmg-media-artist-wrapper" });
2009
+ this.ctlr.DOM.mediaProfile = this.profile = this.ctlr.syncImgLoadState((0, import_utils.createEl)("img", { alt: "Profile", className: "tmg-media-profile" }));
2010
+ this.ctlr.DOM.mediaTitle = this.title = (0, import_utils.createEl)("a", { className: "tmg-media-title tmg-media-meta-text" });
2011
+ this.ctlr.DOM.mediaArtist = this.artist = (0, import_utils.createEl)("a", { className: "tmg-media-artist tmg-media-meta-text" });
2012
+ profileLink.append(this.profile), titleWrapper.append(this.title), artistWrapper.append(this.artist), textsCover.append(titleWrapper, artistWrapper);
2013
+ return this.el.append(profileLink, textsCover), this.element;
2014
+ }
2015
+ wire() {
2016
+ this.ctlr.config.on("settings.controlPanel.profile", this.syncProfile, { init: true, signal: this.signal });
2017
+ this.ctlr.config.on("settings.controlPanel.title", this.syncTitle, { init: true, signal: this.signal });
2018
+ this.ctlr.config.on("settings.controlPanel.artist", this.syncArtist, { init: true, signal: this.signal });
2019
+ this.scrollers.push((initScrollAssist(this.title, { pxPerSecond: 60 }), this.title));
2020
+ this.scrollers.push((initScrollAssist(this.artist, { pxPerSecond: 30 }), this.artist));
2021
+ }
2022
+ syncUI() {
2023
+ this.syncProfile(), this.syncTitle(), this.syncArtist();
2024
+ }
2025
+ syncProfile() {
2026
+ const profile = this.settings.controlPanel.profile;
2027
+ if (profile !== true) this.profile.dataset.loaded = "false", this.profile.dataset.mediaProfile = this.profile.src = profile || "";
2028
+ }
2029
+ syncTitle() {
2030
+ const title = this.settings.controlPanel.title;
2031
+ if (title !== true) this.title.dataset.mediaTitle = this.title.textContent = title || "";
2032
+ }
2033
+ syncArtist() {
2034
+ const artist = this.settings.controlPanel.artist;
2035
+ if (artist !== true) this.artist.dataset.mediaArtist = this.artist.textContent = artist || "";
2036
+ }
2037
+ onDestroy() {
2038
+ for (const el of this.scrollers) removeScrollAssist(el);
2039
+ super.onDestroy();
2040
+ }
2041
+ };
2042
+ __publicField(Meta, "componentName", "meta");
2043
+ __publicField(Meta, "isControl", true);
2044
+
2045
+ // src/ts/components/controls/next.ts
2046
+ var NextButton = class extends BaseComponent {
2047
+ get plug() {
2048
+ return this.ctlr.plug("playlist");
2049
+ }
2050
+ create() {
2051
+ this.element = (0, import_utils.createEl)("button", { className: "tmg-media-next-btn", type: "button", innerHTML: IconRegistry.get("next") }, { draggableControl: "", controlId: this.name });
2052
+ return this.hide(), this.element;
2053
+ }
2054
+ wire() {
2055
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
2056
+ this.plug?.state.on("currentIndex", () => this[this.plug.atLast ? "hide" : "show"](), { init: true, signal: this.signal });
2057
+ this.ctlr.config.on("settings.keys.shortcuts.next", this.syncARIA, { init: true, signal: this.signal });
2058
+ this.ctlr.config.on("settings.voice.commands.next", this.syncARIA, { signal: this.signal });
2059
+ }
2060
+ handleClick() {
2061
+ this.plug?.next();
2062
+ }
2063
+ syncARIA() {
2064
+ this.state.label = "Next";
2065
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.next, this.settings.voice.commands.next);
2066
+ this.el.title = this.state.label + this.state.cmd;
2067
+ this.setBtnARIA();
2068
+ }
2069
+ };
2070
+ __publicField(NextButton, "componentName", "next");
2071
+ __publicField(NextButton, "isControl", true);
2072
+
2073
+ // src/ts/components/controls/objectfit.ts
2074
+ var ObjectFitButton = class extends BaseComponent {
2075
+ get plug() {
2076
+ return this.ctlr.plug("settings.objectFit");
2077
+ }
2078
+ create() {
2079
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-object-fit-btn", type: "button", innerHTML: IconRegistry.get("objectfitcontain") + IconRegistry.get("objectfitcover") + IconRegistry.get("objectfitfill") }, { draggableControl: "", controlId: this.name });
2080
+ }
2081
+ wire() {
2082
+ this.media.on("features.objectFit", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
2083
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
2084
+ this.media.on("state.objectFit", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
2085
+ this.ctlr.config.on("settings.keys.shortcuts.objectFit", this.syncARIA, { init: true, signal: this.signal });
2086
+ this.ctlr.config.on("settings.voice.commands.objectFit", this.syncARIA, { signal: this.signal });
2087
+ }
2088
+ handleClick() {
2089
+ this.plug?.rotateFit();
2090
+ }
2091
+ syncARIA() {
2092
+ this.state.label = this.plug?.toLabel(this.plug?.nextFit) || "";
2093
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.objectFit, this.settings.voice.commands.objectFit);
2094
+ this.el.title = this.state.label + this.state.cmd;
2095
+ this.setBtnARIA();
2096
+ }
2097
+ };
2098
+ __publicField(ObjectFitButton, "componentName", "objectfit");
2099
+ __publicField(ObjectFitButton, "isControl", true);
2100
+
2101
+ // src/ts/components/controls/pictureinpicture.ts
2102
+ var PictureInPictureButton = class extends BaseComponent {
2103
+ create() {
2104
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-picture-in-picture-btn", type: "button", innerHTML: IconRegistry.get("enterpip") + IconRegistry.get("leavepip") }, { draggableControl: "", controlId: this.name });
2105
+ }
2106
+ wire() {
2107
+ this.media.on("features.pictureInPicture", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
2108
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
2109
+ this.media.on("state.pictureInPicture", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
2110
+ this.ctlr.config.on("settings.keys.shortcuts.pictureInPicture", this.syncARIA, { init: true, signal: this.signal });
2111
+ this.ctlr.config.on("settings.voice.commands.pictureInPicture", this.syncARIA, { signal: this.signal });
2112
+ }
2113
+ handleClick() {
2114
+ this.media.intent.pictureInPicture = !this.media.state.pictureInPicture;
2115
+ }
2116
+ syncARIA() {
2117
+ this.state.label = this.media.state.pictureInPicture ? "Exit picture in picture" : "Picture in picture";
2118
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.pictureInPicture, this.settings.voice.commands.pictureInPicture);
2119
+ this.el.title = this.state.label + this.state.cmd;
2120
+ this.setBtnARIA();
2121
+ }
2122
+ };
2123
+ __publicField(PictureInPictureButton, "componentName", "pictureinpicture");
2124
+ __publicField(PictureInPictureButton, "isControl", true);
2125
+
2126
+ // src/ts/components/controls/playpause.ts
2127
+ var PlayPauseButton = class extends BaseComponent {
2128
+ create() {
2129
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-play-pause-btn", innerHTML: IconRegistry.get("play") + IconRegistry.get("pause") + IconRegistry.get("replay") }, { draggableControl: "", controlId: this.name });
2130
+ }
2131
+ wire() {
2132
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
2133
+ this.media.on("state.paused", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
2134
+ this.media.on("status.ended", this.syncARIA, { signal: this.signal });
2135
+ this.ctlr.config.on("settings.keys.shortcuts.playPause", this.syncARIA, { signal: this.signal });
2136
+ this.ctlr.config.on("settings.voice.commands.playPause", this.syncARIA, { signal: this.signal });
2137
+ }
2138
+ handleClick() {
2139
+ this.media.intent.paused = !this.media.state.paused;
2140
+ }
2141
+ syncARIA() {
2142
+ this.state.label = this.media.status.ended ? "Replay" : this.media.state.paused ? "Play" : "Pause";
2143
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.playPause, this.settings.voice.commands.playPause);
2144
+ this.el.title = this.state.label + this.state.cmd;
2145
+ this.setBtnARIA();
2146
+ }
2147
+ };
2148
+ __publicField(PlayPauseButton, "componentName", "playpause");
2149
+ __publicField(PlayPauseButton, "isControl", true);
2150
+
2151
+ // src/ts/components/controls/prev.ts
2152
+ var PrevButton = class extends BaseComponent {
2153
+ get plug() {
2154
+ return this.ctlr.plug("playlist");
2155
+ }
2156
+ create() {
2157
+ this.element = (0, import_utils.createEl)("button", { className: "tmg-media-prev-btn", type: "button", innerHTML: IconRegistry.get("prev") }, { draggableControl: "", controlId: this.name });
2158
+ return this.hide(), this.element;
2159
+ }
2160
+ wire() {
2161
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
2162
+ this.plug?.state.on("currentIndex", () => this[this.plug.atFirst ? "hide" : "show"](), { init: true, signal: this.signal });
2163
+ this.ctlr.config.on("settings.keys.shortcuts.prev", this.syncARIA, { init: true, signal: this.signal });
2164
+ this.ctlr.config.on("settings.voice.commands.prev", this.syncARIA, { signal: this.signal });
2165
+ }
2166
+ handleClick() {
2167
+ this.plug?.previous();
2168
+ }
2169
+ syncARIA() {
2170
+ this.state.label = "Previous";
2171
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.prev, this.settings.voice.commands.prev);
2172
+ this.el.title = this.state.label + this.state.cmd;
2173
+ this.setBtnARIA();
2174
+ }
2175
+ };
2176
+ __publicField(PrevButton, "componentName", "prev");
2177
+ __publicField(PrevButton, "isControl", true);
2178
+
2179
+ // src/ts/components/controls/removeminiplayer.ts
2180
+ var RemoveMiniplayerButton = class extends BaseComponent {
2181
+ get pin() {
2182
+ return this.ctlr.plug("settings.modes")?.miniplayer;
2183
+ }
2184
+ create() {
2185
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-miniplayer-remove-btn", type: "button", innerHTML: IconRegistry.get("removeminiplayer") }, { draggableControl: "", controlId: this.name });
2186
+ }
2187
+ wire() {
2188
+ this.media.on("features.miniplayer", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
2189
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
2190
+ this.syncARIA();
2191
+ }
2192
+ handleClick() {
2193
+ this.pin?.remove();
2194
+ }
2195
+ syncARIA() {
2196
+ this.state.label = "Remove miniplayer";
2197
+ this.state.cmd = " (Escape)";
2198
+ this.el.title = this.state.label + this.state.cmd;
2199
+ this.setBtnARIA();
2200
+ }
2201
+ };
2202
+ __publicField(RemoveMiniplayerButton, "componentName", "removeminiplayer");
2203
+ __publicField(RemoveMiniplayerButton, "isControl", true);
2204
+
2205
+ // src/ts/components/controls/settings.ts
2206
+ var SettingsButton = class extends BaseComponent {
2207
+ get plug() {
2208
+ return this.ctlr.plug("settings.settingsView");
2209
+ }
2210
+ create() {
2211
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-settings-btn", type: "button", innerHTML: IconRegistry.get("settings") }, { draggableControl: "", controlId: this.name });
2212
+ }
2213
+ wire() {
2214
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
2215
+ this.ctlr.config.on("settings.keys.shortcuts.settings", this.syncARIA, { init: true, signal: this.signal });
2216
+ this.ctlr.config.on("settings.voice.commands.settings", this.syncARIA, { signal: this.signal });
2217
+ }
2218
+ handleClick() {
2219
+ const menu = this.plug?.menu;
2220
+ menu ? menu.toggle(this.el) : this.plug?.toggleView();
2221
+ }
2222
+ syncARIA() {
2223
+ this.state.label = "Settings";
2224
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.settings, this.settings.voice.commands.settings);
2225
+ this.el.title = this.state.label + this.state.cmd;
2226
+ this.setBtnARIA();
2227
+ }
2228
+ };
2229
+ __publicField(SettingsButton, "componentName", "settings");
2230
+ __publicField(SettingsButton, "isControl", true);
2231
+
2232
+ // src/ts/components/controls/theater.ts
2233
+ var TheaterButton = class extends BaseComponent {
2234
+ create() {
2235
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-theater-btn", type: "button", innerHTML: IconRegistry.get("entertheater") + IconRegistry.get("leavetheater") }, { draggableControl: "", controlId: this.name });
2236
+ }
2237
+ wire() {
2238
+ this.media.on("features.theater", this.gate, { init: this.ctlr.payload.wired, signal: this.signal });
2239
+ this.el.addEventListener("click", this.handleClick, { signal: this.signal });
2240
+ this.media.on("state.theater", this.syncARIA, { init: this.ctlr.payload.wired, signal: this.signal });
2241
+ this.ctlr.config.on("settings.keys.shortcuts.theater", this.syncARIA, { init: true, signal: this.signal });
2242
+ this.ctlr.config.on("settings.voice.commands.theater", this.syncARIA, { signal: this.signal });
2243
+ }
2244
+ handleClick() {
2245
+ this.media.intent.theater = !this.media.state.theater;
2246
+ }
2247
+ syncARIA() {
2248
+ this.state.label = this.media.state.theater ? "Default view" : "Cinema mode";
2249
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.theater, this.settings.voice.commands.theater);
2250
+ this.el.title = this.state.label + this.state.cmd;
2251
+ this.setBtnARIA();
2252
+ }
2253
+ };
2254
+ __publicField(TheaterButton, "componentName", "theater");
2255
+ __publicField(TheaterButton, "isControl", true);
2256
+
2257
+ // src/ts/components/controls/time.ts
2258
+ var TimeButton = class extends BaseComponent {
2259
+ get plug() {
2260
+ return this.ctlr.plug("settings.time");
2261
+ }
2262
+ create() {
2263
+ return this.element = (0, import_utils.createEl)("button", { className: "tmg-media-time-btn tmg-media-control-text-btn", textContent: "-:--" }, { draggableControl: "", controlId: this.name });
2264
+ }
2265
+ wire() {
2266
+ this.media.on("features.live", (e) => this[e.value ? "hide" : "show"](), { init: this.ctlr.payload.wired, signal: this.signal });
2267
+ addSafeClicks(this.element, this.handleClick, this.handleDblClick, { signal: this.signal });
2268
+ this.media.on("state.currentTime", this.syncUI, { signal: this.signal });
2269
+ this.ctlr.config.on("settings.time.mode", this.syncUI, { init: true, signal: this.signal });
2270
+ this.ctlr.config.on("settings.time.format", this.syncUI, { signal: this.signal });
2271
+ this.ctlr.config.on("settings.keys.shortcuts.timeMode", this.syncARIA, { init: true, signal: this.signal });
2272
+ this.ctlr.config.on("settings.voice.commands.timeMode", this.syncARIA, { signal: this.signal });
2273
+ this.ctlr.config.on("settings.keys.shortcuts.timeFormat", this.syncARIA, { signal: this.signal });
2274
+ }
2275
+ handleClick() {
2276
+ this.plug?.toggleMode();
2277
+ }
2278
+ handleDblClick() {
2279
+ this.plug?.rotateFormat();
2280
+ }
2281
+ syncUI() {
2282
+ this.el.textContent = this.plug?.toTimeText(this.media.state.currentTime, true) || "-:--";
2283
+ this.syncARIA();
2284
+ }
2285
+ syncARIA() {
2286
+ this.state.label = `Show ${this.plug?.nextMode} time`;
2287
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.timeMode, this.settings.voice.commands.timeMode);
2288
+ this.el.title = `Switch (mode${this.state.cmd} / DblClick\u2192format${formatKeyForDisplay2(this.settings.keys.shortcuts.timeFormat, this.settings.voice.commands.timeFormat)})`;
2289
+ this.setBtnARIA("Switch time format");
2290
+ }
2291
+ };
2292
+ __publicField(TimeButton, "componentName", "time");
2293
+ __publicField(TimeButton, "isControl", true);
2294
+
2295
+ // src/ts/components/controls/timeandduration.ts
2296
+ var import_modules4 = require("sia-reactor/modules");
2297
+ var TimeAndDurationButton = class extends BaseComponent {
2298
+ constructor() {
2299
+ super(...arguments);
2300
+ __publicField(this, "time");
2301
+ __publicField(this, "bridge");
2302
+ __publicField(this, "duration");
2303
+ __publicField(this, "liveBadge");
2304
+ }
2305
+ get plug() {
2306
+ return this.ctlr.plug("settings.time");
2307
+ }
2308
+ create() {
2309
+ this.element = (0, import_utils.createEl)("button", { className: "tmg-media-time-and-duration-btn tmg-media-control-text-btn" }, { draggableControl: "", controlId: this.name });
2310
+ this.time = (0, import_utils.createEl)("span", { className: "tmg-media-current-time", textContent: "-:--" });
2311
+ this.bridge = (0, import_utils.createEl)("span", { className: "tmg-media-time-bridge", textContent: "/" });
2312
+ this.duration = (0, import_utils.createEl)("span", { className: "tmg-media-duration-time", textContent: "-:--" });
2313
+ this.liveBadge = (0, import_utils.createEl)("span", { className: "tmg-media-live-badge", textContent: "Live" });
2314
+ return this.el.append(this.time, this.bridge, this.duration, this.liveBadge), this.element;
2315
+ }
2316
+ wire() {
2317
+ addSafeClicks(this.element, this.handleClick, this.handleDblClick, { signal: this.signal });
2318
+ this.media.on("state.currentTime", this.syncTime, { signal: this.signal });
2319
+ this.media.on("state.live", (e) => (this.liveBadge.classList.toggle("tmg-media-control-live", e.value), this.syncARIA()), { signal: this.signal });
2320
+ this.media.on("status.duration", this.syncDuration, { signal: this.signal });
2321
+ this.media.on("status.isLive", (e) => (this.media.container.classList.toggle("tmg-media-is-live", e.value), this.syncARIA()), { signal: this.signal });
2322
+ this.ctlr.config.on("settings.time.format", this.syncUI, { init: true, signal: this.signal });
2323
+ this.ctlr.config.on("settings.time.mode", this.syncTime, { signal: this.signal });
2324
+ this.ctlr.config.on("settings.keys.shortcuts.timeMode", this.syncARIA, { init: true, signal: this.signal });
2325
+ this.ctlr.config.on("settings.voice.commands.timeMode", this.syncARIA, { signal: this.signal });
2326
+ this.ctlr.config.on("settings.keys.shortcuts.timeFormat", this.syncARIA, { signal: this.signal });
2327
+ }
2328
+ handleClick() {
2329
+ !this.media.status.isLive || this.media.state.live ? this.plug?.toggleMode() : (0, import_modules4.silence)(() => this.media.intent.live = true);
2330
+ }
2331
+ handleDblClick() {
2332
+ this.plug?.rotateFormat();
2333
+ }
2334
+ syncUI() {
2335
+ this.bridge.textContent = { digital: "/", human: "of", "human-long": "out of" }[this.settings.time.format] || "/";
2336
+ this.syncTime(), this.syncDuration();
2337
+ }
2338
+ syncTime() {
2339
+ this.time.textContent = this.plug?.toTimeText(this.media.state.currentTime, true) || "-:--";
2340
+ }
2341
+ syncDuration() {
2342
+ this.duration.textContent = this.plug?.toTimeText(this.media.status.duration) || "-:--";
2343
+ }
2344
+ syncARIA() {
2345
+ this.state.label = `Show ${this.plug?.nextMode} time`;
2346
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.timeMode, this.settings.voice.commands.timeMode);
2347
+ this.el.title = !this.media.status.isLive || this.media.state.live ? `Switch (mode${this.state.cmd} / DblClick\u2192format${formatKeyForDisplay2(this.settings.keys.shortcuts.timeFormat, this.settings.voice.commands.timeFormat)})` : "Skip ahead to live broadcast";
2348
+ this.setBtnARIA("Switch time format");
2349
+ }
2350
+ };
2351
+ __publicField(TimeAndDurationButton, "componentName", "timeandduration");
2352
+ __publicField(TimeAndDurationButton, "isControl", true);
2353
+
2354
+ // src/ts/components/holders/airplayplaceholder.ts
2355
+ var AirPlayPlaceholder = class extends BaseComponent {
2356
+ constructor() {
2357
+ super(...arguments);
2358
+ __publicField(this, "iconBtn");
2359
+ }
2360
+ create() {
2361
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-placeholder tmg-media-airplay-placeholder", innerHTML: `<p>Streaming to AirPlay Display</p>` });
2362
+ this.iconBtn = (0, import_utils.createEl)("button", { className: "tmg-media-placeholder-icon-btn tmg-media-airplay-icon-btn", innerHTML: IconRegistry.get("airplayplaceholder") });
2363
+ return this.el.prepend(this.iconBtn), this.el;
2364
+ }
2365
+ mount() {
2366
+ this.ctlr.DOM.controlsContainer?.prepend(this.el);
2367
+ }
2368
+ wire() {
2369
+ this.iconBtn.addEventListener("click", this.handleClick, { signal: this.signal });
2370
+ this.ctlr.config.on("settings.keys.shortcuts.airplay", this.syncARIA, { init: true, signal: this.signal });
2371
+ }
2372
+ handleClick() {
2373
+ this.media.intent.airplay = !this.media.state.airplay;
2374
+ }
2375
+ syncARIA() {
2376
+ this.state.label = this.media.state.airplay ? "Stop airplaying" : "AirPlay to Display";
2377
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.airplay);
2378
+ this.iconBtn.title = this.state.label + this.state.cmd;
2379
+ this.setBtnARIA("", this.iconBtn);
2380
+ }
2381
+ };
2382
+ __publicField(AirPlayPlaceholder, "componentName", "airplayplaceholder");
2383
+
2384
+ // src/ts/components/holders/castplaceholder.ts
2385
+ var CastPlaceholder = class extends BaseComponent {
2386
+ constructor() {
2387
+ super(...arguments);
2388
+ __publicField(this, "iconBtn");
2389
+ }
2390
+ create() {
2391
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-placeholder tmg-media-cast-placeholder", innerHTML: `<p>Casting to External Display</p>` });
2392
+ this.iconBtn = (0, import_utils.createEl)("button", { className: "tmg-media-placeholder-icon-btn tmg-media-cast-icon-btn", innerHTML: IconRegistry.get("castplaceholder") });
2393
+ return this.el.prepend(this.iconBtn), this.el;
2394
+ }
2395
+ mount() {
2396
+ this.ctlr.DOM.controlsContainer?.prepend(this.el);
2397
+ }
2398
+ wire() {
2399
+ this.iconBtn.addEventListener("click", this.handleClick, { signal: this.signal });
2400
+ this.ctlr.config.on("settings.keys.shortcuts.cast", this.syncARIA, { init: true, signal: this.signal });
2401
+ }
2402
+ handleClick() {
2403
+ this.media.intent.cast = !this.media.state.cast;
2404
+ }
2405
+ syncARIA() {
2406
+ this.state.label = this.media.state.cast ? "Stop casting" : "Cast to Display";
2407
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.cast);
2408
+ this.iconBtn.title = this.state.label + this.state.cmd;
2409
+ this.setBtnARIA("", this.iconBtn);
2410
+ }
2411
+ };
2412
+ __publicField(CastPlaceholder, "componentName", "castplaceholder");
2413
+
2414
+ // src/ts/components/holders/pipplaceholder.ts
2415
+ var PiPPlaceholder = class extends BaseComponent {
2416
+ constructor() {
2417
+ super(...arguments);
2418
+ __publicField(this, "iconBtn");
2419
+ }
2420
+ create() {
2421
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-placeholder tmg-media-picture-in-picture-placeholder", innerHTML: `<p>Playing in picture-in-picture</p>` });
2422
+ this.iconBtn = (0, import_utils.createEl)("button", { className: "tmg-media-placeholder-icon-btn tmg-media-picture-in-picture-icon-btn", innerHTML: IconRegistry.get("pipplaceholder") });
2423
+ return this.el.prepend(this.iconBtn), this.el;
2424
+ }
2425
+ mount() {
2426
+ this.ctlr.DOM.controlsContainer?.prepend(this.el);
2427
+ }
2428
+ wire() {
2429
+ this.iconBtn.addEventListener("click", this.handleClick, { signal: this.signal });
2430
+ this.ctlr.config.on("settings.keys.shortcuts.pictureInPicture", this.syncARIA, { init: true, signal: this.signal });
2431
+ }
2432
+ handleClick() {
2433
+ this.media.intent.pictureInPicture = !this.media.state.pictureInPicture;
2434
+ }
2435
+ syncARIA() {
2436
+ this.state.label = this.media.state.pictureInPicture ? "Exit picture in picture" : "Picture in picture";
2437
+ this.state.cmd = formatKeyForDisplay2(this.settings.keys.shortcuts.pictureInPicture);
2438
+ this.iconBtn.title = this.state.label + this.state.cmd;
2439
+ this.setBtnARIA("", this.iconBtn);
2440
+ }
2441
+ };
2442
+ __publicField(PiPPlaceholder, "componentName", "pipplaceholder");
2443
+
2444
+ // src/ts/components/notifiers/base.ts
2445
+ var BaseNotifier = class extends BaseComponent {
2446
+ constructor() {
2447
+ super(...arguments);
2448
+ __publicField(this, "nodes", []);
2449
+ }
2450
+ get plug() {
2451
+ return this.ctlr.plug("settings.notifiers");
2452
+ }
2453
+ get events() {
2454
+ return this.constructor.triggers;
2455
+ }
2456
+ mount() {
2457
+ const nodes = this.nodes.length ? this.nodes : [this.element];
2458
+ for (const node of nodes) node.classList.add("tmg-media-notifier");
2459
+ this.ctlr.DOM.notifiersContainer?.append(...nodes);
2460
+ }
2461
+ unmount() {
2462
+ for (const node of this.nodes.length ? this.nodes : [this.element]) node.remove();
2463
+ }
2464
+ wire() {
2465
+ for (const node of this.nodes.length ? this.nodes : [this.element]) node.addEventListener("animationend", this.handleAnimationEnd, { signal: this.signal });
2466
+ this.plug?.state.events.push(...this.events);
2467
+ }
2468
+ handleAnimationEnd() {
2469
+ this.plug?.reset("", true);
2470
+ }
2471
+ bindNodes(nodes) {
2472
+ return this.nodes = nodes, this.element = nodes[0];
2473
+ }
2474
+ };
2475
+ __publicField(BaseNotifier, "componentName", "base");
2476
+ __publicField(BaseNotifier, "isNotifier", true);
2477
+ __publicField(BaseNotifier, "triggers", []);
2478
+
2479
+ // src/ts/components/notifiers/playpause.ts
2480
+ var PlayPauseNotifier = class extends BaseNotifier {
2481
+ constructor() {
2482
+ super(...arguments);
2483
+ __publicField(this, "playDiv");
2484
+ __publicField(this, "pauseDiv");
2485
+ }
2486
+ create() {
2487
+ this.playDiv = (0, import_utils.createEl)("div", { className: "tmg-media-play-notifier", innerHTML: IconRegistry.get("play", true) });
2488
+ this.pauseDiv = (0, import_utils.createEl)("div", { className: "tmg-media-pause-notifier", innerHTML: IconRegistry.get("pause", true) });
2489
+ return this.bindNodes([this.playDiv, this.pauseDiv]);
2490
+ }
2491
+ };
2492
+ __publicField(PlayPauseNotifier, "componentName", "playpausenotifier");
2493
+ __publicField(PlayPauseNotifier, "triggers", ["mediaplay", "mediapause"]);
2494
+
2495
+ // src/ts/components/notifiers/prevnext.ts
2496
+ var PrevNextNotifier = class extends BaseNotifier {
2497
+ constructor() {
2498
+ super(...arguments);
2499
+ __publicField(this, "prevDiv");
2500
+ __publicField(this, "nextDiv");
2501
+ }
2502
+ create() {
2503
+ this.prevDiv = (0, import_utils.createEl)("div", { className: "tmg-media-prev-notifier", innerHTML: IconRegistry.get("prev", true) });
2504
+ this.nextDiv = (0, import_utils.createEl)("div", { className: "tmg-media-next-notifier", innerHTML: IconRegistry.get("next", true) });
2505
+ return this.bindNodes([this.prevDiv, this.nextDiv]);
2506
+ }
2507
+ };
2508
+ __publicField(PrevNextNotifier, "componentName", "prevnextnotifier");
2509
+ __publicField(PrevNextNotifier, "triggers", ["mediaprev", "medianext"]);
2510
+
2511
+ // src/ts/components/notifiers/captions.ts
2512
+ var CaptionsNotifier = class extends BaseNotifier {
2513
+ create() {
2514
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-captions-notifier", innerHTML: IconRegistry.get("subtitles") + IconRegistry.get("captions") });
2515
+ }
2516
+ };
2517
+ __publicField(CaptionsNotifier, "componentName", "captionsnotifier");
2518
+ __publicField(CaptionsNotifier, "triggers", ["captions"]);
2519
+
2520
+ // src/ts/components/notifiers/capture.ts
2521
+ var CaptureNotifier = class extends BaseNotifier {
2522
+ create() {
2523
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-capture-notifier", innerHTML: IconRegistry.get("capture") });
2524
+ }
2525
+ };
2526
+ __publicField(CaptureNotifier, "componentName", "capturenotifier");
2527
+ __publicField(CaptureNotifier, "triggers", ["capture"]);
2528
+
2529
+ // src/ts/components/notifiers/playbackrate.ts
2530
+ var PlaybackRateNotifier = class extends BaseNotifier {
2531
+ constructor() {
2532
+ super(...arguments);
2533
+ __publicField(this, "content");
2534
+ __publicField(this, "upDiv");
2535
+ __publicField(this, "downDiv");
2536
+ }
2537
+ create() {
2538
+ this.content = (0, import_utils.createEl)("div", { className: "tmg-media-playback-rate-notifier-content tmg-media-notifier-content" });
2539
+ this.upDiv = (0, import_utils.createEl)("div", { className: "tmg-media-playback-rate-up-notifier", innerHTML: IconRegistry.get("doubletriangleright") });
2540
+ this.downDiv = (0, import_utils.createEl)("div", { className: "tmg-media-playback-rate-down-notifier", innerHTML: IconRegistry.get("doubletriangleleft") });
2541
+ return this.bindNodes([this.content, this.upDiv, this.downDiv]);
2542
+ }
2543
+ wire() {
2544
+ super.wire();
2545
+ this.media.on("state.playbackRate", this.handlePlaybackRateState, { init: this.ctlr.payload.wired, signal: this.signal });
2546
+ }
2547
+ handlePlaybackRateState({ value }) {
2548
+ this.content.textContent = `${value}x`;
2549
+ }
2550
+ };
2551
+ __publicField(PlaybackRateNotifier, "componentName", "playbackratenotifier");
2552
+ __publicField(PlaybackRateNotifier, "triggers", ["playbackrateup", "playbackratedown"]);
2553
+
2554
+ // src/ts/components/notifiers/volume.ts
2555
+ var VolumeNotifier = class extends BaseNotifier {
2556
+ constructor() {
2557
+ super(...arguments);
2558
+ __publicField(this, "content");
2559
+ __publicField(this, "upDiv");
2560
+ __publicField(this, "downDiv");
2561
+ __publicField(this, "mutedDiv");
2562
+ }
2563
+ create() {
2564
+ this.content = (0, import_utils.createEl)("div", { className: "tmg-media-volume-notifier-content tmg-media-notifier-content" });
2565
+ this.upDiv = (0, import_utils.createEl)("div", { className: "tmg-media-volume-up-notifier", innerHTML: IconRegistry.get("volumehigh", true) });
2566
+ this.downDiv = (0, import_utils.createEl)("div", { className: "tmg-media-volume-down-notifier", innerHTML: IconRegistry.get("volumelow", true) });
2567
+ this.mutedDiv = (0, import_utils.createEl)("div", { className: "tmg-media-volume-muted-notifier", innerHTML: IconRegistry.get("volumemuted", true) });
2568
+ return this.bindNodes([this.content, this.upDiv, this.downDiv, this.mutedDiv]);
2569
+ }
2570
+ wire() {
2571
+ super.wire();
2572
+ this.ctlr.plug("settings.volume")?.state.on("aptValue", this.handleVolumeState, { signal: this.signal });
2573
+ this.media.on("state.volume", this.handleVolumeState, { init: this.ctlr.payload.wired, signal: this.signal });
2574
+ }
2575
+ handleVolumeState({ value }) {
2576
+ this.content.innerHTML = `${value}% ${value > 100 ? `<strong style="color: var(--tmg-media-range-track-boost-color, red); vertical-align: 4%;">\u2191</strong>` : ""}`.trim();
2577
+ }
2578
+ };
2579
+ __publicField(VolumeNotifier, "componentName", "volumenotifier");
2580
+ __publicField(VolumeNotifier, "triggers", ["volumeup", "volumedown", "volumemuted"]);
2581
+
2582
+ // src/ts/components/notifiers/brightness.ts
2583
+ var BrightnessNotifier = class extends BaseNotifier {
2584
+ constructor() {
2585
+ super(...arguments);
2586
+ __publicField(this, "content");
2587
+ __publicField(this, "upDiv");
2588
+ __publicField(this, "downDiv");
2589
+ __publicField(this, "darkDiv");
2590
+ }
2591
+ create() {
2592
+ this.content = (0, import_utils.createEl)("div", { className: "tmg-media-brightness-notifier-content tmg-media-notifier-content" });
2593
+ this.upDiv = (0, import_utils.createEl)("div", { className: "tmg-media-brightness-up-notifier", innerHTML: IconRegistry.get("brightnesshigh", true) });
2594
+ this.downDiv = (0, import_utils.createEl)("div", { className: "tmg-media-brightness-down-notifier", innerHTML: IconRegistry.get("brightnesslow", true) });
2595
+ this.darkDiv = (0, import_utils.createEl)("div", { className: "tmg-media-brightness-dark-notifier", innerHTML: IconRegistry.get("brightnessdark", true) });
2596
+ return this.bindNodes([this.content, this.upDiv, this.downDiv, this.darkDiv]);
2597
+ }
2598
+ wire() {
2599
+ super.wire();
2600
+ this.ctlr.plug("settings.brightness")?.state.on("aptValue", this.handleBrightnessState, { signal: this.signal });
2601
+ this.media.on("state.brightness", this.handleBrightnessState, { init: this.ctlr.payload.wired, signal: this.signal });
2602
+ }
2603
+ handleBrightnessState({ value }) {
2604
+ this.content.innerHTML = `${value}% ${value > 100 ? `<strong style="color: var(--tmg-media-range-track-boost-color, red); vertical-align: 4%;">\u2191</strong>` : ""}`.trim();
2605
+ }
2606
+ };
2607
+ __publicField(BrightnessNotifier, "componentName", "brightnessnotifier");
2608
+ __publicField(BrightnessNotifier, "triggers", ["brightnessup", "brightnessdown", "brightnessdark"]);
2609
+
2610
+ // src/ts/components/notifiers/objectfit.ts
2611
+ var ObjectFitNotifier = class extends BaseNotifier {
2612
+ constructor() {
2613
+ super(...arguments);
2614
+ __publicField(this, "content");
2615
+ __publicField(this, "containDiv");
2616
+ __publicField(this, "coverDiv");
2617
+ __publicField(this, "fillDiv");
2618
+ }
2619
+ create() {
2620
+ this.content = (0, import_utils.createEl)("div", { className: "tmg-media-object-fit-notifier-content tmg-media-notifier-content" });
2621
+ this.containDiv = (0, import_utils.createEl)("div", { className: "tmg-media-object-fit-contain-notifier", innerHTML: IconRegistry.get("objectfitcontain", true) });
2622
+ this.coverDiv = (0, import_utils.createEl)("div", { className: "tmg-media-object-fit-cover-notifier", innerHTML: IconRegistry.get("objectfitcover", true) });
2623
+ this.fillDiv = (0, import_utils.createEl)("div", { className: "tmg-media-object-fit-fill-notifier", innerHTML: IconRegistry.get("objectfitfill", true) });
2624
+ return this.bindNodes([this.content, this.containDiv, this.coverDiv, this.fillDiv]);
2625
+ }
2626
+ wire() {
2627
+ super.wire();
2628
+ this.media.on("state.objectFit", this.handleObjectFitState, { init: this.ctlr.payload.wired, signal: this.signal });
2629
+ }
2630
+ handleObjectFitState({ value }) {
2631
+ this.content.textContent = this.ctlr.plug("settings.objectFit")?.toLabel(value) || "";
2632
+ }
2633
+ };
2634
+ __publicField(ObjectFitNotifier, "componentName", "objectfitnotifier");
2635
+ __publicField(ObjectFitNotifier, "triggers", ["objectfitcontain", "objectfitcover", "objectfitfill"]);
2636
+
2637
+ // src/ts/components/notifiers/fwdbwd.ts
2638
+ var FwdBwdNotifier = class extends BaseNotifier {
2639
+ constructor() {
2640
+ super(...arguments);
2641
+ __publicField(this, "fwdDiv");
2642
+ __publicField(this, "bwdDiv");
2643
+ }
2644
+ create() {
2645
+ this.fwdDiv = (0, import_utils.createEl)("div", { className: "tmg-media-fwd-notifier", innerHTML: IconRegistry.get("fwd") });
2646
+ this.bwdDiv = (0, import_utils.createEl)("div", { className: "tmg-media-bwd-notifier", innerHTML: IconRegistry.get("bwd") });
2647
+ return this.bindNodes([this.fwdDiv, this.bwdDiv]);
2648
+ }
2649
+ };
2650
+ __publicField(FwdBwdNotifier, "componentName", "fwdbwdnotifier");
2651
+ __publicField(FwdBwdNotifier, "triggers", ["fwd", "bwd"]);
2652
+
2653
+ // src/ts/components/notifiers/scrub.ts
2654
+ var ScrubNotifier = class extends BaseNotifier {
2655
+ create() {
2656
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-scrub-notifier tmg-media-text-notifier tmg-media-top-text-notifier", innerHTML: `<span>${IconRegistry.get("tripletriangleleft")}</span><p class="tmg-media-scrub-notifier-text" tabindex="-1">Double tap left or right to skip</p><span>${IconRegistry.get("tripletriangleright")}</span>` });
2657
+ }
2658
+ };
2659
+ __publicField(ScrubNotifier, "componentName", "scrubnotifier");
2660
+
2661
+ // src/ts/components/notifiers/cancelscrub.ts
2662
+ var CancelScrubNotifier = class extends BaseNotifier {
2663
+ create() {
2664
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-cancel-scrub-notifier tmg-media-text-notifier tmg-media-top-text-notifier", innerHTML: "Release to cancel" });
2665
+ }
2666
+ };
2667
+ __publicField(CancelScrubNotifier, "componentName", "cancelscrubnotifier");
2668
+
2669
+ // src/ts/components/notifiers/touchvolume.ts
2670
+ var TouchVolumeNotifier = class extends BaseNotifier {
2671
+ constructor() {
2672
+ super(...arguments);
2673
+ __publicField(this, "content");
2674
+ __publicField(this, "slider");
2675
+ __publicField(this, "upSpan");
2676
+ __publicField(this, "lowSpan");
2677
+ __publicField(this, "mutedSpan");
2678
+ }
2679
+ create() {
2680
+ this.content = (0, import_utils.createEl)("span", { className: "tmg-media-touch-volume-content tmg-media-touch-vb-content", textContent: "0" });
2681
+ this.slider = (0, import_utils.createEl)("div", { className: "tmg-media-touch-volume-slider tmg-media-touch-vb-slider" });
2682
+ this.upSpan = (0, import_utils.createEl)("span", { innerHTML: IconRegistry.get("volumehigh") });
2683
+ this.lowSpan = (0, import_utils.createEl)("span", { innerHTML: IconRegistry.get("volumelow") });
2684
+ this.mutedSpan = (0, import_utils.createEl)("span", { innerHTML: IconRegistry.get("volumemuted") });
2685
+ const spanWrapper = (0, import_utils.createEl)("span");
2686
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-touch-volume-notifier tmg-media-touch-vb-notifier" });
2687
+ this.el.append(this.content, this.slider, (spanWrapper.append(this.upSpan, this.lowSpan, this.mutedSpan), spanWrapper));
2688
+ return this.element;
2689
+ }
2690
+ wire() {
2691
+ super.wire();
2692
+ this.ctlr.plug("settings.volume")?.state.on("aptValue", this.handleVolumeState, { init: true, signal: this.signal });
2693
+ this.media.on("state.volume", this.handleVolumeState, { init: this.ctlr.payload.wired, signal: this.signal });
2694
+ }
2695
+ handleVolumeState({ value }) {
2696
+ this.content.textContent = `${value}%`;
2697
+ }
2698
+ };
2699
+ __publicField(TouchVolumeNotifier, "componentName", "touchvolumenotifier");
2700
+ __publicField(TouchVolumeNotifier, "triggers", ["volumeup", "volumedown", "volumemuted"]);
2701
+
2702
+ // src/ts/components/notifiers/touchbrightness.ts
2703
+ var TouchBrightnessNotifier = class extends BaseNotifier {
2704
+ constructor() {
2705
+ super(...arguments);
2706
+ __publicField(this, "content");
2707
+ __publicField(this, "slider");
2708
+ __publicField(this, "upSpan");
2709
+ __publicField(this, "lowSpan");
2710
+ __publicField(this, "darkSpan");
2711
+ }
2712
+ create() {
2713
+ this.content = (0, import_utils.createEl)("span", { className: "tmg-media-touch-brightness-content tmg-media-touch-vb-content", textContent: "0" });
2714
+ this.slider = (0, import_utils.createEl)("div", { className: "tmg-media-touch-brightness-slider tmg-media-touch-vb-slider" });
2715
+ this.upSpan = (0, import_utils.createEl)("span", { innerHTML: IconRegistry.get("brightnesshigh") });
2716
+ this.lowSpan = (0, import_utils.createEl)("span", { innerHTML: IconRegistry.get("brightnesslow") });
2717
+ this.darkSpan = (0, import_utils.createEl)("span", { innerHTML: IconRegistry.get("brightnessdark") });
2718
+ const spanWrapper = (0, import_utils.createEl)("span");
2719
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-touch-brightness-notifier tmg-media-touch-vb-notifier" });
2720
+ this.el.append(this.content, this.slider, (spanWrapper.append(this.upSpan, this.lowSpan, this.darkSpan), spanWrapper));
2721
+ return this.element;
2722
+ }
2723
+ wire() {
2724
+ super.wire();
2725
+ this.ctlr.plug("settings.brightness")?.state.on("aptValue", this.handleBrightnessState, { init: true, signal: this.signal });
2726
+ this.media.on("state.brightness", this.handleBrightnessState, { init: this.ctlr.payload.wired, signal: this.signal });
2727
+ }
2728
+ handleBrightnessState({ value }) {
2729
+ this.content.textContent = `${value}%`;
2730
+ }
2731
+ };
2732
+ __publicField(TouchBrightnessNotifier, "componentName", "touchbrightnessnotifier");
2733
+ __publicField(TouchBrightnessNotifier, "triggers", ["brightnessup", "brightnessdown", "brightnessdark"]);
2734
+
2735
+ // src/ts/components/notifiers/fastplay.ts
2736
+ var FastPlayNotifier = class extends BaseNotifier {
2737
+ constructor() {
2738
+ super(...arguments);
2739
+ __publicField(this, "text");
2740
+ }
2741
+ create() {
2742
+ this.element = (0, import_utils.createEl)("div", { className: "tmg-media-fast-play-notifier tmg-media-text-notifier tmg-media-top-text-notifier", innerHTML: `${IconRegistry.get("doubletriangleleft")}${IconRegistry.get("doubletriangleright")}` });
2743
+ this.text = (0, import_utils.createEl)("p", { className: "tmg-media-fast-play-notifier-text" });
2744
+ return this.el.insertBefore(this.text, this.el.lastChild), this.el;
2745
+ }
2746
+ wire() {
2747
+ super.wire();
2748
+ this.media.on("state.playbackRate", this.handlePlaybackRateState, { init: this.ctlr.payload.wired, signal: this.signal });
2749
+ this.media.on("state.currentTime", this.handleCurrentTimeState, { init: this.ctlr.payload.wired, signal: this.signal });
2750
+ }
2751
+ handlePlaybackRateState({ value }) {
2752
+ this.text.textContent = `${value}x`;
2753
+ }
2754
+ handleCurrentTimeState({ value }) {
2755
+ this.el.setAttribute("data-current-time", this.ctlr.plug("settings.time")?.toTimeText(value, true) ?? "0:00");
2756
+ }
2757
+ };
2758
+ __publicField(FastPlayNotifier, "componentName", "fastplaynotifier");
2759
+ __publicField(FastPlayNotifier, "triggers", ["fastplay"]);
2760
+
2761
+ // src/ts/components/notifiers/touchtimeline.ts
2762
+ var TouchTimelineNotifier = class extends BaseNotifier {
2763
+ create() {
2764
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-touch-timeline-notifier tmg-media-text-notifier", innerHTML: "Current Time" });
2765
+ }
2766
+ };
2767
+ __publicField(TouchTimelineNotifier, "componentName", "touchtimelinenotifier");
2768
+
2769
+ // src/ts/components/notifiers/chapter.ts
2770
+ var ChapterNotifier = class extends BaseNotifier {
2771
+ create() {
2772
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-chapter-notifier tmg-media-text-notifier tmg-media-top-text-notifier", innerHTML: "Current Chapter" });
2773
+ }
2774
+ wire() {
2775
+ super.wire();
2776
+ this.media.on("state.currentChapter", this.handleChapterState, { init: this.ctlr.payload.wired, signal: this.signal });
2777
+ }
2778
+ handleChapterState(e) {
2779
+ const chapter = this.media.settings.metadata.chapterInfo?.[e.value];
2780
+ this.el.textContent = chapter?.title || `Chapter ${e.value + 1}`;
2781
+ }
2782
+ };
2783
+ __publicField(ChapterNotifier, "componentName", "chapternotifier");
2784
+ __publicField(ChapterNotifier, "triggers", ["chapter"]);
2785
+
2786
+ // src/ts/components/notifiers/cast.ts
2787
+ var CastNotifier = class extends BaseNotifier {
2788
+ create() {
2789
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-cast-notifier", innerHTML: IconRegistry.get("cast") });
2790
+ }
2791
+ };
2792
+ __publicField(CastNotifier, "componentName", "castnotifier");
2793
+ __publicField(CastNotifier, "triggers", ["cast"]);
2794
+
2795
+ // src/ts/components/notifiers/airplay.ts
2796
+ var AirPlayNotifier = class extends BaseNotifier {
2797
+ create() {
2798
+ return this.element = (0, import_utils.createEl)("div", { className: "tmg-media-airplay-notifier", innerHTML: IconRegistry.get("airplay") });
2799
+ }
2800
+ };
2801
+ __publicField(AirPlayNotifier, "componentName", "airplaynotifier");
2802
+ __publicField(AirPlayNotifier, "triggers", ["airplay"]);
2803
+
2804
+ // src/ts/components/icons/play.ts
2805
+ var play = `<svg viewBox="0 0 25 25" class="tmg-media-play-icon">
2806
+ <path d="M8,5.14V19.14L19,12.14L8,5.14Z" />
2807
+ </svg>`;
2808
+
2809
+ // src/ts/components/icons/pause.ts
2810
+ var pause = `<svg viewBox="0 0 25 25" class="tmg-media-pause-icon">
2811
+ <path d="M14,19H18V5H14M6,19H10V5H6V19Z" />
2812
+ </svg>`;
2813
+
2814
+ // src/ts/components/icons/replay.ts
2815
+ var replay = `<svg viewBox="0 -960 960 960" class="tmg-media-replay-icon">
2816
+ <path d="M480-80q-75 0-140.5-28.5t-114-77q-48.5-48.5-77-114T120-440h80q0 117 81.5 198.5T480-160q117 0 198.5-81.5T760-440q0-117-81.5-198.5T480-720h-6l62 62-56 58-160-160 160-160 56 58-62 62h6q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-440q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-80Z" />
2817
+ </svg>`;
2818
+
2819
+ // src/ts/components/icons/prev.ts
2820
+ var prev = `<svg viewBox="0 0 25 25" class="tmg-media-prev-icon">
2821
+ <rect x="4" y="5.14" width="2.5" height="14" transform="translate(2.1,0)" />
2822
+ <path d="M17,5.14V19.14L6,12.14L17,5.14Z" transform="translate(2.5,0)" />
2823
+ </svg>`;
2824
+
2825
+ // src/ts/components/icons/next.ts
2826
+ var next = `<svg viewBox="0 0 25 25" class="tmg-media-next-icon">
2827
+ <path d="M8,5.14V19.14L19,12.14L8,5.14Z" transform="translate(-2.5,0)" />
2828
+ <rect x="19" y="5.14" width="2.5" height="14" transform="translate(-2.5,0)" />
2829
+ </svg>`;
2830
+
2831
+ // src/ts/components/icons/settings.ts
2832
+ var settings = `<svg class="tmg-media-settings-icon" viewBox="0 -960 960 960">
2833
+ <path d="m370-80-16-128q-13-5-24.5-12T307-235l-119 50L78-375l103-78q-1-7-1-13.5v-27q0-6.5 1-13.5L78-585l110-190 119 50q11-8 23-15t24-12l16-128h220l16 128q13 5 24.5 12t22.5 15l119-50 110 190-103 78q1 7 1 13.5v27q0 6.5-2 13.5l103 78-110 190-118-50q-11 8-23 15t-24 12L590-80H370Zm70-80h79l14-106q31-8 57.5-23.5T639-327l99 41 39-68-86-65q5-14 7-29.5t2-31.5q0-16-2-31.5t-7-29.5l86-65-39-68-99 42q-22-23-48.5-38.5T533-694l-13-106h-79l-14 106q-31 8-57.5 23.5T321-633l-99-41-39 68 86 64q-5 15-7 30t-2 32q0 16 2 31t7 30l-86 65 39 68 99-42q22 23 48.5 38.5T427-266l13 106Zm42-180q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Zm-2-140Z" />
2834
+ </svg>`;
2835
+
2836
+ // src/ts/components/icons/lock.ts
2837
+ var lock = `<svg class="tmg-media-screen-locked-icon" viewBox="0 0 512 512" style="scale: 0.825;">
2838
+ <path d="M390.234 171.594v-37.375c.016-36.969-15.078-70.719-39.328-94.906A133.88 133.88 0 0 0 256 0a133.88 133.88 0 0 0-94.906 39.313c-24.25 24.188-39.344 57.938-39.313 94.906v37.375H24.906V512h462.188V171.594zm-210.343-37.375c.016-21.094 8.469-39.938 22.297-53.813C216.047 66.594 234.891 58.125 256 58.125s39.953 8.469 53.813 22.281c13.828 13.875 22.281 32.719 22.297 53.813v37.375H179.891zm-96.86 95.5h345.938v224.156H83.031z"/>
2839
+ <path d="M297.859 321.844c0-23.125-18.75-41.875-41.859-41.875-23.125 0-41.859 18.75-41.859 41.875 0 17.031 10.219 31.625 24.828 38.156l-9.25 60.094h52.562L273.016 360c14.609-6.531 24.843-21.125 24.843-38.156"/>
2840
+ </svg>`;
2841
+
2842
+ // src/ts/components/icons/unlock.ts
2843
+ var unlock = `<svg class="tmg-media-screen-unlock-icon" viewBox="0 0 512 512" style="scale: 0.875; translate: 0 -1px;">
2844
+ <path d="M186.984 203.297v-81.578c.016-19.141 7.688-36.219 20.219-48.813C219.766 60.391 236.859 52.719 256 52.703c19.141.016 36.234 7.688 48.813 20.203 12.531 12.594 20.203 29.672 20.219 48.813v43.406h52.703v-43.406c.016-33.531-13.672-64.125-35.656-86.063C320.125 13.656 289.531-.016 256 0c-33.531-.016-64.125 13.656-86.063 35.656-22 21.938-35.672 52.531-35.656 86.063v81.578H46.438V512h419.125V203.297zM99.141 256H412.86v203.297H99.141z"/>
2845
+ <path d="M293.969 339.547c0-20.969-17-37.953-37.969-37.953s-37.953 16.984-37.953 37.953c0 15.453 9.266 28.703 22.516 34.609l-8.391 54.5h47.672l-8.406-54.5c13.25-5.906 22.531-19.156 22.531-34.609"/>
2846
+ </svg>`;
2847
+
2848
+ // src/ts/components/icons/enterfullscreen.ts
2849
+ var enterfullscreen = `<svg class="tmg-media-enter-fullscreen-icon" viewBox="0 0 25 25" style="scale: 0.8;">
2850
+ <path d="M4 1.5C2.61929 1.5 1.5 2.61929 1.5 4V8.5C1.5 9.05228 1.94772 9.5 2.5 9.5H3.5C4.05228 9.5 4.5 9.05228 4.5 8.5V4.5H8.5C9.05228 4.5 9.5 4.05228 9.5 3.5V2.5C9.5 1.94772 9.05228 1.5 8.5 1.5H4Z" />
2851
+ <path d="M20 1.5C21.3807 1.5 22.5 2.61929 22.5 4V8.5C22.5 9.05228 22.0523 9.5 21.5 9.5H20.5C19.9477 9.5 19.5 9.05228 19.5 8.5V4.5H15.5C14.9477 4.5 14.5 4.05228 14.5 3.5V2.5C14.5 1.94772 14.9477 1.5 15.5 1.5H20Z" />
2852
+ <path d="M20 22.5C21.3807 22.5 22.5 21.3807 22.5 20V15.5C22.5 14.9477 22.0523 14.5 21.5 14.5H20.5C19.9477 14.5 19.5 14.9477 19.5 15.5V19.5H15.5C14.9477 19.5 14.5 19.9477 14.5 20.5V21.5C14.5 22.0523 14.9477 22.5 15.5 22.5H20Z" />
2853
+ <path d="M1.5 20C1.5 21.3807 2.61929 22.5 4 22.5H8.5C9.05228 22.5 9.5 22.0523 9.5 21.5V20.5C9.5 19.9477 9.05228 19.5 8.5 19.5H4.5V15.5C4.5 14.9477 4.05228 14.5 3.5 14.5H2.5C1.94772 14.5 1.5 14.9477 1.5 15.5V20Z" />
2854
+ </svg>`;
2855
+
2856
+ // src/ts/components/icons/leavefullscreen.ts
2857
+ var leavefullscreen = `<svg class="tmg-media-leave-fullscreen-icon" viewBox="0 0 25 25" style="scale: 0.8;">
2858
+ <path d="M7 9.5C8.38071 9.5 9.5 8.38071 9.5 7V2.5C9.5 1.94772 9.05228 1.5 8.5 1.5H7.5C6.94772 1.5 6.5 1.94772 6.5 2.5V6.5H2.5C1.94772 6.5 1.5 6.94772 1.5 7.5V8.5C1.5 9.05228 1.94772 9.5 2.5 9.5H7Z" />
2859
+ <path d="M17 9.5C15.6193 9.5 14.5 8.38071 14.5 7V2.5C14.5 1.94772 14.9477 1.5 15.5 1.5H16.5C17.0523 1.5 17.5 1.94772 17.5 2.5V6.5H21.5C22.0523 6.5 22.5 6.94772 22.5 7.5V8.5C22.5 9.05228 22.0523 9.5 21.5 9.5H17Z" />
2860
+ <path d="M17 14.5C15.6193 14.5 14.5 15.6193 14.5 17V21.5C14.5 22.0523 14.9477 22.5 15.5 22.5H16.5C17.0523 22.5 17.5 22.0523 17.5 21.5V17.5H21.5C22.0523 17.5 22.5 17.0523 22.5 16.5V15.5C22.5 14.9477 22.0523 14.5 21.5 14.5H17Z" />
2861
+ <path d="M9.5 17C9.5 15.6193 8.38071 14.5 7 14.5H2.5C1.94772 14.5 1.5 14.9477 1.5 15.5V16.5C1.5 17.0523 1.94772 17.5 2.5 17.5H6.5V21.5C6.5 22.0523 6.94772 22.5 7.5 22.5H8.5C9.05228 22.5 9.5 22.0523 9.5 21.5V17Z" />
2862
+ </svg>`;
2863
+
2864
+ // src/ts/components/icons/enterpip.ts
2865
+ var enterpip = `<svg class="tmg-media-enter-picture-in-picture-icon" viewBox="0 0 25 25">
2866
+ <path fill-rule="nonzero" d="M21 3a1 1 0 0 1 1 1v7h-2V5H4v14h6v2H3a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h18zm0 10a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1h-8a1 1 0 0 1-1-1v-6a1 1 0 0 1 1-1h8zM6.707 6.293l2.25 2.25L11 6.5V12H5.5l2.043-2.043-2.25-2.25 1.414-1.414z" />
2867
+ </svg>`;
2868
+
2869
+ // src/ts/components/icons/leavepip.ts
2870
+ var leavepip = `<svg class="tmg-media-leave-picture-in-picture-icon" viewBox="0 0 25 25">
2871
+ <path fill-rule="nonzero" d="M21 3a1 1 0 0 1 1 1v7h-2V5H4v14h6v2H3a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h18zm0 10a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1h-8a1 1 0 0 1-1-1v-6a1 1 0 0 1 1-1h8zm-9.5-6L9.457 9.043l2.25 2.25-1.414 1.414-2.25-2.25L6 12.5V7h5.5z" />
2872
+ </svg>`;
2873
+
2874
+ // src/ts/components/icons/expandminiplayer.ts
2875
+ var expandminiplayer = `<svg class="tmg-media-miniplayer-expand-icon" viewBox="0 -960 960 960" style="scale: 0.9; rotate: 90deg;">
2876
+ <path d="M120-120v-320h80v184l504-504H520v-80h320v320h-80v-184L256-200h184v80H120Z" />
2877
+ </svg>`;
2878
+
2879
+ // src/ts/components/icons/removeminiplayer.ts
2880
+ var removeminiplayer = `<svg class="tmg-media-miniplayer-remove-icon" viewBox="0 -960 960 960">
2881
+ <path d="m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z" />
2882
+ </svg>`;
2883
+
2884
+ // src/ts/components/icons/capture.ts
2885
+ var capture = `<svg class="tmg-media-capture-icon" viewBox="0 0 24 24">
2886
+ <path fill-rule="evenodd" d="M6.937 5.845c.07-.098.15-.219.25-.381l.295-.486C8.31 3.622 8.913 3 10 3h4c1.087 0 1.69.622 2.518 1.978l.295.486c.1.162.18.283.25.381q.071.098.12.155H20a3 3 0 0 1 3 3v9a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V9a3 3 0 0 1 3-3h2.816q.05-.057.121-.155M4 8a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1h16a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1h-3c-.664 0-1.112-.364-1.56-.987a8 8 0 0 1-.329-.499c-.062-.1-.27-.445-.3-.492C14.36 5.282 14.088 5 14 5h-4c-.087 0-.36.282-.812 1.022-.029.047-.237.391-.3.492a8 8 0 0 1-.327.5C8.112 7.635 7.664 8 7 8zm15 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-7 7a5 5 0 1 1 0-10 5 5 0 0 1 0 10m0-2a3 3 0 1 0 0-6 3 3 0 0 0 0 6"/>
2887
+ </svg>`;
2888
+
2889
+ // src/ts/components/icons/cast.ts
2890
+ var cast = `<svg class="tmg-media-cast-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="scale: 0.9;">
2891
+ <path fill="none" d="M2 16.1A5 5 0 0 1 5.9 20M2 12.05A9 9 0 0 1 9.95 20M2 8V6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6M2 20h.01"/>
2892
+ </svg>`;
2893
+
2894
+ // src/ts/components/icons/airplay.ts
2895
+ var airplay = `<svg class="tmg-media-airplay-icon" viewBox="0 0 24 24">
2896
+ <path d="M12.8 13.4c-.1-.1-.1-.2-.2-.2-.5-.3-1.1-.2-1.5.2l-4 6c0 .2-.1.4-.1.6 0 .6.4 1 1 1h8c.2 0 .4-.1.6-.2.5-.3.6-.9.3-1.4zM19 3H5C3.3 3 2 4.3 2 6v9c0 1.7 1.3 3 3 3h.8c.6 0 1-.4 1-1s-.4-1-1-1H5c-.6 0-1-.4-1-1V6c0-.6.4-1 1-1h14c.6 0 1 .4 1 1v9c0 .6-.4 1-1 1h-.8c-.6 0-1 .4-1 1s.4 1 1 1h.8c1.7 0 3-1.3 3-3V6c0-1.7-1.3-3-3-3"/>
2897
+ </svg>
2898
+ `;
2899
+
2900
+ // src/ts/components/icons/objectfitcontain.ts
2901
+ var objectfitcontain = `<svg class="tmg-media-object-fit-contain-icon" viewBox="0 0 16 16" style="scale: 0.75;">
2902
+ <rect width="16" height="16" rx="4" ry="4" fill="none" stroke-width="2.25" stroke="currentColor"/>
2903
+ <g stroke-width="1" stroke="currentColor" transform="translate(3,3)">
2904
+ <path style="scale: 0.6;" d="M521.667563,212.999001 L523.509521,212.999001 C523.784943,212.999001 524,213.222859 524,213.499001 C524,213.767068 523.780405,213.999001 523.509521,213.999001 L520.490479,213.999001 C520.354351,213.999001 520.232969,213.944316 520.145011,213.855661 C520.056625,213.763694 520,213.642369 520,213.508523 L520,210.48948 C520,210.214059 520.223858,209.999001 520.5,209.999001 C520.768066,209.999001 521,210.218596 521,210.48948 L521,212.252351 L525.779724,207.472627 C525.975228,207.277123 526.284966,207.283968 526.480228,207.47923 C526.66978,207.668781 526.678447,207.988118 526.486831,208.179734 L521.667563,212.999001 Z" transform="translate(-520 -198)"/><path style="scale: 0.6;" d="M534.251065,199 L532.488194,199 C532.212773,199 531.997715,198.776142 531.997715,198.5 C531.997715,198.231934 532.21731,198 532.488194,198 L535.507237,198 C535.643364,198 535.764746,198.054685 535.852704,198.14334 C535.94109,198.235308 535.997715,198.356632 535.997715,198.490479 L535.997715,201.509521 C535.997715,201.784943 535.773858,202 535.497715,202 C535.229649,202 534.997715,201.780405 534.997715,201.509521 L534.997715,199.667563 L530.178448,204.486831 C529.982944,204.682335 529.673206,204.67549 529.477943,204.480228 C529.288392,204.290677 529.279725,203.97134 529.471341,203.779724 L534.251065,199 Z" transform="translate(-520 -198)"/>
2905
+ </g>
2906
+ </svg>`;
2907
+
2908
+ // src/ts/components/icons/objectfitcover.ts
2909
+ var objectfitcover = `<svg class="tmg-media-object-fit-cover-icon" viewBox="0 0 16 16" style="scale: 0.75;">
2910
+ <rect width="16" height="16" rx="4" ry="4" fill="none" stroke-width="2.25" stroke="currentColor"/>
2911
+ <g stroke-width="1" stroke="currentColor" transform="translate(3,3)">
2912
+ <path style="scale: 0.6;" d="M521.667563,212.999001 L523.509521,212.999001 C523.784943,212.999001 524,213.222859 524,213.499001 C524,213.767068 523.780405,213.999001 523.509521,213.999001 L520.490479,213.999001 C520.354351,213.999001 520.232969,213.944316 520.145011,213.855661 C520.056625,213.763694 520,213.642369 520,213.508523 L520,210.48948 C520,210.214059 520.223858,209.999001 520.5,209.999001 C520.768066,209.999001 521,210.218596 521,210.48948 L521,212.252351 L525.779724,207.472627 C525.975228,207.277123 526.284966,207.283968 526.480228,207.47923 C526.66978,207.668781 526.678447,207.988118 526.486831,208.179734 L521.667563,212.999001 Z" transform="translate(-520 -198)"/><path style="scale: 0.6;" d="M534.330152,212.999001 L532.488194,212.999001 C532.212773,212.999001 531.997715,213.222859 531.997715,213.499001 C531.997715,213.767068 532.21731,213.999001 532.488194,213.999001 L535.507237,213.999001 C535.643364,213.999001 535.764746,213.944316 535.852704,213.855661 C535.94109,213.763694 535.997715,213.642369 535.997715,213.508523 L535.997715,210.48948 C535.997715,210.214059 535.773858,209.999001 535.497715,209.999001 C535.229649,209.999001 534.997715,210.218596 534.997715,210.48948 L534.997715,212.252351 L530.217991,207.472627 C530.022487,207.277123 529.712749,207.283968 529.517487,207.47923 C529.327935,207.668781 529.319269,207.988118 529.510884,208.179734 L534.330152,212.999001 Z" transform="translate(-520 -198)"/><path style="scale: 0.6;" d="M521.667563,199 L523.509521,199 C523.784943,199 524,198.776142 524,198.5 C524,198.231934 523.780405,198 523.509521,198 L520.490479,198 C520.354351,198 520.232969,198.054685 520.145011,198.14334 C520.056625,198.235308 520,198.356632 520,198.490479 L520,201.509521 C520,201.784943 520.223858,202 520.5,202 C520.768066,202 521,201.780405 521,201.509521 L521,199.74665 L525.779724,204.526374 C525.975228,204.721878 526.284966,204.715034 526.480228,204.519772 C526.66978,204.33022 526.678447,204.010883 526.486831,203.819268 L521.667563,199 Z" transform="translate(-520 -198)"/><path style="scale: 0.6;" d="M534.251065,199 L532.488194,199 C532.212773,199 531.997715,198.776142 531.997715,198.5 C531.997715,198.231934 532.21731,198 532.488194,198 L535.507237,198 C535.643364,198 535.764746,198.054685 535.852704,198.14334 C535.94109,198.235308 535.997715,198.356632 535.997715,198.490479 L535.997715,201.509521 C535.997715,201.784943 535.773858,202 535.497715,202 C535.229649,202 534.997715,201.780405 534.997715,201.509521 L534.997715,199.667563 L530.178448,204.486831 C529.982944,204.682335 529.673206,204.67549 529.477943,204.480228 C529.288392,204.290677 529.279725,203.97134 529.471341,203.779724 L534.251065,199 Z" transform="translate(-520 -198)"/>
2913
+ </g>
2914
+ </svg>`;
2915
+
2916
+ // src/ts/components/icons/objectfitfill.ts
2917
+ var objectfitfill = `<svg class="tmg-media-object-fit-fill-icon" viewBox="0 0 16 16" style="scale: 0.75;">
2918
+ <rect x="4" y="4" width="8" height="8" rx="1" ry="1" fill="none" stroke-width="1.5" stroke="currentColor"/>
2919
+ <g stroke-width="1" stroke="currentColor" transform="translate(3, 3)">
2920
+ <path style="scale: 0.65;" d="M521.667563,212.999001 L523.509521,212.999001 C523.784943,212.999001 524,213.222859 524,213.499001 C524,213.767068 523.780405,213.999001 523.509521,213.999001 L520.490479,213.999001 C520.354351,213.999001 520.232969,213.944316 520.145011,213.855661 C520.056625,213.763694 520,213.642369 520,213.508523 L520,210.48948 C520,210.214059 520.223858,209.999001 520.5,209.999001 C520.768066,209.999001 521,210.218596 521,210.48948 L521,212.252351 L525.779724,207.472627 C525.975228,207.277123 526.284966,207.283968 526.480228,207.47923 C526.66978,207.668781 526.678447,207.988118 526.486831,208.179734 L521.667563,212.999001 Z" transform="translate(-520, -198) translate(-3.25, 2.75)" /><path style="scale: 0.65;" d="M534.251065,199 L532.488194,199 C532.212773,199 531.997715,198.776142 531.997715,198.5 C531.997715,198.231934 532.21731,198 532.488194,198 L535.507237,198 C535.643364,198 535.764746,198.054685 535.852704,198.14334 C535.94109,198.235308 535.997715,198.356632 535.997715,198.490479 L535.997715,201.509521 C535.997715,201.784943 535.773858,202 535.497715,202 C535.229649,202 534.997715,201.780405 534.997715,201.509521 L534.997715,199.667563 L530.178448,204.486831 C529.982944,204.682335 529.673206,204.67549 529.477943,204.480228 C529.288392,204.290677 529.279725,203.97134 529.471341,203.779724 L534.251065,199 Z" transform="translate(-520, -198) translate(2.5, -3.25)" />
2921
+ </g>
2922
+ </svg>`;
2923
+
2924
+ // src/ts/components/icons/volumehigh.ts
2925
+ var volumehigh = `<svg class="tmg-media-volume-high-icon" viewBox="0 0 25 25">
2926
+ <path d="M14,3.23V5.29C16.89,6.15 19,8.83 19,12C19,15.17 16.89,17.84 14,18.7V20.77C18,19.86 21,16.28 21,12C21,7.72 18,4.14 14,3.23M16.5,12C16.5,10.23 15.5,8.71 14,7.97V16C15.5,15.29 16.5,13.76 16.5,12M3,9V15H7L12,20V4L7,9H3Z" />
2927
+ </svg>`;
2928
+
2929
+ // src/ts/components/icons/volumelow.ts
2930
+ var volumelow = `<svg class="tmg-media-volume-low-icon" viewBox="0 0 25 25">
2931
+ <path d="M5,9V15H9L14,20V4L9,9M18.5,12C18.5,10.23 17.5,8.71 16,7.97V16C17.5,15.29 18.5,13.76 18.5,12Z" />
2932
+ </svg>`;
2933
+
2934
+ // src/ts/components/icons/volumemuted.ts
2935
+ var volumemuted = `<svg class="tmg-media-volume-muted-icon" viewBox="0 0 25 25">
2936
+ <path d="M12,4L9.91,6.09L12,8.18M4.27,3L3,4.27L7.73,9H3V15H7L12,20V13.27L16.25,17.53C15.58,18.04 14.83,18.46 14,18.7V20.77C15.38,20.45 16.63,19.82 17.68,18.96L19.73,21L21,19.73L12,10.73M19,12C19,12.94 18.8,13.82 18.46,14.64L19.97,16.15C20.62,14.91 21,13.5 21,12C21,7.72 18,4.14 14,3.23V5.29C16.89,6.15 19,8.83 19,12M16.5,12C16.5,10.23 15.5,8.71 14,7.97V10.18L16.45,12.63C16.5,12.43 16.5,12.21 16.5,12Z" />
2937
+ </svg>`;
2938
+
2939
+ // src/ts/components/icons/brightnesshigh.ts
2940
+ var brightnesshigh = `<svg class="tmg-media-brightness-high-icon" viewBox="0 0 25 25">
2941
+ <path transform="translate(1.5, 1.5)" style="scale: 1.05;" d="M10 14.858a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm6-5h3a1 1 0 0 1 0 2h-3a1 1 0 0 1 0-2zm-6 6a1 1 0 0 1 1 1v3a1 1 0 0 1-2 0v-3a1 1 0 0 1 1-1zm0-15a1 1 0 0 1 1 1v3a1 1 0 0 1-2 0v-3a1 1 0 0 1 1-1zm-9 9h3a1 1 0 1 1 0 2H1a1 1 0 0 1 0-2zm13.95 4.535l2.121 2.122a1 1 0 0 1-1.414 1.414l-2.121-2.121a1 1 0 0 1 1.414-1.415zm-8.486 0a1 1 0 0 1 0 1.415l-2.12 2.12a1 1 0 1 1-1.415-1.413l2.121-2.122a1 1 0 0 1 1.414 0zM17.071 3.787a1 1 0 0 1 0 1.414L14.95 7.322a1 1 0 0 1-1.414-1.414l2.12-2.121a1 1 0 0 1 1.415 0zm-12.728 0l2.121 2.121A1 1 0 1 1 5.05 7.322L2.93 5.201a1 1 0 0 1 1.414-1.414z" />
2942
+ </svg>`;
2943
+
2944
+ // src/ts/components/icons/brightnesslow.ts
2945
+ var brightnesslow = `<svg class="tmg-media-brightness-low-icon" viewBox="0 0 25 25">
2946
+ <path transform="translate(3.25, 3.25)" style="scale: 1.05;" d="M8 12.858a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm6-5h1a1 1 0 0 1 0 2h-1a1 1 0 0 1 0-2zm-6 6a1 1 0 0 1 1 1v1a1 1 0 0 1-2 0v-1a1 1 0 0 1 1-1zm0-13a1 1 0 0 1 1 1v1a1 1 0 1 1-2 0v-1a1 1 0 0 1 1-1zm-7 7h1a1 1 0 1 1 0 2H1a1 1 0 1 1 0-2zm11.95 4.535l.707.708a1 1 0 1 1-1.414 1.414l-.707-.707a1 1 0 0 1 1.414-1.415zm-8.486 0a1 1 0 0 1 0 1.415l-.707.707A1 1 0 0 1 2.343 13.1l.707-.708a1 1 0 0 1 1.414 0zm9.193-9.192a1 1 0 0 1 0 1.414l-.707.707a1 1 0 0 1-1.414-1.414l.707-.707a1 1 0 0 1 1.414 0zm-9.9 0l.707.707A1 1 0 1 1 3.05 5.322l-.707-.707a1 1 0 0 1 1.414-1.414z" />
2947
+ </svg>`;
2948
+
2949
+ // src/ts/components/icons/brightnessdark.ts
2950
+ var brightnessdark = `<svg class="tmg-media-brightness-dark-icon" viewBox="0 0 25 25">
2951
+ <path transform="translate(2, 2.5)" style="scale: 1.2;" d="M12 8a4 4 0 1 1-8 0 4 4 0 0 1 8 0zM8.5 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm0 11a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm5-5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm-11 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm9.743-4.036a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm-7.779 7.779a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm7.072 0a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707zM3.757 4.464a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707z" />
2952
+ </svg>`;
2953
+
2954
+ // src/ts/components/icons/entertheater.ts
2955
+ var entertheater = `<svg class="tmg-media-enter-theater-icon" viewBox="0 0 25 25">
2956
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M23 7C23 5.34315 21.6569 4 20 4H4C2.34315 4 1 5.34315 1 7V17C1 18.6569 2.34315 20 4 20H20C21.6569 20 23 18.6569 23 17V7ZM21 7C21 6.44772 20.5523 6 20 6H4C3.44772 6 3 6.44771 3 7V17C3 17.5523 3.44772 18 4 18H20C20.5523 18 21 17.5523 21 17V7Z" />
2957
+ </svg>`;
2958
+
2959
+ // src/ts/components/icons/leavetheater.ts
2960
+ var leavetheater = `<svg class="tmg-media-leave-theater-icon" viewBox="0 0 25 25">
2961
+ <path d="M19 6H5c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 10H5V8h14v8z" />
2962
+ </svg>`;
2963
+
2964
+ // src/ts/components/icons/fullscreenorientation.ts
2965
+ var fullscreenorientation = `<svg class="tmg-media-fullscreen-orientation-icon" viewBox="0 0 512 512" style="scale: 0.925;">
2966
+ <path d="M446.81,275.82H236.18V65.19c0-20.78-16.91-37.69-37.69-37.69H65.19c-20.78,0-37.69,16.91-37.69,37.69v255.32c0,20.78,16.91,37.68,37.69,37.68h88.62v88.62c0,20.78,16.9,37.69,37.68,37.69h255.32c20.78,0,37.69-16.91,37.69-37.69v-133.3C484.5,292.73,467.59,275.82,446.81,275.82zM65.19,326.19c-3.14,0-5.69-2.55-5.69-5.68V65.19c0-3.14,2.55-5.69,5.69-5.69h133.3c3.14,0,5.69,2.55,5.69,5.69v210.63h-12.69c-20.78,0-37.68,16.91-37.68,37.69v12.68H65.19zM452.5,446.81c0,3.14-2.55,5.69-5.69,5.69H191.49c-3.13,0-5.68-2.55-5.68-5.69V342.19v-28.68c0-2.94,2.24-5.37,5.1-5.66c0.19-0.02,0.38-0.03,0.58-0.03h28.69h226.63c3.14,0,5.69,2.55,5.69,5.69V446.81z" />
2967
+ <path d="M369.92,181.53c-6.25-6.25-16.38-6.25-22.63,0c-6.25,6.25-6.25,16.38,0,22.63l44.39,44.39c3.12,3.13,7.22,4.69,11.31,4.69c0.21,0,0.42-0.02,0.63-0.03c0.2,0.01,0.4,0.03,0.6,0.03c6.31,0,11.74-3.66,14.35-8.96l37.86-37.86c6.25-6.25,6.25-16.38,0-22.63c-6.25-6.25-16.38-6.25-22.63,0l-13.59,13.59v-86.58c0-8.84-7.16-16-16-16h-86.29l15.95-15.95c6.25-6.25,6.25-16.38,0-22.63c-6.25-6.25-16.38-6.25-22.63,0l-40.33,40.33c-5.19,2.65-8.75,8.03-8.75,14.25c0,0.19,0.02,0.37,0.03,0.56c-0.01,0.19-0.03,0.38-0.03,0.57c0,4.24,1.69,8.31,4.69,11.31l42.14,42.14c3.12,3.12,7.22,4.69,11.31,4.69s8.19-1.56,11.31-4.69c6.25-6.25,6.25-16.38,0-22.63l-15.95-15.95h72.54v73.05L369.92,181.53z" />
2968
+ </svg>`;
2969
+
2970
+ // src/ts/components/icons/returnback.ts
2971
+ var returnback = `<svg class="tmg-media-return-back-icon" viewBox="0 0 25 25">
2972
+ <path transform="translate(5.5, 5.5)" d="M1.307,5.988 L6.616,1.343 C7.027,0.933 7.507,0.864 7.918,1.275 L7.918,4.407 C8.014,4.406 8.098,4.406 8.147,4.406 C13.163,4.406 16.885,7.969 16.885,12.816 C16.885,14.504 16.111,13.889 15.788,13.3 C14.266,10.52 11.591,8.623 8.107,8.623 C8.066,8.623 7.996,8.624 7.917,8.624 L7.917,11.689 C7.506,12.099 6.976,12.05 6.615,11.757 L1.306,7.474 C0.897,7.064 0.897,6.399 1.307,5.988 L1.307,5.988 Z" />
2973
+ </svg>
2974
+ `;
2975
+
2976
+ // src/ts/components/icons/subtitles.ts
2977
+ var subtitles = `<svg viewBox="0 0 25 25" class="tmg-media-subtitles-icon">
2978
+ <path style="scale: 0.5;" d="M44,6H4A2,2,0,0,0,2,8V40a2,2,0,0,0,2,2H44a2,2,0,0,0,2-2V8A2,2,0,0,0,44,6ZM12,26h4a2,2,0,0,1,0,4H12a2,2,0,0,1,0-4ZM26,36H12a2,2,0,0,1,0-4H26a2,2,0,0,1,0,4Zm10,0H32a2,2,0,0,1,0-4h4a2,2,0,0,1,0,4Zm0-6H22a2,2,0,0,1,0-4H36a2,2,0,0,1,0,4Z" />
2979
+ </svg>`;
2980
+
2981
+ // src/ts/components/icons/captions.ts
2982
+ var captions = `<svg viewBox="0 0 25 25" class="tmg-media-captions-icon" style="scale: 1.15;">
2983
+ <path d="M18,11H16.5V10.5H14.5V13.5H16.5V13H18V14A1,1 0 0,1 17,15H14A1,1 0 0,1 13,14V10A1,1 0 0,1 14,9H17A1,1 0 0,1 18,10M11,11H9.5V10.5H7.5V13.5H9.5V13H11V14A1,1 0 0,1 10,15H7A1,1 0 0,1 6,14V10A1,1 0 0,1 7,9H10A1,1 0 0,1 11,10M19,4H5C3.89,4 3,4.89 3,6V18A2,2 0 0,0 5,20H19A2,2 0 0,0 21,18V6C21,4.89 20.1,4 19,4Z" />
2984
+ </svg>`;
2985
+
2986
+ // src/ts/components/icons/triangleleft.ts
2987
+ var triangleleft = `<svg viewBox="0 0 25 25" class="tmg-media-triangle-left-icon">
2988
+ <path d="M17,5.14V19.14L6,12.14L17,5.14Z" />
2989
+ </svg>`;
2990
+
2991
+ // src/ts/components/icons/doubletriangleleft.ts
2992
+ var doubletriangleleft = `<svg viewBox="0 0 30 24"><path d="M22,5.14V19.14L11,12.14L22,5.14Z" /><path d="M11,5.14V19.14L0,12.14L11,5.14Z" /></svg>`;
2993
+
2994
+ // src/ts/components/icons/doubletriangleright.ts
2995
+ var doubletriangleright = `<svg viewBox="0 0 30 24"><path d="M8,5.14V19.14L19,12.14L8,5.14Z" /><path d="M19,5.14V19.14L30,12.14L19,5.14Z" /></svg>`;
2996
+
2997
+ // src/ts/components/icons/fwd.ts
2998
+ var fwd = `
2999
+ <svg viewBox="0 0 25 25" class="tmg-media-fwd-icon"><path d="M8,5.14V19.14L19,12.14L8,5.14Z" /></svg>
3000
+ <svg viewBox="0 0 25 25" class="tmg-media-fwd-icon"><path d="M8,5.14V19.14L19,12.14L8,5.14Z" /></svg>
3001
+ <svg viewBox="0 0 25 25" class="tmg-media-fwd-icon"><path d="M8,5.14V19.14L19,12.14L8,5.14Z" /></svg>
3002
+ `;
3003
+
3004
+ // src/ts/components/icons/bwd.ts
3005
+ var bwd = `
3006
+ <svg viewBox="0 0 25 25" class="tmg-media-bwd-icon"><path d="M17,5.14V19.14L6,12.14L17,5.14Z" /></svg>
3007
+ <svg viewBox="0 0 25 25" class="tmg-media-bwd-icon"><path d="M17,5.14V19.14L6,12.14L17,5.14Z" /></svg>
3008
+ <svg viewBox="0 0 25 25" class="tmg-media-bwd-icon"><path d="M17,5.14V19.14L6,12.14L17,5.14Z" /></svg>
3009
+ `;
3010
+
3011
+ // src/ts/components/icons/pipplaceholder.ts
3012
+ var pipplaceholder = `<svg class="tmg-media-pip-placeholder-icon" viewBox="0 0 73 73">
3013
+ <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
3014
+ <g transform="translate(2, 2)" fill-rule="nonzero" stroke-width="2" class="tmg-media-pip-icon-background">
3015
+ <rect x="-1" y="-1" width="71" height="71" rx="14" />
3016
+ </g>
3017
+ <g transform="translate(15, 15)" fill-rule="nonzero">
3018
+ <g>
3019
+ <polygon class="tmg-media-pip-icon-content-background" points="0 0 0 36 36 36 36 0" />
3020
+ <rect class="tmg-media-pip-icon-content-backdrop" x="4.2890625" y="4.2890625" width="27.421875" height="13.2679687" />
3021
+ <g transform="translate(4.289063, 27.492187)">
3022
+ <rect x="0" y="0" width="3.1640625" height="2.109375" class="tmg-media-pip-icon-timeline-progress" />
3023
+ <rect x="7.3828125" y="0" width="20.0390625" height="2.109375" class="tmg-media-pip-icon-timeline-base" />
3024
+ </g>
3025
+ <circle class="tmg-media-pip-icon-timeline-thumb" cx="9.5625" cy="28.546875" r="3.1640625" />
3026
+ <polygon class="tmg-media-pip-icon-content" points="31.7109375 17.5569609 31.7109375 23.2734375 4.2890625 23.2734375 4.2890625 17.5569609 13.78125 8.06477344 20.109375 14.3928984 24.328125 10.1741484" />
3027
+ </g>
3028
+ <g transform="translate(21, 26)">
3029
+ <polygon class="tmg-media-pip-icon-content-background" points="0 0 0 17.7727273 23 17.7727273 23 0" />
3030
+ <rect class="tmg-media-pip-icon-content-backdrop" x="2.74023438" y="2.74023438" width="17.5195312" height="8.47675781" />
3031
+ <polygon class="tmg-media-pip-icon-content" points="20.2597656 11.2169473 20.2597656 14.8691406 2.74023438 14.8691406 2.74023438 11.2169473 8.8046875 5.15249414 12.8476562 9.19546289 15.5429687 6.50015039" />
3032
+ </g>
3033
+ </g>
3034
+ </g>
3035
+ </svg>`;
3036
+
3037
+ // src/ts/components/icons/castplaceholder.ts
3038
+ var castplaceholder = `<svg class="tmg-media-cast-placeholder-icon" viewBox="0 0 73 73">
3039
+ <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
3040
+ <g transform="translate(2, 2)" fill-rule="nonzero" stroke-width="2" class="tmg-media-cast-icon-background">
3041
+ <rect x="-1" y="-1" width="71" height="71" rx="14" />
3042
+ </g>
3043
+ <g transform="translate(11, 14)">
3044
+ <rect class="tmg-media-cast-icon-content-background" fill="currentColor" x="0" y="0" width="51" height="36" rx="4" />
3045
+ <rect class="tmg-media-cast-icon-content-backdrop" fill="currentColor" x="3" y="3" width="45" height="30" />
3046
+ <polygon class="tmg-media-cast-icon-content" fill="currentColor" points="48 22 48 33 22 33 28 20 34 26 42 16" />
3047
+ <polygon class="tmg-media-cast-icon-tv-base" fill="currentColor" points="19 36 32 36 36 42 15 42" />
3048
+ <circle class="tmg-media-cast-icon-waves-fill" fill="currentColor" cx="6" cy="30" r="2.5" />
3049
+ <path class="tmg-media-cast-icon-waves-stroke" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" fill="none" d="M 3,21 A 12,12 0 0,1 15,33" />
3050
+ <path class="tmg-media-cast-icon-waves-stroke" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" fill="none" d="M 3,12 A 21,21 0 0,1 24,33" />
3051
+ </g>
3052
+ </g>
3053
+ </svg>`;
3054
+
3055
+ // src/ts/components/icons/airplayplaceholder.ts
3056
+ var airplayplaceholder = `<svg class="tmg-media-airplay-placeholder-icon" viewBox="0 0 73 73">
3057
+ <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
3058
+ <g transform="translate(2, 2)" fill-rule="nonzero" stroke-width="2" class="tmg-media-airplay-icon-background">
3059
+ <rect x="-1" y="-1" width="71" height="71" rx="14" />
3060
+ </g>
3061
+ <g transform="translate(11, 14)">
3062
+ <rect class="tmg-media-airplay-icon-content-background" fill="currentColor" x="0" y="0" width="51" height="36" rx="4" />
3063
+ <rect class="tmg-media-airplay-icon-content-backdrop" fill="currentColor" x="3" y="3" width="45" height="30" />
3064
+ <polygon class="tmg-media-airplay-icon-content" fill="currentColor" points="48 22 48 33 22 33 28 20 34 26 42 16" />
3065
+ </g>
3066
+ <polygon class="tmg-media-airplay-icon-arrow" fill="currentColor" points="36.5 40 48 56 25 56" />
3067
+ </g>
3068
+ </svg>`;
3069
+
3070
+ // src/ts/components/icons/dragindicator.ts
3071
+ var dragindicator = `<svg fill="currentColor" height="20px" width="20px" viewBox="0 0 24 24" style="scale: 0.6"><path d="M10,6H6V2h4V6z M18,2h-4v4h4V2z M10,10H6v4h4V10z M18,10h-4v4h4V10z M10,18H6v4h4V18z M18,18h-4v4h4V18z"/></svg>`;
3072
+
3073
+ // src/ts/components/icons/deleteicon.ts
3074
+ var deleteicon = `<svg viewBox="0 0 24 24" fill="none"><path d="M7 4a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v2h4a1 1 0 1 1 0 2h-1.069l-.867 12.142A2 2 0 0 1 17.069 22H6.93a2 2 0 0 1-1.995-1.858L4.07 8H3a1 1 0 0 1 0-2h4V4zm2 2h6V4H9v2zM6.074 8l.857 12H17.07l.857-12H6.074zM10 10a1 1 0 0 1 1 1v6a1 1 0 1 1-2 0v-6a1 1 0 0 1 1-1zm4 0a1 1 0 0 1 1 1v6a1 1 0 1 1-2 0v-6a1 1 0 0 1 1-1z" fill="currentColor"/></svg>`;
3075
+
3076
+ // src/ts/components/icons/playlist.ts
3077
+ var playlist = `<svg viewBox="0 0 24 24" fill="currentColor"><path d="M3 10h11v2H3v-2zm0-4h11v2H3V6zm0 8h7v2H3v-2zm13-1v8h2v-6h4v-2h-6z"/></svg>`;
3078
+
3079
+ // src/ts/components/icons/autoplay.ts
3080
+ var autoplay = `<svg viewBox="0 0 24 24" fill="currentColor"><path d="M8 6.82v10.36c0 .79.87 1.27 1.54.84l8.14-5.18c.62-.39.62-1.29 0-1.69L9.54 5.98C8.87 5.55 8 6.03 8 6.82z"/><path d="M12 22C6.48 22 2 17.52 2 12S6.48 2 12 2s10 4.48 10 10-4.48 10-10 10zm0-18c-4.41 0-8 3.59-8 8s3.59 8 8 8 8-3.59 8-8-3.59-8-8-8z"/></svg>`;
3081
+
3082
+ // src/ts/components/icons/loop.ts
3083
+ var loop = `<svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z"/></svg>`;
3084
+
3085
+ // src/ts/components/icons/quality.ts
3086
+ var quality = `<svg viewBox="0 0 24 24" class="tmg-media-quality-icon" stroke-width="1" stroke="currentColor"><path d="M15 17h6v1h-6v-1zm-2 0H3v1h10v-1zm1-2h1v3h-1v-3zm3-4h4v1h-4v-1zm-5 0H3v1h9v-1zm1-2h1v3h-1V9zm-5-4h11v1H8V5zM3 5h3v1H3V5zm2-2h1v3H5V3z"/></svg>`;
3087
+
3088
+ // src/ts/components/icons/audiotrack.ts
3089
+ var audiotrack = `<svg viewBox="0 0 24 24" class="tmg-media-audiotrack-icon" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path fill="none" d="M9 18V5l12-2v13"></path><circle fill="none" cx="6" cy="18" r="3"></circle><circle fill="none" cx="18" cy="16" r="3"></circle></svg>`;
3090
+
3091
+ // src/ts/components/icons/videotrack.ts
3092
+ var videotrack = `<svg viewBox="0 0 24 24" fill="currentColor"><path d="M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z"/></svg>`;
3093
+
3094
+ // src/ts/components/icons/chapters.ts
3095
+ var chapters = `<svg viewBox="0 0 24 24" fill="currentColor"><path d="M3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zM7 7v2h14V7H7z"/></svg>`;
3096
+
3097
+ // src/ts/components/icons/ambience.ts
3098
+ var ambience = `<svg viewBox="0 0 24 24" class="tmg-media-ambience-icon" stroke-width="1" stroke="currentColor"><path d="M19 9l1.25-2.75L23 5l-2.75-1.25L19 1l-1.25 2.75L15 5l2.75 1.25L19 9zm-7.5.5L9 4 6.5 9.5 1 12l5.5 2.5L9 20l2.5-5.5L17 12l-5.5-2.5zM9 14.47L8.03 12.3l-2.17-.97 2.17-.97L9 8.2l.97 2.17 2.17.97-2.17.97L9 14.47zM19 15l-1.25 2.75L15 19l2.75 1.25L19 23l1.25-2.75L23 19l-2.75-1.25L19 15z"/></svg>`;
3099
+
3100
+ // src/ts/components/icons/playbackrate.ts
3101
+ var playbackrate = `<svg viewBox="0 0 24 24" class="tmg-media-playback-rate-icon" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path fill="none" d="m12 14 4-4"></path><path fill="none" d="M3.34 16A10 10 0 1 1 20.66 16"></path></svg>`;
3102
+
3103
+ // src/ts/components/icons/timer.ts
3104
+ var timer = `<svg viewBox="0 0 24 24" class="tmg-media-timer-icon" stroke-width="0.2" stroke="currentColor"><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z"/></svg>`;
3105
+
3106
+ // src/ts/components/icons/add.ts
3107
+ var add = `<svg viewBox="0 0 24 24" class="tmg-media-add-icon" stroke-width="1" stroke="currentColor"><path d="M20 12h-8v8h-1v-8H3v-1h8V3h1v8h8v1z"/></svg>`;
3108
+
3109
+ // src/ts/components/icons/shuffle.ts
3110
+ var shuffle = `<svg viewBox="0 0 24 24" class="tmg-media-shuffle-icon"><path d="M10.59 9.17L5.41 4 4 5.41l5.17 5.17 1.42-1.41zM14.5 4l2.04 2.04L4 18.59 5.41 20 17.96 7.46 20 9.5V4h-5.5zm.33 9.41-1.41 1.41 3.13 3.13L14.5 20H20v-5.5l-2.04 2.04-3.13-3.13z"/></svg>`;
3111
+ //# sourceMappingURL=index.cjs.map