From e2b63cf98204a45f4c55ba446689d20e524c188c Mon Sep 17 00:00:00 2001 From: hackademix Date: Mon, 27 Aug 2018 00:31:37 +0200 Subject: Further CSP refactoring and removal of obsolete fallbacks. --- src/content/dynamicNS.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/content/dynamicNS.js (limited to 'src/content/dynamicNS.js') 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); + } + } + } +} -- cgit v1.2.3