safari build task
This commit is contained in:
parent
a5375b35ae
commit
cd2713ff2a
|
@ -9,5 +9,6 @@ webfonts/
|
||||||
*.pem
|
*.pem
|
||||||
*.zip
|
*.zip
|
||||||
build/
|
build/
|
||||||
|
build.safariextension/
|
||||||
package-lock.json
|
package-lock.json
|
||||||
coverage/
|
coverage/
|
||||||
|
|
47
gulpfile.js
47
gulpfile.js
|
@ -20,11 +20,22 @@ const paths = {
|
||||||
cssDir: './src/popup/css/'
|
cssDir: './src/popup/css/'
|
||||||
};
|
};
|
||||||
|
|
||||||
const fontsFilter = [
|
const filters = {
|
||||||
'!build/popup/fonts/*',
|
fonts: [
|
||||||
'build/popup/fonts/Open_Sans*.woff',
|
'!build/popup/fonts/*',
|
||||||
'build/popup/fonts/fontawesome*.woff'
|
'build/popup/fonts/Open_Sans*.woff',
|
||||||
];
|
'build/popup/fonts/fontawesome*.woff'
|
||||||
|
],
|
||||||
|
safari: [
|
||||||
|
'!build/Info.plist'
|
||||||
|
],
|
||||||
|
notSafari: [
|
||||||
|
'!build/manifest.json'
|
||||||
|
],
|
||||||
|
notEdge: [
|
||||||
|
'!build/edge/**/*'
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
function buildString() {
|
function buildString() {
|
||||||
var build = '';
|
var build = '';
|
||||||
|
@ -40,7 +51,7 @@ function distFileName(browserName, ext) {
|
||||||
|
|
||||||
function dist(browserName, manifest) {
|
function dist(browserName, manifest) {
|
||||||
return gulp.src(paths.build + '**/*')
|
return gulp.src(paths.build + '**/*')
|
||||||
.pipe(filter(['**', '!build/edge/**/*'].concat(fontsFilter)))
|
.pipe(filter(['**'].concat(filters.notEdge).concat(filters.fonts).concat(filters.safari)))
|
||||||
.pipe(gulpif('popup/index.html', replace('__BROWSER__', browserName)))
|
.pipe(gulpif('popup/index.html', replace('__BROWSER__', browserName)))
|
||||||
.pipe(gulpif('manifest.json', jeditor(manifest)))
|
.pipe(gulpif('manifest.json', jeditor(manifest)))
|
||||||
.pipe(zip(distFileName(browserName, 'zip')))
|
.pipe(zip(distFileName(browserName, 'zip')))
|
||||||
|
@ -97,7 +108,7 @@ function edgeCopyBuild(source, dest) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
gulp.src(source)
|
gulp.src(source)
|
||||||
.on('error', reject)
|
.on('error', reject)
|
||||||
.pipe(filter(['**'].concat(fontsFilter)))
|
.pipe(filter(['**'].concat(filters.fonts).concat(filters.safari)))
|
||||||
.pipe(gulpif('popup/index.html', replace('__BROWSER__', 'edge')))
|
.pipe(gulpif('popup/index.html', replace('__BROWSER__', 'edge')))
|
||||||
.pipe(gulpif('manifest.json', jeditor((manifest) => {
|
.pipe(gulpif('manifest.json', jeditor((manifest) => {
|
||||||
delete manifest.applications;
|
delete manifest.applications;
|
||||||
|
@ -148,6 +159,28 @@ gulp.task('ci:coverage', (cb) => {
|
||||||
.pipe(gulp.dest(paths.coverage));
|
.pipe(gulp.dest(paths.coverage));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
gulp.task('safari:build', (cb) => {
|
||||||
|
const buildPath = './build.safariextension/';
|
||||||
|
|
||||||
|
return del([buildPath + '**/*'])
|
||||||
|
.then(() => safariMoveBuild(paths.build + '**/*', buildPath))
|
||||||
|
.then(() => {
|
||||||
|
return cb;
|
||||||
|
}, () => {
|
||||||
|
return cb;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
function safariMoveBuild(source, dest) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
gulp.src(source)
|
||||||
|
.on('error', reject)
|
||||||
|
.pipe(filter(['**'].concat(filters.notEdge).concat(filters.fonts).concat(filters.notSafari)))
|
||||||
|
.pipe(gulp.dest(dest))
|
||||||
|
.on('end', resolve);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// LEGACY CODE!
|
// LEGACY CODE!
|
||||||
|
|
||||||
gulp.task('lint', () => {
|
gulp.task('lint', () => {
|
||||||
|
|
|
@ -96,6 +96,7 @@ module.exports = {
|
||||||
}),
|
}),
|
||||||
new CopyWebpackPlugin([
|
new CopyWebpackPlugin([
|
||||||
'./src/manifest.json',
|
'./src/manifest.json',
|
||||||
|
'./src/Info.plist',
|
||||||
{ from: './src/_locales', to: '_locales' },
|
{ from: './src/_locales', to: '_locales' },
|
||||||
{ from: './src/edge', to: 'edge' },
|
{ from: './src/edge', to: 'edge' },
|
||||||
{ from: './src/images', to: 'images' },
|
{ from: './src/images', to: 'images' },
|
||||||
|
|
Loading…
Reference in New Issue