@videojs/react 10.0.0-beta.28 → 10.0.0-beta.29

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 (259) hide show
  1. package/dist/default/__generated__/skins/default-video/styles/buttons.css +132 -18
  2. package/dist/default/__generated__/skins/default-video/styles/captions.css +22 -0
  3. package/dist/default/__generated__/skins/default-video/styles/container.css +121 -8
  4. package/dist/default/__generated__/skins/default-video/styles/controls.css +436 -21
  5. package/dist/default/__generated__/skins/default-video/styles/dialog.css +169 -0
  6. package/dist/default/__generated__/skins/default-video/styles/indicator.css +459 -0
  7. package/dist/default/__generated__/skins/default-video/styles/menus.css +254 -0
  8. package/dist/default/__generated__/skins/default-video/styles/overlays.css +26 -2
  9. package/dist/default/__generated__/skins/default-video/styles/popups.css +338 -12
  10. package/dist/default/__generated__/skins/default-video/styles/poster.css +4 -4
  11. package/dist/default/__generated__/skins/default-video/styles/sliders.css +355 -31
  12. package/dist/default/__generated__/skins/default-video/styles/styles.css +2455 -216
  13. package/dist/default/__generated__/skins/default-video/styles/theme.css +4 -19
  14. package/dist/default/__generated__/skins/default-video/styles/video.css +29 -0
  15. package/dist/default/__generated__/skins/minimal-video/styles/base.css +25 -0
  16. package/dist/default/__generated__/skins/minimal-video/styles/buttons.css +266 -0
  17. package/dist/default/__generated__/skins/minimal-video/styles/captions.css +22 -0
  18. package/dist/default/__generated__/skins/minimal-video/styles/container.css +158 -0
  19. package/dist/default/__generated__/skins/minimal-video/styles/controls.css +182 -0
  20. package/dist/default/__generated__/skins/minimal-video/styles/dialog.css +77 -0
  21. package/dist/default/__generated__/skins/minimal-video/styles/indicator.css +322 -0
  22. package/dist/default/__generated__/skins/minimal-video/styles/menus.css +254 -0
  23. package/dist/default/__generated__/skins/minimal-video/styles/overlays.css +35 -0
  24. package/dist/default/__generated__/skins/minimal-video/styles/popups.css +371 -0
  25. package/dist/default/__generated__/skins/minimal-video/styles/poster.css +47 -0
  26. package/dist/default/__generated__/skins/minimal-video/styles/sliders.css +436 -0
  27. package/dist/default/__generated__/skins/minimal-video/styles/styles.css +2246 -0
  28. package/dist/default/__generated__/skins/minimal-video/styles/theme.css +7 -0
  29. package/dist/default/__generated__/skins/minimal-video/styles/video.css +29 -0
  30. package/dist/default/i18n/index.js +2 -1
  31. package/dist/default/i18n/text.js +20 -0
  32. package/dist/default/i18n/text.js.map +1 -0
  33. package/dist/default/icons/dist/react/default/airplay-exit.js +3 -3
  34. package/dist/default/icons/dist/react/default/airplay-exit.js.map +1 -1
  35. package/dist/default/icons/dist/react/minimal/airplay-exit.js +3 -3
  36. package/dist/default/icons/dist/react/minimal/airplay-exit.js.map +1 -1
  37. package/dist/default/index.js +2 -1
  38. package/dist/default/media/hls-background-video/media.js +18 -3
  39. package/dist/default/media/hls-background-video/media.js.map +1 -1
  40. package/dist/default/presets/audio/minimal-skin.css +103 -101
  41. package/dist/default/presets/audio/minimal-skin.js +1 -1
  42. package/dist/default/presets/audio/minimal-skin.tailwind.js +1 -1
  43. package/dist/default/presets/audio/skin.css +68 -69
  44. package/dist/default/presets/audio/skin.js +1 -1
  45. package/dist/default/presets/audio/skin.tailwind.js +1 -1
  46. package/dist/default/presets/live-audio/minimal-skin.css +103 -101
  47. package/dist/default/presets/live-audio/skin.css +68 -69
  48. package/dist/default/presets/live-video/minimal-skin.css +140 -120
  49. package/dist/default/presets/live-video/minimal-skin.js +3 -8
  50. package/dist/default/presets/live-video/minimal-skin.js.map +1 -1
  51. package/dist/default/presets/live-video/minimal-skin.tailwind.js +5 -8
  52. package/dist/default/presets/live-video/minimal-skin.tailwind.js.map +1 -1
  53. package/dist/default/presets/live-video/skin.css +89 -76
  54. package/dist/default/presets/live-video/skin.js +3 -8
  55. package/dist/default/presets/live-video/skin.js.map +1 -1
  56. package/dist/default/presets/live-video/skin.tailwind.js +7 -10
  57. package/dist/default/presets/live-video/skin.tailwind.js.map +1 -1
  58. package/dist/default/presets/video/minimal-skin.css +140 -120
  59. package/dist/default/presets/video/minimal-skin.js +3 -8
  60. package/dist/default/presets/video/minimal-skin.js.map +1 -1
  61. package/dist/default/presets/video/minimal-skin.tailwind.js +5 -8
  62. package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -1
  63. package/dist/default/presets/video/skin.css +89 -76
  64. package/dist/default/presets/video/skin.js +3 -8
  65. package/dist/default/presets/video/skin.js.map +1 -1
  66. package/dist/default/presets/video/skin.tailwind.js +6 -9
  67. package/dist/default/presets/video/skin.tailwind.js.map +1 -1
  68. package/dist/default/skins/dist/default/default/tailwind/components/button.js +3 -1
  69. package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  70. package/dist/default/skins/dist/default/default/tailwind/components/poster.js +8 -1
  71. package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  72. package/dist/default/skins/dist/default/default/tailwind/components/slider.js +10 -10
  73. package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  74. package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js +1 -1
  75. package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
  76. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +2 -2
  77. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  78. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +8 -1
  79. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  80. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +13 -12
  81. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  82. package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js +1 -1
  83. package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
  84. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +6 -5
  85. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  86. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +4 -4
  87. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  88. package/dist/default/ui/gesture/gesture.js.map +1 -1
  89. package/dist/default/ui/gesture/use-doubletap-gesture.js.map +1 -1
  90. package/dist/default/ui/gesture/use-tap-gesture.js.map +1 -1
  91. package/dist/default/ui/hotkey/hotkey.js.map +1 -1
  92. package/dist/default/ui/menu/context.js +6 -1
  93. package/dist/default/ui/menu/context.js.map +1 -1
  94. package/dist/default/ui/menu/menu-item-indicator.js +3 -2
  95. package/dist/default/ui/menu/menu-item-indicator.js.map +1 -1
  96. package/dist/default/ui/menu/menu-radio-item.js +19 -15
  97. package/dist/default/ui/menu/menu-radio-item.js.map +1 -1
  98. package/dist/default/ui/menu/menu-root.js +5 -6
  99. package/dist/default/ui/menu/menu-root.js.map +1 -1
  100. package/dist/default/ui/poster/poster.js +64 -17
  101. package/dist/default/ui/poster/poster.js.map +1 -1
  102. package/dist/default/ui/slider/slider-preview.js.map +1 -1
  103. package/dist/default/utils/use-render.js +2 -8
  104. package/dist/default/utils/use-render.js.map +1 -1
  105. package/dist/dev/__generated__/skins/default-video/styles/buttons.css +132 -18
  106. package/dist/dev/__generated__/skins/default-video/styles/captions.css +22 -0
  107. package/dist/dev/__generated__/skins/default-video/styles/container.css +121 -8
  108. package/dist/dev/__generated__/skins/default-video/styles/controls.css +436 -21
  109. package/dist/dev/__generated__/skins/default-video/styles/dialog.css +169 -0
  110. package/dist/dev/__generated__/skins/default-video/styles/indicator.css +459 -0
  111. package/dist/dev/__generated__/skins/default-video/styles/menus.css +254 -0
  112. package/dist/dev/__generated__/skins/default-video/styles/overlays.css +26 -2
  113. package/dist/dev/__generated__/skins/default-video/styles/popups.css +338 -12
  114. package/dist/dev/__generated__/skins/default-video/styles/poster.css +4 -4
  115. package/dist/dev/__generated__/skins/default-video/styles/sliders.css +355 -31
  116. package/dist/dev/__generated__/skins/default-video/styles/styles.css +2455 -216
  117. package/dist/dev/__generated__/skins/default-video/styles/theme.css +4 -19
  118. package/dist/dev/__generated__/skins/default-video/styles/video.css +29 -0
  119. package/dist/dev/__generated__/skins/minimal-video/styles/base.css +25 -0
  120. package/dist/dev/__generated__/skins/minimal-video/styles/buttons.css +266 -0
  121. package/dist/dev/__generated__/skins/minimal-video/styles/captions.css +22 -0
  122. package/dist/dev/__generated__/skins/minimal-video/styles/container.css +158 -0
  123. package/dist/dev/__generated__/skins/minimal-video/styles/controls.css +182 -0
  124. package/dist/dev/__generated__/skins/minimal-video/styles/dialog.css +77 -0
  125. package/dist/dev/__generated__/skins/minimal-video/styles/indicator.css +322 -0
  126. package/dist/dev/__generated__/skins/minimal-video/styles/menus.css +254 -0
  127. package/dist/dev/__generated__/skins/minimal-video/styles/overlays.css +35 -0
  128. package/dist/dev/__generated__/skins/minimal-video/styles/popups.css +371 -0
  129. package/dist/dev/__generated__/skins/minimal-video/styles/poster.css +47 -0
  130. package/dist/dev/__generated__/skins/minimal-video/styles/sliders.css +436 -0
  131. package/dist/dev/__generated__/skins/minimal-video/styles/styles.css +2246 -0
  132. package/dist/dev/__generated__/skins/minimal-video/styles/theme.css +7 -0
  133. package/dist/dev/__generated__/skins/minimal-video/styles/video.css +29 -0
  134. package/dist/dev/i18n/index.d.ts +2 -1
  135. package/dist/dev/i18n/index.js +2 -1
  136. package/dist/dev/i18n/text.d.ts +11 -0
  137. package/dist/dev/i18n/text.d.ts.map +1 -0
  138. package/dist/dev/i18n/text.js +20 -0
  139. package/dist/dev/i18n/text.js.map +1 -0
  140. package/dist/dev/icons/dist/react/default/airplay-exit.js +3 -3
  141. package/dist/dev/icons/dist/react/default/airplay-exit.js.map +1 -1
  142. package/dist/dev/icons/dist/react/minimal/airplay-exit.js +3 -3
  143. package/dist/dev/icons/dist/react/minimal/airplay-exit.js.map +1 -1
  144. package/dist/dev/icons/index.d.ts +6 -1
  145. package/dist/dev/icons/index.d.ts.map +1 -0
  146. package/dist/dev/icons/minimal/index.d.ts +6 -1
  147. package/dist/dev/icons/minimal/index.d.ts.map +1 -0
  148. package/dist/dev/index.d.ts +3 -2
  149. package/dist/dev/index.js +2 -1
  150. package/dist/dev/media/hls-background-video/media.d.ts +8 -0
  151. package/dist/dev/media/hls-background-video/media.d.ts.map +1 -1
  152. package/dist/dev/media/hls-background-video/media.js +18 -3
  153. package/dist/dev/media/hls-background-video/media.js.map +1 -1
  154. package/dist/dev/presets/audio/minimal-skin.css +103 -101
  155. package/dist/dev/presets/audio/minimal-skin.js +1 -1
  156. package/dist/dev/presets/audio/minimal-skin.tailwind.js +1 -1
  157. package/dist/dev/presets/audio/player.d.ts +2 -2
  158. package/dist/dev/presets/audio/skin.css +68 -69
  159. package/dist/dev/presets/audio/skin.js +1 -1
  160. package/dist/dev/presets/audio/skin.tailwind.js +1 -1
  161. package/dist/dev/presets/live-audio/minimal-skin.css +103 -101
  162. package/dist/dev/presets/live-audio/player.d.ts +2 -2
  163. package/dist/dev/presets/live-audio/skin.css +68 -69
  164. package/dist/dev/presets/live-video/minimal-skin.css +140 -120
  165. package/dist/dev/presets/live-video/minimal-skin.d.ts.map +1 -1
  166. package/dist/dev/presets/live-video/minimal-skin.js +3 -8
  167. package/dist/dev/presets/live-video/minimal-skin.js.map +1 -1
  168. package/dist/dev/presets/live-video/minimal-skin.tailwind.d.ts.map +1 -1
  169. package/dist/dev/presets/live-video/minimal-skin.tailwind.js +5 -8
  170. package/dist/dev/presets/live-video/minimal-skin.tailwind.js.map +1 -1
  171. package/dist/dev/presets/live-video/player.d.ts +2 -2
  172. package/dist/dev/presets/live-video/skin.css +89 -76
  173. package/dist/dev/presets/live-video/skin.d.ts.map +1 -1
  174. package/dist/dev/presets/live-video/skin.js +3 -8
  175. package/dist/dev/presets/live-video/skin.js.map +1 -1
  176. package/dist/dev/presets/live-video/skin.tailwind.d.ts.map +1 -1
  177. package/dist/dev/presets/live-video/skin.tailwind.js +7 -10
  178. package/dist/dev/presets/live-video/skin.tailwind.js.map +1 -1
  179. package/dist/dev/presets/types.d.ts +15 -2
  180. package/dist/dev/presets/types.d.ts.map +1 -1
  181. package/dist/dev/presets/video/minimal-skin.css +140 -120
  182. package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -1
  183. package/dist/dev/presets/video/minimal-skin.js +3 -8
  184. package/dist/dev/presets/video/minimal-skin.js.map +1 -1
  185. package/dist/dev/presets/video/minimal-skin.tailwind.d.ts.map +1 -1
  186. package/dist/dev/presets/video/minimal-skin.tailwind.js +5 -8
  187. package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -1
  188. package/dist/dev/presets/video/player.d.ts +2 -2
  189. package/dist/dev/presets/video/skin.css +89 -76
  190. package/dist/dev/presets/video/skin.d.ts.map +1 -1
  191. package/dist/dev/presets/video/skin.js +3 -8
  192. package/dist/dev/presets/video/skin.js.map +1 -1
  193. package/dist/dev/presets/video/skin.tailwind.d.ts.map +1 -1
  194. package/dist/dev/presets/video/skin.tailwind.js +6 -9
  195. package/dist/dev/presets/video/skin.tailwind.js.map +1 -1
  196. package/dist/dev/skins/dist/default/default/tailwind/components/button.js +3 -1
  197. package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  198. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +8 -1
  199. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  200. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +10 -10
  201. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  202. package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js +1 -1
  203. package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
  204. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +2 -2
  205. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  206. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +8 -1
  207. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  208. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +13 -12
  209. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  210. package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js +1 -1
  211. package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
  212. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +6 -5
  213. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  214. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +4 -4
  215. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  216. package/dist/dev/ui/gesture/gesture.d.ts +6 -13
  217. package/dist/dev/ui/gesture/gesture.d.ts.map +1 -1
  218. package/dist/dev/ui/gesture/gesture.js.map +1 -1
  219. package/dist/dev/ui/gesture/use-doubletap-gesture.d.ts +2 -5
  220. package/dist/dev/ui/gesture/use-doubletap-gesture.d.ts.map +1 -1
  221. package/dist/dev/ui/gesture/use-doubletap-gesture.js.map +1 -1
  222. package/dist/dev/ui/gesture/use-tap-gesture.d.ts +2 -5
  223. package/dist/dev/ui/gesture/use-tap-gesture.d.ts.map +1 -1
  224. package/dist/dev/ui/gesture/use-tap-gesture.js.map +1 -1
  225. package/dist/dev/ui/hotkey/hotkey.d.ts +6 -12
  226. package/dist/dev/ui/hotkey/hotkey.d.ts.map +1 -1
  227. package/dist/dev/ui/hotkey/hotkey.js.map +1 -1
  228. package/dist/dev/ui/menu/context.js +6 -1
  229. package/dist/dev/ui/menu/context.js.map +1 -1
  230. package/dist/dev/ui/menu/menu-item-indicator.d.ts.map +1 -1
  231. package/dist/dev/ui/menu/menu-item-indicator.js +3 -2
  232. package/dist/dev/ui/menu/menu-item-indicator.js.map +1 -1
  233. package/dist/dev/ui/menu/menu-radio-item.d.ts.map +1 -1
  234. package/dist/dev/ui/menu/menu-radio-item.js +19 -15
  235. package/dist/dev/ui/menu/menu-radio-item.js.map +1 -1
  236. package/dist/dev/ui/menu/menu-root.js +5 -6
  237. package/dist/dev/ui/menu/menu-root.js.map +1 -1
  238. package/dist/dev/ui/poster/poster.d.ts +15 -4
  239. package/dist/dev/ui/poster/poster.d.ts.map +1 -1
  240. package/dist/dev/ui/poster/poster.js +64 -17
  241. package/dist/dev/ui/poster/poster.js.map +1 -1
  242. package/dist/dev/ui/slider/slider-preview.d.ts +5 -9
  243. package/dist/dev/ui/slider/slider-preview.d.ts.map +1 -1
  244. package/dist/dev/ui/slider/slider-preview.js.map +1 -1
  245. package/dist/dev/utils/use-render.d.ts.map +1 -1
  246. package/dist/dev/utils/use-render.js +2 -8
  247. package/dist/dev/utils/use-render.js.map +1 -1
  248. package/docs/README.md +1 -1
  249. package/docs/concepts/skins.md +97 -96
  250. package/docs/how-to/customize-skins.md +421 -411
  251. package/docs/reference/create-player.md +2 -2
  252. package/docs/reference/menu.md +6 -18
  253. package/docs/reference/popover.md +6 -6
  254. package/docs/reference/poster.md +187 -13
  255. package/docs/reference/slider.md +1 -1
  256. package/docs/reference/time-slider.md +1 -1
  257. package/docs/reference/tooltip.md +10 -10
  258. package/docs/reference/volume-slider.md +1 -1
  259. package/package.json +13 -8
@@ -0,0 +1,7 @@
1
+ @layer videojs.theme.variant {
2
+ .media-theme-minimal {
3
+ --media-video-border-radius: var(--media-border-radius, 0.75rem);
4
+ --media-control-radius: calc(var(--media-spacing) * 2);
5
+ --media-surface-radius: calc(var(--media-spacing) * 2.5);
6
+ }
7
+ }
@@ -0,0 +1,29 @@
1
+ @layer videojs.theme.base, videojs.theme.variant, videojs.theme.preferences;
2
+
3
+ @layer videojs.theme.base {
4
+ :is(.media-theme-default, .media-theme-minimal) {
5
+ --media-controls-transition-duration: 100ms;
6
+ --media-scale: 1;
7
+ --media-spacing: calc(var(--media-scale-unit, 16px) * var(--media-scale) / 4);
8
+ }
9
+ }
10
+
11
+ @layer videojs.theme.preferences {
12
+ @media (pointer: fine) {
13
+ :is(.media-theme-default, .media-theme-minimal):has([data-controls]:not([data-visible])) {
14
+ --media-controls-transition-duration: 300ms;
15
+ }
16
+ }
17
+
18
+ @media (pointer: coarse) {
19
+ :is(.media-theme-default, .media-theme-minimal):has([data-controls]:not([data-visible])) {
20
+ --media-controls-transition-duration: 150ms;
21
+ }
22
+ }
23
+
24
+ @media (prefers-reduced-motion: reduce) {
25
+ :is(.media-theme-default, .media-theme-minimal) {
26
+ --media-controls-transition-duration: 50ms;
27
+ }
28
+ }
29
+ }
@@ -1,4 +1,5 @@
1
1
  import { I18nContext, I18nContextValue, useLocale, useTranslator } from "./context.js";
2
2
  import { CreateI18nOptions, CreateI18nResult, I18nProvider, I18nProviderProps, createI18n } from "./create-i18n.js";
3
+ import { Text, TextProps } from "./text.js";
3
4
  import { FlatTranslations, LOCALES, Locale, TranslationParams, Translations, Translator, createTranslator, findLocaleKeys, getI18nTranslations, hasRegisteredLocale, isText, onI18nRegistryChange, registerI18n } from "@videojs/core/i18n";
4
- export { type CreateI18nOptions, type CreateI18nResult, type FlatTranslations, I18nContext, type I18nContextValue, I18nProvider, type I18nProviderProps, LOCALES, type Locale, type TranslationParams, type Translations, type Translator, createI18n, createTranslator, findLocaleKeys, getI18nTranslations, hasRegisteredLocale, isText, onI18nRegistryChange, registerI18n, useLocale, useTranslator };
5
+ export { type CreateI18nOptions, type CreateI18nResult, type FlatTranslations, I18nContext, type I18nContextValue, I18nProvider, type I18nProviderProps, LOCALES, type Locale, Text, type TextProps, type TranslationParams, type Translations, type Translator, createI18n, createTranslator, findLocaleKeys, getI18nTranslations, hasRegisteredLocale, isText, onI18nRegistryChange, registerI18n, useLocale, useTranslator };
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { I18nContext, useLocale, useTranslator } from "./context.js";
3
3
  import { I18nProvider, createI18n } from "./create-i18n.js";
4
+ import { Text } from "./text.js";
4
5
  import { LOCALES, createTranslator, findLocaleKeys, getI18nTranslations, hasRegisteredLocale, isText, onI18nRegistryChange, registerI18n } from "@videojs/core/i18n";
5
- export { I18nContext, I18nProvider, LOCALES, createI18n, createTranslator, findLocaleKeys, getI18nTranslations, hasRegisteredLocale, isText, onI18nRegistryChange, registerI18n, useLocale, useTranslator };
6
+ export { I18nContext, I18nProvider, LOCALES, Text, createI18n, createTranslator, findLocaleKeys, getI18nTranslations, hasRegisteredLocale, isText, onI18nRegistryChange, registerI18n, useLocale, useTranslator };
@@ -0,0 +1,11 @@
1
+ import { ComponentProps, ReactNode } from "react";
2
+ //#region src/i18n/text.d.ts
3
+ interface TextProps extends Omit<ComponentProps<'span'>, 'children'> {
4
+ children?: ReactNode;
5
+ token?: string | undefined;
6
+ }
7
+ /** Renders translated compiler text through a native React span. */
8
+ declare function Text({ children, token, ...props }: TextProps): import("react").JSX.Element;
9
+ //#endregion
10
+ export { Text, TextProps };
11
+ //# sourceMappingURL=text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.d.ts","names":[],"sources":["../../../src/i18n/text.tsx"],"mappings":";;UAKiB,kBAAkB,KAAK;EACtC,WAAW;EACX;;;iBAIc,OAAO,UAAU,UAAU,SAAS,4BAAS,IAAA"}
@@ -0,0 +1,20 @@
1
+ "use client";
2
+ import { useTranslator } from "./context.js";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region src/i18n/text.tsx
5
+ /** Renders translated compiler text through a native React span. */
6
+ function Text({ children, token, ...props }) {
7
+ const t = useTranslator();
8
+ const fallback = typeof children === "string" || typeof children === "number" ? String(children) : void 0;
9
+ return /* @__PURE__ */ jsx("span", {
10
+ ...props,
11
+ children: token ? t({
12
+ key: token,
13
+ text: fallback ?? token
14
+ }) : children
15
+ });
16
+ }
17
+ //#endregion
18
+ export { Text };
19
+
20
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","names":[],"sources":["../../../src/i18n/text.tsx"],"sourcesContent":["'use client';\n\nimport type { ComponentProps, ReactNode } from 'react';\nimport { useTranslator } from './context';\n\nexport interface TextProps extends Omit<ComponentProps<'span'>, 'children'> {\n children?: ReactNode;\n token?: string | undefined;\n}\n\n/** Renders translated compiler text through a native React span. */\nexport function Text({ children, token, ...props }: TextProps) {\n const t = useTranslator();\n const fallback = typeof children === 'string' || typeof children === 'number' ? String(children) : undefined;\n\n return <span {...props}>{token ? t({ key: token, text: fallback ?? token }) : children}</span>;\n}\n"],"mappings":";;;;;AAWA,SAAgB,KAAK,EAAE,UAAU,OAAO,GAAG,SAAoB;CAC7D,MAAM,IAAI,cAAc;CACxB,MAAM,WAAW,OAAO,aAAa,YAAY,OAAO,aAAa,WAAW,OAAO,QAAQ,IAAI,KAAA;CAEnG,OAAO,oBAAC,QAAD;EAAM,GAAI;EAAQ,UAAA,QAAQ,EAAE;GAAE,KAAK;GAAO,MAAM,YAAY;EAAM,CAAC,IAAI;CAAe,CAAA;AAC/F"}
@@ -9,15 +9,15 @@ const AirPlayExitIcon = (props) => /* @__PURE__ */ jsxs("svg", {
9
9
  viewBox: "0 0 18 18",
10
10
  ...props,
11
11
  children: [
12
- /* @__PURE__ */ jsx("style", { children: "@keyframes media-icon--airplay__triangle{0%{translate:0 0}to{translate:0-2px}}@keyframes media-icon--airplay__fill{0%{opacity:0}to{opacity:.2}}@media (prefers-reduced-motion:reduce){:root{--media-icon--airplay__fill-animation:none;--media-icon--airplay__triangle-animation:none}}" }),
12
+ /* @__PURE__ */ jsx("style", { children: "@keyframes media-icon-airplay-triangle{0%{translate:0 0}to{translate:0-2px}}@keyframes media-icon-airplay-fill{0%{opacity:0}to{opacity:.2}}@media (prefers-reduced-motion:reduce){:root{--media-icon-airplay-fill-animation:none;--media-icon-airplay-triangle-animation:none}}" }),
13
13
  /* @__PURE__ */ jsx("path", {
14
14
  d: "M14.5 2A3.5 3.5 0 0 1 18 5.5v5a3.5 3.5 0 0 1-3.032 3.468L9.354 8.354a.5.5 0 0 0-.708 0l-5.615 5.614A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z",
15
- style: { animation: "var(--media-icon--airplay__fill-animation, media-icon--airplay__fill 1s ease-in-out infinite alternate)" }
15
+ style: { animation: "var(--media-icon-airplay-fill-animation, media-icon-airplay-fill 1s ease-in-out infinite alternate)" }
16
16
  }),
17
17
  /* @__PURE__ */ jsx("path", { d: "M14.5 2A3.5 3.5 0 0 1 18 5.5v5l-.005.18a3.5 3.5 0 0 1-3.027 3.288L13 12h1.5a1.5 1.5 0 0 0 1.5-1.5v-5A1.5 1.5 0 0 0 14.5 4h-11A1.5 1.5 0 0 0 2 5.5v5A1.5 1.5 0 0 0 3.5 12H5l-1.968 1.967A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z" }),
18
18
  /* @__PURE__ */ jsx("path", {
19
19
  d: "M8.631 10.902a.5.5 0 0 1 .738 0l4.363 4.76a.5.5 0 0 1-.369.838H4.637a.5.5 0 0 1-.369-.838z",
20
- style: { animation: "var(--media-icon--airplay__triangle-animation, media-icon--airplay__triangle 1s ease-in-out infinite alternate)" }
20
+ style: { animation: "var(--media-icon-airplay-triangle-animation, media-icon-airplay-triangle 1s ease-in-out infinite alternate)" }
21
21
  })
22
22
  ]
23
23
  });
@@ -1 +1 @@
1
- {"version":3,"file":"airplay-exit.js","names":[],"sources":["../../../../../../../icons/dist/react/default/airplay-exit.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst AirPlayExitIcon = (props) => /* @__PURE__ */ _jsxs(\"svg\", {\n\txmlns: \"http://www.w3.org/2000/svg\",\n\twidth: 18,\n\theight: 18,\n\tfill: \"currentColor\",\n\t\"aria-hidden\": \"true\",\n\tviewBox: \"0 0 18 18\",\n\t...props,\n\tchildren: [\n\t\t/* @__PURE__ */ _jsx(\"style\", { children: \"@keyframes media-icon--airplay__triangle{0%{translate:0 0}to{translate:0-2px}}@keyframes media-icon--airplay__fill{0%{opacity:0}to{opacity:.2}}@media (prefers-reduced-motion:reduce){:root{--media-icon--airplay__fill-animation:none;--media-icon--airplay__triangle-animation:none}}\" }),\n\t\t/* @__PURE__ */ _jsx(\"path\", {\n\t\t\td: \"M14.5 2A3.5 3.5 0 0 1 18 5.5v5a3.5 3.5 0 0 1-3.032 3.468L9.354 8.354a.5.5 0 0 0-.708 0l-5.615 5.614A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z\",\n\t\t\tstyle: { animation: \"var(--media-icon--airplay__fill-animation, media-icon--airplay__fill 1s ease-in-out infinite alternate)\" }\n\t\t}),\n\t\t/* @__PURE__ */ _jsx(\"path\", { d: \"M14.5 2A3.5 3.5 0 0 1 18 5.5v5l-.005.18a3.5 3.5 0 0 1-3.027 3.288L13 12h1.5a1.5 1.5 0 0 0 1.5-1.5v-5A1.5 1.5 0 0 0 14.5 4h-11A1.5 1.5 0 0 0 2 5.5v5A1.5 1.5 0 0 0 3.5 12H5l-1.968 1.967A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z\" }),\n\t\t/* @__PURE__ */ _jsx(\"path\", {\n\t\t\td: \"M8.631 10.902a.5.5 0 0 1 .738 0l4.363 4.76a.5.5 0 0 1-.369.838H4.637a.5.5 0 0 1-.369-.838z\",\n\t\t\tstyle: { animation: \"var(--media-icon--airplay__triangle-animation, media-icon--airplay__triangle 1s ease-in-out infinite alternate)\" }\n\t\t})\n\t]\n});\nexport default AirPlayExitIcon;\n"],"mappings":";;AACA,MAAM,mBAAmB,UAA0B,qBAAM,OAAO;CAC/D,OAAO;CACP,OAAO;CACP,QAAQ;CACR,MAAM;CACN,eAAe;CACf,SAAS;CACT,GAAG;CACH,UAAU;EACO,oBAAK,SAAS,EAAE,UAAU,0RAA0R,CAAC;EACrT,oBAAK,QAAQ;GAC5B,GAAG;GACH,OAAO,EAAE,WAAW,0GAA0G;EAC/H,CAAC;EACe,oBAAK,QAAQ,EAAE,GAAG,uOAAuO,CAAC;EAC1P,oBAAK,QAAQ;GAC5B,GAAG;GACH,OAAO,EAAE,WAAW,kHAAkH;EACvI,CAAC;CACF;AACD,CAAC"}
1
+ {"version":3,"file":"airplay-exit.js","names":[],"sources":["../../../../../../../icons/dist/react/default/airplay-exit.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst AirPlayExitIcon = (props) => /* @__PURE__ */ _jsxs(\"svg\", {\n\txmlns: \"http://www.w3.org/2000/svg\",\n\twidth: 18,\n\theight: 18,\n\tfill: \"currentColor\",\n\t\"aria-hidden\": \"true\",\n\tviewBox: \"0 0 18 18\",\n\t...props,\n\tchildren: [\n\t\t/* @__PURE__ */ _jsx(\"style\", { children: \"@keyframes media-icon-airplay-triangle{0%{translate:0 0}to{translate:0-2px}}@keyframes media-icon-airplay-fill{0%{opacity:0}to{opacity:.2}}@media (prefers-reduced-motion:reduce){:root{--media-icon-airplay-fill-animation:none;--media-icon-airplay-triangle-animation:none}}\" }),\n\t\t/* @__PURE__ */ _jsx(\"path\", {\n\t\t\td: \"M14.5 2A3.5 3.5 0 0 1 18 5.5v5a3.5 3.5 0 0 1-3.032 3.468L9.354 8.354a.5.5 0 0 0-.708 0l-5.615 5.614A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z\",\n\t\t\tstyle: { animation: \"var(--media-icon-airplay-fill-animation, media-icon-airplay-fill 1s ease-in-out infinite alternate)\" }\n\t\t}),\n\t\t/* @__PURE__ */ _jsx(\"path\", { d: \"M14.5 2A3.5 3.5 0 0 1 18 5.5v5l-.005.18a3.5 3.5 0 0 1-3.027 3.288L13 12h1.5a1.5 1.5 0 0 0 1.5-1.5v-5A1.5 1.5 0 0 0 14.5 4h-11A1.5 1.5 0 0 0 2 5.5v5A1.5 1.5 0 0 0 3.5 12H5l-1.968 1.967A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z\" }),\n\t\t/* @__PURE__ */ _jsx(\"path\", {\n\t\t\td: \"M8.631 10.902a.5.5 0 0 1 .738 0l4.363 4.76a.5.5 0 0 1-.369.838H4.637a.5.5 0 0 1-.369-.838z\",\n\t\t\tstyle: { animation: \"var(--media-icon-airplay-triangle-animation, media-icon-airplay-triangle 1s ease-in-out infinite alternate)\" }\n\t\t})\n\t]\n});\nexport default AirPlayExitIcon;\n"],"mappings":";;AACA,MAAM,mBAAmB,UAA0B,qBAAM,OAAO;CAC/D,OAAO;CACP,OAAO;CACP,QAAQ;CACR,MAAM;CACN,eAAe;CACf,SAAS;CACT,GAAG;CACH,UAAU;EACO,oBAAK,SAAS,EAAE,UAAU,kRAAkR,CAAC;EAC7S,oBAAK,QAAQ;GAC5B,GAAG;GACH,OAAO,EAAE,WAAW,sGAAsG;EAC3H,CAAC;EACe,oBAAK,QAAQ,EAAE,GAAG,uOAAuO,CAAC;EAC1P,oBAAK,QAAQ;GAC5B,GAAG;GACH,OAAO,EAAE,WAAW,8GAA8G;EACnI,CAAC;CACF;AACD,CAAC"}
@@ -9,15 +9,15 @@ const AirPlayExitIcon = (props) => /* @__PURE__ */ jsxs("svg", {
9
9
  viewBox: "0 0 18 18",
10
10
  ...props,
11
11
  children: [
12
- /* @__PURE__ */ jsx("style", { children: "@keyframes media-icon--airplay__triangle{0%{translate:0 0}to{translate:0-2px}}@keyframes media-icon--airplay__fill{0%{opacity:0}to{opacity:.2}}@media (prefers-reduced-motion:reduce){:root{--media-icon--airplay__fill-animation:none;--media-icon--airplay__triangle-animation:none}}" }),
12
+ /* @__PURE__ */ jsx("style", { children: "@keyframes media-icon-airplay-triangle{0%{translate:0 0}to{translate:0-2px}}@keyframes media-icon-airplay-fill{0%{opacity:0}to{opacity:.2}}@media (prefers-reduced-motion:reduce){:root{--media-icon-airplay-fill-animation:none;--media-icon-airplay-triangle-animation:none}}" }),
13
13
  /* @__PURE__ */ jsx("path", {
14
14
  d: "M14.5 2A3.5 3.5 0 0 1 18 5.5v5a3.5 3.5 0 0 1-3.032 3.468L9.354 8.354a.5.5 0 0 0-.708 0l-5.615 5.614A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z",
15
- style: { animation: "var(--media-icon--airplay__fill-animation, media-icon--airplay__fill 1s ease-in-out infinite alternate)" }
15
+ style: { animation: "var(--media-icon-airplay-fill-animation, media-icon-airplay-fill 1s ease-in-out infinite alternate)" }
16
16
  }),
17
17
  /* @__PURE__ */ jsx("path", { d: "M14.5 2A3.5 3.5 0 0 1 18 5.5v5l-.005.18a3.5 3.5 0 0 1-3.027 3.288L13.5 12.5h1a2 2 0 0 0 2-2v-5a2 2 0 0 0-2-2h-11a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h1l-1.468 1.467A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z" }),
18
18
  /* @__PURE__ */ jsx("path", {
19
19
  d: "M8.631 10.902a.5.5 0 0 1 .738 0l4.363 4.76a.5.5 0 0 1-.369.838H4.637a.5.5 0 0 1-.369-.838z",
20
- style: { animation: "var(--media-icon--airplay__triangle-animation, media-icon--airplay__triangle 1s ease-in-out infinite alternate)" }
20
+ style: { animation: "var(--media-icon-airplay-triangle-animation, media-icon-airplay-triangle 1s ease-in-out infinite alternate)" }
21
21
  })
22
22
  ]
23
23
  });
@@ -1 +1 @@
1
- {"version":3,"file":"airplay-exit.js","names":[],"sources":["../../../../../../../icons/dist/react/minimal/airplay-exit.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst AirPlayExitIcon = (props) => /* @__PURE__ */ _jsxs(\"svg\", {\n\txmlns: \"http://www.w3.org/2000/svg\",\n\twidth: 18,\n\theight: 18,\n\tfill: \"currentColor\",\n\t\"aria-hidden\": \"true\",\n\tviewBox: \"0 0 18 18\",\n\t...props,\n\tchildren: [\n\t\t/* @__PURE__ */ _jsx(\"style\", { children: \"@keyframes media-icon--airplay__triangle{0%{translate:0 0}to{translate:0-2px}}@keyframes media-icon--airplay__fill{0%{opacity:0}to{opacity:.2}}@media (prefers-reduced-motion:reduce){:root{--media-icon--airplay__fill-animation:none;--media-icon--airplay__triangle-animation:none}}\" }),\n\t\t/* @__PURE__ */ _jsx(\"path\", {\n\t\t\td: \"M14.5 2A3.5 3.5 0 0 1 18 5.5v5a3.5 3.5 0 0 1-3.032 3.468L9.354 8.354a.5.5 0 0 0-.708 0l-5.615 5.614A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z\",\n\t\t\tstyle: { animation: \"var(--media-icon--airplay__fill-animation, media-icon--airplay__fill 1s ease-in-out infinite alternate)\" }\n\t\t}),\n\t\t/* @__PURE__ */ _jsx(\"path\", { d: \"M14.5 2A3.5 3.5 0 0 1 18 5.5v5l-.005.18a3.5 3.5 0 0 1-3.027 3.288L13.5 12.5h1a2 2 0 0 0 2-2v-5a2 2 0 0 0-2-2h-11a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h1l-1.468 1.467A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z\" }),\n\t\t/* @__PURE__ */ _jsx(\"path\", {\n\t\t\td: \"M8.631 10.902a.5.5 0 0 1 .738 0l4.363 4.76a.5.5 0 0 1-.369.838H4.637a.5.5 0 0 1-.369-.838z\",\n\t\t\tstyle: { animation: \"var(--media-icon--airplay__triangle-animation, media-icon--airplay__triangle 1s ease-in-out infinite alternate)\" }\n\t\t})\n\t]\n});\nexport default AirPlayExitIcon;\n"],"mappings":";;AACA,MAAM,mBAAmB,UAA0B,qBAAM,OAAO;CAC/D,OAAO;CACP,OAAO;CACP,QAAQ;CACR,MAAM;CACN,eAAe;CACf,SAAS;CACT,GAAG;CACH,UAAU;EACO,oBAAK,SAAS,EAAE,UAAU,0RAA0R,CAAC;EACrT,oBAAK,QAAQ;GAC5B,GAAG;GACH,OAAO,EAAE,WAAW,0GAA0G;EAC/H,CAAC;EACe,oBAAK,QAAQ,EAAE,GAAG,6MAA6M,CAAC;EAChO,oBAAK,QAAQ;GAC5B,GAAG;GACH,OAAO,EAAE,WAAW,kHAAkH;EACvI,CAAC;CACF;AACD,CAAC"}
1
+ {"version":3,"file":"airplay-exit.js","names":[],"sources":["../../../../../../../icons/dist/react/minimal/airplay-exit.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst AirPlayExitIcon = (props) => /* @__PURE__ */ _jsxs(\"svg\", {\n\txmlns: \"http://www.w3.org/2000/svg\",\n\twidth: 18,\n\theight: 18,\n\tfill: \"currentColor\",\n\t\"aria-hidden\": \"true\",\n\tviewBox: \"0 0 18 18\",\n\t...props,\n\tchildren: [\n\t\t/* @__PURE__ */ _jsx(\"style\", { children: \"@keyframes media-icon-airplay-triangle{0%{translate:0 0}to{translate:0-2px}}@keyframes media-icon-airplay-fill{0%{opacity:0}to{opacity:.2}}@media (prefers-reduced-motion:reduce){:root{--media-icon-airplay-fill-animation:none;--media-icon-airplay-triangle-animation:none}}\" }),\n\t\t/* @__PURE__ */ _jsx(\"path\", {\n\t\t\td: \"M14.5 2A3.5 3.5 0 0 1 18 5.5v5a3.5 3.5 0 0 1-3.032 3.468L9.354 8.354a.5.5 0 0 0-.708 0l-5.615 5.614A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z\",\n\t\t\tstyle: { animation: \"var(--media-icon-airplay-fill-animation, media-icon-airplay-fill 1s ease-in-out infinite alternate)\" }\n\t\t}),\n\t\t/* @__PURE__ */ _jsx(\"path\", { d: \"M14.5 2A3.5 3.5 0 0 1 18 5.5v5l-.005.18a3.5 3.5 0 0 1-3.027 3.288L13.5 12.5h1a2 2 0 0 0 2-2v-5a2 2 0 0 0-2-2h-11a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h1l-1.468 1.467A3.5 3.5 0 0 1 0 10.5v-5A3.5 3.5 0 0 1 3.5 2z\" }),\n\t\t/* @__PURE__ */ _jsx(\"path\", {\n\t\t\td: \"M8.631 10.902a.5.5 0 0 1 .738 0l4.363 4.76a.5.5 0 0 1-.369.838H4.637a.5.5 0 0 1-.369-.838z\",\n\t\t\tstyle: { animation: \"var(--media-icon-airplay-triangle-animation, media-icon-airplay-triangle 1s ease-in-out infinite alternate)\" }\n\t\t})\n\t]\n});\nexport default AirPlayExitIcon;\n"],"mappings":";;AACA,MAAM,mBAAmB,UAA0B,qBAAM,OAAO;CAC/D,OAAO;CACP,OAAO;CACP,QAAQ;CACR,MAAM;CACN,eAAe;CACf,SAAS;CACT,GAAG;CACH,UAAU;EACO,oBAAK,SAAS,EAAE,UAAU,kRAAkR,CAAC;EAC7S,oBAAK,QAAQ;GAC5B,GAAG;GACH,OAAO,EAAE,WAAW,sGAAsG;EAC3H,CAAC;EACe,oBAAK,QAAQ,EAAE,GAAG,6MAA6M,CAAC;EAChO,oBAAK,QAAQ;GAC5B,GAAG;GACH,OAAO,EAAE,WAAW,8GAA8G;EACnI,CAAC;CACF;AACD,CAAC"}
@@ -1,2 +1,7 @@
1
1
  import { AirPlayEnterIcon, AirPlayExitIcon, CaptionsOffIcon, CaptionsOnIcon, CastEnterIcon, CastExitIcon, CheckIcon, ChevronIcon, FullscreenEnterIcon, FullscreenExitIcon, GearIcon, PauseIcon, PipEnterIcon, PipExitIcon, PlayIcon, QualityIcon, RestartIcon, SeekIcon, SpeechIcon, SpeedIcon, SpinnerIcon, SwitchesIcon, VolumeHighIcon, VolumeLowIcon, VolumeOffIcon } from "./dist/react/default/index.js";
2
- export { AirPlayEnterIcon, AirPlayExitIcon, CaptionsOffIcon, CaptionsOnIcon, CastEnterIcon, CastExitIcon, CheckIcon, ChevronIcon, FullscreenEnterIcon, FullscreenExitIcon, GearIcon, PauseIcon, PipEnterIcon, PipExitIcon, PlayIcon, QualityIcon, RestartIcon, SeekIcon, SpeechIcon, SpeedIcon, SpinnerIcon, SwitchesIcon, VolumeHighIcon, VolumeLowIcon, VolumeOffIcon };
2
+ import { SVGProps } from "react";
3
+ //#region src/icons/index.d.ts
4
+ type IconProps = SVGProps<SVGSVGElement>;
5
+ //#endregion
6
+ export { AirPlayEnterIcon, AirPlayExitIcon, CaptionsOffIcon, CaptionsOnIcon, CastEnterIcon, CastExitIcon, CheckIcon, ChevronIcon, FullscreenEnterIcon, FullscreenExitIcon, GearIcon, IconProps, PauseIcon, PipEnterIcon, PipExitIcon, PlayIcon, QualityIcon, RestartIcon, SeekIcon, SpeechIcon, SpeedIcon, SpinnerIcon, SwitchesIcon, VolumeHighIcon, VolumeLowIcon, VolumeOffIcon };
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/icons/index.ts"],"mappings":";;;KAIY,YAAY,SAAS"}
@@ -1,2 +1,7 @@
1
1
  import { AirPlayEnterIcon, AirPlayExitIcon, CaptionsOffIcon, CaptionsOnIcon, CastEnterIcon, CastExitIcon, CheckIcon, ChevronIcon, FullscreenEnterIcon, FullscreenExitIcon, GearIcon, PauseIcon, PipEnterIcon, PipExitIcon, PlayIcon, QualityIcon, RestartIcon, SeekIcon, SpeechIcon, SpeedIcon, SpinnerIcon, SwitchesIcon, VolumeHighIcon, VolumeLowIcon, VolumeOffIcon } from "../dist/react/minimal/index.js";
2
- export { AirPlayEnterIcon, AirPlayExitIcon, CaptionsOffIcon, CaptionsOnIcon, CastEnterIcon, CastExitIcon, CheckIcon, ChevronIcon, FullscreenEnterIcon, FullscreenExitIcon, GearIcon, PauseIcon, PipEnterIcon, PipExitIcon, PlayIcon, QualityIcon, RestartIcon, SeekIcon, SpeechIcon, SpeedIcon, SpinnerIcon, SwitchesIcon, VolumeHighIcon, VolumeLowIcon, VolumeOffIcon };
2
+ import { SVGProps } from "react";
3
+ //#region src/icons/minimal/index.d.ts
4
+ type IconProps = SVGProps<SVGSVGElement>;
5
+ //#endregion
6
+ export { AirPlayEnterIcon, AirPlayExitIcon, CaptionsOffIcon, CaptionsOnIcon, CastEnterIcon, CastExitIcon, CheckIcon, ChevronIcon, FullscreenEnterIcon, FullscreenExitIcon, GearIcon, IconProps, PauseIcon, PipEnterIcon, PipExitIcon, PlayIcon, QualityIcon, RestartIcon, SeekIcon, SpeechIcon, SpeedIcon, SpinnerIcon, SwitchesIcon, VolumeHighIcon, VolumeLowIcon, VolumeOffIcon };
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/icons/minimal/index.ts"],"mappings":";;;KAIY,YAAY,SAAS"}
@@ -1,5 +1,6 @@
1
1
  import { I18nContext, I18nContextValue, useLocale, useTranslator } from "./i18n/context.js";
2
2
  import { CreateI18nOptions, CreateI18nResult, I18nProvider, I18nProviderProps, createI18n } from "./i18n/create-i18n.js";
3
+ import { Text, TextProps } from "./i18n/text.js";
3
4
  import { FlatTranslations, Locale, TranslationParams, Translations, Translator, createTranslator, findLocaleKeys, getI18nTranslations, hasRegisteredLocale, onI18nRegistryChange, registerI18n } from "./i18n/index.js";
4
5
  import { Container, ContainerProps } from "./player/container.js";
5
6
  import { PlayerContextValue, useContainer, useContainerAttach, useMedia, useMediaAttach, useOptionalContainer, useOptionalPlayer, usePlayer, usePlayerContext } from "./player/context.js";
@@ -106,10 +107,10 @@ import { IndicatorStatus, InputAction, InputIndicatorLabels } from "@videojs/cor
106
107
  export * from "@videojs/core/dom";
107
108
  export * from "@videojs/media/dom";
108
109
  declare namespace index_d_exports {
109
- export { AirPlayButton, AirPlayButtonProps, index_parts_d_exports as AlertDialog, AlertDialogContextValue, AudioTrackOption, AudioTrackOptionsProps, AudioTrackOptionsResult, AudioTrackRadioGroup, AudioTrackRadioGroupItemProps, AudioTrackRadioGroupItemState, AudioTrackRadioGroupProps, BufferingIndicator, BufferingIndicatorProps, CaptionsButton, CaptionsButtonProps, CaptionsOption, CaptionsOptionsProps, CaptionsOptionsResult, CaptionsRadioGroup, CaptionsRadioGroupItemProps, CaptionsRadioGroupItemState, CaptionsRadioGroupProps, CastButton, CastButtonProps, Comparator, Container, ContainerProps, index_parts_d_exports$1 as Controls, ControlsGroupProps, ControlsRootProps, CreateI18nOptions, CreateI18nResult, CreatePlayerConfig, CreatePlayerResult, index_parts_d_exports$2 as ErrorDialog, ErrorDialogContextValue, FlatTranslations, FullscreenButton, FullscreenButtonProps, Gesture, GestureProps, HTMLProps, Hotkey, HotkeyProps, I18nContext, I18nContextValue, I18nProvider, I18nProviderProps, IndicatorStatus, InputAction, InputIndicatorLabels, LiveButton, LiveButtonProps, Locale, MediaGesture, MediaGestureProps, MediaHotkey, MediaHotkeyProps, index_parts_d_exports$3 as Menu, MenuContextValue, MuteButton, MuteButtonProps, NodeListLike, PiPButton, PiPButtonProps, PlayButton, PlayButtonProps, PlaybackRateButton, PlaybackRateButtonProps, PlaybackRateOption, PlaybackRateOptionsProps, PlaybackRateOptionsResult, PlaybackRateRadioGroup, PlaybackRateRadioGroupItemProps, PlaybackRateRadioGroupItemState, PlaybackRateRadioGroupProps, PlayerContextValue, PlayerProps, index_parts_d_exports$4 as Popover, PopoverContextValue, Poster, PosterProps, QualityOption, QualityOptionsProps, QualityOptionsResult, QualityRadioGroup, QualityRadioGroupItemProps, QualityRadioGroupItemState, QualityRadioGroupProps, RenderFunction, RenderProp, SeekButton, SeekButtonProps, index_parts_d_exports$5 as SeekIndicator, SeekIndicatorRootProps, SeekIndicatorValueProps, Selector, index_parts_d_exports$6 as Slider, SliderBufferProps, SliderFillProps, SliderRootProps, SliderThumbProps, SliderThumbnailProps, SliderTrackProps, SliderValueProps, StatusAnnouncer, StatusAnnouncerProps, index_parts_d_exports$7 as StatusIndicator, StatusIndicatorRootProps, StatusIndicatorValueProps, Thumbnail, ThumbnailProps, index_parts_d_exports$8 as Time, index_parts_d_exports$9 as TimeSlider, TimeSliderChapterState, TimeSliderChapterTitleProps, TimeSliderChapterTitleState, TimeSliderChaptersProps, TimeSliderChaptersState, index_parts_d_exports$10 as Tooltip, TooltipContent, TooltipContextValue, TranslationParams, Translations, Translator, UIComponentProps, UseDoubleTapGestureOptions, UseHotkeyOptions, UseTapGestureOptions, index_parts_d_exports$11 as VolumeIndicator, VolumeIndicatorFillProps, VolumeIndicatorRootProps, VolumeIndicatorValueProps, index_parts_d_exports$12 as VolumeSlider, composeRefs, createI18n, createPlayer, createSelector, createTranslator, findLocaleKeys, getI18nTranslations, hasMetadata, hasRegisteredLocale, isMediaAudioTrackCapable, isMediaBufferCapable, isMediaErrorCapable, isMediaLiveCapable, isMediaPauseCapable, isMediaPlaybackRateCapable, isMediaRemotePlaybackCapable, isMediaSeekCapable, isMediaSourceCapable, isMediaStreamTypeCapable, isMediaTextTrackCapable, isMediaVideoDimensionsCapable, isMediaVideoRenditionCapable, isMediaVolumeCapable, isQuerySelectorAllCapable, mergeProps, onI18nRegistryChange, registerI18n, renderElement, shallowEqual, useAlertDialogContext, useAttachMedia, useAudioTrackOptions, useButton, useCaptionsOptions, useComposedRefs, useContainer, useContainerAttach, useDestroy, useDoubleTapGesture, useErrorDialogContext, useHotkey, useHotkeyShortcut, useLatestRef, useLocale, useMedia, useMediaAttach, useMediaComponent, useMediaInstance, useMenuContext, useOptionalContainer, useOptionalMenuContext, useOptionalPlayer, usePlaybackRateOptions, usePlayer, usePlayerContext, usePopoverContext, useQualityOptions, useSelector, useSlider, useStore, useTapGesture, useTooltipContext, useTranslator };
110
+ export { AirPlayButton, AirPlayButtonProps, index_parts_d_exports as AlertDialog, AlertDialogContextValue, AudioTrackOption, AudioTrackOptionsProps, AudioTrackOptionsResult, AudioTrackRadioGroup, AudioTrackRadioGroupItemProps, AudioTrackRadioGroupItemState, AudioTrackRadioGroupProps, BufferingIndicator, BufferingIndicatorProps, CaptionsButton, CaptionsButtonProps, CaptionsOption, CaptionsOptionsProps, CaptionsOptionsResult, CaptionsRadioGroup, CaptionsRadioGroupItemProps, CaptionsRadioGroupItemState, CaptionsRadioGroupProps, CastButton, CastButtonProps, Comparator, Container, ContainerProps, index_parts_d_exports$1 as Controls, ControlsGroupProps, ControlsRootProps, CreateI18nOptions, CreateI18nResult, CreatePlayerConfig, CreatePlayerResult, index_parts_d_exports$2 as ErrorDialog, ErrorDialogContextValue, FlatTranslations, FullscreenButton, FullscreenButtonProps, Gesture, GestureProps, HTMLProps, Hotkey, HotkeyProps, I18nContext, I18nContextValue, I18nProvider, I18nProviderProps, IndicatorStatus, InputAction, InputIndicatorLabels, LiveButton, LiveButtonProps, Locale, MediaGesture, MediaGestureProps, MediaHotkey, MediaHotkeyProps, index_parts_d_exports$3 as Menu, MenuContextValue, MuteButton, MuteButtonProps, NodeListLike, PiPButton, PiPButtonProps, PlayButton, PlayButtonProps, PlaybackRateButton, PlaybackRateButtonProps, PlaybackRateOption, PlaybackRateOptionsProps, PlaybackRateOptionsResult, PlaybackRateRadioGroup, PlaybackRateRadioGroupItemProps, PlaybackRateRadioGroupItemState, PlaybackRateRadioGroupProps, PlayerContextValue, PlayerProps, index_parts_d_exports$4 as Popover, PopoverContextValue, Poster, PosterProps, QualityOption, QualityOptionsProps, QualityOptionsResult, QualityRadioGroup, QualityRadioGroupItemProps, QualityRadioGroupItemState, QualityRadioGroupProps, RenderFunction, RenderProp, SeekButton, SeekButtonProps, index_parts_d_exports$5 as SeekIndicator, SeekIndicatorRootProps, SeekIndicatorValueProps, Selector, index_parts_d_exports$6 as Slider, SliderBufferProps, SliderFillProps, SliderRootProps, SliderThumbProps, SliderThumbnailProps, SliderTrackProps, SliderValueProps, StatusAnnouncer, StatusAnnouncerProps, index_parts_d_exports$7 as StatusIndicator, StatusIndicatorRootProps, StatusIndicatorValueProps, Text, TextProps, Thumbnail, ThumbnailProps, index_parts_d_exports$8 as Time, index_parts_d_exports$9 as TimeSlider, TimeSliderChapterState, TimeSliderChapterTitleProps, TimeSliderChapterTitleState, TimeSliderChaptersProps, TimeSliderChaptersState, index_parts_d_exports$10 as Tooltip, TooltipContent, TooltipContextValue, TranslationParams, Translations, Translator, UIComponentProps, UseDoubleTapGestureOptions, UseHotkeyOptions, UseTapGestureOptions, index_parts_d_exports$11 as VolumeIndicator, VolumeIndicatorFillProps, VolumeIndicatorRootProps, VolumeIndicatorValueProps, index_parts_d_exports$12 as VolumeSlider, composeRefs, createI18n, createPlayer, createSelector, createTranslator, findLocaleKeys, getI18nTranslations, hasMetadata, hasRegisteredLocale, isMediaAudioTrackCapable, isMediaBufferCapable, isMediaErrorCapable, isMediaLiveCapable, isMediaPauseCapable, isMediaPlaybackRateCapable, isMediaRemotePlaybackCapable, isMediaSeekCapable, isMediaSourceCapable, isMediaStreamTypeCapable, isMediaTextTrackCapable, isMediaVideoDimensionsCapable, isMediaVideoRenditionCapable, isMediaVolumeCapable, isQuerySelectorAllCapable, mergeProps, onI18nRegistryChange, registerI18n, renderElement, shallowEqual, useAlertDialogContext, useAttachMedia, useAudioTrackOptions, useButton, useCaptionsOptions, useComposedRefs, useContainer, useContainerAttach, useDestroy, useDoubleTapGesture, useErrorDialogContext, useHotkey, useHotkeyShortcut, useLatestRef, useLocale, useMedia, useMediaAttach, useMediaComponent, useMediaInstance, useMenuContext, useOptionalContainer, useOptionalMenuContext, useOptionalPlayer, usePlaybackRateOptions, usePlayer, usePlayerContext, usePopoverContext, useQualityOptions, useSelector, useSlider, useStore, useTapGesture, useTooltipContext, useTranslator };
110
111
  }
111
112
  import * as import__videojs_core_dom from "@videojs/core/dom";
112
113
  import * as import__videojs_media_dom from "@videojs/media/dom";
113
114
  //#endregion
114
- export { AirPlayButton, type AirPlayButtonProps, index_parts_d_exports as AlertDialog, type AlertDialogContextValue, type AudioTrackOption, type AudioTrackOptionsProps, type AudioTrackOptionsResult, AudioTrackRadioGroup, type AudioTrackRadioGroupItemProps, type AudioTrackRadioGroupItemState, type AudioTrackRadioGroupProps, BufferingIndicator, type BufferingIndicatorProps, CaptionsButton, type CaptionsButtonProps, type CaptionsOption, type CaptionsOptionsProps, type CaptionsOptionsResult, CaptionsRadioGroup, type CaptionsRadioGroupItemProps, type CaptionsRadioGroupItemState, type CaptionsRadioGroupProps, CastButton, type CastButtonProps, type Comparator, Container, type ContainerProps, index_parts_d_exports$1 as Controls, type ControlsGroupProps, type ControlsRootProps, type CreateI18nOptions, type CreateI18nResult, type CreatePlayerConfig, type CreatePlayerResult, index_parts_d_exports$2 as ErrorDialog, type ErrorDialogContextValue, type FlatTranslations, FullscreenButton, type FullscreenButtonProps, Gesture, type GestureProps, type HTMLProps, Hotkey, type HotkeyProps, I18nContext, type I18nContextValue, I18nProvider, type I18nProviderProps, type IndicatorStatus, type InputAction, type InputIndicatorLabels, LiveButton, type LiveButtonProps, type Locale, MediaGesture, type MediaGestureProps, MediaHotkey, type MediaHotkeyProps, index_parts_d_exports$3 as Menu, type MenuContextValue, MuteButton, type MuteButtonProps, type NodeListLike, PiPButton, type PiPButtonProps, PlayButton, type PlayButtonProps, PlaybackRateButton, type PlaybackRateButtonProps, type PlaybackRateOption, type PlaybackRateOptionsProps, type PlaybackRateOptionsResult, PlaybackRateRadioGroup, type PlaybackRateRadioGroupItemProps, type PlaybackRateRadioGroupItemState, type PlaybackRateRadioGroupProps, type PlayerContextValue, type PlayerProps, index_parts_d_exports$4 as Popover, type PopoverContextValue, Poster, type PosterProps, type QualityOption, type QualityOptionsProps, type QualityOptionsResult, QualityRadioGroup, type QualityRadioGroupItemProps, type QualityRadioGroupItemState, type QualityRadioGroupProps, type RenderFunction, type RenderProp, SeekButton, type SeekButtonProps, index_parts_d_exports$5 as SeekIndicator, type SeekIndicatorRootProps, type SeekIndicatorValueProps, type Selector, index_parts_d_exports$6 as Slider, type SliderBufferProps, type SliderFillProps, type SliderRootProps, type SliderThumbProps, type SliderThumbnailProps, type SliderTrackProps, type SliderValueProps, StatusAnnouncer, type StatusAnnouncerProps, index_parts_d_exports$7 as StatusIndicator, type StatusIndicatorRootProps, type StatusIndicatorValueProps, Thumbnail, type ThumbnailProps, index_parts_d_exports$8 as Time, index_parts_d_exports$9 as TimeSlider, type TimeSliderChapterState, type TimeSliderChapterTitleProps, type TimeSliderChapterTitleState, type TimeSliderChaptersProps, type TimeSliderChaptersState, index_parts_d_exports$10 as Tooltip, type TooltipContent, type TooltipContextValue, type TranslationParams, type Translations, type Translator, type UIComponentProps, type UseDoubleTapGestureOptions, type UseHotkeyOptions, type UseTapGestureOptions, index_parts_d_exports$11 as VolumeIndicator, type VolumeIndicatorFillProps, type VolumeIndicatorRootProps, type VolumeIndicatorValueProps, index_parts_d_exports$12 as VolumeSlider, composeRefs, createI18n, createPlayer, createSelector, createTranslator, findLocaleKeys, getI18nTranslations, hasMetadata, hasRegisteredLocale, index_d_exports, isMediaAudioTrackCapable, isMediaBufferCapable, isMediaErrorCapable, isMediaLiveCapable, isMediaPauseCapable, isMediaPlaybackRateCapable, isMediaRemotePlaybackCapable, isMediaSeekCapable, isMediaSourceCapable, isMediaStreamTypeCapable, isMediaTextTrackCapable, isMediaVideoDimensionsCapable, isMediaVideoRenditionCapable, isMediaVolumeCapable, isQuerySelectorAllCapable, mergeProps, onI18nRegistryChange, registerI18n, renderElement, shallowEqual, useAlertDialogContext, useAttachMedia, useAudioTrackOptions, useButton, useCaptionsOptions, useComposedRefs, useContainer, useContainerAttach, useDestroy, useDoubleTapGesture, useErrorDialogContext, useHotkey, useHotkeyShortcut, useLatestRef, useLocale, useMedia, useMediaAttach, useMediaComponent, useMediaInstance, useMenuContext, useOptionalContainer, useOptionalMenuContext, useOptionalPlayer, usePlaybackRateOptions, usePlayer, usePlayerContext, usePopoverContext, useQualityOptions, useSelector, useSlider, useStore, useTapGesture, useTooltipContext, useTranslator };
115
+ export { AirPlayButton, type AirPlayButtonProps, index_parts_d_exports as AlertDialog, type AlertDialogContextValue, type AudioTrackOption, type AudioTrackOptionsProps, type AudioTrackOptionsResult, AudioTrackRadioGroup, type AudioTrackRadioGroupItemProps, type AudioTrackRadioGroupItemState, type AudioTrackRadioGroupProps, BufferingIndicator, type BufferingIndicatorProps, CaptionsButton, type CaptionsButtonProps, type CaptionsOption, type CaptionsOptionsProps, type CaptionsOptionsResult, CaptionsRadioGroup, type CaptionsRadioGroupItemProps, type CaptionsRadioGroupItemState, type CaptionsRadioGroupProps, CastButton, type CastButtonProps, type Comparator, Container, type ContainerProps, index_parts_d_exports$1 as Controls, type ControlsGroupProps, type ControlsRootProps, type CreateI18nOptions, type CreateI18nResult, type CreatePlayerConfig, type CreatePlayerResult, index_parts_d_exports$2 as ErrorDialog, type ErrorDialogContextValue, type FlatTranslations, FullscreenButton, type FullscreenButtonProps, Gesture, type GestureProps, type HTMLProps, Hotkey, type HotkeyProps, I18nContext, type I18nContextValue, I18nProvider, type I18nProviderProps, type IndicatorStatus, type InputAction, type InputIndicatorLabels, LiveButton, type LiveButtonProps, type Locale, MediaGesture, type MediaGestureProps, MediaHotkey, type MediaHotkeyProps, index_parts_d_exports$3 as Menu, type MenuContextValue, MuteButton, type MuteButtonProps, type NodeListLike, PiPButton, type PiPButtonProps, PlayButton, type PlayButtonProps, PlaybackRateButton, type PlaybackRateButtonProps, type PlaybackRateOption, type PlaybackRateOptionsProps, type PlaybackRateOptionsResult, PlaybackRateRadioGroup, type PlaybackRateRadioGroupItemProps, type PlaybackRateRadioGroupItemState, type PlaybackRateRadioGroupProps, type PlayerContextValue, type PlayerProps, index_parts_d_exports$4 as Popover, type PopoverContextValue, Poster, type PosterProps, type QualityOption, type QualityOptionsProps, type QualityOptionsResult, QualityRadioGroup, type QualityRadioGroupItemProps, type QualityRadioGroupItemState, type QualityRadioGroupProps, type RenderFunction, type RenderProp, SeekButton, type SeekButtonProps, index_parts_d_exports$5 as SeekIndicator, type SeekIndicatorRootProps, type SeekIndicatorValueProps, type Selector, index_parts_d_exports$6 as Slider, type SliderBufferProps, type SliderFillProps, type SliderRootProps, type SliderThumbProps, type SliderThumbnailProps, type SliderTrackProps, type SliderValueProps, StatusAnnouncer, type StatusAnnouncerProps, index_parts_d_exports$7 as StatusIndicator, type StatusIndicatorRootProps, type StatusIndicatorValueProps, Text, type TextProps, Thumbnail, type ThumbnailProps, index_parts_d_exports$8 as Time, index_parts_d_exports$9 as TimeSlider, type TimeSliderChapterState, type TimeSliderChapterTitleProps, type TimeSliderChapterTitleState, type TimeSliderChaptersProps, type TimeSliderChaptersState, index_parts_d_exports$10 as Tooltip, type TooltipContent, type TooltipContextValue, type TranslationParams, type Translations, type Translator, type UIComponentProps, type UseDoubleTapGestureOptions, type UseHotkeyOptions, type UseTapGestureOptions, index_parts_d_exports$11 as VolumeIndicator, type VolumeIndicatorFillProps, type VolumeIndicatorRootProps, type VolumeIndicatorValueProps, index_parts_d_exports$12 as VolumeSlider, composeRefs, createI18n, createPlayer, createSelector, createTranslator, findLocaleKeys, getI18nTranslations, hasMetadata, hasRegisteredLocale, index_d_exports, isMediaAudioTrackCapable, isMediaBufferCapable, isMediaErrorCapable, isMediaLiveCapable, isMediaPauseCapable, isMediaPlaybackRateCapable, isMediaRemotePlaybackCapable, isMediaSeekCapable, isMediaSourceCapable, isMediaStreamTypeCapable, isMediaTextTrackCapable, isMediaVideoDimensionsCapable, isMediaVideoRenditionCapable, isMediaVolumeCapable, isQuerySelectorAllCapable, mergeProps, onI18nRegistryChange, registerI18n, renderElement, shallowEqual, useAlertDialogContext, useAttachMedia, useAudioTrackOptions, useButton, useCaptionsOptions, useComposedRefs, useContainer, useContainerAttach, useDestroy, useDoubleTapGesture, useErrorDialogContext, useHotkey, useHotkeyShortcut, useLatestRef, useLocale, useMedia, useMediaAttach, useMediaComponent, useMediaInstance, useMenuContext, useOptionalContainer, useOptionalMenuContext, useOptionalPlayer, usePlaybackRateOptions, usePlayer, usePlayerContext, usePopoverContext, useQualityOptions, useSelector, useSlider, useStore, useTapGesture, useTooltipContext, useTranslator };
115
116
  //# sourceMappingURL=index.d.ts.map
package/dist/dev/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { I18nContext, useLocale, useTranslator } from "./i18n/context.js";
3
3
  import { I18nProvider, createI18n } from "./i18n/create-i18n.js";
4
+ import { Text } from "./i18n/text.js";
4
5
  import { createTranslator, findLocaleKeys, getI18nTranslations, hasRegisteredLocale, onI18nRegistryChange, registerI18n } from "./i18n/index.js";
5
6
  import { composeRefs, useComposedRefs } from "./utils/use-composed-refs.js";
6
7
  import { useContainer, useContainerAttach, useMedia, useMediaAttach, useOptionalContainer, useOptionalPlayer, usePlayer, usePlayerContext } from "./player/context.js";
@@ -66,4 +67,4 @@ import { createSelector, shallowEqual } from "@videojs/store";
66
67
  import { useSelector, useStore } from "@videojs/store/react";
67
68
  export * from "@videojs/core/dom";
68
69
  export * from "@videojs/media/dom";
69
- export { AirPlayButton, index_parts_exports as AlertDialog, AudioTrackRadioGroup, BufferingIndicator, CaptionsButton, CaptionsRadioGroup, CastButton, Container, index_parts_exports$1 as Controls, index_parts_exports$2 as ErrorDialog, FullscreenButton, Gesture, Hotkey, I18nContext, I18nProvider, LiveButton, MediaGesture, MediaHotkey, index_parts_exports$3 as Menu, MuteButton, PiPButton, PlayButton, PlaybackRateButton, PlaybackRateRadioGroup, index_parts_exports$4 as Popover, Poster, QualityRadioGroup, SeekButton, index_parts_exports$5 as SeekIndicator, index_parts_exports$6 as Slider, StatusAnnouncer, index_parts_exports$7 as StatusIndicator, Thumbnail, index_parts_exports$8 as Time, index_parts_exports$9 as TimeSlider, index_parts_exports$10 as Tooltip, index_parts_exports$11 as VolumeIndicator, index_parts_exports$12 as VolumeSlider, composeRefs, createI18n, createPlayer, createSelector, createTranslator, findLocaleKeys, getI18nTranslations, hasMetadata, hasRegisteredLocale, isMediaAudioTrackCapable, isMediaBufferCapable, isMediaErrorCapable, isMediaLiveCapable, isMediaPauseCapable, isMediaPlaybackRateCapable, isMediaRemotePlaybackCapable, isMediaSeekCapable, isMediaSourceCapable, isMediaStreamTypeCapable, isMediaTextTrackCapable, isMediaVideoDimensionsCapable, isMediaVideoRenditionCapable, isMediaVolumeCapable, isQuerySelectorAllCapable, mergeProps, onI18nRegistryChange, registerI18n, renderElement, shallowEqual, useAlertDialogContext, useAttachMedia, useAudioTrackOptions, useButton, useCaptionsOptions, useComposedRefs, useContainer, useContainerAttach, useDestroy, useDoubleTapGesture, useErrorDialogContext, useHotkey, useHotkeyShortcut, useLatestRef, useLocale, useMedia, useMediaAttach, useMediaComponent, useMediaInstance, useMenuContext, useOptionalContainer, useOptionalMenuContext, useOptionalPlayer, usePlaybackRateOptions, usePlayer, usePlayerContext, usePopoverContext, useQualityOptions, useSelector, useSlider, useStore, useTapGesture, useTooltipContext, useTranslator };
70
+ export { AirPlayButton, index_parts_exports as AlertDialog, AudioTrackRadioGroup, BufferingIndicator, CaptionsButton, CaptionsRadioGroup, CastButton, Container, index_parts_exports$1 as Controls, index_parts_exports$2 as ErrorDialog, FullscreenButton, Gesture, Hotkey, I18nContext, I18nProvider, LiveButton, MediaGesture, MediaHotkey, index_parts_exports$3 as Menu, MuteButton, PiPButton, PlayButton, PlaybackRateButton, PlaybackRateRadioGroup, index_parts_exports$4 as Popover, Poster, QualityRadioGroup, SeekButton, index_parts_exports$5 as SeekIndicator, index_parts_exports$6 as Slider, StatusAnnouncer, index_parts_exports$7 as StatusIndicator, Text, Thumbnail, index_parts_exports$8 as Time, index_parts_exports$9 as TimeSlider, index_parts_exports$10 as Tooltip, index_parts_exports$11 as VolumeIndicator, index_parts_exports$12 as VolumeSlider, composeRefs, createI18n, createPlayer, createSelector, createTranslator, findLocaleKeys, getI18nTranslations, hasMetadata, hasRegisteredLocale, isMediaAudioTrackCapable, isMediaBufferCapable, isMediaErrorCapable, isMediaLiveCapable, isMediaPauseCapable, isMediaPlaybackRateCapable, isMediaRemotePlaybackCapable, isMediaSeekCapable, isMediaSourceCapable, isMediaStreamTypeCapable, isMediaTextTrackCapable, isMediaVideoDimensionsCapable, isMediaVideoRenditionCapable, isMediaVolumeCapable, isQuerySelectorAllCapable, mergeProps, onI18nRegistryChange, registerI18n, renderElement, shallowEqual, useAlertDialogContext, useAttachMedia, useAudioTrackOptions, useButton, useCaptionsOptions, useComposedRefs, useContainer, useContainerAttach, useDestroy, useDoubleTapGesture, useErrorDialogContext, useHotkey, useHotkeyShortcut, useLatestRef, useLocale, useMedia, useMediaAttach, useMediaComponent, useMediaInstance, useMenuContext, useOptionalContainer, useOptionalMenuContext, useOptionalPlayer, usePlaybackRateOptions, usePlayer, usePlayerContext, usePopoverContext, useQualityOptions, useSelector, useSlider, useStore, useTapGesture, useTooltipContext, useTranslator };
@@ -16,6 +16,14 @@ interface HlsBackgroundVideoProps extends Omit<VideoHTMLAttributes<HTMLVideoElem
16
16
  * storyboard belong to `MuxVideo`, since none of them mean anything without
17
17
  * controls to hang them on.
18
18
  *
19
+ * `onError` fires for an unplayable source, which it could not do on its own:
20
+ * nothing about one reaches the media element, so the `<video>`'s own `error`
21
+ * stays null at `readyState 0`. The engine reports the condition, the Media
22
+ * promotes the fatal one, and this component re-fires it on the `<video>` — where
23
+ * a handler already listening for a failed source receives it. Which condition it
24
+ * was is on the console and `engine.state.errors`; the handler gets "this source
25
+ * won't play", which is the decision a background video actually has to make.
26
+ *
19
27
  * `MuxBackgroundVideo` is this same component under the name the package it
20
28
  * replaces used — an alias, not a variant.
21
29
  */
@@ -1 +1 @@
1
- {"version":3,"file":"media.d.ts","names":[],"sources":["../../../../src/media/hls-background-video/media.tsx"],"mappings":";;;UAgBiB,gCACP,KAAK,oBAAoB,yBAAyB,+BACxD,QAAQ;;;;;;;;;;;;;;;;;;cAmBC,oCAAkB,0BAAA,0CAAA,cAAA;kBAkCd;OACH,QAAQ"}
1
+ {"version":3,"file":"media.d.ts","names":[],"sources":["../../../../src/media/hls-background-video/media.tsx"],"mappings":";;;UAgBiB,gCACP,KAAK,oBAAoB,yBAAyB,+BACxD,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;cA2BC,oCAAkB,0BAAA,0CAAA,cAAA;kBA6Cd;OACH,QAAQ"}
@@ -3,7 +3,7 @@ import { useComposedRefs } from "../../utils/use-composed-refs.js";
3
3
  import { useAttachMedia } from "../../utils/use-attach-media.js";
4
4
  import { useMediaInstance } from "../../utils/use-media-instance.js";
5
5
  import { useSyncProps } from "../../utils/use-sync-props.js";
6
- import { forwardRef } from "react";
6
+ import { forwardRef, useEffect, useRef } from "react";
7
7
  import { jsx } from "react/jsx-runtime";
8
8
  import { HlsBackgroundVideoMedia, hlsBackgroundVideoMediaDefaultProps } from "@videojs/spf/hls-background-video";
9
9
  //#region src/media/hls-background-video/media.tsx
@@ -21,14 +21,29 @@ import { HlsBackgroundVideoMedia, hlsBackgroundVideoMediaDefaultProps } from "@v
21
21
  * storyboard belong to `MuxVideo`, since none of them mean anything without
22
22
  * controls to hang them on.
23
23
  *
24
+ * `onError` fires for an unplayable source, which it could not do on its own:
25
+ * nothing about one reaches the media element, so the `<video>`'s own `error`
26
+ * stays null at `readyState 0`. The engine reports the condition, the Media
27
+ * promotes the fatal one, and this component re-fires it on the `<video>` — where
28
+ * a handler already listening for a failed source receives it. Which condition it
29
+ * was is on the console and `engine.state.errors`; the handler gets "this source
30
+ * won't play", which is the decision a background video actually has to make.
31
+ *
24
32
  * `MuxBackgroundVideo` is this same component under the name the package it
25
33
  * replaces used — an alias, not a variant.
26
34
  */
27
35
  const HlsBackgroundVideo = forwardRef(function HlsBackgroundVideo({ children, ...props }, ref) {
28
36
  const media = useMediaInstance(HlsBackgroundVideoMedia);
29
- const composedRef = useComposedRefs(useAttachMedia(media), ref);
37
+ const videoRef = useRef(null);
38
+ const composedRef = useComposedRefs(useAttachMedia(media), videoRef, ref);
39
+ const htmlProps = useSyncProps(media, props, hlsBackgroundVideoMediaDefaultProps);
40
+ useEffect(() => {
41
+ const forward = () => videoRef.current?.dispatchEvent(new Event("error"));
42
+ media.addEventListener("error", forward);
43
+ return () => media.removeEventListener("error", forward);
44
+ }, [media]);
30
45
  return /* @__PURE__ */ jsx("video", {
31
- ...useSyncProps(media, props, hlsBackgroundVideoMediaDefaultProps),
46
+ ...htmlProps,
32
47
  ref: composedRef,
33
48
  muted: true,
34
49
  autoPlay: true,
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/hls-background-video/media.tsx"],"sourcesContent":["'use client';\n\nimport {\n HlsBackgroundVideoMedia,\n type HlsBackgroundVideoMediaProps,\n hlsBackgroundVideoMediaDefaultProps,\n} from '@videojs/spf/hls-background-video';\nimport type { VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\n// `src` is the only prop the Media owns, taken from the adapter rather than\n// restated here so the two can't disagree about what the surface is.\nexport interface HlsBackgroundVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsBackgroundVideoMediaProps>,\n Partial<HlsBackgroundVideoMediaProps> {}\n\n/**\n * A muted, looping, chrome-less video over the SPF background-video engine — the\n * React counterpart to `<hls-background-video>`, and the replacement for the\n * standalone `mux-background-video` package's component.\n *\n * `src` is an HLS URL and the whole surface. Capping which rendition is fetched\n * is a param on that URL (`?max_resolution=720p` on a Mux stream, for one) rather\n * than a prop, which keeps the renditions it excludes out of the manifest instead\n * of merely unpicked.\n *\n * There is no structured Mux `source`: playback-ID identity, poster, and\n * storyboard belong to `MuxVideo`, since none of them mean anything without\n * controls to hang them on.\n *\n * `MuxBackgroundVideo` is this same component under the name the package it\n * replaces used — an alias, not a variant.\n */\nexport const HlsBackgroundVideo = forwardRef<HTMLVideoElement, HlsBackgroundVideoProps>(function HlsBackgroundVideo(\n { children, ...props },\n ref\n) {\n const media = useMediaInstance(HlsBackgroundVideoMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, hlsBackgroundVideoMediaDefaultProps);\n\n return (\n // The same set `<hls-background-video>` forces onto its inner video, so the\n // two platforms present the same surface: silent looping playback with no\n // affordance a UA could hang chrome on — AirPlay, Cast, and picture-in-picture\n // all being things a background video has nowhere to put.\n //\n // Applied after the spread rather than before it, unlike the generic\n // `BackgroundVideo`: they're what the component is for, and attaching the\n // Media re-applies its own anyway, so honoring `muted={false}` would only\n // look like it worked.\n <video\n {...htmlProps}\n ref={composedRef}\n muted\n autoPlay\n loop\n playsInline\n disableRemotePlayback\n disablePictureInPicture\n >\n {children}\n </video>\n );\n});\n\nexport namespace HlsBackgroundVideo {\n export type Props = HlsBackgroundVideoProps;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA,MAAa,qBAAqB,WAAsD,SAAS,mBAC/F,EAAE,UAAU,GAAG,SACf,KACA;CACA,MAAM,QAAQ,iBAAiB,uBAAuB;CAEtD,MAAM,cAAc,gBADF,eAAe,KACW,GAAG,GAAG;CAGlD,OAUE,oBAAC,SAAD;EACE,GAbc,aAAa,OAAO,OAAO,mCAa7B;EACZ,KAAK;EACL,OAAA;EACA,UAAA;EACA,MAAA;EACA,aAAA;EACA,uBAAA;EACA,yBAAA;EAEC;CACI,CAAA;AAEX,CAAC"}
1
+ {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/hls-background-video/media.tsx"],"sourcesContent":["'use client';\n\nimport {\n HlsBackgroundVideoMedia,\n type HlsBackgroundVideoMediaProps,\n hlsBackgroundVideoMediaDefaultProps,\n} from '@videojs/spf/hls-background-video';\nimport type { VideoHTMLAttributes } from 'react';\nimport { forwardRef, useEffect, useRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\n// `src` is the only prop the Media owns, taken from the adapter rather than\n// restated here so the two can't disagree about what the surface is.\nexport interface HlsBackgroundVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsBackgroundVideoMediaProps>,\n Partial<HlsBackgroundVideoMediaProps> {}\n\n/**\n * A muted, looping, chrome-less video over the SPF background-video engine — the\n * React counterpart to `<hls-background-video>`, and the replacement for the\n * standalone `mux-background-video` package's component.\n *\n * `src` is an HLS URL and the whole surface. Capping which rendition is fetched\n * is a param on that URL (`?max_resolution=720p` on a Mux stream, for one) rather\n * than a prop, which keeps the renditions it excludes out of the manifest instead\n * of merely unpicked.\n *\n * There is no structured Mux `source`: playback-ID identity, poster, and\n * storyboard belong to `MuxVideo`, since none of them mean anything without\n * controls to hang them on.\n *\n * `onError` fires for an unplayable source, which it could not do on its own:\n * nothing about one reaches the media element, so the `<video>`'s own `error`\n * stays null at `readyState 0`. The engine reports the condition, the Media\n * promotes the fatal one, and this component re-fires it on the `<video>` — where\n * a handler already listening for a failed source receives it. Which condition it\n * was is on the console and `engine.state.errors`; the handler gets \"this source\n * won't play\", which is the decision a background video actually has to make.\n *\n * `MuxBackgroundVideo` is this same component under the name the package it\n * replaces used — an alias, not a variant.\n */\nexport const HlsBackgroundVideo = forwardRef<HTMLVideoElement, HlsBackgroundVideoProps>(function HlsBackgroundVideo(\n { children, ...props },\n ref\n) {\n const media = useMediaInstance(HlsBackgroundVideoMedia);\n const videoRef = useRef<HTMLVideoElement>(null);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, videoRef, ref);\n const htmlProps = useSyncProps(media, props, hlsBackgroundVideoMediaDefaultProps);\n\n // Re-fired on the element rather than handed to `onError` directly, so React's\n // own event plumbing delivers it: the handler gets the synthetic event it is\n // typed for, and anything else listening on the node — the consumer's own\n // `addEventListener`, a testing-library assertion — sees the same failure.\n useEffect(() => {\n const forward = () => videoRef.current?.dispatchEvent(new Event('error'));\n media.addEventListener('error', forward);\n return () => media.removeEventListener('error', forward);\n }, [media]);\n\n return (\n // The same set `<hls-background-video>` forces onto its inner video, so the\n // two platforms present the same surface: silent looping playback with no\n // affordance a UA could hang chrome on — AirPlay, Cast, and picture-in-picture\n // all being things a background video has nowhere to put.\n //\n // Applied after the spread rather than before it, unlike the generic\n // `BackgroundVideo`: they're what the component is for, and attaching the\n // Media re-applies its own anyway, so honoring `muted={false}` would only\n // look like it worked.\n <video\n {...htmlProps}\n ref={composedRef}\n muted\n autoPlay\n loop\n playsInline\n disableRemotePlayback\n disablePictureInPicture\n >\n {children}\n </video>\n );\n});\n\nexport namespace HlsBackgroundVideo {\n export type Props = HlsBackgroundVideoProps;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,MAAa,qBAAqB,WAAsD,SAAS,mBAC/F,EAAE,UAAU,GAAG,SACf,KACA;CACA,MAAM,QAAQ,iBAAiB,uBAAuB;CACtD,MAAM,WAAW,OAAyB,IAAI;CAE9C,MAAM,cAAc,gBADF,eAAe,KACW,GAAG,UAAU,GAAG;CAC5D,MAAM,YAAY,aAAa,OAAO,OAAO,mCAAmC;CAMhF,gBAAgB;EACd,MAAM,gBAAgB,SAAS,SAAS,cAAc,IAAI,MAAM,OAAO,CAAC;EACxE,MAAM,iBAAiB,SAAS,OAAO;EACvC,aAAa,MAAM,oBAAoB,SAAS,OAAO;CACzD,GAAG,CAAC,KAAK,CAAC;CAEV,OAUE,oBAAC,SAAD;EACE,GAAI;EACJ,KAAK;EACL,OAAA;EACA,UAAA;EACA,MAAA;EACA,aAAA;EACA,uBAAA;EACA,yBAAA;EAEC;CACI,CAAA;AAEX,CAAC"}