@videojs/html 10.0.0-beta.11 → 10.0.0-beta.12

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 (788) hide show
  1. package/cdn/abort-C7q_G_dT.js +2 -0
  2. package/cdn/abort-C7q_G_dT.js.map +1 -0
  3. package/cdn/abort-JT-ewLFq.js +22 -0
  4. package/cdn/abort-JT-ewLFq.js.map +1 -0
  5. package/cdn/audio-minimal.dev.js +23 -12
  6. package/cdn/audio-minimal.dev.js.map +1 -1
  7. package/cdn/audio-minimal.js +1 -1
  8. package/cdn/audio-minimal.js.map +1 -1
  9. package/cdn/audio.dev.js +72 -57
  10. package/cdn/audio.dev.js.map +1 -1
  11. package/cdn/audio.js +1 -1
  12. package/cdn/audio.js.map +1 -1
  13. package/cdn/background.dev.js +3 -4
  14. package/cdn/background.dev.js.map +1 -1
  15. package/cdn/background.js +1 -1
  16. package/cdn/background.js.map +1 -1
  17. package/cdn/{create-player-AcfnN3li.js → create-player-BoPlCSNw.js} +103 -19
  18. package/cdn/create-player-BoPlCSNw.js.map +1 -0
  19. package/cdn/create-player-CA3KLZMe.js +7 -0
  20. package/cdn/create-player-CA3KLZMe.js.map +1 -0
  21. package/cdn/{default-cLso8BHO.js → default-CKnlVEjQ.js} +1 -1
  22. package/cdn/{default-cLso8BHO.js.map → default-CKnlVEjQ.js.map} +1 -1
  23. package/cdn/{default-GgKND7a8.js → default-CnBlD9BM.js} +1 -1
  24. package/cdn/{default-GgKND7a8.js.map → default-CnBlD9BM.js.map} +1 -1
  25. package/cdn/{delegate-CzAcT1xm.js → delegate-CSc5c0ZR.js} +16 -3
  26. package/cdn/delegate-CSc5c0ZR.js.map +1 -0
  27. package/cdn/delegate-jczJeizF.js +2 -0
  28. package/cdn/delegate-jczJeizF.js.map +1 -0
  29. package/cdn/hls-C6htsSW4.js +28661 -0
  30. package/cdn/hls-C6htsSW4.js.map +1 -0
  31. package/cdn/hls-DQ4glyHe.js +41 -0
  32. package/cdn/hls-DQ4glyHe.js.map +1 -0
  33. package/cdn/{listen-YSH3Jfyk.js → listen-BkAEGXCe.js} +1 -1
  34. package/cdn/{listen-YSH3Jfyk.js.map → listen-BkAEGXCe.js.map} +1 -1
  35. package/cdn/{listen-4jqsRSKo.js → listen-UqQNdlqV.js} +1 -1
  36. package/cdn/{listen-4jqsRSKo.js.map → listen-UqQNdlqV.js.map} +1 -1
  37. package/cdn/media/dash-video.dev.js +10 -17
  38. package/cdn/media/dash-video.dev.js.map +1 -1
  39. package/cdn/media/dash-video.js +3 -3
  40. package/cdn/media/dash-video.js.map +1 -1
  41. package/cdn/media/hls-video.dev.js +5 -28336
  42. package/cdn/media/hls-video.dev.js.map +1 -1
  43. package/cdn/media/hls-video.js +1 -40
  44. package/cdn/media/hls-video.js.map +1 -1
  45. package/cdn/media/mux-video.dev.d.ts +1 -0
  46. package/cdn/media/mux-video.dev.js +3122 -0
  47. package/cdn/media/mux-video.dev.js.map +1 -0
  48. package/cdn/media/mux-video.js +25 -0
  49. package/cdn/media/mux-video.js.map +1 -0
  50. package/cdn/media/simple-hls-video.dev.js +2286 -2094
  51. package/cdn/media/simple-hls-video.dev.js.map +1 -1
  52. package/cdn/media/simple-hls-video.js +58 -1
  53. package/cdn/media/simple-hls-video.js.map +1 -1
  54. package/cdn/media-attach-mixin-BIrlT_tz.js +2 -0
  55. package/cdn/{media-attach-mixin-D5_nfJpa.js.map → media-attach-mixin-BIrlT_tz.js.map} +1 -1
  56. package/cdn/{media-attach-mixin-U_KQB_9O.js → media-attach-mixin-Dsn4gxJA.js} +2 -2
  57. package/cdn/{media-attach-mixin-U_KQB_9O.js.map → media-attach-mixin-Dsn4gxJA.js.map} +1 -1
  58. package/cdn/{custom-media-element-DqevSVgS.js → media-props-mixin-BuVUebRp.js} +2 -2
  59. package/cdn/media-props-mixin-BuVUebRp.js.map +1 -0
  60. package/cdn/{custom-media-element-moFa3UZp.js → media-props-mixin-DxsM38Bx.js} +44 -2
  61. package/cdn/media-props-mixin-DxsM38Bx.js.map +1 -0
  62. package/cdn/{minimal-BJfleQcQ.js → minimal-CKMdOXWm.js} +1 -1
  63. package/cdn/{minimal-BJfleQcQ.js.map → minimal-CKMdOXWm.js.map} +1 -1
  64. package/cdn/{minimal-DBMdC_0I.js → minimal-fA2p2Jrn.js} +1 -1
  65. package/cdn/{minimal-DBMdC_0I.js.map → minimal-fA2p2Jrn.js.map} +1 -1
  66. package/cdn/player-Dzvu8Tzs.js +2 -0
  67. package/cdn/{player-C46h14iP.js.map → player-Dzvu8Tzs.js.map} +1 -1
  68. package/cdn/{player-CvrOeLpy.js → player-rkxd0mpV.js} +3 -3
  69. package/cdn/{player-CvrOeLpy.js.map → player-rkxd0mpV.js.map} +1 -1
  70. package/cdn/{poster-Olv5zDI_.js → poster-BPMPXyn3.js} +4 -5
  71. package/cdn/{poster-Olv5zDI_.js.map → poster-BPMPXyn3.js.map} +1 -1
  72. package/cdn/poster-DqjXzMK_.js +2 -0
  73. package/cdn/{poster-odJ4iwIv.js.map → poster-DqjXzMK_.js.map} +1 -1
  74. package/cdn/{context-Be8C5kVd.js → safe-define-D26LrTu4.js} +14 -5
  75. package/cdn/safe-define-D26LrTu4.js.map +1 -0
  76. package/cdn/safe-define-EEn8NTOG.js +14 -0
  77. package/cdn/safe-define-EEn8NTOG.js.map +1 -0
  78. package/cdn/shallow-equal-CaIo44Co.js +15 -0
  79. package/cdn/shallow-equal-CaIo44Co.js.map +1 -0
  80. package/cdn/shallow-equal-zo2IZwso.js +2 -0
  81. package/cdn/shallow-equal-zo2IZwso.js.map +1 -0
  82. package/cdn/video-minimal.dev.js +24 -13
  83. package/cdn/video-minimal.dev.js.map +1 -1
  84. package/cdn/video-minimal.js +1 -1
  85. package/cdn/video-minimal.js.map +1 -1
  86. package/cdn/video.dev.js +107 -92
  87. package/cdn/video.dev.js.map +1 -1
  88. package/cdn/video.js +1 -1
  89. package/cdn/video.js.map +1 -1
  90. package/cdn/{volume-slider-D7BOdSDF.js → volume-slider-BEXiB6_j.js} +245 -14
  91. package/cdn/volume-slider-BEXiB6_j.js.map +1 -0
  92. package/cdn/volume-slider-CQ0Yq947.js +9 -0
  93. package/cdn/volume-slider-CQ0Yq947.js.map +1 -0
  94. package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js +2 -2
  95. package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
  96. package/dist/default/_virtual/inline-css_src/define/audio/skin.js +2 -2
  97. package/dist/default/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
  98. package/dist/default/_virtual/inline-css_src/define/background/skin.js +1 -1
  99. package/dist/default/_virtual/inline-css_src/define/background/skin.js.map +1 -1
  100. package/dist/default/_virtual/inline-css_src/define/base.js +1 -1
  101. package/dist/default/_virtual/inline-css_src/define/base.js.map +1 -1
  102. package/dist/default/_virtual/inline-css_src/define/shared.js +1 -1
  103. package/dist/default/_virtual/inline-css_src/define/shared.js.map +1 -1
  104. package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js +2 -2
  105. package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
  106. package/dist/default/_virtual/inline-css_src/define/video/skin.js +2 -2
  107. package/dist/default/_virtual/inline-css_src/define/video/skin.js.map +1 -1
  108. package/dist/default/define/audio/minimal-skin.css +81 -59
  109. package/dist/default/define/audio/minimal-skin.js +5 -4
  110. package/dist/default/define/audio/minimal-skin.js.map +1 -1
  111. package/dist/default/define/audio/minimal-skin.tailwind.js +6 -5
  112. package/dist/default/define/audio/minimal-skin.tailwind.js.map +1 -1
  113. package/dist/default/define/audio/player.js +1 -2
  114. package/dist/default/define/audio/player.js.map +1 -1
  115. package/dist/default/define/audio/skin.css +54 -42
  116. package/dist/default/define/audio/skin.js +5 -4
  117. package/dist/default/define/audio/skin.js.map +1 -1
  118. package/dist/default/define/audio/skin.tailwind.js +7 -5
  119. package/dist/default/define/audio/skin.tailwind.js.map +1 -1
  120. package/dist/default/define/background/player.js +1 -2
  121. package/dist/default/define/background/player.js.map +1 -1
  122. package/dist/default/define/background/skin.js +1 -2
  123. package/dist/default/define/background/skin.js.map +1 -1
  124. package/dist/default/define/background/video.js +1 -2
  125. package/dist/default/define/media/background-video.js +1 -2
  126. package/dist/default/define/media/background-video.js.map +1 -1
  127. package/dist/default/define/media/container.js +1 -2
  128. package/dist/default/define/media/container.js.map +1 -1
  129. package/dist/default/define/media/dash-video.js +1 -2
  130. package/dist/default/define/media/dash-video.js.map +1 -1
  131. package/dist/default/define/media/hls-video.js +1 -2
  132. package/dist/default/define/media/hls-video.js.map +1 -1
  133. package/dist/default/define/media/mux-video.js +13 -0
  134. package/dist/default/define/media/mux-video.js.map +1 -0
  135. package/dist/default/define/media/native-hls-video.js +13 -0
  136. package/dist/default/define/media/native-hls-video.js.map +1 -0
  137. package/dist/default/define/media/simple-hls-video.js +3 -3
  138. package/dist/default/define/media/simple-hls-video.js.map +1 -1
  139. package/dist/default/define/safe-define.js +4 -2
  140. package/dist/default/define/safe-define.js.map +1 -1
  141. package/dist/default/define/skin-mixin.js +30 -11
  142. package/dist/default/define/skin-mixin.js.map +1 -1
  143. package/dist/default/define/ui/alert-dialog-close.js +1 -2
  144. package/dist/default/define/ui/alert-dialog-close.js.map +1 -1
  145. package/dist/default/define/ui/alert-dialog-description.js +1 -2
  146. package/dist/default/define/ui/alert-dialog-description.js.map +1 -1
  147. package/dist/default/define/ui/alert-dialog-title.js +1 -2
  148. package/dist/default/define/ui/alert-dialog-title.js.map +1 -1
  149. package/dist/default/define/ui/alert-dialog.js +1 -2
  150. package/dist/default/define/ui/alert-dialog.js.map +1 -1
  151. package/dist/default/define/ui/buffering-indicator.js +1 -2
  152. package/dist/default/define/ui/buffering-indicator.js.map +1 -1
  153. package/dist/default/define/ui/captions-button.js +3 -3
  154. package/dist/default/define/ui/captions-button.js.map +1 -1
  155. package/dist/default/define/ui/controls-group.js +1 -2
  156. package/dist/default/define/ui/controls-group.js.map +1 -1
  157. package/dist/default/define/ui/controls.js +1 -2
  158. package/dist/default/define/ui/controls.js.map +1 -1
  159. package/dist/default/define/ui/error-dialog.js +13 -0
  160. package/dist/default/define/ui/error-dialog.js.map +1 -0
  161. package/dist/default/define/ui/fullscreen-button.js +1 -2
  162. package/dist/default/define/ui/fullscreen-button.js.map +1 -1
  163. package/dist/default/define/ui/mute-button.js +1 -2
  164. package/dist/default/define/ui/mute-button.js.map +1 -1
  165. package/dist/default/define/ui/pip-button.js +1 -2
  166. package/dist/default/define/ui/pip-button.js.map +1 -1
  167. package/dist/default/define/ui/play-button.js +1 -2
  168. package/dist/default/define/ui/play-button.js.map +1 -1
  169. package/dist/default/define/ui/playback-rate-button.js +1 -2
  170. package/dist/default/define/ui/playback-rate-button.js.map +1 -1
  171. package/dist/default/define/ui/popover.js +1 -2
  172. package/dist/default/define/ui/popover.js.map +1 -1
  173. package/dist/default/define/ui/poster.js +1 -2
  174. package/dist/default/define/ui/poster.js.map +1 -1
  175. package/dist/default/define/ui/seek-button.js +1 -2
  176. package/dist/default/define/ui/seek-button.js.map +1 -1
  177. package/dist/default/define/ui/slider-buffer.js +1 -2
  178. package/dist/default/define/ui/slider-buffer.js.map +1 -1
  179. package/dist/default/define/ui/slider-fill.js +1 -2
  180. package/dist/default/define/ui/slider-fill.js.map +1 -1
  181. package/dist/default/define/ui/slider-thumb.js +1 -2
  182. package/dist/default/define/ui/slider-thumb.js.map +1 -1
  183. package/dist/default/define/ui/slider-thumbnail.js +1 -2
  184. package/dist/default/define/ui/slider-thumbnail.js.map +1 -1
  185. package/dist/default/define/ui/slider-track.js +1 -2
  186. package/dist/default/define/ui/slider-track.js.map +1 -1
  187. package/dist/default/define/ui/slider-value.js +1 -2
  188. package/dist/default/define/ui/slider-value.js.map +1 -1
  189. package/dist/default/define/ui/slider.js +1 -2
  190. package/dist/default/define/ui/slider.js.map +1 -1
  191. package/dist/default/define/ui/thumbnail.js +1 -2
  192. package/dist/default/define/ui/thumbnail.js.map +1 -1
  193. package/dist/default/define/ui/time-group.js +1 -2
  194. package/dist/default/define/ui/time-group.js.map +1 -1
  195. package/dist/default/define/ui/time-separator.js +1 -2
  196. package/dist/default/define/ui/time-separator.js.map +1 -1
  197. package/dist/default/define/ui/time-slider.js +1 -2
  198. package/dist/default/define/ui/time-slider.js.map +1 -1
  199. package/dist/default/define/ui/time.js +1 -2
  200. package/dist/default/define/ui/time.js.map +1 -1
  201. package/dist/default/define/ui/tooltip-group.js +1 -2
  202. package/dist/default/define/ui/tooltip-group.js.map +1 -1
  203. package/dist/default/define/ui/tooltip.js +1 -2
  204. package/dist/default/define/ui/tooltip.js.map +1 -1
  205. package/dist/default/define/ui/volume-slider.js +1 -2
  206. package/dist/default/define/ui/volume-slider.js.map +1 -1
  207. package/dist/default/define/video/minimal-skin.css +156 -75
  208. package/dist/default/define/video/minimal-skin.js +5 -4
  209. package/dist/default/define/video/minimal-skin.js.map +1 -1
  210. package/dist/default/define/video/minimal-skin.tailwind.js +6 -7
  211. package/dist/default/define/video/minimal-skin.tailwind.js.map +1 -1
  212. package/dist/default/define/video/player.js +1 -2
  213. package/dist/default/define/video/player.js.map +1 -1
  214. package/dist/default/define/video/skin.css +114 -58
  215. package/dist/default/define/video/skin.js +5 -4
  216. package/dist/default/define/video/skin.js.map +1 -1
  217. package/dist/default/define/video/skin.tailwind.js +6 -6
  218. package/dist/default/define/video/skin.tailwind.js.map +1 -1
  219. package/dist/default/icons/dist/render/default/index.js +1 -1
  220. package/dist/default/icons/dist/render/minimal/index.js +1 -1
  221. package/dist/default/index.js +3 -4
  222. package/dist/default/media/background-video/index.js +1 -2
  223. package/dist/default/media/background-video/index.js.map +1 -1
  224. package/dist/default/media/container-element.js +1 -2
  225. package/dist/default/media/container-element.js.map +1 -1
  226. package/dist/default/media/dash-video/index.js +4 -12
  227. package/dist/default/media/dash-video/index.js.map +1 -1
  228. package/dist/default/media/hls-video/index.js +4 -12
  229. package/dist/default/media/hls-video/index.js.map +1 -1
  230. package/dist/default/media/mux-video/index.js +18 -0
  231. package/dist/default/media/mux-video/index.js.map +1 -0
  232. package/dist/default/media/native-hls-video/index.js +18 -0
  233. package/dist/default/media/native-hls-video/index.js.map +1 -0
  234. package/dist/default/media/simple-hls-video/index.js +4 -12
  235. package/dist/default/media/simple-hls-video/index.js.map +1 -1
  236. package/dist/default/player/context.js +1 -2
  237. package/dist/default/player/context.js.map +1 -1
  238. package/dist/default/player/create-player.js +1 -2
  239. package/dist/default/player/create-player.js.map +1 -1
  240. package/dist/default/player/player-controller.js +1 -2
  241. package/dist/default/player/player-controller.js.map +1 -1
  242. package/dist/default/presets/audio.js +1 -2
  243. package/dist/default/presets/background.js +1 -2
  244. package/dist/default/presets/video.js +1 -2
  245. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +14 -18
  246. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  247. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  248. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  249. package/dist/default/skins/dist/default/default/tailwind/components/button-group.js +7 -0
  250. package/dist/default/skins/dist/default/default/tailwind/components/button-group.js.map +1 -0
  251. package/dist/default/skins/dist/default/default/tailwind/components/button.js +3 -4
  252. package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  253. package/dist/default/skins/dist/default/default/tailwind/components/controls.js +2 -3
  254. package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  255. package/dist/default/skins/dist/default/default/tailwind/components/error.js +2 -3
  256. package/dist/default/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  257. package/dist/default/skins/dist/default/default/tailwind/components/icon.js +1 -2
  258. package/dist/default/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  259. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js +2 -3
  260. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
  261. package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js +1 -1
  262. package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -1
  263. package/dist/default/skins/dist/default/default/tailwind/components/popup.js +4 -5
  264. package/dist/default/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  265. package/dist/default/skins/dist/default/default/tailwind/components/poster.js +1 -2
  266. package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  267. package/dist/default/skins/dist/default/default/tailwind/components/preview.js +2 -3
  268. package/dist/default/skins/dist/default/default/tailwind/components/preview.js.map +1 -1
  269. package/dist/default/skins/dist/default/default/tailwind/components/root.js +2 -3
  270. package/dist/default/skins/dist/default/default/tailwind/components/root.js.map +1 -1
  271. package/dist/default/skins/dist/default/default/tailwind/components/seek.js +1 -2
  272. package/dist/default/skins/dist/default/default/tailwind/components/seek.js.map +1 -1
  273. package/dist/default/skins/dist/default/default/tailwind/components/slider.js +2 -3
  274. package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  275. package/dist/default/skins/dist/default/default/tailwind/components/surface.js +2 -3
  276. package/dist/default/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  277. package/dist/default/skins/dist/default/default/tailwind/components/time.js +1 -1
  278. package/dist/default/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  279. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +25 -20
  280. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  281. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +15 -16
  282. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  283. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  284. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  285. package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js +1 -2
  286. package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
  287. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +2 -3
  288. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  289. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +2 -3
  290. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  291. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js +2 -3
  292. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
  293. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js +1 -2
  294. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  295. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js +2 -3
  296. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
  297. package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js +1 -1
  298. package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -1
  299. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js +2 -3
  300. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  301. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +1 -2
  302. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  303. package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js +2 -3
  304. package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -1
  305. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js +2 -3
  306. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
  307. package/dist/default/skins/dist/default/minimal/tailwind/components/seek.js +1 -2
  308. package/dist/default/skins/dist/default/minimal/tailwind/components/seek.js.map +1 -1
  309. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +2 -3
  310. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  311. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +5 -6
  312. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  313. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +23 -18
  314. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  315. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +1 -1
  316. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  317. package/dist/default/skins/dist/default/shared/tailwind/tooltip-state.js +1 -1
  318. package/dist/default/skins/dist/default/shared/tailwind/tooltip-state.js.map +1 -1
  319. package/dist/default/store/container-mixin.js +1 -2
  320. package/dist/default/store/container-mixin.js.map +1 -1
  321. package/dist/default/store/media-attach-mixin.js +1 -2
  322. package/dist/default/store/media-attach-mixin.js.map +1 -1
  323. package/dist/default/store/provider-mixin.js +1 -2
  324. package/dist/default/store/provider-mixin.js.map +1 -1
  325. package/dist/default/ui/alert-dialog/alert-dialog-close-element.js +1 -2
  326. package/dist/default/ui/alert-dialog/alert-dialog-close-element.js.map +1 -1
  327. package/dist/default/ui/alert-dialog/alert-dialog-description-element.js +1 -2
  328. package/dist/default/ui/alert-dialog/alert-dialog-description-element.js.map +1 -1
  329. package/dist/default/ui/alert-dialog/alert-dialog-element.js +1 -2
  330. package/dist/default/ui/alert-dialog/alert-dialog-element.js.map +1 -1
  331. package/dist/default/ui/alert-dialog/alert-dialog-title-element.js +1 -2
  332. package/dist/default/ui/alert-dialog/alert-dialog-title-element.js.map +1 -1
  333. package/dist/default/ui/alert-dialog/context.js +2 -5
  334. package/dist/default/ui/alert-dialog/context.js.map +1 -1
  335. package/dist/default/ui/buffering-indicator/buffering-indicator-element.js +1 -2
  336. package/dist/default/ui/buffering-indicator/buffering-indicator-element.js.map +1 -1
  337. package/dist/default/ui/captions-button/captions-button-element.js +1 -2
  338. package/dist/default/ui/captions-button/captions-button-element.js.map +1 -1
  339. package/dist/default/ui/context-part-element.js +1 -2
  340. package/dist/default/ui/context-part-element.js.map +1 -1
  341. package/dist/default/ui/controls/context.js +2 -5
  342. package/dist/default/ui/controls/context.js.map +1 -1
  343. package/dist/default/ui/controls/controls-element.js +1 -2
  344. package/dist/default/ui/controls/controls-element.js.map +1 -1
  345. package/dist/default/ui/controls/controls-group-element.js +1 -2
  346. package/dist/default/ui/controls/controls-group-element.js.map +1 -1
  347. package/dist/default/ui/error-dialog/error-dialog-element.js +76 -0
  348. package/dist/default/ui/error-dialog/error-dialog-element.js.map +1 -0
  349. package/dist/default/ui/fullscreen-button/fullscreen-button-element.js +1 -2
  350. package/dist/default/ui/fullscreen-button/fullscreen-button-element.js.map +1 -1
  351. package/dist/default/ui/media-button-element.js +1 -2
  352. package/dist/default/ui/media-button-element.js.map +1 -1
  353. package/dist/default/ui/media-element.js +1 -2
  354. package/dist/default/ui/media-element.js.map +1 -1
  355. package/dist/default/ui/media-ui-element.js +1 -2
  356. package/dist/default/ui/media-ui-element.js.map +1 -1
  357. package/dist/default/ui/mute-button/mute-button-element.js +1 -2
  358. package/dist/default/ui/mute-button/mute-button-element.js.map +1 -1
  359. package/dist/default/ui/pip-button/pip-button-element.js +1 -2
  360. package/dist/default/ui/pip-button/pip-button-element.js.map +1 -1
  361. package/dist/default/ui/play-button/play-button-element.js +1 -2
  362. package/dist/default/ui/play-button/play-button-element.js.map +1 -1
  363. package/dist/default/ui/playback-rate-button/playback-rate-button-element.js +1 -2
  364. package/dist/default/ui/playback-rate-button/playback-rate-button-element.js.map +1 -1
  365. package/dist/default/ui/popover/popover-element.js +1 -2
  366. package/dist/default/ui/popover/popover-element.js.map +1 -1
  367. package/dist/default/ui/poster/poster-element.js +1 -2
  368. package/dist/default/ui/poster/poster-element.js.map +1 -1
  369. package/dist/default/ui/seek-button/seek-button-element.js +1 -2
  370. package/dist/default/ui/seek-button/seek-button-element.js.map +1 -1
  371. package/dist/default/ui/slider/context.js +2 -5
  372. package/dist/default/ui/slider/context.js.map +1 -1
  373. package/dist/default/ui/slider/slider-buffer-element.js +1 -2
  374. package/dist/default/ui/slider/slider-buffer-element.js.map +1 -1
  375. package/dist/default/ui/slider/slider-element.js +1 -2
  376. package/dist/default/ui/slider/slider-element.js.map +1 -1
  377. package/dist/default/ui/slider/slider-fill-element.js +1 -2
  378. package/dist/default/ui/slider/slider-fill-element.js.map +1 -1
  379. package/dist/default/ui/slider/slider-preview-element.js +1 -2
  380. package/dist/default/ui/slider/slider-preview-element.js.map +1 -1
  381. package/dist/default/ui/slider/slider-thumb-element.js +1 -2
  382. package/dist/default/ui/slider/slider-thumb-element.js.map +1 -1
  383. package/dist/default/ui/slider/slider-thumbnail-element.js +1 -2
  384. package/dist/default/ui/slider/slider-thumbnail-element.js.map +1 -1
  385. package/dist/default/ui/slider/slider-track-element.js +1 -2
  386. package/dist/default/ui/slider/slider-track-element.js.map +1 -1
  387. package/dist/default/ui/slider/slider-value-element.js +1 -2
  388. package/dist/default/ui/slider/slider-value-element.js.map +1 -1
  389. package/dist/default/ui/thumbnail/thumbnail-element.js +1 -2
  390. package/dist/default/ui/thumbnail/thumbnail-element.js.map +1 -1
  391. package/dist/default/ui/time/time-element.js +1 -2
  392. package/dist/default/ui/time/time-element.js.map +1 -1
  393. package/dist/default/ui/time/time-group-element.js +1 -2
  394. package/dist/default/ui/time/time-group-element.js.map +1 -1
  395. package/dist/default/ui/time/time-separator-element.js +1 -2
  396. package/dist/default/ui/time/time-separator-element.js.map +1 -1
  397. package/dist/default/ui/time-slider/time-slider-element.js +1 -2
  398. package/dist/default/ui/time-slider/time-slider-element.js.map +1 -1
  399. package/dist/default/ui/tooltip/context.js +2 -5
  400. package/dist/default/ui/tooltip/context.js.map +1 -1
  401. package/dist/default/ui/tooltip/tooltip-element.js +1 -2
  402. package/dist/default/ui/tooltip/tooltip-element.js.map +1 -1
  403. package/dist/default/ui/tooltip/tooltip-group-element.js +1 -2
  404. package/dist/default/ui/tooltip/tooltip-group-element.js.map +1 -1
  405. package/dist/default/ui/volume-slider/volume-slider-element.js +1 -2
  406. package/dist/default/ui/volume-slider/volume-slider-element.js.map +1 -1
  407. package/dist/default/utils/media-props-mixin.js +44 -0
  408. package/dist/default/utils/media-props-mixin.js.map +1 -0
  409. package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js +2 -2
  410. package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
  411. package/dist/dev/_virtual/inline-css_src/define/audio/skin.js +2 -2
  412. package/dist/dev/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
  413. package/dist/dev/_virtual/inline-css_src/define/background/skin.js +1 -1
  414. package/dist/dev/_virtual/inline-css_src/define/background/skin.js.map +1 -1
  415. package/dist/dev/_virtual/inline-css_src/define/base.js +1 -1
  416. package/dist/dev/_virtual/inline-css_src/define/base.js.map +1 -1
  417. package/dist/dev/_virtual/inline-css_src/define/shared.js +1 -1
  418. package/dist/dev/_virtual/inline-css_src/define/shared.js.map +1 -1
  419. package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js +2 -2
  420. package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
  421. package/dist/dev/_virtual/inline-css_src/define/video/skin.js +2 -2
  422. package/dist/dev/_virtual/inline-css_src/define/video/skin.js.map +1 -1
  423. package/dist/dev/define/audio/minimal-skin.css +81 -59
  424. package/dist/dev/define/audio/minimal-skin.d.ts +2 -2
  425. package/dist/dev/define/audio/minimal-skin.d.ts.map +1 -1
  426. package/dist/dev/define/audio/minimal-skin.js +20 -7
  427. package/dist/dev/define/audio/minimal-skin.js.map +1 -1
  428. package/dist/dev/define/audio/minimal-skin.tailwind.d.ts +1 -1
  429. package/dist/dev/define/audio/minimal-skin.tailwind.d.ts.map +1 -1
  430. package/dist/dev/define/audio/minimal-skin.tailwind.js +19 -6
  431. package/dist/dev/define/audio/minimal-skin.tailwind.js.map +1 -1
  432. package/dist/dev/define/audio/player.js +1 -2
  433. package/dist/dev/define/audio/player.js.map +1 -1
  434. package/dist/dev/define/audio/skin.css +54 -42
  435. package/dist/dev/define/audio/skin.d.ts +2 -2
  436. package/dist/dev/define/audio/skin.d.ts.map +1 -1
  437. package/dist/dev/define/audio/skin.js +69 -52
  438. package/dist/dev/define/audio/skin.js.map +1 -1
  439. package/dist/dev/define/audio/skin.tailwind.d.ts +1 -1
  440. package/dist/dev/define/audio/skin.tailwind.d.ts.map +1 -1
  441. package/dist/dev/define/audio/skin.tailwind.js +71 -53
  442. package/dist/dev/define/audio/skin.tailwind.js.map +1 -1
  443. package/dist/dev/define/background/player.js +1 -2
  444. package/dist/dev/define/background/player.js.map +1 -1
  445. package/dist/dev/define/background/skin.js +1 -2
  446. package/dist/dev/define/background/skin.js.map +1 -1
  447. package/dist/dev/define/background/video.js +1 -2
  448. package/dist/dev/define/media/background-video.js +1 -2
  449. package/dist/dev/define/media/background-video.js.map +1 -1
  450. package/dist/dev/define/media/container.js +1 -2
  451. package/dist/dev/define/media/container.js.map +1 -1
  452. package/dist/dev/define/media/dash-video.js +1 -2
  453. package/dist/dev/define/media/dash-video.js.map +1 -1
  454. package/dist/dev/define/media/hls-video.js +1 -2
  455. package/dist/dev/define/media/hls-video.js.map +1 -1
  456. package/dist/dev/define/media/mux-video.d.ts +14 -0
  457. package/dist/dev/define/media/mux-video.d.ts.map +1 -0
  458. package/dist/dev/define/media/mux-video.js +13 -0
  459. package/dist/dev/define/media/mux-video.js.map +1 -0
  460. package/dist/dev/define/media/native-hls-video.d.ts +14 -0
  461. package/dist/dev/define/media/native-hls-video.d.ts.map +1 -0
  462. package/dist/dev/define/media/native-hls-video.js +13 -0
  463. package/dist/dev/define/media/native-hls-video.js.map +1 -0
  464. package/dist/dev/define/media/simple-hls-video.d.ts.map +1 -1
  465. package/dist/dev/define/media/simple-hls-video.js +3 -3
  466. package/dist/dev/define/media/simple-hls-video.js.map +1 -1
  467. package/dist/dev/define/safe-define.js +4 -2
  468. package/dist/dev/define/safe-define.js.map +1 -1
  469. package/dist/dev/define/skin-mixin.d.ts +4 -3
  470. package/dist/dev/define/skin-mixin.d.ts.map +1 -1
  471. package/dist/dev/define/skin-mixin.js +30 -11
  472. package/dist/dev/define/skin-mixin.js.map +1 -1
  473. package/dist/dev/define/ui/alert-dialog-close.js +1 -2
  474. package/dist/dev/define/ui/alert-dialog-close.js.map +1 -1
  475. package/dist/dev/define/ui/alert-dialog-description.js +1 -2
  476. package/dist/dev/define/ui/alert-dialog-description.js.map +1 -1
  477. package/dist/dev/define/ui/alert-dialog-title.js +1 -2
  478. package/dist/dev/define/ui/alert-dialog-title.js.map +1 -1
  479. package/dist/dev/define/ui/alert-dialog.js +1 -2
  480. package/dist/dev/define/ui/alert-dialog.js.map +1 -1
  481. package/dist/dev/define/ui/buffering-indicator.js +1 -2
  482. package/dist/dev/define/ui/buffering-indicator.js.map +1 -1
  483. package/dist/dev/define/ui/captions-button.d.ts.map +1 -1
  484. package/dist/dev/define/ui/captions-button.js +3 -3
  485. package/dist/dev/define/ui/captions-button.js.map +1 -1
  486. package/dist/dev/define/ui/controls-group.js +1 -2
  487. package/dist/dev/define/ui/controls-group.js.map +1 -1
  488. package/dist/dev/define/ui/controls.js +1 -2
  489. package/dist/dev/define/ui/controls.js.map +1 -1
  490. package/dist/dev/define/ui/error-dialog.d.ts +9 -0
  491. package/dist/dev/define/ui/error-dialog.d.ts.map +1 -0
  492. package/dist/dev/define/ui/error-dialog.js +13 -0
  493. package/dist/dev/define/ui/error-dialog.js.map +1 -0
  494. package/dist/dev/define/ui/fullscreen-button.js +1 -2
  495. package/dist/dev/define/ui/fullscreen-button.js.map +1 -1
  496. package/dist/dev/define/ui/mute-button.js +1 -2
  497. package/dist/dev/define/ui/mute-button.js.map +1 -1
  498. package/dist/dev/define/ui/pip-button.js +1 -2
  499. package/dist/dev/define/ui/pip-button.js.map +1 -1
  500. package/dist/dev/define/ui/play-button.js +1 -2
  501. package/dist/dev/define/ui/play-button.js.map +1 -1
  502. package/dist/dev/define/ui/playback-rate-button.js +1 -2
  503. package/dist/dev/define/ui/playback-rate-button.js.map +1 -1
  504. package/dist/dev/define/ui/popover.js +1 -2
  505. package/dist/dev/define/ui/popover.js.map +1 -1
  506. package/dist/dev/define/ui/poster.js +1 -2
  507. package/dist/dev/define/ui/poster.js.map +1 -1
  508. package/dist/dev/define/ui/seek-button.js +1 -2
  509. package/dist/dev/define/ui/seek-button.js.map +1 -1
  510. package/dist/dev/define/ui/slider-buffer.js +1 -2
  511. package/dist/dev/define/ui/slider-buffer.js.map +1 -1
  512. package/dist/dev/define/ui/slider-fill.js +1 -2
  513. package/dist/dev/define/ui/slider-fill.js.map +1 -1
  514. package/dist/dev/define/ui/slider-thumb.js +1 -2
  515. package/dist/dev/define/ui/slider-thumb.js.map +1 -1
  516. package/dist/dev/define/ui/slider-thumbnail.js +1 -2
  517. package/dist/dev/define/ui/slider-thumbnail.js.map +1 -1
  518. package/dist/dev/define/ui/slider-track.js +1 -2
  519. package/dist/dev/define/ui/slider-track.js.map +1 -1
  520. package/dist/dev/define/ui/slider-value.js +1 -2
  521. package/dist/dev/define/ui/slider-value.js.map +1 -1
  522. package/dist/dev/define/ui/slider.js +1 -2
  523. package/dist/dev/define/ui/slider.js.map +1 -1
  524. package/dist/dev/define/ui/thumbnail.js +1 -2
  525. package/dist/dev/define/ui/thumbnail.js.map +1 -1
  526. package/dist/dev/define/ui/time-group.js +1 -2
  527. package/dist/dev/define/ui/time-group.js.map +1 -1
  528. package/dist/dev/define/ui/time-separator.js +1 -2
  529. package/dist/dev/define/ui/time-separator.js.map +1 -1
  530. package/dist/dev/define/ui/time-slider.js +1 -2
  531. package/dist/dev/define/ui/time-slider.js.map +1 -1
  532. package/dist/dev/define/ui/time.js +1 -2
  533. package/dist/dev/define/ui/time.js.map +1 -1
  534. package/dist/dev/define/ui/tooltip-group.js +1 -2
  535. package/dist/dev/define/ui/tooltip-group.js.map +1 -1
  536. package/dist/dev/define/ui/tooltip.js +1 -2
  537. package/dist/dev/define/ui/tooltip.js.map +1 -1
  538. package/dist/dev/define/ui/volume-slider.js +1 -2
  539. package/dist/dev/define/ui/volume-slider.js.map +1 -1
  540. package/dist/dev/define/video/minimal-skin.css +156 -75
  541. package/dist/dev/define/video/minimal-skin.d.ts +2 -2
  542. package/dist/dev/define/video/minimal-skin.d.ts.map +1 -1
  543. package/dist/dev/define/video/minimal-skin.js +21 -8
  544. package/dist/dev/define/video/minimal-skin.js.map +1 -1
  545. package/dist/dev/define/video/minimal-skin.tailwind.d.ts +1 -1
  546. package/dist/dev/define/video/minimal-skin.tailwind.d.ts.map +1 -1
  547. package/dist/dev/define/video/minimal-skin.tailwind.js +22 -11
  548. package/dist/dev/define/video/minimal-skin.tailwind.js.map +1 -1
  549. package/dist/dev/define/video/player.js +1 -2
  550. package/dist/dev/define/video/player.js.map +1 -1
  551. package/dist/dev/define/video/skin.css +114 -58
  552. package/dist/dev/define/video/skin.d.ts +2 -2
  553. package/dist/dev/define/video/skin.d.ts.map +1 -1
  554. package/dist/dev/define/video/skin.js +103 -86
  555. package/dist/dev/define/video/skin.js.map +1 -1
  556. package/dist/dev/define/video/skin.tailwind.d.ts +1 -1
  557. package/dist/dev/define/video/skin.tailwind.d.ts.map +1 -1
  558. package/dist/dev/define/video/skin.tailwind.js +104 -88
  559. package/dist/dev/define/video/skin.tailwind.js.map +1 -1
  560. package/dist/dev/icons/dist/render/default/index.js +1 -1
  561. package/dist/dev/icons/dist/render/minimal/index.js +1 -1
  562. package/dist/dev/index.d.ts +3 -2
  563. package/dist/dev/index.js +3 -4
  564. package/dist/dev/media/background-video/index.js +1 -2
  565. package/dist/dev/media/background-video/index.js.map +1 -1
  566. package/dist/dev/media/container-element.js +1 -2
  567. package/dist/dev/media/container-element.js.map +1 -1
  568. package/dist/dev/media/dash-video/index.d.ts +0 -2
  569. package/dist/dev/media/dash-video/index.d.ts.map +1 -1
  570. package/dist/dev/media/dash-video/index.js +4 -12
  571. package/dist/dev/media/dash-video/index.js.map +1 -1
  572. package/dist/dev/media/hls-video/index.d.ts +0 -2
  573. package/dist/dev/media/hls-video/index.d.ts.map +1 -1
  574. package/dist/dev/media/hls-video/index.js +4 -12
  575. package/dist/dev/media/hls-video/index.js.map +1 -1
  576. package/dist/dev/media/mux-video/index.d.ts +11 -0
  577. package/dist/dev/media/mux-video/index.d.ts.map +1 -0
  578. package/dist/dev/media/mux-video/index.js +18 -0
  579. package/dist/dev/media/mux-video/index.js.map +1 -0
  580. package/dist/dev/media/native-hls-video/index.d.ts +11 -0
  581. package/dist/dev/media/native-hls-video/index.d.ts.map +1 -0
  582. package/dist/dev/media/native-hls-video/index.js +18 -0
  583. package/dist/dev/media/native-hls-video/index.js.map +1 -0
  584. package/dist/dev/media/simple-hls-video/index.d.ts +0 -2
  585. package/dist/dev/media/simple-hls-video/index.d.ts.map +1 -1
  586. package/dist/dev/media/simple-hls-video/index.js +4 -12
  587. package/dist/dev/media/simple-hls-video/index.js.map +1 -1
  588. package/dist/dev/player/context.js +1 -2
  589. package/dist/dev/player/context.js.map +1 -1
  590. package/dist/dev/player/create-player.js +1 -2
  591. package/dist/dev/player/create-player.js.map +1 -1
  592. package/dist/dev/player/player-controller.js +1 -2
  593. package/dist/dev/player/player-controller.js.map +1 -1
  594. package/dist/dev/presets/audio.js +1 -2
  595. package/dist/dev/presets/background.js +1 -2
  596. package/dist/dev/presets/video.js +1 -2
  597. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +14 -18
  598. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  599. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  600. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  601. package/dist/dev/skins/dist/default/default/tailwind/components/button-group.js +7 -0
  602. package/dist/dev/skins/dist/default/default/tailwind/components/button-group.js.map +1 -0
  603. package/dist/dev/skins/dist/default/default/tailwind/components/button.js +3 -4
  604. package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  605. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +2 -3
  606. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  607. package/dist/dev/skins/dist/default/default/tailwind/components/error.js +2 -3
  608. package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  609. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js +1 -2
  610. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  611. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js +2 -3
  612. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
  613. package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js +1 -1
  614. package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -1
  615. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js +4 -5
  616. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  617. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +1 -2
  618. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  619. package/dist/dev/skins/dist/default/default/tailwind/components/preview.js +2 -3
  620. package/dist/dev/skins/dist/default/default/tailwind/components/preview.js.map +1 -1
  621. package/dist/dev/skins/dist/default/default/tailwind/components/root.js +2 -3
  622. package/dist/dev/skins/dist/default/default/tailwind/components/root.js.map +1 -1
  623. package/dist/dev/skins/dist/default/default/tailwind/components/seek.js +1 -2
  624. package/dist/dev/skins/dist/default/default/tailwind/components/seek.js.map +1 -1
  625. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +2 -3
  626. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  627. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js +2 -3
  628. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  629. package/dist/dev/skins/dist/default/default/tailwind/components/time.js +1 -1
  630. package/dist/dev/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  631. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +25 -20
  632. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  633. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +15 -16
  634. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  635. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  636. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  637. package/dist/dev/skins/dist/default/minimal/tailwind/components/button-group.js +1 -2
  638. package/dist/dev/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
  639. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +2 -3
  640. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  641. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +2 -3
  642. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  643. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js +2 -3
  644. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
  645. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js +1 -2
  646. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  647. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js +2 -3
  648. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
  649. package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js +1 -1
  650. package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -1
  651. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js +2 -3
  652. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  653. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +1 -2
  654. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  655. package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js +2 -3
  656. package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -1
  657. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js +2 -3
  658. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
  659. package/dist/dev/skins/dist/default/minimal/tailwind/components/seek.js +1 -2
  660. package/dist/dev/skins/dist/default/minimal/tailwind/components/seek.js.map +1 -1
  661. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +2 -3
  662. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  663. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js +5 -6
  664. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  665. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +23 -18
  666. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  667. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +1 -1
  668. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  669. package/dist/dev/skins/dist/default/shared/tailwind/tooltip-state.js +1 -1
  670. package/dist/dev/skins/dist/default/shared/tailwind/tooltip-state.js.map +1 -1
  671. package/dist/dev/store/container-mixin.js +1 -2
  672. package/dist/dev/store/container-mixin.js.map +1 -1
  673. package/dist/dev/store/media-attach-mixin.js +1 -2
  674. package/dist/dev/store/media-attach-mixin.js.map +1 -1
  675. package/dist/dev/store/provider-mixin.js +1 -2
  676. package/dist/dev/store/provider-mixin.js.map +1 -1
  677. package/dist/dev/ui/alert-dialog/alert-dialog-close-element.js +1 -2
  678. package/dist/dev/ui/alert-dialog/alert-dialog-close-element.js.map +1 -1
  679. package/dist/dev/ui/alert-dialog/alert-dialog-description-element.js +1 -2
  680. package/dist/dev/ui/alert-dialog/alert-dialog-description-element.js.map +1 -1
  681. package/dist/dev/ui/alert-dialog/alert-dialog-element.js +1 -2
  682. package/dist/dev/ui/alert-dialog/alert-dialog-element.js.map +1 -1
  683. package/dist/dev/ui/alert-dialog/alert-dialog-title-element.js +1 -2
  684. package/dist/dev/ui/alert-dialog/alert-dialog-title-element.js.map +1 -1
  685. package/dist/dev/ui/alert-dialog/context.js +2 -5
  686. package/dist/dev/ui/alert-dialog/context.js.map +1 -1
  687. package/dist/dev/ui/buffering-indicator/buffering-indicator-element.js +1 -2
  688. package/dist/dev/ui/buffering-indicator/buffering-indicator-element.js.map +1 -1
  689. package/dist/dev/ui/captions-button/captions-button-element.js +1 -2
  690. package/dist/dev/ui/captions-button/captions-button-element.js.map +1 -1
  691. package/dist/dev/ui/context-part-element.js +1 -2
  692. package/dist/dev/ui/context-part-element.js.map +1 -1
  693. package/dist/dev/ui/controls/context.js +2 -5
  694. package/dist/dev/ui/controls/context.js.map +1 -1
  695. package/dist/dev/ui/controls/controls-element.js +1 -2
  696. package/dist/dev/ui/controls/controls-element.js.map +1 -1
  697. package/dist/dev/ui/controls/controls-group-element.js +1 -2
  698. package/dist/dev/ui/controls/controls-group-element.js.map +1 -1
  699. package/dist/dev/ui/error-dialog/error-dialog-element.d.ts +16 -0
  700. package/dist/dev/ui/error-dialog/error-dialog-element.d.ts.map +1 -0
  701. package/dist/dev/ui/error-dialog/error-dialog-element.js +76 -0
  702. package/dist/dev/ui/error-dialog/error-dialog-element.js.map +1 -0
  703. package/dist/dev/ui/fullscreen-button/fullscreen-button-element.js +1 -2
  704. package/dist/dev/ui/fullscreen-button/fullscreen-button-element.js.map +1 -1
  705. package/dist/dev/ui/media-button-element.js +1 -2
  706. package/dist/dev/ui/media-button-element.js.map +1 -1
  707. package/dist/dev/ui/media-element.js +1 -2
  708. package/dist/dev/ui/media-element.js.map +1 -1
  709. package/dist/dev/ui/media-ui-element.js +1 -2
  710. package/dist/dev/ui/media-ui-element.js.map +1 -1
  711. package/dist/dev/ui/mute-button/mute-button-element.js +1 -2
  712. package/dist/dev/ui/mute-button/mute-button-element.js.map +1 -1
  713. package/dist/dev/ui/pip-button/pip-button-element.js +1 -2
  714. package/dist/dev/ui/pip-button/pip-button-element.js.map +1 -1
  715. package/dist/dev/ui/play-button/play-button-element.js +1 -2
  716. package/dist/dev/ui/play-button/play-button-element.js.map +1 -1
  717. package/dist/dev/ui/playback-rate-button/playback-rate-button-element.js +1 -2
  718. package/dist/dev/ui/playback-rate-button/playback-rate-button-element.js.map +1 -1
  719. package/dist/dev/ui/popover/popover-element.js +1 -2
  720. package/dist/dev/ui/popover/popover-element.js.map +1 -1
  721. package/dist/dev/ui/poster/poster-element.js +1 -2
  722. package/dist/dev/ui/poster/poster-element.js.map +1 -1
  723. package/dist/dev/ui/seek-button/seek-button-element.js +1 -2
  724. package/dist/dev/ui/seek-button/seek-button-element.js.map +1 -1
  725. package/dist/dev/ui/slider/context.js +2 -5
  726. package/dist/dev/ui/slider/context.js.map +1 -1
  727. package/dist/dev/ui/slider/slider-buffer-element.js +1 -2
  728. package/dist/dev/ui/slider/slider-buffer-element.js.map +1 -1
  729. package/dist/dev/ui/slider/slider-element.js +1 -2
  730. package/dist/dev/ui/slider/slider-element.js.map +1 -1
  731. package/dist/dev/ui/slider/slider-fill-element.js +1 -2
  732. package/dist/dev/ui/slider/slider-fill-element.js.map +1 -1
  733. package/dist/dev/ui/slider/slider-preview-element.js +1 -2
  734. package/dist/dev/ui/slider/slider-preview-element.js.map +1 -1
  735. package/dist/dev/ui/slider/slider-thumb-element.js +1 -2
  736. package/dist/dev/ui/slider/slider-thumb-element.js.map +1 -1
  737. package/dist/dev/ui/slider/slider-thumbnail-element.js +1 -2
  738. package/dist/dev/ui/slider/slider-thumbnail-element.js.map +1 -1
  739. package/dist/dev/ui/slider/slider-track-element.js +1 -2
  740. package/dist/dev/ui/slider/slider-track-element.js.map +1 -1
  741. package/dist/dev/ui/slider/slider-value-element.js +1 -2
  742. package/dist/dev/ui/slider/slider-value-element.js.map +1 -1
  743. package/dist/dev/ui/thumbnail/thumbnail-element.js +1 -2
  744. package/dist/dev/ui/thumbnail/thumbnail-element.js.map +1 -1
  745. package/dist/dev/ui/time/time-element.js +1 -2
  746. package/dist/dev/ui/time/time-element.js.map +1 -1
  747. package/dist/dev/ui/time/time-group-element.js +1 -2
  748. package/dist/dev/ui/time/time-group-element.js.map +1 -1
  749. package/dist/dev/ui/time/time-separator-element.js +1 -2
  750. package/dist/dev/ui/time/time-separator-element.js.map +1 -1
  751. package/dist/dev/ui/time-slider/time-slider-element.js +1 -2
  752. package/dist/dev/ui/time-slider/time-slider-element.js.map +1 -1
  753. package/dist/dev/ui/tooltip/context.js +2 -5
  754. package/dist/dev/ui/tooltip/context.js.map +1 -1
  755. package/dist/dev/ui/tooltip/tooltip-element.js +1 -2
  756. package/dist/dev/ui/tooltip/tooltip-element.js.map +1 -1
  757. package/dist/dev/ui/tooltip/tooltip-group-element.js +1 -2
  758. package/dist/dev/ui/tooltip/tooltip-group-element.js.map +1 -1
  759. package/dist/dev/ui/volume-slider/volume-slider-element.js +1 -2
  760. package/dist/dev/ui/volume-slider/volume-slider-element.js.map +1 -1
  761. package/dist/dev/utils/media-props-mixin.js +44 -0
  762. package/dist/dev/utils/media-props-mixin.js.map +1 -0
  763. package/package.json +10 -10
  764. package/cdn/context-Be8C5kVd.js.map +0 -1
  765. package/cdn/context-CUBywtsB.js +0 -14
  766. package/cdn/context-CUBywtsB.js.map +0 -1
  767. package/cdn/create-player-AcfnN3li.js.map +0 -1
  768. package/cdn/create-player-s_qISCpw.js +0 -7
  769. package/cdn/create-player-s_qISCpw.js.map +0 -1
  770. package/cdn/custom-media-element-DqevSVgS.js.map +0 -1
  771. package/cdn/custom-media-element-moFa3UZp.js.map +0 -1
  772. package/cdn/delegate-CzAcT1xm.js.map +0 -1
  773. package/cdn/delegate-Uc-6tQDR.js +0 -2
  774. package/cdn/delegate-Uc-6tQDR.js.map +0 -1
  775. package/cdn/media-attach-mixin-D5_nfJpa.js +0 -2
  776. package/cdn/player-C46h14iP.js +0 -2
  777. package/cdn/poster-odJ4iwIv.js +0 -2
  778. package/cdn/predicate-BG-dj_kF.js +0 -26
  779. package/cdn/predicate-BG-dj_kF.js.map +0 -1
  780. package/cdn/predicate-Y9jDHLpX.js +0 -2
  781. package/cdn/predicate-Y9jDHLpX.js.map +0 -1
  782. package/cdn/safe-define-B8lHgj_K.js +0 -9
  783. package/cdn/safe-define-B8lHgj_K.js.map +0 -1
  784. package/cdn/safe-define-GrHW3P9e.js +0 -2
  785. package/cdn/safe-define-GrHW3P9e.js.map +0 -1
  786. package/cdn/volume-slider-D7BOdSDF.js.map +0 -1
  787. package/cdn/volume-slider-DPeFF5tt.js +0 -8
  788. package/cdn/volume-slider-DPeFF5tt.js.map +0 -1
@@ -2,7 +2,6 @@ import { MediaElement } from "../media-element.js";
2
2
  import { alertDialogContext } from "./context.js";
3
3
  import { applyElementProps, applyStateDataAttrs, createButton } from "@videojs/core/dom";
4
4
  import { ContextConsumer } from "@videojs/element/context";
5
-
6
5
  //#region src/ui/alert-dialog/alert-dialog-close-element.ts
7
6
  var AlertDialogCloseElement = class extends MediaElement {
8
7
  constructor(..._args) {
@@ -40,7 +39,7 @@ var AlertDialogCloseElement = class extends MediaElement {
40
39
  if (ctx) applyStateDataAttrs(this, ctx.state, ctx.stateAttrMap);
41
40
  }
42
41
  };
43
-
44
42
  //#endregion
45
43
  export { AlertDialogCloseElement };
44
+
46
45
  //# sourceMappingURL=alert-dialog-close-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alert-dialog-close-element.js","names":["#ctx","#disconnect"],"sources":["../../../../src/ui/alert-dialog/alert-dialog-close-element.ts"],"sourcesContent":["import { applyElementProps, applyStateDataAttrs, createButton } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextConsumer } from '@videojs/element/context';\n\nimport { MediaElement } from '../media-element';\nimport { alertDialogContext } from './context';\n\nexport class AlertDialogCloseElement extends MediaElement {\n static readonly tagName = 'media-alert-dialog-close';\n\n static override properties = {\n disabled: { type: Boolean },\n } satisfies PropertyDeclarationMap<'disabled'>;\n\n disabled = false;\n\n readonly #ctx = new ContextConsumer(this, { context: alertDialogContext, subscribe: true });\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.#disconnect = new AbortController();\n\n const buttonProps = createButton({\n onActivate: () => this.#ctx.value?.close(),\n isDisabled: () => this.disabled,\n });\n\n applyElementProps(this, buttonProps, { signal: this.#disconnect.signal });\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n const ctx = this.#ctx.value;\n if (ctx) applyStateDataAttrs(this, ctx.state, ctx.stateAttrMap);\n }\n}\n"],"mappings":";;;;;;AAOA,IAAa,0BAAb,cAA6C,aAAa;;;kBAO7C;;;iBANe;;;oBAEG,EAC3B,UAAU,EAAE,MAAM,SAAS,EAC5B;;CAID,CAASA,MAAO,IAAI,gBAAgB,MAAM;EAAE,SAAS;EAAoB,WAAW;EAAM,CAAC;CAE3F,cAAsC;CAEtC,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AACzB,QAAKC,aAAc,IAAI,iBAAiB;EAExC,MAAM,cAAc,aAAa;GAC/B,kBAAkB,MAAKD,IAAK,OAAO,OAAO;GAC1C,kBAAkB,KAAK;GACxB,CAAC;AAEF,oBAAkB,MAAM,aAAa,EAAE,QAAQ,MAAKC,WAAY,QAAQ,CAAC;;CAG3E,AAAS,uBAA6B;AACpC,QAAM,sBAAsB;AAC5B,QAAKA,YAAa,OAAO;AACzB,QAAKA,aAAc;;CAGrB,AAAmB,OAAO,UAAgC;AACxD,QAAM,OAAO,SAAS;EACtB,MAAM,MAAM,MAAKD,IAAK;AACtB,MAAI,IAAK,qBAAoB,MAAM,IAAI,OAAO,IAAI,aAAa"}
1
+ {"version":3,"file":"alert-dialog-close-element.js","names":["#ctx","#disconnect"],"sources":["../../../../src/ui/alert-dialog/alert-dialog-close-element.ts"],"sourcesContent":["import { applyElementProps, applyStateDataAttrs, createButton } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextConsumer } from '@videojs/element/context';\n\nimport { MediaElement } from '../media-element';\nimport { alertDialogContext } from './context';\n\nexport class AlertDialogCloseElement extends MediaElement {\n static readonly tagName = 'media-alert-dialog-close';\n\n static override properties = {\n disabled: { type: Boolean },\n } satisfies PropertyDeclarationMap<'disabled'>;\n\n disabled = false;\n\n readonly #ctx = new ContextConsumer(this, { context: alertDialogContext, subscribe: true });\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.#disconnect = new AbortController();\n\n const buttonProps = createButton({\n onActivate: () => this.#ctx.value?.close(),\n isDisabled: () => this.disabled,\n });\n\n applyElementProps(this, buttonProps, { signal: this.#disconnect.signal });\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n const ctx = this.#ctx.value;\n if (ctx) applyStateDataAttrs(this, ctx.state, ctx.stateAttrMap);\n }\n}\n"],"mappings":";;;;;AAOA,IAAa,0BAAb,cAA6C,aAAa;;;kBAO7C;;;iBANe;;;oBAEG,EAC3B,UAAU,EAAE,MAAM,SAAS,EAC5B;;CAID,OAAgB,IAAI,gBAAgB,MAAM;EAAE,SAAS;EAAoB,WAAW;EAAM,CAAC;CAE3F,cAAsC;CAEtC,oBAAmC;AACjC,QAAM,mBAAmB;AACzB,QAAA,aAAmB,IAAI,iBAAiB;EAExC,MAAM,cAAc,aAAa;GAC/B,kBAAkB,MAAA,IAAU,OAAO,OAAO;GAC1C,kBAAkB,KAAK;GACxB,CAAC;AAEF,oBAAkB,MAAM,aAAa,EAAE,QAAQ,MAAA,WAAiB,QAAQ,CAAC;;CAG3E,uBAAsC;AACpC,QAAM,sBAAsB;AAC5B,QAAA,YAAkB,OAAO;AACzB,QAAA,aAAmB;;CAGrB,OAA0B,UAAgC;AACxD,QAAM,OAAO,SAAS;EACtB,MAAM,MAAM,MAAA,IAAU;AACtB,MAAI,IAAK,qBAAoB,MAAM,IAAI,OAAO,IAAI,aAAa"}
@@ -1,7 +1,6 @@
1
1
  import { alertDialogContext } from "./context.js";
2
2
  import { ContextPartElement } from "../context-part-element.js";
3
3
  import { ContextConsumer } from "@videojs/element/context";
4
-
5
4
  //#region src/ui/alert-dialog/alert-dialog-description-element.ts
6
5
  var AlertDialogDescriptionElement = class extends ContextPartElement {
7
6
  constructor(..._args) {
@@ -20,7 +19,7 @@ var AlertDialogDescriptionElement = class extends ContextPartElement {
20
19
  if (descriptionId) this.id = descriptionId;
21
20
  }
22
21
  };
23
-
24
22
  //#endregion
25
23
  export { AlertDialogDescriptionElement };
24
+
26
25
  //# sourceMappingURL=alert-dialog-description-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alert-dialog-description-element.js","names":[],"sources":["../../../../src/ui/alert-dialog/alert-dialog-description-element.ts"],"sourcesContent":["import type { AlertDialogState } from '@videojs/core';\nimport type { PropertyValues } from '@videojs/element';\nimport { ContextConsumer } from '@videojs/element/context';\n\nimport { ContextPartElement } from '../context-part-element';\nimport { alertDialogContext } from './context';\n\nexport class AlertDialogDescriptionElement extends ContextPartElement<AlertDialogState> {\n static readonly tagName = 'media-alert-dialog-description';\n\n protected readonly consumer = new ContextConsumer(this, { context: alertDialogContext, subscribe: true });\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n const descriptionId = this.consumer.value?.state.descriptionId;\n if (descriptionId) this.id = descriptionId;\n }\n}\n"],"mappings":";;;;;AAOA,IAAa,gCAAb,cAAmD,mBAAqC;;;kBAGxD,IAAI,gBAAgB,MAAM;GAAE,SAAS;GAAoB,WAAW;GAAM,CAAC;;;iBAF/E;;CAI1B,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EACrB,MAAM,gBAAgB,KAAK,SAAS,OAAO,MAAM;AACjD,MAAI,cAAe,MAAK,KAAK"}
1
+ {"version":3,"file":"alert-dialog-description-element.js","names":[],"sources":["../../../../src/ui/alert-dialog/alert-dialog-description-element.ts"],"sourcesContent":["import type { AlertDialogState } from '@videojs/core';\nimport type { PropertyValues } from '@videojs/element';\nimport { ContextConsumer } from '@videojs/element/context';\n\nimport { ContextPartElement } from '../context-part-element';\nimport { alertDialogContext } from './context';\n\nexport class AlertDialogDescriptionElement extends ContextPartElement<AlertDialogState> {\n static readonly tagName = 'media-alert-dialog-description';\n\n protected readonly consumer = new ContextConsumer(this, { context: alertDialogContext, subscribe: true });\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n const descriptionId = this.consumer.value?.state.descriptionId;\n if (descriptionId) this.id = descriptionId;\n }\n}\n"],"mappings":";;;;AAOA,IAAa,gCAAb,cAAmD,mBAAqC;;;kBAGxD,IAAI,gBAAgB,MAAM;GAAE,SAAS;GAAoB,WAAW;GAAM,CAAC;;;iBAF/E;;CAI1B,OAA0B,SAA+B;AACvD,QAAM,OAAO,QAAQ;EACrB,MAAM,gBAAgB,KAAK,SAAS,OAAO,MAAM;AACjD,MAAI,cAAe,MAAK,KAAK"}
@@ -4,7 +4,6 @@ import { AlertDialogCore, AlertDialogDataAttrs } from "@videojs/core";
4
4
  import { applyElementProps, applyStateDataAttrs, createAlertDialog, createTransition } from "@videojs/core/dom";
5
5
  import { ContextProvider } from "@videojs/element/context";
6
6
  import { SnapshotController } from "@videojs/store/html";
7
-
8
7
  //#region src/ui/alert-dialog/alert-dialog-element.ts
9
8
  let idCounter = 0;
10
9
  var AlertDialogElement = class extends MediaElement {
@@ -67,7 +66,7 @@ var AlertDialogElement = class extends MediaElement {
67
66
  });
68
67
  }
69
68
  };
70
-
71
69
  //#endregion
72
70
  export { AlertDialogElement };
71
+
73
72
  //# sourceMappingURL=alert-dialog-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alert-dialog-element.js","names":["#core","#provider","#titleId","#descriptionId","#dialog","#snapshot"],"sources":["../../../../src/ui/alert-dialog/alert-dialog-element.ts"],"sourcesContent":["import { AlertDialogCore, AlertDialogDataAttrs, type AlertDialogInput } from '@videojs/core';\nimport {\n type AlertDialogApi,\n applyElementProps,\n applyStateDataAttrs,\n createAlertDialog,\n createTransition,\n} from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport { SnapshotController } from '@videojs/store/html';\n\nimport { MediaElement } from '../media-element';\nimport { alertDialogContext } from './context';\n\nlet idCounter = 0;\n\nexport class AlertDialogElement extends MediaElement {\n static readonly tagName = 'media-alert-dialog';\n\n static override properties = {\n open: { type: Boolean },\n } satisfies PropertyDeclarationMap<'open'>;\n\n open = false;\n\n readonly #core = new AlertDialogCore();\n readonly #provider = new ContextProvider(this, { context: alertDialogContext });\n readonly #titleId = `vjs-alert-dialog-title-${idCounter++}`;\n readonly #descriptionId = `vjs-alert-dialog-desc-${idCounter++}`;\n\n #dialog: AlertDialogApi | null = null;\n #snapshot: SnapshotController<AlertDialogInput> | null = null;\n\n constructor() {\n super();\n this.#core.setTitleId(this.#titleId);\n this.#core.setDescriptionId(this.#descriptionId);\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#dialog = createAlertDialog({\n transition: createTransition(),\n onOpenChange: (nextOpen: boolean) => {\n this.open = nextOpen;\n this.dispatchEvent(new CustomEvent('open-change', { detail: { open: nextOpen } }));\n },\n });\n\n // Register self as the dialog element.\n this.#dialog.setElement(this);\n\n if (this.#snapshot) {\n this.#snapshot.track(this.#dialog.input);\n } else {\n this.#snapshot = new SnapshotController(this, this.#dialog.input);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#dialog?.destroy();\n this.#dialog = null;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n\n // Sync controlled open state.\n if (this.#dialog && changed.has('open')) {\n const { active: inputOpen } = this.#dialog.input.current;\n if (this.open !== inputOpen) {\n if (this.open) {\n this.#dialog.open();\n } else {\n this.#dialog.close();\n }\n }\n }\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n if (!this.#dialog) return;\n\n const input = this.#dialog.input.current;\n this.#core.setInput(input);\n const state = this.#core.getState();\n\n applyElementProps(this, this.#core.getAttrs(state));\n applyStateDataAttrs(this, state, AlertDialogDataAttrs);\n\n this.#provider.setValue({\n state,\n stateAttrMap: AlertDialogDataAttrs,\n close: () => this.#dialog?.close(),\n });\n }\n}\n"],"mappings":";;;;;;;;AAeA,IAAI,YAAY;AAEhB,IAAa,qBAAb,cAAwC,aAAa;;iBACzB;;;oBAEG,EAC3B,MAAM,EAAE,MAAM,SAAS,EACxB;;CAID,CAASA,OAAQ,IAAI,iBAAiB;CACtC,CAASC,WAAY,IAAI,gBAAgB,MAAM,EAAE,SAAS,oBAAoB,CAAC;CAC/E,CAASC,UAAW,0BAA0B;CAC9C,CAASC,gBAAiB,yBAAyB;CAEnD,UAAiC;CACjC,YAAyD;CAEzD,cAAc;AACZ,SAAO;cAXF;AAYL,QAAKH,KAAM,WAAW,MAAKE,QAAS;AACpC,QAAKF,KAAM,iBAAiB,MAAKG,cAAe;;CAGlD,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,QAAKC,SAAU,kBAAkB;GAC/B,YAAY,kBAAkB;GAC9B,eAAe,aAAsB;AACnC,SAAK,OAAO;AACZ,SAAK,cAAc,IAAI,YAAY,eAAe,EAAE,QAAQ,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;;GAErF,CAAC;AAGF,QAAKA,OAAQ,WAAW,KAAK;AAE7B,MAAI,MAAKC,SACP,OAAKA,SAAU,MAAM,MAAKD,OAAQ,MAAM;MAExC,OAAKC,WAAY,IAAI,mBAAmB,MAAM,MAAKD,OAAQ,MAAM;;CAIrE,AAAS,uBAA6B;AACpC,QAAM,sBAAsB;AAC5B,QAAKA,QAAS,SAAS;AACvB,QAAKA,SAAU;;CAGjB,AAAmB,WAAW,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AAGzB,MAAI,MAAKA,UAAW,QAAQ,IAAI,OAAO,EAAE;GACvC,MAAM,EAAE,QAAQ,cAAc,MAAKA,OAAQ,MAAM;AACjD,OAAI,KAAK,SAAS,UAChB,KAAI,KAAK,KACP,OAAKA,OAAQ,MAAM;OAEnB,OAAKA,OAAQ,OAAO;;;CAM5B,AAAmB,OAAO,UAAgC;AACxD,QAAM,OAAO,SAAS;AACtB,MAAI,CAAC,MAAKA,OAAS;EAEnB,MAAM,QAAQ,MAAKA,OAAQ,MAAM;AACjC,QAAKJ,KAAM,SAAS,MAAM;EAC1B,MAAM,QAAQ,MAAKA,KAAM,UAAU;AAEnC,oBAAkB,MAAM,MAAKA,KAAM,SAAS,MAAM,CAAC;AACnD,sBAAoB,MAAM,OAAO,qBAAqB;AAEtD,QAAKC,SAAU,SAAS;GACtB;GACA,cAAc;GACd,aAAa,MAAKG,QAAS,OAAO;GACnC,CAAC"}
1
+ {"version":3,"file":"alert-dialog-element.js","names":["#core","#provider","#titleId","#descriptionId","#dialog","#snapshot"],"sources":["../../../../src/ui/alert-dialog/alert-dialog-element.ts"],"sourcesContent":["import { AlertDialogCore, AlertDialogDataAttrs, type AlertDialogInput } from '@videojs/core';\nimport {\n type AlertDialogApi,\n applyElementProps,\n applyStateDataAttrs,\n createAlertDialog,\n createTransition,\n} from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport { SnapshotController } from '@videojs/store/html';\n\nimport { MediaElement } from '../media-element';\nimport { alertDialogContext } from './context';\n\nlet idCounter = 0;\n\nexport class AlertDialogElement extends MediaElement {\n static readonly tagName = 'media-alert-dialog';\n\n static override properties = {\n open: { type: Boolean },\n } satisfies PropertyDeclarationMap<'open'>;\n\n open = false;\n\n readonly #core = new AlertDialogCore();\n readonly #provider = new ContextProvider(this, { context: alertDialogContext });\n readonly #titleId = `vjs-alert-dialog-title-${idCounter++}`;\n readonly #descriptionId = `vjs-alert-dialog-desc-${idCounter++}`;\n\n #dialog: AlertDialogApi | null = null;\n #snapshot: SnapshotController<AlertDialogInput> | null = null;\n\n constructor() {\n super();\n this.#core.setTitleId(this.#titleId);\n this.#core.setDescriptionId(this.#descriptionId);\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#dialog = createAlertDialog({\n transition: createTransition(),\n onOpenChange: (nextOpen: boolean) => {\n this.open = nextOpen;\n this.dispatchEvent(new CustomEvent('open-change', { detail: { open: nextOpen } }));\n },\n });\n\n // Register self as the dialog element.\n this.#dialog.setElement(this);\n\n if (this.#snapshot) {\n this.#snapshot.track(this.#dialog.input);\n } else {\n this.#snapshot = new SnapshotController(this, this.#dialog.input);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#dialog?.destroy();\n this.#dialog = null;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n\n // Sync controlled open state.\n if (this.#dialog && changed.has('open')) {\n const { active: inputOpen } = this.#dialog.input.current;\n if (this.open !== inputOpen) {\n if (this.open) {\n this.#dialog.open();\n } else {\n this.#dialog.close();\n }\n }\n }\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n if (!this.#dialog) return;\n\n const input = this.#dialog.input.current;\n this.#core.setInput(input);\n const state = this.#core.getState();\n\n applyElementProps(this, this.#core.getAttrs(state));\n applyStateDataAttrs(this, state, AlertDialogDataAttrs);\n\n this.#provider.setValue({\n state,\n stateAttrMap: AlertDialogDataAttrs,\n close: () => this.#dialog?.close(),\n });\n }\n}\n"],"mappings":";;;;;;;AAeA,IAAI,YAAY;AAEhB,IAAa,qBAAb,cAAwC,aAAa;;iBACzB;;;oBAEG,EAC3B,MAAM,EAAE,MAAM,SAAS,EACxB;;CAID,QAAiB,IAAI,iBAAiB;CACtC,YAAqB,IAAI,gBAAgB,MAAM,EAAE,SAAS,oBAAoB,CAAC;CAC/E,WAAoB,0BAA0B;CAC9C,iBAA0B,yBAAyB;CAEnD,UAAiC;CACjC,YAAyD;CAEzD,cAAc;AACZ,SAAO;cAXF;AAYL,QAAA,KAAW,WAAW,MAAA,QAAc;AACpC,QAAA,KAAW,iBAAiB,MAAA,cAAoB;;CAGlD,oBAAmC;AACjC,QAAM,mBAAmB;AAEzB,QAAA,SAAe,kBAAkB;GAC/B,YAAY,kBAAkB;GAC9B,eAAe,aAAsB;AACnC,SAAK,OAAO;AACZ,SAAK,cAAc,IAAI,YAAY,eAAe,EAAE,QAAQ,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;;GAErF,CAAC;AAGF,QAAA,OAAa,WAAW,KAAK;AAE7B,MAAI,MAAA,SACF,OAAA,SAAe,MAAM,MAAA,OAAa,MAAM;MAExC,OAAA,WAAiB,IAAI,mBAAmB,MAAM,MAAA,OAAa,MAAM;;CAIrE,uBAAsC;AACpC,QAAM,sBAAsB;AAC5B,QAAA,QAAc,SAAS;AACvB,QAAA,SAAe;;CAGjB,WAA8B,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AAGzB,MAAI,MAAA,UAAgB,QAAQ,IAAI,OAAO,EAAE;GACvC,MAAM,EAAE,QAAQ,cAAc,MAAA,OAAa,MAAM;AACjD,OAAI,KAAK,SAAS,UAChB,KAAI,KAAK,KACP,OAAA,OAAa,MAAM;OAEnB,OAAA,OAAa,OAAO;;;CAM5B,OAA0B,UAAgC;AACxD,QAAM,OAAO,SAAS;AACtB,MAAI,CAAC,MAAA,OAAc;EAEnB,MAAM,QAAQ,MAAA,OAAa,MAAM;AACjC,QAAA,KAAW,SAAS,MAAM;EAC1B,MAAM,QAAQ,MAAA,KAAW,UAAU;AAEnC,oBAAkB,MAAM,MAAA,KAAW,SAAS,MAAM,CAAC;AACnD,sBAAoB,MAAM,OAAO,qBAAqB;AAEtD,QAAA,SAAe,SAAS;GACtB;GACA,cAAc;GACd,aAAa,MAAA,QAAc,OAAO;GACnC,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { alertDialogContext } from "./context.js";
2
2
  import { ContextPartElement } from "../context-part-element.js";
3
3
  import { ContextConsumer } from "@videojs/element/context";
4
-
5
4
  //#region src/ui/alert-dialog/alert-dialog-title-element.ts
6
5
  var AlertDialogTitleElement = class extends ContextPartElement {
7
6
  constructor(..._args) {
@@ -20,7 +19,7 @@ var AlertDialogTitleElement = class extends ContextPartElement {
20
19
  if (titleId) this.id = titleId;
21
20
  }
22
21
  };
23
-
24
22
  //#endregion
25
23
  export { AlertDialogTitleElement };
24
+
26
25
  //# sourceMappingURL=alert-dialog-title-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alert-dialog-title-element.js","names":[],"sources":["../../../../src/ui/alert-dialog/alert-dialog-title-element.ts"],"sourcesContent":["import type { AlertDialogState } from '@videojs/core';\nimport type { PropertyValues } from '@videojs/element';\nimport { ContextConsumer } from '@videojs/element/context';\n\nimport { ContextPartElement } from '../context-part-element';\nimport { alertDialogContext } from './context';\n\nexport class AlertDialogTitleElement extends ContextPartElement<AlertDialogState> {\n static readonly tagName = 'media-alert-dialog-title';\n\n protected readonly consumer = new ContextConsumer(this, { context: alertDialogContext, subscribe: true });\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n const titleId = this.consumer.value?.state.titleId;\n if (titleId) this.id = titleId;\n }\n}\n"],"mappings":";;;;;AAOA,IAAa,0BAAb,cAA6C,mBAAqC;;;kBAGlD,IAAI,gBAAgB,MAAM;GAAE,SAAS;GAAoB,WAAW;GAAM,CAAC;;;iBAF/E;;CAI1B,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EACrB,MAAM,UAAU,KAAK,SAAS,OAAO,MAAM;AAC3C,MAAI,QAAS,MAAK,KAAK"}
1
+ {"version":3,"file":"alert-dialog-title-element.js","names":[],"sources":["../../../../src/ui/alert-dialog/alert-dialog-title-element.ts"],"sourcesContent":["import type { AlertDialogState } from '@videojs/core';\nimport type { PropertyValues } from '@videojs/element';\nimport { ContextConsumer } from '@videojs/element/context';\n\nimport { ContextPartElement } from '../context-part-element';\nimport { alertDialogContext } from './context';\n\nexport class AlertDialogTitleElement extends ContextPartElement<AlertDialogState> {\n static readonly tagName = 'media-alert-dialog-title';\n\n protected readonly consumer = new ContextConsumer(this, { context: alertDialogContext, subscribe: true });\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n const titleId = this.consumer.value?.state.titleId;\n if (titleId) this.id = titleId;\n }\n}\n"],"mappings":";;;;AAOA,IAAa,0BAAb,cAA6C,mBAAqC;;;kBAGlD,IAAI,gBAAgB,MAAM;GAAE,SAAS;GAAoB,WAAW;GAAM,CAAC;;;iBAF/E;;CAI1B,OAA0B,SAA+B;AACvD,QAAM,OAAO,QAAQ;EACrB,MAAM,UAAU,KAAK,SAAS,OAAO,MAAM;AAC3C,MAAI,QAAS,MAAK,KAAK"}
@@ -1,9 +1,6 @@
1
1
  import { createContext } from "@videojs/element/context";
2
-
3
- //#region src/ui/alert-dialog/context.ts
4
- const ALERT_DIALOG_CONTEXT_KEY = Symbol("@videojs/alert-dialog");
5
- const alertDialogContext = createContext(ALERT_DIALOG_CONTEXT_KEY);
6
-
2
+ const alertDialogContext = createContext(Symbol("@videojs/alert-dialog"));
7
3
  //#endregion
8
4
  export { alertDialogContext };
5
+
9
6
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/alert-dialog/context.ts"],"sourcesContent":["import type { AlertDialogState, StateAttrMap } from '@videojs/core';\nimport { createContext } from '@videojs/element/context';\n\nexport interface AlertDialogContextValue {\n state: AlertDialogState;\n stateAttrMap: StateAttrMap<AlertDialogState>;\n close: () => void;\n}\n\nconst ALERT_DIALOG_CONTEXT_KEY = Symbol('@videojs/alert-dialog');\n\nexport const alertDialogContext = createContext<AlertDialogContextValue>(ALERT_DIALOG_CONTEXT_KEY);\n"],"mappings":";;;AASA,MAAM,2BAA2B,OAAO,wBAAwB;AAEhE,MAAa,qBAAqB,cAAuC,yBAAyB"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/alert-dialog/context.ts"],"sourcesContent":["import type { AlertDialogState, StateAttrMap } from '@videojs/core';\nimport { createContext } from '@videojs/element/context';\n\nexport interface AlertDialogContextValue {\n state: AlertDialogState;\n stateAttrMap: StateAttrMap<AlertDialogState>;\n close: () => void;\n}\n\nconst ALERT_DIALOG_CONTEXT_KEY = Symbol('@videojs/alert-dialog');\n\nexport const alertDialogContext = createContext<AlertDialogContextValue>(ALERT_DIALOG_CONTEXT_KEY);\n"],"mappings":";AAWA,MAAa,qBAAqB,cAFD,OAAO,wBAAwB,CAEkC"}
@@ -3,7 +3,6 @@ import { MediaElement } from "../media-element.js";
3
3
  import { PlayerController } from "../../player/player-controller.js";
4
4
  import { BufferingIndicatorCore, BufferingIndicatorDataAttrs } from "@videojs/core";
5
5
  import { applyStateDataAttrs, logMissingFeature, selectPlayback } from "@videojs/core/dom";
6
-
7
6
  //#region src/ui/buffering-indicator/buffering-indicator-element.ts
8
7
  var BufferingIndicatorElement = class extends MediaElement {
9
8
  constructor(..._args) {
@@ -42,7 +41,7 @@ var BufferingIndicatorElement = class extends MediaElement {
42
41
  applyStateDataAttrs(this, this.#core.state.current, BufferingIndicatorDataAttrs);
43
42
  }
44
43
  };
45
-
46
44
  //#endregion
47
45
  export { BufferingIndicatorElement };
46
+
48
47
  //# sourceMappingURL=buffering-indicator-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buffering-indicator-element.js","names":["#core","#state","#disconnect"],"sources":["../../../../src/ui/buffering-indicator/buffering-indicator-element.ts"],"sourcesContent":["import { BufferingIndicatorCore, BufferingIndicatorDataAttrs } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectPlayback } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\n\nexport class BufferingIndicatorElement extends MediaElement {\n static readonly tagName = 'media-buffering-indicator';\n\n static override properties = {\n delay: { type: Number },\n } satisfies PropertyDeclarationMap<keyof BufferingIndicatorCore.Props>;\n\n delay = BufferingIndicatorCore.defaultProps.delay;\n\n readonly #core = new BufferingIndicatorCore();\n readonly #state = new PlayerController(this, playerContext, selectPlayback);\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#disconnect = new AbortController();\n\n this.#core.state.subscribe(() => this.requestUpdate(), {\n signal: this.#disconnect.signal,\n });\n\n if (__DEV__ && !this.#state.value) {\n logMissingFeature(this.localName, this.#state.displayName!);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n this.#core.setProps(this);\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.#state.value;\n\n if (!media) return;\n\n this.#core.update(media);\n applyStateDataAttrs(this, this.#core.state.current, BufferingIndicatorDataAttrs);\n }\n}\n"],"mappings":";;;;;;;AAQA,IAAa,4BAAb,cAA+C,aAAa;;;eAOlD,uBAAuB,aAAa;;;iBANlB;;;oBAEG,EAC3B,OAAO,EAAE,MAAM,QAAQ,EACxB;;CAID,CAASA,OAAQ,IAAI,wBAAwB;CAC7C,CAASC,QAAS,IAAI,iBAAiB,MAAM,eAAe,eAAe;CAE3E,cAAsC;CAEtC,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,QAAKC,aAAc,IAAI,iBAAiB;AAExC,QAAKF,KAAM,MAAM,gBAAgB,KAAK,eAAe,EAAE,EACrD,QAAQ,MAAKE,WAAY,QAC1B,CAAC;AAEF,MAAe,CAAC,MAAKD,MAAO,MAC1B,mBAAkB,KAAK,WAAW,MAAKA,MAAO,YAAa;;CAI/D,AAAS,uBAA6B;AACpC,QAAM,sBAAsB;AAC5B,QAAKC,YAAa,OAAO;AACzB,QAAKA,aAAc;;CAGrB,AAAmB,WAAW,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AACzB,QAAKF,KAAM,SAAS,KAAK;;CAG3B,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,MAAKC,MAAO;AAE1B,MAAI,CAAC,MAAO;AAEZ,QAAKD,KAAM,OAAO,MAAM;AACxB,sBAAoB,MAAM,MAAKA,KAAM,MAAM,SAAS,4BAA4B"}
1
+ {"version":3,"file":"buffering-indicator-element.js","names":["#core","#state","#disconnect"],"sources":["../../../../src/ui/buffering-indicator/buffering-indicator-element.ts"],"sourcesContent":["import { BufferingIndicatorCore, BufferingIndicatorDataAttrs } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectPlayback } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\n\nexport class BufferingIndicatorElement extends MediaElement {\n static readonly tagName = 'media-buffering-indicator';\n\n static override properties = {\n delay: { type: Number },\n } satisfies PropertyDeclarationMap<keyof BufferingIndicatorCore.Props>;\n\n delay = BufferingIndicatorCore.defaultProps.delay;\n\n readonly #core = new BufferingIndicatorCore();\n readonly #state = new PlayerController(this, playerContext, selectPlayback);\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#disconnect = new AbortController();\n\n this.#core.state.subscribe(() => this.requestUpdate(), {\n signal: this.#disconnect.signal,\n });\n\n if (__DEV__ && !this.#state.value) {\n logMissingFeature(this.localName, this.#state.displayName!);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n this.#core.setProps(this);\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.#state.value;\n\n if (!media) return;\n\n this.#core.update(media);\n applyStateDataAttrs(this, this.#core.state.current, BufferingIndicatorDataAttrs);\n }\n}\n"],"mappings":";;;;;;AAQA,IAAa,4BAAb,cAA+C,aAAa;;;eAOlD,uBAAuB,aAAa;;;iBANlB;;;oBAEG,EAC3B,OAAO,EAAE,MAAM,QAAQ,EACxB;;CAID,QAAiB,IAAI,wBAAwB;CAC7C,SAAkB,IAAI,iBAAiB,MAAM,eAAe,eAAe;CAE3E,cAAsC;CAEtC,oBAAmC;AACjC,QAAM,mBAAmB;AAEzB,QAAA,aAAmB,IAAI,iBAAiB;AAExC,QAAA,KAAW,MAAM,gBAAgB,KAAK,eAAe,EAAE,EACrD,QAAQ,MAAA,WAAiB,QAC1B,CAAC;AAEF,MAAe,CAAC,MAAA,MAAY,MAC1B,mBAAkB,KAAK,WAAW,MAAA,MAAY,YAAa;;CAI/D,uBAAsC;AACpC,QAAM,sBAAsB;AAC5B,QAAA,YAAkB,OAAO;AACzB,QAAA,aAAmB;;CAGrB,WAA8B,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AACzB,QAAA,KAAW,SAAS,KAAK;;CAG3B,OAA0B,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,MAAA,MAAY;AAE1B,MAAI,CAAC,MAAO;AAEZ,QAAA,KAAW,OAAO,MAAM;AACxB,sBAAoB,MAAM,MAAA,KAAW,MAAM,SAAS,4BAA4B"}
@@ -3,7 +3,6 @@ import { PlayerController } from "../../player/player-controller.js";
3
3
  import { MediaButtonElement } from "../media-button-element.js";
4
4
  import { CaptionsButtonCore, CaptionsButtonDataAttrs } from "@videojs/core";
5
5
  import { selectTextTrack } from "@videojs/core/dom";
6
-
7
6
  //#region src/ui/captions-button/captions-button-element.ts
8
7
  var CaptionsButtonElement = class extends MediaButtonElement {
9
8
  constructor(..._args) {
@@ -19,7 +18,7 @@ var CaptionsButtonElement = class extends MediaButtonElement {
19
18
  this.core.toggle(state);
20
19
  }
21
20
  };
22
-
23
21
  //#endregion
24
22
  export { CaptionsButtonElement };
23
+
25
24
  //# sourceMappingURL=captions-button-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"captions-button-element.js","names":[],"sources":["../../../../src/ui/captions-button/captions-button-element.ts"],"sourcesContent":["import { CaptionsButtonCore, CaptionsButtonDataAttrs, type MediaTextTrackState } from '@videojs/core';\nimport { selectTextTrack } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class CaptionsButtonElement extends MediaButtonElement<CaptionsButtonCore> {\n static readonly tagName = 'media-captions-button';\n\n protected readonly core = new CaptionsButtonCore();\n protected readonly stateAttrMap = CaptionsButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectTextTrack);\n\n protected activate(state: MediaTextTrackState): void {\n this.core.toggle(state);\n }\n}\n"],"mappings":";;;;;;;AAOA,IAAa,wBAAb,cAA2C,mBAAuC;;;cAGtD,IAAI,oBAAoB;sBAChB;oBACF,IAAI,iBAAiB,MAAM,eAAe,gBAAgB;;;iBAJhE;;CAM1B,AAAU,SAAS,OAAkC;AACnD,OAAK,KAAK,OAAO,MAAM"}
1
+ {"version":3,"file":"captions-button-element.js","names":[],"sources":["../../../../src/ui/captions-button/captions-button-element.ts"],"sourcesContent":["import { CaptionsButtonCore, CaptionsButtonDataAttrs, type MediaTextTrackState } from '@videojs/core';\nimport { selectTextTrack } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class CaptionsButtonElement extends MediaButtonElement<CaptionsButtonCore> {\n static readonly tagName = 'media-captions-button';\n\n protected readonly core = new CaptionsButtonCore();\n protected readonly stateAttrMap = CaptionsButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectTextTrack);\n\n protected activate(state: MediaTextTrackState): void {\n this.core.toggle(state);\n }\n}\n"],"mappings":";;;;;;AAOA,IAAa,wBAAb,cAA2C,mBAAuC;;;cAGtD,IAAI,oBAAoB;sBAChB;oBACF,IAAI,iBAAiB,MAAM,eAAe,gBAAgB;;;iBAJhE;;CAM1B,SAAmB,OAAkC;AACnD,OAAK,KAAK,OAAO,MAAM"}
@@ -1,6 +1,5 @@
1
1
  import { MediaElement } from "./media-element.js";
2
2
  import { applyStateDataAttrs } from "@videojs/core/dom";
3
-
4
3
  //#region src/ui/context-part-element.ts
5
4
  /**
6
5
  * Abstract base for compound-component part elements that consume a parent
@@ -22,7 +21,7 @@ var ContextPartElement = class extends MediaElement {
22
21
  if (ctx) applyStateDataAttrs(this, ctx.state, ctx.stateAttrMap);
23
22
  }
24
23
  };
25
-
26
24
  //#endregion
27
25
  export { ContextPartElement };
26
+
28
27
  //# sourceMappingURL=context-part-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context-part-element.js","names":[],"sources":["../../../src/ui/context-part-element.ts"],"sourcesContent":["import type { StateAttrMap } from '@videojs/core';\nimport { applyStateDataAttrs } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\n\nimport { MediaElement } from './media-element';\n\n/** Shape that compound context values must satisfy for parts to consume. */\nexport interface PartContextValue<State extends object> {\n state: State;\n stateAttrMap: StateAttrMap<State>;\n}\n\n/**\n * Abstract base for compound-component part elements that consume a parent\n * context and apply data attributes from `ctx.state` + `ctx.stateAttrMap`.\n *\n * Subclasses only need to declare the `consumer` property:\n *\n * ```ts\n * export class SliderTrackElement extends ContextPartElement<SliderState> {\n * static readonly tagName = 'media-slider-track';\n * protected readonly consumer = new ContextConsumer(this, { context: sliderContext, subscribe: true });\n * }\n * ```\n */\nexport abstract class ContextPartElement<State extends object> extends MediaElement {\n protected abstract readonly consumer: { value?: PartContextValue<State> | undefined };\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n const ctx = this.consumer.value;\n if (ctx) applyStateDataAttrs(this, ctx.state, ctx.stateAttrMap);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAyBA,IAAsB,qBAAtB,cAAuE,aAAa;CAGlF,AAAmB,OAAO,UAAgC;AACxD,QAAM,OAAO,SAAS;EACtB,MAAM,MAAM,KAAK,SAAS;AAC1B,MAAI,IAAK,qBAAoB,MAAM,IAAI,OAAO,IAAI,aAAa"}
1
+ {"version":3,"file":"context-part-element.js","names":[],"sources":["../../../src/ui/context-part-element.ts"],"sourcesContent":["import type { StateAttrMap } from '@videojs/core';\nimport { applyStateDataAttrs } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\n\nimport { MediaElement } from './media-element';\n\n/** Shape that compound context values must satisfy for parts to consume. */\nexport interface PartContextValue<State extends object> {\n state: State;\n stateAttrMap: StateAttrMap<State>;\n}\n\n/**\n * Abstract base for compound-component part elements that consume a parent\n * context and apply data attributes from `ctx.state` + `ctx.stateAttrMap`.\n *\n * Subclasses only need to declare the `consumer` property:\n *\n * ```ts\n * export class SliderTrackElement extends ContextPartElement<SliderState> {\n * static readonly tagName = 'media-slider-track';\n * protected readonly consumer = new ContextConsumer(this, { context: sliderContext, subscribe: true });\n * }\n * ```\n */\nexport abstract class ContextPartElement<State extends object> extends MediaElement {\n protected abstract readonly consumer: { value?: PartContextValue<State> | undefined };\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n const ctx = this.consumer.value;\n if (ctx) applyStateDataAttrs(this, ctx.state, ctx.stateAttrMap);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAyBA,IAAsB,qBAAtB,cAAuE,aAAa;CAGlF,OAA0B,UAAgC;AACxD,QAAM,OAAO,SAAS;EACtB,MAAM,MAAM,KAAK,SAAS;AAC1B,MAAI,IAAK,qBAAoB,MAAM,IAAI,OAAO,IAAI,aAAa"}
@@ -1,9 +1,6 @@
1
1
  import { createContext } from "@videojs/element/context";
2
-
3
- //#region src/ui/controls/context.ts
4
- const CONTROLS_CONTEXT_KEY = Symbol("@videojs/controls");
5
- const controlsContext = createContext(CONTROLS_CONTEXT_KEY);
6
-
2
+ const controlsContext = createContext(Symbol("@videojs/controls"));
7
3
  //#endregion
8
4
  export { controlsContext };
5
+
9
6
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/controls/context.ts"],"sourcesContent":["import type { ControlsState, StateAttrMap } from '@videojs/core';\nimport { createContext } from '@videojs/element/context';\n\nexport interface ControlsContextValue {\n state: ControlsState;\n stateAttrMap: StateAttrMap<ControlsState>;\n}\n\nconst CONTROLS_CONTEXT_KEY = Symbol('@videojs/controls');\n\nexport const controlsContext = createContext<ControlsContextValue>(CONTROLS_CONTEXT_KEY);\n"],"mappings":";;;AAQA,MAAM,uBAAuB,OAAO,oBAAoB;AAExD,MAAa,kBAAkB,cAAoC,qBAAqB"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/controls/context.ts"],"sourcesContent":["import type { ControlsState, StateAttrMap } from '@videojs/core';\nimport { createContext } from '@videojs/element/context';\n\nexport interface ControlsContextValue {\n state: ControlsState;\n stateAttrMap: StateAttrMap<ControlsState>;\n}\n\nconst CONTROLS_CONTEXT_KEY = Symbol('@videojs/controls');\n\nexport const controlsContext = createContext<ControlsContextValue>(CONTROLS_CONTEXT_KEY);\n"],"mappings":";AAUA,MAAa,kBAAkB,cAFF,OAAO,oBAAoB,CAEgC"}
@@ -5,7 +5,6 @@ import { controlsContext } from "./context.js";
5
5
  import { ControlsCore, ControlsDataAttrs } from "@videojs/core";
6
6
  import { applyStateDataAttrs, logMissingFeature, selectControls } from "@videojs/core/dom";
7
7
  import { ContextProvider } from "@videojs/element/context";
8
-
9
8
  //#region src/ui/controls/controls-element.ts
10
9
  var ControlsElement = class extends MediaElement {
11
10
  static {
@@ -31,7 +30,7 @@ var ControlsElement = class extends MediaElement {
31
30
  });
32
31
  }
33
32
  };
34
-
35
33
  //#endregion
36
34
  export { ControlsElement };
35
+
37
36
  //# sourceMappingURL=controls-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"controls-element.js","names":["#core","#mediaState","#provider"],"sources":["../../../../src/ui/controls/controls-element.ts"],"sourcesContent":["import { ControlsCore, ControlsDataAttrs } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectControls } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\nimport { controlsContext } from './context';\n\nexport class ControlsElement extends MediaElement {\n static readonly tagName = 'media-controls';\n\n readonly #core = new ControlsCore();\n readonly #mediaState = new PlayerController(this, playerContext, selectControls);\n readonly #provider = new ContextProvider(this, { context: controlsContext });\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (__DEV__ && !this.#mediaState.value && this.#mediaState.displayName) {\n logMissingFeature(this.localName, this.#mediaState.displayName);\n }\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n\n const media = this.#mediaState.value;\n if (!media) return;\n\n this.#core.setMedia(media);\n const state = this.#core.getState();\n\n applyStateDataAttrs(this, state, ControlsDataAttrs);\n\n this.#provider.setValue({\n state,\n stateAttrMap: ControlsDataAttrs,\n });\n }\n}\n"],"mappings":";;;;;;;;;AAUA,IAAa,kBAAb,cAAqC,aAAa;;iBACtB;;CAE1B,CAASA,OAAQ,IAAI,cAAc;CACnC,CAASC,aAAc,IAAI,iBAAiB,MAAM,eAAe,eAAe;CAChF,CAASC,WAAY,IAAI,gBAAgB,MAAM,EAAE,SAAS,iBAAiB,CAAC;CAE5E,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,MAAe,CAAC,MAAKD,WAAY,SAAS,MAAKA,WAAY,YACzD,mBAAkB,KAAK,WAAW,MAAKA,WAAY,YAAY;;CAInE,AAAmB,OAAO,UAAgC;AACxD,QAAM,OAAO,SAAS;EAEtB,MAAM,QAAQ,MAAKA,WAAY;AAC/B,MAAI,CAAC,MAAO;AAEZ,QAAKD,KAAM,SAAS,MAAM;EAC1B,MAAM,QAAQ,MAAKA,KAAM,UAAU;AAEnC,sBAAoB,MAAM,OAAO,kBAAkB;AAEnD,QAAKE,SAAU,SAAS;GACtB;GACA,cAAc;GACf,CAAC"}
1
+ {"version":3,"file":"controls-element.js","names":["#core","#mediaState","#provider"],"sources":["../../../../src/ui/controls/controls-element.ts"],"sourcesContent":["import { ControlsCore, ControlsDataAttrs } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectControls } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\nimport { controlsContext } from './context';\n\nexport class ControlsElement extends MediaElement {\n static readonly tagName = 'media-controls';\n\n readonly #core = new ControlsCore();\n readonly #mediaState = new PlayerController(this, playerContext, selectControls);\n readonly #provider = new ContextProvider(this, { context: controlsContext });\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (__DEV__ && !this.#mediaState.value && this.#mediaState.displayName) {\n logMissingFeature(this.localName, this.#mediaState.displayName);\n }\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n\n const media = this.#mediaState.value;\n if (!media) return;\n\n this.#core.setMedia(media);\n const state = this.#core.getState();\n\n applyStateDataAttrs(this, state, ControlsDataAttrs);\n\n this.#provider.setValue({\n state,\n stateAttrMap: ControlsDataAttrs,\n });\n }\n}\n"],"mappings":";;;;;;;;AAUA,IAAa,kBAAb,cAAqC,aAAa;;iBACtB;;CAE1B,QAAiB,IAAI,cAAc;CACnC,cAAuB,IAAI,iBAAiB,MAAM,eAAe,eAAe;CAChF,YAAqB,IAAI,gBAAgB,MAAM,EAAE,SAAS,iBAAiB,CAAC;CAE5E,oBAAmC;AACjC,QAAM,mBAAmB;AAEzB,MAAe,CAAC,MAAA,WAAiB,SAAS,MAAA,WAAiB,YACzD,mBAAkB,KAAK,WAAW,MAAA,WAAiB,YAAY;;CAInE,OAA0B,UAAgC;AACxD,QAAM,OAAO,SAAS;EAEtB,MAAM,QAAQ,MAAA,WAAiB;AAC/B,MAAI,CAAC,MAAO;AAEZ,QAAA,KAAW,SAAS,MAAM;EAC1B,MAAM,QAAQ,MAAA,KAAW,UAAU;AAEnC,sBAAoB,MAAM,OAAO,kBAAkB;AAEnD,QAAA,SAAe,SAAS;GACtB;GACA,cAAc;GACf,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { ContextPartElement } from "../context-part-element.js";
2
2
  import { controlsContext } from "./context.js";
3
3
  import { ContextConsumer } from "@videojs/element/context";
4
-
5
4
  //#region src/ui/controls/controls-group-element.ts
6
5
  var ControlsGroupElement = class extends ContextPartElement {
7
6
  constructor(..._args) {
@@ -19,7 +18,7 @@ var ControlsGroupElement = class extends ContextPartElement {
19
18
  if (this.hasAttribute("aria-label") || this.hasAttribute("aria-labelledby")) this.setAttribute("role", "group");
20
19
  }
21
20
  };
22
-
23
21
  //#endregion
24
22
  export { ControlsGroupElement };
23
+
25
24
  //# sourceMappingURL=controls-group-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"controls-group-element.js","names":[],"sources":["../../../../src/ui/controls/controls-group-element.ts"],"sourcesContent":["import type { ControlsState } from '@videojs/core';\nimport { ContextConsumer } from '@videojs/element/context';\n\nimport { ContextPartElement } from '../context-part-element';\nimport { controlsContext } from './context';\n\nexport class ControlsGroupElement extends ContextPartElement<ControlsState> {\n static readonly tagName = 'media-controls-group';\n\n protected readonly consumer = new ContextConsumer(this, { context: controlsContext, subscribe: true });\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (this.hasAttribute('aria-label') || this.hasAttribute('aria-labelledby')) {\n this.setAttribute('role', 'group');\n }\n }\n}\n"],"mappings":";;;;;AAMA,IAAa,uBAAb,cAA0C,mBAAkC;;;kBAG5C,IAAI,gBAAgB,MAAM;GAAE,SAAS;GAAiB,WAAW;GAAM,CAAC;;;iBAF5E;;CAI1B,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,MAAI,KAAK,aAAa,aAAa,IAAI,KAAK,aAAa,kBAAkB,CACzE,MAAK,aAAa,QAAQ,QAAQ"}
1
+ {"version":3,"file":"controls-group-element.js","names":[],"sources":["../../../../src/ui/controls/controls-group-element.ts"],"sourcesContent":["import type { ControlsState } from '@videojs/core';\nimport { ContextConsumer } from '@videojs/element/context';\n\nimport { ContextPartElement } from '../context-part-element';\nimport { controlsContext } from './context';\n\nexport class ControlsGroupElement extends ContextPartElement<ControlsState> {\n static readonly tagName = 'media-controls-group';\n\n protected readonly consumer = new ContextConsumer(this, { context: controlsContext, subscribe: true });\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (this.hasAttribute('aria-label') || this.hasAttribute('aria-labelledby')) {\n this.setAttribute('role', 'group');\n }\n }\n}\n"],"mappings":";;;;AAMA,IAAa,uBAAb,cAA0C,mBAAkC;;;kBAG5C,IAAI,gBAAgB,MAAM;GAAE,SAAS;GAAiB,WAAW;GAAM,CAAC;;;iBAF5E;;CAI1B,oBAAmC;AACjC,QAAM,mBAAmB;AAEzB,MAAI,KAAK,aAAa,aAAa,IAAI,KAAK,aAAa,kBAAkB,CACzE,MAAK,aAAa,QAAQ,QAAQ"}
@@ -0,0 +1,16 @@
1
+ import { MediaElement } from "../media-element.js";
2
+ import { PropertyValues } from "@videojs/element";
3
+
4
+ //#region src/ui/error-dialog/error-dialog-element.d.ts
5
+ declare class ErrorDialogElement extends MediaElement {
6
+ #private;
7
+ static readonly tagName = "media-error-dialog";
8
+ constructor();
9
+ connectedCallback(): void;
10
+ disconnectedCallback(): void;
11
+ protected willUpdate(_changed: PropertyValues): void;
12
+ protected update(_changed: PropertyValues): void;
13
+ }
14
+ //#endregion
15
+ export { ErrorDialogElement };
16
+ //# sourceMappingURL=error-dialog-element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-dialog-element.d.ts","names":[],"sources":["../../../../src/ui/error-dialog/error-dialog-element.ts"],"mappings":";;;;cAsBa,kBAAA,SAA2B,YAAA;EAAA;kBACtB,OAAA;;EAkBP,iBAAA,CAAA;EAqBA,oBAAA,CAAA;EAAA,UAMU,UAAA,CAAW,QAAA,EAAU,cAAA;EAAA,UA0BrB,MAAA,CAAO,QAAA,EAAU,cAAA;AAAA"}
@@ -0,0 +1,76 @@
1
+ import { playerContext } from "../../player/context.js";
2
+ import { MediaElement } from "../media-element.js";
3
+ import { PlayerController } from "../../player/player-controller.js";
4
+ import { alertDialogContext } from "../alert-dialog/context.js";
5
+ import { AlertDialogDataAttrs, ErrorDialogCore } from "@videojs/core";
6
+ import { applyElementProps, applyStateDataAttrs, createAlertDialog, createTransition, selectError } from "@videojs/core/dom";
7
+ import { ContextProvider } from "@videojs/element/context";
8
+ import { SnapshotController } from "@videojs/store/html";
9
+ //#region src/ui/error-dialog/error-dialog-element.ts
10
+ const FALLBACK_MESSAGE = "An error occurred. Please try again.";
11
+ let idCounter = 0;
12
+ var ErrorDialogElement = class extends MediaElement {
13
+ static {
14
+ this.tagName = "media-error-dialog";
15
+ }
16
+ #core = new ErrorDialogCore();
17
+ #provider = new ContextProvider(this, { context: alertDialogContext });
18
+ #titleId = `vjs-error-dialog-title-${idCounter++}`;
19
+ #descriptionId = `vjs-error-dialog-desc-${idCounter++}`;
20
+ #errorState = new PlayerController(this, playerContext, selectError);
21
+ #dialog = null;
22
+ #snapshot = null;
23
+ #lastErrorMessage = null;
24
+ constructor() {
25
+ super();
26
+ this.#core.setTitleId(this.#titleId);
27
+ this.#core.setDescriptionId(this.#descriptionId);
28
+ }
29
+ connectedCallback() {
30
+ super.connectedCallback();
31
+ this.#dialog = createAlertDialog({
32
+ transition: createTransition(),
33
+ onOpenChange: (nextOpen) => {
34
+ if (!nextOpen) this.#errorState.value?.dismissError();
35
+ }
36
+ });
37
+ this.#dialog.setElement(this);
38
+ if (this.#snapshot) this.#snapshot.track(this.#dialog.input);
39
+ else this.#snapshot = new SnapshotController(this, this.#dialog.input);
40
+ }
41
+ disconnectedCallback() {
42
+ super.disconnectedCallback();
43
+ this.#dialog?.destroy();
44
+ this.#dialog = null;
45
+ }
46
+ willUpdate(_changed) {
47
+ super.willUpdate(_changed);
48
+ if (!this.#dialog) return;
49
+ const errorState = this.#errorState.value;
50
+ const hasError = Boolean(errorState?.error);
51
+ const { active: isOpen } = this.#dialog.input.current;
52
+ if (errorState?.error) this.#lastErrorMessage = errorState.error.message?.trim() || null;
53
+ const desc = this.querySelector("media-alert-dialog-description");
54
+ if (desc) desc.textContent = this.#lastErrorMessage ?? FALLBACK_MESSAGE;
55
+ if (hasError && !isOpen) this.#dialog.open();
56
+ else if (!hasError && isOpen) this.#dialog.close();
57
+ }
58
+ update(_changed) {
59
+ super.update(_changed);
60
+ if (!this.#dialog) return;
61
+ const input = this.#dialog.input.current;
62
+ this.#core.setInput(input);
63
+ const state = this.#core.getState();
64
+ applyElementProps(this, this.#core.getAttrs(state));
65
+ applyStateDataAttrs(this, state, AlertDialogDataAttrs);
66
+ this.#provider.setValue({
67
+ state,
68
+ stateAttrMap: AlertDialogDataAttrs,
69
+ close: () => this.#dialog?.close()
70
+ });
71
+ }
72
+ };
73
+ //#endregion
74
+ export { ErrorDialogElement };
75
+
76
+ //# sourceMappingURL=error-dialog-element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-dialog-element.js","names":["#core","#provider","#titleId","#descriptionId","#errorState","#dialog","#snapshot","#lastErrorMessage"],"sources":["../../../../src/ui/error-dialog/error-dialog-element.ts"],"sourcesContent":["import { AlertDialogDataAttrs, type AlertDialogInput, ErrorDialogCore } from '@videojs/core';\nimport {\n type AlertDialogApi,\n applyElementProps,\n applyStateDataAttrs,\n createAlertDialog,\n createTransition,\n selectError,\n} from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport { SnapshotController } from '@videojs/store/html';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { alertDialogContext } from '../alert-dialog/context';\nimport { MediaElement } from '../media-element';\n\nconst FALLBACK_MESSAGE = 'An error occurred. Please try again.';\n\nlet idCounter = 0;\n\nexport class ErrorDialogElement extends MediaElement {\n static readonly tagName = 'media-error-dialog';\n\n readonly #core = new ErrorDialogCore();\n readonly #provider = new ContextProvider(this, { context: alertDialogContext });\n readonly #titleId = `vjs-error-dialog-title-${idCounter++}`;\n readonly #descriptionId = `vjs-error-dialog-desc-${idCounter++}`;\n readonly #errorState = new PlayerController(this, playerContext, selectError);\n\n #dialog: AlertDialogApi | null = null;\n #snapshot: SnapshotController<AlertDialogInput> | null = null;\n #lastErrorMessage: string | null = null;\n\n constructor() {\n super();\n this.#core.setTitleId(this.#titleId);\n this.#core.setDescriptionId(this.#descriptionId);\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#dialog = createAlertDialog({\n transition: createTransition(),\n onOpenChange: (nextOpen: boolean) => {\n if (!nextOpen) {\n this.#errorState.value?.dismissError();\n }\n },\n });\n\n this.#dialog.setElement(this);\n\n if (this.#snapshot) {\n this.#snapshot.track(this.#dialog.input);\n } else {\n this.#snapshot = new SnapshotController(this, this.#dialog.input);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#dialog?.destroy();\n this.#dialog = null;\n }\n\n protected override willUpdate(_changed: PropertyValues): void {\n super.willUpdate(_changed);\n if (!this.#dialog) return;\n\n const errorState = this.#errorState.value;\n const hasError = Boolean(errorState?.error);\n const { active: isOpen } = this.#dialog.input.current;\n\n if (errorState?.error) {\n const message = errorState.error.message?.trim();\n this.#lastErrorMessage = message || null;\n }\n\n // Set description text before opening so content is ready for the transition.\n const desc = this.querySelector('media-alert-dialog-description');\n if (desc) {\n desc.textContent = this.#lastErrorMessage ?? FALLBACK_MESSAGE;\n }\n\n if (hasError && !isOpen) {\n this.#dialog.open();\n } else if (!hasError && isOpen) {\n this.#dialog.close();\n }\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n if (!this.#dialog) return;\n\n const input = this.#dialog.input.current;\n this.#core.setInput(input);\n const state = this.#core.getState();\n\n applyElementProps(this, this.#core.getAttrs(state));\n applyStateDataAttrs(this, state, AlertDialogDataAttrs);\n\n this.#provider.setValue({\n state,\n stateAttrMap: AlertDialogDataAttrs,\n close: () => this.#dialog?.close(),\n });\n }\n}\n"],"mappings":";;;;;;;;;AAkBA,MAAM,mBAAmB;AAEzB,IAAI,YAAY;AAEhB,IAAa,qBAAb,cAAwC,aAAa;;iBACzB;;CAE1B,QAAiB,IAAI,iBAAiB;CACtC,YAAqB,IAAI,gBAAgB,MAAM,EAAE,SAAS,oBAAoB,CAAC;CAC/E,WAAoB,0BAA0B;CAC9C,iBAA0B,yBAAyB;CACnD,cAAuB,IAAI,iBAAiB,MAAM,eAAe,YAAY;CAE7E,UAAiC;CACjC,YAAyD;CACzD,oBAAmC;CAEnC,cAAc;AACZ,SAAO;AACP,QAAA,KAAW,WAAW,MAAA,QAAc;AACpC,QAAA,KAAW,iBAAiB,MAAA,cAAoB;;CAGlD,oBAAmC;AACjC,QAAM,mBAAmB;AAEzB,QAAA,SAAe,kBAAkB;GAC/B,YAAY,kBAAkB;GAC9B,eAAe,aAAsB;AACnC,QAAI,CAAC,SACH,OAAA,WAAiB,OAAO,cAAc;;GAG3C,CAAC;AAEF,QAAA,OAAa,WAAW,KAAK;AAE7B,MAAI,MAAA,SACF,OAAA,SAAe,MAAM,MAAA,OAAa,MAAM;MAExC,OAAA,WAAiB,IAAI,mBAAmB,MAAM,MAAA,OAAa,MAAM;;CAIrE,uBAAsC;AACpC,QAAM,sBAAsB;AAC5B,QAAA,QAAc,SAAS;AACvB,QAAA,SAAe;;CAGjB,WAA8B,UAAgC;AAC5D,QAAM,WAAW,SAAS;AAC1B,MAAI,CAAC,MAAA,OAAc;EAEnB,MAAM,aAAa,MAAA,WAAiB;EACpC,MAAM,WAAW,QAAQ,YAAY,MAAM;EAC3C,MAAM,EAAE,QAAQ,WAAW,MAAA,OAAa,MAAM;AAE9C,MAAI,YAAY,MAEd,OAAA,mBADgB,WAAW,MAAM,SAAS,MAAM,IACZ;EAItC,MAAM,OAAO,KAAK,cAAc,iCAAiC;AACjE,MAAI,KACF,MAAK,cAAc,MAAA,oBAA0B;AAG/C,MAAI,YAAY,CAAC,OACf,OAAA,OAAa,MAAM;WACV,CAAC,YAAY,OACtB,OAAA,OAAa,OAAO;;CAIxB,OAA0B,UAAgC;AACxD,QAAM,OAAO,SAAS;AACtB,MAAI,CAAC,MAAA,OAAc;EAEnB,MAAM,QAAQ,MAAA,OAAa,MAAM;AACjC,QAAA,KAAW,SAAS,MAAM;EAC1B,MAAM,QAAQ,MAAA,KAAW,UAAU;AAEnC,oBAAkB,MAAM,MAAA,KAAW,SAAS,MAAM,CAAC;AACnD,sBAAoB,MAAM,OAAO,qBAAqB;AAEtD,QAAA,SAAe,SAAS;GACtB;GACA,cAAc;GACd,aAAa,MAAA,QAAc,OAAO;GACnC,CAAC"}
@@ -3,7 +3,6 @@ import { PlayerController } from "../../player/player-controller.js";
3
3
  import { MediaButtonElement } from "../media-button-element.js";
4
4
  import { FullscreenButtonCore, FullscreenButtonDataAttrs } from "@videojs/core";
5
5
  import { selectFullscreen } from "@videojs/core/dom";
6
-
7
6
  //#region src/ui/fullscreen-button/fullscreen-button-element.ts
8
7
  var FullscreenButtonElement = class extends MediaButtonElement {
9
8
  constructor(..._args) {
@@ -19,7 +18,7 @@ var FullscreenButtonElement = class extends MediaButtonElement {
19
18
  this.core.toggle(state);
20
19
  }
21
20
  };
22
-
23
21
  //#endregion
24
22
  export { FullscreenButtonElement };
23
+
25
24
  //# sourceMappingURL=fullscreen-button-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fullscreen-button-element.js","names":[],"sources":["../../../../src/ui/fullscreen-button/fullscreen-button-element.ts"],"sourcesContent":["import { FullscreenButtonCore, FullscreenButtonDataAttrs, type MediaFullscreenState } from '@videojs/core';\nimport { selectFullscreen } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class FullscreenButtonElement extends MediaButtonElement<FullscreenButtonCore> {\n static readonly tagName = 'media-fullscreen-button';\n\n protected readonly core = new FullscreenButtonCore();\n protected readonly stateAttrMap = FullscreenButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectFullscreen);\n\n protected activate(state: MediaFullscreenState): void {\n this.core.toggle(state);\n }\n}\n"],"mappings":";;;;;;;AAOA,IAAa,0BAAb,cAA6C,mBAAyC;;;cAG1D,IAAI,sBAAsB;sBAClB;oBACF,IAAI,iBAAiB,MAAM,eAAe,iBAAiB;;;iBAJjE;;CAM1B,AAAU,SAAS,OAAmC;AACpD,OAAK,KAAK,OAAO,MAAM"}
1
+ {"version":3,"file":"fullscreen-button-element.js","names":[],"sources":["../../../../src/ui/fullscreen-button/fullscreen-button-element.ts"],"sourcesContent":["import { FullscreenButtonCore, FullscreenButtonDataAttrs, type MediaFullscreenState } from '@videojs/core';\nimport { selectFullscreen } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class FullscreenButtonElement extends MediaButtonElement<FullscreenButtonCore> {\n static readonly tagName = 'media-fullscreen-button';\n\n protected readonly core = new FullscreenButtonCore();\n protected readonly stateAttrMap = FullscreenButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectFullscreen);\n\n protected activate(state: MediaFullscreenState): void {\n this.core.toggle(state);\n }\n}\n"],"mappings":";;;;;;AAOA,IAAa,0BAAb,cAA6C,mBAAyC;;;cAG1D,IAAI,sBAAsB;sBAClB;oBACF,IAAI,iBAAiB,MAAM,eAAe,iBAAiB;;;iBAJjE;;CAM1B,SAAmB,OAAmC;AACpD,OAAK,KAAK,OAAO,MAAM"}
@@ -1,6 +1,5 @@
1
1
  import { MediaElement } from "./media-element.js";
2
2
  import { applyElementProps, applyStateDataAttrs, createButton, logMissingFeature } from "@videojs/core/dom";
3
-
4
3
  //#region src/ui/media-button-element.ts
5
4
  /** Abstract base for HTML custom elements that render a media-control button. */
6
5
  var MediaButtonElement = class extends MediaElement {
@@ -45,7 +44,7 @@ var MediaButtonElement = class extends MediaElement {
45
44
  applyStateDataAttrs(this, state, this.stateAttrMap);
46
45
  }
47
46
  };
48
-
49
47
  //#endregion
50
48
  export { MediaButtonElement };
49
+
51
50
  //# sourceMappingURL=media-button-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"media-button-element.js","names":["#disconnect"],"sources":["../../../src/ui/media-button-element.ts"],"sourcesContent":["import type { InferComponentState, InferMediaState, MediaUIComponent, StateAttrMap } from '@videojs/core';\nimport { applyElementProps, applyStateDataAttrs, createButton, logMissingFeature } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport type { PlayerController } from '../player/player-controller';\nimport { MediaElement } from './media-element';\n\n/** Abstract base for HTML custom elements that render a media-control button. */\nexport abstract class MediaButtonElement<Core extends MediaUIComponent> extends MediaElement {\n static override properties: PropertyDeclarationMap = {\n label: { type: String },\n disabled: { type: Boolean },\n };\n\n disabled = false;\n label = '';\n\n protected abstract readonly core: Core;\n protected abstract readonly stateAttrMap: StateAttrMap<InferComponentState<Core>>;\n protected abstract readonly mediaState: PlayerController<any, InferMediaState<Core> | undefined>;\n\n protected abstract activate(state: InferMediaState<Core>): void;\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#disconnect = new AbortController();\n\n const buttonProps = createButton({\n onActivate: () => this.activate(this.mediaState.value!),\n isDisabled: () => this.disabled || !this.mediaState.value,\n });\n\n applyElementProps(this, buttonProps, { signal: this.#disconnect.signal });\n\n if (__DEV__ && !this.mediaState.value && this.mediaState.displayName) {\n logMissingFeature(this.localName, this.mediaState.displayName);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n this.core.setProps?.(this);\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n\n if (!media) return;\n\n this.core.setMedia(media);\n const state = this.core.getState();\n applyElementProps(this, this.core.getAttrs?.(state) ?? {});\n applyStateDataAttrs(this, state, this.stateAttrMap);\n }\n}\n"],"mappings":";;;;;AAQA,IAAsB,qBAAtB,cAAgF,aAAa;;;kBAMhF;eACH;;;oBAN6C;GACnD,OAAO,EAAE,MAAM,QAAQ;GACvB,UAAU,EAAE,MAAM,SAAS;GAC5B;;CAWD,cAAsC;CAEtC,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,QAAKA,aAAc,IAAI,iBAAiB;EAExC,MAAM,cAAc,aAAa;GAC/B,kBAAkB,KAAK,SAAS,KAAK,WAAW,MAAO;GACvD,kBAAkB,KAAK,YAAY,CAAC,KAAK,WAAW;GACrD,CAAC;AAEF,oBAAkB,MAAM,aAAa,EAAE,QAAQ,MAAKA,WAAY,QAAQ,CAAC;AAEzE,MAAe,CAAC,KAAK,WAAW,SAAS,KAAK,WAAW,YACvD,mBAAkB,KAAK,WAAW,KAAK,WAAW,YAAY;;CAIlE,AAAS,uBAA6B;AACpC,QAAM,sBAAsB;AAC5B,QAAKA,YAAa,OAAO;AACzB,QAAKA,aAAc;;CAGrB,AAAmB,WAAW,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AACzB,OAAK,KAAK,WAAW,KAAK;;CAG5B,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,KAAK,WAAW;AAE9B,MAAI,CAAC,MAAO;AAEZ,OAAK,KAAK,SAAS,MAAM;EACzB,MAAM,QAAQ,KAAK,KAAK,UAAU;AAClC,oBAAkB,MAAM,KAAK,KAAK,WAAW,MAAM,IAAI,EAAE,CAAC;AAC1D,sBAAoB,MAAM,OAAO,KAAK,aAAa"}
1
+ {"version":3,"file":"media-button-element.js","names":["#disconnect"],"sources":["../../../src/ui/media-button-element.ts"],"sourcesContent":["import type { InferComponentState, InferMediaState, MediaUIComponent, StateAttrMap } from '@videojs/core';\nimport { applyElementProps, applyStateDataAttrs, createButton, logMissingFeature } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport type { PlayerController } from '../player/player-controller';\nimport { MediaElement } from './media-element';\n\n/** Abstract base for HTML custom elements that render a media-control button. */\nexport abstract class MediaButtonElement<Core extends MediaUIComponent> extends MediaElement {\n static override properties: PropertyDeclarationMap = {\n label: { type: String },\n disabled: { type: Boolean },\n };\n\n disabled = false;\n label = '';\n\n protected abstract readonly core: Core;\n protected abstract readonly stateAttrMap: StateAttrMap<InferComponentState<Core>>;\n protected abstract readonly mediaState: PlayerController<any, InferMediaState<Core> | undefined>;\n\n protected abstract activate(state: InferMediaState<Core>): void;\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#disconnect = new AbortController();\n\n const buttonProps = createButton({\n onActivate: () => this.activate(this.mediaState.value!),\n isDisabled: () => this.disabled || !this.mediaState.value,\n });\n\n applyElementProps(this, buttonProps, { signal: this.#disconnect.signal });\n\n if (__DEV__ && !this.mediaState.value && this.mediaState.displayName) {\n logMissingFeature(this.localName, this.mediaState.displayName);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n this.core.setProps?.(this);\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n\n if (!media) return;\n\n this.core.setMedia(media);\n const state = this.core.getState();\n applyElementProps(this, this.core.getAttrs?.(state) ?? {});\n applyStateDataAttrs(this, state, this.stateAttrMap);\n }\n}\n"],"mappings":";;;;AAQA,IAAsB,qBAAtB,cAAgF,aAAa;;;kBAMhF;eACH;;;oBAN6C;GACnD,OAAO,EAAE,MAAM,QAAQ;GACvB,UAAU,EAAE,MAAM,SAAS;GAC5B;;CAWD,cAAsC;CAEtC,oBAAmC;AACjC,QAAM,mBAAmB;AAEzB,QAAA,aAAmB,IAAI,iBAAiB;EAExC,MAAM,cAAc,aAAa;GAC/B,kBAAkB,KAAK,SAAS,KAAK,WAAW,MAAO;GACvD,kBAAkB,KAAK,YAAY,CAAC,KAAK,WAAW;GACrD,CAAC;AAEF,oBAAkB,MAAM,aAAa,EAAE,QAAQ,MAAA,WAAiB,QAAQ,CAAC;AAEzE,MAAe,CAAC,KAAK,WAAW,SAAS,KAAK,WAAW,YACvD,mBAAkB,KAAK,WAAW,KAAK,WAAW,YAAY;;CAIlE,uBAAsC;AACpC,QAAM,sBAAsB;AAC5B,QAAA,YAAkB,OAAO;AACzB,QAAA,aAAmB;;CAGrB,WAA8B,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AACzB,OAAK,KAAK,WAAW,KAAK;;CAG5B,OAA0B,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,KAAK,WAAW;AAE9B,MAAI,CAAC,MAAO;AAEZ,OAAK,KAAK,SAAS,MAAM;EACzB,MAAM,QAAQ,KAAK,KAAK,UAAU;AAClC,oBAAkB,MAAM,KAAK,KAAK,WAAW,MAAM,IAAI,EAAE,CAAC;AAC1D,sBAAoB,MAAM,OAAO,KAAK,aAAa"}
@@ -1,9 +1,8 @@
1
1
  import { DestroyMixin, ReactiveElement } from "@videojs/element";
2
-
3
2
  //#region src/ui/media-element.ts
4
3
  /** Base class for interactive media UI elements. */
5
4
  var MediaElement = class extends DestroyMixin(ReactiveElement) {};
6
-
7
5
  //#endregion
8
6
  export { MediaElement };
7
+
9
8
  //# sourceMappingURL=media-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"media-element.js","names":[],"sources":["../../../src/ui/media-element.ts"],"sourcesContent":["import { DestroyMixin, ReactiveElement } from '@videojs/element';\nimport type { Constructor } from '@videojs/utils/types';\n\n/** Base class for interactive media UI elements. */\nexport class MediaElement extends DestroyMixin(ReactiveElement) {}\n\nexport interface MediaElementConstructor extends Constructor<MediaElement> {}\n"],"mappings":";;;;AAIA,IAAa,eAAb,cAAkC,aAAa,gBAAgB,CAAC"}
1
+ {"version":3,"file":"media-element.js","names":[],"sources":["../../../src/ui/media-element.ts"],"sourcesContent":["import { DestroyMixin, ReactiveElement } from '@videojs/element';\nimport type { Constructor } from '@videojs/utils/types';\n\n/** Base class for interactive media UI elements. */\nexport class MediaElement extends DestroyMixin(ReactiveElement) {}\n\nexport interface MediaElementConstructor extends Constructor<MediaElement> {}\n"],"mappings":";;;AAIA,IAAa,eAAb,cAAkC,aAAa,gBAAgB,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { MediaElement } from "./media-element.js";
2
2
  import { applyStateDataAttrs, logMissingFeature } from "@videojs/core/dom";
3
-
4
3
  //#region src/ui/media-ui-element.ts
5
4
  /** Abstract base for HTML custom elements that display media state with data attributes. */
6
5
  var MediaUIElement = class extends MediaElement {
@@ -17,7 +16,7 @@ var MediaUIElement = class extends MediaElement {
17
16
  applyStateDataAttrs(this, state, this.stateAttrMap);
18
17
  }
19
18
  };
20
-
21
19
  //#endregion
22
20
  export { MediaUIElement };
21
+
23
22
  //# sourceMappingURL=media-ui-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"media-ui-element.js","names":[],"sources":["../../../src/ui/media-ui-element.ts"],"sourcesContent":["import type { InferComponentState, InferMediaState, MediaUIComponent, StateAttrMap } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\n\nimport type { PlayerController } from '../player/player-controller';\nimport { MediaElement } from './media-element';\n\n/** Abstract base for HTML custom elements that display media state with data attributes. */\nexport abstract class MediaUIElement<Core extends MediaUIComponent> extends MediaElement {\n protected abstract readonly core: Core;\n protected abstract readonly stateAttrMap: StateAttrMap<InferComponentState<Core>>;\n protected abstract readonly mediaState: PlayerController<any, InferMediaState<Core> | undefined>;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (__DEV__ && !this.mediaState.value && this.mediaState.displayName) {\n logMissingFeature(this.localName, this.mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n\n if (!media) return;\n\n this.core.setMedia(media);\n const state = this.core.getState();\n applyStateDataAttrs(this, state, this.stateAttrMap);\n }\n}\n"],"mappings":";;;;;AAQA,IAAsB,iBAAtB,cAA4E,aAAa;CAKvF,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,MAAe,CAAC,KAAK,WAAW,SAAS,KAAK,WAAW,YACvD,mBAAkB,KAAK,WAAW,KAAK,WAAW,YAAY;;CAIlE,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,KAAK,WAAW;AAE9B,MAAI,CAAC,MAAO;AAEZ,OAAK,KAAK,SAAS,MAAM;EACzB,MAAM,QAAQ,KAAK,KAAK,UAAU;AAClC,sBAAoB,MAAM,OAAO,KAAK,aAAa"}
1
+ {"version":3,"file":"media-ui-element.js","names":[],"sources":["../../../src/ui/media-ui-element.ts"],"sourcesContent":["import type { InferComponentState, InferMediaState, MediaUIComponent, StateAttrMap } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\n\nimport type { PlayerController } from '../player/player-controller';\nimport { MediaElement } from './media-element';\n\n/** Abstract base for HTML custom elements that display media state with data attributes. */\nexport abstract class MediaUIElement<Core extends MediaUIComponent> extends MediaElement {\n protected abstract readonly core: Core;\n protected abstract readonly stateAttrMap: StateAttrMap<InferComponentState<Core>>;\n protected abstract readonly mediaState: PlayerController<any, InferMediaState<Core> | undefined>;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (__DEV__ && !this.mediaState.value && this.mediaState.displayName) {\n logMissingFeature(this.localName, this.mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n\n if (!media) return;\n\n this.core.setMedia(media);\n const state = this.core.getState();\n applyStateDataAttrs(this, state, this.stateAttrMap);\n }\n}\n"],"mappings":";;;;AAQA,IAAsB,iBAAtB,cAA4E,aAAa;CAKvF,oBAAmC;AACjC,QAAM,mBAAmB;AAEzB,MAAe,CAAC,KAAK,WAAW,SAAS,KAAK,WAAW,YACvD,mBAAkB,KAAK,WAAW,KAAK,WAAW,YAAY;;CAIlE,OAA0B,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,KAAK,WAAW;AAE9B,MAAI,CAAC,MAAO;AAEZ,OAAK,KAAK,SAAS,MAAM;EACzB,MAAM,QAAQ,KAAK,KAAK,UAAU;AAClC,sBAAoB,MAAM,OAAO,KAAK,aAAa"}
@@ -3,7 +3,6 @@ import { PlayerController } from "../../player/player-controller.js";
3
3
  import { MediaButtonElement } from "../media-button-element.js";
4
4
  import { MuteButtonCore, MuteButtonDataAttrs } from "@videojs/core";
5
5
  import { selectVolume } from "@videojs/core/dom";
6
-
7
6
  //#region src/ui/mute-button/mute-button-element.ts
8
7
  var MuteButtonElement = class extends MediaButtonElement {
9
8
  constructor(..._args) {
@@ -19,7 +18,7 @@ var MuteButtonElement = class extends MediaButtonElement {
19
18
  this.core.toggle(state);
20
19
  }
21
20
  };
22
-
23
21
  //#endregion
24
22
  export { MuteButtonElement };
23
+
25
24
  //# sourceMappingURL=mute-button-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mute-button-element.js","names":[],"sources":["../../../../src/ui/mute-button/mute-button-element.ts"],"sourcesContent":["import { type MediaVolumeState, MuteButtonCore, MuteButtonDataAttrs } from '@videojs/core';\nimport { selectVolume } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class MuteButtonElement extends MediaButtonElement<MuteButtonCore> {\n static readonly tagName = 'media-mute-button';\n\n protected readonly core = new MuteButtonCore();\n protected readonly stateAttrMap = MuteButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectVolume);\n\n protected activate(state: MediaVolumeState): void {\n this.core.toggle(state);\n }\n}\n"],"mappings":";;;;;;;AAOA,IAAa,oBAAb,cAAuC,mBAAmC;;;cAG9C,IAAI,gBAAgB;sBACZ;oBACF,IAAI,iBAAiB,MAAM,eAAe,aAAa;;;iBAJ7D;;CAM1B,AAAU,SAAS,OAA+B;AAChD,OAAK,KAAK,OAAO,MAAM"}
1
+ {"version":3,"file":"mute-button-element.js","names":[],"sources":["../../../../src/ui/mute-button/mute-button-element.ts"],"sourcesContent":["import { type MediaVolumeState, MuteButtonCore, MuteButtonDataAttrs } from '@videojs/core';\nimport { selectVolume } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class MuteButtonElement extends MediaButtonElement<MuteButtonCore> {\n static readonly tagName = 'media-mute-button';\n\n protected readonly core = new MuteButtonCore();\n protected readonly stateAttrMap = MuteButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectVolume);\n\n protected activate(state: MediaVolumeState): void {\n this.core.toggle(state);\n }\n}\n"],"mappings":";;;;;;AAOA,IAAa,oBAAb,cAAuC,mBAAmC;;;cAG9C,IAAI,gBAAgB;sBACZ;oBACF,IAAI,iBAAiB,MAAM,eAAe,aAAa;;;iBAJ7D;;CAM1B,SAAmB,OAA+B;AAChD,OAAK,KAAK,OAAO,MAAM"}
@@ -3,7 +3,6 @@ import { PlayerController } from "../../player/player-controller.js";
3
3
  import { MediaButtonElement } from "../media-button-element.js";
4
4
  import { PiPButtonCore, PiPButtonDataAttrs } from "@videojs/core";
5
5
  import { selectPiP } from "@videojs/core/dom";
6
-
7
6
  //#region src/ui/pip-button/pip-button-element.ts
8
7
  var PiPButtonElement = class extends MediaButtonElement {
9
8
  constructor(..._args) {
@@ -19,7 +18,7 @@ var PiPButtonElement = class extends MediaButtonElement {
19
18
  this.core.toggle(state);
20
19
  }
21
20
  };
22
-
23
21
  //#endregion
24
22
  export { PiPButtonElement };
23
+
25
24
  //# sourceMappingURL=pip-button-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pip-button-element.js","names":[],"sources":["../../../../src/ui/pip-button/pip-button-element.ts"],"sourcesContent":["import { type MediaPictureInPictureState, PiPButtonCore, PiPButtonDataAttrs } from '@videojs/core';\nimport { selectPiP } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class PiPButtonElement extends MediaButtonElement<PiPButtonCore> {\n static readonly tagName = 'media-pip-button';\n\n protected readonly core = new PiPButtonCore();\n protected readonly stateAttrMap = PiPButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPiP);\n\n protected activate(state: MediaPictureInPictureState): void {\n this.core.toggle(state);\n }\n}\n"],"mappings":";;;;;;;AAOA,IAAa,mBAAb,cAAsC,mBAAkC;;;cAG5C,IAAI,eAAe;sBACX;oBACF,IAAI,iBAAiB,MAAM,eAAe,UAAU;;;iBAJ1D;;CAM1B,AAAU,SAAS,OAAyC;AAC1D,OAAK,KAAK,OAAO,MAAM"}
1
+ {"version":3,"file":"pip-button-element.js","names":[],"sources":["../../../../src/ui/pip-button/pip-button-element.ts"],"sourcesContent":["import { type MediaPictureInPictureState, PiPButtonCore, PiPButtonDataAttrs } from '@videojs/core';\nimport { selectPiP } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class PiPButtonElement extends MediaButtonElement<PiPButtonCore> {\n static readonly tagName = 'media-pip-button';\n\n protected readonly core = new PiPButtonCore();\n protected readonly stateAttrMap = PiPButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPiP);\n\n protected activate(state: MediaPictureInPictureState): void {\n this.core.toggle(state);\n }\n}\n"],"mappings":";;;;;;AAOA,IAAa,mBAAb,cAAsC,mBAAkC;;;cAG5C,IAAI,eAAe;sBACX;oBACF,IAAI,iBAAiB,MAAM,eAAe,UAAU;;;iBAJ1D;;CAM1B,SAAmB,OAAyC;AAC1D,OAAK,KAAK,OAAO,MAAM"}