hypercore-storage 1.10.0 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js CHANGED
@@ -21,6 +21,7 @@ const {
21
21
  const {
22
22
  createCoreStream,
23
23
  createAliasStream,
24
+ createDiscoveryKeyStream,
24
25
  createBlockStream,
25
26
  createBitfieldStream,
26
27
  createUserDataStream,
@@ -614,6 +615,10 @@ class CorestoreStorage {
614
615
  return createAliasStream(this.db, EMPTY, namespace)
615
616
  }
616
617
 
618
+ createDiscoveryKeyStream (namespace) {
619
+ return createDiscoveryKeyStream(this.db, EMPTY, namespace)
620
+ }
621
+
617
622
  async getAlias (alias) {
618
623
  if (this.version === 0) await this._migrateStore()
619
624
 
package/lib/streams.js CHANGED
@@ -13,6 +13,7 @@ module.exports = {
13
13
  createUserDataStream,
14
14
  createCoreStream,
15
15
  createAliasStream,
16
+ createDiscoveryKeyStream,
16
17
  createTreeNodeStream,
17
18
  createLocalStream
18
19
  }
@@ -27,6 +28,16 @@ function createCoreStream (db, view) {
27
28
  return ite
28
29
  }
29
30
 
31
+ function createDiscoveryKeyStream (db, view, namespace) {
32
+ const start = namespace ? store.coreByAliasStart(namespace) : store.coreStart()
33
+ const end = namespace ? store.coreByAliasEnd(namespace) : store.coreEnd()
34
+
35
+ const ite = view.iterator(db, start, end, false)
36
+
37
+ ite._readableState.map = namespace ? mapNamespaceDiscoveryKeys : mapAllDiscoveryKeys
38
+ return ite
39
+ }
40
+
30
41
  function createAliasStream (db, view, namespace) {
31
42
  const start = store.coreByAliasStart(namespace)
32
43
  const end = store.coreByAliasEnd(namespace)
@@ -117,6 +128,14 @@ function mapCore (data) {
117
128
  return { discoveryKey, core }
118
129
  }
119
130
 
131
+ function mapAllDiscoveryKeys (data) {
132
+ return store.discoveryKey(data.key)
133
+ }
134
+
135
+ function mapNamespaceDiscoveryKeys (data) {
136
+ return data.value
137
+ }
138
+
120
139
  function mapAlias (data) {
121
140
  const alias = store.alias(data.key)
122
141
  return { alias, discoveryKey: data.value }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hypercore-storage",
3
- "version": "1.10.0",
3
+ "version": "1.11.0",
4
4
  "main": "index.js",
5
5
  "files": [
6
6
  "index.js",