summaryrefslogtreecommitdiffhomepage
path: root/app/lib/enum.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/lib/enum.js')
-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);