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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/cdn/audio-minimal.dev.d.ts +1 -0
  2. package/cdn/audio-minimal.dev.js +9 -5336
  3. package/cdn/audio-minimal.dev.js.map +1 -1
  4. package/cdn/audio-minimal.js +1 -24
  5. package/cdn/audio-minimal.js.map +1 -1
  6. package/cdn/audio.dev.d.ts +1 -0
  7. package/cdn/audio.dev.js +9 -5336
  8. package/cdn/audio.dev.js.map +1 -1
  9. package/cdn/audio.js +1 -24
  10. package/cdn/audio.js.map +1 -1
  11. package/cdn/background.dev.d.ts +1 -0
  12. package/cdn/background.dev.js +112 -2025
  13. package/cdn/background.dev.js.map +1 -1
  14. package/cdn/background.js +1 -18
  15. package/cdn/background.js.map +1 -1
  16. package/cdn/context-C_e06fGU.js +13 -0
  17. package/cdn/context-C_e06fGU.js.map +1 -0
  18. package/cdn/context-DTY0nOpS.js +98 -0
  19. package/cdn/context-DTY0nOpS.js.map +1 -0
  20. package/cdn/create-player-Dv7K1Ezk.js +3214 -0
  21. package/cdn/create-player-Dv7K1Ezk.js.map +1 -0
  22. package/cdn/create-player-QjiNZlh7.js +7 -0
  23. package/cdn/create-player-QjiNZlh7.js.map +1 -0
  24. package/cdn/default-GgKND7a8.js +2 -0
  25. package/cdn/default-GgKND7a8.js.map +1 -0
  26. package/cdn/default-cLso8BHO.js +28 -0
  27. package/cdn/default-cLso8BHO.js.map +1 -0
  28. package/cdn/listen-BXAYCbZA.js +9 -0
  29. package/cdn/listen-BXAYCbZA.js.map +1 -0
  30. package/cdn/listen-DX5vU4s4.js +2 -0
  31. package/cdn/listen-DX5vU4s4.js.map +1 -0
  32. package/cdn/media/dash-video.dev.d.ts +1 -0
  33. package/cdn/media/dash-video.dev.js +39165 -0
  34. package/cdn/media/dash-video.dev.js.map +1 -0
  35. package/cdn/media/dash-video.js +21 -0
  36. package/cdn/media/dash-video.js.map +1 -0
  37. package/cdn/media/hls-video.dev.d.ts +1 -0
  38. package/cdn/media/hls-video.dev.js +6 -378
  39. package/cdn/media/hls-video.dev.js.map +1 -1
  40. package/cdn/media/hls-video.js +21 -65
  41. package/cdn/media/hls-video.js.map +1 -1
  42. package/cdn/media/simple-hls-video.dev.d.ts +1 -0
  43. package/cdn/media/simple-hls-video.dev.js +6 -377
  44. package/cdn/media/simple-hls-video.dev.js.map +1 -1
  45. package/cdn/media/simple-hls-video.js +1 -45
  46. package/cdn/media/simple-hls-video.js.map +1 -1
  47. package/cdn/media-attach-mixin-ChyNp2eK.js +44 -0
  48. package/cdn/media-attach-mixin-ChyNp2eK.js.map +1 -0
  49. package/cdn/media-attach-mixin-tFNcHnvo.js +2 -0
  50. package/cdn/media-attach-mixin-tFNcHnvo.js.map +1 -0
  51. package/cdn/minimal-BJfleQcQ.js +2 -0
  52. package/cdn/minimal-BJfleQcQ.js.map +1 -0
  53. package/cdn/minimal-DBMdC_0I.js +28 -0
  54. package/cdn/minimal-DBMdC_0I.js.map +1 -0
  55. package/cdn/player-CztIlNio.js +2 -0
  56. package/cdn/player-CztIlNio.js.map +1 -0
  57. package/cdn/player-Dvj38jlr.js +15 -0
  58. package/cdn/player-Dvj38jlr.js.map +1 -0
  59. package/cdn/poster-C4WHg3BH.js +2 -0
  60. package/cdn/poster-C4WHg3BH.js.map +1 -0
  61. package/cdn/poster-O0SI05LC.js +195 -0
  62. package/cdn/poster-O0SI05LC.js.map +1 -0
  63. package/cdn/predicate-BG-dj_kF.js +26 -0
  64. package/cdn/predicate-BG-dj_kF.js.map +1 -0
  65. package/cdn/predicate-Y9jDHLpX.js +2 -0
  66. package/cdn/predicate-Y9jDHLpX.js.map +1 -0
  67. package/cdn/proxy-2oO2ph3m.js +47 -0
  68. package/cdn/proxy-2oO2ph3m.js.map +1 -0
  69. package/cdn/proxy-6KS6wy69.js +2 -0
  70. package/cdn/proxy-6KS6wy69.js.map +1 -0
  71. package/cdn/proxy-XzDf9gyk.js +66 -0
  72. package/cdn/proxy-XzDf9gyk.js.map +1 -0
  73. package/cdn/proxy-dR7IDk37.js +349 -0
  74. package/cdn/proxy-dR7IDk37.js.map +1 -0
  75. package/cdn/safe-define-B8lHgj_K.js +9 -0
  76. package/cdn/safe-define-B8lHgj_K.js.map +1 -0
  77. package/cdn/safe-define-GrHW3P9e.js +2 -0
  78. package/cdn/safe-define-GrHW3P9e.js.map +1 -0
  79. package/cdn/video-minimal.dev.d.ts +1 -0
  80. package/cdn/video-minimal.dev.js +16 -5650
  81. package/cdn/video-minimal.dev.js.map +1 -1
  82. package/cdn/video-minimal.js +1 -24
  83. package/cdn/video-minimal.js.map +1 -1
  84. package/cdn/video.dev.d.ts +1 -0
  85. package/cdn/video.dev.js +24 -5709
  86. package/cdn/video.dev.js.map +1 -1
  87. package/cdn/video.js +1 -24
  88. package/cdn/video.js.map +1 -1
  89. package/cdn/volume-slider-BqzTytgB.js +8 -0
  90. package/cdn/volume-slider-BqzTytgB.js.map +1 -0
  91. package/cdn/volume-slider-CfhOO9RM.js +2453 -0
  92. package/cdn/volume-slider-CfhOO9RM.js.map +1 -0
  93. package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
  94. package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
  95. package/dist/default/_virtual/inline-css_src/define/audio/skin.js +1 -1
  96. package/dist/default/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
  97. package/dist/default/_virtual/inline-css_src/define/background/skin.js +6 -0
  98. package/dist/default/_virtual/inline-css_src/define/background/skin.js.map +1 -0
  99. package/dist/default/_virtual/inline-css_src/define/base.js +1 -1
  100. package/dist/default/_virtual/inline-css_src/define/base.js.map +1 -1
  101. package/dist/default/_virtual/inline-css_src/define/shared.js +6 -0
  102. package/dist/default/_virtual/inline-css_src/define/shared.js.map +1 -0
  103. package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
  104. package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
  105. package/dist/default/_virtual/inline-css_src/define/video/skin.js +1 -1
  106. package/dist/default/_virtual/inline-css_src/define/video/skin.js.map +1 -1
  107. package/dist/default/define/audio/minimal-skin.css +22 -20
  108. package/dist/default/define/audio/minimal-skin.js +1 -1
  109. package/dist/default/define/audio/minimal-skin.js.map +1 -1
  110. package/dist/default/define/audio/minimal-skin.tailwind.js +1 -1
  111. package/dist/default/define/audio/minimal-skin.tailwind.js.map +1 -1
  112. package/dist/default/define/audio/skin.css +19 -22
  113. package/dist/default/define/audio/skin.js +1 -1
  114. package/dist/default/define/audio/skin.js.map +1 -1
  115. package/dist/default/define/audio/skin.tailwind.js +3 -4
  116. package/dist/default/define/audio/skin.tailwind.js.map +1 -1
  117. package/dist/default/define/background/skin.css +1 -1
  118. package/dist/default/define/background/skin.js +11 -1
  119. package/dist/default/define/background/skin.js.map +1 -1
  120. package/dist/default/define/base.css +7 -7
  121. package/dist/default/define/media/dash-video.js +14 -0
  122. package/dist/default/define/media/dash-video.js.map +1 -0
  123. package/dist/default/define/shared.css +6 -0
  124. package/dist/default/define/skin-mixin.js +8 -3
  125. package/dist/default/define/skin-mixin.js.map +1 -1
  126. package/dist/default/define/video/minimal-skin.css +101 -71
  127. package/dist/default/define/video/minimal-skin.js +2 -1
  128. package/dist/default/define/video/minimal-skin.js.map +1 -1
  129. package/dist/default/define/video/minimal-skin.tailwind.js +4 -2
  130. package/dist/default/define/video/minimal-skin.tailwind.js.map +1 -1
  131. package/dist/default/define/video/skin.css +98 -72
  132. package/dist/default/define/video/skin.js +2 -1
  133. package/dist/default/define/video/skin.js.map +1 -1
  134. package/dist/default/define/video/skin.tailwind.js +4 -2
  135. package/dist/default/define/video/skin.tailwind.js.map +1 -1
  136. package/dist/default/icons/dist/render/default/index.js +2 -1
  137. package/dist/default/icons/dist/render/default/index.js.map +1 -1
  138. package/dist/default/icons/dist/render/minimal/index.js +2 -1
  139. package/dist/default/icons/dist/render/minimal/index.js.map +1 -1
  140. package/dist/default/index.js +3 -2
  141. package/dist/default/media/background-video/index.js +5 -1
  142. package/dist/default/media/background-video/index.js.map +1 -1
  143. package/dist/default/media/container-element.js +5 -2
  144. package/dist/default/media/container-element.js.map +1 -1
  145. package/dist/default/media/dash-video/index.js +26 -0
  146. package/dist/default/media/dash-video/index.js.map +1 -0
  147. package/dist/default/media/hls-video/index.js +2 -1
  148. package/dist/default/media/hls-video/index.js.map +1 -1
  149. package/dist/default/media/simple-hls-video/index.js +2 -1
  150. package/dist/default/media/simple-hls-video/index.js.map +1 -1
  151. package/dist/default/player/context.js +6 -2
  152. package/dist/default/player/context.js.map +1 -1
  153. package/dist/default/player/create-player.js +11 -3
  154. package/dist/default/player/create-player.js.map +1 -1
  155. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +6 -5
  156. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  157. package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
  158. package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  159. package/dist/default/skins/dist/default/default/tailwind/components/error.js +1 -1
  160. package/dist/default/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  161. package/dist/default/skins/dist/default/default/tailwind/components/poster.js +16 -0
  162. package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -0
  163. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +6 -5
  164. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  165. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +1 -1
  166. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  167. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  168. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  169. package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
  170. package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
  171. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +16 -0
  172. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -0
  173. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +1 -1
  174. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  175. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +6 -4
  176. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  177. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +5 -0
  178. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  179. package/dist/default/store/container-mixin.js +16 -72
  180. package/dist/default/store/container-mixin.js.map +1 -1
  181. package/dist/default/store/media-attach-mixin.js +45 -0
  182. package/dist/default/store/media-attach-mixin.js.map +1 -0
  183. package/dist/default/store/provider-mixin.js +99 -9
  184. package/dist/default/store/provider-mixin.js.map +1 -1
  185. package/dist/default/ui/popover/popover-element.js +54 -3
  186. package/dist/default/ui/popover/popover-element.js.map +1 -1
  187. package/dist/default/ui/time-slider/time-slider-element.js +1 -1
  188. package/dist/default/ui/time-slider/time-slider-element.js.map +1 -1
  189. package/dist/default/ui/tooltip/tooltip-element.js +53 -3
  190. package/dist/default/ui/tooltip/tooltip-element.js.map +1 -1
  191. package/dist/default/ui/volume-slider/volume-slider-element.js +3 -3
  192. package/dist/default/ui/volume-slider/volume-slider-element.js.map +1 -1
  193. package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
  194. package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
  195. package/dist/dev/_virtual/inline-css_src/define/audio/skin.js +1 -1
  196. package/dist/dev/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
  197. package/dist/dev/_virtual/inline-css_src/define/background/skin.js +6 -0
  198. package/dist/dev/_virtual/inline-css_src/define/background/skin.js.map +1 -0
  199. package/dist/dev/_virtual/inline-css_src/define/base.js +1 -1
  200. package/dist/dev/_virtual/inline-css_src/define/base.js.map +1 -1
  201. package/dist/dev/_virtual/inline-css_src/define/shared.js +6 -0
  202. package/dist/dev/_virtual/inline-css_src/define/shared.js.map +1 -0
  203. package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
  204. package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
  205. package/dist/dev/_virtual/inline-css_src/define/video/skin.js +1 -1
  206. package/dist/dev/_virtual/inline-css_src/define/video/skin.js.map +1 -1
  207. package/dist/dev/define/audio/minimal-skin.css +22 -20
  208. package/dist/dev/define/audio/minimal-skin.d.ts.map +1 -1
  209. package/dist/dev/define/audio/minimal-skin.js +2 -0
  210. package/dist/dev/define/audio/minimal-skin.js.map +1 -1
  211. package/dist/dev/define/audio/minimal-skin.tailwind.d.ts.map +1 -1
  212. package/dist/dev/define/audio/minimal-skin.tailwind.js +3 -1
  213. package/dist/dev/define/audio/minimal-skin.tailwind.js.map +1 -1
  214. package/dist/dev/define/audio/skin.css +19 -22
  215. package/dist/dev/define/audio/skin.d.ts.map +1 -1
  216. package/dist/dev/define/audio/skin.js +2 -0
  217. package/dist/dev/define/audio/skin.js.map +1 -1
  218. package/dist/dev/define/audio/skin.tailwind.d.ts.map +1 -1
  219. package/dist/dev/define/audio/skin.tailwind.js +5 -4
  220. package/dist/dev/define/audio/skin.tailwind.js.map +1 -1
  221. package/dist/dev/define/background/skin.css +1 -1
  222. package/dist/dev/define/background/skin.d.ts.map +1 -1
  223. package/dist/dev/define/background/skin.js +13 -1
  224. package/dist/dev/define/background/skin.js.map +1 -1
  225. package/dist/dev/define/base.css +7 -7
  226. package/dist/dev/define/media/dash-video.d.ts +14 -0
  227. package/dist/dev/define/media/dash-video.d.ts.map +1 -0
  228. package/dist/dev/define/media/dash-video.js +14 -0
  229. package/dist/dev/define/media/dash-video.js.map +1 -0
  230. package/dist/dev/define/shared.css +6 -0
  231. package/dist/dev/define/skin-mixin.d.ts.map +1 -1
  232. package/dist/dev/define/skin-mixin.js +8 -3
  233. package/dist/dev/define/skin-mixin.js.map +1 -1
  234. package/dist/dev/define/video/minimal-skin.css +101 -71
  235. package/dist/dev/define/video/minimal-skin.d.ts.map +1 -1
  236. package/dist/dev/define/video/minimal-skin.js +10 -2
  237. package/dist/dev/define/video/minimal-skin.js.map +1 -1
  238. package/dist/dev/define/video/minimal-skin.tailwind.d.ts.map +1 -1
  239. package/dist/dev/define/video/minimal-skin.tailwind.js +13 -4
  240. package/dist/dev/define/video/minimal-skin.tailwind.js.map +1 -1
  241. package/dist/dev/define/video/skin.css +98 -72
  242. package/dist/dev/define/video/skin.d.ts.map +1 -1
  243. package/dist/dev/define/video/skin.js +9 -1
  244. package/dist/dev/define/video/skin.js.map +1 -1
  245. package/dist/dev/define/video/skin.tailwind.d.ts.map +1 -1
  246. package/dist/dev/define/video/skin.tailwind.js +13 -4
  247. package/dist/dev/define/video/skin.tailwind.js.map +1 -1
  248. package/dist/dev/icons/dist/render/default/index.js +2 -1
  249. package/dist/dev/icons/dist/render/default/index.js.map +1 -1
  250. package/dist/dev/icons/dist/render/minimal/index.js +2 -1
  251. package/dist/dev/icons/dist/render/minimal/index.js.map +1 -1
  252. package/dist/dev/index.d.ts +5 -4
  253. package/dist/dev/index.js +3 -2
  254. package/dist/dev/media/background-video/index.d.ts +8 -1
  255. package/dist/dev/media/background-video/index.d.ts.map +1 -1
  256. package/dist/dev/media/background-video/index.js +5 -1
  257. package/dist/dev/media/background-video/index.js.map +1 -1
  258. package/dist/dev/media/container-element.js +5 -2
  259. package/dist/dev/media/container-element.js.map +1 -1
  260. package/dist/dev/media/dash-video/index.d.ts +13 -0
  261. package/dist/dev/media/dash-video/index.d.ts.map +1 -0
  262. package/dist/dev/media/dash-video/index.js +26 -0
  263. package/dist/dev/media/dash-video/index.js.map +1 -0
  264. package/dist/dev/media/hls-video/index.d.ts +2 -1
  265. package/dist/dev/media/hls-video/index.d.ts.map +1 -1
  266. package/dist/dev/media/hls-video/index.js +2 -1
  267. package/dist/dev/media/hls-video/index.js.map +1 -1
  268. package/dist/dev/media/simple-hls-video/index.d.ts +2 -1
  269. package/dist/dev/media/simple-hls-video/index.d.ts.map +1 -1
  270. package/dist/dev/media/simple-hls-video/index.js +2 -1
  271. package/dist/dev/media/simple-hls-video/index.js.map +1 -1
  272. package/dist/dev/player/context.d.ts +16 -2
  273. package/dist/dev/player/context.d.ts.map +1 -1
  274. package/dist/dev/player/context.js +6 -2
  275. package/dist/dev/player/context.js.map +1 -1
  276. package/dist/dev/player/create-player.d.ts +1 -1
  277. package/dist/dev/player/create-player.js +11 -3
  278. package/dist/dev/player/create-player.js.map +1 -1
  279. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +6 -5
  280. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  281. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +1 -1
  282. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  283. package/dist/dev/skins/dist/default/default/tailwind/components/error.js +1 -1
  284. package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  285. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +16 -0
  286. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -0
  287. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +6 -5
  288. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  289. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +1 -1
  290. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  291. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  292. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  293. package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
  294. package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
  295. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +16 -0
  296. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -0
  297. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js +1 -1
  298. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  299. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +6 -4
  300. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  301. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +5 -0
  302. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  303. package/dist/dev/store/container-mixin.d.ts +10 -5
  304. package/dist/dev/store/container-mixin.d.ts.map +1 -1
  305. package/dist/dev/store/container-mixin.js +16 -72
  306. package/dist/dev/store/container-mixin.js.map +1 -1
  307. package/dist/dev/store/media-attach-mixin.d.ts +19 -0
  308. package/dist/dev/store/media-attach-mixin.d.ts.map +1 -0
  309. package/dist/dev/store/media-attach-mixin.js +45 -0
  310. package/dist/dev/store/media-attach-mixin.js.map +1 -0
  311. package/dist/dev/store/provider-mixin.d.ts +19 -6
  312. package/dist/dev/store/provider-mixin.d.ts.map +1 -1
  313. package/dist/dev/store/provider-mixin.js +99 -9
  314. package/dist/dev/store/provider-mixin.js.map +1 -1
  315. package/dist/dev/ui/popover/popover-element.d.ts.map +1 -1
  316. package/dist/dev/ui/popover/popover-element.js +54 -3
  317. package/dist/dev/ui/popover/popover-element.js.map +1 -1
  318. package/dist/dev/ui/time-slider/time-slider-element.js +1 -1
  319. package/dist/dev/ui/time-slider/time-slider-element.js.map +1 -1
  320. package/dist/dev/ui/tooltip/tooltip-element.d.ts.map +1 -1
  321. package/dist/dev/ui/tooltip/tooltip-element.js +53 -3
  322. package/dist/dev/ui/tooltip/tooltip-element.js.map +1 -1
  323. package/dist/dev/ui/volume-slider/volume-slider-element.js +3 -3
  324. package/dist/dev/ui/volume-slider/volume-slider-element.js.map +1 -1
  325. package/package.json +21 -10
  326. package/cdn/audio-minimal.css +0 -1
  327. package/cdn/audio.css +0 -1
  328. package/cdn/background.css +0 -1
  329. package/cdn/video-minimal.css +0 -1
  330. package/cdn/video.css +0 -1
@@ -0,0 +1,44 @@
1
+ import { a as ContextRequestEvent, n as mediaContext } from "./context-DTY0nOpS.js";
2
+
3
+ //#region src/store/media-attach-mixin.ts
4
+ /**
5
+ * Create a mixin that consumes `mediaContext` and registers the
6
+ * element as the media with the provider.
7
+ *
8
+ * Uses the raw context-request protocol so it works with any
9
+ * `HTMLElement` subclass — no `ReactiveControllerHost` required.
10
+ *
11
+ * @param context - The media context to consume.
12
+ */
13
+ function createMediaAttachMixin(context) {
14
+ return (BaseClass) => {
15
+ class MediaAttachElement extends BaseClass {
16
+ #setMedia = null;
17
+ #unsubscribe = null;
18
+ getMediaTarget() {
19
+ return this;
20
+ }
21
+ connectedCallback() {
22
+ super.connectedCallback?.();
23
+ this.dispatchEvent(new ContextRequestEvent(context, this, (value, unsubscribe) => {
24
+ if (unsubscribe) this.#unsubscribe = unsubscribe;
25
+ this.#setMedia = value?.setMedia ?? null;
26
+ if (this.isConnected) this.#setMedia?.(this.getMediaTarget());
27
+ }, true));
28
+ }
29
+ disconnectedCallback() {
30
+ super.disconnectedCallback?.();
31
+ this.#setMedia?.(null);
32
+ this.#unsubscribe?.();
33
+ this.#unsubscribe = null;
34
+ this.#setMedia = null;
35
+ }
36
+ }
37
+ return MediaAttachElement;
38
+ };
39
+ }
40
+ const MediaAttachMixin = createMediaAttachMixin(mediaContext);
41
+
42
+ //#endregion
43
+ export { MediaAttachMixin as t };
44
+ //# sourceMappingURL=media-attach-mixin-ChyNp2eK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media-attach-mixin-ChyNp2eK.js","names":["ContextEvent","#unsubscribe","#setMedia"],"sources":["../src/store/media-attach-mixin.ts"],"sourcesContent":["import type { Media } from '@videojs/core/dom';\nimport { ContextEvent } from '@videojs/element/context';\nimport type { CustomElement } from '@videojs/utils/dom';\nimport type { AnyConstructor, Constructor } from '@videojs/utils/types';\nimport { type MediaContext, mediaContext } from '../player/context';\n\nexport type MediaAttachMixin = <Class extends AnyConstructor<HTMLElement>>(BaseClass: Class) => Class;\n\n/**\n * Create a mixin that consumes `mediaContext` and registers the\n * element as the media with the provider.\n *\n * Uses the raw context-request protocol so it works with any\n * `HTMLElement` subclass — no `ReactiveControllerHost` required.\n *\n * @param context - The media context to consume.\n */\nexport function createMediaAttachMixin(context: MediaContext): MediaAttachMixin {\n return <Class extends AnyConstructor<HTMLElement>>(BaseClass: Class) => {\n class MediaAttachElement extends (BaseClass as unknown as Constructor<CustomElement>) {\n #setMedia: ((media: Media | null) => void) | null = null;\n #unsubscribe: (() => void) | null = null;\n\n getMediaTarget(): Media | null {\n return this as unknown as Media;\n }\n\n override connectedCallback() {\n super.connectedCallback?.();\n\n this.dispatchEvent(\n new ContextEvent(\n context,\n this,\n (value, unsubscribe) => {\n if (unsubscribe) this.#unsubscribe = unsubscribe;\n this.#setMedia = value?.setMedia ?? null;\n if (this.isConnected) {\n this.#setMedia?.(this.getMediaTarget());\n }\n },\n true\n )\n );\n }\n\n override disconnectedCallback() {\n super.disconnectedCallback?.();\n this.#setMedia?.(null);\n this.#unsubscribe?.();\n this.#unsubscribe = null;\n this.#setMedia = null;\n }\n }\n\n return MediaAttachElement as unknown as Class;\n };\n}\n\nexport const MediaAttachMixin = createMediaAttachMixin(mediaContext);\n"],"mappings":";;;;;;;;;;;;AAiBA,SAAgB,uBAAuB,SAAyC;AAC9E,SAAmD,cAAqB;EACtE,MAAM,2BAA4B,UAAoD;GACpF,YAAoD;GACpD,eAAoC;GAEpC,iBAA+B;AAC7B,WAAO;;GAGT,AAAS,oBAAoB;AAC3B,UAAM,qBAAqB;AAE3B,SAAK,cACH,IAAIA,oBACF,SACA,OACC,OAAO,gBAAgB;AACtB,SAAI,YAAa,OAAKC,cAAe;AACrC,WAAKC,WAAY,OAAO,YAAY;AACpC,SAAI,KAAK,YACP,OAAKA,WAAY,KAAK,gBAAgB,CAAC;OAG3C,KACD,CACF;;GAGH,AAAS,uBAAuB;AAC9B,UAAM,wBAAwB;AAC9B,UAAKA,WAAY,KAAK;AACtB,UAAKD,eAAgB;AACrB,UAAKA,cAAe;AACpB,UAAKC,WAAY;;;AAIrB,SAAO;;;AAIX,MAAa,mBAAmB,uBAAuB,aAAa"}
@@ -0,0 +1,2 @@
1
+ import{a as e,n as t}from"./context-C_e06fGU.js";function n(t){return n=>{class r extends n{#e=null;#t=null;getMediaTarget(){return this}connectedCallback(){super.connectedCallback?.(),this.dispatchEvent(new e(t,this,(e,t)=>{t&&(this.#t=t),this.#e=e?.setMedia??null,this.isConnected&&this.#e?.(this.getMediaTarget())},!0))}disconnectedCallback(){super.disconnectedCallback?.(),this.#e?.(null),this.#t?.(),this.#t=null,this.#e=null}}return r}}const r=n(t);export{r as t};
2
+ //# sourceMappingURL=media-attach-mixin-tFNcHnvo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media-attach-mixin-tFNcHnvo.js","names":["ContextEvent","#unsubscribe","#setMedia"],"sources":["../src/store/media-attach-mixin.ts"],"sourcesContent":["import type { Media } from '@videojs/core/dom';\nimport { ContextEvent } from '@videojs/element/context';\nimport type { CustomElement } from '@videojs/utils/dom';\nimport type { AnyConstructor, Constructor } from '@videojs/utils/types';\nimport { type MediaContext, mediaContext } from '../player/context';\n\nexport type MediaAttachMixin = <Class extends AnyConstructor<HTMLElement>>(BaseClass: Class) => Class;\n\n/**\n * Create a mixin that consumes `mediaContext` and registers the\n * element as the media with the provider.\n *\n * Uses the raw context-request protocol so it works with any\n * `HTMLElement` subclass — no `ReactiveControllerHost` required.\n *\n * @param context - The media context to consume.\n */\nexport function createMediaAttachMixin(context: MediaContext): MediaAttachMixin {\n return <Class extends AnyConstructor<HTMLElement>>(BaseClass: Class) => {\n class MediaAttachElement extends (BaseClass as unknown as Constructor<CustomElement>) {\n #setMedia: ((media: Media | null) => void) | null = null;\n #unsubscribe: (() => void) | null = null;\n\n getMediaTarget(): Media | null {\n return this as unknown as Media;\n }\n\n override connectedCallback() {\n super.connectedCallback?.();\n\n this.dispatchEvent(\n new ContextEvent(\n context,\n this,\n (value, unsubscribe) => {\n if (unsubscribe) this.#unsubscribe = unsubscribe;\n this.#setMedia = value?.setMedia ?? null;\n if (this.isConnected) {\n this.#setMedia?.(this.getMediaTarget());\n }\n },\n true\n )\n );\n }\n\n override disconnectedCallback() {\n super.disconnectedCallback?.();\n this.#setMedia?.(null);\n this.#unsubscribe?.();\n this.#unsubscribe = null;\n this.#setMedia = null;\n }\n }\n\n return MediaAttachElement as unknown as Class;\n };\n}\n\nexport const MediaAttachMixin = createMediaAttachMixin(mediaContext);\n"],"mappings":"iDAiBA,SAAgB,EAAuB,EAAyC,CAC9E,MAAmD,IAAqB,CACtE,MAAM,UAA4B,CAAoD,CACpF,GAAoD,KACpD,GAAoC,KAEpC,gBAA+B,CAC7B,OAAO,KAGT,mBAA6B,CAC3B,MAAM,qBAAqB,CAE3B,KAAK,cACH,IAAIA,EACF,EACA,MACC,EAAO,IAAgB,CAClB,IAAa,MAAA,EAAoB,GACrC,MAAA,EAAiB,GAAO,UAAY,KAChC,KAAK,aACP,MAAA,IAAiB,KAAK,gBAAgB,CAAC,EAG3C,GACD,CACF,CAGH,sBAAgC,CAC9B,MAAM,wBAAwB,CAC9B,MAAA,IAAiB,KAAK,CACtB,MAAA,KAAqB,CACrB,MAAA,EAAoB,KACpB,MAAA,EAAiB,MAIrB,OAAO,GAIX,MAAa,EAAmB,EAAuB,EAAa"}
@@ -0,0 +1,2 @@
1
+ const e={"captions-off":`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><rect width="16.5" height="12.5" x=".75" y="2.75" stroke="currentColor" stroke-width="1.5" rx="3"/><rect width="3" height="1.5" x="3" y="8.5" fill="currentColor" rx=".75"/><rect width="2" height="1.5" x="13" y="8.5" fill="currentColor" rx=".75"/><rect width="4" height="1.5" x="11" y="11.5" fill="currentColor" rx=".75"/><rect width="5" height="1.5" x="7" y="8.5" fill="currentColor" rx=".75"/><rect width="7" height="1.5" x="3" y="11.5" fill="currentColor" rx=".75"/></svg>`,"captions-on":`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M15 2a3 3 0 0 1 3 3v8a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3zM3.75 11.5a.75.75 0 0 0 0 1.5h5.5a.75.75 0 0 0 0-1.5zm8 0a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5zm-8-3a.75.75 0 0 0 0 1.5h1.5a.75.75 0 0 0 0-1.5zm4 0a.75.75 0 0 0 0 1.5h3.5a.75.75 0 0 0 0-1.5zm6 0a.75.75 0 0 0 0 1.5h.5a.75.75 0 0 0 0-1.5z"/></svg>`,"fullscreen-enter":`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M15.25 2a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V3.5h-3.75a.75.75 0 0 1-.743-.648L10 2.75a.75.75 0 0 1 .75-.75z"/><path fill="currentColor" d="M14.72 2.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 1 1-1.06-1.06zM2.75 10a.75.75 0 0 1 .75.75v3.75h3.75a.75.75 0 0 1 .743.648L8 15.25a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 1 .75-.75"/><path fill="currentColor" d="M6.72 10.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06-1.06z"/></svg>`,"fullscreen-exit":`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M10.75 2a.75.75 0 0 1 .75.75V6.5h3.75a.75.75 0 0 1 .743.648L16 7.25a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 1 .75-.75"/><path fill="currentColor" d="M14.72 2.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 1 1-1.06-1.06zM7.25 10a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V11.5H2.75a.75.75 0 0 1-.743-.648L2 10.75a.75.75 0 0 1 .75-.75z"/><path fill="currentColor" d="M6.72 10.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06-1.06z"/></svg>`,pause:`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><rect width="4" height="12" x="3" y="3" fill="currentColor" rx="1.75"/><rect width="4" height="12" x="11" y="3" fill="currentColor" rx="1.75"/></svg>`,"pip-enter":`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M13 2a4 4 0 0 1 4 4v2.645a3.5 3.5 0 0 0-1-.145h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5c0 .347.05.683.145 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z"/><rect width="10" height="7" x="8" y="10" fill="currentColor" rx="2"/><path fill="currentColor" d="M7.25 10A.75.75 0 0 0 8 9.25v-3.5a.75.75 0 0 0-1.5 0V8.5H3.75a.75.75 0 0 0-.743.648L3 9.25c0 .414.336.75.75.75z"/><path fill="currentColor" d="M6.72 9.78a.75.75 0 0 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 1.06z"/></svg>`,"pip-exit":`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M13 2a4 4 0 0 1 4 4v2.646a3.5 3.5 0 0 0-1-.146h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5q.002.523.146 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z"/><rect width="10" height="7" x="8" y="10" fill="currentColor" rx="2"/><path fill="currentColor" d="M3.75 5a.75.75 0 0 0-.75.75v3.5a.75.75 0 0 0 1.5 0V6.5h2.75a.75.75 0 0 0 .743-.648L8 5.75A.75.75 0 0 0 7.25 5z"/><path fill="currentColor" d="M4.28 5.22a.75.75 0 0 0-1.06 1.06l3.5 3.5a.75.75 0 0 0 1.06-1.06z"/></svg>`,play:`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="m13.473 10.476-6.845 4.256a1.697 1.697 0 0 1-2.364-.547 1.77 1.77 0 0 1-.264-.93v-8.51C4 3.78 4.768 3 5.714 3c.324 0 .64.093.914.268l6.845 4.255a1.763 1.763 0 0 1 0 2.953"/></svg>`,restart:`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M9 17a8 8 0 0 1-8-8h1.5a6.5 6.5 0 1 0 1.43-4.07l1.643 1.643A.25.25 0 0 1 5.396 7H1.25A.25.25 0 0 1 1 6.75V2.604a.25.25 0 0 1 .427-.177l1.438 1.438A8 8 0 1 1 9 17"/><path fill="currentColor" d="m11.61 9.639-3.331 2.07a.826.826 0 0 1-1.15-.266.86.86 0 0 1-.129-.452V6.849C7 6.38 7.374 6 7.834 6c.158 0 .312.045.445.13l3.331 2.071a.858.858 0 0 1 0 1.438"/></svg>`,seek:`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M1 9c0 2.21.895 4.21 2.343 5.657l1.06-1.06a6.5 6.5 0 1 1 9.665-8.665l-1.641 1.641a.25.25 0 0 0 .177.427h4.146a.25.25 0 0 0 .25-.25V2.604a.25.25 0 0 0-.427-.177l-1.438 1.438A8 8 0 0 0 1 9"/></svg>`,spinner:`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" viewBox="0 0 18 18"><rect width="2" height="5" x="8" y=".5" opacity=".5" rx="1"><animate attributeName="opacity" begin="0s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="2" height="5" x="12.243" y="2.257" opacity=".45" rx="1" transform="rotate(45 13.243 4.757)"><animate attributeName="opacity" begin="0.125s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="5" height="2" x="12.5" y="8" opacity=".4" rx="1"><animate attributeName="opacity" begin="0.25s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="5" height="2" x="10.743" y="12.243" opacity=".35" rx="1" transform="rotate(45 13.243 13.243)"><animate attributeName="opacity" begin="0.375s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="2" height="5" x="8" y="12.5" opacity=".3" rx="1"><animate attributeName="opacity" begin="0.5s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="2" height="5" x="3.757" y="10.743" opacity=".25" rx="1" transform="rotate(45 4.757 13.243)"><animate attributeName="opacity" begin="0.625s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="5" height="2" x=".5" y="8" opacity=".15" rx="1"><animate attributeName="opacity" begin="0.75s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="5" height="2" x="2.257" y="3.757" opacity=".1" rx="1" transform="rotate(45 4.757 4.757)"><animate attributeName="opacity" begin="0.875s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect></svg>`,"volume-high":`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M15.6 3.3c-.4-.4-1-.4-1.4 0s-.4 1 0 1.4C15.4 5.9 16 7.4 16 9s-.6 3.1-1.8 4.3c-.4.4-.4 1 0 1.4.2.2.5.3.7.3.3 0 .5-.1.7-.3C17.1 13.2 18 11.2 18 9s-.9-4.2-2.4-5.7"/><path fill="currentColor" d="M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752m10.568.59a.91.91 0 0 1 0-1.316.91.91 0 0 1 1.316 0c1.203 1.203 1.47 2.216 1.522 3.208q.012.255.011.51c0 1.16-.358 2.733-1.533 3.803a.7.7 0 0 1-.298.156c-.382.106-.873-.011-1.018-.156a.91.91 0 0 1 0-1.316c.57-.57.995-1.551.995-2.487 0-.944-.26-1.667-.995-2.402"/></svg>`,"volume-low":`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752m10.568.59a.91.91 0 0 1 0-1.316.91.91 0 0 1 1.316 0c1.203 1.203 1.47 2.216 1.522 3.208q.012.255.011.51c0 1.16-.358 2.733-1.533 3.803a.7.7 0 0 1-.298.156c-.382.106-.873-.011-1.018-.156a.91.91 0 0 1 0-1.316c.57-.57.995-1.551.995-2.487 0-.944-.26-1.667-.995-2.402"/></svg>`,"volume-off":`<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752M14.5 7.586l-1.768-1.768a1 1 0 1 0-1.414 1.414L13.085 9l-1.767 1.768a1 1 0 0 0 1.414 1.414l1.768-1.768 1.768 1.768a1 1 0 0 0 1.414-1.414L15.914 9l1.768-1.768a1 1 0 0 0-1.414-1.414z"/></svg>`};function t(t,n){let r=e[t];if(!r)return``;if(!n)return r;let i=Object.entries(n).map(([e,t])=>` ${e}="${t}"`).join(``);return r.replace(`<svg`,`<svg${i}`)}export{t};
2
+ //# sourceMappingURL=minimal-BJfleQcQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimal-BJfleQcQ.js","names":[],"sources":["../../icons/dist/render/minimal/index.js"],"sourcesContent":["const icons = {\n \"captions-off\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><rect width=\"16.5\" height=\"12.5\" x=\".75\" y=\"2.75\" stroke=\"currentColor\" stroke-width=\"1.5\" rx=\"3\"/><rect width=\"3\" height=\"1.5\" x=\"3\" y=\"8.5\" fill=\"currentColor\" rx=\".75\"/><rect width=\"2\" height=\"1.5\" x=\"13\" y=\"8.5\" fill=\"currentColor\" rx=\".75\"/><rect width=\"4\" height=\"1.5\" x=\"11\" y=\"11.5\" fill=\"currentColor\" rx=\".75\"/><rect width=\"5\" height=\"1.5\" x=\"7\" y=\"8.5\" fill=\"currentColor\" rx=\".75\"/><rect width=\"7\" height=\"1.5\" x=\"3\" y=\"11.5\" fill=\"currentColor\" rx=\".75\"/></svg>`,\n \"captions-on\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M15 2a3 3 0 0 1 3 3v8a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3zM3.75 11.5a.75.75 0 0 0 0 1.5h5.5a.75.75 0 0 0 0-1.5zm8 0a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5zm-8-3a.75.75 0 0 0 0 1.5h1.5a.75.75 0 0 0 0-1.5zm4 0a.75.75 0 0 0 0 1.5h3.5a.75.75 0 0 0 0-1.5zm6 0a.75.75 0 0 0 0 1.5h.5a.75.75 0 0 0 0-1.5z\"/></svg>`,\n \"fullscreen-enter\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M15.25 2a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V3.5h-3.75a.75.75 0 0 1-.743-.648L10 2.75a.75.75 0 0 1 .75-.75z\"/><path fill=\"currentColor\" d=\"M14.72 2.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 1 1-1.06-1.06zM2.75 10a.75.75 0 0 1 .75.75v3.75h3.75a.75.75 0 0 1 .743.648L8 15.25a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 1 .75-.75\"/><path fill=\"currentColor\" d=\"M6.72 10.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06-1.06z\"/></svg>`,\n \"fullscreen-exit\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M10.75 2a.75.75 0 0 1 .75.75V6.5h3.75a.75.75 0 0 1 .743.648L16 7.25a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 1 .75-.75\"/><path fill=\"currentColor\" d=\"M14.72 2.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 1 1-1.06-1.06zM7.25 10a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V11.5H2.75a.75.75 0 0 1-.743-.648L2 10.75a.75.75 0 0 1 .75-.75z\"/><path fill=\"currentColor\" d=\"M6.72 10.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06-1.06z\"/></svg>`,\n \"pause\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><rect width=\"4\" height=\"12\" x=\"3\" y=\"3\" fill=\"currentColor\" rx=\"1.75\"/><rect width=\"4\" height=\"12\" x=\"11\" y=\"3\" fill=\"currentColor\" rx=\"1.75\"/></svg>`,\n \"pip-enter\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M13 2a4 4 0 0 1 4 4v2.645a3.5 3.5 0 0 0-1-.145h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5c0 .347.05.683.145 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z\"/><rect width=\"10\" height=\"7\" x=\"8\" y=\"10\" fill=\"currentColor\" rx=\"2\"/><path fill=\"currentColor\" d=\"M7.25 10A.75.75 0 0 0 8 9.25v-3.5a.75.75 0 0 0-1.5 0V8.5H3.75a.75.75 0 0 0-.743.648L3 9.25c0 .414.336.75.75.75z\"/><path fill=\"currentColor\" d=\"M6.72 9.78a.75.75 0 0 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 1.06z\"/></svg>`,\n \"pip-exit\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M13 2a4 4 0 0 1 4 4v2.646a3.5 3.5 0 0 0-1-.146h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5q.002.523.146 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z\"/><rect width=\"10\" height=\"7\" x=\"8\" y=\"10\" fill=\"currentColor\" rx=\"2\"/><path fill=\"currentColor\" d=\"M3.75 5a.75.75 0 0 0-.75.75v3.5a.75.75 0 0 0 1.5 0V6.5h2.75a.75.75 0 0 0 .743-.648L8 5.75A.75.75 0 0 0 7.25 5z\"/><path fill=\"currentColor\" d=\"M4.28 5.22a.75.75 0 0 0-1.06 1.06l3.5 3.5a.75.75 0 0 0 1.06-1.06z\"/></svg>`,\n \"play\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"m13.473 10.476-6.845 4.256a1.697 1.697 0 0 1-2.364-.547 1.77 1.77 0 0 1-.264-.93v-8.51C4 3.78 4.768 3 5.714 3c.324 0 .64.093.914.268l6.845 4.255a1.763 1.763 0 0 1 0 2.953\"/></svg>`,\n \"restart\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M9 17a8 8 0 0 1-8-8h1.5a6.5 6.5 0 1 0 1.43-4.07l1.643 1.643A.25.25 0 0 1 5.396 7H1.25A.25.25 0 0 1 1 6.75V2.604a.25.25 0 0 1 .427-.177l1.438 1.438A8 8 0 1 1 9 17\"/><path fill=\"currentColor\" d=\"m11.61 9.639-3.331 2.07a.826.826 0 0 1-1.15-.266.86.86 0 0 1-.129-.452V6.849C7 6.38 7.374 6 7.834 6c.158 0 .312.045.445.13l3.331 2.071a.858.858 0 0 1 0 1.438\"/></svg>`,\n \"seek\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M1 9c0 2.21.895 4.21 2.343 5.657l1.06-1.06a6.5 6.5 0 1 1 9.665-8.665l-1.641 1.641a.25.25 0 0 0 .177.427h4.146a.25.25 0 0 0 .25-.25V2.604a.25.25 0 0 0-.427-.177l-1.438 1.438A8 8 0 0 0 1 9\"/></svg>`,\n \"spinner\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"currentColor\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><rect width=\"2\" height=\"5\" x=\"8\" y=\".5\" opacity=\".5\" rx=\"1\"><animate attributeName=\"opacity\" begin=\"0s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"2\" height=\"5\" x=\"12.243\" y=\"2.257\" opacity=\".45\" rx=\"1\" transform=\"rotate(45 13.243 4.757)\"><animate attributeName=\"opacity\" begin=\"0.125s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"5\" height=\"2\" x=\"12.5\" y=\"8\" opacity=\".4\" rx=\"1\"><animate attributeName=\"opacity\" begin=\"0.25s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"5\" height=\"2\" x=\"10.743\" y=\"12.243\" opacity=\".35\" rx=\"1\" transform=\"rotate(45 13.243 13.243)\"><animate attributeName=\"opacity\" begin=\"0.375s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"2\" height=\"5\" x=\"8\" y=\"12.5\" opacity=\".3\" rx=\"1\"><animate attributeName=\"opacity\" begin=\"0.5s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"2\" height=\"5\" x=\"3.757\" y=\"10.743\" opacity=\".25\" rx=\"1\" transform=\"rotate(45 4.757 13.243)\"><animate attributeName=\"opacity\" begin=\"0.625s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"5\" height=\"2\" x=\".5\" y=\"8\" opacity=\".15\" rx=\"1\"><animate attributeName=\"opacity\" begin=\"0.75s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"5\" height=\"2\" x=\"2.257\" y=\"3.757\" opacity=\".1\" rx=\"1\" transform=\"rotate(45 4.757 4.757)\"><animate attributeName=\"opacity\" begin=\"0.875s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect></svg>`,\n \"volume-high\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M15.6 3.3c-.4-.4-1-.4-1.4 0s-.4 1 0 1.4C15.4 5.9 16 7.4 16 9s-.6 3.1-1.8 4.3c-.4.4-.4 1 0 1.4.2.2.5.3.7.3.3 0 .5-.1.7-.3C17.1 13.2 18 11.2 18 9s-.9-4.2-2.4-5.7\"/><path fill=\"currentColor\" d=\"M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752m10.568.59a.91.91 0 0 1 0-1.316.91.91 0 0 1 1.316 0c1.203 1.203 1.47 2.216 1.522 3.208q.012.255.011.51c0 1.16-.358 2.733-1.533 3.803a.7.7 0 0 1-.298.156c-.382.106-.873-.011-1.018-.156a.91.91 0 0 1 0-1.316c.57-.57.995-1.551.995-2.487 0-.944-.26-1.667-.995-2.402\"/></svg>`,\n \"volume-low\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752m10.568.59a.91.91 0 0 1 0-1.316.91.91 0 0 1 1.316 0c1.203 1.203 1.47 2.216 1.522 3.208q.012.255.011.51c0 1.16-.358 2.733-1.533 3.803a.7.7 0 0 1-.298.156c-.382.106-.873-.011-1.018-.156a.91.91 0 0 1 0-1.316c.57-.57.995-1.551.995-2.487 0-.944-.26-1.667-.995-2.402\"/></svg>`,\n \"volume-off\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752M14.5 7.586l-1.768-1.768a1 1 0 1 0-1.414 1.414L13.085 9l-1.767 1.768a1 1 0 0 0 1.414 1.414l1.768-1.768 1.768 1.768a1 1 0 0 0 1.414-1.414L15.914 9l1.768-1.768a1 1 0 0 0-1.414-1.414z\"/></svg>`,\n};\n\nexport function renderIcon(name, attrs) {\n const svg = icons[name];\n if (!svg) return '';\n if (!attrs) return svg;\n const attrStr = Object.entries(attrs)\n .map(([k, v]) => ` ${k}=\"${v}\"`)\n .join('');\n return svg.replace('<svg', `<svg${attrStr}`);\n}\n"],"mappings":"AAAA,MAAM,EAAQ,CACZ,eAAgB,+kBAChB,cAAe,gdACf,mBAAoB,+lBACpB,kBAAmB,8lBACnB,MAAS,0QACT,YAAa,moBACb,WAAY,4nBACZ,KAAQ,qUACR,QAAW,yfACX,KAAQ,qVACR,QAAW,2tDACX,cAAe,+vBACf,aAAc,gkBACd,aAAc,gfACf,CAED,SAAgB,EAAW,EAAM,EAAO,CACtC,IAAM,EAAM,EAAM,GAClB,GAAI,CAAC,EAAK,MAAO,GACjB,GAAI,CAAC,EAAO,OAAO,EACnB,IAAM,EAAU,OAAO,QAAQ,EAAM,CAClC,KAAK,CAAC,EAAG,KAAO,IAAI,EAAE,IAAI,EAAE,GAAG,CAC/B,KAAK,GAAG,CACX,OAAO,EAAI,QAAQ,OAAQ,OAAO,IAAU"}
@@ -0,0 +1,28 @@
1
+ //#region ../icons/dist/render/minimal/index.js
2
+ const icons = {
3
+ "captions-off": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><rect width="16.5" height="12.5" x=".75" y="2.75" stroke="currentColor" stroke-width="1.5" rx="3"/><rect width="3" height="1.5" x="3" y="8.5" fill="currentColor" rx=".75"/><rect width="2" height="1.5" x="13" y="8.5" fill="currentColor" rx=".75"/><rect width="4" height="1.5" x="11" y="11.5" fill="currentColor" rx=".75"/><rect width="5" height="1.5" x="7" y="8.5" fill="currentColor" rx=".75"/><rect width="7" height="1.5" x="3" y="11.5" fill="currentColor" rx=".75"/></svg>`,
4
+ "captions-on": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M15 2a3 3 0 0 1 3 3v8a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3zM3.75 11.5a.75.75 0 0 0 0 1.5h5.5a.75.75 0 0 0 0-1.5zm8 0a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5zm-8-3a.75.75 0 0 0 0 1.5h1.5a.75.75 0 0 0 0-1.5zm4 0a.75.75 0 0 0 0 1.5h3.5a.75.75 0 0 0 0-1.5zm6 0a.75.75 0 0 0 0 1.5h.5a.75.75 0 0 0 0-1.5z"/></svg>`,
5
+ "fullscreen-enter": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M15.25 2a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V3.5h-3.75a.75.75 0 0 1-.743-.648L10 2.75a.75.75 0 0 1 .75-.75z"/><path fill="currentColor" d="M14.72 2.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 1 1-1.06-1.06zM2.75 10a.75.75 0 0 1 .75.75v3.75h3.75a.75.75 0 0 1 .743.648L8 15.25a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 1 .75-.75"/><path fill="currentColor" d="M6.72 10.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06-1.06z"/></svg>`,
6
+ "fullscreen-exit": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M10.75 2a.75.75 0 0 1 .75.75V6.5h3.75a.75.75 0 0 1 .743.648L16 7.25a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 1 .75-.75"/><path fill="currentColor" d="M14.72 2.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 1 1-1.06-1.06zM7.25 10a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V11.5H2.75a.75.75 0 0 1-.743-.648L2 10.75a.75.75 0 0 1 .75-.75z"/><path fill="currentColor" d="M6.72 10.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06-1.06z"/></svg>`,
7
+ "pause": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><rect width="4" height="12" x="3" y="3" fill="currentColor" rx="1.75"/><rect width="4" height="12" x="11" y="3" fill="currentColor" rx="1.75"/></svg>`,
8
+ "pip-enter": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M13 2a4 4 0 0 1 4 4v2.645a3.5 3.5 0 0 0-1-.145h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5c0 .347.05.683.145 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z"/><rect width="10" height="7" x="8" y="10" fill="currentColor" rx="2"/><path fill="currentColor" d="M7.25 10A.75.75 0 0 0 8 9.25v-3.5a.75.75 0 0 0-1.5 0V8.5H3.75a.75.75 0 0 0-.743.648L3 9.25c0 .414.336.75.75.75z"/><path fill="currentColor" d="M6.72 9.78a.75.75 0 0 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 1.06z"/></svg>`,
9
+ "pip-exit": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M13 2a4 4 0 0 1 4 4v2.646a3.5 3.5 0 0 0-1-.146h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5q.002.523.146 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z"/><rect width="10" height="7" x="8" y="10" fill="currentColor" rx="2"/><path fill="currentColor" d="M3.75 5a.75.75 0 0 0-.75.75v3.5a.75.75 0 0 0 1.5 0V6.5h2.75a.75.75 0 0 0 .743-.648L8 5.75A.75.75 0 0 0 7.25 5z"/><path fill="currentColor" d="M4.28 5.22a.75.75 0 0 0-1.06 1.06l3.5 3.5a.75.75 0 0 0 1.06-1.06z"/></svg>`,
10
+ "play": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="m13.473 10.476-6.845 4.256a1.697 1.697 0 0 1-2.364-.547 1.77 1.77 0 0 1-.264-.93v-8.51C4 3.78 4.768 3 5.714 3c.324 0 .64.093.914.268l6.845 4.255a1.763 1.763 0 0 1 0 2.953"/></svg>`,
11
+ "restart": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M9 17a8 8 0 0 1-8-8h1.5a6.5 6.5 0 1 0 1.43-4.07l1.643 1.643A.25.25 0 0 1 5.396 7H1.25A.25.25 0 0 1 1 6.75V2.604a.25.25 0 0 1 .427-.177l1.438 1.438A8 8 0 1 1 9 17"/><path fill="currentColor" d="m11.61 9.639-3.331 2.07a.826.826 0 0 1-1.15-.266.86.86 0 0 1-.129-.452V6.849C7 6.38 7.374 6 7.834 6c.158 0 .312.045.445.13l3.331 2.071a.858.858 0 0 1 0 1.438"/></svg>`,
12
+ "seek": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M1 9c0 2.21.895 4.21 2.343 5.657l1.06-1.06a6.5 6.5 0 1 1 9.665-8.665l-1.641 1.641a.25.25 0 0 0 .177.427h4.146a.25.25 0 0 0 .25-.25V2.604a.25.25 0 0 0-.427-.177l-1.438 1.438A8 8 0 0 0 1 9"/></svg>`,
13
+ "spinner": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" viewBox="0 0 18 18"><rect width="2" height="5" x="8" y=".5" opacity=".5" rx="1"><animate attributeName="opacity" begin="0s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="2" height="5" x="12.243" y="2.257" opacity=".45" rx="1" transform="rotate(45 13.243 4.757)"><animate attributeName="opacity" begin="0.125s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="5" height="2" x="12.5" y="8" opacity=".4" rx="1"><animate attributeName="opacity" begin="0.25s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="5" height="2" x="10.743" y="12.243" opacity=".35" rx="1" transform="rotate(45 13.243 13.243)"><animate attributeName="opacity" begin="0.375s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="2" height="5" x="8" y="12.5" opacity=".3" rx="1"><animate attributeName="opacity" begin="0.5s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="2" height="5" x="3.757" y="10.743" opacity=".25" rx="1" transform="rotate(45 4.757 13.243)"><animate attributeName="opacity" begin="0.625s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="5" height="2" x=".5" y="8" opacity=".15" rx="1"><animate attributeName="opacity" begin="0.75s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect><rect width="5" height="2" x="2.257" y="3.757" opacity=".1" rx="1" transform="rotate(45 4.757 4.757)"><animate attributeName="opacity" begin="0.875s" calcMode="linear" dur="1s" repeatCount="indefinite" values="1;0"/></rect></svg>`,
14
+ "volume-high": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M15.6 3.3c-.4-.4-1-.4-1.4 0s-.4 1 0 1.4C15.4 5.9 16 7.4 16 9s-.6 3.1-1.8 4.3c-.4.4-.4 1 0 1.4.2.2.5.3.7.3.3 0 .5-.1.7-.3C17.1 13.2 18 11.2 18 9s-.9-4.2-2.4-5.7"/><path fill="currentColor" d="M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752m10.568.59a.91.91 0 0 1 0-1.316.91.91 0 0 1 1.316 0c1.203 1.203 1.47 2.216 1.522 3.208q.012.255.011.51c0 1.16-.358 2.733-1.533 3.803a.7.7 0 0 1-.298.156c-.382.106-.873-.011-1.018-.156a.91.91 0 0 1 0-1.316c.57-.57.995-1.551.995-2.487 0-.944-.26-1.667-.995-2.402"/></svg>`,
15
+ "volume-low": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752m10.568.59a.91.91 0 0 1 0-1.316.91.91 0 0 1 1.316 0c1.203 1.203 1.47 2.216 1.522 3.208q.012.255.011.51c0 1.16-.358 2.733-1.533 3.803a.7.7 0 0 1-.298.156c-.382.106-.873-.011-1.018-.156a.91.91 0 0 1 0-1.316c.57-.57.995-1.551.995-2.487 0-.944-.26-1.667-.995-2.402"/></svg>`,
16
+ "volume-off": `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="none" aria-hidden="true" viewBox="0 0 18 18"><path fill="currentColor" d="M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752M14.5 7.586l-1.768-1.768a1 1 0 1 0-1.414 1.414L13.085 9l-1.767 1.768a1 1 0 0 0 1.414 1.414l1.768-1.768 1.768 1.768a1 1 0 0 0 1.414-1.414L15.914 9l1.768-1.768a1 1 0 0 0-1.414-1.414z"/></svg>`
17
+ };
18
+ function renderIcon(name, attrs) {
19
+ const svg = icons[name];
20
+ if (!svg) return "";
21
+ if (!attrs) return svg;
22
+ const attrStr = Object.entries(attrs).map(([k, v]) => ` ${k}="${v}"`).join("");
23
+ return svg.replace("<svg", `<svg${attrStr}`);
24
+ }
25
+
26
+ //#endregion
27
+ export { renderIcon as t };
28
+ //# sourceMappingURL=minimal-DBMdC_0I.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimal-DBMdC_0I.js","names":[],"sources":["../../icons/dist/render/minimal/index.js"],"sourcesContent":["const icons = {\n \"captions-off\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><rect width=\"16.5\" height=\"12.5\" x=\".75\" y=\"2.75\" stroke=\"currentColor\" stroke-width=\"1.5\" rx=\"3\"/><rect width=\"3\" height=\"1.5\" x=\"3\" y=\"8.5\" fill=\"currentColor\" rx=\".75\"/><rect width=\"2\" height=\"1.5\" x=\"13\" y=\"8.5\" fill=\"currentColor\" rx=\".75\"/><rect width=\"4\" height=\"1.5\" x=\"11\" y=\"11.5\" fill=\"currentColor\" rx=\".75\"/><rect width=\"5\" height=\"1.5\" x=\"7\" y=\"8.5\" fill=\"currentColor\" rx=\".75\"/><rect width=\"7\" height=\"1.5\" x=\"3\" y=\"11.5\" fill=\"currentColor\" rx=\".75\"/></svg>`,\n \"captions-on\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M15 2a3 3 0 0 1 3 3v8a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3zM3.75 11.5a.75.75 0 0 0 0 1.5h5.5a.75.75 0 0 0 0-1.5zm8 0a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5zm-8-3a.75.75 0 0 0 0 1.5h1.5a.75.75 0 0 0 0-1.5zm4 0a.75.75 0 0 0 0 1.5h3.5a.75.75 0 0 0 0-1.5zm6 0a.75.75 0 0 0 0 1.5h.5a.75.75 0 0 0 0-1.5z\"/></svg>`,\n \"fullscreen-enter\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M15.25 2a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V3.5h-3.75a.75.75 0 0 1-.743-.648L10 2.75a.75.75 0 0 1 .75-.75z\"/><path fill=\"currentColor\" d=\"M14.72 2.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 1 1-1.06-1.06zM2.75 10a.75.75 0 0 1 .75.75v3.75h3.75a.75.75 0 0 1 .743.648L8 15.25a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 1 .75-.75\"/><path fill=\"currentColor\" d=\"M6.72 10.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06-1.06z\"/></svg>`,\n \"fullscreen-exit\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M10.75 2a.75.75 0 0 1 .75.75V6.5h3.75a.75.75 0 0 1 .743.648L16 7.25a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 1 .75-.75\"/><path fill=\"currentColor\" d=\"M14.72 2.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 1 1-1.06-1.06zM7.25 10a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V11.5H2.75a.75.75 0 0 1-.743-.648L2 10.75a.75.75 0 0 1 .75-.75z\"/><path fill=\"currentColor\" d=\"M6.72 10.22a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06-1.06z\"/></svg>`,\n \"pause\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><rect width=\"4\" height=\"12\" x=\"3\" y=\"3\" fill=\"currentColor\" rx=\"1.75\"/><rect width=\"4\" height=\"12\" x=\"11\" y=\"3\" fill=\"currentColor\" rx=\"1.75\"/></svg>`,\n \"pip-enter\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M13 2a4 4 0 0 1 4 4v2.645a3.5 3.5 0 0 0-1-.145h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5c0 .347.05.683.145 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z\"/><rect width=\"10\" height=\"7\" x=\"8\" y=\"10\" fill=\"currentColor\" rx=\"2\"/><path fill=\"currentColor\" d=\"M7.25 10A.75.75 0 0 0 8 9.25v-3.5a.75.75 0 0 0-1.5 0V8.5H3.75a.75.75 0 0 0-.743.648L3 9.25c0 .414.336.75.75.75z\"/><path fill=\"currentColor\" d=\"M6.72 9.78a.75.75 0 0 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 1.06z\"/></svg>`,\n \"pip-exit\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M13 2a4 4 0 0 1 4 4v2.646a3.5 3.5 0 0 0-1-.146h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5q.002.523.146 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z\"/><rect width=\"10\" height=\"7\" x=\"8\" y=\"10\" fill=\"currentColor\" rx=\"2\"/><path fill=\"currentColor\" d=\"M3.75 5a.75.75 0 0 0-.75.75v3.5a.75.75 0 0 0 1.5 0V6.5h2.75a.75.75 0 0 0 .743-.648L8 5.75A.75.75 0 0 0 7.25 5z\"/><path fill=\"currentColor\" d=\"M4.28 5.22a.75.75 0 0 0-1.06 1.06l3.5 3.5a.75.75 0 0 0 1.06-1.06z\"/></svg>`,\n \"play\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"m13.473 10.476-6.845 4.256a1.697 1.697 0 0 1-2.364-.547 1.77 1.77 0 0 1-.264-.93v-8.51C4 3.78 4.768 3 5.714 3c.324 0 .64.093.914.268l6.845 4.255a1.763 1.763 0 0 1 0 2.953\"/></svg>`,\n \"restart\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M9 17a8 8 0 0 1-8-8h1.5a6.5 6.5 0 1 0 1.43-4.07l1.643 1.643A.25.25 0 0 1 5.396 7H1.25A.25.25 0 0 1 1 6.75V2.604a.25.25 0 0 1 .427-.177l1.438 1.438A8 8 0 1 1 9 17\"/><path fill=\"currentColor\" d=\"m11.61 9.639-3.331 2.07a.826.826 0 0 1-1.15-.266.86.86 0 0 1-.129-.452V6.849C7 6.38 7.374 6 7.834 6c.158 0 .312.045.445.13l3.331 2.071a.858.858 0 0 1 0 1.438\"/></svg>`,\n \"seek\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M1 9c0 2.21.895 4.21 2.343 5.657l1.06-1.06a6.5 6.5 0 1 1 9.665-8.665l-1.641 1.641a.25.25 0 0 0 .177.427h4.146a.25.25 0 0 0 .25-.25V2.604a.25.25 0 0 0-.427-.177l-1.438 1.438A8 8 0 0 0 1 9\"/></svg>`,\n \"spinner\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"currentColor\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><rect width=\"2\" height=\"5\" x=\"8\" y=\".5\" opacity=\".5\" rx=\"1\"><animate attributeName=\"opacity\" begin=\"0s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"2\" height=\"5\" x=\"12.243\" y=\"2.257\" opacity=\".45\" rx=\"1\" transform=\"rotate(45 13.243 4.757)\"><animate attributeName=\"opacity\" begin=\"0.125s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"5\" height=\"2\" x=\"12.5\" y=\"8\" opacity=\".4\" rx=\"1\"><animate attributeName=\"opacity\" begin=\"0.25s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"5\" height=\"2\" x=\"10.743\" y=\"12.243\" opacity=\".35\" rx=\"1\" transform=\"rotate(45 13.243 13.243)\"><animate attributeName=\"opacity\" begin=\"0.375s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"2\" height=\"5\" x=\"8\" y=\"12.5\" opacity=\".3\" rx=\"1\"><animate attributeName=\"opacity\" begin=\"0.5s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"2\" height=\"5\" x=\"3.757\" y=\"10.743\" opacity=\".25\" rx=\"1\" transform=\"rotate(45 4.757 13.243)\"><animate attributeName=\"opacity\" begin=\"0.625s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"5\" height=\"2\" x=\".5\" y=\"8\" opacity=\".15\" rx=\"1\"><animate attributeName=\"opacity\" begin=\"0.75s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect><rect width=\"5\" height=\"2\" x=\"2.257\" y=\"3.757\" opacity=\".1\" rx=\"1\" transform=\"rotate(45 4.757 4.757)\"><animate attributeName=\"opacity\" begin=\"0.875s\" calcMode=\"linear\" dur=\"1s\" repeatCount=\"indefinite\" values=\"1;0\"/></rect></svg>`,\n \"volume-high\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M15.6 3.3c-.4-.4-1-.4-1.4 0s-.4 1 0 1.4C15.4 5.9 16 7.4 16 9s-.6 3.1-1.8 4.3c-.4.4-.4 1 0 1.4.2.2.5.3.7.3.3 0 .5-.1.7-.3C17.1 13.2 18 11.2 18 9s-.9-4.2-2.4-5.7\"/><path fill=\"currentColor\" d=\"M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752m10.568.59a.91.91 0 0 1 0-1.316.91.91 0 0 1 1.316 0c1.203 1.203 1.47 2.216 1.522 3.208q.012.255.011.51c0 1.16-.358 2.733-1.533 3.803a.7.7 0 0 1-.298.156c-.382.106-.873-.011-1.018-.156a.91.91 0 0 1 0-1.316c.57-.57.995-1.551.995-2.487 0-.944-.26-1.667-.995-2.402\"/></svg>`,\n \"volume-low\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752m10.568.59a.91.91 0 0 1 0-1.316.91.91 0 0 1 1.316 0c1.203 1.203 1.47 2.216 1.522 3.208q.012.255.011.51c0 1.16-.358 2.733-1.533 3.803a.7.7 0 0 1-.298.156c-.382.106-.873-.011-1.018-.156a.91.91 0 0 1 0-1.316c.57-.57.995-1.551.995-2.487 0-.944-.26-1.667-.995-2.402\"/></svg>`,\n \"volume-off\": `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" fill=\"none\" aria-hidden=\"true\" viewBox=\"0 0 18 18\"><path fill=\"currentColor\" d=\"M.714 6.008h3.072l4.071-3.857c.5-.376 1.143 0 1.143.601V15.28c0 .602-.643.903-1.143.602l-4.071-3.858H.714c-.428 0-.714-.3-.714-.752V6.76c0-.451.286-.752.714-.752M14.5 7.586l-1.768-1.768a1 1 0 1 0-1.414 1.414L13.085 9l-1.767 1.768a1 1 0 0 0 1.414 1.414l1.768-1.768 1.768 1.768a1 1 0 0 0 1.414-1.414L15.914 9l1.768-1.768a1 1 0 0 0-1.414-1.414z\"/></svg>`,\n};\n\nexport function renderIcon(name, attrs) {\n const svg = icons[name];\n if (!svg) return '';\n if (!attrs) return svg;\n const attrStr = Object.entries(attrs)\n .map(([k, v]) => ` ${k}=\"${v}\"`)\n .join('');\n return svg.replace('<svg', `<svg${attrStr}`);\n}\n"],"mappings":";AAAA,MAAM,QAAQ;CACZ,gBAAgB;CAChB,eAAe;CACf,oBAAoB;CACpB,mBAAmB;CACnB,SAAS;CACT,aAAa;CACb,YAAY;CACZ,QAAQ;CACR,WAAW;CACX,QAAQ;CACR,WAAW;CACX,eAAe;CACf,cAAc;CACd,cAAc;CACf;AAED,SAAgB,WAAW,MAAM,OAAO;CACtC,MAAM,MAAM,MAAM;AAClB,KAAI,CAAC,IAAK,QAAO;AACjB,KAAI,CAAC,MAAO,QAAO;CACnB,MAAM,UAAU,OAAO,QAAQ,MAAM,CAClC,KAAK,CAAC,GAAG,OAAO,IAAI,EAAE,IAAI,EAAE,GAAG,CAC/B,KAAK,GAAG;AACX,QAAO,IAAI,QAAQ,QAAQ,OAAO,UAAU"}
@@ -0,0 +1,2 @@
1
+ import{I as e,a as t,i as n,t as r}from"./create-player-QjiNZlh7.js";import{t as i}from"./safe-define-GrHW3P9e.js";const{ProviderMixin:a}=r({features:e});i(class extends a(t){static{this.tagName=`audio-player`}}),i(n);
2
+ //# sourceMappingURL=player-CztIlNio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"player-CztIlNio.js","names":[],"sources":["../src/define/audio/player.ts"],"sourcesContent":["import { audioFeatures } from '@videojs/core/dom';\nimport { MediaContainerElement } from '../../media/container-element';\nimport { createPlayer } from '../../player/create-player';\nimport { MediaElement } from '../../ui/media-element';\nimport { safeDefine } from '../safe-define';\n\nconst { ProviderMixin } = createPlayer({\n features: audioFeatures,\n});\n\nexport class AudioPlayerElement extends ProviderMixin(MediaElement) {\n static readonly tagName = 'audio-player';\n}\n\n// Provider must be defined before consumer for context handshake during upgrade.\nsafeDefine(AudioPlayerElement);\nsafeDefine(MediaContainerElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioPlayerElement.tagName]: AudioPlayerElement;\n }\n}\n"],"mappings":"mHAMA,KAAM,CAAE,iBAAkB,EAAa,CACrC,SAAU,EACX,CAAC,CAOF,EALA,cAAwC,EAAc,EAAa,AAAC,qBACxC,iBAIE,CAC9B,EAAW,EAAsB"}
@@ -0,0 +1,15 @@
1
+ import { L as audioFeatures, a as MediaElement, i as MediaContainerElement, t as createPlayer } from "./create-player-Dv7K1Ezk.js";
2
+ import { t as safeDefine } from "./safe-define-B8lHgj_K.js";
3
+
4
+ //#region src/define/audio/player.ts
5
+ const { ProviderMixin } = createPlayer({ features: audioFeatures });
6
+ var AudioPlayerElement = class extends ProviderMixin(MediaElement) {
7
+ static {
8
+ this.tagName = "audio-player";
9
+ }
10
+ };
11
+ safeDefine(AudioPlayerElement);
12
+ safeDefine(MediaContainerElement);
13
+
14
+ //#endregion
15
+ //# sourceMappingURL=player-Dvj38jlr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"player-Dvj38jlr.js","names":[],"sources":["../src/define/audio/player.ts"],"sourcesContent":["import { audioFeatures } from '@videojs/core/dom';\nimport { MediaContainerElement } from '../../media/container-element';\nimport { createPlayer } from '../../player/create-player';\nimport { MediaElement } from '../../ui/media-element';\nimport { safeDefine } from '../safe-define';\n\nconst { ProviderMixin } = createPlayer({\n features: audioFeatures,\n});\n\nexport class AudioPlayerElement extends ProviderMixin(MediaElement) {\n static readonly tagName = 'audio-player';\n}\n\n// Provider must be defined before consumer for context handshake during upgrade.\nsafeDefine(AudioPlayerElement);\nsafeDefine(MediaContainerElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioPlayerElement.tagName]: AudioPlayerElement;\n }\n}\n"],"mappings":";;;;AAMA,MAAM,EAAE,kBAAkB,aAAa,EACrC,UAAU,eACX,CAAC;AAEF,IAAa,qBAAb,cAAwC,cAAc,aAAa,CAAC;;iBACxC;;;AAI5B,WAAW,mBAAmB;AAC9B,WAAW,sBAAsB"}
@@ -0,0 +1,2 @@
1
+ import{A as e,O as t,R as n,a as r,c as i,i as a,j as o,k as s,l as c,n as l,s as u,t as d}from"./create-player-QjiNZlh7.js";import{a as f,c as p,i as m,l as h,m as g,n as _,o as v,p as y,r as b,s as x,t as S,u as C}from"./volume-slider-BqzTytgB.js";import{i as w,r as T}from"./context-C_e06fGU.js";import{t as E}from"./safe-define-GrHW3P9e.js";const{ProviderMixin:D}=d({features:n});E(class extends D(r){static{this.tagName=`video-player`}}),E(a),E(class extends r{constructor(...e){super(...e),this.delay=g.defaultProps.delay}static{this.tagName=`media-buffering-indicator`}static{this.properties={delay:{type:Number}}}#e=new g;#t=new l(this,T,o);#n=null;connectedCallback(){super.connectedCallback(),this.#n=new AbortController,this.#e.state.subscribe(()=>this.requestUpdate(),{signal:this.#n.signal})}disconnectedCallback(){super.disconnectedCallback(),this.#n?.abort(),this.#n=null}willUpdate(e){super.willUpdate(e),this.#e.setProps(this)}update(e){super.update(e);let t=this.#t.value;t&&(this.#e.update(t),c(this,this.#e.state.current,y))}});const O=w(Symbol(`@videojs/controls`));var k=class extends r{static{this.tagName=`media-controls`}#e=new C;#t=new l(this,T,t);#n=new u(this,{context:O});connectedCallback(){super.connectedCallback()}update(e){super.update(e);let t=this.#t.value;if(!t)return;this.#e.setMedia(t);let n=this.#e.getState();c(this,n,h),this.#n.setValue({state:n,stateAttrMap:h})}},A=class extends S{constructor(...e){super(...e),this.consumer=new i(this,{context:O,subscribe:!0})}static{this.tagName=`media-controls-group`}connectedCallback(){super.connectedCallback(),(this.hasAttribute(`aria-label`)||this.hasAttribute(`aria-labelledby`))&&this.setAttribute(`role`,`group`)}};E(k),E(A),E(class extends _{constructor(...e){super(...e),this.core=new p,this.stateAttrMap=x,this.mediaState=new l(this,T,s)}static{this.tagName=`media-fullscreen-button`}activate(e){this.core.toggle(e)}}),E(class extends _{constructor(...t){super(...t),this.core=new v,this.stateAttrMap=f,this.mediaState=new l(this,T,e)}static{this.tagName=`media-pip-button`}activate(e){this.core.toggle(e)}});var j=class extends r{connectedCallback(){super.connectedCallback()}update(e){super.update(e);let t=this.mediaState.value;if(!t)return;this.core.setMedia(t);let n=this.core.getState();c(this,n,this.stateAttrMap)}};E(class extends j{constructor(...e){super(...e),this.core=new m,this.stateAttrMap=b,this.mediaState=new l(this,T,o)}static{this.tagName=`media-poster`}});
2
+ //# sourceMappingURL=poster-C4WHg3BH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poster-C4WHg3BH.js","names":["#core","#state","#disconnect","createContext","#core","#mediaState","#provider","ContextProvider","ContextConsumer"],"sources":["../src/define/video/player.ts","../src/ui/buffering-indicator/buffering-indicator-element.ts","../src/define/ui/buffering-indicator.ts","../src/ui/controls/context.ts","../src/ui/controls/controls-element.ts","../src/ui/controls/controls-group-element.ts","../src/define/ui/controls.ts","../src/ui/fullscreen-button/fullscreen-button-element.ts","../src/define/ui/fullscreen-button.ts","../src/ui/pip-button/pip-button-element.ts","../src/define/ui/pip-button.ts","../src/ui/media-ui-element.ts","../src/ui/poster/poster-element.ts","../src/define/ui/poster.ts"],"sourcesContent":["import { videoFeatures } from '@videojs/core/dom';\nimport { MediaContainerElement } from '../../media/container-element';\nimport { createPlayer } from '../../player/create-player';\nimport { MediaElement } from '../../ui/media-element';\nimport { safeDefine } from '../safe-define';\n\nconst { ProviderMixin } = createPlayer({\n features: videoFeatures,\n});\n\nexport class VideoPlayerElement extends ProviderMixin(MediaElement) {\n static readonly tagName = 'video-player';\n}\n\n// Provider must be defined before consumer for context handshake during upgrade.\nsafeDefine(VideoPlayerElement);\nsafeDefine(MediaContainerElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [VideoPlayerElement.tagName]: VideoPlayerElement;\n }\n}\n","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","import { BufferingIndicatorElement } from '../../ui/buffering-indicator/buffering-indicator-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(BufferingIndicatorElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BufferingIndicatorElement.tagName]: BufferingIndicatorElement;\n }\n}\n","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","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","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","import { ControlsElement } from '../../ui/controls/controls-element';\nimport { ControlsGroupElement } from '../../ui/controls/controls-group-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(ControlsElement);\nsafeDefine(ControlsGroupElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [ControlsElement.tagName]: ControlsElement;\n }\n}\n","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","import { FullscreenButtonElement } from '../../ui/fullscreen-button/fullscreen-button-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(FullscreenButtonElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [FullscreenButtonElement.tagName]: FullscreenButtonElement;\n }\n}\n","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","import { PiPButtonElement } from '../../ui/pip-button/pip-button-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(PiPButtonElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [PiPButtonElement.tagName]: PiPButtonElement;\n }\n}\n","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","import { PosterCore, PosterDataAttrs } from '@videojs/core';\nimport { selectPlayback } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaUIElement } from '../media-ui-element';\n\nexport class PosterElement extends MediaUIElement<PosterCore> {\n static readonly tagName = 'media-poster';\n\n protected readonly core = new PosterCore();\n protected readonly stateAttrMap = PosterDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPlayback);\n}\n","import { PosterElement } from '../../ui/poster/poster-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(PosterElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [PosterElement.tagName]: PosterElement;\n }\n}\n"],"mappings":"yVAMA,KAAM,CAAE,iBAAkB,EAAa,CACrC,SAAU,EACX,CAAC,CAOF,EALA,cAAwC,EAAc,EAAa,AAAC,qBACxC,iBAIE,CAC9B,EAAW,EAAsB,CEbjC,EDKA,cAA+C,CAAa,0CAOlD,EAAuB,aAAa,0BANlB,mDAEG,CAC3B,MAAO,CAAE,KAAM,OAAQ,CACxB,CAID,GAAiB,IAAI,EACrB,GAAkB,IAAI,EAAiB,KAAM,EAAe,EAAe,CAE3E,GAAsC,KAEtC,mBAAmC,CACjC,MAAM,mBAAmB,CAEzB,MAAA,EAAmB,IAAI,gBAEvB,MAAA,EAAW,MAAM,cAAgB,KAAK,eAAe,CAAE,CACrD,OAAQ,MAAA,EAAiB,OAC1B,CAAC,CAOJ,sBAAsC,CACpC,MAAM,sBAAsB,CAC5B,MAAA,GAAkB,OAAO,CACzB,MAAA,EAAmB,KAGrB,WAA8B,EAA+B,CAC3D,MAAM,WAAW,EAAQ,CACzB,MAAA,EAAW,SAAS,KAAK,CAG3B,OAA0B,EAA+B,CACvD,MAAM,OAAO,EAAQ,CAErB,IAAM,EAAQ,MAAA,EAAY,MAErB,IAEL,MAAA,EAAW,OAAO,EAAM,CACxB,EAAoB,KAAM,MAAA,EAAW,MAAM,QAAS,EAA4B,ICpD/C,CCOrC,MAAa,EAAkBG,EAFF,OAAO,oBAAoB,CAEgC,CCAxF,IAAa,EAAb,cAAqC,CAAa,qBACtB,iBAE1B,GAAiB,IAAI,EACrB,GAAuB,IAAI,EAAiB,KAAM,EAAe,EAAe,CAChF,GAAqB,IAAII,EAAgB,KAAM,CAAE,QAAS,EAAiB,CAAC,CAE5E,mBAAmC,CACjC,MAAM,mBAAmB,CAO3B,OAA0B,EAAgC,CACxD,MAAM,OAAO,EAAS,CAEtB,IAAM,EAAQ,MAAA,EAAiB,MAC/B,GAAI,CAAC,EAAO,OAEZ,MAAA,EAAW,SAAS,EAAM,CAC1B,IAAM,EAAQ,MAAA,EAAW,UAAU,CAEnC,EAAoB,KAAM,EAAO,EAAkB,CAEnD,MAAA,EAAe,SAAS,CACtB,QACA,aAAc,EACf,CAAC,GCjCO,EAAb,cAA0C,CAAkC,6CAG5C,IAAIC,EAAgB,KAAM,CAAE,QAAS,EAAiB,UAAW,GAAM,CAAC,qBAF5E,uBAI1B,mBAAmC,CACjC,MAAM,mBAAmB,EAErB,KAAK,aAAa,aAAa,EAAI,KAAK,aAAa,kBAAkB,GACzE,KAAK,aAAa,OAAQ,QAAQ,GCXxC,EAAW,EAAgB,CAC3B,EAAW,EAAqB,CEFhC,EDIA,cAA6C,CAAyC,yCAG1D,IAAI,oBACI,kBACF,IAAI,EAAiB,KAAM,EAAe,EAAiB,qBAJjE,0BAM1B,SAAmB,EAAmC,CACpD,KAAK,KAAK,OAAO,EAAM,GCZQ,CEAnC,EDIA,cAAsC,CAAkC,yCAG5C,IAAI,oBACI,kBACF,IAAI,EAAiB,KAAM,EAAe,EAAU,qBAJ1D,mBAM1B,SAAmB,EAAyC,CAC1D,KAAK,KAAK,OAAO,EAAM,GCZC,CCK5B,IAAsB,EAAtB,cAA4E,CAAa,CAKvF,mBAAmC,CACjC,MAAM,mBAAmB,CAO3B,OAA0B,EAA+B,CACvD,MAAM,OAAO,EAAQ,CAErB,IAAM,EAAQ,KAAK,WAAW,MAE9B,GAAI,CAAC,EAAO,OAEZ,KAAK,KAAK,SAAS,EAAM,CACzB,IAAM,EAAQ,KAAK,KAAK,UAAU,CAClC,EAAoB,KAAM,EAAO,KAAK,aAAa,GE3BvD,EDIA,cAAmC,CAA2B,yCAGlC,IAAI,oBACI,kBACF,IAAI,EAAiB,KAAM,EAAe,EAAe,qBAJ/D,iBCLH"}
@@ -0,0 +1,195 @@
1
+ import { A as selectFullscreen, M as selectPlayback, a as MediaElement, c as ContextConsumer, i as MediaContainerElement, j as selectPiP, k as selectControls, l as applyStateDataAttrs, n as PlayerController, s as ContextProvider, t as createPlayer, u as logMissingFeature, z as videoFeatures } from "./create-player-Dv7K1Ezk.js";
2
+ import { a as PiPButtonDataAttrs, c as FullscreenButtonCore, i as PosterCore, l as ControlsDataAttrs, m as BufferingIndicatorCore, n as MediaButtonElement, o as PiPButtonCore, p as BufferingIndicatorDataAttrs, r as PosterDataAttrs, s as FullscreenButtonDataAttrs, t as ContextPartElement, u as ControlsCore } from "./volume-slider-CfhOO9RM.js";
3
+ import { i as createContext, r as playerContext } from "./context-DTY0nOpS.js";
4
+ import { t as safeDefine } from "./safe-define-B8lHgj_K.js";
5
+
6
+ //#region src/define/video/player.ts
7
+ const { ProviderMixin } = createPlayer({ features: videoFeatures });
8
+ var VideoPlayerElement = class extends ProviderMixin(MediaElement) {
9
+ static {
10
+ this.tagName = "video-player";
11
+ }
12
+ };
13
+ safeDefine(VideoPlayerElement);
14
+ safeDefine(MediaContainerElement);
15
+
16
+ //#endregion
17
+ //#region src/ui/buffering-indicator/buffering-indicator-element.ts
18
+ var BufferingIndicatorElement = class extends MediaElement {
19
+ constructor(..._args) {
20
+ super(..._args);
21
+ this.delay = BufferingIndicatorCore.defaultProps.delay;
22
+ }
23
+ static {
24
+ this.tagName = "media-buffering-indicator";
25
+ }
26
+ static {
27
+ this.properties = { delay: { type: Number } };
28
+ }
29
+ #core = new BufferingIndicatorCore();
30
+ #state = new PlayerController(this, playerContext, selectPlayback);
31
+ #disconnect = null;
32
+ connectedCallback() {
33
+ super.connectedCallback();
34
+ this.#disconnect = new AbortController();
35
+ this.#core.state.subscribe(() => this.requestUpdate(), { signal: this.#disconnect.signal });
36
+ if (!this.#state.value) logMissingFeature(this.localName, this.#state.displayName);
37
+ }
38
+ disconnectedCallback() {
39
+ super.disconnectedCallback();
40
+ this.#disconnect?.abort();
41
+ this.#disconnect = null;
42
+ }
43
+ willUpdate(changed) {
44
+ super.willUpdate(changed);
45
+ this.#core.setProps(this);
46
+ }
47
+ update(changed) {
48
+ super.update(changed);
49
+ const media = this.#state.value;
50
+ if (!media) return;
51
+ this.#core.update(media);
52
+ applyStateDataAttrs(this, this.#core.state.current, BufferingIndicatorDataAttrs);
53
+ }
54
+ };
55
+
56
+ //#endregion
57
+ //#region src/define/ui/buffering-indicator.ts
58
+ safeDefine(BufferingIndicatorElement);
59
+
60
+ //#endregion
61
+ //#region src/ui/controls/context.ts
62
+ const CONTROLS_CONTEXT_KEY = Symbol("@videojs/controls");
63
+ const controlsContext = createContext(CONTROLS_CONTEXT_KEY);
64
+
65
+ //#endregion
66
+ //#region src/ui/controls/controls-element.ts
67
+ var ControlsElement = class extends MediaElement {
68
+ static {
69
+ this.tagName = "media-controls";
70
+ }
71
+ #core = new ControlsCore();
72
+ #mediaState = new PlayerController(this, playerContext, selectControls);
73
+ #provider = new ContextProvider(this, { context: controlsContext });
74
+ connectedCallback() {
75
+ super.connectedCallback();
76
+ if (!this.#mediaState.value && this.#mediaState.displayName) logMissingFeature(this.localName, this.#mediaState.displayName);
77
+ }
78
+ update(_changed) {
79
+ super.update(_changed);
80
+ const media = this.#mediaState.value;
81
+ if (!media) return;
82
+ this.#core.setMedia(media);
83
+ const state = this.#core.getState();
84
+ applyStateDataAttrs(this, state, ControlsDataAttrs);
85
+ this.#provider.setValue({
86
+ state,
87
+ stateAttrMap: ControlsDataAttrs
88
+ });
89
+ }
90
+ };
91
+
92
+ //#endregion
93
+ //#region src/ui/controls/controls-group-element.ts
94
+ var ControlsGroupElement = class extends ContextPartElement {
95
+ constructor(..._args) {
96
+ super(..._args);
97
+ this.consumer = new ContextConsumer(this, {
98
+ context: controlsContext,
99
+ subscribe: true
100
+ });
101
+ }
102
+ static {
103
+ this.tagName = "media-controls-group";
104
+ }
105
+ connectedCallback() {
106
+ super.connectedCallback();
107
+ if (this.hasAttribute("aria-label") || this.hasAttribute("aria-labelledby")) this.setAttribute("role", "group");
108
+ }
109
+ };
110
+
111
+ //#endregion
112
+ //#region src/define/ui/controls.ts
113
+ safeDefine(ControlsElement);
114
+ safeDefine(ControlsGroupElement);
115
+
116
+ //#endregion
117
+ //#region src/ui/fullscreen-button/fullscreen-button-element.ts
118
+ var FullscreenButtonElement = class extends MediaButtonElement {
119
+ constructor(..._args) {
120
+ super(..._args);
121
+ this.core = new FullscreenButtonCore();
122
+ this.stateAttrMap = FullscreenButtonDataAttrs;
123
+ this.mediaState = new PlayerController(this, playerContext, selectFullscreen);
124
+ }
125
+ static {
126
+ this.tagName = "media-fullscreen-button";
127
+ }
128
+ activate(state) {
129
+ this.core.toggle(state);
130
+ }
131
+ };
132
+
133
+ //#endregion
134
+ //#region src/define/ui/fullscreen-button.ts
135
+ safeDefine(FullscreenButtonElement);
136
+
137
+ //#endregion
138
+ //#region src/ui/pip-button/pip-button-element.ts
139
+ var PiPButtonElement = class extends MediaButtonElement {
140
+ constructor(..._args) {
141
+ super(..._args);
142
+ this.core = new PiPButtonCore();
143
+ this.stateAttrMap = PiPButtonDataAttrs;
144
+ this.mediaState = new PlayerController(this, playerContext, selectPiP);
145
+ }
146
+ static {
147
+ this.tagName = "media-pip-button";
148
+ }
149
+ activate(state) {
150
+ this.core.toggle(state);
151
+ }
152
+ };
153
+
154
+ //#endregion
155
+ //#region src/define/ui/pip-button.ts
156
+ safeDefine(PiPButtonElement);
157
+
158
+ //#endregion
159
+ //#region src/ui/media-ui-element.ts
160
+ /** Abstract base for HTML custom elements that display media state with data attributes. */
161
+ var MediaUIElement = class extends MediaElement {
162
+ connectedCallback() {
163
+ super.connectedCallback();
164
+ if (!this.mediaState.value && this.mediaState.displayName) logMissingFeature(this.localName, this.mediaState.displayName);
165
+ }
166
+ update(changed) {
167
+ super.update(changed);
168
+ const media = this.mediaState.value;
169
+ if (!media) return;
170
+ this.core.setMedia(media);
171
+ const state = this.core.getState();
172
+ applyStateDataAttrs(this, state, this.stateAttrMap);
173
+ }
174
+ };
175
+
176
+ //#endregion
177
+ //#region src/ui/poster/poster-element.ts
178
+ var PosterElement = class extends MediaUIElement {
179
+ constructor(..._args) {
180
+ super(..._args);
181
+ this.core = new PosterCore();
182
+ this.stateAttrMap = PosterDataAttrs;
183
+ this.mediaState = new PlayerController(this, playerContext, selectPlayback);
184
+ }
185
+ static {
186
+ this.tagName = "media-poster";
187
+ }
188
+ };
189
+
190
+ //#endregion
191
+ //#region src/define/ui/poster.ts
192
+ safeDefine(PosterElement);
193
+
194
+ //#endregion
195
+ //# sourceMappingURL=poster-O0SI05LC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poster-O0SI05LC.js","names":["#core","#state","#disconnect","#core","#mediaState","#provider"],"sources":["../src/define/video/player.ts","../src/ui/buffering-indicator/buffering-indicator-element.ts","../src/define/ui/buffering-indicator.ts","../src/ui/controls/context.ts","../src/ui/controls/controls-element.ts","../src/ui/controls/controls-group-element.ts","../src/define/ui/controls.ts","../src/ui/fullscreen-button/fullscreen-button-element.ts","../src/define/ui/fullscreen-button.ts","../src/ui/pip-button/pip-button-element.ts","../src/define/ui/pip-button.ts","../src/ui/media-ui-element.ts","../src/ui/poster/poster-element.ts","../src/define/ui/poster.ts"],"sourcesContent":["import { videoFeatures } from '@videojs/core/dom';\nimport { MediaContainerElement } from '../../media/container-element';\nimport { createPlayer } from '../../player/create-player';\nimport { MediaElement } from '../../ui/media-element';\nimport { safeDefine } from '../safe-define';\n\nconst { ProviderMixin } = createPlayer({\n features: videoFeatures,\n});\n\nexport class VideoPlayerElement extends ProviderMixin(MediaElement) {\n static readonly tagName = 'video-player';\n}\n\n// Provider must be defined before consumer for context handshake during upgrade.\nsafeDefine(VideoPlayerElement);\nsafeDefine(MediaContainerElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [VideoPlayerElement.tagName]: VideoPlayerElement;\n }\n}\n","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","import { BufferingIndicatorElement } from '../../ui/buffering-indicator/buffering-indicator-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(BufferingIndicatorElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BufferingIndicatorElement.tagName]: BufferingIndicatorElement;\n }\n}\n","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","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","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","import { ControlsElement } from '../../ui/controls/controls-element';\nimport { ControlsGroupElement } from '../../ui/controls/controls-group-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(ControlsElement);\nsafeDefine(ControlsGroupElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [ControlsElement.tagName]: ControlsElement;\n }\n}\n","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","import { FullscreenButtonElement } from '../../ui/fullscreen-button/fullscreen-button-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(FullscreenButtonElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [FullscreenButtonElement.tagName]: FullscreenButtonElement;\n }\n}\n","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","import { PiPButtonElement } from '../../ui/pip-button/pip-button-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(PiPButtonElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [PiPButtonElement.tagName]: PiPButtonElement;\n }\n}\n","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","import { PosterCore, PosterDataAttrs } from '@videojs/core';\nimport { selectPlayback } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaUIElement } from '../media-ui-element';\n\nexport class PosterElement extends MediaUIElement<PosterCore> {\n static readonly tagName = 'media-poster';\n\n protected readonly core = new PosterCore();\n protected readonly stateAttrMap = PosterDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPlayback);\n}\n","import { PosterElement } from '../../ui/poster/poster-element';\nimport { safeDefine } from '../safe-define';\n\nsafeDefine(PosterElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [PosterElement.tagName]: PosterElement;\n }\n}\n"],"mappings":";;;;;;AAMA,MAAM,EAAE,kBAAkB,aAAa,EACrC,UAAU,eACX,CAAC;AAEF,IAAa,qBAAb,cAAwC,cAAc,aAAa,CAAC;;iBACxC;;;AAI5B,WAAW,mBAAmB;AAC9B,WAAW,sBAAsB;;;;ACRjC,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;;;;;;ACpDpF,WAAW,0BAA0B;;;;ACKrC,MAAM,uBAAuB,OAAO,oBAAoB;AAExD,MAAa,kBAAkB,cAAoC,qBAAqB;;;;ACAxF,IAAa,kBAAb,cAAqC,aAAa;;iBACtB;;CAE1B,CAASG,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;;;;;;ACjCN,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;;;;;;ACXxC,WAAW,gBAAgB;AAC3B,WAAW,qBAAqB;;;;ACEhC,IAAa,0BAAb,cAA6C,mBAAyC;;;cAG1D,IAAI,sBAAsB;sBAClB;oBACF,IAAI,iBAAiB,MAAM,eAAe,iBAAiB;;;iBAJjE;;CAM1B,AAAU,SAAS,OAAmC;AACpD,OAAK,KAAK,OAAO,MAAM;;;;;;ACZ3B,WAAW,wBAAwB;;;;ACInC,IAAa,mBAAb,cAAsC,mBAAkC;;;cAG5C,IAAI,eAAe;sBACX;oBACF,IAAI,iBAAiB,MAAM,eAAe,UAAU;;;iBAJ1D;;CAM1B,AAAU,SAAS,OAAyC;AAC1D,OAAK,KAAK,OAAO,MAAM;;;;;;ACZ3B,WAAW,iBAAiB;;;;;ACK5B,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;;;;;;ACvBvD,IAAa,gBAAb,cAAmC,eAA2B;;;cAGlC,IAAI,YAAY;sBACR;oBACF,IAAI,iBAAiB,MAAM,eAAe,eAAe;;;iBAJ/D;;;;;;ACL5B,WAAW,cAAc"}
@@ -0,0 +1,26 @@
1
+ //#region ../utils/dist/predicate/predicate.js
2
+ function isNumber(value) {
3
+ return typeof value === "number";
4
+ }
5
+ function isFunction(value) {
6
+ return typeof value === "function";
7
+ }
8
+ function isNull(value) {
9
+ return value === null;
10
+ }
11
+ function isUndefined(value) {
12
+ return typeof value === "undefined";
13
+ }
14
+ function isNil(value) {
15
+ return value == null;
16
+ }
17
+ /**
18
+ * Check if a value is an object, excluding null.
19
+ */
20
+ function isObject(value) {
21
+ return value !== null && typeof value === "object";
22
+ }
23
+
24
+ //#endregion
25
+ export { isObject as a, isNumber as i, isNil as n, isUndefined as o, isNull as r, isFunction as t };
26
+ //# sourceMappingURL=predicate-BG-dj_kF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"predicate-BG-dj_kF.js","names":[],"sources":["../../utils/dist/predicate/predicate.js"],"sourcesContent":["//#region src/predicate/predicate.ts\nfunction isString(value) {\n\treturn typeof value === \"string\";\n}\nfunction isNumber(value) {\n\treturn typeof value === \"number\";\n}\nfunction isBoolean(value) {\n\treturn typeof value === \"boolean\";\n}\nfunction isFunction(value) {\n\treturn typeof value === \"function\";\n}\nfunction isNull(value) {\n\treturn value === null;\n}\nfunction isUndefined(value) {\n\treturn typeof value === \"undefined\";\n}\nfunction isNil(value) {\n\treturn value == null;\n}\nfunction isPromise(value) {\n\treturn value instanceof Promise;\n}\n/**\n* Check if a value is an object, excluding null.\n*/\nfunction isObject(value) {\n\treturn value !== null && typeof value === \"object\";\n}\n/**\n* Check if a value is a plain object (not a class instance like Date, Map, etc).\n*/\nfunction isPlainObject(value) {\n\tif (!isObject(value)) return false;\n\tconst proto = Object.getPrototypeOf(value);\n\treturn proto === null || proto === Object.prototype;\n}\n/**\n* Check if a value is an AbortError.\n*/\nfunction isAbortError(value) {\n\treturn value instanceof Error && value.name === \"AbortError\";\n}\n\n//#endregion\nexport { isAbortError, isBoolean, isFunction, isNil, isNull, isNumber, isObject, isPlainObject, isPromise, isString, isUndefined };\n//# sourceMappingURL=predicate.js.map"],"mappings":";AAIA,SAAS,SAAS,OAAO;AACxB,QAAO,OAAO,UAAU;;AAKzB,SAAS,WAAW,OAAO;AAC1B,QAAO,OAAO,UAAU;;AAEzB,SAAS,OAAO,OAAO;AACtB,QAAO,UAAU;;AAElB,SAAS,YAAY,OAAO;AAC3B,QAAO,OAAO,UAAU;;AAEzB,SAAS,MAAM,OAAO;AACrB,QAAO,SAAS;;;;;AAQjB,SAAS,SAAS,OAAO;AACxB,QAAO,UAAU,QAAQ,OAAO,UAAU"}
@@ -0,0 +1,2 @@
1
+ function e(e){return typeof e==`number`}function t(e){return typeof e==`function`}function n(e){return e===null}function r(e){return e===void 0}function i(e){return e==null}function a(e){return typeof e==`object`&&!!e}export{a,e as i,i as n,r as o,n as r,t};
2
+ //# sourceMappingURL=predicate-Y9jDHLpX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"predicate-Y9jDHLpX.js","names":[],"sources":["../../utils/dist/predicate/predicate.js"],"sourcesContent":["//#region src/predicate/predicate.ts\nfunction isString(value) {\n\treturn typeof value === \"string\";\n}\nfunction isNumber(value) {\n\treturn typeof value === \"number\";\n}\nfunction isBoolean(value) {\n\treturn typeof value === \"boolean\";\n}\nfunction isFunction(value) {\n\treturn typeof value === \"function\";\n}\nfunction isNull(value) {\n\treturn value === null;\n}\nfunction isUndefined(value) {\n\treturn typeof value === \"undefined\";\n}\nfunction isNil(value) {\n\treturn value == null;\n}\nfunction isPromise(value) {\n\treturn value instanceof Promise;\n}\n/**\n* Check if a value is an object, excluding null.\n*/\nfunction isObject(value) {\n\treturn value !== null && typeof value === \"object\";\n}\n/**\n* Check if a value is a plain object (not a class instance like Date, Map, etc).\n*/\nfunction isPlainObject(value) {\n\tif (!isObject(value)) return false;\n\tconst proto = Object.getPrototypeOf(value);\n\treturn proto === null || proto === Object.prototype;\n}\n/**\n* Check if a value is an AbortError.\n*/\nfunction isAbortError(value) {\n\treturn value instanceof Error && value.name === \"AbortError\";\n}\n\n//#endregion\nexport { isAbortError, isBoolean, isFunction, isNil, isNull, isNumber, isObject, isPlainObject, isPromise, isString, isUndefined };\n//# sourceMappingURL=predicate.js.map"],"mappings":"AAIA,SAAS,EAAS,EAAO,CACxB,OAAO,OAAO,GAAU,SAKzB,SAAS,EAAW,EAAO,CAC1B,OAAO,OAAO,GAAU,WAEzB,SAAS,EAAO,EAAO,CACtB,OAAO,IAAU,KAElB,SAAS,EAAY,EAAO,CAC3B,OAAc,IAAU,OAEzB,SAAS,EAAM,EAAO,CACrB,OAAO,GAAS,KAQjB,SAAS,EAAS,EAAO,CACxB,OAAyB,OAAO,GAAU,YAAnC"}