@hashtree/worker 0.2.1 → 0.2.3
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/LICENSE +21 -0
- package/dist/app-runtime.d.ts +60 -0
- package/dist/app-runtime.d.ts.map +1 -0
- package/dist/app-runtime.js +271 -0
- package/dist/app-runtime.js.map +1 -0
- package/dist/capabilities/blossomBandwidthTracker.d.ts +26 -0
- package/dist/capabilities/blossomBandwidthTracker.d.ts.map +1 -0
- package/dist/capabilities/blossomBandwidthTracker.js +53 -0
- package/dist/capabilities/blossomBandwidthTracker.js.map +1 -0
- package/dist/capabilities/blossomTransport.d.ts +22 -0
- package/dist/capabilities/blossomTransport.d.ts.map +1 -0
- package/dist/capabilities/blossomTransport.js +139 -0
- package/dist/capabilities/blossomTransport.js.map +1 -0
- package/dist/capabilities/connectivity.d.ts +3 -0
- package/dist/capabilities/connectivity.d.ts.map +1 -0
- package/dist/capabilities/connectivity.js +49 -0
- package/dist/capabilities/connectivity.js.map +1 -0
- package/dist/capabilities/idbStorage.d.ts +25 -0
- package/dist/capabilities/idbStorage.d.ts.map +1 -0
- package/dist/capabilities/idbStorage.js +73 -0
- package/dist/capabilities/idbStorage.js.map +1 -0
- package/dist/capabilities/meshRouterStore.d.ts +71 -0
- package/dist/capabilities/meshRouterStore.d.ts.map +1 -0
- package/dist/capabilities/meshRouterStore.js +316 -0
- package/dist/capabilities/meshRouterStore.js.map +1 -0
- package/dist/capabilities/rootResolver.d.ts +10 -0
- package/dist/capabilities/rootResolver.d.ts.map +1 -0
- package/dist/capabilities/rootResolver.js +392 -0
- package/dist/capabilities/rootResolver.js.map +1 -0
- package/dist/client-id.d.ts +18 -0
- package/dist/client-id.d.ts.map +1 -0
- package/dist/client-id.js +98 -0
- package/dist/client-id.js.map +1 -0
- package/dist/client.d.ts +61 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +417 -0
- package/dist/client.js.map +1 -0
- package/dist/entry.d.ts +2 -0
- package/dist/entry.d.ts.map +1 -0
- package/dist/entry.js +3 -0
- package/dist/entry.js.map +1 -0
- package/dist/htree-path.d.ts +13 -0
- package/dist/htree-path.d.ts.map +1 -0
- package/dist/htree-path.js +38 -0
- package/dist/htree-path.js.map +1 -0
- package/dist/htree-url.d.ts +22 -0
- package/dist/htree-url.d.ts.map +1 -0
- package/dist/htree-url.js +118 -0
- package/dist/htree-url.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/mediaStreaming.d.ts +7 -0
- package/dist/mediaStreaming.d.ts.map +1 -0
- package/dist/mediaStreaming.js +48 -0
- package/dist/mediaStreaming.js.map +1 -0
- package/dist/p2p/boundedQueue.d.ts +79 -0
- package/dist/p2p/boundedQueue.d.ts.map +1 -0
- package/dist/p2p/boundedQueue.js +134 -0
- package/dist/p2p/boundedQueue.js.map +1 -0
- package/dist/p2p/errorMessage.d.ts +5 -0
- package/dist/p2p/errorMessage.d.ts.map +1 -0
- package/dist/p2p/errorMessage.js +7 -0
- package/dist/p2p/errorMessage.js.map +1 -0
- package/dist/p2p/index.d.ts +8 -0
- package/dist/p2p/index.d.ts.map +1 -0
- package/dist/p2p/index.js +6 -0
- package/dist/p2p/index.js.map +1 -0
- package/dist/p2p/lruCache.d.ts +26 -0
- package/dist/p2p/lruCache.d.ts.map +1 -0
- package/dist/p2p/lruCache.js +65 -0
- package/dist/p2p/lruCache.js.map +1 -0
- package/dist/p2p/meshQueryRouter.d.ts +57 -0
- package/dist/p2p/meshQueryRouter.d.ts.map +1 -0
- package/dist/p2p/meshQueryRouter.js +264 -0
- package/dist/p2p/meshQueryRouter.js.map +1 -0
- package/dist/p2p/protocol.d.ts +10 -0
- package/dist/p2p/protocol.d.ts.map +1 -0
- package/dist/p2p/protocol.js +2 -0
- package/dist/p2p/protocol.js.map +1 -0
- package/dist/p2p/queryForwardingMachine.d.ts +46 -0
- package/dist/p2p/queryForwardingMachine.d.ts.map +1 -0
- package/dist/p2p/queryForwardingMachine.js +144 -0
- package/dist/p2p/queryForwardingMachine.js.map +1 -0
- package/dist/p2p/signaling.d.ts +63 -0
- package/dist/p2p/signaling.d.ts.map +1 -0
- package/dist/p2p/signaling.js +185 -0
- package/dist/p2p/signaling.js.map +1 -0
- package/dist/p2p/uploadRateLimiter.d.ts +21 -0
- package/dist/p2p/uploadRateLimiter.d.ts.map +1 -0
- package/dist/p2p/uploadRateLimiter.js +62 -0
- package/dist/p2p/uploadRateLimiter.js.map +1 -0
- package/dist/p2p/webrtcController.d.ts +176 -0
- package/dist/p2p/webrtcController.d.ts.map +1 -0
- package/dist/p2p/webrtcController.js +938 -0
- package/dist/p2p/webrtcController.js.map +1 -0
- package/dist/p2p/webrtcProxy.d.ts +62 -0
- package/dist/p2p/webrtcProxy.d.ts.map +1 -0
- package/dist/p2p/webrtcProxy.js +447 -0
- package/dist/p2p/webrtcProxy.js.map +1 -0
- package/dist/privacyGuards.d.ts +14 -0
- package/dist/privacyGuards.d.ts.map +1 -0
- package/dist/privacyGuards.js +27 -0
- package/dist/privacyGuards.js.map +1 -0
- package/dist/protocol.d.ts +225 -0
- package/dist/protocol.d.ts.map +1 -0
- package/dist/protocol.js +2 -0
- package/dist/protocol.js.map +1 -0
- package/dist/relay/identity.d.ts +36 -0
- package/dist/relay/identity.d.ts.map +1 -0
- package/dist/relay/identity.js +78 -0
- package/dist/relay/identity.js.map +1 -0
- package/dist/relay/mediaHandler.d.ts +64 -0
- package/dist/relay/mediaHandler.d.ts.map +1 -0
- package/dist/relay/mediaHandler.js +1285 -0
- package/dist/relay/mediaHandler.js.map +1 -0
- package/dist/relay/ndk.d.ts +96 -0
- package/dist/relay/ndk.d.ts.map +1 -0
- package/dist/relay/ndk.js +502 -0
- package/dist/relay/ndk.js.map +1 -0
- package/dist/relay/nostr-wasm.d.ts +14 -0
- package/dist/relay/nostr-wasm.d.ts.map +1 -0
- package/dist/relay/nostr-wasm.js +246 -0
- package/dist/relay/nostr-wasm.js.map +1 -0
- package/dist/relay/nostr.d.ts +60 -0
- package/dist/relay/nostr.d.ts.map +1 -0
- package/dist/relay/nostr.js +207 -0
- package/dist/relay/nostr.js.map +1 -0
- package/dist/relay/protocol.d.ts +592 -0
- package/dist/relay/protocol.d.ts.map +1 -0
- package/dist/relay/protocol.js +16 -0
- package/dist/relay/protocol.js.map +1 -0
- package/dist/relay/publicAssetUrl.d.ts +6 -0
- package/dist/relay/publicAssetUrl.d.ts.map +1 -0
- package/dist/relay/publicAssetUrl.js +14 -0
- package/dist/relay/publicAssetUrl.js.map +1 -0
- package/dist/relay/rootPathResolver.d.ts +9 -0
- package/dist/relay/rootPathResolver.d.ts.map +1 -0
- package/dist/relay/rootPathResolver.js +32 -0
- package/dist/relay/rootPathResolver.js.map +1 -0
- package/dist/relay/signing.d.ts +50 -0
- package/dist/relay/signing.d.ts.map +1 -0
- package/dist/relay/signing.js +299 -0
- package/dist/relay/signing.js.map +1 -0
- package/dist/relay/treeRootCache.d.ts +86 -0
- package/dist/relay/treeRootCache.d.ts.map +1 -0
- package/dist/relay/treeRootCache.js +269 -0
- package/dist/relay/treeRootCache.js.map +1 -0
- package/dist/relay/treeRootSubscription.d.ts +55 -0
- package/dist/relay/treeRootSubscription.d.ts.map +1 -0
- package/dist/relay/treeRootSubscription.js +478 -0
- package/dist/relay/treeRootSubscription.js.map +1 -0
- package/dist/relay/utils/constants.d.ts +76 -0
- package/dist/relay/utils/constants.d.ts.map +1 -0
- package/dist/relay/utils/constants.js +113 -0
- package/dist/relay/utils/constants.js.map +1 -0
- package/dist/relay/utils/errorMessage.d.ts +5 -0
- package/dist/relay/utils/errorMessage.d.ts.map +1 -0
- package/dist/relay/utils/errorMessage.js +8 -0
- package/dist/relay/utils/errorMessage.js.map +1 -0
- package/dist/relay/utils/lruCache.d.ts +26 -0
- package/dist/relay/utils/lruCache.d.ts.map +1 -0
- package/dist/relay/utils/lruCache.js +66 -0
- package/dist/relay/utils/lruCache.js.map +1 -0
- package/dist/relay/webrtc.d.ts +2 -0
- package/dist/relay/webrtc.d.ts.map +1 -0
- package/dist/relay/webrtc.js +3 -0
- package/dist/relay/webrtc.js.map +1 -0
- package/dist/relay/webrtcSignaling.d.ts +37 -0
- package/dist/relay/webrtcSignaling.d.ts.map +1 -0
- package/dist/relay/webrtcSignaling.js +86 -0
- package/dist/relay/webrtcSignaling.js.map +1 -0
- package/dist/relay/worker.d.ts +12 -0
- package/dist/relay/worker.d.ts.map +1 -0
- package/dist/relay/worker.js +1540 -0
- package/dist/relay/worker.js.map +1 -0
- package/dist/relay-client.d.ts +31 -0
- package/dist/relay-client.d.ts.map +1 -0
- package/dist/relay-client.js +197 -0
- package/dist/relay-client.js.map +1 -0
- package/dist/relay-entry.d.ts +2 -0
- package/dist/relay-entry.d.ts.map +1 -0
- package/dist/relay-entry.js +2 -0
- package/dist/relay-entry.js.map +1 -0
- package/dist/runtime-network.d.ts +23 -0
- package/dist/runtime-network.d.ts.map +1 -0
- package/dist/runtime-network.js +105 -0
- package/dist/runtime-network.js.map +1 -0
- package/dist/runtime.d.ts +24 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +126 -0
- package/dist/runtime.js.map +1 -0
- package/dist/transferableBytes.d.ts +2 -0
- package/dist/transferableBytes.d.ts.map +1 -0
- package/dist/transferableBytes.js +6 -0
- package/dist/transferableBytes.js.map +1 -0
- package/dist/tree-root.d.ts +201 -0
- package/dist/tree-root.d.ts.map +1 -0
- package/dist/tree-root.js +632 -0
- package/dist/tree-root.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/worker.d.ts +9 -0
- package/dist/worker.d.ts.map +1 -0
- package/dist/worker.js +793 -0
- package/dist/worker.js.map +1 -0
- package/package.json +14 -14
- package/src/capabilities/blossomTransport.ts +1 -1
- package/src/worker.ts +2 -1
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
// Nostr Event Kinds Constants
|
|
3
|
+
// Based on NIPs (Nostr Implementation Possibilities)
|
|
4
|
+
// Only includes constants that are actually used in the codebase
|
|
5
|
+
const TEST_BOOTSTRAP_PUBKEY = import.meta.env.VITE_TEST_BOOTSTRAP_PUBKEY;
|
|
6
|
+
// Default content/social graph bootstrap pubkey (sirius)
|
|
7
|
+
export const DEFAULT_BOOTSTRAP_PUBKEY = import.meta.env.VITE_TEST_MODE && TEST_BOOTSTRAP_PUBKEY
|
|
8
|
+
? TEST_BOOTSTRAP_PUBKEY
|
|
9
|
+
: '4523be58d395b1b196a9b8c82b038b6895cb02b683d0c253a955068dba1facd0';
|
|
10
|
+
// Seed pubkeys to populate the video feed when follows are empty.
|
|
11
|
+
export const DEFAULT_VIDEO_FEED_PUBKEYS = [
|
|
12
|
+
'feb535ca427f7ab7551adfc5fcc39132b10cbc11ce5841f05588680e94f4e71a',
|
|
13
|
+
];
|
|
14
|
+
// NIP-01: Basic protocol
|
|
15
|
+
export const KIND_METADATA = 0; // User profile metadata
|
|
16
|
+
export const KIND_TEXT_NOTE = 1; // Text note
|
|
17
|
+
export const KIND_CONTACTS = 3; // Contact list (follows)
|
|
18
|
+
// NIP-18: Reposts
|
|
19
|
+
export const KIND_REPOST = 6;
|
|
20
|
+
// NIP-25: Reactions
|
|
21
|
+
export const KIND_REACTION = 7;
|
|
22
|
+
// NIP-16: Event Treatment
|
|
23
|
+
export const KIND_EPHEMERAL = 20000; // Ephemeral events
|
|
24
|
+
// NIP-04: Encrypted Direct Messages
|
|
25
|
+
export const KIND_CHAT_MESSAGE = 14; // Encrypted direct message (double-ratchet)
|
|
26
|
+
// NIP-28: Public chat
|
|
27
|
+
export const KIND_CHANNEL_CREATE = 40; // Channel creation
|
|
28
|
+
export const KIND_CHANNEL_MESSAGE = 42; // Channel message
|
|
29
|
+
// NIP-57: Lightning zaps
|
|
30
|
+
export const KIND_ZAP_RECEIPT = 9735;
|
|
31
|
+
// NIP-51: Lists
|
|
32
|
+
export const KIND_MUTE_LIST = 10000; // Mute list (deprecated, use 30000)
|
|
33
|
+
export const KIND_FLAG_LIST = 16463; // Flagged/reported users list
|
|
34
|
+
// NIP-78: App-specific data
|
|
35
|
+
export const KIND_APP_DATA = 30078;
|
|
36
|
+
// Long-form content
|
|
37
|
+
export const KIND_LONG_FORM_CONTENT = 30023;
|
|
38
|
+
// HTTP authentication
|
|
39
|
+
export const KIND_HTTP_AUTH = 27235;
|
|
40
|
+
// Blossom authorization
|
|
41
|
+
export const KIND_BLOSSOM_AUTH = 24242;
|
|
42
|
+
// Debug/development
|
|
43
|
+
export const KIND_DEBUG_DATA = 30000; // Used for encrypted debug key-value storage
|
|
44
|
+
// Classified listings
|
|
45
|
+
export const KIND_CLASSIFIED = 30402;
|
|
46
|
+
// Highlights
|
|
47
|
+
export const KIND_HIGHLIGHT = 9802;
|
|
48
|
+
// NIP-68: Picture-first feeds
|
|
49
|
+
export const KIND_PICTURE_FIRST = 20;
|
|
50
|
+
// Additional kinds found in codebase
|
|
51
|
+
export const KIND_WALLET_CONNECT = 6927;
|
|
52
|
+
// NIP-34: Git Repositories
|
|
53
|
+
export const KIND_REPO_ANNOUNCEMENT = 30617; // Repository announcement
|
|
54
|
+
export const KIND_REPO_STATE = 30618; // Repository state (branch/tag tracking)
|
|
55
|
+
export const KIND_PATCH = 1617; // Patch (code changes under 60kb)
|
|
56
|
+
export const KIND_PULL_REQUEST = 1618; // Pull request
|
|
57
|
+
export const KIND_PR_UPDATE = 1619; // PR update (revision)
|
|
58
|
+
export const KIND_ISSUE = 1621; // Issue (bug report, feature request)
|
|
59
|
+
// Status events (1630-1633)
|
|
60
|
+
export const KIND_STATUS_OPEN = 1630; // Open/default
|
|
61
|
+
export const KIND_STATUS_APPLIED = 1631; // Applied/Merged/Resolved
|
|
62
|
+
export const KIND_STATUS_CLOSED = 1632; // Closed
|
|
63
|
+
export const KIND_STATUS_DRAFT = 1633; // Draft
|
|
64
|
+
// Debug namespaces for debug pkg
|
|
65
|
+
export const DEBUG_NAMESPACES = {
|
|
66
|
+
// NDK
|
|
67
|
+
NDK_RELAY: "ndk:relay",
|
|
68
|
+
NDK_RELAY_CONN: "ndk:relay:conn",
|
|
69
|
+
NDK_RELAY_ERROR: "ndk:relay:error",
|
|
70
|
+
NDK_RELAY_WARN: "ndk:relay:warn",
|
|
71
|
+
NDK_SUBSCRIPTION: "ndk:subscription",
|
|
72
|
+
NDK_SUBSCRIPTION_ERROR: "ndk:subscription:error",
|
|
73
|
+
NDK_SUBSCRIPTION_WARN: "ndk:subscription:warn",
|
|
74
|
+
NDK_CACHE: "ndk:cache",
|
|
75
|
+
NDK_CACHE_ERROR: "ndk:cache:error",
|
|
76
|
+
NDK_CACHE_WARN: "ndk:cache:warn",
|
|
77
|
+
NDK_POOL: "ndk:pool",
|
|
78
|
+
NDK_POOL_ERROR: "ndk:pool:error",
|
|
79
|
+
NDK_POOL_WARN: "ndk:pool:warn",
|
|
80
|
+
NDK_WORKER: "ndk:worker",
|
|
81
|
+
NDK_WORKER_ERROR: "ndk:worker:error",
|
|
82
|
+
NDK_WORKER_WARN: "ndk:worker:warn",
|
|
83
|
+
NDK_TRANSPORT: "ndk:transport",
|
|
84
|
+
// WebRTC
|
|
85
|
+
WEBRTC_PEER: "webrtc:peer",
|
|
86
|
+
WEBRTC_PEER_LIFECYCLE: "webrtc:peer:lifecycle", // connect/disconnect/state changes
|
|
87
|
+
WEBRTC_PEER_MESSAGES: "webrtc:peer:messages", // offer/answer/ICE candidates
|
|
88
|
+
WEBRTC_PEER_DATA: "webrtc:peer:data", // data channel events
|
|
89
|
+
WEBRTC_SIGNALING: "webrtc:signaling",
|
|
90
|
+
// Cashu
|
|
91
|
+
CASHU_WALLET: "cashu:wallet",
|
|
92
|
+
CASHU_WALLET_ERROR: "cashu:wallet:error",
|
|
93
|
+
CASHU_WALLET_WARN: "cashu:wallet:warn",
|
|
94
|
+
CASHU_MINT: "cashu:mint",
|
|
95
|
+
CASHU_MINT_ERROR: "cashu:mint:error",
|
|
96
|
+
CASHU_MINT_WARN: "cashu:mint:warn",
|
|
97
|
+
// UI
|
|
98
|
+
UI_FEED: "ui:feed",
|
|
99
|
+
UI_FEED_ERROR: "ui:feed:error",
|
|
100
|
+
UI_FEED_WARN: "ui:feed:warn",
|
|
101
|
+
UI_CHAT: "ui:chat",
|
|
102
|
+
UI_CHAT_ERROR: "ui:chat:error",
|
|
103
|
+
UI_CHAT_WARN: "ui:chat:warn",
|
|
104
|
+
// Hooks
|
|
105
|
+
HOOKS: "hooks",
|
|
106
|
+
HOOKS_ERROR: "hooks:error",
|
|
107
|
+
HOOKS_WARN: "hooks:warn",
|
|
108
|
+
// Utils
|
|
109
|
+
UTILS: "utils",
|
|
110
|
+
UTILS_ERROR: "utils:error",
|
|
111
|
+
UTILS_WARN: "utils:warn",
|
|
112
|
+
};
|
|
113
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/relay/utils/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errorMessage.d.ts","sourceRoot":"","sources":["../../../src/relay/utils/errorMessage.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAEpD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errorMessage.js","sourceRoot":"","sources":["../../../src/relay/utils/errorMessage.ts"],"names":[],"mappings":"AAAA,cAAc;AACd;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
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
|
+
/**
|
|
17
|
+
* Iterate over all entries (note: does not update LRU order)
|
|
18
|
+
*/
|
|
19
|
+
entries(): IterableIterator<[K, V]>;
|
|
20
|
+
forEach(callback: (value: V, key: K) => void): void;
|
|
21
|
+
/**
|
|
22
|
+
* Make the cache iterable
|
|
23
|
+
*/
|
|
24
|
+
[Symbol.iterator](): IterableIterator<[K, V]>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=lruCache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lruCache.d.ts","sourceRoot":"","sources":["../../../src/relay/utils/lruCache.ts"],"names":[],"mappings":"AACA;;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;IAI7B;;OAEG;IACF,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;;OAEG;IACH,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAG9C"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
/**
|
|
3
|
+
* Simple LRU Cache implementation
|
|
4
|
+
*/
|
|
5
|
+
export class LRUCache {
|
|
6
|
+
cache = new Map();
|
|
7
|
+
maxSize;
|
|
8
|
+
constructor(maxSize = 100) {
|
|
9
|
+
this.maxSize = maxSize;
|
|
10
|
+
}
|
|
11
|
+
get(key) {
|
|
12
|
+
const value = this.cache.get(key);
|
|
13
|
+
if (value !== undefined) {
|
|
14
|
+
// Move to end (most recently used)
|
|
15
|
+
this.cache.delete(key);
|
|
16
|
+
this.cache.set(key, value);
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
set(key, value) {
|
|
21
|
+
// Delete first to reset position if exists
|
|
22
|
+
this.cache.delete(key);
|
|
23
|
+
// Evict oldest if at capacity
|
|
24
|
+
if (this.cache.size >= this.maxSize) {
|
|
25
|
+
const oldest = this.cache.keys().next().value;
|
|
26
|
+
if (oldest !== undefined) {
|
|
27
|
+
this.cache.delete(oldest);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
this.cache.set(key, value);
|
|
31
|
+
}
|
|
32
|
+
has(key) {
|
|
33
|
+
return this.cache.has(key);
|
|
34
|
+
}
|
|
35
|
+
delete(key) {
|
|
36
|
+
return this.cache.delete(key);
|
|
37
|
+
}
|
|
38
|
+
clear() {
|
|
39
|
+
this.cache.clear();
|
|
40
|
+
}
|
|
41
|
+
get size() {
|
|
42
|
+
return this.cache.size;
|
|
43
|
+
}
|
|
44
|
+
keys() {
|
|
45
|
+
return this.cache.keys();
|
|
46
|
+
}
|
|
47
|
+
values() {
|
|
48
|
+
return this.cache.values();
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Iterate over all entries (note: does not update LRU order)
|
|
52
|
+
*/
|
|
53
|
+
*entries() {
|
|
54
|
+
yield* this.cache.entries();
|
|
55
|
+
}
|
|
56
|
+
forEach(callback) {
|
|
57
|
+
this.cache.forEach(callback);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Make the cache iterable
|
|
61
|
+
*/
|
|
62
|
+
[Symbol.iterator]() {
|
|
63
|
+
return this.entries();
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=lruCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lruCache.js","sourceRoot":"","sources":["../../../src/relay/utils/lruCache.ts"],"names":[],"mappings":"AAAA,cAAc;AACd;;GAEG;AACH,MAAM,OAAO,QAAQ;IACX,KAAK,GAAG,IAAI,GAAG,EAAQ,CAAC;IACxB,OAAO,CAAS;IAExB,YAAY,UAAkB,GAAG;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,GAAG,CAAC,GAAM;QACR,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,mCAAmC;YACnC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,2CAA2C;QAC3C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAEvB,8BAA8B;QAC9B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAC9C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,GAAM;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,CAAC,OAAO;QACN,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,OAAO,CAAC,QAAoC;QAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webrtc.d.ts","sourceRoot":"","sources":["../../src/relay/webrtc.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,EAChB,KAAK,sBAAsB,GAC5B,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webrtc.js","sourceRoot":"","sources":["../../src/relay/webrtc.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,OAAO,EACL,gBAAgB,GAEjB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WebRTC Signaling Handler for Hashtree Worker
|
|
3
|
+
*
|
|
4
|
+
* Handles WebRTC signaling via Nostr (kind 25050).
|
|
5
|
+
* - Hello messages: broadcast with #l tag for peer discovery
|
|
6
|
+
* - Directed messages (offer/answer/candidates): gift-wrapped for privacy
|
|
7
|
+
*/
|
|
8
|
+
import type { SignedEvent } from './protocol';
|
|
9
|
+
import type { SignalingMessage } from '@hashtree/nostr';
|
|
10
|
+
import type { WebRTCController } from './webrtc';
|
|
11
|
+
/**
|
|
12
|
+
* Initialize the WebRTC signaling handler
|
|
13
|
+
*/
|
|
14
|
+
export declare function initWebRTCSignaling(controller: WebRTCController): void;
|
|
15
|
+
/**
|
|
16
|
+
* Send WebRTC signaling message via Nostr (kind 25050)
|
|
17
|
+
* - Hello messages: broadcast with #l tag
|
|
18
|
+
* - Directed messages (offer/answer/candidates): gift-wrapped
|
|
19
|
+
*/
|
|
20
|
+
export declare function sendWebRTCSignaling(msg: SignalingMessage, recipientPubkey?: string): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Subscribe to WebRTC signaling events.
|
|
23
|
+
* NOTE: The caller must set up the event handler via setOnEvent
|
|
24
|
+
* and route webrtc-* subscriptions to handleWebRTCSignalingEvent.
|
|
25
|
+
*/
|
|
26
|
+
export declare function setupWebRTCSignalingSubscription(myPubkey: string): void;
|
|
27
|
+
/**
|
|
28
|
+
* Re-subscribe to WebRTC signaling after relay change.
|
|
29
|
+
* Call this after setRelays to ensure subscriptions work on new relays.
|
|
30
|
+
*/
|
|
31
|
+
export declare function resubscribeWebRTCSignaling(): void;
|
|
32
|
+
/**
|
|
33
|
+
* Handle incoming WebRTC signaling event.
|
|
34
|
+
* Call this from the unified NostrManager event handler for webrtc-* subscriptions.
|
|
35
|
+
*/
|
|
36
|
+
export declare function handleWebRTCSignalingEvent(event: SignedEvent): Promise<void>;
|
|
37
|
+
//# sourceMappingURL=webrtcSignaling.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webrtcSignaling.d.ts","sourceRoot":"","sources":["../../src/relay/webrtcSignaling.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAYjD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAEtE;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,gBAAgB,EACrB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC,CAYf;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAevE;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,IAAI,IAAI,CAQjD;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAelF"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
/**
|
|
3
|
+
* WebRTC Signaling Handler for Hashtree Worker
|
|
4
|
+
*
|
|
5
|
+
* Handles WebRTC signaling via Nostr (kind 25050).
|
|
6
|
+
* - Hello messages: broadcast with #l tag for peer discovery
|
|
7
|
+
* - Directed messages (offer/answer/candidates): gift-wrapped for privacy
|
|
8
|
+
*/
|
|
9
|
+
import { createSignalingFilters, decodeSignalingEvent, sendSignalingMessage, } from '../p2p/signaling.js';
|
|
10
|
+
import { subscribe as ndkSubscribe, publish as ndkPublish } from './ndk';
|
|
11
|
+
import { signEvent, giftWrap, giftUnwrap } from './signing';
|
|
12
|
+
let webrtc = null;
|
|
13
|
+
let signalingPubkey = null;
|
|
14
|
+
/**
|
|
15
|
+
* Initialize the WebRTC signaling handler
|
|
16
|
+
*/
|
|
17
|
+
export function initWebRTCSignaling(controller) {
|
|
18
|
+
webrtc = controller;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Send WebRTC signaling message via Nostr (kind 25050)
|
|
22
|
+
* - Hello messages: broadcast with #l tag
|
|
23
|
+
* - Directed messages (offer/answer/candidates): gift-wrapped
|
|
24
|
+
*/
|
|
25
|
+
export async function sendWebRTCSignaling(msg, recipientPubkey) {
|
|
26
|
+
try {
|
|
27
|
+
await sendSignalingMessage({
|
|
28
|
+
msg,
|
|
29
|
+
recipientPubkey,
|
|
30
|
+
signEvent,
|
|
31
|
+
giftWrap,
|
|
32
|
+
publish: ndkPublish,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
catch (err) {
|
|
36
|
+
console.error('[Worker] Failed to send WebRTC signaling:', err);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Subscribe to WebRTC signaling events.
|
|
41
|
+
* NOTE: The caller must set up the event handler via setOnEvent
|
|
42
|
+
* and route webrtc-* subscriptions to handleWebRTCSignalingEvent.
|
|
43
|
+
*/
|
|
44
|
+
export function setupWebRTCSignalingSubscription(myPubkey) {
|
|
45
|
+
signalingPubkey = myPubkey;
|
|
46
|
+
const { since, helloFilter, directedFilter } = createSignalingFilters(myPubkey);
|
|
47
|
+
console.log('[WebRTC Signaling] Setting up subscriptions for', myPubkey.slice(0, 16), 'since', since);
|
|
48
|
+
// Subscribe to hello messages (broadcast discovery)
|
|
49
|
+
console.log('[WebRTC Signaling] Creating webrtc-hello subscription');
|
|
50
|
+
ndkSubscribe('webrtc-hello', [helloFilter]);
|
|
51
|
+
// Subscribe to directed signaling (offers/answers to us)
|
|
52
|
+
console.log('[WebRTC Signaling] Creating webrtc-directed subscription');
|
|
53
|
+
ndkSubscribe('webrtc-directed', [directedFilter]);
|
|
54
|
+
console.log('[WebRTC Signaling] Subscriptions setup complete');
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Re-subscribe to WebRTC signaling after relay change.
|
|
58
|
+
* Call this after setRelays to ensure subscriptions work on new relays.
|
|
59
|
+
*/
|
|
60
|
+
export function resubscribeWebRTCSignaling() {
|
|
61
|
+
if (!signalingPubkey) {
|
|
62
|
+
console.warn('[WebRTC Signaling] Cannot resubscribe - no pubkey set');
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
console.log('[WebRTC Signaling] Resubscribing with pubkey:', signalingPubkey.slice(0, 16));
|
|
66
|
+
setupWebRTCSignalingSubscription(signalingPubkey);
|
|
67
|
+
console.log('[WebRTC Signaling] Resubscription complete');
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Handle incoming WebRTC signaling event.
|
|
71
|
+
* Call this from the unified NostrManager event handler for webrtc-* subscriptions.
|
|
72
|
+
*/
|
|
73
|
+
export async function handleWebRTCSignalingEvent(event) {
|
|
74
|
+
const decoded = await decodeSignalingEvent({
|
|
75
|
+
event,
|
|
76
|
+
giftUnwrap,
|
|
77
|
+
});
|
|
78
|
+
if (!decoded) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
if (decoded.message.type !== 'hello') {
|
|
82
|
+
console.log('[WebRTC] Unwrapped message:', decoded.message.type, 'from', decoded.senderPubkey.slice(0, 8));
|
|
83
|
+
}
|
|
84
|
+
webrtc?.handleSignalingMessage(decoded.message, decoded.senderPubkey);
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=webrtcSignaling.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webrtcSignaling.js","sourceRoot":"","sources":["../../src/relay/webrtcSignaling.ts"],"names":[],"mappings":"AAAA,cAAc;AACd;;;;;;GAMG;AAKH,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,IAAI,YAAY,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5D,IAAI,MAAM,GAA4B,IAAI,CAAC;AAC3C,IAAI,eAAe,GAAkB,IAAI,CAAC;AAE1C;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAA4B;IAC9D,MAAM,GAAG,UAAU,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAqB,EACrB,eAAwB;IAExB,IAAI,CAAC;QACH,MAAM,oBAAoB,CAAc;YACtC,GAAG;YACH,eAAe;YACf,SAAS;YACT,QAAQ;YACR,OAAO,EAAE,UAAU;SACpB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gCAAgC,CAAC,QAAgB;IAC/D,eAAe,GAAG,QAAQ,CAAC;IAC3B,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAEhF,OAAO,CAAC,GAAG,CAAC,iDAAiD,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAEtG,oDAAoD;IACpD,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;IACrE,YAAY,CAAC,cAAc,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAE5C,yDAAyD;IACzD,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IACxE,YAAY,CAAC,iBAAiB,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAElD,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;AACjE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B;IACxC,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,+CAA+C,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3F,gCAAgC,CAAC,eAAe,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;AAC5D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,KAAkB;IACjE,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC;QACzC,KAAK;QACL,UAAU;KACX,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7G,CAAC;IAED,MAAM,EAAE,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;AACxE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hashtree Worker
|
|
3
|
+
*
|
|
4
|
+
* Dedicated worker that owns:
|
|
5
|
+
* - HashTree + DexieStore (IndexedDB storage)
|
|
6
|
+
* - WebRTC peer connections (P2P data transfer)
|
|
7
|
+
*
|
|
8
|
+
* Main thread communicates via postMessage.
|
|
9
|
+
* NIP-07 signing/encryption delegated back to main thread.
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=worker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/relay/worker.ts"],"names":[],"mappings":"AACA;;;;;;;;;GASG"}
|