j1-template 2024.3.22 → 2024.3.24
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.
- checksums.yaml +4 -4
- data/assets/data/{galeries.html → gallery_app.html} +106 -18
- data/assets/theme/bla +0 -0
- data/assets/theme/j1/adapter/js/amplitude.js +144 -52
- data/assets/theme/j1/adapter/js/gallery.js +14 -3
- data/assets/theme/j1/adapter/js/themes.js +41 -69
- data/assets/theme/j1/core/css/themes/unolight/bootstrap.css +48 -52
- data/assets/theme/j1/core/css/themes/unolight/bootstrap.min.css +1 -1
- data/assets/theme/j1/core/css/vendor.css +1 -1
- data/assets/theme/j1/core/css/vendor.min.css +1 -1
- data/assets/theme/j1/modules/amplitudejs/js/tech/ytp.js +466 -396
- data/assets/theme/j1/modules/lightGallery/css/lg-transitions.css +3 -126
- data/assets/theme/j1/modules/lightGallery/css/lg-transitions.min.css +3 -10
- data/assets/theme/j1/modules/lightGallery/css/lightgallery-bundle.css +70 -237
- data/assets/theme/j1/modules/lightGallery/css/lightgallery-bundle.min.css +4 -10
- data/assets/theme/j1/modules/lightGallery/css/theme/uno/uno.css +276 -0
- data/assets/theme/j1/modules/lightGallery/css/theme/uno/uno.min.css +17 -0
- data/assets/theme/j1/modules/lightGallery/js/lightgallery.js +196 -134
- data/assets/theme/j1/modules/lightGallery/js/lightgallery.min.js +3 -10
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-autoplay.js +4 -4
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-autoplay.min.js +5 -5
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-comment.js +5 -5
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-comment.min.js +6 -6
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-fullscreen.js +4 -4
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-fullscreen.min.js +5 -5
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-hash.js +4 -4
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-hash.min.js +5 -6
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-medium-zoom.js +5 -5
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-medium-zoom.min.js +6 -6
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-pager.js +4 -4
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-pager.min.js +5 -5
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-relative-caption.js +179 -0
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-relative-caption.min.js +32 -0
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-rotate.js +4 -4
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-rotate.min.js +6 -6
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-share.js +4 -4
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-share.min.js +6 -7
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-thumbnail.js +27 -20
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-thumbnail.min.js +5 -5
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-video.js +489 -411
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-video.min.js +3 -10
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-vimeo-thumbnail.js +4 -4
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-vimeo-thumbnail.min.js +5 -5
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-zoom.js +11 -5
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-zoom.min.js +5 -5
- data/assets/theme/j1/modules/rtable/css/theme/uno/rtable.css +11 -1
- data/assets/theme/j1/modules/themeSwitcher/js/switcher.js +13 -12
- data/assets/theme/j1/modules/videoPlayer/tiktoc/README.md +1 -0
- data/assets/theme/j1/modules/videojs/assets/README.md +1 -0
- data/assets/theme/j1/modules/videojs/assets/icons/speedometer-medium.svg +35 -0
- data/assets/theme/j1/modules/videojs/css/font/VideoJS.ttf +0 -0
- data/assets/theme/j1/modules/videojs/css/font/VideoJS.woff +0 -0
- data/assets/theme/j1/modules/videojs/css/themes/uno.css +189 -42
- data/assets/theme/j1/modules/videojs/css/themes/uno.min.css +1 -1
- data/assets/theme/j1/modules/videojs/css/videojs.css +674 -316
- data/assets/theme/j1/modules/videojs/css/videojs.min.css +4 -3
- data/assets/theme/j1/modules/videojs/js/video.js +15893 -12288
- data/assets/theme/j1/modules/videojs/js/video.min.js +22 -23
- data/assets/theme/j1/modules/videojs/plugins/controls/aspect-ratio-panel/!examples/index.html +26 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/aspect-ratio-panel/LICENSE +19 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/aspect-ratio-panel/README.md +69 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/aspect-ratio-panel/css/aspect-ratio-panel.css +2 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/aspect-ratio-panel/css/aspect-ratio-panel.min.css +2 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/aspect-ratio-panel/js/aspect-ratio-panel.js +339 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/aspect-ratio-panel/js/aspect-ratio-panel.min.js +2 -0
- data/assets/theme/j1/modules/videojs/{js/plugins/controls/autocaption → plugins/controls/autocaption/js}/autocaption.js +0 -5
- data/assets/theme/j1/modules/videojs/{js/plugins/controls/hotkeys/examples → plugins/controls/hotkeys/!examples}/example.html +1 -1
- data/assets/theme/j1/modules/videojs/plugins/controls/persist-settings/!examples/index.html +25 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/persist-settings/LICENSE +19 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/persist-settings/README.md +90 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/persist-settings/js/videojs-persist.js +120 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/persist-settings/js/videojs-persist.min.js +2 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/playbackrate-adjuster/!examples/index.html +32 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/playbackrate-adjuster/LICENSE +19 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/playbackrate-adjuster/README.md +61 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/playbackrate-adjuster/js/playbackrate-adjuster.js +94 -0
- data/assets/theme/j1/modules/videojs/plugins/controls/playbackrate-adjuster/js/playbackrate-adjuster.min.js +20 -0
- data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/controls/skipbuttons/README.md +25 -11
- data/assets/theme/j1/modules/videojs/{css/plugins/controls → plugins/controls/zoom/css}/zoom.css +7 -6
- data/assets/theme/j1/modules/videojs/plugins/controls/zoom/css/zoom.min.css +22 -0
- data/assets/theme/j1/modules/videojs/{js/plugins/players/dm/examples → plugins/players/dm/!examples}/dailymotion-controls.html +4 -4
- data/assets/theme/j1/modules/videojs/{js/plugins/players/dm/examples → plugins/players/dm/!examples}/dailymotion-javascript.html +3 -3
- data/assets/theme/j1/modules/videojs/{js/plugins/players/dm/examples → plugins/players/dm/!examples}/dailymotion-playlist.html +3 -3
- data/assets/theme/j1/modules/videojs/{js/plugins/players/dm/examples → plugins/players/dm/!examples}/global-parameters.html +3 -3
- data/assets/theme/j1/modules/videojs/plugins/players/dm/!examples/simple.html +31 -0
- data/assets/theme/j1/modules/videojs/{js/plugins/players/dm/examples → plugins/players/dm/!examples}/switch.html +3 -3
- data/assets/theme/j1/modules/videojs/{js/plugins/players/dm → plugins/players/dm/js}/dailymotion.js +1 -1
- data/assets/theme/j1/modules/videojs/{js/plugins/players/vm/examples → plugins/players/vm/!examples}/index.html +3 -3
- data/assets/theme/j1/modules/videojs/{js/plugins/players/vm/examples → plugins/players/vm/!examples}/player/index.html +3 -3
- data/assets/theme/j1/modules/videojs/plugins/players/vm/!unused/vimeo.0.js +521 -0
- data/assets/theme/j1/modules/videojs/plugins/players/vm/!unused/vimeo.1.js +605 -0
- data/assets/theme/j1/modules/videojs/plugins/players/vm/!unused/vimeo.3.js +643 -0
- data/assets/theme/j1/modules/videojs/plugins/players/vm/!unused/vimeo.4.js +583 -0
- data/assets/theme/j1/modules/videojs/plugins/players/vm/!unused/vimeo.5.js +665 -0
- data/assets/theme/j1/modules/videojs/plugins/players/vm/!unused/vimeo.6.js +642 -0
- data/assets/theme/j1/modules/videojs/plugins/players/vm/!unused/vimeo.7.js +673 -0
- data/assets/theme/j1/modules/videojs/{js/plugins/players/vm/api → plugins/players/vm/api/js}/vimeo.js +1 -1
- data/assets/theme/j1/modules/videojs/{js/plugins/players/vm/api → plugins/players/vm/api/js}/vimeo.min.js +1 -1
- data/assets/theme/j1/modules/videojs/{js/plugins/players/vm → plugins/players/vm/js}/vimeo.js +4 -5
- data/assets/theme/j1/modules/videojs/plugins/players/vm/js/vimeo.min.js +28 -0
- data/assets/theme/j1/modules/videojs/plugins/players/wt/!unused/wistia.0.js +395 -0
- data/assets/theme/j1/modules/videojs/plugins/players/wt/!unused/wistia.1.js +401 -0
- data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/examples → plugins/players/yt/!examples}/global-parameters.html +5 -5
- data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/examples → plugins/players/yt/!examples}/simple.html +5 -5
- data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/examples → plugins/players/yt/!examples}/switch.html +5 -5
- data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/examples → plugins/players/yt/!examples}/youtube-controls.html +5 -5
- data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/examples → plugins/players/yt/!examples}/youtube-javascript.html +5 -5
- data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/examples → plugins/players/yt/!examples}/youtube-list.html +5 -5
- data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/examples → plugins/players/yt/!examples}/youtube-playlist.html +5 -5
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/README.md +5 -5
- data/lib/starter_web/_config.yml +1 -1
- data/lib/starter_web/_data/blocks/banner.yml +2 -2
- data/lib/starter_web/_data/modules/amplitude_playlists.yml +16 -1
- data/lib/starter_web/_data/modules/attics.yml +11 -0
- data/lib/starter_web/_data/modules/carousel.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/gallery.yml +3 -3
- data/lib/starter_web/_data/modules/defaults/masonry.yml +115 -22
- data/lib/starter_web/_data/modules/gallery.yml +225 -281
- data/lib/starter_web/_data/modules/masonry.yml +6 -0
- data/lib/starter_web/_data/modules/navigator_menu.yml +3 -3
- data/lib/starter_web/_data/resources.yml +16 -12
- data/lib/starter_web/_data/templates/feed.xml +1 -1
- data/lib/starter_web/_includes/attributes.asciidoc +7 -0
- data/lib/starter_web/_plugins/asciidoctor/videojs-block.rb +50 -30
- data/lib/starter_web/_plugins/asciidoctor/youtube-block.rb +37 -23
- data/lib/starter_web/_plugins/index/lunr.rb +1 -1
- data/lib/starter_web/assets/image/module/attic/1920x1280/alexander-redl.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/alexander-shatov.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/alexey-ruban.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/andrea-badino.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/bootstrap-modal.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/bp-miller.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/brad-neathery.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/brigitta-schneiter.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/build-with-gemini.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/clem-onojeghuo.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/crawford-jolly.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/eleni-afiontzi.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/fly-d.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/guillaume-bolduc.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/ideas-start-here-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/isaac-davis.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/j1-content-mockup-2.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/j1-content-mockup-3.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/j1-starter-mockup-1.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/john-schnobrich-2.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/josep-martins.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/josh-liu.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/kelly-sikkemal.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/kira-auf-der-heide.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/kristopher-roller.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/markus-spiske.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/martin-sanchez.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/material_symbols.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/matthaeus.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/melanie-deziel.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/milad-fakurian.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/mohammad-rahmani.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/nasa.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/quino-al-2.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/stories-ink-tattoo-care.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/towfiqu-barbhuiya.jpg +0 -0
- data/lib/starter_web/assets/image/page/tour/bootswatch-themes.jpg +0 -0
- data/lib/starter_web/assets/video/poster/vimeo/fall_2011.jpg +0 -0
- data/lib/starter_web/index.html +3 -2
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/panels/intro_panel/_includes/attributes.asciidoc +1 -1
- data/lib/starter_web/pages/public/tools/previewer/preview_bootstrap_theme.adoc +5 -5
- data/lib/starter_web/pages/public/tools/tester/app_tester_amplitudejs_yt.adoc +7 -3
- data/lib/starter_web/pages/public/tools/tester/app_tester_swiperjs.adoc +7 -3
- data/lib/starter_web/pages/public/tools/tester/videojs_macro_tester.adoc +297 -0
- data/lib/starter_web/pages/public/tour/_includes/attributes.asciidoc +1 -2
- data/lib/starter_web/pages/public/tour/_includes/documents/themes_bootstrap.asciidoc +1 -1
- data/lib/starter_web/pages/public/tour/asciidoc_extensions.adoc +7 -3
- data/lib/starter_web/pages/public/tour/bootstrap_themes.adoc +62 -7
- data/lib/starter_web/pages/public/tour/icon_fonts.adoc +4 -8
- data/lib/starter_web/pages/public/tour/modal_extentions.adoc +2 -2
- data/lib/starter_web/pages/public/tour/responsive_tables.adoc +21 -15
- data/lib/starter_web/pages/public/tour/typography.adoc +5 -5
- data/lib/starter_web/pages/public/tour/video_data.adoc +25 -5
- metadata +142 -118
- data/assets/data/swiper_app.2.html +0 -757
- data/assets/data/swiper_app.4.html +0 -769
- data/assets/theme/j1/modules/lightGallery/css/themes/uno/uno.css +0 -140
- data/assets/theme/j1/modules/lightGallery/css/themes/uno/uno.min.css +0 -19
- data/assets/theme/j1/modules/lightGallery/js/plugins/j1/j1-video.js +0 -402
- data/assets/theme/j1/modules/lightGallery/js/plugins/j1/j1-video.min.js +0 -7
- data/assets/theme/j1/modules/lightGallery/js/plugins/j1/lg-video.1.js +0 -585
- data/assets/theme/j1/modules/videojs/css/font/video-js-cdn.css +0 -2012
- data/assets/theme/j1/modules/videojs/css/plugins/controls/skipbuttons.0.css +0 -32
- data/assets/theme/j1/modules/videojs/css/plugins/controls/skipbuttons.1.css +0 -31
- data/assets/theme/j1/modules/videojs/css/plugins/controls/zoom.min.css +0 -21
- data/assets/theme/j1/modules/videojs/js/plugins/players/dm/examples/simple.html +0 -20
- data/assets/theme/j1/modules/videojs/js/plugins/players/vm/vimeo.min.js +0 -16
- data/assets/theme/j1/modules/videojs/js/plugins/players/wt/api/src/WistiaPlayer.ts +0 -1617
- data/lib/starter_web/_data/modules/gallery_app.yml +0 -1002
- data/lib/starter_web/_data/modules/gallery_playlists.yml +0 -534
- data/lib/starter_web/assets/image/module/attic/1920x1280/alina-grubnyak.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/bruno-figueiredo.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/harpal-singh.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/hayden-mills-2.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/j1-content-mockup-1.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/recha-oktaviani.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/1920x1280/tiny_desk.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/ideas-start-here-1920x1280-bw.jpg +0 -0
- data/lib/starter_web/assets/image/module/attic/ideas-start-here-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/video/poster/vimeo/stay_colorful.jpg +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/animation-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/customize-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/dynamic-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/facebook-icon.svg +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/googleplus-icon.svg +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/html5-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/linked-in.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/module-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/play-button-hover.svg +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/play-button.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/play-button.svg +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/responsive-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/thumb-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/touch-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/twitter-icon.svg +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/twitter.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/video1-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/zoom-w.png +0 -0
- /data/assets/theme/j1/modules/lightGallery/css/{themes → theme}/uno/icons/zoom.png +0 -0
- /data/assets/theme/j1/modules/videoPlayer/dailymotion/js/{!readme → README.md} +0 -0
- /data/assets/theme/j1/modules/videoPlayer/tiktoc/{js/player.min.js → player.min.js} +0 -0
- /data/assets/theme/j1/modules/videoPlayer/vimeo/js/{!readme → README.md} +0 -0
- /data/assets/theme/j1/modules/videoPlayer/wistia/js/{!readme → README.md} +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/controls/autocaption/LICENSE +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/controls/autocaption/README.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/autocaption → plugins/controls/autocaption/js}/autocaption.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/controls/hotkeys/LICENSE.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/controls/hotkeys/README.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/hotkeys → plugins/controls/hotkeys/js}/hotkeys.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/hotkeys → plugins/controls/hotkeys/js}/hotkeys.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{css/plugins/controls → plugins/controls/skipbuttons/css}/skipbuttons.css +0 -0
- /data/assets/theme/j1/modules/videojs/{css/plugins/controls → plugins/controls/skipbuttons/css}/skipbuttons.min.css +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/skipbuttons → plugins/controls/skipbuttons/js}/skipbuttons.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/skipbuttons → plugins/controls/skipbuttons/js}/skipbuttons.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/zoom/examples → plugins/controls/zoom/!examples}/index.html +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/zoom/examples → plugins/controls/zoom/!examples}/index.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/zoom/examples → plugins/controls/zoom/!examples}/styles.css +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/controls/zoom/LICENSE.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/controls/zoom/README.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/zoom → plugins/controls/zoom/js}/zoom.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/controls/zoom → plugins/controls/zoom/js}/zoom.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/players/dm/LICENSE +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/dm/doc → plugins/players/dm}/README.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/players/dm/api/LICENSE +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/dm/api/doc → plugins/players/dm/api}/README.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/dm/api → plugins/players/dm/api/js}/dailymotion.sdk.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/dm/api → plugins/players/dm/api/js}/dailymotion.sdk.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/players/dm/icon/scalable/dailymotion.svg +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/dm → plugins/players/dm/js}/dailymotion.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/players/vm/LICENSE +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/vm/doc → plugins/players/vm}/README.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/vm/api/doc → plugins/players/vm/api}/README.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/players/vm/api/css/embed.player.css +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/players/vm/api/css/embed.player.uno.css +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/players/vm/api/css/player.css +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/wt/doc → plugins/players/wt}/README.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/wt/api/doc/Readme.txt → plugins/players/wt/api/README.md} +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/wt/api → plugins/players/wt/api/js}/wistia.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/wt → plugins/players/wt/js}/wistia.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/wt → plugins/players/wt/js}/wistia.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/v3.0.0 → plugins/players/yt/!v3.0.0}/youtube.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/v3.0.0 → plugins/players/yt/!v3.0.0}/youtube.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins → plugins}/players/yt/LICENSE +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/doc → plugins/players/yt}/README.md +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/yt/api → plugins/players/yt/api/js}/youtube.min.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/yt → plugins/players/yt/js}/youtube.js +0 -0
- /data/assets/theme/j1/modules/videojs/{js/plugins/players/yt → plugins/players/yt/js}/youtube.min.js +0 -0
@@ -4,7 +4,7 @@
|
|
4
4
|
<head>
|
5
5
|
<meta charset="utf-8">
|
6
6
|
<title>videojs-vimeo Demo</title>
|
7
|
-
<link rel="stylesheet" href="
|
7
|
+
<link rel="stylesheet" href="../../../../css/videojs.min.css">
|
8
8
|
</head>
|
9
9
|
<body>
|
10
10
|
<video
|
@@ -26,8 +26,8 @@
|
|
26
26
|
>
|
27
27
|
</video>
|
28
28
|
|
29
|
-
<script src="
|
30
|
-
<script src="
|
29
|
+
<script src="../../../../js/video.js"></script>
|
30
|
+
<script src="../js/vimeo.js"></script>
|
31
31
|
|
32
32
|
</body>
|
33
33
|
|
@@ -4,7 +4,7 @@
|
|
4
4
|
<head>
|
5
5
|
<meta charset="utf-8">
|
6
6
|
<title>Vimeo Player Demo</title>
|
7
|
-
<link rel="stylesheet" href="
|
7
|
+
<link rel="stylesheet" href="../../../../../css/videojs.min.css">
|
8
8
|
</head>
|
9
9
|
|
10
10
|
<body>
|
@@ -21,7 +21,7 @@
|
|
21
21
|
|
22
22
|
<!-- script src="../../../../../js/video.js"></script -->
|
23
23
|
<!-- script src="../vimeo.js"></script -->
|
24
|
-
<script src="
|
24
|
+
<script src="../../../../../../jquery/js/jquery.js"></script>
|
25
25
|
<!-- script src="../../../../../../log4javascript/js/log4javascript.js"></script -->
|
26
26
|
|
27
27
|
<script>
|
@@ -40,4 +40,4 @@
|
|
40
40
|
</script>
|
41
41
|
</body>
|
42
42
|
|
43
|
-
</html>
|
43
|
+
</html>
|
@@ -0,0 +1,521 @@
|
|
1
|
+
/*
|
2
|
+
# -----------------------------------------------------------------------------
|
3
|
+
# ~/assets/theme/j1/modules/videojs/js/vimeo/vimeo.js
|
4
|
+
# Provides Vimeo Playback Technology (Tech) for Video.js V8 and newer
|
5
|
+
#
|
6
|
+
# Product/Info:
|
7
|
+
# http://jekyll.one
|
8
|
+
#
|
9
|
+
# Copyright (C) 2023-2025 Juergen Adams
|
10
|
+
#
|
11
|
+
# J1 Theme is licensed under MIT License.
|
12
|
+
# See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE
|
13
|
+
# -----------------------------------------------------------------------------
|
14
|
+
*/
|
15
|
+
|
16
|
+
/*global define, VM*/
|
17
|
+
(function (root, factory) {
|
18
|
+
if(typeof exports==='object' && typeof module!=='undefined') {
|
19
|
+
var videojs = require('video.js');
|
20
|
+
module.exports = factory(videojs.default || videojs);
|
21
|
+
} else if(typeof define === 'function' && define.amd) {
|
22
|
+
define(['videojs'], function(videojs){
|
23
|
+
return (root.Vimeo = factory(videojs));
|
24
|
+
});
|
25
|
+
} else {
|
26
|
+
root.Vimeo = factory(root.videojs);
|
27
|
+
}
|
28
|
+
}(this, function(videojs) {
|
29
|
+
'use strict';
|
30
|
+
|
31
|
+
var _isOnMobile = videojs.browser.IS_IOS || videojs.browser.IS_ANDROID;
|
32
|
+
var Tech = videojs.getTech('Tech');
|
33
|
+
var cssInjected = false;
|
34
|
+
|
35
|
+
class Vimeo extends Tech {
|
36
|
+
|
37
|
+
/**
|
38
|
+
* Vimeo - Wrapper for Video Player API
|
39
|
+
*
|
40
|
+
* @param {Object=} options Object of option names and values
|
41
|
+
* @param {Function=} ready Ready callback function
|
42
|
+
* @extends Tech
|
43
|
+
* @class Vimeo
|
44
|
+
*/
|
45
|
+
constructor(options, ready) {
|
46
|
+
super(options, ready);
|
47
|
+
|
48
|
+
this.setPoster(options.poster);
|
49
|
+
|
50
|
+
// Set the vjs-vimeo class to the player
|
51
|
+
// parent is not set yet so we have to wait a tick
|
52
|
+
var vm = this;
|
53
|
+
setTimeout(function() {
|
54
|
+
if (this.el_) {
|
55
|
+
this.el_.parentNode.className += ' vjs-vimeo';
|
56
|
+
|
57
|
+
if (_isOnMobile) {
|
58
|
+
this.el_.parentNode.className += ' vjs-vimeo-mobile';
|
59
|
+
}
|
60
|
+
|
61
|
+
if (Vimeo.isSdkReady) {
|
62
|
+
vm.initVMPlayer();
|
63
|
+
} else {
|
64
|
+
Vimeo.sdkReadyQueue.push(vm);
|
65
|
+
}
|
66
|
+
}
|
67
|
+
}.bind(this));
|
68
|
+
|
69
|
+
} // END Constructor
|
70
|
+
|
71
|
+
initVMPlayer() {
|
72
|
+
const vimeoOptions = {
|
73
|
+
url: this.options_.source.src,
|
74
|
+
byline: false,
|
75
|
+
portrait: false,
|
76
|
+
title: false
|
77
|
+
};
|
78
|
+
|
79
|
+
if (this.options_.autoplay) {
|
80
|
+
vimeoOptions.autoplay = true;
|
81
|
+
}
|
82
|
+
if (this.options_.height) {
|
83
|
+
vimeoOptions.height = this.options_.height;
|
84
|
+
}
|
85
|
+
if (this.options_.width) {
|
86
|
+
vimeoOptions.width = this.options_.width;
|
87
|
+
}
|
88
|
+
if (this.options_.maxheight) {
|
89
|
+
vimeoOptions.maxheight = this.options_.maxheight;
|
90
|
+
}
|
91
|
+
if (this.options_.maxwidth) {
|
92
|
+
vimeoOptions.maxwidth = this.options_.maxwidth;
|
93
|
+
}
|
94
|
+
if (this.options_.loop) {
|
95
|
+
vimeoOptions.loop = this.options_.loop;
|
96
|
+
}
|
97
|
+
if (this.options_.color) {
|
98
|
+
// vimeo is the only API on earth to reject hex color with leading #
|
99
|
+
vimeoOptions.color = this.options_.color.replace(/^#/, '');
|
100
|
+
}
|
101
|
+
|
102
|
+
this.vmPlayer = new VM.Player(this.el(), vimeoOptions);
|
103
|
+
this.initVimeoState();
|
104
|
+
|
105
|
+
// setup API events
|
106
|
+
//
|
107
|
+
// ['play', 'playing', 'pause', 'ended', 'timeupdate', 'progress', 'seeking', 'seeked'].forEach(e => {
|
108
|
+
['play', 'playing', 'pause', 'ended', 'loaded', 'timeupdate', 'progress', 'seeking', 'seeked', 'ready'].forEach(e => {
|
109
|
+
|
110
|
+
this.vmPlayer.on(e, (progress) => {
|
111
|
+
if (this._vimeoState.progress.duration !== progress.duration) {
|
112
|
+
this.trigger('durationchange');
|
113
|
+
}
|
114
|
+
this._vimeoState.progress = progress;
|
115
|
+
this.trigger(e);
|
116
|
+
});
|
117
|
+
|
118
|
+
this.vmPlayer.on(e, (ready) => {
|
119
|
+
this.vmPlayer.getVideoEmbedCode()
|
120
|
+
.then (function(embedCode) {
|
121
|
+
var code = embedCode
|
122
|
+
})
|
123
|
+
.catch(function(error) {
|
124
|
+
console.err('Vimeo API: an error occurred');
|
125
|
+
});
|
126
|
+
});
|
127
|
+
|
128
|
+
this.vmPlayer.on(e, (timeupdate) => {
|
129
|
+
if (this._vimeoState.progress.duration !== progress.duration) {
|
130
|
+
this.trigger('durationchange');
|
131
|
+
}
|
132
|
+
this._vimeoState.progress = progress;
|
133
|
+
this.trigger(e);
|
134
|
+
});
|
135
|
+
|
136
|
+
this.vmPlayer.on('pause', () => this._vimeoState.playing = false);
|
137
|
+
|
138
|
+
this.vmPlayer.on('play', () => {
|
139
|
+
const bigPlayButton = document.getElementsByClassName("vjs-big-play-button");
|
140
|
+
|
141
|
+
// jadams: just a try
|
142
|
+
// ------------------------------------------------------------------
|
143
|
+
// for (var i = 0; i < bigPlayButton.length; ++i) {
|
144
|
+
// bigPlayButton[i].style.display = 'none';
|
145
|
+
// }
|
146
|
+
|
147
|
+
this._vimeoState.playing = true;
|
148
|
+
this._vimeoState.ended = false;
|
149
|
+
});
|
150
|
+
|
151
|
+
});
|
152
|
+
|
153
|
+
// jadams: just a try
|
154
|
+
// ---------------------------------------------------------------------
|
155
|
+
// this.vmPlayer.on('playing', () => {
|
156
|
+
// const vjsControlBar = document.getElementsByClassName("vjs-control-bar");
|
157
|
+
//
|
158
|
+
// for (var i = 0; i < vjsControlBar.length; ++i) {
|
159
|
+
// vjsControlBar[i].style.display = 'block';
|
160
|
+
// }
|
161
|
+
// });
|
162
|
+
|
163
|
+
this.vmPlayer.on('ended', () => {
|
164
|
+
this._vimeoState.playing = false;
|
165
|
+
this._vimeoState.ended = true;
|
166
|
+
});
|
167
|
+
|
168
|
+
this.vmPlayer.on('volumechange', (v) => this._vimeoState.volume = v);
|
169
|
+
this.vmPlayer.on('error', e => this.trigger('error', e));
|
170
|
+
|
171
|
+
this.triggerReady();
|
172
|
+
}
|
173
|
+
|
174
|
+
initVimeoState() {
|
175
|
+
const state = this._vimeoState = {
|
176
|
+
ended: false,
|
177
|
+
playing: false,
|
178
|
+
volume: 0,
|
179
|
+
progress: {
|
180
|
+
seconds: 0,
|
181
|
+
percent: 0,
|
182
|
+
duration: 0
|
183
|
+
}
|
184
|
+
};
|
185
|
+
|
186
|
+
this.vmPlayer.getCurrentTime().then(time => state.progress.seconds = time);
|
187
|
+
this.vmPlayer.getDuration().then(time => state.progress.duration = time);
|
188
|
+
this.vmPlayer.getPaused().then(paused => state.playing = !paused);
|
189
|
+
this.vmPlayer.getVolume().then(volume => state.volume = volume);
|
190
|
+
}
|
191
|
+
|
192
|
+
createEl() {
|
193
|
+
// jadams: videojs.createEl() is deprecated
|
194
|
+
// const div = videojs.createEl('div', {
|
195
|
+
const div = videojs.dom.createEl('div', {
|
196
|
+
id: this.options_.techId
|
197
|
+
});
|
198
|
+
|
199
|
+
div.style.cssText = 'width:100%;height:100%;top:0;left:0;position:absolute';
|
200
|
+
div.className = 'vjs-vimeo';
|
201
|
+
|
202
|
+
return div;
|
203
|
+
}
|
204
|
+
|
205
|
+
controls() {
|
206
|
+
return true;
|
207
|
+
}
|
208
|
+
|
209
|
+
supportsFullScreen() {
|
210
|
+
return true;
|
211
|
+
}
|
212
|
+
|
213
|
+
src() {
|
214
|
+
// @note: Not sure why this is needed but videojs requires it
|
215
|
+
return this.options_.source;
|
216
|
+
// return '//player.vimeo.com/api/player.js';
|
217
|
+
}
|
218
|
+
|
219
|
+
currentSrc() {
|
220
|
+
return this.options_.source.src;
|
221
|
+
}
|
222
|
+
|
223
|
+
// @note setSrc is used in other usecases (Vimeo, Html) it doesn't seem required here
|
224
|
+
// setSrc() {}
|
225
|
+
|
226
|
+
currentTime() {
|
227
|
+
return this._vimeoState.progress.seconds;
|
228
|
+
}
|
229
|
+
|
230
|
+
setCurrentTime(time) {
|
231
|
+
this.vmPlayer.setCurrentTime(time);
|
232
|
+
}
|
233
|
+
|
234
|
+
volume() {
|
235
|
+
return this._vimeoState.volume;
|
236
|
+
}
|
237
|
+
|
238
|
+
setVolume(volume) {
|
239
|
+
return this.vmPlayer.setVolume(volume);
|
240
|
+
}
|
241
|
+
|
242
|
+
duration() {
|
243
|
+
return this._vimeoState.progress.duration;
|
244
|
+
}
|
245
|
+
|
246
|
+
buffered() {
|
247
|
+
const progress = this._vimeoState.progress;
|
248
|
+
|
249
|
+
// jadams: videojs.createTimeRange is deprecated
|
250
|
+
// return videojs.createTimeRange(0, progress.percent * progress.duration);
|
251
|
+
return videojs.time.createTimeRanges(0, progress.percent * progress.duration);
|
252
|
+
}
|
253
|
+
|
254
|
+
paused() {
|
255
|
+
return !this._vimeoState.playing;
|
256
|
+
}
|
257
|
+
|
258
|
+
pause() {
|
259
|
+
this.vmPlayer.pause();
|
260
|
+
}
|
261
|
+
|
262
|
+
play() {
|
263
|
+
this.vmPlayer.play();
|
264
|
+
}
|
265
|
+
|
266
|
+
muted() {
|
267
|
+
return this._vimeoState.volume === 0;
|
268
|
+
}
|
269
|
+
|
270
|
+
ended() {
|
271
|
+
return this._vimeoState.ended;
|
272
|
+
}
|
273
|
+
|
274
|
+
currentTime() {
|
275
|
+
return this.vmPlayer ? this.vmPlayer.getCurrentTime() : 0;
|
276
|
+
}
|
277
|
+
|
278
|
+
setCurrentTime(seconds) {
|
279
|
+
if (this.lastState === vmPlayer.getPaused()) {
|
280
|
+
this.timeBeforeSeek = this.currentTime();
|
281
|
+
}
|
282
|
+
|
283
|
+
if (!this.isSeeking) {
|
284
|
+
this.wasPausedBeforeSeek = this.paused();
|
285
|
+
}
|
286
|
+
|
287
|
+
this.vmPlayer.seekTo(seconds, true);
|
288
|
+
this.trigger('timeupdate');
|
289
|
+
this.trigger('seeking');
|
290
|
+
this.isSeeking = true;
|
291
|
+
|
292
|
+
// A seek event during pause does not return an event to trigger a seeked event,
|
293
|
+
// so run an interval timer to look for the currentTime to change
|
294
|
+
if (this.lastState === vmPlayer.getPaused() && this.timeBeforeSeek !== seconds) {
|
295
|
+
clearInterval(this.checkSeekedInPauseInterval);
|
296
|
+
this.checkSeekedInPauseInterval = setInterval(function() {
|
297
|
+
if (this.lastState !== vmPlayer.getPaused() || !this.isSeeking) {
|
298
|
+
// If something changed while we were waiting for the currentTime to change,
|
299
|
+
// clear the interval timer
|
300
|
+
clearInterval(this.checkSeekedInPauseInterval);
|
301
|
+
} else if (this.currentTime() !== this.timeBeforeSeek) {
|
302
|
+
this.trigger('timeupdate');
|
303
|
+
this.onSeeked();
|
304
|
+
}
|
305
|
+
}.bind(this), 250);
|
306
|
+
}
|
307
|
+
}
|
308
|
+
|
309
|
+
seeking() {
|
310
|
+
return this.isSeeking;
|
311
|
+
}
|
312
|
+
|
313
|
+
// jadams, 2023-10-01: videojs.createTimeRange() deprecated in VideoJS 9
|
314
|
+
//
|
315
|
+
seekable() {
|
316
|
+
if(!this.vmPlayer) {
|
317
|
+
// return videojs.createTimeRange();
|
318
|
+
return videojs.time.createTimeRanges();
|
319
|
+
}
|
320
|
+
// return videojs.createTimeRange(0, this.vmPlayer.getDuration());
|
321
|
+
return videojs.time.createTimeRanges(0, this.vmPlayer.getDuration());
|
322
|
+
}
|
323
|
+
|
324
|
+
onSeeked() {
|
325
|
+
clearInterval(this.checkSeekedInPauseInterval);
|
326
|
+
this.isSeeking = false;
|
327
|
+
|
328
|
+
if (this.wasPausedBeforeSeek) {
|
329
|
+
this.pause();
|
330
|
+
}
|
331
|
+
|
332
|
+
this.trigger('seeked');
|
333
|
+
}
|
334
|
+
|
335
|
+
playbackRate() {
|
336
|
+
return this.vmPlayer ? this.vmPlayer.getPlaybackRate() : 1;
|
337
|
+
}
|
338
|
+
|
339
|
+
setPlaybackRate(suggestedRate) {
|
340
|
+
if (!this.vmPlayer) {
|
341
|
+
return;
|
342
|
+
}
|
343
|
+
|
344
|
+
this.vmPlayer.setPlaybackRate(suggestedRate);
|
345
|
+
}
|
346
|
+
|
347
|
+
duration() {
|
348
|
+
return this.vmPlayer ? this.vmPlayer.getDuration() : 0;
|
349
|
+
}
|
350
|
+
|
351
|
+
// Vimeo does has a mute API and native controls aren't being used,
|
352
|
+
// so setMuted doesn't really make sense and shouldn't be called.
|
353
|
+
// setMuted(mute) {}
|
354
|
+
|
355
|
+
}
|
356
|
+
|
357
|
+
Vimeo.prototype.featuresTimeupdateEvents = true;
|
358
|
+
|
359
|
+
Vimeo.isSupported = function() {
|
360
|
+
return true;
|
361
|
+
};
|
362
|
+
|
363
|
+
// Add Source Handler pattern functions to this tech
|
364
|
+
Tech.withSourceHandlers(Vimeo);
|
365
|
+
|
366
|
+
Vimeo.nativeSourceHandler = {};
|
367
|
+
|
368
|
+
/**
|
369
|
+
* Check if Vimeo can play the given videotype
|
370
|
+
* @param {String} type The mimetype to check
|
371
|
+
* @return {String} 'maybe', or '' (empty string)
|
372
|
+
*/
|
373
|
+
Vimeo.nativeSourceHandler.canPlayType = function(source) {
|
374
|
+
if (source === 'video/vimeo') {
|
375
|
+
return 'maybe';
|
376
|
+
}
|
377
|
+
|
378
|
+
return '';
|
379
|
+
};
|
380
|
+
|
381
|
+
/*
|
382
|
+
* Check Vimeo can handle the source natively
|
383
|
+
*
|
384
|
+
* @param {Object} source The source object
|
385
|
+
* @return {String} 'maybe', or '' (empty string)
|
386
|
+
* @note: Copied over from YouTube — not sure this is relevant
|
387
|
+
*/
|
388
|
+
Vimeo.nativeSourceHandler.canHandleSource = function(source) {
|
389
|
+
if (source.type) {
|
390
|
+
return Vimeo.nativeSourceHandler.canPlayType(source.type);
|
391
|
+
} else if (source.src) {
|
392
|
+
return Vimeo.nativeSourceHandler.canPlayType(source.src);
|
393
|
+
}
|
394
|
+
|
395
|
+
return '';
|
396
|
+
};
|
397
|
+
|
398
|
+
// @note: Copied over from YouTube — not sure this is relevant
|
399
|
+
Vimeo.nativeSourceHandler.handleSource = function(source, tech) {
|
400
|
+
tech.src(source.src);
|
401
|
+
};
|
402
|
+
|
403
|
+
// @note: Copied over from YouTube — not sure this is relevant
|
404
|
+
Vimeo.nativeSourceHandler.dispose = function() { };
|
405
|
+
|
406
|
+
Vimeo.registerSourceHandler(Vimeo.nativeSourceHandler);
|
407
|
+
|
408
|
+
// Include the version number
|
409
|
+
Vimeo.VERSION = '1.0.0';
|
410
|
+
|
411
|
+
Vimeo.sdkReadyQueue = [];
|
412
|
+
|
413
|
+
// Since the iframe can't be touched using Vimeo's way of embedding,
|
414
|
+
// let's add a new styling rule to have the same style as `vjs-tech`
|
415
|
+
//
|
416
|
+
function injectCss() {
|
417
|
+
if (cssInjected) {
|
418
|
+
return;
|
419
|
+
}
|
420
|
+
cssInjected = true;
|
421
|
+
|
422
|
+
// const css = `
|
423
|
+
// .vjs-vimeo iframe {
|
424
|
+
// position: absolute;
|
425
|
+
// top: 0;
|
426
|
+
// left: 0;
|
427
|
+
// width: 100%;
|
428
|
+
// height: 100%;
|
429
|
+
// }
|
430
|
+
// .vjs-vimeo .vjs-iframe-blocker { display: none; }
|
431
|
+
// .vjs-vimeo.vjs-user-inactive .vjs-iframe-blocker { display: block; }
|
432
|
+
// .vjs-vimeo .vjs-poster { background-size: cover; }'
|
433
|
+
// .vjs-vimeo-mobile .vjs-big-play-button { display: none; }
|
434
|
+
//
|
435
|
+
// .vjs-vimeo .vjs-duration { display: none; }
|
436
|
+
// .vjs-vimeo .vjs-remaining-time { display: none; }
|
437
|
+
//
|
438
|
+
// .vjs-vimeo .vjs-big-play-button { display: block; }
|
439
|
+
// .player .vp-player-ui-overlays { display: none !important; }
|
440
|
+
// `;
|
441
|
+
|
442
|
+
const css = `
|
443
|
+
.vjs-vimeo iframe {
|
444
|
+
position: absolute;
|
445
|
+
top: 0;
|
446
|
+
left: 0;
|
447
|
+
width: 100%;
|
448
|
+
height: 100%;
|
449
|
+
}
|
450
|
+
.vjs-vimeo .vjs-iframe-blocker { display: none; }
|
451
|
+
.vjs-vimeo.vjs-user-inactive .vjs-iframe-blocker { display: block; }
|
452
|
+
.vjs-vimeo .vjs-poster { background-size: cover; }'
|
453
|
+
.vjs-vimeo-mobile .vjs-big-play-button { display: none; }
|
454
|
+
|
455
|
+
.vjs-vimeo .vjs-duration { display: none; }
|
456
|
+
.vjs-vimeo .vjs-remaining-time { display: none; }
|
457
|
+
`;
|
458
|
+
|
459
|
+
const head = document.head || document.getElementsByTagName('head')[0];
|
460
|
+
const style = document.createElement('style');
|
461
|
+
style.type = 'text/css';
|
462
|
+
|
463
|
+
if (style.styleSheet) {
|
464
|
+
style.styleSheet.cssText = css;
|
465
|
+
} else {
|
466
|
+
style.appendChild(document.createTextNode(css));
|
467
|
+
}
|
468
|
+
|
469
|
+
head.appendChild(style);
|
470
|
+
}
|
471
|
+
|
472
|
+
function apiLoaded() {
|
473
|
+
Vimeo.isSdkReady = true;
|
474
|
+
|
475
|
+
for (var i = 0; i < Vimeo.sdkReadyQueue.length; ++i) {
|
476
|
+
Vimeo.sdkReadyQueue[i].initVMPlayer();
|
477
|
+
}
|
478
|
+
}
|
479
|
+
|
480
|
+
function loadScript(src, callback) {
|
481
|
+
var loaded = false;
|
482
|
+
var tag = document.createElement('script');
|
483
|
+
var firstScriptTag = document.getElementsByTagName('script')[0];
|
484
|
+
if (!firstScriptTag) {
|
485
|
+
// when loaded in jest without jsdom setup it doesn't get any element.
|
486
|
+
// In jest it doesn't really make sense to do anything, because no one is watching dailymotion in jest
|
487
|
+
return;
|
488
|
+
}
|
489
|
+
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
|
490
|
+
tag.onload = function () {
|
491
|
+
if (!loaded) {
|
492
|
+
loaded = true;
|
493
|
+
callback();
|
494
|
+
}
|
495
|
+
};
|
496
|
+
tag.onreadystatechange = function () {
|
497
|
+
if (!loaded && (this.readyState === 'complete' || this.readyState === 'loaded')) {
|
498
|
+
loaded = true;
|
499
|
+
callback();
|
500
|
+
}
|
501
|
+
};
|
502
|
+
tag.src = src;
|
503
|
+
}
|
504
|
+
|
505
|
+
// document ready
|
506
|
+
//
|
507
|
+
if (typeof document !== 'undefined') {
|
508
|
+
// load script local because of NemeSpace conflicts (Vimeo -> VM)
|
509
|
+
loadScript('/assets/theme/j1/modules/videojs/js/plugins/vm/api/vimeo.min.js', apiLoaded);
|
510
|
+
// loadScript('https://player.vimeo.com/api/player.js', apiLoaded);
|
511
|
+
injectCss();
|
512
|
+
}
|
513
|
+
|
514
|
+
// Older versions of VJS5 doesn't have the registerTech function
|
515
|
+
if (typeof videojs.registerTech !== 'undefined') {
|
516
|
+
videojs.registerTech('Vimeo', Vimeo);
|
517
|
+
} else {
|
518
|
+
videojs.registerComponent('Vimeo', Vimeo);
|
519
|
+
}
|
520
|
+
|
521
|
+
}));
|