Skip to content

Commit 6f8da48

Browse files
committed
Ensure that deployments to GitHub Pages are minified
This will allow local example running to still be done in development mode.
1 parent 44a16a3 commit 6f8da48

File tree

2 files changed

+33
-11
lines changed

2 files changed

+33
-11
lines changed

gulpfile.js

Lines changed: 30 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -90,25 +90,44 @@ gulp.task('build', gulp.series('build-script-web', 'compare-css-output'));
9090

9191
gulp.task('build-no-css-compare', gulp.series('build-script-web'));
9292

93-
gulp.task('build-examples-style', () => (
94-
gulp.src('./examples/src/scss/**/*.scss')
93+
function buildExamplesScript(mode = 'development') {
94+
return gulp.src(['./examples/src/index.js'])
95+
.pipe(webpackStream({ ...testWebpackConfig, mode }, webpack))
96+
.pipe(gulp.dest('./examples/dist/'));
97+
}
98+
99+
function buildExamplesStyle(minifyStyles = false) {
100+
let stream = gulp.src('./examples/src/scss/**/*.scss')
95101
.pipe(scsslint())
96102
.pipe(scsslint.failReporter())
97103
.pipe(sass({
98104
outputStyle: 'expanded',
99105
}).on('error', sass.logError))
100106
.pipe(autoprefixer({
101107
browsers: ['last 2 versions'],
102-
}))
103-
.pipe(gulp.dest('./examples/dist'))
104-
.pipe(browserSync.stream())
105-
));
108+
}));
109+
110+
if (minifyStyles) {
111+
stream = stream.pipe(minify());
112+
}
113+
114+
return stream.pipe(gulp.dest('./examples/dist'));
115+
}
106116

107117
gulp.task('build-examples-script', () => (
108-
gulp.src(['./examples/src/index.js'])
109-
.pipe(webpackStream(testWebpackConfig, webpack))
110-
.pipe(gulp.dest('./examples/dist/'))
111-
.pipe(browserSync.stream())
118+
buildExamplesScript().pipe(browserSync.stream())
119+
));
120+
121+
gulp.task('build-examples-script-prod', () => (
122+
buildExamplesScript('production')
123+
));
124+
125+
gulp.task('build-examples-style', () => (
126+
buildExamplesStyle().pipe(browserSync.stream())
127+
));
128+
129+
gulp.task('build-examples-style-prod', () => (
130+
buildExamplesStyle(true)
112131
));
113132

114133
gulp.task('build-examples-html', () => (
@@ -126,3 +145,4 @@ gulp.task('examples', gulp.series(gulp.parallel('build-examples-style', 'build-e
126145
}));
127146

128147
gulp.task('default', gulp.series('build'));
148+
gulp.task('build-gh-pages', gulp.parallel('build-examples-style-prod', 'build-examples-script-prod', 'build-examples-html'));

package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@
2121
"scripts": {
2222
"build": "gulp build-no-css-compare",
2323
"examples": "gulp examples",
24-
"gh-deploy": "git subtree push --prefix examples/dist origin gh-pages",
24+
"gh-build": "gulp build-gh-pages",
25+
"gh-check-diff": "git diff-index --quiet HEAD --",
26+
"gh-deploy": "npm run gh-build && npm run gh-check-diff && git subtree push --prefix examples/dist origin gh-pages",
2527
"prepublishOnly": "gulp build",
2628
"test": "gulp test-script"
2729
},

0 commit comments

Comments
 (0)