summaryrefslogtreecommitdiff
path: root/src/content/dynamicNS.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/content/dynamicNS.js')
-rw-r--r--src/content/dynamicNS.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/content/dynamicNS.js b/src/content/dynamicNS.js
new file mode 100644
index 0000000..cdd7a0e
--- /dev/null
+++ b/src/content/dynamicNS.js
@@ -0,0 +1,21 @@
+'use strict';
+
+// ensure the order which manifest scripts and dynamically registered scripts
+// are executed in doesn't matter for initialization, by using a stub.
+
+if (!this.ns) {
+ let deferredSetup = null;
+ let nsStub = this.ns = {
+ config: {},
+ setup(DEFAULT, MARKER) {
+ deferredSetup = [DEFAULT, MARKER];
+ },
+ merge: ns => {
+ ns.config = Object.assign(ns.config, nsStub.config);
+ this.ns = ns;
+ if (deferredSetup) {
+ ns.setup(...deferredSetup);
+ }
+ }
+ }
+}