Unverified Commit d3be8930 authored by Vadim Makeev's avatar Vadim Makeev Committed by GitHub

Merge pull request #330 from shower/migrate-to-cli

Migrated with shower-cli
parents 83b0c302 58699b1a
language: node_js
node_js:
- "6"
- "8"
const del = require('del');
const gulp = require('gulp');
const merge = require('merge-stream');
const rename = require('gulp-rename');
const replace = require('gulp-replace');
const zip = require('gulp-zip');
const pages = require('gh-pages');
const sync = require('browser-sync').create();
gulp.task('prepare', () => {
const shower = gulp.src([
'**',
'!docs{,/**}',
'!node_modules{,/**}',
'!prepared{,/**}',
'!CONTRIBUTING.md',
'!LICENSE.md',
'!README.md',
'!gulpfile.js',
'!netlify.toml',
'!package.json',
'!package-lock.json'
])
.pipe(replace(
/(<link rel="stylesheet" href=")(node_modules\/@shower\/)([^\/]*)\/(.*\.css">)/g,
'$1shower/themes/$3/$4', { skipBinary: true }
))
.pipe(replace(
/(<script src=")(node_modules\/shower-core\/)(shower.min.js"><\/script>)/g,
'$1shower/$3', { skipBinary: true }
));
const core = gulp.src([
'shower.min.js'
], {
cwd: 'node_modules/shower-core'
})
.pipe(rename( (path) => {
path.dirname = 'shower/' + path.dirname;
}));
const material = gulp.src([
'**', '!package.json'
], {
cwd: 'node_modules/@shower/material'
})
.pipe(rename( (path) => {
path.dirname = 'shower/themes/material/' + path.dirname;
}))
const ribbon = gulp.src([
'**', '!package.json'
], {
cwd: 'node_modules/@shower/ribbon'
})
.pipe(rename( (path) => {
path.dirname = 'shower/themes/ribbon/' + path.dirname;
}));
const themes = merge(material, ribbon)
.pipe(replace(
/(<script src=")(\/shower-core\/)(shower.min.js"><\/script>)/,
'$1../../$3', { skipBinary: true }
));
return merge(shower, core, themes)
.pipe(gulp.dest('prepared'));
});
gulp.task('clean', () => {
return del('prepared/**');
});
gulp.task('zip', () => {
return gulp.src('prepared/**')
.pipe(zip('archive.zip'))
.pipe(gulp.dest('.'));
});
gulp.task('upload', () => {
return pages.publish('prepared')
});
gulp.task('archive', gulp.series(
'prepare',
'zip',
'clean'
));
gulp.task('publish', gulp.series(
'prepare',
'upload',
'clean'
));
gulp.task('serve', () => {
sync.init({
ui: false,
notify: false,
port: 3000,
server: {
baseDir: '.'
}
});
gulp.watch('index.html').on('change', () => {
sync.reload();
});
});
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -32,23 +32,15 @@
"shower-core": "^2.1.0"
},
"devDependencies": {
"browser-sync": "^2.26.3",
"del": "^3.0.0",
"gh-pages": "^2.0.0",
"gulp": "^4.0.0",
"gulp-rename": "^1.2.2",
"gulp-replace": "^1.0.0",
"gulp-zip": "^4.0.0",
"merge-stream": "^1.0.0",
"path-exists-cli": "^1.0.0",
"shower-cli": "^0.2.3"
},
"scripts": {
"pdf": "shower pdf",
"start": "gulp serve",
"prepare": "gulp prepare",
"archive": "gulp archive",
"publish": "gulp publish",
"start": "shower serve",
"prepare": "shower prepare --files '**' --files '!{docs,node_modules,prepared}{,/**}' --files '!*.{md,toml,json}'",
"archive": "shower archive --files '**' --files '!{docs,node_modules,prepared}{,/**}' --files '!*.{md,toml,json}'",
"publish": "shower publish --files '**' --files '!{docs,node_modules,prepared}{,/**}' --files '!*.{md,toml,json}'",
"test": "npm run prepare && ls prepared && npm run archive && path-exists archive.zip"
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment