aboutsummaryrefslogtreecommitdiff
path: root/lib/util.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/util.js')
-rw-r--r--lib/util.js11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/util.js b/lib/util.js
index c6a4aa2..fb0b13f 100644
--- a/lib/util.js
+++ b/lib/util.js
@@ -1,6 +1,7 @@
var pull = require('pull-stream')
var cat = require('pull-cat')
var h = require('hyperscript')
+var b64url = require('base64-url')
var u = exports
u.ssbRefRegex = /((?:@|%|&|ssb:\/\/%)[A-Za-z0-9\/+]{43}=\.[\w\d]+)/g
@@ -206,3 +207,13 @@ u.mergeOpts = function (a, b) {
}
return obj
}
+
+u.escapeId = function (id) {
+ return b64url.escape(id)
+}
+
+u.unescapeId = function (str) {
+ var m = /^(.)(.*)(\..*)$/.exec(str)
+ if (!m) return b64url.unescape(str)
+ return m[1] + b64url.unescape(m[2]) + m[3]
+}