aboutsummaryrefslogtreecommitdiff
path: root/common/stored_types.js
diff options
context:
space:
mode:
Diffstat (limited to 'common/stored_types.js')
-rw-r--r--common/stored_types.js44
1 files changed, 44 insertions, 0 deletions
diff --git a/common/stored_types.js b/common/stored_types.js
new file mode 100644
index 0000000..de0ec71
--- /dev/null
+++ b/common/stored_types.js
@@ -0,0 +1,44 @@
+/**
+ * Myext stored item types "enum"
+ *
+ * Copyright (C) 2021 Wojtek Kosior
+ *
+ * Dual-licensed under:
+ * - 0BSD license
+ * - GPLv3 or (at your option) any later version
+ */
+
+/*
+ * Key for item that is stored in quantity (script, page) is constructed by
+ * prepending its name with first letter of its list name. However, we also
+ * need to store some items that don't belong to any list. Let's call them
+ * persisted variables. In such case item's key is its "name" prepended with
+ * an underscore.
+ */
+
+"use strict";
+
+(() => {
+ const TYPE_PREFIX = {
+ PAGE : "p",
+ BUNDLE : "b",
+ SCRIPT : "s",
+ VAR : "_"
+ };
+
+ const TYPE_NAME = {
+ [TYPE_PREFIX.PAGE] : "page",
+ [TYPE_PREFIX.BUNDLE] : "bundle",
+ [TYPE_PREFIX.SCRIPT] : "script"
+ }
+
+ const list_prefixes = [
+ TYPE_PREFIX.PAGE,
+ TYPE_PREFIX.BUNDLE,
+ TYPE_PREFIX.SCRIPT
+ ];
+
+ window.TYPE_PREFIX = TYPE_PREFIX;
+ window.TYPE_NAME = TYPE_NAME;
+ window.list_prefixes = list_prefixes;
+})();