diff --git a/package.json b/package.json index c7b26573c..443e360a9 100644 --- a/package.json +++ b/package.json @@ -42,9 +42,9 @@ "peer-id": "~0.10.4", "peer-info": "~0.11.4", "promisify-es6": "^1.0.3", - "pump": "^1.0.3", "pull-defer": "^0.2.2", "pull-pushable": "^2.1.1", + "pump": "^1.0.3", "qs": "^6.5.1", "readable-stream": "^2.3.3", "stream-http": "^2.7.2", @@ -66,7 +66,7 @@ "dirty-chai": "^2.0.1", "eslint-plugin-react": "^7.5.1", "gulp": "^3.9.1", - "interface-ipfs-core": "~0.36.16", + "interface-ipfs-core": "~0.37.0", "hapi": "^16.6.2", "ipfsd-ctl": "~0.26.0", "pre-commit": "^1.2.2", diff --git a/src/key/export.js b/src/key/export.js new file mode 100644 index 000000000..f19db4022 --- /dev/null +++ b/src/key/export.js @@ -0,0 +1,16 @@ +'use strict' + +const promisify = require('promisify-es6') + +module.exports = (send) => { + return promisify((name, password, callback) => { + send({ + path: 'key/export', + args: name, + qs: { password: password } + }, (err, pem) => { + if (err) return callback(err) + callback(null, pem.toString()) + }) + }) +} diff --git a/src/key/import.js b/src/key/import.js new file mode 100644 index 000000000..aec92081a --- /dev/null +++ b/src/key/import.js @@ -0,0 +1,16 @@ +'use strict' + +const promisify = require('promisify-es6') + +module.exports = (send) => { + return promisify((name, pem, password, callback) => { + send({ + path: 'key/import', + args: name, + qs: { + pem: pem, + password: password + } + }, callback) + }) +} diff --git a/src/key/index.js b/src/key/index.js index 864c79f61..717d719c3 100644 --- a/src/key/index.js +++ b/src/key/index.js @@ -9,6 +9,8 @@ module.exports = (arg) => { gen: require('./gen')(send), list: require('./list')(send), rename: require('./rename')(send), - rm: require('./rm')(send) + rm: require('./rm')(send), + export: require('./export')(send), + import: require('./import')(send) } }