@videojs/html 10.0.0-beta.6 → 10.0.0-beta.8

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 (330) hide show
  1. package/cdn/audio-minimal.dev.d.ts +1 -0
  2. package/cdn/audio-minimal.dev.js +9 -5336
  3. package/cdn/audio-minimal.dev.js.map +1 -1
  4. package/cdn/audio-minimal.js +1 -24
  5. package/cdn/audio-minimal.js.map +1 -1
  6. package/cdn/audio.dev.d.ts +1 -0
  7. package/cdn/audio.dev.js +9 -5336
  8. package/cdn/audio.dev.js.map +1 -1
  9. package/cdn/audio.js +1 -24
  10. package/cdn/audio.js.map +1 -1
  11. package/cdn/background.dev.d.ts +1 -0
  12. package/cdn/background.dev.js +112 -2025
  13. package/cdn/background.dev.js.map +1 -1
  14. package/cdn/background.js +1 -18
  15. package/cdn/background.js.map +1 -1
  16. package/cdn/context-C_e06fGU.js +13 -0
  17. package/cdn/context-C_e06fGU.js.map +1 -0
  18. package/cdn/context-DTY0nOpS.js +98 -0
  19. package/cdn/context-DTY0nOpS.js.map +1 -0
  20. package/cdn/create-player-Dv7K1Ezk.js +3214 -0
  21. package/cdn/create-player-Dv7K1Ezk.js.map +1 -0
  22. package/cdn/create-player-QjiNZlh7.js +7 -0
  23. package/cdn/create-player-QjiNZlh7.js.map +1 -0
  24. package/cdn/default-GgKND7a8.js +2 -0
  25. package/cdn/default-GgKND7a8.js.map +1 -0
  26. package/cdn/default-cLso8BHO.js +28 -0
  27. package/cdn/default-cLso8BHO.js.map +1 -0
  28. package/cdn/listen-BXAYCbZA.js +9 -0
  29. package/cdn/listen-BXAYCbZA.js.map +1 -0
  30. package/cdn/listen-DX5vU4s4.js +2 -0
  31. package/cdn/listen-DX5vU4s4.js.map +1 -0
  32. package/cdn/media/dash-video.dev.d.ts +1 -0
  33. package/cdn/media/dash-video.dev.js +39165 -0
  34. package/cdn/media/dash-video.dev.js.map +1 -0
  35. package/cdn/media/dash-video.js +21 -0
  36. package/cdn/media/dash-video.js.map +1 -0
  37. package/cdn/media/hls-video.dev.d.ts +1 -0
  38. package/cdn/media/hls-video.dev.js +6 -378
  39. package/cdn/media/hls-video.dev.js.map +1 -1
  40. package/cdn/media/hls-video.js +21 -65
  41. package/cdn/media/hls-video.js.map +1 -1
  42. package/cdn/media/simple-hls-video.dev.d.ts +1 -0
  43. package/cdn/media/simple-hls-video.dev.js +6 -377
  44. package/cdn/media/simple-hls-video.dev.js.map +1 -1
  45. package/cdn/media/simple-hls-video.js +1 -45
  46. package/cdn/media/simple-hls-video.js.map +1 -1
  47. package/cdn/media-attach-mixin-ChyNp2eK.js +44 -0
  48. package/cdn/media-attach-mixin-ChyNp2eK.js.map +1 -0
  49. package/cdn/media-attach-mixin-tFNcHnvo.js +2 -0
  50. package/cdn/media-attach-mixin-tFNcHnvo.js.map +1 -0
  51. package/cdn/minimal-BJfleQcQ.js +2 -0
  52. package/cdn/minimal-BJfleQcQ.js.map +1 -0
  53. package/cdn/minimal-DBMdC_0I.js +28 -0
  54. package/cdn/minimal-DBMdC_0I.js.map +1 -0
  55. package/cdn/player-CztIlNio.js +2 -0
  56. package/cdn/player-CztIlNio.js.map +1 -0
  57. package/cdn/player-Dvj38jlr.js +15 -0
  58. package/cdn/player-Dvj38jlr.js.map +1 -0
  59. package/cdn/poster-C4WHg3BH.js +2 -0
  60. package/cdn/poster-C4WHg3BH.js.map +1 -0
  61. package/cdn/poster-O0SI05LC.js +195 -0
  62. package/cdn/poster-O0SI05LC.js.map +1 -0
  63. package/cdn/predicate-BG-dj_kF.js +26 -0
  64. package/cdn/predicate-BG-dj_kF.js.map +1 -0
  65. package/cdn/predicate-Y9jDHLpX.js +2 -0
  66. package/cdn/predicate-Y9jDHLpX.js.map +1 -0
  67. package/cdn/proxy-2oO2ph3m.js +47 -0
  68. package/cdn/proxy-2oO2ph3m.js.map +1 -0
  69. package/cdn/proxy-6KS6wy69.js +2 -0
  70. package/cdn/proxy-6KS6wy69.js.map +1 -0
  71. package/cdn/proxy-XzDf9gyk.js +66 -0
  72. package/cdn/proxy-XzDf9gyk.js.map +1 -0
  73. package/cdn/proxy-dR7IDk37.js +349 -0
  74. package/cdn/proxy-dR7IDk37.js.map +1 -0
  75. package/cdn/safe-define-B8lHgj_K.js +9 -0
  76. package/cdn/safe-define-B8lHgj_K.js.map +1 -0
  77. package/cdn/safe-define-GrHW3P9e.js +2 -0
  78. package/cdn/safe-define-GrHW3P9e.js.map +1 -0
  79. package/cdn/video-minimal.dev.d.ts +1 -0
  80. package/cdn/video-minimal.dev.js +16 -5650
  81. package/cdn/video-minimal.dev.js.map +1 -1
  82. package/cdn/video-minimal.js +1 -24
  83. package/cdn/video-minimal.js.map +1 -1
  84. package/cdn/video.dev.d.ts +1 -0
  85. package/cdn/video.dev.js +24 -5709
  86. package/cdn/video.dev.js.map +1 -1
  87. package/cdn/video.js +1 -24
  88. package/cdn/video.js.map +1 -1
  89. package/cdn/volume-slider-BqzTytgB.js +8 -0
  90. package/cdn/volume-slider-BqzTytgB.js.map +1 -0
  91. package/cdn/volume-slider-CfhOO9RM.js +2453 -0
  92. package/cdn/volume-slider-CfhOO9RM.js.map +1 -0
  93. package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
  94. package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
  95. package/dist/default/_virtual/inline-css_src/define/audio/skin.js +1 -1
  96. package/dist/default/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
  97. package/dist/default/_virtual/inline-css_src/define/background/skin.js +6 -0
  98. package/dist/default/_virtual/inline-css_src/define/background/skin.js.map +1 -0
  99. package/dist/default/_virtual/inline-css_src/define/base.js +1 -1
  100. package/dist/default/_virtual/inline-css_src/define/base.js.map +1 -1
  101. package/dist/default/_virtual/inline-css_src/define/shared.js +6 -0
  102. package/dist/default/_virtual/inline-css_src/define/shared.js.map +1 -0
  103. package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
  104. package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
  105. package/dist/default/_virtual/inline-css_src/define/video/skin.js +1 -1
  106. package/dist/default/_virtual/inline-css_src/define/video/skin.js.map +1 -1
  107. package/dist/default/define/audio/minimal-skin.css +22 -20
  108. package/dist/default/define/audio/minimal-skin.js +1 -1
  109. package/dist/default/define/audio/minimal-skin.js.map +1 -1
  110. package/dist/default/define/audio/minimal-skin.tailwind.js +1 -1
  111. package/dist/default/define/audio/minimal-skin.tailwind.js.map +1 -1
  112. package/dist/default/define/audio/skin.css +19 -22
  113. package/dist/default/define/audio/skin.js +1 -1
  114. package/dist/default/define/audio/skin.js.map +1 -1
  115. package/dist/default/define/audio/skin.tailwind.js +3 -4
  116. package/dist/default/define/audio/skin.tailwind.js.map +1 -1
  117. package/dist/default/define/background/skin.css +1 -1
  118. package/dist/default/define/background/skin.js +11 -1
  119. package/dist/default/define/background/skin.js.map +1 -1
  120. package/dist/default/define/base.css +7 -7
  121. package/dist/default/define/media/dash-video.js +14 -0
  122. package/dist/default/define/media/dash-video.js.map +1 -0
  123. package/dist/default/define/shared.css +6 -0
  124. package/dist/default/define/skin-mixin.js +8 -3
  125. package/dist/default/define/skin-mixin.js.map +1 -1
  126. package/dist/default/define/video/minimal-skin.css +101 -71
  127. package/dist/default/define/video/minimal-skin.js +2 -1
  128. package/dist/default/define/video/minimal-skin.js.map +1 -1
  129. package/dist/default/define/video/minimal-skin.tailwind.js +4 -2
  130. package/dist/default/define/video/minimal-skin.tailwind.js.map +1 -1
  131. package/dist/default/define/video/skin.css +98 -72
  132. package/dist/default/define/video/skin.js +2 -1
  133. package/dist/default/define/video/skin.js.map +1 -1
  134. package/dist/default/define/video/skin.tailwind.js +4 -2
  135. package/dist/default/define/video/skin.tailwind.js.map +1 -1
  136. package/dist/default/icons/dist/render/default/index.js +2 -1
  137. package/dist/default/icons/dist/render/default/index.js.map +1 -1
  138. package/dist/default/icons/dist/render/minimal/index.js +2 -1
  139. package/dist/default/icons/dist/render/minimal/index.js.map +1 -1
  140. package/dist/default/index.js +3 -2
  141. package/dist/default/media/background-video/index.js +5 -1
  142. package/dist/default/media/background-video/index.js.map +1 -1
  143. package/dist/default/media/container-element.js +5 -2
  144. package/dist/default/media/container-element.js.map +1 -1
  145. package/dist/default/media/dash-video/index.js +26 -0
  146. package/dist/default/media/dash-video/index.js.map +1 -0
  147. package/dist/default/media/hls-video/index.js +2 -1
  148. package/dist/default/media/hls-video/index.js.map +1 -1
  149. package/dist/default/media/simple-hls-video/index.js +2 -1
  150. package/dist/default/media/simple-hls-video/index.js.map +1 -1
  151. package/dist/default/player/context.js +6 -2
  152. package/dist/default/player/context.js.map +1 -1
  153. package/dist/default/player/create-player.js +11 -3
  154. package/dist/default/player/create-player.js.map +1 -1
  155. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +6 -5
  156. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  157. package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
  158. package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  159. package/dist/default/skins/dist/default/default/tailwind/components/error.js +1 -1
  160. package/dist/default/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  161. package/dist/default/skins/dist/default/default/tailwind/components/poster.js +16 -0
  162. package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -0
  163. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +6 -5
  164. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  165. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +1 -1
  166. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  167. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  168. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  169. package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
  170. package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
  171. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +16 -0
  172. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -0
  173. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +1 -1
  174. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  175. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +6 -4
  176. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  177. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +5 -0
  178. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  179. package/dist/default/store/container-mixin.js +16 -72
  180. package/dist/default/store/container-mixin.js.map +1 -1
  181. package/dist/default/store/media-attach-mixin.js +45 -0
  182. package/dist/default/store/media-attach-mixin.js.map +1 -0
  183. package/dist/default/store/provider-mixin.js +99 -9
  184. package/dist/default/store/provider-mixin.js.map +1 -1
  185. package/dist/default/ui/popover/popover-element.js +54 -3
  186. package/dist/default/ui/popover/popover-element.js.map +1 -1
  187. package/dist/default/ui/time-slider/time-slider-element.js +1 -1
  188. package/dist/default/ui/time-slider/time-slider-element.js.map +1 -1
  189. package/dist/default/ui/tooltip/tooltip-element.js +53 -3
  190. package/dist/default/ui/tooltip/tooltip-element.js.map +1 -1
  191. package/dist/default/ui/volume-slider/volume-slider-element.js +3 -3
  192. package/dist/default/ui/volume-slider/volume-slider-element.js.map +1 -1
  193. package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
  194. package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
  195. package/dist/dev/_virtual/inline-css_src/define/audio/skin.js +1 -1
  196. package/dist/dev/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
  197. package/dist/dev/_virtual/inline-css_src/define/background/skin.js +6 -0
  198. package/dist/dev/_virtual/inline-css_src/define/background/skin.js.map +1 -0
  199. package/dist/dev/_virtual/inline-css_src/define/base.js +1 -1
  200. package/dist/dev/_virtual/inline-css_src/define/base.js.map +1 -1
  201. package/dist/dev/_virtual/inline-css_src/define/shared.js +6 -0
  202. package/dist/dev/_virtual/inline-css_src/define/shared.js.map +1 -0
  203. package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
  204. package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
  205. package/dist/dev/_virtual/inline-css_src/define/video/skin.js +1 -1
  206. package/dist/dev/_virtual/inline-css_src/define/video/skin.js.map +1 -1
  207. package/dist/dev/define/audio/minimal-skin.css +22 -20
  208. package/dist/dev/define/audio/minimal-skin.d.ts.map +1 -1
  209. package/dist/dev/define/audio/minimal-skin.js +2 -0
  210. package/dist/dev/define/audio/minimal-skin.js.map +1 -1
  211. package/dist/dev/define/audio/minimal-skin.tailwind.d.ts.map +1 -1
  212. package/dist/dev/define/audio/minimal-skin.tailwind.js +3 -1
  213. package/dist/dev/define/audio/minimal-skin.tailwind.js.map +1 -1
  214. package/dist/dev/define/audio/skin.css +19 -22
  215. package/dist/dev/define/audio/skin.d.ts.map +1 -1
  216. package/dist/dev/define/audio/skin.js +2 -0
  217. package/dist/dev/define/audio/skin.js.map +1 -1
  218. package/dist/dev/define/audio/skin.tailwind.d.ts.map +1 -1
  219. package/dist/dev/define/audio/skin.tailwind.js +5 -4
  220. package/dist/dev/define/audio/skin.tailwind.js.map +1 -1
  221. package/dist/dev/define/background/skin.css +1 -1
  222. package/dist/dev/define/background/skin.d.ts.map +1 -1
  223. package/dist/dev/define/background/skin.js +13 -1
  224. package/dist/dev/define/background/skin.js.map +1 -1
  225. package/dist/dev/define/base.css +7 -7
  226. package/dist/dev/define/media/dash-video.d.ts +14 -0
  227. package/dist/dev/define/media/dash-video.d.ts.map +1 -0
  228. package/dist/dev/define/media/dash-video.js +14 -0
  229. package/dist/dev/define/media/dash-video.js.map +1 -0
  230. package/dist/dev/define/shared.css +6 -0
  231. package/dist/dev/define/skin-mixin.d.ts.map +1 -1
  232. package/dist/dev/define/skin-mixin.js +8 -3
  233. package/dist/dev/define/skin-mixin.js.map +1 -1
  234. package/dist/dev/define/video/minimal-skin.css +101 -71
  235. package/dist/dev/define/video/minimal-skin.d.ts.map +1 -1
  236. package/dist/dev/define/video/minimal-skin.js +10 -2
  237. package/dist/dev/define/video/minimal-skin.js.map +1 -1
  238. package/dist/dev/define/video/minimal-skin.tailwind.d.ts.map +1 -1
  239. package/dist/dev/define/video/minimal-skin.tailwind.js +13 -4
  240. package/dist/dev/define/video/minimal-skin.tailwind.js.map +1 -1
  241. package/dist/dev/define/video/skin.css +98 -72
  242. package/dist/dev/define/video/skin.d.ts.map +1 -1
  243. package/dist/dev/define/video/skin.js +9 -1
  244. package/dist/dev/define/video/skin.js.map +1 -1
  245. package/dist/dev/define/video/skin.tailwind.d.ts.map +1 -1
  246. package/dist/dev/define/video/skin.tailwind.js +13 -4
  247. package/dist/dev/define/video/skin.tailwind.js.map +1 -1
  248. package/dist/dev/icons/dist/render/default/index.js +2 -1
  249. package/dist/dev/icons/dist/render/default/index.js.map +1 -1
  250. package/dist/dev/icons/dist/render/minimal/index.js +2 -1
  251. package/dist/dev/icons/dist/render/minimal/index.js.map +1 -1
  252. package/dist/dev/index.d.ts +5 -4
  253. package/dist/dev/index.js +3 -2
  254. package/dist/dev/media/background-video/index.d.ts +8 -1
  255. package/dist/dev/media/background-video/index.d.ts.map +1 -1
  256. package/dist/dev/media/background-video/index.js +5 -1
  257. package/dist/dev/media/background-video/index.js.map +1 -1
  258. package/dist/dev/media/container-element.js +5 -2
  259. package/dist/dev/media/container-element.js.map +1 -1
  260. package/dist/dev/media/dash-video/index.d.ts +13 -0
  261. package/dist/dev/media/dash-video/index.d.ts.map +1 -0
  262. package/dist/dev/media/dash-video/index.js +26 -0
  263. package/dist/dev/media/dash-video/index.js.map +1 -0
  264. package/dist/dev/media/hls-video/index.d.ts +2 -1
  265. package/dist/dev/media/hls-video/index.d.ts.map +1 -1
  266. package/dist/dev/media/hls-video/index.js +2 -1
  267. package/dist/dev/media/hls-video/index.js.map +1 -1
  268. package/dist/dev/media/simple-hls-video/index.d.ts +2 -1
  269. package/dist/dev/media/simple-hls-video/index.d.ts.map +1 -1
  270. package/dist/dev/media/simple-hls-video/index.js +2 -1
  271. package/dist/dev/media/simple-hls-video/index.js.map +1 -1
  272. package/dist/dev/player/context.d.ts +16 -2
  273. package/dist/dev/player/context.d.ts.map +1 -1
  274. package/dist/dev/player/context.js +6 -2
  275. package/dist/dev/player/context.js.map +1 -1
  276. package/dist/dev/player/create-player.d.ts +1 -1
  277. package/dist/dev/player/create-player.js +11 -3
  278. package/dist/dev/player/create-player.js.map +1 -1
  279. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +6 -5
  280. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  281. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +1 -1
  282. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  283. package/dist/dev/skins/dist/default/default/tailwind/components/error.js +1 -1
  284. package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  285. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +16 -0
  286. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -0
  287. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +6 -5
  288. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  289. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +1 -1
  290. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  291. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  292. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  293. package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
  294. package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
  295. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +16 -0
  296. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -0
  297. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js +1 -1
  298. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  299. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +6 -4
  300. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  301. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +5 -0
  302. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  303. package/dist/dev/store/container-mixin.d.ts +10 -5
  304. package/dist/dev/store/container-mixin.d.ts.map +1 -1
  305. package/dist/dev/store/container-mixin.js +16 -72
  306. package/dist/dev/store/container-mixin.js.map +1 -1
  307. package/dist/dev/store/media-attach-mixin.d.ts +19 -0
  308. package/dist/dev/store/media-attach-mixin.d.ts.map +1 -0
  309. package/dist/dev/store/media-attach-mixin.js +45 -0
  310. package/dist/dev/store/media-attach-mixin.js.map +1 -0
  311. package/dist/dev/store/provider-mixin.d.ts +19 -6
  312. package/dist/dev/store/provider-mixin.d.ts.map +1 -1
  313. package/dist/dev/store/provider-mixin.js +99 -9
  314. package/dist/dev/store/provider-mixin.js.map +1 -1
  315. package/dist/dev/ui/popover/popover-element.d.ts.map +1 -1
  316. package/dist/dev/ui/popover/popover-element.js +54 -3
  317. package/dist/dev/ui/popover/popover-element.js.map +1 -1
  318. package/dist/dev/ui/time-slider/time-slider-element.js +1 -1
  319. package/dist/dev/ui/time-slider/time-slider-element.js.map +1 -1
  320. package/dist/dev/ui/tooltip/tooltip-element.d.ts.map +1 -1
  321. package/dist/dev/ui/tooltip/tooltip-element.js +53 -3
  322. package/dist/dev/ui/tooltip/tooltip-element.js.map +1 -1
  323. package/dist/dev/ui/volume-slider/volume-slider-element.js +3 -3
  324. package/dist/dev/ui/volume-slider/volume-slider-element.js.map +1 -1
  325. package/package.json +21 -10
  326. package/cdn/audio-minimal.css +0 -1
  327. package/cdn/audio.css +0 -1
  328. package/cdn/background.css +0 -1
  329. package/cdn/video-minimal.css +0 -1
  330. package/cdn/video.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"minimal-skin.tailwind.d.ts","names":[],"sources":["../../../../src/define/audio/minimal-skin.tailwind.ts"],"mappings":";;;iBAoCS,eAAA,CAAA;AAAA,cAAe,oCAAA;;;;cAsFX,+BAAA,SAAwC,oCAAA;EAAA,gBACnC,OAAA;EAAA,OACT,eAAA,SAAe,eAAA;AAAA;AAAA,QAKhB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,+BAAA,CAAgC,OAAA,GAAU,+BAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"minimal-skin.tailwind.d.ts","names":[],"sources":["../../../../src/define/audio/minimal-skin.tailwind.ts"],"mappings":";;;iBAoCS,eAAA,CAAA;AAAA,cAAe,oCAAA;;;;cAwFX,+BAAA,SAAwC,oCAAA;EAAA,gBACnC,OAAA;EAAA,OACT,eAAA,SAAe,eAAA;AAAA;AAAA,QAKhB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,+BAAA,CAAgC,OAAA,GAAU,+BAAA;EAAA;AAAA"}
@@ -29,10 +29,12 @@ const SEEK_TIME = 10;
29
29
  function getTemplateHTML() {
30
30
  return `
31
31
  <media-container class="${root}">
32
+ <!-- @deprecated slot="media" is no longer required, use the default slot instead -->
32
33
  <slot name="media"></slot>
34
+ <slot></slot>
33
35
 
34
36
  <div class="${controls}">
35
- <media-tooltip-group class="contents">
37
+ <media-tooltip-group>
36
38
  <div class="${buttonGroup}">
37
39
  <span class="${tooltipState.play.wrapper}">
38
40
  <media-play-button commandfor="play-tooltip" class="${cn(button.base, button.icon, iconState.play.button)}">
@@ -1 +1 @@
1
- {"version":3,"file":"minimal-skin.tailwind.js","names":[],"sources":["../../../../src/define/audio/minimal-skin.tailwind.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render/minimal';\nimport { playbackRate } from '@videojs/skins/default/tailwind/audio.tailwind';\nimport {\n button,\n buttonGroup,\n controls,\n icon,\n iconContainer,\n iconFlipped,\n iconState,\n popup,\n root,\n seek,\n slider,\n time,\n tooltipState,\n} from '@videojs/skins/minimal/tailwind/audio.tailwind';\nimport { cn } from '@videojs/utils/style';\nimport { SkinMixin } from '../skin-mixin';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/mute-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"${root}\">\n <slot name=\"media\"></slot>\n\n <div class=\"${controls}\">\n <media-tooltip-group class=\"contents\">\n <div class=\"${buttonGroup}\">\n <span class=\"${tooltipState.play.wrapper}\">\n <media-play-button commandfor=\"play-tooltip\" class=\"${cn(button.base, button.icon, iconState.play.button)}\">\n ${renderIcon('restart', { class: cn(icon, iconState.play.restart) })}\n ${renderIcon('play', { class: cn(icon, iconState.play.play) })}\n ${renderIcon('pause', { class: cn(icon, iconState.play.pause) })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.play.replay}\">Replay</span>\n <span class=\"${tooltipState.play.play}\">Play</span>\n <span class=\"${tooltipState.play.pause}\">Pause</span>\n </media-tooltip>\n </span>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: cn(icon, iconFlipped) })}\n <span class=\"${cn(seek.label, seek.labelBackward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: icon })}\n <span class=\"${cn(seek.label, seek.labelForward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n </div>\n\n <div class=\"${time.controls}\">\n <media-time-group class=\"${time.group}\">\n <media-time type=\"current\" class=\"${time.current}\"></media-time>\n <media-time-separator class=\"${time.separator}\"></media-time-separator>\n <media-time type=\"duration\" class=\"${time.duration}\"></media-time>\n </media-time-group>\n\n <media-time-slider class=\"${slider.root}\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n <media-slider-buffer class=\"${cn(slider.fill.base, slider.fill.buffer)}\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.interactive)}\"></media-slider-thumb>\n </media-time-slider>\n </div>\n\n <div class=\"${buttonGroup}\">\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"${cn(button.base, button.icon, playbackRate.button)}\">\n </media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"audio-volume-popover\" class=\"${cn(button.base, button.icon, iconState.mute.button)}\">\n ${renderIcon('volume-off', { class: cn(icon, iconState.mute.volumeOff) })}\n ${renderIcon('volume-low', { class: cn(icon, iconState.mute.volumeLow) })}\n ${renderIcon('volume-high', { class: cn(icon, iconState.mute.volumeHigh) })}\n </media-mute-button>\n\n <media-popover id=\"audio-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"left\" class=\"${cn(popup.volume)}\">\n <media-volume-slider class=\"${slider.root}\" orientation=\"horizontal\" thumb-alignment=\"edge\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"${slider.thumb.base}\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n </div>\n </media-tooltip-group>\n </div>\n </media-container>\n `;\n}\n\nexport class MinimalAudioSkinTailwindElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'audio-minimal-skin-tailwind';\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(MinimalAudioSkinTailwindElement.tagName, MinimalAudioSkinTailwindElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [MinimalAudioSkinTailwindElement.tagName]: MinimalAudioSkinTailwindElement;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCA,MAAM,YAAY;AAElB,SAAS,kBAAkB;AACzB,QAAgB;8BACY,KAAK;;;oBAGf,SAAS;;wBAEL,YAAY;2BACT,aAAa,KAAK,QAAQ;oEACe,GAAG,OAAO,MAAM,OAAO,MAAM,UAAU,KAAK,OAAO,CAAC;kBACtG,WAAW,WAAW,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,QAAQ,EAAE,CAAC,CAAC;kBACnE,WAAW,QAAQ,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,KAAK,EAAE,CAAC,CAAC;kBAC7D,WAAW,SAAS,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,MAAM,EAAE,CAAC,CAAC;;mEAEd,GAAG,MAAM,QAAQ,CAAC;+BACtD,aAAa,KAAK,OAAO;+BACzB,aAAa,KAAK,KAAK;+BACvB,aAAa,KAAK,MAAM;;;;6EAIsB,CAAC,UAAU,WAAW,GAAG,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,CAAC;6BAChH,cAAc;kBACzB,WAAW,QAAQ,EAAE,OAAO,GAAG,MAAM,YAAY,EAAE,CAAC,CAAC;+BACxC,GAAG,KAAK,OAAO,KAAK,cAAc,CAAC,IAAI,UAAU;;;0EAGN,GAAG,MAAM,QAAQ,CAAC;8BAC9D,UAAU;;;4EAGoC,UAAU,WAAW,GAAG,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,CAAC;6BAC9G,cAAc;kBACzB,WAAW,QAAQ,EAAE,OAAO,MAAM,CAAC,CAAC;+BACvB,GAAG,KAAK,OAAO,KAAK,aAAa,CAAC,IAAI,UAAU;;;yEAGN,GAAG,MAAM,QAAQ,CAAC;6BAC9D,UAAU;;;;wBAIf,KAAK,SAAS;uCACC,KAAK,MAAM;kDACA,KAAK,QAAQ;6CAClB,KAAK,UAAU;mDACT,KAAK,SAAS;;;wCAGzB,OAAO,KAAK;2CACT,OAAO,MAAM;4CACZ,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,KAAK,CAAC;8CACrC,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,OAAO,CAAC;;2CAE5C,GAAG,OAAO,MAAM,MAAM,OAAO,MAAM,YAAY,CAAC;;;;wBAInE,YAAY;qFACiD,GAAG,OAAO,MAAM,OAAO,MAAM,aAAa,OAAO,CAAC;;0EAE7D,GAAG,MAAM,QAAQ,CAAC;;;;0EAIlB,GAAG,OAAO,MAAM,OAAO,MAAM,UAAU,KAAK,OAAO,CAAC;gBAC9G,WAAW,cAAc,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,UAAU,EAAE,CAAC,CAAC;gBACxE,WAAW,cAAc,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,UAAU,EAAE,CAAC,CAAC;gBACxE,WAAW,eAAe,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,WAAW,EAAE,CAAC,CAAC;;;sHAG4B,GAAG,MAAM,OAAO,CAAC;4CAC3F,OAAO,KAAK;6CACX,OAAO,MAAM;8CACZ,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,KAAK,CAAC;;6CAExC,OAAO,MAAM,KAAK;;;;;;;;;AAU/D,IAAa,kCAAb,cAAqD,UAAU,gBAAgB,CAAC;;iBACpD;;;yBACD;;;AAG3B,eAAe,OAAO,gCAAgC,SAAS,gCAAgC"}
1
+ {"version":3,"file":"minimal-skin.tailwind.js","names":[],"sources":["../../../../src/define/audio/minimal-skin.tailwind.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render/minimal';\nimport { playbackRate } from '@videojs/skins/default/tailwind/audio.tailwind';\nimport {\n button,\n buttonGroup,\n controls,\n icon,\n iconContainer,\n iconFlipped,\n iconState,\n popup,\n root,\n seek,\n slider,\n time,\n tooltipState,\n} from '@videojs/skins/minimal/tailwind/audio.tailwind';\nimport { cn } from '@videojs/utils/style';\nimport { SkinMixin } from '../skin-mixin';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/mute-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"${root}\">\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n\n <div class=\"${controls}\">\n <media-tooltip-group>\n <div class=\"${buttonGroup}\">\n <span class=\"${tooltipState.play.wrapper}\">\n <media-play-button commandfor=\"play-tooltip\" class=\"${cn(button.base, button.icon, iconState.play.button)}\">\n ${renderIcon('restart', { class: cn(icon, iconState.play.restart) })}\n ${renderIcon('play', { class: cn(icon, iconState.play.play) })}\n ${renderIcon('pause', { class: cn(icon, iconState.play.pause) })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.play.replay}\">Replay</span>\n <span class=\"${tooltipState.play.play}\">Play</span>\n <span class=\"${tooltipState.play.pause}\">Pause</span>\n </media-tooltip>\n </span>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: cn(icon, iconFlipped) })}\n <span class=\"${cn(seek.label, seek.labelBackward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: icon })}\n <span class=\"${cn(seek.label, seek.labelForward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n </div>\n\n <div class=\"${time.controls}\">\n <media-time-group class=\"${time.group}\">\n <media-time type=\"current\" class=\"${time.current}\"></media-time>\n <media-time-separator class=\"${time.separator}\"></media-time-separator>\n <media-time type=\"duration\" class=\"${time.duration}\"></media-time>\n </media-time-group>\n\n <media-time-slider class=\"${slider.root}\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n <media-slider-buffer class=\"${cn(slider.fill.base, slider.fill.buffer)}\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.interactive)}\"></media-slider-thumb>\n </media-time-slider>\n </div>\n\n <div class=\"${buttonGroup}\">\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"${cn(button.base, button.icon, playbackRate.button)}\">\n </media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"audio-volume-popover\" class=\"${cn(button.base, button.icon, iconState.mute.button)}\">\n ${renderIcon('volume-off', { class: cn(icon, iconState.mute.volumeOff) })}\n ${renderIcon('volume-low', { class: cn(icon, iconState.mute.volumeLow) })}\n ${renderIcon('volume-high', { class: cn(icon, iconState.mute.volumeHigh) })}\n </media-mute-button>\n\n <media-popover id=\"audio-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"left\" class=\"${cn(popup.volume)}\">\n <media-volume-slider class=\"${slider.root}\" orientation=\"horizontal\" thumb-alignment=\"edge\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"${slider.thumb.base}\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n </div>\n </media-tooltip-group>\n </div>\n </media-container>\n `;\n}\n\nexport class MinimalAudioSkinTailwindElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'audio-minimal-skin-tailwind';\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(MinimalAudioSkinTailwindElement.tagName, MinimalAudioSkinTailwindElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [MinimalAudioSkinTailwindElement.tagName]: MinimalAudioSkinTailwindElement;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCA,MAAM,YAAY;AAElB,SAAS,kBAAkB;AACzB,QAAgB;8BACY,KAAK;;;;;oBAKf,SAAS;;wBAEL,YAAY;2BACT,aAAa,KAAK,QAAQ;oEACe,GAAG,OAAO,MAAM,OAAO,MAAM,UAAU,KAAK,OAAO,CAAC;kBACtG,WAAW,WAAW,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,QAAQ,EAAE,CAAC,CAAC;kBACnE,WAAW,QAAQ,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,KAAK,EAAE,CAAC,CAAC;kBAC7D,WAAW,SAAS,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,MAAM,EAAE,CAAC,CAAC;;mEAEd,GAAG,MAAM,QAAQ,CAAC;+BACtD,aAAa,KAAK,OAAO;+BACzB,aAAa,KAAK,KAAK;+BACvB,aAAa,KAAK,MAAM;;;;6EAIsB,CAAC,UAAU,WAAW,GAAG,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,CAAC;6BAChH,cAAc;kBACzB,WAAW,QAAQ,EAAE,OAAO,GAAG,MAAM,YAAY,EAAE,CAAC,CAAC;+BACxC,GAAG,KAAK,OAAO,KAAK,cAAc,CAAC,IAAI,UAAU;;;0EAGN,GAAG,MAAM,QAAQ,CAAC;8BAC9D,UAAU;;;4EAGoC,UAAU,WAAW,GAAG,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,CAAC;6BAC9G,cAAc;kBACzB,WAAW,QAAQ,EAAE,OAAO,MAAM,CAAC,CAAC;+BACvB,GAAG,KAAK,OAAO,KAAK,aAAa,CAAC,IAAI,UAAU;;;yEAGN,GAAG,MAAM,QAAQ,CAAC;6BAC9D,UAAU;;;;wBAIf,KAAK,SAAS;uCACC,KAAK,MAAM;kDACA,KAAK,QAAQ;6CAClB,KAAK,UAAU;mDACT,KAAK,SAAS;;;wCAGzB,OAAO,KAAK;2CACT,OAAO,MAAM;4CACZ,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,KAAK,CAAC;8CACrC,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,OAAO,CAAC;;2CAE5C,GAAG,OAAO,MAAM,MAAM,OAAO,MAAM,YAAY,CAAC;;;;wBAInE,YAAY;qFACiD,GAAG,OAAO,MAAM,OAAO,MAAM,aAAa,OAAO,CAAC;;0EAE7D,GAAG,MAAM,QAAQ,CAAC;;;;0EAIlB,GAAG,OAAO,MAAM,OAAO,MAAM,UAAU,KAAK,OAAO,CAAC;gBAC9G,WAAW,cAAc,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,UAAU,EAAE,CAAC,CAAC;gBACxE,WAAW,cAAc,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,UAAU,EAAE,CAAC,CAAC;gBACxE,WAAW,eAAe,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,WAAW,EAAE,CAAC,CAAC;;;sHAG4B,GAAG,MAAM,OAAO,CAAC;4CAC3F,OAAO,KAAK;6CACX,OAAO,MAAM;8CACZ,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,KAAK,CAAC;;6CAExC,OAAO,MAAM,KAAK;;;;;;;;;AAU/D,IAAa,kCAAb,cAAqD,UAAU,gBAAgB,CAAC;;iBACpD;;;yBACD;;;AAG3B,eAAe,OAAO,gCAAgC,SAAS,gCAAgC"}
@@ -188,7 +188,7 @@
188
188
  border-radius: 1.75rem;
189
189
  color: oklch(1 0 0);
190
190
  font-size: 0.875rem;
191
- transition-property: opacity, transform;
191
+ transition-property: opacity, scale;
192
192
  transition-duration: 500ms;
193
193
  transition-delay: 100ms;
194
194
  transition-timing-function: linear(
@@ -214,7 +214,7 @@
214
214
  .media-default-skin .media-error[data-starting-style] .media-error__dialog,
215
215
  .media-default-skin .media-error[data-ending-style] .media-error__dialog {
216
216
  opacity: 0;
217
- transform: scale(0.5);
217
+ scale: 0.5;
218
218
  }
219
219
 
220
220
  .media-default-skin .media-error__content {
@@ -231,6 +231,7 @@
231
231
 
232
232
  .media-default-skin .media-error__description {
233
233
  opacity: 0.7;
234
+ overflow-wrap: anywhere;
234
235
  }
235
236
 
236
237
  .media-default-skin .media-error__actions {
@@ -253,12 +254,12 @@
253
254
  gap: 0.075rem;
254
255
  padding: 0.175rem;
255
256
  border-radius: calc(infinity * 1px);
256
- --media-controls-current-shadow-color: oklch(from currentColor 0 0 0 / clamp(0, calc((l - 0.5) * 0.5), 0.25));
257
+ --media-controls-current-shadow-color: oklch(from currentColor 0 0 0 / clamp(0, calc((l - 0.5) * 0.5), 0.15));
257
258
  --media-controls-current-shadow-color-subtle: oklch(
258
259
  from var(--media-controls-current-shadow-color) l c h /
259
260
  calc(alpha * 0.4)
260
261
  );
261
- text-shadow: 0 0 1px var(--media-controls-current-shadow-color);
262
+ text-shadow: 0 1px 0 var(--media-controls-current-shadow-color);
262
263
 
263
264
  @container media-root (width > 40rem) {
264
265
  gap: 0.125rem;
@@ -310,7 +311,7 @@
310
311
  color: oklch(0 0 0);
311
312
  font-weight: 500;
312
313
  text-align: center;
313
- transition-property: background-color, color, outline-offset, transform;
314
+ transition-property: background-color, color, outline-offset, scale;
314
315
  transition-duration: 150ms;
315
316
  transition-timing-function: ease-out;
316
317
  cursor: pointer;
@@ -351,7 +352,7 @@
351
352
  }
352
353
 
353
354
  &:active {
354
- transform: scale(0.9);
355
+ scale: 0.9;
355
356
  }
356
357
 
357
358
  & .media-icon {
@@ -462,7 +463,7 @@
462
463
  .media-default-skin .media-slider__thumb {
463
464
  z-index: 10;
464
465
  position: absolute;
465
- transform: translate(-50%, -50%);
466
+ translate: -50% -50%;
466
467
  width: 0.625rem;
467
468
  height: 0.625rem;
468
469
  background-color: currentColor;
@@ -568,13 +569,13 @@
568
569
  border: 0;
569
570
  color: inherit;
570
571
  overflow: visible;
571
- transition-property: transform, scale, opacity, filter;
572
+ transition-property: scale, opacity, filter;
572
573
  transition-duration: 150ms;
573
574
 
574
575
  &[data-starting-style],
575
576
  &[data-ending-style] {
576
577
  opacity: 0;
577
- transform: scale(0.5);
578
+ scale: 0.5;
578
579
  filter: blur(8px);
579
580
  }
580
581
 
@@ -642,6 +643,10 @@
642
643
  .media-default-skin .media-popover--volume {
643
644
  padding: 0.625rem 0.25rem;
644
645
  border-radius: calc(infinity * 1px);
646
+
647
+ &:has(media-volume-slider[data-availability="unsupported"]) {
648
+ display: none;
649
+ }
645
650
  }
646
651
 
647
652
  .media-default-skin .media-tooltip {
@@ -673,21 +678,21 @@
673
678
  --media-surface-outer-border-color: oklch(0 0 0 / 0.05);
674
679
  --media-surface-shadow-color: oklch(0 0 0 / 0.15);
675
680
  --media-surface-backdrop-filter: blur(16px) saturate(1.5);
681
+ --media-controls-text-color: var(--media-color-primary, oklch(0 0 0));
676
682
 
677
683
  @media (prefers-color-scheme: dark) {
678
684
  --media-border-color: oklch(1 0 0 / 0.1);
679
685
  --media-surface-background-color: oklch(0 0 0 / 0.4);
686
+ --media-controls-text-color: var(--media-color-primary, oklch(1 0 0));
680
687
  }
681
688
  }
682
689
 
683
690
  /* ==========================================================================
684
- Controls
685
- ========================================================================== */
691
+ Controls
692
+ ========================================================================== */
686
693
 
687
694
  .media-default-skin--audio .media-controls {
688
- @media (prefers-color-scheme: dark) {
689
- color: oklch(1 0 0);
690
- }
695
+ color: var(--media-controls-text-color);
691
696
  }
692
697
 
693
698
  /* ==========================================================================
@@ -702,11 +707,3 @@
702
707
  }
703
708
  }
704
709
 
705
- media-tooltip-group {
706
- display: contents;
707
- }
708
-
709
- :host {
710
- display: grid;
711
- }
712
-
@@ -1 +1 @@
1
- {"version":3,"file":"skin.d.ts","names":[],"sources":["../../../../src/define/audio/skin.ts"],"mappings":";;;iBAoBS,eAAA,CAAA;AAAA,cAAe,qBAAA;;;;cA2EX,gBAAA,SAAyB,qBAAA;EAAA,gBACpB,OAAA;EAAA,OACT,MAAA,EAAM,aAAA;EAAA,OACN,eAAA,SAAe,eAAA;AAAA;AAAA,QAKhB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,gBAAA,CAAiB,OAAA,GAAU,gBAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"skin.d.ts","names":[],"sources":["../../../../src/define/audio/skin.ts"],"mappings":";;;iBAoBS,eAAA,CAAA;AAAA,cAAe,qBAAA;;;;cA6EX,gBAAA,SAAyB,qBAAA;EAAA,gBACpB,OAAA;EAAA,OACT,MAAA,EAAM,aAAA;EAAA,OACN,eAAA,SAAe,eAAA;AAAA;AAAA,QAKhB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,gBAAA,CAAiB,OAAA,GAAU,gBAAA;EAAA;AAAA"}
@@ -19,7 +19,9 @@ const SEEK_TIME = 10;
19
19
  function getTemplateHTML() {
20
20
  return `
21
21
  <media-container class="media-default-skin media-default-skin--audio">
22
+ <!-- @deprecated slot="media" is no longer required, use the default slot instead -->
22
23
  <slot name="media"></slot>
24
+ <slot></slot>
23
25
 
24
26
  <div class="media-surface media-controls">
25
27
  <media-tooltip-group>
@@ -1 +1 @@
1
- {"version":3,"file":"skin.js","names":["styles"],"sources":["../../../../src/define/audio/skin.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render';\nimport { createStyles, SkinMixin } from '../skin-mixin';\nimport styles from './skin.css?inline';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/mute-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"media-default-skin media-default-skin--audio\">\n <slot name=\"media\"></slot>\n\n <div class=\"media-surface media-controls\">\n <media-tooltip-group>\n <media-play-button commandfor=\"play-tooltip\" class=\"media-button 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\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--replay\">Replay</span>\n <span class=\"media-tooltip-label media-tooltip-label--play\">Play</span>\n <span class=\"media-tooltip-label media-tooltip-label--pause\">Pause</span>\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"media-button 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\" class=\"media-surface media-tooltip\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"media-button 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\" class=\"media-surface media-tooltip\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-time-group class=\"media-time\">\n <media-time type=\"current\" class=\"media-time__value\"></media-time>\n <media-time-slider class=\"media-slider\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n <media-slider-buffer class=\"media-slider__buffer\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb\"></media-slider-thumb>\n </media-time-slider>\n <media-time type=\"duration\" class=\"media-time__value\"></media-time>\n </media-time-group>\n\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"media-button media-button--icon media-button--playback-rate\"></media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"audio-volume-popover\" class=\"media-button 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\" 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 </media-tooltip-group>\n </div>\n </media-container>\n `;\n}\n\nexport class AudioSkinElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'audio-skin';\n static styles = createStyles(styles);\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(AudioSkinElement.tagName, AudioSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioSkinElement.tagName]: AudioSkinElement;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAkBA,MAAM,YAAY;AAElB,SAAS,kBAAkB;AACzB,QAAgB;;;;;;;cAOJ,WAAW,WAAW,EAAE,OAAO,kCAAkC,CAAC,CAAC;cACnE,WAAW,QAAQ,EAAE,OAAO,+BAA+B,CAAC,CAAC;cAC7D,WAAW,SAAS,EAAE,OAAO,gCAAgC,CAAC,CAAC;;;;;;;;2EAQF,CAAC,UAAU;;gBAEtE,WAAW,QAAQ,EAAE,OAAO,mDAAmD,CAAC,CAAC;gDACjD,UAAU;;;;4BAI9B,UAAU;;;0EAGoC,UAAU;;gBAEpE,WAAW,QAAQ,EAAE,OAAO,+BAA+B,CAAC,CAAC;gDAC7B,UAAU;;;;2BAI/B,UAAU;;;;;;;;;;;;;;;;;;;;;cAqBvB,WAAW,cAAc,EAAE,OAAO,qCAAqC,CAAC,CAAC;cACzE,WAAW,cAAc,EAAE,OAAO,qCAAqC,CAAC,CAAC;cACzE,WAAW,eAAe,EAAE,OAAO,sCAAsC,CAAC,CAAC;;;;;;;;;;;;;;;;AAiBzF,IAAa,mBAAb,cAAsC,UAAU,gBAAgB,CAAC;;iBACrC;;;gBACV,aAAaA,aAAO;;;yBACX;;;AAG3B,eAAe,OAAO,iBAAiB,SAAS,iBAAiB"}
1
+ {"version":3,"file":"skin.js","names":["styles"],"sources":["../../../../src/define/audio/skin.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render';\nimport { createStyles, SkinMixin } from '../skin-mixin';\nimport styles from './skin.css?inline';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/mute-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\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 <div class=\"media-surface media-controls\">\n <media-tooltip-group>\n <media-play-button commandfor=\"play-tooltip\" class=\"media-button 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\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--replay\">Replay</span>\n <span class=\"media-tooltip-label media-tooltip-label--play\">Play</span>\n <span class=\"media-tooltip-label media-tooltip-label--pause\">Pause</span>\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"media-button 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\" class=\"media-surface media-tooltip\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"media-button 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\" class=\"media-surface media-tooltip\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-time-group class=\"media-time\">\n <media-time type=\"current\" class=\"media-time__value\"></media-time>\n <media-time-slider class=\"media-slider\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n <media-slider-buffer class=\"media-slider__buffer\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb\"></media-slider-thumb>\n </media-time-slider>\n <media-time type=\"duration\" class=\"media-time__value\"></media-time>\n </media-time-group>\n\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"media-button media-button--icon media-button--playback-rate\"></media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"audio-volume-popover\" class=\"media-button 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\" 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 </media-tooltip-group>\n </div>\n </media-container>\n `;\n}\n\nexport class AudioSkinElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'audio-skin';\n static styles = createStyles(styles);\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(AudioSkinElement.tagName, AudioSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioSkinElement.tagName]: AudioSkinElement;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAkBA,MAAM,YAAY;AAElB,SAAS,kBAAkB;AACzB,QAAgB;;;;;;;;;cASJ,WAAW,WAAW,EAAE,OAAO,kCAAkC,CAAC,CAAC;cACnE,WAAW,QAAQ,EAAE,OAAO,+BAA+B,CAAC,CAAC;cAC7D,WAAW,SAAS,EAAE,OAAO,gCAAgC,CAAC,CAAC;;;;;;;;2EAQF,CAAC,UAAU;;gBAEtE,WAAW,QAAQ,EAAE,OAAO,mDAAmD,CAAC,CAAC;gDACjD,UAAU;;;;4BAI9B,UAAU;;;0EAGoC,UAAU;;gBAEpE,WAAW,QAAQ,EAAE,OAAO,+BAA+B,CAAC,CAAC;gDAC7B,UAAU;;;;2BAI/B,UAAU;;;;;;;;;;;;;;;;;;;;;cAqBvB,WAAW,cAAc,EAAE,OAAO,qCAAqC,CAAC,CAAC;cACzE,WAAW,cAAc,EAAE,OAAO,qCAAqC,CAAC,CAAC;cACzE,WAAW,eAAe,EAAE,OAAO,sCAAsC,CAAC,CAAC;;;;;;;;;;;;;;;;AAiBzF,IAAa,mBAAb,cAAsC,UAAU,gBAAgB,CAAC;;iBACrC;;;gBACV,aAAaA,aAAO;;;yBACX;;;AAG3B,eAAe,OAAO,iBAAiB,SAAS,iBAAiB"}
@@ -1 +1 @@
1
- {"version":3,"file":"skin.tailwind.d.ts","names":[],"sources":["../../../../src/define/audio/skin.tailwind.ts"],"mappings":";;;iBAmCS,eAAA,CAAA;AAAA,cAAe,6BAAA;;;;cA6EX,wBAAA,SAAiC,6BAAA;EAAA,gBAC5B,OAAA;EAAA,OACT,eAAA,SAAe,eAAA;AAAA;AAAA,QAKhB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,wBAAA,CAAyB,OAAA,GAAU,wBAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"skin.tailwind.d.ts","names":[],"sources":["../../../../src/define/audio/skin.tailwind.ts"],"mappings":";;;iBAmCS,eAAA,CAAA;AAAA,cAAe,6BAAA;;;;cA+EX,wBAAA,SAAiC,6BAAA;EAAA,gBAC5B,OAAA;EAAA,OACT,eAAA,SAAe,eAAA;AAAA;AAAA,QAKhB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,wBAAA,CAAyB,OAAA,GAAU,wBAAA;EAAA;AAAA"}
@@ -12,14 +12,13 @@ import "../ui/time-slider.js";
12
12
  import "../ui/tooltip.js";
13
13
  import "../ui/tooltip-group.js";
14
14
  import "../ui/volume-slider.js";
15
+ import { renderIcon } from "../../icons/dist/render/default/index.js";
15
16
  import { button } from "../../skins/dist/default/default/tailwind/components/button.js";
16
17
  import { icon, iconContainer, iconFlipped } from "../../skins/dist/default/default/tailwind/components/icon.js";
17
18
  import { playbackRate } from "../../skins/dist/default/default/tailwind/components/playback-rate.js";
18
- import { root } from "../../skins/dist/default/default/tailwind/components/root.js";
19
19
  import { seek } from "../../skins/dist/default/default/tailwind/components/seek.js";
20
20
  import { time } from "../../skins/dist/default/default/tailwind/components/time.js";
21
- import { renderIcon } from "../../icons/dist/render/default/index.js";
22
- import { controls, popup, slider } from "../../skins/dist/default/default/tailwind/audio.tailwind.js";
21
+ import { controls, popup, root, slider } from "../../skins/dist/default/default/tailwind/audio.tailwind.js";
23
22
  import { ReactiveElement } from "@videojs/element";
24
23
  import { cn } from "@videojs/utils/style";
25
24
 
@@ -28,10 +27,12 @@ const SEEK_TIME = 10;
28
27
  function getTemplateHTML() {
29
28
  return `
30
29
  <media-container class="${root}">
30
+ <!-- @deprecated slot="media" is no longer required, use the default slot instead -->
31
31
  <slot name="media"></slot>
32
+ <slot></slot>
32
33
 
33
34
  <div class="${controls}">
34
- <media-tooltip-group class="contents">
35
+ <media-tooltip-group>
35
36
  <span class="${tooltipState.play.wrapper}">
36
37
  <media-play-button commandfor="play-tooltip" class="${cn(button.base, button.icon, iconState.play.button)}">
37
38
  ${renderIcon("restart", { class: cn(icon, iconState.play.restart) })}
@@ -1 +1 @@
1
- {"version":3,"file":"skin.tailwind.js","names":[],"sources":["../../../../src/define/audio/skin.tailwind.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render';\nimport {\n button,\n controls,\n icon,\n iconContainer,\n iconFlipped,\n iconState,\n playbackRate,\n popup,\n root,\n seek,\n slider,\n time,\n tooltipState,\n} from '@videojs/skins/default/tailwind/audio.tailwind';\nimport { cn } from '@videojs/utils/style';\nimport { SkinMixin } from '../skin-mixin';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/mute-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"${root}\">\n <slot name=\"media\"></slot>\n\n <div class=\"${controls}\">\n <media-tooltip-group class=\"contents\">\n <span class=\"${tooltipState.play.wrapper}\">\n <media-play-button commandfor=\"play-tooltip\" class=\"${cn(button.base, button.icon, iconState.play.button)}\">\n ${renderIcon('restart', { class: cn(icon, iconState.play.restart) })}\n ${renderIcon('play', { class: cn(icon, iconState.play.play) })}\n ${renderIcon('pause', { class: cn(icon, iconState.play.pause) })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.play.replay}\">Replay</span>\n <span class=\"${tooltipState.play.play}\">Play</span>\n <span class=\"${tooltipState.play.pause}\">Pause</span>\n </media-tooltip>\n </span>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: cn(icon, iconFlipped) })}\n <span class=\"${cn(seek.label, seek.labelBackward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: icon })}\n <span class=\"${cn(seek.label, seek.labelForward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-time-group class=\"${time.group}\">\n <media-time type=\"current\" class=\"${time.current}\"></media-time>\n <media-time-slider class=\"${slider.root}\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n <media-slider-buffer class=\"${cn(slider.fill.base, slider.fill.buffer)}\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.interactive)}\"></media-slider-thumb>\n </media-time-slider>\n <media-time type=\"duration\" class=\"${time.duration}\"></media-time>\n </media-time-group>\n\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"${cn(button.base, button.icon, playbackRate.button)}\"></media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"audio-volume-popover\" class=\"${cn(button.base, button.icon, iconState.mute.button)}\">\n ${renderIcon('volume-off', { class: cn(icon, iconState.mute.volumeOff) })}\n ${renderIcon('volume-low', { class: cn(icon, iconState.mute.volumeLow) })}\n ${renderIcon('volume-high', { class: cn(icon, iconState.mute.volumeHigh) })}\n </media-mute-button>\n\n <media-popover id=\"audio-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"top\" class=\"${cn(popup.popover, popup.volume)}\">\n <media-volume-slider class=\"${slider.root}\" orientation=\"vertical\" thumb-alignment=\"edge\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.persistent)}\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n </media-tooltip-group>\n </div>\n </media-container>\n `;\n}\n\nexport class AudioSkinTailwindElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'audio-skin-tailwind';\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(AudioSkinTailwindElement.tagName, AudioSkinTailwindElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioSkinTailwindElement.tagName]: AudioSkinTailwindElement;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,MAAM,YAAY;AAElB,SAAS,kBAAkB;AACzB,QAAgB;8BACY,KAAK;;;oBAGf,SAAS;;yBAEJ,aAAa,KAAK,QAAQ;kEACe,GAAG,OAAO,MAAM,OAAO,MAAM,UAAU,KAAK,OAAO,CAAC;gBACtG,WAAW,WAAW,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,QAAQ,EAAE,CAAC,CAAC;gBACnE,WAAW,QAAQ,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,KAAK,EAAE,CAAC,CAAC;gBAC7D,WAAW,SAAS,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,MAAM,EAAE,CAAC,CAAC;;iEAEd,GAAG,MAAM,QAAQ,CAAC;6BACtD,aAAa,KAAK,OAAO;6BACzB,aAAa,KAAK,KAAK;6BACvB,aAAa,KAAK,MAAM;;;;2EAIsB,CAAC,UAAU,WAAW,GAAG,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,CAAC;2BAChH,cAAc;gBACzB,WAAW,QAAQ,EAAE,OAAO,GAAG,MAAM,YAAY,EAAE,CAAC,CAAC;6BACxC,GAAG,KAAK,OAAO,KAAK,cAAc,CAAC,IAAI,UAAU;;;wEAGN,GAAG,MAAM,QAAQ,CAAC;4BAC9D,UAAU;;;0EAGoC,UAAU,WAAW,GAAG,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,CAAC;2BAC9G,cAAc;gBACzB,WAAW,QAAQ,EAAE,OAAO,MAAM,CAAC,CAAC;6BACvB,GAAG,KAAK,OAAO,KAAK,aAAa,CAAC,IAAI,UAAU;;;uEAGN,GAAG,MAAM,QAAQ,CAAC;2BAC9D,UAAU;;;qCAGA,KAAK,MAAM;gDACA,KAAK,QAAQ;wCACrB,OAAO,KAAK;2CACT,OAAO,MAAM;4CACZ,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,KAAK,CAAC;8CACrC,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,OAAO,CAAC;;2CAE5C,GAAG,OAAO,MAAM,MAAM,OAAO,MAAM,YAAY,CAAC;;iDAE1C,KAAK,SAAS;;;mFAGoB,GAAG,OAAO,MAAM,OAAO,MAAM,aAAa,OAAO,CAAC;wEAC7D,GAAG,MAAM,QAAQ,CAAC;;;;wEAIlB,GAAG,OAAO,MAAM,OAAO,MAAM,UAAU,KAAK,OAAO,CAAC;cAC9G,WAAW,cAAc,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,UAAU,EAAE,CAAC,CAAC;cACxE,WAAW,cAAc,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,UAAU,EAAE,CAAC,CAAC;cACxE,WAAW,eAAe,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,WAAW,EAAE,CAAC,CAAC;;;mHAG2B,GAAG,MAAM,SAAS,MAAM,OAAO,CAAC;0CACzG,OAAO,KAAK;2CACX,OAAO,MAAM;4CACZ,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,KAAK,CAAC;;2CAExC,GAAG,OAAO,MAAM,MAAM,OAAO,MAAM,WAAW,CAAC;;;;;;;;AAS1F,IAAa,2BAAb,cAA8C,UAAU,gBAAgB,CAAC;;iBAC7C;;;yBACD;;;AAG3B,eAAe,OAAO,yBAAyB,SAAS,yBAAyB"}
1
+ {"version":3,"file":"skin.tailwind.js","names":[],"sources":["../../../../src/define/audio/skin.tailwind.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render';\nimport {\n button,\n controls,\n icon,\n iconContainer,\n iconFlipped,\n iconState,\n playbackRate,\n popup,\n root,\n seek,\n slider,\n time,\n tooltipState,\n} from '@videojs/skins/default/tailwind/audio.tailwind';\nimport { cn } from '@videojs/utils/style';\nimport { SkinMixin } from '../skin-mixin';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/mute-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"${root}\">\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n\n <div class=\"${controls}\">\n <media-tooltip-group>\n <span class=\"${tooltipState.play.wrapper}\">\n <media-play-button commandfor=\"play-tooltip\" class=\"${cn(button.base, button.icon, iconState.play.button)}\">\n ${renderIcon('restart', { class: cn(icon, iconState.play.restart) })}\n ${renderIcon('play', { class: cn(icon, iconState.play.play) })}\n ${renderIcon('pause', { class: cn(icon, iconState.play.pause) })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.play.replay}\">Replay</span>\n <span class=\"${tooltipState.play.play}\">Play</span>\n <span class=\"${tooltipState.play.pause}\">Pause</span>\n </media-tooltip>\n </span>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: cn(icon, iconFlipped) })}\n <span class=\"${cn(seek.label, seek.labelBackward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: icon })}\n <span class=\"${cn(seek.label, seek.labelForward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-time-group class=\"${time.group}\">\n <media-time type=\"current\" class=\"${time.current}\"></media-time>\n <media-time-slider class=\"${slider.root}\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n <media-slider-buffer class=\"${cn(slider.fill.base, slider.fill.buffer)}\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.interactive)}\"></media-slider-thumb>\n </media-time-slider>\n <media-time type=\"duration\" class=\"${time.duration}\"></media-time>\n </media-time-group>\n\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"${cn(button.base, button.icon, playbackRate.button)}\"></media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"audio-volume-popover\" class=\"${cn(button.base, button.icon, iconState.mute.button)}\">\n ${renderIcon('volume-off', { class: cn(icon, iconState.mute.volumeOff) })}\n ${renderIcon('volume-low', { class: cn(icon, iconState.mute.volumeLow) })}\n ${renderIcon('volume-high', { class: cn(icon, iconState.mute.volumeHigh) })}\n </media-mute-button>\n\n <media-popover id=\"audio-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"top\" class=\"${cn(popup.popover, popup.volume)}\">\n <media-volume-slider class=\"${slider.root}\" orientation=\"vertical\" thumb-alignment=\"edge\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.persistent)}\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n </media-tooltip-group>\n </div>\n </media-container>\n `;\n}\n\nexport class AudioSkinTailwindElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'audio-skin-tailwind';\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(AudioSkinTailwindElement.tagName, AudioSkinTailwindElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioSkinTailwindElement.tagName]: AudioSkinTailwindElement;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,MAAM,YAAY;AAElB,SAAS,kBAAkB;AACzB,QAAgB;8BACY,KAAK;;;;;oBAKf,SAAS;;yBAEJ,aAAa,KAAK,QAAQ;kEACe,GAAG,OAAO,MAAM,OAAO,MAAM,UAAU,KAAK,OAAO,CAAC;gBACtG,WAAW,WAAW,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,QAAQ,EAAE,CAAC,CAAC;gBACnE,WAAW,QAAQ,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,KAAK,EAAE,CAAC,CAAC;gBAC7D,WAAW,SAAS,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,MAAM,EAAE,CAAC,CAAC;;iEAEd,GAAG,MAAM,QAAQ,CAAC;6BACtD,aAAa,KAAK,OAAO;6BACzB,aAAa,KAAK,KAAK;6BACvB,aAAa,KAAK,MAAM;;;;2EAIsB,CAAC,UAAU,WAAW,GAAG,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,CAAC;2BAChH,cAAc;gBACzB,WAAW,QAAQ,EAAE,OAAO,GAAG,MAAM,YAAY,EAAE,CAAC,CAAC;6BACxC,GAAG,KAAK,OAAO,KAAK,cAAc,CAAC,IAAI,UAAU;;;wEAGN,GAAG,MAAM,QAAQ,CAAC;4BAC9D,UAAU;;;0EAGoC,UAAU,WAAW,GAAG,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,CAAC;2BAC9G,cAAc;gBACzB,WAAW,QAAQ,EAAE,OAAO,MAAM,CAAC,CAAC;6BACvB,GAAG,KAAK,OAAO,KAAK,aAAa,CAAC,IAAI,UAAU;;;uEAGN,GAAG,MAAM,QAAQ,CAAC;2BAC9D,UAAU;;;qCAGA,KAAK,MAAM;gDACA,KAAK,QAAQ;wCACrB,OAAO,KAAK;2CACT,OAAO,MAAM;4CACZ,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,KAAK,CAAC;8CACrC,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,OAAO,CAAC;;2CAE5C,GAAG,OAAO,MAAM,MAAM,OAAO,MAAM,YAAY,CAAC;;iDAE1C,KAAK,SAAS;;;mFAGoB,GAAG,OAAO,MAAM,OAAO,MAAM,aAAa,OAAO,CAAC;wEAC7D,GAAG,MAAM,QAAQ,CAAC;;;;wEAIlB,GAAG,OAAO,MAAM,OAAO,MAAM,UAAU,KAAK,OAAO,CAAC;cAC9G,WAAW,cAAc,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,UAAU,EAAE,CAAC,CAAC;cACxE,WAAW,cAAc,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,UAAU,EAAE,CAAC,CAAC;cACxE,WAAW,eAAe,EAAE,OAAO,GAAG,MAAM,UAAU,KAAK,WAAW,EAAE,CAAC,CAAC;;;mHAG2B,GAAG,MAAM,SAAS,MAAM,OAAO,CAAC;0CACzG,OAAO,KAAK;2CACX,OAAO,MAAM;4CACZ,GAAG,OAAO,KAAK,MAAM,OAAO,KAAK,KAAK,CAAC;;2CAExC,GAAG,OAAO,MAAM,MAAM,OAAO,MAAM,WAAW,CAAC;;;;;;;;AAS1F,IAAa,2BAAb,cAA8C,UAAU,gBAAgB,CAAC;;iBAC7C;;;yBACD;;;AAG3B,eAAe,OAAO,yBAAyB,SAAS,yBAAyB"}
@@ -11,7 +11,7 @@ background-video-skin {
11
11
  object-fit: var(--media-object-fit);
12
12
  }
13
13
 
14
- background-video-skin > [slot="media"] {
14
+ background-video-skin > background-video {
15
15
  position: absolute;
16
16
  inset: 0;
17
17
  width: 100%;
@@ -1 +1 @@
1
- {"version":3,"file":"skin.d.ts","names":[],"sources":["../../../../src/define/background/skin.ts"],"mappings":";;;iBAIS,eAAA,CAAgB,MAAA,EAAQ,MAAA;AAAA,cAQpB,0BAAA,SAAmC,eAAA;EAAA,gBAC9B,OAAA;EAAA,OACT,iBAAA;UAAsC,cAAA;EAAA;EAAA,OACtC,eAAA,SAAe,eAAA;;;QAchB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,0BAAA,CAA2B,OAAA,GAAU,0BAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"skin.d.ts","names":[],"sources":["../../../../src/define/background/skin.ts"],"mappings":";;;iBAeS,eAAA,CAAgB,MAAA,EAAQ,MAAA;AAAA,cAUpB,0BAAA,SAAmC,eAAA;EAAA,gBAC9B,OAAA;EAAA,OACT,iBAAA;UAAsC,cAAA;EAAA;EAAA,OACtC,eAAA,SAAe,eAAA;;;QAgBhB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,0BAAA,CAA2B,OAAA,GAAU,0BAAA;EAAA;AAAA"}
@@ -1,12 +1,23 @@
1
1
  import { safeDefine } from "../safe-define.js";
2
+ import skin_default from "../../_virtual/inline-css_src/define/background/skin.js";
2
3
  import { ReactiveElement } from "@videojs/element";
3
4
  import { namedNodeMapToObject } from "@videojs/utils/dom";
4
5
 
5
6
  //#region src/define/background/skin.ts
7
+ const STYLES_ID = "__media-background-styles";
8
+ function ensureBackgroundStyles() {
9
+ if (document.getElementById(STYLES_ID)) return;
10
+ const style = document.createElement("style");
11
+ style.id = STYLES_ID;
12
+ style.textContent = skin_default;
13
+ document.head.appendChild(style);
14
+ }
6
15
  function getTemplateHTML(_attrs) {
7
16
  return `
8
17
  <media-container>
9
- <slot name="media" slot="media"></slot>
18
+ <!-- @deprecated slot="media" is no longer required, use the default slot instead -->
19
+ <slot name="media"></slot>
20
+ <slot></slot>
10
21
  </media-container>
11
22
  `;
12
23
  }
@@ -22,6 +33,7 @@ var BackgroundVideoSkinElement = class extends ReactiveElement {
22
33
  }
23
34
  constructor() {
24
35
  super();
36
+ ensureBackgroundStyles();
25
37
  if (!this.shadowRoot) {
26
38
  this.attachShadow(this.constructor.shadowRootOptions);
27
39
  this.shadowRoot.innerHTML = getTemplateHTML(namedNodeMapToObject(this.attributes));
@@ -1 +1 @@
1
- {"version":3,"file":"skin.js","names":[],"sources":["../../../../src/define/background/skin.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { namedNodeMapToObject } from '@videojs/utils/dom';\nimport { safeDefine } from '../safe-define';\n\nfunction getTemplateHTML(_attrs: Record<string, string>) {\n return /*html*/ `\n <media-container>\n <slot name=\"media\" slot=\"media\"></slot>\n </media-container>\n `;\n}\n\nexport class BackgroundVideoSkinElement extends ReactiveElement {\n static readonly tagName = 'background-video-skin';\n static shadowRootOptions = { mode: 'open' as ShadowRootMode };\n static getTemplateHTML = getTemplateHTML;\n\n constructor() {\n super();\n\n if (!this.shadowRoot) {\n this.attachShadow((this.constructor as typeof BackgroundVideoSkinElement).shadowRootOptions);\n this.shadowRoot!.innerHTML = getTemplateHTML(namedNodeMapToObject(this.attributes));\n }\n }\n}\n\nsafeDefine(BackgroundVideoSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoSkinElement.tagName]: BackgroundVideoSkinElement;\n }\n}\n"],"mappings":";;;;;AAIA,SAAS,gBAAgB,QAAgC;AACvD,QAAgB;;;;;;AAOlB,IAAa,6BAAb,cAAgD,gBAAgB;;iBACpC;;;2BACC,EAAE,MAAM,QAA0B;;;yBACpC;;CAEzB,cAAc;AACZ,SAAO;AAEP,MAAI,CAAC,KAAK,YAAY;AACpB,QAAK,aAAc,KAAK,YAAkD,kBAAkB;AAC5F,QAAK,WAAY,YAAY,gBAAgB,qBAAqB,KAAK,WAAW,CAAC;;;;AAKzF,WAAW,2BAA2B"}
1
+ {"version":3,"file":"skin.js","names":["styles"],"sources":["../../../../src/define/background/skin.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { namedNodeMapToObject } from '@videojs/utils/dom';\nimport { safeDefine } from '../safe-define';\nimport styles from './skin.css?inline';\n\nconst STYLES_ID = '__media-background-styles';\n\nfunction ensureBackgroundStyles(): void {\n if (document.getElementById(STYLES_ID)) return;\n const style = document.createElement('style');\n style.id = STYLES_ID;\n style.textContent = styles;\n document.head.appendChild(style);\n}\n\nfunction getTemplateHTML(_attrs: Record<string, string>) {\n return /*html*/ `\n <media-container>\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n </media-container>\n `;\n}\n\nexport class BackgroundVideoSkinElement extends ReactiveElement {\n static readonly tagName = 'background-video-skin';\n static shadowRootOptions = { mode: 'open' as ShadowRootMode };\n static getTemplateHTML = getTemplateHTML;\n\n constructor() {\n super();\n\n ensureBackgroundStyles();\n\n if (!this.shadowRoot) {\n this.attachShadow((this.constructor as typeof BackgroundVideoSkinElement).shadowRootOptions);\n this.shadowRoot!.innerHTML = getTemplateHTML(namedNodeMapToObject(this.attributes));\n }\n }\n}\n\nsafeDefine(BackgroundVideoSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoSkinElement.tagName]: BackgroundVideoSkinElement;\n }\n}\n"],"mappings":";;;;;;AAKA,MAAM,YAAY;AAElB,SAAS,yBAA+B;AACtC,KAAI,SAAS,eAAe,UAAU,CAAE;CACxC,MAAM,QAAQ,SAAS,cAAc,QAAQ;AAC7C,OAAM,KAAK;AACX,OAAM,cAAcA;AACpB,UAAS,KAAK,YAAY,MAAM;;AAGlC,SAAS,gBAAgB,QAAgC;AACvD,QAAgB;;;;;;;;AASlB,IAAa,6BAAb,cAAgD,gBAAgB;;iBACpC;;;2BACC,EAAE,MAAM,QAA0B;;;yBACpC;;CAEzB,cAAc;AACZ,SAAO;AAEP,0BAAwB;AAExB,MAAI,CAAC,KAAK,YAAY;AACpB,QAAK,aAAc,KAAK,YAAkD,kBAAkB;AAC5F,QAAK,WAAY,YAAY,gBAAgB,qBAAqB,KAAK,WAAW,CAAC;;;;AAKzF,WAAW,2BAA2B"}
@@ -3,21 +3,21 @@ video-player {
3
3
  }
4
4
 
5
5
  /*
6
- Required to override any default video styles (such as Tailwind's CSS reset)
7
- and ensure the video element fills the container as expected.
6
+ Required to override any default video and image styles (such as
7
+ Tailwind's CSS reset) and ensure they fill the container as expected.
8
8
  */
9
- video-player video {
9
+ video-player video,
10
+ video-player [slot="poster"] {
10
11
  display: block;
11
12
  width: 100%;
12
13
  height: 100%;
13
- object-fit: var(--media-object-fit, contain);
14
- object-position: var(--media-object-position, center);
15
14
  }
16
15
 
17
16
  video-player video::-webkit-media-text-track-container {
18
- transition: transform var(--media-caption-track-duration, 0) ease-out;
17
+ transition: translate var(--media-caption-track-duration, 0) ease-out;
19
18
  transition-delay: var(--media-caption-track-delay, 0);
20
- transform: translateY(var(--media-caption-track-y, 0)) scale(0.98);
19
+ translate: 0 var(--media-caption-track-y, 0);
20
+ scale: 0.98;
21
21
  z-index: 1;
22
22
  font-family: inherit;
23
23
  }
@@ -0,0 +1,14 @@
1
+ import { DashVideo } from "../../media/dash-video/index.js";
2
+
3
+ //#region src/define/media/dash-video.d.ts
4
+ declare class DashVideoElement extends DashVideo {
5
+ static readonly tagName = "dash-video";
6
+ }
7
+ declare global {
8
+ interface HTMLElementTagNameMap {
9
+ [DashVideoElement.tagName]: DashVideoElement;
10
+ }
11
+ } //# sourceMappingURL=dash-video.d.ts.map
12
+ //#endregion
13
+ export { DashVideoElement };
14
+ //# sourceMappingURL=dash-video.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dash-video.d.ts","names":[],"sources":["../../../../src/define/media/dash-video.ts"],"mappings":";;;cAGa,gBAAA,SAAyB,SAAA;EAAA,gBACpB,OAAA;AAAA;AAAA,QAKV,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,gBAAA,CAAiB,OAAA,GAAU,gBAAA;EAAA;AAAA"}
@@ -0,0 +1,14 @@
1
+ import { safeDefine } from "../safe-define.js";
2
+ import { DashVideo } from "../../media/dash-video/index.js";
3
+
4
+ //#region src/define/media/dash-video.ts
5
+ var DashVideoElement = class extends DashVideo {
6
+ static {
7
+ this.tagName = "dash-video";
8
+ }
9
+ };
10
+ safeDefine(DashVideoElement);
11
+
12
+ //#endregion
13
+ export { DashVideoElement };
14
+ //# sourceMappingURL=dash-video.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dash-video.js","names":[],"sources":["../../../../src/define/media/dash-video.ts"],"sourcesContent":["import { DashVideo } from '../../media/dash-video';\nimport { safeDefine } from '../safe-define';\n\nexport class DashVideoElement extends DashVideo {\n static readonly tagName = 'dash-video';\n}\n\nsafeDefine(DashVideoElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [DashVideoElement.tagName]: DashVideoElement;\n }\n}\n"],"mappings":";;;;AAGA,IAAa,mBAAb,cAAsC,UAAU;;iBACpB;;;AAG5B,WAAW,iBAAiB"}
@@ -2,6 +2,12 @@ media-tooltip-group {
2
2
  display: contents;
3
3
  }
4
4
 
5
+ /* Fixes a weird issue with Safari when setting aspect-ratio */
5
6
  :host {
6
7
  display: grid;
7
8
  }
9
+
10
+ /* Hide volume popover when volume control is unsupported (e.g., iOS Safari). */
11
+ .media-popover--volume:has(media-volume-slider[data-availability="unsupported"]) {
12
+ display: none;
13
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"skin-mixin.d.ts","names":[],"sources":["../../../src/define/skin-mixin.ts"],"mappings":";;;;;;AAsBA;;;;;;iBAAgB,SAAA,cAAuB,WAAA,CAAY,eAAA,EAAA,CACjD,SAAA,EAAW,IAAA,GACV,IAAA;EAAS,iBAAA,EAAmB,cAAA;EAAgB,MAAA,GAAS,aAAA;AAAA;;iBA6BxC,YAAA,CAAa,GAAA,WAAc,aAAA"}
1
+ {"version":3,"file":"skin-mixin.d.ts","names":[],"sources":["../../../src/define/skin-mixin.ts"],"mappings":";;;;;;AA0BA;;;;;;iBAAgB,SAAA,cAAuB,WAAA,CAAY,eAAA,EAAA,CACjD,SAAA,EAAW,IAAA,GACV,IAAA;EAAS,iBAAA,EAAmB,cAAA;EAAgB,MAAA,GAAS,aAAA;AAAA;;iBA+BxC,YAAA,CAAa,GAAA,WAAc,aAAA"}
@@ -1,14 +1,17 @@
1
1
  import base_default from "../_virtual/inline-css_src/define/base.js";
2
+ import shared_default from "../_virtual/inline-css_src/define/shared.js";
2
3
 
3
4
  //#region src/define/skin-mixin.ts
4
5
  const STYLES_ID = "__media-styles";
5
- function ensureStyles() {
6
+ function ensureRootStyles() {
6
7
  if (document.getElementById(STYLES_ID)) return;
7
8
  const style = document.createElement("style");
8
9
  style.id = STYLES_ID;
9
10
  style.textContent = base_default;
10
11
  document.head.appendChild(style);
11
12
  }
13
+ const sharedSheet = new CSSStyleSheet();
14
+ sharedSheet.replaceSync(shared_default);
12
15
  /**
13
16
  * Mixin for skin elements that renders the template from a static
14
17
  * `getTemplateHTML` method into a shadow root. Native `<slot>` elements
@@ -24,11 +27,13 @@ function SkinMixin(BaseClass) {
24
27
  }
25
28
  constructor(...args) {
26
29
  super(...args);
27
- ensureStyles();
30
+ ensureRootStyles();
28
31
  if (!this.shadowRoot) {
29
32
  const ctor = this.constructor;
30
33
  this.attachShadow(ctor.shadowRootOptions);
31
- if (ctor.styles) this.shadowRoot.adoptedStyleSheets = [ctor.styles];
34
+ const sheets = [sharedSheet];
35
+ if (ctor.styles) sheets.push(ctor.styles);
36
+ this.shadowRoot.adoptedStyleSheets = sheets;
32
37
  if (ctor.getTemplateHTML) this.shadowRoot.innerHTML = ctor.getTemplateHTML();
33
38
  }
34
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"skin-mixin.js","names":["styles"],"sources":["../../../src/define/skin-mixin.ts"],"sourcesContent":["import type { ReactiveElement } from '@videojs/element';\nimport type { Constructor } from '@videojs/utils/types';\nimport styles from './base.css?inline';\n\nconst STYLES_ID = '__media-styles';\n\nfunction ensureStyles(): void {\n if (document.getElementById(STYLES_ID)) return;\n const style = document.createElement('style');\n style.id = STYLES_ID;\n style.textContent = styles;\n document.head.appendChild(style);\n}\n\n/**\n * Mixin for skin elements that renders the template from a static\n * `getTemplateHTML` method into a shadow root. Native `<slot>` elements\n * handle light DOM projection automatically.\n *\n * When `static styles` is set, the stylesheet is adopted into the\n * shadow root via `adoptedStyleSheets`.\n */\nexport function SkinMixin<Base extends Constructor<ReactiveElement>>(\n BaseClass: Base\n): Base & { shadowRootOptions: ShadowRootInit; styles?: CSSStyleSheet } {\n class SkinElement extends (BaseClass as Constructor<ReactiveElement>) {\n static shadowRootOptions: ShadowRootInit = { mode: 'open' };\n static styles?: CSSStyleSheet;\n\n constructor(...args: any[]) {\n super(...args);\n\n ensureStyles();\n\n if (!this.shadowRoot) {\n const ctor = this.constructor as typeof SkinElement & { getTemplateHTML?: () => string };\n this.attachShadow(ctor.shadowRootOptions);\n\n if (ctor.styles) {\n this.shadowRoot!.adoptedStyleSheets = [ctor.styles];\n }\n\n if (ctor.getTemplateHTML) {\n this.shadowRoot!.innerHTML = ctor.getTemplateHTML();\n }\n }\n }\n }\n\n return SkinElement as unknown as Base & { shadowRootOptions: ShadowRootInit; styles?: CSSStyleSheet };\n}\n\n/** Create a shared `CSSStyleSheet` from a CSS string. */\nexport function createStyles(css: string): CSSStyleSheet {\n const sheet = new CSSStyleSheet();\n sheet.replaceSync(css);\n return sheet;\n}\n"],"mappings":";;;AAIA,MAAM,YAAY;AAElB,SAAS,eAAqB;AAC5B,KAAI,SAAS,eAAe,UAAU,CAAE;CACxC,MAAM,QAAQ,SAAS,cAAc,QAAQ;AAC7C,OAAM,KAAK;AACX,OAAM,cAAcA;AACpB,UAAS,KAAK,YAAY,MAAM;;;;;;;;;;AAWlC,SAAgB,UACd,WACsE;CACtE,MAAM,oBAAqB,UAA2C;;4BACzB,EAAE,MAAM,QAAQ;;EAG3D,YAAY,GAAG,MAAa;AAC1B,SAAM,GAAG,KAAK;AAEd,iBAAc;AAEd,OAAI,CAAC,KAAK,YAAY;IACpB,MAAM,OAAO,KAAK;AAClB,SAAK,aAAa,KAAK,kBAAkB;AAEzC,QAAI,KAAK,OACP,MAAK,WAAY,qBAAqB,CAAC,KAAK,OAAO;AAGrD,QAAI,KAAK,gBACP,MAAK,WAAY,YAAY,KAAK,iBAAiB;;;;AAM3D,QAAO;;;AAIT,SAAgB,aAAa,KAA4B;CACvD,MAAM,QAAQ,IAAI,eAAe;AACjC,OAAM,YAAY,IAAI;AACtB,QAAO"}
1
+ {"version":3,"file":"skin-mixin.js","names":["rootStyles","sharedStyles"],"sources":["../../../src/define/skin-mixin.ts"],"sourcesContent":["import type { ReactiveElement } from '@videojs/element';\nimport type { Constructor } from '@videojs/utils/types';\nimport rootStyles from './base.css?inline';\nimport sharedStyles from './shared.css?inline';\n\nconst STYLES_ID = '__media-styles';\n\nfunction ensureRootStyles(): void {\n if (document.getElementById(STYLES_ID)) return;\n const style = document.createElement('style');\n style.id = STYLES_ID;\n style.textContent = rootStyles;\n document.head.appendChild(style);\n}\n\nconst sharedSheet = new CSSStyleSheet();\nsharedSheet.replaceSync(sharedStyles);\n\n/**\n * Mixin for skin elements that renders the template from a static\n * `getTemplateHTML` method into a shadow root. Native `<slot>` elements\n * handle light DOM projection automatically.\n *\n * When `static styles` is set, the stylesheet is adopted into the\n * shadow root via `adoptedStyleSheets`.\n */\nexport function SkinMixin<Base extends Constructor<ReactiveElement>>(\n BaseClass: Base\n): Base & { shadowRootOptions: ShadowRootInit; styles?: CSSStyleSheet } {\n class SkinElement extends (BaseClass as Constructor<ReactiveElement>) {\n static shadowRootOptions: ShadowRootInit = { mode: 'open' };\n static styles?: CSSStyleSheet;\n\n constructor(...args: any[]) {\n super(...args);\n\n ensureRootStyles();\n\n if (!this.shadowRoot) {\n const ctor = this.constructor as typeof SkinElement & { getTemplateHTML?: () => string };\n this.attachShadow(ctor.shadowRootOptions);\n\n const sheets: CSSStyleSheet[] = [sharedSheet];\n if (ctor.styles) {\n sheets.push(ctor.styles);\n }\n this.shadowRoot!.adoptedStyleSheets = sheets;\n\n if (ctor.getTemplateHTML) {\n this.shadowRoot!.innerHTML = ctor.getTemplateHTML();\n }\n }\n }\n }\n\n return SkinElement as unknown as Base & { shadowRootOptions: ShadowRootInit; styles?: CSSStyleSheet };\n}\n\n/** Create a shared `CSSStyleSheet` from a CSS string. */\nexport function createStyles(css: string): CSSStyleSheet {\n const sheet = new CSSStyleSheet();\n sheet.replaceSync(css);\n return sheet;\n}\n"],"mappings":";;;;AAKA,MAAM,YAAY;AAElB,SAAS,mBAAyB;AAChC,KAAI,SAAS,eAAe,UAAU,CAAE;CACxC,MAAM,QAAQ,SAAS,cAAc,QAAQ;AAC7C,OAAM,KAAK;AACX,OAAM,cAAcA;AACpB,UAAS,KAAK,YAAY,MAAM;;AAGlC,MAAM,cAAc,IAAI,eAAe;AACvC,YAAY,YAAYC,eAAa;;;;;;;;;AAUrC,SAAgB,UACd,WACsE;CACtE,MAAM,oBAAqB,UAA2C;;4BACzB,EAAE,MAAM,QAAQ;;EAG3D,YAAY,GAAG,MAAa;AAC1B,SAAM,GAAG,KAAK;AAEd,qBAAkB;AAElB,OAAI,CAAC,KAAK,YAAY;IACpB,MAAM,OAAO,KAAK;AAClB,SAAK,aAAa,KAAK,kBAAkB;IAEzC,MAAM,SAA0B,CAAC,YAAY;AAC7C,QAAI,KAAK,OACP,QAAO,KAAK,KAAK,OAAO;AAE1B,SAAK,WAAY,qBAAqB;AAEtC,QAAI,KAAK,gBACP,MAAK,WAAY,YAAY,KAAK,iBAAiB;;;;AAM3D,QAAO;;;AAIT,SAAgB,aAAa,KAA4B;CACvD,MAAM,QAAQ,IAAI,eAAe;AACjC,OAAM,YAAY,IAAI;AACtB,QAAO"}