@hashtree/core 0.1.3 → 0.1.4

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.
Files changed (68) hide show
  1. package/dist/builder.d.ts.map +1 -1
  2. package/dist/builder.js +2 -1
  3. package/dist/builder.js.map +1 -1
  4. package/dist/compare.d.ts +2 -0
  5. package/dist/compare.d.ts.map +1 -0
  6. package/dist/compare.js +8 -0
  7. package/dist/compare.js.map +1 -0
  8. package/dist/encrypted.d.ts.map +1 -1
  9. package/dist/encrypted.js +28 -18
  10. package/dist/encrypted.js.map +1 -1
  11. package/dist/hashtree.js +1 -1
  12. package/dist/hashtree.js.map +1 -1
  13. package/dist/index.d.ts +1 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js.map +1 -1
  16. package/dist/store/blossom.d.ts.map +1 -1
  17. package/dist/store/blossom.js +52 -22
  18. package/dist/store/blossom.js.map +1 -1
  19. package/dist/store/fallback.d.ts +3 -1
  20. package/dist/store/fallback.d.ts.map +1 -1
  21. package/dist/store/fallback.js +60 -24
  22. package/dist/store/fallback.js.map +1 -1
  23. package/dist/tree/create.d.ts.map +1 -1
  24. package/dist/tree/create.js +2 -1
  25. package/dist/tree/create.js.map +1 -1
  26. package/dist/types.d.ts +14 -2
  27. package/dist/types.d.ts.map +1 -1
  28. package/package.json +6 -3
  29. package/dist/resolver/index.d.ts +0 -5
  30. package/dist/resolver/index.d.ts.map +0 -1
  31. package/dist/resolver/index.js +0 -5
  32. package/dist/resolver/index.js.map +0 -1
  33. package/dist/resolver/nostr.d.ts +0 -82
  34. package/dist/resolver/nostr.d.ts.map +0 -1
  35. package/dist/resolver/nostr.js +0 -868
  36. package/dist/resolver/nostr.js.map +0 -1
  37. package/dist/store/dexie.d.ts +0 -44
  38. package/dist/store/dexie.d.ts.map +0 -1
  39. package/dist/store/dexie.js +0 -196
  40. package/dist/store/dexie.js.map +0 -1
  41. package/dist/store/opfs.d.ts +0 -56
  42. package/dist/store/opfs.d.ts.map +0 -1
  43. package/dist/store/opfs.js +0 -200
  44. package/dist/store/opfs.js.map +0 -1
  45. package/dist/webrtc/index.d.ts +0 -4
  46. package/dist/webrtc/index.d.ts.map +0 -1
  47. package/dist/webrtc/index.js +0 -4
  48. package/dist/webrtc/index.js.map +0 -1
  49. package/dist/webrtc/lruCache.d.ts +0 -20
  50. package/dist/webrtc/lruCache.d.ts.map +0 -1
  51. package/dist/webrtc/lruCache.js +0 -59
  52. package/dist/webrtc/lruCache.js.map +0 -1
  53. package/dist/webrtc/peer.d.ts +0 -122
  54. package/dist/webrtc/peer.d.ts.map +0 -1
  55. package/dist/webrtc/peer.js +0 -583
  56. package/dist/webrtc/peer.js.map +0 -1
  57. package/dist/webrtc/protocol.d.ts +0 -76
  58. package/dist/webrtc/protocol.d.ts.map +0 -1
  59. package/dist/webrtc/protocol.js +0 -167
  60. package/dist/webrtc/protocol.js.map +0 -1
  61. package/dist/webrtc/store.d.ts +0 -190
  62. package/dist/webrtc/store.d.ts.map +0 -1
  63. package/dist/webrtc/store.js +0 -1043
  64. package/dist/webrtc/store.js.map +0 -1
  65. package/dist/webrtc/types.d.ts +0 -196
  66. package/dist/webrtc/types.d.ts.map +0 -1
  67. package/dist/webrtc/types.js +0 -46
  68. package/dist/webrtc/types.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"nostr.js","sourceRoot":"","sources":["../../src/resolver/nostr.ts"],"names":[],"mappings":"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"}
@@ -1,44 +0,0 @@
1
- import type { Store, Hash } from '../types.js';
2
- /**
3
- * Dexie-based Store implementation
4
- * Drop-in replacement for IndexedDBStore with better error handling
5
- */
6
- export declare class DexieStore implements Store {
7
- private db;
8
- constructor(dbName?: string);
9
- put(hash: Hash, data: Uint8Array): Promise<boolean>;
10
- get(hash: Hash): Promise<Uint8Array | null>;
11
- has(hash: Hash): Promise<boolean>;
12
- delete(hash: Hash): Promise<boolean>;
13
- /**
14
- * Get all stored hashes
15
- */
16
- keys(): Promise<Hash[]>;
17
- /**
18
- * Clear all data
19
- */
20
- clear(): Promise<void>;
21
- /**
22
- * Get count of stored items
23
- */
24
- count(): Promise<number>;
25
- /**
26
- * Get total bytes stored
27
- * Uses cursor to avoid loading all blobs into memory at once
28
- */
29
- totalBytes(): Promise<number>;
30
- /**
31
- * Evict least-recently-used entries until totalBytes is below maxBytes.
32
- * Returns the number of entries deleted.
33
- */
34
- evict(maxBytes: number): Promise<number>;
35
- /**
36
- * Close the database connection
37
- */
38
- close(): void;
39
- /**
40
- * Delete the entire database
41
- */
42
- static deleteDatabase(dbName?: string): Promise<void>;
43
- }
44
- //# sourceMappingURL=dexie.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dexie.d.ts","sourceRoot":"","sources":["../../src/store/dexie.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAkC/C;;;GAGG;AACH,qBAAa,UAAW,YAAW,KAAK;IACtC,OAAO,CAAC,EAAE,CAAa;gBAEX,MAAM,GAAE,MAAmB;IAIjC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAYnD,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAyB3C,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAYjC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAe1C;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAW7B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAS9B;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAanC;;;OAGG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA4B9C;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;WACU,cAAc,CAAC,MAAM,GAAE,MAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;CAGxE"}
@@ -1,196 +0,0 @@
1
- /**
2
- * Dexie-based IndexedDB store for hashtree blobs
3
- * More robust than raw IndexedDB - handles errors, upgrades, and stuck connections better
4
- */
5
- import Dexie from 'dexie';
6
- import { toHex, fromHex } from '../types.js';
7
- class HashTreeDB extends Dexie {
8
- blobs;
9
- constructor(dbName) {
10
- super(dbName);
11
- // Version 1: Original schema without lastAccess
12
- this.version(1).stores({
13
- blobs: '&hashHex',
14
- });
15
- // Version 2: Add lastAccess field for LRU eviction
16
- this.version(2).stores({
17
- blobs: '&hashHex, lastAccess',
18
- }).upgrade(tx => {
19
- // Add lastAccess to existing entries
20
- const now = Date.now();
21
- return tx.table('blobs').toCollection().modify(blob => {
22
- blob.lastAccess = now;
23
- });
24
- });
25
- }
26
- }
27
- /**
28
- * Dexie-based Store implementation
29
- * Drop-in replacement for IndexedDBStore with better error handling
30
- */
31
- export class DexieStore {
32
- db;
33
- constructor(dbName = 'hashtree') {
34
- this.db = new HashTreeDB(dbName);
35
- }
36
- async put(hash, data) {
37
- const hashHex = toHex(hash);
38
- try {
39
- // Store directly - IDB will clone the data internally
40
- await this.db.blobs.put({ hashHex, data, lastAccess: Date.now() });
41
- return true;
42
- }
43
- catch (e) {
44
- console.error('[DexieStore] put error:', e);
45
- return false;
46
- }
47
- }
48
- async get(hash) {
49
- if (!hash)
50
- return null;
51
- const hashHex = toHex(hash);
52
- try {
53
- const entry = await this.db.blobs.get(hashHex);
54
- if (!entry)
55
- return null;
56
- // Update lastAccess timestamp for LRU tracking (fire-and-forget)
57
- // We need to re-put the entry to avoid fake-indexeddb corruption issues with partial updates
58
- this.db.blobs.put({ ...entry, lastAccess: Date.now() }).catch(() => { });
59
- // Return directly - IDB returns a fresh copy already
60
- // Only slice if the view doesn't match the buffer (rare edge case)
61
- const data = entry.data;
62
- if (data.byteOffset === 0 && data.byteLength === data.buffer.byteLength) {
63
- return data;
64
- }
65
- // Rare: view is a subset of a larger buffer, need to copy
66
- return new Uint8Array(data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength));
67
- }
68
- catch (e) {
69
- console.error('[DexieStore] get error:', e);
70
- return null;
71
- }
72
- }
73
- async has(hash) {
74
- const hashHex = toHex(hash);
75
- try {
76
- // Use count with where clause - doesn't load the blob data
77
- const count = await this.db.blobs.where('hashHex').equals(hashHex).count();
78
- return count > 0;
79
- }
80
- catch (e) {
81
- console.error('[DexieStore] has error:', e);
82
- return false;
83
- }
84
- }
85
- async delete(hash) {
86
- const hashHex = toHex(hash);
87
- try {
88
- const existed = await this.has(hash);
89
- if (existed) {
90
- await this.db.blobs.delete(hashHex);
91
- return true;
92
- }
93
- return false;
94
- }
95
- catch (e) {
96
- console.error('[DexieStore] delete error:', e);
97
- return false;
98
- }
99
- }
100
- /**
101
- * Get all stored hashes
102
- */
103
- async keys() {
104
- try {
105
- // Only fetch the primary keys, not the blob data
106
- const hashHexes = await this.db.blobs.toCollection().primaryKeys();
107
- return hashHexes.map(hex => fromHex(hex));
108
- }
109
- catch (e) {
110
- console.error('[DexieStore] keys error:', e);
111
- return [];
112
- }
113
- }
114
- /**
115
- * Clear all data
116
- */
117
- async clear() {
118
- try {
119
- await this.db.blobs.clear();
120
- }
121
- catch (e) {
122
- console.error('[DexieStore] clear error:', e);
123
- }
124
- }
125
- /**
126
- * Get count of stored items
127
- */
128
- async count() {
129
- try {
130
- return await this.db.blobs.count();
131
- }
132
- catch (e) {
133
- console.error('[DexieStore] count error:', e);
134
- return 0;
135
- }
136
- }
137
- /**
138
- * Get total bytes stored
139
- * Uses cursor to avoid loading all blobs into memory at once
140
- */
141
- async totalBytes() {
142
- try {
143
- let total = 0;
144
- await this.db.blobs.each(entry => {
145
- total += entry.data.byteLength;
146
- });
147
- return total;
148
- }
149
- catch (e) {
150
- console.error('[DexieStore] totalBytes error:', e);
151
- return 0;
152
- }
153
- }
154
- /**
155
- * Evict least-recently-used entries until totalBytes is below maxBytes.
156
- * Returns the number of entries deleted.
157
- */
158
- async evict(maxBytes) {
159
- try {
160
- const currentBytes = await this.totalBytes();
161
- if (currentBytes <= maxBytes)
162
- return 0;
163
- // Get entries sorted by lastAccess (oldest first)
164
- const entries = await this.db.blobs.orderBy('lastAccess').toArray();
165
- let bytesRemoved = 0;
166
- let entriesRemoved = 0;
167
- const targetRemoval = currentBytes - maxBytes;
168
- for (const entry of entries) {
169
- if (bytesRemoved >= targetRemoval)
170
- break;
171
- await this.db.blobs.delete(entry.hashHex);
172
- bytesRemoved += entry.data.byteLength;
173
- entriesRemoved++;
174
- }
175
- console.log(`[DexieStore] Evicted ${entriesRemoved} entries (${bytesRemoved} bytes)`);
176
- return entriesRemoved;
177
- }
178
- catch (e) {
179
- console.error('[DexieStore] evict error:', e);
180
- return 0;
181
- }
182
- }
183
- /**
184
- * Close the database connection
185
- */
186
- close() {
187
- this.db.close();
188
- }
189
- /**
190
- * Delete the entire database
191
- */
192
- static async deleteDatabase(dbName = 'hashtree') {
193
- await Dexie.delete(dbName);
194
- }
195
- }
196
- //# sourceMappingURL=dexie.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dexie.js","sourceRoot":"","sources":["../../src/store/dexie.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAqB,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAS7C,MAAM,UAAW,SAAQ,KAAK;IAC5B,KAAK,CAA4B;IAEjC,YAAY,MAAc;QACxB,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,gDAAgD;QAChD,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACrB,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;QAEH,mDAAmD;QACnD,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACrB,KAAK,EAAE,sBAAsB;SAC9B,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACd,qCAAqC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;gBACpD,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;YACxB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,UAAU;IACb,EAAE,CAAa;IAEvB,YAAY,SAAiB,UAAU;QACrC,IAAI,CAAC,EAAE,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAU,EAAE,IAAgB;QACpC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,sDAAsD;YACtD,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACnE,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;YAC5C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAU;QAClB,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC/C,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YAExB,iEAAiE;YACjE,6FAA6F;YAC7F,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAExE,qDAAqD;YACrD,mEAAmE;YACnE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YACxB,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBACxE,OAAO,IAAI,CAAC;YACd,CAAC;YACD,0DAA0D;YAC1D,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAC/F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAU;QAClB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,2DAA2D;YAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YAC3E,OAAO,KAAK,GAAG,CAAC,CAAC;QACnB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;YAC5C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAU;QACrB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACpC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC;YAC/C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC;YACH,iDAAiD;YACjD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,CAAC;YACnE,OAAO,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC;YAC7C,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACrC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC;YACH,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;YACjC,CAAC,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK,CAAC,QAAgB;QAC1B,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAC7C,IAAI,YAAY,IAAI,QAAQ;gBAAE,OAAO,CAAC,CAAC;YAEvC,kDAAkD;YAClD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC;YAEpE,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,MAAM,aAAa,GAAG,YAAY,GAAG,QAAQ,CAAC;YAE9C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,IAAI,YAAY,IAAI,aAAa;oBAAE,MAAM;gBAEzC,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC1C,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;gBACtC,cAAc,EAAE,CAAC;YACnB,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,wBAAwB,cAAc,aAAa,YAAY,SAAS,CAAC,CAAC;YACtF,OAAO,cAAc,CAAC;QACxB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,SAAiB,UAAU;QACrD,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;CACF"}
@@ -1,56 +0,0 @@
1
- /**
2
- * OPFS (Origin Private File System) content-addressed store
3
- * Persistent browser storage using the File System Access API
4
- *
5
- * Files are stored as: <dirName>/<first2chars>/<hash>.bin
6
- * This provides sharding to avoid too many files in one directory.
7
- */
8
- import { Store, Hash } from '../types.js';
9
- export interface OpfsStoreOptions {
10
- /** Directory name in OPFS root (default: 'hashtree') */
11
- dirName?: string;
12
- }
13
- export declare class OpfsStore implements Store {
14
- private dirName;
15
- private rootDir;
16
- private storeDir;
17
- private initPromise;
18
- constructor(options?: OpfsStoreOptions | string);
19
- /**
20
- * Get or create the store directory (with deduplication)
21
- */
22
- private getStoreDir;
23
- /**
24
- * Get shard directory for a hash (first 2 hex chars)
25
- */
26
- private getShardDir;
27
- put(hash: Hash, data: Uint8Array): Promise<boolean>;
28
- get(hash: Hash): Promise<Uint8Array | null>;
29
- has(hash: Hash): Promise<boolean>;
30
- delete(hash: Hash): Promise<boolean>;
31
- /**
32
- * Get all stored hashes
33
- */
34
- keys(): Promise<Hash[]>;
35
- /**
36
- * Clear all data
37
- */
38
- clear(): Promise<void>;
39
- /**
40
- * Get count of stored items
41
- */
42
- count(): Promise<number>;
43
- /**
44
- * Get total bytes stored
45
- */
46
- totalBytes(): Promise<number>;
47
- /**
48
- * Close - cleanup any resources
49
- */
50
- close(): Promise<void>;
51
- /**
52
- * Delete the entire store directory
53
- */
54
- static deleteStore(dirName?: string): Promise<void>;
55
- }
56
- //# sourceMappingURL=opfs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opfs.d.ts","sourceRoot":"","sources":["../../src/store/opfs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAkB,MAAM,aAAa,CAAC;AAI1D,MAAM,WAAW,gBAAgB;IAC/B,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,SAAU,YAAW,KAAK;IACrC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAA0C;IACzD,OAAO,CAAC,QAAQ,CAA0C;IAC1D,OAAO,CAAC,WAAW,CAAmD;gBAE1D,OAAO,GAAE,gBAAgB,GAAG,MAAyB;IAQjE;;OAEG;YACW,WAAW;IAezB;;OAEG;YACW,WAAW;IAWnB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BnD,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAiB3C,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAajC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAa1C;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAoB7B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAW5B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAK9B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAoBnC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B;;OAEG;WACU,WAAW,CAAC,OAAO,GAAE,MAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ5E"}
@@ -1,200 +0,0 @@
1
- /**
2
- * OPFS (Origin Private File System) content-addressed store
3
- * Persistent browser storage using the File System Access API
4
- *
5
- * Files are stored as: <dirName>/<first2chars>/<hash>.bin
6
- * This provides sharding to avoid too many files in one directory.
7
- */
8
- import { toHex, fromHex } from '../types.js';
9
- const DEFAULT_DIR_NAME = 'hashtree';
10
- export class OpfsStore {
11
- dirName;
12
- rootDir = null;
13
- storeDir = null;
14
- initPromise = null;
15
- constructor(options = DEFAULT_DIR_NAME) {
16
- if (typeof options === 'string') {
17
- this.dirName = options;
18
- }
19
- else {
20
- this.dirName = options.dirName ?? DEFAULT_DIR_NAME;
21
- }
22
- }
23
- /**
24
- * Get or create the store directory (with deduplication)
25
- */
26
- async getStoreDir() {
27
- if (this.storeDir)
28
- return this.storeDir;
29
- // Deduplicate initialization
30
- if (this.initPromise)
31
- return this.initPromise;
32
- this.initPromise = (async () => {
33
- this.rootDir = await navigator.storage.getDirectory();
34
- this.storeDir = await this.rootDir.getDirectoryHandle(this.dirName, { create: true });
35
- return this.storeDir;
36
- })();
37
- return this.initPromise;
38
- }
39
- /**
40
- * Get shard directory for a hash (first 2 hex chars)
41
- */
42
- async getShardDir(hashHex, create) {
43
- const storeDir = await this.getStoreDir();
44
- const shard = hashHex.slice(0, 2);
45
- try {
46
- return await storeDir.getDirectoryHandle(shard, { create });
47
- }
48
- catch {
49
- return null;
50
- }
51
- }
52
- async put(hash, data) {
53
- const hashHex = toHex(hash);
54
- try {
55
- const shardDir = await this.getShardDir(hashHex, true);
56
- if (!shardDir)
57
- return false;
58
- // Check if file already exists
59
- try {
60
- await shardDir.getFileHandle(`${hashHex}.bin`, { create: false });
61
- return false; // Already exists
62
- }
63
- catch {
64
- // File doesn't exist, continue to create
65
- }
66
- const handle = await shardDir.getFileHandle(`${hashHex}.bin`, { create: true });
67
- const writable = await handle.createWritable();
68
- await writable.write(data);
69
- await writable.close();
70
- return true;
71
- }
72
- catch (err) {
73
- console.error(`OPFS write failed for ${hashHex}:`, err);
74
- return false;
75
- }
76
- }
77
- async get(hash) {
78
- if (!hash)
79
- return null;
80
- const hashHex = toHex(hash);
81
- const shardDir = await this.getShardDir(hashHex, false);
82
- if (!shardDir)
83
- return null;
84
- try {
85
- const handle = await shardDir.getFileHandle(`${hashHex}.bin`, { create: false });
86
- const file = await handle.getFile();
87
- const buffer = await file.arrayBuffer();
88
- return new Uint8Array(buffer);
89
- }
90
- catch {
91
- return null;
92
- }
93
- }
94
- async has(hash) {
95
- const hashHex = toHex(hash);
96
- const shardDir = await this.getShardDir(hashHex, false);
97
- if (!shardDir)
98
- return false;
99
- try {
100
- await shardDir.getFileHandle(`${hashHex}.bin`, { create: false });
101
- return true;
102
- }
103
- catch {
104
- return false;
105
- }
106
- }
107
- async delete(hash) {
108
- const hashHex = toHex(hash);
109
- const shardDir = await this.getShardDir(hashHex, false);
110
- if (!shardDir)
111
- return false;
112
- try {
113
- await shardDir.removeEntry(`${hashHex}.bin`);
114
- return true;
115
- }
116
- catch {
117
- return false;
118
- }
119
- }
120
- /**
121
- * Get all stored hashes
122
- */
123
- async keys() {
124
- const storeDir = await this.getStoreDir();
125
- const hashes = [];
126
- // @ts-ignore - entries() exists on FileSystemDirectoryHandle
127
- for await (const [, shardHandle] of storeDir.entries()) {
128
- if (shardHandle.kind !== 'directory')
129
- continue;
130
- // @ts-ignore
131
- for await (const [fileName] of shardHandle.entries()) {
132
- if (fileName.endsWith('.bin')) {
133
- const hashHex = fileName.slice(0, -4);
134
- hashes.push(fromHex(hashHex));
135
- }
136
- }
137
- }
138
- return hashes;
139
- }
140
- /**
141
- * Clear all data
142
- */
143
- async clear() {
144
- const storeDir = await this.getStoreDir();
145
- // @ts-ignore
146
- for await (const [name, handle] of storeDir.entries()) {
147
- if (handle.kind === 'directory') {
148
- await storeDir.removeEntry(name, { recursive: true });
149
- }
150
- }
151
- }
152
- /**
153
- * Get count of stored items
154
- */
155
- async count() {
156
- const keys = await this.keys();
157
- return keys.length;
158
- }
159
- /**
160
- * Get total bytes stored
161
- */
162
- async totalBytes() {
163
- const storeDir = await this.getStoreDir();
164
- let total = 0;
165
- // @ts-ignore
166
- for await (const [, shardHandle] of storeDir.entries()) {
167
- if (shardHandle.kind !== 'directory')
168
- continue;
169
- // @ts-ignore
170
- for await (const [, fileHandle] of shardHandle.entries()) {
171
- if (fileHandle.kind === 'file') {
172
- const file = await fileHandle.getFile();
173
- total += file.size;
174
- }
175
- }
176
- }
177
- return total;
178
- }
179
- /**
180
- * Close - cleanup any resources
181
- */
182
- async close() {
183
- this.rootDir = null;
184
- this.storeDir = null;
185
- this.initPromise = null;
186
- }
187
- /**
188
- * Delete the entire store directory
189
- */
190
- static async deleteStore(dirName = DEFAULT_DIR_NAME) {
191
- const root = await navigator.storage.getDirectory();
192
- try {
193
- await root.removeEntry(dirName, { recursive: true });
194
- }
195
- catch {
196
- // Directory might not exist
197
- }
198
- }
199
- }
200
- //# sourceMappingURL=opfs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opfs.js","sourceRoot":"","sources":["../../src/store/opfs.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- export { WebRTCStore, DEFAULT_RELAYS } from './store.js';
2
- export { Peer } from './peer.js';
3
- export { PeerId, generateUuid, type SignalingMessage, type WebRTCStoreConfig, type PeerStatus, type WebRTCStoreEvent, type WebRTCStoreEventHandler, type EventSigner, type EventEncrypter, type EventDecrypter, type GiftWrapper, type GiftUnwrapper, type SignedEvent, type PeerPool, type PeerClassifier, type PoolConfig, type WebRTCStats, type BandwidthSample, } from './types.js';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/webrtc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,MAAM,EACN,YAAY,EACZ,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC"}
@@ -1,4 +0,0 @@
1
- export { WebRTCStore, DEFAULT_RELAYS } from './store.js';
2
- export { Peer } from './peer.js';
3
- export { PeerId, generateUuid, } from './types.js';
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/webrtc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,MAAM,EACN,YAAY,GAiBb,MAAM,YAAY,CAAC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Simple LRU Cache implementation
3
- */
4
- export declare class LRUCache<K, V> {
5
- private cache;
6
- private maxSize;
7
- constructor(maxSize?: number);
8
- get(key: K): V | undefined;
9
- set(key: K, value: V): void;
10
- has(key: K): boolean;
11
- delete(key: K): boolean;
12
- clear(): void;
13
- get size(): number;
14
- keys(): IterableIterator<K>;
15
- values(): IterableIterator<V>;
16
- entries(): IterableIterator<[K, V]>;
17
- forEach(callback: (value: V, key: K) => void): void;
18
- [Symbol.iterator](): IterableIterator<[K, V]>;
19
- }
20
- //# sourceMappingURL=lruCache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lruCache.d.ts","sourceRoot":"","sources":["../../src/webrtc/lruCache.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,QAAQ,CAAC,CAAC,EAAE,CAAC;IACxB,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,GAAE,MAAY;IAIjC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAU1B,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAe3B,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IAIpB,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IAIvB,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,gBAAgB,CAAC,CAAC,CAAC;IAI3B,MAAM,IAAI,gBAAgB,CAAC,CAAC,CAAC;IAI5B,OAAO,IAAI,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAIpC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IAInD,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAG9C"}