From 34cd04a05b28ca798ee243027ef8df516cd24d37 Mon Sep 17 00:00:00 2001 From: Resi Respati Date: Thu, 23 Nov 2017 01:17:58 +0700 Subject: [PATCH] fix sourcemap uploading issue due to filename --- rollup.config.js | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/rollup.config.js b/rollup.config.js index 4347e71..fb7b302 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,13 +1,17 @@ "use strict"; +import fs from "fs"; +import path from "path"; import resolve from "rollup-plugin-node-resolve"; import commonjs from "rollup-plugin-commonjs"; import screepsUpload from "rollup-plugin-screeps-upload"; import typescript from "rollup-plugin-typescript2"; +const getSourcemapFilename = () => 'main.js.map.js' + // In Screeps, require only works for exported content // This "plugin" prepends an export to source maps so that it can be loaded in screeps via require` -function exportSourceMaps() { +function exportSourceMaps(options) { return { name: "export-source-maps", ongenerate: function (options, bundle) { @@ -18,6 +22,12 @@ function exportSourceMaps() { bundle.map.toString = function () { return "module.exports = " + tmp.apply(this, arguments) + ";"; } + }, + onwrite: function ({ bundle }) { + const map = bundle.map + fs.writeFileSync(path.resolve(__dirname, `./dist/${options || getSourcemapFilename()}`), map); + // Delete the old file + fs.unlinkSync(path.resolve(__dirname, `./dist/main.js.map`)); } } } @@ -35,7 +45,7 @@ export default { resolve(), commonjs(), typescript({tsconfig: "./tsconfig.json"}), - exportSourceMaps(), - screepsUpload('./screeps.json') + exportSourceMaps("main.js.map.js"), + screepsUpload("./screeps.json") ] }