From 5b2facd8e3a2a8ed083bcb3dd877a86a1c1db852 Mon Sep 17 00:00:00 2001 From: Jason Volk Date: Tue, 12 Dec 2017 13:21:43 -0700 Subject: [PATCH] client: Add a toggle() functional util. --- modules/static/charybdis/util.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/modules/static/charybdis/util.js b/modules/static/charybdis/util.js index 8ee09aba9..7090b2aaf 100644 --- a/modules/static/charybdis/util.js +++ b/modules/static/charybdis/util.js @@ -121,6 +121,16 @@ let mayif = (test = () => true, closure = () => undefined) => return maybe(() => closure(test())); }; +/** + */ +let toggle = (obj, key, value = undefined) => +{ + if(value === undefined) + obj[key] =! obj[key]; + else + obj[key] = value; +}; + /** * Like "toggle" but prunes the object of the key when switching * to the false state.