From e122caa3262597bd563ce2a3ba1d2e21e21b9191 Mon Sep 17 00:00:00 2001 From: Colin Caine Date: Mon, 19 Feb 2018 16:17:57 +0000 Subject: [PATCH] Be more careful with truthy values --- src/config.ts | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/config.ts b/src/config.ts index 225a736e..50f3e717 100644 --- a/src/config.ts +++ b/src/config.ts @@ -219,7 +219,11 @@ export function get(...target) { if (defult && (! Array.isArray(defult) && typeof defult === "object")) { return Object.assign(o({}), defult, user) } else { - return user || defult + if (user !== undefined) { + return user + } else { + return defult + } } } @@ -246,13 +250,13 @@ export async function getAsync(...target) { set("aucmd", "BufRead", "memrise.com", "open memrise.com") */ export function set(...args) { - const target = args.slice(0, args.length - 1) - const value = args[args.length - 1] - if (args.length < 2) { throw "You must provide at least two arguments!" } + const target = args.slice(0, args.length - 1) + const value = args[args.length - 1] + setDeepProperty(USERCONFIG, value, target) save() } @@ -260,7 +264,7 @@ export function set(...args) { /** Delete the key at target if it exists */ export function unset(...target) { const parent = getDeepProperty(USERCONFIG, target.slice(0, -1)) - if (parent) delete parent[target[target.length - 1]] + if (parent !== undefined) delete parent[target[target.length - 1]] save() }