1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 09:52:26 +01:00

build - fix mascara sourcemaps dest

This commit is contained in:
kumavis 2018-03-28 20:13:47 -07:00
parent 909cbca7a6
commit e5c6c93c29

View File

@ -1,37 +1,37 @@
var watchify = require('watchify') const watchify = require('watchify')
var browserify = require('browserify') const browserify = require('browserify')
var disc = require('disc') const disc = require('disc')
var gulp = require('gulp') const gulp = require('gulp')
var source = require('vinyl-source-stream') const source = require('vinyl-source-stream')
var buffer = require('vinyl-buffer') const buffer = require('vinyl-buffer')
var gutil = require('gulp-util') const gutil = require('gulp-util')
var watch = require('gulp-watch') const watch = require('gulp-watch')
var sourcemaps = require('gulp-sourcemaps') const sourcemaps = require('gulp-sourcemaps')
var jsoneditor = require('gulp-json-editor') const jsoneditor = require('gulp-json-editor')
var zip = require('gulp-zip') const zip = require('gulp-zip')
var assign = require('lodash.assign') const assign = require('lodash.assign')
var livereload = require('gulp-livereload') const livereload = require('gulp-livereload')
var del = require('del') const del = require('del')
var eslint = require('gulp-eslint') const eslint = require('gulp-eslint')
var fs = require('fs') const fs = require('fs')
var path = require('path') const path = require('path')
var manifest = require('./app/manifest.json') const manifest = require('./app/manifest.json')
var gulpif = require('gulp-if') const gulpif = require('gulp-if')
var replace = require('gulp-replace') const replace = require('gulp-replace')
var mkdirp = require('mkdirp') const mkdirp = require('mkdirp')
var asyncEach = require('async/each') const asyncEach = require('async/each')
var exec = require('child_process').exec const exec = require('child_process').exec
var sass = require('gulp-sass') const sass = require('gulp-sass')
var autoprefixer = require('gulp-autoprefixer') const autoprefixer = require('gulp-autoprefixer')
var gulpStylelint = require('gulp-stylelint') const gulpStylelint = require('gulp-stylelint')
var stylefmt = require('gulp-stylefmt') const stylefmt = require('gulp-stylefmt')
var uglify = require('gulp-uglify-es').default const uglify = require('gulp-uglify-es').default
var babel = require('gulp-babel') const babel = require('gulp-babel')
var debug = require('gulp-debug') const debug = require('gulp-debug')
var disableDebugTools = gutil.env.disableDebugTools const disableDebugTools = gutil.env.disableDebugTools
var debugMode = gutil.env.debug const debugMode = gutil.env.debug
const browserPlatforms = [ const browserPlatforms = [
'firefox', 'firefox',
@ -240,13 +240,9 @@ function createTasksForBuildJsExtension({ jsFiles, taskPrefix, bundleTaskOpts })
const nonInpageFiles = jsFiles.filter(file => file !== 'inpage') const nonInpageFiles = jsFiles.filter(file => file !== 'inpage')
const buildPhase1 = ['inpage'] const buildPhase1 = ['inpage']
const buildPhase2 = nonInpageFiles const buildPhase2 = nonInpageFiles
const destinations = [ const destinations = browserPlatforms.map(platform => `./dist/${platform}/scripts`)
'./dist/firefox/scripts', bundleTaskOpts.sourceMapDir = bundleTaskOpts.sourceMapDir || (debugMode ? './' : '../../sourcemaps')
'./dist/chrome/scripts', createTasksForBuildJs({ rootDir, jsFiles, taskPrefix, bundleTaskOpts, destinations, sourceMapDir, buildPhase1, buildPhase2 })
'./dist/edge/scripts',
'./dist/opera/scripts',
]
createTasksForBuildJs({ rootDir, jsFiles, taskPrefix, bundleTaskOpts, destinations, buildPhase1, buildPhase2 })
} }
function createTasksForBuildJsMascara({ taskPrefix, bundleTaskOpts }) { function createTasksForBuildJsMascara({ taskPrefix, bundleTaskOpts }) {
@ -254,10 +250,11 @@ function createTasksForBuildJsMascara({ taskPrefix, bundleTaskOpts }) {
const rootDir = './mascara/src/' const rootDir = './mascara/src/'
const jsFiles = ['ui', 'proxy', 'background'] const jsFiles = ['ui', 'proxy', 'background']
const destinations = ['./dist/mascara'] const destinations = ['./dist/mascara']
createTasksForBuildJs({ rootDir, jsFiles, taskPrefix, bundleTaskOpts, destinations, buildPhase1: jsFiles }) bundleTaskOpts.sourceMapDir = bundleTaskOpts.sourceMapDir || (debugMode ? './' : '../sourcemaps')
createTasksForBuildJs({ rootDir, jsFiles, taskPrefix, bundleTaskOpts, destinations, sourceMapDir, buildPhase1: jsFiles })
} }
function createTasksForBuildJs({ rootDir, jsFiles, taskPrefix, bundleTaskOpts, destinations, buildPhase1 = [], buildPhase2 = [] }) { function createTasksForBuildJs({ rootDir, jsFiles, taskPrefix, bundleTaskOpts, destinations, sourceMapDir, buildPhase1 = [], buildPhase2 = [] }) {
// bundle task for each file // bundle task for each file
jsFiles.forEach((jsFile) => { jsFiles.forEach((jsFile) => {
gulp.task(`${taskPrefix}:${jsFile}`, bundleTask(Object.assign({ gulp.task(`${taskPrefix}:${jsFile}`, bundleTask(Object.assign({
@ -298,7 +295,7 @@ gulp.task('zip:edge', zipTask('edge'))
gulp.task('zip:opera', zipTask('opera')) gulp.task('zip:opera', zipTask('opera'))
gulp.task('zip', gulp.parallel('zip:chrome', 'zip:firefox', 'zip:edge', 'zip:opera')) gulp.task('zip', gulp.parallel('zip:chrome', 'zip:firefox', 'zip:edge', 'zip:opera'))
// set env var for production // set env for production
gulp.task('apply-prod-environment', function(done) { gulp.task('apply-prod-environment', function(done) {
process.env.NODE_ENV = 'production' process.env.NODE_ENV = 'production'
done() done()
@ -342,10 +339,10 @@ gulp.task('dist',
// task generators // task generators
function copyTask(opts){ function copyTask(opts){
var source = opts.source const source = opts.source
var destination = opts.destination const destination = opts.destination
var destinations = opts.destinations || [ destination ] const destinations = opts.destinations || [ destination ]
var pattern = opts.pattern || '/**/*' const pattern = opts.pattern || '/**/*'
return performCopy return performCopy
@ -446,7 +443,7 @@ function bundleTask(opts) {
mangle: { reserved: [ 'MetamaskInpageProvider' ] }, mangle: { reserved: [ 'MetamaskInpageProvider' ] },
}))) })))
// writes .map file // writes .map file
.pipe(sourcemaps.write(debugMode ? './' : '../../sourcemaps')) .pipe(sourcemaps.write(opts.sourceMapDir))
// write completed bundles // write completed bundles
opts.destinations.forEach((dest) => { opts.destinations.forEach((dest) => {