🚨 breaking change; move all compiled assets to /dist

This commit is contained in:
Hakim El Hattab 2020-03-06 19:58:40 +01:00
parent 027dc259da
commit 608a7577bd
23 changed files with 362 additions and 40 deletions

View File

@ -14,9 +14,9 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="css/reset.css"> <link rel="stylesheet" href="dist/reset.css">
<link rel="stylesheet" href="css/reveal.css"> <link rel="stylesheet" href="dist/reveal.css">
<link rel="stylesheet" href="css/theme/black.css" id="theme"> <link rel="stylesheet" href="dist/theme/black.css" id="theme">
<!-- Theme used for syntax highlighting of code --> <!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="lib/css/monokai.css"> <link rel="stylesheet" href="lib/css/monokai.css">
@ -26,7 +26,7 @@
var link = document.createElement( 'link' ); var link = document.createElement( 'link' );
link.rel = 'stylesheet'; link.rel = 'stylesheet';
link.type = 'text/css'; link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? 'css/print/pdf.css' : 'css/print/paper.css'; link.href = window.location.search.match( /print-pdf/gi ) ? 'dist/print/pdf.css' : 'dist/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link ); document.getElementsByTagName( 'head' )[0].appendChild( link );
</script> </script>
</head> </head>
@ -406,7 +406,7 @@ Reveal.addEventListener( 'customevent', function() {
</div> </div>
<script src="js/reveal.min.js"></script> <script src="dist/reveal.min.js"></script>
<script> <script>

171
dist/print/paper.css vendored Normal file
View File

@ -0,0 +1,171 @@
/* Default Print Stylesheet Template
by Rob Glazebrook of CSSnewbie.com
Last Updated: June 4, 2008
Feel free (nay, compelled) to edit, append, and
manipulate this file as you see fit. */
@media print {
/* SECTION 1: Set default width, margin, float, and
background. This prevents elements from extending
beyond the edge of the printed page, and prevents
unnecessary background images from printing */
html {
background: #fff;
width: auto;
height: auto;
overflow: visible; }
body {
background: #fff;
font-size: 20pt;
width: auto;
height: auto;
border: 0;
margin: 0 5%;
padding: 0;
overflow: visible;
float: none !important; }
/* SECTION 2: Remove any elements not needed in print.
This would include navigation, ads, sidebars, etc. */
.nestedarrow,
.controls,
.fork-reveal,
.share-reveal,
.state-background,
.reveal .progress,
.reveal .backgrounds,
.reveal .slide-number {
display: none !important; }
/* SECTION 3: Set body font face, size, and color.
Consider using a serif font for readability. */
body, p, td, li, div {
font-size: 20pt !important;
font-family: Georgia, "Times New Roman", Times, serif !important;
color: #000; }
/* SECTION 4: Set heading font face, sizes, and color.
Differentiate your headings from your body text.
Perhaps use a large sans-serif for distinction. */
h1, h2, h3, h4, h5, h6 {
color: #000 !important;
height: auto;
line-height: normal;
font-family: Georgia, "Times New Roman", Times, serif !important;
text-shadow: 0 0 0 #000 !important;
text-align: left;
letter-spacing: normal; }
/* Need to reduce the size of the fonts for printing */
h1 {
font-size: 28pt !important; }
h2 {
font-size: 24pt !important; }
h3 {
font-size: 22pt !important; }
h4 {
font-size: 22pt !important;
font-variant: small-caps; }
h5 {
font-size: 21pt !important; }
h6 {
font-size: 20pt !important;
font-style: italic; }
/* SECTION 5: Make hyperlinks more usable.
Ensure links are underlined, and consider appending
the URL to the end of the link for usability. */
a:link,
a:visited {
color: #000 !important;
font-weight: bold;
text-decoration: underline; }
/*
.reveal a:link:after,
.reveal a:visited:after {
content: " (" attr(href) ") ";
color: #222 !important;
font-size: 90%;
}
*/
/* SECTION 6: more reveal.js specific additions by @skypanther */
ul, ol, div, p {
visibility: visible;
position: static;
width: auto;
height: auto;
display: block;
overflow: visible;
margin: 0;
text-align: left !important; }
.reveal pre,
.reveal table {
margin-left: 0;
margin-right: 0; }
.reveal pre code {
padding: 20px;
border: 1px solid #ddd; }
.reveal blockquote {
margin: 20px 0; }
.reveal .slides {
position: static !important;
width: auto !important;
height: auto !important;
left: 0 !important;
top: 0 !important;
margin-left: 0 !important;
margin-top: 0 !important;
padding: 0 !important;
zoom: 1 !important;
overflow: visible !important;
display: block !important;
text-align: left !important;
-webkit-perspective: none;
-moz-perspective: none;
-ms-perspective: none;
perspective: none;
-webkit-perspective-origin: 50% 50%;
-moz-perspective-origin: 50% 50%;
-ms-perspective-origin: 50% 50%;
perspective-origin: 50% 50%; }
.reveal .slides section {
visibility: visible !important;
position: static !important;
width: auto !important;
height: auto !important;
display: block !important;
overflow: visible !important;
left: 0 !important;
top: 0 !important;
margin-left: 0 !important;
margin-top: 0 !important;
padding: 60px 20px !important;
z-index: auto !important;
opacity: 1 !important;
page-break-after: always !important;
-webkit-transform-style: flat !important;
-moz-transform-style: flat !important;
-ms-transform-style: flat !important;
transform-style: flat !important;
-webkit-transform: none !important;
-moz-transform: none !important;
-ms-transform: none !important;
transform: none !important;
-webkit-transition: none !important;
-moz-transition: none !important;
-ms-transition: none !important;
transition: none !important; }
.reveal .slides section.stack {
padding: 0 !important; }
.reveal section:last-of-type {
page-break-after: avoid !important; }
.reveal section .fragment {
opacity: 1 !important;
visibility: visible !important;
-webkit-transform: none !important;
-moz-transform: none !important;
-ms-transform: none !important;
transform: none !important; }
.reveal section img {
display: block;
margin: 15px 0px;
background: white;
border: 1px solid #666;
box-shadow: none; }
.reveal section small {
font-size: 0.8em; } }

140
dist/print/pdf.css vendored Normal file
View File

@ -0,0 +1,140 @@
/**
* This stylesheet is used to print reveal.js
* presentations to PDF.
*
* https://github.com/hakimel/reveal.js#pdf-export
*/
* {
-webkit-print-color-adjust: exact; }
body {
margin: 0 auto !important;
border: 0;
padding: 0;
float: none !important;
overflow: visible; }
html {
width: 100%;
height: 100%;
overflow: visible; }
/* Remove any elements not needed in print. */
.nestedarrow,
.reveal .controls,
.reveal .progress,
.reveal .playback,
.reveal.overview,
.fork-reveal,
.share-reveal,
.state-background {
display: none !important; }
h1, h2, h3, h4, h5, h6 {
text-shadow: 0 0 0 #000 !important; }
.reveal pre code {
overflow: hidden !important;
font-family: Courier, 'Courier New', monospace !important; }
ul, ol, div, p {
visibility: visible;
position: static;
width: auto;
height: auto;
display: block;
overflow: visible;
margin: auto; }
.reveal {
width: auto !important;
height: auto !important;
overflow: hidden !important; }
.reveal .slides {
position: static;
width: 100% !important;
height: auto !important;
zoom: 1 !important;
left: auto;
top: auto;
margin: 0 !important;
padding: 0 !important;
overflow: visible;
display: block;
perspective: none;
perspective-origin: 50% 50%; }
.reveal .slides .pdf-page {
position: relative;
overflow: hidden;
z-index: 1;
page-break-after: always; }
.reveal .slides section {
visibility: visible !important;
display: block !important;
position: absolute !important;
margin: 0 !important;
padding: 0 !important;
box-sizing: border-box !important;
min-height: 1px;
opacity: 1 !important;
transform-style: flat !important;
transform: none !important; }
.reveal section.stack {
position: relative !important;
margin: 0 !important;
padding: 0 !important;
page-break-after: avoid !important;
height: auto !important;
min-height: auto !important; }
.reveal img {
box-shadow: none; }
.reveal .roll {
overflow: visible;
line-height: 1em; }
/* Slide backgrounds are placed inside of their slide when exporting to PDF */
.reveal .slide-background {
display: block !important;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: auto !important; }
/* Display slide speaker notes when 'showNotes' is enabled */
.reveal.show-notes {
max-width: none;
max-height: none; }
.reveal .speaker-notes-pdf {
display: block;
width: 100%;
height: auto;
max-height: none;
top: auto;
right: auto;
bottom: auto;
left: auto;
z-index: 100; }
/* Layout option which makes notes appear on a separate page */
.reveal .speaker-notes-pdf[data-layout="separate-page"] {
position: relative;
color: inherit;
background-color: transparent;
padding: 20px;
page-break-after: always;
border: 0; }
/* Display slide numbers when 'slideNumber' is enabled */
.reveal .slide-number-pdf {
display: block;
position: absolute;
font-size: 14px; }

View File

View File

8
dist/reveal.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -26,30 +26,39 @@ const license = `/*!
*/\n` */\n`
gulp.task('js', () => gulp.src(['./js/reveal.js']) gulp.task('js', () => gulp.src(['./js/app.js'])
.pipe(babel({ presets: ['@babel/preset-env'] })) .pipe(babel({ presets: ['@babel/preset-env'] }))
.pipe(webpack({ .pipe(webpack({
mode: 'production' mode: 'production'
})) }))
.pipe(header(license, {pkg: pkg})) .pipe(header(license, {pkg: pkg}))
.pipe(rename('reveal.min.js')) .pipe(rename('reveal.min.js'))
.pipe(gulp.dest('./js'))) .pipe(gulp.dest('./dist')))
gulp.task('css-themes', () => gulp.src(['./css/theme/source/*.{sass,scss}']) gulp.task('css-themes', () => gulp.src(['./css/theme/source/*.{sass,scss}'])
.pipe(sass()) .pipe(sass())
.pipe(gulp.dest('./css/theme'))) .pipe(gulp.dest('./dist/theme')))
gulp.task('css-print', () => gulp.src(['./css/print/*.{sass,scss,css}'])
.pipe(sass())
.pipe(gulp.dest('./dist/print')))
gulp.task('css-core', gulp.series( gulp.task('css-core', gulp.series(
() => gulp.src(['css/reveal.scss']).pipe(sass()).pipe(autoprefixer()).pipe(gulp.dest('./css')), () => gulp.src(['css/reveal.scss'])
() => gulp.src(['css/reveal.css']).pipe(minify({ .pipe(sass())
compatibility: 'ie9' .pipe(autoprefixer())
})).pipe(header(license, {pkg: pkg})) .pipe(gulp.dest('./dist')),
.pipe(gulp.dest('./css')) () => gulp.src(['dist/reveal.css'])
.pipe(minify({
compatibility: 'ie9'
}))
.pipe(header(license, {pkg: pkg}))
.pipe(gulp.dest('./dist'))
)) ))
gulp.task('css', gulp.parallel('css-themes', 'css-core')) gulp.task('css', gulp.parallel('css-themes', 'css-print', 'css-core'))
gulp.task('test', gulp.series( gulp.task('test', gulp.series(
@ -64,8 +73,7 @@ gulp.task('package', gulp.series('default', () =>
gulp.src([ gulp.src([
'./index.html', './index.html',
'./css/**', './dist/**',
'./js/**',
'./lib/**', './lib/**',
'./images/**', './images/**',
'./plugin/**', './plugin/**',
@ -82,13 +90,15 @@ gulp.task('serve', () => {
livereload: true livereload: true
}) })
gulp.watch(['js/reveal.js', 'js/src/*.js'], gulp.series('js')) gulp.watch(['js/*.js'], gulp.series('js'))
gulp.watch([ gulp.watch([
'css/theme/source/*.{sass,scss}', 'css/theme/source/*.{sass,scss}',
'css/theme/template/*.{sass,scss}', 'css/theme/template/*.{sass,scss}',
], gulp.series('css-themes')) ], gulp.series('css-themes'))
gulp.watch(['css/print/*.{sass,scss,css}'], gulp.series('css-print'))
gulp.watch(['css/reveal.scss'], gulp.series('css-core')) gulp.watch(['css/reveal.scss'], gulp.series('css-core'))
}) })

View File

@ -6,9 +6,9 @@
<title>reveal.js</title> <title>reveal.js</title>
<link rel="stylesheet" href="css/reset.css"> <link rel="stylesheet" href="dist/reset.css">
<link rel="stylesheet" href="css/reveal.css"> <link rel="stylesheet" href="dist/reveal.css">
<link rel="stylesheet" href="css/theme/black.css"> <link rel="stylesheet" href="dist/theme/black.css">
<!-- Theme used for syntax highlighting of code --> <!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="lib/css/monokai.css"> <link rel="stylesheet" href="lib/css/monokai.css">
@ -18,7 +18,7 @@
var link = document.createElement( 'link' ); var link = document.createElement( 'link' );
link.rel = 'stylesheet'; link.rel = 'stylesheet';
link.type = 'text/css'; link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? 'css/print/pdf.css' : 'css/print/paper.css'; link.href = window.location.search.match( /print-pdf/gi ) ? 'dist/print/pdf.css' : 'dist/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link ); document.getElementsByTagName( 'head' )[0].appendChild( link );
</script> </script>
</head> </head>
@ -30,7 +30,7 @@
</div> </div>
</div> </div>
<script src="js/reveal.min.js"></script> <script src="dist/reveal.min.js"></script>
<script> <script>
// More info about config & dependencies: // More info about config & dependencies:

3
js/app.js Normal file
View File

@ -0,0 +1,3 @@
import Reveal from './reveal.js'
window.Reveal = Reveal();

View File

@ -1,4 +1,4 @@
import Playback from './src/playback.js' import Playback from './playback.js'
/** /**
* reveal.js * reveal.js
@ -7,21 +7,7 @@ import Playback from './src/playback.js'
* *
* Copyright (C) 2020 Hakim El Hattab, http://hakim.se * Copyright (C) 2020 Hakim El Hattab, http://hakim.se
*/ */
(function( root, factory ) { export default function() {
if( typeof define === 'function' && define.amd ) {
// AMD. Register as an anonymous module.
define( function() {
root.Reveal = factory();
return root.Reveal;
} );
} else if( typeof exports === 'object' ) {
// Node. Does not work with strict CommonJS.
module.exports = factory();
} else {
// Browser globals.
root.Reveal = factory();
}
}( this || window, () => {
'use strict'; 'use strict';
@ -3854,7 +3840,7 @@ import Playback from './src/playback.js'
delay: 0 delay: 0
}; };
options = {...options, ...inheritedOptions}; options = extend( options, inheritedOptions );
// Inherit options from parent elements // Inherit options from parent elements
if( element.closest && element.parentNode ) { if( element.closest && element.parentNode ) {
@ -6420,4 +6406,4 @@ import Playback from './src/playback.js'
return Reveal; return Reveal;
})); };

View File

@ -49,6 +49,10 @@
"browser": true, "browser": true,
"es6": true "es6": true
}, },
"parserOptions": {
"sourceType": "module",
"allowImportExportEverywhere": true
},
"globals": { "globals": {
"head": false, "head": false,
"module": false, "module": false,