decktape/plugins/impress.js

38 lines
779 B
JavaScript
Raw Normal View History

2017-08-21 01:43:32 +03:00
exports.create = page => new Impress(page);
2017-08-21 01:43:32 +03:00
class Impress {
2015-06-29 23:56:32 +03:00
2017-08-21 01:43:32 +03:00
constructor(page) {
this.page = page;
}
getName() {
return 'Impress JS';
}
isActive() {
return this.page.evaluate(_ => {
if (typeof impress === 'function') {
return true;
}
if (document.getElementById('impress')) {
console.log('Impress JS plugin isn\'t compatible with impress.js version < 0.3.0');
}
return false;
});
}
slideCount() {
return this.page.evaluate(_ =>
document.querySelectorAll('#impress .step, #impress .substep').length);
}
nextSlide() {
return this.page.evaluate(_ => impress().next());
}
currentSlideIndex() {
return this.page.evaluate(_ => window.location.hash.replace(/^#\/?/, ''));
}
}