| 'use strict' |
| const PathUtils = require('./path-utils') |
| const fs = require('fs') |
| const Promise = require('bluebird') |
| |
| const BundleUtils = { |
| bundleResource (inPath, outPath) { |
| return new Promise((resolve, reject) => { |
| require('browserify')(inPath) |
| .bundle() |
| .pipe(fs.createWriteStream(outPath)) |
| .once('finish', () => resolve()) |
| .once('error', (e) => reject(e)) |
| }) |
| }, |
| |
| bundleResourceIfNotExist (inPath, outPath) { |
| inPath = PathUtils.calculateAbsolutePath(inPath) |
| outPath = PathUtils.calculateAbsolutePath(outPath) |
| |
| return fs.existsSync(outPath) |
| ? Promise.resolve() |
| : BundleUtils.bundleResource(inPath, outPath) |
| } |
| } |
| |
| module.exports = BundleUtils |