aboutsummaryrefslogtreecommitdiffstats
path: root/lang/js/src/gpgmejs.js
diff options
context:
space:
mode:
authorMaximilian Krambach <[email protected]>2018-08-27 10:32:28 +0000
committerMaximilian Krambach <[email protected]>2018-08-27 10:38:32 +0000
commit766d42c248a8c526b831685e93d54db81492f5a8 (patch)
tree3d4b0794e4b59f1a347548b0277662d3005b7365 /lang/js/src/gpgmejs.js
parentjson: Do not put FILE_NAME into the verify result. (diff)
downloadgpgme-766d42c248a8c526b831685e93d54db81492f5a8.tar.gz
gpgme-766d42c248a8c526b831685e93d54db81492f5a8.zip
js: typecheck destructured parameters
-- * destructuring just takes the input argument and treats it as object. In cases like in src/Keyring/generateKey, where I forgot to change the old syntax, the fingerprint as string was destructured into an object without "pattern", which caused all Keys to be retrieved. So, methods with a destructuring now check if the first argument is an object and get a default empty object if no parameter is submitted. This allows the further use of destructured parameters, while still ensuring nothing vastly incorrect is used. * src/Kering.js, unittsets.js: fixed old syntax in method usage
Diffstat (limited to 'lang/js/src/gpgmejs.js')
-rw-r--r--lang/js/src/gpgmejs.js20
1 files changed, 16 insertions, 4 deletions
diff --git a/lang/js/src/gpgmejs.js b/lang/js/src/gpgmejs.js
index b86b5f18..592b0a13 100644
--- a/lang/js/src/gpgmejs.js
+++ b/lang/js/src/gpgmejs.js
@@ -142,7 +142,10 @@ export class GpgME {
* @async
*/
encrypt ({ data, publicKeys, secretKeys, base64 = false, armor = true,
- wildcard, always_trust = true, additional = {} }){
+ wildcard, always_trust = true, additional = {} } = {}){
+ if (typeof arguments[0] !== 'object') {
+ return Promise.reject(gpgme_error('PARAM_WRONG'));
+ }
if (!data || !publicKeys){
return Promise.reject(gpgme_error('MSG_INCOMPLETE'));
}
@@ -203,7 +206,10 @@ export class GpgME {
* @returns {Promise<decrypt_result>} Decrypted Message and information
* @async
*/
- decrypt ({ data, base64, expect }){
+ decrypt ({ data, base64, expect } = {}){
+ if (typeof arguments[0] !== 'object') {
+ return Promise.reject(gpgme_error('PARAM_WRONG'));
+ }
if (!data){
return Promise.reject(gpgme_error('MSG_EMPTY'));
}
@@ -263,7 +269,10 @@ export class GpgME {
* @returns {Promise<signResult>}
* @async
*/
- sign ({ data, keys, mode = 'clearsign', base64 }){
+ sign ({ data, keys, mode = 'clearsign', base64 } = {}){
+ if (typeof arguments[0] !== 'object') {
+ return Promise.reject(gpgme_error('PARAM_WRONG'));
+ }
if (!data){
return Promise.reject(gpgme_error('MSG_EMPTY'));
}
@@ -310,7 +319,10 @@ export class GpgME {
* @returns {Promise<verifyResult>}
*@async
*/
- verify ({ data, signature, base64 }){
+ verify ({ data, signature, base64 } = {}){
+ if (typeof arguments[0] !== 'object') {
+ return Promise.reject(gpgme_error('PARAM_WRONG'));
+ }
if (!data){
return Promise.reject(gpgme_error('PARAM_WRONG'));
}