@minip2p/react-native 0.8.2 → 0.9.1
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/android/src/main/jniLibs/arm64-v8a/libminip2p_ffi.so +0 -0
- package/android/src/main/jniLibs/x86_64/libminip2p_ffi.so +0 -0
- package/build/Minip2pFfi.xcframework/ios-arm64/libminip2p_ffi.a +2 -2
- package/build/Minip2pFfi.xcframework/ios-arm64-simulator/libminip2p_ffi.a +2 -2
- package/cpp/generated/minip2p_ffi.cpp +8 -12
- package/lib/module/adapter.js +118 -33
- package/lib/module/adapter.js.map +1 -1
- package/lib/module/generated/minip2p_ffi.js +16 -14
- package/lib/module/generated/minip2p_ffi.js.map +1 -1
- package/lib/module/generated/minip2p_ffi_core.js +273 -8
- package/lib/module/generated/minip2p_ffi_core.js.map +1 -1
- package/lib/typescript/src/adapter.d.ts.map +1 -1
- package/lib/typescript/src/generated/minip2p_ffi-ffi.d.ts +4 -4
- package/lib/typescript/src/generated/minip2p_ffi-ffi.d.ts.map +1 -1
- package/lib/typescript/src/generated/minip2p_ffi.d.ts +14 -10
- package/lib/typescript/src/generated/minip2p_ffi.d.ts.map +1 -1
- package/lib/typescript/src/generated/minip2p_ffi_core.d.ts +219 -20
- package/lib/typescript/src/generated/minip2p_ffi_core.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/adapter.ts +121 -58
- package/src/generated/minip2p_ffi-ffi.ts +4 -4
- package/src/generated/minip2p_ffi.ts +19 -19
- package/src/generated/minip2p_ffi_core.ts +285 -42
|
Binary file
|
|
Binary file
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
[diffend] Oversized file quarantined before diffing.
|
|
2
2
|
name: package/build/Minip2pFfi.xcframework/ios-arm64/libminip2p_ffi.a
|
|
3
|
-
size:
|
|
4
|
-
sha256:
|
|
3
|
+
size: 37393040 bytes
|
|
4
|
+
sha256: 4f3090d0ae272d4859e4b7e974c5d19b569d6270793bef20a586107a384bdc63
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
[diffend] Oversized file quarantined before diffing.
|
|
2
2
|
name: package/build/Minip2pFfi.xcframework/ios-arm64-simulator/libminip2p_ffi.a
|
|
3
|
-
size:
|
|
4
|
-
sha256:
|
|
3
|
+
size: 37375488 bytes
|
|
4
|
+
sha256: 608f7d8298445369a733cd5d902cdb7cb75900ff0906192a37e6206f574afb53
|
|
@@ -168,7 +168,6 @@ extern "C" {
|
|
|
168
168
|
);
|
|
169
169
|
void uniffi_minip2p_ffi_fn_method_p2pendpoint_abandon_stream(
|
|
170
170
|
/*handle*/ uint64_t ptr,
|
|
171
|
-
RustBuffer peer_id,
|
|
172
171
|
uint64_t conn_id,
|
|
173
172
|
uint64_t stream_id,
|
|
174
173
|
RustCallStatus *uniffi_out_err
|
|
@@ -189,7 +188,6 @@ extern "C" {
|
|
|
189
188
|
);
|
|
190
189
|
void uniffi_minip2p_ffi_fn_method_p2pendpoint_close_stream_write(
|
|
191
190
|
/*handle*/ uint64_t ptr,
|
|
192
|
-
RustBuffer peer_id,
|
|
193
191
|
uint64_t conn_id,
|
|
194
192
|
uint64_t stream_id,
|
|
195
193
|
RustCallStatus *uniffi_out_err
|
|
@@ -276,14 +274,12 @@ extern "C" {
|
|
|
276
274
|
);
|
|
277
275
|
void uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_stream(
|
|
278
276
|
/*handle*/ uint64_t ptr,
|
|
279
|
-
RustBuffer peer_id,
|
|
280
277
|
uint64_t conn_id,
|
|
281
278
|
uint64_t stream_id,
|
|
282
279
|
RustCallStatus *uniffi_out_err
|
|
283
280
|
);
|
|
284
281
|
int8_t uniffi_minip2p_ffi_fn_method_p2pendpoint_send_stream(
|
|
285
282
|
/*handle*/ uint64_t ptr,
|
|
286
|
-
RustBuffer peer_id,
|
|
287
283
|
uint64_t conn_id,
|
|
288
284
|
uint64_t stream_id,
|
|
289
285
|
RustBuffer data,
|
|
@@ -2567,7 +2563,7 @@ NativeMinip2pFfi::NativeMinip2pFfi(
|
|
|
2567
2563
|
props["ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_abandon_stream"] = jsi::Function::createFromHostFunction(
|
|
2568
2564
|
rt,
|
|
2569
2565
|
jsi::PropNameID::forAscii(rt, "ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_abandon_stream"),
|
|
2570
|
-
|
|
2566
|
+
3,
|
|
2571
2567
|
[this](jsi::Runtime &rt, const jsi::Value &thisVal, const jsi::Value *args, size_t count) -> jsi::Value {
|
|
2572
2568
|
return this->cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_abandon_stream(rt, thisVal, args, count);
|
|
2573
2569
|
}
|
|
@@ -2599,7 +2595,7 @@ NativeMinip2pFfi::NativeMinip2pFfi(
|
|
|
2599
2595
|
props["ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_close_stream_write"] = jsi::Function::createFromHostFunction(
|
|
2600
2596
|
rt,
|
|
2601
2597
|
jsi::PropNameID::forAscii(rt, "ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_close_stream_write"),
|
|
2602
|
-
|
|
2598
|
+
3,
|
|
2603
2599
|
[this](jsi::Runtime &rt, const jsi::Value &thisVal, const jsi::Value *args, size_t count) -> jsi::Value {
|
|
2604
2600
|
return this->cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_close_stream_write(rt, thisVal, args, count);
|
|
2605
2601
|
}
|
|
@@ -2743,7 +2739,7 @@ NativeMinip2pFfi::NativeMinip2pFfi(
|
|
|
2743
2739
|
props["ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_stream"] = jsi::Function::createFromHostFunction(
|
|
2744
2740
|
rt,
|
|
2745
2741
|
jsi::PropNameID::forAscii(rt, "ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_stream"),
|
|
2746
|
-
|
|
2742
|
+
3,
|
|
2747
2743
|
[this](jsi::Runtime &rt, const jsi::Value &thisVal, const jsi::Value *args, size_t count) -> jsi::Value {
|
|
2748
2744
|
return this->cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_stream(rt, thisVal, args, count);
|
|
2749
2745
|
}
|
|
@@ -2751,7 +2747,7 @@ NativeMinip2pFfi::NativeMinip2pFfi(
|
|
|
2751
2747
|
props["ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_send_stream"] = jsi::Function::createFromHostFunction(
|
|
2752
2748
|
rt,
|
|
2753
2749
|
jsi::PropNameID::forAscii(rt, "ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_send_stream"),
|
|
2754
|
-
|
|
2750
|
+
4,
|
|
2755
2751
|
[this](jsi::Runtime &rt, const jsi::Value &thisVal, const jsi::Value *args, size_t count) -> jsi::Value {
|
|
2756
2752
|
return this->cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_send_stream(rt, thisVal, args, count);
|
|
2757
2753
|
}
|
|
@@ -3403,7 +3399,7 @@ jsi::Value NativeMinip2pFfi::cpp_uniffi_minip2p_ffi_fn_constructor_p2pendpoint_n
|
|
|
3403
3399
|
}
|
|
3404
3400
|
jsi::Value NativeMinip2pFfi::cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_abandon_stream(jsi::Runtime& rt, const jsi::Value& thisVal, const jsi::Value* args, size_t count) {
|
|
3405
3401
|
RustCallStatus status = uniffi::minip2p_ffi::Bridging<RustCallStatus>::rustSuccess(rt);
|
|
3406
|
-
uniffi_minip2p_ffi_fn_method_p2pendpoint_abandon_stream(uniffi_jsi::Bridging</*handle*/ uint64_t>::fromJs(rt, callInvoker, args[0]),
|
|
3402
|
+
uniffi_minip2p_ffi_fn_method_p2pendpoint_abandon_stream(uniffi_jsi::Bridging</*handle*/ uint64_t>::fromJs(rt, callInvoker, args[0]), uniffi_jsi::Bridging<uint64_t>::fromJs(rt, callInvoker, args[1]), uniffi_jsi::Bridging<uint64_t>::fromJs(rt, callInvoker, args[2]),
|
|
3407
3403
|
&status
|
|
3408
3404
|
);
|
|
3409
3405
|
uniffi::minip2p_ffi::Bridging<RustCallStatus>::copyIntoJs(rt, callInvoker, status, args[count - 1]);
|
|
@@ -3443,7 +3439,7 @@ jsi::Value NativeMinip2pFfi::cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_cancel
|
|
|
3443
3439
|
}
|
|
3444
3440
|
jsi::Value NativeMinip2pFfi::cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_close_stream_write(jsi::Runtime& rt, const jsi::Value& thisVal, const jsi::Value* args, size_t count) {
|
|
3445
3441
|
RustCallStatus status = uniffi::minip2p_ffi::Bridging<RustCallStatus>::rustSuccess(rt);
|
|
3446
|
-
uniffi_minip2p_ffi_fn_method_p2pendpoint_close_stream_write(uniffi_jsi::Bridging</*handle*/ uint64_t>::fromJs(rt, callInvoker, args[0]),
|
|
3442
|
+
uniffi_minip2p_ffi_fn_method_p2pendpoint_close_stream_write(uniffi_jsi::Bridging</*handle*/ uint64_t>::fromJs(rt, callInvoker, args[0]), uniffi_jsi::Bridging<uint64_t>::fromJs(rt, callInvoker, args[1]), uniffi_jsi::Bridging<uint64_t>::fromJs(rt, callInvoker, args[2]),
|
|
3447
3443
|
&status
|
|
3448
3444
|
);
|
|
3449
3445
|
uniffi::minip2p_ffi::Bridging<RustCallStatus>::copyIntoJs(rt, callInvoker, status, args[count - 1]);
|
|
@@ -3623,7 +3619,7 @@ jsi::Value NativeMinip2pFfi::cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_reacha
|
|
|
3623
3619
|
}
|
|
3624
3620
|
jsi::Value NativeMinip2pFfi::cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_stream(jsi::Runtime& rt, const jsi::Value& thisVal, const jsi::Value* args, size_t count) {
|
|
3625
3621
|
RustCallStatus status = uniffi::minip2p_ffi::Bridging<RustCallStatus>::rustSuccess(rt);
|
|
3626
|
-
uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_stream(uniffi_jsi::Bridging</*handle*/ uint64_t>::fromJs(rt, callInvoker, args[0]),
|
|
3622
|
+
uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_stream(uniffi_jsi::Bridging</*handle*/ uint64_t>::fromJs(rt, callInvoker, args[0]), uniffi_jsi::Bridging<uint64_t>::fromJs(rt, callInvoker, args[1]), uniffi_jsi::Bridging<uint64_t>::fromJs(rt, callInvoker, args[2]),
|
|
3627
3623
|
&status
|
|
3628
3624
|
);
|
|
3629
3625
|
uniffi::minip2p_ffi::Bridging<RustCallStatus>::copyIntoJs(rt, callInvoker, status, args[count - 1]);
|
|
@@ -3633,7 +3629,7 @@ jsi::Value NativeMinip2pFfi::cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_
|
|
|
3633
3629
|
}
|
|
3634
3630
|
jsi::Value NativeMinip2pFfi::cpp_uniffi_minip2p_ffi_fn_method_p2pendpoint_send_stream(jsi::Runtime& rt, const jsi::Value& thisVal, const jsi::Value* args, size_t count) {
|
|
3635
3631
|
RustCallStatus status = uniffi::minip2p_ffi::Bridging<RustCallStatus>::rustSuccess(rt);
|
|
3636
|
-
auto value = uniffi_minip2p_ffi_fn_method_p2pendpoint_send_stream(uniffi_jsi::Bridging</*handle*/ uint64_t>::fromJs(rt, callInvoker, args[0]),
|
|
3632
|
+
auto value = uniffi_minip2p_ffi_fn_method_p2pendpoint_send_stream(uniffi_jsi::Bridging</*handle*/ uint64_t>::fromJs(rt, callInvoker, args[0]), uniffi_jsi::Bridging<uint64_t>::fromJs(rt, callInvoker, args[1]), uniffi_jsi::Bridging<uint64_t>::fromJs(rt, callInvoker, args[2]), uniffi::minip2p_ffi::Bridging<RustBuffer>::fromJs(rt, callInvoker, args[3]),
|
|
3637
3633
|
&status
|
|
3638
3634
|
);
|
|
3639
3635
|
uniffi::minip2p_ffi::Bridging<RustCallStatus>::copyIntoJs(rt, callInvoker, status, args[count - 1]);
|
package/lib/module/adapter.js
CHANGED
|
@@ -2,14 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
/* oxlint-disable class-methods-use-this, complexity, func-style, max-classes-per-file, no-use-before-define -- The adapter keeps its contract-complete native endpoint and public SDK subclass together, and uses hoisted conversion helpers. */
|
|
4
4
|
|
|
5
|
-
import { DiscoverySource, DriverFailureKind, EndpointErrorKind, Minip2pBase, NatErrorKind, Reachability } from "@minip2p/core";
|
|
6
|
-
import { ConnectionIdMap, EventDrain, P2pEvent_Tags, resolveEndpointConfig, typedFfiError, u64ToNumber } from "@minip2p/core/backend";
|
|
7
|
-
import { ConnectTarget, DiscoverySource as NativeDiscoverySource, DriverFailureKind as NativeDriverFailureKind, EndpointErrorKind as NativeEndpointErrorKind, NatErrorKind as NativeNatErrorKind, P2pEndpoint, Reachability as NativeReachability, circuitAddress as nativeCircuitAddress, generateSecretKey as nativeGenerateSecretKey, peerIdFromSecretKey as nativePeerIdFromSecretKey } from "./native.js";
|
|
5
|
+
import { DiscoverySource, DriverFailureKind, EndpointErrorKind, MdnsFailureKind, Minip2pBase, NatErrorKind, Reachability } from "@minip2p/core";
|
|
6
|
+
import { ConnectionIdMap, EventDrain, P2pEvent_Tags, SettleHandles, eventStream, resolveEndpointConfig, typedFfiError, u64ToNumber } from "@minip2p/core/backend";
|
|
7
|
+
import { ConfigCapability as NativeConfigCapability, ConnectTarget, DiscoverySource as NativeDiscoverySource, DriverFailureKind as NativeDriverFailureKind, EndpointErrorKind as NativeEndpointErrorKind, MdnsFailureKind as NativeMdnsFailureKind, NatErrorKind as NativeNatErrorKind, P2pEndpoint, Reachability as NativeReachability, circuitAddress as nativeCircuitAddress, generateSecretKey as nativeGenerateSecretKey, peerIdFromSecretKey as nativePeerIdFromSecretKey } from "./native.js";
|
|
8
8
|
import nativeModule from "./NativeMinip2p.js";
|
|
9
9
|
class ReactNativeBackend {
|
|
10
10
|
#endpoint;
|
|
11
11
|
#mdnsEnabled;
|
|
12
12
|
#connectionIds = new ConnectionIdMap();
|
|
13
|
+
/** Native stream identities while their events are in flight (ADR 0012). */
|
|
14
|
+
#settleHandles = new SettleHandles();
|
|
13
15
|
#doorbell;
|
|
14
16
|
#events;
|
|
15
17
|
constructor(config) {
|
|
@@ -27,7 +29,15 @@ class ReactNativeBackend {
|
|
|
27
29
|
}
|
|
28
30
|
}
|
|
29
31
|
start(listener) {
|
|
30
|
-
this.#events = new EventDrain(limit => this.#endpoint.drainEvents(limit), event =>
|
|
32
|
+
this.#events = new EventDrain(limit => this.#endpoint.drainEvents(limit), event => {
|
|
33
|
+
const normalized = normalizeEvent(event, this.#connectionIds);
|
|
34
|
+
const stream = eventStream(normalized);
|
|
35
|
+
const native = nativeStreamOf(event);
|
|
36
|
+
if (stream !== undefined && native !== undefined) {
|
|
37
|
+
this.#settleHandles.hold(stream.connId, stream.streamId, native);
|
|
38
|
+
}
|
|
39
|
+
listener(normalized);
|
|
40
|
+
});
|
|
31
41
|
this.#doorbell = {
|
|
32
42
|
onEventsReady: () => {
|
|
33
43
|
this.#events?.ring();
|
|
@@ -37,6 +47,12 @@ class ReactNativeBackend {
|
|
|
37
47
|
this.#endpoint.start(this.#doorbell);
|
|
38
48
|
});
|
|
39
49
|
}
|
|
50
|
+
eventHandled(event) {
|
|
51
|
+
const stream = eventStream(event);
|
|
52
|
+
if (stream !== undefined) {
|
|
53
|
+
this.#settleHandles.release(stream.connId, stream.streamId);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
40
56
|
close() {
|
|
41
57
|
try {
|
|
42
58
|
this.#endpoint.stop();
|
|
@@ -136,33 +152,51 @@ class ReactNativeBackend {
|
|
|
136
152
|
streamId: u64ToNumber(result.streamId, "streamId")
|
|
137
153
|
};
|
|
138
154
|
}
|
|
139
|
-
sendStream(
|
|
140
|
-
return translateErrors(() => this.#endpoint.sendStream(
|
|
155
|
+
sendStream(connId, streamId, data) {
|
|
156
|
+
return translateErrors(() => this.#endpoint.sendStream(this.#connectionIds.toNative(connId), numberToU64(streamId, "streamId"), toArrayBuffer(data)));
|
|
141
157
|
}
|
|
142
|
-
closeStreamWrite(
|
|
158
|
+
closeStreamWrite(connId, streamId) {
|
|
143
159
|
translateErrors(() => {
|
|
144
|
-
this.#endpoint.closeStreamWrite(
|
|
160
|
+
this.#endpoint.closeStreamWrite(this.#connectionIds.toNative(connId), numberToU64(streamId, "streamId"));
|
|
145
161
|
});
|
|
146
162
|
}
|
|
147
|
-
resetStream(
|
|
163
|
+
resetStream(connId, streamId) {
|
|
148
164
|
translateErrors(() => {
|
|
149
|
-
this.#endpoint.resetStream(
|
|
165
|
+
this.#endpoint.resetStream(this.#connectionIds.toNative(connId), numberToU64(streamId, "streamId"));
|
|
150
166
|
});
|
|
151
167
|
}
|
|
152
|
-
abandonStream(
|
|
168
|
+
abandonStream(connId, streamId) {
|
|
153
169
|
translateErrors(() => {
|
|
154
|
-
this.#endpoint.abandonStream(
|
|
170
|
+
this.#endpoint.abandonStream(...this.#settleStream(connId, streamId));
|
|
155
171
|
});
|
|
156
172
|
}
|
|
157
173
|
streamConsumer(connId, streamId) {
|
|
158
|
-
const nativeConn = this.#
|
|
159
|
-
const nativeStream = numberToU64(streamId, "streamId");
|
|
174
|
+
const [nativeConn, nativeStream] = this.#settleStream(connId, streamId);
|
|
160
175
|
return bytes => {
|
|
161
176
|
translateErrors(() => {
|
|
162
177
|
this.#endpoint.streamConsumed(nativeConn, nativeStream, numberToU64(bytes, "bytes"));
|
|
163
178
|
});
|
|
164
179
|
};
|
|
165
180
|
}
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Native IDs for settling a stream: acknowledging or abandoning its bytes.
|
|
184
|
+
* Those still hold the native slot of a connection whose end this adapter
|
|
185
|
+
* already drained, so a stream with events in flight resolves through its
|
|
186
|
+
* settle handle once the live mapping is gone.
|
|
187
|
+
*/
|
|
188
|
+
#settleStream(connId, streamId) {
|
|
189
|
+
const nativeStream = numberToU64(streamId, "streamId");
|
|
190
|
+
try {
|
|
191
|
+
return [this.#connectionIds.toNative(connId), nativeStream];
|
|
192
|
+
} catch (error) {
|
|
193
|
+
const handle = this.#settleHandles.get(connId, streamId);
|
|
194
|
+
if (handle === undefined) {
|
|
195
|
+
throw error;
|
|
196
|
+
}
|
|
197
|
+
return handle;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
166
200
|
connect(target) {
|
|
167
201
|
const native = target.kind === "peer" ? new ConnectTarget.Peer({
|
|
168
202
|
peerId: target.peerId
|
|
@@ -251,6 +285,9 @@ const ENUM_FIELDS = {
|
|
|
251
285
|
EndpointError: {
|
|
252
286
|
kind: [EndpointErrorKind, NativeEndpointErrorKind]
|
|
253
287
|
},
|
|
288
|
+
MdnsFailed: {
|
|
289
|
+
kind: [MdnsFailureKind, NativeMdnsFailureKind]
|
|
290
|
+
},
|
|
254
291
|
PeerDiscovered: {
|
|
255
292
|
source: [DiscoverySource, NativeDiscoverySource]
|
|
256
293
|
},
|
|
@@ -265,8 +302,9 @@ const ENUM_FIELDS = {
|
|
|
265
302
|
|
|
266
303
|
/**
|
|
267
304
|
* Converts one native event to its SDK form. Per-chunk and per-write
|
|
268
|
-
* events, and pubsub messages, convert field by field
|
|
269
|
-
* generic walk, plus their
|
|
305
|
+
* events, and pubsub messages, convert field by field, and a field-less
|
|
306
|
+
* event passes through by tag; the rest share the generic walk, plus their
|
|
307
|
+
* enum fields.
|
|
270
308
|
*/
|
|
271
309
|
function normalizeEvent(event, connectionIds) {
|
|
272
310
|
switch (event.tag) {
|
|
@@ -296,6 +334,12 @@ function normalizeEvent(event, connectionIds) {
|
|
|
296
334
|
tag: event.tag
|
|
297
335
|
};
|
|
298
336
|
}
|
|
337
|
+
case P2pEvent_Tags.MdnsRecovered:
|
|
338
|
+
{
|
|
339
|
+
return {
|
|
340
|
+
tag: event.tag
|
|
341
|
+
};
|
|
342
|
+
}
|
|
299
343
|
default:
|
|
300
344
|
{
|
|
301
345
|
return normalizeGenericEvent(event, connectionIds);
|
|
@@ -303,6 +347,25 @@ function normalizeEvent(event, connectionIds) {
|
|
|
303
347
|
}
|
|
304
348
|
}
|
|
305
349
|
|
|
350
|
+
/** The native identity of the stream a native stream event names. */
|
|
351
|
+
function nativeStreamOf(event) {
|
|
352
|
+
switch (event.tag) {
|
|
353
|
+
case P2pEvent_Tags.StreamReady:
|
|
354
|
+
case P2pEvent_Tags.StreamData:
|
|
355
|
+
case P2pEvent_Tags.StreamWriteAccepted:
|
|
356
|
+
case P2pEvent_Tags.StreamWriteStopped:
|
|
357
|
+
case P2pEvent_Tags.StreamRemoteWriteClosed:
|
|
358
|
+
case P2pEvent_Tags.StreamClosed:
|
|
359
|
+
{
|
|
360
|
+
return [event.inner.connId, event.inner.streamId];
|
|
361
|
+
}
|
|
362
|
+
default:
|
|
363
|
+
{
|
|
364
|
+
return undefined;
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
|
|
306
369
|
/** The public identity of the stream a native stream event names. */
|
|
307
370
|
function streamRef(inner, connectionIds) {
|
|
308
371
|
return {
|
|
@@ -312,7 +375,10 @@ function streamRef(inner, connectionIds) {
|
|
|
312
375
|
};
|
|
313
376
|
}
|
|
314
377
|
function normalizeGenericEvent(event, connectionIds) {
|
|
315
|
-
const inner = normalizeBigInts(event.inner,
|
|
378
|
+
const inner = normalizeBigInts(event.inner, {
|
|
379
|
+
connectionIds,
|
|
380
|
+
tag: event.tag
|
|
381
|
+
});
|
|
316
382
|
if (inner === null || typeof inner !== "object") {
|
|
317
383
|
throw new TypeError("The native endpoint returned an invalid event");
|
|
318
384
|
}
|
|
@@ -352,27 +418,32 @@ function normalizeReservation(reservation) {
|
|
|
352
418
|
/** Event fields carrying a native connection ID. */
|
|
353
419
|
const CONNECTION_ID_KEYS = new Set(["connId", "oldConnId", "newConnId"]);
|
|
354
420
|
|
|
421
|
+
/** The endpoint's connection map and the native event a value belongs to. */
|
|
422
|
+
|
|
355
423
|
/**
|
|
356
|
-
* Converts native `bigint` fields to numbers. Connection ID fields
|
|
357
|
-
* the endpoint's connection map
|
|
358
|
-
*
|
|
424
|
+
* Converts native `bigint` fields to numbers. Connection ID fields of an
|
|
425
|
+
* event go through the endpoint's connection map; every other `u64` keeps the
|
|
426
|
+
* checked conversion.
|
|
359
427
|
*/
|
|
360
|
-
function normalizeBigInts(value,
|
|
428
|
+
function normalizeBigInts(value, event, key) {
|
|
361
429
|
if (typeof value === "bigint") {
|
|
362
430
|
// A QUIC stop code is a 62-bit varint the remote picks: keep it whole.
|
|
363
431
|
if (key === "errorCode") {
|
|
364
432
|
return value;
|
|
365
433
|
}
|
|
366
|
-
|
|
434
|
+
if (key === undefined || !CONNECTION_ID_KEYS.has(key) || !event) {
|
|
435
|
+
return u64ToNumber(value, "native u64");
|
|
436
|
+
}
|
|
437
|
+
return event.connectionIds.toPublicInEvent(event.tag, key, value);
|
|
367
438
|
}
|
|
368
439
|
if (value instanceof ArrayBuffer) {
|
|
369
440
|
return value;
|
|
370
441
|
}
|
|
371
442
|
if (Array.isArray(value)) {
|
|
372
|
-
return value.map(item => normalizeBigInts(item,
|
|
443
|
+
return value.map(item => normalizeBigInts(item, event));
|
|
373
444
|
}
|
|
374
445
|
if (value !== null && typeof value === "object") {
|
|
375
|
-
return Object.fromEntries(Object.entries(value).map(([itemKey, item]) => [itemKey, normalizeBigInts(item,
|
|
446
|
+
return Object.fromEntries(Object.entries(value).map(([itemKey, item]) => [itemKey, normalizeBigInts(item, event, itemKey)]));
|
|
376
447
|
}
|
|
377
448
|
return value;
|
|
378
449
|
}
|
|
@@ -400,20 +471,34 @@ function assertSafeUnsignedInteger(value, name) {
|
|
|
400
471
|
throw new RangeError(`${name} must be a non-negative safe integer`);
|
|
401
472
|
}
|
|
402
473
|
}
|
|
474
|
+
|
|
475
|
+
/** Rethrows a generated `FfiError` as its typed SDK error, if it has one. */
|
|
403
476
|
function translateErrors(operation) {
|
|
404
477
|
try {
|
|
405
478
|
return operation();
|
|
406
479
|
} catch (error) {
|
|
407
|
-
throw typedFfiError(
|
|
480
|
+
throw typedFfiError(nativeErrorFields(error)) ?? error;
|
|
408
481
|
}
|
|
409
482
|
}
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
483
|
+
|
|
484
|
+
/**
|
|
485
|
+
* Reads a generated `FfiError`'s tag and inner fields. An `InvalidConfig`
|
|
486
|
+
* capability is a numeric UniFFI enum, so it goes through the generated
|
|
487
|
+
* reverse mapping to its variant name, as event enums do.
|
|
488
|
+
*/
|
|
489
|
+
function nativeErrorFields(error) {
|
|
490
|
+
if (typeof error !== "object" || error === null) {
|
|
491
|
+
return {};
|
|
492
|
+
}
|
|
493
|
+
const tag = Reflect.get(error, "tag");
|
|
494
|
+
const inner = Reflect.get(error, "inner");
|
|
495
|
+
const field = key => typeof inner === "object" && inner !== null ? Reflect.get(inner, key) : undefined;
|
|
496
|
+
const detail = field("detail");
|
|
497
|
+
const capability = field("capability");
|
|
498
|
+
return {
|
|
499
|
+
capability: typeof capability === "number" ? NativeConfigCapability[capability] : undefined,
|
|
500
|
+
detail: typeof detail === "string" ? detail : undefined,
|
|
501
|
+
tag: typeof tag === "string" ? tag : undefined
|
|
502
|
+
};
|
|
418
503
|
}
|
|
419
504
|
//# sourceMappingURL=adapter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DiscoverySource","DriverFailureKind","EndpointErrorKind","Minip2pBase","NatErrorKind","Reachability","ConnectionIdMap","EventDrain","P2pEvent_Tags","resolveEndpointConfig","typedFfiError","u64ToNumber","ConnectTarget","NativeDiscoverySource","NativeDriverFailureKind","NativeEndpointErrorKind","NativeNatErrorKind","P2pEndpoint","NativeReachability","circuitAddress","nativeCircuitAddress","generateSecretKey","nativeGenerateSecretKey","peerIdFromSecretKey","nativePeerIdFromSecretKey","nativeModule","ReactNativeBackend","endpoint","mdnsEnabled","connectionIds","doorbell","events","constructor","config","mdns","undefined","setMdnsEnabled","translateErrors","toArrayBuffer","secretKey","error","start","listener","limit","drainEvents","event","normalizeEvent","onEventsReady","ring","close","stop","uniffiDestroy","peerId","listenAddrs","connectedPeers","isPeerReady","peerInfo","info","normalizeIdentifyInfo","knownPeers","map","normalizeKnownPeer","discoveryNowMs","now","activeReservation","reservation","normalizeReservation","path","normalizeBigInts","connectionInfo","connId","toPublic","remoteAddr","readyProtocols","relayAddress","reachability","sdkName","isRunning","setActive","active","subscribe","topic","unsubscribe","publish","data","ping","addProtocol","protocolId","openStream","result","streamId","sendStream","toNative","numberToU64","closeStreamWrite","resetStream","abandonStream","streamConsumer","nativeConn","nativeStream","bytes","streamConsumed","connect","target","native","kind","Peer","Addresses","addresses","cancelConnect","id","disconnect","backendFactory","create","Uint8Array","Minip2p","backend","relays","names","value","name","isName","candidate","Object","hasOwn","TypeError","ENUM_FIELDS","ConnectFailed","DiscoveryProtocolViolation","source","DriverFailed","EndpointError","PeerDiscovered","PeerUpdated","ReachabilityChanged","current","previous","tag","StreamData","inner","streamRef","StreamWriteAccepted","StreamRemoteWriteClosed","StreamClosed","Message","normalizeGenericEvent","enumFields","entries","field","Reflect","get","normalized","fromEntries","ConnectionClosed","release","ConnectionReplaced","oldConnId","peer","CONNECTION_ID_KEYS","Set","key","has","ArrayBuffer","Array","isArray","item","itemKey","buffer","byteOffset","byteLength","assertSafeUnsignedInteger","BigInt","Number","isSafeInteger","RangeError","operation","getErrorTag","getErrorDetail","detail"],"sourceRoot":"../../src","sources":["adapter.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["DiscoverySource","DriverFailureKind","EndpointErrorKind","MdnsFailureKind","Minip2pBase","NatErrorKind","Reachability","ConnectionIdMap","EventDrain","P2pEvent_Tags","SettleHandles","eventStream","resolveEndpointConfig","typedFfiError","u64ToNumber","ConfigCapability","NativeConfigCapability","ConnectTarget","NativeDiscoverySource","NativeDriverFailureKind","NativeEndpointErrorKind","NativeMdnsFailureKind","NativeNatErrorKind","P2pEndpoint","NativeReachability","circuitAddress","nativeCircuitAddress","generateSecretKey","nativeGenerateSecretKey","peerIdFromSecretKey","nativePeerIdFromSecretKey","nativeModule","ReactNativeBackend","endpoint","mdnsEnabled","connectionIds","settleHandles","doorbell","events","constructor","config","mdns","undefined","setMdnsEnabled","translateErrors","toArrayBuffer","secretKey","error","start","listener","limit","drainEvents","event","normalized","normalizeEvent","stream","native","nativeStreamOf","hold","connId","streamId","onEventsReady","ring","eventHandled","release","close","stop","uniffiDestroy","peerId","listenAddrs","connectedPeers","isPeerReady","peerInfo","info","normalizeIdentifyInfo","knownPeers","map","normalizeKnownPeer","discoveryNowMs","now","activeReservation","reservation","normalizeReservation","path","normalizeBigInts","connectionInfo","toPublic","remoteAddr","readyProtocols","relayAddress","reachability","sdkName","isRunning","setActive","active","subscribe","topic","unsubscribe","publish","data","ping","addProtocol","protocolId","openStream","result","sendStream","toNative","numberToU64","closeStreamWrite","resetStream","abandonStream","settleStream","streamConsumer","nativeConn","nativeStream","bytes","streamConsumed","#settleStream","handle","get","connect","target","kind","Peer","Addresses","addresses","cancelConnect","id","disconnect","backendFactory","create","Uint8Array","Minip2p","backend","relays","names","value","name","isName","candidate","Object","hasOwn","TypeError","ENUM_FIELDS","ConnectFailed","DiscoveryProtocolViolation","source","DriverFailed","EndpointError","MdnsFailed","PeerDiscovered","PeerUpdated","ReachabilityChanged","current","previous","tag","StreamData","inner","streamRef","StreamWriteAccepted","StreamRemoteWriteClosed","StreamClosed","Message","MdnsRecovered","normalizeGenericEvent","StreamReady","StreamWriteStopped","enumFields","entries","field","Reflect","fromEntries","ConnectionClosed","ConnectionReplaced","oldConnId","peer","CONNECTION_ID_KEYS","Set","key","has","toPublicInEvent","ArrayBuffer","Array","isArray","item","itemKey","buffer","byteOffset","byteLength","assertSafeUnsignedInteger","BigInt","Number","isSafeInteger","RangeError","operation","nativeErrorFields","detail","capability"],"sourceRoot":"../../src","sources":["adapter.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -245,9 +245,9 @@ export class P2pEndpoint extends UniffiAbstractObject {
|
|
|
245
245
|
/**
|
|
246
246
|
* Forgets a stream.
|
|
247
247
|
*/
|
|
248
|
-
abandonStream(
|
|
248
|
+
abandonStream(connId, streamId) /*throws*/{
|
|
249
249
|
uniffiCaller.rustCallWithError(/*liftError:*/FfiConverterTypeFfiError.lift.bind(FfiConverterTypeFfiError), /*caller:*/callStatus => {
|
|
250
|
-
nativeModule().ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_abandon_stream(uniffiTypeP2pEndpointObjectFactory.clonePointer(this),
|
|
250
|
+
nativeModule().ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_abandon_stream(uniffiTypeP2pEndpointObjectFactory.clonePointer(this), FfiConverterUInt64.lower(connId, nativeModule().rustbuffer_alloc), FfiConverterUInt64.lower(streamId, nativeModule().rustbuffer_alloc), callStatus);
|
|
251
251
|
}, /*liftString:*/FfiConverterString.lift.bind(FfiConverterString));
|
|
252
252
|
}
|
|
253
253
|
|
|
@@ -286,9 +286,9 @@ export class P2pEndpoint extends UniffiAbstractObject {
|
|
|
286
286
|
/**
|
|
287
287
|
* Half-closes a stream's write side.
|
|
288
288
|
*/
|
|
289
|
-
closeStreamWrite(
|
|
289
|
+
closeStreamWrite(connId, streamId) /*throws*/{
|
|
290
290
|
uniffiCaller.rustCallWithError(/*liftError:*/FfiConverterTypeFfiError.lift.bind(FfiConverterTypeFfiError), /*caller:*/callStatus => {
|
|
291
|
-
nativeModule().ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_close_stream_write(uniffiTypeP2pEndpointObjectFactory.clonePointer(this),
|
|
291
|
+
nativeModule().ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_close_stream_write(uniffiTypeP2pEndpointObjectFactory.clonePointer(this), FfiConverterUInt64.lower(connId, nativeModule().rustbuffer_alloc), FfiConverterUInt64.lower(streamId, nativeModule().rustbuffer_alloc), callStatus);
|
|
292
292
|
}, /*liftString:*/FfiConverterString.lift.bind(FfiConverterString));
|
|
293
293
|
}
|
|
294
294
|
|
|
@@ -503,9 +503,9 @@ export class P2pEndpoint extends UniffiAbstractObject {
|
|
|
503
503
|
/**
|
|
504
504
|
* Resets a stream.
|
|
505
505
|
*/
|
|
506
|
-
resetStream(
|
|
506
|
+
resetStream(connId, streamId) /*throws*/{
|
|
507
507
|
uniffiCaller.rustCallWithError(/*liftError:*/FfiConverterTypeFfiError.lift.bind(FfiConverterTypeFfiError), /*caller:*/callStatus => {
|
|
508
|
-
nativeModule().ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_stream(uniffiTypeP2pEndpointObjectFactory.clonePointer(this),
|
|
508
|
+
nativeModule().ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_reset_stream(uniffiTypeP2pEndpointObjectFactory.clonePointer(this), FfiConverterUInt64.lower(connId, nativeModule().rustbuffer_alloc), FfiConverterUInt64.lower(streamId, nativeModule().rustbuffer_alloc), callStatus);
|
|
509
509
|
}, /*liftString:*/FfiConverterString.lift.bind(FfiConverterString));
|
|
510
510
|
}
|
|
511
511
|
|
|
@@ -517,9 +517,9 @@ export class P2pEndpoint extends UniffiAbstractObject {
|
|
|
517
517
|
* write side ends first (`StreamWriteStopped`, `StreamClosed`, a reset,
|
|
518
518
|
* or the connection closing or being replaced), which drops the tail.
|
|
519
519
|
*/
|
|
520
|
-
sendStream(
|
|
520
|
+
sendStream(connId, streamId, data) /*throws*/{
|
|
521
521
|
return FfiConverterBool.lift(uniffiCaller.rustCallWithError(/*liftError:*/FfiConverterTypeFfiError.lift.bind(FfiConverterTypeFfiError), /*caller:*/callStatus => {
|
|
522
|
-
return nativeModule().ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_send_stream(uniffiTypeP2pEndpointObjectFactory.clonePointer(this),
|
|
522
|
+
return nativeModule().ubrn_uniffi_minip2p_ffi_fn_method_p2pendpoint_send_stream(uniffiTypeP2pEndpointObjectFactory.clonePointer(this), FfiConverterUInt64.lower(connId, nativeModule().rustbuffer_alloc), FfiConverterUInt64.lower(streamId, nativeModule().rustbuffer_alloc), FfiConverterArrayBuffer.lower(data, nativeModule().rustbuffer_alloc), callStatus);
|
|
523
523
|
}, /*liftString:*/FfiConverterString.lift.bind(FfiConverterString)));
|
|
524
524
|
}
|
|
525
525
|
|
|
@@ -552,7 +552,9 @@ export class P2pEndpoint extends UniffiAbstractObject {
|
|
|
552
552
|
|
|
553
553
|
/**
|
|
554
554
|
* Acknowledges `bytes` of a stream's received data as consumed,
|
|
555
|
-
* letting its sender continue. Every registered protocol needs this
|
|
555
|
+
* letting its sender continue. Every registered protocol needs this,
|
|
556
|
+
* also after the stream's connection closed: unacknowledged bytes keep
|
|
557
|
+
* the ended connection's slot until they are acknowledged or abandoned.
|
|
556
558
|
*/
|
|
557
559
|
streamConsumed(connId, streamId, bytes) /*throws*/{
|
|
558
560
|
uniffiCaller.rustCallWithError(/*liftError:*/FfiConverterTypeFfiError.lift.bind(FfiConverterTypeFfiError), /*caller:*/callStatus => {
|
|
@@ -688,7 +690,7 @@ function uniffiEnsureInitialized() {
|
|
|
688
690
|
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_constructor_p2pendpoint_new() !== 40346) {
|
|
689
691
|
throw new UniffiInternalError.ApiChecksumMismatch("uniffi_minip2p_ffi_checksum_constructor_p2pendpoint_new");
|
|
690
692
|
}
|
|
691
|
-
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_abandon_stream() !==
|
|
693
|
+
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_abandon_stream() !== 3134) {
|
|
692
694
|
throw new UniffiInternalError.ApiChecksumMismatch("uniffi_minip2p_ffi_checksum_method_p2pendpoint_abandon_stream");
|
|
693
695
|
}
|
|
694
696
|
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_active_reservation() !== 7490) {
|
|
@@ -700,7 +702,7 @@ function uniffiEnsureInitialized() {
|
|
|
700
702
|
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_cancel_connect() !== 21146) {
|
|
701
703
|
throw new UniffiInternalError.ApiChecksumMismatch("uniffi_minip2p_ffi_checksum_method_p2pendpoint_cancel_connect");
|
|
702
704
|
}
|
|
703
|
-
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_close_stream_write() !==
|
|
705
|
+
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_close_stream_write() !== 63517) {
|
|
704
706
|
throw new UniffiInternalError.ApiChecksumMismatch("uniffi_minip2p_ffi_checksum_method_p2pendpoint_close_stream_write");
|
|
705
707
|
}
|
|
706
708
|
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_connect() !== 21790) {
|
|
@@ -754,10 +756,10 @@ function uniffiEnsureInitialized() {
|
|
|
754
756
|
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_reachability() !== 4853) {
|
|
755
757
|
throw new UniffiInternalError.ApiChecksumMismatch("uniffi_minip2p_ffi_checksum_method_p2pendpoint_reachability");
|
|
756
758
|
}
|
|
757
|
-
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_reset_stream() !==
|
|
759
|
+
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_reset_stream() !== 8949) {
|
|
758
760
|
throw new UniffiInternalError.ApiChecksumMismatch("uniffi_minip2p_ffi_checksum_method_p2pendpoint_reset_stream");
|
|
759
761
|
}
|
|
760
|
-
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_send_stream() !==
|
|
762
|
+
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_send_stream() !== 31876) {
|
|
761
763
|
throw new UniffiInternalError.ApiChecksumMismatch("uniffi_minip2p_ffi_checksum_method_p2pendpoint_send_stream");
|
|
762
764
|
}
|
|
763
765
|
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_set_active() !== 10522) {
|
|
@@ -769,7 +771,7 @@ function uniffiEnsureInitialized() {
|
|
|
769
771
|
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_stop() !== 11062) {
|
|
770
772
|
throw new UniffiInternalError.ApiChecksumMismatch("uniffi_minip2p_ffi_checksum_method_p2pendpoint_stop");
|
|
771
773
|
}
|
|
772
|
-
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_stream_consumed() !==
|
|
774
|
+
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_stream_consumed() !== 52358) {
|
|
773
775
|
throw new UniffiInternalError.ApiChecksumMismatch("uniffi_minip2p_ffi_checksum_method_p2pendpoint_stream_consumed");
|
|
774
776
|
}
|
|
775
777
|
if (nativeModule().ubrn_uniffi_minip2p_ffi_checksum_method_p2pendpoint_subscribe() !== 41051) {
|