Skip to content

Commit c9dfc97

Browse files
committed
refactor: other packages
1 parent 225f59f commit c9dfc97

File tree

7 files changed

+38
-31
lines changed

7 files changed

+38
-31
lines changed

packages/ndk/lib/data_layer/models/nip_01_event_model.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ class Nip01EventModel extends Nip01Event {
1414
required super.tags,
1515
required super.content,
1616
required super.sig,
17+
super.validSig,
18+
super.sources = const [],
1719
});
1820

1921
factory Nip01EventModel.fromEntity(Nip01Event event) {

packages/ndk/lib/domain_layer/entities/nip_01_event.dart

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@ class Nip01Event {
2424
final String? sig;
2525

2626
/// has signature been validated?
27-
bool? validSig;
27+
final bool? validSig;
2828

2929
/// Relay that an event was received from
30-
List<String> sources = [];
30+
final List<String> sources;
3131

3232
/// Creates a new Nostr event.
3333
///
@@ -45,6 +45,8 @@ class Nip01Event {
4545
required this.tags,
4646
required this.content,
4747
required this.sig,
48+
required this.validSig,
49+
this.sources = const [],
4850
int createdAt = 0,
4951
}) {
5052
this.createdAt = (createdAt == 0)
@@ -60,16 +62,19 @@ class Nip01Event {
6062
List<List<String>>? tags,
6163
String? content,
6264
String? sig,
65+
bool? validSig,
66+
List<String>? sources,
6367
}) {
6468
return Nip01Event(
65-
id: id ?? this.id,
66-
pubKey: pubKey ?? this.pubKey,
67-
createdAt: createdAt ?? this.createdAt,
68-
kind: kind ?? this.kind,
69-
tags: tags ?? this.tags,
70-
content: content ?? this.content,
71-
sig: sig ?? this.sig,
72-
);
69+
id: id ?? this.id,
70+
pubKey: pubKey ?? this.pubKey,
71+
createdAt: createdAt ?? this.createdAt,
72+
kind: kind ?? this.kind,
73+
tags: tags ?? this.tags,
74+
content: content ?? this.content,
75+
sig: sig ?? this.sig,
76+
validSig: validSig ?? this.validSig,
77+
sources: sources ?? this.sources);
7378
}
7479

7580
// Individual events with the same "id" are equivalent

packages/nip07_event_signer/lib/src/nip07_event_signer_stub.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ class Nip07EventSigner implements EventSigner {
44
String? cachedPublicKey;
55

66
Nip07EventSigner({this.cachedPublicKey});
7-
7+
88
@override
99
bool canSign() {
1010
return false;
@@ -46,7 +46,7 @@ class Nip07EventSigner implements EventSigner {
4646
}
4747

4848
@override
49-
Future<void> sign(Nip01Event event) async {
49+
Future<Nip01Event> sign(Nip01Event event) async {
5050
throw UnsupportedError('NIP-07 is not available on this platform');
5151
}
5252
}

packages/nip07_event_signer/lib/src/nip07_event_signer_web.dart

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ class Nip07EventSigner implements EventSigner {
8989
}
9090

9191
@override
92-
Future<void> sign(Nip01Event event) async {
92+
Future<Nip01Event> sign(Nip01Event event) async {
9393
if (js.nostr == null) {
9494
throw Exception('NIP-07 extension not available');
9595
}
@@ -107,8 +107,6 @@ class Nip07EventSigner implements EventSigner {
107107
// Sign the event using NIP-07
108108
final signedEvent = await js.nostr!.signEvent(jsEvent).toDart;
109109

110-
// Update the original event with the signature and id
111-
event.id = signedEvent.id!;
112-
event.sig = signedEvent.sig!;
110+
return event.copyWith(id: signedEvent.id!, sig: signedEvent.sig!);
113111
}
114112
}

packages/objectbox/lib/data_layer/db/object_box/schema/db_nip_01_event.dart

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -133,11 +133,12 @@ class DbNip01Event {
133133
createdAt: createdAt,
134134
kind: kind,
135135
tags: _tagsToList(tags),
136+
id: nostrId,
137+
sig: sig,
138+
validSig: validSig,
139+
sources: sources,
136140
);
137-
ndkE.id = nostrId;
138-
ndkE.sig = sig;
139-
ndkE.validSig = validSig;
140-
ndkE.sources = sources;
141+
141142
return ndkE;
142143
}
143144

@@ -150,7 +151,7 @@ class DbNip01Event {
150151
dbTags: _listToTags(ndkE.tags).map((tag) => tag.toString()).toList(),
151152
);
152153
dbE.nostrId = ndkE.id;
153-
dbE.sig = ndkE.sig;
154+
dbE.sig = ndkE.sig!;
154155
dbE.validSig = ndkE.validSig;
155156
dbE.sources = ndkE.sources;
156157
return dbE;

packages/rust_verifier/lib/data_layer/repositories/verifiers/rust_event_verifier.dart

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ class RustEventVerifier implements EventVerifier {
4848
@override
4949
Future<bool> verify(Nip01Event event) async {
5050
await _isInitialized.future;
51+
if (event.sig == null) {
52+
return false;
53+
}
5154

5255
return verifyNostrEvent(
5356
eventIdHex: event.id,
@@ -56,7 +59,7 @@ class RustEventVerifier implements EventVerifier {
5659
kind: event.kind,
5760
tags: event.tags,
5861
content: event.content,
59-
signatureHex: event.sig,
62+
signatureHex: event.sig!,
6063
);
6164
}
6265
}

packages/sembast_cache_manager/lib/src/ndk_extensions.dart

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,18 +21,16 @@ extension Nip01EventExtension on Nip01Event {
2121
}
2222

2323
static Nip01Event fromJsonStorage(Map<String, Object?> json) {
24-
final event = Nip01Event.fromJson(json);
25-
2624
// Restore additional properties not handled by fromJson
27-
if (json['validSig'] != null) {
28-
event.validSig = json['validSig'] as bool?;
29-
}
3025

31-
if (json['sources'] != null) {
32-
event.sources = List<String>.from(json['sources'] as List);
33-
}
26+
final event = Nip01EventModel.fromJson(json);
3427

35-
return event;
28+
return event.copyWith(
29+
validSig: json['validSig'] as bool?,
30+
sources: json['sources'] != null
31+
? List<String>.from(json['sources'] as List)
32+
: const [],
33+
);
3634
}
3735
}
3836

0 commit comments

Comments
 (0)