1
0
mirror of https://github.com/webslides/WebSlides.git synced 2025-09-21 10:21:36 +02:00

Compare commits

..

1 Commits

Author SHA1 Message Date
dependabot[bot]
149fd94232 Bump webpack-dev-server from 2.11.3 to 3.1.11
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 2.11.3 to 3.1.11.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v2.11.3...v3.1.11)

Signed-off-by: dependabot[bot] <support@github.com>
2019-10-30 07:32:44 +00:00
8 changed files with 1029 additions and 353 deletions

1340
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -54,7 +54,7 @@
"smart-banner-webpack-plugin": "^3.0.1",
"style-loader": "^0.19.1",
"webpack": "^3.6.0",
"webpack-dev-server": "^2.8.2"
"webpack-dev-server": "^3.1.11"
},
"scripts": {
"prebuild": "rimraf static/js/webslide*",

View File

@@ -19,7 +19,7 @@ const PLUGINS = {
'nav': Plugins.Navigation,
'scroll': Plugins.Scroll,
'touch': Plugins.Touch,
'media': Plugins.Media,
'video': Plugins.Video,
'youtube': Plugins.YouTube,
'zoom': Plugins.Zoom
};
@@ -315,7 +315,6 @@ export default class WebSlides {
DOM.fireEvent(this.el, 'ws:slide-change', {
slides: this.maxSlide_,
slideEl: slide.el,
currentSlide0: this.currentSlideI_,
currentSlide: this.currentSlideI_ + 1
});

View File

@@ -6,7 +6,7 @@ import Keyboard from './keyboard';
import Navigation from './navigation';
import Scroll from './scroll';
import Touch from './touch';
import Media from './media';
import Video from './video';
import YouTube from './youtube';
import Zoom from './zoom';
@@ -19,7 +19,7 @@ export default {
Navigation,
Scroll,
Touch,
Media,
Video,
YouTube,
Zoom
};

View File

@@ -5,7 +5,7 @@ import {default as Slide, Events as SlideEvents} from '../modules/slide';
* Video plugin. Video plugin that allows to autoplay videos once the slide gets
* active.
*/
export default class Media {
export default class Video {
/**
* @param {WebSlides} wsInstance The WebSlides instance.
* @constructor
@@ -17,24 +17,24 @@ export default class Media {
*/
this.ws_ = wsInstance;
const medias = DOM.toArray(this.ws_.el.querySelectorAll('video,audio'));
const videos = DOM.toArray(this.ws_.el.querySelectorAll('video'));
if (medias.length) {
medias.forEach(media => {
if (!media.hasAttribute('autoplay')) {
if (videos.length) {
videos.forEach(video => {
if (!video.hasAttribute('autoplay')) {
return;
}
media.removeAttribute('autoplay');
media.pause();
media.currentTime = 0;
const {i} = Slide.getSectionFromEl(media);
video.removeAttribute('autoplay');
video.pause();
video.currentTime = 0;
const {i} = Slide.getSectionFromEl(video);
const slide = wsInstance.slides[i - 1];
slide.media = media;
slide.video = video;
slide.el.addEventListener(SlideEvents.ENABLE, Media.onSectionEnabled);
slide.el.addEventListener(SlideEvents.DISABLE, Media.onSectionDisabled);
slide.el.addEventListener(SlideEvents.ENABLE, Video.onSectionEnabled);
slide.el.addEventListener(SlideEvents.DISABLE, Video.onSectionDisabled);
});
}
}
@@ -44,7 +44,7 @@ export default class Media {
* @param {CustomEvent} event
*/
static onSectionEnabled(event) {
event.detail.slide.media.play();
event.detail.slide.video.play();
}
/**
@@ -52,6 +52,6 @@ export default class Media {
* @param {CustomEvent} event
*/
static onSectionDisabled(event) {
event.detail.slide.media.pause();
event.detail.slide.video.pause();
}
}

View File

@@ -30,7 +30,6 @@ webslides.js will add .ws-ready automatically. Don't worry :) -- */
height: 100vh;
overflow-x: hidden;
overflow-y: scroll;
scrollbar-width: none; // sass-lint:disable-line no-misspelled-properties
&::-webkit-scrollbar {
display: none;

View File

@@ -51,7 +51,7 @@ test('Should have correct properties', () => {
expect(webslides.plugins.nav).toBeDefined();
expect(webslides.plugins.scroll).toBeDefined();
expect(webslides.plugins.touch).toBeDefined();
expect(webslides.plugins.media).toBeDefined();
expect(webslides.plugins.video).toBeDefined();
expect(webslides.plugins.youtube).toBeDefined();
expect(webslides.plugins.zoom).toBeDefined();

View File

@@ -1,4 +1,4 @@
import Video from '../../src/js/plugins/media';
import Video from '../../src/js/plugins/video';
import DOM from '../../src/js/utils/dom';
beforeAll(() => {