@@ -3,7 +3,7 @@ import { matchAll, replaceAll } from './nip27.ts'
33
44test ( 'matchAll' , ( ) => {
55 const result = matchAll (
6- 'Hello nostr:npub108pv4cg5ag52nq082kd5leu9ffrn2gdg6g4xdwatn73y36uzplmq9uyev6!\n\nnostr:note1gmtnz6q2m55epmlpe3semjdcq987av3jvx4emmjsa8g3s9x7tg4sclreky ' ,
6+ 'Hello nostr:npub108pv4cg5ag52nq082kd5leu9ffrn2gdg6g4xdwatn73y36uzplmq9uyev6!\n\nnostr:nevent1qqst8cujky046negxgwwm5ynqwn53t8aqjr6afd8g59nfqwxpdhylpcpzamhxue69uhhyetvv9ujuetcv9khqmr99e3k7mg8arnc9 ' ,
77 )
88
99 expect ( [ ...result ] ) . toEqual ( [
@@ -18,46 +18,52 @@ test('matchAll', () => {
1818 end : 75 ,
1919 } ,
2020 {
21- uri : 'nostr:note1gmtnz6q2m55epmlpe3semjdcq987av3jvx4emmjsa8g3s9x7tg4sclreky ' ,
22- value : 'note1gmtnz6q2m55epmlpe3semjdcq987av3jvx4emmjsa8g3s9x7tg4sclreky ' ,
21+ uri : 'nostr:nevent1qqst8cujky046negxgwwm5ynqwn53t8aqjr6afd8g59nfqwxpdhylpcpzamhxue69uhhyetvv9ujuetcv9khqmr99e3k7mg8arnc9 ' ,
22+ value : 'nevent1qqst8cujky046negxgwwm5ynqwn53t8aqjr6afd8g59nfqwxpdhylpcpzamhxue69uhhyetvv9ujuetcv9khqmr99e3k7mg8arnc9 ' ,
2323 decoded : {
24- type : 'note' ,
25- data : '46d731680add2990efe1cc619dc9b8014feeb23261ab9dee50e9d11814de5a2b' ,
24+ type : 'nevent' ,
25+ data : {
26+ id : 'b3e392b11f5d4f28321cedd09303a748acfd0487aea5a7450b3481c60b6e4f87' ,
27+ relays : [ 'wss://relay.example.com' ] ,
28+ } ,
2629 } ,
2730 start : 78 ,
28- end : 147 ,
31+ end : 192 ,
2932 } ,
3033 ] )
3134} )
3235
3336test ( 'matchAll with an invalid nip19' , ( ) => {
3437 const result = matchAll (
35- 'Hello nostr:npub129tvj896hqqkljerxkccpj9flshwnw999v9uwn9lfmwlj8vnzwgq9y5llnpub1rujdpkd8mwezrvpqd2rx2zphfaztqrtsfg6w3vdnlj!\n\nnostr:note1gmtnz6q2m55epmlpe3semjdcq987av3jvx4emmjsa8g3s9x7tg4sclreky ' ,
38+ 'Hello nostr:npub129tvj896hqqkljerxkccpj9flshwnw999v9uwn9lfmwlj8vnzwgq9y5llnpub1rujdpkd8mwezrvpqd2rx2zphfaztqrtsfg6w3vdnlj!\n\nnostr:nevent1qqst8cujky046negxgwwm5ynqwn53t8aqjr6afd8g59nfqwxpdhylpcpzamhxue69uhhyetvv9ujuetcv9khqmr99e3k7mg8arnc9 ' ,
3639 )
3740
3841 expect ( [ ...result ] ) . toEqual ( [
3942 {
4043 decoded : {
41- data : '46d731680add2990efe1cc619dc9b8014feeb23261ab9dee50e9d11814de5a2b' ,
42- type : 'note' ,
44+ data : {
45+ id : 'b3e392b11f5d4f28321cedd09303a748acfd0487aea5a7450b3481c60b6e4f87' ,
46+ relays : [ 'wss://relay.example.com' ] ,
47+ } ,
48+ type : 'nevent' ,
4349 } ,
44- end : 193 ,
50+ end : 238 ,
4551 start : 124 ,
46- uri : 'nostr:note1gmtnz6q2m55epmlpe3semjdcq987av3jvx4emmjsa8g3s9x7tg4sclreky ' ,
47- value : 'note1gmtnz6q2m55epmlpe3semjdcq987av3jvx4emmjsa8g3s9x7tg4sclreky ' ,
52+ uri : 'nostr:nevent1qqst8cujky046negxgwwm5ynqwn53t8aqjr6afd8g59nfqwxpdhylpcpzamhxue69uhhyetvv9ujuetcv9khqmr99e3k7mg8arnc9 ' ,
53+ value : 'nevent1qqst8cujky046negxgwwm5ynqwn53t8aqjr6afd8g59nfqwxpdhylpcpzamhxue69uhhyetvv9ujuetcv9khqmr99e3k7mg8arnc9 ' ,
4854 } ,
4955 ] )
5056} )
5157
5258test ( 'replaceAll' , ( ) => {
5359 const content =
54- 'Hello nostr:npub108pv4cg5ag52nq082kd5leu9ffrn2gdg6g4xdwatn73y36uzplmq9uyev6!\n\nnostr:note1gmtnz6q2m55epmlpe3semjdcq987av3jvx4emmjsa8g3s9x7tg4sclreky '
60+ 'Hello nostr:npub108pv4cg5ag52nq082kd5leu9ffrn2gdg6g4xdwatn73y36uzplmq9uyev6!\n\nnostr:nevent1qqst8cujky046negxgwwm5ynqwn53t8aqjr6afd8g59nfqwxpdhylpcpzamhxue69uhhyetvv9ujuetcv9khqmr99e3k7mg8arnc9 '
5561
5662 const result = replaceAll ( content , ( { decoded, value } ) => {
5763 switch ( decoded . type ) {
5864 case 'npub' :
5965 return '@alex'
60- case 'note ' :
66+ case 'nevent ' :
6167 return '!1234'
6268 default :
6369 return value
0 commit comments