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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (684) hide show
  1. package/dist/default/_virtual/_rolldown/runtime.js +6 -11
  2. package/dist/default/icons/dist/react/default/captions-off.js +1 -2
  3. package/dist/default/icons/dist/react/default/captions-off.js.map +1 -1
  4. package/dist/default/icons/dist/react/default/captions-on.js +1 -2
  5. package/dist/default/icons/dist/react/default/captions-on.js.map +1 -1
  6. package/dist/default/icons/dist/react/default/fullscreen-enter.js +1 -2
  7. package/dist/default/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  8. package/dist/default/icons/dist/react/default/fullscreen-exit.js +1 -2
  9. package/dist/default/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  10. package/dist/default/icons/dist/react/default/pause.js +1 -2
  11. package/dist/default/icons/dist/react/default/pause.js.map +1 -1
  12. package/dist/default/icons/dist/react/default/pip-enter.js +1 -2
  13. package/dist/default/icons/dist/react/default/pip-enter.js.map +1 -1
  14. package/dist/default/icons/dist/react/default/pip-exit.js +1 -2
  15. package/dist/default/icons/dist/react/default/pip-exit.js.map +1 -1
  16. package/dist/default/icons/dist/react/default/play.js +1 -2
  17. package/dist/default/icons/dist/react/default/play.js.map +1 -1
  18. package/dist/default/icons/dist/react/default/restart.js +1 -2
  19. package/dist/default/icons/dist/react/default/restart.js.map +1 -1
  20. package/dist/default/icons/dist/react/default/seek.js +1 -2
  21. package/dist/default/icons/dist/react/default/seek.js.map +1 -1
  22. package/dist/default/icons/dist/react/default/spinner.js +1 -2
  23. package/dist/default/icons/dist/react/default/spinner.js.map +1 -1
  24. package/dist/default/icons/dist/react/default/volume-high.js +1 -2
  25. package/dist/default/icons/dist/react/default/volume-high.js.map +1 -1
  26. package/dist/default/icons/dist/react/default/volume-low.js +1 -2
  27. package/dist/default/icons/dist/react/default/volume-low.js.map +1 -1
  28. package/dist/default/icons/dist/react/default/volume-off.js +1 -2
  29. package/dist/default/icons/dist/react/default/volume-off.js.map +1 -1
  30. package/dist/default/icons/dist/react/minimal/captions-off.js +1 -2
  31. package/dist/default/icons/dist/react/minimal/captions-off.js.map +1 -1
  32. package/dist/default/icons/dist/react/minimal/captions-on.js +1 -2
  33. package/dist/default/icons/dist/react/minimal/captions-on.js.map +1 -1
  34. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js +1 -2
  35. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  36. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js +1 -2
  37. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  38. package/dist/default/icons/dist/react/minimal/pause.js +1 -2
  39. package/dist/default/icons/dist/react/minimal/pause.js.map +1 -1
  40. package/dist/default/icons/dist/react/minimal/pip-enter.js +1 -2
  41. package/dist/default/icons/dist/react/minimal/pip-enter.js.map +1 -1
  42. package/dist/default/icons/dist/react/minimal/pip-exit.js +1 -2
  43. package/dist/default/icons/dist/react/minimal/pip-exit.js.map +1 -1
  44. package/dist/default/icons/dist/react/minimal/play.js +1 -2
  45. package/dist/default/icons/dist/react/minimal/play.js.map +1 -1
  46. package/dist/default/icons/dist/react/minimal/restart.js +1 -2
  47. package/dist/default/icons/dist/react/minimal/restart.js.map +1 -1
  48. package/dist/default/icons/dist/react/minimal/seek.js +1 -2
  49. package/dist/default/icons/dist/react/minimal/seek.js.map +1 -1
  50. package/dist/default/icons/dist/react/minimal/spinner.js +1 -2
  51. package/dist/default/icons/dist/react/minimal/spinner.js.map +1 -1
  52. package/dist/default/icons/dist/react/minimal/volume-high.js +1 -2
  53. package/dist/default/icons/dist/react/minimal/volume-high.js.map +1 -1
  54. package/dist/default/icons/dist/react/minimal/volume-low.js +1 -2
  55. package/dist/default/icons/dist/react/minimal/volume-low.js.map +1 -1
  56. package/dist/default/icons/dist/react/minimal/volume-off.js +1 -2
  57. package/dist/default/icons/dist/react/minimal/volume-off.js.map +1 -1
  58. package/dist/default/index.js +11 -12
  59. package/dist/default/media/audio.js +2 -4
  60. package/dist/default/media/audio.js.map +1 -1
  61. package/dist/default/media/background-video/index.js +2 -4
  62. package/dist/default/media/background-video/index.js.map +1 -1
  63. package/dist/default/media/dash-video/index.js +3 -4
  64. package/dist/default/media/dash-video/index.js.map +1 -1
  65. package/dist/default/media/hls-video/index.js +3 -4
  66. package/dist/default/media/hls-video/index.js.map +1 -1
  67. package/dist/default/media/mux-video/index.js +20 -0
  68. package/dist/default/media/mux-video/index.js.map +1 -0
  69. package/dist/default/media/native-hls-video/index.js +20 -0
  70. package/dist/default/media/native-hls-video/index.js.map +1 -0
  71. package/dist/default/media/simple-hls-video/index.js +3 -3
  72. package/dist/default/media/simple-hls-video/index.js.map +1 -1
  73. package/dist/default/media/video.js +2 -4
  74. package/dist/default/media/video.js.map +1 -1
  75. package/dist/default/player/context.js +2 -4
  76. package/dist/default/player/context.js.map +1 -1
  77. package/dist/default/player/create-player.js +2 -4
  78. package/dist/default/player/create-player.js.map +1 -1
  79. package/dist/default/presets/audio/index.js +1 -2
  80. package/dist/default/presets/audio/minimal-skin.css +81 -59
  81. package/dist/default/presets/audio/minimal-skin.js +29 -17
  82. package/dist/default/presets/audio/minimal-skin.js.map +1 -1
  83. package/dist/default/presets/audio/minimal-skin.tailwind.js +25 -15
  84. package/dist/default/presets/audio/minimal-skin.tailwind.js.map +1 -1
  85. package/dist/default/presets/audio/skin.css +54 -42
  86. package/dist/default/presets/audio/skin.js +102 -84
  87. package/dist/default/presets/audio/skin.js.map +1 -1
  88. package/dist/default/presets/audio/skin.tailwind.js +98 -81
  89. package/dist/default/presets/audio/skin.tailwind.js.map +1 -1
  90. package/dist/default/presets/background/index.js +1 -2
  91. package/dist/default/presets/background/skin.js +1 -2
  92. package/dist/default/presets/background/skin.js.map +1 -1
  93. package/dist/default/presets/video/index.js +1 -2
  94. package/dist/default/presets/video/minimal-skin.css +156 -75
  95. package/dist/default/presets/video/minimal-skin.js +30 -18
  96. package/dist/default/presets/video/minimal-skin.js.map +1 -1
  97. package/dist/default/presets/video/minimal-skin.tailwind.js +29 -21
  98. package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -1
  99. package/dist/default/presets/video/skin.css +114 -58
  100. package/dist/default/presets/video/skin.js +138 -117
  101. package/dist/default/presets/video/skin.js.map +1 -1
  102. package/dist/default/presets/video/skin.tailwind.js +134 -116
  103. package/dist/default/presets/video/skin.tailwind.js.map +1 -1
  104. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +12 -16
  105. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  106. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  107. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  108. package/dist/default/skins/dist/default/default/tailwind/components/button-group.js +7 -0
  109. package/dist/default/skins/dist/default/default/tailwind/components/button-group.js.map +1 -0
  110. package/dist/default/skins/dist/default/default/tailwind/components/button.js +3 -4
  111. package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  112. package/dist/default/skins/dist/default/default/tailwind/components/controls.js +2 -3
  113. package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  114. package/dist/default/skins/dist/default/default/tailwind/components/error.js +2 -3
  115. package/dist/default/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  116. package/dist/default/skins/dist/default/default/tailwind/components/icon.js +1 -2
  117. package/dist/default/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  118. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js +2 -3
  119. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
  120. package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js +1 -1
  121. package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -1
  122. package/dist/default/skins/dist/default/default/tailwind/components/popup.js +4 -5
  123. package/dist/default/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  124. package/dist/default/skins/dist/default/default/tailwind/components/poster.js +1 -2
  125. package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  126. package/dist/default/skins/dist/default/default/tailwind/components/preview.js +2 -3
  127. package/dist/default/skins/dist/default/default/tailwind/components/preview.js.map +1 -1
  128. package/dist/default/skins/dist/default/default/tailwind/components/root.js +2 -3
  129. package/dist/default/skins/dist/default/default/tailwind/components/root.js.map +1 -1
  130. package/dist/default/skins/dist/default/default/tailwind/components/seek.js +1 -2
  131. package/dist/default/skins/dist/default/default/tailwind/components/seek.js.map +1 -1
  132. package/dist/default/skins/dist/default/default/tailwind/components/slider.js +2 -3
  133. package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  134. package/dist/default/skins/dist/default/default/tailwind/components/surface.js +2 -3
  135. package/dist/default/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  136. package/dist/default/skins/dist/default/default/tailwind/components/time.js +1 -1
  137. package/dist/default/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  138. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +24 -19
  139. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  140. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +13 -14
  141. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  142. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  143. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  144. package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js +1 -2
  145. package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
  146. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +2 -3
  147. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  148. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +2 -3
  149. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  150. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js +2 -3
  151. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
  152. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js +1 -2
  153. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  154. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js +2 -3
  155. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
  156. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js +2 -3
  157. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  158. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +1 -2
  159. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  160. package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js +2 -3
  161. package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -1
  162. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js +2 -3
  163. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
  164. package/dist/default/skins/dist/default/minimal/tailwind/components/seek.js +1 -2
  165. package/dist/default/skins/dist/default/minimal/tailwind/components/seek.js.map +1 -1
  166. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +2 -3
  167. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  168. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +5 -6
  169. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  170. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +21 -16
  171. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  172. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +1 -1
  173. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  174. package/dist/default/ui/alert-dialog/alert-dialog-close.js +2 -4
  175. package/dist/default/ui/alert-dialog/alert-dialog-close.js.map +1 -1
  176. package/dist/default/ui/alert-dialog/alert-dialog-description.js +2 -4
  177. package/dist/default/ui/alert-dialog/alert-dialog-description.js.map +1 -1
  178. package/dist/default/ui/alert-dialog/alert-dialog-popup.js +2 -4
  179. package/dist/default/ui/alert-dialog/alert-dialog-popup.js.map +1 -1
  180. package/dist/default/ui/alert-dialog/alert-dialog-root.js +4 -6
  181. package/dist/default/ui/alert-dialog/alert-dialog-root.js.map +1 -1
  182. package/dist/default/ui/alert-dialog/alert-dialog-title.js +2 -4
  183. package/dist/default/ui/alert-dialog/alert-dialog-title.js.map +1 -1
  184. package/dist/default/ui/alert-dialog/context.js +2 -4
  185. package/dist/default/ui/alert-dialog/context.js.map +1 -1
  186. package/dist/default/ui/alert-dialog/index.js +1 -2
  187. package/dist/default/ui/alert-dialog/index.parts.js +1 -2
  188. package/dist/default/ui/buffering-indicator/buffering-indicator.js +2 -4
  189. package/dist/default/ui/buffering-indicator/buffering-indicator.js.map +1 -1
  190. package/dist/default/ui/buffering-indicator/index.js +1 -2
  191. package/dist/default/ui/captions-button/captions-button.js +2 -4
  192. package/dist/default/ui/captions-button/captions-button.js.map +1 -1
  193. package/dist/default/ui/captions-button/index.js +1 -2
  194. package/dist/default/ui/controls/context.js +2 -4
  195. package/dist/default/ui/controls/context.js.map +1 -1
  196. package/dist/default/ui/controls/controls-group.js +2 -4
  197. package/dist/default/ui/controls/controls-group.js.map +1 -1
  198. package/dist/default/ui/controls/controls-root.js +2 -4
  199. package/dist/default/ui/controls/controls-root.js.map +1 -1
  200. package/dist/default/ui/controls/index.js +1 -2
  201. package/dist/default/ui/controls/index.parts.js +1 -2
  202. package/dist/default/ui/create-context-part.js +2 -4
  203. package/dist/default/ui/create-context-part.js.map +1 -1
  204. package/dist/default/ui/create-media-button.js +2 -4
  205. package/dist/default/ui/create-media-button.js.map +1 -1
  206. package/dist/default/ui/error-dialog/context.js +14 -0
  207. package/dist/default/ui/error-dialog/context.js.map +1 -0
  208. package/dist/default/ui/error-dialog/error-dialog-description.js +28 -0
  209. package/dist/default/ui/error-dialog/error-dialog-description.js.map +1 -0
  210. package/dist/default/ui/error-dialog/error-dialog-root.js +57 -0
  211. package/dist/default/ui/error-dialog/error-dialog-root.js.map +1 -0
  212. package/dist/default/ui/error-dialog/index.js +3 -0
  213. package/dist/default/ui/error-dialog/index.parts.js +18 -0
  214. package/dist/default/ui/error-dialog/index.parts.js.map +1 -0
  215. package/dist/default/ui/fullscreen-button/fullscreen-button.js +2 -4
  216. package/dist/default/ui/fullscreen-button/fullscreen-button.js.map +1 -1
  217. package/dist/default/ui/fullscreen-button/index.js +1 -2
  218. package/dist/default/ui/hooks/use-button.js +2 -4
  219. package/dist/default/ui/hooks/use-button.js.map +1 -1
  220. package/dist/default/ui/hooks/use-slider.js +2 -4
  221. package/dist/default/ui/hooks/use-slider.js.map +1 -1
  222. package/dist/default/ui/mute-button/index.js +1 -2
  223. package/dist/default/ui/mute-button/mute-button.js +2 -4
  224. package/dist/default/ui/mute-button/mute-button.js.map +1 -1
  225. package/dist/default/ui/pip-button/index.js +1 -2
  226. package/dist/default/ui/pip-button/pip-button.js +2 -4
  227. package/dist/default/ui/pip-button/pip-button.js.map +1 -1
  228. package/dist/default/ui/play-button/index.js +1 -2
  229. package/dist/default/ui/play-button/play-button.js +2 -4
  230. package/dist/default/ui/play-button/play-button.js.map +1 -1
  231. package/dist/default/ui/playback-rate-button/index.js +1 -2
  232. package/dist/default/ui/playback-rate-button/playback-rate-button.js +2 -4
  233. package/dist/default/ui/playback-rate-button/playback-rate-button.js.map +1 -1
  234. package/dist/default/ui/popover/context.js +2 -4
  235. package/dist/default/ui/popover/context.js.map +1 -1
  236. package/dist/default/ui/popover/index.js +1 -2
  237. package/dist/default/ui/popover/index.parts.js +1 -2
  238. package/dist/default/ui/popover/popover-arrow.js +2 -4
  239. package/dist/default/ui/popover/popover-arrow.js.map +1 -1
  240. package/dist/default/ui/popover/popover-popup.js +2 -4
  241. package/dist/default/ui/popover/popover-popup.js.map +1 -1
  242. package/dist/default/ui/popover/popover-root.js +3 -5
  243. package/dist/default/ui/popover/popover-root.js.map +1 -1
  244. package/dist/default/ui/popover/popover-trigger.js +2 -4
  245. package/dist/default/ui/popover/popover-trigger.js.map +1 -1
  246. package/dist/default/ui/poster/index.js +1 -2
  247. package/dist/default/ui/poster/poster.js +2 -4
  248. package/dist/default/ui/poster/poster.js.map +1 -1
  249. package/dist/default/ui/seek-button/index.js +1 -2
  250. package/dist/default/ui/seek-button/seek-button.js +2 -4
  251. package/dist/default/ui/seek-button/seek-button.js.map +1 -1
  252. package/dist/default/ui/slider/context.js +2 -4
  253. package/dist/default/ui/slider/context.js.map +1 -1
  254. package/dist/default/ui/slider/index.js +1 -2
  255. package/dist/default/ui/slider/index.parts.js +1 -2
  256. package/dist/default/ui/slider/slider-buffer.js +2 -4
  257. package/dist/default/ui/slider/slider-buffer.js.map +1 -1
  258. package/dist/default/ui/slider/slider-fill.js +2 -4
  259. package/dist/default/ui/slider/slider-fill.js.map +1 -1
  260. package/dist/default/ui/slider/slider-preview.js +2 -4
  261. package/dist/default/ui/slider/slider-preview.js.map +1 -1
  262. package/dist/default/ui/slider/slider-root.js +2 -4
  263. package/dist/default/ui/slider/slider-root.js.map +1 -1
  264. package/dist/default/ui/slider/slider-thumb.js +2 -4
  265. package/dist/default/ui/slider/slider-thumb.js.map +1 -1
  266. package/dist/default/ui/slider/slider-thumbnail.js +2 -4
  267. package/dist/default/ui/slider/slider-thumbnail.js.map +1 -1
  268. package/dist/default/ui/slider/slider-track.js +2 -4
  269. package/dist/default/ui/slider/slider-track.js.map +1 -1
  270. package/dist/default/ui/slider/slider-value.js +2 -4
  271. package/dist/default/ui/slider/slider-value.js.map +1 -1
  272. package/dist/default/ui/thumbnail/index.js +1 -2
  273. package/dist/default/ui/thumbnail/thumbnail.js +2 -4
  274. package/dist/default/ui/thumbnail/thumbnail.js.map +1 -1
  275. package/dist/default/ui/time/index.js +1 -2
  276. package/dist/default/ui/time/index.parts.js +1 -2
  277. package/dist/default/ui/time/time-group.js +2 -4
  278. package/dist/default/ui/time/time-group.js.map +1 -1
  279. package/dist/default/ui/time/time-separator.js +2 -4
  280. package/dist/default/ui/time/time-separator.js.map +1 -1
  281. package/dist/default/ui/time/time-value.js +2 -4
  282. package/dist/default/ui/time/time-value.js.map +1 -1
  283. package/dist/default/ui/time-slider/index.js +1 -2
  284. package/dist/default/ui/time-slider/index.parts.js +1 -2
  285. package/dist/default/ui/time-slider/time-slider-root.js +2 -4
  286. package/dist/default/ui/time-slider/time-slider-root.js.map +1 -1
  287. package/dist/default/ui/tooltip/context.js +2 -4
  288. package/dist/default/ui/tooltip/context.js.map +1 -1
  289. package/dist/default/ui/tooltip/group-context.js +2 -4
  290. package/dist/default/ui/tooltip/group-context.js.map +1 -1
  291. package/dist/default/ui/tooltip/index.js +1 -2
  292. package/dist/default/ui/tooltip/index.parts.js +1 -2
  293. package/dist/default/ui/tooltip/tooltip-arrow.js +2 -4
  294. package/dist/default/ui/tooltip/tooltip-arrow.js.map +1 -1
  295. package/dist/default/ui/tooltip/tooltip-popup.js +2 -4
  296. package/dist/default/ui/tooltip/tooltip-popup.js.map +1 -1
  297. package/dist/default/ui/tooltip/tooltip-provider.js +2 -4
  298. package/dist/default/ui/tooltip/tooltip-provider.js.map +1 -1
  299. package/dist/default/ui/tooltip/tooltip-root.js +3 -5
  300. package/dist/default/ui/tooltip/tooltip-root.js.map +1 -1
  301. package/dist/default/ui/tooltip/tooltip-trigger.js +2 -4
  302. package/dist/default/ui/tooltip/tooltip-trigger.js.map +1 -1
  303. package/dist/default/ui/volume-slider/index.js +1 -2
  304. package/dist/default/ui/volume-slider/index.parts.js +1 -2
  305. package/dist/default/ui/volume-slider/volume-slider-root.js +2 -4
  306. package/dist/default/ui/volume-slider/volume-slider-root.js.map +1 -1
  307. package/dist/default/utils/attach-media-element.js +1 -1
  308. package/dist/default/utils/media-props.js +14 -6
  309. package/dist/default/utils/media-props.js.map +1 -1
  310. package/dist/default/utils/merge-props.js +2 -3
  311. package/dist/default/utils/merge-props.js.map +1 -1
  312. package/dist/default/utils/use-composed-refs.js +2 -4
  313. package/dist/default/utils/use-composed-refs.js.map +1 -1
  314. package/dist/default/utils/use-destroy.js +2 -4
  315. package/dist/default/utils/use-destroy.js.map +1 -1
  316. package/dist/default/utils/use-force-render.js +2 -4
  317. package/dist/default/utils/use-force-render.js.map +1 -1
  318. package/dist/default/utils/use-latest-ref.js +2 -4
  319. package/dist/default/utils/use-latest-ref.js.map +1 -1
  320. package/dist/default/utils/use-media-instance.js +2 -4
  321. package/dist/default/utils/use-media-instance.js.map +1 -1
  322. package/dist/default/utils/use-render.js +2 -4
  323. package/dist/default/utils/use-render.js.map +1 -1
  324. package/dist/default/utils/use-safe-id.js +3 -5
  325. package/dist/default/utils/use-safe-id.js.map +1 -1
  326. package/dist/dev/_virtual/_rolldown/runtime.js +6 -11
  327. package/dist/dev/icons/dist/react/default/captions-off.js +1 -2
  328. package/dist/dev/icons/dist/react/default/captions-off.js.map +1 -1
  329. package/dist/dev/icons/dist/react/default/captions-on.js +1 -2
  330. package/dist/dev/icons/dist/react/default/captions-on.js.map +1 -1
  331. package/dist/dev/icons/dist/react/default/fullscreen-enter.js +1 -2
  332. package/dist/dev/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  333. package/dist/dev/icons/dist/react/default/fullscreen-exit.js +1 -2
  334. package/dist/dev/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  335. package/dist/dev/icons/dist/react/default/pause.js +1 -2
  336. package/dist/dev/icons/dist/react/default/pause.js.map +1 -1
  337. package/dist/dev/icons/dist/react/default/pip-enter.js +1 -2
  338. package/dist/dev/icons/dist/react/default/pip-enter.js.map +1 -1
  339. package/dist/dev/icons/dist/react/default/pip-exit.js +1 -2
  340. package/dist/dev/icons/dist/react/default/pip-exit.js.map +1 -1
  341. package/dist/dev/icons/dist/react/default/play.js +1 -2
  342. package/dist/dev/icons/dist/react/default/play.js.map +1 -1
  343. package/dist/dev/icons/dist/react/default/restart.js +1 -2
  344. package/dist/dev/icons/dist/react/default/restart.js.map +1 -1
  345. package/dist/dev/icons/dist/react/default/seek.js +1 -2
  346. package/dist/dev/icons/dist/react/default/seek.js.map +1 -1
  347. package/dist/dev/icons/dist/react/default/spinner.js +1 -2
  348. package/dist/dev/icons/dist/react/default/spinner.js.map +1 -1
  349. package/dist/dev/icons/dist/react/default/volume-high.js +1 -2
  350. package/dist/dev/icons/dist/react/default/volume-high.js.map +1 -1
  351. package/dist/dev/icons/dist/react/default/volume-low.js +1 -2
  352. package/dist/dev/icons/dist/react/default/volume-low.js.map +1 -1
  353. package/dist/dev/icons/dist/react/default/volume-off.js +1 -2
  354. package/dist/dev/icons/dist/react/default/volume-off.js.map +1 -1
  355. package/dist/dev/icons/dist/react/minimal/captions-off.js +1 -2
  356. package/dist/dev/icons/dist/react/minimal/captions-off.js.map +1 -1
  357. package/dist/dev/icons/dist/react/minimal/captions-on.js +1 -2
  358. package/dist/dev/icons/dist/react/minimal/captions-on.js.map +1 -1
  359. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js +1 -2
  360. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  361. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js +1 -2
  362. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  363. package/dist/dev/icons/dist/react/minimal/pause.js +1 -2
  364. package/dist/dev/icons/dist/react/minimal/pause.js.map +1 -1
  365. package/dist/dev/icons/dist/react/minimal/pip-enter.js +1 -2
  366. package/dist/dev/icons/dist/react/minimal/pip-enter.js.map +1 -1
  367. package/dist/dev/icons/dist/react/minimal/pip-exit.js +1 -2
  368. package/dist/dev/icons/dist/react/minimal/pip-exit.js.map +1 -1
  369. package/dist/dev/icons/dist/react/minimal/play.js +1 -2
  370. package/dist/dev/icons/dist/react/minimal/play.js.map +1 -1
  371. package/dist/dev/icons/dist/react/minimal/restart.js +1 -2
  372. package/dist/dev/icons/dist/react/minimal/restart.js.map +1 -1
  373. package/dist/dev/icons/dist/react/minimal/seek.js +1 -2
  374. package/dist/dev/icons/dist/react/minimal/seek.js.map +1 -1
  375. package/dist/dev/icons/dist/react/minimal/spinner.js +1 -2
  376. package/dist/dev/icons/dist/react/minimal/spinner.js.map +1 -1
  377. package/dist/dev/icons/dist/react/minimal/volume-high.js +1 -2
  378. package/dist/dev/icons/dist/react/minimal/volume-high.js.map +1 -1
  379. package/dist/dev/icons/dist/react/minimal/volume-low.js +1 -2
  380. package/dist/dev/icons/dist/react/minimal/volume-low.js.map +1 -1
  381. package/dist/dev/icons/dist/react/minimal/volume-off.js +1 -2
  382. package/dist/dev/icons/dist/react/minimal/volume-off.js.map +1 -1
  383. package/dist/dev/index.d.ts +10 -8
  384. package/dist/dev/index.js +11 -12
  385. package/dist/dev/media/audio.js +2 -4
  386. package/dist/dev/media/audio.js.map +1 -1
  387. package/dist/dev/media/background-video/index.js +2 -4
  388. package/dist/dev/media/background-video/index.js.map +1 -1
  389. package/dist/dev/media/dash-video/index.d.ts +4 -2
  390. package/dist/dev/media/dash-video/index.d.ts.map +1 -1
  391. package/dist/dev/media/dash-video/index.js +3 -4
  392. package/dist/dev/media/dash-video/index.js.map +1 -1
  393. package/dist/dev/media/hls-video/index.d.ts +4 -2
  394. package/dist/dev/media/hls-video/index.d.ts.map +1 -1
  395. package/dist/dev/media/hls-video/index.js +3 -4
  396. package/dist/dev/media/hls-video/index.js.map +1 -1
  397. package/dist/dev/media/mux-video/index.d.ts +13 -0
  398. package/dist/dev/media/mux-video/index.d.ts.map +1 -0
  399. package/dist/dev/media/mux-video/index.js +20 -0
  400. package/dist/dev/media/mux-video/index.js.map +1 -0
  401. package/dist/dev/media/native-hls-video/index.d.ts +13 -0
  402. package/dist/dev/media/native-hls-video/index.d.ts.map +1 -0
  403. package/dist/dev/media/native-hls-video/index.js +20 -0
  404. package/dist/dev/media/native-hls-video/index.js.map +1 -0
  405. package/dist/dev/media/simple-hls-video/index.d.ts.map +1 -1
  406. package/dist/dev/media/simple-hls-video/index.js +3 -3
  407. package/dist/dev/media/simple-hls-video/index.js.map +1 -1
  408. package/dist/dev/media/video.js +2 -4
  409. package/dist/dev/media/video.js.map +1 -1
  410. package/dist/dev/player/context.js +2 -4
  411. package/dist/dev/player/context.js.map +1 -1
  412. package/dist/dev/player/create-player.js +2 -4
  413. package/dist/dev/player/create-player.js.map +1 -1
  414. package/dist/dev/presets/audio/index.js +1 -2
  415. package/dist/dev/presets/audio/minimal-skin.css +81 -59
  416. package/dist/dev/presets/audio/minimal-skin.d.ts.map +1 -1
  417. package/dist/dev/presets/audio/minimal-skin.js +29 -17
  418. package/dist/dev/presets/audio/minimal-skin.js.map +1 -1
  419. package/dist/dev/presets/audio/minimal-skin.tailwind.d.ts.map +1 -1
  420. package/dist/dev/presets/audio/minimal-skin.tailwind.js +25 -15
  421. package/dist/dev/presets/audio/minimal-skin.tailwind.js.map +1 -1
  422. package/dist/dev/presets/audio/skin.css +54 -42
  423. package/dist/dev/presets/audio/skin.d.ts.map +1 -1
  424. package/dist/dev/presets/audio/skin.js +102 -84
  425. package/dist/dev/presets/audio/skin.js.map +1 -1
  426. package/dist/dev/presets/audio/skin.tailwind.d.ts.map +1 -1
  427. package/dist/dev/presets/audio/skin.tailwind.js +98 -81
  428. package/dist/dev/presets/audio/skin.tailwind.js.map +1 -1
  429. package/dist/dev/presets/background/index.js +1 -2
  430. package/dist/dev/presets/background/skin.js +1 -2
  431. package/dist/dev/presets/background/skin.js.map +1 -1
  432. package/dist/dev/presets/video/index.js +1 -2
  433. package/dist/dev/presets/video/minimal-skin.css +156 -75
  434. package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -1
  435. package/dist/dev/presets/video/minimal-skin.js +30 -18
  436. package/dist/dev/presets/video/minimal-skin.js.map +1 -1
  437. package/dist/dev/presets/video/minimal-skin.tailwind.d.ts.map +1 -1
  438. package/dist/dev/presets/video/minimal-skin.tailwind.js +29 -21
  439. package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -1
  440. package/dist/dev/presets/video/skin.css +114 -58
  441. package/dist/dev/presets/video/skin.d.ts.map +1 -1
  442. package/dist/dev/presets/video/skin.js +138 -117
  443. package/dist/dev/presets/video/skin.js.map +1 -1
  444. package/dist/dev/presets/video/skin.tailwind.d.ts.map +1 -1
  445. package/dist/dev/presets/video/skin.tailwind.js +134 -116
  446. package/dist/dev/presets/video/skin.tailwind.js.map +1 -1
  447. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +12 -16
  448. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  449. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  450. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  451. package/dist/dev/skins/dist/default/default/tailwind/components/button-group.js +7 -0
  452. package/dist/dev/skins/dist/default/default/tailwind/components/button-group.js.map +1 -0
  453. package/dist/dev/skins/dist/default/default/tailwind/components/button.js +3 -4
  454. package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  455. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +2 -3
  456. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  457. package/dist/dev/skins/dist/default/default/tailwind/components/error.js +2 -3
  458. package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  459. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js +1 -2
  460. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  461. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js +2 -3
  462. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
  463. package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js +1 -1
  464. package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -1
  465. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js +4 -5
  466. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  467. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +1 -2
  468. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  469. package/dist/dev/skins/dist/default/default/tailwind/components/preview.js +2 -3
  470. package/dist/dev/skins/dist/default/default/tailwind/components/preview.js.map +1 -1
  471. package/dist/dev/skins/dist/default/default/tailwind/components/root.js +2 -3
  472. package/dist/dev/skins/dist/default/default/tailwind/components/root.js.map +1 -1
  473. package/dist/dev/skins/dist/default/default/tailwind/components/seek.js +1 -2
  474. package/dist/dev/skins/dist/default/default/tailwind/components/seek.js.map +1 -1
  475. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +2 -3
  476. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  477. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js +2 -3
  478. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  479. package/dist/dev/skins/dist/default/default/tailwind/components/time.js +1 -1
  480. package/dist/dev/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  481. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +24 -19
  482. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  483. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +13 -14
  484. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  485. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  486. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  487. package/dist/dev/skins/dist/default/minimal/tailwind/components/button-group.js +1 -2
  488. package/dist/dev/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
  489. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +2 -3
  490. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  491. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +2 -3
  492. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  493. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js +2 -3
  494. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
  495. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js +1 -2
  496. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  497. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js +2 -3
  498. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
  499. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js +2 -3
  500. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  501. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +1 -2
  502. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  503. package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js +2 -3
  504. package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -1
  505. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js +2 -3
  506. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
  507. package/dist/dev/skins/dist/default/minimal/tailwind/components/seek.js +1 -2
  508. package/dist/dev/skins/dist/default/minimal/tailwind/components/seek.js.map +1 -1
  509. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +2 -3
  510. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  511. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js +5 -6
  512. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  513. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +21 -16
  514. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  515. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +1 -1
  516. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  517. package/dist/dev/ui/alert-dialog/alert-dialog-close.js +2 -4
  518. package/dist/dev/ui/alert-dialog/alert-dialog-close.js.map +1 -1
  519. package/dist/dev/ui/alert-dialog/alert-dialog-description.js +2 -4
  520. package/dist/dev/ui/alert-dialog/alert-dialog-description.js.map +1 -1
  521. package/dist/dev/ui/alert-dialog/alert-dialog-popup.js +2 -4
  522. package/dist/dev/ui/alert-dialog/alert-dialog-popup.js.map +1 -1
  523. package/dist/dev/ui/alert-dialog/alert-dialog-root.js +4 -6
  524. package/dist/dev/ui/alert-dialog/alert-dialog-root.js.map +1 -1
  525. package/dist/dev/ui/alert-dialog/alert-dialog-title.js +2 -4
  526. package/dist/dev/ui/alert-dialog/alert-dialog-title.js.map +1 -1
  527. package/dist/dev/ui/alert-dialog/context.js +2 -4
  528. package/dist/dev/ui/alert-dialog/context.js.map +1 -1
  529. package/dist/dev/ui/alert-dialog/index.js +1 -2
  530. package/dist/dev/ui/alert-dialog/index.parts.js +1 -2
  531. package/dist/dev/ui/buffering-indicator/buffering-indicator.js +2 -4
  532. package/dist/dev/ui/buffering-indicator/buffering-indicator.js.map +1 -1
  533. package/dist/dev/ui/buffering-indicator/index.js +1 -2
  534. package/dist/dev/ui/captions-button/captions-button.js +2 -4
  535. package/dist/dev/ui/captions-button/captions-button.js.map +1 -1
  536. package/dist/dev/ui/captions-button/index.js +1 -2
  537. package/dist/dev/ui/controls/context.js +2 -4
  538. package/dist/dev/ui/controls/context.js.map +1 -1
  539. package/dist/dev/ui/controls/controls-group.js +2 -4
  540. package/dist/dev/ui/controls/controls-group.js.map +1 -1
  541. package/dist/dev/ui/controls/controls-root.js +2 -4
  542. package/dist/dev/ui/controls/controls-root.js.map +1 -1
  543. package/dist/dev/ui/controls/index.js +1 -2
  544. package/dist/dev/ui/controls/index.parts.js +1 -2
  545. package/dist/dev/ui/create-context-part.js +2 -4
  546. package/dist/dev/ui/create-context-part.js.map +1 -1
  547. package/dist/dev/ui/create-media-button.js +2 -4
  548. package/dist/dev/ui/create-media-button.js.map +1 -1
  549. package/dist/dev/ui/error-dialog/context.d.ts +9 -0
  550. package/dist/dev/ui/error-dialog/context.d.ts.map +1 -0
  551. package/dist/dev/ui/error-dialog/context.js +14 -0
  552. package/dist/dev/ui/error-dialog/context.js.map +1 -0
  553. package/dist/dev/ui/error-dialog/error-dialog-description.d.ts +14 -0
  554. package/dist/dev/ui/error-dialog/error-dialog-description.d.ts.map +1 -0
  555. package/dist/dev/ui/error-dialog/error-dialog-description.js +28 -0
  556. package/dist/dev/ui/error-dialog/error-dialog-description.js.map +1 -0
  557. package/dist/dev/ui/error-dialog/error-dialog-root.d.ts +15 -0
  558. package/dist/dev/ui/error-dialog/error-dialog-root.d.ts.map +1 -0
  559. package/dist/dev/ui/error-dialog/error-dialog-root.js +57 -0
  560. package/dist/dev/ui/error-dialog/error-dialog-root.js.map +1 -0
  561. package/dist/dev/ui/error-dialog/index.d.ts +3 -0
  562. package/dist/dev/ui/error-dialog/index.js +3 -0
  563. package/dist/dev/ui/error-dialog/index.parts.d.ts +13 -0
  564. package/dist/dev/ui/error-dialog/index.parts.d.ts.map +1 -0
  565. package/dist/dev/ui/error-dialog/index.parts.js +18 -0
  566. package/dist/dev/ui/error-dialog/index.parts.js.map +1 -0
  567. package/dist/dev/ui/fullscreen-button/fullscreen-button.js +2 -4
  568. package/dist/dev/ui/fullscreen-button/fullscreen-button.js.map +1 -1
  569. package/dist/dev/ui/fullscreen-button/index.js +1 -2
  570. package/dist/dev/ui/hooks/use-button.js +2 -4
  571. package/dist/dev/ui/hooks/use-button.js.map +1 -1
  572. package/dist/dev/ui/hooks/use-slider.js +2 -4
  573. package/dist/dev/ui/hooks/use-slider.js.map +1 -1
  574. package/dist/dev/ui/mute-button/index.js +1 -2
  575. package/dist/dev/ui/mute-button/mute-button.js +2 -4
  576. package/dist/dev/ui/mute-button/mute-button.js.map +1 -1
  577. package/dist/dev/ui/pip-button/index.js +1 -2
  578. package/dist/dev/ui/pip-button/pip-button.js +2 -4
  579. package/dist/dev/ui/pip-button/pip-button.js.map +1 -1
  580. package/dist/dev/ui/play-button/index.js +1 -2
  581. package/dist/dev/ui/play-button/play-button.js +2 -4
  582. package/dist/dev/ui/play-button/play-button.js.map +1 -1
  583. package/dist/dev/ui/playback-rate-button/index.js +1 -2
  584. package/dist/dev/ui/playback-rate-button/playback-rate-button.js +2 -4
  585. package/dist/dev/ui/playback-rate-button/playback-rate-button.js.map +1 -1
  586. package/dist/dev/ui/popover/context.js +2 -4
  587. package/dist/dev/ui/popover/context.js.map +1 -1
  588. package/dist/dev/ui/popover/index.js +1 -2
  589. package/dist/dev/ui/popover/index.parts.js +1 -2
  590. package/dist/dev/ui/popover/popover-arrow.js +2 -4
  591. package/dist/dev/ui/popover/popover-arrow.js.map +1 -1
  592. package/dist/dev/ui/popover/popover-popup.js +2 -4
  593. package/dist/dev/ui/popover/popover-popup.js.map +1 -1
  594. package/dist/dev/ui/popover/popover-root.js +3 -5
  595. package/dist/dev/ui/popover/popover-root.js.map +1 -1
  596. package/dist/dev/ui/popover/popover-trigger.js +2 -4
  597. package/dist/dev/ui/popover/popover-trigger.js.map +1 -1
  598. package/dist/dev/ui/poster/index.js +1 -2
  599. package/dist/dev/ui/poster/poster.js +2 -4
  600. package/dist/dev/ui/poster/poster.js.map +1 -1
  601. package/dist/dev/ui/seek-button/index.js +1 -2
  602. package/dist/dev/ui/seek-button/seek-button.js +2 -4
  603. package/dist/dev/ui/seek-button/seek-button.js.map +1 -1
  604. package/dist/dev/ui/slider/context.js +2 -4
  605. package/dist/dev/ui/slider/context.js.map +1 -1
  606. package/dist/dev/ui/slider/index.js +1 -2
  607. package/dist/dev/ui/slider/index.parts.js +1 -2
  608. package/dist/dev/ui/slider/slider-buffer.js +2 -4
  609. package/dist/dev/ui/slider/slider-buffer.js.map +1 -1
  610. package/dist/dev/ui/slider/slider-fill.js +2 -4
  611. package/dist/dev/ui/slider/slider-fill.js.map +1 -1
  612. package/dist/dev/ui/slider/slider-preview.js +2 -4
  613. package/dist/dev/ui/slider/slider-preview.js.map +1 -1
  614. package/dist/dev/ui/slider/slider-root.js +2 -4
  615. package/dist/dev/ui/slider/slider-root.js.map +1 -1
  616. package/dist/dev/ui/slider/slider-thumb.js +2 -4
  617. package/dist/dev/ui/slider/slider-thumb.js.map +1 -1
  618. package/dist/dev/ui/slider/slider-thumbnail.js +2 -4
  619. package/dist/dev/ui/slider/slider-thumbnail.js.map +1 -1
  620. package/dist/dev/ui/slider/slider-track.js +2 -4
  621. package/dist/dev/ui/slider/slider-track.js.map +1 -1
  622. package/dist/dev/ui/slider/slider-value.js +2 -4
  623. package/dist/dev/ui/slider/slider-value.js.map +1 -1
  624. package/dist/dev/ui/thumbnail/index.js +1 -2
  625. package/dist/dev/ui/thumbnail/thumbnail.js +2 -4
  626. package/dist/dev/ui/thumbnail/thumbnail.js.map +1 -1
  627. package/dist/dev/ui/time/index.js +1 -2
  628. package/dist/dev/ui/time/index.parts.js +1 -2
  629. package/dist/dev/ui/time/time-group.js +2 -4
  630. package/dist/dev/ui/time/time-group.js.map +1 -1
  631. package/dist/dev/ui/time/time-separator.js +2 -4
  632. package/dist/dev/ui/time/time-separator.js.map +1 -1
  633. package/dist/dev/ui/time/time-value.js +2 -4
  634. package/dist/dev/ui/time/time-value.js.map +1 -1
  635. package/dist/dev/ui/time-slider/index.js +1 -2
  636. package/dist/dev/ui/time-slider/index.parts.js +1 -2
  637. package/dist/dev/ui/time-slider/time-slider-root.js +2 -4
  638. package/dist/dev/ui/time-slider/time-slider-root.js.map +1 -1
  639. package/dist/dev/ui/tooltip/context.js +2 -4
  640. package/dist/dev/ui/tooltip/context.js.map +1 -1
  641. package/dist/dev/ui/tooltip/group-context.js +2 -4
  642. package/dist/dev/ui/tooltip/group-context.js.map +1 -1
  643. package/dist/dev/ui/tooltip/index.js +1 -2
  644. package/dist/dev/ui/tooltip/index.parts.js +1 -2
  645. package/dist/dev/ui/tooltip/tooltip-arrow.js +2 -4
  646. package/dist/dev/ui/tooltip/tooltip-arrow.js.map +1 -1
  647. package/dist/dev/ui/tooltip/tooltip-popup.js +2 -4
  648. package/dist/dev/ui/tooltip/tooltip-popup.js.map +1 -1
  649. package/dist/dev/ui/tooltip/tooltip-provider.js +2 -4
  650. package/dist/dev/ui/tooltip/tooltip-provider.js.map +1 -1
  651. package/dist/dev/ui/tooltip/tooltip-root.js +3 -5
  652. package/dist/dev/ui/tooltip/tooltip-root.js.map +1 -1
  653. package/dist/dev/ui/tooltip/tooltip-trigger.js +2 -4
  654. package/dist/dev/ui/tooltip/tooltip-trigger.js.map +1 -1
  655. package/dist/dev/ui/volume-slider/index.js +1 -2
  656. package/dist/dev/ui/volume-slider/index.parts.js +1 -2
  657. package/dist/dev/ui/volume-slider/volume-slider-root.js +2 -4
  658. package/dist/dev/ui/volume-slider/volume-slider-root.js.map +1 -1
  659. package/dist/dev/utils/attach-media-element.js +1 -1
  660. package/dist/dev/utils/media-props.d.ts +2 -301
  661. package/dist/dev/utils/media-props.d.ts.map +1 -1
  662. package/dist/dev/utils/media-props.js +14 -6
  663. package/dist/dev/utils/media-props.js.map +1 -1
  664. package/dist/dev/utils/merge-props.js +2 -3
  665. package/dist/dev/utils/merge-props.js.map +1 -1
  666. package/dist/dev/utils/use-composed-refs.js +2 -4
  667. package/dist/dev/utils/use-composed-refs.js.map +1 -1
  668. package/dist/dev/utils/use-destroy.js +2 -4
  669. package/dist/dev/utils/use-destroy.js.map +1 -1
  670. package/dist/dev/utils/use-force-render.js +2 -4
  671. package/dist/dev/utils/use-force-render.js.map +1 -1
  672. package/dist/dev/utils/use-latest-ref.js +2 -4
  673. package/dist/dev/utils/use-latest-ref.js.map +1 -1
  674. package/dist/dev/utils/use-media-instance.js +2 -4
  675. package/dist/dev/utils/use-media-instance.js.map +1 -1
  676. package/dist/dev/utils/use-render.js +2 -4
  677. package/dist/dev/utils/use-render.js.map +1 -1
  678. package/dist/dev/utils/use-safe-id.js +3 -5
  679. package/dist/dev/utils/use-safe-id.js.map +1 -1
  680. package/package.json +9 -9
  681. package/dist/default/presets/error-dialog.js +0 -51
  682. package/dist/default/presets/error-dialog.js.map +0 -1
  683. package/dist/dev/presets/error-dialog.js +0 -51
  684. package/dist/dev/presets/error-dialog.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"time-slider-root.js","names":[],"sources":["../../../../src/ui/time-slider/time-slider-root.tsx"],"sourcesContent":["'use client';\n\nimport { TimeSliderCore, TimeSliderDataAttrs } from '@videojs/core';\nimport { getTimeSliderCSSVars, logMissingFeature, selectBuffer, selectTime } from '@videojs/core/dom';\nimport { formatTime } from '@videojs/utils/time';\nimport { forwardRef, useState } from 'react';\n\nimport { usePlayer } from '../../player/context';\nimport type { UIComponentProps } from '../../utils/types';\nimport { useLatestRef } from '../../utils/use-latest-ref';\nimport { renderElement } from '../../utils/use-render';\nimport { useSlider } from '../hooks/use-slider';\nimport { SliderProvider } from '../slider/context';\n\nconst noopSeek = (): Promise<number> => Promise.resolve(0);\n\nexport interface TimeSliderRootProps extends UIComponentProps<'div', TimeSliderCore.State>, TimeSliderCore.Props {\n onDragStart?: (() => void) | undefined;\n onDragEnd?: (() => void) | undefined;\n}\n\nexport const TimeSliderRoot = forwardRef<HTMLDivElement, TimeSliderRootProps>(\n function TimeSliderRoot(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n label,\n commitThrottle = TimeSliderCore.defaultProps.commitThrottle,\n step = TimeSliderCore.defaultProps.step,\n largeStep = TimeSliderCore.defaultProps.largeStep,\n orientation,\n disabled,\n thumbAlignment,\n onDragStart,\n onDragEnd,\n ...elementProps\n } = componentProps;\n\n const time = usePlayer(selectTime);\n const buffer = usePlayer(selectBuffer);\n\n const [core] = useState(() => new TimeSliderCore());\n core.setProps({ label, step, largeStep, orientation, disabled, thumbAlignment });\n\n // Keep a ref to the latest media state for callbacks that fire outside the render cycle.\n const mediaRef = useLatestRef(time && buffer ? { ...time, ...buffer } : null);\n\n const duration = time?.duration ?? 0;\n\n const { state, cssVars, rootRef, thumbRef, rootProps, rootStyle, thumbProps } = useSlider<TimeSliderCore.State>({\n computeState: (input) => {\n core.setInput(input);\n if (!time || !buffer) {\n core.setMedia({\n currentTime: 0,\n duration: 0,\n seeking: false,\n seek: noopSeek,\n buffered: [],\n seekable: [],\n });\n } else {\n core.setMedia({ ...time, ...buffer });\n }\n\n return core.getState();\n },\n getPercent: () => (duration > 0 ? ((time?.currentTime ?? 0) / duration) * 100 : 0),\n getStepPercent: () => core.getStepPercent(),\n getLargeStepPercent: () => core.getLargeStepPercent(),\n orientation,\n disabled,\n commitThrottle,\n adjustPercent: (rawPercent, thumbSize, trackSize) =>\n core.adjustPercentForAlignment(rawPercent, thumbSize, trackSize),\n getCSSVars: getTimeSliderCSSVars,\n onValueCommit: (percent) => {\n const media = mediaRef.current;\n if (media) media.seek(core.rawValueFromPercent(percent));\n },\n onDragStart,\n onDragEnd,\n });\n\n if (!time) {\n if (__DEV__) logMissingFeature('TimeSlider', 'time');\n return null;\n }\n\n return (\n <SliderProvider\n value={{\n state,\n pointerValue: core.valueFromPercent(state.pointerPercent),\n thumbRef,\n thumbProps,\n stateAttrMap: TimeSliderDataAttrs,\n getAttrs: (sliderState) => core.getAttrs(sliderState as TimeSliderCore.State),\n formatValue: (value) => formatTime(value, duration),\n }}\n >\n {renderElement(\n 'div',\n { render, className, style },\n {\n state,\n stateAttrMap: TimeSliderDataAttrs,\n ref: [forwardedRef, rootRef],\n props: [{ style: { ...cssVars, ...rootStyle } }, rootProps, elementProps],\n }\n )}\n </SliderProvider>\n );\n }\n);\n\nexport namespace TimeSliderRoot {\n export type Props = TimeSliderRootProps;\n export type State = TimeSliderCore.State;\n}\n"],"mappings":";;;;;;;;;;;;;;AAcA,MAAM,iBAAkC,QAAQ,QAAQ,EAAE;AAO1D,MAAa,iBAAiB,WAC5B,SAAS,eAAe,gBAAgB,cAAc;CACpD,MAAM,EACJ,QACA,WACA,OACA,OACA,iBAAiB,eAAe,aAAa,gBAC7C,OAAO,eAAe,aAAa,MACnC,YAAY,eAAe,aAAa,WACxC,aACA,UACA,gBACA,aACA,WACA,GAAG,iBACD;CAEJ,MAAM,OAAO,UAAU,WAAW;CAClC,MAAM,SAAS,UAAU,aAAa;CAEtC,MAAM,CAAC,QAAQ,eAAe,IAAI,gBAAgB,CAAC;AACnD,MAAK,SAAS;EAAE;EAAO;EAAM;EAAW;EAAa;EAAU;EAAgB,CAAC;CAGhF,MAAM,WAAW,aAAa,QAAQ,SAAS;EAAE,GAAG;EAAM,GAAG;EAAQ,GAAG,KAAK;CAE7E,MAAM,WAAW,MAAM,YAAY;CAEnC,MAAM,EAAE,OAAO,SAAS,SAAS,UAAU,WAAW,WAAW,eAAe,UAAgC;EAC9G,eAAe,UAAU;AACvB,QAAK,SAAS,MAAM;AACpB,OAAI,CAAC,QAAQ,CAAC,OACZ,MAAK,SAAS;IACZ,aAAa;IACb,UAAU;IACV,SAAS;IACT,MAAM;IACN,UAAU,EAAE;IACZ,UAAU,EAAE;IACb,CAAC;OAEF,MAAK,SAAS;IAAE,GAAG;IAAM,GAAG;IAAQ,CAAC;AAGvC,UAAO,KAAK,UAAU;;EAExB,kBAAmB,WAAW,KAAM,MAAM,eAAe,KAAK,WAAY,MAAM;EAChF,sBAAsB,KAAK,gBAAgB;EAC3C,2BAA2B,KAAK,qBAAqB;EACrD;EACA;EACA;EACA,gBAAgB,YAAY,WAAW,cACrC,KAAK,0BAA0B,YAAY,WAAW,UAAU;EAClE,YAAY;EACZ,gBAAgB,YAAY;GAC1B,MAAM,QAAQ,SAAS;AACvB,OAAI,MAAO,OAAM,KAAK,KAAK,oBAAoB,QAAQ,CAAC;;EAE1D;EACA;EACD,CAAC;AAEF,KAAI,CAAC,MAAM;AACI,oBAAkB,cAAc,OAAO;AACpD,SAAO;;AAGT,QACE,oBAAC;EACC,OAAO;GACL;GACA,cAAc,KAAK,iBAAiB,MAAM,eAAe;GACzD;GACA;GACA,cAAc;GACd,WAAW,gBAAgB,KAAK,SAAS,YAAoC;GAC7E,cAAc,UAAU,WAAW,OAAO,SAAS;GACpD;YAEA,cACC,OACA;GAAE;GAAQ;GAAW;GAAO,EAC5B;GACE;GACA,cAAc;GACd,KAAK,CAAC,cAAc,QAAQ;GAC5B,OAAO;IAAC,EAAE,OAAO;KAAE,GAAG;KAAS,GAAG;KAAW,EAAE;IAAE;IAAW;IAAa;GAC1E,CACF;GACc;EAGtB"}
1
+ {"version":3,"file":"time-slider-root.js","names":[],"sources":["../../../../src/ui/time-slider/time-slider-root.tsx"],"sourcesContent":["'use client';\n\nimport { TimeSliderCore, TimeSliderDataAttrs } from '@videojs/core';\nimport { getTimeSliderCSSVars, logMissingFeature, selectBuffer, selectTime } from '@videojs/core/dom';\nimport { formatTime } from '@videojs/utils/time';\nimport { forwardRef, useState } from 'react';\n\nimport { usePlayer } from '../../player/context';\nimport type { UIComponentProps } from '../../utils/types';\nimport { useLatestRef } from '../../utils/use-latest-ref';\nimport { renderElement } from '../../utils/use-render';\nimport { useSlider } from '../hooks/use-slider';\nimport { SliderProvider } from '../slider/context';\n\nconst noopSeek = (): Promise<number> => Promise.resolve(0);\n\nexport interface TimeSliderRootProps extends UIComponentProps<'div', TimeSliderCore.State>, TimeSliderCore.Props {\n onDragStart?: (() => void) | undefined;\n onDragEnd?: (() => void) | undefined;\n}\n\nexport const TimeSliderRoot = forwardRef<HTMLDivElement, TimeSliderRootProps>(\n function TimeSliderRoot(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n label,\n commitThrottle = TimeSliderCore.defaultProps.commitThrottle,\n step = TimeSliderCore.defaultProps.step,\n largeStep = TimeSliderCore.defaultProps.largeStep,\n orientation,\n disabled,\n thumbAlignment,\n onDragStart,\n onDragEnd,\n ...elementProps\n } = componentProps;\n\n const time = usePlayer(selectTime);\n const buffer = usePlayer(selectBuffer);\n\n const [core] = useState(() => new TimeSliderCore());\n core.setProps({ label, step, largeStep, orientation, disabled, thumbAlignment });\n\n // Keep a ref to the latest media state for callbacks that fire outside the render cycle.\n const mediaRef = useLatestRef(time && buffer ? { ...time, ...buffer } : null);\n\n const duration = time?.duration ?? 0;\n\n const { state, cssVars, rootRef, thumbRef, rootProps, rootStyle, thumbProps } = useSlider<TimeSliderCore.State>({\n computeState: (input) => {\n core.setInput(input);\n if (!time || !buffer) {\n core.setMedia({\n currentTime: 0,\n duration: 0,\n seeking: false,\n seek: noopSeek,\n buffered: [],\n seekable: [],\n });\n } else {\n core.setMedia({ ...time, ...buffer });\n }\n\n return core.getState();\n },\n getPercent: () => (duration > 0 ? ((time?.currentTime ?? 0) / duration) * 100 : 0),\n getStepPercent: () => core.getStepPercent(),\n getLargeStepPercent: () => core.getLargeStepPercent(),\n orientation,\n disabled,\n commitThrottle,\n adjustPercent: (rawPercent, thumbSize, trackSize) =>\n core.adjustPercentForAlignment(rawPercent, thumbSize, trackSize),\n getCSSVars: getTimeSliderCSSVars,\n onValueCommit: (percent) => {\n const media = mediaRef.current;\n if (media) media.seek(core.rawValueFromPercent(percent));\n },\n onDragStart,\n onDragEnd,\n });\n\n if (!time) {\n if (__DEV__) logMissingFeature('TimeSlider', 'time');\n return null;\n }\n\n return (\n <SliderProvider\n value={{\n state,\n pointerValue: core.valueFromPercent(state.pointerPercent),\n thumbRef,\n thumbProps,\n stateAttrMap: TimeSliderDataAttrs,\n getAttrs: (sliderState) => core.getAttrs(sliderState as TimeSliderCore.State),\n formatValue: (value) => formatTime(value, duration),\n }}\n >\n {renderElement(\n 'div',\n { render, className, style },\n {\n state,\n stateAttrMap: TimeSliderDataAttrs,\n ref: [forwardedRef, rootRef],\n props: [{ style: { ...cssVars, ...rootStyle } }, rootProps, elementProps],\n }\n )}\n </SliderProvider>\n );\n }\n);\n\nexport namespace TimeSliderRoot {\n export type Props = TimeSliderRootProps;\n export type State = TimeSliderCore.State;\n}\n"],"mappings":";;;;;;;;;;;;AAcA,MAAM,iBAAkC,QAAQ,QAAQ,EAAE;AAO1D,MAAa,iBAAiB,WAC5B,SAAS,eAAe,gBAAgB,cAAc;CACpD,MAAM,EACJ,QACA,WACA,OACA,OACA,iBAAiB,eAAe,aAAa,gBAC7C,OAAO,eAAe,aAAa,MACnC,YAAY,eAAe,aAAa,WACxC,aACA,UACA,gBACA,aACA,WACA,GAAG,iBACD;CAEJ,MAAM,OAAO,UAAU,WAAW;CAClC,MAAM,SAAS,UAAU,aAAa;CAEtC,MAAM,CAAC,QAAQ,eAAe,IAAI,gBAAgB,CAAC;AACnD,MAAK,SAAS;EAAE;EAAO;EAAM;EAAW;EAAa;EAAU;EAAgB,CAAC;CAGhF,MAAM,WAAW,aAAa,QAAQ,SAAS;EAAE,GAAG;EAAM,GAAG;EAAQ,GAAG,KAAK;CAE7E,MAAM,WAAW,MAAM,YAAY;CAEnC,MAAM,EAAE,OAAO,SAAS,SAAS,UAAU,WAAW,WAAW,eAAe,UAAgC;EAC9G,eAAe,UAAU;AACvB,QAAK,SAAS,MAAM;AACpB,OAAI,CAAC,QAAQ,CAAC,OACZ,MAAK,SAAS;IACZ,aAAa;IACb,UAAU;IACV,SAAS;IACT,MAAM;IACN,UAAU,EAAE;IACZ,UAAU,EAAE;IACb,CAAC;OAEF,MAAK,SAAS;IAAE,GAAG;IAAM,GAAG;IAAQ,CAAC;AAGvC,UAAO,KAAK,UAAU;;EAExB,kBAAmB,WAAW,KAAM,MAAM,eAAe,KAAK,WAAY,MAAM;EAChF,sBAAsB,KAAK,gBAAgB;EAC3C,2BAA2B,KAAK,qBAAqB;EACrD;EACA;EACA;EACA,gBAAgB,YAAY,WAAW,cACrC,KAAK,0BAA0B,YAAY,WAAW,UAAU;EAClE,YAAY;EACZ,gBAAgB,YAAY;GAC1B,MAAM,QAAQ,SAAS;AACvB,OAAI,MAAO,OAAM,KAAK,KAAK,oBAAoB,QAAQ,CAAC;;EAE1D;EACA;EACD,CAAC;AAEF,KAAI,CAAC,MAAM;AACI,oBAAkB,cAAc,OAAO;AACpD,SAAO;;AAGT,QACE,oBAAC,gBAAD;EACE,OAAO;GACL;GACA,cAAc,KAAK,iBAAiB,MAAM,eAAe;GACzD;GACA;GACA,cAAc;GACd,WAAW,gBAAgB,KAAK,SAAS,YAAoC;GAC7E,cAAc,UAAU,WAAW,OAAO,SAAS;GACpD;YAEA,cACC,OACA;GAAE;GAAQ;GAAW;GAAO,EAC5B;GACE;GACA,cAAc;GACd,KAAK,CAAC,cAAc,QAAQ;GAC5B,OAAO;IAAC,EAAE,OAAO;KAAE,GAAG;KAAS,GAAG;KAAW,EAAE;IAAE;IAAW;IAAa;GAC1E,CACF;EACc,CAAA;EAGtB"}
@@ -1,7 +1,5 @@
1
- 'use client';
2
-
1
+ "use client";
3
2
  import { createContext, useContext } from "react";
4
-
5
3
  //#region src/ui/tooltip/context.tsx
6
4
  const TooltipContext = createContext(null);
7
5
  const TooltipContextProvider = TooltipContext.Provider;
@@ -10,7 +8,7 @@ function useTooltipContext() {
10
8
  if (!ctx) throw new Error("Tooltip compound components must be used within a Tooltip.Root");
11
9
  return ctx;
12
10
  }
13
-
14
11
  //#endregion
15
12
  export { TooltipContextProvider, useTooltipContext };
13
+
16
14
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/tooltip/context.tsx"],"sourcesContent":["'use client';\n\nimport type { StateAttrMap, TooltipCore } from '@videojs/core';\nimport type { TooltipApi } from '@videojs/core/dom';\nimport { createContext, useContext } from 'react';\n\nexport interface TooltipContextValue {\n core: TooltipCore;\n tooltip: TooltipApi;\n state: TooltipCore.State;\n stateAttrMap: StateAttrMap<TooltipCore.State>;\n anchorName: string;\n popupId: string;\n}\n\nconst TooltipContext = createContext<TooltipContextValue | null>(null);\n\nexport const TooltipContextProvider = TooltipContext.Provider;\n\nexport function useTooltipContext(): TooltipContextValue {\n const ctx = useContext(TooltipContext);\n if (!ctx) throw new Error('Tooltip compound components must be used within a Tooltip.Root');\n return ctx;\n}\n"],"mappings":";;;;;AAeA,MAAM,iBAAiB,cAA0C,KAAK;AAEtE,MAAa,yBAAyB,eAAe;AAErD,SAAgB,oBAAyC;CACvD,MAAM,MAAM,WAAW,eAAe;AACtC,KAAI,CAAC,IAAK,OAAM,IAAI,MAAM,iEAAiE;AAC3F,QAAO"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/tooltip/context.tsx"],"sourcesContent":["'use client';\n\nimport type { StateAttrMap, TooltipCore } from '@videojs/core';\nimport type { TooltipApi } from '@videojs/core/dom';\nimport { createContext, useContext } from 'react';\n\nexport interface TooltipContextValue {\n core: TooltipCore;\n tooltip: TooltipApi;\n state: TooltipCore.State;\n stateAttrMap: StateAttrMap<TooltipCore.State>;\n anchorName: string;\n popupId: string;\n}\n\nconst TooltipContext = createContext<TooltipContextValue | null>(null);\n\nexport const TooltipContextProvider = TooltipContext.Provider;\n\nexport function useTooltipContext(): TooltipContextValue {\n const ctx = useContext(TooltipContext);\n if (!ctx) throw new Error('Tooltip compound components must be used within a Tooltip.Root');\n return ctx;\n}\n"],"mappings":";;;AAeA,MAAM,iBAAiB,cAA0C,KAAK;AAEtE,MAAa,yBAAyB,eAAe;AAErD,SAAgB,oBAAyC;CACvD,MAAM,MAAM,WAAW,eAAe;AACtC,KAAI,CAAC,IAAK,OAAM,IAAI,MAAM,iEAAiE;AAC3F,QAAO"}
@@ -1,7 +1,5 @@
1
- 'use client';
2
-
1
+ "use client";
3
2
  import { createContext, useContext } from "react";
4
-
5
3
  //#region src/ui/tooltip/group-context.tsx
6
4
  const TooltipGroupContext = createContext(null);
7
5
  const TooltipGroupContextProvider = TooltipGroupContext.Provider;
@@ -9,7 +7,7 @@ const TooltipGroupContextProvider = TooltipGroupContext.Provider;
9
7
  function useTooltipGroup() {
10
8
  return useContext(TooltipGroupContext)?.group;
11
9
  }
12
-
13
10
  //#endregion
14
11
  export { TooltipGroupContextProvider, useTooltipGroup };
12
+
15
13
  //# sourceMappingURL=group-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"group-context.js","names":[],"sources":["../../../../src/ui/tooltip/group-context.tsx"],"sourcesContent":["'use client';\n\nimport type { TooltipGroupCore } from '@videojs/core';\nimport { createContext, useContext } from 'react';\n\ninterface TooltipGroupContextValue {\n group: TooltipGroupCore;\n}\n\nconst TooltipGroupContext = createContext<TooltipGroupContextValue | null>(null);\n\nexport const TooltipGroupContextProvider = TooltipGroupContext.Provider;\n\n/** Returns the nearest `TooltipGroupCore`, or `undefined` when used outside a `Tooltip.Provider`. */\nexport function useTooltipGroup(): TooltipGroupCore | undefined {\n return useContext(TooltipGroupContext)?.group;\n}\n"],"mappings":";;;;;AASA,MAAM,sBAAsB,cAA+C,KAAK;AAEhF,MAAa,8BAA8B,oBAAoB;;AAG/D,SAAgB,kBAAgD;AAC9D,QAAO,WAAW,oBAAoB,EAAE"}
1
+ {"version":3,"file":"group-context.js","names":[],"sources":["../../../../src/ui/tooltip/group-context.tsx"],"sourcesContent":["'use client';\n\nimport type { TooltipGroupCore } from '@videojs/core';\nimport { createContext, useContext } from 'react';\n\ninterface TooltipGroupContextValue {\n group: TooltipGroupCore;\n}\n\nconst TooltipGroupContext = createContext<TooltipGroupContextValue | null>(null);\n\nexport const TooltipGroupContextProvider = TooltipGroupContext.Provider;\n\n/** Returns the nearest `TooltipGroupCore`, or `undefined` when used outside a `Tooltip.Provider`. */\nexport function useTooltipGroup(): TooltipGroupCore | undefined {\n return useContext(TooltipGroupContext)?.group;\n}\n"],"mappings":";;;AASA,MAAM,sBAAsB,cAA+C,KAAK;AAEhF,MAAa,8BAA8B,oBAAoB;;AAG/D,SAAgB,kBAAgD;AAC9D,QAAO,WAAW,oBAAoB,EAAE"}
@@ -1,4 +1,3 @@
1
1
  import { useTooltipContext } from "./context.js";
2
2
  import { index_parts_exports } from "./index.parts.js";
3
-
4
- export { index_parts_exports as Tooltip, useTooltipContext };
3
+ export { index_parts_exports as Tooltip, useTooltipContext };
@@ -4,7 +4,6 @@ import { TooltipPopup } from "./tooltip-popup.js";
4
4
  import { TooltipProvider } from "./tooltip-provider.js";
5
5
  import { TooltipRoot } from "./tooltip-root.js";
6
6
  import { TooltipTrigger } from "./tooltip-trigger.js";
7
-
8
7
  //#region src/ui/tooltip/index.parts.ts
9
8
  var index_parts_exports = /* @__PURE__ */ __exportAll({
10
9
  Arrow: () => TooltipArrow,
@@ -13,7 +12,7 @@ var index_parts_exports = /* @__PURE__ */ __exportAll({
13
12
  Root: () => TooltipRoot,
14
13
  Trigger: () => TooltipTrigger
15
14
  });
16
-
17
15
  //#endregion
18
16
  export { index_parts_exports };
17
+
19
18
  //# sourceMappingURL=index.parts.js.map
@@ -1,8 +1,6 @@
1
- 'use client';
2
-
1
+ "use client";
3
2
  import { createContextPart } from "../create-context-part.js";
4
3
  import { useTooltipContext } from "./context.js";
5
-
6
4
  //#region src/ui/tooltip/tooltip-arrow.tsx
7
5
  /** Decorative arrow pointing from the tooltip toward the trigger. Hidden from assistive technology. */
8
6
  const TooltipArrow = createContextPart({
@@ -11,7 +9,7 @@ const TooltipArrow = createContextPart({
11
9
  useContext: useTooltipContext,
12
10
  staticProps: { "aria-hidden": "true" }
13
11
  });
14
-
15
12
  //#endregion
16
13
  export { TooltipArrow };
14
+
17
15
  //# sourceMappingURL=tooltip-arrow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip-arrow.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-arrow.tsx"],"sourcesContent":["'use client';\n\nimport type { TooltipState } from '@videojs/core';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { createContextPart } from '../create-context-part';\nimport { useTooltipContext } from './context';\n\nexport interface TooltipArrowProps extends UIComponentProps<'div', TooltipState> {}\n\n/** Decorative arrow pointing from the tooltip toward the trigger. Hidden from assistive technology. */\nexport const TooltipArrow = createContextPart<TooltipArrowProps, TooltipState>({\n displayName: 'TooltipArrow',\n tag: 'div',\n useContext: useTooltipContext,\n staticProps: { 'aria-hidden': 'true' as const },\n});\n\nexport namespace TooltipArrow {\n export type Props = TooltipArrowProps;\n export type State = TooltipState;\n}\n"],"mappings":";;;;;;;AAWA,MAAa,eAAe,kBAAmD;CAC7E,aAAa;CACb,KAAK;CACL,YAAY;CACZ,aAAa,EAAE,eAAe,QAAiB;CAChD,CAAC"}
1
+ {"version":3,"file":"tooltip-arrow.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-arrow.tsx"],"sourcesContent":["'use client';\n\nimport type { TooltipState } from '@videojs/core';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { createContextPart } from '../create-context-part';\nimport { useTooltipContext } from './context';\n\nexport interface TooltipArrowProps extends UIComponentProps<'div', TooltipState> {}\n\n/** Decorative arrow pointing from the tooltip toward the trigger. Hidden from assistive technology. */\nexport const TooltipArrow = createContextPart<TooltipArrowProps, TooltipState>({\n displayName: 'TooltipArrow',\n tag: 'div',\n useContext: useTooltipContext,\n staticProps: { 'aria-hidden': 'true' as const },\n});\n\nexport namespace TooltipArrow {\n export type Props = TooltipArrowProps;\n export type State = TooltipState;\n}\n"],"mappings":";;;;;AAWA,MAAa,eAAe,kBAAmD;CAC7E,aAAa;CACb,KAAK;CACL,YAAY;CACZ,aAAa,EAAE,eAAe,QAAiB;CAChD,CAAC"}
@@ -1,5 +1,4 @@
1
- 'use client';
2
-
1
+ "use client";
3
2
  import { useComposedRefs } from "../../utils/use-composed-refs.js";
4
3
  import { renderElement } from "../../utils/use-render.js";
5
4
  import { useTooltipContext } from "./context.js";
@@ -7,7 +6,6 @@ import { TooltipCSSVars } from "@videojs/core";
7
6
  import { getAnchorPositionStyle, getPopupPositionRect, resolveOffsets } from "@videojs/core/dom";
8
7
  import { forwardRef, useCallback, useLayoutEffect, useMemo, useRef, useState } from "react";
9
8
  import { supportsAnchorPositioning } from "@videojs/utils/dom";
10
-
11
9
  //#region src/ui/tooltip/tooltip-popup.tsx
12
10
  const POPUP_RESET = {
13
11
  position: "fixed",
@@ -100,7 +98,7 @@ const TooltipPopup = forwardRef(function TooltipPopup({ render, className, style
100
98
  ]
101
99
  });
102
100
  });
103
-
104
101
  //#endregion
105
102
  export { TooltipPopup };
103
+
106
104
  //# sourceMappingURL=tooltip-popup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip-popup.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-popup.tsx"],"sourcesContent":["'use client';\n\nimport type { TooltipState } from '@videojs/core';\nimport { TooltipCSSVars } from '@videojs/core';\nimport { getAnchorPositionStyle, getPopupPositionRect, resolveOffsets } from '@videojs/core/dom';\nimport { supportsAnchorPositioning } from '@videojs/utils/dom';\nimport type { CSSProperties } from 'react';\nimport { forwardRef, useCallback, useLayoutEffect, useMemo, useRef, useState } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { renderElement } from '../../utils/use-render';\nimport { useTooltipContext } from './context';\n\nexport interface TooltipPopupProps extends UIComponentProps<'div', TooltipState> {}\n\nconst POPUP_RESET: CSSProperties = { position: 'fixed', inset: 'auto', margin: 0 };\n\n/** Container for the tooltip content. Positioned relative to the trigger using CSS anchor positioning with a JavaScript fallback. */\nexport const TooltipPopup = forwardRef<HTMLDivElement, TooltipPopupProps>(function TooltipPopup(\n { render, className, style, ...elementProps },\n forwardedRef\n) {\n const { core, tooltip, state, stateAttrMap, anchorName, popupId } = useTooltipContext();\n const internalRef = useRef<HTMLDivElement>(null);\n\n const popupRef = useCallback(\n (el: HTMLDivElement | null) => {\n tooltip.setPopupElement(el);\n if (el && supportsAnchorPositioning()) {\n el.style.setProperty('position-anchor', `--${anchorName}`);\n }\n },\n [tooltip, anchorName]\n );\n\n const composedRef = useComposedRefs(forwardedRef, popupRef, internalRef);\n\n // --- Positioning ---\n\n const posOpts = useMemo(() => ({ side: state.side, align: state.align }), [state.side, state.align]);\n\n // CSS Anchor Positioning — computed from state, no measurement needed.\n // `position-anchor` is set imperatively in the ref callback above\n // because React's style prop silently drops unrecognised CSS properties.\n const anchorStyle = useMemo(() => {\n if (!supportsAnchorPositioning()) return null;\n const { positionAnchor: _, ...rest } = getAnchorPositionStyle(\n anchorName,\n posOpts,\n undefined,\n undefined,\n undefined,\n undefined,\n TooltipCSSVars\n );\n return rest as CSSProperties;\n }, [anchorName, posOpts]);\n\n // Manual fallback — measure rects after layout, before paint.\n const [manualStyle, setManualStyle] = useState<CSSProperties | null>(null);\n\n useLayoutEffect(() => {\n if (supportsAnchorPositioning()) return;\n if (!state.open) {\n setManualStyle(null);\n return;\n }\n\n function measure(): void {\n const triggerEl = tooltip.triggerElement;\n const popupEl = internalRef.current;\n if (!triggerEl || !popupEl) return;\n\n const triggerRect = triggerEl.getBoundingClientRect();\n const popupRect = getPopupPositionRect(popupEl);\n const boundaryRect = document.documentElement.getBoundingClientRect();\n const offsets = resolveOffsets(popupEl, TooltipCSSVars);\n\n setManualStyle(\n getAnchorPositionStyle(\n anchorName,\n posOpts,\n triggerRect,\n popupRect,\n boundaryRect,\n offsets,\n TooltipCSSVars\n ) as CSSProperties\n );\n }\n\n measure();\n const triggerEl = tooltip.triggerElement;\n const popupEl = internalRef.current;\n\n let rafId = 0;\n function reposition(): void {\n cancelAnimationFrame(rafId);\n rafId = requestAnimationFrame(measure);\n }\n\n // Re-measure after the tooltip has entered the top layer and whenever\n // its own size or the trigger size changes.\n reposition();\n\n const resizeObserver =\n typeof ResizeObserver === 'function'\n ? new ResizeObserver(() => {\n reposition();\n })\n : null;\n\n if (triggerEl && resizeObserver) {\n resizeObserver.observe(triggerEl);\n }\n\n if (popupEl && resizeObserver) {\n resizeObserver.observe(popupEl);\n }\n\n window.addEventListener('scroll', reposition, { capture: true, passive: true });\n window.addEventListener('resize', reposition);\n\n return () => {\n cancelAnimationFrame(rafId);\n resizeObserver?.disconnect();\n window.removeEventListener('scroll', reposition, true);\n window.removeEventListener('resize', reposition);\n };\n }, [state.open, anchorName, posOpts, tooltip]);\n\n // Anchor path uses computed styles; manual path uses measured styles;\n // fallback resets UA [popover] defaults until positioning is computed.\n const positioningStyle = anchorStyle ?? manualStyle ?? POPUP_RESET;\n\n // --- Visibility ---\n\n if (!state.open) {\n return null;\n }\n\n // Remap DOM focus events to React synthetic event names.\n const { onFocusOut, ...restPopupProps } = tooltip.popupProps;\n\n return renderElement(\n 'div',\n { render, className, style },\n {\n state,\n stateAttrMap,\n ref: composedRef,\n props: [\n {\n id: popupId,\n style: positioningStyle,\n ...core.getPopupAttrs(state),\n },\n { ...restPopupProps, onBlur: onFocusOut },\n elementProps,\n ],\n }\n );\n});\n\nexport namespace TooltipPopup {\n export type Props = TooltipPopupProps;\n export type State = TooltipState;\n}\n"],"mappings":";;;;;;;;;;;AAgBA,MAAM,cAA6B;CAAE,UAAU;CAAS,OAAO;CAAQ,QAAQ;CAAG;;AAGlF,MAAa,eAAe,WAA8C,SAAS,aACjF,EAAE,QAAQ,WAAW,OAAO,GAAG,gBAC/B,cACA;CACA,MAAM,EAAE,MAAM,SAAS,OAAO,cAAc,YAAY,YAAY,mBAAmB;CACvF,MAAM,cAAc,OAAuB,KAAK;CAYhD,MAAM,cAAc,gBAAgB,cAVnB,aACd,OAA8B;AAC7B,UAAQ,gBAAgB,GAAG;AAC3B,MAAI,MAAM,2BAA2B,CACnC,IAAG,MAAM,YAAY,mBAAmB,KAAK,aAAa;IAG9D,CAAC,SAAS,WAAW,CACtB,EAE2D,YAAY;CAIxE,MAAM,UAAU,eAAe;EAAE,MAAM,MAAM;EAAM,OAAO,MAAM;EAAO,GAAG,CAAC,MAAM,MAAM,MAAM,MAAM,CAAC;CAKpG,MAAM,cAAc,cAAc;AAChC,MAAI,CAAC,2BAA2B,CAAE,QAAO;EACzC,MAAM,EAAE,gBAAgB,GAAG,GAAG,SAAS,uBACrC,YACA,SACA,QACA,QACA,QACA,QACA,eACD;AACD,SAAO;IACN,CAAC,YAAY,QAAQ,CAAC;CAGzB,MAAM,CAAC,aAAa,kBAAkB,SAA+B,KAAK;AAE1E,uBAAsB;AACpB,MAAI,2BAA2B,CAAE;AACjC,MAAI,CAAC,MAAM,MAAM;AACf,kBAAe,KAAK;AACpB;;EAGF,SAAS,UAAgB;GACvB,MAAM,YAAY,QAAQ;GAC1B,MAAM,UAAU,YAAY;AAC5B,OAAI,CAAC,aAAa,CAAC,QAAS;AAO5B,kBACE,uBACE,YACA,SARgB,UAAU,uBAAuB,EACnC,qBAAqB,QAAQ,EAC1B,SAAS,gBAAgB,uBAAuB,EACrD,eAAe,SAAS,eAAe,EAUnD,eACD,CACF;;AAGH,WAAS;EACT,MAAM,YAAY,QAAQ;EAC1B,MAAM,UAAU,YAAY;EAE5B,IAAI,QAAQ;EACZ,SAAS,aAAmB;AAC1B,wBAAqB,MAAM;AAC3B,WAAQ,sBAAsB,QAAQ;;AAKxC,cAAY;EAEZ,MAAM,iBACJ,OAAO,mBAAmB,aACtB,IAAI,qBAAqB;AACvB,eAAY;IACZ,GACF;AAEN,MAAI,aAAa,eACf,gBAAe,QAAQ,UAAU;AAGnC,MAAI,WAAW,eACb,gBAAe,QAAQ,QAAQ;AAGjC,SAAO,iBAAiB,UAAU,YAAY;GAAE,SAAS;GAAM,SAAS;GAAM,CAAC;AAC/E,SAAO,iBAAiB,UAAU,WAAW;AAE7C,eAAa;AACX,wBAAqB,MAAM;AAC3B,mBAAgB,YAAY;AAC5B,UAAO,oBAAoB,UAAU,YAAY,KAAK;AACtD,UAAO,oBAAoB,UAAU,WAAW;;IAEjD;EAAC,MAAM;EAAM;EAAY;EAAS;EAAQ,CAAC;CAI9C,MAAM,mBAAmB,eAAe,eAAe;AAIvD,KAAI,CAAC,MAAM,KACT,QAAO;CAIT,MAAM,EAAE,YAAY,GAAG,mBAAmB,QAAQ;AAElD,QAAO,cACL,OACA;EAAE;EAAQ;EAAW;EAAO,EAC5B;EACE;EACA;EACA,KAAK;EACL,OAAO;GACL;IACE,IAAI;IACJ,OAAO;IACP,GAAG,KAAK,cAAc,MAAM;IAC7B;GACD;IAAE,GAAG;IAAgB,QAAQ;IAAY;GACzC;GACD;EACF,CACF;EACD"}
1
+ {"version":3,"file":"tooltip-popup.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-popup.tsx"],"sourcesContent":["'use client';\n\nimport type { TooltipState } from '@videojs/core';\nimport { TooltipCSSVars } from '@videojs/core';\nimport { getAnchorPositionStyle, getPopupPositionRect, resolveOffsets } from '@videojs/core/dom';\nimport { supportsAnchorPositioning } from '@videojs/utils/dom';\nimport type { CSSProperties } from 'react';\nimport { forwardRef, useCallback, useLayoutEffect, useMemo, useRef, useState } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { renderElement } from '../../utils/use-render';\nimport { useTooltipContext } from './context';\n\nexport interface TooltipPopupProps extends UIComponentProps<'div', TooltipState> {}\n\nconst POPUP_RESET: CSSProperties = { position: 'fixed', inset: 'auto', margin: 0 };\n\n/** Container for the tooltip content. Positioned relative to the trigger using CSS anchor positioning with a JavaScript fallback. */\nexport const TooltipPopup = forwardRef<HTMLDivElement, TooltipPopupProps>(function TooltipPopup(\n { render, className, style, ...elementProps },\n forwardedRef\n) {\n const { core, tooltip, state, stateAttrMap, anchorName, popupId } = useTooltipContext();\n const internalRef = useRef<HTMLDivElement>(null);\n\n const popupRef = useCallback(\n (el: HTMLDivElement | null) => {\n tooltip.setPopupElement(el);\n if (el && supportsAnchorPositioning()) {\n el.style.setProperty('position-anchor', `--${anchorName}`);\n }\n },\n [tooltip, anchorName]\n );\n\n const composedRef = useComposedRefs(forwardedRef, popupRef, internalRef);\n\n // --- Positioning ---\n\n const posOpts = useMemo(() => ({ side: state.side, align: state.align }), [state.side, state.align]);\n\n // CSS Anchor Positioning — computed from state, no measurement needed.\n // `position-anchor` is set imperatively in the ref callback above\n // because React's style prop silently drops unrecognised CSS properties.\n const anchorStyle = useMemo(() => {\n if (!supportsAnchorPositioning()) return null;\n const { positionAnchor: _, ...rest } = getAnchorPositionStyle(\n anchorName,\n posOpts,\n undefined,\n undefined,\n undefined,\n undefined,\n TooltipCSSVars\n );\n return rest as CSSProperties;\n }, [anchorName, posOpts]);\n\n // Manual fallback — measure rects after layout, before paint.\n const [manualStyle, setManualStyle] = useState<CSSProperties | null>(null);\n\n useLayoutEffect(() => {\n if (supportsAnchorPositioning()) return;\n if (!state.open) {\n setManualStyle(null);\n return;\n }\n\n function measure(): void {\n const triggerEl = tooltip.triggerElement;\n const popupEl = internalRef.current;\n if (!triggerEl || !popupEl) return;\n\n const triggerRect = triggerEl.getBoundingClientRect();\n const popupRect = getPopupPositionRect(popupEl);\n const boundaryRect = document.documentElement.getBoundingClientRect();\n const offsets = resolveOffsets(popupEl, TooltipCSSVars);\n\n setManualStyle(\n getAnchorPositionStyle(\n anchorName,\n posOpts,\n triggerRect,\n popupRect,\n boundaryRect,\n offsets,\n TooltipCSSVars\n ) as CSSProperties\n );\n }\n\n measure();\n const triggerEl = tooltip.triggerElement;\n const popupEl = internalRef.current;\n\n let rafId = 0;\n function reposition(): void {\n cancelAnimationFrame(rafId);\n rafId = requestAnimationFrame(measure);\n }\n\n // Re-measure after the tooltip has entered the top layer and whenever\n // its own size or the trigger size changes.\n reposition();\n\n const resizeObserver =\n typeof ResizeObserver === 'function'\n ? new ResizeObserver(() => {\n reposition();\n })\n : null;\n\n if (triggerEl && resizeObserver) {\n resizeObserver.observe(triggerEl);\n }\n\n if (popupEl && resizeObserver) {\n resizeObserver.observe(popupEl);\n }\n\n window.addEventListener('scroll', reposition, { capture: true, passive: true });\n window.addEventListener('resize', reposition);\n\n return () => {\n cancelAnimationFrame(rafId);\n resizeObserver?.disconnect();\n window.removeEventListener('scroll', reposition, true);\n window.removeEventListener('resize', reposition);\n };\n }, [state.open, anchorName, posOpts, tooltip]);\n\n // Anchor path uses computed styles; manual path uses measured styles;\n // fallback resets UA [popover] defaults until positioning is computed.\n const positioningStyle = anchorStyle ?? manualStyle ?? POPUP_RESET;\n\n // --- Visibility ---\n\n if (!state.open) {\n return null;\n }\n\n // Remap DOM focus events to React synthetic event names.\n const { onFocusOut, ...restPopupProps } = tooltip.popupProps;\n\n return renderElement(\n 'div',\n { render, className, style },\n {\n state,\n stateAttrMap,\n ref: composedRef,\n props: [\n {\n id: popupId,\n style: positioningStyle,\n ...core.getPopupAttrs(state),\n },\n { ...restPopupProps, onBlur: onFocusOut },\n elementProps,\n ],\n }\n );\n});\n\nexport namespace TooltipPopup {\n export type Props = TooltipPopupProps;\n export type State = TooltipState;\n}\n"],"mappings":";;;;;;;;;AAgBA,MAAM,cAA6B;CAAE,UAAU;CAAS,OAAO;CAAQ,QAAQ;CAAG;;AAGlF,MAAa,eAAe,WAA8C,SAAS,aACjF,EAAE,QAAQ,WAAW,OAAO,GAAG,gBAC/B,cACA;CACA,MAAM,EAAE,MAAM,SAAS,OAAO,cAAc,YAAY,YAAY,mBAAmB;CACvF,MAAM,cAAc,OAAuB,KAAK;CAYhD,MAAM,cAAc,gBAAgB,cAVnB,aACd,OAA8B;AAC7B,UAAQ,gBAAgB,GAAG;AAC3B,MAAI,MAAM,2BAA2B,CACnC,IAAG,MAAM,YAAY,mBAAmB,KAAK,aAAa;IAG9D,CAAC,SAAS,WAAW,CACtB,EAE2D,YAAY;CAIxE,MAAM,UAAU,eAAe;EAAE,MAAM,MAAM;EAAM,OAAO,MAAM;EAAO,GAAG,CAAC,MAAM,MAAM,MAAM,MAAM,CAAC;CAKpG,MAAM,cAAc,cAAc;AAChC,MAAI,CAAC,2BAA2B,CAAE,QAAO;EACzC,MAAM,EAAE,gBAAgB,GAAG,GAAG,SAAS,uBACrC,YACA,SACA,KAAA,GACA,KAAA,GACA,KAAA,GACA,KAAA,GACA,eACD;AACD,SAAO;IACN,CAAC,YAAY,QAAQ,CAAC;CAGzB,MAAM,CAAC,aAAa,kBAAkB,SAA+B,KAAK;AAE1E,uBAAsB;AACpB,MAAI,2BAA2B,CAAE;AACjC,MAAI,CAAC,MAAM,MAAM;AACf,kBAAe,KAAK;AACpB;;EAGF,SAAS,UAAgB;GACvB,MAAM,YAAY,QAAQ;GAC1B,MAAM,UAAU,YAAY;AAC5B,OAAI,CAAC,aAAa,CAAC,QAAS;AAO5B,kBACE,uBACE,YACA,SARgB,UAAU,uBAAuB,EACnC,qBAAqB,QAAQ,EAC1B,SAAS,gBAAgB,uBAAuB,EACrD,eAAe,SAAS,eAAe,EAUnD,eACD,CACF;;AAGH,WAAS;EACT,MAAM,YAAY,QAAQ;EAC1B,MAAM,UAAU,YAAY;EAE5B,IAAI,QAAQ;EACZ,SAAS,aAAmB;AAC1B,wBAAqB,MAAM;AAC3B,WAAQ,sBAAsB,QAAQ;;AAKxC,cAAY;EAEZ,MAAM,iBACJ,OAAO,mBAAmB,aACtB,IAAI,qBAAqB;AACvB,eAAY;IACZ,GACF;AAEN,MAAI,aAAa,eACf,gBAAe,QAAQ,UAAU;AAGnC,MAAI,WAAW,eACb,gBAAe,QAAQ,QAAQ;AAGjC,SAAO,iBAAiB,UAAU,YAAY;GAAE,SAAS;GAAM,SAAS;GAAM,CAAC;AAC/E,SAAO,iBAAiB,UAAU,WAAW;AAE7C,eAAa;AACX,wBAAqB,MAAM;AAC3B,mBAAgB,YAAY;AAC5B,UAAO,oBAAoB,UAAU,YAAY,KAAK;AACtD,UAAO,oBAAoB,UAAU,WAAW;;IAEjD;EAAC,MAAM;EAAM;EAAY;EAAS;EAAQ,CAAC;CAI9C,MAAM,mBAAmB,eAAe,eAAe;AAIvD,KAAI,CAAC,MAAM,KACT,QAAO;CAIT,MAAM,EAAE,YAAY,GAAG,mBAAmB,QAAQ;AAElD,QAAO,cACL,OACA;EAAE;EAAQ;EAAW;EAAO,EAC5B;EACE;EACA;EACA,KAAK;EACL,OAAO;GACL;IACE,IAAI;IACJ,OAAO;IACP,GAAG,KAAK,cAAc,MAAM;IAC7B;GACD;IAAE,GAAG;IAAgB,QAAQ;IAAY;GACzC;GACD;EACF,CACF;EACD"}
@@ -1,10 +1,8 @@
1
- 'use client';
2
-
1
+ "use client";
3
2
  import { TooltipGroupContextProvider } from "./group-context.js";
4
3
  import { TooltipGroupCore } from "@videojs/core";
5
4
  import { useState } from "react";
6
5
  import { jsx } from "react/jsx-runtime";
7
-
8
6
  //#region src/ui/tooltip/tooltip-provider.tsx
9
7
  function TooltipProvider({ delay, closeDelay, timeout, children }) {
10
8
  const [group] = useState(() => new TooltipGroupCore({
@@ -22,7 +20,7 @@ function TooltipProvider({ delay, closeDelay, timeout, children }) {
22
20
  children
23
21
  });
24
22
  }
25
-
26
23
  //#endregion
27
24
  export { TooltipProvider };
25
+
28
26
  //# sourceMappingURL=tooltip-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip-provider.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-provider.tsx"],"sourcesContent":["'use client';\n\nimport { TooltipGroupCore, type TooltipGroupProps } from '@videojs/core';\nimport type { ReactNode } from 'react';\nimport { useState } from 'react';\n\nimport { TooltipGroupContextProvider } from './group-context';\n\nexport interface TooltipProviderProps extends TooltipGroupProps {\n children?: ReactNode;\n}\n\nexport function TooltipProvider({ delay, closeDelay, timeout, children }: TooltipProviderProps): ReactNode {\n const [group] = useState(() => new TooltipGroupCore({ delay, closeDelay, timeout }));\n group.setProps({ delay, closeDelay, timeout });\n\n return <TooltipGroupContextProvider value={{ group }}>{children}</TooltipGroupContextProvider>;\n}\n\nexport namespace TooltipProvider {\n export type Props = TooltipProviderProps;\n}\n"],"mappings":";;;;;;;;AAYA,SAAgB,gBAAgB,EAAE,OAAO,YAAY,SAAS,YAA6C;CACzG,MAAM,CAAC,SAAS,eAAe,IAAI,iBAAiB;EAAE;EAAO;EAAY;EAAS,CAAC,CAAC;AACpF,OAAM,SAAS;EAAE;EAAO;EAAY;EAAS,CAAC;AAE9C,QAAO,oBAAC;EAA4B,OAAO,EAAE,OAAO;EAAG;GAAuC"}
1
+ {"version":3,"file":"tooltip-provider.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-provider.tsx"],"sourcesContent":["'use client';\n\nimport { TooltipGroupCore, type TooltipGroupProps } from '@videojs/core';\nimport type { ReactNode } from 'react';\nimport { useState } from 'react';\n\nimport { TooltipGroupContextProvider } from './group-context';\n\nexport interface TooltipProviderProps extends TooltipGroupProps {\n children?: ReactNode;\n}\n\nexport function TooltipProvider({ delay, closeDelay, timeout, children }: TooltipProviderProps): ReactNode {\n const [group] = useState(() => new TooltipGroupCore({ delay, closeDelay, timeout }));\n group.setProps({ delay, closeDelay, timeout });\n\n return <TooltipGroupContextProvider value={{ group }}>{children}</TooltipGroupContextProvider>;\n}\n\nexport namespace TooltipProvider {\n export type Props = TooltipProviderProps;\n}\n"],"mappings":";;;;;;AAYA,SAAgB,gBAAgB,EAAE,OAAO,YAAY,SAAS,YAA6C;CACzG,MAAM,CAAC,SAAS,eAAe,IAAI,iBAAiB;EAAE;EAAO;EAAY;EAAS,CAAC,CAAC;AACpF,OAAM,SAAS;EAAE;EAAO;EAAY;EAAS,CAAC;AAE9C,QAAO,oBAAC,6BAAD;EAA6B,OAAO,EAAE,OAAO;EAAG;EAAuC,CAAA"}
@@ -1,5 +1,4 @@
1
- 'use client';
2
-
1
+ "use client";
3
2
  import { useLatestRef } from "../../utils/use-latest-ref.js";
4
3
  import { useDestroy } from "../../utils/use-destroy.js";
5
4
  import { useSafeId } from "../../utils/use-safe-id.js";
@@ -10,7 +9,6 @@ import { createTooltip, createTransition } from "@videojs/core/dom";
10
9
  import { useSnapshot } from "@videojs/store/react";
11
10
  import { useEffect, useState } from "react";
12
11
  import { jsx } from "react/jsx-runtime";
13
-
14
12
  //#region src/ui/tooltip/tooltip-root.tsx
15
13
  function TooltipRoot({ open: controlledOpen, defaultOpen = TooltipCore.defaultProps.defaultOpen, onOpenChange: onOpenChangeProp, onOpenChangeComplete: onOpenChangeCompleteProp, delay = TooltipCore.defaultProps.delay, closeDelay = TooltipCore.defaultProps.closeDelay, disableHoverablePopup = TooltipCore.defaultProps.disableHoverablePopup, disabled = TooltipCore.defaultProps.disabled, children, ...coreProps }) {
16
14
  const [core] = useState(() => new TooltipCore(coreProps));
@@ -43,7 +41,7 @@ function TooltipRoot({ open: controlledOpen, defaultOpen = TooltipCore.defaultPr
43
41
  return instance;
44
42
  });
45
43
  const anchorName = useSafeId();
46
- const popupId = useSafeId("tooltip-");
44
+ const popupId = useSafeId("tooltip");
47
45
  useEffect(() => {
48
46
  if (controlledOpen === void 0) return;
49
47
  const { active: inputOpen } = tooltip.input.current;
@@ -66,7 +64,7 @@ function TooltipRoot({ open: controlledOpen, defaultOpen = TooltipCore.defaultPr
66
64
  children
67
65
  });
68
66
  }
69
-
70
67
  //#endregion
71
68
  export { TooltipRoot };
69
+
72
70
  //# sourceMappingURL=tooltip-root.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip-root.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-root.tsx"],"sourcesContent":["'use client';\n\nimport { type TooltipProps as CoreTooltipProps, TooltipCore, TooltipDataAttrs } from '@videojs/core';\nimport { createTooltip, createTransition, type TooltipChangeDetails } from '@videojs/core/dom';\nimport { useSnapshot } from '@videojs/store/react';\nimport type { ReactNode } from 'react';\nimport { useEffect, useState } from 'react';\n\nimport { useDestroy } from '../../utils/use-destroy';\nimport { useLatestRef } from '../../utils/use-latest-ref';\nimport { useSafeId } from '../../utils/use-safe-id';\nimport { TooltipContextProvider } from './context';\nimport { useTooltipGroup } from './group-context';\n\nexport interface TooltipRootProps extends CoreTooltipProps {\n /** Called when the tooltip open state changes (fires immediately, before animations). */\n onOpenChange?: (open: boolean, details: TooltipChangeDetails) => void;\n /** Called after open/close animations complete. */\n onOpenChangeComplete?: (open: boolean) => void;\n children?: ReactNode;\n}\n\nexport function TooltipRoot({\n open: controlledOpen,\n defaultOpen = TooltipCore.defaultProps.defaultOpen,\n onOpenChange: onOpenChangeProp,\n onOpenChangeComplete: onOpenChangeCompleteProp,\n delay = TooltipCore.defaultProps.delay,\n closeDelay = TooltipCore.defaultProps.closeDelay,\n disableHoverablePopup = TooltipCore.defaultProps.disableHoverablePopup,\n disabled = TooltipCore.defaultProps.disabled,\n children,\n ...coreProps\n}: TooltipRootProps): ReactNode {\n const [core] = useState(() => new TooltipCore(coreProps));\n core.setProps(coreProps);\n\n const isControlled = controlledOpen !== undefined;\n\n const groupFromContext = useTooltipGroup();\n\n // Keep refs that always point to the latest values so the\n // createTooltip closure never reads stale props.\n const onOpenChangeRef = useLatestRef(onOpenChangeProp);\n const onOpenChangeCompleteRef = useLatestRef(onOpenChangeCompleteProp);\n const delayRef = useLatestRef(delay);\n const closeDelayRef = useLatestRef(closeDelay);\n const disableHoverablePopupRef = useLatestRef(disableHoverablePopup);\n const disabledRef = useLatestRef(disabled);\n const groupRef = useLatestRef(groupFromContext);\n\n const [tooltip] = useState(() => {\n const instance = createTooltip({\n transition: createTransition(),\n onOpenChange: (nextOpen: boolean, details: TooltipChangeDetails) => {\n onOpenChangeRef.current?.(nextOpen, details);\n },\n onOpenChangeComplete: (nextOpen: boolean) => {\n onOpenChangeCompleteRef.current?.(nextOpen);\n },\n delay: () => delayRef.current,\n closeDelay: () => closeDelayRef.current,\n disableHoverablePopup: () => disableHoverablePopupRef.current,\n disabled: () => disabledRef.current,\n group: () => groupRef.current,\n });\n\n // Apply defaultOpen on creation (uncontrolled only)\n if (!isControlled && defaultOpen) {\n instance.open();\n }\n\n return instance;\n });\n\n const anchorName = useSafeId();\n const popupId = useSafeId('tooltip-');\n\n // Sync controlled open prop -> internal input state.\n useEffect(() => {\n if (controlledOpen === undefined) return;\n\n const { active: inputOpen } = tooltip.input.current;\n if (controlledOpen === inputOpen) return;\n\n if (controlledOpen) {\n tooltip.open();\n } else {\n tooltip.close();\n }\n }, [controlledOpen, tooltip]);\n\n useDestroy(tooltip);\n\n const input = useSnapshot(tooltip.input);\n core.setInput(input);\n const state = core.getState();\n\n return (\n <TooltipContextProvider value={{ core, tooltip, state, stateAttrMap: TooltipDataAttrs, anchorName, popupId }}>\n {children}\n </TooltipContextProvider>\n );\n}\n\nexport namespace TooltipRoot {\n export type Props = TooltipRootProps;\n}\n"],"mappings":";;;;;;;;;;;;;;AAsBA,SAAgB,YAAY,EAC1B,MAAM,gBACN,cAAc,YAAY,aAAa,aACvC,cAAc,kBACd,sBAAsB,0BACtB,QAAQ,YAAY,aAAa,OACjC,aAAa,YAAY,aAAa,YACtC,wBAAwB,YAAY,aAAa,uBACjD,WAAW,YAAY,aAAa,UACpC,UACA,GAAG,aAC2B;CAC9B,MAAM,CAAC,QAAQ,eAAe,IAAI,YAAY,UAAU,CAAC;AACzD,MAAK,SAAS,UAAU;CAExB,MAAM,eAAe,mBAAmB;CAExC,MAAM,mBAAmB,iBAAiB;CAI1C,MAAM,kBAAkB,aAAa,iBAAiB;CACtD,MAAM,0BAA0B,aAAa,yBAAyB;CACtE,MAAM,WAAW,aAAa,MAAM;CACpC,MAAM,gBAAgB,aAAa,WAAW;CAC9C,MAAM,2BAA2B,aAAa,sBAAsB;CACpE,MAAM,cAAc,aAAa,SAAS;CAC1C,MAAM,WAAW,aAAa,iBAAiB;CAE/C,MAAM,CAAC,WAAW,eAAe;EAC/B,MAAM,WAAW,cAAc;GAC7B,YAAY,kBAAkB;GAC9B,eAAe,UAAmB,YAAkC;AAClE,oBAAgB,UAAU,UAAU,QAAQ;;GAE9C,uBAAuB,aAAsB;AAC3C,4BAAwB,UAAU,SAAS;;GAE7C,aAAa,SAAS;GACtB,kBAAkB,cAAc;GAChC,6BAA6B,yBAAyB;GACtD,gBAAgB,YAAY;GAC5B,aAAa,SAAS;GACvB,CAAC;AAGF,MAAI,CAAC,gBAAgB,YACnB,UAAS,MAAM;AAGjB,SAAO;GACP;CAEF,MAAM,aAAa,WAAW;CAC9B,MAAM,UAAU,UAAU,WAAW;AAGrC,iBAAgB;AACd,MAAI,mBAAmB,OAAW;EAElC,MAAM,EAAE,QAAQ,cAAc,QAAQ,MAAM;AAC5C,MAAI,mBAAmB,UAAW;AAElC,MAAI,eACF,SAAQ,MAAM;MAEd,SAAQ,OAAO;IAEhB,CAAC,gBAAgB,QAAQ,CAAC;AAE7B,YAAW,QAAQ;CAEnB,MAAM,QAAQ,YAAY,QAAQ,MAAM;AACxC,MAAK,SAAS,MAAM;AAGpB,QACE,oBAAC;EAAuB,OAAO;GAAE;GAAM;GAAS,OAHpC,KAAK,UAAU;GAG4B,cAAc;GAAkB;GAAY;GAAS;EACzG;GACsB"}
1
+ {"version":3,"file":"tooltip-root.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-root.tsx"],"sourcesContent":["'use client';\n\nimport { type TooltipProps as CoreTooltipProps, TooltipCore, TooltipDataAttrs } from '@videojs/core';\nimport { createTooltip, createTransition, type TooltipChangeDetails } from '@videojs/core/dom';\nimport { useSnapshot } from '@videojs/store/react';\nimport type { ReactNode } from 'react';\nimport { useEffect, useState } from 'react';\n\nimport { useDestroy } from '../../utils/use-destroy';\nimport { useLatestRef } from '../../utils/use-latest-ref';\nimport { useSafeId } from '../../utils/use-safe-id';\nimport { TooltipContextProvider } from './context';\nimport { useTooltipGroup } from './group-context';\n\nexport interface TooltipRootProps extends CoreTooltipProps {\n /** Called when the tooltip open state changes (fires immediately, before animations). */\n onOpenChange?: (open: boolean, details: TooltipChangeDetails) => void;\n /** Called after open/close animations complete. */\n onOpenChangeComplete?: (open: boolean) => void;\n children?: ReactNode;\n}\n\nexport function TooltipRoot({\n open: controlledOpen,\n defaultOpen = TooltipCore.defaultProps.defaultOpen,\n onOpenChange: onOpenChangeProp,\n onOpenChangeComplete: onOpenChangeCompleteProp,\n delay = TooltipCore.defaultProps.delay,\n closeDelay = TooltipCore.defaultProps.closeDelay,\n disableHoverablePopup = TooltipCore.defaultProps.disableHoverablePopup,\n disabled = TooltipCore.defaultProps.disabled,\n children,\n ...coreProps\n}: TooltipRootProps): ReactNode {\n const [core] = useState(() => new TooltipCore(coreProps));\n core.setProps(coreProps);\n\n const isControlled = controlledOpen !== undefined;\n\n const groupFromContext = useTooltipGroup();\n\n // Keep refs that always point to the latest values so the\n // createTooltip closure never reads stale props.\n const onOpenChangeRef = useLatestRef(onOpenChangeProp);\n const onOpenChangeCompleteRef = useLatestRef(onOpenChangeCompleteProp);\n const delayRef = useLatestRef(delay);\n const closeDelayRef = useLatestRef(closeDelay);\n const disableHoverablePopupRef = useLatestRef(disableHoverablePopup);\n const disabledRef = useLatestRef(disabled);\n const groupRef = useLatestRef(groupFromContext);\n\n const [tooltip] = useState(() => {\n const instance = createTooltip({\n transition: createTransition(),\n onOpenChange: (nextOpen: boolean, details: TooltipChangeDetails) => {\n onOpenChangeRef.current?.(nextOpen, details);\n },\n onOpenChangeComplete: (nextOpen: boolean) => {\n onOpenChangeCompleteRef.current?.(nextOpen);\n },\n delay: () => delayRef.current,\n closeDelay: () => closeDelayRef.current,\n disableHoverablePopup: () => disableHoverablePopupRef.current,\n disabled: () => disabledRef.current,\n group: () => groupRef.current,\n });\n\n // Apply defaultOpen on creation (uncontrolled only)\n if (!isControlled && defaultOpen) {\n instance.open();\n }\n\n return instance;\n });\n\n const anchorName = useSafeId();\n const popupId = useSafeId('tooltip');\n\n // Sync controlled open prop -> internal input state.\n useEffect(() => {\n if (controlledOpen === undefined) return;\n\n const { active: inputOpen } = tooltip.input.current;\n if (controlledOpen === inputOpen) return;\n\n if (controlledOpen) {\n tooltip.open();\n } else {\n tooltip.close();\n }\n }, [controlledOpen, tooltip]);\n\n useDestroy(tooltip);\n\n const input = useSnapshot(tooltip.input);\n core.setInput(input);\n const state = core.getState();\n\n return (\n <TooltipContextProvider value={{ core, tooltip, state, stateAttrMap: TooltipDataAttrs, anchorName, popupId }}>\n {children}\n </TooltipContextProvider>\n );\n}\n\nexport namespace TooltipRoot {\n export type Props = TooltipRootProps;\n}\n"],"mappings":";;;;;;;;;;;;AAsBA,SAAgB,YAAY,EAC1B,MAAM,gBACN,cAAc,YAAY,aAAa,aACvC,cAAc,kBACd,sBAAsB,0BACtB,QAAQ,YAAY,aAAa,OACjC,aAAa,YAAY,aAAa,YACtC,wBAAwB,YAAY,aAAa,uBACjD,WAAW,YAAY,aAAa,UACpC,UACA,GAAG,aAC2B;CAC9B,MAAM,CAAC,QAAQ,eAAe,IAAI,YAAY,UAAU,CAAC;AACzD,MAAK,SAAS,UAAU;CAExB,MAAM,eAAe,mBAAmB,KAAA;CAExC,MAAM,mBAAmB,iBAAiB;CAI1C,MAAM,kBAAkB,aAAa,iBAAiB;CACtD,MAAM,0BAA0B,aAAa,yBAAyB;CACtE,MAAM,WAAW,aAAa,MAAM;CACpC,MAAM,gBAAgB,aAAa,WAAW;CAC9C,MAAM,2BAA2B,aAAa,sBAAsB;CACpE,MAAM,cAAc,aAAa,SAAS;CAC1C,MAAM,WAAW,aAAa,iBAAiB;CAE/C,MAAM,CAAC,WAAW,eAAe;EAC/B,MAAM,WAAW,cAAc;GAC7B,YAAY,kBAAkB;GAC9B,eAAe,UAAmB,YAAkC;AAClE,oBAAgB,UAAU,UAAU,QAAQ;;GAE9C,uBAAuB,aAAsB;AAC3C,4BAAwB,UAAU,SAAS;;GAE7C,aAAa,SAAS;GACtB,kBAAkB,cAAc;GAChC,6BAA6B,yBAAyB;GACtD,gBAAgB,YAAY;GAC5B,aAAa,SAAS;GACvB,CAAC;AAGF,MAAI,CAAC,gBAAgB,YACnB,UAAS,MAAM;AAGjB,SAAO;GACP;CAEF,MAAM,aAAa,WAAW;CAC9B,MAAM,UAAU,UAAU,UAAU;AAGpC,iBAAgB;AACd,MAAI,mBAAmB,KAAA,EAAW;EAElC,MAAM,EAAE,QAAQ,cAAc,QAAQ,MAAM;AAC5C,MAAI,mBAAmB,UAAW;AAElC,MAAI,eACF,SAAQ,MAAM;MAEd,SAAQ,OAAO;IAEhB,CAAC,gBAAgB,QAAQ,CAAC;AAE7B,YAAW,QAAQ;CAEnB,MAAM,QAAQ,YAAY,QAAQ,MAAM;AACxC,MAAK,SAAS,MAAM;AAGpB,QACE,oBAAC,wBAAD;EAAwB,OAAO;GAAE;GAAM;GAAS,OAHpC,KAAK,UAAU;GAG4B,cAAc;GAAkB;GAAY;GAAS;EACzG;EACsB,CAAA"}
@@ -1,10 +1,8 @@
1
- 'use client';
2
-
1
+ "use client";
3
2
  import { renderElement } from "../../utils/use-render.js";
4
3
  import { useTooltipContext } from "./context.js";
5
4
  import { forwardRef, useCallback } from "react";
6
5
  import { supportsAnchorPositioning } from "@videojs/utils/dom";
7
-
8
6
  //#region src/ui/tooltip/tooltip-trigger.tsx
9
7
  /** Element that triggers the tooltip on hover and focus. Renders a `<button>` element. */
10
8
  const TooltipTrigger = forwardRef(function TooltipTrigger({ render, className, style, ...elementProps }, forwardedRef) {
@@ -36,7 +34,7 @@ const TooltipTrigger = forwardRef(function TooltipTrigger({ render, className, s
36
34
  ]
37
35
  });
38
36
  });
39
-
40
37
  //#endregion
41
38
  export { TooltipTrigger };
39
+
42
40
  //# sourceMappingURL=tooltip-trigger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip-trigger.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-trigger.tsx"],"sourcesContent":["'use client';\n\nimport type { TooltipState } from '@videojs/core';\nimport { supportsAnchorPositioning } from '@videojs/utils/dom';\nimport { forwardRef, useCallback } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useTooltipContext } from './context';\n\nexport interface TooltipTriggerProps extends UIComponentProps<'button', TooltipState> {}\n\n/** Element that triggers the tooltip on hover and focus. Renders a `<button>` element. */\nexport const TooltipTrigger = forwardRef<HTMLButtonElement, TooltipTriggerProps>(function TooltipTrigger(\n { render, className, style, ...elementProps },\n forwardedRef\n) {\n const { core, tooltip, state, stateAttrMap, anchorName, popupId } = useTooltipContext();\n\n const triggerRef = useCallback(\n (el: HTMLButtonElement | null) => {\n tooltip.setTriggerElement(el);\n if (el && supportsAnchorPositioning()) {\n el.style.setProperty('anchor-name', `--${anchorName}`);\n }\n },\n [tooltip, anchorName]\n );\n\n // Remap DOM focus events to React synthetic event names.\n // createTooltip() uses onFocusIn/onFocusOut (matching DOM focusin/focusout),\n // but React maps those to onFocus/onBlur.\n const { onFocusIn, onFocusOut, ...restTriggerProps } = tooltip.triggerProps;\n\n return renderElement(\n 'button',\n { render, className, style },\n {\n state,\n stateAttrMap,\n ref: [forwardedRef, triggerRef],\n props: [\n {\n type: 'button' as const,\n ...core.getTriggerAttrs(state, popupId),\n },\n { ...restTriggerProps, onFocus: onFocusIn, onBlur: onFocusOut },\n elementProps,\n ],\n }\n );\n});\n\nexport namespace TooltipTrigger {\n export type Props = TooltipTriggerProps;\n export type State = TooltipState;\n}\n"],"mappings":";;;;;;;;;AAaA,MAAa,iBAAiB,WAAmD,SAAS,eACxF,EAAE,QAAQ,WAAW,OAAO,GAAG,gBAC/B,cACA;CACA,MAAM,EAAE,MAAM,SAAS,OAAO,cAAc,YAAY,YAAY,mBAAmB;CAEvF,MAAM,aAAa,aAChB,OAAiC;AAChC,UAAQ,kBAAkB,GAAG;AAC7B,MAAI,MAAM,2BAA2B,CACnC,IAAG,MAAM,YAAY,eAAe,KAAK,aAAa;IAG1D,CAAC,SAAS,WAAW,CACtB;CAKD,MAAM,EAAE,WAAW,YAAY,GAAG,qBAAqB,QAAQ;AAE/D,QAAO,cACL,UACA;EAAE;EAAQ;EAAW;EAAO,EAC5B;EACE;EACA;EACA,KAAK,CAAC,cAAc,WAAW;EAC/B,OAAO;GACL;IACE,MAAM;IACN,GAAG,KAAK,gBAAgB,OAAO,QAAQ;IACxC;GACD;IAAE,GAAG;IAAkB,SAAS;IAAW,QAAQ;IAAY;GAC/D;GACD;EACF,CACF;EACD"}
1
+ {"version":3,"file":"tooltip-trigger.js","names":[],"sources":["../../../../src/ui/tooltip/tooltip-trigger.tsx"],"sourcesContent":["'use client';\n\nimport type { TooltipState } from '@videojs/core';\nimport { supportsAnchorPositioning } from '@videojs/utils/dom';\nimport { forwardRef, useCallback } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useTooltipContext } from './context';\n\nexport interface TooltipTriggerProps extends UIComponentProps<'button', TooltipState> {}\n\n/** Element that triggers the tooltip on hover and focus. Renders a `<button>` element. */\nexport const TooltipTrigger = forwardRef<HTMLButtonElement, TooltipTriggerProps>(function TooltipTrigger(\n { render, className, style, ...elementProps },\n forwardedRef\n) {\n const { core, tooltip, state, stateAttrMap, anchorName, popupId } = useTooltipContext();\n\n const triggerRef = useCallback(\n (el: HTMLButtonElement | null) => {\n tooltip.setTriggerElement(el);\n if (el && supportsAnchorPositioning()) {\n el.style.setProperty('anchor-name', `--${anchorName}`);\n }\n },\n [tooltip, anchorName]\n );\n\n // Remap DOM focus events to React synthetic event names.\n // createTooltip() uses onFocusIn/onFocusOut (matching DOM focusin/focusout),\n // but React maps those to onFocus/onBlur.\n const { onFocusIn, onFocusOut, ...restTriggerProps } = tooltip.triggerProps;\n\n return renderElement(\n 'button',\n { render, className, style },\n {\n state,\n stateAttrMap,\n ref: [forwardedRef, triggerRef],\n props: [\n {\n type: 'button' as const,\n ...core.getTriggerAttrs(state, popupId),\n },\n { ...restTriggerProps, onFocus: onFocusIn, onBlur: onFocusOut },\n elementProps,\n ],\n }\n );\n});\n\nexport namespace TooltipTrigger {\n export type Props = TooltipTriggerProps;\n export type State = TooltipState;\n}\n"],"mappings":";;;;;;;AAaA,MAAa,iBAAiB,WAAmD,SAAS,eACxF,EAAE,QAAQ,WAAW,OAAO,GAAG,gBAC/B,cACA;CACA,MAAM,EAAE,MAAM,SAAS,OAAO,cAAc,YAAY,YAAY,mBAAmB;CAEvF,MAAM,aAAa,aAChB,OAAiC;AAChC,UAAQ,kBAAkB,GAAG;AAC7B,MAAI,MAAM,2BAA2B,CACnC,IAAG,MAAM,YAAY,eAAe,KAAK,aAAa;IAG1D,CAAC,SAAS,WAAW,CACtB;CAKD,MAAM,EAAE,WAAW,YAAY,GAAG,qBAAqB,QAAQ;AAE/D,QAAO,cACL,UACA;EAAE;EAAQ;EAAW;EAAO,EAC5B;EACE;EACA;EACA,KAAK,CAAC,cAAc,WAAW;EAC/B,OAAO;GACL;IACE,MAAM;IACN,GAAG,KAAK,gBAAgB,OAAO,QAAQ;IACxC;GACD;IAAE,GAAG;IAAkB,SAAS;IAAW,QAAQ;IAAY;GAC/D;GACD;EACF,CACF;EACD"}
@@ -1,3 +1,2 @@
1
1
  import { index_parts_exports } from "./index.parts.js";
2
-
3
- export { index_parts_exports as VolumeSlider };
2
+ export { index_parts_exports as VolumeSlider };
@@ -5,7 +5,6 @@ import { SliderThumb } from "../slider/slider-thumb.js";
5
5
  import { SliderTrack } from "../slider/slider-track.js";
6
6
  import { SliderValue } from "../slider/slider-value.js";
7
7
  import { VolumeSliderRoot } from "./volume-slider-root.js";
8
-
9
8
  //#region src/ui/volume-slider/index.parts.ts
10
9
  var index_parts_exports = /* @__PURE__ */ __exportAll({
11
10
  Fill: () => SliderFill,
@@ -15,7 +14,7 @@ var index_parts_exports = /* @__PURE__ */ __exportAll({
15
14
  Track: () => SliderTrack,
16
15
  Value: () => SliderValue
17
16
  });
18
-
19
17
  //#endregion
20
18
  export { index_parts_exports };
19
+
21
20
  //# sourceMappingURL=index.parts.js.map
@@ -1,5 +1,4 @@
1
- 'use client';
2
-
1
+ "use client";
3
2
  import { usePlayer } from "../../player/context.js";
4
3
  import { useLatestRef } from "../../utils/use-latest-ref.js";
5
4
  import { renderElement } from "../../utils/use-render.js";
@@ -9,7 +8,6 @@ import { VolumeSliderCore, VolumeSliderDataAttrs } from "@videojs/core";
9
8
  import { getSliderCSSVars, logMissingFeature, selectVolume } from "@videojs/core/dom";
10
9
  import { forwardRef, useState } from "react";
11
10
  import { jsx } from "react/jsx-runtime";
12
-
13
11
  //#region src/ui/volume-slider/volume-slider-root.tsx
14
12
  const noopVolume = {
15
13
  volume: 0,
@@ -86,7 +84,7 @@ const VolumeSliderRoot = forwardRef(function VolumeSliderRoot(componentProps, fo
86
84
  })
87
85
  });
88
86
  });
89
-
90
87
  //#endregion
91
88
  export { VolumeSliderRoot };
89
+
92
90
  //# sourceMappingURL=volume-slider-root.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"volume-slider-root.js","names":[],"sources":["../../../../src/ui/volume-slider/volume-slider-root.tsx"],"sourcesContent":["'use client';\n\nimport { VolumeSliderCore, VolumeSliderDataAttrs } from '@videojs/core';\nimport { getSliderCSSVars, logMissingFeature, selectVolume } from '@videojs/core/dom';\nimport { forwardRef, useState } from 'react';\n\nimport { usePlayer } from '../../player/context';\nimport type { UIComponentProps } from '../../utils/types';\nimport { useLatestRef } from '../../utils/use-latest-ref';\nimport { renderElement } from '../../utils/use-render';\nimport { useSlider } from '../hooks/use-slider';\nimport { SliderProvider } from '../slider/context';\n\nconst noopVolume = {\n volume: 0,\n muted: false,\n volumeAvailability: 'unsupported' as const,\n setVolume: () => 0,\n toggleMuted: () => false,\n};\n\nexport interface VolumeSliderRootProps extends UIComponentProps<'div', VolumeSliderCore.State>, VolumeSliderCore.Props {\n onDragStart?: (() => void) | undefined;\n onDragEnd?: (() => void) | undefined;\n}\n\nexport const VolumeSliderRoot = forwardRef<HTMLDivElement, VolumeSliderRootProps>(\n function VolumeSliderRoot(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n label,\n orientation,\n step = VolumeSliderCore.defaultProps.step,\n largeStep = VolumeSliderCore.defaultProps.largeStep,\n disabled,\n thumbAlignment,\n onDragStart,\n onDragEnd,\n ...elementProps\n } = componentProps;\n\n const volume = usePlayer(selectVolume);\n\n const [core] = useState(() => new VolumeSliderCore());\n core.setProps({ label, orientation, step, largeStep, disabled, thumbAlignment });\n\n // Keep a ref to the latest volume state for callbacks.\n const volumeRef = useLatestRef(volume);\n\n const { state, cssVars, rootRef, thumbRef, rootProps, rootStyle, thumbProps } = useSlider<VolumeSliderCore.State>({\n computeState: (input) => {\n core.setInput(input);\n core.setMedia(volume ?? noopVolume);\n return core.getState();\n },\n getPercent: () => (volume ? volume.volume * 100 : 0),\n getStepPercent: () => core.getStepPercent(),\n getLargeStepPercent: () => core.getLargeStepPercent(),\n orientation,\n disabled,\n adjustPercent: (rawPercent, thumbSize, trackSize) =>\n core.adjustPercentForAlignment(rawPercent, thumbSize, trackSize),\n getCSSVars: getSliderCSSVars,\n onValueChange: (percent) => {\n volumeRef.current?.setVolume(percent / 100);\n },\n onValueCommit: (percent) => {\n volumeRef.current?.setVolume(percent / 100);\n },\n onDragStart,\n onDragEnd,\n });\n\n if (!volume) {\n if (__DEV__) logMissingFeature('VolumeSlider', 'volume');\n return null;\n }\n\n return (\n <SliderProvider\n value={{\n state,\n pointerValue: core.valueFromPercent(state.pointerPercent),\n thumbRef,\n thumbProps,\n stateAttrMap: VolumeSliderDataAttrs,\n getAttrs: (sliderState) => core.getAttrs(sliderState as VolumeSliderCore.State),\n formatValue: (value) => `${Math.round(value)}%`,\n }}\n >\n {renderElement(\n 'div',\n { render, className, style },\n {\n state,\n stateAttrMap: VolumeSliderDataAttrs,\n ref: [forwardedRef, rootRef],\n props: [{ style: { ...cssVars, ...rootStyle } }, rootProps, elementProps],\n }\n )}\n </SliderProvider>\n );\n }\n);\n\nexport namespace VolumeSliderRoot {\n export type Props = VolumeSliderRootProps;\n export type State = VolumeSliderCore.State;\n}\n"],"mappings":";;;;;;;;;;;;;AAaA,MAAM,aAAa;CACjB,QAAQ;CACR,OAAO;CACP,oBAAoB;CACpB,iBAAiB;CACjB,mBAAmB;CACpB;AAOD,MAAa,mBAAmB,WAC9B,SAAS,iBAAiB,gBAAgB,cAAc;CACtD,MAAM,EACJ,QACA,WACA,OACA,OACA,aACA,OAAO,iBAAiB,aAAa,MACrC,YAAY,iBAAiB,aAAa,WAC1C,UACA,gBACA,aACA,WACA,GAAG,iBACD;CAEJ,MAAM,SAAS,UAAU,aAAa;CAEtC,MAAM,CAAC,QAAQ,eAAe,IAAI,kBAAkB,CAAC;AACrD,MAAK,SAAS;EAAE;EAAO;EAAa;EAAM;EAAW;EAAU;EAAgB,CAAC;CAGhF,MAAM,YAAY,aAAa,OAAO;CAEtC,MAAM,EAAE,OAAO,SAAS,SAAS,UAAU,WAAW,WAAW,eAAe,UAAkC;EAChH,eAAe,UAAU;AACvB,QAAK,SAAS,MAAM;AACpB,QAAK,SAAS,UAAU,WAAW;AACnC,UAAO,KAAK,UAAU;;EAExB,kBAAmB,SAAS,OAAO,SAAS,MAAM;EAClD,sBAAsB,KAAK,gBAAgB;EAC3C,2BAA2B,KAAK,qBAAqB;EACrD;EACA;EACA,gBAAgB,YAAY,WAAW,cACrC,KAAK,0BAA0B,YAAY,WAAW,UAAU;EAClE,YAAY;EACZ,gBAAgB,YAAY;AAC1B,aAAU,SAAS,UAAU,UAAU,IAAI;;EAE7C,gBAAgB,YAAY;AAC1B,aAAU,SAAS,UAAU,UAAU,IAAI;;EAE7C;EACA;EACD,CAAC;AAEF,KAAI,CAAC,QAAQ;AACE,oBAAkB,gBAAgB,SAAS;AACxD,SAAO;;AAGT,QACE,oBAAC;EACC,OAAO;GACL;GACA,cAAc,KAAK,iBAAiB,MAAM,eAAe;GACzD;GACA;GACA,cAAc;GACd,WAAW,gBAAgB,KAAK,SAAS,YAAsC;GAC/E,cAAc,UAAU,GAAG,KAAK,MAAM,MAAM,CAAC;GAC9C;YAEA,cACC,OACA;GAAE;GAAQ;GAAW;GAAO,EAC5B;GACE;GACA,cAAc;GACd,KAAK,CAAC,cAAc,QAAQ;GAC5B,OAAO;IAAC,EAAE,OAAO;KAAE,GAAG;KAAS,GAAG;KAAW,EAAE;IAAE;IAAW;IAAa;GAC1E,CACF;GACc;EAGtB"}
1
+ {"version":3,"file":"volume-slider-root.js","names":[],"sources":["../../../../src/ui/volume-slider/volume-slider-root.tsx"],"sourcesContent":["'use client';\n\nimport { VolumeSliderCore, VolumeSliderDataAttrs } from '@videojs/core';\nimport { getSliderCSSVars, logMissingFeature, selectVolume } from '@videojs/core/dom';\nimport { forwardRef, useState } from 'react';\n\nimport { usePlayer } from '../../player/context';\nimport type { UIComponentProps } from '../../utils/types';\nimport { useLatestRef } from '../../utils/use-latest-ref';\nimport { renderElement } from '../../utils/use-render';\nimport { useSlider } from '../hooks/use-slider';\nimport { SliderProvider } from '../slider/context';\n\nconst noopVolume = {\n volume: 0,\n muted: false,\n volumeAvailability: 'unsupported' as const,\n setVolume: () => 0,\n toggleMuted: () => false,\n};\n\nexport interface VolumeSliderRootProps extends UIComponentProps<'div', VolumeSliderCore.State>, VolumeSliderCore.Props {\n onDragStart?: (() => void) | undefined;\n onDragEnd?: (() => void) | undefined;\n}\n\nexport const VolumeSliderRoot = forwardRef<HTMLDivElement, VolumeSliderRootProps>(\n function VolumeSliderRoot(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n label,\n orientation,\n step = VolumeSliderCore.defaultProps.step,\n largeStep = VolumeSliderCore.defaultProps.largeStep,\n disabled,\n thumbAlignment,\n onDragStart,\n onDragEnd,\n ...elementProps\n } = componentProps;\n\n const volume = usePlayer(selectVolume);\n\n const [core] = useState(() => new VolumeSliderCore());\n core.setProps({ label, orientation, step, largeStep, disabled, thumbAlignment });\n\n // Keep a ref to the latest volume state for callbacks.\n const volumeRef = useLatestRef(volume);\n\n const { state, cssVars, rootRef, thumbRef, rootProps, rootStyle, thumbProps } = useSlider<VolumeSliderCore.State>({\n computeState: (input) => {\n core.setInput(input);\n core.setMedia(volume ?? noopVolume);\n return core.getState();\n },\n getPercent: () => (volume ? volume.volume * 100 : 0),\n getStepPercent: () => core.getStepPercent(),\n getLargeStepPercent: () => core.getLargeStepPercent(),\n orientation,\n disabled,\n adjustPercent: (rawPercent, thumbSize, trackSize) =>\n core.adjustPercentForAlignment(rawPercent, thumbSize, trackSize),\n getCSSVars: getSliderCSSVars,\n onValueChange: (percent) => {\n volumeRef.current?.setVolume(percent / 100);\n },\n onValueCommit: (percent) => {\n volumeRef.current?.setVolume(percent / 100);\n },\n onDragStart,\n onDragEnd,\n });\n\n if (!volume) {\n if (__DEV__) logMissingFeature('VolumeSlider', 'volume');\n return null;\n }\n\n return (\n <SliderProvider\n value={{\n state,\n pointerValue: core.valueFromPercent(state.pointerPercent),\n thumbRef,\n thumbProps,\n stateAttrMap: VolumeSliderDataAttrs,\n getAttrs: (sliderState) => core.getAttrs(sliderState as VolumeSliderCore.State),\n formatValue: (value) => `${Math.round(value)}%`,\n }}\n >\n {renderElement(\n 'div',\n { render, className, style },\n {\n state,\n stateAttrMap: VolumeSliderDataAttrs,\n ref: [forwardedRef, rootRef],\n props: [{ style: { ...cssVars, ...rootStyle } }, rootProps, elementProps],\n }\n )}\n </SliderProvider>\n );\n }\n);\n\nexport namespace VolumeSliderRoot {\n export type Props = VolumeSliderRootProps;\n export type State = VolumeSliderCore.State;\n}\n"],"mappings":";;;;;;;;;;;AAaA,MAAM,aAAa;CACjB,QAAQ;CACR,OAAO;CACP,oBAAoB;CACpB,iBAAiB;CACjB,mBAAmB;CACpB;AAOD,MAAa,mBAAmB,WAC9B,SAAS,iBAAiB,gBAAgB,cAAc;CACtD,MAAM,EACJ,QACA,WACA,OACA,OACA,aACA,OAAO,iBAAiB,aAAa,MACrC,YAAY,iBAAiB,aAAa,WAC1C,UACA,gBACA,aACA,WACA,GAAG,iBACD;CAEJ,MAAM,SAAS,UAAU,aAAa;CAEtC,MAAM,CAAC,QAAQ,eAAe,IAAI,kBAAkB,CAAC;AACrD,MAAK,SAAS;EAAE;EAAO;EAAa;EAAM;EAAW;EAAU;EAAgB,CAAC;CAGhF,MAAM,YAAY,aAAa,OAAO;CAEtC,MAAM,EAAE,OAAO,SAAS,SAAS,UAAU,WAAW,WAAW,eAAe,UAAkC;EAChH,eAAe,UAAU;AACvB,QAAK,SAAS,MAAM;AACpB,QAAK,SAAS,UAAU,WAAW;AACnC,UAAO,KAAK,UAAU;;EAExB,kBAAmB,SAAS,OAAO,SAAS,MAAM;EAClD,sBAAsB,KAAK,gBAAgB;EAC3C,2BAA2B,KAAK,qBAAqB;EACrD;EACA;EACA,gBAAgB,YAAY,WAAW,cACrC,KAAK,0BAA0B,YAAY,WAAW,UAAU;EAClE,YAAY;EACZ,gBAAgB,YAAY;AAC1B,aAAU,SAAS,UAAU,UAAU,IAAI;;EAE7C,gBAAgB,YAAY;AAC1B,aAAU,SAAS,UAAU,UAAU,IAAI;;EAE7C;EACA;EACD,CAAC;AAEF,KAAI,CAAC,QAAQ;AACE,oBAAkB,gBAAgB,SAAS;AACxD,SAAO;;AAGT,QACE,oBAAC,gBAAD;EACE,OAAO;GACL;GACA,cAAc,KAAK,iBAAiB,MAAM,eAAe;GACzD;GACA;GACA,cAAc;GACd,WAAW,gBAAgB,KAAK,SAAS,YAAsC;GAC/E,cAAc,UAAU,GAAG,KAAK,MAAM,MAAM,CAAC;GAC9C;YAEA,cACC,OACA;GAAE;GAAQ;GAAW;GAAO,EAC5B;GACE;GACA,cAAc;GACd,KAAK,CAAC,cAAc,QAAQ;GAC5B,OAAO;IAAC,EAAE,OAAO;KAAE,GAAG;KAAS,GAAG;KAAW,EAAE;IAAE;IAAW;IAAa;GAC1E,CACF;EACc,CAAA;EAGtB"}
@@ -6,7 +6,7 @@ function attachMediaElement(media) {
6
6
  return () => media.detach();
7
7
  };
8
8
  }
9
-
10
9
  //#endregion
11
10
  export { attachMediaElement };
11
+
12
12
  //# sourceMappingURL=attach-media-element.js.map