@videojs/html 10.0.0-beta.30 → 10.0.0-beta.31

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 (357) hide show
  1. package/cdn/audio-minimal-ui.dev.js +1 -1
  2. package/cdn/audio-minimal-ui.js +1 -1
  3. package/cdn/audio-minimal.dev.js +4 -4
  4. package/cdn/audio-minimal.dev.js.map +1 -1
  5. package/cdn/audio-minimal.js +1 -1
  6. package/cdn/audio-minimal.js.map +1 -1
  7. package/cdn/audio-player.dev.js +1 -0
  8. package/cdn/audio-player.js +1 -0
  9. package/cdn/audio-ui.dev.js +1 -1
  10. package/cdn/audio-ui.js +1 -1
  11. package/cdn/audio.dev.js +4 -4
  12. package/cdn/audio.dev.js.map +1 -1
  13. package/cdn/audio.js +1 -1
  14. package/cdn/audio.js.map +1 -1
  15. package/cdn/background.dev.js +1 -1
  16. package/cdn/background.js +1 -1
  17. package/cdn/{compounds-D1FPw7jg.js → compounds-BA8gXlmJ.js} +32 -188
  18. package/cdn/compounds-BA8gXlmJ.js.map +1 -0
  19. package/cdn/compounds-DKoFv2f8.js +8 -0
  20. package/cdn/compounds-DKoFv2f8.js.map +1 -0
  21. package/cdn/{create-player-5UrHNqBI.js → create-player-BEEc22xK.js} +18 -2
  22. package/cdn/{create-player-5UrHNqBI.js.map → create-player-BEEc22xK.js.map} +1 -1
  23. package/cdn/create-player-D5WQ_jzZ.js +2 -0
  24. package/cdn/{create-player-LjvbIxIq.js.map → create-player-D5WQ_jzZ.js.map} +1 -1
  25. package/cdn/{gesture-element-BbNy1Pjt.js → gesture-element-CxdagZOo.js} +2 -2
  26. package/cdn/{gesture-element-BbNy1Pjt.js.map → gesture-element-CxdagZOo.js.map} +1 -1
  27. package/cdn/{gesture-element-KdpjbbBD.js → gesture-element-x6kojUJk.js} +3 -3
  28. package/cdn/{gesture-element-KdpjbbBD.js.map → gesture-element-x6kojUJk.js.map} +1 -1
  29. package/cdn/i18n-CE4KxKuj.js.map +1 -1
  30. package/cdn/{i18n-DeI9j-ko.js → i18n-C_WyuIHd.js} +2 -2
  31. package/cdn/{i18n-DeI9j-ko.js.map → i18n-C_WyuIHd.js.map} +1 -1
  32. package/cdn/i18n-DyF_NfCk.js.map +1 -1
  33. package/cdn/i18n-o3_t8fxw.js +2 -0
  34. package/cdn/{i18n-R3TQ8P2f.js.map → i18n-o3_t8fxw.js.map} +1 -1
  35. package/cdn/live-audio-minimal-ui.dev.js +2 -0
  36. package/cdn/live-audio-minimal-ui.js +1 -0
  37. package/cdn/live-audio-minimal.dev.d.ts +1 -0
  38. package/cdn/live-audio-minimal.dev.js +97 -0
  39. package/cdn/live-audio-minimal.dev.js.map +1 -0
  40. package/cdn/live-audio-minimal.js +2 -0
  41. package/cdn/live-audio-minimal.js.map +1 -0
  42. package/cdn/live-audio-player.dev.d.ts +1 -0
  43. package/cdn/live-audio-player.dev.js +1 -0
  44. package/cdn/live-audio-player.js +1 -0
  45. package/cdn/live-audio-ui.dev.d.ts +1 -0
  46. package/cdn/live-audio-ui.dev.js +2 -0
  47. package/cdn/live-audio-ui.js +1 -0
  48. package/cdn/live-audio.dev.d.ts +1 -0
  49. package/cdn/live-audio.dev.js +97 -0
  50. package/cdn/live-audio.dev.js.map +1 -0
  51. package/cdn/live-audio.js +2 -0
  52. package/cdn/live-audio.js.map +1 -0
  53. package/cdn/{live-button-element-CylfQD0v.js → live-button-element-BFufqFFV.js} +3 -3
  54. package/cdn/{live-button-element-CylfQD0v.js.map → live-button-element-BFufqFFV.js.map} +1 -1
  55. package/cdn/live-button-element-CEbrR59d.js +2 -0
  56. package/cdn/{live-button-element-C-WypudK.js.map → live-button-element-CEbrR59d.js.map} +1 -1
  57. package/cdn/live-video-minimal-ui.dev.d.ts +1 -0
  58. package/cdn/live-video-minimal-ui.dev.js +2 -0
  59. package/cdn/live-video-minimal-ui.js +1 -0
  60. package/cdn/live-video-minimal.dev.js +5 -36
  61. package/cdn/live-video-minimal.dev.js.map +1 -1
  62. package/cdn/live-video-minimal.js +1 -1
  63. package/cdn/live-video-minimal.js.map +1 -1
  64. package/cdn/live-video-player.dev.d.ts +1 -0
  65. package/cdn/live-video-player.dev.js +1 -0
  66. package/cdn/live-video-player.js +1 -0
  67. package/cdn/live-video-ui.dev.d.ts +1 -0
  68. package/cdn/live-video-ui.dev.js +2 -0
  69. package/cdn/live-video-ui.js +1 -0
  70. package/cdn/live-video.dev.js +5 -38
  71. package/cdn/live-video.dev.js.map +1 -1
  72. package/cdn/live-video.js +1 -1
  73. package/cdn/live-video.js.map +1 -1
  74. package/cdn/media/hls-background-video.dev.js +1 -1
  75. package/cdn/media/hls-background-video.js +1 -1
  76. package/cdn/media/hls-background-video.js.map +1 -1
  77. package/cdn/media/mux-background-video.dev.js +1 -1
  78. package/cdn/media/mux-background-video.js +1 -1
  79. package/cdn/media/mux-background-video.js.map +1 -1
  80. package/cdn/media/mux-data.dev.js +1 -1
  81. package/cdn/media/mux-data.dev.js.map +1 -1
  82. package/cdn/media/mux-data.js +1 -1
  83. package/cdn/media/mux-data.js.map +1 -1
  84. package/cdn/{media-B4uT13xV.js → media-B4uT13xV2.js} +1 -1
  85. package/cdn/media-B4uT13xV2.js.map +1 -0
  86. package/cdn/{media-D6Xer97u.js → media-D6Xer97u2.js} +1 -1
  87. package/cdn/media-D6Xer97u2.js.map +1 -0
  88. package/cdn/minimal-ui-0eDc51VS.js +2 -0
  89. package/cdn/{minimal-ui-D3XCtSx_.js.map → minimal-ui-0eDc51VS.js.map} +1 -1
  90. package/cdn/minimal-ui-C2vRjwax.js +36 -0
  91. package/cdn/minimal-ui-C2vRjwax.js.map +1 -0
  92. package/cdn/{minimal-ui-ajeAXABk.js → minimal-ui-CLBGXvp5.js} +4 -4
  93. package/cdn/{minimal-ui-ajeAXABk.js.map → minimal-ui-CLBGXvp5.js.map} +1 -1
  94. package/cdn/minimal-ui-ClCvmIm4.js +2 -0
  95. package/cdn/minimal-ui-ClCvmIm4.js.map +1 -0
  96. package/cdn/minimal-ui-DDM48qb3.js +2 -0
  97. package/cdn/minimal-ui-DDM48qb3.js.map +1 -0
  98. package/cdn/minimal-ui-DY4C1zGt.js +23 -0
  99. package/cdn/minimal-ui-DY4C1zGt.js.map +1 -0
  100. package/cdn/{minimal-ui-KUzZkG_3.js → minimal-ui-Dk4_XLp4.js} +8 -8
  101. package/cdn/{minimal-ui-KUzZkG_3.js.map → minimal-ui-Dk4_XLp4.js.map} +1 -1
  102. package/cdn/{minimal-ui-p9QCZfCz.js → minimal-ui-JHiRECkp.js} +2 -2
  103. package/cdn/{minimal-ui-p9QCZfCz.js.map → minimal-ui-JHiRECkp.js.map} +1 -1
  104. package/cdn/{player-POHYt5tr.js → player-BGAk4zHP.js} +2 -2
  105. package/cdn/{player-POHYt5tr.js.map → player-BGAk4zHP.js.map} +1 -1
  106. package/cdn/{player-CngT-cVQ.js → player-Bb9oakYz.js} +2 -2
  107. package/cdn/{player-CngT-cVQ.js.map → player-Bb9oakYz.js.map} +1 -1
  108. package/cdn/{player-BXQMSpgR.js → player-BrlY19A2.js} +2 -2
  109. package/cdn/{player-BXQMSpgR.js.map → player-BrlY19A2.js.map} +1 -1
  110. package/cdn/{player-BuxifKSM.js → player-CQENs37B.js} +2 -2
  111. package/cdn/{player-BuxifKSM.js.map → player-CQENs37B.js.map} +1 -1
  112. package/cdn/player-DdOHaN9e.js +2 -0
  113. package/cdn/player-DdOHaN9e.js.map +1 -0
  114. package/cdn/{player-B5zkgqwT.js → player-DtcVc6sP.js} +2 -2
  115. package/cdn/{player-B5zkgqwT.js.map → player-DtcVc6sP.js.map} +1 -1
  116. package/cdn/{player-DMP2pc3L.js → player-bEUswOOg.js} +2 -2
  117. package/cdn/{player-DMP2pc3L.js.map → player-bEUswOOg.js.map} +1 -1
  118. package/cdn/player-qLOeas8M.js +18 -0
  119. package/cdn/player-qLOeas8M.js.map +1 -0
  120. package/cdn/poster-element-BA7p_OJL.js +2 -0
  121. package/cdn/{poster-element-Djlm5fwC.js.map → poster-element-BA7p_OJL.js.map} +1 -1
  122. package/cdn/{poster-element-CuCEBVr3.js → poster-element-BTynHaSW.js} +4 -3
  123. package/cdn/{poster-element-CuCEBVr3.js.map → poster-element-BTynHaSW.js.map} +1 -1
  124. package/cdn/radio-options-controller-Cz5yFvUh.js +138 -0
  125. package/cdn/radio-options-controller-Cz5yFvUh.js.map +1 -0
  126. package/cdn/radio-options-controller-hybHJkeC.js +2 -0
  127. package/cdn/radio-options-controller-hybHJkeC.js.map +1 -0
  128. package/cdn/seek-button-element-C4g3qPbc.js +2 -0
  129. package/cdn/{seek-button-element-CgaXVFPS.js.map → seek-button-element-C4g3qPbc.js.map} +1 -1
  130. package/cdn/{seek-button-element-BD2caCd5.js → seek-button-element-CirtfRSE.js} +4 -3
  131. package/cdn/seek-button-element-CirtfRSE.js.map +1 -0
  132. package/cdn/{skin-element-PDwjO4v0.js → skin-element-BF1a0EIj.js} +2 -2
  133. package/cdn/{skin-element-PDwjO4v0.js.map → skin-element-BF1a0EIj.js.map} +1 -1
  134. package/cdn/skin-element-BTt7JKoR.js +2 -0
  135. package/cdn/{skin-element-DE8OodF5.js.map → skin-element-BTt7JKoR.js.map} +1 -1
  136. package/cdn/template-BKUlUXWF.js +2 -0
  137. package/cdn/template-BKUlUXWF.js.map +1 -0
  138. package/cdn/template-ClYP_1RH.js +31 -0
  139. package/cdn/template-ClYP_1RH.js.map +1 -0
  140. package/cdn/text-element-DW2FuvdI.js +2 -0
  141. package/cdn/text-element-DW2FuvdI.js.map +1 -0
  142. package/cdn/{text-element-dyiwucQB.js → text-element-LzVNdZbp.js} +50 -2
  143. package/cdn/text-element-LzVNdZbp.js.map +1 -0
  144. package/cdn/time-slider-chapters-element-Bf4gYppH.js +2 -0
  145. package/cdn/{time-slider-chapters-element-b6oeaZtJ.js.map → time-slider-chapters-element-Bf4gYppH.js.map} +1 -1
  146. package/cdn/{time-slider-chapters-element-BTMqnBhM.js → time-slider-chapters-element-DMkTYNg3.js} +5 -3
  147. package/cdn/time-slider-chapters-element-DMkTYNg3.js.map +1 -0
  148. package/cdn/{ui-BsUcH4YJ.js → ui-BL6b1m09.js} +7 -7
  149. package/cdn/{ui-BsUcH4YJ.js.map → ui-BL6b1m09.js.map} +1 -1
  150. package/cdn/ui-BbpSrILu.js +2 -0
  151. package/cdn/{ui-DLvwCbsU.js.map → ui-BbpSrILu.js.map} +1 -1
  152. package/cdn/ui-BmCfIOl5.js +38 -0
  153. package/cdn/ui-BmCfIOl5.js.map +1 -0
  154. package/cdn/ui-Bu9GX-M_.js +28 -0
  155. package/cdn/ui-Bu9GX-M_.js.map +1 -0
  156. package/cdn/ui-CBrFrvmm.js +2 -0
  157. package/cdn/{ui-CxftD4RF.js.map → ui-CBrFrvmm.js.map} +1 -1
  158. package/cdn/{ui-CtONjPC2.js → ui-CQsP0EFA.js} +9 -9
  159. package/cdn/{ui-CtONjPC2.js.map → ui-CQsP0EFA.js.map} +1 -1
  160. package/cdn/ui-Crbp7m4I.js +2 -0
  161. package/cdn/ui-Crbp7m4I.js.map +1 -0
  162. package/cdn/ui-DRKjxVsj.js +2 -0
  163. package/cdn/ui-DRKjxVsj.js.map +1 -0
  164. package/cdn/video-minimal-ui.dev.js +1 -1
  165. package/cdn/video-minimal-ui.js +1 -1
  166. package/cdn/video-minimal.dev.js +13 -12
  167. package/cdn/video-minimal.dev.js.map +1 -1
  168. package/cdn/video-minimal.js +1 -1
  169. package/cdn/video-minimal.js.map +1 -1
  170. package/cdn/video-player.dev.d.ts +1 -0
  171. package/cdn/video-player.dev.js +1 -0
  172. package/cdn/video-player.js +1 -0
  173. package/cdn/video-ui.dev.js +1 -1
  174. package/cdn/video-ui.js +1 -1
  175. package/cdn/video.dev.js +14 -13
  176. package/cdn/video.dev.js.map +1 -1
  177. package/cdn/video.js +1 -1
  178. package/cdn/video.js.map +1 -1
  179. package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
  180. package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
  181. package/dist/default/_virtual/inline-css_src/define/audio/skin.js +1 -1
  182. package/dist/default/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
  183. package/dist/default/_virtual/inline-css_src/define/live-audio/minimal-skin.js +1 -1
  184. package/dist/default/_virtual/inline-css_src/define/live-audio/minimal-skin.js.map +1 -1
  185. package/dist/default/_virtual/inline-css_src/define/live-audio/skin.js +1 -1
  186. package/dist/default/_virtual/inline-css_src/define/live-audio/skin.js.map +1 -1
  187. package/dist/default/_virtual/inline-css_src/define/live-video/minimal-skin.js +1 -1
  188. package/dist/default/_virtual/inline-css_src/define/live-video/minimal-skin.js.map +1 -1
  189. package/dist/default/_virtual/inline-css_src/define/live-video/skin.js +1 -1
  190. package/dist/default/_virtual/inline-css_src/define/live-video/skin.js.map +1 -1
  191. package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
  192. package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
  193. package/dist/default/_virtual/inline-css_src/define/video/skin.js +1 -1
  194. package/dist/default/_virtual/inline-css_src/define/video/skin.js.map +1 -1
  195. package/dist/default/define/audio/minimal-skin.css +39 -7
  196. package/dist/default/define/audio/skin.css +31 -7
  197. package/dist/default/define/live-audio/minimal-skin.css +39 -7
  198. package/dist/default/define/live-audio/skin.css +31 -7
  199. package/dist/default/define/live-video/minimal-skin.css +39 -7
  200. package/dist/default/define/live-video/minimal-skin.js +1 -1
  201. package/dist/default/define/live-video/minimal-skin.js.map +1 -1
  202. package/dist/default/define/live-video/minimal-skin.tailwind.js +1 -1
  203. package/dist/default/define/live-video/minimal-skin.tailwind.js.map +1 -1
  204. package/dist/default/define/live-video/skin.css +31 -7
  205. package/dist/default/define/live-video/skin.js +1 -1
  206. package/dist/default/define/live-video/skin.js.map +1 -1
  207. package/dist/default/define/live-video/skin.tailwind.js +1 -1
  208. package/dist/default/define/live-video/skin.tailwind.js.map +1 -1
  209. package/dist/default/define/video/minimal-skin.css +39 -7
  210. package/dist/default/define/video/minimal-skin.js +1 -1
  211. package/dist/default/define/video/minimal-skin.js.map +1 -1
  212. package/dist/default/define/video/minimal-skin.tailwind.js +1 -1
  213. package/dist/default/define/video/minimal-skin.tailwind.js.map +1 -1
  214. package/dist/default/define/video/skin.css +31 -7
  215. package/dist/default/define/video/skin.js +1 -1
  216. package/dist/default/define/video/skin.js.map +1 -1
  217. package/dist/default/define/video/skin.tailwind.js +1 -1
  218. package/dist/default/define/video/skin.tailwind.js.map +1 -1
  219. package/dist/default/i18n/provider-mixin.js +24 -0
  220. package/dist/default/i18n/provider-mixin.js.map +1 -1
  221. package/dist/default/skins/dist/default/default/tailwind/components/button-group.js +1 -1
  222. package/dist/default/skins/dist/default/default/tailwind/components/button-group.js.map +1 -1
  223. package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
  224. package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  225. package/dist/default/skins/dist/default/default/tailwind/components/menu.js +8 -7
  226. package/dist/default/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
  227. package/dist/default/skins/dist/default/default/tailwind/components/time.js +1 -1
  228. package/dist/default/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  229. package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js +1 -1
  230. package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
  231. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  232. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  233. package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js +8 -7
  234. package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
  235. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +2 -2
  236. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  237. package/dist/default/ui/slider/slider-element.js +1 -2
  238. package/dist/default/ui/slider/slider-element.js.map +1 -1
  239. package/dist/default/ui/time-slider/time-slider-element.js +1 -2
  240. package/dist/default/ui/time-slider/time-slider-element.js.map +1 -1
  241. package/dist/default/ui/volume-slider/volume-slider-element.js +1 -2
  242. package/dist/default/ui/volume-slider/volume-slider-element.js.map +1 -1
  243. package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
  244. package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
  245. package/dist/dev/_virtual/inline-css_src/define/audio/skin.js +1 -1
  246. package/dist/dev/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
  247. package/dist/dev/_virtual/inline-css_src/define/live-audio/minimal-skin.js +1 -1
  248. package/dist/dev/_virtual/inline-css_src/define/live-audio/minimal-skin.js.map +1 -1
  249. package/dist/dev/_virtual/inline-css_src/define/live-audio/skin.js +1 -1
  250. package/dist/dev/_virtual/inline-css_src/define/live-audio/skin.js.map +1 -1
  251. package/dist/dev/_virtual/inline-css_src/define/live-video/minimal-skin.js +1 -1
  252. package/dist/dev/_virtual/inline-css_src/define/live-video/minimal-skin.js.map +1 -1
  253. package/dist/dev/_virtual/inline-css_src/define/live-video/skin.js +1 -1
  254. package/dist/dev/_virtual/inline-css_src/define/live-video/skin.js.map +1 -1
  255. package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
  256. package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
  257. package/dist/dev/_virtual/inline-css_src/define/video/skin.js +1 -1
  258. package/dist/dev/_virtual/inline-css_src/define/video/skin.js.map +1 -1
  259. package/dist/dev/define/audio/minimal-skin.css +39 -7
  260. package/dist/dev/define/audio/skin.css +31 -7
  261. package/dist/dev/define/live-audio/minimal-skin.css +39 -7
  262. package/dist/dev/define/live-audio/skin.css +31 -7
  263. package/dist/dev/define/live-video/minimal-skin.css +39 -7
  264. package/dist/dev/define/live-video/minimal-skin.js +1 -1
  265. package/dist/dev/define/live-video/minimal-skin.js.map +1 -1
  266. package/dist/dev/define/live-video/minimal-skin.tailwind.js +1 -1
  267. package/dist/dev/define/live-video/minimal-skin.tailwind.js.map +1 -1
  268. package/dist/dev/define/live-video/skin.css +31 -7
  269. package/dist/dev/define/live-video/skin.js +1 -1
  270. package/dist/dev/define/live-video/skin.js.map +1 -1
  271. package/dist/dev/define/live-video/skin.tailwind.js +1 -1
  272. package/dist/dev/define/live-video/skin.tailwind.js.map +1 -1
  273. package/dist/dev/define/video/minimal-skin.css +39 -7
  274. package/dist/dev/define/video/minimal-skin.js +8 -8
  275. package/dist/dev/define/video/minimal-skin.js.map +1 -1
  276. package/dist/dev/define/video/minimal-skin.tailwind.js +12 -12
  277. package/dist/dev/define/video/minimal-skin.tailwind.js.map +1 -1
  278. package/dist/dev/define/video/skin.css +31 -7
  279. package/dist/dev/define/video/skin.js +8 -8
  280. package/dist/dev/define/video/skin.js.map +1 -1
  281. package/dist/dev/define/video/skin.tailwind.js +12 -12
  282. package/dist/dev/define/video/skin.tailwind.js.map +1 -1
  283. package/dist/dev/i18n/provider-mixin.d.ts.map +1 -1
  284. package/dist/dev/i18n/provider-mixin.js +24 -0
  285. package/dist/dev/i18n/provider-mixin.js.map +1 -1
  286. package/dist/dev/packages/skins/dist/default/default/tailwind/components/button-group.js +1 -1
  287. package/dist/dev/packages/skins/dist/default/default/tailwind/components/button-group.js.map +1 -1
  288. package/dist/dev/packages/skins/dist/default/default/tailwind/components/controls.js +1 -1
  289. package/dist/dev/packages/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  290. package/dist/dev/packages/skins/dist/default/default/tailwind/components/menu.js +8 -7
  291. package/dist/dev/packages/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
  292. package/dist/dev/packages/skins/dist/default/default/tailwind/components/time.js +1 -1
  293. package/dist/dev/packages/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  294. package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/button-group.js +1 -1
  295. package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
  296. package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  297. package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  298. package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/menu.js +8 -7
  299. package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
  300. package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/time.js +2 -2
  301. package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  302. package/dist/dev/ui/slider/slider-element.d.ts.map +1 -1
  303. package/dist/dev/ui/slider/slider-element.js +1 -2
  304. package/dist/dev/ui/slider/slider-element.js.map +1 -1
  305. package/dist/dev/ui/time-slider/time-slider-element.d.ts.map +1 -1
  306. package/dist/dev/ui/time-slider/time-slider-element.js +1 -2
  307. package/dist/dev/ui/time-slider/time-slider-element.js.map +1 -1
  308. package/dist/dev/ui/volume-slider/volume-slider-element.d.ts.map +1 -1
  309. package/dist/dev/ui/volume-slider/volume-slider-element.js +1 -2
  310. package/dist/dev/ui/volume-slider/volume-slider-element.js.map +1 -1
  311. package/docs/README.md +1 -1
  312. package/docs/concepts/media-sources.md +26 -2
  313. package/docs/concepts/skins.md +39 -15
  314. package/docs/how-to/customize-skins.md +7662 -48
  315. package/docs/how-to/i18n-switch-locale.md +27 -0
  316. package/docs/how-to/installation.md +4 -4
  317. package/docs/how-to/migrate-from-plyr.md +1 -5
  318. package/docs/llms.txt +7 -0
  319. package/docs/reference/cloudflare-video.md +483 -0
  320. package/docs/reference/dash-video.md +54 -0
  321. package/docs/reference/feature-metadata.md +3 -1
  322. package/docs/reference/hlsjs-video.md +626 -0
  323. package/docs/reference/native-hls-video.md +40 -0
  324. package/docs/reference/shaka-video.md +588 -0
  325. package/docs/reference/spotify-audio.md +394 -0
  326. package/docs/reference/tiktok-video.md +504 -0
  327. package/docs/reference/title.md +1 -1
  328. package/docs/reference/twitch-video.md +447 -0
  329. package/docs/reference/vimeo-video.md +1038 -0
  330. package/docs/reference/youtube-video.md +573 -0
  331. package/package.json +9 -9
  332. package/cdn/audio-headless.dev.js +0 -1
  333. package/cdn/audio-headless.js +0 -1
  334. package/cdn/compounds-CHlzbAKu.js +0 -8
  335. package/cdn/compounds-CHlzbAKu.js.map +0 -1
  336. package/cdn/compounds-D1FPw7jg.js.map +0 -1
  337. package/cdn/create-player-LjvbIxIq.js +0 -2
  338. package/cdn/i18n-R3TQ8P2f.js +0 -2
  339. package/cdn/live-button-element-C-WypudK.js +0 -2
  340. package/cdn/media-B4uT13xV.js.map +0 -1
  341. package/cdn/media-D6Xer97u.js.map +0 -1
  342. package/cdn/minimal-ui-D3XCtSx_.js +0 -2
  343. package/cdn/poster-element-Djlm5fwC.js +0 -2
  344. package/cdn/seek-button-element-BD2caCd5.js.map +0 -1
  345. package/cdn/seek-button-element-CgaXVFPS.js +0 -2
  346. package/cdn/skin-element-DE8OodF5.js +0 -2
  347. package/cdn/text-element-BJyj7nLo.js +0 -2
  348. package/cdn/text-element-BJyj7nLo.js.map +0 -1
  349. package/cdn/text-element-dyiwucQB.js.map +0 -1
  350. package/cdn/time-slider-chapters-element-BTMqnBhM.js.map +0 -1
  351. package/cdn/time-slider-chapters-element-b6oeaZtJ.js +0 -2
  352. package/cdn/ui-CxftD4RF.js +0 -2
  353. package/cdn/ui-DLvwCbsU.js +0 -2
  354. package/cdn/video-headless.dev.js +0 -1
  355. package/cdn/video-headless.js +0 -1
  356. /package/cdn/{audio-headless.dev.d.ts → audio-player.dev.d.ts} +0 -0
  357. /package/cdn/{video-headless.dev.d.ts → live-audio-minimal-ui.dev.d.ts} +0 -0
package/cdn/audio.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"audio.js","names":[],"sources":["../inline-css:src/define/audio/skin.js","../src/define/audio/skin.ts"],"sourcesContent":["export default \"video-player,live-video-player,media-i18n{display:contents}video-player video,video-player [slot=poster],live-video-player video,live-video-player [slot=poster]{width:100%;height:100%;display:block}video-player video::-webkit-media-text-track-container,live-video-player video::-webkit-media-text-track-container{z-index:1;scale:.98;translate:0 var(--media-caption-track-y,0);transition:translate var(--media-caption-track-duration,0) ease-out;transition-delay:var(--media-caption-track-delay,0);font-family:inherit}media-tooltip-group{display:contents}:host{width:100%;display:grid}media-container{min-width:0;min-height:0}.media-popover--volume:has(media-volume-slider[data-hidden]){display:none}.media-sr-only{white-space:nowrap;clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.media-default-skin *,.media-default-skin :before,.media-default-skin :after{box-sizing:border-box}.media-default-skin img,.media-default-skin video,.media-default-skin svg{max-width:100%;display:block}.media-default-skin button{font:inherit}.media-default-skin [hidden][hidden]{display:none}@media (prefers-reduced-motion:no-preference){.media-default-skin{interpolate-size:allow-keywords}}.media-default-skin{--accent-color:var(--media-accent-color,var(--default-accent-color));--accent-contrast-color:contrast-color(var(--accent-color));--accent-background-color:var(--media-accent-color,oklch(from var(--default-accent-color) l c h / calc(alpha * .1)));--accent-text-color:var(--media-accent-text-color,contrast-color(var(--media-accent-color,oklch(0% 0 0))));--shadow-current-color:oklch(from currentColor 0 0 0 / clamp(0, calc((l - .5) * .5), .15));--shadow-subtle-current-color:oklch(from var(--shadow-current-color) l c h / calc(alpha * .4));--scrollbar-thumb-color:oklch(from currentColor l c h / .3);--scale:1;--scale-unit:var(--media-scale-unit,16px);--size:calc(var(--scale-unit) * var(--scale));--spacing:calc(var(--size) / 4);--font-size-medium:calc(.9375 * var(--size));--font-size-base:calc(.8125 * var(--size));--font-size-small:calc(.6875 * var(--size));--font-size-tiny:calc(.5625 * var(--size));--media-icon-size:calc(1.125 * var(--size));--container-border-radius:var(--media-border-radius,1.75rem);width:100%;height:100%;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:var(--font-size-base);-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;letter-spacing:normal;outline-offset:-4px;scrollbar-color:var(--scrollbar-thumb-color) transparent;scrollbar-width:thin;border-radius:var(--container-border-radius,1.75rem);isolation:isolate;outline:2px solid #0000;line-height:1.5;transition-property:outline-offset,outline-color;transition-duration:.1s;transition-timing-function:ease-out;display:block;position:relative;container:media-root/inline-size;&:focus-visible{outline-color:var(--focus-ring-color);outline-offset:2px}&::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-color);border-radius:9999px}@media (prefers-reduced-transparency:reduce) or (prefers-contrast:more){--scrollbar-thumb-color:oklch(from currentColor l c h / .8);scrollbar-width:auto}}.media-default-skin .media-surface{background-color:var(--surface-background-color);box-shadow:0 0 0 1px var(--surface-outer-border-color), 0 1px 3px 0 var(--surface-shadow-color), 0 1px 2px -1px var(--surface-shadow-color);backdrop-filter:var(--surface-backdrop-filter);&:after{z-index:10;pointer-events:none;content:\\\"\\\";border-radius:inherit;box-shadow:inset 0 1px 0 0 var(--surface-inner-border-color), inset 0 0 0 1px oklch(from var(--surface-inner-border-color) l c h / calc(alpha * .5));position:absolute;inset:0}}.media-default-skin .media-buffering-indicator{z-index:10;color:oklch(100% 0 0);pointer-events:none;place-content:center;display:none;position:absolute;inset:0;&:not([data-visible]){--media-spinner-animation:none}&[data-visible]{display:grid}@media (prefers-reduced-motion:reduce){--media-spinner-animation:none}}.media-default-skin .media-error{outline:none}.media-default-skin .media-error:not([data-open]){display:none}.media-default-skin .media-error__title{font-weight:600;line-height:1.25}.media-default-skin .media-error__description{overflow-wrap:anywhere;opacity:.7}.media-default-skin .media-error__actions{gap:calc(var(--spacing) * 2);display:flex;&>*{flex:1}}.media-default-skin .media-error[data-open]~.media-controls *{visibility:hidden}.media-default-skin .media-controls{--media-popover-side-offset:calc(var(--spacing) * (var(--base-side-offset,2) + 1));--media-tooltip-side-offset:var(--media-popover-side-offset);--media-popover-boundary-offset:calc(var(--spacing) * var(--base-boundary-offset,2));--media-tooltip-boundary-offset:var(--media-popover-boundary-offset);padding:calc(var(--spacing) * 1);text-shadow:0 1px 0 var(--shadow-current-color);border-radius:3.40282e38px;align-items:center;display:flex;container:media-controls/inline-size}.media-default-skin .media-time-controls{gap:calc(var(--spacing) * 2.5);flex:1;align-items:center;display:flex;container:media-time-controls/inline-size;&>.media-time:last-child{@container media-time-controls (width<16rem){display:none}}}.media-default-skin .media-time{font-variant-numeric:tabular-nums}.media-default-skin .media-time[role=button]{cursor:pointer;outline-offset:-2px;border-radius:calc(var(--spacing) * 1);outline:2px solid #0000;transition-property:outline-color,outline-offset;transition-duration:.1s;transition-timing-function:ease-out;&:focus-visible{outline-color:var(--focus-ring-color);outline-offset:2px}}.media-default-skin .media-button{height:calc(var(--spacing) * 9);min-height:0;padding:calc(var(--spacing) * 2) calc(var(--spacing) * 4);text-align:center;touch-action:manipulation;cursor:pointer;user-select:none;outline-offset:-2px;will-change:scale;border:none;border-radius:3.40282e38px;outline:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;transition-property:background-color,color,outline-offset,scale;transition-duration:.15s;transition-timing-function:ease-out;display:flex;&:focus-visible{outline-color:var(--focus-ring-color);outline-offset:2px}&:active:not([aria-disabled=true]){scale:.97}&[aria-disabled=true]{cursor:not-allowed;opacity:.5}}.media-default-skin .media-button--primary{color:var(--accent-contrast-color);text-shadow:none;background:var(--accent-color);font-weight:500}.media-default-skin .media-button--subtle{color:inherit;text-shadow:inherit;background:0 0;&:not([aria-disabled=true]){&:hover,&:focus-visible,&[aria-expanded=true]{color:var(--accent-text-color);background-color:var(--accent-background-color);text-decoration:none}}}.media-default-skin .media-button--icon{aspect-ratio:1;padding:0;display:grid;&:active:not([aria-disabled=true]){scale:.97}& .media-icon__container{display:grid}& .media-icon{filter:drop-shadow(0 1px 0 var(--shadow-current-color));grid-area:1/1;transition-property:opacity,scale;transition-duration:.15s;transition-timing-function:ease-out}}.media-default-skin .media-button--seek{& .media-icon__label{font-variant-numeric:tabular-nums;letter-spacing:-.05em;font-size:.715em;font-weight:500;position:absolute;bottom:-3px;right:-1px}&:has(.media-icon--flipped) .media-icon__label{right:unset;left:-1px}}.media-default-skin .media-button--playback-rate{font-variant-numeric:tabular-nums;padding:0;&:after{content:attr(data-rate) \\\"×\\\";width:4ch}&[data-inline-rate-label]:after{content:none}}.media-default-skin .media-button--settings{& .media-icon--settings{transition:transform .15s ease-in-out;@media (prefers-reduced-motion:reduce){transition-duration:0s}}&[aria-expanded=true] .media-icon--settings{transform:rotate(90deg)}}.media-default-skin .media-button--live{gap:calc(var(--spacing) * 1.5);aspect-ratio:auto;width:auto;padding:calc(var(--spacing) * 2) calc(var(--spacing) * 3);font-size:var(--font-size-small);text-transform:uppercase;letter-spacing:.05em;align-items:center;font-weight:600;line-height:1;display:inline-flex;&:before{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2);content:\\\"\\\";background-color:oklch(from currentColor l c h / .4);border-radius:50%;flex-shrink:0;transition:background-color .15s ease-out;display:inline-block}&[data-live-edge]:before{background-color:oklch(65% .22 27)}}@media (prefers-reduced-motion:reduce){.media-default-skin .media-button{will-change:auto;transition-property:background-color,color;scale:1}}.media-default-skin .media-button-group{align-items:center;gap:1px;display:flex}.media-default-skin .media-badge{padding:calc(var(--spacing) * .5) calc(var(--spacing) * 1.5);font-size:var(--font-size-small);color:oklch(from currentColor l c h / .85);white-space:nowrap;background-color:oklch(from currentColor l c h / .1);border-radius:3.40282e38px;font-weight:500;line-height:1}.media-default-skin .media-icon__container{position:relative}.media-default-skin .media-icon{width:var(--media-icon-size);height:var(--media-icon-size);flex-shrink:0}.media-default-skin .media-icon--flipped{scale:-1 1}.media-default-skin .media-slider{--track-size:calc(var(--spacing) * 1);--track-highlighted-size:calc(var(--spacing) * 1.75);--track-border-radius:99px;--thumb-size:calc(var(--spacing) * 3);--chapter-gap:calc(var(--spacing) * 1);--chapter-inset-start:calc(var(--chapter-gap) / 2);--chapter-inset-end:calc(var(--chapter-gap) / 2);cursor:pointer;outline:none;flex:1;justify-content:center;align-items:center;display:flex;position:relative;&[data-orientation=horizontal]{width:var(--slider-width,100%);min-width:calc(var(--spacing) * 20);height:var(--slider-height,calc(var(--spacing) * 8))}&[data-orientation=vertical]{width:var(--slider-width,calc(var(--spacing) * 8));height:var(--slider-height,calc(var(--spacing) * 20))}& .media-slider__track{user-select:none;background-color:oklch(from currentColor l c h / .2);border-radius:var(--track-border-radius);isolation:isolate;position:relative;overflow:hidden;&[data-orientation=horizontal]{width:100%;height:var(--track-size)}&[data-orientation=vertical]{width:var(--track-size);height:100%}}& .media-slider__buffer,& .media-slider__fill{pointer-events:none;border-radius:inherit;position:absolute;&[data-orientation=horizontal]{inset-block:0;width:100%;left:0}&[data-orientation=vertical]{inset-inline:0;height:100%;bottom:0}@media (prefers-reduced-motion:no-preference){transition:clip-path .2s ease-out}}&[data-dragging],&[data-seeking]{& .media-slider__fill,& .media-slider__buffer{transition-duration:0s}}& .media-slider__buffer{background-color:oklch(from currentColor l c h / .2);&[data-orientation=horizontal]{clip-path:inset(0 calc(100% - var(--media-slider-buffer)) 0 0 round var(--track-border-radius))}&[data-orientation=vertical]{clip-path:inset(calc(100% - var(--media-slider-buffer)) 0 0 0 round var(--track-border-radius))}}& .media-slider__fill{background-color:var(--accent-color);&[data-orientation=horizontal]{clip-path:inset(0 calc(100% - var(--media-slider-fill)) 0 0 round var(--track-border-radius))}&[data-orientation=vertical]{clip-path:inset(calc(100% - var(--media-slider-fill)) 0 0 0 round var(--track-border-radius))}}&[data-dragging]{& .media-slider__fill[data-orientation=horizontal]{clip-path:inset(0 calc(100% - var(--media-slider-pointer)) 0 0 round var(--track-border-radius))}& .media-slider__fill[data-orientation=vertical]{clip-path:inset(calc(100% - var(--media-slider-pointer)) 0 0 0 round var(--track-border-radius))}}& .media-slider__chapters{border-radius:inherit;flex:1;align-items:center;min-width:0;min-height:0;display:flex;position:relative;&[data-orientation=horizontal]{width:100%;height:100%}&[data-orientation=vertical]{flex-direction:column-reverse;width:100%;height:100%}}& .media-slider__chapter{border-radius:inherit;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:absolute;inset:0;&:first-child{--chapter-inset-start:0px}&:last-child{--chapter-inset-end:0px}& .media-slider__chapter-track{border-radius:inherit;@media (prefers-reduced-motion:no-preference){transition:height .2s ease-out,width .2s ease-out}}&[data-orientation=horizontal]{clip-path:inset(0 calc(100% - var(--media-slider-chapter-end)) 0 var(--media-slider-chapter-start));& .media-slider__chapter-track{height:var(--track-size);clip-path:inset(0 calc(100% - var(--media-slider-chapter-end) + var(--chapter-inset-end)) 0 calc(var(--media-slider-chapter-start) + var(--chapter-inset-start)) round var(--track-border-radius))}&[data-highlighted] .media-slider__chapter-track{height:var(--track-highlighted-size)}}&[data-orientation=vertical]{clip-path:inset(calc(100% - var(--media-slider-chapter-end)) 0 var(--media-slider-chapter-start) 0);& .media-slider__chapter-track{width:var(--track-size);clip-path:inset(calc(100% - var(--media-slider-chapter-end) + var(--chapter-inset-end)) 0 calc(var(--media-slider-chapter-start) + var(--chapter-inset-start)) 0 round var(--track-border-radius))}&[data-highlighted] .media-slider__chapter-track{width:var(--track-highlighted-size)}}}& .media-slider__thumb{z-index:10;width:var(--thumb-size);height:var(--thumb-size);user-select:none;outline-offset:-4px;box-shadow:0 0 0 1px var(--shadow-current-color,oklch(0% 0 0/.1)), 0 1px 3px 0 oklch(0% 0 0/.35), 0 1px 2px -1px oklch(0% 0 0/.35);opacity:0;background-color:currentColor;border-radius:3.40282e38px;outline:4px solid #0000;position:absolute;translate:-50% -50%;scale:.8;&[data-orientation=horizontal]{top:50%;left:var(--media-slider-fill)}&[data-orientation=vertical]{top:calc(100% - var(--media-slider-fill));left:50%}&:focus-visible{outline-color:oklch(from currentColor l c h / .15);outline-offset:0;opacity:1}&:after{content:\\\"\\\";border-radius:inherit;position:absolute;inset:-4px;box-shadow:0 0 0 2px}&:not(:focus-visible):after{opacity:0;scale:.5}&.media-slider__thumb--persistent{opacity:1;scale:1}@media (hover:hover) and (pointer:fine){&:hover{outline-color:oklch(from currentColor l c h / .15);outline-offset:0}}@media (prefers-reduced-motion:no-preference){transition-property:opacity,outline-offset,left,top,scale;transition-duration:.15s;transition-timing-function:ease-out;&:after{transition-property:opacity,scale;transition-duration:.15s;transition-timing-function:ease-out}}}@media (hover:hover) and (pointer:fine){&:hover .media-slider__thumb{opacity:1;scale:1}}&[data-dragging] .media-slider__thumb{opacity:1;scale:.9;@media (prefers-reduced-motion:no-preference){transition-property:opacity,outline-offset,scale}&[data-orientation=horizontal]{left:var(--media-slider-pointer)}&[data-orientation=vertical]{top:calc(100% - var(--media-slider-pointer))}}& .media-slider__preview{--max-size-factor:36;--max-size:min(calc(var(--spacing) * var(--max-size-factor)), 100cqi);min-width:var(--max-size);height:calc(var(--spacing) * 1);@container media-root (width>42rem){--max-size-factor:48}& .media-slider__thumbnail,& .media-slider__value{max-width:var(--max-size);opacity:0;filter:blur(8px);transform-origin:bottom;scale:.8;translate:-50% calc(var(--spacing) * 2);transition-duration:.15s;transition-timing-function:ease-out;position:absolute;left:50%}& .media-slider__thumbnail{--thumbnail-max-width:var(--max-size);--thumbnail-max-height:var(--max-size);bottom:calc(100% + (var(--spacing) * 9))}& .media-slider__value{bottom:calc(100% + (var(--spacing) * 10.5));text-shadow:0 1px 0 var(--shadow-current-color);flex-direction:column;align-items:center;display:flex}& .media-slider__chapter-title{min-width:0;max-width:var(--max-size);padding-inline:calc(var(--spacing) * 6);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;&:empty{display:none}}&:before{z-index:1;width:calc(var(--spacing) * 1);height:calc(var(--spacing) * 1);pointer-events:none;content:\\\"\\\";box-shadow:0 0 0 1px var(--shadow-current-color,oklch(0% 0 0/.15)), 0 1px 2px 0 oklch(0% 0 0/.35);opacity:0;background-color:currentColor;border-radius:100%;transition-property:opacity,scale;transition-duration:.2s;transition-timing-function:ease-out;position:absolute;top:50%;left:50%;translate:-50% -50%;scale:.5}}&:is([data-pointing],:has(:focus-visible)) .media-slider__preview :is(.media-slider__value,.media-slider__thumbnail),& .media-slider__preview[data-pointing]:not([data-dragging]):before{opacity:1;filter:blur();scale:1}}.media-default-skin{--popup-transition:opacity var(--popup-transition-timing-function) var(--popup-transition-duration), filter var(--popup-transition-timing-function) var(--popup-transition-duration), transform var(--popup-transition-timing-function) var(--popup-transition-duration), scale var(--popup-transition-timing-function) var(--popup-transition-duration)}.media-default-skin .media-popover,.media-default-skin .media-tooltip{--popup-translate-distance:calc(.5 * var(--scale-unit));color:inherit;transition:var(--popup-transition);border:0;margin:0;overflow:visible;&[data-starting-style],&[data-ending-style]{opacity:0;filter:blur(4px);transform:translate(var(--popup-translate-x-distance,0), var(--popup-translate-y-distance,0));scale:.95}&[data-ending-style]{transition-duration:max(0s, calc(var(--popup-transition-duration) - 50ms));transform:none}&[data-side=top]{--popup-translate-y-distance:var(--popup-translate-distance);transform-origin:bottom}&[data-side=bottom]{--popup-translate-y-distance:calc(var(--popup-translate-distance) * -1);transform-origin:top}&[data-side=left]{--popup-translate-x-distance:var(--popup-translate-distance);transform-origin:100%}&[data-side=right]{--popup-translate-x-distance:calc(var(--popup-translate-distance) * -1);transform-origin:0}&:before{pointer-events:inherit;content:\\\"\\\";position:absolute}&[data-side=top]:before,&[data-side=bottom]:before{width:100%;inset-inline:0}&[data-side=top]:before{top:100%}&[data-side=bottom]:before{bottom:100%}&[data-side=left]:before,&[data-side=right]:before{height:100%;inset-block:0}&[data-side=left]:before{left:100%}&[data-side=right]:before{right:100%}}.media-default-skin .media-popover{&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-popover-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-popover-side-offset)}}.media-default-skin .media-popover--volume{padding:calc(var(--spacing) * 3) 0;border-radius:3.40282e38px;&:has(media-volume-slider[data-hidden]){display:none}}.media-default-skin .media-tooltip{padding:calc(var(--spacing) * 1) calc(var(--spacing) * 2.5);font-size:var(--font-size-base);white-space:nowrap;border-radius:3.40282e38px;&[data-open]{column-gap:calc(var(--spacing) * 1);align-items:center;display:flex}&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-tooltip-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-tooltip-side-offset)}& .media-tooltip__kbd{min-width:1.5em;font-family:inherit;font-size:var(--font-size-small);text-align:center;background-color:oklch(from currentColor l c h / .3);border-radius:calc(var(--spacing) * 1);padding:.1em;font-weight:600;line-height:1.25}}.media-default-skin .media-menu{--menu-transition-duration:.25s;--menu-max-height:calc(var(--spacing) * 56);--menu-padding:calc(var(--spacing) * 1);--menu-border-radius:calc(var(--spacing) * 3);--menu-item-border-radius:calc(var(--menu-border-radius) - var(--menu-padding));box-sizing:border-box;min-width:max-content;max-width:var(--media-popover-available-width,none);max-height:min(var(--media-popover-available-height,var(--menu-max-height)), var(--menu-max-height));padding:var(--menu-padding);overscroll-behavior:none;border-radius:var(--menu-border-radius);overflow:auto;@media (prefers-reduced-motion:reduce){--menu-transition-duration:0s}&>.media-menu__panel{inset-inline:0;z-index:10;max-height:inherit;padding:var(--menu-padding);overscroll-behavior:none;transition-timing-function:ease-out;transition-duration:var(--menu-transition-duration);outline:none;transition-property:translate,filter;position:absolute;top:0;overflow:auto;translate:0;&:where([data-starting-style],[data-ending-style]){pointer-events:none;filter:blur(8px);overflow:hidden;translate:100%}}& .media-menu__separator{margin-block:calc(var(--spacing) * 1);border-bottom:1px solid oklch(0% 0 0/.1);box-shadow:0 1px oklch(100% 0 0/.075)}& .media-menu__group{anchor-scope:--menu-item-highlight-anchor;gap:calc(var(--spacing) * .5);flex-direction:column;display:flex;@supports (top:anchor(top)){&:before{position-anchor:--menu-item-highlight-anchor;inset:anchor(inside);overflow-anchor:none;pointer-events:none;content:\\\"\\\";background-color:var(--accent-background-color);border-radius:var(--menu-item-border-radius);transition:inset .1s ease-in-out;position:absolute}&:has([data-highlighted=\\\"\\\"]):before{transition-duration:0s}}}& .media-menu__item,& .media-menu__back{gap:calc(var(--spacing) * 1.5);padding:calc(var(--spacing) * 1.5) calc(var(--spacing) * 2);text-align:left;text-shadow:0 1px 0 var(--shadow-current-color);cursor:pointer;user-select:none;outline-offset:-2px;border-radius:var(--menu-item-border-radius);outline:2px solid #0000;align-items:center;transition:background-color .1s ease-in-out,color .1s ease-in-out;display:flex;position:relative;& .media-icon{color:oklch(from currentColor l c h / .65);filter:drop-shadow(0 1px 0 var(--shadow-current-color));flex-shrink:0}&:focus-visible{outline-color:var(--focus-ring-color);outline-offset:2px}&:hover,&[data-highlighted]{color:var(--accent-text-color);background-color:var(--accent-background-color);& .media-icon{color:inherit}}@supports (top:anchor(top)){transition-duration:50ms;&:hover,&[data-highlighted]{transition-duration:.2s}}}& .media-menu__indicator{margin-right:calc(var(--spacing) * -1);opacity:0;flex-shrink:0;margin-left:auto;& .media-icon{filter:drop-shadow(0 1px 0 var(--shadow-current-color))}}& .media-menu__item{font-variant-numeric:tabular-nums;color:inherit;justify-content:space-between;&[aria-disabled=true]{pointer-events:none;cursor:not-allowed;opacity:.5}&[aria-checked=true] .media-menu__indicator{opacity:1}&[data-availability=unavailable],&[data-availability=unsupported]{display:none}&[data-highlighted]{@supports (top:anchor(top)){anchor-name:--menu-item-highlight-anchor;background-color:#0000}}}& .media-menu__tier{padding-top:1px;padding-left:calc(var(--spacing) * .5);font-size:var(--font-size-tiny);color:oklch(from currentColor l c h / .7);font-weight:600;line-height:1}& .media-menu__back{width:100%;margin-bottom:calc(var(--spacing) * .5)}& .media-menu__hint{gap:calc(var(--spacing) * 1);min-width:0;padding-left:calc(var(--spacing) * 2);color:oklch(from currentColor l c h / .65);align-items:center;margin-left:auto;display:inline-flex}& .media-menu__hint-label{max-width:calc(var(--spacing) * 24);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}& .media-menu__chevron{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}&.media-menu--settings{width:var(--media-menu-width);min-width:calc(var(--spacing) * 48);height:var(--media-menu-height);transition:var(--popup-transition), width var(--popup-transition-timing-function) var(--menu-transition-duration), height var(--popup-transition-timing-function) var(--menu-transition-duration);overflow:hidden;&>:not([data-submenu]){transition:translate var(--menu-transition-duration) ease-out, filter var(--menu-transition-duration) ease-out;translate:0}&[data-submenu-expanded=true]>:not([data-submenu]){filter:blur(8px);translate:-100%}&[data-submenu-expanded]>:not([data-submenu]):before{display:none}&[data-starting-style],&[data-ending-style]{transition:var(--popup-transition)}}}.media-button--play .media-icon--restart,.media-button--play .media-icon--play,.media-button--play .media-icon--pause,.media-button--mute .media-icon--volume-off,.media-button--mute .media-icon--volume-low,.media-button--mute .media-icon--volume-high{opacity:0;display:none}.media-button--play[data-ended] .media-icon--restart,.media-button--play:not([data-ended])[data-paused] .media-icon--play,.media-button--play:not([data-ended]):not([data-started]) .media-icon--play,.media-button--play[data-started]:not([data-paused]):not([data-ended]) .media-icon--pause,.media-button--mute[data-muted] .media-icon--volume-off,.media-button--mute:not([data-muted])[data-volume-level=low] .media-icon--volume-low,.media-button--mute:not([data-muted]):not([data-volume-level=low]) .media-icon--volume-high{opacity:1;display:block}.media-default-skin--audio{--default-accent-color:light-dark(oklch(0% 0 0),oklch(100% 0 0));--text-color:light-dark(oklch(0% 0 0),oklch(100% 0 0));--border-color:oklch(0% 0 0/.1);--focus-ring-color:light-dark(oklch(0% 0 0),oklch(100% 0 0));--surface-background-color:light-dark(oklch(100% 0 0/.5),oklch(0% 0 0/.4));--surface-inner-border-color:oklch(100% 0 0/.1);--surface-outer-border-color:oklch(0% 0 0/.05);--surface-shadow-color:oklch(0% 0 0/.15);--surface-backdrop-filter:blur(16px) saturate(1.5);--error-dialog-transition-duration:.25s;--error-dialog-transition-delay:.1s;--popup-transition-duration:.1s;--popup-transition-timing-function:ease-out;@media (prefers-reduced-motion:reduce){--error-dialog-transition-duration:50ms;--error-dialog-transition-delay:0s;--popup-transition-duration:0s}@media (prefers-reduced-transparency:reduce) or (prefers-contrast:more){--surface-background-color:light-dark(oklch(100% 0 0),oklch(0% 0 0));--surface-inner-border-color:light-dark(oklch(100% 0 0/.1),oklch(100% 0 0/.2));--surface-outer-border-color:light-dark(oklch(0% 0 0/.05),#0000)}}.media-default-skin--audio .media-error__dialog{z-index:20;gap:calc(var(--spacing) * 3);padding-inline:calc(var(--spacing) * 5) calc(var(--spacing) * .5);color:var(--text-color);background-color:var(--surface-background-color);backdrop-filter:var(--surface-backdrop-filter);transition-delay:var(--error-dialog-transition-delay);transition-timing-function:ease-out;transition-duration:var(--error-dialog-transition-duration);border-radius:3.40282e38px;align-items:center;transition-property:opacity,filter;display:flex;position:absolute;inset:0}.media-default-skin .media-error[data-starting-style] .media-error__dialog,.media-default-skin .media-error[data-ending-style] .media-error__dialog{opacity:0;filter:blur(4px)}.media-default-skin .media-error[data-ending-style] .media-error__dialog{transition-delay:0s}.media-default-skin--audio .media-error__content{gap:calc(var(--spacing) * 2);flex:1;align-items:center;display:flex}.media-default-skin--audio .media-controls{--base-boundary-offset:2;color:var(--text-color);& .media-time-controls{padding-inline:calc(var(--spacing) * 3)}& .media-button--seek{@container media-root (width<32rem){display:none}}}.media-default-skin--audio .media-button--play__wrapper{display:inline-flex;position:relative}.media-default-skin--audio .media-button--play__wrapper .media-buffering-indicator{color:inherit}.media-default-skin--audio .media-button--play__wrapper:has(.media-buffering-indicator[data-visible]) .media-button--play .media-icon{opacity:0}.media-default-skin--audio .media-slider__track{background-color:light-dark(oklch(0% 0 0/.1),oklch(100% 0 0/.2));box-shadow:0 0 0 1px light-dark(#0000,oklch(0% 0 0/.05))}\";","import { renderIcon } from '@videojs/icons/render';\nimport { createShadowStyle, createTemplate } from '@videojs/utils/dom';\nimport { safeDefine } from '../safe-define';\nimport { SkinElement } from '../skin-element';\nimport styles from './skin.css?inline';\n\n// Register the player, container, and all UI custom elements.\nimport './ui';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"media-default-skin media-default-skin--audio\">\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n\n <media-error-dialog class=\"media-error\">\n <div class=\"media-error__dialog\">\n <div class=\"media-error__content\">\n <media-alert-dialog-title class=\"media-error__title\"></media-alert-dialog-title>\n <media-alert-dialog-description class=\"media-error__description\"></media-alert-dialog-description>\n </div>\n <div class=\"media-error__actions\">\n <media-alert-dialog-close class=\"media-button media-button--subtle\"></media-alert-dialog-close>\n </div>\n </div>\n </media-error-dialog>\n\n <div class=\"media-surface media-controls\">\n <media-tooltip-group>\n <div class=\"media-button-group\">\n <span class=\"media-button--play__wrapper\">\n <media-buffering-indicator class=\"media-buffering-indicator\">\n ${renderIcon('spinner', { class: 'media-icon' })}\n </media-buffering-indicator>\n <media-play-button commandfor=\"play-tooltip\" class=\"media-button media-button--subtle media-button--icon media-button--play\">\n ${renderIcon('restart', { class: 'media-icon media-icon--restart' })}\n ${renderIcon('play', { class: 'media-icon media-icon--play' })}\n ${renderIcon('pause', { class: 'media-icon media-icon--pause' })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" boundary=\"viewport\" class=\"media-surface media-tooltip\">\n <media-tooltip-label></media-tooltip-label>\n <media-tooltip-shortcut class=\"media-tooltip__kbd\"></media-tooltip-shortcut>\n </media-tooltip>\n </span>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"media-button media-button--subtle media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon media-icon--seek media-icon--flipped' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" boundary=\"viewport\" class=\"media-surface media-tooltip\">\n <media-tooltip-label></media-tooltip-label>\n <media-tooltip-shortcut class=\"media-tooltip__kbd\"></media-tooltip-shortcut>\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"media-button media-button--subtle media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon media-icon--seek' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" boundary=\"viewport\" class=\"media-surface media-tooltip\">\n <media-tooltip-label></media-tooltip-label>\n <media-tooltip-shortcut class=\"media-tooltip__kbd\"></media-tooltip-shortcut>\n </media-tooltip>\n </div>\n\n <div class=\"media-time-controls\">\n <media-time type=\"current\" class=\"media-time\"></media-time>\n <media-time-slider class=\"media-slider\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-buffer class=\"media-slider__buffer\"></media-slider-buffer>\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb\"></media-slider-thumb>\n <media-slider-preview overflow=\"visible\" class=\"media-slider__preview\">\n <media-slider-value type=\"pointer\" class=\"media-slider__value media-time\"></media-slider-value>\n </media-slider-preview>\n </media-time-slider>\n <media-time toggle type=\"remaining\" class=\"media-time\"></media-time>\n </div>\n\n <div class=\"media-button-group\">\n <media-playback-rate-button commandfor=\"playback-rate-menu\" class=\"media-button media-button--subtle media-button--icon media-button--playback-rate\"></media-playback-rate-button>\n <media-menu id=\"playback-rate-menu\" side=\"top\" align=\"center\" boundary=\"viewport\" class=\"media-surface media-popover media-menu\">\n <media-playback-rate-radio-group class=\"media-menu__group\">\n <template>\n <media-menu-radio-item class=\"media-menu__item\">\n <span data-part=\"label\"></span>\n <media-menu-item-indicator force-mount class=\"media-menu__indicator\">\n ${renderIcon('check', { class: 'media-icon' })}\n </media-menu-item-indicator>\n </media-menu-radio-item>\n </template>\n </media-playback-rate-radio-group>\n </media-menu>\n\n <media-mute-button commandfor=\"audio-volume-popover\" class=\"media-button media-button--subtle media-button--icon media-button--mute\">\n ${renderIcon('volume-off', { class: 'media-icon media-icon--volume-off' })}\n ${renderIcon('volume-low', { class: 'media-icon media-icon--volume-low' })}\n ${renderIcon('volume-high', { class: 'media-icon media-icon--volume-high' })}\n </media-mute-button>\n\n <media-popover id=\"audio-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"top\" boundary=\"viewport\" class=\"media-surface media-popover media-popover--volume\">\n <media-volume-slider class=\"media-slider\" orientation=\"vertical\" thumb-alignment=\"edge\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb media-slider__thumb--persistent\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n </div>\n </media-tooltip-group>\n </div>\n\n <!-- Hotkeys -->\n <media-hotkey keys=\"Space\" action=\"togglePaused\"></media-hotkey>\n <media-hotkey keys=\"k\" action=\"togglePaused\"></media-hotkey>\n <media-hotkey keys=\"m\" action=\"toggleMuted\"></media-hotkey>\n <media-hotkey keys=\"ArrowRight\" action=\"seekStep\" value=\"5\"></media-hotkey>\n <media-hotkey keys=\"ArrowLeft\" action=\"seekStep\" value=\"-5\"></media-hotkey>\n <media-hotkey keys=\"l\" action=\"seekStep\" value=\"10\"></media-hotkey>\n <media-hotkey keys=\"j\" action=\"seekStep\" value=\"-10\"></media-hotkey>\n <media-hotkey keys=\"ArrowUp\" action=\"volumeStep\" value=\"0.05\"></media-hotkey>\n <media-hotkey keys=\"ArrowDown\" action=\"volumeStep\" value=\"-0.05\"></media-hotkey>\n <media-hotkey keys=\"0-9\" action=\"seekToPercent\"></media-hotkey>\n <media-hotkey keys=\"Home\" action=\"seekToPercent\" value=\"0\"></media-hotkey>\n <media-hotkey keys=\"End\" action=\"seekToPercent\" value=\"100\"></media-hotkey>\n <media-hotkey keys=\">\" action=\"speedUp\"></media-hotkey>\n <media-hotkey keys=\"<\" action=\"speedDown\"></media-hotkey>\n </media-container>\n `;\n}\n\nexport class AudioSkinElement extends SkinElement {\n static readonly tagName = 'audio-skin';\n static styles = createShadowStyle(styles);\n static template = createTemplate(getTemplateHTML());\n}\n\nsafeDefine(AudioSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioSkinElement.tagName]: AudioSkinElement;\n }\n}\n"],"mappings":"mPAAA,IAAA,EAAe,k70BCWf,SAAS,GAAkB,CACzB,MAAO,4vBAAA,EAAA,UAAA,CAAA,MAAA,YAAA,CAAA,EAAA,6JAAA,EAAA,UAAA,CAAA,MAAA,gCAAA,CAAA,EAAA,GAAA,EAAA,OAAA,CAAA,MAAA,6BAAA,CAAA,EAAA,GAAA,EAAA,QAAA,CAAA,MAAA,8BAAA,CAAA,EAAA,mcAAA,EAAA,OAAA,CAAA,MAAA,iDAAA,CAAA,EAAA,mfAAA,EAAA,OAAA,CAAA,MAAA,6BAAA,CAAA,EAAA,giDAAA,EAAA,QAAA,CAAA,MAAA,YAAA,CAAA,EAAA,uPAAA,EAAA,aAAA,CAAA,MAAA,mCAAA,CAAA,EAAA,GAAA,EAAA,aAAA,CAAA,MAAA,mCAAA,CAAA,EAAA,GAAA,EAAA,cAAA,CAAA,MAAA,oCAAA,CAAA,EAAA,uhDA4HT,CAQA,EAAW,cAN2B,CAAY,QACtB,KAAA,QAAA,oBACV,KAAA,OAAA,EAAkB,CAAM,SACtB,KAAA,SAAA,EAAe,EAAgB,CAAC,EACpD,CAE2B"}
1
+ {"version":3,"file":"audio.js","names":[],"sources":["../inline-css:src/define/audio/skin.js","../src/define/audio/skin.ts"],"sourcesContent":["export default \"video-player,live-video-player,media-i18n{display:contents}video-player video,video-player [slot=poster],live-video-player video,live-video-player [slot=poster]{width:100%;height:100%;display:block}video-player video::-webkit-media-text-track-container,live-video-player video::-webkit-media-text-track-container{z-index:1;scale:.98;translate:0 var(--media-caption-track-y,0);transition:translate var(--media-caption-track-duration,0) ease-out;transition-delay:var(--media-caption-track-delay,0);font-family:inherit}media-tooltip-group{display:contents}:host{width:100%;display:grid}media-container{min-width:0;min-height:0}.media-popover--volume:has(media-volume-slider[data-hidden]){display:none}.media-sr-only{white-space:nowrap;clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.media-default-skin *,.media-default-skin :before,.media-default-skin :after{box-sizing:border-box}.media-default-skin img,.media-default-skin video,.media-default-skin svg{max-width:100%;display:block}.media-default-skin button{font:inherit}.media-default-skin [hidden][hidden]{display:none}@media (prefers-reduced-motion:no-preference){.media-default-skin{interpolate-size:allow-keywords}}.media-default-skin{--accent-color:var(--media-accent-color,var(--default-accent-color));--accent-contrast-color:contrast-color(var(--accent-color));--accent-background-color:var(--media-accent-color,oklch(from var(--default-accent-color) l c h / calc(alpha * .1)));--accent-text-color:var(--media-accent-text-color,contrast-color(var(--media-accent-color,oklch(0% 0 0))));--shadow-current-color:oklch(from currentColor 0 0 0 / clamp(0, calc((l - .5) * .5), .15));--shadow-subtle-current-color:oklch(from var(--shadow-current-color) l c h / calc(alpha * .4));--scrollbar-thumb-color:oklch(from currentColor l c h / .3);--scale:1;--scale-unit:var(--media-scale-unit,16px);--size:calc(var(--scale-unit) * var(--scale));--spacing:calc(var(--size) / 4);--font-size-medium:calc(.9375 * var(--size));--font-size-base:calc(.8125 * var(--size));--font-size-small:calc(.6875 * var(--size));--font-size-tiny:calc(.5625 * var(--size));--media-icon-size:calc(1.125 * var(--size));--container-border-radius:var(--media-border-radius,1.75rem);width:100%;height:100%;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:var(--font-size-base);-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;letter-spacing:normal;outline-offset:-4px;scrollbar-color:var(--scrollbar-thumb-color) transparent;scrollbar-width:thin;border-radius:var(--container-border-radius,1.75rem);isolation:isolate;outline:2px solid #0000;line-height:1.5;transition-property:outline-offset,outline-color;transition-duration:.1s;transition-timing-function:ease-out;display:block;position:relative;container:media-root/inline-size;&:focus-visible{outline-color:var(--focus-ring-color);outline-offset:2px}&::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-color);border-radius:9999px}@media (prefers-reduced-transparency:reduce) or (prefers-contrast:more){--scrollbar-thumb-color:oklch(from currentColor l c h / .8);scrollbar-width:auto}}.media-default-skin .media-surface{background-color:var(--surface-background-color);box-shadow:0 0 0 1px var(--surface-outer-border-color), 0 1px 3px 0 var(--surface-shadow-color), 0 1px 2px -1px var(--surface-shadow-color);backdrop-filter:var(--surface-backdrop-filter);&:after{z-index:10;pointer-events:none;content:\\\"\\\";border-radius:inherit;box-shadow:inset 0 1px 0 0 var(--surface-inner-border-color), inset 0 0 0 1px oklch(from var(--surface-inner-border-color) l c h / calc(alpha * .5));position:absolute;inset:0}}.media-default-skin .media-buffering-indicator{z-index:10;color:oklch(100% 0 0);pointer-events:none;place-content:center;display:none;position:absolute;inset:0;&:not([data-visible]){--media-spinner-animation:none}&[data-visible]{display:grid}@media (prefers-reduced-motion:reduce){--media-spinner-animation:none}}.media-default-skin .media-error{outline:none}.media-default-skin .media-error:not([data-open]){display:none}.media-default-skin .media-error__title{font-weight:600;line-height:1.25}.media-default-skin .media-error__description{overflow-wrap:anywhere;opacity:.7}.media-default-skin .media-error__actions{gap:calc(var(--spacing) * 2);display:flex;&>*{flex:1}}.media-default-skin .media-error[data-open]~.media-controls *{visibility:hidden}.media-default-skin .media-controls{--media-popover-side-offset:calc(var(--spacing) * (var(--base-side-offset,2) + 1));--media-tooltip-side-offset:var(--media-popover-side-offset);--media-popover-boundary-offset:calc(var(--spacing) * var(--base-boundary-offset,2));--media-tooltip-boundary-offset:var(--media-popover-boundary-offset);padding:calc(var(--spacing) * 1);text-shadow:0 1px 0 var(--shadow-current-color);border-radius:3.40282e38px;align-items:center;display:flex;container:media-controls/inline-size;&:dir(rtl){flex-direction:row-reverse}}.media-default-skin .media-time-controls{gap:calc(var(--spacing) * 2.5);flex:1;align-items:center;display:flex;container:media-time-controls/inline-size;&:dir(rtl){flex-direction:row-reverse}&>.media-time:last-child{@container media-time-controls (width<16rem){display:none}}}.media-default-skin .media-time{font-variant-numeric:tabular-nums}.media-default-skin .media-time[role=button]{cursor:pointer;outline-offset:-2px;border-radius:calc(var(--spacing) * 1);outline:2px solid #0000;transition-property:outline-color,outline-offset;transition-duration:.1s;transition-timing-function:ease-out;&:focus-visible{outline-color:var(--focus-ring-color);outline-offset:2px}}.media-default-skin .media-button{height:calc(var(--spacing) * 9);min-height:0;padding:calc(var(--spacing) * 2) calc(var(--spacing) * 4);text-align:center;touch-action:manipulation;cursor:pointer;user-select:none;outline-offset:-2px;will-change:scale;border:none;border-radius:3.40282e38px;outline:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;transition-property:background-color,color,outline-offset,scale;transition-duration:.15s;transition-timing-function:ease-out;display:flex;&:focus-visible{outline-color:var(--focus-ring-color);outline-offset:2px}&:active:not([aria-disabled=true]){scale:.97}&[aria-disabled=true]{cursor:not-allowed;opacity:.5}}.media-default-skin .media-button--primary{color:var(--accent-contrast-color);text-shadow:none;background:var(--accent-color);font-weight:500}.media-default-skin .media-button--subtle{color:inherit;text-shadow:inherit;background:0 0;&:not([aria-disabled=true]){&:hover,&:focus-visible,&[aria-expanded=true]{color:var(--accent-text-color);background-color:var(--accent-background-color);text-decoration:none}}}.media-default-skin .media-button--icon{aspect-ratio:1;padding:0;display:grid;&:active:not([aria-disabled=true]){scale:.97}& .media-icon__container{display:grid}& .media-icon{filter:drop-shadow(0 1px 0 var(--shadow-current-color));grid-area:1/1;transition-property:opacity,scale;transition-duration:.15s;transition-timing-function:ease-out}}.media-default-skin .media-button--seek{& .media-icon__label{font-variant-numeric:tabular-nums;letter-spacing:-.05em;font-size:.715em;font-weight:500;position:absolute;bottom:-3px;right:-1px}&:has(.media-icon--flipped) .media-icon__label{right:unset;left:-1px}}.media-default-skin .media-button--playback-rate{font-variant-numeric:tabular-nums;padding:0;&:after{content:attr(data-rate) \\\"×\\\";width:4ch}&[data-inline-rate-label]:after{content:none}}.media-default-skin .media-button--settings{& .media-icon--settings{transition:transform .15s ease-in-out;@media (prefers-reduced-motion:reduce){transition-duration:0s}}&[aria-expanded=true] .media-icon--settings{transform:rotate(90deg)}}.media-default-skin .media-button--live{gap:calc(var(--spacing) * 1.5);aspect-ratio:auto;width:auto;padding:calc(var(--spacing) * 2) calc(var(--spacing) * 3);font-size:var(--font-size-small);text-transform:uppercase;letter-spacing:.05em;align-items:center;font-weight:600;line-height:1;display:inline-flex;&:before{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2);content:\\\"\\\";background-color:oklch(from currentColor l c h / .4);border-radius:50%;flex-shrink:0;transition:background-color .15s ease-out;display:inline-block}&[data-live-edge]:before{background-color:oklch(65% .22 27)}}@media (prefers-reduced-motion:reduce){.media-default-skin .media-button{will-change:auto;transition-property:background-color,color;scale:1}}.media-default-skin .media-button-group{align-items:center;gap:1px;display:flex;&:dir(rtl){flex-direction:row-reverse}}.media-default-skin .media-badge{padding:calc(var(--spacing) * .5) calc(var(--spacing) * 1.5);font-size:var(--font-size-small);color:oklch(from currentColor l c h / .85);white-space:nowrap;background-color:oklch(from currentColor l c h / .1);border-radius:3.40282e38px;font-weight:500;line-height:1}.media-default-skin .media-icon__container{position:relative}.media-default-skin .media-icon{width:var(--media-icon-size);height:var(--media-icon-size);flex-shrink:0}.media-default-skin .media-icon--flipped,.media-default-skin:dir(rtl) .media-menu__chevron{scale:-1 1}.media-default-skin:dir(rtl) .media-menu__chevron.media-icon--flipped{scale:1}.media-default-skin .media-slider{--track-size:calc(var(--spacing) * 1);--track-highlighted-size:calc(var(--spacing) * 1.75);--track-border-radius:99px;--thumb-size:calc(var(--spacing) * 3);--chapter-gap:calc(var(--spacing) * 1);--chapter-inset-start:calc(var(--chapter-gap) / 2);--chapter-inset-end:calc(var(--chapter-gap) / 2);cursor:pointer;outline:none;flex:1;justify-content:center;align-items:center;display:flex;position:relative;&[data-orientation=horizontal]{width:var(--slider-width,100%);min-width:calc(var(--spacing) * 20);height:var(--slider-height,calc(var(--spacing) * 8))}&[data-orientation=vertical]{width:var(--slider-width,calc(var(--spacing) * 8));height:var(--slider-height,calc(var(--spacing) * 20))}& .media-slider__track{user-select:none;background-color:oklch(from currentColor l c h / .2);border-radius:var(--track-border-radius);isolation:isolate;position:relative;overflow:hidden;&[data-orientation=horizontal]{width:100%;height:var(--track-size)}&[data-orientation=vertical]{width:var(--track-size);height:100%}}& .media-slider__buffer,& .media-slider__fill{pointer-events:none;border-radius:inherit;position:absolute;&[data-orientation=horizontal]{inset-block:0;width:100%;left:0}&[data-orientation=vertical]{inset-inline:0;height:100%;bottom:0}@media (prefers-reduced-motion:no-preference){transition:clip-path .2s ease-out}}&[data-dragging],&[data-seeking]{& .media-slider__fill,& .media-slider__buffer{transition-duration:0s}}& .media-slider__buffer{background-color:oklch(from currentColor l c h / .2);&[data-orientation=horizontal]{clip-path:inset(0 calc(100% - var(--media-slider-buffer)) 0 0 round var(--track-border-radius))}&[data-orientation=vertical]{clip-path:inset(calc(100% - var(--media-slider-buffer)) 0 0 0 round var(--track-border-radius))}}& .media-slider__fill{background-color:var(--accent-color);&[data-orientation=horizontal]{clip-path:inset(0 calc(100% - var(--media-slider-fill)) 0 0 round var(--track-border-radius))}&[data-orientation=vertical]{clip-path:inset(calc(100% - var(--media-slider-fill)) 0 0 0 round var(--track-border-radius))}}&[data-dragging]{& .media-slider__fill[data-orientation=horizontal]{clip-path:inset(0 calc(100% - var(--media-slider-pointer)) 0 0 round var(--track-border-radius))}& .media-slider__fill[data-orientation=vertical]{clip-path:inset(calc(100% - var(--media-slider-pointer)) 0 0 0 round var(--track-border-radius))}}& .media-slider__chapters{border-radius:inherit;flex:1;align-items:center;min-width:0;min-height:0;display:flex;position:relative;&[data-orientation=horizontal]{width:100%;height:100%}&[data-orientation=vertical]{flex-direction:column-reverse;width:100%;height:100%}}& .media-slider__chapter{border-radius:inherit;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:absolute;inset:0;&:first-child{--chapter-inset-start:0px}&:last-child{--chapter-inset-end:0px}& .media-slider__chapter-track{border-radius:inherit;@media (prefers-reduced-motion:no-preference){transition:height .2s ease-out,width .2s ease-out}}&[data-orientation=horizontal]{clip-path:inset(0 calc(100% - var(--media-slider-chapter-end)) 0 var(--media-slider-chapter-start));& .media-slider__chapter-track{height:var(--track-size);clip-path:inset(0 calc(100% - var(--media-slider-chapter-end) + var(--chapter-inset-end)) 0 calc(var(--media-slider-chapter-start) + var(--chapter-inset-start)) round var(--track-border-radius))}&[data-highlighted] .media-slider__chapter-track{height:var(--track-highlighted-size)}}&[data-orientation=vertical]{clip-path:inset(calc(100% - var(--media-slider-chapter-end)) 0 var(--media-slider-chapter-start) 0);& .media-slider__chapter-track{width:var(--track-size);clip-path:inset(calc(100% - var(--media-slider-chapter-end) + var(--chapter-inset-end)) 0 calc(var(--media-slider-chapter-start) + var(--chapter-inset-start)) 0 round var(--track-border-radius))}&[data-highlighted] .media-slider__chapter-track{width:var(--track-highlighted-size)}}}& .media-slider__thumb{z-index:10;width:var(--thumb-size);height:var(--thumb-size);user-select:none;outline-offset:-4px;box-shadow:0 0 0 1px var(--shadow-current-color,oklch(0% 0 0/.1)), 0 1px 3px 0 oklch(0% 0 0/.35), 0 1px 2px -1px oklch(0% 0 0/.35);opacity:0;background-color:currentColor;border-radius:3.40282e38px;outline:4px solid #0000;position:absolute;translate:-50% -50%;scale:.8;&[data-orientation=horizontal]{top:50%;left:var(--media-slider-fill)}&[data-orientation=vertical]{top:calc(100% - var(--media-slider-fill));left:50%}&:focus-visible{outline-color:oklch(from currentColor l c h / .15);outline-offset:0;opacity:1}&:after{content:\\\"\\\";border-radius:inherit;position:absolute;inset:-4px;box-shadow:0 0 0 2px}&:not(:focus-visible):after{opacity:0;scale:.5}&.media-slider__thumb--persistent{opacity:1;scale:1}@media (hover:hover) and (pointer:fine){&:hover{outline-color:oklch(from currentColor l c h / .15);outline-offset:0}}@media (prefers-reduced-motion:no-preference){transition-property:opacity,outline-offset,left,top,scale;transition-duration:.15s;transition-timing-function:ease-out;&:after{transition-property:opacity,scale;transition-duration:.15s;transition-timing-function:ease-out}}}@media (hover:hover) and (pointer:fine){&:hover .media-slider__thumb{opacity:1;scale:1}}&[data-dragging] .media-slider__thumb{opacity:1;scale:.9;@media (prefers-reduced-motion:no-preference){transition-property:opacity,outline-offset,scale}&[data-orientation=horizontal]{left:var(--media-slider-pointer)}&[data-orientation=vertical]{top:calc(100% - var(--media-slider-pointer))}}& .media-slider__preview{--max-size-factor:36;--max-size:min(calc(var(--spacing) * var(--max-size-factor)), 100cqi);min-width:var(--max-size);height:calc(var(--spacing) * 1);@container media-root (width>42rem){--max-size-factor:48}& .media-slider__thumbnail,& .media-slider__value{max-width:var(--max-size);opacity:0;filter:blur(8px);transform-origin:bottom;scale:.8;translate:-50% calc(var(--spacing) * 2);transition-duration:.15s;transition-timing-function:ease-out;position:absolute;left:50%}& .media-slider__thumbnail{--thumbnail-max-width:var(--max-size);--thumbnail-max-height:var(--max-size);bottom:calc(100% + (var(--spacing) * 9))}& .media-slider__value{bottom:calc(100% + (var(--spacing) * 10.5));text-shadow:0 1px 0 var(--shadow-current-color);flex-direction:column;align-items:center;display:flex}& .media-slider__chapter-title{min-width:0;max-width:var(--max-size);padding-inline:calc(var(--spacing) * 6);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;&:empty{display:none}}&:before{z-index:1;width:calc(var(--spacing) * 1);height:calc(var(--spacing) * 1);pointer-events:none;content:\\\"\\\";box-shadow:0 0 0 1px var(--shadow-current-color,oklch(0% 0 0/.15)), 0 1px 2px 0 oklch(0% 0 0/.35);opacity:0;background-color:currentColor;border-radius:100%;transition-property:opacity,scale;transition-duration:.2s;transition-timing-function:ease-out;position:absolute;top:50%;left:50%;translate:-50% -50%;scale:.5}}&:is([data-pointing],:has(:focus-visible)) .media-slider__preview :is(.media-slider__value,.media-slider__thumbnail),& .media-slider__preview[data-pointing]:not([data-dragging]):before{opacity:1;filter:blur();scale:1}}.media-default-skin{--popup-transition:opacity var(--popup-transition-timing-function) var(--popup-transition-duration), filter var(--popup-transition-timing-function) var(--popup-transition-duration), transform var(--popup-transition-timing-function) var(--popup-transition-duration), scale var(--popup-transition-timing-function) var(--popup-transition-duration)}.media-default-skin .media-popover,.media-default-skin .media-tooltip{--popup-translate-distance:calc(.5 * var(--scale-unit));color:inherit;transition:var(--popup-transition);border:0;margin:0;overflow:visible;&[data-starting-style],&[data-ending-style]{opacity:0;filter:blur(4px);transform:translate(var(--popup-translate-x-distance,0), var(--popup-translate-y-distance,0));scale:.95}&[data-ending-style]{transition-duration:max(0s, calc(var(--popup-transition-duration) - 50ms));transform:none}&[data-side=top]{--popup-translate-y-distance:var(--popup-translate-distance);transform-origin:bottom}&[data-side=bottom]{--popup-translate-y-distance:calc(var(--popup-translate-distance) * -1);transform-origin:top}&[data-side=left]{--popup-translate-x-distance:var(--popup-translate-distance);transform-origin:100%}&[data-side=right]{--popup-translate-x-distance:calc(var(--popup-translate-distance) * -1);transform-origin:0}&:before{pointer-events:inherit;content:\\\"\\\";position:absolute}&[data-side=top]:before,&[data-side=bottom]:before{width:100%;inset-inline:0}&[data-side=top]:before{top:100%}&[data-side=bottom]:before{bottom:100%}&[data-side=left]:before,&[data-side=right]:before{height:100%;inset-block:0}&[data-side=left]:before{left:100%}&[data-side=right]:before{right:100%}}.media-default-skin .media-popover{&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-popover-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-popover-side-offset)}}.media-default-skin .media-popover--volume{padding:calc(var(--spacing) * 3) 0;border-radius:3.40282e38px;&:has(media-volume-slider[data-hidden]){display:none}}.media-default-skin .media-tooltip{padding:calc(var(--spacing) * 1) calc(var(--spacing) * 2.5);font-size:var(--font-size-base);white-space:nowrap;border-radius:3.40282e38px;&[data-open]{column-gap:calc(var(--spacing) * 1);align-items:center;display:flex}&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-tooltip-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-tooltip-side-offset)}& .media-tooltip__kbd{min-width:1.5em;font-family:inherit;font-size:var(--font-size-small);text-align:center;background-color:oklch(from currentColor l c h / .3);border-radius:calc(var(--spacing) * 1);padding:.1em;font-weight:600;line-height:1.25}}.media-default-skin .media-menu{--menu-transition-duration:.25s;--menu-max-height:calc(var(--spacing) * 56);--menu-padding:calc(var(--spacing) * 1);--menu-border-radius:calc(var(--spacing) * 3);--menu-item-border-radius:calc(var(--menu-border-radius) - var(--menu-padding));box-sizing:border-box;min-width:max-content;max-width:var(--media-popover-available-width,none);max-height:min(var(--media-popover-available-height,var(--menu-max-height)), var(--menu-max-height));padding:var(--menu-padding);overscroll-behavior:none;border-radius:var(--menu-border-radius);overflow:auto;@media (prefers-reduced-motion:reduce){--menu-transition-duration:0s}&>.media-menu__panel{inset-inline:0;z-index:10;max-height:inherit;padding:var(--menu-padding);overscroll-behavior:none;transition-timing-function:ease-out;transition-duration:var(--menu-transition-duration);outline:none;transition-property:translate,filter;position:absolute;top:0;overflow:auto;translate:0;&:where([data-starting-style],[data-ending-style]){pointer-events:none;filter:blur(8px);overflow:hidden;translate:100%}&:dir(rtl):where([data-starting-style],[data-ending-style]){translate:-100%}}& .media-menu__separator{margin-block:calc(var(--spacing) * 1);border-bottom:1px solid oklch(0% 0 0/.1);box-shadow:0 1px oklch(100% 0 0/.075)}& .media-menu__group{anchor-scope:--menu-item-highlight-anchor;gap:calc(var(--spacing) * .5);flex-direction:column;display:flex;@supports (top:anchor(top)){&:before{position-anchor:--menu-item-highlight-anchor;inset:anchor(inside);overflow-anchor:none;pointer-events:none;content:\\\"\\\";background-color:var(--accent-background-color);border-radius:var(--menu-item-border-radius);transition:inset .1s ease-in-out;position:absolute}&:has([data-highlighted=\\\"\\\"]):before{transition-duration:0s}}}& .media-menu__item,& .media-menu__back{gap:calc(var(--spacing) * 1.5);padding:calc(var(--spacing) * 1.5) calc(var(--spacing) * 2);text-align:start;text-shadow:0 1px 0 var(--shadow-current-color);cursor:pointer;user-select:none;outline-offset:-2px;border-radius:var(--menu-item-border-radius);outline:2px solid #0000;align-items:center;transition:background-color .1s ease-in-out,color .1s ease-in-out;display:flex;position:relative;& .media-icon{color:oklch(from currentColor l c h / .65);filter:drop-shadow(0 1px 0 var(--shadow-current-color));flex-shrink:0}&:focus-visible{outline-color:var(--focus-ring-color);outline-offset:2px}&:hover,&[data-highlighted]{color:var(--accent-text-color);background-color:var(--accent-background-color);& .media-icon{color:inherit}}@supports (top:anchor(top)){transition-duration:50ms;&:hover,&[data-highlighted]{transition-duration:.2s}}}& .media-menu__indicator{margin-inline:auto calc(var(--spacing) * -1);opacity:0;flex-shrink:0;& .media-icon{filter:drop-shadow(0 1px 0 var(--shadow-current-color))}}& .media-menu__item{font-variant-numeric:tabular-nums;color:inherit;justify-content:space-between;&[aria-disabled=true]{pointer-events:none;cursor:not-allowed;opacity:.5}&[aria-checked=true] .media-menu__indicator{opacity:1}&[data-availability=unavailable],&[data-availability=unsupported]{display:none}&[data-highlighted]{@supports (top:anchor(top)){anchor-name:--menu-item-highlight-anchor;background-color:#0000}}}& .media-menu__tier{padding-inline-start:calc(var(--spacing) * .5);font-size:var(--font-size-tiny);color:oklch(from currentColor l c h / .7);padding-top:1px;font-weight:600;line-height:1}& .media-menu__back{width:100%;margin-bottom:calc(var(--spacing) * .5)}& .media-menu__hint{gap:calc(var(--spacing) * 1);min-width:0;color:oklch(from currentColor l c h / .65);align-items:center;margin-inline-start:auto;padding-inline-start:calc(var(--spacing) * 2);display:inline-flex}& .media-menu__hint-label{max-width:calc(var(--spacing) * 24);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}& .media-menu__chevron{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}&.media-menu--settings{width:var(--media-menu-width);min-width:calc(var(--spacing) * 48);height:var(--media-menu-height);transition:var(--popup-transition), width var(--popup-transition-timing-function) var(--menu-transition-duration), height var(--popup-transition-timing-function) var(--menu-transition-duration);overflow:hidden;&>:not([data-submenu]){transition:translate var(--menu-transition-duration) ease-out, filter var(--menu-transition-duration) ease-out;translate:0}&[data-submenu-expanded=true]>:not([data-submenu]){filter:blur(8px);translate:-100%}&:dir(rtl)[data-submenu-expanded=true]>:not([data-submenu]){translate:100%}&[data-submenu-expanded]>:not([data-submenu]):before{display:none}&[data-starting-style],&[data-ending-style]{transition:var(--popup-transition)}}}.media-button--play .media-icon--restart,.media-button--play .media-icon--play,.media-button--play .media-icon--pause,.media-button--mute .media-icon--volume-off,.media-button--mute .media-icon--volume-low,.media-button--mute .media-icon--volume-high{opacity:0;display:none}.media-button--play[data-ended] .media-icon--restart,.media-button--play:not([data-ended])[data-paused] .media-icon--play,.media-button--play:not([data-ended]):not([data-started]) .media-icon--play,.media-button--play[data-started]:not([data-paused]):not([data-ended]) .media-icon--pause,.media-button--mute[data-muted] .media-icon--volume-off,.media-button--mute:not([data-muted])[data-volume-level=low] .media-icon--volume-low,.media-button--mute:not([data-muted]):not([data-volume-level=low]) .media-icon--volume-high{opacity:1;display:block}.media-default-skin--audio{--default-accent-color:light-dark(oklch(0% 0 0),oklch(100% 0 0));--text-color:light-dark(oklch(0% 0 0),oklch(100% 0 0));--border-color:oklch(0% 0 0/.1);--focus-ring-color:light-dark(oklch(0% 0 0),oklch(100% 0 0));--surface-background-color:light-dark(oklch(100% 0 0/.5),oklch(0% 0 0/.4));--surface-inner-border-color:oklch(100% 0 0/.1);--surface-outer-border-color:oklch(0% 0 0/.05);--surface-shadow-color:oklch(0% 0 0/.15);--surface-backdrop-filter:blur(16px) saturate(1.5);--error-dialog-transition-duration:.25s;--error-dialog-transition-delay:.1s;--popup-transition-duration:.1s;--popup-transition-timing-function:ease-out;@media (prefers-reduced-motion:reduce){--error-dialog-transition-duration:50ms;--error-dialog-transition-delay:0s;--popup-transition-duration:0s}@media (prefers-reduced-transparency:reduce) or (prefers-contrast:more){--surface-background-color:light-dark(oklch(100% 0 0),oklch(0% 0 0));--surface-inner-border-color:light-dark(oklch(100% 0 0/.1),oklch(100% 0 0/.2));--surface-outer-border-color:light-dark(oklch(0% 0 0/.05),#0000)}}.media-default-skin--audio .media-error__dialog{z-index:20;gap:calc(var(--spacing) * 3);padding-inline:calc(var(--spacing) * 5) calc(var(--spacing) * .5);color:var(--text-color);background-color:var(--surface-background-color);backdrop-filter:var(--surface-backdrop-filter);transition-delay:var(--error-dialog-transition-delay);transition-timing-function:ease-out;transition-duration:var(--error-dialog-transition-duration);border-radius:3.40282e38px;align-items:center;transition-property:opacity,filter;display:flex;position:absolute;inset:0}.media-default-skin .media-error[data-starting-style] .media-error__dialog,.media-default-skin .media-error[data-ending-style] .media-error__dialog{opacity:0;filter:blur(4px)}.media-default-skin .media-error[data-ending-style] .media-error__dialog{transition-delay:0s}.media-default-skin--audio .media-error__content{gap:calc(var(--spacing) * 2);flex:1;align-items:center;display:flex}.media-default-skin--audio .media-controls{--base-boundary-offset:2;color:var(--text-color);& .media-time-controls{padding-inline:calc(var(--spacing) * 3)}& .media-button--seek{@container media-root (width<32rem){display:none}}}.media-default-skin--audio .media-button--play__wrapper{display:inline-flex;position:relative}.media-default-skin--audio .media-button--play__wrapper .media-buffering-indicator{color:inherit}.media-default-skin--audio .media-button--play__wrapper:has(.media-buffering-indicator[data-visible]) .media-button--play .media-icon{opacity:0}.media-default-skin--audio .media-slider__track{background-color:light-dark(oklch(0% 0 0/.1),oklch(100% 0 0/.2));box-shadow:0 0 0 1px light-dark(#0000,oklch(0% 0 0/.05))}\";","import { renderIcon } from '@videojs/icons/render';\nimport { createShadowStyle, createTemplate } from '@videojs/utils/dom';\nimport { safeDefine } from '../safe-define';\nimport { SkinElement } from '../skin-element';\nimport styles from './skin.css?inline';\n\n// Register the player, container, and all UI custom elements.\nimport './ui';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"media-default-skin media-default-skin--audio\">\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n\n <media-error-dialog class=\"media-error\">\n <div class=\"media-error__dialog\">\n <div class=\"media-error__content\">\n <media-alert-dialog-title class=\"media-error__title\"></media-alert-dialog-title>\n <media-alert-dialog-description class=\"media-error__description\"></media-alert-dialog-description>\n </div>\n <div class=\"media-error__actions\">\n <media-alert-dialog-close class=\"media-button media-button--subtle\"></media-alert-dialog-close>\n </div>\n </div>\n </media-error-dialog>\n\n <div class=\"media-surface media-controls\">\n <media-tooltip-group>\n <div class=\"media-button-group\">\n <span class=\"media-button--play__wrapper\">\n <media-buffering-indicator class=\"media-buffering-indicator\">\n ${renderIcon('spinner', { class: 'media-icon' })}\n </media-buffering-indicator>\n <media-play-button commandfor=\"play-tooltip\" class=\"media-button media-button--subtle media-button--icon media-button--play\">\n ${renderIcon('restart', { class: 'media-icon media-icon--restart' })}\n ${renderIcon('play', { class: 'media-icon media-icon--play' })}\n ${renderIcon('pause', { class: 'media-icon media-icon--pause' })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" boundary=\"viewport\" class=\"media-surface media-tooltip\">\n <media-tooltip-label></media-tooltip-label>\n <media-tooltip-shortcut class=\"media-tooltip__kbd\"></media-tooltip-shortcut>\n </media-tooltip>\n </span>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"media-button media-button--subtle media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon media-icon--seek media-icon--flipped' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" boundary=\"viewport\" class=\"media-surface media-tooltip\">\n <media-tooltip-label></media-tooltip-label>\n <media-tooltip-shortcut class=\"media-tooltip__kbd\"></media-tooltip-shortcut>\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"media-button media-button--subtle media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon media-icon--seek' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" boundary=\"viewport\" class=\"media-surface media-tooltip\">\n <media-tooltip-label></media-tooltip-label>\n <media-tooltip-shortcut class=\"media-tooltip__kbd\"></media-tooltip-shortcut>\n </media-tooltip>\n </div>\n\n <div class=\"media-time-controls\">\n <media-time type=\"current\" class=\"media-time\"></media-time>\n <media-time-slider class=\"media-slider\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-buffer class=\"media-slider__buffer\"></media-slider-buffer>\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb\"></media-slider-thumb>\n <media-slider-preview overflow=\"visible\" class=\"media-slider__preview\">\n <media-slider-value type=\"pointer\" class=\"media-slider__value media-time\"></media-slider-value>\n </media-slider-preview>\n </media-time-slider>\n <media-time toggle type=\"remaining\" class=\"media-time\"></media-time>\n </div>\n\n <div class=\"media-button-group\">\n <media-playback-rate-button commandfor=\"playback-rate-menu\" class=\"media-button media-button--subtle media-button--icon media-button--playback-rate\"></media-playback-rate-button>\n <media-menu id=\"playback-rate-menu\" side=\"top\" align=\"center\" boundary=\"viewport\" class=\"media-surface media-popover media-menu\">\n <media-playback-rate-radio-group class=\"media-menu__group\">\n <template>\n <media-menu-radio-item class=\"media-menu__item\">\n <span data-part=\"label\"></span>\n <media-menu-item-indicator force-mount class=\"media-menu__indicator\">\n ${renderIcon('check', { class: 'media-icon' })}\n </media-menu-item-indicator>\n </media-menu-radio-item>\n </template>\n </media-playback-rate-radio-group>\n </media-menu>\n\n <media-mute-button commandfor=\"audio-volume-popover\" class=\"media-button media-button--subtle media-button--icon media-button--mute\">\n ${renderIcon('volume-off', { class: 'media-icon media-icon--volume-off' })}\n ${renderIcon('volume-low', { class: 'media-icon media-icon--volume-low' })}\n ${renderIcon('volume-high', { class: 'media-icon media-icon--volume-high' })}\n </media-mute-button>\n\n <media-popover id=\"audio-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"top\" boundary=\"viewport\" class=\"media-surface media-popover media-popover--volume\">\n <media-volume-slider class=\"media-slider\" orientation=\"vertical\" thumb-alignment=\"edge\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb media-slider__thumb--persistent\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n </div>\n </media-tooltip-group>\n </div>\n\n <!-- Hotkeys -->\n <media-hotkey keys=\"Space\" action=\"togglePaused\"></media-hotkey>\n <media-hotkey keys=\"k\" action=\"togglePaused\"></media-hotkey>\n <media-hotkey keys=\"m\" action=\"toggleMuted\"></media-hotkey>\n <media-hotkey keys=\"ArrowRight\" action=\"seekStep\" value=\"5\"></media-hotkey>\n <media-hotkey keys=\"ArrowLeft\" action=\"seekStep\" value=\"-5\"></media-hotkey>\n <media-hotkey keys=\"l\" action=\"seekStep\" value=\"10\"></media-hotkey>\n <media-hotkey keys=\"j\" action=\"seekStep\" value=\"-10\"></media-hotkey>\n <media-hotkey keys=\"ArrowUp\" action=\"volumeStep\" value=\"0.05\"></media-hotkey>\n <media-hotkey keys=\"ArrowDown\" action=\"volumeStep\" value=\"-0.05\"></media-hotkey>\n <media-hotkey keys=\"0-9\" action=\"seekToPercent\"></media-hotkey>\n <media-hotkey keys=\"Home\" action=\"seekToPercent\" value=\"0\"></media-hotkey>\n <media-hotkey keys=\"End\" action=\"seekToPercent\" value=\"100\"></media-hotkey>\n <media-hotkey keys=\">\" action=\"speedUp\"></media-hotkey>\n <media-hotkey keys=\"<\" action=\"speedDown\"></media-hotkey>\n </media-container>\n `;\n}\n\nexport class AudioSkinElement extends SkinElement {\n static readonly tagName = 'audio-skin';\n static styles = createShadowStyle(styles);\n static template = createTemplate(getTemplateHTML());\n}\n\nsafeDefine(AudioSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioSkinElement.tagName]: AudioSkinElement;\n }\n}\n"],"mappings":"kPAAA,IAAA,EAAe,201BCWf,SAAS,GAAkB,CACzB,MAAO,4vBAAA,EAAA,UAAA,CAAA,MAAA,YAAA,CAAA,EAAA,6JAAA,EAAA,UAAA,CAAA,MAAA,gCAAA,CAAA,EAAA,GAAA,EAAA,OAAA,CAAA,MAAA,6BAAA,CAAA,EAAA,GAAA,EAAA,QAAA,CAAA,MAAA,8BAAA,CAAA,EAAA,mcAAA,EAAA,OAAA,CAAA,MAAA,iDAAA,CAAA,EAAA,mfAAA,EAAA,OAAA,CAAA,MAAA,6BAAA,CAAA,EAAA,giDAAA,EAAA,QAAA,CAAA,MAAA,YAAA,CAAA,EAAA,uPAAA,EAAA,aAAA,CAAA,MAAA,mCAAA,CAAA,EAAA,GAAA,EAAA,aAAA,CAAA,MAAA,mCAAA,CAAA,EAAA,GAAA,EAAA,cAAA,CAAA,MAAA,oCAAA,CAAA,EAAA,uhDA4HT,CAQA,EAAW,cAN2B,CAAY,QACtB,KAAA,QAAA,oBACV,KAAA,OAAA,EAAkB,CAAM,SACtB,KAAA,SAAA,EAAe,EAAgB,CAAC,EACpD,CAE2B"}
@@ -1,7 +1,7 @@
1
1
  import { r as ReactiveElement, t as MediaElement } from "./media-element-CJY3JIgc.js";
2
2
  import { i as safeDefine } from "./context-OhQY847V.js";
3
3
  import { t as MediaContainerElement } from "./container-element-HHK_KZOE.js";
4
- import { a as backgroundFeatures, t as createPlayer } from "./create-player-5UrHNqBI.js";
4
+ import { a as backgroundFeatures, t as createPlayer } from "./create-player-BEEc22xK.js";
5
5
  import { r as ensureGlobalStyle } from "./shadow-styles-BkjnRJ4e.js";
6
6
  import "./background-video-WKumpp49.js";
7
7
 
package/cdn/background.js CHANGED
@@ -1,2 +1,2 @@
1
- import{r as e,t}from"./media-element-Cp5PrNre.js";import{i as n}from"./context-C2rsoDxk.js";import{t as r}from"./container-element-Dd0ZCdhK.js";import{a as i,t as a}from"./create-player-LjvbIxIq.js";import{r as o}from"./shadow-styles-DQiIr3u8.js";import"./background-video-YHY_3-lX.js";const{ProviderMixin:s}=a({features:i});n(class extends s(t){static{this.tagName=`background-video-player`}}),n(r);var c=`background-video-player{display:contents}background-video-skin{--media-object-fit:cover;object-fit:var(--media-object-fit);width:100%;min-width:300px;height:100%;min-height:150px;display:block;position:relative}background-video-skin>:not(img,picture){object-fit:inherit;width:100%;height:100%;position:absolute;inset:0}background-video-skin>img,background-video-skin>picture{object-fit:inherit;width:100%;height:100%}`;function l(){return`<media-container><slot name="media"></slot><slot></slot></media-container>`}n(class extends e{static{this.tagName=`background-video-skin`}static{this.shadowRootOptions={mode:`open`}}static{this.getTemplateHTML=l}constructor(){super(),o(`__media-background-styles`,c),this.shadowRoot||(this.attachShadow(this.constructor.shadowRootOptions),this.shadowRoot.innerHTML=l())}});
1
+ import{r as e,t}from"./media-element-Cp5PrNre.js";import{i as n}from"./context-C2rsoDxk.js";import{t as r}from"./container-element-Dd0ZCdhK.js";import{a as i,t as a}from"./create-player-D5WQ_jzZ.js";import{r as o}from"./shadow-styles-DQiIr3u8.js";import"./background-video-YHY_3-lX.js";const{ProviderMixin:s}=a({features:i});n(class extends s(t){static{this.tagName=`background-video-player`}}),n(r);var c=`background-video-player{display:contents}background-video-skin{--media-object-fit:cover;object-fit:var(--media-object-fit);width:100%;min-width:300px;height:100%;min-height:150px;display:block;position:relative}background-video-skin>:not(img,picture){object-fit:inherit;width:100%;height:100%;position:absolute;inset:0}background-video-skin>img,background-video-skin>picture{object-fit:inherit;width:100%;height:100%}`;function l(){return`<media-container><slot name="media"></slot><slot></slot></media-container>`}n(class extends e{static{this.tagName=`background-video-skin`}static{this.shadowRootOptions={mode:`open`}}static{this.getTemplateHTML=l}constructor(){super(),o(`__media-background-styles`,c),this.shadowRoot||(this.attachShadow(this.constructor.shadowRootOptions),this.shadowRoot.innerHTML=l())}});
2
2
  //# sourceMappingURL=background.js.map
@@ -7,7 +7,7 @@ import { a as createContext, i as safeDefine, r as playerContext, t as container
7
7
  import { a as containsComposed, c as i18nContext, l as ContextProvider, n as popupGroupContext, o as isDocument, r as I18nController, s as getDeepActiveElement } from "./container-element-HHK_KZOE.js";
8
8
  import { t as listen } from "./listen-CdeggIF8.js";
9
9
  import { t as noop } from "./noop-BxkeRIz9.js";
10
- import { A as isMediaStreamTypeCapable, C as errorFeature, D as audioTrackFeature, E as bufferFeature, M as isEditableTarget, N as isInteractiveActivation, O as isMediaBufferCapable, S as fullscreenFeature, T as getGestureCoordinator, _ as playbackRateFeature, b as metadataFeature, c as createState, d as volumeFeature, f as timeFeature, g as qualityFeature, h as remotePlaybackFeature, j as definePlayerFeature, k as isMediaSeekCapable, l as throwNoTargetError, m as sourceFeature, n as PlayerController, p as textTrackFeature, r as SnapshotController, u as AbortControllerRegistry, v as playbackFeature, w as controlsFeature, x as liveFeature, y as pipFeature } from "./create-player-5UrHNqBI.js";
10
+ import { A as isMediaSeekCapable, C as fullscreenFeature, D as bufferFeature, E as getGestureCoordinator, M as definePlayerFeature, N as isEditableTarget, O as audioTrackFeature, P as isInteractiveActivation, S as liveFeature, T as controlsFeature, _ as qualityFeature, b as pipFeature, d as AbortControllerRegistry, f as volumeFeature, g as remotePlaybackFeature, h as sourceFeature, j as isMediaStreamTypeCapable, k as isMediaBufferCapable, l as createState, m as textTrackFeature, n as PlayerController, p as timeFeature, r as SnapshotController, u as throwNoTargetError, v as playbackRateFeature, w as errorFeature, x as metadataFeature, y as playbackFeature } from "./create-player-BEEc22xK.js";
11
11
  import { n as kebabCase } from "./casing-Cu0fL85w.js";
12
12
  import { i as observeResize, n as observeElements } from "./observe-elements-B4q3zaDw.js";
13
13
  import { n as isCaptionOrSubtitleTrack } from "./text-track-DMA7pa8W.js";
@@ -75,8 +75,8 @@ function followElementPath(root, getNext) {
75
75
  //#region ../utils/dist/dom/direction.js
76
76
  /** Check whether an element's text direction is right-to-left. */
77
77
  function isRTL(element) {
78
- const dir = element.closest("[dir]")?.getAttribute("dir");
79
- if (dir) return dir.toLowerCase() === "rtl";
78
+ const dir = element.closest("[dir]")?.getAttribute("dir")?.toLowerCase();
79
+ if (dir === "rtl" || dir === "ltr") return dir === "rtl";
80
80
  return getComputedStyle(element).direction === "rtl";
81
81
  }
82
82
 
@@ -343,87 +343,6 @@ function rafThrottle(fn) {
343
343
  return throttled;
344
344
  }
345
345
 
346
- //#endregion
347
- //#region ../utils/dist/dom/template.js
348
- /** Create an `HTMLTemplateElement` from an HTML string, or `null` when `document` is unavailable (SSR). */
349
- function createTemplate(html) {
350
- const doc = globalThis.document;
351
- if (!doc) return null;
352
- const template = doc.createElement("template");
353
- template.innerHTML = html;
354
- return template;
355
- }
356
- /** Return the first direct-child template in a container. */
357
- function getTemplateElement(container) {
358
- for (const child of container.children) if (child.localName === "template" && "content" in child) return child;
359
- return null;
360
- }
361
- /** Return a template's only element root, or `null` when it does not contain exactly one. */
362
- function getTemplateRoot(template) {
363
- const root = template.content.firstElementChild;
364
- return root && !root.nextElementSibling ? root : null;
365
- }
366
- /** Deep-clone a resolved template root into the target document. */
367
- function cloneTemplateRoot(root, targetDocument = root.ownerDocument) {
368
- return targetDocument.importNode(root, true);
369
- }
370
- /** Deep-clone a template's content into a container. */
371
- function renderTemplate(container, template) {
372
- container.appendChild(container.ownerDocument.importNode(template.content, true));
373
- }
374
-
375
- //#endregion
376
- //#region ../core/dist/dev/i18n/text/menu.js
377
- const prefix$7 = "menu.";
378
- const settingsText = {
379
- key: `${prefix$7}settings`,
380
- text: "Settings"
381
- };
382
- const qualityText = {
383
- key: `${prefix$7}quality`,
384
- text: "Quality"
385
- };
386
- const audioText = {
387
- key: `${prefix$7}audio`,
388
- text: "Audio"
389
- };
390
- const defaultText = {
391
- key: `${prefix$7}default`,
392
- text: "Default"
393
- };
394
- const speedText = {
395
- key: `${prefix$7}speed`,
396
- text: "Speed"
397
- };
398
- const captionsText = {
399
- key: `${prefix$7}captions`,
400
- text: "Captions"
401
- };
402
- const playbackRateText = {
403
- key: `${prefix$7}playbackRate`,
404
- text: "Playback rate"
405
- };
406
- const backText = {
407
- key: `${prefix$7}back`,
408
- text: "Back"
409
- };
410
- const offText = {
411
- key: `${prefix$7}off`,
412
- text: "Off"
413
- };
414
- const autoText = {
415
- key: `${prefix$7}auto`,
416
- text: "Auto"
417
- };
418
- const autoWithLabelText = {
419
- key: `${prefix$7}autoWithLabel`,
420
- text: "Auto ({label})"
421
- };
422
- const subtitlesText = {
423
- key: `${prefix$7}subtitles`,
424
- text: "Subtitles"
425
- };
426
-
427
346
  //#endregion
428
347
  //#region ../core/dist/dev/dom/store/features/stream-type.js
429
348
  const streamTypeFeature = definePlayerFeature({
@@ -2026,6 +1945,10 @@ function shiftCrossAxis(value, boundaryStart, boundaryEnd, size) {
2026
1945
  const max = boundaryEnd - size;
2027
1946
  return max < boundaryStart ? boundaryStart : clamp(value, boundaryStart, max);
2028
1947
  }
1948
+ function getHorizontalAlign({ align, direction = "ltr" }) {
1949
+ if (direction !== "rtl") return align;
1950
+ return align === "start" ? "end" : align === "end" ? "start" : align;
1951
+ }
2029
1952
  function getAnchorCrossAxisShift(start, end, size, boundaryStart, boundaryEnd, align, alignOffset, boundaryOffset) {
2030
1953
  const base = align === "start" ? start + alignOffset : align === "end" ? end + alignOffset : start + size / 2 + alignOffset;
2031
1954
  const desiredTranslate = align === "start" ? "0px" : align === "end" ? "-100%" : "-50%";
@@ -2083,15 +2006,16 @@ function getAnchorPositionCSS(anchorName, opts, cssVars = PopoverCSSVars, trigge
2083
2006
  };
2084
2007
  const insetProp = OPPOSITE_SIDE[side];
2085
2008
  if (side === "top" || side === "bottom") {
2009
+ const horizontalAlign = getHorizontalAlign(opts);
2086
2010
  style[insetProp] = `calc(anchor(${side}) + ${SIDE_OFFSET_VAR})`;
2087
2011
  if (triggerRect && boundaryRect) {
2088
- const { base, translate } = getAnchorCrossAxisShift(triggerRect.left, triggerRect.right, triggerRect.width, boundaryRect.left, boundaryRect.right, align, offsets.alignOffset, boundaryOffset);
2012
+ const { base, translate } = getAnchorCrossAxisShift(triggerRect.left, triggerRect.right, triggerRect.width, boundaryRect.left, boundaryRect.right, horizontalAlign, offsets.alignOffset, boundaryOffset);
2089
2013
  style.left = base;
2090
2014
  style.translate = `${translate} 0`;
2091
2015
  return style;
2092
2016
  }
2093
- if (align === "start") style.left = `calc(anchor(left) + ${ALIGN_OFFSET_VAR})`;
2094
- else if (align === "end") style.right = `calc(anchor(right) + ${ALIGN_OFFSET_VAR})`;
2017
+ if (horizontalAlign === "start") style.left = `calc(anchor(left) + ${ALIGN_OFFSET_VAR})`;
2018
+ else if (horizontalAlign === "end") style.right = `calc(anchor(right) + ${ALIGN_OFFSET_VAR})`;
2095
2019
  else {
2096
2020
  style.justifySelf = "anchor-center";
2097
2021
  style.marginInlineStart = ALIGN_OFFSET_VAR;
@@ -2164,10 +2088,12 @@ function getManualPositionStyle(triggerRect, popupRect, opts, offsets = {
2164
2088
  else if (side === "bottom") top = triggerRect.bottom + sideOffset;
2165
2089
  else if (side === "left") right = `calc(100% - ${triggerRect.left}px + ${sideOffset}px)`;
2166
2090
  else left = triggerRect.right + sideOffset;
2167
- if (side === "top" || side === "bottom") if (align === "start") left = triggerRect.left + alignOffset;
2168
- else if (align === "end") left = triggerRect.right - popupRect.width + alignOffset;
2169
- else left = triggerRect.left + (triggerRect.width - popupRect.width) / 2 + alignOffset;
2170
- else if (align === "start") top = triggerRect.top + alignOffset;
2091
+ if (side === "top" || side === "bottom") {
2092
+ const horizontalAlign = getHorizontalAlign(opts);
2093
+ if (horizontalAlign === "start") left = triggerRect.left + alignOffset;
2094
+ else if (horizontalAlign === "end") left = triggerRect.right - popupRect.width + alignOffset;
2095
+ else left = triggerRect.left + (triggerRect.width - popupRect.width) / 2 + alignOffset;
2096
+ } else if (align === "start") top = triggerRect.top + alignOffset;
2171
2097
  else if (align === "end") top = triggerRect.bottom - popupRect.height + alignOffset;
2172
2098
  else top = triggerRect.top + (triggerRect.height - popupRect.height) / 2 + alignOffset;
2173
2099
  if (boundaryRect) {
@@ -2307,7 +2233,8 @@ var PopupPositioner = class {
2307
2233
  #position() {
2308
2234
  const options = this.#options;
2309
2235
  if (!options?.position || !options.trigger || !options.popup) return;
2310
- const triggerRect = options.trigger.getBoundingClientRect();
2236
+ const trigger = options.trigger;
2237
+ const triggerRect = trigger.getBoundingClientRect();
2311
2238
  const boundaryRect = getPositioningBoundaryRect(this.#boundaryElement);
2312
2239
  const offsets = resolveOffsets(options.popup, options.cssVars);
2313
2240
  const preferredPosition = options.position;
@@ -2316,7 +2243,8 @@ var PopupPositioner = class {
2316
2243
  const side = getPositionedSide(triggerRect, popupRect, boundaryRect, preferredPosition, offsets);
2317
2244
  const { positionAnchor: _, ...style } = getAnchorPositionStyle(options.anchorName, {
2318
2245
  ...preferredPosition,
2319
- side
2246
+ side,
2247
+ direction: isRTL(trigger) ? "rtl" : "ltr"
2320
2248
  }, triggerRect, anchorSupported ? void 0 : popupRect, boundaryRect, offsets, options.cssVars);
2321
2249
  return {
2322
2250
  popupRect,
@@ -2396,10 +2324,9 @@ var PopupPositioner = class {
2396
2324
  //#endregion
2397
2325
  //#region ../core/dist/dev/dom/utils/pointer.js
2398
2326
  /** Convert a pointer event position to a 0–100 percent along an element's rect. */
2399
- function getPercentFromPointerEvent(event, rect, orientation, isRTL) {
2327
+ function getPercentFromPointerEvent(event, rect, orientation) {
2400
2328
  let ratio;
2401
2329
  if (orientation === "vertical") ratio = 1 - (event.clientY - rect.top) / rect.height;
2402
- else if (isRTL) ratio = (rect.right - event.clientX) / rect.width;
2403
2330
  else ratio = (event.clientX - rect.left) / rect.width;
2404
2331
  if (!Number.isFinite(ratio)) return 0;
2405
2332
  return clamp(ratio * 100, 0, 100);
@@ -2417,7 +2344,7 @@ function createSlider(options) {
2417
2344
  });
2418
2345
  const abort = new AbortController();
2419
2346
  const changeThrottleMs = options.changeThrottle ?? 0;
2420
- let isDragging = false, cachedRTL = false, cachedRect = null, capturedPointerId = null, lastDragPercent = 0, committedOnRelease = false, pointingOnRelease = false;
2347
+ let isDragging = false, cachedRect = null, capturedPointerId = null, lastDragPercent = 0, committedOnRelease = false, pointingOnRelease = false;
2421
2348
  const throttledChange = changeThrottleMs > 0 ? throttle((percent) => options.onValueChange?.(percent), changeThrottleMs, { leading: true }) : null;
2422
2349
  /** Fire `onValueChange` — throttled during drag when `changeThrottle > 0`. */
2423
2350
  function fireChange(percent, duringDrag) {
@@ -2458,13 +2385,12 @@ function createSlider(options) {
2458
2385
  event.preventDefault();
2459
2386
  const el = options.getElement();
2460
2387
  cachedRect = el.getBoundingClientRect();
2461
- cachedRTL = options.isRTL();
2462
2388
  committedOnRelease = false;
2463
2389
  pointingOnRelease = false;
2464
2390
  releaseCapture();
2465
2391
  capturedPointerId = event.pointerId;
2466
2392
  el.setPointerCapture(event.pointerId);
2467
- const percent = getPercentFromPointerEvent(event, cachedRect, options.getOrientation(), cachedRTL);
2393
+ const percent = getPercentFromPointerEvent(event, cachedRect, options.getOrientation());
2468
2394
  isDragging = true;
2469
2395
  lastDragPercent = percent;
2470
2396
  input.patch({
@@ -2487,7 +2413,7 @@ function createSlider(options) {
2487
2413
  endDrag();
2488
2414
  return;
2489
2415
  }
2490
- const percent = getPercentFromPointerEvent(event, cachedRect, options.getOrientation(), cachedRTL);
2416
+ const percent = getPercentFromPointerEvent(event, cachedRect, options.getOrientation());
2491
2417
  lastDragPercent = percent;
2492
2418
  input.patch({
2493
2419
  dragPercent: percent,
@@ -2496,7 +2422,7 @@ function createSlider(options) {
2496
2422
  fireChange(percent, true);
2497
2423
  return;
2498
2424
  }
2499
- const percent = getPercentFromPointerEvent(event, options.getElement().getBoundingClientRect(), options.getOrientation(), options.isRTL());
2425
+ const percent = getPercentFromPointerEvent(event, options.getElement().getBoundingClientRect(), options.getOrientation());
2500
2426
  input.patch({
2501
2427
  pointing: true,
2502
2428
  pointerPercent: percent
@@ -2506,7 +2432,7 @@ function createSlider(options) {
2506
2432
  if (options.isDisabled()) return;
2507
2433
  event.stopPropagation();
2508
2434
  if (isNull(capturedPointerId)) return;
2509
- const percent = getPercentFromPointerEvent(event, cachedRect, options.getOrientation(), cachedRTL);
2435
+ const percent = getPercentFromPointerEvent(event, cachedRect, options.getOrientation());
2510
2436
  const releaseRect = options.getElement().getBoundingClientRect();
2511
2437
  pointingOnRelease = event.pointerType !== "touch" && event.clientX >= releaseRect.left && event.clientX <= releaseRect.right && event.clientY >= releaseRect.top && event.clientY <= releaseRect.bottom;
2512
2438
  throttledChange?.cancel();
@@ -2531,15 +2457,14 @@ function createSlider(options) {
2531
2457
  const stepPercent = options.getStepPercent();
2532
2458
  const largeStepPercent = options.getLargeStepPercent();
2533
2459
  const rounded = roundToStep(options.getPercent(), stepPercent, 0);
2534
- const horizontalSign = options.isRTL() ? -1 : 1;
2535
2460
  const step = event.shiftKey ? largeStepPercent : stepPercent;
2536
2461
  let newPercent = null;
2537
2462
  switch (event.key) {
2538
2463
  case "ArrowRight":
2539
- newPercent = rounded + step * horizontalSign;
2464
+ newPercent = rounded + step;
2540
2465
  break;
2541
2466
  case "ArrowLeft":
2542
- newPercent = rounded - step * horizontalSign;
2467
+ newPercent = rounded - step;
2543
2468
  break;
2544
2469
  case "ArrowUp":
2545
2470
  newPercent = rounded + step;
@@ -2793,6 +2718,7 @@ var ThumbnailCore = class {
2793
2718
  }
2794
2719
  getAttrs(_state) {
2795
2720
  return {
2721
+ dir: "ltr",
2796
2722
  role: "img",
2797
2723
  "aria-hidden": "true"
2798
2724
  };
@@ -5614,13 +5540,6 @@ var MenuRadioGroupElement = class extends RadioGroupElement {
5614
5540
  }
5615
5541
  };
5616
5542
 
5617
- //#endregion
5618
- //#region src/i18n/cache-key.ts
5619
- /** Serialize text content and parameters so dynamic labels invalidate their caches. */
5620
- function cacheKey(text, params) {
5621
- return JSON.stringify([text, params]);
5622
- }
5623
-
5624
5543
  //#endregion
5625
5544
  //#region src/ui/menu/menu-item-indicator-element.ts
5626
5545
  var MenuItemIndicatorElement = class extends MediaElement {
@@ -5651,79 +5570,6 @@ var MenuItemIndicatorElement = class extends MediaElement {
5651
5570
  }
5652
5571
  };
5653
5572
 
5654
- //#endregion
5655
- //#region src/ui/radio-options/radio-options-controller.ts
5656
- /** Renders normalized options into menu radio items and manages their interaction lifecycle. */
5657
- var RadioOptionsController = class {
5658
- #host;
5659
- #config;
5660
- #contentKey = "";
5661
- #translator = null;
5662
- #disconnect = null;
5663
- constructor(host, config) {
5664
- this.#host = host;
5665
- this.#config = config;
5666
- host.addController(this);
5667
- }
5668
- hostConnected() {
5669
- this.#disconnect = new AbortController();
5670
- this.#host.addEventListener("value-change", this.#handleValueChange, { signal: this.#disconnect.signal });
5671
- }
5672
- hostDisconnected() {
5673
- this.#disconnect?.abort();
5674
- this.#disconnect = null;
5675
- }
5676
- hostDestroyed() {
5677
- this.hostDisconnected();
5678
- }
5679
- sync(state, translator, locale) {
5680
- this.#host.value = state.value;
5681
- applyElementProps(this.#host, {
5682
- "aria-disabled": state.disabled ? "true" : void 0,
5683
- hidden: state.hidden ? "" : void 0
5684
- });
5685
- const template = getTemplateElement(this.#host);
5686
- const templateRoot = template ? getTemplateRoot(template) : null;
5687
- const itemRoot = templateRoot?.localName === MenuRadioItemElement.tagName ? templateRoot : null;
5688
- const contentKey = `${state.options.map((option) => `${option.value}:${cacheKey(option.label, option.labelParams)}:${this.#config.getOptionCacheKey?.(option) ?? ""}`).join("|")}::${locale}::${template?.innerHTML ?? ""}`;
5689
- if (contentKey !== this.#contentKey || translator !== this.#translator) {
5690
- this.#contentKey = contentKey;
5691
- this.#translator = translator;
5692
- for (const child of [...this.#host.children]) {
5693
- if (child === template) continue;
5694
- child.remove();
5695
- }
5696
- const items = state.options.map((option) => {
5697
- const item = itemRoot ? cloneTemplateRoot(itemRoot, this.#host.ownerDocument) : this.#host.ownerDocument.createElement(MenuRadioItemElement.tagName);
5698
- item.value = option.value;
5699
- this.#config.setItemAttributes?.(item, option);
5700
- const label = translateText(option.label, translator, option.labelParams);
5701
- if (this.#config.renderItem) this.#config.renderItem(item, label, option);
5702
- else this.#setItemLabel(item, label);
5703
- return item;
5704
- });
5705
- this.#host.append(...items);
5706
- }
5707
- const optionsByValue = new Map(state.options.map((option) => [option.value, option]));
5708
- for (const item of this.#host.querySelectorAll(MenuRadioItemElement.tagName)) {
5709
- const checked = item.value === state.value;
5710
- const option = optionsByValue.get(item.value);
5711
- item.disabled = state.disabled || option?.disabled === true;
5712
- for (const indicator of item.querySelectorAll(MenuItemIndicatorElement.tagName)) indicator.checked = checked;
5713
- }
5714
- }
5715
- #handleValueChange = (event) => {
5716
- if (event.target !== this.#host) return;
5717
- const { value } = event.detail;
5718
- this.#config.onValueChange(value);
5719
- };
5720
- #setItemLabel(item, label) {
5721
- const labelPart = item.querySelector("[data-part~=\"label\"]");
5722
- if (labelPart) labelPart.textContent = label;
5723
- else item.textContent = label;
5724
- }
5725
- };
5726
-
5727
5573
  //#endregion
5728
5574
  //#region src/ui/buffering-indicator/buffering-indicator-element.ts
5729
5575
  var BufferingIndicatorElement = class extends MediaElement {
@@ -7853,7 +7699,6 @@ var TimeSliderElement = class extends MediaElement {
7853
7699
  getElement: () => this,
7854
7700
  getThumbElement: () => this.querySelector("media-slider-thumb"),
7855
7701
  getOrientation: () => this.orientation,
7856
- isRTL: () => isRTL(this),
7857
7702
  isDisabled: () => this.disabled || !this.#timeState.value,
7858
7703
  getPercent: () => {
7859
7704
  const media = this.#timeState.value;
@@ -8370,7 +8215,6 @@ var VolumeSliderElement = class extends MediaElement {
8370
8215
  getElement: () => this,
8371
8216
  getThumbElement: () => this.querySelector("media-slider-thumb"),
8372
8217
  getOrientation: () => this.orientation,
8373
- isRTL: () => isRTL(this),
8374
8218
  isDisabled,
8375
8219
  getPercent,
8376
8220
  getStepPercent,
@@ -8522,5 +8366,5 @@ function defineSliders() {
8522
8366
  }
8523
8367
 
8524
8368
  //#endregion
8525
- export { createTemplate as $, selectAudioTrack as A, selectTextTrack as B, applyStateDataAttrs as C, toPercent as D, findLastIndexAtOrBefore as E, selectPiP as F, captionsText as G, audioText as H, selectPlayback as I, qualityText as J, offText as K, selectPlaybackRate as L, selectFullscreen as M, selectLive as N, createButton as O, selectMetadata as P, cloneTemplateRoot as Q, selectQuality as R, resolveLabel as S, applyElementProps as T, autoText as U, selectTime as V, autoWithLabelText as W, speedText as X, settingsText as Y, subtitlesText as Z, MenuRadioGroupElement as _, defineSliders as a, enterText as b, defineTooltip as c, PopoverElement as d, getTemplateElement as et, PlayButtonElement as f, RadioOptionsController as g, BufferingIndicatorElement as h, defineMenu as i, defaults as it, selectBuffer as j, MEDIA_INPUT_ACTION_OVERRIDES as k, defineVolumeSlider as l, HotkeyElement as m, defineErrorDialog as n, renderTemplate as nt, defineTime as o, MuteButtonElement as p, playbackRateText as q, defineInputIndicators as r, walkAncestors as rt, defineTimeSlider as s, defineControls as t, getTemplateRoot as tt, sliderContext as u, MediaButtonElement as v, logMissingFeature as w, exitText as x, rateText as y, selectRemotePlayback as z };
8526
- //# sourceMappingURL=compounds-D1FPw7jg.js.map
8369
+ export { MEDIA_INPUT_ACTION_OVERRIDES as A, selectRemotePlayback as B, resolveLabel as C, findLastIndexAtOrBefore as D, applyElementProps as E, selectMetadata as F, selectTime as H, selectPiP as I, selectPlayback as L, selectBuffer as M, selectFullscreen as N, toPercent as O, selectLive as P, selectPlaybackRate as R, exitText as S, logMissingFeature as T, walkAncestors as U, selectTextTrack as V, defaults as W, MenuRadioGroupElement as _, defineSliders as a, rateText as b, defineTooltip as c, PopoverElement as d, PlayButtonElement as f, MenuItemIndicatorElement as g, BufferingIndicatorElement as h, defineMenu as i, selectAudioTrack as j, createButton as k, defineVolumeSlider as l, HotkeyElement as m, defineErrorDialog as n, defineTime as o, MuteButtonElement as p, defineInputIndicators as r, defineTimeSlider as s, defineControls as t, sliderContext as u, MenuRadioItemElement as v, applyStateDataAttrs as w, enterText as x, MediaButtonElement as y, selectQuality as z };
8370
+ //# sourceMappingURL=compounds-BA8gXlmJ.js.map