From c46a3918c110c6f26a96b06388a5440a9c1599df Mon Sep 17 00:00:00 2001 From: Rodney Rehm Date: Mon, 11 Apr 2016 01:17:05 +0200 Subject: [PATCH] fix(cli): inlining assets for --html --- index.js | 15 +++++++++++---- package.json | 1 + 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/index.js b/index.js index 429e2e4..bcaa9ff 100755 --- a/index.js +++ b/index.js @@ -39,7 +39,8 @@ var fs = require('fs'), open = require('open'), _ = require('underscore'), docopt = require('docopt').docopt, - fileURL = require('file-url'); + fileURL = require('file-url'), + btoa = require('btoa'); function computeGeneratedFileSizes(mapConsumer, generatedJs) { var lines = generatedJs.split('\n'); @@ -186,13 +187,19 @@ if (args['--tsv']) { process.exit(0); } +var assets = { + underscoreJs: btoa(fs.readFileSync(require.resolve('underscore'))), + webtreemapJs: btoa(fs.readFileSync(require.resolve('./vendor/webtreemap.js'))), + webtreemapCss: btoa(fs.readFileSync(require.resolve('./vendor/webtreemap.css'))), +}; + var html = fs.readFileSync(path.join(__dirname, 'tree-viz.html')).toString(); html = html.replace('INSERT TREE HERE', JSON.stringify(sizes, null, ' ')) .replace('INSERT TITLE HERE', args['']) - .replace('INSERT underscore.js HERE', fileURL(require.resolve('underscore'))) - .replace('INSERT webtreemap.js HERE', fileURL(require.resolve('./vendor/webtreemap.js'))) - .replace('INSERT webtreemap.css HERE', fileURL(require.resolve('./vendor/webtreemap.css'))); + .replace('INSERT underscore.js HERE', 'data:application/javascript;base64,' + assets.underscoreJs) + .replace('INSERT webtreemap.js HERE', 'data:application/javascript;base64,' + assets.webtreemapJs) + .replace('INSERT webtreemap.css HERE', 'data:text/css;base64,' + assets.webtreemapCss); if (args['--html']) { console.log(html); diff --git a/package.json b/package.json index 3ab44a3..beb0710 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ }, "homepage": "https://github.com/danvk/source-map-explorer#readme", "dependencies": { + "btoa": "^1.1.2", "convert-source-map": "^1.1.1", "docopt": "^0.6.2", "file-url": "^1.0.1",