aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts/lib/createDnodeRemoteGetter.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/scripts/lib/createDnodeRemoteGetter.js')
-rw-r--r--app/scripts/lib/createDnodeRemoteGetter.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/app/scripts/lib/createDnodeRemoteGetter.js b/app/scripts/lib/createDnodeRemoteGetter.js
new file mode 100644
index 000000000..b70d218f3
--- /dev/null
+++ b/app/scripts/lib/createDnodeRemoteGetter.js
@@ -0,0 +1,16 @@
+module.exports = createDnodeRemoteGetter
+
+function createDnodeRemoteGetter (dnode) {
+ let remote
+
+ dnode.once('remote', (_remote) => {
+ remote = _remote
+ })
+
+ async function getRemote () {
+ if (remote) return remote
+ return await new Promise(resolve => dnode.once('remote', resolve))
+ }
+
+ return getRemote
+}