Skip to content

Commit a7a084d

Browse files
committed
Expose UnwrappedGift
1 parent f9dc44f commit a7a084d

File tree

12 files changed

+847
-104
lines changed

12 files changed

+847
-104
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
* Expose `EventBuilder::gift_wrap_from_seal` ([Yuki Kishimoto])
3939
* Expose `EventBuilder::gift_wrap` ([Yuki Kishimoto])
4040
* Expose `EventBuilder::private_msg` ([Yuki Kishimoto])
41+
* Expose `UnwrappedGift` ([Yuki Kishimoto])
4142

4243
### Fixed
4344

lib/nostr_sdk.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ export 'src/rust/api/protocol/event/unsigned.dart';
1010
export 'src/rust/api/protocol/key.dart';
1111
export 'src/rust/api/protocol/key/public_key.dart';
1212
export 'src/rust/api/protocol/key/secret_key.dart';
13+
export 'src/rust/api/protocol/nips/nip59.dart';
1314
export 'src/rust/api/protocol/types/filter.dart';
1415
export 'src/rust/api/protocol/signer.dart';
1516
export 'src/rust/api/relay/options.dart';
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
// This file is automatically generated, so please do not edit it.
2+
// Generated by `flutter_rust_bridge`@ 2.0.0.
3+
4+
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import
5+
6+
import '../../../frb_generated.dart';
7+
import '../event.dart';
8+
import '../event/unsigned.dart';
9+
import '../key/public_key.dart';
10+
import '../signer.dart';
11+
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
12+
13+
// These function are ignored because they are on traits that is not defined in current crate (put an empty `#[frb]` on it to unignore): `from`
14+
15+
// Rust type: RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<_UnwrappedGift>>
16+
abstract class UnwrappedGift implements RustOpaqueInterface {
17+
/// Unwrap Gift Wrap event
18+
///
19+
/// Internally verify the `seal` event
20+
static Future<UnwrappedGift> fromGiftWrap(
21+
{required NostrSigner signer, required Event giftWrap}) =>
22+
NostrSdk.instance.api.crateApiProtocolNipsNip59UnwrappedGiftFromGiftWrap(
23+
signer: signer, giftWrap: giftWrap);
24+
25+
/// Get rumor
26+
UnsignedEvent rumor();
27+
28+
/// Get sender public key
29+
PublicKey sender();
30+
}

lib/src/rust/frb_generated.dart

Lines changed: 277 additions & 52 deletions
Large diffs are not rendered by default.

lib/src/rust/frb_generated.io.dart

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import 'api/protocol/event/unsigned.dart';
1515
import 'api/protocol/key.dart';
1616
import 'api/protocol/key/public_key.dart';
1717
import 'api/protocol/key/secret_key.dart';
18+
import 'api/protocol/nips/nip59.dart';
1819
import 'api/protocol/signer.dart';
1920
import 'api/protocol/types/filter.dart';
2021
import 'api/relay/options.dart';
@@ -83,6 +84,10 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
8384
get rust_arc_decrement_strong_count_UnsignedEventPtr => wire
8485
._rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEventPtr;
8586

87+
CrossPlatformFinalizerArg
88+
get rust_arc_decrement_strong_count_UnwrappedGiftPtr => wire
89+
._rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGiftPtr;
90+
8691
@protected
8792
AnyhowException dco_decode_AnyhowException(dynamic raw);
8893

@@ -160,6 +165,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
160165
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
161166
dynamic raw);
162167

168+
@protected
169+
UnwrappedGift
170+
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
171+
dynamic raw);
172+
163173
@protected
164174
Client
165175
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_Client(
@@ -234,6 +244,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
234244
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
235245
dynamic raw);
236246

247+
@protected
248+
UnwrappedGift
249+
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
250+
dynamic raw);
251+
237252
@protected
238253
Duration dco_decode_Chrono_Duration(dynamic raw);
239254

@@ -314,6 +329,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
314329
dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
315330
dynamic raw);
316331

332+
@protected
333+
UnwrappedGift
334+
dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
335+
dynamic raw);
336+
317337
@protected
318338
Set<String> dco_decode_Set_String(dynamic raw);
319339

@@ -498,6 +518,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
498518
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
499519
SseDeserializer deserializer);
500520

521+
@protected
522+
UnwrappedGift
523+
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
524+
SseDeserializer deserializer);
525+
501526
@protected
502527
Client
503528
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_Client(
@@ -572,6 +597,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
572597
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
573598
SseDeserializer deserializer);
574599

600+
@protected
601+
UnwrappedGift
602+
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
603+
SseDeserializer deserializer);
604+
575605
@protected
576606
Duration sse_decode_Chrono_Duration(SseDeserializer deserializer);
577607

@@ -653,6 +683,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
653683
sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
654684
SseDeserializer deserializer);
655685

686+
@protected
687+
UnwrappedGift
688+
sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
689+
SseDeserializer deserializer);
690+
656691
@protected
657692
Set<String> sse_decode_Set_String(SseDeserializer deserializer);
658693

@@ -842,6 +877,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
842877
sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
843878
UnsignedEvent self, SseSerializer serializer);
844879

880+
@protected
881+
void
882+
sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
883+
UnwrappedGift self, SseSerializer serializer);
884+
845885
@protected
846886
void
847887
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_Client(
@@ -917,6 +957,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
917957
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
918958
UnsignedEvent self, SseSerializer serializer);
919959

960+
@protected
961+
void
962+
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
963+
UnwrappedGift self, SseSerializer serializer);
964+
920965
@protected
921966
void sse_encode_Chrono_Duration(Duration self, SseSerializer serializer);
922967

@@ -999,6 +1044,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
9991044
sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
10001045
UnsignedEvent self, SseSerializer serializer);
10011046

1047+
@protected
1048+
void
1049+
sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1050+
UnwrappedGift self, SseSerializer serializer);
1051+
10021052
@protected
10031053
void sse_encode_Set_String(Set<String> self, SseSerializer serializer);
10041054

@@ -1609,4 +1659,36 @@ class NostrSdkWire implements BaseWire {
16091659
late final _rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent =
16101660
_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEventPtr
16111661
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
1662+
1663+
void
1664+
rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1665+
ffi.Pointer<ffi.Void> ptr,
1666+
) {
1667+
return _rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1668+
ptr,
1669+
);
1670+
}
1671+
1672+
late final _rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGiftPtr =
1673+
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>(
1674+
'frbgen_nostr_sdk_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift');
1675+
late final _rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift =
1676+
_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGiftPtr
1677+
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
1678+
1679+
void
1680+
rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1681+
ffi.Pointer<ffi.Void> ptr,
1682+
) {
1683+
return _rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1684+
ptr,
1685+
);
1686+
}
1687+
1688+
late final _rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGiftPtr =
1689+
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>(
1690+
'frbgen_nostr_sdk_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift');
1691+
late final _rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift =
1692+
_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGiftPtr
1693+
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
16121694
}

lib/src/rust/frb_generated.web.dart

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import 'api/protocol/event/unsigned.dart';
1818
import 'api/protocol/key.dart';
1919
import 'api/protocol/key/public_key.dart';
2020
import 'api/protocol/key/secret_key.dart';
21+
import 'api/protocol/nips/nip59.dart';
2122
import 'api/protocol/signer.dart';
2223
import 'api/protocol/types/filter.dart';
2324
import 'api/relay/options.dart';
@@ -85,6 +86,10 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
8586
get rust_arc_decrement_strong_count_UnsignedEventPtr => wire
8687
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent;
8788

89+
CrossPlatformFinalizerArg
90+
get rust_arc_decrement_strong_count_UnwrappedGiftPtr => wire
91+
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift;
92+
8893
@protected
8994
AnyhowException dco_decode_AnyhowException(dynamic raw);
9095

@@ -162,6 +167,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
162167
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
163168
dynamic raw);
164169

170+
@protected
171+
UnwrappedGift
172+
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
173+
dynamic raw);
174+
165175
@protected
166176
Client
167177
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_Client(
@@ -236,6 +246,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
236246
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
237247
dynamic raw);
238248

249+
@protected
250+
UnwrappedGift
251+
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
252+
dynamic raw);
253+
239254
@protected
240255
Duration dco_decode_Chrono_Duration(dynamic raw);
241256

@@ -316,6 +331,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
316331
dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
317332
dynamic raw);
318333

334+
@protected
335+
UnwrappedGift
336+
dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
337+
dynamic raw);
338+
319339
@protected
320340
Set<String> dco_decode_Set_String(dynamic raw);
321341

@@ -500,6 +520,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
500520
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
501521
SseDeserializer deserializer);
502522

523+
@protected
524+
UnwrappedGift
525+
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
526+
SseDeserializer deserializer);
527+
503528
@protected
504529
Client
505530
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_Client(
@@ -574,6 +599,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
574599
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
575600
SseDeserializer deserializer);
576601

602+
@protected
603+
UnwrappedGift
604+
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
605+
SseDeserializer deserializer);
606+
577607
@protected
578608
Duration sse_decode_Chrono_Duration(SseDeserializer deserializer);
579609

@@ -655,6 +685,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
655685
sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
656686
SseDeserializer deserializer);
657687

688+
@protected
689+
UnwrappedGift
690+
sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
691+
SseDeserializer deserializer);
692+
658693
@protected
659694
Set<String> sse_decode_Set_String(SseDeserializer deserializer);
660695

@@ -844,6 +879,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
844879
sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
845880
UnsignedEvent self, SseSerializer serializer);
846881

882+
@protected
883+
void
884+
sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
885+
UnwrappedGift self, SseSerializer serializer);
886+
847887
@protected
848888
void
849889
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_Client(
@@ -919,6 +959,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
919959
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
920960
UnsignedEvent self, SseSerializer serializer);
921961

962+
@protected
963+
void
964+
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
965+
UnwrappedGift self, SseSerializer serializer);
966+
922967
@protected
923968
void sse_encode_Chrono_Duration(Duration self, SseSerializer serializer);
924969

@@ -1001,6 +1046,11 @@ abstract class NostrSdkApiImplPlatform extends BaseApiImpl<NostrSdkWire> {
10011046
sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
10021047
UnsignedEvent self, SseSerializer serializer);
10031048

1049+
@protected
1050+
void
1051+
sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1052+
UnwrappedGift self, SseSerializer serializer);
1053+
10041054
@protected
10051055
void sse_encode_Set_String(Set<String> self, SseSerializer serializer);
10061056

@@ -1302,6 +1352,18 @@ class NostrSdkWire implements BaseWire {
13021352
wasmModule
13031353
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
13041354
ptr);
1355+
1356+
void rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1357+
int ptr) =>
1358+
wasmModule
1359+
.rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1360+
ptr);
1361+
1362+
void rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1363+
int ptr) =>
1364+
wasmModule
1365+
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1366+
ptr);
13051367
}
13061368

13071369
@JS('wasm_bindgen')
@@ -1429,4 +1491,12 @@ extension type NostrSdkWasmModule._(JSObject _) implements JSObject {
14291491
external void
14301492
rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnsignedEvent(
14311493
int ptr);
1494+
1495+
external void
1496+
rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1497+
int ptr);
1498+
1499+
external void
1500+
rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInner_UnwrappedGift(
1501+
int ptr);
14321502
}

rust/src/api/protocol/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,6 @@
44

55
pub mod event;
66
pub mod key;
7+
pub mod nips;
78
pub mod signer;
89
pub mod types;

rust/src/api/protocol/nips/mod.rs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
// Copyright (c) 2022-2023 Yuki Kishimoto
2+
// Copyright (c) 2023-2024 Rust Nostr Developers
3+
// Distributed under the MIT software license
4+
5+
pub mod nip59;

0 commit comments

Comments
 (0)