aboutsummaryrefslogtreecommitdiffstats
path: root/packages/abi-gen
diff options
context:
space:
mode:
Diffstat (limited to 'packages/abi-gen')
-rw-r--r--packages/abi-gen/CHANGELOG.json13
-rw-r--r--packages/abi-gen/package.json2
-rw-r--r--packages/abi-gen/src/index.ts8
3 files changed, 20 insertions, 3 deletions
diff --git a/packages/abi-gen/CHANGELOG.json b/packages/abi-gen/CHANGELOG.json
index 438b25649..8f0beb57e 100644
--- a/packages/abi-gen/CHANGELOG.json
+++ b/packages/abi-gen/CHANGELOG.json
@@ -1,5 +1,18 @@
[
{
+ "version": "0.4.0",
+ "changes": [
+ {
+ "note": "Convert e_r_c to erc in generated file names",
+ "pr": 822
+ },
+ {
+ "note": "Remove the output directory before writing to it",
+ "pr": 822
+ }
+ ]
+ },
+ {
"timestamp": 1529397769,
"version": "0.3.2",
"changes": [
diff --git a/packages/abi-gen/package.json b/packages/abi-gen/package.json
index dadf1dbfe..f8eede705 100644
--- a/packages/abi-gen/package.json
+++ b/packages/abi-gen/package.json
@@ -34,6 +34,7 @@
"glob": "^7.1.2",
"handlebars": "^4.0.11",
"lodash": "^4.17.4",
+ "rimraf": "^2.6.2",
"mkdirp": "^0.5.1",
"to-snake-case": "^1.0.0",
"yargs": "^10.0.3"
@@ -42,6 +43,7 @@
"@0xproject/monorepo-scripts": "^0.2.1",
"@0xproject/tslint-config": "^0.4.20",
"@types/glob": "^5.0.33",
+ "@types/rimraf": "^2.0.2",
"@types/handlebars": "^4.0.36",
"@types/mkdirp": "^0.5.1",
"@types/node": "^8.0.53",
diff --git a/packages/abi-gen/src/index.ts b/packages/abi-gen/src/index.ts
index 0d053cdd1..47f2c404b 100644
--- a/packages/abi-gen/src/index.ts
+++ b/packages/abi-gen/src/index.ts
@@ -8,6 +8,7 @@ import { sync as globSync } from 'glob';
import * as Handlebars from 'handlebars';
import * as _ from 'lodash';
import * as mkdirp from 'mkdirp';
+import * as rimraf from 'rimraf';
import * as yargs from 'yargs';
import toSnakeCase = require('to-snake-case');
@@ -72,9 +73,9 @@ function registerPartials(partialsGlob: string): void {
function writeOutputFile(name: string, renderedTsCode: string): void {
let fileName = toSnakeCase(name);
- if (fileName === 'z_r_x_token') {
- fileName = 'zrx_token';
- }
+ // HACK: Snake case doesn't make a lot of sense for abbreviated names but we can't reliably detect abbreviations
+ // so we special-case the abbreviations we use.
+ fileName = fileName.replace('z_r_x', 'zrx').replace('e_r_c', 'erc');
const filePath = `${args.output}/${fileName}.ts`;
fs.writeFileSync(filePath, renderedTsCode);
logUtils.log(`Created: ${chalk.bold(filePath)}`);
@@ -96,6 +97,7 @@ if (_.isEmpty(abiFileNames)) {
process.exit(1);
} else {
logUtils.log(`Found ${chalk.green(`${abiFileNames.length}`)} ${chalk.bold('ABI')} files`);
+ rimraf.sync(args.output);
mkdirp.sync(args.output);
}
for (const abiFileName of abiFileNames) {