Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
dist
19 changes: 13 additions & 6 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@
"module": "dist/rollup-plugin-postprocess.m.js",
"source": "postprocess.js",
"scripts": {
"lint": "eslint .",
"prepare": "microbundle --external all --target node --format cjs,es --no-compress",
"test": "eslint postprocess.js && npm run -s prepare && node test",
"test": "npm run lint && npm run -s prepare && nyc node test",
"release": "npm run -s prepare && npm test && git commit -am $npm_package_version && git tag $npm_package_version && git push && git push --tags && npm publish"
},
"eslintConfig": {
Expand All @@ -27,15 +28,21 @@
"index.js",
"dist"
],
"repository": "developit/rollup-plugin-postprocess",
"repository": "https://github.com/developit/rollup-plugin-postprocess",
"homepage": "https://github.com/developit/rollup-plugin-postprocess",
"bugs": "https://github.com/developit/rollup-plugin-postprocess/issues",
"author": "Jason Miller <jason@developit.ca> (http://jasonformat.com)",
"contributors": [
"Brett Zamir"
],
"license": "MIT",
"devDependencies": {
"eslint": "^4.13.1",
"eslint-config-developit": "^1.1.1",
"microbundle": "^0.4.1"
"eslint": "^7.7.0",
"eslint-config-developit": "^1.2.0",
"microbundle": "^0.12.3",
"nyc": "^15.1.0"
},
"dependencies": {
"magic-string": "^0.22.4"
"magic-string": "^0.25.7"
}
}
4 changes: 2 additions & 2 deletions postprocess.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ const replacer = (str, index) => currentToken[index];
export default function postprocess(allReplacements) {
return {
name: 'postprocess',
transformBundle(code, { sourceMap, format }) {
renderChunk(code, { sourceMap, format }) {
let str = new MagicString(code);
let replacements = typeof allReplacements==='function' ? allReplacements({ code, sourceMap, format }) : allReplacements;

Expand Down Expand Up @@ -38,4 +38,4 @@ export default function postprocess(allReplacements) {
};
}
};
}
}
19 changes: 13 additions & 6 deletions test.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/* eslint-disable */

var assert = require('assert');
var postprocess = require('.');
const assert = require('assert');
const postprocess = require('.');

var code = 'function t(t,o,e,i){for(i=0,o=o.split?o.split("."):o;t&&i<o.length;)t=t[o[i++]];return void 0===t?e:t}module.exports=t;';
const code = 'function t(t,o,e,i){for(i=0,o=o.split?o.split("."):o;t&&i<o.length;)t=t[o[i++]];return void 0===t?e:t}module.exports=t;';

var name, exportPrefix;
var out = postprocess([
let name, exportPrefix;
let out = postprocess([
[/(module\.exports\s*=\s*|export\s*default\s*)([a-zA-Z$_][a-zA-Z0-9$_]*)[;,]?/, function(str, prefix, id) {
name = id;
exportPrefix = prefix;
Expand All @@ -17,8 +17,15 @@ var out = postprocess([
}
return str;
}]
]).transformBundle(code, { sourceMap: false });
]).renderChunk(code, { sourceMap: false });

assert.equal(out.code, 'module.exports=function t(t,o,e,i){for(i=0,o=o.split?o.split("."):o;t&&i<o.length;)t=t[o[i++]];return void 0===t?e:t}');

out = postprocess([
[/module\.exports=(.*)/, '// EXPORT\n\nmodule\.exports=$1\n// end of file']
]).renderChunk(code, {});

assert.equal(out.code, 'function t(t,o,e,i){for(i=0,o=o.split?o.split("."):o;t&&i<o.length;)t=t[o[i++]];return void 0===t?e:t}// EXPORT\n\nmodule.exports=t;\n// end of file')

console.log('✅ Tests Passed');
process.exit(0);