@videojs/html 0.1.0-preview.9 → 10.0.0-alpha.3
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/README.md +4 -2
- package/dist/default/define/audio/player.js +15 -0
- package/dist/default/define/audio/player.js.map +1 -0
- package/dist/default/define/background/player.js +15 -0
- package/dist/default/define/background/player.js.map +1 -0
- package/dist/default/define/background/skin.js +0 -0
- package/dist/default/define/feature/video.js +0 -0
- package/dist/default/define/media/background-video.js +13 -0
- package/dist/default/define/media/background-video.js.map +1 -0
- package/dist/default/define/media/hls-video.js +13 -0
- package/dist/default/define/media/hls-video.js.map +1 -0
- package/dist/default/define/ui/buffering-indicator.js +7 -0
- package/dist/default/define/ui/buffering-indicator.js.map +1 -0
- package/dist/default/define/ui/controls.js +9 -0
- package/dist/default/define/ui/controls.js.map +1 -0
- package/dist/default/define/ui/fullscreen-button.js +7 -0
- package/dist/default/define/ui/fullscreen-button.js.map +1 -0
- package/dist/default/define/ui/mute-button.js +7 -0
- package/dist/default/define/ui/mute-button.js.map +1 -0
- package/dist/default/define/ui/pip-button.js +7 -0
- package/dist/default/define/ui/pip-button.js.map +1 -0
- package/dist/default/define/ui/play-button.js +7 -0
- package/dist/default/define/ui/play-button.js.map +1 -0
- package/dist/default/define/ui/poster.js +7 -0
- package/dist/default/define/ui/poster.js.map +1 -0
- package/dist/default/define/ui/seek-button.js +7 -0
- package/dist/default/define/ui/seek-button.js.map +1 -0
- package/dist/default/define/ui/time.js +11 -0
- package/dist/default/define/ui/time.js.map +1 -0
- package/dist/default/define/video/player.js +15 -0
- package/dist/default/define/video/player.js.map +1 -0
- package/dist/default/define/video/skin.js +0 -0
- package/dist/default/index.js +24 -0
- package/dist/default/media/background-video/index.js +77 -0
- package/dist/default/media/background-video/index.js.map +1 -0
- package/dist/default/media/hls-video/index.js +21 -0
- package/dist/default/media/hls-video/index.js.map +1 -0
- package/dist/default/player/context.js +14 -0
- package/dist/default/player/context.js.map +1 -0
- package/dist/default/player/create-player.js +29 -0
- package/dist/default/player/create-player.js.map +1 -0
- package/dist/default/player/player-controller.js +63 -0
- package/dist/default/player/player-controller.js.map +1 -0
- package/dist/default/player/player-mixin.js +23 -0
- package/dist/default/player/player-mixin.js.map +1 -0
- package/dist/default/store/container-mixin.js +74 -0
- package/dist/default/store/container-mixin.js.map +1 -0
- package/dist/default/store/provider-mixin.js +39 -0
- package/dist/default/store/provider-mixin.js.map +1 -0
- package/dist/default/ui/buffering-indicator/buffering-indicator-element.js +47 -0
- package/dist/default/ui/buffering-indicator/buffering-indicator-element.js.map +1 -0
- package/dist/default/ui/controls/controls-element.js +27 -0
- package/dist/default/ui/controls/controls-element.js.map +1 -0
- package/dist/default/ui/controls/controls-group-element.js +16 -0
- package/dist/default/ui/controls/controls-group-element.js.map +1 -0
- package/dist/default/ui/fullscreen-button/fullscreen-button-element.js +56 -0
- package/dist/default/ui/fullscreen-button/fullscreen-button-element.js.map +1 -0
- package/dist/default/ui/media-element.js +8 -0
- package/dist/default/ui/media-element.js.map +1 -0
- package/dist/default/ui/mute-button/mute-button-element.js +56 -0
- package/dist/default/ui/mute-button/mute-button-element.js.map +1 -0
- package/dist/default/ui/pip-button/pip-button-element.js +56 -0
- package/dist/default/ui/pip-button/pip-button-element.js.map +1 -0
- package/dist/default/ui/play-button/play-button-element.js +56 -0
- package/dist/default/ui/play-button/play-button-element.js.map +1 -0
- package/dist/default/ui/poster/poster-element.js +27 -0
- package/dist/default/ui/poster/poster-element.js.map +1 -0
- package/dist/default/ui/seek-button/seek-button-element.js +58 -0
- package/dist/default/ui/seek-button/seek-button-element.js.map +1 -0
- package/dist/default/ui/time/time-element.js +67 -0
- package/dist/default/ui/time/time-element.js.map +1 -0
- package/dist/default/ui/time/time-group-element.js +12 -0
- package/dist/default/ui/time/time-group-element.js.map +1 -0
- package/dist/default/ui/time/time-separator-element.js +17 -0
- package/dist/default/ui/time/time-separator-element.js.map +1 -0
- package/dist/dev/define/audio/player.d.ts +17 -0
- package/dist/dev/define/audio/player.d.ts.map +1 -0
- package/dist/dev/define/audio/player.js +15 -0
- package/dist/dev/define/audio/player.js.map +1 -0
- package/dist/dev/define/audio/skin.js +0 -0
- package/dist/dev/define/background/player.d.ts +17 -0
- package/dist/dev/define/background/player.d.ts.map +1 -0
- package/dist/dev/define/background/player.js +15 -0
- package/dist/dev/define/background/player.js.map +1 -0
- package/dist/dev/define/background/skin.js +0 -0
- package/dist/dev/define/feature/video.js +0 -0
- package/dist/dev/define/media/background-video.d.ts +14 -0
- package/dist/dev/define/media/background-video.d.ts.map +1 -0
- package/dist/dev/define/media/background-video.js +13 -0
- package/dist/dev/define/media/background-video.js.map +1 -0
- package/dist/dev/define/media/hls-video.d.ts +14 -0
- package/dist/dev/define/media/hls-video.d.ts.map +1 -0
- package/dist/dev/define/media/hls-video.js +13 -0
- package/dist/dev/define/media/hls-video.js.map +1 -0
- package/dist/dev/define/ui/buffering-indicator.d.ts +9 -0
- package/dist/dev/define/ui/buffering-indicator.d.ts.map +1 -0
- package/dist/dev/define/ui/buffering-indicator.js +7 -0
- package/dist/dev/define/ui/buffering-indicator.js.map +1 -0
- package/dist/dev/define/ui/controls.d.ts +11 -0
- package/dist/dev/define/ui/controls.d.ts.map +1 -0
- package/dist/dev/define/ui/controls.js +9 -0
- package/dist/dev/define/ui/controls.js.map +1 -0
- package/dist/dev/define/ui/fullscreen-button.d.ts +9 -0
- package/dist/dev/define/ui/fullscreen-button.d.ts.map +1 -0
- package/dist/dev/define/ui/fullscreen-button.js +7 -0
- package/dist/dev/define/ui/fullscreen-button.js.map +1 -0
- package/dist/dev/define/ui/mute-button.d.ts +9 -0
- package/dist/dev/define/ui/mute-button.d.ts.map +1 -0
- package/dist/dev/define/ui/mute-button.js +7 -0
- package/dist/dev/define/ui/mute-button.js.map +1 -0
- package/dist/dev/define/ui/pip-button.d.ts +9 -0
- package/dist/dev/define/ui/pip-button.d.ts.map +1 -0
- package/dist/dev/define/ui/pip-button.js +7 -0
- package/dist/dev/define/ui/pip-button.js.map +1 -0
- package/dist/dev/define/ui/play-button.d.ts +9 -0
- package/dist/dev/define/ui/play-button.d.ts.map +1 -0
- package/dist/dev/define/ui/play-button.js +7 -0
- package/dist/dev/define/ui/play-button.js.map +1 -0
- package/dist/dev/define/ui/poster.d.ts +9 -0
- package/dist/dev/define/ui/poster.d.ts.map +1 -0
- package/dist/dev/define/ui/poster.js +7 -0
- package/dist/dev/define/ui/poster.js.map +1 -0
- package/dist/dev/define/ui/seek-button.d.ts +9 -0
- package/dist/dev/define/ui/seek-button.d.ts.map +1 -0
- package/dist/dev/define/ui/seek-button.js +7 -0
- package/dist/dev/define/ui/seek-button.js.map +1 -0
- package/dist/dev/define/ui/time.d.ts +13 -0
- package/dist/dev/define/ui/time.d.ts.map +1 -0
- package/dist/dev/define/ui/time.js +11 -0
- package/dist/dev/define/ui/time.js.map +1 -0
- package/dist/dev/define/video/player.d.ts +17 -0
- package/dist/dev/define/video/player.d.ts.map +1 -0
- package/dist/dev/define/video/player.js +15 -0
- package/dist/dev/define/video/player.js.map +1 -0
- package/dist/dev/define/video/skin.js +0 -0
- package/dist/dev/index.d.ts +23 -0
- package/dist/dev/index.js +24 -0
- package/dist/dev/media/background-video/index.d.ts +15 -0
- package/dist/dev/media/background-video/index.d.ts.map +1 -0
- package/dist/dev/media/background-video/index.js +77 -0
- package/dist/dev/media/background-video/index.js.map +1 -0
- package/dist/dev/media/hls-video/index.d.ts +11 -0
- package/dist/dev/media/hls-video/index.d.ts.map +1 -0
- package/dist/dev/media/hls-video/index.js +21 -0
- package/dist/dev/media/hls-video/index.js.map +1 -0
- package/dist/dev/player/context.d.ts +16 -0
- package/dist/dev/player/context.d.ts.map +1 -0
- package/dist/dev/player/context.js +14 -0
- package/dist/dev/player/context.js.map +1 -0
- package/dist/dev/player/create-player.d.ts +73 -0
- package/dist/dev/player/create-player.d.ts.map +1 -0
- package/dist/dev/player/create-player.js +29 -0
- package/dist/dev/player/create-player.js.map +1 -0
- package/dist/dev/player/player-controller.d.ts +56 -0
- package/dist/dev/player/player-controller.d.ts.map +1 -0
- package/dist/dev/player/player-controller.js +63 -0
- package/dist/dev/player/player-controller.js.map +1 -0
- package/dist/dev/player/player-mixin.d.ts +20 -0
- package/dist/dev/player/player-mixin.d.ts.map +1 -0
- package/dist/dev/player/player-mixin.js +23 -0
- package/dist/dev/player/player-mixin.js.map +1 -0
- package/dist/dev/store/container-mixin.d.ts +16 -0
- package/dist/dev/store/container-mixin.d.ts.map +1 -0
- package/dist/dev/store/container-mixin.js +74 -0
- package/dist/dev/store/container-mixin.js.map +1 -0
- package/dist/dev/store/provider-mixin.d.ts +17 -0
- package/dist/dev/store/provider-mixin.d.ts.map +1 -0
- package/dist/dev/store/provider-mixin.js +39 -0
- package/dist/dev/store/provider-mixin.js.map +1 -0
- package/dist/dev/store/types.d.ts +18 -0
- package/dist/dev/store/types.d.ts.map +1 -0
- package/dist/dev/ui/buffering-indicator/buffering-indicator-element.d.ts +21 -0
- package/dist/dev/ui/buffering-indicator/buffering-indicator-element.d.ts.map +1 -0
- package/dist/dev/ui/buffering-indicator/buffering-indicator-element.js +48 -0
- package/dist/dev/ui/buffering-indicator/buffering-indicator-element.js.map +1 -0
- package/dist/dev/ui/controls/controls-element.d.ts +13 -0
- package/dist/dev/ui/controls/controls-element.d.ts.map +1 -0
- package/dist/dev/ui/controls/controls-element.js +28 -0
- package/dist/dev/ui/controls/controls-element.js.map +1 -0
- package/dist/dev/ui/controls/controls-group-element.d.ts +10 -0
- package/dist/dev/ui/controls/controls-group-element.d.ts.map +1 -0
- package/dist/dev/ui/controls/controls-group-element.js +16 -0
- package/dist/dev/ui/controls/controls-group-element.js.map +1 -0
- package/dist/dev/ui/fullscreen-button/fullscreen-button-element.d.ts +26 -0
- package/dist/dev/ui/fullscreen-button/fullscreen-button-element.d.ts.map +1 -0
- package/dist/dev/ui/fullscreen-button/fullscreen-button-element.js +57 -0
- package/dist/dev/ui/fullscreen-button/fullscreen-button-element.js.map +1 -0
- package/dist/dev/ui/media-element.d.ts +9 -0
- package/dist/dev/ui/media-element.d.ts.map +1 -0
- package/dist/dev/ui/media-element.js +8 -0
- package/dist/dev/ui/media-element.js.map +1 -0
- package/dist/dev/ui/mute-button/mute-button-element.d.ts +26 -0
- package/dist/dev/ui/mute-button/mute-button-element.d.ts.map +1 -0
- package/dist/dev/ui/mute-button/mute-button-element.js +57 -0
- package/dist/dev/ui/mute-button/mute-button-element.js.map +1 -0
- package/dist/dev/ui/pip-button/pip-button-element.d.ts +26 -0
- package/dist/dev/ui/pip-button/pip-button-element.d.ts.map +1 -0
- package/dist/dev/ui/pip-button/pip-button-element.js +57 -0
- package/dist/dev/ui/pip-button/pip-button-element.js.map +1 -0
- package/dist/dev/ui/play-button/play-button-element.d.ts +26 -0
- package/dist/dev/ui/play-button/play-button-element.d.ts.map +1 -0
- package/dist/dev/ui/play-button/play-button-element.js +57 -0
- package/dist/dev/ui/play-button/play-button-element.js.map +1 -0
- package/dist/dev/ui/poster/poster-element.d.ts +13 -0
- package/dist/dev/ui/poster/poster-element.d.ts.map +1 -0
- package/dist/dev/ui/poster/poster-element.js +28 -0
- package/dist/dev/ui/poster/poster-element.js.map +1 -0
- package/dist/dev/ui/seek-button/seek-button-element.d.ts +30 -0
- package/dist/dev/ui/seek-button/seek-button-element.d.ts.map +1 -0
- package/dist/dev/ui/seek-button/seek-button-element.js +59 -0
- package/dist/dev/ui/seek-button/seek-button-element.js.map +1 -0
- package/dist/dev/ui/time/time-element.d.ts +32 -0
- package/dist/dev/ui/time/time-element.d.ts.map +1 -0
- package/dist/dev/ui/time/time-element.js +68 -0
- package/dist/dev/ui/time/time-element.js.map +1 -0
- package/dist/dev/ui/time/time-group-element.d.ts +9 -0
- package/dist/dev/ui/time/time-group-element.d.ts.map +1 -0
- package/dist/dev/ui/time/time-group-element.js +12 -0
- package/dist/dev/ui/time/time-group-element.js.map +1 -0
- package/dist/dev/ui/time/time-separator-element.d.ts +10 -0
- package/dist/dev/ui/time/time-separator-element.d.ts.map +1 -0
- package/dist/dev/ui/time/time-separator-element.js +17 -0
- package/dist/dev/ui/time/time-separator-element.js.map +1 -0
- package/package.json +62 -40
- package/dist/button-Bu1mGG-F.js +0 -63
- package/dist/button-Bu1mGG-F.js.map +0 -1
- package/dist/component-factory-C0cl1nrL.js +0 -73
- package/dist/component-factory-C0cl1nrL.js.map +0 -1
- package/dist/current-time-display-DpoDrQu9.js +0 -46
- package/dist/current-time-display-DpoDrQu9.js.map +0 -1
- package/dist/custom-element-3bDlB2XO.js +0 -10
- package/dist/custom-element-3bDlB2XO.js.map +0 -1
- package/dist/define/index.d.ts +0 -12
- package/dist/define/index.js +0 -27
- package/dist/define/media-container.d.ts +0 -1
- package/dist/define/media-container.js +0 -3
- package/dist/define/media-current-time-display.d.ts +0 -1
- package/dist/define/media-current-time-display.js +0 -4
- package/dist/define/media-duration-display.d.ts +0 -1
- package/dist/define/media-duration-display.js +0 -4
- package/dist/define/media-fullscreen-button.d.ts +0 -1
- package/dist/define/media-fullscreen-button.js +0 -5
- package/dist/define/media-mute-button.d.ts +0 -1
- package/dist/define/media-mute-button.js +0 -5
- package/dist/define/media-play-button.d.ts +0 -1
- package/dist/define/media-play-button.js +0 -5
- package/dist/define/media-popover.d.ts +0 -1
- package/dist/define/media-popover.js +0 -3
- package/dist/define/media-preview-time-display.d.ts +0 -1
- package/dist/define/media-preview-time-display.js +0 -4
- package/dist/define/media-time-slider.d.ts +0 -1
- package/dist/define/media-time-slider.js +0 -4
- package/dist/define/media-tooltip.d.ts +0 -1
- package/dist/define/media-tooltip.js +0 -3
- package/dist/define/media-volume-slider.d.ts +0 -1
- package/dist/define/media-volume-slider.js +0 -4
- package/dist/define/video-provider.d.ts +0 -1
- package/dist/define/video-provider.js +0 -3
- package/dist/duration-display-BFRQmaOz.js +0 -48
- package/dist/duration-display-BFRQmaOz.js.map +0 -1
- package/dist/fullscreen-button-B0R9K3GV.js +0 -47
- package/dist/fullscreen-button-B0R9K3GV.js.map +0 -1
- package/dist/icons-CuxuONCk.js +0 -209
- package/dist/icons-CuxuONCk.js.map +0 -1
- package/dist/icons.d.ts +0 -1
- package/dist/icons.js +0 -2
- package/dist/index.d.ts +0 -146
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -17
- package/dist/media-container-BOL0PKuG.js +0 -80
- package/dist/media-container-BOL0PKuG.js.map +0 -1
- package/dist/media-container-DwKSOa1h.js +0 -8
- package/dist/media-container-DwKSOa1h.js.map +0 -1
- package/dist/media-current-time-display-DVCqNt7c.js +0 -8
- package/dist/media-current-time-display-DVCqNt7c.js.map +0 -1
- package/dist/media-duration-display-tzVLafRm.js +0 -8
- package/dist/media-duration-display-tzVLafRm.js.map +0 -1
- package/dist/media-fullscreen-button-BgUK3lgu.d.ts +0 -1
- package/dist/media-fullscreen-button-DDQ6EdLz.js +0 -8
- package/dist/media-fullscreen-button-DDQ6EdLz.js.map +0 -1
- package/dist/media-mute-button-NVJF2EEW.d.ts +0 -1
- package/dist/media-mute-button-Uy18NpPx.js +0 -8
- package/dist/media-mute-button-Uy18NpPx.js.map +0 -1
- package/dist/media-play-button-CDBZrhmx.js +0 -8
- package/dist/media-play-button-CDBZrhmx.js.map +0 -1
- package/dist/media-play-button-oq8yDlxe.d.ts +0 -1
- package/dist/media-popover-BtJmPv0E.d.ts +0 -1
- package/dist/media-popover-Cw9d_Bh3.js +0 -8
- package/dist/media-popover-Cw9d_Bh3.js.map +0 -1
- package/dist/media-preview-time-display-4YX5Rics.d.ts +0 -1
- package/dist/media-preview-time-display-ufqXiNXg.js +0 -8
- package/dist/media-preview-time-display-ufqXiNXg.js.map +0 -1
- package/dist/media-skin-CxnuHwhu.js +0 -36
- package/dist/media-skin-CxnuHwhu.js.map +0 -1
- package/dist/media-skin-Di3vSHvS.d.ts +0 -11
- package/dist/media-skin-Di3vSHvS.d.ts.map +0 -1
- package/dist/media-time-slider-BOdJr4QE.js +0 -12
- package/dist/media-time-slider-BOdJr4QE.js.map +0 -1
- package/dist/media-time-slider-DvMnfYXZ.d.ts +0 -1
- package/dist/media-tooltip-BqV17mdM.d.ts +0 -1
- package/dist/media-tooltip-CMRN_X4D.js +0 -8
- package/dist/media-tooltip-CMRN_X4D.js.map +0 -1
- package/dist/media-volume-slider-BB6GhrzS.js +0 -11
- package/dist/media-volume-slider-BB6GhrzS.js.map +0 -1
- package/dist/media-volume-slider-DP47VLVi.d.ts +0 -1
- package/dist/mute-button-C7XQB6iK.js +0 -49
- package/dist/mute-button-C7XQB6iK.js.map +0 -1
- package/dist/play-button-DFbxwrrq.js +0 -47
- package/dist/play-button-DFbxwrrq.js.map +0 -1
- package/dist/popover-BUCVOjnO.js +0 -167
- package/dist/popover-BUCVOjnO.js.map +0 -1
- package/dist/preview-time-display-CtA58pCS.js +0 -43
- package/dist/preview-time-display-CtA58pCS.js.map +0 -1
- package/dist/skins/frosted.d.ts +0 -23
- package/dist/skins/frosted.d.ts.map +0 -1
- package/dist/skins/frosted.js +0 -145
- package/dist/skins/frosted.js.map +0 -1
- package/dist/skins/minimal.d.ts +0 -23
- package/dist/skins/minimal.d.ts.map +0 -1
- package/dist/skins/minimal.js +0 -150
- package/dist/skins/minimal.js.map +0 -1
- package/dist/store.d.ts +0 -1
- package/dist/time-slider-DHpKPCI1.js +0 -165
- package/dist/time-slider-DHpKPCI1.js.map +0 -1
- package/dist/tooltip-B-glki2f.js +0 -171
- package/dist/tooltip-B-glki2f.js.map +0 -1
- package/dist/video-provider-BKDqoKFf.js +0 -17
- package/dist/video-provider-BKDqoKFf.js.map +0 -1
- package/dist/video-provider-BPPI5e47.js +0 -8
- package/dist/video-provider-BPPI5e47.js.map +0 -1
- package/dist/video-provider-nSCfwA7l.d.ts +0 -1
- package/dist/volume-slider-CUyfwehe.js +0 -140
- package/dist/volume-slider-CUyfwehe.js.map +0 -1
- /package/dist/{store.js → default/define/audio/skin.js} +0 -0
- /package/dist/{index-LKrIp3Oo.d.ts → dev/define/audio/skin.d.ts} +0 -0
- /package/dist/{media-container-ChS9lZvf.d.ts → dev/define/background/skin.d.ts} +0 -0
- /package/dist/{media-current-time-display-Cd0rPAuj.d.ts → dev/define/feature/video.d.ts} +0 -0
- /package/dist/{media-duration-display-qvm6YX-q.d.ts → dev/define/video/skin.d.ts} +0 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { playerContext } from "../../player/context.js";
|
|
2
|
+
import { MediaElement } from "../media-element.js";
|
|
3
|
+
import { PlayerController } from "../../player/player-controller.js";
|
|
4
|
+
import { applyElementProps, applyStateDataAttrs, createButton, logMissingFeature, selectPiP } from "@videojs/core/dom";
|
|
5
|
+
import { PiPButtonCore, PiPButtonDataAttrs } from "@videojs/core";
|
|
6
|
+
|
|
7
|
+
//#region src/ui/pip-button/pip-button-element.ts
|
|
8
|
+
var PiPButtonElement = class PiPButtonElement extends MediaElement {
|
|
9
|
+
constructor(..._args) {
|
|
10
|
+
super(..._args);
|
|
11
|
+
this.label = PiPButtonCore.defaultProps.label;
|
|
12
|
+
this.disabled = PiPButtonCore.defaultProps.disabled;
|
|
13
|
+
}
|
|
14
|
+
static {
|
|
15
|
+
this.tagName = "media-pip-button";
|
|
16
|
+
}
|
|
17
|
+
static {
|
|
18
|
+
this.properties = {
|
|
19
|
+
label: { type: String },
|
|
20
|
+
disabled: { type: Boolean }
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
#core = new PiPButtonCore();
|
|
24
|
+
#state = new PlayerController(this, playerContext, selectPiP);
|
|
25
|
+
#disconnect = null;
|
|
26
|
+
connectedCallback() {
|
|
27
|
+
super.connectedCallback();
|
|
28
|
+
this.#disconnect = new AbortController();
|
|
29
|
+
const buttonProps = createButton({
|
|
30
|
+
onActivate: () => this.#core.toggle(this.#state.value),
|
|
31
|
+
isDisabled: () => this.disabled || !this.#state.value
|
|
32
|
+
});
|
|
33
|
+
applyElementProps(this, buttonProps, this.#disconnect.signal);
|
|
34
|
+
if (!this.#state.value) logMissingFeature(PiPButtonElement.tagName, "pip");
|
|
35
|
+
}
|
|
36
|
+
disconnectedCallback() {
|
|
37
|
+
super.disconnectedCallback();
|
|
38
|
+
this.#disconnect?.abort();
|
|
39
|
+
this.#disconnect = null;
|
|
40
|
+
}
|
|
41
|
+
willUpdate(changed) {
|
|
42
|
+
super.willUpdate(changed);
|
|
43
|
+
this.#core.setProps(this);
|
|
44
|
+
}
|
|
45
|
+
update(changed) {
|
|
46
|
+
super.update(changed);
|
|
47
|
+
const media = this.#state.value;
|
|
48
|
+
if (!media) return;
|
|
49
|
+
const state = this.#core.getState(media);
|
|
50
|
+
applyElementProps(this, this.#core.getAttrs(state));
|
|
51
|
+
applyStateDataAttrs(this, state, PiPButtonDataAttrs);
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
//#endregion
|
|
56
|
+
export { PiPButtonElement };
|
|
57
|
+
//# sourceMappingURL=pip-button-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pip-button-element.js","names":["#core","#state","#disconnect"],"sources":["../../../../src/ui/pip-button/pip-button-element.ts"],"sourcesContent":["import { PiPButtonCore, PiPButtonDataAttrs } from '@videojs/core';\nimport { applyElementProps, applyStateDataAttrs, createButton, logMissingFeature, selectPiP } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\n\nexport class PiPButtonElement extends MediaElement {\n static readonly tagName = 'media-pip-button';\n\n static override properties = {\n label: { type: String },\n disabled: { type: Boolean },\n } satisfies PropertyDeclarationMap<keyof PiPButtonCore.Props>;\n\n label = PiPButtonCore.defaultProps.label;\n disabled = PiPButtonCore.defaultProps.disabled;\n\n readonly #core = new PiPButtonCore();\n readonly #state = new PlayerController(this, playerContext, selectPiP);\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#disconnect = new AbortController();\n\n const buttonProps = createButton({\n onActivate: () => this.#core.toggle(this.#state.value!),\n isDisabled: () => this.disabled || !this.#state.value,\n });\n\n applyElementProps(this, buttonProps, this.#disconnect.signal);\n\n if (__DEV__ && !this.#state.value) {\n logMissingFeature(PiPButtonElement.tagName, 'pip');\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = 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\n const media = this.#state.value;\n\n if (!media) return;\n\n const state = this.#core.getState(media);\n applyElementProps(this, this.#core.getAttrs(state));\n applyStateDataAttrs(this, state, PiPButtonDataAttrs);\n }\n}\n"],"mappings":";;;;;;;AAQA,IAAa,mBAAb,MAAa,yBAAyB,aAAa;;;eAQzC,cAAc,aAAa;kBACxB,cAAc,aAAa;;;iBARZ;;;oBAEG;GAC3B,OAAO,EAAE,MAAM,QAAQ;GACvB,UAAU,EAAE,MAAM,SAAS;GAC5B;;CAKD,CAASA,OAAQ,IAAI,eAAe;CACpC,CAASC,QAAS,IAAI,iBAAiB,MAAM,eAAe,UAAU;CAEtE,cAAsC;CAEtC,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,QAAKC,aAAc,IAAI,iBAAiB;EAExC,MAAM,cAAc,aAAa;GAC/B,kBAAkB,MAAKF,KAAM,OAAO,MAAKC,MAAO,MAAO;GACvD,kBAAkB,KAAK,YAAY,CAAC,MAAKA,MAAO;GACjD,CAAC;AAEF,oBAAkB,MAAM,aAAa,MAAKC,WAAY,OAAO;AAE7D,MAAe,CAAC,MAAKD,MAAO,MAC1B,mBAAkB,iBAAiB,SAAS,MAAM;;CAItD,AAAS,uBAA6B;AACpC,QAAM,sBAAsB;AAC5B,QAAKC,YAAa,OAAO;AACzB,QAAKA,aAAc;;CAGrB,AAAmB,WAAW,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AACzB,QAAKF,KAAM,SAAS,KAAK;;CAG3B,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,MAAKC,MAAO;AAE1B,MAAI,CAAC,MAAO;EAEZ,MAAM,QAAQ,MAAKD,KAAM,SAAS,MAAM;AACxC,oBAAkB,MAAM,MAAKA,KAAM,SAAS,MAAM,CAAC;AACnD,sBAAoB,MAAM,OAAO,mBAAmB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { MediaElement } from "../media-element.js";
|
|
2
|
+
import { PropertyValues } from "@videojs/element";
|
|
3
|
+
import * as _videojs_core0 from "@videojs/core";
|
|
4
|
+
|
|
5
|
+
//#region src/ui/play-button/play-button-element.d.ts
|
|
6
|
+
declare class PlayButtonElement extends MediaElement {
|
|
7
|
+
#private;
|
|
8
|
+
static readonly tagName = "media-play-button";
|
|
9
|
+
static properties: {
|
|
10
|
+
label: {
|
|
11
|
+
type: StringConstructor;
|
|
12
|
+
};
|
|
13
|
+
disabled: {
|
|
14
|
+
type: BooleanConstructor;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
label: string | ((state: _videojs_core0.PlayButtonState) => string);
|
|
18
|
+
disabled: boolean;
|
|
19
|
+
connectedCallback(): void;
|
|
20
|
+
disconnectedCallback(): void;
|
|
21
|
+
protected willUpdate(changed: PropertyValues): void;
|
|
22
|
+
protected update(changed: PropertyValues): void;
|
|
23
|
+
}
|
|
24
|
+
//#endregion
|
|
25
|
+
export { PlayButtonElement };
|
|
26
|
+
//# sourceMappingURL=play-button-element.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"play-button-element.d.ts","names":[],"sources":["../../../../src/ui/play-button/play-button-element.ts"],"mappings":";;;;;cAca,iBAAA,SAA0B,YAAA;EAAA;kBACrB,OAAA;EAAA,OAEA,UAAA;;;;;;;;EAKhB,KAAA,aAAK,KAAA,iBAAA,eAAA;EACL,QAAA;EAOS,iBAAA,CAAA;EAiBA,oBAAA,CAAA;EAAA,UAMU,UAAA,CAAW,OAAA,EAAS,cAAA;EAAA,UAKpB,MAAA,CAAO,OAAA,EAAS,cAAA;AAAA"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { playerContext } from "../../player/context.js";
|
|
2
|
+
import { MediaElement } from "../media-element.js";
|
|
3
|
+
import { PlayerController } from "../../player/player-controller.js";
|
|
4
|
+
import { applyElementProps, applyStateDataAttrs, createButton, logMissingFeature, selectPlayback } from "@videojs/core/dom";
|
|
5
|
+
import { PlayButtonCore, PlayButtonDataAttrs } from "@videojs/core";
|
|
6
|
+
|
|
7
|
+
//#region src/ui/play-button/play-button-element.ts
|
|
8
|
+
var PlayButtonElement = class PlayButtonElement extends MediaElement {
|
|
9
|
+
constructor(..._args) {
|
|
10
|
+
super(..._args);
|
|
11
|
+
this.label = PlayButtonCore.defaultProps.label;
|
|
12
|
+
this.disabled = PlayButtonCore.defaultProps.disabled;
|
|
13
|
+
}
|
|
14
|
+
static {
|
|
15
|
+
this.tagName = "media-play-button";
|
|
16
|
+
}
|
|
17
|
+
static {
|
|
18
|
+
this.properties = {
|
|
19
|
+
label: { type: String },
|
|
20
|
+
disabled: { type: Boolean }
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
#core = new PlayButtonCore();
|
|
24
|
+
#state = new PlayerController(this, playerContext, selectPlayback);
|
|
25
|
+
#disconnect = null;
|
|
26
|
+
connectedCallback() {
|
|
27
|
+
super.connectedCallback();
|
|
28
|
+
this.#disconnect = new AbortController();
|
|
29
|
+
const buttonProps = createButton({
|
|
30
|
+
onActivate: () => this.#core.toggle(this.#state.value),
|
|
31
|
+
isDisabled: () => this.disabled || !this.#state.value
|
|
32
|
+
});
|
|
33
|
+
applyElementProps(this, buttonProps, this.#disconnect.signal);
|
|
34
|
+
if (!this.#state.value) logMissingFeature(PlayButtonElement.tagName, "playback");
|
|
35
|
+
}
|
|
36
|
+
disconnectedCallback() {
|
|
37
|
+
super.disconnectedCallback();
|
|
38
|
+
this.#disconnect?.abort();
|
|
39
|
+
this.#disconnect = null;
|
|
40
|
+
}
|
|
41
|
+
willUpdate(changed) {
|
|
42
|
+
super.willUpdate(changed);
|
|
43
|
+
this.#core.setProps(this);
|
|
44
|
+
}
|
|
45
|
+
update(changed) {
|
|
46
|
+
super.update(changed);
|
|
47
|
+
const media = this.#state.value;
|
|
48
|
+
if (!media) return;
|
|
49
|
+
const state = this.#core.getState(media);
|
|
50
|
+
applyElementProps(this, this.#core.getAttrs(state));
|
|
51
|
+
applyStateDataAttrs(this, state, PlayButtonDataAttrs);
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
//#endregion
|
|
56
|
+
export { PlayButtonElement };
|
|
57
|
+
//# sourceMappingURL=play-button-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"play-button-element.js","names":["#core","#state","#disconnect"],"sources":["../../../../src/ui/play-button/play-button-element.ts"],"sourcesContent":["import { PlayButtonCore, PlayButtonDataAttrs } from '@videojs/core';\nimport {\n applyElementProps,\n applyStateDataAttrs,\n createButton,\n logMissingFeature,\n selectPlayback,\n} from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\n\nexport class PlayButtonElement extends MediaElement {\n static readonly tagName = 'media-play-button';\n\n static override properties = {\n label: { type: String },\n disabled: { type: Boolean },\n } satisfies PropertyDeclarationMap<keyof PlayButtonCore.Props>;\n\n label = PlayButtonCore.defaultProps.label;\n disabled = PlayButtonCore.defaultProps.disabled;\n\n readonly #core = new PlayButtonCore();\n readonly #state = new PlayerController(this, playerContext, selectPlayback);\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#disconnect = new AbortController();\n\n const buttonProps = createButton({\n onActivate: () => this.#core.toggle(this.#state.value!),\n isDisabled: () => this.disabled || !this.#state.value,\n });\n\n applyElementProps(this, buttonProps, this.#disconnect.signal);\n\n if (__DEV__ && !this.#state.value) {\n logMissingFeature(PlayButtonElement.tagName, 'playback');\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = 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\n const media = this.#state.value;\n\n if (!media) return;\n\n const state = this.#core.getState(media);\n applyElementProps(this, this.#core.getAttrs(state));\n applyStateDataAttrs(this, state, PlayButtonDataAttrs);\n }\n}\n"],"mappings":";;;;;;;AAcA,IAAa,oBAAb,MAAa,0BAA0B,aAAa;;;eAQ1C,eAAe,aAAa;kBACzB,eAAe,aAAa;;;iBARb;;;oBAEG;GAC3B,OAAO,EAAE,MAAM,QAAQ;GACvB,UAAU,EAAE,MAAM,SAAS;GAC5B;;CAKD,CAASA,OAAQ,IAAI,gBAAgB;CACrC,CAASC,QAAS,IAAI,iBAAiB,MAAM,eAAe,eAAe;CAE3E,cAAsC;CAEtC,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,QAAKC,aAAc,IAAI,iBAAiB;EAExC,MAAM,cAAc,aAAa;GAC/B,kBAAkB,MAAKF,KAAM,OAAO,MAAKC,MAAO,MAAO;GACvD,kBAAkB,KAAK,YAAY,CAAC,MAAKA,MAAO;GACjD,CAAC;AAEF,oBAAkB,MAAM,aAAa,MAAKC,WAAY,OAAO;AAE7D,MAAe,CAAC,MAAKD,MAAO,MAC1B,mBAAkB,kBAAkB,SAAS,WAAW;;CAI5D,AAAS,uBAA6B;AACpC,QAAM,sBAAsB;AAC5B,QAAKC,YAAa,OAAO;AACzB,QAAKA,aAAc;;CAGrB,AAAmB,WAAW,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AACzB,QAAKF,KAAM,SAAS,KAAK;;CAG3B,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,MAAKC,MAAO;AAE1B,MAAI,CAAC,MAAO;EAEZ,MAAM,QAAQ,MAAKD,KAAM,SAAS,MAAM;AACxC,oBAAkB,MAAM,MAAKA,KAAM,SAAS,MAAM,CAAC;AACnD,sBAAoB,MAAM,OAAO,oBAAoB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { MediaElement } from "../media-element.js";
|
|
2
|
+
import { PropertyValues } from "@videojs/element";
|
|
3
|
+
|
|
4
|
+
//#region src/ui/poster/poster-element.d.ts
|
|
5
|
+
declare class PosterElement extends MediaElement {
|
|
6
|
+
#private;
|
|
7
|
+
static readonly tagName = "media-poster";
|
|
8
|
+
connectedCallback(): void;
|
|
9
|
+
protected update(changed: PropertyValues): void;
|
|
10
|
+
}
|
|
11
|
+
//#endregion
|
|
12
|
+
export { PosterElement };
|
|
13
|
+
//# sourceMappingURL=poster-element.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"poster-element.d.ts","names":[],"sources":["../../../../src/ui/poster/poster-element.ts"],"mappings":";;;;cAQa,aAAA,SAAsB,YAAA;EAAA;kBACjB,OAAA;EAKP,iBAAA,CAAA;EAAA,UAQU,MAAA,CAAO,OAAA,EAAS,cAAA;AAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { playerContext } from "../../player/context.js";
|
|
2
|
+
import { MediaElement } from "../media-element.js";
|
|
3
|
+
import { PlayerController } from "../../player/player-controller.js";
|
|
4
|
+
import { applyStateDataAttrs, logMissingFeature, selectPlayback } from "@videojs/core/dom";
|
|
5
|
+
import { PosterCore, PosterDataAttrs } from "@videojs/core";
|
|
6
|
+
|
|
7
|
+
//#region src/ui/poster/poster-element.ts
|
|
8
|
+
var PosterElement = class PosterElement extends MediaElement {
|
|
9
|
+
static {
|
|
10
|
+
this.tagName = "media-poster";
|
|
11
|
+
}
|
|
12
|
+
#core = new PosterCore();
|
|
13
|
+
#state = new PlayerController(this, playerContext, selectPlayback);
|
|
14
|
+
connectedCallback() {
|
|
15
|
+
super.connectedCallback();
|
|
16
|
+
if (!this.#state.value) logMissingFeature(PosterElement.tagName, "playback");
|
|
17
|
+
}
|
|
18
|
+
update(changed) {
|
|
19
|
+
super.update(changed);
|
|
20
|
+
const media = this.#state.value;
|
|
21
|
+
if (!media) return;
|
|
22
|
+
applyStateDataAttrs(this, this.#core.getState(media), PosterDataAttrs);
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
//#endregion
|
|
27
|
+
export { PosterElement };
|
|
28
|
+
//# sourceMappingURL=poster-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"poster-element.js","names":["#core","#state"],"sources":["../../../../src/ui/poster/poster-element.ts"],"sourcesContent":["import { PosterCore, PosterDataAttrs } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectPlayback } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\n\nexport class PosterElement extends MediaElement {\n static readonly tagName = 'media-poster';\n\n readonly #core = new PosterCore();\n readonly #state = new PlayerController(this, playerContext, selectPlayback);\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (__DEV__ && !this.#state.value) {\n logMissingFeature(PosterElement.tagName, 'playback');\n }\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.#state.value;\n\n if (!media) {\n return;\n }\n\n applyStateDataAttrs(this, this.#core.getState(media), PosterDataAttrs);\n }\n}\n"],"mappings":";;;;;;;AAQA,IAAa,gBAAb,MAAa,sBAAsB,aAAa;;iBACpB;;CAE1B,CAASA,OAAQ,IAAI,YAAY;CACjC,CAASC,QAAS,IAAI,iBAAiB,MAAM,eAAe,eAAe;CAE3E,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,MAAe,CAAC,MAAKA,MAAO,MAC1B,mBAAkB,cAAc,SAAS,WAAW;;CAIxD,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,MAAKA,MAAO;AAE1B,MAAI,CAAC,MACH;AAGF,sBAAoB,MAAM,MAAKD,KAAM,SAAS,MAAM,EAAE,gBAAgB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { MediaElement } from "../media-element.js";
|
|
2
|
+
import { PropertyValues } from "@videojs/element";
|
|
3
|
+
import * as _videojs_core0 from "@videojs/core";
|
|
4
|
+
|
|
5
|
+
//#region src/ui/seek-button/seek-button-element.d.ts
|
|
6
|
+
declare class SeekButtonElement extends MediaElement {
|
|
7
|
+
#private;
|
|
8
|
+
static readonly tagName = "media-seek-button";
|
|
9
|
+
static properties: {
|
|
10
|
+
seconds: {
|
|
11
|
+
type: NumberConstructor;
|
|
12
|
+
};
|
|
13
|
+
label: {
|
|
14
|
+
type: StringConstructor;
|
|
15
|
+
};
|
|
16
|
+
disabled: {
|
|
17
|
+
type: BooleanConstructor;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
seconds: number;
|
|
21
|
+
label: string | ((state: _videojs_core0.SeekButtonState) => string);
|
|
22
|
+
disabled: boolean;
|
|
23
|
+
connectedCallback(): void;
|
|
24
|
+
disconnectedCallback(): void;
|
|
25
|
+
protected willUpdate(changed: PropertyValues): void;
|
|
26
|
+
protected update(changed: PropertyValues): void;
|
|
27
|
+
}
|
|
28
|
+
//#endregion
|
|
29
|
+
export { SeekButtonElement };
|
|
30
|
+
//# sourceMappingURL=seek-button-element.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seek-button-element.d.ts","names":[],"sources":["../../../../src/ui/seek-button/seek-button-element.ts"],"mappings":";;;;;cAQa,iBAAA,SAA0B,YAAA;EAAA;kBACrB,OAAA;EAAA,OAEA,UAAA;;;;;;;;;;;EAMhB,OAAA;EACA,KAAA,aAAK,KAAA,iBAAA,eAAA;EACL,QAAA;EAOS,iBAAA,CAAA;EAiBA,oBAAA,CAAA;EAAA,UAMU,UAAA,CAAW,OAAA,EAAS,cAAA;EAAA,UAKpB,MAAA,CAAO,OAAA,EAAS,cAAA;AAAA"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { playerContext } from "../../player/context.js";
|
|
2
|
+
import { MediaElement } from "../media-element.js";
|
|
3
|
+
import { PlayerController } from "../../player/player-controller.js";
|
|
4
|
+
import { applyElementProps, applyStateDataAttrs, createButton, logMissingFeature, selectTime } from "@videojs/core/dom";
|
|
5
|
+
import { SeekButtonCore, SeekButtonDataAttrs } from "@videojs/core";
|
|
6
|
+
|
|
7
|
+
//#region src/ui/seek-button/seek-button-element.ts
|
|
8
|
+
var SeekButtonElement = class SeekButtonElement extends MediaElement {
|
|
9
|
+
constructor(..._args) {
|
|
10
|
+
super(..._args);
|
|
11
|
+
this.seconds = SeekButtonCore.defaultProps.seconds;
|
|
12
|
+
this.label = SeekButtonCore.defaultProps.label;
|
|
13
|
+
this.disabled = SeekButtonCore.defaultProps.disabled;
|
|
14
|
+
}
|
|
15
|
+
static {
|
|
16
|
+
this.tagName = "media-seek-button";
|
|
17
|
+
}
|
|
18
|
+
static {
|
|
19
|
+
this.properties = {
|
|
20
|
+
seconds: { type: Number },
|
|
21
|
+
label: { type: String },
|
|
22
|
+
disabled: { type: Boolean }
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
#core = new SeekButtonCore();
|
|
26
|
+
#state = new PlayerController(this, playerContext, selectTime);
|
|
27
|
+
#disconnect = null;
|
|
28
|
+
connectedCallback() {
|
|
29
|
+
super.connectedCallback();
|
|
30
|
+
this.#disconnect = new AbortController();
|
|
31
|
+
const buttonProps = createButton({
|
|
32
|
+
onActivate: () => this.#core.seek(this.#state.value),
|
|
33
|
+
isDisabled: () => this.disabled || !this.#state.value
|
|
34
|
+
});
|
|
35
|
+
applyElementProps(this, buttonProps, this.#disconnect.signal);
|
|
36
|
+
if (!this.#state.value) logMissingFeature(SeekButtonElement.tagName, "time");
|
|
37
|
+
}
|
|
38
|
+
disconnectedCallback() {
|
|
39
|
+
super.disconnectedCallback();
|
|
40
|
+
this.#disconnect?.abort();
|
|
41
|
+
this.#disconnect = null;
|
|
42
|
+
}
|
|
43
|
+
willUpdate(changed) {
|
|
44
|
+
super.willUpdate(changed);
|
|
45
|
+
this.#core.setProps(this);
|
|
46
|
+
}
|
|
47
|
+
update(changed) {
|
|
48
|
+
super.update(changed);
|
|
49
|
+
const media = this.#state.value;
|
|
50
|
+
if (!media) return;
|
|
51
|
+
const state = this.#core.getState(media);
|
|
52
|
+
applyElementProps(this, this.#core.getAttrs(state));
|
|
53
|
+
applyStateDataAttrs(this, state, SeekButtonDataAttrs);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
//#endregion
|
|
58
|
+
export { SeekButtonElement };
|
|
59
|
+
//# sourceMappingURL=seek-button-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seek-button-element.js","names":["#core","#state","#disconnect"],"sources":["../../../../src/ui/seek-button/seek-button-element.ts"],"sourcesContent":["import { SeekButtonCore, SeekButtonDataAttrs } from '@videojs/core';\nimport { applyElementProps, applyStateDataAttrs, createButton, logMissingFeature, selectTime } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\n\nexport class SeekButtonElement extends MediaElement {\n static readonly tagName = 'media-seek-button';\n\n static override properties = {\n seconds: { type: Number },\n label: { type: String },\n disabled: { type: Boolean },\n } satisfies PropertyDeclarationMap<keyof SeekButtonCore.Props>;\n\n seconds = SeekButtonCore.defaultProps.seconds;\n label = SeekButtonCore.defaultProps.label;\n disabled = SeekButtonCore.defaultProps.disabled;\n\n readonly #core = new SeekButtonCore();\n readonly #state = new PlayerController(this, playerContext, selectTime);\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.#disconnect = new AbortController();\n\n const buttonProps = createButton({\n onActivate: () => this.#core.seek(this.#state.value!),\n isDisabled: () => this.disabled || !this.#state.value,\n });\n\n applyElementProps(this, buttonProps, this.#disconnect.signal);\n\n if (__DEV__ && !this.#state.value) {\n logMissingFeature(SeekButtonElement.tagName, 'time');\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = 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\n const media = this.#state.value;\n\n if (!media) return;\n\n const state = this.#core.getState(media);\n applyElementProps(this, this.#core.getAttrs(state));\n applyStateDataAttrs(this, state, SeekButtonDataAttrs);\n }\n}\n"],"mappings":";;;;;;;AAQA,IAAa,oBAAb,MAAa,0BAA0B,aAAa;;;iBASxC,eAAe,aAAa;eAC9B,eAAe,aAAa;kBACzB,eAAe,aAAa;;;iBAVb;;;oBAEG;GAC3B,SAAS,EAAE,MAAM,QAAQ;GACzB,OAAO,EAAE,MAAM,QAAQ;GACvB,UAAU,EAAE,MAAM,SAAS;GAC5B;;CAMD,CAASA,OAAQ,IAAI,gBAAgB;CACrC,CAASC,QAAS,IAAI,iBAAiB,MAAM,eAAe,WAAW;CAEvE,cAAsC;CAEtC,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,QAAKC,aAAc,IAAI,iBAAiB;EAExC,MAAM,cAAc,aAAa;GAC/B,kBAAkB,MAAKF,KAAM,KAAK,MAAKC,MAAO,MAAO;GACrD,kBAAkB,KAAK,YAAY,CAAC,MAAKA,MAAO;GACjD,CAAC;AAEF,oBAAkB,MAAM,aAAa,MAAKC,WAAY,OAAO;AAE7D,MAAe,CAAC,MAAKD,MAAO,MAC1B,mBAAkB,kBAAkB,SAAS,OAAO;;CAIxD,AAAS,uBAA6B;AACpC,QAAM,sBAAsB;AAC5B,QAAKC,YAAa,OAAO;AACzB,QAAKA,aAAc;;CAGrB,AAAmB,WAAW,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AACzB,QAAKF,KAAM,SAAS,KAAK;;CAG3B,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,MAAKC,MAAO;AAE1B,MAAI,CAAC,MAAO;EAEZ,MAAM,QAAQ,MAAKD,KAAM,SAAS,MAAM;AACxC,oBAAkB,MAAM,MAAKA,KAAM,SAAS,MAAM,CAAC;AACnD,sBAAoB,MAAM,OAAO,oBAAoB"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { MediaElement } from "../media-element.js";
|
|
2
|
+
import { PropertyValues } from "@videojs/element";
|
|
3
|
+
import * as _videojs_core0 from "@videojs/core";
|
|
4
|
+
import { TimeType } from "@videojs/core";
|
|
5
|
+
|
|
6
|
+
//#region src/ui/time/time-element.d.ts
|
|
7
|
+
declare class TimeElement extends MediaElement {
|
|
8
|
+
#private;
|
|
9
|
+
static readonly tagName = "media-time";
|
|
10
|
+
static properties: {
|
|
11
|
+
type: {
|
|
12
|
+
type: StringConstructor;
|
|
13
|
+
};
|
|
14
|
+
negativeSign: {
|
|
15
|
+
type: StringConstructor;
|
|
16
|
+
attribute: string;
|
|
17
|
+
};
|
|
18
|
+
label: {
|
|
19
|
+
type: StringConstructor;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
type: TimeType;
|
|
23
|
+
negativeSign: string;
|
|
24
|
+
label: string | ((state: _videojs_core0.TimeState) => string);
|
|
25
|
+
constructor();
|
|
26
|
+
connectedCallback(): void;
|
|
27
|
+
protected willUpdate(changed: PropertyValues): void;
|
|
28
|
+
protected update(changed: PropertyValues): void;
|
|
29
|
+
}
|
|
30
|
+
//#endregion
|
|
31
|
+
export { TimeElement };
|
|
32
|
+
//# sourceMappingURL=time-element.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-element.d.ts","names":[],"sources":["../../../../src/ui/time/time-element.ts"],"mappings":";;;;;;cAQa,WAAA,SAAoB,YAAA;EAAA;kBACf,OAAA;EAAA,OAEA,UAAA;;;;;;;;;;;;EAMhB,IAAA,EAAM,QAAA;EACN,YAAA;EACA,KAAA,aAAK,KAAA,EAFS,cAAA,CAET,SAAA;;EAaI,iBAAA,CAAA;EAAA,UAQU,UAAA,CAAW,OAAA,EAAS,cAAA;EAAA,UAKpB,MAAA,CAAO,OAAA,EAAS,cAAA;AAAA"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { playerContext } from "../../player/context.js";
|
|
2
|
+
import { MediaElement } from "../media-element.js";
|
|
3
|
+
import { PlayerController } from "../../player/player-controller.js";
|
|
4
|
+
import { applyElementProps, applyStateDataAttrs, logMissingFeature, selectTime } from "@videojs/core/dom";
|
|
5
|
+
import { TimeCore, TimeDataAttrs } from "@videojs/core";
|
|
6
|
+
|
|
7
|
+
//#region src/ui/time/time-element.ts
|
|
8
|
+
var TimeElement = class TimeElement extends MediaElement {
|
|
9
|
+
static {
|
|
10
|
+
this.tagName = "media-time";
|
|
11
|
+
}
|
|
12
|
+
static {
|
|
13
|
+
this.properties = {
|
|
14
|
+
type: { type: String },
|
|
15
|
+
negativeSign: {
|
|
16
|
+
type: String,
|
|
17
|
+
attribute: "negative-sign"
|
|
18
|
+
},
|
|
19
|
+
label: { type: String }
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
#core = new TimeCore();
|
|
23
|
+
#state = new PlayerController(this, playerContext, selectTime);
|
|
24
|
+
#signSpan = document.createElement("span");
|
|
25
|
+
#textNode = document.createTextNode("");
|
|
26
|
+
constructor() {
|
|
27
|
+
super();
|
|
28
|
+
this.type = TimeCore.defaultProps.type;
|
|
29
|
+
this.negativeSign = TimeCore.defaultProps.negativeSign;
|
|
30
|
+
this.label = TimeCore.defaultProps.label;
|
|
31
|
+
this.#signSpan.setAttribute("aria-hidden", "true");
|
|
32
|
+
}
|
|
33
|
+
connectedCallback() {
|
|
34
|
+
super.connectedCallback();
|
|
35
|
+
if (!this.#state.value) logMissingFeature(TimeElement.tagName, "time");
|
|
36
|
+
}
|
|
37
|
+
willUpdate(changed) {
|
|
38
|
+
super.willUpdate(changed);
|
|
39
|
+
this.#core.setProps(this);
|
|
40
|
+
}
|
|
41
|
+
update(changed) {
|
|
42
|
+
super.update(changed);
|
|
43
|
+
const media = this.#state.value;
|
|
44
|
+
if (!media) return;
|
|
45
|
+
const state = this.#core.getState(media);
|
|
46
|
+
if (state.negative) {
|
|
47
|
+
this.#signSpan.textContent = this.negativeSign;
|
|
48
|
+
this.#textNode.textContent = state.text;
|
|
49
|
+
if (!this.#signSpan.parentNode) {
|
|
50
|
+
this.textContent = "";
|
|
51
|
+
this.appendChild(this.#signSpan);
|
|
52
|
+
this.appendChild(this.#textNode);
|
|
53
|
+
}
|
|
54
|
+
} else {
|
|
55
|
+
if (this.#signSpan.parentNode) {
|
|
56
|
+
this.#signSpan.remove();
|
|
57
|
+
this.#textNode.remove();
|
|
58
|
+
}
|
|
59
|
+
this.textContent = state.text;
|
|
60
|
+
}
|
|
61
|
+
applyElementProps(this, this.#core.getAttrs(state));
|
|
62
|
+
applyStateDataAttrs(this, state, TimeDataAttrs);
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
//#endregion
|
|
67
|
+
export { TimeElement };
|
|
68
|
+
//# sourceMappingURL=time-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-element.js","names":["#core","#state","#signSpan","#textNode"],"sources":["../../../../src/ui/time/time-element.ts"],"sourcesContent":["import { TimeCore, TimeDataAttrs, type TimeType } from '@videojs/core';\nimport { applyElementProps, applyStateDataAttrs, logMissingFeature, selectTime } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\n\nexport class TimeElement extends MediaElement {\n static readonly tagName = 'media-time';\n\n static override properties = {\n type: { type: String },\n negativeSign: { type: String, attribute: 'negative-sign' },\n label: { type: String },\n } satisfies PropertyDeclarationMap<keyof TimeCore.Props>;\n\n type: TimeType = TimeCore.defaultProps.type;\n negativeSign = TimeCore.defaultProps.negativeSign;\n label = TimeCore.defaultProps.label;\n\n readonly #core = new TimeCore();\n readonly #state = new PlayerController(this, playerContext, selectTime);\n\n readonly #signSpan = document.createElement('span');\n readonly #textNode = document.createTextNode('');\n\n constructor() {\n super();\n this.#signSpan.setAttribute('aria-hidden', 'true');\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (__DEV__ && !this.#state.value) {\n logMissingFeature(TimeElement.tagName, 'time');\n }\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\n const media = this.#state.value;\n\n if (!media) return;\n\n const state = this.#core.getState(media);\n\n if (state.negative) {\n this.#signSpan.textContent = this.negativeSign;\n this.#textNode.textContent = state.text;\n\n // Append elements if not already in DOM\n if (!this.#signSpan.parentNode) {\n this.textContent = '';\n this.appendChild(this.#signSpan);\n this.appendChild(this.#textNode);\n }\n } else {\n // Remove sign span if present, use direct text\n if (this.#signSpan.parentNode) {\n this.#signSpan.remove();\n this.#textNode.remove();\n }\n this.textContent = state.text;\n }\n\n applyElementProps(this, this.#core.getAttrs(state));\n applyStateDataAttrs(this, state, TimeDataAttrs);\n }\n}\n"],"mappings":";;;;;;;AAQA,IAAa,cAAb,MAAa,oBAAoB,aAAa;;iBAClB;;;oBAEG;GAC3B,MAAM,EAAE,MAAM,QAAQ;GACtB,cAAc;IAAE,MAAM;IAAQ,WAAW;IAAiB;GAC1D,OAAO,EAAE,MAAM,QAAQ;GACxB;;CAMD,CAASA,OAAQ,IAAI,UAAU;CAC/B,CAASC,QAAS,IAAI,iBAAiB,MAAM,eAAe,WAAW;CAEvE,CAASC,WAAY,SAAS,cAAc,OAAO;CACnD,CAASC,WAAY,SAAS,eAAe,GAAG;CAEhD,cAAc;AACZ,SAAO;cAXQ,SAAS,aAAa;sBACxB,SAAS,aAAa;eAC7B,SAAS,aAAa;AAU5B,QAAKD,SAAU,aAAa,eAAe,OAAO;;CAGpD,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAEzB,MAAe,CAAC,MAAKD,MAAO,MAC1B,mBAAkB,YAAY,SAAS,OAAO;;CAIlD,AAAmB,WAAW,SAA+B;AAC3D,QAAM,WAAW,QAAQ;AACzB,QAAKD,KAAM,SAAS,KAAK;;CAG3B,AAAmB,OAAO,SAA+B;AACvD,QAAM,OAAO,QAAQ;EAErB,MAAM,QAAQ,MAAKC,MAAO;AAE1B,MAAI,CAAC,MAAO;EAEZ,MAAM,QAAQ,MAAKD,KAAM,SAAS,MAAM;AAExC,MAAI,MAAM,UAAU;AAClB,SAAKE,SAAU,cAAc,KAAK;AAClC,SAAKC,SAAU,cAAc,MAAM;AAGnC,OAAI,CAAC,MAAKD,SAAU,YAAY;AAC9B,SAAK,cAAc;AACnB,SAAK,YAAY,MAAKA,SAAU;AAChC,SAAK,YAAY,MAAKC,SAAU;;SAE7B;AAEL,OAAI,MAAKD,SAAU,YAAY;AAC7B,UAAKA,SAAU,QAAQ;AACvB,UAAKC,SAAU,QAAQ;;AAEzB,QAAK,cAAc,MAAM;;AAG3B,oBAAkB,MAAM,MAAKH,KAAM,SAAS,MAAM,CAAC;AACnD,sBAAoB,MAAM,OAAO,cAAc"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { MediaElement } from "../media-element.js";
|
|
2
|
+
|
|
3
|
+
//#region src/ui/time/time-group-element.d.ts
|
|
4
|
+
declare class TimeGroupElement extends MediaElement {
|
|
5
|
+
static readonly tagName = "media-time-group";
|
|
6
|
+
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { TimeGroupElement };
|
|
9
|
+
//# sourceMappingURL=time-group-element.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-group-element.d.ts","names":[],"sources":["../../../../src/ui/time/time-group-element.ts"],"mappings":";;;cAEa,gBAAA,SAAyB,YAAA;EAAA,gBACpB,OAAA;AAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { MediaElement } from "../media-element.js";
|
|
2
|
+
|
|
3
|
+
//#region src/ui/time/time-group-element.ts
|
|
4
|
+
var TimeGroupElement = class extends MediaElement {
|
|
5
|
+
static {
|
|
6
|
+
this.tagName = "media-time-group";
|
|
7
|
+
}
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
//#endregion
|
|
11
|
+
export { TimeGroupElement };
|
|
12
|
+
//# sourceMappingURL=time-group-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-group-element.js","names":[],"sources":["../../../../src/ui/time/time-group-element.ts"],"sourcesContent":["import { MediaElement } from '../media-element';\n\nexport class TimeGroupElement extends MediaElement {\n static readonly tagName = 'media-time-group';\n\n // Future: Could provide context for hoursDisplay to children via Lit context\n}\n"],"mappings":";;;AAEA,IAAa,mBAAb,cAAsC,aAAa;;iBACvB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { MediaElement } from "../media-element.js";
|
|
2
|
+
|
|
3
|
+
//#region src/ui/time/time-separator-element.d.ts
|
|
4
|
+
declare class TimeSeparatorElement extends MediaElement {
|
|
5
|
+
static readonly tagName = "media-time-separator";
|
|
6
|
+
connectedCallback(): void;
|
|
7
|
+
}
|
|
8
|
+
//#endregion
|
|
9
|
+
export { TimeSeparatorElement };
|
|
10
|
+
//# sourceMappingURL=time-separator-element.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-separator-element.d.ts","names":[],"sources":["../../../../src/ui/time/time-separator-element.ts"],"mappings":";;;cAEa,oBAAA,SAA6B,YAAA;EAAA,gBACxB,OAAA;EAEP,iBAAA,CAAA;AAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { MediaElement } from "../media-element.js";
|
|
2
|
+
|
|
3
|
+
//#region src/ui/time/time-separator-element.ts
|
|
4
|
+
var TimeSeparatorElement = class extends MediaElement {
|
|
5
|
+
static {
|
|
6
|
+
this.tagName = "media-time-separator";
|
|
7
|
+
}
|
|
8
|
+
connectedCallback() {
|
|
9
|
+
super.connectedCallback();
|
|
10
|
+
this.setAttribute("aria-hidden", "true");
|
|
11
|
+
if (!this.textContent?.trim()) this.textContent = "/";
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
//#endregion
|
|
16
|
+
export { TimeSeparatorElement };
|
|
17
|
+
//# sourceMappingURL=time-separator-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-separator-element.js","names":[],"sources":["../../../../src/ui/time/time-separator-element.ts"],"sourcesContent":["import { MediaElement } from '../media-element';\n\nexport class TimeSeparatorElement extends MediaElement {\n static readonly tagName = 'media-time-separator';\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n // Set aria-hidden for accessibility\n this.setAttribute('aria-hidden', 'true');\n\n // Set default content if empty\n if (!this.textContent?.trim()) {\n this.textContent = '/';\n }\n }\n}\n"],"mappings":";;;AAEA,IAAa,uBAAb,cAA0C,aAAa;;iBAC3B;;CAE1B,AAAS,oBAA0B;AACjC,QAAM,mBAAmB;AAGzB,OAAK,aAAa,eAAe,OAAO;AAGxC,MAAI,CAAC,KAAK,aAAa,MAAM,CAC3B,MAAK,cAAc"}
|
package/package.json
CHANGED
|
@@ -1,67 +1,89 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@videojs/html",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "10.0.0-alpha.3",
|
|
5
5
|
"description": "HTML library for building media players",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
"html"
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/videojs/v10",
|
|
10
|
+
"directory": "packages/html"
|
|
11
|
+
},
|
|
12
|
+
"main": "dist/default/index.js",
|
|
13
|
+
"module": "dist/default/index.js",
|
|
14
|
+
"types": "dist/dev/index.d.ts",
|
|
15
|
+
"sideEffects": [
|
|
16
|
+
"./dist/*/define/**/*.js"
|
|
17
|
+
],
|
|
18
|
+
"files": [
|
|
19
|
+
"dist"
|
|
14
20
|
],
|
|
15
21
|
"exports": {
|
|
16
22
|
".": {
|
|
17
|
-
"types": "./dist/index.d.ts",
|
|
18
|
-
"
|
|
23
|
+
"types": "./dist/dev/index.d.ts",
|
|
24
|
+
"development": "./dist/dev/index.js",
|
|
25
|
+
"default": "./dist/default/index.js"
|
|
26
|
+
},
|
|
27
|
+
"./video/*": {
|
|
28
|
+
"types": "./dist/dev/define/video/*.d.ts",
|
|
29
|
+
"development": "./dist/dev/define/video/*.js",
|
|
30
|
+
"default": "./dist/default/define/video/*.js"
|
|
19
31
|
},
|
|
20
|
-
"./
|
|
21
|
-
"types": "./dist/
|
|
22
|
-
"
|
|
32
|
+
"./audio/*": {
|
|
33
|
+
"types": "./dist/dev/define/audio/*.d.ts",
|
|
34
|
+
"development": "./dist/dev/define/audio/*.js",
|
|
35
|
+
"default": "./dist/default/define/audio/*.js"
|
|
23
36
|
},
|
|
24
|
-
"./
|
|
25
|
-
"types": "./dist/
|
|
26
|
-
"
|
|
37
|
+
"./background/*": {
|
|
38
|
+
"types": "./dist/dev/define/background/*.d.ts",
|
|
39
|
+
"development": "./dist/dev/define/background/*.js",
|
|
40
|
+
"default": "./dist/default/define/background/*.js"
|
|
27
41
|
},
|
|
28
|
-
"./
|
|
29
|
-
"types": "./dist/
|
|
30
|
-
"
|
|
42
|
+
"./ui/*": {
|
|
43
|
+
"types": "./dist/dev/define/ui/*.d.ts",
|
|
44
|
+
"development": "./dist/dev/define/ui/*.js",
|
|
45
|
+
"default": "./dist/default/define/ui/*.js"
|
|
31
46
|
},
|
|
32
|
-
"./
|
|
33
|
-
"types": "./dist/
|
|
34
|
-
"
|
|
47
|
+
"./feature/*": {
|
|
48
|
+
"types": "./dist/dev/define/feature/*.d.ts",
|
|
49
|
+
"development": "./dist/dev/define/feature/*.js",
|
|
50
|
+
"default": "./dist/default/define/feature/*.js"
|
|
35
51
|
},
|
|
36
|
-
"./
|
|
37
|
-
"types": "./dist/define/*.d.ts",
|
|
38
|
-
"
|
|
52
|
+
"./media/*": {
|
|
53
|
+
"types": "./dist/dev/define/media/*.d.ts",
|
|
54
|
+
"development": "./dist/dev/define/media/*.js",
|
|
55
|
+
"default": "./dist/default/define/media/*.js"
|
|
39
56
|
}
|
|
40
57
|
},
|
|
41
|
-
"main": "dist/index.js",
|
|
42
|
-
"module": "dist/index.js",
|
|
43
|
-
"types": "dist/index.d.ts",
|
|
44
|
-
"files": [
|
|
45
|
-
"dist"
|
|
46
|
-
],
|
|
47
58
|
"dependencies": {
|
|
48
|
-
"@
|
|
49
|
-
"@videojs/
|
|
50
|
-
"@videojs/
|
|
51
|
-
"@videojs/utils": "0.
|
|
59
|
+
"@videojs/core": "10.0.0-alpha.3",
|
|
60
|
+
"@videojs/store": "10.0.0-alpha.3",
|
|
61
|
+
"@videojs/element": "10.0.0-alpha.3",
|
|
62
|
+
"@videojs/utils": "10.0.0-alpha.3"
|
|
52
63
|
},
|
|
53
64
|
"devDependencies": {
|
|
54
|
-
"
|
|
55
|
-
"
|
|
65
|
+
"@testing-library/dom": "^10.4.0",
|
|
66
|
+
"happy-dom": "^18.0.1",
|
|
67
|
+
"tsdown": "^0.20.3",
|
|
68
|
+
"typescript": "^5.9.3",
|
|
69
|
+
"vitest": "^3.2.4"
|
|
56
70
|
},
|
|
57
71
|
"publishConfig": {
|
|
58
72
|
"access": "public"
|
|
59
73
|
},
|
|
74
|
+
"keywords": [
|
|
75
|
+
"media",
|
|
76
|
+
"player",
|
|
77
|
+
"html",
|
|
78
|
+
"ui",
|
|
79
|
+
"components",
|
|
80
|
+
"videojs"
|
|
81
|
+
],
|
|
60
82
|
"scripts": {
|
|
61
83
|
"build": "tsdown",
|
|
62
|
-
"build:watch": "tsdown --watch --
|
|
84
|
+
"build:watch": "tsdown --watch ./src --no-clean",
|
|
63
85
|
"dev": "pnpm run build:watch",
|
|
64
|
-
"test": "
|
|
65
|
-
"clean": "rm -rf dist"
|
|
86
|
+
"test": "vitest run",
|
|
87
|
+
"clean": "rm -rf dist types"
|
|
66
88
|
}
|
|
67
89
|
}
|