@hanifhan1f/vidstack-react 1.12.13 → 1.12.15

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 (392) hide show
  1. package/dev/chunks/vidstack-B-FM4-oZ.js +668 -0
  2. package/dev/chunks/vidstack-B92UncBI.js +61 -0
  3. package/dev/chunks/vidstack-BDiAEW1N.js +11691 -0
  4. package/dev/chunks/vidstack-BZIhWvGa.js +1371 -0
  5. package/dev/chunks/vidstack-Bfi_jCvb.js +476 -0
  6. package/dev/chunks/vidstack-CBF7iUqu.js +22 -0
  7. package/dev/chunks/vidstack-CFZ0rYJz.js +34 -0
  8. package/dev/chunks/vidstack-CM82l-7o.js +551 -0
  9. package/dev/chunks/vidstack-CvWDiSTs.js +84 -0
  10. package/dev/chunks/vidstack-CzU-uC5f.js +189 -0
  11. package/dev/chunks/vidstack-D-hQD1eE.js +9 -0
  12. package/dev/chunks/vidstack-D6_9yy0x.js +643 -0
  13. package/dev/chunks/vidstack-DJQOTrl6.js +180 -0
  14. package/dev/chunks/vidstack-DNbKNc4R.js +288 -0
  15. package/dev/chunks/vidstack-D_bWd66h.js +2023 -0
  16. package/dev/chunks/vidstack-Dm1xEU9Q.js +36 -0
  17. package/dev/chunks/vidstack-f6WXkmfP.js +375 -0
  18. package/dev/chunks/vidstack-krOAtKMi.js +34 -0
  19. package/dev/chunks/vidstack-lYFZKRUc.js +401 -0
  20. package/dev/chunks/vidstack-vz-aZSfo.js +1497 -0
  21. package/dev/player/vidstack-default-components.js +14 -0
  22. package/dev/player/vidstack-default-icons.js +88 -0
  23. package/dev/player/vidstack-default-layout.js +14 -0
  24. package/dev/player/vidstack-plyr-icons.js +62 -0
  25. package/dev/player/vidstack-plyr-layout.js +636 -0
  26. package/dev/player/vidstack-remotion.js +345 -0
  27. package/dev/vidstack.js +587 -0
  28. package/dom.d.ts +91 -0
  29. package/google-cast.d.ts +1422 -0
  30. package/icons.d.ts +5 -0
  31. package/index.d.ts +8 -0
  32. package/package.json +9 -60
  33. package/player/layouts/default.d.ts +11392 -0
  34. package/player/layouts/plyr.d.ts +5 -0
  35. package/player/remotion.d.ts +5 -0
  36. package/player/styles/base.css +153 -0
  37. package/player/styles/default/buffering.css +55 -0
  38. package/player/styles/default/buttons.css +175 -0
  39. package/player/styles/default/captions.css +181 -0
  40. package/player/styles/default/chapter-title.css +26 -0
  41. package/player/styles/default/controls.css +56 -0
  42. package/player/styles/default/gestures.css +19 -0
  43. package/player/styles/default/icons.css +6 -0
  44. package/player/styles/default/keyboard.css +148 -0
  45. package/player/styles/default/layouts/audio.css +417 -0
  46. package/player/styles/default/layouts/video.css +1082 -0
  47. package/player/styles/default/menus.css +959 -0
  48. package/player/styles/default/poster.css +52 -0
  49. package/player/styles/default/sliders.css +391 -0
  50. package/player/styles/default/theme.css +2461 -0
  51. package/player/styles/default/thumbnail.css +40 -0
  52. package/player/styles/default/time.css +45 -0
  53. package/player/styles/default/tooltips.css +141 -0
  54. package/player/styles/plyr/theme.css +1237 -0
  55. package/prod/chunks/vidstack-0Foyib2F.js +34 -0
  56. package/prod/chunks/vidstack-BbPEqH3g.js +11196 -0
  57. package/prod/chunks/vidstack-Bh7M8kL6.js +663 -0
  58. package/prod/chunks/vidstack-BlPINAXN.js +189 -0
  59. package/prod/chunks/vidstack-C5Rzkyfp.js +375 -0
  60. package/prod/chunks/vidstack-CBF7iUqu.js +22 -0
  61. package/prod/chunks/vidstack-CZNlvfmV.js +288 -0
  62. package/prod/chunks/vidstack-CZgUA94N.js +1979 -0
  63. package/prod/chunks/vidstack-Ce0Qn3e1.js +1497 -0
  64. package/prod/chunks/vidstack-D0XCUWbp.js +159 -0
  65. package/prod/chunks/vidstack-DTyDOhwS.js +504 -0
  66. package/prod/chunks/vidstack-DhC5F6c8.js +470 -0
  67. package/prod/chunks/vidstack-Dm1xEU9Q.js +36 -0
  68. package/prod/chunks/vidstack-Ma9rwtR0.js +386 -0
  69. package/prod/chunks/vidstack-WsodkLQg.js +1371 -0
  70. package/prod/chunks/vidstack-jIPoNqhj.js +545 -0
  71. package/prod/chunks/vidstack-krOAtKMi.js +34 -0
  72. package/prod/chunks/vidstack-vqp2QaHR.js +9 -0
  73. package/prod/chunks/vidstack-xo_SmgiV.js +84 -0
  74. package/prod/chunks/vidstack-xvxeRtaN.js +61 -0
  75. package/prod/player/vidstack-default-components.js +14 -0
  76. package/prod/player/vidstack-default-icons.js +88 -0
  77. package/prod/player/vidstack-default-layout.js +14 -0
  78. package/prod/player/vidstack-plyr-icons.js +62 -0
  79. package/prod/player/vidstack-plyr-layout.js +636 -0
  80. package/prod/player/vidstack-remotion.js +335 -0
  81. package/prod/vidstack-icons.js +435 -0
  82. package/prod/vidstack.js +648 -0
  83. package/server/chunks/vidstack-2zMSe4ym.js +1371 -0
  84. package/server/chunks/vidstack-BtqWstSj.js +375 -0
  85. package/server/chunks/vidstack-C-HdFsZi.js +84 -0
  86. package/server/chunks/vidstack-C4iWXMC-.js +545 -0
  87. package/server/chunks/vidstack-C5zFBMwg.js +386 -0
  88. package/server/chunks/vidstack-CBF7iUqu.js +22 -0
  89. package/server/chunks/vidstack-CEh38XpD.js +288 -0
  90. package/server/chunks/vidstack-CWR0J8Qz.js +1497 -0
  91. package/server/chunks/vidstack-CkMAeO-e.js +34 -0
  92. package/server/chunks/vidstack-Cm0qnRvu.js +11196 -0
  93. package/server/chunks/vidstack-CoGzBr_V.js +663 -0
  94. package/server/chunks/vidstack-CyFwkPiu.js +470 -0
  95. package/server/chunks/vidstack-D-hQD1eE.js +9 -0
  96. package/server/chunks/vidstack-D_bWd66h.js +2023 -0
  97. package/server/chunks/vidstack-Dm1xEU9Q.js +36 -0
  98. package/server/chunks/vidstack-DtQSvsQr.js +189 -0
  99. package/server/chunks/vidstack-jlaBqZq5.js +61 -0
  100. package/server/chunks/vidstack-krOAtKMi.js +34 -0
  101. package/server/chunks/vidstack-rWs25cS9.js +159 -0
  102. package/server/chunks/vidstack-uyCXITen.js +504 -0
  103. package/server/player/vidstack-default-components.js +14 -0
  104. package/server/player/vidstack-default-icons.js +88 -0
  105. package/server/player/vidstack-default-layout.js +14 -0
  106. package/server/player/vidstack-plyr-icons.js +62 -0
  107. package/server/player/vidstack-plyr-layout.js +636 -0
  108. package/server/player/vidstack-remotion.js +335 -0
  109. package/server/vidstack.js +648 -0
  110. package/tailwind.cjs +101 -0
  111. package/tailwind.d.cts +15 -0
  112. package/.templates/sandbox/document.css +0 -27
  113. package/.templates/sandbox/favicon-32x32.png +0 -0
  114. package/.templates/sandbox/index.html +0 -21
  115. package/.templates/sandbox/main.tsx +0 -12
  116. package/.templates/sandbox/player.css +0 -39
  117. package/.templates/sandbox/player.tsx +0 -121
  118. package/.templates/sandbox/tracks.ts +0 -23
  119. package/analyze.config.ts +0 -7
  120. package/build/build-icons.js +0 -62
  121. package/rollup.config.ts +0 -256
  122. package/src/components/announcer.tsx +0 -47
  123. package/src/components/layouts/default/audio-layout.tsx +0 -231
  124. package/src/components/layouts/default/context.ts +0 -28
  125. package/src/components/layouts/default/hooks.ts +0 -13
  126. package/src/components/layouts/default/icons.tsx +0 -225
  127. package/src/components/layouts/default/index.ts +0 -11
  128. package/src/components/layouts/default/media-layout.tsx +0 -259
  129. package/src/components/layouts/default/slots.tsx +0 -98
  130. package/src/components/layouts/default/ui/announcer.tsx +0 -22
  131. package/src/components/layouts/default/ui/buttons.tsx +0 -301
  132. package/src/components/layouts/default/ui/captions.tsx +0 -16
  133. package/src/components/layouts/default/ui/controls.tsx +0 -12
  134. package/src/components/layouts/default/ui/keyboard-display.tsx +0 -132
  135. package/src/components/layouts/default/ui/menus/accessibility-menu.tsx +0 -100
  136. package/src/components/layouts/default/ui/menus/audio-menu.tsx +0 -167
  137. package/src/components/layouts/default/ui/menus/captions-menu.tsx +0 -61
  138. package/src/components/layouts/default/ui/menus/chapters-menu.tsx +0 -132
  139. package/src/components/layouts/default/ui/menus/font-menu.tsx +0 -331
  140. package/src/components/layouts/default/ui/menus/items/menu-checkbox.tsx +0 -72
  141. package/src/components/layouts/default/ui/menus/items/menu-items.tsx +0 -135
  142. package/src/components/layouts/default/ui/menus/items/menu-slider.tsx +0 -92
  143. package/src/components/layouts/default/ui/menus/playback-menu.tsx +0 -232
  144. package/src/components/layouts/default/ui/menus/settings-menu.tsx +0 -114
  145. package/src/components/layouts/default/ui/menus/utils.ts +0 -12
  146. package/src/components/layouts/default/ui/sliders.tsx +0 -136
  147. package/src/components/layouts/default/ui/time.tsx +0 -73
  148. package/src/components/layouts/default/ui/title.tsx +0 -24
  149. package/src/components/layouts/default/ui/tooltip.tsx +0 -27
  150. package/src/components/layouts/default/ui.ts +0 -8
  151. package/src/components/layouts/default/video-layout.tsx +0 -344
  152. package/src/components/layouts/plyr/context.ts +0 -26
  153. package/src/components/layouts/plyr/icons/plyr-airplay.js +0 -1
  154. package/src/components/layouts/plyr/icons/plyr-captions-off.js +0 -1
  155. package/src/components/layouts/plyr/icons/plyr-captions-on.js +0 -1
  156. package/src/components/layouts/plyr/icons/plyr-download.js +0 -1
  157. package/src/components/layouts/plyr/icons/plyr-enter-fullscreen.js +0 -1
  158. package/src/components/layouts/plyr/icons/plyr-exit-fullscreen.js +0 -1
  159. package/src/components/layouts/plyr/icons/plyr-fast-forward.js +0 -1
  160. package/src/components/layouts/plyr/icons/plyr-muted.js +0 -1
  161. package/src/components/layouts/plyr/icons/plyr-pause.js +0 -1
  162. package/src/components/layouts/plyr/icons/plyr-pip.js +0 -1
  163. package/src/components/layouts/plyr/icons/plyr-play.js +0 -1
  164. package/src/components/layouts/plyr/icons/plyr-restart.js +0 -1
  165. package/src/components/layouts/plyr/icons/plyr-rewind.js +0 -1
  166. package/src/components/layouts/plyr/icons/plyr-settings.js +0 -1
  167. package/src/components/layouts/plyr/icons/plyr-volume.js +0 -1
  168. package/src/components/layouts/plyr/icons.tsx +0 -71
  169. package/src/components/layouts/plyr/index.ts +0 -11
  170. package/src/components/layouts/plyr/layout.tsx +0 -1024
  171. package/src/components/layouts/plyr/props.ts +0 -104
  172. package/src/components/layouts/plyr/slots.tsx +0 -52
  173. package/src/components/layouts/remotion-ui.ts +0 -13
  174. package/src/components/layouts/utils.ts +0 -17
  175. package/src/components/player-callbacks.ts +0 -67
  176. package/src/components/player.tsx +0 -67
  177. package/src/components/primitives/instances.ts +0 -92
  178. package/src/components/primitives/nodes.tsx +0 -58
  179. package/src/components/primitives/slot.tsx +0 -132
  180. package/src/components/provider.tsx +0 -187
  181. package/src/components/text-track.tsx +0 -106
  182. package/src/components/ui/buttons/airplay-button.tsx +0 -53
  183. package/src/components/ui/buttons/caption-button.tsx +0 -55
  184. package/src/components/ui/buttons/fullscreen-button.tsx +0 -55
  185. package/src/components/ui/buttons/google-cast-button.tsx +0 -53
  186. package/src/components/ui/buttons/live-button.tsx +0 -56
  187. package/src/components/ui/buttons/mute-button.tsx +0 -60
  188. package/src/components/ui/buttons/pip-button.tsx +0 -54
  189. package/src/components/ui/buttons/play-button.tsx +0 -53
  190. package/src/components/ui/buttons/seek-button.tsx +0 -55
  191. package/src/components/ui/buttons/toggle-button.tsx +0 -51
  192. package/src/components/ui/caption.tsx +0 -70
  193. package/src/components/ui/captions.tsx +0 -41
  194. package/src/components/ui/chapter-title.tsx +0 -40
  195. package/src/components/ui/controls.tsx +0 -90
  196. package/src/components/ui/gesture.tsx +0 -43
  197. package/src/components/ui/menu.tsx +0 -251
  198. package/src/components/ui/poster.tsx +0 -101
  199. package/src/components/ui/radio-group.tsx +0 -88
  200. package/src/components/ui/sliders/audio-gain-slider.tsx +0 -55
  201. package/src/components/ui/sliders/quality-slider.tsx +0 -54
  202. package/src/components/ui/sliders/slider-callbacks.ts +0 -14
  203. package/src/components/ui/sliders/slider-value.tsx +0 -13
  204. package/src/components/ui/sliders/slider.tsx +0 -254
  205. package/src/components/ui/sliders/speed-slider.tsx +0 -54
  206. package/src/components/ui/sliders/time-slider.tsx +0 -379
  207. package/src/components/ui/sliders/volume-slider.tsx +0 -55
  208. package/src/components/ui/spinner.tsx +0 -105
  209. package/src/components/ui/thumbnail.tsx +0 -82
  210. package/src/components/ui/time.tsx +0 -77
  211. package/src/components/ui/title.tsx +0 -32
  212. package/src/components/ui/tooltip.tsx +0 -135
  213. package/src/globals.d.ts +0 -3
  214. package/src/hooks/create-text-track.ts +0 -22
  215. package/src/hooks/options/use-audio-gain-options.ts +0 -75
  216. package/src/hooks/options/use-audio-options.ts +0 -71
  217. package/src/hooks/options/use-caption-options.ts +0 -95
  218. package/src/hooks/options/use-chapter-options.ts +0 -97
  219. package/src/hooks/options/use-playback-rate-options.ts +0 -75
  220. package/src/hooks/options/use-video-quality-options.ts +0 -123
  221. package/src/hooks/use-active-text-cues.ts +0 -28
  222. package/src/hooks/use-active-text-track.ts +0 -19
  223. package/src/hooks/use-chapter-title.ts +0 -12
  224. package/src/hooks/use-dom.ts +0 -121
  225. package/src/hooks/use-media-context.ts +0 -6
  226. package/src/hooks/use-media-player.ts +0 -19
  227. package/src/hooks/use-media-provider.ts +0 -31
  228. package/src/hooks/use-media-remote.ts +0 -37
  229. package/src/hooks/use-media-state.ts +0 -58
  230. package/src/hooks/use-signals.ts +0 -24
  231. package/src/hooks/use-slider-preview.ts +0 -126
  232. package/src/hooks/use-slider-state.ts +0 -63
  233. package/src/hooks/use-state.ts +0 -47
  234. package/src/hooks/use-text-cues.ts +0 -33
  235. package/src/hooks/use-thumbnails.ts +0 -69
  236. package/src/icon.ts +0 -37
  237. package/src/icons.ts +0 -754
  238. package/src/index.ts +0 -181
  239. package/src/providers/remotion/index.ts +0 -10
  240. package/src/providers/remotion/layout-engine.ts +0 -123
  241. package/src/providers/remotion/loader.ts +0 -35
  242. package/src/providers/remotion/playback-engine.ts +0 -142
  243. package/src/providers/remotion/provider.tsx +0 -514
  244. package/src/providers/remotion/type-check.ts +0 -13
  245. package/src/providers/remotion/types.ts +0 -94
  246. package/src/providers/remotion/ui/context.tsx +0 -120
  247. package/src/providers/remotion/ui/error-boundary.tsx +0 -57
  248. package/src/providers/remotion/ui/poster.tsx +0 -33
  249. package/src/providers/remotion/ui/slider-thumbnail.tsx +0 -41
  250. package/src/providers/remotion/ui/thumbnail.tsx +0 -166
  251. package/src/providers/remotion/validate.ts +0 -220
  252. package/src/source.ts +0 -5
  253. package/src/utils.ts +0 -27
  254. package/tsconfig.build.json +0 -10
  255. package/tsconfig.json +0 -11
  256. package/types/react/src/components/announcer.d.ts +0 -16
  257. package/types/react/src/components/layouts/default/audio-layout.d.ts +0 -27
  258. package/types/react/src/components/layouts/default/context.d.ts +0 -14
  259. package/types/react/src/components/layouts/default/hooks.d.ts +0 -2
  260. package/types/react/src/components/layouts/default/icons.d.ts +0 -95
  261. package/types/react/src/components/layouts/default/index.d.ts +0 -5
  262. package/types/react/src/components/layouts/default/media-layout.d.ts +0 -133
  263. package/types/react/src/components/layouts/default/slots.d.ts +0 -22
  264. package/types/react/src/components/layouts/default/ui/announcer.d.ts +0 -6
  265. package/types/react/src/components/layouts/default/ui/buttons.d.ts +0 -54
  266. package/types/react/src/components/layouts/default/ui/captions.d.ts +0 -6
  267. package/types/react/src/components/layouts/default/ui/controls.d.ts +0 -6
  268. package/types/react/src/components/layouts/default/ui/keyboard-display.d.ts +0 -8
  269. package/types/react/src/components/layouts/default/ui/menus/accessibility-menu.d.ts +0 -10
  270. package/types/react/src/components/layouts/default/ui/menus/audio-menu.d.ts +0 -10
  271. package/types/react/src/components/layouts/default/ui/menus/captions-menu.d.ts +0 -10
  272. package/types/react/src/components/layouts/default/ui/menus/chapters-menu.d.ts +0 -7
  273. package/types/react/src/components/layouts/default/ui/menus/font-menu.d.ts +0 -6
  274. package/types/react/src/components/layouts/default/ui/menus/items/menu-checkbox.d.ts +0 -13
  275. package/types/react/src/components/layouts/default/ui/menus/items/menu-items.d.ts +0 -49
  276. package/types/react/src/components/layouts/default/ui/menus/items/menu-slider.d.ts +0 -26
  277. package/types/react/src/components/layouts/default/ui/menus/playback-menu.d.ts +0 -10
  278. package/types/react/src/components/layouts/default/ui/menus/settings-menu.d.ts +0 -15
  279. package/types/react/src/components/layouts/default/ui/menus/utils.d.ts +0 -1
  280. package/types/react/src/components/layouts/default/ui/sliders.d.ts +0 -24
  281. package/types/react/src/components/layouts/default/ui/time.d.ts +0 -30
  282. package/types/react/src/components/layouts/default/ui/title.d.ts +0 -6
  283. package/types/react/src/components/layouts/default/ui/tooltip.d.ts +0 -12
  284. package/types/react/src/components/layouts/default/ui.d.ts +0 -8
  285. package/types/react/src/components/layouts/default/video-layout.d.ts +0 -47
  286. package/types/react/src/components/layouts/plyr/context.d.ts +0 -12
  287. package/types/react/src/components/layouts/plyr/icons/plyr-airplay.d.ts +0 -2
  288. package/types/react/src/components/layouts/plyr/icons/plyr-captions-off.d.ts +0 -2
  289. package/types/react/src/components/layouts/plyr/icons/plyr-captions-on.d.ts +0 -2
  290. package/types/react/src/components/layouts/plyr/icons/plyr-download.d.ts +0 -2
  291. package/types/react/src/components/layouts/plyr/icons/plyr-enter-fullscreen.d.ts +0 -2
  292. package/types/react/src/components/layouts/plyr/icons/plyr-exit-fullscreen.d.ts +0 -2
  293. package/types/react/src/components/layouts/plyr/icons/plyr-fast-forward.d.ts +0 -2
  294. package/types/react/src/components/layouts/plyr/icons/plyr-muted.d.ts +0 -2
  295. package/types/react/src/components/layouts/plyr/icons/plyr-pause.d.ts +0 -2
  296. package/types/react/src/components/layouts/plyr/icons/plyr-pip.d.ts +0 -2
  297. package/types/react/src/components/layouts/plyr/icons/plyr-play.d.ts +0 -2
  298. package/types/react/src/components/layouts/plyr/icons/plyr-restart.d.ts +0 -2
  299. package/types/react/src/components/layouts/plyr/icons/plyr-rewind.d.ts +0 -2
  300. package/types/react/src/components/layouts/plyr/icons/plyr-settings.d.ts +0 -2
  301. package/types/react/src/components/layouts/plyr/icons/plyr-volume.d.ts +0 -2
  302. package/types/react/src/components/layouts/plyr/icons.d.ts +0 -25
  303. package/types/react/src/components/layouts/plyr/index.d.ts +0 -6
  304. package/types/react/src/components/layouts/plyr/layout.d.ts +0 -17
  305. package/types/react/src/components/layouts/plyr/props.d.ts +0 -71
  306. package/types/react/src/components/layouts/plyr/slots.d.ts +0 -9
  307. package/types/react/src/components/layouts/remotion-ui.d.ts +0 -3
  308. package/types/react/src/components/layouts/utils.d.ts +0 -1
  309. package/types/react/src/components/player-callbacks.d.ts +0 -6
  310. package/types/react/src/components/player.d.ts +0 -32
  311. package/types/react/src/components/primitives/instances.d.ts +0 -83
  312. package/types/react/src/components/primitives/nodes.d.ts +0 -15
  313. package/types/react/src/components/primitives/slot.d.ts +0 -11
  314. package/types/react/src/components/provider.d.ts +0 -26
  315. package/types/react/src/components/text-track.d.ts +0 -100
  316. package/types/react/src/components/ui/buttons/airplay-button.d.ts +0 -22
  317. package/types/react/src/components/ui/buttons/caption-button.d.ts +0 -24
  318. package/types/react/src/components/ui/buttons/fullscreen-button.d.ts +0 -24
  319. package/types/react/src/components/ui/buttons/google-cast-button.d.ts +0 -22
  320. package/types/react/src/components/ui/buttons/live-button.d.ts +0 -26
  321. package/types/react/src/components/ui/buttons/mute-button.d.ts +0 -30
  322. package/types/react/src/components/ui/buttons/pip-button.d.ts +0 -24
  323. package/types/react/src/components/ui/buttons/play-button.d.ts +0 -23
  324. package/types/react/src/components/ui/buttons/seek-button.d.ts +0 -25
  325. package/types/react/src/components/ui/buttons/toggle-button.d.ts +0 -22
  326. package/types/react/src/components/ui/caption.d.ts +0 -11
  327. package/types/react/src/components/ui/captions.d.ts +0 -20
  328. package/types/react/src/components/ui/chapter-title.d.ts +0 -20
  329. package/types/react/src/components/ui/controls.d.ts +0 -40
  330. package/types/react/src/components/ui/gesture.d.ts +0 -20
  331. package/types/react/src/components/ui/menu.d.ts +0 -102
  332. package/types/react/src/components/ui/poster.d.ts +0 -25
  333. package/types/react/src/components/ui/radio-group.d.ts +0 -39
  334. package/types/react/src/components/ui/sliders/audio-gain-slider.d.ts +0 -29
  335. package/types/react/src/components/ui/sliders/quality-slider.d.ts +0 -28
  336. package/types/react/src/components/ui/sliders/slider-callbacks.d.ts +0 -6
  337. package/types/react/src/components/ui/sliders/slider-value.d.ts +0 -9
  338. package/types/react/src/components/ui/sliders/slider.d.ts +0 -134
  339. package/types/react/src/components/ui/sliders/speed-slider.d.ts +0 -28
  340. package/types/react/src/components/ui/sliders/time-slider.d.ts +0 -124
  341. package/types/react/src/components/ui/sliders/volume-slider.d.ts +0 -29
  342. package/types/react/src/components/ui/spinner.d.ts +0 -31
  343. package/types/react/src/components/ui/thumbnail.d.ts +0 -26
  344. package/types/react/src/components/ui/time.d.ts +0 -20
  345. package/types/react/src/components/ui/title.d.ts +0 -15
  346. package/types/react/src/components/ui/tooltip.d.ts +0 -63
  347. package/types/react/src/hooks/create-text-track.d.ts +0 -7
  348. package/types/react/src/hooks/options/use-audio-gain-options.d.ts +0 -22
  349. package/types/react/src/hooks/options/use-audio-options.d.ts +0 -17
  350. package/types/react/src/hooks/options/use-caption-options.d.ts +0 -24
  351. package/types/react/src/hooks/options/use-chapter-options.d.ts +0 -18
  352. package/types/react/src/hooks/options/use-playback-rate-options.d.ts +0 -22
  353. package/types/react/src/hooks/options/use-video-quality-options.d.ts +0 -35
  354. package/types/react/src/hooks/use-active-text-cues.d.ts +0 -6
  355. package/types/react/src/hooks/use-active-text-track.d.ts +0 -5
  356. package/types/react/src/hooks/use-chapter-title.d.ts +0 -4
  357. package/types/react/src/hooks/use-dom.d.ts +0 -9
  358. package/types/react/src/hooks/use-media-context.d.ts +0 -1
  359. package/types/react/src/hooks/use-media-player.d.ts +0 -7
  360. package/types/react/src/hooks/use-media-provider.d.ts +0 -7
  361. package/types/react/src/hooks/use-media-remote.d.ts +0 -12
  362. package/types/react/src/hooks/use-media-state.d.ts +0 -15
  363. package/types/react/src/hooks/use-signals.d.ts +0 -5
  364. package/types/react/src/hooks/use-slider-preview.d.ts +0 -27
  365. package/types/react/src/hooks/use-slider-state.d.ts +0 -16
  366. package/types/react/src/hooks/use-state.d.ts +0 -18
  367. package/types/react/src/hooks/use-text-cues.d.ts +0 -6
  368. package/types/react/src/hooks/use-thumbnails.d.ts +0 -16
  369. package/types/react/src/icon.d.ts +0 -17
  370. package/types/react/src/icons.d.ts +0 -215
  371. package/types/react/src/index.d.ts +0 -78
  372. package/types/react/src/providers/remotion/index.d.ts +0 -7
  373. package/types/react/src/providers/remotion/layout-engine.d.ts +0 -8
  374. package/types/react/src/providers/remotion/loader.d.ts +0 -9
  375. package/types/react/src/providers/remotion/playback-engine.d.ts +0 -11
  376. package/types/react/src/providers/remotion/provider.d.ts +0 -26
  377. package/types/react/src/providers/remotion/type-check.d.ts +0 -6
  378. package/types/react/src/providers/remotion/types.d.ts +0 -91
  379. package/types/react/src/providers/remotion/ui/context.d.ts +0 -17
  380. package/types/react/src/providers/remotion/ui/error-boundary.d.ts +0 -21
  381. package/types/react/src/providers/remotion/ui/poster.d.ts +0 -18
  382. package/types/react/src/providers/remotion/ui/slider-thumbnail.d.ts +0 -17
  383. package/types/react/src/providers/remotion/ui/thumbnail.d.ts +0 -32
  384. package/types/react/src/providers/remotion/validate.d.ts +0 -12
  385. package/types/react/src/source.d.ts +0 -3
  386. package/types/react/src/utils.d.ts +0 -3
  387. package/types/vidstack/src/core/api/src-types.d.ts +0 -50
  388. package/types/vidstack/src/utils/mime.d.ts +0 -15
  389. package/types/vidstack/src/utils/network.d.ts +0 -17
  390. package/types/vidstack/src/utils/support.d.ts +0 -72
  391. package/vite.config.ts +0 -23
  392. /package/{npm/analyze.json.d.ts → analyze.json.d.ts} +0 -0
@@ -1,32 +0,0 @@
1
- import * as React from 'react';
2
-
3
- import { useMediaState } from '../../hooks/use-media-state';
4
- import { Primitive, type PrimitivePropsWithRef } from '../primitives/nodes';
5
-
6
- /* -------------------------------------------------------------------------------------------------
7
- * Title
8
- * -----------------------------------------------------------------------------------------------*/
9
-
10
- export interface TitleProps extends PrimitivePropsWithRef<'span'> {}
11
-
12
- /**
13
- * This component is used to load and display the current media title.
14
- *
15
- * @docs {@link https://www.vidstack.io/docs/player/components/display/title}
16
- * @example
17
- * ```tsx
18
- * <Title />
19
- * ```
20
- */
21
- const Title = React.forwardRef<HTMLElement, TitleProps>(({ children, ...props }, forwardRef) => {
22
- const $title = useMediaState('title');
23
- return (
24
- <Primitive.span {...props} ref={forwardRef as React.Ref<any>}>
25
- {$title}
26
- {children}
27
- </Primitive.span>
28
- );
29
- });
30
-
31
- Title.displayName = 'Title';
32
- export { Title };
@@ -1,135 +0,0 @@
1
- import * as React from 'react';
2
-
3
- import {
4
- composeRefs,
5
- createReactComponent,
6
- type ReactElementProps,
7
- type ReactProps,
8
- } from 'maverick.js/react';
9
-
10
- import {
11
- TooltipContentInstance,
12
- TooltipInstance,
13
- TooltipTriggerInstance,
14
- } from '../primitives/instances';
15
- import { Primitive } from '../primitives/nodes';
16
-
17
- /* -------------------------------------------------------------------------------------------------
18
- * Tooltip
19
- * -----------------------------------------------------------------------------------------------*/
20
-
21
- const TooltipBridge = createReactComponent(TooltipInstance);
22
-
23
- export interface RootProps extends ReactProps<TooltipInstance> {
24
- asChild?: boolean;
25
- children: React.ReactNode;
26
- }
27
-
28
- /**
29
- * A contextual text bubble that displays a description for an element that appears on pointer
30
- * hover or keyboard focus.
31
- *
32
- * @docs {@link https://www.vidstack.io/docs/player/components/tooltip}
33
- * @see {@link https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/tooltip_role}
34
- * @example
35
- * ```tsx
36
- * <Tooltip.Root>
37
- * <Tooltip.Trigger></Tooltip.Trigger>
38
- * <Tooltip.Content></Tooltip.Content>
39
- * </Tooltip.Root>
40
- * ```
41
- */
42
- function Root({ children, ...props }: RootProps) {
43
- return <TooltipBridge {...props}>{children}</TooltipBridge>;
44
- }
45
-
46
- Root.displayName = 'Tooltip';
47
-
48
- /* -------------------------------------------------------------------------------------------------
49
- * TooltipTrigger
50
- * -----------------------------------------------------------------------------------------------*/
51
-
52
- const TriggerBridge = createReactComponent(TooltipTriggerInstance);
53
-
54
- export interface TriggerProps extends ReactElementProps<TooltipTriggerInstance> {
55
- asChild?: boolean;
56
- children?: React.ReactNode;
57
- ref?: React.Ref<HTMLButtonElement>;
58
- }
59
-
60
- /**
61
- * Wraps the element that will trigger showing/hiding the tooltip on hover or keyboard focus. The
62
- * tooltip content is positioned relative to this element.
63
- *
64
- * @docs {@link https://www.vidstack.io/docs/player/components/tooltip}
65
- * @example
66
- * ```tsx
67
- * <Tooltip.Root>
68
- * <Tooltip.Trigger></Tooltip.Trigger>
69
- * <Tooltip.Content></Tooltip.Content>
70
- * </Tooltip.Root>
71
- * ```
72
- */
73
- const Trigger = React.forwardRef<HTMLButtonElement, TriggerProps>(
74
- ({ children, ...props }, forwardRef) => {
75
- return (
76
- <TriggerBridge {...(props as Omit<TriggerProps, 'ref'>)}>
77
- {(props) => (
78
- <Primitive.button
79
- {...props}
80
- ref={composeRefs(props.ref as React.Ref<any>, forwardRef as React.Ref<any>)}
81
- >
82
- {children}
83
- </Primitive.button>
84
- )}
85
- </TriggerBridge>
86
- );
87
- },
88
- );
89
-
90
- Trigger.displayName = 'TooltipTrigger';
91
-
92
- /* -------------------------------------------------------------------------------------------------
93
- * TooltipContent
94
- * -----------------------------------------------------------------------------------------------*/
95
-
96
- const ContentBridge = createReactComponent(TooltipContentInstance);
97
-
98
- export interface ContentProps extends ReactElementProps<TooltipContentInstance> {
99
- asChild?: boolean;
100
- children?: React.ReactNode;
101
- ref?: React.Ref<HTMLElement>;
102
- }
103
-
104
- /**
105
- * This component contains the content that is visible when the tooltip trigger is interacted with.
106
- *
107
- * @docs {@link https://www.vidstack.io/docs/player/components/tooltip}
108
- * @example
109
- * ```tsx
110
- * <Tooltip.Root>
111
- * <Tooltip.Trigger></Tooltip.Trigger>
112
- * <Tooltip.Content></Tooltip.Content>
113
- * </Tooltip.Root>
114
- * ```
115
- */
116
- const Content = React.forwardRef<HTMLElement, ContentProps>(
117
- ({ children, ...props }, forwardRef) => {
118
- return (
119
- <ContentBridge {...(props as Omit<ContentProps, 'ref'>)}>
120
- {(props) => (
121
- <Primitive.div
122
- {...props}
123
- ref={composeRefs(props.ref as React.Ref<any>, forwardRef as React.Ref<any>)}
124
- >
125
- {children}
126
- </Primitive.div>
127
- )}
128
- </ContentBridge>
129
- );
130
- },
131
- );
132
-
133
- Content.displayName = 'TooltipContent';
134
-
135
- export { Root, Trigger, Content };
package/src/globals.d.ts DELETED
@@ -1,3 +0,0 @@
1
- /// <reference path="../../vidstack/src/globals.d.ts" />
2
-
3
- export {};
@@ -1,22 +0,0 @@
1
- import * as React from 'react';
2
-
3
- import { TextTrack, type TextTrackInit } from 'vidstack';
4
-
5
- import { useMediaContext } from './use-media-context';
6
-
7
- /**
8
- * Creates a new `TextTrack` object and adds it to the player.
9
- *
10
- * @docs {@link https://www.vidstack.io/docs/player/api/hooks/create-text-track}
11
- */
12
- export function createTextTrack(init: TextTrackInit) {
13
- const media = useMediaContext(),
14
- track = React.useMemo(() => new TextTrack(init), Object.values(init));
15
-
16
- React.useEffect(() => {
17
- media.textTracks.add(track);
18
- return () => void media.textTracks.remove(track);
19
- }, [track]);
20
-
21
- return track;
22
- }
@@ -1,75 +0,0 @@
1
- import * as React from 'react';
2
-
3
- import { useSignal } from 'maverick.js/react';
4
- import { DEFAULT_AUDIO_GAINS } from 'vidstack';
5
-
6
- import { useMediaContext } from '../use-media-context';
7
-
8
- /**
9
- * @docs {@link https://www.vidstack.io/docs/player/api/hooks/use-audio-gain-options}
10
- */
11
- export function useAudioGainOptions({
12
- gains = DEFAULT_AUDIO_GAINS,
13
- disabledLabel = 'disabled',
14
- }: UseAudioGainOptions = {}): AudioGainOptions {
15
- const media = useMediaContext(),
16
- { audioGain, canSetAudioGain } = media.$state;
17
-
18
- useSignal(audioGain);
19
- useSignal(canSetAudioGain);
20
-
21
- return React.useMemo(() => {
22
- const options = gains.map<AudioGainOption>((opt) => {
23
- const label =
24
- typeof opt === 'number'
25
- ? opt === 1 && disabledLabel
26
- ? disabledLabel
27
- : opt * 100 + '%'
28
- : opt.label,
29
- gain = typeof opt === 'number' ? opt : opt.gain;
30
- return {
31
- label,
32
- value: gain.toString(),
33
- gain,
34
- get selected() {
35
- return audioGain() === gain;
36
- },
37
- select(trigger) {
38
- media.remote.changeAudioGain(gain, trigger);
39
- },
40
- };
41
- });
42
-
43
- Object.defineProperty(options, 'disabled', {
44
- get() {
45
- return !canSetAudioGain() || !options.length;
46
- },
47
- });
48
-
49
- Object.defineProperty(options, 'selectedValue', {
50
- get() {
51
- return audioGain()?.toString();
52
- },
53
- });
54
-
55
- return options as AudioGainOptions;
56
- }, [gains]);
57
- }
58
-
59
- export interface UseAudioGainOptions {
60
- gains?: (number | { label: string; gain: number })[];
61
- disabledLabel?: string | null;
62
- }
63
-
64
- export type AudioGainOptions = AudioGainOption[] & {
65
- readonly disabled: boolean;
66
- readonly selectedValue: string | undefined;
67
- };
68
-
69
- export interface AudioGainOption {
70
- readonly label: string;
71
- readonly value: string;
72
- readonly gain: number;
73
- readonly selected: boolean;
74
- select(trigger?: Event): void;
75
- }
@@ -1,71 +0,0 @@
1
- import * as React from 'react';
2
-
3
- import { useSignal } from 'maverick.js/react';
4
- import { type AudioTrack } from 'vidstack';
5
-
6
- import { useMediaContext } from '../use-media-context';
7
-
8
- /**
9
- * @docs {@link https://www.vidstack.io/docs/player/api/hooks/use-audio-options}
10
- */
11
- export function useAudioOptions(): AudioOptions {
12
- const media = useMediaContext(),
13
- { audioTracks, audioTrack } = media.$state,
14
- $audioTracks = useSignal(audioTracks);
15
-
16
- useSignal(audioTrack);
17
-
18
- return React.useMemo(() => {
19
- const options = $audioTracks.map<AudioOption>((track) => ({
20
- track,
21
- label: track.label,
22
- value: getTrackValue(track),
23
- get selected() {
24
- return audioTrack() === track;
25
- },
26
- select(trigger) {
27
- const index = audioTracks().indexOf(track);
28
- if (index >= 0) media.remote.changeAudioTrack(index, trigger);
29
- },
30
- }));
31
-
32
- Object.defineProperty(options, 'disabled', {
33
- get() {
34
- return options.length <= 1;
35
- },
36
- });
37
-
38
- Object.defineProperty(options, 'selectedTrack', {
39
- get() {
40
- return audioTrack();
41
- },
42
- });
43
-
44
- Object.defineProperty(options, 'selectedValue', {
45
- get() {
46
- const track = audioTrack();
47
- return track ? getTrackValue(track) : undefined;
48
- },
49
- });
50
-
51
- return options as AudioOptions;
52
- }, [$audioTracks]);
53
- }
54
-
55
- export type AudioOptions = AudioOption[] & {
56
- readonly disabled: boolean;
57
- readonly selectedTrack: AudioTrack | null;
58
- readonly selectedValue: string | undefined;
59
- };
60
-
61
- export interface AudioOption {
62
- readonly track: AudioTrack;
63
- readonly label: string;
64
- readonly value: string;
65
- readonly selected: boolean;
66
- select(trigger?: Event): void;
67
- }
68
-
69
- function getTrackValue(track: AudioTrack) {
70
- return track.label.toLowerCase();
71
- }
@@ -1,95 +0,0 @@
1
- import * as React from 'react';
2
-
3
- import { useSignal } from 'maverick.js/react';
4
- import { isString } from 'maverick.js/std';
5
- import { isTrackCaptionKind, type TextTrack } from 'vidstack';
6
-
7
- import { useMediaContext } from '../use-media-context';
8
-
9
- /**
10
- * @docs {@link https://www.vidstack.io/docs/player/api/hooks/use-caption-options}
11
- */
12
- export function useCaptionOptions({ off = true }: UseCaptionOptions = {}): CaptionOptions {
13
- const media = useMediaContext(),
14
- { textTracks, textTrack } = media.$state,
15
- $textTracks = useSignal(textTracks);
16
-
17
- useSignal(textTrack);
18
-
19
- return React.useMemo(() => {
20
- const captionTracks = $textTracks.filter(isTrackCaptionKind),
21
- options = captionTracks.map<CaptionOption>((track) => ({
22
- track,
23
- label: track.label,
24
- value: getTrackValue(track),
25
- get selected() {
26
- return textTrack() === track;
27
- },
28
- select(trigger) {
29
- const index = textTracks().indexOf(track);
30
- if (index >= 0) media.remote.changeTextTrackMode(index, 'showing', trigger);
31
- },
32
- }));
33
-
34
- if (off) {
35
- options.unshift({
36
- track: null,
37
- label: isString(off) ? off : 'Off',
38
- value: 'off',
39
- get selected() {
40
- return !textTrack();
41
- },
42
- select(trigger) {
43
- media.remote.toggleCaptions(trigger);
44
- },
45
- });
46
- }
47
-
48
- Object.defineProperty(options, 'disabled', {
49
- get() {
50
- return !captionTracks.length;
51
- },
52
- });
53
-
54
- Object.defineProperty(options, 'selectedTrack', {
55
- get() {
56
- return textTrack();
57
- },
58
- });
59
-
60
- Object.defineProperty(options, 'selectedValue', {
61
- get() {
62
- const track = textTrack();
63
- return track ? getTrackValue(track) : 'off';
64
- },
65
- });
66
-
67
- return options as CaptionOptions;
68
- }, [$textTracks]);
69
- }
70
-
71
- export interface UseCaptionOptions {
72
- /**
73
- * Whether an option should be included for turning off all captions. A string can be provided
74
- * to specify the label.
75
- */
76
- off?: boolean | string;
77
- }
78
-
79
- export type CaptionOptions = CaptionOption[] & {
80
- readonly disabled: boolean;
81
- readonly selectedTrack: TextTrack | null;
82
- readonly selectedValue: string;
83
- };
84
-
85
- export interface CaptionOption {
86
- readonly track: TextTrack | null;
87
- readonly label: string;
88
- readonly value: string;
89
- readonly selected: boolean;
90
- select(trigger?: Event): void;
91
- }
92
-
93
- function getTrackValue(track: TextTrack) {
94
- return track.id + ':' + track.kind + '-' + track.label.toLowerCase();
95
- }
@@ -1,97 +0,0 @@
1
- import * as React from 'react';
2
-
3
- import { effect, type StopEffect } from 'maverick.js';
4
- import { useSignal } from 'maverick.js/react';
5
- import type { VTTCue } from 'media-captions';
6
- import { formatSpokenTime, formatTime } from 'vidstack';
7
-
8
- import { useActiveTextCues } from '../use-active-text-cues';
9
- import { useActiveTextTrack } from '../use-active-text-track';
10
- import { useMediaContext } from '../use-media-context';
11
- import { useTextCues } from '../use-text-cues';
12
-
13
- /**
14
- * @docs {@link https://www.vidstack.io/docs/player/api/hooks/use-chapter-options}
15
- */
16
- export function useChapterOptions(): ChapterOptions {
17
- const media = useMediaContext(),
18
- track = useActiveTextTrack('chapters'),
19
- cues = useTextCues(track),
20
- $startTime = useSignal(media.$state.seekableStart),
21
- $endTime = useSignal(media.$state.seekableEnd);
22
-
23
- useActiveTextCues(track);
24
-
25
- return React.useMemo(() => {
26
- const options = track
27
- ? cues
28
- .filter((cue) => cue.startTime <= $endTime && cue.endTime >= $startTime)
29
- .map<ChapterOption>((cue, i) => {
30
- let currentRef: HTMLElement | null = null,
31
- stopProgressEffect: StopEffect | undefined;
32
- return {
33
- cue,
34
- label: cue.text,
35
- value: i.toString(),
36
- startTimeText: formatTime(Math.max(0, cue.startTime - $startTime)),
37
- durationText: formatSpokenTime(
38
- Math.min($endTime, cue.endTime) - Math.max($startTime, cue.startTime),
39
- ),
40
- get selected() {
41
- return cue === track.activeCues[0];
42
- },
43
- setProgressVar(ref) {
44
- if (!ref || cue !== track.activeCues[0]) {
45
- stopProgressEffect?.();
46
- stopProgressEffect = undefined;
47
- ref?.style.setProperty('--progress', '0%');
48
- currentRef = null;
49
- return;
50
- }
51
-
52
- if (currentRef === ref) return;
53
- currentRef = ref;
54
-
55
- stopProgressEffect?.();
56
- stopProgressEffect = effect(() => {
57
- const { realCurrentTime } = media.$state,
58
- time = realCurrentTime(),
59
- cueStartTime = Math.max($startTime, cue.startTime),
60
- duration = Math.min($endTime, cue.endTime) - cueStartTime,
61
- progress = (Math.max(0, time - cueStartTime) / duration) * 100;
62
-
63
- ref.style.setProperty('--progress', progress.toFixed(3) + '%');
64
- });
65
- },
66
- select(trigger) {
67
- media.remote.seek(cue.startTime - $startTime, trigger);
68
- },
69
- };
70
- })
71
- : [];
72
-
73
- Object.defineProperty(options, 'selectedValue', {
74
- get() {
75
- const index = options.findIndex((option) => option.selected);
76
- return (index >= 0 ? index : 0).toString();
77
- },
78
- });
79
-
80
- return options as ChapterOptions;
81
- }, [cues, $startTime, $endTime]);
82
- }
83
-
84
- export type ChapterOptions = ChapterOption[] & {
85
- readonly selectedValue: string | undefined;
86
- };
87
-
88
- export interface ChapterOption {
89
- readonly cue: VTTCue;
90
- readonly label: string;
91
- readonly value: string;
92
- readonly selected: boolean;
93
- readonly startTimeText: string;
94
- readonly durationText: string;
95
- select(trigger?: Event): void;
96
- setProgressVar(ref: HTMLElement | null): void;
97
- }
@@ -1,75 +0,0 @@
1
- import * as React from 'react';
2
-
3
- import { useSignal } from 'maverick.js/react';
4
- import { DEFAULT_PLAYBACK_RATES } from 'vidstack';
5
-
6
- import { useMediaContext } from '../use-media-context';
7
-
8
- /**
9
- * @docs {@link https://www.vidstack.io/docs/player/api/hooks/use-playback-rate-options}
10
- */
11
- export function usePlaybackRateOptions({
12
- rates = DEFAULT_PLAYBACK_RATES,
13
- normalLabel = 'Normal',
14
- }: UsePlaybackRateOptions = {}): PlaybackRateOptions {
15
- const media = useMediaContext(),
16
- { playbackRate, canSetPlaybackRate } = media.$state;
17
-
18
- useSignal(playbackRate);
19
- useSignal(canSetPlaybackRate);
20
-
21
- return React.useMemo(() => {
22
- const options = rates.map<PlaybackRateOption>((opt) => {
23
- const label =
24
- typeof opt === 'number'
25
- ? opt === 1 && normalLabel
26
- ? normalLabel
27
- : opt + 'x'
28
- : opt.label,
29
- rate = typeof opt === 'number' ? opt : opt.rate;
30
- return {
31
- label,
32
- value: rate.toString(),
33
- rate,
34
- get selected() {
35
- return playbackRate() === rate;
36
- },
37
- select(trigger) {
38
- media.remote.changePlaybackRate(rate, trigger);
39
- },
40
- };
41
- });
42
-
43
- Object.defineProperty(options, 'disabled', {
44
- get() {
45
- return !canSetPlaybackRate() || !options.length;
46
- },
47
- });
48
-
49
- Object.defineProperty(options, 'selectedValue', {
50
- get() {
51
- return playbackRate().toString();
52
- },
53
- });
54
-
55
- return options as PlaybackRateOptions;
56
- }, [rates]);
57
- }
58
-
59
- export interface UsePlaybackRateOptions {
60
- rates?: (number | { label: string; rate: number })[];
61
- normalLabel?: string | null;
62
- }
63
-
64
- export type PlaybackRateOptions = PlaybackRateOption[] & {
65
- readonly disabled: boolean;
66
- readonly selectedValue: string | undefined;
67
- };
68
-
69
- export interface PlaybackRateOption {
70
- readonly label: string;
71
- readonly value: string;
72
- readonly rate: number;
73
- readonly selected: boolean;
74
- select(trigger?: Event): void;
75
- }