@videojs/html 10.0.0-beta.30 → 10.0.0-beta.31
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.
- package/cdn/audio-minimal-ui.dev.js +1 -1
- package/cdn/audio-minimal-ui.js +1 -1
- package/cdn/audio-minimal.dev.js +4 -4
- package/cdn/audio-minimal.dev.js.map +1 -1
- package/cdn/audio-minimal.js +1 -1
- package/cdn/audio-minimal.js.map +1 -1
- package/cdn/audio-player.dev.js +1 -0
- package/cdn/audio-player.js +1 -0
- package/cdn/audio-ui.dev.js +1 -1
- package/cdn/audio-ui.js +1 -1
- package/cdn/audio.dev.js +4 -4
- package/cdn/audio.dev.js.map +1 -1
- package/cdn/audio.js +1 -1
- package/cdn/audio.js.map +1 -1
- package/cdn/background.dev.js +1 -1
- package/cdn/background.js +1 -1
- package/cdn/{compounds-D1FPw7jg.js → compounds-BA8gXlmJ.js} +32 -188
- package/cdn/compounds-BA8gXlmJ.js.map +1 -0
- package/cdn/compounds-DKoFv2f8.js +8 -0
- package/cdn/compounds-DKoFv2f8.js.map +1 -0
- package/cdn/{create-player-5UrHNqBI.js → create-player-BEEc22xK.js} +18 -2
- package/cdn/{create-player-5UrHNqBI.js.map → create-player-BEEc22xK.js.map} +1 -1
- package/cdn/create-player-D5WQ_jzZ.js +2 -0
- package/cdn/{create-player-LjvbIxIq.js.map → create-player-D5WQ_jzZ.js.map} +1 -1
- package/cdn/{gesture-element-BbNy1Pjt.js → gesture-element-CxdagZOo.js} +2 -2
- package/cdn/{gesture-element-BbNy1Pjt.js.map → gesture-element-CxdagZOo.js.map} +1 -1
- package/cdn/{gesture-element-KdpjbbBD.js → gesture-element-x6kojUJk.js} +3 -3
- package/cdn/{gesture-element-KdpjbbBD.js.map → gesture-element-x6kojUJk.js.map} +1 -1
- package/cdn/i18n-CE4KxKuj.js.map +1 -1
- package/cdn/{i18n-DeI9j-ko.js → i18n-C_WyuIHd.js} +2 -2
- package/cdn/{i18n-DeI9j-ko.js.map → i18n-C_WyuIHd.js.map} +1 -1
- package/cdn/i18n-DyF_NfCk.js.map +1 -1
- package/cdn/i18n-o3_t8fxw.js +2 -0
- package/cdn/{i18n-R3TQ8P2f.js.map → i18n-o3_t8fxw.js.map} +1 -1
- package/cdn/live-audio-minimal-ui.dev.js +2 -0
- package/cdn/live-audio-minimal-ui.js +1 -0
- package/cdn/live-audio-minimal.dev.d.ts +1 -0
- package/cdn/live-audio-minimal.dev.js +97 -0
- package/cdn/live-audio-minimal.dev.js.map +1 -0
- package/cdn/live-audio-minimal.js +2 -0
- package/cdn/live-audio-minimal.js.map +1 -0
- package/cdn/live-audio-player.dev.d.ts +1 -0
- package/cdn/live-audio-player.dev.js +1 -0
- package/cdn/live-audio-player.js +1 -0
- package/cdn/live-audio-ui.dev.d.ts +1 -0
- package/cdn/live-audio-ui.dev.js +2 -0
- package/cdn/live-audio-ui.js +1 -0
- package/cdn/live-audio.dev.d.ts +1 -0
- package/cdn/live-audio.dev.js +97 -0
- package/cdn/live-audio.dev.js.map +1 -0
- package/cdn/live-audio.js +2 -0
- package/cdn/live-audio.js.map +1 -0
- package/cdn/{live-button-element-CylfQD0v.js → live-button-element-BFufqFFV.js} +3 -3
- package/cdn/{live-button-element-CylfQD0v.js.map → live-button-element-BFufqFFV.js.map} +1 -1
- package/cdn/live-button-element-CEbrR59d.js +2 -0
- package/cdn/{live-button-element-C-WypudK.js.map → live-button-element-CEbrR59d.js.map} +1 -1
- package/cdn/live-video-minimal-ui.dev.d.ts +1 -0
- package/cdn/live-video-minimal-ui.dev.js +2 -0
- package/cdn/live-video-minimal-ui.js +1 -0
- package/cdn/live-video-minimal.dev.js +5 -36
- package/cdn/live-video-minimal.dev.js.map +1 -1
- package/cdn/live-video-minimal.js +1 -1
- package/cdn/live-video-minimal.js.map +1 -1
- package/cdn/live-video-player.dev.d.ts +1 -0
- package/cdn/live-video-player.dev.js +1 -0
- package/cdn/live-video-player.js +1 -0
- package/cdn/live-video-ui.dev.d.ts +1 -0
- package/cdn/live-video-ui.dev.js +2 -0
- package/cdn/live-video-ui.js +1 -0
- package/cdn/live-video.dev.js +5 -38
- package/cdn/live-video.dev.js.map +1 -1
- package/cdn/live-video.js +1 -1
- package/cdn/live-video.js.map +1 -1
- package/cdn/media/hls-background-video.dev.js +1 -1
- package/cdn/media/hls-background-video.js +1 -1
- package/cdn/media/hls-background-video.js.map +1 -1
- package/cdn/media/mux-background-video.dev.js +1 -1
- package/cdn/media/mux-background-video.js +1 -1
- package/cdn/media/mux-background-video.js.map +1 -1
- package/cdn/media/mux-data.dev.js +1 -1
- package/cdn/media/mux-data.dev.js.map +1 -1
- package/cdn/media/mux-data.js +1 -1
- package/cdn/media/mux-data.js.map +1 -1
- package/cdn/{media-B4uT13xV.js → media-B4uT13xV2.js} +1 -1
- package/cdn/media-B4uT13xV2.js.map +1 -0
- package/cdn/{media-D6Xer97u.js → media-D6Xer97u2.js} +1 -1
- package/cdn/media-D6Xer97u2.js.map +1 -0
- package/cdn/minimal-ui-0eDc51VS.js +2 -0
- package/cdn/{minimal-ui-D3XCtSx_.js.map → minimal-ui-0eDc51VS.js.map} +1 -1
- package/cdn/minimal-ui-C2vRjwax.js +36 -0
- package/cdn/minimal-ui-C2vRjwax.js.map +1 -0
- package/cdn/{minimal-ui-ajeAXABk.js → minimal-ui-CLBGXvp5.js} +4 -4
- package/cdn/{minimal-ui-ajeAXABk.js.map → minimal-ui-CLBGXvp5.js.map} +1 -1
- package/cdn/minimal-ui-ClCvmIm4.js +2 -0
- package/cdn/minimal-ui-ClCvmIm4.js.map +1 -0
- package/cdn/minimal-ui-DDM48qb3.js +2 -0
- package/cdn/minimal-ui-DDM48qb3.js.map +1 -0
- package/cdn/minimal-ui-DY4C1zGt.js +23 -0
- package/cdn/minimal-ui-DY4C1zGt.js.map +1 -0
- package/cdn/{minimal-ui-KUzZkG_3.js → minimal-ui-Dk4_XLp4.js} +8 -8
- package/cdn/{minimal-ui-KUzZkG_3.js.map → minimal-ui-Dk4_XLp4.js.map} +1 -1
- package/cdn/{minimal-ui-p9QCZfCz.js → minimal-ui-JHiRECkp.js} +2 -2
- package/cdn/{minimal-ui-p9QCZfCz.js.map → minimal-ui-JHiRECkp.js.map} +1 -1
- package/cdn/{player-POHYt5tr.js → player-BGAk4zHP.js} +2 -2
- package/cdn/{player-POHYt5tr.js.map → player-BGAk4zHP.js.map} +1 -1
- package/cdn/{player-CngT-cVQ.js → player-Bb9oakYz.js} +2 -2
- package/cdn/{player-CngT-cVQ.js.map → player-Bb9oakYz.js.map} +1 -1
- package/cdn/{player-BXQMSpgR.js → player-BrlY19A2.js} +2 -2
- package/cdn/{player-BXQMSpgR.js.map → player-BrlY19A2.js.map} +1 -1
- package/cdn/{player-BuxifKSM.js → player-CQENs37B.js} +2 -2
- package/cdn/{player-BuxifKSM.js.map → player-CQENs37B.js.map} +1 -1
- package/cdn/player-DdOHaN9e.js +2 -0
- package/cdn/player-DdOHaN9e.js.map +1 -0
- package/cdn/{player-B5zkgqwT.js → player-DtcVc6sP.js} +2 -2
- package/cdn/{player-B5zkgqwT.js.map → player-DtcVc6sP.js.map} +1 -1
- package/cdn/{player-DMP2pc3L.js → player-bEUswOOg.js} +2 -2
- package/cdn/{player-DMP2pc3L.js.map → player-bEUswOOg.js.map} +1 -1
- package/cdn/player-qLOeas8M.js +18 -0
- package/cdn/player-qLOeas8M.js.map +1 -0
- package/cdn/poster-element-BA7p_OJL.js +2 -0
- package/cdn/{poster-element-Djlm5fwC.js.map → poster-element-BA7p_OJL.js.map} +1 -1
- package/cdn/{poster-element-CuCEBVr3.js → poster-element-BTynHaSW.js} +4 -3
- package/cdn/{poster-element-CuCEBVr3.js.map → poster-element-BTynHaSW.js.map} +1 -1
- package/cdn/radio-options-controller-Cz5yFvUh.js +138 -0
- package/cdn/radio-options-controller-Cz5yFvUh.js.map +1 -0
- package/cdn/radio-options-controller-hybHJkeC.js +2 -0
- package/cdn/radio-options-controller-hybHJkeC.js.map +1 -0
- package/cdn/seek-button-element-C4g3qPbc.js +2 -0
- package/cdn/{seek-button-element-CgaXVFPS.js.map → seek-button-element-C4g3qPbc.js.map} +1 -1
- package/cdn/{seek-button-element-BD2caCd5.js → seek-button-element-CirtfRSE.js} +4 -3
- package/cdn/seek-button-element-CirtfRSE.js.map +1 -0
- package/cdn/{skin-element-PDwjO4v0.js → skin-element-BF1a0EIj.js} +2 -2
- package/cdn/{skin-element-PDwjO4v0.js.map → skin-element-BF1a0EIj.js.map} +1 -1
- package/cdn/skin-element-BTt7JKoR.js +2 -0
- package/cdn/{skin-element-DE8OodF5.js.map → skin-element-BTt7JKoR.js.map} +1 -1
- package/cdn/template-BKUlUXWF.js +2 -0
- package/cdn/template-BKUlUXWF.js.map +1 -0
- package/cdn/template-ClYP_1RH.js +31 -0
- package/cdn/template-ClYP_1RH.js.map +1 -0
- package/cdn/text-element-DW2FuvdI.js +2 -0
- package/cdn/text-element-DW2FuvdI.js.map +1 -0
- package/cdn/{text-element-dyiwucQB.js → text-element-LzVNdZbp.js} +50 -2
- package/cdn/text-element-LzVNdZbp.js.map +1 -0
- package/cdn/time-slider-chapters-element-Bf4gYppH.js +2 -0
- package/cdn/{time-slider-chapters-element-b6oeaZtJ.js.map → time-slider-chapters-element-Bf4gYppH.js.map} +1 -1
- package/cdn/{time-slider-chapters-element-BTMqnBhM.js → time-slider-chapters-element-DMkTYNg3.js} +5 -3
- package/cdn/time-slider-chapters-element-DMkTYNg3.js.map +1 -0
- package/cdn/{ui-BsUcH4YJ.js → ui-BL6b1m09.js} +7 -7
- package/cdn/{ui-BsUcH4YJ.js.map → ui-BL6b1m09.js.map} +1 -1
- package/cdn/ui-BbpSrILu.js +2 -0
- package/cdn/{ui-DLvwCbsU.js.map → ui-BbpSrILu.js.map} +1 -1
- package/cdn/ui-BmCfIOl5.js +38 -0
- package/cdn/ui-BmCfIOl5.js.map +1 -0
- package/cdn/ui-Bu9GX-M_.js +28 -0
- package/cdn/ui-Bu9GX-M_.js.map +1 -0
- package/cdn/ui-CBrFrvmm.js +2 -0
- package/cdn/{ui-CxftD4RF.js.map → ui-CBrFrvmm.js.map} +1 -1
- package/cdn/{ui-CtONjPC2.js → ui-CQsP0EFA.js} +9 -9
- package/cdn/{ui-CtONjPC2.js.map → ui-CQsP0EFA.js.map} +1 -1
- package/cdn/ui-Crbp7m4I.js +2 -0
- package/cdn/ui-Crbp7m4I.js.map +1 -0
- package/cdn/ui-DRKjxVsj.js +2 -0
- package/cdn/ui-DRKjxVsj.js.map +1 -0
- package/cdn/video-minimal-ui.dev.js +1 -1
- package/cdn/video-minimal-ui.js +1 -1
- package/cdn/video-minimal.dev.js +13 -12
- package/cdn/video-minimal.dev.js.map +1 -1
- package/cdn/video-minimal.js +1 -1
- package/cdn/video-minimal.js.map +1 -1
- package/cdn/video-player.dev.d.ts +1 -0
- package/cdn/video-player.dev.js +1 -0
- package/cdn/video-player.js +1 -0
- package/cdn/video-ui.dev.js +1 -1
- package/cdn/video-ui.js +1 -1
- package/cdn/video.dev.js +14 -13
- package/cdn/video.dev.js.map +1 -1
- package/cdn/video.js +1 -1
- package/cdn/video.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-audio/minimal-skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-audio/minimal-skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-audio/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-audio/skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-video/minimal-skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-video/minimal-skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-video/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-video/skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/video/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/video/skin.js.map +1 -1
- package/dist/default/define/audio/minimal-skin.css +39 -7
- package/dist/default/define/audio/skin.css +31 -7
- package/dist/default/define/live-audio/minimal-skin.css +39 -7
- package/dist/default/define/live-audio/skin.css +31 -7
- package/dist/default/define/live-video/minimal-skin.css +39 -7
- package/dist/default/define/live-video/minimal-skin.js +1 -1
- package/dist/default/define/live-video/minimal-skin.js.map +1 -1
- package/dist/default/define/live-video/minimal-skin.tailwind.js +1 -1
- package/dist/default/define/live-video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/define/live-video/skin.css +31 -7
- package/dist/default/define/live-video/skin.js +1 -1
- package/dist/default/define/live-video/skin.js.map +1 -1
- package/dist/default/define/live-video/skin.tailwind.js +1 -1
- package/dist/default/define/live-video/skin.tailwind.js.map +1 -1
- package/dist/default/define/video/minimal-skin.css +39 -7
- package/dist/default/define/video/minimal-skin.js +1 -1
- package/dist/default/define/video/minimal-skin.js.map +1 -1
- package/dist/default/define/video/minimal-skin.tailwind.js +1 -1
- package/dist/default/define/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/define/video/skin.css +31 -7
- package/dist/default/define/video/skin.js +1 -1
- package/dist/default/define/video/skin.js.map +1 -1
- package/dist/default/define/video/skin.tailwind.js +1 -1
- package/dist/default/define/video/skin.tailwind.js.map +1 -1
- package/dist/default/i18n/provider-mixin.js +24 -0
- package/dist/default/i18n/provider-mixin.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/button-group.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/button-group.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/menu.js +8 -7
- package/dist/default/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/time.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/time.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js +8 -7
- package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +2 -2
- package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
- package/dist/default/ui/slider/slider-element.js +1 -2
- package/dist/default/ui/slider/slider-element.js.map +1 -1
- package/dist/default/ui/time-slider/time-slider-element.js +1 -2
- package/dist/default/ui/time-slider/time-slider-element.js.map +1 -1
- package/dist/default/ui/volume-slider/volume-slider-element.js +1 -2
- package/dist/default/ui/volume-slider/volume-slider-element.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/audio/skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-audio/minimal-skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-audio/minimal-skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-audio/skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-audio/skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-video/minimal-skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-video/minimal-skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-video/skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-video/skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/video/skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/video/skin.js.map +1 -1
- package/dist/dev/define/audio/minimal-skin.css +39 -7
- package/dist/dev/define/audio/skin.css +31 -7
- package/dist/dev/define/live-audio/minimal-skin.css +39 -7
- package/dist/dev/define/live-audio/skin.css +31 -7
- package/dist/dev/define/live-video/minimal-skin.css +39 -7
- package/dist/dev/define/live-video/minimal-skin.js +1 -1
- package/dist/dev/define/live-video/minimal-skin.js.map +1 -1
- package/dist/dev/define/live-video/minimal-skin.tailwind.js +1 -1
- package/dist/dev/define/live-video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/define/live-video/skin.css +31 -7
- package/dist/dev/define/live-video/skin.js +1 -1
- package/dist/dev/define/live-video/skin.js.map +1 -1
- package/dist/dev/define/live-video/skin.tailwind.js +1 -1
- package/dist/dev/define/live-video/skin.tailwind.js.map +1 -1
- package/dist/dev/define/video/minimal-skin.css +39 -7
- package/dist/dev/define/video/minimal-skin.js +8 -8
- package/dist/dev/define/video/minimal-skin.js.map +1 -1
- package/dist/dev/define/video/minimal-skin.tailwind.js +12 -12
- package/dist/dev/define/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/define/video/skin.css +31 -7
- package/dist/dev/define/video/skin.js +8 -8
- package/dist/dev/define/video/skin.js.map +1 -1
- package/dist/dev/define/video/skin.tailwind.js +12 -12
- package/dist/dev/define/video/skin.tailwind.js.map +1 -1
- package/dist/dev/i18n/provider-mixin.d.ts.map +1 -1
- package/dist/dev/i18n/provider-mixin.js +24 -0
- package/dist/dev/i18n/provider-mixin.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/button-group.js +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/button-group.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/controls.js +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/menu.js +8 -7
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/time.js +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/time.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/button-group.js +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/menu.js +8 -7
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/time.js +2 -2
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
- package/dist/dev/ui/slider/slider-element.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-element.js +1 -2
- package/dist/dev/ui/slider/slider-element.js.map +1 -1
- package/dist/dev/ui/time-slider/time-slider-element.d.ts.map +1 -1
- package/dist/dev/ui/time-slider/time-slider-element.js +1 -2
- package/dist/dev/ui/time-slider/time-slider-element.js.map +1 -1
- package/dist/dev/ui/volume-slider/volume-slider-element.d.ts.map +1 -1
- package/dist/dev/ui/volume-slider/volume-slider-element.js +1 -2
- package/dist/dev/ui/volume-slider/volume-slider-element.js.map +1 -1
- package/docs/README.md +1 -1
- package/docs/concepts/media-sources.md +26 -2
- package/docs/concepts/skins.md +39 -15
- package/docs/how-to/customize-skins.md +7662 -48
- package/docs/how-to/i18n-switch-locale.md +27 -0
- package/docs/how-to/installation.md +4 -4
- package/docs/how-to/migrate-from-plyr.md +1 -5
- package/docs/llms.txt +7 -0
- package/docs/reference/cloudflare-video.md +483 -0
- package/docs/reference/dash-video.md +54 -0
- package/docs/reference/feature-metadata.md +3 -1
- package/docs/reference/hlsjs-video.md +626 -0
- package/docs/reference/native-hls-video.md +40 -0
- package/docs/reference/shaka-video.md +588 -0
- package/docs/reference/spotify-audio.md +394 -0
- package/docs/reference/tiktok-video.md +504 -0
- package/docs/reference/title.md +1 -1
- package/docs/reference/twitch-video.md +447 -0
- package/docs/reference/vimeo-video.md +1038 -0
- package/docs/reference/youtube-video.md +573 -0
- package/package.json +9 -9
- package/cdn/audio-headless.dev.js +0 -1
- package/cdn/audio-headless.js +0 -1
- package/cdn/compounds-CHlzbAKu.js +0 -8
- package/cdn/compounds-CHlzbAKu.js.map +0 -1
- package/cdn/compounds-D1FPw7jg.js.map +0 -1
- package/cdn/create-player-LjvbIxIq.js +0 -2
- package/cdn/i18n-R3TQ8P2f.js +0 -2
- package/cdn/live-button-element-C-WypudK.js +0 -2
- package/cdn/media-B4uT13xV.js.map +0 -1
- package/cdn/media-D6Xer97u.js.map +0 -1
- package/cdn/minimal-ui-D3XCtSx_.js +0 -2
- package/cdn/poster-element-Djlm5fwC.js +0 -2
- package/cdn/seek-button-element-BD2caCd5.js.map +0 -1
- package/cdn/seek-button-element-CgaXVFPS.js +0 -2
- package/cdn/skin-element-DE8OodF5.js +0 -2
- package/cdn/text-element-BJyj7nLo.js +0 -2
- package/cdn/text-element-BJyj7nLo.js.map +0 -1
- package/cdn/text-element-dyiwucQB.js.map +0 -1
- package/cdn/time-slider-chapters-element-BTMqnBhM.js.map +0 -1
- package/cdn/time-slider-chapters-element-b6oeaZtJ.js +0 -2
- package/cdn/ui-CxftD4RF.js +0 -2
- package/cdn/ui-DLvwCbsU.js +0 -2
- package/cdn/video-headless.dev.js +0 -1
- package/cdn/video-headless.js +0 -1
- /package/cdn/{audio-headless.dev.d.ts → audio-player.dev.d.ts} +0 -0
- /package/cdn/{video-headless.dev.d.ts → live-audio-minimal-ui.dev.d.ts} +0 -0
|
@@ -2,8 +2,8 @@ import { popup } from "./popup.js";
|
|
|
2
2
|
import { surface } from "./surface.js";
|
|
3
3
|
import { cn } from "@videojs/utils/style";
|
|
4
4
|
//#region ../skins/dist/default/default/tailwind/components/menu.js
|
|
5
|
-
const submenuPanel = cn("absolute inset-x-0 top-0 [max-height:inherit] overflow-auto overscroll-none p-(--menu-padding) outline-none", "z-10", "translate-none transition-[translate,filter] duration-(--menu-transition-duration) ease-out", "data-starting-style:pointer-events-none data-ending-style:pointer-events-none", "data-starting-style:overflow-hidden data-ending-style:overflow-hidden", "data-starting-style:translate-
|
|
6
|
-
const itemBase = cn("group/menu-item relative flex cursor-pointer select-none items-center gap-1.5 rounded-(--menu-item-border-radius) py-1.5 px-2", "text-
|
|
5
|
+
const submenuPanel = cn("[--submenu-translate:100%] [&:dir(rtl)]:[--submenu-translate:-100%]", "absolute inset-x-0 top-0 [max-height:inherit] overflow-auto overscroll-none p-(--menu-padding) outline-none", "z-10", "translate-none transition-[translate,filter] duration-(--menu-transition-duration) ease-out", "data-starting-style:pointer-events-none data-ending-style:pointer-events-none", "data-starting-style:overflow-hidden data-ending-style:overflow-hidden", "data-starting-style:[translate:var(--submenu-translate)_0] data-ending-style:[translate:var(--submenu-translate)_0]", "data-starting-style:blur data-ending-style:blur");
|
|
6
|
+
const itemBase = cn("group/menu-item relative flex cursor-pointer select-none items-center gap-1.5 rounded-(--menu-item-border-radius) py-1.5 px-2", "text-start", "text-shadow-2xs text-shadow-(color:--shadow-current-color)", "outline-2 -outline-offset-2 outline-transparent", "transition-colors duration-100 ease-in-out", "supports-[top:anchor(top)]:duration-50", "supports-[top:anchor(top)]:hover:duration-200", "supports-[top:anchor(top)]:data-highlighted:duration-200", "hover:bg-(--accent-background-color) hover:text-(--accent-text-color)", "data-highlighted:bg-(--accent-background-color) data-highlighted:text-(--accent-text-color)", "focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2");
|
|
7
7
|
const menuTokens = cn("[--menu-transition-duration:250ms]", "[--menu-max-height:--spacing(56)]", "[--menu-padding:--spacing(1)]", "[--menu-border-radius:--spacing(3)]", "[--menu-item-border-radius:calc(var(--menu-border-radius)_-_var(--menu-padding))]", "motion-reduce:[--menu-transition-duration:0ms]");
|
|
8
8
|
const group = cn("flex flex-col gap-0.5", "[anchor-scope:--menu-item-highlight-anchor]", "supports-[top:anchor(top)]:before:absolute", "supports-[top:anchor(top)]:before:[position-anchor:--menu-item-highlight-anchor]", "supports-[top:anchor(top)]:before:[inset:anchor(inside)]", "supports-[top:anchor(top)]:before:[overflow-anchor:none]", "supports-[top:anchor(top)]:before:pointer-events-none", "supports-[top:anchor(top)]:before:bg-(--accent-background-color)", "supports-[top:anchor(top)]:before:rounded-(--menu-item-border-radius)", "supports-[top:anchor(top)]:before:transition-[inset]", "supports-[top:anchor(top)]:before:duration-100", "supports-[top:anchor(top)]:before:ease-in-out", "supports-[top:anchor(top)]:has-data-[highlighted=]:before:duration-0");
|
|
9
9
|
const menuHostShell = cn(popup.popover, surface, menuTokens, "min-w-max max-w-(--media-popover-available-width,none) max-h-[min(var(--media-popover-available-height,var(--menu-max-height)),var(--menu-max-height))]", "box-border rounded-(--menu-border-radius) p-(--menu-padding) overscroll-none");
|
|
@@ -11,19 +11,20 @@ const menu = {
|
|
|
11
11
|
/** Standalone menu popover host (audio playback rate, sandbox demos). */
|
|
12
12
|
root: cn(menuHostShell, "overflow-auto!"),
|
|
13
13
|
/** Settings menu host with nested submenu navigation. */
|
|
14
|
-
settings: cn(menuHostShell, "[--popup-transition:var(--popup-base-transition),width_var(--popup-transition-timing-function)_var(--menu-transition-duration),height_var(--popup-transition-timing-function)_var(--menu-transition-duration)]", "data-starting-style:[--popup-transition:var(--popup-base-transition)]", "data-ending-style:[--popup-transition:var(--popup-base-transition)]", "min-w-48! w-(--media-menu-width) h-(--media-menu-height)", "[&>:not([data-submenu])]:translate-none [&>:not([data-submenu])]:transition-[translate,filter]", "[&>:not([data-submenu])]:duration-(--menu-transition-duration) [&>:not([data-submenu])]:ease-out", "[&[data-submenu-expanded=true]>:not([data-submenu])]
|
|
14
|
+
settings: cn(menuHostShell, "[--popup-transition:var(--popup-base-transition),width_var(--popup-transition-timing-function)_var(--menu-transition-duration),height_var(--popup-transition-timing-function)_var(--menu-transition-duration)]", "data-starting-style:[--popup-transition:var(--popup-base-transition)]", "data-ending-style:[--popup-transition:var(--popup-base-transition)]", "min-w-48! w-(--media-menu-width) h-(--media-menu-height)", "[&>:not([data-submenu])]:translate-none [&>:not([data-submenu])]:transition-[translate,filter]", "[&>:not([data-submenu])]:duration-(--menu-transition-duration) [&>:not([data-submenu])]:ease-out", "[--submenu-parent-translate:-100%] [&:dir(rtl)]:[--submenu-parent-translate:100%]", "[&[data-submenu-expanded=true]>:not([data-submenu])]:[translate:var(--submenu-parent-translate)_0]", "[&[data-submenu-expanded=true]>:not([data-submenu])]:blur", "[&[data-submenu-expanded]>:not([data-submenu])]:before:hidden", "overflow-hidden!"),
|
|
15
15
|
group,
|
|
16
16
|
item: cn(itemBase, "justify-between tabular-nums text-inherit", "supports-[top:anchor(top)]:data-highlighted:[anchor-name:--menu-item-highlight-anchor]", "supports-[top:anchor(top)]:data-highlighted:bg-transparent", "data-[availability=unavailable]:hidden data-[availability=unsupported]:hidden", "aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:opacity-50"),
|
|
17
17
|
separator: "my-1 border-b border-[oklch(0_0_0/0.1)] shadow-[0_1px_0_0_oklch(1_0_0/0.075)]",
|
|
18
|
-
tier: "
|
|
19
|
-
indicator: "
|
|
18
|
+
tier: "ps-0.5 pt-px text-(length:--font-size-tiny) font-semibold leading-none text-current/70",
|
|
19
|
+
indicator: "ms-auto -me-1 shrink-0 opacity-0 group-aria-checked/menu-item:opacity-100",
|
|
20
20
|
icon: "shrink-0 text-current/65 drop-shadow-[0_1px_0_var(--shadow-current-color)] group-hover/menu-item:text-inherit group-data-highlighted/menu-item:text-inherit",
|
|
21
21
|
/** Nested submenu panel. */
|
|
22
22
|
submenuPanel,
|
|
23
23
|
back: cn(itemBase, "mb-0.5 w-full"),
|
|
24
|
-
hint: "
|
|
24
|
+
hint: "ms-auto inline-flex min-w-0 items-center gap-1 ps-2 text-current/65",
|
|
25
25
|
hintLabel: "max-w-24 overflow-hidden text-ellipsis whitespace-nowrap",
|
|
26
|
-
chevron: "size-3.5",
|
|
26
|
+
chevron: "size-3.5 [&:dir(rtl)]:[scale:-1_1]",
|
|
27
|
+
backChevron: "[&:dir(rtl)]:[scale:1_1]",
|
|
27
28
|
settingsGroup: "group/settings",
|
|
28
29
|
settingsTrigger: "group",
|
|
29
30
|
settingsIcon: "transition-transform duration-150 ease-in-out group-aria-expanded:rotate-90 motion-reduce:duration-0"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/default/tailwind/components/menu.js"],"sourcesContent":["import { popup } from \"./popup.js\";\nimport { surface } from \"./surface.js\";\nimport { cn } from \"@videojs/utils/style\";\n//#region src/default/tailwind/components/menu.ts\nconst submenuPanel = cn(\"absolute inset-x-0 top-0 [max-height:inherit] overflow-auto overscroll-none p-(--menu-padding) outline-none\", \"z-10\", \"translate-none transition-[translate,filter] duration-(--menu-transition-duration) ease-out\", \"data-starting-style:pointer-events-none data-ending-style:pointer-events-none\", \"data-starting-style:overflow-hidden data-ending-style:overflow-hidden\", \"data-starting-style:translate-
|
|
1
|
+
{"version":3,"file":"menu.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/default/tailwind/components/menu.js"],"sourcesContent":["import { popup } from \"./popup.js\";\nimport { surface } from \"./surface.js\";\nimport { cn } from \"@videojs/utils/style\";\n//#region src/default/tailwind/components/menu.ts\nconst submenuPanel = cn(\"[--submenu-translate:100%] [&:dir(rtl)]:[--submenu-translate:-100%]\", \"absolute inset-x-0 top-0 [max-height:inherit] overflow-auto overscroll-none p-(--menu-padding) outline-none\", \"z-10\", \"translate-none transition-[translate,filter] duration-(--menu-transition-duration) ease-out\", \"data-starting-style:pointer-events-none data-ending-style:pointer-events-none\", \"data-starting-style:overflow-hidden data-ending-style:overflow-hidden\", \"data-starting-style:[translate:var(--submenu-translate)_0] data-ending-style:[translate:var(--submenu-translate)_0]\", \"data-starting-style:blur data-ending-style:blur\");\nconst itemBase = cn(\"group/menu-item relative flex cursor-pointer select-none items-center gap-1.5 rounded-(--menu-item-border-radius) py-1.5 px-2\", \"text-start\", \"text-shadow-2xs text-shadow-(color:--shadow-current-color)\", \"outline-2 -outline-offset-2 outline-transparent\", \"transition-colors duration-100 ease-in-out\", \"supports-[top:anchor(top)]:duration-50\", \"supports-[top:anchor(top)]:hover:duration-200\", \"supports-[top:anchor(top)]:data-highlighted:duration-200\", \"hover:bg-(--accent-background-color) hover:text-(--accent-text-color)\", \"data-highlighted:bg-(--accent-background-color) data-highlighted:text-(--accent-text-color)\", \"focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2\");\nconst menuTokens = cn(\"[--menu-transition-duration:250ms]\", \"[--menu-max-height:--spacing(56)]\", \"[--menu-padding:--spacing(1)]\", \"[--menu-border-radius:--spacing(3)]\", \"[--menu-item-border-radius:calc(var(--menu-border-radius)_-_var(--menu-padding))]\", \"motion-reduce:[--menu-transition-duration:0ms]\");\nconst group = cn(\"flex flex-col gap-0.5\", \"[anchor-scope:--menu-item-highlight-anchor]\", \"supports-[top:anchor(top)]:before:absolute\", \"supports-[top:anchor(top)]:before:[position-anchor:--menu-item-highlight-anchor]\", \"supports-[top:anchor(top)]:before:[inset:anchor(inside)]\", \"supports-[top:anchor(top)]:before:[overflow-anchor:none]\", \"supports-[top:anchor(top)]:before:pointer-events-none\", \"supports-[top:anchor(top)]:before:bg-(--accent-background-color)\", \"supports-[top:anchor(top)]:before:rounded-(--menu-item-border-radius)\", \"supports-[top:anchor(top)]:before:transition-[inset]\", \"supports-[top:anchor(top)]:before:duration-100\", \"supports-[top:anchor(top)]:before:ease-in-out\", \"supports-[top:anchor(top)]:has-data-[highlighted=]:before:duration-0\");\nconst menuHostShell = cn(popup.popover, surface, menuTokens, \"min-w-max max-w-(--media-popover-available-width,none) max-h-[min(var(--media-popover-available-height,var(--menu-max-height)),var(--menu-max-height))]\", \"box-border rounded-(--menu-border-radius) p-(--menu-padding) overscroll-none\");\nconst menu = {\n\t/** Standalone menu popover host (audio playback rate, sandbox demos). */\n\troot: cn(menuHostShell, \"overflow-auto!\"),\n\t/** Settings menu host with nested submenu navigation. */\n\tsettings: cn(menuHostShell, \"[--popup-transition:var(--popup-base-transition),width_var(--popup-transition-timing-function)_var(--menu-transition-duration),height_var(--popup-transition-timing-function)_var(--menu-transition-duration)]\", \"data-starting-style:[--popup-transition:var(--popup-base-transition)]\", \"data-ending-style:[--popup-transition:var(--popup-base-transition)]\", \"min-w-48! w-(--media-menu-width) h-(--media-menu-height)\", \"[&>:not([data-submenu])]:translate-none [&>:not([data-submenu])]:transition-[translate,filter]\", \"[&>:not([data-submenu])]:duration-(--menu-transition-duration) [&>:not([data-submenu])]:ease-out\", \"[--submenu-parent-translate:-100%] [&:dir(rtl)]:[--submenu-parent-translate:100%]\", \"[&[data-submenu-expanded=true]>:not([data-submenu])]:[translate:var(--submenu-parent-translate)_0]\", \"[&[data-submenu-expanded=true]>:not([data-submenu])]:blur\", \"[&[data-submenu-expanded]>:not([data-submenu])]:before:hidden\", \"overflow-hidden!\"),\n\tgroup,\n\titem: cn(itemBase, \"justify-between tabular-nums text-inherit\", \"supports-[top:anchor(top)]:data-highlighted:[anchor-name:--menu-item-highlight-anchor]\", \"supports-[top:anchor(top)]:data-highlighted:bg-transparent\", \"data-[availability=unavailable]:hidden data-[availability=unsupported]:hidden\", \"aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:opacity-50\"),\n\tseparator: \"my-1 border-b border-[oklch(0_0_0/0.1)] shadow-[0_1px_0_0_oklch(1_0_0/0.075)]\",\n\ttier: \"ps-0.5 pt-px text-(length:--font-size-tiny) font-semibold leading-none text-current/70\",\n\tindicator: \"ms-auto -me-1 shrink-0 opacity-0 group-aria-checked/menu-item:opacity-100\",\n\ticon: \"shrink-0 text-current/65 drop-shadow-[0_1px_0_var(--shadow-current-color)] group-hover/menu-item:text-inherit group-data-highlighted/menu-item:text-inherit\",\n\t/** Nested submenu panel. */\n\tsubmenuPanel,\n\tback: cn(itemBase, \"mb-0.5 w-full\"),\n\thint: \"ms-auto inline-flex min-w-0 items-center gap-1 ps-2 text-current/65\",\n\thintLabel: \"max-w-24 overflow-hidden text-ellipsis whitespace-nowrap\",\n\tchevron: \"size-3.5 [&:dir(rtl)]:[scale:-1_1]\",\n\tbackChevron: \"[&:dir(rtl)]:[scale:1_1]\",\n\tsettingsGroup: \"group/settings\",\n\tsettingsTrigger: \"group\",\n\tsettingsIcon: \"transition-transform duration-150 ease-in-out group-aria-expanded:rotate-90 motion-reduce:duration-0\"\n};\n//#endregion\nexport { menu };\n\n//# sourceMappingURL=menu.js.map"],"mappings":";;;;AAIA,MAAM,eAAe,GAAG,uEAAuE,+GAA+G,QAAQ,+FAA+F,iFAAiF,yEAAyE,uHAAuH,iDAAiD;AACvnB,MAAM,WAAW,GAAG,iIAAiI,cAAc,8DAA8D,mDAAmD,8CAA8C,0CAA0C,iDAAiD,4DAA4D,yEAAyE,+FAA+F,2EAA2E;AAC5sB,MAAM,aAAa,GAAG,sCAAsC,qCAAqC,iCAAiC,uCAAuC,qFAAqF,gDAAgD;AAC9S,MAAM,QAAQ,GAAG,yBAAyB,+CAA+C,8CAA8C,oFAAoF,4DAA4D,4DAA4D,yDAAyD,oEAAoE,yEAAyE,wDAAwD,kDAAkD,iDAAiD,sEAAsE;AAC1vB,MAAM,gBAAgB,GAAG,MAAM,SAAS,SAAS,YAAY,2JAA2J,8EAA8E;AACtS,MAAM,OAAO;;CAEZ,MAAM,GAAG,eAAe,gBAAgB;;CAExC,UAAU,GAAG,eAAe,kNAAkN,yEAAyE,uEAAuE,4DAA4D,kGAAkG,oGAAoG,qFAAqF,sGAAsG,6DAA6D,iEAAiE,kBAAkB;CAC38B;CACA,MAAM,GAAG,UAAU,6CAA6C,0FAA0F,8DAA8D,iFAAiF,6FAA6F;CACtY,WAAW;CACX,MAAM;CACN,WAAW;CACX,MAAM;;CAEN;CACA,MAAM,GAAG,UAAU,eAAe;CAClC,MAAM;CACN,WAAW;CACX,SAAS;CACT,aAAa;CACb,eAAe;CACf,iBAAiB;CACjB,cAAc;AACf"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
//#region ../skins/dist/default/default/tailwind/components/time.js
|
|
2
2
|
const time = {
|
|
3
|
-
group: "@container/media-time flex items-center flex-1 gap-2.5 @max-[16rem]/media-time:[&>*:last-child]:hidden",
|
|
3
|
+
group: "@container/media-time flex items-center flex-1 gap-2.5 [&:dir(rtl)]:flex-row-reverse @max-[16rem]/media-time:[&>*:last-child]:hidden",
|
|
4
4
|
current: "tabular-nums",
|
|
5
5
|
duration: "tabular-nums cursor-pointer rounded-[--spacing(1)] outline-2 outline-transparent -outline-offset-2 transition-[outline-color,outline-offset] duration-100 ease-out focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2"
|
|
6
6
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/default/tailwind/components/time.js"],"sourcesContent":["//#region src/default/tailwind/components/time.ts\nconst time = {\n\tgroup: \"@container/media-time flex items-center flex-1 gap-2.5 @max-[16rem]/media-time:[&>*:last-child]:hidden\",\n\tcurrent: \"tabular-nums\",\n\tduration: \"tabular-nums cursor-pointer rounded-[--spacing(1)] outline-2 outline-transparent -outline-offset-2 transition-[outline-color,outline-offset] duration-100 ease-out focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2\"\n};\n//#endregion\nexport { time };\n\n//# sourceMappingURL=time.js.map"],"mappings":";AACA,MAAM,OAAO;CACZ,OAAO;CACP,SAAS;CACT,UAAU;AACX"}
|
|
1
|
+
{"version":3,"file":"time.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/default/tailwind/components/time.js"],"sourcesContent":["//#region src/default/tailwind/components/time.ts\nconst time = {\n\tgroup: \"@container/media-time flex items-center flex-1 gap-2.5 [&:dir(rtl)]:flex-row-reverse @max-[16rem]/media-time:[&>*:last-child]:hidden\",\n\tcurrent: \"tabular-nums\",\n\tduration: \"tabular-nums cursor-pointer rounded-[--spacing(1)] outline-2 outline-transparent -outline-offset-2 transition-[outline-color,outline-offset] duration-100 ease-out focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2\"\n};\n//#endregion\nexport { time };\n\n//# sourceMappingURL=time.js.map"],"mappings":";AACA,MAAM,OAAO;CACZ,OAAO;CACP,SAAS;CACT,UAAU;AACX"}
|
package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/button-group.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button-group.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/minimal/tailwind/components/button-group.js"],"sourcesContent":["//#region src/minimal/tailwind/components/button-group.ts\nconst buttonGroup = \"flex items-center gap-px\";\n//#endregion\nexport { buttonGroup };\n\n//# sourceMappingURL=button-group.js.map"],"mappings":";AACA,MAAM,cAAc"}
|
|
1
|
+
{"version":3,"file":"button-group.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/minimal/tailwind/components/button-group.js"],"sourcesContent":["//#region src/minimal/tailwind/components/button-group.ts\nconst buttonGroup = \"flex items-center gap-px [&:dir(rtl)]:flex-row-reverse\";\n//#endregion\nexport { buttonGroup };\n\n//# sourceMappingURL=button-group.js.map"],"mappings":";AACA,MAAM,cAAc"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { cn } from "@videojs/utils/style";
|
|
2
2
|
//#region ../skins/dist/default/minimal/tailwind/components/controls.js
|
|
3
|
-
const controls = cn("peer/controls", "@container/media-controls", "[--media-popover-side-offset:calc(var(--spacing)*(var(--base-side-offset,0)+var(--controls-padding,1)))]", "[--media-tooltip-side-offset:var(--media-popover-side-offset)]", "[--media-popover-boundary-offset:calc(var(--spacing)*(var(--base-boundary-offset,0)+var(--controls-padding,1)))]", "[--media-tooltip-boundary-offset:var(--media-popover-boundary-offset)]", "[padding:calc(var(--spacing)*var(--controls-padding,1))] flex items-center", "bg-(--controls-background-color)", "[backdrop-filter:var(--controls-backdrop-filter)]", "text-shadow-2xs text-shadow-(color:--shadow-current-color)");
|
|
3
|
+
const controls = cn("peer/controls", "@container/media-controls", "[--media-popover-side-offset:calc(var(--spacing)*(var(--base-side-offset,0)+var(--controls-padding,1)))]", "[--media-tooltip-side-offset:var(--media-popover-side-offset)]", "[--media-popover-boundary-offset:calc(var(--spacing)*(var(--base-boundary-offset,0)+var(--controls-padding,1)))]", "[--media-tooltip-boundary-offset:var(--media-popover-boundary-offset)]", "[padding:calc(var(--spacing)*var(--controls-padding,1))] flex items-center [&:dir(rtl)]:flex-row-reverse", "bg-(--controls-background-color)", "[backdrop-filter:var(--controls-backdrop-filter)]", "text-shadow-2xs text-shadow-(color:--shadow-current-color)");
|
|
4
4
|
//#endregion
|
|
5
5
|
export { controls };
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controls.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/minimal/tailwind/components/controls.js"],"sourcesContent":["import { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/controls.ts\nconst controls = cn(\"peer/controls\", \"@container/media-controls\", \"[--media-popover-side-offset:calc(var(--spacing)*(var(--base-side-offset,0)+var(--controls-padding,1)))]\", \"[--media-tooltip-side-offset:var(--media-popover-side-offset)]\", \"[--media-popover-boundary-offset:calc(var(--spacing)*(var(--base-boundary-offset,0)+var(--controls-padding,1)))]\", \"[--media-tooltip-boundary-offset:var(--media-popover-boundary-offset)]\", \"[padding:calc(var(--spacing)*var(--controls-padding,1))] flex items-center\", \"bg-(--controls-background-color)\", \"[backdrop-filter:var(--controls-backdrop-filter)]\", \"text-shadow-2xs text-shadow-(color:--shadow-current-color)\");\n//#endregion\nexport { controls };\n\n//# sourceMappingURL=controls.js.map"],"mappings":";;AAEA,MAAM,WAAW,GAAG,iBAAiB,6BAA6B,4GAA4G,kEAAkE,oHAAoH,0EAA0E,
|
|
1
|
+
{"version":3,"file":"controls.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/minimal/tailwind/components/controls.js"],"sourcesContent":["import { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/controls.ts\nconst controls = cn(\"peer/controls\", \"@container/media-controls\", \"[--media-popover-side-offset:calc(var(--spacing)*(var(--base-side-offset,0)+var(--controls-padding,1)))]\", \"[--media-tooltip-side-offset:var(--media-popover-side-offset)]\", \"[--media-popover-boundary-offset:calc(var(--spacing)*(var(--base-boundary-offset,0)+var(--controls-padding,1)))]\", \"[--media-tooltip-boundary-offset:var(--media-popover-boundary-offset)]\", \"[padding:calc(var(--spacing)*var(--controls-padding,1))] flex items-center [&:dir(rtl)]:flex-row-reverse\", \"bg-(--controls-background-color)\", \"[backdrop-filter:var(--controls-backdrop-filter)]\", \"text-shadow-2xs text-shadow-(color:--shadow-current-color)\");\n//#endregion\nexport { controls };\n\n//# sourceMappingURL=controls.js.map"],"mappings":";;AAEA,MAAM,WAAW,GAAG,iBAAiB,6BAA6B,4GAA4G,kEAAkE,oHAAoH,0EAA0E,4GAA4G,oCAAoC,qDAAqD,4DAA4D"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { popup } from "./popup.js";
|
|
2
2
|
import { cn } from "@videojs/utils/style";
|
|
3
3
|
//#region ../skins/dist/default/minimal/tailwind/components/menu.js
|
|
4
|
-
const submenuPanel = cn("absolute inset-x-0 top-0 [max-height:inherit] overflow-auto overscroll-none p-(--menu-padding) outline-none", "z-10", "translate-none transition-[translate,filter] duration-(--menu-transition-duration) ease-out", "data-starting-style:pointer-events-none data-ending-style:pointer-events-none", "data-starting-style:overflow-hidden data-ending-style:overflow-hidden", "data-starting-style:translate-
|
|
5
|
-
const itemBase = cn("group/menu-item relative flex cursor-pointer select-none items-center gap-1.5 rounded-(--menu-item-border-radius) py-1.5 px-2", "text-
|
|
4
|
+
const submenuPanel = cn("[--submenu-translate:100%] [&:dir(rtl)]:[--submenu-translate:-100%]", "absolute inset-x-0 top-0 [max-height:inherit] overflow-auto overscroll-none p-(--menu-padding) outline-none", "z-10", "translate-none transition-[translate,filter] duration-(--menu-transition-duration) ease-out", "data-starting-style:pointer-events-none data-ending-style:pointer-events-none", "data-starting-style:overflow-hidden data-ending-style:overflow-hidden", "data-starting-style:[translate:var(--submenu-translate)_0] data-ending-style:[translate:var(--submenu-translate)_0]", "data-starting-style:blur data-ending-style:blur");
|
|
5
|
+
const itemBase = cn("group/menu-item relative flex cursor-pointer select-none items-center gap-1.5 rounded-(--menu-item-border-radius) py-1.5 px-2", "text-start", "text-shadow-2xs text-shadow-(color:--shadow-current-color)", "outline-2 -outline-offset-2 outline-transparent", "transition-colors duration-100 ease-in-out", "supports-[top:anchor(top)]:duration-50", "supports-[top:anchor(top)]:hover:duration-200", "supports-[top:anchor(top)]:data-highlighted:duration-200", "hover:bg-(--accent-background-color) hover:text-(--accent-text-color)", "data-highlighted:bg-(--accent-background-color) data-highlighted:text-(--accent-text-color)", "focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2");
|
|
6
6
|
const menuTokens = cn("[--menu-transition-duration:250ms]", "[--menu-max-height:--spacing(56)]", "[--menu-padding:--spacing(1)]", "[--menu-border-radius:--spacing(2.5)]", "[--menu-item-border-radius:calc(var(--menu-border-radius)_-_var(--menu-padding))]", "motion-reduce:[--menu-transition-duration:0ms]");
|
|
7
7
|
const group = cn("flex flex-col gap-0.5", "[anchor-scope:--menu-item-highlight-anchor]", "supports-[top:anchor(top)]:before:absolute", "supports-[top:anchor(top)]:before:[position-anchor:--menu-item-highlight-anchor]", "supports-[top:anchor(top)]:before:[inset:anchor(inside)]", "supports-[top:anchor(top)]:before:[overflow-anchor:none]", "supports-[top:anchor(top)]:before:pointer-events-none", "supports-[top:anchor(top)]:before:bg-(--accent-background-color)", "supports-[top:anchor(top)]:before:rounded-(--menu-item-border-radius)", "supports-[top:anchor(top)]:before:transition-[inset]", "supports-[top:anchor(top)]:before:duration-100", "supports-[top:anchor(top)]:before:ease-in-out", "supports-[top:anchor(top)]:has-data-[highlighted=]:before:duration-0");
|
|
8
8
|
const menuHostShell = cn(popup.popover, menuTokens, "min-w-max max-w-(--media-popover-available-width,none) max-h-[min(var(--media-popover-available-height,var(--menu-max-height)),var(--menu-max-height))]", "bg-(--popover-background-color) [backdrop-filter:var(--popover-backdrop-filter)]", "shadow-[0_0_0_1px_var(--popover-border-color),0_4px_6px_-1px_oklch(0_0_0/0.1),0_2px_4px_-2px_oklch(0_0_0/0.1)]", "box-border rounded-(--menu-border-radius) p-(--menu-padding) overscroll-none");
|
|
@@ -10,19 +10,20 @@ const menu = {
|
|
|
10
10
|
/** Standalone menu popover host (audio playback rate, sandbox demos). */
|
|
11
11
|
root: cn(menuHostShell, "overflow-auto!"),
|
|
12
12
|
/** Settings menu host with nested submenu navigation. */
|
|
13
|
-
settings: cn(menuHostShell, "[--popup-transition:var(--popup-base-transition),width_var(--popup-transition-timing-function)_var(--menu-transition-duration),height_var(--popup-transition-timing-function)_var(--menu-transition-duration)]", "data-starting-style:[--popup-transition:var(--popup-base-transition)]", "data-ending-style:[--popup-transition:var(--popup-base-transition)]", "min-w-48! w-(--media-menu-width) h-(--media-menu-height)", "[&>:not([data-submenu])]:translate-none [&>:not([data-submenu])]:transition-[translate,filter]", "[&>:not([data-submenu])]:duration-(--menu-transition-duration) [&>:not([data-submenu])]:ease-out", "[&[data-submenu-expanded=true]>:not([data-submenu])]
|
|
13
|
+
settings: cn(menuHostShell, "[--popup-transition:var(--popup-base-transition),width_var(--popup-transition-timing-function)_var(--menu-transition-duration),height_var(--popup-transition-timing-function)_var(--menu-transition-duration)]", "data-starting-style:[--popup-transition:var(--popup-base-transition)]", "data-ending-style:[--popup-transition:var(--popup-base-transition)]", "min-w-48! w-(--media-menu-width) h-(--media-menu-height)", "[&>:not([data-submenu])]:translate-none [&>:not([data-submenu])]:transition-[translate,filter]", "[&>:not([data-submenu])]:duration-(--menu-transition-duration) [&>:not([data-submenu])]:ease-out", "[--submenu-parent-translate:-100%] [&:dir(rtl)]:[--submenu-parent-translate:100%]", "[&[data-submenu-expanded=true]>:not([data-submenu])]:[translate:var(--submenu-parent-translate)_0]", "[&[data-submenu-expanded=true]>:not([data-submenu])]:blur", "[&[data-submenu-expanded]>:not([data-submenu])]:before:hidden", "overflow-hidden!"),
|
|
14
14
|
group,
|
|
15
15
|
item: cn(itemBase, "justify-between tabular-nums text-inherit", "supports-[top:anchor(top)]:data-highlighted:[anchor-name:--menu-item-highlight-anchor]", "supports-[top:anchor(top)]:data-highlighted:bg-transparent", "data-[availability=unavailable]:hidden data-[availability=unsupported]:hidden", "aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:opacity-50"),
|
|
16
16
|
separator: "my-1 border-b border-[oklch(1_0_0/0.1)]",
|
|
17
|
-
tier: "
|
|
18
|
-
indicator: "
|
|
17
|
+
tier: "ps-0.5 pt-px text-(length:--font-size-tiny) font-semibold leading-none text-current/70",
|
|
18
|
+
indicator: "ms-auto -me-1 shrink-0 opacity-0 group-aria-checked/menu-item:opacity-100",
|
|
19
19
|
icon: "shrink-0 text-current/50 drop-shadow-[0_1px_0_var(--shadow-current-color)] group-hover/menu-item:text-inherit group-data-highlighted/menu-item:text-inherit",
|
|
20
20
|
/** Nested submenu panel. */
|
|
21
21
|
submenuPanel,
|
|
22
22
|
back: cn(itemBase, "mb-0.5 w-full"),
|
|
23
|
-
hint: "
|
|
23
|
+
hint: "ms-auto inline-flex min-w-0 items-center gap-1 ps-2 text-current/65",
|
|
24
24
|
hintLabel: "max-w-24 overflow-hidden text-ellipsis whitespace-nowrap",
|
|
25
|
-
chevron: "size-3.5",
|
|
25
|
+
chevron: "size-3.5 [&:dir(rtl)]:[scale:-1_1]",
|
|
26
|
+
backChevron: "[&:dir(rtl)]:[scale:1_1]",
|
|
26
27
|
settingsGroup: "group/settings",
|
|
27
28
|
settingsTrigger: "group",
|
|
28
29
|
settingsIcon: "transition-transform duration-150 ease-in-out group-aria-expanded:rotate-90 motion-reduce:duration-0"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/minimal/tailwind/components/menu.js"],"sourcesContent":["import { popup } from \"./popup.js\";\nimport { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/menu.ts\nconst submenuPanel = cn(\"absolute inset-x-0 top-0 [max-height:inherit] overflow-auto overscroll-none p-(--menu-padding) outline-none\", \"z-10\", \"translate-none transition-[translate,filter] duration-(--menu-transition-duration) ease-out\", \"data-starting-style:pointer-events-none data-ending-style:pointer-events-none\", \"data-starting-style:overflow-hidden data-ending-style:overflow-hidden\", \"data-starting-style:translate-
|
|
1
|
+
{"version":3,"file":"menu.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/minimal/tailwind/components/menu.js"],"sourcesContent":["import { popup } from \"./popup.js\";\nimport { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/menu.ts\nconst submenuPanel = cn(\"[--submenu-translate:100%] [&:dir(rtl)]:[--submenu-translate:-100%]\", \"absolute inset-x-0 top-0 [max-height:inherit] overflow-auto overscroll-none p-(--menu-padding) outline-none\", \"z-10\", \"translate-none transition-[translate,filter] duration-(--menu-transition-duration) ease-out\", \"data-starting-style:pointer-events-none data-ending-style:pointer-events-none\", \"data-starting-style:overflow-hidden data-ending-style:overflow-hidden\", \"data-starting-style:[translate:var(--submenu-translate)_0] data-ending-style:[translate:var(--submenu-translate)_0]\", \"data-starting-style:blur data-ending-style:blur\");\nconst itemBase = cn(\"group/menu-item relative flex cursor-pointer select-none items-center gap-1.5 rounded-(--menu-item-border-radius) py-1.5 px-2\", \"text-start\", \"text-shadow-2xs text-shadow-(color:--shadow-current-color)\", \"outline-2 -outline-offset-2 outline-transparent\", \"transition-colors duration-100 ease-in-out\", \"supports-[top:anchor(top)]:duration-50\", \"supports-[top:anchor(top)]:hover:duration-200\", \"supports-[top:anchor(top)]:data-highlighted:duration-200\", \"hover:bg-(--accent-background-color) hover:text-(--accent-text-color)\", \"data-highlighted:bg-(--accent-background-color) data-highlighted:text-(--accent-text-color)\", \"focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2\");\nconst menuTokens = cn(\"[--menu-transition-duration:250ms]\", \"[--menu-max-height:--spacing(56)]\", \"[--menu-padding:--spacing(1)]\", \"[--menu-border-radius:--spacing(2.5)]\", \"[--menu-item-border-radius:calc(var(--menu-border-radius)_-_var(--menu-padding))]\", \"motion-reduce:[--menu-transition-duration:0ms]\");\nconst group = cn(\"flex flex-col gap-0.5\", \"[anchor-scope:--menu-item-highlight-anchor]\", \"supports-[top:anchor(top)]:before:absolute\", \"supports-[top:anchor(top)]:before:[position-anchor:--menu-item-highlight-anchor]\", \"supports-[top:anchor(top)]:before:[inset:anchor(inside)]\", \"supports-[top:anchor(top)]:before:[overflow-anchor:none]\", \"supports-[top:anchor(top)]:before:pointer-events-none\", \"supports-[top:anchor(top)]:before:bg-(--accent-background-color)\", \"supports-[top:anchor(top)]:before:rounded-(--menu-item-border-radius)\", \"supports-[top:anchor(top)]:before:transition-[inset]\", \"supports-[top:anchor(top)]:before:duration-100\", \"supports-[top:anchor(top)]:before:ease-in-out\", \"supports-[top:anchor(top)]:has-data-[highlighted=]:before:duration-0\");\nconst menuHostShell = cn(popup.popover, menuTokens, \"min-w-max max-w-(--media-popover-available-width,none) max-h-[min(var(--media-popover-available-height,var(--menu-max-height)),var(--menu-max-height))]\", \"bg-(--popover-background-color) [backdrop-filter:var(--popover-backdrop-filter)]\", \"shadow-[0_0_0_1px_var(--popover-border-color),0_4px_6px_-1px_oklch(0_0_0/0.1),0_2px_4px_-2px_oklch(0_0_0/0.1)]\", \"box-border rounded-(--menu-border-radius) p-(--menu-padding) overscroll-none\");\nconst menu = {\n\t/** Standalone menu popover host (audio playback rate, sandbox demos). */\n\troot: cn(menuHostShell, \"overflow-auto!\"),\n\t/** Settings menu host with nested submenu navigation. */\n\tsettings: cn(menuHostShell, \"[--popup-transition:var(--popup-base-transition),width_var(--popup-transition-timing-function)_var(--menu-transition-duration),height_var(--popup-transition-timing-function)_var(--menu-transition-duration)]\", \"data-starting-style:[--popup-transition:var(--popup-base-transition)]\", \"data-ending-style:[--popup-transition:var(--popup-base-transition)]\", \"min-w-48! w-(--media-menu-width) h-(--media-menu-height)\", \"[&>:not([data-submenu])]:translate-none [&>:not([data-submenu])]:transition-[translate,filter]\", \"[&>:not([data-submenu])]:duration-(--menu-transition-duration) [&>:not([data-submenu])]:ease-out\", \"[--submenu-parent-translate:-100%] [&:dir(rtl)]:[--submenu-parent-translate:100%]\", \"[&[data-submenu-expanded=true]>:not([data-submenu])]:[translate:var(--submenu-parent-translate)_0]\", \"[&[data-submenu-expanded=true]>:not([data-submenu])]:blur\", \"[&[data-submenu-expanded]>:not([data-submenu])]:before:hidden\", \"overflow-hidden!\"),\n\tgroup,\n\titem: cn(itemBase, \"justify-between tabular-nums text-inherit\", \"supports-[top:anchor(top)]:data-highlighted:[anchor-name:--menu-item-highlight-anchor]\", \"supports-[top:anchor(top)]:data-highlighted:bg-transparent\", \"data-[availability=unavailable]:hidden data-[availability=unsupported]:hidden\", \"aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:opacity-50\"),\n\tseparator: \"my-1 border-b border-[oklch(1_0_0/0.1)]\",\n\ttier: \"ps-0.5 pt-px text-(length:--font-size-tiny) font-semibold leading-none text-current/70\",\n\tindicator: \"ms-auto -me-1 shrink-0 opacity-0 group-aria-checked/menu-item:opacity-100\",\n\ticon: \"shrink-0 text-current/50 drop-shadow-[0_1px_0_var(--shadow-current-color)] group-hover/menu-item:text-inherit group-data-highlighted/menu-item:text-inherit\",\n\t/** Nested submenu panel. */\n\tsubmenuPanel,\n\tback: cn(itemBase, \"mb-0.5 w-full\"),\n\thint: \"ms-auto inline-flex min-w-0 items-center gap-1 ps-2 text-current/65\",\n\thintLabel: \"max-w-24 overflow-hidden text-ellipsis whitespace-nowrap\",\n\tchevron: \"size-3.5 [&:dir(rtl)]:[scale:-1_1]\",\n\tbackChevron: \"[&:dir(rtl)]:[scale:1_1]\",\n\tsettingsGroup: \"group/settings\",\n\tsettingsTrigger: \"group\",\n\tsettingsIcon: \"transition-transform duration-150 ease-in-out group-aria-expanded:rotate-90 motion-reduce:duration-0\"\n};\n//#endregion\nexport { menu };\n\n//# sourceMappingURL=menu.js.map"],"mappings":";;;AAGA,MAAM,eAAe,GAAG,uEAAuE,+GAA+G,QAAQ,+FAA+F,iFAAiF,yEAAyE,uHAAuH,iDAAiD;AACvnB,MAAM,WAAW,GAAG,iIAAiI,cAAc,8DAA8D,mDAAmD,8CAA8C,0CAA0C,iDAAiD,4DAA4D,yEAAyE,+FAA+F,2EAA2E;AAC5sB,MAAM,aAAa,GAAG,sCAAsC,qCAAqC,iCAAiC,yCAAyC,qFAAqF,gDAAgD;AAChT,MAAM,QAAQ,GAAG,yBAAyB,+CAA+C,8CAA8C,oFAAoF,4DAA4D,4DAA4D,yDAAyD,oEAAoE,yEAAyE,wDAAwD,kDAAkD,iDAAiD,sEAAsE;AAC1vB,MAAM,gBAAgB,GAAG,MAAM,SAAS,YAAY,2JAA2J,oFAAoF,kHAAkH,8EAA8E;AACne,MAAM,OAAO;;CAEZ,MAAM,GAAG,eAAe,gBAAgB;;CAExC,UAAU,GAAG,eAAe,kNAAkN,yEAAyE,uEAAuE,4DAA4D,kGAAkG,oGAAoG,qFAAqF,sGAAsG,6DAA6D,iEAAiE,kBAAkB;CAC38B;CACA,MAAM,GAAG,UAAU,6CAA6C,0FAA0F,8DAA8D,iFAAiF,6FAA6F;CACtY,WAAW;CACX,MAAM;CACN,WAAW;CACX,MAAM;;CAEN;CACA,MAAM,GAAG,UAAU,eAAe;CAClC,MAAM;CACN,WAAW;CACX,SAAS;CACT,aAAa;CACb,eAAe;CACf,iBAAiB;CACjB,cAAc;AACf"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { cn } from "@videojs/utils/style";
|
|
2
2
|
//#region ../skins/dist/default/minimal/tailwind/components/time.js
|
|
3
3
|
const time = {
|
|
4
|
-
group: "flex items-center gap-1",
|
|
4
|
+
group: "flex items-center gap-1 [&:dir(rtl)]:flex-row-reverse",
|
|
5
5
|
current: cn("hidden tabular-nums cursor-pointer rounded-[--spacing(1)] outline-2 outline-transparent -outline-offset-2", "transition-[outline-color,outline-offset] duration-100 ease-out", "supports-[corner-shape:squircle]:rounded-[--spacing(4)]", "supports-[corner-shape:squircle]:[corner-shape:squircle]", "focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2", "@2xl/media-root:inline"),
|
|
6
6
|
separator: cn("hidden", "@2xl/media-root:inline @2xl/media-root:text-current/60"),
|
|
7
7
|
duration: cn("tabular-nums", "@2xl/media-root:text-current/60"),
|
|
8
|
-
controls: cn("@container/media-time-controls flex flex-row-reverse items-center flex-1 gap-3", "@2xl/media-root:flex-row")
|
|
8
|
+
controls: cn("@container/media-time-controls flex flex-row-reverse items-center flex-1 gap-3 [&:dir(rtl)]:flex-row", "@2xl/media-root:flex-row @2xl/media-root:[&:dir(rtl)]:flex-row-reverse")
|
|
9
9
|
};
|
|
10
10
|
//#endregion
|
|
11
11
|
export { time };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/minimal/tailwind/components/time.js"],"sourcesContent":["import { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/time.ts\nconst time = {\n\tgroup: \"flex items-center gap-1\",\n\tcurrent: cn(\"hidden tabular-nums cursor-pointer rounded-[--spacing(1)] outline-2 outline-transparent -outline-offset-2\", \"transition-[outline-color,outline-offset] duration-100 ease-out\", \"supports-[corner-shape:squircle]:rounded-[--spacing(4)]\", \"supports-[corner-shape:squircle]:[corner-shape:squircle]\", \"focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2\", \"@2xl/media-root:inline\"),\n\tseparator: cn(\"hidden\", \"@2xl/media-root:inline @2xl/media-root:text-current/60\"),\n\tduration: cn(\"tabular-nums\", \"@2xl/media-root:text-current/60\"),\n\tcontrols: cn(\"@container/media-time-controls flex flex-row-reverse items-center flex-1 gap-3\", \"@2xl/media-root:flex-row\")\n};\n//#endregion\nexport { time };\n\n//# sourceMappingURL=time.js.map"],"mappings":";;AAEA,MAAM,OAAO;CACZ,OAAO;CACP,SAAS,GAAG,6GAA6G,mEAAmE,2DAA2D,4DAA4D,6EAA6E,wBAAwB;CACxZ,WAAW,GAAG,UAAU,wDAAwD;CAChF,UAAU,GAAG,gBAAgB,iCAAiC;CAC9D,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"time.js","names":[],"sources":["../../../../../../../../../../skins/dist/default/minimal/tailwind/components/time.js"],"sourcesContent":["import { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/time.ts\nconst time = {\n\tgroup: \"flex items-center gap-1 [&:dir(rtl)]:flex-row-reverse\",\n\tcurrent: cn(\"hidden tabular-nums cursor-pointer rounded-[--spacing(1)] outline-2 outline-transparent -outline-offset-2\", \"transition-[outline-color,outline-offset] duration-100 ease-out\", \"supports-[corner-shape:squircle]:rounded-[--spacing(4)]\", \"supports-[corner-shape:squircle]:[corner-shape:squircle]\", \"focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2\", \"@2xl/media-root:inline\"),\n\tseparator: cn(\"hidden\", \"@2xl/media-root:inline @2xl/media-root:text-current/60\"),\n\tduration: cn(\"tabular-nums\", \"@2xl/media-root:text-current/60\"),\n\tcontrols: cn(\"@container/media-time-controls flex flex-row-reverse items-center flex-1 gap-3 [&:dir(rtl)]:flex-row\", \"@2xl/media-root:flex-row @2xl/media-root:[&:dir(rtl)]:flex-row-reverse\")\n};\n//#endregion\nexport { time };\n\n//# sourceMappingURL=time.js.map"],"mappings":";;AAEA,MAAM,OAAO;CACZ,OAAO;CACP,SAAS,GAAG,6GAA6G,mEAAmE,2DAA2D,4DAA4D,6EAA6E,wBAAwB;CACxZ,WAAW,GAAG,UAAU,wDAAwD;CAChF,UAAU,GAAG,gBAAgB,iCAAiC;CAC9D,UAAU,GAAG,wGAAwG,wEAAwE;AAC9L"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slider-element.d.ts","names":[],"sources":["../../../../src/ui/slider/slider-element.ts"],"mappings":";;;;cAoBa,sBAAsB;;kBACjB;SAEA;;MACL,MAAI;;;MACJ,MAAI;;;MACN,MAAI;;;MACJ,MAAI;;;MACH,MAAI;;;MACC,MAAI;MAAU;;;MACZ,MAAI;;;MACP,MAAI;;;MACE,MAAI;MAAU;;;EAGlC,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAWS;
|
|
1
|
+
{"version":3,"file":"slider-element.d.ts","names":[],"sources":["../../../../src/ui/slider/slider-element.ts"],"mappings":";;;;cAoBa,sBAAsB;;kBACjB;SAEA;;MACL,MAAI;;;MACJ,MAAI;;;MACN,MAAI;;;MACJ,MAAI;;;MACH,MAAI;;;MACC,MAAI;MAAU;;;MACZ,MAAI;;;MACP,MAAI;;;MACE,MAAI;MAAU;;;EAGlC,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAWS;EAwCA;EAOA;YAWU,WAAW,UAAU;YAKrB,OAAO,UAAU"}
|
|
@@ -7,7 +7,7 @@ import { sliderContext } from "./context.js";
|
|
|
7
7
|
import { applyElementProps, applyStateDataAttrs, createSlider, getSliderCSSVars, selectControls } from "@videojs/core/dom";
|
|
8
8
|
import { ContextProvider } from "@videojs/element/context";
|
|
9
9
|
import { translateText } from "@videojs/core/i18n";
|
|
10
|
-
import { applyStyles
|
|
10
|
+
import { applyStyles } from "@videojs/utils/dom";
|
|
11
11
|
import { SliderCore, SliderDataAttrs } from "@videojs/core";
|
|
12
12
|
//#region src/ui/slider/slider-element.ts
|
|
13
13
|
var SliderElement = class extends MediaElement {
|
|
@@ -68,7 +68,6 @@ var SliderElement = class extends MediaElement {
|
|
|
68
68
|
getElement: () => this,
|
|
69
69
|
getThumbElement: () => this.querySelector("media-slider-thumb"),
|
|
70
70
|
getOrientation: () => this.orientation,
|
|
71
|
-
isRTL: () => isRTL(this),
|
|
72
71
|
isDisabled: () => this.disabled,
|
|
73
72
|
getPercent: () => this.#core.percentFromValue(this.value),
|
|
74
73
|
getStepPercent: () => this.#core.getStepPercent(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slider-element.js","names":["#core","#controlsState","#i18n","#provider","#disconnect","#slider","#releaseControlsLock","#releaseControlsVisibilityLock"],"sources":["../../../../src/ui/slider/slider-element.ts"],"sourcesContent":["import { SliderCore, SliderDataAttrs } from '@videojs/core';\nimport {\n applyElementProps,\n applyStateDataAttrs,\n createSlider,\n getSliderCSSVars,\n type SliderApi,\n selectControls,\n} from '@videojs/core/dom';\nimport { type Text, translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport { applyStyles
|
|
1
|
+
{"version":3,"file":"slider-element.js","names":["#core","#controlsState","#i18n","#provider","#disconnect","#slider","#releaseControlsLock","#releaseControlsVisibilityLock"],"sources":["../../../../src/ui/slider/slider-element.ts"],"sourcesContent":["import { SliderCore, SliderDataAttrs } from '@videojs/core';\nimport {\n applyElementProps,\n applyStateDataAttrs,\n createSlider,\n getSliderCSSVars,\n type SliderApi,\n selectControls,\n} from '@videojs/core/dom';\nimport { type Text, translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport { applyStyles } from '@videojs/utils/dom';\nimport { i18nContext } from '../../i18n/context';\nimport { I18nController } from '../../i18n/controller';\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\nimport { sliderContext } from './context';\n\nexport class SliderElement extends MediaElement {\n static readonly tagName = 'media-slider';\n\n static override properties = {\n label: { type: String },\n value: { type: Number },\n min: { type: Number },\n max: { type: Number },\n step: { type: Number },\n largeStep: { type: Number, attribute: 'large-step' },\n orientation: { type: String },\n disabled: { type: Boolean },\n thumbAlignment: { type: String, attribute: 'thumb-alignment' },\n } satisfies PropertyDeclarationMap<keyof SliderCore.Props>;\n\n label: Text | string = '';\n value = SliderCore.defaultProps.value;\n min = SliderCore.defaultProps.min;\n max = SliderCore.defaultProps.max;\n step = SliderCore.defaultProps.step;\n largeStep = SliderCore.defaultProps.largeStep;\n orientation = SliderCore.defaultProps.orientation;\n disabled = SliderCore.defaultProps.disabled;\n thumbAlignment = SliderCore.defaultProps.thumbAlignment;\n\n readonly #core = new SliderCore();\n readonly #controlsState = new PlayerController(this, playerContext, selectControls);\n readonly #i18n = new I18nController(this, i18nContext);\n readonly #provider = new ContextProvider(this, { context: sliderContext });\n\n #slider: SliderApi | null = null;\n #disconnect: AbortController | null = null;\n #releaseControlsLock: (() => void) | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n this.#disconnect = new AbortController();\n const signal = this.#disconnect.signal;\n\n this.#slider = createSlider({\n getElement: () => this,\n getThumbElement: () => this.querySelector<HTMLElement>('media-slider-thumb'),\n getOrientation: () => this.orientation,\n isDisabled: () => this.disabled,\n getPercent: () => this.#core.percentFromValue(this.value),\n getStepPercent: () => this.#core.getStepPercent(),\n getLargeStepPercent: () => this.#core.getLargeStepPercent(),\n onValueChange: (percent) => {\n this.value = this.#core.valueFromPercent(percent);\n this.dispatchEvent(new CustomEvent('value-change', { detail: { value: this.value }, bubbles: true }));\n },\n onValueCommit: (percent) => {\n this.value = this.#core.valueFromPercent(percent);\n this.dispatchEvent(new CustomEvent('value-commit', { detail: { value: this.value }, bubbles: true }));\n },\n onDragStart: () => {\n this.#releaseControlsLock ??= this.#controlsState.value?.requestControlsLock() ?? null;\n this.dispatchEvent(new CustomEvent('drag-start', { bubbles: true }));\n },\n onDragEnd: () => {\n this.#releaseControlsVisibilityLock();\n this.dispatchEvent(new CustomEvent('drag-end', { bubbles: true }));\n },\n adjustPercent: (raw, thumbSize, trackSize) => this.#core.adjustPercentForAlignment(raw, thumbSize, trackSize),\n onResize: () => this.requestUpdate(),\n });\n\n applyElementProps(this, this.#slider.rootProps, { signal });\n applyStyles(this, this.#slider.rootStyle);\n this.#slider.input.subscribe(() => this.requestUpdate(), { signal });\n }\n\n override disconnectedCallback(): void {\n this.#releaseControlsVisibilityLock();\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n override destroyCallback(): void {\n this.#releaseControlsVisibilityLock();\n this.#slider?.destroy();\n super.destroyCallback();\n }\n\n #releaseControlsVisibilityLock(): void {\n this.#releaseControlsLock?.();\n this.#releaseControlsLock = null;\n }\n\n protected override willUpdate(_changed: PropertyValues): void {\n super.willUpdate(_changed);\n this.#core.setProps(this);\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n if (!this.#slider) return;\n\n this.#core.setInput(this.#slider.input.current);\n const state = this.#core.getSliderState(this.value);\n\n const cssVars = getSliderCSSVars(this.#slider.adjustForAlignment(state));\n\n applyStyles(this, cssVars);\n\n // Apply state data attributes to the root element.\n applyStateDataAttrs(this, state, SliderDataAttrs);\n\n // Provide context to child elements (thumb, value, track, etc.).\n this.#provider.setValue({\n state,\n stateAttrMap: SliderDataAttrs,\n pointerValue: this.#core.valueFromPercent(state.pointerPercent),\n thumbAttrs: (() => {\n const attrs = this.#core.getAttrs(state);\n return { ...attrs, 'aria-label': translateText(attrs['aria-label'], this.#i18n.value) };\n })(),\n thumbProps: this.#slider.thumbProps,\n });\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-slider-element.d.ts","names":[],"sources":["../../../../src/ui/time-slider/time-slider-element.ts"],"mappings":";;;;cA0Ba,0BAA0B;;kBACrB;SAEA;;MACL,MAAI;;;MACK,MAAI;MAAU;;;MACxB,MAAI;;;MACC,MAAI;MAAU;;;MACZ,MAAI;;;MACP,MAAI;;;MACE,MAAI;MAAU;;;MACjB,MAAI;MAAW;;;EAGhC,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EAcS;
|
|
1
|
+
{"version":3,"file":"time-slider-element.d.ts","names":[],"sources":["../../../../src/ui/time-slider/time-slider-element.ts"],"mappings":";;;;cA0Ba,0BAA0B;;kBACrB;SAEA;;MACL,MAAI;;;MACK,MAAI;MAAU;;;MACxB,MAAI;;;MACC,MAAI;MAAU;;;MACZ,MAAI;;;MACP,MAAI;;;MACE,MAAI;MAAU;;;MACjB,MAAI;MAAW;;;EAGhC,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EAcS;EA+CA;EAQA;YAmBU,WAAW,UAAU;YAerB,OAAO,UAAU"}
|
|
@@ -7,7 +7,7 @@ import { sliderContext } from "../slider/context.js";
|
|
|
7
7
|
import { applyElementProps, applyStateDataAttrs, createSlider, getTimeSliderCSSVars, logMissingFeature, selectBuffer, selectControls, selectPlayback, selectTime } from "@videojs/core/dom";
|
|
8
8
|
import { ContextProvider } from "@videojs/element/context";
|
|
9
9
|
import { translateText } from "@videojs/core/i18n";
|
|
10
|
-
import { applyStyles
|
|
10
|
+
import { applyStyles } from "@videojs/utils/dom";
|
|
11
11
|
import { TimeSliderCore, TimeSliderDataAttrs } from "@videojs/core";
|
|
12
12
|
import { formatTime } from "@videojs/utils/time";
|
|
13
13
|
//#region src/ui/time-slider/time-slider-element.ts
|
|
@@ -79,7 +79,6 @@ var TimeSliderElement = class extends MediaElement {
|
|
|
79
79
|
getElement: () => this,
|
|
80
80
|
getThumbElement: () => this.querySelector("media-slider-thumb"),
|
|
81
81
|
getOrientation: () => this.orientation,
|
|
82
|
-
isRTL: () => isRTL(this),
|
|
83
82
|
isDisabled: () => this.disabled || !this.#timeState.value,
|
|
84
83
|
getPercent: () => {
|
|
85
84
|
const media = this.#timeState.value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-slider-element.js","names":["#core","#controlsState","#provider","#timeState","#bufferState","#playbackState","#i18n","#disconnect","#slider","#releaseControlsLock","#releaseControlsVisibilityLock","#resumeIfDragPaused"],"sources":["../../../../src/ui/time-slider/time-slider-element.ts"],"sourcesContent":["import { TimeSliderCore, TimeSliderDataAttrs } from '@videojs/core';\nimport {\n applyElementProps,\n applyStateDataAttrs,\n createSlider,\n getTimeSliderCSSVars,\n logMissingFeature,\n type SliderApi,\n selectBuffer,\n selectControls,\n selectPlayback,\n selectTime,\n} from '@videojs/core/dom';\nimport { type Text, translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport { applyStyles, isRTL } from '@videojs/utils/dom';\nimport { formatTime } from '@videojs/utils/time';\n\nimport { i18nContext } from '../../i18n/context';\nimport { I18nController } from '../../i18n/controller';\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\nimport { sliderContext } from '../slider/context';\n\nexport class TimeSliderElement extends MediaElement {\n static readonly tagName = 'media-time-slider';\n\n static override properties = {\n label: { type: String },\n changeThrottle: { type: Number, attribute: 'change-throttle' },\n step: { type: Number },\n largeStep: { type: Number, attribute: 'large-step' },\n orientation: { type: String },\n disabled: { type: Boolean },\n thumbAlignment: { type: String, attribute: 'thumb-alignment' },\n pauseOnDrag: { type: Boolean, attribute: 'pause-on-drag' },\n } satisfies PropertyDeclarationMap<Exclude<keyof TimeSliderCore.Props, 'value' | 'min' | 'max'>>;\n\n label: Text | string = '';\n changeThrottle = TimeSliderCore.defaultProps.changeThrottle;\n step = TimeSliderCore.defaultProps.step;\n largeStep = TimeSliderCore.defaultProps.largeStep;\n orientation = TimeSliderCore.defaultProps.orientation;\n disabled = TimeSliderCore.defaultProps.disabled;\n thumbAlignment = TimeSliderCore.defaultProps.thumbAlignment;\n pauseOnDrag = TimeSliderCore.defaultProps.pauseOnDrag;\n\n readonly #core = new TimeSliderCore();\n readonly #controlsState = new PlayerController(this, playerContext, selectControls);\n readonly #provider = new ContextProvider(this, { context: sliderContext });\n readonly #timeState = new PlayerController(this, playerContext, selectTime);\n readonly #bufferState = new PlayerController(this, playerContext, selectBuffer);\n readonly #playbackState = new PlayerController(this, playerContext, selectPlayback);\n readonly #i18n = new I18nController(this, i18nContext);\n\n #slider: SliderApi | null = null;\n #disconnect: AbortController | null = null;\n #releaseControlsLock: (() => void) | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n this.#disconnect = new AbortController();\n const signal = this.#disconnect.signal;\n\n this.#slider = createSlider({\n getElement: () => this,\n getThumbElement: () => this.querySelector<HTMLElement>('media-slider-thumb'),\n getOrientation: () => this.orientation,\n isRTL: () => isRTL(this),\n isDisabled: () => this.disabled || !this.#timeState.value,\n getPercent: () => {\n const media = this.#timeState.value;\n if (!media) return 0;\n return this.#core.percentFromValue(media.currentTime);\n },\n getStepPercent: () => this.#core.getStepPercent(),\n getLargeStepPercent: () => this.#core.getLargeStepPercent(),\n onValueCommit: (percent) => {\n const media = this.#timeState.value;\n if (media) media.seek(this.#core.rawValueFromPercent(percent));\n },\n changeThrottle: this.changeThrottle,\n onDragStart: () => {\n this.#releaseControlsLock ??= this.#controlsState.value?.requestControlsLock() ?? null;\n this.#core.startDrag(this.#playbackState.value);\n this.dispatchEvent(new CustomEvent('drag-start', { bubbles: true }));\n },\n onDragEnd: () => {\n this.#releaseControlsVisibilityLock();\n this.#core.endDrag(this.#playbackState.value);\n this.dispatchEvent(new CustomEvent('drag-end', { bubbles: true }));\n },\n adjustPercent: (raw, thumbSize, trackSize) => this.#core.adjustPercentForAlignment(raw, thumbSize, trackSize),\n onResize: () => this.requestUpdate(),\n });\n\n applyElementProps(this, this.#slider.rootProps, { signal });\n applyStyles(this, this.#slider.rootStyle);\n this.#slider.input.subscribe(() => this.requestUpdate(), { signal });\n\n if (__DEV__ && !this.#timeState.value) {\n logMissingFeature(this.localName, this.#timeState.displayName!);\n }\n }\n\n override disconnectedCallback(): void {\n this.#releaseControlsVisibilityLock();\n this.#resumeIfDragPaused();\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n override destroyCallback(): void {\n this.#releaseControlsVisibilityLock();\n this.#resumeIfDragPaused();\n this.#slider?.destroy();\n super.destroyCallback();\n }\n\n // createSlider's destroy() does not fire onDragEnd, so a teardown mid-drag\n // would leave playback paused. Called from both disconnect and destroy paths\n // before super so the PlayerController is still attached.\n #resumeIfDragPaused(): void {\n this.#core.endDrag(this.#playbackState.value);\n }\n\n #releaseControlsVisibilityLock(): void {\n this.#releaseControlsLock?.();\n this.#releaseControlsLock = null;\n }\n\n protected override willUpdate(_changed: PropertyValues): void {\n super.willUpdate(_changed);\n this.#core.setProps({\n label: this.label,\n changeThrottle: this.changeThrottle,\n step: this.step,\n largeStep: this.largeStep,\n orientation: this.orientation,\n disabled: this.disabled,\n thumbAlignment: this.thumbAlignment,\n pauseOnDrag: this.pauseOnDrag,\n });\n this.#core.setFormatLocale(this.#i18n.locale);\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n if (!this.#slider) return;\n\n const time = this.#timeState.value;\n const buffer = this.#bufferState.value;\n if (!time) return;\n\n this.#core.setInput(this.#slider.input.current);\n const media = { ...time, ...(buffer ?? { buffered: [], seekable: [] }) };\n this.#core.setMedia(media);\n const state = this.#core.getState();\n\n const cssVars = getTimeSliderCSSVars(this.#slider.adjustForAlignment(state));\n const thumbAttrs = this.#core.getAttrs(state);\n\n applyStyles(this, cssVars);\n\n // Domain-specific data attributes on root (includes data-seeking).\n applyStateDataAttrs(this, state, TimeSliderDataAttrs);\n\n // Provide context to child elements with base slider data attrs.\n this.#provider.setValue({\n state,\n stateAttrMap: TimeSliderDataAttrs,\n pointerValue: this.#core.rawValueFromPercent(state.pointerPercent),\n thumbAttrs: {\n ...thumbAttrs,\n 'aria-label': translateText(thumbAttrs['aria-label'], this.#i18n.value),\n 'aria-valuetext': translateText(\n thumbAttrs['aria-valuetext'],\n this.#i18n.value,\n this.#core.getValueTextParams(state)\n ),\n },\n thumbProps: this.#slider.thumbProps,\n formatValue: (value) => formatTime(value, state.duration, { locale: this.#i18n.locale }),\n });\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"time-slider-element.js","names":["#core","#controlsState","#provider","#timeState","#bufferState","#playbackState","#i18n","#disconnect","#slider","#releaseControlsLock","#releaseControlsVisibilityLock","#resumeIfDragPaused"],"sources":["../../../../src/ui/time-slider/time-slider-element.ts"],"sourcesContent":["import { TimeSliderCore, TimeSliderDataAttrs } from '@videojs/core';\nimport {\n applyElementProps,\n applyStateDataAttrs,\n createSlider,\n getTimeSliderCSSVars,\n logMissingFeature,\n type SliderApi,\n selectBuffer,\n selectControls,\n selectPlayback,\n selectTime,\n} from '@videojs/core/dom';\nimport { type Text, translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport { applyStyles } from '@videojs/utils/dom';\nimport { formatTime } from '@videojs/utils/time';\n\nimport { i18nContext } from '../../i18n/context';\nimport { I18nController } from '../../i18n/controller';\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\nimport { sliderContext } from '../slider/context';\n\nexport class TimeSliderElement extends MediaElement {\n static readonly tagName = 'media-time-slider';\n\n static override properties = {\n label: { type: String },\n changeThrottle: { type: Number, attribute: 'change-throttle' },\n step: { type: Number },\n largeStep: { type: Number, attribute: 'large-step' },\n orientation: { type: String },\n disabled: { type: Boolean },\n thumbAlignment: { type: String, attribute: 'thumb-alignment' },\n pauseOnDrag: { type: Boolean, attribute: 'pause-on-drag' },\n } satisfies PropertyDeclarationMap<Exclude<keyof TimeSliderCore.Props, 'value' | 'min' | 'max'>>;\n\n label: Text | string = '';\n changeThrottle = TimeSliderCore.defaultProps.changeThrottle;\n step = TimeSliderCore.defaultProps.step;\n largeStep = TimeSliderCore.defaultProps.largeStep;\n orientation = TimeSliderCore.defaultProps.orientation;\n disabled = TimeSliderCore.defaultProps.disabled;\n thumbAlignment = TimeSliderCore.defaultProps.thumbAlignment;\n pauseOnDrag = TimeSliderCore.defaultProps.pauseOnDrag;\n\n readonly #core = new TimeSliderCore();\n readonly #controlsState = new PlayerController(this, playerContext, selectControls);\n readonly #provider = new ContextProvider(this, { context: sliderContext });\n readonly #timeState = new PlayerController(this, playerContext, selectTime);\n readonly #bufferState = new PlayerController(this, playerContext, selectBuffer);\n readonly #playbackState = new PlayerController(this, playerContext, selectPlayback);\n readonly #i18n = new I18nController(this, i18nContext);\n\n #slider: SliderApi | null = null;\n #disconnect: AbortController | null = null;\n #releaseControlsLock: (() => void) | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n this.#disconnect = new AbortController();\n const signal = this.#disconnect.signal;\n\n this.#slider = createSlider({\n getElement: () => this,\n getThumbElement: () => this.querySelector<HTMLElement>('media-slider-thumb'),\n getOrientation: () => this.orientation,\n isDisabled: () => this.disabled || !this.#timeState.value,\n getPercent: () => {\n const media = this.#timeState.value;\n if (!media) return 0;\n return this.#core.percentFromValue(media.currentTime);\n },\n getStepPercent: () => this.#core.getStepPercent(),\n getLargeStepPercent: () => this.#core.getLargeStepPercent(),\n onValueCommit: (percent) => {\n const media = this.#timeState.value;\n if (media) media.seek(this.#core.rawValueFromPercent(percent));\n },\n changeThrottle: this.changeThrottle,\n onDragStart: () => {\n this.#releaseControlsLock ??= this.#controlsState.value?.requestControlsLock() ?? null;\n this.#core.startDrag(this.#playbackState.value);\n this.dispatchEvent(new CustomEvent('drag-start', { bubbles: true }));\n },\n onDragEnd: () => {\n this.#releaseControlsVisibilityLock();\n this.#core.endDrag(this.#playbackState.value);\n this.dispatchEvent(new CustomEvent('drag-end', { bubbles: true }));\n },\n adjustPercent: (raw, thumbSize, trackSize) => this.#core.adjustPercentForAlignment(raw, thumbSize, trackSize),\n onResize: () => this.requestUpdate(),\n });\n\n applyElementProps(this, this.#slider.rootProps, { signal });\n applyStyles(this, this.#slider.rootStyle);\n this.#slider.input.subscribe(() => this.requestUpdate(), { signal });\n\n if (__DEV__ && !this.#timeState.value) {\n logMissingFeature(this.localName, this.#timeState.displayName!);\n }\n }\n\n override disconnectedCallback(): void {\n this.#releaseControlsVisibilityLock();\n this.#resumeIfDragPaused();\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n override destroyCallback(): void {\n this.#releaseControlsVisibilityLock();\n this.#resumeIfDragPaused();\n this.#slider?.destroy();\n super.destroyCallback();\n }\n\n // createSlider's destroy() does not fire onDragEnd, so a teardown mid-drag\n // would leave playback paused. Called from both disconnect and destroy paths\n // before super so the PlayerController is still attached.\n #resumeIfDragPaused(): void {\n this.#core.endDrag(this.#playbackState.value);\n }\n\n #releaseControlsVisibilityLock(): void {\n this.#releaseControlsLock?.();\n this.#releaseControlsLock = null;\n }\n\n protected override willUpdate(_changed: PropertyValues): void {\n super.willUpdate(_changed);\n this.#core.setProps({\n label: this.label,\n changeThrottle: this.changeThrottle,\n step: this.step,\n largeStep: this.largeStep,\n orientation: this.orientation,\n disabled: this.disabled,\n thumbAlignment: this.thumbAlignment,\n pauseOnDrag: this.pauseOnDrag,\n });\n this.#core.setFormatLocale(this.#i18n.locale);\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n if (!this.#slider) return;\n\n const time = this.#timeState.value;\n const buffer = this.#bufferState.value;\n if (!time) return;\n\n this.#core.setInput(this.#slider.input.current);\n const media = { ...time, ...(buffer ?? { buffered: [], seekable: [] }) };\n this.#core.setMedia(media);\n const state = this.#core.getState();\n\n const cssVars = getTimeSliderCSSVars(this.#slider.adjustForAlignment(state));\n const thumbAttrs = this.#core.getAttrs(state);\n\n applyStyles(this, cssVars);\n\n // Domain-specific data attributes on root (includes data-seeking).\n applyStateDataAttrs(this, state, TimeSliderDataAttrs);\n\n // Provide context to child elements with base slider data attrs.\n this.#provider.setValue({\n state,\n stateAttrMap: TimeSliderDataAttrs,\n pointerValue: this.#core.rawValueFromPercent(state.pointerPercent),\n thumbAttrs: {\n ...thumbAttrs,\n 'aria-label': translateText(thumbAttrs['aria-label'], this.#i18n.value),\n 'aria-valuetext': translateText(\n thumbAttrs['aria-valuetext'],\n this.#i18n.value,\n this.#core.getValueTextParams(state)\n ),\n },\n thumbProps: this.#slider.thumbProps,\n formatValue: (value) => formatTime(value, state.duration, { locale: this.#i18n.locale }),\n });\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"volume-slider-element.d.ts","names":[],"sources":["../../../../src/ui/volume-slider/volume-slider-element.ts"],"mappings":";;;;cAwBa,4BAA4B;;kBACvB;SAEA;;MACL,MAAI;;;MACL,MAAI;;;MACC,MAAI;MAAU;;;MACd,MAAI;MAAU;;;MACZ,MAAI;;;MACP,MAAI;;;MACE,MAAI;MAAU;;;EAGlC,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EAYS;
|
|
1
|
+
{"version":3,"file":"volume-slider-element.d.ts","names":[],"sources":["../../../../src/ui/volume-slider/volume-slider-element.ts"],"mappings":";;;;cAwBa,4BAA4B;;kBACvB;SAEA;;MACL,MAAI;;;MACL,MAAI;;;MACC,MAAI;MAAU;;;MACd,MAAI;MAAU;;;MACZ,MAAI;;;MACP,MAAI;;;MACE,MAAI;MAAU;;;EAGlC,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EAYS;EAsDA;EAOA;YAWU,WAAW,UAAU;YAMrB,OAAO,UAAU"}
|
|
@@ -7,7 +7,7 @@ import { sliderContext } from "../slider/context.js";
|
|
|
7
7
|
import { applyElementProps, applyStateDataAttrs, createSlider, createWheelStep, getSliderCSSVars, logMissingFeature, selectControls, selectVolume } from "@videojs/core/dom";
|
|
8
8
|
import { ContextProvider } from "@videojs/element/context";
|
|
9
9
|
import { translateText } from "@videojs/core/i18n";
|
|
10
|
-
import { applyStyles
|
|
10
|
+
import { applyStyles } from "@videojs/utils/dom";
|
|
11
11
|
import { VolumeSliderCore, VolumeSliderDataAttrs } from "@videojs/core";
|
|
12
12
|
//#region src/ui/volume-slider/volume-slider-element.ts
|
|
13
13
|
var VolumeSliderElement = class extends MediaElement {
|
|
@@ -76,7 +76,6 @@ var VolumeSliderElement = class extends MediaElement {
|
|
|
76
76
|
getElement: () => this,
|
|
77
77
|
getThumbElement: () => this.querySelector("media-slider-thumb"),
|
|
78
78
|
getOrientation: () => this.orientation,
|
|
79
|
-
isRTL: () => isRTL(this),
|
|
80
79
|
isDisabled,
|
|
81
80
|
getPercent,
|
|
82
81
|
getStepPercent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"volume-slider-element.js","names":["#core","#controlsState","#provider","#volumeState","#i18n","#disconnect","#setVolume","#slider","#releaseControlsLock","#releaseControlsVisibilityLock"],"sources":["../../../../src/ui/volume-slider/volume-slider-element.ts"],"sourcesContent":["import { VolumeSliderCore, VolumeSliderDataAttrs } from '@videojs/core';\nimport {\n applyElementProps,\n applyStateDataAttrs,\n createSlider,\n createWheelStep,\n getSliderCSSVars,\n logMissingFeature,\n type SliderApi,\n selectControls,\n selectVolume,\n} from '@videojs/core/dom';\nimport { type Text, translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport { applyStyles
|
|
1
|
+
{"version":3,"file":"volume-slider-element.js","names":["#core","#controlsState","#provider","#volumeState","#i18n","#disconnect","#setVolume","#slider","#releaseControlsLock","#releaseControlsVisibilityLock"],"sources":["../../../../src/ui/volume-slider/volume-slider-element.ts"],"sourcesContent":["import { VolumeSliderCore, VolumeSliderDataAttrs } from '@videojs/core';\nimport {\n applyElementProps,\n applyStateDataAttrs,\n createSlider,\n createWheelStep,\n getSliderCSSVars,\n logMissingFeature,\n type SliderApi,\n selectControls,\n selectVolume,\n} from '@videojs/core/dom';\nimport { type Text, translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport { applyStyles } from '@videojs/utils/dom';\n\nimport { i18nContext } from '../../i18n/context';\nimport { I18nController } from '../../i18n/controller';\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\nimport { sliderContext } from '../slider/context';\n\nexport class VolumeSliderElement extends MediaElement {\n static readonly tagName = 'media-volume-slider';\n\n static override properties = {\n label: { type: String },\n step: { type: Number },\n largeStep: { type: Number, attribute: 'large-step' },\n wheelStep: { type: Number, attribute: 'wheel-step' },\n orientation: { type: String },\n disabled: { type: Boolean },\n thumbAlignment: { type: String, attribute: 'thumb-alignment' },\n } satisfies PropertyDeclarationMap<Exclude<keyof VolumeSliderCore.Props, 'value' | 'min' | 'max'>>;\n\n label: Text | string = '';\n step = VolumeSliderCore.defaultProps.step;\n largeStep = VolumeSliderCore.defaultProps.largeStep;\n wheelStep = VolumeSliderCore.defaultProps.wheelStep;\n orientation = VolumeSliderCore.defaultProps.orientation;\n disabled = VolumeSliderCore.defaultProps.disabled;\n thumbAlignment = VolumeSliderCore.defaultProps.thumbAlignment;\n\n readonly #core = new VolumeSliderCore();\n readonly #controlsState = new PlayerController(this, playerContext, selectControls);\n readonly #provider = new ContextProvider(this, { context: sliderContext });\n readonly #volumeState = new PlayerController(this, playerContext, selectVolume);\n readonly #i18n = new I18nController(this, i18nContext);\n\n #slider: SliderApi | null = null;\n #disconnect: AbortController | null = null;\n #releaseControlsLock: (() => void) | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n this.#disconnect = new AbortController();\n const signal = this.#disconnect.signal;\n\n const isDisabled = () => {\n const volume = this.#volumeState.value;\n return this.disabled || !volume || volume.volumeAvailability !== 'available';\n };\n const getPercent = () => (this.#volumeState.value?.volume ?? 0) * 100;\n const getStepPercent = () => this.#core.getStepPercent();\n const setVolume = (percent: number) => this.#setVolume(percent);\n\n this.#slider = createSlider({\n getElement: () => this,\n getThumbElement: () => this.querySelector<HTMLElement>('media-slider-thumb'),\n getOrientation: () => this.orientation,\n isDisabled,\n getPercent,\n getStepPercent,\n getLargeStepPercent: () => this.#core.getLargeStepPercent(),\n onValueChange: setVolume,\n onValueCommit: setVolume,\n onDragStart: () => {\n this.#releaseControlsLock ??= this.#controlsState.value?.requestControlsLock() ?? null;\n this.dispatchEvent(new CustomEvent('drag-start', { bubbles: true }));\n },\n onDragEnd: () => {\n this.#releaseControlsVisibilityLock();\n this.dispatchEvent(new CustomEvent('drag-end', { bubbles: true }));\n },\n adjustPercent: (raw, thumbSize, trackSize) => this.#core.adjustPercentForAlignment(raw, thumbSize, trackSize),\n onResize: () => this.requestUpdate(),\n });\n\n const wheelProps = createWheelStep({\n isDisabled,\n getPercent,\n getStepPercent: () => this.#core.getWheelStepPercent(),\n onValueChange: setVolume,\n });\n\n applyElementProps(this, this.#slider.rootProps, { signal });\n applyElementProps(this, wheelProps, { signal });\n applyStyles(this, this.#slider.rootStyle);\n this.#slider.input.subscribe(() => this.requestUpdate(), { signal });\n\n if (__DEV__ && !this.#volumeState.value) {\n logMissingFeature(this.localName, this.#volumeState.displayName!);\n }\n }\n\n override disconnectedCallback(): void {\n this.#releaseControlsVisibilityLock();\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n override destroyCallback(): void {\n this.#releaseControlsVisibilityLock();\n this.#slider?.destroy();\n super.destroyCallback();\n }\n\n #releaseControlsVisibilityLock(): void {\n this.#releaseControlsLock?.();\n this.#releaseControlsLock = null;\n }\n\n protected override willUpdate(_changed: PropertyValues): void {\n super.willUpdate(_changed);\n this.#core.setProps(this);\n this.#core.setFormatLocale(this.#i18n.locale);\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n if (!this.#slider) return;\n\n const media = this.#volumeState.value;\n if (!media) return;\n\n this.#core.setInput(this.#slider.input.current);\n this.#core.setMedia(media);\n const state = this.#core.getState();\n\n const cssVars = getSliderCSSVars(this.#slider.adjustForAlignment(state));\n const thumbAttrs = this.#core.getAttrs(state);\n\n applyStyles(this, cssVars);\n\n // Apply data attributes to root.\n applyStateDataAttrs(this, state, VolumeSliderDataAttrs);\n applyElementProps(this, { hidden: state.hidden ? '' : undefined });\n\n // Provide context to child elements.\n this.#provider.setValue({\n state,\n stateAttrMap: VolumeSliderDataAttrs,\n pointerValue: this.#core.valueFromPercent(state.pointerPercent),\n thumbAttrs: {\n ...thumbAttrs,\n 'aria-label': translateText(thumbAttrs['aria-label'], this.#i18n.value),\n 'aria-valuetext': translateText(\n thumbAttrs['aria-valuetext'],\n this.#i18n.value,\n this.#core.getValueTextParams(state)\n ),\n },\n thumbProps: this.#slider.thumbProps,\n formatValue: (value) => `${Math.round(value)}%`,\n });\n }\n\n #setVolume(percent: number): void {\n const media = this.#volumeState.value;\n media?.setVolume(this.#core.valueFromPercent(percent) / 100);\n }\n}\n"],"mappings":"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"}
|
package/docs/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @videojs/html documentation
|
|
2
2
|
|
|
3
|
-
Bundled markdown documentation for `@videojs/html` v10.0.0-beta.
|
|
3
|
+
Bundled markdown documentation for `@videojs/html` v10.0.0-beta.31.
|
|
4
4
|
|
|
5
5
|
Start at [`./llms.txt`](./llms.txt) — it's the structured index of every page in this directory.
|
|
6
6
|
|
|
@@ -141,16 +141,40 @@ options for the browser’s own HLS support (today, [DRM](#licensing-one-engine-
|
|
|
141
141
|
|
|
142
142
|
`engine.vimeo`
|
|
143
143
|
|
|
144
|
-
|
|
144
|
+
[VimeoVideo](../reference/vimeo-video.md)
|
|
145
145
|
|
|
146
146
|
[Vimeo embed parameters](https://developer.vimeo.com/player/sdk/embed)
|
|
147
147
|
|
|
148
148
|
`engine.youtube`
|
|
149
149
|
|
|
150
|
-
|
|
150
|
+
[YouTubeVideo](../reference/youtube-video.md)
|
|
151
151
|
|
|
152
152
|
[YouTube player parameters](https://developer.chrome.com/docs/youtube/iframe_api_reference#Parameters)
|
|
153
153
|
|
|
154
|
+
`engine.cloudflare`
|
|
155
|
+
|
|
156
|
+
[CloudflareVideo](../reference/cloudflare-video.md)
|
|
157
|
+
|
|
158
|
+
[Stream player parameters](https://developers.cloudflare.com/stream/viewing-videos/using-the-stream-player/)
|
|
159
|
+
|
|
160
|
+
`engine.spotify`
|
|
161
|
+
|
|
162
|
+
[SpotifyAudio](../reference/spotify-audio.md)
|
|
163
|
+
|
|
164
|
+
[Spotify embed options](https://developer.spotify.com/documentation/embeds)
|
|
165
|
+
|
|
166
|
+
`engine.tiktok`
|
|
167
|
+
|
|
168
|
+
[TikTokVideo](../reference/tiktok-video.md)
|
|
169
|
+
|
|
170
|
+
[TikTok player parameters](https://developers.tiktok.com/doc/embed-player)
|
|
171
|
+
|
|
172
|
+
`engine.twitch`
|
|
173
|
+
|
|
174
|
+
[TwitchVideo](../reference/twitch-video.md)
|
|
175
|
+
|
|
176
|
+
[Twitch embed parameters](https://dev.twitch.tv/docs/embed/video-and-clips/)
|
|
177
|
+
|
|
154
178
|
Naming the engine rather than using one generic key matters where an element has more than one to choose from. `HlsJsVideo` plays through hls.js or through the browser depending on the platform and `preferPlayback`, and only one of them runs — so a single source can describe both paths without either engine reading the other’s options.
|
|
155
179
|
|
|
156
180
|
hls.js reads its options when the engine is constructed, so changing them tears down the engine and builds a new one:
|