@videojs/html 10.0.1 → 10.1.0

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 (403) hide show
  1. package/README.md +2 -2
  2. package/dist/default/define/audio/compat-skin.css +42 -0
  3. package/dist/default/define/audio/compat-skin2.js +1 -1
  4. package/dist/default/define/audio/scaffold-skin.css +1771 -0
  5. package/dist/default/define/audio/scaffold-skin.js +6 -0
  6. package/dist/default/define/audio/scaffold-skin2.js +4 -0
  7. package/dist/default/define/live-audio/compat-skin.css +42 -0
  8. package/dist/default/define/live-audio/compat-skin2.js +1 -1
  9. package/dist/default/define/live-audio/scaffold-skin.css +1591 -0
  10. package/dist/default/define/live-audio/scaffold-skin.js +6 -0
  11. package/dist/default/define/live-audio/scaffold-skin2.js +4 -0
  12. package/dist/default/define/live-video/compat-skin.css +67 -23
  13. package/dist/default/define/live-video/compat-skin2.js +1 -1
  14. package/dist/default/define/live-video/neutral-skin.css +20 -9
  15. package/dist/default/define/live-video/neutral-skin2.js +1 -1
  16. package/dist/default/define/live-video/scaffold-skin.css +1976 -0
  17. package/dist/default/define/live-video/scaffold-skin.js +6 -0
  18. package/dist/default/define/live-video/scaffold-skin2.js +4 -0
  19. package/dist/default/define/live-video/skin.css +18 -7
  20. package/dist/default/define/live-video/skin2.js +1 -1
  21. package/dist/default/define/media/playerjs-video.js +11 -0
  22. package/dist/default/define/video/compat-skin.css +67 -23
  23. package/dist/default/define/video/compat-skin2.js +1 -1
  24. package/dist/default/define/video/neutral-skin.css +26 -9
  25. package/dist/default/define/video/neutral-skin2.js +1 -1
  26. package/dist/default/define/video/scaffold-skin.css +2216 -0
  27. package/dist/default/define/video/scaffold-skin.js +6 -0
  28. package/dist/default/define/video/scaffold-skin2.js +4 -0
  29. package/dist/default/define/video/skin.css +24 -7
  30. package/dist/default/define/video/skin2.js +1 -1
  31. package/dist/default/icons/dist/element/compat/icons.js +1 -1
  32. package/dist/default/icons/dist/element/index.js +1 -0
  33. package/dist/default/icons/dist/element/scaffold/icons.js +30 -0
  34. package/dist/default/icons/dist/element/scaffold/index.js +8 -0
  35. package/dist/default/icons/dist/html/compat/play.js +1 -1
  36. package/dist/default/icons/dist/html/scaffold/airplay-enter.js +4 -0
  37. package/dist/default/icons/dist/html/scaffold/airplay-exit.js +4 -0
  38. package/dist/default/icons/dist/html/scaffold/captions-off.js +4 -0
  39. package/dist/default/icons/dist/html/scaffold/captions-on.js +4 -0
  40. package/dist/default/icons/dist/html/scaffold/cast-enter.js +4 -0
  41. package/dist/default/icons/dist/html/scaffold/cast-exit.js +4 -0
  42. package/dist/default/icons/dist/html/scaffold/check.js +4 -0
  43. package/dist/default/icons/dist/html/scaffold/chevron.js +4 -0
  44. package/dist/default/icons/dist/html/scaffold/fullscreen-enter.js +4 -0
  45. package/dist/default/icons/dist/html/scaffold/fullscreen-exit.js +4 -0
  46. package/dist/default/icons/dist/html/scaffold/gear.js +4 -0
  47. package/dist/default/icons/dist/html/scaffold/pause.js +4 -0
  48. package/dist/default/icons/dist/html/scaffold/pip-enter.js +4 -0
  49. package/dist/default/icons/dist/html/scaffold/pip-exit.js +4 -0
  50. package/dist/default/icons/dist/html/scaffold/play.js +4 -0
  51. package/dist/default/icons/dist/html/scaffold/quality.js +4 -0
  52. package/dist/default/icons/dist/html/scaffold/restart.js +4 -0
  53. package/dist/default/icons/dist/html/scaffold/seek.js +4 -0
  54. package/dist/default/icons/dist/html/scaffold/speech.js +4 -0
  55. package/dist/default/icons/dist/html/scaffold/speed.js +4 -0
  56. package/dist/default/icons/dist/html/scaffold/spinner.js +4 -0
  57. package/dist/default/icons/dist/html/scaffold/switches.js +4 -0
  58. package/dist/default/icons/dist/html/scaffold/volume-high.js +4 -0
  59. package/dist/default/icons/dist/html/scaffold/volume-low.js +4 -0
  60. package/dist/default/icons/dist/html/scaffold/volume-off.js +4 -0
  61. package/dist/default/icons/element/scaffold/index.js +1 -0
  62. package/dist/default/icons/scaffold/index.js +26 -0
  63. package/dist/default/internal/skins/compat-audio/register.js +1 -0
  64. package/dist/default/internal/skins/compat-audio/skin.css +42 -0
  65. package/dist/default/internal/skins/compat-audio/template.js +18 -16
  66. package/dist/default/internal/skins/compat-live-audio/register.js +1 -0
  67. package/dist/default/internal/skins/compat-live-audio/skin.css +42 -0
  68. package/dist/default/internal/skins/compat-live-audio/template.js +11 -9
  69. package/dist/default/internal/skins/compat-live-video/skin.css +67 -23
  70. package/dist/default/internal/skins/compat-live-video/template.js +20 -18
  71. package/dist/default/internal/skins/compat-video/skin.css +67 -23
  72. package/dist/default/internal/skins/compat-video/template.js +34 -32
  73. package/dist/default/internal/skins/default-audio/template.js +12 -12
  74. package/dist/default/internal/skins/default-live-audio/template.js +5 -5
  75. package/dist/default/internal/skins/default-live-video/skin.css +18 -7
  76. package/dist/default/internal/skins/default-live-video/template.js +16 -16
  77. package/dist/default/internal/skins/default-video/skin.css +24 -7
  78. package/dist/default/internal/skins/default-video/template.js +26 -26
  79. package/dist/default/internal/skins/neutral-audio/template.js +12 -12
  80. package/dist/default/internal/skins/neutral-live-audio/template.js +5 -5
  81. package/dist/default/internal/skins/neutral-live-video/skin.css +20 -9
  82. package/dist/default/internal/skins/neutral-live-video/template.js +16 -16
  83. package/dist/default/internal/skins/neutral-video/skin.css +26 -9
  84. package/dist/default/internal/skins/neutral-video/template.js +26 -26
  85. package/dist/default/internal/skins/scaffold-audio/register.js +73 -0
  86. package/dist/default/internal/skins/scaffold-audio/skin.css +1739 -0
  87. package/dist/default/internal/skins/scaffold-audio/template.js +221 -0
  88. package/dist/default/internal/skins/scaffold-live-audio/register.js +53 -0
  89. package/dist/default/internal/skins/scaffold-live-audio/skin.css +1559 -0
  90. package/dist/default/internal/skins/scaffold-live-audio/template.js +118 -0
  91. package/dist/default/internal/skins/scaffold-live-video/register.js +86 -0
  92. package/dist/default/internal/skins/scaffold-live-video/skin.css +1944 -0
  93. package/dist/default/internal/skins/scaffold-live-video/template.js +241 -0
  94. package/dist/default/internal/skins/scaffold-video/register.js +115 -0
  95. package/dist/default/internal/skins/scaffold-video/skin.css +2184 -0
  96. package/dist/default/internal/skins/scaffold-video/template.js +461 -0
  97. package/dist/default/media/playerjs-video/adapter.js +25 -0
  98. package/dist/default/presets/audio/index.js +2 -1
  99. package/dist/default/presets/audio/scaffold-skin.js +19 -0
  100. package/dist/default/presets/background/skin.js +0 -2
  101. package/dist/default/presets/live-audio/index.js +2 -1
  102. package/dist/default/presets/live-audio/scaffold-skin.js +19 -0
  103. package/dist/default/presets/live-video/index.js +2 -1
  104. package/dist/default/presets/live-video/scaffold-skin.js +19 -0
  105. package/dist/default/presets/skin.js +0 -11
  106. package/dist/default/presets/video/index.js +2 -1
  107. package/dist/default/presets/video/scaffold-skin.js +19 -0
  108. package/dist/default/ui/time-slider/element.js +31 -7
  109. package/dist/default/version.js +1 -1
  110. package/dist/dev/define/audio/compat-skin.css +42 -0
  111. package/dist/dev/define/audio/compat-skin2.js +1 -1
  112. package/dist/dev/define/audio/compat-skin2.js.map +1 -1
  113. package/dist/dev/define/audio/neutral-skin2.js.map +1 -1
  114. package/dist/dev/define/audio/scaffold-skin.css +1771 -0
  115. package/dist/dev/define/audio/scaffold-skin.d.ts +1 -0
  116. package/dist/dev/define/audio/scaffold-skin.js +8 -0
  117. package/dist/dev/define/audio/scaffold-skin.js.map +1 -0
  118. package/dist/dev/define/audio/scaffold-skin2.js +6 -0
  119. package/dist/dev/define/audio/scaffold-skin2.js.map +1 -0
  120. package/dist/dev/define/audio/skin2.js.map +1 -1
  121. package/dist/dev/define/global.js.map +1 -1
  122. package/dist/dev/define/live-audio/compat-skin.css +42 -0
  123. package/dist/dev/define/live-audio/compat-skin2.js +1 -1
  124. package/dist/dev/define/live-audio/compat-skin2.js.map +1 -1
  125. package/dist/dev/define/live-audio/neutral-skin2.js.map +1 -1
  126. package/dist/dev/define/live-audio/scaffold-skin.css +1591 -0
  127. package/dist/dev/define/live-audio/scaffold-skin.d.ts +1 -0
  128. package/dist/dev/define/live-audio/scaffold-skin.js +8 -0
  129. package/dist/dev/define/live-audio/scaffold-skin.js.map +1 -0
  130. package/dist/dev/define/live-audio/scaffold-skin2.js +6 -0
  131. package/dist/dev/define/live-audio/scaffold-skin2.js.map +1 -0
  132. package/dist/dev/define/live-audio/skin2.js.map +1 -1
  133. package/dist/dev/define/live-video/compat-skin.css +67 -23
  134. package/dist/dev/define/live-video/compat-skin2.js +1 -1
  135. package/dist/dev/define/live-video/compat-skin2.js.map +1 -1
  136. package/dist/dev/define/live-video/neutral-skin.css +20 -9
  137. package/dist/dev/define/live-video/neutral-skin2.js +1 -1
  138. package/dist/dev/define/live-video/neutral-skin2.js.map +1 -1
  139. package/dist/dev/define/live-video/scaffold-skin.css +1976 -0
  140. package/dist/dev/define/live-video/scaffold-skin.d.ts +1 -0
  141. package/dist/dev/define/live-video/scaffold-skin.js +8 -0
  142. package/dist/dev/define/live-video/scaffold-skin.js.map +1 -0
  143. package/dist/dev/define/live-video/scaffold-skin2.js +6 -0
  144. package/dist/dev/define/live-video/scaffold-skin2.js.map +1 -0
  145. package/dist/dev/define/live-video/skin.css +18 -7
  146. package/dist/dev/define/live-video/skin2.js +1 -1
  147. package/dist/dev/define/live-video/skin2.js.map +1 -1
  148. package/dist/dev/define/media/playerjs-video.d.ts +15 -0
  149. package/dist/dev/define/media/playerjs-video.js +13 -0
  150. package/dist/dev/define/media/playerjs-video.js.map +1 -0
  151. package/dist/dev/define/video/compat-skin.css +67 -23
  152. package/dist/dev/define/video/compat-skin2.js +1 -1
  153. package/dist/dev/define/video/compat-skin2.js.map +1 -1
  154. package/dist/dev/define/video/neutral-skin.css +26 -9
  155. package/dist/dev/define/video/neutral-skin2.js +1 -1
  156. package/dist/dev/define/video/neutral-skin2.js.map +1 -1
  157. package/dist/dev/define/video/scaffold-skin.css +2216 -0
  158. package/dist/dev/define/video/scaffold-skin.d.ts +1 -0
  159. package/dist/dev/define/video/scaffold-skin.js +8 -0
  160. package/dist/dev/define/video/scaffold-skin.js.map +1 -0
  161. package/dist/dev/define/video/scaffold-skin2.js +6 -0
  162. package/dist/dev/define/video/scaffold-skin2.js.map +1 -0
  163. package/dist/dev/define/video/skin.css +24 -7
  164. package/dist/dev/define/video/skin2.js +1 -1
  165. package/dist/dev/define/video/skin2.js.map +1 -1
  166. package/dist/dev/icons/dist/element/compat/icons.js +1 -1
  167. package/dist/dev/icons/dist/element/compat/icons.js.map +1 -1
  168. package/dist/dev/icons/dist/element/index.js +1 -0
  169. package/dist/dev/icons/dist/element/index.js.map +1 -1
  170. package/dist/dev/icons/dist/element/scaffold/icons.js +32 -0
  171. package/dist/dev/icons/dist/element/scaffold/icons.js.map +1 -0
  172. package/dist/dev/icons/dist/element/scaffold/index.d.ts +1 -0
  173. package/dist/dev/icons/dist/element/scaffold/index.js +10 -0
  174. package/dist/dev/icons/dist/element/scaffold/index.js.map +1 -0
  175. package/dist/dev/icons/dist/html/compat/play.js +1 -1
  176. package/dist/dev/icons/dist/html/compat/play.js.map +1 -1
  177. package/dist/dev/icons/dist/html/scaffold/airplay-enter.js +6 -0
  178. package/dist/dev/icons/dist/html/scaffold/airplay-enter.js.map +1 -0
  179. package/dist/dev/icons/dist/html/scaffold/airplay-exit.js +6 -0
  180. package/dist/dev/icons/dist/html/scaffold/airplay-exit.js.map +1 -0
  181. package/dist/dev/icons/dist/html/scaffold/captions-off.js +6 -0
  182. package/dist/dev/icons/dist/html/scaffold/captions-off.js.map +1 -0
  183. package/dist/dev/icons/dist/html/scaffold/captions-on.js +6 -0
  184. package/dist/dev/icons/dist/html/scaffold/captions-on.js.map +1 -0
  185. package/dist/dev/icons/dist/html/scaffold/cast-enter.js +6 -0
  186. package/dist/dev/icons/dist/html/scaffold/cast-enter.js.map +1 -0
  187. package/dist/dev/icons/dist/html/scaffold/cast-exit.js +6 -0
  188. package/dist/dev/icons/dist/html/scaffold/cast-exit.js.map +1 -0
  189. package/dist/dev/icons/dist/html/scaffold/check.js +6 -0
  190. package/dist/dev/icons/dist/html/scaffold/check.js.map +1 -0
  191. package/dist/dev/icons/dist/html/scaffold/chevron.js +6 -0
  192. package/dist/dev/icons/dist/html/scaffold/chevron.js.map +1 -0
  193. package/dist/dev/icons/dist/html/scaffold/fullscreen-enter.js +6 -0
  194. package/dist/dev/icons/dist/html/scaffold/fullscreen-enter.js.map +1 -0
  195. package/dist/dev/icons/dist/html/scaffold/fullscreen-exit.js +6 -0
  196. package/dist/dev/icons/dist/html/scaffold/fullscreen-exit.js.map +1 -0
  197. package/dist/dev/icons/dist/html/scaffold/gear.js +6 -0
  198. package/dist/dev/icons/dist/html/scaffold/gear.js.map +1 -0
  199. package/dist/dev/icons/dist/html/scaffold/index.d.ts +28 -0
  200. package/dist/dev/icons/dist/html/scaffold/pause.js +6 -0
  201. package/dist/dev/icons/dist/html/scaffold/pause.js.map +1 -0
  202. package/dist/dev/icons/dist/html/scaffold/pip-enter.js +6 -0
  203. package/dist/dev/icons/dist/html/scaffold/pip-enter.js.map +1 -0
  204. package/dist/dev/icons/dist/html/scaffold/pip-exit.js +6 -0
  205. package/dist/dev/icons/dist/html/scaffold/pip-exit.js.map +1 -0
  206. package/dist/dev/icons/dist/html/scaffold/play.js +6 -0
  207. package/dist/dev/icons/dist/html/scaffold/play.js.map +1 -0
  208. package/dist/dev/icons/dist/html/scaffold/quality.js +6 -0
  209. package/dist/dev/icons/dist/html/scaffold/quality.js.map +1 -0
  210. package/dist/dev/icons/dist/html/scaffold/restart.js +6 -0
  211. package/dist/dev/icons/dist/html/scaffold/restart.js.map +1 -0
  212. package/dist/dev/icons/dist/html/scaffold/seek.js +6 -0
  213. package/dist/dev/icons/dist/html/scaffold/seek.js.map +1 -0
  214. package/dist/dev/icons/dist/html/scaffold/speech.js +6 -0
  215. package/dist/dev/icons/dist/html/scaffold/speech.js.map +1 -0
  216. package/dist/dev/icons/dist/html/scaffold/speed.js +6 -0
  217. package/dist/dev/icons/dist/html/scaffold/speed.js.map +1 -0
  218. package/dist/dev/icons/dist/html/scaffold/spinner.js +6 -0
  219. package/dist/dev/icons/dist/html/scaffold/spinner.js.map +1 -0
  220. package/dist/dev/icons/dist/html/scaffold/switches.js +6 -0
  221. package/dist/dev/icons/dist/html/scaffold/switches.js.map +1 -0
  222. package/dist/dev/icons/dist/html/scaffold/volume-high.js +6 -0
  223. package/dist/dev/icons/dist/html/scaffold/volume-high.js.map +1 -0
  224. package/dist/dev/icons/dist/html/scaffold/volume-low.js +6 -0
  225. package/dist/dev/icons/dist/html/scaffold/volume-low.js.map +1 -0
  226. package/dist/dev/icons/dist/html/scaffold/volume-off.js +6 -0
  227. package/dist/dev/icons/dist/html/scaffold/volume-off.js.map +1 -0
  228. package/dist/dev/icons/element/scaffold/index.d.ts +1 -0
  229. package/dist/dev/icons/element/scaffold/index.js +1 -0
  230. package/dist/dev/icons/scaffold/index.d.ts +2 -0
  231. package/dist/dev/icons/scaffold/index.js +26 -0
  232. package/dist/dev/index.d.ts +3 -3
  233. package/dist/dev/internal/skins/compat-audio/register.d.ts +1 -0
  234. package/dist/dev/internal/skins/compat-audio/register.js +1 -0
  235. package/dist/dev/internal/skins/compat-audio/register.js.map +1 -1
  236. package/dist/dev/internal/skins/compat-audio/skin.css +42 -0
  237. package/dist/dev/internal/skins/compat-audio/template.js +18 -16
  238. package/dist/dev/internal/skins/compat-audio/template.js.map +1 -1
  239. package/dist/dev/internal/skins/compat-live-audio/register.d.ts +1 -0
  240. package/dist/dev/internal/skins/compat-live-audio/register.js +1 -0
  241. package/dist/dev/internal/skins/compat-live-audio/register.js.map +1 -1
  242. package/dist/dev/internal/skins/compat-live-audio/skin.css +42 -0
  243. package/dist/dev/internal/skins/compat-live-audio/template.js +11 -9
  244. package/dist/dev/internal/skins/compat-live-audio/template.js.map +1 -1
  245. package/dist/dev/internal/skins/compat-live-video/register.d.ts +1 -1
  246. package/dist/dev/internal/skins/compat-live-video/skin.css +67 -23
  247. package/dist/dev/internal/skins/compat-live-video/template.js +20 -18
  248. package/dist/dev/internal/skins/compat-live-video/template.js.map +1 -1
  249. package/dist/dev/internal/skins/compat-video/register.d.ts +1 -1
  250. package/dist/dev/internal/skins/compat-video/skin.css +67 -23
  251. package/dist/dev/internal/skins/compat-video/template.js +34 -32
  252. package/dist/dev/internal/skins/compat-video/template.js.map +1 -1
  253. package/dist/dev/internal/skins/default-audio/register.d.ts +2 -2
  254. package/dist/dev/internal/skins/default-audio/template.js +12 -12
  255. package/dist/dev/internal/skins/default-audio/template.js.map +1 -1
  256. package/dist/dev/internal/skins/default-live-audio/register.d.ts +1 -1
  257. package/dist/dev/internal/skins/default-live-audio/template.js +5 -5
  258. package/dist/dev/internal/skins/default-live-audio/template.js.map +1 -1
  259. package/dist/dev/internal/skins/default-live-video/register.d.ts +1 -1
  260. package/dist/dev/internal/skins/default-live-video/skin.css +18 -7
  261. package/dist/dev/internal/skins/default-live-video/template.js +16 -16
  262. package/dist/dev/internal/skins/default-live-video/template.js.map +1 -1
  263. package/dist/dev/internal/skins/default-video/register.d.ts +1 -1
  264. package/dist/dev/internal/skins/default-video/skin.css +24 -7
  265. package/dist/dev/internal/skins/default-video/template.js +26 -26
  266. package/dist/dev/internal/skins/default-video/template.js.map +1 -1
  267. package/dist/dev/internal/skins/neutral-audio/register.d.ts +2 -2
  268. package/dist/dev/internal/skins/neutral-audio/template.js +12 -12
  269. package/dist/dev/internal/skins/neutral-audio/template.js.map +1 -1
  270. package/dist/dev/internal/skins/neutral-live-audio/register.d.ts +1 -1
  271. package/dist/dev/internal/skins/neutral-live-audio/template.js +5 -5
  272. package/dist/dev/internal/skins/neutral-live-audio/template.js.map +1 -1
  273. package/dist/dev/internal/skins/neutral-live-video/register.d.ts +1 -1
  274. package/dist/dev/internal/skins/neutral-live-video/skin.css +20 -9
  275. package/dist/dev/internal/skins/neutral-live-video/template.js +16 -16
  276. package/dist/dev/internal/skins/neutral-live-video/template.js.map +1 -1
  277. package/dist/dev/internal/skins/neutral-video/register.d.ts +1 -1
  278. package/dist/dev/internal/skins/neutral-video/skin.css +26 -9
  279. package/dist/dev/internal/skins/neutral-video/template.js +26 -26
  280. package/dist/dev/internal/skins/neutral-video/template.js.map +1 -1
  281. package/dist/dev/internal/skins/scaffold-audio/register.d.ts +44 -0
  282. package/dist/dev/internal/skins/scaffold-audio/register.js +75 -0
  283. package/dist/dev/internal/skins/scaffold-audio/register.js.map +1 -0
  284. package/dist/dev/internal/skins/scaffold-audio/skin.css +1739 -0
  285. package/dist/dev/internal/skins/scaffold-audio/template.js +223 -0
  286. package/dist/dev/internal/skins/scaffold-audio/template.js.map +1 -0
  287. package/dist/dev/internal/skins/scaffold-live-audio/register.d.ts +28 -0
  288. package/dist/dev/internal/skins/scaffold-live-audio/register.js +55 -0
  289. package/dist/dev/internal/skins/scaffold-live-audio/register.js.map +1 -0
  290. package/dist/dev/internal/skins/scaffold-live-audio/skin.css +1559 -0
  291. package/dist/dev/internal/skins/scaffold-live-audio/template.js +120 -0
  292. package/dist/dev/internal/skins/scaffold-live-audio/template.js.map +1 -0
  293. package/dist/dev/internal/skins/scaffold-live-video/register.d.ts +45 -0
  294. package/dist/dev/internal/skins/scaffold-live-video/register.js +88 -0
  295. package/dist/dev/internal/skins/scaffold-live-video/register.js.map +1 -0
  296. package/dist/dev/internal/skins/scaffold-live-video/skin.css +1944 -0
  297. package/dist/dev/internal/skins/scaffold-live-video/template.js +243 -0
  298. package/dist/dev/internal/skins/scaffold-live-video/template.js.map +1 -0
  299. package/dist/dev/internal/skins/scaffold-video/register.d.ts +62 -0
  300. package/dist/dev/internal/skins/scaffold-video/register.js +117 -0
  301. package/dist/dev/internal/skins/scaffold-video/register.js.map +1 -0
  302. package/dist/dev/internal/skins/scaffold-video/skin.css +2184 -0
  303. package/dist/dev/internal/skins/scaffold-video/template.js +463 -0
  304. package/dist/dev/internal/skins/scaffold-video/template.js.map +1 -0
  305. package/dist/dev/media/playerjs-video/adapter.d.ts +11 -0
  306. package/dist/dev/media/playerjs-video/adapter.js +61 -0
  307. package/dist/dev/media/playerjs-video/adapter.js.map +1 -0
  308. package/dist/dev/media/playerjs-video/index.d.ts +2 -0
  309. package/dist/dev/presets/audio/index.d.ts +2 -1
  310. package/dist/dev/presets/audio/index.js +2 -1
  311. package/dist/dev/presets/audio/scaffold-skin.d.ts +15 -0
  312. package/dist/dev/presets/audio/scaffold-skin.js +21 -0
  313. package/dist/dev/presets/audio/scaffold-skin.js.map +1 -0
  314. package/dist/dev/presets/background/skin.js +0 -2
  315. package/dist/dev/presets/background/skin.js.map +1 -1
  316. package/dist/dev/presets/live-audio/index.d.ts +2 -1
  317. package/dist/dev/presets/live-audio/index.js +2 -1
  318. package/dist/dev/presets/live-audio/scaffold-skin.d.ts +15 -0
  319. package/dist/dev/presets/live-audio/scaffold-skin.js +21 -0
  320. package/dist/dev/presets/live-audio/scaffold-skin.js.map +1 -0
  321. package/dist/dev/presets/live-video/index.d.ts +2 -1
  322. package/dist/dev/presets/live-video/index.js +2 -1
  323. package/dist/dev/presets/live-video/scaffold-skin.d.ts +15 -0
  324. package/dist/dev/presets/live-video/scaffold-skin.js +21 -0
  325. package/dist/dev/presets/live-video/scaffold-skin.js.map +1 -0
  326. package/dist/dev/presets/skin.js +0 -11
  327. package/dist/dev/presets/skin.js.map +1 -1
  328. package/dist/dev/presets/video/index.d.ts +2 -1
  329. package/dist/dev/presets/video/index.js +2 -1
  330. package/dist/dev/presets/video/scaffold-skin.d.ts +15 -0
  331. package/dist/dev/presets/video/scaffold-skin.js +21 -0
  332. package/dist/dev/presets/video/scaffold-skin.js.map +1 -0
  333. package/dist/dev/ui/time-slider/element.js +31 -7
  334. package/dist/dev/ui/time-slider/element.js.map +1 -1
  335. package/dist/dev/version.js +1 -1
  336. package/docs/README.md +1 -1
  337. package/docs/guides/build-with-ai.md +1 -1
  338. package/docs/guides/cdn.md +9 -9
  339. package/docs/guides/installation-cdn.md +4 -4
  340. package/docs/guides/installation-shadcn.md +3 -3
  341. package/docs/guides/installation-svelte.md +5 -5
  342. package/docs/guides/installation-vue.md +5 -5
  343. package/docs/guides/installation.md +5 -5
  344. package/docs/guides/internationalization.md +5 -5
  345. package/docs/guides/llms.txt +2 -2
  346. package/docs/guides/media-sources.md +1 -0
  347. package/docs/guides/migrate-from-media-chrome.md +4 -4
  348. package/docs/guides/migrate-from-mux-player.md +6 -6
  349. package/docs/guides/migrate-from-plyr.md +7 -7
  350. package/docs/guides/migrate-from-video-js-8.md +15 -7
  351. package/docs/guides/migrate-from-vidstack.md +2 -2
  352. package/docs/guides/migrate.md +2 -1
  353. package/docs/guides/presets.md +4 -4
  354. package/docs/guides/self-hosting.md +7 -7
  355. package/docs/guides/skins.md +5 -5
  356. package/docs/guides/v10-roadmap.md +2 -2
  357. package/docs/guides/why-videojs.md +3 -3
  358. package/docs/llms.txt +7 -2
  359. package/docs/reference/api/error-codes.md +1 -1
  360. package/docs/reference/api/llms.txt +1 -1
  361. package/docs/reference/api/preset-audio.md +1 -1
  362. package/docs/reference/api/preset-background.md +1 -1
  363. package/docs/reference/api/preset-live-audio.md +1 -1
  364. package/docs/reference/api/preset-live-video.md +1 -1
  365. package/docs/reference/api/preset-video.md +1 -1
  366. package/docs/reference/api/vjs8-legacy-init.md +2 -2
  367. package/docs/reference/components/audio-neutral-skin.md +1 -1
  368. package/docs/reference/components/audio-scaffold-skin.md +39 -0
  369. package/docs/reference/components/audio-skin.md +1 -1
  370. package/docs/reference/components/background-video-skin.md +1 -1
  371. package/docs/reference/components/background-video.md +1 -1
  372. package/docs/reference/components/cloudflare-video.md +1 -1
  373. package/docs/reference/components/dash-video.md +1 -1
  374. package/docs/reference/components/google-cast.md +1 -1
  375. package/docs/reference/components/hls-audio.md +3 -2
  376. package/docs/reference/components/hls-background-video.md +1 -1
  377. package/docs/reference/components/hls-video.md +13 -2
  378. package/docs/reference/components/hlsjs-video.md +11 -1
  379. package/docs/reference/components/icons.md +2 -1
  380. package/docs/reference/components/live-audio-neutral-skin.md +1 -1
  381. package/docs/reference/components/live-audio-scaffold-skin.md +41 -0
  382. package/docs/reference/components/live-audio-skin.md +1 -1
  383. package/docs/reference/components/live-video-neutral-skin.md +1 -1
  384. package/docs/reference/components/live-video-scaffold-skin.md +47 -0
  385. package/docs/reference/components/live-video-skin.md +1 -1
  386. package/docs/reference/components/llms.txt +6 -1
  387. package/docs/reference/components/mux-audio.md +1 -1
  388. package/docs/reference/components/mux-background-video.md +1 -1
  389. package/docs/reference/components/mux-data.md +1 -1
  390. package/docs/reference/components/mux-video.md +1 -1
  391. package/docs/reference/components/native-hls-video.md +1 -1
  392. package/docs/reference/components/playerjs-video.md +197 -0
  393. package/docs/reference/components/shaka-video.md +1 -1
  394. package/docs/reference/components/spotify-audio.md +1 -1
  395. package/docs/reference/components/tiktok-video.md +1 -1
  396. package/docs/reference/components/twitch-video.md +1 -1
  397. package/docs/reference/components/video-neutral-skin.md +1 -1
  398. package/docs/reference/components/video-scaffold-skin.md +51 -0
  399. package/docs/reference/components/video-skin.md +1 -1
  400. package/docs/reference/components/vimeo-video.md +1 -1
  401. package/docs/reference/components/wistia-video.md +5 -1
  402. package/docs/reference/components/youtube-video.md +2 -2
  403. package/package.json +44 -39
@@ -10,7 +10,7 @@ The `video.js` package throws these `VJS8_LEGACY_*` errors when code calls a Vid
10
10
 
11
11
  - [VJS8_LEGACY_INIT](./vjs8-legacy-init.md)
12
12
 
13
- `videojs()` was the Video.js 8 API. Video.js 10 has no factory; players are components you compose.
13
+ `videojs()` was the Video.js 8 setup call. Video.js 10 does not set up a player from an element or id; players are components you compose.
14
14
  - [VJS8_LEGACY_PLUGIN](./vjs8-legacy-plugin.md)
15
15
 
16
16
  `videojs.registerPlugin()` was the Video.js 8 plugin system. Video.js 10 has no plugin registry.
@@ -1,6 +1,6 @@
1
1
  # Video.js v10 — HTML API
2
2
 
3
- > API reference for the player factory, presets, store controllers, features, translation tools, and utilities. Bundled with `@videojs/html` v10.0.1. Links are relative paths to files in this directory.
3
+ > API reference for the player factory, presets, store controllers, features, translation tools, and utilities. Bundled with `@videojs/html` v10.1.0. Links are relative paths to files in this directory.
4
4
 
5
5
  ## Player
6
6
 
@@ -14,7 +14,7 @@ import '@videojs/html/audio/skin';
14
14
  Import `@videojs/html/audio/neutral-skin` instead for the neutral skin. Or load one [CDN](../../guides/cdn.md) bundle that registers the player and a skin together:
15
15
 
16
16
  ```html
17
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/audio.js"></script>
17
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/audio.js"></script>
18
18
  ```
19
19
 
20
20
  `audio-neutral.js` registers the neutral skin instead, and `audio-player.js` registers `<audio-player>` alone.
@@ -15,7 +15,7 @@ import '@videojs/html/background/video';
15
15
  Or load the [CDN](../../guides/cdn.md) bundle that registers all three:
16
16
 
17
17
  ```html
18
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/background.js"></script>
18
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/background.js"></script>
19
19
  ```
20
20
 
21
21
  Unlike the other presets, the background preset has one bundle and no player-only bundle.
@@ -14,7 +14,7 @@ import '@videojs/html/live-audio/skin';
14
14
  Import `@videojs/html/live-audio/neutral-skin` instead for the neutral skin. Or load one [CDN](../../guides/cdn.md) bundle that registers the player and a skin together:
15
15
 
16
16
  ```html
17
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/live-audio.js"></script>
17
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-audio.js"></script>
18
18
  ```
19
19
 
20
20
  `live-audio-neutral.js` registers the neutral skin instead, and `live-audio-player.js` registers `<live-audio-player>` alone.
@@ -14,7 +14,7 @@ import '@videojs/html/live-video/skin';
14
14
  Import `@videojs/html/live-video/neutral-skin` instead for the neutral skin. Or load one [CDN](../../guides/cdn.md) bundle that registers the player and a skin together:
15
15
 
16
16
  ```html
17
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/live-video.js"></script>
17
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-video.js"></script>
18
18
  ```
19
19
 
20
20
  `live-video-neutral.js` registers the neutral skin instead, and `live-video-player.js` registers `<live-video-player>` alone.
@@ -14,7 +14,7 @@ import '@videojs/html/video/skin';
14
14
  Import `@videojs/html/video/neutral-skin` instead for the neutral skin. Or load one [CDN](../../guides/cdn.md) bundle that registers the player and a skin together:
15
15
 
16
16
  ```html
17
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/video.js"></script>
17
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/video.js"></script>
18
18
  ```
19
19
 
20
20
  `video-neutral.js` registers the neutral skin instead, and `video-player.js` registers `<video-player>` alone.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Legacy Video.js 8 player initialization error
4
4
 
5
- `videojs()` was the Video.js 8 API. Video.js 10 has no factory; players are components you compose.
5
+ `videojs()` was the Video.js 8 setup call. Video.js 10 does not set up a player from an element or id; players are components you compose.
6
6
 
7
7
  ## Trigger
8
8
 
@@ -12,7 +12,7 @@ const player = videojs('my-video', { controls: true });
12
12
 
13
13
  ## Video.js 10 equivalent
14
14
 
15
- Keep `import 'video.js'`, remove the factory call, and render `<video-player><video-skin><video src></video></video-skin></video-player>`.
15
+ Install `@videojs/html`, `import '@videojs/html/video/player'` and `import '@videojs/html/video/skin'`, and render `<video-player><video-skin><video src></video></video-skin></video-player>`.
16
16
 
17
17
  See [Migrate from Video.js 8](../../guides/migrate-from-video-js-8.md) for the full setup.
18
18
 
@@ -13,7 +13,7 @@ import '@videojs/html/audio/neutral-skin';
13
13
  The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/audio-neutral.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/audio-neutral.js"></script>
17
17
  ```
18
18
 
19
19
  ## Anatomy
@@ -0,0 +1,39 @@
1
+ # audio-scaffold-skin
2
+
3
+ An audio skin with minimal styling for custom skins
4
+
5
+ The Scaffold skin of the audio preset provides functional controls with minimal styling and no transitions. It is a starting point for a custom skin, intended to be restyled before use. Its time slider supports chapter segments and thumbnail previews. See [Customize skins](../../guides/customize-skins.md) to install and edit its source.
6
+
7
+ ## Import
8
+
9
+ ```ts
10
+ import '@videojs/html/audio/scaffold-skin';
11
+ ```
12
+
13
+ The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
+
15
+ ```html
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/audio-scaffold.js"></script>
17
+ ```
18
+
19
+ ## Usage
20
+
21
+ The skin goes between the player and the media element. It renders its controls around the media.
22
+
23
+ ```html
24
+ <audio-player>
25
+ <audio-scaffold-skin>
26
+ <audio src="audio.mp3"></audio>
27
+ </audio-scaffold-skin>
28
+ </audio-player>
29
+ ```
30
+
31
+ ## Styling
32
+
33
+ Packaged skins style themselves and expose a small set of public CSS custom properties. Everything else inside the skin is private and may change between releases. [Customize skins](../../guides/customize-skins.md#style-a-packaged-skin) documents the properties. For deeper changes, the Video.js registry provides the skin files.
34
+
35
+ ## Own the UI
36
+
37
+ Packaged skins keep their controls and layout inside Video.js. When you need to add, remove, rearrange, or deeply restyle controls, use Shadcn to add the skin source to your project. Its components, layout, styles, and interactions become local files you can change.
38
+
39
+ - [Install Video.js with Shadcn](../../guides/installation-shadcn.md#choose-how-to-install): Add editable skin source and build a working React or HTML player
@@ -13,7 +13,7 @@ import '@videojs/html/audio/skin';
13
13
  The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/audio.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/audio.js"></script>
17
17
  ```
18
18
 
19
19
  ## Anatomy
@@ -13,7 +13,7 @@ import '@videojs/html/background/skin';
13
13
  The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/background.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/background.js"></script>
17
17
  ```
18
18
 
19
19
  ## Anatomy
@@ -17,7 +17,7 @@ import '@videojs/html/media/background-video';
17
17
  Or load it from the [CDN](../../guides/cdn.md):
18
18
 
19
19
  ```html
20
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/background-video.js"></script>
20
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/background-video.js"></script>
21
21
  ```
22
22
 
23
23
  ## Examples
@@ -17,7 +17,7 @@ import '@videojs/html/media/cloudflare-video';
17
17
  Or load it from the [CDN](../../guides/cdn.md):
18
18
 
19
19
  ```html
20
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/cloudflare-video.js"></script>
20
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/cloudflare-video.js"></script>
21
21
  ```
22
22
 
23
23
  ## Load a source
@@ -21,7 +21,7 @@ import '@videojs/html/media/dash-video';
21
21
  Or load it from the [CDN](../../guides/cdn.md):
22
22
 
23
23
  ```html
24
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/dash-video.js"></script>
24
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/dash-video.js"></script>
25
25
  ```
26
26
 
27
27
  ## Examples
@@ -17,7 +17,7 @@ import '@videojs/html/extensions/google-cast';
17
17
  Or load it from the [CDN](../../guides/cdn.md):
18
18
 
19
19
  ```html
20
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/extensions/google-cast.js"></script>
20
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/extensions/google-cast.js"></script>
21
21
  ```
22
22
 
23
23
  ## Anatomy
@@ -13,7 +13,7 @@ import '@videojs/html/media/hls-audio';
13
13
  Or load it from the [CDN](../../guides/cdn.md):
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/hls-audio.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/hls-audio.js"></script>
17
17
  ```
18
18
 
19
19
  ## Examples
@@ -59,6 +59,7 @@ These Video.js-specific attributes configure media behavior:
59
59
  | --- | --- | --- | --- |
60
60
  | `alternativeMediaSuggestion` | `string \| undefined` | — | Read-only. A complete sentence naming the Media to reach for when this one can't play a source. Appended to the copy this adapter logs. Empty here, and overridden the same way as on the video adapter — see its note. `hls-audio` has no better-equipped sibling of its own; the Mux audio Media built on this engine does, and points at the hls.js-backed one. |
61
61
  | `contentData` | `MediaContentData \| undefined` | — | Read-only. |
62
+ | `crossOrigin` | `'anonymous' \| 'use-credentials' \| null` | `null` | |
62
63
  | `disableRemotePlayback` | `boolean` | `false` | |
63
64
  | `engine` | `{ state: { [K in keyof S]-?: Signal<S[K]> }; context: { [K in keyof C]-?: Signal<C[K]> }; destroy(): Promise<void> }` | — | Read-only. Underlying playback engine — the low-level SPF reactive composition that drives playback. An advanced escape hatch for direct engine access; normal playback is driven through this element's own properties and methods. |
64
65
  | `error` | `{ code: number; message: string; data?: unknown } \| null` | — | Read-only. The current fatal error, or `null`. Only *fatal* conditions appear here — the engine reports non-fatal ones too, which stay in `engine.state.errors`. Resets per source. Fires `'error'` when set. |
@@ -69,7 +70,7 @@ These Video.js-specific attributes configure media behavior:
69
70
  | `streamType` | `MediaStreamType` | — | Current stream type (`'on-demand'`, `'live'`, or `'unknown'`). Defaults to `'unknown'`; detecting hosts update it automatically, and consumers can set it to override detection. |
70
71
  | `targetLiveWindow` | `number` | — | Read-only. |
71
72
 
72
- Also exposes these properties from the native media API. See [HTMLAudioElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement) for details: `autoplay`, `buffered`, `controls`, `crossOrigin`, `currentSrc`, `currentTime`, `defaultMuted`, `defaultPlaybackRate`, `duration`, `ended`, `loop`, `muted`, `paused`, `playbackRate`, `played`, `readyState`, `remote`, `seekable`, `seeking`, `textTracks`, `title`, `volume`.
73
+ Also exposes these properties from the native media API. See [HTMLAudioElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement) for details: `autoplay`, `buffered`, `controls`, `currentSrc`, `currentTime`, `defaultMuted`, `defaultPlaybackRate`, `duration`, `ended`, `loop`, `muted`, `paused`, `playbackRate`, `played`, `readyState`, `remote`, `seekable`, `seeking`, `textTracks`, `title`, `volume`.
73
74
 
74
75
  ### Methods
75
76
 
@@ -15,7 +15,7 @@ import '@videojs/html/media/hls-background-video';
15
15
  Or load it from the [CDN](../../guides/cdn.md):
16
16
 
17
17
  ```html
18
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/hls-background-video.js"></script>
18
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/hls-background-video.js"></script>
19
19
  ```
20
20
 
21
21
  ## Source behavior
@@ -13,7 +13,7 @@ import '@videojs/html/media/hls-video';
13
13
  Or load it from the [CDN](../../guides/cdn.md):
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/hls-video.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/hls-video.js"></script>
17
17
  ```
18
18
 
19
19
  ## Examples
@@ -46,6 +46,16 @@ import '@videojs/html/ui/container';
46
46
  import '@videojs/html/media/hls-video';
47
47
  ```
48
48
 
49
+ ## Cookie-gated streams
50
+
51
+ A stream on another origin that is gated by cookies — CloudFront signed cookies, for example — needs those cookies on every manifest and segment request, or the CDN answers 403. Set the standard `crossorigin="use-credentials"` on the element and the engine sends them, the same way the browser does under native playback. Any other value, or no attribute, leaves requests at the platform default and sends no cross-origin cookies.
52
+
53
+ The CDN must answer with `Access-Control-Allow-Credentials: true` and a specific `Access-Control-Allow-Origin`, not `*`, or the browser refuses the credentialed response.
54
+
55
+ ```html
56
+ <hls-video src="https://cdn.example.com/stream.m3u8" crossorigin="use-credentials"></hls-video>
57
+ ```
58
+
49
59
  ## API Reference
50
60
 
51
61
  ### Attributes
@@ -64,6 +74,7 @@ These Video.js-specific attributes configure media behavior:
64
74
  | --- | --- | --- | --- |
65
75
  | `alternativeMediaSuggestion` | `string \| undefined` | — | Read-only. A complete sentence naming the Media to reach for when this one can't play a source — `Try the hls.js-backed Mux media instead: import the hls-js flavor in place of the spf one.` Appended to the copy this adapter surfaces, and to the notices it logs. Name the flavor, not an import path: a Media is reached through several packages, each with its own counterpart. Empty here: `hls-video` has no better-equipped sibling to point at. A Media that does (a Mux Video built on this engine, whose hls.js-backed counterpart plays MPEG-TS and DRM) overrides this static, and its copy gains the second sentence with no other change. |
66
76
  | `contentData` | `MediaContentData \| undefined` | — | Read-only. |
77
+ | `crossOrigin` | `'anonymous' \| 'use-credentials' \| null` | `null` | |
67
78
  | `disableRemotePlayback` | `boolean` | `false` | |
68
79
  | `engine` | `{ state: { [K in keyof S]-?: Signal<S[K]> }; context: { [K in keyof C]-?: Signal<C[K]> }; destroy(): Promise<void> }` | — | Read-only. Underlying playback engine — the low-level SPF reactive composition that drives playback. An advanced escape hatch for direct engine access; normal playback is driven through this element's own properties and methods. |
69
80
  | `error` | `{ code: number; message: string; data?: unknown } \| null` | — | Read-only. The current fatal error, or `null`. Only *fatal* conditions appear here — the engine reports non-fatal ones too (they stay in `engine.state.errors`), and promoting them would tell a consumer playback had failed when it hadn't. Resets per source. Fires `'error'` when set. |
@@ -79,7 +90,7 @@ These Video.js-specific attributes configure media behavior:
79
90
  | `webkitPresentationMode` | `WebKitPresentationMode \| undefined` | — | Read-only. |
80
91
  | `webkitSetPresentationMode` | `((mode: WebKitPresentationMode) => void) \| undefined` | — | Read-only. |
81
92
 
82
- Also exposes these properties from the native media API. See [HTMLVideoElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLVideoElement) for details: `autoplay`, `buffered`, `controls`, `crossOrigin`, `currentSrc`, `currentTime`, `defaultMuted`, `defaultPlaybackRate`, `disablePictureInPicture`, `duration`, `ended`, `loop`, `muted`, `paused`, `playbackRate`, `played`, `playsInline`, `poster`, `readyState`, `remote`, `seekable`, `seeking`, `textTracks`, `title`, `videoHeight`, `videoWidth`, `volume`.
93
+ Also exposes these properties from the native media API. See [HTMLVideoElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLVideoElement) for details: `autoplay`, `buffered`, `controls`, `currentSrc`, `currentTime`, `defaultMuted`, `defaultPlaybackRate`, `disablePictureInPicture`, `duration`, `ended`, `loop`, `muted`, `paused`, `playbackRate`, `played`, `playsInline`, `poster`, `readyState`, `remote`, `seekable`, `seeking`, `textTracks`, `title`, `videoHeight`, `videoWidth`, `volume`.
83
94
 
84
95
  ### Methods
85
96
 
@@ -17,7 +17,7 @@ import '@videojs/html/media/hlsjs-video';
17
17
  Or load it from the [CDN](../../guides/cdn.md):
18
18
 
19
19
  ```html
20
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/hlsjs-video.js"></script>
20
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/hlsjs-video.js"></script>
21
21
  ```
22
22
 
23
23
  ## Examples
@@ -50,6 +50,16 @@ import '@videojs/html/ui/container';
50
50
  import '@videojs/html/media/hlsjs-video';
51
51
  ```
52
52
 
53
+ ## Cookie-gated streams
54
+
55
+ A stream on another origin that is gated by cookies — CloudFront signed cookies, for example — needs those cookies on every manifest and segment request, or the CDN answers 403. Set the standard `crossorigin="use-credentials"` on the element and hls.js sends them (`withCredentials` on its XHR loader, `credentials: 'include'` on its fetch loader), the same way the browser does under native playback. Any other value, or no attribute, leaves hls.js’s default and sends no cross-origin cookies. An `xhrSetup` or `fetchSetup` you pass through `source.engine.hlsJs` still runs, after this, on the same request.
56
+
57
+ The CDN must answer with `Access-Control-Allow-Credentials: true` and a specific `Access-Control-Allow-Origin`, not `*`, or the browser refuses the credentialed response.
58
+
59
+ ```html
60
+ <hlsjs-video src="https://cdn.example.com/stream.m3u8" crossorigin="use-credentials"></hlsjs-video>
61
+ ```
62
+
53
63
  ## API Reference
54
64
 
55
65
  ### Attributes
@@ -22,13 +22,14 @@ import { playIcon } from "@videojs/html/icons";
22
22
 
23
23
  ## Icon sets
24
24
 
25
- Three sets ship with the same icon names and different designs.
25
+ Four sets ship with the same icon names and different designs.
26
26
 
27
27
  | Set | `family` | SVG strings | Used by |
28
28
  | --- | --- | --- | --- |
29
29
  | Default | `default` | `@videojs/html/icons` or `@videojs/html/icons/default` | The default skins, such as [`<video-skin>`](./video-skin.md) |
30
30
  | Neutral | `neutral` | `@videojs/html/icons/neutral` | The neutral skins, such as [`<video-neutral-skin>`](./video-neutral-skin.md) |
31
31
  | Compat | `compat` | `@videojs/html/icons/compat` | The compat skins, such as [`<video-compat-skin>`](./video-compat-skin.md) |
32
+ | Scaffold | `scaffold` | `@videojs/html/icons/scaffold` | The scaffold skins, such as [`<video-scaffold-skin>`](./video-scaffold-skin.md) |
32
33
 
33
34
  ## Available icons
34
35
 
@@ -13,7 +13,7 @@ import '@videojs/html/live-audio/neutral-skin';
13
13
  The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/live-audio-neutral.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-audio-neutral.js"></script>
17
17
  ```
18
18
 
19
19
  ## Anatomy
@@ -0,0 +1,41 @@
1
+ # live-audio-scaffold-skin
2
+
3
+ A live audio skin with minimal styling for custom skins
4
+
5
+ The Scaffold skin of the live audio preset provides functional controls with minimal styling and no transitions. It is a starting point for a custom skin, intended to be restyled before use. It shows a Live button in place of time controls. See [Customize skins](../../guides/customize-skins.md) to install and edit its source.
6
+
7
+ ## Import
8
+
9
+ ```ts
10
+ import '@videojs/html/live-audio/scaffold-skin';
11
+ ```
12
+
13
+ The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
+
15
+ ```html
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-audio-scaffold.js"></script>
17
+ ```
18
+
19
+ ## Usage
20
+
21
+ The skin goes between the player and the media element. It renders its controls around the media.
22
+
23
+ ```html
24
+ <live-audio-player>
25
+ <live-audio-scaffold-skin>
26
+ <mux-audio src="live.m3u8"></mux-audio>
27
+ </live-audio-scaffold-skin>
28
+ </live-audio-player>
29
+ ```
30
+
31
+ The examples use the [Mux audio element](./mux-audio.md): a plain `<audio>` can’t play HLS in most browsers, and this element reports the live playback state the skin’s Live button needs. See [Play live streams](../../guides/live-streams.md).
32
+
33
+ ## Styling
34
+
35
+ Packaged skins style themselves and expose a small set of public CSS custom properties. Everything else inside the skin is private and may change between releases. [Customize skins](../../guides/customize-skins.md#style-a-packaged-skin) documents the properties. For deeper changes, the Video.js registry provides the skin files.
36
+
37
+ ## Own the UI
38
+
39
+ Packaged skins keep their controls and layout inside Video.js. When you need to add, remove, rearrange, or deeply restyle controls, use Shadcn to add the skin source to your project. Its components, layout, styles, and interactions become local files you can change.
40
+
41
+ - [Install Video.js with Shadcn](../../guides/installation-shadcn.md#choose-how-to-install): Add editable skin source and build a working React or HTML player
@@ -13,7 +13,7 @@ import '@videojs/html/live-audio/skin';
13
13
  The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/live-audio.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-audio.js"></script>
17
17
  ```
18
18
 
19
19
  ## Anatomy
@@ -13,7 +13,7 @@ import '@videojs/html/live-video/neutral-skin';
13
13
  The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/live-video-neutral.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-video-neutral.js"></script>
17
17
  ```
18
18
 
19
19
  ## Anatomy
@@ -0,0 +1,47 @@
1
+ # live-video-scaffold-skin
2
+
3
+ A live video skin with minimal styling for custom skins
4
+
5
+ The Scaffold skin of the live video preset provides functional controls with minimal styling and no transitions. It is a starting point for a custom skin, intended to be restyled before use. It shows a Live button in place of time controls. See [Customize skins](../../guides/customize-skins.md) to install and edit its source.
6
+
7
+ ## Import
8
+
9
+ ```ts
10
+ import '@videojs/html/live-video/scaffold-skin';
11
+ ```
12
+
13
+ The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
+
15
+ ```html
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-video-scaffold.js"></script>
17
+ ```
18
+
19
+ ## Usage
20
+
21
+ The skin goes between the player and the media element. It renders its controls around the media.
22
+
23
+ ```html
24
+ <live-video-player>
25
+ <live-video-scaffold-skin>
26
+ <hls-video src="live.m3u8"></hls-video>
27
+ </live-video-scaffold-skin>
28
+ </live-video-player>
29
+ ```
30
+
31
+ The examples use the lightweight [HLS video element](./hls-video.md) because most browsers can’t play HLS streams with a plain `<video>`. See [Play live streams](../../guides/live-streams.md).
32
+
33
+ ## Poster
34
+
35
+ The skin renders a poster image before playback starts. An element with `slot="poster"` replaces it.
36
+
37
+ See [Add a poster and loading placeholder](../../guides/poster.md) for complete examples.
38
+
39
+ ## Styling
40
+
41
+ Packaged skins style themselves and expose a small set of public CSS custom properties. Everything else inside the skin is private and may change between releases. [Customize skins](../../guides/customize-skins.md#style-a-packaged-skin) documents the properties. For deeper changes, the Video.js registry provides the skin files.
42
+
43
+ ## Own the UI
44
+
45
+ Packaged skins keep their controls and layout inside Video.js. When you need to add, remove, rearrange, or deeply restyle controls, use Shadcn to add the skin source to your project. Its components, layout, styles, and interactions become local files you can change.
46
+
47
+ - [Install Video.js with Shadcn](../../guides/installation-shadcn.md#choose-how-to-install): Add editable skin source and build a working React or HTML player
@@ -13,7 +13,7 @@ import '@videojs/html/live-video/skin';
13
13
  The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/live-video.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-video.js"></script>
17
17
  ```
18
18
 
19
19
  ## Anatomy
@@ -1,6 +1,6 @@
1
1
  # Video.js v10 — HTML Components
2
2
 
3
- > API reference for skins, media components, extensions, and interface components. Bundled with `@videojs/html` v10.0.1. Links are relative paths to files in this directory.
3
+ > API reference for skins, media components, extensions, and interface components. Bundled with `@videojs/html` v10.1.0. Links are relative paths to files in this directory.
4
4
 
5
5
  ## Layout
6
6
 
@@ -17,15 +17,19 @@ API reference for the packaged skins each preset ships.
17
17
  - [video-skin](./video-skin.md): The video preset's default skin with the modern, frosted look
18
18
  - [video-neutral-skin](./video-neutral-skin.md): The video preset's visually lighter skin, closer to a classic control bar
19
19
  - [video-compat-skin](./video-compat-skin.md): A video skin designed for broader browser compatibility
20
+ - [video-scaffold-skin](./video-scaffold-skin.md): A video skin with minimal styling for custom skins
20
21
  - [audio-skin](./audio-skin.md): The audio preset's default skin with the modern, frosted look
21
22
  - [audio-neutral-skin](./audio-neutral-skin.md): The audio preset's visually lighter skin, closer to a classic control bar
22
23
  - [audio-compat-skin](./audio-compat-skin.md): An audio skin designed for broader browser compatibility
24
+ - [audio-scaffold-skin](./audio-scaffold-skin.md): An audio skin with minimal styling for custom skins
23
25
  - [live-video-skin](./live-video-skin.md): The live video preset's default skin, which swaps time controls for a Live button
24
26
  - [live-video-neutral-skin](./live-video-neutral-skin.md): The live video preset's visually lighter skin, closer to a classic control bar
25
27
  - [live-video-compat-skin](./live-video-compat-skin.md): A live video skin designed for broader browser compatibility
28
+ - [live-video-scaffold-skin](./live-video-scaffold-skin.md): A live video skin with minimal styling for custom skins
26
29
  - [live-audio-skin](./live-audio-skin.md): The live audio preset's default skin, which swaps time controls for a Live button
27
30
  - [live-audio-neutral-skin](./live-audio-neutral-skin.md): The live audio preset's visually lighter skin, closer to a classic control bar
28
31
  - [live-audio-compat-skin](./live-audio-compat-skin.md): A live audio skin designed for broader browser compatibility
32
+ - [live-audio-scaffold-skin](./live-audio-scaffold-skin.md): A live audio skin with minimal styling for custom skins
29
33
  - [background-video-skin](./background-video-skin.md): The background preset's chrome-less skin for ambient video
30
34
 
31
35
  ## Media
@@ -44,6 +48,7 @@ API reference for media components that handle streaming protocols and playback.
44
48
  - [mux-background-video](./mux-background-video.md): Mux-specific name for the HLS background video component
45
49
  - [mux-video](./mux-video.md): Video element for Mux-hosted HLS streams
46
50
  - [native-hls-video](./native-hls-video.md): HLS video element using the browser's built-in HLS support
51
+ - [playerjs-video](./playerjs-video.md): Video component that plays any embed implementing the player.js protocol, such as Mux Player, Gumlet, FrameRate, Livid, Bunny Stream, and Streamable
47
52
  - [shaka-video](./shaka-video.md): Video element powered by Shaka Player for DASH, HLS, and progressive playback with DRM
48
53
  - [spotify-audio](./spotify-audio.md): Audio component that plays Spotify tracks, episodes, playlists, and shows through the Spotify embed
49
54
  - [tiktok-video](./tiktok-video.md): Video component that plays TikTok videos through the TikTok embed player
@@ -17,7 +17,7 @@ import '@videojs/html/media/mux-audio';
17
17
  Or load it from the [CDN](../../guides/cdn.md):
18
18
 
19
19
  ```html
20
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/mux-audio.js"></script>
20
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/mux-audio.js"></script>
21
21
  ```
22
22
 
23
23
  ## Analytics and casting
@@ -15,7 +15,7 @@ import '@videojs/html/media/mux-background-video';
15
15
  Or load it from the [CDN](../../guides/cdn.md):
16
16
 
17
17
  ```html
18
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/mux-background-video.js"></script>
18
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/mux-background-video.js"></script>
19
19
  ```
20
20
 
21
21
  ## Load a Mux source
@@ -17,7 +17,7 @@ import '@videojs/html/extensions/mux-data';
17
17
  Or load it from the [CDN](../../guides/cdn.md):
18
18
 
19
19
  ```html
20
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/extensions/mux-data.js"></script>
20
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/extensions/mux-data.js"></script>
21
21
  ```
22
22
 
23
23
  ## Anatomy
@@ -17,7 +17,7 @@ import '@videojs/html/media/mux-video';
17
17
  Or load it from the [CDN](../../guides/cdn.md):
18
18
 
19
19
  ```html
20
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/mux-video.js"></script>
20
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/mux-video.js"></script>
21
21
  ```
22
22
 
23
23
  ## Load a source
@@ -13,7 +13,7 @@ import '@videojs/html/media/native-hls-video';
13
13
  Or load it from the [CDN](../../guides/cdn.md):
14
14
 
15
15
  ```html
16
- <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.1/media/native-hls-video.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/media/native-hls-video.js"></script>
17
17
  ```
18
18
 
19
19
  ## Examples