summaryrefslogtreecommitdiffhomepage
path: root/app
diff options
context:
space:
mode:
authorAndrej Mihajlov <and@codeispoetry.ru>2017-02-14 10:54:45 +0000
committerAndrej Mihajlov <and@codeispoetry.ru>2017-02-14 10:54:45 +0000
commite79042f606ca9c2850cf57f533a98049990df19e (patch)
tree56c8871a8ca2496425f8bcac5fc74dcf6985f886 /app
parentd0ddbfcfed224f97048bd615a91f7fd607b644a8 (diff)
downloadmullvadvpn-e79042f606ca9c2850cf57f533a98049990df19e.tar.xz
mullvadvpn-e79042f606ca9c2850cf57f533a98049990df19e.zip
Add enum.isValid
Diffstat (limited to 'app')
-rw-r--r--app/lib/enum.js9
1 files changed, 7 insertions, 2 deletions
diff --git a/app/lib/enum.js b/app/lib/enum.js
index 4359c3bfb3..c2042c07fa 100644
--- a/app/lib/enum.js
+++ b/app/lib/enum.js
@@ -2,15 +2,20 @@
* Creates enum object with keys provided as arguments
*/
export default function Enum() {
- let object = {};
+ let object = Object.create({});
+ const keys = [...arguments];
- for(const key of arguments) {
+ for(const key of keys) {
Object.defineProperty(object, key, {
enumerable: true,
value: key,
writable: false
});
}
+
+ Object.defineProperty(object, 'isValid', {
+ value: (e) => keys.includes(e)
+ });
Object.freeze(object);